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

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

?? key_scan.c

?? ARM入門常用模塊代碼 這些程序必須使用“ARM SDT(ARM Software Development Kit)”、“ARM ADS(ARM Developer Suite)”等集成開發環境進行
?? C
字號:
#include "GloblDef.h"
#include "key.h"

struct SKeyValue xdata KeyValue[KEY_NUM]={	
	{1,{0}},	//功能鍵1	KEY_FUN1
	{1,{1}},	//退格鍵	KEY_C
	{1,{2}},	//功能鍵2	KEY_FUN2
	{2,{'1','.'}},
	{4,{'2','a','b','c'}},
	{4,{'3','d','e','f'}},
	{4,{'4','g','h','i'}},
	{4,{'5','j','k','l'}},
	{4,{'6','m','n','o'}},
	{5,{'7','p','q','r','s'}},
	{4,{'8','t','u','v'}},
	{5,{'9','w','x','y','z'}},
	{1,{'0'}}
};

BYTE xdata ScanKeyInterval;				//鍵掃描時間
BYTE xdata PreTimeKeyPressed;				//上一次鍵是否按下
BYTE xdata WhichKey;						//按下了什么鍵
BYTE xdata IndexInWhichKey;				//采用這個鍵的第幾個鍵值
BYTE xdata TimeIntervalOfNoKeyPress;	//沒有鍵按下的時間間隔
BYTE xdata KeyOutPort _at_ KEY_ADDRESS;

sbit KeyPort0 = KEY_PORT0;
sbit KeyPort1 = KEY_PORT1;

void KeyInitial()
{
	ScanKeyInterval = 0;
	PreTimeKeyPressed = FALSE;
	WhichKey = 0;
	IndexInWhichKey = 0;
	TimeIntervalOfNoKeyPress = 0;
}
												//是否處于按下狀態
BYTE IsKeyPressed()
{
												//373給高低電平
	KeyOutPort = 0;
	KeyPort0 = 1;
	KeyPort1 = 1;
												//輸入端口是否出現 0
	if(KeyPort0 == 0 || KeyPort1 == 0)
		return TRUE;
	else
		return FALSE;
}

BYTE GetKey()
{
	BYTE i,veil;
	KeyPort0 = 1;
	KeyPort1 = 1;
												//假設鍵值,port0為0-7,port1為8-15
	for(i = 0, veil = 0xFE; i < 8; i++, veil <<= 1)
	{
		KeyOutPort = veil;
		if(KeyPort0 == 0 || KeyPort1 == 0)
			break;
	}
	if(KeyPort1 == 0)
		i += 8;
	return i;
}
											// 返回ASCII碼
BYTE GetKeyValue()
{
	return KeyValue[WhichKey].value[IndexInWhichKey];
}

BYTE ScanKey()
{
	BYTE tWhichKey;
											//檢測是否ScanKeyInterval==0
	if(ScanKeyInterval != 0)
		return SCAN_KEY_NO_KEY_PRESSED;
	else
	{
		#ifdef KEY_DEBUG
		printf(".");
		#endif
					//是則表明從上次檢測到鍵盤按下一個SCAN_KEY_INTERVAL時間已到
					//將ScanKeyInterval置成SCAN_KEY_INTERVAL
		ScanKeyInterval = SCAN_KEY_INTERVAL;

		tWhichKey = GetKey();

					//檢測鍵盤是否按下,而且鍵值要有效(防止后面出錯)
		if(IsKeyPressed() && (tWhichKey >= 0 && tWhichKey < KEY_NUM))
		{
			#ifdef KEY_DEBUG
			printf("\npressed");
			#endif
					//檢測PreTimeKeyPressed是否為0
			if(PreTimeKeyPressed == TRUE)
			{
				return SCAN_KEY_NO_KEY_PRESSED;
			}
			else
			{
							//是則表明這是一次新的按下
				#ifdef KEY_DEBUG
				printf("\nagain");
				#endif
				PreTimeKeyPressed = TRUE;
				
				if(tWhichKey == WhichKey && TimeIntervalOfNoKeyPress > 0)
				{
					#ifdef KEY_DEBUG
					printf("\nshift");
					#endif
																//是,改變鍵值
					IndexInWhichKey++;
					if(IndexInWhichKey == KeyValue[WhichKey].ValueNum)
						IndexInWhichKey = 0;
					
					TimeIntervalOfNoKeyPress = TIME_INTERVAL_CHANGE_KEY_VALUE;	
					return SCAN_KEY_CHANGE_KEY_VALUE;
				}
				else
				{
													//否,新的鍵
					WhichKey = tWhichKey;
					IndexInWhichKey = 0;
					
					TimeIntervalOfNoKeyPress = TIME_INTERVAL_CHANGE_KEY_VALUE;	
					return SCAN_KEY_NEW_KEY_PRESSED;
				}
			}	
		}
		else
		{
											//將PreTimeKeyPressed置0
			PreTimeKeyPressed = FALSE;
								//TimeIntervalOfNoKeyPress減一,最小到0
			if(TimeIntervalOfNoKeyPress > 0)
				TimeIntervalOfNoKeyPress--;
			return SCAN_KEY_NO_KEY_PRESSED;
		}
	}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久免费电影网| 日韩午夜精品电影| 国产在线播放一区| 日本伊人午夜精品| 欧美aaa在线| 久久精品国产久精国产| 日韩精品三区四区| 久久99国产精品久久99| 激情文学综合插| 国产 欧美在线| 91丝袜国产在线播放| 欧洲精品一区二区| 91精品国产91综合久久蜜臀| 在线电影国产精品| 久久婷婷国产综合精品青草| 国产视频一区在线观看| 亚洲免费观看高清完整版在线观看熊| 亚洲精品视频一区二区| 日韩中文字幕区一区有砖一区 | a4yy欧美一区二区三区| 99久久精品国产麻豆演员表| 欧美综合一区二区三区| 制服丝袜日韩国产| 欧美国产日产图区| 日韩中文字幕不卡| 夫妻av一区二区| 欧美日韩高清在线播放| 久久久久国产精品免费免费搜索 | 成人污视频在线观看| 91福利国产成人精品照片| 欧美精品久久一区| 国产精品久久久久久久久免费相片| 有坂深雪av一区二区精品| 老司机午夜精品| 色先锋aa成人| 国产日韩欧美精品在线| 婷婷国产在线综合| 成人免费看黄yyy456| 日韩欧美精品三级| 亚洲精品高清在线观看| 国产高清在线精品| 欧美精品一级二级| 亚洲色欲色欲www| 精品亚洲成a人| 欧美性生活一区| 中文字幕一区二区三区视频 | 国产成人精品免费| 制服.丝袜.亚洲.中文.综合| 亚洲视频网在线直播| 国产成人精品影视| 欧美成人乱码一区二区三区| 亚洲一区二区精品久久av| 成人不卡免费av| 精品成人a区在线观看| 日韩精品国产精品| 欧美日韩mp4| 亚洲精品视频一区| 91一区二区在线观看| 中国av一区二区三区| 久草中文综合在线| 91精品国产综合久久国产大片| 亚洲免费观看高清完整| aaa欧美大片| 国产精品久久久久久亚洲毛片 | 欧美午夜电影一区| 中文字幕在线播放不卡一区| 国产成人免费视频精品含羞草妖精| 欧美一个色资源| 麻豆成人免费电影| 日韩免费一区二区三区在线播放| 日韩主播视频在线| 欧美一卡二卡三卡四卡| 日韩在线a电影| 日韩午夜小视频| 国产在线乱码一区二区三区| 久久综合丝袜日本网| 国产精品69久久久久水密桃 | 成人18视频在线播放| 国产精品日日摸夜夜摸av| 成人午夜精品在线| 亚洲精品伦理在线| 欧美日韩美少妇| 麻豆国产精品一区二区三区 | 日韩在线播放一区二区| 91精品国产91久久久久久一区二区 | 91精品国产日韩91久久久久久| 天堂va蜜桃一区二区三区| 欧美一区二区视频免费观看| 久久国产精品免费| 国产欧美日韩另类视频免费观看 | 亚洲高清在线视频| 69久久夜色精品国产69蝌蚪网| 日本怡春院一区二区| 亚洲精品在线免费播放| 成人激情动漫在线观看| 亚洲一区二区欧美日韩| 欧美一区二区三区白人| 国产91清纯白嫩初高中在线观看| 亚洲视频在线一区观看| 538在线一区二区精品国产| 国产美女一区二区| 亚洲精品水蜜桃| 久久五月婷婷丁香社区| 91高清视频在线| 韩国精品一区二区| 亚洲美女淫视频| 久久久久久一二三区| 色老综合老女人久久久| 国产真实乱对白精彩久久| 一区二区成人在线观看| 337p日本欧洲亚洲大胆色噜噜| 97久久人人超碰| 国内精品久久久久影院色| 亚洲午夜精品久久久久久久久| 久久久美女艺术照精彩视频福利播放| 91福利在线看| 高清不卡一区二区| 经典三级视频一区| 日韩在线a电影| 亚洲精品欧美综合四区| 中文字幕第一页久久| 日韩手机在线导航| 欧美日韩在线免费视频| 成人免费毛片app| 国产麻豆成人精品| 日韩国产欧美视频| 一二三四区精品视频| 国产拍欧美日韩视频二区| 欧美一区二区三区免费大片| 色噜噜狠狠一区二区三区果冻| 国产精品夜夜嗨| 精品一区二区日韩| 蜜臀va亚洲va欧美va天堂| 一区二区三区久久| 中文字幕欧美一区| 国产精品家庭影院| 国产欧美一区视频| 久久老女人爱爱| 日韩免费观看2025年上映的电影| 欧美日韩在线播放一区| 91久久精品一区二区| 91视频91自| 91福利视频久久久久| 97精品视频在线观看自产线路二| 丁香天五香天堂综合| 国产精品影视在线| 成人午夜精品在线| 91在线国内视频| 99精品久久免费看蜜臀剧情介绍| av午夜精品一区二区三区| 国产69精品久久99不卡| 成人avav影音| 91精品福利视频| 欧美影院一区二区三区| 欧美三级视频在线观看| 欧美三级电影在线看| 欧美精品精品一区| 日韩精品一区二区三区四区视频| 精品剧情v国产在线观看在线| 精品久久久久久久久久久久久久久久久| 日韩你懂的在线播放| 国产亚洲精品7777| 国产精品高潮久久久久无| 亚洲三级视频在线观看| 亚州成人在线电影| 蜜桃av噜噜一区| 国产激情一区二区三区四区| 成人高清视频在线观看| 欧美色涩在线第一页| 精品久久久久久综合日本欧美| 国产日韩欧美综合在线| 亚洲乱码日产精品bd| 日韩av中文字幕一区二区三区| 精品在线亚洲视频| 不卡的电视剧免费网站有什么| 欧美丝袜自拍制服另类| 精品国产一区二区在线观看| 国产精品毛片久久久久久久| 亚洲成人综合视频| 国产精品69久久久久水密桃 | 老司机午夜精品99久久| 国产精品99久久久久久久vr| 91免费看片在线观看| 欧美一区二区黄| 国产精品污www在线观看| 亚洲电影视频在线| 国产高清久久久久| 欧美丰满嫩嫩电影| 国产精品丝袜在线| 日韩精品电影一区亚洲| 成人97人人超碰人人99| 欧美一区二区免费| 伊人一区二区三区| 国产很黄免费观看久久| 69久久夜色精品国产69蝌蚪网| 国产精品美女一区二区在线观看| 日韩成人午夜电影| 91婷婷韩国欧美一区二区| 亚洲精品一区二区三区在线观看 | 国产一区美女在线|