其他分享
首页 > 其他分享> > 51单片机自学笔记(十)——8×8LED点阵

51单片机自学笔记(十)——8×8LED点阵

作者:互联网

LED点阵

LED点阵屏简介
LED点阵屏通过LED组成,以灯珠亮灭来显示文字、图片、动画、视频等,LED点阵显示制作简单,安装方便,被广泛应用于各种场合。
8×8LED点阵屏电路原理图
8×8LED点阵
74HC595芯片介绍
74HC595是8位串行输入/输出或者并行输出移位寄存器,具有高阻关断状态。
特点:
8位串行输入、8位串行或并行输出、存储状态寄存器,三种状态、输出寄存器可以直接清除、100MHz的移位频率。
输出能力:
并行输出,总线驱动、串行输出(标准)、中等规模集成电路。
74HC595
实例编程
利用8×8LED点阵显示数字0:

#include <reg51.h>
#include <intrins.h>

typedef unsigned char u8;
typedef unsigned int u16;

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

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

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

void HC595(u8 dat)
{
	u8 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()
{
	u8 i;
  while(1)
	{
		for(i=0;i<8;i++)
		{
			P0=0x7f;
			P0=ledwei[i];
			HC595(ledduan[i]);
			delay(100);
			HC595(ledduan[0x00]);
		}
	}
}

标签:输出,LED,u8,0x00,51,单片机,串行,8LED,点阵
来源: https://blog.csdn.net/qq_47342178/article/details/122500869