Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
STM32 USB/CDC
SQ8MVY Offline
Paweł
****

Liczba postów: 724
Dołączył: 30-07-2011
Post: #12
RE: STM32 USB/CDC
Witam,

Z braku Discovery F4 zrobiłem test na discovery F429.
Ma on 2 porty USB - HS oraz FS. Port FS jest zajęty przez jakieś peryferium na PCB, ale dostępny jest port HS, który jest wyprowadzony na złącze mikroUSB - dla użytkownika.
W związku, że użyłem portu USB HS, a nie FS jak u Ciebie, nazwa struktury jest hUsbDeviceHS a nie hUsbDeviceFS oraz funkcja wysyłająca przez USB to CDC_Transmit_HS a nie CDC_Transmit_FS.


Konfiguracja wygenerowana najnowszym stm32CubeMX.

Nie zauważyłem żadnych problemów, na które Ty napotkałeś.

Kod testowy:
Kod:
char bufor[128];
uint8_t licznik, rozmiar;

  while (1)
  {

      sprintf(bufor, " id: %u \r\n dev_state:  %u \r\n ep0_state:  %lu \r\n dev_address: %u ",
        hUsbDeviceHS.id, hUsbDeviceHS.dev_state, hUsbDeviceHS.ep0_state, hUsbDeviceHS.dev_address);

      ILI9341_Print_String(0, 0,RED, bufor);


      if (hUsbDeviceHS.dev_state == USBD_STATE_CONFIGURED)
      {

          ILI9341_Print_String(0, 80, BLUE, " USB PODPIETE !!");

      } else
      {

         ILI9341_Print_String(0, 80, BLUE, " USB NIEAKTYWNE !!!");
      }
      

      rozmiar = sprintf(bufor, " Wiadomosc numer: %u   \r\n", licznik);

      CDC_Transmit_HS(bufor, rozmiar);
      ILI9341_Print_String(0, 100, GREEN, bufor);
      licznik++;

  }

A tu jest link do filmiku prezentujący prawidłową pracę, bez względu, czy USB jest podpięte czy odpięte.

Program nie zatrzymuje się na CDC_Transmit_HS(bufor, rozmiar) , gdy USB jest odpięte/nieaktywne. W takim wypadku sprawdzanie, czy port na komputerze jest otwarty/zamknięty nie jest potrzebne.

I widok konsoli terminala:
İmage

73 Paweł
(Ten post był ostatnio modyfikowany: 09-04-2017 14:41 przez SQ8MVY.)
09-04-2017 14:41
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Odpowiedz 


Wiadomości w tym wątku
STM32 USB/CDC - SP9RQA - 06-04-2017, 21:14
RE: STM32 USB/CDC - SQ8MVY - 06-04-2017, 21:34
RE: STM32 USB/CDC - SP9RQA - 06-04-2017, 21:56
RE: STM32 USB/CDC - SQ8MVY - 06-04-2017, 22:11
RE: STM32 USB/CDC - SP9RQA - 06-04-2017, 22:21
RE: STM32 USB/CDC - SQ8MVY - 06-04-2017, 22:51
RE: STM32 USB/CDC - SP9RQA - 07-04-2017, 14:21
RE: STM32 USB/CDC - SQ8MVY - 07-04-2017, 15:42
RE: STM32 USB/CDC - SP9RQA - 07-04-2017, 16:30
RE: STM32 USB/CDC - SQ8MVY - 07-04-2017, 20:36
RE: STM32 USB/CDC - SP9RQA - 09-04-2017, 11:23
RE: STM32 USB/CDC - SQ8MVY - 09-04-2017 14:41
RE: STM32 USB/CDC - SP9RQA - 09-04-2017, 14:48
RE: STM32 USB/CDC - SQ8MVY - 09-04-2017, 16:51
RE: STM32 USB/CDC - SP9RQA - 09-04-2017, 17:53
RE: STM32 USB/CDC - SQ8MVY - 09-04-2017, 21:32
RE: STM32 USB/CDC - SP3GO - 30-11-2017, 11:54

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości