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



Teraz jest 29 lis 2024, o 22:54


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 
Autor Wiadomość
PostNapisane: 28 lut 2013, o 00:18 
Offline
Użytkownik
Avatar użytkownika

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

Witam
Zainspirowany "Niebiańską Książeczką" - PWM prog., oraz wątkiem http://forum.atnel.pl/topic2002.html (podpowiedź kol.SunRiver-a) postanowiłem "wyprodukować" coś podobnego:

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


Moje pytanie do szanownych kolegów brzmi: jak "po ludzku" (czyt. prawidłowo)zadeklarować OCR1A=m, żeby nie trzeba było pisać tego dwa razy ( co widać w moim godnym uśmiechu programie).
Zdaję sobie sprawę, że pytanie jest banalne ale wizualnie nie podoba mi się mój produkt.
Dla ścisłości działa toto dobrze ale napisane....
Diody na PB efekt wizualny, dioda na PD - sprawdzałem, czy zmienia się częstotliwość zmian ( ale wyszło :P )
Pomocnym dziękuję, urażonych przepraszam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 lut 2013, o 00:32 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

Według mnie w tym miejscu
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
możesz wyrzucić to OCR1A = m;

Co oznacza ten zapis ?
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Jeżeli pod if-em mają się wykonać 2 warunki to chyba powinno być
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Ten zapis
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
osobiście zapisałbym w ten sposob (ideowo)
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
ale ja tam od zawsze mam zamiłowanie to pętli więc nie przejmuj się :)

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 lut 2013, o 00:35 
Offline
Moderator
Avatar użytkownika

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

Niestety taka konstrukcja:

PORTB |= (1<<popo)

zamiast takiej

PORTB |= (1 << PB0);

i to w pętli - może się okazać gwoździem do trumny jeśli chodzi o długość czasu trwania przerwania. O ile ta druga operacja będzie przetłumaczona praktycznie na jeden rozkaz asemblerowy to ta druga będzie rozwinięta do dość sporego kodu - więc już o czasie nie muszę nic dodawać hmm ?

_________________
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: 28 lut 2013, o 00:40 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

No faktycznie, trochę mogłoby to potrwać :roll:
A tak btw po co jest deklarowane pwm6 ? Nie widzę, aby coś było z nim robione...

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 lut 2013, o 01:31 
Offline
Użytkownik
Avatar użytkownika

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

Cytuj:
możesz wyrzucić to OCR1A = m;
- jeśli wyrzucam to z tego miejsca to za pierwszym razem, po uruchomieniu "coś tam liczy :idea: " i startuje dopiero po jakimś czasie.
Co do pwm6 to faktycznie niepotrzebnie mi się zawieruszył.
Jeśli chodzi o składnię
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
- to wyliczenia są prawidłowe i program działa; ja tylko pytałem jak prawidłowo zadeklarować to nieszczęsne OCR1A bo pisane po mojemu jest wykonywalne ale chyba nieprawidłowe.
Dzięki za zainteresowanie - jeszcze nie śpicie ? :shock:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
- taki zapis tak samo (przynajmniej w moim przypadku) działa.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 lut 2013, o 16:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

kicajek napisał(a):
Ja tylko pytałem jak prawidłowo zadeklarować to nieszczęsne OCR1A bo pisane po mojemu jest wykonywalne ale chyba nieprawidłowe.


Dlaczego nieprawidłowe? Normalna inicjacja wartości początkowych zmiennych/rejestrów jak w każdym innym programie.

A po wyrzuceniu tej linijki pierwsza pętla trochę trwała, bo najprawdopodobniej rejestr OCR1A jest domyślnie ustawiany na największą możliwą wartość. Jeżeli takie działanie jest dla ciebie nieakceptowalne to ja nie widzę innej możliwości pozbycia się tej linijki.

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 mar 2013, o 00:43 
Offline
Użytkownik
Avatar użytkownika

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

Dzięki; wychodzi na to, że napisałem poprawny program.
W związku z tym, zezwalam kolegom na stosowanie mojego kodu nawet do celów komercyjnych :lol:



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

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