新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > CAN總線節點電路的設計與實現

        CAN總線節點電路的設計與實現

        作者: 時間:2013-04-06 來源:網絡 收藏


        圖 1 原理圖

        (1)SJA1000并沒有和單片機共用復位電路,而是通過單片機的一I/O口來控制,這樣,SJA1000的復位就可以方便地由單片機通過軟件來控制。

        (2)SJA1000的地址/數據端和單片機的P0口相連時,不需要再加鎖存器,因為它內部已經有地址鎖存功能。

        (3)SJA1000 的TX1 腳懸空, RX1 引腳的電位必須維持在約0.5VCC上, 否則將不能形成 協議所要求的邏輯電平。

        (4)總線上電阻R3、R4一定不能省略,它們對匹配總線阻抗起著相當重要的作用,如果去掉它們,系統通訊的可靠性和抗干擾能力就會大大降低,甚至不能正常工作。

        4 軟件設計

        和硬件電路相比,軟件的設計相對來說要復雜的多。而且,其中還涉及到有關通訊協議的問題,對于不同的控制系統、不同的功能要求,總線通訊軟件的差別很大,在此不可能一一列出。但是,對于基于SJA1000的CAN總線系統,它們開始時都必須對SJA1000進行初始化,而這種初始化的流程是基本一致的。下面給出用匯編語言編制的SJA1000的初始化程序,假設SJA1000的首地址為0100H,其中設置波特率的有關參數是針對晶振為12M,波特率為500Kbit/s計算出來的。另外,在整個CAN總線系統中,所有節點設置的波特率必須一致,否則,系統就不能正常工作。

        MODE EQU 0100H

        BTR0 EQU MODE+6

        BTR1 EQU MODE+7

        ACR0 EQU MODE+16

        AMR0 EQU MODE+20

        OCR EQU MODE+8

        RBSA EQU MODE+30

        CDR EQU MODE+31

        MOV A,#01H

        MOV DPTR,#MODE

        MOVX @DPTR,A

        MOV A,#0C0H

        MOV DPTR,# CDR

        MOVX @DPTR,A

        MOV A,#1AH

        MOV DPTR,# OCR

        MOVX @DPTR,A

        MOV A,#85H

        MOV DPTR,# BTR0

        MOVX @DPTR,A

        MOV A,#0B4H

        MOV DPTR,# BTR1

        MOVX @DPTR,A

        MOV A,#00H

        MOV DPTR,# RBSA

        MOVX @DPTR,A

        MOV A,#0FFH

        MOV DPTR,# AMR0

        MOV R0,#04H

        BEGIN10:MOVX @DPTR,A

        INC DPTR

        DJNZ R0,BEGIN10

        MOV A,#00H

        MOV DPTR,#MODE

        MOVX @DPTR,A

        5 結束語

        CAN 具有較強的糾錯能力,適用于高噪聲環境, 并具有較遠的傳輸距離, 現已廣泛應用于許多領域,該設計作為CAN的一個模塊,能夠和儀器儀表等設備相結合,使其具有網絡通訊的能力,有著廣闊的應用前景。


        上一頁 1 2 下一頁

        關鍵詞: CAN 總線節點 PCA82C250

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 定安县| 清镇市| 革吉县| 山丹县| 洞口县| 临夏县| 江永县| 富源县| 柏乡县| 台州市| 宁国市| 九龙坡区| 锡林浩特市| 宁晋县| 南投市| 攀枝花市| 英超| 涿鹿县| 汉阴县| 永登县| 普安县| 绥宁县| 通河县| 昌吉市| 罗江县| 奉贤区| 页游| 化州市| 平山县| 徐闻县| 伽师县| 温州市| 毕节市| 盘山县| 汝州市| 华宁县| 临夏县| 瓦房店市| 桑日县| 高陵县| 香港 |