ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

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

2022-01-14 20:01:39  阅读:202  来源: 互联网

标签:输出 LED u8 0x00 51 单片机 串行 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

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有