当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]行业“老兵”职业生涯回顾之一:在战争中学习战争(转)

从1951年开始,我先后在空军部队担任雷达操纵员、雷达教员、雷达科长。那个时候,电子行业正处于电子管时代,当时中国还没有能力制造自己的电子管,包括雷达在内的很多产品都是舶来品。1965年,我从空军导弹学院制导雷达专业本科毕业,随后在1978年进入空五所,先后任工程师、高工。1995年我到了退休年纪,先后在专注于中央空调、医疗仪器、现场总线和GPS汽车定位系统设计的公司做软硬件的开发工作。

接触IT行业是从1990年开始的,那时利用计算机做工控主要以PC机为主,单片机为辅,在PC机的扩展槽上插工控板进行数据采集和各种控制。我的入门之作,就是这样的一块数据采集板。那时的机器语言基本使用汇编,我用的是8086汇编。在90年代中期左右,C语言流行起来,逐渐代替了汇编。

 

回顾近十多年来,在计算机工控行业,变化最大的当属单片机了。以前,PC机较单片机控制更为方便,而且显示打印也都容易实现;而现在,单片机已成为计算机工控的主流。80年代出现的名为单板机的电子板,就是单片机的前身,最早的单片机只有4位机,但很快就被8位机所代替。单片机的巨大变化可以从以下几个方面看到:

1) 集成度越来越高。早期的单片机其实不能称之为‘机’,因为它不过是一个CPU单芯片,需要靠众多的外围芯片共同组成一个智能系统。而目前的单片机,不仅CPU功能更强、更快,还集成了原属于外围的大量电路,利用几十上百K的Flash代替片外ROM,几十上百K的RAM代替片外存储器,用RTC代替片外实时钟,有多位的AD/DA变换器,有UART、SPI、IIC、Can等多种通信接口。以前的开发工程师需要花费大量时间挑选众多的外围芯片,并将它们有机组合,制成复杂的PCB图。那时,甚至还有不少专门的硬件工程师。而如今,行业内很少有这种分工了,现在的工程师们将主要精力放在了软件编写上。

 
2) 速度越来越快。早期的单片机系统晶振频率不高,执行一条指令要多个时钟周期,而目前不少单片机,其系统时钟可以由锁相环控制,可以高出晶振频率的许多倍,一条指令只用一个时钟周期即可完成。

3) 编译环境越来越友好,编程语言也由汇编的一统天下,改由众多的C语言代替。后来又出现了uCOS等操作系统,使编译更加方便,如今有的单片机也有了像高级语言才有的多线程、多任务了,任务之间还有通信功能和消息传递机制。

4) 编程越来越方便快捷。早期的单片机存储代码,需要专用的编程器写入,紫外线擦除,费时费力。进入新世纪后,不少种类的单片机,采用在线编程,不仅快捷,而且对老用户的设备在线升级也很方便。

5) 衡量计算机的水平,有时用处理二进制的位数来表示,位数多表示速度快和处理能力强。单片机从最初的4位,很快升到8位。此后稳定了较长时间,之间也有过16位机但不普及。近年来16位和32位已屡见不鲜了。

6) 体积越来越小。不仅单片机,各种电气器件,也由分立变为贴片,插脚也由直插改为扁平,这些变化不仅生产方便,缩小体积,也使分布参数降低,有利于克服各种寄生干扰。

7) 不同功能的单片机模块应运而生。近年来,大批内置专用功能的单片机出现在市场上,如Philips的116x系列,它装有USB1.1或2.0USB协议的内核,用户只要对其端口发送简单指令,即可启动与USB对口的USB数据传输。再如内部装有手机内核的通信模块,我曾经用过的M260和UB603,它们内置TCP/IP网络协议,用户只要对它的UART端口发送简单指令和IP地址,就可以和异地的服务器进行TCP/IP连接,并进行GPRS数据传递,有的还支持域名连接。从而极大缩短了产品开发周期。

8) 各种内藏专用功能的单片机大量涌现。如Cypress的CY系列,属于内藏USB功能的单片机。还有如iTrax的iSuite系列、uNav的GM10系列,属于内藏GPS功能的单片机。这些单片机的内核、存储器、IO口等资源都对用户开放,以便用户二次开发,而且调用内藏功能也很方便,这不仅缩短了开发周期,也使产品的体积和可靠性进一步提高。

十多年间,计算机和互联网的出现极大改变了人类的生活和工作习惯。与此同时,中国电子工程师的整体素质也发生了很大进步,特别是对PC机的使用、互联网的操作以及软件开发水平。随着VB、VC、.NET等软件的普及,上位机控制、界面制作都有了飞跃式的提高。

