Hallo ich möchte mit dem LM35DT ein Thermometer bauen.Jetzt stehe ich vor der Frage wie ich am besten vorgehe.Der ADC hat ja 0-5V 1024 Schritte,der Sensor liefert maximal nur 1,5V bei 150°.Also würde der ADC ja immer nur zu ca 1/3 benutzt werden.Aber 3,333 rechnen geht ja nicht wirklich.Ist es überhaupt möglich ohne Referenzspannung 1,5V extern ordentlich zu messen? MfG Sepp
> Der ADC hat ja 0-5V Du solltest die interne Referenz verwenden und nicht die 5V vom Spannungsregler. Zwar ist die interne Referenz nicht genauer, um eine Kalibrierung kommst du also nicht drumrum, aber 1000 mal stabiler, die Messwerte bleiben also korrekt. > Ist es überhaupt möglich ohne Referenzspannung 1,5V extern > ordentlich zu messen Vor allem liefert der blöde LM35 eine negative Spannung bei negativen Temperaturen. Da der uC eine interne Referezspannung hat, die er nach aussen leiten kann, sollte man diese verwenden. Allerdings braucht man von ihr nur einen Bruchteil, sagen wir 1V, dann müsste an Vref ein Spannungsteiler Aref--|+\ +5V +5V | >-+--+ | | +--|-/ | 15k | LM35--+-- A/D | | | | | | +-------+ +-----|+\ | | | | >--+ 22k 10k +-|-/ | | | | LM358 | | GND +-------+ GND Macht 10mV pro GradC ab -100 GradC bis +150 GradC. Warum die Leute immer so einen Scheiss-Sensor kaufen, und sich dann wundern warum er nicht so einfach einzusetzen ist wie ein NTC, KTY oder LM335, ist mir schleierhaft. > Aber 3,333 rechnen geht ja nicht wirklich. Och Gottchen, in Bruchrechnen nicht aufgepasst ? ( x * 10 ) / 3
Okay danke ich habe es jetzt so gelöst. $regfile = "M8def.dat" ' use the Mega8 $crystal = 8000000 Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.3 , Rs = Portd.2 Config Lcd = 16 * 2 Cls Cursor Off Config Adc = Single , Prescaler = Auto , Reference = Avcc 'config ADC Start Adc Dim W As Word Dim Volt As Single Dim Celsius As Single Const Adc_faktor = 4.8 Dim Z As String * 10 Do Cls W = Getadc(0) Volt = W * Adc_faktor Celsius = Volt / 10 Z = Fusing(celsius , "#.#") Locate 1 , 1 Lcd W Locate 2 , 1 Lcd Z ; "ß" waitms 500 Loop End
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.