VB串口通信:如何接收缓存中的多条数据,并在多个text中显示出来?
上位机软件通过RS232串口发送命令给单片机,让单片机读取EEPROM中的数据和写入数据。
软件界面有两个命令控件,一个读数据(同时向单片机发出多条读EEPROM数据指令),一个写数据(同时向单片机发送多条写入EEPROM数据指令).
还有多个TEXT控件(代表了EEPROM中不同地址的数据),显示单片机返回的指令及EEPROM中的数据。
问题:如何同时发送多条读数据命令后,把串口接收缓存(单片机返回EEPROM数据)内的多条数据接收并且准确显示在多个text控件中?
上位机查询指令:AO(起始位)+00+00(EEPROM地址)+C0(结束位)
单片机返回指令:B0(起始位)+00(EEPROM数据)
请各位高手提供思路或vb代码,谢谢!
[解决办法]
一.多个Textbox 可以先处理加总, 但得先各别转为16进制,最前面加上起始符 最后面加上终止符, 发送这批字串, 不会影响同时接收进来的数据. 但你的textbox最好用数组控件 再用 For..NEXT 循环
二.发送数据如有汉字 注意高低位对调
接收可以使用 OnComm事件, 分解后再逐一带入 Textbox, 但你不能使用上面正在传输的textbox 可以先存入变量或另组的TextBox