chào mọi người, mấy hôm nay, em làm xong mạch test rôi, Pickit2 cug chạy rồi, em cũng đang bắt đầu làm 18f4431 điều khiển động cơ đây,
code: power_pwm đây, nạp xong nó im re, các bác giúp e với,
==================================================
Code:
int16 duty1=2000;
int16 ref=0,out=0;
signed int16 udk=0, error=0;
void main()
{
setup_adc_ports( ALL_ANALOG );
setup_adc(ADC_CLOCK_INTERNAL );
delay_ms(1000);
setup_power_pwm_pins(PWM_OFF,PWM_OFF, PWM_OFF,PWM_OFF);
setup_power_pwm_pins(PWM_COMPLEMENTARY,PWM_COMPLEMENTARY, PWM_COMPLEMENTARY,PWM_COMPLEMENTARY);
setup_power_pwm(PWM_CLOCK_DIV_4|PWM_FREE_RUN|PWM_DEAD_CLOCK_DIV_4,1,10000,1000,0,1,10);
set_power_pwm0_duty(2000);
//set_power_pwm2_duty(2000);
while(1)
{
set_adc_channel(0);
delay_us(10);
ref=read_adc();
set_adc_channel(1);
delay_us(10);
out=read_adc();
error=ref-out;
udk=5*error;
if (udk>2000)
{
udk=2000;
}
if (udk<-2000)
{
udk=-2000;
}
duty1=2000+udk;
set_power_pwm0_duty(duty1);
}
}
======================================
anh nào giúp em với, còn đọc encoder nữa. em chưa viết được.
chân thành cảm ơn các huynh.