《嵌入式技术基础与实践(第2版)》课件V1.1第04章
《嵌入式开发》课件
分类:嵌入式网 络通信技术可以 分为有线网络通 信和无线网络通 信两大类。
有线网络通信: 包括以太网、 USB、串行通信 等,可以实现嵌 入式系统与外部 网络的高速、稳 定、可靠的数据 传输。
无线网络通信: 包括Wi-Fi、蓝 牙、ZigBee等, 可以实现嵌入式 系统与外部网络 的低功耗、远距 离、灵活的数据 传输。
优化方法:对操作 系统进行裁剪和优 化,提高系统性能
移植与优化工具: 使用嵌入式操作系 统移植工具,如 Yo c t o 、 Buildroot等
移植与优化效果: 提高系统稳定性、 降低功耗、提高性 能,满足实际应用 需求。
06
嵌入式网络通信技术
嵌入式网络通信技术的概述与分类
概述:嵌入式网 络通信技术是嵌 入式系统与网络 通信技术相结合 的产物,可以实 现嵌入式系统与 外部网络的互联 互通。
04
嵌入式软件开发基础
嵌入式软件开发流程
需求分析:明确系统需求,确定功能、 性能、接口等要求
系统设计:进行ቤተ መጻሕፍቲ ባይዱ件和软件设计,包括 芯片选型、电路设计、软件架构设计等
编码实现:编写源代码,进行单元测试 和集成测试
测试验证:进行系统测试和性能测试, 确保系统稳定可靠
发布部署:将系统部署到目标设备上, 进行现场调试和优化
嵌入式系统的应用领域
工业控制:如自动化生产线、机器人等
医疗设备:如医疗仪器、医疗机器人等
智能家居:如智能家电、智能安防等
汽车电子:如车载导航、汽车电子控制单 元等
消费电子:如智能手机、平板电脑等 航空航天:如卫星、航天器等
03
嵌入式硬件平台
ARM处理器架构
ARM处理器架构是一种广泛应用于嵌入式系统的处理器架构 ARM处理器架构的特点是低功耗、高性能、低成本 ARM处理器架构的应用领域包括智能手机、平板电脑、物联网设备等 ARM处理器架构的发展趋势是向高性能、低功耗、高集成度方向发展
嵌入式技术基础与实践
嵌入式技术基础与实践
《嵌入式技术基础与实践》一书主要是对嵌入式技术的基础与实践知识的讲解。
《嵌入式技术基础与实践》一书共12章,内容涵盖了嵌入式系统概述、嵌入式处理器体系结构、嵌入式系统硬件设计基础、嵌入式系统软件开发环境、嵌入式操作系统、嵌入式系统的引导加载程序、嵌入式系统的存储技术、嵌入式系统的通信与网络技术、嵌入式系统的图形用户界面设计、嵌入式系统的可靠性设计、嵌入式系统设计实例和嵌入式系统的发展趋势等。
嵌入式ARM系统原理与实例开发(第2版)04 ADS环境下汇编C编程PPT课件
嵌入式ARM系统原理与实例开发
19.08.2020
1
嵌入式ARM系统原理与实例开发(第2版)
整体概述
概况一
点击此处输入相关文本内容 点击此处输入相关文本内容
概况二
点击此处输入相关文本内容 点击此处输入相关文本内容
概况三
点击此处输入相关文本内容 点击此处输入相关文本内容
19.08.2020
北京大学出版社出版
14
嵌入式ARM系统原理与实例开发(第2版)
6
嵌入式ARM系统原理与实例开发(第2版)
使用main()函数时标准C调用过程
(1)汇编程序入口 (2)系统初始化,设置中断向量 (3)关看门狗及中断
(1)初始化存储设备 (2)初始化堆栈空间 (3)初始化必要的硬件设备
IMPORT _main LDR lr, =_main MOV pc,lr
_main
• (2)运行main()函数,如果是在AXD下模拟调试程序,如果 程序员没有显示完成第(1)步操作,在运行main()函数时将 由模拟器自动完成,当然,如果要将程序运行于嵌入式设备上, 第(1)步操作是必不可少的。
• (3)如果有必要,还将设置捕捉及处理C函数异常的处理函数。
19.08.2020
北京大学出版社出版
19.08.2020
北京大学出版社出版
12
嵌入式ARM系统原理与实例开发(第2版)
内链汇编禁止和使能中断请求
__inline void disable_IRQ(void) {
int tmp; __asm {
MRS tmp, CPSR ORR tmp, tmp, #0x80 MSR CPSR_c, tmp } } int main(void) { disable_IRQ(); enable_IRQ(); }
嵌入式系统原理与设计 教学课件(共82张PPT)
杂,如:16位、32位CPU或特殊功能的微处理器、 特定功能的集成芯片、FPGA或CPLD等,其软
件设计的复杂性成倍增长。因此研究嵌入式系统的
设计原理及技术,提供系统的设计方法和开发工具是 嵌入式计算学科的关键技术。
嵌入式微处理器分类
嵌入式处理器
嵌入式微控制器 (MCU)
嵌入式DSP处理器 (DSP)
嵌入式微处理器 (MPU)
嵌入式片上系统 (System On Chip)
1、嵌入式微控制器(MCU)
• 嵌入式微控制器的典型代表是单片机这 种8位的电子器件目前在嵌入式设备中 仍然有着极其广泛的应用。
• 单片机芯片内部集成ROM/EPROM、 RAM、总线、总线逻辑、定时/计数器、 看门狗、I/O、串行口、脉宽调制输出、 A/D、D/A、Flash RAM、EEPROM等 各种必要功能和外设。
要求程序编写和编译工具的质量要高,以减少程序二进制代码长度、提 高执行速度。
以微处理器为核心
• 我们设计一个数字系统可以有很多种方法,如:定制
逻辑、现场可编程门阵列(FPGA)等,那么为什 么在设计嵌入式系统时要以微处理器为核心呢? 这主要有两种原因:
• (1)用微处理器是实现数字系统一种十分便捷、有 效的方法;
嵌入式系统的特征
• 可接5种GPS接收器; 嵌入式系统是以微处理器为核心的,嵌 入在其他设备中的专用计算机系统。它 5个按键需要和屏幕菜单显示组合起来完成这些功能。
在移动地图这个例子中,电能消耗特别重要,设计时应尽量减少存储器读/写,因为存储器访问是主要的功耗来源,存储器的访问必须精心安排 ,以避免多次读取相同的数据。
嵌入式入门(设计与实例开发)PPT课件
可靠性框图
02
03
故障树分析(FTA)
通过可靠性框图分析嵌入式系统 的可靠性结构,确定关键件和冗 余件。
通过故障树分析找出导致系统故 障的原因和最小割集,评估系统 的可靠性和安全性。
06
嵌入式系统应用案例分 析
智能家居系统案例分析
开源硬件与软件
开源硬件和软件的发展 为嵌入式系统的设计和 开发提供了更多选择和
灵活性。
02
嵌入式硬件设计
ARM处理器
ARM处理器是一种流行的嵌入式处理器架构,广泛应用于各种嵌入式系 统。
ARM处理器具有低功耗、高性能的特点,适用于各种应用场景,如智能 家居、工业控制等。
ARM处理器的选择需要根据具体应用需求来决定,如ARM Cortex-M系 列适用于微控制器应用,ARM Cortex-A系列适用于智能手机、平板电 脑等应用。
工业控制系统发展前景
探讨工业控制系统的发展趋势和未来发展方向。
医疗电子设备案例分析
医疗电子设备概述
医疗电子设备是指用于医疗领域的电子设备, 如监护仪、超声波诊断仪等。
医疗电子设备优势
分析医疗电子设备的优势,如高精度、高可 靠性、实时监测等。
医疗电子设备案例
介绍医疗电子设备的具体应用案例,如远程 医疗监护系统等。
FPGA芯片
FPGA芯片是一种可编程逻辑器件,可以通过编程 实现各种数字逻辑功能。
FPGA芯片具有高度的灵活性,可以根据实际需求 进行定制,实现各种复杂的数字逻辑功能。
FPGA芯片广泛应用于通信、图像处理、雷达等领 域,可以大大提高系统的性能和可靠性。
嵌入式微控制器
《嵌入式系统基础》PPT课件
识集成系统。
今天嵌入式系统带来的工业年产值已超过了1万亿美元
嵌入式产品应用示例
themegallery
嵌入式Windows CE的应用领域
❖信息家电领域
❖移动计算领域
手机、PDA、掌上电脑。(以语音功能和数据处理
为中心)
❖工业控制领域
Company Logo
深刻理解Windows CE的重要组件及系统提供的可选特性,
并灵活运用Platform Builder的配置文
件.REG、.BIB、.DAT、.DB是定制适合目标平台的Windows
CE操作系统的关键。
Company Logo
themegallery
Platform Builder概况(2)
能够完成基本的控制任务,另外,还要向目标平台中加入外部
设备的驱动程序和一些附加的设置。但是,对于一些通用性较
强的嵌入式系统,如PDA、机顶盒、智能 等,微软都为其特
别定制了专用的操作系统,如SmartPhone、PocketPC 等。
开发者可以利用这些特定的操作系统,并在此基础上进行调整,
从而更快地定制出适合需要的目标操作系统平台。
特性。
导出SDK向导(Export SDK Wizard):使用户
可以导出一个自定义的软件开发工具包(SDK)。即
可以将客户定制的SDK导出到特定的开发环境中(如
EVC)去。这样开发人员就可以使用特定的SDK写出
符合特定的操作系统平台要求的应用程序。
远程工具:可以执行同基于Windows CE的目标
甚至还能支持诸如手写体和声音识别、动态影像、
3D图形等特殊应用。
嵌入式课件(ppt)
嵌入式系统已经广泛应用于各个科技领域和日常生活的每个角落,由于其本 身的特性,使得我们很难发现它的存在。甚至一些从事嵌入式系统开发的科技人 员也只知单片机,不知道嵌入式系统。本节从嵌入式系统的定义开始,阐述嵌入 式系统的含义、特点等,以使读者加深对嵌入式系统的理解。
§1.1.1 嵌入式系统的定义 §1.1.2 嵌入式系统的组成 §1.1.3 嵌入式系统的特点 §1.1.4 嵌入式系统的应用 §1.1.5 嵌入式系统的发展
由上述可以看出,嵌入式系统是一个外延极广的概念,凡是与产品结合在一起的、 具有嵌入式系统特点的系统都可以称为嵌入式系统。
第1章 嵌入式系统设计基础
4
嵌入式系统的组成
嵌入式系统一般有3个主要的组成部分: 硬件。图1.1给出了嵌入式系统的硬件组成。其中,处理器是系统的运算核心; 存储器(ROM、RAM)用来保存可执行代码,以及中间结果;输入输出设备完成 与系统外部的信息交换;其他部分辅助系统完成功能。 应用软件。应用软件是完成系统功能的主要软件,它可以由单独的一个任务来 实现,也可以由多个并行的任务来实现。 实时操作系统(Real-Time Operating System,RTOS)。该系统用来管理应 用软件,并提供一种机制,使得处理器分时地执行各个任务并完成一定的时限要 求。
由于对嵌入式系统含义的理解因人而异,所以不同的书籍对嵌入式系统的定义也 不尽相同。下面给出了一些文献中对嵌入式系统的定义:
“Computer as Components – Principles of Embedded Computing System Design”一书的作者Wayne Wolf认为:“什么是嵌入式计算系统?如果不严格地定 义,它是任何一个包含可编程计算机的设备,但是它本身却不是一个通用计算机。”
《嵌入式软件基础》PPT课件
Distributed Objects Fault Tolerance
90%*
Multiprocessing 75%* Multiprocessing
File System
File System
30%*
Networking
Networking
Kernel
Kernel
*Percent of total software supplied by RTOS vendor in a typical embedded device
1
嵌入式软件系统概述
2
嵌入式操作系统
3
嵌入式软件开发方法
嵌入式软件开发需要交叉编译
• 通用计算机程序开发和编译在一台计算机上完
成——直接编译。
• 嵌入式系统采用“宿主机/目标机”方式——交叉编译
。
USB/RS232/以太网
内存小 存储空间有限 计算能力有限
宿主机:通用计算机(PC),开发环境。
目标机:嵌入式系统,运行环境。 33
手机软件 路由器软件 交换机软件 飞控软件等
嵌入式软件系统的分类
从运行平台来分,嵌入式软件可以分为
运行在开发平台上的软件:设计、开发、测试工 具等。
运行在嵌入式系统上的软件:嵌入式操作系统、
应用程序、驱动程序及部分开发工具。
嵌入式软件系统的体系结构
应用 任应用 任务n
任内通中时任…
务存信断间务…
管 理
管 理
同 步
管 理
管 理
扩 展
…
与
…
互
斥
机
制
嵌入式TCP/IP
• TCP/IP 协 议 已 经 广泛地应用于嵌入 式系统中
嵌入式系统学习课件2
12
知识产权核(IP 核, intellectual property)
? IP核是指具有知识产权的、功能具体、接口规范、可在多个集成 电路设计中重复使用的功能模块,是实现系统芯片(SOC)的基 本构件。
? IP复用意味着设计代价降低(时间,价格) ? IP核的类别:
? 微处理器微处理器: ARM, PowerPC; ? 存储器存储器: RAM, memory controller; ? 外设: PCI, DMA controller; ? 多媒体处理: MPEG/JPEG ; ? encoder/decoder ; ? 数字信号处理器(DSP) ? 通信: Ethernet controller, router,
? 物理综合后的描述 ? 准备流片 ? 包含工艺相关的布局和时序信息 ? IP很容易保护 ? 多数的处理器和存储器
14
存储器
?嵌入式系统的存储器包括 主存和外存。 ?大多数嵌入式系统的 代码和数据都存储在处理
器可直接访问的存储空间即主存中 。 ?系统上电后在主存中的代码直接运行。主存储
器的特点是速度快,一般采用 ROM 、EPROM 、Nor Flash 、SRAM 、DRAM 等存储器件。
? 精简指令集:保留最基本的,去掉复杂、使用频度不高 的指令
? 采用Load/Store 结构,有助于减少指令格式,统一存 储器访问方式
? 采用硬接线控制代替微程序控制
11
CISC与RISC的对比
类别
CISC
指令系统 指令数量很多
RISC 较少,通常少于100
执行时间 编码长度
有些指令执行时间很长,如 整块的存储器内容拷贝;或 将多个寄存器的内容拷贝到 存贮器
9
最新嵌入式编程基础2PPT课件
TCP/IP协议
协议模型
No Image
Socket编程
根据系统实现了TCP/UDP或者IP层的接口,调用该 接口进行网络编程
网络编程
网络编程
服务器编程:创建套接扣绑定套接口设 置套接口为监听模式,进入被动接受连接请 求状态接受请求,建立连接读/写数据 终止连接
客户端程序:创建套接口与远程服务程序 连接读/写数据终止连接
值为0,父进程中执行,返回值为子进程ID。 调用方法: #include <sys/type.h> #include <unistd.h> Pid_t fork(void); Pid_t vfork(void);
#include<sys/types.h> #include<unistd.h> #include<stdio.h> Int main(void) { pid_t pid; if ((pid=fork())<0) err_sys(“fork error\n”); Else if(pid==0) printf(“this is process of child!\n”); Else printf(“parent process pid=%d! \n”,getpid());
发送消息
int msgsnd(int msqid,const void *msgp,size_t msgsz,int msgflg);
接收消息
int msgrcv(int msqid,void *msqp,size_t msgsz,long msgtyp,int msgflg);
销毁消息队列
Wait和waitpid函数 作用:等待子进程终止函数 区别:waitpid与wait的作用相同,waitpid
第4章 嵌入式系统程序设计基础(第二版)
例题
题目:用预处理指令#define 声明一个常数,用以表
明1年中有多少秒(忽略闰年问题)。
分析:
两种错误写法: #define SECONDS 60 * 60 * 24 * 365 #define SECONDS (60 * 60 * 24 * 365)
正确答案:
#define SECONDS (60 * 60 * 24 * 365)UL
逻辑表达式及运算符(2)
“=”、“>”、“<”、“>=”、“<= ”、“/=”、 “ <>” 运算符 示例: X <> Y 表示X不等于Y。 “LAND”、“LOR”、“LNOT”及“LEOR” 运算符 示例: X:LAND:Y 表示将X和Y 作逻辑与的操作
mwhua@
字符串表达式及运算符(3)
8. 9.
mwhua@
4.2 汇编语言的语句格式
ARM(Thumb)汇编语言的语句格式为: {标号} {指令或伪指令} {;注释}
返回
ቤተ መጻሕፍቲ ባይዱ
每一条指令的助记符可以全部用大写、或全部 用小写,但不许在一条指令中大、小写混用 长语句若分为多行来书写,在行的末尾用“\” 表示下一行与本行为同一条语句
汇编控制伪指令
汇编控制伪指令用于控制汇编程序的执行流
程,常用的汇编控制伪指令包括以下几条: (1)IF、ELSE、ENDIF (2)WHILE、WEND (3)MACRO、MEND (4)MEXIT 语法格式:
示例: GBLL Test …… GBLA Counter IF Test3 = TRUE Counter SETA 指令序列1 …… ELSE Counter < 10 WHILE 指令序列2 指令序列 ENDIF WEND
《嵌入式技术基础与实践》(第二版)习题参考答案
嵌入式技术基础与实践(第二版)习题参考答案目录第1章概述习题参考答案 (1)第2章Freescale S08微控制器习题参考答案 (3)第3章第一个样例程序及工程组织习题参考答案 (5)第4章基于硬件构件的嵌入式系统开发方法习题参考答案 (8)第5章串行通信接口SCI 习题参考答案 (10)第6章GPIO的应用实例—键盘、LED与LCD 习题参考答案 (12)第7章定时器模块习题参考答案 (13)第8章串行外设接口SPI 习题参考答案 (14)第9章Flash存储器在线编程习题参考答案 (15)第10章集成电路互连总线I2C 习题参考答案 (18)第11章模数转换模块A/D 习题参考答案 (20)第12章系统开发其他模块应用习题参考答案 (21)第13章JM60的USB 2.0开发方法习题参考答案 (23)第14章DZ60的CAN总线开发方法习题参考答案 (27)第1章概述习题参考答案1.嵌入式系统的基本含义是什么?为什么说单片机是典型的嵌入式系统?答:即MCU的含义是:在一块芯片上集成了中央处理单元(CPU)、存储器(RAM/ROM 等)、定时器/计数器及多种输入输出(I/O)接口的比较完整的数字处理系统。
大部分嵌入式系统以MCU为核心进行设计。
MCU从体系结构到指令系统都是按照嵌入式系统的应用特点专门设计的,它能很好地满足应用系统的嵌入、面向测控对象、现场可靠运行等方面的要求。
因此以MCU为核心的系统是应用最广的嵌入式系统。
2.简述嵌入式系统的特点以及应用领域。
答:嵌入式系统属于计算机系统,但不单独以通用计算机的面目出现;嵌入式系统开发需要专用工具和特殊方法;使用MCU设计嵌入式系统,数据与程序空间采用不同存储介质;开发嵌入式系统涉及软件、硬件及应用领域的知识;嵌入式系统的其他特点,比如紧张的资源,较高稳定性要求,低功耗,低成本等。
一般用于工业控制,智能家电,日常电子等领域。
3.比较MCU与CPU的区别与联系。
嵌入式技术基础与实践
表 6 MAX232 芯片输入输出引脚分类与基本接法
组别 1
TTL电平引脚
11(T1IN) 12(R1OUT)
方向
输入 输出
典型接口
接MCU的TxD 接MCU的RxD
232电平引脚
13 14
方向
输入 输出
典型接口
连接到接口,与其它设备通过 232相接
2
10(T2IN) 9(R2OUT)
输入 接MCU的TxD 输出 接MCU的RxD
Vcc(16 脚):正电源端,一般接+5V。 GND(15 脚):地。 VS+(2 脚):VS+=2VCC-1.5V=8.5V。 VS-(6 脚):VS-=-2VCC-1.5V=-11.5V。 C2+、C2-(4、5 脚):一般接 1μF 的电解电容。 C1+、C1-(1、3 脚):一般接 1μF 的电解电容。
2.主控制电路为 HD44780(HITACHI)及其他公司的兼容电路。从程序员的角度来说, LCD 的显示接口与编程是面向 HD44780 的,只要了解 HD44780 的编程结构即可进行 LCD 的显示编程。
3.内部具有字符发生器 ROM,可显示 192 种字符(160 个 5*7 点阵字符和 32 个 5*10 点阵字符)。
1.2 系统功能
本次实验所做的系统是一个数字时钟的系统,在输入一个时间并运行之后在飞思卡尔实 验箱的 LCD 显示屏上显示时间,并通过控制器控制时间的开始与暂停。整个系统操作简单, 功能明确。显示数据时,先把要显示的数据送到数据寄存器中,再通过发送寄存器将数据输 入要 LCD 中显示。在设计开关时,用到了 GPIO 引脚的输入功能,当该引脚的高低电平改变 时,来设置数字时钟的相应功能
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
上拉、下拉电阻
开关量输入。一定要保证高低电压分明 开关量输出。高电平接近电源电压,低电平接近地电平 A/D电路与D/A电路 A/D电路:要清楚前端采样基本原理,对电阻型、电流型 和电压型传感器采用不同的采集电路 D/A电路:考虑MCU的引脚通过何种输出电路控制实际对象 控制电路
4.4 基于硬件构件的嵌入式底层软件构件的编程方法
4.4.1 嵌入式硬件构件和软件构件的层次模型
嵌入式软件构件(Embedded Software Component, ESC)是实现一定嵌入式系统功能的一组封装的、 规范的、可重用的、具有嵌入特性的软件单元,是 组织嵌入式系统的功能单位
嵌入式软件构件分为高层软件构件和底层软件构件
高层构件与硬件无关
底层构件与硬件密不可分,是硬件驱动程序的封装
中间构件和终端构件是核心构件的“外设” “外设”的驱动程序封装而成的软件构件称为底层 外设构件
高层构件
高层构件层
底层外设构件 底层内部构件 GPIO 构件 功能构件 底层构件层
MCU 头文件
中间构件 终端构件
核心 构件
硬件构件层
为该硬件构件添加与其它构件交互的输入/输出接口标识
核心构件设计规则
核心构件设计的目标是:凡是使用该MCU进行硬件系统设计 时,核心构件可以直接“组装”到系统中,无须任何改动
电源控制构件
可变频率产生构件
LCD构件
键盘构件
中间构件设计规则
中间构件是核心构件与终端构件之间通信的桥梁。
既要有接受其它构件提供的服务的接口,又要有为其他 构件提供服务的接口
核心构件、中间构件和终端构件的区别
4.3
基于硬件构件的嵌入式系统硬件电路设计
4.3.1 设计时需要考虑的基本问题
MCU的选择
MCU功能、价格、功耗、供电电压、I/O口电平 管脚数目、MCU的封装、电气性能等因素 电源 考虑系统对电源的需求
考虑芯片与器件对电源波动性的需求
考虑工作电源是使用电源模块还是使用外接电源
有关设定 导线尽可能宽,这样既可以减小阻抗,又可以防 止由于制造工艺的原因导致导线断路 导线间距离以及导线与元件间距离要尽可能地大, 这样可以有效解决焊接时短路的问题 过孔大小设定要适中 布线 布线时,应该首先对时钟和高速信号进行布线, 以确保它们的走线尽可能直接 石英晶振和对噪声特别敏感的器件下面不要走线 布板完成后一定要进行自动与人工检查
空余位置的利用
电源、地,空白处多留几排电源和地 双排孔,留出几排两孔相连的排孔,以用来扩展 或试验时焊接其他元件 固定孔,在PCB上画固定板的固定孔,一般在板 的四个角落
在完成PCB板的铺地之后,要在板的正面适当位 置标出以下信息 单位、日期、责任人、PCB板的名称、编号等
标注相关信息
将构件的需求接口放置在构件实体的左侧,提供接口放 置在右侧 终端构件是嵌入式系统中最常见的构件。
有与上一级构件交互的需求接口,因而接口标识均为斜 体标注的接口注释。
终端构件设计规则
例如LCD、LED、指示灯构件
使用硬件构件组装系统的方法 使用硬件构件化思想设计嵌入式硬件系统的过程是:
根据所拥有接口类型的不同,硬件构件分为三类
类型 核心构件 中间构件 终端构件
核心构件:只有提供接口,没有需求接口 中间构件:既有需求接口又有提供接口 终端构件:终端构件只有需求接口
需求接口 无 有 有 提供接口 有 有 无 举例 AW60最小系统 电源控制构件、232电平转换构件 LCD构件、LED构件、键盘构件
第4章 基于硬件构件的嵌入式 系统开发方法
主要内容 4.1 嵌入式系统开发所遇到的若干问题 4.2 嵌入式硬件构件的基本思想与应用方法 4.3 基于硬件构件的嵌入式系统硬件电路设计 4.4 基于硬件构件的嵌入式底层软件构件的编 程方法
4.1 嵌入式系统开发所遇到的若干问题
嵌入式系统开发主要存在以下两大问题: 硬件设计缺乏重用支持 导致硬件设计缺乏重用支持的主要原因是:目前缺少可 供硬件设计工程师们共同遵守的设计规范 驱动程序可移植性差 驱动程序的开发在嵌入式系统的开发中具有举足轻重 的地位,长期以来,开发人员在编写驱动程序时缺少软件 工程思想的支撑,软、硬件设计过程孤立,造成与硬件密 切相关的底层软件缺乏通用性,可移植性和可复用性较差, 开发过程中缺少标准化、文档化的管理,给开发人员之间 的交流以及日后系统的维护带来很大的困难
嵌入式硬件构件与软件构件的层次模型
4.4.2 底层构件的实现方法与编程思想
头文件和源程序文件两部分组成
对构件的共性和个性进行分析,抽取出构件的属性和对 外接口函数
在编写构件时,主要注意以下几方面的内容:
构件的头文件和源程序文件的主文件名一致,且为构件名
属性和操作的命名统一以构件名开头 对MCU内的模块寄存器名和端口名进行重定义 内部函数与外部函数要设计合理,函数参数个数及类型要 考虑全面 应用程序在使用底层构件时,严格禁止通过全局变量来传 递参数,所有的数据传递都要通过函数的形式参数来接收
根据系统的功能划分出若干个硬件构件
将所有硬件构件原理图“组装”在一起 为中间构件和终端构件添加接口网标
4.3.3
PCB设计基本原则
布局规划 首先要打印出相应的原理图,确定整个PCB板的 大体布局,即各个硬件构件的位置安排 PCB板的形状如无其他要求,一般为矩形,长宽 比为4:3或3:2 考虑面板上元件的放置要求。考虑边缘接口 元件放置 芯片尽可能正放。元件放置整齐。同一硬件构件 内的元件尽可能排放在一起 电源模块的滤波电容要求靠近电源,考虑元件间 的距离 PLL滤波电路应尽量靠近MCU
测量点 原理图中模块的输入输出引脚 最小系统模块中MCU的引脚 各硬件功能模块单元的输入、输出口 模块标示 PCB板上用矩形框将各个硬件构件区分开 并用汉字标出构件名(与原理图一致),并注意字体字号 铺地 在铺地前,要设定地与导线、地与引脚之间的距离,并要 求该距离尽可能大 如果电路板中有数字地和模拟地,应将它们隔离开,两者 间使用磁珠相连
第4章习题
1.简要阐述嵌入式硬件构件的基本思想及优点。 2.硬件构件如何分类?给出各类硬件构件的定义及原理图设计 要点。 3.为什么要将某些寄存器名和寄存器位在头文件中进行宏定义? 4.为什么在设计底层硬件驱动构件时,不能使用全局变量? 5.给出设计底层硬件驱动构件的基本原则,并举例说明。 6.什么叫程序复用?什么叫程序移植?怎样才能方便重用与移 植。 7.怎样方便驱动程序进行移植? 8.阐述利用硬件构件思想设计嵌入式应用系统时应该遵循的基 本原则。
4.3.2
硬件构件化电路原理图绘制的简明规则
硬件构件设计的通用规则
元器件命名格式:对于核心构件,其元器件直接编号命名, 同种类型的元件命名时冠以相同的字母前缀
为硬件构件添加详细的文字描述,包括中文名称、英文名称、 功能描述、接口描述、注意事项等,以增强原理图的可读性
将前两步产生的内容封装在一个虚线框内,组成硬件构件的 内部实体
4.4.3 硬件构件及底层软件构件的重用与移植方法
移植是指将一个系统中使用到的构件应用到另外一个系统 中。 硬件构件的重用与移植 以终端构件LCD为例,介绍硬件构件的移植方法 底层构件的移植
以SCI和LCD为例介绍底层构件的移植方法
在进行软硬件移植时,设计人员所做的改动要尽量小,而 不是不作任何改动
4.2
嵌入式硬件构件的基本思想与应用方法
什么是嵌入式硬件构件?
嵌入式硬件构件是指将一个或多个硬件功能模块、支撑电 路及其功能描述封装成一个可重用的硬件实体,并提供一 系列规范的输入/输出接口 接口的分类
根据接口之间的生产消费关系,接口可分为两类 提供接口 需求接口
硬件构件的分类