Skocz do zawartości

Przeszukaj forum

Pokazywanie wyników dla tagów 'ST67W61M'.

  • Szukaj wg tagów

    Wpisz tagi, oddzielając przecinkami.
  • Szukaj wg autora

Typ zawartości


Kategorie forum

  • Elektronika i programowanie
    • Elektronika
    • Arduino i ESP
    • Mikrokontrolery
    • Raspberry Pi
    • Inne komputery jednopłytkowe
    • Układy programowalne
    • Programowanie
    • Zasilanie
  • Artykuły, projekty, DIY
    • Artykuły redakcji (blog)
    • Artykuły użytkowników
    • Projekty - DIY
    • Projekty - DIY roboty
    • Projekty - DIY (mini)
    • Projekty - DIY (początkujący)
    • Projekty - DIY w budowie (worklogi)
    • Wiadomości
  • Pozostałe
    • Oprogramowanie CAD
    • Druk 3D
    • Napędy
    • Mechanika
    • Wydarzenia
    • Sprzedam/Kupię/Zamienię/Praca
    • Inne
  • Ogólne
    • Ogłoszenia organizacyjne
    • Dyskusje o FORBOT.pl
    • Na luzie

Kategorie

  • Quizy o elektronice
  • Quizy do kursu elektroniki I
  • Quizy do kursu elektroniki II
  • Quizy do kursów Arduino
  • Quizy do kursu STM32L4
  • Quizy do pozostałych kursów

Szukaj wyników w...

Znajdź wyniki, które zawierają...


Data utworzenia

  • Rozpocznij

    Koniec


Ostatnia aktualizacja

  • Rozpocznij

    Koniec


Filtruj po ilości...

Data dołączenia

  • Rozpocznij

    Koniec


Grupa


Imię


Strona

Znaleziono 1 wynik

  1. Dzień dobry, Od kilku dni staram się utworzyć minimalną aplikacje dla ST67W61M (nowo wypuszczonego modułu WiFI/BLE od ST). Zestaw nad którym pracuje to NUCLEO-H753ZI i X-NUCLEO-67W61M (płytki połączone są przez standardowe złącze arduino). Tutaj link do kodu: https://github.com/RolandSobczak/H753ZI_WIFI Problem polega na tym, że nie jestem w stanie opuścić semafora w kodzie sterownika dostarczanego przez ST. Mianowicie w pliku: `Middlewares/ST/ST67W6X_Network_Driver/Driver/W61_at/w61_at_common.c:372` xReturned = xSemaphoreTake(mdm->sem_if_ready, pdMS_TO_TICKS(4000)); if (xReturned != pdPASS) { SYS_LOG_ERROR("sem_if_ready not received\n"); ret = -1; goto __err; } Do modułu staram się podłączyć przez SPI1. Tutaj jest moja inicjalizacja SPI1: void MX_SPI1_Init(void) { /* USER CODE BEGIN SPI1_Init 0 */ /* USER CODE END SPI1_Init 0 */ /* USER CODE BEGIN SPI1_Init 1 */ /* USER CODE END SPI1_Init 1 */ hspi1.Instance = SPI1; hspi1.Init.Mode = SPI_MODE_MASTER; hspi1.Init.Direction = SPI_DIRECTION_2LINES; hspi1.Init.DataSize = SPI_DATASIZE_8BIT; hspi1.Init.CLKPolarity = SPI_POLARITY_LOW; hspi1.Init.CLKPhase = SPI_PHASE_1EDGE; hspi1.Init.NSS = SPI_NSS_SOFT; hspi1.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_4; hspi1.Init.FirstBit = SPI_FIRSTBIT_MSB; hspi1.Init.TIMode = SPI_TIMODE_DISABLE; hspi1.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE; hspi1.Init.CRCPolynomial = 0x0; hspi1.Init.NSSPMode = SPI_NSS_PULSE_ENABLE; hspi1.Init.NSSPolarity = SPI_NSS_POLARITY_LOW; hspi1.Init.FifoThreshold = SPI_FIFO_THRESHOLD_01DATA; hspi1.Init.TxCRCInitializationPattern = SPI_CRC_INITIALIZATION_ALL_ZERO_PATTERN; hspi1.Init.RxCRCInitializationPattern = SPI_CRC_INITIALIZATION_ALL_ZERO_PATTERN; hspi1.Init.MasterSSIdleness = SPI_MASTER_SS_IDLENESS_00CYCLE; hspi1.Init.MasterInterDataIdleness = SPI_MASTER_INTERDATA_IDLENESS_00CYCLE; hspi1.Init.MasterReceiverAutoSusp = SPI_MASTER_RX_AUTOSUSP_DISABLE; hspi1.Init.MasterKeepIOState = SPI_MASTER_KEEP_IO_STATE_DISABLE; hspi1.Init.IOSwap = SPI_IO_SWAP_DISABLE; if (HAL_SPI_Init(&hspi1) != HAL_OK) { Error_Handler(); } /* USER CODE BEGIN SPI1_Init 2 */ /* USER CODE END SPI1_Init 2 */ } Tutaj moja konfiguracja GPIO: #define CHIP_EN_Pin GPIO_PIN_11 #define CHIP_EN_GPIO_Port GPIOE #define SPI_RDY_Pin GPIO_PIN_13 #define SPI_RDY_GPIO_Port GPIOE #define STLINK_RX_Pin GPIO_PIN_8 #define STLINK_RX_GPIO_Port GPIOD #define STLINK_TX_Pin GPIO_PIN_9 #define STLINK_TX_GPIO_Port GPIOD #define SPI_CS_Pin GPIO_PIN_14 #define SPI_CS_GPIO_Port GPIOD Patrząc w schematy ze strony ST: https://www.st.com/resource/en/schematic_pack/mb2230-antenna-a04-schematic.pdf https://www.st.com/resource/en/schematic_pack/mb1364-h753zi-c01_schematic.pdf Po lewej schemat pinout X-NUCLEO po prawej płytki z MCU Na powyższych grafikach widać, że połączenia powinny wyglądać następująco: Czy ktoś jest mi wstanie podpowiedzieć dlaczego nie mogę przejść tego kroku? Widzę, że ten semafor jest opuszczany w tym miejscu: `Middlewares/ST/ST67W6X_Network_Driver/Driver/W61_at/w61_at_common.c:723` MODEM_CMD_DEFINE(on_cmd_ready) { struct modem *mdm = (struct modem *)data->user_data; (void)xSemaphoreGive(mdm->sem_if_ready); return 0; } Ale nie rozumiem co wywołuje tą część kodu... Poniżej jeszcze zrzuty konfiguracji w CubeMX:
×
×
  • Utwórz nowe...