реклама на сайте
подробности

 
 
> Bootloader для 120-го Сигнала
Незнайка
сообщение Sep 8 2006, 03:19
Сообщение #1





Группа: Новичок
Сообщений: 6
Регистрация: 2-02-06
Пользователь №: 13 893



Поделитесь, плз, проверенным автозагрузчиком памяти программ, работающим через UART, и управляющимся програмно от компа.

Железка уже готова, и грузится первый раз через JTAG, но поставить новую версию - проблема, тк приходится вскрывать корпус :-(
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Kolia
сообщение Feb 7 2007, 11:13
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 188
Регистрация: 28-09-06
Из: Minsk
Пользователь №: 20 762



Люди!!!
Подскажите как лучше написать bootloader для Cygnala или вообще для 51 контроллера.
В общем меня интересуют следующие вопросы:
- где в пространстве программ лучше расположить bootloader и сам загружаемый код?
- как поступить с прерываниями - нужно ли их переопределять?

Может у кого есть готовый рабочий код - поделитесь пожаййсто.

help.gif
Go to the top of the page
 
+Quote Post
mihask
сообщение Feb 19 2007, 07:41
Сообщение #3


Частый гость
**

Группа: Validating
Сообщений: 80
Регистрация: 7-12-05
Пользователь №: 11 905



Цитата(Kolia @ Feb 7 2007, 14:13) *
Люди!!!
Подскажите как лучше написать bootloader для Cygnala или вообще для 51 контроллера.
В общем меня интересуют следующие вопросы:
- где в пространстве программ лучше расположить bootloader и сам загружаемый код?
- как поступить с прерываниями - нужно ли их переопределять?

Может у кого есть готовый рабочий код - поделитесь пожаййсто.

help.gif


Нижние 0x1000 байт ПЗУ проц-а отводятся под сам bootloader. При подаче питания bootloader инициализирует timer и UART на определённую скорость приёма-передачи (например 9600) и ждёт команды с PC "начать работать" (например нажатие клавиши "пробел" на PC) определённое время (3 сек). Если такая команда приходит bootloader продолжает работать (выдает меню, типа: 1-Сбросить flash, 2-Начать загрузку HEX-файла, 3-Выход). Если нет - заканчивает свою работу (программа переходит на адрес 0x1000 ПЗУ).

Для работы с bootloader-ом по выше описанной схеме на PC предварительно необходимо открыть соответствующий COM порт (программа HyperTerminal) на соответствующей bootloader-у скорости (в нашем примере 9600). После входа в bootloader и выбора пункта "Начать загрузку HEX-файла" для загрузки HEX-файла выбрать в меню HyperTerminal-а "передача" пункт "отправить текстовый фаил" и соответствующий HEX-фаил. Дождавшись от bootloader-а сообщения "Загрузка закончена", пересбросить девайс и на этот раз не подавать команды процу войти в bootloader.

Расположение bootloader-а по адресам 0-0x1000 ПЗУ позволяет в случае неудачной "зашивки" не потерять контроль над проц-ом и повторить попытку.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th July 2025 - 09:52
Рейтинг@Mail.ru


Страница сгенерированна за 0.01388 секунд с 7
ELECTRONIX ©2004-2016