您当前的位置:五五电子网电子知识单片机-工控设备PIC单片机16F876控制电动自行车驱动源程序 正文
16F876控制电动自行车驱动源程序

16F876控制电动自行车驱动源程序

点击数:7917 次   录入时间:03-04 11:50:53   整理:http://www.55dianzi.com   PIC单片机
       MOV F   ADRESL,0
      BCF      STATUS,RP0
       MOV WF   ACCbLO
       MOV LW   VOLONH         ;35V电压值送被加数
       MOV WF   ACCaHI
       MOV LW   VOLONL
       MOV WF   ACCaLO
      CALL   D_sub         ;当前电压值减35,与重开电压进行比较
       MOV LW   FULLPWM
       MOV WF   CCPR1L
      CLRWDT
      BTFSC   ACCbHI,7      ;当前电压值大于35?
      GOTO   POWER6         ;否,重新采样
      BSF      FLAG1,OFF      ;是,置相应的标志位
      RETURN               ;返回
;***电机转子位置采样子程序,状态采样子程序,出口地址:STATE1***
SAMPLE    MOV LW   AND            ;读RB口
      ANDWF   PORTB,0         ;分离出有效信息
       MOV WF   STATE1         ;暂存状态值
       MOV LW   0X08
       MOV WF   DELAY
DEL1      DECFSZ   DELAY         ;延时6 μs         
      GOTO   DEL1
       MOV LW   AND            ;读RB口
      ANDWF   PORTB,0         ;分离出有效信息,并暂存
       MOV WF   STATE2
      XORWF   STATE1,0         ;与上一次状态值相异或
      BTFSC   STATUS,Z
      RETURN               ;两个状态值相等则返回
       MOV LW   0X06            ;否则延时4 μs
       MOV WF   DELAY
DEL2      DECFSZ   DELAY
      GOTO   DEL2
       MOV LW   AND            ;读RB口
      ANDWF   PORTB,0         ;提取有效信息并暂存
       MOV WF   STATE3
      XORWF   STATE1,0         ;与第一次状态相同吗?
      BTFSC   STATUS,Z
      RETURN               ;相同则返回
       MOV F   STATE2,0         ;否则再与第二次状态相比较
      XORWF   STATE3,0
      BTFSS   STATUS,Z      
      GOTO   SAMPLE         ;三次状态均不相同则重新采样
       MOV F   STATE2,0         ;第三次状态与第二次相同,则将正确状态赋予STATE1并
       MOV WF   STATE1         ;返回
      RETURN
;************** MOSFET触发信号输出子程序**************
OUTPUT   SWAPF   STATE1,1         ;STATE1寄存器高低半字节互换
      BCF      STATUS,C      ;清C位,并将STATE1寄存器左移一位
      RRF      STATE1,0         ;将采样所得结果放至W低三位
      CALL   OUT_TABLE      ;查表获得输出值
       MOV WF   PORTC         ;将输出值输出至RC口
      RETURN
;*************** RB口电平变化中断服务程序**************
SAMPRB      CALL   PUSH      ;现场保护 
      BCF      STATUS,RP0
      CALL   SAMPLE         ;采样RB口状态
      CALL   OUTPUT         ;根据RB口状态触发相应的MOSFET
      CALL   POP            ;恢复现场
      BCF      INTCON,RBIF      ;清RB口电平变化中断标志
      RETFIE               ;中断返回
;************ AD采样中断服务程序***************
AD      CALL   PUSH         ;保护现场
      BTFSC   FLAG1,VOLTAGE   ;是电压采样?
      GOTO   SET_VOL         ;是,作相应的处理
SET_TS   BCF      ADCON0,CHS0   ;AD采样值是TS,则选择1采样通道
      INCF      COUNT_VOL      ;电压采样周期寄存器值加1
      BTFSS   STATUS,Z      ;电压采样周期到?

上一页  [1] [2] [3] [4] [5] [6]  下一页


本文关键字:电动自行车  源程序  PIC单片机单片机-工控设备 - PIC单片机

上一篇:PS7219的PIC单片机