دوستان سلام
من تو مباحث برنامه نویسی تازه کارم
این برنامه رو نوشتم منتهی نمیدونم چرا درست کار نمیکنه...
این برنامه قراره با یه جوی استیک دو موتور رو کنترل کنه که چپ گرد و راست گرد هم داره
ممنون میشم اشکال کار رو بهم بگین کجاست...؟
من تو مباحث برنامه نویسی تازه کارم
این برنامه رو نوشتم منتهی نمیدونم چرا درست کار نمیکنه...
این برنامه قراره با یه جوی استیک دو موتور رو کنترل کنه که چپ گرد و راست گرد هم داره
ممنون میشم اشکال کار رو بهم بگین کجاست...؟
$regfile = "m8def.dat "
$crystal = 8000000
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 8
Config Adc = Single , Prescaler = Auto
Config Portc = Input
Config Portb = Output
Dim A As Word
Dim B As Word
Start Adc
Do
A = Getadc(0)
B = Getadc(1)
'MOTOR1'
If A <= 110 Then
Pinb.1 = 1
Pinb.2 = 0
A = 110 - A
Pwm1a = A
Waitms 50
End If
If A => 150 Then
Pinb.1 = 0
Pinb.2 = 1
A = A - 150
Pwm1a = A
Waitms 50
End If
'MOTOR2'
If B <= 110 Then
Pinb.3 = 1
Pinb.6 = 0
B = 110 - B
Pwm1a = B
Waitms 50
End If
If B => 150 Then
Pinb.3 = 0
Pinb.6 = 1
B = B - 150
Pwm1a = B
Waitms 50
End If
Loop
End 'end program
$crystal = 8000000
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 8
Config Adc = Single , Prescaler = Auto
Config Portc = Input
Config Portb = Output
Dim A As Word
Dim B As Word
Start Adc
Do
A = Getadc(0)
B = Getadc(1)
'MOTOR1'
If A <= 110 Then
Pinb.1 = 1
Pinb.2 = 0
A = 110 - A
Pwm1a = A
Waitms 50
End If
If A => 150 Then
Pinb.1 = 0
Pinb.2 = 1
A = A - 150
Pwm1a = A
Waitms 50
End If
'MOTOR2'
If B <= 110 Then
Pinb.3 = 1
Pinb.6 = 0
B = 110 - B
Pwm1a = B
Waitms 50
End If
If B => 150 Then
Pinb.3 = 0
Pinb.6 = 1
B = B - 150
Pwm1a = B
Waitms 50
End If
Loop
End 'end program
دیدگاه