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



Teraz jest 17 maja 2026, o 18:11


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 23 ] 
Autor Wiadomość
PostNapisane: 19 cze 2014, o 19:45 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Witam, chciałbym się przywitać, bo to mój pierwszy post na forum :).
Ale przejdźmy do tematu wątku, mam problem, otóż napisałem program do sterowania serwem modelarskim pod atmege32 i na niej działa lecz gdy próbuje ten kod wgrać do attiny24 wyskakuje mi 11 błędów :( kod:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Błędy:
Obrazek
Prosiłbym o pomoc w uruchomieniu tego PWM na attiny24
Dodam, że w C jestem nowy :P.

Pozdrawiam leonos2000

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 19:54 
Offline
Użytkownik

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

Pomógł: 168

No cóż Panie Kolego, trzeba sobie ściągnąć note PDF ATtiny24 i zobaczyć jak nazywają się rejestry od timerów :) Bo pewnie inaczej niż w ATmedze32 :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 20:06 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

eee ależ ja głupi! Nazywają się OCR01A i B , czyli powinienem dopisać do każdego TCCR0 "A" i powinno być ok?
oczywiście też zmienić z PB3 na PB2 i pisać OCR0A?

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 20:08 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 sty 2013
Posty: 1760
Pomógł: 196

Witam
....dodatkowo wydaje się, że ten raport dotyczy zupełnie innego programu: COM0A1, COM0B1 i takie tam.

Pozdr.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 20:21 
Offline
Użytkownik

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

Pomógł: 168

leonos2000 napisał(a):
eee ależ ja głupi! Nazywają się OCR01A i B , czyli powinienem dopisać do każdego TCCR0 "A" i powinno być ok?
oczywiście też zmienić z PB3 na PB2 i pisać OCR0A?


No coś w tym jest, napisałem Ci tą inicjalizację i popatrz w note co jest co i na przyszłość będziesz wiedział:)

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 20:25 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Dziękuje Kolego Nefarious19 taki program działa.
Jeszcze raz dziękuje :).

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 20:31 
Offline
Użytkownik

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

Pomógł: 168

leonos2000 napisał(a):
Dziękuje Kolego Nefarious19 taki program działa.
Jeszcze raz dziękuje .


Nie ma za co, tylko pamiętaj, nota w rękę i czytamy! Co by w przyszłości niespodzianek nie było :) Pozdrawiam :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 21:29 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 sty 2013
Posty: 426
Pomógł: 36

Kolego Nefarious19 a gdzie globalne zezwolenie na przerwanie? ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 21:36 
Offline
Użytkownik

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

Pomógł: 168

kaka0204 napisał(a):
Kolego Nefarious19 a gdzie globalne zezwolenie na przerwanie?


A po co Ci w trybie FAST PWM przerwania ;)? BlueBook (twarda oprawa) strona 240, inicjalizacja timera w tryb fast pwm :) W kodzie zostawiłem koledze bibliotekę interrupt bo może chce z niej korzystać. Ja tylko inicjalizację timera napisałem:)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 22:39 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 sty 2013
Posty: 426
Pomógł: 36

Ach tak! Faktycznie. Przepraszam za wprowadzenie w błąd.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 22:47 
Offline
Użytkownik

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

Pomógł: 168

Cytuj:
Ach tak! Faktycznie. Przepraszam za wprowadzenie w błąd.


Spoko, sam musiałem sprawdzić w BlueBible :D czy babola nie zrobiłem :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 23:21 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Witam ponownie :)
Teraz próbuje skompilować program też do PWM ale na trybie pracy licznika CTC, też na attiny24. Oto kod:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

napisałem to na podstawie kodu z bluebooka ale wyskakują błędy:
Obrazek
co jest źle?
Dla czego jest błąd z zezwoleniem na przerwania Compare Match?

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2014, o 23:40 
Offline
Użytkownik

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

Pomógł: 168

Oj Kolego, proponuje zacząć naprawdę Blubooka zacząć porządznie czytać i poradniki Mirka oglądać, bo widzę że chyba żeś przespał wszystkie ;p

1) Program nie ma głównej pętli nieskończonej

2) procedura przerwania jest w głównej funkcji o zgrozo! trzeba ją wywalić poza główną funkcję

3) chcesz migać se diodełką a ustawienia pinu jako portu nie zaznasz u Ciebie w kodzie ;D

4) gdzie do zmiennej pwm wpisujesz jakąś wartość? jak ją inicjalizujesz w głównej funkcji, z czego wynika że to nie zmienna globalna to trzeba jej jakąś wartość przypisać. Choćby zero :)

Kod będzie wygladał teraz tak:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 cze 2014, o 00:00 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

pff... :( chyba od początku muszę książkę przeczytać, albo jest za późno i mi mózg przestał pracować. Aż wstyd, że tak podstawowe błędy popełniłem...
Dziękuje za pomoc kolejny raz :).

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 cze 2014, o 00:03 
Offline
Użytkownik

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

Pomógł: 168

leonos2000 napisał(a):
pff... chyba od początku muszę książkę przeczytać, albo jest za późno i mi mózg przestał pracować. Aż wstyd, że tak podstawowe błędy popełniłem...
Dziękuje za pomoc kolejny raz .


Nie zniechęcaj się, tylko ćwicz i jeszcze raz ćwicz. Efekty przyjdą. Teraz jest późno i zwoje w mózgu słabo przewodzą :) nie ma co się przejmować :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 cze 2014, o 00:21 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

hehe chyba masz rację :) ale z tym kodem też mam mały problemik z Compare Match:
Obrazek

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 cze 2014, o 00:36 
Offline
Użytkownik

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

Pomógł: 168

Zamień TIMSK na TIMSK0 i OCIE0 na OCIE0A. Powinno pomóc :)


Wysłane z mojego D2005 przy użyciu Tapatalka



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 cze 2014, o 00:51 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Masz rację - pomogło :). Program się kompiluje, lecz po zaprogramowaniu na PB1 jest ciągle 0

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 cze 2014, o 07:17 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 sty 2013
Posty: 1760
Pomógł: 196

Witam
leonos2000 napisał(a):
....lecz po zaprogramowaniu na PB1 jest ciągle 0

... kol.Nefarious19 napisał Ci w kodzie :
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

- wyjście na PB2

Pozdr.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 cze 2014, o 11:45 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Tak, chodziło mi o PB2 mała pomyłka, właśnie na nim jest 0 :).

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 cze 2014, o 12:16 
Offline
Użytkownik

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

Pomógł: 168

leonos2000 napisał(a):
Tak, chodziło mi o PB2 mała pomyłka, właśnie na nim jest 0 .


A wpisujesz w ogóle coś do zmiennej PWM? Napisałem Ci przecież że trzeba wpisać do niej wartość jakąś, w Twoim przypadku od 0 do 255. Wpisujesz to w pętli while(1):

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


W twoim przypadku nie masz nic bo nic nie przypisałeś do zmiennej pwm, rozumiesz?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 cze 2014, o 13:16 
Offline
Użytkownik

Dołączył(a): 19 cze 2014
Posty: 247
Pomógł: 15

Tak oczywiście wpisuje na początku wartość pwm = 100

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 cze 2014, o 14:12 
Offline
Użytkownik

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

Pomógł: 168

Spójrz w note ba rejestr TCCR0A, widzisz tam gdzieś możliwość ustawienia preskalera? Bo mi się jakoś nie wydaje, że tam można cokolwiek ustawić. Nic dziwnego że Ci PWM nie działa. Do ustawienia preskalera służą bity CSXX w rejestrze TCCR0B. Pamiętaj że TIMER0 w a ATtiny ma dwa rejestry kontrolne. TCCR0A i TCCR0B, i żeby poprawnie działał to w obu trzeba odpowiednie bity ustawić, obojętnie czy korzystasz z przerwania od OCR0A czy OCR0B. Spróbuj teraz:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



i jeszcze jedna uwaga, w nawet najprostszym programie pisz komentarze. Szybciej się C nauczysz, uwierz mi.



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

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