本文共 1651 字,大约阅读时间需要 5 分钟。
电子词典系统设计实验报告 曹连强 周四6-8
项目要求:
1、在实验板上设计实现一个无操作系统的简易电子词典
设计友好的人机交互界面
:字符输入、功能选择、英汉翻译。
二、电子词典系统实现具体功能:
1.能够通过键盘输入英文。键盘作为本系统中最主要的输入设备,需要完成26个英文字母的输入,并且需要上翻页,下翻页,上一行,下一行,翻译,退格等功能。要求键盘至少要有16个按键,每个按键都可以被处理器及时,准确地读入。
2.提供友好的人机界面,将输入的内容和翻译的结果显示在LCD的相应区域内。
3. 对输入的单词即时翻译。
4.可以记忆3个已经查询过的的单词。
在无操作系统的电子词典系统中,由于是单任务环境,因此此时系统的各个功能模块均按照顺序执行。初始化后,即进入翻译待机状态,等待用户的输入操作。当用户输入操作发生后,系统调用键盘或触摸屏中断进行键值读取,将键值传给主函数中的系统功能实现模块,该模块按不同的输入键值进行相应的功能选择,最后将此次操作的结果输出到LCD上。
程序设计
可将电子词典的软件设计分为如下几个主要模块:键值处理、翻译、词库设计和LCD显示。
键值处理
电子词典的输入设备为键盘和触摸屏,要完成的功能为:
键盘:10个英文字母和6个功能键输入
触摸屏:6各功能键的输入
翻译:
词库设计
翻译功能中通过将输入单词和词库中相应的单词进行比较得到要显示的翻译结果,因此,词库可采用结构体实现,此结构中包括4项:英文单词、词性、汉语释意、英文例句。
LCD显示功能
翻页、选行及翻页结果的输出都可以归到LCD显示功能中,这些功能都可以通过调用LCD实验中的相关函数完成。
设计程序
#include "Ts_sep.h"
#include
///
#include "def.h"
#include "2410lib.h"
#include "option.h"
#include "2410addr.h"
#include "interrupt.h"
#include "lcdlib.h"
//#define STN_LCD
#define TFT_8_0
/8888888
#define LOOP 1
#define ADCPRS 39
#define TS_JUSTIFY_LEFTTOP 1
#define TS_JUSTIFY_RIGHTBOT 2
#define TS_START 3
///8888888888888888//
void Lcd_Disp_Char(void);
void Lcd_Disp_Grap(void);
void Frame(void);//设置背景框架
void Clearscreen(void);//清屏
//void Key_init(void);//初始化键盘
void Cursor(int flag);
void CursorCl(int flag);
void delay( int count );
void disp();
void translate(int num);
static int x=0,y=0,letter=0,flag=0,wei=0,prev[5],i,j;//函数里有调用我换成全局变量
int which[20];//此时满足罗列单词
int word,w;
int m,n;
int ts_status = TS_JUSTIFY_LEFTTOP;
int ts_lefttop_x, ts_lefttop_y, ts_rightbot_x, ts_rightbot_y;
int ts_lcd_x, ts_lcd_y;
///
typedef struct{
int w;//单词对应的值
int o;
int r;
int d;
int s;
char c[20];//英文单词
char e[20];//翻译
}str_word;
str_word dictionary[20]=
转载地址:http://yytto.baihongyu.com/