VFD的实现原理和驱动设计

2023-10-28 06:20
文章标签 实现 设计 驱动 原理 vfd

本文主要是介绍VFD的实现原理和驱动设计,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

VFD的实现原理和驱动设计

单片机音响技术网 2008/2/21

VFD 的简单介绍

VFD 是指真空荧光显示器,是 Vacuum Fluorescent Display 的缩写,利用电子撞击玻璃基板上的荧光粉而发光,通过VFD上面的各个亮点的组合一起发亮来显示字符,数字,特定的图标等等。由于VFD的显示,清晰 明亮 低工耗等特点被广泛用于家用电器,仪器设备,自动动化设备等上面,用来显示数字信息如温度,字符信息 如:名称 和一些标记指示信息。有关VFD的硬件结构,工作原理,在网上有很多的介绍,在官方网站可以很容易的找到非常准确的介绍。VFD原理及使用请在本站下载

DVD视盘机的VFD显示典型硬件电路

电路图

VFD的硬件电路可根据VFD屏的SPEC了解其需要驱动的段,位,选择相应的驱动IC,常用的包括PT6312,PT6311,PT6311相对驱动的段,位多些,可连接的按键也多些。驱动电路的外围元件参数参照PT6311,PT6312的SPEC即可,需要注意的是,6312,6311有很多品牌均可通用,不同品牌的驱动注意其振荡电阻阻值的差异,其余基本相同,另外在电路半设计中驱动电压+5V的去藕电容尽量靠近IC,驱动数据线(DATA,STB,CLK)各连接一个101瓷片到地,保证IC,数据线不受干扰或减轻干扰。

VFD显示屏的供电

电路图

VFD显示屏的供电包括交流~3V3灯丝电压和驱动芯片需要的-21V~-27V以及+5V,上图是典型的变压器次级供电处理电路。
还有一种方法是用直流逆变得到或者使用开关电源,现在市场上很多专门的DVD开关电源,满足DVD解码板以及VFD显示的电源要求,电源组包括:+5V,±12V,-21V,~3V3,有些还带常用集成功放的电源,使用他们也非常方便。笔者设计的TOPAV-2008开发平台,其VFD供电采用了直流逆变交流的方式,结构非常简洁,使用方便,详细可到单片机音响技术网了解。

VFD 的软件控制驱动设计

前面说过VFD用途广泛,所以就非常有必要搞清楚如何通过软件去驱动它了,怎样让VFD显示我们要显示的内容,这就是一个程序员要思考的问题了,也是本文的目力所在。市场上有很多电子产品都要用到VFD,其中目前比较火热的数字电视,机顶盒(DVB)还有DVD上面都在使用VFD显示。要想让VFD正常的工作还要依赖一个工作的平台,比如说,你是在 Sunplus平台上,还是在Cheertek,Ali,ST,MTK,ESS的等平台上做。要让程序能高效的工作,并且具备最大可能性的移植和扩展性是非常重要的,例如让一个VFD的驱动模块同时可以在 Sunplus,cheertek,Ali等多个平台上工作,也可以能在其它单片机上工作,只要它能支持 C语言编程。为了让整个模块更加的模块化,我们就需要对整个模块进行进一步的细份。哎!废话少说,太激动了。

驱动三步走

我们把VFD的驱动分成三步或三部分来实现,各个部分实现相应的功能:

第一步:上层接口,用于适应市场上不同公司和种类的VFD。
第二步:中间层 ,VFD各中显示功能的的实现,用语满足显示需求。例如:一般显示,闪动, 滚动,旋转,等....
第三步:平台接口,用于实现和各个平台之间的接口,主要是和CPU的通信。
基于上面的构想,下面就来分步实现它

简单的介绍一下实现环境:

编译环境:GCC

语言 :C

测试平台:Cheertek(CT219,909),和Ali(Ali3330,3329)(DVB的外部显示,用来显示电台名称等等…)

VFD硬件:CS16312。

第一步:建立通用接口:用于适应市场上不同公司和种类的VFD 8段编码在开始写成程序实现之前,先了解字符显示的原理,字符是根据8段编码的方式在VFD上面显示的,当然也有更多段的编码方式。8段编码用一个字节来描述一个ASCII字符,对扩展的ASCII 码如包含德语,法语等就要用到更多段的编码,也就是用多个字节来表示一个字符。

在一个八段编码的VFD中,把8段分别定义为 a,b,c,d,e,f,g,h段,用一个字节来表示就是
h g f e d c b a
h是字节的最高位,a是字节的最低位。
显示字符的原理如下:

电路图

电路图

VFD常用字母的写法
“米”字8和8的区别请注意有不同根据上面的原理,0 表示熄灭,1 表示点亮,可以得出,8段分别点亮后的对应编码是:

8段的每一段对应一个字节的一个位的:

