51单片机——LED点阵屏

1.点阵屏介绍

 2.显示原理

3.74hc595介绍 

 ser一次只能输入一个数据(0或者1),serclk赋1后数据会向下移动一位,类似把子弹装进弹匣,所有数据位都填满后rclk赋值1数据会并行输出出去

4.笑脸代码

#include <REGX52.H>
#include "Delay.h"
sbit rclk=P3^5;
sbit srclk=P3^6;
sbit ser=P3^4;
void write74hc595(unsigned char byte)
{
	char i;
	for(i=0;i<8;i++)
	{
		ser=byte&(0x80>>i);
		srclk=1;
		srclk=0;
	}
	rclk=1;
	rclk=0;
}
void matled(unsigned char lie,unsigned char deta)
{
	write74hc595(deta);
	P0=~(0x80>>lie);
	Delay(1);
	P0=0xFF;
	
}
void main()
{
	srclk=0;
	rclk=0;
	//matled(0,0xAA);
	while(1)
	{
		matled(0,0x3C);
		matled(1,0x42);
		matled(2,0xA9);
		matled(3,0x85);
		matled(4,0x85);
		matled(5,0xA9);
		matled(6,0x42);
		matled(7,0x3C);
	}

}

delay.h的代码:

#include <REGX52.H>
#include <INTRINS.H>
void Delay(int xms)
{
	char i,j;
	while(xms--)
	{
		i=2;
		j=239;
		do
		{
			while(--j);
		}while(--i);
	}
}

