單片機(jī)秒表課程設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  單片機(jī)課程設(shè)計(jì)報(bào)告</b></p><p>  課程名稱: 秒表設(shè)計(jì)</p><p><b>  姓名: </b></p><p><b>  學(xué)號(hào):</b></p><p><b>  專業(yè)班別: </b></p>

2、;<p><b>  院系: </b></p><p><b>  指導(dǎo)老師: </b></p><p>  完成時(shí)間:2011.12.20</p><p><b>  目錄</b></p><p>  一、前言……………………………………………………………………

3、…………………1</p><p>  1、摘要……………………………………………………………………………………..1</p><p>  2、關(guān)鍵詞…………………………………………………………………………………..1</p><p>  二、設(shè)計(jì)背景…………………………………………………………………………………1</p><p>  三、設(shè)計(jì)

4、目的…………………………………………………………………………………1</p><p>  四、設(shè)計(jì)任務(wù)與要求…………………………………………………………………………2</p><p>  1、設(shè)計(jì)題目………………………………………………………………………………..2</p><p>  2、設(shè)計(jì)任務(wù)………………………………………………………………………………..2&

5、lt;/p><p>  3、設(shè)計(jì)要求………………………………………………………………………………..2</p><p>  五、設(shè)計(jì)方案與基本原理……………………………………………………………………2</p><p>  1、預(yù)備知識(shí)………………………………………………………………………………..2</p><p>  2、實(shí)驗(yàn)儀器…………………

6、……………………………………………………………..2</p><p>  3、LED顯示原理………………………………………………………………………….2</p><p>  4、AT89C52單片機(jī)……………………………………………………………………….3</p><p>  5、顯示電路………………………………………………………………………………..4</p

7、><p>  六、軟件系統(tǒng)設(shè)計(jì)……………………………………………………………………………5</p><p>  1、主程序流程圖…………………………………………………………………………..5</p><p>  2、設(shè)計(jì)程序………………………………………………………………………………..6</p><p>  七、調(diào)試結(jié)果………………………………

8、…………………………………………………10</p><p>  八、設(shè)計(jì)結(jié)論與體會(huì)…………………………………………………………………………10</p><p>  1、設(shè)計(jì)結(jié)論………………………………………………………………………………..10</p><p>  2、設(shè)計(jì)體會(huì)………………………………………………………………………………..10</p>

9、<p>  九、參考文獻(xiàn)………………………………………………………………………………….11</p><p><b>  一、前言</b></p><p>  1、摘要:秒表是單片機(jī)常見(jiàn)的裝置,這次課程設(shè)計(jì)通過(guò)AT89C52單片機(jī)來(lái)控制秒表的計(jì)時(shí),編寫(xiě)程序,使程序?qū)崿F(xiàn)開(kāi)始計(jì)時(shí),停止計(jì)時(shí)和復(fù)位等功能。通過(guò)這次課程設(shè)計(jì)使我對(duì)單片機(jī)有了進(jìn)一步的理解,并且讓對(duì)單片

10、機(jī)產(chǎn)生了濃厚的興趣。</p><p>  2、關(guān)鍵詞:?jiǎn)纹瑱C(jī) 秒表 程序設(shè)計(jì) 按鍵控制</p><p><b>  二、設(shè)計(jì)背景</b></p><p>  目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒(méi)有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過(guò)程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的

11、各種智能IC卡,民用豪華轎車(chē)的安全保障系統(tǒng),錄像機(jī)、攝像機(jī)、全自動(dòng)洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開(kāi)單片機(jī)。更不用說(shuō)自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械以及各種智能機(jī)械了。因此,單片機(jī)的學(xué)習(xí)、開(kāi)發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。單片機(jī)廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過(guò)程控制等領(lǐng)域。</p><p>  單片機(jī)模塊中最常見(jiàn)的是秒

12、表、數(shù)字鐘等顯示時(shí)間類的裝置,此裝置是一種用數(shù)字電路實(shí)現(xiàn)時(shí)、分、秒計(jì)時(shí)的裝置,與機(jī)械式時(shí)鐘相比具有更高的準(zhǔn)確性和直觀性,且無(wú)機(jī)械裝置,具有更長(zhǎng)的使用壽命,因此得到了廣泛的使用。</p><p><b>  三、設(shè)計(jì)目的</b></p><p>  隨著單片機(jī)的應(yīng)用日益廣泛,學(xué)生在完成前面的基礎(chǔ)實(shí)驗(yàn)之后,初步掌握了單片機(jī)仿真開(kāi)發(fā)工具的使用和程序的基本調(diào)試方法以及常用程序

13、的設(shè)計(jì)方法。如果條件允許,下一步就是進(jìn)行課程設(shè)計(jì)。通過(guò)課程設(shè)計(jì),可將所學(xué)過(guò)的電子技術(shù)、模/數(shù)轉(zhuǎn)換技術(shù)、傳感器技術(shù)、單片機(jī)技術(shù)及智能儀器等知識(shí)綜合串聯(lián)起來(lái),通過(guò)理論聯(lián)系實(shí)際,從題目分析、電路設(shè)計(jì)調(diào)試、程序編制調(diào)試到傳感器的標(biāo)定等這一完整的實(shí)驗(yàn)過(guò)程,培養(yǎng)學(xué)生正確的設(shè)計(jì)思想,使學(xué)生充分發(fā)揮主觀能動(dòng)性,去獨(dú)立解決實(shí)際問(wèn)題,以達(dá)到提升學(xué)生的綜合能力、動(dòng)手能力、文獻(xiàn)資料查閱能力的作用,從而培養(yǎng)和提高學(xué)生的獨(dú)立工作能力及解決實(shí)際問(wèn)題的能力,為畢業(yè)設(shè)計(jì)

14、和以后的工作打下一個(gè)良好的基礎(chǔ)。當(dāng)然課程設(shè)計(jì)不僅僅要求學(xué)生完成所規(guī)定的題目要求,同時(shí)還要培養(yǎng)學(xué)生養(yǎng)成良好的科學(xué)態(tài)度和嚴(yán)謹(jǐn)?shù)脑O(shè)計(jì)習(xí)慣。</p><p><b>  1</b></p><p><b>  四、設(shè)計(jì)任務(wù)與要求</b></p><p>  1、設(shè)計(jì)題目:秒表設(shè)計(jì)</p><p>  2、設(shè)

15、計(jì)任務(wù):用89C51設(shè)計(jì)一個(gè)2位的LED數(shù)碼作為“秒表”。</p><p>  3、設(shè)計(jì)要求:顯示時(shí)間為00—99秒,每秒自動(dòng)加1,另設(shè)計(jì)一個(gè)“開(kāi)始”鍵和一個(gè)“復(fù)位”鍵。</p><p>  五、設(shè)計(jì)方案及基本原理</p><p><b>  1、預(yù)備知識(shí)</b></p><p> ?。?)熟悉單片機(jī)的工作原理</

16、p><p> ?。?)了解數(shù)碼管的顯示原理</p><p><b> ?。?)熟悉c語(yǔ)言</b></p><p><b>  2、實(shí)驗(yàn)儀器</b></p><p>  集成電路芯片89c52,七段數(shù)碼管,單片機(jī)開(kāi)發(fā)板,MCS-51系列單片機(jī)微機(jī)仿真實(shí)驗(yàn)系統(tǒng)中的軟件。</p><p&g

17、t;<b>  3、LED顯示原理</b></p><p>  靜態(tài)顯示就是顯示驅(qū)動(dòng)電路具有輸出鎖存功能,單片機(jī)將所要顯示的數(shù)據(jù)送出后就不再管,直到下一次顯示數(shù)據(jù)需要更新時(shí)再傳送一次新數(shù)據(jù),系那是數(shù)據(jù)穩(wěn)定,占用很少的CPU時(shí)間。</p><p>  動(dòng)態(tài)顯示需要CPU時(shí)刻對(duì)顯示器件進(jìn)行數(shù)據(jù)刷新,顯示數(shù)據(jù)有閃爍感,占用的CPU時(shí)間多。這兩種顯示方式各有利弊:靜態(tài)顯示雖然

18、數(shù)據(jù)穩(wěn)定,占用很少的CPU時(shí)間,但每個(gè)顯示單元都需要單獨(dú)的顯示驅(qū)動(dòng)電路,使用的硬件較多;動(dòng)態(tài)系那是雖然有閃爍感,占用的CPU時(shí)間多,但使用的硬件少,能節(jié)省線路空間。</p><p>  基本的半導(dǎo)體數(shù)碼管是由七個(gè)條狀發(fā)光二極管芯片排列而成的,可實(shí)現(xiàn)0~9的顯示。LED數(shù)碼管是由發(fā)光二極管顯示字段組成的顯示器,有8段和“米”字段之分,這種顯示器有共陰極兩種。所謂共陽(yáng)方式是指筆畫(huà)顯示器各段發(fā)光管得陽(yáng)極(即P區(qū))是公共

19、的,而陰極互相隔離。所謂共陰方式是筆畫(huà)顯示器各段發(fā)光管的陰極(即N區(qū))是公共的,而陽(yáng)極是互相隔離的。</p><p><b>  2</b></p><p>  4、AT89C52單片機(jī)</p><p>  AT89C52是一個(gè)低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含8k bytes的可反復(fù)擦寫(xiě)的Flash只讀程序存儲(chǔ)器和256 bytes的

20、隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,AT89C52單片機(jī)在電子行業(yè)中有著廣泛的應(yīng)用。AT89C52為8 位通用微處理器,采用工業(yè)標(biāo)準(zhǔn)的C51內(nèi)核,在內(nèi)部功能及管腳排布上與通用的8xc52 相同,其主要用于會(huì)聚調(diào)整時(shí)的功能控制。功能包括對(duì)會(huì)聚主IC 內(nèi)部寄存器、數(shù)據(jù)RAM及外部接口等功能部件的初始化,會(huì)聚調(diào)整控制,會(huì)

21、聚測(cè)試圖控制,紅外遙控信號(hào)IR的接收解碼及與主板CPU通信等。主要管腳有:XTAL1(19 腳)和XTAL2(18 腳)為振蕩器輸入輸出端口,外接12MHz 晶振。RST/Vpd(9 腳)為復(fù)位輸入端口,外接電阻電容組成的復(fù)位電路。VCC(40 腳)和VSS(20 腳)為供電端口,分別接+5V電源的正負(fù)端。P0~P3 為可編程通用I/O 腳,其功能用途由軟件定義,在本設(shè)計(jì)中,P0 端口(32~39 腳)被定義為N1 功</p>

22、;<p><b>  3</b></p><p><b>  5、顯示電路</b></p><p>  單片機(jī)應(yīng)用系統(tǒng)由硬件系統(tǒng)和軟件系統(tǒng)兩部分組成。硬件系統(tǒng)是指單片機(jī)以及擴(kuò)展的存儲(chǔ)器、I\0接口、外圍擴(kuò)展的功能芯片以及接口電路。軟件系統(tǒng)包括監(jiān)控程序和各種應(yīng)用程序。K1 開(kāi)始計(jì)時(shí),k2停止計(jì)時(shí),k3復(fù)位。秒表時(shí)間顯示電路設(shè)計(jì):<

23、;/p><p><b>  4</b></p><p><b>  六、軟件系統(tǒng)設(shè)計(jì)</b></p><p><b>  1、主程序流程圖</b></p><p><b>  5</b></p><p><b>  2、設(shè)計(jì)程

24、序</b></p><p>  #include<reg52.h></p><p>  #define uint unsigned int</p><p>  #define char unsigned char</p><p>  sbit weil=P2^5; //定義鎖存使能端口 位鎖存</p>

25、<p>  sbit duanl=P2^6; // 段鎖存</p><p>  sbit start=P1^0;</p><p>  sbit stop=P1^1;</p><p>  sbit reset=P1^2;</p><p>  uint code table_duan[]={0x3f,0x06,0x5b,0x4f,0x6

26、6,0x6d,0x7d,0x07,0x7f,0x6f};// 顯示段碼值0~9</p><p>  uint code table_wei[]={0xfe,0xfd,0xf7,0xef}; //位控制字</p><p>  void delay(uint z); // 聲明延時(shí)函數(shù)</p><p>  void chushih(); // 聲明按鍵函數(shù)</p

27、><p>  void display(); // 聲明宣函數(shù)</p><p>  uint aa,bb,s[4]; // 變量聲明</p><p>  void main() //主函數(shù)入口</p><p><b>  {</b></p><p>  chushih();</p&

28、gt;<p><b>  while(1)</b></p><p><b>  {</b></p><p><b>  P0=0xfb;</b></p><p><b>  weil=1;</b></p><p><b>  wei

29、l=0;</b></p><p><b>  P0=0x40;</b></p><p><b>  duanl=1;</b></p><p><b>  duanl=0;</b></p><p><b>  6</b></p>&

30、lt;p>  delay(2); </p><p>  display();</p><p>  if(!start) //開(kāi)始</p><p><b>  {</b></p><p><b>  delay(5);</b></p><p&

31、gt;  if(!start)</p><p><b>  {</b></p><p>  display();</p><p><b>  TR0=0;</b></p><p><b>  }</b></p><p><b>  }</

32、b></p><p>  if(!stop) //暫停</p><p><b>  {</b></p><p><b>  delay(5);</b></p><p><b>  if(!stop)</b></p><p&

33、gt;<b>  {</b></p><p>  display();</p><p><b>  TR0=1;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(

34、!reset) //復(fù)位</p><p><b>  {</b></p><p><b>  delay(5);</b></p><p>  if(!reset)</p><p><b>  {</b></p><p><

35、;b>  aa=0;</b></p><p>  display();</p><p><b>  }</b></p><p><b>  } </b></p><p><b>  7</b></p><p><b> 

36、 } </b></p><p><b>  }</b></p><p>  void chushih()</p><p><b>  {</b></p><p>  TMOD=0x01; //設(shè)置T0定時(shí)器</p><p>  TH0=(65536-1000

37、0)/256; //裝入初值</p><p>  TL0=(65536-10000)%256;</p><p>  EA=1; //開(kāi)總中斷</p><p>  ET0=1; //開(kāi)啟定時(shí)器T0中斷</p><p>  TR0=1; //啟動(dòng)T0</p><p><b>  }</b&

38、gt;</p><p>  timer0()interrupt 1</p><p><b>  {</b></p><p>  TH0=(65536-10000)/256; </p><p>  TL0=(65536-10000)%256;</p><p><b>  aa++;<

39、;/b></p><p>  if(aa==10000)</p><p><b>  aa=0;</b></p><p>  s[0]=table_duan[aa/1000];</p><p>  s[1]=table_duan[aa/100%10];</p><p>  s[2]=tabl

40、e_duan[aa%100/10];</p><p>  s[3]=table_duan[aa%10];</p><p><b>  }</b></p><p>  void delay(uint z) //延時(shí)子函數(shù)</p><p><b>  {</b></p><p

41、><b>  uint x,y;</b></p><p><b>  8</b></p><p>  for(x=z;x>0;x--)</p><p>  for(y=110;y>0;y--);</p><p><b>  }</b></p>&

42、lt;p>  void display()</p><p><b>  {</b></p><p><b>  uint i;</b></p><p>  for(i=0;i<4;i++)</p><p><b>  {</b></p><p&g

43、t;  P0=table_wei[i];</p><p><b>  weil=1;</b></p><p><b>  weil=0;</b></p><p><b>  P0=s[i];</b></p><p><b>  duanl=1;</b>&l

44、t;/p><p><b>  duanl=0;</b></p><p><b>  delay(4);</b></p><p><b>  P0=0;</b></p><p><b>  duanl=1;</b></p><p><

45、;b>  duanl=0;</b></p><p><b>  } </b></p><p><b>  }</b></p><p><b>  9</b></p><p><b>  七、調(diào)試結(jié)果</b></p>&l

46、t;p>  本裝置將實(shí)現(xiàn)0—99的計(jì)數(shù),第4個(gè)數(shù)碼管10ms跳轉(zhuǎn)一次,第3個(gè)數(shù)碼管100ms跳轉(zhuǎn)一次,第2個(gè)數(shù)碼管1s跳轉(zhuǎn)一次,第1個(gè)數(shù)碼管10s跳轉(zhuǎn)一次。具體如下:</p><p>  1、開(kāi)機(jī)時(shí)數(shù)碼管顯示0000</p><p>  2、按k1 開(kāi)始計(jì)時(shí)數(shù)碼管從00開(kāi)始計(jì)數(shù)到99結(jié)束再?gòu)?0開(kāi)始循環(huán)</p><p>  3、按k2 停止計(jì)時(shí)數(shù)碼管顯示當(dāng)前數(shù)

47、值</p><p>  4、按k3 復(fù)位,從00開(kāi)始計(jì)數(shù)</p><p><b>  八、設(shè)計(jì)結(jié)論與體會(huì)</b></p><p><b>  1、設(shè)計(jì)結(jié)論</b></p><p> ?。?)在設(shè)計(jì)中,由于對(duì)單片機(jī)開(kāi)發(fā)板的不了解,很多接口都不知如何連接,但通過(guò)自己的查閱資料和上網(wǎng)搜索終于弄懂了<

48、/p><p> ?。?)由于對(duì)單片機(jī)c語(yǔ)言程序編寫(xiě)的不熟悉,很多指令不理解,但最后通過(guò)查看課本把它解決了</p><p> ?。?)由于單片機(jī)的不穩(wěn)定開(kāi)始運(yùn)行時(shí)顯示不出來(lái),但是通過(guò)檢查線路,把問(wèn)題給找出來(lái)了,由于有些線插得不穩(wěn)定而造成的。</p><p><b>  2、心得體會(huì)</b></p><p>  經(jīng)過(guò)幾個(gè)星期的課

49、程設(shè)計(jì),我學(xué)會(huì)了很多知識(shí)和技能。我從一開(kāi)始對(duì)單片機(jī)一竅不通到現(xiàn)在的理解,我花費(fèi)了很多的時(shí)間和精力,比如上網(wǎng)查閱資料,去圖書(shū)館借相關(guān)的書(shū)籍,向身邊的同學(xué)討教等等。我重新對(duì)c語(yǔ)言又有了一些新的理解,也對(duì)單片機(jī)產(chǎn)生了濃厚的興趣。單片機(jī)對(duì)于我們電子專業(yè)的學(xué)生來(lái)說(shuō)是一門(mén)很重要的學(xué)科,所以我們要好好學(xué)號(hào)這一門(mén)技術(shù),這對(duì)于我們未來(lái)的發(fā)展有很大的幫助。</p><p>  下面我來(lái)談?wù)劚救送ㄟ^(guò)這次課程設(shè)計(jì)的一些體會(huì):</p

50、><p>  (1)、這段日子里,通過(guò)學(xué)習(xí)的理論知識(shí)和實(shí)踐相結(jié)合,我收獲了很多,這些收獲將是我人生的寶貴財(cái)富。</p><p><b>  10</b></p><p>  (2)、通過(guò)這次課程設(shè)計(jì),讓我養(yǎng)成了發(fā)現(xiàn)問(wèn)題、提出問(wèn)題、解決問(wèn)題的好習(xí)慣,也使我善于思考和動(dòng)手,更增強(qiáng)了我與同學(xué)們的交流合作。</p><p>  (3

51、)、這次課程設(shè)計(jì)不僅讓我對(duì)c語(yǔ)言有了很大的認(rèn)識(shí),使我的編程能力有了很大的提高,也讓我對(duì)單片機(jī)產(chǎn)生了濃厚的興趣。</p><p>  (4)、通過(guò)這次課程設(shè)計(jì),切實(shí)的提高了我的動(dòng)手能力和解決實(shí)際問(wèn)題的能力。</p><p>  總之,這次課程設(shè)計(jì)雖然沒(méi)有達(dá)到我的預(yù)期,但是結(jié)果我還是可以接受的,畢竟這是自己的第一次接觸單片機(jī)。通過(guò)這次課程設(shè)計(jì),不僅加深了我對(duì)c語(yǔ)言的理解,更是讓我認(rèn)識(shí)了單片機(jī)理

52、論,鍛煉了我的動(dòng)手能力和思考能力,使我養(yǎng)成了做事耐心和細(xì)心的習(xí)慣。</p><p>  最后感謝老師的指導(dǎo)和同學(xué)們的幫助。</p><p><b>  九、參考文獻(xiàn)</b></p><p>  [1]于海生。微型計(jì)算機(jī)控制技術(shù)、清華大學(xué)出版社</p><p>  [2]周立功。單片機(jī)實(shí)驗(yàn)與實(shí)踐、北京航空航艦大學(xué)出版社&l

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論