![]() |
|
Tài trợ cho PIC Vietnam |
PIC - Thiết kế và Ứng dụng Ý tưởng cho các sản phẩm sử dụng PIC/dsPIC và các sản phẩm của Microchip |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
|
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Apr 2011
Bài gửi: 2
: |
pic18fxx điều khiển động cơ!
mình đang làm đề tài trên pic18f4431 để điều khiển động cơ có bạn nào đã làm mảng này làm ơn chỉ mình với!
mình đã mày mò viết thử code nhưng ko biết có đúng ko? đây là lần đầu tiên mình tiếp cận pic nên mong các bạn chỉ giáo! thanks! các bạn tham khảo code nhe! #include<18f4431.h> #fuses HS,NOWDT,NOPROTECT,NOLVP,NOBROWNOUT,NODEBUG #use delay(clock=20000000) //#bit TBInt_pin = 0xfa4.4 FLOAT MODULATION_INDEX0,MODULATION_INDEX1; INT16 U_DK2_DUTY; INT8 adc,i = 0; Void GENERATE_PWM() { set_power_pwm0_duty(U_DK2_DUTY); } Void GENERATE_PWM1() { set_power_pwm2_duty(U_DK2_DUTY); } void adc_init() { setup_adc_ports(SAN0); setup_adc(adc_clock_internal); set_adc_channel(0); delay_ms(1000); } void pwm_init() { setup_power_pwm_pins(PWM_COMPLEMENTARY,PWM_COMPLEM ENTARY,PWM_OFF,PWM_OFF); setup_power_pwm(PWM_CLOCK_DIV_128|PWM_UP_DOWN|PWM_ DEAD_CLOCK_DIV_16,1,0,62,0,1,0); MODULATION_INDEX0 = 0; MODULATION_INDEX1 = 1; } void chedo() { i=0; while(i<80) { if(input(pin_C3)) { adc = read_adc(); output_low(pin_d2); output_high(pin_d3); // output_low(pin_d1); { if(i<25) { U_DK2_DUTY = adc*MODULATION_INDEX0; GENERATE_PWM(); i++; } if(25<=i<60) { U_DK2_DUTY = adc*MODULATION_INDEX1; GENERATE_PWM(); i++; } if(60<=i<80) { U_DK2_DUTY = adc*MODULATION_INDEX0; GENERATE_PWM(); i++; } // if(i == 80) {i == 0;} } } if (input(pin_C4)) { adc = read_adc(); // output_low(pin_d1); output_low(pin_d3); output_high(pin_d2); //{ if(i<25) { U_DK2_DUTY = adc*MODULATION_INDEX0; GENERATE_PWM1(); i++; } if(25<=i<60) { U_DK2_DUTY = adc*MODULATION_INDEX1; GENERATE_PWM1(); i++; } if(60<=i<80) { U_DK2_DUTY = adc*MODULATION_INDEX0; GENERATE_PWM1(); i++; } // if(i == 80) {i == 0;} } //if(i == 80) {i == 0;} }} void main() { GENERATE_PWM(); // SAN6==0; // SAN7==0; adc_init(); pwm_init(); while(true) chedo(); } |
![]() |
![]() |
![]() |
Ðiều Chỉnh | |
Xếp Bài | |
|
|