一種基于pic單片機(jī)的串口自舉系統(tǒng)及其方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種自舉系統(tǒng)及其方法,特別涉及一種基于PIC單片機(jī)的串口自舉系統(tǒng)及其方法。
【背景技術(shù)】
[0002]在現(xiàn)有技術(shù)中,單片機(jī)的自舉功能一般都是把編程燒錄接口隱藏在產(chǎn)品內(nèi)部,而大多外露只有電源及串口,通常串口一般以有線形式或者無線與外部設(shè)備連接。傳統(tǒng)的產(chǎn)品設(shè)計(jì)在產(chǎn)品應(yīng)用軟件需要升級(jí)的時(shí)候往往需要拆開產(chǎn)品使用專用程序燒錄器通過編程燒錄接口才能升級(jí)程序。此種方式雖然能夠解決產(chǎn)品升級(jí)問題,但其拆開產(chǎn)品的動(dòng)作會(huì)隨著產(chǎn)品的結(jié)構(gòu)復(fù)雜性而提高人工成本,并且專用的燒錄工具也提高的升級(jí)軟件的硬件工具成本。非常不利于隱藏?zé)浗涌诘漠a(chǎn)品進(jìn)行升級(jí)程序操作。無法滿足低成本的維護(hù)的需求。
[0003]基于以上現(xiàn)有技術(shù)中存在的問題,亟待研制一種新型的基于PIC單片機(jī)的串口自舉系統(tǒng)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明所要解決的技術(shù)問題在于提供一種基于PIC單片機(jī)的串口自舉系統(tǒng)及其方法,以克服現(xiàn)有技術(shù)中存在的單片機(jī)升級(jí)程序過程復(fù)雜,需要拆開單片機(jī)產(chǎn)品進(jìn)行升級(jí),并且硬件工具成本高的問題。
[0005]為達(dá)上述目的,本發(fā)明提供了一種基于PIC單片機(jī)的串口自舉系統(tǒng),包括:
[0006]上行機(jī)模塊:用于識(shí)別具有自舉功能的所述PIC單片機(jī),并將預(yù)裝載待燒錄的應(yīng)用程序,按預(yù)定程序燒錄協(xié)議下載到所述PIC單片機(jī)中進(jìn)行程序燒錄;
[0007]串口自舉模塊:通過串口連接于所述上行機(jī)模塊,所述串口自舉模塊用于按照自舉觸發(fā)條件觸發(fā)所述單片機(jī)進(jìn)入引導(dǎo)燒錄模式,通過所述串口根據(jù)所述預(yù)定程序燒錄協(xié)議,從所述上行機(jī)模塊下載待燒錄的應(yīng)用程序后進(jìn)行燒錄,完成所述單片機(jī)的升級(jí)操作。
[0008]上述基于PIC單片機(jī)的串口自舉系統(tǒng),所述串口自舉模塊,還包括:
[0009]通信模塊:用于通過有線或無線網(wǎng)絡(luò)與所述上行機(jī)模塊進(jìn)行通信,傳輸所述上行機(jī)模塊與所述串口自舉模塊之間的數(shù)據(jù);
[0010]存儲(chǔ)模塊:連接于所述通信模塊,用于對(duì)所述串口自舉模塊燒錄完成的應(yīng)用程序進(jìn)tx存儲(chǔ);
[0011]收發(fā)模塊:連接于所述通信模塊及所述存儲(chǔ)模塊,用于對(duì)所述通信模塊及所述存儲(chǔ)模塊之間的數(shù)據(jù)進(jìn)行傳輸;
[0012]命令解析模塊:連接于所述存儲(chǔ)模塊及所述收發(fā)模塊,用于對(duì)接收的所述收發(fā)模塊傳輸?shù)臄?shù)據(jù)進(jìn)行解析處理。
[0013]上述基于PIC單片機(jī)的串口自舉系統(tǒng),所述存儲(chǔ)模塊,包括程序存儲(chǔ)器,所述程序存儲(chǔ)器用于存儲(chǔ)所述自舉觸發(fā)條件的復(fù)位向量。
[0014]本發(fā)明還提供一種基于PIC單片機(jī)的串口自舉方法,應(yīng)用于如所述基于PIC單片機(jī)的串口自舉系統(tǒng),所述串口自舉系統(tǒng)包括:上行機(jī)模塊及串口自舉模塊,所述自舉方法,包括:
[0015]上行機(jī)操作步驟:用于識(shí)別具有自舉功能的單片機(jī),并將預(yù)裝載實(shí)際需燒錄的應(yīng)用程序,按預(yù)定協(xié)議進(jìn)行程序燒錄;
[0016]串口自舉步驟:用于按照自舉觸發(fā)條件觸發(fā)所述單片機(jī)進(jìn)入引導(dǎo)燒錄模式,通過所述串行通信接口根據(jù)所述預(yù)定程序燒錄協(xié)議,從所述上行機(jī)模塊下載待燒錄的應(yīng)用程序后進(jìn)行燒錄,完成所述單片機(jī)的升級(jí)操作。
[0017]上述基于PIC單片機(jī)的串口自舉方法,所述串口自舉步驟,包括:
[0018]自舉準(zhǔn)備步驟:用于進(jìn)行自舉準(zhǔn)備,并將所述串口自舉模塊通過串口連接于所述上位機(jī)模塊串口 ;
[0019]引導(dǎo)自舉步驟:用于按照所述串口自舉模塊所規(guī)定的自舉觸發(fā)條件觸發(fā)所述單片機(jī)進(jìn)入引導(dǎo)燒錄模式;
[0020]完成自舉步驟:用于根據(jù)所述串口自舉模塊所規(guī)定的程序燒錄協(xié)議將待燒錄的應(yīng)用程序通過所述串口將程序發(fā)送給所述PIC單片機(jī),完成所述PIC單片機(jī)的升級(jí)。
[0021]上述基于PIC單片機(jī)的串口自舉方法,所述完成自舉步驟,包括:
[0022]校驗(yàn)數(shù)據(jù)步驟:用于所述串口自舉模塊對(duì)接收到的所述待燒錄的應(yīng)用程序進(jìn)行數(shù)據(jù)校驗(yàn),如果校驗(yàn)成功,則完成所述應(yīng)用程序燒錄,否則,重新執(zhí)行所述完成自舉步驟。
[0023]上述基于PIC單片機(jī)的串口自舉方法,所述完成自舉步驟,還包括:
[0024]重新燒錄步驟:用于所述PIC單片機(jī)升級(jí)取消或中斷時(shí),所述串口自舉模塊重新連接所述上行機(jī)模塊重復(fù)完成燒錄。
[0025]與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于:本發(fā)明提供的基于PIC單片機(jī)的串口自舉系統(tǒng),當(dāng)單片機(jī)隱藏?zé)浗涌谟诋a(chǎn)品內(nèi)部而外聯(lián)串口時(shí),可通過串口基于自舉系統(tǒng)的幫助下燒錄升級(jí)程序,解決產(chǎn)品升級(jí)應(yīng)用程序操作的復(fù)雜度大,硬件設(shè)備成本高,及升級(jí)過程可靠性低等技術(shù)問題。
【附圖說明】
[0026]圖1-圖2為發(fā)明串口自舉系統(tǒng)結(jié)構(gòu)示意圖;
[0027]圖3為本發(fā)明具體實(shí)施例串口自舉系統(tǒng)結(jié)構(gòu)示意圖;
[0028]圖4為發(fā)明PIC單片機(jī)內(nèi)部程序存儲(chǔ)器結(jié)構(gòu)示意圖;
[0029]圖5-圖6為本發(fā)明串口自舉方法流程示意圖;
[0030]圖7-圖8為本發(fā)明具體實(shí)施例串口自舉方法流程示意圖。
[0031]其中,附圖標(biāo)記:
[0032]I上行機(jī)模塊 2串口自舉模塊
[0033]21通信模塊 22存儲(chǔ)模塊
[0034]23收發(fā)模塊 24命令解析模塊
【具體實(shí)施方式】
[0035]下面給出本發(fā)明的【具體實(shí)施方式】,結(jié)合圖示對(duì)本發(fā)明做出了詳細(xì)描述。
[0036]本發(fā)明提供的基于PIC單片機(jī)的串口自舉系統(tǒng)解決了 Microchip PIC單片機(jī)必須使用專用程序燒錄器、專用的PC電腦操作才能進(jìn)行單片機(jī)的程序燒寫操作的技術(shù)問題;發(fā)明利用PIC單片機(jī)的自身對(duì)自身程序閃存存儲(chǔ)器的編程能力,利用簡(jiǎn)單的串行接口把串行接口傳遞的需燒錄的程序?qū)懭雴纹瑱C(jī)自身閃存存儲(chǔ)器;利用該發(fā)明可在裝載有該串口自舉系統(tǒng)的Pic單片機(jī)上,在不使用芯片專用的程序燒錄器、不使用專用的PC電腦的情況下對(duì)單片機(jī)進(jìn)行程序燒寫,節(jié)約專用燒錄器和專用PC電腦成本,只需簡(jiǎn)單通訊接口,節(jié)約單片機(jī)硬件資源,解決產(chǎn)品升級(jí)應(yīng)用程序操作的復(fù)雜度大等技術(shù)問題。
[0037]如圖1所示,本發(fā)明提供的一種基于PIC單片機(jī)的串口自舉系統(tǒng),包括:
[0038]上行機(jī)模塊1:用于識(shí)別具有自舉功能的PIC單片機(jī),并將預(yù)裝載待燒錄的應(yīng)用程序,按預(yù)定程序燒錄協(xié)議下載到PIC單片機(jī)中進(jìn)行程序燒錄;
[0039]串口自舉模塊2:通過串口連接于上行機(jī)模塊I,串口自舉模塊2用于按照自舉觸發(fā)條件觸發(fā)單片機(jī)進(jìn)入引導(dǎo)燒錄模式,通過串口根據(jù)預(yù)定程序燒錄協(xié)議,從上行機(jī)模塊I下載待燒錄的應(yīng)用程序后進(jìn)行燒錄,完成單片機(jī)的升級(jí)操作。
[0040]其中,該串口自舉模塊2,如圖2所示,還包括:
[0041]通信模塊21:用于通過有線或無線網(wǎng)絡(luò)與所述上行機(jī)模塊進(jìn)行通信,傳輸所述上行機(jī)模塊與所述串口自舉模塊之間的數(shù)據(jù);
[0042]存儲(chǔ)模塊22:連接于所述通信模塊,用于對(duì)所述串口自舉模塊燒錄完成的應(yīng)用程序進(jìn)行存儲(chǔ);存儲(chǔ)模塊22包括程序存儲(chǔ)器,該程序存儲(chǔ)器用于存儲(chǔ)自舉觸發(fā)條件的復(fù)位向量;
[0043]收發(fā)模塊23:連接于所述通信模塊及所述存儲(chǔ)模塊,用于對(duì)所述通信模塊及所述存儲(chǔ)模塊之間的數(shù)據(jù)進(jìn)行傳輸;
[0044]命令解析模塊24:連接于所述存儲(chǔ)模塊及所述收發(fā)模塊,用于對(duì)接收的所述收發(fā)模塊傳輸?shù)臄?shù)據(jù)進(jìn)行解析處理。
[0045]以下結(jié)合附圖對(duì)本發(fā)明具體實(shí)施例進(jìn)行詳細(xì)說明:
[0046]在本發(fā)明具體實(shí)施例在,本發(fā)明利用PIC單片機(jī)的自身對(duì)自身程序閃存存儲(chǔ)器的編程能力,利用簡(jiǎn)單的串口傳遞需燒錄的應(yīng)用程序?qū)懭胱陨黹W存存儲(chǔ)器;利用帶有該串口自舉系統(tǒng)的PIC單片機(jī)上,在不使用芯片專用的程序燒錄器,只通過簡(jiǎn)單的外聯(lián)串口對(duì)PIC單片機(jī)產(chǎn)品進(jìn)行應(yīng)用程序升級(jí)操作;
[0047]該P(yáng)IC單片機(jī)為支持對(duì)自身程序閃存進(jìn)行編程的Microchip PIC單片機(jī);該應(yīng)用程序?yàn)閷?shí)際需要燒錄的應(yīng)用程序;該串口為串行I/O通信外設(shè),也稱為串行通信接口(Serial Communicat1ns Interface, SCI);
[0048]如圖3所示,串口自舉系統(tǒng)包括串口自舉模塊和上行機(jī)模塊,該串口自舉模塊包括:通信模塊;存儲(chǔ)模塊;收發(fā)模塊;命令解析模塊。在本發(fā)明具體實(shí)施例在,其中,通信模塊采用USART,該USART為串行I/O通信外設(shè),也稱為串行通信接口(SerialCommunicat1ns Interface,SCI),收發(fā)模塊采用發(fā)送/接收引擎,存儲(chǔ)模塊采用閃存程序存儲(chǔ)器、EE數(shù)據(jù)存儲(chǔ)器及配置寄存器,