單片微型計(jì)算機(jī)原理及其應(yīng)用-2_第1頁(yè)
單片微型計(jì)算機(jī)原理及其應(yīng)用-2_第2頁(yè)
單片微型計(jì)算機(jī)原理及其應(yīng)用-2_第3頁(yè)
單片微型計(jì)算機(jī)原理及其應(yīng)用-2_第4頁(yè)
單片微型計(jì)算機(jī)原理及其應(yīng)用-2_第5頁(yè)
已閱讀5頁(yè),還剩86頁(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)介

第七章

MCS-51系統(tǒng)的串行接口7.1串行通訊概述一、串行通訊的兩種基本方式1.異步傳送方式

第n個(gè)字符(一串行幀)n+1n-1

…P10D0D1D2D3D4D5D6D7P10D0…

起始位數(shù)據(jù)位校驗(yàn)位停止位

圖7-2異步通訊的幀格式開(kāi)始

結(jié)束同步字符同步字符數(shù)據(jù)段CRC字符#1CRC字符#2圖7-3同步傳送方式二、波特率圖7-4串行通訊的制式三、數(shù)據(jù)傳送的方向1.單工制式(Simplex)2.半雙工制式(HalfDuplex)3.全雙工(Full-duplex)制式7.2MCS-51單片機(jī)的串行接口一、MCS-51串行口結(jié)構(gòu)圖7-5MCS-51串行口組成示意1.串行口數(shù)據(jù)緩沖器SBUF

2.串行口控制寄存器SCON見(jiàn)表格7-1SM0位地址9F9E9D9C9B9A9998SCONSM1SM2RENTB8RB8TIRI

接收中斷標(biāo)志發(fā)送中斷標(biāo)志接收數(shù)據(jù)第9位發(fā)送數(shù)據(jù)第9位接收控制0:禁止接收1:允許接收多機(jī)通信0:?jiǎn)螜C(jī)對(duì)單機(jī)1:多機(jī)通信

圖7-6串行口控制寄存器SCON圖7-6串行口控制寄存器SCON3.特殊功能寄存器PCONPCON主要是為CHMOS型單片機(jī)的電源控制設(shè)置的專(zhuān)用寄存器,單元地址為87H,不能位尋址。其格式如圖7-7所示。SMOD———GF1GF0PDIDL通用標(biāo)志位空閑控制位0:正常方式1:空閑方式掉電控制位0:正常方式1:掉電方式波特率選擇位SMOD=1時(shí),方式1、2和3的波特率加倍

圖7-7PCON各位定義二、MCS-51串行的工作方式MCS-51的串行口有四種工作方式,它是由SCON中的SM1和SM0來(lái)決定的,如表格7-1

表格7-1串行口的工作方式SM0SMl工作方式方式簡(jiǎn)單描述波特率000移位寄存器I/O主振頻率/120118位UART可變1029位UART主振頻率/32或主振頻率/641139位UART可變1.方式0圖7-8串行口方式0的時(shí)序2.方式1在方式1時(shí),串行口被設(shè)置為波特率可變的8位異步通信接口。其時(shí)序如圖7-9所示。圖7-9串行口方式1的時(shí)序3.方式2串行口工作為方式2時(shí),被定義為9位異步通信接口。其時(shí)序如圖7-10所示。4.方式3圖7-10串行口方式2、3的時(shí)序三、MCS-51串行通信的波特率1.方式0的波特率2.方式2的波特率3.方式1或方式3的波特率表格7-2常用波特率和定時(shí)器T1初值關(guān)系表波特率(方式1、3)fosc=6Mfosc=12Mfosc=11.059MSMODT1方式初值SMODT1方式初值SMODT1方式初值62.5k

12FFH

19.2k

12FDH9.6k

02FDH4.8k

12F3H02FAH2.4k12F3H12F3H02F4H1.2k12E6H02E6H02E8H60012CCH02CCH02D0H30002CCH0298H02A0H137.5121DH021DH022EH1100272H01FEEBH01FEFFH表格7-2常用波特率和定時(shí)器T1初值關(guān)系表7.3MCS-51單片機(jī)串行口的應(yīng)用一、串行口方式0用作擴(kuò)展并行I/O口圖7-11串行口方式0擴(kuò)展并行輸出口

MOVSCON,#00H;串行口方式0初始化

MOVA,#80H;最左一位發(fā)光二極管先亮

CLRP1.0;關(guān)閉并行輸出START1:MOVSBUF,A;開(kāi)始串行輸出LOOP:JNBTI,LOOP;查詢TI

SETBP1.0;啟動(dòng)并行輸出

ACALLDELAY;顯示延時(shí)

CLRTI;清發(fā)送中斷標(biāo)志

RRA;準(zhǔn)備右邊一位顯示

CLRP1.0;關(guān)閉并行輸出

SJMPSTART1;再一次串行輸出二、方式1與點(diǎn)對(duì)點(diǎn)的異步通訊在下面給出的實(shí)現(xiàn)指定功能的通訊程序中,發(fā)送和接收都通過(guò)調(diào)用子程序來(lái)完成,并設(shè)發(fā)送數(shù)據(jù)區(qū)的首地址為20H,接收數(shù)據(jù)區(qū)的首地址為40H。主程序:

MOVTMOD,#20H;定時(shí)器1設(shè)為方式2

MOVTL,#0F3H;定時(shí)器初值

MOVTH1,#0F3H;8位重裝值

SETBTR1;啟動(dòng)定時(shí)器1

MOVSCON,#50H;串行口設(shè)為方式1,REN=1

MOVR0,#20H;發(fā)送數(shù)據(jù)區(qū)首址

MOVR1,#40H;接收數(shù)據(jù)區(qū)首址

ACALLSOUT;輸出一個(gè)字符$:SJMP$;等待中斷中斷服務(wù)程序:

ORG0023H;串行口中斷入口

AJMPSBRl;轉(zhuǎn)至中斷服務(wù)程序SBRl:JNBRI,SEND;TI=1,為發(fā)送中斷

ACALLSIN;RI=1,為接收中斷

SJMPNEXT;轉(zhuǎn)至統(tǒng)一的出口SEND:ACALLSOUT;調(diào)用發(fā)送子程序NEXT:RETI;中斷返回發(fā)送子程序:SOUT:MOVA,@Ro;取發(fā)送數(shù)據(jù)到A

MOVC,P;加上奇校驗(yàn)位

CPLC

MOVACC.7,C

INCR0;修改發(fā)送數(shù)據(jù)指針

MOVSBUF,A;發(fā)送ASCII碼

CLRTI;清發(fā)送中斷標(biāo)志

RET

接收子程序:SIN:MOVA,SBUF;讀出接收緩沖區(qū)內(nèi)容

MOVC,P;取出校驗(yàn)位

CPLC;奇校驗(yàn)

ANLA,#7FH;刪除校驗(yàn)位

MOV@R1,A;讀入接收緩沖區(qū)

INCR1;修改接收數(shù)據(jù)指針

CLRRI;清接收中斷標(biāo)志

RET

三、方式2、方式3與多機(jī)通訊圖7-12多機(jī)通訊連接示意圖1.多機(jī)通信原理2.多機(jī)通信實(shí)現(xiàn)四、微機(jī)與單片機(jī)之間的通訊圖7-13微機(jī)與單片機(jī)串行通信接口

7.4相互通道接口標(biāo)準(zhǔn)及其選擇一、相互通道的典型結(jié)構(gòu)二、關(guān)于RS-232C、RS-449、RS-422、RS-423和RS-485接口圖7-14多機(jī)系統(tǒng)的相互通道2.抗干擾能力1.RS-232C接口

圖7-15通過(guò)電話網(wǎng)實(shí)現(xiàn)遠(yuǎn)程連接表格7-3微機(jī)中常用的RS-232C接口信號(hào)引腳號(hào)符號(hào)名稱說(shuō)明1PGND保護(hù)地為了安全和大地相連,有時(shí)可不接2TXD發(fā)送數(shù)據(jù)從DTE到DCE的數(shù)據(jù)線3RXD接收數(shù)據(jù)從DCE到DTE的數(shù)據(jù)線4RTS請(qǐng)求發(fā)送當(dāng)DTE希望在數(shù)據(jù)線上傳遞數(shù)據(jù)時(shí)由DTE發(fā)出,DCE通過(guò)所得到的控制信號(hào)決定是否響應(yīng)5CTS允許發(fā)送允許計(jì)算機(jī)發(fā)送數(shù)據(jù)時(shí),則由DCE發(fā)出6DSR數(shù)字置位就緒當(dāng)數(shù)據(jù)線已被接好后由DCE發(fā)出7SGND信號(hào)地作為信號(hào)地的公共回路8DCD數(shù)據(jù)載波檢測(cè)當(dāng)DCE已經(jīng)從數(shù)據(jù)線上接收到信號(hào)時(shí)發(fā)出此信號(hào)20DTR數(shù)字終端就緒當(dāng)DTE已準(zhǔn)備好和調(diào)制解調(diào)器交換數(shù)據(jù)時(shí),由DTE發(fā)出,使用公共通信網(wǎng)時(shí)才需要22RI振鈴指示當(dāng)正在進(jìn)行通信時(shí),由DCE發(fā)出,使用公共通信網(wǎng)時(shí)才需要表格7-3微機(jī)中常用的RS-232C接口信號(hào)

圖7-16簡(jiǎn)單的RS-232C數(shù)據(jù)通訊2.RS-449、RS-422、RS-423和RS-485接口表格7-4幾種串行接口標(biāo)準(zhǔn)的比較特性參數(shù)RS-232CRS-423RS-422RS-485工作模式單端發(fā)單端收單端發(fā)雙端收雙端發(fā)雙端收雙端發(fā)雙端收在傳輸線上允許的驅(qū)動(dòng)器和接收器數(shù)目1個(gè)驅(qū)動(dòng)器1個(gè)接收器1個(gè)驅(qū)動(dòng)器10個(gè)接收器1個(gè)驅(qū)動(dòng)器10個(gè)接收器32個(gè)驅(qū)動(dòng)器32個(gè)接收器最大電纜長(zhǎng)度15m1200m(1kb/s)1200m(90kb/s)1200m(100kb/s)最大速率20kb/s100kb/s(12m)10Mb/s(12m)10Mb/s(15m)驅(qū)動(dòng)器輸出(最大電壓)±25V±6V±6V-7V~+12V驅(qū)動(dòng)器輸出(信號(hào)電平)±5V(帶負(fù)載)±15V(未帶負(fù)載)±3.6V(帶負(fù)載)±6V(未帶負(fù)載)±2V(帶負(fù)載)±6V(未帶負(fù)載)±1.5V(帶負(fù)載)±5V(末帶負(fù)載)驅(qū)動(dòng)器負(fù)載阻抗3kΩ~7kΩ450Ω100Ω54Ω驅(qū)動(dòng)器電源開(kāi)路電流(高阻抗態(tài))Vmax/300Ω(開(kāi)路)±100μA(開(kāi)路)±100μA(開(kāi)路)±100μA(開(kāi)路)接收器輸入電壓范圍±15V±10V±12V-7V~+12V接收器輸入靈敏度±3V±200mV±200mV±200mV接收器輸入阻抗2kΩ~7kΩ4kΩmin4kΩmin12kΩmin

第八章

MCS-51單片機(jī)的中斷系統(tǒng)圖8-18051的中斷系統(tǒng)8.1中斷系統(tǒng)及其管理一、中斷源及中斷入口

中斷源入口地址外部中斷00003H定時(shí)器T0中斷000BH外部中斷10013H定時(shí)器T1中斷001BH串行口中斷0023H二、外部中斷請(qǐng)求標(biāo)志2.SCON的中斷標(biāo)志

1.TCON中的中斷標(biāo)志三、中斷允許控制四、中斷源優(yōu)先級(jí)的設(shè)定五、中斷響應(yīng)處理過(guò)程2.中斷處理1.中斷響應(yīng)的過(guò)程

3.中斷返回

4.外部中斷響應(yīng)時(shí)間8.2擴(kuò)充外部中斷源一、利用定時(shí)器進(jìn)行擴(kuò)充圖8-2多外部中斷源連接方法二、采用中斷和查詢相結(jié)合的方法擴(kuò)充外部中斷源

EXINT:PUSHPSWPUSHACCJBP10,SAV1JBP11,SAV2JBP12,SAV3JBP13,SAV4DISUB:POPACCPOPPSW

RETISAV1:…;XI1中斷服務(wù)程序

AJMPDISUBSAV2:…;XI2中斷服務(wù)程序

AJMPDISUBSAV3:…;XI3中斷服務(wù)程序

AJMPDISUBSAV4:…;XI1中斷服務(wù)程序

AJMPDISUB8.3中斷系統(tǒng)的應(yīng)用圖8-3外部中斷實(shí)驗(yàn)第九章

單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)方法及實(shí)例9.1顯示器、鍵盤(pán)與單片機(jī)的連接

一、LED數(shù)碼管與單片機(jī)的連接圖9-1共陰極和共陽(yáng)極數(shù)碼管1.靜態(tài)顯示圖9-2靜態(tài)顯示原理DISP: MOV R0,#50H ;R0指向第一個(gè)顯示單元MOV R2,#4 ;循環(huán)計(jì)數(shù)器賦初值MOV R3,#0 ;顯示位指針賦初值LOOP: MOV A,@R0ANL A,#0FH ;取第i個(gè)顯示單元的低4位SWAP AORL A,R3 ;第i個(gè)顯示單元的低4位送R3的高4位MOV P1,A ;第i個(gè)顯示單元的低4位送R3指出的數(shù)碼管去顯示MOV A,@R0ANL A,#0F0H ;取第i個(gè)顯示單元的高4位INC R3 ;指向下一個(gè)數(shù)碼管ORL A,R3 ;第i個(gè)顯示單元的高4位送R3指出的數(shù)碼管去顯示MOV P1,A ;將第i個(gè)顯示單元的高4位送到相應(yīng)的數(shù)碼管去顯示INC R0 ;指向下一個(gè)顯示單元INC R3 ;指向下一個(gè)LED數(shù)碼管DJNE R2,LOOP ;未顯示完4單元的8個(gè)BCD碼,返回繼續(xù)顯示RET圖9-3采用譯碼器的靜態(tài)顯示接口電路

2.串行顯示接口圖9-5串行顯示接口DISP: SETB P1.0 ;選通顯示器

MOV SCON,#00H ;置串口方式0MOV R0,#50H ;R0指向第一個(gè)顯示單元MOV R2,#4 ;循環(huán)計(jì)數(shù)器置初值MOV DPTR,#TAB ;DPTR指向第一個(gè)顯示單元LOOP: MOV A,@R0ANL A,#0FH ;取第i個(gè)顯示單元的低4位MOVC A,@A+DPTR ;查譯碼表MOC SBUF,A ;第i個(gè)顯示單元的低4位的顯示碼送串口緩沖器WAIT1: JNB TI,$ ;未發(fā)送完,等待CLR TI ;清發(fā)送中斷標(biāo)志MOV A,@R0ANL A,#0F0H ;取第i個(gè)顯示單元的高4位SWAP AMOVC A,@A+DPTR ;查譯碼表MOC SBUF,A ;第i個(gè)顯示單元的高4位的顯示碼送串口緩沖器WAIT2: JNB TI,$ ;未發(fā)送完,等待CLR TI ;清發(fā)送中斷標(biāo)志INC R0DJNZ R2,LOOP ;未發(fā)送完4個(gè)單元的8個(gè)字符,返回繼續(xù)RETTAB:DB 03H,9FH,25H,0DH,99H,DB 49H,41H,1FH,01H,19H3.動(dòng)態(tài)掃描顯示接口圖9-6動(dòng)態(tài)掃描顯示接口電路;-----------------主程序------------------STAR: ∶ ∶LOOP: ∶ACALL S00EF ;將顯示緩沖區(qū)內(nèi)容送去顯示∶ ∶SJMP LOOP;--------------送顯示子程序--------------DISP: CLR A ORL A,P3 ;取P3口內(nèi)容

ANL A,#0F0H MOV R3,A ;保護(hù)P3口高4位

MOV A,43H ;取位選信號(hào)

ANL A,#0FH ;位選信號(hào)送A的低4位

ORL A,R3 ;P3口高4位送A的高4位

MOV R0,34H ;取段選指針

MOV P1,#0FFH ;關(guān)顯

MOV P3,A ;輸出位選信號(hào)

MOV A,@R0 ;顯示內(nèi)容送A MOV DPTR,#TAB ;譯碼表首址送DPTR MOVC A,@A+DPTR ;查表譯顯示碼

MOV P1,A ;輸出段選信號(hào)1MOV A,43H ; RL A ; MOV 43H,A ;位選指針指向下一位

INC 34H ;段選指針指向下一位

JB ACC.0,DONE ;不到最后一位,轉(zhuǎn)

MOV 34H,#50H ;段選指針復(fù)位

MOV 43H,#0EEH ;位選指針復(fù)位DONE: RET;-----------------顯示譯碼表---------------TAB: DB0C0H ;顯示字符0,相對(duì)地址00HDB0F9H ;1DB0A4H ;2DB0B0H ;3DB99H ;4DB92H ;5DB82H ;6DB0F8H ;7DB80H ;8DB90H ;9圖9-7按鍵與單片機(jī)直接連接圖9-8帶鎖存器的按鍵與單片機(jī)的接口電路

圖9-9按鍵接口程序流程圖程序如下:KSCAN: MOV DPTR,#7FFFH ;指向244MOVX A,@DPTR ;讀244ANL A,#0FH ;取4個(gè)按鍵的值CJNE A,#0FH,LOOS ;無(wú)鍵按下,轉(zhuǎn)去判斷是否鍵放開(kāi)JB 11H,L0475 ;鍵有效標(biāo)志等于1,等待鍵放開(kāi),返回JC 10H,SETSYN ;第一次發(fā)現(xiàn)鍵按下,轉(zhuǎn)去置標(biāo)志,存鍵值CJNE A,R4,CLRSYN ;兩次讀得的按鍵值不同,鍵無(wú)效,清第一次發(fā)現(xiàn)鍵按下標(biāo)志SETB 11H ;置鍵有效標(biāo)志RETLOOS : JNB 11H,RETUR ;鍵有效標(biāo)志等于0,未按過(guò)鍵,返回

SJMP KEYDO ;鍵放開(kāi),轉(zhuǎn)鍵處理SETSYN: SETB 10H ;置第一次發(fā)現(xiàn)鍵按下標(biāo)志MOV R4,A ;保存鍵值SJMP RETUR ;返回CLRK: CLR 11H ;清鍵有效標(biāo)志CLRSYN: CLR 10H ;清第一次發(fā)現(xiàn)鍵按下標(biāo)志MOV R4,#00H ;清鍵值暫存單元RETKEYDO: RRC AJC JUS2 ;沒(méi)按S1,再判斷S2ALMP DOS1 ;轉(zhuǎn)鍵S1處理程序JUS2: JC JUS3 ;沒(méi)按S2,再判斷S3ALMP DOS2 ;轉(zhuǎn)鍵S2處理程序JUS3: JC JUS4 ;沒(méi)按S3,再判斷S4ALMP DOS3 ;轉(zhuǎn)鍵S3處理程序JUS4: JC RETUR ;沒(méi)按S4,誤判斷,退出

ALMP DOS4 ;轉(zhuǎn)鍵S4處理程序DOS1: …… ;鍵S1處理程序……SJMP RETURDOS2: …… ;鍵S2處理程序……SJMP RETURDOS3: …… ;鍵S3處理程序……SJMP RETURDOS4: …… ;鍵S4處理程序……SJMP RETUR三、鍵盤(pán)與單片機(jī)的接口圖9-10鍵盤(pán)與單片機(jī)的接口電路圖9-11鍵盤(pán)接口程序流程圖二、A/D轉(zhuǎn)換器與單片機(jī)的接口圖9-12ADC0801~ADC0805

圖9-13ADC0801~0805與單片機(jī)的接口9.3D/A轉(zhuǎn)換器與單片機(jī)的連接一、D/A轉(zhuǎn)換器的基本原理圖9-14T型網(wǎng)絡(luò)D/A轉(zhuǎn)換器二、D/A轉(zhuǎn)換器與單片機(jī)的接口1.內(nèi)部結(jié)構(gòu)圖9-15DAC0832的引腳排列

圖9-16DAC0832結(jié)構(gòu)圖3.接口電路(1)單緩沖器方式圖9-17DAC0832與單片機(jī)的接口(2)雙緩沖器方式圖9-18多路DAC0832同步轉(zhuǎn)換的接口電路程序如下:MOVDPTR,#0DFFFH;指向0832(1)MOVA,#data1MOVX@DPTR,A;data1送0832(1)鎖存器MOVX@DPTR,#0BFFFH;指向0832(2)MOVA,#data2MOVX@DPTR,A;data2送0832(2)鎖存器MOVDPTR,#7FFFH;指向0832(1)和0832(2)的數(shù)據(jù)傳送端MOVX@DPTR,A;data1和data2同時(shí)送D/A轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換9.4MCS-51單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)舉例一、系統(tǒng)構(gòu)成及控制原理圖9-19糖果包裝機(jī)的結(jié)構(gòu)圖圖9–20走紙輪的頂視圖圖9-21相位誤差與速度誤差圖9-22控制流程圖二、硬件電路1.主程序圖9-23硬件電路圖9-24主程序流程圖-------------初始化------------------

ORG0000HAJMPADR00ORG0003HCLREX0;關(guān)外部中斷0,以防止脈沖抖動(dòng)造成中斷重復(fù)響應(yīng)

AJMPINT0ORG000BHAJMPT0ORG0013HCLREX1;關(guān)外部中斷1

AJMPINT1ORG001BHAJMPT1ORG0030HADR00:MOVR0,#20H;20H~70H單元清0

MOVR1,#50HCLRAADR10:MOV@R0,AINCR0DJNZR1,ADR10ACALLSUB1;清顯示器

MOVSP,#5FH;堆棧從60H開(kāi)始

MOVSCON,#00H;串行口置為方式0MOVA,43H;相位滯后誤差送AACALLSUB2;將A中絕對(duì)誤差轉(zhuǎn)為相對(duì)誤差放在R7中

MOVA,R7CLRCSUBBA,#2JNCADR20;相位滯后小于2%,返回JBP1.0,ADR75;電磁離合齒輪有電,轉(zhuǎn)MOVR5,43H;保存本次測(cè)量的相位誤差SETBP1.0;電磁離合齒輪通電,提速2%AJMPADR20;返回ADR75:MOVA,R5;取回上次測(cè)量的相位誤差CLRCSUBBA,43H;減本次測(cè)量的相位誤差進(jìn)行比較JNCADR20;本次測(cè)量的相位誤差小,返回SETBP1.1;否則,脹緊電機(jī)正轉(zhuǎn),提速M(fèi)OVR2,#06H;設(shè)置最小提速量ACALLSUB3;延時(shí)0.6秒CLRP1.1;停止脹緊電機(jī)正轉(zhuǎn)AJMPADR20;-------------------相位超前誤差調(diào)整-------------------ADR80:MOVA,42H;相位超前誤差送AACALLSUB2;將A中絕對(duì)誤差轉(zhuǎn)為相對(duì)誤差放在R7中

MOVA,R7CLRCSUBBA,#2JCADR20;相位超前誤差小于2%,返回JNBP1.0,ADR85;電磁離合齒輪未通電,轉(zhuǎn)取比較兩次測(cè)量的誤差MOVR6,42H;保存本次測(cè)量的誤差CLRP1.0;電磁離合齒輪斷電,減速2%AJMPADR20;返回ADR85:MOVA,R6;取回上次測(cè)量的誤差CLRCSUBBA,42H;減本次測(cè)量的誤差JNCADR20;本次測(cè)量的誤差小,返回SETBP1.2;否則,脹緊電機(jī)反轉(zhuǎn),減速M(fèi)OVR2,#06H;設(shè)置最小減速量ACALLSUB3;延時(shí)0.6秒CLRP1.2;停止脹緊電機(jī)反轉(zhuǎn)AJMPADR202.子程序1)絕對(duì)誤差轉(zhuǎn)換為相對(duì)誤差子程序SUB2:MOVB,#64HMULABMOVR7,#00HADR90:CLRCSUBBA,41;誤差的百分?jǐn)?shù)減切紙周期

JCADR0A0;不夠減,轉(zhuǎn)

INCR7;夠減,商加1

AJMPADR90;返回再減ADR0A0:MOVR6,BCJNER6,#00H,ADR0B0AJMPADR0C0;無(wú)位可借,除法結(jié)束ADR0B0:DECB;借位

INCR7;商加1

AJMPADR90;返回再減ADR0C0:RET(2)R2×0.1秒延時(shí)子程序R2×0.1秒延時(shí)子程序,用于控制P1.1和P1.2輸出的脈沖寬度。 程序如下:SUB3:MOVR3,#64HADR0D0:MOVR4,#0F9HADR0E0:NOPNOPDJNZR4,ADR0E0DJNZR3,ADR0D0DJNZR2,SUB3RET3.中斷服務(wù)程序T0、T1、INT0和INT1中斷服務(wù)程序的流程圖如圖9-25~圖9-28。9-圖25T0中斷服務(wù)程序

圖9-26T1中斷服務(wù)程序圖9-27INT0中斷服務(wù)程序

圖9-28INT1中斷服務(wù)程序(4)INT1中斷服務(wù)程序INT1:PUSHPSWMOV41H,37H;取走紙周期

MOV37H,#00H;為下一次記數(shù)做準(zhǔn)備

MOV43H,36H;取走紙滯后切紙的時(shí)間

MOVR5,#00H;清監(jiān)視計(jì)數(shù)器

SETB11H;置檢測(cè)到走紙周期標(biāo)志

SETBRS0;選中1區(qū)工作寄存器

MOVR1,#30H;R1個(gè)位ADR0F0:INC@R1;顯示緩沖區(qū)某位加1

CJNE@R1,#0AH,ADR180;加1后不到10,退出

MOV@R1,#00H0;加1后等于10,將該位清0

INCR1;指向顯示緩沖區(qū)下一位

CJNER1,#36H,ADR0F0;不到顯示緩沖區(qū)最高位,返回將下一位加1MOVR0,#2FH;顯示緩沖區(qū)位指針R0賦初值

MOVR2,#06H;顯示位數(shù)送R2ADR100:INCR0;指向顯示緩沖區(qū)下一位

MOVDPTR,#ADR120;基址指針?biāo)椭赶蝻@示譯碼表首址

MOVA,@R0;某位顯示內(nèi)容送AMOVCA,@A+DPTR;顯示內(nèi)容譯成顯示碼后AMOVSBUF,A;顯示碼通過(guò)串口送去顯示ADR110:JNBTI,$;等待1個(gè)字節(jié)傳送完畢

CLRTI;清傳送完標(biāo)志,為下一次傳送做準(zhǔn)備

DJNZR2,ADR100;6位沒(méi)有全部顯示完,返回繼續(xù)顯示CLRRS0

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論