Convert hex '0x00' to string - nefunkčná :( – Delphi – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Convert hex '0x00' to string - nefunkčná :( – Delphi – Fórum – Programujte.comConvert hex '0x00' to string - nefunkčná :( – Delphi – Fórum – Programujte.com

 

David
~ Anonymní uživatel
177 příspěvků
22. 10. 2012   #1
-
0
-

Zdravím borcov.

Pustil som sa do programovania v Delphi. S celou problematikou sa len oboznamujem preto ma prosím berte s rezervou. :)

Snažím sa urobiť vlastnú aplikáciu, ktorá komunikuje s mojim výtvorom cez RS232.

V Delphi som si nainštaloval knižnicu ComPort by Dejan Crnila a na začiatok som použil príklad s názvom ComExample.

Podľa toho som si vytvoril vlastný projekt. No mám problém prekonvertovať hex"0x00" do string. Všetky ostatné znaky nie je problém. hex 00 jednoducho ignoruje.

Na konverziu som použil:
Edit_Data.text:= '';
  for a := 1 to length (Edit1.Text) div 3 do
   Edit_Data.text:= Edit_Data.text+Char(StrToInt('$'+Copy(Edit1.Text,(a-1)*3+1,2)));

Funguje tak, že keď do Edit1 zadám "45 + medzera" v Edit_Data mi vypíše E.
A to viem odoslať ako string na com port a môj výtvor príjme hex. 0x45.
Lenže ja potrebujem posielať aj hex 00. A to neviem. Neviete mi poradiť?

Ďakujem.

David

Nahlásit jako SPAM
IP: 91.127.235.–
Ralip
~ Anonymní uživatel
1 příspěvek
22. 10. 2012   #2
-
0
-

A není to tak že 0x00 je znak konce řetězce, takže to dělá ty problémy?

Nahlásit jako SPAM
IP: 2001:718:1801:1a02:200:5e...–
David
~ Anonymní uživatel
177 příspěvků
22. 10. 2012   #3
-
0
-

#2 Ralip
To je možné.

Len neviem ako teda poslať do stringu 0x00 aby to ako koniec nebralo :(
Jednoducho potrebujem na com port dostať to čo napíšem do labelu.
Keď napíšem 0x00 /$00, #00/ to je jedno ako, potrebujem to dostať von na com port ako 0x00.

Nahlásit jako SPAM
IP: 91.127.235.–
zlz
~ Anonymní uživatel
634 příspěvků
22. 10. 2012   #4
-
0
-

A ta data k odeslání pak bereš z toho editu?

Do stringu by snad ten nulový znak mohl jít přidat, ale nevím, co to udělá, když to budeš prohánět přes edit. Zkus ta data ukládat do pomocného stringu a ten odešli. Případně do bufferu bajtů a místo WriteStr použij Write.

Nahlásit jako SPAM
IP: 78.156.159.–
David
~ Anonymní uživatel
177 příspěvků
22. 10. 2012   #5
-
0
-

#4 zlz
Ďakujem, zajtra vyskúšam.

Kiež by si mal pravdu a vadil by len ten edit v ktorom sa znaky zobrazujú /prekonvertované/ v ASCII.

Ano, data pre Com beriem z edit_data. A Edit1 som vytvoril na zápis znakov v hex formáte.

Po zapísaní znaku sa to prekonvertovalo na edit_data a odtiaľ sa odoslali na COM port.

Skúsim ho vynechať a rovno s edit1 - kde znaky píšem v hex formáte prekonvertujem na string a rovno na COM.

Výsledky oznámim :)

Nahlásit jako SPAM
IP: 91.127.235.–
David
~ Anonymní uživatel
177 příspěvků
23. 10. 2012   #6
-
0
-

#1 David
Ahojte, tak som sa konečne dostal ak môjmu "vývoju".

Po poslednej rade a vynechaní druhého editu je všetko OK a už mi to posiela aj hex 0x00.

Veľmi pekne ďakujem. :)

BTW: Použil som zápis zo stringu.

Nahlásit jako SPAM
IP: 91.127.235.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 13 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý