以前好像看过一篇**,忘了,干脆你不用总线方式

[复制链接]
3479|8
 楼主| zhaoyjin 发表于 2007-1-31 23:41 | 显示全部楼层 |阅读模式
请大家点拨一下!
我现在用两片373,然后用p2.6和p2.7分别作为他们的锁存信号,即先让p2.6=0,然后读一个8位,再让p2.6=1 p2.7=0,再读一个8位,这样可以马?
duanhnhy 发表于 2007-2-1 08:43 | 显示全部楼层

RE

373是个并行数据芯片,P2口接地址高8位,P0口是地址的低8位和数据总线的复用.不知道你是什么接的?
berg 发表于 2007-2-1 09:20 | 显示全部楼层

RE

我想你这样的接法只能实现,用两次的读取,然后到系统内组合成16位数据,实际上每次传输的仍然是8位数据。
maychang 发表于 2007-2-1 10:14 | 显示全部楼层

还真想不出

不这样读,能怎样读?
lixun00 发表于 2007-2-1 10:44 | 显示全部楼层

以前好像看过一篇**,忘了,干脆你不用总线方式

xwj 发表于 2007-2-1 14:37 | 显示全部楼层

一起锁存,再分2次读取

berg 发表于 2007-2-1 14:55 | 显示全部楼层
szzhengjin 发表于 2007-2-1 16:11 | 显示全部楼层

没法理解你这做法

外部若是一次性输出16位数据,你则必须在输出先读进8位同时锁存另8位,再用HC245切换过去读

你没说清楚,所以不知道怎么设计,要看具体外部进来的数据情况而定,若是外部16位一直存在,则用两个HC245简单搞定
 楼主| zhaoyjin 发表于 2007-2-1 17:18 | 显示全部楼层

RE!

因为我只用了P0口 想分两次来读16位 即两个8位,所以同时锁存肯定不行;我的做法是:通常保持2个373的锁存端都为高,这样虽然他们输入端都有了数据但是输出端都是高阻态,读的时候先把一个373的锁存端置低,这样就可以在P0口读到8位,读完后又把这个373的锁存端置高让他又回到高阻输出态,再重复操作另外一个373。不知道说清楚没有,希望大家指点是否行!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

48

主题

58

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部