AlexandrY 3 20 января, 2019 Опубликовано 20 января, 2019 · Жалоба On 1/18/2019 at 10:58 PM, Forger said: 200...1000 кб. Выходит, что я - неправильный программист, и делаю неправильный код, коли делаю все наоборот - изолирую чужой код своими т. н. "обертками", чтобы полностью отвязаться от этого чужого кода. У всех - свой подход. Мне лично очень удобен мой подход, который я тут описывал, для меня он и прост и понятен. У MQX ядро - 5 мегабатй, файловая - 500 кБ, стек TCP - 3.5 мегабайта., shell - 500 КБ, USB - 1 мегабайт. Вы понимаете насколько мала ваша библиотека? Изоляция чужого кода может прийти в голову только если этого чужого кода очень мало. Сколько не анализирую большие и полезные проект на github все используют сторонние утилиты для преобразования исходников. Везде есть в том или ином виде метаязыки, т.е. языки управляющие преобразованием других языков. Никто не парится с версиями библиотек и не полагается на IDE. Посмотрите на такой известный проект NuttX, который собран как лоскутное одеяло из кучи чужих кусков, там мужику в голову не приходит че-то изолировать. Он берет и юзает как есть, без всяких проблем. Интересно только из каких источников вы черпаете свои перлы, что это за проекты? Должны же быть у вас примеры для подражания. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AVI-crak 0 20 января, 2019 Опубликовано 20 января, 2019 · Жалоба Кхм, все ide имеют несколько вариантов сборки проекта, в виде готовых кнопок. Собрать готовое, собрать изменённое, пере_собрать проект полностью, и остановить зависший процесс сборки. Разница в скорости сборки просто громадная. Если части проекта уже были собраны и не изменены - то повторная сборка будет моментальной. Это свойство ide - полностью аннигилирует потребность в ручных библиотеках, вообще полностью. Как можно пропустить эти кнопки? они-же на самом виду. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Forger 26 20 января, 2019 Опубликовано 20 января, 2019 · Жалоба 7 hours ago, AlexandrY said: У MQX ядро - 5 мегабатй, файловая - 500 кБ, стек TCP - 3.5 мегабайта., shell - 500 КБ, USB - 1 мегабайт. Я не учитываю размер внешних готовых стеков. Только ОСь и драйверы на периферию под конкретное семейство. Чужие "стеки" - отдельно. Пока отдельно. Quote Вы понимаете насколько мала ваша библиотека? А вы понимаете, что вот таким странным образом пытаетесь "меряться пиписьками"? 7 hours ago, AVI-crak said: Как можно пропустить эти кнопки? они-же на самом виду. Не стоит считать людей полными идиотами лишь потому, что вам так показалось, тогда и вас таковым считать не будут : Библиотеки собираю для другой цели, тут уже озвучивал. Влом повторяться. Попробую другими словами: "изолирую" чужой С-код своими С++ "обертками". Чужой код оставляю без изменений, не перепиливаю. Мне лично так удобнее. Повторюсь: мне лично. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 18 февраля, 2019 Опубликовано 18 февраля, 2019 · Жалоба Ковыряюсь "в тряпках" по HAL http://www.cyberforum.ru/post13177999.html нахожу от _SayHello "По счастливой случайности эти поля проинициализировались не нулями, а рандомным мусором. И по итогу испортили значения в регистрах USART. Проинициализировав эти поля нулями все заработало как надо." ...."индусы" свирепствуют и позволяют не утруждать себя корректностью полей инициализации. Срамота... Кстати, почему в книге "Mastering STM32" (2016г про HAL) нет разъяснений о половине описаний в HAL под обобщенным названием LL_**** ? (Например LL_AHB1_GRP1_EnableClock, LL_IWDG_Enable, LL_GPIO_SetPinMode...). Что прикрывает их появление? Мотивы столь сильны? Просмотрел Firmware(F429) на этот предмет (применение LL_XXXX). Не нашел, где такое востребовано? Может кто разъяснит? Нафига оно нужно? Кажется нашел. В "Overview of Low Layer APIs and naming rules" как раз и показано, что ...Инициализирует периферийные основные функции в соответствии с указанными параметрами в PPP_InitStruct. Или Заполняет каждый элемент PPP_InitStruct его значение по умолчанию. ...и даже _DeInit Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 18 февраля, 2019 Опубликовано 18 февраля, 2019 · Жалоба Если не путаю, InitStruct сначала создают и она забивается нулями, а уже потом в нужные поля заносятся требуемые значения. В общем, автор сказочный ... лентяй, чего и не скрывает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 183 18 февраля, 2019 Опубликовано 18 февраля, 2019 · Жалоба Достаточно ручками заполнить все поля структуры и никаких проблем не возникнет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 61 18 февраля, 2019 Опубликовано 18 февраля, 2019 · Жалоба А если используется Си++, то поля структур можно инициализировать в конструкторе наиболее типичными значениями Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 183 19 февраля, 2019 Опубликовано 19 февраля, 2019 · Жалоба 15 часов назад, haker_fox сказал: А если используется Си++, то поля структур можно инициализировать в конструкторе наиболее типичными значениями Открыл первый попавшийся SPL void GPIO_StructInit(GPIO_InitTypeDef* GPIO_InitStruct) { /* Reset GPIO init structure parameters values */ GPIO_InitStruct->GPIO_Pin = GPIO_Pin_All; GPIO_InitStruct->GPIO_Mode = GPIO_Mode_IN; GPIO_InitStruct->GPIO_Speed = GPIO_Speed_Level_2; GPIO_InitStruct->GPIO_OType = GPIO_OType_PP; GPIO_InitStruct->GPIO_PuPd = GPIO_PuPd_NOPULL; } Делает то же, что делал бы конструктор. Но лучше руками заполнить самому все, никаких "по умолчанию". Это "по умолчанию" потом приведет к неочевидным казусам а-ля "пару минут назад все работало, а щас нет" А лучше да, драйверы нижнего уровня собственноручно писать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 18 марта, 2019 Опубликовано 18 марта, 2019 · Жалоба On 1/9/2019 at 8:16 PM, Arlleex said: https://www.st.com/en/embedded-software/stm32-standard-peripheral-libraries.html?querycriteria=productId=LN1939 И что характерно, для H7\F7 такой библиотеки нет! То-то слабо покупают Дискавери для топовой модели NUCLEO-H743ZIОтладочный комплекс NUCLEOОтладочная плата линейки STM32 Nucleo-144 на основе микроконтроллера STM32H743ZIT6 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 61 18 марта, 2019 Опубликовано 18 марта, 2019 · Жалоба 12 minutes ago, Мур said: То-то слабо покупают Дискавери для топовой модели Просто пока непонятно, куда этот M7 можно прикрутить? Для решения каких задач? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 183 18 марта, 2019 Опубликовано 18 марта, 2019 · Жалоба Только что, Мур сказал: И что характерно, для H7 такой библиотеки нет! STMicroelectronics активно продвигает свои HAL/Cube, и с недавних пор отказался от разработки SPL для новых линеек МК. Отсюда и потух ажиотаж. Но для регистровых гурманов, ровным счетом, не поменялось ничего - карта регистров открыта. Только что, haker_fox сказал: Просто пока непонятно, куда этот M7 можно прикрутить? Для решения каких задач? Как каких? Как раз тех, где 400МГц процессора уже будет, в принципе, достаточно для калокуберского мигания светодиодом Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 61 18 марта, 2019 Опубликовано 18 марта, 2019 · Жалоба 6 minutes ago, Arlleex said: достаточно для калокуберского мигания светодиодом нас не моймут))) А вообще, стирается грань между взрослыми МК (с MMU и возможностью запуска win/lin/etc) и маленькими МК с MPU. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MasterElectric 0 18 марта, 2019 Опубликовано 18 марта, 2019 · Жалоба 4 hours ago, Мур said: И что характерно, для H7\F7 такой библиотеки нет! То-то слабо покупают Дискавери для топовой модели Совсем не топовый он, пока что топовый H753. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 21 марта, 2019 Опубликовано 21 марта, 2019 · Жалоба On 3/18/2019 at 1:31 PM, MasterElectric said: Совсем не топовый он, пока что топовый H753. Речь о семействе как таковом... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 17 декабря, 2019 Опубликовано 17 декабря, 2019 · Жалоба https://blog.radiotech.kz/category/perevod/ случайно обнаружил.. https://blog.radiotech.kz/perevod/adc-perevod-iz-knigi-mastering-stm32/ отсюда зацепил Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться