0
问答首页 最新问题 热门问题 等待回答标签广场
我要提问

单片机

51单片机总线扩IO难题

51单片机工作在总线方式,准备用1个8位锁存器扩充8个输出口,要求上电时,输出口必须保证为高电平,系统复位时(如按下复位键不放),也要确保输出口为高电平,电路如何实现,问题的关键是上电状态如何为高。

提问者:60user120 地点:- 浏览次数:6476 提问时间:10-22 17:59
我有更好的答案
提 交
13条回答
092937222 04-18 15:41
  如果要求上电为低电平,使用74HC273就能实现,该芯片带复位引脚。
wrsffwrss 04-18 11:48
该芯片输出允许端加电阻电容(类似51单片机复位电路),时间常数够大,使得上电时该芯片输出为高阻态。单片机开始工作后,先锁存数据,再使该芯片允许输出。
siyu922 04-17 21:12
    总线要加上拉,G端连复位,不过得试试,能否可靠要看总线的逻辑1和复位的逻辑1谁先建立了,该方法甚至可能与IC生产商有关。另一类方法是用三态输出的锁存器或用锁存器+驱动器的结构,上电输出呈高阻,然后外加上拉,必要时再加一级缓冲,但此类方法仍可能存在暂态问题,要仔细分析。
    电路设计的合理性应该总体考虑,在某些需严格避免暂态影响的应用中,最佳方法是在传输通道上加一道逻辑“锁”,如要求特定组合逻辑序列(例两个IO必须按序输出10,而其它组合如01、11、00等无效,位数越多越可靠)甚至特定时序逻辑系列(可用移位寄存器等配合逻辑电路实现)才能打开这道“锁”。
uwyywjdwe 04-26 10:10
  该系统原使用的并行串口扩展芯片GM16C450,并使用了其DTR、RTS、OUT1、OUT2作为4路通用IO输出,此芯片的复位脚与MCU复位脚相连,上电复位时,GM16C450就为高电平输出,现在不想用此芯片了,简化电路,诸位所述方案不太理想。
松晟电子 04-20 12:35
   3楼所提用阻容控制三态门的OE脚,如果一直按复位键,输出就会不确定啦!4楼朋友提供的第2种办法理论上可行,只是IO输出串联1K电阻后直接驱动8050三极管,上拉电阻用10K肯定太大,用1K上拉是否又太小,而且复位完成后,锁存器的内容立即输出,如果此时单片机出了故障,没有发出锁存FF的指令,输出的内容还是不能确定,会失控的。
xiaoshuhao 04-16 12:19
试试377吧,只要复位的逻辑1稍滞后于上拉的逻辑1即可。
411easddzf 04-22 18:32
  MCU的IO口线是全部用完了,不能动了,楼上推荐用377锁存器,想问上电时377锁存器如果Q输出端为低电平,上拉又有何用,灌电流很大的,会拉低电位。诸位是否用过带预置功能的8位锁存器,2位的倒有现成的如74HC74,实在不行,准备用此来试试了。
aaa2412 04-22 15:44
    系统原来使用串口芯片16C450的4个控制口,用74HC74,用2片,是不爽。只是找不到好的办法呀!
脑洞大赛11 04-18 08:03
377的使能端为高时,其输出不是高阻而是锁存器当前的内容,在芯片上电暂态时,接在总线上的输入、接在复位上的芯片使能和接在MCU IO上的锁存端均存在一个上升沿,只要使能端的上升沿稍滞后,其输出就为高,但这只是理论上的,而且正常工作态按下复位,377的输出将是当前值,不能保证全1。变通的办法可用双输入或门如HC32配合锁存器实现,双输入或门的一输入接锁存器输出,另一输入接复位,相当于加了一道单输入的逻辑“锁”,但此电路需用3片IC才能实现,占用PCB面积较大。
tyh_candy 04-21 01:36
用HC845、2845、29845等,带预置逻辑,只是未必好买,但其逻辑可轻松用一片GAL实现。
du21590 04-20 17:38
   HC377的G端为输入锁存允许脚,chunyang 的方案我理解了。感谢诸位出谋画策,提出了这么多好的建议,经过多方考虑,最后决定用HC573作为锁存器,输出上拉,HC573的OE脚接公开高电平复位端,根据chunyang的建议,采用"逻辑锁"方式将输出再加一级由单片机控制的门控电路,实现了双保险,虽然不能与原系统完全兼容,但可靠性和简洁性大大提高。
马汉三呐 04-22 16:06
用MCU的复位信号,再用CPLD来扩展IO
复位信号不要用RC的那种电路,要用专门的复位IC电路
ueutriwu 04-20 15:17
没有细看呢,不知道每个脚加一个反相器可否,
撰写答案
提 交
1 / 3
1 / 3
相关单片机
具有音调控制的单片机立体声前置放大器
用于单片机与电子装置中的开关电源
单片机软硬件复位的条件都有啥
电动机的单片机控制
单片机应用系统开发实例导航