СТМ32ВЛ3к-лоиго

СТМ32ВЛ3к софтверски пакет

СТМ32ВЛ3к-Софтверски пакет-ПРОДЦУЦТ

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

  • Назив производа: СТМ32ЦубеВЛ3 софтверски пакет
  • Компатибилност: СТМ32ВЛ3к микроконтролери
  • Главне карактеристике:
    • АПИ-ји ниског слоја (ЛЛ) и слоја апстракције хардвера (ХАЛ).
    • Компоненте средњег софтвера језгра СигфокТМ, ФатФС и ФрееРТОСТМ
    • Апликације и демонстрације

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

Геттинг Стартед
Да бисте почели да користите софтверски пакет СТМ32ЦубеВЛ3, следите ове кораке:

  1. Преузмите софтверски пакет са званичног webсајту.
  2. Инсталирајте неопходно развојно окружење (нпр. СТМ32ЦубеИДЕ, ЕВАРМ, МДК-АРМ).
  3. Погледајте прampлесови и апликације дате за смернице.

СТМ32ЦубеВЛ3 Архитектура завршенаview
Софтверски пакет СТМ32ЦубеВЛ3 је изграђен око три главна нивоа

  • Ниво 0: Слој хардверске апстракције (ХАЛ) и БСП драјвери.
  • Ниво 1: Апликације, библиотеке и компоненте засноване на протоколима.

Често постављана питања (ФАК)

П: Које су главне карактеристике софтверског пакета СТМ32ЦубеВЛ3?
О: Главне карактеристике укључују ниско-слојне и ХАЛ АПИ-је, компоненте средњег софтвера као што су СигфокТМ, ФатФС, ФрееРТОСТМ кернел, апликације и демонстрације.

Увод

СТМ32Цубе је оригинална иницијатива компаније СТМицроелецтроницс за значајно побољшање продуктивности дизајнера смањењем напора, времена и трошкова развоја. СТМ32Цубе покрива цео СТМ32 портфолио.

СТМ32Цубе укључује:

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

Ово упутство за употребу описује како да почнете са СТМ32ЦубеВЛ3 МЦУ пакетом.
Одељак 2 описује главне карактеристике СТМ32ЦубеВЛ3, а Одељак 3 пружаview његове архитектуре и структуре МЦУ пакета.

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

СТМ32ЦубеВЛ3 покреће демонстрационе апликације испод ГХз, укључујући Сигфок™ бинарне датотеке, на микроконтролерима линије производа СТМ32ВЛ3к базираним на Арм® Цортек®‑М0+ процесору.
СТМ32ВЛ3к микроконтролери уграђују СТМицроелецтроницс-ову најсавременију РФ радио периферију усклађену са суб-ГХз, оптимизовану за ултра-ниску потрошњу енергије и одличне радио перформансе, за неупоредиво трајање батерије.
Напомена: Арм је регистровани заштитни знак компаније Арм Лимитед (или њених подружница) у САД и/или другде.

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

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

Слика 1. Компоненте СТМ32ЦубеВЛ3 МЦУ пакета 

СТМ32ВЛ3к-Софтверски пакет (2)

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

Решење СТМ32ЦубеВЛ3 МЦУ пакета је изграђено око три независна нивоа који лако ступају у интеракцију као што је описано на слици 2. СТМ32ВЛ3к-Софтверски пакет (3)Ниво 0
Овај ниво је подељен на три подслоја:

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

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

  • компонента:
    Ово је драјвер у односу на спољни уређај на плочи, а не на СТМ32. Драјвер компоненте обезбеђује специфичне АПИ-је спољним компонентама БСП драјвера и може бити преносив на било коју другу плочу.
  • БСП возач:

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

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

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

Карактеристике драјвера ЛЛ:

  • Скуп функција за иницијализацију главних карактеристика периферије према параметрима наведеним у структурама података.
  • Скуп функција за попуњавање иницијализационих структура података са вредностима ресетовања које одговарају сваком пољу.
  • Функција за деиницијализацију периферије (периферијски регистри враћени на њихове подразумеване вредности).
  • Скуп инлине функција за директан и атомски приступ регистрима.
  • Потпуна независност од ХАЛ-а и могућност коришћења у самосталном режиму (без ХАЛ драјвера).
  • Потпуна покривеност подржаних периферних функција.

Основна употреба периферије нпрampлес
Овај слој обухвата екampдатотеке изграђене преко СТМ32 периферних уређаја користећи само ХАЛ и БСП ресурсе.
Демонстрација прampлесови су такође доступни за приказ сложенијих прampле сценарије са специфичним периферијама, као што су МРСУБГ и ЛПАВУР.

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

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

