Trích:
Nguyên văn bởi fdv
chuong trình khi mình viết 1 cổng input thì chạy được ,còn viết input cho nhiều cổng thì lại chỉ chạy được 1 input đầu tiên thôi,chương trình mình viết như thế này mong các bạn xem giúp mình
#include<16F877A.h>
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=10000000)
void main(){
while(true){
IF (input(pin_a0)) output_low(pin_b0);
else output_high(pin_b0);
IF (input(pin_a1)) output_low(pin_b1);
else output_high(pin_b1);
}}
chương trình trên khi mình nạp thì chỉ chạy được input pina0 à
không biết sao nữa,mong các bạn sửa giúp mình
cám ơn
|
Để khẳng định nhận xét trên của bạn, bạn hãy thử viết code cho 1 input và 1 output, nhưng dùng RA1 thay vì RA0, xem PIC chạy ra sao.
Tôi cho rằng cần xác định thêm trạng thái cho các thanh ghi như ADCON1, TRISA, và TRISB nữa. Tôi không bao giờ viết code mập mờ như vậy, vì tôi không rõ CCS C có xác định trạng thái cho các thanh ghi đó hay không.
Thân,