СТМицроелецтроницс-лого

СТМицроелецтроницс СТМ32ВБА серија Почетак

СТМицроелецтроницс-СТМ32ВБА-Серија-Почетак-сл.1

Информације о производу

Спецификације:

  • Назив производа: СТМ32ЦубеВБА МЦУ пакет
  • Произвођач: СТМицроелецтроницс
  • Компатибилност: Микроконтролери серије СТМ32ВБА
  • Лиценцирање: БСД лиценца отвореног кода

Упутства за употребу производа

Главне карактеристике СТМ32ЦубеВБА МЦУ пакета:
СТМ32ЦубеВБА МЦУ пакет обезбеђује све неопходне уграђене софтверске компоненте за развој апликација на микроконтролерима серије СТМ32ВБА. Веома је преносив унутар СТМ32 серије и долази са ХАЛ и ЛЛ АПИ-јима, нпрampлес, и компоненте средњег софтвера.

Арцхитецтуре Оверview:
Архитектура СТМ32ЦубеВБА МЦУ пакета састоји се од три нивоа – апликације, компоненте засноване на библиотеци и протоколу, слој апстракције хардвера, БСП драјвери, управљачки програми за језгро и АПИ-ји ниског слоја.

ФАК

  • Шта је укључено у СТМ32ЦубеВБА МЦУ пакет?
    Пакет укључује АПИ-је ниског слоја (ЛЛ) и слоја апстракције хардвера (ХАЛ), нпрampдатотеке, апликације, компоненте средњег софтвера као што су FileКс/ЛевелКс, НетКс Дуо, мбед-црипто библиотеке и још много тога.
  • Да ли је СТМ32ЦубеВБА МЦУ пакет компатибилан са СТМ32ЦубеМКС генератором кода?
    Да, пакет је у потпуности компатибилан са СТМ32ЦубеМКС генератором кода за генерисање иницијализационог кода.

Увод

  • СТМ32Цубе је оригинална иницијатива компаније СТМицроелецтроницс за значајно побољшање продуктивности дизајнера смањењем напора, времена и трошкова развоја. СТМ32Цубе покрива цео СТМ32 портфолио.
    СТМ32Цубе укључује:
    • Скуп алата за развој софтвера прилагођених кориснику који покривају развој пројекта од идеје до реализације, међу којима су:
      • СТМ32ЦубеМКС, алат за конфигурацију графичког софтвера који омогућава аутоматско генерисање Ц кода за иницијализацију помоћу графичких чаробњака
      • СТМ32ЦубеИДЕ, све-у-једном развојни алат са периферном конфигурацијом, генерисањем кода, компилацијом кода и функцијама за отклањање грешака
      • СТМ32ЦубеЦЛТ, све-у-једном скуп алата за развој командне линије са компилацијом кода, програмирањем плоче и функцијама за отклањање грешака
      • СТМ32ЦубеПрограммер (СТМ32ЦубеПрог), алатка за програмирање доступна у графичким верзијама и верзијама са командне линије
      • СТМ32ЦубеМонитор (СТМ32ЦубеМонитор, СТМ32ЦубеМонПвр, СТМ32ЦубеМонРФ, СТМ32ЦубеМонУЦПД), моћни алати за праћење за фино подешавање понашања и перформанси СТМ32 апликација у реалном времену
    • СТМ32Цубе МЦУ и МПУ пакети, свеобухватне платформе уграђеног софтвера специфичне за сваку серију микроконтролера и микропроцесора (као што је СТМ32ЦубеВБА за серију СТМ32ВБА), које укључују:
      • СТМ32Цубе слој хардверске апстракције (ХАЛ), обезбеђујући максималну преносивост кроз СТМ32 портфолио
      • СТМ32Цубе АПИ-ји ниског слоја, који обезбеђују најбоље перформансе и отиске са високим степеном корисничке контроле над хардвером
      • Доследан скуп компоненти међувера као што је ТхреадКс, FileКс / ЛевелКс, НетКс Дуо, УСБКС, тоуцх библиотека, мбед-црипто, ТФМ, МЦУбоот, ОпенБЛ и СТМ32_ВПАН (укључујући Блуетоотх® Лов Енерги проfileи услуге, Месх, Зигбее®, ОпенТхреад, Маттер и 802.15.4 МАЦ слој)
      • Сви уграђени софтверски услужни програми са пуним сетовима периферних и апликативних екampлес
    • СТМ32Цубе пакети за проширење, који садрже уграђене софтверске компоненте које допуњују функционалност СТМ32Цубе МЦУ и МПУ пакета са:
      • Проширења средњег софтвера и апликативни слојеви
      • Exampле-ови који раде на неким специфичним развојним плочама СТМицроелецтроницс
  • Ово упутство за употребу описује како да почнете са СТМ32ЦубеВБА МЦУ пакетом.
    • Одељак 2 Главне карактеристике СТМ32ЦубеВБА описује главне карактеристике СТМ32ЦубеВБА МЦУ пакета.
    • Одељак 3 Архитектура СТМ32ЦубеВБА је завршенаview пружа прекоview архитектуре СТМ32ЦубеВБА и структуре МЦУ пакета.

Опште информације

СТМ32ЦубеВБА МЦУ пакет ради на СТМ32 32-битним микроконтролерима заснованим на Арм® Цортек®-М33 процесору са Арм® ТрустЗоне® и ФПУ.
Напомена: Арм и ТрустЗоне су регистровани заштитни знаци компаније Арм Лимитед (или њених подружница) у САД и/или другде.

Главне карактеристике СТМ32ЦубеВБА

  • СТМ32ЦубеВБА МЦУ пакет ради на СТМ32 32-битним микроконтролерима заснованим на Арм® Цортек®-М33 процесору са ТрустЗоне® и ФПУ.
  • СТМ32ЦубеВБА окупља, у једном пакету, све генеричке уграђене софтверске компоненте потребне за развој апликације за микроконтролере серије СТМ32ВБА. У складу са иницијативом СТМ32Цубе, овај сет компоненти је веома преносив, не само у оквиру микроконтролера серије СТМ32ВБА, већ и на друге СТМ32 серије.
  • СТМ32ЦубеВБА је потпуно компатибилан са СТМ32ЦубеМКС генератором кода, за генерисање иницијализационог кода. Пакет укључује АПИ-је ниског слоја (ЛЛ) и слоја апстракције хардвера (ХАЛ) који покривају хардвер микроконтролера, заједно са широким скупом екampлес који ради на СТМицроелецтроницс плочама. ХАЛ и ЛЛ АПИ-ји су доступни у БСД лиценци отвореног кода ради погодности корисника.
  • СТМ32ЦубеВБА МЦУ пакет такође садржи свеобухватну компоненту средњег софтвера конструисану око Мицрософт® Азуре® РТОС међувера, и других интерних и опен-соурце стекова, са одговарајућим екampлес.
  • Долазе са бесплатним условима лиценцирања прилагођеним кориснику:
    • Интегрисан и потпуно функционалан Азуре® РТОС: Азуре® РТОС ТхреадКс
    • Имплементација ЦМСИС-РТОС-а са Азуре® РТОС ТхреадКс
    • УСБ хост и уређаји долазе са многим класама: Азуре® РТОС УСБКС
    • Напредно file систем и флеш слој за превод: FileКс / ЛевелКс
    • Мрежни стог индустријског нивоа: оптимизован за перформансе који долазе са многим ИоТ протоколима: НетКс Дуо
    • ОпенБоотлоадер
    • Арм® Трустед Фирмваре-М (ТФ‑М) решење за интеграцију
    • мбед-црипто библиотеке
    • СТ Нетворк Либрари
    • СТМТоуцх решење библиотеке осетљиве на додир
  • Неколико апликација и демонстрација које имплементирају све ове компоненте средњег софтвера такође су обезбеђене у СТМ32ЦубеВБА МЦУ пакету.
  • Изглед компоненте СТМ32ЦубеВБА МЦУ пакета је илустрован на слици 1. Компоненте СТМ32ЦубеВБА МЦУ пакета.

    СТМицроелецтроницс-СТМ32ВБА-Серија-Почетак-сл.2

СТМ32ЦубеВБА архитектура је завршенаview

Решење СТМ32ЦубеВБА МЦУ пакета је изграђено око три независна нивоа који лако ступају у интеракцију као што је описано на слици 2. Архитектура СТМ32ЦубеВБА МЦУ пакета.

СТМицроелецтроницс-СТМ32ВБА-Серија-Почетак-сл.3

Ниво 0

Овај ниво је подељен на три подслоја:

  • Пакет подршке одбору (БСП).
  • Слој хардверске апстракције (ХАЛ):
    • ХАЛ периферни драјвери
    • Драјвери ниског слоја
  • Основна употреба периферије нпрampлес.

Пакет подршке за одбор (БСП)
Овај слој нуди скуп АПИ-ја у односу на хардверске компоненте у хардверским плочама (као што су ЛЦД, Аудио,\ мицроСД™ и МЕМС драјвери). Састоји се из два дела:

  • Драјвер компоненте:
    Овај драјвер се односи на спољни уређај на плочи, а не на СТМ32 уређај. Драјвер компоненте обезбеђује специфичне АПИ-је за спољне компоненте БСП драјвера и може бити преносив на било коју другу плочу.
  • БСП возач:
    БСП драјвер омогућава повезивање драјвера компоненти са одређеном плочом, и пружа сет једноставних за коришћење
    АПИ-ји. Правило именовања АПИ-ја је БСП_ФУНЦТ_Ацтион().
    Exampле: БСП_ЛЕД_Инит(), БСП_ЛЕД_Он()
    БСП је заснован на модуларној архитектури која омогућава лако преношење на било који хардвер само имплементацијом рутина ниског нивоа.

Хардверски апстракцијски слој (ХАЛ) и ниски слој (ЛЛ)
СТМ32ЦубеВБА ХАЛ и ЛЛ су комплементарни и покривају широк спектар захтева примене:

  • ХАЛ драјвери нуде високо преносиве АПИ-је који су оријентисани ка функцијама. Они сакривају МЦУ и периферну сложеност крајњем кориснику.
    ХАЛ драјвери обезбеђују генеричке мулти-инстанце оријентисане АПИ-је, који поједностављују имплементацију корисничке апликације обезбеђујући процесе спремне за коришћење. Фор екampЛе, за комуникационе периферије (И2С, УАРТ и друге), обезбеђује АПИ-је који омогућавају иницијализацију и конфигурисање периферије, управљање преносом података на основу прозивања, прекидања или ДМА процеса и руковање грешкама у комуникацији које могу настати током комуникације. АПИ-ји ХАЛ драјвера су подељени у две категорије:
    1. Генерички АПИ-ји, који пружају заједничке и генеричке функције свим микроконтролерима серије СТМ32.
    2. АПИ-ји проширења, који пружају специфичне и прилагођене функције за одређену породицу или одређени број дела.
  • АПИ-ји ниског слоја обезбеђују АПИ-је ниског нивоа на нивоу регистра, са бољом оптимизацијом, али мање преносивости.
    • Захтевају дубоко познавање МЦУ и периферних спецификација.
    • ЛЛ драјвери су дизајнирани да понуде брз, лаган слој оријентисан на стручњаке који је ближи хардверу од ХАЛ-а. За разлику од ХАЛ-а, ЛЛ АПИ-ји нису обезбеђени за периферне уређаје где оптимизовани приступ није кључна карактеристика, или за оне којима је потребна тешка софтверска конфигурација или сложени стек вишег нивоа.
    • Карактеристике драјвера ЛЛ:
      • Скуп функција за иницијализацију главних карактеристика периферије према параметрима наведеним у структурама података.
      • Скуп функција за попуњавање иницијализационих структура података са вредностима ресетовања које одговарају сваком пољу.
      • Функција за деиницијализацију периферије (периферијски регистри враћени на њихове подразумеване вредности).
      • Скуп инлине функција за директан и атомски приступ регистрима.
      • Потпуна независност од ХАЛ-а и могућност коришћења у самосталном режиму (без ХАЛ драјвера).
      • Потпуна покривеност подржаних периферних функција.

Основна употреба периферије нпрampлес
Овај слој обухвата екampдатотеке изграђене преко СТМ32 периферних уређаја користећи само ХАЛ и БСП ресурсе.

Ниво 1

Овај ниво је подељен на два подслоја:

  • Компоненте средњег софтвера
  • Exampдатотеке засноване на компонентама међувера

Компоненте средњег софтвера

  • Средњи софтвер је скуп библиотека које покривају Блуетоотх® Лов Енерги (Линклаиер, ХЦИ, Стацк), Тхреад®, Зигбее®,
  • Маттер, ОпенБоотлоадер, Мицрософт® Азуре® РТОС, ТФ‑М, МЦУбоот и мбед-црипто.
  • Хоризонтална интеракција између компоненти овог слоја се врши позивањем истакнутих АПИ-ја.
  • Вертикална интеракција са драјверима ниског слоја се врши кроз специфичне повратне позиве и статичке макрое имплементиране у интерфејс позива система библиотеке.
  • Главне карактеристике сваке компоненте средњег софтвера су следеће:
    • Мицрософт® Азуре® РТОС
      • Азуре® РТОС ТхреадКс: Оперативни систем у реалном времену (РТОС), дизајниран за уграђене системе са два функционална режима.
        • Уобичајени режим: Уобичајене РТОС функције као што су управљање нитима и синхронизација, управљање меморијским скупом, размена порука и руковање догађајима.
        • Модул мод: Напредни кориснички режим који омогућава учитавање и истовар унапред повезаних ТхреадКс модула у ходу преко менаџера модула.
      • НетКс Дуо
      • FileX
      • УСБКС
    • Блуетоотх® Лов Енерги (БЛЕ): Имплементира Блуетоотх® Лов Енерги протокол за слојеве везе и стека.
    • МЦУбоот (софтвер отвореног кода)
    • Зигбее® протоколи за стек и повезане кластере.
    • Тхреад® стек протокола и слој везе.
    • Арм® поуздани фирмвер-М, ТФ‑М (софтвер отвореног кода): Референтна имплементација безбедносне архитектуре Арм® платформе (ПСА) за ТрустЗоне® са припадајућим безбедним услугама.
    • мбед-црипто (софтвер отвореног кода): мбед-црипто међувера пружа имплементацију ПСА криптографског АПИ-ја.
    • СТМ32 библиотека осетљива на додир: Робусно СТМТоуцх капацитивно решење за детекцију додира, подржава сензоре близине, додирног тастера, линеарне и ротационе сензоре додира. Заснован је на доказаном принципу аквизиције преноса површинског наелектрисања.

Exampдатотеке засноване на компонентама међувера
Свака компонента средњег софтвера долази са једним или више екampлес (који се називају и апликације) који показује како се користи. Интеграција прampОбезбеђене су и датотеке које користе неколико компоненти средњег софтвера.

СТМ32ЦубеВБА пакет фирмвера је завршенview

Подржани уређаји и хардвер серије СТМ32ВБА

  • СТМ32Цубе нуди високо преносив слој апстракције хардвера (ХАЛ) изграђен око генеричке архитектуре. Омогућава принцип надградње слојева, као што је коришћење слоја средњег софтвера за имплементацију њихових функција без детаљног сазнања шта се МЦУ користи. Ово побољшава поновну употребу кода библиотеке и обезбеђује лаку преносивост на друге уређаје.
  • Поред тога, захваљујући својој слојевитој архитектури, СТМ32ЦубеВБА нуди пуну подршку за све серије СТМ32ВБА.
  • Корисник треба само да дефинише прави макро у стм32вбакк.х.
  • Табела 1 приказује макро који треба дефинисати у зависности од уређаја серије СТМ32ВБА који се користи. Овај макро такође мора бити дефинисан у претпроцесору компајлера.
    Табела 1. Макрои за СТМ32ВБА серију
    Макро дефинисан у стм32вбакк.х Уређаји серије СТМ32ВБА
    стм32вба52кк STM32WBA52CGU6, STM32WBA52KGU6, STM32WBA52CEU6, STM32WBA52KEU6
    стм32вба55кк STM32WBA55CGU6, STM32WBA55CGU6U, STM32WBA55CGU7, STM32WBA55CEU6, STM32WBA55CEU7

     

  • СТМ32ЦубеВБА има богат скуп екampдатотеке и апликације на свим нивоима што олакшава разумевање и коришћење било ког ХАЛ драјвера или компоненти међувера. Ови бившиampраде на СТМицроелецтроницс плочама наведеним у табели 2.
    Табела 2. Плоче за серију СТМ32ВБА
    одбора Уређаји који подржавају плочу СТМ32ВБА
    НУЦЛЕО-ВБА52ЦГ СТМ32ВБА52ЦГУ6
    НУЦЛЕО-ВБА55ЦГ СТМ32ВБА55ЦГУ6
    СТМ32ВБА55-ДК1 СТМ32ВБА55ЦГУ7
  • СТМ32ЦубеВБА МЦУ пакет може да ради на било ком компатибилном хардверу. Корисник једноставно ажурира БСП драјвере како би портовао достављени екampдатотеке на плочи, ако ова друга има исте хардверске карактеристике (као што су ЛЕД, ЛЦД екран и дугмад).
