?? 1797 03 head
字號:
#include <reg51.H>
#define Frequence 11 //晶振頻率單位是MHZ
#define XIAODOU_DELAY 6*Frequence/6 //消抖延時
#define SCAN_V_DEFAULT 0x2c //缺省掃描速率
#define DELAY 10*Frequence/6 //發送程序延時
#define SLEEP 8*Frequence/6 //發送程序延時
sbit Row16=P3^6;
sbit Row17=P3^7;
sbit scroll_led=P3^2;
//sbit scroll_led=P3^3;
sbit num_led=P3^4;
sbit caps_led=P3^5;
sbit KBCLK=P3^0; //鍵盤時鐘線
sbit KBDATA=P3^1; //鍵盤數據線
bit bat(void); //基本保證測試無錯誤返回0,有錯返回1
unsigned char buf_length(); //返回緩沖區數據個數
bit command_s(); //鍵盤命令檢查,有命令要接受返回1
void clr_buf(void); //清鍵盤緩沖區
void del_head(); //刪除緩沖區頭
unsigned char exist(unsigned char);
//檢查鍵盤緩沖區中是否有與參數相等數,有則返回位置,無則返回255
//bit emputy(); //檢查鍵盤緩沖區是否空,是返回1
unsigned char get_head(); //取鍵盤緩沖區頭,頭指針不變
unsigned char get_head_f();
//取緩沖區頭對應標記,標記為0表示對應鍵已經松下
bit insert(unsigned char,unsigned char);
//插入緩沖區,并設置對應標記,成功則返回1
void ini_timer01(); //定時器初始化
void receive_process(); //接收鍵盤命令并處理
void reset(); //軟件復位
unsigned char scankb(unsigned char); //掃描第N行,返回列直
void send_buf(); //發送緩沖區掃描碼
bit send_code(unsigned char _KeyNo,bit flag);
//發送按鍵掃描碼,flag=0發送斷開碼,flag=1發送接通碼
bit send(unsigned char); //發送數據
void set_default(); //設置缺省值
void set_timer1(); //復位定時器1
void set_scan_v(unsigned char); //設置掃描速度(拍發速率、延遲時間)
void set_flag(unsigned char); //設置緩沖區對應標記
void set_led(unsigned char); //設置LED
void secret(unsigned char);
void scan(void);
unsigned char get_end();
bit emputy(void);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -