不想起名字QAQ 2020-02-09 21:02 采纳率: 0%
浏览 547

CT117E 蓝桥杯的板子 尝试用TIM3_CH3完全复用 pwm输出

因为蓝桥杯板子led在PC8-15端口 所以选择用TIM3-CH3完全复用输出pwm达到呼吸灯的效果
pwm.c

#include"pwm.h"
#include"stm32f10x.h"
void tim3_pwm_init(unsigned int count,unsigned int prer)
{
    GPIO_InitTypeDef GPIO_Init_c8pwm;
    TIM_OCInitTypeDef TIM3_OC3Init;
    TIM_TimeBaseInitTypeDef TIM_TimeBaseInit_tim3;
    RCC_APB2PeriphResetCmd(RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOC,ENABLE);
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);
    //³õʼ»¯GPIO ÉèÖø´ÓÃ
    GPIO_Init_c8pwm.GPIO_Mode=GPIO_Mode_AF_PP;
    GPIO_Init_c8pwm.GPIO_Pin=GPIO_Pin_8;
    GPIO_Init_c8pwm.GPIO_Speed=GPIO_Speed_50MHz;
    GPIO_Init(GPIOC,&GPIO_Init_c8pwm);
    GPIO_PinRemapConfig(GPIO_FullRemap_TIM3,ENABLE);


    //ÉèÖòÎÊý
    TIM_TimeBaseInit_tim3.TIM_Period=count;
    TIM_TimeBaseInit_tim3.TIM_CounterMode=TIM_CounterMode_Up;
    TIM_TimeBaseInit_tim3.TIM_Prescaler=prer;
    TIM_TimeBaseInit_tim3.TIM_ClockDivision=TIM_CKD_DIV1;
    TIM_TimeBaseInit(TIM3,&TIM_TimeBaseInit_tim3);
    //ÉèÖÃTIM_OCÊä³ö
    TIM3_OC3Init.TIM_OCMode=TIM_OCMode_PWM2;
    TIM3_OC3Init.TIM_OCPolarity=TIM_OCPolarity_Low;
    TIM3_OC3Init.TIM_OutputState=TIM_OutputState_Enable;
    TIM_OC3Init(TIM3,&TIM3_OC3Init);
    TIM_OC3PreloadConfig(TIM3,TIM_OCPreload_Enable);
    //ʹÄܶ¨Ê±Æ÷
    TIM_Cmd(TIM3,ENABLE);
}

main.c

int main()
{
    unsigned int LED0_pwm;
    NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
    led_init();
    tim3_pwm_init(899,0);
    while(1)
    {
        LED0_pwm++;
        if(LED0_pwm>300) LED0_pwm=0;
        TIM_SetCompare3(TIM3,LED0_pwm);
    }
}

预想是LED1会由暗变亮反复但是结果不对 led8常亮

尝试使用TIM3-CH4使能LED2 失败 结果不变

刚刚开始学 我就想知道我错哪了

  • 写回答

1条回答 默认 最新

  • dabocaiqq 2020-02-09 22:09
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 Arcgis相交分析无法绘制一个或多个图形
  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)