|
现在很多的帖子都是直接给个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,这里是按照案例来讲的,具体的话还得根据你的行列扫描顺序来区分。欢迎讨论区里讨论
|
评分
-
查看全部评分
|