版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本书结合汽车技术发展和汽车类专业特点,按照“由简到难、循序渐进”的原则,共设置了“绪论”“汽车程序设计基础”“汽车嵌入式技术基础”三部分内容。通过本书的学习,可以从整体上加深理解汽车电子控制系统的组成和工作原理,对后续的汽车电子控制技术类课程和智能网联汽车技术类课程学习奠定良好的汽车计算机基础。
本书特色:任务驱动,理实一体,学以致用。内容组织由简到难、循序渐进,灵活采用对比法、类比法、启发法、实验法等多种教学方法,有效降低教学难度和学习难度。
本书可作为高职院校汽车类专业的汽车计算机基础教材,也可供从事相关技术的工程人员参考。汽车嵌入式技术基础
第7单元:利用GPIO实现闪灯和开关状态检测与控制功能第8单元:利用定时中断实现频闪灯第9单元:利用PWM实现灯光亮度控制第10单元:利用UART实现上位机和下位机通信第11单元:利用ADC设计简易数字电压表第12单元:利用CAN实现多机通信第7单元
利用GPIO实现闪灯和开关状态检测与控制功能
在汽车中,灯光除了用于照明,还被广泛用于状态指示(如交通信号灯、汽车指示灯、设备状态指示灯等)。在嵌入式系统中,LED小灯是必备的状态指示设备。在汽车上有很多开关(switch),可以通过开关控制用电设备。例如,在大众车系中,汽车ECU(J519)通过获取车灯开关的状态而控制对应的车灯。通过对微控制器编程,可以控制灯的状态(点亮或熄灭),也可以检测开关的状态(闭合或断开),从而实现软件干预硬件。【单元导读】单元学习目标:(1)熟悉嵌入式系统的组成及嵌入式技术学习方法。(2)熟悉车规级微控制器KEA128的资源和硬件最小系统。(3)掌握MCU的GPIO底层驱动构件使用方法。(4)掌握小灯构件和开关构件的组成及使用方法。(5)掌握嵌入式软件最小系统的组成及使用方法。(6)掌握嵌入式软件开发环境KeilMDK及目标程序下载软件J-Flash的使用方法。(7)能够利用MCU实现闪灯和流水灯的功能。(8)能够利用MCU实现对开关进行状态检测与控制的功能。第7单元
利用GPIO实现闪灯和开关状态检测与控制功能7.1.1嵌入式系统的组成
目前,ARM主要有以下3个系列的内核,对应不同的应用领域:(1)Cortex-A内核的应用处理器(ApplicationProcessor,AP),主要面向智能手机、平板电脑、智能终端等多媒体领域;(2)Cortex-R内核的实时处理器(Real-TimeProcessor,RTP),主要面向汽车电子等对实时性要求很高的领域;(3)Cortex-M内核的微控制器(MicroControllerUnit,MCU,国内也称为单片机),主要面向汽车电子、工业控制、农业控制、智能仪器仪表、智能家电、机电产品等测控领域。
在绪论中,曾介绍过嵌入式系统的概念。目前,以32位/64位ARM微处理器为核心的嵌入式系统应用越来越广泛。1、ARM微处理器的分类任务7.1熟悉嵌入式系统的组成及嵌入式技术学习方法7.1.1嵌入式系统的组成2、MCU的基本结构
MCU的基本含义:在一块芯片上集成了CPU、ROM、RAM、定时/计数器、中断系统、看门狗及通用输入输出(GPIO)、模/数(A/D)转换、数/模(D/A)转换、串行通信I/O等多种输入输出接口的比较完整的数字处理系统。CPU与其他部件交互是通过MCU内部总线实现的。任务7.1熟悉嵌入式系统的组成及嵌入式技术学习方法7.1.1嵌入式系统的组成3、以MCU为核心的嵌入式系统的基本组成任务7.1熟悉嵌入式系统的组成及嵌入式技术学习方法7.1.2嵌入式系统的知识体系和学习建议任务7.1熟悉嵌入式系统的组成及嵌入式技术学习方法
嵌入式硬件构件设计主要包括MCU硬件最小系统(硬件核心构件)设计和应用外设硬件构件(小灯LIGHT、蜂鸣器BZ、开关SW、键盘KB、数码管LED、液晶LCD等)设计。
嵌入式软件构件设计采用分层设计思想,自下而上依次是“底层驱动构件”、“应用外设软件构件”和“应用层软件构件”共3层软件设计。为了实现嵌入式系统设计的可移植和可复用,大幅度降低嵌入式技术学习难度和开发难度,嵌入式硬件和软件均需采用“构件化”设计。
其中底层驱动构件和应用外设软件构件都包括对应的.h头文件和.c源文件,而应用层软件构件包括总头文件includes.h、主程序源文件main.c和中断服务程序源文件isr.c。
通用软件构件与CPU和MCU基本无关,是服务于以上3层软件设计的。
随着技术的发展,MCU的硬件集成度越来越高,使得嵌入式硬件设计难度不断降低,因此嵌入式软件设计在整个嵌入式系统开发中所占的分量越来越大。7.1.2嵌入式系统的知识体系和学习建议
嵌入式软件设计主要采用C语言及少量的汇编语言。
嵌入式软件设计与调试是在嵌入式硬件的基础上协同进行的,其过程是在PC上利用嵌入式软件开发环境(如KeilMDK、IAR等)进行程序的编辑、编译和连接,生成工程对应的目标代码;最后将生成的目标代码通过写入器下载到嵌入式芯片中运行与调试。MCU写入器【同步练习7-1】知识巩固。任务7.1熟悉嵌入式系统的组成及嵌入式技术学习方法任务7.2熟悉KEA128的资源和硬件最小系统
微控制器S9KEAZ128AMLK(简称KEA128)是由恩智浦公司推出的基于ARMCortex-M0+(简称CM0+)内核的32位车规级MCU,它广泛应用于汽车领域。1、微控制器KEA128资源KEA128的封装形式为80LQFP(80个引脚,薄型四边形扁平封装),工作电压范围为2.7~5.5V,工作温度范围为-40~125℃,CPU工作频率最高可达到48MHz,Flash存储器容量为128KB,RAM容量为16KB,具有71个GPIO引脚,通信模块有3个UART、2个SPI、2个I2C、1个CAN,另外还有3个16位的定时器和1个12位的ADC。它支持SWD和JTAG调试。
说明:Flash存储器是只读存储器,一般被用来存放中断向量、程序代码、常数等;RAM是随机存储器,一般被用来存储全局变量、静态变量、临时变量(如汽车故障码)等。任务7.2熟悉KEA128的资源和硬件最小系统2、KEA128的引脚功能
从需求和供给的角度,把MCU的引脚分为硬件最小系统引脚和I/O端口资源类引脚两大类。(1)硬件最小系统引脚:需要服务的引脚,包括电源、复位、晶振、SWD接口等引脚。任务7.2熟悉KEA128的资源和硬件最小系统2、KEA128的引脚功能
从需求和供给的角度,把MCU的引脚分为硬件最小系统引脚和I/O端口资源类引脚两大类。(2)I/O端口资源类引脚:对外提供服务。
I/O引脚一般具有多个复用功能,在实际应用时只能使用其中的一个功能。在嵌入式系统设计中,需要根据所使用的外设(含片内外设)对MCU的引脚资源进行统筹规划,以免多个外设使用相同的引脚而相互冲突。任务7.2熟悉KEA128的资源和硬件最小系统3、KEA128的硬件最小系统
MCU硬件最小系统是可以使MCU内部程序正常运行的最小规模的电路,主要包括MCU和电源、晶振、复位、写入调试器接口等外围电路。
需要说明的是,若使用MCU内部的时钟作为系统时钟源,则外部晶振电路可省略。【同步练习7-2】知识巩固。任务7.3掌握MCU的GPIO底层驱动构件使用方法7.3.1GPIO的通用知识1、GPIO概念
GPIO(GeneralPurposeInputOutput
),通用输入/输出,它是I/O的最基本形式。
MCU的大多数GPIO引脚可以通过编程来设定其工作方式为输入或输出,称之为双向GPIO。
某个引脚作为通用输入引脚,MCU可以通过读取其内部寄存器的值“1”或“0”,以确定该引脚的输入状态是高电平还是低电平,即开关量输入。
某个引脚作为通用输出引脚,MCU可以通过向其内部寄存器写“1”或“0”,以控制该引脚输出高电平或低电平,即开关量输出。7.3.1GPIO的通用知识2、上拉电阻、下拉电阻与输入引脚的基本接法
若MCU的某个引脚通过一个电阻接电源(VCC),则该电阻被称为“上拉电阻”。
若MCU的某个引脚通过一个电阻接地(GND),则该电阻被称为“下拉电阻”。任务7.3掌握MCU的GPIO底层驱动构件使用方法7.3.1GPIO的通用知识3、输出引脚的基本接法
作为通用输出引脚,MCU内部程序向该引脚输出高电平或低电平驱动外部设备工作。输出引脚O1和O2分别采用了直接驱动和放大驱动方式。任务7.3掌握MCU的GPIO底层驱动构件使用方法7.3.2KEA128的GPIO底层驱动构件的组成及使用方法
为了实现程序的可移植和可复用,减小重复劳动,MCU底层驱动程序封装成构件。GPIO底层驱动构件由gpio.h头文件和gpio.c源文件组成,若要使用GPIO底层驱动构件,只需将这两个文件添加到所建工程的04_Driver(MCU底层驱动构件)文件夹中。见工程文件:..EmbeddedSource\03-Software\KEA128\KEA128.uvprojx
其中,gpio.h头文件主要包括相关头文件包含、一些必要的宏定义、对外接口函数声明,而gpio.c源文件则是对外接口函数的具体实现,初学者不必深究。
用户只要熟悉gpio.h头文件的内容,即可使用GPIO底层驱动构件进行编程,实现通过GPIO引脚对应用外设的检测与控制功能(如检测开关的状态、控制小灯的亮灭等)。【同步练习7-3】
学以致用。任务7.3掌握MCU的GPIO底层驱动构件使用方法任务7.4闪灯功能的设计与实现7.4.1小灯硬件构件和软件构件的使用方法1、小灯硬件构件的使用方法a)小灯硬件构件b)小灯硬件构件与MCU的引脚连接
图中虚线框内的粗体标识为硬件构件的接口注释,以便于理解该接口的含义和功能;虚线框外的正体标识为硬件构件的接口网标,具有电气连接特性,表示硬件构件的接口与MCU的引脚相连接。硬件构件在不同应用系统中移植和复用时,仅需修改接口网标。7.4.1小灯硬件构件和软件构件的使用方法2、小灯软件构件的组成及使用方法
任务7.4闪灯功能的设计与实现
小灯软件构件由
light.h
头文件
和
light.c
源文件组成,若要使用小灯软件构件,只需将这两个文件添加到所建工程的05_App(应用外设软件构件)文件夹中。
其中,light.h
头文件主要包括相关头文件的包含、小灯硬件构件相关的宏定义、小灯构件对外接口函数的声明。light.c
源文件是小灯构件对外接口函数的具体实现。见工程文件:..EmbeddedSource\03-Software\KEA128\KEA128.uvprojx
用户只要熟悉light.h头文件的内容,即可使用小灯软件构件进行编程,实现对小灯的控制功能。7.4.2嵌入式软件最小系统和闪灯的应用层程序设计1、嵌入式软件最小系统任务7.4闪灯功能的设计与实现
在嵌入式基础实践中,一般以“MCU控制小灯闪烁”作为入门实验,对应的程序框架称为“嵌入式软件最小系统”。
其中“04底层驱动构件”“05应用外设软件构件”“06通用软件构件”“07应用层软件构件”的文件都是由本构件的.h和.c文件组成。
在此框架下可通过添加其他软件构件和修改应用层程序(工程源程序)完成不同功能的软件设计。
7.4.2嵌入式软件最小系统和闪灯的应用层程序设计1、嵌入式软件最小系统任务7.4闪灯功能的设计与实现
对初学者,学习重点是:①熟悉04_Driver(MCU底层驱动构件)、05_App(应用外设软件构件)和
06_Soft(通用软件构件)这几个文件夹中的头文件内容,掌握对外接口函数的调用方法;②根据系统功能需求,进行应用层程序设计和优化,即设计07_Source(应用层软件构件)文件夹中的文件。见工程文件:..EmbeddedSource\03-Software\KEA128\KEA128.uvprojx7.4.2嵌入式软件最小系统和闪灯的应用层程序设计2、闪灯的应用层程序设计任务7.4闪灯功能的设计与实现
在嵌入式软件最小系统框架下,设计07_Source(应用层软件构件)文件夹中的文件,以实现小灯闪烁的效果。1)工程总头文件includes.h:包含04、05、06文件夹中的头文件2)主程序源文件main.c:
小灯初始化,在主循环中实现闪灯效果在工程文件中分析代码并编程:..EmbeddedSource\03-Software\KEA128\KEA128.uvprojx7.4.3程序的下载与测试1.编译工程文件,生成MCU可执行的代码文件(.hex文件)任务7.4闪灯功能的设计与实现2.将编译生成的.hex文件下载至目标MCU中,运行程序【同步练习7-4】请通过修改主程序的代码,分别完成:(1)改变小灯闪烁的频率;(2)控制其他小灯闪烁;(3)实现流水灯的效果。7.5.1开关硬件构件和软件构件的使用方法1、开关硬件构件的使用方法a)开关硬件构件b)开关硬件构件与MCU的引脚连接任务7.5开关状态检测与控制功能的设计与实现7.5.1开关硬件构件和软件构件的使用方法2、开关软件构件的的组成及使用方法
开关软件构件由
sw.h头文件
和
sw.c
源文件组成,若要使用开关软件构件,只需将这两个文件添加到所建工程的05_App(应用外设软件构件)文件夹中。
其中,sw.h
头文
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水泥混凝土面层施工工艺及施工方法
- 起重机械作业人员考试题库及答案
- 闭路电视监控系统施工方案及技术措施
- 2025年施工员之设备安装施工专业管理实务题库附答案
- 动态好氧发酵系统安装调试施工方案及技术措施
- 交通运输多式联运系统设计与优化方案
- 构建健康堡垒筑牢心理免疫防线小学主题班会课件
- 一年级买书题目及答案大全
- 智勇双全共同成长-小学主题班会课件安排
- 关于处理客户退款申请的通知函(4篇)
- 城镇给水排水技术规范完整版2025
- 轧钢机械装备及其智能化技术 课件 第7章 剪切机
- 输血相容性检测操作规程
- 国家开放大学Python程序设计形考任务实验六-互联网评论数据分析及其展示综合案例
- 四川省成都市第十一中学2024-2025学年高一上学期入学分班质量检测数学试题(原卷版)
- 注册安全工程师建筑施工专业实务
- 岩浆岩岩石标本、图片
- 湖北省荆门市2023-2024学年七年级下学期6月期末考试生物试题
- 中西方音乐文化比较
- 苏教版四年级科学下册单元测试卷及答案(全册)
- 现代控制理论试卷及答案
评论
0/150
提交评论