找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3729|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

采用8*8LED動態(tài)顯示文字演示單片機程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:124177 發(fā)表于 2017-4-27 21:17 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
發(fā)下采用8*8LED動態(tài)顯示文字演示單片機程序 大家可以參考下.


單片機源程序:
  1. /*********************************************************************/
  2. //            
  3. //                  采用8*8LED動態(tài)顯示文字演示程序
  4. /*********************************************************************/
  5. //使用AT89C52單片機,12MHZ晶振,P0口輸出一行數(shù)據(jù),P2口作行掃描,用共陽LED管
  6. //P1口接三個按鍵,用于逐字顯示、向上滾動顯示文字、暫停備用。
  7. //                  
  8. #include "reg51.h"
  9. #define char unsigned char
  10. #define int unsigned int
  11. //
  12. char key,keytmp;
  13. char code distab[]=
  14. {
  15. /********電子設(shè)計8*8字模********************/

  16. 0x10,0xFE,0x92,0x92,0xFE,0x92,0x10,0x10,
  17. 0xFE,0x10,0x10,0xFE,0x10,0x10,0x10,0xFE,
  18. 0x00,0x6C,0x92,0x82,0x44,0x28,0x10,0x00,
  19. 0x00,0x78,0x04,0x04,0x04,0x04,0x04,0x78,
  20. 0x00,0x6C,0x92,0x82,0x44,0x28,0x10,0x00,


  21. };
  22. //
  23. char code  scan_con[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};   // 列掃描控制字
  24. //
  25. //
  26. //**********按鍵掃描函數(shù)***********//
  27. void keyscan()
  28. {
  29. key=(~P1)&0x0f;           //讀入鍵值
  30. if(key!=0)                //
  31. {
  32.   while(((~P1)&0x0f)!=0);  //等待按鍵釋放
  33.   keytmp=key;              // 鍵值存放
  34.   }
  35. }
  36. //
  37. //
  38. //********1毫秒延時程序************//
  39. delay1ms(int t)
  40. {
  41. int i,j;
  42. for(i=0;i<t;i++)
  43.    for(j=0;j<30;j++)
  44.      keyscan();
  45. }
  46. //
  47. //
  48. /***********功能程序**********/
  49. /***********逐字顯示**********/
  50. fun0()
  51. {
  52. int m,n,h;
  53. for(h=0;h<40;h=h+8)
  54. {for(n=0;n<100;n++)
  55.    {for(m=0;m<8;m++)
  56.      {P0=distab[m+h];P2=scan_con[m];delay1ms(1);}
  57.    }
  58. }
  59. }
  60. //
  61. /***********向上滾動顯示**********/
  62. fun1()
  63. {
  64. int m,n,h;
  65. for(h=0;h<40;h++)        //控制顯示字?jǐn)?shù)(32/8=4個)
  66. {for(n=0;n<30;n++)      //控制幀移動速度
  67.    {for(m=0;m<8;m++)     //顯示1幀掃描(分8行,每行亮1毫秒)
  68.      {P0=distab[m+h];P2=scan_con[m];delay1ms(1);}
  69.    }
  70. }
  71. }
  72. //
  73. //
  74. //*********主程序**********//
  75. main()
  76. {
  77. keytmp=1;              //上電自動演示功能0)
  78. while(1)
  79. {


  80. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

下載:
bb.zip (26.16 KB, 下載次數(shù): 14)

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表