【《基于擴散硅的壓力計電路系統軟件設計與調試分析案例綜述》2100字】_第1頁
【《基于擴散硅的壓力計電路系統軟件設計與調試分析案例綜述》2100字】_第2頁
【《基于擴散硅的壓力計電路系統軟件設計與調試分析案例綜述》2100字】_第3頁
免費預覽已結束,剩余1頁可下載查看

付費下載

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

基于擴散硅的壓力計電路系統軟件設計與調試分析案例目錄TOC\o"1-3"\h\u23857基于擴散硅的壓力計電路系統軟件設計與調試分析案例 1324771系統軟件設計 1152581.1軟件設計基本原則 162281.2軟件開發語言與開發平臺 183921.3軟件設計流程圖 2259071.4軟件抗干擾措施 344911.4.1采用軟件攔截技術 399621.4.2設置看門狗模塊 3169022系統調試與分析 381202.1總體效果展示 3305902.2調試總結 4系統軟件設計軟件設計基本原則在軟件的設計過程中誕生了眾多的軟件設計模式和基本原則。遵循這些原則可以較好的保證代碼的健壯性和后期代碼維護的難度。常用的軟件設計原則有:1.自頂向下設計2.模塊化設計3.向后兼容的設計思想。自頂向下設計能夠將一個大問題分解為若干小問題,在整體理解和把握的基礎上進行逐層分解,這種設計實現了從整體到部分的過度,可以較好的避免各個部分單獨開發后導致的綜合調試不兼容的問題。模塊化設計可以將系統代碼進行模塊劃分,設計者可以根據類型或者功能進行劃分,將軟件以接口的形式暴露出來,實現封裝,減少代碼冗余。模塊化開發可以較好的實現多人協作開發。向后兼容思想是為軟件的后續開發維護留下接口,便于進行功能拓展,這對于實現代碼升級和功能增添有重要的價值[17]。軟件開發語言與開發平臺目前主流的編程語言主要可以分為面向對象和面向過程的編程語言。其中C語言作為最早問世的面向過程的高級編程語言在嵌入式系統中有不可替代的地位,常年占據主流編程排行榜的前三位。C語言由貝爾實驗室的D.M.Ritchie以B語言為基礎設計而來。C語言具有強大的指針工具,可以在硬件編程中直接操作硬件,同時C語言代碼非常的簡潔,可以直接編譯成二進制代碼執行,非常適合在資源較為匱乏的硬件設備上執行。C語言在操作系統開發,嵌入式設備驅動領域具有不可撼動的地位,在單片機開發中,C語言更是高效開發的不二人選,匯編語言逐漸被淘汰。因此本系統采用C語言來作為開發工具。在嵌入式軟件開發中選擇合適的編譯器非常重要,編譯器是實現交叉編譯的基礎。目前單片機的開發工具有很多,每個公司都有配套的開發工具。德州儀器公司的MSP430系列的芯片一般采用IAR進行開發,8051單片機一般采用KeiluVision編譯器進行開發。該軟件具有非常強大的功能,內置了C51模塊,同時隨著ARM公司收購了KeiluVision軟件之后,更是增加了大量的STM32的開發功能,優化了代碼提示和包管理,版本管理系統[18]。由于KeiluVision進入中國較早,有著非常完善的開發社區,資料豐富,所以本系統選用KeiluVision進行開發。KeiluVision軟件啟動界面如REF_Ref70886306\h圖4.1所示。圖STYLEREF1\s4.SEQ圖\*ARABIC\s11Keil5集成開發壞境啟動頁面軟件設計流程圖系統在進行上電操作之后,系統會進行初始化,檢查管腳和外設電路是否正常,一切就緒之后。默認進入讀取水壓模式,當水壓過大時,系統會在液晶顯示屏上提醒用戶,而當水壓正常之后系統會在顯示屏上顯示正常。其檢測流程圖如REF_Ref70886331\h圖4.2所示。圖STYLEREF1\s4.SEQ圖\*ARABIC\s12主程序流程圖軟件抗干擾措施為了實現更大的控制穩定性,提高系統的易維護性和可擴展性,還需要設計一個軟件級干擾系統。為了抵抗軟件和單片機本身的不穩定因素,提高可靠性,目前嵌入式開發中主流的軟件抗干擾措施主要有以下兩種可能:采用軟件攔截技術如果系統受到干擾,程序的內部指針很容易指向錯誤的地址,導致程序進入不可控區域,導致意外的運行結果,最終導致死循環錯誤,首先受到影響的是內部程序計數器,因此有必要,在軟件密鑰代碼前插入三個或四個字節的空指令,給CPU一個時間周期進行自校正。此外,錯誤的程序指針會導致程序在未使用的中斷區運行,并影響軟件的正常運行。在所有未使用的中斷響應函數的輸入端設置軟件浪費,并添加返回聲明,將偏離的程序拖回到主程序流中,這兩種方法的結合可以從代碼層面上達到令人滿意的抗干擾效果。設置看門狗模塊ST意大利半導體公司的Stm32f103v8芯片包含許多片上資源,包括看門狗(iwdg)模塊。它的主要功能是定期從硬件上重啟CPU,在軟件開發中,我們只需設置看門狗的倒計時定時器,并在每次倒計時歸零前重置定時器,這樣就可以實現了,如果主程序崩潰或運行,并且看門狗定時器無法重置,看門狗模塊可以從硬件重置CPU,并將程序拖回正常工作進程。。系統調試與分析總體效果展示在基于單片機的擴散硅壓力計電路的設計與實現中,使用意法半導體公司推出的STM32F103RCT6單片機作為核心控制器,系統搭載了康德立品牌的擴散硅壓力計進行水壓監測。當水壓超過閾值時,在OLED屏幕上顯示水壓過高的提示。其整體效果圖如REF_Ref70886407\h圖5.1所示。圖STYLEREF1\s5.SEQ圖\*ARABIC\s11實物調試整體效果圖調試總結在硬件調試過程中出現了以下2個主要的問題:1硬件設計的核心是單個空間計算機最小系統的構建。作為一個綜合性的模塊,這部分應該具有良好的可擴展性和模塊性。因此,本系統選擇了單位置計算機的引腳進行引導,使其在使用杜邦電纜進行插接連接時工作得更好,但由于焊接不當,出現了多個與端口P0相對應的引腳,整個端口P0不能正常工作。用電壓表測試后,終于發現了問題。2.在程序的第一版設計中,由于缺乏模塊化編程的思維,將所有的代碼都寫在一個文件中,這使得整個文件很長,代碼臃腫,同時也缺乏相關的注釋。這種代碼具有很大的問題,雖然可以實現功能,但是缺乏可維護性。在后續設計中加入了模塊化編程思想,把每個模塊

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論