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

正文內(nèi)容

基于單片機(jī)的萬年歷的設(shè)計(jì)-wenkub.com

2024-12-02 01:17 本頁面
   

【正文】 //寫入秒 30 秒 delay(5)。 //寫入小時(shí) 12 點(diǎn) delay(5)。 //寫入月分 5 月 delay(5)。 //寫入年份 11 年 delay(5)。 //將時(shí)鐘電平 置于已知狀態(tài) return temp。 WriteDs1302Byte(address)。 } /*****根據(jù)命令字,從 1302 讀取數(shù)據(jù) *****/ unsigned char ReadDs1302(unsigned char address) { unsigned char temp。 //將數(shù)據(jù)取出,寫在 temp0 的最高位 DS1302_CLK=1。 //禁止數(shù)據(jù)傳遞 } /*************從 1302 讀一個(gè)字節(jié) **************/ unsigned char read_byte() { unsigned char i。 //啟動(dòng)數(shù)據(jù)傳輸 delay(1)。 //上升沿寫入數(shù)據(jù) temp=1。i) { DS1302_IO=tempamp。 return temp。 temp=8。 //發(fā)出讀溫度命令 delayb(200)。 //發(fā)出溫度轉(zhuǎn)換命令 delayb(100)。 unsigned char a,b。 DS18B20=1。i++) { DS18B20=0。 DS18B20=1。 DS18B20=1。 dat=dat1。 delayb(1)。 delayb(20)。 delayb(80)。 } /***************DS18B20 初始化函 數(shù) ***************/ 35 unsigned char DS18B20Init() { unsigned char x。 while(a) { for(i=0。 //按鍵功能:設(shè)置 sbit SureKey=P3^5。 //位定義 DS1302 芯片的接口,數(shù)據(jù)輸出端口 sbit DS1302_RST=P1^2。 sbit PSB=P1^4。 bit w。 int temp。最后我要感謝梁丹丹,杜超,任前山幾位在本設(shè)計(jì)中給予我?guī)椭耐瑢W(xué)朋友;由衷感謝吳志明,楊金澎,董飛飛這幾位舍友,感謝他們?cè)谖依щy的時(shí)候給予我鼓勵(lì)和幫助。實(shí)驗(yàn) .北京:科學(xué) 出版社, 2021. [6]趙全利,肖興達(dá) .單片機(jī)原理及應(yīng)用教程(第二版) .北京:機(jī)械工業(yè)出版社, . [7]雷伏容,張小林,崔浩 .51 單片機(jī)常用模塊設(shè)計(jì)查詢手冊(cè) .北京:清華大學(xué)出版社,. [8]肖炎根,舒望 .基于實(shí)時(shí)時(shí)鐘芯片的電子萬年歷的設(shè)計(jì) [J].電子技術(shù), 2021, Z3: 9194. [9]劉暢生,宣宗強(qiáng),雷振亞等 .傳感器簡(jiǎn)明手冊(cè)及應(yīng)用電路 ——溫度傳感器分冊(cè)(上冊(cè)) .西安:電子科技大學(xué)出版社, . [10]李宏,張家田 .液晶顯示器件應(yīng)用技術(shù) .北京:機(jī)械工業(yè)出版社, . [11]劉德全 .可調(diào)家用萬年歷的單片機(jī)原理 [J].寧夏師范學(xué)院報(bào), 2021, 03: 9598. [12]姜志海 、劉連鑫 .單片微型計(jì)算機(jī)原理及應(yīng)用 .機(jī)械工業(yè)出版社 ,. [13]馮育才、雷思孝 .單片機(jī)系統(tǒng)設(shè)計(jì)及工程應(yīng)用 .西安電子科技大學(xué)出版社 ,. [14]李珍、付植桐 .單片機(jī)原理與應(yīng)用技術(shù) .清華大學(xué)大學(xué)出版社 ,. [15]沈紅衛(wèi) .基于單片機(jī)的智能系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) .電子工業(yè)出版社, . 32 答 謝 在這里我要首先感謝我的指導(dǎo)老師 ——王書志老師 ,本設(shè)計(jì)在王老師的悉心指導(dǎo)下完成的。 本設(shè)計(jì)總體最終實(shí)現(xiàn)了陽歷及陰歷的日期顯示、時(shí)間、星期、溫度的顯示,獨(dú)立按鍵調(diào)節(jié)時(shí)間、日期、星期等功能。以前焊接的東西都是有現(xiàn)成的電路板,只是把元件對(duì)應(yīng)的組裝起來就基本沒問題了。這里可以看出程序的先后順序同樣重要,我們不要忽視這些小細(xì)節(jié)。 } } 問題出現(xiàn)在 DS1302_CLK=1。0x01。看以下程序: void WriteDs1302Byte(unsigned char temp) { unsigned char i。 圖 萬年歷實(shí)物圖 下面是一些調(diào)試的過程: 由圖 可以看出,液晶顯示的結(jié)果不 正確,不符合設(shè)計(jì)的要求。所以,我首先要確定液晶屏能正常顯示,然后將各模塊要顯示的內(nèi)容單獨(dú)在液晶上顯示出來,最后再將所有模塊的內(nèi)容在液晶上顯示出來。例如:計(jì)算機(jī)與單片機(jī)通信用到的串行口模塊,焊接好以后先進(jìn)行程序下載,如果可以下載成功,說明該模塊沒問題。因此我主要采用硬件直接進(jìn) 行調(diào)試。 (5) 讀忙狀態(tài)(讀取忙碌狀態(tài)和位址)功能:讀取忙碌狀態(tài)( BF)可以確認(rèn)內(nèi)部動(dòng)作是否完成,同時(shí)可以讀出位址計(jì)數(shù)器( AC)的值。 (2) 顯示狀態(tài)功能: D=1 表示整體顯示開( ON), C=1 表示游標(biāo)開, B=1表示游標(biāo)位置開。 R/W=H 且 E(使能信號(hào)) =H 表示數(shù)據(jù)被讀到 DB0DB7, RW=L且 E=H→L 表示 DB0DB7 的數(shù)據(jù)被寫到 RAM。同樣要注意延時(shí)。 R/W 引腳要與 RS 的狀態(tài)結(jié)合,具體操作看表 , R/W 在這里不管 RS 是高低都是進(jìn)行寫操作。 //溫度轉(zhuǎn)換常數(shù) temp=tt*10+。 temp=b。 //跳過 ROM 匹配 TempWriteByte(0xbe)。 // 跳過 ROM 匹配 TempWriteByte(0x44)。 圖 DS18B20 工作流程圖 程序上的實(shí)現(xiàn): int GetTemp() { float tt。 21 } DS18B20程序設(shè)計(jì) DS18B20 溫度傳感器在本設(shè)計(jì)中負(fù)責(zé)實(shí)時(shí)傳輸當(dāng)前溫度,在液晶上顯示出來。 //寫入命令字 temp=read_byte()。 DS1302_RST=0。 //將 SCLK 置于高電平,為下降沿讀出做準(zhǔn)備 DS1302_CLK=0。 for(i=8。 //寫地址 WriteDs1302Byte(dat)。 //禁止數(shù)據(jù)傳遞 DS1302_CLK=0。 //取出 temp 的第 0 位數(shù)據(jù)寫入 1302 DS1302_CLK=0。 for (i=8。 SCLK 是一個(gè)命令字節(jié)和一個(gè)寫數(shù)據(jù)字節(jié)的時(shí)鐘脈沖(上升沿), 前 8 個(gè)是負(fù)責(zé)命令字節(jié)的,后 8 個(gè)負(fù)責(zé)數(shù)據(jù)字節(jié)。 WriteDs1302(0x8c,0x11)。 WriteDs1302(0x88,0x05)。 WriteDs1302(0x84,0x12)。 //延時(shí)給 DS1302 準(zhǔn)備時(shí)間,以下相同 WriteDs1302(0x80,0x30)。當(dāng) WP 位為 1 時(shí),寫保護(hù)位防止對(duì)任一寄存器的寫操作。 時(shí)寄存器(寫 84H、讀 85H)的 bit7 位為 1 時(shí), DS1302 時(shí)鐘芯片運(yùn)行于 12 小時(shí)模式, bit7 位為 0 時(shí), DS1302 時(shí)鐘芯片運(yùn)行于 24 小時(shí)模式(本設(shè)計(jì)是 24 小時(shí)模式)。 N N Y Y 圖 DS1302 時(shí)鐘芯片工作流程 圖 通過流程圖我們對(duì) DS1302 時(shí)鐘芯片是如何工作的有了個(gè)大概的了解,現(xiàn)在進(jìn)一步了解 DS1302 時(shí)鐘芯片關(guān)于日歷、時(shí)間的存儲(chǔ)器,先看表 。 DS1302時(shí)鐘芯片程序設(shè)計(jì) 在本設(shè)計(jì)中,要實(shí)現(xiàn)萬年歷的功能, DS1302 時(shí)鐘芯片是少不得的,雖然只用單片機(jī)也可以實(shí)現(xiàn),但是將會(huì)造成時(shí)間誤差較大,不好調(diào)節(jié)。一,三,四,六,九,十一月都是月大( 30 天),其它都是月小( 29 天)。第二字節(jié) BIT70 位對(duì)應(yīng)陰歷第 512 月大小。本設(shè)計(jì)程序?qū)崿F(xiàn)了陽歷日期、陰歷日期、時(shí)間、星期、溫度、節(jié)日提醒等功能。 C 語言程序本身不依賴于機(jī)器硬件系統(tǒng),基本上不作修改就可將程序從不同的單片機(jī)中移植過來。其電路設(shè)計(jì)如圖 所示。 (a) LCD12864 引腳 (b) 單片機(jī) 圖 12864 液晶引腳電路圖 12 在進(jìn)行進(jìn)行這個(gè)模塊的設(shè)計(jì)時(shí),考慮到 12864 液晶的顯示方向,而單片機(jī)的 P2 引腳剛好與其它的引腳排列順序相反(可看圖 ),所以本設(shè)計(jì)中單片機(jī)與液晶進(jìn)行數(shù)據(jù)傳輸時(shí),用單片機(jī)的 P2 引腳與液晶的 8 位雙向三態(tài)數(shù)據(jù)線( DB0DB7)進(jìn)行連接,這樣大大簡(jiǎn)化了線路的復(fù)雜度。 12864液晶 在本設(shè)計(jì)中,要顯示陽歷、陰歷、星期、時(shí)間、生肖、溫度及節(jié)日提醒,因此對(duì)顯示器的要求較高。 (4) 溫范圍: 55℃ ~+ 125℃ ,在 10~ +85℃ 時(shí)精度為 177。 圖 DS18B20 封裝引腳圖 圖 單片機(jī)與 DS18B20 的連接圖 DS18B20 溫度傳感器是美國(guó) DALLS 公司推出的 DS1820 的替代產(chǎn)品,其主要特性如下。 (a) DS1302 (b) 單片機(jī) 圖 單片機(jī)與 DS1302 的連接引腳圖 DS18B20溫度傳感器 溫度是一個(gè)基本的物理量,自然界中的一切過程與溫度 密切相關(guān)。 (5) Pin6: I/O 為串行數(shù)據(jù)輸入輸出端 (雙向 ),在控制指令字輸入后的下一個(gè) SCLK 時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入 DS1302,數(shù)據(jù)輸入從低位即位 0 開始。當(dāng) RST 為高電平時(shí),所有的數(shù)據(jù)傳送被初始化,允許對(duì)DS1302 進(jìn)行操作。當(dāng) Vcc2 小于 Vcc1 時(shí), DS1302由 Vcc1 供電。 (2) Pin8: Vcc1 為后備電源。 DS1302[8] 是美國(guó) DALLAS 公司推出的一種串行接口實(shí)時(shí)時(shí)鐘芯片。 Pin12( R1OUT)引腳和 Pin11( T1IN)引腳分別與單片機(jī)的 /RXD(串行輸入口)、 /TXD(串行輸出口 )連接。 MAX232接收器的輸入為 RS232電平,輸出為 TTL/CMOS 電平。如 EA為低電平,則不管地址大小,一律讀取外部程序存儲(chǔ)器指令。 (4) Pin30: ALE/PROG 當(dāng)訪問外部程序器時(shí), ALE(地址鎖存 )的輸出用于鎖存地址的低位字 節(jié)。復(fù)位電路如圖 所示。然而,初始復(fù)位不改變 RAM(包括工作寄存器 R0R7)的狀態(tài), STC89C52RC 的初始態(tài)。單片機(jī)引腳封裝如圖 所示。 單片機(jī)引腳說明 圖 STC89C52RC 封裝引腳圖 6 STC89C52RC 的引腳封裝和 8051 的引腳封裝是一樣的,均采用 40Pin封裝的雙列直插 DIP 結(jié)構(gòu)。 (5) T/C 定時(shí) /計(jì)數(shù)器:兩個(gè) 16 位的可編程定時(shí) /計(jì)數(shù)器,既可以工作在定時(shí)模式,也可以工作在計(jì)數(shù)模式。 (2) RAM:用于存放要讀寫的數(shù)據(jù),如運(yùn)算的中間結(jié)果、最終結(jié)果以及欲顯示的數(shù)據(jù)。 STC89 系列是以 8051 為基核開發(fā)出的 CMOS 工藝單片機(jī), DIP 封裝系列與 8051 為 pintopin(引腳對(duì)引腳)兼容。最后各模塊元件與單片機(jī)之間均用電線直接由引腳處連接(萬能板的焊點(diǎn)處)。 2 解決問題 本課題主要通過單片機(jī)的功能和應(yīng)用,利用 Keil[1]編程軟件和 Proteus仿真 [2]軟件進(jìn)行設(shè)計(jì),并制作實(shí)物。 發(fā)展現(xiàn)狀 據(jù)了解,目前市場(chǎng)上的電子萬年歷并不是采用 51 單片機(jī)作為主控制器的,基于單片機(jī)的萬年歷一般是學(xué)生和單片機(jī)愛好者在進(jìn)行設(shè)計(jì),談不上占有市場(chǎng)。目前市場(chǎng)上的萬年歷功能強(qiáng)大,簡(jiǎn)單 直觀,給人們帶來很大的方便。隨著科技的進(jìn)步,單片機(jī)的功能越來越強(qiáng)大,越來越方便用戶的使用。 本設(shè)計(jì)就是根據(jù)單片機(jī)的原理來進(jìn)行萬年歷的設(shè)計(jì)的。 I 基于單片機(jī)的萬年歷的設(shè)計(jì) 摘 要 單片機(jī)也稱為單片微計(jì)算機(jī)。設(shè)計(jì)的主控制器采用的是一款使用起來較方便的 STC89C52RC 單片機(jī),采用了帶中文字庫(kù)的 12864液晶作為顯示器,時(shí)間和日歷的功能采用 DS1302時(shí)鐘芯片來實(shí)現(xiàn),并采用 DS18B20 溫度傳感器來對(duì)溫度的實(shí)時(shí)傳輸。 關(guān)鍵詞: 單片機(jī),萬年歷, DS1302時(shí)鐘芯片, 12864 液晶 ABSTRACT Microcontroller is also a single
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1