欢迎光临散文网 会员登陆 & 注册

Proteus 仿真 16x16点阵实验绘字原理

2022-02-04 22:08 作者:Straiack  | 我要投稿

16x16点阵,顾名思义,就是需要16x16=256个发光二极管组成,每个发光二极管都是可以控制亮灭的,亮的时候为1,灭的时候为0。分辨率更大的也是同样的原理。

因为这个比较简单,所以我们直接用例子来实现。

我做了一个“唐”字,首先确定那些地方需要亮灭,如图表格16x16,按照上面的规则,1为亮,0为灭,这里0我就没有打出来了。


“唐”字 16x16点阵

在写汇编指令的时候的数据段,我们是每八位放一个数字,256/8=32,一共需要写入32个八位二进制数,我把这些八位二进制数都转换成了十六进制放在左边或者右边。每八位我用不同的颜色区分出来了,左八位是黄色,右边八位是橙色,方便转换进制。

在填写入数据段是,我们需要遵循个规则。

首先,是每个八位的读数,注意这里的二进制是反着读的。平常我们读二进制是不是从左往右读的?而我们在这里读八位需要从右往左读。

比如:第四行的右八位,平常读成“1111 1100”,翻译成十六进制数就应该是“FC”。但是我们这里不这么读,我们读成“0011 1111”,翻译成十六进制就变成了“3F”。

其次,在填入每个转换的十六进制数时,我们反而是从左往右录入的。

比如,当我们录入前两排的数据时,应该录入为“000H, 01CH, 008H, 008H”。

“唐”字Proteus仿真,hex的数据段整个录入的结果(定义的字节):


运行结果:


最后我仍然要夹带私货,给我女儿(自己写的小说的女主)也做了一个她名字中的“樗”字。

数据段:

“樗”数据段

运行结果:


本文均为作者原创,如有错漏处请大佬们斧正,转载请标明出处~



Proteus 仿真 16x16点阵实验绘字原理的评论 (共 条)

分享到微博请遵守国家法律