⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 var.inc

📁 ht芯片通过IO口读写I2C芯片的汇编源代码
💻 INC
字号:
;var.inc
rtc_timer	equ	1
ALERT_ENABLE    EQU     1
    
    .NOLIST

    IFDEF   _VAR_ASM

    PUBLIC _lcd_index, k_temp, w_temp, ivar1, rtc
    PUBLIC  ms_timer,WDT_flag, cycle_time
    PUBLIC  addr, pw, pwTimer, timer,txled_time
    PUBLIC  uart_timer, g_flag1, meter_flag, g_flag2, g_kflag,key_flag
    PUBLIC  ptime, save_day, parameter, show_mask1, show_mask2, show_flag, kwh_100 
    PUBLIC  k0, k1,k2, k0p, k1p, k2p
    PUBLIC  cmd_err
    PUBLIC  status_temp, FSR_temp
    PUBLIC  _i2c_num, _i2c_daddr, _i2c_raddr, _i2c_rbuf
    PUBLIC  _i2c_count, _i2c_eeprom
    PUBLIC  _uart_num, _uart_checksum, _uart_buf, _uart_bufhead
    PUBLIC  _uart_txbuf, _uart_rxbuf, _uart_count, _uart_temp,_uart_temp2
    PUBLIC  _mem_buf, _mem_offset
    PUBLIC  pre_index,debug1, debug2,pw0,status_flag
    PUBLIC  kp_arr,k_arr,arr_timebuf,arr_timer,pwm_num,pwm_rxbuf,g_flag3
    ELSE    

    EXTERN  _lcd_index:byte, k_temp:byte, w_temp:byte, ivar1:byte, rtc:byte
    EXTERN  ms_timer:byte,WDT_flag:byte, cycle_time:byte
    EXTERN  addr:byte, pw:byte, pwTimer:byte, timer:byte,txled_time:byte
    EXTERN  uart_timer:byte, g_flag1:byte, meter_flag:byte, g_flag2:byte, g_kflag:byte,key_flag:byte,
    EXTERN  ptime:byte, save_day:byte, parameter:byte, show_mask1:byte, show_mask2:byte, show_flag:byte, kwh_100:byte
    EXTERN  k0:byte, k1:byte,k2:byte, k0p:byte, k1p:byte, k2p:byte
    EXTERN  cmd_err:byte
    EXTERN  status_temp:byte, FSR_temp:byte
    EXTERN  _i2c_num:byte, _i2c_daddr:byte, _i2c_raddr:byte, _i2c_rbuf:byte
    EXTERN  _i2c_count:byte, _i2c_eeprom:byte
    EXTERN  _uart_num:byte, _uart_checksum:byte, _uart_buf:byte, _uart_bufhead:byte
    EXTERN  _uart_txbuf:byte, _uart_rxbuf:byte, _uart_count:byte, _uart_temp:byte, _uart_temp2:byte
    EXTERN  _mem_buf:byte, _mem_offset:byte
    EXTERN  pre_index:byte, debug1:byte, debug2:byte,pw0:byte,status_flag:byte
    EXTERN  kp_arr:BYTE,k_arr:byte,arr_timebuf:byte,arr_timer:byte,pwm_num:byte,pwm_rxbuf:byte,g_flag3:byte

SET_BATT        EQU     SET status_flag.0
CLR_BATT	EQU	CLR status_flag.0
SET_BIAO	EQU	SET status_flag.1
CLR_BIAO	EQU	CLR status_flag.1
SET_TRAN	EQU	SET status_flag.2
CLR_TRAN	EQU	CLR status_flag.2
SET_TIMECOP	EQU	SET status_flag.3
CLR_TIMECOP	EQU	CLR status_flag.3
 SS_TIMECOP	EQU	snz status_flag.3
 SC_TIMECOP	EQU	sz  status_flag.3
SET_ST_ARR	EQU	SET status_flag.4
CLR_ST_ARR	EQU	CLR status_flag.4
SET_PERIOD	EQU	SET status_flag.5
CLR_PERIOD	EQU	CLR status_flag.5
 SS_PERIOD	EQU	snz status_flag.5
 SC_PERIOD	EQU	sz  status_flag.5
STL_TARIF	EQU	6
STH_TARIF	EQU	7

tarif		equ	40h

TIMEINSCOPE     EQU     5
CLRRAMTIMES	EQU	2
SETTIME_PERIOD	EQU	25

;;2ms
TIMEHIGH        EQU     0f8h
TIMELOW         EQU     030h


TIME2H		EQU     0FCH
TIME2L		EQU     0CFH
TIME2H1		EQU	0FBH
TIME2L1		EQU     02EH

SECINDEX        EQU     00
MININDEX        EQU     01
HOURINDEX       EQU     02
DAYINDEX        EQU     03
MONINDEX        EQU     04
YEARINDEX       EQU     05

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;meter_flag
SET_PEEK_TARIF  EQU     set    meter_flag.7
CLR_PEEK_TARIF  EQU     clr    meter_flag.7
SS_PEEK_TARIF   EQU     snz    meter_flag.7
SC_PEEK_TARIF   EQU     sz     meter_flag.7

SET_VALE_TARIF  EQU     set    meter_flag.6
CLR_VALE_TARIF  EQU     clr    meter_flag.6
SS_VALE_TARIF   EQU     snz    meter_flag.6
SC_VALE_TARIF   EQU     sz     meter_flag.6

SET_VARFLAG     EQU     set    meter_flag.5
CLR_VARFLAG     EQU     clr    meter_flag.5
 SS_VARFLAG     EQU     snz    meter_flag.5
 SC_VARFLAG     EQU     sz     meter_flag.5

SET_ARR_YES     EQU     set     meter_flag.4
CLR_ARR_YES     EQU     clr     meter_flag.4
 SS_ARR_YES     EQU     snz     meter_flag.4
 SC_ARR_YES     EQU     sz      meter_flag.4


SET_ARR_LOW     EQU     set    meter_flag.3
CLR_ARR_LOW     EQU     clr    meter_flag.3
 SS_ARR_LOW     EQU     snz    meter_flag.3
 SC_ARR_LOW     EQU     sz     meter_flag.3

SET_UART_PACKAGE2  EQU     set    meter_flag.2
CLR_UART_PACKAGE2  EQU     clr    meter_flag.2
 SS_UART_PACKAGE2  EQU     snz    meter_flag.2
 SC_UART_PACKAGE2  EQU     sz     meter_flag.2
                 
SET_UART_PACKAGE   EQU     set    meter_flag.1
CLR_UART_PACKAGE   EQU     clr    meter_flag.1
 SS_UART_PACKAGE   EQU     snz    meter_flag.1
 SC_UART_PACKAGE   EQU     sz     meter_flag.1
                 
SET_LOWVOL_FLAG    EQU     set    meter_flag.0
CLR_LOWVOL_FLAG    EQU     clr    meter_flag.0
 SS_LOWVOL_FLAG    EQU     snz    meter_flag.0
 SC_LOWVOL_FLAG    EQU     sz     meter_flag.0


;g_flag1
 SET_UART_SEND   EQU     set    g_flag1.0
 CLR_UART_SEND   EQU     clr    g_flag1.0
  SS_UART_SEND   EQU     snz    g_flag1.0
  SC_UART_SEND   EQU     sz     g_flag1.0

 SET_UART_REC    EQU     set    g_flag1.1
 CLR_UART_REC    EQU     clr    g_flag1.1
  SS_UART_REC    EQU     snz    g_flag1.1
  SC_UART_REC    EQU     sz     g_flag1.1
                               
 SET_UART_STATE  EQU     set    g_flag1.2
 CLR_UART_STATE  EQU     clr    g_flag1.2
  SS_UART_STATE  EQU     snz    g_flag1.2
  SC_UART_STATE  EQU     sz     g_flag1.2
                               
 SET_RCLC_FLAG   EQU     set    g_flag1.3
 CLR_RCLC_FLAG   EQU     clr    g_flag1.3
  SS_RCLC_FLAG   EQU     snz    g_flag1.3
  SC_RCLC_FLAG   EQU     sz     g_flag1.3
                               
 SET_K_RES_FLAG  EQU     set    g_flag1.4
 CLR_K_RES_FLAG  EQU     clr    g_flag1.4
  SS_K_RES_FLAG  EQU     snz    g_flag1.4
  SC_K_RES_FLAG  EQU     sz     g_flag1.4
                               
 SET_METER_PULSE EQU     set    g_flag1.5
 CLR_METER_PULSE EQU     clr    g_flag1.5
  SS_METER_PULSE EQU     snz    g_flag1.5
  SC_METER_PULSE EQU     sz     g_flag1.5
                               
 SET_K_SAVE_FLAG EQU     set    g_flag1.6
 CLR_K_SAVE_FLAG EQU     clr    g_flag1.6
  SS_K_SAVE_FLAG EQU     snz    g_flag1.6
  SC_K_SAVE_FLAG EQU     sz     g_flag1.6

 SET_INTB_FLAG EQU     set    g_flag1.7
 CLR_INTB_FLAG EQU     clr    g_flag1.7
  SS_INTB_FLAG EQU     snz    g_flag1.7
  SC_INTB_FLAG EQU     sz     g_flag1.7

;g_flag2
SET_PULSE_H      EQU     set    g_flag2.0
CLR_PULSE_H      EQU     clr    g_flag2.0
 SS_PULSE_H      EQU     snz    g_flag2.0
 SC_PULSE_H      EQU     sz     g_flag2.0
                                 
SET_STARTED_FLAG EQU     set    g_flag2.1
CLR_STARTED_FLAG EQU     clr    g_flag2.1
 SS_STARTED_FLAG EQU     snz    g_flag2.1
 SC_STARTED_FLAG EQU     sz     g_flag2.1
                                 
SET_SUB_FLAG     EQU     set    g_flag2.3
CLR_SUB_FLAG     EQU     clr    g_flag2.3
 SS_SUB_FLAG     EQU     snz    g_flag2.3
 SC_SUB_FLAG     EQU     sz     g_flag2.3
                                 
SET_ARR_TIMEWRITE EQU     set    g_flag2.4
CLR_ARR_TIMEWRITE EQU     clr    g_flag2.4
 SS_ARR_TIMEWRITE EQU     snz    g_flag2.4
 SC_ARR_TIMEWRITE EQU     sz     g_flag2.4
                                 
SET_K_WRITE_FLAG EQU     set    g_flag2.5
CLR_K_WRITE_FLAG EQU     clr    g_flag2.5
 SS_K_WRITE_FLAG EQU     snz    g_flag2.5
 SC_K_WRITE_FLAG EQU     sz     g_flag2.5
                                 
SET_POINT_FLAG EQU       set    g_flag2.6
CLR_POINT_FLAG EQU       clr    g_flag2.6
 SS_POINT_FLAG EQU       snz    g_flag2.6
 SC_POINT_FLAG EQU       sz     g_flag2.6

SET_UARTIDLE_FLAG EQU     set    g_flag2.7
CLR_UARTIDLE_FLAG EQU     clr    g_flag2.7
 SS_UARTIDLE_FLAG EQU     snz    g_flag2.7
 SC_UARTIDLE_FLAG EQU     sz     g_flag2.7

