Witam, pracuje nad małym systemem modułowym do sterowania w domu. Na ten moment mam :
-klawiaturę Matrix do wpisywania kodu do drzwi (atmega88pa)
-manipulator do temperatury (atmega164pa)
-czujnik temperatury (attiny84a)
Zamówiłem wszsystkie części i własny projekt płytek pcb.
Klawiatura działa bez żadnego problemu, program wgrywa się i działa w 100% tak jak chce.
Po zrobieniu klawiatury wziąłem się za czujnik temperatury i nie mogę za nic zrobić najprostszej rzeczy jaka jest zmiana PINu na wyjście oraz ustawienie stanu wysokiego żeby dioda kontrolna się zapaliła. Po chwili stwierdziłem ze może na później to zostawię i zacznę od manipulatora. I tu problem ze kilka pinów z grupy PC sa ciagle ustawione na stan wysoki !!! Nie mogę w żaden najprostszy sposób tego zmienić. Ale na przykład piny z grupy PB i PD działają bez problemów. Timer 0 i 1 również chodzi.
Przy ATTiny stwierdziłem ze może wadliwy procek i wymieniłem na inna sztukę ale ciagle to samo.
Używam wewnętrznego oscylatora 8MHz, próbowałem ustawic bit CKDIV8 ale nic to nie pomaga. BOD wyłączony, na włączonym tez próbowałem bez skutku.
Obydwa układy próbowałem zasilać z 3,3v oraz z 5V bez żadnej poprawy. W odbywu przypadkach mam 10uf i 10nf kondensatory dość blisko pinów zasilania, w 164pa cześć analogowa przez filtr zasilana. Programator jaki używam jest od Pololu (emuluje stk500). Korzystam z Eclipsa z dodatkiem avr. Programuje zewnętrznym avrdude, gdyż avrdude w Eclipse nie wspiera tych prockow (zreszta tak jak 88pa, ale akurat on dziala). Próbowałem poprzelaczac tez na różne procki takie jak 164,164p albo zwykle tiny84.
W pliku lss wsyztskie adresy rejestrów się zgadzają z tym co jest w datasheecie. Avrdude poprawnie odczytuje sygnatury obydwu kontrolerów. Niee mam już kompletnie pomysłu co jest nie tak.
Przyszło mi przez głowę ze może przy lutowaniu coś przegiąłem (350* przez około 30 sekund powietrzna lutownica) wiec drugie ATTiny przylutowałem normalnie kolbowa i nic to nie pomogło.
Obstawiam ze kompilator coś złe może robić bo już nic innego mi nie przychodzi do głowy.
Miał ktoś podobny problem?
Przy tym atmega164 mogę coś tam kontrolować, tylko te piny z PC żyją jak chcą (a są podpięte normalnie jak wsyztskie inne do baz tranzystorow npn przez rezystor 10k). Nawet wygrywając pusty program to samo.
A ATTiny nie działa nic, dioda cały czas wyłączona, próbowałem piny z grupy PA i PB zmieniać, ale nic to nie pomaga.
Program się oczywiście wgrywa dobrze, weryfikuje poprawnie itp.
Sprawdzałem piny multimetrem, i żadnych nieprawidłowości nie ma, tylko wykrywa w trybie diody przy odpowiedniej polaryzacji wewnętrzne diody zgodnie z dayasheetem.
Dzięki z góry
-klawiaturę Matrix do wpisywania kodu do drzwi (atmega88pa)
-manipulator do temperatury (atmega164pa)
-czujnik temperatury (attiny84a)
Zamówiłem wszsystkie części i własny projekt płytek pcb.
Klawiatura działa bez żadnego problemu, program wgrywa się i działa w 100% tak jak chce.
Po zrobieniu klawiatury wziąłem się za czujnik temperatury i nie mogę za nic zrobić najprostszej rzeczy jaka jest zmiana PINu na wyjście oraz ustawienie stanu wysokiego żeby dioda kontrolna się zapaliła. Po chwili stwierdziłem ze może na później to zostawię i zacznę od manipulatora. I tu problem ze kilka pinów z grupy PC sa ciagle ustawione na stan wysoki !!! Nie mogę w żaden najprostszy sposób tego zmienić. Ale na przykład piny z grupy PB i PD działają bez problemów. Timer 0 i 1 również chodzi.
Przy ATTiny stwierdziłem ze może wadliwy procek i wymieniłem na inna sztukę ale ciagle to samo.
Używam wewnętrznego oscylatora 8MHz, próbowałem ustawic bit CKDIV8 ale nic to nie pomaga. BOD wyłączony, na włączonym tez próbowałem bez skutku.
Obydwa układy próbowałem zasilać z 3,3v oraz z 5V bez żadnej poprawy. W odbywu przypadkach mam 10uf i 10nf kondensatory dość blisko pinów zasilania, w 164pa cześć analogowa przez filtr zasilana. Programator jaki używam jest od Pololu (emuluje stk500). Korzystam z Eclipsa z dodatkiem avr. Programuje zewnętrznym avrdude, gdyż avrdude w Eclipse nie wspiera tych prockow (zreszta tak jak 88pa, ale akurat on dziala). Próbowałem poprzelaczac tez na różne procki takie jak 164,164p albo zwykle tiny84.
W pliku lss wsyztskie adresy rejestrów się zgadzają z tym co jest w datasheecie. Avrdude poprawnie odczytuje sygnatury obydwu kontrolerów. Niee mam już kompletnie pomysłu co jest nie tak.
Przyszło mi przez głowę ze może przy lutowaniu coś przegiąłem (350* przez około 30 sekund powietrzna lutownica) wiec drugie ATTiny przylutowałem normalnie kolbowa i nic to nie pomogło.
Obstawiam ze kompilator coś złe może robić bo już nic innego mi nie przychodzi do głowy.
Miał ktoś podobny problem?
Przy tym atmega164 mogę coś tam kontrolować, tylko te piny z PC żyją jak chcą (a są podpięte normalnie jak wsyztskie inne do baz tranzystorow npn przez rezystor 10k). Nawet wygrywając pusty program to samo.
A ATTiny nie działa nic, dioda cały czas wyłączona, próbowałem piny z grupy PA i PB zmieniać, ale nic to nie pomaga.
Program się oczywiście wgrywa dobrze, weryfikuje poprawnie itp.
Sprawdzałem piny multimetrem, i żadnych nieprawidłowości nie ma, tylko wykrywa w trybie diody przy odpowiedniej polaryzacji wewnętrzne diody zgodnie z dayasheetem.
Dzięki z góry
