Đây là chương trình hào quang, mình đã test và chạy tốt. Nhưng mình vẫn ko hiểu rõ tác dụng của câu lệnh bit_set trong trường hợp này là gì, cả cái temp=0x00 nữa. Tương tự cho mình hỏi luôn về lệnh bit_clear. Thanks nhiều !
Code:
#include <16f877a.h>
#fuses HS,NOWDT
#use delay(clock=4000000)
#byte trisb=0x86
#byte portb=0x06
int i,j=9,b=0x00,a=8,temp=0x00;
main()
{
trisb=0x00;
portb=0xff;
temp=0x01;
while (1)
{
while (a>=1)
{
a=a-1;
for (i=0;i<=a;++i)
{
for (j=9;j>=a+1;j--) bit_set (temp,j);
portb=temp;
delay_ms(250);
temp<<=1;
}
temp=0x01;
}
a=8;
}
}