单片机DA和AD高手进

由于引脚不够,我想把ADC0808和DAC0832的数据口都接在单片机P0口,然后让它们先后工作,这样来实现P0口既能当AD的输出又能做DA的输入,但是这样做却发现ADC... 由于引脚不够,我想把ADC0808和DAC0832的数据口都接在单片机P0口,然后让它们先后工作,这样来实现P0口既能当AD的输出又能做DA的输入,但是这样做却发现ADC0832不能工作了,如果屏蔽掉DA程序的话AD可以工作,谁知道怎么回事?附程序:
void ad_work()
{
START=0;
OE=0;
START=1;
START=0;
while(EOC)
OE=1;
workdata=P0;
OE=0;
}
void da_work()
{

_CS = 1;
_WR1 = 1;
_CS = 0;
P0= 128;
_WR1 = 0;
_CS = 1;

}
展开
 我来答
Juncox
2009-05-16 · TA获得超过1638个赞
知道大有可为答主
回答量:1904
采纳率:0%
帮助的人:1607万
展开全部
你好好研究一下片选信号与读写信号的时序关系, 基本就能解决了.

我想是时序没有解决好. 因没有电路原理图, 就不给你分析了.
korean_sz
2009-05-16 · TA获得超过3884个赞
知道大有可为答主
回答量:2494
采纳率:0%
帮助的人:2450万
展开全部
P0= 128;

workdata=P0;

你的da程序这里 给了128 再取到的值 在ad里就运行不对了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一万光年MEGn0
2009-05-16 · TA获得超过3712个赞
知道大有可为答主
回答量:4602
采纳率:67%
帮助的人:1090万
展开全部
两个芯片共用一个端口,肯定只能有一个能工作
你试试,单独DA或AD能工作不?
可能是外部芯片对P0口的影响。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hookwei
2009-05-16 · TA获得超过187个赞
知道小有建树答主
回答量:602
采纳率:0%
帮助的人:394万
展开全部
用74HC244扩展才行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式