2015嵌入式应用实验讲义

更新时间:2023-09-26 14:30:02 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

嵌入式应用实验讲义

嵌入式应用实验讲义

适用专业:电子、通讯

主讲教师:

辽宁大学教务处制 二零一五年三月

1

嵌入式应用实验讲义

课 程 简 介

2

现代电子学实验讲义 3

目 录

实验一 MDK 编程环境 实验二 GPIO实验 实验三 中断 实验 4 6 7 实验四 实验五 UART实验六 ADC实验七

定时器实验 实验 与DMA实验综合实验 3

10 12 14

16

现代电子学实验讲义 4

实验一 MDK 编程环境

一、 实验目的及原理

学习MDK编程环境的使用方法,熟练掌握使用MDK编程环境建立STM32工程模板、开发STM32应用程序、通过Jlink编程器调试程序。

1.概述 Keil MDK,也称MDK-ARM,Realview MDK、I-MDK、uVision4、uVision5 等。目前Keil MDK 由三家国内代理商提供技术支持和相关服务。

Keil是德国知名软件公司Keil(现已并入ARM 公司)开发的微控制器软件开发平台,是目前ARM内核单片机开发的主流工具。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器在内的完整开发方案,通过一个集成开发环境(uVision)将这些功能组合在一起。 Keil MDK为基于Cortex-M、Cortex-R4、ARM7、ARM9处理器的设备提供了一个完整的开发环境。 其专为微控制器应用而设计,不仅易学易用,而且功能强大,能够满足大多数苛刻的嵌入式应用。 MDK-ARM有四个可用版本,分别是MDK-Lite、MDK-Basic、MDK-Standard、MDK-Professional。所有版本均提供一个完善的C / C++开发环境,其中MDK-Professional还包含大量的中间库。 2013年10月,正式推出Keil MDK v5,该版本使用uVision5 IDE集成开发环境,是目前针对ARM微控制器,尤其是ARM Cortex-M内核微控制器最佳的一款集成开发工具。

2.MDK功能特点 ① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨ ⑩ 11 12

完美支持Cortex-M、Cortex-R4、ARM7和ARM9系列器件。 行业领先的ARM C/C++编译工具链

确定的Keil RTX ,小封装实时操作系统(带源码) μVision5 IDE集成开发环境,调试器和仿真环境 TCP/IP网络套件提供多种的协议和各种应用 提供带标准驱动类的USB 设备和USB 主机栈

为带图形用户接口的嵌入式系统提供了完善的GUI库支持

ULINK VVgfrbrpro可实时分析运行中的应用程序,且能记录Cortex-M指令的每一次执行 关于程序运行的完整代码覆盖率信息

执行分析工具和性能分析器可使程序得到最优化

大量的项目例程帮助你快速熟悉MDK-ARM强大的内置特征 符合CMSIS (Cortex微控制器软件接口标准)

注意:

MDK-Lite(32 KB)版可任意下载使用,不需要序列号或许可密钥。MDK-Lite通过使用一个有效的产品序列号可以转换成其他MDK-ARM版本。 3.MDK参考手册:

① 《神舟王STM32F103ZET用户手册v2.0(2013年8月)》第二、三章 ② 《安富莱_STM32开发板(V3专业版)_用户手册(V1.4)》第三章 ③ 《野火零死角玩转STM32-V2》——基础入门篇第二、三、四章

4

现代电子学实验讲义 5

④ ⑤ ⑥ ⑦ ⑧ ⑨ 《STM32最基础模板--如何从零开始新建 STM32F407 工程模板》 《原子STM32不完全手册-库函数版本_V3.0》第三、四章 《STM32神舟开发板短视频》

《安富莱STM32开发板视频教程》 《启航开发板视频》第一讲

《战舰STM32开发板基础视频教程》

二、 实验用品及设备

STM32F103开发板,Jlink V8下载器,PC。

三、 实验内容及步骤

① 阅读文档,了解引导代码和固件库的功能和使用方法。

② 建立STm32工程模板,在工程文件夹下包括以下子文件夹Doc(说明文档)、Libraries(固件库、引导代码)、Listing(List文件)、Output(输出文件)、Project(工程文件)、User(用户文件),在MDK中设置相应的路径。了解编译器中宏定义的含义。

③ 在STm32工程中建立以下代码组:STARTUP(引导代码组)、CMSIS(内核代码组)、FWLB(固件库组)、USER(用户代码组)、DOC(说明文档组),将相应的代码文件添加到对应的组中。

④ 应用固件库例程,尝试MDK编译、模拟、仿真、调试等工作方法。 ⑤ 将程序下载到STM32开发板,观察运行现象。

四、 实验思考题

1.从 STM32 固件库的实现原理上思考库到底是什么?为什么要用库?用库与直接配置寄存器的区别是什么?

5

现代电子学实验讲义 6

实验二 GPIO实验

一、实验目的及原理

进一步了解STM32的开发环境,掌握STM32固件库的使用方法。熟悉stm32内部结构,掌握GPIO引脚的工作原理。

参考手册: ① ② ③ ④ ⑤ ⑥

《神舟王STM32F103ZET用户手册v2.0(2013年8月)》第四章 《STM32神舟IV号用户手册20140905版》5.10

《野火零死角玩转STM32-V2》——基础入门篇第五、六、七章 《原子STM32不完全手册-库函数版本_V3.0》第六、七章 《启航开发板视频》第3讲

《战舰STM32开发板基础视频教程》实验一、二、三

二、实验用品及设备

STM32F103开发板,Jlink V8下载器,PC。

三、实验内容及步骤

① 根据图1电路,设计流水灯程序,将4个LED一次点亮;

② 根据图2电路,设计蜂鸣器程序,使蜂鸣器按不同频率鸣响; ③ 根据图3电路,设计键盘程序,通过按键控制LED和蜂鸣器工作;

图 1

6

现代电子学实验讲义 7

图 2

图 3

四、实验思考题

① ② ③ ④ ⑤ ⑥

Stm32的引脚重映射功能是什么?如何起 作用?怎样进行编程设计? 如何使用编码(4*4)按键;

如何处理多按键同时触发的情况;

如何处理按键按下时由机械原因产生的电平抖动现象;

如何处理按键长按状态;如果由于按键损坏造成按键长按,赢如何避免系统死机; 如何应用发光LED,产生呼吸灯效果;

7

现代电子学实验讲义 8

实验三 中断实验

一、实验目的及原理

进一步了解STM32的开发环境,掌握STM32固件库的使用方法。熟悉stm32内部结构,掌握STm32中断系统的工作原理和编程方法。

参考手册: ① ② ③ ④ ⑤ ⑥

《神舟王STM32F103ZET用户手册v2.0(2013年8月)》第四章 《STM32神舟IV号用户手册20140905版》5.10

《野火零死角玩转STM32-V2》——基础入门篇第八章 《原子STM32不完全手册-库函数版本_V3.0》第六、七章 《启航开发板视频》第3讲

《战舰STM32开发板基础视频教程》实验一、二、三

二、实验用品及设备

STM32F103开发板,Jlink V8下载器,PC。

三、实验内容及步骤

① 根据实验二按键电路设计程序,使用中断方式采集按键输入; ② 通过按键控制LED灯的亮灭和蜂鸣器的鸣响;

四、实验思考题

为什么要使用中断方式控制按键,有什么优点和缺点?

8

现代电子学实验讲义 9

实验四 定时器实验

一、实验目的及原理

熟练掌握STM32的开发环境和STM32固件库的使用方法。熟悉stm32内部结构,掌握STm32 SysTick、RTC和定时器的工作原理和编程方法。

注意:

① 区别于 SysTick 一般只用于系统时钟的计时,STM32 的定时器外设功能强大得超出想像,《STM32 参考手册》中仅对定时器的介绍就已经占了 100 多页。STM32 一共有 8个都为 16 位的定时器。其中 TIM6、TIM7 是基本定时器 ;TIM2、TIM3、TIM4、TIM5 是通用定时器 ;TIM1 和 TIM8 是高级定时器。这些定时器使 STM32 具有定时、信号的频率测量、信号的 PWM 测量、PWM 输出、三相 6 步电机控制及编码器接口等功能,都是专门为工控领域量身定做的。

② RTC和BKP的关系。

参考手册: ① ② ③ ④ ⑤ ⑥

《神舟王STM32F103ZET用户手册v2.0(2013年8月)》第四章 《STM32神舟IV号用户手册20140905版》5.10

《野火零死角玩转STM32-V2》——基础入门篇第八章 《原子STM32不完全手册-库函数版本_V3.0》第六、七章 《启航开发板视频》第3讲

《战舰STM32开发板基础视频教程》实验一、二、三

二、实验用品及设备

STM32F103开发板,Jlink V8下载器,PC。

三、实验内容及步骤

① Systick时钟:使用中断和查询两种方式应用Systick定时,使LED灯以1HZ频率闪烁,亮与灭的时间比为一比三;

② RTC时钟:设置系统时间,每次系统复位通过串口或LCD显示一次系统时间; ③ 定时器:完成定时、PWM输出、频率测量等基本功能。

四、实验思考题

① RTC和BKP的关系。

② STM32定时器共有多少种功能。

③ 基本定时器、通用定时器和高级定时器有什么区别。

9

现代电子学实验讲义 10

实验五 UART实验

一、实验目的及原理

熟练掌握STM32的开发环境和STM32固件库的使用方法。熟悉stm32内部结构,掌握STm32 UART的工作原理和编程方法。

参考手册: ① ② ③ ④ ⑤ ⑥

《神舟王STM32F103ZET用户手册v2.0(2013年8月)》第四章 《STM32神舟IV号用户手册20140905版》5.10

《野火零死角玩转STM32-V2》——基础入门篇第八章 《原子STM32不完全手册-库函数版本_V3.0》第六、七章 《启航开发板视频》第3讲

《战舰STM32开发板基础视频教程》实验一、二、三

二、实验用品及设备

STM32F103开发板,Jlink V8下载器,PC。

三、实验内容及步骤

使用查询方式编写USART发送、接收程序。 使用中断方式编写USART发送、接收程序。 使用DMA方式编写USART发送、接收程序。 编写多机通讯程序。

a) 点对点通讯协议一:AddrA(目的地址1字节)、AddrS(源地址1字节)、Com(命令1字节)、Len(数据长度1字节)、D0~Dn(数据Len个字节)、CRC(校验和1字节)。用十六进制数发送。

b) 广播通讯协议二:$(引导符1字节)、COM(命令n个字节)、Strings(通讯字符串n字节)、*(结束符1字节)。用ASCII码发送。 ① ② ③ ④

四、实验思考题

① 查询、中断、DMA三种方式的优缺点。 ② 两种通讯协议的优缺点

10

本文来源:https://www.bwwdw.com/article/5xqd.html

Top