單片機(jī)課程設(shè)計(jì)---16×16 led廣告屏_第1頁
已閱讀1頁,還剩10頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  單片機(jī)課程設(shè)計(jì)實(shí)驗(yàn)說明書</p><p>  題目:16×16 LED廣告屏 </p><p><b>  班級(jí): </b></p><p><b>  組別: </b></p><p><b>  目錄</b><

2、/p><p>  課題名稱…………………………………………3</p><p>  單片機(jī)組成部分…………………………………3</p><p>  硬件電路設(shè)計(jì)……………………………………3</p><p>  16×16點(diǎn)陣LED顯示屏上滾屏顯示原理…….3</p><p>  16×16點(diǎn)陣LED顯示

3、屏上滾屏顯示原理圖….4</p><p>  附錄………………………………………………5</p><p>  課題名稱:16×16 LED廣告屏</p><p><b>  實(shí)驗(yàn)?zāi)康模?lt;/b></p><p>  學(xué)習(xí)單片機(jī)的使用方法和簡單的編程原理</p><p>  通過單片機(jī)實(shí)現(xiàn)1

4、6×16LED廣告屏顯示簡單的漢字和圖形</p><p><b>  單片機(jī)組成部分</b></p><p>  圖1 系統(tǒng)結(jié)構(gòu)框圖</p><p><b>  硬件電路設(shè)計(jì)</b></p><p>  本電路是由AT89C51單片機(jī)為控制核心,低功耗;時(shí)鐘源電路有很多種,比如阻容低速時(shí)

5、鐘源、普通晶體時(shí)鐘源、帶緩沖放大的晶體時(shí)鐘源等等,考慮到電路穩(wěn)定及材料選購等方面,決定采用普通晶體時(shí)鐘源,其中晶體用12MHZ的石英晶振;復(fù)位電路結(jié)合實(shí)際應(yīng)用功能的實(shí)現(xiàn),采用上電復(fù)位;顯示部分由16×16點(diǎn)陣LED顯示屏顯示;行驅(qū)動(dòng)電路采用74LS154,列驅(qū)動(dòng)電路采用74LS595。</p><p>  16×16點(diǎn)陣LED顯示屏上滾屏顯示原理</p><p>  在

6、UCDOS中文宋體字庫中,每一個(gè)字由16行16列的點(diǎn)陣組成顯示。如果要在16×16點(diǎn)陣屏以上滾屏的方式顯示以字體,則需以以下方式進(jìn)行顯示。</p><p>  在16×16點(diǎn)陣屏中,我們可以把點(diǎn)陣屏看成16行LED組成,且每行有16個(gè)LED燈。在本例中單片機(jī)首先將第二行的顯示信息給第一行,使第一行顯示圖像變成第二行所要顯示的。以“我”字為例,原第一行由左到右排列,為A滅,B滅,C滅,D滅,E滅

7、,F(xiàn)亮,G亮,H滅,I滅,J亮,K滅,M滅,N滅,O滅,P滅。即二進(jìn)制1111100110111111轉(zhuǎn)換為16進(jìn)制為F9h,BFh。原第二行由左到右排列,為A滅,B滅,C亮,D亮,E亮,F(xiàn)滅,G滅,H滅,I滅,J亮,K滅,L亮,M滅,N滅,O滅,P滅。即二進(jìn)制1100011110101111轉(zhuǎn)換為16進(jìn)制為C7h,Afh。單片機(jī)將第二行信息給第一行取代第一行原信息,故第一行由左到右排列,為A滅,B滅,C滅,D滅,E滅,F(xiàn)亮,G亮,H滅

8、,I滅,J亮,K滅,L滅,M滅,N滅,O滅,P滅。接著將第一行的信息給第十六行,第三行的信息給第二行,第四行的信息給第三行,依此類推。按照這個(gè)方法,繼續(xù)進(jìn)行下面的掃描。最終點(diǎn)陣屏在視覺上的顯示效果是“我”字慢慢往上移。</p><p>  16×16點(diǎn)陣LED顯示屏左跑馬顯示原理圖</p><p>  圖2 中斷原理 圖3 調(diào)用子

9、程序原理</p><p>  圖4 顯示驅(qū)動(dòng)程序流程圖 圖5 系統(tǒng)主程序流程圖</p><p><b>  附錄</b></p><p><b>  附錄1:電路圖</b></p><p><b>  圖 6總電路圖</b><

10、;/p><p>  圖 7 74LS154行驅(qū)動(dòng)模塊</p><p>  圖8 2個(gè)74HC595級(jí)聯(lián)</p><p>  附錄二:實(shí)驗(yàn)儀器清單</p><p>  1、51單片機(jī)開發(fā)板</p><p>  2、LED燈256個(gè)及配套燈座256個(gè)</p><p>  3、三極管8550二十個(gè)&

11、lt;/p><p><b>  4、排針40個(gè)</b></p><p>  5、杜邦線、導(dǎo)線若干條</p><p>  6、74HC589芯片及配套芯片座2套</p><p>  7、芯片74LS154及配套芯片座1套</p><p>  8、電阻47Ω16個(gè),200Ω16個(gè)</p>&

12、lt;p>  附錄三:系統(tǒng)程序清單</p><p>  #include <reg51.h></p><p>  #define BLKN 2 //列鎖存器數(shù)</p><p>  sbit G = 0x97; //P1.7為顯示允許控制信號(hào)端口</p><p>  sbit RCLK = 0x96;

13、 //P1.6為輸出鎖存器時(shí)鐘信號(hào)端</p><p>  sbit SCLR = 0x95; //P1.5為移位寄存器清○端</p><p>  void delay(unsigned int); //延時(shí)函數(shù)</p><p>  unsigned char data dispram[32]; //顯示緩存</p><p&g

14、t;  void main(void)</p><p><b>  { </b></p><p>  unsigned char code Bmp[][32]={</p><p><b>  {</b></p><p>  0xF9,0xBF,0xC7,0xAF,0xF7,0xB7,0xF7,0xB

15、7,</p><p>  0xF7,0xBF,0x00,0x01,0xF7,0xBF,0xF7,0xB7,</p><p>  0xF1,0xD7,0xC7,0xCF,0x37,0xDF,0xF7,0xAF,</p><p>  0xF6,0x6D,0xF7,0xF5,0xD7,0xF9,0xEF,0xFD</p><p><b>

16、  }/*我*/,</b></p><p><b>  {</b></p><p>  0xFF,0x07,0xC0,0x6F,0xED,0xEF,0xF6,0xDF,</p><p>  0xC0,0x01,0xDD,0xFD,0xBD,0xFF,0xC0,0x03,</p><p>  0xFB,0xFF

17、,0xF8,0x0F,0xF3,0xDF,0xF4,0xBF,</p><p>  0xEF,0x3F,0x9C,0xCF,0x73,0xF1,0xCF,0xFB</p><p><b>  }/*愛*/,</b></p><p><b>  {</b></p><p>  0xF7,0xDF,0x

18、F9,0xCF,0xFB,0xBF,0xC0,0x07,</p><p>  0xDE,0xF7,0xC0,0x07,0xDE,0xF7,0xDE,0xF7,</p><p>  0xC0,0x07,0xDE,0xF7,0xFE,0xFF,0x00,0x01,</p><p>  0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF<

19、/p><p><b>  }/*單*/,</b></p><p><b>  {</b></p><p>  0xFF,0xBF,0xEF,0xBF,0xEF,0xBF,0xEF,0xBB,</p><p>  0xE0,0x01,0xEF,0xFF,0xEF,0xFF,0xEF,0xFF,</p

20、><p>  0xE0,0x0F,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,</p><p>  0xDF,0xEF,0xDF,0xEF,0xBF,0xEF,0x7F,0xEF</p><p><b>  }/*片*/,</b></p><p><b>  {</b></p>

21、;<p>  0xEF,0xFF,0xEF,0x07,0xEF,0x77,0x01,0x77,</p><p>  0xEF,0x77,0xEF,0x77,0xC7,0x77,0xCB,0x77,</p><p>  0xAB,0x77,0xAF,0x77,0x6E,0xF7,0xEE,0xF5,</p><p>  0xED,0xF5,0xED,0x

22、F5,0xEB,0xF9,0xEF,0xFF</p><p><b>  }/*機(jī)*/,</b></p><p><b>  {</b></p><p>  0xF8,0x3F,0xE7,0xCF,0xDF,0xF7,0xBF,0xFB,</p><p>  0xB3,0x9B,0x73,0x9D,

23、0x7F,0xFD,0x7F,0xFD,</p><p>  0x6F,0xED,0x67,0xCD,0xB3,0x9B,0xB8,0x3B,</p><p>  0xDF,0xF7,0xE7,0xCF,0xF8,0x3F,0xFF,0xFF</p><p><b>  }/**/</b></p><p><b&g

24、t;  };</b></p><p>  register unsigned char i,j,k,l;</p><p>  SCON = 0x00; //串口工作模式0:移位寄存器方式</p><p>  TMOD = 0x01; //定時(shí)器T0工作方式1:16位方式</p><

25、;p>  TR0 = 1; //啟動(dòng)定時(shí)器T0</p><p>  P1 = 0x3f; //P1端口初值:允許接收、鎖存、顯示</p><p>  IE = 0x82; //允許定時(shí)器T0中斷</p><p><b>  while (1)</

26、b></p><p><b>  {</b></p><p>  delay(2000); //延時(shí)2秒</p><p>  for (i=0;i<32;i++) //顯示效果:卷簾出</p><p><b>  {</b></p>&l

27、t;p>  dispram[i] = Bmp[5][i];</p><p><b>  if (i%2) </b></p><p>  delay(100);</p><p>  } </p><p>  delay(3000);</p><p>  

28、for (i=0; i<6; i++) //顯示效果:上滾屏</p><p><b>  {</b></p><p>  for (j=0; j<16; j++)</p><p><b>  {</b></p><p>  for (k=0; k<15; k++)<

29、/p><p><b>  {</b></p><p>  dispram[k*BLKN] = dispram[(k+1)*BLKN];</p><p>  dispram[k*BLKN+1] = dispram[(k+1)*BLKN+1];</p><p><b>  }</b></p>

30、<p>  dispram[30] = Bmp[i][j*BLKN];</p><p>  dispram[31] = Bmp[i][j*BLKN+1];</p><p>  delay(100);</p><p><b>  }</b></p><p>  } <

31、/p><p>  delay(3000);</p><p>  for (i=0; i<6; i++) //顯示效果:左跑馬</p><p><b>  {</b></p><p>  for (j=0; j<2; j++)</p><p>  for (k=1; k<9;

32、 k++)</p><p><b>  {</b></p><p>  for (l=0; l<16; l++)</p><p><b>  {</b></p><p>  dispram[l*BLKN] = dispram[l*BLKN]<<1 | dispram[l*BLKN+

33、1]>>7;</p><p>  dispram[l*BLKN+1] = dispram[l*BLKN+1]<<1 | Bmp[i][l*BLKN+j]>>(8-k);</p><p><b>  }</b></p><p>  delay(100);</p><p><b>

34、;  }</b></p><p><b>  }</b></p><p>  delay(3000);</p><p>  for (i=0;i<32;i++) //顯示效果:卷簾入</p><p><b>  {</b></p><p>  d

35、ispram[i] = 0x00;</p><p><b>  if (i%2) </b></p><p>  delay(100);</p><p>  } </p><p><b>  }</b></p><p><b>

36、  }</b></p><p><b>  /*延時(shí)函數(shù)*/</b></p><p>  void delay(unsigned int dt)</p><p><b>  {</b></p><p>  register unsigned char bt;</p><

37、;p>  for (; dt; dt--)</p><p>  for (bt=0; bt<255; bt++);</p><p><b>  }</b></p><p>  /*顯示屏掃描(定時(shí)器T0中斷)函數(shù)*/</p><p>  void leddisplay(void) interrupt 1 us

38、ing 1</p><p><b>  {</b></p><p>  register unsigned char i, j=BLKN;</p><p>  TH0 = 0xF8; //設(shè)定顯示屏刷新率每秒62.5幀</p><p>  TL0 = 0x30;</p><

39、;p>  i = P1; //讀取當(dāng)前顯示的行號(hào)</p><p>  i = ++i & 0x0f; //行號(hào)加1,屏蔽高4位</p><p><b>  do </b></p><p><b>  {</b></p><p>

40、;<b>  j--;</b></p><p>  SBUF = dispram[i*BLKN + j]; //送顯示數(shù)據(jù)</p><p>  while (!TI);</p><p><b>  TI = 0;</b></p><p><b>  }</b></p>

41、;<p>  while (j); //完成一行數(shù)據(jù)的發(fā)送</p><p>  G = 1; //消隱(關(guān)閉顯示)</p><p>  P1 &= 0xf0; //行號(hào)端口清○</p><p>  RCLK = 1;

42、//顯示數(shù)據(jù)打入輸出鎖存器</p><p>  P1 |= i; //寫入行號(hào)</p><p>  RCLK = 0; //鎖存顯示數(shù)據(jù)</p><p>  G = 0; //打開顯示</p><p><b>  }<

溫馨提示

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