在lineedit輸入資料的型別是qstring型別,以往我在傳送的時候是ascii方式傳送,這會兒突然遇到乙個是十六進製制傳送/接受的下位機,就需要將qstring 轉化為十六進製制,本來直接用tohex進行轉化,但考慮到在輸入的的時候有間隔符之類的,我就寫了個轉化的函式;
以下是轉化單個字元的函式:
charmainwindow::converthexfromchar(char
ch)
else
if((ch>='a')&&(ch<='f'))
else
if((ch>='a')&&(ch<='f'))
else
}將lineedit中的資料挨個轉化傳送的完整程式如下,switch語句是我為了可以兼有可以傳送ascii設定的,看case 1部分即可;
voidmainwindow::on_transmitpushbutton_clicked()
else
}
com->write(senddata);//write是乙個過載函式,參考qiodevice類
}break;
case
0:
break;
default:
break;
}
}
Qt模擬串列埠 tcp連線傳送資料
上一節已經基本上完成了qt介面的基本布局,下面就是後台資料的傳送和接收了,前面說了,qt和uc os 互動使用的方式是tcp 為啥要用tcp,而不使用別的呢,udp 按道理udp是最好的,不用連線,想發就發,不用管埠。但是,qt這個鬼,他封裝的udp函式不支援伺服器下發資料,也就是udp的伺服器不能...
串列埠傳送資料
s 串列埠程式設計 詳解4 串列埠傳送資料 串列埠傳送資料報括 十六進製制傳送資料 手動傳送資料 自動傳送資料 手動傳送資料的 如下 cpp view plain copy 手動傳送 long tx count 0 void cscommdlg onbuttonmanualsend else els...
串列埠向電腦傳送資料
串列埠向電腦傳送資料 include include delay.h 呼叫延時函式 void uartinit void 以上部分為使用燒錄軟體得來編碼 void uart init init 初始化 void uart sendbyte unsigned char byte void main 串...