Відповісти

Введіть повідомлення і натисніть Надіслати
Параметри

Назад

Огляд теми (нові повідомленні вгорі)

dimich
Вчора 23:29:32

Що у вас за конфігурація platformio?
Які саме ліби використовуєте?

Для термостата що там потрібно? Регулятор та примітивний UI. Не дуже розумію, навіщо там RTOS.

jokeR пише:

взяв тулзовину puncover, дивлюсь куди ділось 32к флешки.

А objdump що показує? Окрім .text є ще секції .data та .rodata.

Наприклад, дисплей хоч і символьний, але бібліотека може тягнути кастомні бітмапи для завантаження в CGRAM. 

jokeR пише:

Я так розумію, дуже багато місця зайняла float математика, яку притягнула з собою ліба термометра (_adddf3, __aeabi_dmul і тому подібне).

Їх може і який-небудь snprintf() притягнути.

jokeR пише:

Але абсолютний рекордсмен - HAL (HAL_I2C_EV_IRQHandler, HAL_RCC_OscConfig,HAL_UART_IRQHandler).

Так це мабуть ардуінівська Wire. Вона дурна.
UPD: сама по собі HAL_I2C_EV_IRQHandler() в stm32f1xx_hal_i2c.c монструозна. Не розумію, навіщо імплементувати і master, і slave mode в одному місці одночасно.

jokeR
Вчора 15:32:09

Оце заходився зробити нагрівач з текрмостабілізацією. Нічого складного: термопара з датчиком MAX6675, LCD дисплей 1602, енкодер, симистор. Замість контроллера взяв stm32f103 - китайську blue pill. Всередину - freertos (красиво ж wink ). Готові ардуїнівські ліби зручно.. Х%%к-х%%к і в production wink І воно все разом - упсь, не влізло sad Штош, взяв тулзовину puncover, дивлюсь куди ділось 32к флешки.
2026-04-10_15-05.png

Я так розумію, дуже багато місця зайняла float математика, яку притягнула з собою ліба термометра (_adddf3, __aeabi_dmul і тому подібне). Але абсолютний рекордсмен - HAL (HAL_I2C_EV_IRQHandler, HAL_RCC_OscConfig,HAL_UART_IRQHandler). Без HAL мабуть буде незручно. freertos - помітно. Страшні ардуїнівські функції десь в кінці.

Можна, звичайно, трохи побайто%%битись, переписати лібу без float. Або без freertos обійтись. Чи взяти інший фреймворк спробувати. Що порадите?

Підвал форуму