1. 做單片機軟體設計時,都應該考慮哪些事情
1.首先要保證實現所需要的各種功能,要做到零故障,准確無誤,做到零BUG。
2.其次,凡是需要人工操作的,要做到操作簡便,避免可能出現的誤操作,必須在軟體上加以限制,做到零錯誤。
3.需要顯示時,做到顯示明確,避免用戶誤會,應准確顯示出系統狀態,出現故障時應及時提示和報警。
4.在軟體編寫時,做到模塊化,層次清晰,結構合理,易懂易讀易移植,利用團隊合作完成。
5.在軟體上,要有防止干擾的措,加看門狗,防止飛程序,禁止死循環。
這些是主要幾點,對於一個項目,一個產品,在研發時,公司會有嚴密的管理制度和措施,更會有硬體軟體的設計要求的,會更詳細具體。
2. 做單片機程序設計,要從哪方面下手
首先要根據任務需求建立程序的設計思路,這一步是最重要的,沒有思路程序就無從談起,說白了程序就是你設計思路的代碼再現,接下來要把思路變成程序框圖,畫框圖也是一種輔助思維的過程,框圖畫好了就可以根據框圖寫代碼了,有了代碼接下來就可以模擬調試、排錯、再調試直至成功,到了這一步就可以把調試好的代碼下載到正式PCB上單片機進行運行測試了。
3. 什麼是單片機應用系統的軟體設計
單片機是軟體與硬體的結合,所謂軟體設計就是要用程序來代替一些硬體上的不足或使之更加完美。
4. 單片機設計
首先要清楚你要做一個什麼樣的產品,這個產品包含哪些功能,要採集哪些信號?要控制哪些設備?要走哪些通訊協議?通訊協議走什麼介面?是不是要顯示界面?是不是要聲光提示?是不是要低功耗?清楚了這些需求以後就可以選型了。
比如說我要做一個單片機密碼鎖,要求:
1. 有4位數碼管顯示;
2. 控制一個繼電器;
3. 控制一個蜂鳴器;
4. 控制五個LED燈;
5. 兩個按鍵輸入;
2 晶元選型
根據你的需求來確定所選晶元型號。如第一部分的功能需求,這5個需求都只需要用到單片機的IO口,沒有用到片上資源,所以只要IO口夠用就可以了。
1. 4位數碼管:為了方便大家學習,這里選用74HC595來驅動,該晶元與單片機相連只需要3個IO口;
2. 控制一個繼電器;這個地方主要考慮線圈電壓,單片機是5V供電,所以選用5V的繼電器,佔用1個IO口;
3. 控制蜂鳴器:選用有源蜂鳴器,即只要給電蜂鳴器就發聲,佔用1個IO口;
4. 控制5個LED燈:採用灌電流的方式,佔用5個IO口;
5. 兩個按鍵輸入:採用上拉電阻,按下低電平實現,佔用2個IO口;
總共用了3+1+1+5+2=12個IO口;為了方便初學者,那我們就選用STC的51單片機來完成這個設計吧,所選型號為STC89C51,封裝形式為DIP40,相信大家在大學里學單片機的時候老師都是用這一款教的吧。
3 硬體原理設計
晶元選型完畢之後,又有了設計思路,那就趕快把電路圖畫出來吧。畫電路圖用什麼軟體呢?這樣的EDA工具很多,像Protel99se、DXP、Altium Designer 等,這些都是軟體都是一家出的,還有Cadence、PowerPcb等。本人用的是AD09。原理圖設計的內容是什麼呢?設計的內容包括單片機的最小系統、還有擴展出來的功能。
4 硬體PCB設計
當原理圖畫完,並且檢查沒有錯誤後,就開始畫PCB吧,什麼是PCB?PCB就是電路板,什麼是電路板,就像下圖這樣的:
50171510883016
這是焊接之前的電路板,PCB文件設計好後,發給廠家去打樣製版,做回來的就是這樣的電路板。上圖中的電路板用的都是直插元件。什麼是直插元件,什麼是貼片元件?這就設計到元器件的封裝問題了。
如果大家感興趣,我明後天把畫pcb板的過程推送給大家。
5 樣板焊接
什麼是樣板焊接?就是把電子元器件焊接在pcb板上。如果封裝簡單、樣板數量少那完全可以自己動手焊接了,順便也鍛煉一下自己的焊接水平,對於一個搞電的人而言,一般都是從焊電路板過來的。如果搞電但不會焊接,別人會笑話你的。
6 調試程序
程序該怎麼寫?用什麼工具寫?不同的單片機有不同的編程環境,比如PIC單片機使用MPLAB編程環境,MSP430單片機使用IAR Embedded Workbench編程環境,DSP使用CCS編程環境。這里重點介紹的編程環境是Keil,Keil是目前所有編程環境中最好用的,也是支持晶元最多的,可以說Keil是目前最主流的編程環境,本人使用的是Keil的編程環境,Keil的C51版本和MDK版本都在用。
7 程序燒錄
程序燒錄的意思就是把寫好的程序下載到單片機里,這樣單片機才會按照用戶編寫的程序來執行命名、實現功能。程序要怎麼樣才能燒寫到單片機中去呢?每種單片機都有各自的程序燒錄介面。
5. 一般做單片機軟體設計有哪些事情是需要重點考慮的呢
各種各樣的外圍電路。信號匹配關系和時序控制。各種演算法和信號處理。是否需要操作系統,或需要什麼樣的操作系統。演算法的可理解性可維護性。資源的佔有和速度效率的平衡關系。 當然最重要的還有選型等,具體型號可以關注一下英銳恩的系統軟體設計,樣式蠻全的
6. 單片機應用系統軟體設計應該考慮哪些事情
第一步,理清方案,選擇完成目標需要的元器件及輔料。
第二步,原理圖設計
第三步,軟體設計,利用模擬系統模擬,驗證原理及程序
第四步,PCB設計,加工,焊接
第五步,調試。
7. 請簡述單片機系統的設計過程是怎樣的
單片機應用系統設計分為硬體設計與軟體設計兩部分及系統調試三個部分,大致過程如下:一、硬體電路設計1、根據任務需求規劃確定單片機類型及外圍介面電路方案;2、根據方案設計具體電路。二、軟體設計1、根據目標任務的功能需求,結合硬體電路控制方式,規劃設計軟體功能模塊;2、將功能模塊細化成流程圖;3、根據流程圖編寫程序代碼;4、將編譯後的目標代碼下載到實物單片機或虛擬單片機進行軟體模擬調試;三、系統調試1、將初調成功的目標的代碼下載到單片機目標試驗板進行軟硬體聯調及功能驗證;2、驗證成功符合設計要求,就可以進入小批量測試了。
8. 單片機程序設計結構有哪些
單片機程序設計結構一般都是由連續結構以及規劃結構,這兩個結構是非常好的
9. 做單片機軟體設計應該考慮哪些事情
考慮的太多了。各種各樣的外圍電路。信號匹配關系和
時序控制
。各種演算法和信號處理。是否需要操作系統,或需要什麼樣的操作系統。演算法的可理解性
可維護性
。資源的佔有和速度效率的平衡關系。
10. 單片機設計的主要步驟
硬體設計要學習altiumdesigner等軟體應用,還要明白布線規則,抗干擾設計,安規要求等。軟體部分就要學習單片機編程,與外部硬體引腳功能相匹配。