找回密码
 立即注册

QQ登录

只需一步,快速开始

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

点阵16*64仿真和单片机代码,ls374触发器实现

[复制链接]
跳转到指定楼层
楼主
16*64点阵仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


废话不多说,保证能用。

单片机源程序如下:
  1. #include <reg52.h>
  2. #include <ziku.h>

  3. //P0口数据口
  4. //P1口为控制口
  5. //P2口列码低
  6. //P3口列码高

  7. sbit ct0=P1^0;
  8. sbit ct1=P1^1;
  9. sbit ct2=P1^2;
  10. sbit ct3=P1^3;
  11. sbit ct4=P1^4;
  12. sbit ct5=P1^5;
  13. sbit ct6=P1^6;
  14. sbit ct7=P1^7;

  15. void Delay1ms()                //@12.000MHz
  16. {
  17.         unsigned char i, j;

  18.         i = 2;
  19.         j = 239;
  20.         do
  21.         {
  22.                 while (--j);
  23.         } while (--i);
  24. }

  25. void control_lock(unsigned char hang)
  26. {
  27.         switch (hang)
  28.         {
  29.                 case 0:  ct0=0;ct0=1;break;
  30.                 case 1:  ct1=0;ct1=1;break;
  31.                 case 2:  ct2=0;ct2=1;break;
  32.                 case 3:  ct3=0;ct3=1;break;
  33.                 case 4:  ct4=0;ct4=1;break;
  34.                 case 5:  ct5=0;ct5=1;break;
  35.                 case 6:  ct6=0;ct6=1;break;
  36.                 case 7:  ct7=0;ct7=1;break;
  37.         }
  38.                
  39. }
  40. void control_key(unsigned char hang)
  41. {
  42.                 switch (hang)
  43.         {
  44.                 case 0:  ct0=1;ct0=0;break;
  45.                 case 1:  ct1=1;ct1=0;break;
  46.                 case 2:  ct2=1;ct2=0;break;
  47.                 case 3:  ct3=1;ct3=0;break;
  48.                 case 4:  ct4=1;ct4=0;break;
  49.                 case 5:  ct5=1;ct5=0;break;
  50.                 case 6:  ct6=1;ct6=0;break;
  51.                 case 7:  ct7=1;ct7=0;break;
  52.         }
  53. }

  54. void main()
  55. {
  56.         unsigned char i,j,k;    //循环变量
  57.     unsigned int lie=1;
  58.         
  59.     while(1)                        
  60.     {
  61.                         
  62.                         for(i=0;i<16;i++)
  63.                         {
  64.                                 P2=0;//行消隐
  65.                                 P3=0;
  66.                                 
  67.                                 for(j=0;j<4;j++)                        //4个字的一整有8个行单位
  68.                                 {
  69.                                         for(k=0;k<2;k++)                //每一个字有两单位行
  70.                                         {
  71.                                         P0=0xff;                                                //消隐
  72.                                                 
  73.                                         control_key(j*2+k);
  74.                                         P0=~tdcq[i*2+j*32+k];
  75.                                         control_lock(j*2+k);
  76.                                         }
  77.                                 }
  78.                                 
  79.                                 P2=lie;
  80.                                 P3=lie>>8;
  81.                                 lie<<=1;
  82.                                 if(lie==0) lie=1;
  83.                                 
  84.                                 Delay1ms();
  85.                         }
  86.     }
  87. }
复制代码

所有资料51hei提供下载:
16 64点阵屏仿真.zip (129.21 KB, 下载次数: 25)


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

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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