OriginGPS sensor och AVR koppla ihop?

Övriga diskussioner relaterade till komponenter. Exempelvis radiorör, A/D, kontaktdon eller sensorer.
Användarvisningsbild
Icecap
Inlägg: 26105
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Re: OriginGPS sensor och AVR koppla ihop?

Inlägg av Icecap »

Kod: Markera allt

unsigned char x_htob(unsigned char* Data)
  { // Converts one hex char to value
  switch(*Data)
    {
    case '0':
    case '1':
    case '2':
    case '3':
    case '4':
    case '5':
    case '6':
    case '7':
    case '8':
    case '9':
      return (*Data - '0');
    case 'a':
    case 'b':
    case 'c':
    case 'd':
    case 'e':
    case 'f':
      return (*Data - 'a' + 10);
      break;
    case 'A':
    case 'B':
    case 'C':
    case 'D':
    case 'E':
    case 'F':
      return (*Data - 'A' + 10);
      break;
    }
  return -1;
  }
Denna kan göras en del finare.
Glattnos
Inlägg: 2972
Blev medlem: 29 oktober 2009, 20:01:18

Re: OriginGPS sensor och AVR koppla ihop?

Inlägg av Glattnos »

Icecap: Tackar för den :)

Hittade felet:

Kod: Markera allt

if((atoh(GPS_CheckSum[0])<<4) &= (atoh(GPS_CheckSum[1])) == Check_Sum) RX_Data_Valid = 1;
//Det ska naturligtvis inte vara "&=" utan "&"
if((atoh(GPS_CheckSum[0])<<4) & (atoh(GPS_CheckSum[1])) == Check_Sum) RX_Data_Valid = 1;
Användarvisningsbild
Icecap
Inlägg: 26105
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Re: OriginGPS sensor och AVR koppla ihop?

Inlägg av Icecap »

Är du säker på att det inte ska vara '&&'?
Glattnos
Inlägg: 2972
Blev medlem: 29 oktober 2009, 20:01:18

Re: OriginGPS sensor och AVR koppla ihop?

Inlägg av Glattnos »

Jag vet inte. Min tanke var att om hexdecimalerna är t.ex. 0xA och 0x6(alltså kommer som 'A6' i ASCII) så skulle det bli 0xA6 om man skiftar 0xA fyra steg åt vänster och sen kör & med 0x6. Målet är att testa det emot CheckSum. Men faktum är att det inte funkade med detta:

Kod: Markera allt

if((atoh(GPS_CheckSum[0])<<4) & (atoh(GPS_CheckSum[1])) == Check_Sum) RX_Data_Valid = 1;
Så vad gör jag för fel då? :humm: Jag ska prova med '&&'

Edit: Rackarns, det ska väll vara OR och inte AND :?
Senast redigerad av Glattnos 11 april 2018, 14:59:50, redigerad totalt 1 gång.
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: OriginGPS sensor och AVR koppla ihop?

Inlägg av arvidb »

& är bitwise AND - d.v.s. (0bxxxx0000 & 0b0000xxxx) kommer alltid att vara lika med 0. Rätt operand här är | - bitwise OR. Eller helt enkelt ett vanligt plustecken. :)
Glattnos
Inlägg: 2972
Blev medlem: 29 oktober 2009, 20:01:18

Re: OriginGPS sensor och AVR koppla ihop?

Inlägg av Glattnos »

arvidb: Jag såg ju det precis, vet inte hur jag tänkte :shock:
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: OriginGPS sensor och AVR koppla ihop?

Inlägg av arvidb »

Hehe, jag har gjort samma sak. Man vill ju ha båda värdena så "och" känns ju logiskt kanske. ;)
Skriv svar