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

下載本文檔

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

文檔簡介

第四章80C51單片機的功能單元并行I/O接口定時器/計數(shù)器串行接口中斷系統(tǒng)第四章80C51單片機的功能單元并行I/O接口定時器/4.1并行I/O接口4.1并行I/O接口內(nèi)部上拉電阻AB4.1.1P1口P1口是一個多功能的8位口,可以按字節(jié)訪問,也可以按位訪問。一.位結(jié)構(gòu)與工作過程分析1.位結(jié)構(gòu)Q0內(nèi)部上拉電阻AB4.1.1P1口P1口是一個多功能的8位2.P1口的功能和特點(1)輸出鎖存,輸出時沒有條件;(2)輸入緩沖,輸入時需要先將該口設(shè)為輸入狀態(tài),先輸出1;(3)工作過程中無高阻懸浮狀態(tài),即該口不是輸入口就是輸出口;(4)P1口能驅(qū)動4個TTL負載。2.P1口的功能和特點(1)輸出鎖存,輸出時沒有條件;(23.P1口的操作(1)字節(jié)操作輸出:MOV P1,A;(P1)(A)MOV P1,#data;(P1)#dataMOV P1,direct;(P1)(direct)輸入:MOV A,P1;(A)(P1)MOV direct,P1;(direct)(P1)3.P1口的操作(1)字節(jié)操作輸出:MOV P1,A輸入、輸出:MOV P1.i,C;P1.iCYMOV C,P1.i;CYP1.i判跳:JB P1.i,rel;P1.i=1,跳轉(zhuǎn)JBC P1.i,rel;P1.i=1,跳轉(zhuǎn),且P1.i0邏輯運算:ANL C,P1.i;CY(P1.i與CY)ORL C,P1.i;CY(P1.i+CY)(2)位操作置位、清除:SETB P1.i;P1.i1CLR P1.i;P1.i0輸入、輸出:MOV P1.i,C(3)讀引腳操作在響應(yīng)CPU輸出的讀引腳信號時,端口本身的電平值通過緩沖器進入內(nèi)部總線。對于這類指令,執(zhí)行前必須先將端口鎖存器置1,使A點為高電平。MOV A,P1;(A)(P1)MOV direct,P1;(direct)(P1)(4)讀鎖存器操作在執(zhí)行讀鎖存器的指令時,CPU首先完成將鎖存器的值通過緩沖器讀入內(nèi)部,進行修改,然后重寫到鎖存器中去,這就是“讀—修改—寫”指令。這類指令包括所有的口邏輯操作(ANL、ORL、XRL)和位操作(JBC、CPL、MOV、SETB、CLR)指令。(3)讀引腳操作在響應(yīng)CPU輸出的讀引腳信號時,端口本身的電4.P1口的多功能線P1.0——定時器/計數(shù)器2的外部輸入端T2;P1.1——定時器/計數(shù)器2的外部控制端T2EX。在80C52中,P1.0和P1.1口線是多功能的4.P1口的多功能線P1.0——定時器/計數(shù)器2的外部輸入4.1.2P3口P3口是一個多功能的8位口,可以按字節(jié)訪問,也可以按字訪問。一.位結(jié)構(gòu)與工作過程分析1.位結(jié)構(gòu)Q0ABC上拉電阻4.1.2P3口P3口是一個多功能的8位口,可以按字節(jié)訪2.P3口的功能和特點P3.0——RXD(串行口輸入)P3.2——INT0(外部中斷0請求)P3.3——INT1(外部中斷1請求)P3.4——T0(定時/計數(shù)器0的外部輸入)P3.5——T1(定時/計數(shù)器1的外部輸入)P3.1——TXD(串行口輸出)P3.6——WR(片外數(shù)據(jù)存儲器寫選通信號輸出)P3.7——RD(片外數(shù)據(jù)存儲器讀選通信號輸出)復(fù)用輸入功能復(fù)用輸出功能2.P3口的功能和特點P3.0——RXD(串行口輸入)P34.1.3P2口P2口是一個多功能的8位口,可以按字節(jié)訪問,也可以按位訪問。一.位結(jié)構(gòu)與工作過程分析1.位結(jié)構(gòu)Q0A上拉電阻BC多路開關(guān)4.1.3P2口P2口是一個多功能的8位口,可以按字節(jié)訪(1)作I/O口使用時,P2口為一準雙工口,功能與P1相同。2.P2口的功能和特點(2)作地址輸出時,P2口可以輸出程序存儲器或片外數(shù)據(jù)存儲器的高8位地址,與P0口輸出的低8位地址一起構(gòu)成16位地址線,從而可分別尋址64KB的程序存儲器或片外數(shù)據(jù)存儲器。(3)P2口能驅(qū)動4個TTL負載。(1)作I/O口使用時,P2口為一準雙工口,功能與P1相同。4.1.4P0口P0口是一個多功能的8位口,可以按字節(jié)訪問,也可以按位訪問。一.位結(jié)構(gòu)與工作過程分析1.位結(jié)構(gòu)Q0A4.1.4P0口P0口是一個多功能的8位口,可以按字節(jié)訪2.P0口的功能和特點(1)作I/O口使用相當于一個真正的雙向口:輸出鎖存、輸入緩沖,但輸入時需先將口置1;每根口線可以獨立定義為輸入或輸出。它具有雙向口的一切特點。(2)作地址/數(shù)據(jù)復(fù)用總線使用此時,P0口為一個半雙工口。作地址/數(shù)據(jù)復(fù)用總線用時,口不能逐位定義輸入/輸出。作數(shù)據(jù)總線用,輸入/輸出8位數(shù)據(jù);作地址總線用,輸出低8位地址。(3)P0口能驅(qū)動8個TTL負載2.P0口的功能和特點(1)作I/O口使用相當于一個真正的4.2

定時器/計數(shù)器定時器/計數(shù)器的核心是加1計數(shù)器,其基本功能是加1功能:(1)在單片機的T0或T1引腳上施加一個1到0的跳變,計數(shù)器增1,即計數(shù)功能。(2)在單片機內(nèi)部對機器周期或其分頻進行計數(shù),從而得到定時,這就是定時功能。一、概述4.2定時器/計數(shù)器定時器/計數(shù)器的核心是加1計數(shù)器,其基因為一個機器周期固定由12個振蕩周期構(gòu)成,所以,計數(shù)頻率為振蕩頻率的1/12。作計數(shù)器用時,在其相應(yīng)外部引腳上,每有一個由1到0的跳變,其計數(shù)寄存器的內(nèi)容便要加1。因為辨識一個1到0的跳變需要兩個機器周期,故最高計數(shù)頻率為振蕩頻率的1/24。作定時器用時,其計數(shù)寄存器值每過一個機器周期加1。因此,可以認為定時器是對機器周期的計數(shù)。因為一個機器周期固定由12個振蕩周期構(gòu)成,所以,計數(shù)頻率為振8051內(nèi)含定時器0和定時器1兩個16位定時/計數(shù)器;8052還有一個定時器2,共有三個定時/計數(shù)器。定時器0和定時器1有四種工作方式可供選擇;定時器2有三種工作方式。

定時器0和定時器1的工作方式方式0方式1方式2方式3

定時器2的工作方式

<自學(xué)>捕捉方式自重裝方式波特率發(fā)生器方式8051內(nèi)含定時器0和定時器1兩個16位定時/計數(shù)器;805二、定時器/計數(shù)器T0、T11.定時器/計數(shù)器T0、T1的內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)計數(shù)器TH0、TL0和TH1、TL1特殊功能寄存器TMOD、TCON時鐘分頻器輸入引腳T0、T1、/INT1、/INT0二、定時器/計數(shù)器T0、T11.定時器/計數(shù)器T0、T1的定時/計數(shù)器的功能與工作方式選擇是通過定時器方式寄存器TMOD(TimerMode)進行的。GATE——門控位——功能選擇位,0—定時,1—計數(shù)2.定時器/計數(shù)器T0、T1的特殊功能寄存器GATE=0時,僅由TR0和TR1置位來啟動定時器T0和T1。GATE=1時,由外部中斷引腳/INT0、/INT1和TR0、TR1來啟動定時器。當/INT0引腳為高電平時,TR0置位,啟動定時器T0;當/INT1引腳為高電平時,TR1置位,啟動定時器T1。定時/計數(shù)器的功能與工作方式選擇是通過定時器方式寄存器TMOM1M000011011方式0方式1方式2方式3定時器/計數(shù)器T0、T1的四種工作方式M1M000011011方式0方式1方式2方式3定時器/計數(shù)3.定時/計數(shù)器控制寄存器TCON(TimerControl)TF1TR1TF0TR0IE1IT1TE0IT076543210定時器1溢出標志定時器1運行控制位定時器0溢出標志定時器0運行控制位/INT0方式選擇/INT0中斷標志/INT1方式選擇/INT1中斷標志3.定時/計數(shù)器控制寄存器TCON(TimerCon三.定時器/計數(shù)器T0、T1的工作方式(1)工作方式0方式0是一個13位定時/計數(shù)工作方式啟停控制:GATE=0,TR0單獨控制;

GATE=1,TR0和INT0共同控制三.定時器/計數(shù)器T0、T1的工作方式(1)工作方式0(2)工作方式1方式1是一個16位定時/計數(shù)工作方式(2)工作方式1方式1是一個16位定時/計(3)工作方式2TL0作為8位計數(shù)器用,TH0用以保存初始值。TH0的值由軟件預(yù)置。(3)工作方式2TL0作為8位計數(shù)器用,TH0用以保存初始(4)工作方式3定時器/計數(shù)器0建立起兩個獨立的計數(shù)器TL0和TH0。TL0既可定時,也可計數(shù);TH0固定執(zhí)行定時功能。(4)工作方式3定時器/計數(shù)器0建立起兩個獨立的計數(shù)器TL(4)工作方式3定時器/計數(shù)器1(4)工作方式3定時器/計數(shù)器1四.定時器/計數(shù)器的編程和使用1.定時器/計數(shù)器溢出率的計算定時器/計數(shù)器運行前,在其中預(yù)先置入的常數(shù),稱為定時常數(shù)或計數(shù)常數(shù)(TC)。其中:四.定時器/計數(shù)器的編程和使用1.定時器/計數(shù)器溢出率對于T0和T1:方式0L=13213=8192方式1L=16216=65536方式2L=828=256定時時間的倒數(shù)即為溢出率,即:對于T0和T1:方式0L=13根據(jù)既定的定時時間t,計算出TC值,并將其轉(zhuǎn)換成二進制數(shù)TCB,然后再分別送入TH0/TH1,TL0/TL1對于定時器/計數(shù)器T0、T1:方式0:TCB=TCH+TCL,TCH——高8位,TCL——低5位

MOV THi,#TCH;送高8位

MOVTLi,#TCL;送低5位方式1:TCB=TCH+TCL,TCH——高8位,TCL——低8位

MOV THi,#TCH;送高8位

MOVTLi,#TCL;送低5位方式2:TCB——8位

MOV THi,#TCBMOVTLi,#TCB根據(jù)既定的定時時間t,計算出TC值,并將其轉(zhuǎn)換成二進制數(shù)TC2.定時器/計數(shù)器的編程寫TMOD,只能用字節(jié)尋址。設(shè)置定時器/計數(shù)器的工作方式(M1,M0)、功能選擇(C/T)及是否使用門控(GATE)。將時間常數(shù)或計數(shù)常數(shù)寫入THi和TLi,也只能用字節(jié)尋址。啟動定時或計數(shù),即寫TCON,可用字節(jié)尋址也可用位尋址。如:SETBTRi;啟動定時器

SETBTCON.4(T0)SETBTCON.6(T1)CLRTRi;停止定時器定時器中斷開放和禁止,即寫IE(IE.,IE.3,IE.1)

如:SETBETi;允許中斷ETi

SETBEA;開放中斷

CLRETi;禁止中斷Eti

CLREA;關(guān)閉中斷2.定時器/計數(shù)器的編程寫TMOD,只能用字節(jié)尋址。將(3)程序設(shè)計例1

fosc=6MHz,使用T1方式0產(chǎn)生周期500us的等寬正方波連續(xù)脈沖,由P1.0輸出。(1)計算計數(shù)初值TC=8067=1111110000011BTH1=0FCHTL1=03H(2)TMOD初始化T1,與INT1無關(guān),定時,方式0操作TMOD高4位,GATE=0,C/T=0,M1M0=00(3)程序設(shè)計例1fosc=6MHz,使用T1方式0產(chǎn)生(3)程序設(shè)計ORG0000HLJMPMAINORG0050HMAIN:MOVTMOD,#00HMOVTH1,#0FCHMOVTL1,#03HMOVIE,#0MOVIP,#0SETBTR1LOOP:JBCTF1,LOOP1AJMPLOOPLOOP1:MOVTH1,#0FCHMOVTL1,#03HCPLP1.0AJMPLOOPORG0000HLJMPMAINORG001BHMOVTH1,#0FCHMOVTL1,#03HCPLP1.0RETIORG0050HMAIN:MOVTMOD,#00HMOVTH1,#0FCHMOVTL1,#03HMOVIE,#88HMOVIP,#0SETBTR1LOOP:SJMPLOOP中斷方式查詢方式(3)程序設(shè)計ORG0000HOR(3)程序設(shè)計例2fosc=6MHz,使用T1方式1產(chǎn)生周期500us的等寬正方波連續(xù)脈沖,由P1.0輸出。(1)計算計數(shù)初值(2)TMOD初始化TC=65411=FF83HTH1=0FFHTL1=83HT1,與INT1無關(guān),定時,方式1操作TMOD高4位,GATE=0,C/T=0,M1M0=01(3)程序設(shè)計例2fosc=6MHz,使用T1方式1產(chǎn)生周(3)程序設(shè)計ORG0000HLJMPMAINORG0050HMAIN:MOVTMOD,#10HMOVTH1,#0FFHMOVTL1,#83HMOVIE,#0MOVIP,#0SETBTR1LOOP:JBCTF1,LOOP1AJMPLOOPLOOP1:MOVTH1,#0FFHMOVTL1,#83HCPLP1.0AJMPLOOPORG0000HLJMPMAINORG001BHMOVTH1,#0FFHMOVTL1,#83HCPLP1.0RETIORG0050HMAIN:MOVTMOD,#10HMOVTH1,#0FFHMOVTL1,#83HMOVIE,#88HMOVIP,#0SETBTR1LOOP:SJMPLOOP中斷方式查詢方式(3)程序設(shè)計ORG0000HOR(3)程序設(shè)計例3循環(huán)定時應(yīng)用

fosc=6MHz,使用T0方式2產(chǎn)生100us定時,

在P1.0輸出周期為200us的連續(xù)正方波脈沖。(1)計算計數(shù)初值(2)TMOD初始化TC=0CEHTH0=

0CEHTL0=

0CEHT0,與INT0無關(guān),定時,方式2操作TMOD低4位,GATE=0,C/T=0,M1M0=10(3)程序設(shè)計例3循環(huán)定時應(yīng)用(1)計算計數(shù)初值(2)TM(3)程序設(shè)計ORG0000HLJMPMAINORG0050HMAIN:MOVTMOD,#02HMOVTH0,#0CEHMOVTL0,#0CEHMOVIE,#0MOVIP,#0SETBTR0LOOP:JBCTF0,LOOP1AJMPLOOPLOOP1:CPLP1.0AJMPLOOPORG0000HLJMPMAINORG000BHCPLP1.0RETIORG0050HMAIN:MOVTMOD,#02HMOVTH0,#0CEHMOVTL0,#0CEHMOVIE,#82HMOVIP,#0SETBTR0LOOP:SJMPLOOP中斷方式查詢方式(3)程序設(shè)計ORG0000HOR4.3

串行接口一.串行通信基礎(chǔ)知識1.異步串行通信

異步串行通信是以字符為單位的間歇傳輸形式。傳送時按字符進行包裝,為此,在數(shù)據(jù)位之外要增添起始位、奇偶校驗位和停止位,構(gòu)成一個通信幀。

異步通信的幀格式4.3串行接口一.串行通信基礎(chǔ)知識1.異步串行通信異幾點說明:①在串行通信中,信息的兩種狀態(tài)分別以mark和space標志。其中mark譯為標號,對應(yīng)邏輯狀態(tài)1,在發(fā)送器空閑時,數(shù)據(jù)線應(yīng)保持在mark狀態(tài);space譯為空格,對應(yīng)邏輯狀態(tài)0。②起始位。發(fā)送器通過發(fā)送起始位而開始一個字符的傳輸。起始位使數(shù)據(jù)線處于space狀態(tài)。③數(shù)據(jù)位。起始位之后傳送數(shù)據(jù)位。在數(shù)據(jù)位中,低位在前(左),高位在后(右)。由于字符編碼方式不同,數(shù)據(jù)位可以是5、6、7或8位等多種形式。④奇偶校驗位。用于對字符傳送作正確性檢查,因此,奇偶校驗位是可選擇的,共有3種可能,即奇校驗、偶校驗和無校驗,由用戶根據(jù)需要選定。所謂偶校驗,即數(shù)據(jù)位和奇偶校驗位中邏輯1的個數(shù)加起來必須是偶數(shù)(全0也視為偶數(shù)個1)。所謂奇校驗,即數(shù)據(jù)位和奇偶校驗位中邏輯1的個數(shù)加起來必須是奇數(shù)。⑤停止位。停止位在最后,用于標志一個字符傳輸?shù)慕Y(jié)束,對應(yīng)于mark狀態(tài)。停止位可能是1、1.5或2位,在實際應(yīng)用中根據(jù)需要確定。⑥位時間。一個格式位的時間寬度。⑦幀(Frame)。從起始位開始到停止位結(jié)束的全部內(nèi)容稱為一幀。異步串行通信是一幀接一幀進行的,傳輸可以是連續(xù)的,也可以是間斷的。幾點說明:2.同步串行通信

為提高傳送速度,把數(shù)據(jù)傳輸按相等的時間間隔分塊進行,在數(shù)據(jù)塊的開始加一些特殊字符,作為發(fā)送和接收雙方的同步標志。由于數(shù)據(jù)塊的位數(shù)較多,為防止錯位,在發(fā)送數(shù)據(jù)時一般同時給出時鐘信號,以保持接收與發(fā)送的同步,這就是同步串行通信。同步串行通信的數(shù)據(jù)格式2.同步串行通信同步串行通信的數(shù)據(jù)格式同步串行通信的數(shù)據(jù)格式有如下特點和要求:

①只在數(shù)據(jù)塊傳輸?shù)拈_始使用同步字符串,作為發(fā)送和接收雙方同步的標志,而在結(jié)束時不需要同步標志。②數(shù)據(jù)字符之間不允許有間隔,當線路空閑或沒有數(shù)據(jù)可發(fā)時,可發(fā)送同步字符串。③數(shù)據(jù)塊內(nèi)各字符的格式必須相同。

同步串行通信比異步串行通信的傳送速度快,但同步串行通信要求收發(fā)雙方在整個數(shù)據(jù)傳輸過程中始終保持同步,這將對硬件提出更高的要求,實現(xiàn)起來難度大一些;而異步串行通信只要求在每幀的短時間內(nèi)保持同步即可,實現(xiàn)起來容易得多。所以同步串行通信適用于數(shù)據(jù)量大、對速度要求比較高的串行通信場合。同步串行通信的數(shù)據(jù)格式有如下特點和要求:(1)單工形式

單工(Simplex)形式的數(shù)據(jù)傳輸是單向的。通信雙方中一方固定為發(fā)送端,另一方則固定為接收端。單工形式的串行通信只需要一條數(shù)據(jù)線,如下圖所示。例如,計算機與打印機之間的串行通信。3.串行通信線路形式(1)單工形式3.串行通信線路形式(2)全雙工形式

全雙工(Full-duplex)形式的數(shù)據(jù)傳輸是雙向的,可以同時發(fā)送和接收數(shù)據(jù),因此,全雙工形式的串行通信需要兩條數(shù)據(jù)線。(2)全雙工形式(3)半雙工形式半雙工(Half-duplex)形式的數(shù)據(jù)傳輸也是雙向的。但任何時刻只能由其中的一方發(fā)送數(shù)據(jù),另一方接收數(shù)據(jù)。因此半雙工形式既可以使用一條數(shù)據(jù)線,也可以使用兩條數(shù)據(jù)線。(3)半雙工形式4.串行通信數(shù)據(jù)傳輸速率的表示方法(1)與傳輸速率有關(guān)的術(shù)語波特(Baud):每秒1次的信號變化稱為1波特。波特率(BaudRate):每秒鐘事件發(fā)生的數(shù)目或信號變化的次數(shù)。在單片機的串行數(shù)據(jù)傳輸中,以波特率表示串行數(shù)據(jù)的傳輸速率。比特率(BitRate):也稱為位速率,即每秒鐘傳輸二進制數(shù)的位數(shù)。在一般的單片機串行通信中,波特率與比特率的概念是一樣的,但在高速串行通信中,由于一個事件的編碼往往不止1位,因此波特率與比特率就不一樣了,例如事件按4位編碼,如果數(shù)據(jù)傳輸?shù)牟ㄌ芈适?400,則比特率就是9600。4.串行通信數(shù)據(jù)傳輸速率的表示方法(1)與傳輸速率有關(guān)的(2)單片機中使用的波特率

單片機使用波特率作為串行通信傳送速率的單位。即1波特=1b/s(位/秒)在串行數(shù)據(jù)傳輸中,波特率除表明數(shù)據(jù)傳送速率外,還可以表示串行口中移位脈沖頻率的高低,因為串行數(shù)據(jù)發(fā)送和接收的速率是由移位脈沖決定的。波特率高表明移位脈沖頻率高,串行數(shù)據(jù)傳輸速度就快;反之,波特率低表明移位脈沖頻率也低,串行數(shù)據(jù)傳輸速度就慢。波特率的數(shù)值差異很大,例如,在RS232C標準中規(guī)定,允許波特率為每秒50~19200b/s。在實際的串行數(shù)據(jù)傳輸應(yīng)用中,應(yīng)根據(jù)速度要求、線路質(zhì)量以及設(shè)備情況等因素選定波特率。(2)單片機中使用的波特率二.80C51串行口的組成二.80C51串行口的組成UART串行口寄存器結(jié)構(gòu):UART串行口寄存器結(jié)構(gòu):1.串行數(shù)據(jù)寄存器SBUF

串行口緩沖寄存器SBUF是可直接尋址的專用寄存器。在物理上,它對應(yīng)著兩個寄存器,一個是發(fā)送寄存器,一個是接收寄存器。三.串行口的特殊功能寄存器

寫SBUF:

MOVSBUF,A訪問發(fā)送數(shù)據(jù)寄存器讀SBUF:MOVA,SBUF訪問接收數(shù)據(jù)寄存器1.串行數(shù)據(jù)寄存器SBUF串行口緩沖寄存器SBUF是2.串行口控制寄存器SCONSM0SM1SM2RENTB8RB8TIRISM0和SM1:串行口工作方式選擇位

SM0SM1方式功能波特率000同步移位寄存器fosc/1201110位UART可變10211位UARTfosc/64或fosc/3211311位UART可變SCON用于控制和監(jiān)視串行口的工作狀態(tài),是一個逐位定義的8位寄存器,由它控制串行口通訊方式選擇、接收和發(fā)送,指示串行口的狀態(tài)。2.串行口控制寄存器SCONSM0SM1SM2RENTB8SM2:

方式2、方式3中的多處理機通信允許位

REN:

允許串行接收位REN=1時,允許接收,REN=0時,禁止接收。

TB8:

發(fā)送數(shù)據(jù)位8該位是方式2和3中要發(fā)送的第9位數(shù)據(jù)。在多處理機通信中,這一位表示是地址幀還是數(shù)據(jù)幀。

RB8:

接收數(shù)據(jù)位8該位是方式2和3中接收到的第9位數(shù)據(jù);方式1中接收到的是停止位;方式0中不使用這一位。

SM0SM1SM2RENTB8RB8TIRITI:串行發(fā)送中斷請求標志RI:串行接收中斷請求標志SM2:方式2、方式3中的多處理機通信允許位REN:允3.電源控制寄存器PCOND7D6D5D4D3D2D1D0SMOD---GF1GF0PDIDLSMOD——串行通信波特率系數(shù)控制位

SMOD=1時,波特率加倍。3.電源控制寄存器PCOND7D6D5D4D3D2D1D0四.串行口的工作方式及多機通信方式1.方式0D7D6D5D4D3D2D1D0串行口作為同步移位寄存器使用,實現(xiàn)串行數(shù)據(jù)的輸入/輸出。串行數(shù)據(jù)通過RXD輸入或輸出,而TXD用于輸出移位時鐘,作為外接部件的同步信號。幀格式都是純數(shù)據(jù)位,不用附加起始位、停止位和校驗位,數(shù)據(jù)移位按低位在前、高位在后的順序進行。數(shù)據(jù)傳輸?shù)牟ㄌ芈适枪潭ǖ模瑸閱纹瑱C晶振頻率的1/12。四.串行口的工作方式及多機通信方式1.方式0D7D6串行口方式0的時序串行口方式0的時序利用串行口方式0實現(xiàn)數(shù)據(jù)并行輸入/輸出利用串行口方式0實現(xiàn)數(shù)據(jù)并行輸入/輸出2.方式1方式1是10位為一幀的異步串行通信方式,幀格式包括:1位起始位(0)、8位數(shù)據(jù)(低位在先)、1位停止位(1)。由TXD發(fā)送,由RXD接收。波特率可變,取決于定時器1的溢出速率,可用程序設(shè)定。2.方式1方式1是10位為一幀的異步串行通信方式,幀串行口方式1的時序串行口方式1的時序3.方式2和方式3

方式2和3都是11位為一幀的異步串行通信方式,即1個起始位、9個數(shù)據(jù)位和1個停止位。在方式2和3下,字符還是8個數(shù)據(jù)位,只不過增加了一個第9數(shù)據(jù)位(D8),它是一個可編程位,其功能由用戶設(shè)定。方式2和3是為多機通信而準備的,兩者的工作過程相同,差別僅在于波特率的設(shè)置。方式2的波特率是固定的,為振蕩器頻率的1/32或1/64;方式3的波特率可由用戶根據(jù)需要設(shè)定,設(shè)定方法與方式1相同。3.方式2和方式3方式2和3都是11位為一幀的異步串串行口方式2、3的時序串行口方式2、3的時序1.方式0時的波特率由振蕩器的頻率()所確定:2.方式2時的波特率由振蕩器的頻率()和SMOD(PCON.7)所確定:當SMOD=1時,當SMOD=0時,五.串行口的波特率發(fā)生器及波特率

1.方式0時的波特率由振蕩器的頻率()所確定:2方式1、3的波特率由定時器T1的溢出率和SMOD確定:(1)定時器T1工作于方式0:TC——13位計數(shù)器初值X——中斷程序的機器周期數(shù),在中斷程序中重新對定時器置數(shù)。(2)定時器T1工作于方式1:(3)定時器T1工作于方式2:方式1、3的波特率由定時器T1的溢出率和SMOD確定:(1)例1單片機之間串行通信甲乙雙方串行通信,方式1,1200波特,甲機將外RAM4000H~401FH數(shù)據(jù)發(fā)送給乙方,乙方將數(shù)據(jù)存儲在外RAM5000H~501FH。晶振:11.0592MHz(1)簡單說明可以查詢方式,也可以中斷方式工作接收:JNBRI,$CLRRIMOVA,SBUF發(fā)送:MOVSBUF,AJNBTI,$CLRTI查詢方式例1單片機之間串行通信(1)簡單說明接收:JNB(2)查詢方式參考程序甲:MOVSCON,#40HMOVTMOD,#20HMOVTL1,#0E8HMOVTH1,#0E8HSETBTR1MOVDPTR,#4000HMOVR2,#32LOP:MOVXA,@DPTRINCDPTRMOVSBUF,AJNBTI,$CLRTIDJNZR2,LOPSJMP$(2)查詢方式參考程序甲:MOVSCON乙:MOVSCON,#50HMOVTMOD,#20HMOVTL1,#0E8HMOVTH1,#0E8HSETBTR1MOVDPTR,#5000HMOVR2,#32LOP:JNBRI,$CLRRIMOVA,SBUFMOVX@DPTR,AINCDPTRDJNZR2,LOPSJMP$乙:MOVSCON,#50H(3)中斷方式參考程序甲:ORG0000HLJMPMAINORG0023HLJMPSENDORG0050HMAIN:MOVSCON,#40HMOVTMOD,#20HMOVTL1,#0E8HMOVTH1,#0E8HSETBTR1MOVIE,#90HMOVDPTR,#4000HMOVR2,#32MOVXA,@DPTRINCDPTRMOVSBUF,ASJMP$SEND:CLRTIDJNZR2,NEXTRETINEXT:MOVXA,@DPTRINCDPTRMOVSBUF,ARETI(3)中斷方式參考程序甲:ORG乙:ORG0000HLJMPMAINORG0023HLJMPRECEORG0050HMAIN:MOVSCON,#50HMOVTMOD,#20HMOVTL1,#0E8HMOVTH1,#0E8HSETBTR1MOVIE,#90HLOP:MOVDPTR,#5000HMOVR2,#0CJNER2,#32,$LCALLBUF_FUNLJMPLOPRECE:CLRRIMOVA,SBUFMOVX@DPTR,AINCDPTRINCR2RETIBUF_FUN:、、、、、、RET乙:ORG0000HRECE:4.4中斷系統(tǒng)一中斷的概念中斷:程序執(zhí)行過程中,允許外部或內(nèi)部事件通過硬件打斷程序的執(zhí)行,使其轉(zhuǎn)向為處理外部或內(nèi)部事件的中斷服務(wù)程序中去。中斷源:凡是中斷請求的來源都統(tǒng)稱為中斷源。中斷優(yōu)先級:幾個中斷源同時申請中斷時,或者CPU正在處理某外部事件時,又有另一外部事件申請中斷,CPU必須區(qū)分哪個中斷源更重要,從而確定優(yōu)先處理誰的能力,這就是中斷優(yōu)先級問題。4.4中斷系統(tǒng)一中斷的概念中斷:程序執(zhí)行過程中,允許中斷嵌套流程圖中斷流程圖中斷嵌套流程圖中斷流程圖80C51的中斷系統(tǒng)結(jié)構(gòu)示意圖80C51的中斷系統(tǒng)結(jié)構(gòu)示意圖二中斷的控制和操作1.中斷源

/INT0(P3.2)——外部中斷0。當IT0=0時,低電平有效;

當IT0=1時,下降沿有效。

/INT1(P3.3)——外部中斷1。當IT1=0時,低電平有效;

當IT1=1時,下降沿有效。TF0(P3.4)——定時器/計數(shù)器T0溢出中斷TF1(P3.5)——定時器/計數(shù)器T1溢出中斷RI,TI

——串行中斷二中斷的控制和操作1.中斷源/INT0(P3.2)—2.中斷標志/INT0、/INT1、T0和T1的中斷標志存放在TCON寄存器中;串行口的中斷標志存放在SCON寄存器中。位地址8FH8EH8DH8CH8BH8AH89H88H符號TF1TF0IE1IT1IE0IT0TCON:SCON:位地址9FH9EH9DH9CH9BH9AH99H98H符號TIRI2.中斷標志/INT0、/INT1、T0和T1的中斷標志存3.中斷允許控制中斷允許寄存器(IE)的字節(jié)地址為A8H位地址AFHAEHADHACHABHAAHA9HA8H符號EA--ESET1EX1ET0EX0EX0(IE.0)——外部中斷0允許位ET0(IE.1)——定時器/計數(shù)器T0中斷允許位EX1(IE.2)——外部中斷1允許位ET1(IE.3)——定時器/計數(shù)器T1中斷允許位ES(IE.4)——串行口中斷允許位EA(IE.7)——CPU中斷允許位3.中斷允許控制中斷允許寄存器(IE)的字節(jié)地址為A8H位4.中斷優(yōu)先級中斷優(yōu)先級寄存器(IP)的字節(jié)地址為B8H位地址BFHBEHBDHBCHBBHBAHB9HB8H符號-PT2PSPT1PX1PT0PX0定時器0定時器1定時器2外部中斷0外部中斷1串行口4.中斷優(yōu)先級中斷優(yōu)先級寄存器(IP)的字節(jié)地址為B8H位5.外部中斷觸發(fā)方式電平觸發(fā)方式跳變觸發(fā)方式低電平有效電平由高到低跳變時觸發(fā)5.外部中斷觸發(fā)方式電平觸發(fā)方式跳變觸發(fā)方式低電平有效電平6.中斷請求的撤除由單片機內(nèi)部硬件自動復(fù)位:

對于T0、T1的溢出中斷和采用跳變觸發(fā)方式的外部中斷請求,在CPU響應(yīng)中斷后,由內(nèi)部硬件自動復(fù)位中斷標志TF0和TF1、TE0和TE1,而自動撤除中斷請求。2.應(yīng)用軟件清除響應(yīng)標志:對于串行接收/發(fā)送中斷請求,在CPU響應(yīng)中斷后,內(nèi)部無硬件自動復(fù)位中斷標志RI和TI,必須在中斷服務(wù)程序中清除這些中斷標志,才能撤除中斷。3.既無硬件也無軟件措施:對于采用電平觸發(fā)方式的外部中斷請求,CPU對引腳上的中斷請求信號既無控制能力,也無應(yīng)答能力。為保證CPU響應(yīng)中斷后、執(zhí)行返回指令前,撤除中斷請求,必須考慮另外的措施。6.中斷請求的撤除由單片機內(nèi)部硬件自動復(fù)位:2.應(yīng)用三中斷的響應(yīng)過程和中斷矢量地址1.中斷的響應(yīng)過程(1)在每個機器周期的S5P2期間,各中斷標志采樣相應(yīng)的中斷源。CPU則在下一機器周期的S6期間按優(yōu)先級的順序查詢中斷標志。若查詢到某中斷標志為1,則按優(yōu)先級的高低進行處理,即響應(yīng)中斷。三中斷的響應(yīng)過程和中斷矢量地址1.中斷的響應(yīng)過程(1)(2)響應(yīng)中斷后,執(zhí)行硬件生成的長調(diào)用指令“LCALL”,將程序計數(shù)器PC的內(nèi)容壓入堆棧保護,先低位地址,后高位地址,堆棧指針加2。(3)將對應(yīng)中斷源的中斷矢量地址裝入程序計數(shù)器PC,使程序轉(zhuǎn)向該中斷矢量地址,去執(zhí)行中斷服務(wù)程序。(4)中斷服務(wù)程序由中斷矢量地址開始執(zhí)行,直到遇到RETI指令為止。(5)執(zhí)行RETI指令,撤消中斷申請,彈出斷口地址進入PC,先彈出高位地址,后彈出低位地址,堆棧指針減2,恢復(fù)原程序的執(zhí)行。(2)響應(yīng)中斷后,執(zhí)行硬件生成的長調(diào)用指令“LCALL”,2.中斷矢量地址中斷源中斷矢量內(nèi)部優(yōu)先順序外部中斷0IE00003H最高.......最低定時器0TF0000BH外部中斷1IE10013H定時器1TF1001BH串行口RI或TI0023H定時器2TF2或EXF2002BH2.中斷矢量地址中斷源中斷矢量內(nèi)部優(yōu)先順序外部中斷0第四章80C51單片機的功能單元并行I/O接口定時器/計數(shù)器串行接口中斷系統(tǒng)第四章80C51單片機的功能單元并行I/O接口定時器/4.1并行I/O接口4.1并行I/O接口內(nèi)部上拉電阻AB4.1.1P1口P1口是一個多功能的8位口,可以按字節(jié)訪問,也可以按位訪問。一.位結(jié)構(gòu)與工作過程分析1.位結(jié)構(gòu)Q0內(nèi)部上拉電阻AB4.1.1P1口P1口是一個多功能的8位2.P1口的功能和特點(1)輸出鎖存,輸出時沒有條件;(2)輸入緩沖,輸入時需要先將該口設(shè)為輸入狀態(tài),先輸出1;(3)工作過程中無高阻懸浮狀態(tài),即該口不是輸入口就是輸出口;(4)P1口能驅(qū)動4個TTL負載。2.P1口的功能和特點(1)輸出鎖存,輸出時沒有條件;(23.P1口的操作(1)字節(jié)操作輸出:MOV P1,A;(P1)(A)MOV P1,#data;(P1)#dataMOV P1,direct;(P1)(direct)輸入:MOV A,P1;(A)(P1)MOV direct,P1;(direct)(P1)3.P1口的操作(1)字節(jié)操作輸出:MOV P1,A輸入、輸出:MOV P1.i,C;P1.iCYMOV C,P1.i;CYP1.i判跳:JB P1.i,rel;P1.i=1,跳轉(zhuǎn)JBC P1.i,rel;P1.i=1,跳轉(zhuǎn),且P1.i0邏輯運算:ANL C,P1.i;CY(P1.i與CY)ORL C,P1.i;CY(P1.i+CY)(2)位操作置位、清除:SETB P1.i;P1.i1CLR P1.i;P1.i0輸入、輸出:MOV P1.i,C(3)讀引腳操作在響應(yīng)CPU輸出的讀引腳信號時,端口本身的電平值通過緩沖器進入內(nèi)部總線。對于這類指令,執(zhí)行前必須先將端口鎖存器置1,使A點為高電平。MOV A,P1;(A)(P1)MOV direct,P1;(direct)(P1)(4)讀鎖存器操作在執(zhí)行讀鎖存器的指令時,CPU首先完成將鎖存器的值通過緩沖器讀入內(nèi)部,進行修改,然后重寫到鎖存器中去,這就是“讀—修改—寫”指令。這類指令包括所有的口邏輯操作(ANL、ORL、XRL)和位操作(JBC、CPL、MOV、SETB、CLR)指令。(3)讀引腳操作在響應(yīng)CPU輸出的讀引腳信號時,端口本身的電4.P1口的多功能線P1.0——定時器/計數(shù)器2的外部輸入端T2;P1.1——定時器/計數(shù)器2的外部控制端T2EX。在80C52中,P1.0和P1.1口線是多功能的4.P1口的多功能線P1.0——定時器/計數(shù)器2的外部輸入4.1.2P3口P3口是一個多功能的8位口,可以按字節(jié)訪問,也可以按字訪問。一.位結(jié)構(gòu)與工作過程分析1.位結(jié)構(gòu)Q0ABC上拉電阻4.1.2P3口P3口是一個多功能的8位口,可以按字節(jié)訪2.P3口的功能和特點P3.0——RXD(串行口輸入)P3.2——INT0(外部中斷0請求)P3.3——INT1(外部中斷1請求)P3.4——T0(定時/計數(shù)器0的外部輸入)P3.5——T1(定時/計數(shù)器1的外部輸入)P3.1——TXD(串行口輸出)P3.6——WR(片外數(shù)據(jù)存儲器寫選通信號輸出)P3.7——RD(片外數(shù)據(jù)存儲器讀選通信號輸出)復(fù)用輸入功能復(fù)用輸出功能2.P3口的功能和特點P3.0——RXD(串行口輸入)P34.1.3P2口P2口是一個多功能的8位口,可以按字節(jié)訪問,也可以按位訪問。一.位結(jié)構(gòu)與工作過程分析1.位結(jié)構(gòu)Q0A上拉電阻BC多路開關(guān)4.1.3P2口P2口是一個多功能的8位口,可以按字節(jié)訪(1)作I/O口使用時,P2口為一準雙工口,功能與P1相同。2.P2口的功能和特點(2)作地址輸出時,P2口可以輸出程序存儲器或片外數(shù)據(jù)存儲器的高8位地址,與P0口輸出的低8位地址一起構(gòu)成16位地址線,從而可分別尋址64KB的程序存儲器或片外數(shù)據(jù)存儲器。(3)P2口能驅(qū)動4個TTL負載。(1)作I/O口使用時,P2口為一準雙工口,功能與P1相同。4.1.4P0口P0口是一個多功能的8位口,可以按字節(jié)訪問,也可以按位訪問。一.位結(jié)構(gòu)與工作過程分析1.位結(jié)構(gòu)Q0A4.1.4P0口P0口是一個多功能的8位口,可以按字節(jié)訪2.P0口的功能和特點(1)作I/O口使用相當于一個真正的雙向口:輸出鎖存、輸入緩沖,但輸入時需先將口置1;每根口線可以獨立定義為輸入或輸出。它具有雙向口的一切特點。(2)作地址/數(shù)據(jù)復(fù)用總線使用此時,P0口為一個半雙工口。作地址/數(shù)據(jù)復(fù)用總線用時,口不能逐位定義輸入/輸出。作數(shù)據(jù)總線用,輸入/輸出8位數(shù)據(jù);作地址總線用,輸出低8位地址。(3)P0口能驅(qū)動8個TTL負載2.P0口的功能和特點(1)作I/O口使用相當于一個真正的4.2

定時器/計數(shù)器定時器/計數(shù)器的核心是加1計數(shù)器,其基本功能是加1功能:(1)在單片機的T0或T1引腳上施加一個1到0的跳變,計數(shù)器增1,即計數(shù)功能。(2)在單片機內(nèi)部對機器周期或其分頻進行計數(shù),從而得到定時,這就是定時功能。一、概述4.2定時器/計數(shù)器定時器/計數(shù)器的核心是加1計數(shù)器,其基因為一個機器周期固定由12個振蕩周期構(gòu)成,所以,計數(shù)頻率為振蕩頻率的1/12。作計數(shù)器用時,在其相應(yīng)外部引腳上,每有一個由1到0的跳變,其計數(shù)寄存器的內(nèi)容便要加1。因為辨識一個1到0的跳變需要兩個機器周期,故最高計數(shù)頻率為振蕩頻率的1/24。作定時器用時,其計數(shù)寄存器值每過一個機器周期加1。因此,可以認為定時器是對機器周期的計數(shù)。因為一個機器周期固定由12個振蕩周期構(gòu)成,所以,計數(shù)頻率為振8051內(nèi)含定時器0和定時器1兩個16位定時/計數(shù)器;8052還有一個定時器2,共有三個定時/計數(shù)器。定時器0和定時器1有四種工作方式可供選擇;定時器2有三種工作方式。

定時器0和定時器1的工作方式方式0方式1方式2方式3

定時器2的工作方式

<自學(xué)>捕捉方式自重裝方式波特率發(fā)生器方式8051內(nèi)含定時器0和定時器1兩個16位定時/計數(shù)器;805二、定時器/計數(shù)器T0、T11.定時器/計數(shù)器T0、T1的內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)計數(shù)器TH0、TL0和TH1、TL1特殊功能寄存器TMOD、TCON時鐘分頻器輸入引腳T0、T1、/INT1、/INT0二、定時器/計數(shù)器T0、T11.定時器/計數(shù)器T0、T1的定時/計數(shù)器的功能與工作方式選擇是通過定時器方式寄存器TMOD(TimerMode)進行的。GATE——門控位——功能選擇位,0—定時,1—計數(shù)2.定時器/計數(shù)器T0、T1的特殊功能寄存器GATE=0時,僅由TR0和TR1置位來啟動定時器T0和T1。GATE=1時,由外部中斷引腳/INT0、/INT1和TR0、TR1來啟動定時器。當/INT0引腳為高電平時,TR0置位,啟動定時器T0;當/INT1引腳為高電平時,TR1置位,啟動定時器T1。定時/計數(shù)器的功能與工作方式選擇是通過定時器方式寄存器TMOM1M000011011方式0方式1方式2方式3定時器/計數(shù)器T0、T1的四種工作方式M1M000011011方式0方式1方式2方式3定時器/計數(shù)3.定時/計數(shù)器控制寄存器TCON(TimerControl)TF1TR1TF0TR0IE1IT1TE0IT076543210定時器1溢出標志定時器1運行控制位定時器0溢出標志定時器0運行控制位/INT0方式選擇/INT0中斷標志/INT1方式選擇/INT1中斷標志3.定時/計數(shù)器控制寄存器TCON(TimerCon三.定時器/計數(shù)器T0、T1的工作方式(1)工作方式0方式0是一個13位定時/計數(shù)工作方式啟??刂疲篏ATE=0,TR0單獨控制;

GATE=1,TR0和INT0共同控制三.定時器/計數(shù)器T0、T1的工作方式(1)工作方式0(2)工作方式1方式1是一個16位定時/計數(shù)工作方式(2)工作方式1方式1是一個16位定時/計(3)工作方式2TL0作為8位計數(shù)器用,TH0用以保存初始值。TH0的值由軟件預(yù)置。(3)工作方式2TL0作為8位計數(shù)器用,TH0用以保存初始(4)工作方式3定時器/計數(shù)器0建立起兩個獨立的計數(shù)器TL0和TH0。TL0既可定時,也可計數(shù);TH0固定執(zhí)行定時功能。(4)工作方式3定時器/計數(shù)器0建立起兩個獨立的計數(shù)器TL(4)工作方式3定時器/計數(shù)器1(4)工作方式3定時器/計數(shù)器1四.定時器/計數(shù)器的編程和使用1.定時器/計數(shù)器溢出率的計算定時器/計數(shù)器運行前,在其中預(yù)先置入的常數(shù),稱為定時常數(shù)或計數(shù)常數(shù)(TC)。其中:四.定時器/計數(shù)器的編程和使用1.定時器/計數(shù)器溢出率對于T0和T1:方式0L=13213=8192方式1L=16216=65536方式2L=828=256定時時間的倒數(shù)即為溢出率,即:對于T0和T1:方式0L=13根據(jù)既定的定時時間t,計算出TC值,并將其轉(zhuǎn)換成二進制數(shù)TCB,然后再分別送入TH0/TH1,TL0/TL1對于定時器/計數(shù)器T0、T1:方式0:TCB=TCH+TCL,TCH——高8位,TCL——低5位

MOV THi,#TCH;送高8位

MOVTLi,#TCL;送低5位方式1:TCB=TCH+TCL,TCH——高8位,TCL——低8位

MOV THi,#TCH;送高8位

MOVTLi,#TCL;送低5位方式2:TCB——8位

MOV THi,#TCBMOVTLi,#TCB根據(jù)既定的定時時間t,計算出TC值,并將其轉(zhuǎn)換成二進制數(shù)TC2.定時器/計數(shù)器的編程寫TMOD,只能用字節(jié)尋址。設(shè)置定時器/計數(shù)器的工作方式(M1,M0)、功能選擇(C/T)及是否使用門控(GATE)。將時間常數(shù)或計數(shù)常數(shù)寫入THi和TLi,也只能用字節(jié)尋址。啟動定時或計數(shù),即寫TCON,可用字節(jié)尋址也可用位尋址。如:SETBTRi;啟動定時器

SETBTCON.4(T0)SETBTCON.6(T1)CLRTRi;停止定時器定時器中斷開放和禁止,即寫IE(IE.,IE.3,IE.1)

如:SETBETi;允許中斷ETi

SETBEA;開放中斷

CLRETi;禁止中斷Eti

CLREA;關(guān)閉中斷2.定時器/計數(shù)器的編程寫TMOD,只能用字節(jié)尋址。將(3)程序設(shè)計例1

fosc=6MHz,使用T1方式0產(chǎn)生周期500us的等寬正方波連續(xù)脈沖,由P1.0輸出。(1)計算計數(shù)初值TC=8067=1111110000011BTH1=0FCHTL1=03H(2)TMOD初始化T1,與INT1無關(guān),定時,方式0操作TMOD高4位,GATE=0,C/T=0,M1M0=00(3)程序設(shè)計例1fosc=6MHz,使用T1方式0產(chǎn)生(3)程序設(shè)計ORG0000HLJMPMAINORG0050HMAIN:MOVTMOD,#00HMOVTH1,#0FCHMOVTL1,#03HMOVIE,#0MOVIP,#0SETBTR1LOOP:JBCTF1,LOOP1AJMPLOOPLOOP1:MOVTH1,#0FCHMOVTL1,#03HCPLP1.0AJMPLOOPORG0000HLJMPMAINORG001BHMOVTH1,#0FCHMOVTL1,#03HCPLP1.0RETIORG0050HMAIN:MOVTMOD,#00HMOVTH1,#0FCHMOVTL1,#03HMOVIE,#88HMOVIP,#0SETBTR1LOOP:SJMPLOOP中斷方式查詢方式(3)程序設(shè)計ORG0000HOR(3)程序設(shè)計例2fosc=6MHz,使用T1方式1產(chǎn)生周期500us的等寬正方波連續(xù)脈沖,由P1.0輸出。(1)計算計數(shù)初值(2)TMOD初始化TC=65411=FF83HTH1=0FFHTL1=83HT1,與INT1無關(guān),定時,方式1操作TMOD高4位,GATE=0,C/T=0,M1M0=01(3)程序設(shè)計例2fosc=6MHz,使用T1方式1產(chǎn)生周(3)程序設(shè)計ORG0000HLJMPMAINORG0050HMAIN:MOVTMOD,#10HMOVTH1,#0FFHMOVTL1,#83HMOVIE,#0MOVIP,#0SETBTR1LOOP:JBCTF1,LOOP1AJMPLOOPLOOP1:MOVTH1,#0FFHMOVTL1,#83HCPLP1.0AJMPLOOPORG0000HLJMPMAINORG001BHMOVTH1,#0FFHMOVTL1,#83HCPLP1.0RETIORG0050HMAIN:MOVTMOD,#10HMOVTH1,#0FFHMOVTL1,#83HMOVIE,#88HMOVIP,#0SETBTR1LOOP:SJMPLOOP中斷方式查詢方式(3)程序設(shè)計ORG0000HOR(3)程序設(shè)計例3循環(huán)定時應(yīng)用

fosc=6MHz,使用T0方式2產(chǎn)生100us定時,

在P1.0輸出周期為200us的連續(xù)正方波脈沖。(1)計算計數(shù)初值(2)TMOD初始化TC=0CEHTH0=

0CEHTL0=

0CEHT0,與INT0無關(guān),定時,方式2操作TMOD低4位,GATE=0,C/T=0,M1M0=10(3)程序設(shè)計例3循環(huán)定時應(yīng)用(1)計算計數(shù)初值(2)TM(3)程序設(shè)計ORG0000HLJMPMAINORG0050HMAIN:MOVTMOD,#02HMOVTH0,#0CEHMOVTL0,#0CEHMOVIE,#0MOVIP,#0SETBTR0LOOP:JBCTF0,LOOP1AJMPLOOPLOOP1:CPLP1.0AJMPLOOPORG0000HLJMPMAINORG000BHCPLP1.0RETIORG0050HMAIN:MOVTMOD,#02HMOVTH0,#0CEHMOVTL0,#0CEHMOVIE,#82HMOVIP,#0SETBTR0LOOP:SJMPLOOP中斷方式查詢方式(3)程序設(shè)計ORG0000HOR4.3

串行接口一.串行通信基礎(chǔ)知識1.異步串行通信

異步串行通信是以字符為單位的間歇傳輸形式。傳送時按字符進行包裝,為此,在數(shù)據(jù)位之外要增添起始位、奇偶校驗位和停止位,構(gòu)成一個通信幀。

異步通信的幀格式4.3串行接口一.串行通信基礎(chǔ)知識1.異步串行通信異幾點說明:①在串行通信中,信息的兩種狀態(tài)分別以mark和space標志。其中mark譯為標號,對應(yīng)邏輯狀態(tài)1,在發(fā)送器空閑時,數(shù)據(jù)線應(yīng)保持在mark狀態(tài);space譯為空格,對應(yīng)邏輯狀態(tài)0。②起始位。發(fā)送器通過發(fā)送起始位而開始一個字符的傳輸。起始位使數(shù)據(jù)線處于space狀態(tài)。③數(shù)據(jù)位。起始位之后傳送數(shù)據(jù)位。在數(shù)據(jù)位中,低位在前(左),高位在后(右)。由于字符編碼方式不同,數(shù)據(jù)位可以是5、6、7或8位等多種形式。④奇偶校驗位。用于對字符傳送作正確性檢查,因此,奇偶校驗位是可選擇的,共有3種可能,即奇校驗、偶校驗和無校驗,由用戶根據(jù)需要選定。所謂偶校驗,即數(shù)據(jù)位和奇偶校驗位中邏輯1的個數(shù)加起來必須是偶數(shù)(全0也視為偶數(shù)個1)。所謂奇校驗,即數(shù)據(jù)位和奇偶校驗位中邏輯1的個數(shù)加起來必須是奇數(shù)。⑤停止位。停止位在最后,用于標志一個字符傳輸?shù)慕Y(jié)束,對應(yīng)于mark狀態(tài)。停止位可能是1、1.5或2位,在實際應(yīng)用中根據(jù)需要確定。⑥位時間。一個格式位的時間寬度。⑦幀(Frame)。從起始位開始到停止

溫馨提示

  • 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

提交評論