Hallo

Ich habe folgendes Problem:
Ich möchte zwei ADCs gleichzeitig laufen lassen und zwar ist eins für die Temperaturmessung zuständig und das andere für Helligkeitsmessung.
Wenn es dunkel ist soll die Displaybeleuchtung sich einschalten.

Das Thermometer allein funktioniert einwandfrei sobald ich jedoch die Beleuchtung mit einbringe zeigt das Display gar nichts oder nur Wirrwarr an.

Ich bin mir nicht sicher ob es an der Hardware oder Software liegt , aber da beide ( Beleuchtung geht an einem anderen Atmega einzeln ohne Temperaturmessung) einzeln funktionieren dachte ich liegt es am Code

Vielleicht könnt ihr einen Fehler finden hier der Code
PinD.1 ist der Ausgang für die Beleuchtung

Code:
' *
' * Title         : LCD Thermometer LM35.bas
' * Version       : 1.0
' * Last Updated :  17.04.2006
' * Target        : AT Mega8
' * Author        : www.avrprojects.net
' * Program code  : Bascom AVR
' * Hardware req. : LM35
' * Description   : read analog value from LM 35 temperature sensor, show the result on a LCD
' *                 display with bar-graph
' ***************************************************************************
$regfile = "M8def.dat"                                      ' use the Mega8

$crystal = 1000000


  Deflcdchar 0 , 32 , 32 , 31 , 31 , 31 , 31 , 32 , 32      ' replace ? with number (0-7)'
Deflcdchar 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1                ' replace ? with number (0-7)
Deflcdchar 2 , 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16        ' replace ? with number (0-7)
Deflcdchar 3 , 16 , 16 , 31 , 31 , 31 , 31 , 16 , 16        ' replace ? with number (0-7)
Deflcdchar 4 , 1 , 1 , 31 , 31 , 31 , 31 , 1 , 1            ' replace ? with number (0-7)
Deflcdchar 5 , 32 , 32 , 28 , 28 , 28 , 28 , 32 , 32        ' replace ? with number (0-7)
Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portc.5 , Rs = Portc.4

Config Lcd = 16 * 2

Config Pind.1 = Output

Config Pinb.0 = Input

Taster1 Alias Pinb.0
Led1 Alias Portd.1

Config Adc = Single , Prescaler = Auto , Reference = Avcc   'config ADC
Start Adc

Dim X As Word
Const A = 70

Dim W As Word , Perc As Word , Volt As Word , Volt_d As Byte , Channel As Byte , I As Byte , Cols As Byte , Cols_d As Byte

Cls
Cursor Off
Locate 3 , 1
Lcd "0"
Locate 3 , 4
Lcd "10"
Locate 3 , 8
Lcd "20"
Locate 3 , 12
Lcd "30"
Locate 3 , 16
Lcd Chr(223) ; "C"





Do

  X = Getadc(1)
  If X > A Then
  Led1 = 1
  Else Led1 = 0
  End If











  W = Getadc(0)
  Volt = W * 5
  Volt_d = Volt Mod 10
  Volt = Volt / 10
  Locate 1 , 1
  Lcd Volt ; "," ; Volt_d

  Cols = Volt / 2

  Locate 2 , 1
  For I = 1 To Cols
   Select Case I
   Case 1 : Lcd Chr(3)
   Case 5 : Lcd Chr(4)
   Case 10 : Lcd Chr(4)
   Case 15 : Lcd Chr(4)
   Case 20 : Lcd Chr(4)
   Case Else : Lcd Chr(0)
  End Select
  Next I

  Cols_d = Cols Mod 2
  If Cols_d > 0 Then
  Lcd Chr(5)
  Cols = Cols + 2
  Else
  Cols = Cols + 1
 End If

  For I = Cols To 20
  Select Case I
   Case 1 : Lcd Chr(2)
   Case 5 : Lcd Chr(1)
   Case 10 : Lcd Chr(1)
   Case 15 : Lcd Chr(1)
   Case 20 : Lcd Chr(1)
   Case Else : Lcd Chr(32)
   End Select
   Next I

   Waitms 1000
  Loop
End
Darf ich zweimal AVGND und AVCC als Stromversorgung hernehmen ?
Also für LDR und NTC.

Mfg
David