;g_flag3
 SET_STARTBIT_FLAG EQU     set    g_flag3.0
 CLR_STARTBIT_FLAG EQU     clr    g_flag3.0
  SS_STARTBIT_FLAG EQU     snz    g_flag3.0
  SC_STARTBIT_FLAG EQU     sz     g_flag3.0

 SET_PWM_STATE     EQU     set    g_flag3.1
 CLR_PWM_STATE     EQU     clr    g_flag3.1
  SS_PWM_STATE     EQU     snz    g_flag3.1
  SC_PWM_STATE     EQU     sz     g_flag3.1

 SET_PWM_SEND      EQU     set    g_flag3.2
 CLR_PWM_SEND      EQU     clr    g_flag3.2
  SS_PWM_SEND      EQU     snz    g_flag3.2
  SC_PWM_SEND      EQU     sz     g_flag3.2

 SET_PWM_FLAG      EQU     set    g_flag3.3
 CLR_PWM_FLAG      EQU     clr    g_flag3.3
  SS_PWM_FLAG      EQU     snz    g_flag3.3
  SC_PWM_FLAG      EQU     sz     g_flag3.3

 SET_PWMINH_FLAG   EQU     set    g_flag3.4
 CLR_PWMINH_FLAG   EQU     clr    g_flag3.4
  SS_PWMINH_FLAG   EQU     snz    g_flag3.4
  SC_PWMINH_FLAG   EQU     sz     g_flag3.4


;g_kflag        
K0_FLAG         EQU     0
K1_FLAG         EQU     1
K2_FLAG         EQU     2

K0p_FLAG        EQU     4
K1p_FLAG        EQU     5
K2p_FLAG        EQU     6
KPARR_FLAG      EQU     7

KXP_MASK        EQU     70H
KX_MASK         EQU     07h

KXP_MASK1        EQU     0F0h   ;70H
KX_MASK1         EQU     0Fh    ;07h
;;;**************************************
;RA
JDQ1		EQU	3
JDQ2		EQU	4
FENG		EQU	5
PING		EQU	6
GU		EQU	7

 SET_JDQ1       EQU     set    pa.jdq1
 CLR_JDQ1       EQU     clr    pa.jdq1

 SET_JDQ2       EQU     set    pa.jdq2
 CLR_JDQ2       EQU     clr    pa.jdq2

 SET_FENG       EQU     set    pa.feng
 CLR_FENG       EQU     clr    pa.feng

 SET_PING       EQU     set    pa.ping
 CLR_PING       EQU     clr    pa.ping

 SET_GU         EQU     set    pa.gu
 CLR_GU         EQU     clr    pa.gu

;RB
IMPULSEIN       EQU     0
VHIGH           EQU     4
S1              EQU     6
DE_485          EQU     7
PWMIN		EQU	1

 SS_PWMIN	EQU	snz    pb.PWMIN
 SC_PWMIN	EQU	sz     pb.PWMIN	

 SS_IMPULSEIN   EQU     snz    pb.IMPULSEIN
 SC_IMPULSEIN   EQU     sz     pb.IMPULSEIN
                                    
 SS_VHIGH       EQU     snz    pb.VHIGH
 SC_VHIGH       EQU     sz     pb.VHIGH

 SS_S1          EQU     snz    pb.S1
 SC_S1          EQU     sz     pb.S1

 SET_DE_485     EQU     set    pb.DE_485
 CLR_DE_485     EQU     clr    pb.DE_485

;RC
PWM		EQU	0
SCL             EQU     6
SDA             EQU     7
ARR             EQU     4
PULSEOUT        EQU     5

 SET_PWM	EQU	set	pc.PWM
 CLR_PWM	EQU	clr	pc.PWM
 
 SS_ARR         EQU     snz    pc.arr
 SC_ARR         EQU     sz     pc.arr 


 SET_PULSEOUT   EQU     set    pc.PULSEOUT
 CLR_PULSEOUT   EQU     clr    pc.PULSEOUT
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;cmd_err
DATA_ERR        EQU     0
DI_ERR          EQU     3
PW_ERR          EQU     2
I2C_ERR         EQU     1


KEYCOUNTER_MASK EQU     3fh

_i2c_wbuf       EQU     _i2c_rbuf     
var1            EQU     k_temp
var2            EQU     k_temp[1]
var3            EQU     k_temp[2]
var4            EQU     k_temp[3]


    ENDIF

    .LIST
            

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -