void setup(uint8_t addr, uint8_t* bs, int rlen, int wlen) { twiStore = bs; read_len = rlen; write_len = wlen; TWAR = addr << 1; #ifdef TWAMR TWAMR &= (1 << 0); // ensure there is no mask #endif // TWDR = 0x00; // Default content = SDA released. init_ack(); }
int main(){ //unsigned int last = 0; printf("BEGIN TIMESTAMP: %d\n\n", time(NULL)); load(&state); print_state(&state); init_timer(); init_ack(); print_state(&state); printf("\nSlow ticks: %u\nFast ticks: %u\n", slow_tick, fast_tick); delay(500); //while( slow_tick < 36 ){ // if(last != slow_tick){ // last = slow_tick; // printf("%u\n", state.echo); // } //} printf("\nSlow ticks: %u\nFast ticks: %u\n", slow_tick, fast_tick); print_state(&state); deinit_timer(); deinit_ack(); printf("\nSlow ticks: %u\nFast ticks: %u\n", slow_tick, fast_tick); printf("Ticks: %d\n", state.ticks); printf("\nTime: %dus\nRange: %d cm\n", state.time, state.range); printf("Ack7: %u, sent_sigs: %u\n", int7, debug_sent_signals); printf("Old ack: %p\n", old_ack7); printf("\n END TIMESTAMP: %d\n", time(NULL)); return 0; }
static void s_RX_SKIP() { if ( out_p != (out_q-1) ) init_ack(); else init_nothing(); }