Search the Community
Showing results for tags 'keil'.
-
Доброго времени суток! У меня появилось два вопроса, но по сути своей они относительно близки, опубликую их вместе. 1. Для целей обучения хотел написать программу на ассемблере, но только чтобы в процедуру __main программа заходила после инициализации (т.е. после startup/system). Попытался добавить в свой main.s эти файлы с помощью INCLUDE/GET - выдаёт ошибки (изображение 1). Подскажите, как решить вопрос? 2. В проекте main.cpp не видит исполняемые файлы при компиляции, судя по ошибке (рисунок 2). Делал следующее: - Пути проверял на наличие кириллицы, сейчас там только пробелы - не помогает, если убрать и их - не помогает - Добавлял директиву USE_STDPERIPH_DRIVER, указывал вручную пути к библиотекам - не помогает. - Пробовал добавлять в программу все библиотеки вручную в main.cpp - не помогает - Запускал из разных каталогов - не помогает Все библиотеки из SPL, которая лежит там, где должна лежать после установки, среда их прекрасно видит, отображает в интерфейсе, позволяет открыть и просмотреть. Объектные o. файлы после компиляции в папке проекта есть. В чем же дело? Заранее благодарен за ответы!
-
Хочу иметь в конце hex/bin файла значение контрольной суммы для всего, что находится до неё. Без использования фиксированных адресов, т.е. значение должно располагаться в конце автоматически. Есть статья примерно как это сделать для Keil: How to calculate CRC value in IAR and KEIL Настроил, работает, но не совсем так, как мне надо. Компоновщик располагает значение только в конце всего кода, а мне нужно, чтобы в конце кода и вообще всех других возможных секций. К примеру, инициализация данных в ОЗУ находится в hex/bin файле в более старших адресах. Вот пример из map-файла: 0x00003d00 0x00003d00 0x00000004 Data RO 521 CHECKSUM checksum.o Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x00003d04, Size: 0x00002900, Max: 0x00008000, ABSOLUTE, COMPRESSED[0x00000054]) Exec Addr Load Addr Size Type Attr Idx E Section Name Object 0x20000000 COMPRESSED 0x00000018 Data RW 9 .data main.o Как видно, CHEKSUM идёт последней секцией, но Load base следующей находится дальше (0x00003d04). Я знаю как такое можно сделать в скриптах компоновщика для IAR и GCC, но не пойму как сделать то же для SCT-файлов Keil'а. Вот пример скрипта компоновщика: ; ************************************************************* ; *** Scatter-Loading Description File generated by uVision *** ; ************************************************************* LR_IROM1 0x00000000 0x00020000 { ; load region size_region ER_IROM1 0x00000000 0x00020000 { ; load address = execution address *.o (RESET, +First) *(InRoot$$Sections) .ANY (+RO) checksum.o (CHECKSUM, +Last) } RW_IRAM1 0x20000000 0x00008000 { ; RW data .ANY (+RW +ZI) } RW_IRAM2 0x20100000 0x00004000 { *.o (EXECUTABLE_MEMORY_SECTION) .ANY (+RW +ZI) ; *(RAM2) } } Посоветуйте, можно ли как-то поправить sct файл для этого.
-
stm32 Проблема с записью данных с АЦП на SD карту при помощи FATFS
PadenieShtanov posted a topic in STM
Приветствую, столкнулся с проблемой при записи данных с АЦП, посредством библиотеки FATFS на SD карту. Данные с АЦП формируются в массив, после чего последовательностью функций f_mount, f_open, f_write записываются на SD карту, однако иногда функция f_write возвращает результат FR_INVALID_OBJECT и запись прерывается. Копнув глубже увидел что такой статус появляется из за того, что функция HAL_SD_GetCardState возвращает странный статус HAL_SD_CARD_SENDING, который описан как sd card is sending operation information. Большего описания нигде не нашел. Проблема исчезает посредством увеличения делителя частоты тактирования SDIO, что в свою очередь значительно режет скорость передачи созданного файла с данными на пк посредством USB HS, с чем вроде можно и свыкнуться, но хотелось бы разобраться в чём причина. Возможно кто-то сталкивался с подобной проблемой и может помочь. -
Добрый день! Нужна помощь! Есть проект на отладочной плате nuclei-h743 реализует tcp сервер на lwip, полностью рабочий, нареканий нет. Написал идентичный проект в cubeide, при котором контроллер не подключается к сети, а по определяет как неопознанную сеть... подскажите, пожалуйста, что с этим делать? Куда копать?
-
Разблокировка FreeRTOS для 1986ВЕ1T и 1986ВЕ3T в Keil 5.x
l11acmep posted a topic in ARM, 32bit
Привет всем страждущим комфорта в программировании. Всем известно, что FreeRTOS отлично компилируется под отечественные 1986ВЕ1Т и 1986ВЕ3Т. Но немецкая пунктуальность товарищей из ARM не позволяет простым юзерам из России так вольготно конфигурировать свои проекты, да и с нашей отечкой они скорее всего слабо знакомы. Поэтому если вы используете в своих проектах вышеуказанные процы, то для них вы не сможете выбрать FreeRTOS напрямую в Manage Run-Time Environment. Он вам просто не даст это сделать поскольку... ну это же Cortex-M1. А FreeRTOS нативно понимает только или Cortex-M0 или M3, ну и там остальные по списку к делу не относящиеся. Хмм... Конечно подключение FreeRTOS к проекту вручную не требует особо много телодвижений. Достаточно скопировать пару папок и настроить инклуды. Но, как известно, программисты - самые ленивые существа. Иногда хочется просто поставить галочку для FreeRTOS как это описано тут для 1986ВЕ9x. Вот с этой целью я для себя подкорректировал конфигурационный файл пакета Keil. И теперь он стал узнавать наши 1986ВЕ1Т и 1986ВЕ3Т и даёт конфигурировать FreeRTOS как обычно. Это очень удобно особенно если вам приходится создавать много мелких пробных проектов с FreeRTOS. Файл прилагаю во вложении. Может кому и пригодится. Для того чтобы им воспользоваться нужно в папке установки библиотек, по умолчанию это C:\Users\$USER\AppData\Local\Arm\Packs\ARM\CMSIS-FreeRTOS\10.3.1, сделать снять режим "Только для чтения" с файла ARM.CMSIS-FreeRTOS.pdsc. Потом переименовать его в ARM.CMSIS-FreeRTOS.pdsc.bak. Так мы сделали резервную копию. (Всегда делайте резервную копию всего что изменяете ) Затем копируете приложенный файл в указанную папку. И перезапускаете Keil. Теперь у вас есть FreeRTOS для 1986ВЕ1Т и 1986ВЕ3Т. PS: Работает для последней на данный момент версии FreeRTOS 10.3.1 в Keil 5.31. Файл даётся на правах "AS IS". Ответственность на использующем. ARM.CMSIS-FreeRTOS.pdsc -
из контроллера нужно выводить страничку html. очень хочется хранить ее отдельным файлом и загружать в константу для использования в KEIL. ниже содержимое файла init.html, которое я хочу увидеть в константе. как это сделать? контроллер stm32
-
добрый вечер, не знаю с чего начать создание проекта STM32F401 на ассемблере. Необходимо реализовать функцию матлогики Y=(!A)*C+(!B)*(!C)+ A*(!C) , где в качестве выходного сигнала выступает сигнал Y (светодиод) и входныесигналы А, В, С (подключаемые кнопки )
-
Инженер-программист микроконтроллеров (Москва)
e.karpenko posted a topic in Предлагаю работу
Немного о нас: Десятки лет мы разрабатываем, производим и поставляем заказчикам-автозаводам автомобильные электронные блоки многомиллионными партиями. Мы предлагаем Вам присоединиться к нашей команде высококвалифицированных разработчиков. У Вас будет возможность участвовать в крупных проектах по разработке встроенного в микроконтроллеры ПО с повышенными требованиями к надежности и безопасности. На данной позиции у Вас будут все возможности научиться писать высококачественный встроенный софт. Вашей личной профессиональной гордостью может стать осознание того, что строчками Вашего кода промышленного качества ежедневно пользуются десятки миллионов водителей. От Вас же мы ждем приемлемый уровень образования, высокий уровень когнитивных способностей, развитую техническую эрудицию, фанатичную заинтересованность и усидчивость. НПП "ИТЭЛМА" - это финансово стабильный научно-промышленный холдинг с эффективной системой управления, значительными инженерными и техническими ресурсами. НПП "ИТЭЛМА" объединяет ряд предприятий, специализирующихся на производстве широкой номенклатуры автомобильных компонентов. Каждое из этих предприятий – это современное производство, отвечающее самым строгим требованиям международных стандартов качества выпускаемой продукции. Наши предприятия по производству изделий для автомобильной промышленности работают по международному стандарту качества ISO IS 16949. Полная занятость, полный день Обязанности: · Проектировать, реализовывать и отлаживать системные программные модули встроенного ПО для микроконтроллеров; · Разрабатывать модульные тесты; · Составлять документацию на системные программные модули; · Сопровождать, проводить рефакторинг и реинжиниринг системных программных модулей. Все вышеперечисленное относится к сфере автомобильной электроники. Требования: · Обязательно: o Хорошее высшее техническое или физико-математическое образование; o Алгоритмический склад ума; o Отличное знание языка программирования Си; o Умение создавать надежный переносимый легко модифицируемый и читаемый программный код; o Английский технический. · Желательно: o Опыт разработки встроенного ПО для микроконтроллеров; o Опыт работы с различной периферией микроконтроллеров, коммуникационными интерфейсами, протоколами передачи данных; o Опыт работы с микроконтроллерами семейств Infineon XC2000, STM, SPC56, TI MSP430; o Опыт разработки драйверов устройств; o Понимание ассемблера; o Понимание цифровой и аналоговой схемотехники; o Умение работать с измерительными приборами. · Будет плюсом: o Опыт программирования под ОС реального времени и опыт отладки программ, выполняемых в режиме реального времени; o Умение работать с системами контроля версий и в системах управления проектами. Условия: · Современное радиоэлектронное производство · График 5/2 с 07.00..11.00 до 15.30..19.30, сб., вс.- выходной · Компенсация за питание · Своевременная выплата заработной платы 2 раза в месяц · Оплачиваемый отпуск 28 календарных дней · Оплачиваемые командировки (менее 1 раза в 3 месяца) · Бесплатная отапливаемая парковка · м. Нагатинская, бизнес-центр Ньютон Плаза · Модный офис класса А