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

📄 macro.h

📁 以&#1049307 &#1049319 &#1049287 &#1049289 &#1049317 &#1049301 &#1049288 &#1049283 为核心设计的&#1049320 &#1
💻 H
字号:
;;Established date:                  

;;********************************************************************
;;*********************Valiable Section*******************************
;;********************************************************************
DATA.     SECTION	'DATA'


include     Usb_Ram.asm




;;********************************************************************
;;*********************Constant Section*******************************
;;********************************************************************
@USB_Req			EQU	0H
@USB_Tx				EQU	1H
@Clear   			EQU 	2H
@SetupToken     		EQU	5H
@Ready 				EQU 	6H
@Packet0    			EQU 	7H
;;                      	
F_Suspend			EQU	USC.0
F_USBReset			EQU	USC.2		;;if the flag is 1 indicated USB device attached.
F_Resume			EQU	USC.3
;;                      	
F_AccessEP0			EQU	USR.0
F_AccessEP1			EQU	USR.1
;;                      	
F_USBClockOn			EQU	UCC.3
F_Suspend2			EQU	UCC.4		;;This bit is used for decreasing power consumption in suspend mode.(it is only used in 82K96E)
F_FsysClock			EQU	UCC.6
;;
;;P_RXD                        	EQU     PB2    
;;P_TXD                        	EQU     PB3   
;;P_RTS                        	EQU     PA0
;;
T_RequestType			EQU	M_FIFOBAK0
T_RequestNUM			EQU	M_FIFOBAK1
T_ValueL			EQU	M_FIFOBAK2
T_ValueH			EQU	M_FIFOBAK3
T_IndexL			EQU	M_FIFOBAK4
T_IndexH			EQU	M_FIFOBAK5
T_LengthL			EQU	M_FIFOBAK6
T_LengthH			EQU	M_FIFOBAK7
;;
C_RequestType			EQU	60H		;;setup common's Requeset Type
C_FIFOSize			EQU	08H		;;Max FIFO count in one packet
C_RamAddress			EQU	40H		;;The start address of general data register is 40H
C_RamNumber			EQU	0C0H		;;The number of general data register is 192
C_Addr_Wakeup			EQU 	23H                 
C_STALL				EQU 	24H   
C_SIES				EQU	25H              
C_MISC				EQU	26H
C_FIFO0Address			EQU	28H
C_FIFO1Address			EQU	29H
C_InterfaceNO			EQU	02H		;Interface Number=2
C_LanguageIDL			EQU	09H
C_LanguageIDH			EQU	04H
C_DeviceDescriptorLength	EQU	12H
C_ConfigurationDesLength	EQU	22H
C_ReportDescriptorLength	EQU	35H
C_HIDDescriptorLength		EQU	09H
C_ReportType			EQU	04H		;Report Type
C_SetReport			EQU	01H
C_ReportSize			EQU	08H
C_DataBits                   	EQU     09H                 
C_ReceiveBufferSize          	EQU     1FH                
;;for transmit delay time
C_TrBaudRate9600L            	EQU     68H
C_TrBaudRate9600H            	EQU     01H
C_ReBaudRate9600L            	EQU     0C7H
C_ReBaudRate9600H            	EQU     0FEH

C_INTC0				EQU	09H
C_INTC1				EQU	03H
C_ACSR				EQU	00H		;Fsys/8
C_ADCR				EQU	08H		;PB0->AD
C_TMR1L				EQU	0A0H
C_TMR1H				EQU	15H		;65536-12MHz*5ms
C_TMR1C				EQU	80H
C_TMR_MS			EQU	10		;5ms*50=250ms


INCLUDE      User_Ram.asm

;;*********************************************************************
M_PUSH	MACRO
	MOV	M_ACCBAK,A
	MOV	A,STATUS
	MOV  	M_STABAK,A
	MOV    	A,MP0
	MOV  	M_MP0BAK,A
	MOV  	A,MP1
	MOV	M_MP1BAK,A
	MOV  	A,TBLP
	MOV   	M_TBLPBAK,A
	ENDM



;;********************************************************************
M_POP		MACRO
	MOV 	A,M_STABAK
	MOV  	STATUS,A
	MOV   	A,M_MP0BAK
	MOV   	MP0,A
	MOV  	A,M_MP1BAK
	MOV  	MP1,A
	MOV 	A,M_TBLPBAK
	MOV 	TBLP,A
	MOV  	A,M_ACCBAK
	ENDM
;;*********************************************************************



 
select_chanel_0      MACRO
        CLR         ACS0
        CLR         ACS1
        CLR         ACS2
	ENDM
	

select_chanel_1      MACRO
        SET         ACS0
        CLR         ACS1
        CLR         ACS2
	ENDM


select_chanel_2      MACRO
        CLR         ACS0
        SET         ACS1
        CLR         ACS2
	ENDM


select_chanel_3      MACRO
        SET         ACS0
        SET         ACS1
        CLR         ACS2
	ENDM


select_chanel_4      MACRO
        CLR         ACS0
        CLR         ACS1
        SET         ACS2
	ENDM


select_chanel_5      MACRO
        SET         ACS0
        CLR         ACS1
        SET         ACS2
	ENDM







	

Adc_start       MACRO
	CLR	START
	SET	START           ;RESET  AD 
	CLR	START		;START AD
	ENDM






;---------------------------------------------
CH1_Charge1_On      MACRO
	CLR	PA.0
	ENDM


CH1_Charge1_OFF     MACRO
	set	PA.0
	ENDM


CH2_Charge2_On      MACRO
	CLR	PA.2
	ENDM


CH2_Charge2_OFF     MACRO
	set	PA.2
	ENDM
;---------------------------------------------




;  
;---------------------------------------------
CH1_DechargeOn    MACRO
	set	PA.1
	ENDM

CH1_DechargeOff    MACRO
	clr	PA.1
	ENDM



CH2_DechargeOn    MACRO
	set	PA.3
	ENDM

CH2_DechargeOff    MACRO
	clr	PA.3
	ENDM

;---------------------------------------------







;---------------------------------------------
CH1_PWM_ON       MACRO 
        SET     PD.0
	ENDM


CH1_PWM_OFF       MACRO 
        CLR      PD.0
        MOV      A,0
        MOV      PWM0,A           ;1
	ENDM


CH2_PWM_ON       MACRO 
        SET     PD.1
	ENDM


CH2_PWM_OFF       MACRO 
        CLR      PD.1
        MOV      A,0
        MOV      PWM1,A           ;1
	ENDM
;---------------------------------------------





	
	




;---------------------------------------------
LED_ON    MACRO
          CLR       PA.4
          ENDM
          

LED_OFF    MACRO
          SET       PA.4
          ENDM
;---------------------------------------------

	

⌨️ 快捷键说明

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