2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩26頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  物理與機(jī)電工程學(xué)院課程設(shè)計(jì)報(bào)告</p><p>  課程名稱: 單片機(jī)課程設(shè)計(jì) </p><p>  系 部: 物理與機(jī)電工程學(xué)院 </p><p>  專業(yè)班級(jí): 電子信息工程 </p><p>  學(xué)生姓名: </p><p>

2、  指導(dǎo)教師: </p><p>  完成時(shí)間: 2012-3-16 </p><p>  報(bào)告成績(jī): </p><p><b>  一、設(shè)計(jì)任務(wù)與要求</b></p><p><b>  二、方案設(shè)計(jì)與論證</b>

3、;</p><p><b>  三、硬件電路設(shè)計(jì)</b></p><p><b>  四、軟件設(shè)計(jì)</b></p><p>  五、仿真過程與仿真結(jié)果</p><p><b>  六、安裝與調(diào)試</b></p><p><b>  七、結(jié)論與心

4、得</b></p><p><b>  八、參考文獻(xiàn)</b></p><p>  《單片機(jī)原理》課程設(shè)計(jì)報(bào)告</p><p><b>  一、設(shè)計(jì)任務(wù)與要求</b></p><p><b>  1、設(shè)計(jì)基本要求。</b></p><p>&l

5、t;b>  設(shè)計(jì)一個(gè)電子鐘:</b></p><p>  (1)具有小時(shí)分秒時(shí)間顯示。</p><p>  (2)能夠設(shè)置鬧鐘至少5次鬧鐘時(shí)間。</p><p> ?。?)可利用按鍵修改時(shí)間,具有上午下午的提示信息。</p><p>  2、。通過課程設(shè)計(jì)的教學(xué)實(shí)踐,進(jìn)一步學(xué)習(xí)、掌握單片機(jī)應(yīng)用系統(tǒng)的有關(guān)知識(shí),加深了解單片機(jī)的

6、工作原理。初步掌握簡(jiǎn)單單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)、制作、調(diào)試的方法。提高動(dòng)手實(shí)踐能力、提高科學(xué)的思維能力。</p><p><b>  二、方案設(shè)計(jì)與論證</b></p><p><b>  1 電子時(shí)鐘</b></p><p>  1.1 電子時(shí)鐘簡(jiǎn)介

7、 </p><p>  1957年,Ventura發(fā)明了世界上第一個(gè)電子表,從而奠定了電子時(shí)鐘的基礎(chǔ),電子時(shí)鐘開始迅速發(fā)展起來?,F(xiàn)代的電子時(shí)鐘是基于單片機(jī)的一種計(jì)時(shí)工具,采用延時(shí)程序產(chǎn)生一定的時(shí)間中斷,用于一秒的定義,通過計(jì)數(shù)方式進(jìn)行滿六十秒分鐘進(jìn)一,滿六十分小時(shí)進(jìn)一,滿二十四小時(shí)小時(shí)清零。從而達(dá)到計(jì)時(shí)的功能,是人民日常生活補(bǔ)課缺少的工具。</p><p>  1.2 電子時(shí)鐘的基本

8、特點(diǎn) </p><p>  現(xiàn)在高精度的計(jì)時(shí)工具大多數(shù)都使用了石英晶體振蕩器,走時(shí)精度高,穩(wěn)定性好,使用方便,不需要經(jīng)常調(diào)試,數(shù)字式電子鐘用集成電路計(jì)時(shí)時(shí),譯碼代替機(jī)械式傳動(dòng),用LED顯示器代替指針顯示進(jìn)而顯示時(shí)間,減小了計(jì)時(shí)誤差,這種表具有時(shí)、分、秒顯示時(shí)間的功能,還可以進(jìn)行時(shí)和分的校對(duì),片選的靈活性好。</p>&l

9、t;p>  1.3 電子時(shí)鐘的原理 </p><p>  該電子時(shí)鐘由89C51,BUTTON,六段數(shù)碼管等構(gòu)成,采用晶振電路作為驅(qū)動(dòng)電路,由延時(shí)程序和循環(huán)程序產(chǎn)生的一秒定時(shí),達(dá)到時(shí)分秒的計(jì)時(shí),六十秒為一分鐘,六十分鐘為一小時(shí),滿二十四小時(shí)為一天。而電路中兩個(gè)控制鍵功能直接按下不松開,則可以通過按鍵實(shí)現(xiàn)分鐘的累加,每按一次分鐘加一;而另一按鍵按下又

