STM32学习笔记 原创

STM32学习笔记 原创

ID:44703603

大小:605.10 KB

页数:28页

时间:2019-10-25

STM32学习笔记  原创_第1页
STM32学习笔记  原创_第2页
STM32学习笔记  原创_第3页
STM32学习笔记  原创_第4页
STM32学习笔记  原创_第5页
资源描述:

《STM32学习笔记 原创》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、STM32野火模版:CMSIS:(CortexMicrocontrollerSoftwareInterfaceStandard)是ARMCortex微控制器软件接口标准。启动文件及CortexM3所使用的库,所有ARMCortexM3架构处理器通用FWlib:STM32的片内资源的驱动,由意法公司提供USER:用户写的文件、config头文件、中断函数的h、c文件及工程文件Output:编译后的输出文件STM32库结构:Libraries:要用到的库文件都在Libraries里面,其中CMSIS同上,STM32F10x_S

2、tdPeriph_Driver则为STM32片内资源的驱动。Project:为示例与不同开发软件下的模板Utilities:ST官方开发板的外设驱动#ifdefUSE_STDPERIPH_DRIVER#include"stm32f10x_conf.h"#endif//位于stm32f10x.h一、流水灯实验学习中要查看以下文档:1.库的查询手册《stm32f10x_stdperiph_lib_um.chm》2.野火STM32管脚分配《野火M3主芯片STM32F103VET6资源分配.txt》3.实验教程《野火M3教程.pd

3、f》4.STM32手册《STM32参考手册中文.pdf》、《STM32参考手册英文.pdf》5.《CM3权威指南CnR2.pdf》本实验涉及到两个片内外设的操作:RCC(ResetandClockControl)和GPIO。RCC:这里只用到函数SystemInit()将系统时钟设置为72M,不赘述。GPIO:GPIO的初始化和GPIO的置位与清零操作。GPIO的初始化:见以下代码voidLED_GPIO_Config(void){GPIO_InitTypeDefGPIO_InitStructure;RCC_APB2Per

4、iphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_3

5、GPIO_Pin_4

6、GPIO_Pin_5;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOC,&GPIO_InitStructure);GPIO_SetBits(GPIOC,GPIO_Pin_3

7、GP

8、IO_Pin_4

9、GPIO_Pin_5);//turnoffallled}可见,GPIO的初始化用的是库函数GPIO_Init()voidGPIO_Init(GPIO_TypeDef*GPIOx,GPIO_InitTypeDef*GPIO_InitStruct)两个参数中前者是GPIO的组号,填上GPIOA-GPIOE中的一个即可。后者是GPIO设置的结构体GPIO_InitTypeDef*,该结构体中包含三个成员:GPIO_Pin、GPIO_Mode、GPIO_Speed,分别用于对具体的管脚、对GPIO功能及GPIO输

10、出速度进行配置。具体可选值的宏定义查手册。另外还有函数RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);。它指定了GPIO采用高速外设的时钟。STM32所有的IO口都是高速的,所以这句是在使用IO时必须要的一句。GPIO的赋值操作使用到库函数GPIO_ResetBits()、GPIO_SetBits()voidGPIO_ResetBits(GPIO_TypeDef*GPIOx,uint16_tGPIO_Pin)voidGPIO_SetBits(GPIO_TypeDef*

11、GPIOx,uint16_tGPIO_Pin)另外,关于GPIO操作还有许多其他库函数,我们只需查找库查询手册的Modules->StdPeriph_Driver->GPIO->GPIO_Private_Functions即可。二、SysTick实验本实验涉及到了SysTick,即系统滴答定时器,以及向量中断控制器NVIC。NVIC与CM3内核逻辑紧密相连,在包含控制寄存器和中断处理的控制逻辑外,还包含了MPU、SysTick定时器及调试控制相关的寄存器。SysTick定时器被捆绑在NVIC中,用于产生SysTick异常(

12、异常号:15)。在以前,操作系统还有所有使用了时基的系统,都必须要一个硬件定时器来产生需要的“滴答”中断,作为整个系统的时基。操作系统需要用它来为多个任务分以不同数目的时间片,实现分时复用。而此SysTick定时器即用于产生滴答中断。在STM32中,SysTick以FCLK(内部时钟,CM3上自由运行的

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

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

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