找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2700|回复: 0
打印 上一主题 下一主题
收起左侧

24X24点阵单片机源程序加仿真图

[复制链接]
跳转到指定楼层
楼主
这个程序很容易移植更改增加或减少位数
24X24点阵仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


24X24点阵单片机源码:
  1. #include<reg52.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. uchar m,n,i,b;
  5. sbit hang1=P0^5;                        //上三行
  6. sbit hang2=P0^6;                        //中三行
  7. sbit hang3=P0^7;                        //下三行
  8. //选择列
  9. uchar code lie[24]={0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x9f,0x8f,0x1f,0x2f,0x3f,0x4f,0x5f,0x6f,0x7f};
  10.         //楷体
  11. uchar code hang[8][72]={

  12. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0xFF,0xFF,0xDF,0xEF,0xFF,0xDF,0xF7,0xDF,0xCD,0xFB,0x9F,0xED,0xFC,0xBF,0x00,0xFF,
  13. 0xFF,0xA2,0xFF,0xBF,0x6E,0xFF,0xCB,0x76,0xFE,0xE7,0xF6,0xFC,0xF7,0xF7,0xFF,0xFF,0xFF,0xFF,0x7F,0x00,0x80,0x7F,0xFF,0xFF,
  14. 0x7F,0xFF,0xFF,0xBF,0x7B,0xFF,0xBF,0xF4,0xFE,0x1F,0xCF,0xFC,0xBF,0x1F,0xF8,0xFF,0x7F,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"郑",0*/

  15. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC7,0xEF,0xFF,0xE1,0xF7,0xFF,0xFF,0xF9,0x8F,0x07,0xFE,0x1F,0xE0,0xFF,
  16. 0xFF,0xFF,0xFF,0xFF,0xF1,0xFF,0xFF,0xFF,0xFF,0xEF,0xFF,0xFE,0x1F,0x00,0xFC,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF9,0xFF,
  17. 0xFF,0xF3,0xFF,0xFB,0xFF,0xFF,0x03,0x00,0x80,0xF7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"州",1*/
  18.         
  19. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0xFF,0xF7,0xDF,0xFF,0xF7,0xEF,0xFF,0xF7,0xF7,
  20. 0xFF,0xF3,0xF3,0xFF,0xFB,0xFC,0xF7,0x03,0xFE,0x07,0xC0,0xFF,0xF7,0xBB,0xFF,0xFF,0x7B,0xFE,0xFF,0xFB,0xF8,0xFF,0xF9,0xF3,
  21. 0xFF,0xFD,0xE3,0xFF,0xFD,0xC7,0xFF,0xFD,0xCF,0xFF,0xFF,0xCF,0xFF,0xFF,0xDF,0xFF,0xFF,0xDF,0xFF,0xFF,0xDF,0xFF,0xFF,0xFF},/*"?",2*/

  22. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0xFF,0xFF,0x73,0xFF,0x7F,0x78,0xFF,0xFF,0x7E,0xFF,0xFF,0x7E,0xFF,0xE7,0x76,0xFF,
  23. 0xCF,0x76,0xFF,0xFF,0x7A,0xDF,0xFF,0x7A,0x9F,0xE7,0x9A,0x8F,0x4F,0x2B,0xC0,0x7F,0xB3,0xFF,0x3F,0xB3,0xFF,0x41,0xBF,0xFF,
  24. 0x73,0xBF,0xFF,0x7B,0xBF,0xFF,0x7F,0xBD,0xFF,0x7F,0xBC,0xFF,0x7F,0xBE,0xFF,0xFF,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"?",3*/

  25. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xF7,0xFF,0xFE,0xFB,0xFF,0xE6,0xFD,0xFF,0x4E,0xFE,0xFF,0x1E,0xFF,0x7F,0x00,0xFE,
  26. 0x7F,0x7C,0xFC,0xFF,0xFF,0xEF,0xFF,0xFB,0xF7,0xFF,0xFD,0xFB,0x7F,0x36,0xFC,0x03,0x05,0xFF,0xE3,0x7D,0xFF,0xFF,0xFE,0xFC,
  27. 0xFF,0xFE,0xF3,0x7F,0xF8,0xE7,0xFF,0xFC,0xC7,0xFF,0xFE,0xCF,0xFF,0xFF,0xCF,0xFF,0xFF,0xDF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"?",4*/

  28. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFD,0xFF,0xFF,0xFD,0xFF,0xF7,0xFD,0xEF,0xF7,0xFD,0xCF,0x83,0xFD,0x9F,0x33,0xFC,0xFF,0xFF,0xFD,
  29. 0xFF,0xFF,0xFB,0x7F,0x9F,0xFB,0x7F,0x80,0xFB,0xBF,0xCF,0xF7,0xCF,0xF7,0xF7,0xE7,0xF7,0xE7,0x67,0x7F,0xE0,0x7F,0x00,0xCE,
  30. 0x7F,0xF7,0xCF,0xBF,0xEF,0xCF,0xBF,0xC3,0xCF,0x3F,0xF0,0xEF,0xFF,0xFF,0xEF,0xFF,0xFF,0xEF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"?",5*/

  31. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0xFF,0xFF,0xE7,0xFF,0xFF,0xF3,0xFF,0xFF,0xF9,0xFF,0x7F,0x00,0xE0,0x0F,0xE3,0xFF,
  32. 0xC7,0xFF,0xFF,0xEF,0xF7,0xF8,0xFF,0x7B,0xFC,0xFF,0xFD,0xFF,0x7F,0xFE,0xFF,0x8B,0xF9,0xEF,0xC3,0xE6,0xC7,0xF7,0x06,0xE0,
  33. 0xFF,0xFE,0xFF,0x7F,0xFF,0xFF,0x7F,0x78,0xFF,0x7F,0x7C,0xFE,0x7F,0x7E,0xFC,0xFF,0xFE,0xFD,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"?",6*/

  34. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  35. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  36. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,},/*"空的",7*/

  37. };
  38. void delayms(uint tms)
  39. {
  40.         uint x,y;
  41.         for(x=tms;x>0;x--)
  42.          for(y=110;y>0;y--);
  43. }
  44. main()
  45. {
  46.         while(1)
  47.         {

  48.                 for(m=0;m<7;m++)
  49.                  for(b=0;b<24;b++)
  50.                  for(n=0;n<2;n++)                                                //n越大走的越慢,可以自行更改
  51.                   for(i=0;i<24;i++)                                        //每个字由24X3个字符组成
  52.                   {
  53.                    hang1=1;                                                                        
  54.                    P2=lie[i];
  55.                    P1=hang[m][3*(i+b)];
  56.                    hang1=0;
  57.                    P1=0xff;
  58.                    hang2=1;                                                                        
  59.                    P2=lie[i];
  60.                    P1=hang[m][3*(i+b)+1];
  61.                    hang2=0;
  62.                    P1=0xff;
  63.                                 hang3=1;                                                               
  64.                    P2=lie[i];
  65.                    P1=hang[m][3*(i+b)+2];
  66.                    hang3=0;
  67.                                 delayms(1);
  68.                    P1=0xff;
  69.                   }
  70.         }

  71. }
复制代码


所有资料51hei提供下载:
24X24点阵.rar (67.03 KB, 下载次数: 97)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表