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

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

?? 38.c

?? 單片機80c51的各類小程序的代碼
?? C
字號:
程序三十九 PC鍵代碼
/*
芯片: AT90S4434
頻率: 8,000000 MHz
模式: Tiny
*/

#include <90s4434.h>
#include "kb.h" 
#include <delay.h>   

#asm
.equ __lcd_port=0x15
#endasm
#include <lcd.h>
// 全局變量
void main(void)
{
// 局域變量
unsigned char key;

// Port A
PORTA=0x00;
DDRA=0x00;
// Port B
PORTB=0x00;
DDRB=0x00;

// Port C
PORTC=0x00;
DDRC=0x00;
// Port D
PORTD=0x00;
DDRD=0x00;

// Timer/Counter 0 
TCCR0=0x00;
TCNT0=0x00;

// Timer/Counter 1 
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer/Counter 2 
TCCR2=0x00;
ASSR=0x00;
TCNT2=0x00;
OCR2=0x00;

// INT0: Oon
// INT1: Off 
GIMSK= 0x40;                           // 開INT0 
MCUCR=0x00;

TIMSK=0x00;

// 模擬初始化
ACSR=0x80;

//lcd初始化            
 lcd_init(16);                             
 InitKeyBoard();                          // 鍵盤初始化
 
 while(1)
    {
        key = getchar_kb();
        lcd_putchar(key);
        delay_ms(5);   
      
    }

}

//KB.C代碼
#include "kb.h"
#include "scancodes.h"

#define BUFF_SIZE 64

unsigned char edge, bitcount;                  // 0 = neg. 1 = pos.

unsigned char kb_buffer[BUFF_SIZE];
unsigned char *inpt, *outpt;
unsigned char buffcnt;


void InitKeyBoard(void)
{
    inpt =  kb_buffer;                        //初始化緩沖
    outpt = kb_buffer;
    buffcnt = 0;

    MCUCR = 2;                             // INT0
    edge = 0;                                // 0 = 降沿  1 = 升沿
    bitcount = 11;               
    #asm("sei")                              //開中斷
}

interrupt [EXT_INT0] void INT0_interrupt(void)
{
    static unsigned char data;                   

        if(bitcount < 11 && bitcount > 2)        // Bit 3 to 10. 
        {                                  
            data = (data >> 1);
            if(PIND & 8)
                data = data | 0x80;            // 存儲 '1'
        }

        if(--bitcount == 0)                    //所有位接收
        {
            decode(data);
            bitcount = 11;
        }
 }


void decode(unsigned char sc)
{
    static unsigned char is_up=0, shift = 0, mode = 0;
    unsigned char i;
 
    if (!is_up)                             // Last data 是 up-key 
    {
        switch (sc)
        {
          case 0xF0 :                      // up-key 
            is_up = 1;
            break;

          case 0x12 :                      // Left SHIFT
            shift = 1;
            break;

          case 0x59 :                      // Right SHIFT
            shift = 1;
            break;

          case 0x05 :                       // F1
            if(mode == 0)
                mode = 1;                  
            if(mode == 2)
                mode = 3;                  
            break;

          default:
            if(mode == 0 || mode == 3)         // 假如ASCII mode
            {
                if(!shift)                    // 假如沒按shift
                {                          // 查 table 
                 for(i = 0; unshifted[i][0]!=sc && unshifted[i][0]; i++);
if (unshifted[i][0] == sc) 
{
                        put_kbbuff(unshifted[i][1]);
                    }
                } else {                     //假如按shift 
                    for(i = 0; shifted[i][0]!=sc && shifted[i][0]; i++);
if (shifted[i][0] == sc) 
{
                        put_kbbuff(shifted[i][1]);
                    }
                }
            } else{                            // 掃描 code mode
                print_hexbyte(sc);              
                put_kbbuff(' ');

            }
            break;
        }
    } else {
        is_up = 0;                            
        switch (sc)
        {
          case 0x12 :                         // Left SHIFT
            shift = 0;
            break;
            
          case 0x59 :                         // Right SHIFT
            shift = 0;
            break;

          case 0x05 :                         // F1
            if(mode == 1)
                mode = 2;
            if(mode == 3)
                mode = 0;
            break;
          case 0x06 :                         // F2
                                            // clr();
            break;  
            
        } 
    }    
} 

