找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机新人求助!!

[复制链接]
跳转到指定楼层
楼主
   普中科技的开发板,用74H595控制8*8 led 点阵显示爱心,调试总是失败,点阵全部点亮。代码如下,内附原理图。请求大佬们帮助。
#include <reg51.h>
#include <intrins.h>
#define u8 unsigned char
#define u16 unsigned int
sbit SER=P3^4;
sbit RCLK=P3^5;
sbit SRCLK=P3^6;
u8 ledduan[]={0x38,0x44,0x42,0x21,
                   0x42,0x44,0x38,0x00};
u8 ledwei[]={0x7f,0xbf,0xdf,0xef,
                  0xf7,0xfb,0xfd,0xfe};

void delay(u8 i)
{
  while(i--);
}

void sendByte(u8 dat)
{
        u8 i;
        SRCLK=0;
        RCLK=0;
  for(i=0;i<8;i++)
        {
                SRCLK=1;
                SER=dat>>7;
                dat<<=1;
                _nop_();
                _nop_();
                SRCLK=0;
        }
  RCLK=1;
        _nop_();
        _nop_();
        RCLK=0;
}


void main()
{
  u8 i;
  while(1)
        {
                P0=0x7f;
                for(i=0;i<8;i++)
                {
                  P0=ledwei[i];
                        sendByte(ledduan[i]);
                        delay(100);
               
                }
        }
}

IMG_20170902_090558.jpg (7.75 MB, 下载次数: 48)

IMG_20170902_090558.jpg

QQ图片20170902090956.jpg (8.12 MB, 下载次数: 46)

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

使用道具 举报

沙发
ID:190832 发表于 2017-9-2 13:39 | 只看该作者
哥们,你是不是彪,不管什么图形用两个char都能表示了(一个横坐标一个纵坐标),哪用数组???
回复

使用道具 举报

板凳
ID:230125 发表于 2017-9-2 19:15 | 只看该作者
hange_v 发表于 2017-9-2 13:39
哥们,你是不是彪,不管什么图形用两个char都能表示了(一个横坐标一个纵坐标),哪用数组???

我刚开时自学单片机,你说的我不是很懂用74H595怎么能通过两个char就控制点阵?能给我详细解释一下吗,谢谢
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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