一種運用m_bus總線進行模塊程序燒錄的方法及裝置制造方法
【專利摘要】本發(fā)明涉及一種運用M_BUS總線進行模塊程序燒錄的方法及裝置,包括:將程序存儲空間劃分為第一存儲空間和第二存儲空間,所述第一存儲空間用于存放用M_BUS總線燒錄代碼的預設(shè)程序,所述第二存儲空間用于存放主程序;接收通過M_BUS總線發(fā)送的程序燒錄指令;根據(jù)所述程序燒錄指令觸發(fā)主程序進入所述第一存儲空間,運行所述用M_BUS總線燒錄代碼的預設(shè)程序?qū)崿F(xiàn)模塊的程序燒錄。通過采用本發(fā)明公開的一種運用M_BUS總線進行模塊程序燒錄的方法及裝置,能夠在不拆開封裝盒的情況下實現(xiàn)測量表計模塊的程序燒錄,更加方便地實現(xiàn)測量表計內(nèi)程序的更換或升級。
【專利說明】—種運用M_BUS總線進行模塊程序燒錄的方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及燒錄程序【技術(shù)領(lǐng)域】,尤其涉及一種運用M_BUS總線進行模塊程序燒錄的方法及裝置。
【背景技術(shù)】
[0002]M_BUS總線是歐洲標準的2線二總線,是專門為測量表計和計數(shù)器傳送信息而設(shè)計的數(shù)據(jù)總線;它抗干擾性強,能抵抗各種容性、感性的耦合干擾;其總線型拓撲結(jié)構(gòu)的串行通信方式能夠在幾公里的距離上連接幾百個從設(shè)備,且性能可靠,成本低廉,在公用事業(yè)表計的組網(wǎng)和遠程抄表使用當中應用廣泛,每一臺需要組網(wǎng)或遠程抄表的表計都需要引出一對M_BUS總線。
[0003]目前測量表計普遍采用的燒程序的方法為:在防塵防潮的環(huán)境中,在表計的模塊裸露的情況下,通過JTAG接口將程序燒進表計當中(JTAG是一種國際標準測試協(xié)議,其主要作用是用于芯片內(nèi)部測試和對FLASH等器件進行在線燒程序操作,目前的芯片如CPU、DSP、CPLD等大都含有JTAG接口);用JTAG燒程序時,要求模塊在防潮防塵的環(huán)境下進行操作,若模塊已經(jīng)封裝好,焊好線之后,需要更改程序,或升級程序,但因JTAG接口在封裝盒內(nèi)部,此時要更改程序就極為不易,必須再回到防塵防潮環(huán)境下把封裝盒拆開,費時費力,還易因拆裝導致模塊受潮或損壞,而研發(fā)階段或程序升級階段是時常要更換或升級程序的,這就需要一種能夠在不拆開封裝盒的情況下就能給模塊燒錄程序的方法。
【發(fā)明內(nèi)容】
[0004](一)要解決的技術(shù)問題
[0005]本發(fā)明所要解決的技術(shù)問題是:如何在不拆開封裝盒的情況下實現(xiàn)測量表計模塊的程序燒錄。
[0006](二)技術(shù)方案
[0007]為此目的,本發(fā)明提出了一種運用M_BUS總線進行模塊程序燒錄的方法,包括以下步驟:
[0008]將程序存儲空間劃分為第一存儲空間和第二存儲空間,所述第一存儲空間用于存放用M_BUS總線燒錄代碼的預設(shè)程序,所述第二存儲空間用于存放主程序;
[0009]接收通過M_BUS總線發(fā)送的程序燒錄指令;
[0010]根據(jù)所述程序燒錄指令觸發(fā)主程序進入所述第一存儲空間,運行所述用M_BUS總線燒錄代碼的預設(shè)程序?qū)崿F(xiàn)模塊的程序燒錄。
[0011]優(yōu)選地,所述方法還包括:
[0012]在所述第一存儲空間寫入用M_BUS總線燒錄代碼的預設(shè)程序。
[0013]優(yōu)選地,所述根據(jù)所述程序燒錄指令觸發(fā)主程序進入所述第一存儲空間,運行所述用M_BUS總線燒錄代碼的預設(shè)程序?qū)崿F(xiàn)模塊的程序燒錄具體包括:
[0014]獲取所述第二存儲空間的首地址和末地址;[0015]根據(jù)所述程序燒錄指令擦除所述第二存儲空間的首地址和末地址之間的程序;
[0016]根據(jù)所述程序燒錄指令在所述第二存儲空間的首地址和末地址之間寫入需要下載的程序。
[0017]此外,本發(fā)明還提供了一種運用M_BUS總線進行模塊程序燒錄的裝置,所述裝置包括:
[0018]存儲空間劃分模塊,用于將程序存儲空間劃分為第一存儲空間和第二存儲空間,所述第一存儲空間用于存放用M_BUS總線燒錄代碼的預設(shè)程序,所述第二存儲空間用于存放主程序;
[0019]指令接收模塊,用于接收通Sm_bus總線發(fā)送的程序燒錄指令;
[0020]程序燒錄模塊,用于根據(jù)所述程序燒錄指令觸發(fā)主程序進入所述第一存儲空間,運行所述用M_BUS總線燒錄代碼的預設(shè)程序?qū)崿F(xiàn)模塊的程序燒錄。
[0021 ] 優(yōu)選地,所述裝置還包括:
[0022]程序預設(shè)模塊,用于在所述第一存儲空間寫入用M_BUS總線燒錄代碼的預設(shè)程序。
[0023]優(yōu)選地,所述程序燒錄模塊具體包括:
[0024]獲取單元,用于獲取所述第二存儲空間的首地址和末地址;
[0025]擦除單元,用于根據(jù)所述程序燒錄指令擦除所述第二存儲空間的首地址和末地址之間的程序;
[0026]寫入單元,用于根據(jù)所述程序燒錄指令在所述第二存儲空間的首地址和末地址之間寫入需要下載的程序。
[0027](三)有益效果
[0028]通過采用本發(fā)明公開的一種運用M_BUS總線進行模塊程序燒錄的方法及裝置,能夠在不拆開封裝盒的情況下實現(xiàn)測量表計模塊的程序燒錄,更加方便地實現(xiàn)測量表計內(nèi)程序的更換或升級。
【專利附圖】
【附圖說明】
[0029]通過參考附圖會更加清楚的理解本發(fā)明的特征和優(yōu)點,附圖是示意性的而不應理解為對本發(fā)明進行任何限制,在附圖中:
[0030]圖1是本發(fā)明一種運用M_BUS總線進行模塊程序燒錄的方法流程圖;
[0031]圖2是本發(fā)明一種運用M_BUS總線進行模塊程序燒錄的裝置模塊圖。
【具體實施方式】
[0032]下面將結(jié)合附圖對本發(fā)明的實施例進行詳細描述。
[0033]本發(fā)明提出了一種運用M_BUS總線進行模塊程序燒錄的方法及裝置,能夠在不拆開封裝盒的情況下就能給模塊燒錄程序。
[0034]本發(fā)明實施例提出了一種運用M_BUS總線進行模塊程序燒錄的方法,如圖1所示,包括以下步驟:
[0035]SlOl將程序存儲空間劃分為第一存儲空間和第二存儲空間,所述第一存儲空間用于存放用M_BUS總線燒錄代碼的預設(shè)程序,所述第二存儲空間用于存放主程序;[0036]S102接收通過M_BUS總線發(fā)送的程序燒錄指令;
[0037]S103根據(jù)所述程序燒錄指令觸發(fā)主程序進入所述第一存儲空間,運行所述用M_BUS總線燒錄代碼的預設(shè)程序?qū)崿F(xiàn)模塊的程序燒錄。
[0038]其中,所述方法還包括:
[0039]在所述第一存儲空間寫入用M_BUS總線燒錄代碼的預設(shè)程序。
[0040]其中,所述方法還包括:
[0041]當程序燒錄完成后,進行復位操作,進入第二存儲空間,運行當前主程序。
[0042]本發(fā)明實施例中,在模塊未進行封裝之前,將模塊中的程序存儲空間分為兩段,空間A和空間B,空間A只占很小一部分,不到1K,用于存放M_BUS燒代碼的程序,空間B用來存放主程序;表計正常工作時是在運行主程序,即在空間B中運行,當用M_BUS燒代碼時,程序由空間B進入空間A中運行,通過空間A中的命令來實現(xiàn)對空間B的擦除、讀寫操作;當程序燒寫完成后,模塊復位,進入空間B,運行新下載的當前主程序。
[0043]其中,空間A即為第一存儲空間,空間B即為第二存儲空間;
[0044]優(yōu)選地,所述根據(jù)所述程序燒錄指令觸發(fā)主程序進入所述第一存儲空間,運行所述用M_BUS總線燒錄代碼的預設(shè)程序?qū)崿F(xiàn)模塊的程序燒錄,具體包括以下步驟:
[0045]獲取所述第二存儲空間的首地址和末地址;
[0046]根據(jù)所述程序燒錄指令擦除所述第二存儲空間的首地址和末地址之間的程序;
[0047]根據(jù)所述程序燒錄指令在所述第二存儲空間的首地址和末地址之間寫入需要下載的程序。
[0048]本發(fā)明實施例通過在模塊主程序中增加一段代碼用以執(zhí)行通過M_BUS發(fā)送的進入空間A的命令,從而使程序進入空間A運行,然后再通過M_BUS發(fā)送相應的指令到空間A中,用來執(zhí)行擦除、讀和寫空間B的命令,其中具體步驟為:
[0049]串口調(diào)試軟件發(fā)送‘準備’命令,表計進入M_BUS燒程序模式,即進入空間A ;
[0050]發(fā)送‘擦除’命令,輸入要擦除的空間B的首地址及末地址,擦除表計空間B中的所有程序;
[0051]發(fā)送‘寫入’命令,輸入要寫入的首地址及末地址,寫入首末地址之間的程序段到模塊的空間B中;
[0052]發(fā)送‘讀’命令,輸入要讀出的首地址及末地址,讀出空間B中一段地址中的程序;
[0053]發(fā)送‘校驗’命令,校驗讀出的程序是否正確,也可進行多次讀程序,多次校驗操作;
[0054]發(fā)送‘復位’命令,復位表計,使表計進入空間B,進入主程序正常運行狀態(tài)。
[0055]此外,本發(fā)明另一實施例還提供了一種運用M_BUS總線進行模塊程序燒錄的裝置,如圖2所示,所述裝置包括:
[0056]存儲空間劃分模塊1,用于將程序存儲空間劃分為第一存儲空間和第二存儲空間,所述第一存儲空間用于存放用M_BUS總線燒錄代碼的預設(shè)程序,所述第二存儲空間用于存放主程序;
[0057]指令接收模塊2,用于接收通過M_BUS總線發(fā)送的程序燒錄指令;
[0058]程序燒錄模塊3,用于根據(jù)所述程序燒錄指令觸發(fā)主程序進入所述第一存儲空間,運行所述用M_BUS總線燒錄代碼的預設(shè)程序?qū)崿F(xiàn)模塊的程序燒錄。[0059]其中,所述裝置還包括:
[0060]程序預設(shè)模塊,用于在所述第一存儲空間寫入用M_BUS總線燒錄代碼的預設(shè)程序。
[0061]其中,所述程序燒錄模塊3具體包括:
[0062]獲取單元,用于獲取所述第二存儲空間的首地址和末地址;
[0063]擦除單元,用于根據(jù)所述程序燒錄指令擦除所述第二存儲空間的首地址和末地址之間的程序;
[0064]寫入單元,用于根據(jù)所述程序燒錄指令在所述第二存儲空間的首地址和末地址之間寫入需要下載的程序。
[0065]其中,所述裝置還包括:復位模塊,用于當程序燒錄完成后,進行復位操作,進入第二存儲空間,運行當前主程序。
[0066]通過采用本發(fā)明公開的一種運用M_BUS總線進行模塊程序燒錄的方法及裝置,能夠在不拆開封裝盒的情況下實現(xiàn)測量表計模塊的程序燒錄,更加方便地實現(xiàn)測量表計內(nèi)程序的更換或升級。
[0067]通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可以通過硬件實現(xiàn),也可以借助軟件加必要的通用硬件平臺的方式來實現(xiàn)。基于這樣的理解,本發(fā)明的技術(shù)方案可以以軟件產(chǎn)品的形式體現(xiàn)出來,該軟件產(chǎn)品可以存儲在一個非易失性存儲介質(zhì)(可以是⑶-R0M,U盤,移動硬盤等)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務器,或者網(wǎng)絡設(shè)備等)執(zhí)行本發(fā)明各個實施例所述的方法。
[0068]本領(lǐng)域技術(shù)人員可以理解附圖只是一個優(yōu)選實施例的示意圖,附圖中的模塊或流程并不一定是實施本發(fā)明所必須的。
[0069]本領(lǐng)域技術(shù)人員可以理解實施例中的裝置中的模塊可以按照實施例描述進行分布于實施例的裝置中,也可以進行相應變化位于不同于本實施例的一個或多個裝置中。上述實施例的模塊可以合并為一個模塊,也可以進一步拆分成多個子模塊。
[0070]上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
[0071]以上公開的僅為本發(fā)明的幾個具體實施例,但是,本發(fā)明并非局限于此,任何本領(lǐng)域的技術(shù)人員能思之的變化都應落入本發(fā)明的保護范圍。
【權(quán)利要求】
1.一種運用M_BUS總線進行模塊程序燒錄的方法,其特征在于,該方法包括以下步驟: 將程序存儲空間劃分為第一存儲空間和第二存儲空間,所述第一存儲空間用于存放用M_BUS總線燒錄代碼的預設(shè)程序,所述第二存儲空間用于存放主程序; 接收通SM_BUS總線發(fā)送的程序燒錄指令; 根據(jù)所述程序燒錄指令觸發(fā)主程序進入所述第一存儲空間,運行所述用M_BUS總線燒錄代碼的預設(shè)程序?qū)崿F(xiàn)模塊的程序燒錄。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 在所述第一存儲空間寫入用M_BUS總線燒錄代碼的預設(shè)程序。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述程序燒錄指令觸發(fā)主程序進入所述第一存儲空間,運行所述用M_BUS總線燒錄代碼的預設(shè)程序?qū)崿F(xiàn)模塊的程序燒錄具體包括: 獲取所述第二存儲空間的首地址和末地址; 根據(jù)所述程序燒錄指令擦除所述第二存儲空間的首地址和末地址之間的程序; 根據(jù)所述程序燒錄指令在所述第二存儲空間的首地址和末地址之間寫入需要下載的程序。
4.一種運用M_BUS總線進行模塊程序燒錄的裝置,其特征在于,包括: 存儲空間劃分模塊,用于將程序存儲空間劃分為第一存儲空間和第二存儲空間,所述第一存儲空間用于存放用M_BUS總線燒錄代碼的預設(shè)程序,所述第二存儲空間用于存放主程序; 指令接收模塊,用于接收通SM_BUS總線發(fā)送的程序燒錄指令; 程序燒錄模塊,用于根據(jù)所述程序燒錄指令觸發(fā)主程序進入所述第一存儲空間,運行所述用M_BUS總線燒錄代碼的預設(shè)程序?qū)崿F(xiàn)模塊的程序燒錄。
5.根據(jù)權(quán)利要求4所述的裝置,其特征在于,所述裝置還包括: 程序預設(shè)模塊,用于在所述第一存儲空間寫入用M_BUS總線燒錄代碼的預設(shè)程序。
6.根據(jù)權(quán)利要求4所述的裝置,其特征在于,所述程序燒錄模塊具體包括: 獲取單元,用于獲取所述第二存儲空間的首地址和末地址; 擦除單元,用于根據(jù)所述程序燒錄指令擦除所述第二存儲空間的首地址和末地址之間的程序; 寫入單元,用于根據(jù)所述程序燒錄指令在所述第二存儲空間的首地址和末地址之間寫入需要下載的程序。
【文檔編號】G06F9/445GK103942070SQ201410128692
【公開日】2014年7月23日 申請日期:2014年4月1日 優(yōu)先權(quán)日:2014年4月1日
【發(fā)明者】祝向輝, 姜龍明 申請人:江西三川水表股份有限公司