1. В сообществе нашего форума Вконтакте создан раздел по продаже электронных компонентов.
    Каждый может продать в нем свои залежавшиеся детали. Подробности здесь.

Решено Keil MDK5 и STM32

Тема в разделе "Средства разработки для AVR/PIC/ARM/ПЛИС", создана пользователем UL7AAjr, 15 ноя 2014.

  1. UL7AAjr

    UL7AAjr В доску свой

    Сообщения:
    1.915
    Симпатии:
    317
    Род занятий:
    инженер-программист
    Адрес:
    Алма-Ата
    Попытка с "нуля" заставить Keil uVision5 сделать код для STM32F103.

    Установил KEIL uVision5

    При попытке создать новый проект - список устройств почти пуст (одни ARMxx). Получилось добавить устройство через меню Project | Manage | Pack installer. Добавил STM32F103. При создании нового проекта МК появился.

    Идем дальше.

    Создаю новый проект, выбираю МК STMF103C6, в появившемся окне предлагается выбор модулей и периферии. Ничего не трогаю, просто создаю проект и добавляю файл main.c. Не компилится, выглядит все вот так.


    Untitled-3.jpg

    Понятно, что нужно было что-то выбрать в диалоге "Run time environment".


    Это значит первая попытка. Идем дальше (следующий пост)
     
    : stm32, keil
  2. UL7AAjr

    UL7AAjr В доску свой

    Сообщения:
    1.915
    Симпатии:
    317
    Род занятий:
    инженер-программист
    Адрес:
    Алма-Ата
    Вторая попытка. Создаю новый проект, выбираю МК и в диалоге "Run time environment" включаю пару галок, насколько понимаю, это связано с параметрами инициализации.
    Untitled-4.jpg

    Добавляю main.c. Компиляция идет, теперь это выглядит вот так:
    Untitled-5.jpg

    Пока полет нормальный, но уже не все понятно, что-же собственно я добавил и зачем? Дальше попытаюсь добавить работу с портами GPIO.
  3. koteika

    koteika В доску свой

    Сообщения:
    768
    Симпатии:
    118
    Род занятий:
    программирование
    библиотеки добавили

    system_stm32f10x.c тут можно частоту настроить, на инглише написано что и зачем


    Screenshot - 14.11.2014 - 22:47:44.png
  4. UL7AAjr

    UL7AAjr В доску свой

    Сообщения:
    1.915
    Симпатии:
    317
    Род занятий:
    инженер-программист
    Адрес:
    Алма-Ата
    Так, действительно, там находится модуль, вызываемый сразу после резета. Надо раскомментировать нужную частоту.

    Получается через диалог "Run time environment" подключаются библиотеки от Кейла. Для подключения GPIO в диалоге нужно поставить галку возле GPIO, прописать #include "GPIO_STM32F10x.h" и добавить путь к файлу от Кейла.

    А вот библиотеки от производителя можно подключать обычным способом. Так что-же лучше использовать?
  5. koteika

    koteika В доску свой

    Сообщения:
    768
    Симпатии:
    118
    Род занятий:
    программирование
    В кокосе все библиотеки автоматически добавляются к проекту, просто инклудим их... Но он жутко глючный.. Есть подсветка синтаксиса и всплывающие окошки выбора кода. Есть примеры и библиотеки..

    Кейл очень шустрый.. Но библиотеки добавляем сами, то есть папку проекта делаем сами.. Вроде есть сэмплы, попробуйте поискать их и открыть проект.. Увидите что к чему..
  6. UL7AAjr

    UL7AAjr В доску свой

    Сообщения:
    1.915
    Симпатии:
    317
    Род занятий:
    инженер-программист
    Адрес:
    Алма-Ата
    Ага! Понял. Подключать периферию надо через диалог "Run time environment", и, если не хватает модулей, прописать пути к библиотеке от производителя со стандартной периферией, которую надо предварительно скачать у STM. И не забыть указать в define проекта USE_STDPERIPH_DRIVER.

    Ухх.. вроде разобрался.
  7. radioengineer

    radioengineer Администратор Команда форума

    Сообщения:
    3.585
    Симпатии:
    357
    Адрес:
    Алматы
    Я только 4й версией пользуюсь, там вообще все по другому однако, надо тоже 5ку поставить посмотреть что да как. Раньше при создании проекта просто выскакивал message добавить std_periph_library > OK и все добавилось, а тут в стиле Coocox сделали добавление библиотек.

Поделиться этой страницей