实验一基于STM32固件库的MDK工程的建立及流水灯.docVIP

实验一基于STM32固件库的MDK工程的建立及流水灯.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验一基于STM32固件库的MDK工程的建立及流水灯

实验一 基于STM32固件库的MDK工程的建立及流水灯 一、实验类型 验证性实验。 二、实验器材 1、PC微机1台 2、MDK开发环境 三、实验目的与任务 实验目的: 1、熟悉Cortex-M3处理器开发平台MDK 2、熟悉基于STM32固件库的MDK项目的配置 3、理解STM32处理器GPIO的结构,掌握GPIO引脚的配置方法 4、熟悉GPIO的配置过程 5、熟悉MDK开发平台软件仿真环境及外设仿真方法 实验任务: 如下图,STM32F103R8T6处理器GPIOA的GPIO_Pin_6控制LED1 GPIO_Pin_7控制LED2,建立一个基于STM32固件库的MDK项目,实现对LED灯的控制,使LED1每秒闪烁1次。LED2每秒闪烁2次。 四、参考资料 1、《嵌入式系统基础及应用》第7章 GPIO部分 2、参考手册:STM32F10xxx_RM0008_CH_Rev7V3.pdf 3、数据手册:STM32F103CDE增强型系列数据手册(2009年3月).pdf 4、固件库:STM32F101xx和STM32F103xx固件函数库.pdf 五、实验基本原理 1、STM32每个GPIO引脚具有工作模有:浮空输入、带上拉输入、 带下拉输入、 模拟输入、开漏输出、推挽输出、复用功能的推挽输出、 复用功能的开漏输出等。由上图可知,若驱动LED1、LED2,需要设置相应的IO引脚为开漏输出或推挽输出。 2、对于STM32 GPIO端口的配置,涉及的寄存器的作用。 2个32bits的配置寄存器(GPIOx_CRL,GPIOx_CRH),用于配置各IO引脚的输入输出方式和速度,各位含义如下: 2个32bits的数据寄存器 (GPIOx_IDR,GPIOx_ODR),用于读取IO引脚的状态和设置IO引脚输出电位。 1个32bits的置位/复位寄存器(GPIOx_BSRR),用于置位复位某些IO引脚的原子操作。 1个16bits的复位寄存 器(GPIOx_BRR),用于复位某些引脚的原子操作 1个32bits的Lock寄存器(GPIOx_LCKR)。 3、 在STM32中如何配置片内外设使用的IO端口 ①启用相应的GPIO时钟; ②设置GPIO引脚的输入输出方式及传输速度; ③设置GPIO引脚初值 4、STM32固件库对GPIO端口定义及相关操作函数 固件库对STM32处理器的寄存器进行了定义,对外设的操作提供了丰富的函数,以下对GPIO相关的定义如下: 1)对GPIO端口的定义如下: 2)常用GPIO 库函数:GPIO_Init A)GPIO_InitTypeDef 结构体定义于文件“stm32f10x_gpio.h”: typedef struct { uint16_t GPIO_Pin; GPIOSpeed_TypeDef GPIO_Speed; GPIOMode_TypeDef GPIO_Mode; } GPIO_InitTypeDef; B)对GPIO引脚的定义如下: C)引脚输入输出方式定义如下: D)引脚传输速度定义如下: 3)常用GPIO 库函数: GPIO_SetBits 4) 常用GPIO 库函数:GPIO_ResetBits 5、该实验所涉及的时钟的操作 APB外设时钟的设置: 使用某个片内外设时,需要打开该外设的时钟, GPIO连接于APB2。STM32固件库提供了函数:RCC_APB2PeriphClockCmd()用于打开关闭连接到APB2上 所有外设的时钟。 RCC_APB2Periph 该参数被门控的APB2外设时钟,可以取下表的一个或者多个取值的组合作为该参数的值。 六、实验步骤 1、新建基于STM32固件库的工程项目 1)下载固件库 STM32F10X系列单片机固件库下载地址: /stonline/stappl/resourceSelector/app?page=resourceSelectordoctype=FIRMWAREClassID=1734 下载文件名称:stm32f10x_stdperiph_lib.zip 解压固件库得到: 2)建立工程文件夹和子文件夹 A、建立工程文件夹STM_SY1,在STM_SY1下面建立两个子文件夹: MDK 和User,MDK用于存放工程文件,USER用于存放用户源程序 B、COPY固件库目录下Libraries中所有文件夹到工程文件夹STM_SY1。至此,STM_SY1存在如下四个文件夹: C、 在MDK文件下新建Obj 和 List 两个文件用来存放编译文件和项目文件。 D、 将固件库文件夹STM32F10x_StdPeriph_Lib_V3.5.0\Pro

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档