Ok. Så er jeg ikke sikker på jeg egentlig forstår spørgsmålet :-)
Hvis det ligger i en int ligger det jo bare som et tal. Om du så vælger at se på det som et hex, decimal eller binært tal ændrer jo ikke noget ved selve tallet.
hvis du har tallet liggende i en variabel "i" f.eks. burde du kunne skrive: printf("%d", i); Hvis du vil se tallet i decimal
eller: printf("%X", i); Hvis du vil se tallet i hex.
Er det du ønsker i virkeligheden at have omsat den analoge værdi til en temperatur?
Hvis det er tilfældet skal du bruge databladet på temperaturføleren og finde ud af hvilken spænding, der svarer til en given temperatur. Så er det bare at håbe at den er linær, det vil gøre alting meget nemmere. Gav det mening?
Det kan også være en typecasting du mener? unsigned char AnaIn=0; float MidlertidigFloat;
Noget i stil med: int currenttemp = ADDAT; int temp = currenttemp*20/0x2A;
Det kan godt være at det er bedre at: int temp = (currenttemp*8) >> 4; std::cout << temp << std::endl;
Men du skal nok måle ved to forskellige temperaturer for at finde formlen. For ovenstående går ud fra at ADC'en giver 0 ved 0 grader, hvilket ikke er sandsynligt.
Så vidt jeg kan se starter den ved +2.C og til 150.C (Hvis jeg køre med målespektrum 0-5V) Men jeg har ændret målespektrum til 0-1,25V. Så det er +2 til 125.C
hovedspørgsmålet er vel hvordan man lettest konverterer en værdi fra en "int" til en række karakterer.
fx: man har målt og regnet sig til en temperatur på 56.7. Hvordan konverterer man så lettest det til karaktererne "5" "6" "." "7" som kan skrives ud på et lcd display et af gangen.
Jeg kan ikke lure om du er kommet frem til en løsning?
Tænker at målekredsløbet består af mere end blot sensoren og mikroen. Hvis der er kondensatore eller andet i målekredsløbet vil jeg foreslå du måler mere end 2 punkter (da vil det afløres om inputtet er linært eller om der skal lidt mere til).
Hvis spørgsmålet er om der skal konverteres mellem en int og en streng er det blot et spørgsmål om at bruge en printf(). Hvis det er tilfældet skal jeg nok give et par eksempler på hvordan det kan gøres.
Faerch - kan drlig huske om vi fandt et. Men lav en svar.
Synes godt om
Ny brugerNybegynder
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.