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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  單片機課程設計報告</b></p><p><b>  --簡易交通燈設計</b></p><p>  班級:09級通信工程二班</p><p><b>  學號: </b></p><p><b>  姓名: </b><

2、;/p><p><b>  指導老師: </b></p><p>  日期:2012年3月24日</p><p>  課題:簡易交通信號控制器</p><p><b>  課程設計目的: </b></p><p>  單片機課程設計是一門實踐課程,要求學生具有制作調試單片機最小系

3、統及外設的能力,能夠掌握單片機內部資源的使用。</p><p>  單片機課程設計內容包括硬件設計、制作及軟件編寫、調試,學生在熟練掌握焊接技術的基礎上,能熟練使用單片機軟件開發環境Keil C51編程調試,并使用STC ISP調試工具采用串口下載方式聯調制作的單片機最小系統。</p><p>  課程設計內容及要求:</p><p>  自制一個單片機最小系統,包

4、括串口下載、復位電路,采用內部定時器定時控制南北、東西的交通信號燈(采用LED模擬),交通信號燈由紅、黃、綠燈組成,東西、南北模擬路口由12路LED組成,其中南北、東西均采用并聯方式連接,雙向均有倒計時牌。</p><p><b>  控制方案如下:</b></p><p><b>  實現思路:</b></p><p>

5、  使用定時器0方式一及中斷實現精準定時,P0口控制兩組交通燈亮滅,P1,P2口分別控制路口倒計時牌十位和各位數值顯示,實現倒數功能!</p><p><b>  實現程序如下:</b></p><p>  #include<reg52.h></p><p>  #define uint unsigned int</p>

6、<p>  #define uchar unsigned char</p><p>  uint i=0,num=0;</p><p>  uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,</p><p>  0x6d,0x7d,0x07,0x7f,0x6f};// 顯示段碼值0~9</p>&l

7、t;p>  sbit dxgreen=P1^0;</p><p>  sbit dxyellow=P1^1;</p><p>  sbit dxred=P1^2;</p><p>  sbit nbgreen=P1^3;</p><p>  sbit nbyellow=P1^4;</p><p>  sbit n

8、bred=P1^5;</p><p>  sbit gewei=P1^6;</p><p>  sbit shiwei=P1^7;</p><p>  void main()</p><p><b>  {</b></p><p><b>  P1=0xff;</b><

9、;/p><p>  TMOD = 0x01; //使用模式1,16位定時器</p><p>  TH0=(65536-50000)/256; //定時50ms,裝初值</p><p>  TL0=(65536-50000)%256;</p><p>  EA=1; //總中斷打開</p><p&

10、gt;  ET0=1; //定時器中斷打開</p><p><b>  TR0=1; </b></p><p><b>  while(1)</b></p><p><b>  {</b></p><p><b>  if(i==20)</

11、b></p><p><b>  {</b></p><p><b>  i=0;</b></p><p><b>  num++;</b></p><p>  if(num>=1&num<=30)</p><p><b&

12、gt;  {</b></p><p>  if(num>=1&num<=10)</p><p><b>  {</b></p><p>  if(num==1)</p><p><b>  {</b></p><p><b> 

13、 nbred=0;</b></p><p><b>  dxred=1;</b></p><p>  dxgreen=0;</p><p><b>  }</b></p><p><b>  shiwei=1;</b></p><p>  P

14、0=table[2];</p><p><b>  shiwei=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[10-num];</p><p><b>  gewei=0;</b></p><p&

15、gt;<b>  }</b></p><p>  if(num>=11&num<=20)</p><p><b>  {</b></p><p><b>  shiwei=1;</b></p><p>  P0=table[1];</p>&l

16、t;p><b>  shiwei=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[20-num];</p><p><b>  gewei=0;</b></p><p><b>  }</b>

17、</p><p>  if(num>=21&num<=30)</p><p><b>  {</b></p><p><b>  shiwei=1;</b></p><p>  P0=table[0];</p><p><b>  shiwei

18、=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[30-num];</p><p><b>  gewei=0;</b></p><p>  if(num>=23&num<=27) </p>&l

19、t;p><b>  {</b></p><p>  dxgreen=~dxgreen;</p><p><b>  }</b></p><p>  if(num>=28&num<=30)</p><p><b>  {</b></p>&

20、lt;p>  dxgreen=1;</p><p>  dxyellow=0;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(num>=31&

21、amp;num<=60)</p><p><b>  {</b></p><p>  if(num>=31&num<=40)</p><p><b>  {</b></p><p>  if(num==31)</p><p><b>  {

22、</b></p><p>  dxyellow=1;</p><p><b>  dxred=0;</b></p><p><b>  nbred=1;</b></p><p>  nbgreen=0;</p><p><b>  }</b>

23、</p><p><b>  shiwei=1;</b></p><p>  P0=table[2];</p><p><b>  shiwei=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[4

24、0-num];</p><p><b>  gewei=0;</b></p><p><b>  }</b></p><p>  if(num>=41&num<=50)</p><p><b>  {</b></p><p><

25、b>  shiwei=1;</b></p><p>  P0=table[1];</p><p><b>  shiwei=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[50-num];</p><p&

26、gt;<b>  gewei=0;</b></p><p><b>  }</b></p><p>  if(num>=51&num<=60)</p><p><b>  {</b></p><p><b>  shiwei=1;</b&g

27、t;</p><p>  P0=table[0];</p><p><b>  shiwei=0;</b></p><p><b>  gewei=1;</b></p><p>  P2=table[60-num];</p><p><b>  gewei=0;&l

28、t;/b></p><p>  if(num>=53&num<57) </p><p><b>  {</b></p><p>  nbgreen=~nbgreen;</p><p><b>  } </b></p><p>  if(num>

29、=58&num<=60)</p><p><b>  {</b></p><p>  nbgreen=1;</p><p>  nbyellow=0;</p><p><b>  }</b></p><p><b>  }</b><

30、/p><p><b>  }</b></p><p>  if(num==61) </p><p><b>  {</b></p><p><b>  num=0;</b></p><p>  nbyellow=1;</p><

31、p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void timer0() interrupt 1 </p>&l

32、t;p><b>  {</b></p><p>  TH0=(65536-50000)/256; //定時50ms,裝初值</p><p>  TL0=(65536-50000)%256;</p><p><b>  i++;</b></p><p><b>  }</b

33、></p><p>  Proteus仿真結果如下:</p><p><b>  課程設計心得體會:</b></p><p>  其實在之前的單片機課程學習的時候,就發現自己對單片機比較感興趣了,自己買了個單片機開發板學習了一些簡單控制的教程,這些都為我這次成功的單片機課程設計打下了基礎,本次單片機課程設計一共歷時5天,從拿到課程開始,發

34、現和數電課程設計的課題差不多,當時的想法就是做一個不一樣的東西,呵呵,所以就選擇了做交通燈的設計。話說我編程的時候遇到了很多問題,導致仿真的時候現象老是不正確,后來經過積極向同學和學長詢問和請教,最終完全成功的實現了正確仿真,不過程序里基本上全是使用的if語句,之所以選擇使用if語句,是因為自我感覺if語句的可讀性好些,呵呵,但是后來,也看到了一些學長們同樣課題的編程,發現他們的代碼比我的要精簡高效些,我發現需要學習和提高的地方還有很多

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論