Asmodey писал(а):Господа, что насчет кейл скажете?
Вполне. Он, правда, платный, но позволяет бесплатно собирать программы до 32К объемом. Если не увлекаться подключением мега-библиотек и программировать, используя CMSIS, хватает надолго. Да и таблетки от жадности никто не отменял...
У него, правда, есть некоторые проблемы с русским языком. В последних версиях это дело, вроде-бы, пофиксили, в Encode добавили возможность выбора Russian Windows 1251, но что-то там все равно не то. Ну, и оптимизирует он изредка не вполне адекватно... А так, работать можно.
Кто мешает тебе выдумать порох непромокаемый? (К. Прутков, мысль № 133)
Не интерфейс, а протокол. Т.к. все проблемы с доставкой пакета он берет на себя. Пользователю нужно лишь отправить и посмотреть ошибки, если возникнут.
И с этим протоколом очень удобно работать напрямую. Особенно если не нужно больше 8 байт за раз отсылать...
Ярослав555 писал(а):А в модбасе это 1 посылка. Всё быстро и оперативно.
Угу, угу. И сколько там служебной информации нафиг не нужной? Если необходимо много данных гонять, то самый простой вариант — тупо в лоб гонять их по RS-485, проверяя контрольную сумму.
Ярослав555 писал(а):покажите мне HMI панельку
WTF HMI?
Насчет выбора IDE крайне советую qt-creator! Я много чего перепробовал, долго на geany сидел, потом sublime пользовался. Но qt-creator реально удобен!
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда. Я на гитхабе, в ЖЖ
[uquote="afz",url="/forum/viewtopic.php?p=3702468#p3702468"]У него, правда, есть некоторые проблемы с русским языком[/uquote]
Да мне пока без разницы. Светодиодом поморгать, да с периферией разобраться. Лишь бы серьезных косяков и неожиданных особенностей не было. "32 килобайта хватит всем" Значит подойдет.
Последний раз редактировалось Asmodey Вт сен 17, 2019 17:08:18, всего редактировалось 2 раза.
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3702476#p3702476"]все проблемы с доставкой пакета он берет на себя[/uquote]
У CAN нет квитирования. Приемник может перезапросить пакет, если принял его с ошибкой, только в том случае, если правильно принял идентификатор пакета. Если же пакет никто не принял, передатчик об этом даже не узнает.
Так же, если один или несколько передатчиков забивают канал, то более низкоприоритетные передатчики вообще ничего передать не смогут.
Обе проблемы каждый обходит, как может, уже на более высоком уровне стека протоколов.
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3702476#p3702476"]Не интерфейс, а протокол. Т.к. все проблемы с доставкой пакета он берет на себя. Пользователю нужно лишь отправить и посмотреть ошибки, если возникнут.[/uquote]
И что он там берёт на себя? Только разрешение коллизий. Да и при чём тут это? В UART тоже есть старт-стоп и флаг ошибки если СТОП не найден - он тоже что-ль "протокол"?
Воспользуйтесь хоть гуглом и поищите "CAN интерфейс" и "CAN протокол". Тогда может поймёте...
[uquote="Asmodey",url="/forum/viewtopic.php?p=3702478#p3702478"][uquote="afz",url="/forum/viewtopic.php?p=3702468#p3702468"]У него, правда, есть некоторые проблемы с русским языком[/uquote]
Да мне пока без разницы. Светодиодом поморгать, да с периферией разобраться. Лишь бы серьезных косяков и неожиданных особенностей не было. "32 килобайта хватит всем" Значит подойдет.[/uquote]
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3702326#p3702326"]А невыровненный доступ к памяти никто не любит. Вот только буквально пару часов назад я словил на STM32F103 hardfault потому что пытался во flash 59-байтные структуры писать... Написал зачем-то pragma ((packed)), хотя надо было оставить просто как есть — для выравнивания на 4 байта.[/uquote]Я про не выровненный доступ в ОЗУ, а не при записи на флеш. Причем HardFault словить очень просто приводя один тип к другому.
Asmodey писал(а):Мне со стороны Keil показался довольно простым, а как на самом деле?
Попробуйте не смотря статьи в сети создать проект и чтобы он работал. Сами решите насколько прост кейл. Скажу что не самая простая IDE.
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3702180#p3702180"]Oxford, худшего дерьма, чем STM32F103 не сыскать!
![/uquote]
Отличные камни производительные и хорошая периферия. Плюс Cortex-M3 с атомарными LDREX/STREX
Добавлено after 2 hours 19 minutes 46 seconds:
[uquote="jcxz",url="/forum/viewtopic.php?p=3700449#p3700449"][uquote="Oxford",url="/forum/viewtopic.php?p=3700408#p3700408"]ST-Link работает с кортексами, C8051 не кортекс, нет не могет.[/uquote]
Значит уже не со всеми МК, которые знает Кейл. А J-Link - работает и с C8051 [/uquote]
С какими чипами 8051 он работает?
Инженер R@D
Telegram чат: https://t.me/radiowolf или в поиске приложения @radiowolf. Личка:@cncoxford
Мурик писал(а):Попробуйте не смотря статьи в сети создать проект и чтобы он работал. Сами решите насколько прост кейл. Скажу что не самая простая IDE.
В общем-то да, но я ему подскажу, если что. У меня хорошо получается...
WiseLord писал(а):Да, хорошие платы. Я такую на VET6 заказал
Я тоже, года 3 назад. А этих плат на ZET6 тогда, похоже, еще не было, я тогда искал 407-ю плату с максимальным числом ног, нашлась только с VET6. А так - да, похоже, платы одного производителя, и у меня впечатления от моей сугубо положительные...
Кто мешает тебе выдумать порох непромокаемый? (К. Прутков, мысль № 133)
[uquote="jcxz",url="/forum/viewtopic.php?p=3702698#p3702698"][uquote="Oxford",url="/forum/viewtopic.php?p=3702688#p3702688"]С какими чипами 8051 он работает?[/uquote] https://www.segger.com/products/debug-p ... nd-devices[/uquote]
Из 8051 только EFM8 поддерживает. Смысл об этом говорить, я понимаю что ты хотел поумничать . STM8 тоже не поддерживает.
Инженер R@D
Telegram чат: https://t.me/radiowolf или в поиске приложения @radiowolf. Личка:@cncoxford
[uquote="jcxz",url="/forum/viewtopic.php?p=3702506#p3702506"]Воспользуйтесь хоть гуглом и поищите "CAN интерфейс" и "CAN протокол". Тогда может поймёте...[/uquote]
Интерфейс — это, например, 485 (который, кстати, по сути и взят за основу транспортного уровня CAN), 232 и т.п. — т.е. то, что обеспечивает транспортный уровень! Поверх интерфейса идет низкоуровневый транспортный протокол. Байты ж не сами по себе группами по 8 с идентификаторами и всякими флагами по шине путешествуют!
А уж поверх транспортного протокола можно наваять что-нибудь свое: скажем, поверх CAN впихнуть дебильный CANopen. Или поверх 485 впихнуть треклятый модбас!
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда. Я на гитхабе, в ЖЖ
[uquote="Oxford",url="/forum/viewtopic.php?p=3702711#p3702711"]Из 8051 только EFM8 поддерживает. Смысл об этом говорить, я понимаю что ты хотел поумничать . STM8 тоже не поддерживает.[/uquote]Смысл в том, что J-Link поддерживает не только Cortex-M. А много чего, не только 8051.
Добавлено after 8 minutes 25 seconds:
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3702761#p3702761"]Интерфейс — это, например, 485[/uquote]Чё-то у вас какая-то каша в показаниях.. и там и там - "транспортный". Сами не запутались ещё?
"Поверх интерфейса" - сами не ощущаете абсурдности фразы? Не "поверх", а "через" интерфейс. Нет там "выше" и "ниже". Вложенность и уровни есть внутри иерархии протоколов.
Всё очень просто и легко запомнить: Интерфейс - это аппаратный компонент, протокол - программный. Вот и всё.
Вот это и есть - устоявшаяся и общепринятая терминология. Повторите несколько раз чтобы запомнить.
Можно конечно говорить о "протоколе обмена по шине CAN" при описании CAN-интерфейса (как части этого интерфейса!). Но для программы в МК CAN - это интерфейс. Т.е. - та дырка, через которую идёт общение. А "язык", на котором идёт общение - это протокол.
jcxz, у Вас какая-то странная семантика, сильно отличающаяся от общепринятой. Интерфейс - это совокупность программно-аппаратных средств, служащих для взаимодействия программ или иных компонентов ИС друг с другом. Тогда как протокол - это описание правил этого взаимодействия. Нижний уровень стека протоколов реализуется, как правило, аппаратно. Верхний - программно.
[uquote="jcxz",url="/forum/viewtopic.php?p=3702774#p3702774"]Интерфейс - это аппаратный компонент, протокол - программный. Вот и всё.[/uquote]
А вот и не всĒ!
Неправильно.
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда. Я на гитхабе, в ЖЖ
[uquote="ПростоНуб",url="/forum/viewtopic.php?p=3702789#p3702789"]jcxz, у Вас какая-то странная семантика, сильно отличающаяся от общепринятой.[/uquote]Ну да, а ещё вспоминается чья-то семантика именования динамической памяти, также "сильно отличающаяся от общепринятой".