#include <16f877a.h>// Khai bao thu vien
#fuses PUT, HS, NOWDT, NOPROTECT, NOLVP// Cau hinh
#USE delay(clock=20000000)// Khai bao tan so thach anh
#use fast_io(b)// Su dung cong b de lap trinh
#define portb 0x06
int8 mode,i;
byte temp;
void program1(){
output_b(0);
delay_ms(500);
output_b(255);
delay_ms(500);
}
void program2(){
output_b(0);
delay_ms(500);
output_b(0x80);
delay_ms(500);
}
void program3(){
output_b(0);
delay_ms(500);
output_b(0xC0);
delay_ms(500);
}
void program4(){
output_b(0);
delay_ms(500);
output_b(0xE0);
delay_ms(500);
}
void program5(){
output_b(0);
delay_ms(500);
output_b(0xF0);
delay_ms(500);
}
void program6(){
output_b(0);
delay_ms(500);
output_b(0xF8);
delay_ms(500);
}
void program7(){
output_b(0);
delay_ms(500);
output_b(0xFC);
delay_ms(500);
}
void program8(){
output_b(0);
delay_ms(500);
output_b(0xFE);
delay_ms(500);
}
void program9(){
temp=0xFF;
for(i=0;i<=8;i++){
portb=temp;
delay_ms(500);
temp=temp>>1;
}
}
void main(){
set_tris_b(0);
while(1){
program1();
program2();
program3();
program4();
program5();
program6();
program7();
program8();
}
}
EM MỚI TẬP TÀNH TỰ HỌC PIC MONG AC GIÚP ĐỠ: báo lỗi ở câu lênh portb=temp, Chuơng trình con từ program1-program8 có thay = câu lênh nào ngắn hơn dc ko ạ., lệnh lặp 1 chương trình ví dụ như program1 lặp 5 lần rồi mới chuyển sang các program tiếp theo làm thế nào ạ ?
EM CẢM ƠN RẤT NHIỀU !
#fuses PUT, HS, NOWDT, NOPROTECT, NOLVP// Cau hinh
#USE delay(clock=20000000)// Khai bao tan so thach anh
#use fast_io(b)// Su dung cong b de lap trinh
#define portb 0x06
int8 mode,i;
byte temp;
void program1(){
output_b(0);
delay_ms(500);
output_b(255);
delay_ms(500);
}
void program2(){
output_b(0);
delay_ms(500);
output_b(0x80);
delay_ms(500);
}
void program3(){
output_b(0);
delay_ms(500);
output_b(0xC0);
delay_ms(500);
}
void program4(){
output_b(0);
delay_ms(500);
output_b(0xE0);
delay_ms(500);
}
void program5(){
output_b(0);
delay_ms(500);
output_b(0xF0);
delay_ms(500);
}
void program6(){
output_b(0);
delay_ms(500);
output_b(0xF8);
delay_ms(500);
}
void program7(){
output_b(0);
delay_ms(500);
output_b(0xFC);
delay_ms(500);
}
void program8(){
output_b(0);
delay_ms(500);
output_b(0xFE);
delay_ms(500);
}
void program9(){
temp=0xFF;
for(i=0;i<=8;i++){
portb=temp;
delay_ms(500);
temp=temp>>1;
}
}
void main(){
set_tris_b(0);
while(1){
program1();
program2();
program3();
program4();
program5();
program6();
program7();
program8();
}
}
EM MỚI TẬP TÀNH TỰ HỌC PIC MONG AC GIÚP ĐỠ: báo lỗi ở câu lênh portb=temp, Chuơng trình con từ program1-program8 có thay = câu lênh nào ngắn hơn dc ko ạ., lệnh lặp 1 chương trình ví dụ như program1 lặp 5 lần rồi mới chuyển sang các program tiếp theo làm thế nào ạ ?
EM CẢM ƠN RẤT NHIỀU !
Comment