• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的CAN總線通信接口的設計

    基于FPGA的CAN總線通信接口的設計

    作者: 時間:2010-12-14 來源:網絡 收藏

    總線是現場總線的一種,因為其成本低、容錯能力強、支持分布式控制、通信速率高等優點在汽車、工業控制、航天等領域得到廣泛應用。但是計算機沒有總線接口,為了進行總線的調試,必須具有專用的適配卡才能實現與計算機的通信。目前常用的CAN轉換器是基于單片機設計的,一般只適用于單路CAN總線的數據轉換,可擴展性差。
    在小衛星相機下位機系統中使用了多種總線,如CAN總線與衛星管理計算機的通信;RS422(或RS485)總線與成像單元等下行單元的通信。在進行相機下位機系統地面調試時,可能需要多種總線轉換器。采用將不同總線協議轉換成USB2.0、RS232等可與計算機直接交換數據的協議,可增強設計的靈活性,降低設計的成本和復雜性,且可實現多路總線的數據通信接口。
    這里以CAN接口為例,詳細論述了基于的CAN總線轉換USB方案。

    1 系統硬件組成
    實現CAN總線與計算機雙向通信接口的核心是。它首先接收來自CAN總線的數據,保存在FPGA內部設計的FIF0緩存中,經過內部數據格式的轉換后,由USB控制器讀取并上傳給計算機。而總線數據注入過程的數據流向與之相反。FPCA選用Xilinx公司的Spartan3的XC3S200,系統硬件結構如圖l所示。

    本文引用地址:http://www.czjhyjcfj.com/article/191443.htm


    1.1 USB接口電路
    USB是一種支持即插即用及熱插拔的串行總線,它具有傳輸速率高、連接靈活、使用方便等優點。CYPRESS公司的EZ-USB芯片CY7C68013A支持USB2.0協議,通信可靠,傳輸速率可達480 Mb/s。CY7C68013A工作在SLAVE FIF0異步通信方式下,接口電路如圖2所示。


    SLAVE FIFO異步寫周期中,高電平需維持70ns,低電平需維持50ns,理論最高傳輸速率為8Mb/s,而CAN總線的最高傳輸速率為1Mb/s,符合通信要求。端口PA0~PA1用作USB控制器端向FPGA發送讀寫命令的控制線,由USB固件程序配合上位機端自定義請求代碼產生PA端口的控制信號。另外使用了EEPROM芯片24LC128存放USB固件程序。
    1.2 CAN總線接口電路
    選用Philips公司的SJA1000作為CAN控制器,采用PCA82C250作為CAN收發器,并在CAN控制器與收發器之間使用6N137進行光電隔離,以增強抗干擾能力。將MODE引腳接高電平即SJA1000工作在INTEL模式,引腳與復位芯片MAX706T的RESET引腳相連,進行全局復位。在FPGA與SJA1000連接時需要使用741V164245電平轉換器完成CAN總線5 V TTL電平向3.3 V FPGA I/O電平的轉換。另外,SJA1000的RX1引腳與PCA-82C 250的VREF引腳相連,使用輸入比較器旁路功能,可減少內部延時,增加正常通信的總線長度。具體的接口電路如圖3所示。


    上一頁 1 2 3 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 旌德县| 班玛县| 莎车县| 上犹县| 龙江县| 浠水县| 弥勒县| 临城县| 台东市| 新巴尔虎右旗| 华阴市| 波密县| 中方县| 信丰县| 朔州市| 黔西县| 澜沧| 远安县| 绍兴市| 中超| 铅山县| 晴隆县| 南皮县| 凉城县| 常熟市| 蒙城县| 建湖县| 沭阳县| 张家川| 金川县| 弥渡县| 祁门县| 鲜城| 红安县| 临泽县| 云梦县| 西宁市| 永城市| 南京市| 万载县| 元朗区|