Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 30 mar 2026, o 22:37


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 17 paź 2014, o 00:52 
Offline
Nowy

Dołączył(a): 27 sie 2014
Posty: 13
Pomógł: 0

Witam
Mam kłopot z Atmegą 64. Chce wykorzystać port F do przesyłania danych do wyświetlacza LCD. Problem polega na tym, że nie jestem w stanie wystawić na ten port stanu wysokiego/niskiego.
Poniżej schemat który umieszczałem już w innym wątku przy okazji problemu z inicjalizacją:

http://forum.atnel.pl/_obrazki/o/5618/a28b570c08f0105ed20b820b53df6fa9.png

Ustawiam JTAG jako "disabled" (zmiana high fuse z domyślnego 0x99 na 0xD9), wyłączam przetwornik ADC w rejestrze ADCSRA. Na inne porty bez problemów wystawiam stan niski czy wysoki - prosty program w którym znajduje się jedynie
DDRx = 0xFF oraz PORTx = 0xFF (0x00), dla innych portów działa tak jak ma, w nieskończonej pętli stany zmieniają się z wysokiego na niski z zadanym opóźnieniem, jednak na porcie F ciągle pojawiają się napiecia takie jak 0.5V, 1.3V, 2.2V, itd.
Z czego to może wynikać? O czymś zapominam? Co jeszcze muszę zrobić żeby móc używać portu F jako portu I/O?
Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 17 paź 2014, o 01:37 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 mar 2014
Posty: 580
Lokalizacja: Jastrzębie-Zdrój
Pomógł: 71

Witam,

Kolega czytał notę katalogową?

Jest taka fajna informacja zaraz na początku - praktycznie nie znam angielskiego ale to idzie zrozumieć:
Obrazek

Tak więc przy zgodności z ATMega103 port F mamy do użytku tylko jako wejście.
A jak jest z tą zgodnością? Tu też DS coś nie coś podpowie :)

Obrazek

Ja to rozumiem, że bit M103C standardowo ma wartość 0 - czyli jest zaprogramowany. Kolega wyłącz kompatybilność z ATMegą 103 i powinno ruszyć, czyli kasujesz bit M103C na 1.
Przy okazji fajny przykład pokazujący, że nie można popadać w rutynę, że skasuj = 0, ustaw = 1.

z Niebieskim pozdRowieniem,
Doman89


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 17 paź 2014, o 01:38 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27450
Lokalizacja: Szczecin
Pomógł: 1045

cyctat panie z noty PDF twojego procka:

"In ATmega103 compatibility mode, Port F is an input port only."

a więc sprawdź czy nie masz przypadkiem zaprogramowanego fusebitu "Compatibilitymode" , MkAvrCalculator ci w tym pomoże ;)

Obrazek


Autor postu otrzymał pochwałę

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 17 paź 2014, o 23:10 
Offline
Nowy

Dołączył(a): 27 sie 2014
Posty: 13
Pomógł: 0

doman89 napisał(a):
Przy okazji fajny przykład pokazujący, że nie można popadać w rutynę, że skasuj = 0, ustaw = 1.


Do tego powierzchowne i wyrywkowe czytanie noty katalogowej i nieszczęście gotowe.

Generalnie port F działa jako wyjście, na LCD wyświetlane są fajne napisy.

Dziękuje za pomoc i serdecznie pozdrawiam :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO