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

📄 sta013.s

📁 mp3代码 要用的干净下啊 希望用东西共享啊
💻 S
📖 第 1 页 / 共 5 页
字号:
; 0x27, 0x08, 0x28, 0xaf, 0x20, 0x00, 0x21, 0x01, 0x22, 0x00, 
; 0x23, 0x80, 0x24, 0x86, 0x25, 0xcb, 0x26, 0xab, 0x27, 0x0a, 
; 0x28, 0xb0, 0x20, 0x42, 0x21, 0xdd, 0x22, 0x08, 0x24, 0x89, 
; 0x25, 0x07, 0x26, 0xaa, 0x28, 0xb1, 0x20, 0x00, 0x21, 0x18, 
; 0x22, 0x80, 0x23, 0x95, 0x26, 0xa4, 0x27, 0x00, 0x28, 0xb2, 
; 0x20, 0x03, 0x21, 0xd9, 0x22, 0x0f, 0x23, 0x83, 0x26, 0x26, 
; 0x27, 0x0d, 0x28, 0xb3, 0x20, 0x70, 0x21, 0x0a, 0x22, 0xb8, 
; 0x23, 0x95, 0x26, 0xa0, 0x27, 0x00, 0x28, 0xb4, 0x20, 0x02, 
; 0x21, 0xe0, 0x22, 0x08, 0x23, 0x80, 0x26, 0xaa, 0x27, 0x0a, 
; 0x28, 0xb5, 0x20, 0x70, 0x21, 0x0a, 0x22, 0xb8, 0x23, 0x95, 
; 0x26, 0xa0, 0x27, 0x00, 0x28, 0xb6, 0x21, 0x54, 0x26, 0x02, 
; 0x27, 0x08, 0x28, 0xb7, 0x20, 0x00, 0x21, 0x18, 0x22, 0x80, 
; 0x26, 0xa4, 0x27, 0x00, 0x28, 0xb8, 0x21, 0x00, 0x22, 0x00, 
; 0x23, 0x80, 0x24, 0x80, 0x25, 0x48, 0x26, 0xaa, 0x27, 0x0a, 
; 0x28, 0xb9, 0x20, 0x70, 0x21, 0x5e, 0x22, 0xb8, 0x23, 0x95, 
; 0x24, 0x89, 0x25, 0x07, 0x26, 0x12, 0x27, 0x08, 0x28, 0xba, 
; 0x20, 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, 0x80, 0x24, 0x09, 
; 0x25, 0x4b, 0x26, 0xaa, 0x27, 0x0a, 0x28, 0xbb, 0x20, 0x70, 
; 0x21, 0x5f, 0x22, 0xb8, 0x23, 0x95, 0x24, 0x89, 0x25, 0x07, 
; 0x26, 0x10, 0x27, 0x08, 0x28, 0xbc, 0x20, 0x00, 0x21, 0x00, 
; 0x22, 0x00, 0x23, 0x00, 0x24, 0x1c, 0x25, 0x83, 0x26, 0xab, 
; 0x27, 0x0a, 0x28, 0xbd, 0x20, 0x03, 0x21, 0x32, 0x22, 0x09, 
; 0x23, 0x83, 0x24, 0x89, 0x25, 0x07, 0x26, 0x26, 0x27, 0x0d, 
; 0x28, 0xbe, 0x20, 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, 0x00, 
; 0x24, 0x82, 0x25, 0x8c, 0x26, 0xab, 0x27, 0x0a, 0x28, 0xbf, 
; 0x20, 0x03, 0x21, 0x25, 0x22, 0x09, 0x23, 0x83, 0x24, 0x89, 
; 0x25, 0x07, 0x26, 0x26, 0x27, 0x0d, 0x28, 0xc0, 0x20, 0x42, 
; 0x21, 0xbc, 0x23, 0x80, 0x26, 0xaa, 0x27, 0x0a, 0x28, 0xc1, 
; 0x20, 0x00, 0x21, 0x01, 0x22, 0x00, 0x23, 0x00, 0x24, 0x01, 
; 0x25, 0xc0, 0x26, 0xab, 0x28, 0xc2, 0x20, 0x70, 0x21, 0x0f, 
; 0x22, 0xb8, 0x23, 0x95, 0x24, 0x89, 0x25, 0x07, 0x26, 0x20, 
; 0x27, 0x00, 0x28, 0xc3, 0x20, 0x03, 0x21, 0xe3, 0x22, 0x0f, 
; 0x23, 0x83, 0x26, 0x26, 0x27, 0x0d, 0x28, 0xc4, 0x20, 0x05, 
; 0x21, 0x00, 0x22, 0x00, 0x23, 0x84, 0x26, 0xb4, 0x27, 0x09, 
; 0x28, 0xc5, 0x20, 0x00, 0x21, 0x03, 0x23, 0x95, 0x26, 0x14, 
; 0x27, 0x08, 0x28, 0xc6, 0x21, 0xa6, 0x23, 0xa4, 0x26, 0x2a, 
; 0x27, 0x05, 0x28, 0xc7, 0x21, 0x00, 0x23, 0xa0, 0x26, 0x44, 
; 0x27, 0x09, 0x28, 0xc8, 0x21, 0x18, 0x22, 0x6d, 0x23, 0x80, 
; 0x24, 0x9e, 0x25, 0x7b, 0x26, 0xaa, 0x27, 0x0a, 0x28, 0xc9, 
; 0x20, 0x42, 0x21, 0x13, 0x22, 0x0b, 0x24, 0x89, 0x25, 0x07, 
; 0x28, 0xca, 0x20, 0x00, 0x21, 0xae, 0x22, 0x00, 0x23, 0x95, 
; 0x26, 0x24, 0x27, 0x00, 0x28, 0xcb, 0x21, 0x00, 0x22, 0x03, 
; 0x23, 0x80, 0x24, 0x87, 0x25, 0x7b, 0x26, 0xaa, 0x27, 0x0a, 
; 0x28, 0xcc, 0x20, 0x42, 0x21, 0x16, 0x22, 0x0b, 0x24, 0x89, 
; 0x25, 0x07, 0x28, 0xcd, 0x20, 0x00, 0x21, 0xae, 0x22, 0x00, 
; 0x23, 0x95, 0x26, 0x24, 0x27, 0x00, 0x28, 0xce, 0x20, 0x05, 
; 0x21, 0x00, 0x23, 0x84, 0x26, 0xb4, 0x27, 0x09, 0x28, 0xcf, 
; 0x20, 0x03, 0x21, 0x0d, 0x22, 0x0b, 0x23, 0x83, 0x26, 0x26, 
; 0x27, 0x0d, 0x28, 0xd0, 0x20, 0x00, 0x21, 0x00, 0x22, 0x00, 
; 0x23, 0x00, 0x24, 0x80, 0x26, 0x02, 0x27, 0x00, 0x28, 0xd1, 
; 0x23, 0x80, 0x24, 0x09, 0x25, 0x48, 0x26, 0x1e, 0x28, 0xd2, 
; 0x21, 0x58, 0x22, 0x34, 0x23, 0x33, 0x24, 0x80, 0x25, 0x07, 
; 0x26, 0x2a, 0x28, 0xd3, 0x21, 0x00, 0x22, 0x00, 0x23, 0x00, 
; 0x26, 0x80, 0x27, 0x10, 0x28, 0xd4, 0x21, 0x10, 0x23, 0x63, 
; 0x26, 0x2a, 0x27, 0x00, 0x28, 0xd5, 0x21, 0x00, 0x23, 0x60, 
; 0x26, 0xa8, 0x27, 0x12, 0x28, 0xd6, 0x21, 0xaf, 0x22, 0x4c, 
; 0x23, 0x00, 0x26, 0xc8, 0x27, 0x0c, 0x28, 0xd7, 0x21, 0x00, 
; 0x22, 0x00, 0x26, 0x80, 0x27, 0x05, 0x28, 0xd8, 0x23, 0x80, 
; 0x24, 0x86, 0x25, 0x3b, 0x26, 0x1e, 0x27, 0x00, 0x28, 0xd9, 
; 0x20, 0x42, 0x21, 0x1c, 0x22, 0x0e, 0x23, 0x00, 0x24, 0x80, 
; 0x25, 0x07, 0x28, 0xda, 0x20, 0x00, 0x21, 0x35, 0x22, 0x29, 
; 0x26, 0xc4, 0x27, 0x0c, 0x28, 0xdb, 0x20, 0x02, 0x21, 0x1d, 
; 0x22, 0x0e, 0x26, 0x1e, 0x27, 0x00, 0x28, 0xdc, 0x20, 0x00, 
; 0x21, 0x7f, 0x22, 0x34, 0x26, 0xc4, 0x27, 0x0c, 0x28, 0xdd, 
; 0x21, 0x00, 0x22, 0x00, 0x23, 0x90, 0x24, 0x9f, 0x25, 0x04, 
; 0x26, 0x10, 0x27, 0x0a, 0x28, 0xde, 0x23, 0x00, 0x24, 0x84, 
; 0x25, 0x00, 0x26, 0x80, 0x27, 0x10, 0x28, 0xdf, 0x21, 0x06, 
; 0x23, 0x63, 0x24, 0x80, 0x25, 0x07, 0x26, 0x2a, 0x27, 0x00, 
; 0x28, 0xe0, 0x21, 0x00, 0x23, 0x80, 0x24, 0x89, 0x26, 0xaa, 
; 0x27, 0x0a, 0x28, 0xe1, 0x20, 0x05, 0x23, 0x84, 0x26, 0xb4, 
; 0x27, 0x09, 0x28, 0xe2, 0x20, 0x70, 0x21, 0x61, 0x22, 0xb8, 
; 0x23, 0x95, 0x26, 0x12, 0x27, 0x08, 0x28, 0xe3, 0x20, 0x00, 
; 0x21, 0x01, 0x22, 0x00, 0x23, 0x80, 0x24, 0x86, 0x25, 0xc3, 
; 0x26, 0xab, 0x27, 0x0a, 0x28, 0xe4, 0x20, 0x42, 0x21, 0xce, 
; 0x22, 0x0f, 0x24, 0x89, 0x25, 0x07, 0x26, 0xaa, 0x28, 0xe5, 
; 0x20, 0x70, 0x21, 0x50, 0x22, 0xb8, 0x23, 0x95, 0x26, 0x12, 
; 0x27, 0x08, 0x28, 0xe6, 0x20, 0x05, 0x21, 0x00, 0x22, 0x00, 
; 0x23, 0x84, 0x26, 0xb4, 0x27, 0x09, 0x28, 0xe7, 0x20, 0x70, 
; 0x21, 0x64, 0x22, 0xb8, 0x23, 0x95, 0x26, 0x12, 0x27, 0x08, 
; 0x28, 0xe8, 0x20, 0x00, 0x21, 0x01, 0x22, 0x00, 0x23, 0x80, 
; 0x24, 0x86, 0x25, 0xc3, 0x26, 0xab, 0x27, 0x0a, 0x28, 0xe9, 
; 0x20, 0x42, 0x21, 0xd3, 0x22, 0x0f, 0x24, 0x89, 0x25, 0x07, 
; 0x26, 0xaa, 0x28, 0xea, 0x20, 0x70, 0x21, 0x51, 0x22, 0xb8, 
; 0x23, 0x95, 0x26, 0x12, 0x27, 0x08, 0x28, 0xeb, 0x20, 0x05, 
; 0x21, 0x00, 0x22, 0x00, 0x23, 0x84, 0x26, 0xb4, 0x27, 0x09, 
; 0x28, 0xec, 0x20, 0x70, 0x21, 0x65, 0x22, 0xb8, 0x23, 0x95, 
; 0x26, 0x12, 0x27, 0x08, 0x28, 0xed, 0x20, 0x00, 0x21, 0x01, 
; 0x22, 0x00, 0x23, 0x80, 0x24, 0x86, 0x25, 0xc3, 0x26, 0xab, 
; 0x27, 0x0a, 0x28, 0xee, 0x20, 0x42, 0x21, 0xd8, 0x22, 0x0f, 
; 0x24, 0x89, 0x25, 0x07, 0x26, 0xaa, 0x28, 0xef, 0x20, 0x70, 
; 0x21, 0x52, 0x22, 0xb8, 0x23, 0x95, 0x26, 0x12, 0x27, 0x08, 
; 0x28, 0xf0, 0x20, 0x05, 0x21, 0x00, 0x22, 0x00, 0x23, 0x84, 
; 0x26, 0xb4, 0x27, 0x09, 0x28, 0xf1, 0x20, 0x70, 0x21, 0x61, 
; 0x22, 0xb8, 0x23, 0x95, 0x26, 0x02, 0x27, 0x08, 0x28, 0xf2, 
; 0x20, 0x00, 0x21, 0x01, 0x22, 0x00, 0x23, 0x80, 0x24, 0x86, 
; 0x25, 0xc3, 0x26, 0xab, 0x27, 0x0a, 0x28, 0xf3, 0x20, 0x42, 
; 0x21, 0xdd, 0x22, 0x0f, 0x24, 0x89, 0x25, 0x07, 0x26, 0xaa, 
; 0x28, 0xf4, 0x20, 0x70, 0x21, 0x50, 0x22, 0xb8, 0x23, 0x95, 
; 0x26, 0x02, 0x27, 0x08, 0x28, 0xf5, 0x20, 0x05, 0x21, 0x00, 
; 0x22, 0x00, 0x23, 0x84, 0x26, 0xb4, 0x27, 0x09, 0x28, 0xf6, 
; 0x20, 0x00, 0x21, 0x01, 0x23, 0x80, 0x24, 0x86, 0x25, 0xcb, 
; 0x26, 0xab, 0x27, 0x0a, 0x28, 0xf7, 0x20, 0x42, 0x21, 0xe1, 
; 0x22, 0x0f, 0x24, 0x89, 0x25, 0x07, 0x26, 0xaa, 0x28, 0xf8, 
; 0x20, 0x00, 0x21, 0x02, 0x22, 0x00, 0x23, 0x00, 0x24, 0x81, 
; 0x25, 0xc4, 0x26, 0xab, 0x28, 0xf9, 0x21, 0x00, 0x23, 0x80, 
; 0x24, 0x89, 0x25, 0x48, 0x26, 0xaa, 0x28, 0xfa, 0x20, 0x05, 
; 0x23, 0x84, 0x25, 0x07, 0x26, 0xb4, 0x27, 0x09, 0x28, 0xfb, 
; 0x20, 0x70, 0x21, 0x4e, 0x22, 0xb8, 0x23, 0x95, 0x26, 0x10, 
; 0x27, 0x08, 0x28, 0xfc, 0x20, 0x00, 0x21, 0x00, 0x22, 0x00, 
; 0x23, 0x80, 0x24, 0x86, 0x25, 0xc3, 0x26, 0xab, 0x27, 0x0a, 
; 0x28, 0xfd, 0x20, 0x42, 0x21, 0xe7, 0x22, 0x0f, 0x24, 0x89, 
; 0x25, 0x07, 0x26, 0xaa, 0x28, 0xfe, 0x20, 0x00, 0x21, 0xbb, 
; 0x22, 0x00, 0x23, 0x95, 0x26, 0x20, 0x27, 0x00, 0x28, 0xff, 
; 0x20, 0x05, 0x21, 0x00, 0x23, 0x84, 0x26, 0xb4, 0x27, 0x09, 
; 0x2a, 0x08, 0x10, 0x01, 0x3a, 0x00, 0x64, 0x3a, 0x65, 0xbb, 
; 0x08, 0x3a, 0x09, 0xbb, 0x50, 0x10, 0x52, 0x67, 0x51, 0x77, 
; 0x05, 0xa1, 0x18, 0x04, 0xff, 0xff		  			  		   
; };
; /*************************************************************************************
; **延时公式
; **  i*500-100 US  (8>i>2)
; **  i*500         (255>i>8)
; ** i=1精确延时100us
; ** i=2 精确延时660US
; ** i=6 精确延时2.9ms
; ** i=10 精确延时5ms
; ** i=20        10ms
; ** i=100       50ms
; ** i=200       100ms
; ** i=255       128ms
; **************************************************************************************/
; void Delayms(uint8 n)
; {
	.dbline 472
; 	uint8 i;
; 	for(i=36;n!=0;n--)	
	ldi R20,36
	xjmp L11
X0:
	.dbline 473
; 	{
L12:
	.dbline 474
L13:
	.dbline 474
	mov R24,R20
	subi R24,1
	mov R20,R24
	tst R24
	brne L12
	.dbline 475
	wdr
	.dbline 476
L9:
	.dbline 472
	dec R16
L11:
	.dbline 472
	tst R16
	brne L13
	.dbline -2
L7:
	xcall pop_gset1
	.dbline 0 ; func end
	ret
	.dbsym r i 20 c
	.dbsym r n 16 c
	.dbend
	.dbfunc e sta_IoIni _sta_IoIni fV
	.even
_sta_IoIni::
	.dbline -1
	.dbline 482
; 	while(--i);
; 	WDR(); //喂狗;
; 	}
; }
; 
; //======================================================================================================
; //AVR与STA013的连接IO初始化
; void sta_IoIni(void)
; {
	.dbline 483
; 	STA_SCK_DIR|=BIT(STA_SCK);      
	sbi 0x17,7
	.dbline 484
; 	STA_SDI_DIR|=BIT(STA_SDI);
	sbi 0x17,5
	.dbline 485
; 	STA_BITEN_DIR|=BIT(STA_BITEN);
	sbi 0x17,3
	.dbline 486
; 	STA_BITEN_OUT&=~BIT(STA_BITEN);
	cbi 0x18,3
	.dbline 487
; 	STA_REQ_DIR&=~BIT(STA_REQ);
	cbi 0x11,2
	.dbline 488
; 	STA_RST_DIR|=BIT(STA_RST);
	sbi 0x11,3
	.dbline 490
; 	
; 	STA_LED_DIR|=BIT(STA_LED);
	sbi 0x11,5
	.dbline 491
; 	STA_LED_OUT|=BIT(STA_LED);
	sbi 0x12,5
	.dbline -2
L15:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e sta_Reset _sta_Reset fV
	.even
_sta_Reset::
	.dbline -1
	.dbline 497
; 	
; }
; 
; //STA013复位
; void sta_Reset(void)
; {
	.dbline 498
; 	STA_RST_OUT|=BIT(STA_RST);		//RST低为复位
	sbi 0x12,3
	.dbline 499
; 	STA_RST_OUT&=~BIT(STA_RST);
	cbi 0x12,3
	.dbline 500
; 	Delayms(100);
	ldi R16,100
	xcall _Delayms
	.dbline 501
; 	STA_RST_OUT|=BIT(STA_RST);
	sbi 0x12,3
	.dbline 502
; 	Delayms(100);
	ldi R16,100
	xcall _Delayms
	.dbline -2
L16:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e sta_ReadReg _sta_ReadReg fc
;              i -> R20
;           data -> y+2
;            reg -> R20
	.even
_sta_ReadReg::
	xcall push_gset1
	mov R20,R16
	sbiw R28,3
	.dbline -1
	.dbline 506
; }
; //读寄存器
; uint8 sta_ReadReg(uint8 reg)
; {
	.dbline 508
; 	uint8 data,i;
; 	data=reg;
	std y+2,R20
	.dbline 509
; 	i=Twi_MasterSend(STA_I2C_DEV,1,&data);
	movw R24,R28
	adiw R24,2
	std y+1,R25
	std y+0,R24
	ldi R18,1
	ldi R16,134
	xcall _Twi_MasterSend
	.dbline 510
; 	Delayms(100);
	ldi R16,100
	xcall _Delayms
	.dbline 511
; 	i=Twi_MasterReceive(STA_I2C_DEV, 1, &data);
	movw R24,R28
	adiw R24,2
	std y+1,R25
	std y+0,R24
	ldi R18,1
	ldi R16,134
	xcall _Twi_MasterReceive
	mov R20,R16
	.dbline 512
; 	return data;
	ldd R16,y+2
	.dbline -2
L17:
	adiw R28,3
	xcall pop_gset1
	.dbline 0 ; func end
	ret
	.dbsym r i 20 c
	.dbsym l data 2 c
	.dbsym r reg 20 c
	.dbend
	.dbfunc e sta_WriteReg _sta_WriteReg fV
;              i -> R20
;         buffer -> y+2
;           data -> R20
;            reg -> R22
	.even
_sta_WriteReg::
	xcall push_gset2
	mov R20,R18
	mov R22,R16
	sbiw R28,4
	.dbline -1
	.dbline 516
; }
; //写寄存器
; void sta_WriteReg(uint8 reg, uint8 data)
; {   uint8 buffer[2],i;
	.dbline 517
;     buffer[0]=reg;
	std y+2,R22
	.dbline 518
; 	buffer[1]=data;
	std y+3,R20
	.dbline 519
; 	i=Twi_MasterSend(STA_I2C_DEV,2, buffer);
	movw R24,R28
	adiw R24,2
	std y+1,R25
	std y+0,R24
	ldi R18,2
	ldi R16,134
	xcall _Twi_MasterSend
	mov R20,R16
	.dbline -2
L18:
	adiw R28,4
	xcall pop_gset2
	.dbline 0 ; func end
	ret
	.dbsym r i 20 c
	.dbsym l buffer 2 A[2:2]c
	.dbsym r data 20 c
	.dbsym r reg 22 c
	.dbend
	.dbfunc e sta_DownloadUpdate _sta_DownloadUpdate fV
;           data -> R20
;              i -> R22,R23
;            reg -> R10
	.even
_sta_DownloadUpdate::
	xcall push_gset3
	.dbline -1
	.dbline 523
; }
; //写配置文件
; void sta_DownloadUpdate(void)
; {
	.dbline 527
; 	uint16 i;
; 	uint8 reg, data;
; 
; 	i=0;
	clr R22
	clr R23
	.dbline 529
; 
; 	reg = STA013_UpdateData[i++];
	movw R2,R22
	subi R22,255  ; offset = 1
	sbci R23,255
	ldi R24,<_STA013_UpdateData
	ldi R25,>_STA013_UpdateData
	movw R30,R2
	add R30,R24
	adc R31,R25
	lpm R10,Z
	.dbline 530
; 	data = STA013_UpdateData[i++];
	movw R2,R22
	subi R22,255  ; offset = 1
	sbci R23,255
	movw R30,R2
	add R30,R24
	adc R31,R25
	lpm R20,Z
	xjmp L22
L21:
	.dbline 533
	.dbline 534
	mov R18,R20
	mov R16,R10
	xcall _sta_WriteReg
	.dbline 535
	movw R2,R22
	subi R22,255  ; offset = 1
	sbci R23,255
	ldi R24,<_STA013_UpdateData
	ldi R25,>_STA013_UpdateData
	movw R30,R2
	add R30,R24
	adc R31,R25
	lpm R10,Z
	.dbline 536
	movw R2,R22
	subi R22,255  ; offset = 1
	sbci R23,255
	movw R30,R2
	add R30,R24
	adc R31,R25
	lpm R20,Z
	.dbline 537
L22:
	.dbline 532
; 	//结束标志"0xFF"
; 	while( (reg != 0xff) )
	mov R24,R10
	cpi R24,255
	brne L21
	.dbline -2
L20:
	xcall pop_gset3
	.dbline 0 ; func end
	ret
	.dbsym r data 20 c
	.dbsym r i 22 i
	.dbsym r reg 10 c
	.dbend
	.dbfunc e sta_SetTone _sta_SetTone fV
;     trebleFreq -> y+8
;      trebleEnh -> R22
;       bassFreq -> R10,R11
;        bassEnh -> R20
	.even
_sta_SetTone::
	xcall push_gset3
	movw R10,R18
	mov R20,R16
	ldd R22,y+6
	.dbline -1
	.dbline 541
; 	{
; 		sta_WriteReg(reg, data);
; 		reg = STA013_UpdateData[i++];
; 		data = STA013_UpdateData[i++];
; 	}
; }
; //设置音调
; void sta_SetTone(int8 bassEnh, uint16 bassFreq, int8 trebleEnh, uint16 trebleFreq)
; {
	.dbline 543
; 	//设置低音增益
; 	sta_WriteReg(STA_REG_BASS_FREQUENCY_LOW,  (bassFreq   ) & 0xFF );
	mov R18,R10
	andi R19,0
	ldi R16,121
	xcall _sta_WriteReg
	.dbline 544
; 	sta_WriteReg(STA_REG_BASS_FREQUENCY_HIGH, (bassFreq>>8) & 0xFF );
	movw R18,R10
	mov R18,R19
	clr R19
	andi R19,0
	ldi R16,122
	xcall _sta_WriteReg
	.dbline 546
; 	//注意界限
; 	bassEnh = MIN(bassEnh,MAX_BASS_ENHANCE);
	cpi R20,12
	brge L25
	mov R10,R20
	clr R11
	sbrc R10,7
	com R11
	xjmp L26
L25:
	ldi R24,12
	ldi R25,0
	movw R10,R24
L26:
	mov R20,R10
	.dbline 547
; 	bassEnh = MAX(bassEnh,MIN_BASS_ENHANCE);
	ldi R24,244
	cp R24,R10
	brge L27
	clr R11
	sbrc R10,7
	com R11
	xjmp L28
L27:
	ldi R24,-12
	ldi R25,-1
	movw R10,R24
L28:
	mov R20,R10
	.dbline 548
; 	sta_WriteReg(STA_REG_BASS_ENHANCE, bassEnh);
	mov R18,R20
	ldi R16,124
	xcall _sta_WriteReg
	.dbline 551
; 
; 	//设置高音增益
; 	sta_WriteReg(STA_REG_TREBLE_FREQUENCY_LOW,  (trebleFreq   ) & 0xFF );
	ldd R18,y+8
	ldd R19,y+9
	andi R19,0
	ldi R16,119
	xcall _sta_WriteReg
	.dbline 552
; 	sta_WriteReg(STA_REG_TREBLE_FREQUENCY_HIGH, (trebleFreq>>8) & 0xFF );
	ldd R18,y+8
	ldd R19,y+9
	mov R18,R19
	clr R19
	andi R19,0
	ldi R16,120
	xcall _sta_WriteReg
	.dbline 554
; 	//注意界限
; 	trebleEnh = MIN(trebleEnh,MAX_TREBLE_ENHANCE);
	cpi R22,12
	brge L29
	mov R10,R22
	clr R11
	sbrc R10,7
	com R11
	xjmp L30
L29:
	ldi R24,12
	ldi R25,0
	movw R10,R24
L30:
	mov R22,R10
	.dbline 555
; 	trebleEnh = MAX(trebleEnh,MIN_TREBLE_ENHANCE);
	ldi R24,244
	cp R24,R10
	brge L31
	clr R11
	sbrc R10,7
	com R11
	xjmp L32
L31:
	ldi R24,-12
	ldi R25,-1
	movw R10,R24
L32:
	mov R22,R10
	.dbline 556
; 	sta_WriteReg(STA_REG_TREBLE_ENHANCE, trebleEnh);
	mov R18,R22
	ldi R16,123
	xcall _sta_WriteReg
	.dbline 559
; 
; 	//
; 	sta_WriteReg( STA_REG_TONE_ATTEN, MAX(bassEnh,trebleEnh) );
	cp R10,R20
	brge L33
	clr R21
	sbrc R20,7
	com R21
	xjmp L34
L33:
	mov R20,R22
	clr R21
	sbrc R20,7
	com R21
L34:
	mov R18,R20
	ldi R16,125
	xcall _sta_WriteReg
	.dbline -2
L24:
	xcall pop_gset3
	.dbline 0 ; func end
	ret
	.dbsym l trebleFreq 8 i
	.dbsym r trebleEnh 22 C
	.dbsym r bassFreq 10 i
	.dbsym r bassEnh 20 C
	.dbend
	.dbfunc e sta_StartDecoder _sta_StartDecoder fV
	.even
_sta_StartDecoder::
	sbiw R28,4
	.dbline -1
	.dbline 564
; }
; //配置STA013并开始解压
; 
; void sta_S

⌨️ 快捷键说明

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