Witam!
Chciałbym uzyskać przebieg o wypełnieniu 50% i f~33kHz w trybie CTC na pinie PB3 Atmega 8L (OC2).
Podpiąłem wyjście OC2 na oscyloskop i ciągle stan wysoki.
Pierwszy raz i na szybko potrzebuję wygenerować taki przebieg. Proszę o pomoc. Późno już i coś mnie chyba przyćmiło. Namieszałem coś z ustawieniami portów czy jakiś rejestr nie jest ustawiony?
Na pewno ustawiony jest wewnętrzny generator 8 MHz.
Oto kod:
------------------------------------------------------------
Może bezpośrednio na rejestrach należałoby CTC ustawić?
Z noty katalogowej wyczytałem,że operując na rejestrach należy:
Ustawić PINB.3 jako output
WGM21:0=2
OCR2=120 (u mnie)
COM21:0=1
Czy coś jeszcze, żeby ruszyło?
Może ustawienie źródła jako synchroniczne (wewnętrzne)
Jak ustawić w Bascomie bezpośrednio wartości w rejestrach?
OCR2=120 udaje się, ale pozostałe?
-----------------
Użyłem Tccr2 = &B10011001 i Ocr2 = 120 zamiast konfiguracji natywnymi komendami Bascoma. Chyba ruszyło. Na wyjściu mam ok 2,5V czyli 1/2 Vcc. Wygląda, że jest ok. Podepnę pod oscyloskop i wlutuję diody IR, to się okaże.
Chciałbym uzyskać przebieg o wypełnieniu 50% i f~33kHz w trybie CTC na pinie PB3 Atmega 8L (OC2).
Podpiąłem wyjście OC2 na oscyloskop i ciągle stan wysoki.
Pierwszy raz i na szybko potrzebuję wygenerować taki przebieg. Proszę o pomoc. Późno już i coś mnie chyba przyćmiło. Namieszałem coś z ustawieniami portów czy jakiś rejestr nie jest ustawiony?
Na pewno ustawiony jest wewnętrzny generator 8 MHz.
Oto kod:
'ATMEGA 8L
$regfile = "m8def.DAT"
$crystal = 8000000 ''wewnętrzny zegar 8MHz
Config Pinb.3 = Output
Set Pinb.3
Config Timer2 = Timer , Prescale = 1 , Async = Off , Compare B = Toggle , Clear Timer = 1
Compare2 = 120 ' tożsame chyba z Ocr2 = 120 ?
Enable Oc2
Enable Interrupts ' nie wiem czy to potrzebne
Enable Timer2
Start Timer2 ' nie wiem czy to potrzebne
'********** Konfiguracja uC Koniec ************
'************** Petla glowna ******************
'***********************************************
Do
Loop
End
'************ Petla glowna Koniec **************------------------------------------------------------------
Może bezpośrednio na rejestrach należałoby CTC ustawić?
Z noty katalogowej wyczytałem,że operując na rejestrach należy:
Ustawić PINB.3 jako output
WGM21:0=2
OCR2=120 (u mnie)
COM21:0=1
Czy coś jeszcze, żeby ruszyło?
Może ustawienie źródła jako synchroniczne (wewnętrzne)
Jak ustawić w Bascomie bezpośrednio wartości w rejestrach?
OCR2=120 udaje się, ale pozostałe?
-----------------
Użyłem Tccr2 = &B10011001 i Ocr2 = 120 zamiast konfiguracji natywnymi komendami Bascoma. Chyba ruszyło. Na wyjściu mam ok 2,5V czyli 1/2 Vcc. Wygląda, że jest ok. Podepnę pod oscyloskop i wlutuję diody IR, to się okaże.