首页 > 编程知识 正文

定时器实验报告(单片机计数器实验报告总结)

时间:2023-05-05 17:24:44 阅读:76907 作者:3489

51单片机定时器实验报告51单片机定时器实验报告

51单片机定时实验

实验内容:

实验内容:

编制程序,使计时器0或计时器1以模式1动作,以计时器50ms发出蜂鸣器。

c语言程序

#包含

#定义uint unsigned int

#define ucahr unsigned char

sbit FM=P0^0;

Void主() )

{

TMOD=0x01;

th0=(65535-50000 )/256;

th0=(65535-50000 ) 6;

EA=1; //总中断

ET0=1; //接通定时器0中断

TR0=1;

wile(1;

}

voidT0_time(interrupt1

{

th0=(65535-50000 )/256;

th0=(65535-50000 ) 6;

调频=~调频;

}

汇编程序

ORG 0000H

JAMP MAIN

ORG 000BH

LJMP INT0_INT

ORG 0100H

MIAN:SETB EA

SETB ET0

AJMP $

INT0_INT:MOV R2,#0FAH

MOV R3,#0C8H

DJNZ R3,$

DJNZ R2,INT0_INT

雷蒂

编制程序,使计时器0或计时器1在模式1下动作,在计时器500ms下,每00、01、02……98、99到500ms递增1来显示2位的代码管。

#包含

#定义uint unsigned int

#define ucahr unsigned char

uint num,num1;

sbit FM=P0^7;

int shi,ge,a;

语音延迟(uint;

void shumaguan (;

unsignedcharcodetable [ ]={0xc 0,0x F9,0x a4,0xb 0,0x 99,0x 92,0x 82,0x F8,

0x 80,0x 90,0x 88,0x 83,0xc 6,0x a1,0x 86,0x8e }; //共阳极编码管0-F编码表

Void主() )

{

TMOD=0x01;

th0=(65535-50000 )/256;

th0=(65535-50000 ) 6;

EA=1; //总中断

ET0=1; //接通定时器0中断

TR0=1;

while(1)。

{

shumaguan (;

}

}

voidT0_time(interrupt1

{

th0=(65535-50000 )/256;

th0=(65535-50000 ) 6;

num1;

if(num1==10 ) ) ) )。

{

num1=0;

num;

shi=num/10;

ge=num;

if(num==100 ) ) ) )。

{

num=0;

}

}

}

void shumaguan (

{

P3=0x01;

P2=table[shi];

dlay(5;

P3=0x02;

P2=table[ge];

dlay(5;

}

void zuoyi () ) )

{

a=~P3;

a=a1;

P3=~a;

if(P3==0xFB ) ) ) ) )。

{

P3=0xfe;

}

}

欢跃延迟(uintx )。

{

int i,j;

for(I=0; I

for(j=0; j110; j;

}

)3)编写程序,使计时器0或计时器1在模式2下动作,进入自动重装模式,在计时器500ms下,每00、01、02……98、99递增500ms显示两位数码管。

#包含

#定义uint unsigned int

#define ucahr unsigned char

uint num,num1;

int shi,ge,a;

语音延迟(uint;

void shumaguan (;

void zuoyi (;

unsignedcharcodetable [ ]={0xc 0,0x F9,0x a4,0xb 0,0x 99,0x 92,0x 82,0x F8,

0x 80,0x 90,0x 88,0x 83,0xc 6,0x a1,0x 86,0x8e }; //共阳极编码管0-F编码表

Void主() )

{

TMOD=0x02;

TH0=255-200;

TH0=255-200;

EA=1; //总中断

ET0=1; //接通定时器0中断

TR0=1;

P3=0x01;

while(1)。

{

shumaguan (;

}

}

voidT0_time(interrupt1

{

num1;

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。