基于S3C44BOX的电子词典软件设计与实现

合集下载

基于人工智能的智能电子词典设计与实现

基于人工智能的智能电子词典设计与实现

基于人工智能的智能电子词典设计与实现近年来,随着人工智能技术的不断发展和普及,各种人工智能产品的应用不断扩大,其中智能电子词典也由于其便携、实用的特点而越来越受到人们的追捧。

当前市面上的智能电子词典由于其机能其他不尽人意,面对越来越多的用户需求,本文旨在提出一种基于人工智能的智能电子词典设计,并探讨其实现的方法与技术。

一、智能电子词典的需求与市场智能电子词典是一款便携、实用的翻译工具,其具有词汇量大、海量例句、音频口语、手写输入等实用功能,这使得它成为众多学生、翻译人员和旅游者们不可或缺的一部分。

智能电子词典通过固定词汇的基础上,加入了大量的实用功能,并将其装载进一个便于携带的电子设备中,使人们在学习语言过程中更加高效便利。

据统计,智能电子词典在中国市场占据了极高的份额。

其中以英语智能电子词典的销售量最为突出,二者的销售量占了智能电子词典市场销售总量的八成以上。

由此可见,目前市场对智能电子词典品牌的词汇量和机能的要求已经超出了基础翻译需求,而如何提高其便捷性、准确性、人性化和速度,成为了市面上各种智能电子词典所需要解决的问题。

二、智能电子词典的设计原则与实现思路要实现人工智能的智能电子词典,需从以下几个方面考虑:1. 词汇库的构建词汇库是智能电子词典的基础,在构建智能电子词典的时候,可以通过如今人工智能的语言处理技术来进行词汇库的建立。

通过爬虫技术,可以从不同的网站上获取最新的语言数据,并通过人工智能技术筛选出一些更加权威、更有价值的语言材料,来构筑更加完备、丰富的词汇库。

2. 人性化的交互方式智能电子词典必须注重人性化的交互过程,采用用户友好的界面设计,实现人机交互的舒适度和效率。

在语音输入方面,可以通过语音智能识别技术来实现对人声的识别;在手写输入方面,可以通过对人手写需要进行高精度的识别,从而更方便用户进行输入;在感知需求方面,可以通过智能人机交互技术,特别是视觉、触觉和语言交互,使智能电子词典更智能化、更个性化,从而让用户更舒适地使用。

基于S3C44BOX的电子词典软件设计与实现(DOC)

基于S3C44BOX的电子词典软件设计与实现(DOC)

基于S3C44BOX的电子词典软件设计与实现1 概述此次基于ARM7的电子词典系统开发作业,由我们小组4人合作完成,其中我主要负责软件方面的开发,所做的方面有英译汉软件功能的实现,输入值软件识别功能的实现以及看门狗定时器的实现。

由于不怎么熟悉arm的开发,基本是看着书做,设计思路和方法、功能实现也都是书上怎么来,自己就怎么实现,希望傅老师谅解,这块的基础确实薄弱。

2 S3C44BOX处理器介绍2.1 S3C44BOX简介S3C44BOX微处理器片类集成ARM7TDMI核,采用0.25μm CMOS工艺制造,并在ARM7TDMI核的基础上集成了丰富的外围功能模块,便于低成本设计嵌入式系统应用系统。

片上集成的主要功能如下:➢在ARM7TDMI基础上增加至8KB的Cache。

➢外部扩充存储器控制器(FP/EDO/SDRAM控制,片选逻辑)。

➢LCD控制器(最大支持256色的DSTN),并带有一个LCD专用DMA通道。

➢2个通用DMA通道2个带外部请求引脚的DMA通道。

➢2个带有握手协议的UART,1个SIO。

➢1个多主的I2C总线控制器。

➢1个I2S总线控制器。

➢5个PWM定时器及1个内部定时器。

➢看门狗定时器。

➢71个通用可编程I/O口,8个外部中断源。

➢功耗控制模式:正常,低速,休眠和停止。

➢8路10位ADC。

➢具有日历功能的RTC(实时时钟)。

➢PLL时钟发生器。

2.2 S3C44BOX特点2.2.1 S3C44BOX体系结构➢S3C44BOX是基ARM7TDMI体系结构的SOC。

➢集成了手持设备和通用嵌入式系统应用的解决方案;➢16/32位RISC体系结构和ARM7TDMI处理器内核强大的指令体系;➢Thumb代码压缩机,最大化代码密度同时保持了32位指令的性能;➢基于JTAG的片上集成ICE调试支持解决方案;➢32×8位硬件乘法器;➢实现低功耗SAMBA II(三星ARM处理器嵌入式微控制器总线体系结构)的新型总线结构。

电子词典系统的设计与实现5.0

电子词典系统的设计与实现5.0
1.1 前言......................................................................................................................................... 1 1.2 设计目的................................................................................................................................. 1 1.3 相关技术................................................................................................................................. 1
第三章 数据库设计..................................................................................................... 16
3.1 数据库系统设计................................................................................................................... 16 3.2 电子词典系统数据表结构................................................................................................... 16

电子词典设计与实现

电子词典设计与实现

电子词典设计与实现
电子词典的设计与实现可以分为以下几个步骤:
1.需求分析:根据用户需求确定电子词典的功能和特性,例如支持多
种语言、提供联想、显示单词释义、提供例句等。

2.数据收集:收集词典所需的词汇数据,可以通过有关的词典书籍、
在线词典API或者其他途径获取。

3.数据处理:对收集到的词汇数据进行处理和整理,包括建立索引、
分词等操作,以便于后续的查询和展示。

4.用户界面设计:设计电子词典的用户界面,包括框、按钮、显示结
果的区域等元素,要求界面简洁、直观,方便用户使用。

5.查询功能实现:根据用户输入的关键词,在词汇数据中进行查询,
找到对应的词条和释义,并将结果展示给用户。

6.功能扩展:根据需求,可以添加一些附加功能,如联想、生词本管理、发音播放等。

7. 测试与调试:对设计与实现的电子词典进行测试,确保词典的功
能正常运行,没有bug和错误。

8.上线部署:将电子词典部署到服务器或者移动设备上,供用户使用。

9. 后续维护与更新:随着用户使用的反馈和需求变化,持续对电子
词典进行维护和更新,修复bug,添加新功能,提升用户体验。

以上是电子词典设计与实现的一般步骤,具体实现过程可能还会有其
他细节和技术选择,根据具体需求和技术条件进行调整。

电子词典系统设计实验报告

电子词典系统设计实验报告

电子词典系统设计实验报告12121583 曹连强周四6-8一、项目要求:1、在实验板上设计实现一个无操作系统的简易电子词典2、设计友好的人机交互界面3、:字符输入、功能选择、英汉翻译。

二、电子词典系统实现具体功能:1.能够通过键盘输入英文。

键盘作为本系统中最主要的输入设备,需要完成26个英文字母的输入,并且需要上翻页,下翻页,上一行,下一行,翻译,退格等功能。

要求键盘至少要有16个按键,每个按键都可以被处理器及时,准确地读入。

2.提供友好的人机界面,将输入的内容和翻译的结果显示在LCD的相应区域内。

3. 对输入的单词即时翻译。

4.可以记忆3个已经查询过的的单词。

在无操作系统的电子词典系统中,由于是单任务环境,因此此时系统的各个功能模块均按照顺序执行。

初始化后,即进入翻译待机状态,等待用户的输入操作。

当用户输入操作发生后,系统调用键盘或触摸屏中断进行键值读取,将键值传给主函数中的系统功能实现模块,该模块按不同的输入键值进行相应的功能选择,最后将此次操作的结果输出到LCD上。

三、程序设计可将电子词典的软件设计分为如下几个主要模块:键值处理、翻译、词库设计和LCD 显示。

1、键值处理电子词典的输入设备为键盘和触摸屏,要完成的功能为:(1)键盘:10个英文字母和6个功能键输入(2)触摸屏:6各功能键的输入2、翻译:3、词库设计翻译功能中通过将输入单词和词库中相应的单词进行比较得到要显示的翻译结果,因此,词库可采用结构体实现,此结构中包括4项:英文单词、词性、汉语释意、英文例句。

4、LCD显示功能翻页、选行及翻页结果的输出都可以归到LCD显示功能中,这些功能都可以通过调用LCD 实验中的相关函数完成。

