This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

sEOS running a dummy tast

Hi,

Please, any one can help me to explain the following function:
Q1) Function X_Init
Q2) Function X
Q3) Function sEOS_ISR()
Q4) Function sEOS_Go_To_Sleep

Code:
#include <reg52.h>

#define OSC_FREQ (12000000UL)
#define OSC_PER_INST (12)

void sEOS_Init_Timer2(const unsigned char);
void sEOS_Go_To_Sleep(void);
void X_Init(void);
void X(void);
void X_Init(void);

#define INTERRUPT_TIMER_2_Overflow 5

void main(void)
{
X_Init(); // prepare for dummy task

sEOS_Init_Timer2(60); // set up simple EOS (60ms tick interval)

while(1)
{
sEOS_Go_To_Sleep();
}
}

void X_Init(void)
{
// Dummy task init function
// Dummy task init...
}

void X(void)
{
// Dummy task called from sEOS ISR
// Dummy task....
}

void sEOS_ISR() interrupt INTERRUPT_TIMER_2_Overflow
{
TR2 = 0;
X();
}

void sEOS_Init_Timer2(const unsigned char TICK_MS)
{
unsigned long Inc;
unsigned int Reload_16;
unsigned char Reload_08H, Reload_08L;

T2CON = 0x04;

Inc = (TICK_MS * (OSC_FREQ/1000)) / OSC_PER_INST;
// Inc = 60,000 = 0xEA60
Reload_16 = (65536UL - Inc); // Reload_16 = 5536 =0x15A0

Reload_08H = (Reload_16 / 256);
Reload_08L = (Reload_16 % 256);

TH2 = Reload_08H; // 0x15
RCAP2H = Reload_08H;
TL2 = Reload_08L; // 0xA0
RCAP2L = Reload_08L;

ET2 = 1;
TR2 = 1;

EA = 1;
}

void sEOS_Go_To_Sleep(void)
{
PCON |= 0x01; // enter idle mode (generic 8051 version)
}


Thank You

Parents
  • If you say the the function 1) and 2) is doing nothing, so why when i cancer it 2 the performance analyzer will already show diffrent result??

    The problem is that you have not given us enough information to help you. In fact, most of the information we need is completely hidden or is aparently EMPTY.

    What you ask is something like this:

    "Please help me with my car. It is broken. My car is yellow with wheels and windows and a key that does something."

    Jon

Reply
  • If you say the the function 1) and 2) is doing nothing, so why when i cancer it 2 the performance analyzer will already show diffrent result??

    The problem is that you have not given us enough information to help you. In fact, most of the information we need is completely hidden or is aparently EMPTY.

    What you ask is something like this:

    "Please help me with my car. It is broken. My car is yellow with wheels and windows and a key that does something."

    Jon

Children
No data