普中开源电子分享网

 找回密码
 立即注册
搜索
查看: 1374|回复: 0

A2开发板,8*8LED点亮一只

[复制链接]

1

主题

3

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2022-3-12 14:59:46 | 显示全部楼层 |阅读模式
1金钱
头文件用52时,刚把代码烧录进去时是一只灯,按下两次开关,就变成1列灯亮了,有时候是几只亮,有时候是一列全亮
代码:
#include "reg52.h"//如果是52,则第一列全亮
#include "intrins.h"
typedef unsigned char u8;
typedef unsigned int u16;

sbit SRCLK=P3^6;
//sbit RCLK=P3^5;
sbit SET=P3^4;


void Hc595SendByte(u8 dat)
{
        u8 a;
        for(a=0;a<8;a++)
        {
                SET=dat>>7;
                dat<<=1;
                SRCLK=0;
                _nop_();
                SRCLK=1;
                _nop_();        
        }
        RCLK=0;
        _nop_();
        RCLK=1;
}

void main()
{       
        P0=0x7f;
        while(1)
        {
                Hc595SendByte(0x80);
        }
}


改成51头文件就跟公司给的效果一样了,虽然有闪影
代码:
#include "reg52.h"//如果是52,则第一列全亮
#include "intrins.h"
typedef unsigned char u8;
typedef unsigned int u16;

sbit SRCLK=P3^6;
//sbit RCLK=P3^5;
sbit SET=P3^4;


void Hc595SendByte(u8 dat)
{
        u8 a;
        for(a=0;a<8;a++)
        {
                SET=dat>>7;
                dat<<=1;
                SRCLK=0;
                _nop_();
                SRCLK=1;
                _nop_();        
        }
        RCLK=0;
        _nop_();
        RCLK=1;
}

void main()
{       
        P0=0x7f;
        while(1)
        {
                Hc595SendByte(0x80);
        }
}

我知道答案 本帖寻求最佳答案回答被采纳后将获得系统奖励10 金钱 , 目前已有0人回答

回复

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2024-4-29 07:21 , Processed in 0.086694 second(s), 29 queries .

Powered by 论坛搭建 X3.4

Copyright © 2001-2021, Tencent Cloud.

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