C 實現串列埠傳送接收 完整的例子

2021-05-18 11:09:07 字數 1396 閱讀 2838

using system;

using system.collections.generic;

using system.componentmodel;

using system.data;

using system.drawing;

using system.text;

using system.windows.forms;

using system.io.ports;

using system.threading;

namespace mymailsample

//接收事件方法定義

void spcom1_datareceived(object sender, serialdatareceivedeventargs e)

private void frmcomm_load(object sender, eventargs e)

private void frmcomm_formclosed(object sender, formclosedeventargs e)

private void butsend_click(object sender, eventargs e)

;b[0] = 1;

b[1] = 240;

b[2] = 0;

b[3] = 0;

//傳送讀卡指令

spcom1.write(b, 0, 4);

private void butreceive_click(object sender, eventargs e)

spcom1.read(b, 0, 3);

textbox1.text = b[0].tostring() + " " + b[1].tostring() + " " + b[2].tostring() + " " + b[3].tostring();

private void butbeep_click(object sender, eventargs e)

;b[0] = 1;

b[1] = 243;

b[2] = 0;

b[3] = 0;

//讀卡器 3短音提示

spcom1.write(b, 0, 4);

}private void butreadcard_click(object sender, eventargs e)

private void butreceives_click(object sender, eventargs e)

byte b = new byte[len];

spcom1.read(b, 0, len);

string s = "";

for (int i = 0; i < len; i++)

textbox1.text = s;}}

}

stm32串列埠接收完整的資料報

參考了文章 stm32串列埠中斷接收方式詳細比較 借鑑了第四種中斷方式 串列埠的配置這裡不做說明,僅對stm32接收中斷中的資料進行解析。資料幀協議 幀頭1幀頭2 資料長度 有效資料 crc 1 crc 2 b5 5b 0300 570b 幀頭1 幀頭2 資料長度 包含有效資料 crc 1 crc ...

C 串列埠除錯 傳送接收

串列埠接收 private long receive count 0 接收位元組計數 public static serialport serialport1 newserialport public static stringbuilder sb newstringbuilder 為了避免在接收處...

串列埠接收完整一幀資料報的3種方法

本文介紹3種使用串列埠接受一幀完整資料報的方法,串列埠接收資料是位元組接收的,串列埠每接收1位元組資料,產生乙個串列埠中斷,我們在中斷中將接收到的資料存放到buf中進行儲存,但是資料的傳送和接收都是按照幀為單位進行傳輸的,因此我們要在接收資料的同時判斷當前接收的資料是否是完整的一幀。一般串列埠完整資...