第7章 解剖單片機(jī)_第1頁(yè)
第7章 解剖單片機(jī)_第2頁(yè)
第7章 解剖單片機(jī)_第3頁(yè)
第7章 解剖單片機(jī)_第4頁(yè)
第7章 解剖單片機(jī)_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用

Allyouneedtoknowaboutthe8051microcontroller

楊欣YangX張延強(qiáng)ZhangY編著萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX主審電子工業(yè)出版社2011.21

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX第7章解剖單片機(jī)2第7章解剖單片機(jī)AT89S51單片機(jī)的內(nèi)部結(jié)構(gòu)3

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX第7章解剖單片機(jī)7.1■

單片機(jī)的功耗7.1.1運(yùn)行功耗4在時(shí)鐘頻率較高時(shí),如表中的4.0MHz,單片機(jī)運(yùn)算速度較快,相應(yīng)的1.25mA工作電流比在時(shí)鐘頻率為1.0MHz時(shí)的550μA工作電流要高。12MHz下的運(yùn)行功耗達(dá)25mA。

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX第7章解剖單片機(jī)7.1.2I/O口驅(qū)動(dòng)功耗5I/O口都會(huì)使能驅(qū)動(dòng)電路去控制功率較大的外設(shè),如蜂鳴器、電機(jī)等。根據(jù)AT89S51單片機(jī)的技術(shù)手冊(cè),其I/O口的輸出電流不能超過(guò)15mA。所以在談I/O口驅(qū)動(dòng)功耗時(shí),我們更多關(guān)注的是外設(shè)通過(guò)驅(qū)動(dòng)電路所消耗的功率。

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX第7章解剖單片機(jī)7.2■

單片機(jī)內(nèi)部結(jié)構(gòu)7.2.1從I/O口到內(nèi)部結(jié)構(gòu)6比較一下圖(a)和(b),前者顯示出4根數(shù)據(jù)線:讀鎖存器、內(nèi)部總線、寫鎖存器、讀管腳。這4根數(shù)據(jù)線與單片機(jī)內(nèi)部結(jié)構(gòu)中的總線相連。而后者則用一個(gè)雙向箭頭(

)來(lái)表示這4根數(shù)據(jù)線,說(shuō)明鎖存器與總線之間的關(guān)系。

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX第7章解剖單片機(jī)7.2.1從I/O口到內(nèi)部結(jié)構(gòu)7可把整個(gè)P1口都抽象出一個(gè)結(jié)構(gòu)框圖,如圖示,其中把8位I/O口的獨(dú)立結(jié)構(gòu)抽象到了P1口鎖存器和P1口驅(qū)動(dòng)兩個(gè)方框中,這與圖7-1所示的P0、P1、P2、P3口結(jié)構(gòu)是一致的。由于I/O口都是雙向的,所有的數(shù)據(jù)線都使用雙向箭頭。

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX第7章解剖單片機(jī)7.2.2數(shù)據(jù)在內(nèi)部交換8舉例:RAM是單片機(jī)的隨機(jī)訪問(wèn)存儲(chǔ)器,用于存儲(chǔ)運(yùn)行過(guò)程中的數(shù)據(jù)。假設(shè)RAM中地址30H上存儲(chǔ)了數(shù)據(jù)“3CH”,現(xiàn)在單片機(jī)執(zhí)行指令“MOVA,30H”,之后,RAM中地址30H上的數(shù)據(jù)3CH“跑”到總線上,而累加器A根據(jù)指令要求,從總線上接收這個(gè)數(shù)據(jù),執(zhí)行完畢后,A=3CH。

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX第7章解剖單片機(jī)7.2.3算術(shù)邏輯單元(ALU)9ALU為“進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算的處理單元”。它能進(jìn)行加、減法等算術(shù)運(yùn)算,也能做與、或、異或等邏輯運(yùn)算。ALU就是單片機(jī)的“CPU”,ALU的輸入端A和B,它們的數(shù)據(jù)都來(lái)自總線,經(jīng)過(guò)ALU運(yùn)算后,結(jié)果通過(guò)R又輸出到總線上。在運(yùn)算過(guò)程中,ALU通過(guò)輸出D向程序狀態(tài)字PSW輸出狀態(tài),PSW會(huì)隨著ALU的運(yùn)算發(fā)生相應(yīng)的變化。如執(zhí)行加法指令A(yù)DD時(shí),當(dāng)最高位有進(jìn)位時(shí),PSW的進(jìn)位標(biāo)志C就被置1,這都?xì)w功于ALU通過(guò)D向PSW的C位輸出高電平。

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX第7章解剖單片機(jī)7.3■

單片機(jī)的程序存儲(chǔ)器7.3.1整體結(jié)構(gòu)10

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX第7章解剖單片機(jī)7.3.2程序下載到哪里?11

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX以.HEX為后綴的執(zhí)行代碼文件可通過(guò)下載線下載到單片機(jī)中(4.4節(jié))。如果用記事本打開執(zhí)行代碼文件會(huì)得到一串十六進(jìn)制數(shù),其中包含了每條指令的執(zhí)行代碼。比如指令“MOVA,#88H”執(zhí)行代碼為“74”、“88”,其他指令都可從附錄C中找到相應(yīng)的執(zhí)行代碼。執(zhí)行代碼通過(guò)下載線下載到了單片機(jī)的片內(nèi)ROM中。因?yàn)槠瑑?nèi)ROM中下載的是程序,所以也稱這個(gè)片內(nèi)ROM為片內(nèi)程序存儲(chǔ)器。第7章解剖單片機(jī)7.3.3片內(nèi)程序存儲(chǔ)器12

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuXAT89S51單片機(jī)的片內(nèi)程序存儲(chǔ)器容量為4Kbytes,即4×1024=4096bytes。

這4096bytes片內(nèi)程序存儲(chǔ)器可用地址0000H~0FFFH來(lái)指向。在我們通過(guò)下載線往單片機(jī)下載程序時(shí),執(zhí)行代碼將從0000H開始,被依次存儲(chǔ)到單片機(jī)中。如圖示的執(zhí)行代碼,存儲(chǔ)到0000H里的是74H,即“01110100”;0001H里的是88H,即“10001000”。按照這種方法直到程序全部下載完畢,根據(jù)程序的長(zhǎng)短不同,程序存儲(chǔ)器被占用的空間多少也就不同。第7章解剖單片機(jī)7.3.4程序計(jì)數(shù)器PC13

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX程序計(jì)數(shù)器PC,它用于指示單片機(jī)下一條將要執(zhí)行的代碼的地址。當(dāng)單片機(jī)上電復(fù)位時(shí),PC=0000H,即指向程序存儲(chǔ)器中的0000H,單片機(jī)就把0000H上的代碼取出執(zhí)行。之后PC自動(dòng)增加1,變成0001H,如圖示,接著單片機(jī)就執(zhí)行0001H地址上的代碼。第7章解剖單片機(jī)7.3.4程序計(jì)數(shù)器PC14

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX由于程序計(jì)數(shù)器PC是個(gè)兩個(gè)字節(jié)(16位)的寄存器,于是受PC的制約,AT89S51單片機(jī)最大的尋址范圍是0000H~FFFFH,共64Kbytes。也就是說(shuō),除了AT89S51單片機(jī)片內(nèi)的4Kbytes程序存儲(chǔ)器(地址0000H~0FFFH)外,單片機(jī)能尋址的外部擴(kuò)展的程序存儲(chǔ)器空間最大為64Kbytes-4Kbytes=60Kbytes,即地址1000H~FFFFH。第7章解剖單片機(jī)7.3.5是片內(nèi)還是片外程序存儲(chǔ)器?15

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX當(dāng)

接高電平時(shí),單片機(jī)復(fù)位時(shí)讀取片內(nèi)程序存儲(chǔ)器中的程序,即從PC=0000H開始,依次讀取0000H~0FFFH上的程序。當(dāng)PC增加到0FFFH時(shí),PC再增加1等于1000H,單片機(jī)將自動(dòng)轉(zhuǎn)到片外程序存儲(chǔ)器上執(zhí)行其中的程序。而當(dāng)

接低電平時(shí),單片機(jī)則完全讀取片外程序存儲(chǔ)器中的程序,即從片外程序存儲(chǔ)器中的0000H開始,依次讀取程序來(lái)執(zhí)行。由于受到程序計(jì)數(shù)器PC的位數(shù)限制,讀取片內(nèi)或片外程序存儲(chǔ)器的最大地址范圍為0000H~FFFFH。第7章解剖單片機(jī)7.4■

單片機(jī)的數(shù)據(jù)存儲(chǔ)器7.4.1片內(nèi)數(shù)據(jù)存儲(chǔ)器16

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX單片機(jī)的數(shù)據(jù)存儲(chǔ)器也有片內(nèi)和片外之分。片內(nèi)數(shù)據(jù)存儲(chǔ)器就是單片機(jī)中原有的數(shù)據(jù)存儲(chǔ)器,即片內(nèi)RAM。片內(nèi)數(shù)據(jù)存儲(chǔ)器可分成三個(gè)部分:工作寄存器區(qū)、位尋址區(qū)、開放區(qū)。這三個(gè)區(qū)都可用來(lái)保存單片機(jī)運(yùn)行過(guò)程所產(chǎn)生的數(shù)據(jù)。但片內(nèi)數(shù)據(jù)存儲(chǔ)器是一個(gè)RAM,即隨機(jī)訪問(wèn)存儲(chǔ)器,在掉電后其中的數(shù)據(jù)將會(huì)丟失。第7章解剖單片機(jī)7.4.1片內(nèi)數(shù)據(jù)存儲(chǔ)器17

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX單片機(jī)的128×8-bit的片內(nèi)數(shù)據(jù)存儲(chǔ)器只有其中的20H~7FH共96個(gè)字節(jié)(開放區(qū)+位尋址區(qū))給我們使用的,而00H~1FH則是工作寄存器區(qū),一般通過(guò)工作寄存器R0~R7來(lái)使用。AT89S51單片機(jī)最大的數(shù)據(jù)存儲(chǔ)器(片內(nèi)+片外)尋址范圍也為0000H~FFFFH,共64Kbytes的空間。第7章解剖單片機(jī)7.4.2工作寄存器區(qū)(00H~1FH)18

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX工作寄存器共有8個(gè),分別為R0、R1、R2、R3、R4、R5、R6、R7,前面有許多程序已經(jīng)涉及工作寄存器。這8個(gè)工作寄存器可以用來(lái)裝載1個(gè)字節(jié)長(zhǎng)度的數(shù)據(jù),在程序中可視為一個(gè)變量來(lái)使用,常常用來(lái)作為計(jì)數(shù)值、顯示值等。指令“MOVR0,#24H”,把立即數(shù)24H裝載到工作寄存器R0中。第7章解剖單片機(jī)7.4.2工作寄存器區(qū)(00H~1FH)19

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX工作寄存器R0~R7指向片內(nèi)數(shù)據(jù)存儲(chǔ)器中的地址,當(dāng)單片機(jī)上電復(fù)位時(shí),R0~R7映射片內(nèi)數(shù)據(jù)存儲(chǔ)器的00H~07H,即第0組。執(zhí)行指令“MOVR0,#24H”,立即數(shù)24H裝載到R0,實(shí)際上被裝載到00H地址空間上。執(zhí)行“MOVR5,#3FH”,那R5映射的片內(nèi)數(shù)據(jù)存儲(chǔ)器05H地址上即被裝載3FH。第7章解剖單片機(jī)7.4.2工作寄存器區(qū)(00H~1FH)20

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX工作寄存器R0~R7除了映射片內(nèi)數(shù)據(jù)存儲(chǔ)器的地址00H~07H外,還可以映射向其余的地址08H~1FH。工作寄存器可用不同組別來(lái)稱呼。第7章解剖單片機(jī)7.4.2工作寄存器區(qū)(00H~1FH)21

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuXAT89551單片機(jī)上電復(fù)位時(shí)工作寄存器默認(rèn)的組別是第0組,即R0~R7映射00H~07H。如果想改變當(dāng)前程序使用的工作寄存器組別,可以通過(guò)更改程序狀態(tài)字PSW中的第3位(RS0)和第4位(RS1)。第7章解剖單片機(jī)7.4.3位尋址區(qū)(20H~2FH)22

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX片內(nèi)數(shù)據(jù)存儲(chǔ)器的20H~2FH(共16個(gè)字節(jié))為位尋址區(qū),這16個(gè)字節(jié)共有16×8=128位的空間可進(jìn)行位尋址。位尋址的意思是可對(duì)某一位單獨(dú)進(jìn)行操作,比如指令SETB可讓位尋址區(qū)的任何一位置1,指令CLR可清0位尋址區(qū)的任何一位。第7章解剖單片機(jī)7.4.3位尋址區(qū)(20H~2FH)23

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX在使用位尋址區(qū)時(shí),并不是直接操作20H~2FH這16個(gè)地址,而是用圖示的映射地址來(lái)完成。假如程序中需要把20H上的B0位清0,就需要操作20H上的B0位所映射的地址——00H,于是指令可設(shè)計(jì)為:“CLR 00H”。再如想把2AH上的B4位置1,指令則為“SETB 54H”。第7章解剖單片機(jī)7.4.4開放區(qū)(30H~7FH)24

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX片內(nèi)數(shù)據(jù)存儲(chǔ)器的地址30H~7FH是開放給用戶使用的空間,用戶可以在這段空間里存儲(chǔ)單片機(jī)運(yùn)行時(shí)產(chǎn)生的數(shù)據(jù),也可以讀取存儲(chǔ)的數(shù)據(jù)到工作寄存器、累加器等中。例如以下指令實(shí)現(xiàn)將累加器A的數(shù)據(jù)載入33H上,執(zhí)行過(guò)后(33H)=8FH。第7章解剖單片機(jī)7.5■

單片機(jī)的特殊功能寄存器7.5.1特殊功能寄存器分布圖25

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuXAT89S51單片機(jī)共有26個(gè)特殊功能寄存器,位于地址80H~0FFH上。其中有前面使用過(guò)的累加器A、程序狀態(tài)字PSW、P0~P3口等。第7章解剖單片機(jī)7.5.2特殊功能寄存器的功能26

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuXAT89S51單片機(jī)多個(gè)內(nèi)部功能模塊如中斷控制、Timer0/1、串行口等都由特殊功能寄存器控制。每個(gè)特殊功能寄存器的長(zhǎng)度都是1個(gè)字節(jié),它們的詳細(xì)介紹將在隨后的章節(jié)中詳細(xì)展開。第7章解剖單片機(jī)7.5.3特殊功能寄存器的字節(jié)操作27

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX操作特殊功能寄存器寄存器的過(guò)程,實(shí)際就是控制單片機(jī)充分發(fā)揮自身功能的過(guò)程。例如指令“MOVP1,#00H”,這條指令把立即數(shù)00H從P1口送出去。P1也是特殊功能寄存器的一份子,它的地址為90H。所以指令“MOVP1,#00H”就是對(duì)特殊功能寄存器的操作,會(huì)讓特殊功能寄存器區(qū)的(90H)=00H。以上這種操作我們稱為字節(jié)操作,因?yàn)樵趫?zhí)行“MOVP1,#00H”時(shí),P1就像一個(gè)符號(hào),實(shí)際上立即數(shù)是送到P1對(duì)應(yīng)的特殊功能寄存器地址空間上,也就是90H。所以,這和我們往片內(nèi)數(shù)據(jù)存儲(chǔ)器的開放區(qū)某一個(gè)地址裝載1個(gè)字節(jié)的數(shù)據(jù)的過(guò)程是一樣的。第7章解剖單片機(jī)7.5.4特殊功能寄存器的位操作28

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX某些特殊功能寄存器還支持位操作,比較常用的是置1指令“SETB”和清0指令“CLR”。例如指令“CLRP2.0”將P2.0清0。執(zhí)行這條指令后,只有P2.0=0,之相連的發(fā)光二極管點(diǎn)亮。而P2.1~P2.7仍然保持原來(lái)的狀態(tài)。支持位操作的特殊功能寄存器:P0(P0口鎖存器) P1(P1口鎖存器)P2(P2口鎖存器) P3(P3口鎖存器)ACC(累加器) B(B寄存器)PSW(程序狀態(tài)字寄存器) TCON(定時(shí)/計(jì)數(shù)器控制寄存器)SCON(串行口控制寄存器) IE(中斷使能寄存器)IP(中斷優(yōu)先控制寄存器)第7章解剖單片機(jī)7.6■

應(yīng)用體驗(yàn)——用取表方式實(shí)現(xiàn)流水燈7.6.1取表法29

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX要實(shí)現(xiàn)流水燈需要在P2口按圖示依次輸出每一行數(shù)據(jù),如果用十六進(jìn)制表示每一行數(shù)據(jù)為:FEH、FDH、FBH、F7H、EFH、DFH、BFH、7FH。取表法的思路就是把這些數(shù)據(jù)預(yù)先放在一個(gè)數(shù)據(jù)表中,作為程序的一部分。單片機(jī)執(zhí)行時(shí)每次取一個(gè)數(shù)據(jù)從P2口送出,延時(shí)后再取下一個(gè)數(shù)據(jù)送出,這樣就可以從發(fā)光二極管上看到流水燈的效果了。第7章解剖單片機(jī)7.6.1取表法30

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX第7章解剖單片機(jī)7.6.1取表法31

歡迎訪問(wèn)“電路飛翔網(wǎng)”獲取更多信息《實(shí)例解讀51單片機(jī)完全學(xué)習(xí)與應(yīng)用》

Allyouneedtoknowaboutthe8051microcontroller編著:楊欣YangX張延強(qiáng)ZhangY主審:萊·諾克斯NokesL王玉鳳WangY劉湘黔LiuX第7章解剖單片機(jī)7.6.3體驗(yàn)流水燈3

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論