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



Teraz jest 12 lis 2025, o 06:06


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 
Autor Wiadomość
 Tytuł: Licznik czasu
PostNapisane: 11 gru 2016, o 15:25 
Offline
Nowy

Dołączył(a): 09 lis 2016
Posty: 7
Pomógł: 0

Witam, chciałbym zbudować licznik czasu który działał by w następujący sposób:
1. Gdy przetwornik adc wykryje napięcie większe od zera start zliczania milisekund i sekund
2. Stop zliczania gdy na pinie mikrokontrolera pojawi się stan wysoki
3. Reset licznika klawiszem


Co do punktu 2 i 3 nie mam problemu. Mam problem z punktem 1. Nie wiem w jaki sposób to zrealizować. Czy przerwanie przetwornika ma wyzwalać przerwanie timera? Proszę o naprowadzenie mnie na dobrą drogę ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 gru 2016, o 15:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 lis 2015
Posty: 1448
Lokalizacja: okolice Warszawa
Pomógł: 149

no nie wiem, ale chyba wartość dowolna, - poza zero napięcia, załącza timer.
coś:
if(pomiar) {licz_czas;} /*dla pomiaru różnego od zero*/
możliwe że źle zrozumiałem założenia. :?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 gru 2016, o 18:05 
Offline
Użytkownik

Dołączył(a): 28 wrz 2016
Posty: 215
Pomógł: 14

Najprościej byłoby wykorzystać przerwanie od analogowego komparatora, jeżeli uC takowy posiada.
Wtedy przerwanie od komparatora uruchamia licznik.
Wykorzystywanie ADC jest problematyczne, bo należy stale dokonywać konwersji i sprawdzać jej stan. W ten sposób uC przez większość czasu będzie wykonywał jałowe (w tym przypadku) instrukcje.

_________________
de gustibus non est disputandum



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 gru 2016, o 18:12 
Offline
Użytkownik
Avatar użytkownika

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

Witam
radeksss napisał(a):
...napięcie większe od zera start

A ile by to miało być? - ale tak jak sugeruje kol.Alef2: komparator - nie bawisz się w pomiary napięcia jako takie, tylko sprawdzasz czy na wejściu komp. pojawiło się napięcie.

Pozdr.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 gru 2016, o 13:03 
Offline
Nowy

Dołączył(a): 09 lis 2016
Posty: 7
Pomógł: 0

Wracam do tematu. Postanowiłem skorzystać z komaparatora. Pierwszy raz korzystam z komparatora i na początku chciałem jego działanie przetestować na diodzie. Podłączyłem potencjometr do AIN0, zaś nóżkę AIN1 do GND. I teraz chciałbym żeby dioda zapalała się gdy na AIN0 pojawi się napięcie większe od zera. Natomiast w dioda reaguję mi się przy napięciu powyżej 2 V (sprawdzam miernikiem). Wykorzystałem taki kod:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Czy ja tu nieświadomie korzystam z wewnętrzego napięcia referencyjnego na AIN1?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 gru 2016, o 18:16 
Offline
Użytkownik
Avatar użytkownika

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

Witam
Nigdy nie korzystałem z komparatora, a na zasadzie "może coś z tego wyjdzie" pozmieniałem podłączenie i kawałek kodu, wychodzi na to że działa; nie pytaj jak bo nie wiem, ale reaguje na mV :)
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

...tych include jest więcej bo mam takie makro.
Różnica polega na podłączeniu: AIN0 do GND, AIN1 - pomiarówka.
Nie wierzę w błąd noty kat. chociaż można ew. taką teorię spiskową uknuć :twisted:

Pozdr.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 gru 2016, o 19:14 
Offline
Nowy

Dołączył(a): 09 lis 2016
Posty: 7
Pomógł: 0

kicajek napisał(a):
Witam
Nigdy nie korzystałem z komparatora, a na zasadzie "może coś z tego wyjdzie" pozmieniałem podłączenie i kawałek kodu, wychodzi na to że działa; nie pytaj jak bo nie wiem, ale reaguje na mV :)
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

...tych include jest więcej bo mam takie makro.
Różnica polega na podłączeniu: AIN0 do GND, AIN1 - pomiarówka.
Nie wierzę w błąd noty kat. chociaż można ew. taką teorię spiskową uknuć :twisted:

Pozdr.


Wszystko działa. Wielkie dzięki! Teraz powinieniem ruszyć z miejsca :D



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 0 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