Beschaltung des ADC

AGND = GND intern im ATMEGA 8
|
100nF
|
Aref
|
100nF
|
AVCC
|
10 µH
|
5V

ich hab den Sensor nun schon seit Tagen am ADCn und der Driftet nicht.

mal noch einen tipp der Sensor LM335 ist bei 1mA kalibriert intern!
also mal den stromverbrauch messen und mit dem wiederstand einstellen.
U=R*I mit U=Konstant(5Vstabil) und I soll1mA ergibt 5KOhm je genauer
die 1mA fliesen um so genauer die Messung siehe Datenblatt
das Datenblatt gibt aber auch fertigungsschwankungen von 2.92-3.04V
bei 25° kalibrierung zu.
das sind 120 Ohm breite .

mir reichen 0.5grad welches sich im 500 ohm bereich liegt und somit komm ich mit 4,7k klar
meine messwertliste generiert
Code:
ADC = 540   temp= - 10 . 0 °C
ADC = 541   temp= - 9 . 5 °C
ADC = 542   temp= - 9 . 0 °C
ADC = 543   temp= - 8 . 5 °C
ADC = 544   temp= - 8 . 0 °C
ADC = 545   temp= - 7 . 5 °C
ADC = 546   temp= - 7 . 0 °C
ADC = 547   temp= - 6 . 5 °C
ADC = 548   temp= - 6 . 0 °C
ADC = 549   temp= - 5 . 5 °C
ADC = 550   temp= - 5 . 0 °C
ADC = 551   temp= - 4 . 5 °C
ADC = 552   temp= - 4 . 0 °C
ADC = 553   temp= - 3 . 5 °C
ADC = 554   temp= - 3 . 0 °C
ADC = 555   temp= - 2 . 5 °C
ADC = 556   temp= - 2 . 0 °C
ADC = 557   temp= - 1 . 5 °C
ADC = 558   temp= - 1 . 0 °C
ADC = 559   temp= - 0 . 5 °C
ADC = 560   temp=   0 . 0 °C
ADC = 561   temp= + 0 . 5 °C
ADC = 562   temp= + 1 . 0 °C
ADC = 563   temp= + 1 . 5 °C
ADC = 564   temp= + 2 . 0 °C
ADC = 565   temp= + 2 . 5 °C
ADC = 566   temp= + 3 . 0 °C
ADC = 567   temp= + 3 . 5 °C
ADC = 568   temp= + 4 . 0 °C
ADC = 569   temp= + 4 . 5 °C
ADC = 570   temp= + 5 . 0 °C
ADC = 571   temp= + 5 . 5 °C
ADC = 572   temp= + 6 . 0 °C
ADC = 573   temp= + 6 . 5 °C
ADC = 574   temp= + 7 . 0 °C
ADC = 575   temp= + 7 . 5 °C
ADC = 576   temp= + 8 . 0 °C
ADC = 577   temp= + 8 . 5 °C
ADC = 578   temp= + 9 . 0 °C
ADC = 579   temp= + 9 . 5 °C
ADC = 580   temp= + 10 . 0 °C
ADC = 581   temp= + 10 . 5 °C
ADC = 582   temp= + 11 . 0 °C
ADC = 583   temp= + 11 . 5 °C
ADC = 584   temp= + 12 . 0 °C
ADC = 585   temp= + 12 . 5 °C
ADC = 586   temp= + 13 . 0 °C
ADC = 587   temp= + 13 . 5 °C
ADC = 588   temp= + 14 . 0 °C
ADC = 589   temp= + 14 . 5 °C
ADC = 590   temp= + 15 . 0 °C
ADC = 591   temp= + 15 . 5 °C
ADC = 592   temp= + 16 . 0 °C
ADC = 593   temp= + 16 . 5 °C
ADC = 594   temp= + 17 . 0 °C
ADC = 595   temp= + 17 . 5 °C
ADC = 596   temp= + 18 . 0 °C
ADC = 597   temp= + 18 . 5 °C
ADC = 598   temp= + 19 . 0 °C
ADC = 599   temp= + 19 . 5 °C
ADC = 600   temp= + 20 . 0 °C
ADC = 601   temp= + 20 . 5 °C
ADC = 602   temp= + 21 . 0 °C
ADC = 603   temp= + 21 . 5 °C
ADC = 604   temp= + 22 . 0 °C
ADC = 605   temp= + 22 . 5 °C
ADC = 606   temp= + 23 . 0 °C
ADC = 607   temp= + 23 . 5 °C
ADC = 608   temp= + 24 . 0 °C
ADC = 609   temp= + 24 . 5 °C
ADC = 610   temp= + 25 . 0 °C
ADC = 611   temp= + 25 . 5 °C
ADC = 612   temp= + 26 . 0 °C
ADC = 613   temp= + 26 . 5 °C
ADC = 614   temp= + 27 . 0 °C
ADC = 615   temp= + 27 . 5 °C
ADC = 616   temp= + 28 . 0 °C
ADC = 617   temp= + 28 . 5 °C
ADC = 618   temp= + 29 . 0 °C
ADC = 619   temp= + 29 . 5 °C
ADC = 620   temp= + 30 . 0 °C
ADC = 621   temp= + 30 . 5 °C
ADC = 622   temp= + 31 . 0 °C
ADC = 623   temp= + 31 . 5 °C
ADC = 624   temp= + 32 . 0 °C
ADC = 625   temp= + 32 . 5 °C
ADC = 626   temp= + 33 . 0 °C
ADC = 627   temp= + 33 . 5 °C
ADC = 628   temp= + 34 . 0 °C
ADC = 629   temp= + 34 . 5 °C
ADC = 630   temp= + 35 . 0 °C
ADC = 631   temp= + 35 . 5 °C
ADC = 632   temp= + 36 . 0 °C
ADC = 633   temp= + 36 . 5 °C
ADC = 634   temp= + 37 . 0 °C
ADC = 635   temp= + 37 . 5 °C
ADC = 636   temp= + 38 . 0 °C
ADC = 637   temp= + 38 . 5 °C
ADC = 638   temp= + 39 . 0 °C
ADC = 639   temp= + 39 . 5 °C
Python programm
Code:
traum = 610
tnull = 560 
for w in xrange(540,640):
    te = "+" 
    if w == traum:
        temp = 250
    if w > traum :
        zahl = w - traum
        zahl = zahl * 5
        temp = 250 + zahl
    if (w < traum) and (w > tnull):
        zahl = traum - w
        zahl = zahl * 5
        temp = 250 - zahl
    if w == tnull:
        te = " "
        temp= 0
    if w < tnull:
        te ="-"
        zahl = tnull - w
        temp = zahl *5
    zahl = temp / 10    
    temp = temp % 10
    print "ADC =", w ,"  temp=",te,zahl,".",temp,"°C"
[/list]