Gast
#130064
Hallo! Ich hab ein kleines Problem mit einer PWM-Routine die über den Timer-Overflow-Interrupt gesteuert wird. Der code sieht so aus: ; timer overflow interrupt tint: clc cp t4, p0 brlo ipwm1 cbi PORTD, MOTAPWM ipwm1: clc cp t4, p1 brlo ipwm2 cbi PORTD, MOTBPWM ipwm2: inc t4 brcc iende sbi PORTD, MOTAPWM sbi PORTD, MOTBPWM clc iende: reti t4 ist der schleifenzähler, er wird sonst nirgends in dem programm verwendet. in p0 und p1 steht der jeweilige wert für die Pulsbreite (0<x<255). MOTAPWM und MOTBPWM stehen für den jeweiligen Pin. Das problem ist jetzt, dass es nicht funktioniert, wenn p0 kleiner als p1 ist und wenn p1 0 oder 255 ist. und ich hab jetzt keinen blassen schimmer, wo ich da suchen könnte. kann mir da jemand helfen? Danke Bernhard