打印
[电路/定理]

单片机上电后。默认高电平 PWM控制导致LED会出现闪烁求解!

[复制链接]
楼主: we167527
手机看帖
扫描二维码
随时随地手机跟帖
21
两种方法:

使用特权

评论回复
22
we167527|  楼主 | 2016-10-28 09:04 | 只看该作者

哪两种?
请说具体点

使用特权

评论回复
23
songchenping| | 2016-10-28 09:08 | 只看该作者
我想知道上电复位的LED闪烁对你的系统有什么影响呢。

使用特权

评论回复
24
zhaoyu2005| | 2016-10-28 09:09 | 只看该作者
刚看文档,stm8复位后,大部分引脚默认浮空输入,正常应该拉低的,设为输出应该直接输出低电平,灯应该不会闪烁,可以试试先设成下拉输入,再设成输出,就是输出低电平。stm32,浮空输入,是不会让灯亮的。

使用特权

评论回复
25
we167527|  楼主 | 2016-10-28 09:11 | 只看该作者
songchenping 发表于 2016-10-28 09:08
我想知道上电复位的LED闪烁对你的系统有什么影响呢。

视角感官不好!

使用特权

评论回复
26
we167527|  楼主 | 2016-10-28 09:12 | 只看该作者
zhaoyu2005 发表于 2016-10-28 09:09
刚看文档,stm8复位后,大部分引脚默认浮空输入,正常应该拉低的,设为输出应该直接输出低电平,灯应该不会 ...

应该是芯片内部有微上拉电阻的缘故吧。所以复位会是高电平!请问你看的是文档名是什么?

使用特权

评论回复
评论
zhaoyu2005 2016-10-28 10:34 回复TA
我就在官网看了个 48脚, 64K flash的,型号忘了 
27
lilinfei520| | 2016-10-28 09:15 | 只看该作者
一般控制LED灯的电路,都要先看控制MCU的I/O引脚默认电平,如果默认为输入或输出高阻态,则不影响;如果默认为输出高电平,则控制LED灯亮的话要用低电平引脚;如果默认为输出高电平的话,则控制LED灯亮的话要用低电平引脚。所以要根据MCU的I/O引脚默认状态来设计LED控制电路,不然就要修改LED灯控制电路,麻烦。你这个LED控制电路是高电平引脚点亮,正好MCU的I/O引脚也是高电平,软件是无法修改的,只能从硬件电路上了

使用特权

评论回复
28
songchenping| | 2016-10-28 09:17 | 只看该作者

非得接到12V上吗

使用特权

评论回复
29
autooy| | 2016-10-28 09:21 | 只看该作者
很奇怪,你既然是NPN管,为什么上电不把pin设置为输入模式,等上电延时比如1S之后,再设置为上拉输出低电平状态不就可以保证不闪烁了。可以软件解决的事。

使用特权

评论回复
30
autooy| | 2016-10-28 09:21 | 只看该作者
皈依 发表于 2016-10-28 08:10
这就是硬件设计逻辑方面的问题~
得改。要么换PNP 改PWM
要么加PNP做反向

因为C集为12V,使用PNP会打开关不断滴。

使用特权

评论回复
31
shalixi| | 2016-10-28 09:22 | 只看该作者
在三极管前面再接个PNP的三极管,集电极接3V,这个靠得住。也可以在基极上加个下拉电阻,和Rb电阻要一起调整的,到LED不闪烁

使用特权

评论回复
32
zwm2011| | 2016-10-28 09:24 | 只看该作者
灯珠这么使用?通常是二级电路吧,单片机上电状态很多都是不稳定的,电路结构修改一下就好啦。

使用特权

评论回复
33
we167527|  楼主 | 2016-10-28 09:25 | 只看该作者

是的!

使用特权

评论回复
34
shalixi| | 2016-10-28 09:27 | 只看该作者
autooy 发表于 2016-10-28 09:21
很奇怪,你既然是NPN管,为什么上电不把pin设置为输入模式,等上电延时比如1S之后,再设置为上拉输出低电平 ...

LZ就是要解决上电以后,初始化以前这段时间的闪烁。

使用特权

评论回复
35
we167527|  楼主 | 2016-10-28 09:30 | 只看该作者
autooy 发表于 2016-10-28 09:21
很奇怪,你既然是NPN管,为什么上电不把pin设置为输入模式,等上电延时比如1S之后,再设置为上拉输出低电平 ...

应该不能。主要是上电后。MCU默认初始状态就是所有IO口置高电平。然后才是执行程序了

使用特权

评论回复
36
aeromoon| | 2016-10-28 09:32 | 只看该作者
看下数据手册,复位期间IO口状态是什么,如果是弱上拉就在Rb前端加个下拉电阻将电平拉低,1~10K之间视情况而定。
不知道你Rb怎么选择的,最好Rb与基极之间也加一个下拉。

使用特权

评论回复
37
yzqok| | 2016-10-28 09:37 | 只看该作者
上电的时候单片机设为高阻,要不能搞出不闪来会很麻烦

使用特权

评论回复
38
we167527|  楼主 | 2016-10-28 09:42 | 只看该作者
shalixi 发表于 2016-10-28 09:27
LZ就是要解决上电以后,初始化以前这段时间的闪烁。

是的

使用特权

评论回复
39
we167527|  楼主 | 2016-10-28 09:43 | 只看该作者
aeromoon 发表于 2016-10-28 09:32
看下数据手册,复位期间IO口状态是什么,如果是弱上拉就在Rb前端加个下拉电阻将电平拉低,1~10K之间视情况 ...

加了。没用!

使用特权

评论回复
40
we167527|  楼主 | 2016-10-28 09:45 | 只看该作者
本帖最后由 we167527 于 2016-10-28 09:47 编辑
yzqok 发表于 2016-10-28 09:37
上电的时候单片机设为高阻,要不能搞出不闪来会很麻烦


现在的解决办法就是加了个简单的反相器不知道行不行?不过我觉得这样子不是太好!


使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则