1樓:匿名使用者
你傳送的又不是ascii編碼,應該類似於這樣接收int datalength=serialport1.bytestoread;
byte ds=new byte[datalength];
int len=serialport1.read(ds,0,datalength);
//然後對這個byte中的每個byte轉為十六進位制顯示出來就行了。
string returnstr = "";
for (int i = 0; i < len; i++)returnstr += ds[i].tostring("x2")+ " ";
textbox(returnstr);
2樓:匿名使用者
額這個程式沒太看懂。我也不是專家。只是說下我的猜想和理解
我的猜想來自你說的除錯程式的hex(16進位制對吧?)顯示,串列埠得到的是一次一個byte還是bit,你也知道ascii table吧,可能得到的資料還需要些轉碼處理神馬的。
3樓:閔君汗夢凡
this.textboxrec.text
+ =decodedstring;你這樣寫是第二次接受把第一次覆蓋了。
C串列埠資料讀取,cc2431通過串列埠將資料包傳送給pc,我希望通過c編寫串列埠通訊程式讀取傳送過來的資料
你好!你的這個程式,首先,要分析出cc2431串列埠傳送的內容 cc2431 傳送的是16進位制,微控制器的程式是你自己寫的嗎 由於我電腦主機板沒有com口,無法測試,但是,這種com口的操作,就如你說的,使用serialport類來實現。serialport port new serialport...
C中怎麼向串列埠傳送資料
忘了看你還要把接收的轉回10進位制。接收的如果是按位元組接收 readbyte 那麼接收回來的數直接就可以用10進製表示,如果需要顯示,可以直接在變數之後加.tostring 不明白可直接加我hi 之前的回答 byte t new byte 2 t 0 0xaa t 1 0xbb 串列埠物件.wri...
c程式設計,通過向串列埠發資料的方式傳送中文簡訊時,但中文顯示亂碼,如何軟體解碼
編碼問題吧,是不是那個裝置只支援ascii 你可以上網查一下at命令集和短訊息的pdu編碼。其實很簡單的,基本實現起來就是向序列口傳送at指令所形成的字串。這樣做還需要對短訊息本身進行pdu編碼,至於解碼可以看看不用深入,手機自己會解碼。7710只能收發英文和數字,另外一款7210則可以收發中文簡訊...