Подскажите по UART в STM32, в разных примерах то есть то нет настройка портов перед настройкой UART'а Речь про это: GPIO_InitStruct.GPIO_Pin = RS485_PIN_TX; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_Init(RS485_PORT, &GPIO_InitStruct); GPIO_InitStruct.GPIO_Pin = RS485_PIN_RX; GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_Init(RS485_PORT, &GPIO_InitStruct); Нужно ли оно и как работает без настройки GPIO ?

Комментарии: 7

  1. Byte

    Нужно. Если пины уарта в пуш-пулл (TX) и флоатинг (RX) не переведешь — работать не будет.

    • Anonim

      есть эмуляторы контроллеров oculus rift? чтобы использовать шлем без контроллеров эм, станция отслеживания хочу отключить, чтобы без ничего шлем юзать, запустить прилогу и результат выполнения просматривать просто и всё

    • Serg

      Вот так работает: gpioInitEx(portTXRX, pinRX, GPIO_Mode_AF, GPIO_PuPd_UP); GPIO_PinAFConfig(portTXRX, getPinSource(pinRX), GPIO_AF_USARTx); gpioInitEx(portTXRX, pinTX, GPIO_Mode_AF, GPIO_PuPd_UP); GPIO_PinAFConfig(portTXRX, getPinSource(pinTX), GPIO_AF_USARTx); Но я не пойму чем это отличается от GPIO_Init

      • Byte

        Тем, что функция из HAL, кажется, а не из SPL?

        • Serg

          все из SPL

          • Byte

            gpioInitEx не видел. Щас гляну, в чем разница. Хм. Не нахожу. Ты где это откопал? GPIO_PinAFConfig — это alternate functions, всё правильно. Можно так, а можно эдак. А вот инит…

            • Serg

              А что делает GPIO_PinAFConfig ? Если все равно надо пины настраивать с помощью GPIO_Init

Не нашли ответ?

Вам также может быть интересно