-
- А это применимо к RISC-V? Где границы? Мб накладные расходы удвоят
требования? - General(Вчера, 09:33)
- Я бы попробовал такие условия разработчикам поставить: Nikolay_Po(2258 знак., Вчера, 17:48)
- HAL это просто результат проектирования "сверху вниз" (которое типа
догма программирования). По нормальному, весь прикладной код и так
от железа независим и опирается на библиотеки, в которых "замкнуто"
все аппаратно-зависимое. Cкpипaч(252 знак., Вчера, 10:34)
- А какие-то писаные стандарты есть? Смысл понятен, писать техзадание
не хочется. Хочется предъявить готовый документ, продуманный и
непротиворечивый. - General(Вчера, 10:37)
- Проблема в том, что расположение и количество границ между слоями
ПО зависит от функциональности ПО и типов контроллеров. Мы сделали
универсальный проект для CM4 80 МГц и CM0 24 МГц, но без костылей
не обошлось. В результате свернули нахрен, это можно сопровождать
только за большие деньги. - VLLV(Вчера, 13:47)
- Ну хоть намекни -в чем костыли, приведи пример. Я говорю про
аналогичные контроллеры с одной архитектурой и составом периферии.
Понятно что есть отличия в реализации периферии, так поэтому HAL
для каждого свой. - General(Вчера, 13:54)
- Не надо делать HAL чрезмерно низкоуровневым, а учитывать модель
использования. Боюсь, что любой готовый стандарт (if any) будет
развесистой клюквой, которой на практике невозможно будет
соответствовать полностью, но зато грабли из каждого угла будут
выпадать. Плохой пример - STM HAL: 100500 флажков на каждый чих, но
при этом полной совместимости все равно нет даже между разными
камнями одного производителя. Короче говоря, самое главное
правильно установить границу между LightElf(227 знак., Вчера, 19:31 - 19:48)
- Без двух-, а то и трёх-уровневого HAL не обойтись - 1) low level,
2) типа STM HAL, и 3) все равно что-то может пролезть на уровень
приложения. Но мы не помогли Генералу в части формулирования
требований :) - VLLV(Вчера, 19:54)
- Рад бы, но чеканных формулировок не имею. Все как-то по наитию сложилось: переползал с MC9S12NE64 на LM3S6965 и MCF52235, рихтовал и код и API на ходу, в дальнейшем переход сначала на STM32 и потом на CH579 прошел на удивление гладко. То есть поипаться в низкоуровневой части пришлось, но верхний уровень переехал как влитой. Буквально в пятницу переделал одно давнее поделие с LM3S6965 на CH579, так оно просто пересобралось без криков и стонов. Там конечно код примитивный, но LightElf(18 знак., Вчера, 21:19)
- Без двух-, а то и трёх-уровневого HAL не обойтись - 1) low level,
2) типа STM HAL, и 3) все равно что-то может пролезть на уровень
приложения. Но мы не помогли Генералу в части формулирования
требований :) - VLLV(Вчера, 19:54)
- 1. Банальная поддержка УАРТ для RS485. В одном контроллере есть
прерывание по пустому регистру сдвига, в другом нет, нужно таймер
задействовать. 2. Переход в энергосберегающий режим одному
контроллеру пофиг, что на входе пробуждения, он на фронт реагирует,
а другой не заснёт, если на входе пробуждения не тот уровень. Тут
не просто ПО, тут еще и схемотехника завязана. А в схемотехнике
банальный детектор питания, пока сохранялись, он опять дернулся и
прибор не уснул, или не VLLV(296 знак., Вчера, 14:32)
- Поискал по проекту отличия 5. IAP. 6. наличие бэкапных регистров в RTC 7. Влияние быстродействия. - VLLV(Вчера, 15:13)
- Спасибо, так понятно - General(Вчера, 15:09)
- Не надо делать HAL чрезмерно низкоуровневым, а учитывать модель
использования. Боюсь, что любой готовый стандарт (if any) будет
развесистой клюквой, которой на практике невозможно будет
соответствовать полностью, но зато грабли из каждого угла будут
выпадать. Плохой пример - STM HAL: 100500 флажков на каждый чих, но
при этом полной совместимости все равно нет даже между разными
камнями одного производителя. Короче говоря, самое главное
правильно установить границу между LightElf(227 знак., Вчера, 19:31 - 19:48)
- Ну хоть намекни -в чем костыли, приведи пример. Я говорю про
аналогичные контроллеры с одной архитектурой и составом периферии.
Понятно что есть отличия в реализации периферии, так поэтому HAL
для каждого свой. - General(Вчера, 13:54)
- Насколько я понимаю, библиотеки ARM`ов и есть такого рода стандарт? - Cкpипaч(Вчера, 10:41)
- Что значит "библиотеки армов"? Ни разу не встречал таких .. - Eddy_Em(Вчера, 12:20)
- Для этого нужно с гор спустится и сьездить в Город :-Р Cкpипaч(687 знак., Вчера, 12:23)
- SPL еще забыли, в том или ином виде он есть для многих МК AlexG(28 знак., Вчера, 13:48)
- И кто этим дерьмом пользуется? Ардуинщики разве что.. - Eddy_Em(Вчера, 12:52)
- Конечно! Все остальные пишут на bash :o) - Cкpипaч(Вчера, 12:55)
- Даже Эпштейн писал на баше. - SciFi(Вчера, 13:12)
- Я к тому, что свое, даже кривое, всегда лучше убогого калокуба! - Eddy_Em(Вчера, 12:59)
- Пожизненное трудоустройство? - без меня. - Cкpипaч(Вчера, 13:10)
- Код должен быть таким, чтобы даже через 10 лет его можно было
понять и добавить новых фич. А не калокуб или SPL. Eddy_Em(336 знак., Вчера, 16:23)
- ...программист. Должен может быть только программист. Не код. И то, только в рамках оплаченного рабочего времени. Cкpипaч(56 знак., Вчера, 17:06)
- Код должен быть таким, чтобы даже через 10 лет его можно было
понять и добавить новых фич. А не калокуб или SPL. Eddy_Em(336 знак., Вчера, 16:23)
- Пожизненное трудоустройство? - без меня. - Cкpипaч(Вчера, 13:10)
- Конечно! Все остальные пишут на bash :o) - Cкpипaч(Вчера, 12:55)
- Про CMSIS ни разу не слышали? О.о - reZident(Вчера, 12:22)
- Применимо к RISC-V? - General(Вчера, 13:30)
- Это - не библиотека, а базовый набор инклюдов. - Eddy_Em(Вчера, 12:52)
- Для этого нужно с гор спустится и сьездить в Город :-Р Cкpипaч(687 знак., Вчера, 12:23)
- Ну до библиотек двухъядерных RISC-V похоже пока не дошло - General(Вчера, 10:50)
- У японцев есть TRON/ITRON/uITRON. Но они инопланетяне, у них даже
отдельный ритуал, как чихать в неформальном стиле, добиваясь
единения с природой, есть. - Cкpипaч(Вчера, 11:02)
- Хех. Ардуино! Там вроде бы есть некоторая степень совместимости
между разными МК. А если серьёзно, нужно как-то сузить рамки, КМК.
Совсем конкретно было бы "вот есть МК А, Б, В и Г" (пусть какие-то
из них пока на бумаге, предварительный даташит), сделать прошивку
для А и Б с прицелом на В и Г. - SciFi(Вчера, 11:05)
- Фраза "с прицелом" плохо ложиться в текст договора. Cкpипaч(289 знак., Вчера, 11:12)
- У мну не договор а как бы внутреннее соглашение о принципах. - General(Вчера, 11:17)
- обычно разделяю системный (дрова и прочий низ) слой и прикладной. в прикладном, например, в тексте нет работы с GPIO - из системного торчат функциональные устройства - не в пин 1 порта Б записать 0, а ЖКИ.подсветка.включить. время только в реальных единицах измерения - напрример, через обёртки IO_Time_mS(100), Core_Time_uS(10). Никаких USART в приложении - Serial-ы с DCB, побайтовым и/или пакетным обменом, над которыми опять же функциональные устройства в своих модулях. и т.д Vit(108 знак., Вчера, 12:21)
- Тогда тем более. Полезная штука, иногда читать свой собственный код
:) - Cкpипaч(Вчера, 11:19)
- Речь о координации коллективной работы, то есть код как правило чужой. - General(Вчера, 12:15)
- Глубоко убежден что для "коллективной работы" нужен администратор.
Хотябы как "играющий тренер", но применяющий именно
административные приемы, а не программистские. Модули,
документирование, код тестов, перекрестный code review и т.п. - Cкpипaч(Вчера, 14:57)
- От меня ушел молодой программист и одной из претензий было, что я недостаточно строю. - VLLV(Вчера, 18:06)
- Согласен. - General(Вчера, 15:10)
- Глубоко убежден что для "коллективной работы" нужен администратор.
Хотябы как "играющий тренер", но применяющий именно
административные приемы, а не программистские. Модули,
документирование, код тестов, перекрестный code review и т.п. - Cкpипaч(Вчера, 14:57)
- Речь о координации коллективной работы, то есть код как правило чужой. - General(Вчера, 12:15)
- У мну не договор а как бы внутреннее соглашение о принципах. - General(Вчера, 11:17)
- Фраза "с прицелом" плохо ложиться в текст договора. Cкpипaч(289 знак., Вчера, 11:12)
- Хех. Ардуино! Там вроде бы есть некоторая степень совместимости
между разными МК. А если серьёзно, нужно как-то сузить рамки, КМК.
Совсем конкретно было бы "вот есть МК А, Б, В и Г" (пусть какие-то
из них пока на бумаге, предварительный даташит), сделать прошивку
для А и Б с прицелом на В и Г. - SciFi(Вчера, 11:05)
- Такой подход, лично мне кажется идиотизмом. Резать нужно "выше", не изобретать "пустые абстракции". Cкpипaч(191 знак., Вчера, 10:54)
- У японцев есть TRON/ITRON/uITRON. Но они инопланетяне, у них даже
отдельный ритуал, как чихать в неформальном стиле, добиваясь
единения с природой, есть. - Cкpипaч(Вчера, 11:02)
- Что значит "библиотеки армов"? Ни разу не встречал таких .. - Eddy_Em(Вчера, 12:20)
- Стандарты мне неизвестны. Видел проекты, в которых HAL предоставлялся "заказчиком" и в ТЗ было прописано что все и любые обращения к железу должны выполнятся только через него. - Cкpипaч(Вчера, 10:40)
- Проблема в том, что расположение и количество границ между слоями
ПО зависит от функциональности ПО и типов контроллеров. Мы сделали
универсальный проект для CM4 80 МГц и CM0 24 МГц, но без костылей
не обошлось. В результате свернули нахрен, это можно сопровождать
только за большие деньги. - VLLV(Вчера, 13:47)
- А какие-то писаные стандарты есть? Смысл понятен, писать техзадание
не хочется. Хочется предъявить готовый документ, продуманный и
непротиворечивый. - General(Вчера, 10:37)
- А это применимо к RISC-V? Где границы? Мб накладные расходы удвоят
требования? - General(Вчера, 09:33)