【Proteus仿真软件学习之路】序列之3:高富帅初露脸—LED显示屏仿真
本节我们主要介绍单片机仿真软件Proteus,主要是从下面3个方面进行讲解: 1.如何创建仿真界面 2.软件界面编写 3.联调——高富帅亮相
一、如何创建仿真界面 有了前面两节的基础,仿真界面就不是那么难了,主要是看你要实现什么功能,然后就选择器件即可! 我们需要LED点阵模块,MCU,74HC595和74HC154,这几个器件proteus里面都有。
LED点阵模块【绿色】 74HC154 模块 单片机模块 74HC595模块 有了这四个模块就可以开始干活了,只要按照自己想要的硬件方式进行连接即可。下面看一个LED点阵模块。 只要定义好管脚就可以了,这里就不细致讲解,稍后附件会有仿真具体连接。下面是搭建的整个仿真的界面。 二、软件界面编写 此处软件界面编写包括两部分:1.代码部分编写;2.取字模部分 1.代码部分编写 主函数部分主要是扫描方式,代码如下,具体的在附件里面。 /************主函数***************/ void main() { uchar i,j,k; //i:每个字的显示循环;j每个字的显示码除以2;k每列刷新次数 uint b=0; //显示偏移控制,char类型最多只能显示14个汉字+一个空白位字符 uchar a; //控制移动间隔时间 SCON = 0x00; while(1) { j=0; if(a>1) //移动间隔时间;取值0--255 { a=0; b+=2; if(b>=352) //显示到最后一个字,回头显示,判断值=字数*32 { b=0; } } for(i=0;i<16;i++) { P1=i; for(k=0;k<1;k++) { STTP = 0; out_rxd(&hanzi[3][j+b+1]); out_rxd(&hanzi[3][j+b]); out_rxd(&hanzi[2][j+b+1]); out_rxd(&hanzi[2][j+b]); out_rxd(&hanzi[1][j+b+1]); out_rxd(&hanzi[1][j+b]); out_rxd(&hanzi[0][j+b+1]); out_rxd(&hanzi[0][j+b]); STTP = 1; delay(15); } j=j+2; } a++; } } 2.取字模 按照下面的设置取字模既可以实现自己想要显示的字体。 三、联调——高富帅亮相 这个是以前自己设计的,双色的,单色是16x64。
今天感觉蛮好玩的,就再次修改一下,感觉还是很不错的!效果如下。
|