📄 ram.inc
字号:
;;********************************************************************
;;*********************Valiable Section*******************************
;;********************************************************************
DATA. SECTION AT 20H 'DATA'
R_ACCUSB DB ?
R_ACCTimer DB ?
R_StatusUSB DB ?
R_StatusTimer DB ?
R_MP0USB DB ?
R_MP0Timer DB ?
R_MP1USB DB ?
R_TBLPBAK DB ?
R_TBLPFIFO DB ?
R_Temp1 DB ?
R_Temp2 DB ?
R_DeviceAddress DB ?
R_EndpointNO DB ?
R_Receiver DB ?
R_STALL DB ?
R_ReportIndex DB ?
R_DataLengthL DB ?
R_DataLengthH DB ?
R_DescriptorLength DB ?
R_DataPacketLength DB ?
R_FIFOBAK0 DB ?
R_FIFOBAK1 DB ?
R_FIFOBAK2 DB ?
R_FIFOBAK3 DB ?
R_FIFOBAK4 DB ?
R_FIFOBAK5 DB ?
R_FIFOBAK6 DB ?
R_FIFOBAK7 DB ?
R_FIFOAddress DB ?
R_IdleTime DB ?
R_inputReportSize DB ?
R_InputReportDataSize DB ?
;R_TrDataBits DB ? ;;HT82M99E transmit to RS232 device data.
R_ReDataBits DB ?
;R_TransmitData DB ? ;;RS232 device transmit to HT82M99E data.
R_ReceiveData DB ?
R_ReBaudRateL DB ?
R_ReBaudRateH DB ?
R_ReBufferAddress DB ?
R_TrBufferAddress DB ?
R_ReceiveBuffer DB 32 DUP(?) ;;HT82M99E receiver data from rs232 device buffer.
R_Flag0 DB ?
F_AddressStatus EQU R_Flag0.0
F_ConfigurationStatus EQU R_FLAG0.1
F_ControlEvent EQU R_FLAG0.2
F_SetupData EQU R_FLAG0.3
F_SendData EQU R_FLAG0.4
F_RemoteWakeup EQU R_FLAG0.5
F_RdHighTable EQU R_FLAG0.6 ;;If F_RdHighTable is 1 then indicated read high byte of table. If F_RdHighTable is 0 then indicated read low byte of table.
F_BufferFull EQU R_FLAG0.7
R_FLAG1 DB ?
F_SendContinue EQU R_FLAG1.0
F_DataUpdate EQU R_FLAG1.1
F_ReportProtocol EQU R_FLAG1.2
F_TimerInterruptEnable EQU R_FLAG1.3
F_Polling EQU R_FLAG1.4
F_Maximize equ R_FLAG1.5
;F_KeyCode EQU R_Flag1.5
F_LastFrame EQU R_Flag1.6
F_level EQU R_Flag1.7
;;********************************************************************
;;*********************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_PS2mode EQU USR.4
F_USBmode EQU USR.5
F_USBClockOn EQU SCC.3
F_Suspend2 EQU SCC.4 ;;This bit is used for decreasing power consumption in suspend mode.(it is only used in 82K96E)
F_FsysClock EQU SCC.6
T_RequestType EQU R_FIFOBAK0
T_RequestNUM EQU R_FIFOBAK1
T_ValueL EQU R_FIFOBAK2
T_ValueH EQU R_FIFOBAK3
T_IndexL EQU R_FIFOBAK4
T_IndexH EQU R_FIFOBAK5
T_LengthL EQU R_FIFOBAK6
T_LengthH EQU R_FIFOBAK7
C_RequestType EQU 60H
C_FIFOSize EQU 08H
C_RamAddress EQU 20H ;;The start address of general data register is 20H
C_RamNumber EQU 60H ;;The number of general data register is 96
C_PollingL EQU 0e6h ;e8h
;C_PollingL EQU 0f6H ;;98H
C_PollingH EQU 0FFH
C_USBRegisterBank EQU 01H
C_Addr_Wakeup EQU 42H
C_STALL EQU 43H
C_SIES EQU 45H
C_MISC EQU 46H
C_FIFO0Address EQU 48H
C_FIFO1Address EQU 49H
C_InterfaceNO EQU 02H
C_LanguageIDL EQU 09H
C_LanguageIDH EQU 04H
C_DeviceDescriptorLength EQU 12H
C_ConfigurationDesLength EQU 22H
C_ReportDescriptorLength EQU 9ch ;3fH
C_HIDDescriptorLength EQU 09H
C_ReportType EQU 04H
C_SetReport EQU 01H
C_ReportSize EQU 08H
C_DataBits EQU 09H
C_ReceiveBufferSize EQU 1FH
recHbyte db ? ;5bit
recLbyte db ? ;7bit
r_delayvalue1 db ?
r_delayvalue2 db ?
r_delayvalue3 db ?
R_PreCodeNum db ?
R_KeyCodeNum db ?
R_KeyBuffer db ?
;EP1_times db ?
R_FrameNum db ?
R_KeyValue db ?
R_KeyValue1 db ?
R_KeyValue2 db ?
C_PreCode EQU 00011011B
C_Delay840usL EQU 013h ;028h
C_Delay840usH EQU 0fbh ;0f6h
;;*********************************************************************
M_PUSH MACRO
MOV R_ACCUSB,A
MOV A,STATUS
MOV R_StatusUSB,A
MOV A,MP0
MOV R_MP0USB,A
MOV A,MP1
MOV R_MP1USB,A
MOV A,TBLP
MOV R_TBLPBAK,A
ENDM
;;********************************************************************
M_POP MACRO
MOV A,R_StatusUSB
MOV STATUS,A
MOV A,R_MP0USB
MOV MP0,A
MOV A,R_MP1USB
MOV MP1,A
MOV A,R_TBLPBAK
MOV TBLP,A
MOV A,R_ACCUSB
ENDM
;;*********************************************************************
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -