Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > Hallo, > > ich habe durch folgendes versucht einen Servo anzusteuern, dies klappt leider nicht. > > Das Prinzip: > Signal an PortA.0 für 1,5ms senden. > Dann die restlichen 18,5ms verweilen. > > Wer kann mir sagen was ich falsch mache? > > > > > > byte busy; // globale Variablendeklaration > > //------------------------------------------------------------------------------ > // Timer1 Interrupt, wenn Timer abgelaufen ist > // > void Timer1_ISR(void) > { > int irqcnt; > busy=0; > irqcnt=Irq_GetCount(INT_TIM1CMPA); // Interrupt Request Counter > } > > //------------------------------------------------------------------------------ > // Hauptprogramm > // > void main(void) > { > Port_DataDirBit(0,1); // Ausgabe an PortA.0 > > Irq_SetVect(INT_TIM1CMPA,Timer1_ISR); // Interrupt Service Routine definieren > while (1) > { > Timer_T1Time(21,PS_1024); // 69,4 µs*21 = 1,5ms > busy=1; > while (busy==1) > { > > Port_Write(0,0x01); // portA.0 HI > } > > Timer_T1Time(267,PS_1024); // 69,4 µs*267 = 18,5 ms > busy=1; > while (busy==1); > > > } > }