版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 課程名稱:?jiǎn)纹瑱C(jī)課程設(shè)計(jì)</p><p> 報(bào)告題目:智能電子日歷</p><p><b> 學(xué)生姓名:</b></p><p> 所在學(xué)院:信息科學(xué)與工程學(xué)院</p><p><b>
2、 專業(yè)班級(jí):</b></p><p><b> 學(xué)生學(xué)號(hào):</b></p><p><b> 指導(dǎo)教師:</b></p><p> 2013 年 12 月 25 日</p><p><b> 課程設(shè)計(jì)任務(wù)書(shū)</b></p><p>&
3、lt;b> 摘要</b></p><p> 本設(shè)計(jì)是根據(jù)我們所學(xué)的單片機(jī)課程,按照大綱要求對(duì)我們進(jìn)行的一次課程檢驗(yàn),是進(jìn)行單片機(jī)課程訓(xùn)練的必要任務(wù),也對(duì)我們掌握單片機(jī)應(yīng)用有很大的幫助。單片機(jī)技術(shù)作為電子專業(yè)的基礎(chǔ)課程之一,對(duì)我們將來(lái)的工作以及生活和學(xué)習(xí)都有很密切的聯(lián)系;近年來(lái)隨著電子技術(shù)和微機(jī)計(jì)算機(jī)的迅速發(fā)展,單片機(jī)的性能不斷更新和提高,應(yīng)用領(lǐng)域也不斷擴(kuò)大,已經(jīng)在工業(yè)控制、尖端科技、智能儀器
4、、汽車電子系統(tǒng)、辦公自動(dòng)化系統(tǒng)、通信產(chǎn)品等等領(lǐng)域有廣泛的應(yīng)用,成為現(xiàn)代電子系統(tǒng)中最重要的智能化核心器件。</p><p> 關(guān)鍵詞 :?jiǎn)纹瑱C(jī),電子技術(shù),智能化</p><p><b> 目錄</b></p><p> 一、概述…………………………………………………………………………5</p><p> 二、方案設(shè)
5、計(jì)與論證………………………………………………………………5</p><p> 1.單片機(jī)芯片選擇……………………………………………………………5</p><p> 2.時(shí)間計(jì)算模塊……………………………………………………………5</p><p> 3.顯示模塊………………………………………………………………………6</p><p>
6、三、單元電路設(shè)計(jì)……………………………………………………………………6</p><p> 1.單片機(jī)最小系統(tǒng)電路…………………………………………………………7</p><p> 2.?dāng)?shù)碼管電路………………………………………………………………8</p><p> 3.按鍵電路………………………………………………………………9
7、 </p><p> 四、程序設(shè)計(jì)………………………………………………………………………10</p><p> 1.程序總體思路和分析………………………………………………………10</p><p> 2.程序清單……………………………………………………………………11</p><p> 五、結(jié)論與心得
8、………………………………………………………………………19</p><p> 六、參考文獻(xiàn)……………………………………………………………………20</p><p><b> 一、概述</b></p><p> 本系統(tǒng)以STC89C52單片機(jī)為控制核心,通過(guò)單片機(jī)計(jì)時(shí)器模擬時(shí)間輸出,并將時(shí)間通過(guò)數(shù)碼管實(shí)時(shí)顯示出來(lái),通過(guò)相應(yīng)的按鍵調(diào)整相應(yīng)的數(shù)
9、值和功能。所以本設(shè)計(jì)可以分為以下幾個(gè)模塊:顯示模塊、按鍵模塊、定日輸出模塊。下面對(duì)各個(gè)模塊進(jìn)行逐一分析。</p><p><b> 二、方案設(shè)計(jì)與論證</b></p><p> 時(shí)間計(jì)算模塊有兩種方式,一種利用現(xiàn)成的時(shí)間計(jì)時(shí)芯片實(shí)時(shí)讀取時(shí)間,然后顯示;第二種是利用STC89C52單片機(jī)內(nèi)部的定時(shí)/計(jì)數(shù)功能,實(shí)現(xiàn)時(shí)間的計(jì)算。</p><p>
10、<b> 1.單片機(jī)芯片選擇</b></p><p> 方案一:采用89C52作為硬件核心</p><p> 采用Flash ROM,內(nèi)部具有4KB ROM存儲(chǔ)空間,能于3V的超低壓工作,而且與MCS-51系列單片機(jī)完全兼容,但是運(yùn)用于電路設(shè)計(jì)中時(shí)由于不具備ISP在先編程技術(shù),當(dāng)在對(duì)電路進(jìn)行調(diào)試時(shí),由于程序的錯(cuò)誤修改或?qū)Τ绦虻男略龉δ苄枰獰氤绦驎r(shí),對(duì)芯片的多次
11、拔插會(huì)對(duì)芯片造成一定的損壞。</p><p> 方案二:采用AT89S52作為硬件核心</p><p> 片內(nèi)ROM全部采用Flash ROM;能以3V的超低壓工作,同時(shí)也與MCS-51系列單片機(jī)完全該芯片內(nèi)部存儲(chǔ)器為8KB ROM 存儲(chǔ)空間,同樣具有89C51的功能,且具有在線編程可擦除技術(shù),當(dāng)在對(duì)電路進(jìn)行調(diào)試時(shí),由于程序的錯(cuò)誤修改或?qū)Τ绦虻男略龉δ苄枰獰氤绦驎r(shí),不需要對(duì)芯片多次拔
12、插,所以不會(huì)對(duì)芯片造成一定的損壞。</p><p> 所以選擇采用AT89S52作為主控制系統(tǒng)。</p><p><b> 2.時(shí)間計(jì)算模塊</b></p><p> 方案一:DS1302芯片</p><p> DS1302是美國(guó)DALLAS公司推出的一種高性能、低功耗的實(shí)時(shí)時(shí)鐘芯片,附加31字節(jié)靜態(tài)RAM,才用
13、SPI三線接口與CPU進(jìn)行通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)和RAM數(shù)據(jù)。實(shí)時(shí)時(shí)鐘可提供秒、分、時(shí)、日、星期、月、年,一個(gè)月小于31天時(shí)可以自動(dòng)調(diào)整,且具有閏年補(bǔ)償功能。工作電壓寬帶2.5~5.5V。采用雙電源供電,可以設(shè)置備用電源充電方式,提供了對(duì)后備電源進(jìn)行涓流充電的能力。利用單片機(jī)的控制功能就可以實(shí)現(xiàn)實(shí)時(shí)計(jì)時(shí)的功能,而且消耗的系統(tǒng)資源少,程序簡(jiǎn)單。</p><p> 方案二:?jiǎn)纹瑱C(jī)內(nèi)部定時(shí)器
14、/計(jì)數(shù)器</p><p> STC89C52單片機(jī)內(nèi)部帶有定時(shí)器/計(jì)數(shù)功能,此定時(shí)功能時(shí)通過(guò)對(duì)外部晶振的脈沖進(jìn)行計(jì)數(shù),從而達(dá)到計(jì)時(shí)功能,只要使用11.0592MHz的晶振就能實(shí)現(xiàn)零誤差的計(jì)時(shí),因此可以利用此功能實(shí)現(xiàn)計(jì)時(shí)。</p><p> 從任務(wù)要求來(lái)看,CPU的系統(tǒng)消耗很少,有足夠的內(nèi)部資源利用定時(shí)器實(shí)現(xiàn)計(jì)時(shí)功能和處理其他算法。任務(wù)要求不需要有掉電保護(hù)功能,這樣可以減少工作量和系統(tǒng)成
15、本。</p><p><b> 3.顯示模塊</b></p><p> 方案一:使用液晶顯示屏顯示時(shí)間數(shù)字</p><p> 液晶顯示屏(LCD)具有輕薄短小、低耗電量、無(wú)輻射危險(xiǎn),平面直角顯示以及影響穩(wěn)定不閃爍等優(yōu)勢(shì),可視面積大,畫(huà)面效果好,分辨率高,抗干擾能力強(qiáng)的特點(diǎn)。但由于液晶是以點(diǎn)陣的模式顯示各種符號(hào),需要利用控制芯片創(chuàng)建字符庫(kù),
16、編程工作量大,控制器的資源占用較多,其成本也偏高。在使用時(shí),不能有靜電干擾,否則易燒壞液晶的顯示芯片,不易維護(hù)。</p><p> 方案二:使用傳統(tǒng)的LED數(shù)碼管顯示</p><p> 數(shù)碼管具有:低能耗、低損耗、低壓、壽命長(zhǎng)、耐老化、防曬、防潮、防火、防高(低)溫,對(duì)外界環(huán)境要求低,易于維護(hù),同時(shí)其精度比較高,稱重輕,精度可靠,操作簡(jiǎn)單。數(shù)碼管采用BCD編碼顯示數(shù)字,程序編譯容易,資
17、源占用較少。根據(jù)以上的論述,采用方案二。我們采用八段四位一體數(shù)碼管動(dòng)態(tài)顯示,由于顯示位數(shù)較多,故應(yīng)使用顯示驅(qū)動(dòng),在本設(shè)計(jì)中采用三極管來(lái)作為驅(qū)動(dòng)。</p><p><b> 4.按鍵模塊</b></p><p> 方案一:使用獨(dú)立式鍵盤(pán)</p><p> 獨(dú)立式鍵盤(pán)是指直接用I/O口線構(gòu)成的單個(gè)按鍵電路。獨(dú)立式按鍵電路配置靈活,軟件結(jié)構(gòu)簡(jiǎn)單
18、。</p><p> 方案二:使用矩陣式鍵盤(pán)</p><p> 矩陣式鍵盤(pán)是由行線和列線組成,按鍵位于行、列交叉點(diǎn)上,行線、列線分別連接到按鍵開(kāi)關(guān)的兩端。其特點(diǎn)是簡(jiǎn)單且不增加成本,這種鍵盤(pán)適合按鍵數(shù)目較多的場(chǎng)合。</p><p> 根據(jù)以上的論述,所以采用方案二。</p><p><b> 三、單元電路設(shè)計(jì)</b>
19、;</p><p><b> 1.單片機(jī)系統(tǒng)介紹</b></p><p> AT89S52是一種低功耗高性能CHMOS 8位單片機(jī),管腳如圖所示。</p><p> 片內(nèi)含4Kbytes ISP的可反復(fù)擦寫(xiě)1000次Flash只讀程序存儲(chǔ)器,128bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM)。其特點(diǎn)如下:</p><p&g
20、t; -兼容MCS-51指令系統(tǒng);</p><p> -最大的工作頻率為33MHz;</p><p> -具有雙工UART串行通道;</p><p> -內(nèi)部集成看門狗計(jì)時(shí)器,不需要再外接看門狗計(jì)時(shí)器單元電路;</p><p><b> -雙數(shù)據(jù)指示器;</b></p><p> -支
21、持ISP(在線更新程序)功能,其優(yōu)勢(shì)在于改寫(xiě)單片機(jī)存儲(chǔ)器內(nèi)的程序不需要把芯從工作環(huán)境中剝離;</p><p><b> -電源關(guān)閉標(biāo)識(shí);</b></p><p> -全新的加密算法,使程序的保密性大大加強(qiáng);</p><p> -電壓范圍寬達(dá)4-5.5V,而89C52在低于4.8V或高于5.3V則無(wú)法工作;</p><p
22、> -燒寫(xiě)壽命長(zhǎng),其標(biāo)稱為1000次,實(shí)際至少是1000-10000次,這樣有利于初學(xué)者反復(fù)燒寫(xiě),減低學(xué)習(xí)成本;AT89S52 是一種低功耗、高性能的CMOS 8位單片機(jī)。它帶有8K Flash 可編程和擦除的只讀存儲(chǔ)器(EPROM),該器件采用ATMEL的高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)上標(biāo)準(zhǔn)的80C51和82C52的指令系統(tǒng)及引腳兼容,片內(nèi)Flash 集成在一個(gè)芯片上,可用與解決復(fù)雜的問(wèn)題,且成本較低。</p>
23、;<p> AT89S52提供了8K字節(jié)Flash ,256字節(jié)RAM,32線I/O口,3個(gè)16位定時(shí)器/計(jì)數(shù)器,6向量?jī)蓸O中斷,一個(gè)雙工串行口,片內(nèi)根據(jù)振蕩器和始終電路等標(biāo)準(zhǔn)功能。此外,AT89S52設(shè)有靜態(tài)邏輯,并支持軟件選擇的兩種節(jié)電運(yùn)行方式、空閑方式使CPU停止工作,而允許RAM、定時(shí)器/計(jì)數(shù)器、串行口和中斷系統(tǒng)繼續(xù)工作。掉電方式下,片內(nèi)振蕩器停止工作,由于之中被凍結(jié),一切能都停止,只有片內(nèi)RAM的內(nèi)容被保存,直
24、到硬件復(fù)位才恢復(fù)正常工作。</p><p> AT89S52結(jié)構(gòu)框圖:</p><p><b> 數(shù)碼管電路介紹</b></p><p> 由于七段數(shù)碼顯示器在顯示字形代碼時(shí)需要有足夠的功率,單片機(jī)口線的驅(qū)動(dòng)能力明顯不夠,所以需在顯示器前加顯示驅(qū)動(dòng)器,以提高其輸出功率,滿足顯示器的需求。在本設(shè)計(jì)中,我采用三極管作為顯示電路的8路正向驅(qū)動(dòng)器
25、。</p><p> LED顯示器俗稱數(shù)碼管,在其內(nèi)部是由8個(gè)發(fā)光二極管加限流電阻組成,其連接方式有共陰和共陽(yáng)兩種,在共陰極接法中,因公共端接地,只要給某一段加高電平,該段就會(huì)亮。而在本設(shè)計(jì)中采用的是共陽(yáng)極接法,公共端接+5V電源,在某一段上加低電平,該段就會(huì)亮。</p><p> 在本次設(shè)計(jì)中,為了使硬件電路更簡(jiǎn)單化,我采用四位一體的LED數(shù)碼管,顯示原理與單個(gè)LED的顯示原理完全相
26、同。但在它的內(nèi)部把四個(gè)數(shù)碼管的段控端對(duì)應(yīng)的連在了一起與單個(gè)的數(shù)碼管相比其外部電路連接更加簡(jiǎn)單,故它只有8個(gè)段控端和4個(gè)位控端,4個(gè)位控端分別對(duì)四個(gè)數(shù)碼管進(jìn)行控制。</p><p><b> 3.按鍵模塊</b></p><p> 在單片機(jī)控制電路中,可把單片機(jī)使用的鍵盤(pán)分為獨(dú)立式和矩陣式兩種。獨(dú)立式實(shí)際上就是一組獨(dú)立的按鍵,這些按鍵可直接與單片機(jī)的I/O口連接,即
27、每個(gè)按鍵獨(dú)占一條口線,這種接法簡(jiǎn)單。矩陣式鍵盤(pán)也稱行列式鍵盤(pán),因?yàn)殒I的數(shù)目較多,所以鍵按行列組成矩陣。本設(shè)計(jì)中鍵盤(pán)數(shù)目較少,且為安裝方便,因此在本設(shè)計(jì)中采用獨(dú)立式接法。如圖所示。</p><p><b> 控制電路</b></p><p> 按從一個(gè)鍵到鍵的功能被執(zhí)行主要應(yīng)包括兩項(xiàng)工作:一是鍵的識(shí)別,即在鍵盤(pán)中找出被按的是哪個(gè)鍵,另一項(xiàng)是鍵功能的實(shí)現(xiàn)。第一項(xiàng)工作是
28、使用接口電路實(shí)現(xiàn)的,而第二項(xiàng)工作則是通過(guò)執(zhí)行中斷服務(wù)程序來(lái)完成。</p><p> 四、程序總體思路和分析</p><p> 1.程序總體思路和分析</p><p><b> 主函數(shù)的流程圖:</b></p><p><b> 程序清單</b></p><p> #
29、include <reg52.h></p><p> #include <intrins.h></p><p> unsigned int time=0;</p><p> unsigned char num=0;</p><p> unsigned char key=0;</p><p&g
30、t; unsigned char time_key=0;</p><p> /*********************************/</p><p> unsigned int year=1; //年</p><p> unsigned char yue=1; //月</p><p> unsigned char
31、day=1; //日</p><p> unsigned char week=1;</p><p> /*********************************/</p><p> unsigned char LED=0;</p><p> unsigned char flag_led=0;</p><
32、p> unsigned char strl_led[] = {0,0,0,0,0,0,0,0};</p><p> unsigned char day_add;</p><p> unsigned char SURE;</p><p> /*********************************/</p><p>
33、unsigned char code str[] = {</p><p> 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff</p><p><b> };</b></p><p> unsigned char su[] = {</p><p> 10,
34、10,10,10,10,10,10,10</p><p><b> };</b></p><p> void delay_SMG(unsigned char t)</p><p><b> {</b></p><p> unsigned char d;</p><p>
35、; for(;t>0;t--)</p><p> for(d=0;d<50;d++);</p><p><b> }</b></p><p> /*********************************/</p><p> /*************DIS_LED************
36、*/</p><p> void DIS_play()</p><p><b> {</b></p><p> unsigned char k; </p><p> unsigned char dis;</p><p> dis = 0x01;</p><
37、p> for(k=0;k<8;k++)</p><p><b> {</b></p><p><b> P0 = dis;</b></p><p> P2 |= 0xc0;</p><p> P2 &= 0x1f;</p><p> if(k=
38、=2 || k==4 || k==6)P0 = str[su[k]] & 0x7f;</p><p> else P0 = str[su[k]]; </p><p> P2 |= 0xe0;</p><p> P2 &= 0x1f;</p><p> dis = dis << 1;</p>
39、<p> delay_SMG(4);</p><p> P0 = 0xff;</p><p> P2 |= 0xe0;</p><p> P2 &= 0x1f;</p><p><b> }</b></p><p><b> }</b><
40、;/p><p> void init_all()</p><p><b> {</b></p><p> P0 = 0x00;</p><p> P2 = 0xa0;</p><p> P2 = 0x00;</p><p> P0 = 0x00;</p>
41、<p> P2 = 0xa0;</p><p> P2 = 0x00;</p><p> P0 = 0xff;</p><p> P2 = 0x80;</p><p> P2 = 0x00;</p><p> P0 = 0x00;</p><p> P2 = 0xc0
42、;</p><p> P2 = 0x00;</p><p><b> }</b></p><p> void DIS_led()</p><p><b> {</b></p><p> if(LED == 1)</p><p><b&g
43、t; {</b></p><p> P0 = 0xfe;</p><p> P2 = 0x80;</p><p> P2 = 0x00;</p><p><b> }</b></p><p> else if(LED == 2)</p><p>&l
44、t;b> {</b></p><p> P0 = 0xfd;</p><p> P2 = 0x80;</p><p> P2 = 0x00;</p><p><b> }</b></p><p> else if(LED == 3)</p><p&
45、gt;<b> {</b></p><p> P0 = 0xfb;</p><p> P2 = 0x80;</p><p> P2 = 0x00;</p><p><b> }</b></p><p> else if(LED == 4)</p>&
46、lt;p><b> {</b></p><p> P0 = 0xf7;</p><p> P2 = 0x80;</p><p> P2 = 0x00;</p><p><b> }</b></p><p> else if(LED == 5)</p&g
47、t;<p><b> {</b></p><p> P0 = 0xef;</p><p> P2 = 0x80;</p><p> P2 = 0x00;</p><p><b> }</b></p><p> else if(LED == 0)<
48、;/p><p><b> {</b></p><p> P0 = 0xff;</p><p> P2 = 0x80;</p><p> P2 = 0x00;</p><p><b> }</b></p><p><b> }</
49、b></p><p> //*******************************</p><p> //*******************************</p><p> void IN_key()</p><p><b> {</b></p><p> u
50、nsigned char hang,lei;</p><p> unsigned char zong;</p><p> P3 = 0x0f;</p><p> if(P3 != 0x0f)</p><p><b> {</b></p><p> time_key++;</p>
51、;<p> if(time_key == 50)</p><p><b> {</b></p><p> if(P3 != 0x0f)</p><p><b> {</b></p><p> hang = P3 & 0x0f;</p><p>
52、 P3 = 0xf0;</p><p> lei = P3 & 0xf0;</p><p> zong = hang | lei;</p><p> switch (zong)</p><p><b> {</b></p><p> case 0x7e:key = 1;
53、//模式選擇按鍵</p><p> flag_led ++;</p><p> if(flag_led > 6) flag_led = 0;</p><p><b> break;</b></p><p> case 0xbe:key = 2;</p><p> if(flag_
54、led == 0) SURE = 3;</p><p> if(flag_led != 0)</p><p><b> {</b></p><p> SURE++; //確定按鍵 </p><p> if(SURE > 1)SURE = 0;</p>&
55、lt;p><b> } </b></p><p><b> break;</b></p><p> case 0xde:key = 3;</p><p> if(flag_led > 0) //按下模式選擇鍵</p><p><b> {</b>
56、;</p><p> day_add++;</p><p> if(yue==1 || yue==3 || yue==5 || yue== 7 || yue==8 || yue== 10 || yue==12)</p><p><b> {</b></p><p> if(day_add > 31)day_
57、add = 31;</p><p><b> }</b></p><p> if(yue==4 || yue==6 || yue==9 || yue== 11)</p><p><b> {</b></p><p> if(day_add > 30)day_add = 30;</
58、p><p><b> }</b></p><p> if(yue==2)</p><p><b> {</b></p><p> if((year%4 ==0 && year%100 !=0) || (year%400 ==0) )</p><p><
59、;b> {</b></p><p> if(day_add > 28)day_add = 28;</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p>&l
60、t;p> if(day_add > 29)day_add = 29;</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> break;</b>&l
61、t;/p><p> case 0xee:key = 4;</p><p> if(flag_led > 0) //按下模式選擇鍵</p><p><b> {</b></p><p> if(day_add > 0)</p><p> day_add--;</
62、p><p><b> }</b></p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></
63、p><p> else if(time_key > 50)time_key = 100;</p><p><b> } </b></p><p> else time_key = 0;</p><p><b> }</b></p><p> void main()
64、</p><p><b> {</b></p><p> TMOD = 0x01;</p><p> TH0 = (65536 - 1000) / 256;</p><p> TL0 = (65536 - 1000) % 256;</p><p><b> EA = 1;<
65、;/b></p><p><b> ET0 = 1;</b></p><p><b> TR0 = 1;</b></p><p> init_all();</p><p><b> while(1)</b></p><p><b>
66、; {</b></p><p> DIS_play();</p><p> DIS_led();</p><p><b> }</b></p><p><b> }</b></p><p> void time_1() interrupt 1</
67、p><p><b> {</b></p><p> TH0 = (65536 - 1000) / 256;</p><p> TL0 = (65536 - 1000) % 256;</p><p><b> time++;</b></p><p> if(time ==
68、 2000)</p><p><b> {</b></p><p><b> time = 0;</b></p><p><b> week++;</b></p><p> if(week == 8) week=1;</p><p> day+
69、+; </p><p> if(yue==1 || yue==3 || yue==5 || yue== 7 || yue==8 || yue== 10 || yue==12)</p><p><b> {</b></p><p> if(day == 32) </p><p><b&
70、gt; {</b></p><p><b> day = 1;</b></p><p><b> yue++;</b></p><p><b> }</b></p><p><b> }</b></p><p>
71、; if(yue == 2)</p><p><b> {</b></p><p> if((year%4 ==0 && year%100 !=0) || (year%400 ==0) )</p><p><b> {</b></p><p> if(day == 30)&
72、lt;/p><p><b> {</b></p><p><b> day = 1;</b></p><p><b> yue++;</b></p><p><b> }</b></p><p><b> }<
73、/b></p><p><b> else</b></p><p><b> {</b></p><p> if(day == 29)</p><p><b> {</b></p><p><b> day = 1;</b
74、></p><p><b> yue++;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> if(yue==4 || yue
75、==6 || yue==9 || yue== 11)</p><p><b> {</b></p><p> if(day == 31)</p><p><b> {</b></p><p><b> day = 1;</b></p><p>&
76、lt;b> yue++;</b></p><p><b> }</b></p><p><b> }</b></p><p> if(yue == 13)</p><p><b> {</b></p><p><b>
77、; yue = 1;</b></p><p><b> day = 1;</b></p><p><b> year++;</b></p><p><b> }</b></p><p><b> }</b></p>&l
78、t;p><b> IN_key();</b></p><p> if(SURE == 1) //按下確認(rèn)鍵確認(rèn)日期</p><p><b> {</b></p><p> if(flag_led > 0)</p><p><b> {</b></
79、p><p> strl_led[flag_led] = day_add;</p><p> flag_led = 0;</p><p><b> SURE = 0;</b></p><p> day_add = 0;</p><p><b> }</b></p&g
80、t;<p><b> }</b></p><p> if(strl_led[1] == day)</p><p><b> { </b></p><p> if(SURE == 3) LED = 0; //按下關(guān)斷鍵</p><p> else LED = 1;&l
81、t;/p><p><b> }</b></p><p> else if(strl_led[2] == day)</p><p><b> {</b></p><p> if(SURE == 3) LED = 0; //按下關(guān)斷鍵</p><p> else LED
82、= 2;</p><p><b> }</b></p><p> else if(strl_led[3] == day)</p><p><b> { </b></p><p> if(SURE == 3) LED = 0; //按下關(guān)斷鍵</p><p>
83、 else LED = 3;</p><p><b> }</b></p><p> else if(strl_led[4] == day)</p><p><b> { </b></p><p> if(SURE == 3) LED = 0; //按下關(guān)斷鍵</p>
84、<p> else LED = 4;</p><p><b> }</b></p><p> else if(strl_led[5] == day)</p><p><b> {</b></p><p> if(SURE == 3) LED = 0; //按下關(guān)斷鍵</p
85、><p> else LED = 5;</p><p><b> }</b></p><p> else if(strl_led[6] == day)</p><p><b> {</b></p><p> if(SURE == 3) LED = 0; //按下關(guān)斷鍵
86、</p><p> else LED = 6;</p><p><b> }</b></p><p><b> else </b></p><p><b> { </b></p><p><b> LED = 0;</b>
87、</p><p><b> SURE = 0;</b></p><p><b> }</b></p><p> if(LED != 6)</p><p><b> {</b></p><p> su[1] = year / 10 % 10;&l
88、t;/p><p> su[2] = year % 10;</p><p> su[3] = yue / 10;</p><p> su[4] = yue % 10;</p><p> su[5] = day / 10;</p><p> su[6] = day % 10;</p><p>
89、 su[7] = week % 10;</p><p><b> }</b></p><p> else if(LED == 6) {su[0] = su[1] = su[2] = su[3] = su[4] = su[5] = su[6] = su[7] = 10;}</p><p><b> }</b><
90、/p><p><b> 五、結(jié)論與心得</b></p><p> 隨著放假日子的到來(lái),我的課程設(shè)計(jì)終于完成了,課程設(shè)計(jì)不僅是對(duì)前面所學(xué)知識(shí)的一種檢驗(yàn),而且也是對(duì)自己能力的一種提高。通過(guò)這次課程設(shè)計(jì)使我明白了自己原來(lái)知識(shí)還比較欠缺。自己要學(xué)習(xí)的東西還太多,以前老是覺(jué)得自己什么東西都會(huì),什么東西都懂,有點(diǎn)眼高手低。通過(guò)這次畢業(yè)設(shè)計(jì),我們才明白學(xué)習(xí)是一個(gè)長(zhǎng)期積累的過(guò)程,在以
91、后的工作、生活中都應(yīng)該不斷的學(xué)習(xí),努力提高自己知識(shí)和綜合素質(zhì)。</p><p> 感謝我的老師*老師,讓我系統(tǒng)學(xué)習(xí)了有關(guān)單片機(jī)知識(shí)。他嚴(yán)謹(jǐn)細(xì)致、一絲不茍的作風(fēng)一直是我工作、學(xué)習(xí)中的榜樣;他循循善誘的教導(dǎo)和不拘一格的思路給予我無(wú)盡的啟迪。 從項(xiàng)目的開(kāi)始到完成,*老師都始終給予我細(xì)心的指導(dǎo)和不懈的支持。一年以來(lái),廖老師不僅在學(xué)業(yè)上給我以精心指導(dǎo),同時(shí)還在思想、生活上給我以無(wú)微不至的關(guān)懷。在此真誠(chéng)的感謝*老
92、師,并致以誠(chéng)摯的謝意和崇高的敬意。</p><p> 在這次課程設(shè)計(jì)中也使我們的同學(xué)關(guān)系更進(jìn)一步了,同學(xué)之間互相幫助,有什么不懂的大家在一起商量,聽(tīng)聽(tīng)不同的看法對(duì)我們更好的理解知識(shí),所以在這里非常感謝幫助我的同學(xué)。</p><p><b> 六、參考文獻(xiàn)</b></p><p> [1] 李光飛.單片機(jī)課程設(shè)計(jì)實(shí)例指導(dǎo)[M].北京:北京航
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)智能儀器課程設(shè)計(jì)報(bào)告
- 基于c語(yǔ)言單片機(jī)電子時(shí)鐘課程設(shè)計(jì)
- 單片機(jī)智能藍(lán)牙小車課程設(shè)計(jì)
- 單片機(jī)c語(yǔ)言課程設(shè)計(jì)--基于單片機(jī)的電子鐘設(shè)計(jì)
- 單片機(jī)智能搶答器課程設(shè)計(jì)
- 單片機(jī)智能體溫計(jì)課程設(shè)計(jì)
- 單片機(jī)智能溫控器課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--電子日歷的制作
- 單片機(jī)c語(yǔ)言課程設(shè)計(jì)---基于單片機(jī)的新型電子鎖設(shè)計(jì)
- 基于c語(yǔ)言單片機(jī)秒表課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)報(bào)告--基于stc89c52單片機(jī)的電子時(shí)鐘(日歷)
- 綜合課程設(shè)計(jì)--基于51單片機(jī)智能家庭小管家
- 單片機(jī)課程設(shè)計(jì)報(bào)告-日歷
- 單片機(jī)秒表課程設(shè)計(jì)(c語(yǔ)言)
- 單片機(jī)課程設(shè)計(jì)(可調(diào)式中文電子日歷)
- 單片機(jī)課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告(時(shí)鐘、日歷)-基于單片機(jī)的電子鐘設(shè)計(jì)
- c語(yǔ)言日歷顯示課程設(shè)計(jì)報(bào)告
- 基于51單片機(jī)智能小車設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---智能電子鐘
- 單片機(jī)課程設(shè)計(jì)--電子日歷時(shí)鐘顯示器設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論