![并行串行接口51-2012_第1頁](http://file4.renrendoc.com/view/5eaaf6573989cc75b4c981d0a479f781/5eaaf6573989cc75b4c981d0a479f7811.gif)
![并行串行接口51-2012_第2頁](http://file4.renrendoc.com/view/5eaaf6573989cc75b4c981d0a479f781/5eaaf6573989cc75b4c981d0a479f7812.gif)
![并行串行接口51-2012_第3頁](http://file4.renrendoc.com/view/5eaaf6573989cc75b4c981d0a479f781/5eaaf6573989cc75b4c981d0a479f7813.gif)
![并行串行接口51-2012_第4頁](http://file4.renrendoc.com/view/5eaaf6573989cc75b4c981d0a479f781/5eaaf6573989cc75b4c981d0a479f7814.gif)
![并行串行接口51-2012_第5頁](http://file4.renrendoc.com/view/5eaaf6573989cc75b4c981d0a479f781/5eaaf6573989cc75b4c981d0a479f7815.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第五節(jié)
I/O接口電路5-1 單片機并行接口PIO第六節(jié) 串行I/O接口SIO5-1 并行接口PIOPIO:并行I/O接口用于微型機與外部設備之間并行傳送數(shù)據(jù)。5-1-1 MCS-51的并行接口4個8位雙向并行IO接口:P0.0~P0.7、P1.0~P1.7、P2.0~P2.7、P3.0~P3.7。多功能I/O接口,CPU按當前操作自動進行功能切換。片內(nèi)接口寄存器在SFR中的映象地址:
1.I/O數(shù)據(jù)鎖存器:P0、P1、P2、P3、SBUF
2.I/O控制/狀態(tài)寄存器:
IE、IP、TCON、TMOD、SCON、PCON一.PIO接口內(nèi)部結(jié)構(gòu):輸出鎖存器、輸出驅(qū)動器、輸入緩沖器及多路功能切換電路。 輸入從I/O引腳上輸入信號,讀信號使引腳信號通過下三態(tài)門進入內(nèi)部總線。為保證可靠輸入,先寫入“1”
。
MOV P1,#0FFH ;使輸出驅(qū)動器截止
MOV A,P1 ;輸入二.PIO接口的三種操作
1.輸出鎖存:輸出將使數(shù)據(jù)寫入輸出鎖存器。輸出指令: MOV P1,A
MOV P1.0,C2.輸入三態(tài):輸入從I/O引腳上輸入信號,讀信號打開,引腳信號通過下三態(tài)門進入內(nèi)部總線。為保證可靠輸入,先寫入“1”
。
MOV P1,#0FFH ;使輸出驅(qū)動器截止
MOV A,P1 ;輸入3.讀-修改-寫:修改輸出鎖存器的內(nèi)容。鎖存器中的數(shù)據(jù)通過上三態(tài)門進入內(nèi)部總線,修改后再寫入到鎖存器中。讀-修改-寫指令:PIO為目的操作數(shù)的指令
ANLP1,A三.PIO的使用
1.P0口:并行雙向接口或系統(tǒng)總線DB0~7/AB0~72.P1口:稱為用戶I/O接口。對片內(nèi)EPROM編程時,用作EPROM低8位地址信號線。 四.接口負載能力
P0驅(qū)動8個TTL電路,P1,P2,P3可驅(qū)動4個TTL電路3.P2口:雙向I/O接口或高8位地址總線AB8~15對讀寫片外存儲器后,引腳仍恢復輸出鎖存器的內(nèi)容。
MOV P2,#20H MOV R0,#00 MOVXA,@R04.P3口:雙向并行接口和第二功能: 串行接口引腳:TXD、RXD
中斷輸入引腳:INT0、INT1
定時器輸入引腳:T0、T1
讀寫控制線:RD、WR
P1、P2和P3為準雙向口。五.應用舉例例:用4個發(fā)光二極管對應顯示4個開關(guān)的開合狀態(tài)。 如P1.0合則P1.4亮。MCS-51P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.01.無條件傳送方式:指示燈立即反映開關(guān)狀態(tài)。 ORG0000H AJMPMAIN ORG0100HMAIN:ORLA,#0FH MOVP1,A MOVA,P1 SWAPA MOVP1,A SJMPMAIN2.中斷傳送方式:
先設好開關(guān)狀態(tài),然后發(fā)出中斷請求信號,改變指示燈亮滅狀態(tài)。 ORG 0000H AJMPMAIN ORG 0003H AJMPIOINT ORG 0100HMAIN:SETBIT0 SETBEX0 SETBEAHERE:SJMPHERE ORG 0500HIOINT:MOVA,#0FFH MOV P1,A MOV A,P1 SWAPA MOV P1,A RETIP1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0INT0MCS-51K+5V第六節(jié) 串行I/O接口SIO一.串行通訊的基本方式(一).異步通訊以字符為傳送單位用起始位和停止位標識每個字符的開始和結(jié)束字符間隔不固定,只需字符傳送時同步。異步通訊常用格式:一個字符幀異步通訊的雙方需要兩項約定:1.字符格式一幀字符位數(shù)的規(guī)定:數(shù)據(jù)位,校驗位,起始位和停止位。2.波特率(位/秒)對傳送速率的規(guī)定例:要求每秒傳送120個字符,每幀為10位。解:B=120×10=1200波特 每位0.83ms(二).同步通訊以一串字符為一個傳送單位,字符間不加標識位,在一串字符開始用同步字符標識,硬件要求高,通訊雙方須嚴格同步。D4D0D1D2D3D5D6D7停止位起始位二.串行接口功能1.發(fā)送器:并串數(shù)據(jù)格式轉(zhuǎn)換,添加標識位和校驗位,一幀發(fā)送結(jié)束,設置結(jié)束標志,申請中斷。2.接收器:串并數(shù)據(jù)格式轉(zhuǎn)換,檢查錯誤,去掉標識位,保存有效數(shù)據(jù),設置接收結(jié)束標志,申請中斷。3.控制器:接收編程命令和控制參數(shù),設置工作方式:同步/異步、字符格式、波特率、校驗方式、數(shù)據(jù)位與同步時鐘比例等。三.串行數(shù)據(jù)傳送方向單工通訊:數(shù)據(jù)單向傳送。半雙工通訊:數(shù)據(jù)可分時雙向傳送。全雙工通訊:可同時進行發(fā)送和接收。發(fā)送器接收器發(fā)送器接收器接收器發(fā)送器接收器發(fā)送器發(fā)送器接收器
6-1 MCS-51串行接口
1個全雙工串行接口,可同時進行發(fā)送和接收。串行接口輸入/輸出引腳:TXD(P3.1)、RXD(P3.0)數(shù)據(jù)格式:按不同方式,一幀位數(shù)8/10/11發(fā)送/接收時,數(shù)據(jù)皆低位在前。一幀字符發(fā)送/接收結(jié)束,置位標志位(TI/RI)并申請SIO中斷。中斷控制:中斷允許位ES中斷入口:0023HD0D1D2D3D4D5D6D7停止位起始位D0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D8停止位起始位D7一.串行接口控制1.數(shù)據(jù)緩沖器SBUF發(fā)送SBUF和接收SBUF共用一個地址99H 。 1)發(fā)送SBUF存放待發(fā)送的8位數(shù)據(jù),寫入SBUF將同時 啟動發(fā)送。 發(fā)送指令:
MOV SBUF,A2)接收SBUF存放已接收成功的8位數(shù)據(jù),供CPU讀取。 讀取串行口接收數(shù)據(jù)指令:
MOVA,SBUF一.串行接口控制1.數(shù)據(jù)緩沖器SBUF2.串行口控制/狀態(tài)寄存器SCON(98H)SM0,SM1:選擇串行口4種工作方式。SM2:多機控制位,用于多機通訊。REN:允許接收控制位,REN=1,允許接收;REN=0,禁止接收。TB8發(fā)送的第9位數(shù)據(jù)位,可用作校驗位和地址/數(shù)據(jù)標識位RB8:接收的第9位數(shù)據(jù)位或停止位TI:發(fā)送中斷標志,發(fā)送一幀結(jié)束,TI=1,必須軟件清零RI:接收中斷標志,接收一幀結(jié)束,RI=1,必須軟件清零SM0SM1SM2RENTB8RB8TIRISM0SM1方式0000111021133.節(jié)電控制寄存器PCONSMOD(PCON.7):波特率加倍控制位。SMOD=1,波特率加倍,SMOD=0,則不加倍。二.串行接口的工作方式
SM0,SM1選擇四種工作方式。(1)方式0:同步移位寄存器方式。用于擴展并行I/O接口。1.一幀8位,無起始位和停止位。2.RXD:數(shù)據(jù)輸入/輸出端。
TXD:同步脈沖輸出端,每個脈沖對應一個數(shù)據(jù)位。3.波特率B=fosc/12
如:fosc=12MHz, B=1MHz,每位數(shù)據(jù)占1s。4.發(fā)送過程:寫入SBUF,啟動發(fā)送,一幀發(fā)送結(jié)束,TI=1。
接收過程:REN=1且RI=0,啟動接收,一幀接收完畢,RI=1。
發(fā)送時序?qū)懭隨BUFRXD輸出TXDTID0D1D2D3D4D5D6D7寫REN=1RI=0RXD輸入RI接收時序(a)(b)(2)方式1。8位數(shù)據(jù)異步通訊方式。1.一幀10位:8位數(shù)據(jù)位,1個起始位(0),1個停止位(1)。2.RXD:接收數(shù)據(jù)端。
TXD:發(fā)送數(shù)據(jù)端。3.波特率:用T1作為波特率發(fā)生器,B=(2SMOD/32)×T1溢出率。4.發(fā)送:寫入SBUF,同時啟動發(fā)送,一幀發(fā)送結(jié)束,TI=1。
接收:REN=1,允許接收。接收完一幀,使RI=1。寫入SBUF采樣(a)發(fā)送時序圖TXD數(shù)據(jù)輸出TID0D1D2D3D4D5D6D7停止位起始位RXD輸入數(shù)據(jù)(b)接收時序圖D0D1D2D3D4D5D6D7停止位起始位RI檢測負跳變當REN=1,CPU開始采樣RXD引腳負跳變信號,若出現(xiàn)負跳變,才進入數(shù)據(jù)接收狀態(tài),先檢測起始位,若第一位為0,繼續(xù)接收其余位。數(shù)據(jù)采樣速率為波特率16倍頻,在數(shù)據(jù)位中間,用第7、8、9個脈沖采樣3次數(shù)據(jù)位,并3中取2保留采樣值。(3)方式2和方式39位數(shù)據(jù)異步通訊方式。1.一幀為11位:9位數(shù)據(jù)位,1個起始位(0),1個停止位(1)。 第9位數(shù)據(jù)位在TB8/RB8中,常用作校驗位和多機通訊標識位。2.RXD:接收數(shù)據(jù)端,TXD:發(fā)送數(shù)據(jù)端。3.波特率:方式2:B=(2SMOD/64)×fosc。
方式3:B=(2SMOD/32)×T1溢出率。4.發(fā)送:先裝入TB8,寫入SBUF并啟動發(fā)送,發(fā)送結(jié)束,TI=1。接收:REN=1,允許接收。接收完一幀,若RI=0且第9位為1(或SM2=0),將接收數(shù)據(jù)裝入接收SBUF,第9位裝入RB8,使RI=1;否則丟棄接收數(shù)據(jù),不置位RI。發(fā)送時序?qū)懭隨BUFTXD輸出TIRXD輸入接收時序RID0D1D2D3D4D5D6TB8停止位起始位D7D0D1D2D3D4D5D6RB8停止位起始位D7檢測負跳變(4)計算波特率方式0為固定波特率:B=fosc/12 方式2可選兩種波特率:B=(2SMOD/64)×fosc 方式1、3為可變波特率,用T1作波特率發(fā)生器。
B=(2SMOD/32)×T1溢出率T1為方式2的時間常數(shù):X=28-t/T溢出時間:t=(28-X)T=(28-X)×12/foscT1溢出率=1/t=fosc/[12×(2n-X)]
波特率B=(2SMOD/32)×fosc/[12×(28-X)]串行口方式1、3,根據(jù)波特率選擇T1工作方式,計算時間常數(shù)。T1選方式2:TH1=X=28-fosc/12×2SMOD/(32×B)6-2 串行口的應用串行口初始化編程格式:
SIO:MOVSCON,#控制狀態(tài)字;寫方式字且TI=RI=0 (MOVPCON,#80H) ;波特率加倍
(MOVTMOD,#20H) ;T1作波特率發(fā)生器
(MOVTH1,#X) ;選定波特率
(MOVTL1,#X) (SETBTR1) (SETBEA) ;開串行口中斷
(SETBES)發(fā)送程序:先發(fā)送一個字符,等待TI=1后再發(fā)送下一個字符。1.查詢方式:TRAM: MOV A,@R0 ;取數(shù)據(jù)
MOV SBUF,A ;發(fā)送一個字符WAIT: JBC TI,NEXT ;等待發(fā)送結(jié)束
SJMP WAITNEXT: INC R0 ;準備下一次發(fā)送
SJMP TRAM2.中斷方式:
ORG 0023H ;串行口中斷入口
AJMPSINTMAIN: … ;初始化編程
TRAM: MOV A,@R0 ;取數(shù)據(jù)
MOV SBUF,A ;發(fā)送第一個字符
H: SJMP H ;其它工作
SINT: CLRTI ;中斷服務程序
INC R0 MOV A,@R0 ;取數(shù)據(jù)
MOV SBUF,A ;發(fā)送下一個字符
RETI接收程序:REN=1、RI=0等待接收,當RI=1,從SBUF讀取數(shù)據(jù)。1.查詢方式:WAIT: JBC RI,NEXT ;查詢等待
SJMP WAITNEXT: MOV A,SBUF ;讀取接收數(shù)據(jù)
MOV @R0,A ;保存數(shù)據(jù)
INC R0 ;準備下一次接收
SJMP WAIT2.中斷方式:
ORG 0023H AJMP RINTMAIN: … ;初始化編程
H: SJMP H ;其它任務
RINT: CLR RI ;清中斷標志
MOV A,SBUF ;讀取接收數(shù)據(jù)
MOV @R0,A ;保存數(shù)據(jù)
INC R0 RETI(一)串行口方式0用于擴展單片機的并行I/O接口。串行口實現(xiàn):并行→串行的數(shù)據(jù)轉(zhuǎn)換74LS165/74LS164實現(xiàn):串行→并行的數(shù)據(jù)轉(zhuǎn)換。(二)異步通訊程序舉例1.發(fā)送程序:將片內(nèi)RAM50H起始單元的16個數(shù)由串行口發(fā)送。發(fā)送波特率為系統(tǒng)時鐘的32分頻,并進行奇偶校驗。MAINT:MOV SCON,#80H;串行口初始化
MOV PCON,#80H;波特率
SETB EA SETB ES ;開串行口中斷
MOV R0,#50H ;設數(shù)據(jù)指針
MOV R7,#10H ;數(shù)據(jù)長度LOOP: MOV A,@R0 ;取一個字符
MOV C,P ;加奇偶校驗
MOV TB8,C MOV SBUF,A ;啟動一次發(fā)送HERE: SJMP HERE ;CPU執(zhí)行其它任務SM0SM1SM2RENTB8RB8TIRI
ORG 0023H ;串行口中斷入口 AJMP TRANI
TRANI: PUSH A ;保護現(xiàn)場
PUSH PSW CLR TI ;清發(fā)送結(jié)束標志
DJNZ R7,NEXT ;是否發(fā)送完?
CLR ES ;發(fā)送完,關(guān)閉串行口中斷 SJMP TEND NEXT: INC R0 ;未發(fā)送完,修改指針
MOV A,@R0 ;取下一個字符
MOV C,P ;加奇偶校驗
MOV TB8,C MOV SBUF,A ;發(fā)送一個字符
POP PSW ;恢復現(xiàn)場
POP A TEND: RETI ;中斷返回2.接收程序:串行輸入16個字符,存入片內(nèi)RAM的50H起始單元,串行口波特率為2400(設晶振為11.0592MHz),。RECS: MOV SCON,#50H;串行口方式1允許接收 MOV TMOD,#20H;T1方式2定時 MOV TL1,#0F4H ;寫入T1時間常數(shù) MOV TH1,#0F4H SETBTR1 ;啟動T1 MOV R0,#50H ;設數(shù)據(jù)指針 MOV R7,#10H ;接收數(shù)據(jù)長度 WAIT: JBC RI,NEXT ;等待串行口接收 SJMPWAIT NEXT: MOV A,SBUF ;讀取接收字符 MOV
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023六年級數(shù)學下冊 四 正比例與反比例第1課時 變化的量說課稿 北師大版
- 2023三年級英語上冊 Assessment 4說課稿1 湘少版001
- 2025關(guān)于合同訂立的原則
- 2024-2025學年高中歷史 第二單元 中國古代政治家 第6課 康熙皇帝與多民族國家的鞏固(2)教學說課稿 岳麓版選修4
- 2023八年級數(shù)學上冊 第2章 三角形2.4 線段的垂直平分線第2課時 線段垂直平分線、垂線的作法說課稿 (新版)湘教版
- 中心大樓建筑合同范例
- Unit 1 My school Part A(說課稿)-2023-2024學年人教PEP版英語四年級下冊
- 2024-2025學年高中化學下學期第14周《碳、硅單質(zhì)及無機金屬材料》說課稿
- 中醫(yī)加盟合同范例
- 千人合同范例
- 2024年4月27日浙江省事業(yè)單位招聘《職業(yè)能力傾向測驗》試題
- 2024年6月浙江省高考地理試卷真題(含答案逐題解析)
- 物業(yè)管理服務應急響應方案
- 醫(yī)院培訓課件:《如何撰寫護理科研標書》
- 風車的原理小班課件
- 河南省鄭州市2023-2024學年高二上學期期末考試 數(shù)學 含答案
- 2024年山東省濟南市中考英語試題卷(含答案)
- 2024年北師大版八年級上冊全冊數(shù)學單元測試題含答案
- 江蘇省南京市第二十九中2025屆數(shù)學高二上期末學業(yè)質(zhì)量監(jiān)測模擬試題含解析
- 六年級數(shù)學競賽試題及答案(六套)
- 八年級下學期期末考試語文試題(PDF版含答案)
評論
0/150
提交評論