Компоненте средњег софтвера
Међуовер је скуп библиотека које покривају ФрееРТОС™ кернел, ФатФС и Сигфок™ библиотеку протокола. Хоризонтална интеракција између компоненти овог слоја се врши позивањем истакнутих АПИ-ја.
Вертикална интеракција са драјверима ниског слоја се врши кроз специфичне повратне позиве и статичке макрое имплементиране у интерфејс позива система библиотеке.
Главне карактеристике сваке компоненте средњег софтвера су следеће:

  • ФрееРТОС™ кернел: имплементира оперативни систем у реалном времену (РТОС), дизајниран за уграђене системе.
  • Сигфок™: имплементира библиотеку протокола Сигфок™ усклађену са мрежом протокола Сигфок™ и укључује библиотеку РФ тест протокола за тестирање у односу на РФ Сигфок™ алате.
  • ФатФС: имплементира генерички ФАТ file системски модул.

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

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

Подржани СТМ32ВЛ3к уређаји и хардвер
СТМ32Цубе нуди високо преносив слој апстракције хардвера (ХАЛ) изграђен око генеричке архитектуре. Омогућава принцип надградње слојева, као што је коришћење слоја средњег софтвера за имплементацију њихових функција без детаљног сазнања шта се МЦУ користи. Ово побољшава поновну употребу кода библиотеке и обезбеђује лаку преносивост на друге уређаје.

  • Поред тога, са својом слојевитом архитектуром, СТМ32ЦубеВЛ3 нуди пуну подршку за сву линију производа СТМ32ВЛ3к.
  • Корисник мора само да дефинише прави макро у стм32вл3к.х.

Табела 1 приказује макро који треба дефинисати у зависности од уређаја из линије производа СТМ32ВЛ3к који се користи. Овај макро такође мора бити дефинисан у претпроцесору компајлера.
Табела 1. Макрои за линију производа СТМ32ВЛ3к

Макро дефинисан у стм32вл3к.х СТМ32ВЛ3к уређаји из линије производа
стм32вл33 СТМ32ВЛ33кк микроконтролери

СТМ32ЦубеВЛ3 има богат скуп екampдатотеке и апликације на свим нивоима, што олакшава разумевање и коришћење било ког ХАЛ драјвера или компоненти међувера. Ови бившиampраде на СТМицроелецтроницс плочама наведеним у табели 2.

одбора Уређаји који подржавају СТМ32ВЛ3к плочу
НУЦЛЕО-ВЛ33ЦЦ1 СТМ32ВЛ33ЦЦ
НУЦЛЕО-ВЛ33ЦЦ2 СТМ32ВЛ33ЦЦ

СТМ32ЦубеВЛ3 МЦУ пакет може да ради на било ком компатибилном хардверу. Корисници једноставно ажурирају БСП драјвере да пренесу дате екampдатотеке на њиховим плочама, ако оне имају исте хардверске карактеристике (као што су ЛЕД диоде или дугмад).

Пакет фирмвера је готовview
Решење СТМ32ЦубеВЛ3 МЦУ пакета је обезбеђено у једном зип пакету који има структуру приказану на слици 3.
Слика 3. Структура пакета фирмвера СТМ32ЦубеВЛ3

СТМ32ВЛ3к-Софтверски пакет (4)

Опрез:

Корисник не сме да мења компоненте fileс. Корисник може да уређује само изворе \Пројецтс.
За сваку таблу, сет екampлес има унапред конфигурисане пројекте за ланове алата ЕВАРМ, МДК-АРМ и СТМ32ЦубеИДЕ.
Слика 4 приказује структуру пројекта за НУЦЛЕО-ВЛ33ЦЦк плоче. СТМ32ВЛ3к-Софтверски пакет (5)

Бившиampдатотеке су класификоване у зависности од нивоа СТМ32ЦубеВЛ3 на који се примењују. Називају се на следећи начин:

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

Било која апликација фирмвера за дату плочу може се брзо изградити коришћењем шаблонских пројеката доступних у директоријумима Темплатес и Темплатес_ЛЛ.

Exampлес, прampлес_ЛЛ, и прampлес_МИКС имају исту структуру:

  • \Инц фолдер који садржи сва заглавља files.
  • \Срц фолдер који садржи изворни код.
  • \ЕВАРМ, \МДК-АРМ и \СТМ32ЦубеИДЕ фасцикле које садрже унапред конфигурисан пројекат за сваки ланац алата.
  • реадме.мд и реадме.хтмл који описују прampпонашање и потребно окружење да би то функционисало.

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

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

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

Како покренути ХАЛ екample
Пре учитавања и покретања екampле, топло се препоручује да прочитате прampле реадме file за било коју специфичну конфигурацију.

  1. Идите на \Пројецтс\НУЦЛЕО-ВЛ33ЦЦ\Екampлес.
  2. Отворите фасцикле \ГПИО, а затим \ГПИО_ЕКСТИ.
  3. Отворите пројекат са жељеним ланцем алата. Брзи крајview о томе како отворити, изградити и покренути екampле са подржаним ланцима алата дат је у наставку.
  4. Ребуилд алл fileс и учитајте слику у циљну меморију.
  5. Покрени екampле. За више детаља, погледајте прampле реадме file.

