发 帖  
[问答]

STM32F0xx系列,不同引脚相同复用功能的问题

3910 GPIO
2020-7-2 17:31:33   评论 分享淘帖 邀请回答 举报
3个回答
2020-7-2 17:31:34 2 评论

举报

2 条评论
  • 2020-7-6 11:00

    我也这样写的,比如这样GPIO_PinAFConfig(GPIOA, GPIO_Pin_4  , GPIO_AF_4);
    但是对于stm32f031来说就是执行不成功,所以我改用地址去使能如下:
            *(uint32_t *)(GPIOA_BASE + 0x20) = 0x11040000;
            *(uint32_t *)(GPIOB_BASE + 0x20) = 0x00000010;
    使用地址就能够将PA4 PA5 PA7 PB1重映射,但是使用库函数就不行,也不知道怎么回事

  • 2020-7-6 11:03

    我明白你的意思了,是我没看清楚库函数给的定义,怪不得总是出错,谢谢你的帮助。
    GPIO_PinAFConfig(GPIO_TypeDef* GPIOx, uint16_t GPIO_PinSource, uint8_t GPIO_AF),
    GPIO_PinSource: specifies the pin for the Alternate function.
      *          This parameter can be GPIO_PinSourcex where x can be (0..15) for GPIOA, GPIOB, GPIOD, GPIOE
      *          and (0..12) for GPIOC and (0, 2..5, 9..10) for GPIOF.

2020-7-2 18:24:55 1 评论

举报

1 条评论
2020-7-2 19:42:03 1 评论

举报

1 条评论
  • 2020-7-3 08:22

    TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStruct;
            RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM14, ENABLE);
           
            TIM_TimeBaseInitStruct.TIM_ClockDivision = TIM_CKD_DIV1;
            TIM_TimeBaseInitStruct.TIM_CounterMode = TIM_CounterMode_Up;
            TIM_TimeBaseInitStruct.TIM_Period = TIMER_TIM_Period;
            TIM_TimeBaseInitStruct.TIM_Prescaler = TIMER_TIM_Psc;
            TIM_TimeBaseInitStruct.TIM_RepetitionCounter = 0;
            TIM_TimeBaseInit(TIM14, &TIM_TimeBaseInitStruct);
           
            TIM_OCInitTypeDef TIM_OCInitStruct;
            //TIM_OCInitStruct.TIM_OCIdleState = TIM_OCIdleState_Set;
            TIM_OCInitStruct.TIM_OCMode = TIM_OCMode_PWM1;
            TIM_OCInitStruct.TIM_OCPolarity = TIM_OCPolarity_High;
            TIM_OCInitStruct.TIM_OutputState = TIM_OutputState_Enable;
            TIM_OCInitStruct.TIM_Pulse = Pulse;
            TIM_OC1Init(TIM14, &TIM_OCInitStruct);
            TIM_OC1PreloadConfig(TIM14, TIM_OCPreload_Enable);
           
            TIM_Cmd(TIM14, ENABLE);
            //TIM_CtrlPWMOutputs(TIM14, ENABLE);

    这是定时器TIM14_CH1引脚输出的配置,只是单纯的从PB1输出,而不是PA4,哪怕我重映射后依然没有改变,我怀疑是映射函数没有起作用。

撰写答案

你正在撰写答案

如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。

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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
快速回复 返回顶部 返回列表
关注微信公众号

电子发烧友网

电子发烧友论坛

社区合作
刘勇
联系电话:15994832713
邮箱地址:liuyong@huaqiu.com
社区管理
elecfans短短
微信:elecfans_666
邮箱:users@huaqiu.com
关闭

站长推荐 上一条 /7 下一条

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