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

STM32F0 - UART115200 без кварца на морозе и 3,3вольта уровни на 1 метр

STM32F0 - UART 115200 без кварца на морозе и 3,3вольта уровни на 1 метр будет ли работать? И в жару до 40 градусов будет ли? Как часто меняется частота RC от температуры я конечно же знаю. Интересует практический опыт, насколько реально UARTу это критично при такой скорости. Или без шансов?

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


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

Не то что без шансов, но стабильную работу получить будет практически невозможно. Неужели кварц прицепить проблемно?

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


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

Могу ошибаться, но для UART предел ошибки 2%. HSI у F0 заявлен +-5%, а тут ещё и температурный дрифт. 
Совсем никакого кварца нет?

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


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

Без кварца никак, понял. А вот 1 метр и 3,3 вольта уровни как будут работать? Надёжно ли? Есть у кого опыт подобный?

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


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

2 minutes ago, IgorAVR2 said:

А вот 1 метр и 3,3 вольта уровни как будут работать?

Смотря где. На столе будет. И на улице будет до первой грозы.

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


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

А HSI48 нет? Он поточней будет. У меня кучка железяк на CAN шине без кварца работает в диапазоне от -15℃ до +20℃…

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


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

1 hour ago, Spider said:

для UART предел ошибки 2%

А как у вас 2% получилось? Для 8N1 получаем: 1 стартовый, 8 данных и 1 стоповый бит. Если предположить, что считывание сигнала идет в середине бита, то получим примерно допустимую ошибку в 5%.

Кстати, что интересно: в мануале на STM32F0 написано, что у "обычного" HSI погрешность в 1%, а у HSI48 — аж 3%! Но, коль у меня на 250кбод CAN работает на HSI48, то и на HSI USART должен без проблем работать…

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


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

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

Если предположить, что считывание сигнала идет в середине бита, то получим примерно допустимую ошибку в 5%.

Во-первых - не 5%, а ~4.6%, а во-вторых: UART-ы с обоих сторон могут иметь погрешность. В разные стороны.

Итого = (1.5^(1/9)-1)/2 = ~2.3%

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

Но, коль у меня на 250кбод CAN работает на HSI48, то и на HSI USART должен без проблем работать…

Если чукча может зайти за чум, навалить там кучу, и в чуме не будет пахнуть (так как на улице -40°C), то из этого совсем не следует, что если также сделает папуас за своим бунгало, то и у него не будет вонять.

Между Вашим CAN на вашем конкретном столе и UART на любом другом столе, причинно-следственная связь точно такая же, как между чукчей и папуасом.  :unknw:

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


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

2 hours ago, IgorAVR2 said:

. . . . А вот 1 метр и 3,3 вольта уровни как будут работать? Надёжно ли? Есть у кого опыт подобный?

А дифференциальную линия не рассматривали ?

2 hours ago, IgorAVR2 said:

Без кварца никак, понял. . . . . Есть у кого опыт подобный?

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

Разве-что производитель расщедрился и встроил необходимые функции аппаратно в контроллер, + дал софт для температурной "поддержки".

Зато "были мысли" на базе 32768 + FLL. На скорости 115200 работало надежно.

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


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

Можно попробовать "USART auto baud rate detection". F0 его поддерживает. Лично я его если что не пробовал.

Если для не ответственных применений - скорее всего будет работать и так. Я гонял как то связку F0 без кварца + F1 с кварцем на 9600 на -50...+50 туды-сюды несколько раз и все работало.

 

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


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

16 hours ago, Eddy_Em said:

А как у вас 2% получилось? Для 8N1 получаем: 1 стартовый, 8 данных и 1 стоповый бит. Если предположить, что считывание сигнала идет в середине бита, то получим примерно допустимую ошибку в 5%.

Кстати, что интересно: в мануале на STM32F0 написано, что у "обычного" HSI погрешность в 1%, а у HSI48 — аж 3%! Но, коль у меня на 250кбод CAN работает на HSI48, то и на HSI USART должен без проблем работать…

Так было написано в Даташитах на ATMega процы в спецификациях UART, мол при расчёте BAUD старайтесь втиснуться в 2%, да и ещё потом много где встречал. Даже гугл по первому поиску находит такие упоминания.
Я вот открыл мануал на F070 и у него на HSI 1% только при 25°, а при минусе или большом плюсе - 5%.

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


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

 

On 6/1/2022 at 2:20 PM, Eddy_Em said:

А HSI48 нет?

Ну он же вроде только USBшных имеется? Насколько помню в STM32F051 его нет.

 

On 6/1/2022 at 4:23 PM, k155la3 said:

А дифференциальную линия не рассматривали ?

Рассматривал. Но там уже есть устройство у которого UART а к нему тянуть питание и ставить там микросхему рядом с ним ради одного метра не охота.

И посмотрел осцилограффом на столе, только кабель взял метров 10, и я бы сказал всё не так уж плохо выглядит Иголки появляются конечно, но фронт не заваливается.

Вот:

master_rx ch1_adapter.png

master_tx ch1_adapter.png

Пока для себя решил что кварц буду ставить, но придётся подразвести плату, а вот уровни так пока и оставлю на 3 вольта и буду тщательно тестировать.

Изменено пользователем IgorAVR2

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


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

На STM32 свет клином не сошёлся. Если нужна работа без кварца в индустриальном диапазоне температуры, то бишь от -40 до +85, можно взять такой МК, который это обеспечит. От NXP, Nuvoton или Silabs, к примеру.

Касательно помехоустойчивости - элементарная буферизация. 2 повторителя, а ля 74LVC1G125. На метр точно хватит. :)

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


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

11 часов назад, Harbinger сказал:

На STM32 свет клином не сошёлся.

Ещё как сошёлся :dirol:

RC-генератор плывет по частоте не только в температуре, но и во времени.

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


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

Т.е. что-либо не-ST нельзя применить? Весело однако.

Из собственного опыта. При фиксированном напряжении питания (это важно) дрейф частоты встроенного RC у P89LPC917 не превышал 0,15% в диапазоне (-40...+85) при заявленных плюс/минус 2,5%. В LPC на кортексовских ядрах этот генератор устроен аналогично, и параметры близкие. У силабсовских C8051 5-й серии - 0,4% при заявленных 2%. И т.д. STM32F в этом плане одни из худших.

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


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

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

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

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

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

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

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

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

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

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