嵌入式应用设计综合课程设计键盘控制数码管的数字输入及运算实验.ppt_第1页
嵌入式应用设计综合课程设计键盘控制数码管的数字输入及运算实验.ppt_第2页
嵌入式应用设计综合课程设计键盘控制数码管的数字输入及运算实验.ppt_第3页
嵌入式应用设计综合课程设计键盘控制数码管的数字输入及运算实验.ppt_第4页
嵌入式应用设计综合课程设计键盘控制数码管的数字输入及运算实验.ppt_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

专业:11级自动化指导老师:,嵌入式综合课程设计,键盘控制数码管的数字输入及运算实验,二零一三年十二月二十四日,总览,一、设计说明,1、了解LED数码管和矩阵键盘的工作原理。2、作出简单的应用程序设计,实现矩阵键盘控制LED数码管显示。,1、设计目的,2、设计内容,编写应用程序实现矩阵键盘控制LED数码管,显示相应的数字并实现简单的加减乘除运算。,3、实验设备,1、一套PXA270EP嵌入式实验箱。2、安装Redhat9的宿主PC机,并且配置好ARMLinux的开发环境。,二、设计方案,2、主程序设计,本设计要求实现键盘控制LED数码管显示,就必须要编写键盘和LED数码管的程序。先通过扫描矩阵键盘,得到键盘值,然后再调用数码管显示子函数,根据扫描的键盘值,作简单的运算后,在LED数码管上显示相应的数字。,1、设计思路,主程序要实现的功能是矩阵键盘扫描,得到键盘值,然后把值传给LED显示函数。程序流程图如右图:,3、LED数码管显示函数设计,本函数要实现的功能是根据键盘的值,在LED数码管上显示相应的数字并实现简单的运算。如果键盘的输入值为09则数码管显示相应的09,输入“+”、“-”、“*”和“/”则分别作相应的运算。键入“Enter”则显示运算结果。本程序采用一维数组存放要显示的数字字模,然后再通过控制LED数码管高低电平,把要显示的数字显示出来,程序流程图如右图:,二、设计方案,4、LED数码管显示设计,74LV164是8比特的沿触发的串行输入,并行输出的转换器。串行的数据从两个输入端的串行的数据从两个输入端的其中一个输入,两个输入端必须连在一起,或者不用的一个要接高电平。在时钟信号(CP)的上升沿到来的时候,数据向右移位。数据从Q0进入,他是两个输入管脚(DSA,DSB)逻辑“与”的结果。在MR管脚输入低电平可以把所有输入清零,并把输出置为低电平。我们采用一维数组buf12存放09。所以要显示的数字字模如下:intbuf12=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x00,0 x00;,二、设计方案,三、程序源代码,/*#include#include#include#include#include#include#defineDEVICE_NAME1/dev/keypad#defineDEVICE_NAME2/dev/serial_led/*main*intmain(void)intfd_key;intfd_LED;intret;unsignedcharbufk2;intbuf12=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x00,0 x00;intdata10;intG=0,T=0,K=0,Z=0;inta=0,b=0,c=0,d=0;inti=0,j=0;charpre_scancode=0 xff;fd_key=open(DEVICE_NAME1,O_RDWR);fd_LED=open(DEVICE_NAME2,O_RDWR);,if(fd_key=-1,三、程序源代码,if(bufk0=19)Z=K;K=0;i=0;j=0;data0=buf11;write(fd_LED,data,1);sleep(1);if(bufk0=20)Z=K;K=0;i=1;j=0;data0=buf11;write(fd_LED,data,1);sleep(1);if(bufk0=21)Z=K;K=0;i=0;j=1;data0=buf11;write(fd_LED,data,1);sleep(1);if(bufk0=22)Z=K;K=0;i=1;j=1;data0=buf11;write(fd_LED,data,1);sleep(1);,三、程序源代码,if(bufk0=18)if(i=0/*endmain*,三、程序源代码,四、设计结果,四、设计结果,五、心得体会,通过本次实验,我们对linux下的实验更加熟悉了,对LED点阵显示和矩阵键盘的原理有了深入的了解,掌握了LED数码管的设计方法和键盘的输入的读取,并把二者结合起来,实现了键盘控制Led数码管显示。这是一个不难也不易的程序。因为有基础(之前分别走了数码管和键盘的测试程序的编写),所以知道怎么做,但是不能因为这样就说这个实验见但,因为它要求我们认真仔细的联系两者,且要求做到运算,所以我们就得完全知道他们工作的原理,然后联系

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论