سلام دوستان ، این برنامه رو از یکی از رفقا گرفتم چند خطی بیشتر نیست چون با pwm کار نکردم اگه کمک کنید توضیح بدید مممنون میشم.
$regfile = "m8def.dat"
$crystal = 1000000
Config Timer2 = Pwm , Prescale = 1 , Pwm = On , Compare Pwm = Clear Up
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 1
Enable Timer1
Enable Timer2
Enable Oc1a
Enable Oc2
Enable Oc1b
Config Portb.2 = Output
Dim A As Byte
Dim B As Byte
Do
Pwm1a = 0
Pwm1b = 0
Ocr2 = 0
For A = 0 To 255
B = 255 - A
Pwm1a = B
Pwm1b = A
Waitms 50
Next A
Pwm1a = 0
Pwm1b = 0
Ocr2 = 0
For A = 0 To 255
B = 255 - A
Pwm1b = B
Ocr2 = A
Waitms 50
Next A
Pwm1a = 0
Pwm1b = 0
Ocr2 = 0
For A = 0 To 255
B = 255 - A
Ocr2 = B
Pwm1a = A
Waitms 50
Next A
Loop
End 'end program
$regfile = "m8def.dat"
$crystal = 1000000
Config Timer2 = Pwm , Prescale = 1 , Pwm = On , Compare Pwm = Clear Up
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 1
Enable Timer1
Enable Timer2
Enable Oc1a
Enable Oc2
Enable Oc1b
Config Portb.2 = Output
Dim A As Byte
Dim B As Byte
Do
Pwm1a = 0
Pwm1b = 0
Ocr2 = 0
For A = 0 To 255
B = 255 - A
Pwm1a = B
Pwm1b = A
Waitms 50
Next A
Pwm1a = 0
Pwm1b = 0
Ocr2 = 0
For A = 0 To 255
B = 255 - A
Pwm1b = B
Ocr2 = A
Waitms 50
Next A
Pwm1a = 0
Pwm1b = 0
Ocr2 = 0
For A = 0 To 255
B = 255 - A
Ocr2 = B
Pwm1a = A
Waitms 50
Next A
Loop
End 'end program
دیدگاه