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

正文內(nèi)容

基于at89s52單片機的數(shù)字電子鐘(存儲版)

2025-01-13 01:01上一頁面

下一頁面
  

【正文】 次進行讀寫操作之前,都必須進行忙狀態(tài)檢測 ,確保 STA7=0 河南理工大學畢業(yè)設(shè)計(論文)說明書 17 地址映射圖 控制器內(nèi)部帶有 80 8 位( 80 字節(jié))的 RAM 緩沖區(qū),如圖 28。 1602LCD 第二行第一列開始顯示“時 :分 :秒、鬧鐘開關(guān)標志、溫度” 。 2. 時間調(diào)整部分:暫存狀態(tài)的年 (Year_tmp)、月 (Month_tmp)、日 (Day_tmp)、時 (Hour_tmp)、分 (Min_tmp)、秒 (Sec_tmp)、鬧鐘所設(shè)定的時 (A_Hour_tmp)、分(A_Min_tmp)。我們用定時器 0 工作在方式 1 狀態(tài),每次計數(shù) 50000 次,如此進行 20 次,即可湊夠一秒鐘。 圖 32 編譯和調(diào)試的環(huán)境 Keil μ Vision3 判斷 K1_t是否為 10 判斷 K1_t是否為 1 判斷 K1_t是否大于 1 河南理工大學畢業(yè)設(shè)計(論文)說明書 23 主程序 “電子 鐘 .C” include include include include include include sbit Buzz=P2^3。 unsigned char Month=6,Day=10,Week,Hour=8,Min=59,Sec=55。//函數(shù)聲明 ,判斷當月天數(shù) unsigned char Week_Calculate(unsigned int y,unsigned char m,unsigned char d)。 //函數(shù)聲明,啟動鬧鈴 main() { Timer0_Init()。 if(key==K3) //如果按 下 K3,則初始化 LCD1602(處理 LCD 顯示故障) { LCD_Init()。 //進入正常顯示模式 } } void Timer0_Init() //定時器 0 初始化 TMOD=0x11,計數(shù)初值 0x4C00。 TR0=0。 Min++。 Year++。39。 //顯示日的十位數(shù) Write_Data(Day%10+0x30)。o39。)。 //顯示星期二 case 2: Write_Data(39。)。Write_Data(39。r39。)。 //顯示星期六 case 6: Write_Data(39。)。:39。 //顯示秒的十位數(shù) Write_Data(Sec%10+0x30)。 //顯示溫度的十分位 Write_Data(0x00)。 Hour_tmp=Hour。 //顯示空格 Write_Data(Year_tmp/1000+0x30)。 //顯示 Write_Data(Month_tmp/10+0x30)。 //顯示日的個位數(shù) Write_Data(0x04)。)。Write_Data(39。W39。break。u39。)。Write_Data(39。S39。break。 //顯示右三角符號 河南理工大學畢業(yè)設(shè)計(論文)說明書 32 else Write_Data(39。) 。 //顯示溫度的個位數(shù) Write_Data(0x2e)。 //顯示空格 Write_Data(A_Hour_tmp/10+0x30)。 //顯示鬧鐘分的個位數(shù) Write_String(Hint4)。 Setting_Display(K1_t)。 } case 5: { Hour_tmp++。Delay1mS(200)。if(A_Hour_tmp23)A_Hour_tmp=0。break。 河南理工大學畢業(yè)設(shè)計(論文)說明書 35 Setting_Display(K1_t)。break。if(Min_tmp59)Min_tmp=0。Delay1mS(200)。 } case 3: { Month_tmp++。 //顯示右三角符號 Write_Data(A_Min_tmp/10+0x30)。 //設(shè)置顯示地址 if(c==8) Write_Data(0x03)。 //顯示空格 Write_Data(tens+0x30)。 //顯示右三角符號 else Write_Data(39。 //顯示時的十位數(shù) Write_Data(Hour_tmp%10+0x30)。n39。break。S39。Write_Data(39。)。d39。break。T39。Write_Data(39。 //顯示 Write_Data(Day_tmp/10+0x30)。39。 //指向 LCD 第一行首地址 if(c==2) Write_Data(0x03)。Month_tmp=Month。 //顯示溫度的個位數(shù) Write_Data(0x2e)。) 。 //顯示時的十位數(shù) Write_Data(Hour%10+0x30)。Write_Data(39。)。 //顯示星期五 case 5: Write_Data(39。)。h39。Write_Data(39。)。 //顯示星期一 case 1: Write_Data(39。)。) 。 //顯示年的十位數(shù) Write_Data(((Year%1000)%100)%10+0x30)。 Month++。 Sec++。 TR0=1。//進入時間設(shè)定模式 Key_Action(K1_t)。 //讀 DS18B20 檢測到的溫度 key=Key_Scan()。//函數(shù)聲明,顯示設(shè)定模式 void Key_Action(unsigned char c)。 //鬧鐘開狀態(tài)標志位 unsigned char bissextile(unsigned int y)。 unsigned char code Hint4[]= 。 河南理工大學畢業(yè)設(shè)計(論文)說明書 21 開始 定時器 0 初始化 溫度傳感器 DS18B20初始化 液晶顯示器 LCD1602 初始化 把自定義字符寫入 LCD 的CGRAM 液晶顯示器 LCD1602 初始化 鬧鐘響 測量溫度 掃描鍵盤 開 /關(guān)鬧鐘 重新初始化 LCD 計數(shù)器 K1_t 加 1 A B C 主程序流程圖 Y N Y N Y N Y N 判斷鬧鐘 是否啟動 判斷 K2 是否按下 判斷 K3 是否按下 判斷 K1 是否按下 河南理工大學畢業(yè)設(shè)計(論文)說明書 22 A B 計數(shù)器 K1_t=2 進入設(shè)定菜單 C 進入正常顯示模式 C 進入時間設(shè)定模式 執(zhí)行鍵盤操作 C N Y Y Y N 圖 31 主程序流程圖 程序清單及注釋 本設(shè)計使用 Keil μ Vision3(如圖 32) 作為編譯和調(diào)試的環(huán)境 。 編程思路 1. 給以下變量賦初值:年 (Year)、月 (Month)、日 (Day)、時 (Hour)、分 (Min)、秒 (Sec)、鬧鐘狀態(tài) (Aflag)、鬧鐘所設(shè)定的時 (A_Hour)、分 (A_Min), 計算變量星期( Week) 。 4. 如果 LCD1602 出現(xiàn)顯示異常,可以在正常顯示狀態(tài)下按 K3,重新初始化 LCD。 復(fù)位時間是 2021 年 6 月 10 日 08:59:55。 輸出:無 ③讀數(shù)據(jù):輸入: RS=H, RW=H, E=H。當 RS 和 RW 共同為低電平時可以寫入指令或者顯示地址,當 RS 為低電平 RW為高電平時可以讀忙信號,當 RS 為高電平 RW 為低電平時可以寫入數(shù)據(jù)。 ③常用存儲器操作命令有:啟動溫度變換( 44h)、讀暫存存儲器( BEh)、寫暫存存儲器( 4Eh)。 單線總線的空閑狀態(tài)是高電平。 數(shù)據(jù)在單線接口上串行發(fā)送 , DS18B20 可以以 ℃ 的增量值 , 在 ℃ 至 +125℃ 的范圍內(nèi)測量溫度 。 為了對遵循拋物線規(guī)律的振蕩器溫度特性進行補償 , 這種電路是必需的 。省略了存儲用戶定義報警溫度、分辨率參數(shù)的 EEPROM,精度降低為177?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。 8. 定時器 /計數(shù)器 MCS51 系列中有兩個 16 位定時器 /計數(shù)器 T0 和 T1。堆棧指針的值可由軟件改變,因此堆棧在內(nèi)部 RAM 值的位置比較活躍。在串行通信中常用奇偶效驗的辦法來檢驗數(shù)據(jù)傳輸?shù)目煽啃浴?AC 被用于十進制調(diào)整。 2. B 寄存器: 在乘除指令中,用到了 B 寄存器。 FLASH 存儲器編程時,該引腳加上 +12V 的編程允許電源 VPP,當然這必須是該器件是使用 12V 編程電壓 VPP。這一位置 1”, ALE 僅在執(zhí)行 MOVX 或 MOVC 指令時有效。 P3 口第二功能如表 22。在訪問 8 位地址的外部數(shù)據(jù)存儲器時, P2 口送出高 8 位地址數(shù)據(jù)。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流( I)。單片機是一種時序電路,必須有脈沖信號才能工作,在它的內(nèi)部有一個時鐘產(chǎn)生電路 , 有兩種振蕩方式,一種是內(nèi)部振蕩方式,只要接上兩個電容和一個晶振即可;另一種是外部振蕩方式 ,采用外部振蕩方式時,需在 XTL2 上加外部時鐘信號。另外, AT89S52 可降至 0Hz 靜態(tài)邏輯操作,支持兩種軟件可選擇節(jié)電模式。內(nèi)含過流、過熱和過載保護電路。數(shù)字溫度計 DS18B20是一個單總線器件,所以對它的讀寫操作必須嚴格遵循其時序要求。 本設(shè)計包括硬件設(shè)計和軟件設(shè)計兩部分。 單片機控制的電子時鐘完全具備時鐘的各種功能,硬件組成非常精簡,只需要進行軟件的編寫,就能夠?qū)崿F(xiàn)我們需要的功能 。 用數(shù)字溫度計 DS18B20 測量當前氣溫, 在 把 實時數(shù)據(jù)顯示在 LCD1602 上的同時,不斷掃描按鍵, 如果有按鍵按下,則 對按鍵做出 相應(yīng)的響應(yīng) 。 AT89S52 就是 51 系列中的一個比較成熟的型號,它完全兼容 51 單片機的指令。 electronic clock。 具備鬧鐘功能,鬧鈴方式為蜂鳴器 持續(xù)響 10 秒鐘,或者用按鍵手動關(guān)閉響鈴。用數(shù)字溫度計 DS18B20 測量當河南理工大學畢業(yè)設(shè)計(論文)說明書 2 前氣溫。 硬件總圖 整個系統(tǒng)硬 件連接總圖如圖 21: 圖 21 硬件連接總圖 河南理工大學畢業(yè)設(shè)計(論文)說明書 4 器件介紹 電源模塊 一、總體功能描述 圖 22 電源模塊 本設(shè)計的電源模塊主要由以下器件組成: 220V 轉(zhuǎn) 9V 的變壓器、整流橋、三端穩(wěn)壓器 LM7805。 圖 23 三端穩(wěn)壓器 LM7805 河南理工大學畢業(yè)設(shè)計(論文)說明書 5 主要特點: 輸出電流可達 1A 輸出電壓有: 5V 過熱保護 短路保護 輸出晶體管 SOA 保護 極限值( Ta=25℃ ) 輸入電壓 (VO=5~18V)?????? 35V 熱阻(結(jié)到殼) ???????? 5℃ /W 熱阻(結(jié)到空氣) ???????? 65℃ /W 工作結(jié)溫范圍 ???????? 0~125℃ 貯存溫度范圍 ???????? 65~150℃ 單片機 AT89S52 一、功能特性描述 AT89S52 是一種低功耗、高性能 CMOS 8 位微控制器,具有 8K 在系統(tǒng)可編程 Flash 存儲器。 河南理工大學畢業(yè)設(shè)計(論文)說明書 6 二 、內(nèi)部結(jié)構(gòu)圖 如圖 24 為單片機 AT89S52 的內(nèi)部結(jié)構(gòu)框圖 。在訪問外部數(shù)據(jù)存儲器時,分時轉(zhuǎn)換地址(低8 位)和數(shù)據(jù)總路線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。 表 21 P1 口第二引腳功能 引腳號 第二功能 T2 (定時器 /計數(shù)器 T2 的外部計數(shù)輸入),時鐘輸出 T2EX (定時器 /計數(shù)器 T2 的捕捉 /重載觸發(fā)信號和方向控制) MOSI (在系統(tǒng)編程用) MISO (在系統(tǒng)編程用) SCK (在系統(tǒng)編程用) 6. P2 口( 2128):是一個帶內(nèi)部上拉電阻的 8 位準雙向通用 I/O 口。 7. P3 口( 1017):是一組帶有內(nèi)部上拉電阻的 8 位雙向 I/O 口。 9. ALE/ PROG ( 30):地址鎖存控制信號 ALE 是訪問外部程序存儲器時,鎖存低 8 位地址的輸出脈沖。 10. RST( 9):復(fù)位信號輸入端 /備用電源輸入端。 1.累加器 ACC 累加器是一個最常用的專用寄存器。在
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1