嵌入式系统及应用arm实验指导书

嵌入式系统及应用arm实验指导书

ID:11656750

大小:2.34 MB

页数:243页

时间:2018-07-13

嵌入式系统及应用arm实验指导书_第1页
嵌入式系统及应用arm实验指导书_第2页
嵌入式系统及应用arm实验指导书_第3页
嵌入式系统及应用arm实验指导书_第4页
嵌入式系统及应用arm实验指导书_第5页
资源描述:

《嵌入式系统及应用arm实验指导书》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、嵌入式系统及应用实验指导书目录实验一、MDK入门操作1实验二、GPIO实验(1)15实验二、GPIO实验(2)24实验三、DMA实验38实验四STM32中断系统实验47实验五、ADC实验(1)58实验五、ADC实验(2)70实验五、ADC实验(3)79实验六、DAC实验(1)88实验六、DAC实验(2)96实验七、定时器实验(1)106实验七、定时器实验(2)112实验七、定时器实验(3)121实验七、定时器实验(4)131实验七、定时器实验(5)144实验八、USART实验(1)155实验八、USART实验(2)171实验八、USART实验(3)17

2、7附录1:STM32F107VR引脚定义表187附录2:GPIO初始化库函数分析195附录3:实验箱电路原理图202实验一、MDK入门操作一、实验目的1.掌握MDK集成开发环境应用;2.学会新建一个MDK工程;3.学会组织和管理源文件;4.学会配置MDK参数选项。二、实验设备硬件:PC机,嵌入式ARM开发实训平台;软件:WindowsXP操作系统,RealViewMDK(KeilμVision4)集成开发环境,STM32固件库函数等。三、实验内容与操作步骤1.创建一个MDK工程(1)创建一个Demo文件夹在Demo文件下,分别建立:a)创建子文件夹Us

3、er,用于存放源程序;b)创建子文件夹Project,KEIL工程文件;在Project下依次创建Obj和List子文件夹,存放编译过程中产生的中间文件。240图1创建文件夹(1)复制源代码到Demo文件夹a)把Libraries文件夹整体复制到Demo文件夹下。这是ST的标准库,是以源代码形式提供的。提示:ST的固件库可以从ST官方网站免费下载(stm32f10x_stdperiph_lib.zip),Libraries文件夹通过解压固件库得到,本指导书中的实验所使用的标准库版本为3.1.2,随嵌入式ARM开发实训平台提供。图2复制库文件夹b)复制演

4、示程序到DemoUser文件夹。提示:演示程序由指导教师提供。240图3复制演示代码文件(1)新建一个KeilMDK工程a)启动KeiluVision4,点击菜单NewuVisionProject,新建一个工程,命名为new_project。图4创建工程文件b)选择CPU类型为STM32F107VC(是ARM开发实训平台选用的CPU型号)。图5选择芯片240a)当提示是否复制启动代码时,选择否。提示:否表示用库中的启动代码,不用Keil软件自带的启动文件代码。b)右单击Target1/执行AddGroup....命令,功能是添加Group,添加后参照

5、下图更改名称,目的便于代码管理。图6创建GROUP且更改名称提示:User:存放源代码;RVMDK:存放启动代码文件(汇编语言);StdPeriph_Driver:存放ST标准库函数文件;CMSIS:存放CMSIS接口文件(属于库的一部分)。c)在上述文件夹创建以后,依次添加文件。参照下图示进行添加:Ø在User文件夹下添加文件;文件路径:DemoLibrariesCMSISCoreCM3startuparm240图7右单击菜单命令选项图8添加的文件Ø在RVMDK文件夹下添加文件文件路径:DemoLibrariesCMSISCore

6、CM3startuparm。图9选择汇编文件(*.s)240Ø在stdPeriph_Driver文件夹下添加文件设备驱动函数文件路径:DemoLibrariesSTM32F10x_StdPeriph_Driversrc图10选择设备文件Ø在CMSIS文件下夹添加文件CMSIS接口文件路径:DemoLibrariesCMSISCoreCM3图11选择接口文件240(1)源代码程序(main.c文件),应用程序示例。#include"stm32f10x.h"/*为了使用编程书写方便,定义几个控制LED开关的宏*/#defineLED1_O

7、N(){GPIO_SetBits(GPIOD,GPIO_Pin_7);}/*PD7=1点亮LED1*/#defineLED1_OFF(){GPIO_ResetBits(GPIOD,GPIO_Pin_7);}/*PD7=0熄灭LED1*/#defineLED2_ON(){GPIO_SetBits(GPIOD,GPIO_Pin_13);}/*PD13=1点亮LED2*/#defineLED2_OFF(){GPIO_ResetBits(GPIOD,GPIO_Pin_13);}/*PD13=0点亮LED2*/#defineLED3_ON(){GPIO_SetB

8、its(GPIOD,GPIO_Pin_3);}/*PD3=1点亮LED3*/#defineLE

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。