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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? key.asm

?? 電壓控制程序,符合各種設(shè)備需要,核心程序,IBm專屬
?? ASM
字號(hào):
//======================================================
//  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
// 實(shí)現(xiàn)功能:1*8按鍵掃描程序,適用于高電平有效的按鍵電路
//			 使用IRQ6_TMB2中斷(128Hz)
// 日期:    2005/6/18
//============================================================

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

//================================================
//	按鍵使用端口設(shè)定
//================================================
//.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位則采用該行定義

/////-----       不必修改下面的定義	    -----/////
.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	P_Watchdog_Clear	0x7012
.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						// 存儲(chǔ)獲得的鍵值
.VAR ScanCnt						// 該變量用來表示按鍵持續(xù)時(shí)間
.VAR KeyUp							// 按鍵是否處于抬起狀態(tài)

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

//======================================================
// 函數(shù)名稱:	Key_Scan
// C調(diào)用:		void Key_Scan(void)
// 匯編調(diào)用:	F_Key_Scan
// 實(shí)現(xiàn)功能:   按鍵掃描,該函數(shù)被IRQ6_TMB2中斷服務(wù)程序調(diào)用
// 入口參數(shù):	無
// 出口參數(shù):	無
// 破壞寄存器:	無
//======================================================
F_Key_Scan:
_Key_Scan:
	push r1,r2 to [sp]
	r2 = [P_Key_Data]				// 獲取IO端口狀態(tài)
	r2 &= Key_ALL
	jnz ?L_ScanKey_Down				// 判斷當(dāng)前是否有鍵按下
?L_ScanKey_Up:
	r1 = 1							// 如果按鍵處于抬起狀態(tài)則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							// 重新記錄鍵持續(xù)按下的時(shí)間
	[ScanCnt] = r1
	jmp ?L_ScanKey_Exit
?L_ScanKey_Cont:					// 如果此次鍵值與上次鍵值相同
	r1 = [ScanCnt]					// 更新按鍵持續(xù)時(shí)間(ScanCnt加1)
	r1 += 1
	[ScanCnt] = r1
?L_ScanKey_Exit:
	pop r1,r2 from [sp]
retf

//======================================================
// 函數(shù)名稱:	Key_Get
// C調(diào)用:		unsigned Key_Get(void)
// 匯編調(diào)用:	F_Key_Get
// 實(shí)現(xiàn)功能:   獲取鍵值
// 入口參數(shù):	無
// 出口參數(shù):	r1 - 獲得的鍵值
// 破壞寄存器:	r1
//======================================================
F_Key_Get:
_Key_Get:
	INT OFF
	push r2 to [sp]
	r2 = 0x01
	[P_Watchdog_Clear] = r2
	r2 = [ScanCnt]
	cmp r2,Key_Debounce				// 如果按鍵持續(xù)時(shí)間小于Key_Debounce
	jb	?L_GetKey_NoKey				// 則認(rèn)為當(dāng)前沒有鍵按下
	cmp r2,Key_TimeOut				// 如果按鍵持續(xù)時(shí)間大于Key_TimeOut
	jnb ?L_GetKey					// 則認(rèn)為發(fā)生了一次按鍵
	r2 = [KeyUp]					// 如果按鍵持續(xù)時(shí)間在Key_Debounce與Key_TimeOut之間
	jnz ?L_GetKey					// 如果按鍵處于抬起狀態(tài)則認(rèn)為發(fā)生了一次按鍵
?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

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产日韩欧美制服另类| 亚洲一区二区三区精品在线| 色综合久久综合网欧美综合网| 亚洲第一会所有码转帖| 国产婷婷一区二区| 欧美一区二区三区日韩视频| 波多野结衣中文字幕一区| 美女视频一区二区| 一区二区三区国产精品| 国产精品日日摸夜夜摸av| 欧美www视频| 欧美色区777第一页| av电影在线不卡| 国产剧情在线观看一区二区| 日韩精品亚洲一区| 一区二区三区成人在线视频| 亚洲精品久久久蜜桃| 欧美经典一区二区| www日韩大片| 91精品国产综合久久久久久| 色美美综合视频| 成人av在线播放网址| 国产一区二区在线电影| 久久精品国产一区二区| 日韩电影在线观看电影| 香蕉成人伊视频在线观看| 夜色激情一区二区| 一区二区三区在线免费观看 | 欧美疯狂性受xxxxx喷水图片| 一本在线高清不卡dvd| 99天天综合性| 国产999精品久久| 国产98色在线|日韩| 成人午夜激情影院| 成人网在线播放| 成人免费视频视频| 成人性生交大片| 99天天综合性| 91福利小视频| 欧美日韩国产首页| 欧美日韩成人一区二区| 欧美精品在欧美一区二区少妇| 欧美日韩国产在线观看| 欧美精品tushy高清| 欧美一区二区视频网站| 日韩免费看的电影| 久久综合999| 国产欧美日韩在线观看| 国产精品第五页| 夜夜爽夜夜爽精品视频| 日韩黄色免费电影| 久久国产乱子精品免费女| 韩国中文字幕2020精品| 国产成人精品网址| 色又黄又爽网站www久久| 欧美系列日韩一区| 日韩精品一区国产麻豆| 久久九九99视频| 亚洲欧美一区二区三区孕妇| 亚洲成人动漫精品| 韩国成人在线视频| av激情综合网| 欧美日韩精品欧美日韩精品一| 欧美一区二区三区免费在线看| 亚洲精品在线免费观看视频| 日韩黄色小视频| 国产精品18久久久久久久久| 99riav久久精品riav| 欧美久久久久久久久久| 精品毛片乱码1区2区3区 | 久久精品国产精品亚洲红杏| 国产一区91精品张津瑜| 91麻豆自制传媒国产之光| 欧美日韩久久一区| 久久精品一区四区| 一区二区三区免费网站| 韩国成人在线视频| 在线免费观看一区| 久久综合狠狠综合久久激情| 亚洲欧美日韩在线播放| 久久狠狠亚洲综合| 在线观看日韩一区| 久久久久久久久97黄色工厂| 一区二区三区国产精品| 国产伦精品一区二区三区免费迷 | 综合自拍亚洲综合图不卡区| 午夜精品福利视频网站| 成人小视频免费观看| 91精品国产综合久久久久久久久久| 国产偷v国产偷v亚洲高清| 午夜欧美2019年伦理| 成人丝袜18视频在线观看| 日韩丝袜情趣美女图片| 一区二区三区美女视频| 国产成人免费视| 日韩欧美中文一区二区| 亚洲三级电影网站| 国产永久精品大片wwwapp| 欧美精品视频www在线观看 | 免费人成黄页网站在线一区二区 | 精品国产乱码久久久久久夜甘婷婷 | 久久综合久久99| 午夜精品国产更新| 色屁屁一区二区| 国产精品久久久久久久久快鸭 | 精品一区二区免费| 欧美日韩精品高清| 一区二区三区在线视频观看| 丰满岳乱妇一区二区三区| 欧美成人在线直播| 午夜精品免费在线| 在线观看亚洲a| 自拍视频在线观看一区二区| 国产成人在线视频网址| 欧美一级艳片视频免费观看| 亚洲综合一区二区三区| 97aⅴ精品视频一二三区| 国产精品色哟哟| 国产精品性做久久久久久| 欧美一级视频精品观看| 日韩av一区二区在线影视| 色婷婷久久久综合中文字幕| 亚洲欧洲日本在线| 99视频精品全部免费在线| 中文字幕不卡一区| 不卡的av网站| 久久机这里只有精品| 这里是久久伊人| 日韩福利视频网| 欧美撒尿777hd撒尿| 亚洲午夜在线视频| 欧美性一二三区| 亚洲影视在线播放| 欧美亚洲高清一区| 午夜久久久久久电影| 欧美日韩国产一区| 日韩av电影免费观看高清完整版在线观看| 欧美亚洲愉拍一区二区| 性做久久久久久免费观看欧美| 欧美视频在线一区| 婷婷久久综合九色综合绿巨人 | 丁香一区二区三区| 中文字幕精品一区二区三区精品| 国产成人小视频| 国产精品毛片无遮挡高清| 91在线视频播放| 一级日本不卡的影视| 欧美三级日韩在线| 日韩精品1区2区3区| 欧美mv和日韩mv国产网站| 国产成人免费视频网站高清观看视频 | 国产精品成人网| 91九色02白丝porn| 免费看黄色91| 欧美激情一区三区| 在线亚洲欧美专区二区| 午夜不卡av免费| 久久久影视传媒| 99re这里都是精品| 爽好多水快深点欧美视频| www国产成人免费观看视频 深夜成人网| 国产高清不卡一区二区| 一区二区三区四区在线| 日韩免费一区二区| 白白色 亚洲乱淫| 亚洲制服丝袜av| 久久婷婷久久一区二区三区| 99r国产精品| 看片网站欧美日韩| 18欧美乱大交hd1984| 91麻豆精品国产91久久久久久| 国产一区二区不卡在线| 一区二区在线观看免费| 精品国产亚洲在线| 97se亚洲国产综合自在线 | 日韩成人午夜精品| 国产精品网站导航| 欧美一区二区高清| 92精品国产成人观看免费| 麻豆精品一区二区综合av| 中文字幕欧美一| 精品美女被调教视频大全网站| 色综合激情五月| 国产一区二区主播在线| 亚洲一区二区四区蜜桃| 国产午夜精品久久| 欧美一区二区三区免费观看视频| av亚洲精华国产精华| 精品在线播放午夜| 亚洲一区二区四区蜜桃| 中文字幕第一区| 精品国产伦一区二区三区观看方式 | 成人午夜视频在线| 日韩av午夜在线观看| 亚洲精品国产精品乱码不99| 久久综合资源网| 在线播放视频一区| 在线免费不卡视频| 精品国产一二三| 9191国产精品|