單片機應用程序的開發步驟是什么?
1:針對需要開發的設備構建原理圖,可以用AD09,PROTEUS 軟件
2:針對需要實現的功能編程,使用KEIL編寫調試(51,AVR單片機)
3:程序編好測試,測試包括功能測試,老化測試,可靠性測試等
單片機編程就是簡單的嵌入式軟件開發過程,首先你應該精通C語言(當然也有使用匯編語言的,不過主流還是使用C的),能夠熟練運用C語言實現相應的單片機要實現的功能。所謂的單片機開發,就必須對單片機有一定的了解。這就是為什么嵌入式的工資高,入門難的原因,它必須要有一定的硬件基礎,還需配合很好的編碼能力。如果你掌握了單片機硬件,同時也精通編程,那么寫單片機程序也就是水到渠成的事了。
單片機編程,需要程序流程圖
#include "ds18b20.h"rn#include "uart.h"rn#include rnunsigned char code Ds18b20com1[]={0x28,0xff,0x7f,0x25,0x40,0x17,0x04,0x69};rnunsigned char code Ds18b20com2[]={0x28,0xff,0xd5,0x21,0x40,0x17,0x03,0x6a};rnunsigned char code Ds18b20com3[]={0x28,0xff,0xa2,0x00,0x40,0x17,0x04,0x2a};rnunsigned char code Ds18b20com4[]={0x28,0xff,0xd8,0x0c,0x40,0x17,0x04,0xe8};rnvoid delay()rn{rn unsigned int i=5000,j=100;rn while(j--)rn {rn for(i=5000;i>0;i--);rn }rn}rnvoid main()rn{rn float Ds18b20Result;rn UsartConfiguration();rn while(1)rn {rn delay(); rn Ds18b20Result=getTemperature(&Ds18b20com1);rn printf("the No1 tempture is : %3.1f",Ds18b20Result);rn Ds18b20Result=getTemperature(&Ds18b20com2);rn printf("the No2 tempture is : %3.1f",Ds18b20Result);rn Ds18b20Result=getTemperature(&Ds18b20com3);rn printf("the No3 tempture is : %3.1f",Ds18b20Result);rn Ds18b20Result=getTemperature(&Ds18b20com4);rn printf("the No4 tempture is : %3.1f",Ds18b20Result);程序沒貼完整呀,while循環里面就發送一些字符串。以后就沒了。
單片機編程的一般過程是什么?
1.根據任務畫出流程圖,如果你是很熟悉的老手的了,不畫也行,但有流程圖,有時候分析軟件的時候還是蠻方便的,,,呵呵
2.根據流程圖一步一步的寫完整,然后調試,
3.根據要求,各個功能都OK 的了,燒OTP 出來實機測試 ,發現BUG ,再修改,,,測試直到全部OK,
4.如果是比較具體的編程過程,那么就是要你如何根據任務去設計一個軟件結構的了,初始化做些什么,主程式放那些,中斷服務程式那做些什么,每100US 做什么,,,,等等 ,,,
先寫后改然后再寫再改,如此輪回幾百次之后領導滿意了你已經麻木了就完成了~
看電路圖。看時序圖。編程。調試
單片機編程的整個流程
你得先知道什么是單片機:
單片機是指一個集成在一塊芯片上的完整計算機系統。盡管它的大部分功能集成在一塊小芯片上,但是它具有一個完整計算機所需要的大部分部件:cpu、內存、內部和外部總線系統,目前大部分還會具有外存。同時集成諸如通訊接口、定時器,實時時鐘等外圍設備。
然后,所謂的單片機編程就是,基于單片機進行的程序開發,在有周圍外設支持的情況下,用軟件來控制的部分就是能過單片機編程來實現。單片機能識別的語言是硬件語言即匯編,因此編程就是圍繞匯編來實現,有直接用匯編程序來編寫的,但是較難調試的編寫,特別是一上規模就更不易實現,因此常用高級語言來寫然后通過編譯器轉化成匯編,如用c或是c++等。單片機編程還會由于其位數不同而有所差異,如8位單片機編程,16位單片機編程,32位單片機編程等
相關推薦:
特快專遞立案(可以郵寄立案嗎)
職務軟件著作權歸誰(軟件著作權屬于公司還是個人)
刑事精神鑒定(刑事精神鑒定標準)
關于餐飲賠償(餐飲賠付標準)
物流賠償損失(物流損壞賠償準則)