




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、目 錄1、設(shè)計(jì)內(nèi)容及要求.21.1、設(shè)計(jì)內(nèi)容.21.2、設(shè)計(jì)要求.21.3、撰寫設(shè)計(jì)報(bào)告.22、總體方案設(shè)計(jì).22.1、方案圖. .2 2.2、面板布置圖. .2 2.3、方案討論. .3 2.4、明晰任務(wù). . .43、電路原理圖. . 4 4、程序框圖 . .5 4.1、顯示子程序流程圖. .5 4.2、實(shí)時(shí)時(shí)鐘芯片1302讀/寫數(shù)據(jù)流程圖.65、編程序.66、調(diào)試.66.1、軟件調(diào)試. . .6 6.2、仿真調(diào)試. . .77、自我感想. .78、參考書目. .89、附錄:C語言編程源程序. .81. 設(shè)計(jì)內(nèi)容及要求1. 1、設(shè)計(jì)內(nèi)容:以AT89C51單片機(jī)為核心,制作一個(gè)LCD顯示的智
2、能電子鐘。1.2、設(shè)計(jì)要求: (1) 計(jì)時(shí):秒、分、時(shí)、天、周、月、年。(2) 閏年自動(dòng)判別。(3) 時(shí)間、月、日交替顯示。(5) 自定任意時(shí)刻自動(dòng)開/關(guān)屏。(6) 計(jì)時(shí)精度:誤差1秒/月(具有微調(diào)設(shè)置)。1.3、 撰寫設(shè)計(jì)報(bào)告單片機(jī)課程設(shè)計(jì)是以課題或項(xiàng)目設(shè)計(jì)方式開展的一門課程,具有較強(qiáng)的綜合性、實(shí)踐性,是工科、工程類院?;蚵殬I(yè)類院校電類專業(yè)在校生的必修課,是將單片機(jī)原理與應(yīng)用課程的理論知識(shí)轉(zhuǎn)變?yōu)閼?yīng)用技術(shù)的重要教學(xué)環(huán)節(jié)。這一環(huán)節(jié)不但能加深對單片機(jī)原理的理解,而且還能培養(yǎng)學(xué)生的實(shí)踐動(dòng)手能力,開發(fā)學(xué)生的分析、解決問題的能力。單片機(jī)課程設(shè)計(jì)環(huán)節(jié)的訓(xùn)練能夠讓學(xué)生知道單片機(jī)工程項(xiàng)目的制作過程,使學(xué)生盡早
3、了解單片機(jī)系統(tǒng)的開發(fā)流程。2. 總體方案設(shè)計(jì)2.1、方案圖2.2、面板布置圖2.3、方案討論方案一:采用實(shí)時(shí)時(shí)鐘芯片實(shí)時(shí)時(shí)鐘芯片具備年、月、日、時(shí)、分、秒計(jì)時(shí)功能和多點(diǎn)計(jì)時(shí)功能,計(jì)時(shí)數(shù)據(jù)的更新每秒自動(dòng)進(jìn)行一次,不需程序干預(yù)。計(jì)算機(jī)可通過中斷或查詢方式讀取計(jì)時(shí)數(shù)據(jù)進(jìn)行顯示,因此計(jì)時(shí)功能的實(shí)現(xiàn)無需占用CPU的時(shí)間,程序簡單。此外,實(shí)時(shí)時(shí)鐘芯片多數(shù)帶有鋰電池做后備電源,具備永不停止的計(jì)時(shí)功能;具有可編程方波輸出功能,可用做實(shí)時(shí)測控系統(tǒng)的采樣信號(hào)等;有的實(shí)時(shí)時(shí)鐘芯片內(nèi)部還帶有非易失性RAM,可用來存放需長期保存但有時(shí)也需變更的數(shù)據(jù),由于功能完善,精度高,軟件程序設(shè)計(jì)相對簡單,且計(jì)時(shí)不占用CPU時(shí)間,因
4、此,在工業(yè)實(shí)時(shí)測控系統(tǒng)中多采用這一類專用芯片來實(shí)現(xiàn)實(shí)時(shí)時(shí)鐘功能。方案二:軟件控制利用單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)器進(jìn)行中斷定時(shí),配合軟件延時(shí)實(shí)現(xiàn)時(shí)、分、秒的計(jì)時(shí)及秒表計(jì)時(shí)。該方案節(jié)省硬件成本,且能使設(shè)計(jì)者對單片機(jī)的指令系統(tǒng)能有更深入的了解,從而掌握單片機(jī)應(yīng)用技術(shù)MCS-51匯編語言程序設(shè)計(jì)方法,因此,本系統(tǒng)設(shè)計(jì)采用此種軟件控制方法來實(shí)現(xiàn)計(jì)時(shí)。而由于Atmel公司的AT89C51是一種自帶4KB Flash存儲(chǔ)器的低電壓、高性能的CMOS 8位微處理器。該器件采用Atmel高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出引腳相兼容。AT89C51將多功能8位CPU和閃存集成在單個(gè)芯
5、片中,是一種高效的微控制器,使用也更方便,壽命更長,可以反復(fù)擦除1000次。形成了功能強(qiáng)大、使用靈活和具有較高性能價(jià)格比的微控制器。它的功能強(qiáng)大,而且也比較容易購買,故本設(shè)計(jì)中所選的單片機(jī)為AT89C51單片機(jī)。2.4、明晰任務(wù)采用AT89C51單片機(jī)作為系統(tǒng)的控制核心。時(shí)鐘數(shù)據(jù)通過市場上流行的時(shí)鐘芯片DS1302來獲取。DS1302是DALLAS公司推出的涓流充電時(shí)鐘芯片,內(nèi)含一個(gè)實(shí)時(shí)時(shí)鐘/日歷和31字節(jié)靜態(tài)RAM,可以通過串行接口與計(jì)算機(jī)進(jìn)行通信,使得管腳數(shù)量減少。實(shí)時(shí)時(shí)鐘/日歷電路能夠計(jì)算2100年之前的秒、分、時(shí)、日、星期、月、年的,具有閏年自動(dòng)判斷調(diào)整的能力。定時(shí)電路能夠?qū)崿F(xiàn)自定任意
6、時(shí)刻自動(dòng)開/關(guān)屏,采用LCD LM016L顯示年、月、周、天、時(shí)、分、秒。通過按鍵開關(guān)實(shí)現(xiàn)微調(diào),確保計(jì)時(shí)精度:誤差1秒/月。DS1302時(shí)鐘芯片的主要功能特性:(1) 能計(jì)算2100年之前的年、月、日、星期、時(shí)、分、秒的信息;每月的天數(shù)和閏年的天數(shù)可自動(dòng)調(diào)整;時(shí)鐘可設(shè)置為24或12小時(shí)格式。(2) 31B的8位暫存數(shù)據(jù)存儲(chǔ)RAM。(3) 串行I/O口方式使得引腳數(shù)量最少。(4) DS1302與單片機(jī)之間能簡單地采用同步串行的方式進(jìn)行通信,僅需3根線。(5) 寬范圍工作電壓2.0-5.5V。(6) 工作電流為2.0A時(shí),小于300nA。(7) 功耗很低,保持?jǐn)?shù)據(jù)和時(shí)鐘信息時(shí)功率小于1mW。3電路
7、原理圖4程序框圖4.1、顯示子程序流程圖4.2、實(shí)時(shí)時(shí)鐘芯片1302讀/寫數(shù)據(jù)流程圖5編程序源程序見附錄部分6調(diào)試6.1、軟件調(diào)試目前設(shè)計(jì)過程中容易造成元件和儀器儀表的損壞,而借助Keil和Proteus進(jìn)行單片機(jī)系統(tǒng)的開發(fā),可以節(jié)省設(shè)計(jì)成本,提高設(shè)計(jì)速度。Keil軟件包是一個(gè)功能強(qiáng)大的開發(fā)平臺(tái),它包括項(xiàng)目管理器、CX51編譯器、AX51宏匯編器、BL51/LX51連接定位器、RTX51實(shí)時(shí)操作系統(tǒng)、Simulator軟件模擬器及Monitor51硬件目標(biāo)調(diào)試器。它是一種集成化程度高的文件管理編譯環(huán)境,主要功能為編譯C語言源程序,匯編程序或混合語言源程序,連接和定位目標(biāo)文件和庫,創(chuàng)建HEX文件
8、,調(diào)試目標(biāo)程序等。Keil是目前最好的51單片機(jī)開發(fā)工具之一。Keil支持軟件模擬仿真(Simulator)和用戶目標(biāo)調(diào)試(Monitor51)兩種工作模式。前者不需要任何單片機(jī)硬件即可完成用戶程序仿真、調(diào)試,后者利用硬件目標(biāo)板中的監(jiān)控程序可以直接調(diào)試目標(biāo)硬件系統(tǒng)。Proteus是一個(gè)完整的嵌入式系統(tǒng)軟件、硬件設(shè)計(jì)仿真平臺(tái),它包括原理圖輸入系統(tǒng)ISIS、帶擴(kuò)展的Prospice混合模型仿真器、動(dòng)態(tài)元件庫、高級(jí)圖形分析模塊和處理器虛擬系統(tǒng)仿真模型VSM。ISIS是Proteus系統(tǒng)的中心,具有超強(qiáng)的控制原理設(shè)計(jì)環(huán)境。ProteusVSM最重要的特點(diǎn)是能把微處理器軟件作用在處理器上,并和該處理器的
9、任何模擬和數(shù)字元件協(xié)同仿真,仿真執(zhí)行目標(biāo)碼就像在真正的單片機(jī)系統(tǒng)上運(yùn)行一樣,VSM CPU模型能完整仿真I/O接口、中斷、定時(shí)器、通用外部設(shè)備口及其他與CPU有關(guān)的外部設(shè)備,甚至能仿真多個(gè)處理器。6.2、仿真調(diào)試Keil仿真:Proteus仿真:7自我感想經(jīng)歷過這么多天不間斷的課程設(shè)計(jì),我們有挺多感觸的,從最基本上說我們看到了,也意識(shí)到了自己的不足,對于不斷克服的各種阻礙也讓我們體會(huì)到了課程設(shè)計(jì)的意義所在。對于只接觸課本只動(dòng)筆桿的我們,面臨實(shí)際的設(shè)計(jì)尺寸,讓我們很是尷尬,都說理論聯(lián)系實(shí)際,真正到聯(lián)系的時(shí)候才發(fā)現(xiàn)挺困難的,不過正是理論知識(shí)的各種補(bǔ)充才讓我們能最終完成任務(wù),然后深深地體會(huì)到理論對現(xiàn)
10、實(shí)的指導(dǎo)作用。我們現(xiàn)在最缺乏的就是實(shí)際工作經(jīng)驗(yàn),而理論聯(lián)系實(shí)踐并不像我們想象的那么簡單,他需要堅(jiān)實(shí)的理論基礎(chǔ)和實(shí)際工作經(jīng)驗(yàn)。堅(jiān)實(shí)的理論基礎(chǔ)決定了我必須堅(jiān)持學(xué)習(xí)新的知識(shí)新的理論,完善了自己的知識(shí)結(jié)構(gòu),才能在以后的實(shí)際中輕松面對,才能設(shè)計(jì)出更好的更有益于人們生活與工作的機(jī)械,才能跟上時(shí)代的步伐,不被淘汰。在這個(gè)一邊忙著復(fù)習(xí)忙著考試又要準(zhǔn)備課程設(shè)計(jì)的日子里,真真正正的體會(huì)到了時(shí)間的寶貴,有點(diǎn)像高中忙忙碌碌的生活,不過能按時(shí)完成課程設(shè)計(jì)對我們來說也是一個(gè)莫大的安慰。嚴(yán)謹(jǐn)和細(xì)心是做機(jī)械設(shè)計(jì)的必要態(tài)度,要想做好一件事,就必須一絲不茍、態(tài)度認(rèn)真。俗話說:“失之毫厘,謬之千里?!痹跈C(jī)械設(shè)計(jì)上尤其應(yīng)該注意。在以
11、后的工作中,你的很小的一個(gè)疏忽將會(huì)造成一個(gè)公司很大的損失,甚至給用戶帶去生命危險(xiǎn),而自己也會(huì)為自己的不負(fù)責(zé)任行為付出代價(jià)。再者就是設(shè)計(jì)中要嚴(yán)謹(jǐn)和細(xì)心,對于機(jī)械是不能出差錯(cuò)的,任何的微小誤差都可能產(chǎn)生不可預(yù)計(jì)的后果,當(dāng)然對于我們來說就是設(shè)計(jì)中要走一些彎路,而且在這個(gè)嚴(yán)重缺少時(shí)間又惦記回家問題的我們來說也是一個(gè)很嚴(yán)重的后果。不過,困難雖是難免的,但我們有信心就能并且已經(jīng)戰(zhàn)勝了困難,完成了這個(gè)無比揪心的課程設(shè)計(jì)。因?yàn)闀r(shí)間等各種關(guān)系設(shè)計(jì)中難免有些不足還請老師助教給予批評和幫助。8參考書目單片機(jī)原理及其應(yīng)用教程 張?jiān)?主編MCS-51系列單片機(jī)原理及應(yīng)用 孫涵芳 主編新概念51單片機(jī)C語言教程 郭天祥
12、 主編51單片機(jī)課程設(shè)計(jì) 周向紅 主編9附錄:C語言編程源程序#include #include/-#define uint unsigned int #define uchar unsigned char/-/*uchar code table=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf 8, 0x80,0x98,0x88,0x83,0xc6,0xa1,0x86,0x8e;/ 共 陽極數(shù)碼管代碼 */ uchar code xingqi8=0x00,0x07,0x01,0x02,0x03,0x04,0x05, 0x06; /星期顯示代碼 uchar miao
13、,shi,fen,date,month,day,year,year10,set,mun,set_shi,set_fen,time_flag; / 全 局 定 義 uint year_data,t; /-sbit SCLK=P35; /DS1302 通訊線定義 sbit DIO=P36; sbit RST=P37; sbit speak=P00;sbit DS=P20; /595 通訊線定義 sbit SH_CP=P21; sbit ST_CP1=P22; sbit ST_CP2=P23; sbit ST_CP3=P24;sbit ST_CP4=P25; sbit ST_CP5=P26; sbi
14、t ST_CP6=P27; sbit ST_CP7=P30; sbit ST_CP8=P31; sbit OE1=P10; sbit OE2=P11; sbit OE3=P12; sbit OE4=P13; sbit OE5=P14; sbit OE6=P15; sbit OE7=P16; sbit OE8=P17; sbit K1=P32;/按鍵接口定義 sbit K2=P33; sbit K3=P34; sbit K4=P01; sbit K5=P02; /-void write_595(uchar temp) /寫 74HC595 一個(gè)字節(jié) uchar temp_595,i;temp_5
15、95=temp; for(i=0;i8;i+) SH_CP=0; _nop_();_nop_();_nop_();if(temp_595&0x80) DS=1; else DS=0; _nop_();_nop_();_nop_();SH_CP=1; temp_5950;x-) for(y=112;y0;y-); /-void delaynus(uint z) /ums 延時(shí) uint x,y; for(x=z;x0;x-) for(y=10;y0;y-); /-void write(uchar date) /寫入 DS1302 一個(gè)字節(jié) uchar temp,i; RST=1; SCLK=0;
16、 temp=date; for(i=0;i=1; /-uchar read() /讀出 DS1302 一個(gè)字節(jié) uchar a,temp; RST=1; for(a=8;a0;a-) temp=1; SCLK=1;_nop_();_nop_(); _nop_(); _nop_();_nop_();_nop_();_nop_();SCLK=0; if(DIO) temp=temp|0x80; else temp=temp|0x00; return (temp); /-void write_1302(uchar add,uchar dat) /寫DS1302數(shù)據(jù) RST=0; SCLK=0; RS
17、T=1; write(add); write(dat);SCLK=1; RST=0; /-uchar read_1302(uchar add) / 讀DS1302數(shù)據(jù) uchar temp; RST=0; SCLK=0; RST=1; write(add); temp=read(); SCLK=1;RST=0; return(temp); /-void display() /顯示子程序 miao=read_1302(0x81); /讀秒 fen=read_1302(0x83); /讀分 shi=read_1302(0x85)&0x3f;/讀時(shí) date=read_1302(0x87); /讀日
18、 month=read_1302(0x89); /讀月 year=read_1302(0x8d); /讀年 day=read_1302(0x8B); /讀星期 write_595(miao); /顯示秒 ST_CP1=0; ST_CP1=1; ST_CP1=0; delaynus(10);write_595(fen); /顯示分 ST_CP2=0; ST_CP2=1; ST_CP2=0; delaynus(10); write_595(shi); /顯示時(shí) ST_CP3=0; ST_CP3=1; ST_CP3=0; delaynus(10); write_595(date); /顯示日 ST_
19、CP4=0; ST_CP4=1; ST_CP4=0; delaynus(10); write_595(month); /顯示月 讀 ST_CP5=0; ST_CP5=1; ST_CP5=0; delaynus(10); write_595(year); /顯示年 ST_CP6=0; ST_CP6=1; ST_CP6=0; delaynus(10); write_595(xingqiday); /顯示星期 ST_CP7=0;ST_CP7=1; ST_CP7=0; delaynus(10); /- void ds1302_init() /1302 初始化 RST=0;SCLK=0; /*write
20、_1302(0x80,0x00);/設(shè)置初始值SEC write_1302(0x82,0x00);/設(shè)置初始值MIN write_1302(0x84,0x00);/設(shè)置初始值HR write_1302(0x86,0x00);/設(shè)置初始值DATE write_1302(0x88,0x00);/設(shè)置初始值MONTH write_1302(0x8A,0x00);/設(shè)置初始值DAY*/write_1302 (0x8C,0x10);/設(shè)置初始值YEAR /- void PORT_INIT() /端口初始化 P0=0XFE; P1=0X00;P2=0X00; P3=0XFC; void time_init
21、() /定時(shí)器初始化 TMOD=0x11; /設(shè)置定時(shí) 器 01 都為工作方式 1 TH0=(65536-50000)/256; /裝入初值 TL0=(65536-50000)%256; TH1=(65536-10000)/256; /裝入初值 TL1=(65536-10000)%256; PT0=1; /T0 定時(shí)器優(yōu)先級(jí)最高EA=1 ;/開總中斷ET0=1;/開定時(shí)器 0 中斷ET1=1;/開定時(shí)器 1 中斷TR0=1;/啟動(dòng)定時(shí)器 0TR1=1; / 啟動(dòng)定時(shí)器 1 /-void main(void) /主程序 PORT_INIT(); ds1302_init();time_init()
22、; year=read_1302(0x8d); /讀年數(shù)據(jù) year_data=0x2000|year;write_595(year_data8); /顯示 2010 年的 20 字樣 ST_CP8=0;ST_CP8=1; ST_CP8=0; set_shi=0x09; /鬧鐘初始值設(shè)定 set_fen=0x39; time_flag=0; /標(biāo)志位 set=0;while(1) switch(set) case 0: /設(shè)置秒 display(); / 顯 示 子 程 序 if(shi=set_shi)&(fen=set_fen)&(time_flag=0) /鬧鐘設(shè)定 只設(shè)定小時(shí)和分鐘 s
23、peak=speak; if(K2=0)&(time_flag=0) /按鍵 K2 停 止鬧鐘響 P0&=0XFE;time_flag=1; delay(10); break; if (fen=set_fen+1) / 當(dāng) 不 按 下 鬧 鐘 停止按鍵,一分鐘后自動(dòng)停止鬧鐘 P0&=0XFE; time_flag=0; /-void time0()interrupt 1 / 定時(shí) 器 0 中斷 TR0=0; TH0=(65536-50000)/256; TL0=(65536-50000)%256; mun+;if(mun=15) mun=0; switch(set) case 1: /設(shè)置秒閃
24、爍 OE1=1; delay(300);OE1=0; break; case 2: /設(shè)置分閃爍 OE2=1; delay(300);OE2=0; break; case 3: /設(shè)置時(shí)閃爍 OE3=1;delay(300);OE3=0; break; case 4: /設(shè)置日閃爍 OE4=1;delay(300); OE4=0; break; case 5: /設(shè)置月閃爍 OE5=1;delay(300);OE5=0; break; case 6: /設(shè)置年閃爍 OE6=1;OE8=1;delay(300); OE6=0; OE8=0; break; case 7: /設(shè)置星期閃爍 OE7=
25、1;delay(200);OE7=0; break; case 8: /設(shè)置鬧鐘閃爍 OE2=1; OE3=1; delay(200);OE2=0; OE3=0; break; TR0=1; /-void time1()interrupt 3 / 定時(shí)器 1 中斷 TR1=0; /先關(guān)定時(shí)器 TH1=(65536-20000)/256; TL1=(65536-20000)%256; /-if(K1=0) delay(10); if(K1=0) set+; if(set=9) set=0;write_1302(0x80,miao); /設(shè)置初始值 SEC write_1302(0x82,fen)
26、; /設(shè)置初始值 MIN write_1302(0x84,shi); /設(shè)置初始值 HR write_1302(0x86,date); /設(shè)置初始值 DATE write_1302(0x88,month); / 設(shè)置初始值 MONTH write_1302(0x8A,day); /設(shè)置初始值 DAY write_1302(0x8C,year_data); /設(shè)置初始值 YEAR t=50000; while(!K1)&t) t-; /-if(K2=0) delay(10); if(K2=0) switch(set) case 1: miao+;if(miao&0x0f)0x09) miao+=
27、0x10; miao&=0xf0; if(miao=0x60) miao=0x00; write_595(miao); ST_CP1=0; ST_CP1=1; ST_CP1=0; break;case 2: fen+; if(fen&0x0f)0x09) fen+=0x10; fen&=0xf0; if (fen=0x60) fen=0x00; ST_CP2=0;ST_CP2=1; ST_CP2=0; break; case 3: if(read_1302(0x85)&0x80)=0x00) shi+; if(shi&0x0f)0x09) shi+=0x10; shi&=0xf0;if(shi
28、=0x24) /24 小時(shí)制 shi=0x00; else shi=(shi|0x80)+1; if(shi&0x0f)0x09) shi+=0x10;shi&=0xf0;if(shi=0x12) /12 小時(shí)制 shi=0X80; write_595(shi); /顯示時(shí) ST_CP3=0; ST_CP3=1; ST_CP3=0; break; case 4: date+; if(date&0x0f)0x09)date+=0x10; date&=0xf0; if(date=0x32)&(month=0x01)|(month=0x03)|(month=0x05)|(month=0x07)|(m
29、onth=0x08)|(month=0x10)|(month=0x12) date=0x01; else if(date=0x31)&(month=0x04)|(month=0x06)|(month=0x09)|(month=0x11) date=0x01; else if(date=0x29)&(month=0x02)&(year_data|read_1302(0x8d)%100!=0)&(year_data|read_1302(0x8d)%400!=0) date=0x01;elseif(date=0x30)&(month=0x02)&(year_data|read_1302(0x8d)%
30、100=0)&(year_data|read_1302(0x8d)%400=0) date=0x01; write_595(date);ST_CP4=0; ST_CP4=1; ST_CP4=0; break;case 5: month+;if(month&0x0f)0x09) month+=0x10;month&=0xf0; if(month=0x13) month=0x01; write_595(month); ST_CP5=0; ST_CP5=1;ST_CP5=0; break; case 6: year_data+;if(year_data&0x000f)=0x0a) year_data
31、+=0x0010; year_data&=0xfff0; if(year_data&0x00ff)=0xa0) year_data+=0x0100; /向前進(jìn) 1 year_data&=0xff00; /后面尾數(shù)歸 0write_595(year_data); ST_CP6=0; ST_CP6=1;ST_CP6=0; write_595(year_data8); ST_CP8=0; ST_CP8=1; ST_CP8=0; break; case 7: day+; if(day&0x0f)=0x08) day=0x01; write_595(xingqiday);ST_CP7=0; ST_CP7
32、=1;ST_CP7=0; break; t=50000; while(!K2)&t) t-; /-if(K3=0) delay(10);if(K3=0) switch(set) case 1: miao-; if(miao&0x0f)=0x0F) miao&=0xf9; /減到 0 后,再減一次就歸 0, if(miao=0xF9) /當(dāng)全部減到 00 時(shí), 再 減一次就為 59miao=0x59;write_595(miao);ST_CP1=0;ST_CP1=1; ST_CP1=0; break; case 2: fen-;if(fen&0x0f)=0x0F) fen&=0xf9; if(f
33、en=0xF9) fen=0x59; write_595(fen);ST_CP2=0; ST_CP2=1;ST_CP2=0; break; case 3: if(read_1302(0x85)&0x80)=0x00) shi-; if(shi&0x0f)=0x0F) shi&=0xf9; if(shi=0xF9) /24 小時(shí)制 shi=0x23; else shi=(shi|0x80)-1;if(shi&0x0f)=0x0F) shi&=0xf9; if(shi=0xF9) /12小時(shí)制shi=0X12;write_595(shi);/顯示時(shí) ST_CP3=0; ST_CP3=1;ST_CP
34、3=0; break; case 4: date-; if(date&0x0f)=0x0F) date&=0xf9; if(date=0x00)&(month=0x01)|(month=0x03)|(month=0x05)|(month=0x07)|(month=0x08)|(month=0x10)|(month=0x12) date=0x31; else if(date=0x00)&(month=0x04)|(month=0x06)|(month=0x09)|(month=0x11) date=0x30; else if(date=0x00)&(month=0x02)&(year_data|
35、read_1302(0x8d)%100!=0)&(year_data|read_1302(0x8d)%400!=0) date=0x28; else if(date=0x00)&(month=0x02)&(year_data|read_1302(0x8d)%100=0)&(year_data|read_1302(0x8d)%400=0) date=0x29; write_595(date);ST_CP4=0; ST_CP4=1; ST_CP4=0; break; case 5: month-; if(month&0x0f)=0x0F) month&=0xf9; if(month=0x00) month=0x12;write_595(month); ST_CP5=0;ST_CP5=1;S
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 信息系統(tǒng)安全管理試題及答案
- 財(cái)務(wù)管理案例分析與啟示計(jì)劃
- 促進(jìn)幼兒身心發(fā)展的活動(dòng)設(shè)計(jì)計(jì)劃
- 2024年遼寧省知識(shí)產(chǎn)權(quán)局下屬事業(yè)單位真題
- 學(xué)期班級(jí)計(jì)劃目標(biāo)更新總結(jié)
- 2024年廣東省科學(xué)技術(shù)廳下屬事業(yè)單位真題
- 精神世界的豐富與充實(shí)2023年高考作文試題及答案
- 2024年南平邵武市立醫(yī)院人員招聘筆試真題
- 加強(qiáng)倉庫內(nèi)外部溝通的協(xié)調(diào)計(jì)劃
- 2024年德州武城縣人民醫(yī)院招聘筆試真題
- 食品配送行業(yè)安全生產(chǎn)管理制度
- 土力學(xué)知到智慧樹章節(jié)測試課后答案2024年秋青島理工大學(xué)
- 手術(shù)室護(hù)理疑難病例討論
- 國家秘密載體的管理要求
- 硫酸安全使用管理及使用制度(4篇)
- 《正確看待中美關(guān)系》課件
- 申請發(fā)票額度合同范例
- 2024年砂石廠主要負(fù)責(zé)人安全生產(chǎn)責(zé)任制(2篇)
- 工地司機(jī)安全培訓(xùn)
- 康復(fù)醫(yī)療行業(yè):社會(huì)辦康復(fù)醫(yī)療50企業(yè)報(bào)告
- 讀懂食物標(biāo)簽正確選擇食物(未修)
評論
0/150
提交評論