Пакет фирмвера је готовview
  • Решење пакета СТМ32ЦубеВБА је обезбеђено у једном зип пакету који има структуру приказану на слици 3. Структура пакета фирмвера СТМ32ЦубеВБА.

    СТМицроелецтроницс-СТМ32ВБА-Серија-Почетак-сл.4

  • За сваку таблу, сет екampлес има унапред конфигурисане пројекте за ЕВАРМ, МДК-АРМ и СТМ32ЦубеИДЕ ланце алата.
  • Слика 4. СТМ32ЦубеВБА прampлес оверview приказује структуру пројекта за плоче НУЦЛЕО‑ВБА52ЦГ, НУЦЛЕО-ВБА55ЦГ и СТМ32ВБА55Г-ДК1.

    СТМицроелецтроницс-СТМ32ВБА-Серија-Почетак-сл.5

  • Бившиampдатотеке су класификоване у зависности од нивоа СТМ32Цубе на који се примењују, а називају се на следећи начин:
    • Ниво 0 прampлес се зову Екampлес, прampлес_ЛЛ, и прampлес_МИКС. Они користе ХАЛ драјвере, ЛЛ драјвере и мешавину ХАЛ и ЛЛ драјвера без икакве компоненте међувера.
    • Ниво 1 прampле се зову Апликације. Они обезбеђују типичне случајеве употребе сваке компоненте средњег софтвера. Било која апликација за фирмвер за дату плочу може се брзо изградити захваљујући шаблонским пројектима доступним у директоријумима Темпл атес и Темплатес_ЛЛ.

Пројекти са омогућеним ТрустЗоне®-ом

  • ТрустЗоне® омогућен Екampимена датотека садрже префикс _ТрустЗоне. Правило се такође примењује на Апликације (осим за ТФМ и СБСФУ, који су изворно за ТрустЗоне®).
  • Екampлесови и апликације имају вишепројектну структуру састављену од безбедних и небезбедних потпројеката као што је приказано на слици 5. Вишепројектна безбедна и небезбедна структура пројекта.
  • Пројекти који подржавају ТрустЗоне® развијени су у складу са шаблоном уређаја ЦМСИС-5, проширеним тако да укључује заглавље системске партиције file подела_ .х, који је углавном одговоран за подешавање јединице безбедних атрибута (САУ), ФПУ-а и доделу безбедних/небезбедних прекида у стању безбедног извршавања.
  • Ово подешавање се врши у безбедној функцији ЦМСИС СистемИнит(), која се позива при покретању пре уласка у функцију безбедне апликације маин(). Погледајте документацију Арм® ТрустЗоне®-М са смерницама за софтвер.

    СТМицроелецтроницс-СТМ32ВБА-Серија-Почетак-сл.6

  • Пакет фирмвера пакета СТМ32ЦубеВБА обезбеђује подразумевано партиционисање меморије на партицији _ .х fileдоступни су под: \Дриверс\ЦМСИС\Девице\СТ\СТМ32ВБАкк\Инцлуде\Т шаблони
  • У овој партицији fileс, САУ је подразумевано онемогућен. Сходно томе, ИДАУ меморијско мапирање се користи за приписивање безбедности. Погледајте слику Безбедно/небезбедно партиционисање коришћењем ТрустЗоне® технологије у референтном приручнику РМ0495.
  • Ако корисник омогући САУ, подразумевана конфигурација региона САУ је унапред дефинисана у партицији fileс како следи:
    • САУ регион 0: 0к08080000 – 0к081ФФФФФ (небезбедна половина флеш меморије (512 кбајта))
    • САУ регион 1: 0к0БФ88000 – 0к0БФ97ФФФ (небезбедна системска меморија)
    • САУ регион 2: 0к0Ц07Е000 – 0к0Ц07ФФФФ (безбедно, небезбедно позивање)
    • САУ регион 3: 0к20010000 – 0к2001ФФФФ (небезбедни СРАМ2 (64 кбајта))
    • САУ регион 4: 0к40000000 – 0к4ФФФФФФФ (небезбедна периферна мапирана меморија)
  • Да би одговарали подразумеваној партицији, уређаји серије СТМ32ВБАкк морају имати подешене следеће бајтове корисничке опције:
    • ТЗЕН = 1 (уређај са омогућеним ТрустЗоне®)
    • СЕЦВМ1_ПСТРТ = 0к0 СЕЦВМ1_ПЕНД = 0к3Ф (64 од 128 страница интерне флеш меморије постављене као безбедне) Напомена: Интерна флеш меморија је подразумевано потпуно безбедна у ТЗЕН = 1. Бајтови корисничке опције СЕЦВМ1_ПСТРТ/ СЕЦВМ1_ПЕНД апликација мора бити подешена према конфигурација меморије (САУ региони, ако је САУ омогућен). Повезивач пројекта безбедних/небезбедних апликација fileс такође морају бити поравнати.
  • све екampимају исту структуру:
    • \Инц фолдер који садржи сва заглавља files.
    • Срц фолдер који садржи изворни код.
    • \ЕВАРМ, \МДК-АРМ и \СТМ32ЦубеИДЕ фасцикле које садрже унапред конфигурисан пројекат за сваки ланац алата.
    • реадме.мд и реадме.хтмл који описују прampпонашање и потребно окружење да би то функционисало.
    • иоц file који омогућава корисницима да отворе већину фирмвера нпрampлес унутар СТМ32ЦубеМКС.

Почетак рада са СТМ32ЦубеВБА

Покретање првог ХАЛ екample

Овај одељак објашњава колико је једноставно покренути први екampле у оквиру СТМ32ЦубеВБА. Као илустрацију користи генерисање једноставног ЛЕД прекидача који ради на плочи НУЦЛЕО-ВБА52ЦГ:

  1. Преузмите СТМ32ЦубеВБА МЦУ пакет.
  2. Распакујте га у директоријум по вашем избору.
  3. Уверите се да не мењате структуру пакета приказану на слици 1. Такође се препоручује да копирате пакет на локацију близу вашег основног волумена (што значи Ц:\СТ или Г:\Тестс), јер неки ИДЕ наилазе на проблеме када путања дужина је предугачка.

