Dùng hoạt động bộ định thời time để delay.Nhưng ko biết sao chạy chương trình ko đo xung được.Mong mấy sư huynh chỉ với.
code:
#include <AT89X51.H>
void delay()
{
TMOD = 0x01;
TH0 = ((65536-25000)/256);
TL0 = ((65536-25000)%256);
TR0 = 1;
while(TF0==0)
{
; // cho co tran TF0 = 1
}
TF0 = 0;
TR0 = 0;
}
void main(void)
{
while(1)
{
P1 = 0x00;
delay();
P1 = 0xff;
delay();
}
}
ps: e dùng dao động ký nhưng ko đo được chu kỳ
code:
#include <AT89X51.H>
void delay()
{
TMOD = 0x01;
TH0 = ((65536-25000)/256);
TL0 = ((65536-25000)%256);
TR0 = 1;
while(TF0==0)
{
; // cho co tran TF0 = 1
}
TF0 = 0;
TR0 = 0;
}
void main(void)
{
while(1)
{
P1 = 0x00;
delay();
P1 = 0xff;
delay();
}
}
ps: e dùng dao động ký nhưng ko đo được chu kỳ
Comment