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

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

?? 4x4key._c

?? meg16 的所有功能實例
?? _C
字號:
/****************************************Copyright (c)**************************************************
**                               ADEmbed Development Co.,LTD.                                    
**                                 http://www.adembed.com
**--------------File Info-------------------------------------------------------------------------------
** File name:			main.c
** Last modified Date:  2008-12-13
** Last Version:		1.0
** Descriptions:		4*4Key Test.
** 
**------------------------------------------------------------------------------------------------------
** Created by:			junbolu
** Created date:		2008-12-13
** Version:				1.0
** Descriptions:		
**
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Descriptions:
**
**------------------------------------------------------------------------------------------------------
**ICC-AVR application builder : 2008-12-13
**Target : M16
**Crystal: 7.3728Mhz
**PA0--->L1			PA1--->L2			PA2--->L3			PA3--->L4			
**PA4--->H1			PA5--->H2			PA6--->H3			PA7--->H4	
--------------------------
| H4   C    D    E    F  |
| H3   8    9    A    B  |
| H2   4    5    6    7  |
| H1   0    1    2    3  |
| /    L1   L2   L3   L4 |
--------------------------	   
**描述:掃描4*4按鍵的狀態(tài),掃描到按鍵被按下后,將此鍵碼發(fā)送到串口
**      
**
**涉及知識點:
**          DI輸入DO輸出
**          while循環(huán),case循環(huán)
**			定時器,串口的應用
*******************************************************************************************************/

#include<iom16v.h>
#include<macros.h>
#include"Define.h"


#define F_osc           7372800
#define Baud_rate       9600   	   		  		 
//管腳定義
#define PIN_RXD			0 	//PD0   RXD
#define PIN_TXD			1 	//PD1   TXD


#define L1   	     BIT0	
#define L2   	     BIT1
#define L3   	     BIT2
#define L4   	     BIT3
#define H1   	     BIT4	
#define H2   	     BIT5
#define H3   	     BIT6
#define H4   	     BIT7

#define KEY_DDR		 DDRA
#define KEY_PORT	 PORTA
#define KEY_IN		 PINA


#define L1_H1		 0x00
#define L2_H1		 0x01
#define L3_H1		 0x02
#define L4_H1		 0x03
#define L1_H2		 0x04
#define L2_H2		 0x05
#define L3_H2		 0x06
#define L4_H2		 0x07
#define L1_H3		 0x08
#define L2_H3		 0x09
#define L3_H3		 0x0A
#define L4_H3		 0x0B
#define L1_H4		 0x0C
#define L2_H4		 0x0D
#define L3_H4		 0x0E
#define L4_H4		 0x0F

#define ON_PUSH		 0xFF

unsigned char Key_State;
unsigned char Key_Value;

void Uart_Init(void); 
void USART_TXD(uint8 data);

void KEY_Init(void)
{
 KEY_DDR |= L1&L2&L3&L4;  	            //設為輸出
 KEY_PORT|= L1&L2&L3&L4;				//輸出為高
 KEY_DDR &= ~(H1&H2&H3&H4);				//設為輸入
 KEY_PORT|= H1&H2&H3&H4;				//上拉輸入
 
 //t/c0初始化
 TCCR0=0X0D;
 TCNT0=0X00;
 OCR0=0XF0;         //定時30ms
 TIMSK|=0X02;
 
}

#pragma interrupt_handler timer0comp:20
void timer0comp (void)
{ 
 Read_Key();
}

//=======================================================================
unsigned char KEYDIN(void)
{
 	KEY_PORT |= L1&L2&L3&L4;				//輸出為高
	KEY_PORT &= ~L1;						//掃描L1
	
 	if((KEY_IN&H1)==H1)	 return L1_H1;
	if((KEY_IN&H2)==H2)	 return L1_H2;
	if((KEY_IN&H3)==H3)	 return L1_H3;
	if((KEY_IN&H4)==H4)	 return L1_H4;
	
	KEY_PORT |= L1&L2&L3&L4;				//輸出為高
	KEY_PORT &= ~L2;						//掃描L2
	
 	if((KEY_IN&H1)==H1)	 return L2_H1;
	if((KEY_IN&H2)==H2)	 return L2_H2;
	if((KEY_IN&H3)==H3)	 return L2_H3;
	if((KEY_IN&H4)==H4)	 return L2_H4;
	
	KEY_PORT |= L1&L2&L3&L4;				//輸出為高
	KEY_PORT &= ~L3;						//掃描L3
	
 	if((KEY_IN&H1)==H1)	 return L3_H1;
	if((KEY_IN&H2)==H2)	 return L3_H2;
	if((KEY_IN&H3)==H3)	 return L3_H3;
	if((KEY_IN&H4)==H4)	 return L3_H4;
	
	KEY_PORT |= L1&L2&L3&L4;				//輸出為高
	KEY_PORT &= ~L4;						//掃描L4
	
 	if((KEY_IN&H1)==H1)	 return L4_H1;
	if((KEY_IN&H2)==H2)	 return L4_H2;
	if((KEY_IN&H3)==H3)	 return L4_H3;
	if((KEY_IN&H4)==H4)	 return L4_H4;

	return ON_PUSH;
	
}

//=======================================================================
void Read_Key(void)
{
 switch(Key_State)
     {
  	 case 0:
         if(KEYDIN() != ON_PUSH)
		 	{
			Key_State++;
			}  
		 break;
  	 case 1:
         if(KEYDIN() != ON_PUSH)
		    {
			 Key_State++;
			 Key_Value=KEYDIN();
			}
		 else 
		    {
			Key_State--;
			}
		 break;
     case 2:
         if(KEYDIN() == ON_PUSH)
		    {
			Key_State=0;
			}
		 break;
     }
 
}

void main(void)
{
 KEY_Init();
 
 Key_State = 0;
 Key_Value = ON_PUSH;
 
 Uart_Init();                 //TART初始化
 SEI();                       //全局中斷使能
 
 while(1)
     {
     if(Key_Value != ON_PUSH)
         {
	     USART_TXD(Key_Value);
		 Key_Value = ON_PUSH;
	     }
     }
}

//===============================================================
void Uart_Init(void)          //UART初始化
  { 
     
    //設置偵格式
	//異步,8位數(shù)據(jù),無奇偶校驗,一個停止位,無倍速
	UCSRC=(1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0);
	
    //設置波特率
    UBRRL= (F_osc/Baud_rate/16-1)%256;
    UBRRH= (F_osc/Baud_rate/16-1)/256;

	//使能接收中斷,使能接收,使能發(fā)送
    UCSRB = (1<<RXCIE)|(1<<RXEN)|(1<<TXEN);
  }
  

//===============================================================
void USART_TXD(uint8 data) //發(fā)送采用查詢方式
{
	while( !(UCSRA & BIT(UDRE)) );
	UDR=data;
	while( !(UCSRA & BIT(TXC )) );
	UCSRA|=BIT(TXC);
}

//=======================================================================

#pragma interrupt_handler USART_RXC:12
void USART_RXC(void)
{
  
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91福利小视频| 欧美色视频在线观看| 日韩美女一区二区三区四区| 亚洲黄色免费网站| gogogo免费视频观看亚洲一| 91精品国产一区二区人妖| 亚洲桃色在线一区| 国产一本一道久久香蕉| 91精品在线免费观看| 午夜精品久久久久久| 色婷婷综合久久久中文字幕| 亚洲免费伊人电影| 成人免费高清在线观看| 综合电影一区二区三区| 精品三级在线观看| 欧美日韩一区二区三区在线看 | 成人黄色一级视频| 裸体歌舞表演一区二区| 亚洲福利一区二区| 亚洲欧美乱综合| 欧美高清在线一区二区| 欧美本精品男人aⅴ天堂| 欧洲生活片亚洲生活在线观看| 成人免费毛片app| 国内精品久久久久影院色| 日本欧美肥老太交大片| 亚洲国产日韩综合久久精品| 综合中文字幕亚洲| 亚洲欧洲国产专区| 国产精品久久久爽爽爽麻豆色哟哟 | 亚洲免费观看在线观看| 中文子幕无线码一区tr| 国产视频911| 久久久久久久久99精品| 久久看人人爽人人| 精品美女被调教视频大全网站| 日韩丝袜情趣美女图片| 欧美高清视频不卡网| 欧美精品久久久久久久久老牛影院| 欧美午夜精品一区| 欧美色手机在线观看| 欧美性受xxxx黑人xyx| 在线免费观看一区| 91福利区一区二区三区| 色拍拍在线精品视频8848| 91久久精品午夜一区二区| 色综合久久久久久久| 色婷婷综合久色| 精品视频一区 二区 三区| 欧美三级乱人伦电影| 欧美人与性动xxxx| 欧美成人一区二区三区片免费 | www.色精品| 99精品视频一区| 在线观看日韩电影| 欧美年轻男男videosbes| 欧美精品亚洲一区二区在线播放| 欧美一三区三区四区免费在线看| 日韩写真欧美这视频| 久久女同性恋中文字幕| 国产精品视频一二三| 一区二区三区在线观看动漫| 午夜不卡av免费| 国产呦萝稀缺另类资源| 丁香激情综合国产| 欧美在线高清视频| 精品区一区二区| 国产精品视频九色porn| 一区二区三区在线视频免费| 日韩在线播放一区二区| 爽好多水快深点欧美视频| 日本va欧美va欧美va精品| 久久品道一品道久久精品| 亚洲国产人成综合网站| 欧美日韩国产精品成人| 一区二区欧美在线观看| 久久精品国产亚洲高清剧情介绍 | 欧美在线你懂的| 日韩视频国产视频| 国产精品人妖ts系列视频| 玉米视频成人免费看| 久草中文综合在线| 91免费看片在线观看| 宅男噜噜噜66一区二区66| 国产亚洲欧美一级| 亚洲一区在线观看视频| 久久99精品国产.久久久久 | 国产91精品在线观看| 精品视频在线视频| 久久久噜噜噜久久人人看| 国产精品久久久久久妇女6080 | 欧美成人综合网站| 亚洲情趣在线观看| 韩国av一区二区三区四区| 色一情一伦一子一伦一区| 日韩午夜精品电影| 樱桃视频在线观看一区| 国产精一品亚洲二区在线视频| 欧美亚洲另类激情小说| 国产亚洲成av人在线观看导航| 亚洲aaa精品| 99精品一区二区| 久久综合成人精品亚洲另类欧美 | 一区二区三区.www| 国产 日韩 欧美大片| 欧美肥胖老妇做爰| 亚洲欧美日韩国产综合在线| 韩国av一区二区三区在线观看 | 国产精品欧美一区喷水| 秋霞影院一区二区| 91久久久免费一区二区| 亚洲国产精品高清| 久久99精品一区二区三区三区| 欧美午夜精品久久久久久孕妇| 国产精品日韩精品欧美在线| 久久精品国产99国产精品| 欧美浪妇xxxx高跟鞋交| 亚洲视频香蕉人妖| 成人av中文字幕| 久久久精品黄色| 国产一区二区在线观看视频| 91精品国产91久久久久久最新毛片| 亚洲最大的成人av| 色综合色狠狠综合色| 中文字幕精品三区| 国产精品18久久久久久久久久久久 | 不卡一区二区中文字幕| 久久九九全国免费| 激情丁香综合五月| 精品国产免费一区二区三区四区| 日韩高清不卡一区| 制服丝袜亚洲播放| 日本vs亚洲vs韩国一区三区二区 | 精品少妇一区二区三区免费观看| 同产精品九九九| 欧美日韩午夜在线视频| 亚洲国产一区视频| 欧美色网一区二区| 香蕉影视欧美成人| 欧美一级日韩一级| 裸体歌舞表演一区二区| 精品久久国产97色综合| 黑人精品欧美一区二区蜜桃| wwwwww.欧美系列| 国产91在线|亚洲| 亚洲欧洲av一区二区三区久久| 不卡一卡二卡三乱码免费网站| 亚洲欧洲日本在线| 91成人在线免费观看| 亚洲大片在线观看| 国产欧美一区二区精品忘忧草 | 日本亚洲电影天堂| 日韩欧美国产系列| 高清国产午夜精品久久久久久| 欧美激情在线一区二区| av一二三不卡影片| 一区二区在线观看视频| 在线播放欧美女士性生活| 青青草97国产精品免费观看无弹窗版| 日韩免费电影一区| 粉嫩av一区二区三区粉嫩| 亚洲色图欧美激情| 欧美剧情电影在线观看完整版免费励志电影| 午夜精品一区二区三区免费视频| 欧美一级午夜免费电影| 国产成人综合精品三级| 亚洲欧美激情在线| 欧美一区二区三区四区高清| 国产一区二区看久久| 最新高清无码专区| 欧美一区二区私人影院日本| 国产成人午夜精品5599 | 午夜精品久久久久久久99水蜜桃| 日韩一区二区三区四区| 风间由美性色一区二区三区| 一区二区免费视频| 日韩视频在线一区二区| 91亚洲国产成人精品一区二区三 | 国产乱码精品1区2区3区| 中文字幕一区av| 日韩写真欧美这视频| 91色视频在线| 久久爱www久久做| 一区二区三区四区激情| 精品福利av导航| 欧美性大战久久| 国产成人免费网站| 日韩激情视频网站| 国产精品欧美经典| 日韩一区和二区| 在线免费观看成人短视频| 日本成人在线电影网| 亚洲日本电影在线| 精品成人a区在线观看| 欧美三级电影精品| 99久久久国产精品| 狠狠色狠狠色综合日日91app| 亚洲综合另类小说| 国产精品久久久久久久久动漫| 欧美一区二区日韩一区二区|