два мк в одном устройстве

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Мучитель микросхем
Аватара пользователя
Сообщения: 442
Зарегистрирован: Пт авг 29, 2008 09:22:37

Сообщение dimon-790 »

читал, а что скажете по третьему моему сообщению.Как быть с портами ?
кот. уйдут на работу с внешней памятью.Или они будут заняты только для начальной загрузки?
Все мы работаем по методу Робинзона Крузо – ждем пятницу.
Контактная информация:
Реклама
Электрический кот
Аватара пользователя
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

В 89С55 хватает ног и для внешней памяти. Предыдущий пост отредактировал, прочтите еще раз.
А вообще-то, что за девайс? Или хотя бы логика работы?
Цапу крутить надо!!! Ку или не ку?
Реклама
Мучитель микросхем
Аватара пользователя
Сообщения: 442
Зарегистрирован: Пт авг 29, 2008 09:22:37

Сообщение dimon-790 »

Девайс вопщем-то на поминает калькулятор , только ещё управляет нагрузками и реагирует на внешние раздражители. Igor_67 Я бы и рад последовать вашему совету, по внешней пзу , но я ни как не пойму как мк , заставить выполнять программу с внешней пзу :oops: . Как считать или записать во внешнюю память мне ясно а вот выполнить..?..
Все мы работаем по методу Робинзона Крузо – ждем пятницу.
Контактная информация:
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

тут по крайней мере 3 человека сказали про внешнюю память. неужели у микроконтроллера нет свободных портов?

по поводу вывода на кнопку:
может там уже используются кнопки? тогда можно использовать одну из них.

в общем:
если кнопку(1 вывод) и память(2 вывода) (кстати, если память с 1-wire , то 1 вывод) подключать к ногам, про которые заведомо известно, что они являются входами устройства, то влияния схемы "загрузчика" на первоначальную схему можно избежать.
Ставим плюсы: )
Реклама
Эиком - электронные компоненты и радиодетали
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

dimon-790 писал(а):Девайс вопщем-то на поминает калькулятор
значит проблему с кнопкой уже решили.
Ставим плюсы: )
Реклама
Мучитель микросхем
Аватара пользователя
Сообщения: 442
Зарегистрирован: Пт авг 29, 2008 09:22:37

Сообщение dimon-790 »

ibiza11 писал(а):тут по крайней мере 3 человека сказали про внешнюю память. неужели у микроконтроллера нет свободных портов?
ага про внешнюю память то сказали только , по моему забыли что девайс не я разрабатываю и портов свободных нет ни одного. Как это всё будет работать , тоже не ясно ...
Все мы работаем по методу Робинзона Крузо – ждем пятницу.
Контактная информация:
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

в самом начале программы (после инициализации стека), проверяете нажата ли кнопка.
если нажата, запускаете программу загрузчик, которая будет в цикле считывать данные из внешней памяти и записывать их в свою память программ (флеш память, для этого специальные команды есть). причем если в предыдущий раз начиналось с адреса, к примеру, 0х0000, то сейчас будет грузить начиная с адреса 0х8000, и наоборот.
если кнопка не нажата, то загрузчик не запускается и работает старая прошивка.

про свободные порты я писал выше.
если хотите чтобы вам все конкретно описали, дайте конкретную схему.

з.ы. У вас исходники программы есть или только .bin или .hex файл?
Ставим плюсы: )
Мучитель микросхем
Аватара пользователя
Сообщения: 442
Зарегистрирован: Пт авг 29, 2008 09:22:37

Сообщение dimon-790 »

исходников нет только hex , схему чуть позже отсканю и выложу.
Все мы работаем по методу Робинзона Крузо – ждем пятницу.
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 442
Зарегистрирован: Пт авг 29, 2008 09:22:37

Сообщение dimon-790 »

