- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
stm32部分模块编程步骤
说明:(只要是有关引脚的功能必须先配置GPIO端口)
一.对于GPIO编程
步骤:1.使能IO口时钟。调用函数为RCC_APB2PeriphClockCmd();(注意:结构体申明必须放在使能时钟语句之前)
2.初始化IO口参数。调用函数GPIO_Init();
3.操作IO。
#include led.h
void LED_Init(void)
{ //PB.5
GPIO_InitTypeDef GPIO_InitStructure; //定义GPIO的初始化结构体
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOD, ENABLE);//使能相应的引脚时钟
/*******GPIO结构体中的三个参数赋值********************/
GPIO_InitStructure. GPIO_Pin= GPIO_Pin_5;
GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode= GPIO_Mode_Out_PP;
GPIO_Init(GPIOB, GPIO_InitStructure);//初始化GPIO引脚PB.5
//PD.6 | PD.3
GPIO_InitStructure. GPIO_Pin= GPIO_Pin_6 | GPIO_Pin_3;
GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode= GPIO_Mode_Out_PP;
GPIO_Init(GPIOD, GPIO_InitStructure);//初始化PD.6,PD.3
}
二.对于定时器TIMx 产生PWM波编程
步骤:1.开启TIMx时钟以及复用功能时钟,配置相关引脚为IO复用输
出(若为默认引脚复用则可以不用配置)。
2.设置TIMx通道CHy重映射到相应IO引脚上;
3.初始化TIMx,设置TIMx的ARR和PSC;
4.设置TIMx的PWM模式,使能TIMx的CHy输出;
5.使能TIMx;
6.修改TIMx_CCRy来控制占空比。(可以修改TIM_OCInitStructure.TIM_Pulse或调用函数 TIM_SetCompare2()).
#include tim.h
void TIM_PWM_Init(u16 aarr,u16 psc)
{ //PB.5--TIM3_CH2
GPIO_InitTypeDef GPIO_InitStructure;//定义GPIO结构体
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;//定义定时器TIM结构体
TIM_OCInitTypeDef TIM_OCInitStructure;//定义输出比较结构体
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_AFIO,
ENABLE); //开启GPIOB时钟和GPIO复用时钟
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);//开启时钟TIM3
GPIO_PinRemapConfig(GPIO_PartialRemap_TIM3, ENABLE); //Timer3部分重映射 //TIM3_CH2-PB5
//注:默认是TIM3_CH2-PA7
/**GPIO引脚配置输出TIM3_CH2的PWM脉冲波形****************************/
GPIO_InitStructure. GPIO_Pin= GPIO_Pin_5;
GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode= GPIO_Mode_AF_PP;//此处的模式系统有
文档评论(0)