文档介绍:基于AVR
单片机的嵌入式拼音输入法
一、设计背景
随着近年来嵌入式设备的广泛应用,人们对其要求变的丰富多样,而不仅限 于简单的操纵操作了。越来越多的界面友好,富有人性化的设计开始显现在嵌入 式设备上,如智能手机收发电子邮件、编写文档、车教GPS导航查询等等。所 有的这些都离不开人机交互,因而嵌入式设备的汉字输入法应运而生,足以满足 人们对复杂信息的处理交换要求,而且更加直观易用。
二、设计思路
关于市面上现有的嵌入式设备,其拼音输入法大多数是基于操作系统的, 如智能手机等设备基于Windows或Linux操作系统,一样的手机也多基于简化 Linux系统,即使是电子词典等设备也有其单独设计的简化操作系统。基于操作 系统下的输入法设计是比较简单的,因为许多底层函数接口都差不多由操作系统 提供给设计者了,只需要通过调用相应的函数就能够完成输入法的设计。
我们所完成的汉字拼音输入法是基于AVR Atmegl6单片机的,限于硬件的规 格,其本身没有操作系统,也不太可能在其上扩展操作系统,因此在设计时是相 对困难的,从最底层的LCD显示函数、键盘输入函数到拼音查找字模检索算法 等都需要一一设计完成。而据我们了解,在现行的不具备操作系统的嵌入式设备 中,专门少有差不多完整并成功开发的汉字拼音输入法,但这些设备有时是需要 人机交互的,汉字拼音输入法将使其易用性大大提高。因此,我们的设计补偿了 现有市场的一个空白,而其设计思路完全能够应用的其它任何不具备操作系统的 简单的嵌入式设备中去,在较小的资源占用下就能够完成拼音输入法的设计,满 足人们与简单设备的交互要求。
三、设计方法
1,硬件设计
采纳Atmel公司的Atmaga16单片机作为主操纵器。Atmaga16是一个低功 耗,高性能的8位单片机,片内含16k空间的可反复擦写100,000次的Flash 储备器,具有〔Kbytes的随机存取数据储备器( RAM), 32个IO 口,2个8位 可编程定时计数器,1个16位可编程定时计数器,四通道PWM,内置8路10位 ADC,硬件SPI和TWI,可编程看门狗电路,抗干扰能力强,可在电磁干扰环 境下工作。且Mega系列的单片机能够在线编程、调试,方便地实现程序的下载 与整机的调试。
采纳自制的4X3矩阵式12键键盘作为输入设备,与Atmaga16的PD 口连 接。
使用采纳了 ks0108操纵器的12864液晶屏幕作为输出设备,可显示4行8 列共32个16X16点阵汉字。
下图为系统电路图
pkg
petffl,
lAKliFA:
皿MU
PBW:
(MKWU
必明U
网NOT
肛*M
度1毕:,
lOCTfP
WK-T
由
3KD
CD
AVu
XTM2
(TMCWC7
XIX!
(TOCIK6
血即
CWC5
poimci
(TO1K4
HTiINTOI
ro?«rm>
(TCKJK-2
(SOUK!
网《w
•SUJKO
MKH)
.W2K>7
AImu16 ㈤?:N
KSI
下图为键盘功能图
1
选择
2
abc
3
deF