在这么多年的设计生涯中,我认为开发主要在于创新。举个例子,医疗仪器公司生产的血流变仪,是测量人体血液黏度的仪器。在一个放入血液的容器中有个圆盘,由直流电机带动旋转。电压高转速快,血液黏度高阻力大转速慢,由此推出黏度和电压的关系,血液黏度在不同的转速呈现的阻力不同,医学上叫切变率。原来测量过程是给出不同的电压梯度,在不同的速度下逐次测量。测量全程需几分钟。医院提出时间太长。如果工艺不改,提高速度是很难的,因为每个梯度都要在速度稳定下来测量,才能保证精度,由于电机的惯性作用,测量的周期已经达到极限。经过实验,我们提出一个叫做储能释放的工艺模式,首先将电机加速到一个速度上限,然后断电,电机靠惯性旋转历经各个速度梯度,最后停止。这样做既满足了切变率的各段要求,时间也作到了最短,测量一次仅需40-50秒。该工艺模式成功的关键是找出描绘全程的数学模型,相信有电工基础的朋友,不难猜出这个模型。

当然项目过程中困难也很常见,2007年,我们在做一个用单片机通过USB接口读取摄像头图像的项目,该摄像头专为PC机生产,厂商可以提供PC机读取图像的驱动程序,可以对摄像头的100多个寄存器进行初始化并进行一系列参数设置。但该驱动程序无法用在单片机上,如果想自己动手编制单片机的驱动,就必须了解这100多个寄存器的功能和说明,但厂家拒绝免费提供这些资料,声称要付费5万美金。最后,我们终于通过自己的努力解决了这个难题。整个过程比较复杂,这里不再赘述,感兴趣的朋友可以与我私下进行交流。

有些人曾问过我工程师应通过什么途径和手段来进一步提高设计能力水平,我认为,应该“在战争中学习战争”。我的编程水平的提高,主要来源于厂家提供的DEMO源程序。此外,作为一名电子工程师者,除了专业方面的技能外,要想取得成就,敬业精神也非常重要。

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

随着信息技术的迅猛发展和大数据时代的到来,机器学习成为了人工智能领域中的核心技术之一。机器学习是通过模拟人类学习行为,使计算机系统能够从数据中自动发现规律、提取特征并进行预测和决策的过程。它在诸多领域取得了广泛的应用,包...

关键字: 计算机 人工智能 机器学习

随着大数据时代的到来,数据处理成为了一项至关重要的任务。传统的数据处理方法往往面临着效率低下、准确性不高等问题,而机器学习技术的兴起为数据处理带来了全新的解决方案。本文将深入探讨机器学习在数据处理中的应用,并分析其优势和...

关键字: 数据处理 计算机 机器学习

机器学习是人工智能领域的一个重要分支,它使用各种算法来使计算机系统能够从数据中学习和改进,而无需进行明确的编程。在机器学习的广阔领域中,有多种算法被广泛应用,每种算法都有其独特的适用场景和优势。本文将详细介绍机器学习中的...

关键字: 机器学习 人工智能 计算机

随着信息技术的飞速发展,机器学习(Machine Learning)作为人工智能领域的重要分支,正在逐步改变我们生活的方方面面。那么,什么叫做机器学习呢?简单来说,机器学习是一门研究如何让计算机从数据中自动获取知识和技能...

关键字: 机器学习 人工智能 计算机

随着信息技术的飞速发展,数据已经成为现代社会的重要资源。数据挖掘和机器学习作为处理和分析数据的两大关键技术,在多个领域得到了广泛应用。尽管它们在某些方面存在重叠,但数据挖掘和机器学习在定义、目标、方法以及应用场景等方面存...

关键字: 数据挖掘 机器学习 计算机

计算机的历史可以追溯到公元前的古代算盘和查尔斯·巴贝奇的“分析机”构想。然而,现代意义上的计算机起源于二战时期对复杂军事计算需求的响应。1941年,美国宾夕法尼亚大学开发出了ENIAC(Electronic Numeri...

关键字: 计算机 云服务

自二十世纪以来,计算机技术经历了从机械计算装置到如今高度智能化、微型化的巨大飞跃,成为人类科技进步的重要推动力。电脑的发展史是一段充满创新与突破的历史,以下将按照时间顺序概述这一发展历程。

关键字: 电脑 计算机

计算机网络是当今信息化社会中不可或缺的基础设施,它将世界各地的计算机系统及其附属设备紧密联系在一起,实现了信息的高速传输与共享资源的有效利用。计算机网络的定义可以归纳为:计算机网络是一系列分布在不同地理位置、具备独立功能...

关键字: 计算机 信息交互

随着科技的不断进步,人工智能(AI)已成为当今世界的热门话题。它以其强大的计算能力和深度学习能力,在多个领域展现出巨大的应用潜力。本文将对人工智能技术进行详细的探究,包括其定义、发展历程、主要技术、应用领域以及面临的挑战...

关键字: 人工智能 深度学习 计算机

4月1日消息,戴尔在中国的PC销量持续下滑(份额已被华为超越),这迫使他们不得不采取更多的裁员措施。

关键字: 戴尔 PC 计算机
关闭
关闭