能不能帮忙设计一个51单片机定时电路设计的C语言程序还有硬件(PROTEL/PCB).发邮箱509442881@qq.com,谢
这末简单的电路,没有必要设计PCB。给你个Proteus仿真图吧。
/*
定时器实验,T2中断
LED以1秒周期显示
*/
#include<AT89X52.h>
unsigned char Num = 0;
sbit Led = P2^0; // 定义变量名应含义明确
/***************************
计数器2定时50毫秒
***************************/
void time2() interrupt 5 // 5是定时器中断2的中断入口
{
TF2 = 0; // T2中断标志必须软件复位
Num++;
}
/**************************
主函数
**************************/
void main()
{
Led = 1; //开始灯是灭的
RCLK = 0; // 使用T2计数器
TCLK = 0;
C_T2 = 0; // T2为内部定时器
CP_RL2 = 0; // 常数自动装入方式
RCAP2H = (65536L-50000L)/256; // 设置定时器初值
RCAP2L = (65536L-50000L)%256;
TH2 = RCAP2H;
TL2 = RCAP2L;
EA=1; //开总中断
ET2=1; //开放定时器2 interrupt 5
TR2=1; //启动定时器2
while(1)
{
if(Num==20)
{
Led =! Led;
Num = 0;
}
}
}
不会吧,这么简单,帮忙想想复杂点的,在此谢了
你的问题是:“设计一个51单片机定时电路设计的C语言程序还有硬件”,你要的是“定时电路”,那么“定时电路的设计”就是对“定时器”的应用,而不是闹钟、时钟、万年历等。我的例程就是定时器的应用的例子,可用于任何定时电路中。LED是用来“定时”闪灼的,不过是看一下定时效果罢了。