標題: [求助]1秒內(nèi)燈閃10次 [打印本頁]

作者: a123    時間: 2010-10-21 21:23
標題: [求助]1秒內(nèi)燈閃10次

程序要求:1秒之內(nèi)燈閃10次,我編的程序A和B都不能實現(xiàn)這個要求,哪位熱心人幫幫我

A:

#include  <reg52.h>

#define uchar unsigned char
#define uint unsigned int
uchar a=0;
sbit LED=P0^0;
sbit P1_4=P1^4;
void delay(uint z);
void main()
{
   P1_4=0;
 a=0;
  TMOD = 0x01;
 TH0 = (65536-50000)/256;//50ms
 TL0 = (65536-50000)%256;
 EA = 1;
 ET0 = 1;
 TR0 = 1;
 while(1);
}

void Timer_0() interrupt 1
{
 TH0 = (65536-50000)/256;
 TL0 = (65536-50000)%256;
   a++;

    if(a == 1)
   {
     a=0;
     LED = ~LED;
 
  delay(689);
  TR0=0;
   }
}

void delay (uint z)
{
 uint x,y;
 for(x=125;x>0;x--)
 for(y=z;y>0;y--);
 }

 

 

B:

#include  <reg52.h>

#define uchar unsigned char
#define uint unsigned int
uchar a=0;
sbit LED=P0^0;
sbit P1_4=P1^4;
void delay(uint z);
void main()
{
   P1_4=0;
 a=0;
  TMOD = 0x01;
 TH0 = (65536-50000)/256;//50ms
 TL0 = (65536-50000)%256;
 EA = 1;
 ET0 = 1;
 TR0 = 1;
 while(1);

delay(689);

  ET0=0;
  TR0=0;

}

 

 

void Timer_0() interrupt 1
{
 TH0 = (65536-50000)/256;
 TL0 = (65536-50000)%256;
   a++;

    if(a == 1)
   {
     a=0;
     LED = ~LED;
 
     }
}

void delay (uint z)
{
 uint x,y;
 for(x=125;x>0;x--)
 for(y=z;y>0;y--);
 }

[此貼子已經(jīng)被作者于2010-10-21 21:24:43編輯過]

作者: wgglps    時間: 2010-10-26 18:18
你設置100ms閃一次,不就等于1s閃10次了嗎?
作者: a123    時間: 2010-10-28 11:51

首先非常感謝你噢——給我回復了。!

我按照你的提示寫了一個如下,可是運行失敗,您可否幫我寫一個程序呢?

 

 

#include  <reg52.h>

#define uchar unsigned char
#define uint unsigned int
uchar a=0;
sbit LED=P0^0;
sbit P1_4=P1^4;
void delay(uint z);
void main()
{
   P1_4=0;
 a=0;
  TMOD = 0x01;
 TH0 = (65536-50000)/256;//50ms
 TL0 = (65536-50000)%256;
 EA = 1;
 ET0 = 1;
 TR0 = 1;
 while(1);
}

void Timer_0() interrupt 1
{
 TH0 = (65536-50000)/256;
 TL0 = (65536-50000)%256;
   a++;

    if(a == 2) //50ms*2=100ms,中斷一次
   {
     a=0;
     LED = ~LED;

    if(a==20)//1000ms 即1秒

           {

               a=0;

               TR0=0;

            }

   }
}

 

請問是這樣的嗎?if(a == 2)之后它還會再實現(xiàn)if(a==20)嗎?我感覺這個行不通!,我是新學者,還請多多賜教。

 

 

                          






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1