电子信息工程专业实验Word文档下载推荐.docx

上传人:b****5 文档编号:19868696 上传时间:2023-01-11 格式:DOCX 页数:17 大小:102.60KB
下载 相关 举报
电子信息工程专业实验Word文档下载推荐.docx_第1页
第1页 / 共17页
电子信息工程专业实验Word文档下载推荐.docx_第2页
第2页 / 共17页
电子信息工程专业实验Word文档下载推荐.docx_第3页
第3页 / 共17页
电子信息工程专业实验Word文档下载推荐.docx_第4页
第4页 / 共17页
电子信息工程专业实验Word文档下载推荐.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

电子信息工程专业实验Word文档下载推荐.docx

《电子信息工程专业实验Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《电子信息工程专业实验Word文档下载推荐.docx(17页珍藏版)》请在冰豆网上搜索。

电子信息工程专业实验Word文档下载推荐.docx

{P1=~temp;

Delay();

temp=temp<

<

1;

P1=0xff;

}

P2=0xC7;

Delay();

P2=0xE3;

P2=0X8F;

P2=0XF1;

P2=0X1F;

P2=0XF8;

P2=0xff;

}

}

unsignedchartemp,temp1;

temp=0x01;

2;

}

temp1=0x02;

{P1=~temp1;

temp1=temp1<

#include<

reg51.h>

unsignedcharcodeledca[]={0x3f,

0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

voiddelayms(unsignedint);

unsignedchari,J;

i=0;

J=0;

{

P2=J;

10;

{

P3=ledca[i];

delayms(200);

if(i==9)

J=J+1;

if(J==10)

{

J=0;

}

}

voiddelayms(unsignedintt)

unsignedinti,j;

for(j=0;

t;

j++)

for(i=0;

124;

{}

//定义引脚

#defineDATPINP0

#definePOSPINP2

#defineRELOAD_HIGH0xFC

#defineRELOAD_LOW0x18

sbitKEY0=P3^6;

sbitKEY1=P3^7;

//最小计时单位

unsignedintt,ms,sec,min,hr;

//共阳显示码

unsignedcharcodeledca[]={0xc0,

0xf9,0xa4,0xb0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};

//共阳位置码

unsignedcharcodeposca[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

//毫秒延时

//LED显示

voiddisplay(unsignedchar,unsignedchar);

//定时器、中断初始化

IE=0x00;

TMOD=0x01;

TH0=RELOAD_HIGH;

TL0=RELOAD_LOW;

//启动定时器

TR0=1;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

if(~KEY0)

ms=0;

IE=0x82;

if(~KEY1)

IE=0x00;

display(ledca[ms%10],7);

display(ledca[ms/10],6);

display(ledca[sec%10],5);

display(ledca[sec/10],4);

display(ledca[min%10],3);

display(ledca[min/10],2);

display(ledca[hr%10],1);

display(ledca[hr/10],0);

unsignedinti,j;

j<

j++)

i<

123;

i++)

//LED显示,第1个参数为显示数据,第2个为显示位置

voiddisplay(unsignedchardat,unsignedcharpos)

POSPIN=posca[pos];

DATPIN=dat;

delayms(5);

POSPIN=0x00;

//定时中断处理函数

voidtimer0()interrupt1

t++;

if(t==2)

ms++;

t=0;

if(ms==10)

sec++;

if(sec==60)

{

min++;

sec=0;

if(min==60)

{

hr++;

min=0;

if(hr==24)

{

hr=0;

}

}

#defineDATPINP0//IO口定义

#definePOSPINP2//IO口定义

sbitKEYS=P3^0;

//按键定义

unsignedcharms,cy;

//最小计时单位、频率进位

unsignedcharcodeledca[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};

//unsignedcharcodeposca[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

unsignedcharcodeposca[]={0X80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};

voiddelayms(unsignedintt);

//毫秒延时

voiddisplay(unsignedchardat,unsignedcharpos);

unsignedchari,wei,chr[8];

//循环变量、位数、显示字符串

unsignedlongfreq;

//频率数

IE=0x8A;

//T0、T1开中断

TMOD=0x51;

//T0定时器、T1计数器

TH0=(65536-49999)/256;

//T0初值

TL0=(65536-49999)%256;

if(~KEYS)//按键按下

ms=0;

//计时单位清零

cy=0;

//进位清零

TH1=0;

//T1初值为0

TL1=0;

TR0=1;

//启动定时器

TR1=1;

//启动计数器

//定时器查询中断

if(TF0==1)

{

TH0=(65536-49999)/256;

TL0=(65536-49999)%256;

ms++;

TF0=0;

if(TF1==1)

cy++;

TF1=0;

while(ms<

20);

//等待1秒到

TR1=0;

//停止计数器

TR0=0;

//停止定时器

//计算脉冲数量

freq=cy*65536+TH1*256+TL1;

//将脉冲数转化为字符

chr[i]=freq%10;

freq/=10;

if(freq==0)

wei=i+1;

break;

while(~KEYS);

//等待按键抬起

wei;

display(chr[i],i);

voiddisplay(unsignedchardat,unsignedcharpos)

DATPIN=ledca[dat];

//定时器0中断

TH0=(65536-49991)/256;

TL0=(65536-49991)%256;

ms++;

//计数器1中断

voidtimer1()interrupt3

cy++;

#defineDATPINP0//定义IO口

#definePOSPINP2//定义IO口

sbitKEY0=P3^2;

//定义按键

sbitKEY1=P3^3;

unsignedcharnum0=0,num1=80;

//按键0和1按下次数

unsignedcharcodeledca[]={0xc0,0xf9,0xa4,0xb0,0x99,

0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};

unsignedcharcodeposca[]={0x01,0x02,0x04,0x08,0x10,

0x20,0x40,0x80};

//LED显示

IE=0x85;

//外部中断初始化

//IT0=0;

//电平触发

IT1=1;

//边沿触发

IT0=1;

display(num1/10,num0);

display(num1%10,num0+1);

//外部中断1处理函数

voidint1()interrupt2

num1++;

if(num1==100)

num1=0;

voidint0()interrupt0

num0++;

if(num0==7)

num0=0;

}

//num1=0;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1