论文部分内容阅读
【摘 要】本文介绍了目前市场上常用手写板的原理,在此基础上详细介绍了基于89C51单片机的数据输入、红外接收矩阵的硬件设计过程与软件编写思想。红外接受矩阵首先感应到光笔所发出的亮光并将信号发送给单片机,然后显示在LED点阵屏上。该屏具有安全、运行可靠、经济效益好、节约能源、便于使用的特点。电路具有稳定可靠的特点,可以在大部分常规的条件下进行工作。
【关键词】红外接收管 LED显示屏 单片机
当前,大部分的手写板都是通过上位机直接与PC机相连,然后将手写板上的数据显示在PC机上,这种方法虽然简单但是受环境和设备的影响较大,而且无法在室外等环境下进行大规模的应用。而本次设计却有着显而易见的优势,LED对环境的要求较低,可以在室内室外均可使用,而且大小容易掌握。并且LED价格低廉容易实现大规模的应用。
一、方案设计
基于单片机的LED点阵数据输入器主要工作原理是在单片机的控制下,红外接收矩阵工作在循环扫描的状态下;当光笔触及红外接收矩阵模块时,红外接收矩阵感应到相应位置的红外接收管处于工作状态,将产生的电平信号输入到单片机中,单片机产生相应的终端,然后将写下来的数据传输至LED显示屏中。其次,可以根據按键选择不同的工作模式,书写、擦除、多次书写等。
二、硬件设计
(一)红外接收板电路设计
本设计中的单片机采用89C51或其兼容系列的芯片,整个矩阵由16*16共256个红外接收管组成,单片机使用24MHz左右频率,以使整个矩阵工作可以进行快速的循环扫描。单片机的串口与列驱动器相连,用来送显示数据。P1端的低4位与行驱动器相连,送出选择行的信号;P1.5~P1.7口则用来发送控制信号。P0和P2口暂时不用,在有必要时可以扩展系统的ROM和RAM。
(二)红外手写笔设计
红外手写笔的设计对光笔的要求比较高,必须避开外界光的影响,尤其的太阳光。同时还要求能完成LED微弱广度的识别。在这里我们选择受外界光线干扰较小的光敏二极管。其工作原理为:光敏二极管通过对点阵屏的闪烁频率进行检测,光敏二极管只要检测到闪烁,便会产生一个脉冲信号,该脉冲信号通过—个微分电路提取出来,再用窗口比较器完成信号的放大,主要采用调节电位器完成放大电路的基准电压的调节,使输出的电压值为+12V或-12V,最后使用一个NPN型三极管来完成该信号的降压取反,最终得出的电压数值必须符合单片机采样的要求(图中二极管D5的功能是防止三极管软击穿),将其作为一个输入单片机的信号。
(三)红外接收矩阵电路设计
通过单片机P1口低6位输出信号,经过3/8线译码器74LS138译码后生成16条输出信号线,由驱动器完成对应行线的驱动。每一条行线要带动16列的红外接收管完成探测,每一红外接收管器件的电流量为20mA,如果16个红外接收管同时进行工作,所需要的电流量为320mA,选用的驱动管为三极管8550便可满足其需求。
集成电路74HC595是列驱动电路的主要构成部分,它由一个输出锁存器和一个移位寄存器组成,它们之间相互独立完成工作,工作过程中可实现数据的重叠,在进行下一行数据传输的同时并不影响本列数据的显示。
(四)数据存储器的设计
本设计采用片外直接存储器RAM与单片机互相交换数据,主要是通过控制地址锁存器的方式来进行的。我们一般要求小的LED显示屏幕可显示几个到几十个汉字,我们按一个汉字的大小需要32字节的空间来计算,32KB的RAM可存储大约900个汉字,而一般我们所所使用的RAM62256一片的容量也恰好是32KB,所以从理论上讲62256基本满足我们的设计需要。
(五)通讯电路设计
在本设计中我们使用串口进行通讯。从理论上讲,计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。但是由于串行通讯方式具有使用线路少、成本低,简单易于实现的功能所以在本次设计中我们采用串口的方式进行通讯。
在串行通讯时,双方必须使用统一标准的借口,使不同的设备可以方便地连接起来进行通讯。RS-232接口是目前最常用的一种串行通讯接口。
(六)电源电路设计
本次电源的设计不但为本次设计提供电源,还考虑到以后经常使用不同电源的电压,因此设计出了正负12V,正负9V以及正负5V多种电压。
三、软件设计
红外接收矩阵的程序的主要原理主要通过快速不间断地扫描判断出光电笔所点的位置。大致过程为首先选择行,进行扫描检测电平是否变化,若变化单片机产生一个中断,并向下继续扫描,若无变化则不产生中断继续扫描。当扫描过一行之后行数加1,继续扫描,以此类推当所有的行数都扫描之后复位至第一行重新开始扫描。
对于51单片机来讲,实现串口通信的最佳方法就是利用中断。串口通信的大致流程可以总结为:初始化串口:1.选择串口号,串口参数等;2.打开串口;3.发送/接受数据;4.关闭串口。通信线上传输了一个字节到单片机串口上,硬件自动将其接收并存储在SBUF里,此时会产生一个中断(串口接收中断),单片机的相应中断使能(ES,EA)打开的时候,就可以进入中断,方便处理通讯。关闭中断时,仍可以使用查询的方式进行通讯处理。
手写板数据存储程序利用两个指针完成数据的交换,但是实际上80C51并没有两个相互独立的地址指针,但是通过修改特殊功能寄存器OA2H中的数据(0或者1)使一个地址指针指向两个不同的16位地址,就像操作两个地址指针一样。同样在进行存储数据的时候要对相应的端口进行初始化,否则将会出现数据上的错误。
四、结论
通常LED点阵屏的显示数据都是由PC机完成数据输入,然后传送到LED显示屏。本设计是区别于一般的手写板,解决了一般手写板只能为电脑输入数据的问题,而LED显示屏其本身基于有着很强广泛的应用,这使得手写板在应用上更加广泛,因此我们可以看出,本设计有着很广阔的应用场景。
参考文献:
[1] 杨代勇,何让平,黄亚玲,魏超,陈炳权. 基于FPGA+MCU的大型LED显示屏系统设计[J]. 吉首大学学报(自然科学版). 2011(04)
[2] 于清洋,符雪,张新元. 基于单片机的LED显示屏设计[J]. 科技信息. 2011(16)
【关键词】红外接收管 LED显示屏 单片机
当前,大部分的手写板都是通过上位机直接与PC机相连,然后将手写板上的数据显示在PC机上,这种方法虽然简单但是受环境和设备的影响较大,而且无法在室外等环境下进行大规模的应用。而本次设计却有着显而易见的优势,LED对环境的要求较低,可以在室内室外均可使用,而且大小容易掌握。并且LED价格低廉容易实现大规模的应用。
一、方案设计
基于单片机的LED点阵数据输入器主要工作原理是在单片机的控制下,红外接收矩阵工作在循环扫描的状态下;当光笔触及红外接收矩阵模块时,红外接收矩阵感应到相应位置的红外接收管处于工作状态,将产生的电平信号输入到单片机中,单片机产生相应的终端,然后将写下来的数据传输至LED显示屏中。其次,可以根據按键选择不同的工作模式,书写、擦除、多次书写等。
二、硬件设计
(一)红外接收板电路设计
本设计中的单片机采用89C51或其兼容系列的芯片,整个矩阵由16*16共256个红外接收管组成,单片机使用24MHz左右频率,以使整个矩阵工作可以进行快速的循环扫描。单片机的串口与列驱动器相连,用来送显示数据。P1端的低4位与行驱动器相连,送出选择行的信号;P1.5~P1.7口则用来发送控制信号。P0和P2口暂时不用,在有必要时可以扩展系统的ROM和RAM。
(二)红外手写笔设计
红外手写笔的设计对光笔的要求比较高,必须避开外界光的影响,尤其的太阳光。同时还要求能完成LED微弱广度的识别。在这里我们选择受外界光线干扰较小的光敏二极管。其工作原理为:光敏二极管通过对点阵屏的闪烁频率进行检测,光敏二极管只要检测到闪烁,便会产生一个脉冲信号,该脉冲信号通过—个微分电路提取出来,再用窗口比较器完成信号的放大,主要采用调节电位器完成放大电路的基准电压的调节,使输出的电压值为+12V或-12V,最后使用一个NPN型三极管来完成该信号的降压取反,最终得出的电压数值必须符合单片机采样的要求(图中二极管D5的功能是防止三极管软击穿),将其作为一个输入单片机的信号。
(三)红外接收矩阵电路设计
通过单片机P1口低6位输出信号,经过3/8线译码器74LS138译码后生成16条输出信号线,由驱动器完成对应行线的驱动。每一条行线要带动16列的红外接收管完成探测,每一红外接收管器件的电流量为20mA,如果16个红外接收管同时进行工作,所需要的电流量为320mA,选用的驱动管为三极管8550便可满足其需求。
集成电路74HC595是列驱动电路的主要构成部分,它由一个输出锁存器和一个移位寄存器组成,它们之间相互独立完成工作,工作过程中可实现数据的重叠,在进行下一行数据传输的同时并不影响本列数据的显示。
(四)数据存储器的设计
本设计采用片外直接存储器RAM与单片机互相交换数据,主要是通过控制地址锁存器的方式来进行的。我们一般要求小的LED显示屏幕可显示几个到几十个汉字,我们按一个汉字的大小需要32字节的空间来计算,32KB的RAM可存储大约900个汉字,而一般我们所所使用的RAM62256一片的容量也恰好是32KB,所以从理论上讲62256基本满足我们的设计需要。
(五)通讯电路设计
在本设计中我们使用串口进行通讯。从理论上讲,计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。但是由于串行通讯方式具有使用线路少、成本低,简单易于实现的功能所以在本次设计中我们采用串口的方式进行通讯。
在串行通讯时,双方必须使用统一标准的借口,使不同的设备可以方便地连接起来进行通讯。RS-232接口是目前最常用的一种串行通讯接口。
(六)电源电路设计
本次电源的设计不但为本次设计提供电源,还考虑到以后经常使用不同电源的电压,因此设计出了正负12V,正负9V以及正负5V多种电压。
三、软件设计
红外接收矩阵的程序的主要原理主要通过快速不间断地扫描判断出光电笔所点的位置。大致过程为首先选择行,进行扫描检测电平是否变化,若变化单片机产生一个中断,并向下继续扫描,若无变化则不产生中断继续扫描。当扫描过一行之后行数加1,继续扫描,以此类推当所有的行数都扫描之后复位至第一行重新开始扫描。
对于51单片机来讲,实现串口通信的最佳方法就是利用中断。串口通信的大致流程可以总结为:初始化串口:1.选择串口号,串口参数等;2.打开串口;3.发送/接受数据;4.关闭串口。通信线上传输了一个字节到单片机串口上,硬件自动将其接收并存储在SBUF里,此时会产生一个中断(串口接收中断),单片机的相应中断使能(ES,EA)打开的时候,就可以进入中断,方便处理通讯。关闭中断时,仍可以使用查询的方式进行通讯处理。
手写板数据存储程序利用两个指针完成数据的交换,但是实际上80C51并没有两个相互独立的地址指针,但是通过修改特殊功能寄存器OA2H中的数据(0或者1)使一个地址指针指向两个不同的16位地址,就像操作两个地址指针一样。同样在进行存储数据的时候要对相应的端口进行初始化,否则将会出现数据上的错误。
四、结论
通常LED点阵屏的显示数据都是由PC机完成数据输入,然后传送到LED显示屏。本设计是区别于一般的手写板,解决了一般手写板只能为电脑输入数据的问题,而LED显示屏其本身基于有着很强广泛的应用,这使得手写板在应用上更加广泛,因此我们可以看出,本设计有着很广阔的应用场景。
参考文献:
[1] 杨代勇,何让平,黄亚玲,魏超,陈炳权. 基于FPGA+MCU的大型LED显示屏系统设计[J]. 吉首大学学报(自然科学版). 2011(04)
[2] 于清洋,符雪,张新元. 基于单片机的LED显示屏设计[J]. 科技信息. 2011(16)