Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >单片机led点阵显示程序_LED点阵

单片机led点阵显示程序_LED点阵

作者头像
全栈程序员站长
发布于 2022-11-01 07:02:14
发布于 2022-11-01 07:02:14
95600
代码可运行
举报
运行总次数:0
代码可运行

单片机 LED点阵

一、简述

使用8×8LED点阵显示汉字。向上滚动”中华”两个汉字。

文件打包:链接: https://pan.baidu.com/s/1oHSAIY6qVA7qFFWUvMvJEA 密码: snyg

二、效果

三、工程文件结构

1、Keil工程

2、仿真电路图

四、代码

88led.c文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar code led[]={0xEF,0xEF,0x83,0xAB,0xAB,0x83,0xEF,0xEF,0xD5,0x93,0x55,0xC0,0x00,0xEF,0xEF,0xEF};//汉字“中华” 点阵码
uchar code  led_w[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//对应1~8行,赋给P2口,控制在哪一行显示
/********************************************************************/
//函数名:delay_1ms(uint x)
//功能:利用定时器0精确定时1ms; 自加 time_t的值为后面时间调整函数服务
//调用函数:
//输入参数:x,1ms计数
//输出参数:
//说明:延时的时间为1ms乘以x 
/********************************************************************/
void delay_1ms(uint x)
{
	TMOD=0X01;//开定时器0,工作方式为1
	TR0=1;//启动定时器0;
	while(x--)
	{
		TH0=0Xfc;//定时1ms初值的高8位装入TH0
		TL0=0X18;//定时1ms初值的低8位装入TL0
		while(!TF0);//等待,直到TF0为1
		TF0=0;	   //重置溢出位标志
	}		
	TR0=0;//停止定时器0;
}
/**********************************************************/
//函数名:ledplay()
//功能:led点阵显示程序
//调用函数:
//输入参数:
//输出参数:
//说明:
/**********************************************************/
void ledplay()
{
	uchar i,y,j;
	y=0; //稳定显示电平,平滑滚动,每8行数据显示10次
	j=0;//数据偏移,每次偏移1位
	while(1)//实现汉字向上滚动效果
	{
		for(i=0;i<8;i++)//显示8行数据
		{
			P0=0xFF;//消除上次电平的影响		
			P2=led_w[i];//控制显示行
			P0=led[i+j];//行电平数据
			delay_1ms(3);//延时3ms
		}
		y++;
		if(y>9)
		{
			P0=0xFF;//消除上次电平的影响
			delay_1ms(1);//延时,确保消除上次电平的影响
			y=0;
			j++;
			if(j>8)	//"中华"二字一共16行电平数据(0~15),i+j要<15
				j=0;
		}
	}

}
/**********************************************************/
//主程序
/**********************************************************/
void main()
{
	ledplay();//调用显示程序;
}

五、总结

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/200902.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月22日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
计算机控制技术实验说明
AD转换是所有嵌入式系统或机器人获取外部信息的一种重要方式,将温度、角度和位置等转换为对应的数字量,供处理器处理。
zhangrelay
2019/01/23
5530
蓝桥杯单片机必备知识—–(1)显示函数
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/100132.html原文链接:
全栈程序员站长
2021/04/15
5730
【51单片机】配置定时器
​ 那么我们先创建一个子函数 void Timer0_Init() ⇥ 对定时器进行初始化。 那么首先是TMOD的一个配置,定时器1我们先不管(高四位定时器全部给上0),只管低四位的一个定时器0的一个配置。 在前面的定时器工作有介绍过,STC89C52 的 T0 和 T1 一共有四种工作模式:在这里我们选择最常用的工作模式1。 Ⅰ:工作模式①的话,我们只需要把 M1 = 0,M0 = 1 就是定时器模式①的配置了。 Ⅱ:C/T(取反):这个我们只需要给C/T(取反) = 0即可,SYSclk⇢系统时钟。 Ⅲ:GATE(门控端),GATE = 0,这里当中都是数字电路当中的一些基础逻辑门,TR0 = 1。
謓泽
2022/12/12
7400
【51单片机】配置定时器
STC51单片机中断与定时器配置参考
*外中断INT0--------void intsvr0(void) interrupt 0 using 1
小锋学长生活大爆炸
2020/08/13
1.5K0
STC51单片机中断与定时器配置参考
蓝桥杯单片机—-NE555频率测量
NE555 (Timer IC)为8脚时基集成电路,NE555是属于555系列的计时IC的其中的一种型号,555系列IC的接脚功能及运用都是相容的,只是型号不同的因其价格不同其稳定度、省电、可产生的振荡频率也不大相同;而555是一个用途很广且相当普遍的计时IC,只需少数的电阻和电容,便可产生数位电路所需的各种不同频率之脉波讯号。
全栈程序员站长
2022/07/28
1.3K0
蓝桥杯单片机—-NE555频率测量
89C51 单片机调速 可执行代码 c+汇编
 然而很多人做电机,但是课程没有教电机,hhhh(然后三个班做电机的代码都是我给的?
用户2965768
2019/07/01
6530
3.7 51单片机-LED 16*16点阵
LED点阵使用连线说明:P595_A接J17、P595_B接J18、JP595跳线帽需要接上、JP1302断开、J11(P3.3)断开
DS小龙哥
2022/01/12
1.4K0
3.7 51单片机-LED 16*16点阵
基于单片机的电子时钟设计(keil+protues仿真,含代码及原理图)
本学期单片机课程要求做课程设计,我选取的课题如下: 基于单片机的电子时钟设计,要求: (1)实时显示当前时间; (2)能够对时间进行设置; (3)包括年月日,小时,分钟,秒. (4)整点提醒功能. 经过一周的时间已实现上述功能,故在此分享一下;
全栈程序员站长
2022/09/15
4.7K2
基于单片机的电子时钟设计(keil+protues仿真,含代码及原理图)
单片机 流水灯
通过Proteus仿真单片机最小系统+流水灯的显示电路。用Keil编写相应执行文件。
全栈程序员站长
2022/08/14
7160
单片机 流水灯
八路抢答器单片机c语言程序_八路抢答器单片机c语言程序
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,
全栈程序员站长
2022/11/01
1K0
单片机入门:数码管秒表
采用8位数码管进行秒表设计。 仿真原理图: 程序设计: /* 数码管秒表设计 */ #include<reg52.h> unsigned char LedBuff[]={ 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF }; unsigned char code LedChar[]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e };//共阳 /* unsigned c
电子工程师成长日记
2022/07/21
6400
单片机入门:数码管秒表
基于STC89C51/2的的超声波测距(1602A显示)「建议收藏」
8. D0 ~ D7我接入的是P 0 ^ 0~P 0 ^ 7(注意不要接到VCC管脚上去),还有接入P0口要接上拉电阻,否则会烧坏的。
全栈程序员站长
2022/09/29
3960
基于STC89C51/2的的超声波测距(1602A显示)「建议收藏」
蓝桥杯单片机必备知识—–(3)pcf8591–ADC
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/100131.html原文链接:
全栈程序员站长
2021/04/15
6330
水流量霍尔传感器工作原理_51单片机温度传感器
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/11
1.2K0
水流量霍尔传感器工作原理_51单片机温度传感器
基于单片机的简易声光报时时钟
本设计采用STC89C51单片机作为主控制器,外部加上74HC573驱动数码管。系统总体框图如下:
一条晒干的咸鱼
2024/11/19
1310
基于单片机的简易声光报时时钟
C51 单片机开发中断方式控制 LED
闲话:看电视剧看到后半夜,外面除了路灯,黑了很多。电视剧说不上特别好看,但是这种感觉很棒!!!
码农UP2U
2024/06/21
3760
C51 单片机开发中断方式控制 LED
单片机DA转换实现正弦波
使用的是查表法: 1.c文件: #include "reg52.h" #include <intrins.h> #include <i2c.h> #define PCF8591 0x90 #define uint unsigned int #define uchar unsigned char #define arr_length 720 //正弦波数组长度 code unsigned char sin1[720]={0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x
用户1749219
2018/05/16
1.3K0
(六)51单片机基础——定时器
        定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。
小点点
2022/12/12
1.2K0
(六)51单片机基础——定时器
4.1 51单片机-定时器使用
时钟周期:时钟周期T是时序中最小的时间单位,具体计算的方法就是 1/时钟源频率,89C51单片机开发板上常用的晶振是11.0592M,对于这个单片机系统来说,时钟周期=1/11059200 秒。
DS小龙哥
2022/01/12
1.2K0
4.1 51单片机-定时器使用
51单片机定时器使用
机器周期:12/11059200 s (标准框架下51单片机一个机器是12个时钟周期)
緣來
2020/01/02
1K0
相关推荐
计算机控制技术实验说明
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验