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

下載本文檔

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

文檔簡介

1、<p><b>  1設(shè)計(jì)目的</b></p><p><b>  1.1設(shè)計(jì)目的</b></p><p>  1、通過單片機(jī)課程設(shè)計(jì),熟練掌握單片機(jī)C語言的編程方法,將理論聯(lián)系到實(shí)踐中去,提高我們的動腦和動手的能力。</p><p>  2、通過定時(shí)器控制兩個(gè)LED顯示器顯示10秒秒表系統(tǒng)的設(shè)計(jì),掌握定時(shí)/計(jì)數(shù)

2、器和LED顯示器的使用方法,同時(shí)掌握簡單程序的編寫,最終提高我們的邏輯抽象能力。</p><p>  1.2設(shè)計(jì)內(nèi)容和要求</p><p>  內(nèi)容:設(shè)計(jì)一個(gè)能夠控制兩個(gè)LED顯示器顯示10秒秒表的模擬系統(tǒng)。</p><p>  要求:利用單片機(jī)的定時(shí)器定時(shí),控制LED顯示器顯示。</p><p><b>  1.3 設(shè)計(jì)思路<

3、;/b></p><p>  1.先熟悉實(shí)驗(yàn)原理,了解4只LED滾動閃爍系統(tǒng)燈的工作過程,組成滾動閃爍系統(tǒng)需要的組件。</p><p>  2.了解各個(gè)硬件的工作原理,</p><p>  3.繪制電路原理圖,編寫程序,并進(jìn)行仿真,基本實(shí)現(xiàn)LED滾動閃爍系統(tǒng)燈的功能。</p><p><b>  2設(shè)計(jì)原理分析</b&g

4、t;</p><p>  2.1十秒秒表的系統(tǒng)設(shè)計(jì)</p><p>  通過編寫程序,實(shí)現(xiàn)對發(fā)光二極管的控制,來4只LED滾動閃爍燈的管理。每延時(shí)一段時(shí)間,燈的顯示情況都會按LED燈的顯示規(guī)律進(jìn)行狀態(tài)轉(zhuǎn)換。采用單片機(jī)內(nèi)部的I/O口上的P0口中的4個(gè)引腳即可來控制4個(gè)LED燈。</p><p>  2.2十秒秒表的功能要求</p><p>  

5、本設(shè)計(jì)能模擬基本的LED滾動閃爍系統(tǒng),是用中斷的方式定時(shí)控制LED定的閃爍及滾動。</p><p><b>  2.2.1計(jì)時(shí)顯示</b></p><p>  定時(shí)/計(jì)數(shù)器工作方式寄存器,定時(shí)器采用T0定時(shí)器0工作于模式2 位數(shù):8位計(jì)數(shù)范圍:0-255 具有自動加載功能</p><p><b>  2.2.2中斷設(shè)置</b&g

6、t;</p><p>  每累計(jì)若干次定時(shí)器中斷才執(zhí)行一次閃爍。</p><p>  2.3定時(shí)器控制4只LED滾動閃爍制系統(tǒng)的基本構(gòu)成及原理</p><p>  單片機(jī)設(shè)LED燈閃爍系統(tǒng),可用單片機(jī)直接控制信號燈的狀態(tài)變化可以廣泛的應(yīng)用到商業(yè)和工業(yè)的流程控制測電路當(dāng)中。</p><p>  圖2.1 系統(tǒng)的總體框圖</p>&

7、lt;p>  據(jù)此,本設(shè)計(jì)系統(tǒng)以單片機(jī)為控制核心,連接成最小系統(tǒng)。系統(tǒng)的總體框圖如上所示。因?yàn)樗軌驕?zhǔn)確地劃分成時(shí)鐘頻率,與UART(通用異步接收器/發(fā)送器)量常見的波特率相關(guān)。特別是較高的波特率(19600,19200),不管多么古怪的值,這些晶振都是準(zhǔn)確,常被使用的。當(dāng)定時(shí)器1被用作波特率發(fā)生器時(shí),波特率工作于方式1和方式3是由定時(shí)器1的溢出率和SMOD的值(PCON.7------雙倍速波特率)決定:</p>

8、<p>  方式1、3波特率= (定時(shí)器1的溢出率) 特殊時(shí),定時(shí)器被設(shè)在自動重袋模式(模式2,TMOD的高四位為0100B),其為:方式1、 3波特率= 11.0592MHZ晶振的一些典型波特率如下:波特率SMOD TH1 19200 1 0FDH 9600 0 0FDH 4800 0 0FAH2400 0 0F4H 1200 0 0E8H 300 0 0A0H更換一種計(jì)算

9、方式,它將以修改公式達(dá)到我們需求的波特率來計(jì)算出晶振。最小晶振頻率=波特率x 384 x 2 SMOD 這就是我們所需波特率的最小晶振頻率,此頻率能成倍增加達(dá)到我們需求的時(shí)鐘頻率。 </p><p>  3 系統(tǒng)硬件電路的設(shè)計(jì)</p><p>  3.1系統(tǒng)硬件總電路構(gòu)成及原理</p><p>  實(shí)現(xiàn)本設(shè)計(jì)要求的具體功能,可以選用AT89S51單片機(jī)及外

10、圍器件構(gòu)成最小控制系統(tǒng),4個(gè)發(fā)光二極管分成1組紅綠藍(lán)黃4燈構(gòu)成信號燈指示模塊等。</p><p><b>  主要器件的選擇:</b></p><p><b>  表3-1</b></p><p>  3.2 主控制部分――AT89C51單片機(jī)簡介</p><p>  89C51是一種帶4K字節(jié)閃存

11、可編程可擦除只讀存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲器的單片機(jī)。單片機(jī)的可擦除只讀存儲器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器

12、組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。</p><p>  AT89C51單片機(jī)為40引腳雙列直插芯片,有4個(gè)I/O口,P0 ,P1, P2, P3,單片機(jī)的最小系統(tǒng)如圖所示,18引腳和19引腳接時(shí)鐘脈沖電路,XTAL1接外部晶振和微調(diào)電容的一端,在片內(nèi)它是震蕩器倒相放大器的輸入,X

13、TAL2接外部晶振和微調(diào)電容的另一端,在片內(nèi)她是振蕩器倒相放大器的輸出端,第9引腳為復(fù)位輸入端,接上電容,電阻及開關(guān)后構(gòu)成上電復(fù)位電路,20引腳為接地端,40引腳為電源端。如圖所示:</p><p>  圖3.1 晶振與單片機(jī)的連接</p><p>  3.2.1 AT89C51的內(nèi)部結(jié)構(gòu)功能</p><p><b>  ·中央處理器:<

14、/b></p><p>  中央處理器(CPU)是整個(gè)單片機(jī)的核心部件,是8位數(shù)據(jù)寬度的處理器,能處理8位二進(jìn)制數(shù)據(jù)或代碼,CPU負(fù)責(zé)控制、指揮和調(diào)度整個(gè)單元系統(tǒng)協(xié)調(diào)的工作,完成運(yùn)算和控制輸入輸出功能等操作。</p><p>  ·數(shù)據(jù)存儲器(內(nèi)部RAM):</p><p>  數(shù)據(jù)存儲器用于存放變化的數(shù)據(jù)。AT89S51中數(shù)據(jù)存儲器的地址空間為25

15、6個(gè)RAM單元,但其中能作為數(shù)據(jù)存儲器供用戶使用的僅有前面128個(gè),后128個(gè)被專用寄存器占用。</p><p>  ·程序存儲器(內(nèi)部ROM):</p><p>  程序存儲器用于存放程序和固定不變的常數(shù)等。通常采用只讀存儲器,且其又多種類型,在89系列單片機(jī)中全部采用閃存。AT89C51內(nèi)部配置了4KB閃存。</p><p>  ·定時(shí)/計(jì)數(shù)

16、器(T0):</p><p>  定時(shí)/計(jì)數(shù)器用于實(shí)現(xiàn)定時(shí)和計(jì)數(shù)功能。AT89C51共有2個(gè)16位定時(shí)/計(jì)數(shù)器。</p><p>  ·并行輸入輸出(I/O)口:</p><p>  8051共有4組8位I/O口(P0、 P1、P2或P3),用于對外部數(shù)據(jù)的傳輸。 每個(gè)口都由1個(gè)鎖存器和一個(gè)驅(qū)動器組成。它們主要用于實(shí)現(xiàn)與外部設(shè)備中數(shù)據(jù)的并行輸入與輸出,有些

17、I/O口還有其他功能。</p><p><b>  ·全雙工串行口:</b></p><p>  A89C51內(nèi)置一個(gè)全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用。</p><p><b>  ·時(shí)鐘電路:</b></p>&l

18、t;p>  時(shí)鐘電路的作用是產(chǎn)生單片機(jī)工作所需要的時(shí)鐘脈沖序列。</p><p><b>  ·中斷系統(tǒng):</b></p><p>  中斷系統(tǒng)的作用主要是對外部或內(nèi)部的終端請求進(jìn)行管AT89C51共有5個(gè)中斷源,其中有2個(gè)外部中斷源和3個(gè)內(nèi)部中斷源。</p><p>  3.2.2 51單片機(jī)的串行接口工作方式</p&

19、gt;<p>  51單片機(jī)的串行接口有四種工作方式。方式0是將SBUF作為8位同步移位寄存器使用(固定波特率);方式1是10位異步通信方式(可變波特率);方式2是11位異步通信方式(固定波特率);方式3是11位異步通信方式(可變波特率)。</p><p>  圖 3.2 串行接口與單片機(jī)的連接 </p><p><b>  3.3其它器件</b><

20、;/p><p>  3.4.1發(fā)光二極管</p><p>  根據(jù)本設(shè)計(jì)的特點(diǎn),LED的顯示不可少,LED的顯示采用普通的發(fā)光二極管。在硬件上連接圖上也是對稱分布的,如下圖3.4所示。</p><p>  圖3.3 LED燈的連接</p><p>  在本設(shè)計(jì)中,實(shí)際控制的燈只有4個(gè),其中均是低電平有效,所以在運(yùn)行前LED燈的狀態(tài)是滅。</

21、p><p>  3.4定時(shí)器控制4只LED滾動閃爍控制系統(tǒng)原理圖</p><p>  本系統(tǒng)以單片機(jī)為核心,系統(tǒng)硬件電路由單片機(jī),電阻,LED顯示組成。其具體的硬件電路總圖如圖3.6所示。</p><p><b>  圖3.4系統(tǒng)原理</b></p><p>  3.5設(shè)計(jì)的連線圖:</p><p>

22、  3.5.1單片機(jī)實(shí)物圖:</p><p><b>  圖3.5實(shí)物圖 </b></p><p>  3.6 硬件資源及其分配</p><p>  主要用到的硬件:P0口、LED發(fā)光二極管、定時(shí)器T0。</p><p><b>  硬件分配:</b></p><p> ?。?/p>

23、1)P1口:做為輸出口,與發(fā)光二極管相連接。</p><p> ?。?)定時(shí)/計(jì)數(shù)器T0用來產(chǎn)生1秒的定時(shí)。</p><p><b>  3.7運(yùn)行步驟</b></p><p>  1、接硬件圖接線,為了確保LED燈能夠?qū)?yīng)顯示,實(shí)驗(yàn)時(shí),對P0口的接線做了調(diào)整。即,P0.0接L1,P0.1接L2,P0.2接L3,P0.3接L4。</p&

24、gt;<p>  2、開始連續(xù)運(yùn)行,觀察4個(gè)LED燈是與程序設(shè)計(jì)思路對應(yīng),如果有偏差,則單步運(yùn)行或斷點(diǎn)運(yùn)行,進(jìn)行調(diào)試,直至滿足設(shè)計(jì)要求。</p><p>  3、整體運(yùn)行,觀察LED顯示是否都符合要求,如果不符合,則再調(diào)試。直至滿足要求。</p><p><b>  3.8檢測與調(diào)試 </b></p><p>  3.8.1硬件調(diào)

25、試:</p><p>  硬件調(diào)試是利用開發(fā)系統(tǒng)、基本測試儀器(萬用表、示波器等), 檢查用戶系統(tǒng)硬件中存在的故障。</p><p>  硬件調(diào)試可分為靜態(tài)調(diào)試與動態(tài)調(diào)試兩步進(jìn)行。</p><p><b>  靜態(tài)調(diào)試 </b></p><p>  靜態(tài)調(diào)試是在用戶系統(tǒng)未工作時(shí)的一種硬件檢測。 </p>&

26、lt;p>  第一步:目測。檢查外部的各種元件或者是電路是否有斷點(diǎn)。 </p><p>  第二步:用萬用表測試。先用萬用表復(fù)核目測中有疑問的連接點(diǎn), 再檢測各種電源線與地線之間是否有短路現(xiàn)象。 </p><p>  第三步:加電檢測。給板加電,檢測所有的插座或是器件的電源端是否符合要求的值 </p><p>  第四步:是聯(lián)機(jī)檢查。因?yàn)橹挥杏脝纹瑱C(jī)開發(fā)系統(tǒng)

27、才能完成對用戶系統(tǒng)的調(diào)試。 </p><p><b>  動態(tài)調(diào)試 </b></p><p>  動態(tài)調(diào)試是在用戶系統(tǒng)工作的情況下發(fā)現(xiàn)和排除用戶系統(tǒng)硬件中存在的器件內(nèi)部故障、器件連接邏輯錯(cuò)誤等的一種硬件檢查。動態(tài)調(diào)試的一般方法是由近及遠(yuǎn)、由分到合。 </p><p>  由分到合是指首先按邏輯功能將用戶系統(tǒng)硬件電路分為若干塊,當(dāng)調(diào)試電路時(shí),與該

28、元件無關(guān)的 器件全部從用戶系統(tǒng)中去掉,這樣可以將故障范圍限定在某個(gè)局部的電路上。當(dāng)各塊電路無故障后,將各電路逐塊加入系統(tǒng)中,在對各塊電路功能及各電路間可能存在的相互聯(lián)系進(jìn)行調(diào)試。由分到合的調(diào)試既告完成。 </p><p>  由近及遠(yuǎn)是將信號流經(jīng)的各器件按照距離單片機(jī)的邏輯距離進(jìn)行由近及遠(yuǎn)的分層,然后分層調(diào)試。調(diào)試時(shí),仍采用去掉無關(guān)元件的方法,逐層調(diào)試下去,就會定位故障元件了。</p><p&

29、gt;  3.8.2軟件調(diào)試: </p><p>  軟件調(diào)試是通過對擁護(hù)程序的匯編、連接、執(zhí)行來發(fā)現(xiàn)程序中存在的語法錯(cuò)誤與邏輯錯(cuò)誤并加以排除糾正的過程。程序后,編輯,查看程序是否有邏輯的錯(cuò)誤。 </p><p>  4 系統(tǒng)軟件程序的簡單設(shè)計(jì)</p><p><b>  4.1程序框圖</b></p><p><

30、b>  圖4.1程序框圖</b></p><p>  4.2程序流程圖及程序</p><p>  4.2.1程序流程圖:</p><p><b>  圖4.2程序圖</b></p><p>  4.2.2程序清單:</p><p><b>  主程序:</b>

31、;</p><p>  #include <reg51.h> //定義8051寄存器的頭文件</p><p>  #define uchar unsigned char //定義無符號字符型(0——255)</p><p>  #define uint unsigned int //定義無符號整型(0——65535)</p>

32、<p>  //字符與整型分為有符號(signed)與無符號(unsigned)兩類</p><p>  //通常sbit數(shù)據(jù)類型是用于存取內(nèi)部可位尋址的數(shù)據(jù)存儲器</p><p>  sbit B1=P2^0; //聲明B1為P1.0端口</p><p>  sbit G1=P2^1;</p><p>  sbit R1=

33、P2^2;</p><p>  sbit Y1=P2^3;</p><p>  //若要使用權(quán)sbit數(shù)據(jù)類型,則其聲明方式有下列幾種:</p><p>  //1.先聲明一個(gè)bdata存儲器形式的變量,再聲明屬于該變量的sbit變量,例如:</p><p>  //char bdata scan; 聲明scan為bdata存儲器類型

34、的字符</p><p>  //sbit input_0=scan^0; 聲明input_0為scan變量的bit 0</p><p>  //2.先聲明一個(gè)sfr變量,再聲明屬于該變量的sbit變量,例如:</p><p>  //sfr P0=0x80;聲明P0為0X80存儲器位置,即P0</p><p>  //sbit

35、 P0_0=P0^0;聲明P0_0為P0變量的bit0</p><p>  //3.直接指定存儲器位置,例如要聲明P0的bit0,則</p><p>  //sbit P0_0=0X80^0; 聲明P0_0為0x80地址的bit0</p><p>  uint i,j,k;</p><p>  //------------------

36、-------------------------------------------------</p><p><b>  //主程序</b></p><p>  //-------------------------------------------------------------------</p><p>  void main

37、() //主程序開始</p><p><b>  {</b></p><p><b>  i=j=k=0;</b></p><p>  P2=0xff; //開始時(shí)全部關(guān)閉</p><p>  TMOD=0X02; //定時(shí)/計(jì)數(shù)器工作方式寄存器低4位</p>

38、<p>  //T0定時(shí)器0工作于模式2 位數(shù):8位計(jì)數(shù)范圍:0-255 具有自動加載功能</p><p>  TH0=256-200;//200us定時(shí)</p><p>  TL0=256-200;</p><p>  IE=0X82; //中斷使能寄存器IE,相當(dāng)于EA=1;ET0=1;</p><p>  TR0=1;

39、 //定時(shí)器/計(jì)數(shù)器控制寄存器TCOD Timer0的啟動開關(guān)</p><p>  while(1); //無窮循環(huán)</p><p><b>  }</b></p><p>  //-------------------------------------------------------------</p>&l

40、t;p><b>  //T0中斷函數(shù)</b></p><p>  //--------------------------------------------------------------</p><p>  void LED_Flash_and_Scroll() interrupt 1</p><p>  { //每累計(jì)若干次定

41、時(shí)器中斷才執(zhí)行一次閃爍</p><p>  if(++k<35)return; //if條件語句</p><p><b>  k=0;</b></p><p>  switch(i)//多分支選擇語句,switch語句開始 </p><p><b>  {</b></p>

42、<p>  case 0:B1=!B1;//藍(lán)燈閃爍</p><p>  break; //終止執(zhí)行switch或循環(huán)語句</p><p>  case 1:G1=!G1;//綠燈閃爍</p><p><b>  break;</b></p><p>  case 2:R1=!R1; /

43、/紅燈閃爍</p><p><b>  break;</b></p><p>  case 3:Y1=!Y1; //黃燈閃爍</p><p>  break; //退出switch語句</p><p>  default:i=0;</p><p><b>  }</

44、b></p><p>  if(++j<150)//每次LED持續(xù)閃爍一段時(shí)間</p><p>  return;//從函數(shù)返回語句</p><p><b>  j=0;</b></p><p>  P2=0xff; //關(guān)閉顯示</p><p>  i++;//切換到下一

45、LED</p><p>  //符號:++ ,功能: 加1 ,范例:i++ ,說明:執(zhí)行運(yùn)算后再將X變量的值加1</p><p>  //符號:-- ,功能: 減1 ,范例:i-- ,說明:執(zhí)行運(yùn)算后再將X變量的值減1</p><p><b>  } </b></p><p>  4.2.3實(shí)驗(yàn)仿真結(jié)果圖:&l

46、t;/p><p>  圖4.2實(shí)驗(yàn)仿真結(jié)果圖</p><p><b>  結(jié) 論</b></p><p>  定時(shí)器控制4只LED滾動閃爍對于單片機(jī)初學(xué)者有著非常重要的作用。本文完成了基于單片機(jī)的定時(shí)器控制4只LED滾動閃爍系統(tǒng)的設(shè)計(jì)與模擬。包括閃爍方案的設(shè)計(jì),系統(tǒng)的硬件開發(fā)、軟件編程與仿真調(diào)試等。在論文完成過程中,主要做的工作有:</p&

47、gt;<p> ?。?)確定LED滾動閃爍系統(tǒng)具體的通行方案以及要求其他多功能的實(shí)現(xiàn)。</p><p> ?。?)以ATMEL公司的AT89S51單片機(jī)為核心進(jìn)行系統(tǒng)硬件設(shè)計(jì),輸入量包括:輸出LED燈亮滅狀態(tài)及時(shí)間顯示。</p><p>  通過單片機(jī)課程設(shè)計(jì),我不僅加深了對單片機(jī)理論的理解,將理論很好地應(yīng)用到實(shí)際當(dāng)中去,而且我還學(xué)會了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝

48、自己,超越自己。創(chuàng)新,是要我們學(xué)會將理論很好地聯(lián)系實(shí)際,并不斷地去開動自己的大腦,從為人類造福的意愿出發(fā),做自己力所能及的,別人卻沒想到的事。使之不斷地戰(zhàn)勝別人,超越前人。同時(shí),更重要的是,我在這一設(shè)計(jì)過程中,學(xué)會了堅(jiān)持不懈,不輕易言棄。設(shè)計(jì)過程,也好比是我們?nèi)祟惓砷L的歷程,常有一些不如意,也許這就是在對我們提出了挑戰(zhàn),勇敢過,也戰(zhàn)勝了,勝利的鐘聲也就一定會為我們而敲響。</p><p><b>  參

49、考文獻(xiàn)</b></p><p>  【1】謝維成. 單片微型計(jì)算機(jī)原理及應(yīng)用.清華大學(xué)出版社,2009. </p><p>  【2】余錫存 曹國華.單片機(jī)原理及接口技術(shù).西安電子科技大學(xué)出版社,2011.</p><p>  【3】雷麗文 等.微機(jī)原理與接口技術(shù).電子工業(yè)出版社,1997.</p><p>  【4】吳黎明, 王

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論