基于MCF52235 的RFID 通用開發(fā)平臺設計
原則上開發(fā)基于此平臺的各種應用只需要設計PC 端的應用軟件,其余軟、硬件構件不需要進行改動,這就是RFID 通用開發(fā)平臺的構件化封裝設計的思想。 高層構件層提供了訪問各個構件的網(wǎng)絡命令,PC 端主機操作網(wǎng)絡、射頻、LCD、USB、語音等構件時,只需發(fā)送相應的網(wǎng)絡命令即可。
2.1 硬件設計
硬件構件模型中首先是主控制器MCU 的選型。 由于RFID 應用廣泛, 很多場合要求控制器有較快的處理速度, 有多種控制模塊如A/D 控制模塊、CAN 總線模塊、以太網(wǎng)控制模塊等。 綜合分析,文中選擇了飛思卡爾單芯片解決方案MCF52235處理器。 該處理器采用Coldfire V2 內核和精簡指令集(RISC),頻率為60 MHz,通過設置鎖相環(huán)( PLL ),MCF52235 能夠穩(wěn)定工作在80 MHz. 內部集成了10/100M 快速以太網(wǎng)控制器(FEC)、以太網(wǎng)物理收發(fā)器(EPHY)等模塊,還有UART,I2C、QSPI、PWM 、快速ADC 等模塊,實現(xiàn)了單芯片解決方案。
由于MCF52235 處理器中集成的以太網(wǎng)模塊已經(jīng)包括了以太網(wǎng)控制器和物理層收發(fā)器,因此網(wǎng)絡硬件構件僅需添加少量的元件便可。 MCF52235處理器的PHY_RXP、PHY_RXN 引腳用于接收數(shù)據(jù),PHY_TXP、PHY_TXN 引腳用于發(fā)送數(shù)據(jù)。 這兩對收、發(fā)引腳分別接50 Ω 的上拉電阻。 SPDLED 引腳接網(wǎng)速LED 燈指示當前的連接速度是10 Mbps還是100 Mbps,LNKLED 引腳接的LED 燈則指示當前是否已經(jīng)與另一個網(wǎng)絡設備連接。 如果RFID射頻系統(tǒng)中讀卡器終端并不多,可以不采用網(wǎng)絡而是通過USB 接口與PC 機進行通信。 USB 構件采用飛思卡爾的單芯片MC9S12UF32, 它提供了高速USB2.0 接口, 即插即用。 此處使用USB 接口不是為了獲得更高的速度而是為了使用方便,所以選擇通過MCF52235 的一個串口與UF32 通信。
射頻芯片選用的是飛利浦RC531 芯片,工作頻率為13.56 MHz, 在不外加功率放大器時讀寫距離可達10 cm,它通過SPI 接口與MCF52235 通信。
LCD 構件采用耀宇科技的YM12864 圖形點陣液晶。 該液晶顯示器可以顯示4 行、每行8 個漢字或者16 個字母。 它有兩種常用的連接方式:并行和串行。 并行連接需要11 根引腳線, 串行連接僅用3 根引腳線,因此與MCU 的連接采用串行的連接方式。 另外還需一個引腳控制背光燈電源的正極LEDA開關。 語音模塊和LCD 模塊的功能一樣,都是為了增強人機交互, 它采用上海奔流公司的BMP5008語音芯片。 狀態(tài)指示燈用于觀察系統(tǒng)的運行狀態(tài)和用戶的操作,通過GPIO 口連接,幾乎所有的MCF52235 引腳都可以作為GPIO 引腳。 主控制器MCF52235 與各模塊的引腳連接如圖4 所示。
2.2 軟件設計
根據(jù)平臺的軟件構件層次模型,先將各個模塊的驅動程序封裝成構件。 底層軟件構件是與硬件直接打交道的,它由頭文件和源程序文件兩部分組成。 編程思想是分析構件的共性和個性,抽取出構件的屬性和對外接口函,用戶使用該構件時只需了解其接口函數(shù), 而不必去了解內部具體如何實現(xiàn)。
頭文件部分給出構件屬性的宏定義和對外接口函數(shù)的原型說明,源程序部分是函數(shù)的實現(xiàn)。
以太網(wǎng)構件主要包括以太網(wǎng)物理收發(fā)器(EPHY)和快速以太網(wǎng)控制器(FEC) 的初始化、TCP/IP 協(xié)議棧實現(xiàn)。 它的接口函數(shù)原型說明如下:
//==================================
uint8 hw_ephy_init (uint16 sysclk,uint8 ratemode,
評論