Bootloader Atmega2560
Окружение
compiler | avr-gcc 5.4.0+ (libc 2.0.0+) |
binutils | 2.26.20160125 |
Hardware
MCU | Atmega2560 |
EEPROM | M24M02-DR 2Mbit |
Display | HD44780@2x16 via PCF8575 (lower byte) |
Задача
Реализовать bootloader (далее ПО) для обновления основного ПО. Прошивка хранится во внешней EEPROM в виде файла по фиксированному пути файловой системы LittleFS. Размер образа ПО не должен превышать 4096 слов, а лучше 2048. Объем используемой оперативной памяти не должен превышать 8 КиБ, а лучше 4 КиБ. После успешной процедуры обновления файл обновления должен быть удален из файловой системы. Допускается перенос таблицы векторов прерываний в область bootloader при условии восстановления первоначального значения перед запуском основного приложения.
Требования
ПО должно быть устойчиво к внезапному пропаданию питания.
ПО должно проверить целостность файловой системы перед началом обновления.
Необходимо отобразить на экране статичный текст с сообщением о том, что начался процесс обновления. Можно добавить динамическую надпись-индикатор, отображающую текущий прогресс процедуры обновления.
На обновляемой плате присутствует оптопара, отображающая текущее состояние питания всей схемы. ПО должно проверить источник питания (основной/резервный) перед началом обновления и игнорировать любые попытки обновления при питании от резервного источника.
-
Мы передадим вам железку.
Код весь ведется на гите.
Есть основной эмбед программист, кот. даст детальные комментарии и уточнения. Сейчас он в отпуске до понедельника 16.08.
-
Current freelance projects in the category Embedded Systems & Microcontrollers
Reprogramming of an automatic industrial press
113 USD
Describing the operating principle in effect, as well as the changes that need to be made Please suggest prices Operating principle of the equipmentThe equipment consists of three main units that operate synchronously:stepper motor feeder (feeder);die for punching… Embedded Systems & Microcontrollers, Engineering ∙ 3 days 4 hours back ∙ 4 proposals |
Writing code for ArduinoIt is necessary to develop software for a weight dispenser based on Arduino Uno. Components: Arduino Uno R3 HX711 + load cell LCD1602 I2C display MAX7219 LED matrix 8x32 5 control buttons 4-channel relay 2 signal lamps Coarse dosing vibrator Precise dosing vibrator Operation… C & C++, Embedded Systems & Microcontrollers ∙ 10 days 4 hours back ∙ 15 proposals |
I am looking for a specialist with experience in reverse engineering and emulating old gaming machines and multigame systems.
113 USD
Interested in: — launching old gaming platforms on Windows or VM, — emulation of service/admin menu, — credits, statistics, meters, — working with HDD/CF images, — firmware/ROM dumps, — bypassing hardware checks, — COM/LPT/I/O boards, — emulation of bill acceptor, hopper, and… C & C++, Embedded Systems & Microcontrollers ∙ 13 days 2 hours back ∙ 3 proposals |
Create a COM port for the power meterHello, I need to read data and send it to a computer (USB). The power meter has RS-485 and RS-232, but they are not working. I took it to a service center, and they said that the board was not properly wired at the factory. So it would be easier to read from the display or… Embedded Systems & Microcontrollers ∙ 13 days 2 hours back ∙ 5 proposals |
Development of a water dispenser controller from scratchIt is necessary to develop a technical specification and a complete controller for the water dispenser from scratch. We can also consider the additional development of a personal account for partner owners of our equipment. Embedded Systems & Microcontrollers ∙ 13 days 3 hours back ∙ 9 proposals |