
实验目的通过列表控件选择修改串口屏工程的波特率校验位停止位通过协议解析器接收上位机串口助手发来的ascii码数据显示在串口屏上使用发送函数外发字符串数据显示在上位机串口助手里面实验工具任意型号串口屏本例程串口屏型号为SANY-WQ-S43-01-C电脑端串口调试助手本例程使用 SSCOM V5.13.1 串口助手Usb转串口工具用于串口屏和电脑串口助手通讯界面布局控件介绍逻辑实现控件名称属性功能List_stop可见 列表列出停止位可选项值改变事件中写入修改脚本List_check可见 列表列出校验位可选项值改变事件中写入修改脚本List_baud可见 列表列出波特率可选项值改变事件中写入修改脚本Text_baud可见 文本显示当前波特率列表修改时直接赋值Text_check可见 文本显示当前校验位列表修改时直接赋值Text_stop可见 文本显示当前停止位列表修改时直接赋值Log7可见 日志显示协议解析器接受到的数据配合协议解析器使用Text10可见 文本输入并显示外发的字符串Button_clear可见 按钮按钮事件写入脚本清空日志内容Button_send可见 按钮按钮事件写入脚本外发字符串Com不可见 协议解析器处理接收到的数据配合日志控件将数据显示出来设置停止位点击页面上停止位文本控件调用列表控件列表值改变事件脚本对工程停止位作出修改文本控件脚本list_stop.x15;//显示列表框列表脚本//设置停止位text_stop.txtlist_stop.getItem(list_stop.sel);//将选项的内容赋值给文本控件if(list_stop.sel0)sys_stopbits1;//停止位的读写值为1表示停止位为1此表示为系统变量固定表示elseif(list_stop.sel1)sys_stopbits3;//停止位的读写值为3表示停止位为1.5此表示为系统变量固定表示elseif(list_stop.sel2)sys_stopbits2;//停止位的读写值为2表示停止位为2此表示为系统变量固定表示list_stop.x-132;//隐藏列表框设置校验位点击页面上校验位文本控件调用列表控件列表值改变事件脚本对工程校验位作出修改文本控件脚本list_check.x15;//显示列表框列表脚本//设置工程校验位text_check.txtlist_check.getItem(list_check.sel);//将列表选中项的值赋值给文本控件sys_paritylist_check.sel;//设置系统校验位校验位读取值0表示无校验 1表示odd校验 2表示even校验此处与列表序号一致list_check.x-132;//隐藏列表框设置波特率点击页面上波特率文本控件调用列表控件列表值改变事件脚本对工程波特率作出修改文本控件脚本list_baud.x15;//显示列表框列表脚本//设置工程波特率text_baud.txtlist_baud.getItem(list_baud.sel);//将列表先选中值赋值给文本控件sys_baudstringToInt(text_baud.txt);//设置系统波特率list_baud.x-132;//隐藏列表框协议解析器将接受到的数据打印在日志控件显示用于测试工程波特率校验位停止位是否修改正确脚本//将串口屏收到的数据打印在日志控件显示//com.rxbuf:协议解析器用来缓存接收数据的数组//com.rslen:com.rxbuf长度log7.addString(bytesToAscii(com.rxBuf,0,com.rxLen));//将接收到的数据转成ascii字符串打印出来.清除日志内容Button_clear按钮 Button_clear 按钮弹起事件写脚本清除日志内容脚本log7.clear();//清除日志内容通过串口发送字符串数据Text10文本控件右侧属性栏kbld属性可以直接调用键盘控件此处无需脚本发送按钮button_send脚本如下uartSend(text10.txt);//通过串口发送text10字符串文本实验结果将工程和串口助手得波特率修改为19200校验位修改为0dd 停止位设置为2用usb转串口将屏与电脑连接串口屏发送 HELLO SANY 上位机串口助手发送HELLO串口助手和串口屏接收正常串口助手接收和发送串口屏接收和发送