[讨论] 我的单片机开发之路(六)

bigbat   2019-10-5 17:46 楼主

在我努力专研ucLinux的时候同时也对嵌入式实时操作系统产生了兴趣。最早接触的实时操作系统是uC/OSⅡ。那时是通过邵贝贝老师翻译的《嵌入式实时操作系统uCOS-II》一书开始的。这本书对嵌入式操作系统进行了十分详尽的介绍。通过这本学习了很多操作系统的知识。同时也认识了uC/OS系统。我最先是通过虚拟机学习uC/OS的,记得uC/OS好象是通过DOS启动的。不注意还以为uC/OS就是一个DOS任务呢!可惜虚拟机没有丰富的外设,体现不出实时操作系统的特点和优势。于是我就在S3C44B0X开发板上试着调试uC/OS的例子。虽然磕磕绊绊的但是我还是坚持了下来。通过uC/OS体会到了实时操作系统编程的益处。在2006年时,使用操作系统却是很“奢侈”的设计。那时行业主要使用的还是8位的单片机。使用系统是需要很多的内存资源的。而且8位单片机的速度也不行。你弄个系统来跑数码管之类的应用,你会发现没怎么开几个任务数码管刷新就不正常了。更别说UART这些应用了。所以直到2007年中ARM Cortex M为核心的单片机大规模出现以后,使用操作系统就变得很便利了。现在,只要可能我是尽可能的使用实时操作系统来写程序。甚至有点不习惯使用“前后台程序”了。虽然最早接触的是uC/OSⅡ,但是使用最早的实时操作系统是一个叫“CoOS”的国产操作系统。 因为这个系统是开源和免费的系统。当时还有一个专门的网站介绍推广该系统。网站上有很多的中文资料,介绍的还很专业且也比较详尽。记得新唐科技(Nuvoton)还有一个搭载该系统的开发工具。最低可以使用Cortex M0内核的单片机。我没有使用过新唐Cortex M0单片机也就不了解CoOS在M0内核上的表现了。移植CoOS我主要使用的是NXP的LPC1768。这是一个Cortex M3内核的单片机。性能还说的过去,就是价格有点贵。CoOS系统和uC/OS程序规模差不多。功能对于我也够用,还曾经将lwIP和ucGUI移植到该系统上。但是很可惜这个系统后来不知道被什么公司收购了,也就不在继续开源了。这个系统我也只做了一个产品就不在使用了。虽然很多公司对于版权不够重视。但是也不敢明目张胆的挑战“知识产权”。现在主要使用的是freeRTOS了。对于freeRTOS系统我个人感觉系统不复杂的情况下还是很不错的。如:我用STM32F407做的一款带网路的产品,已经运行了有几年了,一直还算稳定。只是偶尔出现重联的现象,对freeRTOS的表现还是较信赖的!以我的经验来讲对于比较复杂的系统,比如:我开发过的一个“数采仪”系统,在一个系统中有图形实时显示、网络传输、文件存储等应用时,感觉freeRTOS还是有一点点吃力。但是还能跑的起来。也可能是单片机系统性能的问题或者是内存紧张的原因。所以我建议象这样比较复杂的应用还是上大型的操作系统。对于linux我还在继续努力的路上。
 

回复评论 (3)

顶一个

为江山踏坏了乌骓马,为社稷拉断了宝雕弓。
点赞  2019-10-10 13:17

顶一个

点赞  2019-10-17 17:14

分个段落该有多好啊

点赞  2019-10-25 15:29
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复