?? interface_ps2.c
字號:
#include"config.h"
//*******************************************************************************************************
//***************************** GLOBAL PERAMETER *************************************
//*******************************************************************************************************
/*********************************************************************************************************
** 函數(shù)名稱: SendCmd2KeyBoard 注意,對系統(tǒng)會有較大影響
** 功能描述: 發(fā)送控制命令到鍵盤
**
** 輸 入: cmd
** 輸 出: test
** 全局變量: 無
** 調(diào)用模塊:
**
** 作 者: 龔樹強
** 日 期: 2004年10月15日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
/* uint8 SendCmd2KeyBoard(unsigned char cmd)
{
unsigned char i,temp;
unsigned char timer;
bit test;
test=1;
PS2_CLK=1;
PS2_DATA=1;
for(i=100;i--;);
PS2_CLK=0;
for(i=100;i--;);
PS2_DATA=0;
PS2_CLK=1;
temp=cmd;
for(i=0;i<8;i++)
{
for(timer=OVERTIME_THREAD;timer--;)
{
if(!PS2_CLK){break;}
}
if(!timer)return 0;
temp=cmd&0x01;
if(temp)
{
PS2_DATA=1;
test=!test;
}
else
PS2_DATA=0;
for(timer=OVERTIME_THREAD;timer--;)
{
if(PS2_CLK){break;}
}
if(!timer)return 0;
cmd>>=1;
}
for(timer=OVERTIME_THREAD;timer--;)
{
if(!PS2_CLK){break;}
}
if(!timer)return 0;
PS2_DATA=test;
for(timer=OVERTIME_THREAD;timer--;)
{
if(PS2_CLK){break;}
}
if(!timer)return 0;
for(timer=OVERTIME_THREAD;timer--;)
{
if(!PS2_CLK){break;}
}
if(!timer)return 0;
PS2_DATA=1;
for(timer=OVERTIME_THREAD;timer--;)
{
if(PS2_CLK){break;}
}
if(!timer)return 0;
PS2_CLK=1;
PS2_DATA=1;
return 1;
}
*/
/*********************************************************************************************************
** 函數(shù)名稱: LedNumOn
** 功能描述: 發(fā)送控制命令到鍵盤
**
** 輸 入: cmd
** 輸 出: test
** 全局變量: 無
** 調(diào)用模塊:
**
** 作 者: 龔樹強
** 日 期: 2004年10月15日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void LedNumOn(void)
{
// EA=0;
// SendCmd2KeyBoard(0xed);
// SendCmd2KeyBoard(0x02);
// SendCmd2KeyBoard(0xed);
// SendCmd2KeyBoard(0x02);
// EA=1;
_Flag_StateLed=1;
Write728x(0x18,0x77);
}
/*********************************************************************************************************
** 函數(shù)名稱: LedNumOff
** 功能描述: 發(fā)送控制命令到鍵盤
**
** 輸 入: cmd
** 輸 出: test
** 全局變量: 無
** 調(diào)用模塊:
**
** 作 者: 龔樹強
** 日 期: 2004年10月15日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void LedNumOff(void)
{
// EA=0;
// SendCmd2KeyBoard(0xed);
// SendCmd2KeyBoard(0x00);
// SendCmd2KeyBoard(0xed);
// SendCmd2KeyBoard(0x00);
_Flag_StateLed=0;
Write728x(0x18,0x77|0x80);
// EA=1;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -