Gast
#6051921
Hallo zusammen,
ich möchte mit dem Attiny85 ein Audio Signal von ca. 13kHz erzeugen.
Soll ein Marderschreck werden. Den Ton bekomme ich leider mit etwas
jitter Effekten, bzw. zeigt mein Scope an dass die Perioden etwas
zittern und somit auch ein verrauschtes Signal wahrgenommen wird.
Arbeite hier mit dem CTC Modus des Attiny, Spannungsversorgung ist
sauber und ein 0.1uF Kondensator wurde auch implementiert. Kann mir
jemand sagen an was es liegt? Untere Frequenzen wie bspw. 500 Hz sind
nicht so sehr verrauscht wie die im oberen Bereich.
Hier mein Code:
#include <avr/io.h>
int a = 1;
void setupTimer1() {
noInterrupts();
TCNT1 = 0;
TCCR1 = 0;
GTCCR |= (1 << PSR1);
TCCR1 |= (1 << CTC1);
OCR1C = 4;
OCR1A = OCR1C;
TCCR1 |= (0 << CS13) | (1 << CS12) | (1 << CS11) | (1 << CS10);
TIMSK |= (1 << OCIE1A);
interrupts();
}
void setup() {
DDRB = 0b00000010;
setupTimer1();
}
void loop() {
}
ISR(TIMER1_COMPA_vect) {
if(a==1){
PORTB = 0b00000010;
a=0;
}else if(a==0){
PORTB = 0b00000000;
a=1;
}
}