-
- Долбаный HAL!, я бы даже сказал Fuckен HAL! не доверяйте примерам, а лучше не связывайтесь с Халом. Размотал глюк, дело было не в
бобинепериферии, а в халовском механизме захвата устройств. Авторы хала подразумевали, что объекты периферии IBAH(20 знак., 20.10.2017 19:09 - 19:19)- я просто проверяю и вычеркиваю очередные HAL-овские примеры из своей жизни. На сегодня у меня с DMA по HAL-у работает только АЦП. Причем очень надежно. UART по HAL-у у меня только по прерываниям. Тем боле что размер посылок у меня всегда разный и Лагунов(86 знак., 21.10.2017 08:54)
- HAL - это каноничный пример как не надо писать библиотеки абстракции от железа. Редкостное говнище, если есть возможность заменить ее на LLL - делать сразу. - lloyd(20.10.2017 19:34)
- покажи кусок кода - 0men(20.10.2017 19:25)
- Каждый объект(структура) Хала содержит поле State, при статическом объявлении все поля обнуляются. Значению 0 для переменной State соответствует значение STATE_RESET. Инициализация периферии проходит. При динамическом объявлении (как сделал я, IBAH(1273 знак., 20.10.2017 19:51)
- Да уж... И ни одного коммента, что оне хотели сделать. do{...}while(0), это как левой ногой чесать правое ухо. - _basile(20.10.2017 21:02, )
- do { } while(0) - это легальный способ создать макросом вложенный блок кода без сайд-эффектов и бомб. - lloyd(20.10.2017 21:03)
- Зато __HANDLE__ искорёжили, бесы. Кому нужно 100500 подчёркиваний? - SciFi(20.10.2017 21:32)
- Я не в курсе, какой-такой Саид-эффект. И вообще, макросами особо не увлекаюсь. Код должен быть четким, ясным и доступен для понимания обезьяне с будуна. И снабжен комментами, особенно в циклах. - _basile(20.10.2017 21:29, )
- Фигасе у тебя циклы. Ты воздержись от злоупотребления жидкими и прочими веществами перед написанием этих циклов - и жизнь наладится :-) - SciFi(20.10.2017 22:17)
- Мне пох. Я вообще терпеть не могу эти, сперва do, потом while. У меня сразу while{...}. При этом употребление веществ работе не мешает. И базар от меня в первую очередь шел о комментах. Потому, как в первую очередь базар о стандартах на _basile(91 знак., 21.10.2017 13:56, )
- Фигасе у тебя циклы. Ты воздержись от злоупотребления жидкими и прочими веществами перед написанием этих циклов - и жизнь наладится :-) - SciFi(20.10.2017 22:17)
- do { } while(0) - это легальный способ создать макросом вложенный блок кода без сайд-эффектов и бомб. - lloyd(20.10.2017 21:03)
- Толку делать динамические объекты HAL (я бы наоборот их сделал константными, да быдлокод, генерируемый кубом, этого не дает). Когда вы придете к обработчикам прерываний, вы все равно напоритесь на необходимости статически подхватывать объект lloyd(11 знак., 20.10.2017 19:56)
- Из своего восьмибитного детства хорошо помню "Никаких вызовом функций из обработчика прерывания", тем более Халовских. В прерывании только в регистры, только хардкор. Я использую Хал только для инициализации, удобно и не надо читать много аглицких IBAH(21 знак., 20.10.2017 20:15)
- в HAL-овских прерываниях вызов функций у меня массово, но но только в прерываниях от таймеров и EXTI. - Лагунов(21.10.2017 08:59)
- HAL - это типа, как драйвер под Виндой. Тут играть, тут не играть, а тут я рыбу заворачивал. Я уж лучше буду аглицкие букофки из даташита и мануала читать, чем использовать недокументированный код горячих индусских парней. - _basile(20.10.2017 21:18, )
- намедни мне пришлось заняться камасутрой с этим вашим халом, ибо в SPL для 373 камня нашел баг - SDADC c USB одновременно не работает. саппорт сказал - юзай хал, холоп. пару дней блевал за горизонт. но это каэшн, пздц. - danuna(20.10.2017 20:23)
- Какой-то оверкилл, честное слово. Не такие уж сложные конфигурационные регистры у стандартных UART/I2C/SPI и им подобные, единственный реальный гемор - рассчет тактовой частоты, но это так уж и быть, можно стянуть из STM32 Low Level Library. - lloyd(20.10.2017 20:18)
- Ну например HAL_GPIO_Init() мне очень понравилась. Но теперь только LLL - IBAH(20.10.2017 20:27)
- Из своего восьмибитного детства хорошо помню "Никаких вызовом функций из обработчика прерывания", тем более Халовских. В прерывании только в регистры, только хардкор. Я использую Хал только для инициализации, удобно и не надо читать много аглицких IBAH(21 знак., 20.10.2017 20:15)
- Да уж... И ни одного коммента, что оне хотели сделать. do{...}while(0), это как левой ногой чесать правое ухо. - _basile(20.10.2017 21:02, )
- Каждый объект(структура) Хала содержит поле State, при статическом объявлении все поля обнуляются. Значению 0 для переменной State соответствует значение STATE_RESET. Инициализация периферии проходит. При динамическом объявлении (как сделал я, IBAH(1273 знак., 20.10.2017 19:51)
- так рассказывай :) - 0men(20.10.2017 19:18)
- Долбаный HAL!, я бы даже сказал Fuckен HAL! не доверяйте примерам, а лучше не связывайтесь с Халом. Размотал глюк, дело было не в