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



Teraz jest 29 kwi 2026, o 02:46


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 
Autor Wiadomość
PostNapisane: 20 lis 2014, o 21:10 
Offline
Nowy

Dołączył(a): 20 lis 2014
Posty: 3
Zbananowany użytkownik

Pomógł: 0

Witam,
jestem mega początkującym (AVR mam od wczoraj : D). Chcę zrobić program który obsługuje jeden przycisk i dwie diody i działa tak :
- przycisk nie wduszony : świeci się LED2.
- przycisk wduszony : świeci się LED1
-przycisk wduszony dłużej niż 1 sek : świeci się LED 1 i LED2.

program jaki zrobiłem działa tak jak powinien, ale zastanawiam się nad jego "forma".Zrobiłem to tak troche "na chłopski rozum" bez timerów/przerwań itp. i chciałbym wiedzieć jak to się robi "normalnie". Program:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Z góry dzięki za pomoc : ).

edit: wykorzystałem pętle for żeby odliczała 4ms a nie od razu 1 sek bo jak puszczę klawisz i będzie "_delay_ms(1000)" to i tak poczeka sekundę, a w takiej formie jak jest teraz jak puszcze to w najgorszej opcji poczeka 4ms, niezauważalne : P



Ostatnio edytowano 20 lis 2014, o 21:36 przez joker1309, łącznie edytowano 1 raz

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

Dołączył(a): 07 lut 2013
Posty: 600
Pomógł: 47

Zajrzyj tutaj
http://mirekk36.blogspot.com/2012/10/ob ... a-cd3.html
To jest to czego szukasz ;)

_________________
https://www.instagram.com/myfirstquadcopter/



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

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

A ja przypominam o tym temacie http://forum.atnel.pl/topic7402.html, bo jeden z zielonych lub pinkowy może usunąć temat.

_________________
http://elektropanel.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 lis 2014, o 22:11 
Offline
Nowy

Dołączył(a): 20 lis 2014
Posty: 3
Zbananowany użytkownik

Pomógł: 0

Strasznie zakręcony ten link który podałeś, jak napisałem jestem mega początkującym. Chyba że przytrzymanie przycisku to nie jest łatwa sprawa : d.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 lis 2014, o 22:27 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 lut 2013
Posty: 600
Pomógł: 47

Cytuj:
Strasznie zakręcony ten link który podałeś, jak napisałem jestem mega początkującym. Chyba że przytrzymanie przycisku to nie jest łatwa sprawa : d.


W rzeczy samym na początek nauki jest to troszkę ciężkie do skumania ale wcześniej czy później i tak będziesz musiał się z tym zmierzyć.
Więc lepiej wcześniej i pójdziesz właściwą drogą programowania :)

ps. zacznij może od części 1

http://mirekk36.blogspot.com/2012/10/dr ... ak-to.html

i części 2

http://mirekk36.blogspot.com/2012/10/ob ... w-cd2.html

żeby mieć cały pogląd na zagadnienie ujęte w części 3

_________________
https://www.instagram.com/myfirstquadcopter/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 gru 2014, o 11:45 
Offline
Nowy

Dołączył(a): 20 lis 2014
Posty: 3
Zbananowany użytkownik

Pomógł: 0

"troszeczkę" odkopie swój temat. Nie miałem czasu za bardzo zająć się tym, dlatego cały czas stoję w miejscu. Znalazłem dużo programów ale wszystkie na atmega8, a ja używam atmega 328 który ma inne timery/przerwania. Chciałbym napisać taki program ale nie wiem jak dokładnie :
program jest narazie tytlko do obslugi drgań styków


Cytuj:
#define F_CPU 1000000UL // <---- TEGO NIGDY nie dajemy w kodzie programu

Normalnie ostatnio jakaś masakra z tym :( .... plaga wręcz - ale nie ma co się dziwić skoro na innych forach i blogach wszędzie się początkującym wkłada to łopatą do głowy. To jednak pomimo to proszę panie autor TEGO nigdy nie robić a przynajmniej na tym forum - mirekk36

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


takie coś wymyśliłem, nie wiem czy ma to prawo działać ale nie chce kopiować gotowych programów bo nie wiem jak one działają i są w nich często jakies dziwne zmienne dla początkującego, a to co jest tutaj jest dla mnie proste tylko nie wiem czy da się tak zrobić : ). Jak kod nie jest jasny mogę wytłumaczyć o co mi chodziło. Prosiłbym o pomoc z timerem i przerwaniem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 gru 2014, o 14:59 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 16 mar 2014
Posty: 745
Lokalizacja: Warszawa
Pomógł: 32

No mnie na pierwszy rzut oka to odrzuca pierwsza linijka :o
Częstotliwość pracy mikrokontrolera ustawia się we właściwościach projektu, a nie w main.

Dla początkującego to jak Amen w pacierzu.

_________________
.



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 7 gości


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