Я связал плату разработки ATSAMA5D36 с графическим интерфейсом, используя USB CDC Serial.
Требование:
-Читать идентификатор от GU (1) I -> Отправить ответ (2) -> Считать полученный ответ (3).
-Мне нужно получить идентификатор, который отправляется с помощью графического интерфейса, и отправить ответ обратно с помощью записи вызова и прочитать полученные данные для ответа.
- Ошибка чтения данных при втором вызове чтения - «Чтение полученного ответа (3). '
КОД SNIPPET 1:
while(1){
if(usb_serial_read == 1)
CDCDSerialDriver_Read(usbBuffer,DATAPACKETSIZE, (TransferCallback)
_UsbDataReceived,&usb_serial_read);}
- Это мой первый вызов для чтения. Я получаю ID этого вызова для чтения, он находится впока цикл.
- Если я получаю идентификатор, мне нужно отправить данные, которые соответствуют полученному идентификатору, путем записи вызова, в другой функции
КОД SNIPPET 2:
int data_to_send(uint8_t* msg)
{
uint32_t received=20;
wifi_info_t Wifi_Param;
strcpy(Wifi_Param.WifiApn,"SEND_DATA");
char tempBuffer[100];
strcpy(tempBuffer,Wifi_Param.WifiApn);
memcpy((uint8*)usbBuffer,tempBuffer,sizeof(usbBuffer));
CDCDSerialDriver_Write(usbBuffer, received, 0, 0); //SEND DATA TO GUI
memset(usbBuffer,0,sizeof(usbBuffer));
CDCDSerialDriver_Read(usbBuffer,DATAPACKETSIZE, (TransferCallback)
_UsbDataReceived1,0); // READ RESPONSEF ROM GUI
return (SUCCESS);
}
Здесь, в моем приложении, не удается прочитать «READ RESPONSE FROM GUI» при вызове чтения.
Мне нужно прочитать ответ на вызов read в этой функции read read ничего не читает.
Ответ читается вызовом чтения в цикле while "CODE SNIPPET 1".
Мне нужно сделать так, чтобы при вызове чтения в функции "int data_to_send (uint8_t * msg)" нужно было прочитать ответ из GUI.
МОИ ПРОБЫ:
- Здесь мое первое чтение должно быть внутри, в то время как () я не могу изменить, что этодля поддержания устройства в рабочем состоянии.
Второй вызов чтения в функции. Я добавил его через некоторое время и проверил, что он не читает никаких данных.
Это не проблема с файлами и заголовками, я добавил все на основной.
Пожалуйста, проверьте проблему и дайте мне решение, любая помощь будет оценена.
Заранее спасибо