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

正文內(nèi)容

基于51單片機(jī)電子鬧鐘或萬(wàn)年歷的設(shè)計(jì)課程設(shè)計(jì)-在線瀏覽

2025-05-06 06:56本頁(yè)面
  

【正文】 字輸入后的下一個(gè) SCLK 時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫(xiě)入 DS1302,數(shù)據(jù)輸入從低位即位 0 開(kāi)始。 (3) DS1302 的寄存器 DS1302 有 12 個(gè)寄存器,其中有 7 個(gè)寄存器與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為 BCD 碼形式。 “WP”是寫(xiě)保護(hù)位,在任何的對(duì)時(shí)鐘和 RAM 的寫(xiě)操作之前, “WP”必須為 0。 此外, DS1302 還有年份寄存器、控制寄存器、充電寄存器、時(shí)鐘突發(fā)寄存器及與 RAM 相關(guān)的寄存器等。 DS1302 與 RAM 相關(guān)的寄存器分為兩類(lèi):一類(lèi)是單個(gè)RAM 單元,共 31 個(gè),每個(gè)單元組態(tài)為一個(gè) 8 位的字節(jié),其命令控制字為 C0H~FDH,其中奇數(shù)為讀操作,偶數(shù)為寫(xiě)操作;另一類(lèi)為突發(fā)方式下的 RAM 寄存器,此方式下可一次性讀寫(xiě)所有的 RAM 的 31 個(gè)字節(jié),命令控制字為 FEH(寫(xiě) )、FFH(讀 )。1602 字符型 LCD 通常有 14 條引腳線或 16 條引腳線的 LCD,多出來(lái)的 2 條線是背光電源線。 1602 液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器( CGROM)已經(jīng)存儲(chǔ)了 160 個(gè)不同的點(diǎn)陣字符圖形,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫(xiě)、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼 .管腳功能如表 41 所示: 武漢理工大學(xué)《單片機(jī)原理與應(yīng)用課程設(shè)計(jì)》 13 LCD1602 主要管腳介紹: RS 為寄存器選擇端,高電平時(shí)選擇數(shù)據(jù)寄存器,低 電平時(shí)選擇指令寄存器。當(dāng) RS 和 R/W 共同為低電平時(shí)可以寫(xiě)入指令或者顯示地址;當(dāng) RS 為高電平 R/W 為低電平時(shí)可以寫(xiě)入數(shù)據(jù)。 將 L1602 的 RS 端和 , R/W 端和 , E 端和 相連,當(dāng) RS=0 時(shí),對(duì) LCD1602 寫(xiě)入指令;當(dāng) RS=1 時(shí),對(duì) LCD1602 寫(xiě)入數(shù)據(jù)。當(dāng) R/W為高電平 ,E 端也為高電平 , RS 為低電平時(shí),液晶顯示屏顯示需要顯示的示數(shù)。 圖 43 1602 液晶電路 蜂鳴器驅(qū)動(dòng)電路 發(fā)音部分是通過(guò)三極管放大驅(qū)動(dòng)蜂鳴器工作,再通過(guò)軟件這時(shí)產(chǎn)生等時(shí)時(shí)間方波驅(qū)動(dòng)蜂鳴器發(fā)出間斷嘀聲,這樣就可以省去硬件振蕩電路,降低成本。 由若干個(gè)按鍵組成一個(gè)鍵盤(pán),其電路結(jié)構(gòu)可分為獨(dú)立式鍵盤(pán)和矩陣式鍵盤(pán)兩種。鍵盤(pán)的工作方式可分為編程控制方式和中斷控制方式。這種方式為編程掃描方式。因此采用獨(dú)立式鍵盤(pán)。流程圖分析:首先系統(tǒng)初始化,系統(tǒng)開(kāi)始運(yùn)行,當(dāng)有設(shè)置鍵按下時(shí)進(jìn)入修改時(shí)間模式,無(wú)按鍵按下時(shí)讀取時(shí)間等數(shù)據(jù)送入液晶屏顯示;在修改時(shí)間模式下設(shè)置時(shí)間完成后再送數(shù)據(jù)到液晶屏顯示。流程圖分析: DS1302 開(kāi)始計(jì)時(shí)時(shí),首先進(jìn)行初始化,當(dāng)有中斷信號(hào)時(shí),讀取時(shí)鐘 芯片的數(shù)據(jù)送入液晶屏顯示。 開(kāi) 始初 始 化開(kāi) 中 斷讀 時(shí) 鐘 芯 片送 顯 示設(shè) 置 鍵 是否 有 按 下 ?是 否 修 改當(dāng) 前 時(shí) 間 ?送 E P R O M送 時(shí) 鐘 芯片YNYN 圖 52 時(shí)鐘流程圖 武漢理工大學(xué)《單片機(jī)原理與應(yīng)用課程設(shè)計(jì)》 17 LCD 顯示程序流程圖 顯示程序流程圖如圖 53。 對(duì) 1 6 0 2 初 始 化 寫(xiě) 入 顯 示 設(shè) 置 命 令延 時(shí) 5 m s檢 查 忙 信 號(hào)獲 得 顯 示R A M 地 址寫(xiě) 入 相 應(yīng)的 數(shù) 據(jù)延 時(shí) 5 m sB F = 0 ?開(kāi) 始結(jié) 束數(shù) 據(jù) 顯 示完 畢 ?YYNN 圖 53 LCD 顯示程序流程圖 武漢理工大學(xué)《單片機(jī)原理與應(yīng)用課程設(shè)計(jì)》 18 程序的設(shè)計(jì) DS1302 讀寫(xiě)程序 DS1302 是 SPI 總線驅(qū)動(dòng)方式。要想與 DS1302 通信,首先要先了解 DS1302 的控制字。 圖 54 DS1302 的控制字 控制字總是從最低位開(kāi)始輸出。同樣,在緊跟 8 位的控制字指令后的下一個(gè) SCLK 脈沖的下降沿,讀出 DS1302 的數(shù)據(jù),讀出的數(shù)據(jù)也是從最低位到最高位。 圖 55 單字節(jié)讀 圖 56 單字節(jié)寫(xiě) 液晶顯示程序 1602 通過(guò) D0~D7 的 8 位數(shù)據(jù)端傳輸數(shù)據(jù)和指令,其模塊內(nèi)的控制器有 11 條控制指令。在液晶屏完成顯示之前首先要對(duì)液晶進(jìn)行初始化。武漢理工大學(xué)《單片機(jī)原理與應(yīng)用課程設(shè)計(jì)》 19 此電子鬧 鐘設(shè)計(jì)是利用 Proteus 仿真軟件進(jìn)行仿真,基本上實(shí)現(xiàn)了課程設(shè)計(jì)要求實(shí)現(xiàn)的功能。 K1 鍵為調(diào)整時(shí)間功能鍵,K4 為設(shè)置鬧鐘功能鍵, K K3 分別為上調(diào)和下調(diào)鍵。 當(dāng)按下 K1 鍵時(shí)進(jìn)入時(shí)間調(diào)整模式, K1 按下第一次進(jìn)入年調(diào)整, K1 按下第二次進(jìn)入月調(diào)整, K1 按下第三次進(jìn)入日調(diào)整;當(dāng) K1 按下第四、五、六次 時(shí),分別進(jìn)入時(shí)、分、秒調(diào)整, K1 按下第七次時(shí)時(shí)間調(diào)整完畢,退出時(shí)間調(diào)整功能,顯示器正常顯示時(shí)間。 武漢理工大學(xué)《單片機(jī)原理與應(yīng)用課程設(shè)計(jì)》 21 通過(guò)自己的 不懈努力,我終于完成了畢業(yè)設(shè)計(jì)任務(wù)書(shū)上的任務(wù)要求。其精確度完全可以滿足日常生活顯示時(shí)間的需要;調(diào)時(shí)功能,方便快捷;校時(shí)功能保證了時(shí)鐘準(zhǔn)確和可靠性 。但是由于時(shí)間比較短,前期設(shè)計(jì)出現(xiàn)部分不足:如位選閃爍功能不能實(shí)現(xiàn)、鬧鐘的開(kāi)啟與關(guān)閉、間斷蜂鳴聲等。不過(guò)經(jīng)仔細(xì)思考和程序的完善,最終將軟件設(shè)計(jì)改進(jìn),并完全可以很好實(shí)現(xiàn)所有要求的功能。數(shù)字時(shí)鐘更具人性化,更能提高人們的生活質(zhì)量,更受人們歡迎。做為新時(shí)代的我們,更應(yīng)該提高自身能力,適應(yīng)新時(shí)代的發(fā)展。對(duì)于上述所提到的研究課題,我們應(yīng)盡量考慮到人的因素,增強(qiáng)時(shí)鐘的實(shí)用性和操作性,為使用者提供切實(shí)的方便,營(yíng)造一種舒適的生活氛圍。 另外,在 本次設(shè)計(jì)的過(guò)程中,我發(fā)現(xiàn)很多的問(wèn)題,雖然以前沒(méi)有做過(guò)這樣的設(shè)計(jì)但通過(guò)這次設(shè)計(jì)我學(xué)會(huì)了很多東西,單片機(jī)課程設(shè)計(jì)重點(diǎn)就在于軟件算法的設(shè)計(jì),需要有很巧妙的程序算法,雖然以前寫(xiě)過(guò)幾次程序,但我覺(jué)的寫(xiě)好一個(gè)程序并不是一件簡(jiǎn)單的事,比如寫(xiě)一個(gè)程序看其功能很少認(rèn)為編寫(xiě)程序簡(jiǎn)單,但到編程的時(shí)候才發(fā)現(xiàn)一些細(xì)微的知識(shí)或低級(jí)錯(cuò)誤經(jīng)常犯做不到最后常常失敗,所以有些東西只有學(xué)精弄懂并且要細(xì)心才行,只學(xué)習(xí)理論有些東西是很難理解的,更談不上掌握。 武漢理工大學(xué)《單片機(jī)原理與應(yīng)用課程設(shè)計(jì)》 22 參考文獻(xiàn) [1] 張友德,趙志英,涂時(shí)亮 .《單片微型機(jī)原理、應(yīng)用與實(shí)驗(yàn)》 [M].上海:復(fù)旦大學(xué)出版社, 2021. [2] 趙亮,侯國(guó)銳 .《單片機(jī) C 語(yǔ)言編程與實(shí)例》 [M].北京:人民郵電出版社, 2021. [3] 高鵬,安濤,寇懷成 .《電路設(shè)計(jì)與制版 ——protel99 入門(mén)與提高》 [M].北京:人民郵電出版社, 2021. [4] 譚浩強(qiáng) .《 C 程序設(shè)計(jì) (第三版)》 [M].北京:清華大學(xué)出版社 ,2021. [5] 李朝青 .《單片機(jī)原理及接口技術(shù)》 [M].北京:北京航空航天大學(xué)出版社, 2021. [6] 康光華,《電子技術(shù)基礎(chǔ) — 模擬部分(第五版)》 [M].北京:高等教育出版社, 2021. 武漢理工大學(xué)《單片機(jī)原理與應(yīng)用課程設(shè)計(jì)》 23 附錄一 系統(tǒng)原理圖 武漢理工大學(xué)《單片機(jī)原理與應(yīng)用課程設(shè)計(jì)》 24 附錄二 系統(tǒng)程序 include //包含單片機(jī)寄存器的頭文件 include //包含 _nop_()函數(shù)定義的頭文件 unsigned char code digit[10]={0123456789}。 //位定義 1302 芯片的接口,時(shí)鐘輸出端口定義在 引腳 sbit DATA=P1^1。 //位定義 1302 芯片的接口,復(fù)位端口定義在 引腳 sbit K1=P3^2。 //定義按鍵 1 觸發(fā)中斷 1,設(shè)置鬧鐘按鈕 sbit K2=P1^4。 //定義按鍵 3, sbit BEEP=P3^6。//分別儲(chǔ)存苗、分、小時(shí),日,月,年 unsigned char settime=0。 unsigned char clock_hour,clock_min,clock_sec。 for(i=0。i++)。 SCLK=0。 //稍微等待,使硬件做好準(zhǔn)備 for(i=0。i++) //連續(xù)寫(xiě) 8 個(gè)二進(jìn)制位數(shù)據(jù) { DATA=datamp。 //取出 dat 的第 0 位數(shù)據(jù)寫(xiě)入 1302 低位在前,高位在后 delaynus(10)。 //上升沿寫(xiě)入數(shù)據(jù) delaynus(10)。 //重新拉低 SCLK,形成脈沖 dat=1。 //禁止數(shù)據(jù)傳遞 SCLK=0。 //啟動(dòng)數(shù)據(jù)傳輸 delaynus(10)。 //寫(xiě)入命令字 Write1302(dat)。 //將時(shí)鐘電平置于高電平狀態(tài) RST=0。 delaynus(10)。i8。 if(DATA==1) //如果讀出的數(shù) 據(jù)是 1 dat|=0x80。 //將 SCLK 置于高電平,為下降沿讀出 delaynus(10)。 //拉低 SCLK,形成脈沖下降沿 delaynus(10)。 //將讀出的數(shù)據(jù)返回 } /***************************************************** 函數(shù)功能:根據(jù)命令字,從 1302 讀取一個(gè)字節(jié)數(shù)據(jù) 入口參數(shù): Cmd ***************************************************/ unsigned char ReadSet1302(unsigned char Cmd) { unsigned char dat。 //拉低 RST SCLK=0。 //啟動(dòng)數(shù)據(jù)傳輸 Write1302(Cmd)。 //讀出數(shù)據(jù) SCLK=1。 //禁止數(shù)據(jù)傳遞 return dat。 武漢理工大學(xué)《單片機(jī)原理與應(yīng)用課程設(shè)計(jì)》 26 flag= ReadSet1302(0x81)。0x80) { //判斷時(shí)鐘芯片是否關(guān)閉 WriteSet1302(0x8E,0x00)。 //根據(jù)寫(xiě)秒寄存器命令字,寫(xiě)入秒的初始值 WriteSet1302(0x82,((59/10)4|(59%10)))。 //根據(jù)寫(xiě)小時(shí)寄存器命令字,寫(xiě)入小時(shí)的初始值 WriteSet1302(0x86,((18/10)4|(18%10)))。 //根據(jù)寫(xiě)月寄存器命令字,寫(xiě)入月的初始值 WriteSet1302(0x8c,((14/10)4|(9%10)))。 //打開(kāi)充電功能 選擇 2K 電阻充電方式 WriteSet1302(0x8E,0x80)。 //根據(jù)寫(xiě)狀態(tài)寄存器命令字,寫(xiě)入不保護(hù)指令 WriteSet1302(0x80,((sec/10)4|(sec%10)))。 //根據(jù)寫(xiě)分寄存器命令字,寫(xiě)入分的初始值 WriteSet1302(0x84,((hour/10)4|(hour%10)))。 //根據(jù)寫(xiě)日寄存器命令字,寫(xiě)入日的初始值 WriteSet1302(0x88,((mon/10)4|(mon%10)))。 //根據(jù)寫(xiě)年寄存器命令字,寫(xiě)入年的初始值 WriteSet1302(0x90,0xa5)。 //根據(jù)寫(xiě)狀態(tài)寄存器命令字,寫(xiě)入保護(hù)指令 } /******************************************************************************* 以下是對(duì)液晶模塊的操作程序 武漢理工大學(xué)《單片機(jī)原理與應(yīng)用課程設(shè)計(jì)》 27 *******************************************************************************/ sbit RS=P2^0。 //讀寫(xiě)選擇位,將 RW 位定義為 引腳 sbit E=P2^2。 //忙碌標(biāo)志位,將 BF 位定義為 引腳 /***************************************************** 函數(shù)功能:延時(shí) 1ms (3j+2)*i=(333+2)10=1010(微秒 ),可以認(rèn)為是 1 毫秒 **************************
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1