Em cũng gặp vấn đề với PWM rất cần dc mọi người giúp đỡ. Em định dùng 1 biến trở để điều khiển lối ra độ rộng xung, ko hiểu chương trình bị sai ở đâu hay phải mô phỏng ntn? Mà em ko thấy có tín hiệu gì ở lối ra (chân 17 của PIC, tức RC2) nối vào dao động ký và trực tiếp vào 1 mô tơ, mô tơ ko thấy chạy cũng ko quan sát thấy gì trên dao động ký. Mọi người xem giúp em với, em cảm ơn trc!
Đây là chương trình của em:
#include <16f877.h>
#fuses HS,noPROTECT,noWDT,noPUT,noBROWNOUT,nolvp,nowrt
#use delay(clock=20000000)
main()
{
int8 value;
setup_port_a(ALL_ANALOG);
setup_adc(adc_clock_internal);
set_adc_channel( 0 );
setup_ccp1(CCP_PWM); // Configure CCP1 as a PWM
setup_timer_2(T2_DIV_BY_1, 255, 1);
while( TRUE ) {
value=read_adc();
set_pwm1_duty(value);
}
}
thay đổi nội dung bởi: chiene, 27-01-2010 lúc 12:11 AM.
|