单片机LED三维动态信息显示系统 第6页
11
2.3 LED显示系统的设计
课题设计中的显示系统将采用一定的旋转精度来驱动显示系统中的步进电机平稳地
运转起来,从而带动发光棒以预定的方式合理地转动,为了方便操作,需要有速度可控,
位置可确定等特点。简单介绍如下:
首先是步进电机部分,可通过单片机的控制,来驱动电机旋转,从而带动显示棒转动。
其次是显示棒的选择需挑选质地较硬且颜色较浅的直棒,这样的话在转动的时候不至于发
生形变,从而影响显示效果。最后是将发光二极管很好的镶嵌在显示棒上,拟采用进口的
管芯,亮度高、平面度好且每个二极管可以很好的拼成一条直线,中间不会出现空隙。
因此当有信息需要显示时,先要驱动步进电机转动起来,通过一些机械装置来带动直
棒转动,达到一定的转速,并且还要和信号的传递速率想匹配。这样的话,就可以看到一
个在立体空间里显示的文字符号或简单图形了。西安理工大学硕士学位论文
12
3汉字点阵字模的获取
3.1 VB软件设计
3.1.1 Visual Basic 6.0简介
Visual Basic 6.0是Microsoft公司开发的基于强大的WINDOWS平台上的一种应用程
序编程语言。它可以说是在计算机发展史上应用最为广泛的语言,具有功能强大、效率高
且简单易学的优势。它具有以下一些特点:
(1)可视化的设计平台
VB提供的可视化的设计平台,把WINDOWS界面设计的复杂性“封装”起来,使
界面设计如同搭积木游戏一样简单。用户只需按设计要求,在屏幕上画出各种对象,并为
其设置相应的属性,VB将自动产生程序界面的设计代码。可视化程序设计为开发
WINDOWS风格的应用程序,提供了简化编程难度的有效方法,大幅度提高了编程的效
率。
(2)事件驱动的编程机制
事件驱动是一种适用于图形用户界面的编程方式。当用户在操作界面上点击对象时,
该对象就会触发一个事件,此时该事件所对应的程序代码就会被执行,从而完成了指定的
操作任务。
(3)能够充分利用系统资源
动态数据交换(Dynamic Data Exchange,DDE)是WINDOWS操作系统下应用程序间
的一种标准通信方式。VB支持DDE,并可以实现和其它支持DDE的应用程序进行动态
数据交换或通信。VB支持WINDOWS对象的链接和嵌入技术(Object Link and Embedding,
OLE),其它应用程序的对象能够链接或嵌入到VB应用程序中,例如:Word文档、Excel
电子表格、图像、声音等,使VB能充分利用其它应用程序的数据。动态链接库(Dynamic
Link Library,DLL)是WINDOWS最显著的特点之一,VB支持这项技术。在VB程序运
行中,需要调用库函数的某个函数时,WINDOWS就从DLL中读出并运行之,例如可以
将用C、C++、汇编语言等编写的程序添加到VB程序中。
(4)具有较强的数据库管理功能
可以直接在VB中建立或访问Access数据库系统,也能够访问其他外部数据库。VB
提供了开放式数据库连接(Open Data Base Connectivity,ODBC)功能,可直接访问或通
过连接的方式管理并操作后台的大型数据库。同时提供了能自动生成SQL语句的功能和
新的ActiveX数据对象(ADO)。用VB设计应用程序的前台界面,通过ODBC连接后再3汉字点阵字模的获取
13
去访问后台的数据库,是目前开发应用系统的常用方法。
(5)全面支持多媒体技术
VB提供了多种功能的多媒体控件,能够使用户在较短的时间内,很快掌握编写多媒
体应用程序的技能[18]。
3.1.2 VB应用程序的结构
由于VB应用程序是基于对象的,所以应用程序的代码结构就是该程序的结构。VB
的代码存储在模块中。模块有三种类型:窗体、标准和类。在屏幕上看到的窗体代表属性,
这些属性定义了窗体的外观和内在特性。简单的应用程序可以只有一个窗体,应用程序的
所有代码都驻留在窗体模块(文件扩展名为.FRM)中。而当应用程序庞大复杂时,就要
另加窗体。最终可能会发现在几个窗体中都有要执行的公共代码。因为不希望在两个窗体
中重复编写代码,所以要创建一个独立模块,它包含实现公共代码的过程。独立模块应为
标准模块(文件扩展名为.BAS)
[19]
。每个标准模块、类模块和窗体模块都可包含:
声明:可将常数、类型、变量和动态链接库(DLL)过程的声明放在窗体、类或标准
模块的模块级。
过程:Sub、Function或Property过程包含可以作为单元来执行的代码片段
[20]
。
a.窗体模块
窗体模块(文件扩展名为.FRM)是大多数VB应用程序的基础。窗体模块可以包含
处理事件的过程、通用过程以及变量、常数、类型和外部过程的窗体级声明。如果要在文
本编辑器中观察窗体模块,则还会看到窗体及其控件的描述,包括它们的属性设置值。写
入窗体模块的代码是该窗体所属的具体应用程序专用的,它也可以引用该应用程序内的其
它窗体或对象。
b.标准模块
标准模块(文件扩展名为.BAS)是应用程序内其它模块访问的过程和声明的容器。
它们可以包含变量、常数、类型、外部过程和全局过程的全局(在整个应用程序范围内有
效的)声明或模块级声明。写入标准模块的代码不必绑在特定的应用程序上,如果不小心
用名称引用窗体和控件,则在许多不同的应用程序中可以重复使用标准模块。
c.类模块
在VB中类模块(文件扩展名为.CLS)是面向对象编程的基础。可在类模块中编写代
码建立新对象,这些新对象可以包含自定义的属性和方法。实际上,窗体正是这样一种模
块,在其上可安放控件、可显示窗体窗口。西安理工大学硕士学位论文
3.1.3事件驱动应用程序的方式
事件是窗体或控件识别的动作。在响应事件时,事件驱动应用程序执行Basic代码。
VB的每一个窗体和控件都有一个预定义的事件集。如果其中有一个事件发生,而且在关
联的事件过程中存在代码,则VB调用该代码
[21]
。尽管VB中的对象可以自动识别预定义
的事件集,但要判定它们是否响应具体事件以及如何响应具体事件则是编程的责任了。代
码部分(即事件过程)与每个事件对应。想让控件响应事件时,就把代码写入这个事件的
事件过程之中。对象所识别的事件类型多种多样,但多数类型为大多数控件所共有。例如:
大多数对象都能识别click事件,如果单击窗体,则执行窗体的单击事件过程中的代码;
如果单击命令按钮,则执行命令按钮的click事件过程中的代码。每种情况中的实际代码
几乎完全不一样[22]。这里是事件驱动应用程序中的典型事件序列:
(1)启动应用程序,装载和显示窗体。
(2)窗体(或窗体上的控件)接收事件。事件可由用户引发(例如键盘操作)或由
系统引发(例如定时器事件),也可由代码间接引发(例如当代码装载窗体时的Load事
件)。
(3)如果在相应的事件过程中存在代码,就执行代码。
(4)应用程序等待下一次事件
[23]
。
3.2汉字编码原理
3.2.1汉字与英文字母的表示方法及区别
众所周知,在计算机中除了数值型数据以外,还广泛使用非数值型数据,例如:汉字、
字母、符号及其它信息。这些非数值型数据在计算机内部的存放并不是直接存放字符本身,
而是存放其编码。所谓编码就是以若干位数码的不同组合来表示一组汉字、字母及符号的
方法。编码是人为指定的含义,常用的字符编码方法有ASCII码、BCD码等。
ASCII码(American Standard Code for Information Interchange,美国信息交换标准码)
是7位的二进制编码,它总共编码有128个符号,包括26个英文大写字母、26个英文小
写字母、0-9共10个数字、32个通用控制字符和34个专用字符如标点符号等,所以每个
英文字母在计算机内部是用一个ASCII码来表示的。但我们知道计算机中是以字节的形
式来存放数据的,因此当使用每一个ASCII码表示英文字母时只能占用一个字节的低7
位,而最高位被默认为“0”。同样的,中文汉字的表示也是采用ASCII码的形式,所不
同的是一个汉字对应两个ASCII码,且汉字机内码中两个字节的最高位均置“1”,从而
实现了汉字机内码和英文字符机内码的区别。
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>