效果:

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
收集的各种电子类的毕业设计,网速较满故分批次上传 目录如下 16×16点阵(滚动显示)论文+程序.rar cdma通信系统中的接入信道部分进行仿真与分析.rar LED显示屏动态显示和远程监控的实现.rar MCS-51单片机温度控制系统.rar USB接口设计.rar 毕业设计(论文)OFDM通信系统基带数据.rar 仓库温湿度的监测系统.rar 单片机串行通信发射机.rar 单片机课程设计__电子密码锁报告.rar 单片机控制交通灯.rar 电动智能小车(完整论文).rar 电气工程系06届毕业设计开题报告.rar 电信运营商收入保障系统设计与实现.rar 电子设计大赛点阵电子显示屏(A题)..rar 电子时钟.rar 火灾自动报警系统设计.rar 基于GSM短信模块的家庭防盗报警系统.rar 基于GSM模块的车载防盗系统设计 TC35i 资料.rar 基于网络的虚拟仪器测试系统.rar 门控自动照明电路.rar 全遥控数字音量控制的D类功率放大器.rar 数控直流稳压电源完整论文.rar 数字密码锁设计.rar 数字抢答器(数字电路).rar 数字时钟.rar 水箱单片机控制系统.rar 同步电机模型的MATLAB仿真.rar 温度监控系统的设计.rar 用单片机控制直流电机.rar 用单片机实现温度远程显示.rar 智能家用电热水器控制器.rar 智能型充电器电源和显示的设计.rar 自动加料机控制系统.rar 每个设计包含论文、原代码,个别的有PCB,请下载者仅做参考,通篇抄袭后果自负。
本目录下提供的是《手把手教你学51单片机(C语言版)》教材中所有例程与作业习题的源代码。 请将整个目录复制到电脑硬盘上使用,如直接在光盘路径下打开工程可能会导致软件报错。 运行目录下的Clean.bat可以清理程序编译过程中产生的中间文件和临时文件。 lesson2 (第2章): 点亮一个LED示例,所在章节2.4 lesson3 (第3章): LED闪烁示例,所在章节3.5 lesson4 (第4章): 4_1:用P0口控制LED的示例,所在章节4.8 4_2:用P0口控制实现流水灯效果,所在章节4.8 4_t4:作业题4,逐次右移的流水灯效果,所在章节4.9 4_t5:作业题5,左右往复移动的流水灯效果,所在章节4.9 lesson5 (第5章): 5_1:基于定时器查询模式的LED闪烁,所在章节5.2.3 5_2:静态点亮数码管的某几段,所在章节5.3.2 5_3:数码管静态显示一位字符,所在章节5.3.3 5_t3:作业题3,定时器查询模式实现左右移动的流水灯,所在章节5.4 5_t5:作业题5,变更lesson5_3的正计数为倒计数,所在章节5.4 lesson6 (第6章): 6_1:数码管动态显示原理示例(if...else if...语句示例),所在章节6.4 6_2:数码管动态显示原理示例(switch...case...语句示例),所在章节6.4 6_3:基于中断带消隐的数码管动态显示示例,所在章节6.5 6_t4:作业题4,在lesson6_3多位数字显示的基础上不显示高位的0,所在章节6.6 6_t5:作业题5,变更lesson6_3的正计数为倒计数,所在章节6.6 lesson7 (第7章): 7_1:基于数码管计时程序的静态变量演示,所在章节7.2 7_2:点亮LED点阵上的一个点,所在章节7.3 7_3:点亮LED点阵上的一行,所在章节7.3 7_4:点亮LED点阵上的全部点,所在章节7.3 7_5:LED点阵显示静态图形,所在章节7.4 7_6:LED点阵显示纵向移动的动画,所在章节7.5.1 7_6_h:LED点阵显示横向移动的动画(掉转板子方向的取巧方式),所在章节7.5.2 7_7:LED点阵显示横向移动的动画,所在章节7.5.2 7_t3:作业题3,lesson7_6的向上移动改为向下移动,所在章节7.6 7_t4:作业题4,lesson7_7的向左移动改为向右移动,所在章节7.6 7_t5:作业题5,基于LED点阵的9~0倒计数,所在章节7.6 7_t6:作业题6,独立LED、数码管、点阵LED同时全亮,所在章节7.6 lesson8 (第8章): 8_1:基于数码管计时程序的函数调用演示,所在章节8.2 8_2:按键基本原理演示例程,所在章节8.4.3 8_3:独立按键扫描原理演示例程,所在章节8.4.3 8_4:独立按键消抖原理演示例程,所在章节8.4.4 8_5:独立按键扫描并消抖的演示例程,所在章节8.4.4 8_6:矩阵按键扫描并消抖的演示例程,所在章节8.4.5 8_7:基于矩阵按键和数码管实现的简易加法计算器,所在章节8.5 8_t4:作业题4,变更lesson8_5的递增计数为递减计数,所在章节8.6 8_t5:作业题5,在lesson8_7基础上实现简易加减计算器,所在章节8.6 lesson9 (第9章): 9_1:步进电机驱动的基础示例,所在章节9.3.3 9_2:步进电机转动任意角度的示例,所在章节9.3.4 9_3:实用的步进电机驱动示例,所在章节9.3.5 9_4:按键控制步进电机转动的示例,所在章节9.3.6 9_5:蜂鸣器驱动的基础示例,所在章节9.4 9_6:蜂鸣器演奏简单乐谱——“两只老虎”,所在章节9.4 lesson10 (第10章): 10_1:基于数码管显示的数字秒表,所在章节10.1 10_2:基于PWM方式控制LED的亮度,所在章节10.2 10_3:基于PWM方式控制LED实现呼吸灯效果,所在章节10.2 10_4:交通信号灯示例,所在章节10.3 10_5:长短按键/连续按键功能实现示例,所在章节10.5 10_t3:作业题3,数码管计时与流水灯同时运行的示例,所在章节10.6 lesson11 (第11章): 11_1:普通IO口模拟实现串口通信的示例,所在章节11.4 11_2:单片机硬件UART查询方式实现串口通信的示例,所在章节11.5.3 11_3:单片机硬件UART中断方式实现串口通信的示例,所在章节11.5.3 11_4:UART串口通信及控制数码管显示的示例,所在章节11.6 11_t5:作业题5,UART串口控制流水灯流动和停止,所在章节11.7 11_t6:作业题6,UART串口控制蜂鸣器的开关,所在章节11.7 lesson12 (第12章): 12_1:指针作为函数参数的示例,所在章节12.1 12_2:指向变量的指针与变量关系的示例,所在章节12.2 12_3:指针、字符串、字符数组、ASCII码演示示例,所在章节12.3 12_4:1602液晶基本操作演示示例,所在章节12.4 lesson13 (第13章): 13_1:1602液晶显示两行字符串,并实现整屏的重复左移,所在章节13.2 13_2:多c文件示例,1602液晶显示两行字符串,并实现整屏的重复左移,所在章节13.3 13_3:整型数为操作数的简易+-*/计算器,所在章节13.4 13_4:基于帧模式的实用串口程序示例,所在章节13.5 13_t2:作业题2,1602液晶显示两行字符串,并实现整屏的重复右移,所在章节13.6 lesson14 (第14章): 14_1:寻址I2C总线上存在的和不存在的地址,将应答状态显示到液晶上,所在章节14.2 14_2:用单字节读写模式访问EEPROM,每次+1后写回,所在章节14.3.1 14_3:用多字节读写模式访问EEPROM,依次+1,+2,+3...后写回,所在章节14.3.2 14_4:用连续读与分页写模式访问EEPROM,依次+1,+2,+3...后写回,所在章节14.3.3 14_5:读取EEPROM中的数据显示到液晶,并可通过UART修改EEPROM中的数据,所在章节14.4 14_t3:作业题3,以lesson10_4为基础实现可通过UART设定时间的交通灯示例,所在章节14.5 14_t4:作业题4,基于液晶、按键、EEPROM的密码锁示例,所在章节14.5 lesson15 (第15章): 15_1:用单次读写模式访问DS1302,并将日期时间显示在液晶上,所在章节15.3.4 15_2:用突发读写模式访问DS1302,并将日期时间显示在液晶上,所在章节15.3.5 15_3:DS1302实现简易电子钟,通过按键校时,所在章节15.5 lesson16 (第16章): 16_1:接收NEC协议的红外编码并将用户码和键码显示到数码管上,所在章节16.3 16_2:控制DS18B20测量温度并将温度值显示到液晶上,所在章节16.4 16_t2:作业题2,用遥控器控制步进电机正反转,所在章节16.5 16_t4:作业题4,带温度显示的电子钟,所在章节16.5 lesson17 (第17章): 17_1:将模拟输入通道0、1、3的电压值显示到液晶上,所在章节17.4 17_2:由按键控制DA输出可调电压值,所在章节17.6 17_3:由按键控制DA输出可变化的波形,所在章节17.7 17_t3:作业题3,可调频率的信号发生器,所在章节17.8 lesson18 (第18章): 18_1:RS485基本示例,接收任意数据帧并添加回车换行后送回,所在章节18.1 18_2:基于RS485的Modbus通信示例,支持寄存器读写操作,所在章节18.3 18_t3:作业题3,基于Modbus协议实现电子钟校时,所在章节18.4 lesson19 (第19章): 19_1:多功能电子钟例程,所在章节19.4
单片机系统课程设计报告 16*16点阵设计 专 业: 测控技术与仪器 学 生 姓 名: 刘宝琪 韦魏 学 号: 2009024211 2008050528 指 导 教 师: 张秀峰 完成日期:2011 年 12 月30日 目录 一 设计任务 2 二 设计方案 3 1 任务分析 3 2 方案设计 3 3 系统构图 4 三 系统硬件设计 4 1 硬件选择 4 2单片机的最小系统 5 3 点阵驱动设计 5 4 led点阵的介绍 6 5 led点阵显示模块的方法 7 四 系统软件设计 8 1主程序设计 8 2 主程序流程图 9 五、调试及性能分析 9 1 调试分析 9 2 性能分析 10 六、心得体会 10 七、参考文献 11 附录一:系统原理图 11 附录二:程序清单 12 一 设计任务 设计一个16×16的LED点阵图文显示屏,可显示图形和文字,显示图形和文字应稳定、 清晰,各点亮度均匀。图形和文字显示有静态、移入和移出等显示方式。掉电时能保 存显示的信息。 选做:设计系统与上位机的串行通信电路,用上位计算机控制LED显示器的显示内容 。 二 设计方案 1 任务分析 LED点阵显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。它 具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优 点。并广泛的应用于公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告 宣传。LED显示屏经历了从单色,双色图文显示屏到现在的全彩色视频显示屏的发展过程 ,自20世纪八十年代开始,LED显示屏的应用领域已经遍布交通、电信、教育、证券、广 告宣传等各方面。 LED点阵显示屏可以显示数字或符号,通常用来显示时间、速度、系统状态等。文章 给出了一种基于MCS-51单片机的16×16 点阵LED显示屏的设计方案。包括系统具体的硬件设计方案,软件流程图和部分汇编语言 程序等方面。在负载范围内, 只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。 2 方案设计 按照系统设计的功能的要求,采用动态扫描方式。动态扫描方式是逐行轮流点亮, 这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。以16×16点阵为例,把所 有同一行的发光管的阳极连在一起,把所有同一列的发光管的阴极连在一起(共阳的接 法),先送出对应第1行发光管亮灭的数据并锁存,然后选通第1行使其燃亮一定的时间 ,然后熄灭;再送出第2行的数据并锁存,然后选通第2行使其燃亮相同的时间,然后熄 灭;…第16行之后,又重新燃亮第1行,反复轮回。当这样轮回的速度足够快(每秒24次 以上),由于人眼的视觉暂留现象,就能看到显示屏上稳定的图形。该方法能驱动较多 的LED,控制方式较灵活,而且节省单片机的资源。 采用扫描方式进行显示时,每一行有一个行驱动器,各行的同名列共用一个驱动器。显 示数据通常存储在单片机的存储器中,按8位一个字节的形式顺序排放。显示时要把一行 中各列的数据都传送到相应的列驱动器上去,这就存在一个显示数据传输的问题。从控 制电路到列驱动器的数据传输可以采用并列方式或串行方式。显然,采用并行方式时, 从控制电路到列驱动器的线路数量大,相应的硬件数目多。当列数很多时,并列传输的 方案是不可取的。 3 系统构图 三 系统硬件设计 1 硬件选择 此次设计的硬件选择如下: AT89C51芯片、LED、74LS138、LED的驱动三极管、电阻等一些单片机外围应用电路组 成。 2单片机的最小系统 ATMEL公司生产的AT89C51单片机它是硬件电路的核心部分,时钟电路晶振使用12MHz,复 位电路采取按键复位方式。 单片机系统的晶振电路 单片机系统的复位电路 3 点阵驱动设计 74ls138作为列驱动 74LS138 为3 线-8 线译码器,其工作原理如下: 当一个选通端(G1)为高电平,另两个选通端(/(G2A)和/(G2B))为 低电平时,可将地址端(A、B、C)的二进制编码在一个对应的输出端以低 电平译出。 利用 G1、/(G2A)和/(G2B)可级联扩展成 24 线译码器;若外接一个反 相器还可级联扩展成 32 线译码器。 用两片74ls138接成的4线——16线译码器 第(1)片74LS138工作而第(2)片74LS138禁止,将的0000~0111这8个代码译成8个低 电平信号。而式(3.3.9)表明时,第(2)片74LS138工作,第(1)片74LS138禁止,将 的1000~1111这8个代码译成8个低电平信号。这样就用两个3线-8线译码器扩展成一个 4线-16线的译码器了。 同时用P1口控制74ls138的输入 用单片机的P0口,P2口作为行驱动 注意:必须要加上拉电阻。 单片机的自身驱动能力很小,必须要接大电阻进行分压,才能正常

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值