




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1/109第三章第三章 STC15F2K60S2STC15F2K60S2單片機(jī)的單片機(jī)的基本結(jié)構(gòu)基本結(jié)構(gòu)本章學(xué)習(xí)目標(biāo)本章學(xué)習(xí)目標(biāo)掌握掌握STC15F2K60S2STC15F2K60S2單片機(jī)的基本結(jié)構(gòu)單片機(jī)的基本結(jié)構(gòu)掌握單片機(jī)掌握單片機(jī)I/O口的使用口的使用掌握單片機(jī)應(yīng)用系統(tǒng)的典型構(gòu)成掌握單片機(jī)應(yīng)用系統(tǒng)的典型構(gòu)成2/109一、單片機(jī)的內(nèi)部結(jié)構(gòu)一、單片機(jī)的內(nèi)部結(jié)構(gòu) 單片微型計(jì)算機(jī)(簡(jiǎn)稱單片機(jī))在一片芯單片微型計(jì)算機(jī)(簡(jiǎn)稱單片機(jī))在一片芯片上集成了前述微型計(jì)算機(jī)的功能結(jié)構(gòu),片上集成了前述微型計(jì)算機(jī)的功能結(jié)構(gòu),有些單片機(jī)不僅集成了有些單片機(jī)不僅集成了CPU、存儲(chǔ)程序存儲(chǔ)程序和和數(shù)據(jù)的存儲(chǔ)器數(shù)據(jù)的存儲(chǔ)
2、器、I/O接口接口、定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器等常等常規(guī)資源,而且還集成了工業(yè)測(cè)控系統(tǒng)中常規(guī)資源,而且還集成了工業(yè)測(cè)控系統(tǒng)中常用的用的模擬量模塊模擬量模塊。 3.1 STC15F2K60S2STC15F2K60S2單片機(jī)的基本結(jié)構(gòu)單片機(jī)的基本結(jié)構(gòu)3/109單片機(jī)產(chǎn)品單片機(jī)產(chǎn)品8051內(nèi)核是內(nèi)核是Intel 8051系列單片機(jī)的基本標(biāo)準(zhǔn),許多參系列單片機(jī)的基本標(biāo)準(zhǔn),許多參考書上將這種單片機(jī)稱為考書上將這種單片機(jī)稱為MCS-51系列單片機(jī)。系列單片機(jī)。MCS-51系列單片機(jī)的典型產(chǎn)品為系列單片機(jī)的典型產(chǎn)品為8051,它有,它有4K8ROM,128字節(jié)字節(jié)RAM,2個(gè)個(gè)16位定時(shí)位定時(shí)/計(jì)數(shù)器,計(jì)數(shù)器,
3、4個(gè)個(gè)8位位I/O口,一個(gè)串行口???,一個(gè)串行口。二十世紀(jì)二十世紀(jì)80年代,年代,Intel將將8051內(nèi)核轉(zhuǎn)讓或出售給幾家內(nèi)核轉(zhuǎn)讓或出售給幾家著名的著名的IC廠商,如廠商,如Philips,Atmel等。這樣,等。這樣,8051單片單片機(jī)就變成眾多制造廠家支持的,發(fā)展成為上百個(gè)產(chǎn)品機(jī)就變成眾多制造廠家支持的,發(fā)展成為上百個(gè)產(chǎn)品的大家族。的大家族。最常用的宏晶最常用的宏晶STC系列單片機(jī),系列單片機(jī),Atmel公司的公司的AT89系列系列等等51系列,等等。只要是系列,等等。只要是8051內(nèi)核的單片機(jī),它們的內(nèi)核的單片機(jī),它們的最基本結(jié)構(gòu)是相同的,并且,指令系統(tǒng)完全兼容標(biāo)準(zhǔn)最基本結(jié)構(gòu)是相同的,
4、并且,指令系統(tǒng)完全兼容標(biāo)準(zhǔn)8051單片機(jī)。單片機(jī)。4/109 以目前市場(chǎng)上常見的以目前市場(chǎng)上常見的8051內(nèi)核單片機(jī)內(nèi)核單片機(jī)STC15F2K60S2為例,為例,說明單片機(jī)的內(nèi)部結(jié)構(gòu)。說明單片機(jī)的內(nèi)部結(jié)構(gòu)。STC12C5A60S2單片機(jī)主要集成單片機(jī)主要集成了以下資源:了以下資源:增強(qiáng)型增強(qiáng)型8051內(nèi)核,單時(shí)鐘機(jī)器周期,速度比傳統(tǒng)內(nèi)核,單時(shí)鐘機(jī)器周期,速度比傳統(tǒng)8051內(nèi)核單片機(jī)內(nèi)核單片機(jī)快快812倍倍60KB Flash程序存儲(chǔ)器程序存儲(chǔ)器;1KB數(shù)據(jù)數(shù)據(jù)Flash;2048字節(jié)的字節(jié)的SRAM3個(gè)個(gè)16位可自動(dòng)重裝載的定時(shí)位可自動(dòng)重裝載的定時(shí)/計(jì)數(shù)器(計(jì)數(shù)器(T0、T1、T2)可編程時(shí)鐘
5、輸出功能可編程時(shí)鐘輸出功能 至多至多42根根I/O口線口線 2個(gè)全雙工異步串行口(個(gè)全雙工異步串行口(UART)1個(gè)高速同步通信端口(個(gè)高速同步通信端口(SPI) 8通道通道10位位ADC3通道通道PWM/可編程計(jì)數(shù)器陣列可編程計(jì)數(shù)器陣列/捕獲捕獲/比較單元比較單元內(nèi)部高可靠上電復(fù)位電路和硬件看門狗內(nèi)部高可靠上電復(fù)位電路和硬件看門狗 內(nèi)部集成高精度內(nèi)部集成高精度R/C時(shí)鐘,常溫工作時(shí),可以省去外部晶振電路。時(shí)鐘,常溫工作時(shí),可以省去外部晶振電路。5/109圖3- 7 STC15F2K60S2單片機(jī)的內(nèi)部結(jié)構(gòu)圖STC15F2K60S2單片機(jī)內(nèi)部結(jié)構(gòu)框圖單片機(jī)內(nèi)部結(jié)構(gòu)框圖6/109STC15F2K
6、60S2單片機(jī)的內(nèi)部資源單片機(jī)的內(nèi)部資源中央處理器(中央處理器(CPU) 程序存儲(chǔ)器(程序存儲(chǔ)器(Flash)數(shù)據(jù)存儲(chǔ)器(數(shù)據(jù)存儲(chǔ)器(RAM)數(shù)據(jù)數(shù)據(jù)Flash存儲(chǔ)器存儲(chǔ)器定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器I/O接口接口通用異步串行通信接口(通用異步串行通信接口(UART)中斷系統(tǒng)中斷系統(tǒng)SPI接口接口高速高速A/D轉(zhuǎn)換模塊轉(zhuǎn)換模塊PWM(或捕獲(或捕獲/比較單元)比較單元)看門狗電路看門狗電路電源監(jiān)控電源監(jiān)控片內(nèi)片內(nèi)RC振蕩器等模塊振蕩器等模塊幾乎包含了數(shù)據(jù)采集和控制中所需的所有單元模塊,幾乎包含了數(shù)據(jù)采集和控制中所需的所有單元模塊, 可稱得上一個(gè)片上系統(tǒng)(可稱得上一個(gè)片上系統(tǒng)(SOC)7/1091、C
7、PU結(jié)構(gòu)結(jié)構(gòu) 單片機(jī)的中央處理器(單片機(jī)的中央處理器(CPU)由運(yùn)算器和)由運(yùn)算器和控制器組成??刂破鹘M成。(1)運(yùn)算器)運(yùn)算器 以以8位算術(shù)位算術(shù)/邏輯運(yùn)算部件邏輯運(yùn)算部件ALU為核心,加上為核心,加上通過內(nèi)部總線而掛在其周圍的暫存器通過內(nèi)部總線而掛在其周圍的暫存器TMP1、TMP2、累加器、累加器ACC、寄存器、寄存器B、程序狀態(tài)、程序狀態(tài)標(biāo)志寄存器標(biāo)志寄存器PSW以及布爾處理機(jī)組成了整以及布爾處理機(jī)組成了整個(gè)運(yùn)算器的邏輯電路。個(gè)運(yùn)算器的邏輯電路。8/109算術(shù)邏輯單元算術(shù)邏輯單元ALU:用來完成二進(jìn)制數(shù)的四則用來完成二進(jìn)制數(shù)的四則運(yùn)算和布爾代數(shù)的邏輯運(yùn)算。運(yùn)算和布爾代數(shù)的邏輯運(yùn)算。累加器
8、累加器ACC又記作又記作A:是一個(gè)具有特殊用途的:是一個(gè)具有特殊用途的8位寄存器,在位寄存器,在CPU中工作最頻繁,用來存放操中工作最頻繁,用來存放操作數(shù)和運(yùn)算結(jié)果。作數(shù)和運(yùn)算結(jié)果。寄存器寄存器B:是專門為乘、除法設(shè)置的寄存器,是專門為乘、除法設(shè)置的寄存器,也是一個(gè)也是一個(gè)8位寄存器,用來存放乘法和除法中位寄存器,用來存放乘法和除法中的操作數(shù)及運(yùn)算結(jié)果,對(duì)于其他指令,它只作的操作數(shù)及運(yùn)算結(jié)果,對(duì)于其他指令,它只作暫存器用。暫存器用。程序狀態(tài)字程序狀態(tài)字(PSW):又稱為標(biāo)志寄存器,一):又稱為標(biāo)志寄存器,一個(gè)個(gè)8位寄存器,用來存放執(zhí)行指令后的有關(guān)狀位寄存器,用來存放執(zhí)行指令后的有關(guān)狀態(tài)信息,供
9、程序查詢和判別之用。態(tài)信息,供程序查詢和判別之用。 9/109PSW中有些位的狀態(tài)是在指令執(zhí)行過程中中有些位的狀態(tài)是在指令執(zhí)行過程中自動(dòng)形成的,有些位可以由用戶采用指令自動(dòng)形成的,有些位可以由用戶采用指令加以改變。加以改變。PSW的各位定義如下所示:的各位定義如下所示:位號(hào)位號(hào)D7D6D5D4D3D2D1D0符號(hào)符號(hào) CYACF0RS1 RS0OVF1P10/109CY(PSW.7):):進(jìn)位標(biāo)志位進(jìn)位標(biāo)志位 當(dāng)執(zhí)行加當(dāng)執(zhí)行加/減法指令時(shí),如果操作結(jié)果的最高位減法指令時(shí),如果操作結(jié)果的最高位D7出現(xiàn)進(jìn)出現(xiàn)進(jìn)/借位,則借位,則CY置置“1”,否則清,否則清“0”。執(zhí)行。執(zhí)行乘除運(yùn)算后,乘除運(yùn)算后
10、,CY清零。此外,清零。此外,CPU在進(jìn)行移位操在進(jìn)行移位操作時(shí)也會(huì)影響這個(gè)標(biāo)志位。作時(shí)也會(huì)影響這個(gè)標(biāo)志位。位號(hào)位號(hào)D7D6D5D4D3D2D1D0符號(hào)符號(hào) CYACF0RS1 RS0OVF1P11/109AC(PSW.6):):輔助進(jìn)位標(biāo)志位輔助進(jìn)位標(biāo)志位 當(dāng)執(zhí)行加當(dāng)執(zhí)行加/減法指令時(shí),如果低四位數(shù)向高減法指令時(shí),如果低四位數(shù)向高四位數(shù)產(chǎn)生進(jìn)四位數(shù)產(chǎn)生進(jìn)/借位,則借位,則AC置置“1”,否則清,否則清零。零。位號(hào)位號(hào)D7D6D5D4D3D2D1D0符號(hào)符號(hào) CYACF0RS1 RS0OVF1P12/109F0(PSW.5):):用戶標(biāo)志用戶標(biāo)志0。 該位是由用戶定義的一個(gè)狀態(tài)標(biāo)志??梢杂密浖?/p>
11、該位是由用戶定義的一個(gè)狀態(tài)標(biāo)志。可以用軟件來使它置來使它置“1”或清或清“0”,也可以由軟件測(cè)試,也可以由軟件測(cè)試F0控控制程序的流向。制程序的流向。F1(PSW.1):):用戶標(biāo)志用戶標(biāo)志1。 該位是由用戶定義的一個(gè)狀態(tài)標(biāo)志。與該位是由用戶定義的一個(gè)狀態(tài)標(biāo)志。與F0類似,類似,可以用軟件來使它置可以用軟件來使它置“1”或清或清“0”,也可以由軟,也可以由軟件測(cè)試件測(cè)試F1控制程序的流向。控制程序的流向。位號(hào)位號(hào)D7D6D5D4D3D2D1D0符號(hào)符號(hào) CYACF0RS1 RS0OVF1P13/109RS1,RS0(PSW.4PSW.3):):工作寄存工作寄存器組選擇控制位器組選擇控制位,其詳
12、細(xì)介紹見后續(xù)內(nèi)容。,其詳細(xì)介紹見后續(xù)內(nèi)容。OV(PSW.2):):溢出標(biāo)志位溢出標(biāo)志位。指示運(yùn)算過。指示運(yùn)算過程中是否發(fā)生了溢出,在執(zhí)行指令過程中程中是否發(fā)生了溢出,在執(zhí)行指令過程中自動(dòng)形成。自動(dòng)形成。位號(hào)位號(hào)D7D6D5D4D3D2D1D0符號(hào)符號(hào) CYACF0RS1 RS0OVF1P14/109P(PSW.0):):奇偶標(biāo)志位奇偶標(biāo)志位 累加器累加器ACC中中1的個(gè)數(shù)為偶數(shù),的個(gè)數(shù)為偶數(shù),P=0;否;否則則P=1。每個(gè)指令周期都由硬件來置。每個(gè)指令周期都由硬件來置“1”或或清清“0”。在具有奇偶校驗(yàn)的串行數(shù)據(jù)通信。在具有奇偶校驗(yàn)的串行數(shù)據(jù)通信中,可以根據(jù)中,可以根據(jù)P設(shè)置奇偶校驗(yàn)位。設(shè)置奇
13、偶校驗(yàn)位。位號(hào)位號(hào)D7D6D5D4D3D2D1D0符號(hào)符號(hào) CYACF0RS1 RS0OVF1P15/109布爾處理機(jī)布爾處理機(jī)是單片機(jī)是單片機(jī)CPU中運(yùn)算器的中運(yùn)算器的一個(gè)重要組成部分。一個(gè)重要組成部分。功能功能:為用戶提供豐富的位操作功能,有相應(yīng)的指令系統(tǒng),:為用戶提供豐富的位操作功能,有相應(yīng)的指令系統(tǒng),硬件有自己的硬件有自己的“累加器累加器”(進(jìn)位位(進(jìn)位位C,即,即CY),和自己的),和自己的位尋址位尋址RAM和和I/O空間,是一個(gè)獨(dú)立的位處理機(jī)??臻g,是一個(gè)獨(dú)立的位處理機(jī)。 大部分位操作均圍繞著其累加器大部分位操作均圍繞著其累加器進(jìn)位位進(jìn)位位C完成。對(duì)完成。對(duì) 任何可直接尋址的位,布
14、爾處理機(jī)可執(zhí)行置位、取反、轉(zhuǎn)任何可直接尋址的位,布爾處理機(jī)可執(zhí)行置位、取反、轉(zhuǎn)移、位的讀寫等操作。在任何可尋址的位(或該位內(nèi)容取移、位的讀寫等操作。在任何可尋址的位(或該位內(nèi)容取反)和進(jìn)位標(biāo)志反)和進(jìn)位標(biāo)志C之間,可執(zhí)行邏輯與、或操作,其結(jié)果之間,可執(zhí)行邏輯與、或操作,其結(jié)果送回到進(jìn)位標(biāo)志送回到進(jìn)位標(biāo)志C。16/109(2)控制器)控制器 控制器是控制器是CPU的大腦中樞,包括定時(shí)控的大腦中樞,包括定時(shí)控制邏輯、指令寄存器、譯碼器、地址指針制邏輯、指令寄存器、譯碼器、地址指針DPTR及程序計(jì)數(shù)器及程序計(jì)數(shù)器PC、堆棧指針、堆棧指針SP、RAM地址寄存器、地址寄存器、16位地址緩沖器等。位地址緩
15、沖器等。17/109程序計(jì)數(shù)器程序計(jì)數(shù)器PC是一個(gè)是一個(gè)16位的程序地址寄存器,專門用來存放下位的程序地址寄存器,專門用來存放下一條需要執(zhí)行的指令的內(nèi)存地址,能自動(dòng)加一條需要執(zhí)行的指令的內(nèi)存地址,能自動(dòng)加1。當(dāng)當(dāng)CPU執(zhí)行指令時(shí),根據(jù)程序計(jì)數(shù)器執(zhí)行指令時(shí),根據(jù)程序計(jì)數(shù)器PC中的地中的地址從存儲(chǔ)器中取出當(dāng)前需要執(zhí)行的指令碼,并把址從存儲(chǔ)器中取出當(dāng)前需要執(zhí)行的指令碼,并把它送給控制器分析執(zhí)行,隨后程序計(jì)數(shù)器中的地它送給控制器分析執(zhí)行,隨后程序計(jì)數(shù)器中的地址自動(dòng)加址自動(dòng)加1,以便為,以便為CPU取下一個(gè)需要執(zhí)行的指取下一個(gè)需要執(zhí)行的指令碼做準(zhǔn)備。令碼做準(zhǔn)備。當(dāng)下一個(gè)指令碼取出執(zhí)行后,當(dāng)下一個(gè)指令碼取
16、出執(zhí)行后,PC又自動(dòng)加又自動(dòng)加1。這。這樣,程序計(jì)數(shù)器樣,程序計(jì)數(shù)器PC一次次加一次次加1,指令就被一條條,指令就被一條條執(zhí)行。執(zhí)行。18/109堆棧堆棧主要用于保存臨時(shí)數(shù)據(jù)、局部變量、中斷或子主要用于保存臨時(shí)數(shù)據(jù)、局部變量、中斷或子程序的返回地址。程序的返回地址。STC15F2K60S2單片機(jī)的堆棧設(shè)在內(nèi)部單片機(jī)的堆棧設(shè)在內(nèi)部RAM中,中,是一個(gè)按照是一個(gè)按照“先進(jìn)后出先進(jìn)后出”規(guī)律存放數(shù)據(jù)的區(qū)域。規(guī)律存放數(shù)據(jù)的區(qū)域。堆棧指針堆棧指針SP是一個(gè)是一個(gè)8位寄存器,能自動(dòng)加位寄存器,能自動(dòng)加1或減或減1。當(dāng)數(shù)據(jù)壓入堆棧時(shí),。當(dāng)數(shù)據(jù)壓入堆棧時(shí),SP自動(dòng)加自動(dòng)加1;數(shù)據(jù)從堆;數(shù)據(jù)從堆棧中彈出后,棧中
17、彈出后,SP自動(dòng)減自動(dòng)減1。 復(fù)位后,寄存器默認(rèn)值為復(fù)位后,寄存器默認(rèn)值為07H,堆棧區(qū)在,堆棧區(qū)在08H開始的區(qū)域。用戶通常將堆棧區(qū)域用指令設(shè)置開始的區(qū)域。用戶通常將堆棧區(qū)域用指令設(shè)置在內(nèi)部在內(nèi)部RAM的的80HFFH之間。之間。19/109數(shù)據(jù)指針數(shù)據(jù)指針DPTR一個(gè)一個(gè)16位專用寄存器,由位專用寄存器,由DPL(低(低8位)和位)和DPH(高(高8位)組成。位)組成。DPTR可以直接進(jìn)行可以直接進(jìn)行16位操作,也可分別對(duì)位操作,也可分別對(duì)DPL和和DPH按字節(jié)進(jìn)行操作。按字節(jié)進(jìn)行操作。STC15F2K60S2單片機(jī)有兩個(gè)單片機(jī)有兩個(gè)16位的數(shù)據(jù)指針位的數(shù)據(jù)指針DPRT0和和DPTR1,這
18、兩個(gè)數(shù)據(jù)指針共用同一個(gè),這兩個(gè)數(shù)據(jù)指針共用同一個(gè)地址,可通過設(shè)置輔助寄存器地址,可通過設(shè)置輔助寄存器AUXR1中的中的DPS(AUXR1.0)位來選擇具體使用哪一個(gè)數(shù)據(jù)指)位來選擇具體使用哪一個(gè)數(shù)據(jù)指針。針。 20/1092 2、存儲(chǔ)器的結(jié)構(gòu)、存儲(chǔ)器的結(jié)構(gòu)STC15F2K60S2 結(jié)構(gòu)特點(diǎn)結(jié)構(gòu)特點(diǎn):程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器的尋:程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器的尋址空間是分開的。址空間是分開的。結(jié)構(gòu)劃分:結(jié)構(gòu)劃分:片內(nèi)集成有片內(nèi)集成有4個(gè)物理上相互獨(dú)立個(gè)物理上相互獨(dú)立的存儲(chǔ)器空間:程序的存儲(chǔ)器空間:程序Flash存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、數(shù)據(jù)Flash存儲(chǔ)器(存儲(chǔ)器(EEPROM)、內(nèi)部數(shù)據(jù)存儲(chǔ))、內(nèi)部數(shù)據(jù)存儲(chǔ)
19、器和外部數(shù)據(jù)存儲(chǔ)器。器和外部數(shù)據(jù)存儲(chǔ)器。21/109圖3-8 STC15F2K60S2單片機(jī)存儲(chǔ)器配置示意圖擴(kuò)展數(shù)據(jù)存儲(chǔ)器 內(nèi)部數(shù)據(jù)存儲(chǔ)器 程序Flash存儲(chǔ)器特殊功能寄存器低128字節(jié)內(nèi)部RAMFFH80H7FH00H0000H03FFH06FFH0000H60KBF000H0000H1KB程序Flash存儲(chǔ)器數(shù)據(jù)Flash存儲(chǔ)器1792字節(jié)擴(kuò)展RAM高128字節(jié)內(nèi)部RAM數(shù)據(jù)Flash存儲(chǔ)器22/109(1)程序)程序Flash存儲(chǔ)器存儲(chǔ)器功能:功能:存放用戶程序、數(shù)據(jù)和表格等信息。存放用戶程序、數(shù)據(jù)和表格等信息??臻g大小:空間大小:STC15F2K60S2片內(nèi)集成了片內(nèi)集成了60KB的程
20、序的程序Flash存儲(chǔ)器,地址為存儲(chǔ)器,地址為0000HF000H。單片機(jī)復(fù)位后,程序計(jì)數(shù)器。單片機(jī)復(fù)位后,程序計(jì)數(shù)器PC的的內(nèi)容為內(nèi)容為0000H,從,從0000H單元開始執(zhí)行程序。單元開始執(zhí)行程序。 23/109特殊單元特殊單元在程序在程序Flash存儲(chǔ)器中有些特殊的單元,這些單元是存儲(chǔ)器中有些特殊的單元,這些單元是中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址:0003H 外部中斷外部中斷0中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址000BH 定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器0中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址0013H 外部中斷外部中斷1中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址00
21、1BH 定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器1中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址0023H 串行通信口串行通信口1中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址002BH ADC中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址0033H 低電壓檢測(cè)中斷服務(wù)程序的入口地址低電壓檢測(cè)中斷服務(wù)程序的入口地址003BH PCA中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址0043H 串行通信口串行通信口2中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址004BH SPI中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址24/109中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址0053H 外部中斷外部中斷2中斷服務(wù)程序的入口地
22、址中斷服務(wù)程序的入口地址005BH 外部中斷外部中斷3中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址0063H 定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器2中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址0083H 外部中斷外部中斷4中斷服務(wù)程序的入口地址中斷服務(wù)程序的入口地址響應(yīng)中斷時(shí),單片機(jī)自動(dòng)轉(zhuǎn)到相應(yīng)的中斷入口地址去響應(yīng)中斷時(shí),單片機(jī)自動(dòng)轉(zhuǎn)到相應(yīng)的中斷入口地址去執(zhí)行程序。由于大部分相鄰中斷入口地址之間只有執(zhí)行程序。由于大部分相鄰中斷入口地址之間只有8個(gè)個(gè)地址單元,無(wú)法保存完整的中斷服務(wù)程序,一般在中地址單元,無(wú)法保存完整的中斷服務(wù)程序,一般在中斷入口的地址區(qū)存放一條斷入口的地址區(qū)存放一條無(wú)條件轉(zhuǎn)移指令無(wú)條件轉(zhuǎn)移指
23、令,指向真正,指向真正存放中斷服務(wù)程序的空間。中斷響應(yīng)后,存放中斷服務(wù)程序的空間。中斷響應(yīng)后,CPU執(zhí)行這執(zhí)行這條轉(zhuǎn)移指令,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序。條轉(zhuǎn)移指令,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序。25/109使用指令使用指令 讀取程序存儲(chǔ)器中保存的表格常數(shù)等內(nèi)讀取程序存儲(chǔ)器中保存的表格常數(shù)等內(nèi)容時(shí),使用容時(shí),使用MOVC指令。指令。 程序程序Flash存儲(chǔ)器的擦寫次數(shù)為存儲(chǔ)器的擦寫次數(shù)為10萬(wàn)次萬(wàn)次以上,大大提高了芯片利用率,降低了開以上,大大提高了芯片利用率,降低了開發(fā)成本。發(fā)成本。26/109(2)數(shù)據(jù)存儲(chǔ)器)數(shù)據(jù)存儲(chǔ)器STC15F2K60S2 數(shù)據(jù)存儲(chǔ)器也稱為隨機(jī)存取數(shù)據(jù)存儲(chǔ)器。數(shù)據(jù)存儲(chǔ)器也稱為隨機(jī)存取
24、數(shù)據(jù)存儲(chǔ)器。空間劃分空間劃分 在物理上和邏輯上都分為兩個(gè)地址空間:在物理上和邏輯上都分為兩個(gè)地址空間:內(nèi)部?jī)?nèi)部數(shù)據(jù)存儲(chǔ)區(qū)和數(shù)據(jù)存儲(chǔ)區(qū)和擴(kuò)展擴(kuò)展數(shù)據(jù)存儲(chǔ)區(qū)數(shù)據(jù)存儲(chǔ)區(qū) 。27/1091 1)內(nèi)部數(shù)據(jù)存儲(chǔ)區(qū)(又稱為內(nèi)部)內(nèi)部數(shù)據(jù)存儲(chǔ)區(qū)(又稱為內(nèi)部RAMRAM) 256字節(jié)內(nèi)部字節(jié)內(nèi)部RAM,存放中間結(jié)果和過程數(shù)據(jù)。內(nèi)部,存放中間結(jié)果和過程數(shù)據(jù)。內(nèi)部RAM的地址范圍是的地址范圍是00HFFH,共,共256個(gè)單元,分三部分:個(gè)單元,分三部分: 低低128字節(jié)字節(jié)RAM(00H7FH):也稱為基本):也稱為基本RAM區(qū)。區(qū)?;净綬AM區(qū)又分為工作寄存器區(qū)、位尋址區(qū)、用戶區(qū)又分為工作寄存器區(qū)、位尋址區(qū)、
25、用戶RAM和堆棧區(qū)??梢灾苯訉ぶ泛烷g接尋址。用和堆棧區(qū)??梢灾苯訉ぶ泛烷g接尋址。用“MOV”和和“MOV Ri”形式的指令訪問。形式的指令訪問。 高高128字節(jié)字節(jié)RAM(80HFFH):只能間接尋址。用):只能間接尋址。用“MOV Ri”形式的指令訪問。形式的指令訪問。特殊功能寄存器特殊功能寄存器(SFR)區(qū):地址范圍為)區(qū):地址范圍為80HFFH,只可直接尋址,用只可直接尋址,用“MOV”形式的指令訪問。形式的指令訪問。28/1090區(qū)(R7R0)1區(qū)(R7R0)2區(qū)(R7R0)3區(qū)(R7R0)0FH08H17H10H20H2FH30H通用用戶RAM和堆棧區(qū)(30H7FH)可直接或間接字節(jié)
26、尋址 80HFFH只能間接尋址訪問特殊功能寄存器區(qū)(80HFFH)只能直接尋址訪問7FH80HFFH1FH18H位尋址區(qū)(16字節(jié),共128位)也可以字節(jié)尋址07H00H4個(gè)工作寄存器區(qū)也可做RAM單元使用圖3-9 內(nèi)部數(shù)據(jù)存儲(chǔ)器地址空間 工作寄存器區(qū)工作寄存器區(qū) 位尋址區(qū)位尋址區(qū) 通用用戶通用用戶RAM和堆棧區(qū)和堆棧區(qū) 特殊功能寄存器區(qū)特殊功能寄存器區(qū)內(nèi)部數(shù)據(jù)存儲(chǔ)器地址空間分配內(nèi)部數(shù)據(jù)存儲(chǔ)器地址空間分配29/109工作寄存器區(qū)工作寄存器區(qū)地址分配地址分配:00H1FH共共32個(gè)單元。分為四組個(gè)單元。分為四組(每一組稱為一個(gè)寄存器組),每一組包括(每一組稱為一個(gè)寄存器組),每一組包括8個(gè)個(gè)8位
27、的工作寄存器,分別是位的工作寄存器,分別是R0R7。功能功能:通過使用工作寄存器,可以提高運(yùn)算速:通過使用工作寄存器,可以提高運(yùn)算速度,也可以使用其中的度,也可以使用其中的R0或或R1存放八位地址值,存放八位地址值,訪問一個(gè)訪問一個(gè)256字節(jié)外部字節(jié)外部RAM塊中的單元。另外,塊中的單元。另外,R0R7也可以用作計(jì)數(shù)器,在指令作用下加也可以用作計(jì)數(shù)器,在指令作用下加1或減或減1。30/109工作寄存器組的選擇:工作寄存器組的選擇:PSWPSW寄存器中的寄存器中的RS1RS1和和RS0RS0兩位組合決定當(dāng)前使用的工作寄存器組??梢酝▋晌唤M合決定當(dāng)前使用的工作寄存器組??梢酝ㄟ^位操作指令直接修改過
28、位操作指令直接修改 RS1RS1和和RS0RS0的內(nèi)容,選擇的內(nèi)容,選擇不同的工作寄存器組。不同的工作寄存器組。RS1(PSW.4)RS0(PSW.3)工作寄存器組工作寄存器組工作寄存器地址工作寄存器地址000R7R0對(duì)應(yīng)的地址為對(duì)應(yīng)的地址為07H00H011R7R0對(duì)應(yīng)的地址為對(duì)應(yīng)的地址為0FH08H102R7R0對(duì)應(yīng)的地址為對(duì)應(yīng)的地址為17H10H113R7R0對(duì)應(yīng)的地址為對(duì)應(yīng)的地址為1FH18H表3-1 工作寄存器組選擇31/109位尋址區(qū)位尋址區(qū)20H2FH之之間 的 單 元 既間 的 單 元 既可 以 按 字 節(jié)可 以 按 字 節(jié)存 取 , 也 可存 取 , 也 可以按位存取以按位存
29、取共共128位,地位,地址 范 圍 是址 范 圍 是00H7FH。圖3-10 內(nèi)部RAM中的位地址32/109除 了除 了 2 0 H 2FH之間的單之間的單元可以位尋址元可以位尋址外,特殊功能外,特殊功能寄存器中,直寄存器中,直接地址可被接地址可被8整整除 的 寄 存 器除 的 寄 存 器(除了(除了IP.7、IP.6和和IE.6以外)以外)也可以進(jìn)行位也可以進(jìn)行位尋址。尋址。圖3-11 特殊功能寄存器中的位地址33/109用戶用戶RAM和堆棧區(qū)和堆棧區(qū)內(nèi)部?jī)?nèi)部RAM中的中的30H7FH單元是用戶單元是用戶RAM和堆棧區(qū)。和堆棧區(qū)。一個(gè)一個(gè)8位的堆棧指針位的堆棧指針SP,并且堆棧區(qū)只能設(shè)置在
30、內(nèi)部數(shù),并且堆棧區(qū)只能設(shè)置在內(nèi)部數(shù)據(jù)存儲(chǔ)區(qū)。當(dāng)有子程序調(diào)用和中斷請(qǐng)求時(shí),返回地址據(jù)存儲(chǔ)區(qū)。當(dāng)有子程序調(diào)用和中斷請(qǐng)求時(shí),返回地址等信息被自動(dòng)保存在堆棧內(nèi)。等信息被自動(dòng)保存在堆棧內(nèi)。STC15F2K60S2單片機(jī)復(fù)位后,單片機(jī)復(fù)位后,SP為為07H,使堆棧事實(shí),使堆棧事實(shí)上由上由08H單元開始,考慮單元開始,考慮08H1FH單元分別屬于工作單元分別屬于工作寄存器組寄存器組13,若在程序設(shè)計(jì)中用到這些工作寄存器,若在程序設(shè)計(jì)中用到這些工作寄存器,則在用戶初始化程序中,最好把則在用戶初始化程序中,最好把SP的值改變?yōu)榈闹蹈淖優(yōu)?0H或或更大的值。更大的值。STC15F2K60S2單片機(jī)的堆棧是朝著地址
31、增大的方向生單片機(jī)的堆棧是朝著地址增大的方向生成的,即將數(shù)據(jù)壓入堆棧后,成的,即將數(shù)據(jù)壓入堆棧后,SP的值增大。的值增大。 34/109高高128字節(jié)字節(jié)RAM和特殊功能寄存器和特殊功能寄存器對(duì)于對(duì)于STC15F2K60S2單片機(jī),單片機(jī),80HFFH既為既為高高128字節(jié)字節(jié)RAM區(qū)的地址范圍,又為特殊功能區(qū)的地址范圍,又為特殊功能寄存器區(qū)寄存器區(qū)(SFR)的地址范圍,地址空間重疊,的地址范圍,地址空間重疊,但物理上是獨(dú)立的。但物理上是獨(dú)立的。使用時(shí),通過不同的尋址方式加以區(qū)分:高使用時(shí),通過不同的尋址方式加以區(qū)分:高128字節(jié)的字節(jié)的RAM區(qū)使用間接尋址訪問,特殊功區(qū)使用間接尋址訪問,特殊
32、功能寄存器使用直接尋址訪問。由于堆棧操作也能寄存器使用直接尋址訪問。由于堆棧操作也是間接尋址方式,所以,高是間接尋址方式,所以,高 128 位數(shù)據(jù)位數(shù)據(jù) RAM 亦可作為堆棧區(qū)使用。亦可作為堆棧區(qū)使用。35/109除了程序計(jì)數(shù)器除了程序計(jì)數(shù)器PC和和4個(gè)工作寄存器組外,其個(gè)工作寄存器組外,其余的寄存器都在余的寄存器都在SFR區(qū)中。區(qū)中。特殊功能寄存器大體分為兩類特殊功能寄存器大體分為兩類 一類與芯片的引腳有關(guān)。如一類與芯片的引腳有關(guān)。如P0P5,它們實(shí),它們實(shí)際上是際上是6個(gè)鎖存器,每個(gè)鎖存器附加上相應(yīng)的輸個(gè)鎖存器,每個(gè)鎖存器附加上相應(yīng)的輸出驅(qū)動(dòng)器和輸入緩沖器就構(gòu)成了一個(gè)并行口。出驅(qū)動(dòng)器和輸入
33、緩沖器就構(gòu)成了一個(gè)并行口。 另一類為芯片內(nèi)部功能的控制或者內(nèi)部寄另一類為芯片內(nèi)部功能的控制或者內(nèi)部寄存器。如中斷屏蔽及優(yōu)先級(jí)控制、定時(shí)器、串行存器。如中斷屏蔽及優(yōu)先級(jí)控制、定時(shí)器、串行口、口、SPI接口等。接口等。STC15F2K60S2單片機(jī)的特殊功能寄存器及其單片機(jī)的特殊功能寄存器及其復(fù)位值如表復(fù)位值如表3-2所列。所列。36/1092)擴(kuò)展數(shù)據(jù)存儲(chǔ)區(qū))擴(kuò)展數(shù)據(jù)存儲(chǔ)區(qū) 外部數(shù)據(jù)存儲(chǔ)區(qū)也稱為擴(kuò)展外部數(shù)據(jù)存儲(chǔ)區(qū)也稱為擴(kuò)展RAM區(qū)(簡(jiǎn)稱,區(qū)(簡(jiǎn)稱,XRAM)。片內(nèi)集成了)。片內(nèi)集成了1792字節(jié)的外部字節(jié)的外部RAM,地址范圍為地址范圍為0000H06FFH,可用于存放數(shù)據(jù)。,可用于存放數(shù)據(jù)。注
34、意注意,這里的,這里的“內(nèi)部?jī)?nèi)部”和和“外部外部”是邏輯上的概念,是邏輯上的概念,不不是指芯片內(nèi)部和外部。是指芯片內(nèi)部和外部。在匯編語(yǔ)言中,在匯編語(yǔ)言中,XRAM使用使用“MOVX DPTR” 或者或者“MOVX Ri”指令訪問。指令訪問。在在C語(yǔ)言中,可使用語(yǔ)言中,可使用xdata聲明存儲(chǔ)類型即可。聲明存儲(chǔ)類型即可。 如:如:unsigned char xdata i= 0;37/109訪問片內(nèi)集成的外部訪問片內(nèi)集成的外部RAM時(shí),不影響時(shí),不影響P0口、口、P2口、口、P4.2、P4.4和和ALE。STC15F2K60S2單片機(jī)還可以訪問片外擴(kuò)展單片機(jī)還可以訪問片外擴(kuò)展的的64KB外部數(shù)據(jù)
35、存儲(chǔ)器。外部數(shù)據(jù)存儲(chǔ)器。STC15F2K60S2單片機(jī)的外部擴(kuò)展單片機(jī)的外部擴(kuò)展I/O端口端口與擴(kuò)展數(shù)據(jù)存儲(chǔ)器統(tǒng)一編址,因此外部與擴(kuò)展數(shù)據(jù)存儲(chǔ)器統(tǒng)一編址,因此外部I/O端口的地址占用擴(kuò)展數(shù)據(jù)存儲(chǔ)器的地址單端口的地址占用擴(kuò)展數(shù)據(jù)存儲(chǔ)器的地址單元,用元,用MOVX指令訪問。指令訪問。38/109單片機(jī)內(nèi)部擴(kuò)展單片機(jī)內(nèi)部擴(kuò)展RAM是否可以訪問受輔助寄存器是否可以訪問受輔助寄存器AUXR(地址為(地址為8EH,復(fù)位值為,復(fù)位值為01H)中的)中的EXTRAM位控制。位控制。EXTRAM:0:內(nèi)部擴(kuò)展:內(nèi)部擴(kuò)展RAM可以存取;地址小于可以存取;地址小于700H時(shí),時(shí),訪問內(nèi)部擴(kuò)展訪問內(nèi)部擴(kuò)展RAM;地址
36、大于或等于;地址大于或等于700H時(shí),時(shí),則訪問單片機(jī)外部擴(kuò)展的則訪問單片機(jī)外部擴(kuò)展的RAM或或I/O空間??臻g。1:禁止訪問內(nèi)部擴(kuò)展:禁止訪問內(nèi)部擴(kuò)展RAM。位號(hào)D7D6D5D4D3D2D1D0位名稱T0 x12T1x12UART_M0 x6T2RT2_C/ T2x12EXTRAMS1ST2T39/109(3)數(shù)據(jù))數(shù)據(jù)Flash存儲(chǔ)器存儲(chǔ)器空間大?。嚎臻g大小:集成了集成了1K字節(jié)的數(shù)據(jù)字節(jié)的數(shù)據(jù)Flash存儲(chǔ)存儲(chǔ)器,與程序空間是分開的器,與程序空間是分開的地址范圍地址范圍:0000H03FFH。這。這1K字節(jié)的數(shù)字節(jié)的數(shù)據(jù)據(jù)Flash存儲(chǔ)器分為存儲(chǔ)器分為2個(gè)扇區(qū),每個(gè)扇區(qū)包含個(gè)扇區(qū),每個(gè)扇
37、區(qū)包含512字節(jié),對(duì)應(yīng)的地址范圍分別為:字節(jié),對(duì)應(yīng)的地址范圍分別為:第一扇區(qū):第一扇區(qū):0000H01FFH 第二扇區(qū):第二扇區(qū):0200H03FFH40/109使用方法使用方法:建議同一次修改的數(shù)據(jù)放在同一個(gè)扇:建議同一次修改的數(shù)據(jù)放在同一個(gè)扇區(qū),不是同一次修改的數(shù)據(jù)放在不同的扇區(qū),不區(qū),不是同一次修改的數(shù)據(jù)放在不同的扇區(qū),不一定用滿。數(shù)據(jù)一定用滿。數(shù)據(jù)Flash存儲(chǔ)器的擦除操作是按存儲(chǔ)器的擦除操作是按扇區(qū)扇區(qū)進(jìn)行的。進(jìn)行的。 數(shù)據(jù)數(shù)據(jù)Flash存儲(chǔ)器可以作為存儲(chǔ)器可以作為EEPROM使用,擦寫使用,擦寫次數(shù)在次數(shù)在10萬(wàn)次以上,用于保存一些需要在應(yīng)用過程萬(wàn)次以上,用于保存一些需要在應(yīng)用過程
38、中修改并且掉電不丟失的參數(shù)數(shù)據(jù)。在用戶程中,中修改并且掉電不丟失的參數(shù)數(shù)據(jù)。在用戶程中,可以對(duì)數(shù)據(jù)可以對(duì)數(shù)據(jù)Flash區(qū)進(jìn)行字節(jié)讀區(qū)進(jìn)行字節(jié)讀/字節(jié)編程字節(jié)編程/扇區(qū)擦除扇區(qū)擦除操作。操作。41/109二、單片機(jī)的引腳及功能二、單片機(jī)的引腳及功能1、STC15F2K60S2單片機(jī)的引腳單片機(jī)的引腳封裝封裝LQFP-44封裝封裝圖3-12 STC15F2K60S2單片機(jī)的引腳圖42/109 DIP-40封裝封裝 圖3-12 STC15F2K60S2單片機(jī)的引腳圖43/109STC15F2K60S2單片機(jī)單片機(jī)的邏輯符號(hào)的邏輯符號(hào)圖圖 圖3-13 STC15F2K60S2單片機(jī)的邏輯符號(hào)圖44/1
39、09DIP-40封裝的封裝的STC15F2K60S2單片機(jī)和單片機(jī)和LQFP-44封裝相比,除了沒有封裝相比,除了沒有P4.0、P4.3、P4.6、P4.7引腳外,其他資源和的單片機(jī)完全相同。引腳外,其他資源和的單片機(jī)完全相同。 由于由于DIP封裝的單片機(jī)焊接比較容易,因此,封裝的單片機(jī)焊接比較容易,因此,對(duì)于初學(xué)者,最好選用對(duì)于初學(xué)者,最好選用DIP封裝的單片機(jī)進(jìn)行封裝的單片機(jī)進(jìn)行學(xué)習(xí)。學(xué)習(xí)。注意:在實(shí)際應(yīng)用中,設(shè)計(jì)單片機(jī)應(yīng)用系統(tǒng)的注意:在實(shí)際應(yīng)用中,設(shè)計(jì)單片機(jī)應(yīng)用系統(tǒng)的原理圖時(shí),一般應(yīng)使用邏輯符號(hào)圖,以便進(jìn)行原理圖時(shí),一般應(yīng)使用邏輯符號(hào)圖,以便進(jìn)行電路分析,而設(shè)計(jì)應(yīng)用系統(tǒng)的印刷電路板圖時(shí),
40、電路分析,而設(shè)計(jì)應(yīng)用系統(tǒng)的印刷電路板圖時(shí),必須使用單片機(jī)的引腳圖。必須使用單片機(jī)的引腳圖。45/109引腳引腳電源引腳電源引腳外接晶體引腳外接晶體引腳控制和復(fù)位引腳控制和復(fù)位引腳輸入輸入/輸出(輸出(I/O)引腳)引腳46/109(1)電源引腳)電源引腳Vcc:一般接電源的:一般接電源的5V。具體的電壓幅度。具體的電壓幅度應(yīng)參考單片機(jī)的手冊(cè)。應(yīng)參考單片機(jī)的手冊(cè)。GND:接電源地。:接電源地。47/109(2)外接晶體引腳)外接晶體引腳XTAL1和和XATL2芯片內(nèi)部一個(gè)反相放大器的輸入端和輸出芯片內(nèi)部一個(gè)反相放大器的輸入端和輸出端。通常用于連接晶體振蕩器。端。通常用于連接晶體振蕩器。常見的連接
41、方法如圖所示。常見的連接方法如圖所示。XTAL2XTAL1C2C1GNDM單片機(jī)圖3-14 常見的晶振連接方法48/109晶體振蕩器晶體振蕩器M的頻率可以在的頻率可以在4MHz48MHz之之間選擇,典型值是間選擇,典型值是11.0592MHz(因?yàn)樵O(shè)計(jì)單片(因?yàn)樵O(shè)計(jì)單片機(jī)通信應(yīng)用系統(tǒng)時(shí),使用這個(gè)頻率的晶振可以機(jī)通信應(yīng)用系統(tǒng)時(shí),使用這個(gè)頻率的晶振可以準(zhǔn)確地得到準(zhǔn)確地得到9600bits/s和和19200bits/s的波特率)。的波特率)。電容電容C1、C2對(duì)時(shí)鐘頻率有微調(diào)作用,可在對(duì)時(shí)鐘頻率有微調(diào)作用,可在5100pF之間選擇,典型值是之間選擇,典型值是47pF。49/109STC15F2K60
42、S2單片機(jī)內(nèi)部集成高精度單片機(jī)內(nèi)部集成高精度R/C時(shí)時(shí)鐘,工作時(shí)鐘可以使用內(nèi)部振蕩器或者外部晶鐘,工作時(shí)鐘可以使用內(nèi)部振蕩器或者外部晶體振蕩器(簡(jiǎn)稱晶振)產(chǎn)生的時(shí)鐘。體振蕩器(簡(jiǎn)稱晶振)產(chǎn)生的時(shí)鐘。 40引腳和引腳和44引腳封裝的引腳封裝的STC15F2K60S2單片機(jī)單片機(jī)出廠標(biāo)準(zhǔn)配置是使用外部時(shí)鐘。內(nèi)部集成的高出廠標(biāo)準(zhǔn)配置是使用外部時(shí)鐘。內(nèi)部集成的高精度精度R/C時(shí)鐘工業(yè)環(huán)境下的溫漂為時(shí)鐘工業(yè)環(huán)境下的溫漂為1%,常溫,常溫下溫飄下溫飄5,頻率范圍為,頻率范圍為5MHz35MHz,可以,可以在編程時(shí)設(shè)置。對(duì)于時(shí)鐘頻率要求不太敏感的在編程時(shí)設(shè)置。對(duì)于時(shí)鐘頻率要求不太敏感的場(chǎng)合,內(nèi)部場(chǎng)合,內(nèi)部R
43、/C振蕩器完全能夠滿足要求。振蕩器完全能夠滿足要求。 使用內(nèi)部使用內(nèi)部R/C振蕩器時(shí)鐘時(shí),振蕩器時(shí)鐘時(shí),XTAL1和和XTAL2引腳懸空。引腳懸空。 50/109使用外部晶振時(shí),常見的連接方法與圖使用外部晶振時(shí),常見的連接方法與圖3-14所所示的連接方法相同。示的連接方法相同。利用在系統(tǒng)編程(利用在系統(tǒng)編程(In-System Programming,ISP)工具對(duì))工具對(duì)STC12C5A60S2單片機(jī)下載用戶單片機(jī)下載用戶程序時(shí),可以在選項(xiàng)中設(shè)置選擇使用外部晶體程序時(shí),可以在選項(xiàng)中設(shè)置選擇使用外部晶體振蕩器時(shí)鐘或者使用內(nèi)部振蕩器時(shí)鐘或者使用內(nèi)部R/C振蕩器時(shí)鐘。振蕩器時(shí)鐘。51/109(3)
44、控制和復(fù)位引腳)控制和復(fù)位引腳ALE(與(與P4.5復(fù)用)復(fù)用) 功能:當(dāng)訪問外部存儲(chǔ)器或者外部擴(kuò)展的并行功能:當(dāng)訪問外部存儲(chǔ)器或者外部擴(kuò)展的并行I/O口時(shí),口時(shí),ALE(允許地址鎖存)的輸出用于(允許地址鎖存)的輸出用于鎖存地址的低位字節(jié)。鎖存地址的低位字節(jié)。標(biāo)準(zhǔn)標(biāo)準(zhǔn)8051單片機(jī)的單片機(jī)的ALE 腳對(duì)系統(tǒng)時(shí)鐘進(jìn)行腳對(duì)系統(tǒng)時(shí)鐘進(jìn)行6分分頻輸出,可對(duì)外提供時(shí)鐘。頻輸出,可對(duì)外提供時(shí)鐘。52/109當(dāng)當(dāng)8051單片機(jī)時(shí)鐘頻率較高時(shí),單片機(jī)時(shí)鐘頻率較高時(shí),ALE腳是一個(gè)腳是一個(gè)干擾源。干擾源。STC15F2K60S2單片機(jī)直接禁止單片機(jī)直接禁止ALE腳對(duì)系統(tǒng)腳對(duì)系統(tǒng)時(shí)鐘進(jìn)行時(shí)鐘進(jìn)行6分頻輸出,徹底
45、清除此干擾源,有分頻輸出,徹底清除此干擾源,有利于系統(tǒng)的抗干擾設(shè)計(jì)。如果設(shè)計(jì)中需要單片利于系統(tǒng)的抗干擾設(shè)計(jì)。如果設(shè)計(jì)中需要單片機(jī)輸出時(shí)鐘,可以利用機(jī)輸出時(shí)鐘,可以利用STC15F2K60S2單片機(jī)單片機(jī)的可編程時(shí)鐘輸出腳對(duì)外輸出時(shí)鐘。的可編程時(shí)鐘輸出腳對(duì)外輸出時(shí)鐘。STC15F2K60S2單片機(jī)的單片機(jī)的ALE引腳在用引腳在用MOVX指令訪問片外擴(kuò)展器件時(shí)輸出地址鎖存信號(hào)。指令訪問片外擴(kuò)展器件時(shí)輸出地址鎖存信號(hào)。53/109RST(與(與P5.4復(fù)用)復(fù)用) 當(dāng)振蕩器運(yùn)行時(shí),在此引腳上出現(xiàn)兩個(gè)機(jī)器周當(dāng)振蕩器運(yùn)行時(shí),在此引腳上出現(xiàn)兩個(gè)機(jī)器周期的高電平將使單片機(jī)復(fù)位。期的高電平將使單片機(jī)復(fù)位。如果
46、需要單片機(jī)接上電源就可以復(fù)位,則需要如果需要單片機(jī)接上電源就可以復(fù)位,則需要使用使用上電復(fù)位上電復(fù)位電路。電路。單片機(jī)RST/VPDGNDCr10uFRr10KVcc圖3-15 上電復(fù)位電路圖54/109P5.4/RST/MCLKO腳出廠時(shí)默認(rèn)為腳出廠時(shí)默認(rèn)為I/O口,可口,可以通過以通過 STC-ISP編程軟件下載程序時(shí),將其設(shè)編程軟件下載程序時(shí),將其設(shè)置為置為RST復(fù)位腳。復(fù)位腳。STC15F2K60S2單片機(jī)內(nèi)部集成了單片機(jī)內(nèi)部集成了MAX810專專用復(fù)位電路,時(shí)鐘頻率在用復(fù)位電路,時(shí)鐘頻率在12MHZ以下時(shí),復(fù)位以下時(shí),復(fù)位腳可接腳可接1K電阻再接地,也可以使用圖電阻再接地,也可以使用
47、圖3-15所示所示的傳統(tǒng)復(fù)位電路。的傳統(tǒng)復(fù)位電路。55/109(4)輸入)輸入/輸出(輸出(I/O)引腳)引腳STC12C5A60S2單片機(jī)最多可以有單片機(jī)最多可以有44根根I/O口口線,線,44根根I/O口線分別為:口線分別為:P0口口(8根):根):P0.0P0.7P1口口(8根):根):P1.0P1.7P2口口(8根):根):P2.0P2.7P3口口(8根):根):P3.0P3.7P4口口(8根):根):P4.0P4.7P5口口(2根):根):P5.4、P5.5。 56/1091)I/O口的工作模式口的工作模式4種工作模式:準(zhǔn)雙向口種工作模式:準(zhǔn)雙向口/弱上拉,推挽弱上拉,推挽/強(qiáng)上拉,
48、強(qiáng)上拉,輸入輸入/高阻和開漏模式。高阻和開漏模式。復(fù)位后為準(zhǔn)雙向口復(fù)位后為準(zhǔn)雙向口/弱上拉工作模式。弱上拉工作模式。每個(gè)口的工作模式由每個(gè)口的工作模式由2個(gè)控制寄存器中的相應(yīng)個(gè)控制寄存器中的相應(yīng)位控制(位控制(PnM0和和PnM1,n=0、1、2、3、4、5)。)。57/109例如,例如,P0M0和和P0M1用于設(shè)定用于設(shè)定P0口的工作模式,其口的工作模式,其中中P0M0.7和和P0M1.7用于設(shè)置用于設(shè)置P0.7的工作模式,的工作模式,P0M0.6和和P0M1.6用于設(shè)置用于設(shè)置P0.6的工作模式,以此類的工作模式,以此類推。推。PnM17:0PnM07:0I/O口模式00準(zhǔn)雙向口(傳統(tǒng)80
49、51單片機(jī)I/O口模式),灌電流可達(dá)20mA,拉電流為270A,由于制造誤差,實(shí)際為270uA150uA01推挽輸入輸出(強(qiáng)上拉輸出,可達(dá)20mA,要加限流電阻,盡量少用)10僅為輸入(高阻)11開漏(Open Drain),內(nèi)部上拉電阻斷開,要外加上拉電阻表3-5 I/O口工作模式設(shè)置58/109例如,若設(shè)置例如,若設(shè)置P1.7為開漏模式,為開漏模式,P1.6為強(qiáng)推挽輸入為強(qiáng)推挽輸入輸出模式,輸出模式,P1.5為高阻輸入模式,為高阻輸入模式,P1.4、P1.3、P1.2、P1.1和和P1.0為弱上拉模式,則可以使用下為弱上拉模式,則可以使用下面的代碼進(jìn)行設(shè)置:面的代碼進(jìn)行設(shè)置: MOV P1
50、M1,#10100000B MOV P1M0,#11000000B59/109STC15F2K60S2單片機(jī)的每個(gè)單片機(jī)的每個(gè)I/O口在弱上拉時(shí)口在弱上拉時(shí)都能承受都能承受20mA的灌電流(最好還是使用限流的灌電流(最好還是使用限流電阻,如電阻,如1K)在強(qiáng)推挽輸出時(shí)都能輸出在強(qiáng)推挽輸出時(shí)都能輸出20mA的拉電流(也的拉電流(也要加限流電阻)。要加限流電阻)。整個(gè)芯片的工作電流推薦不要超過整個(gè)芯片的工作電流推薦不要超過90mA。即。即從從MCU-Vcc流入的電流不超過流入的電流不超過90mA,從,從MCU-GND流出的電流不超過流出的電流不超過90mA,整體流,整體流入入/流出電流都不能超過流
51、出電流都不能超過90mA。60/1092)I/O口的復(fù)用功能口的復(fù)用功能P0口口用作數(shù)據(jù)總線(用作數(shù)據(jù)總線(D7D0)或者地址總線低)或者地址總線低8位位(A7A0)。)。用作普通用作普通I/O。P1口口用作普通用作普通I/O。復(fù)用為復(fù)用為ADC轉(zhuǎn)換輸入、捕獲轉(zhuǎn)換輸入、捕獲/比較比較/脈寬調(diào)制、脈寬調(diào)制、SPI通信線、第二串口或者第二時(shí)鐘輸出,如通信線、第二串口或者第二時(shí)鐘輸出,如表所示。表所示。61/109表表3-6 P13-6 P1口的復(fù)用功能口的復(fù)用功能引腳引腳復(fù)用功能復(fù)用功能P1.0ADC0/CCP1(捕獲(捕獲/比較比較/脈寬調(diào)制脈寬調(diào)制通道通道1)/RxD2(串口(串口2輸入)輸入
52、)P1.1ADC1/CCP0(捕獲(捕獲/比較比較/脈寬調(diào)制脈寬調(diào)制通道通道0)/TxD2(串口(串口2輸出)輸出)P1.2ADC2/ECI(可編程計(jì)數(shù)器陣列定時(shí)器的外部時(shí)鐘輸入)(可編程計(jì)數(shù)器陣列定時(shí)器的外部時(shí)鐘輸入)/SS(SPI從從器件選擇)器件選擇)P1.3ADC3/ MOSI(SPI主機(jī)輸出從機(jī)輸入)主機(jī)輸出從機(jī)輸入)P1.4ADC4/ MISO(SPI主機(jī)輸入從機(jī)輸出)主機(jī)輸入從機(jī)輸出)P1.5ADC5/ SCLK(SPI時(shí)鐘)時(shí)鐘)P1.6ADC6/ XTAL2(外接晶體引腳)(外接晶體引腳)/RxD_3(串口(串口1輸入備用切換引腳)輸入備用切換引腳)P1.7ADC7/ XTA
53、L1(外接晶體引腳)(外接晶體引腳)/TxD_3(串口(串口1輸出備用切換引腳)輸出備用切換引腳)62/109P2口口用作地址總線的高用作地址總線的高8位輸出。位輸出。用作通用用作通用I/O口使用??谑褂谩S糜谟糜赟PI和捕獲和捕獲/比較比較/脈寬調(diào)制的備用切換端口脈寬調(diào)制的備用切換端口 引腳引腳復(fù)用功能復(fù)用功能P2.0A8/RSTOUT_LOW(復(fù)位后輸出低電平引腳)(復(fù)位后輸出低電平引腳)P2.1A9/ SCLK_2(SPI時(shí)鐘備用切換引腳)時(shí)鐘備用切換引腳)P2.2A10/ MISO_2(SPI主機(jī)輸入從機(jī)輸出備用切換引腳)主機(jī)輸入從機(jī)輸出備用切換引腳)P2.3A11/ MOSI_2(S
54、PI主機(jī)輸出從機(jī)輸入備用切換引腳)主機(jī)輸出從機(jī)輸入備用切換引腳)P2.4A12/ /ECI_3(可編程計(jì)數(shù)器陣列定時(shí)器的外部時(shí)鐘輸入備用切換引(可編程計(jì)數(shù)器陣列定時(shí)器的外部時(shí)鐘輸入備用切換引腳)腳)/SS_2(SPI從器件選擇備用切換引腳)從器件選擇備用切換引腳)P2.5A13/CCP0_3(捕獲(捕獲/比較比較/脈寬調(diào)制脈寬調(diào)制通道通道0備用切換引腳)備用切換引腳)P2.6A14/ CCP1_3(捕獲(捕獲/比較比較/脈寬調(diào)制脈寬調(diào)制通道通道1備用切換引腳)備用切換引腳)P2.7A15/ CCP2_3(捕獲(捕獲/比較比較/脈寬調(diào)制脈寬調(diào)制通道通道2備用切換引腳)備用切換引腳)表3-7 P2
55、口的復(fù)用功能63/109P3口口用作通用用作通用I/O口使用??谑褂???蓮?fù)用為外部中斷輸入、計(jì)數(shù)器輸入、時(shí)鐘輸可復(fù)用為外部中斷輸入、計(jì)數(shù)器輸入、時(shí)鐘輸出、第一串口和外部總線的讀出、第一串口和外部總線的讀/寫控制,如表所寫控制,如表所示。示。64/109表表3-8 P33-8 P3口的復(fù)用功能口的復(fù)用功能端口引腳端口引腳復(fù)用功能復(fù)用功能P3.0RXD(串口(串口1輸入)輸入)/ /INT4 (外部中斷(外部中斷4,只能下降沿中斷),只能下降沿中斷)/T2CLKO(T2的時(shí)鐘輸出)的時(shí)鐘輸出)P3.1TXD(串口(串口1輸出)輸出)/T2CLKO(T2的外部輸入)的外部輸入)P3.2/INT0(外
56、部中斷(外部中斷0輸入,既可上升沿中斷也可下降沿中斷)輸入,既可上升沿中斷也可下降沿中斷)P3.3/INT1(外部中斷(外部中斷1輸入,既可上升沿中斷也可下降沿中斷)輸入,既可上升沿中斷也可下降沿中斷)P3.4T0(定時(shí)器(定時(shí)器0外部輸入)外部輸入)/ T1CLKOU(T1時(shí)鐘輸出)時(shí)鐘輸出)/ECI_2(可編程計(jì)(可編程計(jì)數(shù)器陣列定時(shí)器的外部時(shí)鐘輸入備用切換引腳)數(shù)器陣列定時(shí)器的外部時(shí)鐘輸入備用切換引腳)P3.5T1(定時(shí)器(定時(shí)器1外部輸入)外部輸入)/ T0CLKOU(T0時(shí)鐘輸出)時(shí)鐘輸出)/ CCP0_32(捕獲(捕獲/比較比較/脈寬調(diào)制脈寬調(diào)制通道通道0備用切換引腳)備用切換引腳
57、)P3.6/INT2(外部中斷(外部中斷2輸入,只能下降沿中斷)輸入,只能下降沿中斷)/RxD_2(串口(串口1輸入備用切輸入備用切換引腳)換引腳)/ CCP1_2(捕獲(捕獲/比較比較/脈寬調(diào)制脈寬調(diào)制通道通道1備用切換引腳)備用切換引腳)P3.7/INT3(外部中斷(外部中斷3輸入,只能下降沿中斷)輸入,只能下降沿中斷)/TxD_2(串口(串口1輸出備用切輸出備用切換引腳)換引腳)/ CCP2(捕獲(捕獲/比較比較/脈寬調(diào)制脈寬調(diào)制通道通道2)/ CCP2_2(捕獲(捕獲/比較比較/脈脈寬調(diào)制寬調(diào)制通道通道2備用切換引腳)備用切換引腳)65/109P4口口作通用作通用I/O口使用??谑褂?。
58、某些口線具有復(fù)用功能,可配置為某些口線具有復(fù)用功能,可配置為SPI通信線、通信線、捕捉捕捉/比較比較/脈寬調(diào)制、第二串口線等。脈寬調(diào)制、第二串口線等。表表3-9 P43-9 P4口的復(fù)用功能口的復(fù)用功能端口引腳端口引腳復(fù)用功能復(fù)用功能P4.0MOSI_3(SPI主輸出從輸入備用切換引腳)主輸出從輸入備用切換引腳)P4.1MISO_3(SPI主輸入從輸出備用切換引腳)主輸入從輸出備用切換引腳)P4.2 (外部總線寫控制信號(hào))(外部總線寫控制信號(hào))P4.3SCLK_3(SPI時(shí)鐘備用切換引腳)時(shí)鐘備用切換引腳)P4.4 (外部總線讀控制信號(hào))(外部總線讀控制信號(hào))P4.5ALE(地址鎖存控制信號(hào),
59、主要用于外部總線擴(kuò)展)(地址鎖存控制信號(hào),主要用于外部總線擴(kuò)展) P4.6RxD2_2(第二串口輸入備用切換引腳)(第二串口輸入備用切換引腳)P4.7TxD2_2(第二串口輸出備用切換引腳)(第二串口輸出備用切換引腳)WRRD66/109P5口口P5.4/RST(復(fù)位腳)(復(fù)位腳)/MCLKO(內(nèi)部(內(nèi)部R/C振蕩振蕩時(shí)鐘輸出;時(shí)鐘輸出;輸出的頻率可為輸出的頻率可為MCLK/1或或MCLK/2)/SS_3(SPI接口的從機(jī)選擇信號(hào)備用切換引腳)。接口的從機(jī)選擇信號(hào)備用切換引腳)。該引腳默認(rèn)為該引腳默認(rèn)為I/O口,可以通過口,可以通過ISP編程將其設(shè)編程將其設(shè)置為置為RST(復(fù)位)引腳。(復(fù)位)
60、引腳。P5.5沒有復(fù)用功能。沒有復(fù)用功能。67/109捕獲捕獲/比較比較/脈寬調(diào)制脈寬調(diào)制(CCP)通道的引腳切)通道的引腳切換、換、SPI接口的引腳切換以及串口的引腳切接口的引腳切換以及串口的引腳切換由輔助寄存器換由輔助寄存器AUXR1(也稱為(也稱為P_SW1,地址為地址為A2H,復(fù)位值為,復(fù)位值為0000 0000B)和外)和外設(shè)功能切換寄存器設(shè)功能切換寄存器P_SW2(地址為(地址為BAH,復(fù)位值為復(fù)位值為xxxx xxx0B)確定。)確定。 位號(hào)位號(hào)寄存器名稱寄存器名稱D7D6D5D4D3D2D1D0AUXR1S1_S1S1_S0CCP_S1CCP_S0SPI_S1SPI_S00DP
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 體育保障組織人力資源管理策略考核試卷
- 氧化鎵在半導(dǎo)體照明中的應(yīng)用考核試卷
- 游戲服務(wù)質(zhì)量與用戶滿意度考核試卷
- 毛織品庫(kù)存控制策略考核試卷
- 教育游戲化設(shè)備研發(fā)考核試卷
- 漁業(yè)機(jī)械制造考核試卷
- 醫(yī)療器材的創(chuàng)新設(shè)計(jì)理念考核試卷
- 乙方有兩個(gè)合同范例寫
- 人參類合同標(biāo)準(zhǔn)文本
- 光伏設(shè)備維護(hù)與管理策略考核試卷
- 江蘇鹽城響水縣行政審批局政府購(gòu)買服務(wù)崗位招考聘用10人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 小學(xué)英語(yǔ)歌曲歌謠欣賞故事
- 2025年華僑港澳臺(tái)學(xué)生聯(lián)招考試英語(yǔ)試卷試題(含答案詳解)
- 課題申報(bào)參考:“雙碳”目標(biāo)下綠色建筑創(chuàng)新生態(tài)系統(tǒng)構(gòu)建與協(xié)同治理研究
- 申能集團(tuán)在線測(cè)評(píng)答案
- 急診預(yù)檢分診標(biāo)準(zhǔn)
- 不得攀爬高處安全教育
- 第12課 踢足球(教學(xué)實(shí)錄)2024-2025學(xué)年五年級(jí)上冊(cè)信息技術(shù)新世紀(jì)版
- 湖北省武漢市外國(guó)語(yǔ)學(xué)校2025屆高考考前模擬數(shù)學(xué)試題含解析
- 醫(yī)務(wù)人員職業(yè)安全防護(hù)制度流程
- 《貓》學(xué)習(xí)任務(wù)群教學(xué)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論