當(dāng)前位置:首頁 > 消費(fèi)電子 > 消費(fèi)電子
[導(dǎo)讀]引言隨著電視機(jī)數(shù)字化程度的提高和功能的增強(qiáng),電視機(jī)軟件升級越來越重要,各種各樣的電視機(jī)故障需要軟件升級來解決。而目前電視機(jī)軟件升級的方法主要通過專門的軟件燒錄儀將軟件燒錄入存儲器,然后將存儲器焊接到電

引言

隨著電視機(jī)數(shù)字化程度的提高和功能的增強(qiáng),電視機(jī)軟件升級越來越重要,各種各樣的電視機(jī)故障需要軟件升級來解決。而目前電視機(jī)軟件升級的方法主要通過專門的軟件燒錄儀將軟件燒錄入存儲器,然后將存儲器焊接到電視機(jī)主板上;或者將電腦與電視機(jī)相連,通過電腦將升級程序?qū)懭腚娨暀C(jī)存儲器。這兩種電視機(jī)軟件升級的方法存在操作復(fù)雜、時間長、成本高,且需要專業(yè)性知識等缺陷。

系統(tǒng)原理

便攜式電視機(jī)軟件升級系統(tǒng)原理如圖1。電視機(jī)軟件升級系統(tǒng)是以單片機(jī)W79E632為基礎(chǔ)的可以獨(dú)立運(yùn)行的系統(tǒng)。首先升級系統(tǒng)作為從機(jī)接收電腦系統(tǒng)發(fā)送過來的升級程序數(shù)據(jù)并進(jìn)行存儲,然后升級系統(tǒng)作為主機(jī)將存儲的升級程序數(shù)據(jù)發(fā)送給電視機(jī)系統(tǒng),電視機(jī)系統(tǒng)將升級程序數(shù)據(jù)存儲、運(yùn)行,從而實(shí)現(xiàn)軟件升級。

目前電視機(jī)的升級接口一般是UART串行接口和I2C接口,該軟件升級系統(tǒng)可以選用兩種接口來升級。電腦系統(tǒng)若沒有這兩個接口,需要通過接口轉(zhuǎn)換裝置來與升級系統(tǒng)相連。

系統(tǒng)硬件實(shí)現(xiàn)

便攜式電視機(jī)軟件升級系統(tǒng)硬件框圖如圖2所示。系統(tǒng)主要包括單片機(jī)W79E632、FLASH存儲器、UART串口接口電路、I2C接口電路、中斷電路以及狀態(tài)指示燈等。

WINBOND公司單片機(jī)W79E632具有128k ISP(In-System Program)FLASH ROM、4k的LD(Loader program)FLASH ROM、軟件指令完全與51單片機(jī)兼容、執(zhí)行效率高和速度快等優(yōu)點(diǎn)。

W79E632有UART串行接口,沒有I2C接口及SPI接口,采用I/O口P8、P9模擬I2C接口,I/O口P4~P7模擬SPI接口。FLASH存儲采用NOR FLASH,3.3V供電。由于FLASH是3.3V供電,W79E632 I/O口電平為5V,為保證數(shù)據(jù)的可靠性,系統(tǒng)有一個5V/3.3V SPI總線轉(zhuǎn)換電路。

系統(tǒng)自身的引導(dǎo)程序、初始化程序以及UART接口數(shù)據(jù)讀寫程序、I2C接口數(shù)據(jù)讀寫程序、SPI接口數(shù)據(jù)讀寫程序等都放在內(nèi)部ROM中,F(xiàn)LASH存儲器專門存儲電視機(jī)升級程序數(shù)據(jù)。開關(guān)SW2、SW3產(chǎn)生低脈沖來觸發(fā)外部中斷INT0、INT1,以控制I2C接口數(shù)據(jù)的接收和發(fā)送;串行接口中斷控制UART接口數(shù)據(jù)的接收,而SW1產(chǎn)生低脈沖通過I/O口P3控制UART接口數(shù)據(jù)的發(fā)送。升級系統(tǒng)通過W79E632內(nèi)部定時器以及I/O口P2、P1控制紅/綠指示燈來表達(dá)當(dāng)前狀態(tài),例如紅綠燈都亮,升級系統(tǒng)運(yùn)行正常,準(zhǔn)備讀寫;紅燈亮,綠燈閃動,升級系統(tǒng)正在寫或讀FLASH存儲器。

系統(tǒng)軟件實(shí)現(xiàn)

升級系統(tǒng)的軟件實(shí)現(xiàn)包括兩部分:作為從機(jī)接收并存儲電腦系統(tǒng)發(fā)送的電視機(jī)升級程序數(shù)據(jù)和作為主機(jī)向電視機(jī)系統(tǒng)發(fā)送存儲的電視機(jī)升級程序數(shù)據(jù)。

系統(tǒng)主頻設(shè)計(jì)為22.1184MHz,UART接口采用8位移位寄存器模式,波特率是系統(tǒng)主頻率的1/12,每接收完或發(fā)送完一個數(shù)據(jù)字節(jié)將產(chǎn)生中斷;I2C接口最高傳輸速率為100kb/s,SPI接口最高傳輸速率為2.2Mb/s。

系統(tǒng)自檢、初始化等程序以1000H為起始地址。上電后直接跳到1000H處,進(jìn)行初始化設(shè)置,建立好堆棧,設(shè)置好UART接口、I2C接口以及SPI接口相關(guān)參數(shù);紅綠指示燈都亮,允許中斷。此后系統(tǒng)正常運(yùn)行,等待中斷并監(jiān)視I/O口P3的狀態(tài),以決定系統(tǒng)是作為主機(jī)還是從機(jī)進(jìn)行下一步運(yùn)作。

作為從機(jī)接收并存儲升級程序數(shù)據(jù)

升級系統(tǒng)作為從機(jī)接收并存儲電腦系統(tǒng)發(fā)送的電視機(jī)升級程序數(shù)據(jù),流程如圖3所示。

1.系統(tǒng)正常運(yùn)行,開串口中斷、外部中斷及定時器中斷,等待中斷。

2.從I2C接口接收升級程序數(shù)據(jù)時,按一下開關(guān)SW2,產(chǎn)生外部中斷INT0。屏蔽除定時器中斷外所有的中斷,將與當(dāng)前狀態(tài)相關(guān)的寄存器及程序指針數(shù)據(jù)暫時存入堆棧。同時設(shè)置定時器相關(guān)參數(shù),使W79E632能夠向I/O口P1發(fā)送周期為500ms的脈沖信號以控制綠燈閃動,表示正在接收數(shù)據(jù)。串口中斷由W79E632自動產(chǎn)生。如果產(chǎn)生串口中斷,則屏蔽除串口中斷、定時器中斷外所有的中斷,其它設(shè)置與INT0中斷相同。

3.產(chǎn)生INT0中斷時,則啟動I2C接口讀程序I2C_Read將I/O口緩沖寄存器中的數(shù)據(jù)寫入W79E632內(nèi)部RAM;如果產(chǎn)生串行中斷,則啟動串行接口讀程序UART_Read,將串行接口寄存器中的數(shù)據(jù)寫入W79E632內(nèi)部RAM內(nèi),并清除串口接收中斷標(biāo)志RI,以使下一個數(shù)據(jù)能準(zhǔn)確接收。

4.電腦系統(tǒng)以256字節(jié)作為一個數(shù)據(jù)塊進(jìn)行發(fā)送,每發(fā)送完256字節(jié)后發(fā)送一個累加校驗(yàn)和進(jìn)行校驗(yàn)。W79E632校驗(yàn)數(shù)據(jù)有效后,啟動FLASH寫程序SPI_Write,將RAM中的256字節(jié)數(shù)據(jù)寫入FLASH;寫完后向電腦系統(tǒng)發(fā)送響應(yīng)信號“RIGHT”,電腦系統(tǒng)繼續(xù)發(fā)送數(shù)據(jù)。W79E632判斷下一個字符是否是“結(jié)束”字符(即每一個數(shù)據(jù)塊的第一個字符),不是“結(jié)束”字符則繼續(xù)接收數(shù)據(jù);如果是“結(jié)束”字符則啟動SPI_Write程序?qū)?ldquo;結(jié)束”字符直接寫入FLASH,然后結(jié)束。W79E632校驗(yàn)后數(shù)據(jù)無效,則立即向電腦系統(tǒng)發(fā)送響應(yīng)信號“ERROR”,然后結(jié)束。

