Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 08.04.2009, 23:16  
Eats
Прописка
 
Аватар для Eats
 
Регистрация: 20.01.2009
Сообщений: 156
Сказал спасибо: 3
Сказали Спасибо 27 раз(а) в 11 сообщении(ях)
Eats на пути к лучшему
По умолчанию

Сообщение от kramolnic
В моем же случае возможен перезапуск программы с начала без аппаратного сброса. (Получается, что процедуру сброса-инициализации надо производить не всегда одинаково.)
Бедные студенты... Перед вами поставлена некорректная задача. Программно невозможно узнать, принял ли ВВ51 слово режима работы или не принял. Иными словами, невозможно узнать, готов ли он к приёму слова инструкции или не готов. Поэтому некорректно продолжать прерваную программу, не зная, был ли аппаратный сброс или не был. Представьте, мы прервали программу, вручную сделали какие-то действия (например, аппаратный сброс или корректировку программы или даже обнуление всей оперативной памяти), а потом продолжили. Программа не знает, что было в её отсутствие. Равно как и самой программы в результате наших действий уже может в ОЗУ не оказаться. Самым корректным вариантом в этом случае был бы RS-триггер (буквально на паре элементов от ЛА3), сбрасываемый от RESETa и устанавливаемый сигналом записи в ваш порт. Завести бы его на параллельный порт и анализировать состояние. Как только он будет в единице, значит можно слать инструкцию. Если в нуле - то режим. Я в 1994-м наигрался с этим МС2702 по самое нехочу, когда писал диссертацию по ВВ51 (впрочем, буржуйский аналог работает точно так же, наши содрали его один-в-один). Три дня и три ночи стоял он у меня, не выключаясь, чтобы память не сбрасывалась и не набирать программу каждый раз заново.
Кстати, после каждого обращения к регистру состояния порта я бы на всякий случай поставил пару команд:
m21: dcr c
jnz m21
Работы немного, а головных болей станет меньше. Даже на 2702. Можно принудительно обнулить его в начале, но по сбросу в нём и так будет ноль, а после первого такого ожидания в нём также останется ноль.
Реклама:
Eats вне форума  
Непрочитано 09.04.2009, 01:23  
int4880053
Прописка
 
Аватар для int4880053
 
Регистрация: 03.05.2005
Адрес: Москва
Сообщений: 289
Сказал спасибо: 1
Сказали Спасибо 25 раз(а) в 23 сообщении(ях)
int4880053 на пути к лучшему
По умолчанию вв51

Стук из прошлого...Да действительно есть у ВВ51 такая
заноза и самое главное она не одна Он действительно
работает до тех пор пока не сбойнула машина я их
пользовал в машинке Корвет правда обмен данными у
меня шел по прерыванию и буфер был 1к
В настоящее время смысла нет вспоминать выбросить все это надо и сделать учебную модель на Мк51 там все
работает правильно да и к практике ближе студенту
тамм кассы всякие торг оборудование а так получается
ретромашины студенты изучают, они должны уже свою
архитектуру моделировать
int4880053 вне форума  
Непрочитано 09.04.2009, 05:59  
kramolnic
Частый гость
 
Регистрация: 14.04.2007
Сообщений: 23
Сказал спасибо: 3
Сказали Спасибо 1 раз в 1 сообщении
kramolnic на пути к лучшему
По умолчанию

Цитата:
Вот нашел. Это процеДурка инициализировала ВВ51, выдрана из рабочего проекта (работало на минской ТЭЦ-4)
Спасибо! Убедили, что это будет работать

Цитата:
...заноза и самое главное она не одна Он действительно
работает до тех пор пока не сбойнула машина я их...
Что значит до тех пор, пока не сбойнула машина? Это не баг контроллера, а его специфика: просто управляющий порт - один, на нем висят два регистра управления, которые и используются для управления девайсом. Заноза лишь в том, что проблема эта не сразу заметна.

Цитата:
Бедные студенты... Перед вами поставлена некорректная задача. Программно невозможно узнать, принял ли ВВ51 слово режима работы или не принял.
Задача не в том, чтобы программно это узнать, а в организации ввода-вывода. Для этого нужно организовать правильную инициализацию. А узнавать или не узнавать, что там ВВ51 принял - не принципиально.
Цитата:
Самым корректным вариантом в этом случае был бы RS-триггер (буквально на паре элементов от ЛА3), сбрасываемый от RESETa
ага... в субботу приеду с паяльником, отверткой и ЛА3 Вот препод прифигеет
kramolnic вне форума  
Непрочитано 09.04.2009, 09:24  
urry
Почётный гражданин KAZUS.RU
 
Аватар для urry
 
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 106 раз(а) в 66 сообщении(ях)
urry на пути к лучшему
По умолчанию