四.设计程序////////////////////////////////////////////////////////////#include "Ts_sep.h"#include <string.h>///////////////////////////////////////////////////////////#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]={{1,3,5,0,0,"ACE","王牌"},{2,5,5,0,0,"BEE","蜜蜂"},{1,4,4,0,0,"ADD","增加,计算"},{2,1,4,0,0,"BAD","坏的"},{4,5,3,1,4,"DECAD","十;十数"}};////////////////////////////////////////////////////////void Adc_or_TsSep() __attribute__ ((interrupt("IRQ")));void Adc_or_TsSep(void){int i;U32 Ptx[6], Pty[6];rINTSUBMSK |= (BIT_SUB_ADC|BIT_SUB_TC); // Mask sub interrupt (ADC and TC)// TC(Touch screen Control) Interruptif(rADCTSC & 0x100){PRINTF("\nStylus Up!!\n");rADCTSC &= 0xff; // Set stylus down interrupt}else{PRINTF("\nStylus Down!!\n");// <X-Position Read>rADCTSC=(0<<8)|(0<<7)|(1<<6)|(1<<5)|(0<<4)|(1<<3)|(0<<2)|(1);// Down,Hi-Z,AIN5,GND,Ext vlt,Pullup Dis,Normal,X-positionfor(i=0;i<LOOP;i++); //delay to set up the next channelfor(i=0;i<5;i++){rADCCON|=0x1; // Start X-position conversionwhile(rADCCON & 0x1); // Check if Enable_start is lowwhile(!(0x8000&rADCCON)); // Check ECFLGPtx[i]=(0x3ff&rADCDAT0);}Ptx[5]=(Ptx[0]+Ptx[1]+Ptx[2]+Ptx[3]+Ptx[4])/5;// <Y-Position Read>rADCTSC=(0<<8)|(0<<7)|(1<<6)|(1<<5)|(0<<4)|(1<<3)|(0<<2)|(2);// Down,GND,Ext vlt,Hi-Z,AIN7,Pullup Dis,Normal,Y-positionfor(i=0;i<LOOP;i++); //delay to set up the next channelfor(i=0;i<5;i++){rADCCON|=0x1; // Start X-position conversionwhile(rADCCON & 0x1); // Check if Enable_start is lowwhile(!(0x8000&rADCCON)); // Check ECFLGPty[i]=(0x3ff&rADCDAT1);}Pty[5]=(Pty[0]+Pty[1]+Pty[2]+Pty[3]+Pty[4])/5;rADCTSC=(1<<8)|(1<<7)|(1<<6)|(0<<5)|(1<<4)|(0<<3)|(0<<2)|(3);// Up,GND,AIN,Hi-z,AIN,Pullup En,Normal,Waiting modePRINTF("TOUCH Position = (%04d, %04d) ", Ptx[5], Pty[5]);m=Ptx[5];n=Pty[5];if(ts_status == TS_JUSTIFY_LEFTTOP){ts_lefttop_x = Ptx[5];ts_lefttop_y = Pty[5];ts_status = TS_JUSTIFY_RIGHTBOT;PRINTF("\nLeft top (0, 0) -> (%04d, %04d)\n", ts_lefttop_x, ts_lefttop_y);PRINTF(" 请触摸屏幕右下角位置\n");}else if(ts_status == TS_JUSTIFY_RIGHTBOT){ts_rightbot_x = Ptx[5];ts_rightbot_y = Pty[5];ts_status = TS_START;PRINTF("\nRight bottom (319, 239) -> (%04d, %04d)\n", ts_rightbot_x, ts_rightbot_y);PRINTF("[2] 请点击触摸屏\n");}else{/* ts_lcd_x = 320 - (Ptx[5] - ts_rightbot_x) * 1.0 / (ts_lefttop_x - ts_rightbot_x) * 320.0 ;ts_lcd_y = (Pty[5] - ts_lefttop_y) * 1.0 / (ts_rightbot_y - ts_lefttop_y) * 240.0 ;if(ts_lcd_x > 319) ts_lcd_x = 319;if(ts_lcd_x < 0) ts_lcd_x = 0;if(ts_lcd_y > 239) ts_lcd_x = 239;if(ts_lcd_y < 0) ts_lcd_x = 0;PRINTF("LCD Position = (%04d, %04d)\n", ts_lcd_x, ts_lcd_y);*/}}rSUBSRCPND |= BIT_SUB_TC;rINTSUBMSK =~ (BIT_SUB_TC); // Unmask sub interrupt (TC)ClearPending(BIT_ADC);}void Ts_Sep(void){PRINTF("------触摸屏测试------\n");PRINTF("[1] 触摸屏校准\n 请触摸屏幕左上角位置\n");ts_status = TS_JUSTIFY_LEFTTOP;rADCDLY = (50000); // ADC Start or Interval DelayrADCCON = (1<<14)|(ADCPRS<<6)|(0<<3)|(0<<2)|(0<<1)|(0);// Enable Prescaler,Prescaler,AIN7/5 fix,Normal,Disable read start,No operationrADCTSC = (0<<8)|(1<<7)|(1<<6)|(0<<5)|(1<<4)|(0<<3)|(0<<2)|(3);// Down,YM:GND,YP:AIN5,XM:Hi-z,XP:AIN7,XP pullup En,Normal,Waiting for interrupt modepISR_ADC = (unsigned)Adc_or_TsSep;rINTMSK &=~(BIT_ADC);rINTSUBMSK =~(BIT_SUB_TC);// while(1);delay(200);// rINTSUBMSK |= BIT_SUB_TC;//rINTMSK |= BIT_ADC;// PRINTF("----触摸屏测试结束----\n");}//////////////////////////////////////////////////////void Main(void){unsigned char ch='1';/* 配置系统时钟 */ChangeClockDivider(1,1); // 1:2:4ChangeMPllValue(0xa1,0x3,0x1); // FCLK=202.8MHz/* 初始化端口 */Port_Init();/* 初始化串口 */Uart_Init(0,115200);Uart_Select(0);/* 打印提示信息 */PRINTF("\n---LCD测试程序---\n");PRINTF("\n请将UART0与PC串口进行连接,然后启动超级终端程序(115200, 8, N, 1)\n");/* LCD初始化 */Lcd_Port_Init();#ifdef STN_LCDLcd_Init(MODE_CSTN_8BIT);Glib_Init(MODE_CSTN_8BIT);Lcd_CstnOnOff(1);Glib_ClearScr(0xff, MODE_CSTN_8BIT);#else#ifdef TFT_8_0rGPCCON &= ~(3<<8);rGPCCON |= (2<<8);Lcd_Init(MODE_TFT_16BIT_640480);Glib_Init(MODE_TFT_16BIT_640480);Glib_ClearScr(0xffff, MODE_TFT_16BIT_640480);Lcd_PowerEnable(0, 1);Lcd_EnvidOnOff(1);#elseLcd_Init(MODE_TFT_16BIT_240320);Glib_Init(MODE_TFT_16BIT_240320);Glib_ClearScr(0xffff, MODE_TFT_16BIT_240320);Lcd_PowerEnable(0, 1);Lcd_EnvidOnOff(1);#endif#endif#define LCD_DISP_CHAR#ifdef LCD_DISP_CHARLcd_Disp_Grap();#endif//布局Glib_FilledRectangle(0,0,640,240,0xffff); //白底// Glib_Rectangle(60,80,620,110,0x0000);//首字母框Glib_Rectangle(60,80,620,440,0x0000);//主框Glib_Line(290,110,290,410,0x0000);//分割线1Glib_Line(60,110,620,110,0x0000);//分割线2Glib_Line(60,410,620,410,0x0000);//分割线3Glib_Line(172,410,172,440,0x0000);//分割线4Glib_Line(284,410,284,440,0x0000);//分割线5Glib_Line(396,410,396,440,0x0000);//分割线6Glib_Line(508,410,508,440,0x0000);//分割线7// Glib_Rectangle(520,80,620,120,0x0000);//upGlib_disp_hzk16(110,420,"上", 0x0000);// Glib_Rectangle(520,140,620,180,0x0000);//downGlib_disp_hzk16(222,420,"下", 0x0000);// Glib_Rectangle(520,200,620,240,0x0000);//DelGlib_disp_hzk16(334,420,"清屏", 0x0000);// Glib_Rectangle(520,260,620,300,0x0000);//EnterGlib_disp_hzk16(446,420,"查询", 0x0000);// Glib_Rectangle(520,320,620,360,0x0000);//CancelGlib_disp_hzk16(558,420,"返回", 0x0000);Ts_Sep();while(1)//大循环等键按下{Cursor(flag);ch = Key_GetKeyPoll();/////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////if((m>=145&&m<237)&&(n>395&&n<540))ch='E';//qingpinif((m>=145&&m<237)&&(n>678&&n<830))ch='C';//Shangif((m>=145&&m<237)&&(n>540&&n<678))ch='D';//Xiaif((m>=145&&m<237)&&(n>57&&n<219))ch='B';///shanchuif((m>=145&&m<237)&&(n>219&&n<395))ch='F';//quedingm=n=0;/////////////////////////////////////////////////////////////////////////////// /////////////////////////////switch(ch){case '1'://aGlib_FilledRectangle(65,120,280,400,0xffff);//先清罗列单词区letter=1;//1表示输入字母为1Glib_disp_hzk16(90+wei*20,90,"A", 0x0000);//显示界面显示aprev[wei]=1;//存放disp();//显示单词区的单词wei++;//下一个放字母位置if(wei>=5){Glib_disp_hzk16(340,90,"已满", 0x0000);//单词字母小于等于四个delay(1000);Glib_disp_hzk16(340,90,"已满", 0xffff);//清掉"已经满了"};//超出错误,只能查四位break;case '2'://bGlib_FilledRectangle(65,120,280,400,0xffff);//先清罗列单词区letter=2;//1表示输入字母为1Glib_disp_hzk16(90+wei*20,90,"B", 0x0000);//显示界面显示aprev[wei]=2;//存放disp();//显示单词区的单词wei++;//下一个放字母位置if(wei>=5){Glib_disp_hzk16(340,90,"已满", 0x0000);//单词字母小于等于四个delay(1000);Glib_disp_hzk16(340,90,"已满", 0xffff);//清掉"已经满了"};//超出错误,只能查四位break;case '3'://cGlib_FilledRectangle(65,120,280,400,0xffff);//先清罗列单词区letter=3;//1表示输入字母为1Glib_disp_hzk16(90+wei*20,90,"B", 0x0000);//显示界面显示aprev[wei]=3;//存放disp();//显示单词区的单词wei++;//下一个放字母位置if(wei>=5){Glib_disp_hzk16(340,90,"已满", 0x0000);//单词字母小于等于四个delay(1000);Glib_disp_hzk16(340,90,"已满", 0xffff);//清掉"已经满了"};//超出错误,只能查四位break;case '4'://dGlib_FilledRectangle(65,120,280,400,0xffff);//先清罗列单词区letter=4;//1表示输入字母为1Glib_disp_hzk16(90+wei*20,90,"D", 0x0000);//显示界面显示aprev[wei]=4;//存放disp();//显示单词区的单词wei++;//下一个放字母位置if(wei>=5){Glib_disp_hzk16(340,90,"已满", 0x0000);//单词字母小于等于四个delay(1000);Glib_disp_hzk16(340,90,"已满", 0xffff);//清掉"已经满了"};//超出错误,只能查四位break;case '5'://eGlib_FilledRectangle(65,120,280,400,0xffff);//先清罗列单词区letter=5;//1表示输入字母为1Glib_disp_hzk16(80+wei*20,90,"E", 0x0000);//显示界面显示aprev[wei]=5;//存放disp();//显示单词区的单词wei++;//下一个放字母位置if(wei>=5){Glib_disp_hzk16(340,90,"已满", 0x0000);//单词字母小于等于四个delay(1000);Glib_disp_hzk16(340,90,"已满", 0xffff);//清掉"已经满了"};//超出错误,只能查四位break;case '6'://fbreak;case '7'://gbreak;case '8'://hbreak;case '9'://ibreak;case '0'://jbreak;case 'A'://kletter=11;break;case 'C'://上flag--;if(flag>=0&&flag<=3){Cursor(flag);//单词列表选中变色CursorCl(flag+1);}//再上恢复刚才那条的背景色else flag=0;break;case 'D'://下flag++;if(flag>=0&&flag<=3){Cursor(flag);CursorCl(flag-1);}else flag=3;break;case 'E'://cancel清屏Glib_FilledRectangle(70,90,339,109,0xffff);//先清单词区Glib_FilledRectangle(65,120,280,400,0xffff);//先清罗列单词区Glib_FilledRectangle(300,120,610,400,0xffff);//清翻译区for(j=0;j<=10;j++){which[j]=0;};letter=0;wei=0;for(j=0;j<=5;j++){prev[j]=0;};break;case 'F'://enter确定Glib_FilledRectangle(300,120,610,400,0xffff);//主翻译区if(flag>=0&&flag<=3)translate(which[flag]);//显示结果break;case 'B'://del删除Glib_FilledRectangle(70,120,280,400,0xffff);//先清罗列单词区letter=0;wei--;prev[wei]=0;//上一位变0Glib_FilledRectangle(70+wei*30,90,70+wei*30+20,109,0xffff);//消掉一个字母wei--;disp();wei++;break;default:Glib_disp_hzk16(500,90,"←请输入单词", 0x0000);break;}}}void disp(){y=0;//初始单词显示位置for(i=0;i<=20;i++){if((dictionary[i].w==prev[0])&&(wei==0)){//第一个字母正which[y]=i;//存放哪几个单词显示了Glib_disp_hzk16(80,120+32*y,dictionary[i].c, 0x0000);//显示单词y++;//位置改变}if((dictionary[i].w==prev[0])&&(dictionary[i].o==prev[1])&&(wei==1)){//前两个字母正确which[y]=i;//存放哪几个单词显示了Glib_disp_hzk16(80,120+32*y,dictionary[i].c, 0x0000);//显示单词y++;//位置改变}if((dictionary[i].w==prev[0])&&(dictionary[i].o==prev[1])&&(dictionary[i].r==pr ev[2])&&(wei==2)){//前3个字母正确which[y]=i;//存放哪几个单词显示了Glib_disp_hzk16(80,120+32*y,dictionary[i].c, 0x0000);//显示单词y++;//位置改变}if((dictionary[i].w==prev[0])&&(dictionary[i].o==prev[1])&&(dictionary[i].r ==prev[2])&&(dictionary[i].d==prev[3])&&(wei==3)){//前4个字母正确which[y]=i;//存放哪几个单词显示了Glib_disp_hzk16(80,120+32*y,dictionary[i].c, 0x0000);//显示单词y++;//位置改变}}}void translate(int num){//显示单词选项3个Glib_disp_hzk16(300,120,dictionary[num].e, 0x0000);}//void Clearscreen(void) //清屏//{// Glib_FilledRectangle(65,81,499,99,0xffff);// Glib_FilledRectangle(65,121,499,439,0xffff);// Glib_Line(240,120,240,440,0x0000);//}void Cursor(int flag){Glib_FilledRectangle(65,121+flag*32,75,153+flag*32,0x55);}void CursorCl(int flag){Glib_FilledRectangle(65,121+flag*32,75,153+flag*32,0xffff);}void Lcd_Disp_Grap(void){int i,j;for(j=0;j<240;j++)for(i=0;i<320;i++) //RRRGGGBBPutPixel(i,j,((i/40)<<5)+((j/30)<<2)+(((j/15)%2)<<1)+((i/20)%2)); }void delay( int count ){int cnt;for( count = count; count>0; count--)for( cnt = 0; cnt < 100; cnt++);}。

