普中开源电子分享网

 找回密码
 立即注册
搜索
查看: 5574|回复: 3

为什么8x8点阵全亮,不能显示0

 关闭 [复制链接]

2

主题

4

帖子

19

积分

新手上路

Rank: 1

积分
19
发表于 2016-12-2 11:02:58 | 显示全部楼层 |阅读模式
#include<reg51.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
#define TIME 1

sbit SRCLK=P3^6;
sbit RCLK=P3^5;
sbit SER=P3^4;

uchar ledduan[]={0x00,0x00,0x3e,0x41,0x41,0x41,0x3e,0x00};
uchar ledwei[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};

void delay(uint z)
{
        uint i,j;
        for(i=z;i>0;i--)
                for(j=110;j>0;j--);
}       
                                               
void Hc595SendByte(uchar dat)
{
        uchar a;
        SRCLK=0;
        RCLK=0;
        for(a=0;a<8;a++)
        {
                SER=dat>>7;
                dat<<=1;
                SRCLK=1;
                _nop_();
                _nop_();
                SRCLK=0;
        }
        RCLK=1;
        _nop_();
        _nop_();
        RCLK=0;
}


void main()
{
        uchar i;
        while(1)
        {
                P0=0x7f;
                for(i=0;i<8;i++)
                {
                        P0=ledwei[i];
                        Hc595SendByte(ledduan[i]);
                        delay(TIME);
                        Hc595SendByte(0x00);
                }
        }
}


回复

使用道具 举报

2

主题

4

帖子

19

积分

新手上路

Rank: 1

积分
19
 楼主| 发表于 2016-12-2 11:33:31 | 显示全部楼层
我已经解决了,OE要低电平,才有效,把那个短接片拔掉就行了
回复 支持 1 反对 0

使用道具 举报

2

主题

3

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2016-12-4 21:56:36 | 显示全部楼层
hushun 发表于 2016-12-2 11:33
我已经解决了,OE要低电平,才有效,把那个短接片拔掉就行了

哪个短接片
回复 支持 反对

使用道具 举报

4

主题

15

帖子

50

积分

注册会员

Rank: 2

积分
50
发表于 2017-3-8 22:03:41 | 显示全部楼层
膜拜,解决了我一周来的问题
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|普中开源电子分享网 粤ICP备16123577号-2

GMT+8, 2024-4-20 12:38 , Processed in 0.754094 second(s), 31 queries .

Powered by 论坛搭建 X3.4

Copyright © 2001-2021, Tencent Cloud.

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