




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第7章MCS-51單片機硬件資源
及其應用7.1MCS-51單片機并行I/O口及其應用
8051有4個8位并行I/O接口P0、P1、P2和P3,共32條雙向I/O口線。每個口的任意一位都是由鎖存器(即特殊功能寄存器P0~P3)、輸出驅動器和輸入緩沖器組成的,但它們在結構上有顯著區別,功能也有所不同。1.P0口
2.P1口
3.P2口
4.P3口
【例7-1】圖7-1是8051單片機應用系統,在P1.0口線上連接了一個按鍵,在P1.1口線上連接了一個發光二極管。要求當按鍵按下時點亮發光二極管,而當按鍵斷開時發光二極管熄滅。試編寫出相應的控制程序。
ORG 0000H LJMP START ORG 0030HSTART: ORL P1,#01H MOV C,P1.0 JC NEXT SETB P1.1 SJMP START NEXT: CLRP1.1 SJMPSTART END7.1.3簡單并行I/O接口的擴展在一些不太復雜的場合,常常采用TTL或CMOS電路的鎖存器或三態門做簡單的并行I/O接口擴展。常用的TTL芯片有74LS273、74LS244等。采用74LS244、74LS273擴展的簡單并行輸入/輸出接口7.1.4用8255A擴展單片機的并行I/O接口INTEL8255A芯片是一種通用的可編程并行I/O接口,它采用雙列直插式封裝,共有40條引腳,其中I/O線24條,分成A、B兩組(每組12條),允許分別編程。1.8255A的結構2.8255A的引腳及其功能3.8255A的工作方式方式0:基本的輸入/輸出方式,是較為常用的工作方式方式1:選通的輸入/輸出方式方式2:雙向傳輸方式只需知道有三種工作方式,并掌握方式0/CSA1A0/RD/WR操作對象操作種類00001A口讀端口A00101B口讀端口B01001C口讀端口C00010A口寫端口A00110B口寫端口B01010C口讀端口C01110控制寄存器寫控制寄存器1××××——8255A芯片和MCS-51單片機的連接【例7-2】設8255A各端口的工作方式為:A口為方式0輸入;B口為方式0輸出;C口的上半部為輸入,C口的下半部為輸出。若8255A的A口、B口、C口及控制端口地址分別為為7FFCH、7FFDH、7FFEH和7FFFH,試寫出送入方式控制字、及訪問A口、B口、C口的程序片段。
MOV A,#98H MOV DPTR,#7FFFH MOVX @DPTR,A MOV DPTR,#7FFCH MOVX A,@DPTR MOV DPTR,#7FFDH MOV A,#PB_DATA MOVX @DPTR,A MOV DPTR,#7FFEH MOVX A,@DPTR MOV A,#PC_DATA MOVX @DPTR,A8155(不用掌握)7.2MCS-51單片機的定時器/計數器及其應用(1)定時/計數器的結構方式寄存器TMOD控制寄存器TCON方式0方式1方式2方式3(僅T0有)【例7-3】編寫計數器T0初始化程序,要求如下:工作于方式0,計數值n=1,允許中斷。
MOV TMOD,#04H MOV TH0,#0FFH MOV TL0,#1FH MOV IE,#10000010B SETB TR0 【例7-4】編寫計數器T1初始化程序,要求如下:工作于方式1,計數值n=100,禁止中斷。
MOV TMOD,#50H MOV TH0,#0FFH MOV TL0,#9CH MOV IE,#00000000B SETB TR0 【例7-7】編程定時器T1初始化程序,要求如下:工作于方式2,定時時間為t=100,系統主頻,關中斷。
MOV TMOD,#20H MOV TL1,#06H MOV TH1,#06H MOV IE,#00000000B SETB TR1【例7-8】假設系統時鐘頻率為6MHz,要在P1.5上輸出周期為50mS、占空比為50%的正方波。試分別編寫用查詢法和中斷法實現的程序。查詢法
ORG 0000H AJMP START ORG 0030HSTART: MOV TMOD,#01 SET TR0LOOP: MOV TH0,#0FEH MOV TL0,#0CHLOOP1: JNB TF0,LOOP1 CLR TF0 CPL P1.5 SJMP LOOP END中斷法(書上程序有問題)
ORG 0000H AJMP MAIN ORG 000BH AJMP INT_T0 ORG 0030HMAIN: MOV SP,#60H MOV TMOD,#01 SETB TR0 SETB ET0 SETB EAHERE: AJMP HEREINIT_T0: MOV TL0,#0CH MOV TH0,#0FEH CPL P1.5 RETI7.3MCS-51單片機的串行接口及其應用MC5—51單片機內部有一個功能較強的全雙工的異步通訊串行口。所謂全雙工就是兩臺計算機之間串行接收、發送數據可同時進行;所謂異步通訊,就是收、發雙方不需要用一個時鐘信號來控制同步傳送。要傳送的串行數據是以數據幀(若干位二進制數)形式一幀一幀地發送,通過傳輸線由接收數據設備一幀一幀地接收。串行通訊基本概念異步通訊的基本概念通訊雙方必須統一規定通訊字符的格式、發送字符位與附加信息位的次序以及發送和接收的數據傳送速率。通常將對這些信息的約定叫作通訊規約或通訊協議,通訊雙方只有遵守相同的通訊規約,才能使通訊能夠順利進行。在某些通用領域中,為了使不同的廠家開發的產品能夠相互通訊,國家或行業規定了專門的標準通訊規約,對于特殊的應用領域,可以由用戶自行規定簡易的通訊規約。所謂波特率就是指串行數據傳送的速率,即單位時間內傳送數據的位數。波特率的單位為位/秒(BIT/S,一般記作bps)。實際上,要想通訊雙方的波特率完全相同是不可能的,為了保證通訊的可靠性,通訊雙方的波特率誤差應不大于2.5%。奇偶校驗是串行通訊中采用的一種簡單的檢驗方法,以提高傳送的正確度。所謂奇(偶)校驗就是利用奇偶校驗位的1,和數據中1的數目湊成奇(偶)數。二者湊成奇數的稱為奇校驗,湊成偶數的稱為偶校驗。通過比較發送端和接收端的數據“1”奇偶位數是否相符,可以大致判斷數據傳送過程中是否發生錯誤,如果奇偶位數不符,則傳送過程肯定出錯,所接收的數據無效,應予重新傳送。起始位和停止位,發送時一般由計算機硬件電路自動生成,接收時也由計算機硬件電路自動處理,用戶發送和接收數據時不必自行處理。在串行通訊中,通訊雙方在發送、接收中有三種工作方式:單工方式、半雙工方式和全雙工方式。1)單工方式單工方式只允許通訊雙方的數據按一個固定方向傳送,即發送的計算機專門發送,接收的計算機專門接收。2)半雙工方式半雙工方式允許通訊的雙方分時使用同一信道進行雙向傳輸。當甲方發送時,乙方接收;反之,當乙方發送時,甲方接收。在空閑時,甲、乙雙方一般都處于接收狀態以便隨時響應對方呼叫。3)全雙工方式全雙工方式中,通訊的甲乙雙方既是發送器又是接收器,可以同時發送或接收。雙方都有獨立的發送器和接收器,兩個方向的數據傳輸通道是分開的這三種數據傳輸方式在接收和發送控制上有差別,但發送和接收的基本工作原理是一樣的。串行口結構串行口控制寄存器1、串行口控制寄存器SCONSM0SM1SM2RENTB8RB8TIRI2、電源控制寄存器PCONSMOD3、中斷控制寄存器串行口的工作方式1)方式0方式0在實際系統中較少用到。串行口的工作方式0為同步移位寄存器輸人輸出方式,一般與外接移位寄存器相連,用以擴展并行I/O口,這種方式不適用于MCS-5l與其它計算機之間的串行通訊。方式0以8位數據為一幀,不設起始位和停止位,先發送或接收最低位,波特率是固定的,為fosc/12。方式0的幀格式如下:…D0D1D2D3D4D5D6D7…①方式0發送發送過程中,當CPU執行一條將數據寫入發送緩沖器SBUF的指令時,內部電路自動產生一個正脈沖觸發信號,串行口開始把SBUF中的8位數據以fosc/12的固定波特率從RXD引腳串行輸出,低位在先,TXD引腳輸出同步移位時鐘,發送完8位數據后置“1”中斷標志位TI。②方式0接收方式0接收時,REN為串行口接收允許控制位,REN=0,禁止接收;REN=1,允許接收。當向CPU串行口控制寄存器SCON寫入控制字(設置為方式0,并置“1”REN位,同時RI=0),內部電路自動產生一個正脈沖觸發信號,串行口開始接收數據。引腳RXD為數據輸入端,TXD為移位脈沖輸出端,接收器也以fosc/12的固定波特率采樣RXD引腳的數據信息,當接收器接收到8位數據時置“1”中斷標志TI。在方式0下,SCON中的TB8、RB8位沒用,發送或接收完8位數據由硬件置“1”TI或RI中斷標志位,CPU響應TI或RI中斷。TI或RI標志位必須由用戶軟件清0。方式0時SM2位(多機通訊控制位)必須為0。2)方式1SM0、SMl兩位為0、1時,串行口以方式1工作。方式1真正用于計算機系統之間的串行通訊,TXD腳和RXD腳分別用于發送和接收數據。方式1收發一幀的數據為10位,1個起始位(0),8個數據位,1個停止位(1),先發送或接收最低位。…起始位D0D1D2D3D4D5D6D7停止位…方式1時,串行口作為波特率可變的8位異步通訊接口。方式1的波特率由下式確定:式中的SMOD為PCON寄存器的最高位的值(0或1)。如果系統晶振頻率為fOSC,定時器T1工作于方式2(8位自動重裝入方式),定時常數為N(即計滿N個機器周期數后溢出),則定時器T1溢出率由下式確定:實際應用中,往往是給定波特率,然后根據上述兩式求出定時常數N①方式1發送串行口以方式1輸出時,數據位由TXD引腳輸出,發送一幀信息為10位,1位起始位“0”,8位數據位(低位在前)和1位停止位“1”。當CPU將一個字節數據寫到SBUF時,內部電路自動產生一個正脈沖觸發信號,就啟動發送。②方式1接收串行口以方式1接收時,數據從RXD引腳輸入。當CPU檢測到起始位的負跳變時,開始接收。以上關于方式1的發送和接收過程的介紹,目的在于幫助大家了解這種方式下的串行數據傳遞的原理,實際應用時,數據的檢測過程都是由硬件電路自動完成的,用戶使用時不必進行檢測操作。3)方式2串行口工作于方式2和方式3時,被定義為9位異步通訊接口。每幀數據均為11位,l位起始位“0”,8位數據位(先低位后高位),一位可由用戶自行設定為“1”或“0”的第9位數據和一位停止位“1”。…起始位D0D1D
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年銀行資格證考試拓展試題及答案
- 2024年畜牧師職稱考試復習資料匯編及試題及答案
- 應對畜牧業挑戰的試題及答案發展戰略
- 2025年銀行從業資格考試在線學習平臺評估試題及答案
- 小語種證書考試小技巧試題及答案
- 2025年銀行從業資格證考試難易分析試題及答案
- 銀行從業資格證考試2025年確立目標的試題及答案
- 2024網絡編輯師考試研究與試題及答案
- 小語種文化交流理解試題及答案
- 2024年小語種證書考試要點復習與試題及答案
- 小學語文課程方案2022
- 幼兒園課件:《動物的尾巴》
- Q∕GDW 1572-2014 計量用低壓電流互感器技術規范
- 2022年版初中物理課程標準解讀-課件
- 河南省洛陽市新安縣2023-2024學年八年級下學期4月期中道德與法治試題
- DB11-T 2207-2023 市政橋梁工程數字化建造標準
- 校園足球教育知識講座
- 2022-2023學年湖南省長沙市重點中學高一下學期期中考試化學試卷
- 硼元素植物研究報告總結
- 中職英語 基礎模塊2 Unit 4 Volunteer Work
- 水上交通整治方案
評論
0/150
提交評論