此地人多,俺转过来问,谢谢

[复制链接]
2498|12
 楼主| cgkdxx 发表于 2007-8-20 16:25 | 显示全部楼层 |阅读模式
两片CPU,1为主向2发中断,INT0、INT1 一读一写,都只一个字节;
2从片处理按键后在中断时将输出状态标志输到总线上; 排线2.5米
1片根据读入的标志驱动继电器
2从片也带一个LCD,中断时读入数据,
现在问题:显示没问题,继电器会乱跳---跳一下会回来,因为程序一直在刷

出现此问题后,又加了一位执行标志(继电器标志里有空余的BIT),按键有改变才刷新,结果继电器还会跳,

请各位指点一下,谢谢!!
emailli 发表于 2007-8-20 16:31 | 显示全部楼层

设计思路有问题

2.5M的举例建议用RS232通信
好好的UART留着不用为什么?

另外,你这里的控制出错,要注意的地方很多。

比如你的总线是用的P0口?

是否总线复用?

是否被干扰?

是否本身程序有问题导致数据被改写?

不过最好还是用UART通信
 楼主| cgkdxx 发表于 2007-8-20 16:51 | 显示全部楼层

谢谢!!

因为没数据量,所以就偷懒了,主片是p0,其他的不是,这个有问题么?请讲解,谢谢!

是复用的,但速度不高,

干扰不知怎么判定

程序应不会改写,内存都是专用的,别的程序只读不写的
emailli 发表于 2007-8-20 16:58 | 显示全部楼层

P0

P0有没有上拉?

P0读之前有没有先写1?

程序有没有问题?

和内存专用否无关。主要是IO有没有复用?
 楼主| cgkdxx 发表于 2007-8-20 17:07 | 显示全部楼层

有上拉的

空闲时每个都输出高

总线复用, 继电器驱动是单独的IO

程序仅仅是判标志位,然后输出

conwh 发表于 2007-8-20 18:14 | 显示全部楼层

这样说是看不清楚,反正是有问题的。

twz8858877 发表于 2007-8-20 21:22 | 显示全部楼层

改硬件吧

2.5米!太长了,如有总线驱动可能还会好一些,估计也达不到这么长,用示波器看看总线上会有许多杂波
 楼主| cgkdxx 发表于 2007-8-21 08:18 | 显示全部楼层

现在发现

只有一个位(2f.7)为高,即第一个继电器工作才会莫名其妙的开其他继电器,关闭或开其他继电器没有影响, 请各位再指点一下  谢谢!!
zhaohe2001 发表于 2007-8-21 11:02 | 显示全部楼层

请问你那继电器都是控制什么的?

 楼主| cgkdxx 发表于 2007-8-21 11:58 | 显示全部楼层

风机 灯

两组电源是隔离的
继电器没带载
ocon 发表于 2007-8-21 12:48 | 显示全部楼层

通讯时序有BUG。

孤独泪 发表于 2007-8-21 13:25 | 显示全部楼层

不自己测试估计很难判断是什么原因

程序bug,还是硬件干扰都有可能
 楼主| cgkdxx 发表于 2007-8-28 15:22 | 显示全部楼层

有点干扰,谢谢!!

读完加校验,不对再读,现在有48小时没跳了,谢谢各位!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

192

主题

1126

帖子

0

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