㈠ 單片機應用程序的開發步驟
具體步驟如下:
1、首先,開啟我們的keil軟體,具體的安裝步驟就不做太多的介紹了;
開啟後,點擊菜單欄上的Project選項,創建我們的工程,如圖所示;
編譯完成後,在我們的文件夾下找到.hex的文件,將其燒寫到我們的晶元中即可。
㈡ 單片機開發要注意什麼
一、 如何提高C語言編程代碼的效率
鄧宏傑指出,用C語言進行單片機程序設計是單片機開發與應用的必然趨勢。他強調:「如果使用C編程時,要達到最高的效率,最好熟悉所使用的C編譯器。先試驗一下每條C語言編譯以後對應的匯編語言的語句行數,這樣就可以很明確的知道效率。在今後編程的時候,使用編譯效率最高的語句。」
他指出,各家的C編譯器都會有一定的差異,故編譯效率也會有所不同,優秀的嵌入式系統C編譯器代碼長度和執行時間僅比以匯編語言編寫的同樣功能程度長5-20%。他說:「對於復雜而開發時間緊的項目時,可以採用C語言,但前提是要求你對該MCU系統的C語言和C編譯器非常熟悉,特別要注意該C編譯系統所能支持的數據類型和演算法。雖然C語言是最普遍的一種高級語言,但由於不同的MCU廠家其C語言編譯系統是有所差別的,特別是在一些特殊功能模塊的操作上。所以如果對這些特性不了解,那麼調試起來問題就會很多,反而導致執行效率低於匯編語言。」
二、 如何減少程序中的bug?
對於如何減少程序的bug,鄧宏傑給出了一些建議,他指出系統運行中應考慮的超范圍管理參數有:
1.物理參數。這些參數主要是系統的輸入參數,它包括激勵參數、採集處理中的運行參數和處理結束的結果參數。合理設定這些邊界,將超出邊界的參數都視為非正常激勵或非正常回應進行出錯處理。
2.資源參數。這些參數主要是系統中的電路、器件、功能單元的資源,如記憶體容量、存儲單元長度、堆疊深度。在程式設計中,對資源參數不允許超范圍使用。
3.應用參數。這些應用參數常表現為一些單片機、功能單元的應用條件。如E2PROM的擦寫次數與資料存儲時間等應用參數界限。
4.過程參數。指系統運行中的有序變化的參數。
三、如何解決單片機的抗干擾性問題
鄧宏傑指出:防止干擾最有效的方法是去除干擾源、隔斷干擾路徑,但往往很難做到,所以只能看單片機抗干擾能力夠不夠強了。單片機干擾最常見的現象就是復位;至於程序跑飛,其實也可以用軟體陷阱和看門狗將程序拉回到復位狀態;所以單片機軟體抗干 擾最重要的是處理好復位狀態.一般單片機都會有一些標志寄存器,可以用來判斷復位原因;另外你也可以自己在RAM中埋一些標志。在每次程序復位時,通過判斷這些標志,可以判斷出不同的復位原因;還可以根據不同的標志直接跳到相應的程序。這樣可以使程序運行有連續性,用戶在使用時也不會察覺到程序被重新復位過。
四、 如何測試單片機系統的可靠性
有讀者希望了解用用什麼方法來測試單片機系統的可靠性,鄧宏傑指出:「當一個單片機系統設計完成,對於不同的單片機系統產品會有不同的測試項目和方法,但是有一些是必須測試的:
1.測試單片機軟體功能的完善性。這是針對所有單片機系統功能的測試,測試軟體是否寫的正確完整。
2.上電、掉電測試。在使用中用戶必然會遇到上電和掉電的情況,可以進行多次開關電源,測試單片機系統的可靠性。
3.老化測試。測試長時間工作情況下,單片機系統的可靠性。必要的話可以放置在高溫,高壓以及強電磁干擾的環境下測試。
4、ESD和EFT等測試。可以使用各種干擾模擬器來測試單片機系統的可靠性。例如使用靜電模擬器測試單片機系統的抗靜電ESD能力;使用突波雜訊模擬器進行快速脈沖抗干擾EFT測試等等。
鄧宏傑強調:「還可以模擬人為使用中,可能發生的破壞情況。例如用人體或者衣服織物故意摩擦單片機系統的接觸埠,由此測試抗靜電的能力。用大功率電鑽靠近單片機系統工作,由此測試抗電磁干擾能力等。」
㈢ 單片機應用程序的開發步驟是什麼
1:針對需要開發的設備構建原理圖,可以用AD09,PROTEUS 軟體
2:針對需要實現的功能編程,使用KEIL編寫調試(51,AVR單片機)
3:程序編好測試,測試包括功能測試,老化測試,可靠性測試等
單片機編程就是簡單的嵌入式軟體開發過程,首先你應該精通C語言(當然也有使用匯編語言的,不過主流還是使用C的),能夠熟練運用C語言實現相應的單片機要實現的功能。所謂的單片機開發,就必須對單片機有一定的了解。這就是為什麼嵌入式的工資高,入門難的原因,它必須要有一定的硬體基礎,還需配合很好的編碼能力。如果你掌握了單片機硬體,同時也精通編程,那麼寫單片機程序也就是水到渠成的事了。
㈣ 單片機項目的開發流程
開發流程如下:
(1)CPU開發。開發單片機中的CPU匯流排寬度,能夠有效完善單片機信息處理功能緩慢的問題,提高信息處理效率與速度,開發改進中央處理器的實際結構,能夠做到同時運行2-3個CPU,從而大大提高單片機的整體性能。
(2)程序開發。嵌入式系統的合理應用得到了大力推廣,對程序進行開發時要求能夠自動執行各種指令,這樣可以快速准確地採集外部數據,提高單片機的應用效率。
(3)存儲器開發。單片機的發展應著眼於內存,加強對基於傳統內存讀寫功能的新內存的探索,使其既能實現靜態讀寫又能實現動態讀寫,從而顯著提高存儲性能。
(4)計算機開發。進一步優化和開發單機片應激即分析,並應用計算機系統,通過連接通信數據,實現數據傳遞。
(5)C語言程序開發。優化開發C語言能夠保證單片機在十分復雜的計算機與控制環境中,可以正常有序的進行,促使其實現廣泛全面的應用。
單片機項目包括模擬電路、數字電路和C語言知識。
模擬電路和數字電路屬於抽象學科,在學習單片機之前,覺得模擬電路和數字電路基礎不好的話,不要急著學習單片機,應該先回顧所學過的模擬電路和數字電路知識,為學習單片機加強基礎。
扎實的電子技術基礎是學好單片機的關鍵,直接影響單片機學習入門的快慢。
單片機屬於數字電路,其概念、術語、硬體結構和原理都源自數字電路,如果數字電路基礎扎實,對復雜的單片機硬體結構和原理就能容易理解,就能輕松地邁開學習的第一步,自信心也會樹立起來。
如果覺得單片機很難,那就應該去重溫數字電路,搞清楚觸發器、寄存器、門電路、COMS電路、時序邏輯和時序圖、進制轉換等理論知識。
㈤ 嵌入式開發和單片機開發有什麼區別
一、主體不同
1、嵌入式開發:指在嵌入式操作系統下進行開發,包括在系統化設計指導下的硬體和軟體以及綜合研發。
2、單片機開發:開發能夠保證單片機在十分復雜的計算機與控制環境中可以正常有序的進行程序。
二、特點不同
1、嵌入式開發:利用分立元件或集成器件進行電路設計、結構設計,再進行軟體編程(通常是高級語言),實驗,經過多輪修改設計、製作,最終完成整個系統的開發。
2、單片機開發:有效完善單片機信息處理功能緩慢的問題,提高信息處理效率與速度,開發改進中央處理器的實際結構,能夠做到同時運行2-3個CPU,從而大大提高單片機的整體性能。
三、優勢不同
1、嵌入式開發:除暫且分離硬體的EDA研發以外,側重的就是在一定硬體條件下的系統化設計和軟體研發。
2、單片機開發:加強對基於傳統內存讀寫功能的新內存的探索,使其既能實現靜態讀寫又能實現動態讀寫,從而顯著提高存儲性能。
㈥ 單片機開發軟體有哪些
電路模擬軟體如下:
一、Cadence。
Cadence 公司則睜是老牌的EDA工具提供商,採用Cadence的軟體、硬體和半導體IP,用戶能更快速向市場交付產品。
Cadence公司創新的"系統設計實現" (SDE)戰略,將幫助客戶開發出更具差異化的產品——小到晶元大至系統——涵蓋移動設備、消費電子、雲數據中心、汽車、航空、物聯網、工業應用以及其他細分市場。
Proteus軟體是英國Lab Center Electronics公司出版顫早的EDA工具軟體,支持電路圖設計、PCB布線和電路模擬。
Proteus支持單片機應用系統的模擬和調試,使軟硬體設計在製作PCB板前能夠得到快速驗證,不僅節省成本,還縮短了單片機應用的開發周期。Proteus 是單片機工程師必須掌握的工具之一。
㈦ 什麼是單片機開發
單片機開發設計的八大關鍵步驟
學習使用單片機的開發設計就是理解單片機硬體結構,在匯編或C語言中學會各種功能的初始化設置,以及實現各種功能的程序編制。
第一步:定時器的使用
學會定時器的使用,就可以用單片機實現時序電路,時序電路的功能是強大的,在工業、家用電氣設備的控制中有很多應用,例如,可以用單片機實現一個具有一個按鈕的樓道燈開關,該開關在按鈕按下一次後,燈亮3分鍾後自動滅,當按鈕連續按下兩次後,燈常亮不滅,當按鈕按下時間超過2s,則燈滅。數字集成電路可以實現時序電路,可編程邏輯器件(PLD)可以實現時序電路,可編程式控制制器(PLC)也可以實現時序電路,但是只有單片機實現起來最簡單,成本最低。
定時器的使用是非常重要的,邏輯加時間控制是單片機使用的基礎。單片機設計,單片機,單片機開發,單片機方案,單片機編程
第二步:數字I/O的使用 使用按鈕輸入信號,發光二極體顯示輸出電平,就可以學習引腳的數字I/O功能,在按下某個按鈕後,某發光二極體發亮,這就是數字電路中組合邏輯的功能,雖然很簡單,但是可以學習一般的單片機編程思想,例如,必須設置很多寄存器對引腳進行初始化處理,才能使引腳具備有數字輸入和輸出輸出功能。每使用單片機的一個功能,就要對控制該功能的寄存器進行設置,這就是單片機編程的特點,千萬不要怕麻煩,所有的單片機都是這樣。 單片機設計,單片機,單片機開發,單片機方案,單片機編程
第三步: 學會A/D轉換
MAP430單片機帶有多通道12位A/D轉換器,通過這些A/D轉換器可以使單片機操作模擬量,顯示和檢測電壓、電流等信號。學習時注意模擬地與數字地、參考電壓、采樣時間,轉換速率,轉換誤差等概念。
使用A/D轉換功能的簡單的例子是設計一個電壓表。 單片機設計,單片機,單片機開發,單片機方案,單片機編程
第四步:學會PCI、I2C介面和液晶顯示器介面
這些介面的使用可以使單片機更容易連接外部設備,在擴展單片機功能方面非常重要。
第五步:中斷
單片機的特點是一段程序反復執行,程序中的每個指令的執行都需要一定的執行時間,如果程序沒有執行到某指令,則該指令的動作就不會發生,這樣就會耽誤很多快速發生的事情,例如,按鈕按下時的下降沿。要使單片機在程序正常運行過程中,對快速動作做出反應,就必須使用單片機的中斷功能,該功能就是在快速動作發生後,單片機中斷正常運行的程序,處理快速發生的動作,處理完成後,在返回執行正常的程序。中斷功能使用中的困難是需要精確地知道什麼時候不允許中斷發生(屏蔽中斷)、什麼時候允許中斷發生(開中斷),需要設置哪些寄存器才能使某 種中斷起作用,中斷開始時,程序應該干什麼,中斷完成後,程序應該干什麼等等 。
中斷學會後,就可以編制更復雜結構的程序,這樣的程序可以干著一件事,監視著一件事,一旦監視的事情發生,就中斷正在乾的事情,處理監視的事情,當然也可以監視多個事情,形象的比喻,中斷功能使單片機具有吃著碗里的,看著鍋里的功能。
以上三步學會,就相當於降龍十八掌武功,會了三掌了,可以勉強護身。 單片機設計,單片機,單片機開發,單片機方案,單片機編程
第六步:與PC機進行RS232通信
單片機都有USART介面,特別是MSP430系列中很多型號,都具有兩個USART介面。USART介面不能直接與PC機的RS232介面連接,它們之間的邏輯電平不同,需要使用一個MAX3232晶元進行電平轉換。
USART介面的使用是非常重要的,通過該介面,可以使單片機與PC機之間交換信息,雖然RS232通信並不先進,但是對於介面的學習是非常重要的。正確使用USART介面,需要學習通信協議,PC機的RS232介面編程等等知識。試想,單片機實驗板上的數據顯示在PC機監視器上,而PC機的鍵盤信號可以在單片機實驗板上得到顯示,將是多麼有意思的事情啊!
第七步:學會比較、捕捉、PWM功能
這些功能可以使單片機能夠控制電機,檢測轉速信號,實現電機調速器等控制起功能。
如果以上七步都學會,就可以設計一般的應用系統,相當於學會十招降龍十八掌,可以出手攻擊了。
第八步:學習USB介面、TCP/IP介面、各種工業匯流排的硬體與軟體設計
學習USB介面、TCP/IP介面、各種工業匯流排的硬體與軟體設計是非常重要的,因為這是當前產品開發的發展方向。
到此為止,相當於學會15招降龍十八掌,但還不到打遍天下無敵手的境界。即使如此,也算是單片機大蝦了。