Покретање првог ТрустЗоне® омогућеног нпрample

  • Пре учитавања и покретања ТрустЗоне® омогућене нпрampле, обавезно је прочитати прampле реадме file за било коју специфичну конфигурацију, која обезбеђује да је безбедност омогућена као што је описано у одељку 4.2.1 Пројекти са омогућеним ТрустЗоне® (ТЗЕН=1 (бајт корисничке опције)).
    1. Идите на \Пројецтс\НУЦЛЕО-ВБА52ЦГ\Екampлес.
    2. Отворите \ГПИО, а затим \ГПИО_ИОТоггле_ТрустЗоне фасцикле.
    3. Отворите пројекат помоћу жељеног ланца алата. Брзи крајview о томе како отворити, изградити и покренути екampле са подржаним ланцима алата дат је у наставку.
    4. Поново изградите у низу све безбедне и небезбедне пројекте fileс и учитајте сигурне и небезбедне слике у циљну меморију.
    5. Покрени екampле: редовно, безбедна апликација пребацује ЛД2 сваке секунде, а небезбедна апликација укључује ЛД3 двоструко брже. За више детаља, погледајте реадме file бившегampле.
  • Да бисте отворили, направили и покренули екampса подржаним ланцима алата, следите доле наведене кораке:
    • ЕВАРМ:
      1. Под бившимampу фолдеру, отворите поддиректоријум \ЕВАРМ.
      2. Покрените радни простор Пројецт.евв
      3. Поново изградите ккккк_С безбедни пројекат fileс: [Пројекат]>[Поново изгради све].
      4. Поставите небезбедни пројекат ккккк_НС као активну апликацију (десни клик на ккккк_НС пројекат [Постави као активан])
      5. Поново изградите ккккк_НС небезбедни пројекат fileс: [Пројекат]>[Поново изгради све].
      6. Флешујте небезбедни бинарни фајл са [Пројекат]>[Преузми]>[Преузми активну апликацију] .
      7. Поставите ккккк_С као активну апликацију (десни клик на ккккк_С пројекат [Сет ас Ацтиве].
      8. Флешујте безбедни бинарни фајл помоћу [Довнлоад анд Дебуг] (Цтрл+Д).
      9. Покрените програм: [Дебуг]>[Го(Ф5)]
    • МДК-АРМ:
      1. Отворите ланац алата \МДК-АРМ.
      2. Отворите радни простор Мултипројецтс file Пројецт.увмпв.
      3. Изаберите пројекат ккккк_с као активну апликацију ([Сет ас Ацтиве Пројецт]).
      4. Направите пројекат ккккк_с.
      5. Изаберите пројекат ккккк_нс као активан пројекат ([Сет ас Ацтиве Пројецт]).
      6. Направите пројекат ккккк_нс.
      7. Учитајте небезбедни бинарни фајл ([Ф8]). Ово преузима \МДК-АРМ\ккккк_нс\Еке\ккккк_нс.акф у флеш меморију)
      8. Изаберите пројекат Пројецт_с као активан пројекат ([Сет ас Ацтиве Пројецт]).
      9. Учитајте безбедни бинарни фајл ([Ф8]). Ово преузима \МДК-АРМ\ккккк_с\Еке\ккккк_с.акф у флеш меморију).
      10. Покрени екampле.
    • СТМ32ЦубеИДЕ:
      1. Отворите ланац алата СТМ32ЦубеИДЕ.
      2. Отворите радни простор Мултипројецтс file .пројекат.
      3. Поново изградите ккккк_Сецуре пројекат.
      4. Поново изградите пројекат ккккк_НонСецуре.
      5. Покрените апликацију [Дебуг ас СТМ32 Цортек-М Ц/Ц++] за безбедни пројекат.
      6. У прозору [Уреди конфигурацију] изаберите панел [Покретање] и додајте учитавање слике и симбола небезбедног пројекта.
        Важно: Небезбедни пројекат мора бити учитан пре безбедног пројекта.
      7. Кликните на [ОК].
      8. Покрени екampле о перспективи отклањања грешака.

Покретање првог ТрустЗоне® онемогућеног нпрample

  • Пре учитавања и покретања ТрустЗоне® онемогућеног нпрampле, обавезно је прочитати прampле реадме file за било коју специфичну конфигурацију. Ако нема посебних помена, уверите се да је безбедност уређаја на плочи онемогућена (ТЗЕН=0 (бајт корисничке опције)). Погледајте ФАК за вршење опционе регресије на ТЗЕН = 0
    1. Идите на \Пројецтс\НУЦЛЕО-ВБА52ЦГ\Екampлес.
    2. Отворите \ГПИО, а затим \ГПИО_ЕКСТИ фолдере.
    3. Отворите пројекат помоћу жељеног ланца алата. Брзи крајview о томе како отворити, изградити и покренути екampле са подржаним ланцима алата дат је у наставку.
    4. Ребуилд алл fileс и учитајте своју слику у циљну меморију.
    5. Покрени екampле: Сваки пут када се притисне дугме [УСЕР], ЛД1 ЛЕД се пребацује. За више детаља, погледајте реадме file бившегampле.
  • Да бисте отворили, направили и покренули екampса подржаним ланцима алата, следите доле наведене кораке:
    • ЕВАРМ:
      1. Под бившимampу фолдеру, отворите поддиректоријум \ЕВАРМ.
      2. Покрените радни простор Пројецт.евв (име радног простора може да се промени из једног екampле другом).
      3. Ребуилд алл fileс: [Пројекат]>[Поново изгради све].
      4. Учитајте слику пројекта: [Пројекат]>[Дебуг].
      5. Покрените програм: [Дебуг]>[Го (Ф5)].
    • МДК-АРМ:
      1. Под бившимampу фолдеру, отворите потфасциклу \МДК-АРМ.
      2. Покрените радни простор Пројецт.увпрој (име радног простора може да се промени из једног прampле другом).
      3. Ребуилд алл fileс:[Пројекат]>[Поново изгради све циљеве fileс].
      4. Учитајте слику пројекта: [Дебуг]>[Старт/Стоп Дебуг Сессион].
      5. Покрените програм: [Дебуг]>[Рун (Ф5)].
    • СТМ32ЦубеИДЕ:
      1. Отворите ланац алата СТМ32ЦубеИДЕ.
      2. Кликните [File]>[Промени радни простор]>[Остало] и дођите до директоријума радног простора СТМ32ЦубеИДЕ.
      3. Кликните [File]>[Увоз] , изаберите [Опште]>[Постојећи пројекти у радни простор], а затим кликните на [Даље].
      4. Дођите до директоријума радног простора СТМ32ЦубеИДЕ и изаберите пројекат.
      5. Поново изградите сав пројекат fileс: Изаберите пројекат у прозору [Пројецт Екплорер], а затим кликните на мени [Пројекат]>[Буилд пројецт].
      6. Покрените програм: [Рун]>[Дебуг (Ф11)]
Развој прилагођене апликације

Напомена: Софтвер мора да омогући кеш инструкција (ИЦАЦХЕ) да добије извршење 0 стања чекања из флеш меморије и постигне максималне перформансе и бољу потрошњу енергије.

Коришћење СТМ32ЦубеМКС за развој или ажурирање апликације

  • У СТМ32ЦубеВБА МЦУ пакету, скоро сви екampдатотеке се генеришу помоћу алата СТМ32ЦубеМКС за иницијализацију система, периферних уређаја и међувера.
  • Директно коришћење постојећег пројекта нпрampдатотека из СТМ32ЦубеМКС алата захтева СТМ32ЦубеМКС 6.10.0 или новију:
    • Након инсталације СТМ32ЦубеМКС, отворите и ако је потребно ажурирајте предложени пројекат. Најједноставнији начин да отворите постојећи пројекат је да двапут кликнете на *.иоц file тако да СТМ32ЦубеМКС аутоматски отвара пројекат и његов извор files.
    • СТМ32ЦубеМКС генерише изворни код за иницијализацију таквих пројеката. Главни изворни код апликације садржан је у коментарима „КОРИСНИЧКИ КОД ПОЧИЊЕ“ и „КОРИСНИЧКИ КОД КРАЈ“. У случају да су избор и подешавање ИП-а измењени, СТМ32ЦубеМКС ажурира иницијализациони део кода, али задржава главни изворни код апликације.
  • За развој прилагођеног пројекта у СТМ32ЦубеМКС, пратите корак по корак процес:
    1. Изаберите СТМ32 микроконтролер који одговара потребном скупу периферних уређаја.
    2. Конфигуришите сав потребан уграђени софтвер користећи решавач пиноут-конфликта, помоћник за подешавање стабла сата, калкулатор потрошње енергије и услужни програм који обавља МЦУ периферну конфигурацију (као што је ГПИО или УСАРТ) и стекове средњег софтвера (као што је УСБ).
    3. Генеришите иницијализациони Ц код на основу изабране конфигурације. Овај код је спреман за употребу у неколико развојних окружења. Кориснички код се чува при следећем генерисању кода.
  • За више информација о СТМ32ЦубеМКС, погледајте упутство за употребу СТМ32ЦубеМКС за СТМ32 конфигурацију и генерисање Ц кода за иницијализацију (УМ1718).
  • За листу доступних пројеката нпрampдатотеке за СТМ32ЦубеВБА, погледајте напомену о апликацији СТМ32Цубе фирмвер екampлес за СТМ32ВБА серију (АН5929).

Апликације за драјвер

ХАЛ апликација
Овај одељак описује кораке потребне за креирање прилагођене ХАЛ апликације помоћу СТМ32ЦубеВБА:

  1. Креирајте пројекат
    • Да бисте креирали нови пројекат, почните или од шаблонског пројекта који је обезбеђен за сваку плочу под \Пројекти\ \Шаблони или из било ког доступног пројекта под \Пројекти\ \Примери или \Пројекти\ \Апликације (где односи се на назив плоче, као што је СТМ32ЦубеВБА).
    • Пројекат Темплате обезбеђује празну функцију главне петље. Међутим, то је добра полазна тачка за разумевање поставки пројекта СТМ32ЦубеВБА. Шаблон има следеће карактеристике:
      • Садржи ХАЛ изворни код, ЦМСИС и БСП драјвере, који су минимални скуп компоненти потребних за развој кода на датој плочи.
      • Садржи укључене путање за све компоненте фирмвера.
      • Дефинише подржане уређаје серије СТМ32ВБА, омогућавајући да се ЦМСИС и ХАЛ драјвери правилно конфигуришу.
      • Обезбеђује корисника спремног за употребу fileје унапред конфигурисан као што је приказано испод:
        ХАЛ је иницијализован са подразумеваном временском базом са Арм® језгром СисТицк-а. СисТицк ИСР имплементиран за ХАЛ_Делаи() сврху.
        Напомена: Када копирате постојећи пројекат на другу локацију, уверите се да су све укључене путање ажуриране.
  2. Додајте неопходан средњи софтвер у кориснички пројекат (опционо)
    За идентификацију извора fileкоје треба додати пројекту file листу, погледајте документацију обезбеђену за сваки међуверски софтвер. Погледајте апликације под \Пројецтс\СТМ32ккк_иии\Апплицатионс\ (где се односи на стог међувера, као што је ТхреадКс) да би се знало који извор fileс и укључују путање морају бити додати.
  3. Конфигуришите компоненте фирмвера
    ХАЛ и компоненте средњег софтвера нуде скуп опција конфигурације за време изградње користећи макрое #дефине декларисане у заглављу file. Конфигурација шаблона file је обезбеђен унутар сваке компоненте, која се мора копирати у фасциклу пројекта (обично конфигурацију file носи назив ккк_цонф_темплате.х, реч _темплате треба уклонити када је копирате у фасциклу пројекта). Конфигурација file пружа довољно информација за разумевање утицаја сваке опције конфигурације. Детаљније информације доступне су у документацији за сваку компоненту.
  4. Покрените ХАЛ библиотеку
    Након што пређете на главни програм, код апликације мора позвати ХАЛ_Инит() АПИ да би иницијализовао ХАЛ библиотеку, која извршава следеће задатке:
    • Конфигурација претходног преузимања флеш меморије и приоритета СисТицк прекида (преко макроа дефинисаних у ст м32вбакк_хал_цонф.х).
    • Конфигурација СисТицка за генерисање прекида сваке милисекунде на СисТицк приоритету прекида ТИЦК_ИНТ_ПРИО дефинисаном у стм32вбакк_хал_цонф.х.
    • Постављање приоритета НВИЦ групе на 0.
    • Позив функције повратног позива ХАЛ_МспИнит() дефинисане у кориснику стм32вбакк_хал_мсп.ц file да изврши глобалне хардверске иницијализације ниског нивоа.
  5. Конфигуришите системски сат
    Конфигурација системског сата се врши позивањем два АПИ-ја описана у наставку:
    • ХАЛ_РЦЦ_ОсцЦонфиг(): овај АПИ конфигурише интерне и екстерне осцилаторе. Корисник бира да конфигурише један или све осцилаторе.
    • ХАЛ_РЦЦ_ЦлоцкЦонфиг(): овај АПИ конфигурише извор системског такта, кашњење флеш меморије и АХБ и АПБ прескалере.
  6. Иницијализујте периферију
    • Прво напишите периферну ХАЛ_ППП_МспИнит функцију. Поступите на следећи начин:
      • Омогућите периферни сат.
      • Конфигуришите периферне ГПИО.
      • Конфигуришите ДМА канал и омогућите ДМА прекид (ако је потребно).
      • Омогућите периферни прекид (ако је потребно).
    • Уредите стм32ккк_ит.ц да позовете потребне руковаоце прекида (периферијски и ДМА), ако је потребно.
    • Напишите потпуне функције повратног позива процеса, ако је планирано да се користи периферни прекид или ДМА.
    • У кориснику маин.ц file, иницијализујте структуру ручке периферије, а затим позовите функцију ХАЛ_ППП_Инит() да бисте иницијализовали периферију.
  7. Развијте апликацију
    • На овом сtagе, систем је спреман и развој кода корисничке апликације може да почне.
    • ХАЛ обезбеђује интуитивне и спремне за коришћење АПИ-је за конфигурисање периферије. Подржава прозивање, прекиде и ДМА модел програмирања, како би се прилагодио свим захтевима апликације. За више детаља о томе како да користите сваки периферни уређај, погледајте богати прampсет који се налази у СТМ32ЦубеВБА МЦУ пакету.
      Опрез: У подразумеваној ХАЛ имплементацији, СисТицк тајмер се користи као временска база: генерише прекиде у редовним временским интервалима. Ако је ХАЛ_Делаи() позван из периферног ИСР процеса, уверите се да СисТицк прекид има већи приоритет (нумерички нижи) од периферног прекида. У супротном, процес ИСР позиваоца је блокиран. Функције које утичу на конфигурацију временске базе су декларисане као __слабе да би се омогућило заобилажење у случају других имплементација код корисника file (користећи тајмер опште намене, нпрampле, или други извор времена). За више детаља погледајте ХАЛ_ТимеБасе прampле.

ЛЛ апликација
Овај одељак описује кораке потребне за креирање прилагођене ЛЛ апликације помоћу СТМ32ЦубеВБА.

  1. Креирајте пројекат
    • Да бисте креирали нови пројекат, или почните од пројекта Темплатес_ЛЛ који је обезбеђен за сваку плочу под \Пројекти\ \Темплатес_ЛЛ, или из било ког доступног пројекта под \Пројекти\ \Прampлес_ЛЛ ( односи се на назив плоче, као што је НУЦЛЕО-ВБА32ЦГ).
    • Пројекат шаблона пружа празну функцију главне петље, што је добра полазна тачка за разумевање пројектних поставки за СТМ32ЦубеВБА. Главне карактеристике шаблона су следеће:
      • Садржи изворне кодове ЛЛ и ЦМСИС драјвера, који су минимални скуп компоненти потребних за развој кода на датој плочи.
      • Садржи укључене путање за све потребне компоненте фирмвера.
      • Он бира подржани уређај серије СТМ32ВБА и омогућава исправну конфигурацију ЦМСИС и ЛЛ драјвера.
      • Омогућава кориснику спреман за употребу fileкоји су унапред конфигурисани на следећи начин:
        ◦ маин.х: слој апстракције ЛЕД и УСЕР_БУТТОН дефиниције.
        ◦ маин.ц: Конфигурација системског сата за максималну фреквенцију.
  2. Пренесите постојећи пројекат на другу плочу
    Да бисте подржали постојећи пројекат на другој циљној плочи, почните од Темплатес_ЛЛ пројекта који је обезбеђен за сваку плочу и доступан под \Пројекти\ \Темплатес_ЛЛ.
    • Изаберите ЛЛ екampле: Да бисте пронашли таблу на којој је ЛЛ екampле-ови су распоређени, погледајте листу ЛЛ екampлес СТМ32ЦубеПројецтсЛист.хтмл.
  3. Порт ЛЛ екampле:
    • Копирајте/налепите фасциклу Темплатес_ЛЛ – да бисте задржали почетни извор – или директно ажурирајте постојећи Темплатес_ЛЛ пројекат.
    • Затим се пренос углавном састоји у замени Темплатес_ЛЛ fileс од стране Екampлес_ЛЛ циљани пројекат.
    • Задржите све делове специфичне за плочу. Ради јасноће, специфични делови плоче су означени са специфичним tags:

      СТМицроелецтроницс-СТМ32ВБА-Серија-Почетак-сл.7

    • Дакле, главни кораци преноса су следећи:
      • Замените стм32вбакк_ит.х file
      • Замените стм32вбакк_ит.ц file
      • Замените главну.х file и ажурирајте га: Задржите ЛЕД и дефиницију корисничког дугмета ЛЛ шаблона под СПЕЦИФИЧНА КОНФИГУРАЦИЈА БОАРД tags.
      • Замените главни.ц file и ажурирајте га:
    • Задржите конфигурацију сата функције СистемЦлоцк_Цонфиг() ЛЛ шаблона под СПЕЦИФИЧНА КОНФИГУРАЦИЈА БОАРД tags.
    • У зависности од ЛЕД дефиниције, замените сваку појаву ЛДк са другим ЛДи доступним у маин.х file.
    • Са овим модификацијама, прampле сада ради на циљној табли

Сигурносне апликације
Овај пакет се испоручује са сигурносним апликацијама.

СБСФУ апликације

  • СБСФУ обезбеђује Роот оф Труст решење, укључујући функције безбедног покретања и безбедног ажурирања фирмвера (засноване на МЦУбоот-у).
  • Решење се користи пре извршавања апликације.
  • Решење обезбеђује екampбезбедног сервиса (ГПИО прекидач), који је изолован од небезбедне апликације. Небезбедна апликација у току рада и даље може да користи ово решење.

ТФМ апликације
ТФМ пружа решење Роот оф Труст, укључујући функције безбедног покретања и безбедног ажурирања фирмвера
(засновано на МЦУбоот-у). Решење се користи пре извршавања апликације. Решење обезбеђује ТФМ сигурне услуге које су изоловане од небезбедне апликације. Небезбедна апликација у току рада и даље може да користи ово решење.

РФ апликације
РФ апликација је описана у овој напомени о апликацији: Израда бежичних апликација са микроконтролерима серије СТМ32ВБА (АН5928).

Добијање ажурирања издања СТМ32ЦубеВБА
Најновија издања и закрпе СТМ32ЦубеВБА МЦУ пакета су доступне из СТМ32ВБА серије. Могу се преузети са дугмета ПРОВЕРИ АЖУРИРАЊЕ у СТМ32ЦубеМКС. За више детаља, погледајте одељак 3 корисничког приручника СТМ32ЦубеМКС за СТМ32 конфигурацију и генерисање Ц кода за иницијализацију (УМ1718).

ФАК

  • Када треба да користим ХАЛ уместо ЛЛ драјвера?
    • ХАЛ управљачки програми нуде АПИ-је високог нивоа и функционално оријентисане, са високим нивоом преносивости. Сложеност производа или периферије је скривена за крајње кориснике.
    • ЛЛ драјвери нуде АПИ-је ниског нивоа регистра, са бољом оптимизацијом, али мање преносивим. Захтевају детаљно познавање производа или ИП спецификација.
  • Могу ли заједно да користим ХАЛ и ЛЛ драјвере? Ако могу, која су ограничења?
    • Могуће је користити и ХАЛ и ЛЛ драјвере. Користите ХАЛ за фазу иницијализације ИП-а, а затим управљајте И/О операцијама помоћу ЛЛ драјвера.
    • Главна разлика између ХАЛ-а и ЛЛ-а је у томе што ХАЛ драјвери захтевају да креирају и користе ручке за управљање операцијама, док ЛЛ драјвери раде директно на периферним регистрима. Тхе Екampлес_МИКС екampле илуструје како мешати ХАЛ и ЛЛ.
  • Како су омогућени АПИ-ји за иницијализацију ЛЛ?
    • Дефиниција АПИ-ја за иницијализацију ЛЛ и придружених ресурса (структуре, литерали и прототипови) условљена је прекидачем за компилацију УСЕ_ФУЛЛ_ЛЛ_ДРИВЕР.
    • Да бисте могли да користите АПИ-је за иницијализацију ЛЛ, додајте овај прекидач у претпроцесор компајлера ланца алата.
  • Како СТМ32ЦубеМКС може да генерише код на основу уграђеног софтвера?
    СТМ32ЦубеМКС има уграђено знање о СТМ32 микроконтролерима, укључујући њихове периферије и софтвер који омогућава пружање графичког приказа кориснику и генерисање *.х или *.ц fileс на основу конфигурације корисника.

ВАЖНО ОБАВЕШТЕЊЕ – ПАЖЉИВО ПРОЧИТАЈТЕ

  • СТМицроелецтроницс НВ и његове подружнице („СТ“) задржавају право да у било ком тренутку без претходног обавештења унесу измене, исправке, побољшања, модификације и побољшања СТ производа и/или овог документа. Купци би требало да добију најновије релевантне информације о СТ производима пре наручивања. СТ производи се продају у складу са СТ условима продаје који су на снази у тренутку потврде поруџбине.
  • Купци су искључиво одговорни за избор, избор и употребу СТ производа и СТ не преузима никакву одговорност за помоћ у примени или дизајн производа купаца.
  • СТ овде не даје никакву лиценцу, изричиту или имплицирану, за било које право интелектуалне својине.
  • Препродаја СТ производа са одредбама другачијим од информација наведених овде поништава сваку гаранцију коју СТ даје за такав производ.
  • СТ и СТ лого су заштитни знакови компаније СТ. За додатне информације о СТ заштитним знаковима, погледајте ввв.ст.цом/традемаркс. Сви остали називи производа или услуга су власништво њихових власника.
  • Информације у овом документу замењују и замењују информације које су претходно дате у претходним верзијама овог документа.
  • © 2023 СТМицроелецтроницс – Сва права задржана

Документи / Ресурси

СТМицроелецтроницс СТМ32ВБА серија Почетак [пдф] Упутство за употребу
СТМ32ВБА Серија Почетак рада, почетак рада, почетак

Референце

Оставите коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена *