串口通信主要用于實(shí)現(xiàn)系統(tǒng)之間的連接和數(shù)據(jù)交換。底層連接也就是硬件連接要基于串行接口來(lái)實(shí)現(xiàn),上層協(xié)議需要我們自己分析和制定,通過(guò)軟件編程實(shí)現(xiàn)。
軟件程序編寫(xiě)主要是設(shè)置波特率、串口工作方式、數(shù)據(jù)位數(shù)、是否有校驗(yàn)位等參數(shù),在發(fā)送端按位發(fā)送,接收端按位接收,通信協(xié)是保障通信雙方正確接收數(shù)據(jù)的保證。
比方說(shuō)軟件(晶振11.0592MHZ)編寫(xiě)中串口初始化:
SCON=0x50; //10位數(shù)據(jù) 1位起始位 8位數(shù)據(jù)位 1位停止位
TMOD|=0x20;
TH1=0xfd; // 波特率9600bps
TL1=0xfd;
TR1=1;
IE|=0x10;
那么上位機(jī)串口終端就同一樣要保持一致,才能保證正常收發(fā)。
上位機(jī)(電腦)發(fā)送指令,單片機(jī)接收后解析,然后根據(jù)解析到的指令執(zhí)行相關(guān)控制任務(wù)。
聯(lián)系客服