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

Разводка линий UART обмена с SIMCOM 7682/A7672 на скоростях 921600- 3686400 бод

>>> И как тогда использовать сотовые модемы с большинством недорогих МК в которых нет усб хоста?

 

Не смешите, на сегодня USB OTG/FS/HS есть в массе дешевых микроконтроллеров.

Но тут два вопроса - что считать дешевым и его доступность.

У Nuvoton, например, USB OTG/FS/HS для корпусов LQFP48 можно найти от $2.2 до $3.5

У Gigadevice наверное будет еще дешевле.....

 

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


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

Дело, скорее, в другом: контроллеру за 2 бакса сверху требуется программист за 2 килобакса как минимум, который подымет хост.

А для программирования UART-а программист потребуется с запросами в разы меньше.

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


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

49 минут назад, CADiLO сказал:

Не смешите, на сегодня USB OTG/FS/HS есть в массе дешевых микроконтроллеров.

Вообще-то - даже в относительно дорогих не везде есть. Пример: XMC4504

А даже если есть, может тактовая частота оказаться недопустимой для тактирования USB (и нет отдельного источника для PLL). Или источника +5V может не быть на плате. Или ещё что. Да и USB-host-стек - вещь довольно объёмистая и тяжёлая. Поднимать и тащить его, там где оно совсем не нужно??  :unknw:

 

PS: Вот даже и в советском рассейском 1921ВК035 - тоже USB ещё не изобрели. Цена там конечно - секретная (чтоб шпиёны не пронюхали) :secret: , но чую - если и не конская, то явно не дешёвая.  :vava:

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


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

19 hours ago, jcxz said:

Зачем flow-control? Что за канал такой, где он нужен?

Например, принять и сохранить во внешнюю флеш 100кб файл.

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


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

34 минуты назад, vit496 сказал:

Например, принять и сохранить во внешнюю флеш 100кб файл.

Ещё раз: принять через что? Через какой канал? Что это за канал такой, в котором передаются кадры размером 100кБ и без каких-либо подтверждений?

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

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


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

19 часов назад, ELSE сказал:

Не совсем понимаю где правильно.

A7672X_A7670X HW design пишет RTS IN, CTS OUT.

A76XX UART Application наоборот. Понятно что картинка приведена общая для RS-232 модема, но сноска то.

image.thumb.png.c6ddad3f37f0651e0400ec442568d859.pngimage.thumb.png.ccd035b2fb7a3d596e06d8a5149d69b5.png

Проверил. на A7672E: RTS - это вход, CTS - выход. Так что в A76XX UART Application непонятно что и к чему написано.

HW FC заработало.

1 час назад, jcxz сказал:

Ещё раз: принять через что? Через какой канал? Что это за канал такой, в котором передаются кадры размером 100кБ и без каких-либо подтверждений?

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

FC на локальных интерфейсах применяется. Спецификация RS-232/485/422. не в каналах связи. кадры - это на L2. А тут речь про физику идет L1 в кабеле между DCE и DTE. Управляющие пины.

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


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

22 минуты назад, ELSE сказал:

FC на локальных интерфейсах применяется.

Мой ответ касался:

2 часа назад, vit496 сказал:

принять и сохранить во внешнюю флеш 100кб файл.

Если "локальных", то видимо между МК и GSM-модулем. Объясните тогда - в каких это случаях обсуждаемые модемы могут передать файл размером 100 кБ локально ? Да ещё с таким вышележащим уровнем, в котором нет встроенных средств управления потоком.

22 минуты назад, ELSE сказал:

Спецификация RS-232/485/422. не в каналах связи. кадры - это на L2. А тут речь про физику идет L1 в кабеле между DCE и DTE. Управляющие пины.

Более высокие уровни предъявляют требования к более низким. И в вашем случае неочевидна необходимость этого FC. Сделать то можно, но - зачем? Непонятно..... 

 

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


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

Вы забываете что между модемами не физическая линия, а эфир.

RTS/CTS кроме второй стороны может выставить любая промежуточная сота остановив передачу.

И для высоких скоростей это важно чтобы не потерять данные.

 

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


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

20 минут назад, CADiLO сказал:

