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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? 4x4key.c

?? meg16 的所有功能實(shí)例
?? C
字號(hào):
/****************************************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ā)送到串口
**      
**
**涉及知識(shí)點(diǎn):
**          DI輸入DO輸出
**          while循環(huán),case循環(huán)
**			8位定時(shí)器,串口的應(yīng)用
*******************************************************************************************************/

#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;  	            //設(shè)為輸出
 KEY_PORT|= L1&L2&L3&L4;				//輸出為高
 KEY_DDR &= ~(H1&H2&H3&H4);				//設(shè)為輸入
 KEY_PORT|= H1&H2&H3&H4;				//上拉輸入
 
 //t/c0初始化
 TCCR0=0X0D;
 TCNT0=0X00;
 OCR0=0XF0;         //定時(shí)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初始化
  { 
     
    //設(shè)置偵格式
	//異步,8位數(shù)據(jù),無(wú)奇偶校驗(yàn),一個(gè)停止位,無(wú)倍速
	UCSRC=(1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0);
	
    //設(shè)置波特率
    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ā)送采用查詢(xún)方式
{
	while( !(UCSRA & BIT(UDRE)) );
	UDR=data;
	while( !(UCSRA & BIT(TXC )) );
	UCSRA|=BIT(TXC);
}

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

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

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品成人一区二区三区四区| 国产iv一区二区三区| 国产精品灌醉下药二区| 精品国产三级a在线观看| 欧美午夜精品一区二区蜜桃| 精品国产伦一区二区三区观看体验| 亚洲国产精品二十页| 国产精品福利影院| 日韩免费视频一区二区| 99在线热播精品免费| av中文字幕亚洲| 粉嫩aⅴ一区二区三区四区 | 91欧美一区二区| 国产99久久久精品| 不卡电影一区二区三区| 91在线播放网址| 欧美日韩国产大片| 日韩亚洲欧美成人一区| 精品久久久久久久久久久久包黑料| 欧美—级在线免费片| 色婷婷狠狠综合| 99精品桃花视频在线观看| 99国产一区二区三精品乱码| 高清国产午夜精品久久久久久| 亚洲视频综合在线| 中文字幕不卡在线播放| 亚洲女同一区二区| 免费欧美在线视频| 成人av午夜电影| 欧美蜜桃一区二区三区| 欧美极品另类videosde| 亚洲午夜三级在线| 亚洲综合色成人| 亚洲精品一区二区三区福利| 精品一区二区三区久久久| 亚洲午夜私人影院| 欧美日韩亚洲高清一区二区| 日韩亚洲欧美一区二区三区| 亚洲人午夜精品天堂一二香蕉| 亚洲国产人成综合网站| 国产精品自产自拍| 欧美日韩大陆一区二区| 欧美私模裸体表演在线观看| 日韩精彩视频在线观看| 成人aa视频在线观看| 欧美日韩久久一区| 亚洲电影在线播放| 亚洲日本va午夜在线电影| 奇米色一区二区三区四区| 成人国产免费视频| 欧美日韩国产综合视频在线观看 | 爽好多水快深点欧美视频| 久久国产精品无码网站| 99久久er热在这里只有精品15| 欧美电影免费观看完整版| 亚洲色图制服诱惑 | 国产91高潮流白浆在线麻豆| 欧美日韩mp4| 亚洲欧美国产三级| 国产黄人亚洲片| 欧美一级片在线| 欧美一区二区成人| 亚洲一区二区三区国产| 国产成人免费视| 精品国产伦一区二区三区观看方式| 亚洲成人激情社区| 色噜噜狠狠成人网p站| 国产欧美一区二区三区网站| 蜜桃视频第一区免费观看| 欧美三级中文字幕| 国产一区二区不卡| 国产精品一线二线三线| 日韩欧美一级在线播放| 婷婷夜色潮精品综合在线| 91亚洲国产成人精品一区二区三 | 久久久一区二区三区捆绑**| 国产欧美综合色| 国产在线精品一区二区| 欧美xxxxx牲另类人与| 久久精品99国产精品| 日韩欧美一级精品久久| 日韩电影在线观看电影| 欧美高清性hdvideosex| 免费观看91视频大全| 欧美一区日韩一区| 精品一区二区三区影院在线午夜| 日韩一区二区三区电影| 紧缚奴在线一区二区三区| 久久中文字幕电影| 成人永久aaa| 亚洲女子a中天字幕| 99国产麻豆精品| 亚洲免费在线视频一区 二区| 欧美亚洲愉拍一区二区| 欧美亚洲动漫另类| 久久久久久9999| 成人高清伦理免费影院在线观看| 欧美激情一区二区三区四区| 成人激情午夜影院| 夜夜嗨av一区二区三区网页| 69p69国产精品| 粉嫩久久99精品久久久久久夜| 狠狠色丁香九九婷婷综合五月| 日本美女一区二区三区| 欧美成人激情免费网| 色一情一乱一乱一91av| 日本aⅴ亚洲精品中文乱码| 精品剧情v国产在线观看在线| 国产做a爰片久久毛片| 国产精品国产自产拍在线| 欧美午夜精品电影| 国产一区二区三区国产| 中文在线资源观看网站视频免费不卡| 91欧美激情一区二区三区成人| 日韩精品电影一区亚洲| 国产精品正在播放| 欧美一区二区视频免费观看| 日韩欧美激情在线| 日韩美女视频一区二区| 波多野结衣中文字幕一区| 婷婷开心激情综合| 国产精品三级视频| 欧美一区二区播放| 欧美专区亚洲专区| 成人午夜激情在线| 人禽交欧美网站| 亚洲欧美激情在线| 久久精品亚洲麻豆av一区二区 | 全国精品久久少妇| 久久久午夜电影| 欧美日韩视频在线观看一区二区三区 | 国产乱码精品1区2区3区| 亚洲精品久久嫩草网站秘色| 6080国产精品一区二区| 国产91富婆露脸刺激对白| 日韩精品高清不卡| 亚洲激情成人在线| 国产网站一区二区三区| 欧美高清精品3d| 国产精品久久久久久久蜜臀 | 国产精品美女www爽爽爽| 欧美影院一区二区| www.亚洲免费av| 国产精品乡下勾搭老头1| 免费在线观看一区二区三区| 亚洲一区二区三区四区五区黄| 日韩女优制服丝袜电影| 555www色欧美视频| 色噜噜偷拍精品综合在线| 不卡的av电影| 不卡一区二区在线| 国产精品18久久久久久久久久久久| 日本不卡一区二区三区高清视频| 亚洲天堂a在线| 日本一区二区在线不卡| 国产欧美一区二区精品久导航| 日韩无一区二区| 日韩一区二区在线观看| 91精品国产综合久久婷婷香蕉 | 国产精品国产三级国产普通话三级| 日韩三级高清在线| 欧美日韩电影在线播放| 在线观看欧美精品| 在线国产电影不卡| 欧美日韩国产片| 精品视频1区2区| 欧美久久久一区| 91黄色免费版| 欧美在线免费观看视频| 一本大道久久a久久精二百| 91猫先生在线| 蜜臀精品一区二区三区在线观看| 亚洲欧美国产77777| 亚洲自拍欧美精品| 亚洲激情图片qvod| 久久国产乱子精品免费女| 美腿丝袜亚洲色图| 国产主播一区二区| 懂色av噜噜一区二区三区av| 日韩欧美一区中文| 《视频一区视频二区| |精品福利一区二区三区| 亚洲精品视频在线观看网站| 亚洲一区二区三区四区的| 毛片一区二区三区| 成人性色生活片| av亚洲精华国产精华| 欧美视频日韩视频在线观看| 欧美日韩中文字幕一区二区| 日韩精品一区二区三区三区免费 | 亚洲视频 欧洲视频| 亚洲婷婷在线视频| 男女性色大片免费观看一区二区| 久久成人综合网| 一本大道av伊人久久综合| 北条麻妃一区二区三区| 欧美天堂亚洲电影院在线播放| 久久久久久久久久久久久女国产乱| 亚洲精选一二三| 国产91精品一区二区麻豆网站|