Ⅰ 單片機為什麼要初始化
這個初始化是相對的。
初始化是指配置一些狀態 符合你現在的需求。
例如配置你的時鍾,配置你的GPIO 配置一些軟體用的常量變數。
配置完成後,然後開展你正常的程序處理。
其實可以看作單片機的程序 看成是做飯, 初始化就是你在切菜,主程序就是你在炒菜。
Ⅱ 單片機控制電路,最近遇到點問題,求解決:為什麼下載程序後,每次啟動時都要手動復位一次才能開機
看一下你的配置位是否與以前的的相同,好多配置位是下載時,在下載軟體軟體配置的
Ⅲ 在51單片機編程中 初始化程序的作用是什麼
1.將一些變數轉換為初始值,如0或1。
2.如果使用zd,則需要設置定時器的工作模式和初始值。
3.如果使用中斷,應該打開相應中斷源的中斷並設置優先順序。
4.如果使用串口,則需要設置相應的串口工作模式和波特率。
5.需要提前設置的其他數據變數和命令字。
(3)單片機每次開機都初始化擴展閱讀:
初始化器子函數帶注釋:
Voidtimer0interrupt()1
{
TMOD=0x01;//選擇timing0
TH0=(65536-50000)/256;//載入初始值50MS
TL0=(65536-50000)%256;
EA=1;//打開完全中斷
ET0=1;//打開定時器0中斷
TR0=1;//開屬定時器0
}
Ⅳ 單片機初始化的問題
單片機復位時埠為高電平;p0口為准雙向口;當埠P0用作通用IO口,且先執行輸出操作,而後由輸出變為輸入操作時,必須在輸入操作前再執行一次輸出「1」操作,然後執行輸入操作才會正確。
即准雙向口由輸出轉為輸入時需要將埠初始化為1
Ⅳ 如何給單片機系統進行初始化
復位電路和晶振電路屬於純硬體,不用理會,其它的需要軟體做好初始化。軟體的初始化一般是以下幾個步驟。
如果採用的是匯編語言,一般有如下幾項內容
1、設置堆棧地址:比如MOV SP, #60H。
2、設定PSW值,也就是預設的工作寄存器區。
3、設定與定時器、中斷、串口相關的特殊功能寄存器
4、設定各IO口的初始狀態,比如將連接鍵盤的輸入輸出口均設為1,紅外發射電路的初始狀態。
5、內存中需要賦初值的寄存器賦初值,比如上電後要顯示的內容最好先賦個初值。
6、打開中斷允許、啟動定時器(這一步也可根據具體需要放在前面或其它地方)
7、開始主程序循環
對前兩項的設置可能不是必須的,但是應該成為一種好的習慣。
如果是C語言,除了第1、2項不用管,其它也一樣。
如果整個系統在上電後,需要一段時間才能進入穩定狀態,可在一開始加入一段循環延時程序,然後再進行其它初始化操作。
Ⅵ 單片機往什麼要進行初始化或者說初始化時究竟是用來干什麼的或者說初始化的意義高手具體解答~~
單片機的一些初始化都是為了設定功能,驅動某個晶元,就像你要干什麼事,先要事先准備差不多。每個晶元對於單片機來說初始化都不太一樣
Ⅶ 單片機程序初始化要做些什麼啊
分二點解釋:
1、單片機初始化主要是對單片機所用到的功能或外設進行初始化。
比如,用到了定時器T0,則需要在開始對T0進行初始化,其相關SFR為:TMOD,TH0,TL0,TR0。其他類似。
2、當然如果你使用匯編編寫程序,在程序比較大時,可以考慮對堆棧等進行初始化,保證程序運行的可靠性。這點,對於初學者來說,我覺得能理解最好,不理解不用著急。
對於C語言設計來說,堆棧的初始化則考慮較少,一般編譯器會幫助進行優化。