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

📄 p08008-1.asm

📁 IPOD通讯控制程序,采用ETA的MCU,对IPOD进行控制
💻 ASM
📖 第 1 页 / 共 5 页
字号:
					TM				STATUS_MARK.#3
					BR				!KEY_SCAN_3A
;					LDM				STATUS_MARK,#1000B	;TURN ON
					SET1			STATUS_MARK.#3		;12月22日,要求该关机保留EQ
					CLR1			STATUS_MARK.#2
					CLR1			STATUS_MARK.#0
					LDM				SRSAI_ACTION,#1
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
					RET
KEY_SCAN_3A:
;					LDM				STATUS_MARK,#0000B	;TURN OFF
					CLR1			STATUS_MARK.#3		;12月22日,要求该关机保留EQ
					CLR1			STATUS_MARK.#2
					CLR1			STATUS_MARK.#0
					LDM				SRSAI_ACTION,#2
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
					;;;;;;;;;;
					RET
KEY_SCAN_4:
					TM				STATUS_MARK.#3		;如果关机情况下,后面数据不用处理
					BR				!KEY_SCAN_4A
					RET
KEY_SCAN_4A:
					TM				KEY_STATUS.#1
					BR				!KEY_SCAN_OUT
					;;;;;;;;;;
					CMNE				CHANNEL_MARK,#0001B
					BR				!KEY_SCAN_4B
					LDM				CHANNEL_MARK,#1000B
					BR				!KEY_SCAN_4C
KEY_SCAN_4B:
					CLRC
					LDA				CHANNEL_MARK
					ARRC
					LDM				CHANNEL_MARK,A
KEY_SCAN_4C:
					TM				STATUS_MARK.#2
					BR				!KEY_SCAN_4D
					LDM				SRSAI_ACTION,#3
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
KEY_SCAN_4D:
					;;;;;;;;;;
					RET
KEY_SCAN_5:
					TM				STATUS_MARK.#3		;如果关机情况下,后面数据不用处理
					BR				!KEY_SCAN_5A
					RET
KEY_SCAN_5A:
					TM				STATUS_MARK.#2		;静音时候不处理
					BR				!KEY_SCAN_OUT
					TM				KEY_STATUS.#2
					BR				!KEY_SCAN_OUT
					;;;;;;;;;;
					LDM				KEY_COUNT2,#00H
					LDM				KEY_COUNT3,#00H
					LDM				KEY_COUNT4,#0FH
KEY_SCAN_7C:
					CALL			!SUB_VOL
					;7月26日加得功能,封锁音量极限,不给予动作
					CMNE			VOL_FULL,#0
					BR				!KEY_SCAN_OUT
					;
					LDM				SRSAI_ACTION,#8
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#2
					;;;;;;;;;;
					RET
KEY_SCAN_6:
					TM				STATUS_MARK.#3		;如果关机情况下,后面数据不用处理
					BR				!KEY_SCAN_6A
					RET
KEY_SCAN_6A:
					TM				STATUS_MARK.#2		;静音时候不处理
					BR				!KEY_SCAN_OUT
					TM				KEY_STATUS.#3
					BR				!KEY_SCAN_OUT
					;;;;;;;;;;
					LDM				KEY_COUNT2,#00H
					LDM				KEY_COUNT3,#00H
					LDM				KEY_COUNT4,#0FH
KEY_SCAN_7D:
					CALL			!ADD_VOL
					;7月26日加得功能,封锁音量极限,不给予动作
					CMNE			VOL_FULL,#0
					BR				!KEY_SCAN_OUT
					;
					LDM				SRSAI_ACTION,#8
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#2
					;;;;;;;;;;
					RET
KEY_SCAN_7:
					TM		STATUS_MARK.#3		;如果关机情况下,后面数据不用处理
					BR		!KEY_SCAN_7A1
					RET
KEY_SCAN_7A1:
					TM		STATUS_MARK.#2		;静音时候不处理
					BR		!KEY_SCAN_OUT
					CMNE		SRSAI_ACTION,#0	;AI功能必须动作过后才能重新响应开关按键功能
					BR		!KEY_SCAN_OUT
					CLRC
					ADDC		KEY_COUNT2,#1
					LDM		KEY_COUNT2,A
					ADDC		KEY_COUNT3,#0
					LDM		KEY_COUNT3,A
					ADDC		KEY_COUNT4,#0
					LDM		KEY_COUNT4,A
					TSTC
					BR		!KEY_SCAN_7A
					RET
KEY_SCAN_7A:
					LDM				KEY_COUNT2,#0BH
					LDM				KEY_COUNT3,#09H
					LDM				KEY_COUNT4,#0FH
					TM				!KEY_STATUS.#2
					BR				!KEY_SCAN_7B
					BR				!KEY_SCAN_7C
