Bonjour,
J'essaye de générer un simple signal carré sur un attiny861 mais je bloque un peu sur la config des régistres.
Sur d'autres AVR j'ai réussi, mais apparemment celui ci est un peu particulier.
Le but étant de charger OCR1A par une valeur pour modifier le rapport cyclique de mon pwm.
Voici ce que j'ai à modifier comme valeur :
Le lien vers la doc : http://www.atmel.com/Images/doc7753.pdf Page 103.Code:// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=OCR1C // OC1A output: Disconnected // OC1B output: Disconnected // OC1C output: Disconnected // Fault Protection Mode: Off // Fault Protection Noise Canceler: Off // Fault Protection triggered on Falling edge // Fault Protection triggered by the Analog Comparator: Off // Dead Time Rising Edge: 0.000 us // Dead Time Falling Edge: 0.000 us // Timer1 Overflow Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare D Match Interrupt: Off // Fault Protection Interrupt: Off PLLCSR=(0<<PCKE) | (0<<PLLE) | (0<<PLOCK); TCCR1A=(1<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (1<<PWM1A) | (0<<PWM1B); TCCR1B=(0<<PWM1X) | (0<<PSR1) | (0<<DTPS11) | (0<<DTPS10) | (0<<CS13) | (0<<CS12) | (0<<CS11) | (0<<CS10); TCCR1C=(0<<COM1A1S) | (0<<COM1A0S) | (0<<COM1B1S) | (0<<COM1B0S) | (0<<COM1D1) | (0<<COM1D0) | (0<<PWM1D); TCCR1D=(0<<FPIE1) | (0<<FPEN1) | (0<<FPNC1) | (0<<FPES1) | (0<<FPAC1) | (0<<FPF1) | (0<<WGM11) | (0<<WGM10); TCCR1E=(0<<OC1OE5) | (0<<OC1OE4) | (0<<OC1OE3) | (0<<OC1OE2) | (0<<OC1OE1) | (0<<OC1OE0); TC1H=0x00; TCNT1=0x00; TC1H=0x00; OCR1A=32000; TC1H=0x00; OCR1B=0x00; TC1H=0x00; OCR1C=0x00; TC1H=0x00; OCR1D=0x00; DT1=0x00;
De plus j'arrive pas à voir quelle sortie utiliser, ni quel "timer" est utilisé...
Pouvez vous m'aider à comprendre la doc ? Merci
-----