找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3399|回复: 0
收起左侧

单片机16*16点阵滚动显示入门教程(编程改写,如何转码)

[复制链接]
ID:699003 发表于 2020-5-7 13:43 | 显示全部楼层 |阅读模式
现在很多的帖子都是直接给个PROTEUS的图片,然后甩个程序上来,导致我们这些入门级的选手根本不够看,对于怎么改程序里面的内容我们还得一步一步的学,大佬们嘛有不会看那些帖子,看帖子的都是我们这些小朋友,下面讲解一下如何修改程序,完成我们想要显示的字,同样先借用PROTEUS图片以及一段程序,这是个教程贴,没有附录。帖子字符有限 图片配不上 哈哈哈


这是一个仿真图片,中间反相器的作用是用来增量点阵亮度用的  ,仿真软件中不考虑单片机输出功率的问题,所以反相器可加可不加,这个设计到实物制作。下面就是程序了
程序也没什么好说的有这样子两块内容(主程序不做介绍)

这边有个16,16是你单片机能够显示的字数,比如说我这里改成8,


字符库里的字超出了8,程序就不会编译,那有人会问 我不能把它改大点嘛,改大的话比如我只显示两个字(字符库里只有两个字的编码),可是这里是8,也就是说会有6个字符的空位,编译也能编译,但是他就会出现这种情况


这个空字符就会全部亮出来或者是没显示(根据你的点阵共阴共阳划分),所以最好是有几个字这写几。
好接线来讲字的取模,这个也是稍微会有一点问题,一个字取模的方式不一样能够生成很多不同的代码,那么如何取我这个仿真图里对应的子模呢。

首先不考虑共阴共阳,共阴共阳的区别无非就是亮的和不亮的转换一下子重要是取模顺序

各种取模软件,都需要合理的设置才能生成一样的编码
两个不同子模提取软件生成同样的字,四个8*8我们从左到右分
来看这个代码哈,这里分32组每组对应的就是行数,举例0x00是A1,0x00(A2),0x00(A3),0x3F(A4)...A排完了排B、C、D
好,那么我们具体举例A3,0x3f这个啥意思,也就是说A3的代码转换二进制00111111,1就是亮点

A1    00000011

竖着 就是改变组
那么ABCD的模块是怎么来的呢,那就是根据你仿真软件怎么搭建的了

我们这里讲的组里面的数据就是对应的列,我们到这的顺序87654321  来对应二进制的转换
行呢按照组来区分1-32组A*8+B*8+C*8+D*8,这里是按照案例来讲的,具体的话还得根据你的行列扫描顺序来区分。欢迎讨论区里讨论


51hei图片20200507133645.png
51hei图片20200507133704.png
51hei图片20200507133708.png
51hei图片20200507133714.png
51hei图片20200507133720.png
51hei图片20200507133724.png
51hei图片20200507133728.png

李璐.zip

157.08 KB, 下载次数: 28, 下载积分: 黑币 -5

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表