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

 
 
> Прошивка МК через RS485, Реально ли?
Maxim_Ka
сообщение Apr 12 2011, 18:37
Сообщение #1





Группа: Участник
Сообщений: 12
Регистрация: 29-11-10
Из: Ленинградушка
Пользователь №: 61 260



Сделали мы девайс один, на ATmega32. Прошивали внутрисхемно по JTAGу. Сейчас он находится на испытаниях, "запломбирован" и внутрь его не влезть. А появилась необходимость чуть изменить программный код. На корпусе только 2 разъема: питание и сам RS485.

У Евстифеева в главе про самопрограммирование русским по белому написано, что "..для загрузки нового содержимого памяти программ...программа-загрузчик может использовать любой интерфейс передачи данных (USART/UART, SPI. TWI).."
По идее RS485 это ведь тот же USART?

Есть ли возможность перепрошить контроллер через него? Да и как это сделать, нужен какой-то программатор особый? help.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 7)
rx3apf
сообщение Apr 12 2011, 18:42
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(Maxim_Ka @ Apr 12 2011, 22:37) *
По идее RS485 это ведь тот же USART?

Есть ли возможность перепрошить контроллер через него? Да и как это сделать, нужен какой-то программатор особый?

Вот встроенный загрузчик должен быть "особый" (т.е. должен уметь загружать данные из USART), а "программатором" будет переходник RS-232/RS-485 на компьютере. А дальше уж думайте над протоколом, что будете грузить (.hex или бинарник, нужно шифрование или нет, поспеете ли при простом копировании или нужно управление потоком, нужен ли какой-то свой хитрый протокол или достаточно простого копирования данных).
Go to the top of the page
 
+Quote Post
ukpyr
сообщение Apr 12 2011, 18:47
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347



Цитата
или нужно управление потоком
вот с 485 это может не получиться. Дополнительных линий нет, программно тоже никак - интерфейс то полудуплексный. Остается только пакетный типа запрос-ответ.
Для сброса контроллера и инициации программирования можно дополнить схему программным сбросом - RC цепочку с диодом с RX на Reset, сброс подачей Break

Сообщение отредактировал ukpyr - Apr 12 2011, 18:57
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Apr 13 2011, 05:25
Сообщение #4


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(Maxim_Ka @ Apr 12 2011, 22:37) *
По идее RS485 это ведь тот же USART?

Скажу шире RS485 - это тоже "любой" интерфейс. Так что делайте и всё получится - не Вы первый и не вы последний.

Цитата
Есть ли возможность перепрошить контроллер через него? Да и как это сделать, нужен какой-то программатор особый? help.gif

Вы не о том думаете. Из железа Вам нужен конвертер интерфейса USB-RS485. И нужно выбрать подходящий протокол передачи заточенный под симплекс.
hint: XMODEM, MODBUS....


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Палыч
сообщение Apr 13 2011, 07:11
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Maxim_Ka @ Apr 12 2011, 22:37) *
Сейчас он находится на испытаниях, "запломбирован" и внутрь его не влезть... Есть ли возможность перепрошить контроллер через него? Да и как это сделать, нужен какой-то программатор особый?
Имхо, Вы не четко сформулировали вопрос, поэтому и ответы получаете в соответствии с особенностями его трактовки. Варианты трактовки:
1. Можно ли в "запломбированный" прибор залить новую прошивку не снимая "пломб" и используя для этого RS485?
Ответ: если Вы не предусмотрели для Вашего прибора собственный загрузчик по RS485 и не "зашили" его в МК до "пломбировки" (скорее всего это так и есть, иначе не было бы вопроса), то однозначно - нет!
2. Возможно ли внести измемения в конструкцию прибора для того, чтобы можно было изменять его прошивку по RS485, а не через JTAG?
Ответ: без проблем, если МК поддерживает BootLoader. Сам загрузчик Вам нужно, конечно, разработать. Процедуру обновления прошивки - тоже.
Go to the top of the page
 
+Quote Post
Maxim_Ka
сообщение Apr 14 2011, 18:30
Сообщение #6





Группа: Участник
Сообщений: 12
Регистрация: 29-11-10
Из: Ленинградушка
Пользователь №: 61 260



Да в том то и дело, что "запломбирован"..

BootLoader поддерживает, ATmega32A-AU у меня. Тогда попрошу посоветовать мне литературу по разработке загрузчика этого и процедуры обновления прошивки)
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Apr 15 2011, 04:38
Сообщение #7


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(Maxim_Ka @ Apr 14 2011, 22:30) *
Тогда попрошу посоветовать мне литературу
Сайт atmel.com в разделе application notes.
+ гляньте файлик boot.h из avr-libc.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Maxim_Ka
сообщение Apr 18 2011, 18:23
Сообщение #8





Группа: Участник
Сообщений: 12
Регистрация: 29-11-10
Из: Ленинградушка
Пользователь №: 61 260



Спасибо, будем искать.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 11:56
Рейтинг@Mail.ru


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