完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
无论如何还是感谢你的回复。
|
|
|
|
谢谢回复!!!!!!!!!!
|
|
|
|
|
|
|
|
谢谢你!
|
|
|
|
|
|
|
|
J、F、G、H四个点平时都拉为低电平,所以必须往A、B、C、D送高电平。
这样,如果没有压下按键,J、F、G、H读出就为0,否则对应的点会是高,区别两种状态。 而A、B、C、D分别对应地址线A04~A07。 所以,这四位地址可以确定了。 |
|
|
|
高8位地址,只有A15与按键相关,一会再确定;
而A8~A14都无关,如果不牵扯其他问题,可以随意。 根据硬件,A15必须为1,才会输出Y2。 至此,只有A0~A3待定。 |
|
|
|
|
|
|
|
整体理一下:
从总线读取数据时,P0和P2口首先输出16位地址; 该地址低8位被ALE信号锁入U2。 最高位的P27会一直呈现,打开U4的端口E2; 刚才漏了地址A04,该位必须为0,以打开U4的端口E1; 至此,配合A3~A0的特定值,U4只有Y2端为0。 以上是总线建立地址的过程。 随后就是关键的读入数据了。 |
|
|
|
随着ALE脉冲消失,地址就建立了。
随后,RD出现下降沿,进入读取数据的步骤。 由于Y2事前已经变低,RD出现下降沿,会使OE1变低,打开U234, JFGH四点的电平无论高低,都会通过U234读入CPU,分别对应数据位D0、D1、D2、D3。 随后判断这四位数据,就知道按键压下的情况。 过程讲完了。 但有点问题。 |
|
|
|
硬件设计有问题。
问题在于地址线P04(同时也是A04)。 A点要求P04为高,但U4要求P04为低,不可能同时满足。 因此,应当把U4的E1端固定接地,或者直接与E2短接,一起受控于P27。 以下假定就这样处理了,才能继续往下说。 |
|
|
|
|
|
|
|
最后归纳出地址数据:
A15必须为1; A14~A8无所谓,随意;(就图示硬件情况) A7~A4,必须轮流为1,一次只能有一条线为1; A3~A0必须为 0010 (二进制)。 随后,根据A7~A4的情况,结合D3~D0数据,判断按键。 |
|
|
|
|
|
|
|
感谢你的解答!这个电路正确吗?地址是多少?
|
|
|
|
|
|
|
|
按照你的,数码管显示乱码。
|
|
|
|
算了,不想说了。
|
|
|
|
74H573有I2C功能吗?我咋不知道.....
|
|
|
|
看看连接的地址线自己算出来
|
|
|
|
只有小组成员才能发言,加入小组>>
3278 浏览 9 评论
2955 浏览 16 评论
3455 浏览 1 评论
8987 浏览 16 评论
4050 浏览 18 评论
1102浏览 3评论
570浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
568浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2301浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1857浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-21 23:35 , Processed in 1.501412 second(s), Total 118, Slave 98 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号