To forum jest dla wszystkich pasjonatów mikrokontrolerów AVR Atmela. Wymiana doświadczeń i pomoc dla początkujących w pisaniu programów zarówno w C, Asemblerze jak i BASCOM. Zapraszam znawców tematu, aby pomogli wszystkim początkującym!
-
Tranzystor
- Użytkownik
- Posty: 889
- Rejestracja: 28 sie 2005, 19:19
- Lokalizacja: Świętochłowice
-
Kontakt:
Post
autor: Tranzystor » 30 wrz 2007, 11:14
Witam,
posiadam ATMEGA8535, potrzebuję zliczać czas rzeczywisty poprzez kwarc 32,768kHz podłączony do nóżek PC.7 oraz PC.6. Czy trzeba zmieniać coś w Fuse Bitach

Nigdy nie próbowałem uruchomić tego na ATMEGA8535. Nie chciałbym coś zmajstrować w Fuse Bitach, bo wiadomo czy to się kończy
Pozdrawiam

-
Jasam
- Użytkownik
- Posty: 422
- Rejestracja: 27 mar 2007, 21:09
Post
autor: Jasam » 30 wrz 2007, 11:22
Dlaczego boisz sie "fusów"? Przecież to proste. W specyfikacji procesora \są wyszczególnione sposoby taktowania i jak nalezy ustawić fuse bity. Trzeba znaleść i ustawić opcje wolnego rezonatora czyli low frequency oscillator. Coś takiego w każdym razie.
PS: pozdrowienia Tranzystorze.
-
Tranzystor
- Użytkownik
- Posty: 889
- Rejestracja: 28 sie 2005, 19:19
- Lokalizacja: Świętochłowice
-
Kontakt:
Post
autor: Tranzystor » 30 wrz 2007, 11:26
Problem w tym, że racji nie masz. To nie jest takie proste. Popatrz na mikroprocesor ATMEGA8535, można go równocześnie taktować zewnętrznym oscylatorem kwarcowym o częstotliwości np. 8MHz oraz rezonatorem kwarcowym 32,768kHz, tylko że ten drugi kwarc będzie taktował Timer2, a nie cały mikroprocesor. W Fuse Bitach powinno być gdzieś ustawienie czy nóżka PC.7 i P.C6 mają być protami czy końcówkami pod kwarc.
Ogólnie to nie boję się fuse bitów, bo to proste - masz rację. No, ale akurat nie jest to proste z tego typu sprawą

Dlatego wolałem zadać pytanie na forum.
Pozdrawiam

-
Jasam
- Użytkownik
- Posty: 422
- Rejestracja: 27 mar 2007, 21:09
Post
autor: Jasam » 30 wrz 2007, 11:30
Racja...niedopatrzylem. Wiec nie pozostaje nic innego jak przestudiowanie noty. Powinien byc odnośnik przy alternatywnych funkcjach koncówek.
-
Tranzystor
- Użytkownik
- Posty: 889
- Rejestracja: 28 sie 2005, 19:19
- Lokalizacja: Świętochłowice
-
Kontakt:
Post
autor: Tranzystor » 30 wrz 2007, 11:47
U mnie w ATMEGA8535 na razie ustawiłem fuse bity tak jak poniżej. W fusach gdzie ustawia się typ rezonatora jest opcja "Ceramic resonator/Ext clock, slowly rising power", może jak to bym dał to by zaczął chodzić, jednak boję się tego zmnieniać ze względu na to, że tam pisze Ceramic, a ja nie mam ceramicznego rezonatora
Pozdrawiam

-
Załączniki
-

- Moje Fuse Bity
Ostatnio zmieniony 30 wrz 2007, 12:53 przez
Tranzystor, łącznie zmieniany 1 raz.
-
RcTomek
- Moderator
- Posty: 243
- Rejestracja: 27 wrz 2007, 21:15
- Lokalizacja: Głogów / Wrocław
Post
autor: RcTomek » 30 wrz 2007, 12:35
Według noty katalogowej, aby TC2 asynchronicznie zliczał impulsy z osobnego generatora, trzeba zmienić ustawienia rejestru ASSR. Bit AS2 (ASSR.3) decyduje z jakiego źródła będą one zliczane. Domyśnie bit ten jest wyzerowany, więc trzeba wpisać do niego jedynkę.
W fusebitach natomiast wypadało by wtedy ustawić wewnętrzny oscylator RC (bity CKSEL.3...0 odpowiadające za częstotliwość taktowania oraz SUT.1...0 w zależności od szybkości narastania napięcia zasilającego; ewentualnie można włączyć BOD). Mikrokontroler też musi być czymś taktowany. Szczegółów należy szukać w kartach katalogowych procesora.
-
Tranzystor
- Użytkownik
- Posty: 889
- Rejestracja: 28 sie 2005, 19:19
- Lokalizacja: Świętochłowice
-
Kontakt:
Post
autor: Tranzystor » 30 wrz 2007, 12:39
Ddevil pisze:Według noty katalogowej, aby TC2 asynchronicznie zliczał impulsy z osobnego generatora, trzeba zmienić ustawienia rejestru ASSR. Bit AS2 (ASSR.3) decyduje z jakiego źródła będą one zliczane. Domyśnie bit ten jest wyzerowany, więc trzeba wpisać do niego jedynkę.
W fusebitach natomiast wypadało by wtedy ustawić wewnętrzny oscylator RC (bity CKSEL.3...0 odpowiadające za częstotliwość taktowania oraz SUT.1...0 w zależności od szybkości narastania napięcia zasilającego; ewentualnie można włączyć BOD). Mikrokontroler też musi być czymś taktowany. Szczegółów należy szukać w kartach katalogowych procesora.
Mikroprocesor może być taktowany, albo z zewnętrznego albo z wewnętrznego, w ATMEGA8535 nie ma to znaczenia. Już zresztą sobie poradziłem z tym problemem. Nic nie chciało mi odliczać, ponieważ źle napisałem jedną procedurę, bardzo ważną zresztą, która odpowiadała właśnie za zegar. Teraz ja poprawiłem i wszystko działa, Fuse Bitów nie ruszałem. Zostały takie jak pokazane na obrazku powyżej.
Dzięki za pomoc
Życzę miłego dnia,
Pozdrawiam

