嵌入式课程设计电子词典硬件设计

上传人:大米 文档编号:389238806 上传时间:2022-07-19 格式:DOCX 页数:29 大小:115.24KB
返回 下载 相关 举报
嵌入式课程设计电子词典硬件设计_第1页
第1页 / 共29页
嵌入式课程设计电子词典硬件设计_第2页
第2页 / 共29页
嵌入式课程设计电子词典硬件设计_第3页
第3页 / 共29页
嵌入式课程设计电子词典硬件设计_第4页
第4页 / 共29页
嵌入式课程设计电子词典硬件设计_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《嵌入式课程设计电子词典硬件设计》由会员分享,可在线阅读,更多相关《嵌入式课程设计电子词典硬件设计(29页珍藏版)》请在金锄头文库上搜索。

1、上海电力学院嵌入式系统课程设计报告题 目:电子词典的设计姓 名:学 号:院 系:专业年级:同组成员:年月日一、实验内容及要求在 LCD 屏幕左侧绘制出单词输入框和释义显示框以及一个搜索键,右侧绘制 4*4 键盘按 钮,模拟出简易电子词典的功能,按钮操作用触摸屏或键盘实现均可。实现功能:(1)LCD 屏幕上显示 4*4 键盘,显示单词及其翻译、例句。(2) 一个键可完成2个英文字母的输入,如左上角第一个键可实现输入a,b两个字母, 第一次按下时为输入a,如果需输入b,只需连续快速按键两次即可。(3) 在输入完单词后,点击搜索键,即可在释义显示框中显示该单词的词性、中文解 释、示例词组和句子等。(

2、4) 当发现输入的单词在库中不存在时,可实现将该单词添加入库的操作。二、设计思路(1) 通过 LCD 显示模块画出电子词典操作界面。(2) 对应界面中各键的位置设置键盘对应键值。(3) 设定功能键,实现以下3个功能:退格键:删除最后一位字母;搜索/保存键:对输入框的单词进行判断,若单词存在于词库中,则显示单词词性、词义、例句;若单 词不存在则自动进行保存;转换键:按下后,字母键输出对应的第二个字母。(4) 按键后赋值并显示。三、软件构架四、模块分析(1)键盘模块流程图:源代码:/J J J J J J J J J J J J J J J J J J J J J J J J J J J J J

3、J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J/ xrxrZJZJA A A X A J J J J J *A* *A* A* A* AXIX TZf* XT XT Xf*File:keyboard.c*Author:embest* Desc: keyboard source code* History:%L *X* A A J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J

4、J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J JA* A* A* A A A A A A A A Jx A* A* /Zjxrxr /*- include files -*/#include 44b.h#include 44blib.h#include def.h#include keyboard.h#include lcd.h#include dict.h#ifndef KEY_INT#define KEY_INT#endif#ifndef BUT_INT#define BUT_INT#endif/

5、*- global variables -*/int input_char,n=0;char word20;int wordIndex=0;int x = 15;int num=0;int counter=0;/* keyboard control address */volatile UCHAR *keyboard_base = (UCHAR *)0x06000000;/*- function declare -*/ void init_keyboard();void close_keyboard();void KeyboardInt(void);/ _attribute_ (interru

6、pt (IRQ);void Eint4567Isr(void);/ _attribute_ (interrupt (IRQ);/*- function code -*/ js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js

7、 js js js js js js*i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i*T* *T* *T* *T* *T* *T* *T* name:Test_Keyboard* func:test keyboard* para:none * ret: none * modify:* comment:*1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1*

8、 *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* /*T* *T* *T* *T* *T* *T* /void Test_Keyboard()U

9、art_Printf(n Keyboard Test Examplen);Uart_Printf(n Please press one key on keyboard and look at LED .n);/ init keyboard init_keyboard(); while(1);/ close keyboard/ close_keyboard();/ js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js

10、js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js*i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i*T* *T* *T* *T* *T* *T* *T*name:init_keyboard*func:initkeyboard interrupt*para:none*ret:none*modify:*comment:*1* *1* *1* *1* *

11、1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1*i*

12、 *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* *i* /*T* *T* *T* *T* *T* *T* /externvoidisrEINT1(void);externvoidisrEint4567(void);void init_keyboard()/* enableinterrupt*/rINTMOD =0x0;rINTCON =0x1;/* set EINT1interrupt handler*/rINTMSK =(BIT_GLOBAL|BIT_EINT1|BIT_EINT4567); pISR_EINT1 =(int)isrEINT1;pIS

13、R_EINT4567 = (int)isrEint4567;/* PORT G */rPCONG = 0xffff;/ EINT70rPUPG = 0x0;/ pull up enablerEXTINT = rEXTINT|0x20; / EINT1 falling edge moderI_ISPC = BIT_EINT1|BIT_EINT4567; / clear pending bit rEXTINTPND = 0xf; / clear EXTINTPND reg / js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js js j

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号