多通道實(shí)時(shí)CAN總線(xiàn)模擬器設計
2 系統設計
2.1 系統方案設計
根據通用計算機的總線(xiàn)分類(lèi),可采用基于ISA總線(xiàn)對多通道實(shí)時(shí)CAN總線(xiàn)模擬器進(jìn)行研制,根據CAN總線(xiàn)通信原理可以提出以下兩種設計方案:
(1)ISA總線(xiàn)+CAN通信控制器;
(2)ISA總線(xiàn)+微處理器+CAN通信控制器。這兩種設計方案的不同點(diǎn)在于是否采用處理器來(lái)加強控制。
由于CAN總線(xiàn)通信要求實(shí)時(shí)性高,再加上多通道的設計滿(mǎn)足實(shí)際的需要,故采用單片機來(lái)負責CAN總線(xiàn)的通信功能。在這里主要介紹單片機與CAN控制器之間的設計部分,其系統設計框圖如圖1所示。本文引用地址:http://dyxdggzs.com/article/188441.htm
單片機選用DALLAS公司的DS89C430,它是當前8051兼容微控制器中性能最高的。具有重新設計的處理器內核,在相同的晶振頻率下,執行指令的速度是最初8051微處理器的12倍。特性:高速8051架構,每個(gè)機器周期一個(gè)時(shí)鐘;片內存儲器16 KB/32 KB/64 KB閃存,在應用可編程,通過(guò)串口實(shí)現在系統可編程;與8051引腳和指令集兼容;四路雙向、8位I/O端口;三個(gè)16位定時(shí)器/計數器;256 B暫存RAM等特點(diǎn)??筛鶕?shí)際應用的需要選擇其部分功能。隨著(zhù)可編程邏輯器件的飛速發(fā)展,其應用領(lǐng)域不斷擴大,可用于譯碼、解碼等方面,使用CPLD可以提高系統集成度,降低噪聲,增強系統可靠性。因此,單片機與CAN控制器之間的鎖存、譯碼采用Xilinx公司XC95144CPLD芯片,優(yōu)化了系統資源,降低了其功耗。
2.2 系統硬件設計
該部分由單片機、CAN控制器、CAN收發(fā)器、SRAM存儲器組成。單片機主要用于系統計算及信息處理等功能;CAN控制器主要用于系統通信;CAN收發(fā)器主要用于增強系統的驅動(dòng)能力;SRAM主要用于緩存數據。系統的發(fā)送過(guò)程是:?jiǎn)纹瑱C將外圍設備傳送過(guò)來(lái)的信息處理后,按CAN規范規定的格式,將其寫(xiě)入CAN控制器的發(fā)送緩沖區,并啟動(dòng)發(fā)送命令,把數據發(fā)送到CAN總線(xiàn)上;接收過(guò)程是:CAN控制器從CAN總線(xiàn)上自動(dòng)接收數據,并經(jīng)過(guò)濾后存入CAN接收緩沖區,且向單片機發(fā)出中斷請求,此時(shí)單片機可從CAN接收緩沖區讀取要接收的數據。SJA1000提供的微處理器接口方式為典型INTEL或MOTOROLA地址數據多路復用總線(xiàn)模式。主要信號有地址數據信號AD7~AD0,地址選通信號ALE,片選信號CS,讀信號RD,寫(xiě)信號WR,模式選擇信號MODE。當MODE=1時(shí),為INTEL模式;當MODE=0時(shí),為MOTOROLA模式。后面描述的總線(xiàn)模式均為INTEL模式。AD7~AD0引腳在A(yíng)LE有效時(shí),傳送的是地址信號,在RD或WR有效時(shí),傳輸的是數據信號,在這里分別與單片機的PO口相連,RD,WR信號線(xiàn)分別與單片機的讀/寫(xiě)信號線(xiàn)相連。具體方案如圖2所示。限于篇幅限制,虛線(xiàn)內給出1路CAN的連接圖,2路CAN有同樣的連接方法。
SRAM和CAN控制器的片選信號。由于單片機可以查詢(xún)或中斷方式訪(fǎng)問(wèn),在此采用中斷方式進(jìn)行CAN多通道選擇訪(fǎng)問(wèn),以滿(mǎn)足不同通信速率下數據處理的需要。SRAM的地址線(xiàn)與數據線(xiàn)是分開(kāi)的,故采用74LS373鎖存器實(shí)現鎖存功能??刹捎肵C95144CPLD芯片以及VHDL硬件描述語(yǔ)言以實(shí)現鎖存、譯碼等功能。
評論