-
楼主分析的好
学习了
谢谢
-
楼主分析的好
学习了
很受用
谢谢
-
图挂了,是copy的吗
需要自己重新编辑图
-
楼主好人啊
freakz群里的
-
好东西,先收下,正好需要
-
我最近在学习将UC0S移植到S3C2410上,是ARM9,在网上下的别人的移植的代码,自己稍加修改,可以跑多个任务,我想,既然是操作系统移植到ARM板上,就可以管理外部硬件资源了,之前我在裸板上有个按键控制LED亮灭的程序,我想添加个任务,用UCOS来管理这个外部中断事件,我开始的想法是,新建立一个任务,在任务里将按键控制灯的程序放在这个任务里面就可以管理了,我建立2个任务,程序代码大概如下:
void APP_vMain (void)
{
OSInit();
OSTaskCreate(TaskStart1, (void *)0, (void *)&TaskStartStk1[TASK_STK_SIZE - 1], 3);
OSTaskCreate(TaskStart2, (void *)0, (void *)&TaskStartStk2[TASK_STK_SIZE - 1], 6);
FRMWRK_vStartTicker(OS_TICKS_PER_SEC); /* os_cfg.h */ //OS_TICKS_PER_SEC=100 用看门狗定时器创建时钟
OSStart(); /* Start multitasking */
}
extern U8 i=0;
void TaskStart1 (void *data)
{
data = data; // Prevent compiler warning
while(1)
{
if(i==1){
printf("Run Task1\n");
i=0;
}
OSTimeDly(50);
}
}
void TaskStart2 (void *data)
{
data = data; // Prevent compiler warning
while(1)
{
if(i==0)
{
Key_Scan_Test( ); //按键中断的程序
}
// OSTimeDly(50);
}
}
void Key_Scan_Test( void )
{
KeyScanInit() ;
rGPGCON = rGPGCON & (~((3
-
dddddddddddddddd
-
看看
-
看看
-
谢谢分享
-
在AXD全速运行时,DNW显示run task1 run task2.......
就是不能单步调试,我暂停运行后,程序跳到空闲任务那,我再全速运行,DNW也有显示任务在运行,再暂停,还是停留在空闲任务那......??????????????????
-
我是个新手,刚上手UCOS移植S3C2410,遇到问题了,我最近在玩优龙S3C2410板子,ARM9的。开始把板子当裸板玩了一段时间,有了个基本的了解,我现在想把UCOS移植到2410板子上,看了2遍任哲的UCOS原理,只能说有了大概的了解。由于我的优龙2410板子光盘文件里没有UCOS移植的工程文件,我就把博创2410光盘的UCOS系统移植工程代码拷到优龙2410板子上,(按道理说是可以通用的),用ADS编译通过,用JTAG下载到优龙2410板子上,可以运行,能现实任务在运行,但是却发现不能单步调试。
从启动代码全速运行时,应该是跳到C函数中的main函数断点处,可是我运行时,程序直接全速运行,不跳到任何断点处,我又在其他地方设置断点,全速运行,还是没有跳到任何断点,在DNW上能现实任务在运行,这样的话,不能单步调试,对学习没有多大的用处。
我是个新手,也不知道是什么问题....
望高手指点/.......
-
笑嘻嘻笑嘻嘻系
-
看看
-
谢谢分享
-
学习了 我现在在学习将UCOS移植到S3C2410上
我现在用的是优龙S3C2410板子,ARM9的。我手上的光盘文件文件实验 UCOS系统移植试验工程,用ADS下载进目标版,能编译,能运行任务,但是发现不能调试。不能调试对学习基本上没有什么帮助....我是新手,不知道是什么问题,很苦恼....
-
很有道理 学习