用cubemx生成stm32f103的代码电平无法拉高拉低

2019-07-14 14:28发布

使用的是JLINK V8,在SW模式来烧写程序,所以PB3、PB4、PA15作为GPIO使用,但问题是我无法用
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_4,GPIO_PIN_SET)
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_4,GPIO_PIN_RESET)来进行控制,也就是电平无法拉高拉低,

初始化已经置为GPIO模式
  GPIO_InitStruct.Pin = GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5|GPIO_PIN_8
                          |GPIO_PIN_9;
  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
  GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;
  HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);

请教有没有遇到这种问题,有没有解决的办法?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
13条回答
xiuzhen122
1楼-- · 2019-07-14 23:51
 精彩回答 2  元偷偷看……
TOPCB
2楼-- · 2019-07-15 04:50
没用过这个怎么配置,标准库是可以直接通过GPIO重映射修改。
xiuzhen122
3楼-- · 2019-07-15 08:28
加了一句,__HAL_AFIO_REMAP_SWJ_NOJTAG();可以PB3 PB4当IO使用了,不过烧写完程序后,第二次居然烧写不了程序,必须把boot0拉高才能再次写程序,可是我总不能来回把boot0拉高拉低地切换,太麻烦了!
TOPCB
4楼-- · 2019-07-15 11:23
为什么非要这2个口呢?不能避开吗?
xiuzhen122
5楼-- · 2019-07-15 11:36
不可避免,不是我的设计的硬件,是别人的
zzw0719
6楼-- · 2019-07-15 16:54
 精彩回答 2  元偷偷看……

一周热门 更多>