5.結(jié)束時,W79E632清除內(nèi)部RAM、I/O口緩沖寄存器和串行接口寄存器中的數(shù)據(jù),將定時器、UART接口或I2C接口恢復(fù)為初始狀態(tài),讀出堆棧中保存的數(shù)據(jù)并寫入相應(yīng)的寄存器以恢復(fù)中斷前狀態(tài);綠燈繼續(xù)閃動2s后開中斷,系統(tǒng)恢復(fù)正常運(yùn)行狀態(tài)。

作為主機(jī)發(fā)送升級程序數(shù)據(jù)

升級系統(tǒng)作為主機(jī)的流程如圖4所示。

1.系統(tǒng)正常運(yùn)行,開串口中斷、外部中斷及定時器中斷,查詢I/O口P3的狀態(tài),等待中斷。

2.從I2C接口發(fā)送存儲的升級程序數(shù)據(jù)時,按一下開關(guān)SW3產(chǎn)生外部中斷INT1。此時設(shè)置與產(chǎn)生INT0時相同。如果查詢到P3口有脈沖則屏蔽除串口中斷、定時器中斷外的所有中斷,其他設(shè)置與產(chǎn)生INT1中斷相同。

3.W79E632啟動FLASH讀程序SPI_Read,讀取FLASH中存儲的升級程序數(shù)據(jù),每次連續(xù)讀完256字節(jié)存入W79E632的RAM中。W79E632每次存儲數(shù)據(jù)塊的第一個字符存儲前,判斷是否是“結(jié)束”字符。

4.W79E632讀到“結(jié)束”字符,表示數(shù)據(jù)發(fā)送完畢,進(jìn)入結(jié)束處理,反之則將通過串口或I2C接口發(fā)送數(shù)據(jù)。如果通過串口發(fā)送數(shù)據(jù),則啟動UART_Write將RAM中的數(shù)據(jù)寫入串行接口寄存器進(jìn)行發(fā)送;如果是I2C接口發(fā)送數(shù)據(jù),則啟動I2C_Write將RAM中的數(shù)據(jù)寫入I/O口緩沖器寄存器進(jìn)行發(fā)送。每發(fā)送完256字節(jié)的數(shù)據(jù),W79E632繼續(xù)發(fā)送一個累加校驗(yàn)和并等待電視機(jī)的響應(yīng)信號。收到電視機(jī)返回的“RIGHT”信號則繼續(xù)發(fā)送數(shù)據(jù),如果收到返回的“ERROR”信號則結(jié)束。

5.結(jié)束時,W79E632清除內(nèi)部RAM、I/O緩沖寄存器和串行接口寄存器中的數(shù)據(jù),將定時器、UART或I2C接口恢復(fù)為初始狀態(tài),讀出堆棧中保存的數(shù)據(jù)并寫入相應(yīng)的寄存器以恢復(fù)中斷前狀態(tài);綠燈繼續(xù)閃動2s后開中斷,系統(tǒng)恢復(fù)正常運(yùn)行狀態(tài)。

結(jié)語

本文提出以單片機(jī)W79E632為基礎(chǔ)平臺的一種便攜式電視機(jī)軟件升級系統(tǒng)的設(shè)計(jì),系統(tǒng)能夠用UART接口或I2C接口接收并存儲電視機(jī)升級程序數(shù)據(jù),同時能夠通過UART接口或I2C接口將存儲的升級程序數(shù)據(jù)傳送給電視機(jī),實(shí)現(xiàn)電視機(jī)的軟件升級。

參考文獻(xiàn):

[1] Preliminary W79E632 Data Sheet, Revision A1[D].Winbond Electronics Corp, 2004

[2] I2S bus specification[D]. Philips Semiconductors, 1986

[3] 莊子明,CHENG E.基于DMB-TH的地面數(shù)字電視機(jī)頂盒的軟件升級[J].中國有線電視,2008(8):809-813

[4] 劉青峰.機(jī)頂盒軟件升級機(jī)制與注意問題[J].中國有線電視,2005(12):1134-1135

[5] 郭靜華,歐陽斌林.SPI總線從機(jī)接口實(shí)時模擬的實(shí)現(xiàn)[J].東北農(nóng)業(yè)大學(xué)學(xué)報,2007, 38(5): 669-671

[6] 呂剛,李強(qiáng).AVR單片機(jī)軟件模擬UART通信接口[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2003(1): 73-74

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

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(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ùn)行,同時企業(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 手機(jī) 衛(wèi)星通信

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

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

北京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)閉