|
51單片機(jī)在發(fā)送完成或接收結(jié)束一個(gè)字節(jié)數(shù)據(jù)后都會(huì)產(chǎn)生中斷請求。要不要響應(yīng)中斷請求并執(zhí)行中斷任務(wù)完全由程序編寫者選擇。以接收為例,實(shí)用中的串口通訊內(nèi)容通常是若干字節(jié)(依據(jù)通訊協(xié)議)數(shù)據(jù),下位機(jī)接收到一個(gè)字節(jié)數(shù)據(jù)暫存在SBUF寄存器中并自動(dòng)置中斷請求RI為1。CPU響應(yīng)中斷請求執(zhí)行串口任務(wù),讀取SBUF寄存器中數(shù)據(jù)另存,軟件清0中斷請求標(biāo)志RI。結(jié)束中斷任務(wù),等待下一個(gè)中斷發(fā)生。當(dāng)若干字節(jié)(依據(jù)通訊協(xié)議)數(shù)據(jù)全部接收完畢就對收到的數(shù)據(jù)串進(jìn)行驗(yàn)證和解析,驗(yàn)證錯(cuò)誤向上位機(jī)發(fā)送錯(cuò)誤消息,要求重發(fā),驗(yàn)證正確就執(zhí)行相應(yīng)任務(wù)。 |
評(píng)分
-
查看全部評(píng)分
|