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

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

?? key.asm

?? 電壓控制程序,符合各種設備需要,核心程序,IBm專屬
?? ASM
字號:
//======================================================
//  The information contained herein is the exclusive property of
//  Sunnnorth Technology Co. And shall not be distributed, reproduced,
//  or disclosed in whole in part without prior written permission.
//             (C) COPYRIGHT 2003  SUNNORTH TECHNOLOGY CO.
//                          ALL RIGHTS RESERVED
//  The entire notice above must be reproduced on all authorized copies.
//========================================================

//============================================================
// 文件名稱:Key.asm
// 實現功能:1*8按鍵掃描程序,適用于高電平有效的按鍵電路
//			 使用IRQ6_TMB2中斷(128Hz)
// 日期:    2005/6/18
//============================================================

//================================================
//	按鍵去抖動時間設定,單位為1/128秒
//================================================
.DEFINE Key_Debounce	4			//(4/128)秒=31ms
//================================================
//	持續按鍵時間間隔設定,單位1/128秒
//================================================
.DEFINE Key_TimeOut		64			//(64/128)秒=0.5s

//================================================
//	按鍵使用端口設定
//================================================
.DEFINE Key_IO_Port			0		// 若按鍵使用IOA口則采用該行定義
//.DEFINE Key_IO_Port			1		// 若按鍵使用IOB口則采用該行定義

.DEFINE Key_IO_HighByte		0		// 若按鍵使用IO口低8位則采用該行定義
//.DEFINE Key_IO_HighByte		1		// 若按鍵使用IO口高8位則采用該行定義

.DEFINE Key_ENB				0x0100	// IOA8作為按鍵公共端

/////-----       不必修改下面的定義	    -----/////
.IF Key_IO_HighByte==0
	.DEFINE Key_ALL			0x00ff		
.ELSE
	.DEFINE Key_ALL			0xff00
.ENDIF
/////-----       不必修改下面的定義	    -----/////
.IF Key_IO_Port==0
	.DEFINE P_Key_Data		0x7000
	.DEFINE P_Key_Buf		0x7001
	.DEFINE P_Key_Dir		0x7002
	.DEFINE P_Key_Attrib	0x7003
.ELSE
	.DEFINE P_Key_Data		0x7005
	.DEFINE P_Key_Buf		0x7006
	.DEFINE P_Key_Dir		0x7007
	.DEFINE P_Key_Attrib	0x7008
.ENDIF


.DEFINE P_INT_Mask		0x702d
.DEFINE P_TimeBase_Setup	0x700e
.DEFINE C_IRQ6_TMB2		0x0001
.DEFINE C_TMB2_128Hz	0x0000

.PUBLIC F_Key_Init
.PUBLIC _Key_Init
.PUBLIC F_Key_Scan
.PUBLIC _Key_Scan
.PUBLIC F_Key_Get
.PUBLIC _Key_Get

.RAM
.VAR KeyCode						// 存儲獲得的鍵值
.VAR ScanCnt						// 該變量用來表示按鍵持續時間
.VAR KeyUp							// 按鍵是否處于抬起狀態

.CODE
//======================================================
// 函數名稱:	Key_Init
// C調用:		void Key_Init(void)
// 匯編調用:	F_Key_Init
// 實現功能:   初始化按鍵掃描程序,該函數將開啟IRQ6_TMB2中斷
// 入口參數:	無
// 出口參數:	無
// 破壞寄存器:	無
//======================================================
F_Key_Init:
_Key_Init:
	push r1 to [sp]
	INT Off
	r1 = [P_Key_Dir]				// 初始化IO為下拉輸入
	r1 &= ~Key_ALL
	r1 |= Key_ENB
	[P_Key_Dir] = r1
	r1 = [P_Key_Attrib]
	r1 &= ~Key_ALL
	r1 |= Key_ENB
	[P_Key_Attrib] = r1
	
	r1 = [P_Key_Buf]
	r1 |= Key_ENB
	[P_Key_Buf] = r1

	r1 = 0
	[ScanCnt] = r1					// 初始化變量
	[KeyCode] = r1
	[KeyUp] = r1
	r1 = C_TMB2_128Hz				// 開啟IRQ6_TMB2(128Hz)中斷
	[P_TimeBase_Setup] = r1
	r1 = [P_INT_Mask]
	r1 |= C_IRQ6_TMB2
	[P_INT_Mask] = r1
	INT FIQ,IRQ
	pop r1 from [sp]
retf

//======================================================
// 函數名稱:	Key_Scan
// C調用:		void Key_Scan(void)
// 匯編調用:	F_Key_Scan
// 實現功能:   按鍵掃描,該函數被IRQ6_TMB2中斷服務程序調用
// 入口參數:	無
// 出口參數:	無
// 破壞寄存器:	無
//======================================================
F_Key_Scan:
_Key_Scan:
	push r1,r2 to [sp]
	r2 = [P_Key_Data]				// 獲取IO端口狀態
	r2 &= Key_ALL
	jnz ?L_ScanKey_Down				// 判斷當前是否有鍵按下
