当前位置:首页 > 电源 > 数字电源
[导读]2001年我大学毕业后去了中科院半导体所工作,第一次真正接触了MCU51下的C语言开发,项目组要求项目中的功能尽可能封装成一个个的功能子函数,便于维护,所以一个项目就是由

2001年我大学毕业后去了中科院半导体所工作,第一次真正接触了MCU51下的C语言开发,项目组要求项目中的功能尽可能封装成一个个的功能子函数,便于维护,所以一个项目就是由各个功能子函数组成的。但我因为在所里时间较短,没有真正参与其中,只是接触了这个概念,觉得这个非常好,也在自己心中暗暗的下了一个决心,今后要建立自己的函数库,以方便项目开发。

2002年我来到深圳做手机软件开发,采用英飞凌手机解决方案,有一套标准的软件架构平台,RTOS采用Nucleus,GUI等其它部分都是英飞凌自己完成的,当时国内山寨手机行业还没有开始,所以这套手机解决方案还不是很完整,功能比较少,但就是因为不完整,功能少,很多还需要我们自己开发,所以让我有了更深入的了解整个软件架构的机会。

 

我负责的是手机驱动部分,所以可以比较清晰的了解整个手机的软件架构,代码是如何组织的,加上原本就是做硬件的,所以相对较快的完成了工作,在手机公司呆了半年之后就有比较多的空余时间,想着把MCU51熟悉一下,把基础打好,便于开发一些小项目,于是采购了一套周立功公司推出的MCU51开发板:DP-51开发板。

按DP-51开发板提供的例子如GPIO、串口、按键等走了一遍,基本上熟悉了MCU51芯片的特性,对MCU51的编程就不再神秘,但是这种一个个例子,一个个功能子函数的方式,已经瞧不上了,毕竟之前是做手机方案的,于是就想着如何借用手机的平台架构思想,把这些功能函数都整合起来,形成一套基于MCU51下的软件开发平台。

手机驱动开发中,经常用到RTOS提供的系统节拍,5ms一次,用来处理一些例行程序,觉得很好,于是把这个功能引入到软件平台中,把MCU51的定时器2作为系统时钟来处理。手机软件中还有一个非常好的东西就是软件定时器,因为硬件定时器只有非常有限的几个,比如MCU51一般只有三个硬件定时器,一个用于系统时钟,一个用于串口通讯,只有一个了,若需要处理超时、动画、闹钟等,根本不够用,所以需要用软件扩展出很多个软件定时器,一般基于系统节拍来扩展,所以把这个软件定时器功能引入平台。虽然手机中有Nucleus这个RTOS,但是被封装了看不到,所以那个时候对RTOS的特性并不了解,实际手机开发中也感受不到它的存在。而RTOS中常见的消息机制也不是从手机平台中认识的,而是源自大学时期的VB编程,觉得事件触发这种方式非常好,点一个按键,点一下鼠标,产生一个事件,于是把VB中的事件处理方式,也就是消息机制引入平台中。

消息机制、系统节拍、软件定时器,再加标准的前后台,构成了一个基于MCU51下的软件开发平台:实用单片机系统(McuSystem,缩写为MS)。第一版2003年放到网上共享。从今天角度来看,这个简陋的不能再简陋的,命名规范一塌糊涂的软件平台,竟然被不少MCU51初学者所喜欢,经常发邮件询问一些问题。这个事情让我明白,自己的水平虽然不怎么样,但接触的东西相对高端,还有太多的不如我水平的人,他们很需要指点入门。于是在经历几个项目进一步完善软件功能之后,对MS1做了精简、优化,去掉了指针等相对难一些的东西,专门针对初学者,让他们非常容易看懂,这就是MS2。在MS2的基础上丰富了功能,引入了指针,针对中级用户的,变成MS3,应该说MS3的客户群体最多,深受网友喜欢。

2011年,我设计了一款6KW高频感应加热设备(简称高频机),高频机是一款典型的中低端嵌入式项目需求,实时性要求高,工作要求稳定可靠,128*64黑白LCD屏显示界面,高速中断响应,高低速例行节拍处理,业务需求处理,如下图:

 

 

硬件上考虑到MCU51速度已经不够用了,所以升级为Cortex M3。软件上因为存在高低速处理需求,一开始想着引入uC/OS-II实现多任务处理,但那个时候对于RTOS了解不多,又没有用过,细节点太多,一个处理不好,可能会引起高频机炸机,所以心里没有把握,最后在同事的建议下放弃而选择了自己擅长的MS3,只是把MS3移植Cortex-M3中,增加了一些菜单界面编程的功能及多级速度系统节拍功能。

项目开发过程中开始感觉到MS3架构的设计已经无法满足这类功能相对较多,菜单界面相对复杂的需求,尤其是用传统的状态机或者是函数指针来实现的菜单界面编程已经超出了这个框架的能力范围,修改或者扩展功能相当复杂,有时候连自己都会搞晕,编程相当痛苦。虽然如此,这个项目还是一步步的完成,产品也稳定批量生产了。

项目转变为产品之后,需要找一个人来接手,解放自己去开发新的东西,这个时候却发现接手人虽然反复看了多遍,自己也跟他讲解了多遍,但当客户有需求需要微调整菜单界面的时候,他往往无从下手或者经常犯错误,传承性非常差。

在高频机市场化获得成功之后,客户对我们的研发信心非常之高,要求围绕客户的机械自动化设备开发周边的电子设备以降低成本,主要有电源类设备如高频机、火花机,传感器类设备如红外温度传感器、激光测距仪、接近开关,驱动类设备如步进电机、伺服电机等,控制类设备如PLC。面对这么多种类的不同需求,需要很多人协同开发,若还是按MS3架构设计,则已经无法满足客户需求,那么新的软件架构平台,该如何设计?

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