- 641
- 0
- 约1.13千字
- 约 3页
- 2017-08-26 发布于浙江
- 举报
实验5定时器计数器实验报告.doc
单片机实验五定时器/计数器设计实验报告
实验内容
1、采用12MHZ时钟频率的单片机,通过一个开关输入,触发定时计数。按下开关10次,计算按键的平均时间,并通过数码管显示出来。
实验目的
1、了解定时器的各种工作方式。
2、掌握定时器/计数器的使用和编程方法。
实验设备
win7系统下的proteus7.8和ceil4联调
实验电路图
程序代码
#includereg51.h
sbit P1_0=P1^0;
unsigned char numcode[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88};
unsigned char seqcode[4]={0x01,0x02,0x04,0x08};
unsigned int num=0;
void int1() interrupt 1
{
num++;
TL0=0xb0;
TH0=0x3c;
}
void DelayMS(unsigned int ms)
{
unsigned char i;
while(ms--) for(i=0;i120;i++);
}
void main()
{
unsigned char i=0;
unsigned char dspcode[4];
unsigned long t;
P3=numcode[i];
ET0=1;
EA=1;
TH0=0x3c;
TL0=0xb0;
TMOD=0x01;
while(1)
{
if(P1_0==0)
{
TR0=1;
i++;
P3=numcode[i];
while(P1_0==0);
TR0=0;
if(i==10)
{
t=((TH08)+TL0)/1000;
t=(t+50*num)/10;
dspcode[0]=numcode[(t/1000)%10]^0x80;
dspcode[1]=numcode[(t/100)%10];
dspcode[2]=numcode[(t/10)%10];
dspcode[3]=numcode[t%10];
break;
}
}
}
while(1)
{
for(i=0;i4;i++)
{
P2=seqcode[i];
P0=dspcode[i];
DelayMS(5);
}
}
}
实验结果
七、实验小结
通过实验,我了解了定时器的各种工作方式和定时器/计数器的使用和编程方法,为进一步学习打下基础。
您可能关注的文档
最近下载
- 重庆天齐锂电新材料有限公司新建1000吨_年高能锂电材料电池级金属锂项目环评报告.pdf VIP
- DB65T 3694-2015 现行哈萨克文与西里尔哈萨克文编码字符转换规则.docx VIP
- TGXAS 1044-2025《中医护理三级查房规范》(发布稿).pdf VIP
- 华为云服务登录.doc VIP
- 采砂场工业用水水资源论证论证表详解.doc VIP
- Onkyo安桥TX-NR828中文说明书.pdf
- 采砂场工业用水水资源论证论证表分析报告.doc
- 【中考】2025年广东佛山数学试卷(原卷+答案).docx VIP
- 2021年广东省佛山市中考数学真题及答案.pdf VIP
- SpaceX火星探索任务成本预算与风险管理分析报告.docx
原创力文档

文档评论(0)