Портал для радиолюбителей и разработчиков электроники · с 2003 годаРеклама на сайте
Найти компонент, схему или даташит

Даташиты, справочник отечественных приборов, схемы с разбором и живой форум

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

 
Опции темы

Вопросы по RS485

Непрочитано 16.08.2011, 11:31  
plus
Временная регистрация
 
Аватар для plus
 
Регистрация: 08.07.2003
Адрес: Сталинград
Сообщений: 80
Сказал спасибо: 7
Сказали Спасибо 23 раз(а) в 19 сообщении(ях)
plus на пути к лучшему
По умолчанию Re: Вопросы по RS485

Сообщение от raxp Посмотреть сообщение
это вы еще не сталкивались с потенциалами "земли" в разных точках
Сталкивался. Просто не доводилось работать на объектах, разбросанных на сотни метров. Только, например, в пределах теплопунктов или аналогичных сравнительно небольших помещениях, где проблема выравнивания потенциала земель решается весьма просто, с помощью металлической полосы и сварочного аппарата
Реклама:
plus вне форума  
Непрочитано 16.08.2011, 11:38  
ForcePoint
Почётный гражданин KAZUS.RUN
 
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 7,459
Сказал спасибо: 3,227
Сказали Спасибо 3,513 раз(а) в 2,394 сообщении(ях)
ForcePoint на пути к лучшему
По умолчанию Re: Вопросы по RS485

Сообщение от raxp Посмотреть сообщение
это вы еще не сталкивались с потенциалами "земли" в разных точках
Дык 3 провода - и вопроса о потенциале "земля"-"луна" не возникнет. Т.е. сеть - эквипотенциальна, а контроллеры - от неё отвязаны.
Вложения:
Тип файла: pdf The Art and Science of RS485.pdf (91.6 Кб, 288 просмотров)
ForcePoint вне форума  
Непрочитано 16.08.2011, 12:16  
raxp
Почётный гражданин KAZUS.RUN
 
Регистрация: 28.05.2010
Сообщений: 1,117
Сказал спасибо: 150
Сказали Спасибо 604 раз(а) в 310 сообщении(ях)
raxp на пути к лучшему
По умолчанию Re: Вопросы по RS485

Цитата:
Дык 3 провода - и вопроса о потенциале "земля"-"луна" не возникнет
cпасибо кэп , ссылку уже привел выше.
__________________
Белорусский журнал «Радиолюбитель»
Youtube LaboratoryW
UR3QQJ
raxp вне форума  
Непрочитано 19.08.2011, 11:18  
EugenPKH
Прописка
 
Регистрация: 08.10.2009
Сообщений: 101
Сказал спасибо: 2
Сказали Спасибо 11 раз(а) в 10 сообщении(ях)
EugenPKH на пути к лучшему
По умолчанию Re: Вопросы по RS485

Не хочу ни кого обидеть , но схема приведенная раньше полная лажа !!!
Вы пытались включить на шине не 2 устройства , а хотя бы 10 ?
Никогда не поверю что она вообще заработает
EugenPKH вне форума  
Непрочитано 04.12.2011, 20:25  
Tugаrin
Временная регистрация
 
Регистрация: 17.10.2011
Сообщений: 59
Сказал спасибо: 2
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Tugаrin на пути к лучшему
По умолчанию Re: Вопросы по RS485

Пытаюсь разобраться с RS485. Мне нужно передать по нему семь байт принять их и вывести на дисплей. Взял два пика 628А и МАХ485. Организовать приём пытаюсь так - один микроконтроллер посылает определённое число другому (типа запроса) а в ответ получает эти семь байт. Они передаются с задержкой 5 мс один за одним. Принимаю таким образом - если есть прерывание от приёмника UART контроллера вывешиваю флаг, а в основном цикле жду, если флаг появился, то пишу в соотвествующий регистр, сбрасываю флаг и перехожу дальше к следующему регистру. И так последовательно, пока не приму все семь байт

А теперь вопрос - иногда байты принимаются "правильно" - т.е. заносятся в "свои" регистры, а иногда со сдвигом в "соседние". Хотя вроде бы всё синхронизировано - приёмник ждёт байт до начала его передачи, сразу загружает в своё регистр и ждёт следующий, который придёт только через 5 мс. Я прошу подсказать что нужно учесть при организации такого обмена по RS485. Прошу сильно не бить - опыта у меня маловато
Tugаrin вне форума  
Непрочитано 04.12.2011, 21:03  
alvadep
Почётный гражданин KAZUS.RUN
 
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,042
Сказал спасибо: 589
Сказали Спасибо 3,967 раз(а) в 1,825 сообщении(ях)
alvadep на пути к лучшему
По умолчанию Re: Вопросы по RS485

Если будете объяснять на пальцах, то и результат помощи будет таким же (скрученный из пальцев).
Реальной помощи быстрей дождетесь, если выложите реальные тексты программ.
alvadep вне форума  
Непрочитано 04.12.2011, 23:13  
Tugаrin
Временная регистрация
 
Регистрация: 17.10.2011
Сообщений: 59
Сказал спасибо: 2
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Tugаrin на пути к лучшему
По умолчанию Re: Вопросы по RS485

Вот куски программы ведущего и ведомого. Инициализации и прерывания, что бы не утомлять не привожу там всё стандартно.
Заметил, если передавать прямо UART - UART всё работает нормально. А вот с МАХ485 иногда сбоит. Пробовал разные задержки перед/после переключений приемопередатчиков МАХ485, эффект тот же.

Цитата:
; программа ведущего:

BTFSC KNOPKA ; ждём нажатия кнопки
GOTO $-1
BSF UPR_485 ; передатчик в 1, приёмник в 0 (передача)
CALL Delay1 ; задержка
MOVLW 0x0A ; команда на ответ (на передачу 7 байт)
CALL BYTE_TX ; передача байта

; тут ведомый получает посылку 0x0A, и
; через 5 мс начинает передавать семь байт
; а наша программа ведущего идёт дальше:

CALL Delay1 ; задержка 1 мс
BCF UPR_485 ; передатчик в 0, приёмник в 1 (приём)
CALL Delay1 ; задержка 1 мс

; до начала приёма ещё 3 мс (5-1-1)

BTFSS FLAG,0 ; жду появления флага прерывания
GOTO $-1
BCF FLAG,0 ; сбрасываю флаг
MOVF RX,0 ; ; в RX хранится считаный байт из RCREG
MOVWF TEMP_1 ; пишу в первый регистр
..............................
...............................

BTFSS FLAG,0 ; жду появления флага прерывания
GOTO $-1
BCF FLAG,0 ; сбрасываю флаг
MOVF RX,0 ; ; в RX хранится считаный байт из RCREG
MOVWF TEMP_7 ; пишу в последний регистр



; программа ведомого:

BCF UPR_485 ; передатчик в 0, приёмник в 1 (приём)
CALL Delay1 ; задержка 1 мс

ТХ
MOVF RX,w ; Ожидание команды от ведущего на передачу
SUBLW 0x0A
BTFSS STATUS,Z
GOTO ТХ

BSF UPR_485 ; передатчик в 1, приёмник в 0 (передача)

CALL Delay5 ; задержка 5 мс

MOVF REGISTR_1,w ; первый байт, который нужно передать
CALL BYTE_TX ; передача байта
CALL Delay5 ; задежка между байтами 5 мс
.................................
..................................
MOVF REGISTR_7,w ; последний байт, который нужно передать
CALL BYTE_TX ; передача байта
CALL Delay5 ; задежка между байтами 5 мс

Последний раз редактировалось Tugаrin; 04.12.2011 в 23:22.
Tugаrin вне форума  
Непрочитано 05.12.2011, 01:12  
Djakovskij
Вид на жительство
 
Регистрация: 14.06.2009
Адрес: Україна Київська обл. м.Буча
Сообщений: 328
Сказал спасибо: 104
Сказали Спасибо 106 раз(а) в 70 сообщении(ях)
Djakovskij на пути к лучшему
По умолчанию Re: Вопросы по RS485

Насколько принципиальна задержка 5 мс? Может быть стоит передать все данные подряд, добавив контрольную сумму?
Djakovskij вне форума  
Непрочитано 05.12.2011, 02:27  
jump
Почётный гражданин KAZUS.RUN
 
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 8,011
Сказал спасибо: 0
Сказали Спасибо 4,955 раз(а) в 2,379 сообщении(ях)
jump на пути к лучшему
По умолчанию Re: Вопросы по RS485

Djakovskij,
медленно, но уверенно, вы подталкиваете Tugаrin в пучину модбаса
jump вне форума  
Непрочитано 05.12.2011, 02:30  
Djakovskij
Вид на жительство
 
Регистрация: 14.06.2009
Адрес: Україна Київська обл. м.Буча
Сообщений: 328
Сказал спасибо: 104
Сказали Спасибо 106 раз(а) в 70 сообщении(ях)
Djakovskij на пути к лучшему
По умолчанию Re: Вопросы по RS485

Ладно, можно без контрольной суммы.
Djakovskij вне форума  
Сказали "Спасибо" Djakovskij
george carpenter (10.12.2011)
 
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Wiznet W7100. Общие вопросы R_N Микроконтроллеры, АЦП, память и т.д 7 06.06.2012 00:33
Работа с RS485 okt03 Микроконтроллеры, АЦП, память и т.д 13 13.02.2008 10:59
RS485 stri Микроконтроллеры, АЦП, память и т.д 4 06.08.2007 10:36


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


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