hallo radbruch.
danke für deine antwort.
in meiner asuro.c-datei aus der 2.8er lib habe ich nur folgende 2 stellen gefunden:
Code:
#if defined(__AVR_ATmega168__)
// fast PWM, set OC2A on compare match, clear OC2A at bottom, clk/1
TCCR2A = _BV(WGM20) | _BV(WGM21) | _BV(COM2A0) | _BV(COM2A1);
TCCR2B = _BV(CS20);
// interrupt on timer overflow
TIMSK2 |= _BV(TOIE2);
#else
// fast PWM, set OC2A on compare match, clear OC2A at bottom, clk/1
TCCR2 = _BV(WGM20) | _BV(WGM21) | _BV(COM20) | _BV(COM21) | _BV(CS20);
// interrupt on timer overflow
TIMSK |= _BV(TOIE2);
#endif
// 36kHz carrier/timer
OCR2 = 0x91;
für mich ja ansich uninteressant, weil ich den standard prozessor verwende und es hier um den atmega168 geht, oder?!
und dann dieses hier:
Code:
/*
PWM-Kanaele OC1A und OC1B auf 8-Bit einstellen.
Sie werden fuer die Geschwindigkeitsvorgaben der Motoren benutzt.
*/
TCCR1A = _BV(WGM10) | _BV(COM1A1) | _BV(COM1B1);
TCCR1B = _BV(CS11); // tmr1-Timer mit MCU-Takt/8 betreiben.
ich komme mit den ganzen operatoren in c noch nicht zu 100% klar, daher kann ich die oben genannte stelle schlecht interpretieren. dass diese jedoch nicht mit der von dir genannten übereinstimmt, ist eindeutig.
meinst du ich kann das einfach dazu schreiben?
mit der OCR2- Werten habe ich auch experimentiert. So habe ich auf die 6 Taster immer verschiedene Werte gelegt. Dabei habe ich die hex-werte von FF bis 00 laufen lassen und dabei von schlter zu schalter immer 33 abgezogen, sodass ich auf tasterbelegungen von FF, CC, 99, 66, 33, 00 kam. damit ist ja das ganze spektrum erst mal grob abgedeckt. es hat jedoch leider zu keiner veränderung geführt.
mit deinem fertigen programm vom anfang des thread geht es. nur ist mir nicht ganz wohl gänzlich auf wastes lib umzusteigen, weil ich mich gerade an die 2.8 gewöhnt habe.
vielleicht liegt es wirklich nur an der initialisierung. nur wundert mich das, weil man ja ansich mit der lib schon der ir-support bekommt. komisch, dass es dann nicht so funktioniert, wie gedacht.
grüße, malediction.
Lesezeichen