永发信息网

uC/OSII编程中的问题,程序出错,停在OSStart()那了

答案:1  悬赏:30  手机版
解决时间 2021-01-25 16:36
OS_EVENT *QSemB;
OS_EVENT *QSemC;

OS_EVENT *AppSemSend[MAX_TCP_LINKS];
OS_EVENT *AppSemCon[MAX_TCP_LINKS];
OS_EVENT *AppSemDisc[MAX_TCP_LINKS];

void *QMsgTbB[100];
void *QMsgTbC[100];
void *QMsgTbD[100];
void *QMsgTbE[100];

char rxmsg;
ARPKT arpkt;
IPKT ipkt;
ICMPKT icmpkt;
UDPKT udpkt;
int rfv1,da_d;
OS_STK Main_Stack[TASK_STACK_SIZE]= {0, };
void Main_Task(void *Id);
#define Main_PRIO 20

OS_STK TaskB_Stack[TASK_STACK_SIZE]= {0, };
void TaskB_Task(void *Id);
#define TaskB_PRIO 12

OS_STK TaskC_Stack[TASK_STACK_SIZE]= {0, };
void TaskC_Task(void *Id);
#define TaskC_PRIO 14
void Main_Task(void *Id)
{
GENFRAME *gft;
WORD dtype;

ARMTargetStart();
OSTaskCreate(TaskB_Task, (void *)0, (OS_STK *)&TaskB_Stack[TASK_STACK_SIZE-1], TaskB_PRIO);
OSTaskCreate(TaskC_Task, (void *)0, (OS_STK *)&TaskC_Stack[TASK_STACK_SIZE-1], TaskC_PRIO);

while(1)
{

OS_ENTER_CRITICAL();

OS_EXIT_CRITICAL();
OSTimeDly(100);
}
}

void TaskB_Task(void *pdata) //arp
{
INT8U eer;
ARPKT *arp;
NODE node;
char *jrxmsg=0;
int txlen,ret=0;

while (1)
{
Uart_Printf("do_poll1! ");
OSTimeDly(50);
}
}

void TaskC_Task(void *pdata) //icmp
{
INT8U eer;
IPKT *ip1;
ICMPKT *icmp;
int txlen,len;
NODE node;
char *jrxmsg=0;
Delay(100);

while (1)
{
Uart_Printf("do_poll2!");

OSTimeDly(50);
}
}

void Main(void)
{

ChangePllValue(88,10,0);
rBWSCON=0x11111012; //BANK2 IS 8 BIT MODE
Port_Init();
Uart_Init(0,115200);
Led_Display1(0xf);
Uart_Select(0); //Select UART0//
// Beep(0x1);
Uart_Printf("\n---------------------------------------------------------------");
Beep(0x00);
Uart_Printf("\nOEM name : LiYuTai Elec.Co.,Ltd. ");
Uart_Printf("\nWebsite : www.hzlitai.com.cn ");
Uart_Printf("\nEmail : lyt_tech@yahoo.com.cn ");
Uart_Printf("\nFunction : ARMSYS44b0's Datagram Test Program ");
Uart_Printf("\nUART config: 115.2kbps,8Bit,NP,UART0 ");
Uart_Printf("\n---------------------------------------------------------------");
Uart_Printf("\nS3C44B0X Test Program Ver 2.0 rSYSCFG=0x%x MCLK=%dHz\n",rSYSCFG,MCLK);
Led_Display1(0x0);

Lcd_Init();

ARMTargetInit();//initialize Target

// Init uCOS-II
OSInit();

//Create the Main Task
OSTaskCreate(Main_Task, (void *)0, (OS_STK *)&Main_Stack[TASK_STACK_SIZE-1], Main_PRIO);
QSemB=OSQCreate(&QMsgTbB[0],100);
QSemC=OSQCreate(&QMsgTbC[0],100);

OSStart();
}

以上为主程序的一部分,编译没有问题,上JTAG测试的时候老师出错,单步运行有时出错在一开始,有时出错在OSStart();那里,请高人指点迷津!不甚感激!!!
最佳答案
在什么系统上调试的
是不是汇编部分没有做好

你是在ARM系统上调试的
在arm上调试ucos的时候,OSStart()一运行,就开始启动定时器,二这个定时器是系统运行必须的
jtag无法调试定时器
就是说在jtag下,你只能让UCOS全速运行,无法单步运行
设置断点运行也可以
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
前几天买了文胸贴,胸贴是在家里换好还是到拍
在qq里,附近的人可以给我发匿名悄悄话么?
荣事达电磁炉显示E7故障代码维修求助
配股路演什么意思
天外天客房地址在什么地方,想过去办事
1.2mol的氧气与金属单质A反应生成0.8mol的氧
客户说要见到发票财务才会打钱 这么做合理吗
一份盖了有红章的文件原件,怎样得到完全一样
通河宾馆地址有知道的么?有点事想过去
在大商场金六福珠宝店买到假黄金怎么办
人体内的二氧化碳是在哪里产生的
据中新网2012年3月12日电:印度尼西亚(简称
十三倒过来是什么数
下列不属于相对性状的一组是CA. 眼睛的单眼皮
猛龙为什么打不赢骑士
推荐资讯
作业帮这个用积分抢东西抢到之后要不要付钱
全国各省院线的荧幕数量的明细
混凝土的变形极限是多少?具体在哪能查到。比
停车场(朝阳西路)(朝阳西路31号附近停车场)地
西亚最丰富和最缺乏的自然资源分别是。A. 水
杭州精锐教育这家公司的名气为什么这么大
三国杀国战里面的邹氏的技能的话,如果在她亮
【jup】我跟一个老外说youareFrank?他说jupit
为什么有的人不漂亮 却看着很顺眼
图中等压面的弯曲是热力原因引起,读图,回答
成力汽修地址好找么,我有些事要过去
甲公司2012年度财务报表已经XYZ会计师事务所
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?