אני כרגע עובד עם בקר של חברת microchip מסוג pic18f45k80 בסביבת עבודה mplab עם קומפיילר c18.
יש לי שאלה הבנתית בסיסית,
- קוד: בחר הכל
#include <p18f45k80.h>
#include <delays.h>
//**** Start of Fuse Configurator Settings ****
//**** End of Fuse Configurator Settings ****
//**************************
//VARIABLE DECLARATION
//**************************
// Private function prototypes
void TEST (void);
// End of Private function prototypes
unsigned int TEST1=0;
void TEST (void)
{
if ( TEST1 == 0)
{
PORTAbits.RA0= !PORTAbits.RA0
Delay1KTCYx(4);
TEST();
}
else
return;
}
void main()
{
OSCCON = 0B11110100;
ANCON1 = 0x00;
ANCON0 = 0x00;
TRISA=0b00000000;
PORTA=0x00;
TEST();
while (1)
{
INT_LED1 = !INT_LED1;
INT_LED2 = !INT_LED2;
INT_LED3 = !INT_LED3;
TEST();
INT_LED4 = !INT_LED4;
INT_LED5 = !INT_LED5;
}
}
אם אני קוראה לפונקציה TEST() מתוך ב VOID MAIN.
בסוף הפונקציה לאן אני חוזר? לאותו מקום שקראתי ממנו בעצם לשורה הבאה?
איך בכלל לצאת מפונקציה בדיוק לאותו מקום בתוך התוכנית?
למשל יש לי
code1
code2
code3
TEST();
code 4
code 5
לקפוץ לתוך הTEST הוא קופץ לי, אבל אני רוצה שאחרי ביצוע הTEST שיחזור לבצע את code4 ולא יתחיל לי מהתחלה code1/
מקווה שהסברתי את עצמי ברור.
תודה.


