在我现在公司多数产品为485通信,无串口接口。
最近有一台MUC100机器出货,今天晚上赶紧改写ISP上位机程序。
上位机与下位机不改时,使用ISP连接不上,上位机一直在发送。
1、下位机的ISP 在发送数据前要加入相应485 I0口控制。(这个很早就写好了)。
特别注意:在发送数据后要延时相应时间再切换到接收状态,因为你程序将数据送到发送缓冲区 还没有发送完成。
改完第一步后,可以连接上了,上位机开始读版本,读取不到,显示TIME OUT,这个应该是下位机在这个时候进行了双向通信,所以通信不上。
2、在WriteData函数中的WriteFile(串口发送数据)加入延时,我这人比较懒直接加入了Sleep(1);
改完上一步后,出现:“Invalid chip ID”,仅确认,程序有去操作config.ini文件,打开文件中确实没有这个芯片,应该是源码中config.ini较旧。(源码和ISP .EXE是一起下来的,可能是新唐的人忘了更新这个了)
3、将官方的ISP.EXE目录下的config.ini 拷贝到源码的Release文件夹中。
哈哈,大功告成!!!!!!!!!!!!!!!!!! |