c语言课程设计电子词典

c语言课程设计电子词典

c语言课程设计电子词典随着科技的不断进步和发展,计算机技术也在不断的发展和完善。

计算机编程语言也应运而生,其中c语言成为了最为流行和广泛应用的一种编程语言。

为了更好地学习和掌握c语言,我们需要不断地进行练习和实践。

而课程设计电子词典就是一个非常好的实践项目。

本文将对c语言课程设计电子词典进行详细的介绍和分析。

一、电子词典简介电子词典是一种类似于纸质词典的电子设备。

电子词典将词典内容数字化存储在内部芯片中,通过一个屏幕显示出来。

电子词典拥有很多优点,比如存储空间更大、功能更强大、可搜索性更高等等。

今天,电子词典是很多人学习和工作必不可少的工具之一。

二、c语言课程设计电子词典的设计思路c语言课程设计电子词典是一种将词典内容和c程序功能相结合的设计项目。

他的设计思路如下:1.定义词典内容结构体在程序中需要定义一个结构体,用来存储词典内容。

结构体的成员包括单词、单词的释义、音标等。

typedef struct word{ char name[30]; // 单词名称char symbol[30]; // 单词音标charmean[400]; // 单词含义}word;2.构建词典数据将词典中的单词、释义、音标等内容保存到结构体中。

并将多个结构体数据包含在一个数组中。

word dictionary[] = { { "apple", "[ˈæpl]", "a round fruit with smooth red or yellow skin and firm white flesh" }, { "banana", "[bəˈnɑː.nə]", "a long curved fruit with a yellow skin" }, { "cat", "[kæt]", "a small animal with fur, four legs, a tail, and claws" }, { "dog", "[dɒɡ]", "a common animal with four legs, fur, and a tail" }, { "elephant", "[ˈel.ɪ.fənt]", "a very large grey animal with a long nose called a trunk" }};3.实现单词查询功能在程序中,我们需要实现一个单词查询的功能。

基于WinCE的电子词典的设计与实现的开题报告

基于WinCE的电子词典的设计与实现的开题报告

基于WinCE的电子词典的设计与实现的开题报告一、选题背景:随着人们生活水平的提高,英语学习已经成为了越来越多人的追求。

尤其是在高校英语学习中,电子词典已经成为了一种重要的辅助工具。

然而,普通的电子词典无法满足学生和教师的需求,需要一种更为功能强大的词典。

本课题基于 WinCE 平台开发一款电子词典,来满足用户需求。

二、主要内容:本课题主要涉及以下方面的内容:1.需求分析:通过分析用户需求,明确电子词典的主要功能、特点和优点。

通过分析市场情况,确定本电子词典在设计上所要满足的独特需求。

2. 系统架构设计:本系统基于WinCE平台,需要确定系统的架构、模块划分及各模块之间的交互方式等。

3. 数据库设计:对于一个电子词典系统,必须有一个强大而且稳定的数据库系统。

本系统数据库采用MySQL数据库,需要设计词汇以及相关属性的表格,以满足词典查询和管理。

4. 界面设计:采用视觉化模块,以确保该电子词典的操作界面友好、美观、易于使用。

5. 功能实现:本系统应用了一些基本的查询算法,如模糊查询、联想查询、相似词查询等,并可支持听读模式,可以在线发音。

同时,还考虑实现用户自定义词典、背单词等较为高级的功能。

6. 测试与评估:采用合适的测试方法,对电子词典进行测试,发现存在的问题并及时改进,以确保该系统的稳定性、高效性以及可靠性。

三、研究目标与意义:本课题开发的电子词典系统,主要研究基于WinCE平台的系统设计和实现方案,以及一些重要的算法开发实践。

该词典系统具有功能强大、易于使用的特点。

其通过该系统可有效提升学生和教师在英语学习方面的体验和效率,同时也可以作为WinCE系统开发方案的一个经典的案例。

四、研究方法:本课题主要采用以下方法进行研究:1. 调查方法:调查目标群体的需求和反馈,并据此进行需求分析和功能设计。

2. 数据库设计方法:采用MySQL数据库,通过设计表格实现数据存储与检索。

3. 软件开发方法:根据需求分析结果,采用面向对象的设计思想、UML建模工具进行系统的设计,并使用VC++进行软件开发。

英汉电子词典设计报告设计C语言C语言程序设计

英汉电子词典设计报告设计C语言C语言程序设计

英汉电子词典设计报告设计C语言C语言程序设计设计报告:英汉电子词典设计目标:本次设计的目标是开发一个基于C语言的英汉电子词典,实现用户通过输入英文单词或汉字查询其对应的中文释义或英文翻译。

同时,用户还可以对查询结果进行添加、修改、删除操作,方便用户自定义个性化词库。

设计思路:1.使用C语言实现用户界面,包括菜单选项和用户输入功能;2.使用文件管理系统进行词库的存储和读取,并实现对词库的增删改查功能;3.使用字符串匹配算法进行单词或汉字的查询,保证查询的精确性;4.使用二叉查找树(BST)作为数据结构,实现词库的快速查找和插入功能。

模块设计:1.用户界面模块:-显示菜单选项,包括查询、添加、修改、删除和退出;-提示用户输入相应选项,并获取用户输入;2.文件管理模块:-创建存储词库的文件,并检查文件是否存在;-实现读取文件内容到内存和将内存内容写入文件的功能;3.数据结构模块:-设计结构体,包含英文单词和中文释义;-使用二叉查找树作为词库的数据结构,实现快速查找和插入功能;4.查询模块:-根据用户输入的英文单词或汉字,进行查询;-使用字符串匹配算法进行匹配,找到对应的词条并显示;5.添加模块:-接受用户输入的英文单词和中文释义,并将其插入词库中;6.修改模块:-接受用户输入的英文单词和新的中文释义,并替换原有词条的中文释义;7.删除模块:-根据用户输入的英文单词或汉字,从词库中删除对应的词条;测试计划:-对每个模块进行单元测试,确保其功能正常;-集成测试,检查各个模块之间的交互是否正常;-进行用户测试,验证整个电子词典系统的可用性和稳定性。

总结:通过以上的设计,我们可以实现一个基于C语言的英汉电子词典,能够方便用户进行英文单词和汉字的查询,并支持用户对词库进行个性化操作。

该电子词典设计简洁,功能完备,并且具有较好的扩展性,适用于不同平台和系统的实际应用。

嵌入式课程设计--基于S3C44BOX电子词典软件开发

嵌入式课程设计--基于S3C44BOX电子词典软件开发

《嵌入式系统》课程设计说明书基于S3C44BOX电子词典软件开发系、部:计算机与信息科学系组成员:指导教师:职称专业:计算机科学与技术班级:计本0801班完成时间:2011年12月12日摘要随着电子系技术的发展,以ARM微处理器为核心的电子应用系统已经进入人们日常生产生活的各个方面,ARM以其出色的性能优势赢得了广大电子产品开发者的认可。

本文作者根据自己的课程学习,掌握了 ARM系统微处理器相关的基础知识和基本技术,而这些技术需要实地的实验设计来帮助巩固和深入。

本案例属于日常生活当中和学习研究中比较常见和熟悉的应用,不但有比较强的综合性,而且有很高的趣味性。

在我们系统学习了嵌入式系统开发与应用实践课程之后,结合对ARM微处理器的基础知识和基本技术的掌握,实现了简单电子词典设计。

本设计主要解决了基于S3C44B0X 通过I/O控制发光二极管的电子词典。

关键词:ARM微处理器;词典设计;S3C44B0XABSTRACTAlong with the electronic technology development, with ARM microprocessor as the core of the electronic application system has entered people's daily production in all aspects of life, ARM with its excellent performance advantages to win the majority of electronic product developers recognized. In this paper the authors according to their course of study, master of the ARM system related to the basic knowledge and technology, and these technologies require field experiments designed to help consolidate and development. This case belongs to the daily life and study in the more common and familiar with the application, not only have strong comprehensive, but also have high interest.In our system, learning embedded system development and application practice of course, according to the ARM microprocessor basic knowledge and basic technical mastery, the realization of a simple directory design. The design of the main solution based on S3C44B0X through I / O control led flashing.Key words: ARM microprocessor; directory; S3C44B0X目录1 前言 (1)1.1课题研究背景 (1)1.2课程研究目的和意义 (2)1.3 S3C44BOX处理器介绍 (3)2 基于S3C44BOX电子词典开发概述 (4)2.1电子词典系统定义与需求分析 (4)2.2电子词典方案设计 (7)2.2.1硬件设计方案 (7)2.2.2软件设计方案 (7)3 基于S3C4BOX电子词典的硬件开发 (8)3.1基于S3C4BOX的最小系统软件 (8)3.2显示模块 (9)3.3触摸屏及键盘模块 (10)4 基于S3C44BOX电子词典软件开发环境的建立 (10)4.1开发环境 (10)5 基于S3C44BOX电子词典的软件开发 (11)5.1电子词典各模块测试软件设计 (11)5.2电子词典应用软件开发 (13)5.3无操作系统电子词典硬件驱动程序设计 (15)5.3.1Uart驱动程序 (16)5.3.2LCD驱动程序 (16)5.3.3键盘驱动程序 (17)5.3.4触摸屏驱动程序 (17)5.4电子词典系统应用软件个功能模块设计实现 (18)5.4.1键盘接口功能软件 (18)5.4.2触摸屏接口功能软件 (18)5.4.3LCD显示接口功能软件 (18)5.4.4输入键值识别功能软件 (18)5.4.5英译汉功能软件 (21)5.4.6已查单词记忆功能软件 (23)5.4.7汉语词库编写和英语词库编写 (23)6 总结 (26)7 参考文献 (27)1 前言1.1课题研究背景随着3C融合进程和我国传统产业结构升级的加速,人们对设备越来越高的应用需要已经无法满足当前和未来高性能的应用与发展需求。

电子词典设计方案

电子词典设计方案
S3C44B0X LCD 控制器概述 LCD 控制器在嵌入式系统中的功能概述 一套完整的液晶显示系统主要由三部分组成:液晶显示屏、液晶显示 驱动器和液晶显示控制器。 液晶显示控制器具有两大作用:其一,控制器为液晶显示提供时序信 号和显示数据;其二,在计算机系统中,液晶显示控制器是一种专业 IC 芯片,专用于计算机与液晶显示系统的接口,控制器接受计算机 的直接操作,并可以脱机独立控制液晶显示驱动系统,从而解除了计 算机在显示上的繁琐工作。
硬件设计方案 根据第二章介绍的 ARM 芯片的选择原则,此处选择集成了丰富的外围 功能模块,便于低成本设计嵌入式应用系统的 S3C44B0X 处理器作为 系统的主控制器。 利用其内置的 LCD 控制器实现 LCD 控制接口; 利用 IIC 总线控制器实现键盘控制接口; 利用 ADC 转换器实现触摸屏控制接口; 利用 UART 实现调试接口; 利用 GPIO 连接 LED 灯显示有关状态。 利用其内置的 LCD 控制器实现 LCD 控制接口; 利用 IIC 总线控制器实现键盘控制接口; 利用 ADC 转换器实现触摸屏控制接口; 利用 UART 实现调试接口; 利用 GPIO 连接 LED 灯显示有关状态。
色),对于不同尺寸的 LCD,具有不同数量的垂直和水平像素,数据 接口的数据宽度,接口时序及刷新率,而 LCD 控制器可以进行编程控 制相应的寄存器值,以适应不同的 LCD 显示板
S3C44B0X LCD 控制器基本功能 S3C44B0X LCD 控制器的特性 支持彩色/灰度/单色的 LCD 板; 支持 3 种类型 LCD 板:4 位双扫描,4 位单扫描,以及 8 位单扫描的 显示类型; 支持多路虚拟显示屏(支持硬件的水平/垂直移动滚读); 系统存储器被用作显示存储器; 专用的 DMA 支持从系统存储器的视频缓冲中读取映象数据; 支持多种荧屏大小;

网络电子词典课程设计

网络电子词典课程设计

网络电子词典课程设计一、课程目标知识目标:1. 学生掌握网络电子词典的基本概念、功能与操作方法。

2. 学生了解网络电子词典在语言学习中的应用及优势。

3. 学生掌握利用网络电子词典进行词汇查找、词义辨析、例句学习等技巧。

技能目标:1. 学生能够熟练使用网络电子词典进行自主词汇学习。

2. 学生能够运用网络电子词典进行跨学科词汇拓展和语言运用。

3. 学生通过网络电子词典提高自己的语言表达能力和词汇记忆能力。

情感态度价值观目标:1. 学生培养对网络电子词典的积极态度,认识到其在学习中的辅助作用。

2. 学生树立正确的语言学习观念,意识到词汇积累对提高语言素养的重要性。

3. 学生在学习过程中,培养合作精神,学会分享和交流学习心得。

课程性质:本课程为信息技术与语言学习的融合课程,旨在提高学生的词汇学习能力和语言运用能力。

学生特点:六年级学生已具备一定的词汇基础和信息技术操作能力,对新鲜事物充满好奇心,善于合作与分享。

教学要求:结合学生特点和课程性质,课程设计应注重实践操作,鼓励学生自主探究和合作交流,以提高学生的词汇学习兴趣和效果。

通过具体的学习成果分解,使学生在课程学习中获得实际收益。

二、教学内容1. 网络电子词典概述- 网络电子词典的定义与分类- 网络电子词典的发展与应用2. 网络电子词典的功能与操作- 基本功能介绍:词汇查找、词义辨析、例句学习等- 操作方法指导:界面导航、搜索技巧、词汇收藏等3. 网络电子词典在语言学习中的应用- 词汇学习:拓展词汇量、提高词汇记忆- 语言运用:句型模仿、口语表达、写作辅助4. 网络电子词典的优势与局限- 优势分析:便捷性、实时更新、个性化学习等- 局限性讨论:准确性、依赖性、版权问题等5. 跨学科词汇拓展- 结合教材内容,运用网络电子词典进行跨学科词汇学习- 各学科常见词汇、短语及专业术语的查找与应用教学大纲安排:第一课时:网络电子词典概述与功能介绍第二课时:网络电子词典操作方法与词汇查找技巧第三课时:网络电子词典在语言学习中的应用与优势分析第四课时:跨学科词汇拓展与网络电子词典的局限性讨论教学内容与进度根据课程目标和学生的学习实际情况进行调整,确保教学内容与课本紧密关联,提高学生的实际操作能力和词汇应用水平。

英汉电子词典设计报告_设计_C语言_C语言程序设计

英汉电子词典设计报告_设计_C语言_C语言程序设计

英汉电子词典设计报告_设计_C语言_C语言程序设计设计报告英汉电子词典一、设计目标:设计一个英汉电子词典,实现用户输入英文单词能够得到对应的中文翻译,并提供简单的用户界面。

二、设计思路:1.定义词典数据库结构:使用结构体来表示一个词条,包括英文单词和中文翻译两个成员变量。

2.读取词典文件:从外部文件中读取词典数据,并将数据存储到内存中的数组中。

3.用户交互界面设计:使用基本的文本界面,提示用户输入英文单词。

4.查询单词:根据用户输入的英文单词,在内存中的数组中查找对应的词条,并将中文翻译打印出来。

5.处理用户输入:对用户输入的英文单词进行处理,如将大写字母转换为小写字母,去除多余的空格等。

三、程序设计:1.定义词典结构体:```ctypedef structchar word[100];char translation[100];} DictionaryEntry;```2.读取词典文件:```cvoid readDictionary(DictionaryEntry* dictionary, int* size) //打开词典文件FILE* file = fopen("dictionary.txt", "r");if (file == NULL)printf("Unable to open dictionary file\n");return;}//逐行读取词典数据char line[256];int i = 0;while (fgets(line, sizeof(line), file))sscanf(line, "%s %s", dictionary[i].word,dictionary[i].translation);i++;}//设置词典大小*size = i;//关闭文件fclose(file);```3.用户交互界面设计:```cvoid printUserInterfacprintf("Please enter an English word: ");```4.查询单词:```cvoid searchWord(DictionaryEntry* dictionary, int size, char* word)for (int i = 0; i < size; i++)if (strcmp(dictionary[i].word, word) == 0)printf("%s: %s\n", dictionary[i].word,dictionary[i].translation);return;}}printf("Word not found\n");```5.处理用户输入:```cvoid processInput(char* input)//去除输入字符串中的多余空格int len = strlen(input);int j = 0;for (int i = 0; i < len; i++)if (input[i] != ' ')input[j] = tolower(input[i]);j++;}}input[j] = '\0';```四、总结:通过以上设计思路和程序设计,实现了一个简单的英汉电子词典。

毕业设计--基于Android的电子词典软件的设计与实现 (含外文翻译)

毕业设计--基于Android的电子词典软件的设计与实现 (含外文翻译)

LANZHOU UNIVERSITY OF TECHNOLOGY毕业设计基于Android的电子词典软件的设计与实现学生姓名学号专业班级指导教师学院计算机与通信学院摘要本文设计了基于Android平台的电子词典软件。

此英文词典包括两部分,一部分是离线的英文词典,一部分是在线的英文词典。

离线的英文词典主要是使用Android自带的轻量级数据库SQLite来保存单词信息,系统通过SQLite数据库的query方法来查找到与指定英文相对应的单词的中文释义。

在线的英文词典是利用oracle数据库来保存单词信息,然后利用Http 协议解析出单词信息显示到手机界面上,同时还能够增加、删除、更新单词信息。

当然,对于查询到的生疏的单词可以添加到单词本以便于随时复习。

关键词:Android,oracle数据库,SQLite数据库,英文单词AbstractIn this paper, we design and implementation about electronic dictionary software which is based on the Android platform. English dictionary mainly include two parts, and one is to realize the offline English dictionary, the other is to realize the online English dictionary. Offline English dictionary is mainly used a lightweight database SQLite that belongs to Android to preserve words information, we find the specified English word corresponding to the Chinese interpretation by using query method of SQLite database. Offline English dictionary use an oracle database to save the word information, and then parse out the word information to display in the mobile phone interface by Http protocol, at the same time there have the functions that is used to increase, delete, update word information. Of course, we can add unfamiliar word to the note of word in order to review at any time.Keywords: Android; oracle database; SQLite database; English words目录第1章绪论 (1)第2章系统需求分析 (3)2.1 软件的功能要求 (3)2.2 需求分析 (3)2.3 功能需求(用例图分析) (4)2.3.1 基本功能需求例图 (4)2.3.2 离线词典的例图 (6)2.3.3 在线查询用例图 (7)2.3.4 添加到单词本的用例图 (8)2.4 系统结构图和流程图 (10)2.5 系统界面需求 (14)2.6 运行环境 (15)2.6.1 关键技术 (15)2.6.2 运行环境 (16)第3章数据库的设计 (16)3.1 在线词典的服务器端的数据库设计 (16)3.1.1 数据库中数据表的设计 (16)3.1.2 在线词典的客户端的数据库设计 (17)3.1.3 离线时的数据库的设计 (18)3.1.4 软件数据模型 (19)3.2 连接数据库 (20)3.2.1 数据库的创建 (20)3.2.2.数据库的操作 (20)3.2.3 数据的查看 (21)3.2.4 服务器和客户端的连接 (21)第4章环境的搭建 (23)4.1关于Android的简单介绍 (23)4.1.1 Android环境的搭建 (23)4.1.2Android命令行的使用 (24)4.1.3 Android工程的简单介绍 (25)4.2 Java Web环境的搭建 (28)第5章具体功能模块的设计 (31)5.1 查询模块的设计 (32)5.1.1 离线查询 (32)5.1.2 在线查询 (33)5.2 添加单词模块 (35)5.3 删除单词模块 (36)5.4 修改单词模块 (37)5.5 菜单模块的实现 (38)5.6 生词本模块的设计 (42)第6章系统测试与性能分析 (44)6.1测试 (44)6.2 性能测试及分析 (45)总结 (46)参考文献 (47)附录一:英文翻译原文 (48)附录二:英文翻译译文 (56)附录三:程序清单 (63)致谢 (70)第1章绪论如今,英语在人们的工作、学习中显得越来越重要,而手机词典软件的出现无疑带来了极大的便利,遇到遇到生疏的英语单词,现在拿起手机就能轻松解决。

电子词典课程设计

电子词典课程设计

电子词典课程设计一、课程目标知识目标:1. 学生能理解电子词典的基本概念,掌握其功能特点和使用方法。

2. 学生能掌握电子词典中常见词汇的查找、读音、释义等功能操作。

3. 学生能了解电子词典在学习和生活中的实际应用。

技能目标:1. 学生能熟练运用电子词典进行词汇查询,提高查词效率。

2. 学生能通过电子词典学习新词汇,拓展词汇量,提高语言表达能力。

3. 学生能运用电子词典辅助学习,提升自学能力和信息检索能力。

情感态度价值观目标:1. 学生能认识到电子词典在语言学习中的重要性,培养积极使用电子词典的习惯。

2. 学生在使用电子词典的过程中,能体会科技发展对学习方式的改变,增强时代感和责任感。

3. 学生通过电子词典的学习,增强合作交流意识,培养团队精神和共享资源的价值观。

课程性质:本课程为实用技能类课程,旨在帮助学生掌握电子词典的使用方法,提高学习效率。

学生特点:六年级学生具备一定的计算机操作能力和自主学习能力,对新鲜事物充满好奇心。

教学要求:教师需结合学生特点,采用任务驱动、合作探究等教学方法,激发学生学习兴趣,提高课程效果。

通过课程学习,使学生能够将电子词典应用到实际学习和生活中,达到学以致用的目的。

在教学过程中,注重培养学生的自主学习能力、团队协作能力和信息素养。

二、教学内容1. 电子词典的基本概念:介绍电子词典的定义、发展历程及其与纸质词典的区别。

2. 电子词典的功能特点:讲解电子词典的查词、发音、释义、例句、翻译等功能。

3. 电子词典的使用方法:教授如何开关机、输入关键词、查找词汇、听取发音、查看释义等操作。

- 教学大纲:- 第一课时:电子词典的基本概念及功能特点- 第二课时:电子词典的使用方法及操作技巧4. 常见电子词典介绍:介绍几款市面上常见的电子词典,分析各自特点,帮助学生选择合适的电子词典。

5. 电子词典在生活中的应用:举例说明电子词典在语言学习、阅读、写作等方面的实际应用。

6. 电子词典的正确使用习惯:教育学生养成良好的电子词典使用习惯,如合理规划使用时间、避免过度依赖等。

电子词典_java课程设计

电子词典_java课程设计

电子词典_java课程设计随着时代的发展,计算机技术越来越普及,电子产品也随之而来。

在我们生活中,电子产品的运用给我们带来了很大的便利。

电子词典就是是电子产品中其中一种常见的辅助工具。

本文将介绍我在Java课程设计中所设计的电子词典。

一、选题背景随着我国经济与社会的发展,外语教育得到了快速的发展,学习英语的人数也逐渐增多。

英语中有许多生词、词组以及句型需要进行记忆和掌握,同时还要掌握各种语法知识。

这些知识需要掌握得非常熟练,才能真正的掌握英语。

在英语学习中,电子词典是很好的工具,能帮助学生快速地找到生词和例句,能帮助学生更好地掌握句型和语法知识。

因此,本课程设计选题就是要设计一款电子词典。

二、实现功能本电子词典主要实现以下功能:1.查询单词用户输入单词,程序可以查询该单词的汉语意思及其英文解释并输出。

2.模糊查询当用户输入的查询词为关键词(如big、find等),程序可以将相关含义的所有单词作为查询结果返回。

3.保存查询记录程序可以将用户查询的单词保存在本地,便于用户进行回顾和复习。

4.在线翻译程序可以通过调用在线翻译API,实现对单词或句子的在线翻译。

5.背单词模式程序可以提供背诵单词的功能,让用户可以实现较短时间内多次背诵同一单词,并记录背诵成果,提高背诵效果。

6.单词本程序可以记录用户已经学过的单词,便于用户回顾与复习。

三、实现过程该电子词典的实现过程主要分为三个阶段:1. 单词数据存储首先需要设计数据结构来存储单词的相关信息。

我采用了HashMap来存储单词,其中单词为key,解释为value。

同时还需要解析英文单词的音标,这里使用了正则表达式来完成。

2. 界面设计电子词典的界面需要简单、清晰、明了。

我使用了Java Swing来设计。

主界面显示查询框和查询历史,选择模式的按钮以及切换语言的按钮。

3. 实现功能查询单词功能主要使用HashMap实现对单词信息的查询。

模糊查询功能需要对HashMap中所有单词进行扫描,找到所有匹配的单词进行返回。

基于安卓平台电子词典的设计和实现

基于安卓平台电子词典的设计和实现

本科生毕业论文(设计)题目:基于安卓平台电子词典的设计与实现英文题目:The Design and Implement of Digtal Dictionary Based on Android Platfrom姓名:宁舒琪学号:1311214019学院:国际传媒学院专业:数字媒体技术年级:2013班级:131110指导教师:王维花职称:讲师2017年 5 月毕业论文诚信声明本人郑重声明:所呈交的学位论文,是在导师的指导下独立进行研究所取得的成果。

学位论文除文中已经注明引用的内容外,不包含任何其他个人或集体已经发表或在网上发表的论文。

特此声明。

论文作者签名:日期:中文摘要21世纪以来,科技发展势头迅猛,电子行业更可以说得上是日新月异。

从各个方面来看,由于智能手机的普及,手机APP已然成为了电子行业中的领头羊。

词典对于人们学习知识,认识世界有着不可估量的价值,可以说是每一个人开启学习殿堂的第一扇门。

但是传统的词典有着体积大,不便于携带的劣势,在如今飞速发展的现代社会,这显然并不会成为大多数人的最佳选择。

于是电子词典手机APP就如雨后春笋般层出不穷,成为了词典这个大家族中不可或缺的一员。

比起传统词典,手机电子词典具备了便于携带、操作简单、方便快捷等优点。

如今市面上各大应用市场中的电子词典大多占用内存大,对手机的硬件配置要求也比较高,运行起来需要占用的资源较大。

所以本项目意在开发出一款占用内存小,适用度较高,便于操作,能被大部分用户所接受的手机APP软件。

本文详细介绍了开发软件所用到的的数据库的创建过程、开发软件的环境配置过程、以及细致地分析了整个软件的功能性与实用性,阐述了本项目的环境背景与整个行业的发展现状,对于技术上的创新部分与难点部分进行了详细分析,并且清晰的将整个软件的功能结构展示出来了。

本项目基于Android平台,使用了SQLite 轻量级数据库实现了本地查询,单词本,单词释义等功能,研究方法和技术主要涉及Android操作系统应用层开发,经过反复测试,该项目现已研发完成。

电子词典设计与实现

电子词典设计与实现

电子词典的设计与实现摘要二十世纪后半叶,伴随着社会的迅速发展与进步,以电子计算机为代表的现代科学获得了突飞猛进的发展并迅速和人们的日常生活结合在一起。

计算机技术的发展和进步也使电子语言词典的诞生成为可能。

虽然只有十来年的历史,电子词典却已经迅速发展壮大,成为词典家族中具有旺盛生命力的一员。

尽管目前它尚不足以取代传统词典,但在英语学习和教学中,由于它实用、快捷、准确、经济等特点,已经成为传统英汉词典的有力竞争者,并对传统的词典提出了挑战。

本文将要介绍的软件就是一个多功能学单词软件,主要介绍了这个软件制作环境,制作流程,对数据库的操作以及它的使用方法。

用户可以根据自己的需要去查询单词,添加单词,删除单词,编辑单词,浏览词库中的单词,也可以进行四六级考研词汇等。

另外,它还给单词学习者们提供了一个背单词的好方法。

每一个用户都可以通过创建一个用户名来背诵单词,随时查看自己的历史记录,以便确定自己的背诵进度。

本文从软件工程的角度进行了详细的阐述。

该系统的开发工具是Microsoft Visual Basic 6.0,使用的数据库为Microsoft Access version 7.0 。

关键词:电子词典,Microsoft Visual Basic 6.0,数据库ABSTRACT20 half after centuries leaf,with the rapid development of society, with computer for representative of the development that modern science acquires to advance by leaps and bounds combine quick combine together with the people's daily life.The calculator technical development and progresses also make the naissance of the electronicslanguage Electron Dictionary make possible.Although only ten histories of the next years, the electronics Electron Dictionary has already developped quickly strong, become having a member of the prosperous vitality in the Electron Dictionary household.Though it is still not enough to replace the traditional Electron Dictionary currently, in English study and teaching, because of it practical, fast, accurate, economy etc. characteristics, have already become the emollient competitor of the traditional English-to-Chinese Electron Dictionary , and put forward the challenge to the traditional Electron Dictionary .The software that this text will introduce is a multi-function learn the single phrase software, mainly introduced this software manufacture environment, the manufacture process, to operation and its operation methods of the database.The customer can search the single phrase according to own demand, increasing the single phrase, deleting the single phrase, editting single phrase etc..Moreover, it returned to provide a good method that carries on the back the single phrase for the single phrase learners.Each customer can pass to establish an user's name to recite from memory the single phrase.At any time look into own history record, for the purpose of assurance recite from memory the degree of progress ownly.Carried on to elaborate carefully from the angle of the software engineering.It is Access database that the development tool of that system is the powerbuilder 9.0 databases of the usages.Key words:The Electron Dictionary ,Microsoft Visual Basic 6.0, Access database目录摘要 (1)ABSTRACT (2)1 概述 (1)2 系统分析 (2)2.1系统目标.................................. 错误!未定义书签。

基于S3C44BOX的电子词典软件设计与实现DOC

基于S3C44BOX的电子词典软件设计与实现DOC

基于S3C44BOX的电子词典软件设计与实现(DOC)基于S3C44BOX的电子词典软件设计与实现1 概述此次基于ARM7的电子词典系统开发作业,由我们小组4人合作完成,其中我主要负责软件方面的开发,所做的方面有英译汉软件功能的实现,输入值软件识别功能的实现以及看门狗定时器的实现。

由于不怎么熟悉arm的开发,基本是看着书做,设计思路和方法、功能实现也都是书上怎么来,自己就怎么实现,希望傅老师谅解,这块的基础确实薄弱。

2 S3C44BOX处理器介绍2.1 S3C44BOX简介S3C44BOX微处理器片类集成ARM7TDMI核,采用0.25μm CMOS工艺制造,并在ARM7TDMI核的基础上集成了丰富的外围功能模块,便于低成本设计嵌入式系统应用系统。

片上集成的主要功能如下:➢在ARM7TDMI基础上增加至8KB的Cache。

➢外部扩充存储器控制器(FP/EDO/SDRAM控制,片选逻辑)。

➢LCD控制器(最大支持256色的DSTN),并带有一个LCD专用DMA通道。

➢2个通用DMA通道2个带外部请求引脚的DMA通道。

➢2个带有握手协议的UART,1个SIO。

➢1个多主的I2C总线控制器。

➢1个I2S总线控制器。

➢5个PWM定时器及1个内部定时器。

➢看门狗定时器。

➢71个通用可编程I/O口,8个外部中断源。

➢功耗控制模式:正常,低速,休眠和停止。

➢8路10位ADC。

➢具有日历功能的RTC(实时时钟)。

➢PLL时钟发生器。

2.2 S3C44BOX特点2.2.1 S3C44BOX体系结构➢S3C44BOX是基ARM7TDMI体系结构的SOC。

➢集成了手持设备和通用嵌入式系统应用的解决方案;➢16/32位RISC体系结构和ARM7TDMI处理器内核强大的指令体系;➢Thumb代码压缩机,最大化代码密度同时保持了32位指令的性能;➢基于JTAG的片上集成ICE调试支持解决方案;➢32×8位硬件乘法器;➢实现低功耗SAMBA II(三星ARM处理器嵌入式微控制器总线体系结构)的新型总线结构。

基于快速单词查询模型的嵌入式电子词典的设计与实现的开题报告

基于快速单词查询模型的嵌入式电子词典的设计与实现的开题报告

基于快速单词查询模型的嵌入式电子词典的设计与实现的开题报告一、选题背景和研究意义随着科技的不断发展,人们越来越依赖移动设备进行阅读和学习。

然而,现有的移动设备上的电子词典并不能完全满足人们的需求。

一方面,现有的电子词典在查询速度上存在一定的问题,无法快速地进行单词查询。

另一方面,现有的电子词典在界面设计上也有不足之处,用户体验较为一般。

因此,本文将研究基于快速单词查询模型的嵌入式电子词典的设计与实现。

该嵌入式电子词典将利用现代化的技术和算法设计出查询速度快、界面友好的电子词典,以更好地满足用户的需求。

二、研究内容和研究计划本文将主要研究以下两个方面:1.基于快速单词查询模型的嵌入式电子词典的设计与实现该研究方向将涉及到电子词典的核心算法、查询速度优化等方面。

在算法方面,我们将探究jieba分词、TF-IDF等算法,并将其应用于电子词典的核心算法中,以实现更快的单词查询速度。

在查询速度优化方面,我们将挑选与硬件平台相适配的算法,并设计出相应的查询优化策略。

2.电子词典的界面设计与用户体验优化该研究方向将涉及到电子词典的界面设计、用户体验和用户反馈的收集等方面。

在界面设计方面,我们将探寻界面设计的最佳实践,并据此设计出更为美观、易用的电子词典。

在用户体验优化方面,我们将对用户行为数据进行收集和分析,并据此优化电子词典的体验,提高用户的使用满意度。

研究计划如下:1.前期文献调研和技术研究(1-2周)2.电子词典的核心算法研究和设计(2-3周)3.优化算法实现和查询速度优化设计(2-3周)4.界面设计和用户体验优化设计(2-3周)5.电子词典的整合和测试(2周)6.论文撰写和准备答辩 (2周)三、研究预期结果本文主要研究基于快速单词查询模型的嵌入式电子词典的设计与实现,预期结果如下:1.设计出支持快速单词查询的嵌入式电子词典2.优化单词查询速度,加快电子词典的查询响应时间3.设计出更为美观、易用的电子词典界面,提升用户的使用体验4.提高电子词典的稳定性和可靠性,提高用户的信任度四、研究的创新点1.在算法方面,本文将探寻jieba分词、TF-IDF等算法,并将其应用到电子词典的核心算法中,以实现更快的单词查询速度。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于S3C44BOX的电子词典软件设计与实现1 概述此次基于ARM7的电子词典系统开发作业,由我们小组4人合作完成,其中我主要负责软件方面的开发,所做的方面有英译汉软件功能的实现,输入值软件识别功能的实现以及看门狗定时器的实现。

由于不怎么熟悉arm的开发,基本是看着书做,设计思路和方法、功能实现也都是书上怎么来,自己就怎么实现,希望傅老师谅解,这块的基础确实薄弱。

2 S3C44BOX处理器介绍2.1 S3C44BOX简介S3C44BOX微处理器片类集成ARM7TDMI核,采用0.25μm CMOS工艺制造,并在ARM7TDMI核的基础上集成了丰富的外围功能模块,便于低成本设计嵌入式系统应用系统。

片上集成的主要功能如下:在ARM7TDMI基础上增加至8KB的Cache。

外部扩充存储器控制器(FP/EDO/SDRAM控制,片选逻辑)。

LCD控制器(最大支持256色的DSTN),并带有一个LCD专用DMA通道。

2个通用DMA通道2个带外部请求引脚的DMA通道。

2个带有握手协议的UART,1个SIO。

1个多主的I2C总线控制器。

1个I2S总线控制器。

5个PWM定时器及1个内部定时器。

看门狗定时器。

71个通用可编程I/O口,8个外部中断源。

功耗控制模式:正常,低速,休眠和停止。

8路10位ADC。

具有日历功能的RTC(实时时钟)。

PLL时钟发生器。

2.2 S3C44BOX特点2.2.1 S3C44BOX体系结构S3C44BOX是基ARM7TDMI体系结构的SOC。

集成了手持设备和通用嵌入式系统应用的解决方案;16/32位RISC体系结构和ARM7TDMI处理器内核强大的指令体系;Thumb代码压缩机,最大化代码密度同时保持了32位指令的性能;基于JTAG的片上集成ICE调试支持解决方案;32×8位硬件乘法器;实现低功耗SAMBA II(三星ARM处理器嵌入式微控制器总线体系结构)的新型总线结构。

2.2.2 系统(存储)管理支持大/小端方式;寻址空间:每bank32M字节(共256M字节);支持每bank可编程的8/16/32位数据总线宽度;7个bank具有固定的bank起始地址和可编程的bank大小;1个bank具有可编程的bank起始地址和bank大小;8个存储器bank:-6个ROM,SRAM存储器bank;-2个ROM/SRAM/DRAM(快速页面,EDO和同步DRAM);所有的存储器bank具有可编程的操作周期;支持外部等待信号延长总线周期;支持掉电时DRAM/SDRAM的自刷新模式;支持均匀/非均匀的DRAM地址。

2.2.3 Cache存储器和内部SRAM4路组相联统一的8KB指令/数据Cache;未用的Cache空间用来作为4/8 KB Cache存储空间可作为片内的SRAM使用;支持LRU(近期最少使用)替换算法采用保持主存储器与cache内容一致性的“写穿式”策略写存储器具有4级深度当缓冲区出错时,采用“请求数据优首先填充”技术2.2.4 时钟和电源管理低功耗片上PLL使MCU工作时钟最大达到75MHz可以通过软件设置各功能模块的输入时钟电源模式:正常,慢速,空闲和停止模式;◆正常模式正常工作模式;◆低速模式不加PLL的低时钟频率模式;◆休眠模式只停止CPU的时钟;◆SL空闲模式 LCD控制器工作◆停止模式停止所有的时钟;通过EINT[7:0]或RTC报警中断从停止模式唤醒2.2.5 中断控制器30个中断源(看门狗定时器,6个定时器,6个UART,8个外部中断,4个DMA,2个RTC,1个ADC,1个I2C,1个SIO)采用向量化的IRQ中断模式以减少中断的延迟可选的电平/边沿模式触发外部中断电平/边沿模式具有可编程的优先级支持FIQ为紧急的中断请求进行服务2.2.6 定时器和PWM(脉宽调制)5通道16位具有PWM功能的定时器,1通道16位内部定时器(可进行基于DMA或中断的操作)可编程的占空比周期,频率,和优先级能产生死区支持外部时钟源2. 2.7 RTC(实时时钟)充分的时钟特性:毫秒,秒,分钟,小时,日,星期,月,年32.768KHz时钟;定时警报,可用于唤醒CPU;可产生时钟节拍中断2.2.8 通用I/O口8个外部中断口71个多功能输入/输出口2.2.9 UART(异步串行通讯)2通道UART,可进行基于DMA或中断的操作支持5位,6位,7位或8位串行数据传输/接收支持在发送/接收期间的H/W握手功能可编程的波特率支持IrDA 1.0(115.2Kbps)支持用于测试的回馈模式每个通道具有2个内部32字节的FIFO分别用于输入和输出2.2.10 DMA(直接存储器操作)控制器2通道通用DMA(直接存储器操作)控制器,不需要CPU干预2通道DMA桥(外设DMA)控制器支持I/O到存储器,存储器到I/O,I/O到I/O的6种DMA请求:软件,4个内部功能模块(UART,SIO,定时器,IIS),和外部引脚。

在同时发生的多个DMA之间具有可编程的优先级顺序;采用猝发式的传输模式以提高FPDRAM, EDODRAM和SDRAM的数据传输速率;支持在外部设备到存储器和存储器到外部设备之间采用fly-by模式2.2.11 A/D转换器8通道的ADC最大500k SPS/10-bit2.2.12 LCD 控制器支持彩色/黑白/灰度LCD屏支持单路扫描和双路扫描支持虚拟显示屏功能系统存储器用来作为显示缓存用专门的DMA来从系统存储器中获得图象数据可编程的屏幕大小灰度等级:16级灰度;最多256种颜色2.2.13 看门狗定时器16位的看门狗定时器在定时器溢出时发出中断请求或系统复位2.2.14 I2C总线接口1通道多主I2C总线,可进行基于中断的操作模式可进行串行,8位,双向数据传输,标准模式速度达到100Kbit/S,快速模式达到400Kbit/s2.2.15 I2S总线接口1通道音频I2S总线接口,可进行基于DMA的操作串行,每通道8/16位数据传输支持MSB-justified数据格式2.2.16 SIO(同步串行I/O)1通道SIO,可进行基于DMA或中断的操作可编程的波特率支持8位串行数据的传输和接收操作2.2.17 工作电压范围内核2.5V, I/O口:3.0V到3.6V2.2.18 工作频率最大75MHz2.2.19 封装160LQFP/160FBGA2.3 S3C44BOX功能结构框图图1 S3C44BOX功能结构框图2.4 S3C44BOX芯片引脚定义图2 S3C44BOX芯片引脚定义图3 基于S3C44BOX电子词典开发嵌入式系统以其体积小,性能好,功耗低,可靠性高以及面向行业应用的特点已被广泛应用与各个领域。

其中电子词典是嵌入式系统消费电子领域典型的应用实例,它具有完整的输入/输出设备。

3.1 电子词典系统定义与需求分析电子词典系统应具备以下功能要求:(1)能够通过键盘、触摸屏输入英文a~z:实现字母输入;Page up/down:显示上/下一个被查询过的单词;Line up/down:光标移至上/下一行,在单词输入过程中,在单词翻译区会有拼写相近单词显示,用Line up/down按键可以上下选择这些单词;Enter:翻译,将当前单词与词库中的内容相比较,如有一致则显示其内容,否则给出提示;Back space:退格,删除单词最末尾的字母并将光标前移一位;提供触摸屏输入六个功能键。

(2)提供友好的人机界面,将输入的内容和翻译的结果显示在LCD的相应区域内。

(3)对输入的单词即时翻译。

(4)可以记忆3个已经查询过的单词。

图3-1 查询界面3.2 电子词典方案设计为实现电子词典功能需求,结合嵌入式系统软硬件协同技术设计,采取以下设计方案。

3.2.1硬件设计依据ARM芯片的选择原则,此处选择集成了丰富的外围功能模块,便于低成本设计嵌入式应用系统的S3C44BOX处理器作为系统的主控制器。

利用其内置的LCD控制器实现LCD控制接口;利用I²C总线控制器实现键盘控制接口;利用A/D转换器实现触摸屏控制接口;利用UART实现调试接口;利用GPIO连接LED灯显示有关状态。

以上5个硬件部分的开发中,其中第1,2,3,5本组其他同学完成,第4个部分UART实现调试接口的开发与应用,在本文档中重点说明,由本人单独完成。

3.2.2软件设计本电子词典软件只要完成键盘操作,菜单操作及LCD显示功能。

根据软件模块化设计方法将系统软件分为3个模块;词库编写,功能控制软件设计,人机交互接口功能设计。

我负责软件的总体设计图,实现其基本功能。

其中按键分别具有如下功能:a~z:实现字母输入;Page up/down:显示上/下一个被查询过的单词;Line up/down:光标移至上/下一行,在单词输入过程中,在单词翻译区会有拼写相近单词显示,用Line up/down按键可以上下选择这些单词;Enter:翻译,将当前单词与词库中内如相比较,若一致则显示其内容,否则给出提示;Back space:退格,删除单词最末尾的字母并将光标前移一位。

本电子词典系统还需要提供触摸输入,在触摸屏上划分出6个区域,分别对应键盘上的6个功能键。

4 开发环境电子词典硬件模块测试软件和无操作系统电子词典应用软件的开发采用了相同的交叉开发环境。

宿主机PC机上运行ARM公司为方便用户在基于ARM 内核处理器上进行软件开发而推出的集成开发工具ARMADS(ARM Developer Suite)最新版本 1.2在Codewarrior IDE(Integrate Development Environment)集成开发环境中编辑电子词典软件程序,通过交叉编译器和交叉链接器对软件进行编译,链接。

最终生成可执行文件,通过在线仿真器Multi-ICE将此可真行文件下载到目标板运行。

在线仿真器通过并口链接宿主机,通过JTAG接口链接目标机。

串口线直接链接宿主机和目标板,在宿主机PC机上显示吊饰信息。

为加快软件开发的进度,在电子词典硬件平台未建立起来以前先使用Embest EDUKIT 实验板作为目标本吊饰各功能模块软件。

5 开发功能说明和代码5.1英译汉功能软件由于要查的英文单词有两种输入方式:一种是通过在输入框中输入字母;另一种是通过上一行/下一行键在选择框里显示的单词中进行选择,所以用参数Position表示输入方式(TRUE:输入框,FALSE:选择框查找)。

具体实现流程如图所示:/************************************************************ name: translate* func: Translation function implementation program* para: none* ret: none* modify:* comment*************************************************************/ U8 transate(S8* word,U8 Position,U8 No){U8 k=0;Trans_Clear();Dis_Chinese(20,55,Gui_WHITE,”正在查找,请等待!”);if(!Position){strcpy(word,vocab[No].c);Disp_String(word,English_area.x0+5,English_area.y0+2);}for(k=0;k<ALL_WNo;k++){if(strcmp(word,vocab[k].c)==0){Trans_Clear();Disp_String(vocab[k].d,20,55);Disp_chinese(20,75,GUI_WHITE,vocab[k].e);Disp_String(vocab[k].f,20,95);Return k;}}Trans_Clear()’Dis_Chinese(20,55,GUI_WHITE,”查无此词!”);return (k=ALL_WNo);}/******************************************************************** * name: KeyboardInt* func: keyboard interrupt handler function* para: none* ret: none* modify:* comment:********************************************************************/ void KeyboardInt(void){int nTemp,i,j,k,m=0;char bbyte;rI_ISPC = BIT_EINT1; // clear pending bitchar pbyte[10];nTemp = key_read();if(nTemp > -1){// Lcd_Draw_HLine(10, 310, 80, WHITE, 50);input_char = nTemp;Lcd_DspAscII8x16(15,45,WHITE,word);switch(input_char){case 0:num=1;break;case 1:num=2;break;case 2:num=3;break;case 3:num=4;break;case 4:num=5;break;case 5:num=6;break;case 6:num=7;break;case 7:num=8;break;case 8:num=9;break;case 9:counter=1;break;case 10:counter=2;break;case 11:counter=3;break;case 12:m=1;Lcd_Draw_HLine(15+n-10, 15+n, 45, WHITE, 16);n-=10;word[wordIndex]='\0';wordIndex--;break;/*if(n==0){word[20]=0;wordIndex=0;Lcd_Draw_HLine(10, 310,85, WHITE, 160);}break;*/case 13:word[wordIndex]='\0';wordIndex=0;for(i=0;i<20;i++){if(strcmp(word,vocab[i].c)==0){j=0;k=i;break;}elsej=1;}if(j==0){//#ifdef Eng_vLcd_DspAscII8x16(15,40,BLUE,vocab[k].c);Lcd_DspAscII8x16(15,60,BLUE,vocab[k].d);Lcd_DspAscII8x16(15,80,BLUE,vocab[k].f);//#elseLcd_DspHz16(15,100,BLUE,vocab[k].e);//#endif}else{Lcd_DspHz16(15,120,BLUE,"未找到相应的单词"); DelayMs(600);Lcd_DspHz16(15,120,WHITE,"未找到相应的单词"); }break;case 14:word[wordIndex]='\0';wordIndex=0;for(i=0;i<20;i++){if(strcmp(word,vocab[i].c)==0){j=0;k=i;break;}elsej=1;}if(j==0){//#ifdef Eng_vLcd_DspAscII8x16(15,40,BLUE,vocab[k].c);Lcd_DspAscII8x16(15,60,BLUE,vocab[k].d);Lcd_DspAscII8x16(15,80,BLUE,vocab[k].f);//#elseLcd_DspHz16(15,100,BLUE,vocab[k].e);//#endif}else{if(20>x>0){for(i = 0; i < 20; i++)vocab[x].c[i]=word[i];word[i]='\0';Lcd_DspAscII8x16(15,40,BLUE,vocab[x].c);x++;}elsex=15;//Lcd_DspAscII8x16(15,45,BLUE,word);for(i = 0; i < 20; i++)word[i]='\0';}break;case 15://Lcd_Draw_Box(10,40,310,80,GREEN);break;}if(num!=0&&counter!=0){switch(3*(num-1)+counter-1){case 0:bbyte='a';break;case 1:bbyte='b';break;case 2:bbyte='c';break;case 3:bbyte='d';break;case 4:bbyte='e';break;case 5:bbyte='f';break;case 6:bbyte='g';break;case 7:bbyte='h';break;case 8:bbyte='i';break;case 9:bbyte='j';break;case 10:bbyte='k';break;case 11:bbyte='l';break;case 12:bbyte='m';break;case 13:bbyte='n';break;case 14:bbyte='o';break;case 15:bbyte='p';break;case 16:bbyte='q';break;case 17:bbyte='r';break;case 18:bbyte='s';break;case 19:bbyte='t';break;case 20:bbyte='u';break;case 21:bbyte='v';break;case 22:bbyte='w';break;case 23:bbyte='x';break;case 24:bbyte='y';break;case 25:bbyte='z';break;}num=0;counter=0;if(m==0){word[wordIndex]=bbyte;wordIndex++;//n+=10;}}Lcd_DspAscII8x16(15,210,BLUE,word); // Uart_Printf("Key is:%x \r",input_char);}}5.2输入键值识别功能软件本电子词典设计中共有26个字母键和6个功能键。

相关文档
最新文档