Размер флешки в boards.txt ATmega 328p 32u4
Микроконтроллеры ATmega328p и ATmega32u4 имеют 32 КБ флэш-памяти (согласно техническому описанию). Загрузчик для каждого микроконтроллера имеет разный размер (около 512 байт для 328p и 4 кб для 32u4).
Почему в файле boards.txt параметр "upload.maximum_size" равен 32256 для 328p и 28672 для 32u4?
Я должен учитывать размер загрузчика, параметр «upload.maximum_size» для 328p должен быть около 31,5 КБ, а не 32 КБ. И, если нам не нужно учитывать размер загрузчика, как конфигурация по умолчанию boards.txt (выше) для 328p, параметр «upload.maximum_size» для 32u4 должен быть 32k, а не 28k. Верно?
Спасибо
@Mario J., 👍0
1 ответ
Лучший ответ:
1 КБ
– это 1024 байта, а не 1000 байт.
Поэтому 32 КБ = 32768 байт.
32768-512=32256
, именно это значение используется для upload.maximum_size для 328p.
4 КБ = 4096 байт. 32768-4096=28672
, что является значением для 32u4.
- В чем разница между ATMEGA32 и ATMEGA328?
- Где в даташите предупреждение о ненадежности чтения PINxn?
- Как использовать SPI на Arduino?
- Я закирпичил свой Arduino Uno? Проблемы с загрузкой скетчей на плату
- Не удается снова загрузиться после смены платы
- Отключение внутренних подтягивающих резисторов i2c
- Генерация стабильной частоты
- Arduino UNO для получения подписи чипа ATmega328P-PU
Ты прав @Gerben. Извините меня за мою ошибку внимания. Я нашел [эту](https://arduinoprosto.ru/q/20479/atmega32u4-leonardo-pro-micro-bootloader-8k-rather-than-4k) тему о размере флэш-памяти 32u4. Возможно ли, что доступная флэш-память (с загрузчиком) будет меньше ~ 28 КБ из-за стека USB (как задано в теме)?, @Mario J.
Да вы правы. Загрузчик 32u4 должен реализовать стек USB, а 328p — только UART, что намного проще., @Gerben