Ðăng Nhập

View Full Version : GiÚp ĐỆ code nÀy vỚi. MỆt quÁ!!!!!!


robotpic
10-10-2010, 03:49 PM
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;

}
}

Nếu lần sau post code ko nằm trong thẻ [code], bài của bạn sẽ bị xóa

hcmut.khoamaisi
11-10-2010, 11:00 AM
Thay các lệnh TRISX bằng set_tris_x() thử xem

robotpic
11-10-2010, 09:29 PM
cũng không được bạn ah.
lệnh đó thì đúng đó bạn