Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

Pomiar czasu trwania impulsu

Ozi
-
-
Posty:4
Rejestracja:19 lip 2004, o 14:08
Lokalizacja:Poznan
Pomiar czasu trwania impulsu

Postautor: Ozi » 8 wrz 2004, o 12:00

Witam!

Prosze o pomoc w napisaniu procedury ktora zmiezy mi czas krotkich dodatnich impulsow podawanych na wej int0 lub int1.
Przedzial czasowy ilmpulsow to 1ms do 2ms.

z gory dziekuje

sablik
-
-
Posty:101
Rejestracja:7 lip 2004, o 06:18
Lokalizacja:Czaniec
Kontaktowanie:

Postautor: sablik » 9 wrz 2004, o 07:52

czy to ma zmierzyć czas trwania impulsu na przerwaniu , czy odstęp pomiędzy następnymi impulsami?

Ozi
-
-
Posty:4
Rejestracja:19 lip 2004, o 14:08
Lokalizacja:Poznan

Postautor: Ozi » 9 wrz 2004, o 08:34

Powinno mierzyc czas trwania dodatniego impulsu na przerwaniu (zakres 1-2ms). Niestety moja wiedza nie pozwala mi na napisanie takiej procedury:))
z gory dziekuje za pomoc.

sablik
-
-
Posty:101
Rejestracja:7 lip 2004, o 06:18
Lokalizacja:Czaniec
Kontaktowanie:

Postautor: sablik » 9 wrz 2004, o 12:17

To jest pisane z "palca" (tzn szare komórki już się wyłączyły) potraktuj to jako szkic rozwiązania :

do tego samego sygnału są podłączone obydwa przerwania
config Int0 narastające Int1 opadające.

Obsługa Int0
Czas=0
Start Timer1 (bo jest dokladniejszy )
Return

Obsługa Int1
Stop Timer 1
cls lcd czas=0
Return.

niestety resztę musisz sprawdzić sam.
Pozdrawiam do poniedzialku.

GasM
-
-
Posty:92
Rejestracja:4 lut 2004, o 11:57

Postautor: GasM » 11 wrz 2004, o 08:49

sablik może się mylę, ale TIMER0 od TIMER1 nie różnią się dokładnością, co najwyżej TIMER2 od pozostałych (chyba że chodzi o inny procek niż 8051)

po za tym zmienił bym "obsługę INT1", obsługa LCD jest długo trwała na przerwanie

obsluga INT
stop TIMER
setb wykonano
return

a w głównym programie sprawdza ów bit i w przypadku jego ustawienia wykonuje odpowiedni podprogram

sablik
-
-
Posty:101
Rejestracja:7 lip 2004, o 06:18
Lokalizacja:Czaniec
Kontaktowanie:

Postautor: sablik » 13 wrz 2004, o 05:35

Witaj GasM.
masz rację ale jak napisalem nie zastanawialem się dokladnie nad tym, to jest propozycja najprostrzego rozwiązania, po zmierzeniu impulsu dla prostej aplikacji LCD nie bedzie miało znaczenia bo pomiar zostanie wykonany.

pozdrawiam

sablik
-
-
Posty:101
Rejestracja:7 lip 2004, o 06:18
Lokalizacja:Czaniec
Kontaktowanie:

Postautor: sablik » 13 wrz 2004, o 05:37

w AVR pierwszy timet jest 8-bitowy a drugi 16- bitowy

GasM
-
-
Posty:92
Rejestracja:4 lut 2004, o 11:57

Postautor: GasM » 13 wrz 2004, o 06:38

jeśli chodzi o AVR to się nie będę wypowiadać :), natomiast OZI nie wspomniał jaki to procek :?

Ozi
-
-
Posty:4
Rejestracja:19 lip 2004, o 14:08
Lokalizacja:Poznan

Postautor: Ozi » 13 wrz 2004, o 06:46

Z zalozenia mialabyc to Atmega8 - jednak w tym procku nie mozna
skonfigurowac reakcji na zbocza sygnalu na Int0 i Int1.
Rezaguje tylko na niski poziom.

sablik
-
-
Posty:101
Rejestracja:7 lip 2004, o 06:18
Lokalizacja:Czaniec
Kontaktowanie:

Postautor: sablik » 13 wrz 2004, o 11:52

Są trzy możliwości
- zastosować przerzutnik monostabilny np. 121 do uzyskania szpilki (trochę kiepski pomysł)
- zastosować At90S8535 lub 2313 i masz przerwania
- najlepsze rozwiązanie posiedzieć trochę w sieci, i napisać kawałek w asemblerze, jakiś czas próbowałem takiego ustawienia :
MCUCR.ISC11 = 1 'These 2 codes will set the INT1 to generate
MCUCR.ISC10 = 0 'an interrupt on the falling edge of a signal.

MCUCR.ISC01 = 1 'These 2 codes will set the INT0 to generate
MCUCR.ISC00 = 1 'an interrupt on the rising edge of a signal

Ale dla M32 nie było to dobre bo się czasem przywieszał

McKEE
-
-
Posty:186
Rejestracja:7 cze 2004, o 10:02
Lokalizacja:Gniewkowo_Toruń

Postautor: McKEE » 22 wrz 2004, o 05:50

Proponuje zobaczyc projekt z EP 11/2000 - AVT3003 jest to kombinacja mirnika czestotliwosci do 100MHz, trwania impulsu i licznika impulsow na AT90S2313 , co najwazniejsze jest dostepny kod w Bascomie.

Wróć do „Projektowanie PCB, programy EDA, CAD, narzędziowe”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 0 gości