【摘 要】介紹了一種單片機的仿真調試的方法,設計人員可以在沒有仿真器的情況下采用合理的措施,檢查單片機內部程序的正確性:還可以在已有的目標板上設計開發后續的程序,有效縮短產品設計的周期,達到降低設計成本的目的。
【關鍵詞】單片機;仿真調試
在應用單片機開發設計電子產品的時候,絕大多數的設計人員都要使用仿真器。設計者在編制調試程序的時候,可以通過仿真器跟蹤單片機內部程序的運行流程,檢查程序的每一步執行的情況都否滿足設計者的初衷。同時,設計者可以直觀全面地得到單片機內部程序運行中的各項參數和數據,進而判斷所設計軟件程序的正確性和有效性,大大提高了程序設計的效率。可以說,仿真器是設計人員調試程序最有力的助手。
仿真器固然有很多的優點,筆者這里卻另辟蹊徑,在程序設計調試過程中拋開仿真器,單獨談一談單片機的“在線仿真調試”方案,僅供單片機愛好者參考。
所謂的單片機的“在線仿真調試”方案,實際上就是我們把測試程序燒入單片機芯片中,讓單片機脫離仿真器獨立運行。在運行過程中,設計者可以通過合理有效的手段獲取單片機實際運行過程中外圍器件的一些狀態和必要數據,檢查單片機運行的程序是否符合設計要求,即所謂的“在線仿真調試”。
這種“在線仿真調試”的手段雖然得到的數據信息有限,但是也能得到一些必要的和關鍵的信息,對于熟練的設計人員也是可行的。獲取信息的手段包括檢查單片機外部連接發光二極管的狀態、數碼管或者液晶的顯示內容、串行通訊的必要數據等。設計者可以根據所得到的狀態或數據來驗證程序運行的正確性。如果程序設計有疏漏,設計者需要重新調整編輯軟件程序,燒入單片機后再次測試,直到圓滿完成開發任務。
要想做到“在線仿真調試”,必須滿足如下兩個條件:(1)單片機內部的程序存儲器具有FLASH功能,可以多次地把程序燒入單片機;(2)設計人員必須對所使用單片機的內部資源及周邊功能都比較熟悉,能夠迅速地編制出必要的測試程序。
從加快設計周期上講,有些新開發的產品與原有產品硬件相近,軟件功能差別也不大,開發任務時間又偏緊,設計人員也可以采用“在線仿真調試”的方式,即不必重畫仿真目標板,直接設計生產用的線路板,只是通過改動原有的軟件程序來適應新的產品要求。
從安全性上講,有些情況下直接連接仿真器運行很危險,如目標板上有強電接入,使得強電與仿真器之間沒有電氣隔離,容易損壞仿真器的硬件,即使把強電用隔離變壓器處理也不能保證絕對安全;有些場合程序運行時不允許中斷,例如,在動態測試傳動設備時,如果程序在斷點停止運行后會損壞相關設備,進而造成巨大的損失。這樣就必須用“在線仿真調試”來達到目的。
還有些無奈的情況,有些產品具有停電低功耗運行功能,這種低功耗工作方式仿真器無法實現仿真運行,只有脫機運行才能完成低功耗運行功能的測試工作;有些單片機廠家的單片機內部資源豐富,但是相應的仿真器很昂貴,動輒數萬元人民幣,租用和購買都不合適。如果研發項目需要幾個人共同開發,那么在研發初期無法實現人手一臺仿真器,就只有使用“在線仿真調試”的方式來節省研發設備的資金投入,并且可以不受場地限制,只需一臺計算機和一個目標板,再外加一個串行TTL/RS232接口通訊模塊就可以了。
“在線仿真調試”的方法給我們提供數據信息的方式有兩種:一種是應用于數據量較少的系統,直接借助目標板上的顯示器件(數碼管或者液晶)就可以獲取一些必要的信息,更有甚者,通過發光二極管也可以表達很多的狀態;另一種是應用于數據量較大的系統,設計者在程序中先把數據組織好,然后借助于單片機上的異步通訊接口,通過串行TTL/RS232接口通訊模塊把數據傳送給計算機,在計算機上分析所得到的數據。這就像使用仿真器調試程序一樣,通訊時就相當于使用仿真器運行程序至所設斷點處,所得數據就相當于仿真器所得到的相應寄存器及變量的數值,唯一的區別就是這里介紹的斷點是軟斷點,程序在執行斷點后還可以繼續運行。當然,設計者可以連續觀察多組數據,更好地分析程序運行的流程。
我們在利用通訊接口“在線仿真調試”的時候,應把數據組織得有一定的規律,這樣就可以迅速直觀地檢查運行結果,進而調整相應的程序段,為下一次的“在線仿真調試”做準備。這樣的“在線仿真調試”雖然每次都得把程序寫進單片機中,過程略顯繁瑣,但是所設置的軟斷點并不影響程序的連續執行,我們可以把多組數據放在一起比對查看,最大程度發揮“在線仿真調試”的優勢。
“在線仿真調試”,實質上就是設計者編制并運行測試程序,單片機在程序的運行過程中有效地給設計者反饋出必要的數據信息,然后通過有效地調整單片機的程序來達到最理想的結果。這就要求設計者的產品設計經驗豐富,處理問題時頭腦靈活,對程序運行過程中發生的異常情況心中有數,并在最短的時間調整程序來完成進一步的“在線仿真調試”。
以上僅是一家之言,僅供參考。總之設計人員在進行程序設計的時候,一定要靈活地選取最安全最方便最有效的方案,不必過于教條,最主要的是要不斷地積累經驗,在滿足產品設計要求的同時提升自己的價值。
【參考文獻】
[1]單片機原理系統設計與開發應用.中國科學技術大學出版社,1995.
[2]何立民.單片機高級教程.北京航空航天出版社,2000.
[3]單片機與嵌入式系統應用.北京航空航天大學出版社,2006.9.
[4]電子技術應用.華北計算機系統工程研究所,2012.8.
推薦訪問: 在線 單片機 仿真 調試 方案下一篇:IP軟核測試策略及驗證方案研究
為深入學習貫徹黨的二十大精神,按照中央和省委的總體部署,結合我X實際,制定學習貫徹黨的二十大精神集中輪訓實施方案。一、總體要求學習貫徹黨的二十大精神是當前和今后一個時期的首要政治任務。認真學習貫徹黨的
一、背景和目的近年來隨著市場競爭的加劇和企業之間的惡性競爭,一些公司采取“靠企吃企”的不正當競爭手段,危害了市場秩序和公平競爭環境為了維護市場秩序,加強市場監管,提高企業競爭力,根據省紀委部署要求,公
按照學習貫徹習近平新時代中國特色社會主義思想主題教育總體安排部署,為進一步提高調查研究工作質量和水平,確保主題教育活動取得實際成效,結合我市實際,制定本方案。一、總體要求堅持以習近平新時代中國特色社會
幼兒園的任務為解除家庭在培養兒童時所受時間、空間、環境的制約,讓幼兒身體、智力和心情得以健康發展。下面是小編給大家整理的幼兒園教育活動方案策劃,僅供參考希望能夠幫助到大家。幼兒園教育活動方案策劃1一、
舉辦活動是從長遠著手,出人、出物或出錢贊助和支持某項社會公益事業的公共關系實務活動。看看幼兒園舉辦方案五篇,歡迎閱讀!幼兒園舉辦方案1一、活動目的:豐富幼兒園兒童們的在園生活,促進孩子們的身心健康。為
幼兒園教育作為整個教育體系基礎的基礎,是對兒童進行預備教育(性格完整健康、行為習慣良好、初步的自然與社會常識)。下面是小編給大家整理的幼兒園活動方案策劃,僅供參考希望能夠幫助到大家。幼兒園活動方案策劃
幼兒園畢業季臨近,每一年幼兒園的畢業季不僅是送走即將屆畢業幼兒,同時也是展示豐收成果的時刻。幼兒園的孩子畢業了,要去到小學學習,總有些不舍,舉辦好畢業典禮,好歡送他們。以下是小編為大家精心準備的幼兒畢
一、活動目的為豐富我校學生的課外文化生活,積極開展有利于學生身心健康的活動,調節身心,增強體質,為教育教學工作更好的服務,以此增加學生的凝聚力、向心力及團結協作的精神。進一步加強學校內涵建設,文化育人
世界上最有影響的幼兒園是由德國的教育家福祿培爾創辦的。1837年,福祿培爾在德國勃蘭登堡大膽招收了一批兒童,成立了世界上第一個教育學齡前兒童的組織。下面是小編給大家整理的幼兒園繪本閱讀方案模板,僅供參
1 增強員工對企業的歸屬感和凝聚力企業的人才隊伍建設一般有兩種:一是靠引進,二是靠自己培養。所以企業應不斷地進行員工培訓,向員工灌輸企業的價值觀,培訓良好的行為規范,使員工能夠自覺地按慣例工作,從而形