Hirdetés
- Autós kamerák
- Mini PC
- Senki sem töröl ennél jobban
- Épített vízhűtés (nem kompakt) topic
- Kormányok / autós szimulátorok topikja
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Melyik tápegységet vegyem?
- Melyik hordozható audiolejátszót (DAP, MP3, stb.) vegyem?
- AMD Navi Radeon™ RX 9xxx sorozat
- Házimozi belépő szinten
Új hozzászólás Aktív témák
-
fodi1
csendes tag
A téma: Adatfogadás a soros portról DELPHI7 -el, pld. PIC kártya felől, az adatok pc-n történő kijelzése, és feldolgozása miatt.
Történet:
Egy PIC es fejlesztővel készítettem egy AD konvertert, mely az adatokat a saját LCD kijelzőjén kijelzi, és továbbítja a soros porton keresztül a pc felé.
A PIC boardon egy potival modellezem a kimenő értéket. 10bites ad-ról lévén szó 2-től 2023-ig mutat az LCD a pic-kártyán a poti két végállásában.Probléma:
A pc-n elindított terminal nevű free programocska gyönyörűen kiírja a mért értékeket, alapból Hexában, ahogy küldöm HI_byte, és LO_byte, ill. ha akarom decimálisan is kijelzi.
Ez bizonyítja a PIC oldal működőképességét.
Ha viszont DELPHI7 ben olvasom ki az adatokat, csak grafikus ákom-bákomot kapok, vagy semmit, mely természetesen változik, a küldött számoknak megfelelően.
Mindenféle karakterkonverziót megpróbáltam, de csak nem kapom meg a várt számadatokat (2-1024ig).
Miért természetes a kis terminál programocskának amit a delphiben én nem tudok megoldani?Delphi kódot mellékelem.
Igen megtisztelnétek, ha megoldást kapnék kezdő létemre a problémámra.
// xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Function ComPortRead:string;
var c,i:integer;
BytesRead:dword;
st:string;
begin
BytesRead:=0;
if not ReadFile(ComHandle, RdBuff, SizeOf(RdBuff), BytesRead, nil) then begin
end;//st:='';
if BytesRead>0 then beginfor i:=1 to BytesRead do begin
st:=RdBuff[i-1];
end;
end;
ComPortRead:=st;
end;//hossz:=length(ComPortRead); // HOSSZ ?
//label6.Caption:=inttostr(hossz); // Kiírniread_ki:= ComPortRead;
kar1:=copy(ComPortRead,1,1); // Kivesszük az első karaktert
kar2:=copy(ComPortRead,2,1); // és a másodikat// Numerikussá alakítjuk
szam1:=strtoint(kar1);
szam2:=strtoint(kar2);// Szam1 viszaalakítása. (rotated Hi bits - Make back: to left)
szam1:= szam1 shl(8);// A Hi ls Lo szám összege adja a küldött értéket, a szám1-be tesszük
szam1:=szam1+szam2;// A kar1-be tesszük a stringgé visszaalakított számot
kar1:= inttostr(szam1);label6.Caption:=kar1; // Kiírni
Új hozzászólás Aktív témák
- Brother HL-L3210CW színes lézernyomtató
- Nintendo Switch OLED 20.5.0, 512GB MicroSD + okositott OLED Atmosphere 3 hó garanciával
- Eladó egy fekete Yamaha AG03 MKII keverő / külső hangkártya!
- Gigabyte GA-P35-DS4 LGA775 alaplap, Xeon X5450 CPU, 4 GB DDR2 RAM
- Meta Quest 3 (512 Gb) + Elite strap + 3m link kábel
- Panasonic CF-XZ6 AIO all-in-one laptop tablet 2k touch i5-7300u speciális ütésálló rugged
- GYÖNYÖRŰ iPhone 14 Pro 128GB Deep Purple -1 ÉV GARANCIA -Kártyafüggetlen, MS3933, 100% Akkumulátor
- Gyári garanciával Digitalizáló tábla XP-PEN Artist Pro 24
- AKCIÓ! LG 24GM79G-B 24 144Hz FHD TN 1ms monitor garanciával hibátlan működéssel
- Vadiúj AM 4 procik! Raktáron! Kamatmentes rèszletre is! ÈRDEKLŐDJ!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


