请选择 进入手机版 | 继续访问电脑版

你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm32l433调试时,端口电平何实际电平不一致

[复制链接]
ddnuli 提问时间:2019-10-8 10:12 /
我使用的是stm32l433rc芯片,希望通过控制PD2的电平控制灯的亮灭,电平为1时灯灭,为0时灯亮。但是芯片实际端口电压始终为0,灯保持亮,调试时,寄存器GPIOD端口为FFFFFFFF,运行之后无变化。麻烦帮我看一看哪里出了问题。
代码为

  1. HAL_Init();
  2.   SystemClock_Config();

  3.   GPIO_InitTypeDef GPIO_InitStruct;
  4.   HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);

  5.   int i=1;
  6.   while (i)
  7.   {
  8.     HAL_GPIO_TogglePin(GPIOD,GPIO_PIN_2);      
  9.     i--;
  10.   }
复制代码

  1. void HAL_GPIO_TogglePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
  2. {
  3.   /* Check the parameters */
  4.   assert_param(IS_GPIO_PIN(GPIO_Pin));

  5.   GPIOx->OTYPER = 0<<0;
  6.   GPIOx->ODR ^= GPIO_Pin;
  7. }
复制代码









寄存器.png
收藏 评论3 发布时间:2019-10-8 10:12

举报

3个回答
ddnuli 回答时间:2019-10-8 19:28:18
是初始化出了问题
慎微 回答时间:2019-10-9 08:51:50
while (1) 变成 while(i),而i i 初值为1,故只运行一次HAL_GPIO_TogglePin,
ddnuli 回答时间:2019-10-11 19:04:13
mikecai 发表于 2019-10-9 08:51
while (1) 变成 while(i),而i i 初值为1,故只运行一次HAL_GPIO_TogglePin,

这是专门这样写的想测试哪里出了问题,现在问题已经解决了,谢谢你

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版