PIC16F84產(chǎn)生兩組PWM輸出的實(shí)例源程序
bsf STATUS,RP0 ; ]wPWM1/PWM2}?塊?
bcf PORT_OUT,PIN_PWM1
bcf PORT_OUT,PIN_PWM2
bcf STATUS,RP0
bsf PORT_OUT,PIN_PWM1 ; w]PWM1/PWM2塊?藹q?
bsf PORT_OUT,PIN_PWM2
movlw FULL_WORK ; ]w?既?竟ぇw]?
movwf PWM_FULL
movlw DEF_WORK1
movwf PWM_WORK_CFG1
movwf PWM_WORK_CNT1
movlw DEF_WORK2
movwf PWM_WORK_CFG2
movwf PWM_WORK_CNT2
retlw 0
;**********************************************************************
;****************** ?lてp?竟 *******************************
;**********************************************************************
InitTimer
bsf STATUS,RP0
bsf OPTION_REG,T0CS ; 氨ゎ?歷竟?i塊?
bsf OPTION_REG,PSA ; ]wぃㄏノ?iw埃竟
bsf INTCON,GIE ; ゴ}?辦い_}閩(い_`}閩)
bcf INTCON,T0IF ; M埃p?竟い_X腹
bcf STATUS,RP0
retlw 0
;**********************************************************************
;****************** 幣笆p?竟 *******************************
;**********************************************************************
StartTimer
bsf STATUS,RP0
bcf OPTION_REG,T0CS ; ]w?歷竟?i塊?(1/4 osc)
bsf INTCON,T0IE ; ゴ}p?竟い_
bcf STATUS,RP0
retlw 0
;**********************************************************************
;****************** 氨ゎp?竟 *******************************
;**********************************************************************
StopTimer
bsf STATUS,RP0
bsf OPTION_REG,T0CS ; 氨ゎ?歷竟?i塊?
bcf INTCON,T0IE ; 閩?p?竟い_
bcf STATUS,RP0
retlw 0
;**********************************************************************
;****************** ?{Αi?I *******************************
;**********************************************************************
main
bcf STATUS,RP0 ; select Page 0 for Port Access
call InitPWM
call InitTimer
call StartTimer
goto $
;**********************************************************************
END ; directive 'end of program'本文引用地址:http://www.ex-cimer.com/article/150739.htm
pwm相關(guān)文章:pwm原理
評(píng)論