Jump to content
    

Микроконтроллер с периферией RS-485

А вот не надо было так делать. Потому как есть через mmap. И очень даже быстро. Та же WiringPi для "малинки" отлично работает через mmap.
Если ткнете носом в описания/примеры - буду весьма благодарен. Хотя, RS-485 extensions все равно в Raspbian не включены.

 

Share this post


Link to post
Share on other sites

Прерывание или просто флаг FIFO empty + фиксированное время. Зачем знать последний бит? Скорость мы знаем. Может в каких-то моделях такого флага нет, за всё не ручаюсь.

Это у STM32 таймеров как грязи. Не у всех так. А у LPC их впритык.... Выделить на такое дело не всегда возможно.

Share this post


Link to post
Share on other sites

Выделить на такое дело не всегда возможно

А что у LPC флаг TEMT , который говорит, что сдвиговый регистр пуст, а значит

передача закончена отменили?

Share this post


Link to post
Share on other sites

А что у LPC флаг TEMT , который говорит, что сдвиговый регистр пуст, а значит

передача закончена отменили?

По данному флагу нет прерывания.

Share this post


Link to post
Share on other sites

Назовите хоть один отечественный современный МК без UART.

И да, такая существует: http://ic.milandr.ru/products/interfeysnye...my/rs485-rs422/

Даже такая: http://ic.milandr.ru/products/interfeysnye...s422/2011vv024/

 

 

Спасибо за ответы, только у Миландра - это приемопередатчики, а нужен бы специализированный контроллер. Почему не можем использовать UART - потому что скорости не хватает - 921600 бод, а нам надо около 2 Мбит (RS-485 с такими скоростями позволяет работать)

Edited by AlexeyT

Share this post


Link to post
Share on other sites

нам надо около 2 Мбит (RS-485 с такими скоростями позволяет работать)

извращение, stm 21 мегабит позволяет, а драйверы можно и на 40 найти

 

Share this post


Link to post
Share on other sites

Спасибо за ответы, только у Миландра - это приемопередатчики, а нужен бы специализированный контроллер. Почему не можем использовать UART - потому что скорости не хватает - 921600 бод, а нам надо около 2 Мбит (RS-485 с такими скоростями позволяет работать)

 

Да, у миландра там медленный уарт и кан, что поделаешь... Хотя 485й, как правило используется в низкоскоростном режиме (до 115200).

Используйте Эзернет, там скорость еще больше, гальваноразвязка и еще много плюшек...

Share this post


Link to post
Share on other sites

Почему не можем использовать UART - потому что скорости не хватает - 921600 бод, а нам надо около 2 Мбит...

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

Передача вообще не представляет ни какой сложности. С приемом - чуть сложнее.

Нужно задействовать прерывание.

 

 

Share this post


Link to post
Share on other sites

А что у LPC флаг TEMT , который говорит, что сдвиговый регистр пуст, а значит передача закончена
Это вовсе не говорит о том, что передача окончена. После возникновения этого флага еще передается последний бит, биты четности и стоповый.

Share this post


Link to post
Share on other sites

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

Передача вообще не представляет ни какой сложности. С приемом - чуть сложнее.

Нужно задействовать прерывание.

 

 

Мы используем Миландровский 1986ВЕ1Т с тактовой 144 МГц. На такой частоте по Вашей оценке можно реализовать программный контроллер RS-485 со скоростью 2 Мбит/с?

 

Share this post


Link to post
Share on other sites

Мы используем Миландровский 1986ВЕ1Т с тактовой 144 МГц. На такой частоте по Вашей оценке можно реализовать программный контроллер RS-485 со скоростью 2 Мбит/с?

Думаю, да.

Во всяком случае, стоит попробовать.

 

 

Share this post


Link to post
Share on other sites

Думаю, да.

Во всяком случае, стоит попробовать.

 

Примеров софт UART куча, надо тупо попробовать.

 

Share this post


Link to post
Share on other sites

Думаю, да.

Во всяком случае, стоит попробовать.

2 МБод на 144МГц тактовой? Может как-то и получится, но думаю процессор только этим и будет заниматься.

Share this post


Link to post
Share on other sites

поставят два

 

Вот она - веселуха!! Даешь 5 портов из контроллеров :biggrin:

 

2 МБод на 144МГц тактовой? Может как-то и получится, но думаю процессор только этим и будет заниматься.

 

В аппаратном уарте есть фильтр выборок, на мелких скоростях он так-то нафиг не нужен, но на мегагерцах уже вполне, так что прерываний там не 2мульона в сек. будет, а заметно больше. :rolleyes:

ИМХО - изврат чистой воды!

Share this post


Link to post
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...