找回密码
 立即注册

QQ登录

只需一步,快速开始

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

这个程序为什么不能使8*8点阵做出流水灯的效果?

[复制链接]
跳转到指定楼层
楼主
  1. #include "reg51.h"
  2. #include "intrins.h”

  3. typedef unsigned char u8;
  4. typedef unsigned int u16;

  5. sbit SRCLK=P3^6;
  6. sbit RCLK=P3^5;
  7. sbit SER=P3^4;                        
  8.                            
  9. u8  ledhang[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
  10. u8  ledlie[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};

  11. void delay(u16 i)
  12. {
  13.      while(i--);
  14. }

  15. void Hc595SendByte(u8 dat)
  16. {
  17.    u8 a;
  18.    SRCLK=0;
  19.    RCLK=0;
  20.    for(a=0;a<8;a++)
  21.    {
  22.       SER=dat>>7;
  23.           dat<<=1;
  24.           SRCLK=1;
  25.       _nop_();
  26.           _nop_();
  27.           SRCLK=0;
  28.         }
  29.         RCLK=1;
  30.         _nop_();
  31.         _nop_();
  32.         RCLK=0;
  33. }

  34. void main()
  35. {
  36.     u8 i;
  37.     while(1)
  38.         {
  39.             P0=0x7f;
  40.             for(i=0;i<8;i++)
  41.                 {
  42.                      P0=ledhang[i];
  43.                          Hc595SendByte(ledlie[i]);
  44.                          delay(50000);
  45.                          Hc595SendByte(0x00);
  46.                  }
  47.         }
  48. }
复制代码

请问这个程序为什么不能使8*8点阵做出流水灯的效果
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:277550 发表于 2019-11-19 14:40 | 只看该作者
没图,硬件怎样连接的


~~~~~~~~~~~~
回复

使用道具 举报

板凳
ID:644682 发表于 2019-11-19 18:52 | 只看该作者
devcang 发表于 2019-11-19 14:40
没图,硬件怎样连接的

谢谢您

电路图.jpg (156.5 KB, 下载次数: 17)

电路图.jpg
回复

使用道具 举报

地板
ID:644682 发表于 2019-11-19 18:54 | 只看该作者
devcang 发表于 2019-11-19 14:40
没图,硬件怎样连接的

这个电路图数对的吗

电路图.jpg (156.5 KB, 下载次数: 19)

电路图.jpg
回复

使用道具 举报

5#
ID:584814 发表于 2019-11-20 07:57 | 只看该作者
u8  ledlie[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
咋都一样呢
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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