久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機應用系統設計步驟

單片機應用系統設計步驟

作者: 時間:2016-12-02 來源:網絡 收藏
1.設備的準備
① 必備的設備:計算機、仿真器、編程器以及數字萬用表、電烙鐵、鉗子、螺釘旋具等工具。仿真器是調試程序用的,不同的單片機要有不向的仿真器,如51系列單片機就要51系列單片機仿真器。仿真器有通用型仿真器、專用型仿真器。通用型適用于多個系列,價高;專用型只適用于某一系列,價低。編程器是固化(或寫入)芯片用的,編程器也分簡易型和通用型,兩者的差別主要是可固化芯片數目不同,前者數目少而后者數目多,其售價差別也很大。初學者選一種可固化自己所用芯片的簡易型編程器即可。不管是仿真還是編程都需要和計算機連起來,通過計算機來仿真或編程。
② 其它設備:雙蹤示波器、多功能信號發生器、直流穩壓電源等。
2.總體設計
總體設計,分為產品的結構設計(或叫機械設計)、電氣設計兩種。
結構設計主要考慮產品的形狀、體積、面板的尺寸;面板上諸如按鈕、指示燈、顯示器的布置;儀器背板的尺寸、背板上信號線和電源線如何引入;接線端子如何安排等。
電氣設計包括軟件和硬件的設計、單片機的選擇、外圍電路器件的選擇、編程語言的選擇等。在最后要畫出單片機應用系統的結構框圖,在結構框圖里要包括所選單片機的框圖以及各個功能塊的框圖。
3.硬件設計
硬件設計主要是指設計能實現所要求功能的硬件電路。根據前面總體設計時設計的系統結構框圖畫出電路原理圖,結合產品的結構和工藝設計,再畫出印制電路板圖。在作單片機應用系統的硬件設計時,應考慮如下:
① 硬件設計中涉及到的具體電路首先應是自己以前在別的項目上用過的現成的電路,這種電路好與否自己最清楚。其次是借鑒別人的電路,注意采用別人電路時一定要先調試,不能直接放在電路中。
② 硬件電路采用模塊化設計。如—個單片機應用系統有單片機最小系統時鐘電路、A/D轉換電路、LED或LCD顯示電路、串口通信電路等,可分別作為獨立模塊來設計。模塊化設計的好處在于可以“分而治之”。每一個模塊都調試通過,那么整個系統的硬件就基本調試通過了,而且調試好的模塊還可方便地移植到其它的單片機應用系統中去。
③ 選擇市場貨源充足、常用的元器件,尤其是集成電路芯片不能選獨家產品,獨家產品一是售價太高,二是一旦缺貨就無計可施。
④ 在進行硬件電路設計時,要充分考慮系統各部分的驅動能力,若驅動能力不夠,系統就不能可靠工作或完全不能工作。
⑤ 在畫電路原理圖時,要充分考慮產品的結構設計和工藝設計,必須在做印制電路板圖之前完成,否則印制電路板的個數、大小尺寸和形狀均無法確定。
⑥ 目前流行的繪電路圖的工具有很多種,其中最好和常用的是Protel 99SE/ Protel DXP,但是在用Protel 99SE/ Protel DXP畫印制電路板時要充分考慮到抗電磁干擾問題。
⑦ 在用Protel 99SE/ Protel DXP繪制印制電路板圖時,有幾個最小尺寸值必須注意:線寬一般情況下要大于等于15mil;過孔直徑不小于30mil;線距(相鄰兩線的最小間隔)不小于10 mil。mil是英制的長度單位,為1in(1in=0.0254m)的千分之一。
⑧ 在繪制印制電路板圖時,大部分元器件引腳的寬度和間距都是標準的,但有些多腳插接件卻不好繪制,即使用游標卡尺測量,有時也會出現插不上去的現象。解決的方法是:繪制好印制電路板圖后,以1:1的比例打印一份出來,然后再找一塊較平的塑料泡沫,把印制電路板圖貼上去,再把元器件插上去,看是否合適,如不合適,重新修改,直到合適為止。
4.硬件調試
硬件調試在焊好元器件的印制電路板上進行,其步驟如下:
① 檢查印制電路板。在元器件的安裝和焊接之前,先用眼睛和萬用表檢查印制電路板是否有短路和斷路的地方。
② 元器件在安裝的過程中一定要注意方向,在焊接的過程中要保持印制電路板板面的整潔,注意有無漏焊、錯焊、連焊。
③ 空載上電。檢查電源輸出是否正確、單片機引腳上電源和地的電位是否正確以及其它集成芯片上電源和地的電位是否正確。
④ 上電。空載上電檢查正確后,即可將各芯片插入各插座,正式上電,再檢查各點電位是否正確。若發現電位不對或某個元器件發燙甚至冒煙,立即斷電,查找原因,直至排除故障方可重新上電。
⑤ 仿真調試。單片機的仿真器是幫助設計者對應用系統進行調試的專用工具。在不通電的情況下,首先把仿真器與PC機的并口或USB口、串口相連,然后把仿真器的仿真頭插入單片機應用系統的專有插座中,這樣單片機、仿真器以及PC機三者就構成了一個聯機開發系統。
5.軟件設計
在軟件設計上,應注意如下幾點:
① 與硬件設計類似,軟件設計中所涉及的實現某一功能的程序,首先也是自己以前在別的項目上用過的現成的程序模塊;其次借鑒他人的程序模塊,具體途徑是上網查找,包括硬件電路和源代碼,同樣也是在用之前一定要進行調試。
② 軟件設計也應模塊化。模塊化的好處是便于測試、修改和擴展。調試工作可以并行進行,幾個調試人員可以同時調試不同的模塊。
③ 合理分配內存資源,要給堆棧預留足夠的RAM區,不能讓堆棧溢出
④ 在軟件上采用抗電磁干擾措施,比如采樣時,使用軟件濾波;在使用看門狗電路時也需有軟件的配合。
⑤ 為提高程序的可讀性,要給程序模塊增加必要的注釋。
⑥ 編程語言的選擇。匯編語言是單片機早期開發使用的語言,由于其可讀性、可移植性、可維護性差等缺點,而逐漸被C語言取代。C語言是一種簡潔高效的高級語言,具備可讀性好、可靠性高、有功能豐富的函數庫、運算速度快、編譯效率高、可移植性好等特點,并且可以直接實現對硬件的控制,因而逐漸成為了單片機應用系統開發中的主流編程語言。
6.軟件調試
軟件調試與所選用的軟件結構和程序設計技術有關。如果采用模塊程序設計技術,則逐個模塊調好以后,再進行系統程序總調試。
對于模塊結構程序,要一個個子程序分別調試。調試子程序時,一定要符合現場環境,即入口條件和出口條件。調試的手段可采用單步運行方式和斷點運行方式,通過檢查用戶系統CPU的現場、RAM的內容和I/O口的狀態,檢測程序執行結果是否符合設計要求。通過檢測,可以發現程序中的死循環錯誤、機器碼錯誤及轉移地址的錯誤,同時也可以發現用戶系統中的硬件故障、軟件算法及硬件設計錯誤。在調試過程中不斷調整用戶系統的軟件和硬件,逐步通過一個個程序模塊。
各獨立程序模塊調試通過后,可以把各功能塊聯合起來一起進行整體程序綜合調試。在這階段若發生故障,可以考慮各子程序在運行時是否破壞現場,緩沖單元是否發生沖突,零位的建立和清除在設計上有否失誤,堆棧區域有否溢出,輸入設備的狀態是否正常,等等。(http://www.diangon.com/版權所有)若用戶系統是在開發系統的監控程序下運行時,還要考慮用戶緩沖單元是否和監控程序的工作單元發生沖突。
單步和斷點調試后,還應進行連續調試,這是因為單步運行只能驗證程序的正確與否,而不能確定定時精度、CPU的實時響應等問題。待全部完成后,應反復運行多次,除了觀察穩定性之外,還要觀察用戶系統的操作是否符合原始設計要求、安排的用戶操作是否合理等,必要時還要作適當修正。
7.固化
目標程序經仿真器調試通過后,即可固化。源程序經編譯、連接生成的機器碼有兩種格式(*.HEX格式或*.BIN格式)均可固化。固化的方法有兩種:一是仿真器配備的固化功能;二是專用的編程器。專用的編程器有很多種,又分為簡易和通用編程器兩種,前者可固化芯片數目少,后者可固化芯片數目多。
8.運行測試
運行測試包括功能測試和可靠性測試。功能測試是按照設計任務書檢查各個功能是否一一實現。可靠性測試,又稱“烤機”,“烤機”時間不定,可以是48小時、72小時或更長,目的是測試在規定的時間內系統能否正常運行。除檢測運行時間外,還要高溫、低溫測試以及抗電磁干擾測試等。當功能測試和可靠性測試都通過,該單片機應用系統開發成功。


評論


技術專區

關閉