提高单片机采集数据实时性的问题

向大家请问个问题,我现在利用2个单片机,一个STC的,采集面板的滑竿数据,另一个上WINBOND的,处理接受到STC的数据,生成一个STC曲线。我原来是采用定时中断,采集的数据发送到WINBOND上能正确的生成曲线,可有点,当我实验的时候发现把滑竿移动的时候,得慢一个节拍曲线才有所变化,也就是说时实性不高,后面我就想不用定时中断,改为两单片几之间串口中断的方式来进行通讯,这样效果应该好的多,但是当我把程序写了后测试去发现两个单片机之见没有通讯,程序应该 没有问题,但是实验的时候为什么指示灯和蜂鸣器都没有反映,我但个的用串口调试助手能做运行效果完全正确,但是当两个单片机在一起通讯的时候就不能通讯了呢?请各位高手指点哈,或者还有什么其他方法能够提高实时性的也可以,谢谢大家了!
对了,补充下,开先两个程序是处于循环的,我在接受程序那做了一个进入循环的时候发送处理数据结束的信号,这个时候另外的那个程序手到信号就采集并发送数据,接着接受程序收到数据完毕后就再继续处理生成曲线数据,然后就继续发送信号,发送和接受都是利用的串口中断进行的,就这样循环,我是这样拉提高实时性的,两个程序就是这样做的。

注意RXD、TXD需要交叉。最好加几百欧姆的强上拉。两个单片机需要共地。用串口调试助手能行说明程序应该问题不大。
我个人认为以下方法可能更好。STC采用一根端口线,触发另一单片机的外部中断。数据直接口线送出+读取。触发信号由STC中的程序根据转换是否完成生成。另一个单片机只负责中断读取。可以在两个单片机中开个缓冲队列,采集N次后一次发送多组数据。具体可以参考1602液晶的工作时序。另外,双CPU本来实时性就不好,不理解为什么这么设计。一块AD+单片机不可以么?
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-09-22
可能是程序写的不太好,基本上电路的响应可以达到的。
仔细看看程序,要用上位机控制下位机
相似回答