完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
花了半天时间把之前写的STM32裸机任务移植进去ucos_ii系统中了。自己之前是写了一个简单的裸机多任务系统,由于写得不好就不发表了,下面是移植进去ucos-ii系统中的任务:
1. led花样灯 2,按键控制 3,PWM调节led灯 4,蜂鸣器提示系统开机,按键音,PWM最暗时发声提醒 5,RTC时钟,每1分钟发送时间至串口显示(矮矬穷买不起LCD) 6,看门狗功能 7,串口处理来自上位机的数据,上位机数据是 控制RTC时钟的时间调整,按键去抖参数,led花样参数,蜂鸣器声音参数 一般教程是会把上面分出7个章节,发布的工程当然是在一个系统中添加6个任务。。很多时候,调试系统,不是教你使用JLINK(没用过,不太了解)就是使用LCD,或者数码管,其实使用串口是最方便的,特别是当数据量大的时候,系统BUG只是偶然出现的时候,除了串口,我还想不到用其他什么来查看数据查找BUG更方便。。教你使用JLINK,LCD来查看,调试的,有一部分原因利益的问题,毕竟写教程的人不是活雷锋,也要过日子,这个能理解。。我工程里是使用串口,1免费,2免费,3不要钱,,只要你有买了论坛的那块板子,就可以实现所有功能。。我写这么多当然也离不开利益的驱使,因为为了写给大家看,我学到了很多,水平高了,工资自然↑.↑.↑... 简单对这个系统说明一下: 1,需要开启ucos_ii的某些功能,在os_cfg.h的宏定义里,上一个帖子教移植的,很多功能没开,不过这个工程都已经开启了的 2,添加你的任务时,首先在myheader.h中定义你任务的堆栈空间和优先级(看到工程文件你就明白的了); 其次在main.c顶部写上static OS_STK xxx_stk[xxx_STK_SIZE]; 任务格式就直接参考main.c的mian()里面的; 我的习惯是在main()后面写上任务的主代码,所以要在main.h中或main.c中声明,要查看RTC时钟,打开串口软件就可以查看,修改的话会马上显示出来 本来还想加入flash保持Led的花样,但不知原因失败了,就放一边了,我的板装了电子掉电后RTC不会保存,不知道是什么原因,也放一边了,有人研究出来的话麻烦发一份给我。。需要添加的头文件路径。。工程中也有一份我自定义的简单串口通讯协议。程序中很多地方都有解释,不懂的可以再这里提问。 |
|
相关推荐
7 个讨论
|
|
我做了个IAR版本的,还没来得及发。。。继续努力
|
|
|
|
|
|
Bravo^^^^^…………
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 13:14 , Processed in 0.799850 second(s), Total 62, Slave 51 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号