реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> выбор мк с usb, uart и can
_3m
сообщение Jul 28 2015, 08:57
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960



подбираю мк для преобразователя интерфейсов. требования к процессору:

Ядро C-m0 ... C-m4. Частота 48-100МГц (больше не нужно).
Флэш 64-128Кб
Озу 16-64 Кб (16 это совсем край, лучше 32-64).

интерфейсы:
usb fs (device) - 1
uart - 1 или 2. Работа с rs485. Обязательна поддержка 7, 8 и 9 битных форматов в том числе 7N1. uart должен быть удобен для честной реализации modbus rtu с его дурацкими таймингами (есть мк где не предусмотрено прерывание по окончанию передачи)
can - 1
Перечисленные интерфейсы используются одновременно.

Таймеры:
по 1 аппаратному таймеру на каждый uart + 2 системных.

Дополнительные требования:
Встроенный rom загрузчик через usb. Необходима возможность через usb прошивать флэш, заливать код в озу и запускать его.


Пока нашел только lpc15xx как условно подходящее.


Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Jul 28 2015, 09:11
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



STM32CubeMX говорит, что есть 175 типов STM32F, удовлетворяющих Вашим требованиям.
Upd: Хм, а что такое 7N1 ? не, такое оно не может. может только 7N1.5 да и то ручками.
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Jul 28 2015, 09:22
Сообщение #3


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



К1986ВЕ1QI от Миландра
http://milandr.ru/index.php?mact=Products,...nt01returnid=68


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
Kabdim
сообщение Jul 29 2015, 08:18
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 558
Регистрация: 26-11-14
Из: Зеленоград
Пользователь №: 83 842



nxp lpc 17XX|182(3,5)X
Но NXP в новых чипах держит только 1 уарт с полным фукнционалом, а остальные обрезки.

Сообщение отредактировал Kabdim - Jul 29 2015, 08:29
Go to the top of the page
 
+Quote Post
_3m
сообщение Jul 29 2015, 09:49
Сообщение #5


Знающий
****

Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960



Цитата(Kabdim @ Jul 29 2015, 11:18) *
nxp lpc 17XX|182(3,5)X
Но NXP в новых чипах держит только 1 уарт с полным фукнционалом, а остальные обрезки.

В LPC17XX для rs485 пригоден только uart1, в других нет управления направлением rs485 и не предусмотрено прерывание по флагу статуса Transmitter Empty, без этого прерывания в многозадачной системе не сделать программное управление трансивером rs485.
Также я не представляю как в этих уарт ловить таймауты модбас-рту не отключая фифо.
Кроме того в lpc17 boot loader работает с уарт а мне обязательно нужна загрузка прошивки по усб.
lpc1820 хорош, но корпуса монстрообразные.
Go to the top of the page
 
+Quote Post
Kabdim
сообщение Jul 29 2015, 10:30
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 558
Регистрация: 26-11-14
Из: Зеленоград
Пользователь №: 83 842



С модбасом не работал, возможно прерывание Character Time-out indication подойдет? Оно на 3.5 символа насколько я помню.
Бутлоадер можно и свой вставить, апноут насколько я помню есть.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Jul 29 2015, 11:28
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(_3m @ Jul 29 2015, 15:49) *
В LPC17XX для rs485 пригоден только uart1, в других нет управления направлением rs485 и не предусмотрено прерывание по флагу статуса Transmitter Empty, без этого прерывания в многозадачной системе не сделать программное управление трансивером rs485.

Странно.. У нас кучка устройств на LPC1768/LPC1778, во всех 1-2 RS-485, везде FIFO включен, ни один не находится на UART1, везде используется операционка, среди прочих протоколов используется и Modbus. Проблем не замечал.
Управление направлением передачи внешнего драйвера - GPIO. Обнаружение конца передачи - прерывание buffer empty, затем - поллинг в прерываниях сис.таймера с ожиданием shifter empty (при желании можно и точно рассчитать стоповый бит, взведя таймер по buffer empty, но оно имхо - не нужна такая точность).

Цитата(_3m @ Jul 29 2015, 15:49) *
Также я не представляю как в этих уарт ловить таймауты модбас-рту не отключая фифо.

Точно так же как и без FIFO - оно не влияет никак на таймауты.

Цитата(_3m @ Jul 29 2015, 15:49) *
Кроме того в lpc17 boot loader работает с уарт а мне обязательно нужна загрузка прошивки по усб.

PL2303/CP2102/FT232 ?

Цитата(Kabdim @ Jul 29 2015, 14:18) *
Но NXP в новых чипах держит только 1 уарт с полным фукнционалом, а остальные обрезки.

Интересно - в чём урезанность остальных UART???? CTS/RTS нету? Так оно для RS-485 и не нужно.
Если так подходить, то STM32 вообще UART полных не содержит - ни в одном нету FIFO rolleyes.gif

PS: Любой из LPC17xx удовлетворяет всем Вашим требованиям. Ну с прерыванием опустошения сдвигового регистра там конечно туго, но можно обойтись и без него.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 29 2015, 11:38
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (_3m @ Jul 29 2015, 12:49) *
В LPC17XX для rs485 пригоден только uart1, в других нет управления направлением rs485 и не предусмотрено прерывание по флагу статуса Transmitter Empty, без этого прерывания в многозадачной системе не сделать программное управление трансивером rs485.
Также я не представляю как в этих уарт ловить таймауты модбас-рту не отключая фифо.

Это все по тому, что Вы писать не умеете ни для чего, кроме AVR:(. Минимальный NXP UART это чистой воды 80550 - именно на этом и 8050 чипе не одно поколение RS485 писателей, включая больных на всю голову авторов MODBUS-RTU реализовывали свои все.
QUOTE
Кроме того в lpc17 boot loader работает с уарт а мне обязательно нужна загрузка прошивки по усб.

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


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Kabdim
сообщение Jul 29 2015, 13:34
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 558
Регистрация: 26-11-14
Из: Зеленоград
Пользователь №: 83 842



Цитата(jcxz @ Jul 29 2015, 14:28) *
Интересно - в чём урезанность остальных UART?

Ну как еще сказать что один уарт немного ровнее других? sm.gif
Go to the top of the page
 
+Quote Post
_3m
сообщение Jul 29 2015, 13:53
Сообщение #10


Знающий
****

Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960



Цитата(jcxz @ Jul 29 2015, 14:28) *
Странно.. У нас кучка устройств на LPC1768/LPC1778, во всех 1-2 RS-485, везде FIFO включен, ни один не находится на UART1, везде используется операционка, среди прочих протоколов используется и Modbus. Проблем не замечал.
Управление направлением передачи внешнего драйвера - GPIO. Обнаружение конца передачи - прерывание buffer empty, затем - поллинг в прерываниях сис.таймера с ожиданием shifter empty (при желании можно и точно рассчитать стоповый бит, взведя таймер по buffer empty, но оно имхо - не нужна такая точность).

С поллингом уарт идите в лес а мк которые по другому не позволяют работать фтопку!
Кроме rs485 есть и другие задачи критичные в времянкам.

Цитата
Точно так же как и без FIFO - оно не влияет никак на таймауты.

Простой вопрос: какой алгоритм определения таймаутов 1,5T и 3,5T при фифо размером 16 байт ?


Цитата
Интересно - в чём урезанность остальных UART???? CTS/RTS нету? Так оно для RS-485 и не нужно.
Если так подходить, то STM32 вообще UART полных не содержит - ни в одном нету FIFO rolleyes.gif

stm32 не обсуждается потому что он не поддерживает формат 7 бит данных 1 стоп без четности.

Цитата
PS: Любой из LPC17xx удовлетворяет всем Вашим требованиям. Ну с прерыванием опустошения сдвигового регистра там конечно туго, но можно обойтись и без него.

Не удовлетворяет нифга. Загрузки по усб нету. Я в Пакистан раскирпичивать девайс не поеду.
LPC15** удовлетворяет но маловто озу. В 15-й серии уарт немного другой.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 29 2015, 14:41
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (_3m @ Jul 29 2015, 16:53) *
Я в Пакистан раскирпичивать девайс не поеду.

А не писать кирпичные девайсы не судьба? Ну откуда в этом "пакистане" USB sm.gif может их там нет sm.gif. Нафига вообще USB, если он НЕ нужен для работы, зато по Вашим словам сей девайс есть конвертор интрефейсов у которого по определению разных интерфейсрв с которыми работает заказчик таки есть и без USB. Посему НОРМАЛЬНЫЙ подход к делу, это ВТОРИЧНЫЙ загрузчик работающий по одному или вообще по всем рабочим интерфейсам и загружающий шифрованные образы, которые уже можно хоть в Пакистан, хоть в Китай с Индией посылать - не жалко.



--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
mantech
сообщение Jul 29 2015, 17:59
Сообщение #12


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(jcxz @ Jul 29 2015, 14:28) *
Кроме того в lpc17 boot loader работает с уарт а мне обязательно нужна загрузка прошивки по усб.


Возьмите любой мк с усб-хостом, поднимите в бутлодыре масссторадж и обновляйте прошивку с усб-флешки, очень удобно и не надо вообще комп подключать! Клиенты скажут спасибо rolleyes.gif
Go to the top of the page
 
+Quote Post
_3m
сообщение Jul 29 2015, 18:05
Сообщение #13


Знающий
****

Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960



Цитата(zltigo @ Jul 29 2015, 17:41) *
А не писать кирпичные девайсы не судьба? Ну откуда в этом "пакистане" USB sm.gif может их там нет sm.gif. Нафига вообще USB, если он НЕ нужен для работы, зато по Вашим словам сей девайс есть конвертор интрефейсов у которого по определению разных интерфейсрв с которыми работает заказчик таки есть и без USB. Посему НОРМАЛЬНЫЙ подход к делу, это ВТОРИЧНЫЙ загрузчик работающий по одному или вообще по всем рабочим интерфейсам и загружающий шифрованные образы, которые уже можно хоть в Пакистан, хоть в Китай с Индией посылать - не жалко.

Программ без ошибок не бывает. Во время обновления могут вырубить электричество. Юзер может быть идиоттом и не дождавшить завершения процесса нажмет ресет / выдернет шнурок / отключит питание.
Нормальный подход к делу - это гарантировать восстановление физически исправного изделия из любых состояний включая полностью чистую флэш силами пользователя без применения специального оборудования.
usb есть в составе нашего аппаратного коплекса.
В разрабатываемом конверторе интерфейсов первичным вяляется интерфейс usb.
С шифрованными образами идите к Сноудену.
Как показала многолетняя практика голый бинарник прошивки он как неуловимый Джо : нафиг никому не нужен.
Секретить имеет смысл репозитарий исходников + багтрекер.
Основную ценность имеет история коммитов с обоснованием принятых решений.

вообще мы отвелекаемся. Не надо обсуждать загрузку по усб. Это обязательное требование.
мне понравились rom-less lpc18xx. Если бы не ужасные копуса применил бы. Даже цена устраивает.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Jul 29 2015, 18:27
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Цитата
Нормальный подход к делу - это гарантировать восстановление физически исправного изделия из любых состояний включая полностью чистую флэш силами пользователя без применения специального оборудования.

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


Теперь как это решается.

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

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


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

И всех делов. Уже давно выпускаем серийно устройство с обновлениями прошивки по езернет, в нашем формате, и пользователь что бы не сделал всегда может восстановить продукт без применения спец оборудования. Работает все на lpc1768, у которого нет заводского загрузчика езернет....
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 29 2015, 18:31
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (_3m @ Jul 29 2015, 21:05) *
Программ без ошибок не бывает. Во время обновления могут вырубить электричество. Юзер может быть идиоттом и не дождавшить завершения процесса нажмет ресет / выдернет шнурок / отключит питание.

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

Про восстановление - написал выше. Про "полностью чистую флешь" - дикакя глупость. Почему - тоже уже писал.
QUOTE
Как показала многолетняя практика голый бинарник прошивки он как неуловимый Джо : нафиг никому не нужен.

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

А чего ее обсуждать? Надо - взял и написал, хоть по USB, хоть по всем интерфейсам сразу. Проблема ровно нулевая и это Вы ее чего-то вдруг поминать как какую-то проблему стали.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 08:27
Рейтинг@Mail.ru


Страница сгенерированна за 0.01458 секунд с 7
ELECTRONIX ©2004-2016