亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dvr.asm

?? 使用GPTC6604做的一個錄放音DEMO
?? ASM
?? 第 1 頁 / 共 2 頁
字號:
//;***************************************************************************************** 
// SACM-DVR1600 algorithm with play, stop, pause, resume, volume up, volume down function
// By Arthur Shieh
// Platform: SPCE061A,unSP IDE 1.65, Windows 2000
// Date: 	
//      2000.07.30		: Alpha release for evaluation
//      2000.07.31		:
//
// General Function call:
// void System_Initial(void);		For Hardware, Keyboard scan, see hardware.asm in detail
// void System_ServiceLoop(void);	For Keyboard scan, see key.asm in detail
//
//
// Standard Function call:
// int SP_GetCh(void);		
//	Return values of SP_GetCh() : {0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}
// 
// 
// Function call for SACM-Speed only:
// Syntax: 
//  void SACM_DVR1600_Initial()
//  	Return Value: N/A
//
//  void SACM_DVR1600_Rec(int RceMonitor,int ADC_Channel,int bit_rate)
//		RceMonitor: 
//                   1	: RceMonitorOn  (ADC+DAC output)
//                   0 	: RceMonitorOff (ADC only)
//	
//		ADC Channel: 0  : Microphone
//					 1~7: Line-in 1~7(IOA0~IOA6)
//
//		bit_rate: 0:        	BIT_RATE_10K           		
//				  1:    		BIT_RATE_12K        		
//				  2:			BIT_RATE_14K        		
//				  3:			BIT_RATE_16K        		
//				  4:			BIT_RATE_20K 		    	
//				  5:			BIT_RATE_24K        			
//
// Gptc6604  play DVR  BIT_RATE_12K ~ 20K For Samples Rate 8k
//
//  void SACM_DVR1600_Play(int Speech index, int Channel, int Ramp_Set)
//		Speech index: 
//                   -1				: Manual mode
//                   0 - max index	: Auto Mode
//	
//		Channel: 	1: DAC1 on
//					2: DAC2 on
//					3: DAC1,2 on
//		Ramp_Set:	0: Ramp Up disable/Ramp Dn disable
//					1: Ramp Up enable/Ramp Dn disable
//					2: Ramp Up disable/Ramp Dn enable
//					3: Ramp Up enable/Ramp Dn enable		
//	
//					 
// void SACM_DVR1600_Stop(void);
// 	
// void SACM_DVR1600_Pause(void);
// void SACM_DVR1600_Resume(void);
// 
// void SACM_DVR1600_Volume(int volume index);
//	volume index: {0..15}
//	
// int SACM_DVR1600_Status(void);
//	bit.0 = 0: Idle
//			1: Audio active
//	bit.1 = 0: Play Mode
//			1: Record Mode
//
//  void SACM_DVR1600_Frame_Hop_Init(void);
//  For manual mode forward-backward function, 
//  call to disable internal length count on bit stream.
//
// Note:
//   1. User would need to check out the resource.asm for resource arrangement.
//      The speech table is T_SACM_DVR1600_SpeechTable for DVR1600.
//   2. New manual mode is demonstrated, which will work with sacm_user.asm.
//      Old falshion queue manipulation manual mode is not supported in this 
//      version.
//   3. For new manual mode, user have to handle the memory address and data 
//      acquisition through F_USER_DVR1600_GetData, _USER_SetStartAddr  	
//   4. The RAM taken by library can be shared by declaring ORAM section, 
//      "OVERLAP_DVR1600_RAM_BLOCK:   .Section        .ORAM". 
//      Please check out IDE menu--> Project-->Setting--> Section for details.	 
//   5. Both forground service loop and background service loop are supported.	
//   6. Data rate of SACM-DVR1600 can be 10/12/14/16/20/24Kbps and
//			the algorithm will select it automatically.	
//   7. Please check out the sacm.asm for details of initial function, interrupt setting, 
//      and timer setting. 					  
//;*****************************************************************************************

.external   F_SACM_S530_ServiceLoop;
.external   F_System_ServiceLoop;
.external   R_SACM_S530_Play_Flag;
.external   F_SACM_S530_Initial;
.external   F_System_Initial
.external   F_SACM_S530_Play;
.external    F_USER_S530_SetStartAddr;
.external   F_SP_GetCh;
.external   F_SACM_S530_Stop;
.external   F_SACM_S530_Pause;
.external   F_SACM_S530_Resume;
.external   F_SACM_S530_Volume
.external    F_ISR_Service_SACM_S530;





.external F_SACM_DVR1600_Initial
.external F_SACM_DVR1600_Rec
.external F_SACM_DVR1600_Play
.external F_SACM_DVR1600_Stop
.external F_SACM_DVR1600_Volume
.external F_SACM_DVR1600_Pause
.external F_SACM_DVR1600_Resume
.external F_SACM_DVR1600_Status
.external F_SACM_DVR1600_ServiceLoop         // Service Loop for foreground
.external F_SACM_DVR1600_ServiceLoop_ISR     // Service Loop for background
.external F_ISR_Service_SACM_DVR1600_FG      // ISR service for foreground
.external F_ISR_Service_SACM_DVR1600_BG      // ISR service for background

.external F_SACM_DVR1600_Frame_Hop_Init      //  For Manual Forward-backward, 
.external F_WriterWord,F_ReadWord,F_FlashTest

.external T_SACM_DVR1600_SpeechTable,SinTab1024,FlashAddrHi
.external __RES_OUT_HASC_2_ENC_sa,F_MassErase
.define _FILE_VAR

.include var.inc
.include spt6604a.inc

.external  _InitLCD,F_Display_ASCII_Character,Character_Position
.public _FIQ,_IRQ1,_IRQ2,_IRQ3,_IRQ4,_IRQ5,_IRQ6,_IRQ7

.ram 
.var		RW_DebounceReg	
.VAR		RW_KeyBufOld;           
.VAR		RW_KeyCode;        
.VAR		RW_Flag
.var		RW_Length
.Var		RW_Address


.define Manual			0					
.define Auto			1
.VAR  SpeechIndex;
.VAR  SpeedIndex;				
.VAR  VolumeIndex;			
.VAR  Mode;


.const  B_RecordBeginAddr  =  0x10
.public R_Resouce_BS
.public R_Resouce_DS
.var R_Resouce_BS
.var R_Resouce_DS
.var	RW_Long
.code
.public _main
_main:
				R1 = 0
				R2 =0x3FC
				BP =R2
	?ClearSram:
				[bp--]	= R1
				test	R5,0xFFF
				jnz		?ClearSram
				[bp]	= R1
				R1 =B_10M+B_FoscDivBy4
				[P_SystemClock] =R1

				R1 =B_10M // 			this EV_B Clock is 25MHz
				[P_SystemClock] =R1
	
			    R1 =B_Enable32768+B_Strong32768+B_128Hz+B_8KHz
				[P_TimeBaseSet] = R1;                   		
				r1 =	0x0000
				[P_IOA_Dir] = r1			//Set IOA as input port
				[P_Ch0Envelope] = r1
				r1 =	0x00FF
				[P_IOB_Dir] = r1			//Set IOB as output ports
				[P_IOC_Dir] = r1			//Set IOC as output ports	
				r1 =	0xFF00
				[P_IOA_PullR] = r1			//Enable the pull-up resistor for IOA0~IOA4

				R3 = 0xd100
				[P_Tmr_Ctrl] = R3   	// clock is 25MHz
				R4 = 0xFFFF-0xc9   	// 0x103  is 12k;  0x138 is 10k
								//0xc4 is 16k     ;0x186 is 8k  0x30d is 4k
							
				//clock 29MHz/8
				//0x1c4 8k 0x192  9k 0x16a 10k  0x149 11k  0x12e 12k
				// c9 18K
				[P_TmrA_Data] = R4
				[P_TmrA_Load] = R4
		
				R1 = B_T128HzInt
				[P_Int] = R1
				r1 =	0x55aa
				[P_Watchdog_Clr] = r1			//Reset watchdog
				Int IRQ,FIQ

//for Debug
//		Call	F_FlashTest            //  Test Flash SPR1024
//		JMP		PlayLoop
//debug end 

///////////////////////////////////////////////////////////////////////////////////////////////////////////////
MainLoop:
				 R1 =    0x55AA;                        
		        [P_Watchdog_Clr] = R1;
				call	F_KeyScand
				R1 = [RW_KeyCode]
				test    R1,0xFF
				JZ		MainLoop
				test	R1,0x3         // IOA0,IOA1 Record and Play, IOA2 play internal Rom Data
							   
				JZ		?next0
				goto	?L_StartRecord
		?next0:	
				test	r1,0x4
				jz		?next1
				goto	?L_PlayInternalROM
		?next1:
				goto		?L_PlayS530





////////////////////////////////////////////////
//         keyscand and record loop
///////////////////////////////////////////////
?L_StartRecord:
		R1 = 0
		[RW_Flag] = R1
		CALL	F_SACM_DVR1600_Initial;
		call	F_Record_Initial
		r1 = 0;
		r2 = 0;
		r3	=	1			//bit rate 12kbps		
		//r3  =3;			// bit rate 16kbps
		call		F_SACM_DVR1600_Rec;		//call DVR1600 start record;
?l_RecordMainLoop1:	
		 R1 =  0x55AA;                        
        [P_Watchdog_Clr] = R1;
        
		call    F_SACM_DVR1600_ServiceLoop;	
		R1 = [RW_Flag]
		test	R1,C_EndAddrFlag   // the buffer have been over
		JNZ	   ?ExitRecordLoop
		call	F_KeyScand
		R1 = [RW_KeyCode]
		test    R1,0xFF
		JZ		?l_RecordMainLoop1
?ExitRecordLoop:
        call		F_SACM_DVR1600_Stop;
?l_RecordMainLoop2:	
		 R1 =    0x55AA;                        
        [P_Watchdog_Clr] = R1;
		call    F_SACM_DVR1600_ServiceLoop;	
		R1 = [RW_Flag]
		test	R1,C_RecEndFlag
		JZ		?l_RecordMainLoop2
////////////////////////////////////////////////
//         keyscand and play Record loop
///////////////////////////////////////////////
		R1 = [RW_Length]
		[RW_Long] = R1

?l_PlayRecordLoop:		
		R1 = 0
		[RW_Flag] = R1
		call	F_Play_Initial
		r1 = 15;
		call		F_SACM_DVR1600_Volume;			// set Volume ,15 max;
		r1 = -1;
		r2 = 3;
		R3 = 3
		call		F_SACM_DVR1600_Play;
?PlayRecordLoop:
		r1 =	0x55aa
		[P_Watchdog_Clr] = r1						//Reset watchdog
        call    F_SACM_DVR1600_ServiceLoop;			//write data from ADC to SDARM;
		R1 = [RW_Flag]
		Test R1, C_EndAddrFlag
        JNZ		?AutoStopPlayRecord
		call	F_KeyScand
		R1 = [RW_KeyCode]
		test    R1,0xFF
		JZ		?PlayRecordLoop
?ExitPlayLoop:
		call	F_SACM_DVR1600_Stop
		GoTo		MainLoop
?AutoStopPlayRecord:

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久aaaa樱花| 国产精品麻豆网站| 亚洲美女偷拍久久| 国产不卡高清在线观看视频| 欧美日韩aaa| 亚洲男同性恋视频| 欧美伦理视频网站| 日韩av中文在线观看| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 中文字幕一区二区三区av| av在线免费不卡| 亚洲免费色视频| 欧美中文字幕一区二区三区| 亚洲国产一区二区视频| 日韩视频免费观看高清完整版| 免费在线观看视频一区| 精品国产a毛片| 91在线丨porny丨国产| 日韩精品亚洲一区二区三区免费| 欧美大白屁股肥臀xxxxxx| 成人性生交大片免费看视频在线 | 丁香婷婷综合激情五月色| 欧美国产禁国产网站cc| 欧美在线观看视频在线| 久久66热re国产| 18成人在线视频| 日韩欧美国产一区二区在线播放 | 丁香激情综合五月| 亚洲成精国产精品女| 国产网站一区二区| 欧美精品v国产精品v日韩精品| 风间由美一区二区三区在线观看| 日韩成人免费电影| 午夜精品一区二区三区电影天堂 | 欧美日韩国产另类不卡| 丁香婷婷综合五月| 精品中文av资源站在线观看| 亚洲男同1069视频| 久久精品人人做| 日韩欧美高清一区| 欧美一区二区精美| 欧美男同性恋视频网站| 欧美在线不卡一区| 色哟哟国产精品免费观看| 成人精品一区二区三区四区| 国产一区在线观看麻豆| 麻豆国产精品777777在线| 天天色图综合网| 麻豆91在线看| 久久99精品国产| 蜜桃免费网站一区二区三区| 日本欧美一区二区三区乱码| 亚洲综合色视频| 舔着乳尖日韩一区| 久久精品噜噜噜成人88aⅴ| 麻豆免费精品视频| 国内精品伊人久久久久av影院| 美腿丝袜亚洲综合| 国产精品亚洲а∨天堂免在线| 欧美a级一区二区| 蜜桃视频免费观看一区| 国产乱子伦视频一区二区三区 | 免费人成在线不卡| 国产呦精品一区二区三区网站| 六月丁香综合在线视频| 日韩高清欧美激情| 国产69精品久久久久毛片| www.亚洲精品| 欧美一区二区免费视频| 亚洲国产精品成人久久综合一区| 亚洲啪啪综合av一区二区三区| 午夜视频在线观看一区二区三区| 精品无人码麻豆乱码1区2区| 欧美日韩一区二区三区在线| 中文在线一区二区| 国产一本一道久久香蕉| 欧美成人精品福利| 日韩电影一区二区三区| 成人av电影在线网| 久久影音资源网| 奇米综合一区二区三区精品视频| fc2成人免费人成在线观看播放 | 国产精品456| 日韩一二在线观看| 亚洲成人精品影院| 色综合天天做天天爱| 久久人人爽人人爽| 韩国v欧美v日本v亚洲v| 91精品国产综合久久福利| 亚洲国产视频一区二区| 色噜噜狠狠色综合中国| 国产精品久久国产精麻豆99网站| 经典一区二区三区| 日韩三级高清在线| 麻豆91在线观看| 日韩一级二级三级精品视频| 亚洲综合另类小说| 99re这里只有精品视频首页| 国产精品久线在线观看| 色老汉av一区二区三区| 中文字幕一区二区三区蜜月| 92国产精品观看| 亚洲高清免费观看| 欧美成人免费网站| 国产不卡视频在线播放| 国产亚洲欧美激情| 91免费观看在线| 亚洲午夜精品一区二区三区他趣| 欧美日韩美女一区二区| 青娱乐精品在线视频| 国产精品无人区| 欧美亚洲一区三区| 精品亚洲aⅴ乱码一区二区三区| 欧美国产精品一区二区三区| 一本久久综合亚洲鲁鲁五月天| 亚洲蜜臀av乱码久久精品蜜桃| 777a∨成人精品桃花网| 久久97超碰国产精品超碰| 亚洲女同一区二区| 国产精品免费久久| 久久综合九色综合欧美98| 成人高清伦理免费影院在线观看| 亚洲一区在线播放| |精品福利一区二区三区| 欧美精品一区二区三区在线播放| 国产麻豆91精品| 日韩成人精品在线观看| 最新热久久免费视频| 久久精品一区蜜桃臀影院| 欧美在线一二三| 91老司机福利 在线| 成人在线视频一区| 国产在线精品免费| 麻豆精品一区二区三区| 亚洲成人av在线电影| 亚洲免费观看高清完整版在线观看| 欧美一区二区三区四区久久| 色狠狠一区二区| 在线观看日韩av先锋影音电影院| 成人免费观看av| 国产不卡在线一区| 99久久婷婷国产精品综合| 极品少妇一区二区| 国产一区二区女| 国产中文一区二区三区| 韩国理伦片一区二区三区在线播放| 午夜一区二区三区在线观看| 午夜伦欧美伦电影理论片| 亚洲午夜久久久久中文字幕久| 一区二区三区不卡视频| 最新高清无码专区| 一区二区三区四区蜜桃| 一区二区三区不卡在线观看| 日韩在线a电影| 国产精品1区二区.| 99久久伊人精品| 欧美精品亚洲二区| 欧美一级片免费看| 久久婷婷成人综合色| 国产丝袜美腿一区二区三区| 亚洲综合网站在线观看| 日韩av不卡在线观看| 国产精品18久久久久久久久 | 粉嫩av一区二区三区在线播放| 成a人片亚洲日本久久| 欧美一区二区三区视频| 中文字幕综合网| 国产伦精品一区二区三区免费迷| 成人午夜免费av| 久久亚洲精品小早川怜子| 首页亚洲欧美制服丝腿| 在线免费观看日韩欧美| 亚洲女人小视频在线观看| 91丨九色丨蝌蚪丨老版| 国产午夜久久久久| 福利一区二区在线观看| 久久久久久久久久久久久久久99| 精品福利一区二区三区| 91精品国产综合久久久蜜臀粉嫩 | 中文字幕日韩一区二区| 91精品国产综合久久精品图片| 欧美日韩一区二区三区四区 | 69成人精品免费视频| 全国精品久久少妇| 国产精品人妖ts系列视频| 国产凹凸在线观看一区二区| 久久精品一级爱片| 福利一区福利二区| 亚洲一区二区四区蜜桃| 欧美四级电影网| 免费三级欧美电影| 久久久欧美精品sm网站| 成人黄色a**站在线观看| 亚洲视频 欧洲视频| 欧美挠脚心视频网站| 国产综合色视频| 国产精品美女久久福利网站| 99国产一区二区三精品乱码| 偷拍一区二区三区四区| 久久久亚洲国产美女国产盗摄|