Сообщение от kramolnic
Цитата:
Вот нашел. Это процеДурка инициализировала ВВ51, выдрана из рабочего проекта (работало на минской ТЭЦ-4)
Спасибо! Убедили, что это будет работать

Цитата:
...заноза и самое главное она не одна Он действительно
работает до тех пор пока не сбойнула машина я их...
Что значит до тех пор, пока не сбойнула машина? Это не баг контроллера, а его специфика: просто управляющий порт - один, на нем висят два регистра управления, которые и используются для управления девайсом. Заноза лишь в том, что проблема эта не сразу заметна.

Цитата:
Бедные студенты... Перед вами поставлена некорректная задача. Программно невозможно узнать, принял ли ВВ51 слово режима работы или не принял.
Задача не в том, чтобы программно это узнать, а в организации ввода-вывода. Для этого нужно организовать правильную инициализацию. А узнавать или не узнавать, что там ВВ51 принял - не принципиально.
Цитата:
Самым корректным вариантом в этом случае был бы RS-триггер (буквально на паре элементов от ЛА3), сбрасываемый от RESETa
ага... в субботу приеду с паяльником, отверткой и ЛА3 Вот препод прифигеет
зачем ла3 ? Пойдите чуть дальше и используйте дешевую тиньку или пик. На самых дешевых в качестве обязательной периферии оно стоит. Не вижу смысла в работе Ваших преподов - занимаетесь некромантией... На микрочипе ру преподаватель студентов на курсовых нагружает тсp-ip стеком, у него студенты фтп сервер на микроконтроллерах поднимают. К примеру.
__________________
warez
urry вне форума  
Непрочитано 09.04.2009, 19:14  
kramolnic
Частый гость
 
Регистрация: 14.04.2007
Сообщений: 23
Сказал спасибо: 3
Сказали Спасибо 1 раз в 1 сообщении
kramolnic на пути к лучшему
По умолчанию

Цитата:
Не вижу смысла в работе Ваших преподов - занимаетесь некромантией...
Ну что уж тут поделаешь, что в Московских вузах программа такая устаревшая.
А по поводу TCP/IP скажу, что у подавляющего большинства студентов с потока проблемы вызывает даже программирование этого чуда техники (задачи там не сложные).
kramolnic вне форума  
Непрочитано 09.04.2009, 23:58  
int4880053
Прописка
 
Аватар для int4880053
 
Регистрация: 03.05.2005
Адрес: Москва
Сообщений: 289
Сказал спасибо: 1
Сказали Спасибо 25 раз(а) в 23 сообщении(ях)
int4880053 на пути к лучшему
По умолчанию вв51

Нормальные прграммы обучения были в 70х-80х годах
прошдого века,, а сейчас ну кто туда идет работать
Ну наверное сами то не головой не руками делать ничего
неумели вот и приклеились А студенты они понятное дело
уже не те радиолюбители 80х им сейчас то-же главное
бумажка А техника эта совершествуется значительно
быстрее чем раньше Вот и получилось что нашу школу
загубили, Недавно один растишка просил диплом написать
Так он так и несмог толком объяснить что ему нужно
int4880053 вне форума  
Непрочитано 10.04.2009, 15:51  
190023
Прохожий
 
Регистрация: 28.04.2005
Сообщений: 1
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
190023 на пути к лучшему
По умолчанию

Уважаемый kramolnik !

В свое время у меня ВВ51А работала как ей вздумается, хотя все делалось в соответствии с описанием.
Пришлось звонить в Киев на завод-изготовитель. Нашел человека, изложил проблему и первый его вопрос был такой: "А как вы ее сбрасываете (аппаратно)? Насколько я помню, - сказал он, - длительность сигнала сброс для ВВ51А кажется должна быть не менее 6 периодов тактовой частоты".
Все. Как только сделали t сбр. = 6 х T сlk (а было значительно меньше), все стало на свои места.
А в заводской (!) документации про это не было ни слова.
190023 вне форума  
Непрочитано 11.04.2009, 04:11  
Gerbicid
Прописка
 
Аватар для Gerbicid
 
Регистрация: 04.08.2008
Сообщений: 203
Сказал спасибо: 33
Сказали Спасибо 75 раз(а) в 58 сообщении(ях)
Gerbicid на пути к лучшему
По умолчанию

Выдержка из книги "Микропроцессорные средства и системы" Н.Н. Щелкунов А.П.Дианов стр 118

Перед выдачей командного слова выбора режима MI микросхема приводится в в исходное состояние.Для этого в управляющий порт PCI+1 выдается три нулевых байта и команда сброса. Предварительная выдача трех нулей обеспечивает перевод БИС вв51 независимо от ее текущего состояния в рабочий режим, в котором она сможет правильно отреагировать на команду програмного сброса (код 40Н). Команда с кодом 5 разрешает одновременную работу приемника и передатчика. После разрешения работы следует выполнить холостой цикл ввода по готовности, уничтожающий ложный символ, который может возникнуть в приемнике адаптера во время во время процедуры инициализации.

