新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于CAN總線與以太網的嵌入式網關設計

        基于CAN總線與以太網的嵌入式網關設計

        作者: 時間:2009-08-26 來源:網絡 收藏

        2.2 RTL8019AS驅動程序的實現
        RTL8019AS的驅動程序和SJA的驅動程序一樣,有3種功能:芯片初始化、收包、發包。
        (1)RTL8019AS的初始化。RTL8019AS的初始化過程比較復雜,但十分重要,它決定了通信過程中的一些重要參數。如設置相關工作模式的寄存器,分配和初始化接收及發送緩沖區,初始化網卡接收地址等,其流程圖見圖5所示。

        本文引用地址:http://www.104case.com/article/152371.htm

        (2)數據的發送與接收。因為在RTL8019AS的初始化程序中已經完成了的物理地址設置,并指定了發送緩沖區起始頁面地址寄存器TPSR。此外,RTL8019AS的CRC校驗自動生成器也被使能,所以RTL8019AS的數據包發送程序相對要簡單。在數據包的發送過程中,AT89C55只要通過遠程DMA將待發送的數據包寫至RTL8019AS片內SRAM的發送緩沖區,并啟動發送過程即可。
        在接收數據包時,有查詢和中斷兩種方式,鑒于AT89C55的處理能力有限,在該中采用查詢方式,根據判斷CURB==BNRY+1,可以判斷是否收到新的數據包,如果有則通過DMA讀操作從網卡芯片RAM讀出數據。
        2.3 協議轉換流程
        網絡接口實現兩種網絡的互連。當應用層有數據要發送到節點時,首先將數據發送到,由控制器協議轉換模塊解析完整的協議數據包,通過控制器發送到CAN。反之,當CAN設備有數據要發送到用戶層時,首先將數據發送到透明,由CAN控制器協議模塊將完整的CAN協議數據包存放在緩沖區,再通知主控芯片,由它調用以太網控制協議轉換模塊,將完整的 CAN協議數據包作為應用層數據封裝起來,再發送到以太網的應用層。

        3 結 語
        這里介紹的是一種低成本、高可靠性、快捷的CAN以太網網關的硬件、軟件方案,通過實際應用證明,該可以作為CAN節點的一個模塊,能夠與儀器儀表等設備相結合,使其具有網絡通信的能力,比較同類產品的設計,該設計能大大提高其性價比。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 永兴县| 曲松县| 敦煌市| 阜康市| 二连浩特市| 怀仁县| 称多县| 镇坪县| 波密县| 英吉沙县| 朝阳区| 原平市| 万源市| 襄城县| 历史| 雷波县| 宜都市| 且末县| 莱西市| 连江县| 通州区| 泰和县| 夹江县| 凉城县| 泌阳县| 汶川县| 九龙县| 新营市| 石狮市| 巢湖市| 宜春市| 辰溪县| 佛山市| 阳朔县| 孝昌县| 佳木斯市| 吴桥县| 军事| 沈丘县| 扶沟县| 甘南县|