Witam,
Mam problem z prawidłowym uruchomieniem prostego programu na atmega128 typu:
$Device= m128
$Stack = 32
$Clock = 18.432
$Source= On
Dim n As Byte
DDRD=&hff
n=&hfe
Do
PORTD=n
Rotate(Left, 1, n)
WaitMs 100
Loop
Program po poprawnej kompilacji w Fastavr mogę bez problemów załadować za pomocą PonyProg i STK 200/300 do układu. W wyniku otrzymuję zaświeconą jedną diodę LED na porcie PD0. Przedmiotowy kod uruchamiam na nowym mikrokontrolerze podłączonym według schematu:
Po zmodyfikowaniu kodu pętli „Do” w sposób:
Do
WaitMs 100
PORTD=n
Loop
Zaświecają się wszystkie diody podłączone do portu D natomiast ten kod bez procedury „WaitMs 100” zapala jak na początku jedną podpiętą do PD0. Jednym słowem, jakby komenda „WaitMs 100” była odpowiedzialna za taki stan rzeczy. Czy muszę coś skonfigurować np. przełączyć na zewnętrzny rezonator 18.432mhz. Gdy skonfiguruję Fuse bity w sposób: CKSEL3..1 na 1111 i SUT1..0 na 11 będzie ok?
Mam problem z prawidłowym uruchomieniem prostego programu na atmega128 typu:
$Device= m128
$Stack = 32
$Clock = 18.432
$Source= On
Dim n As Byte
DDRD=&hff
n=&hfe
Do
PORTD=n
Rotate(Left, 1, n)
WaitMs 100
Loop
Program po poprawnej kompilacji w Fastavr mogę bez problemów załadować za pomocą PonyProg i STK 200/300 do układu. W wyniku otrzymuję zaświeconą jedną diodę LED na porcie PD0. Przedmiotowy kod uruchamiam na nowym mikrokontrolerze podłączonym według schematu:
Po zmodyfikowaniu kodu pętli „Do” w sposób:
Do
WaitMs 100
PORTD=n
Loop
Zaświecają się wszystkie diody podłączone do portu D natomiast ten kod bez procedury „WaitMs 100” zapala jak na początku jedną podpiętą do PD0. Jednym słowem, jakby komenda „WaitMs 100” była odpowiedzialna za taki stan rzeczy. Czy muszę coś skonfigurować np. przełączyć na zewnętrzny rezonator 18.432mhz. Gdy skonfiguruję Fuse bity w sposób: CKSEL3..1 na 1111 i SUT1..0 na 11 będzie ok?

