对于galil的dmc-2143来说,无论您是什么系统都可以的。只要您的系统本身有相应的开发工具,而这个开发工具提供串口通信或者以太网通讯功能,无论是函数、是对象还是控件,都无所谓的。
如果您喜欢串口,或者说对串口比较熟悉,只要按照galil的串口协议以ascii字符的形式发送指令文本就可以了。
galil的串口为9针插座,硬件定义为:
1 CTS 6 CTS
2 TXD 7 RTS
3 RXD 8 CTS
4 RTS 9 NC
5 GND
如果与电脑相连,可以买两头是9孔插头的9芯直通线。连接时,选择 1起始位 8数据位 1停止位 无校验位 全双工,硬握手。
如果您使用的不是电脑,串口有可能不支持硬握手,这样,就需要将GALIL串口中的CTS与RTS短接,比如1、4两脚短接,“伪造”硬握手信号。否则GALIL不会从串口输出信息。
DMC-2143默认是19200的通讯速度,也可以通过跳线选择降低通讯速度。
从串口可以发送任何你原本用COMMAND 发送的指令,只是在末尾要加上回车(0DH)。您可以先找个串口调试工具熟悉一下再开始编成,不过有的串口调试工具在选择了字符模式以后,就不支持发送回车这类不可显示的字符了,这个要注意。GALIL在没有收到回车时,是不会理睬前面收到的字符的。
在默认情况下,GALIL会将所有受到的字符回传,您可以利用这个功能检查是否存在传输错误,如果不需要这个功能,可以用EO指令关闭。
对于错误的指令,GALIL会回复一个问号(3FH)。对于正确的指令,GALIL会执行(如果指令需要反馈信息的话,比如查询指令,会先返回反馈信息),而后回复一个冒号(3AH)
在一些情况下,GALIL会主动输出一些信息,比如在程序中使用了MG指令,比如一些出错信息,这些信息可以配置为最高位1,和一般的回应信息向区别。
虽然GALIL的串口本身支持全双工的模式,可以同时发送/接收数据,但是用户最好还是等接收到前一个指令的反馈后再发送下一个指令,免得弄错了反馈与指令的对应关系。
如果可以的话,个人建议使用网口,毕竟速度快得多,而且TCP/IP协议本身包含了很完美的检验机制。只要把指令(加上最后的回车)作为一个数据包发送给GALIL就好了,GALIL会回应包含了问号或者冒号(可能有反馈数据)的数据包。