10、放松,則可實(shí)現(xiàn)小時(shí)的調(diào)節(jié),同樣每按一次小時(shí)加一。</p><p>  2 單片機(jī)識(shí)的相關(guān)知識(shí)</p><p>  2.1 單片機(jī)簡(jiǎn)介 </p><p>  單片機(jī)全稱為單片機(jī)微型計(jì)算機(jī)(Single Chip Microsoftcomputer)。從應(yīng)用領(lǐng)域來看,單片機(jī)主要用來控制,所以又稱為微控制器(Microcontroller Unit)或嵌入式

11、控制器。單片機(jī)是將計(jì)算機(jī)的基本部件微型化并集成在一塊芯片上的微型計(jì)算機(jī)。</p><p>  2.2 89C51單片機(jī)介紹 </p><p><b>  VCC:供電電壓。</b></p><p><b>  GND:接地。</b>

12、</p><p>  P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。</p><p>  P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P

13、1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 </p><p>  P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉

14、低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。</p><p>  P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入

15、“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。</p><p>  P3口也可作為AT89C51的一些特殊功能口,如下表所示:</p><p><b>  口管腳 備選功能</b></p><p>  P3.0 RXD(串行輸入口)</p><p&

16、gt;  P3.1 TXD(串行輸出口)</p><p>  P3.2 /INT0(外部中斷0)</p><p>  P3.3 /INT1(外部中斷1)</p><p>  P3.4 T0(記時(shí)器0外部輸入)</p><p>  P3.5 T1(記時(shí)器1外部輸入)</p><p>  P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫

17、選通)</p><p>  P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)</p><p>  P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。</p><p>  RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。</p><p>  ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。

18、在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。</p>&

19、lt;p>  /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。</p><p>  /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FL

20、ASH編程期間,此引腳也用于施加12V編程電源(VPP)。</p><p>  XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。</p><p>  XTAL2:來自反向振蕩器的輸出。</p><p>  3 控制系統(tǒng)的軟件設(shè)計(jì)</p><p>  3.1 單片機(jī)型號(hào)的選擇

21、 </p><p>  通過對(duì)多種單片機(jī)性能的分析,最終認(rèn)為89C51是最理想的電子時(shí)鐘開發(fā)芯片。89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的低電壓,高性能器件,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,89C51是一種高效微控制器,而且它與MCS-51兼容,且具有4K字節(jié)可編

22、程閃爍存儲(chǔ)器和1000寫/擦循。</p><p>  3.2 數(shù)碼管顯示工作原理</p><p>  數(shù)碼管是一種把多個(gè)LED顯示段集成在一起的顯示設(shè)備。有兩種類型,一種是共陽(yáng)型,一種是共陰型。共陽(yáng)型就是把多個(gè)LED顯示段的陽(yáng)極接在一起,又稱為公共端。共陰型就是把多個(gè)LED顯示段的陰極接在一起,即為公共商。通常的數(shù)碼管又分為8段,即8個(gè)LED顯示段,分別為A、B、C、D、E、F、G、DP

23、,其中DP 是小數(shù)點(diǎn)位段。而多位數(shù)碼管,除某一位的公共端會(huì)連接在一起,不同位的數(shù)碼管的相同端也會(huì)連接在一起。即,所有的A段都會(huì)連在一起,其它的段也是如此,這是實(shí)際最常用的用法。數(shù)碼管顯示方法可分為靜態(tài)顯示和動(dòng)態(tài)顯示兩種。靜態(tài)顯示就是數(shù)碼管的8段輸入及其公共端電平一直有效。動(dòng)態(tài)顯示的原理是,各個(gè)數(shù)碼管的相同段連接在一起,共同占用8 位段引管線;每位數(shù)碼管的陽(yáng)極連在一起組成公共端。利用人眼的視覺暫留性,依次給出各個(gè)數(shù)碼管公共端加有效信號(hào),在

24、此同時(shí)給出該數(shù)碼管加有效的數(shù)據(jù)信號(hào),當(dāng)全段掃描速度大于視覺暫留速度時(shí),顯示就會(huì)清晰顯示出來。</p><p>  3.3 鍵盤電路設(shè)計(jì) </p><p>  該設(shè)計(jì)只用了兩個(gè)鍵盤,但實(shí)現(xiàn)的功能卻是比較完善,減少了硬件資源的損耗,該鍵可以實(shí)現(xiàn)小時(shí)和分鐘的調(diào)節(jié)。當(dāng)按鍵按下又松開,則可以通過按鍵實(shí)現(xiàn)分鐘

25、的累加,每按一次分鐘加一;另一個(gè)按鍵則可實(shí)現(xiàn)小時(shí)的調(diào)節(jié),同樣每按一次小時(shí)加一。達(dá)到時(shí)間調(diào)節(jié)的目的。</p><p><b>  三、硬件電路設(shè)計(jì)</b></p><p><b>  引腳功能說明</b></p><p>  89C51外部引腳圖:(可以直接拷入ASM程序文件中,作注釋使用,十分方便); 

26、60;                          ┏━┓┏━┓;         

27、;    P1.0        ┫1 ┗┛40┣        Vcc ;             P1.1   &

28、#160;    ┫2       39┣        P0.0    ;             P1.

29、2        ┫3       38┣        P0.1    ;          &

30、#160;  P1.3        ┫4       37┣        P0.2    ;       

31、;      P1.4        ┫5       36┣        P0.3    ;    &#

32、160;        P1.5        ┫6       35┣        P0.4    ;  

33、;           P1.6        ┫7       34┣        P0.5   

34、0;;             P1.7        ┫8       33┣        P</p>

35、<p>  89c51引腳圖管腳圖</p><p>  引腳說明:        ①電源引腳          Vcc(40腳):典型值+5V。       

36、0;  Vss(20腳):接低電平。        ②外部晶振          X1、X2分別與晶體兩端相連接。當(dāng)采用外部時(shí)鐘信號(hào)時(shí),X2接振蕩信號(hào),X1接地。        ③輸入輸出口引

37、腳:          P0口:I/O雙向口。作輸入口時(shí),應(yīng)先軟件置“ 1”。          P1口:I/O雙向口。作輸入口時(shí),應(yīng)先軟件置“ 1”。        

38、60; P2口:I/O雙向口。作輸入口時(shí),應(yīng)先軟件置“ 1”。          P3口:I/O雙向口。作輸入口時(shí),應(yīng)先軟件置“ 1”。            ④控制引腳:     

39、     RST/Vpd、ALE/-PROG、-PSEN、-EA/Vpp組成了MSC-51的控制總線。          RST/Vpd(9腳):復(fù)位信號(hào)輸入端(高電平有效)。          第二功能:加+5V

40、備用電源,可以實(shí)現(xiàn)掉電保護(hù)RAM信息不丟失。          ALE/-PROG(30腳):地址鎖存信號(hào)輸出</p><p><b>  原理圖:</b></p><p><b>  四、軟件設(shè)計(jì)</b></p><p>  程

41、序: #include<reg52.h></p><p>  #define uchar unsigned char</p><p>  #define uint unsigned int</p><p>  uchar code table[]={"Clock by Sang S J"};</p><p>

42、;  uchar code table1[]={" 00:00:00 "};</p><p>  uchar code table2[]={" Alarm Clock_1 "};</p><p>  uchar code table3[]={" Alarm On "};</p><p>  u

43、char code table4[]={" Alarm Off "};</p><p>  uchar code table0[]={" "};</p><p>  sbit dula=P2^6; //定義鎖存器鎖存端</p><p>  sbit wela=P2^7;</p><p>  sbi

44、t lcden=P1^0;</p><p>  sbit rs=P1^1;</p><p>  uchar a,shi,fen,miao,ww,aa,bb,s3num,s4num,num,yy;</p><p>  sbit s1=P2^0;</p><p>  sbit s2=P2^1;</p><p>  sbit

45、 s3=P2^2;</p><p>  sbit s4=P2^3;</p><p>  sbit s5=P2^4;</p><p>  sbit beep=P2^5;</p><p>  void delay(uint z) //延時(shí)函數(shù) 毫秒</p><p><b>  {</b><

46、/p><p><b>  uint x,y;</b></p><p>  for(x=z;x>0;x--)</p><p>  for(y=110;y>0;y--);</p><p><b>  }</b></p><p>  void write_com(uchar

47、 com) //寫指令函數(shù)</p><p><b>  {</b></p><p><b>  rs=0;</b></p><p><b>  P0=com;</b></p><p><b>  delay(5);</b></p><

48、;p><b>  lcden=1;</b></p><p><b>  delay(5);</b></p><p><b>  lcden=0;</b></p><p><b>  }</b></p><p>  void write_date(uc

49、har date)//寫數(shù)據(jù)函數(shù)</p><p><b>  {</b></p><p><b>  rs=1;</b></p><p><b>  P0=date;</b></p><p><b>  delay(5);</b></p>

50、<p><b>  lcden=1;</b></p><p><b>  delay(5);</b></p><p><b>  lcden=0;</b></p><p><b>  }</b></p><p>  void write_sfm

51、(uchar add,uchar date) //時(shí)分秒的地址+數(shù)據(jù)函數(shù)</p><p><b>  {</b></p><p>  uchar shi,ge;</p><p>  shi=date/10;</p><p>  ge=date%10;</p><p>  write_com(0

52、x80+0x40+add);</p><p>  delay(10);</p><p>  write_date(0x30+shi);</p><p>  delay(10);</p><p>  write_date(0x30+ge);</p><p>  delay(10);</p><p>

53、;<b>  }</b></p><p>  void write_sfm1(uchar add,uchar date) //時(shí)分秒的地址+數(shù)據(jù)函數(shù)</p><p><b>  {</b></p><p>  uchar shi,ge;</p><p>  shi=date/10;</p&

54、gt;<p>  ge=date%10;</p><p>  write_com(0x80+add);</p><p>  delay(10);</p><p>  write_date(0x30+shi);</p><p>  delay(10);</p><p>  write_date(0x30+g

55、e);</p><p>  delay(10);</p><p><b>  }</b></p><p>  void init() //初始化函數(shù)</p><p><b>  {</b></p><p>  dula=0;//關(guān)閉兩鎖存器鎖存端,防止操作液晶時(shí)數(shù)碼管會(huì)

56、出亂碼</p><p><b>  wela=0;</b></p><p><b>  lcden=0;</b></p><p>  write_com(0x38); //顯示模式設(shè)置</p><p>  write_com(0x0c); //開顯示 </p><p

57、>  write_com(0x06); //光標(biāo)設(shè)置</p><p>  write_com(0x01); //顯示清屏</p><p>  write_com(0x80); //光標(biāo)初始地址</p><p>  for(num=0;num<16;num++)</p><p><b>  {</b

58、></p><p>  write_date(table[num]);</p><p>  delay(10);</p><p><b>  }</b></p><p>  write_com(0x80+0x40);</p><p>  for(num=0;num<16;num++)&

59、lt;/p><p><b>  {</b></p><p>  write_date(table1[num]);</p><p>  delay(10);</p><p><b>  }</b></p><p>  TMOD=0x01; //設(shè)置定

60、時(shí)器0為工作方式1</p><p>  TH0=(65536-50000)/256; //裝初值,定時(shí)50ms</p><p>  TL0=(65536-50000)%256;</p><p><b>  EA=1;</b></p><p><b>  ET0=1;</b></p>

61、<p><b>  TR0=1;</b></p><p><b>  }</b></p><p>  void keyscan() //鍵盤函數(shù)</p><p><b>  {</b></p><p>  uchar s1num;</p>

62、<p><b>  if(s1==0)</b></p><p><b>  {</b></p><p><b>  delay(5);</b></p><p><b>  if(s1==0)</b></p><p><b>  {&l

63、t;/b></p><p><b>  s1num++;</b></p><p>  while(!s1);</p><p>  if(s1num==1) //光標(biāo)跳到秒位置閃爍</p><p><b>  {</b></p><p><b>  T

64、R0=0;</b></p><p>  write_com(0x80+0x40+10);</p><p>  write_com(0x0f);</p><p><b>  }</b></p><p>  if(s1num==2) //光標(biāo)跳到分位置閃爍</p><p>&l

65、t;b>  {</b></p><p>  write_com(0x80+0x40+7);</p><p>  write_com(0x0f);</p><p><b>  }</b></p><p>  if(s1num==3) //光標(biāo)跳到時(shí)位置閃爍</p><p&

66、gt;<b>  {</b></p><p>  write_com(0x80+0x40+4);</p><p>  write_com(0x0f);</p><p><b>  }</b></p><p>  if(s1num==4) //恢復(fù)時(shí)鐘</p><p>

67、;<b>  {</b></p><p><b>  TR0=1;</b></p><p>  write_com(0x0c); //開顯示 </p><p>  write_com(0x06); //光標(biāo)設(shè)置</p><p><b>  s1num=0;</b>

68、;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(s1num!=0)</p><p><b>  {</b></p>

69、<p>  if(s1num==1) //調(diào)整秒鐘</p><p><b>  {</b></p><p><b>  if(s2==0)</b></p><p><b>  {</b></p><p><b>  delay(5);</b

70、></p><p><b>  if(s2==0)</b></p><p><b>  {</b></p><p>  while(!s2);</p><p><b>  miao++;</b></p><p>  if(miao==60)<

71、/p><p><b>  miao=0;</b></p><p><b>  }</b></p><p>  write_sfm(10,miao);</p><p><b>  }</b></p><p><b>  }</b><

72、/p><p>  if(s1num==2)//調(diào)整分鐘</p><p><b>  {</b></p><p><b>  if(s2==0)</b></p><p><b>  {</b></p><p><b>  delay(5);&

73、lt;/b></p><p><b>  if(s2==0)</b></p><p><b>  {</b></p><p>  while(!s2);</p><p><b>  fen++;</b></p><p>  if(fen==60)&

74、lt;/p><p><b>  fen=0;</b></p><p><b>  }</b></p><p>  write_sfm(7,fen);</p><p><b>  }</b></p><p><b>  }</b><

75、/p><p>  if(s1num==3) //調(diào)整小時(shí)</p><p><b>  {</b></p><p><b>  if(s2==0)</b></p><p><b>  {</b></p><p><b>  delay(5);

76、</b></p><p><b>  if(s2==0)</b></p><p><b>  {</b></p><p>  while(!s2);</p><p><b>  shi++;</b></p><p>  if(shi==24)

77、</p><p><b>  shi=0;</b></p><p><b>  }</b></p><p>  write_sfm(4,shi);</p><p><b>  }</b></p><p><b>  }</b><

78、;/p><p><b>  }</b></p><p><b>  //鬧鐘</b></p><p><b>  if(s3==0)</b></p><p><b>  {</b></p><p>  delay(10);</p&

79、gt;<p><b>  if(s3==0)</b></p><p><b>  {</b></p><p><b>  s3num++;</b></p><p>  while(!s3);</p><p>  if(s3num==1)</p>&l

80、t;p><b>  {</b></p><p><b>  ww=1;</b></p><p>  write_com(0x01);</p><p>  write_com(0x80);</p><p>  for(num=0;num<16;num++)</p><p

81、><b>  {</b></p><p>  write_date(table1[num]);</p><p>  delay(10);</p><p><b>  }</b></p><p>  write_com(0x80+0x40); //光標(biāo)初始地址</p>&l

82、t;p>  for(num=0;num<16;num++)</p><p><b>  {</b></p><p>  write_date(table2[num]);</p><p>  delay(10);</p><p><b>  }</b></p><p&g

83、t;<b>  }</b></p><p>  if(s3num==2)</p><p><b>  {</b></p><p><b>  yy=1;</b></p><p><b>  ww=0;</b></p><p>  

84、write_com(0x01); </p><p>  write_com(0x80);</p><p>  for(num=0;num<16;num++)</p><p><b>  {</b></p><p>  write_date(table[num]);</p><p>  del

85、ay(10);</p><p><b>  }</b></p><p>  write_com(0x80+0x40);</p><p>  for(num=0;num<16;num++)</p><p><b>  { </b></p><p>  writ

86、e_date(table1[num]);</p><p>  delay(10);</p><p><b>  } </b></p><p>  write_sfm(4,shi);</p><p>  write_sfm(7,fen);</p><p>  write_sfm(10,mia

87、o);</p><p><b>  s3num=0;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  if(s4

88、==0)</b></p><p><b>  {</b></p><p><b>  delay(5);</b></p><p><b>  if(s4==0)</b></p><p><b>  {</b></p><p&

89、gt;<b>  s4num++;</b></p><p>  while(!s1);</p><p>  if(s4num==1) //光標(biāo)跳到分位置閃爍</p><p><b>  {</b></p><p>  write_com(0x80+7);</p><p

90、>  write_com(0x0f);</p><p><b>  }</b></p><p>  if(s4num==2) //光標(biāo)跳到時(shí)位置閃爍</p><p><b>  {</b></p><p>  write_com(0x80+4);</p><p

91、>  write_com(0x0f);</p><p><b>  }</b></p><p>  if(s4num==3) </p><p><b>  {</b></p><p>  write_com(0x0c); //開顯示 </p><p&g

92、t;  write_com(0x06); //光標(biāo)設(shè)置</p><p><b>  s4num=0;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p>

93、<p>  if(s4num!=0)</p><p><b>  {</b></p><p>  if(s4num==1)//調(diào)整分鐘</p><p><b>  {</b></p><p><b>  if(s2==0)</b></p><

94、;p><b>  {</b></p><p><b>  delay(5);</b></p><p><b>  if(s2==0)</b></p><p><b>  {</b></p><p>  while(!s2);</p>&

95、lt;p><b>  bb++;</b></p><p>  if(bb==60)</p><p><b>  bb=0;</b></p><p><b>  }</b></p><p>  write_sfm1(7,bb);</p><p>&l

96、t;b>  }</b></p><p><b>  }</b></p><p>  if(s1num==2) //調(diào)整小時(shí)</p><p><b>  {</b></p><p><b>  if(s2==0)</b></p><p

97、><b>  {</b></p><p><b>  delay(5);</b></p><p><b>  if(s2==0)</b></p><p><b>  {</b></p><p>  while(!s2);</p><

98、;p><b>  aa++;</b></p><p>  if(aa==24)</p><p><b>  aa=0;</b></p><p><b>  }</b></p><p>  write_sfm1(4,aa);</p><p><

99、b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  if(s5==0)</b></p><p><b>  {</b></p><p>

100、  delay(10);</p><p><b>  if(s5==0)</b></p><p><b>  {</b></p><p>  while(!s5);</p><p>  write_com(0x01); //顯示清屏</p><p>  write_co

101、m(0x80); //光標(biāo)初始地址</p><p>  for(num=0;num<16;num++)</p><p><b>  {</b></p><p>  write_date(table[num]);</p><p>  delay(10);</p><p><b&g

102、t;  }</b></p><p>  write_com(0x80+0x40);</p><p>  for(num=0;num<16;num++)</p><p><b>  {</b></p><p>  write_date(table1[num]);</p><p> 

103、 delay(10);</p><p><b>  }</b></p><p>  write_sfm(4,shi);</p><p>  write_sfm(7,fen);</p><p>  write_sfm(10,miao);</p><p><b>  }</b>&

104、lt;/p><p><b>  }</b></p><p><b>  } </b></p><p>  void main()</p><p><b>  {</b></p><p><b>  init();</b></p&g

105、t;<p><b>  ww=0;</b></p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  keyscan();</p><p><b>  if(yy==1)</b><

106、/p><p><b>  {</b></p><p>  if(shi==aa&&fen==bb)</p><p><b>  {</b></p><p><b>  beep=0;</b></p><p>  delay(1000);<

107、;/p><p><b>  beep=1;</b></p><p>  delay(1000);</p><p><b>  beep=0;</b></p><p>  delay(1000);</p><p><b>  beep=1;</b></p

108、><p><b>  yy=0;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b><

109、/p><p>  void timer0() interrupt 1</p><p><b>  {</b></p><p>  TH0=(65536-50000)/256; //重裝初值</p><p>  TL0=(65536-50000)%256;</p><p><b>  a

110、++;</b></p><p>  if(a==20)//定時(shí)到達(dá)1s</p><p><b>  {</b></p><p><b>  a=0;</b></p><p><b>  miao++;</b></p><p>  if(

111、s3num==2)</p><p><b>  {</b></p><p>  if(shi==aa&&fen==bb)</p><p><b>  {</b></p><p><b>  beep=0;</b></p><p>  de

112、lay(1000);</p><p><b>  beep=1;</b></p><p>  delay(1000);</p><p><b>  beep=0;</b></p><p>  delay(1000);</p><p><b>  beep=1;<

113、;/b></p><p><b>  }</b></p><p><b>  } </b></p><p>  if(miao==60)</p><p><b>  {</b></p><p><b>  miao=0;</

114、b></p><p><b>  fen++;</b></p><p>  if(fen==60)</p><p><b>  {</b></p><p><b>  fen=0;</b></p><p><b>  shi++;<

115、/b></p><p>  if(shi==24)</p><p><b>  {</b></p><p><b>  shi=0;</b></p><p><b>  }</b></p><p><b>  if(ww==0)</

116、b></p><p><b>  {</b></p><p>  write_sfm(4,shi);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  if(ww==0)</

117、b></p><p><b>  {</b></p><p>  write_sfm(7,fen);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  if(ww==0)</

118、b></p><p><b>  {</b></p><p>  write_sfm(10,miao);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b>&

119、lt;/p><p>  五、仿真過程與仿真結(jié)果</p><p><b>  PDB仿真:</b></p><p><b>  元器件清單:</b></p><p><b>  六、安裝與調(diào)試</b></p><p>  制板過程:打印預(yù)覽-----轉(zhuǎn)印---

120、--腐蝕-----轉(zhuǎn)孔-----焊接…</p><p><b>  焊接情況;</b></p><p><b>  七、結(jié)論與心得</b></p><p>  經(jīng)過一學(xué)期的學(xué)習(xí),我們完成了這次單片機(jī)電子時(shí)鐘設(shè)計(jì),通過這次的設(shè)計(jì)使我認(rèn)識(shí)到本人對(duì)單片機(jī)方面的知識(shí)知道的太少了,對(duì)于書本上的很多知識(shí)還不能靈活運(yùn)用,尤其是對(duì)程序設(shè)計(jì)

121、語(yǔ)句的理解和運(yùn)用,不能夠充分理解每個(gè)語(yǔ)句的具體含義,導(dǎo)致編程的程序過于復(fù)雜,使得需要的存儲(chǔ)空間增大。損耗了過多的內(nèi)存資源。</p><p>  本次的設(shè)計(jì)使我從中學(xué)到了一些很重要的東西,那就是如何從理論到實(shí)踐的轉(zhuǎn)化,怎樣將我所學(xué)到的知識(shí)運(yùn)用到我以后的工作中去。在大學(xué)的課堂的學(xué)習(xí)只是在給我們灌輸專業(yè)知識(shí),而我們應(yīng)把所學(xué)的用到我們現(xiàn)實(shí)的生活中去,此次的電子時(shí)鐘設(shè)計(jì)給我奠定了一個(gè)實(shí)踐基礎(chǔ),我會(huì)在以后的學(xué)習(xí)、生活中磨練自

122、己,使自己適應(yīng)于以后的競(jìng)爭(zhēng),同時(shí)在查找資料的過程中我也學(xué)到了許多新的知識(shí),在和同學(xué)協(xié)作過程中增進(jìn)同學(xué)間的友誼,使我對(duì)團(tuán)隊(duì)精神的積極性和重要性有了更加充分的理解。</p><p>  實(shí)踐中獲得的知識(shí)能讓我對(duì)單片機(jī)的知識(shí)有更好的認(rèn)識(shí)和理解。雖然這次的課程設(shè)計(jì)我參考了一些文獻(xiàn)資料,沒有做到創(chuàng)新,但在對(duì)程序的讀寫過程中我明白了許多。這次課程設(shè)計(jì)的最大收獲是只有把理論用到實(shí)踐中我們才能真正掌握好所學(xué)知識(shí)。相信這對(duì)我以后的

123、課程設(shè)計(jì)和畢業(yè)設(shè)計(jì)將會(huì)有很大的幫助!</p><p><b>  八、參考文獻(xiàn)</b></p><p>  [1] 謝自美.電子線路設(shè)計(jì)?實(shí)驗(yàn)?測(cè)試[M].武漢:華中理工大學(xué)出版社 1992.</p><p>  [2] 何立民.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社 1993.</p><p>  [

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論