Help
Advanced Member level 2
Hi,
I already done the Host-to-KB code. Can you check for me? How can we test ourself?
Thank You.
I already done the Host-to-KB code. Can you check for me? How can we test ourself?
Code:
#include <reg51.h>
#define BYTE (7)
#define PARITY (1)
char D_Bus[BYTE+PARITY]={0};
sbit clockpin = P3^2;
sbit datapin = P3^7;
void sendbit(char b){
char i;
datapin=b;
for (i=0; i<5; i++); // Clock Time for Hi
clockpin=0;
for (i=0; i<9; i++); // Clock Time for Lo
datapin=b;
clockpin=1;
}
void D_Buffer(void)
{
char nbit=0, i=0;
do
{
clockpin=1;
for (i=0; i<5; i++) // Tck - Clock Time for Hi
{
D_Bus[nbit] = datapin;
}
clockpin=0;
for (i=0; i<9; i++) // Tck - Clock Time for Lo
{
D_Bus[nbit] = datapin;
}
}while(nbit++ <= 8);
sendbit(1); // HI
sendbit(0); // ACK
}
void Host_To_Drive(void) interrupt 0
{
char i=0;
while(!INT0);
datapin=0;
clockpin=1; // Raising Edge
for (i=0; i<5; i++); // Tck - Clock Time for Hi
clockpin=0; // Falling Edge
for (i=0; i<2; i++); // Tck - Clock Time for Lo
D_Buffer();
}
void main (void) {
IT0 = 0;
IE0 = 0;
EX0 = 1;
TF0 = 0;
EA = 1;
while(1)
{
}
Thank You.