十万火急 STM32F103VET6引脚上电瞬间输出一个低电平 跪求原子哥解决

2019-08-17 07:16发布

STM32F103VET6引脚驱动光耦,光耦驱动继电器,引脚初始配置为高电平,但是在板子上电的一瞬间会输出一个低电平造成光耦导通继电器一瞬间吸合断开。
参照香主的做法,先配置引脚输出电平,再配置引脚输出模式,还是存在同样的问题。
请高手告知如何解决!!
GPIO初始化代码如下
  GPIO_SetBits(GPIOA,GPIO_Pin_8);                          //³õʼ»¯¶Ë¿ÚÊä³ö1
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);    //ʹÄÜGPIO¶ÔÓ¦GPIOµÄClockʱÖÓ
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;     //ÉèÖÃÏàÓ¦µÄ¶Ë¿Ú
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;   //ÉèÖÃΪ ÍÆÍì(Push-Pull)Êä³ö                 
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;   //×î´óÊä³öËÙ¶ÈΪ10MHz
  GPIO_Init(GPIOA, &GPIO_InitStructure);                  //µ÷ÓÃGPIO³õʼ»¯º¯Êý  

20160526093215.png
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
钩月黄昏
1楼-- · 2019-08-18 08:29
levon 发表于 2016-5-26 09:53
十分感谢您的回答  把GPIO_SetBits(GPIOA,GPIO_Pin_8); 放在GPIO_Init(GPIOA, &GPIO_InitStructure); 后 ...

把那个电容换成电阻也没用?
levon
2楼-- · 2019-08-18 13:05
 精彩回答 2  元偷偷看……
xkwy
3楼-- · 2019-08-18 15:43
烟酒不沾 发表于 2016-5-26 09:44
你在GPIO时钟打开之前的操作GPIO有意义吗?把GPIO_SetBits(GPIOA,GPIO_Pin_8); 放在GPIO_Init(GPIOA,  ...

有意义,事前启用它在RCC的时钟。

GPIO_Init是用来设置引脚输入输出模式的
xkwy
4楼-- · 2019-08-18 19:56
将DO_OUT下拉试试,再把基极电阻改小一点儿

rr.png


还不行的话再把下拉电阻改到4.7k
levon
5楼-- · 2019-08-18 20:46
来俩不甜的 发表于 2016-5-26 09:59
硬件加上拉,软件改开漏,就没有问题了

改为开漏输出之后还是不行  
xujian468
6楼-- · 2019-08-19 01:43
你是用灌电流的吧,吧电路修改成拉电流看看,

一周热门 更多>