Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Probleme mit Start: F10 - reset Kategorie: Programmierung C (von PeterS - 11.05.2010 14:52)
Als Antwort auf Probleme mit Start: F10 - reset von Mansfeld - 8.05.2010 14:41

> Hi,
>
> das folgende Programm verhält sich unterschiedlich beim Starten mit F10 und reset:
> Starte ich mit F10, so wird das Programm (while-loop in main() ) korrekt durchlaufen.
> Starte ich aber mit reset (also ohne USB Kabel), so bleibt das Programm in der
> while-loop hängen. Es sieht so aus, als ob die Interrupts 6 und 7 ihre Arbeit eingestellt
> hätten.
> Wie unterscheidet sich die Arbeitsweise der beiden Starts: F10 und reset?
>
>    Gruss
>     Fred

Die Msg_Write() Anweisungen werden natürlich nur durch geführt, wenn die IDE aktiv ist,
sonst muÃ?t Du die RS232 Funktionen nutzen. Woher weiÃ?t Du, das er in der while_loop
hängen bleibt?

Gruss Peter

>  
>
>
>
> #include "servos.h"
>
> int steps_l, steps_r;
>
>
> // Interrupt 7
> void count_l_isr(void)
> {
>   int irq_cnt;
>   steps_l++;
>   irq_cnt = Irq_GetCount(INT_7);
> }
>
> // Interrupt 6
> void count_r_isr(void)
> {
>   int irq_cnt;
>   steps_r++;
>   irq_cnt = Irq_GetCount(INT_6);
> }
>
>
> void main(void)
> {
>   steps_l = 0;
>   steps_r = 0;
>   servos_init();
>
>   ENC_LED_ON();
>   DRIVE_ON();
>
>   Timer_T1PWA(200);
>   Timer_T1PWB(200);
>
>   while(steps_r < 80)
>   {
>     Msg_WriteInt(steps_l);
>     Msg_WriteChar(SPACE);
>     Msg_WriteInt(steps_r);
>     Msg_WriteChar(13);
>   }
>
>   DRIVE_OFF();
>   ENC_LED_OFF();
>
> }


    Antwort schreiben


Antworten:

Re: Probleme mit Start: F10 - reset (von Mansfeld - 12.05.2010 13:22)