您当前的位置:五五电子网电子知识单片机-工控设备松翰单片机电磁炉程序(SN8P1706芯片的)(sonix) 正文
电磁炉程序(SN8P1706芯片的)(sonix)

电磁炉程序(SN8P1706芯片的)(sonix)

点击数:7807 次   录入时间:03-04 11:49:30   整理:http://www.55dianzi.com   松翰单片机
 b0 MOV  a,ADB
 b0 MOV  VoltageH,a
 b0 MOV  a,ADR
 and a,#00001111b
 b0 MOV  VoltageL,a
 swap VoltageH 
 and a,#11110000b
 or VoltageL,a
 swapm VoltageH
  MOV  a,#00001111b
 and VoltageH,a
 ret  
;*********************
SystemTimerEnd:
 b0bclr F4mS
 incms TimerBuz
 nop
 incms Timer
 nop
 b0bclr Flash
 b0 MOV  a,Timer
 sub a,#125
 b0bts1 FC
 jmp SystemTimerEnd01
 b0bset Flash
 b0 MOV  a,Timer
 sub a,#250
 b0bts1 FC
 jmp SystemTimerEnd01
 clr Timer
 b0bts1 FanActive
 jmp $+5
 decms FanTime
 jmp $+3
 b0bclr FanActive
 b0bclr Fan
 
 b0bts1 Timering
 jmp SystemTimerEnd01
 incms Second
 nop
 b0 MOV  a,Second
 sub a,#60
 b0bts1 FC
 jmp SystemTimerEnd01
 clr Second
 decms Minute
 nop
SystemTimerEnd01: 
 incms TestTemperatureTime
 nop
 b0 MOV  a,TestTemperatureTime
 sub a,#125
 b0bts1 FC
 jmp $+3
 clr TestTemperatureTime
 b0bset TestTemperatureEnable 
 
 incms TestCurrentTime
 nop
  MOV  a,TestCurrentTime
 sub a,#10
 b0bts1 FC
 jmp $+3
 clr TestCurrentTime
 b0bset TestCurrentEnable

 incms KeySCANTime
 nop
  MOV  a,KeyScanTime
 sub a,#10
 b0bts1 FC
 jmp $+3
 clr KeyScanTime
 b0bset KeyScanEnable
DisplayScan:
 clr P2
 call TimeDisplay  
 incms commbuffer
 nop
 b0 MOV  a,commbuffer
 sub a,#0x05
 b0bts1 FC
 jmp DisplayScan01
 clr commbuffer
; clr keyactivebuffer
DisplayScan01:
 b0 MOV  a,commbuffer
 cmprs a,#1
 jmp $+2
 jmp DisplayScan03
 cmprs a,#2
 jmp $+2
 jmp DisplayScan04
 cmprs a,#3
 jmp $+2
 jmp DisplayScan05
 cmprs a,#4
 jmp $+2
 jmp DisplayScan06
DisplayScan02: 
 b0bset COM0
 b0 MOV  a,data0
 jmp DisplayScanEnd
DisplayScan03:
 b0bset COM1
 b0 MOV  a,data1
 jmp DisplayScanEnd
DisplayScan04:
 b0bset COM2
 b0 MOV  a,data2
 jmp DisplayScanEnd
DisplayScan05:  
 b0bset COM3
 b0 MOV  a,data3
 jmp DisplayScanEnd 
DisplayScan06:  
 b0bset COM4
 b0bts0 On
 jmp DisplayScan07
 b0bclr DisplayOnOff
 b0bts0 Flash
 b0bset DisplayOnOff
DisplayScan07: 
 b0 MOV  a,data4
DisplayScanEnd:
 xor a,#0xff
 b0 MOV  displaybuffer,a
  MOV  a,#10001111b
 and P4,a
  MOV  a,displaybuffer
 and a,#01110000b
 or P4,a
 b0bclr P5.0
 b0bts0 displaybuffer.0
 b0bset P5.0
 ret
;***************************
;interrput subroutine
;*********************
Interrupt:
 b0bset FWDRST
 push
 b0 MOV    aCCbuf,a
        b0bclr FGIE
               
        b0bts0 FT0IRQ
        jmp SystemTimer
        b0bts0 FP02IRQ
        jmp IntZero        
        b0bts0 FP01IRQ
        jmp IntTest        
        clr INTRQ
        jmp InterruptEnd
;*********************        
SystemTimer:    
 b0bclr FT0IRQ            
  MOV  a,#192  ;156 ;50uS
 b0 MOV  T0C,a
 incms Timer200uS
 nop
 b0 MOV  a,Timer200uS
 sub a,#125  ;64
 b0bts1 FC
 jmp SystemTimer01
 clr Timer200uS
 b0bset F4mS
SystemTimer01:
 b0 MOV  a,TimerDrv
 b0bts0 FZ
 jmp SystemTimer02
 decms TimerDrv
 nop
 jmp InterruptEnd
SystemTimer02: 
 b0bts1 Fdrv
 jmp SystemTimer03
 b0bclr Fdrv
 b0 MOV  a,TimerDrvH
 b0 MOV  TimerDrv,a
 b0bset DRV
 jmp InterruptEnd
SystemTimer03:
 b0bclr DRV
InterruptEnd:        
        b0 MOV    a,accbuf
        pop
 reti
;**********************************
IntTest:
 b0bclr FP01IRQ
 clr TestTime
 jmp InterruptEnd
;**********************************
IntZero:
 b0bclr FP02IRQ
 b0bclr DRV
 b0bset Fdrv
  MOV  a,#0xff
 sub a,TimerDrvH
 b0 MOV  TimerDrv,a
 jmp InterruptEnd
;\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
;***************
KeyScan:
 b0 MOV  a,P1
 xor a,#0xff
 b0 MOV  buffer,a
 rrcm buffer
 rrcm buffer
 b0 MOV  a,buffer
 and a,#00001111b
 b0 MOV  keybuffer,a
 b0 MOV  buffer,a
 clr keycounter2
  MOV  a,#4
 b0 MOV  keycounter1,a
KeyScan01: 
 rrcm buffer
 b0bts0 FC
 incms keycounter2
 decms keycounter1
 jmp KeyScan01
 
 b0bclr KeyActive
  MOV  a,keycounter2
 b0bts0 FZ
 jmp KeyScan02
 cmprs a,#1
 ret
 b0 MOV  a,keybuffer
 cmprs a,keyactivebuffer
 jmp $+2
 ret
 b0bset KeyActive
 b0 MOV  a,keybuffer
 b0 MOV  keyactivebuffer,a
 ret
KeyScan02:
 clr keyactivebuffer
 clr keybuffer
 ret 
;*****************
DataVerify:
 clr Y
 b0 MOV  Z,#0x0e
  MOV  a,#0x00
DataVerify01: 
 add a,@YZ

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


本文关键字:程序  电磁炉  松翰单片机单片机-工控设备 - 松翰单片机

《电磁炉程序(SN8P1706芯片的)(sonix)》相关文章>>>