STM32. 1. Вступление

Приходит время, и 8-ми битных контроллеров уже перестаёт хватать для реализации своих проектов и воплощения идей в реальность. Приходит время, и стоит задуматься, чтобы сделать следующий шаг и перейти на новый уровень. Пришло время для начала изучения контроллера с ARM архитектурой ядра.

ARM контроллер STM32

ARM контроллер STM32

Сразу скажу, что если Вы только начинаете изучать контроллеры, то не советую начинать с 32-битных контроллеров, гораздо проще и быстрее (в планах конфигурации, программирования, схемотехники, разводки…) начать с 8-ми битных контроллеров, с которыми на порядок проще работать. А кому-то вообще Arduino хватит за глаза. Но если с атмегами и пиками (или с чем там дело имели) уже наигрались или они перестали справляться с поставленными задачами – то милости просим.

В своих проектах уже не раз начал упираться в планку PIC контроллера (начал с них, поэтому их лучше знаю и больше предпочтения в своих проектах отдаю им): то памяти мало, то стек израсходован, то чего-то не хватает… Можно конечно выбирать более мощный и нашпигованный контроллер, и зачастую так поступаю, но у всего есть конец, и рано или поздно мне уже не хватит мощности, периферии…, а этажерки городить не очень охота, да и неправильно. В общем, пора переходить на новую ступень.

Давно этим хотел заняться, но время нашлось только сейчас. И некоторые свои потуги буду описывать здесь.

Сейчас на рынке есть множество фирм выпускающих контроллеры с ядром ARM, своё внимание остановил на получившем большое распространение продукции от ST Microelectronics. Очень большой плюс в их сторону, что они выпустили доступный инструмент начального уровня для ознакомления со своими камушками, речь конечно идёт о всем известной серии демонстрационных плат Discovery.

STM32-Discovery

STM32-Discovery

Такой шаг очень своевременен и приятен, т.к. в отличие от 8-ми битников STM32 не выпускаются в DIP’е и, как новая (для меня и скорее всего для Вас) архитектура, может таить подводные камни на этапах ознакомления с ней, а готовая и заведомо рабочая плата избавляет от схемотехнических ошибок при знакомстве. Плюс на плате есть встроенный программатор – ST-Link, который можно использовать не только для программирования установленного контроллера. Да и материала в глобальной паутине по ним уже хватает.

Ещё один очень большой плюс для перехода на ARM – это их стоимость, сравнимая, а точнее даже более доступная, чем у 8-ми битных контроллеров с большим числом выводов и периферией. В том время, когда даже в самых простых ARM’ах есть много всего, при превосходящей вычислительной мощности. Оговорюсь, что для каждой задачи лучше подбирать свой камень: если нужно подергать ножкой и опросить датчик, то гораздо проще и дешевле будет взять самый примитивный 8-ми битник, а не брать 100 выводной (ну 48-ми), трудно паяемый, конфигурируемый и программируемый микропроцессор.

KEIL

KEIL

В качестве среды для работы буду применять Keil uVision4 в демонстрационном режиме, т.к. у меня нет возможности и желания отдавать 2500 евро за полноценную среду. Ограничение демонстрационной версии заключается в ограничении размера прошивки в 32Кбайта, чего для обучения будет достаточно. Поначалу начну с самой простой демоплаты — STM32vlDiscovery, а дальше посмотрим.

STM32vlDiscovery

STM32vlDiscovery

Для наглядности, с чем будем работать, и что бы было, добавляю схему включения STM32F100RBT6B на демоплате STM32vlDiscovery, взятую из даташита к ней.

Схема включения МК на STM32vlDiscovery

Схема включения МК на STM32vlDiscovery

Первым делом скачиваем и установим среду с офф. сайта – перейти . И переходим к созданию первого проекта –
STM32. 2. Первый проект .

Статья обновлена 31.05.2014

9 комментариев »

Alex_EXE | 07.08.2013 | STM32 |

9 комментариев на « STM32. 1. Вступление»

  1. barteroff пишет 09.08.2013 в 02:18 #

    Почему выбрали Keil?

  2. Alex_EXE пишет 10.08.2013 в 01:59 #

    Сложный вопрос, точно такой же — почему в своё время выбрал пики.
    ————————————
    Наверное из простоты, для новичка удобно. В будущем, возможно, перейду на OpenSource.

  3. Okzim пишет 26.02.2014 в 10:59 #

    Какую ставить лучше версию МДК-ARM v5 или МДК-ARM v4 ????

  4. Alex_EXE пишет 27.02.2014 в 04:40 #

    На этот вопрос не отвечу, т.к. пока что работал только в 4 версии среды.

  5. Вадим Серов пишет 05.07.2016 в 16:41 #

    Очень интересно!
    Ждём продолжения!

  6. Nik пишет 26.07.2016 в 15:32 #

    А почему бы не использовать coocox?

  7. Alex_EXE пишет 28.07.2016 в 03:49 #

    Начинал с Keil, но когда занялся делом сразу перешел на coocox. Если посмотреть на прикреплённые файлы новых проектов, то они для coocox.

  8. Grigan пишет 03.10.2016 в 01:49 #

    Coocox с оф. сайта невозможно скачать. Падает скорость. Кое как за день вытянул. Установил, жутко виснет среда! У вас также?

  9. Alex_EXE пишет 03.10.2016 в 12:36 #

    Качал давно, версия 1.7.6 . Проблем с данной версий нет, за исключением, малого количества поддерживаемых камней, но мне пока хватает. Пытался, как-то скачать более свежею версию (1.8 или 2, не понмю), они тогда только-только серьезное обновление первой обновление сделали, в интерфейсе не нашел, меню для создания проекта, думаю та была какая-то особая демо версия. С тех пор более не пытался, пока использую тот дистрибутив, если нужно — поделюсь.
    Запускается порядка 20 секунд, на хорошем компьютере. На нетбуке Atom 1,6ГГц 1ГБ ОП грузится 1-2 минуты. Тормозов на всех машинах не наблюдаю.

    На счёт проблем со скачиванием, когда падает скорость. Если качать большой файл с официального ресурса, а не варьезника, то можно воспользоваться менеджером закачки, например Download Manager. Он качает в несколько потоков с функцией докачки. Тоже сталкивался где-то с подобными проблемами.

Комментарии RSS

Оставьте отзыв