|
是我沒說(shuō)清,串口接收的指令以字母開頭(不分大小寫),指令長(zhǎng)度不定,結(jié)束符號(hào)是 \r\n。單片機(jī)解析指令后做出反饋。
設(shè)置類的指令可以跟?進(jìn)行查詢。比如LIMIT指令:接收的是LIMIT+參數(shù),或LIMIT??jī)蓷l。
指令較多,在程序中怎么處理這些指令容易讓人看懂,容易修改、維護(hù)?
指令示例:
3字節(jié)指令
void IDN() //返回版本號(hào)等
{
const char *ver="60V/2A,Ver1.0.0,SN2020-5-18";
}
4字節(jié)指令
void ARST()//功能:故障報(bào)警繼電器復(fù)位
{
}
5字節(jié)指令
void FAULT()//查詢運(yùn)行故障狀態(tài)
{
}
5或6字節(jié)
void LIMIT()//設(shè)置輸出控制設(shè)置參數(shù)限制值
{
}
void OUTP(char *rev)//設(shè)置/查詢電源啟動(dòng)/停止
{
if(rev[4]==0)
else if(rev[4]==1)
//reboot(b_shutdown);
else if(rev[4]=='?')
}
8字節(jié)指令
void SHUTDOWN()
{
}
void STATE()
{
}
|
|