打印

PIC24HJ单片机一上电IO口为什么为输出高电平?

[复制链接]
7118|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ANDY_MQY|  楼主 | 2009-2-10 17:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用PIC24HJ单片机3.3V输出的IO口,外接5V上拉电阻,然后用IO控制ULN2003驱动蜂鸣器和继电器,使用时,上电瞬间,蜂鸣器和继电器都是输出高电平约0.5秒(继电器和蜂鸣器都响一声),然后进入运行,单片机IO口可以控制蜂鸣器和继电器。什么原因呢?请各位指教,谢谢!

相关帖子

沙发
NE5532| | 2009-2-10 22:48 | 只看该作者

我用PIC24HJ单片机3.3V输出的IO口,外接5V上拉电阻

一般单片机在复位期间IO都是置位输入状态,你加个上拉,复位期间,2003看到的输入不是高电平么?

电路设计有问题,你要保证复位状态下,各单元不会误动作,你该加下拉而不是上拉,或者干脆不加。

因为2003是达灵顿结构,IO悬浮的时候,也不会开通的。

使用特权

评论回复
板凳
xhtxzxw| | 2009-2-10 22:51 | 只看该作者

嘿嘿

你给IO脚后面反个相再驱动你的继电器就是了嘛!
片子设计的时候,就这么定的:加电IO就给高!

使用特权

评论回复
地板
NE5532| | 2009-2-10 22:52 | 只看该作者

另外,你给3V的IO加5V的上拉,本身就有错。

原因自己想,提示:看端口内部构造。

使用特权

评论回复
5
牧狼者| | 2009-2-11 07:44 | 只看该作者

3V IO加5V上拉没错

  24X有开漏极功能,你上电初始化IO估计不及时或者复位时间太长了?示波器看看是不是上电电压畸变了?

使用特权

评论回复
6
andy_mqy| | 2009-2-11 10:25 | 只看该作者

将IO配置为数字输出方式

我将IO口配置为数字输出方式,而不是开漏输出方式,然后去掉5V上拉,就没有一上电继电器和蜂鸣器先动作一下的情况了。但是直接用3.3V输出IO口控制ULN2003,觉得不保险。

使用特权

评论回复
7
NE5532| | 2009-2-11 20:54 | 只看该作者

楼主,设计不是靠“觉得”

是靠依据,你看了IO的驱动能力吗?看了2003的输入驱动要求吗?看了开漏端口是否有内部ESD保护二极管了吗?

如果没有,你搞设计就是在撞大运,总有翻车的时候。

使用特权

评论回复
8
星星ARM| | 2013-8-17 22:53 | 只看该作者
是呀 你这样是不保险的做法

使用特权

评论回复
9
doob| | 2013-9-9 09:47 | 只看该作者
按NE5532去做,做产品不要靠碰巧

使用特权

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

本版积分规则

27

主题

86

帖子

3

粉丝