51单片机-实机演示(LED点阵)

目录

前言:

一.线位置

二.扩展

三.总结


前言:

这是一篇关于51单片机实机LED点阵的插线图和代码说明.另外还有一篇我写的仿真的连接在这:http://t.csdnimg.cn/ZNLCl,欢迎大家的点赞,评论,关注.

一.线位置

接线实机图.

引脚位置注意:

  1. *-*

P00->RE8

P01->RE7

P02->RE6

P03->RE5

P04->RE4

P05->RE3

P06->RE2

P07->RE1

  1. *-*

P34->SE

P35->RC

P36->SC
3. *-*

QQ1->Dp

.....

QA8->A

接下来上代码

cpp 复制代码
#include <reg51.h>
 
 
 
// void delay(unsigned int t)
// {
//     unsigned int i, j;
//     for (i = 0; i < t; i++) {
//         for (j = 0; j < 1275; j++) {
//             ; // 空循环,等待时间过去
//         }
//     }
// }
 
 
void main(void)
{
	
	P0 = 0 ;
	P2 = 0 ;
	while(1)
	{	 
		P0 = ~0x01 ;
		P2 = 0x01 ;
	}
}
	

就可以看到.随着P0,P2的改变,灯就会改变.

二.扩展

既然基本的已经会了,接下来就可以做点进阶的,比如显示数字0到9;

可以封装一下

u8 gled_row8={0x00,0x7C,0x82,0x82,0x82,0x7C,0x00,0x00};//LED点阵显示数字0的行数据

u8 gled_col8={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//LED点阵显示数字0的列数据

然后加上一个循环

while(1)

{

for(i=0;i<8;i++)//循环8次扫描8行、列

{

LEDDZ_COL_PORT=gled_coli;//传送列选数据

write_data(gled_rowi);//传送行选数据

delay_us(100);//延时一段时间,等待显示稳定

write_data(0x00);//消影

}

}

就可以实现了.下面是实机效果图,和完整的代码

cpp 复制代码
#include "reg52.h"

typedef unsigned int u16;	
typedef unsigned char u8;

sbit SRCLK=P3^6;	//移位寄存器时钟输入
sbit RCLK1=P3^5;		//存储寄存器时钟输入
sbit SER=P3^4; 		//串行数据输入

#define LEDDZ_COL_PORT	P0	//点阵列控制端口

u8 gled_row[8]={0x00,0x7C,0x82,0x82,0x82,0x7C,0x00,0x00};//LED点阵显示数字0的行数据
u8 gled_col[8]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//LED点阵显示数字0的列数据

void delay_us(u16 ten_us)
{
	while(ten_us--);	
}

void write_data(u8 dat)
{
	u8 i=0;
	
	for(i=0;i<8;i++)//循环8次即可将一个字节写入寄存器中
	{
		SER=dat>>7;//优先传输一个字节中的高位
		dat<<=1;//将低位移动到高位
		SRCLK=0;
		delay_us(1);
		SRCLK=1;
		delay_us(1);//移位寄存器时钟上升沿将端口数据送入寄存器中	
	}
	RCLK1=0;
	delay_us(1);
	RCLK1=1;//存储寄存器时钟上升沿将前面写入到寄存器的数据输出	
}

void main()
{	
	u8 i=0;

	while(1)
	{			
		for(i=0;i<8;i++)//循环8次扫描8行、列
		{
			LEDDZ_COL_PORT=gled_col[i];//传送列选数据
			write_data(gled_row[i]);//传送行选数据
			delay_us(100);//延时一段时间,等待显示稳定
			write_data(0x00);//消影	
		}								
	}		
}

三.总结

以下是关于 51 单片机实机演示 LED 点阵的总结:

51 单片机的作用

  • 作为控制核心,负责数据处理和信号输出。

LED 点阵特点

  • 可以显示各种图形、字符等丰富信息。
  • 由多个 LED 灯按矩阵排列组成。

实机演示的关键

  • 硬件连接:正确将 LED 点阵与 51 单片机引脚连接。
  • 编程控制:通过编写代码来控制 LED 点阵的显示内容。

实现步骤

  • 硬件搭建,确保连接可靠。
  • 初始化 51 单片机相关设置。
  • 设计显示数据和刷新逻辑。
  • 不断循环更新显示。

显示效果

  • 可以实现静态图像显示。
  • 也能实现动态的图像变化或动画效果。

注意事项

  • 要考虑电流驱动能力,避免损坏器件。
  • 优化显示算法以提高显示效果和效率。

应用领域

  • 电子广告牌。
  • 简单的信息显示设备。

通过 51 单片机实机演示 LED 点阵,能够直观地展现单片机的控制能力和 LED 点阵的显示功能,为进一步开发更复杂的显示应用提供了基础和经验。

相关推荐
芯岭技术郦4 小时前
集成 2.4G 射频收发器、MCU 及丰富外设的XL2417D透传模组
单片机·嵌入式硬件
进击的小头4 小时前
第7篇:MOS 管最全入门:原理、关键参数、选型、驱动与典型应用
经验分享·科技·嵌入式硬件·学习
zlinear数据采集卡4 小时前
定时器电路深度解析:从经典555到STM32定时器,从ZLinear采集卡的工程化设计实战
stm32·单片机·嵌入式硬件·fpga开发·自动化
y.Ghost4 小时前
FreeRTOS-基础知识
嵌入式硬件
m0_377108145 小时前
stm32-USART
stm32·单片机·嵌入式硬件
szxinmai主板定制专家6 小时前
基于 ARM+FPGA精密多轴实时运动控制卡设计方案,适用于半导体设备等高精度领域(一)
arm开发·人工智能·嵌入式硬件·fpga开发·架构·语音识别
不做无法实现的梦~8 小时前
常见工程分析软件
stm32·嵌入式硬件·算法
国产电子元器件9 小时前
电流检测信号漂移问题分析
单片机·嵌入式硬件
YangWeiminPHD9 小时前
单片机AI边缘计算发展之路:从M0的开局到三足鼎立的智能革命
人工智能·单片机·边缘计算
梁朝辉9 小时前
筛选运算放大器时对于开环增益这一项参数怎么看?
嵌入式硬件·硬件工程