Да отворите, направите и покренете ек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)].

Развој прилагођене апликације

Коришћење СТМ32ЦубеМКС за развој или ажурирање апликације
У СТМ32Цубе МЦУ пакету, скоро сви пројекти екampдатотеке се генеришу помоћу алата СТМ32ЦубеМКС за иницијализацију система, периферних уређаја и међувера.

Директно коришћење постојећег пројекта нпрampдатотека из СТМ32ЦубеМКС алата захтева СТМ32ЦубеМКС 6.12.0 или новију:

  • Након инсталације СТМ32ЦубеМКС, отворите и ако је потребно ажурирајте предложени пројекат.
    Најједноставнији начин да отворите постојећи пројекат је да двапут кликнете на *.иоц file тако да СТМ32ЦубеМКС аутоматски отвара пројекат и његов извор fileс. СТМ32ЦубеМКС генерише изворни код за иницијализацију таквих пројеката.
  • Главни изворни код апликације је садржан у коментарима „КОРИСНИЧКИ КОД ПОЧИЊЕ“ и „КОРИСНИЧКИ КОД КРАЈ“. Ако су избор периферије и подешавања измењени, СТМ32ЦубеМКС ажурира иницијализациони део кода уз очување изворног кода главне апликације.

Да бисте развили прилагођени пројекат са СТМ32ЦубеМКС, пратите корак по корак процес:

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

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

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

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

Опрез:
У подразумеваној ХАЛ имплементацији, СисТицк тајмер се користи као временска база: генерише прекиде у редовним временским интервалима. Ако је ХАЛ_Делаи() позван из периферног ИСР процеса, уверите се да СисТицк прекид има већи приоритет (нумерички нижи) од периферног прекида. У супротном, процес ИСР позиваоца је
блокиран. Функције које утичу на конфигурацију временске базе су декларисане као __слабе да би се омогућило заобилажење у случају других имплементација код корисника file (користећи тајмер опште намене, нпрampле, или други извор времена).
За више детаља погледајте ХАЛ_ТимеБасе прampле.

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

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

Дакле, главни кораци преноса су следећи:

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

Са овим модификацијама, прampле ради на циљној табли.

РФ апликације, демонстрације и нпрampлес
Различите врсте РФ апликација, демонстрација и нпрampдатотеке су доступне у СТМ32ЦубеВЛ3 пакету. Они су наведени у два одељка испод.

Суб-ГХз прampлес и демонстрације
Ови бившиampЛес демонстрирају главне карактеристике МРСУБГ и ЛПАВУР радио периферије. Ови бившиampлесови су доступни под:

  • Пројекти\НУЦЛЕО-ВЛ33ЦЦ\Екampлес\МРСУБГ
  • Пројекти\НУЦЛЕО-ВЛ33ЦЦ\Екampлес\ЛПАВУР
  • Пројецтс\НУЦЛЕО-ВЛ33ЦЦ\Демонстратионс\МРСУБГ
  • Пројекти\НУЦЛЕО-ВЛ33ЦЦ\Демонстратионс\ЛПАВУР

Сваки бившиampле или демонстрација се генерално састоји од два програма названа Тк и Рк који делују као предајник и пријемник, респективно:

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

Сигфок™ апликација
Ове апликације показују како имплементирати Сигфок™ сценарио и користити доступне Сигфок™ АПИ-је. Доступни су на путањи пројекта Пројецтс\НУЦЛЕО-ВЛ33ЦЦ\Апплицатионс\Сигфок\:

  • Сигфок_ЦЛИ: Ова апликација показује како се користи интерфејс командне линије (ЦЛИ) за слање команди које користе Сигфок™ протокол за слање порука и извођење предсертификационих тестова.
  • Сигфок_ПусхБуттон: Ова апликација омогућава процену радио могућности СТМ32ВЛ33кк Сигфок™ уређаја. Притиском на ПБ1 преноси се пробни Сигфок™ оквир.

ФАК

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

Историја ревизија

Табела 3. Историја ревизије документа

Датум Ревизија Промене
29-мар-2024 1 Првобитно издање.
30-окт-2024 2 Потпуна интеграција од СТМ32ЦубеВЛ3 in СТМ32Цубе. Ажурирано:

Уклоњено:

  • ПЦ алати, укључујући Навигатор, СТМ32ВЛ3 ГУИ, и МР-СУБГ секвенцер ГУИ
  • Како ВиСЕ-Студио ИОМаппер може да генерише код на основу уграђеног софтвера?
  • Да ли Навигатор дозвољава приступ ресурсима софтверског пакета?

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

СТ СТМ32ВЛ3к софтверски пакет [пдфУпутства
СТМ32ВЛ3к софтверски пакет, СТМ32ВЛ3к, софтверски пакет, пакет

Референце

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

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