KEY_SCAN_7B:
					TM				!KEY_STATUS.#3
					BR				!START
					BR				!KEY_SCAN_7D
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
R_KEY_F:
					CMNE			KEY_STATUS,#1111B
					BR				!R_KEY_FX
					BR				!R_KEY_FXX		;没有按键时候才响应遥控接收功能
R_KEY_FX:
					LDM				R_DATA_1,#0
					LDM				R_DATA_2,#0
					LDM				R_DATA_3,#0
					LDM				R_DATA_4,#0
					LDM				R_DATA_5,#0
					LDM				R_DATA_6,#0
					LDM				R_DATA_7,#0
					LDM				R_DATA_8,#0
					LDM				R_KEY_OUT1,#0
					LDM				R_KEY_OUT2,#0
					LDM				R_KEY_DATA1,#0
					LDM				R_KEY_DATA2,#0
					LDM				R_KEY_STATUS1,#0
					LDM				R_KEY_STATUS2,#0
					RET
R_KEY_FXX:
;;;;;;;;;;
					LDA				R_KEY_DATA1
					XOR				R_KEY_STATUS1
					CANE			#0
					BR				!R_KEY_F_1
					LDA				R_KEY_DATA2
					XOR				R_KEY_STATUS2
					CANE			#0
					BR				!R_KEY_F_1
					RET
R_KEY_F_1:
					LDM				SERIES_ACTION,#0	;每次有键值改变都把连续标志归0
					CMNE			R_KEY_STATUS1,#0
					BR				!R_KEY_F_2
					CMNE			R_KEY_STATUS2,#0
					BR				!R_KEY_F_2
					BR				!R_KEY_F_3
R_KEY_F_2:
					LDA				R_KEY_DATA1
					LDM				R_KEY_STATUS1,A
					LDA				R_KEY_DATA2
					LDM				R_KEY_STATUS2,A
					RET
R_KEY_F_3:
					LDA				R_KEY_DATA1
					LDM				R_KEY_STATUS1,A
					LDA				R_KEY_DATA2
					LDM				R_KEY_STATUS2,A
					;
					CMNE			R_KEY_STATUS1,#1
					BR				!R_KEY_F_4
					CMNE			R_KEY_STATUS2,#0
					BR				!R_KEY_F_4
					TM				STATUS_MARK.#3
					BR				!R_KEY_F_3A
;					LDM				STATUS_MARK,#1000B	;TURN ON
					SET1			STATUS_MARK.#3		;12月22日,要求该关机保留EQ
					CLR1			STATUS_MARK.#2
					CLR1			STATUS_MARK.#0
					LDM				SRSAI_ACTION,#1
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
					RET
R_KEY_F_3A:
;					LDM				STATUS_MARK,#0000B	;TURN OFF
					CLR1			STATUS_MARK.#3		;12月22日,要求该关机保留EQ
					CLR1			STATUS_MARK.#2
					CLR1			STATUS_MARK.#0
					LDM				SRSAI_ACTION,#2
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
					RET
R_KEY_F_4:
					TM				STATUS_MARK.#3		;如果关机情况下,后面数据不用处理
					BR				!R_KEY_F_4X
					RET
R_KEY_F_4X:
					CMNE			R_KEY_STATUS1,#2
					BR				!R_KEY_F_5
					CMNE			R_KEY_STATUS2,#0
					BR				!R_KEY_F_5
					LDM				CHANNEL_MARK,#1000B
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_4A
					LDM				SRSAI_ACTION,#3		;模式3来发数据给SRS
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
R_KEY_F_4A:
					RET
R_KEY_F_5:
					CMNE			R_KEY_STATUS1,#3
					BR				!R_KEY_F_6
					CMNE			R_KEY_STATUS2,#0
					BR				!R_KEY_F_6
					LDM				CHANNEL_MARK,#0100B
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_5A
					LDM				SRSAI_ACTION,#3		;模式3来发数据给SRS
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
R_KEY_F_5A:
					RET
R_KEY_F_6:
					CMNE			R_KEY_STATUS1,#4
					BR				!R_KEY_F_7
					CMNE			R_KEY_STATUS2,#0
					BR				!R_KEY_F_7
					LDM				CHANNEL_MARK,#0010B
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_6A
					LDM				SRSAI_ACTION,#3		;模式3来发数据给SRS
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
R_KEY_F_6A:
					RET
R_KEY_F_7:
					CMNE			R_KEY_STATUS1,#5
					BR				!R_KEY_F_8
					CMNE			R_KEY_STATUS2,#0
					BR				!R_KEY_F_8
					LDM				CHANNEL_MARK,#0001B
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_7A
					LDM				SRSAI_ACTION,#3		;模式3来发数据给SRS
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
R_KEY_F_7A:
					RET
R_KEY_F_8:
					CMNE			R_KEY_STATUS1,#6
					BR				!R_KEY_F_9
					CMNE			R_KEY_STATUS2,#0
					BR				!R_KEY_F_9
					TM				MODE_MARK.#3		;如果等于这个模式,在按这个模式无效
					BR				!R_KEY_F_8C
					CMLE			MODE_MARK,#0011B			;mode3 and mode4转到该模式FRONT VOL-
					BR				!R_KEY_F_8A
					BR				!R_KEY_F_8B
R_KEY_F_8A:
					LDM				INPUT_VOL1,#0001B
					LDM				INPUT_VOL2,#0000B
R_KEY_F_8B:
					LDM				MODE_MARK,#1000B
;					CLR1			STATUS_MARK.#1		;OFF EQ
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_8C
					LDM				SRSAI_ACTION,#4		;模式4来发数据给SRS
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
R_KEY_F_8C:
					RET
R_KEY_F_9:
					CMNE			R_KEY_STATUS1,#7
					BR				!R_KEY_F_10
					CMNE			R_KEY_STATUS2,#0
					BR				!R_KEY_F_10
					TM				MODE_MARK.#2		;如果等于这个模式,在按这个模式无效
					BR				!R_KEY_F_9C
					CMLE			MODE_MARK,#0011B			;mode3 and mode4转到该模式FRONT VOL-
					BR				!R_KEY_F_9A
					BR				!R_KEY_F_9B
R_KEY_F_9A:
					LDM				INPUT_VOL1,#0001B
					LDM				INPUT_VOL2,#0000B
R_KEY_F_9B:
					LDM				MODE_MARK,#0100B
;					CLR1			STATUS_MARK.#1		;OFF EQ
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_9C
					LDM				SRSAI_ACTION,#4		;模式4来发数据给SRS
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
R_KEY_F_9C:
					RET
R_KEY_F_10:
					CMNE			R_KEY_STATUS1,#8
					BR				!R_KEY_F_11
					CMNE			R_KEY_STATUS2,#0
					BR				!R_KEY_F_11
					TM				MODE_MARK.#1		;如果等于这个模式,在按这个模式无效
					BR				!R_KEY_F_10B
					CMLE			MODE_MARK,#0011B			;mode1 and mode2转到该模式FRONT VOL+
					BR				!R_KEY_F_10A
					LDM				INPUT_VOL1,#0001B
					LDM				INPUT_VOL2,#0101B
R_KEY_F_10A:
					LDM				MODE_MARK,#0010B
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_10B
					LDM				SRSAI_ACTION,#4		;模式4来发数据给SRS
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
R_KEY_F_10B:
					RET
R_KEY_F_11:
					CMNE			R_KEY_STATUS1,#0
					BR				!R_KEY_F_12
					CMNE			R_KEY_STATUS2,#1
					BR				!R_KEY_F_12
					TM				MODE_MARK.#0		;如果等于这个模式,在按这个模式无效
					BR				!R_KEY_F_11B
					CMLE			MODE_MARK,#0011B			;mode1 and mode2转到该模式FRONT VOL+
					BR				!R_KEY_F_11A
					LDM				INPUT_VOL1,#0001B
					LDM				INPUT_VOL2,#0101B
R_KEY_F_11A:
					LDM				MODE_MARK,#0001B
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_11B
					LDM				SRSAI_ACTION,#4		;模式4来发数据给SRS
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
R_KEY_F_11B:
					RET
R_KEY_F_12:
					CMNE			R_KEY_STATUS1,#7		;MUTE
					BR				!R_KEY_F_13
					CMNE			R_KEY_STATUS2,#1
					BR				!R_KEY_F_13
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_12C				;12月22日,要求MUTE可以回复音量
					SET1			STATUS_MARK.#2			;开启MUTE
					LDM				SRSAI_ACTION,#6
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
					RET
R_KEY_F_12B:
					RET				;11月12日加的,MUTE只有关闭声音,如果要关闭MUTE功能要靠音量调节
R_KEY_F_12C:
					CLR1			STATUS_MARK.#2		;off mute
					LDM				SRSAI_ACTION,#5
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
					RET
R_KEY_F_13:
					CMNE			R_KEY_STATUS1,#8		;POP
					BR				!R_KEY_F_13B
					CMNE			R_KEY_STATUS2,#1
					BR				!R_KEY_F_13B
					TM				STATUS_MARK.#1
					BR				!R_KEY_F_13A
					RET
R_KEY_F_13A:
					LDM				EQ_MARK,#1000B
					BR				!R_KEY_F_15C
R_KEY_F_13B:
					CMNE			R_KEY_STATUS1,#2		;JASS
					BR				!R_KEY_F_13D
					CMNE			R_KEY_STATUS2,#2
					BR				!R_KEY_F_13D
					TM				STATUS_MARK.#1
					BR				!R_KEY_F_13C
					RET
R_KEY_F_13C:
					LDM				EQ_MARK,#0010B
					BR				!R_KEY_F_15C
R_KEY_F_13D:
					CMNE			R_KEY_STATUS1,#3		;ROCK
					BR				!R_KEY_F_14
					CMNE			R_KEY_STATUS2,#2
					BR				!R_KEY_F_14
					TM				STATUS_MARK.#1
					BR				!R_KEY_F_13E
					RET
R_KEY_F_13E:
					LDM				EQ_MARK,#0001B
					BR				!R_KEY_F_15C
R_KEY_F_14:
					CMNE			R_KEY_STATUS1,#0		;EQ ON/OFF
					BR				!R_KEY_F_15
					CMNE			R_KEY_STATUS2,#2
					BR				!R_KEY_F_15
;					CMLE			MODE_MARK,#0011B			;mode1 and mode2 EQ ON/OFF无效
;					BR				!R_KEY_F_14A
;					RET
R_KEY_F_14A:
					TM				STATUS_MARK.#1
					BR				!R_KEY_F_14B
					SET1			STATUS_MARK.#1
					BR				!R_KEY_F_15C
R_KEY_F_14B:
					CLR1			STATUS_MARK.#1
					BR				!R_KEY_F_15C
R_KEY_F_15:
					CMNE			R_KEY_STATUS1,#1		;CLASS
					BR				!R_KEY_F_16
					CMNE			R_KEY_STATUS2,#2
					BR				!R_KEY_F_16
					TM				STATUS_MARK.#1
					BR				!R_KEY_F_15A
					RET
R_KEY_F_15A:
					LDM				EQ_MARK,#0100B
R_KEY_F_15C:
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_15D
					LDM				SRSAI_ACTION,#3		;模式3来发数据给SRS
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#1
R_KEY_F_15D:
					RET
R_KEY_F_16:
					;静音或关机时候不能加减所有音量
					LDA				STATUS_MARK
					LDM				VARIABLE2,A
					CLR1			VARIABLE2.#2
					CLR1			VARIABLE2.#1
					CLR1			VARIABLE2.#0
					CMNE			VARIABLE2,#1000B
					BR				!R_KEY_F_16A
					;
					CMNE			R_KEY_STATUS1,#1		;MAIN VOL+
					BR				!R_KEY_F_17
					CMNE			R_KEY_STATUS2,#1
					BR				!R_KEY_F_17
					;11月12日加,静音下安音量控制就取消MUTE
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_12C
					;
					LDM				SERIES_ACTION,#1		;开启连续按键功能
					LDM				SERIES_C,#11						;设定1秒连续按键起始延时
					LDM				SERIES_R,#0
SERIES_RKEY_F_3:
					CALL			!ADD_VOL
					;7月26日加的功能,封锁音量极限,不给予动作
					CMNE			VOL_FULL,#0
					BR				!R_KEY_F_16A
					;
					LDM				SRSAI_ACTION,#8		;模式8来发数据给SRS
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#2
R_KEY_F_16A:
					RET
R_KEY_F_17:
					CMNE			R_KEY_STATUS1,#2		;MAIN VOL-
					BR				!R_KEY_F_18
					CMNE			R_KEY_STATUS2,#1
					BR				!R_KEY_F_18
					;11月12日加,静音下安音量控制就取消MUTE
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_12C
					;
					LDM				SERIES_ACTION,#2		;开启连续按键功能
					LDM				SERIES_C,#11						;设定1秒连续按键起始延时
					LDM				SERIES_R,#0
SERIES_RKEY_F_4:
					CALL			!SUB_VOL
					;7月26日加得功能,封锁音量极限,不给予动作
					CMNE			VOL_FULL,#0
					BR				!R_KEY_F_16A
					;
					LDM				SRSAI_ACTION,#8		;模式8来发数据给SRS
					LDM				SRSAI_FLOW,#0
					LDM				LEDAI_ACTION,#2
					RET
R_KEY_F_18:
					CMNE			R_KEY_STATUS1,#3		;SUB VOL+
					BR				!R_KEY_F_19
					CMNE			R_KEY_STATUS2,#1
					BR				!R_KEY_F_19
					;11月12日加,静音下安音量控制就取消MUTE
					TM				STATUS_MARK.#2
					BR				!R_KEY_F_12C

⌨️ 快捷键说明

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