Example #1
0
static void
i2c_ack()
{
  MAKE_DATA_OUTPUT();
  CLEAR_DATA();
  pulse_clock();
}
Example #2
0
static void
i2c_end()
{
  MAKE_DATA_OUTPUT();
  CLEAR_DATA();
  i2c_delay_us(100);
  SET_CLOCK();
  i2c_delay_us(100);
  SET_DATA();
}
Example #3
0
static void
i2c_start()
{
  SET_DATA();
  SET_CLOCK();
  MAKE_DATA_OUTPUT();
  i2c_delay_us(100);
  CLEAR_DATA();
  i2c_delay_us(100);
  CLEAR_CLOCK();
}
Example #4
0
static PCS_STREAM_DATA *new_dp(int show_errors, int persistent)
{
	PCS_STREAM_DATA *dp = NULL;

	PEALLOCATE(dp, sizeof(PCS_STREAM_DATA), persistent);
	CLEAR_DATA(*dp);
	dp->persistent = persistent;

	dp->show_errors = show_errors;

	return dp;
}
Example #5
0
void i2c_end(){
	MAKE_DATA_OUTPUT();
	CLEAR_DATA();
	wait();
	wait();
	wait();
	wait();
	SET_CLOCK();
	wait();
	wait();
	wait();
	wait();
	SET_DATA();
	printf(" i2c_end\n");
}
Example #6
0
void i2c_start(){
	SET_DATA();
	SET_CLOCK();
	MAKE_DATA_OUTPUT();
	wait();
	wait();
	wait();
	wait();
	CLEAR_DATA();
	wait();
	wait();
	wait();
	wait();
	CLEAR_CLOCK();
	printf(" i2c_start\n");
}
Example #7
0
static unsigned char
i2c_write(unsigned char c)
{
  unsigned char i;
  MAKE_DATA_OUTPUT();
  for (i = 0; i < 8; i++) {
    if (c & 0x80) {
      SET_DATA();
    } else {
      CLEAR_DATA();
    }
    pulse_clock();
    c = c << 1;
  }
  i = read_bit();
  return i == 0;
}
Example #8
0
char i2c_write(char c){ 
	int i;
	MAKE_DATA_OUTPUT();
	for(i = 0; i < 8; i ++){
		if(c & 0x80){
			printf("1");
			SET_DATA();
		}else{
			printf("0");
			CLEAR_DATA();
		}
		pulse_clock();
		c = c << 1;
	}
 	i = read_bit();	
	printf("%x ", c & 0xff);
	return i == 0;
} 
Example #9
0
void i2c_ack(){
	MAKE_DATA_OUTPUT();
	CLEAR_DATA();
	pulse_clock();
	printf(" i2c_ack\n");
}