STM32/STM8技术william hill官网
直播中

yanandren

9年用户 49经验值
擅长:可编程逻辑
私信 关注
[问答]

cube初始化GPIO,灯就亮了

void MX_GPIO_Init(void)
{

  GPIO_InitTypeDef GPIO_InitStruct;

  /* GPIO Ports Clock Enable */
  __GPIOE_CLK_ENABLE();
  __GPIOF_CLK_ENABLE();

  /*Configure GPIO pin : PE4 */
  GPIO_InitStruct.Pin = GPIO_PIN_4;
  GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING;
  GPIO_InitStruct.Pull = GPIO_PULLUP;
  HAL_GPIO_Init(GPIOE, &GPIO_InitStruct);

  /*Configure GPIO pin : PF9 */
  GPIO_InitStruct.Pin = GPIO_PIN_9;
  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
  GPIO_InitStruct.Pull = GPIO_PULLUP;
  GPIO_InitStruct.Speed = GPIO_SPEED_FAST;
  HAL_GPIO_Init(GPIOF, &GPIO_InitStruct);

}


其他什么的都没动过,以前F401的板子是初始化以后没什么作用,调用GPIO WRITE那个函数以后就可以跑马,这个F407的板子,。。。初始化以后就直接。。。亮了。。。。

GPIOF PIN9是LED灯的IO口
上面那个是在初始化中断,GPIOE PIN4


我用传统库的时候  推挽输出,上拉电阻,默认状态是什么都没的,要用SETBIT才点得亮


而且在cube工程内的时候
我用函数GPIO写0和写1 灯都一直亮着。。。。

已退回1积分

回帖(2)

飞一个去

2015-11-6 14:12:23
提点浅薄的意见哈   你确认自己在软件上写0和1的时候你的引脚电平响应了吗    用示波器或者万用表确认下   然后再解决  看看是不是威廉希尔官方网站 上和电源短接了  
举报

周董的老父亲

2023-2-17 17:10:02
因为初始化后所有引脚会被拉低,低电平点亮,所以你应该在这个函数结尾处加一个拉高所有电平的函数,这样才能一开始什么都没做灯是灭的,不然灯会亮。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分