roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 дек 2024, 22:45

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: пересылка данных по усарт
СообщениеДобавлено: 29 мар 2011, 23:49 
Не в сети
Аватара пользователя

Зарегистрирован: 08 дек 2009, 19:21
Сообщения: 404
Откуда: Й-Ола
Джентльмены!

в бесконечном цикле "слейва" пишем

Код:
putchar('R');       // шлем как взадаче 6
gdvix = getchar();
if (getchar() == 'G'){
               
open0 = 100; // присваиваем число переменной open0
  };


В бесконечном цикле "мастера" пишем

Код:
gdvix = getchar();
if (getchar() == 'R'){
           
putchar('G');       //
   };   


тоесть слейв шлет R мастеру а мастер как только получил R шлет слейву G
и так по этой задумке они воде бы должны друг другу слать эти символы
со скоростью 250000 бод
начальный код настроил кодвизардом

(правда еще оба сваливаются на обработку небольшого внешнего прерывания 100 раз в секунду)

Будет ли эта схема работать? У меня почему-то она не идет

_________________
Ваш IP-адрес 85.140.5.459 был внесён в черный список и заблокирован. Для получения дополнительной информации перейдите по ссылке http://www.spamhaus.org/query/bl?ip=85.140.5.459.


Последний раз редактировалось к561ЛА7 30 мар 2011, 00:23, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: пересылка данных по усарт
СообщениеДобавлено: 30 мар 2011, 00:15 
Не в сети

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: пересылка данных по усарт
СообщениеДобавлено: 30 мар 2011, 00:34 
Не в сети
Аватара пользователя

Зарегистрирован: 08 дек 2009, 19:21
Сообщения: 404
Откуда: Й-Ола
Человека, "изучившего темы", видно не по тому, как он их создает, а по тому, как он в них отвечает.

_________________
Ваш IP-адрес 85.140.5.459 был внесён в черный список и заблокирован. Для получения дополнительной информации перейдите по ссылке http://www.spamhaus.org/query/bl?ip=85.140.5.459.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: пересылка данных по усарт
СообщениеДобавлено: 30 мар 2011, 04:50 
Не в сети

Зарегистрирован: 22 мар 2011, 01:02
Сообщения: 20
Судя по коду slave отправляет master символ R. Мастер принемает и записывает в переменную gdvix. И после они оба чего то ждут. Но никто друг другу ничего не отправляет. Если нужен именно такой расклад, то надо убрать строчки gdvix = getchar(); и включать сначала мастер, а потом слэйв.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: пересылка данных по усарт
СообщениеДобавлено: 30 мар 2011, 05:34 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2009, 08:59
Сообщения: 2254
Откуда: Екатеринбург
прог. языки: асемблер AVR
Зачем мудрить? Слэйвы должны работать по запросу мастера. Запрос должен содержать адрес слэйва и контрольную сумму.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: пересылка данных по усарт
СообщениеДобавлено: 30 мар 2011, 12:25 
Не в сети

Зарегистрирован: 27 авг 2008, 10:45
Сообщения: 1981
Откуда: Харьков
прог. языки: С/С++
Теоретически должна, но после первой ошибки передачи они оба заткнутся на getchar и будут друг друга ждать. Мастеру нужен некий таймаут, если слейв не ответил - то повторить посылку символа. То есть вместо getchar надо что-то неблокирующее использовать. Я обычно работу с уартом пишу сам, на прерываниях, так что по stdio на avr не подскажу как правильно сделать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: пересылка данных по усарт
СообщениеДобавлено: 30 мар 2011, 15:05 
Не в сети
Аватара пользователя

Зарегистрирован: 08 дек 2009, 19:21
Сообщения: 404
Откуда: Й-Ола
задумка - то реализовать удаленное фазовое регулирование мощности
от мастера слейву. Но слейв "синхронизирован" по переходу фаза-ноль, которое может не совпадать с переходом через ноль у мастера. Поэтому слейв , вродебы, должен , по получении прерывания от перехода фаза-ноль послать запрос мастеру, а тот, получив запрос, тут же оправить ему необходимые числа, итак 100 раз всекунду
попробывал свтавитьь этот код в обработчик прерывания - не идет

_________________
Ваш IP-адрес 85.140.5.459 был внесён в черный список и заблокирован. Для получения дополнительной информации перейдите по ссылке http://www.spamhaus.org/query/bl?ip=85.140.5.459.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: пересылка данных по усарт
СообщениеДобавлено: 31 мар 2011, 01:29 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
а никак нельзя мастером спамить стабильно значение фазы, а слейвом уже отрабатывать... и чорт с ним если оно вдруг на 1 период рассогласуется ?

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: пересылка данных по усарт
СообщениеДобавлено: 31 мар 2011, 06:10 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2009, 08:59
Сообщения: 2254
Откуда: Екатеринбург
прог. языки: асемблер AVR
Есть оптосимисторы с "zero-cross". Их включаешь/выключаешь когда хочешь, а срабатывают они при переходе через ноль. Используйте их и будет вам счастье. Навскидку MOC3082. Сам он маломощный, но к нему можно поставить внешний мощный симистор.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: пересылка данных по усарт
СообщениеДобавлено: 31 мар 2011, 13:32 
Не в сети
Аватара пользователя

Зарегистрирован: 08 дек 2009, 19:21
Сообщения: 404
Откуда: Й-Ола
мастером нельзя, фазы могут быть разные. И зеро кросс тоже нельзя, регулирование фазовое.

_________________
Ваш IP-адрес 85.140.5.459 был внесён в черный список и заблокирован. Для получения дополнительной информации перейдите по ссылке http://www.spamhaus.org/query/bl?ip=85.140.5.459.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: пересылка данных по усарт
СообщениеДобавлено: 31 мар 2011, 13:36 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2009, 08:59
Сообщения: 2254
Откуда: Екатеринбург
прог. языки: асемблер AVR
А что за объект управления? Кто является конечной нагрузкой? Этой нагрузке подавай все полупериоды, хоть и обгрызенные, но не дай бог пропустить один?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: пересылка данных по усарт
СообщениеДобавлено: 31 мар 2011, 13:42 
Не в сети
Аватара пользователя

Зарегистрирован: 08 дек 2009, 19:21
Сообщения: 404
Откуда: Й-Ола
А, понял ... навероно можно. только пока не вьехал как

_________________
Ваш IP-адрес 85.140.5.459 был внесён в черный список и заблокирован. Для получения дополнительной информации перейдите по ссылке http://www.spamhaus.org/query/bl?ip=85.140.5.459.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

Часовой пояс: UTC + 4 часа


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

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


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

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO