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



Teraz jest 24 kwi 2024, o 12:55


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 
Autor Wiadomość
PostNapisane: 30 wrz 2014, o 16:58 

Pomógł: 0

Potrafiłby ktoś mi napisać program:
1.lampka miga z częstotliwością 1Hz

Trzeba napisać przerwanie, które jest generowane przez naciśnięcie microswitch wtedy na 5 sekund lampka miga z częstotliwością 100Hz

Do układu jest dołączone dwa switche ON-OFF, jeśli w pierwszym przypadku jest naciśnięty OFF -> układ nie działa, jeśli jest załączony ON układ działa według puntu pierwszego

Drugi switch ON-OFF jeśli załączony jest OFF układ działa jak układ działa jak według punktu pierwszego, ale jeśli załączony jest ON to ma on wtedy priorytet i wykonuje 4 mignięcia z częstotliwością 0,25Hz po czym przełącza się do trybu pierwszego

Umiecie pomóc w tym mirk (pisalem na wykopie)i? Arduino odpada, tylko język C

#uc #avr #mikrokontrolery #programowanie

Za dobrze skomentowany kod serdecznie dziękuję
------------------

Zastanawia mnie jak napisać też prosty kod przerwania
Mam microswitch, ustawiłem LED na miganie 1Hz, ale po naciśnięciu microswitch'a chce by migał z częstotliwością 4Hz, jak to napisac?

Za każdą pomoc serdecznie dziękuję! Czytam książkę mirosława kardasia, ale ciężko mi przenieść teorie na praktykę

uC atmega64 programtor UsbAsp, mkavrKalkulator
-------------------------------------

Ok za dużo tego jak napisać proste przerwanie
LED świeci 1Hz, po naciśnięciu switcha ma świcić 0,25Hz. Przy naciśnięciu switch ON-OFF na narastającycm zboczy ma świecić 2Hz. Jak to zrobić?



Ostatnio edytowano 30 wrz 2014, o 17:12 przez masterxab, łącznie edytowano 1 raz

Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2014, o 17:09 
Offline
Użytkownik

Dołączył(a): 27 lis 2013
Posty: 25
Lokalizacja: Legionowo
Pomógł: 3

"Zastanawia mnie jak napisać też prosty kod przerwania
Mam microswitch, ustawiłem LED na miganie 1Hz, ale po naciśnięciu microswitch'a chce by migał z częstotliwością 4Hz, jak to napisac?"


Po prostu w instrukcji "if" w której sprawdzasz warunek czy klawisz "ON" zmieniasz wartość ORCxx na odpowiednia która odpowiada 4Hz.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2014, o 17:14 

Pomógł: 0

A wiesz może jak wygląda wykrywanie zbocza narastającego lub opadającego? Jestem PLC'towcem i tam to jest troche łatwiejsze :)



Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2014, o 17:18 
Offline
Użytkownik

Dołączył(a): 27 lis 2013
Posty: 25
Lokalizacja: Legionowo
Pomógł: 3

PLC sterowniki ? Własnie mam je na zajęciach :D Zacznijmy od tego czy twój switch jest podłączony do pinow INTx czy do dowolnego pinu i wykrywasz go za pomoca instrukcji "if" ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2014, o 17:24 

Pomógł: 0

a gdzie studiujesz? ja w gliwicach ale nie mam duzo zajęć z PLC'tow ja platne szkolenia wykupuje i oplaca sie cholernie zwlaszcza ze studenci maja 50% zniżki w każdym razie mówizs o pinie INT jakimś tak? doczytam książkę, dam w tym wątku znać jak poszły postępy



Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2014, o 17:33 
Offline
Użytkownik

Dołączył(a): 27 lis 2013
Posty: 25
Lokalizacja: Legionowo
Pomógł: 3

Chodzę do technikum 4kl. Jak się uprzesz to można zrobić na przerwaniu i wtedy procedurze przerwania ładujesz w rejestr OCRx inna wartość. Spróbuje za chwile napisać coś takiego.

------------------------ [ Dodano po: 31 minutach ]

Dla F_CPU - 8Mhz
Dla Atmega8
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: 30 wrz 2014, o 19:05 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 mar 2014
Posty: 580
Lokalizacja: Jastrzębie-Zdrój
Pomógł: 71

Witam,

Kolega dla mnie kod wyżej trochę to ... nie wiem jak to nazwać... paskudztwo? Rozumiem mieć dobre intencję, ale ładować obsługę switcha do przerwań INTx ?? A jak kolega będzie chciał 4 switche??

Ja bym celował w coś takiego: (kod napisany - nie testowany)
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Kod dla ATmegi 8 i F_CPU 8MHz.

Co do autora postu, to jak się już wymienia kogoś z imienia i nazwiska, w dodatku na jego własnym forum to wypadało by pisać z dużych liter -Mirosław Kardaś. Kolega może powoli niech przyswaja BlueBooka, bo taki program to nie problem :)

Powodzenia w programowaniu

z Niebieskim pozdRowieniem,
Doman89


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 wrz 2014, o 19:58 
Offline
Użytkownik

Dołączył(a): 27 lis 2013
Posty: 25
Lokalizacja: Legionowo
Pomógł: 3

Jakbyś przeczytał to pytałem się czy chodzi o INT czy zwykły warunek if, ale kolega dopytał sie o INT to zrealizowałem na przerwaniach, może mój sposób nie jest najlepszy ale dzięki niemu kolega może liznąć temat o przerwaniach ZEW. Oczywiście masz racje ze zwykły "if" jest lepszy pod każdym kątem w tak prostym przykładzie.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 1 paź 2014, o 09:31 

Pomógł: 0

ja dziękuję w każdym razie za kazdą pomoc wyznaje zasade "ze najpierw coś musi dzialac, a dopiero potem poprawnie dzialac"

Prowadze korepetycje z matematyki i ta metoda sie sprawda :D



Góra
  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 5 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:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO