新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于ARM7處理器的USB接口與CAN總線的實(shí)例

基于ARM7處理器的USB接口與CAN總線的實(shí)例

作者: 時(shí)間:2012-02-20 來源:網(wǎng)絡(luò) 收藏

為了更好的將的通用性和的專業(yè)性結(jié)合起來,通過計(jì)算機(jī)的接口接入專業(yè)網(wǎng)絡(luò),實(shí)現(xiàn)系統(tǒng)控制的便利性和應(yīng)用的高效性,本文講述了一種基于實(shí)現(xiàn)接口與總線的實(shí)例,通過其可以在PC實(shí)現(xiàn)對(duì)CAN總線上設(shè)備的監(jiān)控。

本文引用地址:http://m.butianyuan.cn/article/186896.htm

1 硬件系統(tǒng)設(shè)計(jì)

1.1 簡介及其外圍電路設(shè)計(jì)

主控制器選用NXP公司的LPC2119。LPC2119是基于一個(gè)支持實(shí)時(shí)仿真和跟蹤的16/32位TDMI-STM CPU,并帶有128 KB嵌入的高速FLASH存儲(chǔ)器。128位寬度的存儲(chǔ)器接口和獨(dú)特的加速結(jié)構(gòu)使32位代碼能夠在最大時(shí)鐘速率下運(yùn)行。對(duì)代碼規(guī)模有嚴(yán)格控制的應(yīng)用可使用16位Thumb模式將代碼規(guī)模降低超過30%,而性能的損失卻很小。實(shí)行流水線作業(yè),提供Embedded ICE邏輯,支持片上斷點(diǎn)和調(diào)試點(diǎn),具有先進(jìn)的軟件開發(fā)和調(diào)試環(huán)境。LPC2119具有非常小的64腳封裝、極低的功耗、多個(gè)32位定時(shí)器、4路10位ADC、2路CAN、PWM通道、多個(gè)串行接口,包括2個(gè)16C550工業(yè)標(biāo)準(zhǔn)UART、高速I2C接口(400 kHz)和2個(gè)SPI接口,46個(gè)GPIO以及多達(dá)9個(gè)外部中斷,特別適用于汽車、工業(yè)控制應(yīng)用以及醫(yī)療系統(tǒng)和容錯(cuò)維護(hù)總線。

LPC2119內(nèi)部集成2個(gè)CAN控制器,每一個(gè)CAN控制器都與獨(dú)立CAN控制器SJA1000有著相似的寄存器結(jié)構(gòu)。它的主要特性有:單個(gè)總線上的數(shù)據(jù)傳輸速率高達(dá)1 Mb/s;32位寄存器和RAM訪問;兼容CAN2.0B,ISO11898-1規(guī)范;全局驗(yàn)收濾波器可以識(shí)別所有的11位和29位標(biāo)識(shí)符;驗(yàn)收濾波器為選擇的標(biāo)準(zhǔn)標(biāo)識(shí)符提供Full CAN-style自動(dòng)接收。圖1所示為LPC2119外圍電路,為保證可靠復(fù)位,采用外部復(fù)位電路STM809。

  

圖1 LPC2119外圍電路

1.2 USB接口電路設(shè)計(jì)

USB接口采用沁恒電子的CH375。CH375是一個(gè)USB總線的通用接口芯片,支持USB-HOST主機(jī)方式和USB-DEVICE/SLAVE設(shè)備方式。在本地端,CH375具有8位數(shù)據(jù)總線和讀、寫、片選控制線以及中斷輸出,可以方便地掛接到單片機(jī)/DSP/MCU/MPU等控制器的系統(tǒng)總線上。CH375提供了串行通信方式,通過串行輸入、串行輸出和中斷輸出與單片機(jī)/DSP/MCU/MPU等相連接。圖2所示為CH375的接口電路。

圖2 USB接口電路

1.3 CAN總線接口電路設(shè)計(jì)

CAN總線收發(fā)器采用82C250,并選用6N137作隔離,LPC2119的TD和RD引腳不是直接與82C250的TX、RX引腳相連,而是通過高速光耦6N137與82C250相連,這樣可增強(qiáng)CAN總線節(jié)點(diǎn)的抗干擾能力,從而實(shí)現(xiàn)總線各節(jié)點(diǎn)間電氣隔離。高速光耦6N137用于保護(hù)LPC2119內(nèi)部CAN總線控制器,該光耦兩側(cè)采用5 V的DC-DC電源,可使器件的VCC與VCC1完全隔離,提高系統(tǒng)的抗干擾能力以及節(jié)點(diǎn)的穩(wěn)定性和安全性。圖3所示為LPC2 119與CAN驅(qū)動(dòng)器82C250的連接電路。DC-DC電源模塊采用B0505LS-2W,電路在圖4中所示。

  圖3 CAN驅(qū)動(dòng)器82C250的連接電路

圖4 DC-DC隔離電路

1.4 系統(tǒng)電源設(shè)計(jì)

整個(gè)電路的電源由USB供電,由于LPC2119的IO電路電源要求為3.3 V,內(nèi)核電路電源要求為1.8 V,在本應(yīng)用中采用兩片低壓差線性溫壓器(LDO)1117為系統(tǒng)供電,如圖4所示。

1.5 系統(tǒng)PCB設(shè)計(jì)

整個(gè)系統(tǒng)的PCB采用雙面板方式設(shè)計(jì),大小為100×120,布局及外形如圖5所示。

圖5 布局及外形

2 固件設(shè)計(jì)

本系統(tǒng)軟件設(shè)計(jì)時(shí)采用μVision3 IDE,μVision3IDE是一個(gè)窗口化的軟件開發(fā)平臺(tái),它集成了功能強(qiáng)大的編輯器、工程管理器以及各種編譯工具(包括C編譯器、宏匯編器、鏈接/裝載器和16進(jìn)制文件轉(zhuǎn)換器),通過ULINK仿真調(diào)試。程序框架采用傳統(tǒng)的前后臺(tái)方式。CAN控制器驅(qū)動(dòng)程序包括4部分內(nèi)容:CAN控制器的初始化、報(bào)文的接收、報(bào)文的發(fā)送和總線異常處理。由于LPC2119沒有開發(fā)內(nèi)部讀寫總線,本設(shè)計(jì)在對(duì)CH375操作時(shí)使用通用I/O模擬并口讀寫時(shí)序,其端口定義方式如下:

程序在使用通用I/O模擬并口讀寫時(shí)序?qū)H375的基本操作包括CPU端口初始化、向CH375寫命令、向CH375寫數(shù)據(jù)、從CH375讀數(shù)據(jù),其實(shí)現(xiàn)過程包含:初始化void CH375_PORT_INIT();向CH375寫命令void xWriteCH375Cmd(uint8 mCmd);向CH375寫數(shù)據(jù)void xWrite CH375 Data(uint8 mData);從CH375讀數(shù)據(jù)uint8 xReadCH375Data(void)等4個(gè)基本函數(shù)。

3 結(jié)語

本系統(tǒng)設(shè)計(jì)采用內(nèi)置CAN控制器的LPC2119作為主控制器,CH375作為USB接口芯片,實(shí)現(xiàn)USBCAN轉(zhuǎn)換器,論述了LPC2119的外圍電路、CAN總線驅(qū)動(dòng)電路以及LPC2119與CH375之間的接口連接,并在軟件給出LPC2119使用通用I/O模擬并口讀寫時(shí)序的方法,對(duì)LPC2119,CH375及CAN總線的實(shí)際應(yīng)用具有一定的參考價(jià)值。



關(guān)鍵詞: ARM7 USB CAN 處理器

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