新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)上電后內(nèi)部發(fā)生的事情

單片機(jī)上電后內(nèi)部發(fā)生的事情

作者: 時(shí)間:2017-09-25 來源:網(wǎng)絡(luò) 收藏

  上電后,如果晶振正常起震的話,cpu就會在晶振的驅(qū)動下開始工作,cpu的工作就是在每個(gè)機(jī)器周期到指定的地方提取指令,然后解析并執(zhí)行,51只有一個(gè)時(shí)鐘源所以51永遠(yuǎn)只能以一種時(shí)鐘頻率工作,單片機(jī)一上電單片機(jī)的頻率就固定了不能更改了,上電后單片機(jī)就以固定的頻率開始工作了,因此51單片機(jī)也沒有配置系統(tǒng)時(shí)鐘的寄存器,等高級單片機(jī)就不一樣了,這種單片機(jī)有多個(gè)時(shí)鐘源,上電后單片機(jī)以某種固定的時(shí)鐘頻率開始工作,到指定的地址提取指令,然后解析并執(zhí)行,在后面的程序中可以更改系統(tǒng)的工作時(shí)鐘與工作頻率,

本文引用地址:http://butianyuan.cn/article/201709/364746.htm

  除非是沒有晶振提供時(shí)鐘,或者是系統(tǒng)沒有上電,否則cpu是不可能停止工作的,cpu的任務(wù)就是不停的提取指令,然后解析并執(zhí)行,而且單片機(jī)在我們下載程序之前,就已經(jīng)有程序了,出廠之前廠家就已經(jīng)下載了一部分程序在單片機(jī)里面。單片機(jī)上電之后就會先執(zhí)行這部分程序。例如:系統(tǒng)存儲器中的用于ISP串口下載的bootloard程序,這段代碼的任務(wù)是與下載器通訊將用戶寫得代碼下載到指定地方。

  上電后可能在三個(gè)不同的地址開始提取指令并解析執(zhí)行,

  一:用戶FLASH;里面裝載的是用戶下載的程序,如果沒有程序或者程序不正確,單片機(jī)將會跑飛,

  二:系統(tǒng)存儲器:里面出廠前下載了用于ISP串口下載的bootloard程序,這段代碼的任務(wù)是與下載器通訊將用戶寫得代碼下載到指定地方。如果這部分代碼被破壞這個(gè)單片機(jī)將再也不能通過串口下載程序了。

  三:片上內(nèi)存SRAM;內(nèi)存中的代碼是掉電不保存的,如果從這里啟動, 單片機(jī)將會跑飛 因?yàn)閺?fù)位后的內(nèi)存里面存的都是111111,cpu不認(rèn)識這些是什么意思。



關(guān)鍵詞: 單片機(jī) stm32

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