嵌入式領域,串口通訊是使用非常多的一種通訊協議了,所以一塊串口通訊調試工具自然必不可少。
這裏主要是針對的嵌入式Linux系統,ubuntu之類的網上有很多,就不需要看下面的了。
環境:Linux + c/c++
說明:啓動後,選擇read或者write模式,整個通訊是基於16進制解析的,不支持其他的哦。
write效果如下圖:
read效果如下圖:
核心代碼:
if(read_write == "read" || read_write == "r")
{
while(1)
{
nread = read(fd, recvbuf, RECVBUF_SIZE);
if(nread > 0)
{
printf("recv data %d byte(s): ", nread);
for(i=0; i<nread; i++)
{
printf("%02x ", recvbuf[i]);
}
printf("\n");
}
}
}
if(read_write == "write" || read_write == "w")
{
while (1)
{
printf("input you data:");
getline(cin,write_date);
stringstream ss_write(write_date);
int num_write = 0;
unsigned char temp_char_write;
string temp_string_write;
while (getline(ss_write, temp_string_write, ' '))
{
temp_char_write = strtol(temp_string_write.c_str(),NULL,16);
sendbuf[num_write] = temp_char_write;
// printf("%02x, ", sendbuf[num_write]);
num_write++;
}
write(fd, sendbuf, num_write);
}
}
需要完整代碼的童鞋請留言郵箱。