roboforum.ru

Технический форум по робототехнике.

Прошивка нескольких МК

Все что связана с заливкой программ в микроконтроллеры.

Прошивка нескольких МК

Сообщение Сергей » 01 апр 2006, 12:13

Допустим в девайсе присутсвует несколько МК. Я вот подумал, что не удобно лезть прошивать по отдельности МК, те  искать эти штырьки для прошивания, тем более если схема маленькая и в корпусе. Поэтому нельзя ли сделать так, что через один дополнительный МК проходит прошивка, а этот МК и выбирает(или спомощью нажатия клавиши) в какой МК прошивать прогу. Может немного не правильно выразился, но вроде похоже на мою мысль.
Допустим, нажиммаешь на кнопку, на дисплее пишется что мол ща будт прошиваться мега8, нажал еще раз - меняется на 2313 и тд.
Может есть еще более удобный принцип, но я думаю пока над этим.
Подскажите, можно ли осуществить такое решение?
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Сообщение EdGull » 01 апр 2006, 12:19

Режим самоперепрогаммирования поможет отцу русской демократии.
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Сообщение Сергей » 01 апр 2006, 12:31

Вкратце плз расскажите, что за зверь! Совсем не знаком.. (
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Сообщение EdGull » 01 апр 2006, 12:47

загрузчик для меги сейчас обсуждается в соседей ветке.
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Сообщение Сергей » 01 апр 2006, 13:00

Я понял, что нужно использовать 1200 для прошивки остальных МК в девайсе. Но мне нужно прошивать через СТК200, или без разницы через что прошивать? Сам принцип не очень представляю.
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Сообщение wolf » 01 апр 2006, 13:34

Не нужно лишних контроллеров. Загрузчики для того и придуманы, чтобы контроллер мог сам себя прошивать, скачивая прошивку по произвольно выбранному разработчиком интерфейсу.
wolf
 
Сообщения: 63
Зарегистрирован: 23 июл 2005, 00:39
Откуда: Казань

Сообщение AlphA » 01 апр 2006, 19:02

Можно совсем просто сделать. Если SPI в работе (в роботе :) ) не занят, то можно все линии SPI у всех МК запареллелить. А Reset'ы вытянуть по одтельности. Какой Reset  к программатру подцепишь, такой МК и будет входить в режим программирования, а остальные будут отдыхать.

P.S. кстати, запараллеленый SPI - это почти готовая внутренняя минисеть.
AlphA
 
Сообщения: 111
Зарегистрирован: 21 апр 2005, 01:19
Откуда: Екб

Сообщение EdGull » 01 апр 2006, 19:17

В помехоопасных и ответственных системах, коим является робот, так делать нельзя.
1. У AVR есть нехорошая тенденция которая связана с его возможностью самоперепрограммирования, в некоторых случаях при появлении дребезка по ноге SCK, он может влететь в режим программирования. Для этого даже в ератах настоятельно рекомендуют притягивать SCK к земле.
2. Вытягивать ресет больше чем это необходимо категорически не рекомендуется, по темже причинам.
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Сообщение Сергей » 01 апр 2006, 20:23

SCK через ресистор цеплять к земле или просто его на землю?
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Сообщение Сергей » 01 апр 2006, 20:27

Все, решил проблему по простому, тк места на лишний МК в корпусе нету.
Кстати о минисети. SPI это какие ноги МК? Я про названия ног..
И вопрос не по теме:
В программаторе СТК200\300 есть вывод CLOCK. Для чего он? Или это и есть SCK?
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Сообщение EdGull » 01 апр 2006, 21:00

Сергей писал(а):SCK через ресистор цеплять к земле или просто его на землю?

через резистор 100К на землю.
если просто на землю к.з., тогда он вообще никогда незапустится.
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Сообщение EdGull » 01 апр 2006, 21:02

MOSI, MISO, SCK
SCK это естественно cloсk

если даташит почитать, то вам батенька станет жить намного проще  8-)
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Сообщение AlphA » 01 апр 2006, 21:47

Ну естевственно, всё подтягивать надо резисторами. И не 100К, а поменее даже, наверное.
Как я понял, устройство мелкое и особо длинных линий не получится.

Кстати, причём тут SCK и режим программирования? Я считал, что он долгим reset'ом включается... Мало ли, как я буду SCK в работе юзать...
AlphA
 
Сообщения: 111
Зарегистрирован: 21 апр 2005, 01:19
Откуда: Екб

Сообщение EdGull » 01 апр 2006, 22:06

у нас свободная страна, каждый в праве ошибаться по своему усмотрению 8-)
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Сообщение AlphA » 01 апр 2006, 22:47

2 EdGull : это вы к чему?
AlphA
 
Сообщения: 111
Зарегистрирован: 21 апр 2005, 01:19
Откуда: Екб

След.

Вернуться в Программаторы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4