В чем разница между библиотеками LwIP PPPoS? Какой из них мне следует использовать, что дает STM32CubeMX или на каких примерах?

Когда я использую STM32CubeMX, он дает мне следующие источники: https://github.com/tabascoeye/lwip/blob/master/src/netif/ppp/pppos.c
с функциями pppos_create(..), pppos_input(..), ppp_connect(..)

Когда я смотрю на примеры, созданные 1 год назад, он использует следующее:
https://github.com/bosch-ros-pkg/stm32/blob/master/src/transport/lwip/src/netif/ppp/ppp.c
с функциями pppInit(), pppOverSerialOpen(..).

Последняя библиотека, кажется, специализируется для STM32 из-за расположения файла (...stm32/blob/master...). Есть ли у вас смысл подходить к моему? Я видел, что http://lwip.wikia.com/wiki/PPP использует последний источник. Какой я должен использовать?

1 ответ

Решение

CubeMx использует абстракцию над библиотеками. То же самое происходит с FreeRTOS (создание новой задачи осуществляется с помощью osThreadCreate() поверх xTaskCreate()).

Я не знаю о Lwip, но с FreeRTOS можно использовать реальную библиотеку, включая хорошие заголовки, потому что генерируются как реальная версия, так и версия CubeMx. Таким образом, можно использовать реальный, который является более эффективным.

Если вы используете CubeMx, я рекомендую использовать функции, которые дает CubeMx. Поскольку CubeMx уже генерирует большую часть инициализации LWIP с этими функциями, код будет чище, если вы тоже их используете, а также будет намного проще.

Другие вопросы по тегам