推荐阅读最新更新时间:2024-03-16 14:48
51单片机移植UCOS-II的方法与改进
约定:文中所写的硬件堆栈或系统堆栈是指51单片机SP指针所指向的堆栈空间,而用户堆栈或任务堆栈是指用来保存任务状态为每个任务分配的堆栈空间。 前一段时间一直在学习UCOS-II,看了一个月的源码感觉有了一个初步的认识,就开始着手找一个平台移植起来跑跑看,不然终究是纸上谈兵。先是看了公司的一个产品,用的UC是在ARM平台上移植的,费了好大力气终于把任务切换的过程看明白了。自以为对于UC的移植掌握的差不多了,于是拿出自己先前焊的51最小系统,想在51上面把UC跑起来,可是真正移植的时候却发现难度很大,不知如何下手,没办法只好找网上移植范例来学习。我找到的版本有两个,一个不知道是谁移植的,用的是KEIL小模式编译的;另一个是03年
[单片机]
ucos-ii学习笔记——首个多任务程序的创建
#include INCLUDES.h #define TASK_STK_SIZE 512 //定义两个任务的任务堆栈,每一个任务有一个任务堆栈 OS_STK MyTaskStk ; OS_STK YouTaskStk ; INT8U x=0,y=0; //字符显示位置 //声明两个任务函数 void MyTask(void *data); void YouTask(void *data); void main (void) { char *s_
[单片机]
ucOS_II移植:Stm32启动代码分析
用的编译工具是keil,在用keil建立stm32工程时,一般会产生一个启动文件,STM32F10x.s,在st提供的库函数里,用cortexm3_macro.s和stm32f10x_vector.s来代替这个文件。不过内容都大同小异。 我在csdn上搜到了一个在stm32上移植好的ucos,打算在这个代码的基础上,添加注释,先学别人的,然后再自己移植。 我获得的这份例程,使用了startup_stm32f10x_md.s作为启动文件,其中,删去了部分采用扩展SRAM的代码。 其文件内容为 startup_stm32f10x_md.s ;******** (C) COPYRIGHT2010 STMicroelectronics
[单片机]