野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11244|回复: 5

模仿火哥书中例子,但是PWM1、5、8这几个定时器不能输出PWM

[复制链接]
发表于 2015-11-2 21:33:00 | 显示全部楼层 |阅读模式
完全模仿库开发指南的例子,奇怪的是就PWM1、5、8这几个定时器不能输出PWM波形,使用的是软件仿真。求指导,以下定时器5的输出通道1的程序,对应引脚PA.0
                GPIO_InitTypeDef GPIO_InitStructure        ;
       
                /*GPIOê±Öó*/
                RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB,ENABLE);
                GPIO_InitStructure.GPIO_Mode        =        GPIO_Mode_AF_PP        ;
                GPIO_InitStructure.GPIO_Speed        =        GPIO_Speed_50MHz        ;
                GPIO_InitStructure.GPIO_Pin                =        GPIO_Pin_6 | GPIO_Pin_0        | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_8;
                GPIO_Init(GPIOA,&GPIO_InitStructure);
       
                GPIO_InitStructure.GPIO_Pin                =        GPIO_Pin_8        ;
                GPIO_Init(GPIOB,&GPIO_InitStructure);

                TIM_TimeBaseInitTypeDef TIM_TimebaseInitStructure        ;
                TIM_OCInitTypeDef        TIM_OCInitStructure        ;
               
                /*TIM ê±Öó¿aÆô*/
                RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM5,ENABLE);
               
                /*TIM»ù±¾3õê¼»ˉ*/
                TIM_TimebaseInitStructure.TIM_CounterMode        =        TIM_CounterMode_Up        ;
                TIM_TimebaseInitStructure.TIM_Prescaler                =        0        ;
                TIM_TimebaseInitStructure.TIM_Period                        =        999        ;
                TIM_TimebaseInitStructure.TIM_ClockDivision        =        TIM_CKD_DIV1        ;
               
                TIM_TimeBaseInit(TIM5,&TIM_TimebaseInitStructure);
       
                /*TIMêä3ö3õê¼»ˉ*/
                TIM_OCInitStructure.TIM_OCMode         =        TIM_OCMode_PWM2  ;
                TIM_OCInitStructure.TIM_OCPolarity        =        TIM_OCPolarity_High         ;
                TIM_OCInitStructure.TIM_OutputState        =        TIM_OutputState_Enable        ;
                TIM_OCInitStructure.TIM_Pulse                =        250        ;
               
                TIM_OC1Init(TIM5,&TIM_OCInitStructure);
       
               
                /*ÖØÔؼÆêy*/
                TIM_OC1PreloadConfig(TIM5,TIM_OCPreload_Enable)        ;
                TIM_ARRPreloadConfig(TIM5,ENABLE);
               
                /*ê1Äü¶¨ê±Æ÷*/
                TIM_Cmd(TIM5,ENABLE);


回复

使用道具 举报

发表于 2015-11-3 09:20:42 | 显示全部楼层
有的引脚接到板子的其它地方了,把共用引脚的跳线帽去掉,直接用示波器测
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-3 21:56:23 | 显示全部楼层
flyleaf 发表于 2015-11-3 09:20
有的引脚接到板子的其它地方了,把共用引脚的跳线帽去掉,直接用示波器测

我用的是软件仿真,难道有些引脚不支持软件仿真?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-3 21:59:22 | 显示全部楼层
flyleaf 发表于 2015-11-3 09:20
有的引脚接到板子的其它地方了,把共用引脚的跳线帽去掉,直接用示波器测

我用的是软件仿真,难道有些引脚不支持软件仿真
回复 支持 反对

使用道具 举报

发表于 2015-12-4 17:13:38 | 显示全部楼层
TIM5和TIM2的PWM口是复用的,但是TIM5没有映射脚,TIM2有映射脚。
回复 支持 反对

使用道具 举报

发表于 2016-3-13 10:55:36 | 显示全部楼层
tim1和tim8是高级定时器,pwm输出设置方式和2,3,4,5略有不同。tim3和tim5的引脚冲突,但是tim5没引脚重映射,只能重映射tim2的引脚
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-4-19 22:11 , Processed in 0.041706 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表