行业“老兵”职业生涯回顾之五:我的嵌入式系统应用之路
我最初接触微处理器是在上世纪80年代初,那时我刚研究生毕业,被分配到上海科技大学自动化系工作。在80年代初、中期我国的微控制器应用刚刚起步,那时最时兴的是Z80,高校电类专业的教师都在学习Z80,用的开发工具是Z80单板机,组成一个最小系统至少要Z80CPU、Z80PIO和Z80CTC三块电路,编程语言是Z80汇编。事实上,我学的专业是电子工程,对计算机并不太了解,真正开始接触计算机是在做硕士论文时搞了一个计算机辅助设计程序,通过完成论文使自己的计算机编程能力有了很大提高。那时的微机很少,我们在学Z80时大多是将汇编程序手工翻译成机器码,在单板机上手工将机器码输入到存储器中,然后调试运行。就这样掌握了Z80,为以后的科研工作打下了基础。
1989年我参加了学校的“板材柔性制造系统”开发工作,也是当时上海市的重点攻关项目,开发一条由一台数控冲床和数控剪板机为核心的自动流水线。我所在教研室的三位教师负责“剪板机单元控制器”子项目的研制,我负责工控机部分,选用的是基于Z80的STD总线工控机。我们这台控制器要根据上位机的指令控制剪板机和外围的设备控制。剪板机是日本进口的,计算机通讯过去也没有接触过,摆在我们面前的困难很多,时间又非常紧。设计方案定下后,先在校内做模拟实验,其中走了不少弯路,吃了不少苦头。我印象较深刻的是当时缺少开发所需的PC机,我们这个组只有一台长城286机,给另一位负责PLC开发的年轻教师用了,我用的Z80工控机的编程,编译完全是手工进行的,即在纸上写好程序,然后查指令表翻译成机器码,再把机器码用工控机的小键盘一个一个数字输入到存储器中,在运行中查错修改。经过一段时间我已不用查表,直接看着汇编程序在心里翻成机器码输入机器了。现在的年轻人可能不太理解,但当时就是这种条件,很多人就是这样干的。我就是用这种手工方法完成这个重点攻关项目的。除了这些技术活外,包括采购设备,元器件,到现场安装调试,都要我们自己干。尤其是在现场安装时,整个流水线大约60米长,通讯联络的导线和电源线都是走地沟的,这些导线还要安装到几米高的设备上,那段安装的日子每天在车间里“上窜下跳”,搞得一身油泥。一天下来非常累。经过一年多努力,终于完成了项目。在开鉴定会的那天,看到由我们辛勤劳动完成的流水线,薄钢板从立体仓库取出、冲孔、剪切到分类全部自动完成,心中真是感慨万千,感到近2年的辛苦是值得的。看到工件不断的经过我眼前,真是一种享受。这个项目获得了1993年上海市科技进步三等奖。
80年代后期8051单片机已在国内推广普及,其性能远高于Z80;90年代开始,Z80已经淘汰。为了跟上形势,我用了一段时间学习8051,并很快掌握。在以后的工作中主要用的是8031。早期的8051不带ROM,使得系统开发有很多不便,后来出现了8051内部带FLASH ROM的89C51,8051加EPROM模式的系统也很快被淘汰。单片机的发展非常快,我一方面用89C51开发一些小的应用系统,一方面跟踪单片机技术的发展,不断更新自己的知识。感谢互连网,它给我的工作和学习带来了极大便利,能够及时了解单片机发展的最新信息。我在网上了解到周立功公司,最初我是通过使用P89LPC764单片机了解到INTEL公司将8051内核公开,使得多家著名的半导体公司在8051的基础上开发出增加了很多功能的新品种。其中PHILIPS公司就开发出以8051为内核的P8051系列、700系列、900系列等多种新品种,为开发产品提供了多种选择。随着单片机性能的提高,原来的汇编语言已不能适应需要了,我又改用C51编写51系列单片机的应用程序。
现场总线技术是单片机应用的一个重要方面。进入新世纪初,我选择了CAN总线作为学习对象,用PHILIPS公司的SJA1000、MICROCHIP公司的MCP2510作为CAN控制器构建了实验网络,获得成功,初步掌握了CAN总线技术。近年来ARM单片机发展迅速,已经得到了普及。不掌握ARM单片机就很难立足于嵌入式系统应用领域。因此我在周立功公司2003年刚推出ARM2104实验板时就买了一套回来学习,同时还在学习实时操作系统。单片机在我国短短20年的应用,已从最初的Z80多片机系统到单片机系统,进而发展到现在的在片系统;从8位机、16位机到现在的32位机,发展速度之快在当初是难以想象的。作为一名单片机应用工程师所面临的挑战是非常严峻的,逆水行舟不进则退,必须不断学习,跟上技术发展的形势。
我是一名大学教师,长期担任电子技术的教学工作,同时也教过单片机,了解现在学生的情况,很多同学到了做毕业设计阶段还什么也不会做。我想电类专业的学生从二年级开始就可以搞些小的开发项目,锻炼自己的动手能力。如果教师能给学生做些指导,引导想学单片机的学生入门,对他们是很有好处的。这方面我也曾尝试过,同时我还经常在周立功网、中国电子网等的网站论坛上发一些针对大学生的短文,希望能够帮助想学单片机的大学生入门。
如今我已经退休了,还在一家小公司发挥余热,一周上班3天,解决一些技术问题,有新的项目也帮助公司开发新产品。日子过得非常充实。
回顾几十年的工作经历,我庆幸自己选择了一个适合自己的兴趣和个性的专业,也庆幸自己跟上了时代的发展,掌握了微控制器的开发应用技术。搞技术工作有苦也有乐,学习是艰苦的过程,作为一个电子工程师要做好辛苦一辈子的思想准备,不学习新的知识很快就要被淘汰。而每当搞出一个项目、一个新产品,那种享受只有亲身经历的人才有体会。
作者:王家鼎
上海任丰磁电仪器研究所工程师