вот схема , когда я говорил что нет свободных портов , я соврал :oops: один всё таки есть !.ibiza11 подробнее про программу загрузчик можно ?
Вложения
.rar
(166.72 КБ) 191 скачивание
Все мы работаем по методу Робинзона Крузо – ждем пятницу.
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 442
Зарегистрирован: Пт авг 29, 2008 09:22:37

Сообщение dimon-790 »

Аууу, люди !!! , вы где ? :tea:
Все мы работаем по методу Робинзона Крузо – ждем пятницу.
Контактная информация:
Опытный кот
Аватара пользователя
Сообщения: 890
Зарегистрирован: Вт янв 20, 2009 14:49:08
Откуда: Гондурас, Мурманск

Сообщение DrWatson »

Чего мудрить с портами, загрузчиками? ставишь внешнюю ПЗУ, допустим на 64кБ, с 0 адреса заливаешь 1ю прошивку, с адреса 8000h заливаешь 2ю прошивку, к МК старший адресный вывод ПЗУ (в данном случае А15) не подключаешь, а тупо ставишь на него тумблер, который будет на этот вывод подавать либо лог 0, либо 1. Переключил тумблер в положение "0", нажал сброс - работает первая прошивка, переключил тумблер в "1", нажал сброс - работает вторая. на использование внешней памяти нужно подать на вход МК "#EA" лог 0. Плюс подключение внешней ПЗУ к портам и доп. регистр младшего байта адреса (по даташиту)
Хотя можно обойтись одной внешней прошивкой (первая будет прошита в сам МК) и рулить входом "#EA".
- Если вы такие умные, то почему тогда строем не ходите?
ἓν οἶδα ὅτι οὐδὲν οἶδα (с) Σωκράτης
Мучитель микросхем
Аватара пользователя
Сообщения: 442
Зарегистрирован: Пт авг 29, 2008 09:22:37

Сообщение dimon-790 »

Что-то сдаётся мне не там копаем :( . Просмотрел кучу схем на всех что я видел порты которые задействованны под внешнюю память больше ни на какую переферию не идут . Вот например : к порту Р2.0 подключена оптопара , которая в свою очередь , управляет насосом . В момент обращения к ПЗУ, на этом порте будет неизбежно менятся лог.уовень , нетрудно догадаться что будет твориться с бедным насосом и другими нагрузками . Отсюда напрашивается вывод: внешнее ПЗУ использовать в моём случае нельзя .. поправьте если не прав ... :oops:
Все мы работаем по методу Робинзона Крузо – ждем пятницу.
Контактная информация:
Электрический кот
Аватара пользователя
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

Я тут немного поразмыслил и вот что решил. В вашем случае можно сделать все по максимуму аппаратно. Оставить два МК как есть, каждый со своей прошивкой, порты и управляющие сигналы обоих МК запараллелить, кроме кварца и цепи сброса. Переключаться между ними можно так: подаем питание на первый МК (+ и -), в это время + второго МК засаживаем на "землю", нажимаем кнопку сброс на первом МК и любуемся результатом. Далее, при необходимости перехода на второй МК, подаем питание на второй МК, но предварительно сняв питание с первого МК и засадив + первого МК на "землю". Выжидаем порядка 100 мс для завершения всех внутренних переходных процессов в кристалле первого МК (можно поставить таймер), жмем сброс на втором МК и любуемся результатом. С ПЗУ затея здесь не прокатит, т.к. у семейства MCS51 жесткая привязка к адресам и что-либо поменять в прошивке или написать свой загрузчик не выйдет, нужно знать конкретно к каким адресам что привязано... Здесь нужен исходник... Можно, конечно поизвращаться и путем дизассемблирования, получить исходник на АСМе, но это такой гемор, что ай-да-ну...
Попробуйте сделать, как я описал выше (вариант с передергиванием питания), должно получиться. В крайнем случае можно попробовать применить буфферные элементы для развязки портов один от другого, но это как опция... :tea:
Цапу крутить надо!!! Ку или не ку?
Мучитель микросхем
Аватара пользователя
Сообщения: 442
Зарегистрирован: Пт авг 29, 2008 09:22:37

Сообщение dimon-790 »

Igor_67 , паралелить порты не получается :? правда сажать на землю +5 в неиспользуемого мк , не пробовал но попробую для чистоты эксперимента :beer: . Я тут тоже , поразмыслил на досуге и вот что получилось , не очень эстетично но работать вроде должно...
Вложения
1.rar
(5.55 КБ) 163 скачивания
Все мы работаем по методу Робинзона Крузо – ждем пятницу.
Контактная информация:
Электрический кот
Аватара пользователя
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

А микрухи 4096 в девайсе уже стоят или вы их хотите дополнительно поставить? Как я понял, это ключи с управлением логическими уровнями? Мне кажется это будет неоправданное усложнение конструкции, да к тому же потребляемый ток возрастет прилично, да ведь и этими ключами надо как-то управлять... Все же сначала попробуйте мой вариант, мне кажется, такое решение будет наиболее простым :idea:
Цапу крутить надо!!! Ку или не ку?
Опытный кот
Аватара пользователя
Сообщения: 890
Зарегистрирован: Вт янв 20, 2009 14:49:08
Откуда: Гондурас, Мурманск

Сообщение DrWatson »

Igor_67 писал(а):в это время + второго МК засаживаем на "землю"
Если на портах есть защитные диоды (те, которые анодом к выводу, катодом к + МК) то второй МК с посаженным на "землю" плюсом будет сажать этими диодами порты второго. (Но что-то подсказывает мне, что там они должны быть).
Зачем огород городить? ZIF-панелька - тоже вариант (правда не самый дешёвый).
Последний раз редактировалось DrWatson Вт дек 29, 2009 21:35:55, всего редактировалось 1 раз.
- Если вы такие умные, то почему тогда строем не ходите?
ἓν οἶδα ὅτι οὐδὲν οἶδα (с) Σωκράτης
Электрический кот
Аватара пользователя
Сообщения: 1051
Зарегистрирован: Вт окт 21, 2008 11:46:23
Откуда: Барнаул

Сообщение Igor_67 »

Поэтому-то я и писал про буферы... :tea:
Цапу крутить надо!!! Ку или не ку?
Мучитель микросхем
Аватара пользователя
Сообщения: 442
Зарегистрирован: Пт авг 29, 2008 09:22:37

Сообщение dimon-790 »

попробовал ваш вариант Igor_67 , но увы и ах , как и предполагалось чуда не произошло... :( потому вытравил платку с кт3-ими и двумя мк-ми. Наверное завтра-послезавтра буду пробовать. О результатах отпишусь обязательно. :) Всем удачных выходных!!! и с наступающииим!!! :beer:
Все мы работаем по методу Робинзона Крузо – ждем пятницу.
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 442
Зарегистрирован: Пт авг 29, 2008 09:22:37

Сообщение dimon-790 »

Опробовал свой вариант на 561кт3 , такая же хрень! не запускается девайсина. Наверное слишком большое сопротивление , в открытом канале 561кт3 около 300 ом :roll:
Все мы работаем по методу Робинзона Крузо – ждем пятницу.
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 442
Зарегистрирован: Пт авг 29, 2008 09:22:37

Сообщение dimon-790 »

И всётаки есть справедливость , заработал таки сабж. После долгих плясок с бубном заметил, что при замыкании вывода +5в, неиспользуемый мк сильнее подсаживал линии портов к земле. В итоге пришёл к выводу что питание отключать не нужно . Вспомнил так-же, гдето читал что при ресет = 1 все линии портов переходят в высокоимпедансное состояние КАК РАЗ ТО ЧТО НУЖНО. В итоге всё получилось более чем просто . Все ноги мк запаралелены кроме ресет его подтянул резюками на 10 к к +5в и через релюшку и передёргиваю . Девайс чувствует себя прекрасно всем откликнувшимся большое спасибо !
Все мы работаем по методу Робинзона Крузо – ждем пятницу.
Контактная информация:
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»