Hallo,
ich versuche, 8 LDR anzusteuern, was auch klappt. Nur LCD hat Locate-Problem, weil auf falscher Stelle angezeigt wird. Ab Locate 2,11 kommt durcheinander.
Code:
$lib "lcd_i2c.lib"
$regfile = "m32def.dat"
$crystal = 16000000
Const Pcf8574_lcd = &H40
Config Scl = Portc.0
Config Sda = Portc.1
Dim _lcd_e As Byte
_lcd_e = 128
Dim Ldr1 As Integer
Dim Ldr2 As Integer
Dim Ldr3 As Integer
Dim Ldr4 As Integer
Dim Ldr5 As Integer
Dim Ldr6 As Integer
Dim Ldr7 As Integer
Dim Ldr8 As Integer
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc
Wait 2
Locate 1 , 1
Lcd "LDR1 LDR2 LDR3 LDR4 LDR5 LDR6 LDR7 LDR8"
Do
Locate 2 , 1 : Lcd Ldr1 ; " " : Ldr1 = Getadc(0)
Locate 2 , 6 : Lcd Ldr2 ; " " : Ldr2 = Getadc(1)
Locate 2 , 11 : Lcd Ldr3 ; " " : Ldr3 = Getadc(2)
Locate 2 , 16 : Lcd Ldr4 ; " " : Ldr4 = Getadc(3)
Locate 2 , 21 : Lcd Ldr5 ; " " : Ldr5 = Getadc(4)
Locate 2 , 26 : Lcd Ldr6 ; " " : Ldr6 = Getadc(5)
Locate 2 , 31 : Lcd Ldr7 ; " " : Ldr7 = Getadc(6)
Locate 2 , 36 : Lcd Ldr8 ; " " : Ldr8 = Getadc(7)
Waitms 250
Loop
Ergebnis
Code:
LDR1 LDR2 LDR3 LDR4 LDR5 LDR6 LDR7 LDR8
690 708 629 599 656 687 586 644
Code:
LDR1 LDR2 LDR3 LDR4 LDR5 LDR6 LDR7 LDR8
690 708 629 599 656 687 586 644