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

📄 main.lst

📁 Holtek audio decoder , Dongle 参考范例
💻 LST
📖 第 1 页 / 共 5 页
字号:
 258  0062              extern			FIFO4_RD_CHECK:NEAR
 259  0062              extern			FIFO5_RD_CHECK:NEAR
 260  0062              extern			FIFO0_WR_CHECK:NEAR
 261  0062              extern			FIFO1_WR_CHECK:NEAR
 262  0062              extern			FIFO2_WR_CHECK:NEAR
 263  0062              extern			FIFO3_WR_CHECK:NEAR
 264  0062              extern			FIFO4_WR_CHECK:NEAR
 265  0062              extern			FIFO5_WR_CHECK:NEAR
 266  0062              extern			Read_FIFO0:NEAR
 267  0062              extern			Read_FIFO1:NEAR
 268  0062              extern			Read_FIFO2:NEAR
 269  0062              extern			Read_FIFO3:NEAR
 270  0062              extern			Read_FIFO4:NEAR
 271  0062              extern			Read_FIFO5:NEAR
 272  0062              extern			Write_FIFO0:NEAR
 273  0062              extern			Write_FIFO1:NEAR
 274  0062              extern			Write_FIFO2:NEAR
 275  0062              extern			Write_FIFO3:NEAR
 276  0062              extern			Write_FIFO4:NEAR
 277  0062              extern			Write_FIFO5:NEAR
 278  0062              extern			Send_Hand_Shake:NEAR
 279  0062              extern			get_descriptor_length:NEAR
 280  0062              
 281  0062              extern			SetAddress:NEAR
 282  0062              extern			SetConfiguration:NEAR
 283  0062              extern			SetInterface:NEAR
 284  0062              extern			GetInterface:NEAR
 285  0062              extern			GetDescriptor:NEAR
"File: MAIN.ASM      Holtek Cross-Assembler  Version 2.86      Page 6

 286  0062              extern			SetIdle:NEAR
 287  0062              extern			GetDeviceDescriptor:NEAR
 288  0062              extern			GetConfigurationDescriptor:NEAR
 289  0062              extern			GetStringDescriptor:NEAR
 290  0062              extern			GetStatus:NEAR
 291  0062              extern			SetFeature:NEAR
 292  0062              extern			ClearFeature:NEAR
 293  0062              extern			SetReport:NEAR
 294  0062              extern			Execute:NEAR
 295  0062              extern			SendStall0:NEAR
 296  0062              extern			Delay_3us:NEAR
 297  0062              
 298  0062              extern			SetFeature_Endpoint:NEAR
 299  0062              extern			ClearFeature_Endpoint:NEAR
 300  0062              extern			GetStatus_Endpoint:NEAR
 301  0062              
 302  0062              extern			Check_Real_Cmd:NEAR
 303  0062              extern			GetConfiguration:NEAR
 304  0062              
 305  0062              
 306  0062              ;audio
 307  0062              extern		SetCur:NEAR
 308  0062              extern		GetMin:NEAR
 309  0062              extern		GetMax:NEAR
 310  0062              extern		GetRes:NEAR
 311  0062              extern		GetCur:NEAR
 312  0062              
 313  0062              extern		GetPipeBit:NEAR
 314  0062              
 315  0062              ;nRF 24L01
 316  0062              extern		TX_RX_Switch:NEAR
 317  0062              extern		RX_mode_set:NEAR
 318  0062              extern		nRF_TX_Transmit:NEAR
 319  0062              extern		nRF_RX_Receive:NEAR
 320  0062              extern		nRF_initial:NEAR
 321  0062              extern		nRF_int:NEAR
 322  0062              
 323  0062              ;***************************************************************
 324  0062              ;		MCU Interrupt Table
 325  0062              ;***************************************************************
 326  0062              
 327  0062              
 328  0000              CODE            .section        AT 00H 'code'
 329  0000              		ORG		00H
 330  0000  2820        		jmp		Start
 331  0001              		ORG		04H
 332  0004  28D8        		jmp		USB_ISR
 333  0005              		ORG		08H
 334  0008  289E        		jmp		Timer_0_ISR
 335  0009              		ORG		0CH
 336  000C  28B9        		jmp		Timer_1_ISR
 337  000D              		ORG		18H
 338  0018  2886        		jmp		RECORD_INT_ISR
 339  0019              
 340  0019              	;-----------------------------------------------------------
 341  0019              	; Start : ORG 20H avoid front interrupt
 342  0019              	;-----------------------------------------------------------
 343  0019              ORG	20H
 344  0020              Start:
 345  0020              
"File: MAIN.ASM      Holtek Cross-Assembler  Version 2.86      Page 7

 346  0020  2038        		call	System_Initial
 347  0021  2000     E  		call 	nRF_initial
 348  0022              	;-----------------------------------------------------------
 349  0022              	; Main LOOP Function  : 
 350  0022              	;-----------------------------------------------------------
 351  0022              Main:
 352  0022              	;-----------------------------------------------------------
 353  0022              	; Check Suspend Function  :
 354  0022              	; When check suspend first time, need delay 1 second check again
 355  0022              	;-----------------------------------------------------------
 356  0022  3820        		SNZ		USC.@USC_SUSP		;check SUSPEND ?
 357  0023  282F        		JMP		Main_My_Function
 358  0024              
 359  0024  22FE        		call		wait_about_1s
 360  0025  3820        		SNZ		USC.@USC_SUSP
 361  0026  282F        		JMP		Main_My_Function
 362  0027              		
 363  0027              	
 364  0027  0001        		clr 		wdt	
 365  0028  3611        		clr		TMR1C.4
 366  0029  3412        		clr		USB_LED_ON
 367  002A  35A2        		clr		UCC.@UCC_USBCKEN
 368  002B              	;-----------------------------------------------------------
 369  002B              	; Resume  Function  : 
 370  002B              	; recover state, enable USBCKEN
 371  002B              	;-----------------------------------------------------------
 372  002B  0002        		HALT
 373  002C  3211        		set		TMR1C.4		
 374  002D  3012        		set		USB_LED_ON
 375  002E  31A2        		set		UCC.@UCC_USBCKEN
 376  002F              
 377  002F              Main_My_Function:
 378  002F              	;-----------------------------------------------------------
 379  002F              	; Here to add your another code !!
 380  002F              	;-----------------------------------------------------------
 381  002F  0001        		clr wdt	
 382  0030  0000        		NOP
 383  0031              ;---------------------------------------------------	
 384  0031              		;modify 2006-07-27	
 385  0031  7C07        		SZ 	ADC_POR_FG
 386  0032  2837        		JMP 	Main_End			
 387  0033  3875        		SNZ	bFlag_SetConfiguration_Ready
 388  0034  2837        		JMP 	Main_End 
 389  0035  7007        		SET	ADC_POR_FG
 390  0036              ;---------------------------------------------------
 391  0036  311E        		set	ERECI
 392  0037              		;set	ET0I
 393  0037              Main_End:
 394  0037              		;call	TX_RX_Switch
 395  0037              		;call	nRF_TX_Transmit
 396  0037              		;call	nRF_RX_Receive
 397  0037              		;sz	TMR1_KEY_FG
 398  0037              		;call	Run_Volume_Step		
 399  0037  2822        		JMP	Main
 400  0038              
 401  0038              ;***************************************************************
 402  0038              ;		System Initial
 403  0038              ;		1.ram_initial
 404  0038              ;		1.Timer Initial
 405  0038              ;		2.USB Config
"File: MAIN.ASM      Holtek Cross-Assembler  Version 2.86      Page 8

 406  0038              ;***************************************************************
 407  0038              System_Initial:
 408  0038              	;-----------------------------------------------------------
 409  0038              	; Debug
 410  0038              	;-----------------------------------------------------------
 411  0038  0001        		clr wdt
 412  0039              
 413  0039              	;-----------------------------------------------------------
 414  0039              	; Modify Pop Noise
 415  0039              	;-----------------------------------------------------------
 416  0039              		kmov WDTS,07h
 417  003B  0709        		mov		a,WDTS
 418  003C  00F4        		mov		FIFO_TEMP,a
 419  003D              
 420  003D  0F57        		mov		a,01010111b
 421  003E  0089        		mov		WDTS,a
 422  003F              
 423  003F  1F2D        		clr		[02DH]
 424  0040              
 425  0040              		
 426  0040  0F80        		mov		a,80H
 427  0041  00AE        		mov		[02EH],a
 428  0042  0000        		nop
 429  0043  0000        		nop
 430  0044  31AF        		set		[02FH].3
 431  0045  0000        		nop
 432  0046  0000        		nop
 433  0047  35AF        		clr		[02FH].3
 434  0048  0000        		nop
 435  0049  0000        		nop
 436  004A              
 437  004A  0774        		mov		a,FIFO_TEMP
 438  004B  0089        		mov		WDTS,a
 439  004C              	;-----------------------------------------------------------
 440  004C              	; Wait Bais and ROUT LOUT Capacity rise about 1.98ms
 441  004C              	; delay time = 255*255*30*3(sdz,jmp) cycle * 0.3333us/cycle = 1.98 ms
 442  004C              	;-----------------------------------------------------------
 443  004C              	IF	WaitBias
 444  004C              		clr		pac
 445  004C              
 446  004C              		clr		FIFO_OUT1
 447  004C              		clr		FIFO_OUT2
 448  004C              		clr		FIFO_OUT3
 449  004C              		mov		a,9		
 450  004C              		mov		FIFO_OUT3,a
 451  004C              		clr		pa
 452  004C              
 453  004C              
 454  004C              
 455  004C              	System_Initial_Loop:
 456  004C              		clr wdt	
 457  004C              		sdz		FIFO_OUT1
 458  004C              		jmp		System_Initial_Loop
 459  004C              		sdz		FIFO_OUT2
 460  004C              		jmp		System_Initial_Loop		
 461  004C              		sdz		FIFO_OUT3
 462  004C              		jmp		System_Initial_Loop		
 463  004C              		nop
 464  004C              		clr wdt	
 465  004C              		set		pa
"File: MAIN.ASM      Holtek Cross-Assembler  Version 2.86      Page 9

 466  004C              	ENDIF
 467  004C              	;-----------------------------------------------------------
 468  004C              	; Codec Limit
 469  004C              	;-----------------------------------------------------------
 470  004C  1F2D        		clr		[02DH]
 471  004D  1FAE        		set		[02EH]
 472  004E              	;-----------------------------------------------------------
 473  004E              	; ram_initial : clear the ram of bank 0
 474  004E              	;-----------------------------------------------------------
 475  004E              	ram_initial:	;clear RAM (040H--0FFH)
 476  004E  0F40        		MOV		A,040H
 477  004F  0081        		MOV		MP0,A
 478  0050  0FC0        		MOV		A,192
 479  0051              	ram_initial_next_addr:
 480  0051  0001        		clr		wdt
 481  0052  1F00        		CLR		R0
 482  0053  1481        		INC		MP0
 483  0054  1785        		SDZ		acc
 484  0055  2851        		JMP		ram_initial_next_addr
 485  0056              
 486  0056              	ram_initial_1:	;clear RAM (040H--0FFH)
 487  0056  0F40        		MOV		A,040H
 488  0057  0083        		MOV		MP1,A
 489  0058              		KMOV		TBLP,192
 490  005A              		kmov		BP,001h
 491  005C              	ram_initial_next_addr_1:
 492  005C  0001        		clr		wdt
 493  005D              		KMOV		R1,080h
 494  005F  1483        		INC		MP1
 495  0060  1787        		SDZ		TBLP
 496  0061  285C        		JMP		ram_initial_next_addr_1
 497  0062  1F04        		clr		BP	
 498  0063              			
 499  0063  36F5        		CLR		bFlag_RD_HTable
 500  0064              	;-----------------------------------------------------------
 501  0064              	; timer_initial : do timer initial
 502  0064              	;-----------------------------------------------------------
 503  0064              	timer_initial:
 504  0064  0F82        		MOV 		A,82H		;  low to high edge trigger, internal timer mode
 505  0065  008E        		MOV		TMR0C,A		;
 506  0066  0F00        		MOV		A,00H		; 1ms
 507  0067  008D        		MOV		TMR0L,A		
 508  0068  0F00        		MOV		A,000H		
 509  0069  008C        		MOV		TMR0H,A		
 510  006A              
 511  006A  0F80        		mov		a,80H
 512  006B  0091        		mov		TMR1C,a
 513  006C  0F00        		mov		a,00H
 514  006D  0090        		mov		TMR1L,a
 515  006E  008F        		mov		TMR1H,a
 516  006F              
 517  006F              	;-----------------------------------------------------------
 518  006F              	; config_io_port :
 519  006F              	;-----------------------------------------------------------
 520  006F  1F12        		clr		pa
 521  0070              		;kmov		pac,0FEH
 522  0070              		
 523  0070              		IF 		UseMediaKey
 524  0070              			kmov		pac,Key_Defined
 525  0072              		ENDIF
"File: MAIN.ASM      Holtek Cross-Assembler  Version 2.86      Page 10

 526  0072              		IFE		UseMediaKey
 527  0072              			kmov		pac,00000000b
 528  0072              		ENDIF
 529  0072              		

⌨️ 快捷键说明

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