科学知识的奇思妙想,脑洞大开的智慧比拼!第二届立创商城电子制作节30强&入围奖名单火热出炉:http://club.szlcsc.com/article/details_8910_1.html! 30强选6强投票正在进行中,快来围观:http://club.szlcsc.com/article/details_8913_1.html !
本作品为第二届立创商城电子制作节一等奖作品,作者立创社区ID:西城岛V3;转载请注明出处,未经允许不得用作商业用途。作品原链接:http://club.szlcsc.com/article/details_6386_1.html。
一、作品简介
本作品--虚拟LCD( Virtual LCD )基本上是一款软硬件组合的产品,它利用当今先进的软件编程技术,配合简单的外围 硬件(只需一根RS232电缆或直接TTL电平的232信号、I2C、SPI),再普通的一台PC机上可实现对实物LCD 的100%仿真模拟------不仅仅是画面外观上的“静态”仿真,更是对显示行为/动作上的“动态”仿真! 客户的硬件主板(MCU/FPGA/DSP)通过RS232电缆跟PC机连接后,即可进行软硬件上的同步动态仿真! 此时,客户的系统就相当于接上了一个“真正”的实物LCD显示器一样。
特性&亮点:
1、 非纯软件方式的仿真,而是软硬件联调的仿真技术,并且不依赖于客户的任何硬件和软件平台!
2、 同步动态地仿真实物LCD的显示效果和动作,仿真指令与所用实物LCD 控制器的指令100%一致!
3、 支持仿真任何分辨率的图形点阵型、字符点阵型、笔段(SEGMENT)型的实物LCD。
4、 支持仿真任何颜色( 单色、4灰阶、16灰阶、256色、16位色、24位色、32位色)的实物LCD,包括TFT液晶显示器。
5、 基于多线程的编程技术和高效绘图技术,做到了高速仿真!
6、 仿真所需的硬件成本极低 --- 仅需要一根RS-232 电缆。SPI或8bit-Parallet、I2C接口也可定制。
7、 交货速度快!收到定制单后,24小时内即可交货!传统实物LCD的开模周期要一个月。
8、 价格低!定制费不及实物LCD开模费的5 ~ 10%!
9、 可反复修改,修改快速!传统开模方式不可比拟。
二、应用案例

三、系统框架

如上图所示,此虚拟LCD系统包括几个组成部分:硬件采集板、运行于电脑端的显示屏仿真软件及电脑本身配置的显示器。其中,硬件采集板由USB转HID芯片CH9326和STM8S007C8T6组成,后者通过提供SLAVE从模式的I2C接口或SPI接口,或TTL-232接口接收客户主板上发出的显示控制指令和数据。然后ST意法半导体的8Bit 单片机STM8S007C8T6 把这些数据打包(通过串口的方式)给免USB驱动的H9326芯片,接着由CH9326通过USB接口上传给PC电脑端的仿真软件,最后由仿真软件在电脑显示器上绘制所需的LCD、LED图案或图像出来。
实际使用过程中,硬件采集板不用更换,只需要改变仿真软件的编程和方法,即可实现对不同LCD、LED显示屏的功能模拟、效果模拟!
四、硬件设计
下面介绍一下这个虚拟LCD系统所需要的硬件采集板的相关硬件设计原理图。

备注:图3中,U5是过流保护芯片,通过电阻R8我们可以设置电流保护的大小,如 果不需要该功能直接用可恢复保险丝F1代替也可以,只是U5具有比F1超快得多的保护速度!此外,U4是一款高速低压差、高抗纹波率、且带输出短路保护功能的LDO芯片MD53U33,该芯片为系统VCC电源提供3.3V的供电,如果VCC不想得到3.3V供电,那么短接跳线JP2即可得到5V的供电。

备注:图4中主控芯片由U2 8Bit单片机STM8S007C8T6完成,P1接口是SWIM在线调试和烧录接口。

备注:CH9326是一款HID转串口芯片。CH9326支持双向数据传输,用于接收串口数据,并按照HID 类设备规范,将数据打包通过USB口上传给计算机,或者从计算机接收符合HID类设备的USB数据包,并从串口进行发送。

备注:U3是STM811,其功能类似常见的电源监控芯片STM809,但比STM809功能多带了一个人工复位按键的功能。
五、材料清单(BOM列表)
以下是这个电子制作的BOM列表,器件全部采购来自立创商城(WWW.SZLCSC.COM),PCB板的制造在深圳嘉立创完成。(详情见立创社区http://club.szlcsc.com/article/details_7355_1.html)

六、软件部分的描述
此虚拟LCD系统的软件,包含了两个方面的内容:一个是PC端、运行于Winodws界面下的显示仿真软件;另外一个是硬件采集板stm8s007C8T6单片机端的数据收发软件(固件)。其中,PC端的软件采用VC++ 编写,涉及的主要关键技术是:多线程下对USB通信芯片CH9326的读写和仿真界面的绘图(绘图特别采用了双缓存算法,实现了画面的非闪烁特效)。
而下位机端,即单片机端则较简单,它利用内置的通信端口(SLAVE从模式下的I2C或SPI及Uart串口1接收客户主板发来的显示数据和指令,然后通过Uart串口3转发到USB通信芯片CH9326上,反之亦然。 因篇幅有限,请读者后续到立创社区进行源码的下载,这些代码都是开源的!
七、总结
本文介绍的虚拟LCD系统,是一款高性价比,实用性很高的人机界面仿真软件、辅助设计软件。在实际使用过程中,构建成本很低的硬件采集板不用更换,只需要改变仿真软件的编程和功能,即可实现对不同LCD、LED显示屏的功能模拟、效果模拟!