51单片机实现c语言字母滚动,使用51单片机实现点阵汉字平滑滚动显示

使用51单片机实现点阵汉字平滑滚动显示

#说明:采用的芯片是89C51,LED点阵屏的规格是16*16,同时使用了两个74HC595芯片,字模生成软件在文末有网盘链接。

1 连接原理图

99e0d8cdd0bc9217d60d693337ab8cf6.png

整体的电路连接如上图所示,单片机只需要使用三个IO接口,就可以实现对点阵屏的控制。当然对于不同的单片机而言连线是不同的,但是使用74HC595扩展的原理是相同的,在这里不再对于其IO扩展原理进行探究。

2 实现的功能

在51单片机以及C语言的环境下,实现LED点阵屏幕上汉字的平滑滚动,就像是公交车上显示“前方到站第二医院,下车乘客请提前做好准备”一样。我们最后显示的是“计算机测控技术”几个字,当然显示的汉字内容是自定义的。同时,设置一个按钮能够让平滑滚动的汉字可以随时停下来。

de2f4104878dc322a80c67568269bf9f.png

这里有两点细节需要注意一下:

1、汉字循环到最后一个时,要继续滚动出第一个汉字,而不是跳变到开头重新循环。

2、汉字滚动的时候按下按钮停止,滚动停止的时候按下按钮继续滚动,使用同一个按钮。

3 C语言程序实现

3.1 定义变量

在这里我们定义芯片P3.4、P3.5、P3.6 三个接口为输出IO接口,P2.7为接开关控制的IO接口。同时定义一个大数组储存所有汉字对应的取模16进制码,一个小数组用于表示现在屏幕上所需显示的汉字。

#include

#include

typedef unsigned int u16;//常规无符号字符串和整数定义

typedef unsigned char u8;

//将595的三个内置接口赋给新的名字

sbit SRCLK = P3 ^ 6;// 数据

  • 3
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值