(例8)矩阵键盘数字输入.doc_第1页
(例8)矩阵键盘数字输入.doc_第2页
(例8)矩阵键盘数字输入.doc_第3页
(例8)矩阵键盘数字输入.doc_第4页
(例8)矩阵键盘数字输入.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

/*绿盾电子 X-13 多传感器开发板功能:驱动数码管显示数据时间:2011-8-23*/*/包含头文件#include#include/*/typedef unsigned char uint8; /定义8位无符号变量typedef unsigned int uint16; /定义16位无符号变量typedef unsigned char uchar;typedef unsigned int uint;typedef unsigned long ulong;/*/定义引脚(根据硬件改变)sbit BCD6 = P15;sbit BCD5 = P14;sbit BCD4 = P13;sbit BCD3 = P12;sbit BCD2 = P11;sbit BCD1 = P10;#define BCD_PORTP0#define KeyBroadP2sbit KeyBroad1 = KeyBroad 7;sbit KeyBroad2 = KeyBroad 6;sbit KeyBroad3 = KeyBroad 5;sbit KeyBroad4 = KeyBroad 4;sbit KeyBroad5 = KeyBroad 3;sbit KeyBroad6 = KeyBroad 2;sbit KeyBroad7 = KeyBroad 1;sbit KeyBroad8 = KeyBroad 0;/*/code uint8 BCD=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef,0x40; /定义数字显示数组为常量,共阴极 / /*0,1,2,3,4,5,6,7,8,9,0.,1.,2.,3.,4.,5.,6.,7.,8.,9.,-/函数声明/*/void delay(unsigned int time); void DisplayBCD(ulong temp);/*/延时子函数 /参数范围 0-65536 us 12MHzvoid delay(unsigned int time) /参数 time 大小 /决定延时时间长短while(time-);/*/毫秒级延时函数void mDelay(uchar delay) uchar i; for(;delay0;delay-) for(i=150;i0;i-); /*/数码管显示函数void DisplayBCD(ulong temp) BCD_PORT = BCDtemp / 100000;BCD6 = 0;mDelay(10);BCD6 = 1;BCD_PORT = BCDtemp / 10000 %10;BCD5 = 0;mDelay(10);BCD5 = 1;BCD_PORT = BCDtemp / 1000 %10;BCD4 = 0;mDelay(10);BCD4 = 1;BCD_PORT = BCDtemp / 100 %10;BCD3 = 0;mDelay(10);BCD3 = 1;BCD_PORT = BCDtemp / 10 %10;BCD2 = 0;mDelay(10);BCD2 = 1;BCD_PORT = BCDtemp %10;BCD1 = 0;mDelay(10);BCD1 = 1;/*/键盘扫描函数uchar ScanKey(void)KeyBroad = 0xff;KeyBroad1 = 0;if(KeyBroad8 = 0)mDelay(50);if(KeyBroad8 = 0)return 0x00;if(KeyBroad7 = 0)mDelay(50);if(KeyBroad7 = 0)return 0x01;if(KeyBroad6 = 0)mDelay(50);if(KeyBroad6 = 0)return 0x02;if(KeyBroad5 = 0)mDelay(50);if(KeyBroad5 = 0)return 0x03;KeyBroad = 0xff;KeyBroad2 = 0;if(KeyBroad8 = 0)mDelay(50);if(KeyBroad8 = 0)return 0x04;if(KeyBroad7 = 0)mDelay(50);if(KeyBroad7 = 0)return 0x05;if(KeyBroad6 = 0)mDelay(50);if(KeyBroad6 = 0)return 0x06;if(KeyBroad5 = 0)mDelay(50);if(KeyBroad5 = 0)return 0x07;KeyBroad = 0xff;KeyBroad3 = 0;if(KeyBroad8 = 0)mDelay(50);if(KeyBroad8 = 0)return 0x08;if(KeyBroad7 = 0)mDelay(50);if(KeyBroad7 = 0)return 0x09;if(KeyBroad6 = 0)mDelay(50);if(KeyBroad6 = 0)return 0x0a;if(KeyBroad5 = 0)mDelay(50);if(KeyBroad5 = 0)return 0x0b;KeyBroad = 0xff;KeyBroad4 = 0;if(KeyBroad8 = 0)mDelay(50);if(KeyBroad8 = 0)return 0x0c;if(KeyBroad7 = 0)mDelay(50);if(KeyBroad7 = 0)return 0x0d;if(KeyBroad6 = 0)mDelay(50);if(KeyBroad6 = 0)return 0x0e;if(KeyBroad5 = 0)mDelay(50);if(KeyBroad5 = 0)return 0x0f;Key

温馨提示

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

评论

0/150

提交评论