gosha-z 3 14 ноября, 2017 Опубликовано 14 ноября, 2017 · Жалоба А вот не надо было так делать. Потому как есть через mmap. И очень даже быстро. Та же WiringPi для "малинки" отлично работает через mmap.Если ткнете носом в описания/примеры - буду весьма благодарен. Хотя, RS-485 extensions все равно в Raspbian не включены. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alechek 0 15 ноября, 2017 Опубликовано 15 ноября, 2017 · Жалоба Прерывание или просто флаг FIFO empty + фиксированное время. Зачем знать последний бит? Скорость мы знаем. Может в каких-то моделях такого флага нет, за всё не ручаюсь. Это у STM32 таймеров как грязи. Не у всех так. А у LPC их впритык.... Выделить на такое дело не всегда возможно. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alag57 1 15 ноября, 2017 Опубликовано 15 ноября, 2017 · Жалоба Выделить на такое дело не всегда возможно А что у LPC флаг TEMT , который говорит, что сдвиговый регистр пуст, а значит передача закончена отменили? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 243 15 ноября, 2017 Опубликовано 15 ноября, 2017 · Жалоба А что у LPC флаг TEMT , который говорит, что сдвиговый регистр пуст, а значит передача закончена отменили? По данному флагу нет прерывания. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexeyT 0 17 ноября, 2017 Опубликовано 17 ноября, 2017 (изменено) · Жалоба Назовите хоть один отечественный современный МК без UART. И да, такая существует: http://ic.milandr.ru/products/interfeysnye...my/rs485-rs422/ Даже такая: http://ic.milandr.ru/products/interfeysnye...s422/2011vv024/ Спасибо за ответы, только у Миландра - это приемопередатчики, а нужен бы специализированный контроллер. Почему не можем использовать UART - потому что скорости не хватает - 921600 бод, а нам надо около 2 Мбит (RS-485 с такими скоростями позволяет работать) Изменено 17 ноября, 2017 пользователем AlexeyT Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VCucumber 0 17 ноября, 2017 Опубликовано 17 ноября, 2017 · Жалоба нам надо около 2 Мбит (RS-485 с такими скоростями позволяет работать) извращение, stm 21 мегабит позволяет, а драйверы можно и на 40 найти Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 53 17 ноября, 2017 Опубликовано 17 ноября, 2017 · Жалоба Спасибо за ответы, только у Миландра - это приемопередатчики, а нужен бы специализированный контроллер. Почему не можем использовать UART - потому что скорости не хватает - 921600 бод, а нам надо около 2 Мбит (RS-485 с такими скоростями позволяет работать) Да, у миландра там медленный уарт и кан, что поделаешь... Хотя 485й, как правило используется в низкоскоростном режиме (до 115200). Используйте Эзернет, там скорость еще больше, гальваноразвязка и еще много плюшек... Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
@Ark 3 17 ноября, 2017 Опубликовано 17 ноября, 2017 · Жалоба Почему не можем использовать UART - потому что скорости не хватает - 921600 бод, а нам надо около 2 Мбит... Если тактовая частота позволяет, то скоростной UART можно программно реализовать. Передача вообще не представляет ни какой сложности. С приемом - чуть сложнее. Нужно задействовать прерывание. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 143 18 ноября, 2017 Опубликовано 18 ноября, 2017 · Жалоба А что у LPC флаг TEMT , который говорит, что сдвиговый регистр пуст, а значит передача законченаЭто вовсе не говорит о том, что передача окончена. После возникновения этого флага еще передается последний бит, биты четности и стоповый. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexeyT 0 18 ноября, 2017 Опубликовано 18 ноября, 2017 · Жалоба Если тактовая частота позволяет, то скоростной UART можно программно реализовать. Передача вообще не представляет ни какой сложности. С приемом - чуть сложнее. Нужно задействовать прерывание. Мы используем Миландровский 1986ВЕ1Т с тактовой 144 МГц. На такой частоте по Вашей оценке можно реализовать программный контроллер RS-485 со скоростью 2 Мбит/с? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
@Ark 3 18 ноября, 2017 Опубликовано 18 ноября, 2017 · Жалоба Мы используем Миландровский 1986ВЕ1Т с тактовой 144 МГц. На такой частоте по Вашей оценке можно реализовать программный контроллер RS-485 со скоростью 2 Мбит/с? Думаю, да. Во всяком случае, стоит попробовать. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Михась 4 18 ноября, 2017 Опубликовано 18 ноября, 2017 · Жалоба Думаю, да. Во всяком случае, стоит попробовать. Примеров софт UART куча, надо тупо попробовать. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 243 18 ноября, 2017 Опубликовано 18 ноября, 2017 · Жалоба Думаю, да. Во всяком случае, стоит попробовать. 2 МБод на 144МГц тактовой? Может как-то и получится, но думаю процессор только этим и будет заниматься. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VCucumber 0 18 ноября, 2017 Опубликовано 18 ноября, 2017 · Жалоба процессор только этим и будет заниматься. поставят два Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 53 18 ноября, 2017 Опубликовано 18 ноября, 2017 · Жалоба поставят два Вот она - веселуха!! Даешь 5 портов из контроллеров 2 МБод на 144МГц тактовой? Может как-то и получится, но думаю процессор только этим и будет заниматься. В аппаратном уарте есть фильтр выборок, на мелких скоростях он так-то нафиг не нужен, но на мегагерцах уже вполне, так что прерываний там не 2мульона в сек. будет, а заметно больше. :rolleyes: ИМХО - изврат чистой воды! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться