Modul MCAL EXTI
Podporované rodiny STM32: G4 · H5 · U5
Nepodporované: H7, L4
Modul MCAL EXTI (External Interrupt) poskytuje abstrakčnú vrstvu na správu vedení externých prerušení na mikrokontroléroch STM32.
Tento modul je súčasťou vrstvy MCAL a zaisťuje jednotné API naprieč rôznymi rodinami STM32.
Jednotlivé rodiny sú udržiavané v samostatných vetvách; používateľ sa môže prepnúť na vetvu zodpovedajúcu jeho rodine MCU.
Vlastnosti
- Inicializácia a deinicializácia periférie EXTI
- Task handler na periodické obsluhovanie
- Podpora získania predvolenej konfigurácie
- Štandardizované návratové hodnoty stavu požiadavky
- Podpora verzovania pre správu modulov
Verejné API
Informácie o module
-
Vráti aktuálnu verziu modulu EXTI.exti_ModuleVersion_t Exti_Get_ModuleVersion ( void );
Inicializácia
- exti_RequestState_t Exti_Init ( exti_PeriphConfig_t * const extiConfig );
Inicializuje perifériu EXTI so zadanou konfiguráciou.
- exti_RequestState_t Exti_Deinit ( exti_PeriphConfig_t * const extiConfig );
Deinicializuje perifériu EXTI a resetuje konfiguráciu.
- void Exti_Task ( void );
Obsluhuje periodické úlohy súvisiace s EXTI (ak to implementácia vyžaduje).
- exti_RequestState_t Exti_Get_DefaultConfig ( exti_PeriphConfig_t * const extiConfig );
Získa predvolenú konfiguračnú štruktúru pre inicializáciu EXTI.
Poznámky k použitiu
- Modul EXTI závisí od hardvéru a musí byť nakonfigurovaný pre každú vetvu rodiny STM32.
- API predvolenej konfigurácie pomáha zaistiť bezpečnú inicializáciu.
- Funkciu
Taskje potrebné volať periodicky, ak je implementované asynchrónne spracovanie alebo spracovanie na pozadí.
🛠 Integrácia s CMake
target_link_libraries(User_Lib PRIVATE Exti_Lib)
Licencia
Tento projekt je licencovaný pod licenciou Creative Commons Attribution–NonCommercial 4.0 International (CC BY-NC 4.0).
Toto dielo môžete slobodne používať, upravovať a zdieľať na nekomerčné účely, pokiaľ uvediete primeraný zdroj.
Úplné znenie podmienok nájdete v LICENSE.md alebo na creativecommons.org/licenses/by-nc/4.0.
Autori
- Mr.Nobody — embedbits.com
Príspevky sú vítané! Otvorte prosím pull request.