;============================================
; filename: elecsmoke.asm
; chip : CSU8RP3115
; author :
; date : 2014-02-27
;芯海科技
;1K×14位程序存储器
;5+3路12bitADC
;64字节RAM
;5个双向IO口和1个输入口
;
;代码选项
;内部晶振4M
;指令周期=16时钟周期=16/0.25(us)=64个振荡周期=64us
;
;============================================
include CSU8RP3115.inc
;变量定义
STARTSTA EQU 2 ;初始上电
SMOKESTA EQU 4 ;吸烟状态
OVERTSTA EQU 6 ;吸烟超时
SHORTSTA EQU 8 ;短路状态
CHARGSTA EQU 10 ;充电状态
LOCKSTA EQU 12 ;锁定状态
STAYSTA EQU 14 ;待机状态
SLEEPSTA EQU 16 ;睡眠状态
TM3IF EQU 4
TM3IE EQU 4
SYSSTATE EQU 0X40 ;系统状态
LEDCOUNT EQU 0X41 ;LED闪烁计数
KEYCOUNT EQU 0X42 ;键盘按键计数
TIMETICKS EQU 0X43 ;定时时间
VARH EQU 0X44 ;临时变量高位,用于乘法和除法的计算
VARL EQU 0X45 ;临时变量低位,用于乘法和除法的计算
TEMPVARL EQU 0X46 ;临时变量
TEMPVARH EQU 0X47 ;临时变量
TEMPVAR1 EQU 0X48 ;临时变量
TEMPVAR2 EQU 0X49 ;临时变量
;----------指令扩展
MOVLF MACRO F,L ;实现立即数到数据存储的赋值
MOVLW L
MOVWF F
ENDM
MOVFF MACRO F1,F2 ;实现寄存器到寄存器的赋值
MOVLW F1
MOVWF F2
ENDM