1、嵌入式实验指导书 修改60602嵌入式系统技术及应用实验指导书(第3版)郑普亮 编写西安建筑科技大学信控学院智能建筑与楼宇自动化实验室2014年5月目 录1 课程简介、实验项目及学时安排 11.1 课程简介 11.2 实验项目及学时安排 12 实验仪器仪表设备简介 22.1 嵌入式系统实验箱 22.2 其它实验设备 23 嵌入式系统技术及应用课程实验 33.1 实验1 系统认识实验 33.2 实验2 定时器实验 103.3 实验3 PWM发生器实验 133.4 实验4 16*16 LED点阵显示汉字实验 151 课程简介、实验项目及学时安排1.1 课程简介嵌入式系统广泛应用于仪器仪表、工业控制
2、、汽车电子等多个领域,是一个综合性的快速发展的技术方向。课程以ARM Cortex-M3系列处理器为主,着重介绍了嵌入式系统设计的基本概念、基于ARM处理器的体系结构、ARM微处理器的编程模型与指令系统、嵌入式操作系统及相关的接口技术。通过对本课程的学习,能够使学生深刻了解ARM处理器的工作原理,熟练掌握ARM微处理器的指令系统,以及嵌入式系统软硬件设计基本方法,进而加强学生独立设计能力和创新能力的培养。1.2 实验项目及学时安排本课程的实验目的是使学生掌握ARM指令系统及基于C语言和驱动程序库的程序设计方法,掌握ARM微处理器各组成部分工作原理及应用,培养学生对ARM微处理器的应用程序与硬件
3、电路的设计能力,提高学生分析和解决实际问题的能力,从而为学生今后走向工作岗位、从事相关专业领域的科学研究和技术开发打下扎实的基础。所以安排了验证性、设计性和综合性不同属性的实验项目。序号实 验 项 目学时实 验 性 质验证综合设计1系统认识实验22定时器实验23PWM发生器实验2416*16 LED点阵显示汉字实验2注:实验项目根据实验教学安排选取。2 实验仪器仪表设备简介2.1 嵌入式系统实验箱EL-EMCU-I型教学实验系统是属于一种综合的教学实验系统,该系统支持8位的8051 / C8051F021等型号、16位的MSP430系列 / AVR系列以及基于Cortex-M3内核的32位群星
4、系列ARM处理器,实现了多模块的应用实验。在实验板上有丰富的外围扩展资源,可以完成基于CPU硬件资源的基础性实验、多种串行总线类实验以及CAN总线实验等等。实验箱底板的平面框图如下图2.1所示:上位机2.2 其它实验设备微型计算机 Aspire T135、数字万用表、数字示波器。3 嵌入式系统技术及应用课程实验3.1 实验1 系统认识实验一、实验目的1. 了解Cortex-M3的GPIO使用及其相关的API函数;2. 掌握Cortex-M3读取GPIO引脚状态的方法。3. 掌握Cortex-M3的GPIO引脚输出控制的方法。二、实验原理、内容及步骤实验原理1、GPIO开关量输入将GPIO连接数
5、字开关量对应的管脚设置在输入状态;然后,写一个循环,不停地去检测输入引脚的状态。2、GPIO输出驱动继电器(或光电隔离器)将相关的GPIO设置成输出状态,并且要注意配置输出的驱动电流大小;然后,写一个循环,依次输出变化的高低电平,从而控制继电器及光电隔离器的关断与打开。实验内容:1. 编程实现读取GPIO引脚上对应的开关量状态,改变开关量,观察能否成功读回;2. 编程实现Cortex-M3的GPIO引脚驱动继电器及光电隔离器,观察继电器的动作以及发光管的亮灭变化;实验步骤: 1)在PC机上打开IAR环境,并打开“源程序”文件夹GPIO_INandOUT的工程文件GPIO_In_Out.ewp,
6、并按图3.1至图3.8完成环境设置,并完善程序,然后编译程序,并生成可执行文件GPIO_In_Out.elf。2)打开PC机上的Proteus环境,并打开“仿真电路”文件夹中的设计文件“实验1.DSN”。双击MCU图标,按图3.9所示,指定程序文件GPIO_In_Out.ewp后,开始仿真。然后拨动开关,观察输入高低电平时继电器、光耦以及其他GPIO的状态变化。图3.1图3.1中,在Workspace窗口中一定要先选中工程名,然后再选择Project-Options。图3.2因为在Proteus中,提供的Luminary Cortex-M3芯片型号有限,结合实验要实现的功能,此处选择LM3S3
7、17。图3.3图3.4图3.5图3.6图3.7图3.8图3.9三、实验仪器设备及实验注意事项1. 实验设备:计算机。2. 实验前必须做好预习,并做出必要的计算和记录用的表格;3. 实验开始前先检查仪器设备是否完好;4. 实验中如发现异常(如冒烟、异味、冒火等非正常现象),应立即切断电源,并报告指导教师,仔细查找原因,问题解决后,方可继续进行实验;5. 实验完毕应先关掉电源,将所用仪器设备恢复原貌,并清理卫生后方可离开。四、实验报告要求1. GPIO的工作原理;2. 写出创建新工程的步骤; 3. 写出采用API函数和驱动库,进行GPIO输入输出驱动的步骤;4. 实验中存在的问题及其处理方法;5.
8、 收获和体会。五、预习要求及思考题预习要求1. GPIO的工作原理;2. GPIO库函数;思考题1. GPIO的推挽输出和开漏输出在应用上有何区别? 2. 如何解决开漏模式下上拉电压不足的问题?3. 施密特触发输入有何作用?3.2 实验2 定时器实验一、实验目的1. 了解Cortex-M3的定时/计数器使用及其相关的API函数;2. 掌握Cortex-M3的定时/计数器使用方法与关键步骤;3. 了解Cortex-M3的看门狗定时器使用及其相关的API函数; 4. 掌握Cortex-M3的看门狗定时器使用方法与关键步骤。二、实验原理、内容及步骤实验原理1)计数器实验首先,将相应的定时/计数器配置
9、好(使能,计数初值的装载等);然后,注册相应的中断,编写中断服务程序;最后,使能中断,进入一个死循环中,当计数满5次后,计数器溢出,触发标志位,产生中断,进入到中断服务程序中执行。2)秒时钟发生器实验首先,将相应的定时/计数器配置好(使能,定时初值的装载等);然后,注册相应的中断,编写中断服务程序;最后,使能中断,进入一个死循环中,当定时时间到后,产生中断,进入到中断服务程序中执行。3)看门狗定时器实验首先,使能看门狗定时器的定时功能,装载初值;然后,注册相应的中断,编写中断服务程序;最后,使能中断,进入一个死循环中,当时间到后,产生中断,进入到中断服务程序中执行,即翻转一个GPIO引脚电平,
10、产生方波输出。 实验内容1)计数器实验编程实现利用Cortex-M3的定时/计数器引脚对外部脉冲进行计数,每计数满5个后产生计数中断。2)秒时钟发生器实验编程实现利用Cortex-M3的定时/计数器的精确定时功能,产生一个频率为0.5Hz的时钟输出。3)看门狗定时器实验编程实现利用Cortex-M3的看门狗定时器功能,产生一个方波输出。实验步骤1)计数器实验(1)在PC机上打开IAR环境,并打开实验程序文件夹COUNTER下的工程文件COUNTER.ewp,参照图3.1至图3.8完成工程环境设置,并生成可执行文件COUNTER.elf。(2)打开PC机上的Proteus环境,按图3.10绘制原
11、理图,并命名为“实验2(Timer)COUNTER.DSN”。双击MCU图标,按图3.9所示,指定程序文件COUNTER. ewp后,开始仿真。按下5次按键后观察LED灯的变化情况,再次按下5下后,观察LED灯的变化。图3.10 计数器实验原理图2)秒时钟发生器实验(1)在PC机上打开IAR环境,并打开实验程序文件夹Timer_Second下的工程文件Timer_Second.ewp,参照图3.1至图3.8完成工程环境设置,并生成可执行文件Timer_Second.elf。(2)打开PC机上的Proteus环境,按图3.11绘制原理图,并命名为“实验2(Timer)Timer_WDG.DSN”
12、。双击MCU图标,按图3.9所示,指定程序文件Timer_Second.ewp后,开始仿真。观察LED灯的变化;图3.11 秒时钟发生器和看门狗实验原理图3)看门狗定时器实验(1)在PC机上打开IAR环境,打开实验程序文件夹WDT_Timer(未启用看门狗复位)下的工程文件WDT_Timer.ewp,参照图3.1至图3.8完成工程环境设置,并生成可执行文件WDT_Timer.elf。(2)打开PC机上的Proteus环境,并使用设计文件“实验2(Timer)Timer_WDG.DSN”。双击MCU图标,按图3.9所示,指定程序文件WDT_Timer.ewp后,开始仿真。观察LED灯的变化。(3
13、)在PC机上打开IAR环境,打开实验程序文件夹WDT_Timer(启用看门狗复位)下的工程文件WDT_Timer.ewp,参照图3.1至图3.8完成工程环境设置,在main.c中修改程序,使能看门狗复位功能,并补充喂狗程序,使得程序正常运行时,不会因看门狗中断产生复位。(4)打开PC机上的Proteus环境,并使用设计文件“实验2(Timer)Timer_WDG.DSN”。双击MCU图标,按图3.9所示,指定程序文件WDT_Timer.ewp后,开始仿真。观察LED灯的变化。(5)修改WDT_Timer(启用看门狗复位)文件下main.c程序,在主循环内,人为增加延时,使得看门狗产生复位中断。
14、三、实验仪器设备及注意事项1. 实验设备:计算机;2. 实验前必须做好预习,并做出必要的计算和记录用的表格;3. 实验开始前先检查仪器设备是否完好;4. 实验中如发现异常(如冒烟、异味、冒火等非正常现象),应立即切断电源,并报告指导教师,仔细查找原因,问题解决后,方可继续进行实验;5. 实验完毕应先关掉电源,将所用仪器设备恢复原貌,并清理卫生后方可离开。四、实验报告要求1. 给出计数器实验、秒时钟发生器实验和看门狗实验的程序;2. 给出相关寄存器参数的配置;3. 实验中存在的问题及其如何处理;4. 收获和体会。五、预习要求及思考题预习要求1. 掌握计数器和定时器工作原理;2. 掌握看门狗定时器
15、工作原理及使用;3. 学习相关API函数。思考题1、如何得到其它时间(如:2s、3s等)的定时。2、计数器的初值是如何得到的,中断的注册是如何完成的。3.3 实验3 PWM发生器实验一、实验目的1. 了解Cortex-M3的PWM使用及其相关的API函数;2. 掌握Cortex-M3的PWM使用的方法与步骤。二、实验原理、内容及步骤实验原理配置PWM相关的控制参数,使能PWM外设,设定源时钟和比较寄存器以及死区寄存器,设置占空比,最后使能PWM发生器。实验内容编程配置Cortex-M3的PWM功能参数,输出一定占空比的PWM波形。实验步骤(1)在PC机上打开IAR环境,打开实验程序文件夹PWM
16、,按照“IAR使用指南.pdf”中的说明,创建新的工程,将PWM文件夹下源程序文件main.c、startup.c、systemInit.c、systemInit.h以及库文件driverlib.r79加入工程,参照图3.1至图3.8完成工程环境设置,并生成可执行文件。(2)打开PC机上的Proteus环境,按图3.12绘制原理图,并命名为“实验3(PWM).DSN”。双击MCU图标,按图3.9所示,指定程序文件后,开始仿真。用示波器观察MCU部分的PWM0及PWM1输出波形,修改比较寄存器的值,再用示波器观察PWM0及PWM1波形占空比的变化情况。(3)修改源程序,采用递减计数模式,生成占空
17、比为50%的左对齐PWM波。(4)修改源程序,生成带死区延迟的PWM波。三、实验仪器设备及注意事项1. 实验设备:计算机;2. 实验前必须做好预习,并做出必要的计算和记录用的表格;3. 实验开始前先检查仪器设备是否完好;4. 实验中如发现异常(如冒烟、异味、冒火等非正常现象),应立即切断电源,并报告指导教师,仔细查找原因,问题解决后,方可继续进行实验;5. 实验完毕应先关掉电源,将所用仪器设备恢复原貌,并清理卫生后方可离开。图3.12 PWM实验原理图四、实验报告要求1. 阐述PWM模块工作原理;2. 完成PWM实验所需寄存器配置参数;3. 实验中存在的问题及如何处理;4. 收获及体会。五、预
18、习要求及思考题预习要求1. 掌握PWM模块工作原理和实现PWM的方法;2. 学习相关API函数。思考题1. PWM发生器模块包括哪些部件,每个部件的作用是什么?2. PWM控制器模块的作用是什么?3. Stellaris系列ARM的PWM模块可用于哪些场合?3.4 实验4 16*16 LED点阵显示汉字实验一、实验目的1学习Cortex-M3的GPIO使用及其相关的API函数;2掌握16*16 LED点阵显示汉字的原理及其控制方法。二、实验原理、内容及步骤实验原理配置Cortex-M3的GPIO端口,用GPIO端口控制74LS138译码产生16位行选通信号,控制74HC595(串转并的方式)传
19、送16位的显示数据。实验内容用Cortex-M3的GPIO控制74LS138和74HC595,即控制行、列扫信号,来驱动16X16 LED点阵显示多个不同的汉字。实验步骤(1)在PC机上打开IAR环境,打开实验程序文件夹LED(信控学院),按照“IAR使用指南.pdf”中的说明,创建新的工程,将LED(信控学院)文件夹下源程序文件main.c、startup.c、systemInit.c、systemInit.h以及库文件driverlib.r79加入工程,参照图3.1至图3.8完成工程环境设置,并生成可执行文件。(2)打开PC机上的Proteus环境,按图3.13绘制原理图,“实验4(LED
20、)(信控学院).DSN”。双击MCU图标,按图3.9所示,指定程序文件后,开始仿真。观察LED显示的字符。(3)用字模工具PCtoLCD2002,按照图3.14的格式生成自己的姓名,并修改程序,进行显示。三、实验仪器设备及注意事项1. 实验设备:计算机;2. 实验前必须做好预习,并做出必要的计算和记录用的表格;3. 实验开始前先检查仪器设备是否完好;4. 实验中如发现异常(如冒烟、异味、冒火等非正常现象),应立即切断电源,并报告指导教师,仔细查找原因,问题解决后,方可继续进行实验;5. 实验完毕应先关掉电源,将所用仪器设备恢复原貌,并清理卫生后方可离开。图 3.13 16*16 LED点阵显示汉字实验原理图图3.14 字模程序设置四、实验报告要求1. 绘制电路原理图; 2. 写出实验程序;3. 实验中存在的问题及其如何处理;4. 收获和体会。五、预习要求及思考题预习要求1. 熟悉74LS138和74HC595的工作原理和特性;2. 熟悉汉字驱动显示原理;思考题1. 简述LED点阵显示汉字的原理。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1