在PowerPC上實(shí)現I2C控制及實(shí)現設備間通信的方法


I2C讀、寫(xiě)流程
3.2.2 通過(guò)PCI局部總線(xiàn)實(shí)現設備間通信
PCI局部總線(xiàn)是微型計算機中處理器/存儲器與外圍控制部件、擴展卡之間的互聯(lián)接口,PCI局部總線(xiàn)規范是互聯(lián)機構的協(xié)議,也是電氣和機械配置的規范。PCI局部總線(xiàn)具有總線(xiàn)主設備支持和自動(dòng)配置功能,提供了3類(lèi)地址空間,即存儲器、I/O和配置地址空間。這些特點(diǎn)為總線(xiàn)上各設備間的通信奠定了基礎。
車(chē)輛顯控系統中存在多個(gè)PCI設備,鑒于PowerPC較強的處理能力和實(shí)時(shí)操作系統的實(shí)時(shí)多任務(wù)處理功能,使得PowerPC控制主板成為“主設備”,負責設備間的協(xié)調,其他設備作為“從設備”。由“主設備”根據“從設備”的設備識別號和供應商識別號對其進(jìn)行配置,根據地址空間的存儲映射訪(fǎng)問(wèn)方式進(jìn)行數據通信。PCI設備間的通信流程如圖6所示。

3.3 應用程序與設備驅動(dòng)的連接
應用程序是通過(guò)調用設備驅動(dòng)程序來(lái)訪(fǎng)問(wèn)設備的。調用設備驅動(dòng)有3種方式:直接調用、通過(guò)操作系統內核調用和通過(guò)操作系統的擴展模塊調用。直接調用方式可以使應用程序高效地訪(fǎng)問(wèn)設備,但移植性差,且用戶(hù)需自行管理設備;通過(guò)內核調用,由操作系統管理,移植性好,但增加了系統開(kāi)銷(xiāo);通過(guò)擴展模塊調用的優(yōu)缺點(diǎn)與通過(guò)內核調用類(lèi)似。
車(chē)輛顯控系統是一個(gè)復雜的實(shí)時(shí)操作系統,需要良好的可移植性,且存在擴展模塊,因此應用程序同時(shí)使用通過(guò)內核和擴展模塊兩種方式來(lái)調用設備驅動(dòng)程序。通過(guò)內核調用通用設備驅動(dòng)程序,通過(guò)擴展模塊調用特殊驅動(dòng)程序。
3.4 應用程序與設備的直接連接
針對一些特殊設備的控制要求,PowerPC控制主板對其采用直接控制的方式,而不通過(guò)設備驅動(dòng)。
I2C總線(xiàn)是一種兩線(xiàn)式串行總線(xiàn),主要應用于微處理器外圍芯片的擴展。它只需兩根線(xiàn)——串行數據線(xiàn)和串行時(shí)鐘線(xiàn),即可實(shí)現微處理器與總線(xiàn)上具有I2C總線(xiàn)接口的設備進(jìn)行數據交換。
I2C總線(xiàn)設備以其簡(jiǎn)單性和有效性被廣泛使用。車(chē)輛顯控系統中用于模擬視頻顯示的視頻解碼器CCX25836就是其中之一。CCX25836的寄存器需要用I2C總線(xiàn)進(jìn)行配置,系統設計采用FPGA構建了硬件I2C電氣結構,在PowerPC控制主板上用軟件模擬視頻解碼器所需的I2C讀寫(xiě)流程(詳見(jiàn)圖3~4),設置其寄存器,從而實(shí)現視頻通道的切換、亮度對比度的調整等視頻顯示功能,如圖5所示。
結語(yǔ)
PowerPC MPC8548E微處理器以其豐富的接口、較強的運算能力、較快的處理速度、穩定性和易擴展性受到嵌入式系統開(kāi)發(fā)者們的青睞。車(chē)輛顯控系統的主板采用此芯片為核心處理器,配備必要的外圍接口,并采用VxWorks作為運行在其上的操作系統,使其具備了實(shí)時(shí)處理多任務(wù)的能力。通過(guò)擴展PCI設備,實(shí)現了顯控系統設備間、顯示系統與其他系統設備間的數據交換和控制。
評論