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

正文內容

基于51單片機的上位機通訊系統(tǒng)課程設計說明書(編輯修改稿)

2025-04-08 06:56 本頁面
 

【文章內容簡介】 位后,只有一條 MOVX 和 MOVC 指令才能將 ALE 激活。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應設 置 ALE 禁止位無效。 PSEN 程序儲存允許( PSEN)輸出是外部程序存儲器的讀選通信號,當 AT89C52 由外部程序存儲器取指令(或數據)時,每個機器周期兩次 PSEN 有效,即輸出兩個脈沖。在此期間,當訪問外部數據存儲器,將跳過兩次 PSEN 信號。 EA/VPP 外部訪問允許。欲使 CPU 僅訪問外部程序存儲器(地址為 0000H— FFFFH), EA 端必須保持低電平(接地)。需注意的是:如果加密位 LB1 被編程,復位時內部會鎖存 EA端狀態(tài)。如 EA 端為高電平(接 Vcc 端), CPU 則執(zhí)行內部程序存儲器中的指令 。 Flash 存儲器編程時,該引腳加上 +12V 的編程允許電源 Vpp,當然這必須是該器件是使用 12V 編程電壓 Vpp。 XTAL1 振蕩器反相放大器的及內部時鐘發(fā)生器的輸入端。 XTAL2 武漢理工大學單片機課程 設計報告 13 振蕩器反相放大器的輸出端。 特殊功能寄存器 在 AT89C52 片內存儲器中, 80HFFH 共 128 個單元為特殊功能寄存器( SFE),SFR 的地址空間映象如表 2 所示。并非所有的地址都被定義,從 80H— FFH 共 128 個字節(jié)只有一部分被定義,還有相當一部分沒有定義。對沒有定義的單元讀寫將是無效的,讀出的數值將不確定 ,而寫入的數據也將丟失。不應將數據“ 1”寫入未定義的單元,由于這些單元在將來的產品中可能賦予新的功能,在這種情況下,復位后這些單元數值總是“ 0”。 AT89C52 除了與 AT89C51 所有的定時 /計數器 0 和定時 /計數器 1 外,還增加了一個定時 /計數器 2。定時 /計數器 2 的控制和狀態(tài)位位于 T2CON(參見表 3)T2MOD(參見表 4),寄存器對( RCAO2H、 RCAP2L)是定時器 2 在 16 位捕獲方式或 16 位自動重裝載方式下的捕獲 /自動重裝載寄存器。 數據存儲器 AT89C52 有 256 個字節(jié)的內部 RAM, 80HFFH 高 128 個字節(jié)與特殊功能寄存器( SFR)地址是重疊的,也就是高 128 字節(jié)的 RAM 和特殊功能寄存器的地址是相同的,但物理上它們是分開的。當一條指令訪問 7FH 以上的內部地址單元時,指令中使用的尋址方式是不同的,也即尋址方式決定是訪問高 128 字節(jié) RAM 還是訪問特殊功能寄存器。如果指令是直接尋址方式則為訪問特殊功能寄存器。 例如,下面的直接尋址指令訪問特殊功能寄存器 0A0H(即 P2 口)地址單元。 MOV 0A0H, data 間接尋址指令訪問高 128 字節(jié) RAM,例如,下面的間接尋址 指令中, R0 的內容為 0A0H,則訪問數據字節(jié)地址為 0A0H,而不是 P2 口( 0A0H)。 MOV @R0, data 堆棧操作也是間接尋址方式,所以,高 128 位數據 RAM 亦可作為堆棧區(qū)使用。 定時器 0 和定時器 1: AT89C52 的定時器 0 和定時器 1 的工作方式與 AT89C51 相同。 定時器 2 定時器 2 是一個 16 位定時 /計數器。它既可當定時器使用,也可作為外部事件計數器使用,其工作方式由特殊功能寄存器 T2CON 的 C/T2 位選擇。定時器 2 有三種工作方式:捕獲方式,自動重裝載(向上或向下計數) 方式和波特率發(fā)生器方式,工作方式由 T2CON 的控制位來選擇。定時器 2 由兩個 8 位寄存器 TH2 和 TL2 組成,在定時 武漢理工大學單片機課程 設計報告 14 器工作方式中,每個機器周期 TL2 寄存器的值加 1,由于一個機器周期由 12 個振蕩時鐘構成,因此,計數速率為振蕩頻率的 1/12。在計數工作方式時,當 T2 引腳上外部輸入信號產生由 1 至 0 的下降沿時,寄存器的值加 1,在這種工作方式下,每個機器周期的 5SP2 期間,對外部輸入進行采樣。若在第一個機器周期中采到的值為 1,而在下一個機器周期中采到的值為 0,則在緊跟著的下一個周期的 S3P1 期間寄存 器加 1。由于識別 1 至 0 的跳變需要 2 個機器周期( 24 個振蕩周期),因此,最高計數速率為振蕩頻率的 1/24。為確保采樣的正確性,要求輸入的電平在變化前至少保持一個完整周期的時間,以保證輸入信號至少被采樣一次。 捕獲方式 在捕獲方式下,通過 T2CON 控制位 EXEN2 來選擇兩種方式。如果 EXEN2=0,定時器 2 是一個 16 位定時器或計數器,計數溢出時,對 T2CON 的溢出標志 TF2 置位,同時激活中斷。如果 EXEN2=1,定時器 2 完成相同的操作,而當 T2EX 引腳外部輸入信號發(fā)生 1 至 0 負跳變時, 也出現 TH2 和 TL2 中的值分別被捕獲到 RCAP2H 和 RCAP2L 中。另外, T2EX 引腳信號的跳變使得 T2CON 中的 EXF2 置位,與 TF2 相仿, EXF2 也會激活中斷。捕獲方式如圖 4 所示。 自動重裝載(向上或向下計數器)方式 當定時器 2 工作于 16 位自動重裝載方式時,能對其編程為向上或向下計數方式,這個功能可通過特殊功能寄存器 T2CON 的 DCEN 位(允許向下計數)來選擇的。 復位時, DCEN 位置“ 0”,定時器 2 默認設置為向上計數。當 DCEN 置位時,定時器 2 既可向上計數也可向下計數,這取決 于 T2EX 引腳的值,當 DCEN=0 時,定時器 2 自動設置為向上計數,在這種方式下, T2CON 中的 EXEN2 控制位有兩種選擇,若 EXEN2=0,定時器 2 為向上計數至 0FFFFH 溢出,置位 TF2 激活中斷,同時把 16 位計數寄存器 RCAP2H 和 RCAP2L 重裝載, RCAP2H 和 RCAP2L 的值可由軟件預置。 若 EXEN2=1,定時器 2 的 16 位重裝載由溢出或外部輸入端 T2EX 從 1 至 0 的下降沿觸發(fā)。這個脈沖使 EXF2 置位,如果中斷允許,同樣產生中斷。定時器 2 的中斷入口地址是: 002BH —— 0032H。當 DCEN=1 時,允許定時器 2 向上或向下計數。這種方式下, T2EX 引腳控制計數器方向。 T2EX 引腳為邏輯“ 1”時,定時器向上計數,當計數 0FFFFH 向上溢出時,置位 TF2,同時把 16 位計數寄存器 RCAP2H 和 RCAP2L重裝載到 TH2 和 TL2 中。 T2EX 引腳為邏輯“ 0”時,定時器 2 向下計數,當 TH2 和 TL2 中的數值等于 RCAP2H 和 RCAP2L 中的值時,計數溢出,置位 TF2,同時將 武漢理工大學單片機課程 設計報告 15 0FFFFH 數值重新裝入定時寄存器中。當定時 /計數器 2 向上溢出或向下溢出時 ,置位EXF2 位。 波特率發(fā)生器 當 T2CON(表 3)中的 TCLK 和 RCLK 置位時,定時 /計數器 2 作為波特率發(fā)生器使用。如果定時 /計數器 2 作為發(fā)送器或接收器,其發(fā)送和接收的波特率可以是不同的,定時器 1 用于其它功能。若 RCLK 和 TCLK 置位,則定時器 2 工作于波特率發(fā)生器方式。波特率發(fā)生器的方式與自動重裝載方式相仿,在此方式下, TH2 翻轉使定時器 2 的寄存器用 RCAP2H 和 RCAP2L 中的 16 位數值重新裝載,該數值由軟件設置。在方式 1 和方式 3 中,波特率由定時器 2 的溢出速率根據下式確定 :方式 1 和 3 的波特率 =定時器的溢出率 /16 定時器既能工作于定時方式也能工作于計數方式,在大多數的應用中,是工作在定時方式( C/T2=0)。定時器 2 作為波特率發(fā)生器時,與作為定時器的操作是不同的,通常作為定時器時,在每個機器周期( 1/12 振蕩頻率)寄存器的值加1,而作為波特率發(fā)生器使用時,在每個狀態(tài)時間( 1/2 振蕩頻率)寄存器的值加 1。波特率的計算公式如下: 方式 1 和 3 的波特率 =振蕩頻率 /{32*[65536(RCP2H,RCP2L)]} 式中( RCAP2H, RCAP2L)是 RCAP2H 和 RCAP2L 中的 16 位無符號數。 定時器 2 作為波特率發(fā)生器使用的電路如圖 7 所示。 T2CON 中的 RCLK 或TCLK=1 時,波特率工作方式才有效。在波特率發(fā)生器工作方式中, TH2 翻轉不能使TF2 置位,故而不產生中斷。但若 EXEN2 置位,且 T2EX 端產生由 1 至 0 的負跳變,則會使 EXF2 置位,此時并不能將( RCAP2H, RCAP2L)的內容重新裝入 TH2 和 TL2 中。所以,當定時器 2 作為波特率發(fā)生器使用時, T2EX 可作為附加的外部中斷源來使用。需要注意的是,當定時器 2 工作于波特率器時,作為定時器運行( TR2=1)時,并不能訪問 TH2 和 TL2。因為此時每個狀態(tài)時間定時器都會加 1,對其讀寫將得到一個不確定的數值。 然而,對 RCAP2 則可讀而不可寫,因為寫入操作將是重新裝載,寫入操作可能令寫和 /或重裝載出錯。在訪問定時器 2 或 RCAP2 寄存器之前,應將定時器關閉(清除TR2)。 可編程時鐘輸出 定時器 2 可通過編程從 輸出一個占空比為 50%的時鐘信號,如圖 8 所示。 武漢理工大學單片機課程 設計報告 16 引腳除了是一個標準的 I/O 口 外,還可以通過編程使其作為定時 /計數器 2 的外部時鐘輸入和輸出占空比 50%的時鐘脈沖。當時鐘振蕩頻率為 16MHz 時,輸出時鐘頻率范圍為 61Hz— 4MHz。當設置定時 /計數器 2 為時鐘發(fā)生器時, C/T2( T2CON .1) =0, T2OE ( ) =1,必須由 TR2( )啟動或停止定時器。時鐘輸出頻率取決于振蕩頻率和定時器 2 捕獲寄存器( RCAP2H, RCAP2L)的重新裝載值,公式如下: 輸出時鐘頻率 =振蕩器頻率 /{4*[65536(RCP2H,RCP2L)]} 在時鐘輸出方式下, 定時器 2 的翻轉不會產生中斷,這個特性與作為波特率發(fā)生器使用時相仿。定時器 2 作為波特率發(fā)生器使用時,還可作為時鐘發(fā)生器使用,但需要注意的是波特率和時鐘輸出頻率不能分開確定,這是因為它們同使用 RCAP2L 和RCAP2L。 UART AT89C52 的 UART 工作方式與 AT89C51 工作方式相同。 中斷 AT89C52 共有 6 個中斷向量:兩個外中斷( INT0 和 INT1), 3 個定時器中斷(定時器 0、 2)和串行口中斷。所有這些中斷源如圖 9 所示。 這些中斷源可通過分別設置專用寄存器 IE 的置位或清 0 來控制每一個中斷的允許或禁止。 IE 也有一個總禁止位 EA,它能控制所有中斷的允許或禁止。 時鐘振蕩器 AT89C52 中有一個用于構成內部振蕩器的高增益反相放大器,引腳 XTAL1 和XTAL2 分別是該放大器的輸入端和輸出端。 這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構成自激振蕩器,振蕩電路參見圖 10。外接石英晶體(或陶瓷諧振器)及電容 C C2 接在放大器的反饋回路中構成并聯振蕩電路。對外接電容 C C2 雖然沒有十分嚴格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定 性、起振的難易程序及溫度穩(wěn)定性,如果使用石英晶體,我們推薦電容使用 30pF177。 10pF,而如使用陶瓷諧振器建議選擇 40pF177。 10F。用戶也可以采用外部時鐘。采用外部時鐘的電路如圖 10 右圖所示。這種情況下,外部時鐘脈沖接到 XTAL1 端,即內部時鐘發(fā)生器的輸入端, XTAL2 則懸空。由于外部時鐘信號是通過一個 2 分頻觸發(fā)器后作為內部時鐘
點擊復制文檔內容
高考資料相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1