介绍了一种基于嵌入式PIC单片机的128×16 LED点阵显示屏控制系统设计与实现,该系统利用上位机将显示信息字符转换为点阵显示数据,并通过miniUSB接口传送給PIC单片机,再由单片机完成点阵屏的动态滚动显示与实时控制。该系统具有设计简单、字符清晰、功耗低、可靠性高等特点。
由图3可以看出,JM-M1088A-BHG型双色点阵模块是通过选通对应的列选择端实现红、绿色显示的,在单元显示屏连接电路中,HT1632C芯片的COM端与JM-M1088A-BHG点阵模块的列选择端连接,ROW端顺次与JM-M1088A-BHG点阵模块的行选择端连接,其中,每个ROW引脚通过限流电阻,同时与点阵模块每一列的两种颜色选择端连接。
1.3 串行通讯接口
传统的LED点阵显示屏控制系统大多都是采用RS232串行通讯接口与计算机通信,但随着计算机技术的发展,计算机将越来越少配置甚至不配置RS232接口,因此采用支持热插拔的USB串行通讯接口取代RS232接口更便于使用。CP2102是一种USB/RS232双向转换芯片,一方面可以从上位机接收USB数据并将其转换为RS232信息流格式发送给外设,另一方面可从RS232外设接收数据转换为USB数据格式传送至主机,其中包括控制和握手信号。
该点阵显示屏控制系统采用USB/RS232桥接器件CP2102设计点阵显示屏与上位机的串行通讯接口,连接电路如图4所示。
为了能够通过USB通讯接口正确识别该点阵显示屏控制系统,须在上位机的相应USB端口安装CP2102的驱动程序,安装完成之后就相当于在上位机上提供了一个虚拟串口,可以像存取一个标准的物理串口一样访问该虚拟串口。所有针对虚拟串口的数据通信都是以USB总线实现RS232数据传输的。
2 系统软件设计
整个系统软件设计包括上位机软件和下位机点阵显示控制软件两部分。
上位机软件提供友好的人机交互界面,可方便输入或选择需要显示的内容,实现的功能如下:1)接收数据输入;2)识别数据类型;3)对不同类型的数据做出对应的处理,完成显示数据的点阵信息格式转换,若所收到的命令、数据不在预先设计范围内,则忽略此条命令或数据;4)发生接收故障(接收数据时,minUSB线断开等原因导致的无法继续正常接收)时,忽略所接收到的数据;5)设置点阵信息的动态滚动速度;6)调节LED点阵显示屏的显示亮度。
在MPLAB IDE集成开发环境下完成嵌入式PIC单片机的程序开发。下位机点阵显示控制软件主要识别来自上位机的命令、数据,并据此向各个HT1632C芯片发送可被HT1632C芯片识别的命令、数据,进而控制整个LED显示屏的动态显示效果,其主程序流程如图5所示。
在串口数据接收过程中,如果所接收到的数据是符合规范的预定义命令字,则相应的标记位会在串口中断服务子程序中被置位,当退出中断服务程序后,就需要设置一个命令处理函数,根据各个标记位的状态进行正确的判别,并使得PIC单片机做出相应的处理响应,命令处理函数的流程如图6所示。
在串行数据接收过程中,难免会因为各种因素而导致不同的接收故障,如由于miniUSB线的松动而导致的接收中止。为了使系统更加稳定,须采取一定的故障保护措施。该系统将PIC单片机的定时器0中断服务程序中对相关的标识符进行判别,若发现逻辑上的问题,则表明发生了串行数据接收故障,将故障标识符置位,使单片机及时抛弃所接收到的错误数据,其故障处理流程如图7所示。
结束语
本文基于嵌入式PIC单片机完成了LED点阵显示屏控制系统的设计,给出了硬件电路的连接组成及软件的实现方法。该系统通过miniUSB通讯接口由上位机发送数据,可方便地实现点阵屏动态显示信息的实时更新,所设计的系统性能稳定、操作方便,功耗及成本较低低,电路与控制方案简洁明了,容易实现,具有较好的应用推广价值。
中国照明网论文频道现向广大业内朋友征集稿件。稿件内容要求具有技术性、可读性。欢迎研究机构、院校、企业进行投稿。
投稿信箱:edit@lightingchina.com.cn
联系电话:0086-020-85530605-5029
(投稿时请注明作者姓名、单位、邮编和地址及电话、E-mail;以便通知审核结果,如发稿七日内无通知请来电查询。)
广东中照网传媒有限公司 版权所有 增值电信业务经营许可证:粤B2-20050039 粤ICP备06007496号
传真:020-85548112 E-mail:Service@lightingchina.com.cn 中国照明网