- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(例8)矩阵键盘数字输入
/******************************************
绿盾电子
X-13 多传感器开发板
功能:驱动数码管显示数据
时间:2011-8-23
******************************************/
/*****************************************************/
//包含头文件
#includereg52.h
#includestdio.h
/*****************************************************/
typedef unsigned char uint8; //定义8位无符号变量
typedef unsigned int uint16; //定义16位无符号变量
typedef unsigned char uchar;
typedef unsigned int uint;
typedef unsigned long ulong;
/*****************************************************/
//定义引脚(根据硬件改变)
sbit BCD6 = P1^5;
sbit BCD5 = P1^4;
sbit BCD4 = P1^3;
sbit BCD3 = P1^2;
sbit BCD2 = P1^1;
sbit BCD1 = P1^0;
#define BCD_PORT P0
#define KeyBroad P2
sbit 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 @ 12MHz
void 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 = BCD[temp / 100000];
BCD6 = 0;
mDelay(10);
BCD6 = 1;
BCD_PORT = BCD[temp / 10000 %10];
BCD5 = 0;
mDelay(10);
BCD5 = 1;
BCD_PORT = BCD[temp / 1000 %10];
您可能关注的文档
- ageinginthe21stcentury:(ageinginthe21stcentury).DOCX
- ISO23251-API5212012SpringMeeting-My:(ISO23251-API5212012SpringMeeting-My).DOCX
- Anti-dumpingactions:(Anti-dumpingactions).DOC
- (上教版)初三T能力(溶解度曲线4星).doc
- (RJ)第十七章交变电流第五节电能的输送有关交变电流的几个小专题.doc
- (打印版)生活方式与健康老龄化和心血管病.doc
- (和期末相同)社会调查研究与方法_2196.doc
- (参考)交通控制与管理试卷样卷.doc
- (课时4)63用频率估计概率.doc
- 01计算书.doc
文档评论(0)