?L_ScanKey_Up:
	r1 = 1							// 如果按鍵處于抬起狀態則KeyUp置1
	[KeyUp] = r1
	jmp ?L_ScanKey_Exit
?L_ScanKey_Down:
	r1 = 0							// KeyUp置0
	[KeyUp] = r1
.if Key_IO_HighByte
	r2 = r2 lsr 4
	r2 = r2 lsr 4
.endif
	cmp r2,[KeyCode]				// 本次得到的鍵值與上次得到的鍵值比較
	je	?L_ScanKey_Cont
?L_ScanKey_New:						// 如果與上次鍵值不同則重置鍵值
	[KeyCode] = r2
	r1 = 1							// 重新記錄鍵持續按下的時間
	[ScanCnt] = r1
	jmp ?L_ScanKey_Exit
?L_ScanKey_Cont:					// 如果此次鍵值與上次鍵值相同
	r1 = [ScanCnt]					// 更新按鍵持續時間(ScanCnt加1)
	r1 += 1
	[ScanCnt] = r1
?L_ScanKey_Exit:
	pop r1,r2 from [sp]
retf

//======================================================
// 函數名稱:	Key_Get
// C調用:		unsigned Key_Get(void)
// 匯編調用:	F_Key_Get
// 實現功能:   獲取鍵值
// 入口參數:	無
// 出口參數:	r1 - 獲得的鍵值
// 破壞寄存器:	r1
//======================================================
F_Key_Get:
_Key_Get:
	INT OFF
	push r2 to [sp]

	r2 = [ScanCnt]
	cmp r2,Key_Debounce				// 如果按鍵持續時間小于Key_Debounce
	jb	?L_GetKey_NoKey				// 則認為當前沒有鍵按下
	cmp r2,Key_TimeOut				// 如果按鍵持續時間大于Key_TimeOut
	jnb ?L_GetKey					// 則認為發生了一次按鍵
	r2 = [KeyUp]					// 如果按鍵持續時間在Key_Debounce與Key_TimeOut之間
	jnz ?L_GetKey					// 如果按鍵處于抬起狀態則認為發生了一次按鍵
?L_GetKey_NoKey:
	r1 = 0							// 沒有按鍵則返回0
	jmp ?L_GetKey_Exit
?L_GetKey:
	r1 = [KeyCode]					// 有按鍵則返回鍵值
	r2 = 0
	[KeyCode] = r2					// 重新初始化變量
	[ScanCnt] = r2
	[KeyUp] = r2
?L_GetKey_Exit:
	INT FIQ,IRQ
	pop r2 from [sp]
retf

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人免费看的视频| 久久99热99| 另类专区欧美蜜桃臀第一页| 成人免费高清视频在线观看| 这里是久久伊人| 亚洲免费在线观看| 国产精品12区| 日韩欧美第一区| 一区二区三区精品在线| 成熟亚洲日本毛茸茸凸凹| 欧美一区二区网站| 亚洲一区中文在线| 99久久精品免费看| 中文字幕第一页久久| 毛片不卡一区二区| 欧美高清一级片在线| 亚洲无人区一区| 欧美综合一区二区| 一区二区三区影院| 色av一区二区| 亚洲欧美日韩国产综合| 成人激情av网| 中文字幕亚洲一区二区av在线| 国产一区二区三区四区五区入口 | 精品国产青草久久久久福利| 亚洲高清在线精品| 欧美性受xxxx黑人xyx| 亚洲乱码日产精品bd| 97se狠狠狠综合亚洲狠狠| 国产精品青草综合久久久久99| 国产黑丝在线一区二区三区| 久久欧美一区二区| 国内精品伊人久久久久av影院| 日韩三级免费观看| 久久国产三级精品| 国产色91在线| 成人精品视频.| 亚洲精品一二三区| 欧美三电影在线| 日韩精品午夜视频| 精品sm捆绑视频| 国产成人在线视频免费播放| 国产欧美日韩另类一区| 波多野结衣亚洲一区| 自拍偷拍国产精品| 欧美性猛片xxxx免费看久爱| 五月婷婷久久丁香| 欧美一区二区精美| 国产在线观看免费一区| 国产精品电影一区二区| 97精品电影院| 丝袜诱惑制服诱惑色一区在线观看| 欧美精品久久久久久久久老牛影院| 日本成人在线不卡视频| 国产亚洲一区二区三区在线观看| 99在线热播精品免费| 亚洲观看高清完整版在线观看| 欧美一级片在线看| 国产a区久久久| 一区二区三区在线免费视频| 欧美一区二区视频观看视频| 国产精品白丝jk白祙喷水网站| 亚洲人成网站色在线观看| 777奇米成人网| 成人黄色av网站在线| 天天色综合天天| 国产亚洲精品久| 欧美高清视频一二三区| 国产成人精品免费在线| 亚洲成av人**亚洲成av**| 精品国产一区二区在线观看| 色综合久久久久综合体| 精品一区二区免费| 一区二区在线观看视频在线观看| 日韩一区二区三区视频| 一本色道久久综合亚洲aⅴ蜜桃| 蜜臀av性久久久久蜜臀av麻豆 | 亚洲国产视频网站| www一区二区| 欧美精品一二三| 成人高清伦理免费影院在线观看| 日韩中文字幕区一区有砖一区| 国产精品女同一区二区三区| 日韩美女视频在线| 日本黄色一区二区| 成人午夜av电影| 久久99九九99精品| 亚洲第一av色| 亚洲精品国产成人久久av盗摄 | 亚洲色图色小说| 欧美精品一区二区三区蜜臀| 欧美日韩国产小视频在线观看| 成人网页在线观看| 国精产品一区一区三区mba视频 | 国产成人福利片| 美女一区二区三区| 日韩精品亚洲一区二区三区免费| 亚洲视频免费在线观看| 国产目拍亚洲精品99久久精品| 日韩欧美一二三区| 欧美人伦禁忌dvd放荡欲情| 色网站国产精品| 成人高清视频免费观看| 盗摄精品av一区二区三区| 九色|91porny| 狠狠色狠狠色综合日日91app| 亚洲成人av免费| 亚洲一区二区三区四区在线| 亚洲精品国产一区二区精华液 | 欧美激情一区二区三区| 久久久99久久精品欧美| 久久久久久久久久久久电影 | 粉嫩一区二区三区在线看| 国产精品伊人色| 国产高清一区日本| 国产成人综合自拍| 国产福利不卡视频| 国产91在线看| 成人激情小说网站| 92精品国产成人观看免费| 色偷偷一区二区三区| 在线观看一区二区精品视频| 欧美在线不卡视频| 欧美精品丝袜久久久中文字幕| 宅男噜噜噜66一区二区66| 4438x亚洲最大成人网| 欧美sm极限捆绑bd| 国产视频一区在线播放| 中文字幕中文字幕一区二区| 亚洲免费伊人电影| 日韩专区欧美专区| 国产一区二区三区视频在线播放| 国产成人免费网站| 色婷婷综合久久久久中文| 欧美日韩一级黄| 精品国产污污免费网站入口 | 日韩成人dvd| 国产乱子伦一区二区三区国色天香| 国产福利精品导航| 91国偷自产一区二区三区成为亚洲经典 | 国产精品情趣视频| 夜色激情一区二区| 狠狠色丁香久久婷婷综合丁香| 国产伦精品一区二区三区在线观看 | 91精品免费在线| 欧美国产日韩精品免费观看| 一区二区在线观看视频| 捆绑调教美女网站视频一区| 成人av在线影院| 欧美日韩激情一区二区三区| 久久久天堂av| 亚洲国产成人va在线观看天堂| 精品一区二区三区影院在线午夜| 成人免费看片app下载| 在线不卡中文字幕| 国产日本一区二区| 日本vs亚洲vs韩国一区三区二区| 丁香桃色午夜亚洲一区二区三区| 欧美日韩五月天| 中文字幕中文乱码欧美一区二区| 爽好久久久欧美精品| youjizz国产精品| 日韩欧美一级二级| 依依成人精品视频| 国产成人精品亚洲日本在线桃色| 欧美日韩不卡在线| 亚洲少妇屁股交4| 国产麻豆9l精品三级站| 91精品国产欧美一区二区| 亚洲男同性视频| 国产成人av福利| 日韩一区二区三区免费观看| 成人欧美一区二区三区小说| 久久成人免费日本黄色| 欧美三级日韩三级| 亚洲免费大片在线观看| 成人午夜短视频| 久久蜜桃av一区二区天堂| 蜜臀av一区二区在线免费观看| 在线免费观看日本一区| 中文字幕一区不卡| 成人午夜视频在线观看| 久久久久久免费网| 国内久久精品视频| 日韩欧美在线综合网| 五月婷婷欧美视频| 欧美老肥妇做.爰bbww视频| 一区二区三区国产精华| 91老师国产黑色丝袜在线| 欧美韩国一区二区| 国产成人精品影视| 中文字幕第一区| 国产**成人网毛片九色| 欧美国产亚洲另类动漫| 国产精品白丝jk白祙喷水网站| 久久久精品国产免费观看同学| 韩国三级在线一区| 国产色产综合产在线视频| 高清成人在线观看| 国产精品国产馆在线真实露脸 |