Перейти к содержанию
    

хочу по витой паре передавать до 100 метров данные

всех порву эзернетом по всем критериям

Но не по простоте настройки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На скорости 9600 это чуть больше 1 мс

can может почти в тысячу раз больше

проблема 485 - отсутствие аппаратной поддержки uart`ом

так что если can так жмёт, то я бы выбрал 422, но не 485

 

 

Но не по простоте настройки.

и по простоте

ещё есть ?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

can может почти в тысячу раз больше

А в УД больше не надо.

проблема 485 - отсутствие аппаратной поддержки uart`ом

Модуль UART можно настроить на автоматическое управление сигналом TX_ENABLE.

Или какая-то друга поддержка нужна?

и по простоте

ещё есть ?

у меня в квартире 10 контроллеров в стене. Между ними проброшен один кабель "паравозиком".

На Ethernete вы предлагаете ставить 10 портовый хаб и тянуть от каждого контроллера к хабу кабель звездой?

Мне не кажется это простым решением.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А в УД больше не надо.

а как же звук, который выше хотели ?

 

Модуль UART можно настроить на автоматическое управление сигналом TX_ENABLE.

в stm32 ?

 

у меня в квартире 10 контроллеров в стене. Между ними проброшен один кабель "паравозиком".

На Ethernete вы предлагаете ставить 10 портовый хаб и тянуть от каждого контроллера к хабу кабель звездой?

в ethercat эти вопросы таки решены - и шина, и без хаба

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А в УД больше не надо.

 

Модуль UART можно настроить на автоматическое управление сигналом TX_ENABLE.

Или какая-то друга поддержка нужна?

 

у меня в квартире 10 контроллеров в стене. Между ними проброшен один кабель "паравозиком".

На Ethernete вы предлагаете ставить 10 портовый хаб и тянуть от каждого контроллера к хабу кабель звездой?

Мне не кажется это простым решением.

 

Гы, ну можно извратиться и на каждый девайс ставить микросхемку свича минимум 3 портового, типа один пришел, один ушел, и еще один это собственно физика девайса. Тогда звезду можно не городить, а подключать все так же свич в свич в свич и тд. Только это опять велосипед, хоть и с гальваникой и, возможно, с повер овер енет, если так сказать длина позволяет. Так то 10 мбит енета на коаксиале с Т коннекторами байонетными было бы как раз в пору.

 

Езеркэт это кольцо, не всегда может быть удобным, но таки да, вполне себе промышленное решение и далеко не в лабораторных условиях работающее.

 

И таки да стм32 может аппаратно тх рх разруливать. Да и свет на нем клином не сошелся же, есть и другие камни по сравнимым ценам.

Изменено пользователем bloody-wolf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гы, ну можно извратиться

Можно. А нужно ли?

 

всех порву

Кста, что там с длинами более 100 метров?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гы, ну можно извратиться и на каждый девайс ставить микросхемку свича минимум 3 портового

так и делают

а ещё - фаи back to back

 

Так то 10 мбит енета на коаксиале с Т коннекторами байонетными было бы как раз в пору.

а что мешает витухе ?

 

Езеркэт это кольцо

кольцо в одну сторону, а там шина, замкнутая в кольцо, для увеличения надёжности

 

И таки да стм32 может аппаратно тх рх разруливать

а не трудно define из spl сюда кинуть ?

 

Кста, что там с длинами более 100 метров?

да подсказали же - ару

а оптика сколько, 10км ?

а у 485 на 10км какая скорость останется ?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Модуль UART можно настроить на автоматическое управление сигналом TX_ENABLE.

Или какая-то друга поддержка нужна?

Довольно бесполезная опция на самом деле. Передачик ДО начала передачи не включает :) :). Если только управление выборки приемника и передатчика не запаралелить намертво, то передатчик то он выключит, но приемник-то тоже включать надо. И до кучи уже конкретные проблемы. Уж совсем было собрался из принципа, хоть один раз воспользоваться, так у LPC15xx баг оказался - глитч между байтами на выборке проскакивает. А поскольку интервальный таймер на длительность байта по любому нужен для аварийного таймаута приема, то без надобности такие опции :).

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а не трудно define из spl сюда кинуть ?

SPL не читаю. Читаю RM (на примере простеньких STM32F0x1/STM32F0x2/STM32F0x8):

USARTx_CR1:

Bits 25:21 DEAT[4:0]: Driver Enable assertion time
This 5-bit value defines the time between the activation of the DE (Driver Enable) signal and
the beginning of the start bit. It is expressed in sample time units (1/8 or 1/16 bit duration,
depending on the oversampling rate).

Bits 20:16 DEDT[4:0]: Driver Enable de-assertion time
This 5-bit value defines the time between the end of the last stop bit, in a transmitted
message, and the de-activation of the DE (Driver Enable) signal. It is expressed in sample
time units (1/8 or 1/16 bit duration, depending on the oversampling rate).
If the USARTx_TDR register is written during the DEDT time, the new data is transmitted
only when the DEDT and DEAT times have both elapsed.

USARTx_CR3:

Bit 15 DEP: Driver enable polarity selection
0: DE signal is active high.
1: DE signal is active low.

Bit 14 DEM: Driver enable mode
This bit allows the user to activate the external transceiver control, through the DE signal.
0: DE function is disabled.
1: DE function is enabled. The DE signal is output on the RTS pin.

Это сойдет за аппаратную поддержку?

да подсказали же - ару

а оптика сколько, 10км ?

а у 485 на 10км какая скорость останется ?

Я еще и не ту кашу из топора сварить могу. А надо ли?

 

Довольно бесполезная опция на самом деле. Передачик ДО начала передачи не включает :) :).

Да ну? Выдержка из RM выше. Он еще и перед отпусканием подождать может.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да ну?

Точно! Для этого надо было Вам увидеть "у LPC15xx", а так-же то, мой ответ был на пост, в котром не было упоминаня никаких конкретных реализациях этой функции.

Он еще и перед отпусканием подождать может.

Это уже многе могут, но опция при нынешних шустрых процесорах скользкая - надо принимать меры по гарантированной задержке ответа, хотя если побитно можно, то это уже неплохо - на один битик.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Точно! Для этого надо было Вам увидеть "у LPC15xx", это про ДО начала.

Если у LPC что-то сделано плохо, это же не означает, что аппаратное управление передатчиком фича бесполезная.

Насчет таймаута приема вам бы понравилось:

Modbus/RTU
In this mode, the end of one block is recognized by a “silence” (idle line) for more than 2 character times.
This function is implemented through the programmable timeout function.
The timeout function and interrupt must be activated, through the RTOEN bit in the USARTx_CR2 register
and the RTOIE in the USARTx_CR1 register. The value corresponding to a timeout of 2 character times
(for example 22 x bit duration) must be programmed in the RTO register. When the receive line is idle for this duration,
after the last stop bit is received, an interrupt is generated, informing the software that the current block reception is completed.

Modbus/ASCII
In this mode, the end of a block is recognized by a specific (CR/LF) character sequence.
The USART manages this mechanism using the character match function.
By programming the LF ASCII code in the ADD[7:0] field and by activating the character match interrupt (CMIE=1),
the software is informed when a LF has been received and can check the CR/LF in the DMA buffer.

Bit 23 RTOEN: Receiver timeout enable
This bit is set and cleared by software.
0: Receiver timeout feature disabled.
1: Receiver timeout feature enabled.
When this feature is enabled, the RTOF flag in the USARTx_ISR register is set if the RX line is idle
(no reception) for the duration programmed in the RTOR (receiver timeout register).

Bits 23:0 RTO[23:0]: Receiver timeout value
This bit-field gives the Receiver timeout value in terms of number of bit duration.
In standard mode, the RTOF flag is set if, after the last received character, no new start bit is
detected for more than the RTO value.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если у LPC что-то сделано плохо, это же не означает, что аппаратное управление передатчиком фича бесполезная.

мой ответ был на пост, в котром не было упоминания никаких конкретных реализациях этой функции.

Насчет таймаута приема вам бы понравилось:

Неплохо, но два байта многовато.

Навороты неплохи, но делается и руками и минимально зависимо от контроллера.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

мой ответ был на пост, в котром не было упоминания никаких конкретных реализациях этой функции.

Ок. Т.е. существуют реализации с не бесполезным аппаратным управлением передатчиком.

Неплохо, но два байта многовато.

Там не в байтах таймаут задается.

Навороты неплохи, но делается и руками и минимально зависимо от контроллера.

Так и знал, что вы так ответите :) Я тоже все делаю ручками, и про фичи эти узнал сегодня.

Но при таком раскладе RS485 становится все проще и проще.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это сойдет за аппаратную поддержку?

это один из последних камней, я их ещё не курил, поэтому не видел

как раз сейчас с 485 биться, а это может существенно облегчить

спасибо

 

Я еще и не ту кашу из топора сварить могу. А надо ли?

лучше: я знаю, как сварить, будет надо - сварю, пальчики оближешь

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Топикстартер. Одна ремарка для Вас.

При достаточно большой скорости передачи Ваша 100 метровая витая пара начнет себя вести как линия с распределнными параметрами "со всеми вытекающими"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...