當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]本文設(shè)計(jì)了一種在生產(chǎn)線體上升級(jí)程序用的1對(duì)8的ISP系統(tǒng),利用128KB的MTV412作為主設(shè)備,同時(shí)對(duì)線體上8臺(tái)從設(shè)備(64KB的51單片機(jī))進(jìn)行程序更新。

摘要 目前國(guó)內(nèi)一線工廠在生產(chǎn)以51單片機(jī)為微控制器芯片的視頻產(chǎn)品的過(guò)程中,由于許多51微控制器都有ISP功能,大多是通過(guò)PC在生產(chǎn)線體上進(jìn)行程序更新,現(xiàn)場(chǎng)應(yīng)用時(shí)很不方便。針對(duì)這種情況,本文設(shè)計(jì)了一種在生產(chǎn)線體上升級(jí)程序用的1對(duì)8的ISP系統(tǒng),利用128KB的MTV412作為主設(shè)備,同時(shí)對(duì)線體上8臺(tái)從設(shè)備(64KB的51單片機(jī))進(jìn)行程序更新。本系統(tǒng)操作簡(jiǎn)單,節(jié)省資源,大走提高了工廠生產(chǎn)效率,有極高的實(shí)用價(jià)值和靈活性。
關(guān)鍵詞 ISP Bank I2C CRC MTV412


引 言
    隨著微控制器應(yīng)用領(lǐng)域的不斷擴(kuò)展和深入,越來(lái)越多種類的微控制器具有ISP(In Systern Programming,在系統(tǒng)編程)功能。使用ISP可以使工廠在產(chǎn)品設(shè)計(jì)、制造過(guò)程中不必把微控制器從目標(biāo)板中拔出,通過(guò)I2C實(shí)現(xiàn)在線體上程序升級(jí)。目前,在國(guó)內(nèi)一線工廠,主設(shè)備(上位機(jī))一般都用PC,這樣不僅浪費(fèi)資源,而且靈活性較差;同時(shí)由于在線體上只能對(duì)單個(gè)從設(shè)備進(jìn)行程序更新,嚴(yán)重影響了工廠的生產(chǎn)效率。為此,本文設(shè)計(jì)了一種基于MTV412微控制器的l對(duì)8的ISP系統(tǒng),主設(shè)備采用Myson公司的MTV412,可以同時(shí)對(duì)8臺(tái)從設(shè)備進(jìn)行在線程序更新。
    目前,51內(nèi)核的微控制器ISP模式一般分為兩大類:一類是使用JTAG協(xié)議的ISP模式;另一類ISP模式是使用一條特殊的指令,使單片機(jī)進(jìn)入ISP。在進(jìn)入ISP模式后,要自己控制對(duì)單片機(jī)的擦除寫入邏輯。這一類模式又可細(xì)分為2種不同的模式:①進(jìn)入ISP模式后,單片機(jī)只提供一個(gè)接口,不再運(yùn)行從設(shè)備的程序,擦寫邏輯全由主設(shè)備提供,本系統(tǒng)中MTV412和MTV312就屬于這種模式;②進(jìn)入ISP模式以后,從設(shè)備會(huì)運(yùn)行在某一區(qū)域已經(jīng)編寫的程序,芯片的編程邏輯都由芯片中這段程序控制,主設(shè)備只是作為單片機(jī)的一個(gè)數(shù)據(jù)源,向單片機(jī)傳輸要擦寫的數(shù)據(jù),如Winbond公司的W79E632。


1 背景介紹
1.1 MTV412和MTV312
   
MTV412和MTV312是臺(tái)灣Myson公司的產(chǎn)品,主要是面向LCD Monitor和LCD TV的視頻控制IC。該款芯片可以滿足視頻應(yīng)用中的控制需求,因而被廣泛應(yīng)用于視頻類產(chǎn)品中,在本系統(tǒng)中,主設(shè)備采用的是128 KBMTV412微控制器。從設(shè)備采用MTV312,是64 KB的帶有ISP功能的51系列8位微控制器。
1.2 編譯環(huán)境Keil C51
    Keil C51是美國(guó)Keil Software公司出品的5l系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng)。它是一種專門為8051單片機(jī)設(shè)計(jì)的高效率的C語(yǔ)言編譯器,符合ANSI標(biāo)準(zhǔn),生產(chǎn)的程序代碼運(yùn)行速度極高,所需要的存儲(chǔ)空間極小,完全可以和匯編語(yǔ)言相媲美。Cx51已被完全集成到一個(gè)功能強(qiáng)大的全新集成開(kāi)發(fā)環(huán)境uVision2中。uVision2提供了強(qiáng)大的項(xiàng)目管理功能,可以十分方便地進(jìn)行結(jié)構(gòu)化多模塊程序設(shè)計(jì)。本系統(tǒng)主設(shè)備的源代碼通過(guò)Keil C5l編譯獲得燒寫所需的HEX或者BIN文檔。
1.3 切換Bank原理
   
傳統(tǒng)的5l系列單片機(jī)是8位的,因此它最多可以訪問(wèn)64 KB地址空間,如果要用51系列的單片機(jī)訪問(wèn)128KB的空間,那么就必須用切換Bank的方法。一個(gè)Bank是64 KB,通過(guò)外部的硬件來(lái)選擇對(duì)應(yīng)的Bank。本系統(tǒng)中,MTV412就是通過(guò)切換Bank的方法來(lái)在線升級(jí)ISP從設(shè)備程序的。MTV412切換Bank是通過(guò)P3.5完成的。通過(guò)設(shè)置P3.5不同的電平,切換到不同的Bank區(qū)域,如果要進(jìn)行4個(gè)Bank的切換,必須要由2個(gè)端口來(lái)控制。圖1為MTV412的128 KB的存儲(chǔ)空間分配。其中:Common區(qū)域用于存放上電復(fù)位程序、中斷向量、全局變量、中斷函數(shù)、切換Bank程序和庫(kù)函數(shù)等;Bank區(qū)域用于存放一些不同的應(yīng)用函數(shù)。

    如圖2所示,本系統(tǒng)把MTV412的128 KB Falsh分為Bank0和Bankl,大小各40 KB。在Keil C51編輯器中,必須加入L51_BANK.A51匯編文件,它包含系統(tǒng)的Bank數(shù)目和切換Bank調(diào)用的函數(shù)和端口。

2 系統(tǒng)構(gòu)架
   
系統(tǒng)架構(gòu)如圖3所示。首先,將從設(shè)備MTV312的文件通過(guò)Keil C51生成64 KB的HEX或者BIN文檔;然后,再把主設(shè)備MTV412的文件通過(guò)Keil C51生成128 KB的HEX或者BIN文檔;最后,把從設(shè)備MTV312的BIN或者HEX分成兩個(gè)32 KB,分別放在主設(shè)備MTV412 128 KB的8000H和18000H開(kāi)始的位置。文件的地址空間分配如圖4所示。

  

    通過(guò)PC或者燒錄器直接把程序燒錄到MTV412上。這樣MTV412就可以脫離PC,通過(guò)I2C直接對(duì)從設(shè)備在生產(chǎn)線體上進(jìn)行ISP。
2.1 硬件實(shí)現(xiàn)
   
主設(shè)備MTV412的硬件電路如圖5所示。P6口作為SCL,P1作為SDA。因?yàn)镻6是單向口,P1是雙向口,SDA不僅要輸出數(shù)據(jù),還要接收ACK。P1對(duì)應(yīng)8個(gè)從設(shè)備的SDA,P6對(duì)應(yīng)8個(gè)從沒(méi)備的SCL。MTV412的多功能口P3.0和P3.1既可以作為普通的I/O口,也可以作為I2C的SCL和SDA,或者串口RXD和TXD。本系統(tǒng)設(shè)為I2C端口,可以通過(guò)PC直接更新MTV412上的程序。

2.2 軟件實(shí)現(xiàn)
   
主設(shè)備MTV412有128 KB的Flash空間。其中,Bank0(32 KB)和Bankl(32 KB)存儲(chǔ)對(duì)應(yīng)的從設(shè)備MTV312的程序數(shù)據(jù)和調(diào)用函數(shù)func0和funcl。Common區(qū)域放置與從設(shè)備通信的程序,模擬ISP過(guò)程。在main函數(shù)中通過(guò)調(diào)用func0和fund,把對(duì)應(yīng)的Bank0和Bankl從8000H開(kāi)始的內(nèi)容放入緩存區(qū),每次讀取256字節(jié),然后在Common區(qū)中進(jìn)行ISP。
    ISP時(shí),從設(shè)備64 KB程序數(shù)據(jù)分成256個(gè)block,每個(gè)block為256字節(jié)。
    ISP過(guò)程如圖6所示。

    ①進(jìn)入ISP:發(fā)送I2C start→發(fā)送0x4C→發(fā)送0x77→發(fā)送I2C stop。
    ②清除Flash(硬件清除Flash):發(fā)送I2C start→發(fā)送0x7C→發(fā)送0x68和0x00→發(fā)送0x7C→發(fā)送0x00,0x00→delay 1s→發(fā)送I2C stop。
    ③清除CRC寄存器:發(fā)送I2Cstart→發(fā)送0x7C→發(fā)送0xD0→發(fā)送I2C stop。
    ④Flash編程:發(fā)送I2C start→發(fā)送0x7C→發(fā)送0xA0,block起始地址(0x00~0xff)→發(fā)送I2C stop→循環(huán)256次(發(fā)送I2C start→發(fā)送地址O x00→發(fā)送256字節(jié)數(shù)據(jù)→發(fā)送I2C stop)。
    ⑤校驗(yàn)CRC:發(fā)送I2C start→發(fā)送0x7C→接收4字節(jié)CRC校驗(yàn)值→與軟計(jì)算的CRC值比較。若相等,則發(fā)送I2C stop;否則,重新Flash編程。
    ⑥復(fù)位:發(fā)送I2C start→發(fā)送0x7C→發(fā)送0x48和0x00→發(fā)送I2C stop。
    要使從設(shè)備MTV312具有ISP的功能,須添加一段程序在從設(shè)備的主應(yīng)用程序中。該程序用來(lái)響應(yīng)多功能口SCL和SDA(RXD,TXD)的電平變化。在執(zhí)行以下程序后,MTV312進(jìn)入ISP模式:


結(jié)語(yǔ)
    該系統(tǒng)的實(shí)現(xiàn)方法比較簡(jiǎn)單,可以脫離PC獨(dú)立運(yùn)行,同時(shí)給工廠提供更為簡(jiǎn)單、方便的在線ISP。主設(shè)備可以在線體上對(duì)從設(shè)備進(jìn)行批量編程,值得在一線工廠推廣使用。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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