Avatar billede bomme Nybegynder
19. januar 2007 - 17:25 Der er 4 kommentarer og
1 løsning

Forstå mscomm1.input

Jeg har lavet et program der sender en hex kode chr$(5) til min comport, men når jeg så får data tilbage så kommer der bare et ? tegn istedet i mit VB program, men jeg har en RS232 sniffer på som fortæller mig at den sender hex koden chr$(6) tilbage. Hvordan får jeg mit VB program til at forstå HEX koden.
Avatar billede shy Nybegynder
21. januar 2007 - 11:11 #1
Spørgsmåltegnet "?" = chr(63), er det det du får tilbage?
chr(6) er jo en ikke-printbar karakter, så du må bruge Asc for at dekode det som komer retur på din COM port.
Result = Asc(mscomm1.input)
Eller hvis du får flere karakterer retur:
RX = mscomm1.input
For X = 1 To Len(RX)
    Result = Result & Asc(Mid(RX, X, 1))
Next X
Avatar billede bomme Nybegynder
22. januar 2007 - 08:42 #2
den melder fejl når jeg skriver Asc(mscomm1.input)
Avatar billede shy Nybegynder
22. januar 2007 - 10:24 #3
Ja, men først er du nødt til at teste om mscomm1.input indeholder nogle karakterer eller ej. Der er således at mscomm1.input bliver tømt når du læser den, så det er en god ide at ligge mscomm1.input over i en streng. Funktionen Asc giver værdien af een karakter. Den kan ikke give værdien af ingenting, og den kan heller ikke give værdien af flere karakterer, derfor må du bruge et loop. Du kan indsætte et komma i "Result" efter hver karakter så er det lettere at dekode: Result = Result & Asc(Mid(RX, X, 1)) & ","

RX = mscomm1.input
If RX <> "" then
    Gør noget. f.eks brug det loop jeg sendte i mit første svar.
Endif
Avatar billede bomme Nybegynder
22. januar 2007 - 10:52 #4
hmm, fandt ud af det med en replace og chr istedet for Asc, men det var din kommentar der ledte mig i den rigtige retning så du får point alligevel :) Smid lige et svar
Avatar billede bomme Nybegynder
11. maj 2007 - 09:30 #5
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester