




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第四章串行接口與定時計數器1.
串行接口的一般概念單片機與外界進行信息交換稱之為通訊(Communication)。單片機的通訊方式有兩種:并行通訊:數據的各位同時發送或接收。串行通訊:數據一位一位順序發送或接收。參看下圖:一、串行接口及應用(一).異步通訊以字符為傳送單位用起始位和停止位標識每個字符的開始和結束。字符間隔不固定,只需字符傳送時同步。異步通訊常用格式:一個字符幀一.串行通訊的基本方式
D0D1D2D3D4D5D6D7停止位起始位異步通訊的雙方需要兩項約定:1.字符格式一幀字符位數的規定:數據位,校驗位,起始位和停止位。2.波特率(位/秒)——對傳送速率的規定波特率:每秒鐘傳送的位數,記為bps(bit/sec)。例:要求每秒傳送120個字符,每幀為10位。解:B=120×10=1200波特 每位0.83ms數據位傳輸率=120×8=960位/秒(二)同步通訊: 數據塊傳遞開始要用同步字符來指示,要求由時鐘來實現發送端與接收端之間的同步,故硬件較復雜。串行通信的校驗方法
目的:保證高效而無差錯的傳送數據。校驗位:可以奇校驗、偶校驗或沒有校驗位。奇偶校驗:主要用于對一個字符的傳輸過程進行校驗。通常把數據位和校驗位中1的個數為奇數個稱為奇校驗。通常把數據位和校驗位中1的個數為偶數個稱為偶校驗。異步傳輸信息冗余較大,例如:1+8+1+2中有效位數只有8位。 串行傳輸中的數據傳輸方向 如果在通信過程的任意時刻,信息只能由一方A傳到另一方B,則稱為單工。(無線電對講機) 如果在任意時刻,信息既可由A傳到B,又能由B傳A,但只能由一個方向上的傳輸存在,稱為半雙工傳輸。 如果在任意時刻,線路上存在A到B和B到A的雙向信號傳輸,則稱為全雙工。(電話)1.數據緩沖器SBUF發送SBUF和接收SBUF共用一個地址99H 。 1)發送SBUF存放待發送的8位數據,寫入SBUF將同時啟動發送。 發送指令: MOV SBUF,A2)接收SBUF存放已接收成功的8位數據,供CPU讀取。 接收指令: MOVA,SBUF一.串行接口控制字2.串行口控制/狀態寄存器SCON(98H)SM0,SM1:選擇串行口4種工作方式。SM2:多機控制位,用于多機通訊。REN:允許接收控制位,REN=1,允許接收;REN=0,禁止接收。TB8發送的第9位數據位,可用作校驗位和地址/數據標識位RB8:接收的第9位數據位或停止位TI:發送中斷標志,發送一幀結束,TI=1,必須軟件清零RI:接收中斷標志,接收一幀結束,RI=1,必須軟件清零3.節電控制寄存器PCONSMOD(PCON.7):波特率加倍控制位。SMOD=1,波特率加倍,SMOD=0,則不加倍。串行口的工作方式
方式0:同步方式(移位寄存器方式) 要想移位寄存器工作,需要向其時鐘輸入端CLK送去移位脈沖,接收一個脈沖便移動一位。該脈沖由TXD提供(移位脈沖),參與發送或接收的數據均出入于RXD端。可用于擴展8位并行輸入輸出口
輸出:將8位數據以fos/12的固定波特率從RXD輸出,低位在前,高位在后。發送完一幀數據后,發送中斷標志TI由硬件置位。
輸入:
置位允許接收控制位REN=1。當(RI)=0和(REN)=1同時滿足時,開始接收。當接收到第8位數據時,將數據移入接收寄存器,并由硬件置位RI。
方式1:波特率可變的10位異步通訊接口發送或接收一幀信息,包括1個起始位0,8個數據位和1個停止位1。輸出:串行數據從TXD引腳輸出,發送完一幀數據后,就由硬件置位TI。
輸入:在(REN)=1時,串行口采樣RXD引腳,當采樣到1至0的跳變時,確認是開始位0,就開始接收一幀數據。只有當(RI)=0且停止位為1或者(SM2)=0時,停止位才進入RB8,8位數據才能進入接收寄存器,并由硬件置位中斷標志RI;否則信息丟失。所以在方式1接收時,應先用軟件清零RI和SM2標志。
方式2:固定波特率的11位UART方式 它比方式1增加了一位可程控為1或0的第9位數據。
輸出:它可作為多機通訊中地址/數據信息的標志位,也可以作為數據的奇偶校驗位。
輸入:
在接收到附加的第9位數據后,當(RI)=0或者(SM2)=0時,第9位數據才進入RB8,8位數據才能進入接收寄存器,并由硬件置位中斷標志RI;否則信息丟失。且不置位RI。
再過一位時間后,不管上述條件時否滿足,接收電路即行復位,并重新檢測RXD上從1到0的跳變。
(4)方式3:異步第9位方式
方式3為波特率可變的11位UART方式。除波特率外,其余與方式2相同。當時鐘頻率選用11.0592MHZ時,取易獲得標準的波特率,所以很多單片機系統選用這個看起來“怪”的晶振就是這個道理。右表列出了定時器T1工作于方式2常用波特率及初值。常用波特率Fosc(MHZ)SMODTH1初值1920011.05921FDH960011.05920FDH480011.05920FAH240011.05920F4h120011.05920E8h串口的電平轉換電路RS232使EIA(ElectronicsIndustriesAssociation)組織推薦的、目前最常用的一種串行通訊接口標準。采用25芯連接器或9芯連接器。常用電平為-12V~+12V邏輯“1”為-3V~-25V,邏輯“0”為+3V~+25VTTL與EIA之間需要用接口電路進行轉換為什么需要電平轉換電路
單片機使用的是TTL電平,單片機的串口輸出信號也是如此,串行通信中一般使用的是RS232通信協議需要外接接口進行電平匹配MAX232和單片機串口連接的典型電路單片機和單片機之間的串行通信也需要電平轉換芯片嗎?對于兩個單片機而言,二者都是TTL電平,所以不需要電平轉換芯片。定時/計數器中的核心部件為可預置初值計數器。預置初值后開始計數,直至計數值歸0或產生溢出,可申請中斷。K1K2可預置初值計數器中斷請求功能選擇啟動控制內部時鐘脈沖(定時)外部輸入脈沖(計數)溢出信號計數脈沖計數初值二.定時/計數器的工作原理
例:設CTC中為8位加1計數器。按要求選擇功能和初值。1.要求檢測到100個脈沖,發中斷請求,通知CPU。選計數功能,計數初值為156。2.要求定時每隔100s時間,發一次中斷請求。設內部時鐘周期1s選定時功能,計數初值為156。一.定時/計數器的應用1.計數功能:生產線上產品計數。每個產品通過得到一個脈沖信號,計數器記錄脈沖個數,當計數值與設定值相等,啟動包裝機器。檢測轉速。電機轉動一圈發出一個脈沖,計數器記錄一秒時間內脈沖個數,顯示轉速。2.定時功能:用于實時控制,定時采樣、定時啟動等。當定時時間與設定值相等,執行規定操作。3 定時/計數器電路CTC3-2-1 MCS-51定時/計數器2個可獨立控制的16位定時器/計數器:T0、T1定時器初始化編程:1.功能選擇(定時/計數) 2.位數選擇(8/13/16位)3.啟動方式選擇(內部啟動/外部啟動)4.啟動控制(啟動/停止)5.恢復初值方式(自動重裝/軟件重裝)1)功能選擇位C/T:=0,定時功能,計數內部機器周期脈沖;=1,計數功能,計數引腳T0(T1)輸入的負脈沖。1.TMOD定時器方式寄存器(89H)T1T0一.定時器控制、狀態寄存器2)方式選擇位M1、M0:4種工作方式:13/16/8位3)門控方式選擇位GATE:=0,非門控方式(內部啟動):
TRx=1,啟動定時器工作;
TRx=0,停止定時器工作。=1,門控方式(外部啟動):TRx=1且引腳INTx=1才啟動。確定定時器工作方式指令:MOVTMOD,#方式字例:設T0用方式2非門控定時,T1用方式1門控計數。 MOV TMOD,#2.TCON定時器控制/狀態寄存器1)啟動控制位TR0、TR1=0,停止定時器工作=1,啟動定時器工作例:啟動T0: SETB TR02)溢出中斷標志位TF0、TF1定時器溢出使TFx=1,引起中斷請求,CPU響應Tx中斷后,自動清0TFx。可用軟件檢測TFx,必須軟件清0。
WAIT:JBCTF0,NEXT;檢測T0是否溢出
SJMP WAIT ;未溢出,繼續檢測
NEXT:… ;溢出,TF0清0,處理溢出3.可預置初值的16位加1計數器TH0、TL0、TH1、TL1預置T0初值指令: MOV TH0,#XH
MOV TL0,#XL二.
定時器工作方式
由方式選擇位M1、M0設定1.方式013位定時/計數器。THx8位和TLx低5位組成13位加1計數器計數外部脈沖個數:1~8192(213)定時時間(T=1s):1s~8.19ms2.方式116位定時/計數器。THx8位和TLx8位組成16位加1計數器計數外部脈沖個數:1~65536(216)定時時間(T=1s):1s~65536×T=65.54ms3.
方式2自動恢復初值8位定時/計數器。TLx為8位加1計數器,THx為8位初值暫存器。用于需要重復定時和計數的場合。最大計數值:256(28)最大定時時間(T=1s):256s4.方式3T0分成2個8位定時器:TL0定時/計數器和TH0定時器TL0占用T0控制位:C/T,TR0,GATE;TH0占用T1控制位:TR1,TF1。T1不能使用方式3工作5.計算時間常數X(計算初值)計數功能:X=2n-計數值 n:8/13/16定時功能:X=2n-t/T t:定時時間、T:機器周期定時器初始化編程:使用定時器工作之前,先寫入控制寄存器,確定好定時器工作方式1.按實際需要選擇定時/計數功能2.按時間或計數長度選擇方式3.計算時間常數初始化編程格式:MOVTMOD,#方式字;選擇方式MOVTHx,#XH ;裝入Tx時間常數MOVTLx,#XL(SETBEA ) ;開Tx中斷(SETBETx )SETBTRx ;啟動Tx定時器
三.MCS-51定時器的應用4.溢出處理編程格式:1)查詢方式:先查詢定時器溢出標志,再進行溢出處理。 … ;定時器初始化
WAIT:JBC TFx,PT;檢測溢出標志
SJMP WAIT PT: MOV THx,#XH;重裝時間常數
MOV TLx,#XL
… ;溢出處理
SJMP WAIT2)中斷方式:初始化后執行其他任務,中斷服務程序處理溢出。
ORG 0000H LJMP MAIN ORG 000BH(001BH);Tx中斷入口
LJMP PTS MAIN: … ;初始化后執行其他程序
PTS: … ;溢出中斷服務程序
MOV THx,#XH ;重裝時間常數
MOV TLx,#XL RETI四.舉例由P1.0輸出方波信號,周期為2ms,
設fosc=12MHz。2ms解:每隔1ms改變一次P1.0的輸出狀態。用T0非門控方式1定時。計算時間常數:X=216-t/T=216-1000/1=FC18H(1)查詢方式:
ORG0000h
JMPSTART ORG 1000H START: MOV TMOD,#01H MOV TL0,#18H MOV TH0,#0FCH SETB TR0 LOOP: JBC TF0,PTF0 SJMP LOOP PTF0: CPL P1.0 MOV TL0,#18H MOV TH0,#0FCH SJMP LOOPEND(2)中斷方式
ORG 0000H AJMP MAIN ORG 000BH AJMP PT0INT ORG 0100H MAIN: MOV SP,#60H MOV TMOD,#01H MOV TL0,#18H MOV TH0,#0FCH SETB EA SETB ET0 SETB TR0 HERE: SJMP HERE PT0INT:CPL P1.0 MOV TL0,#18H MOV TH0,#0FCH RETIEND長定時方法:增加一個軟件計數器或一個硬件計數器。硬件方式:T0定時,T1計數T0的定時跳變信號P1.0的負跳變次數,計滿5個跳變為1秒。P1.0P1.7編制程序使P1.7驅動LED亮1秒滅1秒地閃爍。設時鐘頻率為6MHzT0方式1定時,T1方式2計數T1計數值為5,初值為#0FBH;設置T0的定時值為100ms,初值為#3CH;T0溢出后(每100ms),P1.0反轉一次同時P1.0每下跳變一次(反轉兩次),T1計數一次累計5次,P1.7反轉一次START: MOVTMOD,#61H;T0方式1定時,T1方式2計數
MOVTL1,#0FBH;差5個負跳變就溢出,同時自動重裝
MOVTH1,#0FBH;T1計數值為5
CLRP1.0 SETBTR1;T1開始計數LOOP1: CPLP1.7LOOP2: MOVTL0,#3CH;設置T0的定時值為100ms, MOVTH0,#0B0H;每100ms作一次反相跳變
SETB TR0;T0開始計數LOOP3: JBC TF0,LOOP4;T0溢出后(每100ms),P1.0反轉一次
SJMP LOOP3;同時P1.0每下跳變一次(反轉兩次),LOOP4: CPL P1.0;T1計數一次
JBC TF1,LOOP1;累計5次,P1.7反轉一次
SJMP LOOP2例定時器外部引腳T0(T1)用作外部中斷信號輸入端。外部負脈沖引起中斷請求,選計數方式,時間常數為FFH。例:門控方式測量正脈沖寬度解:INT1引腳輸入被檢測信號,記錄在正脈沖的時間內包含機器脈沖個數。TR1=1 T1啟動
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 山東信息職業技術學院《三維數字圖像設計》2023-2024學年第二學期期末試卷
- 2025屆山東省聊城市高唐一中高三下學期3月月考數學試題
- 職高建筑說課課件
- 學法分享培養對知識的興趣課件-高中下學期主題班會
- 卵巢囊腫的護理查房課件
- 中級財務會計課程介紹
- 2024山西交通控股集團有限公司校園招聘450人筆試參考題庫附帶答案詳解
- 二零二五股份抵押合同書
- 二零二五版貨物運輸保險合同
- 劇組演職員聘用協議合同書范例二零二五年
- 【初中生物】食物中營養物質課件2024-2025學年人教版生物七年級下冊
- 礦產資源開發合作框架協議書范本
- 2025年寧波衛生職業技術學院單招職業技能測試題庫附答案
- 征文投稿(答題模板)原卷版-2025年高考英語答題技巧與模板構建
- 空壓機每日巡檢記錄表-
- 樁基工程技術標投標文件(技術方案)
- 2024年吉林水利電力職業學院高職單招職業技能測驗歷年參考題庫(頻考版)含答案解析
- 2025年重慶聯合產權交易所集團招聘筆試參考題庫含答案解析
- 廣西電力職業技術學院《外國刑法》2023-2024學年第一學期期末試卷
- 科技安全課件
- 2024年屠宰場屠宰加工業務承包經營協議3篇
評論
0/150
提交評論