Устройство связи USB CDC Ожидание второй команды от хоста для отправки ответа на первую команду - PullRequest
0 голосов
/ 23 января 2019

Я работаю с Atmel Studio 7.0, код, который я использую: USB Класс коммуникационного устройства (CDC) для ATSAMD21 . Мое приложение - прочитать команду с хоста на устройство и выполнить операцию, предложенную хостом, и отправить подтверждение обратно на хост с устройства.

  • Java GUI, который мы записываем в MCU USB, мы будем получать данные в MCU, используя udi_cdc_read_buf () , и полученные данные мы отправляем обратно на хост JAVA в качестве подтверждения, используя udi_cdc_write_buf () .

  • 1.Device Ожидание второй команды от хоста для отправки ответа на первую команду.

1-я команда от хоста ----> Не получено подтверждение от устройства к хосту

2-я команда от хоста ----> Хост получил подтверждение для 1-й команды.

3-я команда от хоста -----> Хост получил подтверждение 2-я команда.

  • Здесь, если я отлаживаю код, я вижу данные "3434" в буфере. Устройство отправляет данные на хост только при получении других данных с хоста.

КОД SNIPPET

    int write_data(uint8_t *msg){
    uint8_t buffer[4]="3434";
    udi_cdc_write_buf(buffer,4);
    return (SUCCESS);
  }

---> Как это происходит в USB-коммуникации? Я застрял с этим, любая помощь будет оценена.

...