公务员期刊网 论文中心 正文

信息查询系统电路设计与实现分析

信息查询系统电路设计与实现分析

摘要:手写满文信息查询系统能够实现手写满文单词输入,并显示其罗马转换、字母组成和中文意思等信息的功能。提出的基于嵌入式的查询系统电路设计方案,是以Keil5软件为开发平台,基于STM32F4处理器运用C语言编程开发了触摸屏模块、SRAM模块、SD卡模块和通信模块,以及优化后的预处理和特征提取算法,并利用串口实现了与PC机的数据传输。硬件电路是在Altium-Designer9软件上设计实现的,包括原理图设计以及PCB板的制作。经过测试,系统能够完成所需的功能,并且实时性强、界面友好、操作方便。

关键词:嵌入式;手写满文单词;信息查询;电路设计

0引言

成立中国最后一个封建王朝的民族是满族,它不但发明了自己独立的文字--满文,而且使满文文字广泛使用并成为了清朝的法定文字,铸造了大量的有关满文的古籍文献,其中包括图书、碑文、档案、地图等等。满文古籍文献在中国55个少数民族的古籍文献中,不管是数量还是种类都是最多的一种。它在少数民族语言文字领域有重要地位,是中华民族文化遗产不可或缺的组成部分,具有重要的历史文化价值和极高的收藏研究价值[1]。目前社会上,满族大多被汉化,会说满语的人寥寥无几,满族的文化在不断的消亡。因此,设计一个满文信息查询系统很有必要[2],该系统调试完成后能实现手写输入满文文字并可查询到其所有的信息(包括罗马转换、中文意思、满文字母组成等)的功能。本文是在已有满文字母库、满文采集库的基础上,设计了一个功能较完善的手写满文信息查询系统。

1方案设计

根据系统所完成的功能,构建系统电路设计方案,其系统结构框图如图1所示。整个系统硬件主要包括了LCD触摸屏模块、输入控制模块和通信模块。其中输入控制模块又包含了电源供电模块、ARM控制模块、SRAM存储模块以及SD卡等[3]。触摸屏模块用来显示系统界面以及手写输入;输入控制模块用来进行手写数据采集、数据的转化处理以及数据存储;通信模块主要功能是将处理好的字母图像的特征发送到为了使系统界面显示良好,触摸屏选用FT5206驱动的ATK-7’TFTLCDV2定制电容触摸屏[4],其采用SSD1963驱动。该LCD触摸屏能够有效地克服非选通时的串扰并且液晶显示屏的静态特性与扫描线数没有联系,因此大大提高了图像质量,其分辨率为800×480。LCD触摸屏接口与STM32F407ZGT6连接时是在FSMC总线上,这样可以显著的提高LCD的刷屏速度。

2电路设计

2.1输入控制模块

电源供电模块、SRAM存储模块、ARM控制模块、SD卡,这些模块都是以STM32F407ZGT6为核心来实现它们的功能。

2.1.1电源供电模块

电源供电模块分为两部分,一是直流供电部分:当DC_IN接入外部直流电源输入,经过稳压芯片MP2359时会将高电压转换为电路需要的5V电源输出。DC_IN接防反接二极管就是为了避免当外部直流电源极性搞错的时会烧坏电路板。第二部分是5V转3.3V电路的降压电路:K1为开发板的总电源开关,电源供电电流接到K1后输出为VCC5,电路连接稳压芯片AMS1117_3.3,当5V电源通过此芯片时电压转换为3.3V输出,输出端的VCC3.3用来给其余电路供电。供电电源中,有一部分是由USB供电的。当用USB供电时,在按键K1处需要加一个1000ma的自恢复保险丝,用于保护USB。

2.1.2SRAM存储模块

该系统所需内存比较大,STSTM32F407ZGT6本身自带的192K字节的SRAM远满足不了需求,因此STM32F4开发板在前几代的基础上加上了一块1M字节容量的SRAM芯片——IS62WV51216是一个16位宽512K容量的CMOS静态内存芯片.该芯片具有高速、低功耗、TTL电平兼容、全静态操作、三态输出、字节控制等特点,满足系统的需要[5]。系统开机运行之后会出现提示信息,之后按下控制按键KEY0,就可测试外部SRAM容量大小,同时会显示在液晶显示屏上。如果按下KEY1按键,就会显示预存在外部SRAM的数据。

2.1.3ARM控制模块

此系统选择的是STM32F407ZGT6芯片作为MCU,包括时钟电路、复位电路、最小系统等。该芯片配置强大,是32位高性能ARMCortex-M4处理器。他的时钟高达168M,实际还可以超屏一点点,支持FPU(浮点运算)和DSP指令。其有144引脚即114个IO口,大部分IO口都耐5V(模拟通道除外),支持调试:SWD和JTAG[5]。STM32F4的时钟系统与之前所学的51单片机相比较复杂,,但同时功能强大,满足系统需求。STM32这系列的芯片都是非常复杂的且外设非常的多,在STM32F4中,有5个最重要的时钟源为HSI、HSE、LSI、LSE、PLL。。按时钟频率来分辨,可以分为高速时钟源和低速时钟源。系统中用了低速外部时钟,接频率为32.768kHz的石英晶体,其主要是RTC的时钟源。以及高速外部时钟,开发板接的是8M的晶振。由于STM32是低电平复位的,所以当我们在设计的电路的时候要用低电平复位。如图5所示为复位电路的原理图,这里的电阻R23和电容C41构成了上电复位电路。同时,开发板把TFT_LCD的复位引脚也接在RESET上,这样这个复位按钮不仅可以用来复位MCU,还可以复位LCD。

2.1.4SD卡

系统中存储满了文字母库、满文单词采集库、罗马转换等大量数据,需要大容量的存储设备,适合单片机系统的只有SD卡。此电路选用的SD卡采用了4位SDIO方式驱动,理论上来说它的最大速率可以达到24MB/S[6],非常适合需要高速存储的情况。当从机在收到主机相关的命令之后,就会开始发送数据块给主机,所有数据块都带有CRC校验值。当单个数据块读的时候收到1个数据块以后即可以停止了,不需要发送停止命令,但是多块数据读的时候,SD卡将一直发送数据给主机,直到接到主机发送的STOP命令。要实现SDIO驱动SD卡,最重要的步骤就是SD卡的初始化。首先给SD卡上电,上电后发送CMD0,对卡进行软复位,之后发送CMD8命令。

2.2通信模块

通信模块一个是用于下载调试程序的JTAG电路,直接连接在MCU的引脚上引出标准的20针JTAG接口,下载时多用SWD模式,如图6所示。串口是一个非常通用的通信设备,为采集大量数据提供极大方便。此系统中使用CH340G芯片将USB转换成串口,其中RESET是开发板的复位信号,BOOT0则是启动模式的B0信号。一般情况下如果要使用串口下载代码,则必须配置BOOT0为1,BOOT1为0,而如果想让STM32一按复位键就开始运行代码,则需要配置BOOT0为0,BOOT1设置为0或1均可。如图7所示。USB_LSAVE是一个MiniUSB座不仅为CH340G和电脑通信提供接口,而且可以给开发板供电,

3电路运行与测试

系统电路原理图设计以及PCB的制作都是在Altium-Designer9上完成,VUSB是来自电脑USB的电源,USB_LSAVE是本开发板的主要供电口。

3.1串口测试

利用串口调试助手,检查整个系统模块是否正常通讯,以及下位机发送的数据是否与显示数据一致。调试时串口设置为COM4,波特率是115200,数据位是8M。调试时数据显示如图9所示。经过测试数据对比,上位机接收正常,数据显示都符合理论要求。

3.2整机测试

手写一个满文文字后,则出现其罗马转写和文字分割后的满文字母,并且显示其中文意思,运行界面测试如图10所示。经测试后,系统的各个模块运行良好,界面显示友好。

参考文献:

[1]许爽,李敏,朱满琼等.满文识别技术研究与分析[J].大连民族学院学报,2014,16(5):546-551.

[2]吴敏.从满文发展的历史与现状谈保护与发展满文的意义[J].满族研究,2010(99):62-65.

[3]王帆,李敏,丁纪峰,许爽,郑蕊蕊.手写满文字母采集系统的设计与实现[J].大连民族学院学报,2016

[4]张勇强,阳泳,于建坤.基于STM32的图像采集与显示系统的设计与实现[J].电子世界,2016(2):34-36.

[5]卢有亮.基于STM32的嵌入式系统原理与设计[M].北京:机械工业出版社,2014.RoyalInstitute

[6]周兴华,李敏,郑蕊蕊等.印刷体满文文字数据库的构建与实现[J].大连民族学院学报,2015,17(3):270-273.

作者:付玉 王帆