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

📄 pt2314conu.asm

📁 很常用的带4路音源输入.高音,低音,音量调节的IC.
💻 ASM
字号:
;***************************************
SET_M_VOL_UP:
CLR 	MUTE_BIT
LCALL 	MUTE_OFF		
MOV 	A,M_VOL
CJNE 	A,#63,MVOL_UP
RET
MVOL_UP:
INC 	A
AJMP MVOL_UD
;------------------------
SET_M_VOL_DOWN:
CLR 	MUTE_BIT
LCALL 	MUTE_OFF	
MOV 	A,M_VOL
CJNE 	A,#0,MVOL_DN
MOV 	A,#0DFH
ACALL 	WR_2314_BALANCE
MOV 	A,#0FFH
ACALL 	WR_2314_BALANCE
RET
MVOL_DN:
DEC 	A
MVOL_UD:
MOV 	M_VOL,A
MOV 	PT2314_MSB,A
LCALL 	PT2314_WR
DIS_VOL:
MOV 	A,#63
SUBB 	A,M_VOL
LCALL 	BIN2BCD
LCALL 	DIS_M_VOL
LCALL 	DISLCD1
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SET_BASS_VOL_UP:
MOV 	A,BASS_TONE
CJNE 	A,#14,BA_SHUI
LCALL 	DDDBAS
RET
BA_SHUI:
INC 	A
MOV 	BASS_TONE,A
LCALL 	CTRL_SHUI
ADD 	A,#60H
MOV 	PT2314_MSB,A
LCALL 	PT2314_WR
LCALL 	DELAY10
MOV 	A,BASS_TONE
MOV 	B,A
MOV 	A,#B_ADD
LCALL 	WT24
DDDBAS:
MOV 	A,BASS_TONE
MOV 	BUFF23,A
LCALL 	DIS_BASS_VOL
LCALL 	DISLCD2
RET
;;;;;;;;;;;;;;;;;
SET_TR_VOL_UP:	
MOV 	A,TREBLE_TONE
CJNE 	A,#14,TR_SHUI
LCALL 	DDDTR
RET
TR_SHUI:
INC 	A
MOV 	TREBLE_TONE,A
LCALL 	CTRL_SHUI
ADD 	A,#70H
MOV 	PT2314_MSB,A
LCALL 	PT2314_WR
MOV 	B,TREBLE_TONE
MOV 	A,#T_ADD
LCALL 	WT24
DDDTR:
MOV 	A,TREBLE_TONE
MOV 	BUFF23,A
LCALL 	DIS_TR_VOL
LCALL 	DISLCD2
RET
;;;;;;;;;;;;;;;;;
SET_BASS_VOL_DOWN:
MOV 	A,BASS_TONE
CJNE 	A,#0,BA1_SHUI
LCALL 	DDDBAS
RET
BA1_SHUI:
DEC 	A
MOV 	BASS_TONE,A
LCALL 	CTRL_SHUI
ADD 	A,#60H
MOV 	PT2314_MSB,A
LCALL 	PT2314_WR
LCALL 	DELAY10
MOV 	A,BASS_TONE
MOV 	B,A
MOV 	A,#B_ADD
LCALL 	WT24
MOV 	A,BASS_TONE
MOV 	BUFF23,A
LCALL 	DIS_BASS_VOL
LCALL 	DISLCD2
RET
;;;;;;;;;;;;;;;;;
SET_TR_VOL_DOWN:
MOV 	A,TREBLE_TONE
CJNE 	A,#0,TR1_SHUI
LCALL 	DDDTR
RET
TR1_SHUI:
DEC 	A
MOV 	TREBLE_TONE,A
LCALL 	CTRL_SHUI
ADD 	A,#70H
MOV 	PT2314_MSB,A
LCALL 	PT2314_WR
MOV 	B,TREBLE_TONE
MOV 	A,#T_ADD
LCALL 	WT24
MOV 	A,TREBLE_TONE
MOV 	BUFF23,A
LCALL 	DIS_TR_VOL
LCALL 	DISLCD2
RET
;;;;;;;;;;;;;;;;;;;;;;
CTRL_SHUI:
MOV	DPTR,#TONG_DATA
MOVC	A,@A+DPTR
RET
TONG_DATA:
DB 00H,01H,02H,03H,04H,05H,06H,07H
DB 0EH,0DH,0CH,0BH,0AH,09H,08H
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
INSW:
INSW1:
MOV 	A,IN_BUFF
CJNE 	A,#1,INSW2
MOV 	A,#0
ADD 	A,#44h;40H;+11.25
ACALL 	IN_DATA
LCALL 	IN_DIS1
RET
INSW2:
;MOV 	A,IN_BUFF
CJNE 	A,#2,INSW3
MOV 	A,#1
ADD 	A,#44h;40H;
ACALL 	IN_DATA
LCALL 	IN_DIS2
RET
INSW3:
;MOV 	A,IN_BUFF
CJNE 	A,#3,INSW4
MOV 	A,#2
ADD 	A,#44h;40H;
ACALL 	IN_DATA
LCALL 	IN_DIS3
RET
INSW4:
;MOV 	A,IN_BUFF
CJNE 	A,#4,INSW5
;MOV 	IN_BUFF,#0
MOV 	A,#3
ADD 	A,#44h;40H;
ACALL 	IN_DATA
LCALL 	IN_DIS4
RET
INSW5:
;MOV 	IN_BUFF,#0
RET
IN_DATA:
ACALL 	WR_2314_BALANCE
MOV 	A,#IN_ADD
MOV 	B,IN_BUFF
LCALL 	WT24
LCALL 	IN_DIS
RET
;----------
;静音
MUTE_ON_OFF: 	
JNB 	MUTE_BIT,MUTE_OFF
MOV 	A,#0DFH
ACALL 	WR_2314_BALANCE
MOV 	A,#0FFH
ACALL 	WR_2314_BALANCE
LCALL   DIS_VOL
LCALL 	LCD_MUTE
CLR 	RE_KEY
RET
MUTE_OFF:
MOV 	A,SP_L_BUFF
ADD 	A,#0C0H
ACALL 	WR_2314_BALANCE      
MOV 	A,SP_R_BUFF
ADD 	A,#0E0H
ACALL 	WR_2314_BALANCE 
LCALL   DIS_VOL
SETB 	RE_KEY
RET
;---------------
BALANCE_L:
MOV 	A,SP_R_BUFF
CJNE 	A,#0,BR_1
MOV 	A,SP_L_BUFF
CJNE 	A,#31D,BL_11
RET

BR_1:
DEC 	A
MOV 	SP_R_BUFF,A
ADD 	A,#0E0H
ACALL 	WR_2314_BALANCE
LCALL 	DIS_BAL_VOL
ACALL 	SAVE_BAL
RET

BL_11:
INC 	A
MOV 	SP_L_BUFF,A
ADD 	A,#0C0H
ACALL 	WR_2314_BALANCE
LCALL 	DIS_BAL_VOL
ACALL 	SAVE_BAL
RET
;
BALANCE_R:
MOV 	A,SP_L_BUFF
CJNE 	A,#0,BL_1
MOV 	A,SP_R_BUFF
CJNE 	A,#31D,BR_11
RET

BL_1:
DEC 	A
MOV 	SP_L_BUFF,A
ADD 	A,#0C0H
ACALL 	WR_2314_BALANCE
LCALL 	DIS_BAL_VOL
ACALL 	SAVE_BAL
RET

BR_11:
INC 	A
MOV 	SP_R_BUFF,A
ADD 	A,#0E0H
ACALL 	WR_2314_BALANCE
LCALL 	DIS_BAL_VOL
SAVE_BAL:
LCALL 	DELAY10
MOV 	A,#SP_L_ADD
MOV 	B,SP_L_BUFF
LCALL 	WT24
LCALL 	DELAY10
MOV 	A,#SP_R_ADD
MOV 	B,SP_R_BUFF
LCALL 	WT24
RET

WR_2314_BALANCE:
MOV PT2314_MSB,A
LCALL PT2314_WR
RET

;更换24C08时初始化24C08
W2408_STAR:
LCALL 	DELAY10
MOV 	A,#B_ADD
MOV 	B,#7
LCALL 	WT24
LCALL 	DELAY10
MOV 	A,#T_ADD
MOV 	B,#7
LCALL 	WT24
LCALL 	DELAY10
MOV 	A,#SP_L_ADD
MOV 	B,#0
LCALL 	WT24
LCALL 	DELAY10
MOV 	A,#SP_R_ADD
MOV 	B,#0
LCALL 	WT24
LCALL 	DELAY10
RET
;
LOUD_ON:
JNB LOUD_BIT,LOUD_RET
LOUD1:
MOV 	A,IN_BUFF
CJNE 	A,#1,LOUD2
MOV 	A,#0
ADD 	A,#44h
ACALL 	WR_2314_BALANCE
LCALL LOUD_DIS
RET
LOUD2:
CJNE 	A,#2,LOUD3
MOV 	A,#1
ADD 	A,#44h
ACALL 	WR_2314_BALANCE
LCALL LOUD_DIS
RET
LOUD3:
CJNE 	A,#3,LOUD4
MOV 	A,#2
ADD 	A,#44h
ACALL 	WR_2314_BALANCE
LCALL LOUD_DIS
RET
LOUD4:
CJNE 	A,#4,LOUD5
MOV 	A,#3
ADD 	A,#44h
ACALL 	WR_2314_BALANCE
LCALL LOUD_DIS
LOUD5:
RET

;
LOUD_RET:
MOV 	A,IN_BUFF
CJNE 	A,#1,LOU2
MOV 	A,#0
ADD 	A,#40H;+11.25
ACALL 	WR_2314_BALANCE
LCALL LOUD_OF
RET
LOU2:
CJNE 	A,#2,LOU3
MOV 	A,#1
ADD 	A,#40H;
ACALL 	WR_2314_BALANCE
LCALL LOUD_OF
RET
LOU3:
CJNE 	A,#3,LOU4
MOV 	A,#2
ADD 	A,#40H;
ACALL 	WR_2314_BALANCE
LCALL LOUD_OF
RET
LOU4:
CJNE 	A,#4,LOU5
MOV 	A,#3
ADD 	A,#40H;
ACALL 	WR_2314_BALANCE
LCALL LOUD_OF
LOU5:
RET

⌨️ 快捷键说明

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