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



Teraz jest 29 mar 2024, o 08:54


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 15 ] 
Autor Wiadomość
PostNapisane: 5 paź 2017, o 08:01 
Offline
Nowy

Dołączył(a): 09 lis 2016
Posty: 23
Pomógł: 0

Witam

Mam zrobiony układ na Atmedze8, kwarc na wejściach XTAL to 18Mhz.
Na wejściu (T1)PD5 podaję częstotliwośc do pomiaru maksymalnie 5MHz.
Program zajmuje mi 99% procent pamięci.

Pytanie moje jest takie, czy zamiast Atmegi8 mogę w podstawkę
włożyc Atmegę168, zyskując więcej pamięci i czy
Atmega168 da sobie radę z kwarcem na XTAL 18MHz
i częstotliwością 5MHz na wejściu (T1)PD5.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 paź 2017, o 08:16 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

Pinout jest taki sam dla 8 i 168. Co do kwarcu to spokojnie, atmega168 może wg datasheet pracować z max 20MHz kwarcem.
Więc powinno wszystko działać.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 paź 2017, o 08:22 
Offline
Użytkownik

Dołączył(a): 22 sty 2014
Posty: 1806
Zbananowany użytkownik

Pomógł: 168

1. Atmega 168PA może latać na 20MHz
2.
Atmel w nocie napisał(a):
Each half period of the external clock applied must be longer than one system clock cycle to ensure correct
sampling. The external clock must be guaranteed to have less than half the system clock frequency (fExtClk <
fclk_I/O/2) given a 50/50% duty cycle. Since the edge detector uses sampling, the maximum frequency of an
external clock it can detect is half the sampling frequency (Nyquist sampling theorem). However, due to
variation of the system clock frequency and duty cycle caused by Oscillator source (crystal, resonator, and
capacitors) tolerances, it is recommended that maximum frequency of an external clock source is less than
fclk_I/O/2.5.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 paź 2017, o 08:30 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

18/2,5 = 7,2.
Skoro na atmedze 8 działa to i na 168 będzie.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 paź 2017, o 09:21 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 02 paź 2017
Posty: 17
Pomógł: 4

A może od razu wrzuć tam Atmege 328 ?? Pinout ten sam, może latać spokojnie do 20MHz, cenowo też niewiele droższa a pamięci jeszcze drugie tyle :)


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 paź 2017, o 12:35 
Offline
Nowy

Dołączył(a): 09 lis 2016
Posty: 23
Pomógł: 0

Wielkie dzięki już wszystko wiem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 paź 2017, o 18:16 
Offline
Nowy

Dołączył(a): 09 lis 2016
Posty: 23
Pomógł: 0

Witam ponownie

Sprawiłem już sobie Atmegę328, wgrałem program który świetnie działał na Atmedze8 i pojawiły się problemy.

Przerwanie czasowe wydłużyło się z 1 sek do 8 sek, Atmega328 działa bardzo wolno.
Potrafi się zawieśic na wyświetlaczu LCD zamiast warości liczbowych pojawiają się nieraz krzaki.

Fusebit w Atmedze8 jak i w Atmedze328 dla kwarcu 18,432MHz zostały ustawione tak samo 001111.

Podpowiedzcie co robię źle.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 paź 2017, o 18:21 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

Kompilowałeś program pod 328 czy "żywcem" przerzuciłeś z atmegi8?
Skompiluj projekt pod atmegę328.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 paź 2017, o 18:34 
Offline
Nowy

Dołączył(a): 09 lis 2016
Posty: 23
Pomógł: 0

Program był kompilowany pod Atmegę328.

Zmieniane było również

$regfile = "m8def.dat" --------------------->>>>> $regfile = "m328pdef.dat"



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 paź 2017, o 18:56 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

A czy przypadkiem nie masz przestawionego preskalera?
W rejestrze CLKPS powinno być 0.
Ewentualnie fusebit CKDIV8 może masz ustawiony?

Domyślnie dla atmegi328 CKDIV8 jest zaprogramowany, w atmedze8 tego fusebita nie ma. Zmień i na pewno będzie działać.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 paź 2017, o 19:25 
Offline
Użytkownik

Dołączył(a): 29 mar 2012
Posty: 595
Lokalizacja: Jaworzno
Pomógł: 39

Nowe procki M328 mają "zaprogramowany"(0) bit CKDIV(podział zegara przez 8). Trzeba sobie to zmienić i będzie OK.


Autor postu otrzymał pochwałę

_________________
Pozdrawiam
PP



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 paź 2017, o 19:44 
Offline
Nowy

Dołączył(a): 09 lis 2016
Posty: 23
Pomógł: 0

Nic nie zmieniałem w CLKPS oraz w CKDIV8 (tam są nadal ustawienia fabryczne).

Już wiem że w CLKPS powinno być 0.

Ale nie wiem co mam wpisac w CKDIV8



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 paź 2017, o 19:54 
Offline
Użytkownik

Dołączył(a): 22 mar 2017
Posty: 80
Pomógł: 5

CKDIV8 - 7 bit w fusebit LOW powinien być na 1. (CKDIV8 = 1)
Więc to co masz w fusebit LOW dla atmegi8 + 128.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 paź 2017, o 20:13 
Offline
Nowy

Dołączył(a): 09 lis 2016
Posty: 23
Pomógł: 0

Ok, w poniedziałek zabieram się za to, oczywiście dam znac jak Mi poszło.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 paź 2017, o 17:32 
Offline
Nowy

Dołączył(a): 09 lis 2016
Posty: 23
Pomógł: 0

Zadziało był włączony podział zegara przez 8.

Wielkie dzięki.



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: 15 ] 

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:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO