10,点阵 显示数字

本文详细解析了一段使用51单片机控制LED的程序代码,通过具体的代码示例,介绍了如何利用srclk、rclk和ser信号控制LED的显示,实现了LED的动态显示效果。代码中包含了延时函数、数据发送函数和主循环,通过对这些函数的解释,读者可以了解到51单片机编程的基本技巧。
AI助手已提取文章相关产品:

#include<reg52.h>
#include<intrins.h>

#define led P0

typedef unsigned char u8;
typedef unsigned int u16;

sbit srclk=P3^6;
sbit rclk=P3^5;
sbit ser=P3^4;

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

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

void dz(u8 i)
{
    u8 a;
    srclk=0;
    rclk=0;
    
    for(a=0;a<8;a++)
    {
        ser=i>>7;
        i<<=1;
        srclk=1;
        _nop_();
        _nop_();
        srclk=0;
    }
    rclk=1;
    _nop_();
    _nop_();
    rclk=0;
}


void main()
{
    u8 i;
    while(1)
    {
        for(i=0;i<8;i++)
        {
            dz(ledduan[i]);
            led=ledwei[i];
            delay(100);
            dz(0x00);
        }
    }
}

转载于:https://my.oschina.net/u/3506705/blog/930805

您可能感兴趣的与本文相关内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值