Witam jakiś czas temu zmontowałem zestaw uruchomieniowy dla procesorów AVR z ATMEGA 162, który w dawnych czasach gościł jako podstawa kursu programowania w C. (http://www.sklep.avt.com.pl/photo/_pdf/AVT3505.pdf) pewnie większość bardziej doświadczonych użytkowników ją zna.
Następnie wgrałem poniższy program
Niby klasyk klasyki, ale gdy już ogarnąłem programator kompatybilny z STK500 udało się skompilować program w WinAVR nic się nie działo wyświetlacz nie działał następnie przestudiowałem AVRStudio i w nim skompilowałem program bo wydawalo mi się ze to może być wina jakiegoś linkera albo makefila, ale dalej nic.
Na nóżkach wyswietlaczy było napięcie a diody nie swieciły.. No to rozebrałem płytkę i złorzyłem jeszcze raz, pogooglowalem, i zrobiłem wszystko co w moim wypadku zrobiłby początkujący elektronik, lecz też bez odzewu ze strony plytki.
Potem mnie tchnęło żeby pogrzebać w opcjach komunikacji (chyba powinienem napisać STK?)
Metoda prób i błędów, wieczór w plecy ale udalo się zmienilem następujące FusseBity na true:
BOOTRST
CKDIV8
CKOUT
i zestaw ożył! Co dziwne przy eliminacji pojedyńczych ledy znowu przestają swiecić zestaw bez CKDIV8 swieci na 3 z 4 wyswietlaczy.
Czytałem troche o tych bitach ale poki co nie wiem jak ma się ich wplyw na brak reakcji wyświetlaczy. I chciałem zapytać może to głupie i trywialne ale nie rozumiem czemu akurat te 3 bity zaznaczone sprawiają że program działa poprawnie?
Następnie wgrałem poniższy program
Cytat:#include <avr\io.h>
#include <avr\delay.h>
int main(void)
{
/* Ustawienie wyjsc*/
DDRD = 0x7c;
for( ; ; )
{
/*wyłączenie diod*/
PORTD = 0x7c;
_delay_loop_2(0xffff);
/*włączenie diod*/
PORTD = 0;
_delay_loop_2(0xffff);
}
return 0;
}
Niby klasyk klasyki, ale gdy już ogarnąłem programator kompatybilny z STK500 udało się skompilować program w WinAVR nic się nie działo wyświetlacz nie działał następnie przestudiowałem AVRStudio i w nim skompilowałem program bo wydawalo mi się ze to może być wina jakiegoś linkera albo makefila, ale dalej nic.
Na nóżkach wyswietlaczy było napięcie a diody nie swieciły.. No to rozebrałem płytkę i złorzyłem jeszcze raz, pogooglowalem, i zrobiłem wszystko co w moim wypadku zrobiłby początkujący elektronik, lecz też bez odzewu ze strony plytki.
Potem mnie tchnęło żeby pogrzebać w opcjach komunikacji (chyba powinienem napisać STK?)
Metoda prób i błędów, wieczór w plecy ale udalo się zmienilem następujące FusseBity na true:
BOOTRST
CKDIV8
CKOUT
i zestaw ożył! Co dziwne przy eliminacji pojedyńczych ledy znowu przestają swiecić zestaw bez CKDIV8 swieci na 3 z 4 wyswietlaczy.
Czytałem troche o tych bitach ale poki co nie wiem jak ma się ich wplyw na brak reakcji wyświetlaczy. I chciałem zapytać może to głupie i trywialne ale nie rozumiem czemu akurat te 3 bity zaznaczone sprawiają że program działa poprawnie?