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

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

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

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

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

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

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

 
Опции темы

usart в мультимастерном режиме?

Непрочитано 28.11.2007, 15:41  
kapiton
Прохожий
 
Регистрация: 21.06.2006
Сообщений: 9
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
kapiton на пути к лучшему
По умолчанию usart в мультимастерном режиме?

Что произойдёт если при передаче байта, на вход "RXD" поступит старт бит (при установленных ‹‹1 разрядах "RXEN" и "TXEN").
Конкретно. Нужно прервать передачу если на вход "RXD" поступит старт бит (определить конфликт).
Контроллер ATMega8515. Свободных ног не осталось, и времяни на опрос "RXD" нет.
Реклама:
kapiton вне форума  
Непрочитано 28.11.2007, 15:51  
nokazus
Вид на жительство
 
Регистрация: 05.09.2006
Сообщений: 359
Сказал спасибо: 0
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
nokazus на пути к лучшему
По умолчанию

Не совсем понятен вопрос. Но если нет возможности прервать программно, то м.б. поставить снаружи какой-нибудь триггер с ключем? Пусть МК передает, но в линию это не пойдет.
Удачи.
nokazus вне форума  
Непрочитано 28.11.2007, 15:57  
urry
Почётный гражданин KAZUS.RUN
 
Аватар для urry
 
Регистрация: 06.02.2007
Сообщений: 1,340
Сказал спасибо: 3
Сказали Спасибо 107 раз(а) в 66 сообщении(ях)
urry на пути к лучшему
По умолчанию

А программно разве можно прервать, когда байт уже в регистре и сдвигается ? По-моему, только ножку в 3 состояние и все... Но - по-любоиу это будет с каким - то запозданием..
urry вне форума  
Непрочитано 28.11.2007, 16:11  
kapiton
Прохожий
 
Регистрация: 21.06.2006
Сообщений: 9
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
kapiton на пути к лучшему
По умолчанию

а что после возникновения такой ситуации будет в регистре данных
kapiton вне форума  
Непрочитано 28.11.2007, 16:47  
nokazus
Вид на жительство
 
Регистрация: 05.09.2006
Сообщений: 359
Сказал спасибо: 0
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
nokazus на пути к лучшему
По умолчанию

Сообщение от kapiton
а что после возникновения такой ситуации будет в регистре данных
Это зависит от схемы включения, Вашей программы. Какой вообще регистр данных Вы имеете ввиду? Приемника USART? Какой такой ситуации ? Если на вход RxD пришел старт-бит (импульс распознался как старт-бит), то далее - процесс приема запущен. Что прийдет - то и будет в регистре, если Вы в это время не выключите USART, или не измените его частоту его тактирования. Регистр же данных передатчика не доступен по чтению. Если Вы в него что-то записали и USART включен, то птичка (байт) улетела.
Удачи.
ЗЫ У Вас что, RxD объединен с TxD (через диод или как там)? Не понятно какой конфликт Вы имеете ввиду. Ведь USART может одновременно и передавать и принимать данные, т.е. работает в дуплексном режиме.
nokazus вне форума  
Непрочитано 28.11.2007, 22:02  
kapiton
Прохожий
 
Регистрация: 21.06.2006
Сообщений: 9
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
kapiton на пути к лучшему
По умолчанию

[Ведь USART может одновременно и передавать и принимать данные]
Упустил...[/quote]
kapiton вне форума  
Непрочитано 28.11.2007, 22:37  
jelsay
Прописка
 
Регистрация: 24.06.2005
Сообщений: 123
Сказал спасибо: 7
Сказали Спасибо 37 раз(а) в 15 сообщении(ях)
jelsay на пути к лучшему
По умолчанию

ИМХО, задача решается выбором правильного протокола,
пакет с заголовком и CrC, арбитраж по таймам.. и т.п.
- несомненно медленно - но зато дешево..

хотя..как то лет -надцать назад разработал целиком аппаратную однопроводную систему арбитража с динамическим приоритетом - для многопроцессорной системы.. арбитраж происходил менее чем за один такт шины..
но веяния сменились - поэтому идею так и не проверил ..
jelsay вне форума  
Непрочитано 29.11.2007, 10:21  
mikeras
Частый гость
 
Регистрация: 12.12.2005
Сообщений: 13
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
mikeras на пути к лучшему
По умолчанию

Поправьте, если ошибаюсь. В мультипроцессорной системе ( как минимум 3 проц) все RxD и TxD всех процессоров соеденены. Уточню, соединение не на физическом, а на канальном уровне. 1-й проц слышат 2-й и 3-й, 2-й проц слышат 1-й и 2-й, 3-й проц слышат 1-й и 2-й. Получается что каждый проц будет слышать сам себя. Проц начинает передавать и тут же получает свои же данные. Если другой проц начнет передавать в с середины байта первого, то получим коллизию. На мой взгляд обнаружить ее, можно только контролируя четность/нечетность или по плохому стоп-биту.
mikeras вне форума  
Непрочитано 29.11.2007, 12:27  
rear
Вид на жительство
 
Аватар для rear
 
Регистрация: 30.12.2006
Адрес: Junktown
Сообщений: 300
Сказал спасибо: 160
Сказали Спасибо 171 раз(а) в 59 сообщении(ях)
rear на пути к лучшему
По умолчанию

Не совсем уверен, но кажется, что USART поддерживает Multi-processor а не Multi-master режим работы т.е. в системе есть один ведущий, все остальные - ведомые
rear вне форума  
Непрочитано 29.11.2007, 12:35  
nokazus
Вид на жительство
 
Регистрация: 05.09.2006
Сообщений: 359
Сказал спасибо: 0
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
nokazus на пути к лучшему
По умолчанию

Сообщение от mikeras
1-й проц слышат 2-й и 3-й, 2-й проц слышат 1-й и 2-й, 3-й проц слышат 1-й и 2-й. Получается что каждый проц будет слышать сам себя.
Так все-таки 1-й проц слышат 2-й и 3-й и 1-й? Сначала нужно разобраться с физической реализацией канала. Затем с арбитражем. Либо у Вас одноранговая система, когда все устройства имеют одинаковые права, либо есть ведущий контроллер, распределяющий ресурсы сети. Возможно временное разделение канала с привязкой по жесткой сетке. Все зависит от решаемой задачи. Затем сам протокол обмена. Если в сети возможны коллизии, то естественно он должен быть с контролем достоверности информации. Решать это простейшими способами типа паритета и контроля стоп-бита недостаточно. Необходимо хотя бы контролировать контрольные суммы пакета.
Удачи.
nokazus вне форума  
 
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
MOSFET в линейном режиме Crait Аудиотехника 17 12.04.2012 07:54
МОП ключ в режиме КЗ faru Электроника - это просто 47 10.02.2012 22:20
Аккумуляторы в буферном режиме krian Источники питания и свет 28 22.09.2011 01:45
PIC18F4550 в CDC режиме Binary_Man Микроконтроллеры, АЦП, память и т.д 17 14.03.2009 17:38
Полевик в режиме ключа для РИП maxNTF Электроника - это просто 10 21.12.2008 12:29


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.