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



Teraz jest 28 paź 2024, o 20:39


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 5 sie 2012, o 10:21 
Offline
Użytkownik

Dołączył(a): 08 cze 2012
Posty: 28
Pomógł: 0

Witam, już jakiś czas męczę się nad zrobieniem sterownika do oświetlenia kabiny samochodowej, jednak jak dotąd nic z tego nie wyszło;/ Dla ułatwienia ułożyłem sobie taki algorytm:
Obrazek
i postanowiłem wykorzystać do tego funkcję switch/case i otrzymałem coś takiego:

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

Jednak nie działa to do końca tak jak oczekiwałem;/ Mógłby mi ktoś podpowiedzieć jak mozna to zrobić? i czy do rozjaśniania i ściemniana światła wykorzystać wykorzystać PWM hardware-owy czy programow?
Pozdrawiam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 sie 2012, o 15:31 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 24 cze 2012
Posty: 414
Lokalizacja: Oborniki
Pomógł: 5

Na tą chwilę nie mam za bardzo czasu, żeby analizować cały kod, ale odnośnie PWM, to chyba łatwiej hardware-owy no nie? tylko wpisujesz sobie wartość która zmienia się pod wpływem innego timera przy ściemnianiu / rozjaśnianiu :)

_________________
Pozdrawiam:
Mikołaj



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 sie 2012, o 21:15 
Offline
Użytkownik

Dołączył(a): 08 cze 2012
Posty: 28
Pomógł: 0

Też byłem bardziej za hardware-owym PWM... A jak można zrealizować odliczanie czasu i równoczesne sprawdzanie czy dany warunek nie jest spełniony? Za pomocą przerwań zewnętrznych, czy tak jak ja to zrobilem w pętli while(), umieścić warunek i _delay_ms(...), tylko, że przy takim rozwiązaniu czasem występowało opóźnienie reakcji na spełniony warunek, jak program byl w miejscu odliczania delay;/ chyba, że w praktyce ta 1s opóźnienia nie będzie zauważalna??



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 sie 2012, o 21:32 
Offline
Moderator
Avatar użytkownika

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

...kuba... napisał(a):
Też byłem bardziej za hardware-owym PWM... A jak można zrealizować odliczanie czasu i równoczesne sprawdzanie czy dany warunek nie jest spełniony? Za pomocą przerwań zewnętrznych, czy tak jak ja to zrobilem w pętli while(), umieścić warunek i _delay_ms(...), tylko, że przy takim rozwiązaniu czasem występowało opóźnienie reakcji na spełniony warunek, jak program byl w miejscu odliczania delay;/ chyba, że w praktyce ta 1s opóźnienia nie będzie zauważalna??


No właśnie - książka prowadzi jak po sznurku do tego żeby zrezygnować z delayów bo sam widzisz co się dzieje. Tak więc nie warto poczytać ją dalej bo dokładnie jest o tym mowa - szczególnie w rozdziale

"Wstęp do systemów czasu rzeczywistego"

ale jeśli nie czytałeś poprzednich rozdziałów jeszcze to nie skacz do niego od razu bo się być może załamiesz - trzeba po kolei czytać i robić ćwiczenia ....

_________________
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  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 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