25
417
1251
助理工程师
83575df6fa2e37b9e.png (25.5 KB )
下载附件
2019-12-16 11:29 上传
245075df6fa3e129f3.png (12.34 KB )
2019-12-16 11:30 上传
使用特权
917585df6fa871fc95.png (125.92 KB )
2019-12-16 11:31 上传
569655df6fa98f3e37.png (12.22 KB )
151515df6faab56fb2.png (11.55 KB )
632475df6fad9b891e.png (10.81 KB )
2019-12-16 11:32 上传
GPIO_InitTypeDef GPIO_InitStructure;//定义结构体 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE);//使能GPIO外设和AFIO复用功能模块时钟 GPIO_PinRemapConfig(GPIO_PartialRemap_TIM3, ENABLE); //选择Timer3部分重映像 //选择定时器3的通道2作为PWM的输出引脚TIM3_CH2->PB5 GPIOB.5 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; //TIM_CH2 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; //复用推挽功能 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化引脚
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;//定义初始化结构体 RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); //使能定时器3时钟 //初始化TIM3 TIM_TimeBaseStructure.TIM_Period = arr; //自动重装载寄存器的值 TIM_TimeBaseStructure.TIM_Prescaler =psc; //TIMX预分频的值 TIM_TimeBaseStructure.TIM_ClockDivision = 0; //时钟分割 TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //向上计数 TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure); //根据以上功能对定时器进行初始化
TIM_OCInitTypeDef TIM_OCInitStructure;//定义结构体 TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM2;//选择定时器模式,TIM脉冲宽度调制模式2 TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;//比较输出使能 TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low;//输出比较极性低 TIM_OC2Init(TIM3, &TIM_OCInitStructure);//根据结构体信息进行初始化 TIM_OC2PreloadConfig(TIM3, TIM_OCPreload_Enable); //使能定时器TIM2在CCR2上的预装载值
int main(void) { TIM3_PWM_Init(9999,143);//频率为:72*10^6/(9999+1)/(143+1)=50Hz TIM_SetCompare2(TIM3,4999);//得到占空比为50%的pwm波形 while(1); }
166
4170
1万
资深工程师
96
4160
103
4206
60
4183
发表回复 本版积分规则 回帖后跳转到最后一页
0
扫码关注 21ic 官方微信
扫码关注嵌入式微处理器
扫码关注21ic项目外包
扫码关注21ic视频号
扫码关注21ic抖音号
本站介绍 | 申请友情链接 | 欢迎投稿 | 隐私声明 | 广告业务 | 网站地图 | 联系我们 | 诚聘英才 | 论坛帮助
京公网安备 11010802024343号