int initChip(void){ /* Set boot */ uart_set_rts(0); reset(); unsigned char cmd[] = {0x7F}; uart_write(cmd, 1); /* tell bootloader to startup */ time_sleep(0.1); //need this for some reason int ok = wait_for_ask(); if(ok){ mdebug(0, "init success"); } else{ mdebug(0, "init failed"); } return ok; }
static void handle_set_rts(const char *req, int *req_index) { int val; if (ei_decode_boolean(req, req_index, &val) < 0) { send_error_response("einval"); return; } if (!uart_is_open(uart)) { send_error_response("ebadf"); return; } if (uart_set_rts(uart, !!val) >= 0) send_ok_response(); else send_error_response(uart_last_error()); }
void releaseChip(void){ uart_set_rts(1); reset(); }