Clear Ajastimen Vertaa Match (CTC) tila ongelma

R

Razu Ahmmed

Guest
Olen kohdannut ongelmia työskentelystä CTC vuonna atmega. En voi tuottaa keskeyttää 1 sekunnin jälkeen käyttäen CTC. Huomasin, että arvo OCR1AH ei verrattuna kanssa TCNT1H. Mitä voidaan tehdä? Ehdota needed.My koodi on seuraava ........ # Include int = 0; void Timer1compa_ISR () org IVT_ADDR_TIMER1_COMPA {PORTB = ~ PORTB; PORTD = 0xFF;} void main () {int i; DDRB = 0xFF; DDRD = 0xFF; DDRC = 0xFF; SREG_I_bit = 1; TIMSK | = (1
 
Olet puuttuu / / Timer1 vertailla ottelu ISR on TIMSK = 0x10; En myöskään tiedä, miksi käytät TCCR1B | = (1
 
Täällä minulla on ongelma, kuten olen käyttäen mikroC kuin kääntäjä, siihen seuraava koodi ei hyväksytä .... OCR1A = i; kun Vakuutan kuten ...... OCR1AL = i; sitten se hyväksytään, mutta se on mahdollista vain, kun (i255 sitten olen julistaa sitä kuin OCR1AL = Lo (i); OCR1AH = Hi (i), mutta tässä tapauksessa OCR1AH arvo ei ole verrattuna arvon ja TCNT1H vain arvo OCR1L arvoa verrataan seurauksena en voinut pystyä vertailemaan suuri aikaa. En ymmärrä oikeastaan, mitä minun pitää tehdä. Apua kaivataan ..
 
Tarvitsen normaali koodi Timer1 CTC varten atmega vuonna mikroC. Olen tehnyt yksinkertaisen koodin, mutta en ymmärrä missä on minun virhe en voi verrata kun i> 255. Apua kaivataan. # Include unsigned int i; void inerrupt_ISP () org IVT_ADDR_TIMER1_COMPA {PORTB = ~ PORTB;} void square_wave_init (void) {DDRB = 0xFF; TIMSK | = (1
 

Welcome to EDABoard.com

Sponsor

Back
Top