资源描述:
《2440嵌入式软件_硬件常识》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、嵌入式软件开发人员,硬件常识底层的驱动或内核开发人员通常要跟硬件紧密的配合,协同完成工作.硬件电路的设计很大程度上决定驱动代码的代码的编写.一个熟练的底层开发人员具备硬件开发知识本节内容.l硬件开发流程l硬件识图l软件控制硬件方法l嵌入式C语言硬件开发知识l大致清楚硬件的设计和生产流程.l清楚自已工作中常用的硬件器件的工作原理.l要有看懂硬件原理图的能力.主要涉及影响到编程的关键的连线和管脚的一定要看懂.l要看懂硬件(主要是能编程控制的集成电路,简称IC)的编程资料,一般是称为DataSheet的
2、PDF文档.主要各个寄存器的设置,和常见任务的处理流程软件相关能力l要知道如何用编程语言(主要是C,和少量的汇编)去控制硬件.l还要熟悉底层软件与操作系统的接口.n象同一款硬件,原始的控制代码是基本上一样的,但是各个操作系统对驱动与OS的接口,完全不一样.Windows系列的驱动接口远比Linux复杂得多.各个操作系统也提供了不同底层函数接口用于开发,这些都需要熟练掌握的.l具有调试底层软件的能力,除了常用的软件调试手段,(如单步DEBUG,查看输出信息...)有时可能需要动用软件,和硬件检测设备
3、来调试n如网络调试,可能需要抓包软件,基于硬件的流量测试仪n基于硬件的电路的仪器,如万用电表,显波器和逻辑分析仪n基于无线的设备,可能需要无线信号发生器或基站模拟设备在底层软件开发领域,还有一些非标准CPU的分支开发领域,由于采用接近于CPU的复杂结构,因此必须用的编程语言去开发,但又不是普通的gcc那样的开发环境.而是自己独立的开发环境.很多嵌入式工程师需要常握其中一种工具l常用数据处理,如音频,加密,视频影像处理的DSP,都会有自已独立的开发环境,有的是接近汇编级的语法代码,更高级是类似于C的
4、编程语言.常见的DSP开发环境有TI的CCP.l在网络流量很大的地方,如核心路由器,大型的防火墙,网关,等,这一些设备有时用软件已经无法处理.往往采用基于网络处理器的的方案,网络处理器会在硬件直接处理网络包,这些网络处理器也有独立的开发环境用于开发.如Intel的IXP系列.lFPGA,CPLD(VHDL)用类似于Basic或C语言的开发语言去设计硬件,如MaxPlusIIllabView虚拟仪器.硬件产品设计流程与软件不同,一个硬件产品的从最基本的器件到最终产品的出产,是一个全球化高度合作的结果
5、.牵涉一个完整的产业链的方方面面.因此必须需要高度工程化的管理和生产技术.否则不可能生产出合格产品.以一台手机生产而言.它的技术标准和研发可能是在欧美的大公司或大学的研究机制进行.如Nokia和爱立信,高通等来进行研发的.当技术成熟后,可能在美国的IC设计公司(如TI)设计出可以满足实际产品的集成电路,这个集成电路的生产,出厂测试等流程可能是在台湾新竹的台积电,联电的IC生产工厂代工.单独的IC并不能形成产品,必须要焊接在电路板上,和其它电件组成完整的电路.这是一个风险很高的设计过程.以前要由最终
6、的产商完成这样的工作,这样会花费很长的时间和资金,并且有可能失败.现在流行的趋势是由专业的设计公司负责完成硬件电路和底层软件的设计,甚至是应用程序的开发,这大大降低了生产厂家的门槛.象手机设计里最有名的是MTK(联发科技),它提供底层的IC到硬件电路方案,+软件方案的全套设计.这样很多小厂也能直接生产手机.号称是黑手机之父,这几年的大量的手机上市,它功不可没.也造就它成为台湾股市的股王.在低端MP3,MP4领域里,采用相同策略是位于珠海的炬力,它也推出MP3和MP4播放器从IC到硬件设计方案,软件
7、的全套设计方案.造成现在MP3,MP4市场大规模爆发.如果是从元器件开始设计一个电子产品.第一阶段是硬件工程师要根据参考方案和文档,设计出一个硬件原理图来.主要用来验证电路产否能正常正确,确定硬件的连线等工作.类似于产品硬件设计模型.这一项工作一般是由一个公司最有经验的工程师来完成.原理图都是一个逻辑表示,比如元器件用示意图表示,连线也不会跟最终产品的走线一模一样.IC是高度集成的精密器件,不可能象电气设备一样,直接拉线就行.通常会在一个缚有一层导电金属层的绝缘板用化学方法”刻”一根一根的导线.然
8、后再焊接上去.这种板就称为PCB(PrinterCircuitBoard).这种方法有很多优点,节约空间,防止干扰,焊接点小,并且牢固.集成度高,因此现代的电子元件互联完全采用PCB板来制作.因此硬件设计第二阶段就要是把原理图设计成供生产的PCB图.类似于建筑施工图,里面的设计布局将会跟实际产品开发一规一模.PCB也是取决于设计经险,但很多是重复劳动,在很多小的公司往往采用外包的方式让专业的PCB公司来代为设计,深圳就有大量公司或工作室来代人完成PCB设计.原理图设计,和PCB设计