單片機原理及應(yīng)用1-3課件_第1頁
單片機原理及應(yīng)用1-3課件_第2頁
單片機原理及應(yīng)用1-3課件_第3頁
單片機原理及應(yīng)用1-3課件_第4頁
單片機原理及應(yīng)用1-3課件_第5頁
已閱讀5頁,還剩180頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

單片計算機及其應(yīng)用第一章緒論第二章MCS—51單片機的結(jié)構(gòu)和原理第三章MCS51指令系統(tǒng)第四章匯編語言程序設(shè)計第六章MCS-51單片機內(nèi)部定時/計數(shù)器及其應(yīng)用第八章單片機系統(tǒng)擴展第七章MCS-51系統(tǒng)的串行接口第五章

MCS-51單片機的中斷系統(tǒng)第十章單片機應(yīng)用系統(tǒng)的組成第九章單片機應(yīng)用D/A轉(zhuǎn)換器、A/D轉(zhuǎn)換器的接口單片計算機及其應(yīng)用第一章緒論第二章MCS—51單片機的第

本章內(nèi)容SingleChipMicrocomputer什么是單片機單片機特點及應(yīng)用單片機的結(jié)構(gòu)特點第

論本章內(nèi)容SingleChipM一、什么是單片機

1、微型計算機硬件結(jié)構(gòu)——常見的微機外形臺式微機便攜式微機立式微機一、什么是單片機1、微型計算機硬件結(jié)構(gòu)——常見的微機外形微型計算機硬件結(jié)構(gòu)——微機硬件組成顯示器主機鍵盤鼠標微型計算機硬件結(jié)構(gòu)——微機硬件組成顯示器主機鍵盤鼠標微型計算機硬件結(jié)構(gòu)——運算器控制器CPU存儲器輸入接口電路輸入設(shè)備輸出設(shè)備輸出接口電路硬件系統(tǒng)內(nèi)部結(jié)構(gòu)微型計算機硬件結(jié)構(gòu)——運算器控制器CPU存儲器硬件系統(tǒng)——構(gòu)成微機的實體和裝置軟件系統(tǒng)——微機系統(tǒng)所使用的各種程序的總稱軟件系統(tǒng)與硬件系統(tǒng)共同構(gòu)成實用的微機系統(tǒng),兩者是相輔相成、缺一不可的。

軟件系統(tǒng)+微型計算機系統(tǒng)運算器控制器CPU存儲器輸入接口電路輸入設(shè)備輸出設(shè)備輸出接口電路硬件系統(tǒng)微型計算機系統(tǒng)硬件系統(tǒng)——構(gòu)成微機的實體和裝置軟件系統(tǒng)——微機系統(tǒng)所使用的CPU輸入設(shè)備輸出設(shè)備軟件系統(tǒng)+微型計算機系統(tǒng)硬件系統(tǒng)輸入接口設(shè)備輸出接口設(shè)備運算器控制器存儲器單片微型計算機是指集成在一個芯片上的微型計算機,簡稱單片機——單片機實質(zhì)上就是一個芯片2、單片微型計算機CPU+微型計算機系統(tǒng)硬件系統(tǒng)輸輸運算器控制器存儲單片機內(nèi)部結(jié)構(gòu)示意圖

CPU

存儲器定時器/計數(shù)器

中斷系統(tǒng)P0-P3TxDRxD

TINT并行I/O口串行I/O口單片機內(nèi)部結(jié)構(gòu)示意圖CPU存儲器定單片機應(yīng)用系統(tǒng)

單片機應(yīng)用系統(tǒng)單片機+接口電路及外設(shè)等+軟件硬件單片機應(yīng)用系統(tǒng)由硬件和軟件組成硬件是應(yīng)用系統(tǒng)的基礎(chǔ)軟件是在硬件的基礎(chǔ)上對其資源進行合理調(diào)配和使用,從而完成應(yīng)用系統(tǒng)所要求的任務(wù),二者相互依賴,缺一不可注:本課程的重點1.掌握單片機應(yīng)用系統(tǒng)硬件原理的分析方法。2.掌握軟件設(shè)計與調(diào)試的基本技能。單片機應(yīng)用系統(tǒng)單片機應(yīng)用系統(tǒng)單片機+接口電路及外設(shè)等+軟件

二、單片機的結(jié)構(gòu)特點2、引腳采用分時復(fù)用技術(shù)。由于芯片集成度高,而引腳又不宜過多,因此將部分引腳設(shè)計為多功能的,例如,地址總線和數(shù)據(jù)總線采用分時復(fù)用等。1、存儲結(jié)構(gòu)。采用ROM和RAM嚴格分開的哈佛結(jié)構(gòu),可分為:內(nèi)部ROM、RAM,外部ROM、RAM。二、單片機的結(jié)構(gòu)特點2、引腳采用分時復(fù)用技術(shù)。由于芯片集成3、特殊功能寄存器(21個)采用特殊功能寄存器來控制單片機的功能狀態(tài),如定時/計數(shù)器、串行口和中斷邏輯等。4、全雙工串行接口內(nèi)部具有全雙工串行接口,可實現(xiàn)單機或多機通訊,為實現(xiàn)分布式控制系統(tǒng)提供了可能。5、布爾處理器內(nèi)部具有布爾處理器,可十分方便的進行二進制位邏輯運算,進行組合邏輯設(shè)計3、特殊功能寄存器(21個)采用特殊功能寄存器來控制單片三、單片機的特點及應(yīng)用

1.單片機的特點體積小,重量輕電源單一,功耗低功能強,價格低運行速度快,抗干擾能力強,可靠性高可以嵌入到電子產(chǎn)品中——嵌入式應(yīng)用系統(tǒng)三、單片機的特點及應(yīng)用1.單片機的特點體積小,重量輕電2.單片機應(yīng)用

工業(yè)方面民用方面儀表方面電訊方面數(shù)據(jù)處理方面汽車方面2.單片機應(yīng)用工業(yè)方面民用方面儀表方面電訊方面數(shù)據(jù)處理方A、單片機應(yīng)用模式1、單機應(yīng)用 即在一個應(yīng)用系統(tǒng)中僅使用了一個單片機,其主要應(yīng)用領(lǐng)域有:智能產(chǎn)品、智能儀表、測控系統(tǒng)、數(shù)控控制機智能接口。2、多機應(yīng)用

多機應(yīng)用是單片機在高科技領(lǐng)域中應(yīng)用的主要模式,其高可靠性、高控制功能及高運行速度的“三高”技術(shù),在未來的高科技工程系統(tǒng)中采用單片機多機系統(tǒng)作為主要的發(fā)展方向。其應(yīng)用模式可分為功能彌散系統(tǒng)、并行多機處理系統(tǒng)和局部網(wǎng)絡(luò)系統(tǒng)。A、單片機應(yīng)用模式1、單機應(yīng)用B、單片機的配置

單片機通過執(zhí)行指令流來完成預(yù)先設(shè)定的功能,其指令的存放方式取決于片內(nèi)ROM的配置情況:

1、片內(nèi)ROM配置即單片機片內(nèi)帶有掩模ROM,其內(nèi)容由廠家出廠時設(shè)定,因而其生產(chǎn)周期長、經(jīng)濟風(fēng)險大但成本較低。征對以上特點,已有廠家推出了一次性(即OTP型)用戶可編程的單片機,因而兼具成本低、周期短、低風(fēng)險等優(yōu)點。B、單片機的配置 單片機通過執(zhí)行指令流來完成預(yù)先設(shè)定的功能,2、片內(nèi)EPROM配置

適用于樣機開發(fā),可多次重寫。3、片內(nèi)E2PROM配置適用于樣機開發(fā),可多次重寫,其重寫比EPROM更方便,目前使用最為廣泛。4、片內(nèi)無ROM配置由于片內(nèi)無ROM,因而需在片外擴展ROM,其電路復(fù)雜,靈活性差,已逐漸被淘汰。2、片內(nèi)EPROM配置適用于樣機開發(fā),可多次重寫。C、單片機的等級集成電路依據(jù)其使用環(huán)境可分為三個等級1、商用級溫度范圍為0~70OC,限用于機房及辦公環(huán)境2、工業(yè)級溫度范圍為-45~85OC3、軍用級溫度范圍為-50~125OC

不同級別之間價格相差很大,如軍用級為商用級的10倍乃至上百倍。單片機為工業(yè)級產(chǎn)品。C、單片機的等級集成電路依據(jù)其使用環(huán)境可分為三個等級3.單片機種類

◆生產(chǎn)廠商:美國微芯片公司:PIC16C××系列、PIC17C××系列、PIC1400系列,美國英特爾公司的MCS-48和MCS-51系列,美國摩托羅拉公司的MC68HC05系列和MC68HC11系列,美國齊洛格公司的Z8系列,日本電氣公司的μPD78××系列,美國莫斯特克公司和仙童公司合作生產(chǎn)的F8(3870)系列等。

3.單片機種類◆生產(chǎn)廠商:美國微芯片公司:PIC16C×A、單片機的分類(按用途)(1)通用型單片機它可向開發(fā)者提供較多資源,具有較強的通用性,適應(yīng)性較強,應(yīng)用較為廣泛,便于普及和推廣,但有時會造成大量資源的浪費。(2)專用型單片機專門征對特殊使用場合的具體要求而設(shè)計,通常是微控制系統(tǒng)的集成產(chǎn)品,因而其抗干擾能力比通用型強,適用于各種惡劣環(huán)境,但由于其專用性強,其應(yīng)用范圍受到了很大的限制。A、單片機的分類(按用途)(1)通用型單片機它可向開發(fā)者提B、按字長分類(1)4位機主產(chǎn)于日本,如SM系列,UPD系列等,其特點是價格便宜,其數(shù)值運算能力差。(2)8位機目前市面上的主導(dǎo)機型,如Intel,Motorola,Zilog等廠家的產(chǎn)品,由于其功能強大,價格低廉,品種繁多,數(shù)值處理能力一般,應(yīng)用范圍較廣。B、按字長分類(1)4位機主產(chǎn)于日本,如SM系列,UPD系(3)16位機、32位機具有強大的數(shù)值處理能力,且具有并行功能,適用于有大量數(shù)據(jù)處理的應(yīng)用系統(tǒng),由于其字長較長,運行速度較高,因而數(shù)據(jù)處理速度高。它的發(fā)展壯大直接推動了信息化時代的到來。如TMS320C50,進行一次乘法運算僅需60ns?!魡纹瑱C的發(fā)展經(jīng)歷了由4位機到8位機,再到16位機的發(fā)展過程◆目前8位單片機仍是單片機的主流機型;(3)16位機、32位機具有強大的數(shù)值處理能力,且具有并行Atmel標準型:AT89C51AT89C52AT89lv51AT89lv52低檔型:AT89C1051AT89C2051(2Kflash)(20PIN)高檔型:AT89S51AT89S52ISP功能PhilipsP80CXXP87CXXP89CXXP87LPC7XXTIMSP430PIC系列AtmelPhilipsTIMSP430PIC系列學(xué)習(xí)中幾點注意事項:前續(xù)課程是數(shù)電、模電與微機原理(8086).課程中涉及不懂的,回頭翻書; 相關(guān)課程:Protel2.不要和微機原理(8086)打架,兩門課有相同的地方,也有完全不同的地方,比如內(nèi)部結(jié)構(gòu)、匯編指令系統(tǒng)完全不同,切忌混淆(!!!)3.本課程是一門實踐性、應(yīng)用性很強的學(xué)科理解+記憶+動手4.硬件(外部接口電路+內(nèi)部硬件資源)/軟件(代碼)同樣重要、不可偏廢,培養(yǎng)軟硬件結(jié)合的思想

內(nèi)部硬件資源是內(nèi)臟,外部接口電路是骨骼,軟件是血液,學(xué)習(xí)中幾點注意事項:前續(xù)課程是數(shù)電、模電與微機原理(80865.學(xué)會看全英文的數(shù)據(jù)手冊和軟件開發(fā)環(huán)境(金山詞霸)

6.知識點多、全是細節(jié)問題、課時非常緊張:理論教學(xué)(38)+實驗(10)、講課速度快。預(yù)習(xí)、聽課、復(fù)習(xí)、做題、實驗,通過教學(xué)引導(dǎo),一定要培養(yǎng)自己的自學(xué)習(xí)慣和能力

7.正確理解自學(xué)?如何培養(yǎng)自學(xué)的能力,在專業(yè)科學(xué)習(xí)中非常重要

8.記好筆記,上課記筆記的重要性,怎樣記筆記?(要點)

9獨立思考完成作業(yè)?。?!

關(guān)鍵詞:學(xué)習(xí)方法、預(yù)習(xí)、自學(xué)、作業(yè)、前后聯(lián)系(翻書)、獨立思考5.學(xué)會看全英文的數(shù)據(jù)手冊和軟件開發(fā)環(huán)境(金山詞霸)10.本課件學(xué)生可以拷貝,有條件的將課件打印,學(xué)習(xí)怎么在多媒體教室的環(huán)境下怎么把課學(xué)好。幾點要求:1上課不遲到、認真聽講、積極發(fā)言2課后復(fù)習(xí),獨立思考、按時完成作業(yè)3上課手機關(guān)掉,不許接手機、玩手機

10.本課件學(xué)生可以拷貝,有條件的將課件打印,學(xué)習(xí)怎么在教材:張毅剛,《單片機原理及應(yīng)用》,高等教育出版社教輔讀物:李廣弟《單片機基礎(chǔ)》(修訂版)2001胡漢才《單片機原理及其接口技術(shù)》(第二版)2004王迎旭《單片機原理及應(yīng)用》2006.7李朝青《單片機學(xué)習(xí)輔導(dǎo)測驗及解答講義》2003朱定華《單片機原理及接口技術(shù)學(xué)習(xí)輔導(dǎo)》2001林永仁《嵌入式系統(tǒng)項目分析入門與實踐》2004博文視點《單片機程序設(shè)計及應(yīng)用從基礎(chǔ)到實踐》2006雜志《國外電子元器件》《單片機與嵌入式系統(tǒng)應(yīng)用》成績評定:平時占20%(作業(yè)+實驗+考勤)期末考試占80%(閉卷筆試統(tǒng)考)GoodLuck!!教材:成績評定:GoodLuck!!27238302MCS51MICROCONTROLLERFAMILYUSER’SMANUAL(datasheet)

張勝古

/

查找芯片datasheet的網(wǎng)址:/

–下載-資料(pdf)要求:學(xué)會熟練利用網(wǎng)絡(luò)資源為學(xué)習(xí)、工作服務(wù)作業(yè):上網(wǎng)查找AT89C51的Datasheet27238302單片機原理及應(yīng)用1-3課件中國芯片手冊網(wǎng)/中國芯片手冊網(wǎng)http://www.datasheet.//從一個簡單的測控應(yīng)用實例說起動作選擇按鈕紅外線傳感器89C2051單片機復(fù)位按鈕電源指示燈從一個簡單的測控應(yīng)用實例說起動作選擇按鈕紅外線傳感器89C2任務(wù)一:控制一盞燈點亮任務(wù)二:紅燈周期性地點亮/熄滅信號檢測柔性開關(guān)集群燈控順序控制/多任務(wù)定時切換自動生產(chǎn)流水線任務(wù)三:紅外防盜報警實時控制任務(wù)一:控制一盞燈點亮任務(wù)二:紅燈周期性地點亮/熄滅信號檢測簡單測控實例原理圖簡單測控實例原理圖數(shù)字電路中由13片IC組成的數(shù)字鐘數(shù)字電路中由13片IC組成的數(shù)字鐘單片機原理及應(yīng)用1-3課件單片機原理及應(yīng)用1-3課件由單片機構(gòu)成的電子鐘單片機由單片機構(gòu)成的電子鐘單片機單片IC(單片機)電子鐘單片IC(單片機)電子鐘繼電控制串行模塊LED顯示嗡鳴器開關(guān)輸入電源模塊單片機芯片下載接口紅外遙控數(shù)碼管顯示一塊單片機系統(tǒng)電路板繼電控制串行模塊LED顯示嗡鳴器開關(guān)輸入電源模塊單片機芯片下幾個開發(fā)軟件Keil2/3實驗教學(xué)用幾個開發(fā)軟件Keil2/3實驗教學(xué)用偉福/

偉福/2-1關(guān)于MCS-51系列2-2MCS-51系列單片機的結(jié)構(gòu)原理2-3 MCS-51單片機的引腳及其片外總線結(jié)構(gòu)2-4MCS-51單片機的工作方式2-5MCS-51單片機的時序第二章MCS—51單片機的結(jié)構(gòu)和原理2-1關(guān)于MCS-51系列第二章MCS—51單片機的結(jié)構(gòu)教學(xué)目的:了解單片機的典型結(jié)構(gòu);熟悉其內(nèi)部資源 配置及外部特性;掌握80C51存儲器系 統(tǒng)的結(jié)構(gòu)、功能及操作;SFR的運行管理模 式;了解80C51系列單片機輸入/輸出端口內(nèi)部 結(jié)構(gòu),掌握其應(yīng)用特性。教學(xué)重點:1.80C51系列單片機存儲器系統(tǒng)的結(jié)構(gòu)、功 能及操作方式;

2.80C51系列單片機輸入/輸出端口的正確 讀寫;

3.SFR的尋址方式。教學(xué)難點:1.80C51系列單片機存儲器系統(tǒng)的結(jié)構(gòu)、功 能及操作方式;

2.SFR的運行管理模式教學(xué)目的:了解單片機的典型結(jié)構(gòu);熟悉其內(nèi)部資源 配置及一、MCS-51系列型號型號片內(nèi)程序存儲器片內(nèi)數(shù)據(jù)存儲器8031NO128Bytes80514KROM128Bytes87514KEPROM128Bytes8032NO256Bytes89C514KE2PROM128Bytes89C528KE2PROM256Bytes89C20512KE2PROM128Bytes2-1關(guān)于MCS-51系列型號片內(nèi)程序存儲器片內(nèi)數(shù)據(jù)存儲器8031NO128Byt二、MCS-51的主要特點1、單+5V供電,40引腳封裝2、8位字長CPU3、片內(nèi)有振蕩電路和時鐘電路4、32根I/O線5、64K外部RAM(不含內(nèi)部RAM)二、MCS-51的主要特點1、單+5V供電,40引腳封裝6、64K外部ROM(含內(nèi)部ROM)7、2個16位定時/計數(shù)器(8X52有3個)8、具有2個優(yōu)先級別的5個中斷源(8X52有6個)9、可編程的全雙工串行口,如工作方式、波特率等10、布爾處理器11、128個用戶可尋址位單元12、128字節(jié)內(nèi)部RAM(8X52有256個字節(jié))6、64K外部ROM(含內(nèi)部ROM)時鐘電路CPUROMRAMT0T1中斷系統(tǒng)串行接口并行接口P0P1P2P3TXDRXDINT0INT1定時計數(shù)器結(jié)構(gòu)框圖中央處理器CPU:8位,運算和控制功能內(nèi)部RAM:共256個RAM單元,用戶使用前128個單元,用于存放可讀寫數(shù)據(jù),后128個單元被專用寄存器占用。內(nèi)部ROM:4KB掩膜ROM,用于存放程序、原始數(shù)據(jù)和表格。定時/計數(shù)器:兩個16位的定時/計數(shù)器,實現(xiàn)定時或計數(shù)功能。并行I/O口:4個8位的I/O口P0、P1、P2、P3。串行口:一個全雙工串行口。中斷控制系統(tǒng):5個中斷源(外中斷2個,定時/計數(shù)中斷2個,串行中斷1個)時鐘電路:可產(chǎn)生時鐘脈沖序列,晶振頻率通常為6MHZ和12MHZ2-2MCS-51系列單片機的結(jié)構(gòu)原理一、基本組成時鐘電路CPUROMRAMT0T1中斷系統(tǒng)串行接口并單片機原理及應(yīng)用1-3課件1、8051單片機的基本組成中央處理器CPU:8位,運算和控制功能內(nèi)部RAM:共256個RAM單元,用戶使用前128個單元,用于存放可讀寫數(shù)據(jù),后128個單元被專用寄存器占用。內(nèi)部ROM:4KB掩膜ROM,用于存放程序、原始數(shù)據(jù)和表格。定時/計數(shù)器:兩個16位的定時/計數(shù)器,實現(xiàn)定時或計數(shù)功能。并行I/O口:4個8位的I/O口P0、P1、P2、P3。串行口:一個全雙工串行口。中斷控制系統(tǒng):5個中斷源(外中斷2個,定時/計數(shù)中斷2個,串行中斷1個)時鐘電路:可產(chǎn)生時鐘脈沖序列,晶振頻率常選6MHZ和12MHZ1、8051單片機的基本組成中央處理器CPU:8位,運算和控1

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15EPROM27641

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15EPROM27641

2

3

4

5

6

7

8

9

10111213141516171819

2040

39

38

37

36

35

34

33

32

31302928272625242422211

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15RAM62641

2

3

4

5

6

7

8

9

10

11

12

13

1428

27

26

25

24

23

22

2120

19

18

17

16

15RAM6264

2.

器80318751805189C51片內(nèi)RAM片內(nèi)ROM256B(字節(jié))4K64K64K1

2

3

4

5

6

7

8

9

10

11

12

13

(1)程序存儲器程序存儲器內(nèi)部外部0000H0FFFH(4K)0000HFFFFH(64K)0000H0FFFH(4K)0000H0001H0002H(PC)0000H是程序執(zhí)行的起始單元,

在這三個單元存放一條

無條件轉(zhuǎn)移指令

中斷5中斷4中斷3中斷2中斷10003H000BH0013H001BH0023H002BH外部中斷0定時器0中斷外部中斷1定時器1中斷串行口中斷8位...0FFFH0FFEHEA=1EA=0程序存儲器資源分布中斷入口地址org 0000h ljmp main org 002bhMain: mov sp,#60h ……..(1)程序存儲器程序存儲器內(nèi)部外部0000H0FFFH(4K0000HFFFFH(64K)內(nèi)部外部(2)數(shù)據(jù)存儲器數(shù)據(jù)存儲器00HFFH7FH80H(高128B)(低128B)RAM專用

寄存器00H07H08H0FH10H17H18H1FH0區(qū)R0R7R0R7R0R7R0R71區(qū)2區(qū)3區(qū)工作寄存器區(qū)可作一般RAM讀寫也可位尋址區(qū)20H2FH7F78070030H7FH數(shù)據(jù)緩沖區(qū)/堆棧區(qū)內(nèi)部RAM存儲器

11第3區(qū)18H~1FH

01第1區(qū)08H~0FHRS1RS0寄存器區(qū)片內(nèi)RAM地址

00第0區(qū)00H~07H10第2區(qū)10H~17H工作寄存器區(qū)選擇位RS0、RS10000HFFFFH(64K)內(nèi)部外部(2)數(shù)據(jù)存儲器數(shù)據(jù)存注意:一個單元地址對應(yīng)有8個位地址

MSB——MostSignificantBit(最高有效位)

LSB——LeastSignificantBit(最低有效位)單元地址2FH2EH2DH2CH2BH2AH29H28H27H26H25H24H23H22H21H20H7F776F675F574F473F372F271F170F07

MSB

位地址

LSB7E766E665E564E463E362E261E160E067D756D655D554D453D352D251D150D057C746C645C544C443C342C241C140C047B736B635B534B433B332B231B130B037A726A625A524A423A322A221A120A027971696159514941393129211911090178706860585048403830282018100800RAM位尋址區(qū)位地址表()注意:一個單元地址對應(yīng)有8個位地址

MSB——Most(3)特殊功能寄存器(高128個單元)

MCS-51內(nèi)部安排有21個特殊功能寄存器各特殊功能寄存器的符號及地址見。分別由于以下各個功能單元:CPU:ACC、B、PSW、SP、DPTR(由兩個8位寄存器DPL、DPH組成)并行口:P0、P1、P2、P3中斷系統(tǒng):IE、IP定時/計數(shù)器:TMOD、TCON、TH1、TL1、TH0、TL0串行口:SCON,SBUF,PCON(3)特殊功能寄存器(高128個單元) MCS-51內(nèi)部安高128個單元☆離散分布有21個特殊功能寄存器SFR?!?/p>

11個可以進行位尋址:ACC、B、PSW、IE、IP、P0、P1、P2、P3、SCON、TCON☆特別提示:對SFR只能使用直接尋址方式,書寫時可使用寄存器符號,也可用寄存器單元地址。高128個單元☆離散分布有21個特殊功能寄存器SFR?!?3、CPU由運算器、控制器和若干SFR(ACC,B,PSW,SP,DPTR)構(gòu)成。(1)運算器:實現(xiàn)數(shù)據(jù)的算術(shù)運算和邏輯運算。(2)累加器ACC:提供一個操作數(shù)并存放運算結(jié)果,其進位標志CY同時也是布爾處理器的累加器。(3)寄存器B:用于乘法和除法操作,也用作暫存器。3、CPU由運算器、控制器和若干SFR(ACC,B,PSW,(4)CPU標志寄存器CY:進位標志,有進位或借位時為1,否則為0

AC:輔助進位標志當D3向D4有進位或借位時為1,否則為0

F0:用戶標志RS1、RS0:工作寄存器組OV:溢出標志,結(jié)果超過-128~+127時,OV=1,否則為0CYACF0RS1RS0OV—PPSW

11第3區(qū)18H~1FH

01第1區(qū)08H~0FHRS1RS0寄存器區(qū)片內(nèi)RAM地址

00第0區(qū)00H~07H10第2區(qū)10H~17H(4)CPU標志寄存器CY:進位標志,有進位或借位時為1,否(4)CPU標志寄存器P:奇偶校驗標志,當ACC中“1”的個數(shù)為奇數(shù)個時,P=1PSW.1:保留位,用戶可使用。椎棧指針SP:先入后出的特殊存儲器指針。數(shù)據(jù)指針DPTR:用于存放16位地址,可分為DPH和DPL。MOV SP,#60HMOV DPL,#0FFHMOV DPH,#0FH(4)CPU標志寄存器P:奇偶校驗標志,當ACC中“1”的個4、并行I/O口P0.0

P0.1

P0.2P0.3P0.4P0.5P0.6P0.7P1.0

P1.1

P1.2P1.3P1.4P1.5P1.6P1.7P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P3.0

P3.1

P3.2P3.3P3.4P3.5P3.6P3.74個8位并行I/O口:P0,P1,P2,P3;均可作為雙向I/O端口使用。輸入時可以緩沖,輸出時可以鎖存。(1)特點:P0:訪問片外擴展存儲器時,

復(fù)用為低8位地址線和數(shù)據(jù)線

P2:高8位地址線。P1:雙向I/O端口

P3:第二功能1

2

3

4

5

6

7

8

9

10111213141516171819

2040

39

38

37

36

35

34

33

32

313029282726252424222180318051875189C51片外擴展存儲器時P0、P2口自動作為總線使用4、并行I/O口P0.0

P0.1

P0.2P0.3P(2)I/O口的字節(jié)地址和位地址(2)I/O口的字節(jié)地址和位地址1)P0口的位結(jié)構(gòu)鎖存器三態(tài)緩沖器場效應(yīng)管P0口既可用作I/O口,也可用作地址/數(shù)據(jù)總線,但二者不能兼用,用作I/O口時,必須在管腳上接上拉電阻。用作地址/數(shù)據(jù)總線時,地址和數(shù)據(jù)采取分時復(fù)用方式。用作輸入時,必須對輸出鎖存器置“1”—“讀引腳”操作(3)下面分別介紹4個I/O口的結(jié)構(gòu)1)P0口的位結(jié)構(gòu)鎖存器三態(tài)緩沖器場效應(yīng)管P0口既可用作I/P0口某一位的電路包括:(1)一個數(shù)據(jù)輸出鎖存器,用于數(shù)據(jù)位的鎖存(2)兩個三態(tài)的數(shù)據(jù)輸入緩沖器,分別用于鎖存器數(shù)據(jù)和引腳數(shù)據(jù)的輸入緩沖。(3)一個多路轉(zhuǎn)接開關(guān)MUX,一個輸入來自鎖存器,另一個輸入為“地址/數(shù)據(jù)”。輸入轉(zhuǎn)接由“控制”信號控制。設(shè)置多路轉(zhuǎn)接開關(guān)的目的,是因為P0口既作通用I/O口,又可作為系統(tǒng)的地址/數(shù)據(jù)線。由MUX實現(xiàn)鎖存器輸出和地址/數(shù)據(jù)線之間的接通轉(zhuǎn)接。(4)數(shù)據(jù)輸出的驅(qū)動和控制電路,由兩只場效應(yīng)管(FET)組成,上面的那只場效應(yīng)管構(gòu)成上拉電路。P0口某一位的電路包括:P0.0—P0.7:PORT8位漏極開路型雙向I/O(內(nèi)置場效應(yīng)管上拉)(難點)

當P0口作為輸出口使用時,來自CPU的“寫入”脈沖加在D鎖存器的CP端,內(nèi)部總線上的數(shù)據(jù)寫入D鎖存器,并向端口引腳P0.x輸出。但要注意,由于輸出電路是漏極開路(因為這時上拉場效應(yīng)管截止),必須外接上拉電阻才能有高電平輸出。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)據(jù)控制引腳P0.X34Vcc控制=0時,P0.0—P0.7:PORT8位漏極開路型雙向I/O(21DQCK/Q讀引腳=1讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)據(jù)控制引腳P0.X34控制=0時,00100截止截止=0Vcc當P0口作為輸入口使用時,應(yīng)區(qū)分“讀引腳”和“讀端口”(或稱“讀鎖存器”)。為此,在口電路中有兩個用于讀入的三態(tài)緩沖器?!白x引腳”就是直接讀取引腳P0.X上的狀態(tài),這時由“讀引腳”信號把下方緩沖器打開,引腳上的狀態(tài)經(jīng)緩沖器讀入內(nèi)部總線;“讀端口”則是“讀鎖存器”信號,打開上面的緩沖器把鎖存器Q端的狀態(tài)讀入內(nèi)部總線。21DQCK/Q讀引腳=1讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)Note:1.在輸入數(shù)據(jù)時,應(yīng)先把P0口置1,使兩個輸出FET關(guān)斷,使管腳“浮置”,成為高阻狀態(tài),這樣才能正確的輸入數(shù)據(jù),這就是所謂的準雙向口;2.P0口能夠以吸收電流的方式驅(qū)動8個LSTTL負載;3.此腳作輸入口(事先必須對它寫“1”)(記憶!);4.P0口作為輸出口時,上管截止,P0口內(nèi)部無上拉電阻,做為普通I/O口使用時,外部一般接10k上拉電阻(記憶)Note:21DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)據(jù)控制=1引腳P0.X34控制=1時,此腳作地址/數(shù)據(jù)復(fù)用口:(1)輸出地址/數(shù)據(jù)=0時1011=0導(dǎo)通截止=0Vcc

尋址外部程序存儲器時分時作為雙向8位數(shù)據(jù)口和輸出低8位地址復(fù)用口;通過分時操作,先傳送低8位地址,利用ALE信號的下降沿將地址鎖存,然后作為8位雙向數(shù)據(jù)總線使用,用來傳送8位數(shù)據(jù);21DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)21DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)據(jù)控制=1引腳P0.X34控制=1時,此腳作地址/數(shù)據(jù)復(fù)用口:(2)輸出地址/數(shù)據(jù)=1時1100=1截止導(dǎo)通=1Vcc21DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)21DQCK/Q讀引腳=1讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)據(jù)控制=1引腳P0.X34控制=1時,此腳作地址/數(shù)據(jù)復(fù)用口:(3)輸入數(shù)據(jù)時,輸入指令將使引腳與內(nèi)部總線直通Vcc21DQCK/Q讀引腳=1讀鎖存器寫鎖存器內(nèi)部總線地址/數(shù)B、P1口的位結(jié)構(gòu)P1口由于只能作為I/O口使用,因而輸出控制電路結(jié)構(gòu)同P0口不同。B、P1口的位結(jié)構(gòu)P1口由于只能作為I/O口使用,因而輸出控P1.0--P1.7:內(nèi)置了上拉電阻的8位準雙向I/O口輸出時一切照常,僅在作輸入口用時要先對其寫“1”(記憶!SetbP1.0movp1,#01h)。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻P1.0--P1.7:內(nèi)置了上拉電阻的8位準雙向I/O口2121DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸出數(shù)據(jù)=1時110截止=1Note:1)P1口能夠驅(qū)動4個LSTTL負載2)P1口用作通用雙向I/0口用時,不必再外接上拉電阻,當用作輸入用時,和P0口一樣,為了避免誤讀,必須首先向?qū)?yīng)的輸出寄存器寫入“1”,使FET截至(記憶!)21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線Vcc引腳P121DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸出數(shù)據(jù)=0時001=0導(dǎo)通21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線Vcc引腳P121DQCK/Q讀引腳=1讀鎖存器寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸入數(shù)據(jù)時,要先對其寫“1”110截止21DQCK/Q讀引腳=1讀鎖存器寫鎖存器內(nèi)部總線Vcc引21DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸入數(shù)據(jù)時,要先對其寫“1”001導(dǎo)通21DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線Vcc引簡單測控實例原理圖簡單測控實例原理圖P1.3作輸入端口光路通暢,R亮

2K

光路阻斷,R暗

400K

R亮<2.2K

R暗

>250K

P1.3作輸入端口光路通暢,R亮2KR亮<2.2KJOB3:CLRP1.1;亮綠燈REDO:SETBP1.3;P1.3作輸入口必先置1CHECK:JNBP1.3,CHECK;檢測通道是否被阻斷?LOOP:…………;有入侵者,報警!

AJMPREDO;再跳回去檢測任務(wù)三:紅外防盜報警P1.3口用于輸入狀態(tài)檢測的語句:

R亮<2.2K

,紅外線光路通暢時,P1.3端=低電平R暗>250K

,紅外線光路阻斷時,P1.3端=高電平JOB3:CLRP1.1;亮綠燈任務(wù)三:P1口只作為通用的I/O口使用,在電路結(jié)構(gòu)上與P0口有兩點區(qū)別:(1)因為P1口只傳送數(shù)據(jù),所以不再需要多路轉(zhuǎn)接開關(guān)MUX。(2)由于P1口用來傳送數(shù)據(jù),因此輸出電路中有上拉電阻,這樣電路的輸出不是三態(tài)的,所以P1口是準雙向口。因此:(1)P1口作為輸出口使用時,與P0口不同的是,外電路無需再接上拉電阻。(2)P1口作為輸入口使用時,應(yīng)先向其鎖存器先寫入“1”,使輸出驅(qū)動電路的FET截止。P1口只作為通用的I/O口使用,C、P2口位結(jié)構(gòu)P2口既可用作I/O口,也可用作高8位地址總線。C、P2口位結(jié)構(gòu)P2口既可用作I/O口,也可用作高8位地址總

在實際應(yīng)用中,因為P2口用于為系統(tǒng)提供高位地址,因此同P0口一樣,在口電路中有一個多路轉(zhuǎn)接開關(guān)MUX。但MUX的一個輸入端不再是“地址/數(shù)據(jù)”,而是單一的“地址”,這是因為P2口只作為地址線使用。當P2口用作為高位地址線使用時,多路轉(zhuǎn)接開關(guān)應(yīng)接向“地址”端。正因為只作為地址線使用,口的輸出用不著是三態(tài)的,所以,P2口也是一個準雙向口。此外,P2口也可以作為通用I/O口使用,這時,多路轉(zhuǎn)接開關(guān)接向鎖存器Q端。在實際應(yīng)用中,因為P2口用于為系統(tǒng)提供高位地址,P2.0—P2.7:內(nèi)置了上拉電阻的8位準雙向I/O

尋址外部程序存儲器時輸出高8位地址;不接外部程序存儲器時可作為8位準雙向I/O口使用。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線地址高8位控制引腳P2.X3內(nèi)部上拉電阻VccP2.0—P2.7:內(nèi)置了上拉電阻的8位準雙向I/O21D21DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址高8位控制

引腳P2.X控制=0時,此腳作通用輸出口:輸出=1時110截止3內(nèi)部上拉電阻11Vcc=1=0Note:P2口能夠驅(qū)動4個LSTTL負載21DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址高821DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址高8位控制

引腳P2.X控制=0時,此腳作通用輸出口:輸出=0時001導(dǎo)通3內(nèi)部上拉電阻00Vcc=0=021DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址高821DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址高8位控制=1

引腳P2.X控制=1時,此腳作高8位地址A8—A15輸出口:當輸出=1時10截止3內(nèi)部上拉電阻1=1Vcc=121DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址高821DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址高8位控制=1

引腳P2.X01導(dǎo)通3內(nèi)部上拉電阻0=0Vcc=0控制=1時,此腳作高8位地址A8—A15輸出口:當輸出=0時21DQCK/Q讀引腳=0讀鎖存器寫鎖存器內(nèi)部總線地址高8D、P3口位結(jié)構(gòu)P3口既可用I/O口,又分別具有第二功能,但二者不能混用,其第二功能如下表所示。D、P3口位結(jié)構(gòu)P3口既可用I/O口,又分別具有第二功能,但P3.0—P3.7:內(nèi)置了上拉電阻的準雙向I/0口它具有特定的第二功能。在不使用它的第二功能時它就是普通的通用準雙向I/O口。21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線第二功能輸出引腳P3.X3內(nèi)部上拉電阻Vcc第二功能輸入4P3.0—P3.7:內(nèi)置了上拉電阻的準雙向I/0口21DQC21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線第二功能輸出(WR,RD,TxD)引腳P3.X3內(nèi)部上拉電阻Vcc4第二功能輸出時,內(nèi)部自動D=1111反相器21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線第二功能輸出引21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線此端自動=1引腳P3.X3內(nèi)部上拉電阻Vcc

第二功能輸入(RxD,T0,T1,INT0,INT1)4第二功能輸入時,信號經(jīng)緩沖器4直接進入內(nèi)總線1110截止21DQCK/Q讀引腳讀鎖存器寫鎖存器內(nèi)部總線此端自動=1引P3口第二功能表(重要)引腳第二功能P3.0RxD:串行口接收數(shù)據(jù)輸入端P3.1TxD:串行口發(fā)送數(shù)據(jù)輸出端P3.2INT0:外部中斷申請輸入端0P3.3INT1:外部中斷申請輸入端1P3.4T0:外部計數(shù)脈沖輸入端0P3.5T1:外部計數(shù)脈沖輸入端1P3.6WR:寫外設(shè)控制信號輸出端P3.7RD:讀外設(shè)控制信號輸出端P3口第二功能表(重要)引腳第二功能P3.

第二功能信號有輸出和輸入兩類,分兩種情況說明。(1)對作為第二功能輸出的引腳,當作通用的I/O口使用時,電路中的“第二輸出功能”線應(yīng)保持高電平,與非門開通,以使鎖存器的Q端輸出通路保持暢通。當輸出第二功能信號,該鎖存器應(yīng)預(yù)先置“1”,使與非門對“第二輸出功能”信號的輸出是暢通的,從而實現(xiàn)第二功能信號的輸出。(2)對作為第二功能輸入的引腳,在口線引腳的內(nèi)部增加了一個緩沖器,輸入的信號就從這個緩沖器的輸出端取得。而作為通用的I/O口線使用的輸入,仍取自三態(tài)緩沖器的輸出端??偟膩碚f,P3口無論是作為輸入口使用還是第二功能信號的輸入,鎖存器輸出和“第二輸出功能”線都應(yīng)保持高電平。第二功能信號有輸出和輸入兩類,分兩種情況說明。P0~P3端口功能總結(jié)使用中應(yīng)注意的問題:(1)P0~P3口都是并行I/O口,都可用于數(shù)據(jù)的輸入和輸出,但P0口和P2口除了可進行數(shù)據(jù)的輸入/輸出外,通常用來構(gòu)建系統(tǒng)的數(shù)據(jù)總線和地址總線,所以在電路中有一個多路轉(zhuǎn)接開關(guān)MUX,以便進行兩種用途的轉(zhuǎn)換。而P1口和P3口沒有構(gòu)建系統(tǒng)的數(shù)據(jù)總線和地址總線的功能,因此,在電路中沒有多路轉(zhuǎn)接開關(guān)MUX。由于P0口可作為地址/數(shù)據(jù)復(fù)用線使用,需傳送系統(tǒng)的低8位地址和8位數(shù)據(jù),因此MUX的一個輸入端為“地址/數(shù)據(jù)”信號。而P2口僅作為高位地址線使用,不涉及數(shù)據(jù),所以MUX的一個輸入信號為“地址”。P0~P3端口功能總結(jié)(2)在4個口中只有P0口是一個真正的雙向口,P1~P3這3個口都是準雙向口。原因是在應(yīng)用系統(tǒng)中,P0口作為系統(tǒng)的數(shù)據(jù)總線使用時,為保證數(shù)據(jù)的正確傳送,需要解決芯片內(nèi)外的隔離問題,即只有在數(shù)據(jù)傳送時芯片內(nèi)外才接通;不進行數(shù)據(jù)傳送時,芯片內(nèi)外應(yīng)處于隔離狀態(tài)。為此,要求P0口的輸出緩沖器是一個三態(tài)門。在P0口中輸出三態(tài)門是由兩只場效應(yīng)管(FET)組成,所以說它是一個真正的雙向口。而其它的三個口P1~P3中,上拉電阻代替P0口中的場效應(yīng)管,輸出緩沖器不是三態(tài)的,因此不是真正的雙向口,只能稱其為準雙向口(3)P3口的口線具有第二功能,為系統(tǒng)提供一些控制信號。因此在P3口電路增加了第二功能控制邏輯。這是P3口與其它各口的不同之處。(2)在4個口中只有P0口是一個真正的雙向口,P1~P3這3并行口的負載能力

P0、P1、P2、P3口的電平與CMOS和TTL電平兼容。P0口的每一位口線可以驅(qū)動8個LSTTL負載。在作為通用I/O口時,由于輸出驅(qū)動電路是漏極開路方式,由集電極開路(OC門)電路或漏極開路電路驅(qū)動時需外接上拉電阻;當作為地址/數(shù)據(jù)總線使用時,口線輸出不是開漏的,無須外接上拉電阻。并行口的負載能力P0、P1、P2、P3口的電平與CMOS和P1、P2、P3口的每一位能驅(qū)動4個LSTTL負載。它們的輸出驅(qū)動電路設(shè)有內(nèi)部上拉電阻,所以可以方便地由集電極開路(OC門)電路或漏極開路電路所驅(qū)動,而無須外接上拉電阻(見圖片)。

由于單片機口線僅能提供幾毫安的電流,當作為輸出驅(qū)動一般的晶體管的基極時,應(yīng)在口與晶體管的基極之間串接限流電阻。P1、P2、P3口的每一位能驅(qū)動4個LSTTL負載。它們的輸排阻的實物圖片

排阻的實物圖片ALEWR

RDP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7指令1:MOVP1,#00H指令2:MOVP1,#0FFH指令3:MOVP1,#0AAH000000001111111101010101E輸出舉例指令4:CLRP1.0指令5:SETBP1.0111111110+5VALEWR

RDP1.0P1.1P1.2P1.31111111111111111F輸入舉例S0+5V4.7kWALEWR

RDP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7讀端口:MOVP3,#11111111BMOVA,P389C51××××××××寄存器A注:當I/O端口作為輸入使用時,需先向端口寫入“1”,使內(nèi)部的FET截止,再讀入引腳的狀態(tài)。你知道P3.4對應(yīng)寄存器A哪一位嗎?P3.4你知道這是為什么嗎?11111111011111111111111111F輸入舉例S0+5V4.一、MCS-51單片機信號引腳簡介

P3口線的第二功能VCCVSSXTAL2

XTAL1RSTP0.0

P0.1

P0.2P0.3P0.4P0.5P0.6P0.7P1.0

P1.1

P1.2P1.3P1.4P1.5P1.6P1.7P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0ALEP3.0

P3.1

P3.2P3.3P3.4P3.5P3.6P3.7(2)、振蕩電路:XTAL1、XTAL2(3)、復(fù)位引腳:RST(4)、并行口:P0、P1、P2、P3(7)、ALE:地址鎖存控制信號(1)、電源線:VCC(+5V)、VSS(地)EAPSEN(5)、EA:訪問程序存儲控制信號(6)、PSEN:外部ROM讀選通信號RXD/

TXD/

INT0/INT1/

T0/

T1/

WR/

RD/1

2

3

4

5

6

7

8

9

10111213141516171819

2040

39

38

37

36

35

34

33

32

313029282726252424222180318051875189C511、管腳圖2-3 MCS-51單片機的引腳及其片外總線結(jié)構(gòu)一、MCS-51單片機信號引腳簡介P3口線的第二功能VCC二、片外三總線結(jié)構(gòu)1、地址總線(AB)由P2,P0提供16位地址2、數(shù)據(jù)總線(DB)由P0口提供8位數(shù)據(jù)3、控制總線(CB)由P3口和RST、EA、ALE、PSEN組成二、片外三總線結(jié)構(gòu)1、地址總線(AB)單片機原理及應(yīng)用1-3課件2-4 MCS-51單片機的復(fù)位操作與復(fù)位電路一、復(fù)位操作

在振蕩電路工作時,在RST引腳上加上一個至少保持2個機器周期的高電平,單片機完成復(fù)位。其復(fù)位電路結(jié)構(gòu)和內(nèi)容如圖所示

復(fù)位電路,復(fù)位可分為上電自動復(fù)位和按鍵復(fù)位兩種方式。復(fù)位不影響RAM內(nèi)容。使PC指向0000H,重新執(zhí)行程序。SFR的復(fù)位狀態(tài)見P542-4 MCS-51單片機的復(fù)位操作與復(fù)位電路一、復(fù)位操作復(fù)位電路復(fù)位電路復(fù)位電路結(jié)構(gòu)和內(nèi)容復(fù)位電路結(jié)構(gòu)和內(nèi)容2-5MCS-51單片機時鐘電路與的時序一、時鐘電路

時鐘電路是用于產(chǎn)生單片機工作時所必需的時鐘控制信號。2-5MCS-51單片機時鐘電路與的時序一、時鐘電路二、時序在執(zhí)行指令的過程中,CPU的控制器發(fā)出的一系列特定的控制信號在時間上的相互關(guān)系。二、時序

二、時序

區(qū)別幾個概念1、振蕩周期(時鐘周期):振蕩信號周期,fOSC2、狀態(tài)周期:又叫S周期,可分為P1和P2兩拍,其中P1通常完成邏輯操作,而P2通常完成內(nèi)部寄存器與寄存器間的數(shù)據(jù)傳輸,fosc/2。3、機器周期:單片機的基本操作周期,fosc/12。包含六個狀態(tài)周期。二、時序

區(qū)別幾4、指令周期:執(zhí)行一條指令的周期,分別有單、雙和四機器周期指令。5、ALE信號:可作為一種周期信號使用。4、指令周期:執(zhí)行一條指令的周期,分別有單、雙和四機器周期指三、MCS-51指令的取指/執(zhí)行時序

指令的處理都包括取指(取操作碼或操作數(shù))和執(zhí)行(指令的邏輯功能)兩個階段,每出現(xiàn)一次ALE信號,CPU就進行一次取指操作。 三、MCS-51指令的取指/執(zhí)行時序 指令的處理都包括取指指令寄存器譯碼地址譯碼程序計數(shù)器地址寄存器累加器A運算器①②存儲器內(nèi)部數(shù)據(jù)總線外部地址總線AB數(shù)據(jù)緩沖器外部數(shù)據(jù)總線DB寄存器區(qū)外部控制總線CB內(nèi)部控制信號時鐘及清零三、MCS-51指令的取指/執(zhí)行時序取指過程例:MOVA,#09H74H

09H;把09H送到累加器A中執(zhí)行過程PC=0000H0001H0000H0002H0111010000001001(PC)(PC)0001H0002H0000H外部控制總線CB取指過程(PC)執(zhí)行過程指令的處理都包括取指(取操作碼或操作數(shù))和執(zhí)行(指令的邏輯功能)兩個階段,每出現(xiàn)一次ALE信號,CPU就進行一次取指操作地址程序計數(shù)器地址寄存器累加器A運算器外部地址總線AB數(shù)據(jù)緩四、訪問外部ROM時序在S1P2時刻ALE信號有效。2.P0口送出ROM的低8位地址,P2口送出高8位地址,A7-A0只持續(xù)到S2結(jié)束,故在外部要用鎖存器,可用ALE作為鎖存信號,A15-A8在整個讀指令過程中都有效3.在S3P1時刻/PSEN開始有效,可以用它選通外部ROM的使能端,被選種的ROM單元的內(nèi)容,從P0口讀入CPU,然后/PSEN失效。4.在S4P2后開始第二次讀入,其過程與第一次相同。四、訪問外部ROM時序在S1P2時刻ALE信號有效。2.P0五、訪問外部RAM時序在同一機器周期的S5狀態(tài)產(chǎn)生的ALE信號的下降沿,將P0總線上出現(xiàn)的低8位地址鎖存在外部的鎖存器中。讀數(shù)據(jù)五、訪問外部RAM時序在同一機器周期的S5狀態(tài)產(chǎn)生的ALE信尋址方式數(shù)據(jù)傳送類指令算術(shù)運算類指令邏輯操作類指令控制轉(zhuǎn)移類指令位操作指令常用偽指令第

MCS

51

指令系統(tǒng)

本章內(nèi)容SingleChipMicrocomputer尋址方式第

MCS

51

指令系統(tǒng)本章內(nèi)容Si概述MCS-51系列單片機的指令系統(tǒng)專用于51系列單片機,共有111條指令,具在豐富靈活的尋址方式,其指令格式與8086的指令系統(tǒng)相同,甚至某些指令還完全相同。使用時應(yīng)注意區(qū)別。在111條指令中,從存儲空間的占用上看,單字節(jié)指令占49條,雙字節(jié)指令占45條,三字節(jié)指令占17條;從執(zhí)行時間上看,在111條指令中,單機器周期指令占64條,雙機器周期指令占45條,僅乘法和除法兩條指令為四機器周期指令。因而無論是存儲空間的利用率,還是時間的執(zhí)行效率都是較高的,再加上靈活的尋址方式,特別適合于實時測量和控制場合。因而,單片機又常被稱為微控制器。概述MCS-51系列單片機的指令系統(tǒng)專用于51系列單片機§3-1指令的格式及標識操作碼70數(shù)據(jù)或?qū)ぶ贩绞?0雙字節(jié)指令:標號:操作碼操作數(shù)或操作數(shù)地址;注釋單字節(jié)指令:操作碼70三字節(jié)指令:操作碼70數(shù)據(jù)或?qū)ぶ贩绞?0數(shù)據(jù)或?qū)ぶ贩绞?0指令按字節(jié)長度可以分為三種:指令的格式:例如:MOVA,R0例如:MOVA,30H例如:MOVDPTR,#2010H操作碼助記符、目的操作數(shù)、源操作數(shù)是指令的核心部分。方括號中內(nèi)容為可選項,其有無視具體的指令而異。一、指令的格式§3-1指令的格式及標識操作碼70數(shù)據(jù)二、關(guān)于標號

標號不允許只用數(shù)字,而應(yīng)以字母打頭,后面跟數(shù)字,不可使用運算符號,不能同十六進制數(shù)發(fā)生混淆,較好的取名原則是見名知義。便于程序員在調(diào)試程序時更加順利,往往一個標號就是一個功能入口,因而在使用標號時應(yīng)特別小心,用并非每句指令都需要標號。二、關(guān)于標號 標號不允許只用數(shù)字,而應(yīng)以字母打頭,后面跟數(shù)字三、關(guān)于指令中的符號標識符號含義Rn表示當前選定寄存器組的工作寄存器R0~R7Ri表示作為間接尋址的地址指針R0~R1#data表示8位立即數(shù),即00H~FFH#data16表示16位立即數(shù),即0000H~FFFFHaddr16表示16位地址,用于64K范圍內(nèi)尋址addr11表示11位地址,用于2K范圍內(nèi)尋址direct8位直接地址,可以是內(nèi)部RAM區(qū)的某一單元或某一專用功能寄存器的地址Rel帶符號的8位偏移量(-128~+127)Bit位尋址區(qū)的直接尋址位(X)X地址單元中的內(nèi)容,或X作為間接尋址寄存器時所指單元的內(nèi)容←將←后面的內(nèi)容傳送到前面去三、關(guān)于指令中的符號標識符號含義Rn表示當前選定四、關(guān)于注釋

為了增強程序的可讀性,使別人易讀,或防止日久遺忘,可適當加些注釋。注釋由“;”開始。四、關(guān)于注釋 為了增強程序的可讀性,使別人易讀,或防止日久§3-2 尋址方式

在程序行中,操作碼代表了該句指令的功能,而功能的對象卻由操作數(shù)決定,由操作數(shù)指出參與運算的數(shù)或該數(shù)所在的地址。取得操作數(shù)的地址的方法叫做尋址方式。尋址方式與計算機的存儲空間結(jié)構(gòu)是密切相關(guān)的。靈活運用各種尋址方式,可以大大的提高程序的運行效率?!?-2 尋址方式 在程序行中,操作碼代表了該句指令的功能MCS-51基本七種尋址方式MCS-51基本七種尋址方式一、尋址方式(找信方式)我的信在他那!找信去!②①注:找信是尋找信的“地址”!你能說出第二封信的“地址”嗎?一、尋址方式(找信方式)我的信在他那!找信去!②①注:找信是目的地#XXH操作數(shù)MOVP1,#55HMOVA,#01H#55H目的地信寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位尋址目的地#XXH操作數(shù)MOVP1,#55HMOVA,目的地寄存器尋址P31直接尋址P32立即數(shù)尋址P32寄存器間接尋址P33變址尋址P33相對尋址P34位尋址P35內(nèi)部RAM或SFR區(qū)操作數(shù)XXHMOVP1,20H20H目的地20H注:尋址是尋操作數(shù)的“地址”!直接給出地址

20H——直接尋址目的地寄存器尋址P31直接尋址P32立即數(shù)尋址P32寄存器間目的地寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位尋址寄存器目的地操作數(shù)XXHMOVP1,A寄存器R0-R7A

B

DPTR你能說出為什么叫寄存器尋址嗎?目的地寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位尋址MOVP1,@R0目的地寄存器操作數(shù)3AH內(nèi)部RAM3AH65H3AHR0R1

DPTR寄存器間接尋址寄存器目的地2號信在2號箱子里1號你能說出1號箱子和2號箱子分別對應(yīng)內(nèi)存中哪一部分嗎?寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位尋址比較MOVP1,R0③地址是寄存器R0MOVP1,@R0②地址在寄存器R0里MOVP1,20H④地址是內(nèi)存20HMOVP1,#20H①直接將20H這個數(shù)送P1口錯!錯!錯!MOVP1,R0對!尋址比較MOVP1,R0③地址是寄存器R0M尋址比較MOVP1,R0③地址是寄存器R0MOVP1,@R0②地址在寄存器R0里面MOVP1,20H④地址是內(nèi)存20HMOVP1,#20H①直接將20H這個數(shù)送P1口錯!錯!錯!MOVP1,@R0對!尋址比較MOVP1,R0③地址是寄存器R0M尋址比較MOVP1,R0③地址是寄存器R0MOVP1,@R0②地址在寄存器R0里面MOVP1,20HMOVP1,#20H①直接將20H這個數(shù)送P1口錯!錯!錯!MOVP1,20H對!④地址是內(nèi)存20H尋址比較MOVP1,R0③地址是寄存器R0M尋址比較MOVP1,R0③地址是寄存器R0MOVP1,@R0②地址在寄存器R0里MOVP1,20H④地址是內(nèi)存20HMOVP1,#20H①直接將20H這個數(shù)送P1口錯!錯!錯!MOVP1,#20H對!尋址比較MOVP1,R0③地址是寄存器R0M寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位尋址MOVCA,@A+DPTR目的地寄存器操作數(shù)ROM203AH65H203AH基址寄存器2012H變址寄存器34HROM2046H65HADPTRPC2046H寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位目的地寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址XXH位尋址操作數(shù)SJMP54HPC+54HPC2002H······2002H=2056HPC2056H目的地寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位尋址20H······27H21H28H21H20H100000000想一想:如果想使27H單元的第5位置1,該怎么辦呢?寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位單元地址2FH2EH2DH2CH2BH2AH29H28H

26H25H24H23H22H21H20H7F776F675F574F47372F271F170F07

MSB

位地址

LSB7E766E665E564E46

362E261E160E067D756D655D554D45352D251D150D057C746C645C544C44

342C241C140C047B736B635B534B43

332B231B130B037A726A625A524A42

322A221A120A027971696159514941

312921191109017870686058504840

30282018100800位尋址地址表

例:SETB3DH

3D

3C

3B3F

3E3A

393827H單元地址2FH7FMSB寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位尋址SETB3DH20H······27H21H28H21H20H000000010寄存器尋址直接尋址立即數(shù)尋址寄存器間接尋址變址尋址相對尋址位§3-3MCS—51指令系統(tǒng)的分類3.1數(shù)據(jù)傳送指令(29條)

3.2算術(shù)運算指令(24條)3.3邏輯運算指令(24條)3.4控制轉(zhuǎn)移指令(17條)3.5位操作指令(17條)3.6常用偽指令(17條)§3-3MCS—51指令系統(tǒng)的分類3.1數(shù)據(jù)傳送指令(目的地址源地址數(shù)據(jù)MOV<目的操作數(shù)>,<源操作數(shù)>MOVA,#20H,ARndirect1@RiARndirect2@Ri#dataARndirect2@Ri#dataMOVRnA#datadirect2direct1ARndirect2@Ri#data@RiAdirect2#data20HA3.1數(shù)據(jù)傳送指令(29條不影響標志位CYACOV)

——內(nèi)部RAM8位數(shù)據(jù)傳送指令(15條)

目的地址源地址數(shù)據(jù)MA累加器Direct直接尋址@Ri間接尋址Rn寄存器#data立即數(shù)Rn: R0~R7@Ri: @R0,@R1#data: 8位立即數(shù)#data16:16位立即數(shù)direct: 直接地址A累加器Direct直接尋址@Ri間接尋址Rn寄存器NOTE:MOVA,#0FFH (√)MOVA,#18H (√)MOVA,#12 (√)MOVA,#13D (√)MOVA,#00101111B (√)MOVR2,R1(X)MOVA,@Ri+1(X)MOVA,@R3(X)MOV@R0,@R1(X)MOVA,#FEH (X)MOVA,#0AF (X)MOVA,#12 (X)MOVA,#13D (X)MOVA,#00101111 (X)NOTE:MOVA,#FEH (X)3.1數(shù)據(jù)傳送指令(29條)

——內(nèi)部16位數(shù)據(jù)傳送指令(1條)

MOVDPTR,#data16

——外部RAM數(shù)據(jù)傳送指令(4條)

MOVX<目的操作數(shù)>,<源操作數(shù)>,A@DP

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論