文中介绍了一种直接利用LabVIEW的图片处理功能自动生成字符点阵的方法,利用该程序无需使用专门的字库可自动得到各种字符的点阵,然后将显示信息通过串行传输方式发送到单片机,通过单片机驱动相应的二极管发光,显示信息。硬件由计算机、单片机、驱动电路和LED显示屏构成,结构如图1所示。
1 基于LabVIEW的汉字字模的提取
1.1 基于LabVIEW的汉字字模的提取方法
现在比较流行的方法是基于汉字字符的编码方式形成字模。
汉字机内码与区位码的关系为
区位码=机内码-160 (1)
对于16×16点阵字库,每个汉字占用32 bit,其首字节的起始位置的计算公式为
首字节=[(区码-1)×94+位码-1]×32(2)
以此为基点连续读取32 bit就是此汉字的点阵字模。在LabVIEW编程中基本流程为:以字符串形式输入一个汉字,按照上述运算规则找出汉字字模首字节在汉字库文件HZK16中的位置,从HZK16中以首地址开始连续读取32 bit的数据,这样就得到了一个容量为32的数组,即输入汉字的点阵字模。然后再按照下位机的构建运用数组的算术运算控件对数组修改,将最终结果通过串口发送给单片机,以进行显示。
本系统利用LabVIEW的图片处理功能生成字模,包括汉字、数字、英文以及各种特殊符号等等,提高工作效率和灵活性。
1.2 利用LabVIEW的图片处理功能生成字模的设计
首先设置一个白色的按钮,通过属性节点,把输入的字符作为这个按钮的文本显示。在通过调用节点,获取这个布尔的图像数据。将图像数据转化为8位像素矩阵。同样的方法获得一个同样大小但没有布尔文本的纯白色按钮的像素矩阵。将2个矩阵做异或比较。得到一个二维布尔矩阵,直接输出这个矩阵就得到了该字符的点阵。生成字符矩阵框图程序如图2所示。采用比较的方法获得点阵,因此可以采用这种方法在同一系统中产生数字、汉字、英文或各种特殊符号的字模点阵,简化了编程过程,使用方便灵活。
由于LahVIEW有很强的格式转化功能,将生成的点阵按照下位机的驱动方式运用其中数组的运算控件对点阵进行修改,得到符合要求的字符串。程序框图,如图3所示。图中的字模1为用于上位机显示的字符串形式,字模2为用于串口通信的字符串形式。