基于單片機的信號采集節點(diǎn)的設計
圖2 初始化流程圖。
3.2 報文發(fā)送
數據的發(fā)送由CAN控制器根據CAN協(xié)議規范自動(dòng)完成。CPU將要發(fā)送的數據傳送到發(fā)送緩沖區并置位命令寄存器的TR(發(fā)送請求)位,發(fā)送處理可以通過(guò)中斷請求或查詢(xún)狀態(tài)標志進(jìn)行控制。報文發(fā)送流程如圖3所示。
圖3 報文發(fā)送流程圖。
3.3 報文接收
CPU以一定周期讀取CAN控制器的狀態(tài)寄存器,檢查RBS(接收緩沖器狀態(tài))。如果RBS指示0(空),則沒(méi)有接收數據;如果RBS指示1(滿(mǎn)),則R)(nFo中有一個(gè)或多個(gè)完整的可用信息。報文接收流程如圖4所示。
圖4 報文接收溉程圖
其他子程序的設計這里不再介紹。
4 結束語(yǔ)
CAN以其獨特的設計思想、良好的性能、極高的可靠性受到了業(yè)界青睞;具有片上CAN控制器的P87C591具有功能強大、設計方便等特性??蓮V泛應 用于工業(yè)領(lǐng)域?;赑87C591的信號采集節點(diǎn)充分利用了CAN以及P87C591的優(yōu)良特性,很好地實(shí) 現了數據采集功能。
評論