1个回答
展开全部
写入程序要有烧写器,一般十几到几十不等,如果你有一定的硬件基础的话,你自己也可以做一个,延时要看你要不要中断了
void delay_50ms(unsigned int t)
{
unsigned int i;
while(t--)
for(i=9100;i>0;i--);
}
这个程序在12M晶振下大概延时50ms,如果要要是30分钟,就要调用36000次,也可以用中断的方法
void system_Ini()
{
TMOD|= 0x16;
TH1 = -50000/256;
TL1 = -50000%256;
TR1 = 1;
IE =0x16A;
}
void main(void)
{
void system_Ini(); ///初始化
while(1)
{
if(timer1==36000)
{
timer=0;
//////////////////////
写你要实现的功能
/////////////////
}
}
}
void T1zd(void) interrupt //3 为定时器1的中断号 1 定时器0的中断号 0 外部中断1 2 外部中断2 4 串口中断
{
TH1 = -50000/256;
TL1 = -50000%256;
timer1++;
}
程序只能大概提供一个框架,这个程序没有调试过,单片机这个东西需要很强的动手能力,我希望程序还是你自己调试出来的好点,这样有助与学习
void delay_50ms(unsigned int t)
{
unsigned int i;
while(t--)
for(i=9100;i>0;i--);
}
这个程序在12M晶振下大概延时50ms,如果要要是30分钟,就要调用36000次,也可以用中断的方法
void system_Ini()
{
TMOD|= 0x16;
TH1 = -50000/256;
TL1 = -50000%256;
TR1 = 1;
IE =0x16A;
}
void main(void)
{
void system_Ini(); ///初始化
while(1)
{
if(timer1==36000)
{
timer=0;
//////////////////////
写你要实现的功能
/////////////////
}
}
}
void T1zd(void) interrupt //3 为定时器1的中断号 1 定时器0的中断号 0 外部中断1 2 外部中断2 4 串口中断
{
TH1 = -50000/256;
TL1 = -50000%256;
timer1++;
}
程序只能大概提供一个框架,这个程序没有调试过,单片机这个东西需要很强的动手能力,我希望程序还是你自己调试出来的好点,这样有助与学习
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询