我在做一主多从232轮询呼叫通信时,遇到这样一个问题:主机正常运行时,给主机配置参数用Reset指令复位后,偶尔会出现主机完全收不到从机发过来的数(十次操作大概会有两次会出现这样的情况)。从示波器看通信呼叫和回应都是正常的,对主机进行仿真时,主机没有进入232接收中断(主机能发送,但不能接收)。
然后,做了这样一个实验,就是在主机上电时先延时400ms,然后再进行其它初始化操作,重复做了二十几次Reset操作,没有再出现主机不能接收的情况。
用的主机芯片是PIC18F66J60,从机芯片是PIC18F26K20.
想问一个这种情况可能是由什么原因引起的,另外只有执行Reset时才出现这种错误,而重新上电没有出现过,不知道软件Reset 和硬件重新上电主要的区别是什么?
谢谢! |