Ðề tài: Chương trình sai
View Single Post
Old 07-10-2009, 03:05 PM   #1
JumboT
Đệ tử 1 túi
 
Tham gia ngày: Feb 2009
Bài gửi: 21
:
Chương trình sai

chào các bác !!! chương trình sau của em ko biết sai ở chỗ nào mà khi mô phỏng thì ko thể thay đổi độ rộng xung được.
ý em là khi vặn biến trở thì độ rộng xung cũng theo đó mà thay đổi. các phím dùng để thay đổi chiều của động cơ.
Code:
//chuong trinh:
...........
#define stop  RB1                
#define start RB2
#define left   RB3
#define right  RB4
int8 value;           //khai bao bien luu tru ket qua ADC
void quay_trai(){
      SET_PWM1_DUTY(0);
      DELAY_MS(100);
      value = read_adc();
      SET_PWM2_DUTY(VALUE);
 }
 void quay_phai(){
      set_pwm2_duty(0);
      DELAY_MS(100);
      value = read_adc();
      set_pwm1_duty(value);
}
void stop_DC(){
      set_pwm1_duty(0);
      set_pwm2_duty(0);
 }

//====================CHUONG TRINH CHINH========================//
void main(void)
{
//=================== KHOI TAO CHO ADC=========================//
   setup_adc(adc_clock_internal);      //chon xung xung clock cho bo ADC
   setup_adc_ports(sAN0|VSS_VDD);      //thiet lap cong AN0 la dau vao ADC
   set_adc_channel(0);                 //chon chan AN0 cho lenh doc ADC tiep
   delay_us(10);
   
//====================KHOI TAO CHO PWM=========================//

   setup_ccp1(CCP_PWM);                //cau hinh cho ccp1 lam dau ra PWM
   setup_ccp2(CCP_PWM);                //-------------ccp2---------------
   setup_timer_2(T2_DIV_BY_1,255,1);   //chon tan so dau ra cho bo PWM
   

   set_tris_B(0x1E);                   //thiet lap cac chan RB1-RB4 la input (00011110b = 1Eh)
   set_pwm1_duty(0);                   //tat dong co
   set_pwm2_duty(0);                   //-----------
   delay_ms(50);
START:
   while(1){                 
      IF(stop == 0){
         stop_DC();
         }
      ELSE IF(left == 0){
         quay_trai();
         }
      ELSE IF(right==0){
         quay_phai();
         }
   }
}
Em có gửi cả sơ đồ nguyên lý bên dưới:
http://www.mediafire.com/?sharekey=0...4e75f6e8ebb871
mong các bác chỉ giùm

thay đổi nội dung bởi: phamminhtuan, 09-10-2009 lúc 09:36 AM. Lý do: định dạng code
JumboT vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn