单片机(和嵌入式系统)概述

第一章单片机(和嵌入式系统)概述

1.1 单片机(和嵌入式系统)的发展

1.1.1 计算机发展的三个浪潮

1第一个浪潮(1946~1975), 大型机硬件导向:计算机只能由专家操作,把处理后的信息交用户使用,信息处理与使用分离。─集中处理时代2第二个浪潮(1976~1993)台式计算机导向:PC机普及,信息由处理者个人享有不能互发信息,难以共享。信息处理与使用者结合。─分散处理时代3第三个浪潮(1994~?),网络导向:计算机通过网络互连进行全球通信,引入网络就是计算机的新概念。软件可以象数据一样驻留在网络上,软件程序可以实时执行,用户可随时到达存放所需程序的地址,而不受计算机类型和操作系统的限制。信息收集、处理、分析和存储都商业化。─网络处理时代

1.1.2 计算机发展简史

第一代到第四代计算机都是以电子器件的发展更新来划分的,而第五代以后的计算机则是以设计思想的更新来划分。

1第一代电子管计算机(1946~1958)

(1)硬件

逻辑器件:电子管和继电器

内存:汞延迟线,静电存储管,53年出现磁芯(统治20年)

外存:磁带机、穿孔纸带机和卡片机,56年IBM生产磁盘机(2)软件:54年以前几乎没有软件,主要用机器语言--二进制代码指令

后期发展了汇编语言

(3)性能

运算速度:几千次到几万次

平均稳定运行时间:几小时

(4)特点

体积大、功耗大、价格大,速度慢、容量小、可靠性差(5)典型机器

1942年美籍保加利亚人,爱荷华州立学院数学系文森特.阿培纳索夫(Vincent Atanasoff)与其助手克里夫德.贝利(Clifford Berry)研制成功世界上第一台数字电子计算机ABC。采用300个电子管,用电容器做存储器,穿孔卡片作为辅助存储器,运算速度为1次/s。用于解线性代数方程。1973年美国法院把发明权归属于阿培纳索夫。

由美国宾夕法尼亚大学的工程师埃克特(J.Presper Eckert)和物理学家毛希利(John.W.Mauchly)于1945年12月研制成功,于1946年2月正式公开表演数字式电子计算机ENIAC(Electronic Numerical Integrator And Computer)。1947年运到马里兰州陆军阿伯丁试炮场的弹道研究实验室正式使用。

用了18800只电子管、12bit字长、内存17kB,300次乘法/s, 5000次加法/s,占地165 m2,重量30T,耗电150kW。

1953年4月IBM-701

1954年11月IBM-650

1958年103(DJS-1)

104(DJS-2)

2第二代晶体管计算机(1958~1964)

(1)硬件

逻辑器件:晶体管

内存:磁芯

外存:磁盘和磁带机

(2)软件

汇编语言、高级语言FORTRAN、COBOL(59年开发,61年完成)、ALGOL (1960年)的编译系统,管理/监控程序

(3)性能

运算速度:几万到几十万次/秒

平均稳定运行时间:数十小时

(4)典型机器

1959年11月IBM7090

1962年9月IBM7094

441B

108-乙(DJS-6)

109

X-2

3第三代集成电路计算机(1964~1971)

(1)硬件

逻辑器件:中小规模集成电路

内存:磁芯存储器和磁膜存储器

69年IBM360/85部分采用半导体存储器

70年IBM370/145全部采用半导体存储器外存:磁盘(机)

(2)软件

65年出现高级语言BASIC,60年代末发明高级语言PASCAL(67年开发,71年完成),并出现多道、分时操作系统和网络系统软件

(3)性能

运算速度:几十万到几百万次/秒

平均稳定运行时间:几百小时

(4)典型机器

1964年IBM360DJS-200

1971年IBM370709(TQ-16)

NOVA(DJS-100)

PDP-11(DJS-180)

1974DJS-130

4第四代大规模集成电路计算机(1971~?)

(1)硬件

逻辑器件:大规模集成电路

内存:大规模集成电路

外存:磁盘、光盘

(2)软件

高级语言FORTH(70年)、C(72年)、Ada(79年)、LOGO

人工智能语言LISP、Prolog

操作系统、数据库管理系统、Windows

(3)性能

运算速度:几千万到几亿次/秒

(4)典型机器

1981年Cyber-205、Cray-1、YH-1(1亿次/秒)

ILLIAC-IV(美宇航局阿姆斯中心):64个处理机, 1.5亿~2亿次/秒

PEPE(美弹道导弹防御局):256个处理机, 10亿次/秒

70年代计算机技术开始加速,80年代2~3年就一个档次飞跃,90年代一年一个样,机器的生命周期仅1~1.5年。

Intel 8086/8088 IBM PC/RT

80286 IBM PC/AT

80386

80486

Pentium CPU 含310万个晶体管,速度可达1.12亿次/秒

Pentium Pro CPU 含520万+1550万个晶体管

Motorola 68000→68010→68020→68030→68040 Apple Macintosh

5第五代人工智能计算机

这是面向知识处理的新型计算机,其目标是能通过推理做出判断,能听懂自然语言,能识别印刷体和手写体字,能对语言的意义加以理解,能说自然语言,甚至可能在思考问题方面超过人类的个体。但是由于种种原因,日本实施的第五代计算机计划未能成功。

6第六代神经网络计算机

这是一种仿真人大脑结构的新型计算机。目标是可以对图形、图像直接处理,对非逻辑的复杂问题具有推断和知觉判断的能力,甚至还具有总结经验教训、归纳推理的能力。

95年11月中科院半导体所研制成功数字和模拟混合电路的神经网络计算机“预言神一号”,2000万亿次/秒,可用于图像、文字和语音识别。

1.1.3 微处理器与微型计算机发展简况

1. ×86系列

⑴Intel

71 72 74 78 79 82 85 89 4040→8008→8080→8085→8086→8088→80186→80286→80386→80486

4bit 8bit 16bit准16bit 32bit

93.3 96 97 97 99.2 2000.11 Pentium→Pentium Pro→MMX Pentium→Pentium Ⅱ→Pentium Ⅲ→Pentium 4

→Merced(Intel+HP)

64bit

⑵AMD

K5→K6→K6-2→k6-3→K7(Athlon)→

2.其他系列

⑴Motorola 6800→68000→68010→68020→68030→68040

(Apple Macintosh)

→6502 (Apple机)

⑵Zilog Z80→Z8000→Z80000

⑶IBM+Apple+Motorola: Power PC 601→602→603e→604→620

3. 高端处理器:用于工作站、服务器

⑴DEC(Compaq): Alpha 21064→21164→21264→21364→21464(5万亿次)

⑵Sun: SPARC→Ultra SPARC 可扩展性(1000多个μp)

(集成度达1600万T)

⑶MIPS:R4400→R8000→R10000 (用于SGI 图形工作站)

⑷ARM: ARM7系列低功耗

ARM9系列

ARM9E系列

ARMl0系列

SecurCore SCl00

Strong ARM

XScale

ARMl1系列

微处理器发展的另一个方向是小型化、面向控制,发展成微控制器

1.1.4 单片机(微控制器)的发展概况

71年Intel:4040 μp

74年Fairchild:准单片机F8(需加一片3851-1k ROM+CTC+PIO×2)

75年TI:4位单片机TMS-1000

76年Intel:MCS-48系列-8048(ROM),8748(EPROM),8035(无ROM) 78年Motorola:M6801

78年Zilog:Z8系列,Super 8

80年Intel:8位MCS-51系列-8051(ROM),8751(EPROM),8031(无ROM)

82年Intel:16位MCS-96系列8096

88年准16位8098 于98年停产

90年Motorola:68HC05→68HC11→68HC12→68HC16→683××

90年代后,微控制器的发展百花齐放、五彩缤纷,老公司不断推陈出新,新的公司鼎故革新,推出了很多各具个性的微控制器。

1.Intel:

71 72 74 76 80 82 85 88

4040→8008→8080→8085→8048→8051→8096→80196→8098

→Philips 80C51(I2C)

→Atmel AT89C51(Flash)

→AVR AT90S××××(高速)

→AVR AT91系列(ARM Core)

→Cygnal C8051F(高速,SoC)

2. TI:MSP430系列(低功耗)

3. SCENIX:SX系列(极高速)

4. Microchip: PIC系列(高性能价格比)

1.1.5 嵌入式系统的发展

1. 低中端嵌入式系统应用

面向控制的应用都采用微控制器(单片机)实现,过去都是采用汇编语言

编程,用仿真器调试。没有开发平台,只能通过软硬兼施,从设计硬件电路原理图开始,印制板设计、加工、安装、焊接、编程、调试、测试都要熟悉。既难又繁,容易出错,需要慢慢积累经验才能得心应手。

采用C-51高级语言编程,利用C编译器编译成机器码再下载执行,大大提高了开发效率.

2. 中高端嵌入式系统应用

面向数字信号处理、通信、网络应用等复杂的应用,由于涉及到TCP/IP

等协议和用户图形界面(GUI)的复杂性,一般都需要借助于嵌入式操作系统EOS平台,采用高级语言C/C++/Java进行开发。

1.2 嵌入式系统的技术特征

1. 专用计算机系统(非PC机形态):看不到计算机的计算机应用系统

⑴以应用为中心,量体裁衣定制。

⑵以计算机技术为基础,硬件与软件紧密结合。

⑶适应应用系统对功能、可靠性、成本、体积、功耗严格要求。

2. 知识集成系统

⑴技术密集、资金密集。

⑵高度分散、不可垄断。

⑶面向应用、不断创新。

1.3 嵌入式系统应用

嵌入式系统技术具有非常广阔的应用前景,其应用领域可以包括:

1.工业控制

基于嵌入式芯片的工业自动化设备具有很大的发展空间,目前已经有大量的8、16、32 位嵌入式微控制器应用在工业过程控制、数控机床、电力系统、电网安全、电网设备监测、石油化工系统等领域。就传统的工业控制产品而言,低端型往往采用的是8 位单片机,但是随着技术的发展,32 位、64 位的微处理器逐渐成为工业控制设备的核心,在未来几年内必将获得更大的发展。

2.交通管理控制

在车辆导航、流量控制、信息监测与汽车服务方面,嵌入式系统技术已经获得了广泛的应用,内嵌GPS 模块、GSM 模块的移动定位终端已经在各种运输行业获得了成功的使用。目前GPS 设备已经从尖端产品进入了普通百姓的家庭,只需要几千元,就可以随时随地找到你的位置。图1-11 即是GPS 手持机。

图1-1 GPS 手持机

3.信息家电

这将成为嵌入式系统最大的应用领域,冰箱、空调等的网络化、智能化将引领人们的生活步入一个崭新的空间。即使不在家里,也可以通过电话线、网络进行远程控制。在这些设备中,嵌入式系统将大有用武之地。图1-2 是信息家电的一种——家庭网络视频电话。

图1-2 信息家电:家庭网络视频电话

4.家庭智能管理系统

水、电、煤气表的远程自动抄表,安全防火、防盗系统,其中嵌入的专用控制芯片将代替传统的人工检查,并实现更高、更准确和更安全的性能。目前在服

务领域中,一些手持设备已经体现出了嵌入式系统的优势。

5.POS 网络

公共交通无接触智能卡(CSC-Contactless Smart Card)发行系统、公共电话卡发行系统、自动售货机(如图1-3 所示)、各种智能ATM 终端将全面走入人们的生活,到时手持一卡就可以行遍天下。

图1-3 智能售货机

6.环境监测

环境监测包括水文资料实时监测、防洪体系及水土质量监测、堤坝安全、地震监测网、实时气象信息网、水源和空气污染监测。在很多环境恶劣、地况复杂的地区,嵌入式系统将实现无人监测。

7.机器人

嵌入式芯片的发展将使机器人在微型化、高智能方面优势更加明显,同时会大幅度降低机器人的价格,使其在工业领域和服务领域获得更广泛的应用。

除了以上这些应用领域,嵌入式系统还有其他方面的应用。可以毫不夸张地说,嵌入式系统已经进入到现代社会人们生活的方方面面,可是说是“无处不在”,尤其是在控制方面的应用。就远程家电控制而言,除了开发出支持TCP/IP 的嵌入式系统之外,家电产品控制协议也需要制订和统一,这需要家电生产厂家来做。同样的道理,所有基于网络的远程控制器件都需要与嵌入式系统之间实现接口,然后再由嵌入式系统来控制并通过网络实现控制。所以,开发和探讨嵌入式系统有着十分重要的意义。

单片机与嵌入式系统作业

杭州电子科技大学通信工程学院 单片机与嵌入式系统作业 项目名称:基于MSP430G2553的智能WIFI遥控电源插座设计班级:13083415 姓名:徐炜学号:13071135 姓名:王畅学号:13071206 姓名:毛媛苑学号:13085103

一、研究背景、现状及研究目的、意义 由于经济的发展促使人们追求更高的生活品质,而且科技的进步技术成熟也使软硬件的性价比达到了合理的水平。所以新兴的智能住宅采用一系列高新技术, 实现服务、信息和系统资源的高度共享, 为住户提供一种更加安全、舒适、方便的智能化、信息化生活空间[1]。虽然目前大部分家电具有近距离遥控功能,这些遥控器均采用红外线传输技术。红外传输技术是一种视距传输技术,遥控器与家电接收端之间不允许有障碍物阻隔,且红外传输仅能实现点对点通信任务,其一般通信距离在3m以内。因此,红外传输技术不适合应用于智能家居领域。针对目前住宅中很多的电器设备都不具有远程遥控功能,这样给智能家居要求的电器远程控制要求带来了很大的障碍[2]。为了对这些普通的电器设备实现远程遥控的功能, 理论上讲, 有两种解决方案:一种方案是对电器进行改装, 装入遥控电路接口, 使其具有被遥控的功能。另外一种方案是对电器设备不进行改装, 只是在其外部挂一个可实现远程无线遥控的电器插座。显然, 第二种方案更加方便实用[1-2]。 在2009年,物联网的发展在国内社会中受到了高度重视,借助物联网的发展,智能家居产业存在着巨大的发展潜力。在2014年3月的上海家博会上,智能家居成为了本届展会的关键词之一。国内外各大厂商集体在智能家居战略上发力。如海尔推出了最新的U+智慧家居系统。三星展示了一款可以借助WIFI网络控制的新型洗衣机[2]。智能家居结合云计算预示着其未来的发展方向,也引发人们对智能家居的广泛关注[2]。 本项目在对智能家居中可实现远程遥控的智能电器插座进行调研的基础上,运用单片机与无线局域网技术,根据实际需求设计了通过智能手机WIFI进行远程无线遥控的智能电源插座,实现对电器设备的远程控制与监测。 WIFI是Wireless Fidelity的缩写,即无线高保真传输协议[3]。WIFI基于IEEE 802.11协议,它是一种将个人电脑、手持设备(如PDA、智能手机)等终端以无线方式互相连接的技术[4]。WIFI的最大优点是传输速度高,同时与现存网络设备具有良好的兼容性。随着第五代WIFI协议版本802.11ac的推出,WIFI的传输速率将超过1Gbps,其覆盖范围也将进一步扩大。因此,在现有的条件下,选择WIFI作为智能电源插座通信模块是最好的选择,一方面现有的移动终端设备上几乎全部集成了WIFI接口,可以方便地将移动设备作为智能电源插座的控制器。另一方面WIFI传输速率快,并提供了以太网访问方式,便于实现智能家居系统和以太网的连接。基于802.11b标准的WIFI工作在

嵌入式操作系统简介以及发展史

嵌入式操作系统简介以及发展史 导语:嵌入式操作系统离我们生活并不远,甚至我们生活中处处都可见,比如各种路由器,机顶盒,洗衣机,空调,手机等。嵌入式操作系统的定义: 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用操作系统。嵌入式系统的发展:嵌入式操作系统并不是一个新生的事物,从20世纪80年代起,国际上就有了一些IT组织,公司开始进行商用嵌入式系统和专用操作系统的研发,这期间涌现了一些著名的嵌入式操作系统:windows CEVxWorkspSOSQNXPalm OSOS-9LynxOS目前,有很多商用嵌入式操作系统都在努力的为自己争取嵌入式市场的份额。但是,这些专用操作系统均属于商业化产品,价格昂贵,而且,他们的源码不公开,使得各自的嵌入式系统上的应用软件不能互相兼容。这导致了商业嵌入式系统对支持各种设备存在了很大的问题,使软件移植变得相当困难,但是,在这个时候,我们伟大的linux操作系统横空出世, 由于linux自身诸多的优点以及优势,吸引了许多开发商的 目光,使得linux成为了嵌入式操作系统的新宠。嵌入式操 作系统发展的四个阶段:第一阶段:无操作系统的嵌入式算法阶段,以单芯片为核心的可编程控制器的系统,具有监测,

伺服,指示设备相配合的功能。应用在一些专业性极强的工业控制系统,使用古老的汇编语言进行系统的直接控制。第二阶段:以嵌入式CPU为基础,简单操作系统为核心的嵌入式操作系统,CPU种类繁多,通用性差,系统开销小,效率高,一般配备系统仿真器,操作系统有一定的兼容性,软件较为专业,用户界面不够友好,系统主要用来监测系统和应用程序运行。 第三阶段:通用的嵌入式实时操作系统阶段,以嵌入式操作系统为核心的嵌入式系统,能运行于各种微处理器上,兼容性好,内核小,效率高,具有高度的模块化和扩展化,有文件管理和目录管理,设备支持,多任务,网络支持,图形窗口以及用户界面等功能,具有大量的应用程序接口(API),软件非常丰富,代表就是linux。 第四阶段:以Internet为标志的嵌入式操作系统,这是一个正在迅速发展的阶段,现在非常多的嵌入式操作系统已经有了接入Internet的能力。通过一个综合网关。 常见的嵌入式操作系统:uC/OS-Ⅱ:uC/OS-Ⅱ是一个公开源码,结构小巧,实时内核的实时操作系统。是一种基于优先级的可抢占式的硬实时内核,其内核提供任务管理与调度,时间管理,任务同步和通信,内存管理,中断服务等功能。其内核最小可以编译至2KB左右。-RTLinux:RTLinux是一个源代码开放的具有硬实时特性的多任务操作系统,他是通

单片机和嵌入式系统linux的区别转自21IC电子网

单片机和嵌入式系统linux的区别 随着嵌入式行业硬件平台的性能增强,项目需求和功能日益复杂,ARM公司推出的CORTEX-M3,更是让以往做单片机的工程师在芯片和技术选型面临两难选择,本专题将从芯片价格、整个系统的硬件软件设计及维护的成本等各个方面给您提供一个参考,并从技术角度分析单片机和带操作系统的系统的软件开发的异同点。 ● 1.单片机与ARM等新处理器的价格比较 ● 2.带操作系统与不带操作系统的软件开发的区别 ● 2.1.驱动开发的区别 ● 2.2.应用程序开发的区别 1. 单片机与ARM等新处理器的价格比较 表1 型号架构资源价格(元) AT89S51 8051 最高频率33MHz 4 4KB Flash 128B内部RAM 32个可编程IO引脚 两个16bit的计数器 一个UART口 SST89E564RD 8051 最高频率40MHz 35

从表1里面各种芯片的资源,大概就可以猜知它们的应用场合。51单片机通常被用来做一些比较简单的控制,比如采集信号、驱动一些开关。AT89S51的Flash 只有4K,一个稍微复杂的程序就不止4K了。SST89E564RD是一种扩展的51单片机,它的Flash达到64KB,可以外接最多64KB的SRAM。在SST89E564RD上的程序可以写得更复杂一些,但是它对外的接口也比较少。 CORTEX-M3系列的处理器,对外接口极其丰富,这使得它的应用面更广,但是限于它的Flash、内存还是比较小,一般不在上面运行操作系统,它算是一个性能非常突出的单片机。 HI3510 是海思半导体公司的一款用于监控设备的芯片,一般上面运行Linux系统,通过摄像头采集数据、编码,然后通过网络传输。另一端接收到数据之后,再解码。在上面运行的程序非常复杂,有漂亮的图片界面、触摸屏控制、数据库等等。对声音图像的编解码更是用到DSP核。 S3C2440 是一款通用的芯片,它与“高级单片机”STM32F103相比,多了存储控制器和NAND控制器──这使得可以外接更大的Flash、更大的内存;多了内存管理单元(MMU)──这使得它可以进行地址映身(虚拟地址、物理地址之间的映射)。可以在S3C2440上运行Linux系统,运行更大更复杂的程序。 在具体工作中,怎么选择这些芯片呢?一句话:成本!进行任何产品的开发都要考虑性价比,一切应该从“成本”出发。成本不仅包括芯片的价格,也包括整个系统的硬件、软件设计及维护的难易。 芯片价格可以在电子市场问到,也可以在https://www.360docs.net/doc/5a18966700.html,.上找到有卖这种芯片的柜台,然

ARM嵌入式系统开发综述.

视听研究所 主页:论坛: 所有资料均收集于各网站。 若您认为有关资料不适合公开,请联系newvideo@https://www.360docs.net/doc/5a18966700.html, 我们会第一时间删除。 感谢各位网友的无私奉献和支持! 加密时间:2008-2-1 获取更多权威电子书请登录 ARM 嵌入式系统开发综述 ARM 开发工程师入门宝典 获取更多权威电子书请登录 前言 嵌入式系统通常是以具体应用为中心,以处理器为核心且面向实际应用的软硬件系统,其硬件是整个嵌入式系统运行的基础和平台,提供了软件运行所需的物理平台和通信接口;而嵌入式系统的软件一般包括操作系统和应用软件,它们是整个

系统的控制核心,提供人机交互的信息等。所以,嵌入式系统的开发通常包括硬件和软件两部分的开发,硬件部分主要包括选择合适的MCU 或者SOC 器件、存储器类型、通讯接口及I/O、电源及其他的辅助设备等;软件部分主要涉及OS porting和应用程序的开发等,与此同时,软件中断调试和实时调试、代码的优化、可移植性/可重用以及软件固化等也是嵌入式软件开发的关键。 嵌入式系统开发的每一个环节都可以独立地展开进行详细的阐述,而本文的出发点主要是为嵌入式开发的初学者者提供一个流程参考。因为对于初学者在面对一个嵌入式开发项目的时候,往往面临着诸多困难,如选择什么样的开发平台?什么样的器件类型?在进行编译时怎样实现代码优化?开发工具该如何选择和使用?在进行程序调试时应该注意那些问题以及选择什么样的嵌入式OS 等等。希望通过本文,能帮助初学者了解有关ARM 嵌入式系统开发流程。 获取更多权威电子书请登录 目录 前言 (2) 1 嵌入式开发平台 (4) 1.1 ARM的开发平台: (4) 1.2 器件选型 (7) 2 工具选择 (11) 3 编译和连接 (13) 3.1 RVCT的优化级别与优化方向 (16) 3.2 Multifile compilation (21) 3.3调试 (22)

嵌入式系统的起源、分类、与通用计算机和单片机的区别

嵌入式系统的起源、分类、与通用计算机和单片机的区别 一、现代计算机的技术发展史 (包括通用计算机系统与嵌入式计算机系统) 1.始于微型机时代的嵌入式应用 电子数字计算机诞生于1946年,在其后漫长的历史进程中,计算机始终是供养在特殊的机房中,实现数值计算的大型昂贵设备。直到20世纪70年代,微处理器的出现,计算机才出现了历史性的变化。以微处理器为核心的微型计算机以其小型、价廉、高可靠性特点,迅速走出机房; 基于高速数值解算能力的微型机,表现出的智能化水平引起了控制专业人士的兴趣,要求将微型机嵌入到一个对象体系中,实现对象体系的智能化控制。例如,将微型计算机经电气加固、机械加固,并配置各种外围接口电路,安装到大型舰船中构成自动驾驶仪或轮机状态监测系统。这样一来,计算机便失去了原来的形态与通用的计算机功能。 为了区别于原有的通用计算机系统,把嵌入到对象体系中,实现对象体系智能化控制的计算机,称作嵌入式计算机系统。因此,嵌入式系统诞生于微型机时代,嵌入式系统的嵌入性本质是将一个计算机嵌入到一个对象体系中去,这些是理解嵌入式系统的基本出发点。 2.现代计算机技术的两大分支 由于嵌入式计算机系统要嵌入到对象体系中,实现的是对象的智能化控制,因此,它有着与通用计算机系统完全不同的技术要求与技术发展方向。通用计算机系统的技术要求是高速、海量的数值计算;技术发展方向是总线速度的无限提升,存储容量的无限扩大。 而嵌入式计算机系统的技术要求则是对象的智能化控制能力;技术发展方向是与对象系统密切相关的嵌入性能、控制能力与控制的可靠性。

早期,人们勉为其难地将通用计算机系统进行改装,在大型设备中实现嵌入式应用。然而,对于众多的对象系统(如家用电器、仪器仪表、工控单元……),无法嵌入通用计算机系统,况且嵌入式系统与通用计算机系统的技术发展方向完全不同,因此,必须独立地发展通用计算机系统与嵌入式计算机系统,这就形成了现代计算机技术发展的两大分支。 如果说微型机的出现,使计算机进入到现代计算机发展阶段,那么嵌入式计算机系统的诞生,则标志了计算机进入了通用计算机系统与嵌入式计算机系统两大分支并行发展时代,从而导致20世纪末,计算机的高速发展时期。 3.两大分支发展的里程碑事件 通用计算机系统与嵌入式计算机系统的专业化分工发展,导致20世纪末、21世纪初,计算机技术的飞速发展。计算机专业领域集中精力发展通用计算机系统的软、硬件技术,不必兼顾嵌入式应用要求,通用微处理器迅速从286、386、486到奔腾系列;操作系统则迅速扩张计算机基于高速海量的数据文件处理能力,使通用计算机系统进入到尽善尽美阶段。 嵌入式计算机系统则走上了一条完全不同的道路,这条独立发展的道路就是单芯片化道路。它动员了原有的传统电子系统领域的厂家与专业人士,接过起源于计算机领域的嵌入式系统,承担起发展与普及嵌入式系统的历史任务,迅速地将传统的电子系统发展到智能化的现代电子系统时代。 因此,现代计算机技术发展的两大分支的里程碑意义在于:它不仅形成了计算机发展的专业化分工,而且将发展计算机技术的任务扩展到传统的电子系统领域,使计算机成为进入人类社会全面智能化时代的有力工具。 二、嵌入式系统的定义与特点 如果我们了解了嵌入式(计算机)系统的由来与发展,对嵌入式系统就不会产生过多的误解,而能历史地、本质地、普遍适用地定义嵌入式系统。

嵌入式系统概述及与单片机区别说明

嵌入式系统概述及与单片机区别说明 嵌入式的全称是嵌入式系统,英文是Embeded system,是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”,根据英国电器工程师协会(U.K. Institution of Electrical Engineer)的定义,嵌入式系统为控制、监视或辅助设备、机器或用于工厂运作的设备。从这里我们可以看出两点,第一,嵌入式并不是一个通用的设备。第二,嵌入式必须和具体的应用相结合,设计上具有针对性。 所以可以看出来嵌入式是一个系统,嵌入式是需要把这个系统嵌入到设备中去,比如手机主板上的芯片就是嵌入到手机上的一个系统,整合了电脑的主板、CPU、硬盘、内存、网卡、显卡、电源的所有功能。也就是说嵌入式系统主要是从芯片的使用时的组织形态来命名的,更通俗的解释就是只要是被嵌入到设备中的芯片都可以叫做嵌入式系统。 嵌入式系统这个定义太广泛了,所以我们平时所讲的嵌入式更多的是从狭义上讲的,狭义上讲,嵌入式是为了区别于单片机。 我们经常把芯片中不带MMU(memory management unit)从而不支持虚拟地址,只能跑裸机或RTOS(典型如ucos、华为LiteOS、RT-Thread、freertos等)的system叫单片机(典型如STM32、NXP LPC系列、新的NXP imxRT1052系列等),而把芯片自带MMU可以支持虚拟地址,能够跑Linux、Vxworks、WinCE、Android 这样的操作系统的system叫嵌入式。 单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。

单片机和linux嵌入式操作系统区别

单片机和linux嵌入式操作系统区别 随着嵌入式行业硬件平台的性能增强,项目需求和功能日益复杂,ARM公司推出的 CORTEX-M3,更是让以往做单片机的工程师在芯片和技术选型面临两难选择,本专题将从芯片价格、整个系统的硬件软件设计及维护的成本等各个方面给您提供一个参考,并从技术角度分析单片机和带操作系统的系统的软件开发的异同点。 ● 1.单片机与ARM等新处理器的价格比较 ● 2.带操作系统与不带操作系统的软件开发的区别 ● 2.1.驱动开发的区别 ● 2.2.应用程序开发的区别 1. 单片机与ARM等新处理器的价格比较 表1

自己不熟悉的芯片和技术,最后的成本也可能更高。 2. 带操作系统与不带操作系统的软件开发的区别 用通俗的话来说,一个处理芯片不运行操作系统,我们就把它称为单片机,而单片机编程就是写裸板程序,这个程序直接在板子上运行;相对的,另一种程序就是基于操作系统的程序,说得简单点就是,这种程序可以通过统一的接口调用“别人写好的代码”,在“别人的基础上”更快更方便地实现自己的功能。 2.1. 驱动开发的区别 驱动开发的区别我总结有两点:能否借用、是否通用。 2.1.1 能否借用 基于操作系统的软件资源非常丰富,你要写一个Linux设备驱动时,首先在网上找找,如果有直接拿来用;其次是找到类似的,在它的基础上进行修改;如果实在没有,就要研究设备手册,从零写起。而不带操作系统的驱动开发,一开始就要深入了解设备手册,从零开始为它构造运行环境,实现各种函数以供应用程序使用。 举个例子,要驱动一块LCD,在单片机上的做法是: ①首先要了解LCD的规格,弄清楚怎么设置各个寄存器,比如设置LCD的时钟、分辨率、象素 ②划出一块内存给LCD使用 ③编写一个函数,实现在指定坐标描点。比如根据x、y坐标在这块内存里找到这个象素对应的小区域,填入数据。 基于操作系统时,我们首先是找到类似的驱动,弄清楚驱动结构,找到要修改的地方进行修改。 下面是单片机操作LCD的代码: ①初始化: void Tft_Lcd_Init(int type) { /* * 设置LCD控制器的控制寄存器LCDCON1~5 * 1. LCDCON1: * 设置VCLK的频率:VCLK(Hz) = HCLK/[(CLKVAL+1)x2] * 选择LCD类型: TFT LCD * 设置显示模式: 16BPP * 先禁止LCD信号输出 * 2. LCDCON2/3/4: * 设置控制信号的时间参数 * 设置分辨率,即行数及列数 * 现在,可以根据公式计算出显示器的频率: * 当HCLK=100MHz时,

嵌入式系统与单片机的区别

嵌入式与单片机的异同及其发展趋势 如果说微型机的出现,使计算机进入到现代计算机发展阶段,那么嵌入式计算机系统的诞生,则标志了计算机进入了通用计算机系统与嵌入式计算机系统两大分支并行发展时代,从而导致20世纪末,计算机的高速发展时期。 嵌入式计算机系统走上了一条独立发展的单芯片化道路。它动员了原有的传统电子系统领域的厂家与专业人士,接过起源于计算机领域的嵌入式系统,承担起发展与普及嵌入式系统的历史任务,迅速地将传统的电子系统发展到智能化的现代电子系统时代。 按照历史性、本质性、普遍性要求,嵌入式系统定义为:“嵌入到对象体系中的专用计算机系统”。“嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素。对象系统则是指嵌入式系统所嵌入的宿主系统。 嵌入式系统的特点与定义不同,由定义中的三个基本要素衍生出来的。不同的嵌入式系统其特点会有所差异。与“嵌入性”的相关特点:由于是嵌入到对象系统中,必须满足对象系统的环境要求,如物理环境(小型)、电气/气氛环境(可靠)、成本(价廉)等要求。与“专用性”的相关特点:软、硬件的裁剪性;满足对象要求的最小软、硬件配置等。与“计算机系统”的相关特点:嵌入式系统必须是能满足对象系统控制要求的计算机系统。与上两个特点相呼应,这样的计算机必须配置有与对象系统相适应的接口电路。 嵌入式系统按形态可分为设备级(工控机)、板级(单板、模块)、芯片级(MCU、SoC)。 嵌入式系统与对象系统密切相关,其主要技术发展方向是满足嵌入式应用要求,不断扩展对象系统要求的外围电路(如ADC、DAC、PWM、日历时钟、电源监测、程序运行监测电路等),形成满足对象系统要求的应用系统。因此,嵌入式系统作为一个专用计算机系统(满足对象系统要求的计算机应用系统),要不断向计算机应用系统发展。 单片机开创了嵌入式系统独立发展道路. 嵌入式系统虽然起源于微型计算机时代,然而,微型计算机的体积、价位、可靠性都无法满足广大对象系统的嵌入式应用要求,因此,嵌入式系统必须走独立发展道路——芯片化道路。将计算机做在一个芯片上,从而开创了嵌入式系统独立发展的单片机时代。 在探索单片机的发展道路时,有过两种模式,即“∑模式”与“创新模式”。“∑模式”本质上是通用计算机直接芯片化的模式,它将通用计算机系统中的基本单元进行裁剪后,集成在一个芯片上,构成单片微型计算机;“创新模式”则完全按嵌入式应用要求设计全新的,满足嵌入式应用要求的体系结构、微处理器、指令系统、总线方式、管理模式等。Intel公司的MCS-48、MCS-51就是按照创新模式发展起来的单片形态的嵌入式系统(单片微型计算机)。MCS-51是在MCS-48探索基础上,进行全面完善的嵌入式系统。历史证明,“创新模式”是嵌入式系统独立发展的正确道路,MCS-51的体系结构也因此成为单片嵌入式系统的典型结构体系。 单片机诞生于20世纪70年代末,经历了SCM、MCU、SoC三大阶段。 SCM即单片微型计算机(Single Chip Microcomputer)阶段.主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。“创新模式”获得成功,奠定了SCM 与通用计算机完全不同的发展道路。

嵌入式系统概论讲解

第一章嵌入式系统概论 参考习题 1、嵌入式系统本质上是什么系统? 答:从本质上讲,嵌入式系统中的计算机总是处于一种实时计算模式,也可以认为嵌入式计算机应具有某种实时性。也就是说,从嵌入式系统的广义概念考虑,嵌入式系统都可以看成是实时系统。 2、嵌入式系统开发与PC机软件开发的区别是什么? 答:嵌入式开发就是设计特定功能的计算机系统,形象的说就是开发一种嵌入在一个机器上实现特定功能的一个系统。PC的开发往往是上层应用程序,会更多的和业务流程,数据库,UI打交道。嵌入式的开发主要是和底层打交道,例如内存,NAND, 各种控制器,中断调度等等。当然现在也有很多需要在嵌入式设备上开发上层应用程序的需求了。 3、嵌入式系统基本概念? 答:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可配置,对功能、可靠性、成本、体积、功耗有严格约束的专用系统。这类系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统(可选择)以及应用程序等四个部分组成的。 4、嵌入式系统分类?

答:(1)按微处理器位数划分 按所采用的处理器位数,可以分为4位、8位、16位、32位和64位系统。 (2)按应用类别划分 可以简单地划分为信息家电、通信、汽车电子、航空航天、移动设备、军用电子、工业控制、环境监控等各种类型。 (3)按系统的实时性划分 硬实时系统、软实时系统和自适应实时。 (4)按工业界应用的复杂程度划分 简单单处理器系统 可扩展单处理器系统 复杂嵌入式系统 制造或过程控制中使用的计算机系统 第二章ARM嵌入式微处理器技术基础 参考习题 1、ARM32位指令、16位指令的特点。 答:ARM微处理器支持32位的ARM指令集和16位Thumb指令集,每种指令集各有自己的优点和缺点:ARM指令集效率高,但代码密度低;Thumb指令集具有较高的代码密度,却仍保持ARM的大多数性能上的优势,可看做ARM指令集的子集。

嵌入式系统开发方法综述

嵌入式系统开发方法综述 刘丹 (机械工业仪器仪表综合技术经济研究所,北京市 100055)Liu Dan (Instrumentation Technology & Economy Institute, Beijing 100055) Development Methods of Embedded System Abstract: Embedded systems have particular properties, such as real-time, concurrency, distribution, high reliability,and etc., which lead to large challenges and urgent requirements for corresponding methods and tools when developing such systems. From the view of engineering practice, the paper summarizes what problems developers will face during embedded system design, and what main methods and technologies will be used for resolving such problems. These methods and technologies are called embedded system developing methods. Key words: Embedded System HW-SW Co-Design Method Formal Modeling Method Structural Design Method Object-Oriented Design Method 【摘 要】嵌入式系统的实时性、并发性、分布性和高可靠性等特点使得系统的开发面临巨大挑战,迫切需 要相应开发方法的指导和开发工具的支持。本文从工程实践角度出发,总结在嵌入式系统设计过程中,开发人员会面临哪些主要问题,以及为解决问题而产生哪些主要方法和技术。这些方法和技术被统称为嵌入式系统的开发方法。 【关键词】嵌入式系统 软硬件协同设计方法 形式化建模方法 结构化设计方法 面向对象设计方法 收稿日期:2008-08-01作者简介:刘丹(1977-),女,博士,毕业于中科院沈阳自动化研究所,现就职于机械工业仪器仪表综合技术经济研究所,主要从事工业自动化、控制网络的技术和标准化研究,现负责PROFIBUS PA产品的认证测试工作。 引言 嵌入式系统是指以应用为中心、以计算机技术为基础、软硬件可裁剪、适应应用环境对功能、实时性、可靠性、成本、体积、功耗等严格约束的专用计算机系统。嵌入式系统的内容广泛,小到一个芯片,大到复杂的分布式系统都可以称为嵌入式系统,通常以SoC、单片机、单板机、多板式箱式结构、嵌入式PC等形式嵌入到信息家电、数字通信、工业控制、航空航天、医疗设施、军事电子等领域的设备或系统中,作为处理和控制的核心。 嵌入式系统的实时性、并发性、分布性和高可靠性等特点使得系统的开发面临巨大挑战,迫切需要相应的开发方法的指导和开发工具的支持。嵌入式系统开发方法的研究内容包括设计方法论、工程开发技术、以及相应辅助工具的开发。现代的系统开发是一个基于模型(model-based)的,从规约到实现的过程。模型是反映真实世界和系统实现两方面的抽象,帮助开发人员把握应用的最重要特性,是系统分析与验证的 基础,并为软件和硬件的实现要素提供表示视图。因此,系统模型设计在整个开发过程中最为重要。此外,任何工程开发技术都是在一定设计方法基础上提出一系列开发步骤,辅助工具则为这些设计方法和开发技术提供自动或半自动的工具支持。因此,设计方法决定了系统开发过程中的其它分析、验证、实现等方法,或者广义上说,系统的设计方法就是系统的开发方法。 本文从工程实践角度出发,总结在嵌入式系统设计过程中,开发人员会面临哪些主要问题,以及为解决问题而产生哪些主要方法和技术。这些方法和技术被统称为嵌入式系统的开发方法。 1 软硬件“分离”设计方法与软硬件协同设计方法 首先,用户或产品开发决策者要根据对产品性能、体积、开发成本以及上市时间等设计指标的评估,决定系统最终是以电路板式,还是以芯片式的形式实现。一般而言,对性能和体积要求不高,产品数量小,如1~几百个,但要求上市时间早的嵌入式系统,多采用电路板式实现;反之,系统体积小,产品数量大,但对上市时间要求比较松的嵌入式系统,多采用SoC芯片式实现。相应地,对于设计者而言,不同的实现形式一般应用不同的设计方法,包括软硬件“分离”设计和软硬件协同设计。 Review and Research

单片机与嵌入式的区别之学习感悟

单片机与嵌入式的区别之学习感悟 单片机和嵌入式,其实没有什么标准的定义来区分他们,对于进行过单片机和嵌入式开发的开发者来说,都有他们自己的定义,接下来,就谈谈本人对这两个概念的理解和感悟。 首先明确概念,什么是单片机,单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。比如最经典的51系列单片机,外观只是一块一个拇指大小的长方体芯片,共40个引脚,里面包含了逻辑运算单元。实际上也就是一个cpu。 一直记得上单片机的第一节课上,老师介绍单片机时,是这样说的:单片机姓单。为什么要强调这一点呢?方便容易分不清的童鞋,以后每次想问这个问题的时候都想想这句话。了解的人其实很容易分开它们,实际上他们也没有什么可比性。 首先,见过单片机的人,都知道,其实单片机只是一块芯片,里面有运算器、存储器等组成的一个具有逻辑、运算、通信等功能的单元。说的再具体点,实际一个CPU。 DSP芯片也可以认为是一个单片机。当然它们性能很强大,但是功能依然很单一,总之就是处理数据、逻辑。 其次,单片机可以完成很多的任务处理,但一般都是跟一定的外围设备进行协作,比如,添加LED灯,实现交通灯系统;添加液晶屏,实现动画播放等。(当然很多同学都已经在大学期间自己完成过一个最小系统) 最后,我们来总结一下单片机,单片机是完成运算、逻辑控制、通信等功能的单一模块。相信我的上述讲解中,大家发现到了,单片机真的就是姓单(这个字读dan)。 针对嵌入式的概念是有些模糊定义的,一般情况下指的都是嵌入式系统。正因为这个概念有些模糊,所以会导致很多人对该概念的模糊认识。(就像大学中的一门课程,既可以叫

归纳嵌入式系统概论习题

第一题单项选择题 1、ADDS R0,R1,R2执行完成后,不会对CPSR中的哪一位产生影响( B)? A、N B、C C、V D、F 2、FD表示( B )。 A、满递增堆栈 B、满递减堆栈 C、空递增堆栈 D、空递减堆栈 3、已知R0=0xFFFFFC0F,则执行MVN R1,R0后,R1的值为(C )。 A、0xFFFFFFFF B、0xFFFFFFF0 C、0x3F0 D、0x3F 4、在Linux中使用ls命令显示当前目录的所有内容应使用(A)参数? A、-l B、-a C、-d D、-i 5、在EMBEST IDE开发环境中,程序的默认入口地址为( C )。 A、0x C000 B、0x 1C00 C、0x 8000 D、0x 0 6、已知R0=0x1000,R1=0x2000则执行CMP R0,R1后,R0的值为(B) A、0x2000 B、0x1000 C、0xFFFFF000 D、0xFFFFEFFF 7、已知R1=0x2F,则执行mov R0,R1,ASL #2后,R0的值为(D )。 A、0xBC B、0xBF C、0x2F0 D、0x2F 8、在Linux中查看文件前10行内容的命令是( D)。 A、less B、cat C、tail D、head 9、已知R0=0xFC,则执行BIC R0,#0x3C后,R0的值为( D )。 A、0x18 B、0x24 C、0xC0 D、0x30 10、已知R0*R1=0x1C2F3E4D5C6B,则执行SMULL R2,R3,R0,R1后,R2和R3的值分别为(D)。 A、R2=0x1C2F3E4D R3=0x5C6B B、R2=0x5C6B R3=0x1C2F3E4D C、R2=0x1C2F R3=0x3E4D5C6B D、R2=0x3E4D5C6B R3=0x1C2F 11、EMPU是( B )。 A、嵌入式微控制器 B、嵌入式微处理器 C、片上系统 D、嵌入式数字信号处理器 12、以下不属于CPSR的条件码标志位的是(A)。 A、F B、N C、Z D、C 13、S3C44B0X的内核工作电压是( B )。 A、3.0V B、2.5V C、3.5V D、 1.5V 14、Linux中删除目录的命令是(B)。 A、rm B、 rmdir C、mkdir D、del 15、能实现ARM处理器在两种工作状态之间进行切换的命令是( D )。 A、B B、 BL C、 BLX D、BX 16、若CPSR寄存器的低5位(4-0)的值为10010,则ARM处理器工作于(B) 模式。 A、FIQ B、IRQ C、USER D、SVC

单片机与嵌入式系统复习题

《单片机与嵌入式系统》复习题 一、选择题 1.8031单片机的( )口的引脚,还具有外中断、串行通信等第二功能。 a)P0 b)P1 c)P2 d)P3 2.单片机应用程序一般存放在( )。 a) RAM b)ROM c)寄存器 d)CPU 3.已知某数的BCD 码为0111 0101 0100 0010 则其表示的十进制数值为( ) a)7542H b)7542 c)75.42H d)75.42 4.下列指令中不影响标志位CY 的指令有( )。 a)ADD A,20H b)CLR c)RRC A d)INC A 5.CPU 主要的组成部部分为( ) a)运算器、控制器 b)加法器、寄存器 c)运算器、寄存器 d)运算器、指令译码器 6.INTEL 8051 CPU 是( )位的单片机 a) 16 b)4 c)8 d)准16 7.8031复位后,PC 与SP 的值为( ) a )0000H,00H b) 0000H,07H c) 0003H,07H d)0800H,00H 8.当需要从MCS-51单片机程序存储器取数据时,采用的指令为( )。 a)MOV A,@R1 b)MOVC A,@A+DPTR c)MOVX A,@R0 d)MOVX A,@DPTR 9.8031单片机中既可位寻址又可字节寻址的单元是( ) a)20H b)30H c)00H d)70H 10.下列哪条指令是正确的( ) a) PUSH R2 b) ADD R0,A c)MOVX A,@DPTR d)MOV @R0,A 11. MCS-51单片机复位操作的主要功能是把PC 初始化为( )。 A.0100H B.2080H C.0000H D.8000H 12.若单片机的振荡频率为6MHz,设定时器工作在方式1需要定时1ms,则定时器初值应为 ( )。 A.500 B.1000 C.216-500 D.216-1000 13.定时器1工作在计数方式时,其外加的计数脉冲信号应连接到( )引脚。 A.P 3.2 B.P 3.3 C.P 3.4 D.P 3.5 14.当外部中断请求的信号方式为脉冲方式时,要求中断请求信号的高电平状态和低电平状态都应至少维持( )。 A.1个机器周期 B.2个机器周期 C.4个机器周期 D.10个晶振周期 15.MCS-51单片机在同一优先级的中断源同时申请中断时,CPU 首先响应( )。 A.外部中断0 B.外部中断1 C.定时器0中断 D.定时器1中断 16.定时器若工作在循环定时或循环计数场合,应选用( )。 A.工作方式0 B.工作方式1 C.工作方式2 D.工作方式3 17.MCS-51单片机的外部中断1的中断请求标志是( )。 A.ET1 B.TF1 C.IT1 D.IE1 18.下列标号中,正确的标号是( )。 A.1BT: B.BEGIN: C.ADD: D.STAB31: 19. 串行口每一次传送( )字符。 A.1个 B.1串 C.1帧 D.1波特 20.MCS-51单片机的堆栈区应建立在()。 单片机与嵌入式系统复习题

嵌入式系统的发展概况及其发展前景

嵌入式系统的发展概况及其发展前景 随着信息技术的高速发展,电子产品越来越普及,这些产品的发展得益于嵌入式系 统技术的快速发展,如Mp3 、手机等日常用品就是嵌入式系统技术的应用。但嵌入式系统技术的应用还远不止此,在工业控制、交通管理、信息家电、家庭智能管理、网络及电子商务、航天航空、军事设备、船舶等领域都有着重要的应用。嵌入式系统技术正悄然地影响着我们的生活,给我们带来了巨大的便利。它在我们的生产、生活中有着广泛的应用,并且有着良好的发展前景。一、嵌入式系统发展历程 嵌入式系统的发展大致经历了4 个阶段: 第一阶段:单片微型计算机(SCM )阶段,即单片机时代。这一阶段的嵌入式系统硬件是单片机,软件停留在无操作系统阶段,采用汇编语言实现系统的功能。这阶段的主要特点是:系统结构和功能相对单一、处理效率低、存储容量也十分有限,几乎没有用户接口。 第二阶段:微控制器(MUC )阶段。主要的技术发展方向是:不断扩展对象系统要求的各种外围电路和接口电路,突显其对象的智能化控制能力。这一阶段主要以嵌入式微处理器为基础、以简单操作系统为核心,主要特点是硬件使用嵌入式微处理器,微处理器的种类繁多,通用性比较弱;系统开销小,效率高。 第三阶段:片上系统(SOC)。主要特点是:嵌入式系统能够运行于各种不 同类型的微处理器上,兼容性好,操作系统的内核小,效果好。 第四阶段:以Internet 为标志的嵌入式系统。嵌入式网络化主要表现在两个方面, 一方面是嵌入式处理器集成了网络接口,另一方面是嵌入式设备应用于网络环境中、嵌入式系统的含义 目前,嵌入式系统还没有比较权威、比较统一的定义,人们从不同的角度来理解嵌入式系统,描述嵌入式系统。

嵌入式软件开发流程

嵌入式软件开发流程 一、嵌入式软件开发流程 1.1 嵌入式系统开发概述 由嵌入式系统本身的特性所影响,嵌入式系统开发与通用系统的开发有很大的区别。嵌入式系统的开发主要分为系统总体开发、嵌入式硬件开发和嵌入式软件开发3大部分,其总体流程图如图1.1所示。 图1.1 嵌入式系统开发流程图 在系统总体开发中,由于嵌入式系统与硬件依赖非常紧密,往往某些需求只能通过特定的硬件才能实现,因此需要进行处理器选型,以更好地满足产品的需求。另外,对于有些硬件和软件都可以实现的功能,就需要在成本和性能上做出抉择。往往通过硬件实现会增加产品的成本,但能大大提高产品的性能和可靠性。 再次,开发环境的选择对于嵌入式系统的开发也有很大的影响。这里的开发环境包括嵌入式操作系统的选择以及开发工具的选择等。比如,对开发成本和进度限制较大的产品可以选择嵌入式Linux,对实时性要求非常高的产品可以选择Vxworks等。

1.2 嵌入式软件开发概述 嵌入式软件开发总体流程为图4.15中“软件设计实现”部分所示,它同通用计算机软件开发一样,分为需求分析、软件概要设计、软件详细设计、软件实现和软件测试。其中嵌入式软件需求分析与硬件的需求分析合二为一,故没有分开画出。 由于在嵌入式软件开发的工具非常多,为了更好地帮助读者选择开发工具,下面首先对嵌入式软件开发过程中所使用的工具做一简单归纳。 嵌入式软件的开发工具根据不同的开发过程而划分,比如在需求分析阶段,可以选择IBM的Rational Rose等软件,而在程序开发阶段可以采用CodeWarrior(下面要介绍的ADS 的一个工具)等,在调试阶段所用的Multi-ICE等。同时,不同的嵌入式操作系统往往会有配套的开发工具,比如Vxworks有集成开发环境Tornado,WindowsCE的集成开发环境WindowsCE Platform等。此外,不同的处理器可能还有对应的开发工具,比如ARM的常用集成开发工具ADS、IAR和RealView等。在这里,大多数软件都有比较高的使用费用,但也可以大大加快产品的开发进度,用户可以根据需求自行选择。图4.16是嵌入式开发的不同阶段的常用软件。 图1.2 嵌入式开发不同阶段的常用软件 嵌入式系统的软件开发与通常软件开发的区别主要在于软件实现部分,其中又可以分为编译和调试两部分,下面分别对这两部分进行讲解。 1.交叉编译 嵌入式软件开发所采用的编译为交叉编译。所谓交叉编译就是在一个平台上生成可以在另一个平台上执行的代码。在第3章中已经提到,编译的最主要的工作就在将程序转化成运行该程序的CPU所能识别的机器代码,由于不同的体系结构有不同的指令系统。因此,不同的CPU需要有相应的编译器,而交叉编译就如同翻译一样,把相同的程序代码翻译成不同CPU的对应可执行二进制文件。要注意的是,编译器本身也是程序,也要在与之对应的某一个CPU平台上运行。嵌入式系统交叉编译环境如图4.17所示。

单片机与嵌入式系统实践第一章 课后答案

第一章课后答案 1、 答:一个单片机的典型内部结构通常包括: (1)中央处理器(CPU),包含算数逻辑运算单元(ALU)、控制器和寄存器等 (2)存储器,包含ROM、RAM和FLASH等 (3)功能模块,包括定时计数器、A/D和D/A转换、通信接口(UART、IIC、SPI)等 (4)工作支撑模块,包含电源、时钟电路、复位控制、看门狗电路等 2、 答:嵌入式系统具有以下几个基本特征:具有特定功能,用于特定的任务;注重成本控制与功耗要求;具有实时性的要求;软硬件可靠性要求更高;具有较长的生命周期 3、 答:在嵌入式系统中,常包含以下3种总线:地址总线、数据总线和控制总线。 (1)地址总线(Address Bus,简称AB):单向,用于传送地址信息。 (2)数据总线(Data Bus,简称DB):一般为双向,用于CPU与存储器、CPU与外设,或外设 与外设之间传送数据信息。 (3)控制总线(Control Bus,简称CB):是计算机系统中所有控制信号线的总称,在控制总线 中传送的信息是控制信息。 4、 答: (l)时钟周期:用于输入到MCU的时钟信号 (2)机器周期:一般由一个或一个以上的时钟周期组成。 (3)指令周期:执行一条指令所需时间称为指令周期,它由一个到数个机器周期组成。 5、 答:看门狗(watch dog)是为了防止程序跑飞而设计的一种自动定时器,它可以产生一个脉冲,让单片机复位。当单片机的程序正常运行的时候,每隔一定的时间给看门狗电路发一个脉冲,使看门狗电路重新计时。当程序因为某种原因不正常运行时(死机),就不会发这个脉冲,看门狗电路计时时间到,就会复位单片机使其重新启动。 6、 答:处理器字长是指处理器一次能够处理数据的长度,字长是衡量微处理器功能、运算速度以及精度的重要指标之一,也是划分微处理器档次的重要依据。根据字长,可以将微处理器分为4位机、8位机、16位机、32位机、64位机等。如8位字长的处理器能够一次能够处理8位字长的数据。

嵌入式系统的发展过程与现状

嵌入式系统的发展过程与现状 在信息技术和网络技术高速发展的后PC时代,嵌入式系统已经广泛地渗透到科学研究、工程设计、军事技术等众多领域。随着各种嵌入式产品的开发和推广,嵌入式技术和人们的生活将会越来越密切。在PC时代,可能有人从来没有接触过计算机。但是在后PC 时代,他就不可能不接触嵌入式系统。因为嵌入式系统存在于生活的方方面面,从洗衣机、电冰箱等到家用电器,到自行车、汽车等交通工具,以及办公室里的几乎每一个电气设备,其中可能都有嵌入式系统,或者都属于嵌入式技术开发和改造的对象。 我们所说的嵌入式系统由于使用的范围很广,因此并没有一个比较统一的定义。一般我们可以认为嵌入式系统一般指非PC系统,它包括硬件各软件两部分。硬件包括处理器(或微处理器)、存储器、外设器件、I/O端口和图形控制器等。软件部分包括操作系统和应用程序编程。因此我主要从芯片,外围器件,软件和开发系统的发展来阐述嵌入式系统的发展过程与现状。 首先,就嵌入式系统的芯片(嵌入式处理器)而言,我们知道嵌入式系统的出现最初是基于单片机发展起来的。因此可以说嵌入式系统的芯片的发展是伴随着微处理器的发展成长起来的,最早的单片机是Intel公司的8048,它出现在1976年。Motorola同时推出了68HC05,Zilog公司推出了Z80系列,这些早期的单片机均含有256字节的RAM、4K的ROM、4 个8位并口、1个全双工串行口、两个16位定时器。之后在80年代初,Intel又进一步完善了

8048,在它的基础上研制成功了8051,这在单片机的历史上是值得纪念的一页,迄今为止,51系列的单片机仍然是最为成功的单片机芯片,在各种产品中有着非常广泛的应用。同样嵌入式系统的芯片也是经过了由低到高的发展过程。如最初ARM系列的ARM1,其地址空间是26位,仅支持26们寻址空间。不支持乘法或协处理器指令。而在实际应用当中工控的要求往往较高,需要各种各样的设备接口,除了进行实时控制,还须将设备状态,传感器的信息等在显示屏上实时显示。这些要求8位的处理器是无法满足的,以前多数使用16位的处理器,随着处理器快速的发展,目前32位、64位的处理器逐渐替代了16位处理器,进一步提升了系统性能。而这也正成为一种市场的潮流。 其次在芯片飞速发展的同时,其外设也得到了长足的发展。外部设备指嵌入式目标系统与真实环境交互的各种设备,包括通用串行总线、存储设备、鼠标、键盘。液晶显示、红外线数据传输和打印设备等。因为现代加工技术发展,过去那种设定程序后就让其固定地按程序运行的方式已经不能满足人们对现代产品加工的要求了,人们迫切的希望嵌入式系统具有人机交互的功能。例如我们传统的电视、电冰箱其中也嵌有处理器,但是这些处理器过去只是在控制方面应用。而现在只有按钮、开关的电器显然已经不能满足人们的日常需求,具有用户界面,能远程控制,智能管理的电器是未来的发展趋势。我想这也是嵌入式系统外设发展的一个原因。 最后作为一个系统,往往是在硬件和软件交替发展的双螺旋的

相关文档
最新文档