void put_kbbuff(unsigned char c)
{
    if (buffcnt<BUFF_SIZE)                     // 假如buffer 沒滿
    {
        *inpt = c;                             
        inpt++;                                

        buffcnt++;

        if (inpt >= kb_buffer + BUFF_SIZE)        
            inpt = kb_buffer;
    }
}

int getchar_kb(void)
{
    int byte;
    while(buffcnt == 0);                          // 等data

    byte = *outpt;                               // 得byte
    outpt++;                                  

    if (outpt >= kb_buffer + BUFF_SIZE)           
        outpt = kb_buffer;
    
    buffcnt--;                                    

    return byte;
}

void print_hexbyte(unsigned char i)
{
    unsigned char h, l;
    
    h = i & 0xF0;                                 // High nibble
    h = h>>4;
    h = h + '0';
    
    if (h > '9')
        h = h + 7;

    l = (i & 0x0F)+'0';                             // Low nibble
    if (l > '9')
        l = l + 7;

    put_kbbuff(h);
    put_kbbuff(l);
}

KB.H代碼
// Keyboard 通訊
#ifndef __KB_INCLUDED
#define __KB_INCLUDED

#include <90s4434.h>

#define CLOCK   2
#define DATAPIN 3

#define ISC00 0
#define ISC01 1

void InitKeyBoard(void);
interrupt [EXT_INT0] void INT0_interrupt(void);
void decode(unsigned char sc);
void put_kbbuff(unsigned char c);
int getchar_kb(void);  
void print_hexbyte(unsigned char i);
#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品久久久久久久久久久院品网| 91麻豆精品国产91久久久使用方法| 亚洲一区免费视频| 69p69国产精品| 粉嫩av一区二区三区| 日韩一区欧美二区| 亚洲精品一卡二卡| 久久久久久久综合日本| 欧美精品乱码久久久久久| 成人免费视频视频在线观看免费| 天天色天天操综合| 亚洲欧美经典视频| 国产亚洲人成网站| 精品国产精品一区二区夜夜嗨| 91黄色免费看| 99v久久综合狠狠综合久久| 老色鬼精品视频在线观看播放| 艳妇臀荡乳欲伦亚洲一区| 欧美国产国产综合| 国产亚洲一区二区三区| 欧美成va人片在线观看| 7777精品伊人久久久大香线蕉完整版 | 色婷婷av一区二区三区之一色屋| 国产一区不卡视频| 日韩高清在线一区| 亚洲不卡av一区二区三区| 国产精品久久久久久久久果冻传媒 | 一区二区三区视频在线看| 久久久亚洲午夜电影| 欧美成人性战久久| 精品久久久久久久人人人人传媒| 欧美一区二区三区视频免费| 欧美女孩性生活视频| 色综合久久天天| 91一区二区在线| 99久久伊人网影院| 成人精品视频网站| 成人aaaa免费全部观看| 成人av午夜电影| 成人av动漫网站| caoporm超碰国产精品| 成人深夜在线观看| 99久久久久久99| 色综合天天综合网国产成人综合天| 国产一区二区伦理片| 激情久久久久久久久久久久久久久久| 另类综合日韩欧美亚洲| 亚洲午夜激情av| 午夜欧美大尺度福利影院在线看| 亚洲v日本v欧美v久久精品| 亚洲美女视频在线观看| 亚洲日本免费电影| 一级中文字幕一区二区| 亚洲国产成人porn| 蜜臀av亚洲一区中文字幕| 久久99在线观看| 国产精品一区2区| av亚洲精华国产精华精| 欧美在线播放高清精品| 51午夜精品国产| 日韩欧美国产不卡| 久久久久99精品国产片| 亚洲天堂福利av| 亚洲444eee在线观看| 精品亚洲aⅴ乱码一区二区三区| 国产91精品露脸国语对白| av成人老司机| 日韩一区二区三区av| 久久久久久久久97黄色工厂| 亚洲特黄一级片| 日韩成人一区二区三区在线观看| 极品少妇xxxx精品少妇偷拍| 成人午夜激情视频| 欧美系列日韩一区| 久久色在线观看| 亚洲欧美日韩小说| 另类综合日韩欧美亚洲| av在线不卡电影| 666欧美在线视频| 国产精品久久久一本精品| 婷婷六月综合网| 国产传媒日韩欧美成人| 欧洲精品在线观看| 久久综合九色综合97婷婷女人| 中文字幕在线播放不卡一区| 日韩**一区毛片| 91论坛在线播放| 久久综合给合久久狠狠狠97色69| 亚洲精品伦理在线| 国产高清精品久久久久| 欧美欧美欧美欧美| 综合网在线视频| 国产自产视频一区二区三区| 色屁屁一区二区| 久久精品一区二区三区不卡| 亚洲成人免费观看| 不卡电影一区二区三区| 精品国产乱码久久久久久图片| 一区二区视频在线| 国产成人精品aa毛片| 制服丝袜av成人在线看| 一区二区三区在线免费视频| 国产精品系列在线播放| 日韩欧美国产麻豆| 亚洲国产精品久久久久秋霞影院 | 国产成人精品一区二区三区四区| 欧美精品第1页| 亚洲另类在线一区| 成人综合婷婷国产精品久久| 在线综合+亚洲+欧美中文字幕| 亚洲女人****多毛耸耸8| 国产剧情在线观看一区二区| 欧美高清视频一二三区| 亚洲人xxxx| 99热国产精品| 欧美激情中文不卡| 国产麻豆日韩欧美久久| 日韩女优毛片在线| 午夜av电影一区| 欧美视频在线观看一区二区| 亚洲日本va在线观看| 成人美女视频在线观看| 久久午夜国产精品| 国内外成人在线视频| 欧美一三区三区四区免费在线看| 亚洲国产精品久久久久婷婷884| 色综合久久久久| 亚洲精选免费视频| 9人人澡人人爽人人精品| 国产清纯美女被跳蛋高潮一区二区久久w| 久久精品国产**网站演员| 欧美一区二区三区在线看| 日本在线不卡视频一二三区| 7777精品伊人久久久大香线蕉的| 亚洲福利视频三区| 欧美精品aⅴ在线视频| 日韩高清不卡一区| 日韩午夜在线播放| 精品亚洲免费视频| 国产色一区二区| 99热国产精品| 亚洲精品免费一二三区| 在线观看av一区| 天天操天天色综合| 欧美一卡二卡三卡四卡| 狠狠色狠狠色综合日日91app| 久久麻豆一区二区| 成人av网站大全| 亚洲欧美日韩一区二区| 欧美日韩在线不卡| 免费在线观看成人| 国产网站一区二区| 99免费精品视频| 亚洲高清中文字幕| 日韩网站在线看片你懂的| 狠狠色综合日日| 亚洲三级在线免费观看| 欧美日韩一区二区欧美激情| 欧美aaaaaa午夜精品| 久久久九九九九| 91蜜桃免费观看视频| 日日欢夜夜爽一区| 久久久久久一二三区| 91在线观看视频| 日韩av在线发布| 国产精品女人毛片| 91福利在线观看| 久久精品国产亚洲aⅴ| 久久精品夜色噜噜亚洲aⅴ| 99久久精品国产精品久久| 亚洲韩国精品一区| 久久青草国产手机看片福利盒子| 成人黄色片在线观看| 午夜视频在线观看一区二区 | 亚洲精品美腿丝袜| 欧美zozozo| 99久久精品免费| 蜜臀av性久久久久av蜜臀妖精| 国产欧美日韩精品在线| 欧美日韩一级大片网址| 国产乱淫av一区二区三区| 亚洲在线视频一区| 国产午夜亚洲精品午夜鲁丝片| 色94色欧美sute亚洲线路一久| 蜜臀a∨国产成人精品| 国产精品乱码人人做人人爱 | 久久夜色精品一区| 色噜噜久久综合| 国内一区二区在线| 一区二区三区美女| 久久婷婷色综合| 在线成人av影院| a级精品国产片在线观看| 美国av一区二区| 亚洲永久精品大片| 中文字幕av不卡| 欧美一级一区二区| 日本精品视频一区二区| 国产精品一区一区| 美女一区二区视频|