h : 1000 0000 ---> 0x80
g : 0100 0000 ---> 0x40
f : 0010 0000 ---> 0x20
e : 0001 0000 ---> 0x10
d : 0000 1000 ---> 0x08
c : 0000 0100 ---> 0x04
b : 0000 0010 ---> 0x02
a : 0000 0001 ---> 0x01
根据上面的每段编码,如果要显示字符 'A' 需要同时点亮a,b,c,e,f,g段并且d段熄灭,这样一个 'A' 的字符轮廓就出来了,如上图”AbCd”中的'A',所以的字母A的编码是0111 0111 也就是把相应要点亮的段编码或起来就可以了'A'的编码值 = a|b|c|e|f|g 各个段的对应关系如下:

7 6 5 4 3

这篇关于VFD的实现原理和驱动设计的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/291281

相关文章

Java根据IP地址实现归属地获取

《Java根据IP地址实现归属地获取》Ip2region是一个离线IP地址定位库和IP定位数据管理框架,这篇文章主要为大家详细介绍了Java如何使用Ip2region实现根据IP地址获取归属地,感兴趣... 目录一、使用Ip2region离线获取1、Ip2region简介2、导包3、下编程载xdb文件4、J

PyQt5+Python-docx实现一键生成测试报告

《PyQt5+Python-docx实现一键生成测试报告》作为一名测试工程师,你是否经历过手动填写测试报告的痛苦,本文将用Python的PyQt5和python-docx库,打造一款测试报告一键生成工... 目录引言工具功能亮点工具设计思路1. 界面设计:PyQt5实现数据输入2. 文档生成:python-

Android实现一键录屏功能(附源码)

《Android实现一键录屏功能(附源码)》在Android5.0及以上版本,系统提供了MediaProjectionAPI,允许应用在用户授权下录制屏幕内容并输出到视频文件,所以本文将基于此实现一个... 目录一、项目介绍二、相关技术与原理三、系统权限与用户授权四、项目架构与流程五、环境配置与依赖六、完整

浅析如何使用xstream实现javaBean与xml互转

《浅析如何使用xstream实现javaBean与xml互转》XStream是一个用于将Java对象与XML之间进行转换的库,它非常简单易用,下面将详细介绍如何使用XStream实现JavaBean与... 目录1. 引入依赖2. 定义 JavaBean3. JavaBean 转 XML4. XML 转 J

Flutter实现文字镂空效果的详细步骤

《Flutter实现文字镂空效果的详细步骤》:本文主要介绍如何使用Flutter实现文字镂空效果,包括创建基础应用结构、实现自定义绘制器、构建UI界面以及实现颜色选择按钮等步骤,并详细解析了混合模... 目录引言实现原理开始实现步骤1:创建基础应用结构步骤2:创建主屏幕步骤3:实现自定义绘制器步骤4:构建U

SpringBoot中四种AOP实战应用场景及代码实现

《SpringBoot中四种AOP实战应用场景及代码实现》面向切面编程(AOP)是Spring框架的核心功能之一,它通过预编译和运行期动态代理实现程序功能的统一维护,在SpringBoot应用中,AO... 目录引言场景一:日志记录与性能监控业务需求实现方案使用示例扩展:MDC实现请求跟踪场景二:权限控制与

Android实现定时任务的几种方式汇总(附源码)

《Android实现定时任务的几种方式汇总(附源码)》在Android应用中,定时任务(ScheduledTask)的需求几乎无处不在:从定时刷新数据、定时备份、定时推送通知,到夜间静默下载、循环执行... 目录一、项目介绍1. 背景与意义二、相关基础知识与系统约束三、方案一:Handler.postDel

使用Python实现IP地址和端口状态检测与监控

《使用Python实现IP地址和端口状态检测与监控》在网络运维和服务器管理中,IP地址和端口的可用性监控是保障业务连续性的基础需求,本文将带你用Python从零打造一个高可用IP监控系统,感兴趣的小伙... 目录概述:为什么需要IP监控系统使用步骤说明1. 环境准备2. 系统部署3. 核心功能配置系统效果展

Python实现微信自动锁定工具

《Python实现微信自动锁定工具》在数字化办公时代,微信已成为职场沟通的重要工具,但临时离开时忘记锁屏可能导致敏感信息泄露,下面我们就来看看如何使用Python打造一个微信自动锁定工具吧... 目录引言:当微信隐私遇到自动化守护效果展示核心功能全景图技术亮点深度解析1. 无操作检测引擎2. 微信路径智能获

redis中使用lua脚本的原理与基本使用详解

《redis中使用lua脚本的原理与基本使用详解》在Redis中使用Lua脚本可以实现原子性操作、减少网络开销以及提高执行效率,下面小编就来和大家详细介绍一下在redis中使用lua脚本的原理... 目录Redis 执行 Lua 脚本的原理基本使用方法使用EVAL命令执行 Lua 脚本使用EVALSHA命令