在51系列單片機中,程序存儲器(通常是ROM或Flash)主要用于存儲程序代碼。不過,其中有幾個特殊功能的單元,在單片機運行中扮演著重要角色。以下是這些特殊單元及其功能介紹:
1.地址 0000H:復位入口地址(Reset Vector)
功能:
當單片機復位(如上電、按下復位鍵)時,CPU會自動從該地址開始取指執(zhí)行程序。
用戶通常在該地址編寫主程序的入口,如初始化配置、跳轉(zhuǎn)至主程序等。
舉例:
ORG 0000H ; //將以下代碼放在地址0000H
LJMP MAIN ; //跳轉(zhuǎn)到主程序入口
2.地址 0003H:外部中斷0的中斷向量入口
功能:外部中斷0(INT0)觸發(fā)后,CPU跳轉(zhuǎn)到該地址執(zhí)行中斷服務程序。
舉例:
ORG 0003H
LJMP EXT0_ISR ; //外部中斷0服務程序
3. 地址 000BH:定時器/計數(shù)器0中斷向量入口
功能:定時器0溢出中斷后,跳轉(zhuǎn)到此地址處理相關任務。
4. 地址 0013H:外部中斷1中斷向量入口
5. 地址 001BH:定時器/計數(shù)器1中斷向量入口
6. 地址 0023H:串口通信中斷向量入口
這些中斷向量地址并不是程序存儲器中唯一的“特殊單元”,但它們具有非常重要的系統(tǒng)級作用。在程序編寫時,需要使用ORG偽指令將相應的中斷處理程序放置在正確的地址。
以上就是英銳恩單片機開發(fā)工程師分享的51單片機程序存儲器中的特殊功能單元與作用。英銳恩專注單片機應用方案設計與開發(fā),提供8位單片機、32位單片機。