基于SF-NIOS2开发板的uC/OS-II应用实例
uC/OS-II运行调试
首先将Quartus II工程产生的sof硬件配置文件烧录到FPGA中。
接着如图10所示,在线运行uC/OS-II实例工程。
图10
在NIOS II Console中,我们可以看到最终运行的效果,如图11所示,两个任务所打印的字符串”Hello from task1”和”Hello from task2”循环出现。
图11
主要实例源码如下:
见附件,贴上源码就发表不了了,郁闷,EDN编辑器的傻瓜字数限值。很无语!
源码中,一个标准的uC/OS-II工程,实际上应该是初始化时调用OSInit();函数,最后调用OSStart();函数。这里的main函数里虽然没有调用OSInit();函数,实际上在HAL后台外设初始化时候肯定调用了。中间是任务的创建,这里创建两个任务task1和task2,优先级分别为1和2,并且分配了相应的堆栈空间。在两个任务中,分别打印字符串”Hello from task1”和”Hello from task2”,字符串打印后调用OSTimeDlyHMSM(0, 0, 3, 0);函数做了3s的延时。如果修改这个延时时间,打印效果会发生改变,根据延时的情况,Console窗口出现的打印字样频率和速度会不一样。
NIOS II上的uC/OS-II移植,就这么简单。
文章评论(0条评论)
登录后参与讨论