新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)串口通信-字符數(shù)組

單片機(jī)串口通信-字符數(shù)組

作者: 時(shí)間:2012-11-06 來源:網(wǎng)絡(luò) 收藏
在上一篇文章中可以看到,利用一個(gè)一個(gè)字符來判斷命令和通信協(xié)議不但很麻煩,而且有很大的缺陷,比如:輸入一個(gè)字符串其中只要有命令就會(huì)執(zhí)行,而且上一篇的程序不可以處理一些特殊的字符串(停止命令是end,但是如果是輸入一個(gè)en的話,就會(huì)卡在while(RI==0),這個(gè)語(yǔ)句里,沒有下一個(gè)字符的輸入,RI在上面的程序被置為0,就會(huì)一直在while語(yǔ)句里出不來。如果一開始就置為1的話,就接受不到下一個(gè)字符了)

所以我又重新開始考慮用處理命令,再用上個(gè)程序之前其實(shí)最初是用來做這個(gè)程序的,但是一直都有一些問題沒有解決;昨天我用c++來做了一個(gè)字符接收和判讀函數(shù),然后用keil做一個(gè)同樣的程序發(fā)現(xiàn)還是用一些同的:

C語(yǔ)言和c++里面定義用兩種形式:

例如(1)char t[6]="start";這個(gè)字符串的長(zhǎng)度是5但是系統(tǒng)默認(rèn)這種定義方法在字符串的后面加上一個(gè)