estin (11.11.2008 12:35, просмотров: 1946)
USB eCos свой "загрузчик" (eCos запускает вторую eCos) Здравствуйте.
Дано:
at91sam7x
Программа, использующая eCos c поддержкой USB slave (serial).
Необходимо:
Обновлять программу через USB. Никаких программаторов JTag, Redboot(необходим usb), т.е. пользователь обновляет прошивку запуском простой утилитки под Линуксом, которая по USB отправляет наш бинарник.
Использовать в загрузчике eCOS необходимо, т.к. в ней есть поддержка USB-slave, а писать USB с нуля - велосипед и трата времени. Плата может подключаться только по USB. Ком-порты заняты. Аппаратура удалена от разработчика и ПО должно обновлятьяс конечным пользователем. Поэтому прошивка будет шифрованной.
Варианты:
Одна eCos. программа обновляет сама себя. Изменяет только определленую функцию по адресу, которая содержит все программу. Как собирать такой проект?
Две eCos. Две независимых прошивки (прошивка для загрузчика - постоянная, прошивка основной программы). Но здесь в целевой проге неработает USB. Что необходимо сделать? Как передать управление с загрузчика на основную программу? Этот вариант плох тем, что много флеши расходуется, т.к. будет дублироваться ОС.с поддержкой USB.