• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于AT89C52處理器的二次版本下載方法

    2015-09-25 03:06:04徐勁松湯新柱管燕萍
    關(guān)鍵詞:外置存儲(chǔ)空間內(nèi)核

    徐勁松,湯新柱,管燕萍

    (中興通訊上海研發(fā)中心,上海201203)

    引 言

    隨著通信技術(shù)的迅速發(fā)展,各種新業(yè)務(wù)層出不窮,電信運(yùn)營(yíng)商對(duì)通信設(shè)備的功能需求日益增多。因此,通信設(shè)備經(jīng)常需要升級(jí)軟件版本。而隨著功能的日趨完善,軟件版本所需的存儲(chǔ)空間越來(lái)越大。另一方面,激烈的競(jìng)爭(zhēng)促使各通信設(shè)備制造商盡可能采用物美價(jià)廉的器件以降低設(shè)備成本。一些高性?xún)r(jià)比的處理器獲得了廣泛的應(yīng)用,這類(lèi)處理器可能內(nèi)置了少量的FLASH存儲(chǔ)空間。為了降低成本,通信設(shè)備制造商在制造設(shè)備時(shí),可能不再另外添置外置的FLASH,而僅僅是配置一定容量的外置RAM,從外置RAM中劃出一部分空間用于存放設(shè)備的應(yīng)用程序,其余的用作設(shè)備運(yùn)行中的數(shù)據(jù)空間。

    以AT89C52[1]處理器為例,它內(nèi)置有8KB大小的FLASH,另外具備64KB外置FLASH以及64KB外置RAM的尋址能力。通信設(shè)備制造商在制造設(shè)備時(shí),僅僅是配置64KB的外置RAM,用于存儲(chǔ)程序和數(shù)據(jù),例如前32KB用于存放數(shù)據(jù),后32KB用于存放應(yīng)用程序。一種常用的實(shí)現(xiàn)方式是,內(nèi)置FLASH用于存儲(chǔ)很小的內(nèi)核程序,在系統(tǒng)上電時(shí),從服務(wù)器下載容量更大的應(yīng)用程序,存放在外置RAM中;下載結(jié)束后,跳轉(zhuǎn)外置RAM的程序區(qū)執(zhí)行。然而,隨著系統(tǒng)功能的增加,原來(lái)用于存放應(yīng)用程序的32KB空間已經(jīng)不夠存放應(yīng)用程序,而數(shù)據(jù)區(qū)的使用可能不到32KB,例如只使用了20KB。一種解決辦法是重新制作存儲(chǔ)在內(nèi)置FLASH中的內(nèi)核程序,擴(kuò)大應(yīng)用程序區(qū)的存放范圍,使得內(nèi)核程序在下載應(yīng)用程序時(shí)將后44KB的空間都作為應(yīng)用程序存儲(chǔ)區(qū)。然而,對(duì)于現(xiàn)網(wǎng)應(yīng)用的大量設(shè)備而言,要更新內(nèi)核程序的版本,意味著必須把單板斷電、重新燒入內(nèi)置的FLASH內(nèi)核程序,顯然是不現(xiàn)實(shí)的。

    1 優(yōu)化地址空間的版本下載方法

    本文提供一種優(yōu)化地址空間的版本下載方法,應(yīng)用于通信領(lǐng)域嵌入式系統(tǒng),以解決應(yīng)用程序的存儲(chǔ)空間不夠,而數(shù)據(jù)的存儲(chǔ)空間富余的問(wèn)題。所述的版本下載方法,包括如下步驟:

    ①將應(yīng)用程序版本制作成主版本和輔助版本,并保存在服務(wù)器上,使得主版本的大小不超過(guò)設(shè)備分配給應(yīng)用程序的存儲(chǔ)空間大??;

    ②設(shè)備上電后,該設(shè)備內(nèi)核程序?qū)?yīng)用程序的主版本從服務(wù)器上下載到設(shè)備分配給應(yīng)用程序的存儲(chǔ)空間,下載程序完畢后,跳轉(zhuǎn)到應(yīng)用程序的主版本運(yùn)行;

    ③應(yīng)用程序的主版本執(zhí)行了設(shè)備的初始化以后,與服務(wù)器通信,請(qǐng)求下載應(yīng)用程序的輔助版本;

    ④應(yīng)用程序的主版本將輔助版本下載到設(shè)備分配給數(shù)據(jù)的存儲(chǔ)空間中的富余空間內(nèi),下載完成后繼續(xù)往下正常執(zhí)行。此時(shí),在輔助版本中的新增功能可以正常使用。

    2 基于AT89C52處理器的版本下載實(shí)現(xiàn)

    下面以AT89C52處理器的設(shè)備為例來(lái)說(shuō)明上述版本下載方法的實(shí)現(xiàn)。

    圖1是采用AT89C52處理器的設(shè)備存儲(chǔ)空間的分布圖。這里只是一個(gè)示例,實(shí)際的空間分布大小不一定與此處的示例相同,但不影響本文所述版本下載方法的實(shí)現(xiàn)。AT89C52處理器內(nèi)置的8KB FLASH用于存放內(nèi)核程序;設(shè)備另外配置有64KB的外置RAM,其中,前32KB用于存放數(shù)據(jù),后32KB用于存放程序。在系統(tǒng)上電時(shí),內(nèi)核程序負(fù)責(zé)從服務(wù)器下載應(yīng)用程序,存放在外置RAM的后32 KB應(yīng)用程序存儲(chǔ)空間中,然后跳轉(zhuǎn)到應(yīng)用程序執(zhí)行。

    圖1 采用AT89C52的設(shè)備存儲(chǔ)空間分布圖

    圖2是采用本文所述版本下載方法后,采用AT89C52處理器的設(shè)備存儲(chǔ)空間的分布圖。假定設(shè)備原用于存放數(shù)據(jù)的32KB外置RAM實(shí)際只用到20KB,還有12KB的剩余空間。在系統(tǒng)上電時(shí),存儲(chǔ)在內(nèi)置FLASH中的內(nèi)核程序負(fù)責(zé)從服務(wù)器下載應(yīng)用程序的主版本,存放在外置RAM的后32KB存儲(chǔ)空間中。之后,應(yīng)用程序的主版本負(fù)責(zé)將輔助版本下載到外置RAM原來(lái)用于存放數(shù)據(jù)的空間中的剩余12KB空間。在制作主版本和輔助版本時(shí),對(duì)于主版本和輔助版本之間的功能模塊采用絕對(duì)定址的方式相互調(diào)用。

    圖2 優(yōu)化地址空間后采用AT89C52的設(shè)備存儲(chǔ)空間布圖

    圖3是本文實(shí)例采用AT89C52處理器的設(shè)備版本下載應(yīng)用方法流程圖,包括如下步驟。

    ①制作應(yīng)用程序版本時(shí),根據(jù)其功能的劃分制作主版本和輔助版本并保存在服務(wù)器上,使得主版本的大小不超過(guò)32KB,輔助版本的大小不超過(guò)12KB;在制作主版本和輔助版本時(shí),對(duì)于主版本和輔助版本之間的功能模塊采用絕對(duì)定址的方式相互調(diào)用。

    ②設(shè)備上電后,存儲(chǔ)在內(nèi)置FLASH中的內(nèi)核程序負(fù)責(zé)從服務(wù)器下載應(yīng)用程序的主版本,存放在外置RAM的后32 KB存儲(chǔ)空間中,然后跳轉(zhuǎn)到應(yīng)用程序的主版本運(yùn)行。

    ③對(duì)設(shè)備進(jìn)行初始化,與服務(wù)器通信,請(qǐng)求下載應(yīng)用程序的輔助版本。

    ④應(yīng)用程序的主版本負(fù)責(zé)將輔助版本下載到外置RAM原來(lái)用于存放數(shù)據(jù)的空間中的剩余12KB空間。

    ⑤下載應(yīng)用程序的輔助版本成功后,主版本才繼續(xù)往下正常執(zhí)行,此時(shí),應(yīng)用程序的主版本可以正常調(diào)用輔助版本的功能模塊。

    圖3 采用AT89C52處理器的設(shè)備版本下載應(yīng)用方法流程圖

    結(jié) 語(yǔ)

    本文描述了一種優(yōu)化地址空間的版本下載方法,即二次版本下載的方法,充分利用現(xiàn)有設(shè)備分配給數(shù)據(jù)的存儲(chǔ)空間中的剩余空間,擴(kuò)大了應(yīng)用程序的存儲(chǔ)空間,避免了必須為現(xiàn)有設(shè)備更換內(nèi)核程序才能擴(kuò)大應(yīng)用程序存儲(chǔ)空間的弊端。此外,本文所述的方法并不局限于AT89C52處理器。

    [1] 8-bit Microcontroller with 8KBytes Flash-AT89C52[EB/OL] .[2014-11] .http://www.atmel.com/images/doc0313.pdf.

    猜你喜歡
    外置存儲(chǔ)空間內(nèi)核
    萬(wàn)物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
    基于多種群協(xié)同進(jìn)化算法的數(shù)據(jù)并行聚類(lèi)算法
    強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
    蘋(píng)果訂閱捆綁服務(wù)Apple One正式上線
    PLC可編程控制器相關(guān)外置的選擇計(jì)算研究
    電子制作(2019年13期)2020-01-14 03:15:34
    用好Windows 10保留的存儲(chǔ)空間
    車(chē)載GSM-R外置抗干擾設(shè)備
    基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
    Linux內(nèi)核mmap保護(hù)機(jī)制研究
    電能表用外置斷路器常見(jiàn)失效模式分析
    应用必备| 五寨县| 岳普湖县| 清涧县| 丹江口市| 曲水县| 新巴尔虎右旗| 原阳县| 富裕县| 鄂州市| 邯郸县| 文水县| 临泉县| 连平县| 淳化县| 宽城| 南汇区| 北安市| 连江县| 新巴尔虎右旗| 天全县| 平凉市| 巫山县| 汨罗市| 宕昌县| 乐昌市| 华池县| 阳谷县| 玉门市| 凌源市| 惠水县| 夏津县| 荔波县| 贵南县| 邢台市| 隆回县| 海淀区| 应城市| 临汾市| 灵川县| 进贤县|