liulingang_1205 发表于 2013-4-1 20:50:03

ATmega16上电瞬间端口为高电平,怎么可以设置为低电平?

本帖最后由 liulingang_1205 于 2013-4-1 20:51 编辑

大家好、我现在手里有一块M16的板子,端口接的三极管来控制继电器的吸合、由于设计时疏忽,三极管是用的NPN的 ,现在出现情况是上电一瞬间继电器啪的吸合一下,以前看到过有文章介绍AVR的单片机可以设置上电端口为低电平。不知道怎么实现,找也没找到资料 、有没有好的方法帮忙解决一下这个情况,不想再从新该板子了。

cash95 发表于 2013-4-1 20:53:48

飞个下拉电阻最可靠。

liulingang_1205 发表于 2013-4-1 21:00:37

cash95 发表于 2013-4-1 20:53 static/image/common/back.gif
飞个下拉电阻最可靠。

谢谢您的回复 、现在这样也是会一样

liulingang_1205 发表于 2013-4-1 21:01:29

liulingang_1205 发表于 2013-4-1 21:00 static/image/common/back.gif
谢谢您的回复 、现在这样也是会一样

LED1那个地方通过电阻接了个吸合指示灯 、灯也会闪一下

zhanan 发表于 2013-4-1 21:44:02

M16上电默认高阻输入,做端口用此刻应该不会输出电流。
是否后面开错了端口,或者误开了第二功能……

god-father 发表于 2013-4-1 23:39:14

这种上电状态是无法改变的。
最现实的做法是加上拉电阻,并且IO口为1时必须设置继电器为关闭。

richyhuang 发表于 2013-4-1 23:47:46

本帖最后由 richyhuang 于 2013-4-1 23:50 编辑

对啊,上电的时候高组态输出啊,楼主是不是哪里搞错了

细看了一下,这样电平不一样驱还是有风险,中间是不是要隔离一下啊,要是npn坏了,IC就完蛋了啊

liulingang_1205 发表于 2013-4-8 22:17:53

richyhuang 发表于 2013-4-1 23:47 static/image/common/back.gif
对啊,上电的时候高组态输出啊,楼主是不是哪里搞错了

细看了一下,这样电平不一样驱还是有风险,中间是不是要 ...

最近没上网、谢谢您的回复、前面有驱动IC的 不是单片机直接输出的

gao_hailong 发表于 2013-4-8 22:33:15

先设置PORT,再设置DDR

lunhuiliudao 发表于 2013-4-9 08:46:57

我觉得吧看看51驱动电路,再看本电路就明白了!!!!

xinhoujue 发表于 2013-4-9 10:05:29

本帖最后由 xinhoujue 于 2013-4-9 10:07 编辑

/******** 初始化 **********/
... ...
PORTB = 0x00;//设置PB口为 L 电平输出
DDRB = 0xff;
... ...

hsztc 发表于 2013-4-9 11:22:24

9楼11楼正解。

marshallemon 发表于 2013-4-9 11:45:52

感觉这个是LZ程序的问题,并非M16自身的问题,M16复位默认是悬空输入

chandle2735 发表于 2013-4-9 12:57:00

不是M16问题,考虑驱动IC问题

lsy5110 发表于 2013-4-9 21:37:53

最近没上网、谢谢您的回复、前面有驱动IC的 不是单片机直接输出的
************************************************************
前面有驱动IC的 不是单片机直接输出的
看前面ic

liulingang_1205 发表于 2013-4-9 23:31:07

原来的是后接的IC、无论单片机怎么初始化IC上电都会先输出H电平 ,{:dizzy:}{:dizzy:}{:dizzy:}无奈了今天把板子改了 、低电平驱动

liulingang_1205 发表于 2013-4-9 23:32:28

xinhoujue 发表于 2013-4-9 10:05 static/image/common/back.gif
/******** 初始化 **********/
... ...
PORTB = 0x00;//设置PB口为 L 电平输出


多谢相助,硬件大意了 、软件再改也无力、、、 、
页: [1]
查看完整版本: ATmega16上电瞬间端口为高电平,怎么可以设置为低电平?