Avatar billede bwyan Nybegynder
18. april 2008 - 00:49 Der er 2 kommentarer

Sammenligning af en Char eller en Byte, op imod en HEX værdi?

Hej til alle.

Jeg sidder og roder med noget seriel datakommunikation imellem min PC og min AVR micro-controller.

Mit spørgsmål er dog C# relateret:


I min protokol udformning, sender min mikroprocessor værdi'en 0x02 (HEX) til min PC som en start-byte.
Hvordan kan jeg sammenligne denne værdi, som er i hexidecimal form, med f.eks. output'et fra metoderne serielport.ReadChar() eller serielport.ReadByte()?

Jeg har prøvet følgende uden held.



// Første forsøg.

char data = (char)serielport.ReadChar();

if(data == (char)0x02)
{
  //Sucess!
}


// Andet forsøg.

byte data (byte)serielport.ReadByte();
if(data == (byte)0x02)
{
  //Success!
}



Det skal i øvrigt nævnes at jeg er helt sikker på at jeg rent faktisk modtager min 0x02 (HEX) værdi fra min micro-controller. Når jeg dumper det hele i et terminal-program, ser det hele ud som det skal.

På forhånd tak.
fra Bwyan
Avatar billede arne_v Ekspert
18. april 2008 - 04:22 #1
Begge bør da virke fint !
Avatar billede aaberg Nybegynder
18. april 2008 - 08:17 #2
Debug dig igennem programmet, da er det meget lettere at se hvad der ligger i variablene osv. Så kan du med sikkerhed finde ud af om det er sammenligningen der fejler, eller om det er forbindelsen med mikrokontrolleren der er noget galt med.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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