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

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

?? hardware_old.asm

?? 本系統實現了一種具有語音播報、語音提示的高性能、高智能的實用型遠距離多 路數據采集系統。 關鍵詞: SPCE061A
?? ASM
?? 第 1 頁 / 共 2 頁
字號:
//========================================================================================
// Progarm: Standard function definition
// Writen by: Andy
//
// Last modified date: 
// 		2000/06/23: first version
//		2000/07/15: modified
//		2000/07/24: modified
//
// Note: update hardware.inc with hardware.asm synchorously.
//	
//
//========================================================================================

.PUBLIC F_SP_Send_PWM;
.PUBLIC F_SP_Send_DAC1;
.PUBLIC F_SP_Send_DAC2;
.PUBLIC F_SP_Send_Two_DAC;
.PUBLIC F_SP_Send_Out;
.public F_SP_Get_ADC;
.PUBLIC F_SP_Set_P_TimerA_Ctrl	
.PUBLIC F_SP_Set_P_TimerA_Data
.PUBLIC F_SP_Set_P_TimerB_Ctrl	
.PUBLIC F_SP_Set_P_TimerB_Data
.PUBLIC F_SP_Set_P_INT_Ctrl
.PUBLIC F_SP_Set_P_INT_Clear
.PUBLIC F_SP_Set_P_SystemClock
.PUBLIC F_SP_Set_P_DAC_Ctrl
.PUBLIC F_SP_Set_P_ADC_Ctrl
.PUBLIC F_SP_Write_INT_Status;        
.PUBLIC F_SP_Read_INT_Status;				
.public	F_SP_RampUpDAC1;
.public	F_SP_RampDnDAC1;
.public	F_SP_RampUpDAC2;
.public	F_SP_RampDnDAC2;
.public	_SP_RampUpDAC1;
.public	_SP_RampDnDAC1;
.public	_SP_RampUpDAC2;
.public	_SP_RampDnDAC2;
.public F_SP_Delay;
.public	F_SP_InitQueue;
.public	F_SP_ReadQueue;
.public	F_SP_WriteQueue;	
.public F_SP_TestQueue;
.PUBLIC _SP_Export; 
.PUBLIC	_SP_Import;
.PUBLIC _SP_Init_IOB;
.PUBLIC _SP_Init_IOA;

.public	_SP_GetResource	
//////////////////////////////////////////////////////////////////
// Define Area for I/O									
//////////////////////////////////////////////////////////////////
.DEFINE	P_IOA_Data   		0x7000;        // Write Data into data register and read from IOA pad
.DEFINE P_IOA_Buffer        0x7001;        // Write Data into buffer register and read from buffer register
.DEFINE P_IOA_Dir           0x7002;        // Direction vector for IOA
.DEFINE P_IOA_Attrib        0x7003;        // Attribute vector for IOA
.DEFINE P_IOA_Latch         0x7004;        // Latch PortA data for key change wake-up

.DEFINE P_IOB_Data         	0x7005;        // Write Data into the data register and read from IOB pad
.DEFINE P_IOB_Buffer        0x7006;        // Write Data into buffer register and read from buffer register
.DEFINE P_IOB_Dir           0x7007;        // Direction vector for IOB
.DEFINE P_IOB_Attrib        0x7008;        // Attribute vector for IOB

.DEFINE P_FeedBack          0x7009;        // Clock form external R,C
.DEFINE P_TimerA_Data       0x700A;        // Data port for TimerA 
.DEFINE P_TimerA_Ctrl       0x700B;        // Control Port for TimerA
.DEFINE P_TimerB_Data       0x700C;        // Data port for TimerB
.DEFINE P_TimerB_Ctrl       0x700D;        // Control Port for TimerB
.DEFINE P_TimeBase_Setup    0x700E;        // TimerBase Freq. Set
.DEFINE P_TimeBase_Clear	0x700F;		   // Reset Timerbase counter
.DEFINE P_INT_Ctrl          0x7010;        // Control port for interrupt source
.DEFINE P_INT_Clear         0x7011;        // Clear interrupt source
.DEFINE P_Watchdog_Clear    0x7012;        // Watchdog Reset
.DEFINE P_SystemClock       0x7013;        // Change system clock frequency(include go to standby mode)


//... PA6442 New version MC52A (For EC-03)....
.DEFINE P_ADC 	        	0x7014;        	// Data Port for AD
.DEFINE P_ADC_Ctrl          0x7015;        	// Control Port for AD control
.DEFINE P_ADC_Status        0x7015;        	// AD Port Status
.DEFINE P_DAC2              0x7016;        	// Data Port for DAC2
.DEFINE P_PWM               0x7016;        	// Data Port for PWM
.DEFINE P_DAC1	        	0x7017;        	// Data Port for DAC1
.DEFINE P_DAC_Ctrl			0x702A;			// Control Port for two DAC and audio output mode
//............................................

.DEFINE P_IR_Ctrl			0x7018;			// Control Port for IR
.DEFINE P_LVD_Ctrl          0x7019;        	// Control Port for LVD

.DEFINE P_SIO_Addr_Low		0x701B;			// Address Port low
.DEFINE P_SIO_Addr_Mid		0x701C;			// Address Port middle
.DEFINE P_SIO_Addr_High	 	0x701D;			// Address Port high
.DEFINE P_SIO_Ctrl			0x701E;			// Control Port
.DEFINE P_SIO_Start			0x701F;			// Start port for serial interface
.DEFINE P_SIO_Stop			0x7020;			// Stop port for serial interface

.DEFINE P_UART_Command1		 0x7021;		// Command1 Port for UART
.DEFINE P_UART_Command2		 0x7022;		// Command2 Port for UART
.DEFINE P_UART_Data			 0x7023; 		// Data Port for UART
.DEFINE	P_UART_BaudScalarLow 0x7024;		// Set Baud Rate scalar low
.DEFINE	P_UART_BaudScalarHigh 0x7025;		// Set Baud Rate scalar high


// Define for P_INT_Ctrl 
.DEFINE C_IRQ_TMB2              0x0001;        //Timer B IRQ6
.DEFINE C_IRQ_TMB1              0x0002;        //Timer A IRQ6
.DEFINE C_IRQ_2Hz               0x0004;        //2Hz IRQ5
.DEFINE C_IRQ_4Hz               0x0008;        //4Hz IRQ5
.DEFINE C_IRQ_1024Hz            0x0010;        //1024Hz IRQ4
.DEFINE C_IRQ_2048Hz            0x0020;        //2048 IRQ4
.DEFINE C_IRQ_4096Hz            0x0040;        //4096 IRQ4
.DEFINE C_IRQ_KeyChange         0x0080;        //Key Change IRQ3
.DEFINE C_IRQ_Ext1              0x0100;        //Ext1 IRQ3
.DEFINE C_IRQ_Ext2              0x0200;        //Ext2 IRQ3
.DEFINE C_IRQ_TimerB            0x0400;        //Timer B IRQ2
.DEFINE C_FIQ_TimerB            0x0800;        //Timer B FIQ
.DEFINE C_IRQ_TimerA            0x1000;        //Timer A IRQ1
.DEFINE C_FIQ_TimerA            0x2000;        //Timer A FIQ
.DEFINE C_IRQ_PWM               0x4000;        //PWM IRQ0
.DEFINE C_FIQ_PWM               0x8000;        //PWM FIQ

// Define for P_TimerA_Ctrl, P_TimerB_Ctrl                               
.DEFINE	C_Fosc_2				0x0000;			// Timer A
.DEFINE	C_Fosc_256		   	 	0x0001;			//
.DEFINE	C_32768Hz				0x0002;			//
.DEFINE	C_8192Hz				0x0003;			//
.DEFINE	C_4096Hz				0x0004;			//
.DEFINE	C_A1					0x0005;			//
.DEFINE C_A0					0x0006;			//
.DEFINE C_Ext1					0x0007;			//

.DEFINE	C_2048Hz				0x0000;			//
.DEFINE	C_1024Hz				0x0008;			//
.DEFINE	C_256Hz					0x0010;			//
.DEFINE	C_TMB1Hz				0x0018;			//
.DEFINE	C_4Hz					0x0020;			//
.DEFINE	C_2Hz					0x0028;			//
.DEFINE	C_B1					0x0030;			//
.DEFINE	C_Ext2					0x0038;			//

.DEFINE	C_Off					0x0000;			//
.DEFINE C_D1					0x0040;			//
.DEFINE C_D2					0x0080;			//
.DEFINE C_D3					0x00C0;			//
.DEFINE C_D4					0x0100;			//
.DEFINE C_D5					0x0140;			//
.DEFINE C_D6					0x0180;			//
.DEFINE C_D7					0x01C0;			//
.DEFINE C_D8					0x0200;			//
.DEFINE C_D9					0x0240;			//
.DEFINE C_D10					0x0280;			//
.DEFINE C_D11					0x02C0;			//
.DEFINE C_D12					0x0300;			//
.DEFINE C_D13					0x0340;			//
.DEFINE C_D14					0x0380;			//
.DEFINE C_TA_Div_2				0x03C0;			// Timer A

.DEFINE C_TB_Div_2				0x03C0;			// Timer B

// Define for P_SystemClock
.DEFINE C_Fosc					0x0000;			// b3..b0
.DEFINE C_Fosc_Div_2			0x0001;			//
.DEFINE C_Fosc_Div_4			0x0002;			//
.DEFINE C_Fosc_Div_8			0x0003;			// (default)
.DEFINE C_Fosc_Div_16			0x0004;			//
.DEFINE C_Fosc_Div_32			0x0005;			//
.DEFINE C_Fosc_Div_64			0x0006;			//
.DEFINE C_Sleep					0x0007;		 	//

.DEFINE	C_32K_Work				0x0000;			// b4
.DEFINE C_32K_Off				0x0000;			// 
.DEFINE C_StrongMode			0x0000;			// b5
.DEFINE C_AutoMode				0x0000;			//

// Define for P_AD_Ctrl
.DEFINE	C_AD					0x0001;			//
.DEFINE C_DA					0x0000;			//
.DEFINE C_MIC					0x0000;			//
.DEFINE C_LINE					0x0002;			//

// Define for P_DA_Ctrl
.DEFINE C_PushPull				0x0000;			// b0, (default) 
.DEFINE C_DoubleEnd				0x0001;			// b0
.DEFINE	C_DAC_Mode				0x0000;			// b1, (default)
.DEFINE C_PWM_Mode				0x0002;			// b1

.DEFINE	C_D1_Direct				0x0000;			// DAC1 latch
.DEFINE C_D1_LatchA				0x0008;			// 
.DEFINE C_D1_LatchB				0x0010;			//
.DEFINE C_D1_LatchAB			0x0018;			//

.DEFINE	C_D2_Direct				0x0000;			// DAC2 latch
.DEFINE C_D2_LatchA				0x0020;			// 
.DEFINE C_D2_LatchB				0x0040;			//
.DEFINE C_D2_LatchAB			0x00C0;			//

// Define for P_LVD_Ctrl
.DEFINE C_LVD24V				0x0000;			// LVD = 2.4V 
.DEFINE C_LVD28V				0x0001;			// LVD = 2.8V
.DEFINE C_LVD32V				0x0002;			// LVD = 3.2V
.DEFINE C_LVD36V				0x0003;			// LVD = 3.6V


.IRAM
.public	R_InterruptStatus;					//
.VAR	R_InterruptStatus = 0;					// for feature using
.public R_FIQTemp;
.VAR	R_FIQTemp;							// for temparity used in FIQ interrupt routine


.define C_QueueSize 50						// update hardware.inc synchoroneously
.VAR 	R_Queue;
.DW		C_QueueSize-1	DUP(0);
.VAR	R_ReadIndex;
.VAR	R_WriteIndex;

.CODE

//////////////////////////////////////////////////////////////////
// Function: Send data to speech driver(PWM/DAC)                                   
// Destory register: r4                                            
//////////////////////////////////////////////////////////////////        

F_SP_Send_PWM:    							//
       [P_PWM] = r4;						//
       retf;           						//

F_SP_Send_DAC1:								//
		[P_DAC1] = r4;						//
		retf;        						//
F_SP_Send_DAC2:								//
		[P_DAC2] = r4;						//
		retf;        						//
F_SP_Send_Two_DAC:
		[P_DAC1] = r4;						//
		[P_DAC2] = r4;						//
		retf;

//.DEFINE	F_SP_Send_Out  F_SP_Send_PWM;
//.DEFINE	F_SP_Send_Out  F_SP_Send_DAC1;
//.DEFINE	F_SP_Send_Out  F_SP_Send_DAC2;
.DEFINE	F_SP_Send_Out  F_SP_Send_Two_DAC;		// Send to both DAC1 and DAC2


F_SP_Get_ADC:
		R4 = [P_ADC]
		retf


F_SP_Set_P_TimerA_Ctrl:
	[P_TimerA_Ctrl] = R1
	RETF
F_SP_Set_P_TimerA_Data:
	[P_TimerA_Data] = R1
	RETF
F_SP_Set_P_TimerB_Ctrl:
	[P_TimerB_Ctrl] = R1
	RETF
F_SP_Set_P_TimerB_Data:
	[P_TimerB_Data] = R1
	RETF

F_SP_Set_P_INT_Ctrl:
	[P_INT_Ctrl] = R1
	RETF
F_SP_Set_P_INT_Clear:
	[P_INT_Clear] = R1
	RETF

F_SP_Set_P_SystemClock:
	[P_SystemClock] = R1
	RETF

F_SP_Set_P_DAC_Ctrl:
	[P_DAC_Ctrl] = R1
	RETF	

F_SP_Set_P_ADC_Ctrl:
	[P_ADC_Ctrl] = R1
	RETF

//////////////////////////////////////////////////////////////////
// Function: Interrupt vector setting
// Used register: R1                                                                                    
////////////////////////////////////////////////////////////////// 

F_SP_Write_INT_Status:						//write interrupt status
        [R_InterruptStatus] = R1;       	//
        retf;								
        
F_SP_Read_INT_Status:						//read interrupt status
        R1 = [R_InterruptStatus];       	//
        retf;



////////////////////////////////////////////////////////////////// 
//
//////////////////////////////////////////////////////////////////    
_SP_Init_IOA: .PROC
		PUSH BP,BP TO [SP];
        BP = SP + 1;
		PUSH R1,R1 TO [SP];
		R1 = [BP+3];						// Port direction
		[P_IOA_Dir] = R1;
		R1 = [BP+4];
		[P_IOA_Data] = R1;
		R1 = [BP+5];
		[P_IOA_Attrib] = R1;
		
		POP R1,R1 FROM [SP];
        POP BP,BP FROM [SP];
        RETF;
		.ENDP

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99视频精品免费视频| 粉嫩aⅴ一区二区三区四区五区| 久久久亚洲国产美女国产盗摄| 欧美日韩激情一区二区| 91精品91久久久中77777| 91在线国内视频| 一本大道久久a久久综合婷婷| av在线一区二区| 91免费视频大全| 91激情五月电影| 欧美日韩在线直播| 91精品国产91久久久久久最新毛片| 51精品视频一区二区三区| 欧美一区午夜精品| 337p粉嫩大胆噜噜噜噜噜91av| 26uuu精品一区二区| 国产欧美一区二区三区鸳鸯浴| 欧美高清一级片在线观看| 国产精品素人视频| 一区二区三区在线不卡| 日韩和欧美一区二区三区| 日韩中文字幕区一区有砖一区| 男女视频一区二区| 国产一区二区三区av电影 | 视频一区二区中文字幕| 午夜视频在线观看一区二区三区| 日本视频一区二区| 国产精品白丝jk白祙喷水网站| 99精品久久99久久久久| 欧美日韩三级一区| 久久久精品综合| 亚洲精品国产a久久久久久| 日本美女一区二区| 国产馆精品极品| 色猫猫国产区一区二在线视频| 欧美日韩国产天堂| 国产亚洲一本大道中文在线| 亚洲狠狠丁香婷婷综合久久久| 丝袜亚洲另类丝袜在线| 成人免费观看av| 在线播放国产精品二区一二区四区| 精品久久久久久久久久久院品网 | 韩国女主播成人在线| 99久久婷婷国产综合精品| 5858s免费视频成人| 国产精品福利影院| 久久国产精品72免费观看| 91色乱码一区二区三区| 久久色中文字幕| 亚洲一区二区高清| 国产成人啪免费观看软件| 欧美精品v国产精品v日韩精品| 欧美国产一区二区在线观看 | 日韩欧美高清dvd碟片| 亚洲欧美日韩中文播放| 国产精品夜夜嗨| 337p亚洲精品色噜噜狠狠| 亚洲人妖av一区二区| 国产精品一区二区黑丝| 欧美喷水一区二区| 亚洲视频1区2区| 国产不卡在线视频| 欧美色区777第一页| 亚洲人成亚洲人成在线观看图片| 精品一区二区成人精品| 7777女厕盗摄久久久| 一区二区三区国产精品| 91玉足脚交白嫩脚丫在线播放| 2024国产精品| 激情五月激情综合网| 欧美一区日韩一区| 日本成人在线不卡视频| 欧美精品日韩综合在线| 亚洲国产欧美一区二区三区丁香婷| a级高清视频欧美日韩| 欧美激情在线免费观看| 国产suv精品一区二区883| 精品盗摄一区二区三区| 精品无人区卡一卡二卡三乱码免费卡| 91精品国产综合久久福利| 日本欧美加勒比视频| 欧美一级午夜免费电影| 日本三级亚洲精品| 26uuu亚洲综合色| 国产精品夜夜爽| 中文字幕一区二区三区色视频 | 中文字幕亚洲综合久久菠萝蜜| 国产成人免费网站| 国产精品入口麻豆九色| av一区二区久久| 亚洲精选在线视频| 欧美久久婷婷综合色| 日韩国产精品久久| 久久久久久影视| 成人av影院在线| 亚洲一区二区视频在线观看| 91久久久免费一区二区| 日韩av一级片| 久久综合国产精品| 91偷拍与自偷拍精品| 亚洲18影院在线观看| 精品噜噜噜噜久久久久久久久试看 | 国产精品中文字幕一区二区三区| 国产亚洲污的网站| 色一区在线观看| 久久国产视频网| 国产精品久久久久久久久图文区| 色香色香欲天天天影视综合网| 日韩福利电影在线| 欧美激情一区二区三区全黄| 在线观看免费视频综合| 九色综合国产一区二区三区| 国产精品欧美一区喷水| 在线成人高清不卡| eeuss鲁片一区二区三区在线看| 亚洲国产aⅴ天堂久久| 久久无码av三级| 在线看国产一区二区| 国产精品综合在线视频| 亚洲综合在线五月| 国产无人区一区二区三区| 欧美日韩亚洲国产综合| 成人免费视频网站在线观看| 三级亚洲高清视频| 亚洲精品国产一区二区三区四区在线| 欧美不卡在线视频| 欧美日韩极品在线观看一区| 国产成人精品三级| 久久精品国产亚洲高清剧情介绍| 亚洲欧美国产三级| 日本一区二区久久| 精品卡一卡二卡三卡四在线| 欧美日韩成人综合天天影院 | 人禽交欧美网站| 一区二区三区四区在线免费观看 | 日本aⅴ亚洲精品中文乱码| 亚洲美女区一区| 国产日韩成人精品| 精品噜噜噜噜久久久久久久久试看| 欧美综合色免费| 色狠狠综合天天综合综合| 国产99久久久国产精品免费看| 美女mm1313爽爽久久久蜜臀| 午夜久久久久久久久久一区二区| 国产精品美女久久久久aⅴ| 精品国产乱码久久| 日韩精品中文字幕一区二区三区 | 色8久久精品久久久久久蜜| 成人精品国产免费网站| 国产馆精品极品| 豆国产96在线|亚洲| 国产成人免费在线| 国产91精品精华液一区二区三区| 国产麻豆精品95视频| 激情欧美一区二区| 国产乱码精品一区二区三区av| 久久99国产精品尤物| 麻豆成人久久精品二区三区红 | 久久久久久久久久久久电影 | 色综合久久久久久久久久久| yourporn久久国产精品| 本田岬高潮一区二区三区| 成人av综合在线| 99久久免费视频.com| 色婷婷久久久亚洲一区二区三区 | 国产成人在线网站| 国产成人综合视频| 99麻豆久久久国产精品免费| 91在线观看免费视频| 91黄色免费网站| 欧美一级一区二区| 国产亚洲欧洲997久久综合 | 在线观看一区日韩| 91精品一区二区三区久久久久久 | 中文字幕制服丝袜成人av| 亚洲视频一二区| 亚洲午夜电影在线| 久久99精品久久久| 高清不卡在线观看| 欧美色倩网站大全免费| 日韩一区二区三区电影| 国产日韩精品一区| 亚洲午夜精品在线| 国产一区日韩二区欧美三区| 国产不卡视频一区二区三区| 色综合久久久久综合99| 日韩欧美一区在线| 日韩毛片在线免费观看| 日日摸夜夜添夜夜添亚洲女人| 国产一区二区三区精品欧美日韩一区二区三区 | 欧美va天堂va视频va在线| 久久久久国色av免费看影院| 亚洲精选免费视频| 精品在线一区二区三区| 日本精品一级二级| 久久久久久夜精品精品免费| 一区2区3区在线看| 国产成人精品亚洲777人妖 | 99久久精品国产观看| 日韩欧美国产电影|