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



Teraz jest 17 maja 2026, o 19:07


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
Autor Wiadomość
PostNapisane: 18 cze 2014, o 14:00 
Offline
Użytkownik

Dołączył(a): 02 maja 2013
Posty: 111
Pomógł: 0

Witam

Piszę z taką małą prośbą. Chciałbym zbudować taką małą zabawkę elektroniczną, aczkolwiek nie jestem w stanie napisać do niej programu. Dopiero uczę się C, dlatego pytam - czy miałby ktoś chwilkę na napisanie takiego programu dla mnie?

Zabawka miałaby składać się z mikrokontrolera, kilkunastu diod, jednego switcha i dwóch układów CD4017. Zabawa polegała by na tym że - po włączeniu całości włącza się pętla mikrokontrolera, która np czeka 2,5 sekundy, potem włącza na 0,5 sekundy diodę i wtedy my musimy nacisnąć przycisk. Jeśli naciśniemy - gra toczy się dalej, czekamy chwilę, potem dioda znowu się zapala itd. , jeśli nie - program zaczyna się od początku. Istota rzeczy jest w tym, że najpierw pętla gdzie czas na wciśnięcie przycisku wynosi 0,5 sekundy wykonywana jest 10 razy, potem pętla, gdzie czas na wciśnięcie tego przycisku będzie 0,4 sekundy, potem 0,3 , 0,25 , 0,2 , 0,15 , 0,1 i na końcu 0,05 . Każda z tych pętli musiałaby być wykonana 10 razy. Do tego za każdym razem, gdy wciśniemy przycisk we właściwym momencie musiałby być wypuszczony mały impuls do układu CD4017, który zliczałby nasze punkty (na jego wyjścia podpięte by były diody). Jeśli byśmy nie zdążyli wcisnąć tego przycisku, lub zrobili to za wcześnie - układ CD4017 musiałby zostać zresetowany.

Mniej więcej wiem jak napisać taki program, aczkolwiek nie umiem jeszcze dokładnie tych części kodu, gdzie jest obsługa przycisku, lub inne rzeczy związane z portami wejścia i wyjścia.

Jeśli słabo skonkretyzowałem swoją wizję, to mogę jeszcze coś dopisać.

Jeśli to możliwe to proszę o pomoc.
Pozdrawiam



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

Dołączył(a): 25 maja 2013
Posty: 191
Pomógł: 2

Cytuj:
aczkolwiek nie umiem jeszcze dokładnie tych części kodu, gdzie jest obsługa przycisku, lub inne rzeczy związane z portami wejścia i wyjścia.


Czyli nic nie umiesz... Oglądnij sobie ten filmik
Jest tam pokazana "gra" która działa mniej więcej na twojej zasadzie. czyli dioda się zapala to klikasz switch, wystarczy trochę zmodyfikować na twoje potrzeby i masz.

_________________
sig off ;(



Ostatnio edytowano 18 cze 2014, o 14:21 przez Mateo193, łącznie edytowano 2 razy

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

Dołączył(a): 02 maja 2013
Posty: 111
Pomógł: 0

Coś umiem - czytam książkę Mirka i już wiem jakie instrukcje występuję w języku C, aczkolwiek o tych jeszcze nie przeczytałem.

Aczkolwiek dziękuję za ten poradnik, jak znajdę wolną chwilę to go obejrzę i coś zmajstruję. Jeśli miałbym ewentualnie jeszcze jakieś pytania to napiszę.

Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 cze 2014, o 15:20 
Offline
Moderator
Avatar użytkownika

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

Widzisz - szybciej się nauczysz i sam zrobisz taką zabawkę - jak sam zaczniesz pisać - a po drodze gdy będą problemy to śmiało możesz pytać i każdy chętnie pomoże ....

_________________
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: 20 cze 2014, o 21:08 
Offline
Użytkownik

Dołączył(a): 02 maja 2013
Posty: 111
Pomógł: 0

I tak oto piszę znowu ja :)

Obejrzałem ten poradnik, napisałem już coś z tym że na podstawie tego poradnika nie byłem w stanie napisać takiego programu jak bym oczekiwał. W znaczeniu - już i tak całość bardziej mi się podoba, bo w kodzie programu zawarłem funkcje, które obsługują różne brzdęknięcia buzzera, aczkolwiek program ten jest niegotowy i szczerze nie wiem jak go dokończyć by działał. Dlatego jeśli to możliwe to prosiłbym o pomoc i dokończenie tego programu. Mój plik z programem, schematem w programie EAGLE i dokładnym opisem programu napisanym w notatniku jest dostępny w linku poniżej. Aczkolwiek już teraz zauważyłem pewien błąd w schemacie i programie. Chodzi o to, że kombinowałem jak by to zrobić na mikrokontrolerze ATMega328, z tym że nie miałem takiej biblioteki w EAGL'U, więc wstawiłem tam zwykłą ATMegę8. Teraz chyba wiem że i tak zrobię to na ATMedze8, z tego powodu że ma ona dedykowane piny INT0 i INT1 do przerywań. Trzeba by to tylko uwzględnić w programie i zmienić miejsce podpięcia przycisku na schemacie.

Jeśli to możliwe to proszę o pomoc.

Pozdrawiam


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



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

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