嵌入式实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《嵌入式系统导论》实验报告

学院:

学号:

姓名:

上海工程技术大学

电子电气工程学院

实验一GPIO(按键和LED)实验

一、实验要求

1 、掌握基于STM32F103微控制器的嵌入式系统、仿真器和开发用PC机之间的连接方法,能够搭建基于STM32F103微控制器的嵌入式系统交叉开发环境。

2 、熟悉常用的嵌入式开发工具KEIL MDK或IAR EWARM的操作环境和基本功能(包括编辑、编译、链接、调试和下载等),学会创建、配置和管理STM32工程,掌握嵌入式程序的基本调试方法,学会使用逻辑分析仪窗口和外设窗口等信息窗口调试嵌入式程序。

3 、理解LED和按键的构件原理,学会设计它们与微控制器间的接口电路

4 、掌握STM32F103微控制器GPIO的工作原理,熟悉STM32的GPIO库函数

5 、学会使用STM32的GPIO库函数在KEIL MDK或IAR EWARM下开发基于LED和按键的简单嵌入式应用程序

二、实验环境

1 、硬件:

ALIENTEK STM32F103嵌入式开发板

2 、软件:

KEIL MDK或IAR EWARM

三、实验内容

1 、流水灯实验一:

在KEIL MDK或IAR EWARM 中建立STM32工程,并使用GPIO库函数和延时循环设计基于无限循环架构的嵌入式应用程序,使开发板上的红色LED以一定周期闪烁。

采用软件仿真的方式调试程序,通过“Logic Analyzer”,观察程序模拟运行时连接红色LED的引脚PA8上的输出波形。

采用硬件下载的方式调试程序,观察程序下载硬件运行时红色LED的闪烁情况。

2 、按键控制LED实验:

在KEIL MDK或IAR EWARM 中建立STM32工程,并使用GPIO库函数设计基于无限循环架构的嵌入式应用程序,实现以下功能:当按键KEY0按下时,目标板上红色LED点亮;当按键KEY0释放时,目标板上红色LED熄灭。

采用软件仿真的方式调试程序,通过“Logic Analyzer”和“Peripherals→GPIOC”,观察程序模拟运行时连接红色LED的引脚PA8和连接按键KEY0的PC5上的输出波形。

采用硬件下载的方式调试程序,观察程序下载硬件运行时按键KEY0按下和释放时红色LED的点亮和熄灭情况。

四、硬件设计

1 、发光二极管(红色LED)、按键(KEY0)与嵌入式微控制器(STM32F103)的接口电路

五、软件设计

1 、流水灯实验一程序:

3 、按键控制LED实验程序:

六、实验结果

1 、流水灯实验一

1 )软件模拟仿真

用连接红色LED的PA8引脚的输出信号波形图描述软件仿真的运行结果

2 )下载硬件运行

用文字或图片描述程序在STM32F103微控制器上的运行结果

STM32F103微控制器上的运行结果为:LED灯点亮一段时间后熄灭并且循环点亮

2 、按键控制LED实验

1 )软件模拟仿真

用连接红色LED的PA8和连接按键KEY0的PC5的引脚信号波形图描述软件仿真的运行结果

2 )下载硬件运行

用文字或图片描述程序在STM32F103微控制器上的运行结果

按下按钮LED灯点亮,松开按钮后LED灯熄灭

七、实验思考

1 、依次连接按键KEY0、KEY1和WK_UP的STM32引脚PA13、PA15和PA0的复用功能:

1 )PA13、PA15:

由于PA13和PA15复位时默认设置为调试接口引脚(JTAG/SW),所以观察实验结果时先关闭开发板电源,然后拔下开发板上连接的仿真器接口,接着重新打开开发板电源观察程序运行结果。

2 )PA0:

由于PA0外接跳线连接到温度传感器DS18B20,所以在做按键KEY和外部中断EXTI实验时,先拔下开发板上PA0与DS18B20的跳线。

实验二定时器实验

一、实验目的

1 、掌握STM32的TIMER工作原理,熟悉STM32的TIMER库函数

2 、学会使用STM32库函数在KEIL MDK或IAR EWARM下开发基于TIMER的嵌入式应用程序

3 、掌握嵌入式系统中延时的实现方法和主要应用

4 、学会在嵌入式开发工具(KEIL MDK或IAR EWARM)中使用单步∕全速运行、设置断点和观察变量∕寄存器等方法调试嵌入式应用程序

二、实验环境

1 、硬件:

ALIENTEK STM32F103嵌入式开发板

2 、软件:

KEIL MDK或IAR EWARM

三、实验内容

1 、流水灯实验二:

在KEIL MDK或IAR EWARM 中建立STM32工程,使用GPIO和TIMER库函数,设计基于无限循环架构的嵌入式应用程序,使目标板上红色LED按固定时间一直闪烁,其中红色LED点亮和熄灭的时间各为x秒(x=学生学号最后两位/10,如对于学号为021110223的学生,x=23.0/10.0=2.3秒)。同时,在主程序中定义一个32位无符号变量CountOfToggle 用来统计红色LED闪烁的次数,并且每当红色LED完成一次闪烁时,便在调试窗口中输出该变量的值。

采用软件仿真的方式调试程序,当程序模拟运行时,通过设置断点、使用“Logic Analyzer”等方法观察连接红色LED的引脚PA8上的输出波形,并使用“Debug Viewer”监测用来记录红色LED闪烁次数的32位无符号变量CountOfToggle的变化情况。

采用硬件下载的方式调试程序,观察程序下载硬件运行时红色LED的闪烁情况。

2 、PWM输出实验:

在KEIL MDK或IAR EWARM 中建立STM32工程,使用GPIO和TIMER库函数,设计基于无限循环架构的嵌入式应用程序,实现以下功能:使用PWM输出达到部分点亮红色LED 的效果——即在连接红色LED引脚PA8(TIM1的通道1)上输出频率为20kHz、占空比(即正脉冲时间与信号周期的比值)为94%的矩形脉冲信号,如下图所示。

采用软件仿真的方式调试程序,当程序模拟运行时,使用“Logic Analyzer”观察连接红色LED的引脚PA8上的输出波形。

采用硬件下载的方式调试程序,观察程序下载硬件运行时红色LED的亮度情况,注意与实验一中完全点亮的红色LED的亮度比较。

相关文档
最新文档