一个奇怪的问题

[复制链接]
2635|14
 楼主| zab 发表于 2011-4-26 12:05 | 显示全部楼层 |阅读模式
单片机与外围芯片进行通信,采用8位并行双向总线方式。
当单片机写外围芯片时(写0xFF),单片机输出的数据线(D7~D3)在片选信号中间就开始下降,不能稳定在1的状态;而D2~D0却是正常的。已经检查过电路,没有短路现象。为什么D7~D3在中间就开始下降而不能保持在1的状态呢?
异常波形波形如图所示。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
maychang 发表于 2011-4-26 12:11 | 显示全部楼层
把电原理图贴出来吧,标注详细些。
mmax 发表于 2011-4-26 12:52 | 显示全部楼层
关键字 双向并行
所以有可能两个设备的读写没有控制好,造成CPU和外设同时选通、同时写总线。
xmar 发表于 2011-4-26 16:15 | 显示全部楼层
数据总线未接上拉电阻、或上拉电阻值太大。
老鱼探戈 发表于 2011-4-26 16:19 | 显示全部楼层
LZ的“外围芯片”是什么?
很可能是上拉或下拉不匹配引起的
 楼主| zab 发表于 2011-4-27 14:27 | 显示全部楼层
外围芯片内部有60K的下拉电阻。
关键是D7~D3异常,而D2~D0正常,非常奇怪,8条数据线的表现不同。
lemenade 发表于 2011-4-27 16:22 | 显示全部楼层
考虑一下上拉电阻,有些I/O口的内部上拉是较弱的,你需要在外部加个相对较强的上拉,我用过飞思卡尔的一款单片机,其内部就根本没有上拉电阻。
 楼主| zab 发表于 2011-4-27 17:21 | 显示全部楼层
4.7k和10k的上拉电阻都试过,两种上拉的现象相同。
上拉后对外围芯片写FF正确,但写00却是错误的,现象是数据线在写信号的中间逐渐由低电平上升到高电平。
pa2792 发表于 2011-4-27 17:26 | 显示全部楼层
是不是在信号线上对地并用电容了?
 楼主| zab 发表于 2011-4-27 17:49 | 显示全部楼层
电容肯定没有。
 楼主| zab 发表于 2011-4-28 11:39 | 显示全部楼层
上拉后对外围芯片写FF正确,但写00却是错误的,现象是数据线在写信号的中间逐渐由低电平上升到高电平。
haiping0823 发表于 2011-4-28 17:40 | 显示全部楼层
怀疑DATA线上 容性负载过大!
 楼主| zab 发表于 2011-4-28 17:51 | 显示全部楼层
是不是可以肯定外围芯片有问题,因为8跟数据线的表现不同。
可是已经换了一个批次的芯片,还是一样:(
afei9527 发表于 2011-4-30 11:42 | 显示全部楼层
又没图
chunyang 发表于 2011-4-30 18:33 | 显示全部楼层
楼主的问题肯定出在电路或PCB上,还是仔细去检查吧,这种情况是不正常的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

zab

43

主题

162

帖子

0

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