int REM_pad_set_item(const char *item, const char *value) { char result; _hold_signals(1); _send_ident(PAD_SET_ITEM); _send_text(item); _send_text(value); _get_char(&result); _hold_signals(0); return result; }
int REM_pad_append_item(const char *item, const char *value, int replace) { char result; _hold_signals(1); _send_ident(PAD_APPEND_ITEM); _send_text(item); _send_text(value); _send_int(&replace); _get_char(&result); _hold_signals(0); return result; }
int REM_pad_create(const char *pad) { char result; _hold_signals(1); _send_ident(PAD_CREATE); _send_text(pad); _get_char(&result); _hold_signals(0); return result; }
int REM_pad_delete_item(const char *name) { char result; _hold_signals(1); _send_ident(PAD_DELETE_ITEM); _send_text(name); _get_char(&result); _hold_signals(0); return result; }
int REM_pad_select(const char *pad) { char result; _hold_signals(1); _send_ident(PAD_SELECT); _send_text(pad); _get_char(&result); _hold_signals(0); return result; }
int REM_pad_get_item(const char *item, char ***list, int *count) { char result; _hold_signals(1); _send_ident(PAD_GET_ITEM); _send_text(item); _get_char(&result); if (result == OK) _get_list(list, count); _hold_signals(0); return result; }
/** * \brief usb_cdc_serial Application entry point. * * Initializes drivers and start the USB <-> Serial bridge. */ int main(void) { uint8_t is_usb_connected = 0; uint8_t usb_serial_read = 1; /* Disable watchdog */ wdt_disable(); /* Configure console */ board_cfg_console(); /* Output example information */ printf("-- USB Device CDC Serial Project %s --\n\r", SOFTPACK_VERSION); printf("-- %s\n\r", BOARD_NAME); printf("-- Compiled: %s %s --\n\r", __DATE__, __TIME__); /* Initialize all USB power (off) */ usb_power_configure(); /* Configure USART */ _configure_usart(); /* CDC serial driver initialization */ cdcd_serial_driver_initialize(&cdcd_serial_driver_descriptors); /* Help informaiton */ _debug_help(); /* connect if needed */ usb_vbus_configure(); /* Driver loop */ while (1) { /* Device is not configured */ if (usbd_get_state() < USBD_STATE_CONFIGURED) { if (is_usb_connected) { is_usb_connected = 0; is_cdc_serial_on = 0; } } else if (is_usb_connected == 0) { is_usb_connected = 1; } /* Serial port ON/OFF */ if (cdcd_serial_driver_get_control_line_state() & CDCControlLineState_DTR) { if (!is_cdc_serial_on) { is_cdc_serial_on = 1; } if(usb_serial_read == 1) { usb_serial_read = 0; /* Start receiving data on the USB */ cdcd_serial_driver_read(usb_buffer, DATAPACKETSIZE, _usb_data_received, &usb_serial_read); } if(usart_rx_flag == true) { usart_rx_flag = false; cdcd_serial_driver_write((void *)&char_recv, 1, 0, 0); if(is_cdc_echo_on) { _usart_dma_tx((uint8_t*)&char_recv, 1); } } } else if (is_cdc_serial_on) { is_cdc_serial_on = 0; } if (console_is_rx_ready()) { uint8_t key = console_get_char(); /* ESC: CDC Echo ON/OFF */ if (key == 27) { printf("** CDC Echo %s\n\r", is_cdc_echo_on ? "OFF" : "ON"); is_cdc_echo_on = !is_cdc_echo_on; } else if (key == 't') { /* 't': Test CDC writing */ _send_text(); } else { printf("Alive\n\r"); cdcd_serial_driver_write((char*)"Alive\n\r", 8, NULL, NULL); _usart_dma_tx((uint8_t*)"Alive\n\r", 8); _debug_help(); } } } }