Atmega8 - posilani hodnot z AD prevodniku do pocitace.
Napsal: 15 úno 2009, 01:16
Na ATMegu8 mam pripojeny potenciometry na vsech sest AD portu. Potrebuji posilat hodnoty ze vsech AD portu do pocitace skrz RS232. Rozbehl jsem si program, pomoci ktereho umim odecist hodnotu z AD prevodniku a poslat ji do pocitace, kde ji v terminalu zobrazim. Nevim ale, jak poslat vsech 6 hodnot naraz. Muzete mi prosim poradit, jakym zpusobem se vlastne takove veci resi? Dejme tomu, ze kazdy prevodnik mi vytvori trojmistne cislo. Prevodniku mam 6. Otazka je, jak to poslat do pocitace. Jestli jako nejaky dlouhy retezec, ci jak. Dekuji
Zdrojak mam takto, nejspis bude chyba v datovych typech, nebo vubec v cele logice veci.
$regfile = "m8def.dat"
$baud = 115200
$crystal = 7372800
Dim U0 As Word, U5 As Word,U3 As Word, X As Single, Y As Single, Z As Single
Config Serialout = Buffered, Size = 40
Enable Interrupts
Config Adc = Single , Prescaler = Auto , Reference = AVCC
Start Adc
Do
U0 =Getadc(0)
U5= Getadc(5)
U3= Getadc(3)
X = 4.8876 * U0
Y = 4.8876 * U5
Y = 4.8876 * U3
U0 = X
U5 = Y
U3 = Z
Print U0 ; U5 ; U3
Waitms 10
Loop
End
Zdrojak mam takto, nejspis bude chyba v datovych typech, nebo vubec v cele logice veci.
$regfile = "m8def.dat"
$baud = 115200
$crystal = 7372800
Dim U0 As Word, U5 As Word,U3 As Word, X As Single, Y As Single, Z As Single
Config Serialout = Buffered, Size = 40
Enable Interrupts
Config Adc = Single , Prescaler = Auto , Reference = AVCC
Start Adc
Do
U0 =Getadc(0)
U5= Getadc(5)
U3= Getadc(3)
X = 4.8876 * U0
Y = 4.8876 * U5
Y = 4.8876 * U3
U0 = X
U5 = Y
U3 = Z
Print U0 ; U5 ; U3
Waitms 10
Loop
End