code1.txt
来自「发送数据代码,大家可以参考一下的,不好的地方还请多多指教」· 文本 代码 · 共 62 行
TXT
62 行
BYTE KeyBaordSend(BYTE cSend)
{
BYTE ucData;
BYTE i;
BYTE ucPARITY;
// EX1=0; //disable interrupt
mcuClrIntEn();
if (PC_Extern_KeyBoard() == 0x00)
{
MCU_INTENA1A &= 0xEF;
}
ucData = cSend;
KBCLK=1;
if(!KBCLK) //if clk level is low,host disable data transmit,return 0
{
// EX1=1; //enable interrupt
return 0;
}
ucPARITY=Parity(ucData);//caculate the parity bit
//start condition
KBDATA=0;
MCU_Delayxus(12); //delay 16 us
KBCLK=0;
MCU_Delayxus(12); //delay 40 us
//tramsmit 8 bit data
for(i=0;i<8;i++) //send data LSB
{
KBCLK=1;
MCU_Delayxus(10); //delay 16 us
KBDATA=(ucData &0x01);
ucData =ucData >>1;
KBCLK=0;
MCU_Delayxus(12); //delay 16 us
}
//transmit EVEV/ODD parity
KBCLK=1;
KBDATA=ucPARITY; //send Even/ODD parity bit
MCU_Delayxus(12); //delay 16 us
KBCLK=0;
MCU_Delayxus(12); //delay 16 us
//stop condiction
KBCLK=1;
KBDATA=1; //send stop bit
MCU_Delayxus(12); //delay 16 us
KBCLK=0;
MCU_Delayxus(12); //delay 60 us
MCU_Delayxus(12); //delay 16 us
MCU_Delayxus(12); //delay 16 us
KBCLK=1;
MCU_Delayxus(12); //delay 16 us
//EX1=1; //enable interrupt
mcuSetIntEn();
if (PC_Extern_KeyBoard() == 0x00)
{
MCU_INTENA1A |= _BIT4; // enable INT1.4 for external P06 INT
}
return 1;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?