51單片機(jī)的編程重點(diǎn) 51單片機(jī)的存儲器結(jié)構(gòu)?
51單片機(jī)的存儲器結(jié)構(gòu)?51單片機(jī)存儲器結(jié)構(gòu):單片機(jī)的存儲器采用哈佛結(jié)構(gòu),即程序存儲器空間和數(shù)據(jù)存儲器空間是分開的,程序存儲器和數(shù)據(jù)存儲器有各自的尋址、尋址空間和控制系統(tǒng)。51記憶可分為程序存儲器RO
51單片機(jī)的存儲器結(jié)構(gòu)?
51單片機(jī)存儲器結(jié)構(gòu):
單片機(jī)的存儲器采用哈佛結(jié)構(gòu),即程序存儲器空間和數(shù)據(jù)存儲器空間是分開的,程序存儲器和數(shù)據(jù)存儲器有各自的尋址、尋址空間和控制系統(tǒng)。
51記憶可分為
程序存儲器ROM:用于存儲程序、表格等固定常識。C51編程中的代碼關(guān)鍵字聲明。
內(nèi)部數(shù)據(jù)存儲器RAM:51在子系列中有128字節(jié)RAM,在子系列52中有256字節(jié)。
特殊功能寄存器SFR:具有80h FFH字節(jié)地址的RAM。
位地址空間:片內(nèi)RAM0x20-0x2f空間,允許按位或字節(jié)尋址??梢杂胋data聲明。
外部數(shù)據(jù)寄存器RAM:片外RAM,2 ^ 16最大尋址空間64K。Pdata用于聲明片外首頁RAM空間為0-255;Xdata用于聲明外部RAM空間為0-65535。
51單片機(jī)用c還是c ?
51單片機(jī)最常用的編程語言是C語言,最開始用匯編語言,現(xiàn)在廣泛使用C語言。c接近硬件驅(qū)動的編程語言,可移植性和兼容性都不錯。
51單片機(jī)如何實(shí)現(xiàn)多線程多任務(wù)?有哪些程序可以在“后臺”自己運(yùn)行?
51單片機(jī)can 不能實(shí)現(xiàn)多線程任務(wù),只能單線程。這是由51單片機(jī)的硬件決定的,否則不需要設(shè)計(jì)多線程芯片。
2、51單片機(jī)硬件資源,如定時器、計(jì)數(shù)器、捕捉器、比較器、AD轉(zhuǎn)換器、pwm、UART等,由用戶初始化啟動。開始運(yùn)行后,51單片機(jī)的相關(guān)硬件電路可以自動運(yùn)行,無需干預(yù)。
3.在運(yùn)行這些硬件資源的過程中,用戶可以進(jìn)行其他操作(一般不會改變正在運(yùn)行的硬件資源,否則會影響初始設(shè)置)。
4.但是這些硬件資源運(yùn)行后,大多數(shù)情況下,對應(yīng)的特殊寄存器(包括中斷)都會發(fā)生變化。這時用戶需要查詢特殊寄存器或者處理中斷。當(dāng)處理這些問題時,用戶需要停止正在運(yùn)行的程序,并可以 不要同時做其他工作。例如,用戶將定時器設(shè)置為1秒的周期;啟動定時器中斷。啟動定時器后,用戶可以執(zhí)行與定時器無關(guān)的其他操作和控制。當(dāng)時間達(dá)到1S時,定時器將被中斷,用戶執(zhí)行的程序?qū)⒈煌V埂14嬲军c(diǎn)后,程序會跳轉(zhuǎn)到定時器中斷,開始執(zhí)行定時器中斷程序。定時器中斷程序完成后,恢復(fù)場景并從用戶程序中斷的位置重新開始操作。