freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設計-基于gps與單片機通信(編輯修改稿)

2025-02-13 00:55 本頁面
 

【文章內(nèi)容簡介】 個字節(jié))為特殊寄存器( SFR)單元。從下圖中可清楚地看出它們的結(jié)構(gòu)分布。 9 特殊功能寄存器區(qū)( SFR) 數(shù)據(jù)緩沖區(qū)堆棧區(qū)工作單元 位尋址區(qū) 3 區(qū) 2 區(qū) 1 區(qū) 0 區(qū) 24 內(nèi)部 RAM分配圖 在 00H— 1FH共 32個單元中被均勻地分為四塊,每塊包含八個 8位寄存器, 均以 R0— R7來命名,我們常稱這些寄存器為通用寄存器。 CPU只要定義這個寄存的 PSW的第 3和第 4位( RS0和 RS1),即可選中這四組通用寄存器。對應的編碼關系如圖表 2- 1所示。 表 21 PSW與工作寄存器關系 (RS!) (RS0) 工作寄存器區(qū) 0 0 0區(qū) 00H— 07H 0 1 1區(qū) 08H— 0FH 1 0 2區(qū) 10H— 17H 1 1 3區(qū) 18H— 1FH 特殊 功能寄存器( SFR)也稱為專用寄存器,特殊功能寄存器反映了 MCS51 單片機的運行狀態(tài)。 [9]很多功能也通過特殊功能寄存器來定義和控制程序的執(zhí)行。 MCS51有 21個特殊功能寄存器,它們被離散地分布在內(nèi)部 RAM的 80H— FFH地址中,這些寄存器的功能已作了專門的規(guī)定,所以用戶不能修改其結(jié)構(gòu)。內(nèi)部 RAM的 20H— 2FH單元為位尋址區(qū),既可作為一般單元用字節(jié)尋址,也可對它們的位進行尋址。位尋址區(qū)共有 16個字節(jié), 128個位,位地址為 00H— 7FH。 CPU能直接尋址這些位,執(zhí)行例如置“ 1”、清“ 0”、求“反”、只能字節(jié)尋址 可字節(jié)尋址 亦可 位尋址 全部可位尋址 共 16 個 字節(jié) 128 位 4 組通用寄存器 R0R7 也可作 RAM 使用, R0、 R1 亦可位尋址 FFH 80H 7FH 20H 2FH 00H 20H 1FH 10 轉(zhuǎn)移,傳送和邏輯等操作。我們常稱 MCS51具有布爾處理功能,布爾處理的存儲空間指的就是這些為尋址區(qū)。 輸入 /輸出端口 MCS51單片機有 4個雙向并行的 8位 I/O口 P0~ P3, P0口為三態(tài)雙向口, 可驅(qū)動 8個 TTL電路, P P P3口為準雙向口,其負載能力為 4個 TTL電路。 ~ ( 39~ 32腳): 8位漏極開路的三態(tài)雙向輸入 /輸出口。可作為一般的 I/O口使用,也可作為數(shù)據(jù)線、地址線使用。 ~ ( 1~ 8腳):8位帶有內(nèi)部上拉電阻的準雙向輸入 /輸出口。 P1口通常作為通用 I/O口使用。作為輸出口時,由于電路內(nèi)部已經(jīng)帶上拉電阻,因此 P1 P2 S1 P2 指令周期機器周期 S2S3 S4 S5 S6 S1 S2 S3 S4S5 S6 P1 P2 P1 P2 P1P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2XTAL2 (OSC) 振蕩周期 時鐘周期 無需外接上拉電阻;作為輸入口時,也需先向鎖存器寫入“ 1”。是一個標準的 I/O口。本次項目中就是利用他們進行模擬串行通信。 ~ ( 21~28腳): 8位帶有內(nèi)部上拉電阻 的準雙向輸入 /輸出口。 P2口可作為通用 I/O口使用,也可作為高位地址線使用的。 ~ ( 10~ 17腳): 8位帶有內(nèi)部上拉電阻的準雙向輸入 /輸出口。 P3口可作為通用 I/O口使用,也可作為第二功能需要來用的。對于 P3口,實際上,都是先按需要選取第二功能,多余的再作為輸入輸出口使用 定時器 /計數(shù)器 MCS51的單片機內(nèi)有兩個 16位可編程的定時 /計數(shù)器,它們具有四種工作方式,其控制字和狀態(tài)均在相應的特殊功能寄存器中,通過對控制寄存器的編程,就可方便地選擇適當?shù)墓ぷ鞣绞健6〞r器在本次項目中需要 用到地方較多。 MCS51單片機內(nèi)部的定時 /計數(shù)器的結(jié)構(gòu)如圖所示: 11 圖 25 MCS51單片機定時 /計數(shù)器結(jié)構(gòu)圖 定時器 T0由特殊功能寄存器 TL0(低 8位)和 TH0(高 8位)構(gòu)成,定時 器 T1由特殊功能寄存器 TL1(低 8位)和 TH1(高 8位)構(gòu)成。特殊功能寄存器 TMOD控制定時寄存器的工作方式, TCON則用于控制定時器 T0和 T1的啟動和停止計數(shù),同時管理定時器 T0和 T1的溢出標志等。程序開始時需對 TL0、TH0、 TL1和 TH1進行初始化編程,以定義它們的工作方式和控制 T0和 T1的計數(shù)。 TMOD和 TCON這兩個特殊功能寄存器的格式參見下表: 表 22 定時 /計數(shù)器的方式控制字 TMOD D7 D6 D5 D4 D3 D2 D1 D0 GATE C/T M1 M0 GATE C/T M1 M0 TI方式字段 TO方式字段 表 23 定時器控制寄存器 TCON D7 D6 D5 D4 D3 D2 D1 D0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 MCS51的定時 /計數(shù)器共有四種工作方式,我們將逐個了解下,并著重介紹 本次項目采用的工作方式 2。工作方式 0:定時 /計數(shù)器 0的工作方式 0是 13位計數(shù)結(jié)構(gòu)的工作方式,其計數(shù)器由 TH的全部 8位和 TL的低 5位構(gòu)成, TL的高 3位沒有使用。定時時間的計算公式為: (213— 計數(shù)初值 )179。晶振周期179。 12或(213— 計數(shù)初值 )179。機器周期,其時間單位與晶振周期或機器周期相同。 工作方式 1:方式 0和方式 1的區(qū)別僅在于計數(shù)器的位數(shù)不同,方式 0為 13位,而方式 1則為 16位,由 TH0作為高 8位, TL0為低 8位,定時時間的計算公式為:( 216-計數(shù)初值)179。晶振周期179。 12或( 216— 計數(shù)初值)179。機器周期。工 12 作方式 2:當 M1M0=10時 ,定時 /計數(shù)器處于工作方 式 路如圖 2- 5所示。我們以定時 /計數(shù)器 0為例 ,定時 /計數(shù)器 1與之完全一致 圖 26 定時 /計數(shù)器工作方式 2等效電路 工作方式 0和工作方式 1的最大特點就是計數(shù)溢出后,計數(shù)器為全 0,因而 循環(huán)定時或循環(huán)計數(shù)應用時就存在反復設置初值的問題,這給程序設計帶來許多不便,同時也會影響計時精度,工作方式 2就針對這個問題而設置,它具有自動重裝載功能,即自動加載計數(shù)初值,所以也有的文獻稱之為自動重加載工作方式。在這種工作方式中, 16位計數(shù)器分為兩部分,即以 TL0為計數(shù)器,以 TH0作為預置寄存器,初 始化時把計數(shù)初值分別加載至 TL0和TH0中,當計數(shù)溢出時,不再象方式 0和方式 1那樣需要“人工干預”,由軟件重新賦值,而是由預置寄存器 TH以硬件方法自動給計數(shù)器 TL0重新加載。但這種方式也有其不利的一面,就是這樣一來的計數(shù)結(jié)構(gòu)只有 8位,計數(shù)值有限,最大只能到 255。所以這種工作方式很適合于那些重復計數(shù)的應用場合。例如我們可以通過這樣的計數(shù)方式產(chǎn)生中斷,從而產(chǎn)生一個固定頻率的脈沖。也可以當作串行數(shù)據(jù)通信的波特率發(fā)送器使用。本次項目中的波特率就采用 T1的方式二產(chǎn)生。工作方式 3:在工作方式 3模式下,定時 /計數(shù)器 0被 拆成兩個獨立的 8位計數(shù)器 TL0和 TH0。其中 TL0既可以作計數(shù)器使用,也可以作為定時器使用,定時 /計數(shù)器 0的各控制位和引腳信號全歸它使用。其功能和操作與方式 0或方式 1完全相同。 TH0就沒有那么多“資源”可利用了,只能作為簡單的定時器使用,而且由于定時 /計數(shù)器 0的控制位已被 TL0占用,因此只能借用定時 /計數(shù)器 1的控制位 TR1和 TF1,也就是以計數(shù)溢出去置位 TF1, TR1則負責控制 TH0定時的啟動和停止。 串行接口 13 MCS51單片機內(nèi)部有一個全雙工的串行通信口,即串行接收和發(fā)送緩沖器( SBUF), 這兩個在物理上獨立的接收發(fā)送器,既可以接收數(shù)據(jù)也可以發(fā)送數(shù)據(jù)。但接收緩沖器只能讀出不能寫入,而發(fā)送緩沖器則只能寫入不能讀出,它們的地址為 99H。這個通信口既可以用于網(wǎng)絡通信,亦可實現(xiàn)串行異步通信,還可以構(gòu)成同步移位寄存器使用。如果在串行口的輸入輸出引腳上加上電平轉(zhuǎn)換器,就可方便地構(gòu)成標準的 RS232接口。常用于數(shù)據(jù)通信的傳輸方式有單工、半雙工、全雙工和多工方式。 中斷 單片機中 CPU只有一個,但在同一時間內(nèi)可能會面臨著處理很多任務的情況,如運行主程序、數(shù)據(jù)的輸入和輸出,定時和計數(shù)時間已到要處理 、可能還有一些外部的更重要的中斷請求(如超溫超壓)要先處理。此時也得象人的思維一樣停下某一樣(或幾樣)工作先去完成一些緊急任務的中斷方法。這樣的處理方法上升到計算機理論,就是一個資源面對多項任務的處理方式。由于資源有限,面對多項任務同時要處理時,就會出現(xiàn)資源競爭的現(xiàn)象。中斷技術(shù)就是為了解決資源競爭的一個可行的方法,采用中斷技術(shù)可使多項任務共享一個資源。 MCS51提供了 5個中斷源,兩個中斷優(yōu)先級控制,可實現(xiàn)兩個中斷服務嵌套。 [11]當 CPU支持中斷屏蔽指令后,可將一部分或所有的中斷關斷,只有打開相應的中斷控 制位后,方可接收相應的中斷請求。程序設置中斷的允許或屏蔽,也可設置中斷的優(yōu)先級。 14 圖 27 MCS51中斷系統(tǒng)結(jié)構(gòu) 等 CPU響應中斷請求后,就立即轉(zhuǎn)入執(zhí)行中斷服務程序。不同的中斷源、 不同的中斷要求有不同的中斷處理方法,但它們的處理流程一般都如下所述: ( 1) .現(xiàn)場保護和現(xiàn)場恢復 中斷是在執(zhí)行其它任務的過程中轉(zhuǎn)去執(zhí)行臨時的任務,為了在執(zhí)行完中斷服務程序后,回頭執(zhí)行原先的程序時,知道程序原來在何處打斷的,各有關寄存器的內(nèi)容如何,就必須在轉(zhuǎn)入執(zhí)行中斷服務程序前,將這些內(nèi)容和狀態(tài)進行備份 — 即保護現(xiàn)場。中斷服 務程序完成后,繼續(xù)執(zhí)行原先的程序,就需把保存的現(xiàn)場內(nèi)容從堆棧中彈出,恢復寄存器和存儲單元的原有內(nèi)容,這就是現(xiàn)場恢復。如果在執(zhí)行中斷服務時不是按上述方法進行現(xiàn)場保護和恢復現(xiàn)場,就會是程序運行紊亂,程序跑飛,自然使單片機不能正常工作。 ( 2) .中斷打開和中斷關閉 在中斷處理進行過程中,可能又有新的中斷請求到來,而現(xiàn)場保護和現(xiàn)場恢復的操作是不允許打擾的,否則保護和恢復的過程就可能使數(shù)據(jù)出錯,為此在進行現(xiàn)場保護和現(xiàn)場恢復的過程中,必須關閉總中斷,屏蔽其它所有的中斷,待這個操作完成后再打開總中斷,以便實現(xiàn)中斷嵌套。 ( 3) .中斷服務程序 既然有中斷產(chǎn)生,就必然有其具體的需執(zhí)行的任務,中斷服務程序就是執(zhí)行中斷處理的具體內(nèi)容,一般以子程序的形式出現(xiàn),所有的中斷都要轉(zhuǎn)去執(zhí)行中斷服務程序,進行中斷服務。 ( 4) .中斷返回 中斷返回就是程序運行從中斷服務程序轉(zhuǎn)回到原工作程序上來。 MCS51有 5個中斷源,它們是兩個外中斷 INT0和 INT兩個片內(nèi)定時 /計數(shù)器溢出中斷TF0和 TF1,一個是片內(nèi)串行口中斷 TI或 RI,這幾個中斷源由 SCON和 TCON兩個特殊功能寄存器進行控制。 SCON是串行口控制寄存器,字節(jié)地址為 98H,SCON的 低二位是串行口的發(fā)送和接收中斷標志。 TI: MCS51串行口的發(fā)送中斷標志,在串行口以方式 0發(fā)送時,每當發(fā)送完 8位數(shù)據(jù),由硬件置位。如果以方式 方式 2或方式 3發(fā)送時,在發(fā)送停止位的開始時 TI被置 1, TI=1表示串行發(fā)送器正向 CPU發(fā)出中斷請求,向串行口的數(shù)據(jù)緩沖器 SBUF寫入一個數(shù)據(jù)后就立即啟動發(fā)送器繼續(xù)發(fā)送。但是 CPU響應中斷請求后,轉(zhuǎn)向執(zhí)行中斷服務程序時,并不清零 TI, TI必須由用戶的中斷服務程序清“ 0”,即中斷服務程序必須有“ CLR TI”或“ ANL SCON,0FDH”等指令來清零 TI。 RI: 串行口接收中斷標志,若串行口接收器允許接收 ,并以方式 0工作 ,每當 接收到 8位數(shù)據(jù)時 ,RI被置 1,若以方式 3方式工作,當接收到半個停止位時, TI被置 1,當串行口一方式 2或 3方式工作,且當 SM2=1時,僅當接收到第 9位數(shù)據(jù) RB8為 1后,同時還要在接收到半個停止位時, RI被置 1。 RI為 1 15 表示串行口接收器正向 CPU申請中斷。同樣 RI標志由用戶的軟件清“ 0”。 在 TCON中有以下四位與中斷控制有關: IE1:外部邊沿觸發(fā)中斷 1請求標志。 IT1:外部中斷 1類型控制位,通過軟件設置或清除,用于控制外中斷的觸發(fā) 信號類型。 IT1=1,邊沿觸發(fā)。 IT=0是電平觸發(fā)。 IE0:外部邊沿觸發(fā)中斷 0請求標志,其功能和操作類似于 IE1。 IT0:外部中斷 0類型控制位,其功能和操作類似于 IT1。對于中斷控制,已經(jīng)對 TCON和 SCON進行了分析,其實它們兩個寄存器也是中斷的控制寄存器,負責對中斷的部分功能進行控制。接下來介紹另外兩個控制寄存器 IE和 IP。 MCS51的對中斷的開放和屏蔽是由中斷允許寄存器 IE控制來實現(xiàn)的, IE的結(jié)構(gòu)格式如下: 表 24 IE寄存器結(jié)構(gòu) IE D7 D6 D5 D4 D3 D2 D1 D0 EA ES ET1 EX1 ET0 EX0 位地址 AFH ACH ABH AAH A9H A8H 下面我們對 IE寄存器的各控制位進行介紹: EA:中斷總控制位, EA=1, CPU開
點擊復制文檔內(nèi)容
畢業(yè)設計相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1