Does anyone have an example of a CDC Read using the CDC serial port middleware?
As soon as I invoke cdcf_acm_read() and send it something via TeraTerm my board disconnects via USB. Not sure how to troubleshoot it.
I can send just fine, but not receive.
#include <atmel_start.h>
int main(void)
{
/* Initializes MCU, drivers and middleware */
atmel_start_init();
char cdc_output_buffer[100] = {0};
int counter = 0;
int buffer_length = 0;
while (1){
sprintf(cdc_output_buffer, "Test: %i (%i)\r\n", counter, strlen(cdc_output_buffer));
cdcdf_acm_write(cdc_output_buffer, strlen(cdc_output_buffer));
delay_ms(500);
read_and_print_cdc();
delay_ms(500);
counter++;
}
}
void read_and_print_cdc(){
char cdc_debug_buffer[50] = {0};
char cdc_read_buffer[50] = {0};
int32_t cdc_resp = 0;
cdc_resp = cdcdf_acm_read(&cdc_debug_buffer, sizeof(cdc_debug_buffer));
//sprintf(cdc_debug_buffer, "Read Buffer: %s (%i)\r\n", cdc_read_buffer, strlen(cdc_debug_buffer));
//cdcdf_acm_write(cdc_debug_buffer, strlen(cdc_debug_buffer));
}