基于STM32的LED点阵屏的设计与实现
近年来,随着信息产业的高速发展,点阵LED 显示屏已广泛应用于金融行业、邮电行业、体育馆、广告业等各种广告发布和信息显示系统,成为信息传送的重要手段。本文介绍的LED 书写点阵屏,不但可以像普通显示屏一样作为信息输出设备,而且可以通过光笔直接在LED 显示屏上进行信息输入,普通的显示屏也具有"手写"的功能了。
1 硬件系统设计
本系统总体框图如图1 所示,由键盘与显示模块、光笔模块、LED 点阵屏模块、STM32 控制模块、电源模块五部分组成。
图1 总体方案方框图
1. 1 核心控制模块
本系统以STM32F103VCT6 为控制核心。
STM32 是32 位微处理器,具有低功耗,中断延迟小,高性能等特点。STM32 处理器采用了指令预测和流水线技术,它的取指、译码和执行是同时进行的,分支预测给流水线提供连续的指令流,流水线可以不断地执行有效指令,因此STM32 的速度比8051 快得多; STM32 处理器内部集成锁相环可实现最大72MHZ 的工作频率,为实现高速的系统响应( 高速的扫描) 提供了基础; 其内置的两个看门狗定时器( 独立看门狗和窗口看门狗) 使系统更加稳定[1].STM32F103VCT6 有1 个12 位的us 级的A /D 转换器,9 个定时器,2 个I2C 接口,5个UART 接口,3 个SPI 接口,为以后的扩展提供了条件。
1. 2 光笔电路设计
人眼能分辨刷屏次数为24 次,根据经验本系统点阵屏的刷屏速度采用每秒70 次的经验刷屏次数,即70Hz,故要求光笔的反应速度大于70Hz.扫描方式是每一时刻只有一个点点亮,并且这个亮点朝一个方向移动,这时主控扫描的速度是1M.使用的点阵屏为32 ×32.当每秒刷屏次数超过24 次时才看不出点阵屏闪烁,在本系统中每秒刷屏68 次,所以光电器件所要达到的频率最小为68Hz,光电三极管( 3DU33) 灵敏度高,响应时间短,光敏三极管输出的脉冲经过74HC14 整形输出。光笔电路图如图2 所示:
图2 光笔原理示意图
1. 3 LED 点阵屏模块
32 × 32 LED 点阵屏电路原理框图如图3 所示。
STM32 主控器I /0 口作为点阵屏模块的输入控制信号,其中OE 为使能端,CLK 为时钟线,LT 为锁存信号,DA 为数据线,A、B、C、D 为行选通地址线[2].电路中74HC245 起总线缓冲作用,2 片74HC138 构成4 - 16 译码器,实现16 路的行选通,选通信号经由4953MOS 管激励为行驱动,行驱动为H1 ~ H16,每一行驱动负责32 × 32 点阵两行的选通( 如H1 控制第1 行和第17 行,H2 控制第2 行和第18 行) .串行数据由74HC245 缓冲后,送入级联的74HC595 串并转换和驱动,电路中共设计有8 片74HC595,其中4 片用于第1 行~ 第16 行的列数据转换,另外4 片用于第17 行~ 第32 行的列数据转换。
图3 LED 点阵屏电路原理框图
2 软件系统设计
STM32 系列微控制器采用C 语言进行程序设计,开发调试环境为Keil MDK.主程序流程图如图4 所示。
图4 主程序流程图
当系统上电后,LCD 与LED 点阵屏分别显示各自的开机界面。与此同时,STM32 对键盘进行扫描。
任何状态,按下"背光"键就可打开或关闭液晶的背光灯,此功能使得该点阵屏在夜间也可以随意使用,白天可以将背光手动关闭,减小功耗,节约能源。
当"设定"键按下后,进入功能选择显示界面。
此时按上下键可进行功能选择。依次进入点亮、划亮、反显、整屏擦除、笔画擦除、连写多字、对象拖移、设定休眠时间、调节亮度等功能。指示图标在哪种功能前闪动,代表该功能被选中,点阵屏即可在系统控制下执行相应功能。在任何一种功能下,按下"确定"键即可显示光笔位置的坐标。此功能在各项功能下均可跟随光笔坐标,以便快速确定光笔所在位置。
在连写多字功能中,每写好一个字后,按下自定义的"1"键将写好的字存储至相应的数据缓冲区,四个字写完后,用光笔靠近点阵屏给STM32 一个信号即可将已存储的四个字逐个轮流显出。为方便书写,加快书写速度,字体存储后,当光笔靠近点阵屏时,给予自动清屏。在对象拖移功能中,先圈定对象,用光笔在对象上选定坐标参考点进行拖动,判断光笔当前坐标与参考点坐标的关系,对圈定对象对应的RAM 区数据进行相应的操作[4],之后更新参考点坐标值,重复上述指令,直至对象拖移结束。
在调节亮度功能下,点阵屏可根据环境自动改变亮度。操作人员也可根据需要手动调节,并保持该亮度[4].
3 测试方案与测量结果
3. 1 测量设备
主要的测量设备有直流稳压源YB1730、数字式万用表( FLUKE 15B) 、万用表SJ47100MHz 和双通道示波器( TeKtronix TDS2012B) .测量单位是秒表,精度0. 01s.
3. 2 实际测量结果
3. 2. 1 点亮、擦除。
"点亮"模式如表1 所示。
表1 "点亮"模式
结果显示: 点亮点准确,坐标显示准确。
"擦除"模式如表2 所示。
表2 "擦除"模式
3. 2. 2 屏亮调节。
屏亮调节测试如表3 所示。
表3 屏亮调节测试
- STM32-FSMC机制的NOR Flash存储器扩展技术(11-20)
- 基于Cortex-M3的 STM32微控制器处理先进电机控制方法(11-23)
- 基于STM32控制的声音导引系统(01-16)
- 基于Cortex-M3的STM32微控制器处理先进电机控制方法(03-07)
- 基于STM32的嵌入式语音识别模块设计(03-29)
- 新一代嵌入式微处理器STM32F103开发与应用(05-08)