Процедура инициализации из книги
SAINI:PUSH PSW
XRA A
OUT PCI+1
OUT PCI+1
OUT PCI+1
MVI A,40H
OUT PCI+1
MVI A,0FAH
OUT PCI+1
MVI A,5
OUT PCI+1
CALL SAI
POP PSW
RET
Правильно писали три ноля надо послать, и препод возражать не должен, так как это предусмотрено изготовителем.
Gerbicid вне форума  
Непрочитано 11.04.2009, 13:43  
Eats
Прописка
 
Аватар для Eats
 
Регистрация: 20.01.2009
Сообщений: 156
Сказал спасибо: 3
Сказали Спасибо 27 раз(а) в 11 сообщении(ях)
Eats на пути к лучшему
По умолчанию

Сообщение от Gerbicid
Выдержка из книги "Микропроцессорные средства и системы" Н.Н. Щелкунов А.П.Дианов стр 118
О, всё новые и новые товарищи подтягиваются! Добро пожаловать!
Сообщение от urry
Пойдите чуть дальше и используйте дешевую тиньку или пик. На самых дешевых в качестве обязательной периферии оно стоит. Не вижу смысла в работе Ваших преподов - занимаетесь некромантией...
Если бы только некромантией! А то ведь некромантией в извращённых формах!!! Я ж говорю, бедные студенты... Наслушались своего препода, и теперь извращаются... Вот, к примеру, kramolnic пишет:
Цитата:
Задача не в том, чтобы программно это узнать, а в организации ввода-вывода. Для этого нужно организовать правильную инициализацию. А узнавать или не узнавать, что там ВВ51 принял - не принципиально.
А ведь организация ввода-вывода в том и состоит, чтобы знать, когда, что и куда можно вводить и выводить. И перед выводом чего-нибудь в порт вывода неплохо бы проверить его готовность, а то может он и не готов к приёму вашего байта. kramolnic, конечно, у этого препода вы лабу как-нибудь сдадите (и уже наверняка сдали), но в жизни вывод в порт без предварительной проверки готовности чреват непредсказуемостью, за исключением "всегда готовых" портов. ВВ51 всегда готовым не является. Посему без трёх-то нулей вряд ли получится что-нибудь путное.
Eats вне форума  
Непрочитано 11.04.2009, 13:48  
kramolnic
Частый гость
 
Регистрация: 14.04.2007
Сообщений: 23
Сказал спасибо: 3
Сказали Спасибо 1 раз в 1 сообщении
kramolnic на пути к лучшему
По умолчанию

Спасибо всем за помощь!
Наконец-то оно сбросилось и заработало. 8O
Глазам не верю
Цитата:
Цитата:
Задача не в том, чтобы программно это узнать, а в организации ввода-вывода. Для этого нужно организовать правильную инициализацию. А узнавать или не узнавать, что там ВВ51 принял - не принципиально.
А ведь организация ввода-вывода в том и состоит, чтобы знать, когда, что и куда можно вводить и выводить. icon_smile.gif И перед выводом чего-нибудь в порт вывода неплохо бы проверить его готовность, а то может он и не готов к приёму вашего байта. kramolnic, конечно, у этого препода вы лабу как-нибудь сдадите (и уже наверняка сдали), но в жизни вывод в порт без предварительной проверки готовности чреват непредсказуемостью, за исключением "всегда готовых" портов. ВВ51 всегда готовым не является. Посему без трёх-то нулей вряд ли получится что-нибудь путное.
Вы меня совсем не поняли. Я же говорю: нужно организовать правильную инициализацию. А насчет узнавать что он там принял или нет - будьте уверены, я прекрасно себе представляю, что и чем там чревато, поэтому и делаю все проверки, которые мне предоставляет сей USART, в т.ч. готовность принять и передать данные. [/quote]
kramolnic вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите принять строку по usart от АТ модема kasper37 Микроконтроллеры, АЦП, память и т.д 10 03.01.2009 16:21
Помогите разобраться с USART в CodeVisionAVR vendim Микроконтроллеры, АЦП, память и т.д 20 26.07.2007 16:42
реле времени со сбросом на 0. ers Автоматика и аппаратура связи 2 18.07.2007 12:58
реле времени со сбросом на 0. ers Автоматика и аппаратура связи 2 12.07.2007 09:17
Народ, помогите, плиз! 2й USART в PIC mxsimus Микроконтроллеры, АЦП, память и т.д 3 24.12.2004 02:26


Часовой пояс GMT +4, время: 22:18.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot