View Single Post
Old 26-01-2010, 01:41 PM   #1
tuongdtd
Đệ tử 2 túi
 
tuongdtd's Avatar
 
Tham gia ngày: Nov 2009
Bài gửi: 27
:
PWM _cần giúp đỡ

Chào các bác em đang gặp vấn đề cần giúp đỡ với module MCPWM của dsPIC30F4011.
em lập trình như sau: (thạch anh 16MHz)

_FOSC(CSW_FSCM_OFF & FRC_PLL4); //
_FWDT(WDT_OFF);
_FBORPOR(MCLR_EN & PBOR_OFF & PWMxL_ACT_HI & PWMxH_ACT_HI);
_FGS(CODE_PROT_OFF);

chương trình con cho module MCPWM
//---------------------------------------------
void INT_MCPWM(void)
{
unsigned int config1, config2, config3;
unsigned int period, sptime;


period = 399;

sptime = 0;

config1 = PWM_EN &
PWM_IDLE_STOP&
PWM_OP_SCALE1&
PWM_IPCLK_SCALE1&
PWM_MOD_FREE;

config2 = PWM_MOD1_IND&
PWM_MOD2_IND&
PWM_MOD3_IND&
PWM_PDIS1H&
PWM_PDIS2H&
PWM_PDIS3H&
PWM_PEN1L&
PWM_PDIS2L&
PWM_PDIS3L ;

config3 = PWM_SEVOPS16&
PWM_OSYNC_TCY&
PWM_UEN;

OpenMCPWM(period, sptime, config1, config2, config3);

PDC1=0;
}
------------------------------------------
như vậy nếu thạch anh 16MHz Fpwm = 40000Hz thì period = 399;
khi đó đặt PDC1 = 799 thì PWM là 100%. nhưng kết quả em đo được tín hiệu ra lai không đạt 100%.
em lấy tín hiêu ra PWM1 đưa vào chân LIN (HIN luôn được nối 0V) của IR2103 thi đầu ra LO vẫn thấy có điện áp.
Các bác giành chút thời gian giúp em nhé!
tuongdtd vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn