các anh chị cho e hỏi là e dung Pic 16f684 nhưng sao viết lệnh e sử dụng lệnh Delay_ms ....mà sao k có tác dụng vậy???cụ thể là khi thay đổi biến trở e muốn trễ 5s sau đó mới thay đổi giá trị ra led nhưng sao nó cứ thay đôi ngay luôn.hic.các anh xem lệnh rồi giúp e nhé.e cảm ơn
http://www.youtube.com/watch?v=CPptXWInNH4&feature=youtu.be
int8 adc;
set_adc_channel(0);
delay_us(10);
set_tris_c(0);
set_tris_a(0000001);
while(1){
ADC=READ_ADC();
if(adc<21){
output_c(0x06);
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<42){
output_c(0x00); //XUAT 0
Output_bit(pin_a2,1);
DELAY_MS(5000);
}
else if(adc<63){
output_c(0x39); //XUAT1
Output_bit(pin_a2,1);
DELAY_MS(5000);
}
else if(adc<84){
output_c(0x24); // xuat 2
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<105){
output_c(0x30); // xuat 3
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<127){
output_c(0x19); // xuat 4
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<148){
output_c(0x12); // xuat 5
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<169){
output_c(0x02); // xuat 6
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<190){
output_c(0xF8); // xuat 7
Output_bit(pin_a2,1);
DELAY_MS(5000);
}
else if(adc<211){
output_c(0x00); // xuat 8
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<232){
output_c(0x10); // xuat 9
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
ELSE {
output_c(0x0E); // xuat f
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
}
}
ghi chú: e đã khai báo đầy đủ #use delay ........ e cung đã thử đặt lệnh delay ngay sau lệnh while nhưng vẫn k dc hic
http://www.youtube.com/watch?v=CPptXWInNH4&feature=youtu.be
int8 adc;
set_adc_channel(0);
delay_us(10);
set_tris_c(0);
set_tris_a(0000001);
while(1){
ADC=READ_ADC();
if(adc<21){
output_c(0x06);
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<42){
output_c(0x00); //XUAT 0
Output_bit(pin_a2,1);
DELAY_MS(5000);
}
else if(adc<63){
output_c(0x39); //XUAT1
Output_bit(pin_a2,1);
DELAY_MS(5000);
}
else if(adc<84){
output_c(0x24); // xuat 2
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<105){
output_c(0x30); // xuat 3
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<127){
output_c(0x19); // xuat 4
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<148){
output_c(0x12); // xuat 5
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<169){
output_c(0x02); // xuat 6
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<190){
output_c(0xF8); // xuat 7
Output_bit(pin_a2,1);
DELAY_MS(5000);
}
else if(adc<211){
output_c(0x00); // xuat 8
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
else if(adc<232){
output_c(0x10); // xuat 9
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
ELSE {
output_c(0x0E); // xuat f
Output_bit(pin_a2,0);
DELAY_MS(5000);
}
}
}
ghi chú: e đã khai báo đầy đủ #use delay ........ e cung đã thử đặt lệnh delay ngay sau lệnh while nhưng vẫn k dc hic
Comment