Новичок
Регистрация: 07.10.2011
Сообщений: 31
Репутация: 10
![]() |
действительно, внимательно просмотрел даташит - там конденсатор не полярный.!
это блин в первой схеме ошибка и я ее скопировал... OK! |
||
Оценка
|
Новичок
Регистрация: 30.03.2010
Сообщений: 15
Репутация: 11
![]() |
1)
Цитата:
2) Убери резисторы 47 Ом. 3) А почему подтяжка (R12, R14) наоборот? "А" нужно подтянуть к +, "В" нужно подтянуть к -. (хотя вроде как 6-ой вывод макса должен быть "А"..... полез в даташит..... и точно...) в твоей схеме вывод 6 макса - это В, а по даташиту это А. Тогда подтяжка правильна, а схема нарисована некорректна, вводит в заблуждение. Только я ставлю всегда 2,4 кОм а не 560 Ом. Далее, про подтяжку... линию RS485 нужно подтянуть с одной стороны через 2,4 кОм к питанию (к+ и к -), между А и В терминирующий резистор 120 Ом. А другом конце ДЛИНОЙ линии ТОЛЬКО терминирующий резистор 120 Ом, подтяжка не нужна. У тебя заводской преобразователь 232/485. в нем есть подтяжки и терминатор? если есть, то на короткой линии с другого конца вообще ни чего не надо. См доку на заводской преобразователь и выясни.... или опытным путём определи. 4) Лучше отлаживать серийный порт программой ComPortToolKit. Пошли 0х55, с другой стороны принимай. 5)Схема, кагбэ памякше сказать..... неидеальна. Эта схема будет работать только на 1 фиксированной скорости. 555 задаёт управление RE И ТE. какое время импульса? Примерно 43 мкс. Передаем байт 0х01 на скорости 9600. Длинна бита примерно 1 мс. Пришел старт бит. По отрицательному фронту (нач. стартбита) запускается 555 на 43 мкс. разрешается передача. через 43 мкс после начала старта 555 заканчивает считать и переводит макс из передачи в прием. Но не то чтобы байт ещё не вышел, ещё даже старт бит не вышел. На 9600 такая схема точно работать не будет. И на 1200 тем более. С помощью R9 и С2 можно добиться интервала 555 на длительность байта на определённой скорости, на 9600 нужно примерно 10 мс. Но тогда уже на 4800 работать не будет. На бОьших работать будет, но тоже будут косяки. допустим 555 дает 1 мс, ты наладишь обмен туда-сюда на 256000 б/с. Передашь байт за 39 мкс и будешь ждать ответ. на другом конце устройство начнет передавать "ответ".... Но твой преобразователь стоит в передаче, прием запрещён, т.к. 555 ещё не закончил считать 1 мс. Ты сможешь принять ответ только через 1 мс. 6)Оптопары - зло. Нужно смотреть осцилографом успевают ли они полностью открыться. Были проблемы как-то с подобной опторазвязкой - ни как не могли перевалить порог в 9600, на бОльших скоростях оптопары не успевали открыться. 6)То, что я сказал, это на вскидку, явные косяки, к гадалке не ходи. А вообще подобный анализ - это гадание на кофейной гуще. Осциллограф - лучший друг человека. Запускай ComPortToolKit, шли один байт 0х55 (это лучший байт для отладки), циклически (есть в тулките такая возможность) с периодом 1например 100 мс. Щюпом на выход из ПК1 на рс232, потом на 485 линию после заводского преобразователя... и так далее, на свои ттл, на опторазвязку, и далее далее далее .... одним щюпом смотри данные, другим TE и RE. Картина будет маслом! ps по мойму переобразователь на первой схеме расчитан на скорость 256000. |
||
Оценка
|
Новичок
Регистрация: 07.10.2011
Сообщений: 31
Репутация: 10
![]() |
![]() ![]() ![]() У меня адаптер будет подключатся к терминалу с интерфейсом ТТЛ. У него нет ни каких выходов аппаратного управления потоком. Как вообще тогда правильно строятся схемы на max 485e управлением потоком/??????????????? Заранее благодарен ![]() |
||
Оценка
|
Эксперт
Регистрация: 08.11.2009
Сообщений: 2,310
Репутация: 643
![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
5)Схема, кагбэ памякше сказать..... неидеальна. Эта схема будет работать только на 1 фиксированной скорости. 555 задаёт управление RE И ТE. какое время импульса? Примерно 43 мкс. Передаем байт 0х01 на скорости 9600. Длинна бита примерно 1 мс. Пришел старт бит. По отрицательному фронту (нач. стартбита) запускается 555 на 43 мкс. разрешается передача. через 43 мкс после начала старта 555 заканчивает считать и переводит макс из передачи в прием. Но не то чтобы байт ещё не вышел, ещё даже старт бит не вышел. На 9600 такая схема точно работать не будет. И на 1200 тем более. С помощью R9 и С2 можно добиться интервала 555 на длительность байта на определённой скорости, на 9600 нужно примерно 10 мс. Но тогда уже на 4800 работать не будет. На бОьших работать будет, но тоже будут косяки. допустим 555 дает 1 мс, ты наладишь обмен туда-сюда на 256000 б/с. Передашь байт за 39 мкс и будешь ждать ответ. на другом конце устройство начнет передавать "ответ".... Но твой преобразователь стоит в передаче, прием запрещён, т.к. 555 ещё не закончил считать 1 мс. Ты сможешь принять ответ только через 1 мс.
задержку 555 таймера в 43мкс вы расчитали правильно и вот скорость работы настроена на 9600бод/с 43мкс это чуть меньше половины длительности одного бита (104мкс) на 555том организован хоть и корявый таймер с перезапуском. по приходу старт-бита 485 включается на передачу и остается в этом состоянии пока передаются биты=лог.0, при появлении бит=лог1 через 43мкс 485 перейдет в режим приёма и последующая передача бита будет осуществлена за счет подтягивающих резисторов по питанию ![]() как-то так... |
||
Оценка
|
Эксперт
Регистрация: 08.11.2009
Сообщений: 2,310
Репутация: 643
![]() ![]() ![]() ![]() ![]() ![]() |
|
||
Оценка
|
Новичок
Регистрация: 07.10.2011
Сообщений: 31
Репутация: 10
![]() |
Цитата:
Поэтому толковый вариант дорабатывать управление прием/передача максом. |
||
Оценка
|
Новичок
Регистрация: 30.03.2010
Сообщений: 15
Репутация: 11
![]() |
Цитата:
Цитата:
по приходу старт-бита 485 включается на передачу и остается в этом состоянии пока передаются биты=лог.0
Может я ошибаюсь ..... смотртю вики Цитата:
Пока на входе INPUT остаётся низкий уровень, выход OUTPUT всегда имеет высокий уровень.
Цитата:
при появлении бит=лог1 через 43мкс 485 перейдет в режим приёма
передача бита будет осуществлена за счет подтягивающих резисторов по питанию - интересное решение. Только успеет ли макс переключится из приема в передачу? Если успевает то тогда 555 вообще не нужен. см рисунок. Только нужно проверить что будет в момент переключения. если передать 0х55, то там 10 раз будет переключение прием/передача. Что будет на линии в момент переключения. Ну наверно тоже самое что и с LM555 на 9600 при 43 мкс. Обычно мультивибратор запускают на длительность байта. |
||
Оценка
|
Эксперт
Регистрация: 08.11.2009
Сообщений: 2,310
Репутация: 643
![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
а вот тут думаю не так. У LM555 таймер всё таки запускается от начала входного импульса (FIGURE 2.) .
для этого в схему добавлен диод VD1 ![]() |
||
Оценка
|
Обратная связь РадиоЛоцман Вверх |