當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]在PowerPC上實現(xiàn)I2C控制及實現(xiàn)設(shè)備間通信的方法

摘要:車輛顯控系統(tǒng)的控制主板選用高性能PowerPC MPC8548E處理器,擴展了顯示器、內(nèi)存、Flash存儲器和接口設(shè)備。以此主板為平臺,實現(xiàn)了車輛數(shù)據(jù)和視頻的實時顯示和控制。本文重點闡述了在PowerPC上用軟件實現(xiàn)I2C控制以及通過PCI總線實現(xiàn)設(shè)備間通信的方法。

車輛顯控系統(tǒng)是對車輛工作狀態(tài)信息進(jìn)行顯示、控制,并完成人機交互的系統(tǒng)。車輛顯控系統(tǒng)需要在顯示文字、圖形和視頻的同時響應(yīng)按鍵操作,并對車輛控制系統(tǒng)進(jìn)行操控。這就要求系統(tǒng)具有實時響應(yīng)、并行處理多個任務(wù)的能力。本文在以PowerPC MPC8548E為處理器的控制主板上應(yīng)用實時操作系統(tǒng)VxWorks,實現(xiàn)了實時響應(yīng)系統(tǒng)操作、顯示相應(yīng)信息的功能。以此主板為核心控制主板的顯控系統(tǒng),具有高性能、高穩(wěn)定性和良好的兼容性。

1 PowerPC MPC8548及其控制主板概述

PowerPC MPC8548是Freescale公司開發(fā)的新一代PowerQUICC III系列的高性能處理器。其內(nèi)部工作頻率可達(dá)1.33 GHz,在該工作頻率上處理性能可達(dá)3 065MIPS。一級緩存有指令緩存和數(shù)據(jù)緩存各32 KB,二級緩存為512 KB,支持DDR1和DDR2存儲器控制器,支持PCI、PCI-X和PCIE接口,支持SRapid IO接口和4個GbE接口。MPC8548不僅擁有強大的數(shù)據(jù)處理能力,還具有很強的通信處理能力,可靠性高,抗惡劣環(huán)境能力好,特別適合對網(wǎng)絡(luò)性能要求較高及有多個接口的場合。

車輛顯控系統(tǒng)的核心控制主板是以PowerPCMPC8548E為處理器的嵌入式系統(tǒng)。該系統(tǒng)通過擴展顯示器、內(nèi)存、Flash存儲器以及其他接口控制電路,構(gòu)成了高性能、高可靠性的核心控制主板。以此控制主板為硬件平臺,移植嵌入式實時操作系統(tǒng)VxWorks,對接口設(shè)備驅(qū)動進(jìn)行二次開發(fā),繼而以VxWorks為軟件開發(fā)平臺,開發(fā)應(yīng)用程序,實現(xiàn)顯示和控制任務(wù)。

2 PowerPC控制主板硬件設(shè)計

如圖1所示,PowerPC控制主板硬件系統(tǒng)由處理器、外圍電路和外部接口設(shè)備組成。外圍電路包括電源、晶振和復(fù)位電路;外部接口電路包括串口、網(wǎng)口、EL/LVDS液晶顯示、16位PCI總線、USB接口、Flash、鼠標(biāo)和鍵盤等。

 

 

PowerPC控制主板硬件結(jié)構(gòu)圖

3 PowerPC控制主板軟件設(shè)計

車輛顯控系統(tǒng)是一個多任務(wù)的復(fù)雜的實時嵌入式系統(tǒng),采用操作系統(tǒng)對所有軟硬件資源進(jìn)行分配、調(diào)度、控制和協(xié)調(diào),尤其是協(xié)調(diào)并發(fā)活動,如任務(wù)調(diào)度、內(nèi)存管理、同步機制、異常和中斷處理、任務(wù)間通信等。WindRiver公司(現(xiàn)被Intel收購)的VxWorks是一個實時嵌入式操作系統(tǒng)。VxWorks操作系統(tǒng)已經(jīng)廣泛應(yīng)用于航空、汽車等行業(yè),鑒于VxWorks對PowerPC處理器體系結(jié)構(gòu)的支持,使得應(yīng)用PowerPC處理器的嵌入式系統(tǒng)大多以其作為操作系統(tǒng)。因此,車輛顯控系統(tǒng)也采用VxWorks作為操作系統(tǒng)。

嵌入式系統(tǒng)是根據(jù)實際要求對硬件資源進(jìn)行配置和裁減而成的系統(tǒng)。由于嵌入式產(chǎn)品是軟硬件的結(jié)合體,且隨著產(chǎn)品的研制完成,軟件就已固化在硬件環(huán)境中,因此,軟硬件綜合開發(fā)是嵌入式系統(tǒng)的一大特點,而軟件設(shè)計是在緊密聯(lián)系硬件的基礎(chǔ)上完成的。

PowerPC控制主板的軟件設(shè)計遵循嵌入式軟件的體系結(jié)構(gòu)設(shè)計方法,分為如下兩部分:

①特殊設(shè)備驅(qū)動的開發(fā),通用設(shè)備驅(qū)動程序的集成,即板級支持包BSP的開發(fā)。

②應(yīng)用程序的開發(fā),即顯控任務(wù)的實現(xiàn)。

3.1 設(shè)備驅(qū)動開發(fā)

由于本系統(tǒng)的硬件平臺是根據(jù)實際需要設(shè)計的,故必須根據(jù)實際的接口對設(shè)備驅(qū)動進(jìn)行開發(fā)。在VxWorks提供的通用設(shè)備驅(qū)動的架構(gòu)上,結(jié)合每個具體設(shè)備的工作原理和功能,以數(shù)據(jù)流為中心,在掌握設(shè)備與CPU及外接設(shè)備的通信方式后,對具體設(shè)備的驅(qū)動進(jìn)行逐一開發(fā)。設(shè)備驅(qū)動程序開發(fā)完成后,最終形成MPC8548E的板級支持包BSP。硬件設(shè)備程序的集成包括如下幾個方面。

(1)特殊設(shè)備驅(qū)動

一些特殊設(shè)備的驅(qū)動程序不在VxWorks配備的標(biāo)準(zhǔn)設(shè)備清單中,因此需自行開發(fā),例如PCI線驅(qū)動、DDR內(nèi)存驅(qū)動和顯示驅(qū)動等。

(2)通用設(shè)備驅(qū)動

通用設(shè)備的驅(qū)動程序可以直接應(yīng)用VxWorks標(biāo)準(zhǔn)驅(qū)動,或在標(biāo)準(zhǔn)驅(qū)動的基礎(chǔ)上稍作改動即可,例如鼠標(biāo)、鍵盤、串口、以太網(wǎng)接口和USB接口等。

3.2 應(yīng)用程序開發(fā)

首先將車輛顯控系統(tǒng)要完成的任務(wù)分解為多個任務(wù):按鍵查詢、界面切換、數(shù)據(jù)顯示、視頻顯示和參數(shù)存儲。應(yīng)用程序保證各任務(wù)按照規(guī)定的方式實時完成。PowerPC控制主板軟件結(jié)構(gòu)圖如圖2所示。

 

 

PowerPC控制主板軟件結(jié)構(gòu)圖

按鍵查詢:定時查詢是否有鍵按下,如有,則向界面切換、數(shù)據(jù)顯示、視頻顯示和參數(shù)存儲發(fā)送消息,完成相應(yīng)的任務(wù)。

界面切換:切換到相應(yīng)界面。

數(shù)據(jù)顯示:顯示車輛控制系統(tǒng)在不同工作模式下的狀態(tài)。

視頻顯示:切換視頻通道,調(diào)節(jié)圖像的亮度、對比度,并進(jìn)行相關(guān)操作。

參數(shù)存儲:根據(jù)指令保存參數(shù),或等間隔地將參數(shù)保存到緩存。

3.2.1 I2C接口控制的軟件實現(xiàn)

I2C總線是一種兩線式串行總線,主要應(yīng)用于微處理器外圍芯片的擴展。它只需兩根線——串行數(shù)據(jù)線和串行時鐘線,即可實現(xiàn)微處理器與總線上具有I2C總線接口的設(shè)備進(jìn)行數(shù)據(jù)交換。

I2C總線設(shè)備以其簡單性和有效性被廣泛使用。車輛顯控系統(tǒng)中用于模擬視頻顯示的視頻解碼器CCX25836就是其中之一。CCX25836的寄存器需要用I2C總線進(jìn)行配置,系統(tǒng)設(shè)計采用FPGA構(gòu)建了硬件I2C電氣結(jié)構(gòu),在PowerPC控制主板上用軟件模擬視頻解碼器所需的I2C讀寫流程,設(shè)置其寄存器,從而實現(xiàn)視頻通道的切換、亮度和對比度的調(diào)整等視頻顯示功能。I2C讀、寫流程如圖3、圖4所示,通過I2C總線設(shè)置亮度、對比度的流程如圖5所示。

 

[!--empirenews.page--]

 

I2C讀、寫流程

3.2.2 通過PCI局部總線實現(xiàn)設(shè)備間通信

PCI局部總線是微型計算機中處理器/存儲器與外圍控制部件、擴展卡之間的互聯(lián)接口,PCI局部總線規(guī)范是互聯(lián)機構(gòu)的協(xié)議,也是電氣和機械配置的規(guī)范。PCI局部總線具有總線主設(shè)備支持和自動配置功能,提供了3類地址空間,即存儲器、I/O和配置地址空間。這些特點為總線上各設(shè)備間的通信奠定了基礎(chǔ)。

車輛顯控系統(tǒng)中存在多個PCI設(shè)備,鑒于PowerPC較強的處理能力和實時操作系統(tǒng)的實時多任務(wù)處理功能,使得PowerPC控制主板成為“主設(shè)備”,負(fù)責(zé)設(shè)備間的協(xié)調(diào),其他設(shè)備作為“從設(shè)備”。由“主設(shè)備”根據(jù)“從設(shè)備”的設(shè)備識別號和供應(yīng)商識別號對其進(jìn)行配置,根據(jù)地址空間的存儲映射訪問方式進(jìn)行數(shù)據(jù)通信。PCI設(shè)備間的通信流程如圖6所示。

 

 

3.3 應(yīng)用程序與設(shè)備驅(qū)動的連接

應(yīng)用程序是通過調(diào)用設(shè)備驅(qū)動程序來訪問設(shè)備的。調(diào)用設(shè)備驅(qū)動有3種方式:直接調(diào)用、通過操作系統(tǒng)內(nèi)核調(diào)用和通過操作系統(tǒng)的擴展模塊調(diào)用。直接調(diào)用方式可以使應(yīng)用程序高效地訪問設(shè)備,但移植性差,且用戶需自行管理設(shè)備;通過內(nèi)核調(diào)用,由操作系統(tǒng)管理,移植性好,但增加了系統(tǒng)開銷;通過擴展模塊調(diào)用的優(yōu)缺點與通過內(nèi)核調(diào)用類似。

車輛顯控系統(tǒng)是一個復(fù)雜的實時操作系統(tǒng),需要良好的可移植性,且存在擴展模塊,因此應(yīng)用程序同時使用通過內(nèi)核和擴展模塊兩種方式來調(diào)用設(shè)備驅(qū)動程序。通過內(nèi)核調(diào)用通用設(shè)備驅(qū)動程序,通過擴展模塊調(diào)用特殊驅(qū)動程序。

3.4 應(yīng)用程序與設(shè)備的直接連接

針對一些特殊設(shè)備的控制要求,PowerPC控制主板對其采用直接控制的方式,而不通過設(shè)備驅(qū)動。

I2C總線是一種兩線式串行總線,主要應(yīng)用于微處理器外圍芯片的擴展。它只需兩根線——串行數(shù)據(jù)線和串行時鐘線,即可實現(xiàn)微處理器與總線上具有I2C總線接口的設(shè)備進(jìn)行數(shù)據(jù)交換。

I2C總線設(shè)備以其簡單性和有效性被廣泛使用。車輛顯控系統(tǒng)中用于模擬視頻顯示的視頻解碼器CCX25836就是其中之一。CCX25836的寄存器需要用I2C總線進(jìn)行配置,系統(tǒng)設(shè)計采用FPGA構(gòu)建了硬件I2C電氣結(jié)構(gòu),在PowerPC控制主板上用軟件模擬視頻解碼器所需的I2C讀寫流程(詳見圖3~4),設(shè)置其寄存器,從而實現(xiàn)視頻通道的切換、亮度對比度的調(diào)整等視頻顯示功能,如圖5所示。

結(jié)語

PowerPC MPC8548E微處理器以其豐富的接口、較強的運算能力、較快的處理速度、穩(wěn)定性和易擴展性受到嵌入式系統(tǒng)開發(fā)者們的青睞。車輛顯控系統(tǒng)的主板采用此芯片為核心處理器,配備必要的外圍接口,并采用VxWorks作為運行在其上的操作系統(tǒng),使其具備了實時處理多任務(wù)的能力。通過擴展PCI設(shè)備,實現(xiàn)了顯控系統(tǒng)設(shè)備間、顯示系統(tǒng)與其他系統(tǒng)設(shè)備間的數(shù)據(jù)交換和控制。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