嵌入式系统

发布 2022-10-21 05:34:28 阅读 2075

这是我大学毕业的时候写的一个文档,后来修改了,现在跟大家分享下,当时andorid,mego等linux嵌入式操作系统还没如此大规模进入消费电子,也没如此流行过,嵌入式应用开发也没如此方便过,如今像android,只要你会j**a,你就可以开发基于android的嵌入式设备的应用程序,从这个角度来说,这些开发嵌入式设备应用的人已经不再是嵌入式开发了。

1.什么是嵌入式?

记得当初刚接触嵌入式时,别人问我,在搞什么啊?我说搞嵌入式,然后别人说,这个好啊,很热,他接着问,“对了,什么是嵌入式啊”。虽然当时知道自己在搞嵌入式,但是真要回答这个问题,我却尴尬的说不上来,只能说像8051这些单片机的开发就是属于嵌入式的。

现在我就来谈谈我的理解。

我以一个例子来说明。

场景1:甲问乙:“昨天晚上你竟然逃掉了linux系统编程课程,在做什么啊”。

乙答道:“在我那破电脑上安装linux”。

甲说:“安装linux啊,不错啊,用光盘安装的吧,我上次就是这样安装的”。

场景2:甲问乙:“昨天晚上你竟然逃掉了嵌入式实时操作系统课程,在做什么啊”。

乙答道:“在我那mini2440 arm板上移植linux”。

甲说:“移植linux啊,你小子不错啊,什么时候转入嵌入式的”。

场景3:甲问乙:“昨天晚上听说你小子丢下女朋友一个人飞奔回宿舍,做什么这么急啊”。

乙答道:“为了适应潮流,也得了解下ucos,vxworks在我那破电脑上运行**ucos和vxworks”。

甲说:“搞vxworks啊,你小子不错啊,什么时候转入实时嵌入式操作系统了啊”。

我们现在分析下上面三个场景。

场景1和场景2差别在哪;?

场景一是在pc上搞linux,场景二在arm开发板上搞linux。

场景1和场景3差别在哪?

场景一是在pc上搞linux,场景三是在pc上搞ucos。

由上面比较我们可以看出,嵌入式之所以是嵌入式,多数是相比pc而言的,嵌入式之所以成为嵌入式,他由两个部分决定:运行平台,操作系统。

平台:大家都知道,pc机的运行平台是什么啊,大家可能说是intel的p4,奔腾,酷睿双核等,amd的amd3000+等cpu,其实他们在平台上都可以归结于x386平台,只要是x86平台的程序,在x86架构上及兼容x386架构的架构上的cpu都可以运行,我们当初学汇编的时候应该都是学的基于x386的汇编,正因为如此,在pc上写一个程序,可以说基本上学过c的就可以写出来并运行。但是编写基于arm,或**r,dsp,fpga的程序的人就可以说相比而言是少的多的多了,也正因为如此,搞嵌入式的人的需求还是挺多的,也挺热的。

如果有一天大家的通用pc都是arm平台的了,且每个人学会编程的人基本上都会arm编程了,我想那时候arm编程就不叫嵌入式了。其实现在这也是一个趋势,在上网本上,基于arm核的cpu正在抢占市场,而intel的atom也在嵌入式挺进,如果将来真的有很多本本或消费电子是arm芯片了,那资源也会向arm平台转移,自然学的人多了,会的人多了,也就通用了,也就不是嵌入式了。

操作系统;如果你正在用ucos,vxworks,tinyos,uclinux,内行的人都会说你在搞嵌入式啊。其实这些操作系统之所以发展起来,就是因为针对了特定领域,如果你真要让这些和window在桌面平台抗衡,是很难存活的。也正因为平台特殊性,操作系统特殊性,基于他们的开发(嵌入式开发)才特殊,一般针对具体应用场合,故一般有专用性。