-
RcTomek
- Moderator
- Posty: 243
- Rejestracja: 27 wrz 2007, 21:15
- Lokalizacja: Głogów / Wrocław
Post
autor: RcTomek » 30 wrz 2007, 12:44
Tranzystor pisze:Fuse Bitów nie ruszałem. Zostały takie jak pokazane na obrazku powyżej.
Skoro nie używasz ceramicznego rezonatora, proponował bym zmienić ustawienia.
Jeszcze jedno:
"Ceramic resonator, BOD enabled" to ustawienie nie ma sensu; przecież BOD masz wyłączony "BODEN disabled".
-
Tranzystor
- Użytkownik
- Posty: 889
- Rejestracja: 28 sie 2005, 19:19
- Lokalizacja: Świętochłowice
-
Kontakt:
Post
autor: Tranzystor » 30 wrz 2007, 12:55
Ddevil pisze:Tranzystor pisze:Fuse Bitów nie ruszałem. Zostały takie jak pokazane na obrazku powyżej.
Skoro nie używasz ceramicznego rezonatora, proponował bym zmienić ustawienia.
Jeszcze jedno:
"Ceramic resonator, BOD enabled" to ustawienie nie ma sensu; przecież BOD masz wyłączony "BODEN disabled".
Przepraszam bardzo, pomyliłem sobie pliki. Nie mam ustawionego ceramicznego oscylatora. Mam jednak włączonego BODa, ale nie wiem czy jest jakiś sens go wyłączać
Pozdrawiam

-
RcTomek
- Moderator
- Posty: 243
- Rejestracja: 27 wrz 2007, 21:15
- Lokalizacja: Głogów / Wrocław
Post
autor: RcTomek » 30 wrz 2007, 19:02
Tranzystor pisze:Przepraszam bardzo, pomyliłem sobie pliki. Nie mam ustawionego ceramicznego oscylatora. Mam jednak włączonego BODa, ale nie wiem czy jest jakiś sens go wyłączać

Jeżeli napięcie zasilające podczas włączania(wyłączania) wzrasta(maleje) stosunkowo powoli to zalecam włączenie tej pożytecznej opcji.
-
Tranzystor
- Użytkownik
- Posty: 889
- Rejestracja: 28 sie 2005, 19:19
- Lokalizacja: Świętochłowice
-
Kontakt:
Post
autor: Tranzystor » 30 wrz 2007, 19:11
Ddevil pisze:Tranzystor pisze:Przepraszam bardzo, pomyliłem sobie pliki. Nie mam ustawionego ceramicznego oscylatora. Mam jednak włączonego BODa, ale nie wiem czy jest jakiś sens go wyłączać

Jeżeli napięcie zasilające podczas włączania(wyłączania) wzrasta(maleje) stosunkowo powoli to zalecam włączenie tej pożytecznej opcji.
Ale mi to nie jest potrzebne... Układ zasilany ma być normalnie z transformatora, także...
-
RcTomek
- Moderator
- Posty: 243
- Rejestracja: 27 wrz 2007, 21:15
- Lokalizacja: Głogów / Wrocław
Post
autor: RcTomek » 30 wrz 2007, 19:15
Tak, ale transformator trzeba uprzednio "wyprostować" graetzem i "odfiltrować" jakimś kondensatorem ceramicznym i elektrolitycznym W przypadku dużych pojemności elektrolita sprawa może różnie wyglądać, ale to już sam zdecyduj

-
Tranzystor
- Użytkownik
- Posty: 889
- Rejestracja: 28 sie 2005, 19:19
- Lokalizacja: Świętochłowice
-
Kontakt:
Post
autor: Tranzystor » 30 wrz 2007, 19:19
Ddevil pisze:Tak, ale transformator trzeba uprzednio "wyprostować" graetzem i "odfiltrować" jakimś kondensatorem ceramicznym i elektrolitycznym W przypadku dużych pojemności elektrolita sprawa może różnie wyglądać, ale to już sam zdecyduj

Najchętniej bym żadnego z tych układów manipulujących napięciem nie włączał, ale cóż jeden z nich trzeba wybrać
