TOI KHONG HIEU SAO 2 CHÂN RD4 VÀ RD5 CỦA TÔI NÓ CỨ Ở MỨC THẤP.
CHO DÙ TÔI VIẾT CHƯƠNG TRÌNH KHÔNG PHẢI THẾ. TÔI ĐỌC ENCODER TỪ CHÂN T1CKI CỦA 18F4331 NHƯNG ĐỌC HOÀI KHÔNG ĐƯỢC .MỌI NGƯỜI GIÚP TÔI VỚI;
#include <18f4331.h>
#include <def_4331.h>
#fuses HS
#FUSES NOWDT
#FUSES NOPROTECT
#FUSES NOLVP
/*#FUSES NOBROWNOUT
#FUSES NOPUT
#FUSES NOCPD
#FUSES NODEBUG
#FUSES NOFCMEN
#FUSES NOCPB
#FUSES HPOL_LOW
#FUSES NOPWMPIN
#FUSES STVREN
*/
#use delay(clock=20000000)
#use fast_io(b)
#use fast_io(c)
#use fast_io(a)
#use fast_io(d)
#use fast_io(e)
#INT_TIMER1
VOID NGAT_TIMER1()
{
}
#zero_ram
VOID MAIN()
{
INT16 A;
TRISC0=1;
TRISD5=0;
TRISD4=0;
// DOC ENCODER TU CHAN T1CKI
// enable_interrupts(INT_TIMER1 );
// enable_interrupts(GLOBAL );
//SETUP_TIMER_1(T1_INTERNAL); //DUNG CHE DO TIMER
// setup_timer_1(T1_DISABLED);// che do 16 bit
//setup_timer_1(T1_EXTERNAL);// CHE DO COUTER
//setup_timer_1(T1_EXTERNAL_SYNC);//timer dong bo xung vao tu T1CKI
// setup_timer_1(T1_DIV_BY_1); // dung bo chia 1-1;
//setup_timer_1(T1_CLK_OUT);
setup_timer_1(T1_EXTERNAL|T1_DIV_BY_1|T1_CLK_OUT);
WHILE(true)
{
set_timer1(0);
delay_ms(1000);
IF(GET_TIMER1()<2000) RD4=0;
ELSE RD5=0;
}
}
CHO DÙ TÔI VIẾT CHƯƠNG TRÌNH KHÔNG PHẢI THẾ. TÔI ĐỌC ENCODER TỪ CHÂN T1CKI CỦA 18F4331 NHƯNG ĐỌC HOÀI KHÔNG ĐƯỢC .MỌI NGƯỜI GIÚP TÔI VỚI;
#include <18f4331.h>
#include <def_4331.h>
#fuses HS
#FUSES NOWDT
#FUSES NOPROTECT
#FUSES NOLVP
/*#FUSES NOBROWNOUT
#FUSES NOPUT
#FUSES NOCPD
#FUSES NODEBUG
#FUSES NOFCMEN
#FUSES NOCPB
#FUSES HPOL_LOW
#FUSES NOPWMPIN
#FUSES STVREN
*/
#use delay(clock=20000000)
#use fast_io(b)
#use fast_io(c)
#use fast_io(a)
#use fast_io(d)
#use fast_io(e)
#INT_TIMER1
VOID NGAT_TIMER1()
{
}
#zero_ram
VOID MAIN()
{
INT16 A;
TRISC0=1;
TRISD5=0;
TRISD4=0;
// DOC ENCODER TU CHAN T1CKI
// enable_interrupts(INT_TIMER1 );
// enable_interrupts(GLOBAL );
//SETUP_TIMER_1(T1_INTERNAL); //DUNG CHE DO TIMER
// setup_timer_1(T1_DISABLED);// che do 16 bit
//setup_timer_1(T1_EXTERNAL);// CHE DO COUTER
//setup_timer_1(T1_EXTERNAL_SYNC);//timer dong bo xung vao tu T1CKI
// setup_timer_1(T1_DIV_BY_1); // dung bo chia 1-1;
//setup_timer_1(T1_CLK_OUT);
setup_timer_1(T1_EXTERNAL|T1_DIV_BY_1|T1_CLK_OUT);
WHILE(true)
{
set_timer1(0);
delay_ms(1000);
IF(GET_TIMER1()<2000) RD4=0;
ELSE RD5=0;
}
}
Comment