Вы забываете что между модемами не физическая линия, а эфир.

А какое отношение имеет эфир к линиям UART? И откуда промежуточные соты знают, что на конце канала есть FC? Чтобы что-то выставить....

20 минут назад, CADiLO сказал:

И для высоких скоростей это важно чтобы не потерять данные.

Высоких скоростей чего? :umnik2:  TCP/IP? Так там есть управление потоком. Собственное. Или чего? О каком-то коне в вакууме идёт разговор....

 

PS: За лет ~15 плотной работы с разными интерфейсами и средами передачи, только один раз сталкивался со случаем, когда FC был необходим. И вовсе не из-за "высоких скоростей".

Поэтому считаю, что проблема надуманная.

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


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

3 минуты назад, jcxz сказал:

А какое отношение имеет эфир к линиям UART? И откуда промежуточные соты знают, что на конце канала есть FC? Чтобы что-то выставить....

Высоких скоростей чего? :umnik2:  TCP/IP? Так там есть управление потоком. Собственное. Или чего? О каком-то коне в вакууме идёт разговор....

 

PS: За лет ~15 плотной работы с разными интерфейсами и средами передачи, только один раз сталкивался со случаем, когда FC был необходим. И вовсе не из-за "высоких скоростей".

Поэтому считаю, что проблема надуманная.

При каком случае был необходим?

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


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

4 минуты назад, ELSE сказал:

При каком случае был необходим?

Устройство могло спать. МК мог спать.

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


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

4 minutes ago, jcxz said:

А какое отношение имеет эфир к линиям UART? И откуда промежуточные соты знают что на конце канала есть FC? Чтобы что-то выставить....

 

Самая простая ситуация. Попадалась не раз при обмене данными в GSM сетях.

 

Модем 1 подключился к соте А и связался с модемом 2 который в это время подключен к соте В и начался обмен данными.

В определенный момент (например студенты вышли после занятий) в районе соты А возникает критический перегруз.

Сота А, согласно приоритету разговорам, уменьшает количество таймслотов для данных, которые в один момент заканчиваются.

И тогда сота выставляет обеим устройствам - "передачу остановить".

Не имея RTS/CTS вы тупо ее продолжаете в никуда.

 

Это самое простое.

Если хочется посложнее, можно почитать "Improving Wireless LAN Performance with RTS/CTS"

Или другие статьи на эту тему, их достаточно много.

 

 

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


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

3 минуты назад, CADiLO сказал:

Не имея RTS/CTS вы тупо ее продолжаете в никуда.

Не имея CTS, но работая по какому либо протоколу обмена с квитированиями (типа TCP/IP или любому другому), я просто также жду квитирования своих отправленных данных от удалённой стороны. И никакой передачи "в никуда" нет.

Если конечно будет остановлено только одно направление, то будет проблема. Но что-то сомневаюсь, что сота будет делать такую остановку.

 

Но вообще-то - в теме речь идёт совсем о другом: ТС городит FC для управления потоком между МК и GSM-модулем. И если в описанных вами случаях ещё хоть какой-то смысл в FC есть, то для локального FC он вообще не просматривается.

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


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

12 minutes ago, jcxz said:

ТС городит FC для управления потоком между МК и GSM-модулем.

 

Вы ошибаетесь. И очень сильно.

Модуль там только как приемопередатчик.

Поясню на простом примере.

Это физическое соединение двух, скажем так, микроконтроллеров.

image.thumb.png.f3dcda023073ca5515a8c52f42138ea8.png

 

Теперь вместо кабеля ставим модули

 

image.thumb.png.1985d80e2ae0f94b6f21fd01a2e5f177.png

 

Так понятно?  RTS/CTS не для модуля от контроллера, а для второй стороны!!!

 

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


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

1 минуту назад, CADiLO сказал:

Вы ошибаетесь. И очень сильно.

Я не ошибаюсь, так как прочитал сообщения ТС:

22 часа назад, ELSE сказал:

Flow control тут под 3Мбод задача. в моем МК буферы UART  + в памяти маленькие. Клиентское железо может лить поток.

Т.е. как видно - ТС хочет с помощью FC своей программой поток останавливать, а не на задержки в сети рассчитывает.

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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