دوستان سلام
من میخوام یک مثال ساده با RTX انجام بدم که توش دو تا تسک هستند که ال ای دی روشن و خاموش کنن.
کدش رو اینطوری نوشتم
کد:
#include "RTL.h"
#include "debug_frmwrk.h"
#include "lpc177x_8x_rtc.h"
#include "lpc177x_8x_clkpwr.h"
#include "lpc177x_8x_eeprom.h"
#include "lpc177x_8x_adc.h"
#include "LPC177x_8x_pinsel.h"
#include "LPC177x_8x_gpio.h"
void delay (int i);
__task void Task1(void);
__task void Task2(void);
__task void rt(void);
int main(void)
{
debug_frmwrk_init();
os_sys_init(rt);
while(1)
{
}
}
void rt()
{
os_tsk_create(Task1,1);
os_tsk_create(Task2,2);
}
void Task1(void)
{
debug_frmwrk_init();
_DBG_("Task1 is Running\n");
//LED2 -> p0.11
#define LED2 (1<<11)
PINSEL_ConfigPin(0,11,0); // LED2 is I/O
GPIO_SetDir(0,LED2,1);
GPIO_SetValue(0,LED2);
delay(1000);
GPIO_ClearValue(0,LED2);
delay(1000);
}
void Task2(void)
{
debug_frmwrk_init();
_DBG_("Task2 is Running\n");
//LED1 -> P0.10
#define LED1 (1<<10)
PINSEL_ConfigPin(0,10,0); // LED1 is I/O
GPIO_SetDir(0,LED1,1);
while(1)
{
GPIO_SetValue(0,LED1);
delay(1000);
GPIO_ClearValue(0,LED1);
delay(1000);
}
}
void delay (int i)
{int j,k;
for(k=0;k<i;k++)
{
for(j=0;j<5000;j++);
}
}
وقتی دیباگ میکنم بعد از os_sys_init(rt); گیر میکنه و ادامه نمیده
دوستان کسی میتونه راهنمایی کنه؟