Hirdetés
- Meggyi001: Áram nélkül....méltóság nélkül.....
- sziku69: Fűzzük össze a szavakat :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- gban: Ingyen kellene, de tegnapra
- Hieronymus: Az igaz barátság kezdete
- Mr Dini: Mindent a StreamSharkról!
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- Meggyi001: Amire figyelned kell Párizsban is...
Új hozzászólás Aktív témák
-
don_peter
senior tag
válasz
lord.lakli
#7264
üzenetére
A teljes fáj letöltést így csinálom:
// Teljes memória letöltése (8MB)
private void button13_Click(object sender, EventArgs e)
{
uint i = 0, Count = 1024 * 1024 * 8;
//byte[] FlashRom = new byte[1024*1024*8];
byte[] buffer = new byte[1];
serialPort1.Write("f"); // Küldünk egy parancsot (rom letöltési parancs)
string folderName = @"c:\DPTPFolder";
//string pathString = System.IO.Path.Combine(folderName, "SubFolder"); // További könyvtár
System.IO.Directory.CreateDirectory(folderName);
string fileName = "dptpsmfdcartridge_" + DateTime.Now.ToString("yMd_Hm") + ".bin";
string pathString = System.IO.Path.Combine(folderName, fileName);
if (!System.IO.File.Exists(pathString))
{
using (System.IO.FileStream fs = System.IO.File.Create(pathString))
{
while (true)
{
i++;
serialPort1.Read(buffer, 0, 1); // Várakozunk hardver adat küldésig
fs.WriteByte(buffer[0]);
if (i % 64 == 0)
{
serialPort1.Write("0");
i = 0;
Count = Count - 64;
}
if (Count <= 0)
{
break;
}
}
}
}
else
{
textBox1.Text += "Hiba a fájl kiírásában...(lehet, hogy létezik a fájl)" + "\r\n";
return;
}
textBox1.Text += "\r\n" + "Letöltés elkészült.\r\n";
textBox1.Text += "File name: " + folderName + "/" + fileName + "\r\n";
}
A memória másolásokat meg pontosan úgy mint feljebb mutattam./// Így is próbáltam
var osszefuzott = new byte[DataLenght]; // DataLenght értéke a 4 file mérete
rows.CopyTo(osszefuzott, 0);
rows2.CopyTo(osszefuzott, rows.Length);
rows3.CopyTo(osszefuzott, rows2.Length);
rows4.CopyTo(osszefuzott, rows3.Length);
// és így is:
byte[] rv = new byte[a1.Length + a2.Length + a3.Length+ a4.Length];
System.Buffer.BlockCopy(a1, 0, rv, 0, a1.Length);
System.Buffer.BlockCopy(a2, 0, rv, a1.Length, a2.Length);
System.Buffer.BlockCopy(a3, 0, rv, a1.Length + a2.Length, a3.Length);
System.Buffer.BlockCopy(a4, 0, rv, a1.Length + a2.Length + a3.Length, a4.Length);A fájlok betöltése pedig a klasszikus módon történik: (pl.: a 4-es fájl)
OpenFileDialog open4 = new OpenFileDialog();
open4.Title = "Open file";
open4.Filter = "Bin File (*.bin)|*.bin|MD File (*.md)|*.md|SMD File (*.smd)|*.smd|All Files (*.*)|*.*";
open4.FilterIndex = 2;
if (open4.ShowDialog() == DialogResult.OK)
{
rows4 = System.IO.File.ReadAllBytes(open4.FileName);
}A teljes kódot nem linkelem, mert több ezer soros, biztosan meg lehetne írni a feléből, de nem vagyok nagy mágus, inkább hardverprogramozással foglalkozom, ez csak szükséges +.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Dobozos ÚJ ASUS TUF 17 Ryzen 9 7940HS 16 GB DDR5 512 SSD RTX 4070 (8 GB) 2.5K 240Hz Garancia
- Kezdő Gamer PC-Számítógép! Csere-Beszámítás! I7 6700 / 16GB DDR4 / GTX 1650 Super / 500 SSD
- TOP Pure White PC /Ryzen 7 9850X3D, 32GB DDR5 RAM, 1TB M.2 PCIe SSD/ akciós áron eladó! BeszámítOK!
- Microsoft Surface Laptop 4 i7 / 16GB / Prémium ultrabook Jó áron! Érintőkijelző
- Dell UltraSharp 24 USB-C Hub Monitor - U2422HE - 27% ÁFÁs
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
