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

正文內(nèi)容

ds18b20溫度檢測畢業(yè)設(shè)計-文庫吧

2025-06-20 16:07 本頁面


【正文】 單片機的系統(tǒng)結(jié)構(gòu)框圖“ [1]” 由圖看出,單片機內(nèi)部主要包含下列幾個部件: ? 一個 8 位 CPU; ? 一個時鐘電路; ? 4KB 程序存儲器; ? 128KB 數(shù)據(jù)存儲器; ? 兩個 16 位定時 /計數(shù)器; ? 64KB 擴展總線控制電路; ? 四個 8bit 并行 I/O 端口; ? 一個可編程串行接口; ? 五個中斷源,其中包括兩個優(yōu)先級嵌套中斷。 2 80C51 單片機內(nèi)部結(jié) 構(gòu) 圖 80C51 內(nèi)部結(jié)構(gòu)圖“ [2]” 1. CPU CPU 即中央處理器的簡稱,是單片機的核心部件,它完成各種運算和控制操作, CPU由運算器和控制器兩部分電路組成。 ( 1)運算器電路 運算器電路包括 ALU(算術(shù)邏輯單元)、 ACC(累加器)、 B 寄存器、狀態(tài)寄存器、暫存器 1 和暫存器 2 等部件,運算器的功能是進行算術(shù)運算和邏輯運算。運算電路以 ALU 為核心單元,可以完成半字節(jié)、單字節(jié)以及多字節(jié)數(shù)據(jù)的運算操作,其中包括加、減、乘、除等算術(shù)運算以及與、或 、異或、求補和循環(huán)等邏輯操作,運算結(jié)果的狀態(tài)由狀態(tài)寄存器保存。 ( 2)控制器電路 控制器電路包括程序計數(shù)器 PC、 PC 加 1 寄存器、指令寄存器、指令譯碼器、數(shù)據(jù)指針DPTR、堆棧指針 SP、緩沖器以及定時與控制電路等??刂齐娐吠瓿芍笓]控制工作,協(xié)調(diào)單片機各部分正常工作。程序計數(shù)器 PC 用來存放即將要執(zhí)行的指令地址,它可以完成 64K 的外部存儲器尋址,執(zhí)行指令時, PC 內(nèi)容的高 8 位經(jīng) P2 口輸出,低 8 位經(jīng) P0 口輸出。數(shù)據(jù)指針 DPTR 為 16 位數(shù)據(jù)指針,它可以對 64K 的外部數(shù)據(jù)存儲器和 I/O 口進行尋址,它的低8 位為 DPL(地址 82H),高 8 位為 DPH(地址為 83H)。堆棧指針 SP 在片內(nèi) RAM( 128字節(jié))中開辟棧區(qū),并隨時跟蹤棧頂?shù)刂?,它按先進后出的原則存取數(shù)據(jù),上電復(fù)位后,SP 指向 07H。 1. 定時器 /計數(shù)器 80C51 單片機片內(nèi)有兩個 16 位的定時 /計數(shù)器,即定時器 0 和定時器 1。它們可以用于 3 定時控制、延時以及對外部事件的計數(shù)和檢測等。 2. 存儲器 80C51 系列單片機的存儲器包括數(shù)據(jù)存儲器和程序存儲器,其主要特點是程序存儲器和數(shù)據(jù)存儲器的尋址空間是相互獨立的,物理結(jié)構(gòu)也不相同。 80C51 有 4 個物理上相互獨立的存儲器空間:即內(nèi)、外程序存儲器和內(nèi)、外數(shù)據(jù)存儲器。對于 8051 其芯片中共有 256 個 RAM單元,其中后 128 個單元被專用寄存器占用,只有前 128 個單元供用戶使用。 3. 并行 I/O 口 80C51 單片機共有 4 個 8 位的 I/O 口( P0、 P P2 和 P3),每一條 I/O 線都能獨立地用作輸入或輸出。 P0 口為三態(tài)雙向口,能帶 8 個 TTL 門電路, P P2 和 P3 口為準雙向口,負載能力為 4 個 TTL 門電路。 4. 串行 I/O 口 80C51 單片機具有一個采用通用異步工作方式的全雙工串行 通信接口,可以同時發(fā)送和接收數(shù)據(jù)。它具有兩個相互獨立的接收、發(fā)送數(shù)據(jù)緩沖器,兩個緩沖器共用一個地址( 99H),發(fā)送緩沖器只能寫入,不能讀出,接收緩沖器只能讀出,不能寫入。 5. 中斷控制系統(tǒng) 80C51 單片機的中斷功能較強,以滿足控制應(yīng)用的需要。 80C51 共有 5 個中斷源,即外中斷 2 個,定時 /計數(shù)中斷 2 個,串行中斷 1 個。所有中斷分為高級和低級兩個中斷優(yōu)先級。 6. 時鐘電路 80C51 芯片內(nèi)部有時鐘電路,但晶體振蕩器和微調(diào)電容必須外接。時鐘電路為單片機產(chǎn)生時鐘脈沖序列,振蕩器的頻率范圍為 ~ 12MHz,典型取值為 6MHz。 7. 總線 以上所有組成部分都是通過總線連接起來,從而構(gòu)成一個完整的單片機。系統(tǒng)的地址信號、數(shù)據(jù)信號和控制信號都是通過總線傳送的,總線結(jié)構(gòu)減少了單片機的連線和引腳,提高了集成度和可靠性。 80C51 引腳介紹 圖 80C51 引腳圖“ [3]” VCC:供電電壓 GND:接地 P0 口: P0 口為一個 8 位漏級開路雙向 I/O 口,每腳可吸收 8TTL 門電流。當 P1 口的管腳第一次寫 1 時,被定義為高阻輸入。 P0 能夠用于外 部程序數(shù)據(jù)存儲器,它可以被定義為 4 數(shù)據(jù) /地址的第八位。在編程時, P0 口作為原碼輸入口,當進行校驗時, P0 輸出原碼,此時 P0 外部必須被拉高。 P1 口: P1 口是一個內(nèi)部提供上拉電阻的 8 位雙向 I/O 口, P1 口緩沖器能接收輸出 4TTL門電流。 P1 口管腳寫入 1 后,被內(nèi)部上拉為高,可用作輸入, P1 口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在編程和校驗時, P1 口作為第八位地址接收。 P2 口: P2 口為一個內(nèi)部上拉電阻的 8 位雙向 I/O 口, P2 口緩沖器可接收,輸出 4 個TTL 門電流,當 P2 口被寫“ 1”時,其管腳 被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時, P2 口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。 P2 口當用于外部程序存儲器或 16 位地址外部數(shù)據(jù)存儲器進行存取時, P2 口輸出地址的高八位。在給出地址“ 1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時, P2 口輸出其特殊功能寄存器的內(nèi)容。 P3 口: P3 口管腳是 8 個帶內(nèi)部上拉電阻的雙向 I/O 口,可接收輸出 4 個 TTL 門電流。當 P3 口寫入“ 1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平, P3 口將輸出電流( ILL)這 是由于上拉的緣故。 RST:復(fù)位輸入。當振蕩器復(fù)位器件時,要保持 RST 腳兩個機器周期的高電平時當 8051通電,時鐘電路開始工作,在 RESET 引腳上出現(xiàn) 24 個時鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。初始化后,程序計數(shù)器 PC 指向 0000H, P0P3 輸出口全部為高電平,堆棧指鐘寫入 07H,其它專用寄存器被清“ 0”。 RESET 由高電平下降為低電平后,系統(tǒng)即從 0000H 地址開始執(zhí)行程序。然而,初始復(fù)位不改變 RAM(包括工作寄存器 R0R7)的狀態(tài)。 ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存 地址的地位字節(jié)。在編程期間,此引腳用于輸入編程脈沖。在平時, ALE 端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的 1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個 ALE 脈沖。如想禁止 ALE 的輸出可在SFR8EH 地址上置 0。此時, ALE 只有在執(zhí)行 MOVX, MOVC 指令是 ALE 才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài) ALE 禁止,置位無效。 PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次 /PSEN 有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的 /PSEN 信號將不出現(xiàn)。 EA/VPP:當 /EA 保持低電平時,則在此期間外部程序存儲器( 0000HFFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式 1 時, /EA 將內(nèi)部鎖定為 RESET;當 /EA 端保持高電平時,此間內(nèi)部程序存儲器。在編程期間,此引腳也用于施加 12V 編程電源( VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。 振蕩器特性: XTAL1 和 XTAL2 分別為反向放大器的輸入 和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件, XTAL2 應(yīng)不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。 芯片擦除:整個 PEROM 陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持 ALE 管腳處于低電平 10ms 來完成。在芯片擦操作中,代碼陣列全被寫“ 1”且在任何非空存儲字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。 此外, 80C51 設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持 兩種軟件可選的掉電模式。在閑置模式下, CPU 停止工作。但 RAM,定時器,計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存 RAM 的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個硬件復(fù)位為止“ [4]”。 5 設(shè)計中所編譯的相關(guān)程序 及系統(tǒng)框圖 延時子程序: // //延時子程序 (Delay(2)約為延時 1us) // void Delay(long int milliseconds) { long int i。 long int j。 j =milliseconds。 for(i = 0。 i j。 i ++) { } return。 } 系統(tǒng)時鐘初始化設(shè)置: // //系統(tǒng)時鐘初始化設(shè)置 // void SYSCLK_Init (void) { int i。 // Delay counter OSCXCN = 0x27。 // start external oscillator with crystal for (i=0。 i 256。 i++) 。 // XTLVLD blanking interval (1ms) OSCICN = 0x88。 // select external oscillator as SYSCLK source and enable missing clock detector return。 } // //看門狗初始化設(shè)置 // void WATCH_Dog () { WDTCN = 0xde。 WDTCN = 0xad。 DS18B20 芯片 80C51 單片機 數(shù)碼管 6 return。 } 單片機 I/O 口初始化設(shè)置: // //單片機 I/O 口初始化設(shè)置 // void PORT_Init () { XBR0 = 0x04。 //TX0 和 RX0 連到 和 XBR1 = 0x00。 XBR2 = 0x40。 P0MDOUT|=0xff。 P1MDOUT|=0xfd。 //設(shè)置 為輸入 P2MDOUT|=0xff。 P3MDOUT|=0xff。 P74OUT|=0xff。 return。 } ACC 位定義: // //ACC 位定義 // sbit ACC_0 =ACC^0。 //數(shù)據(jù)位 sbit ACC_1 =ACC^1。 //數(shù)據(jù)位 sbit ACC_2 =ACC^2。 //數(shù)據(jù)位 sbit ACC_3 =ACC^3。 //數(shù)據(jù)位 sbit ACC_4 =ACC^4。 //數(shù)據(jù)位 sbit ACC_5 =ACC^5。 //數(shù)據(jù)位 sbit ACC_6 =ACC^6。 //數(shù)據(jù)位 sbit ACC_7 =ACC^7。 //數(shù)據(jù)位 7 第二章 DS18B20
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1