本發明專利技術公開了一種高效嵌入式系統調試方法,包括步驟:1、首先編寫starter程序,所述starter程序能夠對系統硬件進行初始化;2、采用kermit、xmodem或zmodem開發串口協議;3、通過starter程序中對系統硬件進行初始化,如果初始化成功則進行步驟4;如果初始化不成功,則初始化過程可參考開源軟件代碼uboot的執行過程;4、進行檢測。本發明專利技術通過上述方法,可通過starter對bootloader進行加載調試。即使bootloader失敗也只需要重新加載Bootloader即可,不需要再燒錄starter。
【技術實現步驟摘要】
本專利技術涉及軟件開發測試
,更具體地說,特別涉及。
技術介紹
在高速發展的信息化社會,每天都有新技術和新產品被專利技術推出,各種各樣的嵌入式設備被部署到各個領域。在研發新產品的過程中,特別是調試bootloader階段,每調試一個新功能或是解決一個新bug失效時,我們就得重新拆flash,燒錄flash,焊接flash ;或許我們有高科技的調試工具如Trace等,但我們必須得面對他們昂貴的價格和被損壞的不確定性等等,為此,找到一個避免經常拆卸flash還可以直接燒錄的方法是多么重要,而且還可以降低開發成本。
技術實現思路
本專利技術要解決的技術問題為提供了,該高效嵌入式系統調試方法能夠避免出現重新拆flash,燒錄flash,焊接flash的情況發生。為解決上述技術問題,本專利技術提供了,包括步驟S1、首先編寫starter程序,所述starter程序能夠對系統硬件進行初始化;S2、米用 kermit、xmodem 或 zmodem 開發串 口協議;S3、通過starter程序中對系統硬件進行初始化,如果初始化成功則進行S4 ;如果初始化不成功,則初始化過程可參考開源軟件代碼Uboot的執行過程;S4、進行檢測。優選地,在starter程序中增加通過串口升級bootloader的功能,并定義功能鍵,在系統硬件上電前出發功能鍵,當starter程序運行時會自動檢測功能鍵是否被觸發如果功能鍵觸發,則加載bootloader ;如果功能鍵沒有觸發,默認從flash繼續執行。優選地,當加載bootloader不成功,貝U需重新調試bootloader,在執行以上相同步驟;當加載bootloader成功,則通過命令將bootloader燒錄到flash。優選地,當starter程序運行時,若沒檢測到功能鍵觸發,如果此時flash中還沒有燒錄好的bootloader,則starter會默認停留在等待加載bootloader的界面;若此時flash中已經有燒錄好的bootloader,則直接從flash啟動bootloader。本專利技術的目的是避免經常拆卸flash且可以直接燒錄flash以提高調試嵌入式系統的效率并降低開發成本。主要是在bootloader運行之前,執行我們自己編寫的starter程序,該程序主要對系統必要的器件(cpu,ddr, serial等)進行初始化,且必須支持串口協議,如kermit/xmodem/zmodem等,并提供串口升級Bootloader的功能。只需要一次燒錄好starter后,便可通過starter對bootloader進行加載調試。即使bootloader失敗也只需要重新加載Bootloader即可,不需要再燒錄starter。附圖說明為了更清楚地說明本專利技術實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本專利技術的實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據提供的附圖獲得其他的附圖。圖1為本專利技術一種實施例中高效嵌入式系統調試方法的流程圖;圖2為本專利技術另一種實施例中高效嵌入式系統調試方法的流程框圖。具體實施例方式本專利技術的核心為提供,該高效嵌入式系統調試方法能夠避免出現重新拆flash,燒錄flash,焊接flash的情況發生。為了使本領域的技術人員更好地理解本專利技術的技術方案,下面結合附圖和具體實施例對本專利技術作進一步的詳細說明。請參考圖1和圖2,其中,圖1為本專利技術一種實施例中高效嵌入式系統調試方法的流程圖;圖2為本專利技術另一種實施例中高效嵌入式系統調試方法的流程框圖。本專利技術提供了,包括步驟S1、首先編寫starter程序,所述starter程序能夠對系統硬件進行初始化;S2、采用 kermit、xmodem 或 zmodem 開發串 口協議;S3、通過starter程序中對系統硬件進行初始化,如果初始化成功則進行S4 ;如果初始化不成功,則初始化過程可參考開源軟件代碼Uboot的執行過程;S4、進行檢測。具體地,在starter程序中增加通過串口升級bootloader的功能,并定義功能鍵,在系統硬件上電前出發功能鍵,當starter程序運行時會自動檢測功能鍵是否被觸發如果功能鍵觸發,則加載bootloader ;如果功能鍵沒有觸發,默認從flash繼續執行。具體地,當加載bootloader不成功,貝U需重新調試bootloader,在執行以上相同步驟;當加載bootloader成功,則通過命令將bootloader燒錄到flash。具體地,當starter程序運行時,若沒檢測到功能鍵觸發,如果此時flash中還沒有燒錄好的bootloader,則starter會默認停留在等待加載bootloader的界面;若此時flash中已經有燒錄好的bootloader,則直接從flash啟動bootloader。本專利技術的目的是避免經常拆卸flash且可以直接燒錄flash以提高調試嵌入式系統的效率并降低開發成本。主要是在bootloader運行之前,執行我們自己編寫的starter程序,該程序主要對系統必要的器件(cpu,ddr, serial等)進行初始化,且必須支持串口協議,如kermit/xmodem/zmodem等,并提供串口升級Bootloader的功能。只需要一次燒錄好starter后,便可通過starter對bootloader進行加載調試。即使bootloader失敗也只需要重新加載Bootloader即可,不需要再燒錄starter。本專利技術解決的技術問題及采用的方案是在一般調試新產品時,首先要調試bootloader,而在調試過程中需要多次反復驗證調試,這就不可避免的去多次拆卸flash并燒錄,這樣不僅浪費時間,而且會經常出現板卡或flash被損壞。當用模擬器調試時,必須得承受它高昂的價格和被損壞的可能。為此提出我的方案首先編寫一個最簡化的初始化程序starter, bin,在該程序中只對cpu/ddr/serial/clock必要的器件進行初始化,并支持串口協議和加載bootloader的功能。在調試新產品時只要燒錄一次starter, bin即可,后續就可以通過starter中的加載bootloader的功能來調試bootloader,避免直接調試bootloader時,拆卸燒錄flash,以及用到其他的工具,這樣可以提高調試效率,降低開發成本。本專利技術的有益效果就是在starter程序燒錄一次后,就不再改動starter。不管硬件外設器件怎么變換,都可以通過starter來加載bootloader去調試硬件,可以避免因為調試錯誤或硬件外設問題而導致拆卸flash去直接燒錄bootloader而浪費的時間,也可以省去購買模擬研發器的花銷而降低成本。在本專利技術的一個具體實施方式中,其具體操作包括步驟1.編寫系統初始化程序starter, bin,該程序類似通用的bootloader,但比bootloader更精簡,主要初始化系統必須的通用的器件cpu/ddr/serial/clock ;對板卡的其他器件都不進行操作;2.在starter中增加對串口協議的支持,并根據本文檔來自技高網...
【技術保護點】
一種高效嵌入式系統調試方法,其特征在于,包括:步驟1、首先編寫starter程序,所述starter程序能夠對系統硬件進行初始化;步驟2、采用kermit、xmodem或zmodem開發串口協議;步驟3、通過starter程序中對系統硬件進行初始化,如果初始化成功則進行步驟4;如果初始化不成功,則初始化過程可參考開源軟件代碼uboot的執行過程;步驟4、進行檢測。
【技術特征摘要】
【專利技術屬性】
技術研發人員:張曉成,莫越章,
申請(專利權)人:太倉市同維電子有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。