当然嵌入式很多场合不具有操作系统,是裸机程序开发,且要涉及硬件电路设计,上面只是说明需要才以具有操作系统的系统举例。

区别。fpga是英文field programmable gate array的缩写,即现场可编程门阵列。

dsp,英文全称为digital signal processing/processor,中文意思是数字信号处理或数字信号处理器。

arm,英文全称advanced risc machines,是英国一家电子公司的名字。

fpga,dsp是统称,而arm只是mcu中的一种。

我们都知道这三种芯片的使用都是编程,fpga用vhdl,verilog,dsp当然用的具体dsp芯片的汇编,当然你可以用高级语言,但是会编译成汇编的,arm当然也是arm的汇编。

从上面可以看出dsp,arm是很接近的,他们都是运行程序的硬件,而fpga就是不是运行程序了,而是将程序转换为电路,烧写后就没有**了,是硬件了。

从上面可以看出各自的应用:

fpga主要用在逻辑时序电路,所以多用于控制,且是硬件实现的控制。

arm大家都知道,可以控制外围设备,也可以运行操作系统,这样他的管理能力就强了,这样就可以运行很大的复杂的系统。

dsp主要用在复杂数据处理,如浮点,连加运算,大家都知道快速傅立叶变换(fft),这个在通信领域可以说是必备品,dsp就是基于这一需求产生的。

fpga和arm都是控制,它们的区别在哪呢?fpga最终是硬件实现,而arm是软件实现,故fpga速度快啊,同时fpga用在asci领域也有。

dsp和arm都是运行**,它们的区别呢?刚才说了dsp就是针对复杂运算尤其像fft这些运算的,它针对这些运算做了特殊设计,故在进行这些运算时,它比arm等mcu速度快的多的多,而如果做一般的操作,它就没有优势了,或者还要差。

soc(system on a chip)中文名是系统级芯片,我们来看这样一个系统:

这个系统就是和主机串口通信系统,我们采用最简单实现:

1.常规方式。

我们找元器件。

mcu:8051

串口芯片:max232cpe,然后我们画电路板,然后发到pcb厂家出板子,最后我们将这些元器件焊接。

实现方式。在cadence中加入8051和max232 ip核,然后也是连线,然后发到中芯等半导体制作厂家出芯片,然后这个芯片就具有r232通信功能的mcu了,当然也可用fpga实现(asic方式)。

其实我们现在看到的很多芯片都是soc,如三星公司的s3c2410,它就是集成arm9核和其他外围设备接口的芯片,omap更绝,集成了dsp,arm9核,及其他外围接口。

从上面我们可以看出,第一种方式叫分离元器件方式,是宏观的,而第二种方式是集成电路方式,是在硅晶片上做,是微观的。

嵌入式ARM嵌入式系统设计

摘要 本系统设计了基于arm系统的嵌入式硬件平台,其中主要介绍了系统母版的具体电路实现,其硬件电路已经通过了信号完整性分析。中国 网 关键词 arm 嵌入式系统 中图分类号 tp368.1 文献标识码 a 文章编号 1007 9416 2012 12 0104 01 1 序言 本系统是设计一款基于a...

嵌入式系统

期末作业考核。满分100分。一 判断题 每题3分,共30分 1.嵌入式系统中的软件系统主要由嵌入式操作系统和应用软件组成,其中嵌入式微处理器属于嵌入式软件系统的核心。答 错。2.运行在智能手机或平板电脑中的android系统是一种嵌入式操作系统。答 对。3.windriver公司所提供的软件开发包是...

嵌入式系统

关于嵌入式系统 献给热爱此道的初学者们前言。网上看到众多网友都问了关于嵌入式系统方面的很多问题,很多都可在这里找到答案,希望我的这篇文章能给他们以启发。也请大家不要轻易 一 嵌入式系统的概念。着重理解 嵌入 的概念。主要从三个方面上来理解。1 从硬件上,将基于cpu的处围器件,整合到cpu芯片内部,...