From 3347044f7f35a8378e826e4acb9044e9fcee2211 Mon Sep 17 00:00:00 2001 From: kevin Date: Fri, 15 Apr 2022 12:39:13 +0800 Subject: [PATCH] new code project Signed-off-by: kevin --- Morse_code_PCB/Morse_code_PCB.kicad_prl | 2 +- f103c8t6_HAL/.cproject | 170 + f103c8t6_HAL/.mxproject | 25 + {stm32f103 => f103c8t6_HAL}/.project | 4 +- .../.settings/language.settings.xml | 8 +- .../.settings/stm32cubeide.project.prefs | 3 + {stm32f103 => f103c8t6_HAL}/Core/Inc/main.h | 139 +- .../Core/Inc/stm32f1xx_hal_conf.h | 782 +- .../Core/Inc/stm32f1xx_it.h | 136 +- {stm32f103 => f103c8t6_HAL}/Core/Src/main.c | 522 +- f103c8t6_HAL/Core/Src/stm32f1xx_hal_msp.c | 85 + .../Core/Src/stm32f1xx_it.c | 422 +- .../Core/Src/syscalls.c | 11 +- {stm32f103 => f103c8t6_HAL}/Core/Src/sysmem.c | 11 +- .../Core/Src/system_stm32f1xx.c | 816 +- .../Core/Startup/startup_stm32f103c8tx.s | 730 +- .../Debug/Core/Src/main.d | 28 +- f103c8t6_HAL/Debug/Core/Src/main.o | Bin 0 -> 701728 bytes f103c8t6_HAL/Debug/Core/Src/main.su | 4 + .../Debug/Core/Src/stm32f1xx_hal_msp.d | 23 +- .../Debug/Core/Src/stm32f1xx_hal_msp.o | Bin 0 -> 699624 bytes .../Debug/Core/Src/stm32f1xx_hal_msp.su | 1 + .../Debug/Core/Src/stm32f1xx_it.d | 21 - f103c8t6_HAL/Debug/Core/Src/stm32f1xx_it.o | Bin 0 -> 701304 bytes f103c8t6_HAL/Debug/Core/Src/stm32f1xx_it.su | 9 + .../Debug/Core/Src/subdir.mk | 2 +- .../Debug/Core/Src/syscalls.d | 0 f103c8t6_HAL/Debug/Core/Src/syscalls.o | Bin 0 -> 81388 bytes f103c8t6_HAL/Debug/Core/Src/syscalls.su | 18 + .../Debug/Core/Src/sysmem.d | 0 f103c8t6_HAL/Debug/Core/Src/sysmem.o | Bin 0 -> 51308 bytes f103c8t6_HAL/Debug/Core/Src/sysmem.su | 1 + .../Debug/Core/Src/system_stm32f1xx.d | 23 +- .../Debug/Core/Src/system_stm32f1xx.o | Bin 0 -> 700500 bytes .../Debug/Core/Src/system_stm32f1xx.su | 0 .../Core/Startup/startup_stm32f103c8tx.d | 0 .../Core/Startup/startup_stm32f103c8tx.o | Bin 5240 -> 5248 bytes .../Debug/Core/Startup/subdir.mk | 0 .../STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d | 23 +- .../STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o | Bin 0 -> 711708 bytes .../STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.su | 0 .../Src/stm32f1xx_hal_cortex.d | 23 +- .../Src/stm32f1xx_hal_cortex.o | Bin 0 -> 715464 bytes .../Src/stm32f1xx_hal_cortex.su | 0 .../Src/stm32f1xx_hal_dma.d | 23 +- .../Src/stm32f1xx_hal_dma.o | Bin 0 -> 710680 bytes .../Src/stm32f1xx_hal_dma.su | 0 .../Src/stm32f1xx_hal_exti.d | 23 +- .../Src/stm32f1xx_hal_exti.o | Bin 0 -> 705236 bytes .../Src/stm32f1xx_hal_exti.su | 0 .../Src/stm32f1xx_hal_flash.d | 23 +- .../Src/stm32f1xx_hal_flash.o | Bin 0 -> 708008 bytes .../Src/stm32f1xx_hal_flash.su | 0 .../Src/stm32f1xx_hal_flash_ex.d | 23 +- .../Src/stm32f1xx_hal_flash_ex.o | Bin 0 -> 711256 bytes .../Src/stm32f1xx_hal_flash_ex.su | 0 .../Src/stm32f1xx_hal_gpio.d | 23 +- .../Src/stm32f1xx_hal_gpio.o | Bin 0 -> 706660 bytes .../Src/stm32f1xx_hal_gpio.su | 0 .../Src/stm32f1xx_hal_gpio_ex.d | 23 +- .../Src/stm32f1xx_hal_gpio_ex.o | Bin 0 -> 700008 bytes .../Src/stm32f1xx_hal_gpio_ex.su | 0 .../Src/stm32f1xx_hal_pwr.d | 23 +- .../Src/stm32f1xx_hal_pwr.o | Bin 0 -> 708656 bytes .../Src/stm32f1xx_hal_pwr.su | 0 .../Src/stm32f1xx_hal_rcc.d | 23 +- .../Src/stm32f1xx_hal_rcc.o | Bin 0 -> 712360 bytes .../Src/stm32f1xx_hal_rcc.su | 0 .../Src/stm32f1xx_hal_rcc_ex.d | 23 +- .../Src/stm32f1xx_hal_rcc_ex.o | Bin 0 -> 702792 bytes .../Src/stm32f1xx_hal_rcc_ex.su | 0 .../Src/stm32f1xx_hal_tim.d | 23 +- .../Src/stm32f1xx_hal_tim.o | Bin 0 -> 698140 bytes .../Src/stm32f1xx_hal_tim.su | 0 .../Src/stm32f1xx_hal_tim_ex.d | 23 +- .../Src/stm32f1xx_hal_tim_ex.o | Bin 0 -> 698148 bytes .../Src/stm32f1xx_hal_tim_ex.su | 0 .../STM32F1xx_HAL_Driver/Src/subdir.mk | 63 + f103c8t6_HAL/Debug/f103c8t6_HAL.bin | Bin 0 -> 3652 bytes f103c8t6_HAL/Debug/f103c8t6_HAL.elf | Bin 0 -> 765372 bytes f103c8t6_HAL/Debug/f103c8t6_HAL.list | 2596 ++ f103c8t6_HAL/Debug/f103c8t6_HAL.map | 2353 ++ {stm32f103 => f103c8t6_HAL}/Debug/makefile | 28 +- .../Debug/objects.list | 15 - {stm32f103 => f103c8t6_HAL}/Debug/objects.mk | 0 {stm32f103 => f103c8t6_HAL}/Debug/sources.mk | 4 - .../Device/ST/STM32F1xx/Include/stm32f103xb.h | 20484 ++++++++-------- .../Device/ST/STM32F1xx/Include/stm32f1xx.h | 550 +- .../ST/STM32F1xx/Include/system_stm32f1xx.h | 196 +- .../CMSIS/Device/ST/STM32F1xx/License.md | 0 .../Drivers/CMSIS/Include/cmsis_armcc.h | 1730 +- .../Drivers/CMSIS/Include/cmsis_armclang.h | 3738 +-- .../Drivers/CMSIS/Include/cmsis_compiler.h | 532 +- .../Drivers/CMSIS/Include/cmsis_gcc.h | 4170 ++-- .../Drivers/CMSIS/Include/cmsis_iccarm.h | 1870 +- .../Drivers/CMSIS/Include/cmsis_version.h | 78 +- .../Drivers/CMSIS/Include/core_armv8mbl.h | 3836 +-- .../Drivers/CMSIS/Include/core_armv8mml.h | 5854 ++--- .../Drivers/CMSIS/Include/core_cm0.h | 1898 +- .../Drivers/CMSIS/Include/core_cm0plus.h | 2166 +- .../Drivers/CMSIS/Include/core_cm1.h | 1952 +- .../Drivers/CMSIS/Include/core_cm23.h | 3986 +-- .../Drivers/CMSIS/Include/core_cm3.h | 3882 +-- .../Drivers/CMSIS/Include/core_cm33.h | 6004 ++--- .../Drivers/CMSIS/Include/core_cm4.h | 4258 ++-- .../Drivers/CMSIS/Include/core_cm7.h | 5342 ++-- .../Drivers/CMSIS/Include/core_sc000.h | 2044 +- .../Drivers/CMSIS/Include/core_sc300.h | 3830 +-- .../Drivers/CMSIS/Include/mpu_armv7.h | 540 +- .../Drivers/CMSIS/Include/mpu_armv8.h | 666 +- .../Drivers/CMSIS/Include/tz_context.h | 140 +- .../Drivers/CMSIS/LICENSE.txt | 0 .../Inc/Legacy/stm32_hal_legacy.h | 7566 +++--- .../STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h | 716 +- .../Inc/stm32f1xx_hal_cortex.h | 820 +- .../Inc/stm32f1xx_hal_def.h | 420 +- .../Inc/stm32f1xx_hal_dma.h | 914 +- .../Inc/stm32f1xx_hal_dma_ex.h | 554 +- .../Inc/stm32f1xx_hal_exti.h | 640 +- .../Inc/stm32f1xx_hal_flash.h | 656 +- .../Inc/stm32f1xx_hal_flash_ex.h | 1572 +- .../Inc/stm32f1xx_hal_gpio.h | 616 +- .../Inc/stm32f1xx_hal_gpio_ex.h | 1788 +- .../Inc/stm32f1xx_hal_pwr.h | 776 +- .../Inc/stm32f1xx_hal_rcc.h | 2756 +-- .../Inc/stm32f1xx_hal_rcc_ex.h | 3816 +-- .../Inc/stm32f1xx_hal_tim.h | 4258 ++-- .../Inc/stm32f1xx_hal_tim_ex.h | 524 +- .../Drivers/STM32F1xx_HAL_Driver/License.md | 0 .../STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c | 1212 +- .../Src/stm32f1xx_hal_cortex.c | 1010 +- .../Src/stm32f1xx_hal_dma.c | 1798 +- .../Src/stm32f1xx_hal_exti.c | 1110 +- .../Src/stm32f1xx_hal_flash.c | 1934 +- .../Src/stm32f1xx_hal_flash_ex.c | 2254 +- .../Src/stm32f1xx_hal_gpio.c | 1174 +- .../Src/stm32f1xx_hal_gpio_ex.c | 254 +- .../Src/stm32f1xx_hal_pwr.c | 1242 +- .../Src/stm32f1xx_hal_rcc.c | 2806 +-- .../Src/stm32f1xx_hal_rcc_ex.c | 1726 +- .../Src/stm32f1xx_hal_tim.c | 14966 +++++------ .../Src/stm32f1xx_hal_tim_ex.c | 4670 ++-- .../STM32F103C8TX_FLASH.ld | 15 +- f103c8t6_HAL/f103c8t6_HAL.ioc | 95 + f103c8t6_HAL/f103c8t6_HAL.launch | 79 + .../.settings/language.settings.xml | 4 +- stm32f103/.cproject | 183 - stm32f103/.mxproject | 37 - .../.settings/stm32cubeide.project.prefs | 4 - stm32f103/Core/Src/stm32f1xx_hal_msp.c | 281 - stm32f103/Debug/Core/Src/main.d | 99 - stm32f103/Debug/Core/Src/main.o | Bin 802464 -> 0 bytes stm32f103/Debug/Core/Src/main.su | 7 - stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.o | Bin 761404 -> 0 bytes stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.su | 7 - stm32f103/Debug/Core/Src/stm32f1xx_it.o | Bin 757044 -> 0 bytes stm32f103/Debug/Core/Src/stm32f1xx_it.su | 10 - stm32f103/Debug/Core/Src/syscalls.o | Bin 81388 -> 0 bytes stm32f103/Debug/Core/Src/syscalls.su | 18 - stm32f103/Debug/Core/Src/sysmem.o | Bin 51304 -> 0 bytes stm32f103/Debug/Core/Src/sysmem.su | 1 - stm32f103/Debug/Core/Src/system_stm32f1xx.o | Bin 752796 -> 0 bytes .../STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o | Bin 764008 -> 0 bytes .../Src/stm32f1xx_hal_adc.d | 89 - .../Src/stm32f1xx_hal_adc.o | Bin 772296 -> 0 bytes .../Src/stm32f1xx_hal_adc.su | 27 - .../Src/stm32f1xx_hal_adc_ex.d | 89 - .../Src/stm32f1xx_hal_adc_ex.o | Bin 765996 -> 0 bytes .../Src/stm32f1xx_hal_adc_ex.su | 13 - .../Src/stm32f1xx_hal_cortex.o | Bin 767764 -> 0 bytes .../Src/stm32f1xx_hal_dma.o | Bin 762980 -> 0 bytes .../Src/stm32f1xx_hal_exti.o | Bin 757536 -> 0 bytes .../Src/stm32f1xx_hal_flash.o | Bin 760308 -> 0 bytes .../Src/stm32f1xx_hal_flash_ex.o | Bin 763552 -> 0 bytes .../Src/stm32f1xx_hal_gpio.o | Bin 758956 -> 0 bytes .../Src/stm32f1xx_hal_gpio_ex.o | Bin 752308 -> 0 bytes .../Src/stm32f1xx_hal_i2c.d | 89 - .../Src/stm32f1xx_hal_i2c.o | Bin 833820 -> 0 bytes .../Src/stm32f1xx_hal_i2c.su | 81 - .../Src/stm32f1xx_hal_pcd.d | 89 - .../Src/stm32f1xx_hal_pcd.o | Bin 782032 -> 0 bytes .../Src/stm32f1xx_hal_pcd.su | 36 - .../Src/stm32f1xx_hal_pcd_ex.d | 89 - .../Src/stm32f1xx_hal_pcd_ex.o | Bin 756188 -> 0 bytes .../Src/stm32f1xx_hal_pcd_ex.su | 4 - .../Src/stm32f1xx_hal_pwr.o | Bin 760956 -> 0 bytes .../Src/stm32f1xx_hal_rcc.o | Bin 764660 -> 0 bytes .../Src/stm32f1xx_hal_rcc_ex.o | Bin 755092 -> 0 bytes .../Src/stm32f1xx_hal_tim.o | Bin 750440 -> 0 bytes .../Src/stm32f1xx_hal_tim_ex.o | Bin 750448 -> 0 bytes .../Src/stm32f1xx_hal_uart.d | 89 - .../Src/stm32f1xx_hal_uart.o | Bin 792800 -> 0 bytes .../Src/stm32f1xx_hal_uart.su | 61 - .../Src/stm32f1xx_ll_usb.o | Bin 780800 -> 0 bytes .../Src/stm32f1xx_ll_usb.su | 27 - .../STM32F1xx_HAL_Driver/Src/subdir.mk | 84 - .../Class/DFU/Src/subdir.mk | 27 - .../Class/DFU/Src/usbd_dfu.d | 115 - .../Class/DFU/Src/usbd_dfu.o | Bin 813884 -> 0 bytes .../Class/DFU/Src/usbd_dfu.su | 23 - .../Core/Src/subdir.mk | 33 - .../Core/Src/usbd_core.d | 109 - .../Core/Src/usbd_core.o | Bin 804264 -> 0 bytes .../Core/Src/usbd_core.su | 20 - .../Core/Src/usbd_ctlreq.d | 112 - .../Core/Src/usbd_ctlreq.o | Bin 805184 -> 0 bytes .../Core/Src/usbd_ctlreq.su | 14 - .../Core/Src/usbd_ioreq.d | 109 - .../Core/Src/usbd_ioreq.o | Bin 797168 -> 0 bytes .../Core/Src/usbd_ioreq.su | 7 - stm32f103/Debug/USB_DEVICE/App/subdir.mk | 33 - stm32f103/Debug/USB_DEVICE/App/usb_device.d | 126 - stm32f103/Debug/USB_DEVICE/App/usb_device.o | Bin 797524 -> 0 bytes stm32f103/Debug/USB_DEVICE/App/usb_device.su | 1 - stm32f103/Debug/USB_DEVICE/App/usbd_desc.d | 114 - stm32f103/Debug/USB_DEVICE/App/usbd_desc.o | Bin 798784 -> 0 bytes stm32f103/Debug/USB_DEVICE/App/usbd_desc.su | 9 - stm32f103/Debug/USB_DEVICE/App/usbd_dfu_if.d | 114 - stm32f103/Debug/USB_DEVICE/App/usbd_dfu_if.o | Bin 799204 -> 0 bytes stm32f103/Debug/USB_DEVICE/App/usbd_dfu_if.su | 6 - stm32f103/Debug/USB_DEVICE/Target/subdir.mk | 27 - stm32f103/Debug/USB_DEVICE/Target/usbd_conf.d | 117 - stm32f103/Debug/USB_DEVICE/Target/usbd_conf.o | Bin 818660 -> 0 bytes .../Debug/USB_DEVICE/Target/usbd_conf.su | 32 - stm32f103/Debug/stm32f103.bin | Bin 33160 -> 0 bytes stm32f103/Debug/stm32f103.elf | Bin 1062724 -> 0 bytes stm32f103/Debug/stm32f103.list | 20234 --------------- stm32f103/Debug/stm32f103.map | 5551 ----- .../Inc/stm32f1xx_hal_adc.h | 1004 - .../Inc/stm32f1xx_hal_adc_ex.h | 710 - .../Inc/stm32f1xx_hal_i2c.h | 740 - .../Inc/stm32f1xx_hal_pcd.h | 1065 - .../Inc/stm32f1xx_hal_pcd_ex.h | 88 - .../Inc/stm32f1xx_hal_uart.h | 887 - .../Inc/stm32f1xx_ll_usb.h | 678 - .../Src/stm32f1xx_hal_adc.c | 2437 -- .../Src/stm32f1xx_hal_adc_ex.c | 1337 - .../Src/stm32f1xx_hal_i2c.c | 7618 ------ .../Src/stm32f1xx_hal_pcd.c | 2579 -- .../Src/stm32f1xx_hal_pcd_ex.c | 244 - .../Src/stm32f1xx_hal_uart.c | 3738 --- .../Src/stm32f1xx_ll_usb.c | 2771 --- .../Class/DFU/Inc/usbd_dfu.h | 237 - .../Class/DFU/Src/usbd_dfu.c | 1133 - .../Core/Inc/usbd_core.h | 161 - .../Core/Inc/usbd_ctlreq.h | 105 - .../Core/Inc/usbd_def.h | 348 - .../Core/Inc/usbd_ioreq.h | 119 - .../Core/Src/usbd_core.c | 611 - .../Core/Src/usbd_ctlreq.c | 918 - .../Core/Src/usbd_ioreq.c | 216 - stm32f103/USB_DEVICE/App/usb_device.c | 102 - stm32f103/USB_DEVICE/App/usb_device.h | 105 - stm32f103/USB_DEVICE/App/usbd_desc.c | 394 - stm32f103/USB_DEVICE/App/usbd_desc.h | 145 - stm32f103/USB_DEVICE/App/usbd_dfu_if.c | 252 - stm32f103/USB_DEVICE/App/usbd_dfu_if.h | 128 - stm32f103/USB_DEVICE/Target/usbd_conf.c | 658 - stm32f103/USB_DEVICE/Target/usbd_conf.h | 183 - stm32f103/stm32f103.ioc | 148 - 260 files changed, 79397 insertions(+), 134750 deletions(-) create mode 100644 f103c8t6_HAL/.cproject create mode 100644 f103c8t6_HAL/.mxproject rename {stm32f103 => f103c8t6_HAL}/.project (97%) rename {stm32f103 => f103c8t6_HAL}/.settings/language.settings.xml (85%) create mode 100644 f103c8t6_HAL/.settings/stm32cubeide.project.prefs rename {stm32f103 => f103c8t6_HAL}/Core/Inc/main.h (76%) rename {stm32f103 => f103c8t6_HAL}/Core/Inc/stm32f1xx_hal_conf.h (93%) rename {stm32f103 => f103c8t6_HAL}/Core/Inc/stm32f1xx_it.h (73%) rename {stm32f103 => f103c8t6_HAL}/Core/Src/main.c (52%) create mode 100644 f103c8t6_HAL/Core/Src/stm32f1xx_hal_msp.c rename {stm32f103 => f103c8t6_HAL}/Core/Src/stm32f1xx_it.c (82%) rename {stm32f103 => f103c8t6_HAL}/Core/Src/syscalls.c (86%) rename {stm32f103 => f103c8t6_HAL}/Core/Src/sysmem.c (87%) rename {stm32f103 => f103c8t6_HAL}/Core/Src/system_stm32f1xx.c (97%) rename {stm32f103 => f103c8t6_HAL}/Core/Startup/startup_stm32f103c8tx.s (96%) rename stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.d => f103c8t6_HAL/Debug/Core/Src/main.d (70%) create mode 100644 f103c8t6_HAL/Debug/Core/Src/main.o create mode 100644 f103c8t6_HAL/Debug/Core/Src/main.su rename {stm32f103 => f103c8t6_HAL}/Debug/Core/Src/stm32f1xx_hal_msp.d (73%) create mode 100644 f103c8t6_HAL/Debug/Core/Src/stm32f1xx_hal_msp.o create mode 100644 f103c8t6_HAL/Debug/Core/Src/stm32f1xx_hal_msp.su rename {stm32f103 => f103c8t6_HAL}/Debug/Core/Src/stm32f1xx_it.d (75%) create mode 100644 f103c8t6_HAL/Debug/Core/Src/stm32f1xx_it.o create mode 100644 f103c8t6_HAL/Debug/Core/Src/stm32f1xx_it.su rename {stm32f103 => f103c8t6_HAL}/Debug/Core/Src/subdir.mk (73%) rename {stm32f103 => f103c8t6_HAL}/Debug/Core/Src/syscalls.d (100%) create mode 100644 f103c8t6_HAL/Debug/Core/Src/syscalls.o create mode 100644 f103c8t6_HAL/Debug/Core/Src/syscalls.su rename {stm32f103 => f103c8t6_HAL}/Debug/Core/Src/sysmem.d (100%) create mode 100644 f103c8t6_HAL/Debug/Core/Src/sysmem.o create mode 100644 f103c8t6_HAL/Debug/Core/Src/sysmem.su rename {stm32f103 => f103c8t6_HAL}/Debug/Core/Src/system_stm32f1xx.d (73%) create mode 100644 f103c8t6_HAL/Debug/Core/Src/system_stm32f1xx.o rename {stm32f103 => f103c8t6_HAL}/Debug/Core/Src/system_stm32f1xx.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Core/Startup/startup_stm32f103c8tx.d (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Core/Startup/startup_stm32f103c8tx.o (81%) rename {stm32f103 => f103c8t6_HAL}/Debug/Core/Startup/subdir.mk (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d (73%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.d (73%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d (73%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.d (73%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.d (73%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.d (74%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.d (73%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d (74%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d (73%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.d (73%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.d (73%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.d (73%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.su (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.d (73%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o rename {stm32f103 => f103c8t6_HAL}/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.su (100%) create mode 100644 f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk create mode 100644 f103c8t6_HAL/Debug/f103c8t6_HAL.bin create mode 100644 f103c8t6_HAL/Debug/f103c8t6_HAL.elf create mode 100644 f103c8t6_HAL/Debug/f103c8t6_HAL.list create mode 100644 f103c8t6_HAL/Debug/f103c8t6_HAL.map rename {stm32f103 => f103c8t6_HAL}/Debug/makefile (64%) rename {stm32f103 => f103c8t6_HAL}/Debug/objects.list (54%) rename {stm32f103 => f103c8t6_HAL}/Debug/objects.mk (100%) rename {stm32f103 => f103c8t6_HAL}/Debug/sources.mk (80%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h (95%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Device/ST/STM32F1xx/License.md (100%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/cmsis_armcc.h (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/cmsis_armclang.h (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/cmsis_compiler.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/cmsis_gcc.h (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/cmsis_iccarm.h (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/cmsis_version.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_armv8mbl.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_armv8mml.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_cm0.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_cm0plus.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_cm1.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_cm23.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_cm3.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_cm33.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_cm4.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_cm7.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_sc000.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/core_sc300.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/mpu_armv7.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/mpu_armv8.h (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/Include/tz_context.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/CMSIS/LICENSE.txt (100%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h (98%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/License.md (100%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c (97%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c (96%) rename {stm32f103 => f103c8t6_HAL}/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c (97%) rename {stm32f103 => f103c8t6_HAL}/STM32F103C8TX_FLASH.ld (90%) create mode 100644 f103c8t6_HAL/f103c8t6_HAL.ioc create mode 100644 f103c8t6_HAL/f103c8t6_HAL.launch delete mode 100644 stm32f103/.cproject delete mode 100644 stm32f103/.mxproject delete mode 100644 stm32f103/.settings/stm32cubeide.project.prefs delete mode 100644 stm32f103/Core/Src/stm32f1xx_hal_msp.c delete mode 100644 stm32f103/Debug/Core/Src/main.d delete mode 100644 stm32f103/Debug/Core/Src/main.o delete mode 100644 stm32f103/Debug/Core/Src/main.su delete mode 100644 stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.o delete mode 100644 stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.su delete mode 100644 stm32f103/Debug/Core/Src/stm32f1xx_it.o delete mode 100644 stm32f103/Debug/Core/Src/stm32f1xx_it.su delete mode 100644 stm32f103/Debug/Core/Src/syscalls.o delete mode 100644 stm32f103/Debug/Core/Src/syscalls.su delete mode 100644 stm32f103/Debug/Core/Src/sysmem.o delete mode 100644 stm32f103/Debug/Core/Src/sysmem.su delete mode 100644 stm32f103/Debug/Core/Src/system_stm32f1xx.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.d delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.su delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.d delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.su delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.d delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.su delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.d delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.su delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.d delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.su delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.d delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.su delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.o delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.su delete mode 100644 stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/subdir.mk delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.d delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.o delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.su delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Core/Src/subdir.mk delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.d delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.o delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.su delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.d delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.o delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.su delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.d delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.o delete mode 100644 stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.su delete mode 100644 stm32f103/Debug/USB_DEVICE/App/subdir.mk delete mode 100644 stm32f103/Debug/USB_DEVICE/App/usb_device.d delete mode 100644 stm32f103/Debug/USB_DEVICE/App/usb_device.o delete mode 100644 stm32f103/Debug/USB_DEVICE/App/usb_device.su delete mode 100644 stm32f103/Debug/USB_DEVICE/App/usbd_desc.d delete mode 100644 stm32f103/Debug/USB_DEVICE/App/usbd_desc.o delete mode 100644 stm32f103/Debug/USB_DEVICE/App/usbd_desc.su delete mode 100644 stm32f103/Debug/USB_DEVICE/App/usbd_dfu_if.d delete mode 100644 stm32f103/Debug/USB_DEVICE/App/usbd_dfu_if.o delete mode 100644 stm32f103/Debug/USB_DEVICE/App/usbd_dfu_if.su delete mode 100644 stm32f103/Debug/USB_DEVICE/Target/subdir.mk delete mode 100644 stm32f103/Debug/USB_DEVICE/Target/usbd_conf.d delete mode 100644 stm32f103/Debug/USB_DEVICE/Target/usbd_conf.o delete mode 100644 stm32f103/Debug/USB_DEVICE/Target/usbd_conf.su delete mode 100755 stm32f103/Debug/stm32f103.bin delete mode 100755 stm32f103/Debug/stm32f103.elf delete mode 100644 stm32f103/Debug/stm32f103.list delete mode 100644 stm32f103/Debug/stm32f103.map delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.c delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.c delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.c delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.c delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c delete mode 100644 stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c delete mode 100644 stm32f103/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Inc/usbd_dfu.h delete mode 100644 stm32f103/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.c delete mode 100644 stm32f103/Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_core.h delete mode 100644 stm32f103/Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ctlreq.h delete mode 100644 stm32f103/Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h delete mode 100644 stm32f103/Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h delete mode 100644 stm32f103/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c delete mode 100644 stm32f103/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c delete mode 100644 stm32f103/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c delete mode 100644 stm32f103/USB_DEVICE/App/usb_device.c delete mode 100644 stm32f103/USB_DEVICE/App/usb_device.h delete mode 100644 stm32f103/USB_DEVICE/App/usbd_desc.c delete mode 100644 stm32f103/USB_DEVICE/App/usbd_desc.h delete mode 100644 stm32f103/USB_DEVICE/App/usbd_dfu_if.c delete mode 100644 stm32f103/USB_DEVICE/App/usbd_dfu_if.h delete mode 100644 stm32f103/USB_DEVICE/Target/usbd_conf.c delete mode 100644 stm32f103/USB_DEVICE/Target/usbd_conf.h delete mode 100644 stm32f103/stm32f103.ioc diff --git a/Morse_code_PCB/Morse_code_PCB.kicad_prl b/Morse_code_PCB/Morse_code_PCB.kicad_prl index 9a8a4b4..41ade6d 100644 --- a/Morse_code_PCB/Morse_code_PCB.kicad_prl +++ b/Morse_code_PCB/Morse_code_PCB.kicad_prl @@ -61,7 +61,7 @@ 35, 36 ], - "visible_layers": "fffffff_ffffffff", + "visible_layers": "ffebfaa_7fffffff", "zone_display_mode": 0 }, "meta": { diff --git a/f103c8t6_HAL/.cproject b/f103c8t6_HAL/.cproject new file mode 100644 index 0000000..a2b2e16 --- /dev/null +++ b/f103c8t6_HAL/.cproject @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/f103c8t6_HAL/.mxproject b/f103c8t6_HAL/.mxproject new file mode 100644 index 0000000..2bfefcc --- /dev/null +++ b/f103c8t6_HAL/.mxproject @@ -0,0 +1,25 @@ +[PreviousGenFiles] +AdvancedFolderStructure=true +HeaderFileListSize=3 +HeaderFiles#0=C:/Users/wuwen/Desktop/morse_code_trainer/f103c8t6_HAL/Core/Inc/stm32f1xx_it.h +HeaderFiles#1=C:/Users/wuwen/Desktop/morse_code_trainer/f103c8t6_HAL/Core/Inc/stm32f1xx_hal_conf.h +HeaderFiles#2=C:/Users/wuwen/Desktop/morse_code_trainer/f103c8t6_HAL/Core/Inc/main.h +HeaderFolderListSize=1 +HeaderPath#0=C:/Users/wuwen/Desktop/morse_code_trainer/f103c8t6_HAL/Core/Inc +HeaderFiles=; +SourceFileListSize=3 +SourceFiles#0=C:/Users/wuwen/Desktop/morse_code_trainer/f103c8t6_HAL/Core/Src/stm32f1xx_it.c +SourceFiles#1=C:/Users/wuwen/Desktop/morse_code_trainer/f103c8t6_HAL/Core/Src/stm32f1xx_hal_msp.c +SourceFiles#2=C:/Users/wuwen/Desktop/morse_code_trainer/f103c8t6_HAL/Core/Src/main.c +SourceFolderListSize=1 +SourcePath#0=C:/Users/wuwen/Desktop/morse_code_trainer/f103c8t6_HAL/Core/Src +SourceFiles=; + +[PreviousLibFiles] +LibFiles=Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_def.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio_ex.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_exti.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_def.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio_ex.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_exti.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f103xb.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f1xx.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\system_stm32f1xx.h;Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;Drivers\CMSIS\Include\cmsis_armcc.h;Drivers\CMSIS\Include\cmsis_armclang.h;Drivers\CMSIS\Include\cmsis_compiler.h;Drivers\CMSIS\Include\cmsis_gcc.h;Drivers\CMSIS\Include\cmsis_iccarm.h;Drivers\CMSIS\Include\cmsis_version.h;Drivers\CMSIS\Include\core_armv8mbl.h;Drivers\CMSIS\Include\core_armv8mml.h;Drivers\CMSIS\Include\core_cm0.h;Drivers\CMSIS\Include\core_cm0plus.h;Drivers\CMSIS\Include\core_cm1.h;Drivers\CMSIS\Include\core_cm23.h;Drivers\CMSIS\Include\core_cm3.h;Drivers\CMSIS\Include\core_cm33.h;Drivers\CMSIS\Include\core_cm4.h;Drivers\CMSIS\Include\core_cm7.h;Drivers\CMSIS\Include\core_sc000.h;Drivers\CMSIS\Include\core_sc300.h;Drivers\CMSIS\Include\mpu_armv7.h;Drivers\CMSIS\Include\mpu_armv8.h;Drivers\CMSIS\Include\tz_context.h; + +[PreviousUsedCubeIDEFiles] +SourceFiles=Core\Src\main.c;Core\Src\stm32f1xx_it.c;Core\Src\stm32f1xx_hal_msp.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;Core\Src\system_stm32f1xx.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;Core\Src\system_stm32f1xx.c;;; +HeaderPath=Drivers\STM32F1xx_HAL_Driver\Inc;Drivers\STM32F1xx_HAL_Driver\Inc\Legacy;Drivers\CMSIS\Device\ST\STM32F1xx\Include;Drivers\CMSIS\Include;Core\Inc; +CDefines=USE_HAL_DRIVER;STM32F103xB;USE_HAL_DRIVER;USE_HAL_DRIVER; + diff --git a/stm32f103/.project b/f103c8t6_HAL/.project similarity index 97% rename from stm32f103/.project rename to f103c8t6_HAL/.project index e07da81..02bfb32 100644 --- a/stm32f103/.project +++ b/f103c8t6_HAL/.project @@ -1,6 +1,6 @@ - stm32f103 + f103c8t6_HAL @@ -20,9 +20,9 @@ com.st.stm32cube.ide.mcu.MCUProjectNature - com.st.stm32cube.ide.mcu.MCUCubeProjectNature org.eclipse.cdt.core.cnature com.st.stm32cube.ide.mcu.MCUCubeIdeServicesRevAev2ProjectNature + com.st.stm32cube.ide.mcu.MCUCubeProjectNature com.st.stm32cube.ide.mcu.MCUAdvancedStructureProjectNature com.st.stm32cube.ide.mcu.MCUSingleCpuProjectNature com.st.stm32cube.ide.mcu.MCURootProjectNature diff --git a/stm32f103/.settings/language.settings.xml b/f103c8t6_HAL/.settings/language.settings.xml similarity index 85% rename from stm32f103/.settings/language.settings.xml rename to f103c8t6_HAL/.settings/language.settings.xml index a26121f..d3b4fb6 100644 --- a/stm32f103/.settings/language.settings.xml +++ b/f103c8t6_HAL/.settings/language.settings.xml @@ -1,24 +1,24 @@ - + - + - + - + diff --git a/f103c8t6_HAL/.settings/stm32cubeide.project.prefs b/f103c8t6_HAL/.settings/stm32cubeide.project.prefs new file mode 100644 index 0000000..d990a46 --- /dev/null +++ b/f103c8t6_HAL/.settings/stm32cubeide.project.prefs @@ -0,0 +1,3 @@ +8DF89ED150041C4CBC7CB9A9CAA90856=E08A4A42B43BAA3E4C79F58D26E83ECC +DC22A860405A8BF2F2C095E5B6529F12=3B1C4025B9BFE66495091C321A27C880 +eclipse.preferences.version=1 diff --git a/stm32f103/Core/Inc/main.h b/f103c8t6_HAL/Core/Inc/main.h similarity index 76% rename from stm32f103/Core/Inc/main.h rename to f103c8t6_HAL/Core/Inc/main.h index f79fdef..4d79c08 100644 --- a/stm32f103/Core/Inc/main.h +++ b/f103c8t6_HAL/Core/Inc/main.h @@ -1,71 +1,68 @@ -/* USER CODE BEGIN Header */ -/** - ****************************************************************************** - * @file : main.h - * @brief : Header for main.c file. - * This file contains the common defines of the application. - ****************************************************************************** - * @attention - * - *

© Copyright (c) 2022 STMicroelectronics. - * All rights reserved.

- * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ -/* USER CODE END Header */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __MAIN_H -#define __MAIN_H - -#ifdef __cplusplus -extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/* Private includes ----------------------------------------------------------*/ -/* USER CODE BEGIN Includes */ - -/* USER CODE END Includes */ - -/* Exported types ------------------------------------------------------------*/ -/* USER CODE BEGIN ET */ - -/* USER CODE END ET */ - -/* Exported constants --------------------------------------------------------*/ -/* USER CODE BEGIN EC */ - -/* USER CODE END EC */ - -/* Exported macro ------------------------------------------------------------*/ -/* USER CODE BEGIN EM */ - -/* USER CODE END EM */ - -/* Exported functions prototypes ---------------------------------------------*/ -void Error_Handler(void); - -/* USER CODE BEGIN EFP */ - -/* USER CODE END EFP */ - -/* Private defines -----------------------------------------------------------*/ -/* USER CODE BEGIN Private defines */ - -/* USER CODE END Private defines */ - -#ifdef __cplusplus -} -#endif - -#endif /* __MAIN_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file : main.h + * @brief : Header for main.c file. + * This file contains the common defines of the application. + ****************************************************************************** + * @attention + * + * Copyright (c) 2022 STMicroelectronics. + * All rights reserved. + * + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. + * + ****************************************************************************** + */ +/* USER CODE END Header */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __MAIN_H +#define __MAIN_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/* Private includes ----------------------------------------------------------*/ +/* USER CODE BEGIN Includes */ + +/* USER CODE END Includes */ + +/* Exported types ------------------------------------------------------------*/ +/* USER CODE BEGIN ET */ + +/* USER CODE END ET */ + +/* Exported constants --------------------------------------------------------*/ +/* USER CODE BEGIN EC */ + +/* USER CODE END EC */ + +/* Exported macro ------------------------------------------------------------*/ +/* USER CODE BEGIN EM */ + +/* USER CODE END EM */ + +/* Exported functions prototypes ---------------------------------------------*/ +void Error_Handler(void); + +/* USER CODE BEGIN EFP */ + +/* USER CODE END EFP */ + +/* Private defines -----------------------------------------------------------*/ +/* USER CODE BEGIN Private defines */ + +/* USER CODE END Private defines */ + +#ifdef __cplusplus +} +#endif + +#endif /* __MAIN_H */ diff --git a/stm32f103/Core/Inc/stm32f1xx_hal_conf.h b/f103c8t6_HAL/Core/Inc/stm32f1xx_hal_conf.h similarity index 93% rename from stm32f103/Core/Inc/stm32f1xx_hal_conf.h rename to f103c8t6_HAL/Core/Inc/stm32f1xx_hal_conf.h index 57d1957..1d4b8ed 100644 --- a/stm32f103/Core/Inc/stm32f1xx_hal_conf.h +++ b/f103c8t6_HAL/Core/Inc/stm32f1xx_hal_conf.h @@ -1,391 +1,391 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_conf.h - * @brief HAL configuration file. - ****************************************************************************** - * @attention - * - *

© Copyright (c) 2017 STMicroelectronics. - * All rights reserved.

- * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_HAL_CONF_H -#define __STM32F1xx_HAL_CONF_H - -#ifdef __cplusplus - extern "C" { -#endif - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ - -/* ########################## Module Selection ############################## */ -/** - * @brief This is the list of modules to be used in the HAL driver - */ - -#define HAL_MODULE_ENABLED - #define HAL_ADC_MODULE_ENABLED -/*#define HAL_CRYP_MODULE_ENABLED */ -/*#define HAL_CAN_MODULE_ENABLED */ -/*#define HAL_CAN_LEGACY_MODULE_ENABLED */ -/*#define HAL_CEC_MODULE_ENABLED */ -/*#define HAL_CORTEX_MODULE_ENABLED */ -/*#define HAL_CRC_MODULE_ENABLED */ -/*#define HAL_DAC_MODULE_ENABLED */ -/*#define HAL_DMA_MODULE_ENABLED */ -/*#define HAL_ETH_MODULE_ENABLED */ -/*#define HAL_FLASH_MODULE_ENABLED */ -#define HAL_GPIO_MODULE_ENABLED -#define HAL_I2C_MODULE_ENABLED -/*#define HAL_I2S_MODULE_ENABLED */ -/*#define HAL_IRDA_MODULE_ENABLED */ -/*#define HAL_IWDG_MODULE_ENABLED */ -/*#define HAL_NOR_MODULE_ENABLED */ -/*#define HAL_NAND_MODULE_ENABLED */ -/*#define HAL_PCCARD_MODULE_ENABLED */ -#define HAL_PCD_MODULE_ENABLED -/*#define HAL_HCD_MODULE_ENABLED */ -/*#define HAL_PWR_MODULE_ENABLED */ -/*#define HAL_RCC_MODULE_ENABLED */ -/*#define HAL_RTC_MODULE_ENABLED */ -/*#define HAL_SD_MODULE_ENABLED */ -/*#define HAL_MMC_MODULE_ENABLED */ -/*#define HAL_SDRAM_MODULE_ENABLED */ -/*#define HAL_SMARTCARD_MODULE_ENABLED */ -/*#define HAL_SPI_MODULE_ENABLED */ -/*#define HAL_SRAM_MODULE_ENABLED */ -/*#define HAL_TIM_MODULE_ENABLED */ -#define HAL_UART_MODULE_ENABLED -/*#define HAL_USART_MODULE_ENABLED */ -/*#define HAL_WWDG_MODULE_ENABLED */ - -#define HAL_CORTEX_MODULE_ENABLED -#define HAL_DMA_MODULE_ENABLED -#define HAL_FLASH_MODULE_ENABLED -#define HAL_EXTI_MODULE_ENABLED -#define HAL_GPIO_MODULE_ENABLED -#define HAL_PWR_MODULE_ENABLED -#define HAL_RCC_MODULE_ENABLED - -/* ########################## Oscillator Values adaptation ####################*/ -/** - * @brief Adjust the value of External High Speed oscillator (HSE) used in your application. - * This value is used by the RCC HAL module to compute the system frequency - * (when HSE is used as system clock source, directly or through the PLL). - */ -#if !defined (HSE_VALUE) - #define HSE_VALUE 8000000U /*!< Value of the External oscillator in Hz */ -#endif /* HSE_VALUE */ - -#if !defined (HSE_STARTUP_TIMEOUT) - #define HSE_STARTUP_TIMEOUT 100U /*!< Time out for HSE start up, in ms */ -#endif /* HSE_STARTUP_TIMEOUT */ - -/** - * @brief Internal High Speed oscillator (HSI) value. - * This value is used by the RCC HAL module to compute the system frequency - * (when HSI is used as system clock source, directly or through the PLL). - */ -#if !defined (HSI_VALUE) - #define HSI_VALUE 8000000U /*!< Value of the Internal oscillator in Hz*/ -#endif /* HSI_VALUE */ - -/** - * @brief Internal Low Speed oscillator (LSI) value. - */ -#if !defined (LSI_VALUE) - #define LSI_VALUE 40000U /*!< LSI Typical Value in Hz */ -#endif /* LSI_VALUE */ /*!< Value of the Internal Low Speed oscillator in Hz - The real value may vary depending on the variations - in voltage and temperature. */ - -/** - * @brief External Low Speed oscillator (LSE) value. - * This value is used by the UART, RTC HAL module to compute the system frequency - */ -#if !defined (LSE_VALUE) - #define LSE_VALUE 32768U /*!< Value of the External oscillator in Hz*/ -#endif /* LSE_VALUE */ - -#if !defined (LSE_STARTUP_TIMEOUT) - #define LSE_STARTUP_TIMEOUT 5000U /*!< Time out for LSE start up, in ms */ -#endif /* LSE_STARTUP_TIMEOUT */ - -/* Tip: To avoid modifying this file each time you need to use different HSE, - === you can define the HSE value in your toolchain compiler preprocessor. */ - -/* ########################### System Configuration ######################### */ -/** - * @brief This is the HAL system configuration section - */ -#define VDD_VALUE 3300U /*!< Value of VDD in mv */ -#define TICK_INT_PRIORITY 15U /*!< tick interrupt priority (lowest by default) */ -#define USE_RTOS 0U -#define PREFETCH_ENABLE 1U - -#define USE_HAL_ADC_REGISTER_CALLBACKS 0U /* ADC register callback disabled */ -#define USE_HAL_CAN_REGISTER_CALLBACKS 0U /* CAN register callback disabled */ -#define USE_HAL_CEC_REGISTER_CALLBACKS 0U /* CEC register callback disabled */ -#define USE_HAL_DAC_REGISTER_CALLBACKS 0U /* DAC register callback disabled */ -#define USE_HAL_ETH_REGISTER_CALLBACKS 0U /* ETH register callback disabled */ -#define USE_HAL_HCD_REGISTER_CALLBACKS 0U /* HCD register callback disabled */ -#define USE_HAL_I2C_REGISTER_CALLBACKS 0U /* I2C register callback disabled */ -#define USE_HAL_I2S_REGISTER_CALLBACKS 0U /* I2S register callback disabled */ -#define USE_HAL_MMC_REGISTER_CALLBACKS 0U /* MMC register callback disabled */ -#define USE_HAL_NAND_REGISTER_CALLBACKS 0U /* NAND register callback disabled */ -#define USE_HAL_NOR_REGISTER_CALLBACKS 0U /* NOR register callback disabled */ -#define USE_HAL_PCCARD_REGISTER_CALLBACKS 0U /* PCCARD register callback disabled */ -#define USE_HAL_PCD_REGISTER_CALLBACKS 0U /* PCD register callback disabled */ -#define USE_HAL_RTC_REGISTER_CALLBACKS 0U /* RTC register callback disabled */ -#define USE_HAL_SD_REGISTER_CALLBACKS 0U /* SD register callback disabled */ -#define USE_HAL_SMARTCARD_REGISTER_CALLBACKS 0U /* SMARTCARD register callback disabled */ -#define USE_HAL_IRDA_REGISTER_CALLBACKS 0U /* IRDA register callback disabled */ -#define USE_HAL_SRAM_REGISTER_CALLBACKS 0U /* SRAM register callback disabled */ -#define USE_HAL_SPI_REGISTER_CALLBACKS 0U /* SPI register callback disabled */ -#define USE_HAL_TIM_REGISTER_CALLBACKS 0U /* TIM register callback disabled */ -#define USE_HAL_UART_REGISTER_CALLBACKS 0U /* UART register callback disabled */ -#define USE_HAL_USART_REGISTER_CALLBACKS 0U /* USART register callback disabled */ -#define USE_HAL_WWDG_REGISTER_CALLBACKS 0U /* WWDG register callback disabled */ - -/* ########################## Assert Selection ############################## */ -/** - * @brief Uncomment the line below to expanse the "assert_param" macro in the - * HAL drivers code - */ -/* #define USE_FULL_ASSERT 1U */ - -/* ################## Ethernet peripheral configuration ##################### */ - -/* Section 1 : Ethernet peripheral configuration */ - -/* MAC ADDRESS: MAC_ADDR0:MAC_ADDR1:MAC_ADDR2:MAC_ADDR3:MAC_ADDR4:MAC_ADDR5 */ -#define MAC_ADDR0 2U -#define MAC_ADDR1 0U -#define MAC_ADDR2 0U -#define MAC_ADDR3 0U -#define MAC_ADDR4 0U -#define MAC_ADDR5 0U - -/* Definition of the Ethernet driver buffers size and count */ -#define ETH_RX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for receive */ -#define ETH_TX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for transmit */ -#define ETH_RXBUFNB 8U /* 4 Rx buffers of size ETH_RX_BUF_SIZE */ -#define ETH_TXBUFNB 4U /* 4 Tx buffers of size ETH_TX_BUF_SIZE */ - -/* Section 2: PHY configuration section */ - -/* DP83848_PHY_ADDRESS Address*/ -#define DP83848_PHY_ADDRESS 0x01U -/* PHY Reset delay these values are based on a 1 ms Systick interrupt*/ -#define PHY_RESET_DELAY 0x000000FFU -/* PHY Configuration delay */ -#define PHY_CONFIG_DELAY 0x00000FFFU - -#define PHY_READ_TO 0x0000FFFFU -#define PHY_WRITE_TO 0x0000FFFFU - -/* Section 3: Common PHY Registers */ - -#define PHY_BCR ((uint16_t)0x00) /*!< Transceiver Basic Control Register */ -#define PHY_BSR ((uint16_t)0x01) /*!< Transceiver Basic Status Register */ - -#define PHY_RESET ((uint16_t)0x8000) /*!< PHY Reset */ -#define PHY_LOOPBACK ((uint16_t)0x4000) /*!< Select loop-back mode */ -#define PHY_FULLDUPLEX_100M ((uint16_t)0x2100) /*!< Set the full-duplex mode at 100 Mb/s */ -#define PHY_HALFDUPLEX_100M ((uint16_t)0x2000) /*!< Set the half-duplex mode at 100 Mb/s */ -#define PHY_FULLDUPLEX_10M ((uint16_t)0x0100) /*!< Set the full-duplex mode at 10 Mb/s */ -#define PHY_HALFDUPLEX_10M ((uint16_t)0x0000) /*!< Set the half-duplex mode at 10 Mb/s */ -#define PHY_AUTONEGOTIATION ((uint16_t)0x1000) /*!< Enable auto-negotiation function */ -#define PHY_RESTART_AUTONEGOTIATION ((uint16_t)0x0200) /*!< Restart auto-negotiation function */ -#define PHY_POWERDOWN ((uint16_t)0x0800) /*!< Select the power down mode */ -#define PHY_ISOLATE ((uint16_t)0x0400) /*!< Isolate PHY from MII */ - -#define PHY_AUTONEGO_COMPLETE ((uint16_t)0x0020) /*!< Auto-Negotiation process completed */ -#define PHY_LINKED_STATUS ((uint16_t)0x0004) /*!< Valid link established */ -#define PHY_JABBER_DETECTION ((uint16_t)0x0002) /*!< Jabber condition detected */ - -/* Section 4: Extended PHY Registers */ -#define PHY_SR ((uint16_t)0x10U) /*!< PHY status register Offset */ - -#define PHY_SPEED_STATUS ((uint16_t)0x0002U) /*!< PHY Speed mask */ -#define PHY_DUPLEX_STATUS ((uint16_t)0x0004U) /*!< PHY Duplex mask */ - -/* ################## SPI peripheral configuration ########################## */ - -/* CRC FEATURE: Use to activate CRC feature inside HAL SPI Driver -* Activated: CRC code is present inside driver -* Deactivated: CRC code cleaned from driver -*/ - -#define USE_SPI_CRC 0U - -/* Includes ------------------------------------------------------------------*/ -/** - * @brief Include module's header file - */ - -#ifdef HAL_RCC_MODULE_ENABLED -#include "stm32f1xx_hal_rcc.h" -#endif /* HAL_RCC_MODULE_ENABLED */ - -#ifdef HAL_GPIO_MODULE_ENABLED -#include "stm32f1xx_hal_gpio.h" -#endif /* HAL_GPIO_MODULE_ENABLED */ - -#ifdef HAL_EXTI_MODULE_ENABLED -#include "stm32f1xx_hal_exti.h" -#endif /* HAL_EXTI_MODULE_ENABLED */ - -#ifdef HAL_DMA_MODULE_ENABLED -#include "stm32f1xx_hal_dma.h" -#endif /* HAL_DMA_MODULE_ENABLED */ - -#ifdef HAL_ETH_MODULE_ENABLED -#include "stm32f1xx_hal_eth.h" -#endif /* HAL_ETH_MODULE_ENABLED */ - -#ifdef HAL_CAN_MODULE_ENABLED -#include "stm32f1xx_hal_can.h" -#endif /* HAL_CAN_MODULE_ENABLED */ - -#ifdef HAL_CAN_LEGACY_MODULE_ENABLED - #include "Legacy/stm32f1xx_hal_can_legacy.h" -#endif /* HAL_CAN_LEGACY_MODULE_ENABLED */ - -#ifdef HAL_CEC_MODULE_ENABLED -#include "stm32f1xx_hal_cec.h" -#endif /* HAL_CEC_MODULE_ENABLED */ - -#ifdef HAL_CORTEX_MODULE_ENABLED -#include "stm32f1xx_hal_cortex.h" -#endif /* HAL_CORTEX_MODULE_ENABLED */ - -#ifdef HAL_ADC_MODULE_ENABLED -#include "stm32f1xx_hal_adc.h" -#endif /* HAL_ADC_MODULE_ENABLED */ - -#ifdef HAL_CRC_MODULE_ENABLED -#include "stm32f1xx_hal_crc.h" -#endif /* HAL_CRC_MODULE_ENABLED */ - -#ifdef HAL_DAC_MODULE_ENABLED -#include "stm32f1xx_hal_dac.h" -#endif /* HAL_DAC_MODULE_ENABLED */ - -#ifdef HAL_FLASH_MODULE_ENABLED -#include "stm32f1xx_hal_flash.h" -#endif /* HAL_FLASH_MODULE_ENABLED */ - -#ifdef HAL_SRAM_MODULE_ENABLED -#include "stm32f1xx_hal_sram.h" -#endif /* HAL_SRAM_MODULE_ENABLED */ - -#ifdef HAL_NOR_MODULE_ENABLED -#include "stm32f1xx_hal_nor.h" -#endif /* HAL_NOR_MODULE_ENABLED */ - -#ifdef HAL_I2C_MODULE_ENABLED -#include "stm32f1xx_hal_i2c.h" -#endif /* HAL_I2C_MODULE_ENABLED */ - -#ifdef HAL_I2S_MODULE_ENABLED -#include "stm32f1xx_hal_i2s.h" -#endif /* HAL_I2S_MODULE_ENABLED */ - -#ifdef HAL_IWDG_MODULE_ENABLED -#include "stm32f1xx_hal_iwdg.h" -#endif /* HAL_IWDG_MODULE_ENABLED */ - -#ifdef HAL_PWR_MODULE_ENABLED -#include "stm32f1xx_hal_pwr.h" -#endif /* HAL_PWR_MODULE_ENABLED */ - -#ifdef HAL_RTC_MODULE_ENABLED -#include "stm32f1xx_hal_rtc.h" -#endif /* HAL_RTC_MODULE_ENABLED */ - -#ifdef HAL_PCCARD_MODULE_ENABLED -#include "stm32f1xx_hal_pccard.h" -#endif /* HAL_PCCARD_MODULE_ENABLED */ - -#ifdef HAL_SD_MODULE_ENABLED -#include "stm32f1xx_hal_sd.h" -#endif /* HAL_SD_MODULE_ENABLED */ - -#ifdef HAL_NAND_MODULE_ENABLED -#include "stm32f1xx_hal_nand.h" -#endif /* HAL_NAND_MODULE_ENABLED */ - -#ifdef HAL_SPI_MODULE_ENABLED -#include "stm32f1xx_hal_spi.h" -#endif /* HAL_SPI_MODULE_ENABLED */ - -#ifdef HAL_TIM_MODULE_ENABLED -#include "stm32f1xx_hal_tim.h" -#endif /* HAL_TIM_MODULE_ENABLED */ - -#ifdef HAL_UART_MODULE_ENABLED -#include "stm32f1xx_hal_uart.h" -#endif /* HAL_UART_MODULE_ENABLED */ - -#ifdef HAL_USART_MODULE_ENABLED -#include "stm32f1xx_hal_usart.h" -#endif /* HAL_USART_MODULE_ENABLED */ - -#ifdef HAL_IRDA_MODULE_ENABLED -#include "stm32f1xx_hal_irda.h" -#endif /* HAL_IRDA_MODULE_ENABLED */ - -#ifdef HAL_SMARTCARD_MODULE_ENABLED -#include "stm32f1xx_hal_smartcard.h" -#endif /* HAL_SMARTCARD_MODULE_ENABLED */ - -#ifdef HAL_WWDG_MODULE_ENABLED -#include "stm32f1xx_hal_wwdg.h" -#endif /* HAL_WWDG_MODULE_ENABLED */ - -#ifdef HAL_PCD_MODULE_ENABLED -#include "stm32f1xx_hal_pcd.h" -#endif /* HAL_PCD_MODULE_ENABLED */ - -#ifdef HAL_HCD_MODULE_ENABLED -#include "stm32f1xx_hal_hcd.h" -#endif /* HAL_HCD_MODULE_ENABLED */ - -#ifdef HAL_MMC_MODULE_ENABLED -#include "stm32f1xx_hal_mmc.h" -#endif /* HAL_MMC_MODULE_ENABLED */ - -/* Exported macro ------------------------------------------------------------*/ -#ifdef USE_FULL_ASSERT -/** - * @brief The assert_param macro is used for function's parameters check. - * @param expr If expr is false, it calls assert_failed function - * which reports the name of the source file and the source - * line number of the call that failed. - * If expr is true, it returns no value. - * @retval None - */ -#define assert_param(expr) ((expr) ? (void)0U : assert_failed((uint8_t *)__FILE__, __LINE__)) -/* Exported functions ------------------------------------------------------- */ -void assert_failed(uint8_t* file, uint32_t line); -#else -#define assert_param(expr) ((void)0U) -#endif /* USE_FULL_ASSERT */ - -#ifdef __cplusplus -} -#endif - -#endif /* __STM32F1xx_HAL_CONF_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file stm32f1xx_hal_conf.h + * @brief HAL configuration file. + ****************************************************************************** + * @attention + * + * Copyright (c) 2017 STMicroelectronics. + * All rights reserved. + * + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. + * + ****************************************************************************** + */ +/* USER CODE END Header */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_HAL_CONF_H +#define __STM32F1xx_HAL_CONF_H + +#ifdef __cplusplus + extern "C" { +#endif + +/* Exported types ------------------------------------------------------------*/ +/* Exported constants --------------------------------------------------------*/ + +/* ########################## Module Selection ############################## */ +/** + * @brief This is the list of modules to be used in the HAL driver + */ + +#define HAL_MODULE_ENABLED + /*#define HAL_ADC_MODULE_ENABLED */ +/*#define HAL_CRYP_MODULE_ENABLED */ +/*#define HAL_CAN_MODULE_ENABLED */ +/*#define HAL_CAN_LEGACY_MODULE_ENABLED */ +/*#define HAL_CEC_MODULE_ENABLED */ +/*#define HAL_CORTEX_MODULE_ENABLED */ +/*#define HAL_CRC_MODULE_ENABLED */ +/*#define HAL_DAC_MODULE_ENABLED */ +/*#define HAL_DMA_MODULE_ENABLED */ +/*#define HAL_ETH_MODULE_ENABLED */ +/*#define HAL_FLASH_MODULE_ENABLED */ +#define HAL_GPIO_MODULE_ENABLED +/*#define HAL_I2C_MODULE_ENABLED */ +/*#define HAL_I2S_MODULE_ENABLED */ +/*#define HAL_IRDA_MODULE_ENABLED */ +/*#define HAL_IWDG_MODULE_ENABLED */ +/*#define HAL_NOR_MODULE_ENABLED */ +/*#define HAL_NAND_MODULE_ENABLED */ +/*#define HAL_PCCARD_MODULE_ENABLED */ +/*#define HAL_PCD_MODULE_ENABLED */ +/*#define HAL_HCD_MODULE_ENABLED */ +/*#define HAL_PWR_MODULE_ENABLED */ +/*#define HAL_RCC_MODULE_ENABLED */ +/*#define HAL_RTC_MODULE_ENABLED */ +/*#define HAL_SD_MODULE_ENABLED */ +/*#define HAL_MMC_MODULE_ENABLED */ +/*#define HAL_SDRAM_MODULE_ENABLED */ +/*#define HAL_SMARTCARD_MODULE_ENABLED */ +/*#define HAL_SPI_MODULE_ENABLED */ +/*#define HAL_SRAM_MODULE_ENABLED */ +/*#define HAL_TIM_MODULE_ENABLED */ +/*#define HAL_UART_MODULE_ENABLED */ +/*#define HAL_USART_MODULE_ENABLED */ +/*#define HAL_WWDG_MODULE_ENABLED */ + +#define HAL_CORTEX_MODULE_ENABLED +#define HAL_DMA_MODULE_ENABLED +#define HAL_FLASH_MODULE_ENABLED +#define HAL_EXTI_MODULE_ENABLED +#define HAL_GPIO_MODULE_ENABLED +#define HAL_PWR_MODULE_ENABLED +#define HAL_RCC_MODULE_ENABLED + +/* ########################## Oscillator Values adaptation ####################*/ +/** + * @brief Adjust the value of External High Speed oscillator (HSE) used in your application. + * This value is used by the RCC HAL module to compute the system frequency + * (when HSE is used as system clock source, directly or through the PLL). + */ +#if !defined (HSE_VALUE) + #define HSE_VALUE 8000000U /*!< Value of the External oscillator in Hz */ +#endif /* HSE_VALUE */ + +#if !defined (HSE_STARTUP_TIMEOUT) + #define HSE_STARTUP_TIMEOUT 100U /*!< Time out for HSE start up, in ms */ +#endif /* HSE_STARTUP_TIMEOUT */ + +/** + * @brief Internal High Speed oscillator (HSI) value. + * This value is used by the RCC HAL module to compute the system frequency + * (when HSI is used as system clock source, directly or through the PLL). + */ +#if !defined (HSI_VALUE) + #define HSI_VALUE 8000000U /*!< Value of the Internal oscillator in Hz*/ +#endif /* HSI_VALUE */ + +/** + * @brief Internal Low Speed oscillator (LSI) value. + */ +#if !defined (LSI_VALUE) + #define LSI_VALUE 40000U /*!< LSI Typical Value in Hz */ +#endif /* LSI_VALUE */ /*!< Value of the Internal Low Speed oscillator in Hz + The real value may vary depending on the variations + in voltage and temperature. */ + +/** + * @brief External Low Speed oscillator (LSE) value. + * This value is used by the UART, RTC HAL module to compute the system frequency + */ +#if !defined (LSE_VALUE) + #define LSE_VALUE 32768U /*!< Value of the External oscillator in Hz*/ +#endif /* LSE_VALUE */ + +#if !defined (LSE_STARTUP_TIMEOUT) + #define LSE_STARTUP_TIMEOUT 5000U /*!< Time out for LSE start up, in ms */ +#endif /* LSE_STARTUP_TIMEOUT */ + +/* Tip: To avoid modifying this file each time you need to use different HSE, + === you can define the HSE value in your toolchain compiler preprocessor. */ + +/* ########################### System Configuration ######################### */ +/** + * @brief This is the HAL system configuration section + */ +#define VDD_VALUE 3300U /*!< Value of VDD in mv */ +#define TICK_INT_PRIORITY 15U /*!< tick interrupt priority (lowest by default) */ +#define USE_RTOS 0U +#define PREFETCH_ENABLE 1U + +#define USE_HAL_ADC_REGISTER_CALLBACKS 0U /* ADC register callback disabled */ +#define USE_HAL_CAN_REGISTER_CALLBACKS 0U /* CAN register callback disabled */ +#define USE_HAL_CEC_REGISTER_CALLBACKS 0U /* CEC register callback disabled */ +#define USE_HAL_DAC_REGISTER_CALLBACKS 0U /* DAC register callback disabled */ +#define USE_HAL_ETH_REGISTER_CALLBACKS 0U /* ETH register callback disabled */ +#define USE_HAL_HCD_REGISTER_CALLBACKS 0U /* HCD register callback disabled */ +#define USE_HAL_I2C_REGISTER_CALLBACKS 0U /* I2C register callback disabled */ +#define USE_HAL_I2S_REGISTER_CALLBACKS 0U /* I2S register callback disabled */ +#define USE_HAL_MMC_REGISTER_CALLBACKS 0U /* MMC register callback disabled */ +#define USE_HAL_NAND_REGISTER_CALLBACKS 0U /* NAND register callback disabled */ +#define USE_HAL_NOR_REGISTER_CALLBACKS 0U /* NOR register callback disabled */ +#define USE_HAL_PCCARD_REGISTER_CALLBACKS 0U /* PCCARD register callback disabled */ +#define USE_HAL_PCD_REGISTER_CALLBACKS 0U /* PCD register callback disabled */ +#define USE_HAL_RTC_REGISTER_CALLBACKS 0U /* RTC register callback disabled */ +#define USE_HAL_SD_REGISTER_CALLBACKS 0U /* SD register callback disabled */ +#define USE_HAL_SMARTCARD_REGISTER_CALLBACKS 0U /* SMARTCARD register callback disabled */ +#define USE_HAL_IRDA_REGISTER_CALLBACKS 0U /* IRDA register callback disabled */ +#define USE_HAL_SRAM_REGISTER_CALLBACKS 0U /* SRAM register callback disabled */ +#define USE_HAL_SPI_REGISTER_CALLBACKS 0U /* SPI register callback disabled */ +#define USE_HAL_TIM_REGISTER_CALLBACKS 0U /* TIM register callback disabled */ +#define USE_HAL_UART_REGISTER_CALLBACKS 0U /* UART register callback disabled */ +#define USE_HAL_USART_REGISTER_CALLBACKS 0U /* USART register callback disabled */ +#define USE_HAL_WWDG_REGISTER_CALLBACKS 0U /* WWDG register callback disabled */ + +/* ########################## Assert Selection ############################## */ +/** + * @brief Uncomment the line below to expanse the "assert_param" macro in the + * HAL drivers code + */ +/* #define USE_FULL_ASSERT 1U */ + +/* ################## Ethernet peripheral configuration ##################### */ + +/* Section 1 : Ethernet peripheral configuration */ + +/* MAC ADDRESS: MAC_ADDR0:MAC_ADDR1:MAC_ADDR2:MAC_ADDR3:MAC_ADDR4:MAC_ADDR5 */ +#define MAC_ADDR0 2U +#define MAC_ADDR1 0U +#define MAC_ADDR2 0U +#define MAC_ADDR3 0U +#define MAC_ADDR4 0U +#define MAC_ADDR5 0U + +/* Definition of the Ethernet driver buffers size and count */ +#define ETH_RX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for receive */ +#define ETH_TX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for transmit */ +#define ETH_RXBUFNB 8U /* 4 Rx buffers of size ETH_RX_BUF_SIZE */ +#define ETH_TXBUFNB 4U /* 4 Tx buffers of size ETH_TX_BUF_SIZE */ + +/* Section 2: PHY configuration section */ + +/* DP83848_PHY_ADDRESS Address*/ +#define DP83848_PHY_ADDRESS 0x01U +/* PHY Reset delay these values are based on a 1 ms Systick interrupt*/ +#define PHY_RESET_DELAY 0x000000FFU +/* PHY Configuration delay */ +#define PHY_CONFIG_DELAY 0x00000FFFU + +#define PHY_READ_TO 0x0000FFFFU +#define PHY_WRITE_TO 0x0000FFFFU + +/* Section 3: Common PHY Registers */ + +#define PHY_BCR ((uint16_t)0x00) /*!< Transceiver Basic Control Register */ +#define PHY_BSR ((uint16_t)0x01) /*!< Transceiver Basic Status Register */ + +#define PHY_RESET ((uint16_t)0x8000) /*!< PHY Reset */ +#define PHY_LOOPBACK ((uint16_t)0x4000) /*!< Select loop-back mode */ +#define PHY_FULLDUPLEX_100M ((uint16_t)0x2100) /*!< Set the full-duplex mode at 100 Mb/s */ +#define PHY_HALFDUPLEX_100M ((uint16_t)0x2000) /*!< Set the half-duplex mode at 100 Mb/s */ +#define PHY_FULLDUPLEX_10M ((uint16_t)0x0100) /*!< Set the full-duplex mode at 10 Mb/s */ +#define PHY_HALFDUPLEX_10M ((uint16_t)0x0000) /*!< Set the half-duplex mode at 10 Mb/s */ +#define PHY_AUTONEGOTIATION ((uint16_t)0x1000) /*!< Enable auto-negotiation function */ +#define PHY_RESTART_AUTONEGOTIATION ((uint16_t)0x0200) /*!< Restart auto-negotiation function */ +#define PHY_POWERDOWN ((uint16_t)0x0800) /*!< Select the power down mode */ +#define PHY_ISOLATE ((uint16_t)0x0400) /*!< Isolate PHY from MII */ + +#define PHY_AUTONEGO_COMPLETE ((uint16_t)0x0020) /*!< Auto-Negotiation process completed */ +#define PHY_LINKED_STATUS ((uint16_t)0x0004) /*!< Valid link established */ +#define PHY_JABBER_DETECTION ((uint16_t)0x0002) /*!< Jabber condition detected */ + +/* Section 4: Extended PHY Registers */ +#define PHY_SR ((uint16_t)0x10U) /*!< PHY status register Offset */ + +#define PHY_SPEED_STATUS ((uint16_t)0x0002U) /*!< PHY Speed mask */ +#define PHY_DUPLEX_STATUS ((uint16_t)0x0004U) /*!< PHY Duplex mask */ + +/* ################## SPI peripheral configuration ########################## */ + +/* CRC FEATURE: Use to activate CRC feature inside HAL SPI Driver +* Activated: CRC code is present inside driver +* Deactivated: CRC code cleaned from driver +*/ + +#define USE_SPI_CRC 0U + +/* Includes ------------------------------------------------------------------*/ +/** + * @brief Include module's header file + */ + +#ifdef HAL_RCC_MODULE_ENABLED +#include "stm32f1xx_hal_rcc.h" +#endif /* HAL_RCC_MODULE_ENABLED */ + +#ifdef HAL_GPIO_MODULE_ENABLED +#include "stm32f1xx_hal_gpio.h" +#endif /* HAL_GPIO_MODULE_ENABLED */ + +#ifdef HAL_EXTI_MODULE_ENABLED +#include "stm32f1xx_hal_exti.h" +#endif /* HAL_EXTI_MODULE_ENABLED */ + +#ifdef HAL_DMA_MODULE_ENABLED +#include "stm32f1xx_hal_dma.h" +#endif /* HAL_DMA_MODULE_ENABLED */ + +#ifdef HAL_ETH_MODULE_ENABLED +#include "stm32f1xx_hal_eth.h" +#endif /* HAL_ETH_MODULE_ENABLED */ + +#ifdef HAL_CAN_MODULE_ENABLED +#include "stm32f1xx_hal_can.h" +#endif /* HAL_CAN_MODULE_ENABLED */ + +#ifdef HAL_CAN_LEGACY_MODULE_ENABLED + #include "Legacy/stm32f1xx_hal_can_legacy.h" +#endif /* HAL_CAN_LEGACY_MODULE_ENABLED */ + +#ifdef HAL_CEC_MODULE_ENABLED +#include "stm32f1xx_hal_cec.h" +#endif /* HAL_CEC_MODULE_ENABLED */ + +#ifdef HAL_CORTEX_MODULE_ENABLED +#include "stm32f1xx_hal_cortex.h" +#endif /* HAL_CORTEX_MODULE_ENABLED */ + +#ifdef HAL_ADC_MODULE_ENABLED +#include "stm32f1xx_hal_adc.h" +#endif /* HAL_ADC_MODULE_ENABLED */ + +#ifdef HAL_CRC_MODULE_ENABLED +#include "stm32f1xx_hal_crc.h" +#endif /* HAL_CRC_MODULE_ENABLED */ + +#ifdef HAL_DAC_MODULE_ENABLED +#include "stm32f1xx_hal_dac.h" +#endif /* HAL_DAC_MODULE_ENABLED */ + +#ifdef HAL_FLASH_MODULE_ENABLED +#include "stm32f1xx_hal_flash.h" +#endif /* HAL_FLASH_MODULE_ENABLED */ + +#ifdef HAL_SRAM_MODULE_ENABLED +#include "stm32f1xx_hal_sram.h" +#endif /* HAL_SRAM_MODULE_ENABLED */ + +#ifdef HAL_NOR_MODULE_ENABLED +#include "stm32f1xx_hal_nor.h" +#endif /* HAL_NOR_MODULE_ENABLED */ + +#ifdef HAL_I2C_MODULE_ENABLED +#include "stm32f1xx_hal_i2c.h" +#endif /* HAL_I2C_MODULE_ENABLED */ + +#ifdef HAL_I2S_MODULE_ENABLED +#include "stm32f1xx_hal_i2s.h" +#endif /* HAL_I2S_MODULE_ENABLED */ + +#ifdef HAL_IWDG_MODULE_ENABLED +#include "stm32f1xx_hal_iwdg.h" +#endif /* HAL_IWDG_MODULE_ENABLED */ + +#ifdef HAL_PWR_MODULE_ENABLED +#include "stm32f1xx_hal_pwr.h" +#endif /* HAL_PWR_MODULE_ENABLED */ + +#ifdef HAL_RTC_MODULE_ENABLED +#include "stm32f1xx_hal_rtc.h" +#endif /* HAL_RTC_MODULE_ENABLED */ + +#ifdef HAL_PCCARD_MODULE_ENABLED +#include "stm32f1xx_hal_pccard.h" +#endif /* HAL_PCCARD_MODULE_ENABLED */ + +#ifdef HAL_SD_MODULE_ENABLED +#include "stm32f1xx_hal_sd.h" +#endif /* HAL_SD_MODULE_ENABLED */ + +#ifdef HAL_NAND_MODULE_ENABLED +#include "stm32f1xx_hal_nand.h" +#endif /* HAL_NAND_MODULE_ENABLED */ + +#ifdef HAL_SPI_MODULE_ENABLED +#include "stm32f1xx_hal_spi.h" +#endif /* HAL_SPI_MODULE_ENABLED */ + +#ifdef HAL_TIM_MODULE_ENABLED +#include "stm32f1xx_hal_tim.h" +#endif /* HAL_TIM_MODULE_ENABLED */ + +#ifdef HAL_UART_MODULE_ENABLED +#include "stm32f1xx_hal_uart.h" +#endif /* HAL_UART_MODULE_ENABLED */ + +#ifdef HAL_USART_MODULE_ENABLED +#include "stm32f1xx_hal_usart.h" +#endif /* HAL_USART_MODULE_ENABLED */ + +#ifdef HAL_IRDA_MODULE_ENABLED +#include "stm32f1xx_hal_irda.h" +#endif /* HAL_IRDA_MODULE_ENABLED */ + +#ifdef HAL_SMARTCARD_MODULE_ENABLED +#include "stm32f1xx_hal_smartcard.h" +#endif /* HAL_SMARTCARD_MODULE_ENABLED */ + +#ifdef HAL_WWDG_MODULE_ENABLED +#include "stm32f1xx_hal_wwdg.h" +#endif /* HAL_WWDG_MODULE_ENABLED */ + +#ifdef HAL_PCD_MODULE_ENABLED +#include "stm32f1xx_hal_pcd.h" +#endif /* HAL_PCD_MODULE_ENABLED */ + +#ifdef HAL_HCD_MODULE_ENABLED +#include "stm32f1xx_hal_hcd.h" +#endif /* HAL_HCD_MODULE_ENABLED */ + +#ifdef HAL_MMC_MODULE_ENABLED +#include "stm32f1xx_hal_mmc.h" +#endif /* HAL_MMC_MODULE_ENABLED */ + +/* Exported macro ------------------------------------------------------------*/ +#ifdef USE_FULL_ASSERT +/** + * @brief The assert_param macro is used for function's parameters check. + * @param expr If expr is false, it calls assert_failed function + * which reports the name of the source file and the source + * line number of the call that failed. + * If expr is true, it returns no value. + * @retval None + */ +#define assert_param(expr) ((expr) ? (void)0U : assert_failed((uint8_t *)__FILE__, __LINE__)) +/* Exported functions ------------------------------------------------------- */ +void assert_failed(uint8_t* file, uint32_t line); +#else +#define assert_param(expr) ((void)0U) +#endif /* USE_FULL_ASSERT */ + +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F1xx_HAL_CONF_H */ + diff --git a/stm32f103/Core/Inc/stm32f1xx_it.h b/f103c8t6_HAL/Core/Inc/stm32f1xx_it.h similarity index 73% rename from stm32f103/Core/Inc/stm32f1xx_it.h rename to f103c8t6_HAL/Core/Inc/stm32f1xx_it.h index 979db8e..aa99a43 100644 --- a/stm32f103/Core/Inc/stm32f1xx_it.h +++ b/f103c8t6_HAL/Core/Inc/stm32f1xx_it.h @@ -1,70 +1,66 @@ -/* USER CODE BEGIN Header */ -/** - ****************************************************************************** - * @file stm32f1xx_it.h - * @brief This file contains the headers of the interrupt handlers. - ****************************************************************************** - * @attention - * - *

© Copyright (c) 2022 STMicroelectronics. - * All rights reserved.

- * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ -/* USER CODE END Header */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_IT_H -#define __STM32F1xx_IT_H - -#ifdef __cplusplus - extern "C" { -#endif - -/* Private includes ----------------------------------------------------------*/ -/* USER CODE BEGIN Includes */ - -/* USER CODE END Includes */ - -/* Exported types ------------------------------------------------------------*/ -/* USER CODE BEGIN ET */ - -/* USER CODE END ET */ - -/* Exported constants --------------------------------------------------------*/ -/* USER CODE BEGIN EC */ - -/* USER CODE END EC */ - -/* Exported macro ------------------------------------------------------------*/ -/* USER CODE BEGIN EM */ - -/* USER CODE END EM */ - -/* Exported functions prototypes ---------------------------------------------*/ -void NMI_Handler(void); -void HardFault_Handler(void); -void MemManage_Handler(void); -void BusFault_Handler(void); -void UsageFault_Handler(void); -void SVC_Handler(void); -void DebugMon_Handler(void); -void PendSV_Handler(void); -void SysTick_Handler(void); -void USB_LP_CAN1_RX0_IRQHandler(void); -/* USER CODE BEGIN EFP */ - -/* USER CODE END EFP */ - -#ifdef __cplusplus -} -#endif - -#endif /* __STM32F1xx_IT_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file stm32f1xx_it.h + * @brief This file contains the headers of the interrupt handlers. + ****************************************************************************** + * @attention + * + * Copyright (c) 2022 STMicroelectronics. + * All rights reserved. + * + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. + * + ****************************************************************************** + */ +/* USER CODE END Header */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_IT_H +#define __STM32F1xx_IT_H + +#ifdef __cplusplus + extern "C" { +#endif + +/* Private includes ----------------------------------------------------------*/ +/* USER CODE BEGIN Includes */ + +/* USER CODE END Includes */ + +/* Exported types ------------------------------------------------------------*/ +/* USER CODE BEGIN ET */ + +/* USER CODE END ET */ + +/* Exported constants --------------------------------------------------------*/ +/* USER CODE BEGIN EC */ + +/* USER CODE END EC */ + +/* Exported macro ------------------------------------------------------------*/ +/* USER CODE BEGIN EM */ + +/* USER CODE END EM */ + +/* Exported functions prototypes ---------------------------------------------*/ +void NMI_Handler(void); +void HardFault_Handler(void); +void MemManage_Handler(void); +void BusFault_Handler(void); +void UsageFault_Handler(void); +void SVC_Handler(void); +void DebugMon_Handler(void); +void PendSV_Handler(void); +void SysTick_Handler(void); +/* USER CODE BEGIN EFP */ + +/* USER CODE END EFP */ + +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F1xx_IT_H */ diff --git a/stm32f103/Core/Src/main.c b/f103c8t6_HAL/Core/Src/main.c similarity index 52% rename from stm32f103/Core/Src/main.c rename to f103c8t6_HAL/Core/Src/main.c index 8aef3cc..f4ce100 100644 --- a/stm32f103/Core/Src/main.c +++ b/f103c8t6_HAL/Core/Src/main.c @@ -1,333 +1,189 @@ -/* USER CODE BEGIN Header */ -/** - ****************************************************************************** - * @file : main.c - * @brief : Main program body - ****************************************************************************** - * @attention - * - *

© Copyright (c) 2022 STMicroelectronics. - * All rights reserved.

- * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ -/* USER CODE END Header */ -/* Includes ------------------------------------------------------------------*/ -#include "main.h" -#include "usb_device.h" - -/* Private includes ----------------------------------------------------------*/ -/* USER CODE BEGIN Includes */ - -/* USER CODE END Includes */ - -/* Private typedef -----------------------------------------------------------*/ -/* USER CODE BEGIN PTD */ - -/* USER CODE END PTD */ - -/* Private define ------------------------------------------------------------*/ -/* USER CODE BEGIN PD */ -/* USER CODE END PD */ - -/* Private macro -------------------------------------------------------------*/ -/* USER CODE BEGIN PM */ - -/* USER CODE END PM */ - -/* Private variables ---------------------------------------------------------*/ -ADC_HandleTypeDef hadc1; - -I2C_HandleTypeDef hi2c1; - -UART_HandleTypeDef huart1; - -/* USER CODE BEGIN PV */ - -/* USER CODE END PV */ - -/* Private function prototypes -----------------------------------------------*/ -void SystemClock_Config(void); -static void MX_GPIO_Init(void); -static void MX_ADC1_Init(void); -static void MX_I2C1_Init(void); -static void MX_USART1_UART_Init(void); -/* USER CODE BEGIN PFP */ - -/* USER CODE END PFP */ - -/* Private user code ---------------------------------------------------------*/ -/* USER CODE BEGIN 0 */ - -/* USER CODE END 0 */ - -/** - * @brief The application entry point. - * @retval int - */ -int main(void) -{ - /* USER CODE BEGIN 1 */ - - /* USER CODE END 1 */ - - /* MCU Configuration--------------------------------------------------------*/ - - /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ - HAL_Init(); - - /* USER CODE BEGIN Init */ - - /* USER CODE END Init */ - - /* Configure the system clock */ - SystemClock_Config(); - - /* USER CODE BEGIN SysInit */ - - /* USER CODE END SysInit */ - - /* Initialize all configured peripherals */ - MX_GPIO_Init(); - MX_ADC1_Init(); - MX_I2C1_Init(); - MX_USART1_UART_Init(); - MX_USB_DEVICE_Init(); - /* USER CODE BEGIN 2 */ - - /* USER CODE END 2 */ - - /* Infinite loop */ - /* USER CODE BEGIN WHILE */ - while (1) - { - /* USER CODE END WHILE */ - - /* USER CODE BEGIN 3 */ - } - /* USER CODE END 3 */ -} - -/** - * @brief System Clock Configuration - * @retval None - */ -void SystemClock_Config(void) -{ - RCC_OscInitTypeDef RCC_OscInitStruct = {0}; - RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; - RCC_PeriphCLKInitTypeDef PeriphClkInit = {0}; - - /** Initializes the RCC Oscillators according to the specified parameters - * in the RCC_OscInitTypeDef structure. - */ - RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; - RCC_OscInitStruct.HSEState = RCC_HSE_ON; - RCC_OscInitStruct.HSEPredivValue = RCC_HSE_PREDIV_DIV1; - RCC_OscInitStruct.HSIState = RCC_HSI_ON; - RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; - RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; - RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL9; - if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) - { - Error_Handler(); - } - /** Initializes the CPU, AHB and APB buses clocks - */ - RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK - |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; - RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; - RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; - RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2; - RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; - - if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) - { - Error_Handler(); - } - PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_ADC|RCC_PERIPHCLK_USB; - PeriphClkInit.AdcClockSelection = RCC_ADCPCLK2_DIV6; - PeriphClkInit.UsbClockSelection = RCC_USBCLKSOURCE_PLL_DIV1_5; - if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK) - { - Error_Handler(); - } -} - -/** - * @brief ADC1 Initialization Function - * @param None - * @retval None - */ -static void MX_ADC1_Init(void) -{ - - /* USER CODE BEGIN ADC1_Init 0 */ - - /* USER CODE END ADC1_Init 0 */ - - ADC_ChannelConfTypeDef sConfig = {0}; - - /* USER CODE BEGIN ADC1_Init 1 */ - - /* USER CODE END ADC1_Init 1 */ - /** Common config - */ - hadc1.Instance = ADC1; - hadc1.Init.ScanConvMode = ADC_SCAN_DISABLE; - hadc1.Init.ContinuousConvMode = DISABLE; - hadc1.Init.DiscontinuousConvMode = DISABLE; - hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START; - hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT; - hadc1.Init.NbrOfConversion = 1; - if (HAL_ADC_Init(&hadc1) != HAL_OK) - { - Error_Handler(); - } - /** Configure Regular Channel - */ - sConfig.Channel = ADC_CHANNEL_0; - sConfig.Rank = ADC_REGULAR_RANK_1; - sConfig.SamplingTime = ADC_SAMPLETIME_1CYCLE_5; - if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) - { - Error_Handler(); - } - /* USER CODE BEGIN ADC1_Init 2 */ - - /* USER CODE END ADC1_Init 2 */ - -} - -/** - * @brief I2C1 Initialization Function - * @param None - * @retval None - */ -static void MX_I2C1_Init(void) -{ - - /* USER CODE BEGIN I2C1_Init 0 */ - - /* USER CODE END I2C1_Init 0 */ - - /* USER CODE BEGIN I2C1_Init 1 */ - - /* USER CODE END I2C1_Init 1 */ - hi2c1.Instance = I2C1; - hi2c1.Init.ClockSpeed = 100000; - hi2c1.Init.DutyCycle = I2C_DUTYCYCLE_2; - hi2c1.Init.OwnAddress1 = 0; - hi2c1.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT; - hi2c1.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE; - hi2c1.Init.OwnAddress2 = 0; - hi2c1.Init.GeneralCallMode = I2C_GENERALCALL_DISABLE; - hi2c1.Init.NoStretchMode = I2C_NOSTRETCH_DISABLE; - if (HAL_I2C_Init(&hi2c1) != HAL_OK) - { - Error_Handler(); - } - /* USER CODE BEGIN I2C1_Init 2 */ - - /* USER CODE END I2C1_Init 2 */ - -} - -/** - * @brief USART1 Initialization Function - * @param None - * @retval None - */ -static void MX_USART1_UART_Init(void) -{ - - /* USER CODE BEGIN USART1_Init 0 */ - - /* USER CODE END USART1_Init 0 */ - - /* USER CODE BEGIN USART1_Init 1 */ - - /* USER CODE END USART1_Init 1 */ - huart1.Instance = USART1; - huart1.Init.BaudRate = 115200; - huart1.Init.WordLength = UART_WORDLENGTH_8B; - huart1.Init.StopBits = UART_STOPBITS_1; - huart1.Init.Parity = UART_PARITY_NONE; - huart1.Init.Mode = UART_MODE_TX_RX; - huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE; - huart1.Init.OverSampling = UART_OVERSAMPLING_16; - if (HAL_UART_Init(&huart1) != HAL_OK) - { - Error_Handler(); - } - /* USER CODE BEGIN USART1_Init 2 */ - - /* USER CODE END USART1_Init 2 */ - -} - -/** - * @brief GPIO Initialization Function - * @param None - * @retval None - */ -static void MX_GPIO_Init(void) -{ - GPIO_InitTypeDef GPIO_InitStruct = {0}; - - /* GPIO Ports Clock Enable */ - __HAL_RCC_GPIOC_CLK_ENABLE(); - __HAL_RCC_GPIOD_CLK_ENABLE(); - __HAL_RCC_GPIOA_CLK_ENABLE(); - __HAL_RCC_GPIOB_CLK_ENABLE(); - - /*Configure GPIO pin : PA1 */ - GPIO_InitStruct.Pin = GPIO_PIN_1; - GPIO_InitStruct.Mode = GPIO_MODE_INPUT; - GPIO_InitStruct.Pull = GPIO_NOPULL; - HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); - -} - -/* USER CODE BEGIN 4 */ - -/* USER CODE END 4 */ - -/** - * @brief This function is executed in case of error occurrence. - * @retval None - */ -void Error_Handler(void) -{ - /* USER CODE BEGIN Error_Handler_Debug */ - /* User can add his own implementation to report the HAL error return state */ - __disable_irq(); - while (1) - { - } - /* USER CODE END Error_Handler_Debug */ -} - -#ifdef USE_FULL_ASSERT -/** - * @brief Reports the name of the source file and the source line number - * where the assert_param error has occurred. - * @param file: pointer to the source file name - * @param line: assert_param error line source number - * @retval None - */ -void assert_failed(uint8_t *file, uint32_t line) -{ - /* USER CODE BEGIN 6 */ - /* User can add his own implementation to report the file name and line number, - ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ - /* USER CODE END 6 */ -} -#endif /* USE_FULL_ASSERT */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file : main.c + * @brief : Main program body + ****************************************************************************** + * @attention + * + * Copyright (c) 2022 STMicroelectronics. + * All rights reserved. + * + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. + * + ****************************************************************************** + */ +/* USER CODE END Header */ +/* Includes ------------------------------------------------------------------*/ +#include "main.h" + +/* Private includes ----------------------------------------------------------*/ +/* USER CODE BEGIN Includes */ + +/* USER CODE END Includes */ + +/* Private typedef -----------------------------------------------------------*/ +/* USER CODE BEGIN PTD */ + +/* USER CODE END PTD */ + +/* Private define ------------------------------------------------------------*/ +/* USER CODE BEGIN PD */ +/* USER CODE END PD */ + +/* Private macro -------------------------------------------------------------*/ +/* USER CODE BEGIN PM */ + +/* USER CODE END PM */ + +/* Private variables ---------------------------------------------------------*/ + +/* USER CODE BEGIN PV */ + +/* USER CODE END PV */ + +/* Private function prototypes -----------------------------------------------*/ +void SystemClock_Config(void); +static void MX_GPIO_Init(void); +/* USER CODE BEGIN PFP */ + +/* USER CODE END PFP */ + +/* Private user code ---------------------------------------------------------*/ +/* USER CODE BEGIN 0 */ + +/* USER CODE END 0 */ + +/** + * @brief The application entry point. + * @retval int + */ +int main(void) +{ + /* USER CODE BEGIN 1 */ + + /* USER CODE END 1 */ + + /* MCU Configuration--------------------------------------------------------*/ + + /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ + HAL_Init(); + + /* USER CODE BEGIN Init */ + + /* USER CODE END Init */ + + /* Configure the system clock */ + SystemClock_Config(); + + /* USER CODE BEGIN SysInit */ + + /* USER CODE END SysInit */ + + /* Initialize all configured peripherals */ + MX_GPIO_Init(); + /* USER CODE BEGIN 2 */ + + /* USER CODE END 2 */ + + /* Infinite loop */ + /* USER CODE BEGIN WHILE */ + while (1) + { + /* USER CODE END WHILE */ + + /* USER CODE BEGIN 3 */ + } + /* USER CODE END 3 */ +} + +/** + * @brief System Clock Configuration + * @retval None + */ +void SystemClock_Config(void) +{ + RCC_OscInitTypeDef RCC_OscInitStruct = {0}; + RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; + + /** Initializes the RCC Oscillators according to the specified parameters + * in the RCC_OscInitTypeDef structure. + */ + RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; + RCC_OscInitStruct.HSEState = RCC_HSE_ON; + RCC_OscInitStruct.HSEPredivValue = RCC_HSE_PREDIV_DIV1; + RCC_OscInitStruct.HSIState = RCC_HSI_ON; + RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; + RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; + RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL9; + if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) + { + Error_Handler(); + } + + /** Initializes the CPU, AHB and APB buses clocks + */ + RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK + |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; + RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; + RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; + RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2; + RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; + + if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) + { + Error_Handler(); + } +} + +/** + * @brief GPIO Initialization Function + * @param None + * @retval None + */ +static void MX_GPIO_Init(void) +{ + + /* GPIO Ports Clock Enable */ + __HAL_RCC_GPIOD_CLK_ENABLE(); + __HAL_RCC_GPIOA_CLK_ENABLE(); + +} + +/* USER CODE BEGIN 4 */ + +/* USER CODE END 4 */ + +/** + * @brief This function is executed in case of error occurrence. + * @retval None + */ +void Error_Handler(void) +{ + /* USER CODE BEGIN Error_Handler_Debug */ + /* User can add his own implementation to report the HAL error return state */ + __disable_irq(); + while (1) + { + } + /* USER CODE END Error_Handler_Debug */ +} + +#ifdef USE_FULL_ASSERT +/** + * @brief Reports the name of the source file and the source line number + * where the assert_param error has occurred. + * @param file: pointer to the source file name + * @param line: assert_param error line source number + * @retval None + */ +void assert_failed(uint8_t *file, uint32_t line) +{ + /* USER CODE BEGIN 6 */ + /* User can add his own implementation to report the file name and line number, + ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */ + /* USER CODE END 6 */ +} +#endif /* USE_FULL_ASSERT */ diff --git a/f103c8t6_HAL/Core/Src/stm32f1xx_hal_msp.c b/f103c8t6_HAL/Core/Src/stm32f1xx_hal_msp.c new file mode 100644 index 0000000..cde9c50 --- /dev/null +++ b/f103c8t6_HAL/Core/Src/stm32f1xx_hal_msp.c @@ -0,0 +1,85 @@ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file stm32f1xx_hal_msp.c + * @brief This file provides code for the MSP Initialization + * and de-Initialization codes. + ****************************************************************************** + * @attention + * + * Copyright (c) 2022 STMicroelectronics. + * All rights reserved. + * + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. + * + ****************************************************************************** + */ +/* USER CODE END Header */ + +/* Includes ------------------------------------------------------------------*/ +#include "main.h" +/* USER CODE BEGIN Includes */ + +/* USER CODE END Includes */ + +/* Private typedef -----------------------------------------------------------*/ +/* USER CODE BEGIN TD */ + +/* USER CODE END TD */ + +/* Private define ------------------------------------------------------------*/ +/* USER CODE BEGIN Define */ + +/* USER CODE END Define */ + +/* Private macro -------------------------------------------------------------*/ +/* USER CODE BEGIN Macro */ + +/* USER CODE END Macro */ + +/* Private variables ---------------------------------------------------------*/ +/* USER CODE BEGIN PV */ + +/* USER CODE END PV */ + +/* Private function prototypes -----------------------------------------------*/ +/* USER CODE BEGIN PFP */ + +/* USER CODE END PFP */ + +/* External functions --------------------------------------------------------*/ +/* USER CODE BEGIN ExternalFunctions */ + +/* USER CODE END ExternalFunctions */ + +/* USER CODE BEGIN 0 */ + +/* USER CODE END 0 */ +/** + * Initializes the Global MSP. + */ +void HAL_MspInit(void) +{ + /* USER CODE BEGIN MspInit 0 */ + + /* USER CODE END MspInit 0 */ + + __HAL_RCC_AFIO_CLK_ENABLE(); + __HAL_RCC_PWR_CLK_ENABLE(); + + /* System interrupt init*/ + + /** NOJTAG: JTAG-DP Disabled and SW-DP Enabled + */ + __HAL_AFIO_REMAP_SWJ_NOJTAG(); + + /* USER CODE BEGIN MspInit 1 */ + + /* USER CODE END MspInit 1 */ +} + +/* USER CODE BEGIN 1 */ + +/* USER CODE END 1 */ diff --git a/stm32f103/Core/Src/stm32f1xx_it.c b/f103c8t6_HAL/Core/Src/stm32f1xx_it.c similarity index 82% rename from stm32f103/Core/Src/stm32f1xx_it.c rename to f103c8t6_HAL/Core/Src/stm32f1xx_it.c index f9efdab..92157ac 100644 --- a/stm32f103/Core/Src/stm32f1xx_it.c +++ b/f103c8t6_HAL/Core/Src/stm32f1xx_it.c @@ -1,219 +1,203 @@ -/* USER CODE BEGIN Header */ -/** - ****************************************************************************** - * @file stm32f1xx_it.c - * @brief Interrupt Service Routines. - ****************************************************************************** - * @attention - * - *

© Copyright (c) 2022 STMicroelectronics. - * All rights reserved.

- * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ -/* USER CODE END Header */ - -/* Includes ------------------------------------------------------------------*/ -#include "main.h" -#include "stm32f1xx_it.h" -/* Private includes ----------------------------------------------------------*/ -/* USER CODE BEGIN Includes */ -/* USER CODE END Includes */ - -/* Private typedef -----------------------------------------------------------*/ -/* USER CODE BEGIN TD */ - -/* USER CODE END TD */ - -/* Private define ------------------------------------------------------------*/ -/* USER CODE BEGIN PD */ - -/* USER CODE END PD */ - -/* Private macro -------------------------------------------------------------*/ -/* USER CODE BEGIN PM */ - -/* USER CODE END PM */ - -/* Private variables ---------------------------------------------------------*/ -/* USER CODE BEGIN PV */ - -/* USER CODE END PV */ - -/* Private function prototypes -----------------------------------------------*/ -/* USER CODE BEGIN PFP */ - -/* USER CODE END PFP */ - -/* Private user code ---------------------------------------------------------*/ -/* USER CODE BEGIN 0 */ - -/* USER CODE END 0 */ - -/* External variables --------------------------------------------------------*/ -extern PCD_HandleTypeDef hpcd_USB_FS; -/* USER CODE BEGIN EV */ - -/* USER CODE END EV */ - -/******************************************************************************/ -/* Cortex-M3 Processor Interruption and Exception Handlers */ -/******************************************************************************/ -/** - * @brief This function handles Non maskable interrupt. - */ -void NMI_Handler(void) -{ - /* USER CODE BEGIN NonMaskableInt_IRQn 0 */ - - /* USER CODE END NonMaskableInt_IRQn 0 */ - /* USER CODE BEGIN NonMaskableInt_IRQn 1 */ - while (1) - { - } - /* USER CODE END NonMaskableInt_IRQn 1 */ -} - -/** - * @brief This function handles Hard fault interrupt. - */ -void HardFault_Handler(void) -{ - /* USER CODE BEGIN HardFault_IRQn 0 */ - - /* USER CODE END HardFault_IRQn 0 */ - while (1) - { - /* USER CODE BEGIN W1_HardFault_IRQn 0 */ - /* USER CODE END W1_HardFault_IRQn 0 */ - } -} - -/** - * @brief This function handles Memory management fault. - */ -void MemManage_Handler(void) -{ - /* USER CODE BEGIN MemoryManagement_IRQn 0 */ - - /* USER CODE END MemoryManagement_IRQn 0 */ - while (1) - { - /* USER CODE BEGIN W1_MemoryManagement_IRQn 0 */ - /* USER CODE END W1_MemoryManagement_IRQn 0 */ - } -} - -/** - * @brief This function handles Prefetch fault, memory access fault. - */ -void BusFault_Handler(void) -{ - /* USER CODE BEGIN BusFault_IRQn 0 */ - - /* USER CODE END BusFault_IRQn 0 */ - while (1) - { - /* USER CODE BEGIN W1_BusFault_IRQn 0 */ - /* USER CODE END W1_BusFault_IRQn 0 */ - } -} - -/** - * @brief This function handles Undefined instruction or illegal state. - */ -void UsageFault_Handler(void) -{ - /* USER CODE BEGIN UsageFault_IRQn 0 */ - - /* USER CODE END UsageFault_IRQn 0 */ - while (1) - { - /* USER CODE BEGIN W1_UsageFault_IRQn 0 */ - /* USER CODE END W1_UsageFault_IRQn 0 */ - } -} - -/** - * @brief This function handles System service call via SWI instruction. - */ -void SVC_Handler(void) -{ - /* USER CODE BEGIN SVCall_IRQn 0 */ - - /* USER CODE END SVCall_IRQn 0 */ - /* USER CODE BEGIN SVCall_IRQn 1 */ - - /* USER CODE END SVCall_IRQn 1 */ -} - -/** - * @brief This function handles Debug monitor. - */ -void DebugMon_Handler(void) -{ - /* USER CODE BEGIN DebugMonitor_IRQn 0 */ - - /* USER CODE END DebugMonitor_IRQn 0 */ - /* USER CODE BEGIN DebugMonitor_IRQn 1 */ - - /* USER CODE END DebugMonitor_IRQn 1 */ -} - -/** - * @brief This function handles Pendable request for system service. - */ -void PendSV_Handler(void) -{ - /* USER CODE BEGIN PendSV_IRQn 0 */ - - /* USER CODE END PendSV_IRQn 0 */ - /* USER CODE BEGIN PendSV_IRQn 1 */ - - /* USER CODE END PendSV_IRQn 1 */ -} - -/** - * @brief This function handles System tick timer. - */ -void SysTick_Handler(void) -{ - /* USER CODE BEGIN SysTick_IRQn 0 */ - - /* USER CODE END SysTick_IRQn 0 */ - HAL_IncTick(); - /* USER CODE BEGIN SysTick_IRQn 1 */ - - /* USER CODE END SysTick_IRQn 1 */ -} - -/******************************************************************************/ -/* STM32F1xx Peripheral Interrupt Handlers */ -/* Add here the Interrupt Handlers for the used peripherals. */ -/* For the available peripheral interrupt handler names, */ -/* please refer to the startup file (startup_stm32f1xx.s). */ -/******************************************************************************/ - -/** - * @brief This function handles USB low priority or CAN RX0 interrupts. - */ -void USB_LP_CAN1_RX0_IRQHandler(void) -{ - /* USER CODE BEGIN USB_LP_CAN1_RX0_IRQn 0 */ - - /* USER CODE END USB_LP_CAN1_RX0_IRQn 0 */ - HAL_PCD_IRQHandler(&hpcd_USB_FS); - /* USER CODE BEGIN USB_LP_CAN1_RX0_IRQn 1 */ - - /* USER CODE END USB_LP_CAN1_RX0_IRQn 1 */ -} - -/* USER CODE BEGIN 1 */ - -/* USER CODE END 1 */ -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file stm32f1xx_it.c + * @brief Interrupt Service Routines. + ****************************************************************************** + * @attention + * + * Copyright (c) 2022 STMicroelectronics. + * All rights reserved. + * + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. + * + ****************************************************************************** + */ +/* USER CODE END Header */ + +/* Includes ------------------------------------------------------------------*/ +#include "main.h" +#include "stm32f1xx_it.h" +/* Private includes ----------------------------------------------------------*/ +/* USER CODE BEGIN Includes */ +/* USER CODE END Includes */ + +/* Private typedef -----------------------------------------------------------*/ +/* USER CODE BEGIN TD */ + +/* USER CODE END TD */ + +/* Private define ------------------------------------------------------------*/ +/* USER CODE BEGIN PD */ + +/* USER CODE END PD */ + +/* Private macro -------------------------------------------------------------*/ +/* USER CODE BEGIN PM */ + +/* USER CODE END PM */ + +/* Private variables ---------------------------------------------------------*/ +/* USER CODE BEGIN PV */ + +/* USER CODE END PV */ + +/* Private function prototypes -----------------------------------------------*/ +/* USER CODE BEGIN PFP */ + +/* USER CODE END PFP */ + +/* Private user code ---------------------------------------------------------*/ +/* USER CODE BEGIN 0 */ + +/* USER CODE END 0 */ + +/* External variables --------------------------------------------------------*/ + +/* USER CODE BEGIN EV */ + +/* USER CODE END EV */ + +/******************************************************************************/ +/* Cortex-M3 Processor Interruption and Exception Handlers */ +/******************************************************************************/ +/** + * @brief This function handles Non maskable interrupt. + */ +void NMI_Handler(void) +{ + /* USER CODE BEGIN NonMaskableInt_IRQn 0 */ + + /* USER CODE END NonMaskableInt_IRQn 0 */ + /* USER CODE BEGIN NonMaskableInt_IRQn 1 */ + while (1) + { + } + /* USER CODE END NonMaskableInt_IRQn 1 */ +} + +/** + * @brief This function handles Hard fault interrupt. + */ +void HardFault_Handler(void) +{ + /* USER CODE BEGIN HardFault_IRQn 0 */ + + /* USER CODE END HardFault_IRQn 0 */ + while (1) + { + /* USER CODE BEGIN W1_HardFault_IRQn 0 */ + /* USER CODE END W1_HardFault_IRQn 0 */ + } +} + +/** + * @brief This function handles Memory management fault. + */ +void MemManage_Handler(void) +{ + /* USER CODE BEGIN MemoryManagement_IRQn 0 */ + + /* USER CODE END MemoryManagement_IRQn 0 */ + while (1) + { + /* USER CODE BEGIN W1_MemoryManagement_IRQn 0 */ + /* USER CODE END W1_MemoryManagement_IRQn 0 */ + } +} + +/** + * @brief This function handles Prefetch fault, memory access fault. + */ +void BusFault_Handler(void) +{ + /* USER CODE BEGIN BusFault_IRQn 0 */ + + /* USER CODE END BusFault_IRQn 0 */ + while (1) + { + /* USER CODE BEGIN W1_BusFault_IRQn 0 */ + /* USER CODE END W1_BusFault_IRQn 0 */ + } +} + +/** + * @brief This function handles Undefined instruction or illegal state. + */ +void UsageFault_Handler(void) +{ + /* USER CODE BEGIN UsageFault_IRQn 0 */ + + /* USER CODE END UsageFault_IRQn 0 */ + while (1) + { + /* USER CODE BEGIN W1_UsageFault_IRQn 0 */ + /* USER CODE END W1_UsageFault_IRQn 0 */ + } +} + +/** + * @brief This function handles System service call via SWI instruction. + */ +void SVC_Handler(void) +{ + /* USER CODE BEGIN SVCall_IRQn 0 */ + + /* USER CODE END SVCall_IRQn 0 */ + /* USER CODE BEGIN SVCall_IRQn 1 */ + + /* USER CODE END SVCall_IRQn 1 */ +} + +/** + * @brief This function handles Debug monitor. + */ +void DebugMon_Handler(void) +{ + /* USER CODE BEGIN DebugMonitor_IRQn 0 */ + + /* USER CODE END DebugMonitor_IRQn 0 */ + /* USER CODE BEGIN DebugMonitor_IRQn 1 */ + + /* USER CODE END DebugMonitor_IRQn 1 */ +} + +/** + * @brief This function handles Pendable request for system service. + */ +void PendSV_Handler(void) +{ + /* USER CODE BEGIN PendSV_IRQn 0 */ + + /* USER CODE END PendSV_IRQn 0 */ + /* USER CODE BEGIN PendSV_IRQn 1 */ + + /* USER CODE END PendSV_IRQn 1 */ +} + +/** + * @brief This function handles System tick timer. + */ +void SysTick_Handler(void) +{ + /* USER CODE BEGIN SysTick_IRQn 0 */ + + /* USER CODE END SysTick_IRQn 0 */ + HAL_IncTick(); + /* USER CODE BEGIN SysTick_IRQn 1 */ + + /* USER CODE END SysTick_IRQn 1 */ +} + +/******************************************************************************/ +/* STM32F1xx Peripheral Interrupt Handlers */ +/* Add here the Interrupt Handlers for the used peripherals. */ +/* For the available peripheral interrupt handler names, */ +/* please refer to the startup file (startup_stm32f1xx.s). */ +/******************************************************************************/ + +/* USER CODE BEGIN 1 */ + +/* USER CODE END 1 */ diff --git a/stm32f103/Core/Src/syscalls.c b/f103c8t6_HAL/Core/Src/syscalls.c similarity index 86% rename from stm32f103/Core/Src/syscalls.c rename to f103c8t6_HAL/Core/Src/syscalls.c index bc0dd6c..fadb992 100644 --- a/stm32f103/Core/Src/syscalls.c +++ b/f103c8t6_HAL/Core/Src/syscalls.c @@ -10,13 +10,12 @@ ****************************************************************************** * @attention * - *

© Copyright (c) 2020 STMicroelectronics. - * All rights reserved.

+ * Copyright (c) 2022 STMicroelectronics. + * All rights reserved. * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. * ****************************************************************************** */ diff --git a/stm32f103/Core/Src/sysmem.c b/f103c8t6_HAL/Core/Src/sysmem.c similarity index 87% rename from stm32f103/Core/Src/sysmem.c rename to f103c8t6_HAL/Core/Src/sysmem.c index d7cc52c..54081ac 100644 --- a/stm32f103/Core/Src/sysmem.c +++ b/f103c8t6_HAL/Core/Src/sysmem.c @@ -10,13 +10,12 @@ ****************************************************************************** * @attention * - *

© Copyright (c) 2020 STMicroelectronics. - * All rights reserved.

+ * Copyright (c) 2022 STMicroelectronics. + * All rights reserved. * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. * ****************************************************************************** */ diff --git a/stm32f103/Core/Src/system_stm32f1xx.c b/f103c8t6_HAL/Core/Src/system_stm32f1xx.c similarity index 97% rename from stm32f103/Core/Src/system_stm32f1xx.c rename to f103c8t6_HAL/Core/Src/system_stm32f1xx.c index 052bec6..bc96aae 100644 --- a/stm32f103/Core/Src/system_stm32f1xx.c +++ b/f103c8t6_HAL/Core/Src/system_stm32f1xx.c @@ -1,408 +1,408 @@ -/** - ****************************************************************************** - * @file system_stm32f1xx.c - * @author MCD Application Team - * @brief CMSIS Cortex-M3 Device Peripheral Access Layer System Source File. - * - * 1. This file provides two functions and one global variable to be called from - * user application: - * - SystemInit(): Setups the system clock (System clock source, PLL Multiplier - * factors, AHB/APBx prescalers and Flash settings). - * This function is called at startup just after reset and - * before branch to main program. This call is made inside - * the "startup_stm32f1xx_xx.s" file. - * - * - SystemCoreClock variable: Contains the core clock (HCLK), it can be used - * by the user application to setup the SysTick - * timer or configure other parameters. - * - * - SystemCoreClockUpdate(): Updates the variable SystemCoreClock and must - * be called whenever the core clock is changed - * during program execution. - * - * 2. After each device reset the HSI (8 MHz) is used as system clock source. - * Then SystemInit() function is called, in "startup_stm32f1xx_xx.s" file, to - * configure the system clock before to branch to main program. - * - * 4. The default value of HSE crystal is set to 8 MHz (or 25 MHz, depending on - * the product used), refer to "HSE_VALUE". - * When HSE is used as system clock source, directly or through PLL, and you - * are using different crystal you have to adapt the HSE value to your own - * configuration. - * - ****************************************************************************** - * @attention - * - *

© Copyright (c) 2017 STMicroelectronics. - * All rights reserved.

- * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/** @addtogroup CMSIS - * @{ - */ - -/** @addtogroup stm32f1xx_system - * @{ - */ - -/** @addtogroup STM32F1xx_System_Private_Includes - * @{ - */ - -#include "stm32f1xx.h" - -/** - * @} - */ - -/** @addtogroup STM32F1xx_System_Private_TypesDefinitions - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32F1xx_System_Private_Defines - * @{ - */ - -#if !defined (HSE_VALUE) - #define HSE_VALUE 8000000U /*!< Default value of the External oscillator in Hz. - This value can be provided and adapted by the user application. */ -#endif /* HSE_VALUE */ - -#if !defined (HSI_VALUE) - #define HSI_VALUE 8000000U /*!< Default value of the Internal oscillator in Hz. - This value can be provided and adapted by the user application. */ -#endif /* HSI_VALUE */ - -/*!< Uncomment the following line if you need to use external SRAM */ -#if defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE) || defined(STM32F103xG) -/* #define DATA_IN_ExtSRAM */ -#endif /* STM32F100xE || STM32F101xE || STM32F101xG || STM32F103xE || STM32F103xG */ - -/* Note: Following vector table addresses must be defined in line with linker - configuration. */ -/*!< Uncomment the following line if you need to relocate the vector table - anywhere in Flash or Sram, else the vector table is kept at the automatic - remap of boot address selected */ -/* #define USER_VECT_TAB_ADDRESS */ - -#if defined(USER_VECT_TAB_ADDRESS) -/*!< Uncomment the following line if you need to relocate your vector Table - in Sram else user remap will be done in Flash. */ -/* #define VECT_TAB_SRAM */ -#if defined(VECT_TAB_SRAM) -#define VECT_TAB_BASE_ADDRESS SRAM_BASE /*!< Vector Table base address field. - This value must be a multiple of 0x200. */ -#define VECT_TAB_OFFSET 0x00000000U /*!< Vector Table base offset field. - This value must be a multiple of 0x200. */ -#else -#define VECT_TAB_BASE_ADDRESS FLASH_BASE /*!< Vector Table base address field. - This value must be a multiple of 0x200. */ -#define VECT_TAB_OFFSET 0x00000000U /*!< Vector Table base offset field. - This value must be a multiple of 0x200. */ -#endif /* VECT_TAB_SRAM */ -#endif /* USER_VECT_TAB_ADDRESS */ - -/******************************************************************************/ - -/** - * @} - */ - -/** @addtogroup STM32F1xx_System_Private_Macros - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32F1xx_System_Private_Variables - * @{ - */ - - /* This variable is updated in three ways: - 1) by calling CMSIS function SystemCoreClockUpdate() - 2) by calling HAL API function HAL_RCC_GetHCLKFreq() - 3) each time HAL_RCC_ClockConfig() is called to configure the system clock frequency - Note: If you use this function to configure the system clock; then there - is no need to call the 2 first functions listed above, since SystemCoreClock - variable is updated automatically. - */ -uint32_t SystemCoreClock = 16000000; -const uint8_t AHBPrescTable[16U] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 7, 8, 9}; -const uint8_t APBPrescTable[8U] = {0, 0, 0, 0, 1, 2, 3, 4}; - -/** - * @} - */ - -/** @addtogroup STM32F1xx_System_Private_FunctionPrototypes - * @{ - */ - -#if defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE) || defined(STM32F103xG) -#ifdef DATA_IN_ExtSRAM - static void SystemInit_ExtMemCtl(void); -#endif /* DATA_IN_ExtSRAM */ -#endif /* STM32F100xE || STM32F101xE || STM32F101xG || STM32F103xE || STM32F103xG */ - -/** - * @} - */ - -/** @addtogroup STM32F1xx_System_Private_Functions - * @{ - */ - -/** - * @brief Setup the microcontroller system - * Initialize the Embedded Flash Interface, the PLL and update the - * SystemCoreClock variable. - * @note This function should be used only after reset. - * @param None - * @retval None - */ -void SystemInit (void) -{ -#if defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE) || defined(STM32F103xG) - #ifdef DATA_IN_ExtSRAM - SystemInit_ExtMemCtl(); - #endif /* DATA_IN_ExtSRAM */ -#endif - - /* Configure the Vector Table location -------------------------------------*/ -#if defined(USER_VECT_TAB_ADDRESS) - SCB->VTOR = VECT_TAB_BASE_ADDRESS | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM. */ -#endif /* USER_VECT_TAB_ADDRESS */ -} - -/** - * @brief Update SystemCoreClock variable according to Clock Register Values. - * The SystemCoreClock variable contains the core clock (HCLK), it can - * be used by the user application to setup the SysTick timer or configure - * other parameters. - * - * @note Each time the core clock (HCLK) changes, this function must be called - * to update SystemCoreClock variable value. Otherwise, any configuration - * based on this variable will be incorrect. - * - * @note - The system frequency computed by this function is not the real - * frequency in the chip. It is calculated based on the predefined - * constant and the selected clock source: - * - * - If SYSCLK source is HSI, SystemCoreClock will contain the HSI_VALUE(*) - * - * - If SYSCLK source is HSE, SystemCoreClock will contain the HSE_VALUE(**) - * - * - If SYSCLK source is PLL, SystemCoreClock will contain the HSE_VALUE(**) - * or HSI_VALUE(*) multiplied by the PLL factors. - * - * (*) HSI_VALUE is a constant defined in stm32f1xx.h file (default value - * 8 MHz) but the real value may vary depending on the variations - * in voltage and temperature. - * - * (**) HSE_VALUE is a constant defined in stm32f1xx.h file (default value - * 8 MHz or 25 MHz, depending on the product used), user has to ensure - * that HSE_VALUE is same as the real frequency of the crystal used. - * Otherwise, this function may have wrong result. - * - * - The result of this function could be not correct when using fractional - * value for HSE crystal. - * @param None - * @retval None - */ -void SystemCoreClockUpdate (void) -{ - uint32_t tmp = 0U, pllmull = 0U, pllsource = 0U; - -#if defined(STM32F105xC) || defined(STM32F107xC) - uint32_t prediv1source = 0U, prediv1factor = 0U, prediv2factor = 0U, pll2mull = 0U; -#endif /* STM32F105xC */ - -#if defined(STM32F100xB) || defined(STM32F100xE) - uint32_t prediv1factor = 0U; -#endif /* STM32F100xB or STM32F100xE */ - - /* Get SYSCLK source -------------------------------------------------------*/ - tmp = RCC->CFGR & RCC_CFGR_SWS; - - switch (tmp) - { - case 0x00U: /* HSI used as system clock */ - SystemCoreClock = HSI_VALUE; - break; - case 0x04U: /* HSE used as system clock */ - SystemCoreClock = HSE_VALUE; - break; - case 0x08U: /* PLL used as system clock */ - - /* Get PLL clock source and multiplication factor ----------------------*/ - pllmull = RCC->CFGR & RCC_CFGR_PLLMULL; - pllsource = RCC->CFGR & RCC_CFGR_PLLSRC; - -#if !defined(STM32F105xC) && !defined(STM32F107xC) - pllmull = ( pllmull >> 18U) + 2U; - - if (pllsource == 0x00U) - { - /* HSI oscillator clock divided by 2 selected as PLL clock entry */ - SystemCoreClock = (HSI_VALUE >> 1U) * pllmull; - } - else - { - #if defined(STM32F100xB) || defined(STM32F100xE) - prediv1factor = (RCC->CFGR2 & RCC_CFGR2_PREDIV1) + 1U; - /* HSE oscillator clock selected as PREDIV1 clock entry */ - SystemCoreClock = (HSE_VALUE / prediv1factor) * pllmull; - #else - /* HSE selected as PLL clock entry */ - if ((RCC->CFGR & RCC_CFGR_PLLXTPRE) != (uint32_t)RESET) - {/* HSE oscillator clock divided by 2 */ - SystemCoreClock = (HSE_VALUE >> 1U) * pllmull; - } - else - { - SystemCoreClock = HSE_VALUE * pllmull; - } - #endif - } -#else - pllmull = pllmull >> 18U; - - if (pllmull != 0x0DU) - { - pllmull += 2U; - } - else - { /* PLL multiplication factor = PLL input clock * 6.5 */ - pllmull = 13U / 2U; - } - - if (pllsource == 0x00U) - { - /* HSI oscillator clock divided by 2 selected as PLL clock entry */ - SystemCoreClock = (HSI_VALUE >> 1U) * pllmull; - } - else - {/* PREDIV1 selected as PLL clock entry */ - - /* Get PREDIV1 clock source and division factor */ - prediv1source = RCC->CFGR2 & RCC_CFGR2_PREDIV1SRC; - prediv1factor = (RCC->CFGR2 & RCC_CFGR2_PREDIV1) + 1U; - - if (prediv1source == 0U) - { - /* HSE oscillator clock selected as PREDIV1 clock entry */ - SystemCoreClock = (HSE_VALUE / prediv1factor) * pllmull; - } - else - {/* PLL2 clock selected as PREDIV1 clock entry */ - - /* Get PREDIV2 division factor and PLL2 multiplication factor */ - prediv2factor = ((RCC->CFGR2 & RCC_CFGR2_PREDIV2) >> 4U) + 1U; - pll2mull = ((RCC->CFGR2 & RCC_CFGR2_PLL2MUL) >> 8U) + 2U; - SystemCoreClock = (((HSE_VALUE / prediv2factor) * pll2mull) / prediv1factor) * pllmull; - } - } -#endif /* STM32F105xC */ - break; - - default: - SystemCoreClock = HSI_VALUE; - break; - } - - /* Compute HCLK clock frequency ----------------*/ - /* Get HCLK prescaler */ - tmp = AHBPrescTable[((RCC->CFGR & RCC_CFGR_HPRE) >> 4U)]; - /* HCLK clock frequency */ - SystemCoreClock >>= tmp; -} - -#if defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE) || defined(STM32F103xG) -/** - * @brief Setup the external memory controller. Called in startup_stm32f1xx.s - * before jump to __main - * @param None - * @retval None - */ -#ifdef DATA_IN_ExtSRAM -/** - * @brief Setup the external memory controller. - * Called in startup_stm32f1xx_xx.s/.c before jump to main. - * This function configures the external SRAM mounted on STM3210E-EVAL - * board (STM32 High density devices). This SRAM will be used as program - * data memory (including heap and stack). - * @param None - * @retval None - */ -void SystemInit_ExtMemCtl(void) -{ - __IO uint32_t tmpreg; - /*!< FSMC Bank1 NOR/SRAM3 is used for the STM3210E-EVAL, if another Bank is - required, then adjust the Register Addresses */ - - /* Enable FSMC clock */ - RCC->AHBENR = 0x00000114U; - - /* Delay after an RCC peripheral clock enabling */ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_FSMCEN); - - /* Enable GPIOD, GPIOE, GPIOF and GPIOG clocks */ - RCC->APB2ENR = 0x000001E0U; - - /* Delay after an RCC peripheral clock enabling */ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPDEN); - - (void)(tmpreg); - -/* --------------- SRAM Data lines, NOE and NWE configuration ---------------*/ -/*---------------- SRAM Address lines configuration -------------------------*/ -/*---------------- NOE and NWE configuration --------------------------------*/ -/*---------------- NE3 configuration ----------------------------------------*/ -/*---------------- NBL0, NBL1 configuration ---------------------------------*/ - - GPIOD->CRL = 0x44BB44BBU; - GPIOD->CRH = 0xBBBBBBBBU; - - GPIOE->CRL = 0xB44444BBU; - GPIOE->CRH = 0xBBBBBBBBU; - - GPIOF->CRL = 0x44BBBBBBU; - GPIOF->CRH = 0xBBBB4444U; - - GPIOG->CRL = 0x44BBBBBBU; - GPIOG->CRH = 0x444B4B44U; - -/*---------------- FSMC Configuration ---------------------------------------*/ -/*---------------- Enable FSMC Bank1_SRAM Bank ------------------------------*/ - - FSMC_Bank1->BTCR[4U] = 0x00001091U; - FSMC_Bank1->BTCR[5U] = 0x00110212U; -} -#endif /* DATA_IN_ExtSRAM */ -#endif /* STM32F100xE || STM32F101xE || STM32F101xG || STM32F103xE || STM32F103xG */ - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file system_stm32f1xx.c + * @author MCD Application Team + * @brief CMSIS Cortex-M3 Device Peripheral Access Layer System Source File. + * + * 1. This file provides two functions and one global variable to be called from + * user application: + * - SystemInit(): Setups the system clock (System clock source, PLL Multiplier + * factors, AHB/APBx prescalers and Flash settings). + * This function is called at startup just after reset and + * before branch to main program. This call is made inside + * the "startup_stm32f1xx_xx.s" file. + * + * - SystemCoreClock variable: Contains the core clock (HCLK), it can be used + * by the user application to setup the SysTick + * timer or configure other parameters. + * + * - SystemCoreClockUpdate(): Updates the variable SystemCoreClock and must + * be called whenever the core clock is changed + * during program execution. + * + * 2. After each device reset the HSI (8 MHz) is used as system clock source. + * Then SystemInit() function is called, in "startup_stm32f1xx_xx.s" file, to + * configure the system clock before to branch to main program. + * + * 4. The default value of HSE crystal is set to 8 MHz (or 25 MHz, depending on + * the product used), refer to "HSE_VALUE". + * When HSE is used as system clock source, directly or through PLL, and you + * are using different crystal you have to adapt the HSE value to your own + * configuration. + * + ****************************************************************************** + * @attention + * + *

© Copyright (c) 2017 STMicroelectronics. + * All rights reserved.

+ * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/** @addtogroup CMSIS + * @{ + */ + +/** @addtogroup stm32f1xx_system + * @{ + */ + +/** @addtogroup STM32F1xx_System_Private_Includes + * @{ + */ + +#include "stm32f1xx.h" + +/** + * @} + */ + +/** @addtogroup STM32F1xx_System_Private_TypesDefinitions + * @{ + */ + +/** + * @} + */ + +/** @addtogroup STM32F1xx_System_Private_Defines + * @{ + */ + +#if !defined (HSE_VALUE) + #define HSE_VALUE 8000000U /*!< Default value of the External oscillator in Hz. + This value can be provided and adapted by the user application. */ +#endif /* HSE_VALUE */ + +#if !defined (HSI_VALUE) + #define HSI_VALUE 8000000U /*!< Default value of the Internal oscillator in Hz. + This value can be provided and adapted by the user application. */ +#endif /* HSI_VALUE */ + +/*!< Uncomment the following line if you need to use external SRAM */ +#if defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE) || defined(STM32F103xG) +/* #define DATA_IN_ExtSRAM */ +#endif /* STM32F100xE || STM32F101xE || STM32F101xG || STM32F103xE || STM32F103xG */ + +/* Note: Following vector table addresses must be defined in line with linker + configuration. */ +/*!< Uncomment the following line if you need to relocate the vector table + anywhere in Flash or Sram, else the vector table is kept at the automatic + remap of boot address selected */ +/* #define USER_VECT_TAB_ADDRESS */ + +#if defined(USER_VECT_TAB_ADDRESS) +/*!< Uncomment the following line if you need to relocate your vector Table + in Sram else user remap will be done in Flash. */ +/* #define VECT_TAB_SRAM */ +#if defined(VECT_TAB_SRAM) +#define VECT_TAB_BASE_ADDRESS SRAM_BASE /*!< Vector Table base address field. + This value must be a multiple of 0x200. */ +#define VECT_TAB_OFFSET 0x00000000U /*!< Vector Table base offset field. + This value must be a multiple of 0x200. */ +#else +#define VECT_TAB_BASE_ADDRESS FLASH_BASE /*!< Vector Table base address field. + This value must be a multiple of 0x200. */ +#define VECT_TAB_OFFSET 0x00000000U /*!< Vector Table base offset field. + This value must be a multiple of 0x200. */ +#endif /* VECT_TAB_SRAM */ +#endif /* USER_VECT_TAB_ADDRESS */ + +/******************************************************************************/ + +/** + * @} + */ + +/** @addtogroup STM32F1xx_System_Private_Macros + * @{ + */ + +/** + * @} + */ + +/** @addtogroup STM32F1xx_System_Private_Variables + * @{ + */ + + /* This variable is updated in three ways: + 1) by calling CMSIS function SystemCoreClockUpdate() + 2) by calling HAL API function HAL_RCC_GetHCLKFreq() + 3) each time HAL_RCC_ClockConfig() is called to configure the system clock frequency + Note: If you use this function to configure the system clock; then there + is no need to call the 2 first functions listed above, since SystemCoreClock + variable is updated automatically. + */ +uint32_t SystemCoreClock = 16000000; +const uint8_t AHBPrescTable[16U] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 7, 8, 9}; +const uint8_t APBPrescTable[8U] = {0, 0, 0, 0, 1, 2, 3, 4}; + +/** + * @} + */ + +/** @addtogroup STM32F1xx_System_Private_FunctionPrototypes + * @{ + */ + +#if defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE) || defined(STM32F103xG) +#ifdef DATA_IN_ExtSRAM + static void SystemInit_ExtMemCtl(void); +#endif /* DATA_IN_ExtSRAM */ +#endif /* STM32F100xE || STM32F101xE || STM32F101xG || STM32F103xE || STM32F103xG */ + +/** + * @} + */ + +/** @addtogroup STM32F1xx_System_Private_Functions + * @{ + */ + +/** + * @brief Setup the microcontroller system + * Initialize the Embedded Flash Interface, the PLL and update the + * SystemCoreClock variable. + * @note This function should be used only after reset. + * @param None + * @retval None + */ +void SystemInit (void) +{ +#if defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE) || defined(STM32F103xG) + #ifdef DATA_IN_ExtSRAM + SystemInit_ExtMemCtl(); + #endif /* DATA_IN_ExtSRAM */ +#endif + + /* Configure the Vector Table location -------------------------------------*/ +#if defined(USER_VECT_TAB_ADDRESS) + SCB->VTOR = VECT_TAB_BASE_ADDRESS | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM. */ +#endif /* USER_VECT_TAB_ADDRESS */ +} + +/** + * @brief Update SystemCoreClock variable according to Clock Register Values. + * The SystemCoreClock variable contains the core clock (HCLK), it can + * be used by the user application to setup the SysTick timer or configure + * other parameters. + * + * @note Each time the core clock (HCLK) changes, this function must be called + * to update SystemCoreClock variable value. Otherwise, any configuration + * based on this variable will be incorrect. + * + * @note - The system frequency computed by this function is not the real + * frequency in the chip. It is calculated based on the predefined + * constant and the selected clock source: + * + * - If SYSCLK source is HSI, SystemCoreClock will contain the HSI_VALUE(*) + * + * - If SYSCLK source is HSE, SystemCoreClock will contain the HSE_VALUE(**) + * + * - If SYSCLK source is PLL, SystemCoreClock will contain the HSE_VALUE(**) + * or HSI_VALUE(*) multiplied by the PLL factors. + * + * (*) HSI_VALUE is a constant defined in stm32f1xx.h file (default value + * 8 MHz) but the real value may vary depending on the variations + * in voltage and temperature. + * + * (**) HSE_VALUE is a constant defined in stm32f1xx.h file (default value + * 8 MHz or 25 MHz, depending on the product used), user has to ensure + * that HSE_VALUE is same as the real frequency of the crystal used. + * Otherwise, this function may have wrong result. + * + * - The result of this function could be not correct when using fractional + * value for HSE crystal. + * @param None + * @retval None + */ +void SystemCoreClockUpdate (void) +{ + uint32_t tmp = 0U, pllmull = 0U, pllsource = 0U; + +#if defined(STM32F105xC) || defined(STM32F107xC) + uint32_t prediv1source = 0U, prediv1factor = 0U, prediv2factor = 0U, pll2mull = 0U; +#endif /* STM32F105xC */ + +#if defined(STM32F100xB) || defined(STM32F100xE) + uint32_t prediv1factor = 0U; +#endif /* STM32F100xB or STM32F100xE */ + + /* Get SYSCLK source -------------------------------------------------------*/ + tmp = RCC->CFGR & RCC_CFGR_SWS; + + switch (tmp) + { + case 0x00U: /* HSI used as system clock */ + SystemCoreClock = HSI_VALUE; + break; + case 0x04U: /* HSE used as system clock */ + SystemCoreClock = HSE_VALUE; + break; + case 0x08U: /* PLL used as system clock */ + + /* Get PLL clock source and multiplication factor ----------------------*/ + pllmull = RCC->CFGR & RCC_CFGR_PLLMULL; + pllsource = RCC->CFGR & RCC_CFGR_PLLSRC; + +#if !defined(STM32F105xC) && !defined(STM32F107xC) + pllmull = ( pllmull >> 18U) + 2U; + + if (pllsource == 0x00U) + { + /* HSI oscillator clock divided by 2 selected as PLL clock entry */ + SystemCoreClock = (HSI_VALUE >> 1U) * pllmull; + } + else + { + #if defined(STM32F100xB) || defined(STM32F100xE) + prediv1factor = (RCC->CFGR2 & RCC_CFGR2_PREDIV1) + 1U; + /* HSE oscillator clock selected as PREDIV1 clock entry */ + SystemCoreClock = (HSE_VALUE / prediv1factor) * pllmull; + #else + /* HSE selected as PLL clock entry */ + if ((RCC->CFGR & RCC_CFGR_PLLXTPRE) != (uint32_t)RESET) + {/* HSE oscillator clock divided by 2 */ + SystemCoreClock = (HSE_VALUE >> 1U) * pllmull; + } + else + { + SystemCoreClock = HSE_VALUE * pllmull; + } + #endif + } +#else + pllmull = pllmull >> 18U; + + if (pllmull != 0x0DU) + { + pllmull += 2U; + } + else + { /* PLL multiplication factor = PLL input clock * 6.5 */ + pllmull = 13U / 2U; + } + + if (pllsource == 0x00U) + { + /* HSI oscillator clock divided by 2 selected as PLL clock entry */ + SystemCoreClock = (HSI_VALUE >> 1U) * pllmull; + } + else + {/* PREDIV1 selected as PLL clock entry */ + + /* Get PREDIV1 clock source and division factor */ + prediv1source = RCC->CFGR2 & RCC_CFGR2_PREDIV1SRC; + prediv1factor = (RCC->CFGR2 & RCC_CFGR2_PREDIV1) + 1U; + + if (prediv1source == 0U) + { + /* HSE oscillator clock selected as PREDIV1 clock entry */ + SystemCoreClock = (HSE_VALUE / prediv1factor) * pllmull; + } + else + {/* PLL2 clock selected as PREDIV1 clock entry */ + + /* Get PREDIV2 division factor and PLL2 multiplication factor */ + prediv2factor = ((RCC->CFGR2 & RCC_CFGR2_PREDIV2) >> 4U) + 1U; + pll2mull = ((RCC->CFGR2 & RCC_CFGR2_PLL2MUL) >> 8U) + 2U; + SystemCoreClock = (((HSE_VALUE / prediv2factor) * pll2mull) / prediv1factor) * pllmull; + } + } +#endif /* STM32F105xC */ + break; + + default: + SystemCoreClock = HSI_VALUE; + break; + } + + /* Compute HCLK clock frequency ----------------*/ + /* Get HCLK prescaler */ + tmp = AHBPrescTable[((RCC->CFGR & RCC_CFGR_HPRE) >> 4U)]; + /* HCLK clock frequency */ + SystemCoreClock >>= tmp; +} + +#if defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE) || defined(STM32F103xG) +/** + * @brief Setup the external memory controller. Called in startup_stm32f1xx.s + * before jump to __main + * @param None + * @retval None + */ +#ifdef DATA_IN_ExtSRAM +/** + * @brief Setup the external memory controller. + * Called in startup_stm32f1xx_xx.s/.c before jump to main. + * This function configures the external SRAM mounted on STM3210E-EVAL + * board (STM32 High density devices). This SRAM will be used as program + * data memory (including heap and stack). + * @param None + * @retval None + */ +void SystemInit_ExtMemCtl(void) +{ + __IO uint32_t tmpreg; + /*!< FSMC Bank1 NOR/SRAM3 is used for the STM3210E-EVAL, if another Bank is + required, then adjust the Register Addresses */ + + /* Enable FSMC clock */ + RCC->AHBENR = 0x00000114U; + + /* Delay after an RCC peripheral clock enabling */ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_FSMCEN); + + /* Enable GPIOD, GPIOE, GPIOF and GPIOG clocks */ + RCC->APB2ENR = 0x000001E0U; + + /* Delay after an RCC peripheral clock enabling */ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPDEN); + + (void)(tmpreg); + +/* --------------- SRAM Data lines, NOE and NWE configuration ---------------*/ +/*---------------- SRAM Address lines configuration -------------------------*/ +/*---------------- NOE and NWE configuration --------------------------------*/ +/*---------------- NE3 configuration ----------------------------------------*/ +/*---------------- NBL0, NBL1 configuration ---------------------------------*/ + + GPIOD->CRL = 0x44BB44BBU; + GPIOD->CRH = 0xBBBBBBBBU; + + GPIOE->CRL = 0xB44444BBU; + GPIOE->CRH = 0xBBBBBBBBU; + + GPIOF->CRL = 0x44BBBBBBU; + GPIOF->CRH = 0xBBBB4444U; + + GPIOG->CRL = 0x44BBBBBBU; + GPIOG->CRH = 0x444B4B44U; + +/*---------------- FSMC Configuration ---------------------------------------*/ +/*---------------- Enable FSMC Bank1_SRAM Bank ------------------------------*/ + + FSMC_Bank1->BTCR[4U] = 0x00001091U; + FSMC_Bank1->BTCR[5U] = 0x00110212U; +} +#endif /* DATA_IN_ExtSRAM */ +#endif /* STM32F100xE || STM32F101xE || STM32F101xG || STM32F103xE || STM32F103xG */ + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Core/Startup/startup_stm32f103c8tx.s b/f103c8t6_HAL/Core/Startup/startup_stm32f103c8tx.s similarity index 96% rename from stm32f103/Core/Startup/startup_stm32f103c8tx.s rename to f103c8t6_HAL/Core/Startup/startup_stm32f103c8tx.s index 8f5e8de..f2b7fbe 100644 --- a/stm32f103/Core/Startup/startup_stm32f103c8tx.s +++ b/f103c8t6_HAL/Core/Startup/startup_stm32f103c8tx.s @@ -1,365 +1,365 @@ -/** - *************** (C) COPYRIGHT 2017 STMicroelectronics ************************ - * @file startup_stm32f103xb.s - * @author MCD Application Team - * @brief STM32F103xB Devices vector table for Atollic toolchain. - * This module performs: - * - Set the initial SP - * - Set the initial PC == Reset_Handler, - * - Set the vector table entries with the exceptions ISR address - * - Configure the clock system - * - Branches to main in the C library (which eventually - * calls main()). - * After Reset the Cortex-M3 processor is in Thread mode, - * priority is Privileged, and the Stack is set to Main. - ****************************************************************************** - * @attention - * - *

© Copyright (c) 2017 STMicroelectronics. - * All rights reserved.

- * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - - .syntax unified - .cpu cortex-m3 - .fpu softvfp - .thumb - -.global g_pfnVectors -.global Default_Handler - -/* start address for the initialization values of the .data section. -defined in linker script */ -.word _sidata -/* start address for the .data section. defined in linker script */ -.word _sdata -/* end address for the .data section. defined in linker script */ -.word _edata -/* start address for the .bss section. defined in linker script */ -.word _sbss -/* end address for the .bss section. defined in linker script */ -.word _ebss - -.equ BootRAM, 0xF108F85F -/** - * @brief This is the code that gets called when the processor first - * starts execution following a reset event. Only the absolutely - * necessary set is performed, after which the application - * supplied main() routine is called. - * @param None - * @retval : None -*/ - - .section .text.Reset_Handler - .weak Reset_Handler - .type Reset_Handler, %function -Reset_Handler: - -/* Copy the data segment initializers from flash to SRAM */ - ldr r0, =_sdata - ldr r1, =_edata - ldr r2, =_sidata - movs r3, #0 - b LoopCopyDataInit - -CopyDataInit: - ldr r4, [r2, r3] - str r4, [r0, r3] - adds r3, r3, #4 - -LoopCopyDataInit: - adds r4, r0, r3 - cmp r4, r1 - bcc CopyDataInit - -/* Zero fill the bss segment. */ - ldr r2, =_sbss - ldr r4, =_ebss - movs r3, #0 - b LoopFillZerobss - -FillZerobss: - str r3, [r2] - adds r2, r2, #4 - -LoopFillZerobss: - cmp r2, r4 - bcc FillZerobss - -/* Call the clock system intitialization function.*/ - bl SystemInit -/* Call static constructors */ - bl __libc_init_array -/* Call the application's entry point.*/ - bl main - bx lr -.size Reset_Handler, .-Reset_Handler - -/** - * @brief This is the code that gets called when the processor receives an - * unexpected interrupt. This simply enters an infinite loop, preserving - * the system state for examination by a debugger. - * - * @param None - * @retval : None -*/ - .section .text.Default_Handler,"ax",%progbits -Default_Handler: -Infinite_Loop: - b Infinite_Loop - .size Default_Handler, .-Default_Handler -/****************************************************************************** -* -* The minimal vector table for a Cortex M3. Note that the proper constructs -* must be placed on this to ensure that it ends up at physical address -* 0x0000.0000. -* -******************************************************************************/ - .section .isr_vector,"a",%progbits - .type g_pfnVectors, %object - .size g_pfnVectors, .-g_pfnVectors - - -g_pfnVectors: - - .word _estack - .word Reset_Handler - .word NMI_Handler - .word HardFault_Handler - .word MemManage_Handler - .word BusFault_Handler - .word UsageFault_Handler - .word 0 - .word 0 - .word 0 - .word 0 - .word SVC_Handler - .word DebugMon_Handler - .word 0 - .word PendSV_Handler - .word SysTick_Handler - .word WWDG_IRQHandler - .word PVD_IRQHandler - .word TAMPER_IRQHandler - .word RTC_IRQHandler - .word FLASH_IRQHandler - .word RCC_IRQHandler - .word EXTI0_IRQHandler - .word EXTI1_IRQHandler - .word EXTI2_IRQHandler - .word EXTI3_IRQHandler - .word EXTI4_IRQHandler - .word DMA1_Channel1_IRQHandler - .word DMA1_Channel2_IRQHandler - .word DMA1_Channel3_IRQHandler - .word DMA1_Channel4_IRQHandler - .word DMA1_Channel5_IRQHandler - .word DMA1_Channel6_IRQHandler - .word DMA1_Channel7_IRQHandler - .word ADC1_2_IRQHandler - .word USB_HP_CAN1_TX_IRQHandler - .word USB_LP_CAN1_RX0_IRQHandler - .word CAN1_RX1_IRQHandler - .word CAN1_SCE_IRQHandler - .word EXTI9_5_IRQHandler - .word TIM1_BRK_IRQHandler - .word TIM1_UP_IRQHandler - .word TIM1_TRG_COM_IRQHandler - .word TIM1_CC_IRQHandler - .word TIM2_IRQHandler - .word TIM3_IRQHandler - .word TIM4_IRQHandler - .word I2C1_EV_IRQHandler - .word I2C1_ER_IRQHandler - .word I2C2_EV_IRQHandler - .word I2C2_ER_IRQHandler - .word SPI1_IRQHandler - .word SPI2_IRQHandler - .word USART1_IRQHandler - .word USART2_IRQHandler - .word USART3_IRQHandler - .word EXTI15_10_IRQHandler - .word RTC_Alarm_IRQHandler - .word USBWakeUp_IRQHandler - .word 0 - .word 0 - .word 0 - .word 0 - .word 0 - .word 0 - .word 0 - .word BootRAM /* @0x108. This is for boot in RAM mode for - STM32F10x Medium Density devices. */ - -/******************************************************************************* -* -* Provide weak aliases for each Exception handler to the Default_Handler. -* As they are weak aliases, any function with the same name will override -* this definition. -* -*******************************************************************************/ - - .weak NMI_Handler - .thumb_set NMI_Handler,Default_Handler - - .weak HardFault_Handler - .thumb_set HardFault_Handler,Default_Handler - - .weak MemManage_Handler - .thumb_set MemManage_Handler,Default_Handler - - .weak BusFault_Handler - .thumb_set BusFault_Handler,Default_Handler - - .weak UsageFault_Handler - .thumb_set UsageFault_Handler,Default_Handler - - .weak SVC_Handler - .thumb_set SVC_Handler,Default_Handler - - .weak DebugMon_Handler - .thumb_set DebugMon_Handler,Default_Handler - - .weak PendSV_Handler - .thumb_set PendSV_Handler,Default_Handler - - .weak SysTick_Handler - .thumb_set SysTick_Handler,Default_Handler - - .weak WWDG_IRQHandler - .thumb_set WWDG_IRQHandler,Default_Handler - - .weak PVD_IRQHandler - .thumb_set PVD_IRQHandler,Default_Handler - - .weak TAMPER_IRQHandler - .thumb_set TAMPER_IRQHandler,Default_Handler - - .weak RTC_IRQHandler - .thumb_set RTC_IRQHandler,Default_Handler - - .weak FLASH_IRQHandler - .thumb_set FLASH_IRQHandler,Default_Handler - - .weak RCC_IRQHandler - .thumb_set RCC_IRQHandler,Default_Handler - - .weak EXTI0_IRQHandler - .thumb_set EXTI0_IRQHandler,Default_Handler - - .weak EXTI1_IRQHandler - .thumb_set EXTI1_IRQHandler,Default_Handler - - .weak EXTI2_IRQHandler - .thumb_set EXTI2_IRQHandler,Default_Handler - - .weak EXTI3_IRQHandler - .thumb_set EXTI3_IRQHandler,Default_Handler - - .weak EXTI4_IRQHandler - .thumb_set EXTI4_IRQHandler,Default_Handler - - .weak DMA1_Channel1_IRQHandler - .thumb_set DMA1_Channel1_IRQHandler,Default_Handler - - .weak DMA1_Channel2_IRQHandler - .thumb_set DMA1_Channel2_IRQHandler,Default_Handler - - .weak DMA1_Channel3_IRQHandler - .thumb_set DMA1_Channel3_IRQHandler,Default_Handler - - .weak DMA1_Channel4_IRQHandler - .thumb_set DMA1_Channel4_IRQHandler,Default_Handler - - .weak DMA1_Channel5_IRQHandler - .thumb_set DMA1_Channel5_IRQHandler,Default_Handler - - .weak DMA1_Channel6_IRQHandler - .thumb_set DMA1_Channel6_IRQHandler,Default_Handler - - .weak DMA1_Channel7_IRQHandler - .thumb_set DMA1_Channel7_IRQHandler,Default_Handler - - .weak ADC1_2_IRQHandler - .thumb_set ADC1_2_IRQHandler,Default_Handler - - .weak USB_HP_CAN1_TX_IRQHandler - .thumb_set USB_HP_CAN1_TX_IRQHandler,Default_Handler - - .weak USB_LP_CAN1_RX0_IRQHandler - .thumb_set USB_LP_CAN1_RX0_IRQHandler,Default_Handler - - .weak CAN1_RX1_IRQHandler - .thumb_set CAN1_RX1_IRQHandler,Default_Handler - - .weak CAN1_SCE_IRQHandler - .thumb_set CAN1_SCE_IRQHandler,Default_Handler - - .weak EXTI9_5_IRQHandler - .thumb_set EXTI9_5_IRQHandler,Default_Handler - - .weak TIM1_BRK_IRQHandler - .thumb_set TIM1_BRK_IRQHandler,Default_Handler - - .weak TIM1_UP_IRQHandler - .thumb_set TIM1_UP_IRQHandler,Default_Handler - - .weak TIM1_TRG_COM_IRQHandler - .thumb_set TIM1_TRG_COM_IRQHandler,Default_Handler - - .weak TIM1_CC_IRQHandler - .thumb_set TIM1_CC_IRQHandler,Default_Handler - - .weak TIM2_IRQHandler - .thumb_set TIM2_IRQHandler,Default_Handler - - .weak TIM3_IRQHandler - .thumb_set TIM3_IRQHandler,Default_Handler - - .weak TIM4_IRQHandler - .thumb_set TIM4_IRQHandler,Default_Handler - - .weak I2C1_EV_IRQHandler - .thumb_set I2C1_EV_IRQHandler,Default_Handler - - .weak I2C1_ER_IRQHandler - .thumb_set I2C1_ER_IRQHandler,Default_Handler - - .weak I2C2_EV_IRQHandler - .thumb_set I2C2_EV_IRQHandler,Default_Handler - - .weak I2C2_ER_IRQHandler - .thumb_set I2C2_ER_IRQHandler,Default_Handler - - .weak SPI1_IRQHandler - .thumb_set SPI1_IRQHandler,Default_Handler - - .weak SPI2_IRQHandler - .thumb_set SPI2_IRQHandler,Default_Handler - - .weak USART1_IRQHandler - .thumb_set USART1_IRQHandler,Default_Handler - - .weak USART2_IRQHandler - .thumb_set USART2_IRQHandler,Default_Handler - - .weak USART3_IRQHandler - .thumb_set USART3_IRQHandler,Default_Handler - - .weak EXTI15_10_IRQHandler - .thumb_set EXTI15_10_IRQHandler,Default_Handler - - .weak RTC_Alarm_IRQHandler - .thumb_set RTC_Alarm_IRQHandler,Default_Handler - - .weak USBWakeUp_IRQHandler - .thumb_set USBWakeUp_IRQHandler,Default_Handler - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ - +/** + *************** (C) COPYRIGHT 2017 STMicroelectronics ************************ + * @file startup_stm32f103xb.s + * @author MCD Application Team + * @brief STM32F103xB Devices vector table for Atollic toolchain. + * This module performs: + * - Set the initial SP + * - Set the initial PC == Reset_Handler, + * - Set the vector table entries with the exceptions ISR address + * - Configure the clock system + * - Branches to main in the C library (which eventually + * calls main()). + * After Reset the Cortex-M3 processor is in Thread mode, + * priority is Privileged, and the Stack is set to Main. + ****************************************************************************** + * @attention + * + *

© Copyright (c) 2017 STMicroelectronics. + * All rights reserved.

+ * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + + .syntax unified + .cpu cortex-m3 + .fpu softvfp + .thumb + +.global g_pfnVectors +.global Default_Handler + +/* start address for the initialization values of the .data section. +defined in linker script */ +.word _sidata +/* start address for the .data section. defined in linker script */ +.word _sdata +/* end address for the .data section. defined in linker script */ +.word _edata +/* start address for the .bss section. defined in linker script */ +.word _sbss +/* end address for the .bss section. defined in linker script */ +.word _ebss + +.equ BootRAM, 0xF108F85F +/** + * @brief This is the code that gets called when the processor first + * starts execution following a reset event. Only the absolutely + * necessary set is performed, after which the application + * supplied main() routine is called. + * @param None + * @retval : None +*/ + + .section .text.Reset_Handler + .weak Reset_Handler + .type Reset_Handler, %function +Reset_Handler: + +/* Copy the data segment initializers from flash to SRAM */ + ldr r0, =_sdata + ldr r1, =_edata + ldr r2, =_sidata + movs r3, #0 + b LoopCopyDataInit + +CopyDataInit: + ldr r4, [r2, r3] + str r4, [r0, r3] + adds r3, r3, #4 + +LoopCopyDataInit: + adds r4, r0, r3 + cmp r4, r1 + bcc CopyDataInit + +/* Zero fill the bss segment. */ + ldr r2, =_sbss + ldr r4, =_ebss + movs r3, #0 + b LoopFillZerobss + +FillZerobss: + str r3, [r2] + adds r2, r2, #4 + +LoopFillZerobss: + cmp r2, r4 + bcc FillZerobss + +/* Call the clock system intitialization function.*/ + bl SystemInit +/* Call static constructors */ + bl __libc_init_array +/* Call the application's entry point.*/ + bl main + bx lr +.size Reset_Handler, .-Reset_Handler + +/** + * @brief This is the code that gets called when the processor receives an + * unexpected interrupt. This simply enters an infinite loop, preserving + * the system state for examination by a debugger. + * + * @param None + * @retval : None +*/ + .section .text.Default_Handler,"ax",%progbits +Default_Handler: +Infinite_Loop: + b Infinite_Loop + .size Default_Handler, .-Default_Handler +/****************************************************************************** +* +* The minimal vector table for a Cortex M3. Note that the proper constructs +* must be placed on this to ensure that it ends up at physical address +* 0x0000.0000. +* +******************************************************************************/ + .section .isr_vector,"a",%progbits + .type g_pfnVectors, %object + .size g_pfnVectors, .-g_pfnVectors + + +g_pfnVectors: + + .word _estack + .word Reset_Handler + .word NMI_Handler + .word HardFault_Handler + .word MemManage_Handler + .word BusFault_Handler + .word UsageFault_Handler + .word 0 + .word 0 + .word 0 + .word 0 + .word SVC_Handler + .word DebugMon_Handler + .word 0 + .word PendSV_Handler + .word SysTick_Handler + .word WWDG_IRQHandler + .word PVD_IRQHandler + .word TAMPER_IRQHandler + .word RTC_IRQHandler + .word FLASH_IRQHandler + .word RCC_IRQHandler + .word EXTI0_IRQHandler + .word EXTI1_IRQHandler + .word EXTI2_IRQHandler + .word EXTI3_IRQHandler + .word EXTI4_IRQHandler + .word DMA1_Channel1_IRQHandler + .word DMA1_Channel2_IRQHandler + .word DMA1_Channel3_IRQHandler + .word DMA1_Channel4_IRQHandler + .word DMA1_Channel5_IRQHandler + .word DMA1_Channel6_IRQHandler + .word DMA1_Channel7_IRQHandler + .word ADC1_2_IRQHandler + .word USB_HP_CAN1_TX_IRQHandler + .word USB_LP_CAN1_RX0_IRQHandler + .word CAN1_RX1_IRQHandler + .word CAN1_SCE_IRQHandler + .word EXTI9_5_IRQHandler + .word TIM1_BRK_IRQHandler + .word TIM1_UP_IRQHandler + .word TIM1_TRG_COM_IRQHandler + .word TIM1_CC_IRQHandler + .word TIM2_IRQHandler + .word TIM3_IRQHandler + .word TIM4_IRQHandler + .word I2C1_EV_IRQHandler + .word I2C1_ER_IRQHandler + .word I2C2_EV_IRQHandler + .word I2C2_ER_IRQHandler + .word SPI1_IRQHandler + .word SPI2_IRQHandler + .word USART1_IRQHandler + .word USART2_IRQHandler + .word USART3_IRQHandler + .word EXTI15_10_IRQHandler + .word RTC_Alarm_IRQHandler + .word USBWakeUp_IRQHandler + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word 0 + .word BootRAM /* @0x108. This is for boot in RAM mode for + STM32F10x Medium Density devices. */ + +/******************************************************************************* +* +* Provide weak aliases for each Exception handler to the Default_Handler. +* As they are weak aliases, any function with the same name will override +* this definition. +* +*******************************************************************************/ + + .weak NMI_Handler + .thumb_set NMI_Handler,Default_Handler + + .weak HardFault_Handler + .thumb_set HardFault_Handler,Default_Handler + + .weak MemManage_Handler + .thumb_set MemManage_Handler,Default_Handler + + .weak BusFault_Handler + .thumb_set BusFault_Handler,Default_Handler + + .weak UsageFault_Handler + .thumb_set UsageFault_Handler,Default_Handler + + .weak SVC_Handler + .thumb_set SVC_Handler,Default_Handler + + .weak DebugMon_Handler + .thumb_set DebugMon_Handler,Default_Handler + + .weak PendSV_Handler + .thumb_set PendSV_Handler,Default_Handler + + .weak SysTick_Handler + .thumb_set SysTick_Handler,Default_Handler + + .weak WWDG_IRQHandler + .thumb_set WWDG_IRQHandler,Default_Handler + + .weak PVD_IRQHandler + .thumb_set PVD_IRQHandler,Default_Handler + + .weak TAMPER_IRQHandler + .thumb_set TAMPER_IRQHandler,Default_Handler + + .weak RTC_IRQHandler + .thumb_set RTC_IRQHandler,Default_Handler + + .weak FLASH_IRQHandler + .thumb_set FLASH_IRQHandler,Default_Handler + + .weak RCC_IRQHandler + .thumb_set RCC_IRQHandler,Default_Handler + + .weak EXTI0_IRQHandler + .thumb_set EXTI0_IRQHandler,Default_Handler + + .weak EXTI1_IRQHandler + .thumb_set EXTI1_IRQHandler,Default_Handler + + .weak EXTI2_IRQHandler + .thumb_set EXTI2_IRQHandler,Default_Handler + + .weak EXTI3_IRQHandler + .thumb_set EXTI3_IRQHandler,Default_Handler + + .weak EXTI4_IRQHandler + .thumb_set EXTI4_IRQHandler,Default_Handler + + .weak DMA1_Channel1_IRQHandler + .thumb_set DMA1_Channel1_IRQHandler,Default_Handler + + .weak DMA1_Channel2_IRQHandler + .thumb_set DMA1_Channel2_IRQHandler,Default_Handler + + .weak DMA1_Channel3_IRQHandler + .thumb_set DMA1_Channel3_IRQHandler,Default_Handler + + .weak DMA1_Channel4_IRQHandler + .thumb_set DMA1_Channel4_IRQHandler,Default_Handler + + .weak DMA1_Channel5_IRQHandler + .thumb_set DMA1_Channel5_IRQHandler,Default_Handler + + .weak DMA1_Channel6_IRQHandler + .thumb_set DMA1_Channel6_IRQHandler,Default_Handler + + .weak DMA1_Channel7_IRQHandler + .thumb_set DMA1_Channel7_IRQHandler,Default_Handler + + .weak ADC1_2_IRQHandler + .thumb_set ADC1_2_IRQHandler,Default_Handler + + .weak USB_HP_CAN1_TX_IRQHandler + .thumb_set USB_HP_CAN1_TX_IRQHandler,Default_Handler + + .weak USB_LP_CAN1_RX0_IRQHandler + .thumb_set USB_LP_CAN1_RX0_IRQHandler,Default_Handler + + .weak CAN1_RX1_IRQHandler + .thumb_set CAN1_RX1_IRQHandler,Default_Handler + + .weak CAN1_SCE_IRQHandler + .thumb_set CAN1_SCE_IRQHandler,Default_Handler + + .weak EXTI9_5_IRQHandler + .thumb_set EXTI9_5_IRQHandler,Default_Handler + + .weak TIM1_BRK_IRQHandler + .thumb_set TIM1_BRK_IRQHandler,Default_Handler + + .weak TIM1_UP_IRQHandler + .thumb_set TIM1_UP_IRQHandler,Default_Handler + + .weak TIM1_TRG_COM_IRQHandler + .thumb_set TIM1_TRG_COM_IRQHandler,Default_Handler + + .weak TIM1_CC_IRQHandler + .thumb_set TIM1_CC_IRQHandler,Default_Handler + + .weak TIM2_IRQHandler + .thumb_set TIM2_IRQHandler,Default_Handler + + .weak TIM3_IRQHandler + .thumb_set TIM3_IRQHandler,Default_Handler + + .weak TIM4_IRQHandler + .thumb_set TIM4_IRQHandler,Default_Handler + + .weak I2C1_EV_IRQHandler + .thumb_set I2C1_EV_IRQHandler,Default_Handler + + .weak I2C1_ER_IRQHandler + .thumb_set I2C1_ER_IRQHandler,Default_Handler + + .weak I2C2_EV_IRQHandler + .thumb_set I2C2_EV_IRQHandler,Default_Handler + + .weak I2C2_ER_IRQHandler + .thumb_set I2C2_ER_IRQHandler,Default_Handler + + .weak SPI1_IRQHandler + .thumb_set SPI1_IRQHandler,Default_Handler + + .weak SPI2_IRQHandler + .thumb_set SPI2_IRQHandler,Default_Handler + + .weak USART1_IRQHandler + .thumb_set USART1_IRQHandler,Default_Handler + + .weak USART2_IRQHandler + .thumb_set USART2_IRQHandler,Default_Handler + + .weak USART3_IRQHandler + .thumb_set USART3_IRQHandler,Default_Handler + + .weak EXTI15_10_IRQHandler + .thumb_set EXTI15_10_IRQHandler,Default_Handler + + .weak RTC_Alarm_IRQHandler + .thumb_set RTC_Alarm_IRQHandler,Default_Handler + + .weak USBWakeUp_IRQHandler + .thumb_set USBWakeUp_IRQHandler,Default_Handler + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ + diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.d b/f103c8t6_HAL/Debug/Core/Src/main.d similarity index 70% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.d rename to f103c8t6_HAL/Debug/Core/Src/main.d index f022e3a..ba9b435 100644 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.d +++ b/f103c8t6_HAL/Debug/Core/Src/main.d @@ -1,5 +1,4 @@ -Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.o: \ - ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c \ +Core/Src/main.o: ../Core/Src/main.c ../Core/Inc/main.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h \ ../Core/Inc/stm32f1xx_hal_conf.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h \ @@ -19,16 +18,11 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h + +../Core/Inc/main.h: ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: @@ -68,22 +62,8 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/f103c8t6_HAL/Debug/Core/Src/main.o b/f103c8t6_HAL/Debug/Core/Src/main.o new file mode 100644 index 0000000000000000000000000000000000000000..dedfe826a04ee14f21d9d084d790dc2fb076a0e0 GIT binary patch literal 701728 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�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 e8Gd@00#GBqkZH88$a(Z- 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 literal 0 HcmV?d00001 diff --git a/f103c8t6_HAL/Debug/Core/Src/main.su b/f103c8t6_HAL/Debug/Core/Src/main.su new file mode 100644 index 0000000..7bc6a4f --- /dev/null +++ b/f103c8t6_HAL/Debug/Core/Src/main.su @@ -0,0 +1,4 @@ +main.c:63:5:main 8 static +main.c:106:6:SystemClock_Config 72 static +main.c:146:13:MX_GPIO_Init 16 static +main.c:163:6:Error_Handler 4 static,ignoring_inline_asm diff --git a/stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.d b/f103c8t6_HAL/Debug/Core/Src/stm32f1xx_hal_msp.d similarity index 73% rename from stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.d rename to f103c8t6_HAL/Debug/Core/Src/stm32f1xx_hal_msp.d index d489a41..e442e79 100644 --- a/stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.d +++ b/f103c8t6_HAL/Debug/Core/Src/stm32f1xx_hal_msp.d @@ -18,16 +18,9 @@ Core/Src/stm32f1xx_hal_msp.o: ../Core/Src/stm32f1xx_hal_msp.c \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h ../Core/Inc/main.h: @@ -69,22 +62,8 @@ Core/Src/stm32f1xx_hal_msp.o: ../Core/Src/stm32f1xx_hal_msp.c \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/f103c8t6_HAL/Debug/Core/Src/stm32f1xx_hal_msp.o b/f103c8t6_HAL/Debug/Core/Src/stm32f1xx_hal_msp.o new file mode 100644 index 0000000000000000000000000000000000000000..25b13adba8c040509847ea337cab56bf37165cfe GIT binary patch literal 699624 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 z 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

= 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

GDmEs;(Ppaa!1NwL&kJ4B8Ai^P6C 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%0A>ZJ>FT7Uj|Em=Edy+Fs|!7d_` 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 literal 0 HcmV?d00001 diff --git a/f103c8t6_HAL/Debug/Core/Src/stm32f1xx_it.su b/f103c8t6_HAL/Debug/Core/Src/stm32f1xx_it.su new file mode 100644 index 0000000..5e2994a --- /dev/null +++ b/f103c8t6_HAL/Debug/Core/Src/stm32f1xx_it.su @@ -0,0 +1,9 @@ +stm32f1xx_it.c:69:6:NMI_Handler 4 static +stm32f1xx_it.c:84:6:HardFault_Handler 4 static +stm32f1xx_it.c:99:6:MemManage_Handler 4 static +stm32f1xx_it.c:114:6:BusFault_Handler 4 static +stm32f1xx_it.c:129:6:UsageFault_Handler 4 static +stm32f1xx_it.c:144:6:SVC_Handler 4 static +stm32f1xx_it.c:157:6:DebugMon_Handler 4 static +stm32f1xx_it.c:170:6:PendSV_Handler 4 static +stm32f1xx_it.c:183:6:SysTick_Handler 8 static diff --git a/stm32f103/Debug/Core/Src/subdir.mk b/f103c8t6_HAL/Debug/Core/Src/subdir.mk similarity index 73% rename from stm32f103/Debug/Core/Src/subdir.mk rename to f103c8t6_HAL/Debug/Core/Src/subdir.mk index 4557a36..67cbb22 100644 --- a/stm32f103/Debug/Core/Src/subdir.mk +++ b/f103c8t6_HAL/Debug/Core/Src/subdir.mk @@ -31,7 +31,7 @@ C_DEPS += \ # Each subdirectory must supply rules for building sources it contributes Core/Src/%.o: ../Core/Src/%.c Core/Src/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32F103xB -c -I../Core/Inc -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../USB_DEVICE/App -I../USB_DEVICE/Target -I../Middlewares/ST/STM32_USB_Device_Library/Core/Inc -I../Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Inc -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" + arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32F103xB -c -I../Core/Inc -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" clean: clean-Core-2f-Src diff --git a/stm32f103/Debug/Core/Src/syscalls.d b/f103c8t6_HAL/Debug/Core/Src/syscalls.d similarity index 100% rename from stm32f103/Debug/Core/Src/syscalls.d rename to f103c8t6_HAL/Debug/Core/Src/syscalls.d diff --git a/f103c8t6_HAL/Debug/Core/Src/syscalls.o b/f103c8t6_HAL/Debug/Core/Src/syscalls.o new file mode 100644 index 0000000000000000000000000000000000000000..86360911598bea2498011ccf83a15f293b8661aa GIT binary patch literal 81388 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%0A-xfRETx`)SxdV%Ya!NgZr?G|ppMdJYw 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 literal 0 HcmV?d00001 diff --git a/f103c8t6_HAL/Debug/Core/Src/syscalls.su b/f103c8t6_HAL/Debug/Core/Src/syscalls.su new file mode 100644 index 0000000..db22759 --- /dev/null +++ b/f103c8t6_HAL/Debug/Core/Src/syscalls.su @@ -0,0 +1,18 @@ +syscalls.c:44:6:initialise_monitor_handles 4 static +syscalls.c:48:5:_getpid 4 static +syscalls.c:53:5:_kill 16 static +syscalls.c:59:6:_exit 16 static +syscalls.c:65:27:_read 32 static +syscalls.c:77:27:_write 32 static +syscalls.c:88:5:_close 16 static +syscalls.c:94:5:_fstat 16 static +syscalls.c:100:5:_isatty 16 static +syscalls.c:105:5:_lseek 24 static +syscalls.c:110:5:_open 12 static +syscalls.c:116:5:_wait 16 static +syscalls.c:122:5:_unlink 16 static +syscalls.c:128:5:_times 16 static +syscalls.c:133:5:_stat 16 static +syscalls.c:139:5:_link 16 static +syscalls.c:145:5:_fork 8 static +syscalls.c:151:5:_execve 24 static diff --git a/stm32f103/Debug/Core/Src/sysmem.d b/f103c8t6_HAL/Debug/Core/Src/sysmem.d similarity index 100% rename from stm32f103/Debug/Core/Src/sysmem.d rename to f103c8t6_HAL/Debug/Core/Src/sysmem.d diff --git a/f103c8t6_HAL/Debug/Core/Src/sysmem.o b/f103c8t6_HAL/Debug/Core/Src/sysmem.o new file mode 100644 index 0000000000000000000000000000000000000000..c1403712c1fe2784aa28425c8e95fe99022ef8c2 GIT binary patch literal 51308 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

H4K$ag*B3g>aX~m0-+6x{O*$p3-OO?eUUke}S;x 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á>|HcDhO;ASW{6-5M!-d~ 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

x(h4hLp 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 L;nMJDizojB8@_oQ literal 0 HcmV?d00001 diff --git a/stm32f103/Debug/Core/Src/system_stm32f1xx.su b/f103c8t6_HAL/Debug/Core/Src/system_stm32f1xx.su similarity index 100% rename from stm32f103/Debug/Core/Src/system_stm32f1xx.su rename to f103c8t6_HAL/Debug/Core/Src/system_stm32f1xx.su diff --git a/stm32f103/Debug/Core/Startup/startup_stm32f103c8tx.d b/f103c8t6_HAL/Debug/Core/Startup/startup_stm32f103c8tx.d similarity index 100% rename from stm32f103/Debug/Core/Startup/startup_stm32f103c8tx.d rename to f103c8t6_HAL/Debug/Core/Startup/startup_stm32f103c8tx.d diff --git a/stm32f103/Debug/Core/Startup/startup_stm32f103c8tx.o b/f103c8t6_HAL/Debug/Core/Startup/startup_stm32f103c8tx.o similarity index 81% rename from stm32f103/Debug/Core/Startup/startup_stm32f103c8tx.o rename to f103c8t6_HAL/Debug/Core/Startup/startup_stm32f103c8tx.o index 77848dce56f9087baa1317da98ea71a25d8c3bf6..6e117a2f260adcaffe20477caecdb1d22db12bd8 100644 GIT binary patch delta 140 zcmeyN(V#g&f$_jbMFl3t)X7dvGgQ+I4UCg5O3dOt9DVd%Qj<#48QlFs6&!;VjP#66 z^b8n4VDon-MLx!m$&!Ne8EYo*6f9@lGucqcpD|~0Bap0_d{L;Jam{2;VQt3Z$)&=| nObpDEX9=q@9+`YlSe;Q}@=GA;GFebW9VlW6B%e%96cGmiFSjV7 delta 151 zcmZqB{Gl;HfpN!1MFl3tq{&W9Gh~ZPa*d7B3=NF+T~d=u(;3|TLKPf?6^!(ZP4o;l z|7TLgx_Ert9UQzmx;$&$%8g~}P1Ob!&*W-ORoE3C})gK6?2 oVKv4*lTQk(GfGVU2qbMLONyuiMI1%cCGPMuFx+8407fVi0H5_Jw*UYD diff --git a/stm32f103/Debug/Core/Startup/subdir.mk b/f103c8t6_HAL/Debug/Core/Startup/subdir.mk similarity index 100% rename from stm32f103/Debug/Core/Startup/subdir.mk rename to f103c8t6_HAL/Debug/Core/Startup/subdir.mk diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d similarity index 73% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d index dfa1c0d..84bc218 100644 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d +++ b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d @@ -19,16 +19,9 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: @@ -68,22 +61,8 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o new file mode 100644 index 0000000000000000000000000000000000000000..fa3d7b35ffb7ad530021ccb1b59debeac63ccac9 GIT binary patch literal 711708 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 z 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 z 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

d!!IKnXe*B-v;4{>J&`>foY-cdk2u%SX*V-EVK) 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 literal 0 HcmV?d00001 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.su b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.su similarity index 100% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.su rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.su diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.d b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.d similarity index 73% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.d rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.d index b597a70..ac8b725 100644 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.d +++ b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.d @@ -19,16 +19,9 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: @@ -68,22 +61,8 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o new file mode 100644 index 0000000000000000000000000000000000000000..433eb58b6d0cf4cab60e5dc61c1274ba12e74a9a GIT binary patch literal 715464 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

>+aMhtUx%k;rRB$X@cQN5^!CjsJJ%PV-Yu`k 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 cv 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 cv1zgTAxQRQspWpI0&+sCz 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 literal 0 HcmV?d00001 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.su b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.su similarity index 100% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.su rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.su diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d similarity index 73% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d index a14db30..2a4d36b 100644 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d +++ b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d @@ -19,16 +19,9 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: @@ -68,22 +61,8 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o new file mode 100644 index 0000000000000000000000000000000000000000..d3865b868dece91882388c98d181192f3482313b GIT binary patch literal 710680 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
  • C2uGkBs-3?gdY7u3CWvlT1YJsxYTN{X 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 iHW1sQ6i|C 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 z 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

    3oi;c8`yj)L(_eV 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

    mm-_ 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 z zPp_tn2CJ=S!3q9R-q1&-`H|u+)ndei`33)Us4wD0wbT78v>#NvrUx|M@=$UASg|&n~i*z#_#0f5|F>-(}rDV1q5BO;eoe(enA& zKReWCnx|xHWn9gEg6VUzfskQSjswa_em#LK$m3{v;m3-m1-%$pSwQ11ASUv&;ap(t zU>fV_UGV;M=TzS(LpV~PgKx#(l()oxyFHsN;8ikX_duCg5kerG8Wtsjb~INj`_3aA$!EQBqPK{aBHpFt_F#^;nDg}zVh3>33 zpHE@JV~4!EEx63xpS&SFEo7yvge`3Q!cL>6Wl*U2zr-2_dzvy&u)YC&bHS!v&&j}V z*DID&=%k`B+QRBiipT6D%n9f_!)p`L*Pu%ryTEGc2IV?x_yy_1kyF3FhUxX#M?5Gk zeGI}Np*Ke{2-3m%iT=uV=fALX)H#>`_1)70_n`#SG&KL6s%{292YO-}Na+iau`LYO zmy7Eim{qsEoDLrX=d`@d8ElI8=Avf98PyvX+wjKG{k8en19;oQmgNnyWna!HO5`l<`Ku;1ehLO0+gt2p0U*=R~!E^y_= ztUBp^rUvHZ(4yMx;|8c345gy}5wNNZrR)H8OX5FZ`UL@B;n?q9(qfXQDKcj*ANS?b z!hvNq*pIq>e)xL4x_WtO7?0mt@gx&uaY8sCcwA<4)Ht1@EXD zaRcgK%Fs#BL8v$pJ?|`vdS!h_T+@3s0O$K$wGb`AxfD4LNH`Yzrv~}hO&|(4M%w22 zA0x)xlhH)fC_@=7y-N}tgfO}sw`^|>vpE2gPH*;>X#hWru1dM%_#=zwc{Q1VS`N~K zGzX?VIUQv@we0$E*0~bc&qPIVGPW(5t`;)MGG?b<#AOk${y@knY}XC)~!I zE#^mP1*sl`E9fOv3lmX97=^3VHnfM9H$n^D%lj@)P!Ct>bX!;rzrRT8sU+9Qt+f{#umSOZALz^VF)Fm|+Ppjr>S z^e{&yTX;8J$|WKi8m{gzsjSjXR@0Pp&5lS7P_NO0>|7bT-ZonKMP~5mJ(2>Xhv{6e z)U*ZSH9*~9HYG@P`MBo??UTCPOjt$R7kjgvT!I22!R>s3M3gjP+(5X8ZbSnz({^Pz zv>7vd^~m*#uujSFqLJC1erWcNHNo=CxuVPsL($SlYNP2m@8V!8f-O1I33|KCWc46sLea z5LpRQ<`3p3KqLi&!hh9mw>NONo1NGz%QDyaaIJvblQ_a+V^kntfrvpJoMXrmL1xQK zMk+j%8zsVlX*@{U?@&hI!KKR`B0GCo@8tcenf?4hS?uo-YW+QV$n+K>V3AhZKT_MJ z)B~EZhHNLfq6AieCPC6cQk)9r3s}%;O*^ERUqz|C^F6e>zXuU#3PYq+&u$rksjPbu zM-EOPXy%#C5H93BJ$APj1NXyp=6@uuX@~-v@q!^hGI$i6pYL|I>`sfRJ}^!o!!ubi zm(OsriI#Q-rWIe#$<3)a*`n3L4xiO-jw(Yc+yf5w0wtdWXRdn(;YHaSw_$aaH}3Sz zn1y>;U76Xouzlu~QzZFHGBWH7zf$Ae_$Qiy;}h@$ql;XKJNlwe^E$%R5rT(#(K5lKQO z7O7Hk`r%LQMsL*J^mL0afeXoMdb@)C5GBlw_@lH5v<3+6>w+E>#pvfOd-NQhwTkHx zEI70}iaZfu6-jm}QE7DH5oMd7 zm)RZqC-{sn+raJ$q-PtE%rf(njt;~qo8Dzoon`5U7TZ(;^0;w}}Ngit0 zgf)*xw}?0_(8s-vq_RqO10_4t(dh%76()oZP~)3#V9ki^!==ifgQ|dOG)zAN_nz3i z^hjpqbIVTv&D3i0jg!YyDpc&Cr`uEG^>lhVgx3@GSD%OQ=joW_UY4-o`EOA38pUk4sXT7-fD<4(i%B+7BGr7UEHQV+Wgx5Dy7V;s^k z0@ z*jk2ExK{?0X~M7yj~=w@)uc zVp^jHB#=41wy{uJsU6hk$e-NH8YGxLhgfCR!_1*Z8Dd;-Ir!|&XFex*o;1O|Cfx$4 zXNs$4vh7`ao|O=FHM}xWAuF@YvXu^eCbLnFS{*U`HAqKFeO)MT)X7S`=SKi1BqK?Y^|HT7z!m-;zSS@jp%-iGcniH(HvJWb%2!& z==L3D5=?wDQ%J|=a-6GS#Vi{qRjFCI3&ObxI?OO0NX*nQcr3xwvW!~CsT9t*_QZ-& zGd|7eA^cX&Cp#BB^4&*~y9WwF30B&2&g4`A=Jlem0_+G6H?Wj3qG@fwfq_IXBf~&c z&I7?iqBfDEl9a^RW5mPr_Y|x;+y$YenqM+*Jvdm>v1ERU1P|^VhGHf-Qy>A*H4teG z6i%YFcyeV;2jegGa0D}zYE?KcT;VSFaN3_gtLdY&m>rXep{v=H0TgQ3O6hF5`-sTS zpI*Jc^F`7{2-}QHhV2B46Y4P0r;&(i!7;`;#>uG8G0l$M!(^#i8Cn7M*&u-Qjoj|` z3d$#l6B&*7R|w|0f;55DjLQX`EO+bGEk!NKFu%}8?{PkS+&Sb#_;|_zA&g0P2Hj@6 z;2#Zpr9GWreu01KjRtJ^+y==DWYgSRt6@x`e|svrJ-vo88uZ%nhbJNbv(r$Vu6NL~ zaATV2ihRg!QS|-YfP59XTQ821mL4bwyQQWa)6i)r>`4wL#8H>}Qn}-~9}n*l=?&FkU%Q1&kHL znObSIJk8|8y+meEW@`m5I_U#69yoc46^C@vnPkck&(YoA*c;-JW=wF%$P;!;tT>-;@_qTz70-5a7)kAxnwBpe`PV zA%dBoZfr5&$H1pbPOS_r5NfThLCOgdMeVTP;bQ$QLZQEV_sM-BN5~#k@HzeIirjV6 zcbmF9BkoqgXz6vOV_d9n#&^;xbGvYuzuwmOY+xVbEq@;HDeV!zt1MjF2R41I72as~ zgIK5l+0qiBjooSaEqzab)Y-;T@i?||;kk~j8zwxy<;$<2;QT^12fb98KbS%r1b~6{ ztq3s4^VA29oj|^I+^IAWSRG&-s5@w8 zVNN=7U7r;iJ)v7Pgl(krOjVS#;-Q7c0r~JGI6XCzt zyu_HsF-hcKX}D443@S<%*_7RSg5+_C=l}_{|3*%bOllmu_z^9wk#NVfpK0cT0&^z^ zsNCB}SqURGPTMl~W$wz4Os%4lLViVG;7(o&NfF9Jy~vz3;oDU>dG$GbIoVE@wvalE zT{N1WfO!-{cctkabO!1MVn6v8kI2@ZVg4!3UDUf4_D3VntWopU7OF`PkY1r zSc=}emc!)6ICxDr#|!BS75pL0hufs$GQr=QAC@T-@9Ch=%GPwc-%VFr!+jAnoaH2D zR5x9}LJpDlhuz)(`|0lO$Jejk9JY7g-MvO=)p9RwN8PD_n(Xyg+_ii6>HT+ihyDB4 zKl}j2D!EzZnsWJ?$x$!ou2Oe5q;?v7m+7$aX-GVbtntT_m+4j@q!cVIVl+T4>hfmt zl-g58YO{m?HkC|JOY>B(+3}> zpw!geoCGCPp=f}wFRH4V8+%|}v=U0PCeDkew@bULh@a6MhX%-K`W3tYsAfOFw?-%@MrtaCdT1!PH#~49{i=ncFk7G)GHwfb)8PJsvHF zKcg}=b{*XFmfbnKu&zksD1pC;;VE@~hxy=u?M3-4-AZANo`=;eF^VvL2Y%-TXNiW6J>Z*LQD_TkOppQo($<`|D?>E(#U(m^@HfK`a1zy-|MXsHv-V zy6-Iw-V8bg0z$P>We`gW4@)4Hs2P;Dl*qCp{Sd~w)1Te3A~eBfcnPP>Xz9(=*DYz& zptTA9@(ysd zAeT{$?s|5MoWZVl7>F%FIx1wN!=Fc*;@s3o!$L;tV7Fmi<8eTGC>}G&(9umtt|*9> zp2l4QKH=ii`wt&icW;0A_~*m<{yq=w^X#DAatSbmA?def1ZSz^we%s*LYl9WyBgR> z-$u|TKIE*|dRq1H@t7vX!-8%3AdRK%=VZ#|vmy7r8Ah(K5xVBM8kVuZPR}ZswS(ZG zuuffQ{1e;`F@2&oe1(=bD8e?ooOfhy zlKNhun+MF48k8lR%4l~isd)#e$#7A}^qa@zV+upv9`$Z|Snnny*JR{E@z(O&HB29q zxlryj=Rr%ah29Q64#v$eU}pYu1E%8S%i-uD&zIP{;4wyx4igi5zaEnJGA$c~Pvizwr(5MH~)Qof{Y zG<%uy61r0SkQ~=u6pp2J&sEUzuA(&I?e4NJO-Qd3(w8|f2?ll}!qjkbFTu8~uzW3d zH1r}0zj8%Or-J#jd$t>IsH=nwEbNJX6fU#|a4%YlcsWk83jV4=n!D-shEAE;*&;4v zM+@QtMfbytSAV(t^i!3=kk^q1w1xnGtQbxv;ltDO$H20?FV7d_ zk{#1Jdg*=^%xSHL5xx+h#x1$4z@w{F1>;a z@OOo9?4#nzW-J1C@oYX7{=+@bJ@Bn6VB*$DFdp@ua5>u?_)86cH{8;_p#RkwsL44% zP@Wy0gBqjw0L!L}pl~&2OXSl*O5dvq>V~bfK=mbinPu`R^!oV;w2*EKO?9BZ?HnHFz0S083;2CJE!}C99R$Q~!yWR<=uPku=ytn!yH%Q6fyC5D8vQz_c_;mC_MjEJJ zI_A?3STDxOZrV@cS`LBB*K#17B(RX1!&i>3SSG7n~NTyc7r zo8Nmnq!&(Bh+#sk3^?=k4M+{j<=(t|d#6|R!QgP@WZM?8N`07lX`J(;n&Hz&g(Az` zn6vbz$qR}ff`yBLcB6Wjs=6Pi5==u=cNch!kaF9I^T-mH)#8GPDEX~$7uv-kS$ z@UWnKynzX^LS)ReuZFlbs0!#l_1&1=n}?^sQry^bo{sFKLOsw#yx{nMAMr|HO-ZmS z-9#$nv?221f9Po9v~4!L8(LWS&A?g;C2Da|elxJ&LWODuw0nF;$vL%PQ!~2K(O#R~ zw>fNlQ<{`GXnv6&=S||rnSN{zLgE#{pa$DaR#tu2ehUo}ZIy#}(tZeUv%7b?u6wj^ zovx>S=B!B#>)>In-&B(2WA>vi&_!q!BgqW6jwu>vfVnXI`9$*Y$I=ZCNE*t2A6crh zxTIWVT=N@LAll9mWt6bF?`pN(3qB>yp0r1rFa7c(t()w<>8JTg)hOmKmbnxK8k%e- zprb89zRxH6D`DJ!VU;tOYPn}r=tjD%&3rynih;Jz^?bIxz5c~+OqmbQC*AF}Uh1qk zHAKVlOP1rYPM+R?3_BLoi0s!;lhPStKvi^kLFNoOMeo3K;}+YT)uWQtqBWf+_e_(^ zD0vO3GK(KV^Jt{2ns-r8&#=>qhxz}Q4&PUy7v zOz5$H2{x%a`V7pI~{yOvs5e&(YF^dF%;}MwpB0#jQa3VPU~& z7grl619bykJiP`Ed5_%0srr1eIpBXRd#6QmhaFq7@ZP}}8K)uB>+S_=yC98bu(@~# z9M))0)60G2&<60S~$qJlXl!3OS;4Ff~1d_jXLv8tE2!%N;h4+|j z6Hsd>U7UPjfM$g*E?){=91!J_aVg-{up>TU=#LK{KR-Evy##t5*i2^gm(<}vJVY$J z&UD4G&@X_mYBk$lKPG9qwM8G$U9q%`o|KK>+E^uWCo^f}a_FTi8EBZ=<}!mYof4!t z|5L~rCV{GtZciGTLIFE|JPLcQj)%f0nR9SOI|^vW&}Kv~DDoEOHNzdFeJCO+Op2D) zT36ggWngazT70SJFNKI+3CqRhv=Ouow|76V#L4?m4)RNMu7a()diD1EH(->BeOJi+ z(1FNj49m`7d_>=8415Fu-b_nJa9+$?;az1DfP+=0^RO*NQ=cq`pPI2HJdQAvOib~F zn~_oSw}`R=V@T@aQzeC(8zDR$ok$q&AQd2ef~)*B;($XrY5J)8+5^*{Dq}rL&|D!} zRlEhlFX4v$bkG5pP#=`A0m>0z4t!$bjE(H?l`7MdniLZ=$VY@yniL?6L`!mv>+S+Y zSP=7zBWk_yLqD8|7C!mahZb{1gayVx2blDB-sX9SCsWZ(UCngA>*$|as5X%=6j$6; zS?OC0xqCAu1}HxwOyC1OFj}@Tu*#uQA6gQ>Qp21lYp=NEAupNY^z7IzscVLuU1~&mM=dC#1^) zak$w!aJ_;2vdWFej{)Bsjr@b>vNYoE776b-y2));@a^VFxw&{OuX7f-OaNR=L7e-S zDXP$^D{tG0g_oRHL`+gRD6L@ld<&&?slnYSwtH;x-uy4ZwhHL#3+WA=6f#c26&USh zt;!U_jMbHxUeA#J4Z49FWH>gVrU&43g`^%Id{%xM1$|ss*r=>ngTEn0n>~{Si?_h6 zTB{bnj(l2#^+5}7}wcnXW%ztaLy^zQH=5h@)uuRQ$Z4ZY$kV?xk z_qi5Y#e~WCSuz@w8fq8^=M@+TSGiQ_q-lmK3gTRo2)5;K@fdMA@i+;uCgr-yoZEmh zp^Es$& zeQ7Pl?|asrvGM!S(nsaPGYZW>m=phM(j1d9Mf0n##IZuID;e3(|AqV-%QV3S0`gz) z4Khn5-ZyUHRorB^@3x5V`3-$y$r_iB`HdJteFgQ^pNj_AVG19g3-B0zw5p|H(HB=Y z?C0k^3sQ(Hb|p;pqaqNYD`_6-VTY74oeBL)BV~XRuH^bL$t5%*eoR-vESI+!)0 zSCR>kKB?gRA$j8J)1QzHRpm+yOiTL^Uec7NEG0!f`tvuU8j!Fss_y5{hIkxLM>P-#DY3Y zs46KAG#5p@6VfIS~Utv9y- z+QA9alNkc#HO}t17yXNDj%cCn8sm6j&RK@Qaj&`ihJ8i>6h2`;PvDhwlxOGwP5Oe3 zPHE+KGI1s4zC^EHn9q`FVtk{9)`$k+$;H}*pSbFEplocIFly~MxpWEI!X>CYSwX%_ zkVeLgF{|}@!}`Xq6M;1P@pE%J_58SDJ`Xm+?Hb~(K(eQ2yLgYE`oTyz(C3hRc%2Id zpEJZJ03QEBWkGhtdaXC1s4!aMGKu?@oBAc6oGfxv?6hu5Zk=BY*+fr>(@M(iH~7d+ zk>D9>O#PRYwvW0>TROYQzYPuu=HE6PL6+EAO$nqrUry&V0-fOh)XM6gufS8|$6L8q zVdlZ@1$vhZKG?eCGx@MY@lGerH(ttR*v>aFuF4Ns%=xd14Z@AcV?$(FxVGjViFV|{ z4lWibn+zg#=SWi5y`;U)2k&S5Q?S&R`#_!I#Lh4q2?Q=i5Y2BcrxMnpp@;c;Bl(i( z8N6>$*#(8ru};WC8kZIDC_B2TdFcgCd}If|jA^9rPH}hMO7j<&Y3_>;HTS(b+<^3(px+L-k@OV|;vsJY*;0;1@K!p1q`WH@-&0*rQqSnHo}OKI zkA4(jage?X3>OnS;ZxU}j)J2B>INtYCta&=%owDSfxE;C6dm?NVpABOIz7%fMGpI&|Um%H!rm9IX2eE<5}Pap3N2ePYn z9Xeoth>?zt&kx__&N8M+s$7Ix6SMK}SmO&!wI(eyyLM0oV_-YAh3Xc%#E|^FxLqi2 z)qiU|JcxL#o`tDUKX4m4aUY4F#oB+cFYr2doVim`%bn=I<7^AnSCpoQG|XCjleIgI zlhWA;*krs#>|ejb4$uOucW83$^e;4K?0d0i%JKL|tXK{n7r@5pbXbbXX!r(O zZOFMm`_QYq>Vb+6^{I$xk%z!%v7aAgqR zLB%Sj?Ljsx&o1}LZsNGx0Bx@N!><5i&ST?3MaM9ESRt#DX++K&+Opi6c^UFCwlN+J zqk$|2QH;}+a-y0!y+Hk=eeA3@f>@Yud_`}MC43}6qr4Bv>Ljc5FeKxGe+qYSH7#?W z$Vr&Q3dIT6)e@v0ESMP$mePCVLG>u8Fh0E1--cNe42N>SNq< zb8CMm-EWHx7UZG(7vLv6%w#gZo zpHxdaG;>9Oc1l{XCIdnEH@C@qTF!7++<7Y*rVa<2tiDjI1|n$ek91y<>)_XU&uZwzMVaQ$xqwhXWK7GW#eDm%V&--*8Vg&1GV#g!eLtA3M z}G%e4~A_4Od)C~Yieund=%XlcHk2cQzF zKc}KQC%MD8vy)VB(1N$T`5GQtT3?*5H<6THhxl>$0}-a}3c_$osb+x^5Qa;brq?in znLXa}PeV%@s4oZ*a&+uS?7*VJ_ju$iLccTy+n9ubl+wVx{YF%W_`FbqWd{t76=sLp zbxXIzMe*M{q|{fpxr7-)KHQmI>Ef_S7K$@6;{# zeG{TWYHBPtg_;J0fUmdTFb9tBAde+%fZ=`UX`kKkBc)9-&4Uo!l+6+G9xc7r2swzO z6mnFQ>$hMFco)JC6bS&KA|y>>BzS!hrO{@0e{zxmHV<|DjJ_$_;JnXWHsYYsW5NF-#?aA9-%*g>`XQBX{A|4v8zN4wXla zc6>qj@9E_l;UOq@m4B6)A^RWJKin2AHxQ)ig(}runE+_3F(Tq}3OD zK~3v^*RhPs{}4mu*rM6Xfi$7Q{d&f$$z9F0nv*#)9rdgO?CFn zh1OkHrNB;?jYLJZn9`(Zd1Y(`!<)=ix#S}wDHJz6!={1a6FA7Vml<;!e zdfV2FrjWsMI$ho4*+Ih4fxEmug1jz&9mAsRc;u&#a=<_h(x^#CVMeO_$MRKu**$`e zv+d_o^Gy*)S}tBk8avX%CfdDy+-edneFMF9mRQjXBn~=-JEmrJq`~6k4|ZR#h7Pr9 z*Q1b+jU;LPavIll`EU9Ovvgcp)FWKEYVugaa(5^Vw3GX~Cs^)o9CD=2ik5}|gGywr z-6HK)GLH0Lw>fpU1J`%S)}aF?ox>ixD$fcI!8|phKW!$O&9Tc(JRYU} zC3J;jyDdg>soHhzajcK?9qGrhS*@h8wA6%w9~4L1lwQU*Nu1 z6;F`x2`6q(qy!U&)a|%3%$G0(=QLFe`abQEmfU!U$Wt6GEtue*p{X5c4a@6qF7K89 zyKYrMZSnxv3a!&lum=L^QDP&}8O08gz20S{3Z%{w2!NzGyI~eJ3K9v9RPJ*LM@aOv z(@FGx3z6n*U3i9|k%#PV`^kh{N@oeCSMR28sc(Q12l56^gKLDdk!td7SlCEM33i}3 za?AXY#22VDYWTfNSnFm~xy4ai;mfv)sA=Zk0(&%BEiZ4VM1jQr zSnr%~&hB%;NkEO=Ietrh2<`=O*igy#W}z!m(!phg?4^eQMQ;TQ;ri&v_3@GGXW&-J z?230MX7JhP;(e!Amc?G6`nr)8r)w?$D#T7OjWqBRF}DpBEFtQuyFIr+Z}?7vAQI$X zB;f1udlY!4-w?gz|NlM_g=4EHj{e~%j+-Zr|KTSBX{v8L`-h+SuzBLcfB1=ynkPQO z6NwJKQ0JycqA_wmpALw1{##Tm9RadOWXl9_&SWo=hhT0?Ux@O$5LCK8yai!_3sahU zBU8&{F4og!k}`Mt(}Gj(a8lf;-44!Zf*W70L-9$C1NdJ`$uK1@VLzE(%>kq<46aLj zb^tD^AdUi19h2R+fo^A^mK4b<^pa;iddVYwOfjil?%Aa9{2oRs12v7tL|pEvg_Tkc1FngaXAxdX6z1dI9zF7*8#%z=7#4w-Nx@=5H?@R|MKf}_ijC^3x(!gks ziKIv71)f@hhj-lmrIN&w38RlM=ayLxDJJ-sq|@}d^>5ZmVsK~v-4>#Aw_pRaOJC*H zU0l}3=uP(dg<}v<9tsm|1)SlJ5K8qZEP}*vSf^w|MR|Hr3YEBlk0?@*DAPi|Sg0FO z1Zy!Ab+L*sYTIY+aH z16Z?AFp6gAs)$s+oQ#<^S$6b~Qq*wCRwkIf-9;SP;9c~kVg($Rv|pZ<1LwV(a&(D^ z&+5u=2LD;!Kzqki@dHHYPvPyLB#t{&?<<8D%fRyhkpa7d-0hbNk7B<|?o*N8j(rOMLiOykXM%=zm zTvHMyYO;bEF1TgzcX3tgMrD2Ft_E7o7bJkReCcT@maaP0>pC?U$!8ea+??R5TpfBAxsUWRi#FI#8H&gE z6m5-38d-~x@eB`T%p2UQSsud`DI#U$pm1EBmPT_JuNe`%VZaW9E|FJfKJ!|p&ek{; z9h2Ip8oJEaKi@t_Uw%gSvdzQLl-Hrj_Ljb$R09)-*v!Ixh7DgYo+$_#I8GS)JMcWB zP>cBzb11!FSaAQY8t$y%l4`iK;SYo{_r4nL_uh724R`x+*t{jU8V|j`MX{1W&$Z0Z zHj!bHNCFQM*V}Z`#x>3WdI>K%f{X4#o^Dg=Vx1TIr5<+XE4XZ9tSl-%qcGuo?o(f7 zu2S;ynyA-s6=pXl({P5kooxs7Vh48Mr_e#0-}RZj@eB#3p+QgcbR*%WP#qO4Ne|TU z)#%R9y}X8uQ?*1#hDKeR1(0x5!KABW%95G#_UM;}VAG8gc(z|(l9?DFOC*^uT%y6^ zZ`Pv0Oss}JNM7tOZm;H8GsU%fdRI*_9sFRef~wpi1-zwi zq)LW9l(Q^2@fmg)B#!`h|0*H+2JUDp?1gP?wcT=4&leT)%wnxTQp5B>t-2?C46QUB zWH?hP*sOK6Zh-kgphY^HGcmHJuMQ2&oSV&VU{a+u1f>ar-sqSY$TTQ7$Y0nls8glS z_MG(Y;qK|7JS(F+4i19>AWN1~Q|{qsq5Y+0(jq%&d!&noBUZ|Du~Z2tD8S%sf<@8f z7W-|e?LsWa(_j)jb2Jki67hYq-A=xdH!Xrx234z&eDITTI_!bk*BM0zaqU6a1k=|M>$QKT(}m%Ew4mR{3Qykr@NRea=I*sB!9b<#I+nCEM&Y;;eHwzjvB$pb5Z>u1>Jqq39 z-Cp39>W+4WTBtr(o6}Qs_1cCKEO&P$+o+}RvC&Di0Mref)U2zm4R@g~QDC?smvOd* zGj~Z+o!=#+Q@zS5xGHxUpmfb>caYC)gf)^J!l#0p=z0U~ZK*kKVR;H%KkP?Vw6wAG z1*OAO`vD22$7Qxyn3O$YN+L_%wOb<;H^_mpiY#>QVMNzeGfDTdNE3>)V@wbCPW3ssMvx!WT@`Sb#$dC=my+d`?n zMeG5R=)l0dMde{*_)!tbFtP_yd7%n3xE1NkG+Ax0JO)j20a3nAGh6l0N0BQf)4`~3 zJxoqK^a{gXgi}r#2_76VF6&-~dtM;8-|TvB4M}yDoj&2Ro{RVfo&q6#vM{v`mOJcN zG$j*erC>_y?mL5Q^8EUV9o@z=KLJu&vh}O!v0Up~15*@+UqZCfk}`7!7co=od=AIIN&sy2C<}Na_TQ>TL-9zC9e4zn!&Q6Z`6fI6{pwGC4p3u>0YTu z)kR{(^Yv;EZ9XhqH~2er@2ci%MOC1ADv6B6L0b=({=7r9^hsRR+4LG>fR)6cn;CeB z=HmNzKM7AaTP8FIZ=b%ChoZQW%T*jlG&qIU6{rY@KUeG~V-OYw2&GK@FM(IP!?W8Z zG<`@ynG#^JG!@wWrN$HueX&h^qy-TzsZlJ&Z`s2IlBO9&Fq0tS~>#wBl88l zR&yI}bAE26X6^x^uH)Ngh%%90>E1s@OpXOiEa2&iM8^y~hvt>Oq{Vf8oiXc}3S=eS zTu!t$%{3|2=)`2Y9OMuXO{}iuFEkdxj&IkCXl!nG>o5a$+!n?rWwn5G4f@+rYJ<>} z5UeuGc^|PEwje`RKi&fL!M%&E_^1sR!wiMdi z4XZ9YX<0O7r5UlHG&M}!Gx-FEe6>s7yT^`hXQfL=-?D2#j;W}rg^-Hz=}4DWg@kvR zba`OTk}-TmZ1!zPL1Ck%`R6{dP*kuY>4y{9^At|e-%YdN-a)(71fG6j!zhdyt!0C2 z+Gp9|*B`llpHon^g`q8O+8QJ^ML3axJCoho4_0c+3QMi$-@-;IJjlYUD~rQju7{Ms zN)1;cl!+ancl#+l+b~le#9N#nt$nZpIfii;Fn`0XRM^Pm%lOP*8;iEU_FEL%kFBq*bhc$pEOAeut3|Fvo3poaY!Iv zfne$q_X_)Qa;H~3Si#^SOX}dCKDXhaRL8|Pa1KlAG-iaW@0Ev6a!WWL?bqiI%`mG% zc4crATskARNkTcD^^5DqDv0Kkx=h&vd{YK z5fs?YdYG8l#>j~EC_sLors{eW$}C5XW1T0gDLceKlfL!>C#rS_#S9+22joBDMJ<39 z+vrfMS*k!9aBxD4knp`qw3y1VT4zt z&rN`QO~lHKAk(w(q!y(tzT7<9p~$K|+cjDbIB;SbEqy6zlCW#~=I+(|>ASaodi_J0 zJ4#!LJv%$eb{Vma0xLgzd=C-ng+sGicn(W6gM?H24Hs7x%&%G<%1EPM8boIJsFrd{ zW>j`Y1}*2)lxiwx(<3uT zFD|dAw|--Lu&{?6x+yrchtwrl!eV!e>94g*hZ(J%MMfBPwM5~t{w!ziVhtHYVVkaP zilz{Oik{69l)`2HA|!wyN=yVNO(70Yy~f2L9MOMw7Ovt}OJgfV)7AcwxJavp%yXW> zHOlf2jpd8w49P5!Mx80x6q#rGh)Uw}sppy<>*B#Oz&Hd2nav+zSJu*eV4a;ogeN2` zP?3Mc&J!CMj+fCufJ?XYVd64uzNx?8#jor){gwSthUag8!x8jL@128gh!kIJJwB!KR>6v+-;q zbxn1iQWm>(MW3ic(}d8`sNkJ--Q>7=%#sB^3Qx&ZYNU!S)d$w}Nr|bq zmJBkz9AZhGqv6KvbkWM1=5qr1YZ4L1)<_e_4~Cz6EBwY-1TrMS=oY4}b^WwA(xXCd z3-z@LYR1?YdnqMoSJ5Mexs)y{rx#R&e99FO8uxj{M2GyDyCFu53aF*C5EST0RzDsw z%`jisHT4y1(%-?gTBVO`wl18(>I)8RKG7hq9CajmTKz z&2!kyEY~7bRR}uwuO++Ofr(AQ2?ycjSvVYJ=h;xh_v)N7P%kI5TxLrmvWE`=swhF} zPdiMhjL=8Ao(q#)AI1$Ztr#8!k6k{hG@>P4gimBn3dhJTlspGL8=g!Ftqo03? zXACGI=`$81(dbd1rXs`CoqLXFICJQUjf+Ow4!OuwnuYKv;_fQJ`2$RI;9)o3NKa%5 z5h@tH%1N{Yx1FwRU;N`NNop6*Fd=6Ynp0XUH5e-8WD*|pw0Lahl^UY&VaH!o z1lKf5ZnO7B@r9(F(8FCa6z#=&JL57UYZM=vT=|lGs#dEQc_~AU2q=|0;dazdl{_BO2pFKWbC`?6Bvihdbw+LnH5M+sqn(% zr2>h}Ym@IGzen8{RHjV&S)*1@2R&LZLxk248IXt23DkGBP~B4QJ1@8B`|dosk)t+N z^Qds3Aw-X{l{1RwQ9Dk<p2B(SBsY<}7x9ia+-_5oWpYCkE>E;3B&13u#Z~C*q=`b> zwL@9Jhi$rqphQ$u?@3I_P$^2oEeBkQU(lQiH_US(BCVq(xbPAKB%b5VI19O@Dr3gC z|NimrJC=Fo4TZ3Ktd|CGIAo7&*V5$0X+aD!B(EJp+XG(U(iRSJ^~(I zES9c4@Xmc*s5qbng^FP~t|j^$;#~>yFAp5zZT9W=c$Y=M80JsO`t1hD=;m^^+!yJB z(>2c_95N5tTNFRsyma#~&%n$sApz@&S|na50tu#W{>k`Cy&QT?uLcQ9jyr9hE7@g% z@J;x&dt7dFrd2&d&*gU<=CjMWeTyAbK%#VPf!3LOBaD!8H0nK66HK#9>Sl>4xWS^XxhWNyBX0zPCfBnPqt&som zEiqA_h_9ngiXWL2Xx;#pu}i8!nKfAb9l|{%KdyPg*)Kie@h^24A{~d+8b%b%LkpC^ z1pre^hB|UgP0SU%%bCoYnRRq1Can#s7OBn#8eybd8 zfO%*h7u(ANC0Oq6M{VVyTAs*}c-H%k^c~J^+1?l%<>juAvwiz=eX~NsJ0K~KA8TrM z?eHGkall}6e2FDr7F(@6sZr~&$g4w%zy_qAsN8Bv7O z1lVM`{(?qwU3L9Y?#XJmZy9;sl417AIFo~~c!c_mG~T#G&GR{f)LZN(w)yRi z(n&%0yWu>NRLaM(53U>K6pG^=V#@*Yg_TY@`Eq=U+&1a#mLtb~?mu5YTR&eEWt@w) zrh`+rx_H|1cpP>DrFmX>asnGbvL$L-1C%?v$vw2Tn17=DX1iP~NzH2gBGX=1n#t1x z2?Cr3gi3`>LV)yqaSh^ir_)h4Eu|&)63C|#Q9cN;To}a}J_G@ZBu)j-X0z&cM>Mdz z!|wQt#zu6uC?3Q?3$3pQ3qK!%qPJ zM{eF8!k>Zp1~b4|fC+X{$m>wyi3jkQr)X(Z#*rk$qimCXEPd6(G!ImqK@UjRwfg%w zQx+Rx(ENcB9QP!A0L)-)vJgwl(O(ovX>i!P5hR=^$@}80TsH~CjgBEnOZ^4fb_u5U z>yl>}cS$T-nuvVnFsQ4H>{Qz)3smfWLt%dhiX&!wgbS^w+-oi|^Ik#mlT%FP&6BU{ zdpIUWtn9B-tuxM3i9CUULE=r58uCW8^t9sbS!q)HvLIa8X~-xTT{{|O$bFB7788)!h16< zU+A{06n^?fJ2i|aY4xB9R-$(H!Np_{4@5_^H)&tWk%Giy#~ErTx$66OgZ~(4(*@-o zeEjjJ_jf=1A=O~RR=0A$(8<)vBKWw!J5@xw>Apk}tYm??ruWx${(O(mX^<2WLCoT_lFx znc5Okyq#wz2Uxfm0M4==HX37CBl|&U?jp7`nW??-9Zb&rGR5xN{ejnYPga!CC?ps?Ev!kd!`F} ze~#-!=}t0?Q6DI`^C8A+>M%28%S1w5AMw!6v}kF^%E#d0kw7kpCKbpg(R9|mD;^-Dj&v)y^^*|3w%@`PxZ}!(R+t&~qmZ5jA z+ATmD*3U@P0~;iaDt?BERFT=!Cr5e8HGinrJ-n_*=8v+04Q9~icp8H zmnCBSVBnsB#-j^2BJZXVCpsx}I#U?IB{&W3R${%;Ob2NW^hIIzC8nLwbF|<`ML_26JS%)n~Nbp`nGDPxf#U^XEz{qFC2c3Oe1zd zDMA>x#j*Oaw(OSs;F32SxKCykZ<| ztH1(AQD}&VBz_-IM0;hw{1MK{32}~hwr_(crl<69OPY)9z0L~>rhCN%Sk9x7>8~y2 z(a5%*oxp`|jpSs$0ZURD`BGarsb|VP17Xl+Q!qboSrvw-pJ390NE|6=3%w-KLNPpB z(64$fE08{2l#K~6W&W!3gs>F1)cxWhg>6Qu;4{;GuKUE9KaHQq(4$Jx5C>v3HA0dQ zoP$X27#`qg;U_MD*y(H_v8#>xyr~7*EC&JW`LY0M#5%DmWeKFC96dHWLeqiz$l6oT zd+rkKTT6b9C1M4nXcnant6p*;^SSX5W#7126B~|aF~!J5>c!!;0tswbONINWaak!y zbPqIXQg$!EB_?BxT3Q#q#(AgKN?*e=@|!aRl70$pqov0gbx-N4aSwR*nwn?r0&=}o zcFTg~m!0(D5+Rd?TIgmRtl*A;;TmNKC{=~w7-GL`&--HXNSIsjgJ~}4Ij7I)o~h&P zw80uW|DQ(NWFMq#kYK)mVZkI`T9mJy0ATh14tbkC5J}z+hX{mb+?$&5o}2EIw?oE( z%^#L_GivaN*Us{wp7SasvW95jNhV+IZtoY`a|fR>R!C>|hb7d{H_YJ~!J;(FOKeY;Gz%5XbsCud_h10T#7j zhwmGlP{|rIG^U@%9_(WXg=}h9kX4|y2-FSulLBb0nYUrG|Lf7ih@T;+>Zwy#O~Cvs<3hFsoeqG^DgIDe;Rru8rKwSXui^cln3#mVf9Wyr&~N z&N>YO;o58MW7h}oAYE^UYTZRyw6e;f8S8j@I{M_MxDl8KOmN2w$SiXis>hK!Y!^6l z7uTCY=H$9WuHSL(kX(cGkXS`TL3Ikz)G&4DVT+2TCRG3{idJ57Xgoy3+<`GQa}Uob zA}M5r)Q5dyGc#{WVtcPebong zfP`?+gCG>}22$mGz$PdnuM7`#jN2_BY6IWl4tW@yzC2%SzC6F$cKLX)Mm{ha}A_5?G)yL(>P;UAqDlVQg5s7MtpeS`2bD_7l1 zFkL{3XHE&`2r7!+3fL{kz2(4TJoWse-2SwbftrktnC!biJtiW!yY{~fN!x-dXz5XU zg`o^AZczWD+bCEv=VN*{5?R?D9s=ErohLMqAz1Mi>6bz0S-W*UJ6vwpw;R#Qeh?-n zw4Bdpv*p^PL>BjmJ%McfQ2V%V&7i-#9l!Ywdevm*5Pn&}9&?D|}j^7_V(DT2Fb>j!mw&neb^M zg}};HARKg*WX4%ItDoNi>lNB5&?IfPt<9)}WbE?2?$*j^r8$;q2qGX&LuF(H72rH= z_@C(k7N$SyFCUy>`NbYs&|lsz19gK4Xt-Xt(@drz!PMPYg2W3dYsaY{e+?{sk5cEu zU&xr<)Y3#0jBb5}J0b%TGbVtP)0o?RA-PkcL5e=PB4QqTR=LKV853-XaWrgk7iybt{Kh<>uPv z5L1d*AntDde0{T-Bg9|Z+tIWO%`4&lEEoW;x%H78mue6|vE>JvSVay&(U9A_SKl`Q zlIarTBS}rP*_C`fZ}n#L^mo#?!B1$poxh*~m#T#hed~eRx$mm{NdA;EMUk zdvtu=4j7T8FU*>M9Bkkafq1AsxMJp|9kuK>bqF%szuZ2vMW{TARGD5dAEwYk;o=AP zz2@-%ky4d05L0c)fwJt78XZym5MxK3NaQsjG4;<>4Tw!sB zf?%OiYFv6d9(cI`1rvjiz~}U#XT}$&STQ&@I*aIf9anipONgQ~0>Yzt0Y_yR@C5%K zaqs@z#*w9o>QBM$Ms!d;Z4Uububt`HAn}l3fdmDBl03g4WSea(TBdv@s>i)CcmMYN zzVDoqd9tcNyZ1)ib#zn6I$2d&`8e+f5l&QC9A7kMsSc*HXqlEdQ=%+HJ=;|S98RvF-C_F@dap%dz;DdMbd z-)x(CXaJgpOhFKf-8Rc>!XeT9UL-NY%82Ak%U*9iRq6 z=9R&f%ia0)B7E~DmVw{5LwG1WXb3DbAD_oE#$;6;htiBZ7!&{0O3odQiBBE2wlBpac{&M$@iQK2}K79D@-S>Z$8+L{U0Mv$RDDHbEg}Hcld-wkH=XbWdD47(rAU~@@ zU$xlP|EgRsM=a#U$>1lsya=Gasp$O{>lI2!6jL2o0Vi|N$uvcFH8H`8o(i26Mpc|4 zb`f({pB|8_d$7i64QEP>tC#@jgy;H-U!VNN{=@UL-Db!GHAFkVk{}{!hvMZ(#WuCY%h8$e_ z_u%VjX}JyO11YljL~aNwBocuu=2leIbmK3WHB2unEA?hrYwYRV2el3brVjwCQuUec zKvOQ*M}!OipdUd6)@cm;Aec)T6LTU(&11KNjfAJxx&~4J935HM?1&MLQS8hro!N>_XqJP|m-YpA(+r$N zi&8SAj@HABiz}3~^IC!eQ+J9&sMSGQxLkoL9WmktfmY2$n{G2ON5ePyYuWtU=8iLA5A&|F?2SUevkOk1z&o%=V_7tkEBI0I<# zd^(;y#Td3rBq^Y^VE)y~$!w*{7O!^**V~cuExcXYXNH6xosd~V^3b3osXJUTF_I#X^{t)-|jkF?*!IEyQrue zblZpPHVT<%O9nK&h7J(L?B&1Dbpm(d6I2uq;*KWw=gG1@HYu*Zbv8(>q2|NR^F)zr z$f--l>z)8@kw(ugn|>4X!FHRpPoaSbj@Y#oHQs->9J`3e50sVE&W1{c?zcC0(+?lN z|EnD5-hH_FG-{ypoy0HTnl1SC`NkJs)`Um^gD=^0Qv*p)ceouccz2)Pe}CsWHDRyv zDqZ;HYi*`0cm~4ZvA5C&mx;1W)@D-SzsqUut z9Opy8Bd@%{>n&X1IZNh0?tD7YkXeVul7eyIaml@u93T{`{QB;;BQ7#u(3EHd=IDjv z*5Z*CRtIdv#RJ^Ep@+F?#7c|~S5wrS;uuRy zgWw#Uy+AH~5Y5$cSLDG&J;+{Ag$WXMd5L6)E$2vxaUdPIoo7QD$xlzy<$IKS{qGwc=3-77Y0!GHb1a0P=1S zJ3x%Qz4ZmD~?zIL0fRdud&{U7YlC6X#2I|slSWa06~ z^kiPjFdJ|)juc&RSLdEA-vQPsGLFN&k-VW9CtDp=QWOFe4MD47e)fEK-sr_TAiXLu zmjxjJ^BSJ>m;@}RZAU{INeQHFVcv>9L~m#iwdmu;``hy`f7$*|Ee_Z);=HOF1+T4B zC}AgDOmR^zyxjK|7%Hb zfy7KZXr_HL#$JrX77nd5?fHQQ>mC-E&lcsA3A{3{_DHZdb4pb&=`3+jv9-8Nfe)Uj-aOCs+3fWhQc=%-$CJ?=PtITJ zE;0UXLg2u#RAxmm1#lzPJ)LVoE3AeIeIgU3XfA4UnM9r*RtW8L<_G9r<8Wu3NZez* zsRgT&zmy;kQaj%ufL*u3$4s~&Tyu(2WPCh!&m1i^QIV`#o+Gg(nuA^HR`+mnw**AX zcCEXa$wA3^RV8iq5_RGW5{h#*dcLCPfR0^FxBHWceC_l};X*qx4SH#+zn<&%+^!0} zh57!(qQC?BKuyd(Fe?O#B9@dQv02#KaBlnUtT2r;-JeIsIKodOq6(+qPN&Eo-9{B= zAHU^hWqO;Vnw!hmG!#y5SJHM-0oKELazJ^BL(qVv?ePTq6L4dAf-~n~OC*OiY(+FK zD>yKuN!mscP~RDt$#fA!(yf!sQ8@faeUGsg!*x>&OrOe)EC)C`zPB^efYe#67mgu4 z0G^DRmiAa2)7`uqQkNlm6fqC&Yp~HkuZrj#f49d6^uW4F-{yYMqukKjZ6)zUq)ZEe z-dh!Jm_1?{qb0afRv_5~5XA-Tl5qXq!Ql1u@#FFSgx+$(S*SZjIhGg>|4&(VNiW4( zo^7Tt95;#g8}@B+AzC2_O&m>i1L-pMi6PCMG&6J!Wvs&sVJab{cSYiY{n_{5-+cbe z;owvmx7z_}0)nFg%6@ZQX$1Eu-j5&_#CI1BCms)TL8suO)8Fo8k~8tR#S-QnNvJ!J zkl?`9z4F2wuQqDb>2!T=W?Y4SJ$Yev*Ee$N2U^>Dkbm(_?EDLrwg^F?E@U>T6T!o* zbQ-Q9be0PFHImBEx2=VgG$rOeDRuZN0QLL{5tHr@Uqa9S_U^;Kn2S7qjsA>@TFo}| zw{MuB9D;7?_s55SIKm^4p%cl=`J8_l{lBCC`04$J8!#zY8StUF3D5Y`p&OOk6JDd` z#v^WT`srZDym4O^dX<_X$}%dqQa#tN7FKl_`iD9hwv>{2)S+#?5Blnl{!r?D$i<&G zDG45vRLwD6uE;X6Wb@Q0bF{Q83M(OpxyJPGJNC)6I%q?y4!@s*F5^VV-W@O<2uve` z0bS1>ACUI$5E!4o-KxkRF#NYjhw*y80^$>MWH7Ru0;XwbIm)0boNDB-#NjY)Ic+)`Sbq&Vb#2557!&%ILyI+I3|!GGdaLd!_|7 zQgX@|2BQkZc16Y%$edY>?!tO6h5@8MF)=CtbwiR94m&cLu#n-D7=%`+Zo(ldzdbKP z_tGCm|I0K|r4X46k^gDvC=8Q0u-Ml`qhB75{(!BI|2oh9gWnPL%=j4Hr4d-XoabZv z$8P0x;{Ep4121*^>BG^#+9;%JyF@|x`!2Y@f1_w%2Bx%>MFKKn{eLOTgEP|h!|cHf$b5SDH5v9jmjU;frm zv~$cErb~4jP}))AG$Lh;@fOe@V|&?)0A@^!zR`XQMidwZ&(XObB( z2gNlfE|tH(dVOIV&BGnS?%XJTdDidm82;F8nVF~51EU_T7gu%tW7{WI26p_-b4IgL zl4ihIrvg?$>-C0VbDg5BOxm_Z_&T+HRoe5-DR^>sZ#*@{l?+byJ2(y)oyc(nWf89e z#@CAC+3d8Wg|0A(w73He#Apy19D-U+%8-@unGsRvEv=jIWSGf8U}Q(X!h@Db?Zbwv zI2gxZEP^Rn$gMexP%qRc$`21NsKY3i+7|&GgHgPfrXyphM2QCBG6ip6kP=+XFJvEL z}L%g*3sarqKD5&S$G zS=d_lvaF-nW?%|r9<`rkb~a16EOnfkeNM?o4^v*x*i;CwHV?S|1G{zztT~fMb-4bT z%~*(6((W44Zuiu5p;|Q}Vo5IB#g4kMs=Yfp;-LWl42|7v{+30zU=If?E!+)|-666B z(w8J7S56e2NJK7osf?zo0yQ2X!bk$!a_{(>TUSXd<5= z?v;UtcaRG-sz1rEt+{Zatq*LAs^!48?$-px<9v#crTJ_m`QRHQuiJm43hmB()pDGa z9}>KL1-3o5(`;3^?qqeTFm*S^0$+`-yn)s+O53C>+N4bx8KVG!+UyZ$*wJwBMX|JR zZSr`skWCBgj#Leope2{EkivuK_*Z@a{(~ssCdP>EFk%%gz1JSDltTK0L1Ug7Dy(%e z$*;JX(R3w|vsjB1Ufgo6WdE6(A|j6s$>D>qksGn?N;KzyGP&-m)vL$i$CX0>taf*| z>P(~6)vRScbZ-=Vuz;Fa0(56Uy0gIal9K+4+5VC5@M5`y-wnP`46y>2I~PTaN`;WF zh)y(-fO?0m0(J)+ov;i&LnW?Nj&;7iijeMlAkK)DK@VN;U7GcaZ7C;imR708%-b;~ zB*x;4FNngS;EmO;Sp(AOg|5g&A_y{P`^wkVk+VC;dc*C*-ldcZl@B7RgnFiiUN$aN zKzbV`4&?}n{TMz}XMg~&fqmi|!}Rh0U-9wEQwg*a-2t}cBgu5M1Q)(`#L!@gdbb^+Nj8CLJf2ci;=-f8 zxFFM4MdsU!ZIcwMV0i-c$>yDoyd%a94=5_QO?q&nv?*YrVDn@VPhfu+orxJp{Irx8 zL_TkAFmn*uLa`q40)_gRd$@;>ctaD_&07U0ulMC6`>>8)EiNPX%fU%;AB4WF7 z1*eDhCzM1k(u+ODR?>GrheHsdj;l;(I+D3v#eQ?An$uI{!jhNISCR7os*t{Gjh z=9g*8U~=47ex)$KR6k3XVg5eGQ~6>iQ2_g6po84AOGRFzd9DhE;>!RUfOxW!JEw{T z3M4xAoKS~4=?TV(Qx$hv61J918f5Dc?%wkC@Jx94;N9oXH=pkIzr6eO?&qVMUw`?; z+6#aC`2L57q}#MawxSGeS9qUXCVg2%pPa18bqu>p#c1zyXg|;cQw@)&j9SwicOcpp zWYmyGZeUjgM6*K+oR*HNit-~Lz3?68B)@PS6t%{l(sCf!n>|@m7rk=^M`w!SK8AeP z{mm&etn2UYrIo5ZG;quZ(^GLO?ZJ6IS_tNj@{5cSOe-o}NlntIf2pGxl?omtm1`bs zw&`8?lRVE}A+{M5j8Ji*~-f zfer*nAn+2(fe+8#a0i7N|=MRTZlSWMsfLO_8dXPZhRqU=~whMwrrl8MLh8QDl)ZTU=p(B6R2<# zxQO~_o$}l5&{YRmFSjYG-hd^~Y33I!s9e!{+AQ6KFj7x%FA$|bfir~%7QV0$*idLu zbl`}%3#FkhKYY~i+)Z;_pyh`~ufyl6GIz9#mZr?O1(CYbh+47OXlzm#J?*md(sKSIzevnmqG|6ocN|5 z1E3EqusV~TxhU|$RK%#6ExGDbB)~v47y6Fo1-3G!+ZrHB4T5p$c_ZA$2G<{lE z6C-_DxvF&CIENz?B%Y|ex6K(9T20;$*ws6O&}>>05#GEMwj;E(A`Na?(0i}?P--OVQ! zgK?6nIB7Xx96u262?vDNKm73iEBFyD~QxkD~CsRoMyG-eB)ScYt;Ko;Pt;ZI3TJr_>}%28N_WUnqJZipynS0fL~ z6$Pf@>Gp6?FT$`NwhmA?NO$3eCsSm2Lvxz&c=7%kX8#g70&n0fpixC1p$k(uCM{_L zsQ~k0&^Vva9zew`!DEO+Ex@`Yp7}px9T5m9D3%MI8|o_HW`yV27B~C8QxtNcq=?1H zl&8Q&OUH!sYz=8Xhl7 z$I~irkztO!4k;|XV@M3=ymh`CRXf!H)KHsh_${Yn`mg6RD7=?}b+Mhqlz200ea#&~ zT4L4i?!-gGTbZnTDuY;?CK*QsFPlRKB9l+K0)lqINj^yuL@b&`Oj7rvdKKQm_dksHT+-#AE z9XZbro)iBLP;a#FqLKY-v)G+)`DJN{J+N-#z&+68v=?^U0qTa}2d2|)r2G+u(Tr`& zH9OR9d+)~P2oV)nc`SvMJyeyOHIoiqefsz#EDw6P#*S<3VI2ZoiTrZW2nIL-R2-|c z1-`JWChWnCKe=3A!Dleo4#a1E5gxL@Jx>}-tSDpFW2=!Q7v;B2D z*o2KuXtDAJ&~*_J3KtYlWhex>LsUzETSvj}M9}bVYYuD=sCgz+PtOMa-}grm+cQj^ zx&BN+fV|7&@U--nj!hROb}3>XuE*-KIHZ0Z>(eidBXkj0!b7>19&xRp5JKAK+FJ#t z_ay_sWIhh|lfH+(%ZUxg zgIZG$r`L)ay%YNCSCGYiq`y4>yMAzq4O&p-m^cvxE-S1^jcVcsktut6jg^2B3Ntf0 z;`WN}La)b-_d^Gy$>jOh0zSXFd-3k}2h`QFqYs}5mO*ThP6N{YP)G7&F{+H}1ut|Z zq9HQ`ld&)%C=17NyzmwA<48|2Ijnz#fep)|bBe$WzLlSPR>&>?bUxrU` zWviX(C~3-q-Hx**{@j@5oeU2S20gSx+P8 z-H%kG-|cnsj|%dvfc^Ao*$qh^@7WE>T;O?&xgl|kBoK@UL`KGq?IA=NOF+Gt!i1kn zTs#Id7yK&IS9Eb*3)48=CV@zU{|mlO^EardST&8-teQsdBYJqDYC#v9HK5Lf)2uFh zxxPlN7EX66Jk1;gEVXw8)Q4=iAQ+ZN(sbCWPyY~Szq04#5t=$cdHtlP%C@o=2$b@HvnNB;%{X&70>Zdg`FGw{FHbq&k(|uV!2!7;1HrD>^AV#e z8WQZ{i4$E5B+&;L%hiMiiolt+IrCdp4}o9i%p~6+9^a_$q?v@1(*e0_2rR+NnDF&Q ziMHkfkeqe3!pVDNMEGI7FjdDk1)gfmv8*hpMk!A=!};>2U4Eqc9Z8spBtCpfWm;+{ z9S$x`adL!IO*CVCM|JvigZd!CF0lMGj~hYiqYmBjw?mt{_!zOg_8f7Z@0>c*jxc#x(+8pIKN5K z*pC{gVk>7Ny?b>-e3~~OSYUfKz4kZ>rT)#RY4MBleG^xCmMu)UR$>Wu4gU}63y&4u zVpg^#)D2MI*c;2$jt=6V5Om}7<7Tu$IkmvFBqC-zIEH8Z&WqtL?g5n2VIu45)%9+_ zo)rdZJpN)IXL?CwGti_IJ@#(4gS|KWCQ7SLio1$?E`VrNco;GKx$%K!)$3{?wOs;K zKMxbQn}d!^0ZA>CTJ;@fC&5k_+g)_n%os7;%1M)T17{j?DLi*G~>y zKgIP35@)QplT%Kh%aOEVXvazXhceI&y+yoq6ggZfu>$p-_Jz=dvL^B6dV>n{WnYq5 z*13V^a%&riFXE@>@(vLCzWe)q^&d)y0ht3Mfm(w&puwgdb{5FhOmLbHJNJWoEkJ1% zX}~h+6zmuUvZHcE3Wqa<%^;xjH8KcA@o{$W%V4Va6L`|q&*~lKY~D|IQM^(L z|M=*D`y0@)8`}7-+3BdG(I_B&t5P&b++4q2Y?hhc%KCoPu z>u;c%g!QH`6$Yr{1?)FbCC~L%n(9IFY#P-i;sDCbgyFFRwa;`VIMGiRHJ48jOx?Ai zm|c?_d@yc3Ka2^0R51zSu5Lof~i|+=H5;rJ)A`nlOKkS&2$I9c`EgaBrQZq|5wztF8x~ z*w7j#phl?4akXt(kO6a?2WOEnQHcbnIpS3Eg}NevYk8$}cA5TwI30(b6+Y6!yXgt@ z-8ziad@bE7?xA*QdgLPR)vKv)(P#>rx z$2gYF!3Y;ZG)#W3^y!xuORCcuy8^%nB?Qcn<%hxt6)i2Mt&0=(F3Rix^)k}=&}t6` zUM8S!kP3nJ&o?ixue#AX9iVQ=M?roa;BL6PvI2m*%#id;C^k0c`Mb|I6xAM!vho6r zz$S1rGatk8@#NGGSk15g@yjh7dVGQXG7_sZ z$_p9Q-A}Pse7Noh=zLymuUAaGQ0$C-GX*D)+958tE?=q(PO0>SiD=wrCY;LAEX`YIY{Z%1E^BAe-Uyn*g;>dQ*GIF!7I zM%-=TrdQexFr+A$)l38BTCnVCv3?P+P~4 z&icb&)OW*gyXgsHwQ;|aU$-M{Ki+y33G*B;1(T?Q zgA^}#GW=ZVGNIWvmgjVo8=7l-xu%Wcx$(D1((K5Sfb0@o;9+o}84JpKeATH1^0r^w zs`P6weK=&7?F)Jhp(4oG9Rv8&hHSD+PldPeITu9 z$Y_N$TgtuA?$g08x_SSc*l4$zEn%)ouPegx?r+pfJd5IClqswgI+gPtrKF75q2%Yq7DiwW{l%zkNYPXqb4gTS za*eOJH|lzOTDTta4w2iX52Zb0_>ITkC<*|z;<@JezpJkpio;kO^Iet~!wa+A_R@o5 z9`8m6(u2N8=|R=6rUzwO!UOq1Uv%<=ws#KZ2i5j7Oq3W_Lz-m4sLq6K$7nFnwdL5^ z@BgIz0Dj^cF}{0Rt2yF;KK$z6mbahp-ratG19LTO{m6^h-k|)4y=(u2m0w5yJ<^0W zd(P)P*Sp)Qd{zZKAie;ev_cB)0cb$B@oAP;=8K5y0HYGs^t`CvUx4nUM)1VpUEZ^W z>9K{^W!49spNI%sgyv%qzf_=)PFmSRcHlnHPJ!vPhckK?m|hS}z>_GMsUJRReI}so zrYC6cI1)XCrg$V>8|Ev3_)@ThxuN5jcxIQ8a47F#x^pLu=1O*n>X+f|>X<>K!NfGL z$&bRx+0FazYCiY@1*SJ>%sE=<5xBSDZ5Q#pKpl~8+m&}#KTGL8;OlT`SwT9w&DIBq_yFbC5qb_D$fb&s-Nu2Vm#72O4J1dB?%-Z{ zb#wc}``aIrj$*O%(gCiccx3v(qKF&c;|SSkwMCm7-p7JrFA)ZZY-H0H!RDd>v7%&q z04G|uMveDNA%o((8!|`)RUA1DNpn+jBCPJ7aZh1<1pZ7Jrtg0K<=Svnw?Z!b#74}NP~)fzD;qxyS)BCHN^ zNdi)m?M#ANAyADoHorOrr_NG;**TRcs#Z%XyjO5)U9h%LnSVLbR-cp;iebl3jmJCG z$)8}}P|9<%Npdm{9K>VjIKfMx_{Q@2B~;b)jUZ38S?=aX?|%5<)1SZ;fTAi@4(Te2 z-+lT1ZnSH9j{f*iJ@_wgdI*~PH&9jFhr2^sa(D2mU9{0>%xx@~TPtPcgm%$FZ!I;k zigAr6U;LT2W0P7S9m9>KrE|dy3aA(RvkyOhEEOE~7qdrT4S9L>e7%K_6RMX`%Qt)U zz`d-eB}$ld{M_s|m?2PJs3(kL&~Jue)+4|znU$Y?e>Wy+4qgoyQ$hlcF*COH;#B;) z7E^O&NE{(zxCDkc)P>S9Abh`2hV2_IFCQL>8+joK@C`^Wz+QL(jW=Cr=;)?Bxj5da zc7abbg}}!Aj=tu{W%P$0a8Sl-s3xa)DlBhkP`2nMhD6c}H>*s%Pa_CveabRA9|fgV#sl zx2kuTF}C3X6s*px;9` z+Y(8|F`WF-C06ICta}MoXg691=v$5Sk-OEIh!otFPmFo^{^8FMHQ1TD0~qmPc>wES zE~0!6sXbFmV5wJUuaPq28p(rpZzcOxm|x}QB35J$?`|EW_L>J&Fsjn9C1<;w+!b@X znqtL!boK!hTXssR8Z>_E*}eQ$2kO*hjA7#2NKJfR-Lz-KCV};SA;It{J2lf|X==mm z_dmV+ynlcD{f93<-0W{}e!V-wl+uf&dwstbBy5$~+OM7r+L8=X-*2W**QIMjc14Vu zUG}dtCp<<#41Qe#`|P@8t|04fyj;4dFO{XM@Klc*-Aosz$3v2@2I=3Cyi!?!l3 zza&aQCI=xW79io3q51h@f3=AfNCID;L7<^lV}emQPG>7x`sRiRdae*JX)%_Tzr$&s zHbkeL6=@^5cdhEOQ-)(KomD!50}P9AK1YorD$bFZ=NtjwTjl__{od4K!Ul^&5A2M= zBoiU}bKt;WN=r5r6-&*GvnZ4>xHCsp;>qO^ozx75qFg|-Ne$^qlPb8? zW*QWk1EfvFISijrFOC~t#w|#_5oZIwqe_b$w_mFgV^|_A`_~qw#q*e}#c?nXtLp0Lzl75}9uTDHM<}iG@KCyjgBo9TCFmxCz z>DA|ELMC54c1z*WS0~3$%#0};={ddm_t2r|NPMw2~R&C5}ztvN&NF-%yCIZ8upDAxQt zGO`qY`w49pjZlP>g!M?eK?oU-^Da*(pbN73HRFskcjWErk--feX+6_Pi=@bO(n2YC zm(fXZuF$O}-ql;=UXAZJ6P#3CkOEAZB`cgzO8BFlG+49)(vCK|gsq0qHBMvVQ5ujs z>tuQ2qMq{8nO(PBMN3PQ5MSSLaRH*ZIKLPVp4AG}0D$s&B9zZAn#wT? zf6pqP?bzj+Dd)oN6Ua>)P|iSA;~nv8-|WtwyEUmZLHGC7fD2-SFBdH0DMuROnld6w zcAIu1tM1e2iFG!w@UBKf&k2xTo9N0mr6N)~5O)vf@5eyxll62nUrbjUOUjv{G+!0) z19KR_rP+LS_U(Lzfa#qJVtxhp!s~GU`tj3I=?qeXDg=lo`0cy$CniIXsN5@Xw{VU* zKFH7jWIF`hC4J?Ld9nR`;uaQimjzbmiMeQ>Il80n`yudxvKjbxmqBGvs4&&2Wvy!D z+(F6NMBqZENnR8ihr zwtsEvKx$jkOM=<4JG;7t>4COUO=9rC2sbxsT9TI0cr4R1nzM=wO!;!f2!`g7Jg3Dw zdRu{M0GuG%c%( zruF@T&3E1?`F@%IdiUO{ID??2wo|8{eGM=Squp8#VK#Ssj%zg-Z%fD$aU=&N(qU#<;}mncAv zhKI`wYmICJho(%%Ra-l!w4un-l6BPSw>iR5QMqar+EP4}I_ zMRFTtE~*yITjWGAi%?>~lMsG>%-kY9PQIYGNT$aIgC`Q(Y42r-j+fZ|gf<<+xXx5j6o9`3z zvn);Z;GWW{mF`3OjpgMx+G_POu1F!$>g^Oc(x~oeabf6o;~@Na)M@Lz*pH%mySGp} z74Jl#khHA^QE+m}@Xn5inxIuZ#SoOUe%{c_2`wQF+M=aZ;0yP0aC9O@+AZN{(^pi& zj8bhdo%o_&7a|a4Xs_$xu)#hT|EVF69H`HhJh@E1adwHQP;Cj| zI@_ymL(n$DrXkHT{=@VUEWeycO3o0-Pw9d&LQFUW!vitXeIV}OA(leYLnK=F*MQ{E z2=8GchwJt{?krkbh_fqD2#+ofXHmOUcY#avE^^BK*mj2-Z2SO@qp1hmpxxuF)Dpwj zA)s(%2{V`@z&gP10#?1Adz$&gy0u4WZLvFPkeurr!ZP5PTg7sqbT~V-YdR3j@EcH^ z!C+r~scFv|RT|7Xpk)r_o|qJaozG(n({$>{SiF)~B9xXXe5PGTVL_Q-2s$n&qa$_T zWQ`=ocf3@%`Co-?=GeyO^xN6zXxY+Nr*6YHPX|v|6!0LNqZ@DYwq_|RsBMJnufhQ%Xo<&qgi;p?RgM|=o z;uZ6Z#}&&10q*4tw(+ysx9*eY~P@tW}~{0nr=mAi!Y@Uvl-lUtjC$`PR0# zX@!z9OfP{x3j}moWGj^K%tmx%Np!egX1wu~dA{MZ>a21!HF6tHl+r2ZJf7JF>!~~N zKePF34&v-`iZmVg1prcYSnx4YjO@>!Yya6#y@>*b_zF)Dn|_<|^!Qk{NV$>8CLmc^ zsFCPIh~$)S=w@c6^0FK$e*kv}AiI`f8gC-INdv0$=!dTn0w_OVt6$A#MlIpv3p|Y! z&ZxKsGZfRe!c}=m{jmlvUmZXEP02kl=D`#?dr_+37Cb;qYs7YbKe6qCZIk%;ldg+p zaF7lQnh?0aAZ#jvguvT=_;~x{NPk#APN}ha(I-8Ij>|S2d}3W6&?p(&Y^t);ZwPAc z5Ml|s#9PWi#M8Q+ra>xQsTHC;k8DOq^CWSw3m_RLm1!+rY@eQX#u`qyM z3ryXO;&XGka$bq)iHX*$Yo+eI2PUbIei6__!*sjG1R)TcN}=w>G9O470mp;g^W8{? zK3WCt>67uHJa>_@hO=@n_tk}(N0!%G>q;yl=mn-};L$t>=|DUL>?SVLDxtIv`!Hyn zlv#KHJ^$!3=X0KuVTI>(bg3)l$7PTZ7Fg}>sWt^kvUF-+Ln5mjM?tu zWP)gklV4F*YovN;h(Mn(pruN0Nnu=pX~lfVr`qt0v=-lKS{0pvw=@o;%!TI>bnWs} zS1t#hwfhFcb^~O~wA~YkBQQ5wNHW0CwNz0cmtD8|-Xpx<&;^OFt#%X>{XyHypapWlHM!WH;&4WjryBrlQ ztzyDM<`Im!nr6LCy{i6Xog^4-&n-PGCJVlUL=rPEac3dmt(4Dk4tH=40tc_>Qfkvh z^(%#v#iw_u-SzR-Rv<@7julttD??U}RLsk|P39t8rKOMfwXZkuOL@Juvt4ZVbvC&f z^yLC2TkbiZgYYCd?mCi8b%;(G?I#utXNqD!|M5tb+W7OI4TG@bnY#@QL(lJpPVa@z z?uE|bN?}LoF?KD@_s*|IQ=h8u31xRz!Pfz5K3&CiS<^CrA2@%0F}-%=JD^CKsMs9? zLuV=>uU~q-J&orKa_@4D4xSR5dNf?F39ex01RO_?5S}m{7^q2`nsGC_QCK=lr&f#+ zV)r0kcH2Acv9)Uya zOW79T2_d|L+f?OD$wA{QFv7YyfMP^~5DZ7zmzr37f~jE{8y7&huTF5{p+`a$jL@*`Ca2uJVqra0RsTC3Za*fT( zN$)&&po4AA1$ary*d;83Et@>^oN!)-k#5{>BKN9<2O4=AYL???_$*i+;IDEYnHq%K z%Z%W4v7b&(fHdHWe2CaFp6cG%xNm_;Hnp!Ko``;#67AS4O;6nwQuWFJ>6JSE$>Q15 zo(^OU%;c0t@6vqGDNdCb>e4_Vq9PJNx(_x5Xm?!oYrWHbW`1 z{b*w2clpXSHK@cI-ffQlojh=5F*UJs4LD>&&=#PteGsijQ2d=a#nNvfS=*wr6$=M! zK~vmrj4fcEZ=ML$be~iWX^JevjoTzl4{-8eHhrl*g<}Za5}g{kV!f*mUazPTJ$tTF zNYSw8(&Vg^?{wbef8)g$KgfKR$PI9B&F04S{W2K!Ha>lk}2W6)S!AG|V=i z-~V`f^TX)-pWc1KRIQ-(PA6$pPgw_IuSlicTlA&Flc4$*U33yx6evawEt*yQvm7_J zAHRJ1{$_vu%MYlFD@Iyobti7uS0G!CoLs2Lo1gROvdNR)BDiy&+olY4mc&!rF@%im zG@-f}bEZKq-8m7`s%3xaLfKtUKhQzb(UXAa7H5gxk2oTpugJGI(FrRp?KPlT)|^Y* zIW1QgWb0+JWJCr>2F>MI5-o=^3LQwb03SlVNq4JrLO~Ps*>P zsWffuAbJl_d5DY~Z`UtPd@L;u*SGCI9m}mEoWf7qSXD~16{P11|ClW?GHl71hy+_W zN%D}P!Tm&eu|`Mc&s_7d2%q^@Z-Pa@$VY`0y{9B^GjHGV*H4~3dHn2Td~*8q@#JLu z=*i7LK?#Uzalh)l9!b{EL|Xu5Ru-P&z%|+`W2dQg2S>+C(b8;{Er{T?#<4Zhdu6KT zM@b&Gdaxss!9^=Djjz%$mAl5-UH|Ro)9e!}U-z6P3&ggjF?L;!+dqt_&lzsM;swnm z+ZPap7w>Q1fBs3&mU~FLs3dbl6laRUq^z=dv);^Hy?4@Npi=GaUkX&^IMnH;_*0nIyO7Q=6fA$=q zA&rwjbvyeGBJz{LfvO3b0aeQo+Tn}+cYnXT`JVaE)B~{*wkYn>HE3fgFujM{zZgUy zA<%K3Q;_)W!7g=>PULNfv>9gYhBM$)i)qHr7ROdOWYjjtVh@<%77PGwQgHePo2K6RoE))Ul>(k#uD2Uwp}bVb2cxZ1chwWq)Q z$L{_2f4%zj{-f;?pBC>MEp<&eaa*|ry8dHlaDC}Oz-6uu1ia`D1UxM${|tVC7{+jJ zYU>$^z}F&GPT&>5N{WMLo~KID<0rfON<{-)YDJ5bxhI+P((X!DHw6)A;{iDI%6Oyr zERHADrXI)p;>_uZnf7QH;XRoTu@H*0cfKvL@2c5`oux8A?c}-MHPL>_pa*O(5vwyZZNWd`Wjg0`bNtg@$S0}>@OP%mhBmDoc7 zfmk+d@e{F61(=G*v-^2MiEsGBF|K<7N6X(NPX)U8;zh^5Mh+WCiN^6aGo-1rc(tfv z94*_V#MqFy5VCP`<+6e{r!5qB_p$bPv5>Y79JzyV1S0D0Zhq!>PCs-~K{fi9ynWpV z*SD{;=U^y~@ zxrW68p4c$c(!4F>aim^JmoNb&M8xhm+@~GE`8QS4yhjS@|H6zY(3OxUq~@khSAW+G z!VO`%>e>lVw6uwx<*=}Oy!V7$iDs|(=~@3KgIYx(Qr97Fehx*)e1_yia48VO;Zj_9 zo>GR1jOd<7Er=%E-&!_EOO~Ko7{hs|&hH`mzk5NSQ!a)al)a^UKt0%wg7a#F`nPaV z6~TclD))Gt`oQ6(_~mZ@VmHLuBfs=KI98bYWP9;R<}45GxyF0E>_qdiphQWYX}(5w zRC`W0x%qI#o%j%!V)W&PhbMz;P+*!UWupddM1V0@efMI6eBdcfq$vxeO5Uv2u8kwD zTcQ3Qkb+J0i5*eHr>?}%%O51I@bud$O3mui5WCcDVhIHa%jv1UrA0Z4HIJwuxfiBc zPC31@u{T}Tfb9^II&W|8meZ*6_v!V!4_{0lL^UP=IHQP;pKn5G&jYXoubZ-7j4DPL zfId(eKPWDj&y}-cj+f5&PsR2i`W~rkwxj#Hs0VNaZkr?|;Y!{5>Or`sce8{oYXb*` z_UwBM*q}sQVA>s=CT`00l}8QOZ(I2qVHE`*FX6quLq-9@OP0}!R%X3^dWn6BR?;L1 zycNlh3=adXCdd_J&gI$aNSC^vS4d+|LF7+%Ll+87=t}Tb{pEa#FqzOh&!N4Wg+HN4 zpTTL8OLYjKnPxZ(@)04gF}H4MX`-NDZOq+N07McK`tCHqWDB&GQkgS2b{`Sb%WM_9dOVyQwx8#WS!U!u%;J*-zbXs2Ual zi)8XtV5O}-+_=g^I@_5~Z!`q8q)D!cd1~`qT=DI!a8`^@b+2a_H6>_vFM^e#B81Mr z(<`K6YN=iasQn(-khveGq60TL&~GT#S|pS?4z`THVlRuclW+gr~wv z_k~FnWB1~TmIi8cJ-ma4-XAbMPMAtTi0dgd1)TwRp}M7zCX2g#y(8fRWCW)wEA}GY z-EKc>m>S73VF9tn`{CKgBozYO|UL58#(lc}voa}JS6!7b^&|rydd~q$%TU(rvf!5O^&Oh%ru>G_SFa~(OpN~XKOrOB-z#!X-QO$nPu<_^rL`5ci5S&#Nid}vXtiHA2-@1BlXfm%=!nIk*X`sMVCOoKAw9qQ+31iJM@ z#^5eUY+EVJ@?!b?#gOQXvMeYR!qB7_$m0ax)A{1;8r~p6*~M;k(nprvn{yqkOJVVA?&}*i^x3A=dd71g@UbugIJWRu#F~ zRZ~$M$RSyP^(!N#Q~5}@6&Dmu+U%-H;?&vZQE|t_FJU{q**JqCMr{!wy;V#l5U-VC z#U-HTP)sOr50b3sOjH!8ixPBiHt%gp5_IIUUFyc;L4m)(^x_(@clP=3x6==QUEX$< zXsCy7EfkeioqWb=TH}Yy*neSin*XkoV!j*9q}7=4G+_niudsA_lwF3i>FFl(4s_|w z8+sk5NkK?s2ypIvLPMhLMO}c3)0ifpt9BeUdVns}7zR^*dx0%))NgiG>Ch(!NM9@p zt&Omdd+*eK>p@8boJf(29a!QJ`t?UsA3a*Z-b!WWf!~rzJkGpzAZQmxbiM7M2c`vU z65r{%n}sKX5k(cK2bBa?_vfveA>GxJXa8`zE8S-2!kC%HRBh3OPY<}^K#G7(Ho52+ zmljyC*i@XIZjhjCX?`4vrO^q8av}|>WG4TBN+xW=!z!78CY20NEMqJO3&MlMWAjt@ zPErVAhsk`X5J1tR-BJXxd$A>&1MZ=47E?4FQdmmdHbL+lZ5&AKNHVAXE&p3sIjnX3`N zY+QC6+yh|{>4i(8tTtSQ?G8&2IhSFOJcj4-#H;%FgFNYfw1gli^V0rnf&LwHD3qYMdhvQeg(SiQ&gUDErj1`>$N;YSvXKf37u%B6$V&opI7ES0T1+>* z0pcUtESL@kHxT3Ur_)on5K?8Ews&KiF5D2rQqQtN#)&O$N8VQ=BW<>+@JnPYS!e9@ zbzO4;UDDRi$IU?w&!JcycZ zZ}7krm|o6l3|Cx7ZaT|k6`&ykTA~HcxP;o)XL=L^I0^hR1Z$1}z%~llX}Qhc>|VA7 z62Ktt27laZi36$}3`eW+@Q1CISsz>v?v1(5bV`N_s8g z%(!H)30tw7e#Gku<2ap%GX=iED{y2adLV-^5URX4&4P3>UBiwHSx@I1Eee5SLqYC2 zP)=iJOAAc%r|}q38bmAsQfHXY;BZ1Uu(&1U3WK6>2Gi|UYP<3qYP(K9^E`4D({J?~ zOF=^p)C2<52bzBT`ImQ}ZX5~uWtP#EDjusHVGTy|60&LmzAzq#I&70IKz*~25fD8Q z)!0yTwCa|@f=W9&cz`NU57a(U$;0XNWZOh-cR=disr)!p@sXUpo6ks*P|K`6Nrs&r zq=#zN-QwS>u*|v!XQyzB;9+9-9GZz|fUePJLl1IUy}R35SbeW69x_Q6H{+W2uED2; z)yMehf>>t5A^jEQTdk)rW!rfHVLwcE$8cYErP0ZdM%?fP@0Y=l`9+fJL5?qypHCBt zW}ZKGp9L6!duHN)6>Z=iy#~#KS$i~i^#P8R1`dC*^Nl+0_3i-= z$f&7^H;q=k54s25*eC(C*Q~G-%x!A%Q&m>!`233}2B>Zs$%#g1*CCo!;xEk;q?PMc zjcf(7BFD0XjB&|VjZl2??)~?p_qQLQf_4O@vAaJyd0{;$Ft<&AwCWdm-gZsX!W)8W zccsv#;-clsqCQ+-VCV=#fykI>eNjyET*x?1U2r=Phyvn|MjnjX0?WgjQ)hv@IV1f9>OJcg~;Xr z2a@>(N`C6me)xyrT8T^}T-lDNI4yBet;P#Pmg#gwE5?I<221ez`C_?Z#S>q#nU4Gr zL^xT<$E!u8-^AUpn$T6k9oS4)?u?r^^kV1k;ZgVszPL@H!xmJworhmdTv21nSEw&B zTS|h+BF@iuTWpb6HiN#4ql|OF^uU5aJCQ!kKn`^(Pmn+QJuV<)Aar0tv*cn+ob52n zu!pE3LxVUhn}R!hOhlNS_!T!2m!C>oA1;#ZvdkcJRA4rb)hSI*@UMa9f!g51Bg~Hg zpHc@08{;0uz2W_al$Y6Rt!Wyz_DFkO!zaR4Av2!-M9b5mY$$m*rd*krjE+}LPE^Bi zMO$f>3A?~Sf$3u@yc>-IWsPtWqOotZ(o~NsrYL3_nW$0S0mS%nhi}=xx}IOdw~MkB zvG)+vU1{NBv|Z1Oa~2zE1g7rx4{&3>q5y$bT!EIR$Z;g+uMboua=1^-*HXffJ7sAj zYx*8MF~aI%kEN=Ye2C-89oFJHeIBMrAU_Mng^u^vQP#Rd4TZaFe2l$oVqc@}YpM`G z0p6%{Vf|BJ@P5Cc=V5W8@6(t;cpNve{aSgPHZ}AvP=e(I|G&g}xP*fgR+G+$yhe}B zeBGYp+sgg*3u|3tW!g#8msX&rjho(54uHIEKiu5>a`Ev8i`R5|*N2k#^eS4QIdhEm z;tHD&e~G;3UTcIyXA-*K?r9%m9DZc7j80PL930L+D`V`>`qOI{c(rpeV`7no; zL6D8u%20LdPa(yXWBm`2_-Q>FaS9n8H z$PrOJHhcfstGT@YIJx+E`~L3ZCwY|u*d#%!;Ia=rc-%LDTe4yo*2r?VWYGnA2b%;t z%)FtYRL&aQSnJHy0ojJG1XbSKm^vs;wXGOcR%oK<$E~8;G0gwwCCuVlOx?o1jDT7g zPkJDP=$>94r30A_TWCeOt#Wgww;KR4SB^|HR#-#&;~B#p=F|uYLh(GFgmH2YoZO3l z5A@Jdf%HzNll4L~9}UfXY^d3CBdrZL7k&$dw<0^Yg@!*ig&r$tXjy@*b&6?eC_bx~ z>)mF0_0lBl2wY~6<8Fu2sHH!pG!$OKNrVR-+zV2kTU2OsFK%QFVuVjw%TpR3apKn3 zmni4T-wof3jEqPT*{UN(Rj}v-GPlZ*i>%T!HC%yhOXtWa&1YDV z7puke+cOto>IK^qk@(nxW1uV4+TpzL^UdHj?q*tQKpKcyM-~T=BsW0=%Z9ERA2TyT zU@U98tbzL1a|!#3jo=`I$#?$JxO}o~QIAi~T_o_xZ%#Sph<~K1wI5K^5>*mxrMt$* zFaF(iv++jxmJ}acaS6!93ov?F@tH79kcw^>JI3xi?&}&YO{0=PP%*f;yZm^&z5Do! zCgj9U9fQ>P|MY>?Uqe{QJLvl|&z5-QqSj#Q-|cG@*0bkzwH_6$r=?@o#AfnSi&06q ztF-h*)j$aYZP$~d1FSDHyAm9sY)#1ZR*rIgC9%0hf<3Svrc9&E*2(9DW+aT(!U9Px zsZXpxJ%EQ^!C4$CrWhW0qLwdCMJY>ISiO$Z4BrBHkY4R9A6(DOG6dGn*s$C{$7?b4 z!C)i88C7#aPeX04~g2<8Jz*&hjL@dLuf}} z;*q@3(z;fbY_)>7)2fL_?*TQJoL@O+E-|on^%_v=yx3wskejNBq37q)D)u-Wk@UkK z_oS3>81AM=Yo?^Re%e!9KmCG|^wZ6n;ex0D?rR5rOczaM<5wTd=I7VX=?2a0;Stpr zE@Ytp3<%T)aTLPLQgl1HxBwmv76*YFj_+Np9o&@#R_Deg+Mo_b|BX0=y_;%>eXh+F zd&6GN&<9`^@s$%%=-yVvj?a)_L&Ps-V^Yep=5Za&)G(lQbu=QGYG4nzhp*Hj4okJ{Y3j8r zC8-Lo>EVuv8$f-sn_`MYsLTKNYGx4Wq)!u5R6({NRR#^E?i8`UFn9nD^Pv(iNkjNx^95Onz4G74 z=(SwzY%pyWByeeAr7cng9`ajhoT7_{XGou~mOrY{0eD=STrkzc04|-?AlOe)VR0Ky zl?o#ogaG+1FUdGg7*+yP>~Jqcc8=L=%!r-)dQI5t>FB;*n`tLEWh8oWjvt}`&XQRt z5DtgHkJqv=`{^ay#Q(6gZkUfCm60%1wDb^Op`v23e!ZN#YNaSyoqfxkik=XBgq!Xu zB3p3e5~(~MJ$g2>EPjlafnEn0T|xz1!U1X=q3us`rrNg2JlXg}^nlt0TxJ?2&)&=; zm7y%+h1IV>-!)by>L7PJ1kQq+rGLSUgy}0~j^R~JD(Q2zU)^6ZSLQD7q9KaconlGg z76Nri+tlNs)L9{#`x*&HEp5MK-(U%fP}Zz{1ad#Z&DkX|eq5ZSgCpKksi z7rE>K#;|$0y=f zLOgI0kXjsgkCoK6d|YC85B2g*@E$(46~ zg}fZLL-|1*k3!lJU%b)El$Jh6Gzttkq=84pMTm{`vD6cf#h{^*Zf@WRooz2Ts?R@b z-gPV&OGN);)T1NKXszX98xaPKF1wi)CH2vVoA&^$a_5_;?mS=(AK%t?m21SFRE4r~ zUQ2`Q3Kja*sBPJ>I~2=_rz^TtELGbr9N`8zhYHkK#mGkT{O;!M0DV=rEc%5ShBL5A z`_WTBwz5q_`Ed2NRu}OIJe#VfgC5lk){th5PBUfV$Qv$@!eG4cXAX%`zk&xIQ9a?h zJ^M|1UToULVkNlH6Eik>xh+e?>glM91?8)knDpYb1eSeNdG~x-BQv}Setx^7&ZBL% zWA8WvNm+>Uw`~Yxr;}z;8YigJs4{f>*HQeC_Ng|Yfx_8}VA1aNhz{*uk8sfL^-~<< zbQHUeWDTgUx4Xd&dOsGJ?=)g9OCsZDLVO|R_Uo&iqpl8gSM|IKR3E40|J3t7nbNy~ z;!@UZJdwLZ*ruunc=f?co~{X@hcknrcXwup&t^#BNx@EPX~B8Fyz?cbJ358TX)E1A zH4VZhxr}PUzb&kGcV{K!o-kar75*`;FA$)(N#eModjJZ%JUd^_VMo$-Hh>GD!x?Gl z2B~hpos%Z1q^OVj<>m+BT4d1;6ws3fd8X%AC-8|erEx0U=hN-}{;CuYQjMKKGCe)| z{^98R(SQ4IBYJ7-@y>`zu1#~-!s-SMu8XV1?m!=DajeKE%U9Mr%w>CUM+ZoqrAacT z9*h{)frrtIermS+t{6>B8b&n=Cy!g-=LPO^1}m$Km)E zE|}|uhQk4D`@jp(BA8&_N|?AB?-O^oMM&T@ZTfw19Mg`5hyL*nIn9 zy+SGyN?n}DTyOCHF18)LriMqqM9av9_>M#e#e*_p96J*w390Khd!XhdMOc%RBEcOrgol&wC15@A zVMj5hC0hDYkmJyut)Mqs9qF$KvHt=U_8z)W5^Nj*j~^=i#sO#$?E~PGdvA^m4hL?2 zbnnfPGvmO`Pp~TtiJwBo0&@aWD<;s&pxFj?_mf4V_w9f*=VwTq0OdU75GY1Aqv__` ztJHn~ghnq6)i=a}^t8mCi%x1x^%a^gZ)xFp%$W@R>Ln7~INN85{X2faoYu(Z%0{rkL0$J9d9S@^|MY=!3^#y~$nEiMPO z5#e)mN%J5t%6;S-I&M5>q*O;0;bZ*U^hJ)@BFPe14*DCkl0>~&hA$cT!W<0~8^ebekmkZZfM*Z3Loosr?sc{^em6x2qNaR1^EEy7jHX#RHXsa*VHi-rJM@B*jXwVTGYSUA z;rru5_VLW&b_k$`8dB|YWElj^!{wq@%F?vMs@Pu8v~nY<4&QXSaBV%sf7?u^wzmC~ z=DP#bjAJX{P#}8z{9AVqJ~H#N(0=^1FfHqK3Eq3VbL0O|2STatTe%9#l?5kbN2=~f z45Zp>WDMn2sK&=drw(NC;mhZrHoq?3|K+1x5pWHTS?Ox1eU>xCw-Keh-Xs6X_z}OK z<+uE(s#YE#xszU`$?<@rL4LTv)SW03_AM*Diyw9fc{I!3c|^LQU8G;Q4P)`M>nzYo zS2bhj%~X3j*dBo{CGH@n?2!5mTeBJt+A|7F-MMd(b24R~G!0yHNxMzQC#NM(yQ+oh z!Loil(tbbSO@`&`!wdEShdUi_V|(-*I|bB>Xw5%c5<5bnB*~yS;XB0`?omFU#|+4R zO8>a7xg*2uhOTan5ka0~ht>+tXAm5^+4X%&M5ZK>`%!hjCD-W4SjDGQgT?mxiZw2+ z5;CcxGW=pVqa*5n%4U3f+q#T7q z8eH+{r1no%#t{?kHOtZck0Yp%9|j06DljEc0J97P0K=CAh#+YjOYnX;Yt!4r5Ie`h zk4XYp`nsM(emBE}&dxWlh7^hwrsZY#&1}cxbFr*M z)mN3w&TxGbgOo=s+;hp-)RIMbLFf6^c8S0o=pI=y;P~|P@$u<1)CxzHpz+ODke1!a;yg))vj3Nsi1cjX8h{(cTO4Uoo?yg#!8jVni2pWw=J za(3B0uV-^5UNi4J16gDpQ)!YA*p)Tzw297N`C zk$qB|mmV=}>FLe^rP{B+KW4^o?#OK#*G-p#RVT2LoLp_E4MSQPJO^qh!s)Dre2!|| zxl#9#nelxoy&)($6G=R~`AOKM>B(vq05{&fMV3w^>O##8#G-pLN;+hqo9$8)Z^HLx z9L@TE5AP_DNuv*M|_nKuH*(=(4p-iXKAf;F$NX#-PR+t3!Es=**H`NB3U)O1LztLv=o zjZ8Z2hDZ-~xNg&un1A!6YYS{)>Tah*&oX<#_RTjSwcnu1XxI^eOwUjv*Gje~I|6$$ zkrey-D!2L%4?6W+2j+<(92)6|rO=if?{D=N!!j)cSv9bEE4U8NzICP%nNc5# zorD{Y0Tv;Q`l1ZlFx*`QL3#RU5+i9fkc}Y6$f&7L;5#A(zU5?8yrWw`acBxdJTB6g zerfcSzIrQF+pOjtZ>o1EPITmSkoWiEj0#_`m2;BJRTTuJe#qL3Iw!oT^OBCW@^~0yH?;6{7(-R77 zc5w}J^h@d=aeZ{e>sy6cMaBxZqCxm6u28{{#L06W#K;3b1t=2i935Q>0tlY43)W~* zAWy=aRfUp8(c>7j9QlG)LV`+hs5+J`UmdIr50&Ggudhx;o_tJ4SS*@?&?;|sY>C1- z&T52f5pxUE7w9~<)$Shc?kjfpsFS(TG9*f1Hr)wdlEY_vESGT#c7k-KJXcJ2|Fp2O z`XwU*q66qfu1^fPD`!k_xNhX2=;^`G?yf?og{ix9>8^vCnWD<)vPcPoopie)FitHz zqRze`Qt{@)$9F%t2%ziGnVwyPT+CPNvzd_v69l^&Bu!_4^mNUObE(dcL`$2D&(HOm z5mP56aW2-3Yvx_CfWBZ#XWYl;O;FoqMw~DXwuiC<)D5)YVPURbhv~qyFl08e`Xx@h=;rsklw zma_?Ekf|>$Ns;9yI-7lSz19qk#2; zKRn8C8S!;ELhGUemO1+5U3eDWg^CrYf)N^lbsJ%n z0c)ANvg~HNV^}(K4! zaB1*~fg%zaRhY+Sl$D6ZWzlbdn~Nz{5=)c%)PcDM)Y zj`#`%hft?QOb`sV!)fjQ?a%H7sW`;ZAN~L~`RI?PUj=HrLv<5-nh3mt@gwKS!-peS zTd2N;ZuNi2y5xEDkju+%IzL0%X}GV<9*+L|KmOp;p$F4ydVEYJ)&J2mxpRAiwP%v? zvS*Sd!;C!~DJdD>C;ueqh{FrRJckG4on%7c6ZFH8T%W0HyOp(HDEgc#eDMj?*;@m|D9iS!%{!NOxU?w~yECOcm+R(}8KimswaS>AS(nUqWah%w~ z%2rr-;x3OIiXEr$4~|um#%4`UZ72%;WumZZ`O!YeS1hpa44IqWvWUCTXy|@VsMIZ}9&es+koSwj zFk}yk-G|oYa+8D)hO7!m1FQgB(g)Qh_{zfX;*u8as}T#C$YntCI^?$X234dka8_qP z-@ftbh7MKEU>Dr}`ThUALCF^s8cWoxQSaD70Bo*m%4x*!{f>90*|f|zacUaXO|nV-$}yR}a|kvW`&w~E;H?`O&s(f=d;H5)%e zJwrA^6yz-^%b>kW3^8ggM=8|3!$ z4cIUpB`HJ_=F&xuv3Eizegh4weI(rH^)O!zn)V*WfeAH=p+b;{HZ8Z-)cNC)2VcAE zg=Qpxz7r82WXs7<_TS$H;gsESD=sOR;FK_iWJ}AolS`_88hfm3elSr(IVN~nqt)hz z35JTp19D9PYShasAcqup9++%)eYOId@4*DHyjxo@Q6FY}f#$&qyh8V@&wl;XZcsWH z)zvG2#wJ&UTjvM07u;UwPQ(oj?`kAFKz)fm-K<+ual^dI)Gv4Z#W(ElN1EW(*r$*sLA1`CfgtQgD&O`Jz*nFmI_C@>9M zE>uS7NF(V)e6>PVb=n7ooO)M{%Gj=Ks0??P1f$Jjjf7n71b2XXH#~vPkR&X5bvWfE z^6i4`wP9u(C1pfXlLxcL7rD3>Ak9%B-$5Ov|ArkS-;ciOLG}9jXRJ$s% zf-yiTa1I2UoBIZFuRA_yhFmch+HKR?1qVatV-cyIq|$*r_$<$RE0>_q%qeVaZ%#+` z_x{u;kSib?cG^9dy;@vl*e8g$m{U-sB7q@en1EU;k`^p?3G5k_#942~(r&U1Hz=sP zkV7xLR?m<|GdHxG_WS?%{-<}J64z+riDP%sd8`MPSEGt-`c0tH8j>2M;R4VnVp2)>HpW#@Y&oJ3KAGKL}NZL`= z>zqN1_f|;#ICqBY>M-@;1?FfaG>wScLH3ulLwwWo9i#{SxSkfvgxcAkFRN73qwQeu z%w-O85#~B$oTP9<071IU02YsqFuYjaO0?c6oL!E=xfbcOGX@jv5s$hq zDO&gp?%hz%vsCKCm<4&M>N4}=)H~@pXkNvW{px(y)m(Idb%~s^SbhPL^MJJ@@Qj^ER0g0&v`V!aaJ9q7Zk1qfjlq4M|Qrm2TnJ^ zSDJDhq;98t^@2WEC&y6Eq!bg<_7ZC%2`JoqAR!ec163>A<#VKsUSA;ld`Q{w|EBDX zn#G9H-BCUAaAblun$VZ*kOy{(O*o&?WQo87aDvm#w59=Z5`=kvavzBzJR_uV8}$v) zw_ryHO^rUZfKZ2Kxrzjz?#Wvzv<=P`+A;JzXP=ijToA5ZKUd2 zL8`u-ev9RY9@PIcA2@fbu~2RIs(EU@0mVIRV6PWg`ATx9%geKucCdJ^xWAB3;neae z#7>eXpoGLExSnLl%)@M*naF-j&zQCED?hXZ?dnO`qWNsuPZ-#q;Oj|1vFXm^ES;GE;asZl< z#1+f}V`2=0a9f}hw+dSuKiAR;+DAEc_V`HGT-gNRwXc!R>EoxpyZ25%-u~tNkDM(n zfcplyf+$*=YS!UZy>R76gfZvj>B-E^x=yxSClxK-RynHK^Bq#pwC(*EBf zLtvv)&MtR-I5Z0drj_kbx*p}j-gtm)aabm7Th2zgVf&_7xm;#!Kze#Un~8T%Y)kPF zEX7UwWlvKdJ(Va|##lK?lwZQJrImW{8#t2P?8U?!Jd9~bZLLUb5@KLi8Do#AWg7N%L1#D>n0gz`=jN<<<2#}|A2eqa0d_vOfXd( zz%6c$CHB(%MD`dA!PMZo>P`Yuw|3c%0;{8T?2aD75|a?uxbo;|i_m%ba*^c;gdk+H&_bl3ZAF+(X^4Rhj7kT6>jT z+K)bby!{bz+Aa|y@+5D7nu#TIm}UQI>_VKyB4?`g($v`Fb0!>hus376{@Yo!ed621 zTo|s+gl3lW&pK!yS@a zjgki84In@z|GCAjC)=c64wua7cI)i7W#R&6A8=9_RWdx>0R!h=5KBsV!Z$!ID@sTX z#Hbx4HoLStxs=>oT3RYU=F~B}$YokIlelc-fa4q?b6RPj+*QLjfz;ZJaE1Bpu$Q9} z4p>{tsCK&Osd{uodlogJrniL&3I+kxZqj@Kh*cFh*z(lBxNgZh8!Gi=}XNL=*X3 zn{y5mrIu9sx4^N?NH17Zhk!yX<*8J*3RZmIr(teWYhyS>jR1#t^d`sRR+ zi+iMjp+EV=%=nG!mg$1DHtX$liC}FwjEXX=216EFB{5CR3VDFh1F{?FkcIfdWKXkJ zv0l|_)4Cc<9H_j^z$_#c(_&?Tjg!y?CsN4_R=HNP+KwrLw~=(z5ruf5siayrvSJ=jZ&hWx6B11+;`8JyX`wwcF!W z2XSM8*?G6_l%6IoOgRy@S9J$4_K(RKiEPrGsmVc;gW9PktnvXjPOXx3_wM$G@BV(c zic*C);(izX3gf%*FL~BfItuaN{0Qq5$0rLdLGm_TMzIk`Qc#$p^8~zD=}){9yB076 z^a&5Qm$Z~(?yg`$i@ZY4aJUTK1DD0vERS(hgszrWJ=ex;7gxJX_5xHMMiZuXx!ZRq zh6zRcA0IedeV_zQRsIg$YMBsnk<^+u#WZb)4LhI|n8wIySX_dKe2Z`#JydQcg(ZkM z5%7{ee-hb@D`mA=s{C`ZMkuamB7FU{aAn-tmiDeo_*@Ck>;nue&6~#QhP=f3*_o02 za`rn2Vs!H_HHlDmf+a()o3@r0nmSk>&NfJ}3kH*=20?|OKRijoqG9bsiU#5S^{!A2 zcTHm}gsN%WT&iehl{$(Uq(boi!0eo!UP;XcwKJ3J2rjyQNFuT8c?Y$NLA~1G6O)8x z@1d@Ai+rb6y;8rzcXImXdJ&G3{H+PAkLr2sHz2Km9u758s)5i70RtU$V~YYCJ4B0} zxr?}Uw-7T#;8BI?Ej%6Zl;YE3$Oc}F!qd_6<$ncv@xHYlgbRhzG0V{C`CqSp+1&gn z6$ydY z@T|^!20ylEg$TI5I2J)z&sDi9)C0K^CI&LslryM6NnTd!9ja7cR3rZ~9^9{Dfn{Kz zgJB>O(d46JiB>c|j7 zF11rKnDcmZMvY~htf6ebv#()6q)gk z@P9eTrnES^^and5OrFQ2`bgCOUl_1)eEj91M|#vSCBNZ+#Y1(6M|kiC*IzM65k{$# zktWwe7EiKh@OUt{9Yq5VmTesBip?z)#T}^TG89zEIZ`YwzV;2Mu9SOU`SGL<Z6ANDuD-o5|&d!vrnobxx= zUB^3;1a4D-^l}n7Y73XlpbRx`pZsNL9j{B0MQxs0&H}65&HUjUCmGJ*b)XPBPgYjW zj*`yrXnltRrJeSAISMUn)m?#82GM$_$}L=KLucOIA_S8G1{MXm7P9lhXK#7|?^%>2 zv=_5!m|+Ws9i@T>4I2ffFXhgUR1S@4nix(cm^R3?lp8u2lmShX1F8lB5M@JDmZ9ug z?BOTP9)=yC23@Qj+$8;rTukwRGo+og>r!JA56Z;G>~|>x_6aFSBz8R1N#7?vMzPwV zmSZU|M3-?o5zCM`L#Cer-wphRcU~@*&!JmR*DPxBklC5@C?_UNhO*go?9KxZ3SG|G zK?@%@Ob03%2A-zC>gJy}TwO&qShz<{8xQx1 z{G*DP-FF>{4)O5UNVfEPxm_ZmIBHw*7^uhsYoD0Hr8adg#21*|ebQLrJr+lB_XG%c zaAOrL{Sc1_z4gf6Um*_#_c;o4lsbeJq!H?ImdG1_3r>m2!*CY~>K_%7Q0R+|Y+~tu zcRnB~kUbqxRwf@#26Xt2`!WGBZWw5E-edv89ad29#?psw$P(3SG?;?)cS=Poc?$^u*W?lNx|B(OAxtP7>xjtD(1y_&5_b zrVC|=5RzwHXr#5oBjCr&$-z#c-NU_lyVtcTo%>{BRuBBy-W&5oDDVRwK7N)h3QpLF z4SF!kB&_n^7R zS2$&i2+$cA-nqFZ0evI%wtMLh!f>1v_&0`GuA^G%_RxTry( z^BDA6-CeunsXw7Z)wwCniUN;;!LWu6*8*(B*s#_5O(=3`05yzg-6g9fNw|e+eX;SB zfw+2cN|-bh*#YW?!X2EFh0vtv7l61E1CVH#Qfy*=LXhA*)!dr}V8&~?lEQEFqH*c0 zLl8(q;AfCdU=t!Ch+ZtGgF>#aF3#4kH_)Xy`L=eQO;4=jx3&I*So7Ha4pu$s{GDJ?vw2K<%+%~BfkREJA+|XKJ%n1gjKA5 zoJYqDO0fl|$5~cSRagHPCd7 z-k(?~G%Gy*vuh;{0D4=MJ+$fM_ z?61CrSk9Ecpc^zEQ9#38O+ZJzs#kEcfDFPk;r_OsoO2B88exj=KnIXk3P}&NC@$MR zZZKjC(F!JQT+a>woC|7GqmAl;#WeMTomz`z53En2qH_-w_CPh5*(iVmm0(0AL70$t z_qp5JgtqzlR2lz8>U*-$Q!m@s=6l6U)7H9MV|Ov8sL?0^64L{Dkp_ zjMM|9SMZ%-j*A#rx6XlE#Q1b*c*b}tS6W1~#B9}y54&f!myl35K+R0i zkoL31DH{N4+C~;&^!HqG&aWaGQCUDnwT(kS%B#x{gu6}DQktut)@z_cT`n`vBu$p) z#dx$qG9IA%h=_O?+8+g`?lw7(p`fr>l(?g@7$>m3W4pC<;hrs=p93#NyVk`26bG;Y zhcG`t3SQXWBjN#8zs%eO2B#rF>fGI2iBD}n>P)|~H)pTs@CSk0g`y(lM-$hPT=a4t z2T!cB??N}?XIBKyMU%F*f2`ZAtqzaJ%W&SEjeIhEHt2xs$IsaDh;{RpPL!?gxUOzi zQS^YC3#g!0=0zK&ADodas)^Vl8R=ADT`EUJIYo)4-eX~U=J5_t4=Ut{fzKzyl*&N% zULxM@oE!1nuzR{-v*k`{8NXD7%M1=U)0Lpj8e20{DJNUAGArX2nVMlnC|*P)Q}?^* z9_Zl<>U`^zx@2&%_nV$bRAkA!(R{JuMHmIa{6Mk zzC=z1a$KW_ZfC+^uj4>e? z115wbluUpSLJ>lMBA5`sSSADrdEV!JzT1EPo>?raoGEGF{{Htn|NmXz@4bJwo|)cW zz4gpZGQLDcn|zMuQ3aJUFDtT39aS zYF(+oR?_bQ4EFfy_SVKVdz76L6{M3F3RlkEr|tl1x9qCL8Ic8z^*{YS;T^p`=^VViz7^t8)ZM>lKvi%bK-IZf{M6{)Tv>Q^cSoUz& zpj`2Fp(9oje<-mDb}*!Pw^nA3v#4fKUrX)mZ&KEoS_i*~V{6=D$(^O?b8pVy<~hyJ z>cIAkHKLZNG@Aw_U&pl**avOWSmZ1Hc(!qSUUpkcJ8Ky&G7-I*PWTyI(fwM!OWhaW zeVT3Z#ifil2t~-+1;kr9)_=N(4<*_5v{epcY zu*)7c_O9^S>oPps1e#t=6F8WzVuu!(En@~a7mhJaS61QX$GehRy=15|ErX*tC8m zx-9HcPIip)u^C@rdZ|%0@?})_k|67Bk|v>oWIxjqw>Qt2a0@>66ragK#b+{fXfoWn zhu%71eR@*vdXEk;HYRgr=Ag+-A~2<~$WcrhB%HuOMZ~$Wsj((;e6zc%LNmj-Q?14& zjU<#QENIzE{Dg`A%oTnab|!N$h{?hcxEY*oYAb1^H%bX~&c9jI8bP{W421-426^leHxpRaPJI@(Vta+^k zC*s&hri zh&jZvmu{*r2qDMRwiUc+qzomcBJX3l9b5|-hz8PZQ~m0RS%Tk%juWFQv4UJFyrO^J z>9CwqRmjH6vXAvUxJJ2dxFV9Bx86Wn8DHv;oV`S0XHyypr&FLJzPHE@x^n?o7k0!t zVTomADXVL~^FnHUobydI0}X&96Sf{jEm>!(Y(j~PZ4R2pOg-vNG9F^Vwy@cjEb}E9 ziQ(dP7m621}cOsovEyeJhuhyphT}3gEAueaI%h#^oT)BHZ z`O@$S9iiq^S*f6@HyzMvhO!x)wwQ9`U|AzTUM?`s!)W1%p{c1ym*KS->?pcOLU2m#WPOFyJ7ytiXVRD5#%=i_{NHZ2Be8I> zPbwEOr-$n52JVhJZF$b%*lXs&+*rP-YcY){HBLD?u5}9ew1VO|@IVfiC-&;JurAWk z0;Iz?_=)>2@}n!ufcZC5R=MG&*J$r_1IQcmL9~X->yT)m1GmAWHB65-ti$YHx{|; z?3cRQtQ&lSJmHA(SGGcI0JpaS2Y_2IwoRr$l8XG=_S0*~fZ2skb!QvDyISd|D;+X) z>ZU6+Gr^Lb4;qwg_xYS#V{PYP$)e)wy5A{ZJc-(^3p?@hABeRqaX7doE@2!emljI* zj{?Isa_E$h6C%)<%0v9YjGXpBT{i;;y3Ux4v))}iGNa@NR6@cJ!)mQNgXcEvOl!-| zM_gP({dlw8%pFhRMDdI7e0JS4V}c$c?RQ!zk)6T)xaPB$7@9T$Jlsjh$hx_yLm=F{ zG2Op&(nS`5y`$;z^_$b9z!ti3Lz00C99c1*r_pz^o(0k)(=uHwIosr47uB>JihDD4 zIM;nq$9PasM(VN1(E2o3l0v(fK#YKeuNhOcim=MnX8fzVYdSN-o^2^ZvUyZ(lA|b2 zr0g-PagJqq^=3pT0r_&Lr&^Hhy_h63c#+!)cnRBpferG}!zzLN2To%c84Z;+JGR~P zNb<$|#+olWX_gMLYBb=D!3f!~*H>0?M6u6t>6x`6UwHPb;CyvjCB7k0zxEzn9fzL$ z))Q>99B0hc)})ZRu{iuZ5zoxIb$xv40%GWIOmAc5dtP2RvYPl*#LS5owjFnRrCfxG zsUfS%6xRl1{!t+F(yF-dYT8SLWZQqGvdEsWujFauL%z@~O2m^cNK;TO#{$8jHAMh4 zBqLn3f}2%zAu{LyF6+T~Y~Wf6OXKgs99QkyoBZGCT(`Y((N~EdpEBgDz{Y49Tf~^y zub?R{Fl>!Ip)(2;hm~CXon}PR-WikhcQQ6KT#-s^b}$r>s&V5v_o6ncP%Iw#`a-K2 z?`R8)M<_NEC#I>yOrEvd!*GcOJiYx77=R3AK3L1R^q@&E>;eUP-nWxAgy2arQ1zMd zgP=ZLUc|9A?mu7UgR%vSF3esYYIq`;@xSLh6znO>44RM7#1 zamutXNgPZkD;vs%C%wCrB^_!rY^mdvMn_DUr&ngz8)V4zBKH$2)PmeaAzCML;n|C# zu*4QjNQ%1F61 zRv0sBtjLepaGFjXylSQKIfh?y{$p-03WP>zof%3f*0c;FaF(~bqTpf>(p}B>(sD)C z==`9?uX0}uUqhMV&NP~~+AQI28SPtO_;K%Y%5_j3!dX0j=5rqdXD~>-Bl7!-i_)OaTYG+DZ))7go^&N@G z^n*zomefgKTyrRK4SAL=Pi87bd`7yh1qF@=$ zRWmIJRe{l08F4{HRImNDzAr(0XGHo8G zxV3vNpjg>vIC+f}A}&_77v8cy7kA&fZk0<;I5M5S=s80!JAGtqTmB={Mzq7OV{> z(6jGsw_B#2;VtM~ybwKNMm=-k_lb*-L^EZp!3vtMmGU!u;{wRerdfVg2OG=R2CGP< zwWAnTJ%J$y^5|f2d10v;YlD0)?_t9Mao?Y5F)H6efC+A|~KIQ@IPMCl4FKbA)~OhdU#kch0l0!P`RKPMX(XLMH9kc8vM*ftj> ztBg;9Qp-$#WDB<4GMnuM7{2i-wuA=o*~dQXF8V-XDVYdy)6*aTrQf*Va?YUTih z=g4xUY&y*kJQlO2d3qiD2^@VORP#gvKif6pNv9c`ES+{0WaYcYZGmA=#328$+Y%mY z{_SeIHd+%%iKJ)m!PsYeDiyi(jE#pZurtCymV=RF)Ff|c$q*LLNQ^>?LEHZ%NcjVP zl;iBjWPN(Uh~tN|X_-wQEN7>X^)eRuA!;EO?yZHGLC?_l%aBAaT!c%Ik5G`yQf`ir zVpp};XtL=Zu@w_;=$8d5RaW?5bOkAWJeeAYR4NOb?ILWpoHd(b$i4l(p?vhlCP?9c zf*ew*%oG>_#mYwdEY(^!q+07zmMI@;XlwUg^gSuIo;_t?+_>Lc44Lfi9v@F{@AaQL zI(zuk5w%qYAA8Ixi`}4YU%(cNj`k1{@bk;#!4SeGw!!CRHCC_R**~~3tyC%5yXcb< zrV#XJDDF5>hhRmlKXl%})CXG!2$9 zBKteOYA8)dldV=EVZ&b2%A-Oo&`c(yfCG7H$JEQxDb)s-MjU6A!wf+k+!B0Hwny#}wHK!$3A6(?;05?}Sn}Xh&)5g5j(pSR6)KWjuryVz0Ca+w}Fm$!;y4AsG!3aN? zN>~^= z;ZqV?AhIA531u7K5Q&tEibV1UNu&{R%71uDO|Y+*+k11^SzPv`T{t9Kre(+`eMX7c zAlj7^FcW&v?O-%nxBPs2c8<_CI4*W2bi4Wb$+u&!_D$j$IgF}Y#)rOIg8Kod(_D$r zt*U=}&#TJ2M-gtJlo2bRn|e7VgoKh7I8VqFBF4A#+fLiyx-}W$#M!xO+OkN4Kzu?Z z1^8Or506vNPAo=8T8nk@kBqE#0NXzdAQF?{5+KJyR4n4%v?~yYBna&srkFmRdZ1YcrvK5D;!0sd?bC{L+%IpkfWQzi+oJvOzGZ-*)4>Qk@cACg%^s2x) z_2{A{aF!Ii97=2i_Z+v}3SuH^#H)y7zkKHGM=tVYDk#lr#K9b%^ivW^!X>zv)4+eG zc^r%~w7zB}F?&t+jS5C&QY>i*mkGseyfe2VoH9Buf;}FQ?rj$aT{y_fe1#ELrhf{V zad~r;F)Hy!-e7Ikz3s=Cz&B)#m%XFt0!)%Qsq$%%S2gYetX7qSwr?Kcnt_$2&g=uxS zIi5$QLK`DCgDVz%t>PT~jZHQUEm|DT@OwH>XgVrs_9TY7o9JW}2V6-^ve~G?q62Wv zkE=zB*?cwCp?x*!QiH0L!lOLmxJDR2jb^Q##s6)p383qS2?%q@4P<_O5CM?pVk1b_ z(Gxr{Iat!CgRuz9ud@=^fDa^6{|eHW56|e##kZ+$-5-(ED)ce zoYv$*6iWOVR{yr$9c1C-bd+uy3o`Q*b6_XBjRKe`$&{9j0U{ZbF&y1`fAjh=hAn$0 z>BfGrjkNmjZ<=lv77RBi^usmIJP1(X9nB9mr#J3Q@A;nL&|c)tz1OSmSpz51^ZFX< z;YzLhwA^3zJiGQc*7OfP^Ca?0P$@@o+(QC8)rDT-xX7GyL#Cb<^I67a891LAyl)R2 zP(g_t?v)R`IX_CWVe-M?${LI?L0VvmD=qFI@DlJbH5oUg^Fcld@cYKvEN?AuY_H)q zA!Hbd8Cp+4*cF{fr2(Pu_Wt2?|c}AXT%Tc2Heqi_Sr{3@Z#U(V5;shE8EzG&%-%pxV!-_ z+5KqvB6?AD%)6q6&`Ro=L)s2_f?$-5v2_Pc+#(+&3>djxdb0kThXRgIsP>$a1wEPv zhd{qpYqAXVPo9nlNx+p-j4|D7F1m@Xbg1ZI+HT%~apaC$?10_HG;9pE*3fq(VG8aP zr8BIx%oSoKPkCA`P6_B)o|*!rjOt>Eh+Vs}(W<2M6v*1@JWT5pE)mTDlaz6gMxZnW{kFGf>Zi55&LMm;%gqhY=Hjl7$h@~w! zuO;A%qc}uzU5WAkNq8)Ce^zm9Uvh2_7h##7JEn|Ff$=4Sol%w)$V$XVP46zQaDWNS zbfuhX?YKHTKS`T{&d_{qic7R(;a)>o9+AF3smh#d<^|5J^JpT3$P3+(b1^tF{-D*ES@t!D&fwKOSM;?f~sGV zs*wzTkMhdwPR7Yxpu9oKFd;9^P)bWa98a0wE*t8%Fp1rEAHbf|hEwIm<$i%m-ydws zmDWEWug8DJe##oRZbeSF)P}AitQV zl|vL8M= z$6Xa&fA4d|v7dG__IKcC4(0KjeszufV3Z!DHSaB}HRuHt zUkqNx&c~JgJ5#Vgo8xX|$lzM+Pc%cpiPn#x5H~FMh97&j6*f-DuyORJam*3JJ7HZFWjcioZ8sd|sj;PM5A3oWwc=8-VOoA9!N zn@pqmC_7COjw2Q+HuE$j&u1Y0(Bd%y0=qnfZ0+|H$OD9h~eH+(c zKE_k~+&k^+f_Tl&Tj2M`*YQGw5M~FCDAs^SUh(pGWUs+H{pFCZB{JR(3cbiZmYlSY zPDHZ9JZnPYr7Gi4LGlNZu*`FB&sv{6ptDC@s#Y`e{j`0E;Dzi0KC563H&#nI*@IOr z*nP)Wn>HoMN(}kOcum)6CgW)Pe0!A8iWY5br`T`uy+4~%mT zPbtStaLWyExrLz>sc+X;A*Sp#p^o)WckX4N&X63QeCK<3W!UT;HJoyeGx62sT}9D0 zB>FW(Xp*T=M;k~;Yl8D=Wu8WY0)dAZ8*Z>}F2ppGnr9ZNO(ack?n*4i0}_;uYiNNk zAWZ;nt}!D|(#7P@&%JZ~<{jLTeK-X>LViRN7+p#-IvV_GoOHrB(q|S7dco0WZLgwq z*9P_?5@PPi9Ac(iu3U3VVT?slifhvnieMg+9UnPDE|GP`(;5_q3GO^Cy84jT#1dZ` z_7@fA#1ExW<;Dt)@+c|^VJ3syGPC=q5v$47uD|)t$jfYwLD5KtB8y7(#LD=R)4f>Y z?`$2K`3S$aP{`azpn~GEl`xs#8DR=P_vjAxyi}9|Ft3gy+xWWZ3vutt5Cxuh&GqM5 z)6|hBeRLL~*0rP0^r*X7xIFbjAzlbc~CW^uQ2a9+$vqUEKf%DT^J zxKzYx=-nX;dyiU-j7fC1#?}>3tjyEgcC0-#h)o_tyVjcV^SluY-CpmB{ss2o(TvG?nbZ`XwR}Ssbcxc zz%tOpC-1n*?`o^?$2iR}1AZCytjsur!%k58J(xR@0~6=Cj&XC;LHs(r`hBfhz__c# zFAlDS=q&q_-JJ3Cn6a;cvF=ckb>|$%bEI)c+GzUyh2EdeQJg7{oc^KUxm5*RhYkDg#{33 zXD#e3qWY1BFaE{pBInHv0i^<})S7TFyVa{WPJPRE_RPuA&;SD7iIIRXv_Ae?*20o=PaAR5Dism#6( zPmYM@%Y4P=>3;A^*R_d7^+J&msEw50Qj)^0%`QF7ieREeoJujmbGX@}_K4t#m@H<#E2=(V*^F}9l{D)ZnB5Pc?H z!K6rh75FmV^Z~AFY*sPwRv1U;R*W=zoLl^h2mK0^s4L@=ByhJZPR*Y>G` z!YmR52RAs4&5JxL8=_p$-x|i%RK_jQ^(nbhc$%3P4Ww;ilat=39dXBp86tI(Md_R1qL6i}f8TVq&L${?R{W^HCE z;^Fr|c2GKBYBV)g_B;gBDajT`l`GiTGUTKcW381a)(f} zO^Oae;3;j)*Po(l-z2(zcT3DE{n#xhanR8RXaj@E@2BWZ-K;*@TDD^vETvVMQ`<)% zM94ZMCsiwr+g+bc-*g$@1f3eF+YC#qv(1)cExv*8;<`W^Nt-gi?c5)6g1H}*w_Axc zLV7OHWb;}*Mq0#*)2e+9P7am}Kb& z-^KO0I&6dXi;ftWeVB#zd_lS?D7r0WO8Q|yaX|%Uy&D|8`G;uItfO~Xjc?!v4(YuX z3fJrkiq&noIw_#zdK>vBxTvj1Fp+^&4DXsiQ?gEWG=OvR6+61Td3w(M5`|wxHD@kb zHq+X##ghy&rG39+Os&%^5Eu|35E47=Fe}aMZ%$X_GMU7*!5Jg`q+E+F(+3cVJWxga+HlE~3>OlGO(rY=${cTVU<18y>PC?uY zWJb!p5O`RZq)Z#jb>Bx)-`k_<&7NocS`te>#rA{-gdq&7qF7<2v3f+N zzDNZaWz?_^@GjgvM_WVgu180mY8F zgaj53>{c?P$1-0?7r^<`7b*K+F5wF8@)d8ymAo!Epvg+mj^iO$l6eG8wui{|T1bH< zPLo0PzI!m)H3=QNakJFTh#^VX)*kLUk=oJTnI}%lgw6t$ea+gcaYuYcC~>ICnb5+`1zx$%AU z-SJhsmvC=o08Q%N&IPpV!uCd8451{ZTv|i8)4*v@(9I>u`sPT8J1~1FR=eM8sUmo zMb+wFkHmTa!{A8Ae4yDGjAd9R<})0qo6A_-Iev&?xR>YpXI!e-miFchU-U_%V>T6UV;jk zoLRgtRguiVz?d@>hh0YKd?^(JR5jC8klDsE7KZDfuwobD37jXI=KfKnJ@VhsNM5p3 zU^vSMNXvAlny`@JI<3cInonw$+l?ob2oet^7GtPuzOboy(@O}rh=Pnc94hrf5QZ8zT3JMf~9RjhZ@nLRa9h1i81gn+nRA1fI; zYqNo;1A()xb6zX4yzIm{k?IZK_M^&WC*|#({r<42y%+B8#G{6tpSXwILkWWl^gbk2qE*g>+S2$k!T593Zqmrc{MY$~%P0jH=X5 zBcrPI)B;A3dE*NPh38C(;b(m<84rxub&JrnKM~`D;Q6|Tx*TKabWzh#e6wkmlvB+* zka2W5hE*{EAfzToBL`5`%dvvw4_wEzvb=TCI7o6~X;*l4`Ijf9lf*2deoIwgpfSb)&ma`@42q@L(iCcZ$$nP=LR z)t$9HX3z}zGp%mKur37^ENckaxfMBk?5~8f$Zx{iy1iooc2Xx3+4uli4 z-^K8M)0fyk*O^r6@T~<4QM;W3e<5RABGRT;DNlu*mtv|)IKvuO8T?FU-@%Y#AohA^*V6rW+lwntaskP6_zD zryJ&B{m4~9oy*;3wn}lQN?XT_%YX6;(*mLbS!~(ZtjXYioJmtj^W{z=(0xN2EY?3tk=u4h@!0wt1ldYNIsVqQhd(5q0KHZ*R$Bl8V9qbGCe>BODxv;Hq7tRiNLwjx}O@3D+ zdWu1Z2RjKtg*U7Ul7VMz%Nmu++Q`y(ki6bY-yua#3ez@~j+G)Yu{KpL{N5GkGN?50 z>M1jQRJDfV&wi1kIe$q-go7EXnNmUI_B(3H>d@>cX;^S+hnH2(VpVbJleYg&du|Y; zUFGK7Zdk3upNFX>#dZ@RvQRqjA8ab?+goQHP{;^>g0G6TXvL66U>zQEBj^-a z8-ytFN~jUYXx_aUBpVom!A9F~G1`I$4j!B3JD;-p1kE@qY_2_s(9)6*o+S!AIP zPseEH0uVIf95@^s*l44%8RzX173by?!&G3|H{(i!1$rj%V|l42@MC$&`>kMN@ytwC z5>%L4`FT-(!(0Fi7J%LiDUM2cBU>a{o!Cw#G~V03djdvrGQBZ{gqd}q4v!(Xlkv0> zpTQ+AYQe0&RB-YywbUHp=y_lVQ^Kad*jg?O_ZLl*mK_rT#mb(o&oBF(;e2d$=P2~Y zJfz^F^U#eO4<#GE@}_0No1X%Zd~}(5pgzt_N-b%8Bf=RVPQtMa4C4yKNmC=mXU0Y1 zp-;Iy)}_S>rAQs=?;?h*=?8Z=Nop8CuI9-lYzcF!u23U;!3Jn;^Ja6-3jm9gfB*Q*ljPGX&#yK;8E3I-sxZ9nbx%cpRoAs_8^?8+Z(%f z`m$@~Bh-ccI3y5#t?oW!DQ7doI#I zrmw2}D{-vO4HX=877KMn1;y%-=-2Ro=EGwCEB4QZ(S8pm#wj`yrRPPUF(sW~7Y-WX zX4(mLX#C1$Y~v^4DdM6{*Kc|quU>%W%lvWNK$ewBpzXKjFOi%jvaeN9oC_HI^hTM) zOx=_%)gF1hHl`}Lh4FOH9`nN_80Mpk5s(*eriU^C9Nv)b#%1JgcQPZ=#XM-z_SQ-< z5yy#w%?hjLv{N6rilWCCpKPGn*{CH$m(yCu2tS4V0!y74Qmo|Wt6c9szqqr#AQc2P z^MQ|)_NZ$AV-p}mvJJY}Lg!2Fnup+qifi6-n8miQi@ZU6sr33fLg@+0<01+^IgKI- zK_iyOfu5+K)wK&pF!{S99fPfQlLoM|PrpP|NKRO|oovf;`!n7vY@E|DjoIu*)T85d zP1EaSE7heEaL6ka(pg`J4dMtX(Ou++S0yV2by^BajMRz|jEyZ#Z8bq|4q zvzL*&U0IV`M~p@YYpcl*h7!k{Ph6W)duRs~KN#JDVYgYa+ijJAz6-}=r#LpbYts|n zJh*!Oeb?{6;X>qrD4Ybmd=OEuxOH!PD+HFoxxjCmIvf9@c$Sqst_%X0F;u4U?bnX<-DpQ#j zI5p5Twj|u)0!4_k{&^T4On9eGGDKqM4=|JI$E;<=`)5|pZeav7cb^o?MdjkSafuKl zskn3`J+1DG&YbTX=^VKld{DKkb1h``h96ftVTd`3wP$7(C0T5H1-jD_n8PtSD%xnE zkVJy2jgkGNY5&Q}VV;d+QDQFlGobB)gw&!HAsB6rkdq5^H5J+Ac)lXIYBKJ-g-bCp zD3^66R|*~{{ua-LrXc*`o1S>Tyu#A1jm7Ia5hc(6^u*l%Z7Eq;53c%lU4NUat9-=Oqi92@67ZLeENJ*Gc z0U;Az_9Sgj@G_J(Yx${!t>(-YgAM8*{FKqFBwR}@RCAux=lG4@0z0fjlKuj#C zO&xD*kNJ6y1q`bOTgdft=>n23+?dic94R42*&~qO$@02;YPq;6u0LA|^%ZiXMYut2 z6G|Ouc5F8VJ|kH+%1Z1ys3G zCMV~Ccw+hD+=}*_+WQMgj+{b`*TDd+;|5*hE<%CdaVf5I>Zo>d6gMwjXTi$&)J6Al zV?!b;>$&1x_+``5kagjwT{QvvFy0&TzhYcW*K7Y=<26$&z1t7LOy8BPX3Np?)9ty` zPM42|RhNwKqMCGb1g9CJy5?9~NkchXfuBVppglx!?hathUYLi0$=M7wqAkaz(d0W zaqNmkX4X4z)}fsuyULB8QT?O83>Cd1>_Gc1*+e$i|Mb+Vo;vzj^&+ zc>C5<%SZc9pG=SXx1M?m$9#5aj@7k@ll#_ocK#CRIPzEYoE6W*TVNXzisO|rB+;;1 z@FVFd`$%#u4eJ=U|Aew>SW$LkKnk+NH+)swz(!vaGeXV=K-E_9M%p;R%(Fdl>4bl> zIir4md5qwkU0h9yNM|w)dPGHEz<{cmP_%Fge>{UjeRoQ#tb%5u)U|l7bvvy*rF`r@ zmu1J7Wu70n=rhK$d!JzmRX8kssaz{+H4zcV>NZt@l6GPsk64oml0T>(4pnYy7SEsA z!9!zZCHre}efMdVYCk-4xK_W63jCpkSwqb-Mg$B=cXJUYbXHcF_KYph#D~GD$1#xrq~%mQ!1zR;#US0l4iD=bWdu54uq3hAo=M@Cq!YAPC$=a>lo?69fQ4%Zyt`xEkr=P(BI^gJH39 z#x(`uAotA$(_rgIIV#V+b8@nOGBy8DV_8Ca;XZD_!DJggbOyCL4%Ln@Fi-w2;m$l=uc&L8aF6-4mrS zY1hQAb&Oy0Q!ALoM^~eqUnHi>@tigrj>5GYPyJ@#%p;GYt$DwPbX%uLzpBC)Q-|O; zjLWl21@nlicg)EX|tZw`# z3Z=O?n$T=F!?2cbJaKFD*3oqD!sc=xoC1QjmN(Y68QW!#&?fkFB6r7RcLfHFO>7|u zI&d^@op+0C_-}h~uDjS>U3Fe3-ouD5HP4zV&KL7|b%gln%&RO7(xT&wfYIZb*XJIN`z)ZK^zBwNmP6*A3L<&+ANKj0Vi4#@$b#Euc~av+lR z;wOlwvIuDKi5tuP{_ZAp<;;VHe3X1YseR_p8EFZ#i^kl}m<>Jf@$)d`)fQ!SOUMH+ z4o}O+KlougI!I#~z`E0qR5q3Qvba#lSZSH~8;n@mJOqQNIp!C8x`N{vapH8awNJh7 zz)!e9bGb@7wBl4Xm+2{63t2Iw;F(o(R8jf)yW~v1H_Tm#Knsw#-IT-8Y*~=N>v|2j;D-`l3$4Fx7346*iEVjJY2Au{ z!mcH>q<&W#L%c7^yH>5~j9m0r@Qn#SSJpG*E%_=82==D5kKwpXO36SOo$%PJ6OJRL zM{UGoK+WNsfH_udp;1=|W3z{n#}a#MV{R+0e{t0{3jVi`1h}6G${S^Ho3wqV4x$RzjCM`&j=;DJrC<~JV|R4f2Ur!0=7Ppa>TJ= zks2_iqNqW+oNBAYsgH?>!&n4H2P-AvSiPEfW{4C9{;Q~wDKpcsLi!RkZYIQJ`gQ0^ z{Ce}zHVptcXM4=;gQbomdC1&8`kSL;EG<(34F;p}_9k>8yEkuG+?yeIORK{ z+km~pY=bbCnq$GLN#C*MzZJSWh57OPr9sP|F6fjN zGsK6vDv3;A%qoPHJswfkWR!%JxMYnyCSN_tQ6@v0q`JDhykR63>a(~t>YqE0f|)nT zPp0RXzklc#?+ur$N+Qzcgp7R!2RV}w&&I$a1(-|Wa>qBH(bkYQQoLAT1f$re#mBXf zklB=XW!C}kHEY+&ko<{l@f8F9JuaqF}Y#HN6BIn zZL3kVvv2a4m0yQ5bU|I4x+=a$dxW}N9-VFuV#H$bG@9)y?3Dqjt`-*5ZIIS}vpwgF zp86mz9?FQ66svnI35zoo!&pLVRAH#O*6BY2Z%w~p%@aLaQB)SP*t*GJ9v{|T$oFSQ z2T8}69ymSlTnLMpCLc)E3;|zkDS~UqEUY_M$CsMc&REjNa27b3otfzhh7&j#^}t6k zHda(5mg9aK`eB`UXmBIIu44yb?Iwx1xNa5lF%xQADh>EzCtOkZ%8&AZ;%m7@q6Kg; zo;3lwY7zNIaYApc!4=#b%*m2ho?*S?=%)LJNy*PH9Qz!J&8rhgmFzZ1brl7?Q}T0b z5LWeC7|KH9R;|Ntky63G%zYvvA*#Syb=fvTc8^fx*TY^hg5-W>Uv`+;Lt8zF;pl{IbFr$H~w%d1eQ7005T|`Df1Q$NQVXv@JHWO1kgCn!l zXXeP=$!L?jQYx~K90jL8nQ2xU^bloNpW=uX69n1u6;2J6|3C$P08Pezhq#YKuqP+C zuOHk!neOeKJ^S?j;d`b>Z*T73xcCxG?C76Iq7;SLDR@(HSn&MgN6g-$FsZUl) zU6Sf2r_OPgF*$K!?Jy%)D42=Z`_?yedyk6 zK;aKCX~^4YPE=9cw6j73X)3fRCyh3jP03hpv??}kjUm`;V|Owgl+_IZ#TVgRtxiE4 zggV3?Xa(t}P7uE3t>r72nyVu5mc%4Ha$ZE2>bliS1-^w$(50~{E|RN8Datu6HP}7F zI&nAWJblEmdbm@~?jNbYQ;nNs0ug99flB~>WKO*{mKG_{N3$-h+SPj1u`IEvY4Q^d zmmbC8YJ6}VyHt&^Jh{!=NkM4uUk;i zi~>Q*+-poNEk`EHNpdW%*NMc&*A(T{DGYGo7X_LuYU9fLr}*#Sdn&{83Qz zd-^s!a%ZYi&_Obh@&Vj9JKi`NH(|z7Pt|(R{C2C$=xxhiiKRK4CNiVzwRk7HT88pX z2_+6YSDYM>7-y25h9!s@wtCT@``Jo4aStA4&*?7D*C|W!Y}#Hb^K;C&4q}noEix|bbXXEB&bpX z+&TL`BaDw=0+uJ6&G+59v43*?#8Tww-WE+avFy%LiY-({CfXDy#Y*@y5<0 z#p8rdUeSQo5Gs7I7J`SsxKlgwoDo0J0kj`KIGH2 zJ8Yxzph?Mji{LJXV`Zs}$z9+Vwr2tcxq>lu!iJc)}7QJL;D2?<7}2hek8-z;6yPKl8l z&?oJUu%nyDT+X?`A-(D)mDn00(~8k(R0(oEQliD0J>wXWvbreEEd5Fd0;ObAI&2_~ z{yH3bY0JzX@C~LsH8lVtH3$8TU^o1lqJ+{%Z#IK66aRDutu$wGEk z&CI`zPKjrSqsydOr{yzQa=djl_*2U7#wR10ZX{31cc4VaU!X&fT`1%DpPcwQC9`|q zKnO?Pm?km=*4E*Bi%Y~dc+0ybiFHrQcF@p_ulgM{8Pg@*4KaEX9y#YXv-v9+5;IFN zFxgnXcv|`a$MMzV#e!$xjIy+fRcnHA4J2|VZHbX>%ME$%oe+ZSNQC{U;@AZ6hbmg(->KToLfnC4>@Z&gn$QZLdLR6N;>13)(`W{Iiy5w|rtzvDQy+MoWiq z>*n$GCm77gm&;GW362VUF;^HqY?*ZBbK`{!i*V5K#7Th(%BGKjxMA1R#gwDE#Lh>+ zTQ2IRLh7e0t2=SE=i+C?aq2`J?O^IkkEYD4u151=^WK0tFN^#jH!LO=#1e6k+oQfw z&ANxIZ7bQx=>!VB?C;cc9dfl|N5ti;&g`3%wcu>M1v$9b4~B3rS@Ny9IOe5DG!3^*u;pOfQpL0q`^Vx0wZ|s?d&_lsTuGvv~H!_YOpwO={?jCdz7+ zV_21I(^*Yj0-{2iP&uv#EsD*OuV~jgw55%fcdHXW)ga-}dtDpl-q85HF_{eSzDe14 zV?_V&_|Vr{q^KHA2FAPU0JM2!a?KZx@c|yb2<6nq_S$fL1O89(WIq*!vld!y4}B|k zfGv^=#---S$aadD&63IOSgZVIGCSgti*vwy)uF(lr5XaPXnn8^URdJF@wn)lFAR^H zcSvGo4Mh6vvZ!zJ%0}FJb%*lt-qG|JVdY1-EX-#VGzN~CVM0~nPi;hU8Q&h-x{^k3 z2F($`Ze7{l-oZrdjFCIpGBw~{LCX+lie{pCl>6AT4Y*+oN;@pm+&$A8XZrlf<5$9W zwVrbfKRLK+i79t>#}MRj_s}x*6q6AfYRt=UxN2$Yyt7VwGEt?L2k{`TR!fX&Z5@4C zH;1opF8ScQC)N^HnXQjx+*v?kmXXqylGtzUn2nyI7??bMBSG|YFfqK(j_^<`bXR5GhNnE3rh8YDSv$}==0jzp~OD85d%T%VHMau@$)62II`Z8 zs3I(9r-ICW5Vg~I25(_w)ne8?s4qh{@pflUE?^+t+v4l&w1LEU#iFeCn%)=ZFoGH+ zl-L&+@b7&&9JHjRIPNkevoFow4mx+&TD##Hc*I#>wTnva-{@Soy)pJy1*2Zgs038D zJmYOTpHMz4+o+Zo!Yrmi6JilLeOx7g%qcutJ$(p^PE+Wc79)LjFI<$<0GxJk3FnsF z22@I`Tn?)`%|nTJKatH34cBn;znp2K43@9hbF)FD#qgPgP<_VCIf)aBmRNd;8|^N* zozmront(vjr82A6zC|Qwp;UI2na7z(P%LGzn)_L(aF~v{J#p+AutMJssv`XgHuv?w zI`D-N7$coD3^))4a9vr=igA}R{vxxJBBNC9;TR9ykZFp$3ge7eFX&h-rVGjjy9hK$ znxwNCH+z5Op#6f{LCUZS0m)2?^4Km&Y%_h3KHCK{7;^ zwQhc$T9+DeCwlRgC2rW1F~oJt!OG$&-#KHXqB@axEix(t1W*D4V{3RE9T zpYMOOr)(0-l{?sp#ppuTsph9b>^b_qnLU>fN3tb@gA~QK`gmZ?Wy;}f^WY0PCQ=jA z(FU$g?mTueN1!+EepcvtBBhW4E-DJdM$h88fJmhz?W>X~TLj^sy zRhIoUoE$Q&*6Yb5GVUtNDgl*Uzc(y`4sF9_C|38b$lt3KP8F%-mLcm5aj!zIEC@$B zVh+NX8&An8f&$#bCF0R2j=hTIr#U9(lQG!rx5AuioqJr_`H zLv=BGt_(1q#*d_xl?PMHHMfG~+aTHmrSYuzRYhSt+j>i>p1QS;&>0@b4{}T3H>=}y z_*LSxHXc5vqnxW%Gjyy1N6(Hg`7%O)LI&&XhANA2&C_S|1b4?M=xmBoni=2i(pjpI zuSKJ_% zJv_k`o(l zGcFkfV;wTmRGzZF(-9MNu1YUt^JODv9yFaI!d$I15zU3z`f6+`R>&CSS9uT4o@Ck_H`;Da+roXLl{)*J}(+O^+=F zkD*xGv;5t93U|!FyXV%;{?j*3`ujI-9Kb7;zq1O6XGI>cx+;`V^T0ik;#CT(H3;XG za*Z7uzxhNM6Ib^-v92;D8RaJ5U`(Vv8&=dB*&NoPbH3C?ZtQ<1xX3nn zwgR&{?3G#D=x*n^Luhd`tw#0?4YP&EmpG3>?!kHTAS@KjM}Z78VwDBLZwftW@5N@>eVRvl~Kl@ZB~o8XTrwR>SgT$mwOt{JcqNNzmv|kX#3ip&Ds7A#F)kF=W4{z76cXK*ol;iqP>T5M61YJ7+kO_%Kx~t?v)S#y zQQHM}FmH4hLNXmU8FVFExTdTlhN6@7!#X&ESv?d*$I%1aa3)1%BzK9D*W$I9C9>5s zRuRd?jKxLMG7g3<%ttgYs~m?Tu9h)AMmsX6|(Hf+Thx0tv~NVYIPLz%e30 z=T^9&C=`7r<3$DWu7L#?mFun{SZMTdw~gP7ZA=i7PY-Y<3jU}*j6{^|jvOpNQ@zMf zo6@(75lJdwFPZW;@IF?(Q|ta8j45PM3$C|FvRLJMjhIX>L3g`R$m!W*4jjMlGNi{U zW+z~YV|Cwz7a%P|5$RW!H!+DvAvo|7S5`xNjSqY6e%vBbEtS;77DYi z?Z;t4ongW6QPCS}T11B5?KGVho0qm_>)G1o-6M1eci)N3NzH#jKQ(6Ppri~%m+r5{ zC83-#bB*2D<|PLZt|ML3I0oH?2`QAwt+r9fW>HEVwyhAv0T9c3a3U@;uuhsjUu@WO zcqAiJHgyI0wMaH|rvbe}!U)zkRUE5}Ix;4_x(XsL`>NJ>y~!aW`2(js_Flf)lq#+3Q=@P~7a=hUuWp^82fo{wvAU)X9{`2m2 zWaX6A0t08<0qGQJ#@0#`K0V>0dF*fyY#p&w``CZ%7a*j@DCy=Ik`G%~XYD_{&&L1I zRW_Se0axj)!O(wg2Ngc>0Z6>3RRL2uys|yUrSJEwW>uQOgd1Fop~~e%r!t!>3#0j_ z4%fHLHPv?LU^I_2AJ<#k=H)_R@U9(Abmj;ds)B+J-oc3HT3g$aNB_FXY_;Q|tO$f#G*zUC3xsn3&%XLwss4FU^739TLXk^a<$-92^P<-5 zXa@;j5Vs0btsv!0ZkU=u@+TT?3jqu>=8h!EL#g5e?P9Orvl;c5p~&?cR+>98)hwKF zQx$j&pT?*c!BGxM7NY_%H%GUc@5h+HQcY9aNr`Z2iM#>}i`&F#B-_lOQE}#NGk;|si#C*EU?g4zZA3-U z#?zm7MLwS#=&H@r##R+LH}{HlqM?PQ&1hSpz5;$Z+CkpIAC z+ospe53v~}n`uw+0p7lgUocF;%62yd%JkOAE+9zX;ueU4Qq2;NIDRK-eelD3_%oh% zd7J$TTLAW$I{;bQ@>W~ZVMEq)K*sVyy+lz8vV9QVrp%hwKW4J;JzjKfGFc6 zAKdmjj0o`Zzp%Hxg*>Imtd-?@zt+!ky~B0TC6O$jSJ+bIHQ{Nyv%R@)V$;@ScXJRN zo27Kgb#S)ChFAwftpTGNWF+OaTOm9Jij#6$q(V8Hr`6KDVk8$b&*0gOR$qb4s-3pT z!D_cZh^m-pCFCyKptwrhqN1@7!?lz8TbX&Sge&SKLB*OmcIzImKr>Cpa;3QX?j&j_4XyYNM*pjbU#in}uo zAw|B8Ty0^rIC!hZNEW$qlsLZ4LbNV$t9g;}*}$o?Q``c7e)I zahaT(T$;AAgW8D-b4-HGe!eYdoXF}cIF$1g#=vA9lE3;l!(ucXo=S*~bQ(_*Uq91AWtFAK4Pld^7$+%t%*Ig;o*wqK9L={D2T)L# zNC)HUmGZ>CfBn>07eF&VHZsy&g*y``yQUgUn=unnX!WfybIru*8Gl-ugnf1t?x6EB zlsGyXeFWsL4>m$_Cj?Kh$Ql{NOJaXc2h&s5_vY|dK2+=QXg$ne@ z^Ms!!RMb~!gqV6uq&2;H!eI^SROQqNHdNoEt}gY_XpumM+*UJ7HA8b&J$#vW$>T7H zG7L5nG>MRH_O7h2g3Z{&g@+E`4rhVZDdF|ui}d|W(12Ph5poP~up8772D^Ilb0L!U8!kem3A zyo*9nD-kd5xI{nO{23fp`(Vdz2*PpeTon)XY_RLlREbrj>yok>%T}qtIcLUJ$mmds z8E=lbO$4tvrNlnB(RHUHNP8Ty7k9XYX{Av^eZn6w8p)^DMMouLlORc^fWcW(3NkP&C#1oFy%n2I-1p{Xt$whm?;^8L4;R0@62~&93lRFCmZQctkP3ekN7X`2R#((M2GbQQ zQai9~`WzD~P5B4+v%W6_6{_ua-$wWjz-CYlM6{>z<0j7!!B16BKO3WjW3Mo)ka$pk z_w*~i4aLgFsc1$tvjL0TW0Xeq<@!45t;!RwZlD*oBv$MKEGTR& zPbY4g4zeCyElDV4@-5hJZEZRTwvxXM#KxG!%sjR3dGgw^`aI5E?hAJ@?$nK*ZbSf% z9d&9ewylg~3jN$v_M3C>G{4N~*8vqg-;_IRMx=4C@uly`evWqq zSCS9Pv*WJm>KI0DvHO>H*Wv82g~Qpx_enFLSm^g>oFWSpSBeiKawNj_Zh3MMD-(fp z2-C46t@dfo-bst$+#NOaP)=0y>1-DHbl?i;r?q)k^d~Tzq8aeNG$)eKI&;DgmR1wx zC#zVgsEvCN`t~<3Y0?vomPW4;AU-E>90nZrz3?T0ZbjxUN#2P=U)Y$g^~ zfdmJ5L{IyAy>b=RNP7fJA{Ysy$C@?RIFVdZ;D)NL%vEmIOBz0P?LCaqP4a~WlNC+T zcu@zk2&bn-_B2X=<7(%Gdm6 z8*;(QrlKrENvnS1(T&kU5n7ENZjQQ6q|rey>Nm9Z8-pg~-`4JNUxo3O<*uj?lbpeM(*i>iG}K~fTt#iWbi5AL5p;cVogi@4 zb+;v!O>4lRAL+=~wsxC4w{G3I(>w+-WE@g+>0GDPX`Op-=iJ?=kM>Wd=dFl6(MIZ# z4o>-{^WF39raf%+T8l^~GPN{t(?=SOPi-_Be}#V!G#>oG%Rcp`jW?kj{%t(aXe__% z1z-KZ^2?gbFMZL2|KMdWSbphCmw)DEsF2tDBb4)cH&3beuPXI+PpQ`_>rJw1#dqJ5 z>U|p8x0%;#0vG;Wz#q#m`{b{F@b9B1pNX1Z{IX9*M~Zj7n{{GeujKE_``SwN>`mLJ z)q8tcZ!532Y{>oT{=xOe0}tWP7cQLJY<$wEylC^q55DpRpZ>tBA9&4~&wSvu4}8`G zpYur%VG3sc<;H>b>umhX>pxPdk42jOJJWbu1^>1TYu|gcf`8Qe z6Kg#h|FS>MG~QmR|8~~@{8-B-EB!muI9I8Ej`dTmbEz`^I@35`sehjJQ?Jig>VIyf z+^&>uccg!38ogA&UuPQgmGTEF<-c7iFILK*S1G5FFvOY0J1h8iSIR4u@@l0#tdwnc zrhjJ|kEa6uI@8#wl(#D7QKdYtly@rS%a!ugO8E;aMpVD~KgZT$u()gmH{Hcu(7v+~W zeyS+HtnsHs`Q?rCXY%)bTH~-NzoPLEi}EWQA1lhQYP{qH`R_lyu~w8{-T11a{27gZ zU6fzbc;JQk??1D#T$Eqi_)t;)tj2#^lwa5Qzl-u`Hx@oAf8XmHCq?;l8b4T+-_ZEu zqTFnBUX=g-jg6Z{`Jo(%{raIw`R`Q9#pI!WG59DKgNafxI4BpLL%C=y%0=T){^ZK{ zUtB4FN~QdgO8HYO<(F2<#to%^XBsb01^jiU@oAOvD=OtzR?4rcls~;ves!f>p5A8~ zuc_cavr@LxJ^ee=_^edGUuPPxtCY*#f2Q&J3jT8{I8T+F*n?8GT{rq9$O(%^v9W|bLs&~G1 zesTV|yEL6&Y_%8L2d%mJ~-g#L~_9MOLL2z&eHx- zXa0D>@DqE ziotFx|4pm=?1BAi@%;2~X@22oZvSZMsN0!eIy`7CEG|x`2S@v@-r}^o$Y1T$rV%&^}(69_m}jIlX`P#>w6ZoO11l?YZ-v-okY5 z@CfqC^l-o1>vawfj^}!!0p8w*`3395O_%9ASz2p7v{&Dx9L&uvb@!KA3)973 zTf?Uxbh_t{=DMxk!v6f?aS!ipFJKs22fa?`Xs)xcI5+hHIDG2P^*he^T zvJPAA{YA|3(!yM4zBOIM*v%a;`ocK8b$hyZ_*55do1Z^_eAt^m+&^qDEw)=n2aCr` zi$|EW{e|iABEH@^WZV2xPaGcNH=TK`qPb}gqcp#?(8l7MqHd>q)P`5Y@!UbDJM$SN z%0GYH>n-%!9ZbnS+SEIm9$?*KW_!oS?S;9ceT@NEzLwD30>nln&05;uU+67#5BHb4 zSfWew$J3)F%+UP)LdT~kE_EC3c`WhygBFGst8=M)*zFx194#ET4i@LI)LTbrZu%B? z*p2BE`-jh2*ShDI+6Vh{2XnpNe($hzFzw8DTKnxOB1tf)OH-s3u^ouH#Y(~tur=Df z-r@1w(a|C13`^%|A4|0}w{&#a-k(2Q#5LXigM3H(Z|4@yw-=9E?Zau?`ZrxVKIoyT zSo9dp_Ws;LuNV_igWH^gC9K=_9NKztIM?p(@9!_RyNBo@GC>@654s&JnVRq7x1c80 z&(8Tp?2+T8B`nBkciK5RJZ>FN52j1)`SuZLO81nX+xS9^KaZs}cf2%h9b%tOj~5nu zt>b-+LU(Dt)xoBiule{BPhY>~pFZB7?_!ZHE*>2o&Mh47@Mr-^umIL12dfi6ww zmaruE50*Mc*{0pOqrH@ma-alTP@6`1B=&610 zcK5K|>vk9Cy1m84`Nht{!EqNt_uX`KNoWrSpgT#~^Ws$I}IGYU zSU@{^?S&p_9!CCX3FL8ZZhis80`q{47B)rR^y3@*cb@c)&mB(pm#|mct?7KXJ$Hat zb$SQA1-$j>xYMfpIDZ|xeuTqd>9Es2?(E~_+wWlY9d-^u3_(i{I{S4K{`51qHR`=C z==cJDh9T&7dM#|Q-aP)_Jv#1UP-c6M-z_eJ4zw_~t$7@G)1&zozTfQ~x2H>oIENOO zj*sXUL%SogaAX(Dm-*sRYYG4)#H?O~z?H_@+j~I7EZS=@~SR?Ln|j_+R6} zha1%3JP5Yi_!YyOhQQ#v1c!o~f+i6g{!0X>f_DT>;xqi03w~Je8wEcq_|FA@M(~#e zKQ8zgV8ZM@7X(eNv+|MPmkEBe;70|2P|)N&tN$@Ulk=?nAVdU%uNHir;2QGm;ze?~Ug5NFpLxMjk_-_RNt>7OC{s+Oo5Ih5s#oG6B!Pg1CRj@1g4ufE? zA6NMc1m7$8oI$Ybe^=#i5&Uk!9})a%gIFBDr1EbI{(Hd}yujP@>4I+-JZBK%#^n+DO|vj)*mlM`$_77b$j-fa-$f59MrG%_f$$=-wR^L=;~-^YE80>6XznnY*s z=lAe_ld$YNO@pX}rV{e|_#XE;V9TE4yFEd+2QT@2D+9jUAlk7ih~+?f!FIe^-^I)M zy|=i$WaDBQM}rFn->UcE^Z$5YJ_U z?`|~K3@$esmkh2n8eeFz-*7s%+GyOe@}SXp#vuChL4!kl*S?Q3rj{_!ag)gHxk=6j z9~Lytww1&9qf0EKsf5ddYl4BEPgK4p80KZF@_Pi|EBK7y2L-=E@M{DEz5gba!#sV5 z%HJjUeS%@WenjOT7yN0#pA-BA!Cw*lb-~{f{5`=x6#Tg0p9?;q@qLltO9fvg_*%g? z2)|U*#tRpAx(y_?+N}1iw=7YX!evFr0Vart)_R zevjby3;vMcj|ztK@Ml#1dBI;4{8ho<5d0m%-xvI2!9NxJOTjY_`ucjY;L8Q?cfOue zy{_Pr;JX9|f)@oZ30@KWV!=bf>w>og?+U(O@XH0iTJY-xzd`U@1;1VJqk`Wn_ydAJ zEcj!BrvJ5l_p^c@6Z~btUlaUI!QU191HnHL{4>G75`5tqfA32KUm^G!!Pg5uEcl4v z=L*gVl21VUmQ`L8+!UM$UK89CoC>~2Fz^-6sQf{}uMqqi!4C_5li)`LzeDi51iw%4 z2L%H^^5ZI#FG0J1PUT+^{1w4p7yK>3-xK^p!H*06x!?mY@bP?+;7bKxCHPvwHwXqk z=TVj0f(wF=3HAlo1-Auv1;0>mU+@XRz#rXFnS9cl8jTOB{FQ=VEBN(--z@lTg5N0^ z_^Iz#nS9lo8jT-S`6mQ_M)2nae^KyP1%E^EcLaZ5@Q(%mRPZka&)}f4_5WhQmkYjH z@O6T36nv}TIl->rlHj`p2Z9#`F9}`|{9?gF!Rvyz1n&w4zVFLb{%XOm6Z{6jzz=@A z${!W{Ucny_41D5`sr*xdKP&h#!Cw~qHNoE${9VC65d0ItKNI{b!550Je2L&I1YaZg zdclVU9})aq!8yTq2rdh*32q8b1g{D12~GvyBlupyX9Pbe_!WX*Bluy#ZxZ~7;CBdq zm*Dpan!U)@&yNWHxZqC<{+!@12>y!TuM7T`;O`0kq2R{_|6K5a7is?szEtp4g0B^P zgW#J59~Ep1E(ks**cV(E+!ovw{6fKf!6yWt61*e$oZyE9zf$mP1;1YKn+3m3@H+*+ zNAUXve@O601%E>DX9Ry<@D~MtRq!_ie@F251^-y^PX+%{@C*b3?tj6T3%*+Lb%Jjc ze5>F&!LHzv;JX9|f)@oZ30@KWV!=bf>w>og?+U(O@XH0iTJY-xzd`U@1;1VJqk`Wn z_ydAJEcj!BKPC9Hf*%w7Wx-z){7u2%75oFiKN0*h!M_rG;fsA-Un2Ml!Pf}BUhrYT zM+84ta8B?Yg3E$yf}4U9!E1thf>Xiw2)uOC3r{hIl&JJex=~o3VyxdHw)sJV1NEo$%n`K z{!@Y{g6|jnJAz*$_+JQqv*14z{HWl6Eg0m%|3>AX5d7~2KPLD;2?javw^jaq!G9f@3VulN zs|3GJ@EZj`BKVI4zen(&3jVO*zZ4Ap{Zy4-CHVibcUR$3*KOFaRS*$rX^?IKX^`&j z?vn2A?(XjH?(XiEZUJc!kd*h)IcMkF`nKQW-8zqJE#O$|S~Kg%|DJnhVle@eGx&Y} zzx!3-_sak6_p96PUk~}5ZyB6phxGrQ9~hZ28K3{($A>fdcn;=gF$U+>Rpi=i$QEqR z;Jmu8JcOe;i8C3TQ!kg-aVz)mFoW~yi}H2e<72*Ja4!A7WzPT3q3;-;Q5lE9d2~uS z9kVhw3o$r{t{_)uJvL!$2ItQ`)e3`fSfX^75 zGk=mpgbef)hLIS9!TEAhIW;pfJM%F(S1u!0W-T^ga|Y+hUFALuKK?#Rp2*-FdA_`i zYq^EH8Jr)VlrQia@A46YbK`gN7l!)ZFYbS@v%)b7gY)8qata0?=g%VNVsK7eLN3p0 z4DJCmmV@)*j&cw7=P-_Ca4tMsUc{B$z<>AV|NVY~^WdZM8UD9V@W0RBlzj1v$2~#lxvoSdLEh3j@CDvqp2IswPyhcY;~oh;AdzkBNc{{0nP&)~dvuY823`8#hgIH!Fg|HTjd+B`8dgY(&F z@=r|6pP8P)xojS}FiWu_YcM#EZ7R26XZGSi2IsKj-5;#xxAhS#!wwS&U^_g~9o1L%9Xpvm5&|I9DAlPvT52 z;Bp4%saxeeJj_$P$lx6Hp8S}v_?};xI|k>c;pM1|!$eHU;M_E;oSTJMk`)-7m)4V; zur)ieCxdg+;qo|6iT|VMVzT+2$`rifHzdeOx z6vk#kreIoTVJ;SA36^Iy)@5V1Vn_C1e-7hVPT_1W;!1AdcJAX*p5Z0lj^qSRXK=4;sl0}pxr+xG+~+zkU*#SC$rlXnas4BI>v}INe`G8M_oI``zc4d% zvH*j7Tjk`ctiwiZ$>6?Lcex*jattRkxTm#HUcvR;#^C;Sa6c=!hyAG*Z?q7A5dvPE~a6E&1S99ehT+L0~ z$>6@#arqpt@HQVZxM%fN{>$Mm9k(*LKXq6>#f!Yo;NE(0Z|aqgzvsV;z5kwj-!VLc`%-b_ zL`=za%*x=NR3W(}E3i82F}NSqTJFT29KhiW?nOwIW;pfxc8J#F3K{j%vucYJ2jWvu`Byf*i6V2Ov~UNQ!cq6ORzkvF}T0f zSZ>9R?7{vF?k$a#r*JkGaV3NMO55dqJjye?#NeLNefcS0^CSO#4#vOtx9=H|(HWOX zn2N!@q-=6t7GY^tVsIa+zTAv$*@e9s+(Q~EPvCUU<5C9qk2cG@c#tP}p25ANJMy1= z!N2(rgZoBdUGM$KSWLj=4DK0amUFTIi?bYq`$cu+Mr_Fr?9Sj`(NK8|Cvz4TGPqB) zUf#yNJi^lq?h)OP|KJn;#SaYb4~2G}7lG0E6B9GIH$@KqnK2ok$(V+jn1lIQjAdDc zwb_s@*q+_kmqR$3lQ@$LxSZ>_m3w%Yr+AUqd5@3zitqXF6Epui{~4Z98Hb6OlIfV0 zxmk!MS%KAAk4@N`o!FBDIGp1+m2p5BQ94_=zE0--cl%#$Y@q zWol+*cIIPImSJVqVgoj3J9cFs4(2FMiT|VMVzT+2$3Lm&V zg<}-PWWHNz~uaenVFLXSe)fpm37#NE!lzH*^fgxhLbsq3%P>pxs7{y zgs1sCZ}1O3;a~i~uOkKe3C#$M#-Es&KQldlWgZr0DOO|+{>G+k!_Mr*fgHi{oW{9a z!qwcwojkzfJjW}%&4+x>xBSeI|69!b_k8<-kr|WmnT%E z$n4C=qAbJ8ti=Xw&UWm|J{-(ZoX8oR&t+W8E!@pRJjn~Z#=CsPmwd-B3>7udQ#eLp zY$jw1rezl9VnLQ*c~)axHfAe!WDoY|FplLE&gLSn>vBBo?IW@T;`Vo6qDb=G4O zwq_^xE$n4C= zqAbJ8ti=Xw&UWm|J{-(ZoX8oR&t+W8E!@pRJjn~Z#=CsPmwd-B3>7EPQ#eLpY$jw1 zrezl9VnLQ*c~)axHfAe!WDoY|FplLE&gLSnT&-s?088UvLrym%ZF&Ur9n1-2{gZWvEWm$!_*^n*Rp554&LpYj~ zIFk#woa?xidw7_qc#+q6kB|9^@A*}NKtJCxJfkuW6EP*zF)MSk5KFQGtFs=Pur)ie zCkJpi$8jp>a4}bLBX@8=kMS%o^A;cQ8Q<^|LnI9J6o!!)gYlS@shN@4nU6(ThLu^1 z4cMIR*p+=an4>t6GdQ2ixRzVEn}>Lk7kG_#`G_z1j$armQJ|-AjKbJV$P`S=EX>7% zEWz@u#=30GR_w?g?9X8w%PE}AMO?`Z+|GSG$}_ygo4n7be9e#i_w4`g{AWZ)XIv&> zDrR6d=4BCc~ooB#0JB!Qm7 z@<+yE0w(7#%*>oDz~U^&s;t9CY{?Gn&VC%qF`UdC zZ9e34zU60zOcvTaj^-rJt6GdQ2ixRzVEn}>Lk7kG_#`G_z1j$armW#H=$$0&@=giOJ-%)(qO$Pz5i zYOKq~Y{ic3!Tub^v7Ex$T*Q^!!0p_}qddb)yvh4~%GdnJe_uoRzw@6F8J%&NgsGT; z*_f9_Selhsll9q*ZP|srIfx@UfzvsUOSy)dxr+yRg6Daaclak?@NfRZZ&L+&3dT z&-s?088S_vrym%ZF&Ur9n1-2{gZWvEWm$!_*^n*Rp554&LpYj~IFk#woa?xidw7_q zc#+q6kB|9^@A>ZwbpQMN=sSjIRK{T^{*ZH7QkVfiCt zF#(hF7iMNo7GQCfV^!8+BerA*c4t2h#+%2vlDxA0EcrN zr*aM#a}_so2lw+B&+;;F@d2Ol4L>nNmOxKo7>O|$k4c%D8JV5=Sd?X0nYGw}&DoA! z*@uHUiW515^SO*`xrMuVh$nf0*LatY_>%AVg`u(rdJ4xVjLn2h!L-c6Tr9{EEYE7J z%f@WQj_kqy9LBMn!r5HJmE6GX+{dFl!%Mu$`+UmR{K$XbyXU|2pAi|IahZgvn1R`t zmql2bl~|MY*^F)3g}ph5BRPT7Igd-ZhMT#I2YG_$d6jqgCtvVy{=;vx1$qk09~p}Y zn4G^bGjp;4i?bZ7vJM-uB|ES?`*A48a586cAy;rcw{b6z@HBtt4gSF={EHv>b@o6% zp&5bE_!ATJXQt<`%)`Pg#fq%K-`JFG*qOaJkRv#r(>Rw)xSE@|lLvU5=Xiy;`H;`~ zmY*3iN1&%47@08{pUIepnV5t5S&U^_g|*p`E!dvj*q1{%nv*z_3%H!?xRrZ&n5TG= z*LjbR`HJuPRn9;^-!VL+G7b|lCDSo0bF&ajvI48K9-FW=JFzDRa5%?tD(7%9S8*eE za6ganEHCpGAMhF9@DoGi3iK3)kr;#Vn3SoRk=dD#MOlWGS&I$WobA|^eK?q-IFU0r zpUb$GTezEtc#;=*jd%HoFZqsN7%F$5r*MqI*i6V2Ov^0H#eyus@~pFNkNhT2pr7vyhjI)ja~2nJ1=n*M_woo&^LO6hAAG{U_<>*N3-lA35g3g>F)@E; zdj85hEX-1@$Qt~OP1%N>*^2`?g5x=jbGd}8xrsY@fX8``S9qHb`J8Y0nIZEBdisHp z8I$pujA@vOIhdctSe8{-n+@55?b(feIfSD*i8Hx?%ejtQxrc{&iWhmE_xPBv_@4j1 zq3VCv{|wKljKf4s$#l%h+$_YBtibB5$0lsePVC769L{l^$~j!jRouuO+|Oe?%gemQ z2Ykji{KOCi13iUdB*tJoCS_`7WOn9bQI=t4)?x!TXFGOf9}eayPUH;E=Q6J47VhRD zp5z5y<6S=DOTOb5hAI^3DIB9PHWM-h(=rQlu^>yZJgc!T8?zNVvIqNf7{_u7XLAu( zas#(>ACK}3FYzYt^C@5RBflve=;wPzWOT-55~gAXW@BC!VQE%kP1a{Kwq+Og<{*yb z1WxBXF6A0-<}M!O37+Rw-r=8o!N2(rzbz8zDJ*|vEGA%b{=&@6$pS3Sa;(ZaY{ZuA z!0znFp&Y}>oW+G)!S&q6y*$Fx{GB)W2cPgSe&E+d1O0?%1V-aeOw6B|p1(2=3$qj} zvIc)+Q?_Ae_ToT};CN2sTrS~iZsJZJ;BlVg72f7UKIdD0X2@cJo_=6t#$CD!q)7>o*cm89LK4g!^K?1joiWgJjS!U%v*fGXMDp?3{fJ` zQy4~K48~(pre;QFXFe8X8CGU3HehqMV^{X!V2DrR6d=4BCc~ooB#0J(t)1B@<+yE0w(7#%*>oDz~U^&s;t9CY{?Gn&VC%qF`Ud< zT*wt%&u!exBRtLDd4qrO3IE~;eqAQePiRJ9H2%cI{F&+bEAy~0OR*wr@HaMP8+K+d z4&(@q=QPgc60YVZ?&JX;=Q&>CZ9e34zU60zEF0+Q2S#R0#%D67VJ7Baeima{R$*;6 zWDB-uH}>Taj^-rJS8@Zlb03fL3@`B}@AD~N^CQ2h z80hDFMr3rxWfG=h24-Vk7GY^tVola(GqzyB ze8Io@55KJx=qW6JWGp6Na{j{1%*g^Q&T_2EI&8$2?7;5q$Dtg<$(+T7T*39+#=Shk z)BK$`_y?cxFMi_~RW&}p#PfX08nV!Eg4-2ytE3yWEV^g+aXZGSij^KDs<6JJ` zYHs3A9^i4F;}zcKLq6wQerCujfu4R~WX5ECCSw|AVh-kKF_vW&)@DPtV0(6BUk>4D zPU1{1;Bv0xR_@_pp5jGb=RH2=E57GfRRjHe$MB5GI84NpOvkLu%|a~63ark0Y{J&; z#GV|$;T*@QoWsRj#f{v-{XE9Ayv$pCz-N5JPYh8l&{G&jVhqM(Ql@4`W@kPYWf@jx zEjD0twqsZJ;b4y9M9$!RF5_Bm;cgz{NnYSJ-sK~{3#Qd4*`786VFiWu_Yw$NVWgB*8FAn4gj^{Ma3Syo|fHe?I7XE*lc5RT>~&g23v=Q?iX z9v#FDJQ>a52mY|T#W$pIYBah%FI zT+CJ6$Q|6zV?4{tyu}B6#y9-L5Oo7Rg<&MdU_2&eYG!11=3`NoVP)2012$(nc4Z$9 z<|t0&49@2=uH_c)<{_Ts1zzJ_KH^Kh;}?di7w9P*qcAoTG6mBz3v;m`ORzkvu`V04 z6+5yA`*Rq_atdd25m#~pw{stl@(eHWChzkpU-Kis`7O}T_l(HsjLRfU#SF~Gyez`f zti+nE&t`1PF6_-g9LWis&UswQHQdZyJjfF~&#Sz{Kly@x^B;a&KhRTH{>WHNz~uae znVFLXSe)fpm37#NE!lzH*^fgxhLbsq3%P>pxs7{ygs1sCZ}1O3;a~i~uNwsV3C#$M z#-Es&KQldlWgZr0DOO|+{>G+k!_Mr*fgHi{oW{9a!qwcwojkzfJjW}%&4+x>xBSeI z4Ff&>z{rfr_)Nw$%)}hb&tfdgDy+?hY{B;I#=acF(VWDYT)^dA$F1DM!#u@{yv}=k z%vXHRuNnpV`HtZkm2sGeDVdI0nVW@Jk`-8;_1J{1*@-$D~ZnjLgn_EXp#h%vx-~=4{8V?8Ctv#fhB3`CP`e z+``>F#FMXs-Ou|&mz--LRA}q~HtjYRp#|BIaz?kS&mg% zhmF{h9oU`yIFw^JnX|Z%E4ZH9xR*zGn!ob~|KJn;#Si?td7z)rjKFC8iHZ3$)ALv6 zVPTeHMb_YNY|1w5%w8PG5ggBHoXaI#%}w0N13b=iyu#aj$me{^&kWfj(9;i$%$SVN zWK6?M%)$ID#HQ@qIQyvN6U#rOQGWuTw$ z7@koXhl!Yy>6n$dS%@WBfz?@$P1u^9*pmY|oZ~o^bGVqRxRE=!pT~HXmwAg1_>6D( zi6L4AdJ4lxjKO$J%GAur?99iaEW^sI#RhE7cI?VN9L!Oi$Qhi^Wn9ZG+|5Hg$qT&3 zyL`l#e8(>g)jH5qI7VS?CS(exWftaQL6%^7R%2Z@W-E4N5BBFUj^z~2<|3}-25#p* z9_1Nc;!WP?Q@-X$e$yt<&-aYT=#0xGOvMb$#=I=T(yYXqtj}g_%P#EAK^(~moX&Y% z$~D}~T|CGWJkP7V!$0|gfAb%H+cwZsSpLXZOu*#)g_)U?1z4QrSe13yh%MQH-Pw;r zIfj!tiwn7e>$#14d4#9=J8$q0KH*>dz^~f{`U%YljK-gsm_IW;e`OvPW+_%=4gSWa zY{Sm%#ep2b@tnrFT*B4d#GO3A<2=VJyv>Jv&bR!`knICK{lLhK$@omhG|a>t%+F#h z%POqRhHSz1?8d$v!qJ?>nOwl-T*s~4!^1qqi@eTze9TvT&#yWJ`uUFG8I^IEh$)$l zS(%%KSdtZ3o%Ps+t=Wk^Ie^1Cj#D{@i@Ay$xr6(8jAwb7xA=h1_=cYtqGO<^FpR_) zjK`!*&5X>>d@RZ`tjt<$z~*enuI$6X9L0&8!TDUqwcNtpJj9c{z-zqAM|{b5{K8P3 z0zHLe6vk#kreIoTVJ;SA36^Iy)@5V1Vn_C1e-7hVPT_1W;!1AdcJAX*p5Z0l2acx@(}H(2T%n{E3PAGt=`|=3!x$Vnx>AZ*0mo?95&q$PpaR zX`IU?T+L0~$pbvjbG*Xae8}f~%g+qiEzr{sjLevf&ty!)Ow7UjEXJ~|!rE-e7HrRM z?8_k>%}Jce1zgT`+{!&X%u~F`>%7Oue8up5BQ94_=zEU1bPa?NQ}XFOv=>E$n4C= zqAbJ8ti=Xw&UWm|J{-(ZoX8oR&t+W8E!@pRJjn~Z#=CsPmwd-B4AnExQ#eLpY$jw1 zrezl9VnLQ*c~)axHfAe!WDoY|FplLE&gLSnc z#f!Yodwk4Se9y1?1^W4p;Te^2n20Hvj#-(Tg;viHOwEkU&U`G&GOWy6Y{2Gh z$FA(d!5qbjoWc2A#72)p?!xR5Kjp4+&WM|hgQ^9KLm6aK{y{CaSp zpU{lJX#9zZ`7_h=SLR`1mSRQL;BRcoHtft^9LNzI&uN^?C0xx-+{ptx&U3uN+kD99 ze9O-aIV8~24~)#1jL&3D!%WP<{4B<@tisxC$QEqRZtTk;9L-6b$pu`_b==B5Jj_$P z$m_hv$9%>2{Ay^RpYIr+Q5lDcn3Cz3mAP4nC0T*hS&vQFnw{8_12~-HIF)m_n5(#v zJGh_6c$SxWix2pWZ}^EJh6Q>G!$^$5cudOF%*gD_$D%C5%B;l(Y|eJ<%03*-QJlyb zoX=%k%Pri^Lp;d~yvDnH#Fu=>FAOz2&{H@@VQeO33Z`Wi=3+sXV0l(!T{dPbc4QCs z=P-`t6wc-%uH*)8=RO|g8D8Q|-se-k=0|=rBGAwGjL7JW%Op(249v#7EW*;P#G0(n zW^BtY?9D+O$qAg!d0fgh+{|4($P+xztGvTM`GSA*AAUPB&{J6c$XHCk%+7o)$}+6XT5Q1PY{#zb!@(TIiJZatT*kHB!reT? zlf1xdyvs*?$#?w1P~!qUg<}-PW*9K?~F z!0DXFrCh_!+{J@D!SlSzJN%O`_&5LIw-W+Ah2@Wo#RN>wUznLWS%Ae^j#XKQjo6YM z*q!}2lw&xVv$&8exSrd%mq&P-zw-wF;1mAE5Bz#!pr6o;z-au5iTN|r^H=6!VU}V= z*5Ge!$~NrGUL42~9M5T-%OzaRP29-?JkE2x!rOev=X}f03^^&#(+`Zyn2gV4Ov6mf z!Tc=7vaG_|Y{(XD&u;9?Aso#~oXG`T&UM_%Jv_`)yvXak$H#od_xx&dpr7v;o>3Wx ziI|emSA~SV_i08D|TcL_UAB;WHNz~uaenVFLXSe)fpm37#NE!lzH*^fgxhLbsq z3%P>pxs7{ygs1sCZ}1O3;a~i~uV)1M3C#$M#-Es&KQldlWgZr0DOO|+{>G+k!_Mr* zfgHi{oW{9a!qwcwojkzfJjW}%&4+x>xBSeIGXp*Sz{rfr_)Nw$%)}hb&tfdgDy+?h zY{B;I#=acF(VWDYT)^dA$F1DM!#u@{yv}=k%vXHRuVw}M`HtZkm2sGeDVdI0nVW@J zk`-8;_1J{1*@-cA%#)jKmm>$D~Zn zjLgn_EXp#h%vx-~=4{8V?8Ctv#fhB3`CP`e+``>F#FMXs-Ou|&mz--LRA}q~HtjYRp#|BIaz?kS&mg%hmF{h9oU`yIFw^JnX|Z%E4ZH9xR*zG zn!ob~|KJn;#Si>?exRSwjKFC8iHZ3$)ALv6VPTeHMb_YNY|1w5%w8PG5ggBHoXaI# z%}w0N13b=iyu#aj$me{^&kVUB(9;i$%$SVNWK6?M%)$ID#HQ@qIQyvN6U#rOPbVW6My7@koXhl!Yy>6n$dS%@WBfz?@$P1u^9 z*pmY|oZ~o^bGVqRxRE=!pT~HXmwAg1_>6D(i6IsRdJ4lxjKO$J%GAur?99iaEW^sI z#RhE7cI?VN9L!Oi$Qhi^Wn9ZG+|5Hg$qT&3yL`l#e8(>gwK&jII7VS?CS(exWftaQ zL6%^7R%2Z@W-E4N5BBFUj^z~2<|3}-25#p*9_1Nc;!WP?Q@-X$ezPRd&-aYT=#0xG zOvMb$#=I=T(yYXqtj}g_%P#EAK^(~moX&Y%$~D}~T|CGWJkP7V!$0|gfAb%HyEM>K zSpLXZOu*#)g_)U?1z4QrSe13yh%MQH-Pw;rIfj!tiwn7e>$#14d4#9=J8$q0KH*>d zz^|7D`U%YljK-gsm_IW;e`OvPW+_%=4gSWaY{Sm%#ep2b@tnrFT*B4d#GO3A<2=VJ zyv>Jv&bR!`kjn!-{lLhK$@omhG|a>t%+F#h%POqRhHSz1?8d$v!qJ?>nOwl-T*s~4 z!^1qqi@eTze9TvT&#zVl`uUFG8I^IEh$)$lS(%%KSdtZ3o%Ps+t=Wk^Ie^1Cj#D{@ zi@Ay$xr6(8jAwb7xA=h1_=cYtVr8JGFpR_)jK`!*&5X>>d@RZ`tjt<$z~*enuI$6X z9L0&8!TDUqwcNtpJj9c{z-zqAM|{b5{K8PH0zHLe6vk#kreIoTVJ;SA36^Iy)@5V1 zVn_C1e-7hVPT_1W;!1AdcJAX*p5Z0l2acdTpSe(2T%n z{E3PAGt=`|=3!x$Vnx>AZ*0mo?95&q$PpaRX`IU?T+L0~$pbvjbG*Xae8}f~%g+qC zF3{5tjLevf&ty!)Ow7UjEXJ~|!rE-e7HrRM?8_k>%}Jce1zgT`+{!&X%u~F`>%7Ou ze8up5BQ94_=zDl1bPa?NQ}XFOv=>E$n4C=qAbJ8ti=Xw&UWm|J{-(ZoX8oR&t+W8 zE!@pRJjn~Z#=CsPmwd-B47D-PQ#eLpY$jw1rezl9VnLQ*c~)axHfAe!WDoY|FplLE z&gLSnc#f!Yodwk4Se9y181^W4p z;Te^2n20Hvj#-(Tg;viHOwEkU&U`G&GOWy6Y{2Gh$FA(d!5qbjoWc2A#72)< zT*J-W#e+P-^SsJC{F5*EH~-p?!xR5Kjp4+&WM|hgQ^9KLm6aK{y{CanwpU{lJX#9zZ`7_h=SLR`1mSRQL;BRco zHtft^9LNzI&uN^?C0xx-+{ptx&U3uN+kD99e9O-axhK%m4~)#1jL&3D!%WP<{4B<@ ztisxC$QEqRZtTk;9L-6b$pu`_b==B5Jj_$P$m_hv$9%>2{AzEYpYIr+Q5lDcn3Cz3 zmAP4nC0T*hS&vQFnw{8_12~-HIF)m_n5(#vJGh_6c$SxWix2pWZ}^EJ_62$h!$^$5 zcudOF%*gD_$D%C5%B;l(Y|eJ<%03*-QJlyboX=%k%Pri^Lp;d~yvDnH#Fu=>FATLm z&{H@@VQeO33Z`Wi=3+sXV0l(!T{dPbc4QCs=P-`t6wc-%uH*)8=RO|g8D8Q|-se-k z=0|>WAkfeEjL7JW%Op(249v#7EW*;P#G0(nW^BtY?9D+O$qAg!d0fgh+{|4($P+xz ztGvTM`GSA*AAWl<&{J6c$XHCk%+7o) z$}+6XT5Q1PY{#zb!@(TIiJZatT*kHB!reT?lf1xdyvs*?$#?w1P{#s2g<}-PW*9K?~F!0DXFrCh_!+{J@D!SlSzJN%O`_&5LI zwwUznLWS%Ae^j#XKQjo6YM*q!}2lw&xVv$&8exSrd%mq&P-zw-wF z;1mAE5B&OMpr6o;z-au5iTN|r^H=6!VU}V=*5Ge!$~NrGUL42~9M5T-%OzaRP29-? zJkE2x!rOev=X}f040$Th(+`Zyn2gV4Ov6mf!Tc=7vaG_|Y{(XD&u;9?Aso#~oXG`T z&UM_%Jv_`)yvXak$H#od_x$Q~pr7v;o>3WxiI|emSA~S zV_i08D|TcL_UAB;py1M@UYxiH(yLMIgG(5pm{E@#g!yEBBWoJGXVJTK%HP&H6wqQGU zVJ{BgP>$k6PUS4l<68s9Lvd^&g;2=w{RKn;d*Z7W8B4ke37s75I^8?p5zbwmFeG#*C`wG zvM@`sJgc%c8?ZSqW@q+fe-7bDPTa5E~Y{~ZQ%HB-iFplOVPUCFe$R)gk zck@0zz(@EvpXT#?m2dNXe!?&L9e-xpL-G1#VQ!wo;yjP%^8#MPrfkDYcquRAU|zv- zyoxh;18?H3T+VxWKOf>YKFMeJ65rsv{E#Pjia+u1U&Jjf$F#xM9S&oIs5czrT67Yni&%d#?S z@Aao`cng>D9Uv_U90eRGIltjg zj2(&BClhnB0MBI^R$>j-V`H{r2X#-{avEoGE*J7vF5@cR$4z{g+xaB-G5A;{mbPpx7F<3`@*somDQW&Ap5RG-&!3ql zO*}pmb1)wZvjop$W!7L_He_?Qa}vJM*y!OR)m0u?`!u1>3O;dvO4Vaug?WDra#X7jr3BaxFJ; zD|d1a_wxV`@(7Rd3x3NpOp`8NpUlj~f-J_etjwCckWJW{9oe0IIf$2YEGKh1ujc~Z z!ezXN>$#baaToXTMZV5M{D8-Kl0WcQrcWQQQ#R&hVU}chR%LBAU~^u~&g{wl9Kw;D zz^i#J=W-Em=L)XjMn23Pe2UNU6~4vy_%T1{H~fjQpyLnwyG+c<0z8*xScx@QkB!-i z9oUV1IFQ3RhF9_$UdQ>onRjv(*YQC<$|ty&FYq+|J#6mM`;79_B~FKe`m%_ z@jB&TeimhER%CV7Wh1s^dv;}SCU6)>a}uXz~H4jZxs+p!CKaR7&M6en^jXK@}Eb17GH zEjMv1cXAK+^8gR>2#@g#e#R+qatZI?-Mo(v@DV=Fr};cz<=cFp zpYTh5$Df%tSG+!1n49OYIM3txynq+6DckT8Udqcjm{)Kdui^~ez?*n0m-AlU&xg2; zPx2YQ#5edZKjaCX;*b1|8FI(#l%4rlgr!)4)mVoO*@ErZg}pd{Lph2QIhC_GkBhmK zE4h}NxRpD(hx>Ve2YH0Y_yxb^8Kwy?(1pjf%*@4tEXJ~|%$mHAP1u?p*`0kkh?jFL zCv!Tl=K|isWxR*$xtWh~7x(c+zRpAZfX8`~Kk!$k&l|5(Hs)nvmSlNWWo{Mp3Tv@Go3SlBu?PDxks~;sQ#g}zxRAH;F0SSVZsB(B=Cgd6Z}Kod;%EGt zr};ZG7Kqm=2lKNiOS2-Yvo0I4CEK$rdozKa~$A^6}ae7|L9J{DmqR$w*OVMDfHJ9c3&4&YFZ;zUm6 zEY9O%F6BzD;y%8}*LjE^@HkKM2mZ?Rh2wR~#=I=dk}S`vtjz{& z&WqWZJ=vc_IFb{1HLvAdF5>N6!8P2-hq;4K@j1T2xA-1E=I8u|KQUG$UY|_N$pSo= zWmt(dSdWd_iXGUEeK?TAIfhsA8eYfwyqR}$71!}WKFTM!moM-&zQd#Zlwa|C{=#&@ z2k=S9f97E!mS8znVJ+5YGqz67l+EW-bnbUba7w{G?<2_u@&3ufzxQ{RLbspjeJkFE+fxj|+$#|WzF)s_VB+IiZ zYqJ5H^I~>pPxj{!j^qSh&1*TAi+DR%a1A%|Vea5le2%a1ExyN(`8mJgPmGm{*C!Km zvH;Iz8CGHq)?;I~Vh46(9}eVjj^UNOhSzaEZ|0p`#dUm;kMarba`F0PW-bnbUba7w{G?<2_u@&3ufzxQ{RLbspjeJkFE+fxj|+`FNeOF)s_VB+IiZ zYqJ5H^I~>pPxj{!j^qSh&1*TAi+DR%a1A%|Vea5le2%a1ExyN(`8mJgPmEQF*C!Km zvH;Iz8CGHq)?;I~Vh46(9}eVjj^UNOhSzaEZ|0p`#dUm;kMarb2XH7y zaU!R37Uyv>mvSZ7auc_5C--na5AYz5@EE_~w>-l%RpRx@%v>zUVl2zbtjP=6gss_; z-PxCecsa*%GNpa8{c$_Es1Ak@us_{ByV_p_!NtS0- z)@B1X=f&*Ip6t&d9LWj1n%8nJ7x8wk;2Lh^!`#8A_#9v1TYQfn^K*W~pBSqauTLiC zWC5PbGOWZJtjES|#SZMoJ{-v59K$Pl4X@*T-po6>itG3wALSF=%NO_>-{Dby%CGo6 ze_^`n@j7K?9u{H=mSYvxVtqDaTXtd(_G2PPa6G4QCg*S=Z{uBD%?;eb?cB|0`7+<+ zVSdEV_%%=ScV?^+uTu`@XHk}BMOJ5BHeyS*XIJ)S0*7%lCvh5Q^F}V=9lV?O@c}-< z$N4m$=c|01@ADIW$?y0x)7FgFCku1)92Vz!Jf9cvA~t0kUcyUx83*$Uj^kCF!5erJ zZ{>2{%lr8dxA93n!srBO_auYU?<9l6aFW5(ldR8XY|BpU!G28S2#)6z&g2{} zy8NcRf{?3eP;;%RQyWjlgi?TE;vO1%`_ibdpCEK$r zdo%hw-(luQGo|eme0?NoI|LuIB^g|nOfooqOENgzC0U#QbbI}uUSCt|Z^KJ?DKFz- zUcqs^iZgfvZ{n?7&U<-3AL2GX$!GWy-{8CakSBPGKk_$bu${6q`n&KV=1Z{xtFaEF zzXxw&z8$-;7Y8uau4_O01xsAkMRqB%QH-qHohNb zW-bnbUba7w{G?<2_u@&3ufzxQ{RLbspjeJkFE+ zfxj|+x_F(kF)s_VB+IiZYqJ5H^I~>pPxj{!j^qSh&1*TAi+DR%a1A%|Vea5le2%a1 zExyN(`8mJgPmHCH*C!KmvH;Iz8CGHq)?;I~Vh46(9}eVjj^UNOhSzaEZ|0p`#dUm; zkMarb-Pnf%IhK594_Q-yo;;3fm^tpyZJ0%=9@gskN6qC=4t-UjQZUi%+I1M&5Eqfx@^RjY|pOj z%>)kPXinlZ&Spm2F$eRrC`&UM=LM(hN&9zQHeyS*XIJ)S0*7%lCvh5Q^F}V=9lV?O z@c}-<$N4m$=c|01@ADIW$?y0x)7pMnn49OYIM3txynq+6DckT8Udqcjm{)Kd|8M{9 z&cEB=Mf*cay)jK3O; zqyBDy`Jo)eiJZ!)pPOfXF_&^B*Ydxse=Ded#aNb=S(6vC30t!xyR$C`@p6vkWKQSx zT)o_}}0`>$Hhf4YDF@3ybD z`qXDr{;P4v0CE5GK8zpN{=46YySyLw@kPGQL;Qfpd6GZySEhGg{9kMYm3$rB4 zvnp$|0sr0l|5sgysTLdn(gux7`aQeMvDmelg885`FBsfUn==+`5}G>}O9;&yi!BW; z5R2^zEfk9#4=oytC7o{vomKEqQoaVE!F-d@AZD=nVWC0(`R0?xTfusg&S!%7ZQnvWheWcbkb!$&2ay|8s^ z3!9HfOc!m`$hqY}p@Oi1k7qiw9}xWo}v2PY1kIJE!pQA0)tbxFFPFmT|w#7W7Q zCX7oMH8e4()}K%K>mwr*28|1H{24MLsfO{KLH%P@2aO&%GI3N;|371fj7u09yym7| zI#f-VFk#&AffFZ$>lr$3^u#g2mi)(4_}NQ1{)nbp!JTj%9F9TT1h@2VXU8=O9*^SM zrV`gaS=_~`#Pv)T7mlA(T5tHCh}IkCPAM)dLKGKXe@H1V9CJr;9aD*$lPvC%RN}(E zH_F#3mAJc;#dS_4Zey~z@O&br*Aeys(R#b461O*5T(?x>4kU}~o=RNU=S1thG?lpH z$>MsX68BxQxNx6H>Gg(vTeRMA{Fzc*_GEFrQ;7?&Sx5Q$q!JgN<3w?NQ;DmdEbg*Y z;=*HHl&@bZapASYC@vfyr1W~jzC4N>kV@QuWN`_p#EnQ6H!zjB@Z2m~@1RuTW+#gq zoJ!oHWO0e9#4S%2Hzbv~b;;s}rV_U`SzLJBO{vbilf?~B78f2ygGI6M95I~2v25}w z7+NMxrGkIMMd{+Re~F8pRz6ss`5(lcAH;;uNxt6pQIg>C@O6Y!*jFcyD-<-~RML|8 zKT%v*%j9vHg9W?)Choek;=FzBwx{{O#xJe-js8GfKYRw}ZH_rqL9wH~b7MjEko9LBYfEU^GR`Dh7A5 z1P?Z`pnCZ%vG8}#X9e@&d3=~J+^*rZk?1+WZ0v&IP4r>12co;}&WbA#jQ<9NPcTJs z;kA|I>s?nVODsGNh3gHsOSInbGqvbBVTy@CzA!GDqGi3$%6B@*w<{VcKY^RzJEMZqnl_JzOMP&G;xm{PtO!H*1w?F#cX z2yQ9mD;-<}Djh73rj+t+3-VP6g2H@_f?G=YTKvO&N0a4il1jcILB5-U<zX@FY~-KmQrx}=x@L_{4&uUm(fIlA^6d`t4GTM5Q%dz~ z(=BVPLeQ~<`FaMol%rKE!_^N|H*x%)vn`vwQ zanaqg^DPbXh36JwzOesIDPNV~L!`%}B&p=feQ(y-Y57K^lJ7+D<&0!+w-no#c}>~8N-5urAYZs0!hGX` zTT1yh2l?hi$pTZ#cRa{I`7 zqlu>I?%DOL5d0?rGlGR-`@()TrS|RU6YsYm>s__ABR@IMwYh0DU*(zD`v z1pmoJcpQqRC~l3o=<$s~T=M=tTyHq73gVKtZ%)v@MZx1?`(^~UsC{8yk}keW29L&K zB@1MURY|%R|0i5;IE5zL?6FQk+?ZemvxCRO@nV=ScW?{W8RYw8+Fd+LY-Hv?W|Q)S WbK$kgIW{vHSRu(La?*1!YpI#A5>?N_+Xsoddc4K0Xy+lonMq`(vfG8p&f~Yh>P(V>s zP*g+^8wiNKf+z~8D1rqG?{6KrbLalP=l%EPy0X`-zGlwsnKf&+SvO$lK!#yt|M_EN zEoA@2WU{#960x{WHh~s0U)eSre*o}-_>W`<;lIH(?IC~;HEl=0p*8JcfWvFrBLGL% zv_}Dsu4#_}{Hdlr7Vzhq_Ah|rYTDxgC)Bhj0#2%FPX?S))BY83YE63@;PjgI48WN+ z?OA}cYua-F=hn360sdCgo)5U7ro9mG_nP(}fQxF{e*!M9X)gi%tERmaa9K_JZ@}d> z?G=D4Yuc*-SJ$-H0IscRuLE?dX*&bD)U;gz*VnW+0J_z*-2pxD-|J)Uak4`nrk(sAtrR+6}CsVQai2cB+1Ifp~eQ6x)%u_owe$6OM)5x!oleC8En6&idnpJB8 z`)20K@?^;hM;Rjgw5Ha;y5FB3`1&-uCX+Rg_i;Mr_OJfQ(7$^B^s8N7ZCk(WVZW9` zzw(eVrfC+3q`AIR%|mRF7O{<~hkTCSQPHUOA}ypROx4+X%IByYSySy^tgHJy66=vSL$14znVhd51gY|!ZL)QOIDmft%<6o032wl>qUbBXo#4Nt&3}{Z_V6k1*v`Rs zYFk?*tsQfVSZ2g)nH>Kqbpp8|T%x`Bz}% z>cUbj+l(>f;djJ1u=u^~$W!-fI+tex#@Ar_nsL?IqQuOyjhr?|34bE|3FrrpHs{dT zHXm4$TP8~utAE90no~0TIURMy@3?%bELlyQQ;P=uzfmyf{-hbKcrd^oH<`fxLu{Qt=R|J!X0&HuyhG1(#dRb|Oer^$!h@!q_DJpXGP zR0CHzi5RQ9(?moeAWC{$SIu4NQQPUiV}w}guK~T6>uuvlwm(eO=dGF>|E8+9I(rpn zs*p`o`M^(eb8D}h8`zh*rfA$W&tjYT494(zj`5$jK%T9$y#pE>h2ADrj)WK$@K0}+ zV58HUrLb9LFcvg+`hWeN)xR9Qla2qeqRegxEB)|3)OW~5Klpqt`s-41Z_{FH04 zrfBNO%jDhcX_u7C1#LJdQ#hPvW%6OQXcLpOTvQfFKRpF$ggxyua#naWhmpxeZpcCxM(~S+7P&HVy69F;qehB zTA66y`qt6_+iypE%k`L z;0>?F>T1^XhQSflSOb|hPsYjkk&NPJ1fmld`ptv@hLy`?`g)UjnanU|z)#4SxgLy_1>BA1GwX3H8H4l$kC!1v05VjV@~%G#ENlY=~$IbLC{psrBE1 zqc`r<4qOrC!OnQ0TND^o;_lgpH|75l-e>5kNa=>$i5*9wJfrrvZb8g1cucQBFuJ$nr5Ng=P#LEhmX+wL1Cg_g#I?;KW6t`$ky8M z!N&T&T6TdoKn+%(|LR&&E%@o`Rr}~_(=%e+YtbNq+`7g`EgC1_y-z_z?z32C-xcoz z!z&~bpg%MIV|LdrX^Y>hNRDZPS#2ZPkLnIn_vQaY*Pxobhet0i{+C?s-2R)-kWTn7 zxmvnTolfxY^I!5%n~_+AY7IVs;r5kVsP}T8zh!lwqvy;bxoy~tHn|(rrI~-($TdUp zm#prXi%^{MZ@Dl3$W4*|BUf+8L?{krY<;?jmxS5f6f@YG5|8F^=D$C~zKaN5#r)IJ ztv27zkgYZK3{0q)_BB64_3)~gLDl%&>fu!}<7vf_`%JCwlZN@HPv5j}58F}yn9j4A zu5U9N)u!6Yr24iWEvkPtI}v|x!S8HSnu^Js> z>I%LF1oCgQO9X9AKsEwiQ(+2WtkpD0JB6}gP0zL5NE5=HkU0V|?Q+%VUroCd+oON{;wuyQoXO}gS zSVA?+mEo%!>lv17a1>jYqLD_S)N)dG739@&j_-RHKY^&@tXE}7w(9C_^6bB#3XP!} zRcICergNHMZR9dm(cAbhs$z+Wt9_y;OtmvtlWS}#HZUC5pv`Bz-v1V_VkDMT)VEaA z6b-EZVpa<(K8SYzCMwF9S~gs9gR%b~#yh5VHLj>+>Qsw7k=OknkuCCiH6lTBWwpo$ z=9_8~t2i#NU)|)Y-un;$+W$B<|0ni0hJ0nMR#&h`whxQF?75`BE=>o*73^xW;ohasW;i98DCj z3TpSBM)IFlQTw-bM9;rU*81)wYuyKsmj@Q&roE=9S{KvvuVi}e|AFL7za`095=l1b zM3RR>$mVQ+qKq3$lAaz!56-1__xU7Wd5^fUi6r@bH1$j7Nt7MiNoGJUQT%?PNYuND zQs*Q|mZgwP)dHgQ_?_BqmXhV8FGya~fhbPXi5s+x=zS9D*&q8ZC+ieVbUjbrb+gD? zc{pk9y-k#<0?FJ7AX-i}l2JS%dc$?pwmVL3M?JMa%_M6>%BWp-o}Ry8`{iU4 zQ|Q@JMUkA@M0SR*B}$=zo)?CbxuFulG-;H(X+X2 zc6IGV?V*>+?}K`_=R~sBFNXZ)A>HO=FTYYds0WRP!ZxMg{>qX^{M4zc4na5b4I9c`yvXjz`WPUdix1Mdjg(G?3 zWUV&QGvycRk)Lh!qSjJ7%QjB}Y;WSV86@*=6zT4@{a*c>kW8!nM7j2f+9w6_Vzl)! z)AknJ?Lu1et>oA87d`hVsMj-pqG$gPq+7I~=$}x&E%Dyj-kPvZMBzu0_qkZ7@qQ^OPIuc}dNGOGDbvY* zwnSXF!$gUDgm3N$$NulEt-2#_cr8c-Y>=Uz?HrCODEqauLy8QPReHcY@;C zw~Xi?Z_;x;PAi=3Nmr6DZBFfz*T{ZC4rv{oNb(tSFFJWj{?3+r|)Nq&Ay6wfNMudN`<4rxTWSw!ug zI-@AD-)Gf}6&-ZY2o4}VW|l})nm zQ}SNYj<{P_lVqC)MEQJ-EPUQVlALWfd|I36!{!qGZXaqVI*^uM7Ewl|lJ590>V*rA zVpzjFldrn{sokI#$!BYcJH&y;c1%NR*D5Cqv+9wT*~uiCZ=)=+y>W|CKS4aU_0VSx zX?cwyO6#Na?D88u)yK)g6J$=DY%GpEoGdbwByXJ}YhRq``IBw6ti%x)??@N&QKXyTO_FyD$k)|{B=Z@UEtu!XhOnxr$;*vXBr~%;wcFMq znZMQ%W%>oOusWBl#q=hvmRUqm+1{^}?a0EO4n%K(8V)C0I)-$G6%^;!XJoB%JjrZ* zNtBPnh?1ov8L<(yU$-D@g=5LWuG1uAaz*t>HeF91XXD(9{Q}84FEceJJDyFb-EOZO z&x06YUS^Nqi$~5wcE*k(dcZ}ppm<2Sk-lW-;a03oGUY6yi(M#AgBLyf+#}tkv&iqK z#uOEcw-rUg=A@NvTc7`EOzqFMNcx{5n-ey&ka6xz@oV0Y){uwv+^~df{_z`eZ`37^ zzZ{_U&n+pcQ}-xxA%N`bM4~UdN$p-(U3uAc6Um%JrH9AvPj=Mv$mV(5jJnW{+JEC( z41ElyXwPh>=Pl$pyzJEy>buc4d*9k}00-Mj+x!X1YXy?bUqqv4r^nHN1=afc4W3Qh zQKsSAeL{(q8~jj&*C9{u!j{8idM6ztmqBx=jXUh8EocwV8UyYxN8Hi#iS1)xaptKW zpv)h;9CntvGzVpc-wJSDnZHLN`7kRcfVYjgHw?ynnVv^M+|J~U zfE7Qc#0q~qm`A92bN)<{2=xHw4lS%ZnVIA^knzbwS9UQCRIs_5nLiNN9%jK@SP5cQ zF9C>Qu8_@G#>otu2bnY{7(2vdK7-ph=HM789A;*W2X>TMITALHG3Q*NaGY8D3?PAd zLCf}|9GztfX~jLq2tR_D$`s&`#$8}~Q#UU%U!TLnWu{ROuq(`OYXCBs z-0Lu%$qZi!g{#aOnvz+}5R{3yY-W=MHglMLKY@6Ssc?p|T*jBi{|4ht$bu8CLEyJ#aGO9x%>W zJf}}W$%UJtR@X>38y5|?9Y&$L#B~&C!|rsIhOcuxHc^{B_V{+#;AIUUAzUcJQ#@S& ziZVV9hf?y`umx>iEn0NM1a@VFtq6HNvkkL^_h3SjfNf-wkr?rwOfF?5o0#13czJ`E zN#!sW%uL9H$b05dDgyq(w4H=LZjd|Rz2rRQ?lU3cCl8~HWT$+&KPku)Tp@W#Zd{Bg zlI6pSA$eJTz9kkxibl6{6YSLvr>&)7BJLKrw#&w&-E&eP)W&=}7qKp^q9tQ9Gx81$ z?qfC;fq#k_HVxgs%Dmfvm$;ny>2}QkNITZSpneF}O1|Z1FLbii60D(o>m@s|;bSWfin6Nt)!E~ZsR#O62(vMPis85%Xgum#5prQw19aqjdQ^9 zWftM^j<-Y;1c@-F_!bPuGOchX##FZSK+uVdE%pXhMy?G72G3&Udk1!Bi^Rlyur*-Q*Jll7lj%UXL zO1rw{(y^&$Z~6&)7t=Af|D*ZP8ghjW8N&~E!2peE5`~|Rem%RB&ta=xm%3;--WdeB zZe5A3)wox-6Wz(mm@b0?GQ24WyH z_cbKLnAW)R;r24#n73RwV_1N3JIJJy-XSJx2}I(UfT0jcWTw+;?F92TO3U0yW?ysI zOk>iTLE$`;Gai!Z%*8e6$#v#!CM0h#(a*uV$+%91LLpN{3*|GW&lE^LXG#Y{{T;(j zfyjI2>M;2Gz?`K#%1xePKrHU^Eq<`#A@^JO@@NZxs%#L|!?9;*>9W1**CGjS5LHt;IDJ=F+wTJxBU|NoU3g3X|qy!nb zGe=RSV}bu4c>a;~7#0@KwF5VaceSEFr})>uLFzQ$h5}0CgQ$0x`Bo_a*Z32I;p-0H zV>Bc)gs@SNd@C4Rfak2N8~_C$ zg&+pYBbvfyi2M{yyD<5WCJ^_^-BAMNBIFfR&)FxB2?2|EiC#bwpD0iS!)ie1x$~d+v#vcdp zQ5Za+=d0kq1-4z0co1NRV&EA_`YW2#A$+Go@d?C0#gsb0b}NDgz{4KJw;li?im1it zW~d?=Uodfd6}%hz7p|CXgu*^W7A;7TiZlfUujsTH!~=>s^z+6jri=s@s~Act(ji50 zUs#D#ETUr45k(%IZsHa8ouGG2v34Se#}#vEAx~5!T!G#RMY~+|C`sWJ3dvK7>m{&x zRnQ3UlHieFLF7oc3>K$EXRai#!n-z)Ba3y}|s*xx~{RFv<+=zdZ}9fRaoh20I9u2O{Wf-z?{ zo{|O^_EHOotY@vgA+mw(N5?RC*6%K?c(56@;N6q0KLlVC``aV{FZSn#09)8HS~9n? zH~)Y!A2y{Nz?XeLAH3~sE=9J3opv2o{8?)R9PMO-ra>f-ov|ExyV?7L0QRse>Hq|@ zQ+yFb2SUv zlGzbS;GJdH_W?*{$I@1k#@^Wty>vEn0OGvB&iw+(OYBG|h+Jl83E^rHl&w7)yh6544y+WhLzlo&G5Z4@pL_agmS-7se3Osj^<}LH?l2)*vEMX zz)B>SLmyNmb3eTTILrCRf_RRz`x}y}oE;r6&vP$M!)7{{l?~oSZshmiUE)srz-9)w znJNsKTnd#uvbn{yujFu2KMcWjZVzQyH#jdUXx-x0P?B_;OK^tBU9NUHMDB4$DpGm# z+w9QN^&#P8KFPeW($#4um#~qFi z@sp`m7RSF2LGbas9j)_6`4?dzCh+y?Y?#OkbnTGDN75R3iti+Xc!qy`9yXKt5iP(= z;Y|VHo#WL{p#GBYLc~}6hP}XE^OaP|c*9SjLgHJ#s|Mkg^F5D)_>OO$0q~yRRt94q z`7}C9R`QEuF(99Lp6*4y@a>uatKtvpAn7D@rqY9pFp*AruENewh-HIt?izS*!f-02 zc?h$AgWHY5`x5Xr38ihJuvs`V6K=N%oBKk~TX3U2z(+WH6JVQgk>=TU;jat;KVcxH z-u}YfN5BGvA89cT6bdx3vP%f50CA6yh0iazAfez}@Ir)=Dqx|)^d8SuAXD5b(njIih=K&;PoJWO=9RZFBo6}%3QD{fC!V^Mm zDiEF$2GXm2TDTJikSsL(9>lZ4*DN?XC)oc0VyfUZ6?*4|zo`C`E<{WL@uI-R!_g&S zVKTrK;q_$jGK2#(tXGAlyWl-bC@BNT5#oCEQ*YTt>n44WT1l<~WOgC=r>9 zxLX3)AP#v0;3h6ihR8;78f}=K;)X`h+br5q1dQ zmQi*YDIWh0rlZ6^XmvXvUilsh(W1`)sK<&f4WV#Ql-GwyoYvz8;u*0yZP&?S%vn0oh;6+GQS|B2&`19aJNqyTR>I0Jc z2dGC&5)~C=rP2<-4oWdU!%CbqbRNKAX;&Wf;-!aF%Qz~{`~k${(m}dcNRUF0Lhpps zY7U4erH^!3cuG>c!R={jawB+1mb$1wJS)9$0(MREI1FQVrCF36K9d4zpMEZlzXrEO z(pO4?izVq#fD)->E@|JP_+&ffon}*h2jvX=R1T2L<~D=Dvuu5OC(f}G=(v{3&Yumt z7uar*uym0PrL+7ccFPe+UST~<5XoR~H-<VbAOZ z@fur56^dN8;|^fg*?xZlyTLl-!rx7H{c0%OV$b%2qucDOhv3~|bLk%LE?aH@xW|6? z6}12*k1Sb4~fXpez@#FltMJ&)CzAd=7K($f8yeMh@q0lSuN1D>#+F(5u; zZ!?g5&Uy;)P{j7%0Mo_n`gGVVVee9g_<|izbMz&P%W?eLtYZX-rR>sW0I%6_O1a9| zXgce@WiQc=U(N;$23Engp>pg;whIs9XEx9Yl3&=tlBh zF^EOnDjJt!&Pd5b2{(``%P+WAlc4vKd$tPLD=st&j!HRCT$*sNxkaC0`VHst3ZRTj zprY1Wj`<$Ea&C7WU=>_9+Roo|&H94)ft!^Mw;#FuY+#j~oHo=?97h|#XKs8RB&)bj z-tgeWuRjFf%=e^gHy6GY-KV?q?G8a?J%9E`nBKr|UJMa8ei_|;ZsdpH^B&HVkEfk< z6R#Wq)0_Fc$pBuw-UE_b_;fm`dGpJtF0_@;9}g?r_$P@F@#PQGOy16ap%ZTa|9ww5 z+Q|=~jX03M?gHK}zU~Kj*v;3Won{ZupmNLw@!3Z3g84VIKn&r#w*oPg_jw8s#=Fwy zzL(cIffvJnq})7~_p;Ud`6bcNJItSG0dRzOPJl=}f9eSIj`I!1AkG9nW&;!w`L%W+ zCh=`!AbErj2eDNxnF5-R9fLF|qpu=qm-&O>8#gC_fEai{Uw0X_@bOQE=x1e&v&!cRJIDe(n0hQ z+*lB|3BL4+gRkH`7GS%u`vi!7LKaPp9YXv5aO5w%9!e8TaG@M#r|>>p?F}a9#nhSLn13df`IlTPQ>b z9jWrLPuLj*EK*pUi{3^FW9c>AFGxEec|e%c9pI4gEC{?fp%uMHhlM%rARZCec?dpU z2>u4(nDAq5csMSY&w!U8%%yt5Nnvp}@REe2F>rKB=t+y*X(8kuteg=tRlv>)wOkN& zim=2N*g0X|Pr%L#-0u)c7go^u@PhDyYJ?Ysa7S3VB#15u@Url95EQNmy{{v(Oks35 zB(DlZ6ib${mriKeLg@_zks~xLf!;O2laBJa!t`x0c3m*jVe^Kt%^8xng?Ut5x+9dI zgO$62M;}`O8zJ&asM`^sRA?9p53hwU-r&6v zD(OSIa=~vV6e@)Ablv|>@T7r!FMLA<#}7hf35ba4T4iiXEkygn1W_2SEcP~RY4rHX}zm`25rjiLwLAbE;Og|MiOfo%~hIs? z5Wmu;*G}<0ol646Oj?C^i6f{0v0Hq!9M~T5RV=&*iL0rw7Az(@AnFjY#{@VE72W9N z3KQ*`!^&PUhQ1sN7Y8ncLWFq22=#s9BuZ~1#o!RAM~NeUfusGR(^y~!#CcTIjutyi zf?ka1PoFBqiU#WYK{10aw-1Rw&>9ja?x8ZxVKIZsvPZ=A{@}%nNx3j~R6O4n3dh8b zbbozZ>`K!#L0nIZRigOuFt8Kiq%9CRDL$Y#CrNBb^{!Lmq9kCaMSUy8az^x~EIwK6 zv=P`@(K`+vQpLk`f=Lsn<-y8%aa0TN(naSDP`@A=X>+?Mo{fgcWpN1QpjX7xEF?2T z`$8DY6s^AjyDE03Br!(}b%e+@(RnzCxnhfz0N2GTN;z(bXDVR&rZ}h_uv=oe1=wwI z`ZjpDBkrk!hx?+8>Lm}vG4m1iL$Ny@$sdUaBw%@>gAerb#mPf~Jr?un3{fB!EeCia ziqpV*D&9H=UZL3O0gOEp9YbLHxfn;;Q<13r1E!0`J9KeVB8qes^+KGR0KJ!@AAwh5 zEX|%$F>5juUW;$&<$5D#?}D*1v1t$#-inH!;h|iN^n^%-`1K~hJ27zpB;Si|f)VZq zu^nYyA4Lr%`jz6zo^bm~+)SU4eHQcmVdabHKxdt=qDy^9R*9_(Vbe+3m6C2}Wph_Z zx+v4B*y^fWtAfIM<>3^FY*0?<1Y>T>*G2$$_fliCgluT zQ8p{j(mBCPIhOW-Ey~t^gSbs88v|p$%5X;nv0ZtMR#QLalYVf!L-~mka)0FkN5m4K zoTq`vPNj7SOb05HsjRR|DW{imxAGn?b-6vtTa*uXO+iVBI*>SE8TLOQwIG7kg5#&4#YI&x(rC3SH`agNLNOr!{!C$YWe`> zqOu*W8kdw~b^yDq%%J*jhBBRoHB9KMp9X6 z1_4kHl}uCu2$LqzP3c}KY#og4m$qL;NC%{wCMZNp>nIzIk$&0$$yjOZKu8{xiXH(w zBzZ5vfW%2>XdOH(jeQTjBhsXGP>7d$FM;||DW5)NIVQCp0)^vJ_yX_}q%tbGpO8M% zCHzV05*1OBB)b`qJS}bQi6G8Mi(+6pSqck*zq8Vy5#Xgr1$3Q#PFhIy*fc4JN;u~w z$65gCQZHK8E=ZTp!t_Nc`7YEiN!CB%;j;8S6{W67f%H;lNR6q=lPTS#-219Dy)PuQ zq^>Iga-`*S!n`JJr(Zf((k4OVo@B~}!hOj?y?r1(_XBt+`9B2jku;zRvE)gWgJ3#e zdQNxokEP3#z$=jK!w}L_=^ov_7fQ`~0(&N%hy?GsG<-L(B56c>=)I6CXpeg-31JwC zSJKjDP$-oeTn6!tG@FVN_hlOAzh?;-aE;~5dnUby5s<>lp>Eo z@{^QC8`x**ULde9lB*VuzDnoML9a?WvjqxHsx}kR6=&6Q`uNO6b(-d&t15=Fg!QV1 z--Eb8^=1Ur-BisELegDTIvJRUY6LBn8&%$ve0i#zXl>o3T0jfnW>qfTL3pXUCLxwB zs)%6_@m8&<4Q#9GO)MmRRNV_(Xs+2AYE~-XRUT{e@Zz)V)RxND_EJJnrIe3|>&gRU~>mX91T0}|B3)OeU5P78v>;tS+WsQL3YZZQd%w$yq+e}t{m<7}2 zswGdLSD`ve1%`L3&^|EsUNwLeKB(%_`Jqzvo+^f)RJyBB_^jGbmsMX>z1BeTt7-tP zkxuHOp#aWm6V*{%)FVd2t*d$gUHhz8Z=w9!T|ICbFc0OtL0{mLEwwy62Xz`WI4`(i+R)J@j{+otw=0iLfqnzH-t>d-2Laj;Vt$fp}bSI5Y7d2E_3=?4o>dnWftaH1Oy6^yQ=g=nm8yP1GwZzi(m=$LuKr3F ztryhe8Unkh9z6o!lKNs1B(JES_JFYr^`_YXnd+u3AbC|i=plGn>i3HQa@1KgiLR-` zOc2RcpICyCzplE%RJg{5pi+14MR;O-)`W+aT(Eb>9?-6sS8>!t+G!z7%>-)nR)OXQ6uTPS|{=PNrgUk-Ad| zh{ftkD(sf1?Iu9sg}UEZSb3>-IRnYp>Tlzr{zmf1FvXzu!HR-OlMhsJObn7`>{8t}ihUrtQ!|1-#0k`VLv^WLnx=;U zc59Yy!tm_TL{d#INF!0fEm%{Z?$5$B$GbscucnIbtim;?-vNuz^tuDyK21yd1TIpu z#|iz5($p$~-hRzuS|AQ+CUOAL8b`YPi_!F=oIO@Ej;=uuYTgDSmP48bjRE2`*XZ8n zux2Bj1CD4KOn}XJ&05+mj%o%_iRPH*=fUuBT+`?_K!RrS-!Pr1NpAy@6PnuO@1&;J zDDaXr8>!H9O5;p>z-djf6WpHB6w?Zptl3Wm+OwLMlnpF)1I2G`9=oG9L+OIg0E}l;H1Lc(1g-$+D(nt7vPp=^kw+Ftx-|ldPmcW zK3KS`xj_lRJ zN!#u#j5%v{w9dO|IalypwUgt4ZO}3Y0o=3`QvlqxRc!%0v_nThVWW230jPUwz338s zlQyg`u+7@Vv>SS92UAsLi}uL2{e+y$VEM?FcG5ZP#|% z4M{(3{t}qpq4gLANq=oS%8UcFtLVmPr*`-p^dV3?o`Tq=?Kv0NZf#j8czd+Q%kUSZ zT{;#vgSE9<0t?Zm%>fpwO{Rq`OxumV*xIYT<_SmP+WI`O2(23}Wc#$5wr~`weR&Of zQQ9(kwfAdVQ;qY0cEuiG(b~xGpb(?|{uD%FwPs4|4{DdvH}{9MFY_T1r_JsHV~4fJ zy8=6+T|~DL@!CtDfF0GA&=&v++DlYLP1HVLh9FL8JE$RYQhT{Jj3sG@Ed)5Fy|D}; zr?u=`U}v;{QRzQf>r5wxv)YZBz*4kg5cJMzgTjHOY6~KOrD+T4PW8O@4t?2@uHCj4 z*ahw5#qfSn`#s%4UDCd%W6Nc2SU5af(dxeiF+)3e4MZ}v19w30s@8rCK$g}i2OwL! zm=>KJt#M#{t~YdQmCx zuGaBSxV@*1T?fhg+QCy`^MSVF1{5A@B}y_LY1a(}FHc)WmnZq!?Kh$KSgWEMb%FND zPWXGG)lwPlsrJ)Z1W~9ROj&G^b{0*WV(qp^5Gm2loCoki>qVcfywqNx??7H@lg+?N zwGolPUTd4u#rzv>{z_OW(>`zpc&lyQAEwK-8ML8PXxmSO$U7~gg5G=WT)G$ipxy5d z-bbw;t%{Y}Pn0=+(pqQ2-)C)FIMlyrr&U1jtF~(oU{%`Ea}aUT75)OuSr@B<6&KwG zx+`$iHDbYAuZyOaa)WLh-EX?-iswSzUH9=>?1w;;JucdP{Jp1O#!z&7cECxEwE zS9Jzad+C*ntb?3>$R-Hs^h>tGA4!mu;llZ4FoUbmGy18BV-4{su>DJJl z@DAO@T2S!UZKiW$fX+hGW~WXz2)saDCpwz!(kZEG8=|{S=gm-^E2WHKx(~D)?$xR1 zAhK{>SSlPv=zgFg-ag$Y0~Ge_jy?wOfKH&hXou*13vIyfBBHMs;3uT#?WKC1I?4eXe%jJAp6x^I7mWPa84KF z3@fR+&nv)7)3xgia9&ri7Q}SjUFzlqT~jJgUDTCQ@!^uL$!dVhIwfT+S9HZx%gfM> zZVfC`_i`qJxT&A>-z`v9_Z>&X*EyxCly8Wb(7P8J=T4q zmAycBp$y=O?$tJ!eyZCc&d>bcIFvh*Tdzfc$}){UUow?y~I0^$o@ zRRid~(zR_0VyW(9dk|mi+R=sYTOGR<>gBpJI%rnt`t^XwJDtu2BJXt{D8c%mYfXo( zk2>{YL|v&Hm;&%gH=b^OKI<~}L+^{u=n7+Bb@Qi#=cHfL6Fg^qvo63~^!ZeEch#4j zhU9wvcuEr8_1gOMW!X|zFN)R{e5Bi`hUixg>`@QwI>B4@i z{*VtueDuA%K-{KZMTL1^z1uIqcIX}Mg6FR<4uXdO{pcM4JN2=JAO`B&)55t+Urfic z-TISs0t?cALt`DR|A|(V5d9G=c%k|%I^%`u_4NTF^iyslh<*A<8na0K{vik=O5cj+ z*?zrM063uknM&2sdLv~CF?t6&+sEo}S0JQ=`f;ydB~I^YfZk#K#Qm^xM1Pr%SMmBd zZ|EJ>x26RtK|ebVdWm{}H|U+v-=|4*QlD}Q>Ph-~!=P|VpBD|{Y5i6@G$rdDsit~X z-*Po& ztW15UN?=#@?Si3@rJwExkgXrJ9D3LEg>)mGtA9c(!*#tg74dHA2h-AgTfborBDj05F{oA$hm#=^S8`K}`Gw4Mq&^Mt) z?ukBw_Nu4)KswYH>aR}%@tNN45=2V$3;qJ{h5oyKAimTG_JgBW`a4U3mFjO%vG}!q z5cThken>hb%k+U$VdbrU;a9jV*Vm)HxI$k*Rk(NhE;2}d)W=f>SgCJ9pH+R*AFK`H zXZ;BJX6lPR^E@QK>bp@jtxDg8>Mu@)twq3`4c%xtbTN1*0=OEQ&?~dvpwK{MgP|>z zOxz6fX)|><6pckJ9)^pwC2usi(W>uh_&^o2O@?~(f&3Q3_46Ql8`gV4WUIl~9#(t| zInP1dW*D!72VaBZ-ym)`R8b=DXPEr}aqcjD*Atk(q1#UY0fw)2VQi*N-riQ%!ZBVP-xg zBMsq;0iq1usIa@=(3{ex1BO1WAsKC0O+RXkVLlx+V-06$IXq}^Zvx3f1~v)2IKv;b zZyq*uq#yi<;o)lZDBh4k+0#+O0=k?%W>`2Kl8J_^7lEBHGHw+`LLE)w$zX`&(?@MTV!>pipcWO;ywq!@;${UKj=+0(faSM4RbrLpI%LzA=2W5TML3 zr4;IK4R2)Nl^eQIxD|#4S~z-VnAimYzBgo0&hWvofR^o#hH><@Po<&pb6}qgBdH|& z*|3rFo-c-L0RUeOnuk!YGSuAz;ACt}r4MIg6D1^FjNj3R#2btPr5tX?_mrHt8yzaa z^DqX}KE2U6csqEW#uhp_+GGr%C2zBFf_`d6cvJ8tZie*ltv8hfP1@?@3VKVa(Nl=x>Z(1uW1gr;v6Tz23sgZewjZ#%zz# zfgA-Hr?|sduyH39b3%+${DFlU-%-{TW-P4@D|?Oi{{$9pEKmZAFdhko$Ub8Lz2T8Y z#tnK=MkhKI>^JVMLJ$XxvuR#O8=uz&F~+E)TZKc$xEz2uW6A=6!^ZKnu^%yxy#a-I zqbFruM~y-6!8>OBauMMkH#Vgp5{#ad#v~diP%YtvF={y!P8yF=@_gFZi~fnh8RHl7 zo^1SvPD^KvKWfpx6k{HpNzNJ5X=6_{Zuu3&G^2qIz2}WL=(Ln>te}G81!MGCfQ!cN zDiALjZ_+i{W#gZeqg*jo(T4>Y#!yQ6GmY_d(RkGu+Y-bqV=xs-t{KPB4Qj6Of;X`1 z#wyB9Zx~DMf!#Fv&4a=%;}fdu-!^tWgjntv?Hhx4*LbWOtlTs1?gf$i#wiklcwoFt zcS{eARXG5UjM=Br={)0v7=V0ZIGz6<8w<8Wy}(%E2I3QAqdox7j3elr^W1oj%KJse zzb?R0v2ih-@k)#jDb;*oyia9=mqy+d{$3fIHGyQQF>4GYUmK6p+wsQu#1SH8#?|ys zyWScLX|k6a_a{N5!dUAzJiIgRqB-&2*q1iU55~ZcAbvEqpnKoX#xB1@@{94qRap6I zob(4ItBkd2xpy+npAF2}6hIr8i|JVih_0sBMTlj+DV}c2Hkb;^fVr8v6hhM7G{Xwu zVd^y##Eqt-5`d?v&nf6_GI2DoH=EiVLJ(di52|BsG39QBf{)2ed-yiflXl?wnu?ad z-*!{#0*LsTg8D;mhbd7D5r5M;nr8u~Ei7#AG<6&a^*~ckx>??3x-<~H-KNX5O$3`B z(KjF=rnNL*LQUpnHXhy$U$Vk zDf$e+0n@Hb@S;t(f?+epWd8@SSkvpZ;2kvSPr}L}(13PT`@)v9#HASt1 z!ZA~=ZcsRGszVD|f+=|_0!%dN<^nrmI^P1|r0MBm7)vsJ+Z2+gOn*;-$Z1m}AMnnY zLG9OjE00!MkcIbpn=Ua?1e7HjSzU$sEQ&(qX}S!*O0G#% zK<~QgkA?s@OkKW%-c3{IPy~3(G>YDb+ooB60J~$dqeJ#xQ`s1(-!ql02k)V2Ya4(^ zrh1*h%QFq3T`k|_A_9AC8b!y>0#jW&y*x3Ur=s>#)8J76g{E$kA^FVIo(kU2O+Moh zV3BF|8W4+3r#<1X#1xzg;tNyJLqz@3l(`VbUYRb@=$4u$DIodU)c-!PFQ(lzo?lJ% zlOa-NT1oTT$vk2PFlY198^B!5k(A`Sn!nN!f4#Y^2fzmNTl!};Ze~CF_}bm<%8A|9jnSW{wf1AyFXbj-e+io*=Exmz8)_a%yfAYd{eFAR&1p#pH#^bSQxWC} z6RhkrpO1xJq&bLYPn3DfJ1FcoN72{e2h3rVSw)+RJ3=JJtV{tf*4()_u!Cm1`LJ@x zyx9R(;>@pTD?e*lN!tmtwgZSK&9mMC zB$?9_p?At0egmdYn@^>Jc*dL(4J*m!N-A!iHS?X|D8+nWI;@;CCocmp)$B@#rZjWV za44KNpQrC2(#?9B>=(>icYt@%Je|tsm&^`-fOpy4b}<}Xfe3h4&AyZ?W|`ggLm}Jz z!?)n&m}j%_cg*g-@5V>KV(E+@h=BdLF#4Yo2nhdwi`vwBsF|Ve> z!CkY%8A#qUx1oZ~ee*I(upXFGaseKiM^pOq$UKnB=6UA0uCS7C{*mhQkIjJx!7DKT zPG^}X<~T~8pPJLG0EK2%Aiy*8odt;Hxp^Obxmjcmpo`67bEzBjO3bxrM|fe56QKUm z+-o9uugpz*0V_2x2?Ka-K2FQb8*@4x#LCP)Xo-Dm?nsA`a`SZBA1cfv3Sj!3`5E0T zzc)Hhpt z&>7at(wzR;$rj52THw7c-RV<_t(N^a0DLSz>7cjGay$XR*Ahxs?b|IayukCbtfgVy zVfjkSg}>$DYVZOq>}y!rX<0~@`GJEP|M$R9yH$YM{$hhWS5-r$8;3SD3&)RHg> z-oq@xjUl<$a*2m}xaC7vfC$UJ2uSX;jP3@#NK1hM3Q?9O^v%M4OYBW39I(uxlYX@2 zEd5k5mP2%^i?vKn19s4Idm%&)S>mZe5NBCTsq|sXl3q|hV#%QcK)gjx-~Jr6m??2N zW*NU7#N(Eeba+j$^#2W35-nFIfOo>OU@>?nEg|u+nPfRm@AN6l6(xA5EfeW5a>g>m zR-UqS8VBsGWi!3SDVD+?VC9^}o~~z7EvxeZ(kvx`5IJvoI3K)p%h)5pE?Crqp>WYM z%?ZRy76KnQu`}-k1XF&^(W6V;VyXjmeHlqdu(|S4i5#ET`WYNSjKt*Jhd!Z3s7iz)C0U{ zmSw*IJhwD00VuMtbk;7mI0ONdSh5=+mRFW#!vRVy&*?n<+M=b??i!>L6 z)^a=o9V@pCdJL?>BFsb(?=0VRMiB2UGrt4)V96Z`@X>OJHlj+)ewqxQEE6a@{A}q$ zukRO2bNWc-tEC_fR;ny5v*5_d+MjOVoULOHLC?jycq|lLt)aB>t+#gZhs_Pv{yqS1 z*0(31=WdHCo5*4Z%t3D!%u0TQj* zQ=xalx`MuqIcW{(4v=Im=>?l-tj&Ldhh%Fqea~>#TAOm(6zl!w2=| z5A3SdDHsY_)ue&cfy` z>pi-cxotf<5#Wy1k6!J&)&+LJ?pgb{gUEerLrO9pSOXKlduV+dh&UfvZxb)i8n6?* zeCx)2z#dzB(7#J7u+9sC+b7m1?LmBMZFdHGh1QvL)_!KqONHs@*1tvr6j`rONX6E6 z-=GgA){bvMd|_2JgWgN)t`0Ev%348J8>LoH`V{N6RY_fWW9_pSdS%v|i{R+3wdfr{ zxpmt&@K9k*ng@}0)}MJ;`DpdJ3H3_rnI{nWWKBB&?6dU>{iC`s*5~b@@YNbZ{~L}f zYcUmeo$P+5rNr6pp))WSyKKs#UF}xLAi3VI0sZsk4R%*Xz`L7WF^!^>hyKv`eRN0XEsGV?f+u7gq=U^R`<&i;) z?!CBs-)qatY-pvGWtNp@%QRCPW|_&74GxBE5RoYxK^cN9QBVX_rW0ABY*3W(d!OH5 z=XLh^eE2-ibH;O(5kmF*VaBL8fIp+87rX$*KT7xuWU%N8We_7!2`fh!UrhrqnDMeZ zBtsbEwBAD*bDKa6V=R~jES&Ko4VWVs;n~0<8L#MJC5mzF2Y_fspdW%i%J_|b0~fOV{o)xJGa!<{@K_0jM8;N13zHb(Vn`-4;;3tM zf^jnxrc)ScpCgD=#(xeFNn`w?hk82WYYvDRjHB z0_$W{ixET@BVz?#NH^o1b0FShWPAXuhhd0= z$BbWuu=0fQCC#$N8TkL1uvQp`P)JTPgmlkiim@^Tm?N|OFJMm0N-ubDX5Q#S@Gi{6 zasXFmAzhZ;&-|M9ayRBbKCt4>d}c8uJ(z+&;lYz>Ne9u3={yQ!-b_BVI(?YN4G6-Q z*+4arA9Dw_1`aTZ80n8d3Yz8uYD&akd`7^a) zjxg6yQ#+X1dI(lRn4<&0LYdD?0m7II=?DpDzDS8#1ash5h(t1HWx!YzQ=o!KG_&go zz)@!B5txo)9-`g*7;_e#)3MA3O5Kk$TlPRbj=6|x%6R5^8HfqY&m&+uk-3W6Xh}>% zB#6n(=Q03JFqhDtoWlH@j)_#}EB<))G^SxWi0RBZMX-{=e11A4GnrA8*JUxEc@D&E zW}6HOCz-={0dklN>cGoo2GO8DkNF!-aPpZRufc5r^C}Ia3Yopr5a$`@I3;F9%x8*W zrI^X41LZ7p+9eQ6n19hpS<3Xd0IZDp_f3eDGnae^tb$pm0`DC2<@HdgWEv>=^UPnV zCb__zuK}-$d78G1YUZ{u=v`#4%>?lhv*s{FYMAv}fXmG2`2e*{?JMBbF?}{8_&B!GGD$6)7O|@UqG^fxo`oDH8T6(fMgT%6S^qX%zSqc#1^KIBwLv!bT8pL zGmYArH<%w%*?E(hcN@lTF@OI9*llL{Y=Aq=Mgv}J8`HlQ#_lqsDYb29*3hpZI+&rG z5qu|e-6U*wF}KkE(#_1Ip1?h3(>kd4FdyWBcc1xC4Df&%L<5Un=BL#E>|@^l7N+}| zjGZ73Fw;JO$RKkUHJyf-ILWc%nCq!8HNyNj6=0P4EFB>andX@={fNn>S-}`nLBz+* z_V*$3g!v<-h2zXmOTn99wy43IWERkYImP^#+Ha1mEhYdb)(9wGs(X-j|wvV5pw2x7Ut1<50<>9p{IS+5ttSO{yz z$KZvsLf61;7_0jp^uk#SpMzusDsdMxWhn$jF+l@&oRj&=4RKs?J#4WdL=HXXuAtRm|EB(owZFF(P$&Vzai3;*j7 zRuwCTl7)2E6s_V6mWXbAX0raFo10mz)qG$lSxd=L4y%OH*Ibr6O&m_KKKBH6n#J1> zy?oX?H6RwSKBxI+AQKGeKzW;v@M(!yHXfjC=P=izH|lXU4Rhs>wBs< z@3XQWfY`^%sRig~wafsB-7YZdgyfa zE2kim!Jhm76BYK4)R4+zk5ZDK%{EX4eUiN>7?L^cKm8$@%U(!1!zp$TU2!_i&UgkO zkNso^Z055q|AAM)j=lh5A)80FXc4>CAL_+y+qWQ|We@)jD<$k!TK1)EJ$)f%Y%8@) zD%iF2VC5V;LkVIfJA!t_3+#JdP^e<(9Ea&@_Uc){F0vE;0`C&L>;{N6>|g^FYT3O> zh`Np)m;#Y{c2^gSU13Mjkl-r&90%An_WNCkrGc$D0Le!7uAe|`V$Y?Wp_%>52H0$2 zuTFwOD?8r^aFd-zKPA4!K2!pc+w3M2z#aC>^z*?swpSL6-DPKg2`e4!*J7d2$yPrP z?_KO~sK?pOmQqS}kNrLM)_T}qQ2qCS%?SqRWgnNoN+0|1PAK%VfA}Aa4X{~t2x5@! zwGq5wwqFyl5%$7wU~H6~Spj1Y+1CnyJz`Jf0~=!>ehl>|>_2EZjkEuwf_Q>God%ne z>?6K#G{ydt57UmE6Li8lb5tx4T{t;AfVpydXz$t28SDh+#yLY}r#okidQYC5SrX`Z zaduI^$D30@wXY8+{W47Za-4jC`Ei0yfOn9yz5qcS;{4_WD~CDn`~u9MqoN5_0B5KY zSRm&;N-}~uQ8Z}^;XD@sN1>c4x^@%BiC6{6aLyFH$Ow)Tbs3{Lxk~V&InOSH&7+)s z{ZNnLRMO%)#@YWH6k<8q)Le<s$O6tr>Jt@mexZ5Q8O}&3yccoyQERoBGf2N{E#b6W2Uf~? z=X>zVIA8EVEa#k<0fh>V7+jDM7x( zd1(T~%bd^Xj&3byidIJ*M?sy1dQMt5z!lD^#qe;I!+#N217~43L>f8WrO<2QY-z&t zHFIp$z*;!|F0j(dss9$(O^%js(cI#Ex(JSLbFzf6a+g!F8S3qvULklLoFqzLyEz5a z@w~^mMn`!MC;TLcy_}31nC|1)4#RCfXOt?pAx``iz?`MDCNA8~Hdr!mI) zXbwC)=1d)hu?fyJ+6yK*rcUThaeg#I(viF2A|#!-dy8S(naiWy&4t^r8IrEtuI~Zd zxGb8|xO1;0LDGZUHXYtQxd-op=f(XWonzkI%|lT4;nvdk>C2r-f1Cqc4%Ph!xnKMP zn}@gqKHweZ9$f>>pZnS-s0VNtIYB*;8%za95V!0Qc){GAbTEW)(_RNJlzV>xurO{t zWn|%8PA05Ga34@=8_7M`28AeY^>jEo%AJ@CUJO?p4eS`Vk~ZU5ZgwibaqesX!B`yk zy*TK_b01L)Dv9f)2bRoD(gB>{)>D8f-1FX0Nag-Txqccq|5Zem&h`EpjxxBz|3NQ{ zyPvA8Y;HKc$dg>teGqfFTAG#Ta(B>nc#0cFpWovHS{;S%gvKQp`9C4i#R*Di^)+Zw}NJFUEK9FHMz&F-VVtg zuJ=la+~-<5L43eo+?o%;>*H2a3Ea>9gErLxu0O5DA?{5&Erz*Pn$nDLS5pNx z%KeJmKIC%caP){fSPJ48*SiNIkGU6K02t?b(%YTjPN#OUV|Cgt9Kybh}P4)A;q103X8X;5{DxA8;7a+vr25G4J1pT7fR0leG4Kp~L#BPCeD zyjnVFLwFmWg}+c9{}?30cz(1cg!5W=KqP|qD^)g;ytQHh;Uf%gIp#*%paX91FV0n;IJg17MpfE1o2 z3&d33^oOvL#_KNtF`ai@4q^uHb;=I2cp>it%jUgKt&fwudV1G6ylJ$X=JNjCgvd_u zax7kO8xa=XMUr`B-|&-_2Qt>fLh31U5u`7uPU@ZP@; zVgs-G|L1tTMKlg-;{8CIKr=6A5F#zSg1Nw2d56OQ+IiPo5m^Us4{bV~yhJ@rckyOX z9nj6&M9rLgyt13XdU%YlfZgYn&{zI|r~3$!y*z(v==bq1_W|qYwO<4n;5AT!HOPBu zA+RA{^D=lC;f>m1Wt3;7E7}ivTWGs@#9Q(&0vzM2&NE1e9zT6!|7yi7L0o?d|sC;zi^Ao}I;FqQ0g?REWP7OKYurXAHU}*@DB24(3I^EpIHxZm_PM3^!)j!P5=b(l~kbw^4oTU zcZ9Dj0|@57z73BO!e1Bwo1y#xT1R30w|~K-g!4ZwhRq1R>z5FTr%T+I?nf}fkhnu5asOgeC{AX0)Lzi_C$VE6-1Kw zc`G53%wJ7k@(F%w0YD1>#7tO8<&Uig$l(9^BNQ_EGom1w#Xs!{kj;OCKH-ymkKe${ z;m>*%rcd#iw9}sE|J;N)^Z1XboXh8bLit1i|J?|HLVg3yABy-hXp&aU-%WMgS$>Qh zpp>tA2_j{DBh`52{ICg#RPZyXO?Zxfi#j}&{GdsI^Zd83Aowc&Ci-@(`M;e5c9H*t z^1(}dA+5$5eizjUwfv9ff>+019S39e{6gyTU*Z2k1N5tW7y7$j<1ar3UK4+Unt#pw z8MNuN@IREpQ7ix2Kftc@?@@VtgP-yPu$%lVR65_{N74(q&DYR4{SJR~IIuSUuTw!Sv3CA-N+3J{L?AsrI*>L7AhVEGM>`~}Kg-~|Y-(|x``fpa1hf&{P7 zQ1^)7P#z)+7KBg+7$OKufMlp(AKkhN6Re~9C|nTp1we#=@j1Ll3Zm!_7bW;<4Ln2( z{`?1eM+FWqKqN-6f|AQ)f-k68juj;C1o5~an3^(ifhT(Fu}f2Dx+BJ|D++^OKdAlRsc zNR^=E4)m%8KTHXr*ybt6=Rlh+G#aXzF}JaP>o&z9kr;{^xB$5(C&B zfg??*+5`*R0qzQ>MM0rMV95vQ6fB{7tV=LTDQdUi)BkTv3g#??=^nv>MF0;37kvPF z1tJYVpWxgmV(AyCcSB)7P()wWpkNW*I2#r?guugy;6NRSqk=Em@F3rQ#897lxfEZkHMV=ltE)CG4HI_v^*zfjGEKR4lB z1uzd`K9yyjLYFvL@e+E+Lfu=KJ|D(>gm$V5{Dc!b01gP_{({~?;fwT`hlFRS3vgJ- z;2=(aVZj#Y1qk0d2Hp`Nhtj)X;S!ougb3#-;5}5h@IDm6gpUQlB7`Yh03wClPXMBX z|IyzzS~!Oq*GGk~TOk=EEIS2Wtnek;RF4ZEP?s@IIJO8P@xqk?m`)IOdBI2Uwoa_!+PQ;Rke`vrsrf$=4ZSM+E#83FFQqq+(%f10>H1 z=Q+Vxsj!wZz%pSj4fD%|Ntb|~7rwt3dKZK`IrOT8%ie}Uwa|VSyodYvhPQnQUhw*arSuK<3!j|_w*x}i z1E>!Q&1H}r5*`eM>yatpM?naONX;9}|`qf%jPW4HcSC zgj-ku8KmyEUJDE##}@zDcy1v{Z8f1 zevxq*h;E|PXMwqkvKZibhz?93Bu~*&0gQQx9BJ8mi?)yzACYr4Z2F2g)Ry!U?eWL+ z9S|{SR(Dv$Iu1#H(ViJF79i450(nGqh`R2Z7A|r<0}vsaL8*JBXy#ow zIw}gMvoS{0c^4jziE3yu$B7F20pdk3(v5-y(TjcXkSr3=mA@0BZb}_eM8Q;6r;Bc+ z!Agc`2OS}qqW39HJ1JTf43Qks-yZ?wie_(yNSAYK&l>j5r_T-u;lBl4xIW|u{+k$99^(TeBbwoas=MqRyV z31#V5L=l@Ha#ggp2)t{eHM9a6L^bq5H;Q&e!%CBg7Xry<(N0PPTSUA6g-EMtJuUR> zqMMZvxg|PGW2@UDM<(LDBf75vXcH~*gO$6YMCt;xi}rXyvO~1~6G(Q7GHU_4MXylu zbx+hlRdSE$pV#2%zUVtT^dE?rv{HLT-_RetPqdB;$$rr#TGKx z>jsDtXHyR_M*RC}s2>v_pmH@M)0!4zZd{=#9=~!Tyfx2`1_p_PuzfHzSu;IxjTCLh8geN&)J{>&`>r zinxZ7;HzRgt&T=<4tZ!2OMC#D#RuqvzAip1gUAgrhf=DW;@{r{@s@b+A%NTBI4XDU zi09Hr+avaI1h_BmSpa_z#6Qshp;xTo0_zhmrj^q#uGt2W0dc`IcxQv+>y#x7iQ|3- z7#2TA>BvK|FdzONiQoAbdSl|g1t31g6M^_de2jXIWKqHp)Gr1K~6{3WMcAsHaaUjavflHX`A2$DGe|0OX=@^uhH zB=5RGGF0M7P2Vs{7Jbm+5-t+Tr=ukAJOy5~Wab)3#z>C*36W!xv!B3GtYqyE;KfVo z=<`mHWKs2*DA_@!SEdC2`2ju@NfQ;)*%Cz|6i!OoD9O)}thxn|E2;8@u~U+#TJY?r zB_4l3y+HB~r6Yxs#RVXqkvvcXE0ToMFHedkLK<70l`Nv}d5NT^5m>3DHXEQ!vY+;X za!FPqcomXGhvDIzXB(EMpxK$EIBm7lMVgrF)lmycZ<&tD* z7bI&W8!2hKEa{*IZLMVaOi0#AX3$u*UeZ|%a77aQ6hy8{`f0nrCVBZifCh;R^@$oK z@swmVNuoz!tW^@W9>g0GV;~~CDdE!q;g;k>+FNf+8ffZuM^Y0D&?b3C1iiZw1vT8- zC5x!J*(uTe39MW40(H9YNfy!d-yX?7mw?@uuxV*OkOa>{oV^l76Rh+}yp!?J1Ck&1 zLu63$F{P+OlB`_th9zkSpgtmD^#Y7aSl1B5LrHlABp*x4_rTZ_$+c)Gj7#EY!^)&2 zvk#I}k~e0;k`!s zFa|d3q=I$8>ZM=N82*YhY&wY7q}#e+r9o<$4x5eA4``cdlFp`HWwX@c4)3kf+%)K2 zm$u#l@rHEs2AIAn?HPpnEvfekh}@Pk9s=Bv{&@-_ZBpNtVdbv$Zz1$Lq?_rZ?UZ`D zfY>FiH-gwLN1P}6rn`X#NnLFsEBfHx$) zNz;g7>95zp8q%$cy9FzWX1&$s|=N*US6X`ALC{0Q~d=ZjU($~F! zIm+g*1#p)6-GQWwY*-4+Rd$Isvi-6b$b*~g>wm%XkbO`LN1n2ODHHILtqg$&Z&}g5 z06wySH2}V{6V#IRldV1vD+gq1I-L&6UZCdmVcA+SMEqsvNHRc%{~`sSw``c2BtbG6 z1H@oiJB<@UWIx%U7b;u$I*f(O#{58xko{T&kx1F^t-zvWza~H=8gU}B7@6M#gmg@H zfr_SBS(XXlxXem5P@HV}d`QO2EVTNQWV4IGOO|=iJoSW(84F{nvi}W&mnKW1Ic2)+ z+}|K($okF#%aqMF0c6Vt=|DLtyGUcC9NAA7faS_wppx{IZ2Lk4aa#6SJcxNRg)fNt zGN~R`3S{RgRXHQO+y-KiET6g@#j@Y)0M5!1uESV~%$JOn$^Lx;tX%dbRnQf(yb@rQ zvOW6%&dd79$^}`K=M3eB>|KSQBKwz3=nw#xca!MiS-a|Fa2vZd{CdrMYz z1mWJ6S%(4c$hhocfr(vL9%->6dMz6lXvtWC0tL?WgY6u*^cOz!BN}Pl1ifrmu#` zLs|B-AU=|9XobzkvQ5Q!h9@%KONe@0HZ}m_glr?df=StpTJWZ1-n8tU4$9{^fp|!6cm(2M`Lo}{roVhKwW8>Ji2RQa zpb#n#x4~_=T)PyJMaVOs2QgA^&V*#NJbM+0N9C?gP>7KSQiJ`NJcI{@Sh+A4#5lQ= zGXjj4H#I{tK^{qypG5i49*88#MMfwj%YEMlmMV{|hDe%R@EB32%LVis)J(ar7kF9n z>ED8wEq{l)2Pfq#3t>7(K0-a!Q}Xm}0H@{MDnyniuc7)VU*3`mP$1_o1+h>*jrOH8 z@@FZ7D3XWv!C0~Uk`}}g`7;+lER_$^Z|=(EEgJyJ<$1L4R><`K-L?~;6P3qq=qZ=lxkWqCYpL3MIVFs#(e?Gi+NMeei?ysPrp z+kjn@pSlN;2Km`$sJF+<*BhvW_U>Q^9nQ!b+X^Ok&mHWY5l_vZk+ zBacjh={9-veMELwzK>d~?ebS>OYe~PZ2;($`z!*nOa507ux|N{ZIHYtkKzOL$ZMCw z-+j4#5Z)ii?{5d_l^Y*{*e9Paf?mITCw+Nd3se3O&`Z{)+9_pckNs z-vN<8#m-oOAVqj9{2ftTqdGNM@eU1#LKItWLLpS)OovUFqME*}aK*6&01=8xI_e@7 zzwL&4ltNDhN3iT-v*5)kmQooQuP{zRJwb7hn!bsOD#`$p z6t8TDUb13*9J~{X9dw^4Md7jrSgK+TH3QNV8rnS46+h8p&QRnBLLpPJosQ3wil?Zo z&QYuj054aua3;Vh#kbuMIjuNL2W_5WHxnZ^1l?diqxkW6gj=Lo zycJlnLi#OuXBErnd@oV(UV@cUMdU|tRHm@TK(bt+hyzxkkk5n2ImOqzpirsErB!ua zVf`G~1;r7{?yD5vQ+ZXb=%kAbmlQQroz*CcsEog?808?Adc_q=Ij$&@--W_e1&0os zCIurJ#+ns#E^VeF=22kpDJ6a_y*uT2q3dE{LM_YZ(}h2kynx)f_~ zL!n!7jP9!3Q~X9FrU#0CXDIY4{wW2qPZ9Pdz@S1y&D0@9>MOv86_;t>eW>W8;^&dV z^%)Sy6pyGUFs^W=0$@V1(GjL66@|1fxj3v@3*hP?YX@(?gYi{JdN^F58H%UFcXZFu z%VEtT81r>-q*vhQ5ZeUx0}d~b033Gs!2yry@8C@-YJkIWCs;Y+@Y71z40hmAS0%)u zkluB;!v|ExM>zaRdt{`;Nt&n}b$Dh3A~6mnRD>RL_?GU^$2nwjU^Cv~@&ZUEID9~p zgA|8_G($;uDBcAtSq_bHkj!!TC?T}A9ZGpp%gODt8*h;5UiG!VX=yHdj=-N%C z!&>TpRymxa)Ay1?1`RrD9k^XkxZ)sY12i~DsVUm*u(uY*ZaU2R0^pWIlM()II}Fob z<*ozk3EZ|jESZ9_4u?eAD!U!NiUjYT!{2l|^*B_}!s~U|Nm*W>!(3`$_B+VmfUzNm zO|AgL4ylE3G~zJW4v|L=!9gI7IqWup_}D>Dr|*Qr5*L6;hhM2fH{~FpAe@z-NZ{Q? zIc+MYhl9#(>!EN+DU1Mi zSZUEg#9t{`2V#J7g#=iTa)Q#kBg(!)JW;T64V9K*N*g6S;mQN?AVw%p(Y6+)oPQg7 z(aOivSURdq4+k+u*-cG^W6JDkScz47(oEyHGGIHfIHlzpK!Wl*ee8+K3t~tnDVNbg zNKsy-+Z3tF=c)WpQ+`X6!VKlNa{)4yRxzF-OIbwSifpCvYYCSc{t zDp7=vPDCt~%6&`0JFh(OJFp8%Q!7BVGG!gWMP)CItu86EK7&ZDvVmqH zb;<%Oc=gIjx}9=WdAt|AYsxRF)^1SNe+OQp(z*~>lk(?Pc%o+Id^#{&lrB`0v?`MW z!MmZfrb7LuQgIsKmhyi*h_or?)Cjq&tfw=lU8(;Y3Z2R%R}j0DA3X%R{k}5pT|ChPW#)gtdX@3F0Q!|XPJ=k0?4efRpt3j$#1Umj3Baf_<{8+0 zsQmFHz?d?I#xswVOD(YZM442CCmL7gaKW2U&ioG8q_T4eU`qMMegH?+5~};1Ro|CD z#6>l8IwEsbIk*D2s~jmy@KBY%0L)Xhh{_Ld)fYJcJ}LzbOMO)<7Ql+1D&ZtV4yd|l z*&kF@eh866sty+r53BNM8x2rBC&beRs&-QEK1ikc3L;^upJ`wip=$UL-Xm2Xc!L+E z`foLe(W*2mLXWC~XgiEidC~YcRyAz|#^O~cUj&w@T1;;+NtI3sPqIo^49OF!&|nZ# zR3C;SmQ>XZiZfkxS_)#8%J3P8Csl#;(dMY0r`3_Gvb_)Nlxi2{OQ%&Ob&$+c&A$Rr zpz4|d^&(Z|Zh*6@{fj^>QN2YAwp6u_e$G&)+7=4Ea#b}IVil^r$ADF;W>Zd7r7F(@ zc2TuN4M&$$e|-bJ8r8>CWM5W|M*^!=RZgyNmc9uy=K)1 z^ap5BafI;Ds#-b-$?K|dsy=V1u2SdgmMS_Myf)RN-7wv*GSmLjp%Oj>=v1k*A=#yx z7=h_-)fjz)_f+4|0R6ry=4BY`Q~7)Z^#N5QRRx18mvg{|RM+YtGOS9bENDcfoPi)l zRU(>QKT`SDg7-uU2k`|9$~_N7bM1gk+3*KmrfP z)Zr$m$Er{m#}sSBxZnxKC46x5T|@6qy2QNKvtpH#JJE=1DQPf`0OUHvb$ zk}}kiBT&dxcLW1utIwE0%vG0jpm$pBPDN9mdKtCm^3@CPLZm?5Jr^Q{YW8~oXVjgG z0gBa1`hirb+H)E}xq25hmMYXipTo*IbsS|0m1++vjLxf1Pz`%QJurwTs#gD$2+10? znAUWydi}c)sZ$Rg1XizphDOR))Vm8Ia#g)O5(?MU(ex2DsvEiy%N_L)eUWYIb^k!* zuKINjytk{vXz%Gz2U0h!Q|(s*(4~I=3WDfX-?T&Io_Zg3>0d*&b)P;`V4XdBq3v5Kqnh9g0>K}ul{!qP$ z&i+U0-?jjZsoUNLc&t9gK=4o0ubKhI)q&gaU=wOST}zo%@1jxWl=@;BB%L)+eGCy7 z&0P9=Ts2=j0k&VW;2p&2rupoD0PY$^DR>?l!F^z!nhN>~yfoLT=JM7oqXNK3GsS{w zU(Fb$O@1122&^2??4W;$^Ppy~6BG_<94XT|tjT^IBL14lPCP?^rYr+C12ubp12IVB zuo1)~8nX>pux2TB1Vc2;Y0wMR+}R8)OfyK+h;YptJMj!rn%0ZpMQfs|`*Tzi&xT%% zW_K|}j%nVYiyE<-iUNS+ntn4S)+?ODdpqcj&{t`8xnSmu~y#IwrvL=`A zFP+d_lL1T7q*0!nsu@`iVw&a>UEWF8Z1Did&}>-&x0#w%JD{GWIk6n3vo%Fj2b|QT zT!ea#=D%EkTn&%{4N9WqGmA*B9}CgluKRKJXe7rYBg`i!dRUqyA_~b z^DQM&S2TIlt+=WY41jn|)7=lr2F=9th^$dFlS=L;%{96M(yVz_1CbWZD^wm|*97f@ zzZ;s8Q=56u?Paz8^$q?L}&)x@fmi|JqgCOkaq*b~^1E9$GuixjeOdd%*M3E~B2f zxAxT`03U7lOo;eu1!7=++Phm3`~mGx;Q$A<-1$&Aq%9AEvBTPDpM#{oww4-^0oo91 zX9jAebRq<4vuMD4L>opcJXrg@2*ePrTRw=P+K=c%3DZh`0~W4zQ$r*|d!IV;k=pud z5TmqdTj4!g`yrK&N41mmdSbLzE<}!Lt0@JK)iS1F^SJg)s;A?$yI%qpuboo^(+S$M zKO&Yy?OZkVlC-|R0!!A;p-$8Z?I#u}q-Y<|r;)1tloG)-ZEpsM=~_V!tYm3lW`mfm z-Q@`Eq*nJ0+~#Qa#X%%j`xR~Xr?hRfGo03<-;R}|9p3=A`PzBy0EJq^7tlMSP52KA zMOr7?DvPyqqY%qk?ajBKSE6mCUUQjtp#ym3+Ecv%71}wJah}s!Uxt-R?NZuX&ubH@ z_^HP_0~|H6B-_EYM#wP@GT=HII2)4p_F`}8K5zM=I9 z0Pm(Yls3*=+DD!Mx3$?cE4ZWmf)2$tZLJdEuJ)5;D70$}9H7vlourQ7J*|Tk{(7{_ zE(^eOY;-`o@IzpO+MYPr9MZB$VOV>fnjItB z*cYKUs!gEc=b?6zhMteKUx$MDM7!lKM8>u6bD%Jxt?dSJQoHaayt*lE^*$JL)OjXA z&q=q3$|PrJD^J>w+D6K(AIoNr)vThpu7Ac6asY{G7(FV&gE(Fj_5MNK@8SS z??p%IG8mYiJtDC$GVu`MZ4%1RytuqwLbZs{P%5^)b z9H`Ju%z)%MoqGu+D|KJZgX#0SKPb7Z)=e&j*diG1YW$W-LHM&KVU|rT7tOv1H z_ge!%oi2z8g?inVSMfwwboa|)`l_z$=%L;u&t}-lPWDO`WhG;FeC61ijn3G};pG=oY2}wCP;wqQ+fa-|OJD>-f};?$A|D z!C$9Nz8IiO_W~uJJvu)LLb|V;q>1|j-Jd^#*sB}-0ap5S%W1gKuM5}#FraIoQ+rUC zNhRWtZv7hoqq+~+F#S-MM%W`=G|f}TbUAbuKi0`;rvF5z)571lE>4eEH=$d13dBj> zFeUO+IzQUI9rcT;!gSK_xdQL5`cuDvw_ktvcldMDyVIZ8T^~0DqK95WqkT_(>m^w6 z(oa4GJ#T$mCq#VozkLeetKUff!oFsd!5f`a3s4jMlG=1M#SS zj8d@}J(H4?WBL(#XR-Qs>1;f%|Likhar&3rVJu#Mgl0Vn`sG`ICF^H?0Nx4xx$i+t z(T~3a)2aFnltfRb=^y?DUb?=GPP`2L>;`~L{Sal9S^BlZFrBTRptR|v{`)WxbMz^6 zhM(3iUJ5IDdOi)K^7V=l=oRR{dje3X-?0X6&*-bSfLEkHdIZE`y$f}-&+4CA39Ljv zM9r#Fz4;P|W%~bUpE##aw*srw4~^pWoYya=UFw2fL#0WT{sDC>s`ZWZ5na?jEd}wC zKK(NotI>Z@3hc6e{nHSs)h{21l{)>z(}?q`e#RVN*YpeWz-!POC?RjuKP?B=r2l{# zrp@{`Gl(tv``^NJtG^|C*+!?4n=U$GXvd;0Th!Ryf{@__Z~?`%d$efn@ZkNWkd_YmiR zK7RnjLH#$B!VT&7l*06|K8se)h@P<<#8Lg1^hbTD|Cg?hKGMJF3F4UknYSP^p0s0tb2%zq3_^T4?eugYM@eUZ)&4THJhM#E395S%1Fm~AR$r}*y zHx$1L^#H@0?|~O+2>u(qAj9$(pm)S@mVuWXY`9PD=n%t(en^HIUVDTf!VK%zKq1_a zLDPWc z84l198E??9fO>*qAEkwf2K6JTCmEb*V@Wo2P}C<3qe0-M7!DnVLaHG>7!RFhSm6PX zZm>{AlwoL~N-EoMn*q}&4ZEKQF~_jF2*g}N$S#0WhIUHtP8(LwhDe@af@bCUhM60I z6&ReTXIyBo2|zq!*!DBjiwv#Q0Vy^##sNEPc=~gMRAN~2E3i^Spc5i1Gkiz4BFYWP zi7;JZSWSKCbB1%&+paV$pj`O8;RQ2HUob@FK(ESRqZ6;%(D)9FT{Lha0WKMCz70@g zSV>9EWkdOGh}0T5RZyri*z*xYz2V}oFm}bzH3@Ll@U9lTYlg&eNH!S$u>or|%%PS^ zlR^FmM4Aotlz+AumTy5wtp=$-z;(lSu^`?sY^C$|reShDuv>--ve{;Mw-F+D4JnU6 zY&RrPy47KDF@e}=D4GLemw`ZU4!0sFB=yuox!=-%)x7Scf zeXu@5Gd*p;;nFWqA23wX0AbLe^9MF$cxg6_4I75mLvO?|NZpZ9!~B`R9vXhjgUBPp zV!ApsW^kZQ{ITKkyHI~(=%ji7xZzLQ-6jlvmB1zqmS`B8GCch=)E$lKDkwM^AJBL0 zY^%VsxbgGu4<*jlneIjd^gJZj7aNdxmihr4E@!ZyK6q8JVvEWE+3V z12}0sP6wR$}~)1uLb-t0BAN|XaZ<4Zl_wN)tF9g$?HZL zog_DmE2s#)X}t6!c(;rWFC&QCMnC$y-!XPnK(Ebsj{eejjbXn)vfVg48d!(1i8k?0 z<2L%ccNs^i%h7GL(sy>xXxIzTV|>pWy!*y2jJRsrrn0rNH`)&3hm+ zVBDSx(}Tu@6TpUyy#GI>jPpK+$cWK92)t3_(v=AJp;1gb<|AXN5aEs)SEK`bY>Yn$ ze@~17)D#^z4pT>B!gy5;W0S@i5)h}1#UTKWCME-VPNq`YO`S~(t%$|Nv??E%tLgW@ z@eKP-jWpA6GyP0&*WHvYgMx?Y**kFLY5Iqf8ZT4MRse5P9Hq-XrrkGy`I^3Sf{33f zWf0f_lhao)cFD37Y|?nM1$=O;b;U7i9V~3wlRP-!Fwi zuxT|lq(V#^DMtx48L59AW>Qgs8g62ygBXE-%>^LRWNU$5lxg`n*o-!v)Ps1;R6`@s zSktZn7&~q<({;x<(34ypo9cc*EE%SYkD-@odY-F7L2mY8ba2Cvlg1~tygOq<__v2s(uYKT;rPBg*aIgx0DP$Fqx???loODK%vi6M9Zn)G@xP4V&iBPBdbguYkg+X+s>ahbCv5=R7irz6KaGxzlLlvFY=-pzy?$ z7Xf4ASU|8cVfvMB6ik{5GeMj(eMmc)quI*^3QlHm3q+jFvm^lf&8w)X=4QSt1aLRA zscr6IcBh@l(;PwjwU_xI{l&b^&rx3BW1gT7)7R|&5IjHgPj4cY1Li#o5X3=q5AD#0 z%$KOxI&412*GZ~hRxcyrYr@Dj|QoP)7M^UA|`lq7TVvmhp$x4J;#g!#BDcq!&c>e{B7 z%btOHntAzlfOPZjAc$m`GnPXy(`=*7D$8tgghIBNZv!}KUXcKi95d@D*vvI&B!PI! z+)ckHIc*N2tvS#9trfB4n*&}3ufY6y3ls{?yNcl9jCsi}xGgeoqwT)fET&!Ktoa1h zTqWi(Iy*|u<043wnVTu=L0W_NveuhGed0!Pwx0;XK1GsKpNT1CObNgBZ zant-#0z__^*KGmuw)q~#a>vZ)!b6*RKBYK!&8za^q0=1K2gxq;$DaV}Hm@9lhkNG8 zGJqa)4K308=GJGR{=htsIzzqYe7f)5XExA~px+!ybFKmN{y|t7G~cmE>}M^@1Wl3BXbM=+puYova{?G>CXsLe(z{ye;0d;3fRXX%sEXUL!x>^=d;kVy1i^6rY{6mdTcT33> zL_91#f#7*s{z?JnWzjmqw72CFC0{<4Y&ti6EjxY#&(HD)4T=v~zM_rnpyhZ9utSzr zMG!e`seK=qzojAuCC zvs5O57j7x91{Psi?T!E=E#Du4%_xhWQmSan=ewYH)Utv0tQgA|R8SqWjJ^OXv6kRg z5RY5lrqnjhV)z)|<1IX@;}R?_V^B}DtbP|D$&y3oX0j!x5qc*q>uJQBVp)G5da0J@ zDcm&66$8}MEzirr%di}M3}U8b>+dj@Wm!X)DzYseJcyjMIMC()9Lvgwu$gNy)2+Z$ zmaZv?oVIMb1)F)6XD#66TT19IM}cMLZ?IWtsV;=EGnN#}O^Ynszl1`uW#tO+&RUMv zgIHqe+YVx>C4{=tWtLr~P$;*o{T#dsizl5x=PiFc5APQ&(ISXcS>y{rthR`07J1PU zLU$)GS-zp>LyhGDU5CGHnUw)vt;LNRZgrMFR{*QG>=D596-ya4_^w)JNWr^iv0VYN z!SdZs5F0JGCqZnooTA23v*n}fz*;Oq5^1%#{R|J+Elx3b+8dUu>4^HK#jz3CEz3o! zJ8oM9?f`czdDLEPvuvPb;jYD((%yE<<1c`9Sc)n4?zC{DV6)5e?@UK{zQxlG;DKe{RfzOjF3`EzXL-5^px<(vHrxTr+Ml2|XqiPFx*^MZKR|uh zQuPrOMl7#TTXNJAOq%yd}8^CR^zxuaR9st%k2|T zn6&Kw3B)PO-vT&tw4Mn8&&m1%?LE%cSn3nGSdDZk&DA>18Q6Yn)h1wWRzo0wyVa3m z@vtURL($XvDLt*1b*Kkcysb}YV&r4hQNiJBJxL$CpY^yGcn7Q_lwTjT_R^<#$eK>Y z&ta>n6~_Fn^;(1!V0C*DSfDk@2rEI>;X+_Xtb0>nEZ90{0wBaXjW&o->w*X1g<174 z0}HqI4S*M6{qjwCh_ue2@;}P@bQ*}!)&lAaAGO|D2Y)fvnJExCX0=k@8f$$-y@cad zpQW%8XU%y5Hsh^xXlj{Yy+q^tWb3vzD4eiP{~930dh;#tQmsKWR7$fR*a5wC>;I^g zn_=~#JuB0C!4FoltZ5j}J)Ldc8487y*0@oKrO3LO3tq8xlq%@6){p51dx`Z~x|&#O)z1eg zv%by)D7X5q0!eoB9w8&;ntn7(OU@;!LBtmE?l zZd;vc=euM5J{&gNtVaT%aMzkbxm&w+l`D81)w zb$}6T1$9G5txM@tduYx37T6oR*{>s{ajUuu#wM(vzX8*e zRw*@$r>x1jz#MHtYAZY0qA2Tfw(Z&j;9@I#9+J0pj4>*9Z`3d+Ke71lgElz>e7TeE`9>?bOf@v0c3ag;3j!x8Who=2{A3xb0UOCq&pn zs2Ys4iLQeeWsCMioYA%hO019C1|C2p#PvLr{pbu~$JP z-gb*_?IhTi(cdA_wwwy^B%8eKJEfmY%8Qz;8~lPioz1x7t`RO)b=ZFR%Nz= zj{(YUt9`($uzf=<^>enIcb{U9OHUX8@)wW=oh+VX0y2H^W z+n0L*YHTi)qF%P`+yPK)dxa((bv7*}3-z|8l;T{mF{!+|YAd4aGuLeYdP1bZHcB1c zMw@&+OgGv7^npmTEtyV>7Tb2p>soCZTDRA2XSEQyVVnOvu$#7B-r(J`J)wl>w(Xm} z0C#Mw9RS*F`??`{*LMCKOt;%o7X$0CHT?y*owl!k1n9E;L6vv6O-F6ed$wEDpzX1J z{{j^5+n&1(&}ZX*1P}eTYEl@m{rCp3LEE?VgVrJ2?0vw7ZR2a8K4SZva`sVMlQ(z| zZIWUH@yNE1zTGj~?g?OzZT~vM$`jkIS~wcFDVo8Xu;o#lleTda)TeA5ZvaR8-b7e& zvJcKi5YBc1?L;niDc!emwOgpoyWhSo7nqxULI-tsyNKGn9`>_zI(gbJL<94(-w!~5 z-u5krK=iRo*TJ8!{WiTpKf93HJ_qb?Qdxb_{@E3f3qA|kex-F)e(C=A0XIXcMeuU?5)(n3bi{@^DoREOl5Vr{Y@TBN7%m`hF+vy zLw~9$dowkCqwSaJ+&pSOy$~SAz99$-$LzeH0b=b{)SWzTze}Z8oIQsshIspde*qHg z>SQ=dw7)@jzLM;|)WA%(cdvw%6ZV7;!Ar5Pp|U#F-cA`(ntlCC@Rx4?Wh;zj*xTqY zmT8ZmaxTjrmvJI&1&s5kyMtj3-biwF|3&mDzjf%PO~j z<_nPu`#d_w&e=bpiy@Wv7;2K7xBpFv^#yw$?LAfYVS2mO_RnJgF51UC0WR6&_93KN zdwVbR>g?YJLa*K)yAcXk>;p&f3|H;Xq(btVec4_ZYp_pItFzJmpbW$&`)TS*H`~|J zV6(+uM%!VlU3?6B*X^ZLNZ+tuquTzaeO)mWZrKZIL%MBWKuhh8y_~+*Hv1=ZqTjWb zRROfyH_(REVc)eG#yaf-^eA2SYqV0k?H}z0cF*2Kt>Yg16Z*l@eS0Y-&kyVic0i%m zzQY6RefDXT1ozvee*+t^GsNHx+8c|YFl2v|lI~&q5-O`l>@%rO9kthYf%nkvM)}es z`=|8E$L#0-kE81jsJi;%;Y0RA9-7+LQcL?)mZfj+{T`x~Im*;b&8=nHFq6H9fCFR* zD0>gtLj+`sAVUQaMfOk;5d`J;IsN|dbjIhL`(5{*bMAfoTHxiys`rWjm|WH3g+NoQ z8mJ}oa#barrFyl>Z#hh+SADV&5l*t>mqBR99()&G?Ac4Hljy+a&V-30yR85wPHgQ0 z5NGx<^*CMFepJr6vfT{e+Ks)0`cm%f)s&)ou$#mnp6vY!=)BlJ(A5xc_;xW{ZAeNIo<-@FaiBkVHT{dmgm zl)&{UJDLuSJY%=fk(DuaB(0mz*)c2NbDSMZALRu581>*^u)m`mbCP|UwgIQubJxMk zOLmAUlH+a$pLU!g`t0pF(?{Ubfiplm{EnRA1qkHCX{8j^nd3u! zVHb`AZ7R8PN`qkH#`%n{)}14zyxfEHM+0=89QSc>UYryjXL&G$b(~~dxW2*3d=FmgIUlV=yarC{m$1Ca>87q&BWJhN6`&o z2PgV0qTlEIF$bf5!1+E0Tqmc99?nBfDb=Z6oXKAR=;lanz*!F`?+!>W=X4cJ`Z$p^ z7xZ(~e}W8fB(w`W$nmEGxI-LoB`k+IKigq|k2nwXxQ54^tHvNtIGI#1j&NB0i13uN zfO6GN}9y=Dttc z@FCoAx>=#z3My&BxWPjp7q|oTC*#Ap4z!X)a6|I|kK}HlBJCpAil(PaTo-B$L~)Jj zWsl}|(-IQHowflN%k7&9cpTR?1-N*wkY@G-uACl!A~%Ch_a$-tMR1nPz48_SDO^J; zS5vvO=?h5XuB3D_of}2%z6|aUe*m7z&8M@{m$|yr5N2_s^?+w{-=qdZ4tJ#`xLoe& zJlujj?p7;s`P_$jAO+m#UjR_ZJ$eA}B5q(Pq8D?A5}~`oH8F;+gge^<bcJ6K^nNFM?r3Kcin`uMs6E*{hGMjW$@C>b*8&}o2#Q- z@ecQmDCk{f&~SE^ey`TsPOaAI^HX+>hX_mm6;dFMZr6H{r9Nd!F)w0d5bqGY7eKRBI1$ zMYK0R%zZEy!+peUqZH>ccL%kjpKx8M#WunXUIp@$J4x;6QEpx(ygcJ}Q&~O69i+bg zbMA~E;boj_b`T?*;BHfcd%=A+4ZtK<#RPncd+KZWe91jX-`^{4Egc-3=3aRP%agpe zub{KzWhH>v^Hyz#&Vl!235X-_%-QZ5~1fPQV@dS1t{=5%q77pO$ z(q`LfUes|!Kf`lm0e+S@K@Hk-JQpTNATK)&fr5B*X@KW>Vp?y5c{OwjID|Lf6%j&t z8!uqgVZ6dnIJ>~BTmf7-Z@dq>2;R*7Adx&5YF%CANv|NnC7$tTFp1**`5exod6{&~ zAcogSyLz!a747NA@w{h27tbrM0z84Ip&T=jcZsUxB;Kbqza;ZMJr7+9Z_fpgRGwQk zNE$Dd%A|B&2gS?aNocPplQ(Jua+w$20AUuddkIXkc|-LWbsq195iTsB=l9>L#%rM7 zQz36hJA_5NCDdFg=9LBleuWo6XNF36#s|P%<;77Ow3O#d>0}wNd=D(kc`kG$?iz33 zevk^@As`k5v^_m-b#ZAyP@zzkgwwY&5vv3P<$9BMP@f;|Bxy?Jsfbb4)CB1H~ zyiBSJ+IX)8f!yWw%V62gTRb1+9`A#*0CezbX#ej%Z^!Ql^nkbIKDbWayE~zK$QzH2}JKU(q++!|Rv@u9v6Xi6QmzQe$A!&s*?6kOAJDmmq_@`Q?BQ@dR{5!@Og( z2lj~PLD|z|o^mGOPk5n}<&E&{X^MTy`;@L|lvlbGx@Wv|%iwy97eouub6y{9=Z*8e zr89yPJVSaJUhqDoor6i97p>@1JS7#cFL{0wAg_3KZ0M$WztR@(N&dUTaBat5X9&1G z-<~?;4*VKw1v>Jl-vM#r-Gye~&gkAV6=$wEnf7=!4-1yI_Gvv;{_zQF%d>;+s zdGd?1Joh#=BLwv5+A-g3a)+m3nl?L#a~Qk==}JjTo8YL3>~Tn;NPNSOsDxH zv`=z|f6x!)EdLtK8t3>yf5A&2zjGVB1o40W9VCRG(}X~w{EzH#VPSkt7%VUFHzvU{ zoIm~#;1T>yxzI)OlUzV9^2?}9y2KY>2Rw@JL+eU3Kjv3NkKs3Qpo`_trtC0|e~?;w z@qGVDI7{HK-ws_OKPw#ZlK5lP3QXo7raj>l{tHXEPUVmM30xX~fenP|{67}Lbq3#! za-vLrm>9Ure5L}rEdJ?ukZk_@Z$X#C-xCMdxqQ2y0m$PI_`@=vUqhLH0pEsB0T=SM zD?y6*Tw1_zc$5Zzg};iH>k@u1m6liei*rFr`M-Pvco~0x21q&o_s9zTGNnsxBgHUe;;KaV!e9`Khp1J}uqq+I_Ye})_;U3~R1 zMDOOW`Ww0){v1kXd->-mUGC#=q(!5jKfE5g0si_+zzySr{9mtxpG-}|QNEue$TR+TvG6&@pI!>`od4q^jBK30xEExC z|B)F?UhoIKpqu0mM?*NpPoa*|H2;JFxRZjG1nBGpA(bHZf{$t5br8%g2hLH@MW33J zAf17cISUF_U@R_zr_W*HDll09p_|~Y48&c~We&K9z=JY5Pk|&GI4{B4qafabWNQ!~ z!F!aS`3klO06!(TT!2CN338>t`3ruhE_i@oC=lFf0gqmkGlFcYWzGuL?+15I@cCij z0tF+K69ozCbl}blR=8nE!GaR1K0^eNe858m7dL{036|XhxgfZ+716^5gY>dT2)-;v zph$u4AiP`@gwSeuN$|Z6@F;T;?7L09&&l*AeIXJ5os3_aMF1Q~BQYVm7Z}f)1vk#R{l!smp|z2E|c zpEW=iB;2wF+XhVf3sK^czj&fjmL0Cr5FI*_QiLpcoWwgvk z3g4x?;G%HI6x=1DVl^T}39Bmrh!*}$-(QSygr>Y$VRsI6al$tigTxC<=w>Ad4QxOX zh0orA>m=cf)4(MQ*Yp68BK+Ui5T*+Ey#taa4EY!l(uFy6tUW_m8x1d+!uCY~To#J| z0hc9wMD3JpA(OT;bA-V^1D7lG$U%fWVdG^8^M%?!AS@8RT7_#U6y`=kS0wy+3%Fuo z0c9Rng-IzeDHVEXAuJPS&xWvESl)p^*Mxu4J*yDvTA`~HCK*9jC5-X~sTSU%7GjO? z$vtqj!nf&E*>zzhO|f;tFLJ=$5O%p>5cR_Oln*ut8)%pNrtr{z-uS&MLSB;wr?9;OxOw(ty9gLi~q(~WEu?tc&CY!ezCLWH}*^aY5}F1$pO_&wqM zc#sa^+HR2h!hL^XNDqYPV!?F^$ID>(P{@7@T$fO&0K8kcRR@zE;aoaK(JM4@2k8^G zxFTM^aFX(Z0bxHKLmL$8S-=eme^i1S7H**T<&p5iU~rFx3ID>`6Ja;~m4Ff99&dPg zDzu<4byV1t3zKKU6LAPMChVl?>A5h84nK|yUp_#D388@r$P1wj!tAL6Y%*;*iBng(?WN8p-+nb41my1^olYvdr?9s01l!ATD%=aCR<_YBzk!rI%kmu ztt2j@EnOh4q9?mR+(f_pj(F~({xUf85KS_`d5RpVTJjRTMR}{Y=+Y>n`-l_^Kzv0P zsndN*w1SR4`-x6dSJPi~fC{4k(f0p=oEC-u0LwF?B07a}RZ3%FBTaHiA|2(>$s%PK zxD-)7O?j!JIrPP)iSp=vri+5LfMqYKfAPu5T)YiHwxiUQXrQc_ZLSF~{xEZaq`lrG;BE%+aV9ipmE zkozL1hY&sxJ*54=PSGb7aQ09X{SS0qq9iKkx<%K%0oNmvzmDj=qL%r%hCWdYoulp- zU3mtR0TF}R6oVoo$`Xb|`)RTo7TuFF{h>F*P8xc({gzl+m?FzUa z71{29?wM#wBDgWp$2Z~gxo9rU(Bq==ub`U{mG1@jLUi>@40lqrYC8f=iTu{V*-Mcd zjqH`^LtEgcMaP~(cv2kn5rlT)5$bu^i?>qp_Obb zK67B{F5c?|oQK%t6IgnR4L<_$635)a$h^ge{szuR+(_p`e8siY8b2krp!wQQJU}_0 zzu1@hApzpBS~xo`UP%3rGve4Y@Of6etPAjS;um!IF;E;&UB4jlzt7?9yf|nW5rW14 zQYIcEK0{A4RQwwLH#1Cps0M%w;(1SX0H{QJtD54mZO!q>IBTfy@vW&}5Y<9-*b~vUojpkh8>IxrmT0uAp{o?PQ^&JPoJ-A|YOx#rTBk<5Zxf=| ziqUe!7blj`#91f4r~~eX`1mkz^xbfInzOpZZ&OOuEqWot8)`b37wSpuXE#N!EG*&PfzBz(9%ME9inGj7ToO8fKoOD>SC~Xf#zFwND4Bl*UM@-2ECC=&QneYv zXvq)DVHqQ7qTD-HV%r0gI7x#&xOmASN0=l?+^OxFD2b(Rc9JB3+Dyq3yL<#nk?5(c zPL(`AgXn3J`bYrMC5Nf3&X9OfGdxpLMc?#gNp%WHmL%pKxXzZCQmL0CaajeQxss7W zaCwp?hVYUv*CjJwBtZ?!YDv6V}$!f~ou1ospKv10|Z52#z zNVd~-Q7;(_1Fk{xBW0>LB|lI`-6-Kwzo$tONS%yk$t~KBs~T&>6CPx zgtLc|Q972{B@rHgWw&Gz6-_;oE@~wAN;WTtu1}((t)hNOO+5xUAlXM{^`In^63-#Y zD*8HxC2ShtBgyYnRzH@km;iYq*>e#-MKN-3yNd~oqUP{LQgzlB(&v1}w$wwbx5GSSU zzk{WnbQYCR_R(IG!aX;m|HPSOu9Lgy^)p$Wo8T5<%=T&2RFAas-7R>9I; z8o2|}J*2(V{`Qn6)B5KneL4x^EloZSoR4&bHqd>g`)I4^lvGoIKz`DvXTbSO>)qfb zKpGkY?zGhAZ8$q4b)x$AtTck!KIf#mi!ce4`V<2fBwh11xbxD@cM&02+Vc}gh_uNJ zxKQcoodASMqrQf-3)1$-AmP&Ev;!9*UF(gpL`pZ`fyqVb$5f|Yk~TZRS(LQ=D{#@$ z0;;)Uq#M4%wZ}>q{S955blE+GO_bJB)tV&Dr@Nahy+XBUinOg5CaKc#Z6ImVujzb9 zy7Y~60Axsm=%it$G>Nj<%hH|_m}E&8Q?nymT0zaD9O-*h{NzgiWxym)TIq*N$(O2* zf-8_VY5*vdcD{s3k<{)RjI3BX#|*eD(jAr{CDM5x0&rDoCP&y(>D{H^%A}vX1SywJ zn84(kR7^{9h17WooK;HummqqTG$0;awX~h~|7xU#w0Tl1wRVN&b?JxOz|~3Lp(fW2 zslzM)>ZKAd_-v5=It`yUrF*CfX_T^QvTBl6Jp^f%*4D$MMLL_dif&0Ilw{nNu6!T5 zJJJJ}5vWxf@;!8I(jwZ^xGU}Y8eF?{fff<&Nkc0E=#ZWr1i3HW{}})eq`{{_I;FF2 z!{niKA@vTsqzCBT?UpX4WvNFROSx&UbRq3q^hqtLjOdq+`~=~Ew1(!FLFqkeat%pc zFTu;OwEb;ZK9cUD{`F(&kM4-@L>fS4^@#M57?w|^XQ@6KmA*w~^)qQ3jciOROM=hm z(r`-Q#-*RqR?&pCp$6OwX>T^*lhTzx!`YP7y$R%{G+`0oucZByAx%pY^5OHOEcILH z>|_;T5ZcT3kHDvc%#<2gjofgj+iABYK&Gz*cUs1H3(n5S zT)xMU&dM%$gPfDqjzAbFvv?g|f@E$lFo^TA1+;&ZunX*3~fLxYcqGTvbHbv`Zw(L9F|I3m6OTGJC*{W?Ic``pLtMg^$G+7nM zex41JLRk*2sYSAbRPhzdj*UTgMb`cUB9zD+DE+xATTW#}sVt7>$THdcOMxqw{d)?+ zYqF^~0H}~9zX30mvW(5pRmrO9JZ80QNfv}PGC3s#wK5|&kn6I8FQKcGCD`C~+`c_15lDSe=*)02T0dy_0JICSWmaJzx$ZeS|CBb)O zM*9({RrVR}Cbh{*JE6NP`<%LB?XvllE8df}>_(stSvyVe_hpN(f;^BVJ_W8*wx4F< zhqCE7;JRctgTZynLMh4bky+8+b*~JWG`=`l+n+G$mpRe9J0ROhnd6{r#U5}&vNSfx zuw`*4crZkonOj z)(hDv1)7u{HOJtmWcOV_UdnpEfypb`2b3>O%YrGHJt<#L6NH_7?>%_2mv7fV=O7=m zh0akPOdUEWx!n!uoaIiR!i$T17j00w%0o9{EN=3onTY2uPmzK1kZWo3_msP}Lg*#G z`5^}3EqB`mfRDT?5+=U#)l(p+TbR)ll%Pp*LrlsnMDtRQ)O8Af(qp1m6+SnjtN&O+pu2oNftHw`ag^1ouCyC9#_ z4ASx(sVYd7r{@8lCU0?rNxIxx3fCF( zetLy7<>QpzU6$XX!Zu6Jr4Kz@uBFvJM}F)$bh+}GMzGA22Tg$F%YUNmsX+c<09>Iw zFadxfxr`0VV!2f&xGQo)`c_Kh3se}(Re6OyoR!M&&IO=MzFdTnmCN_7ftPD?3z`lq z`WYXR?( zGd>5PS3aBs*M0K7F_3=w)fXTG@+m4D2IYU=g~^b-QVhVbylFeQNAjn1cI&bH%3mN) zM)22`NxzjypVsh z7u=*gsT}Yrc^u8cFXitrFo;+3NZKoymM09sWMJqz%qo6lD?+SH&u-h};x&X>oH`YYMs2Hc0ZF)IASV3`KxkP`s*!Nw~sg z156?mhmL@YRCq4MI4>&R9R}c%;=32Hj8dehKo_lWp*1x|;X^ko7FP>loTC0DNW9_{ zz4Hl*4oU$M6)WDv$dVLCYye1BEPWeXieiQ_aH)!?)L%+dOwvn~sW?Tc`(=ej3X?2_ zVk53ETTw$#B}ehqGMMBl3|0Y%gnY#$6>2(cQlwb927qEk;22D< zD2~y>SE4APEaLWKK@ews=iD5@kNor)rB+=+*Z*f}uiQoQ*9Cf$nccEEcS?@;F7 zt9btgxIV>T5_J8F4Eihv6kpP0HK=H&CeV;#Cf(Ly#WfR;;I7J8TX1g5h1C9bSH4S|E*?q^Gl@l?R@|GDP|DKOmvXSM*ASDUJW@M=IZ^TrphvrV3snl&dIDj#MtD5B8!m;eP;J zQm#=#7^S@U4Tco0{Dl4*VT>}D(veuDGo7`KQ$AY_60clF8@>t3*XnR7iOL^+;WJ73 z6IDye$^$%bDaw!OCZ{S>GvG5#`O*p`U3rl5tPEv~2qu}z&M!bND?fJx$x^od_r)n| z=~3kMZ0de>i~X1W068-AWc?9%4iOB#mcTaa95Njv{6-} z%w7lXs`6?BT$d{Q=?f@R>d2&A`OOz_eNE}`H@s9RokIbyR2I;;Ql$)`38Gp##e}X# zxj_wht#Xp`^6SdwRKwOOx6wj$L&>C*IrT~#1CR#gb}F`RDx2sORHJg+0l=G-Y!`6N zO79NfT9j9%Ah(nQG>6<)&PxX1j`E*bfVV1jXnD?TQ*J+q=y#QQv_7;ecl@{KrtC8U zphMX+4)}d#Anm|CPPZ!Z zr&ROTA&{SHrw*LIYA!vT0M!Z)kkcxEYH^=Yapr(KtLj_<+&R_E%@78v9?%ROq&iA- zRXUp z)huc@=AmZglsVbzzvr4s$QsQdWY&z>uqmoTx5Va~>nx3w!KA{w@PL&h~ z+zr(%0Zi&us~-T+pqfdu@J*Fm4QGw28UF&;q$=csYgXlGVA7)chfYr4QfcWl?`_rW z0+2hZNtz>DRp+H}-L5*y#>2U%Qm%roLv`aebe$?wYAZif&F8>bm+DvQWA>`9Y=KFi zYR*-RrC;@w1Ct@uhkrvjta5l0+#}Tow9G$IWsAX$sKx@}`l%{44}+Le-RXhurRoFv zO~or!5Y;);st>-0AZhs8UUY*nd&OyB;4sb{H9qQgWslTC=%2{2)1%7@)Ia`?c%JGyYOZ*xC;tV&TWw5Bq>uVDYI6Cin0)q!>JI9d1*yMI zg~@q!38fst>bW~WLez7p%NVMDLLW((`l>Sk7t~va;WJ$A;Q%iYYLzbnMXGD4-+EE) z_YCBcdiDe?W7IqIfs0i?3;-Zb{WHzi@#;tJ@R^|g#0&65br8K8N$SX=yXbkdbSg;FH>#j0&-a$Melr;nnN4Y*=jorc*#+3eGTz))eC8v z$WyE74arwK%?F@By<-K`Z#tx`ABXHl)Ldjno-)Z?@i)T&od*?C=ENt0Zix@`=?8|rPx0k2n= z%D^?K^R7d8Q+>D!!bY`!HAdE?o{UAjX7&2@FlkYTt%uKB>O|Vox~<-F3O?_sM`){| zRozP6!Z!6TBjE0;6X(FBUHvt^-uKjjh49&--bWSteRWnQOdhE7smAM6pQ5dXE_L4| zblvJ9N{xEd3#rxFuU<+s(SSPE8LkJ_8~s6s)GkYb8&>b8CFGHsT?vyBb?Z+6JXNo! z>0(qJR}SvEdVMzl<7(+|h&Q2bYX_X+u-xG#-38RGnz))R645>QfhlnQ`HPFff`5JA`H^_OCdb3Nwb2NV9ot0 za3Pxg0RV(*_OUURFpaPQJ}+p*8VDmb7vBNyqGk;rmX|bUvvFZjnj^*#Mr+D*Kw>oE zM z%|qC9&6pl08Jbd>cQZBD9wEYI4YvYbvNXFWA;{Kj3I#4lGeE0Mu4W#k4h5Qp^o$BM zLsVWBY2Jwiyjb&BKFAeK4Q7^^C7NCTol(*pqJDCzCMpqtGR>|4M5xe|9f!|K%|~Cr zvP$zUb+B$~Vt2t=qh`lx0Gc$(l%6+h*3*q_(X99tVQ*>Vv^Q~E)13upcQgzS2wOG3 zQQp(0k*|W!yPA76-M4GvBjDwpW&su19h$9kfV;0bOb_RQrusQ>oti_NfP1L<;si{( zG*MKbc5B#gfb?jX#TZMk#^?xeeVUhi0Qxmq^i2x? z2$nB3xvwG6N$p2eM%Zcnhhbu`{rwo?IcQIO1WQM)@-c)?+9+H;M}!gm*CSwJ4stwo?7z(a9-M9--OOvd*eM=`e@&z#)PkyUjpGNt>*%S z_0xV!lYqZAoid=RO|d1;)QA7r;hvut&|qNaP1SiAraa$^FSiC*7R*&)M{K2_L7#D z30#!+>}TMjwW}$8jnV2FVG^s|`y+%2+Gp+%CThKqrOZsye)A{dC2J4A2G=QC8P({i zT9<3^lBRu3UAT1Z4m#wJp(R7V3BwYnuXKQlcHA?U}1uZ|WA7YTKx3U#4}U ze7;;O%?DSZJx2YkN^MaWxGHU~F95aL}PPdwcV~5(j6^pD=b^JTi=7Q zO?zk+%9&2eryW01RnUj>7V>)}B`TCt6c; zkP+=n8BCsPGYz2|)gF2Q;WO<#PdFRX{`ob?b8QwCRO8y;^Wk$s8*miY_d@%W=Ibf# zi$>sHYB^Msywd)&AI@BKI+~?ib#`B3)NVS*9k_!Yy1buY;;CCoTNGZph4dAB>$<#P z;-h<=)+1ltKKe=GDcx_>i}lmxZv^qznbYGB(8*F^d0O|N5@R`|`(Zi4p4GX~j>9?K z4;_dXs8jI41?j$_{kZeGP2=E#b>ozIZUB z_fZE1cu9BL4!9`Y{ZNo-T>upaF}k6T!NuwrZLo~fJ(v$K@w%%wp-a>)(L$G`D|(7R z$vRi6q*8QtYhjYAGkuKVrt4y8FF8ZE?N^XYo!|E$mvy!@0cPoHXJIVax}RqNkfXc1 z02iIBdq@*}o^By6wE4Q||7LyN|LR~_sEaxRQlzs`A$qYcgQoN=x@3Zv=)U*>+*RF4 zYWGrMy*Q`6Z8_rsEVKf=v(*0`--EEz#0i4~@{XngjHeFjSMs`;?5Abg@T{{!5JF030qpX&N)5gyZtK196d zx+ZFMj_cObT<}77m2S_ZZZ+NOSGw6-L8f&hlw6+F4}A<`r}w0@2lje?KL8H;L$r71 zs4p!6=cKRp0q3m$i0+GvekMIlSN$HEJlyoLBOso7Bbp<<^mAxC!CQau7nu0y<2e|M zum1UNz)$H@DJk{SyZFPWzy1Ur7YNYjP?>vLztIuojJ~oJxU>3@PvP^NK7Tocf%+kO zVnO=*>mWR@H#-KO!TR;InIEFJe+*}#`i>Ap2-62(A)9$Ye}I>!NQud#qIK|h)9S)yNa2=T7!kNG2dsXk&gEX(v& z0yrzzFP#AVn%TT8V(x~@d0b!H= zQZ9te`gfMYvPHkf6S`aa73ZOA)t{&2xlKR#1-QHVqF-hs z_fr4*BaG~o-jAlkX?;{0uHmH3*)|9rY<5#Z?r8HdZJIgRl+u*$Y?Dn#1zl`@q2DpM z+I&mtq=!v<5XR|g<3=Blm(7euz`bo&`~^!Nn^qTazBZ%O2Mf39UIgx} z;9_jt?SYH8abJi*B-y+djzOf`YhYf;I7)l{MW>@nR*RerOhkqf7aUcF%kBL zP1jkFn>PFWp}S?{&xMzEn|tJ}!={P4INdgHS-|I@&DJdtj@T4O!gAck_aJnyY&KfK znd9oSX5idcJDS48ceNxMS9@mlf-2~OS35KU5V6|U2)dZnj|(77T5WnCfQ;4sLg=zq zzm|$?xUo8YHiXTqcT*wOw)%6b?eDGj2n6X`9Z0)~1FMJpp?k8rG#a?k)yHPzGAC9S zDdGCn>NI+#9BqH0ewLfvTR?lz~$Mx)A6T#+q*Pl7TV5kgRsUnVjkkv+B(nymg}~& zf}yLkl{;ZbH*9|y0ifR2=pX1BY!@{_chh!$Jh(>N|}bo9Wu_`GN9MI}v#ZS4op-M4*7*Z08Iy9{1BZG&jJerW3# z1CuV>pnbq~+xC76(qsGQVp#UtKBrx;KHFBBZTfAeieWimJG~$9LEGL82#0L-7hpMT z`vtytbi{Cr41PBNNi%qlIzSl)nPOO9HmLs*B-_BR62r~Qg> zxAEUgzIqKq{&00T!hJO03CZ%V@1gzt>Jvb}*g?-`h0F+&FXNWO=Bu?a_;=;UQlM6` z4q^oCz4T&oHd1eedoKi*yxRuA@>{8uA~;4VvM(N5)#**JS64?sqPhMd{#)ym1sh!j1~gOu0p&(E(r@8^wWJsx zY+L@ssMZY4#=mQ?m_qxt?=O&l(|aEOe)}HXy>)?6`1iY}jgYLbp-qyFr+A0n%k~Zy`vx z!RGzA={*M9-T>EYux}cceFj|*;kVzw%^vUpg8(b&1`Qb0FPb*^o7y8MXPlsS(Qd}I z2N2rN7@_sdVaDtr=p1KE1OnhR<40QEoM+6S=C8|)(1ReZGv=Iw&TYo+ldyE3ar=KT z@t85o0M0yTtjR)H?-^Y+F!7nOhI-Y$GdijAb7%Z@9dHkZb1O_d85_9Zycjd6w)AHB zeFvcrW8nh`eHk1U#&U}BYAc8z;{zSM_%mkpfD2$aKZ5JijITZc;0$A*3gj%~p&!O_ zj?rxdlR!rJ3-}CTlzjo+dB&D)Ai<0n2F4k}5Lv)7l(C2=`Y?uL1}rZyy8Z{B;f%ts zA&g**-+?faQAEAmiwp-krE-a}%N>J=V%*OLJet9I9l97sSw=i# zJ9XR=7(2g&mqf;WdLNP)@+A-^Gd?JSvlNCt8NyUX1Qm{HjKX&zOlO#Gfk_5q2OlJp zQA4|Qml-O0wXzt8Xl2i4tfnL-hvBjaVRIS3QC6DA=)3`8K4XsvUJ4lfxqufk-lbHh zh>=3a*oqm}^l4pTq_hE7!q`kR$5qD5yC9{EcYHz082i^EP&s1@)xg&n^QbLW!PrWN z3o99ZpMtAmoR5UFYQ}R)v}zb{(h2ceh9y1C>kPkBh+fBVoQ()K82&PlCdMZ(0cd6v zY{R8YF^VifUNUyuz~?K5dmDUCGtTA$chc}9YLeL*ZlXN{d&6*QZ#fvguY!rA;ZFJj zgABF1U~=9t?{C0^4WkajGQ=?P2uQSHH8pNx4EI#RGR1I$%E45_{`U~C!O-st265AH zxiN%|hBN5{>@r+?5W;T5XC5FuhMyZj*l)PD7S2Wty|02iHT3!rgBUdw(r5V0Fv0|5 z88dt<62j+(izrDMH|%bQZo=?qYLdM$ETnmP%5d2c2wxg{DH6F<}%#+bu7QhUwj%H2Q#k)H`idQw!lq<6j~mv@;&GfY9Bz z*cima*zY=Yp2oIgaP4L6V2MHa7{^eD=#=q_BfF*~G0Ha2J!vc(`^mxw#cWcaspD z)0^pGvVA2uPm|W)0Pr?hPD`tg$%BK?`I^W#z~?EG5vmdWOs=8~of%+q_%jURw8;fhPAU`wB8yVh-GSlLb8Z3^5V?4wF!mz0}_bGZ~{2EZyW@7XTS1 z5yjA5HgS6lVV23p1Gu}{CZ#DLIVO4YpvyDi6aklS@{$(fLX*l>AVntbG&59~`0PT2 zN|T-QVNzu>J_TI0iR2ALuQ8by4zAY3nx>2ECQGUKtut|Qex_{N(D64-_zk!K(?#_2wbQ23GH_>1N6i2~XPTc2F3{ADZb6W#kj@I8 zH#NzDF4)v}2*ME4Z#3`{YWjx_?nIdB8Apuzg6YkbAQ7f3s0NNSy+9xHMbqcTAeT%Z zUx$|{)4eM|qD`4pOb)2b?ZdSbMyBh#VFtwTsF46QLEtpBBH#z`F zHf8!^xGAPjCJ`vrG>@{nG}Gd%(50JpCBk)!=~3zk-!gsc4!m@j#`%N0Z#wl4bPr71 z%K+#!EjbRKU8dvN@X~E+69#y%>8kfZ`b>YJo@Kx3xOVl%JVe9t8ZPS$`eic4o8A0_R}1m1a{%vm;^%Jyb zCD#RJGlj4$GVVD&2~*7UX9tIeQ;K5<}3o&Xtt*bxF$0` z?L#!1ZSDu4#cVc}-nYy==##l^wzC)}cg&ui0qHc$@J57(X1golrOPaA4+ha~=1ZFs zy=DvE1=nY0N{_hTOp^mIf#z2!#Sb^{p_MYiyojc?Nb@dQwJ)0AD+J(@x&3z#Mwzb~ zhU+-E?fb3(K44UgI!n zG_R+`y2px2F`RifO zowV>S0cU5ih90rK#ZC>pI9e!ABdm+X7}aC07GKe4?`H8i^)uZq-aia3-XifQm?T*2 zphY;*!chW}WRW@vXUP@`yWlLv;;+2`q*^R30ZFsyxdxJMF=CFZ&9Eq+4b0mm@h0*jG&2n#K;3?MABFr-a}Vhf1_ zgjX!Kc)_H^VonH1sl`(ke3n`4q_?Ns;{DSg*DT^#7<{G0x)_*LS(F@xmuidUcCf6m zxJ&PRt;H#-5w2U<>%i4nEHTHZZ&)}~09SAELWFn?7WK3;H(Io*K<-+w>5O)}#hl}a zaL?k53Ai4MAZo%tvJn0Pz+;Q_r{JDg6zMU}5sOVTVKQpbOONWAMPoFCV-_Qpi1*y$ z+)Bh7w|H?5+=N904?271%uN8eGrfEmg2k1NUVkRxcrCeYx`3+n+^HCx! zBbZ$&AaTrTS}o$4&-MV9!1SZ_D3N)G@{lAZo08{b=3DfumK5gc7LZitXRa_wV{U#E z5z?83?*o^?wajbp0)CzOJsmfwV=ngt zxxqXc3}HRfcOke2X8X4Q++-Tk>(<1qqRrN3W_=D!T9{rM_`Jmol_TD5=3NiOyTjy+ zLDzqh2HWB<~W^1 zdBI#l9jQrX=v9y@=1w(mub9#VT+uXh2W|45w6rb*&dxIAGB|t7H>t1eVEKfWEJw@V zDZh5ITs;Szv!%y8=v*wnT#Ny_S~54lr<>)Uec(JSA9_RQX}LfFFJ6}aQnu!8*}wzw zu~hyDOJB>IS*_F_tT6 zl8d#R_yoc@OXoDii?>Xsj(39PFEhawcNwTb`oFUmV-5l{!EbHSyQY}aRJB4Gp z$QgmsEmLjbEW^^~8#v3f+)S3h67WOJVkTeeapG45&ePX zy($1YEseegd1(1R>Opi_{t^Rtx8;{}!M&Vy@ofO6XVuV7oSoIXxzIUSRnzq3WOa`w ze;2DI*$}!}?V+m2!wPF6p0rh|81Q(j94bw+tkR1yz-+6nbUGr(%8FL|T&o6p9C=os z{Q+nBR{TET%B=z^)468l@EJ&@)eHLdRIOFUApovh<^K#)XVtJ4fE!ka=(tF|)h|8Z z8mu}g8M^JT4|q9TYjdjww2v;NwS3kzl$?}aXel|)lXDC-jKcZIPA(}26c8s@`wIIB7U z!U)!G1K=WAY#T(s$ojS(CYM-4RANN2v<+~U!a72wNh)g%U340&p4!>ztcINcWU#i4 zfXie(psT&ia!dd&i>0RybT;cNALw#emdl~bWgT_~m&cN>fk{5=`ul(vu)d)dV%(l(HD~hLo{(uZ6R6*0;R?Tw^VnhGhk- zmij%FtRXr$Q^h)b04CL}>$gE_Sl4MOsAVo*&~Cs~Jk5pRk$FBHO;ti6=^zhYes05{F*ks{DZYm+$mw6hLLg3jK0uMV7p z_1@Ls9IfLiQ+2X_nm?jT5>jY{&x?9IiLFZw8mA0Wgt)r=S z^0IaffY94I*czOVbv>Pb^0hwU1l%d>bM)c)Stoywc>dOAbc#5@+EoPMY3sJ{061g4 zayN8mt<&BHch1_AijhF;6U#t?tfxML?!2`HeSg8$!Jon;#QMZ5z(cJ~cyJbG{fZCE z3)c0ApbNMD>I480*1M^2h_wEOCY_7cF|?drvi`*#B+B}m+0aE>=V<|tvF@W&g|XJT z6gJMfTMuEpweT^VC0NhzhGn9)?>t0LvTi+!D@wNZrMxG_`qUh7sn**m+fK7SL~}v9 z^(Ip|%dp-|lVhf}l(us(TgT*q%d(bGYMX6cLX}jGb#gzrT13I*XRG2l3dMSkM6-eU@+3zQlaeAND6UxQu!S5^K*v$%BcT9O&O zU^*6dII(OAS~-%~Z7X0$6CYUv*s;VGWcNOvxRk`7?-FmW2kb;*Ecq5sCeGY}%u|WC zh%=u~EFxd~nZz#J0Q){MV;o>VBzEzj_a76hHbdsw#9J58=1+-3$m4r15rGZZafuyj zAax<}@yh7^Vqz*86n{=U^&=`=N_>d8_T|J+$z}3OqMQ6bzb4lD9QFQ_xUeo#R}yED z2zNDch8=VNEpZ>|T-Or6B&p;;0N1`8)C42o&jWd}1tyG{Csz7c@Q4*o8t01{oJViPT`@qTc9eh_P1> z3}UG9;#)`!Gxj&*G2Hl3F{+O+nzo_(NaF)`v^mPyIuq4L8!wP)ZjA9cJL-)!&Z6ZR zXUuPnl5ZMceFCYsjQ75TR>m9cIY><~&V2xnw~ag3;PH;}Su%1>G(Jkw+9YGIEOa#4 zxT6rMDMk}f;dhO{rK03iB>NAb2 z?n1p;#@%Pp?QG-HtLWhaqtAfH9OD`~Q#03?WI~%C8n1nT)I4LsJDAaYV~=c9|H!y= zJ{ntKtVhISq47TZtQPG5&iq zQd^DxnT*Faqlb9vc4Ji%&vzKJzrp}_8m|ur>?`Bbk0NuIaXz8cZet4@V0(<;5i;yG z-Zcd?`r7!fw~@Kec!so>{YGOW)H`7Olqlapqv3lzzA;WDQ~b9^C$XMG#sNc6;jppy zO=KQ1zIGTDjvDJ8N9Hl(+Z54!+&FMCQr{U}!nDYH4c3bkDrVkx1;1aiJM)psB-Q^f1Wu<#m)C zY|8A5)DY9OY@~*o=8`LNn5jG+nZr%xcJw#G^e{;YBTbLIh3cbB?>9x$qfI{2BFC7D zXw+j()=U%`XPVv`us2O3zD4F+rg~&98gF{@HS|8gR7!@Bw@uCIg}-BZ(}n&fnmUuE zZIbEHHh@hwbz6wX6jSHNP~=_H4Wdg^O~27Le9!b65%_7QUZkMDZ`y1?k?E#}ZIPN` zIzJJ;&ooUXJz$opr~zQJP0vz*$OonjdW~~Txg?IvH6^t`e;=9#kp3{wl>H1I^G$X_ z%#Td_Y0E4yT_a6#p{YdzdjHt;#(k);$TX`X7G$xh!$3TinD)BS<|n2_eNkblY2|)2 z{i*2!8T&soz4{pHeQugg7PDohtqYO4+|;}$9xF@-INZmyk`&D^OfUY3#=bO_--pyH z)2|jZw%T-=l(aRbx$QBCwWgVSky>ZEs}TLIH}yG&#|G1YtH|7F$|Z$ylWFZD41Tj| zKe4kdCLbA#x0+_}!63GoI#H0>c2ghHz;>7($wYrUP5ECV^_A%$Su%E+T3f`5=nyHND*unO~dEkwtf(skjiW>^I#Ug9-;sSpzY#gQjsGBK3`F2BF5crU%ZT z$RX3qBmo{aJwz6lBc^yi26)u;WPM~FGu0w#?YOCoWc}|<8;LTUFd@Db+rqSxoCK## zHAxORZ5lv)<&0^v>+CZ{b0IEum4BWAbKljO&KI>{A3z59*vzdeK;G{&zsiI zL%j>8w#NXwXgXL4kDpD;+M)U-Q|DcPT{b;ShL>MV%ci2+UrqaFqTYW@Q-`6*6;rjw zD0080}++3%)_Wca*cvXBe=57UUpk^0m0MlV#qX)5{$ z2Kbk0`E@*QnNAYt`rDLB4%q(Y#+C6HVDA4bU<1u{zC^u2=E=9v(O`4Sy+{o)-&2am zQ1d7X8X9Kae+{tV=IP^+8e#U5{cNP!e*}+F=AXx+>Cxt^Dd={L*-AqiYpyyS!yRY7 zx&^5>&FB57{+4+FvDWeCvo}z3f?0nT9&ekwP-wwB=C%)^!bI~MyOBA`y#8ram~1{? z2?LyBzCk4KUGpIq`kQL*@;oZMXRgy7nbXW|NWppEJcF!^)6J{P0h?idt{FO-X}*Ve z>MV2dW@OGb>jvbewX66zcBy$BpzRy*Al+0GM^!D*=qBX z!%<|7xj`jVSZkj05c*qZ{)04z_2wzGE*s3>kqEHS{Pk$SHkqHJRyLbssLd_r9?zo4 zR&y`XkG7dJUqzAa=1oMwc9_#iso!bt@*+}SnQIY8-(`NL8M@tVF6)bWd(6F0q4&M! zr~XFjYxANkl-y??MwX2I=B&kN?11?{q_H0~A0=G+#=M=#_P6FM6ytQrd>4_!pUg3& zWS=v49)Tj~%@^Av^MbkHaSZ9A`H4Az{cNs9uJ+63&&ZPTi@BJ@yI;)%N29`j%-hNS za>eWqpyXBaxOfckH}kcJQRJH0MPW48%^lxH=I`cXb@6U*n5#XF)F0+Eq`>`Yo=H&y zH_ba{pxeL9TS+LrW!`rZslUxF>0DQTi=S+A11x!K(bz!C)>FtFY`JMge?u%E4M)kL zme0sLH_Y? z@R(xx{ynt$uBAyE^gh+nfhfa!mMgJndYUDbEUfQa)(pX8x+S9=P0z3tK8zwWEf2K8 zW0qwg^*-CuXbM{Sz>@M79&;?;k%M`zW$d3Q@}cGMB&6n90%Qo8Z)s8ot$buzx&WCA zEc>dVqlK2c$bj;(<%N3yTV(0wK!1xZCx#-m#Nwd<$xke;Nf2CWNv9?M)UurHb)Q*| zw8P_b%gT8uxy;g*A}y9%mQt|h3d`TbwO3lYld|=N=sCAZhPvNoNa;!bN-C*fSRCuFh<4iQR$?`OD%FUM7`k}%WOJmZ3 zwpx5IBXgVOcOp95El*wnY==dcjm({vv3H}tuPnC+3wBu!k#fGfQIZ*PL#ZSE-x7?F}BHvjK)xhI~rP>hmaMH5)H9SsP{{A;IPh0LK zx$cZ*2a&w*Exop)haW6s&LHzg%U|T4Ics@f%tP9dmZ>Y60H9gE~ zEdp$~brR9K5ms+4q()j_$wgzMtbblYk1Wv#di%%A0MSvkE0Yur}&|dULGz_C{lK ztx2x{_M!D&Qo!d~zb6aGeCy;Lczk3nAPdL>>)m;1WubMG3-vy>esB);7Fk~;@nEs_ zU}Y5f#Cn)@AnQRtdjHfqkt}APSs&bnHb1vcBSy5$I-?A&EVs5hfz%4?m&?$~O6yz_ zzP_;DH42$uT1SpWy;auN-$TjO)}cf=*H{P5LJw=L{hvpLb=Cn!WUjYvA*bgCYn6MD zxzTz*?e|UAxny73Vl8|WkFC}LB(3y zj`^)MX#-M+tWW=j)M0D$7f|Gg)%+YLcGTLEM2BP6b`#OVacfgOQr}sBAalwIYvwcz z>7@0n4;4;Xon-htZ9PDnd z`pH*!-nw=$N?x!|A#c(}YxlG3g)&^wT{?l4( zJ5o2T_qovKU)GOyA@i2C**{U?Z|k_nF{A!TJB}c8K+;Nb01ZsKuo$U9NqtE48=N$T z1nVJ5!@A%xH0h;=cnnMOegfF=q%IF5H6khI1N1O5sdYQ_Fe)jPj3lFzR+4xyCg~p| zkQ$rR^Ef&hmsFKh#5a?2Uc{*1O1kSB9^;etUPtu_Nli%>emm)fv6#a{i$w?=+AahF61PW4lH|a%kG)_%&Z9%v1CB645I+~U=cQIOdKWTA&WKK_N z=tYGYNp;B9JTuApJzANSRP_(QW+z>H1(_ctb!?3abCTA*gv_}~yH{eIA11v+6nb9L z{x?v4e$tR?=;))Q8Iw_RK~hXlz!oNz5v%(+X_96klkTpMA_Hvw zui!DzHvfJU8Ejik0_0HJkp39bFx!Uls4(1Ckci9?wrBPtbEIuuF8Uj7YcL-b#@eQm zJU`BsK^yNaTcu1q#@k*c1!sb7{V>4Zw)x6X?;YEXzG!TsZPy+=CfT;qj3(R04+Ct9 zZ5(-;rrO*;;_;qMPocBZY)QvZa=Ptb|H5O2Z6P7;Ok1n-NX@d{*oS(vZPUq>@`0^o zSIl9KZDkQM=h_l$;qjqu@@YKg*}fo!alY*j8sJB^YhLuQz;=t`N*3C(f5GEp+oPm3 zEwZ`mp_Rq9E;^)^*gjc<$0xRz#~^d5ttM$wpV|^XLFQ++o0%BIO4~~m{kFBSptyRKjm8*T5OMryO|1=1?_;jtx#{5?b_>r?Y6BXs<_AY0O8xA@hK3T|TNGv?cqI`Hk%~(ZO$R|Dd?ML$-Md$UJQO_7qAU zu@#U|bJSMl2^2YIOFWOJkK4XKgOcCbdJjb_Cu}dL;BnICrIkNrn@@7jY1?oLIXYw8 zMNYc!ZCy_w^`mX<7NpMF4*ZJ7ezMsHqp@?gI^^UzZ<|CVFW9P1!{egOOX|+gwt*!5 zUb1~o+Wci((~)TU7u&XVsQ0Vw!g-YZkL_8C;kjaagn0N>TR{_4_|4`arSO_1CQm+%3Zs%6t^jOw@}7Zsj7k2Q^s2GR z_mkaiT=GPc1l~-J{}8Rbm7J@f!uaHrLR6oSJjaB`+sWrCqWqoY0x}IuOdkIc>PKbWoUZx(*y9Bk!&W+nwk83 zE>g3SzasPE?Bpgy4nIitQdrTP-)|D@oZFOv_KBDE^ndkz)WCMR^m zsMjZ7A|YdA@|Qc&?dIf9%h1Z!WLtlvjwG+~px)8sdRx%gvE*r_VjNFyL3{JNqB%eBt)Q`yn2BWdF$*0~y zE9a7z&>lOVyp4$5)#S_bF{Iy;-@k@7H&-3H4E=4XT0(qtYt=<0n{KN*lq8nzRTVOh z?WkHre$lV0&LNF&SJjh~(B_`1j}g&1RP`=e^21fVB-b6Ox`eFDN2{7r(dMzLTS=`x zUbQXJ!SAX*w-AFkQT6E^$o#45LqsFbRULL8jjZYs;vHA3KGz?O{Z{pC13a!(eTX7L zu2((q5mGm*?jRr0pH=tGM(SqOX32mJOSwA%kKrk`7ho(SQl8z3Rz{|*_!Mo9PWfme zN{&hSBORF&Q`*ulo}4nA)c7eWbLJrRZpwf>q^72PZ$WBWO4>5j+e zDZ?K`k!2}=m!jVC6#diaZ$--EzoMg+DX+hRB44D890b^^l&YkauTELE9;vk{EhwsU zT}mBd(A!d0kb<*4r4LD*J5!o;L*`d02PlkUcZy{+QhQT|nb79fDOX73-JO%@OGn9XQm&G(=i8K($tZa!W%#S;=y1xr_X2h#WqcEqJepE_Dl(6! zJTf0W{FqYddpypj)V&1QPbsSvw0SP26KOB!Q=SRnaUtcI2TSqJ?OUgZD&ip;)&_+z`M#^Lovj^kPXhViYA^0Wks;MCkg0QM zwb(j%46Am$3o?gSYezcJh-z;I(EG@0&yPU$QPr|8B6D=Lb3IUGOtp`Q7>})173S|4 z62SiHAPu?3VA|D>70$t!1}S^VvpHC)c@6yzQFd;io|KEkIEN{orN|tv^csWmBb1Mb zQjb(RzlI{Clqx%QF>zCs$19=x&y{D$^tDW>nT86>l_ye=xk5P|gHfzh<~srVLMgd{ zR=!lsKLEB$sbT|cwQ^z~8e5|%uOqcqnMOxb*C|g7MQXjW`*W1spuE@*ZEjQ={u{7O zN=;&wJC!!L)GO|+vhXb09IPAH3_T3dRU;BMRQK2pv^h){OM=#L-Ml$SjnI8}4sDLq zUTro%Sr{9SG_qmVg$IJGCy!5NqqUb0k>nA*xD<>aE z^$p6de<`BvKw~l;JwKXAVp%Gw0xz8U5G}p5CQsRF@<_zUP z8cNPon#=)gma^$Vw6Z{He?N*WRJ#9+75P{x-Geq4DW8zUv|M?Ggn$*wdGeyHRNC}M zD;t#D7__oc`IAJ*P0A<440b6C@=<-avW5n+N9jbig}us6vI%~z^dKkGJ|&;bu=|xS z9|Y`xGJq)dL1px3sQ#VOwJS=VP^!~7PbyCk|2?J5=ztzhDVkz zD>E~Zx}@CmI*MFZ#{3hRzbj2i6&s+tNi=1ou8ISVjndVsgVbor0o$l6I*rFpUHg9mwqJLW1gE3AvprGdjPA9$NPVvx@d_II zL3f%Ix*v7N+5&b}SAPm%zv=p3#^aila+YV}}09JoGS6pM3$3CHmYFlw6^oL%U?1-bfyg_4;g5 z);H)2DM)mqel-!xP5L|{Nn7-tA4QR^`h?Grc~GBD+v*$rB+|3K)h{@T%tQJ!e`C~# z^|ABN$`O6-=aD+9cRDclWBLtR^k4eW!wLOxk^xWZ9~uhSDg6dgw@&M) zk3-X!^^?d%bX~vVIXwQ>+ZJJ*!(z9Q6J}iO4AQeE#U@=x=JePlEl}jc*xZ#!Esi}; z){Et_r<P?hf72EMuJl4eiK*IFe*h8C9WL<2- zo2almb_VI6dt%>Qfydt1_d#(DU&l6>3fR8bc~_9yA6vO2QU_umA|dBs>=dGa-^8Yn z%jw(LNpy-Ja)@tNPQRk*;%Ac#O7O2 z@?5NaJyPdmKVFI+F2w#x6T29@f-w2#*g$Rcekt}r5~F^JedQTEevSP-1CJ}QpBm6D zJYf{Q{99~34dPmCoDJ2l$F?NP>F=>sN1~NKVk?ux^k?kOqj(H4To{VXp@s)GAvMg< z{7IyS8*aUc>LUz4&Ozo#L*M6-Im$4-2YMfa_ye>#)^MFn<>L(Zk!t&vVMrM=#~YT> zMwnoznT5yOhL^KZCI3Y(m0Xhb0plMJl}A#;kMS{xql8lER3@Ki%u2f!8^URsWl zOAJ5tL*`1uGxe|p+YKq?dD?4e_y%CV7(Us7%o%ZpM(AO4T$_;?(vG;xJ&<`m&i4aS zSK_LZ5phVRpMOJAL+g8}lk}>_)?jlr3a_Tchk;jmJ*igbYmUD_#BxG<8sycNN7?=oXPA zeo|LTYkNwUOW1N+H{leDjMVqKjK?Vb<78>us6YKEVBhLL`2h8%#b%Pg`hM)|^fG3| zK0s(PGxoK!NX?3^O^%$|u{sJl`XKhxuaKG(dx13l`LS<5i~c@}ZJmq9g4p>)8W+ZX zzaFrUW3Mj4V^QqgQ}I|F`}JTvR>nRw1J%EXZF&?Xzl`lha?h&R>KoAC>e%Oc0yZYj zNy_9qaYYv~hxg+CT^mI{h+f!Q4NqeE$ZN{GzgXJ78Z{E^UjBR#iUK3b56cUuuQ^ z)>KY9fydg)&#%T~UFDhOsIb0rDcMmrSKiYInOiC+q@vAn@dKsD!IMT^q4BIPrz8l zR{52TIpeAv@Sx;dRdzpx{>E47MmouaD)Wh>zFpx4@@|!Gk0Euw$|GA* z@?w=wNeum~%5>t=e^=T11Txp(b-g=MU*EN18B%ZE9ryu7rriC|c+^{Y_udwOZM?fC zHYg+F()f={Xae!OcGCpnmy<d*-0R>G(72QQ=H{&s03l#^;gV z{8RiXV#62Wt5ee#<7ZXI3jY${a{!9`8vp+HXys~rLTwcJEq>z{Nc|pvZU|C0;-4Tx z<<0mmKO*&4e9D_xg24&1C}v|=LQnFJj7;#}!edMVZ_%*{Dc#WKxP;4OEqyED9Gx(k zmN5KhwDNw!>w^KCp76*lq-G@a*pGU15^j)C{$awfQ7E}EA#)r?wkY8^+3c1i?DL?) zCkg+!gl?B6%(h?ldNHz#*!aSO7gwETrU_^tHyP`tH`oD*%*NTGUW z*F5C^Yhfegw@svI(PvKYP9ThG)M6EWH%=q@s>yxh@cZdh(jGJKH=+HkVKh2d3OQr4s}ogrum1zxH{JCO z1{mm`gz-I}m4=*>S-$|56bfE81O~q$tO_ZigKJhDt{{T%qTKQx8)IJj?y*Tjm!zUNwn#v>Q0k< z^nvbgBIyfsOP@yOQr#?aW~|W}2LrZEx2pj%C+jB?pPa7$Z6O9fSN{^}Cm-u|q;`Cx zA5X@BiZU<+#8p2L}KwU zUF*967_RemLERC$S>ynFM^|2ox|4Lrmd3~z+t`FQ|5a2KQ)t_cyerRMeiS92tDKGY z0xz{e{_~}z29`|t7WwTe$K!YVEpaH>q3K6}md^MFB|9#@jNhFKNyO~@a2(2%^&xZX z3#R{|p%WR>@<^*jj*{Qd*Ku_Pz4hY_#&Dl1jSXPfF>t$oxYY z_z8*()s1beu3BB1)gFRrv--d zg>s&ZFWZ!}@1liol=U?LyQn-e4yiwsSGvkNQ}n-(VQZRx7CC69>-X9KpQV2=6aCH6 z-@Ou#`TBK)P9N)g&PHm9e$!1ASM)bg=b7rq(Q?}jG5G!5s92PIek)mc+QpN7>BZiQ z@VCoKXb~V5DKBFcR_Icb|*=$MmGTq#d4trt0sW zhn(IoI`O;D=YQaD-+3odso%hVBY%K0o$RLrl@AUeZ;;aI0#aj?X+`LGtYUf%&5To8 z&@h%MQ@;ajjnbnoO72x&c@|9_Qhc2OJFA?Zh1Ac=VDu%%@nj{GdfZAT`X}DV#@|~1 zya$cdbDzZD23^}@+E4ALJ=y5UyJ)t_?(>*d=6l57TrD$D#{GvKzkOo^DA~1uwC?f+ ztC8Pd$#@cgD~dw+GgxP(;H)9K#v{?++qz99NX^lGU4|lab*ZaR`9s|nvgORv{Ye|~ z6W!m$g_r97sE;CRbsJwqy>+^dPLy1)`+;1R8+6;6;jvNIoaDt#x{G~LZ?mq=6cpK_ zTb7T^uXOi5hsQ3Rfds|fy7aH`*rPk!9Zm1m^&zYE*ScXuzxL@;$lASMS7#_kZlcH`-SREy=&)|-F;qXIJ4E99QQc36@i?YC^%CZOT=&Uh zRR2z=C(eCBx8rjx+DY9ryU_~NlYCS^t=mQF`56olJ-nr_N#f+Y`g#=3GgV(6gUt8z zPZPVFroTmoxV8HG=n|oI`bA_Z+@|kMlzh9s{$4cpwLW(&itN+hYJ`rC==;$U9Mx}r z39w804y4Il)*pNt6~@Q@Okpb%V&5K#j^2))IRpNZ3j@aY3aevXtU$D!|=D$4m)x>pQSfiHiLAh7fLtb_lqA^ z!YKNzCMWE_5A;EPf2HB~$Qq$6r!dcv%7`h*oS^i52>rdStbPcoY07@GfWNPlE=Fp) zvid{RUZXTIqR1Ad<3ZH>N*R6%!`!EICkf$@GL@9R@03U5QSt}n3iJXHlEa_iaYgCd z5)1f;vXt!F{dKv?Xl0nLDpAgHx;%>TdPjGm1*%Wg{Y6ofAL!z$qW6zDrU-yi7N%v7`j86XQ{}O|yk~JI@`v3&6nX9jI5@`v4m0IPP7v|DIBd zIN&s88%)lIS;~=FC_Gz#}kN>W2)&R2Sp^>wk*wh)gc%DDH?#&YGr>u7L=lKMA_ zY*VWJiB`5Nx*2$k)}4rni-}o*I2(P;L-?gr{=Dbz7zO{~)#9I0yLO%Io@ISXd-kg1 z^XI2Ia~%Ep1#&a<0wTALuV?$1_D{C$RgV96O>?&I-LAB(LutTKyMFD|u&lN{y7cZ; z)~#3D_T9VI?p2Qe%i^_BzINC4y=#~DD=+QYt)xqN_wHSK)$Y`-cP;)^t7G?`wYYTc z2DO~2&eU2jIcxRq(V?Wgw07UJZfVYdvvw-}2aqGRZkof9mY&g;Yql-v*|k=;?%hgj zm6o(CYg^W>eV5)HO51iVY2Uf5Tj~GbhTZGsUNM@t;mY@Ue04lxP89*!rG3iUm*Sm; zUR$)nQQs*Vr3PKydzMn2|92OvOIf?No!YmLc+U-Lr`2|-Z~OnH1PtC39ce>$F6k2J*rlXb=i2RQ*9JP2b}Z@Lr94pna*xtpwL3#%i3#*7?@-pQ z90`3)OnbcAK>My~NI^RUW|fzAMFH$cY7V&|eKMJv)~{VyMg&~;jvi486eQS+W>6IY z(aN^(-i_L*6xl}4_U+Z;at1It1ZM-%)v>gsymwEYDCQRER@xVc5g?jX*1a35qDTN! z@722p5;Xg+y~=uN;8+5Y1=7@`tV?N66bt47zeJKJ#*^y8>yO+79*3AZk4Y{dm%^|E zrL>k67Nt{|$P4;aX!kaITJ}Sna+tljOm(~Omi6N~3*aUtt zPf-l!-i9i5>KOEn7+tIq*9?DkwGH>sBTiqXAr92zmp-ARp;BXmsfpn(`kQIE&tWjs zHatdzo8+gwxQC042c0le3>CZe|JX%HKx;d64jN4hIoC|)&~8fhJ?ljYp|wJX5jtuh9Bk zjSO*h4TffhR5YX1Hq@p^GsAsOgQ>B>knb>5YhsAgCt$QZ{U&1iPs5>rUK<+jYix*b zXt)=}Y8w)p7^>7ZSW*pD8XF#HVzAUUBsVftY0}y7&mu!|L&L*JG&Y#?4fkNq4nq}v zd`H8>O$_&XLv@oK21^@*y@}z`h6d|E)HO6NGhm_3U8vICsfOgv24h1*daB{>+J^MD z^f$S{@Njd(UHYG6FvN!XDz(dAFer_6@nOsOU98eVX9&ysrDE1w1}rv~BNcOXG%{3f zVyM*2fTQ3E`o!9_cz1<0upFiJ0Cpu%r7+MofGX87#5FS*&`yHOaM$AoB!m_D0!5Mv4V4>L zH^k=|9;BDt(C~zKB-5idze@cpwGEYV$Fcsd+B|%E$qqwY6GD(UDpto(haMhUr8*vi z!D+awjv>KWaSr1v3EWDfsusNN7YuPln&0{SJJq1?^a3>)*BVGq&rSwCp1KDON+X_v zE3+VwQ`hSZ@`yRIg0b_4IA1cfJNPV)r`r> z%kGcP)yxu^zr)40&q+5AeuU;kg=-J#@VM}ko-O^p)w`XR%0>Kno$_ls&iwpc2 z0dMO-R-VuEj9VSPoNLq~p&2+FUI$jtDQ2LixYIx&)0-d2acBCAz3zZ7({Fdgczl7J z;sTf7Q&<2|*yqpmyKC^@n)Vts)L)Gn*|R;q%&a_jP5W!F0U%2t-(A4jHDhwUeouY? z|FYeAnQh$JMczWco7)X!W#(lTxZK$Rx4UJ%2KHb{w>OX(zE^l7IRgjY| zUbdRziFsOOHw`rR(#y7Me#=Q?Opc6zE3Y};4o|`!V7cGxa?yChVKIyb^~4&c2e7X8 z8qW0MnlYg|glw4sEF3i{=AT`ImJ1EmYMfb=<#ZQ#?T^|i9gxX@r?4o~T~M>8{h>y7 zuiNML*AzX~<(|?UqNg+mddkcJrW1a-yy^UOU>t5yz>$gqK@3PEByj`^it~Xgg|6oK zon}w%=S&s<6>}H<>|6&BGt-}0PsOC19I*vxu39i-5vfG^h1tb4 z6}19YZ3*%~6jp4gKu%^J)}?8{o!!)p&4mpU$nyAWP?1`VbMPjfuv0az!V8E7uysI8 zvAYWMiix0Qv}5WT$_Qj+Vd7dM*aD4$3et{p7dg>hQNZ5@o6SMY#VK}41z-rr(*(N^ z%j(3kGO9ayPdm~C;;Sj1FvA6PanzSsPY4zWly~mkwOt^9!Gvv>bkT^qd(ycTnkHc> z=$VT)KjWz*O+{2%oE_gnc!+;|cqkPqFDO%%J$g1bpGz_Z?W5+UFZ-dQ27H~NmLOpdLWnCdPWf^Ry?!KkXA*S? z@KnUK8R>4pXyiFaWO`RK({dbawmgns-+LC=ezmlZaVPCSyp%ERn4O zgG){u(&chAl`oEQFelFsBUHA#pb&CGzNdiDv35E{rUv!XGt$$X>Gd7;9Hq6=>*l06 zBS?6fJ)ER7mxu`z75Y4_!Qp*{#a@?N%i09Zsu$vH#ANA}c(eT&Y<8YYjEpdfcZ52J zRIww1Nq!G30D2%D;-AAQ=R_Nl0WNPYu{5{C5w@`-VZ1inR|b$bCrk1L;>n!rNabvG zOUhKJe<_nN6SUWGs1pL0A&D$1-&8@|HIFCH1wjUXBHv>KFf>*%3`dZ;YuR!T#>Inj zgOlWjkkkMmh8tYy20UD+Bu`F3o^mpMAShxT7@0C%{sv;5iEGow#_HqYq@Aelv>f~= zh-hR19*~Ck=au#;?c##nq^uLRj^GI*3BpcNDv=473tYYcycyDD4fO}J)=&cU2}Qw5 zSx}A4citvH?Kb)8HEYI{m$iSfS9wX#@)$6~Kz_c<>+z}*h$A(ElA zghMhi@GcENFt-|*hwUDYEZSuL$*k*cG~z z`TwORP(Nx-Cs3Tx59-5k%&rkR1g=YZ3`rHxzY3Cf zbOl;vwsbdj7r4DZI-pEJp$9sN3J^(kJ`j0Yfc>z@lPWicoT>zgRy+3U(ACwYd;1rC zrCmzfm&3Sg&!#*_c&3RGRka)nSp8yQTLPVFC51GX|`Azi_Bnz0D$NRWmX?} zZjR5TwguT;qa)_1P;O02AYh3R4UtaaDeyyX2cIC>!Cs?Q0K__&li3>5L@m2RsITs# z4Dfh=VN=o^)EA-^w>98Ur*b8N1|2P{3&OZ~@TD@V3s;d-iFl{0Dl+teY;dl0h@GxB z(AW9I|&MM5ois99oHkIV~vP^sWeYr*4vfi(UTVH zL(BQTJiF#MV>PdSI^(>Qgk*xD#gG_@eS%A2-!%33{4lbBPUdAnMD^LBjES9<<8`}X zSz=>Jc2?7TSFxm{A`#HQg$N~OD`|aEQ=t(FO-PPNCKxK2jRPtL@o?BiC|e_-Mk&CH zK-1v8LpG@Z2tgYb48pSr!`xn&u42M{Ost#a+J(T$oR<0)oL22$%YPz^@CX7}xdOc3 zLWr({3Tc^51V}8CD!n;`l`5FzrD)|X%JjNn^2#h|?tmKV&djnGW(A^Ti;XYLk5LJ- z3gU6LEX?y~HpLJ#3-H%z7naS4+!$I>JVn2cSEjq31Nm(q<^ZpJUf*v(1wuqTZfak2XhH#!OXUKJv{}awPQU?%FBC} zwd-A88VJ;=QPQPv$;-Xq;_3poHjHHuyC8kpMOrM16lo>BS5ul12;_6BLr{}kA}S$_ zG_c;L5HB@N((g$n!-FT=9+nCY!S4Yr_4$KvnPNC?`y7ZeWa(hDMXSu_?&2alA5uc3dtZF|M?NBFPF!Rt(ct9FZs-2@Ni7jzAb`yp{=GxImzlD;HKZKe&jH z!@-&Tt#dp%h1ftIPzWd_o|bMV(So=av!b1yLUIx+C>vy1WQzol6y=l#Kq$fa zFxOJgnpGuI>;gs$7!TTChr)lQtTXuVDy=p|GfF zCYH1S7V<#L{8W1|6D&jIdI}(;`e6d|6ciQvVZcijV?NVajq_Qz8x!DRM^N&N5P|%rZ-pu!;@S> zLuP`ukZg4!w7iMx657!d_L6L|&f#l>_l1Z|C6SX%!G9fNWWJFuipSo|i83)+MQj{+VP7LkY&KG+B#4~@ql^$Nt^1WQRe%d7C8m+)V8$qEIb2&bsX(BZlmW77l8rH+)q&K0 z9p!(;d7=fZ81uPE>leST5HN(SzE&Qf5C2uYvSC@Wb7E&?z2SXG>SWNr&@|f}@OwQ? zo4UPnl2lI1grj&Q)EY4qS(aVeu6L(Eb}k!RNct9T7Dqj)BS>?9BomYGZO|7eCMO!iod1c@j-BOE&2|ilYPe%anrgp*d6pJ4 zs!bvY;|Yh`sv>bM63SJCkmL+B0|pVgNLeV95n2l|46LMle_Aay2;)W>8wI(IjA#f0 zabfZ1@J_K`C8sBXD`+LW?XZ`73!B2T)2h&$9aGQ}2D0q3UM20ilzO}^fZ7o`TArqL zGlvga!=$u@LZjERUX7^4!wRb1uZa3j!jR-x>MFBY<3iNoST1F&$Yx4bvk+LI~padJ9>hC0-kprJRtZ zxG@pNqADS3N;8#~Ai71^8AYwd<`=>ojF2RXN$LZ54g6y(BtOAk!od#UK5<-kQ9TfJ zGN*uJgulTGV4fY5d522nWe`I+k&lFegwy0%U8jZq-wc4DHy9BB5tJ3!KzAo24O61# z>GeZmd{JIr3u$?+kS|a>Ql*DID^Hl`u>$rQ@Q`{KycU^NAG9QYLJ`9xigR0lQhG?4a%2#@a0H4W zuyZgBs6}o`w+;v%Wk(7DLRm5Wia`Hc@>0Q*Q}v?CM`hbly=N#12dEwf29DE7E%9>D}dX-)lDIry2|muB_uN-eKP>qlg`WbA(`B~ZSoXp}pKZ{~MQ1(z(a3Y}i zAf5ClC=vvP0%r9pm=}j>uSN*cP_NJy<`4j&TF6b+p}YN6J508PcJfCx*etVah^}frWq;k?w=*J_ zS+|7&F7Fw8&_5mswCi2grM#?LpnaED#F`5cUPW^?#S6!{CPkyDyf_F8t(xG)GQdYB zLXAlTt8W)*jCTdmjhp7dWI^Bbd7$ct6JRPF1ck7-J_{?(Ahv6zgdi+bT<%~QQ=+DL zY`j6FMOK5dpwAv}Ho~m_yTkPVNcLibY$)6VL$=o-^^o?Mw_jH8j)>!k@wpJ^hYg2! z?S=TAU*s;3TTT+P2ybY_8ZxbmEW(S!lULcaFuJNKUYxMesV?pCcs^o7VbK;8%qQ@+ zD9ZuC7r}gu>~E;ye4K-ckk=IKH%uxAk!}fQA*SX8HId#0XSWVo?}8JP7v2Tlt2Bp9 z4bAV(=tRT|)Ws8No+Nw^{oZ>}b`j-#u85mwxh|TfZ1l?}@;v6D2 z3>DHfVPQf(0C7+SfT-{o*U#OV-(hb+Wa@RBUp^|c9gz(ojA z%_=J|KvWbs5iv@1%9&tWh+W8Xd$GFefUqc_kpG{^8Qw8`6Ox{Z1lj$O32G$BQbmGx z$4Yl1Y2;d#aykb}kiQI*$RVL!uEU**2&$(l!YU<_N^^)5sSdlaxGcg&S6X_6;HG)2 z(ZHHDhJ890(ZW%^A+(3cejQ#wBVbXOr_@?VNa3+i2h6!&frkjMNKkJg^)!kl-ik8-0`n93dZlM8y?E6Q|x((=-|~YLfWP# z&;_V2U?CDk78*n^Lju#r!%5jj1#xlO-#PG{ur3s-7DfQM0`2asY%rg!=8?1_48(hZTx6dKN^)J|%-i4t8-)xv#u?j~=BRC|jckGIb0u zpj{JH7?zcyNqlTuRMlK>c2S@k{Xru_ga?;nE5rY7F2}k`0a=vuGZC&I$>b}5gKviH zFb>#Z963@(Cj$-8-{nH!rbjD-H_*u0LiEn^HrM1yO%I-N7shcLMK1*95fHwR@ZtA4 z!vco1`N4uYsv#--9Wu_Tpip5o0ME{FH5Eb&)sDpqJfQ@Otg3z@x2Ec)Qo_ytYXGOnGLE(RQ>l749$|V9M>ERBtclHcsdKhlDG#0N>mD_O01Hg z@dViy4NHc*U%=gsEL6U1(4|bAnC>2o{tJg`tyRJkg7=c6E>>MBWrXZMnlhn*N;8bs zNQtyfIK38myax9 zZG>%B#NIkX;qVA-x|3XdoV3%z2Abs2Uppr$lb1;b^k0`e&qAc(Ls#tFwe zxNb1Xl@URsS}T1lU~4nvTN7I&6uC+2p*ZalfVUH@4(2|0>mt}(YSeP1IuQxQ9SI9b zR7S6Ycz#+n&rw&XI#TNs=i#)j;7FRrdWP^4OM<4Ma;~6gM$$hIN`w_SV}T!;X21(IQeGXp_{zA*7A0>s5}*oOs_>>M@T zFz9s?JWPGTYKkXCllE#3N}(xv?u*xn38*Kho;@tZH8lz-jsj{mP$aoT`_3gj?T@FD znGMDrve&^WuRUNA2H;81aELNz=K1^rAA_mja7jia6uXTzI|$?kg@%=h&hrpWRp4p^ z3p{vgx*(htp7}90l#!LxJzSm(IA6Q7+WRK^Cgr9*QY2@mVod{$=2G-l7W%4cpf@%&zRdj+xfvVUG9;t?LN%t_$kx9%3EJ`R> zuvi#6M~Y-xY?hjjq{pNVg6xN-coyUlBG+@PVoC6X2ZJml;-sywv>Y$0M@i38IYOE3 z_R|4Fgds9z%EoR0mlC#e@mnrZUJ-3eAtc@InBZ;8Fd`!i72|6TPeLTQ&w@2Vg)!Fh z5sOf07ddT6gpfyCi?uvXJ%}mT8cZE%TtqU-)d=q_Vx5HL&V$XL1$7GIoN%uQF_zpe zGD?qkEqUSs?62dKoWY+B;WFqgS*CEHN3}GoAkCH+;xO}Kdkv;cMDl|iNCtb;t3()Y zaUN`U(pf6RkH}0Zf(S(+>KLRF!6r~O2+ikq!JkzS5o*@5$SD<<=x|S=6Wf5)py+UJ|r54av2$Tv*bhM%gM@*s#yhL+&ocCcTwsc_3IFnt59Sc zZ9czSZa#7=a<^D-;?AlmN~S`?lH5B@3e;)zszc&WUY08llDM$8I0KaAs={xpHFe58 zEe)gyH40fl!@ZH|VWJbGwd$ypHd)S-rwZx|Nk&a^=hR1-w-Wr7^_(ms9)Qr>MV?#$ zA%TRQ5a5-O=gT4)c{q$$S1hE6@pY;SCJF4}!QMP>ck2M+y}5=|H6vxqs0?JnIT+pms5#}QuRjMJH8CaN>Q_;3q(VIZEglSQ{^QQhHSekq;i2`bp-vVJN zX=|`Qv=072!6><0UM!+8Cu$`Ok~-P1*gUlRgjk`4@G@z3nB=bXVI+aM{qJ>xjdO}?aFYq8cQ6#RCOG>E>1WI35T{HwHdlYBUSrb zRfj=l$Tvf;7aIKDy{3W<~1@BHYu<+m&6@yfJ-7P(Qcn*CM zAy=hsya!0zaJNThNVFBiEDaXTyo!QA7?3AJc&k00EsPZc6*bW_sS*{nSs}cav_l&< zPp(K0(QNWT`ur3O$by0t{iA?+I28F&guM*YtuNo+r+XJ5VV6>Sjq2UH_oxn}gMyO* zpIME5R78{F<)K?Z$dO1FRggP@mnbqbG-|=dr3^sMN?K7A7oG^bRBB9&I(P+6)FM1` zCXYoBq_PWJ6{tHPHPzWW#`khBKMuDB;Ij<4ioIUkN27A*5bwdRRJ#gdtIC%MCReAG zJCnky!;W+GEiHKw8Xr?28Eh-9D{6}8OiUEVwgbX#8j5OHZ`hFG)4?QHqOBD&5@Szk zHR=k$AV#U471atLO+-?96!pO4rRA9^5sL(>DVm5J&BxED)cs8*6Ck<+iIHA{xTyr& z%N~&dTd`OQfs|p4G29vx$r>Y}q1i|QMhsu0Yx0tZfLwu&8X>+tw-p^a;*(#wt;B$Y ze5#2P5$gcij64muIiVMVa_g8ZuKDri^Q>WLuy2^(hT>>E5jq z{exOcF=2Vanc&ywA#MkC zw{;*@bF4oVTLP*R{a2p?$rvYukPjmb7vUmh42WIU7(mI=}=qQ$o*M1tO_ zMR?^kVuY~Ir)$LsnZ@1kP_%wvKu@wVw27!mU!eUI7$XF&*;6$Wy5 z5yGc%!Wsth8Xda#hF_?rv$oTjnx3AKn%=-!H#NK;6!Mhn&5Xulm_R&$Yowsk^P4tA?%Vt{ONXnNotB4Bex1%DhQ1gKg1g) zO2TCYGsi0kOL5J}xEIZWhJixE5Z8qX!?LC{Hywm=@&9(<$Nt|6@CdbIj^s+=Fz%FA zz>ni?Zg6vF0Q-wh=X#5aAn@?oV23a?1dwYawx`A%!o&zB+*|~VMF^E5gNLV~C~A1R zmZYe8p{YonRO&(OSreO{TN2^HzE;gt%OvDI24Jl+aV!jH^Kv{*HP?4gQ93~;iM6=b zfG{mH8+aVPMJVzj2;$Y^hrP7>7IJ} z3KE@G2#ths1s;LCt3aYVJ0?gfLGTpI9?=d41ExKbL`7o6jfbSa7G`G4ix1rpF*q&6 z7;Xv?(tL3m>$~>XNGNdi7SstoFG#x-4HOj5RGpMYss)FJ4}S$QQ%wMO2o*qgg9iuX zuFzgBCgSEamm~7M08}aB{G5xR6wax=*gp$cFgT~M@RSt#=4oF-GgYGHeDsD>2& zA^WKpv_n#(WSIyr#{Ge9sMJ56yJOz1p!Ix@j2>f5V#?pz(eGu^ifGmL<+UJUvRSsl?ZbRS;J`l`sA zK_YJuAyVlbv#ig*uvp-pAe91fiwop^7eee4oY5{|l1+ve(VDhZKce7u;tk#2jVMd; z+fsR)a8qgwCu#TN`RQ;1YtaT?pAO$7{S94I~>NvrD&a{ zxhBw&>c7)HfdB_D3X~194j=?EX@Ll>fD{d)4kZZVp^)qeE{XH&u26tY@aUHm;H9Lf zrb7J)W!o9`%7!2;Y|16QO6mSgRh6IsBT9$q5y4?c#!!M1NJnB=P==5f@YVu+fEw2i zYEDkGa4l|Ug+LvtP(?yRZ&O(IaTOi1Afphb62Svu;X7LB+$3M}1Bm*7CN-1+3u+D0saJ3(Zgp z^AV*PyHpSt7PNzJab>b9CX9#~RaAsKkpRq})!SjU893?}s?DV+d50TfB?Xpirrw)+ zyQ^ZOmL_t@S3ts*k_mMX!ft`b--Zr}305HGmdM5D=?7svf1WhiO>nudU@UAzsmu6) zBl7ZwR)@2~6|D|uR_J~Y+Q0c8e-7OAZeWGqTbP#zONzR$y~H@#!~tqgB#4Ow9ge_# zB-xsCU!3GE7?M;_HW&;4KbBOeQiP-;-Y>^dLPlWh3Pv0W;am!uG9iZ{?%IsL&Vp!Y z>~SQBx)UeG5MDlWtg@T(VeUCvS_ z{>grWL=aa&GS77ohD8mjR_ zP(?M&Tc&uG88OL~mg6h-i5rky!K5r9UQAk`0JoP>md50vzBLKtHxa~j4w?#=Rl;qd zFaYARyF1CRQQ;~Xq+lHB$q;AtnEeJ%x%vFf`N%L+g9cJE5)l9u?gH`VKmnsL7tvlQ z8C)c~le#sbz6gaON|%b;T7`lqgI}bth%W~Wy+Mvnz}^!czW+UJtavC2t^F6R{PuP3 zgo|4C5%H44K>Uisgcw0?aSWLqZfQVgTwd&g7XlHB;#CQnn;xxM6~xWberN`pB>hPb z_p*kAxHK6TeIWKEPXvR|rKB4USRUIN|uMnYu9U$V;`PkyYay z)W~Bvuiy~I(BR$rOu(4!VtRZ4kL4{j!B`f635YJG;u}oT5XI421^|UJKo_*Cy}&4~ z#XJgBh!gUzmo!`??X2&_C(Sa_>eqGFub)x+cv}4&N%PsD0Hb%5H4yto7{n!2k+Md( z6%RZT5%VE)zCE-LB0*y7utXx;AbF4(xxBMNeM=#VnCAzI2-AwR1IiAx08f6tJKIC| z6$(?KMnTQXYmJ}|HSC^5V}8RjwA!vs$ajKKi_ccvF6b_L0d7~E`GFCZD5i`Sr7qNb z#!Jz%6z44ZD~Or~&>X(!KXNHIdU=4M87GOWh6e~l}RyA;Go zIO*weIdj6uF0FVvXa+Rjp_7*IYEV79)P+kbVXTuj!@NwkDJq>K?-sh z+!Tb`R0Xypqp`^yo$2w?c@$g-icf@ukU~X^ibZ&^8q!7wPLL;kgPN{HU1ZKY6zI&C2m)Xex~fQoA_w?Tm zymrm)5i$-6RRBRSB=1mZ>xLqrl16dPO;4bv zLRj+Xdr5)(?7D%RvTkL)Ix{on&n1QOSYf5;^k$$c*n~p(3Z;3e7+=+E-bfn7Z#Jc9 zu6d)QHNU13|4SwYZyWF0&EA$rSKvm=YAahr5%71 zl7d=8M$hs_vZ62$zgf+06to(mYuI6zP%aObF;m`O!{dT!kN_H+S=1ujnJN!6b&f6$ zOEN_+v-kd+x~SRwNf zG-G*#oRr$>3z5KV5hzj-IU+&KCZSx4fI|GJh@iqWuPMRv4FtUSVq(asEqJSDPSL;^ z8+{NF-=gq@9DNRHgpfAwV3HS(^xIsV8(O5!Ng@YADd>0u z+&uhI0HNd+_3$Wmu{IdJ10Nj|al*mUAz2_QToqY}iK|ypU$Q`F>dW3vT1Ea-1DVm0vfzV|WeTbscm?u<%W^}dYaP8#?FFB>NJU(j zC)yT49ukXXg4^bv)41m_>zsz^27^cMBqwVN$vwyy8wZ^(n%x%;kk$rgz~@tMZzWSm zCf%?442_Y_JMrN#nZ?cXxWz=o#p)XF9uDK;Aqh#1R1Mp$WCdmUNrlQOkf6&#Q)#)! z6)E{K0J;qzL8*`IcLj9zw^b%W9MmsNOZpQ876I?06cDdU#*Rpqij^R?gKz)VV97{+ zvIgIh;B5Id2|{(0V2oG4zrhLl0S@Ab%sV)C4@YC^LIv@g$PKs%5gdwvQAK+?`X)EK z)J#aYm(qQ-@1mjt#{)!s)>)tyzM&Ytw>4-dzOSh2wnP$|(xUpw%c`n&;=93s)oKii zKv9$7K>pxBWS&;a)LM*buZh5}uunVE>x3O7i-L@BLua~O&7deF%FvoMf+8nAlNB2lNxX-td?1f(nLH1tUzktMDSB z%`SCXY1mLxp@ox&ou$gErb2LeQbrpeP8N(jUopJx>I2=;Nlw}Yg7rcs<-l-%OWG(f zU5E5@#ESde^f@tH=MZFwAu#SNCCmvgAhx*Ft|C<*xhaT0iZgM7F$e*jz5^@wkTjxE z@eqs`ii}7VZgL32C3T;X>`5DqwN`Ogmbi2#JWpf1qNU+bQ68pn2}PZO3JSeCfzzse zRZa1$feQseP5Aha_{wgLTB)_`=6S_m)gCUd@`E`%oQMcHKLibRsM;^Ij?pl^1&$L^ zTf*CmR)X7PEiw({kAG;s=OX};2&;!k`D>g3UvqaW(Z1wfQNY|d%&h+WG-r;ZU%w#r z6=(QqJRH=UOa4-AM144fo8e6y41x%sSU61W6|rP@zRQGkf+!`}eSx({oUMpwYUv2n zr@Ma&_8F@V0VUID@r3We|RR6 zr@R}4y^9Etcp3O|3eYtRH_=d#w_RN30(TCm1(+Mt2Zx2@{0%{cguOImD3)Ul5dhkliUdLK_mY~ z14Hx(zcvdxSZcp|@~b$(Q*8LY8J*7NgLxFTCDUR3MvZ(BeTG2jk3N^wv82M+lAs0> zM;EB=%gn-;FhgQdBq#>jF^+7f;mEd1oP*pf1kx@W$@pP+oe0YVK0$fABbY+a3kPHP z0{uhr`Wf^ku?pX>)Q0P4XjDhPH)wN`^ofat)FT-`q*@{j8|pz>HN`7Vs()c7UIQ)= zD8}v$r#g|)&?-nZ8iG6WV5cR!kw#bwzr2RFgN)^lUWVJHz2Gi_IZZvEt|gZhfLulW z_5q#{amCXWX zc}x+t_bjCSFXG;|xs4-97v)bucwU;!u%!|SUqY@JA;dxYJ zK@H0v<5vAh3uMZCi3uet7>5izd8Al&(MOMuq!TS4I8Ou6N#hbskKmR=LUt;sH=Y0} zTKZr{y00%M(;1E^<^Um)pmNL1u)vYo0^7kHgZj^GsXfl3RuE2+2T`P^rJ`y;#CIaN z_9}vFd*n3B3mRCpL?A#(H!BuA(=i^-_R2>*T49FuSQ`4XTK90#a28f}TL|bW+ml^y zn&*WC0m?Yw36S=1k+S@FfRC>twM)?ZHs^QUmkp?VnJz(GWROiO1QS+xd&g@lO`6 z6*Tt$*zOLushYx?CZ-JAQ@K7kaZN66P~2T-9mb&z=hmgp-JD?BN%^Ef9)e^@a?YXw z)D1?8v;l$VaGLO}ezpy(OTHFl1RzMO6oaz9kS(h{JDS2ojIu^)%M_GrCYrO506U7xR-e6^I?MNQ!L8FCZfntayII5(ZrA_HI!EveLW7GLrEY zuw0l_dH#a4gEnJ>h=Tb9CjzZ(YdS(Onh)t-ndte;{n*V;LI_$YslJh7S}{v#=(~)L z82?>yWZC)EsXV^TwO&q}i`1lL7fmJ~tAbtM-Svv!dL^Xf@!mQUO_1$P3lM_tp+i7O zFuk}qd`+berWtO>nTF)68jKSMaZU1?67Eo7vzc+e(f8P(9Wv+^5k&?nJ}Oy6hzMYU zQ#Aok>gTcJoAt6uPZp_T?}i=|Q<1t?>$V-8ug6Ul{62sz67uFEHPze> zXsrUk*Gz)+AhJ8xbOzt9R{TKTlbsJ-9l%N90O19s^m-s zST`X)A57o`w4bg^;_vHAKxv4YR56bZ-#qEP>HW*U^yYJ1CBBtk)XU6j6J+1wi9m|D zAdZ-UC?Y`V2gYT*Hibmk$h6(SXRs+P;AS_t9UhP>C#7JGb`?mUDJ(LzZV@QKEh!qk z+<-3E&!}PPAro|*BR;4+`}y#=u8wdlgsx}-wi>?1Yh`6#oX@U%hX?_5HqcKfSHLPl zTw^p%Mlr^wl-(q3ZMcTODZsY4q=o{g9YjBhVn`_SnvFf|t=l7=X>S3Y| zR7@I0R6c*AwEV;UkFreESI751GQBXplUR7FGjKL8N==ELN=WSK7R@Jv++VQVEr5eU9qfJ*7w57O&$ZNVvI}Rugm6SVF5xNdTHg#&?OEKM3lrr4i!R->y!a;dk zM9ac6Mp()Cg6+%5C1MTHer>hz+>Teo*6gR)_L?H-rVP{<@-#?JN1~por571Z9AANg z^D|Yk9tOT`k8X$6WnQ)U^@Lnb8sxm4qMKluR{|m*nLFRKz#5yzYa668ZUSZHaD&5} zg)U7aKn#qljEwcmL1m!>ZKck1Dr+FUF?7~&pFuUX)I!;*uX|Bg%`H#v85J!}mTN?W z4wmjVki#@hM4!;W56VRP2nHGPf}X-*VN9&VNRA!<9~fzKFHzBWXM{A`mO$DSrzz=ZwF@-k6 zHhkiPIwXCGYDsa{-_5HyT(MIxus3wJkb$lpkc_oM4H01*mk@W*0}1OISp`Q~^^kH< zbZp%O%e!OK$2@IN7z3AJ`VR_VI}og>F3X-+Av;p)*m(-Lo{0*qy|Bo|fS{i(me|?GTJczl34j zOq+K|n{GwJHh+8n=BJMz-oO3dD&v6@R2bLY3(y03^g_sKr^&4@O0L*2K6LW}jA~c? zaR+H+V3t)bmGX}9eYPLDCkz#^_EUHYUeTXv3N&|TM=D3u0r7q#m4-k3yWNoF1RC)` zupx^Wnj=1mY{RkYs{z&cRlx_rO^9D(xOQZQen*c3Vj! zXa05G@UMG+kCNYiWrfS#gP{&XG?2KaCuFgBjnj(#D)gL`v*eZttnBhuOqX@+Ojgi{ z%Jk)#1C^kR}g5c+OOt?Py*3r@RuaB{>l$;2iBc4Y|w&Q7GJzj!)FnnDSw zdy49Gcfcv6Aydb1S}u$pmiO)YlKJd1$&nSndc;Ltl9IE!N1gI+xJWKUeqzQp0U+-_ z_iO3gdiS|q$C(; zAXs}Vt4wn8ktWZ4Yp5^uP$ufb_1=Qs4kP4qZEneV}?FUtxjR z<|;}3V(Vg-U627N$uX7;)iINv8=4H(NpdF6lbJgE*E1Am$1+2?X-d0qA@9X9VJWcA zI+vQNPPk9BZNw(yX!8^>O`Q=;gb}*nMS7ig4K@OzMr9g+w9S9h6w<&1s%o`Ip(nI* zw)GWwLE$^DCwKE1JY-5X;>gBn`^J6osehMF8`3q)IhJgluDj&zIP77yjV-263{Xan zsPog*f~$K58t$1Q!sI3?+^Cl@zfOrx$(v8+o|x>>oyS{uZ|Uiq+AAWbJFcXP9LgNIVNq*djP5#AW~4pX5ZKGifa zhTZPO=mL$hs=fZ<2V{x(^zid99gbEsP-6pagcifF-$EQi)K53f445X6hdPb_Qf%mC zPc5Aik-z{khO{qsr!X*fl~_|{s>>JjsD@L#LyGE%k=xfv@3t?qGZCS^byI7AGbKqYph1emZe?rs zlZR{sXn6~ayP${wpR&(3)d3ZwDQ^JQC}eg#3>cN*v8EcOi}9VSkzn?X(4xX`Z*{Yk zsZ3cYq@Rzoj>_CeI@tSc$2K+b8cKllHlDsjI(M+_R8}%)EaZ`m6)T&WD0pVdm>f}A z1`voWWsu%vYy#12eRtzbgSWJD8k@6>zO>QujYbdpcR5z?gOE=L;1ZtR+ z5kX$y<%Rs}BE>^tvo;hHb0BS}FDGObKn9x&!@<%J zlSxWwTaJd|Xy9_6?N%#WaDbgLo3hf(CA{q}pX%5qfqx1vk^esF83wWgdpvmx3S*9W ze$SI9oUgwhrdy$uf@SD19)ROavrdwUAY_qFnjfdV?#sSnQdx7EY?l=jq5<)zm)^BQ ze{}Y)9r|ex-b{HQYwpKR`haOdxq1qrgCq9^GP?Xj>O0-APk|Q?YHRRB6HzaAzu~^zYY%;zSw zBU&-MhZfh__01Bs|DYZ=u8NB97RXU2N8N#6G&aeH={!@}!FO0w>mnkmN3@I=xJ3n#Ij_+g?I6!7a}Da8oYfX6lnbT$grBSP@8Qf>;Tcyje4!c&vqKd1Eew9 zxE22~Xw_6{0P{z=5v23+36{G%R@;&74Gont0+v2G7Qvu~|E({V!t4?P#J>%owozmQ zlwRBYuc?!hdQBAKF;#(a7iK*Pi3!xADKeSzDR2W@K*6|7k5|;*;X;W4T`kU+x2UJv zyx_QaH=RL`3*%y4jry-YzC|@^4alahX>p2>=g?ysb7ra6bziRemS{?uo~;CHP5e|T zOK2T;5{EJ-w;yT4kFyg|>FAPnWW=@VRXkqlT2Qzp7uGRCMcL?*0K=D?_gB>KwdLCg zF>(FOfDD$V&9J}liy_`BwbT~kKuw@3P#Pk=UaW*y(r8*!OQ)9@Dm2$7`~;eY7u}M9 zdXdeLiLSI8JI%@$^fFQ`AXrhB+*>BO8jUP8@_Li8-p;&xLr?Pq6)X>8d zMJAYW%&_`tQ?15F5Fw;}tLL<{i=L>#8NKnrc|(J%x#8oAo;G26oahmb{n6+q2N$rR z$A!eae!0A!ziQC)sgp?0EEO%?s8NPXl3A=kP?A~9BguW~a~;p{R*#fx_Dm}aVI)ck z37HQCqqo`2Og6c2gke#uM0Oi-tA}io#8|q$%%HS5eNj5`_J^<`KFTv_@L`ILn*f#b#Z(<%W|7961FNKg{d zzo?ekd7X!7(uxet$bNW!b%vM`GVEjkYtZ<>6y`w~nqroLkP5{C8b3ns>2qMpF=`r;Kl ztmJ5{Oduxjx+gUfH0d#^nfE+t(W#>d4^!ouJ@#C)s}TbJ?jN?lPTx*H$k6~-Ccoxu zM)X5V-qY@lmfj&6@2+K=+Our4w!4GRw!5RHyWxEWghCdVYxp#xHVbq#sbwD+zO{Y( zz|_?391fJ$eN$Tdp_HP|T}R@yL^@bI7LXjMI5;ikqQ1;kF`c%P1j~EWBZ%CQc0jI` zFA&?_Q4g}NvBaKKf+`dwe(0ErMh4>u(36$Rq6lv+R54EaEs^5X4!f zlaH>%2V@Ol3T8g)p`8q&sH`A*BzM@XsGoz2=CR}DUW?ecVzc5dP_P^}SH7|@2Grj# z&3r%+!Tka_t1>N-A>Bvhpu8BaU-ZD{XbDXUfd{@s^?6#u^f=0aB^{~ie<1tja*Z$m zm|?D^XUk1c0Iv^7@dweMlb0*HlN_DdJ}`W&qO0_FDN@0SfNrrCcnbXPf7YTSCJ-ul zgbLdkL-cO&6E7k0v@hw?#b$`dvkJ)iDTtxQ0&Mtl)CYsqXsb{1XJkc>Ez(DGv8gB( zv6+uxh{d0RW!Ek;+XqNe)zSmYUFMoh-&Y=sxv@Y?4|kz6Bv(R=&;hb7EM_1O$qL3} z9eP@?ryU`#y}!JE_a9bb8^3VY!%Q_^PhQ>~!pW#E(e}T@4p7(j_d`Ai38Q+RF$#S# z@4O2SdAje;Cp}~~1m~7+JOp9IovRtDyVn}gVl#AsOG6@}r-T@u&(o$R?>h#_HVs%! zXxbN9AV~sbx4h!6+ji!im3y@qIhmmfhL7cT;dv|!%*sWGU;k8@b3X111=XlXuFIUK zn;xsErn!w&hRJEvwPp>V=20;gP_OP^Q4pmz+;~JLvYo8QuZaHzy_PtZV0sOtAeJqj zZQU7>UD7r8P&7)Cb#3)SwY@S>PYut8tGgx>z=ZSSu&j<&i^Bm$C?TcBDr=mZ&hSQu z8fs}V<>qwbm2Xggv@s#1KLt=@w?l0xi=@1N+d^;w^tBQ`G8kQSf{bz?FfM9&GeieX z_7op-fyy}Y46=vAXJkB??yisvWIS5Tj16DjP8YLY*FJ4nVr2jT)kJj0=Yg_YpRgS~+H6j@GqSE@s?4G+}G))T@v zt{TF*IlGfFN-#ZKDCqLLTgRiN(SjI*=X^xo>H^y!j%1)h63h;yPcRL_1zIa980;C9 zoS<$d^1Cnjr=LE2e5eCXbPi%N&)2Pj@)bxgG6W5Na&0AjRP9X+rs?FftcZBk1$-5t zZt+jJFs}#^19yw}4!%-GSTa=&R3^O@&B-8}Bp0BKSD;wU?O?VT_ybQqe*ExJ9T!kj zY+p{DDWnCLad;br`>Q_7E%R?;6guxI?n7+@ja!V|$z=i1h>Zd{V=VNAd6+2A31@Lx z7&@dQrZnSDy(Ng3O;@{utINu&Pf0hToy&zS<4Zo5+bn0BmhYZb)#8A>tY5GAEnM`$ zv%s}XGx)+Nb{!Z;C8e{JCL4->1Rm8zj*ND;JhT!M;Bedr9Ks$gIN@SNTQC=a*2*s8 zBHo3!^aXBMn2kp?#;+&0JCq6%0f2NpFy!j&wMMc3IAaxgcb3ADBFEvcv^**NyO}?>)qwH6F%XP4}a;Ab6v~R8<=`b&sIl=T23v!#Tpvypp$c+()Fg2C&h4x(Ib9!Y%xb2jj zCpWTVBRMPtB*SHTrGU4ovSuHB0|o3_aUW(Z9gT*Yz$6cm%hW|c4OXHgc2vs4RFJM3 zmM73QX?K<81k2r>w)(*uEqxfmR@irw_gMQ-8N74;+jBmD&s?v4qZ;1pNnMQZ_VdZWT- zaSqmBwCAMc3NuzR>PJYaagY*-vuG!nK{x(YRmZWKwd(Y2GXJ2)EKy< zfDbpbsWfW#QxIa1oS81hDFLfI9nyMZ+Cs_p+&m_xW(M-}CD&#yy>_5Jr7eDvIUgKk z;Nga_?l%j*dz^k%)TIcNkfPP=VHcM*TSh9(dBLRyQXPMHk%sZ4HJ+11@JMDOe#}kG zpou`%J*m;oimYgxJ!#Rr4^1SSgG?gv%aR!=Z(L)CRjEQjF2H(vcDeW>X)p%T7eIh4 zbg!oHs=Siz07Eb)bY65Dg9^tz^r6A)bkL_p38(Dv;}5o1de($%wzf`f`tSn+_OynR zIu9OXduS4@|fi#Mh#EwcnjPU53&aUA+r|U^GVOxCYw$^BAnM7KRqF0J+A~$ve z1Y8QF@IAEzO}JDL92gi0F>El(;+s4I6z!k_6WlF(j}|x@4Jw>85<-J}GmNW*sH<(& zXB{&UXCM{fgHf#rM?3A^&E0A->ldGcpE?%00DW;Q*@3H1{T))ZA@d(nwjGh{QpGLW zKyh%7Q*}24pK6Ys0gpslsj1;GN%1`+u zm#)1kJOr%`ymxtvB@4rS>ro_eDO5U7p3?l#c(iWb$Pu=;X$ zIZuYfBbezl^@U^4jJS0o^Ez;=P{-z6sv#Khv03!aL;wu>EBdWUP1llyS}=D5W&w53 z0Q|wM`?+nX><%DJ(^~_W*9s>3-FmuQxc(@}6>FwXR=4oqzzn|Xz?|TIPlJsPoaHa!Q4F0}O zd9coSH9tB1n@XRS8L}1kYFCI=q&I z(y67n)w#s;Znkj?Yw~PxZ>Xm3r`%963CXEF(vq0F4{Qg>54{CRCkf=zcVs20y5g%d zm!B;tAZnsYs>##)KfSjB^}jYe~YAwPhBQpenoU; zPa0P5-+j8r9o`R4CeSpdH?V^nZKWoz4uIYHR@t{jk)Xq}9gxep^~IxuvQpu~xa|mF zELGCuj?qdx2aAf0 zg_Vs7%`xO6g9)sGCdvpkNJO>CDNz%c937lnl}3@bO#TAyYxCjr$2Y7FXvG0lUCMa} zT(iMuciLJIu^nqdp6Ob7c;L}65s?(Nqa9i>9WOAgyp-opum<$6i~Q(`{TC^ptWsN( zrELXjh`backarn-?%<21=x6S?)L>+{#_c+lQWK!90ed4hz+yG56xj`snQG!D`~nFSO=ZE-!CtTM!hu)>;# zg_yAN00<1q=h`e**L-0>-&@XRIDVWH++hb}a`9Kj7Lrc?4a!;ciORBjz)@3n5BS() zqxXPM9tWR34u1AH`0R1;^T)ycD9*cQ=>44Ir*q!=UzoW57iO;ig{kX*Vea~;VCji) z@WbhcURv}`hdIPi6u6bV#Kndr8*Pw*Isq5OlN}68!qrs~7@((-m3LyV;6~>dDCLAA z=N9P=i{IM({!+*{^ia{0R6s{t#O(In*~1e|`^UM6BFN$S7h@crJ7qMpYUK$|g;+c5 zZcRD6`)D+Ykws97GqU=n&!du~;37Q;G;F06L=V$U*y&Q)pmZHlISs@}rlMziefJP5 zxgI#*%?-?r9850c^>Qt3XEQF=SOi3S=90N3X4vT;Xo4vLo}dm9{PGt&k6DHW0dy$k zdmJMRSF}lD(U!<)PTM?WFki_EMCZOVe@G3^1oK&9>4V!rrfw51(UT*injHE}NPSj4 z(`F*EsxF3fN-YVdna&?FS#4%>>#x2Z_UH5O^QaUMcNA&wL(X98d#X~zqpl~D z|Au*FfP`{El1(w_M~iC-Jsz*@XGm!ZE?-si8{u<_9av6ZO6cs0W?|o6B8fJYYN48N zGkntf2V7sRW5@F$mnUi3%=8XTrnqKiLj&qTB|>%zw2rKz4CWT1n$+w2*FWqwzr6l< zfBy0QwS2%kuJ6wNC=J96EGE*1ANQz^h=xc>;MnJnpC0D-@Bj4h({8Z+`1<{)AMZbY zN*H(pRGCk%FCk73q}zpy{^sEA`ycLqZJd`tJ)c1TXd`@aoC2)RwyQAtS>#@?(bmv} z(9DcI-P~;4Mw1fGH-L_c_?ol5TuB?)*0V%0qAI|X`&E(Fnb}|ytTh$-y)F>Xfz^yj z`uA{1Envx<4VHcoFk^U|fV#oSFvX~|y{QUa#jX1bZqA(1t8X;wOzV91{XkJ`bFvNB zj{{gsRF?Iixc9irOVMWwFby^+1GzjHz3#@^L;8fc0_PMeE|MeONhfD)4t$<`R3laD zl<5{3`Eqls%49fR=b&|PkDeeq(?V)qkS3{aH#f+*w4N<#@;{6pJa_W%{}dU=gv9Ji z57z0h;Fj!2?Hs;{kWaQ7XpS%i(DfzLfg5{WDvOp-N3XKzk4{ZbfHKOM&&t3}xY5$X zVm@8aa7xjY{oO5h_Mx^9!m{B?b<>IaRG6-^4l^^aAfiPr@R|Cc7Wn%19M>MY4}7#V zbW!$*V`(}wHh>AiHj4{H-WiH*=I6H)gyU~eg;cm!0_`%X#w);Ki?lM*M=!}cauU`v z@S!a8z`;-|dKS9#8md?0OkUCFo3V)9^rsVE+OIanF$xUjxe<6+ASCi%#8qYJF1sPS z#9hzDg#Dcs$TEDh_+mGD#(c38lvJRxX1FIYe zRYJLW;yB$-;M<=LSG5e^nxs2eD)YL~pU8MMeeYn;E1)}3k&-Oc1RvXGV?r#BP*R?>ZS&5bk(%<-Nr@t zIWXx7!q?pxmMHN%B;vVQp1b`=&RxLL!jJ=H8J}F%O|90*+y}fi`sKPc`*M@02N)p; zNmUnHO56E;&j1vy^zO)Z(dDp|VR>sr1iPP|shJ))4J{(CbZldt;Wjr~6_>32dC}72 zBvMMNjM(KtwQ(CDjn9PgT81Wq7hZT`U%M)@WS3NH#l=PJ(HK)^N;y58mb0 zaFF6sppZ03-3a6$4P8^^>ZX#hF#A2ZiIMxx>vx)YCW(GAT3IL#8YpWYPEsB~N1&vNY4+--31p6{sHY=cPHt)(NiiU!gePpxl8$Zt zg1L?1Q6rf68xI!H8Q?U-7IDv6nSfgKgi}}B?5KS#6_^)RV*}ofIco z%gBwTYQrf;N}+3b9D{6}%unF?>+(Fey^QUD7wdieYGo_WemkSo*L8NK?aojbt5kX;#X#aB8kD z>Dwktu!ytkORT~MiA$IcN*ko(I$bL`YO850=L)o6cGqA!tcozG6R4ykb%{?Bgu^CzuVhA&K$4K;>K~EmBBK>RY%!^ z5H`1+ozK-6)Ld0(mqc>c+3Tv!UKT*%lBlWYENNn14O4e3z4vGV0N&N^0Q$rIEYxM@ zf1gXA#V;CDz#G7YzcQv6m3EJ`ZasMdYV3BnKxfj*i&tzYWUGZqx}LWdSdX*!o7|W5 zP|?(4;2TY$!-PD6>GW9QQD0tjzdP`SD!Sn|=xExraEo#`A}e2k@LHm9$MUo(iqb3z zO0R6_Y5by`y{qGM3t%yKQK=W~dnq{B#1=qD6&(er?8hqR$wO)67sz1&DLm6o!%(DD zJ5jl2Jwei?!=GROKTm&t`<~iQ2kcmA4`x}!4*3;idq=*YUGH1?74e2AxyK>zZ9CyK zQC<^MIO&MDEF)^6yqlii%oAxr*u(*&PpM|VSS$F{erlerA_*khnBr$HuVjGcDpV6F zAa09GQo#+){b& z-Q+r{lEJh(x2ioJ%3)Ker%m3_4hOVAyNYixK4EeRe<08O3VP!yE%q`QMFQBvC;wqz zRy{Sik+R|!dS)NCQW`tow8|N0QB6P%K4H>qJfno3@yRa;tB4pX3$%tMtR__z$me5> z9XEk<%WeU^)ROhs29h6B2%x(dkfleR%{B7*c1JZgLFmmqPy3X7Eg1U889^+1O!I(}XbPsVwl2YOVnG>3)v5DnN_Cgy4-mntCJ>SH!dB7Gb6*3V8(5J*%;qK3D z0~2pFdI@*sYv|doN0Y<@J@rIaBu(j}bl)5@a?&6HG)jb8ZmhVTvtzjqdmlVFsD1Du ztDH%~p=w2L%<}Q&uil>P!XjG?o1Znj7MZfdG>E+n!VYE+JrR85jujY$Bsf2sx-`E{ zBy`;YceS8Jehe2qJ=g<5hKq#RQ&;{p*<y~s5EvhbqNAs7j^(p)z>3FXqc zf}EYK`daB|Esy6c%?~7vQGa6xfxKK~GAK+A*sx7eu~4^|Swejr-7(YD&UM>;+CV>f zd>vdX>PoP_tiC4rcvel5{3FFC=#k%V+?TsTPzwcQ3JOZ%cE~^4H1-32awQlngQx9& zqDmoqJ2?UNeYCfm6ZC(iw*<_1dGC?8TgTt}$fySM=!j_yR%T1$l`@B!OJ&^@{ugVX zGiO-rwxmvyX)qC(PsHH%jb36ijW2Tb3};KYCE->ikl}4BYs0ADnYF=#o!oo3OH)2g zFvrR`3&aam*jb(ia!INyx5-J#^IwAa?O?LHVo?ZEq&82}1{!{PuyUvCeS&GI<`Rl& zfv1)8=GM^clbMgIs(oqhQmeT-rtyRZ_M+6X=Bw%-afc}p0ktlO86b-`p{pq>soZfgFdCALHIro$H=p zsrz<3XI#hm_FRTx2<(M}rkhccGQ4)`N>DwF`_?$F$yDcZG_>fNJWF#vaD|3a&}KQI zI&1RfG|;KtT`0r#O!Lh1jI7?!8zBe4bAGETLiMI;UB?cCx@o`XKpTiVuAsdDkHv|wOhObtq|WfIOPJTnR%1S&q;nJ7Dau*xg~l-T5`2xJH@7CI<`)oj3+aOlJ} z3=`rUGB9irj#happ50ung{13oM6sLmO3~Id8n?sDa8#pLEuZFgiZ1Np&1$)siQRY{ zYzHmW0;pe#N+>dWu(d|9Ao*x9WdUmLtUOzCx^}a*@O)H5Dn(gI+6<4*56~_wWD# zb|%Su-mYt>w`+L>CR`fsuAwl*UJDI7n|aY7YFoDQMEzXhszofId5bxD2t#pd`bzUa zqr^%D0Jap(Ma`-cT@YuN0GeL73MT?3r>3Y5$Ej%PeetI6CO{?kKuNYfbFuQY9Ny4f zA__rCdsQpL&2~|6Zbd(Trai)pkp=%@7DKnCgfH3lrF$k!&u8<=*g0%wx#r20@RHNU zFpacg*3_^n7XMkz;>)?^0H+up%(ES5|#bx_+M|MqbI=EG;ieRGdemgOtxT?kv-V&w}k zpkSV)3r2DlB1r6FXW;gA6Ao7oA5<#521wmK66fv1H7d>Ae-v@^YuL4x+7c9W9=U2f zSvI`Ts{dABpAHd~AhW8a8;0BQiFrmT`!JiDoC1#$PvmSY58b>knT68{p3;`^s~Nki zRL$uJ=k$)8rLwdrN>`|trm zs(@6#)wX3}cdWC*jF(%a*&91KW0EkWT-YsMzkhi9>CEdxbvVjTT_w3rJklr7&~2y9gX1vYF#)ZRUtBz-=>wgih3L zu|~cin95Kq6pDQgBnW$4)S#!Qj*{yMFT}>>-H38tDa6#Lz?r%3KAHk*ZRxkfq%%!L zat%{=p&`x;Ds=lz?FRD0@GH8j`6igpybR%${;XiG+CUKxZVLoaywpbF50F{gHPuz4 zQV;{>3%Eeh6|8G&2UV@$w?b6LT|(rLa{GZ$0Q0TmU&mm^Th#Kl|4v#^HX651Z^3E+Wh zAW>t&x*|ve&dAB;H3m?Ua>`~3|EmqGl;BKO{^Vnw7y^1$w*bT!2^9>Dt;B~^+`i>` z9=Z`1t4UsoUgdjE0s;r)+q|8%&z|M>QopPs(?`3GSK|NX-s zOgzLB$v?Z-5$~P6fBnaI_nl98f)_S=kKcaU-@OQ_q|~veV5EUE(TbprfyrG_{?=4o zTYBHa0HfU-4c{J0jeB!F0x5d^@bK~NA3s0b?{VB#j@5Tr*6eUpNDr%HE++OP9jE6o&OL(ZMmd#DI7=70j+W%%X zMp7c0VCigzi01Qd=a{;K7Gpg*S9x-)(`7nr@$X1#eMnR-#B`?ZGdbNB78+M-3@GWg z{Y(m=y$BxKB!#G&`p|N04ZAe zz9_Kf^)pgaJ!*B&X0{k(N)2Dc|E+=1*XPJswL^M?7jDzj(!&f{_iK0XTW!xdWoTN? zrlG)&8mXrDwYnS_iTr&!54#3Lr+XPudw~Q5e;$bAlZo8r>I)nS-@B#QgUNhmqNRz^ z*VAw@yN0QEYTR&cr#|$hFh}KZr@)n5Gs)nQK1J4qR!(oCJaJx#X zS|@Ha&QD;t`??Ubvo+K9U(wdAhU+y-o8xHfa=oVE#&aoQdHR-z25U39yII-sVdkkb zqp#l3!^^z~sf7chQ3`m*is_3D<{(t>i*wXu1IZqNF>C>RmCXISP@ih++D{HcUV|)x(DNX=b!cVNH6a)})6*r_!h(9KRG<00?fORs%kqLIsLF)HbM=-=J3F2sqTmxUS+($%H+czB zlT&*bqu1r_%k_(%mW`d*(!8~pCVYAoX=bbxud08Xsw@$+_sDf%9=Q!XYKKQl56p)= zHE*b-0++J8bGST9Iapo7B1$6N%Q#Y!t$?@#TzeVOQ=98a!@4^hg!ZlS3SsKT8{}T3 z{-ksa@$24~+1%$ygK<52dHo#rhGy9WBG#p1o_gC8%4eu)HuBn3!dD>8 zL|&8ay0f=0kk&Cd>M7h0>1@`o4)s?$JOAa*dhDVrJJe}+f42QSCeU{Ab6Lg-?iS|C z84Z1IDYcv+I`-tb%Pq{Y?SZjg7oaee+y1jy3wg;=ozQEvv5)X>Qxom;n(yu)J|cu* zY-tF?9BhHQ+=Gn{hJhfcVBEj=~HNPEib{EN{8W&1?D)#cA9A%fLp`(M*em9ad z*7OAO8AYq!Cb*Pws?k zJjg@d2Ni=_smE{6%}g9!$>_5rR)-cOltppL>gd-W{XZ}eA3olX@BjGuPf)Z{*}!7s zEW%@$7HrABPMTC4EXjCsVut7aMZHhXXoyY$bCZ{dibCj<17+sY-3}Y3xT4m zeRElEIv9BQ!{$_;5s8O)^?4FR{eWo0W3rSD1jbu;o*^?Tk~mhxIYu-)(G>6Zs(%W7ixz_(Jg zgt^6;o9u$Mny{;frc`NXbtKvHP@`lVh73a&n_wkC6wx>!5&_d!^UZE>du*bFHRqFC z%Y8V3Y=-1!UIviNAfyB##CU}D=669^j?))pnGLf#mQByT3OLQO19p#)iZ67_2}AS4 zJD!%4sy^E7OrFY{&H45am81Gk@dxAB?e2elxPMPW032fvk#+n1!w}X@0C12!#Xs!K zJlXsg(M7lboBZKdZ~=Mf{p-=w-oL_p^RI)iU=aK24pdmI(u~%vVd}2aC$t%*mPTfyi{)}_^r^HR<*QEWOm2ECwUR_J zGj96vaQ_+>y}!JExL^L|{^R)L+rQkm503;A9}zhg;KC&JL($g$)1*6#Qzby5y@D}g z=6Ho-p4G4m0|Td2`scy<&3Lv1*1MJjhc-<(dhNarQGHR-Cgz0&;$OK722^^o;kaFf6;OwuPx?6i4gO>dPv>&V&Rvemx9ZYj_*p2&4$-OD<450wv;Mw+`;)Iv`^UraJYG10dMk37^Ns6aYhaB50R+O1N+)57N!Jc9d;m0=rc!f413IIFQ_i6*9wyYn zp2mt7zM?ir`5wdY4VyIs@9HMj49a`w0s7zcpPd{(KOUYOoec(qvu7vwU&EqWk}Wu+ zFwopNjZCqcVLc>;+CPtQuL06lkG#OogUan%6nwb~X%cz2=qtU&6l2{w+N$r$uf z25*=i`6|eoDt=TWEs<+&ycYH z^#1+_iq|dNjX(j36p02P-tL(hFN`91%xWa>f(WGAc+UxS;ix3vU7qxC&8V^XM*WX$zKOnhS7Gp-nhx9 zbzRIL<@*rBxNTFN=WP#E4#A*%^{_3NkuF2>stT!=q3}9tPInvbQ$`k?NDMX6W;xy7 zokQaQTR5B)n_*mgzz3w;5y5>@#dBMflC88@lR=Xku3;LIF1gV&*>@Btd1jqv255a& zptN@_znEX-F%q~Lp^76EEIi}_F@nKD7ySUUnEOsD7@)MqU@ysY?NgqL|7>*-4MM4D zVDEap5cNncO_>HB8@v?e4Pf~&s;XuJxDQiPdsf5pq*>Tkr;Q{)>daJDn;TW$mQG1+ z%kb=%jbFfSytzJ~vx38xiDg0NQQFQG@L|BX`18##>-#^ol~WFoCSXq(3(8V+y+nC7 zudYFqjo-cP8-w7sL-+WImS*&v_AigGb?op<`a~WUQ7CvAS=6QE#U3Pr7}Lp5QXpRz zHW4$J6&6NG8$i7Pb#9lSM%$b9H8{!27ax^9VN7}W{1J**sAk1`MBwI0<#yTt>A{>{ zqyl>df_IG|QC1YIU(h@39lrnY_WirJ?-Aq@XF;&LtCvapP?@nyxZcAfPA*@PF)d@V zVJ@@%6c;lBn`Bg#3(ZqQ5x!|0Y(jnJl=pBiDd)gE*&Xtn6rNY*7G@JVD821PpsGokI1;d(pbD8az9xOa7b>KNakz-kL3kT z7ZAm4RM)7r!lc|doyM?^Y@S|Us4cID-{q`O@B^_MG$BIbaFs*uI{5^jfi3F&7wjVb zs3*TaJdCIP&Ti(T72o*e>wfP)K*)|gxQwgR`TQ$n?_Rt zDwr6#iH49!$Q}~a^C}B}1JtAtWqd`)~>wW0kNcHUuzGc!K| zlZy-MapMBZqSswW0f>-zlfs^^?xsMJcA7xFHj)R5P)MuanK{|)Pwr3Ez6VjKX1WQK zOI&j!Gv)wPeI*@SB!3wp2>fcyMCp15xGZmHJbnSxV!5tLkF9kIh}MZ`E~L*R6GD=d z8RvKt?1+kLfQWgqR1v>EbMKeAEviXDLqE==rGcd*qT8=Ia*L&TC`A!>%lByztKj*) zIz7A-Oe5B*V)~4JS!*2``pk9I)CouefP6mCK1)FemfV{fy!JKlAA1Eh^XlNOKxtZ; zG+(Ok#3h#BlYzQH?5Py(5Zab1Z7s`UfAIMra!_2DH_*|q$E;+4|8C|apvhZk2vSUf z>XFw)Y*y9FgS0q>oDzspq2lSMj5Y42HHfr<#-pJmGCn*EnsEMT%mb9WG3zukB?4IPLEH{j{Ae-)01Q9O$WyaMfue*$OI@DV(VGfnkSfE&{oa)EwO`` zbFotF>9))+LOW#H4BWGT`3(B~&ri%ByHYsm_3rgw>fuDkM{76&;g9$i{!mM^W!35F z4zl~<{znKBKlJ(%?1Yqy^YQ(=*MEac)u;Q>FYg|L0jjUs!NpkR+NYYFq>fJ@DqRtb zzhO=uCeZ=g&%8GX=%>95YwHCf46#{niL(*TV7c0%yGk*2qw7GO>2C4daRK~NzFimD z1X27i$WuIg1l2X;-u=0e4@%LIFt7f5v-{w&?lE%C0&Tgqn1jbPlF?eAS4VtYlY$68 z3cVE+Fv1(5fKjw06mf@(V7ZeNwi87D)#XMlG_>FOG0HcK~L~BT4YgEhT!GgG<>Q7laFW z@}zxp`V=i~xFqSr?iwFE^#4pct$JvrPPrH^z@-Lj6Y4wL@s(Or)9K=!sqLJTvAi$l z5eGWBxk&GK${z;>AvV>NqHz9O^6O{P(G+ccPvKK~#fO;30IzQKikvldEzGr-IIu!cCvE2E?>q@&KBR2EGV# z-Eul4cPE0pGx znv=A%cVs1>u!FQ6q?Xx-dJsBl?Gxjk;7-v@j%oX=*+*|KV|UKZw#(7dw0vORVB>a;ru!^oC>htsR9Qs!;PULNwGM#WAl5v&7R zPDrT1-5J&5Vv6NTCg@;NOs0Oe?j7=1ou}}qKeDqS+m}r&FWMS(CL_oxn^Skf`O(Xn zC31fX6|CsKeqfEwrbE&z7vP)H0T>NEp2!*rJiyIfT$Gr6*br}jZxtidKSzB3t_M#J z7Ku^lH=GLioD^`?`&|$22@qwpBR#qsTujH7%s?S19C{Xzp%Au&>?;$TjRl!$K!|N9 z)C%vA{j1yEA?#9~OFFUOu7FP)N2ith=yT2_+F^75CehCNlf98>2M1;ljKw)51Iyd} zOlvt=9YdI08RzEHI->V{y|y^F8|Zx-%1OIa0I z&*B9ZJfrbf&=~BhO#d%mqmuw6nBJL?T`I|BUIO;}1*WnOCFYjQrxpI^Vd#hNOd{txQ5e+S`xeHejZG+oWo&wv&a4_xv`m0o1V7#HE zVg+HYL%bZSk4Y$QxZQ{gs{g^VbvCVJd1QCSYH$0!^mAwGL8A~j657=_Ls)g`UCv_g z*&2;*LdSae_0h}zs(!F67-OsG;5O8llGE z^ymQPF}dqnI+sh?Kf%-;hbyQ}E!?MTA>0!qm{Az+Ev_ggozwx!ojpPF5~tcOBv&B4 z2YN#6PVtZ}=ClDR(c3rSQO6F{Nnvwi5dxiFZvoOEY$-EC9WIs(+LCaU&Ht7JhTjo^ zA%jI_Ky85X+`FZrTic(3J}ao7MMtR({G{NaO|IXWCq-EddsR!=P~c;Vgl#x76D#0| z2TDwpn5BU#+IkF~BoJKfrI+t$n8n3-<+ zkgzu+CysPmZX&Xu;MDQ96g4_XZGOL?rcqB<(&+P?uqeJ18-kAyhsz5jz$$)g24wFC z-dCPi1>=b=(}e1?nQCLZ>6?nyHMD$xT-WksiB5K6J95$#nGFNRFO54|dDW8NQO#Yd zcY^6X<%T=zcDRG4KvRO*Sfhj$a_dQQ+rR=))Ro>3v$gh6A&>ismWIrUrJo_wcEkQr znPzKPIb`W6&bo%|5OpShB}Y`UgOe~wVw9=Wv z_Eq6@VQeop^LlZcbE>hSsUVqcrErtD*2>^!(;CNdH~lT3nhh`+FymfNa0X6S_5k;r zbwf6a@PzFQO%0$P?+lbwh4>PLN;<0)d)RcTKBLw^{xXJT{-0i?N$NfP{L4o; z$^Joy;Md>M{QDnq5#_f;3`(1D2~5xYkK%4T%ASc>`@jD5_TBv<@=H2VsdZ?jDpZ@r z4=`v4@qwTT-JvxgRd8El2f`te($k$$Guk6CoSpUBmty+K2YIqGJH2H$_p^Zq+R^U4 z{gd9Hp_zus@AQV2O;9uVH=Rr?kd};wgIfd}?6w!E>Cb;ptyqzxxb7+$tlzU;AG@b?N=fzw|hSC%tdKEw1Qc8hpt~77k1` zEO&QK+h-|SnkLc!occLAiYkttzkmJiLx+d9fR()H7@-BnA&=5`(5z8uXy{!W1RYQy z2`F1r1zz0K0d-+xib&P*<@TbYd?tJ(kS3rMXG{r#{a91i&MvyyiC8#<^$t_*7ba>1 z1M)}`35QmLP@Fa%%7ASr3duz4#xU1OB;`gBuTFQO49tt|ESXCtMJT$97oP1DSRmP> z;Hce5+^OV9Fuln54bB@0T(RCbApWV~a-)~X3X;g5ayKhunwR7yU9BV1(@l>BmUAho z^){uqPd;l@841T(gcH5SixN_Nwn(p$SoHws21+->{{BLx8Sm}X+3r!JOnP5+0#{yF zo3X_W9iX?gkueGSK8VlGLDRk|)=tG5?Dd`R%5#m}!@KTeb1?8H+PQ zDJ<18^S@#?P{d8nmNRe^7f=Tb5FN&~dR3v13+zURaXRzHLnWmM@p3z%d|6L?4b#-~ z^CDrt!u60kTBg|&pq|>Z<{jt^y*D&X4wZiZOeX0qp^IM{2STHB3+9+Hc6WujfsV$_k{;ngw^7?9}Tfn7YSuTBwYMsPJ{^`@;jP ze_Bq4DNi69Ixi;4(a?MdH2330mP%rrtgkB^V*`4toOx*UP*&2??dy8E{qMVT- z>*i@FzioQXvwW69$oM z2DttMT@RcX8VqauroF^!E*QDL|reKn)+a)?Kn6)4b-IV6%6Eq zQ6XpHke3{o-~9CYBY-gCFl`r7SXt)j!>{{CgT5azCc78fwBis*w9#|;QO8)Se)?UW zAkxV?H-t=D$l?G^3JhDwi80&0lJ=H+0< zdQ;^C54#`r#EMVZU6CQQ7{|Wb{KF$>_KE47Q&Y=Eq#+fB(Yu3-3|_}8k73d9fmD)7hFq3_@kwf>T#w=ty0hnkC68mUIUX6*fA7NwHkk@ z(7u=v#M@vw)(H8BTAOwkW^=v4F#!II?QwA zNDcSD!}vi(ME(sIcy{%@RM?ozG(v`k7;(LXNIXHFD}F|?+HJUo#^KUtbbhh4Jj>D0 zEMzuhK3_oK(VAn9Ej=F7mGZ1fDuvPwsSPYyA>;Yro8<~EvO<|N@iVcYNhNC{rlZF? z_Z1gnH-T`&AS*O1{p(BQC>_uSsChHUMQ;!uc_4myeDO*#;T;U~vDv1+gK&aSwHIC> z_sBI;JR>qlQ*7rKN*B$LW^vN1o0{h9+Zl>Esg4~&*?I^TuP)f3Jr}&=g%Y}eOTELvLf$1`sV>x;Ale| z<%Q&;qU|a{M8^#oA{Qbh^(EsAcmiR+Ea{$qKEE-Us&&;EjR;q(~W zAmx0b{6dLe321GysGHi{>6*Uv3Z|B;WKu{@&HPpe>9uz1;$$uT;M*x{szB>0Dhsj# zUeEzEBifN$m|T;94>th0;?t#gQg!el6gZWt9)qe3VqvjIt@t}tLWX=_e>;Lg$Pp2k zf?wtzYZ)6HBN9oI)~i$Y@yW(D}WWQaBf#pOt2 zl8EU_E^qrnDlUj)Wi9(ky_XKIMkkH2Aa)D@NmkkQG^5!z93P z^za-nuv9D{xL^n7Nk0ufwId({qi%sU`NF*pe&`tdkc$K0hs??1*?s{UY*{(=b^y2v zz(w*f;!5RzplaFB%^~#Q243SP{_&zBZ5=O;xlf=!BaY~|@PV?q*Nuomk z^8>yPr>%_im@WM4tR2r*T6{MOz+;Hn<`z<+?Y+Vx+=Lq*oWrRLD&;X!X4023<4UQB zgc`!*^=+Np64$F*Hq}XWxlK}_k0Bo2$63swM|lG?lIw3TAHPRBe$CdGG#+%&DxA&K z)N4&>->ew~?>T?nRa=@io7feoE|>tDS2otC#`(K8tVn!8`r+yerX%HxR&y||VC;r+ zC~935@c`@7s66X2-F7k-P^lMLde%FXTMPE+Bl8o(RI!LF1A*`#(zo2WF!BB56%JGV z#Y|$a0|$i1P!nulvZx-^+`GwQwSC3AQ+gLIm?@lKov5ix4Rb2NlRoQ_+o;?LHx*T= zX8drb2tsc?sSlXUA-U_Z0fNCbL_xq#jav(LU|Fr;8re*1Wj30`zdQ2j;{v2_(-l|R zxQ(GqA8p}O=`qca5r$!jNsxmn)@e;fXd!_U4&mz;SFhjy@b3O2eSk7FU&r^x86{_S z6@X#+33|3CQ3-jrfO@m(E861B2*LOqGbTr54#* z-AP1^tSwQqDEsY1ZfgyM8fR<*{Woe}?(ch@zYve2FQ?hiAe*vvoG= zwq@jn9b(E;4!dKz0~;U=ZeBFz17EhR?NUCWn!{>oj{h@Cm zWe~q*)uoy&S{MWT0ZW)^RIp@BM^&b+67Ko+G=a#-BSmwX@)GY7Ox^8N9b<{0fpXPm zEKmu{&xU3g#*2&as_~YlLnOt6=1q@PU9su3_g7kLodS3&rj04A(m-5y!ZW0RYACz~ znGBJ}l(=OZCOnI_FI`8p47rV|Rd|l!3@MKKwY&T_q;vLwqjl21{xp>JxA8bGZE&m!mo z8QD3SuXC+OxcuSdK~Zn3*=QO1un6V8ao*T>k?~u`{vSUsU%-yydh$36T<=Iph2jc^ zW~@!29T1WsB<-nuht?6u41~%mjpjn|=OY(53K7CwrE_+tT=xOcll!EMDyw}DQ=aYM@= z(}=i1ghV<&xY0(zydNDQqnK@H(f002!WNim;hY?zaoSsf6hk8}Wre z3>@`^#oG<3RVJr&ErLDyNm`0Q7MGb?U0bjVfJ7zEheG$_+A&ygYZg@?4W7zxXax&4 zvN#-?AV&?3>Ee8Z+^cf2FkJ?1^uGgZ;Ki_Mfna#A`qDo*vD<&>8B%#rBT>c@(tC6Y zc{GKiAd-tD&3gN&0?-ceGU{PxgLKyx6HpxQ3}OGj$1Q^xK{xrRLwuWCPB%TqE$1N% zAq!0r=NJ?E^|w@z!q)*wW}AKxyv4jAIP=j@y8@TB9L-ez8^48kuKY*=N6lUy!n|V&0m8!wsOY7W@#nImrHtiz|4% z7*f=mvOm0Fa+;TTa|>BtXfWhX>C zLaJ@$kh4DeB1`o!N2&*e-6`#Zert51l1%+T{Vd$98g2Dyq$7q9i7XDb{+a0sM@9=-1>JI0Q{hH6VTg4NPXTX}>fyffMY&cw40MDU4gF47aTp8NX zMh`@fKPB$EXw;k49@EeFJ~rEC^-L8Lupx4vun zT1K6B-zk0qDBi(LkT6R}v_`3KZUHqK(&BA$q3qR7(X!D5o`u=8fXC$2?rv|uT7_MK z$60AkDGy22UqyWF(XZs*_#c*8JJZBHXx8e^1_Bl*s+Znv!M0{kHJv8gAwtW1= zt}Z%801@u-UGT+z6r@-IobzVY%VKmWh7eRZfzo77p*WK_hilG|5#>ilBw?a!s3@<7Pf`?)jcKJK!FUbS4VfQe@R8FHS{-rTLZ1kth022_b}A~ChwgMu8$yav z5Q!)pWQS%eF0W`=Z3FkgqO&*(QfW3XsF#+m1ew4J<}`_C zixezaD9TxgNhHJAymmkde~ts>{LP#DPoKnvg;Tq0xZHFRElsB|D4gD#j(!bbF?-4* zkajltVs2|?l>x6e-^7$U-W32nL@agbaY+{2+W6`nOl!Me9zOo?_QxL)u=o>P`SHG; z1p+iR(G^G!*Wy#V#cCc!$u%|g(Q=4Zk|<=4@^n$Zrvw3m|IIvn+U$hvj%7t;W!Bg* z&eBvil98@p^#F>a(m|w?Ew5+*;nM+$W4n}WL;On#4K0k#fd%p*a?FcZ{P<%qqB3}S z@R8Fmv89eZ zBIs%jU!mR}=-+<1AK(9&XvhGi%8wUqgD3pQ9i#!%eQ7ksp2w1oZf6K<(bBmz(uV3L zZVzU{KBAs9{fIRuOXKocS2sO@-;bab(DCVFX0IeeWcSrT_16}4tFXIgxl#Bzu@oWo z@b&0ECEGw(q#f_ZJ=2@vm*(A$R@WRRn+Tpg1P7O`P1d2ym7HC*9}RW58P4y<2z@!$ z;ox$sNN)n^`|_b)T7*oV9Fu)?C5y;F%4%ptfpe#HheB`ZWsyaF*f;a7l4 z0^ISPlsZ5fRHd%LOtrK%c1=^)&KAa(LQxaj1f*!OdS2mU1EhC0w+k$lfmenc9UXL| z@d04_&0E*@FTVipzB~B)o=MSEItY7Uq`O*o@j&i4>Am>?gQZQB=NA~-Je4s#n*`DW=+HZ!+|Gcw=hq`x1o^AtLArY6 z&#*7^&+ta^8BUH%&6;>B&rsWBZ)=#|0t35_M<{wJX;Xc?I%l6_e~- zR5!LHpyNwzpCe+!XB1=9d@ffD+vMEip#_41W!5eOkf5CbettCj%N;%3ZN+Rvp4p;| z>%$0phe^V7-{E%s5X(SPxO%4OTyP}jfYd)49Gk+_;*z*|LoEw4Zq&5Ev4LIg=w2K) zla)by%21IF1=%Da&nJjwX{qPBJLGcqFc(eFZ{{>s#>@O|>0m6n=&hmxZrw_vQ>oia zuo$H3!W1@TDBs$KW?Xb7fy`7z(4C0r3%G2+Bdyc&ZVGxN9F;3CZ8#F&Uws zPEFykgg)0cHO1o^rU#mSTt>KkS?ib?1L|`F>n0=WbSJmG-7f9r3wbxWGO9Tetw(~T zhi1v{s0b}QLWV)G@c57A#@xsdr>L=M(aJA26_k6CctcR)$czh%=-2JCGgVjvT+F-? z;9yS|#sX`%FmLYj59G-n4hr7TenTb)D=AQ9k$BFiYYBUr0?QVG znJawac}9=Q2*8>@Yk@TqUWNKtT4Lr-;SX`H&5IhDCP&rhPQ9uhxe*k-!@8e-uJp>A zV#{j=`bJayd!ywaENcOrHNN`kEAA+i)I`Z!cruuf2`f4;iotVX!?UY235ed5V0o@X zQnw|OsLjb#0ven}Fvw2un=&x}ZKIVB*Aj6_w#uSoD4zk;3!!z}z6ecYe{fcCXK*og zq;mEQCFL|^^PON4ccD}=huFsN_8?2J^qJdKX4E*TqOE!6nYcU$L4pij9O*oam1bp| zj%in+a-ik^;AD|x2iRK?1yvRtL2~_nS zCzm6&^ii5WQzIqWtz>`#`%r((*o-C-~hqccWc2K5WRejoB+G^bP3fN?$2q|;eS9K z2M$hMmLG<(eQ>@;;@j!n9e%XZyV>Ou;rgo{DVAG+`qEO{dgpptWkiP52pOc0;`-6D zH*S@dEFtQuWpzT{blDH7wDW+yegf6Y4#I{f_*VAvzuUns?sC*s!+%o&g&xK%IV`y-9-3P3E(tg z(*}VnNJeIm17Lqdsdk zADvB+*a8HeXpMvL0+KYtprJFm9!-keNN~G}t5H1h|7Nj8rE2|ep~eurxKkvpjzlZw z5wFQ$XBT}obY2&)R`gyh%6I0ArPpW4gOV@?S|n~YsHH}9Wt7OvnwsVn9#+JU+hcJb zkd2WGD=ky<38lR#!!%0mZ90L$PFBVd%MFVs4?j@V6+{55vnPQ{`IN`83|iyEU!U}L zyVnm7AK(7*^TYjacX;^v-P=E*Y&9V8edt6x@QpCHNwAWwqqCEv6;eJ9N_P;vEk@h~ z8EG&jgB!KHq5US_%EdHyM~_wkcem|M?hA}F#&Ti8Qi{L_I_C&{X8qNRT)XYZz>rKZ z@%|j!3jY^r_uqQC7()fP&;iLMK6w%q5GWZOl1f+kY2&JnXz7uDAjov@hqQ8`*gV)N zTPH{gFG9hVk_b|=inkiH(YBajN%6Y0y7!EvUp4Z z&@;GTQgn1oe68pZ*0`m@gg|Hoiabc%0I_?t8>FZ$aUN)dcfw}IyNL5HjtS=r(ai3# z*FWx>}fByN82+8L_ z{2IQ@&Kvs%6P~;M!V*k)(0qHr>5xU^9ibh z&OAk+*)^GILN!H^-~nuuXBDij;1CG?^$ek@mS@3&JA|E{M+V_gxw&2UPYmB;Nugb; zhoVU=pc+d0eoqIH!=pm9d^Sp7?}-#$rifOWN7=_(9=C?LrWYOrU5uvg<+c_7hV@}| zUFinXglW)5a4x_Ay3Z+%@L>D;aNtk!FqX_n9aReo(1kB_sK&dEx3l*T_a9Mj#GG&E z*u{7R1~ok1!(X*v2S^p-ns@0<*@XPYgaN%SkOeGUBTLX{{pB1at_DY!qV1}y zGEiU6PxY;q0md95A`xe1&3u;<@iS0!Xv^ZtpMg^|I#m|jqvhD@miQ%m6(B=CKOH(z zFTslU+Zo@q_Xo=GBz1RIyJXxYvP^3}E%IfYBa$ChjcKqZ+O`$YG@_Y|+?-zdyU9!wrP9mkHeReFoC(D_mq45Hk)DQ==SJnj#YTZ4i`lWU5FjFOenlT9M(T}qMMz2(n_EZd;>6>Fjv)|(K%(lqYnTr-=7d~DCO7{q;m6Z{Gu@AS9wYnQW%MtaFYiLn zLWxB*gX%7DjmAWJLt8Imq!`Y>K~z6tDHfB$QQ+ z%n-SoPJf~VYoHvcXnBzRHk@mRX7h1hK)Oe6dJOAKegWF8U!sy3zQT+@MoU{Neb-vCHueDtn(XA+kg&-Ur{_x@RAK%?S>3{R=`LomK!~XF2>~t{f zpFF$&Jyh+WsO2_r<}vAU{J?dAC0bfQQeCo~VjA0exfz3mYb6^4f!gV!|HFmE}ZL~DC)Eh&x-(R7)3#^4;6ofPs z=?7j2wIgV`X49Q*42e_0Mw7BTX-t6fxGhM}Rm0xUsG*~Qe-1S@^v|&h_U?UMxN)g) zSFsWh~MLq9lp`rnqo4hJ=u4nOW@i3;LLERK{>(nX@QCgfq2%5r4CYeE~G+o zHrwx$ZOl!WO_**lvTafm(=t>2fV3ylLNHI-VbMTDuyqs^DH?9^iYLAQ>K*Fx*WW_y zf)d#JPy|C4_4xPHW5W*lk+6{IKz4=uGgEU$O9)C<3~nZKs9EOF0Esih6~y=rZl77$ zda@gZ7a!?-`P`<^Rl_t7VxTYYAI{%AAbV9X(CLCsej@DaPxm|?5(3k!AMFy6oNrEp z@L19^&Rhe?DY`HMw=yJ2=a{U`7d4iSxy~O&OYS-DCgquEHk(8qjwb5WR z$j}D4r|GK$COetFt8Ac0XPOeI6`*itu1KRjMLUgh0bYWon|mB`Gz2a559Xc_A#u_@ z_$Bo;MG-{T?ZwTsWx#Gi^$AW|H3^+m)UBP;M?EnKtM<<+f=G~4fTxn3GTWsqDjB?T zlVU1VfhH{bg^3?*gr>N=Y?5a^xk4(HmQS+Oib$j)Q1MYl;9c-`n}a^_!1m@j1i3j1 zv|o>2Rm^c4YKtvdk%EJGsvr|CL-Km5cL=cUKu2=l+0oLP#psdF1=SO)mf)I{h?D=G zmkMFK0n|7PbaA&D5QN&V*m2qPgLa@&WFjtXXGh>^q2{k&RDqhWNt!gbr|?MO$;Z5@ zqtSRHG7$}Z6eY~@2yu&6A!)Q;t|Siqf4seGa~sLEEvTP@@r`g$$1Mi|@TKdqZ;*J1 zXn_O-fRyAf2)4xT)*Ln2m!j-;oX2mUwbtG{A5{f*dwgRY=crk=6IEH6JNNrh-g~(J z8K(*+Z^?FzuI8=VrIjv66D2{-rMmXofJ`Y0pSA~fo1fhZwuMEZ!ccvw ziE@|D#@OvK9Q{>>Wd+gGDm9nEh_Ii)6OpmlEN|NWQS$NTU182I_k#pL2_0)D;Se)sj$=f_WX z+kp3MK+i|m21SgSof3=t#Jo*O-Bq)w3$DklW{|&7c4Vy0NLSj6Y>UE50&&V@IcScl zMwmi{dcQCGxI%nXoEd|MAWV?ZM^JQ=rq?j78#j)M4N#yy^aVfzoorZj`OfZ*0n+ev z3ZM+UL+de}f%*-dL-gbA_U`ufV=h2Y$~cICIkvEAlX-aUO9*bv?iilH!;~F<@EU{& z(QNN+6RA-^h`|>Acyo7m``M(~-rni?S(j}RhxLTE$qK*g&!|8?eUUhL)5!?X4h&2M zeX@{+{tj|q)Z>+8`PH@2=M*v%B-h|o^qaMKrqcSnn)>tS|4S>O$1|Z5LgwDT^29;o ziGzRniNnSdhyU^u4;oKA_?Mq}*m&aMzx>3b#uJb5MC_d50UA(}-Lx zSa7N$q6Oz^!R#x7;kq3;nI1gM%$dqStuon{hr$9X=%;3<*izg@pMufehv&Tyz5nq) zdTfy(y6Ls4n%1BirWGPlMDHr3li;6&UVW(*N;>QXBF-#x9lz|!fMK0-z{8Yx%L+jR z{h^n#i!D6R5;qD_(zlV0zzA(5qRgdN6(5WEuuJ*Tg{MRio`G%e=G}XE`6AViGdo}r!`IBQl8|1(g(6;y&?ST0R7U(S{ z_C5Y1LDl~F3kxrTaQ1!=6Q%?IZ{DKs;R@PEvE8nSV;!m_o8q=!YBCCC_Q{F}w>)Km zL2kp99Vrixsj`=ifq_oolS*yOeQgB?=^h}tO1kf24Rpii!T3mqpdIvn=bZ;Q!L;F) zlX%I}#9LA=5VgZyM5_t&wPNTT)BTo+3;-#$1uRP6^_A*DPP|6HJIypFAO=q*k8b4k z;|JB`*NW zh+ZPhwD{LnltK;Da1tmwop~OHtZS@gQN={7>mwC#{q;LKbOcm|8`3TK2D)OXnjkwt zb~?Iy{wA2Ok_AScp@&ckj5-(&+$tV^kv^*2wthx*w)R4Rf@FXzE^m9|JT zuSU7w#u_6bx_DpcFj=p~(Au{RK^r;chM_0CF-2wFX|c}#j3Zw)xjg>Q>T~I7 zPx|qn`pr{re05}4;`pyzY)%qRPPTk;G@Q>@MgYvmT8G2a=fftN z%wRZu7j0RKTj-IbQlM=1v3`%lMsN3l`b$|rSmF1*e7RX66OST=Boj3%0roAfpir_% zpxi7dtS>f8Z%TAcV1`Rr$0-5C{i2(~GfD*vNM#%?Y=kM;!L6z-uvVvFn<;rrBBrnYO2!V_TERLe|_-mvpqF3m|b797~1X@vl*_BNc(ZjJ#d*3e*uV>;(M^*&@d1z zwVCWe6TdQ1$^U|@*qri$M;MS-j_w}ghYRK*nM*fTNS|i)v&A$F>x%!@O1f>ueeZE4 zVqC7YN0kiH4wzRj-Q;gA~ zYvv}pcAF^@Ov5wR5jAK~!P0b2`#4IzPxiJKu(fo%A?~CHsQSe28jaJTK6;I2l_UHyG8mH#gqJo zWk`P0h?ijc7IxgIdgK&hK?9N}A-(u1Tb0M7SO_#2P_&Ac?o3q>oQ_!jE&B2f`0o@a zCk3D|AV9>rV~B0Q^$ZLPR;q{P?cK*ucRwIl9rIRrO5?U+oGA`FB8jL2OUi;)4ds9x z5#Zt7phgm2)$NvI&(D;$pGLSK9;fn#s$Ra?5}U&dKZh!Uz<^q?*no>G9js z)fB4LbhbTRU(o!6Rm)L#eJf+?e7XtKTD6Gnp=*!|4+-Bq>9!EvB&*I$$pGoG)Fze; zSy7I^auKDHQ~n?t5>Bg))!pVo=1@JCncTV`SD7oBe1Ols<`@krW zy^od^@q4dIZjysv_)1Ik?Ns<0kn%}IMyw`f{)z4gq6E`~xka?eo{pne5vdQ&gqVC$ zCzaVyb1?j*0$K&mX`>#mg^vRJd1t`5K_~kO|2sEM)o;?+492 zIVvn}ZA-w85hX(km1W3tr>7@TDBJ>_EHeW&M>2caBVeaoA-r!o!(n2OL3Fkbh2Be5 zMh0|T2C|-?4R=^Z5qeR9+8PAow7U2jqPK94%%DR1>FMXsJ~=EO`)<>!S*Af4)8Df+ zVB_h2fRYScC=}xP4Y&}^P<4y+f*>@&T%;Z(io8S%JNQPKwde=kWuC4P2^FTM+6-cr zoMyq`ofsmZuj)x#-1fD$CXd~|vlh$+17~EN=hdy3W(M)?c2|!xhq%%N?7$p*ta&E- zF2}UM3C&WB^HCk+Y;m;apNI0^$cSN8!08ejjt{;7(LJS3b9uU%T~F-W%u?H3bTYy6 zCODN%@@fR1F=8*l@^F)zBEU{oE%6B*McUgXPRAdT4C6xfSAmJeq9|?y@7#t2)5|^i z1uPYaZxM@oFZ%m~zHwbyE2K^&skDyq<2G~+@`p!a^jUz}W>uOKZ`iy_|A zX3k<`MP2t&-`*9fHluY$+IGoN2KDS}kmgjJ1hY2bn7CA64iOo)sx!ggM^3+28R#u7vmcod;O>CDPT0!C%hj9F zvMCpFA{nNa6>H-WJGM~9+XZz2(~IWEmA=-^dN9;CLuE@yev$ixGb^I4S!W8T5>(xs zPe|g$PavIfb2D0#wKl{mqIC|zM1g{4ogeA*NWDt!e8V{%^e@I1r+T z_~{hS_>>fe1uz05AR$W^OtF~F5T_jzS)J{Fwbyt=S=2)_+0N>r zks492+pOuv0Qar0^=d;b&c%XQ3d2kV(gH;0BBIA;Xw-<){R-ZPmo^b^JniQsuKfGL z`+#WBBF4NZnbfSSyVhCZ?{Ne$8md&BWF80F7a9?`~tw!{on9IUqev<*;9P{D&! zCXhap+qX(ZoD)Y415gv3aD$ZsSUnT0;xt#!EN*ErgdD~c8wJ3SAOO$Ko8%ce z>B%qBy4{HHhmv|ZK6}rH7rR%-`o|c}m54|KAgVB4f)W+Vo-i&)iea?V84)ZRDP|WZ zrN!a|6v)%|5eflhs9Fz*9gb;CBdN&Je5P92f$frP#fn9;3d?saCHkb{1al!#^8glZ zK0WECp7 zN!_7838*OvAMDt|bx~dU;i0H_xN3>SDznlE+_U=(u>-GS_T3H(~%}DFV1x1n5gJcayX%GES>_wUHd|`kl<5nWpn3~iV7<}Ka~1_({)(vh(s(>rrm<}jd9N+EVYUf# zx$xk^IvbHF8Q0CaqvMi+nvL$60oN)o7gVu^X*gN^=#mLV_(!39=}IeN9EtH=a&Ka; zEKS^@;eyql*|bxBvU9;wGlp+tiNdhi`qj(SumN!fZ>m~TgtRXYn7+hj3SkIRQe*vG z)9s{336_=v4|)abPSn>da=$#|ztakyU}+c7T^YN%d9@K)OIKP}iUCo!en&NX-lnsf z2N1E_S4ezZtmrngzZBk4T){%hkr$`4%XAkWcsG@%TMAd?KonnDE?Cn%9>~F-PwR0m zO>`4~OfY>XPn(NpM)M#9C?&GKxmfqB77KkOyZ1fW9p*;}^Po6QT3+K7{?e*vTmxxDboVYTc$e3izcSKhPjV^4k3PH;sMTaX1CUAD zksx{R*`Th@iTZ)LZ~bR3JewJ=Fi}#*4*3d0p|%8Naxt!BK*GbRqoylqaitZ}Ir21& zPW3av^f*#$$dO*a8n>(fB;OvzB3WmrrkYJ?o|sq5>O9;DmWH#)`6U&>nmzIp5=euw zLYaRwl{EejBJ2x7lAvgi|c6=7*(S%yY^%NQ++(QxYUMd ze}Z{%aapm2ekVzHV>p0%tE6}L_?YzW7h07}6SQ*VOutze=P!~lKJ|_YRUKv9jT{;5 z3UOGbz!V0+9MFv55q?=r&8druIvOo;o>@~L!nHQJR6*iXwNen34Lk)QDo89JKHWcj zdi)2T-n>=X&xfV?d%u(Gew%w_L zPNOTY*cwv$bUkwGLtJTLbmkDzNUpFezMGt|V}wy2a+=A72MrtB>FPDZmlb*%x1D}* zN*#DSJDU_pq2}IOl=vAjLIf4&jX3%3$wvC~WMx(oL~{)znybNlrs-4haBF5;`KMA* zjXgAhLHe`v8;~vhrFnt;BDPS!&e0Nu4Yv3sp+kW5F{GH9YCCidS|$s88`d>hXj3a` z!}WN*(9Oe8HR?-kE^~4%_qGZlM&7M#u~>LU|H!YS_6HYhZ#Yatmv}$~*$x_Ouo|BO zr)Zb6FyG=@Z`KiXLu1pOU&Hh%nd?Q=I2}`O8f>qE;pn`bvV0*TP7tJ)+HUXt?(g5< z{?645v&4DUp$ zIm=X!+)Jn99=?E*McI)a5jb4}P(7q%872UOYJ1yOCW}#4!0|#vI*T_TN<9LR{BMsm z;#C=G)Bz1EEPBh!+}Yeoty_ZW+vS^Ml!&s;@rgM^vBk}sph}c+isFKe-fUK-A}B}V zFSss!1s2q9d3t^HH$;V1OPa(PgYAh10rtd`y9K<=TjI51M2BDkEA$)!a>LYM8%|pu z|K}#D1Wuc+!?Q+t+%iCiSdaj|Heiyw1cN51G66$5l6XNo9~Yf&%+s?~VH(cnvJBHp zNrWa#2;G*O?pDEcolZk`h!oO8kp$mnW)fuzZKCjJAuzDL!u|cBqOqa@AbKx)1L$hq zY{CUlpCMFpwP%NnXSOl`iys8u+Vauv&!YhX4{S%$Mc!dszZ#gIV|>4ez;t>1x8=@4 za(8-U?4gPjA)0tAy@OEXQ(T@gdLyw@ztE1A*giPfEYOfHu>Aybj6L)MKA^>@KQdQ+ zl*7ff9$^8$Fu7eIu6enD2Mv<qNe@MF2 zJhbLK)b2Unm--dHc?2mI(?&$UE6ePnK3aY0Yl}CcJZYyDxCt^FgE_4R zb`IY~~BsRlTZ&*U{`Ha{A;+~-&6f&B_6XHrZCpYM1Lgj!; z4s9xzc2o^pC6IX-B)W`XJ@9ZeipzTpx`&W7-OT=8_?MV)AmPdWCVHn#GYPFY=)0D; z0{M0^QQ4&%)k;ZPJ+=>V7`dVYHG1IWi@(qu3AVrL75*O+2>6pi^Kd!Gxsj=W^yv); zN(GSu-*;{we8{A$*%}4Cy=OoeWgyT{ET{%L@eP{FMy|#4(599|GbptG8lJOAxcT@I z@Zuch1`M@GV|sC`MT7I4R4_8B*oh^|QyW$nC&1txtMO^w7oxa>&8DUE6#^2s%#|Ke zv|?2&2K6>z8S^bA2K%eSs2-*=8;z!5CU2Xr{|cmskl0Y~;J#A8=YHmcU8uvRXNOVJ z&VBG8%0hz(t#g`Z!F6qk?$-snW1&4uKCj-59Yg!1Vsc!8RiW>mD0U%xR-kfq%Bgt_ zLd=X}chh?1xW-lK0w-AmG$ZJ%tjt;or!$?$KfyFPD`QwkmGqCHgRIZD=O_U1`t~16 ziJ#x!{eZvW+I7Gd(bS43L6FZY{B3k6l|*uNug{zd6C0?MY!L7|?N zev)EQI-mttfbSeJufU?p7LWI8nyc{!p$pTCS&yrguEZat0=aFj$y;lfrpXgc`%0Og z_x~j`52VeKpz*MRJXqS^9(-fAO7PN8PH_e)IO=cBxv7PE1rIXBDz&4w$?};N+BVqE z(K@QNEfr8-%cspiG|wQhq8Pvi_WJSrM03a)U7GTs#^wSFITK8e)GZUfBEK}Q^lgH> zv7i&56HJd2@eXI4D=O(y52O`HhO-D%J%;|Ud~tmK+UYir9M}j-MVL9+iFe(*uggcn zAIY9fHI6|IR<&)yB#Wxs>DMo}A3cg@YN8sv<(NLgMyVwdpAbXR-_EOifa113l~^D) zyw5Y0gLWI_x_eMsd+H>c3zT-y`;%bE+iHc^P?WR`92_6Xq+Fpwj( z(6cHAk|klHxrW<&yE&UPoWoZFqE1pcX~ijrq>sqaPZsxETo8zE@>neG8a}DpjP`>CMikKjVS!afatqIqFK%@LBpW zDh&%mn9+vGjD`$q*v3GbnHn~E`)aC1i3{yFc#|u}*v?i2M-$py#i$xzCspOUdIcw- z4sski! z=cDX$nr8?#WAObgAg6v#%CbLIG87|<9*Z1Fs;+i5bYhj;ec z6s@=r)ZKNn@d(|-@UUx~eB00>VHIEUE3VCs5yo^NvIsfD%|Oczm6P%0nlC~#Hmh@6 z?@!l=ys73b>6SYaEDe|34BflyTxOVtOO6_Y2%L>+)2Qdv0O|*Bs{kX8fDfltW!dM> zkdHjBq=@EIO>_^6@Q;wF~_EyLcT1mjkVt6Vi5 z5t58UZUmJb*tsc>O~jiyRTQDL0RGDI6_y94bq`X#L0QH#>na-!TH26UsD)*{a^n{< zTerzRtLSWZCXQYooM6w)c`3InHJW*O*UyY+?7DTJA08{jpzth#cw)#zWy|S+(p5S}{Yf2Wlk=epVjPnwgVX`?(4Y0HNS{(n4kW?oAA)?d9sT$e z3Lr{Ml*TI235~x-=ho1`f@P}vzSS@uU`K_dy}bcVmUQ=4W)G>c_-FY7B>D9-1tfq* zDbfT*Fx~}sbJeE{E@EY}BPv47#?0=msapf6AC#PFSR0pXkVXq9Lj~%zCuN`$Pm~9! z+yZ>1N>Wv znVmYElP6ndH*!GFgaF}qEYX3Ib1HY=WWEic)=M5KlrE`aLyHf`@o7SJ?&#$)tM2sk z&6gjS_kX{A7~lW>4kmE9fKqL>8f>3$M)vN`=?SLkm0BIV#Rz!`Z!t^bm21`+;^B)X zzb+5?d`ZK&DL581){5=eHRM@zxm~?u%_~GPEKqSOt7Sef1PX*>l2IEvBZ*3*TKUG; zw(^oy1MJY5X{LFi^|%0OfeMta>^oi7gk}|2As5F@_faYCLB#B*=O6vAx`SjyU>2T@BK#$ z>zCIT{k`XZY90pM9(3OxcHch0?cRU&{{G{q&$oN~Hu*B0BibgXQvvKNw%(QfL25EW z%PrXmvur1eHG%-DEA72~Cy7OLi_dbiV=sXWsm6dZq&knQc{BJNyys%gMQGRVU7fd(KOl^5h(5yp2l zfkIMC`%jJ$LGr|boLdIT6q#nl(o#l87#FAqvkR&#JN!jggKoD#JwPYHlC*YL&m_xe zK%e2&kW5e|9{rl&TaFqAyb;ah51CVlhE3rNLukl`RpoioXgL!7v6e0f<*Bap#nX!s zGJ{Y75=~UtHfsBJHb!^9lU@R#fMXL_qVPa86yimdKa=n3EkgOMiBp!wmCcedN$E(h z-*P-1(#^vTh}O|e5=AHhGuRVh(Fb}aKoM0%q9DWX8r40nj}ns_x#bZC6ew(&L->pnlk7Y`piaj!7;xBQByl34+=_P3kK!J<1HzT#mjJ*YeHK9G%J0z@zRRP zpavX2Jeet4%(M$^LVvhq`n89~eEvCOL}kRqP3+lYWiVPcNfYKO$R%n;tq^LB){-L8 zp?@^*=ju`@2)F^Z)N7C`OF2{v;VgiRoqYxxw82<|GyR~28u%<>dwmR0vpPZA=Kv+F zsaKrNXd=Cyj998os0dNd4xZOf>XdyF%x6xAiq)PuiBcD-Cc=jwZyrEM5$Mn#K<0p( z$toZn^$!kXzf9OXszmlm4s|K3;L`G48J#flgqB@7Udee0&nBN!!7v%cxtWQpg;y;Y z=o9@iW+7%0xgA*>lr772+X~=Q*rlz< z0t(eu$0~Q!_iR>P&8Vs6X~qebm#CD}lM+pNN2C{MzJP@t#dJ1ko;62UjPJIWxZg2I zF)Cob>WRz}O$t)s4Yo4j4b3%&{3cbYjOZ%CdBSdo@_d81(z@y!&Fx(|)}+;|HRi-3irOjY6y}5Z)uirM^+{M9dIKZD_+B9aa*x!fJ4YD+P zhfu$-*e*o|dua?L-91;R>boWDHxF9gVz;wc%&fK!3iffIbjcH?EHvPv?hm_0fG$RV)i6F8D)JTP8;-SR7p&{i! z@;>c=ibO&6EgfspPSn%rxd(Hqkr@BU8I1d^{Vx|&m8y3nw|W#uwsZ=J>gc1im?8$} z^3`^{xH_Zxx_43pID=-O(vcb1;IBb|qWg923nH)5D~Y8`Eg7kp(3X60|dYwce;WM zqOnOf8(mHhx}`QjG&swCsD25P`{V^gzu|Z;>KO)y)U}ezgARL`hKWE$ly42w3r6=3 zx8vLIzWx9qlS^|=gVJkgIiewuXN5yj;jpUiVXbD}IY7_G4@xmE=(n+p2GAyhQ-s>1 zRLNW%@CzLT?yOY-^prQ)fq*fYZBSK2`~oqXQ6%%pNXN#OOINUgtpTkRkhEbeO`Dh_96Hi$0t$5arHmS(W@@*Elv zYvYU;Z!ew2cx~c+R0Ar`*b&1%_lv;K2<>C~s;f^P_&9KKm@c(wVHl&|3M{~S`xdQz zX+jHF{+iT>sy-3=o&?iyQiI77?hcA=V9_4rl5b>G@MPBgo)9ChY?fIXa)&hn6-T{- zA{V#y3%-{wIxSH815={Z7<84piUnvmB};pnWtf!hUo6Fhzp@BNZue>ivC6}mOkjo0 z0CvZB+iRqdfNi6bDmKpRZUJen?v|=+at>aG>koGL61=eJxREv)ah*}}$7RuTIY}I^ z!uAjjz?AOgg>5>INP=nejQj8NEj7q_*^pbw)9#I$urD>Okmuv1_^d4Cb-nhXXwVW^7S+k2rX)J6f@7d=#) z5tlbDv9b{9zCG9}tzT%Cf||(TdttuVHOhB-ejlqbZ}sN#CJYqYo?c81XU1YROSB1G zUsDR_vY|PXO9B)0(na>Ca-g0X=xgp;bUX3T z0G);%ug2@RcYr6XU2n#}v-xC5w>o<$S#zzyvGP zBhUhuFv%VSHqb8Y#)&sqr(-AxJ$qM&VZsM!s~EJT+RQy7ZMyQq2HzMO&V^ac>Odvq z8tpzhI6Owe+@j_)G8`y|RHi1rLD`|J>EgnS>iIGs9FOuUg>_4f7(hHc=?on(h&Dqw z>;d48e(pi0(Fk8Vjig=>ARSZ>eQ~q*Am|m%)u2`s&W4}Xat=%Es2GN6p6fMTH>3e9)uhb!H zL`%lS`t>)UIkaay@5vL$sy4&H_ObW3o6mo;TlmYopK}DpynD+atJ$KL2L9Xg-}8Zp zf&P8(zxU#?77`uLPEJ5jEoi?maN{|6?l-%h^_;cPpyj6@(tBv?FfwPNIBdOPEwH{G zgwy;EQDm&>ue{f4whZLydtt*E?`@a?8SI1%Q`y|G!(_8hlrP}9OJ*8{PEcC$bS1Cz zbK;Jwl%3hAPDvaBUiME7&tx^l69yzJajNzuve7AG}SM2YqsZ@QL!+o9Qc;vch^; z{IwrF5vCOMTUa1mcY=1TCDd@&7Y;-pr*WkP6x^v*m>$w)F=Ak((BvM&<}mB;BHKe^(ZL9K!R4ZVvaa;=0^m zseR&d9m8Jb)la?!9_^AfOFJb3qZ9oj0pOrxg3JD zdf6XVO#nTCj=jUS-UixPa=JJe*s>1j$KHB-8D*&NH}+~DkOjC`=_wh>$H@qjB<0QDB5=AvR+FjJc$`RU3!w7|5%s~3M+s;FxXi%>2}!4{TAVjtd46ZHeA zS8C(JLsn{kepKQ2oK5B)agk!e%wE=Mzz9%&x+%dfJNkuo#NKUkR%c{_+iW#0sslK7 zC%cb92Q-9CvtD9=Hr;lJGH5{_%-syi?18i?`NXQpGnkL_^>XsK)F+%SA&eM7VK13P zlvM6xM`db|r~qq`#Djwq^{Okq12V^ajutH=psQIJ&|s|o-}1!~jMwwB;TYU(O_EWV z#m-SuI~N7k6=OJ+>sb`qjvbC^1lg-1en17$Ty+Az7x zDGt9c(|*3ppXa#?Uf(pX1lM_%AYy732u519IE+q7tSkjAFknZ&TmtJDU19vEy60pl z1@g724eJeSBjxrnnw_I*QutyJ3x0bE)_NNTn84e8WCP~gBX_$xrIVPAXXrvzUSTst zl&ZAkULn=8OiKlP#*E|jdk87$A;fNeiUU+0a@<8+3d&ZDUPqZHQGxJtvQB;}67js1 zFwL8@Ua%;N42@k5 zLxL4cYtdmIXM&~&GDX5#ceO-eWUvas*#kl4!fL2j$f?z-8g07ut;&4Y=}$40+&zw6 zMAjt{G8C~puayDbT3>2q5H2`jtX=PSKmPbT!}B#fX{;Sgc%jZ{RTE6>q@yOU8W8E& z1dpg6dz=GS2CBK8B+obmw!Vm63AmnFg)rpG5E1O)N71O;ARVj@{SQDrQ1iC^ZDxg3 zpgh-GZ|Gelk&2L0 zpu-t@)ctiLLfO2TXXdpp++7=2g43ExdM(Opx%c3$=?_fT+?x~+&xy~Brv(k*k1Ib% z1=LpxJqkgzrF?V@&=0i^ZoZN`$rhr#qq&2?Z3>G4gm}ZLBE4)+eiQnv;xANDYK>BD z1ty@moz;KTIrKLUv*0QXHm){V9>SDpotlg(Qw&OOI4HyPw5K8ibjS``svrrnU zA0c`N7mVkmxF*W}Waa!FBb3E5hnPO!NRGEZwVa7u!=8Zx_geIbP+-A(Qc_zw{QC;h z!3NbJR+=PyJSk}i#ZykMP?p4oG9dsXF%TMT!CU)LM@^izZz7)#q;XQ0i2OqDCgLlS zSXHoW4Kr^yA)xXH8LzW>AkAs2;P$ht=@joYx=yi8aI3e1x{o%RC03TJ>E=v}tfK9o)vQ2`39Z9J%k z=}B5u1fP%a|F~f$eHaL)=vBSr%UUpDhFQty7WsmFONA8k=>gE|gzRpl?c^B=mcA1+ z18)ZUH$FxzA;B~}%XwU~Q91v1G)k-9DGH!t(>B;}r^Tk_nLJ75UhAWXBYu}*zm*v- zM1~5~n3Z&>!Yr95<@!@9ms4v{NfxKDHw<2EhuNUg+knrj%&&VCuE}=jPkMA&X3bxj+ z#ZAD3wkj&AXf1}86$oNycbE)~L@Nu42K^nqy=t1&JvKp*^z<@YAjgLG;m6suh{0=v?3fM+dX!7gnJB z3{Uv&mUm4pba6M$M+N8V4!UgrhqOffk6}I_=H_s1N9Z;|q64Odu{Z#!f?er=6g`O> zD@%S+LiI^dI;?2K1VPN~=FD#1{pE{cAI+k_s0tQlw}#@6`R#H9bb;gOQx%U0b*+x6 zft)qV8@NZpFIf}{4hm9k$ox479GMu3|Bg>U32jMC{2Z?&FQHlZcTC?_`YVg$_5F0T z7-qV8=e2*s9OlW6K5?`A*u;qyY-fw}-fd?N1Cl!gEY>xvXPXr&vDcSrDvWQH;@o9L zEr8lNTZ<}wvoOe-mjP02VdgP;3dfmN1DCG+Do-Iz8!z#kD6txnC^W&+-LU#bAj@ed0o@&t{ahodZ{g=`(2&QgYGA? zf)xt6*u#yrdq_Cf%NdzF;&X8hh!*-q z(eSRvwJomGri%`t!oHyei4raZC+?Yhf(9H29;1(8?#o`QnNJgz&);YH#M?-aMu~w zh>9I4(sl61!QgQJczAMng8vNm`v1$XhmO+f-&5T;2A$1k$BOA+aaudGg>xRX+EypwC)co3)o3w5=@U|pv?ws5``b$3#A5ZQv^cbGD3v1I9-yh zwpyO1^|o9(_xa)R*=V!3=UoM#LpjKtjE)5)3Tzkakp&pb&lM4v&k=rkI#x$u;1*2b z@U(qnh79`L@Wb_L^c+g02m=H$_D^Y$qY9*NPbiOMCdLanvmuf6@MjRoL~fw{Aaiz( z(rva_h*qd!TEf*kd=v_=pzaEF&K)I;_-3!p(i}zUuwusX84>@~1RHYK^)D&Rs=Nkd zj@hY2q4aW)ibS5SF^R}55G_s9P+>DxM&}mppUG%`xPRo#t`IoC znp>9}VYY6!c-A7>4D>+Swch2O^WMCuQiR4aH z>HW?X6j}+KILKU~xTVR9+`5Y@u*Llp6-cX4-mw!@{L=S93g&4<_mC=bLmg`xX&SwJ zhPwyY2fC}n9RqPyti8K6!}4K?P7$I4zkzynY}LD&YntVh#6rT|(*)b*uT{e0w+2X& zik)^@CkZ&)1sLrDgt@=6kML0w(5ys;N{P3P|6z&pGJB4;9|ZPwd8pgdTWt&2x`ck=jgk6+bD9zT{%jo&da^o}A_kiwdYhZDIYhG0b36%R z6|6jHc}2m~>L+$Zg)|@-OSjTf1gH~kQgW07LG-aC<9w}ULr?-_DbQjRScfkTf1WWc zyW@7?nZnd-1f9E)GXl$0R;7q7lf4rLPq1*DgH$Zk2`Rh#Bs}VZ<996g^%iCMCnbCF z{vH17-6M3eB#Vtvkg!Vkp{$!A1pyNFVaW4st?LF$rw1yOt=AcCuDWt1;jcsHv!guz zZ33bX23a`WOlPR;6NLi$;lpI`_OL$b!Yhm9PW(Qoj*z!7a%K=ssGoHkT%zlP(3Xsq;eNTxQClBR@_v+1-7+A5hnv1 z(D2WVZOwCD%EBJ4X|yt(F?o4(q(s*s;f+QEcXbLoiELl^t z8m4zrgHRPUXy0e=|2kPMY?adetMw}-9N;s!e1GUAC$b+lS4a9547K(g=lx$MKoI^v z?S8Q{E|{kM2|*RptcXgdfz4@(oA8Z?So84V5xO3|3=##*EK4BZ-4J54slQrFim~lx zvHXdh0n58 ze|Pi2cPBYrhzS;z9ccV&meU%YA6FnDoAA$Fg`Hle1k1xqrL_n=(4!Je!!xg5zx|eW z@>HaBCq%1nr+io$!Fqc{XO#Hj zq(2O&7t7nZZ9Ci#9@d{O(>f=j+a&50MRuxgGh{uOdT#m7Gqm(sp*F#^vY!e!+)3fo z2~|y*c6vMcYp93b4IZ6j>E2eNdeD}DQR`{T`* z?RQ^4eSZ9OxAzNz7E>X&X0euq@v>Ed9pf>>;alFu?@V?n!evogP`FpedB;vj0pe zzp@|fEEbM)WsEKtrSif=1B&GJ3~b_Mhd~X}RARYUamD!!KZsht;{2g=w+a&RUakv7 zFUoe&YoT*&j#5GED+6xGle=IhYQ>@jt; z_t;Cv=PPB#oz7>kE+-eLRjnQl)otEQWf)NtXTaLjLO2CPihj7XQ4ncu4Z6s)s+Y~n zFNDV_B+Bb?49z&1@`^h7T_hdpEq;i-EKX^P(1a|4toUBLYk?Ukr(IuaP6eV_1|LLS z4?j`^?gH-EiX+}EiN0e{!d9>2Gf4gdXaAayeGFiExVdDI%%TBtrTN+?*ilcuZAM!d zi!OMbA1HT9wZM9t(hvWteMR=1XuHKNGuTqQ9Xc|pH=`SIP_0(~dsd|r3MYuXkehcB zWm%}~+q#K_UFNSamsdoq#FgO88$v%i@$B{2@6<-!zlZ8@a?H~r;VEj8)MxXJajM=+qRyRViQ~W9H)^t_Zt^$Lg|R z?)hfMC|}Q};8Y%aXVAK3uE3_H+3qU3uvpsS2ST_i_c!w~PjnVPvhd}1D5w^`wg)X(hz=k^`icz9@kRn#)Wgv7>9Ec~SC z^#iO@gCEx0qjZJ=CYrH4RREDe!+H<0R9FEbx2Id#v17v;BaY1j!iGanIOSkPZ^Ic4 z4g>HW{!?Td@uue+@rWQ582(9k&snqW6^hDVp@AM~p?U+t%)D~|&JFC>4CS05=C4;> z2|v+(^>hm(Ar}N?sVD#@4OG1lC-zt_s!)$zTa&NbV^JwujtW;waX6^KKGZ3;45Ga93jdV9V!eN6~c@ z*x+BA0f{7F_1a!zsWukh2^^xjXHo&8x>-CQ}7D_<&Hrt*- zoXwEVtXHQO1ExW-!3xePiV`6xD*W;kM=*-k(obJ*@O~S9fA@%B&ebjdg~7(%wxEqr z3%RNVnWvaT(M2FT94WjB+aAshe5#uKW{W?~X>Un2yob@Y2kF-FZ2_W!w$jSHSMd!j z?B#U!3i*Q?LEXwJp}StZL`Ym|>%m13yH{!PA~Qz6b~kA{@Fq>Q1r1#G{I8fZYr?@y zv-jb7?}MR<$(9Y0Tb9&UU40hR$2LXd<;iU7wfNPs0iI5%ij)vSUZo;ZC<>HR6sEa; zyRNcjDu6b?Fq`*@0F{BKv{Onh>S*DGA3+KNr{NQ*1JYT4HMtzU?;(O#|1)G~I&gk)`eEmHHU6bKI?y4&>*%Bb{+(Mxq3gly)hq7^gT@6!zo?oJR~bLeriw_fniy!y5-iWs zb4fg)EUxn7+z=yC6PX?>-AoCo7+U&68!mp{Hgg1AlcfgpL7P@IeU^&J-1N^b%C zYNYSEiy}=Kj`Ir?0&05V+VK2c=J6YXaMtCA`}!=9#CR%=I(jQCkX!l zCY_y*USEmXZ-V|irP~3mLngdCPDD^>Ml#c(J2r51dHQOyc9f$gT--GZ=04T}=ZvXA zOhCGf2M)T>>km(X(vY&JQ3QZ?30-G=b_;xJJH;oWm?asf9rFvk1hRL{BO9Q+6-KK% zovs1WU~6A;P}2QkLGgG5EfzdMtkZH9D6T2gu*aou-190(aY&uZrOW);vOZ$%y7OO> zB`ANGd)0iM;;ML{ovq3shO&_FP~_umhH4(GHI=yjet!s*O5MZpe(Pk192(r`cOL~o zOuAX7n4NG5IEc&G2cemJ79X{LNLFu(vK>hHW0?1NC6HcmrVGCg0a4v$x}7 z+v@h0`U_p$ExzzD3F*u?s@ZbL=$?s`GcV52rMo?p$}=IFCIafb9O)8rRiDDpePvlSR7?F>HTTFVIgI@^hO6BN$ z&6XSWI@Peep*GLLLWXjIn{#w)10Q)prQbQmPFbqK*L}!ZVEl?I(sakZwO||%>g1K# zrLHJVgWaHdgUk*Q+0QO8uI2LY(16i_@5-eTICQ=F7?uTWS!Y{jqr3p2e`Z?IJ;0;U z3V+<8nK4QiojGtorlMw_H@VpV;~^^ay|Dkl0-k#&$)JZ$21q`ROvrFB>>8A}*reem z!x#1hNQ3>`U<5OzocWN&JvO~a06RIB5E@c5dE!00Y1a#8}iIm=Ke9@1b zUt|<_iMte}3QfdY+5qaRh^%GQRcR|*&MuWdTIl>0NZ*?7xLr+8Aj3=X+c<^?Zd{Mf zHN2%m(Z+@*NX#7up0i!05eUdz6f`Fk4%aWVXL=NSUs6nf=v1F;ycouj1S~d^kXN^l zqx-Kgjy(8I>L!e~IuTHwQqDFj;}uL z7U*8Yohj6vzfjzneCW}aBz?9oW&@Z$+~KRM2VO^7UzTnnCo zdOWuq&Ss&`rRCM*Sa}FLjh z7Q?Q&nJ8V^|6p1%^VA-dB^8>pKiEbjf}XEnW6Q?`Bs7(e4K`m`7rg#akH&^52gsi^ z5<)2It+CgvMehDwhB1&n=b%yB9WrLlKX(C1s%N=^C0MIS(TCrEHXF~_FDRDXIcN*4 zA8Dc7qv>AyxY9Q2bRx?L#}lFKMo!YDM$lS?Pd^7nLTBfHRBw|WvbaEHJ`Q2(5w$K< znD-pNCx%41vnPfe{Q6T)etk&)=-0;_{f1YeD9x`wXmI!&-gelhKQXB;Dv_MZy2DiK zH?;cNKbJ_nyjEOgc(C2@YdPDsqk;vdvmxxU*3~z%0cr_=*10s$LDAD!y?iyBFdFu% zt2`Tv0x1Hq3)){5a%UP}c zxGEnnM|>f!0jvWI!mDIUveFlO8nTB)##Nd(_7%1%KM0och+DYMZ8&*E3hBOK>0Wf zuz%uOx&&wB#|xBck(oq1JI*iC+QF^{*RzO8itdq3N0f%EW-!$=fSnDckGPVYo@boo zQt+WzR4~mWojfGUD{u#QdwUGFg%8*|GEe6VbhF&{4*ZzX(_;1Ed-m&mLzCA6nPqK| zsCh91lu43qE)H$veEMr62DX_r$saX1WNk=+X{eo**q1@ju+V}!BNQ&KwAgsK z=?Z6Ifz27B{S-p&80lx&H*HmGO*3iFE}wZ-Rovk6*Lq4e`~3#1;N~(b@7LffANQnCFhlS599%Xi0MoQe>2uM%Nn$OU^v`5Jl5nQ(}KW9|wd zXxxShIS* zK+#-dH0>Gp7}ur0G#8$&4f`Zd-p#z1&HgViPgXijg6otJ4X4P?K)yF0Q5XSAh=#Ib z_V^01XzvusaJ2?{MzQqg((K5!3@3A8Gh?mB&p@EzMyaAQ{J1!mYeLQTMbvLW>G5(2`>y4X=&E5Gh-a|eOe=V zdwFq6xny^Q&5=9T;k!0WgYu55Qz+w2+Y0((5u?{6?(O(Xb!92sFx?~a#9_jb$kQ3C zkb(L^lDj-&=fE-Fj$LI|vD4=!gR4tg%KwUlA6Tv`?rj6Q@@zO%{__Zo%|>qYQj!8t z+!1QK#ml;BrWBOg92P)*4>u!|@BJv66;^u|&hi-ckYr&wfZBZIMv5UuAj&msBObR4 zX8!9D{Tifch&eE%a8+nyndZ&U#%`C2uzbx~rE}fcV1I|{M9v0brE8ps*safP18AEI zyFk>%0!=HvY9PMEGzDLH8SC<0Exx%stCpdSb6dfTx3L7ULcsTnY|ecgQ8xl0_u(YLCz3z_g!i!HZ_sZy(@m9<>%J1 zqLAnIdFjW3fpiQ=FN`!E5PaP8z!J>_0w8m>a%!8d^u{9ffO!>4jVfX>d?ym9+=?>j z-j9pZj$$v$L20IBKBs331glouk#kL;G#J5SBDfxV5LcSLiHYc*%P5pR$L4fCx|%b`2y3x89a}s2dQ1T!Yqjy_eefPY(sbaI z3w0gn?pt9y#QS1B(KD#IM-8AB$584TQO68&TSAnCq~A-F?1C^0?W2z^`E1u2H6hWMb^g_cw|TzD_CBju}G&RBzDWdHHE zNRWK~?DBdBQ}aK*Jl_7aLSx)VFoWhTqo}6Ln$O9FB)!r?1>9EZ7n)Fm&6kMS0O{+P zA+muOwcftDn!y)&iBrkaSN2`@U^ltDJIfsA+6>FHVr2+3A2e1ng>q99^C5a^&ZRhA zFV+&lEwzG|d0EX~;s{3hSCg_JiwFdZEB(sa$E_g`qCm{-5`jn?RH~d^E*U8a$G}tY z*`ogFs_RSavh=4|j$}&2XP1=HSU-f_(_qw+lnOGLgo9U{HVJ;4lon$$8iq&lsgNJD zZTez)R&l(hWMTo*(~0#Uuang!Ob3YNJ?0f+4p5n?34+dhouE*`1h=kkMmzEiKvOn6 zLj8bP=nPd-gLS_ddt6Wh0&Q|xgftsFj2<4f$XdNwKx~qh5~3#|NY)A%!2)!K$X7Dh zbdN$7Zer3(u$UpKs@FeMc8J_|Y@g+9hh}ye@H}^av65;9YNE{j1s{S>-F|=b<#7n@ zx#(Poyakw{JaGeJi5>%*#&=?lR^}n=X-Fy3-JAw&^;|kJAVAGkGhD)IdWZ&Tvh9^? z9(doOyEl6VaNVSUJ4rCjy=N!FE_C+9S5J1t4B`0|=-Dr9#Q9f4OGiq-rMa7QNTqeL zoJCG|T$H4aFn>(xqNR6Vw#7!WipQ)H?xFe|z)q zw^u(GH+_Z52=zjkvneE?rjy51w`#O(caE$sm5r=bU(eGQTfD^cdSRm^NPn z1L@K{y+kt9cKZ#^-xB5xFga@r%R9V^0nd9M@Bf2Q%<0C9zqEb>E6?vSr25^T_@nC1 zAD1@|NcgetQt5Gj>it*m??1w>BXd6X96Jl5$EKJ?#Xjqo#T+b@OH6IPaJfWI0jlA+ zh>9Bs4})2$z6TtECz4zq%xk=T`|#-zCFOs{bWR^`Z;*4`4cMN1S5oazPF>895*PP` z2qmhdXcEWW8fIHdr@3Y4jF=3^#VW4#NTLMIC7TPBD&(C8x@4Gd^WE+3N06!c+>dY5 zf&gn*pS})e0sKZwf_`FkP5g&O8<6L}E>jObVhsjNguGwsf+#EZevrW^FB-N3t8i_ltZU zQX0&_g40dI4vkusT#$UI2e}!{9Txpmw9A-QchSBC)521-pV6ht;&|(8<~s{7{1A44 z%l)A2)`>_aLVBb$g_m_yudDJxDoB2?DFX<0!Yx;WG_s06;kov7l?G4`vR$F&g+-1? zB0*h6DcKa(6S~*lK-}-E@m3xN^g2WT-z93YTu z%G)1t{<0ywHNsXT0$?%g95Ks!5^P79@0bGy)E?woS)7|~VxHpBQLf1pWOu2;z`DWq zoG)PM9T!?k#B#(eODQ*^N_=~b61ct;f_z+Nv`#KAPhw8j6QnXRiX@PJCUL|&oG2x*h!HB11WQ&rNKTxR;29wY%w_}0 z-a@OWScB_ZXjNwjOxICj)6T|0%0`riuyTD-T38yuY+f;Jjygn+zh=30qzD&;q-qZf zu!z6#QYft&bRaX%6!BM&XTaay^FQq#SLSJBpc^Mv&_sY2SVGv`fUJe>#w-wU(|h)r zWqP?F-bt)mFns3a0>LN>#0g^?P2sc4)f)*~agjNa9AGUWNh=hfghwfD0z?IldSO!I zo*qn`TR-0aY>MoNhEWt0nrXZwN{hP?mmt6v$IEs^@Aq`6M~e2DK-JwRHNiAn4G$qt zUp|d1J&wd78r%*kL`7g;31~j4X)ttzi+W_TSy=KpHe%h`HS+k}i+F^K(B>9bnwuE( zaVt{Magu9`Nw(p&`KwpiyV5sD&6tBI0>?5X%u%x0dex5?`|tWoG`O6<&VQkriPz_+ zN#8B|LS!&vV={HrA6K;q(wr;{uvWH(`}8nePt0n%{r zAC>L_i`&fT{RJ2QZ56vrsPo|UsPH8vNRWucZ$pMkl(2fW-I=H@SdnPD+VoFsp(Dlq z#CWio&j+P~Z^sKfb}>3%EiM-jW_%@C6UGjHbcJa8m4$B^sKv^X2+F&u0<+5^+%&{O zsva=A|VTBAu891pkV_A<;E`T&!mG;y`6x23!1pA$>u8A=6EZvHDMzH5FF4(Jkl8a zN^pA-51InqujaIXmBH>ImlaHei{N39yT{im*1#5pz7f7_dV#8IqdsI458j6?ARgZW zEHOsf9zrD1V-N=zQA>rPf>_rR4>*BqQ@b_wVmdt(-C1xw$ITm)nnL=Hf&O{t$zOPbm;F%SR`ACrb<=x5QKP)4q0`)%IDjOCB?g*SPz%rEGG zmI9zrS3mbksPOWc2pGIv{S`J+{6VZlM4O?w>w-;Jm#`(lgo#pz?KFm+jKrISz#5q> z;UZWqBJJ4Km=3U>rWcsN<@OZ6aAZV?CW6jjB|L`)b~#ziM!jd_o5!2g?N2wK?mpf9 zP+JoV7jAEl$OUwOg=~*>o+h60?f0h8;Y5VHz-rSTxaJs0u7?~f+ zPLeP6%{I)fRFoq&JF2;!q^IKErl?+tD_1JJX zAh6yGrGaAbBBPyI4ZRvWX;UHSCdbcHf^IoTFXcHLEw6C=uTNLAQ+Ro~tI>aX>J_y* z!@mKoTU-fF1{w9fGByU)mey87G>D>=J zxB3-)cC(bknt%V~50FLupZ^J7Rle|vA3zTR)pf73Vw;G&vExTqmv9!0_w03eNEr%20=6qA%X|KHuN{(EED#<uh?u%4UUJbueT-4B@Z-&?6I8*EXI%m zvg{a~KpJdTR*ru7^uz3~F}?}aPpHz2S7>&X>7i14t@76ssl6Qo?8{7_F6glZ$P60N zN5Rp-ai9a%3Z+vU@?Wg?;GZ)%@fWf<(Nr^8)+KR@=hL^|Py;Vz04_A84R zvnG(H{uG}?VYUR}-BH= z3VYx`@u~mEKjpu2Qi36dYc?)^$dqp~9L*_9cQexcq*JdHk!f-bN5+VY2X4$w^#)}@ zGt0B1FSsMEWH^)ul5ZN;vvj|}tDK30suemZe!BgU1zg%4R7p75w+AOZ5=lDtnG}BF zaheObaPR0=qjcp~&g!1tY)fN#Zf@6gvZL^aiXe98UO9CXbFml%o=`>B#~&gCaUp+* zz&ucTy_F{Owe$;3PTO;dQV-z+8oSh8-ZLJ@5^1B$X>6`lsp4TRm>gc#|MikboRYCV z{ackfO0efSL1KGE@^#?E%epW?GNPPgbrtEwhIgO+9%UFWuJaaHcJsh#eOKq$MpI3g z_6tYMV$^R&K1zv1>pqD01Zp~3?yxp`ZL@UgnCL~GVctA_H$ekA+auGH2c0H^1k*b* zjWixx*-1+$o}9l`e;IQJ!yI&Kay$w5w+PkeKL?fo7SUlfNH3NQ;wi{s`63?JMM?AmCXTTGoz5hd830??@?vuj~7qL%>~| zX-Jk?E||$q&?zP z7cvSa(WfE`JHwiL>Zp`bhQczLeU)j1emdJA3<6uVev8hT*5wgt9Ck8o@+kzcjMsLC zs^|ykLrj%;gR{4O^U{u5M+ItyhBOWn;vJQt=8qP+i-TsdkVOn&qy3F4EAD$~MPioB zi;Y1Em*B@HX{b^KilbmVo-**-s}=*A>uvX;vb)D3Sy9928aY9Z33>(aZHj_cJ4tdI zXggx&wg}RSD;-mK7Z4INLcH@jwKAdOuyq$|3oKq}tVtINXk6Ej_0<{L=hBi_yJyQl zK43{$)R5tz7Wc^`6gM<8N-P$$rIvd?e0se3JVpQZ+lTGw{_guvKUlnz!o4uU?u|bc z49Wc((kR{qb|}JaYWM2KK+A)86YFj4M}B8Tq~|M|1A7kH(6P)@oS4FqU%Ow z>wD=h{i?vNOx>erG)Q3qH}e39e=gnTbzJkIEyif#*fmOiPgnyw;l)Zu8{*5ww}`{E z7Qk-7EIbo0&0b(0j6!^N-QmE%apjmO85JY}HbX_sYQ+#Qn=YU^BOO|->{rH=+zquW zwd}I8maW00Yx~X@_q9;PI_D7Ys7^qhL_Nb(*i>g+xuGw5MPjIu6p@^S+`_r_fnvRN z``=ZiO(5>D=D(G(MRvWA-AqzJl&+E5xYP>L5tVDhQdv^;cvTW?w|~(KXhtDOYYTB40#iGZZs?J8&KBq@J2E;SnaCBy5jxBe zQX`A$mhv^dw3T>W`n$_8w#Dcm)u13rhDmCBiPWp*6^#}q79atuILctmOtk|!vTOqk1R$QO;O2{hqt_esj-wYhKx3ASFG*A_QHpw5)&w1 z#Ng8Z6eP>cUK3b)Vc`>F5~|AZMVlWW&lE%shXwwxtnOUg7GjWn=DctC+3*W+4Rm^R zB^T`op*N@aS`rka`}kIa2%NFZv-8~<6<7K)VUL#+OHZtkmTHy>qDJ&&y_-%W*k9Ft z^cYAk9P6RHDdXLh>ZZlSeqsuzTTINXG2pO!QK@;_T&!0iW_I%wTir1xRW2u3i zb1$82g#ZcLNZ1yzgGqM8?OkG}f%1alllWF&(74iq+8$Kh_zJzM3DqNg1~S?l_o^#B zvali`bJR-on!nH03Su)O_pSVX7JazUT$_+JGg>ObE3>9w%>?IS3yP%vn__g<1g29(ROQn&Io~K-z}vZ zTaE36J9aWmfgJL9)30Z2DBTRA=J@9NQVX2--}Q0h!G58wLNR;>JElx|?u_3{0gzfq zdPf-P1uB96Y9Z@edYs4<<5t+n7)H%}=1v^_-H~oH@eBRbj+coCFjZmh5Yp&>ml_G$ zMy1i~w8WKuNZzIbP|I^u>ryZkQ?qs0!Z;e2jo&R`e66er`H=u=6_eV9>b^zOP*7f1 z$Ljlf0Yk+>q?6aurIIq2p?iQh^J+%!wY$u5hHHX|`JS%FAg7(2vjsCvHj@6m2V>|I zRB|)OA0Nj72#^AMdND57Ww|G&-P2Kg@Eazi>F$ z`J1^3i9fHL9}pOYyiQ+FkU!HHXOfuZM}iu9iW2?`3K$YaI*;mRn8)eM38X7SXEpr+ zP^5O?0Kr(1bqZ+T zdYh3N#|QmBXIKemOGsnbKiPjdH=*85Kt^Q!LL>=Z&&>)n?GDjL*V>|pZY0qLPN3gO zg+Ym+J51{+jvw_!jsM4$y@i^B$yVJVJPD@9m6Sh>NX7@khQt?IIn|cP-UQhKAY(;F zFy|wR?CTWgqLX<1psf>D;f4(8e5G1x_QTQJaEa6@p>1>)xL zGth27v_y?2Xtya%2<;5!DSKNe{_gN~y-|^zG)CjtEa&U(;QCk%Q~VM|l@3KBR4YGK z(k26y{XI?vg@GnT)ykO$>QcS#xNeZ_7KXBj(ZGi|j@hj+Z1|Pn&iSoo_^$XUMt5|K zC~2-!fn!&fnp9U4b%RPcPl=^EwAgvq{v@nXc?@lkpFsLgCXW)~u)HUvEh?{+P$5+9 zr-7mjVlunDVji`)2}nqJ6PQCDUYT7A)M>$d{L3Av#_<&_?Sd>4O~x9V=)iO$rjZqB zBp~AGCm?@UsobmMDPFmCK>oeyXr0c;0Oi4Denp{GX>tjs;o+Xxtd|eBUq0M?zSRUn zY>rT8jP31_Zp9v_G+W0NpLz?N=VbQzfhT;%Rl@5Fl8kp3J1ds@6qfR&5b?MFC@$YaY&n|5eXP@Ap?D#ljZePbB_y6o@8yZJceEZ z0|)gfU#&`WD!`hukQ#jCTL>eRtl~7f&AK6X=_k3Y>`7HsRvW$sJwmv-FMM2Se&Jv^ zohH}9Y3=|bF$M;u)SlV?4&|!om|#Q*-70Hrh{HhoXRR!)O}K(*;55eE!S|R{=0?0; z81wKPJ7=z!cT&#;vt{cr=2zKE$;7Yo=5#wZm(pZtsuKMeJSmRhgmw%t6A5}7Q)q2; za5>>~RpR&UY`i&#CwIs$d2URbu`a77Kssv6W~aLE8B;+%L@{lIQQ+<>maO_*hy8jtG$h!i8|u`_AZ?qg<+@X4{l zCqvxxm`b~;iIQNQtD^B;&;Q1Lqj>B)7JRsK)Rc9j(~@YG4haQB_|U+jnb%GY3RQae zd$OiWM`dp6^=dMO?Rm>S47IlE=_DNkN|&s=Y;o92w?2jJIV#N(rQP>X-O2Zk&$n7%pAVPa5l4Sp>Qh{ zx0gm@)1|N5<{X9OX|bQIU`9r#;pnH}5?QAxnPA2C==g?&?1h+&h(m%dD*grZvIygKz=noE#4i9c$3vjJPmG8+4diA`dDJGeQY%CX8!+ad`s^yg^=mo?*-A*aa@}$hj)SuW7G13B_$++AH*P znY|)jQ5PQ48*)0{yZQL>K}nP!?(e=l_P#tmeEsm)+mvHa$!X7^f4l$mkyrZB^A~^l zo6{txlbs4%f@v{~cDk(IB<&5Leqj6y>`h^>nZ;WaY*HDGWez&!vINUBFiS*{j4ez| zCaPrd>@-n%$PugtJnm<5v|gab9~A!81R@se@pl0y0X4dBRRgOuUoC*SOwl+G(*-l4 zq(P}X2V(ZAO!#}*0FcG1`9BYvqBCbU^%ygGc3v9U*577TEJ&RwdVsV-sGnOFG`Gv_ zp+z(~a>9-plswUnR%Q$@a!d!ruT%|y7;VJ zqx6X4oFoH*%cLokmVNHF%EVRcdTUvdd5%#(o)p-pZ3ZN zkqlv@X|#h%zqO{0hQ)T0vQf8`krGUcZn6-qPe^rmqpC_WK&2}wHkQUQuZSuSXWZAL zR=1B|AMUPiK7YNnS@g{`(Je$}U@;GFqavXk7me;n?xPuG2<$4RfwcfUavIJWlR6$?aa`Hm~OU8*u!?@4j4qsmS~W2vUbxT z6@&x#o-Efhbibv>GkMWJ9FKL%tpMI^bTF;Lyd=~?Q$zd$LB&2<1-n-SXl72X0q9%q{B(=|a7)k*QXGp?gp+L@rt(SmYpqYhpGH;gs`1dSLD~V; zK_ww;2~j0PLrr;HQ+r$=ndQnf@U<-g-!ob6i!a~@AXqr`IuN#OsQ6!9=?jvigj)Bd z*mV5Ng!nK}^<9cDjaK`{9YCItZBs>sh&A|q&7BfNRIqH)o*Jg%ny1C3xZk?zZmAkJ z*_RKo$tf7Jw-*)dBEhkYQ0DXFzFrtzKe84dkud9Ja_t2j@faC{JJl{urjZ=MfFq&fP5jX*j`ba!g0d~wzu%Ch0BZ>J z=){~r4s3;)5~8j`P8S4wrRM}w_c)d59IJT(D{9Q#kSLmlBg->v)Li^D2X#_>6KWnmqQn&2oJ#Oq9xRB2e z31(zJ*yDen?U53zK*7u$p{!Wu6Tws+=p?MD&%|U==+#|#_7YBoPO%drb^0|pa9z_^ zGYm==(Y@rzW3e(!du&;z&Q9zMBzr=4ZI~*9KNkwvc_d|~8&XW^X~A(NM=2x#QWM{c zNii`VjJL<1@VtU#$EneTkJsai1>&k-_21<7 z^gzaLQ1EiN51cyJ8jd8X0y51X^5dj8tr&-jNb(p<5Unw2!heZEM0^#bFHi1Rmn^DlLtBXF8b$mQT zVOCcW!r^wmz1^-;ijU%)l9t|pdWTThq#IA%Ykn{|qs|Ud{RZSqXY&|w58e_679~e! z%nbJ&{ts}20P(}Y#KMNG`Y1XGLXnIf#sSD*D5X#ImY!<6gU*D=df05t8kRpaEbIjf zsLhjtY&jyOEG>_hR#i~L^mJV+B6&l$2hFZP>MTO0Lclp0eQN64IwTF)dCyspj7Umx zVKN|n<0ZDkIUW|iopAy55Rh^Z@$3gAuo7aHC+Z%s*&E$M5J%gU?HoB?al>k|U2d=> z9#QHoT81Uypp&F)qfI8*aKk7!DY+m>6qkEwd5|L4$490Wl}5pM<#g;=1ZXP|k1rVw zAiIO_@O+&q7T`W7We*pqx)|B^BwvX z@=ExzAL^&6OeP`Jb$J0*2QChdsLiCPXeHvtb^5jvphsvDJe5*uXeqXz^J3sPWnx6iv0fIQw`}N9ci>Q(mmvx_0i9)lsNdO zfBG5!-|s;Z3P+f;))7V*9?)Hb-2Hm|iiP9`;`Hllcuu7Q=N5#E(4@z0TidgS$&SYWwKWcQI0{Li64*z&}kC9HywxKa%y_6_Gn$z`UGTz|Ck@cQgD1Shm8V)FvQB%uVoG$Pety+SI(2pYmih=L{^Yh)C4`1GYj_+tx18pyT5qBZ8l@5;h zOQKUqN?<$Se5F~i88%nn!I8pW{DUFsn5GX2xM455LUjnZyzal2AW9?28i{maeCB#H zkABey#^nX<(XZdXxkC&)Qy&5d!jkS1rNJye3S*)haD1{!FngeizU3K#*(tnzv^_|+Bl9=hF53`xZa799i$d|+*(ye&k;O4w<&T(s5{c6%o1~tE$+IJY7oFX0=pUnM#azPuXGkBQgnaR>Hjx?ZvshQ)io>Qj zsrx&addsDxV$(#{Za=)b2R|t?oEEK`rh}y%r?N=7?9va65R?=|upo`+#!VTWG<#S9 zb;l}$ntoCn%mb6$Q6^fNHNo9OB|YHdi&CC-RV*;8h59&{p{<_kVqv>L5zz?W7qY_3 zM)G-kQBz|W8cBULR32Hub&U4Q3%F^rYcbLms*!3DTx07>WMmC;9yZhro@**K^YS^b z9}`Jsp)IS6Xtg2PSU2!C%Qe1WRQPvxd7MLC94$_g@o8YFkS}O-Vv}BNjemMRJU3lO z@&f?r02j(m@Zf{my;hhAQDm4VVD8`KY-z94L4xH;HOwxQh&C~HIi2H9a%xz9h#9(k zcX&hJS8z*ap$pNwSn&QndUz#!r2?K0|c$XOtiMPuCXY2xbgzq(O7ucVs+EX5E;v#yK-?<(Ov51yy=Z zZYVi6qe2ASJnN0q05ySuBJg1ZiiFfebxX!PPjLiyhKzkE2#q#%GEWpnrlUV9276GM z>-9azDO#E-eSoQ_D>W6V(6rc3M&1jO)88RkFtGoa<_w=!aM08)vj!6w{*J}CgxQ3^ zm;hd5eT!60mNRn#0h}g=>MC8yLPn&GiT%q=`c2i$Zu-d-KJrv(Y2vWHtb8{*{Wa+P2oXpxm_ay7=z zSs_O|H6Vjgk-i~Hn)924kfarX!%ngzBsQ8ENzzfPHI=_~S(MgN^*wo1ZHbX<)Rgs7 z7*2v|%$63yow6E`zN$5Ps^+C36xG(;Ll$&4nT)m-IyE3Ytsq^=hFK{b^HqJaPT`P1 z&jxi70a(4xzJM4Kp#|~w&INV9I zP8n@KUWIrZ*(o~qkecRcqIygwG?z@^|J7?PsR8I&1<7!o$FOqo|Nb&dY#O_z?9gI? z%l<%6H)WG&qnt=TM)DQom#zyduB0TUu4(FMlsulZ@Jy9By?v&f`F?POXD39_N%-jX zcrFlZ)L+6d4hA@^=MCVLn+72F5;MXsmACCeGynJ=+ zH0ssHcUY`!!6Vc#bx*Pqil2kIg2ycVc324=tA<6@f!wc{YC-w}WrU&M*ybf3N8RZV zIsmoxMDtq4;!mxLHWCf)P_9qW+~Xw+_D%neQrt)noo{)7vo@q)&jZOT5GXd#9|uI+ zgjq%=lhZ>9NCYZo(+IBF-f?6a_l=NNIR-;Z!VisxzS1VzR2`_STsLzM$JE~V?gY~~ z5)qd3DjC|4g{43w7~gszB%ast6rFZekq;~bw%Sd%kdKtG%4!f8T3(nXv=%&@L9mW zwmCuf%zay!eUdD}Qa|f%ccMy%xwGgstUv|RGMBW)=bpKqt2Jp2{|Ju)E+Um=I^JQL zJ=m#urE!2&icS;%zXS6{%~>~36c?g_V)e0zNa^E(YL5z{7cLezogeIiSrm)gUKCy@ z9rxuj)HMu?LQPl2*<8VxlZxtcAKBLM4VIKCm7tV>nv?8TG%S6LhFwo6uF`+&gSeMWMn{NG*?`z(<96P+mt-cG#?8YWXZr|$+~}0h zz?T{4qn5cUZ#CLaQesm|c$o%@hA?Cl6wz*^1_Tus6xW|)eMY|5l~T0(i(H!TTP zek-}!elsgJ8$r3VyO+3MT(q=`!q@QdY1gCy>VXh27SAE{KSRjz^_piq6nzZw>bY)T z=D|r3xS5)IzwpnaYuc}=VS2k(KB8Al!xJq%j?_kK66jVCnmlOQ>SLA^9DuMAAwZIj z;ENmTP@bm}&pp7!>exQVBC~qUR{_#cHF~<^&5-ZccqDVq8;)#CTFX`Z-p~LQ%doyh zX7%S|I;*-W0)`wr%ervA(D;1RSn_OdepclRdbstXI|p;ZLCh_c3>}~zTqp*L$OPZM z?!D39$8O)Pu9vpMR01?Ef|Pt7{N?q#-`gep z8vKEh=5o53y}Y7x2FiD(j{p4dH+&!hVSh9DucLS@ntzi&ho1fW!T%YkxFQZuY*a+Y z<2iWl*N2|A2;&gy|J2ZTgYq|t5 zR>{iwbl8UjJtU)8*1W6N?|*oA_feD|SMW)ZJI^69KCqq@-el8bwT^6#IJ*JVsE`be z-*7Xfuj2Y@0hxZig}BgM#l?K2;kc{LwD3H$!_jBf8=6?rMYCmLc5AM%hUIlK8))U} z=j&G}`^=l9Q1eXco2dlx_f456z3RvtQ z@WSux!w+}*FsKeRE1~a?IXvW2loxO&=G)YZ zO&pE?HYgsdYo6W>y%EwV0`y-()&;*THy0P*OIT3gy^x0oyd( zk1@xf!Ib&eSFiTt+Z~LNmn-z+&e_dcWyT1~jAADv52ii9G@Fp|_cO#5qd4*I3Kr6R z)cUm*t!!y}iV2h>H|s`Aqb-(5th#F~srWF;+pIRYp?`4s?XjU6HTCLYJm~H1lVh`P zt{sK)L7$vpw*7k2689MOpf560L*N%nFpnY)p;Ya9xQW=293xu3`V;~gEC~T|KmYjp z&F8ltn8vm5vaNs>b1)3FRrkU7(#-_ZhnWHrZlHBgcfPD%WrnEX@#$_gJeJR|Q#+LE zYN{;VQ(=i9&mRE4veEuM|GI7@U(lC@a&3BxFi%5Z+Lq=leUaG*Yi71V8*aOv!S*5} z{ng^~YH(E1RI2)@P)qs2PAcA_g=r47q$D7V?WjFpYnZxgowvgclXkljDq8wB!gs9F z<8=ZpOJ#A686AUfOsWiaNJdm2y%gGT^Vqu>-#k6y9|2_qHsv*fZ5Os!4TEM$Ve2QanTafW zfc9#n3oAV-xliM|=Aqa=#_&Ol>1QXgh-@&8Xw0?%udSSGAuQIgXL()-@&37~&(rzl zO13joMMW!Z={fXr5m^i zejYGmryco{DJU5=Cb(Y=IRS2A1)!J!K~kiR>vZ6?2q_S@k(^G)+i7-lHqxu9%Lk0gG_Evvf~Xo3x43*@3Hc5}{7ws*8NWjIqx{o$ zWC}LK7a|T!=EFH6s%WEyYIn!PN!JK-fehSUERGPbpghQjO4L-wESbFPRuy;RC6j9h z74r#QE$5S0Nyv6BLK$#N})ZVvzxp;O7y%36m(#_Hm{pl(PApM6vczP5$hE#xa9OfX*0 zY!S13Ovxb853KaFF6DS$V;LZntYbN5a&Sh_fJo404i6WX=aU00;+4N^PFcEMH*lAHl$8?(t#*g8l;%>2}yj^Pm^Ig{V|F6QyXcl7|mmB9h-1 z&_)I5DTN>MZ|m<+eWY7P{gdq+B|C}2_Zv9Tty4aPi0`am8BIc?koXes?*~l8zU6QA zOepcKn0s-t%u)g)cEUD(uW2P}upY#7;xS|g=<~6#v#F;c@-*XKc_3Pu;0|3C?-uJ! z#2wcQ+vD~>KkeSW`4e<-%f-ch`*ij~xB_B?`6n(#ISynQo8i)ScYQLN4}bnyWRVe( z$crsAwczwB~aEaJlM<$OILmPVtPPdqja!RFTXV5VZY5yQ-7*mz1~ zJACtPY?{H}U>mA72yemm0NKJSgAbTksCjPqyvkjI1!~t5Bl5H2N*bifrSD#Dp7Bbt zC;3GgrY|me_m)c5Fm=}n$BAV!?B?k;%y8BYOv*3j{2&64^1X{~*L7?S>bMv$kMiN= zz3o;MKcN4_*Tvyh!I>gnJ)E#Pb67ZS`q@+4()A3#R1%AkM^hM46yX)_R_>EimZ6t1`zXUpX?ahPX-HecwZ3TUeY|EVMV7V7s|4t)yQCjyrPA_16H8tN#wNNJPp(h)sMPY(8!uV)lAX)=38d5xPys4?$!T z3iM4{Wp@LE;Mpax^9B^XouFVHsol&80&EV%nQ-$!&8gDV9J21oZ%F zQGp!k?EN=I?y4I*g%?7)qqo-xjDV{kyyDnKWyq}F5OSP&KG5Dino7qcoD_6QgoZ`f z=1n0ok$eY#sM&@tn(OhgP`$Xa+72}(N}Xc9qzytD1p{h2G%aFiW+L6XBN$jgU}VW6 zCd+wB_Sr2^S@h8hOdv&l77%&OvwMMhhH`ah8%Q6UMc<#1KJdM-nS+WkgTz23_>O-L%oU+Uw zq^>T~%q>^><1AGqfacOZMRJSwb1oz2mZN<#B@+J4x9g4hHL175i~(Uji1EednV-3| zel2dkgX#jd0r#1)nl+uP_9=xYTFx09NnT1#lWklU*W;lBZ-EU016J2oZja~0^%{h{ z-@UyHboIy8>v#XLe*I%8$8|0U(U2LVfpNvac94N;d@Esyw$(gHr?}KL5O-X@v`F;D z&3v_ozb8&-rP}25hP5yx$lwZ{CooR|<&EqZTKwE*cW$z@?rAeA$$@s3|39*Ft`4>obOGg|)n zo)BFMe>iZ~d`UV+0-Wb`4Q3bl3vj{mOBxE9>gWLXm4Io?3z<@={B_ejQlpWh#3oi0 zAa-)7{!ye$uPCb?!CKg8%aHTD{(@o+Eg!nixQ(T?m#KGvG)nHFF<4aXJKE@wK@Fv% zblH=d*d&oLQIhhQ|6^)rDw%9l`JFc)y-n{oa*NH~^CbzEySs(X{jsB^)g>db-Yk*g zZnG2*5e-50vI32)C^p${JI7alzWex^X7}00j~_m!G*S%or)F&P5?B`@=P9VhXvhHs zkdDY~LR{re>vyRqOLlcjckvYD-DVlx;+@RDZiq_k zvX6r*3GoOBCaNd70cw_oju2&G+=q|ICzY=my!qqnk5x2GX}!?QdOAP9KIE$lS;{qV zQ1(}Kor}v_BV&{$_Z`x%>ZI+cU;Q%?Z~^;RBOYeS7Fdq#m z8q8ZTTWZO=f_(whE!9qp^`dYCd;FWbAHICNTfM*h@b>+WPOL}3{+zZk0*^Gddc!{+ zRFAeEQrJR6z>=w!zJ9wyge0<~U>SG)tK7Qyoe%jk-a4^_D8`V<0UKkBG2{bpV>>55-h*UPPE928!f#`LopLiVe2v~%KGuN zQWhK!&o(sx5Gpv9_0C2W^KCE5m{ClvCfJOD;oIyS$^22g?@1o_`?k&&P# zo)svgLNcJ%y&WTo>gIe}(ML-U0q(ML=gwC%COQ9opq`a+*Kwhh3mz%-`abO$WmUADGcjw!>`opLRP zbb3IU#^F{lJH(v$w`<{>Qsa;t@s0lmE)Tn-PL`niHDSjthN?P$gM#Fin_=$6}?rAJT#OQST>x zd_aVM$Ql$d4Z4<;c9AH9QgSY_qb&q)9;zWn17ai^)IGXv6RbopCT3usCEKcDp7Yk? z=Iiu}b`*F&{_x>{E5r@*)aSwHpZ@&u?nki6oak@9rH5n6ee;_?4F0RWIe}mq)yl{t z(&g9^m~Q)h@nF2gUWb@Dk9_+=loA=j_s^kFnYSda@SVE4fR`FV@ysTxmfh31P7!af zL2!02uLs3%kp%@Tu$mL%D^j^9%pn5$qRtZvE-0%nIuY>O0maIiQ>YW*wy?Y;C6aACW+I>c;cFmS z7{P-9tcV4Yz4LKJbsLc0v){jf zCKUKXyOjwbu0nhXE9ZQTN}n75)^bA^7JQqC1oWo{p5xm<RgyLYWD!x3aP5#5uM713@AguQW`RPUtnnphgV%xOcFt38S)dHGy zb5fK23Zf;55`joZBohLo`taLOC^^ne*A{d1s`9-xKr3?}aU5iN~YaHs(!HuthL8E9BBCGVPpCwLTJ*tHx%fw?z!lRU&3 zhZ@Gc3X(_Yf_qisoEX9saQp4mcyxBYpTB+o_R}AwjnT%aE&~~qin<>cS`g?FI2vUr z*j|9nR?}I-G)Aqx)V4zt4D5HFLDxHYoJO<+H|hqK)THzFU7iyxiSD*X$*g^cx3W59 znHYe(w1jDNCjP81$IzMIz&3>h3gIq~i`1m+YU5K+zj+%QGzZZ5JYC!*_Y`N=I$*s{ zlmef#+w8RSK^FL1A8VPI=t`V6bg?BVu2irG@>L`2@cgz}g%YCI=4IKuXgk+1btj^c zU`j6hlGA=SBwTZJke%L7#6KrwOnh>m36f{dz^d#c!()$Zdc$iUI*aJ-pZ z;ZQ@umaE(A3#7huf=TJY)o9dulFO>Ay$gMOdAd-&L60&r2hrO;oe%4^t3TmrS$e^w zi{3u@sZbb*Q1o-z38))Fs%5N;NyicSV)i`^GxE~w)MzIz1M>sZQn{p@+rmF%dO(O~ ztF@cZ=>@xj+Z1NrJj6ge;A}(Xt?P2AX`+&%Fnnq~E_ftdJiWF#H1~CiFCJdxk(bdb zHv5PNB{^!llU8F%>gL`YM-Q%6bKpj%_-g6U)T8kHs;LKWFMxTSd?k{%lorh%NEIB! zCNLfLBetE3mmP33^;9Ib$3)&!2F>H}Grzq-pPgXpZais`ILigs;)*6%x4PQ8@I2OK zUx{9uUxMYq`4;h*)M)7~Mgisr88fbC1GTj@o6yiLO3_NFA#oi6F)rZi7X}2xcVx&} z*lk!vJAb|rn?eCBlHkkmcM3_o!-b?QprXDkDX1HA zaXzcl7k_+TMWLYHE^z^{JU{$nuIYAzBBl_yu z>BanRDoWx9SZWL3@-mW)pIcr)ZJ5Y~ib%f#k9$2F4gJL&@Oyknbe-N0j=nj5Ib1)w zdK&+N4e=NX)_NmN39MpQD`Y%v z+8RV~e5_<@+eNqXG8G}$%0uCJ$8%9dLVZUeRs3& zK!;3yDL>lnSa3e9iMfy`1NCV0tbDw$wu5of8Kj=J4qy!39Z2guTjvWJKy{GA`dW{m zg{JAsY4$7kV%Tw9AE%9d{5vrD%T1|CJh_3!qY{28HhKLY0`&^LSGiorP&hM1pXDUc zCAAH0%rN54eBRJ!;q;-EK&G-z1~eIP3)WgmD{F1ifh05_)K71y4VyT7q+8l10kVHOyfZ zOdrIZ#$rzAG|r|Uej7E?*^ZW=>4%=65ts<&dSPb1<#WZqtH}8A9%(K27s{D*>=g9T zgf2jZG^D%+cqEgb8RJTk@?w)VU9#%&l>tj%A@ZOs4uu^skG=xyrm&JzQ_EWA&`s_p zSF>$VqO81ZyVe#gNNuz<@vajF)qj>lX?^}GSe`bMO_FF#B5ejoq272tvie6xKvHw4 zp(Ih(G{(89!PHS)$88wbakD_fVu9#Oz{TNzw+|=_>G)ze4Kf&E8E?0*fGtujW{6*X zAZ5Sydd@9{>_^}Rdecso6v%zjAn{ke7{z6M8sAyw%#K*kA@SEpP@$GO?A5?IPF2pr z>!GC0?TI2xH%cvkR8u~tNVxOE#vkV$ZxJrS`Q(Ej$U)elg$hV^F`hi#Mh)T|{$d)5 zqOI>Yj{3WTqwZC^bvu-s4T_0Y@-MccphDB)fbexlvl6JCkC4>E_ZJDpe)#G0e)0-Y z1rScygg#u&8i`FdO-L+u!uUWLRBxU`rVv#sw0V;Z%3I1aV7qQPTADZ$>#yO?k58R^ z`01xFhya7z>EzGvJ`X?|djUA2uw0{l^=1RfX9>~p)V6Izifi8b(Y>#BDRzPQB)p#* zH+d;1-_S4b-8+=|K}0Jo0h4ks744Le$z+_u`Vu}n)g{dm&j^bYVErA=OVL!1MB8;} zxRxfnbSE->sGk-q0d+ulq?P^V0g)oDL`q~pNQmbsP(mEx>Tq-u5N9vx@Cae!`aTz@ z9;lH5JK2KZM=Q?*Enza6Lc>t;hWfw)>O;hQJ~_yrbb%On8FoKkL-qRHl7S%0GK&5n zZRq5|0u`#4IL0nerF#74jg7>osfB4AI*(F1u2C=LGRH;fUmxlifHZT99GdT5|K)D^ z_S0t+1IES)cWoU9)}sr=S8P$9W^$r!)b)z#0&Vi$npWt5Ijg25S|i9Mro7-%3ZTAJ zMB4=sSAa!}cPnk=cp?OgOfI;Ow3z3NTpLllPG?LsbRP$zu(%mR>(Xz*^iD&SerK-) z%R@Akt4o4ej20j6bQLP9!pp;7BJtcm>{w!+IVfVvr(^hW96ta0z&7pfGds{L!h!a{ zWChZPUPJdpOj@s0n1T80!&FixPBb&s<&J9ue>Q(n=13_cC8!=%99Bg>su-d1g8hAT zyTpgx(Rgz?{2G5CIqmm%KLgJ{;gF!Nr|@lpd3v_}8Xef1kpTP`dAD(4dp$V%>dU9s zp9lZ*`0K&{9OD0@uaG$Nt3Q1Fiq>u1$oz?4Ezr_yz8-vK5Itj{r=Sx&nIcJuJF+BB z*tfRP<^uh!eOmz@)1h_69sqND?0CDkMqrMZ+%Co9-DJB7DuUkt^$zU@v)wqC?~OdKu^pn+ zQ*Nsd*I07y4k9p~3F(N^qbW?DK$oIxVG*IKN9L>EotJ?c91?@7YTSLCu} zUHK|MHhO24r&01pAWa=v@e(Z{JR&)%m6*;2fcX!aIxz5jH`VBm{2;1$*@6|EkdgRNGr%PXj>#RJki8W*`Jg;rKZ9NKYf-ak| zos5NC5ld{nXZiXAUdatauZ8M&Xhwr10>!Dq7nNWwo!;(}ghx)Q1{l_UEqU|eVu0Vz zS4fk3VeGgRWv8{GjM-cLyGJ^x{ZqV=_JRyv*Qi=vlNXL6fiy141t%bamMExb+2nc= zX1CZzE4{{@K>H);T!*af=*5`iJCL33Q&SHV(iXCW4L8vF)IJ*qh zEfTP@O3&}86Mz-^K598pv1Q9F{QJRIPkwjuyWwC&FOt*a$AhDfckk|Af4Y14m93i1 zyfbv(&=i~4UlzdY^3fbwPY<12->v4LV)#49QJat}Y4~`0HC;0DTX2F8${QL~njb0N zQrSjKm|yUrLyc*?{{dT9FZ==BD^l8^-uw+C&)-n$WlQxdMaf6fWPzb?k+h1tLOs1M zTr&_B5rw0ODP=9dWEH6|>w8V`^d!5=9q{7A#~*BcZT8}@kCsoO7-UEBcBe zC74E;?S_n|a@0`f^6N1~M4nQM3qNf%Tj<5G%K{pA0bh~c4aWtm57UN6r-P3Voq_$B z?Bht44t5rQQ`!^%?PhMafNsgU-2-KoM#zTnb(oiU+fis8=<#6kum5uU>F(pFfBEZ| zzuvw7m+9T7KYjl2=YRR>!^cl|`!_5D@cHBGx9{&h{>y(1k5Aq_{(R2k7X46q11|>B zpPb$!BK5+#n;=&)`GkJq^u%vG?T-+Q_wPQu|M6r5BW6VrbOHf)#U=TxLsZ9^=VDI>m}Zd8G}Zp%CEO$St1_ShkBdQT)c z5VCngcv^^1SvOml{B?s7*)oV!Y+>RU$;pyiOo=O42LUd-;NGrh@KQsIeYFV0$RA6dVY;N<6e%d-mo0 zdJ7)bO)|&BGvJ(-w>g>zeHWc*iGRIuX$})Gy1%*~djPNfd^ax&8e5+Rx*`?<1{u}L zw(XHJ+L&5$ffWChn=d#@S5XS2SvM@vp$^R?EvT_|pJ6{{gR%)Q7{Q*(Cn90d9D?(^*Z>+j#)fqD$~`_46qcrIZ~R*ES|t&E3h z)oq)mrg|{icuq!b_I^J3fOrnh0}~Qv9f9=9dt^-8FOdk(eP|BC?TaIoQ?0CVd!KZ| zrL~V9v%WjHC|O;cJ86nbvyPKX%lbCGfM@$XJ|grEUa$`Itrec8Am(ydUd*bK-e-q2 zCx?bs&KGa=kv2fxU?>&!k$_cYgk=Y)TM}CWi!cL4aqM?5X{pHS6p6PMkNZ+_;lQ%0 zbgpq3ocMwmvbD}jB_g^7$}WYP5My*g!4rjstO!jRO5q zJ=Mh~GToBzD;HQ2r&?0j1oN>h14jx^WzlUhl4i6HJ#r~;5{_Q3wg?A%O_WX~5WbWW-l4}&Q zjF#RdlOJR=dLp;na1FCL0Fq8_c9xj{Ka8$Q=i~T8m#6ikYBB@09Ha;7t4*nLKtdz& z)OlstAQi}bF)M7{Y^4d?J_Al~pB434!#c@%+xSNb6YYU`!%()XV zQKTxKDbU6!k{_?)pIMRVyYa;Zn8PV*F)7-s*0ez28x<}n$MkKNf(IXuDZSaZsWp|M!Q-<=*0M^7G~o}ZqKP9F~+p|JGn*<6M_ZgorGQ)Yt& zqW~My^>|d0@YQYtAh3Q}u+QFh`CLFBes&t0v+N*oS zb>_+BdN5&x%Q^5}bdJx|$kaF|xY;AO(_KDcun=8ZKBS)JS`F^lCv z^4CE?(&+_b0?8dXT0c2X94#8C)&noy&rmZL&QX{0sECF>S9f^kqLQbsrYWha9g!NK zUZV%u`7?C2Z?y7@%wE!abOlHc)A?U%c?-mAfV#mKTfhPBlD6F}U`5*(d%YQ7 zf&w9r?re^Hm$ZP~KnVaHiay9J8%@WS2Qu65JgfHdVCbTi;1L`*;K-xlpD#ymaU=Ud<=9h7M1}0GkGIkFvJ?T* zhq>d$fjlzuyC`9x_~WY!%5-tbK!-DVVIrECwuhuV52XdUqdavC4DDsnwM7l8 z_m#y1&rv(@$(cN|A%!1D_G%xbwo9omG@%a3QgY!6tN`^pq=Te570ef~pwpUmNISoZ zQhVonXmx)NBF+RFAE~I_umb+Cdl5$tP9P}unG+En=si8Qw-*C<<8&cmB<*U544UzR zAwbS~l(wI3x3=s~i!&#X;hC(M$7pzvMN2ya(~6OEa&yK{wrKRQ!)K||MyeJB4i-Fb z<}DqB7iDMOhKp4`I^?Tvb0Jmyutq8?-3F$U?SAz9aamIUWd_de#Eu}z-lHf3^*kL< z9{SfRNo$z8SC-7&u=iR*!c>-iMAbGo29z{NL_0gP!x@$!`YU6HG4I>~U2g-jooq{D z@<_Xt6HLQ2El)(HIFp&2`Aq|V;^#-Sw9p-80PM)gd(AC}{eARa+l1y_N7n#((!z2x zxk9ROI_1?DjV&t}$0sItl~)Y^OrW>$W(f3BI^o}RLA^vS-2UysQqrZao||5IzrrqL zqSW2&M!TmE&>0hCb$pvA8ZgR(;tol;>?-PsHa$Hg!BiHvyd9KsuJUb%Tmnj%3aQ>B z{$XU~!EIy+%>9Lt_4LR{dbK-s4w7%~S|Xtr?6C4idUTnJXK=vQ$AfX@o`~R2$ffqT zVMED0lwjczX^X;FTp#H!780vD6~rr*K~6vXsohABx|^PEu_|y!Sx#=3Fgn8CZ6^WB zsX*0$Fu^Y9K~dp;#!^eq;ib#MlJr-}*r3E|_>jx^&}m_J z=m7P7vo%a0k@L8;6Y!%dVEP)SGJ)q%Y+iadQ;BD}4xpx5j$egFNCM?TLnwptQWA15?R1{P7 z>^bBKa&-`z)|h45k*Tal+<U0UcF6CZj_|f8M2kp=VACY^o9XJ(l2TCWL9Xm84v3`{p{EZZtvHG}TcR%7frA6UTco(~^U2LQe* z*d%^9UX3>>RA#3m7!>0$Zy5fnuD+2edV)+=SflAYZ)$pdM53?j11ds+Y_#YsHez0Mg*B|0W#g?X z2UG5g@R5RwGi(czLiHIusNlz0#>C^C3RhoyV#T@{=VlZVUa{u!oy#uyexyX+0|n^> zb8Q)Ia-srro>9;O_J{{FSV9_6xi*}^K%$_LzaZ-OfdnEAoCs7&T;en`a^f*Y1@jKC zL+G$(myC)Jo|cp?S!W`nggcp`qzZ{O&N6ryB1wXRRg`p3jFiik3|-AM9o7_EDV;WVpAk3u=hq+ae35h!0y(3eVOqiBklKip zGH2rG(8tFz0m@h_d)fDI4rBYA<0 zn>&3qtSZ!VPesWm*RW}Wf;;~3Y~+7-K8pAC4n{(gFsq{RrM$ugFgaHsbvHr&;vi|^ zUT&Zu>c z;3SwLiw;qX@s#+j!E(i*&uuu6a^=W9ZjwDwLItKJB|tmWBkbCuU_T^ z%{ka;>25JOCQ^;;E{Yp;=|tck%I!=RtJ|$sG1jDj-2x_!KrEOM&=ZZ{jR91!7Nq@3 zxs1VrUff=W3o#E;BL<2|dAWLOYR}ZtNL{aDg<~pZbOo^kxZ!no%qr!yz>n=>Ok#(< zi*8Tc&IuC+Vk?m&vfq>~Q#^TWX^`gi3ZYVo^PmzR$0UNNpRR2&-~hp=N~WzWG!THT zt&fzKC5rBW62OQ1dxT)W`S8V^Em3Q|Cm8`h z5YN)z;Q@I%ZA`eI$;LtkPZz8@mM@k`{KH<+#ECY5nk{mJU3PH!^uhRtA3olF`sC%g zHd90^;{QT-Q)`n#au?EcU^R$wR&Jr8g^lUJbqy~xdqSmX2$M*|nf@qe+CvMCJ#y?x zT!L&3O$dBJiduUh?-u>hZ*=Sejp0vvP04tadE59aPU}!B?o5mG_TfrqD1~Ka((FU_ z?mjTSg*aN`TK_)m=|SAFA}WX8NX%)xl~RlZG)nN7Qh`qyv&Zm#LpTUcyZUeB#KvUB zp$i?+(i&;MnHDt7Tu@i;(g2nF_8jcbS0o^@60|-&yVDvBnbpx@VyopD7YtJyJ75hf5 zZDD^j^2{2gZVjY*Nr3bU9pTAx-@0+MQ2UI0KI%Yb-2Ejqj`l&ZhKD-o5jH!Bj`_0{(ySIqTTI{6bs5=!< zai_Dt;I8e5FCX9B?ROvF{`eyltmIUczsjX*CS1LoxoX{gliF$UU8Y0Fry=ntGSMGS zh!zMbwMvT^4N!}^xEVi<7;mG=771>On4p&C=I(Bpjx1WNNKYhdth?s9-QKIS>Ky<^?I+MEuBh!-Rw) z?>Y_4&kdxgS2-HF>0LRh$ul>KUM@I5J{nGz2h}M=@m^Dv^}xJtXU`$uS{9nWe0Yca zX7BEhj^@+dU%oPfNhq>U$TO8y%mSd-+eraUHZ|IQPIybJYKEW!0igh?vX~{ch$S&g z)DNm%N@v*{e+VPr@z3s%5&B{?*o0?iwDe|b^%k^+&`SVWZscZwF-P{ixt-;`3lboG zqL#xBwyHc;G1SOBKT5?3Qml)+4tTMy#?M_|1@4N?WfWt)n%*LBvFjiPVq=gJ3mNh7 z=Uh{qo4#{^+0a3fI@oOmU1&juj&5>tr9rgxH0~1c6&GJVe)_z;d;jC-Kkgsx?sM~g zl)bzQx!ZLC_^Ko$J6=mS;w-0mO}UGL5wqKf5XC@Fd#$cj5C0z1sFq=g zTBP=qpME%c^V1L1OzGc0{J~cI;o#rIwzwE%0i$-y^9{YFSqT1L%P!NmpBPly^zqZm zJ=}ejqUG4e!Bj>E8ve7h>T=U| zW_nJrI`|>6u)Qc0OlXnowd+y&`u4J}o*4H28Q2fl?K6wWalvG*6am79Xy`?h_~qf2 z4h{2}_k=v&P*+1ZY)kzp+;kli%?E@MV~*LZ0?cZVrgj1*7~Y@Rha)az{|%xFH39n< zum5!S<r`Qp!rDdl@7Jk+(=u1z_kJ&y0 zQHIx?hs++s&xk(OHORh`oTTR*GtD@Reu)*gSswPXLJ6klL_r0mFoDDG%{4UG9k5fn$Z914AkW8_ZQpg{yAtg$|A7RyT}YzW4b`5A0!*T z8l$4wQVUdHvX@zop+fVYpFk5D*iLL0=Hr+>(=*zO?nE?#BJl<*rlg&lbAu3^npzV<G{SxWh*%ca1ZxXQGsUdYM4GupX1fn z+oi5y>Ml08aq_1$=%f_HywgMXb$H_RE;rHlbVx58FA)ZXa2xRDs~eCM6zskE@cvG( z>Vv^4$;q=VVwHR`bJ94*M>^n>@T5V7+RL1uvt~q-7nD833Ks(HM)feoc7JNT1k{BA8QzsHqcy~JK~+rnvG2z0 z6g@l!mg2^i?{s7*73zT|;$^h#Yf2P+4kJ%DXAAjk2)y_oIs)TBrEE{)-O$;> zw+41os9cMS@~wd-7YbL%2jG0}@igrNn^MwMl=j-}^v%!4n9`(#@$(nCao!|uoSDvM zAS7Os3`(%|c&S`H^v%F;p+Tapatlwo58-Wg5>MB4kM^z8^|a5N1*u^jJgl{wO7nck z+SCQQ0IhN;nV;4%MN37h+_ zR@=ScN7C%+WYT=;mmg`}bn{I=%}=U_F?+Gd#W2v&WHZ+tOnPv_nIYy=efFf8#e0;cpzU)#n=Wpzf3X{r_QN|$cYC#&(<*~X4bkWLCCf5dr*CgSh8=V2 zLv|}DN$D0bpdz}wAmhiDNAMQBHEyxZSv@M*I9fw%a^W;_kb>2a3bXhjG>=BQs(Ban z^khD*P+r6AGsJqk8i)_zsa3J%0aJJS14x*8F@|I{pCKDAP&aI~35smFIO)4R3St~y z`dwmNL+)ioYdvQ|$QPrGk1zHkdjunTV7^#KJWpt}cgzX0dkHqF`}G;7uh-&vT7^~{ zTEp_(dH_=|Yn))Yy9rJs_bQ2&R#qe`#T&vDU0;}OhL5!0b2b2Qx*^kLV?znnd$ChV zi_EbAF~4*#Ky^%2Wc1&jebRjohS*x9AhR`QPWk{RUUm#{CaiYxeZ>iTdKk6x#L&G$ zY=Y$pGhrqYO-D-;<`FA68euG|7qZfGO#k()SGpU>BO{EvnA zv`Fr{V=ESZJQ$I28Zy*wU!b}SGIj==i+4b@r!`Hx*1x3LwfQ zqgfzmVn=+zr$63*et2{Qx(sCnIU3gXpCz8EBZ=rcHw|opP)=tuN#ZlR(u+wT3_U1ziqDshcbKbcusNXeJ!8pAI_U66znNHHQjBi!K|H zhUnI@N-^mQrVX6C7!`xDDjP~MQG+~(EeO4}M2C3oE>PqI@xeHlR&zh zX;#AJe)Ynm3dwvWA*AcR1I?g$;31=X+INq`z!NfMfjHcJ9k|{=E?H&H9bM_xOZay4d|Y2Vme={b1mI!{_}slr5r|GxdD~WuyQI4!x{@M6Y5BtN zAtq#5fkM0x3R}K6aZDHJN(*TVodDukp19hgy=-(5B8=6um|RbhHx3$s8>CP+QKkog zL2-th*qxR`qj-<&3Ne*wYVbG2bF*hMOW_+&VXJc9(S6Bb;mR`l31yG)pGeptGg$5< zG`@h)k!?L{WkU}r41)GUHkqv8!9S5SX1R`66QsT8_ZN~5=f8yNC7{FW1@zws@-}sW z+62r*wcDB=%ztaLy@1H-=5htouguGJO%aDYkRr=c{<-d1MU2VqSr!|VIBM7h=MWeo zSGiH?sA)dc2(`15Vo@yO6Xrg|lgkAfmPYQ+YErJN)VvKS6Dphld@20c>^;%c6gb0b z5_XbJ`ea}C#Ad#S<@T289{e9)Hn&d^M^v8Mgphho8(%g9!_TGF(zJL&o)hEaqovp8T^A*6Af$;eH7SjG znxgsbx8g)0uayky!+#?m#sW}qY=B(XdxOkMiKmTQcojF zPotn7`k{8Y9hdOjxd2z;ho@TlEPCYXhTZHDseKA>#lC|9epI;dg?=H=#DN}m3>h<- z5UkW@1Snxcu1u5UhKP>ia+hG;W0+4K0E~c8gg?~s#o9wg*nfKa|D#UA{*Uy_1EDzW z_c&@GB?&L{8k)L9v9fMYn&{K3i1q98n0hZAC15f@sg$AK8-Up;$JTou)2eUHtN+nkQu-0t+b| zxAOsdbx{Yhs;&NtVlDVpWLAM04|2ntx=5%XDF8GVMV{o44)L1uyV#%df~Hhj3U@LM zKjYNQlkSFv^25ek8jex_990Hfa0eP}Ixz7gsQhLYfIB#1 zaGoJy#*^%*d(n?5=AsswuoDOzOliwNIqp|?;jm#8K;a~4!WjNa2RVxl&}24aXXu(EH%gi)i%sirs32HrsB`HLf<1nJ9| zgJ!u}tyz89^(ByDKR+~gRIh0truASp+~y$;3}k{ut{G>yv&tdK$7^u2Tjmmq`=ei_q9XPx5iyl-YNF4No>1Lc+yNaIWndDmN{$A*gu zt`3fPwT?Oxru$?N^i2>n^V_;WiUU z;{u1qyigeGYTeO!G(g<|ZQ;0U{*4*KGWUV~Y!D5$L2HMyh-q;RG2Oexcxj2Fq%m(O?mJ^5R^4rQ=E#OOrF z`G@avuNhM=RlY*4t=SlUtnme=T9cN!V>^|CldzrILUjv$V;DsK;&v`)VgIe~;ifAoE3f?%24ULXG&fLtleF=n({-r$@O3rBb23xMlra(8)tIq0y zigER+h@g=(;IsJGp6hxK*AQeI85J0OhUu%a`x*pa0dk`>-S@Cykmy0hDh};Iwl7aF zcgcX_xZ412uKJ^}0Av1SV>v~~Fnd@bE7)m7&KugY+?#nB@-enHh74Z=;SI7IrzxdW zHM=?}TBz&}_OY|t2x4K!@fE#2lrNG1edT>fR_AD?t05T|{8PAnt7%T(A}3)RYji2t zs0eW0TMRTBEZ=wT{;Md?aI$}|zYT|KM^pjVkagOwZ&B@jK~FN22V}T(b8CMm-EWHx z7Uaww4e%4LX0n}MkD;y-iw->>ve%0}huy2WE^50%ViDvTfES5OtH{pcdT%<0S_m#< zS;8w!h0jZF6x0r zAjS)O?>>*ee8wJp_u)0q_H-Tc0qb;PcO$?<=)YU=)Oop>N~B3G&8wjh7YOVf9QvW) zf;||&xK@!Lz+Dv68CWoS^90ira=Vz)(&a^cemHkC?IlvanP0O_45_}Ifi9)QN|o zP%=&szQmh(O1a8nvAP~a=%js%*)PM-C0d$qKkuob>QBGu9!c&cZtJQ8nFhSY&3ACi z()!{gy@_P@zW{$ABD7gT%1yb}ED8crZVA)$8b&br$9w*1=tcwe1pz{i4jq3TSQHjN z896)9FL}WYVS*!s$)UF0k}q*lytWP`_0?@IO~x_haa+cg zHy4Z5bN^o-&yWfh?a0mEj}5R#Jk?Cj)JOckDVOg1Cd7i&)VJ6aY8nvrz1qCm!^6#Y zkcSU8z;HSA4AJiGkus~8NIBXA8p-x(u=3w@9`($cBX4YxTIt zYqdJtTkoz0s1dRFjnZU6Ajbv67~5Q!4;<-;*@6&N%Sv6io>l5M3qM%$i^)KV_c3Q! z{k*;&dLjXM83I^W8;0Oj&OsPovZOTLL0n4RVce7L0Vwp4B8ZN7P$^i=N?SiuWmoDr zb^$v9JFNZ4b3>c)#eRjPhF4qUFruDQZaCWU1>wJ^m#d41pxjkrR;G;Xe^>*tVS5;? zo7kdd2rPvHX8{>M@Rti4u9zNZ9!^0<=PjRPqiXLHuS!LGp2y)HzUaz+f4jC~3=F8U zInDrkJgRk$SZ(pV(&0*a%OI`3h#6I=yKToXDnmZ5t7Ed`XU^QIZM7iSIJ36O>aL@!!THmfyN(AgaqDtTR%W;$Iq5)}z$N_(TFp0O1S7c$q;l0AvM zQAB!1N(05m@QQ0MGtf#9=gn6aAo^gK2DUY$DP*v;PgnOic91Z1;4YhwAe+lw$FL~- zA^GW}G%+qVn|fc`&QaKyDyOl0RU^AcsBsqk(ZpO+#F3VZ*O9yq^stF`XCF7IL`!3! zv(5r5dV$-zaO{e)RMt}LVxo?SJ0 ztYNu36a=y`_H|FN+}$|j$gUMFeF7{ck$4N=fk1kc*hqASA4@XkyNpzU z)L8-nkQ8S(Y^Fv*B9K~TLKpChL{B@NoOy-$X;nCeppie>ef5)lxs=WlOt0Qf-cz># zg$?8lkos%Hu#sx=ZCKdIMhSMHIC7`Oc|m-E>Y|3TTVV#Q#|DoUKnI44@_s#Hj+PZ+DL0vLk|xL69}nuf2)t zimY|;XTjKd>y_gA$m4QiQ_Ex;*3)HvGVl81f(`C)QrwW;4$f$T8(*$M z@kxyX_+NV2z-+jHtz>dF1CV|)xGwS80l1{vIf^=UOm?RQ`lLO4U^+*UtU@n&+M|~| z(8m;$+U4#dkLTC4vH@xujfuG2QRBOv)F!0{rv4O3-ABeqH&rZYRdLk4+}8&?GdbW3 zO(Sgd&CG&u0n&h?mDkNEQ7;=9AdSVo$J|UKcb2#GFk9^N1NI=Ua|N@(xyGV&Thn{| zcX>BDHKiKIy8F`in2ho9Z5-^d=jA;U0wj0qqL*4G#Qs z1Y4blsgTEOe77t~DQu6j>!1wQV}+IU$Fj`Od5H zg?msr551?NO^UnLCFEa6piyAArP$!7Dy8Bz4y>}FVHm6O$ep;bQ9?or3w)`w2RNgG zAxBmIjP#I&CT=~u8Mh(MW;ib>?G=N}W)P7{id@5pjoSx)05cZ~QPDnK6{pIVla4#*qvLx;|aPFh@(4 z3+EAGh{Jxe)y}x6n9mT?;T%E>-ES=j1-(~uq;7&C^kVSO0~GRmm_YWFw2=UYvI}2I z0WqSdM&>6KWq)gs_LE~)QQNIs+RfAXCMQ5dY&*%TE~QC9=5T87M^58q)e)Y#R@hyc zqLuF3E#Mu8Eo5ZQ8;(qpdq8efz34uKvhqfq9?~Ybe`B6A5nu3l2Ec^aesFIom+PaY zk#y(l+-yp-ygSeJGK)*tO&FHP_Y`e=lDS#4Acp67DC6JYfNc=1l1LTVDI7<~r3D?9 zY{mqy8N9>9W5}#Cn|cjYXIq>~o{*ZSYP`(vKifP$(PmxS2Ax@-eUAboLbi+~p-_+RWy zaiyN#RTE6lKA5hcH@A2IZ)uFw&(L{tnx&{r@soRi`+b!Vje$Gb%70-STLrk>)bmA! zJhxaYaMUn8P^<3g8$(4+moUy$3Os9ltQ%l{5U7t#!kHLZ(^rSqX3oueJ1`N`8iLXu zK{s^F3uG1)CFCz`7gUtiu)U_XyS96RD9^v>9)rU;;K_2OB$PWiU1)!4nY75xxgO}E z&k?KS*;qgVIg%r#prC+)vkB%!lS}Nkp|(r3{GJAr;HIOQ;DdW`jh92 zsO!bchawV4l(G-P+{_b)asZJ)(N&?ZTO{F_UL@x#rw8(S$Cv=nN0;Kr=`V>Rr-+G+ z4dOmzE~z<7X4Bj(Xvm0MY7oAS!tHkZK|utl&S+N%BlEJk2GwwdaGsp2*HDyTxjVM2 zq=1&f$3}OcZs4SfkV=L7i^@KGa^b~Yl2qq+$>>zCatf}BUj``sG};~HGaCVrB!_UY z;3m3WLzP>qky}`v0#_FMkrl1Hg-h?Lb^r;c$7Qxyn3UaPN+L_%wOdIPH^`f@iXU|D zVMISxvryV(nQE#(+i-$uM42WP{?0b97NzSNKvy}K29WDKTSE_}m_sKGRS-qM{Ht}A zTit^L3Iw_-cRPT|2#%oTzDkJRl92D5nr5LPe}RuEP0Q)J(?va|6kxjC<)JQ`>fLlX zG!21y8x?K6frl#DLM`?4#}Xl>B)?+PMOYvo>oF|Jx?Mg6!^XK!t@H@pLe-+@==S(d zKD_{G9<+Gw!%(Vc5p;kAJFqryP@mWsepFC0jO>9_E~$7h5F1;Oj!om`=1SgQ_`v}Z z%inY{T++SUQ;VTo(L4(7y|W|>!v zbBSbedJX*(NF|x@m15bp(w88a+$RAus(%WRR>)tZj-SG z7!I}qk+CPEmk_PD`)9WcX!4MTG9|}iX)3V$3vJ$LXv8-0RP4`ow`8?OUFpfn}%;ENm zRL2Z2hh~+IrNwoP&X{#f1@e-vFUMM&=9-jhbb4j1Exsm)+U6^HgvKJ+@$GsMA&J}7 zI?R9_w}mlD`7a<{gZ|pac8Vvu90i&Uf>mbG?*lf$7G&t`$GaAO?hTFJRA*I5=;F=P znpH4{0wT?y(I8Rv+_pe1Zq`W8PKVqS)7y=w&So|bkS%cRRavzweCNrT(moepfiykCF#>)prc zhrhnhIERWFJ#bq$`{1C>(bCFshgtM0*ogGQ&$&k_Dx<%f=Fgpsw#zXb2E)2hm^oUT z2eF~g=E3hiaQ!~tBCU4pcIcU#wmy6$ng$>uUcwvhbj%eW=mIdi9 zzeE~h1&b@;%LEos%H4zxa+oQP`z?;4)^b>Z95=Z;nBU=6%5P)=W=LnTw>q#`aj93@ zH~7|Ym|mfmy8gh0_Go3oq2(Hr*R3UC^2xA4Y?AxmVcx@0^%jD`TYK85$u{66fjj2Yak(DtsfAj+T93!)7}d3mG|KjijGW*`~tsj9||yW}pFS z#)u#rghOC+JqL^6#IG>t7r=A_3j@jPx_?t7pl%?Ozj+B2IModb<I)=PQxKvl(HDPImm-0s~zO^wH~+N#57v@OI&xw3k4z6tpUEZS zT3YfzgfIMzCA&ccs=bVhs|xd1IS=Kk(JzfPb8ysK`5=s#PRYR~1A*zTa_UVo`L4Md z{Et*wgLu5d&fmVefeCDEU+>hVh3WHcLQEv{xpYI4`RRi#0atKEev8i(9}g4yo^{W* zFUD(#RYRN^rb`;_mlx9|1gEm8&y@7zNzBhfkuD!4k+hPLsM2QmeI9k0SPa*QwNQN# z>9r-WXBf7tsmco)kg5Df$hLvJYBo((x{WOeuEA_OK{&s{e!Q||Z1z(Ry520GPq&31 zS6oO=6hak~)liP>$B(an0=aQ|!IK`M0CeSt3<&%jSEpB9iU%;_0}FFAUtHn@MGJJv zBS7{D@WcgZ!*~`$5T-L0Y_Nt_RB)LKfK*-R_%+Yq`Ux;SnJ^0evPg=6eI=Cz)l5i{ z4`Gw&o?7Lq`|5?aOL+Q_OHKo2h6M4SEUgO&tFhtQ11Fn{DL#U}b^J$9{ZOdqZ-2u8f9bt5PzX`ti;Y|zjaiG3E98nJ>)IPI79ioF zIpfnmweZFF93iw{{)!AC)hWa2C!MIz3O{r7Ml#3lW&pct`mJ>MXvENP?44^CNK zw6b>Ejv-}@BRts}Y2r9w__?U`Jy6lMxdZ^MzegV6i6s9b9)+ zrUvd-%{$KO6?x-95`fd_ztd=O{Ie@oAhO{NFf_o-aWSsrUP^$z$PNe;$hN~El2`a> z$t`zaVn}e7K}2~L4oTU$HWYWgLUab|<>Zyi)JjD5@G(H0B^U*0rzuqqI`!)_nOsi{TQt(n%4Mk1EQH4qw@(Sq12Fx7#}j!YJ(0F7Zn>z`>@C4Q8%TPDDU|A5xc+y`vW=ol2r#iqd-o;fOV9c+E` z?b=hll(0%uZ8`$?BcWogRsuN2k=$zzJRer?21~H~8K$=?RBd_)bi8C3^g$iTJz)7E zegL{MK3c`Pn?b91OBT8DzTw|1bMqdRv&=#_07J{lQNr%c&XvBNzWc<`w@fQm6CL4j3D%?q7miZN6S+5%C1*p!D3mX5r2yyewc_Q1 z$t5bbuujCHt%nHzBH174Qa!8|nwQf3G<#zZ6HMLV#7S$prM&VJp}0~STU^bB^-p5{ zLA#zh=>?j0b5Zbc0<+gMF&>K{R-$-ufOcT$ubN~$gi)YcEYyDR?!)^Z?a!C@pWgoX z9vNz3eiJpw-ai-!$T@Atwl72jhyD8^U>dw;*cn?_wnQuATBwwrbJTm1YvA=Ql6EOu zvDPlQ54Z?U=sB3ddS4=z=0;=Vrq5s;Hmk+9)mT=bJnFz2kC#eKjhpWY*9|B}nGLi? zt)32gv|fe?ts(Ls4wAF(pIg zE)BOGa3y|0b1K|0&xQ!gj+WrUOMD>l9B;;1$SqZwEWZEG&v$QF2%0w(!tSA7`hfjD zdt|$oCNEA4Vvr$u?GWO2n^#BBWNcnZb>Y9Dk4SxVY5!uraP7f8U8p#qvWI$MIJPDF z9O7LG@{tD)Nk=4CJ1WTw6C+(1!p0Z@Wtcyu?6;4FjBZ){7rP>laJuHng+t~cdyDdj z>z8iirCKAiOUTwLR!ZLeC=&^$ZuZ6aO1&H!Os^LSN{%~io-5g9j_^(Ry?b14bEZ{2 zL(k=R>}S)=`jBkT5F6+P_iMXrXfCYoT)E&AK(7CcrWCCd`nE!5HULHq&Uc= zK=TF=kzG=i%B;ca?+{KP`Ekt?PJihMkAJDd5V<=F3xIiWffBd?U~0)wN1jj9v$V$Ypg!EYM7Q#3t_gf6Q|Mv`6`O`dZwwDJ=u-x5` z+RB5qJdqF3Kc9~db*wrb`0TZBYzk6Xr8Bv7O1lVL12{U!o^+%0A z3zI91m)l*-$n%yAvmxV54!+_XwH|4vafzDea|Wrm*iCHn+Z*McLVoBq=aHmRK9GHI z-6*F~9PbcY_K+{ErpnPbC&x&Hlg@6rYuxAL^WC%6^LbI|xoB&WICaa5r!9}i&rYB; z&vQ>lU>}f7iJH~`<<4$ccix*UK2d(XS*(=NX1RKiX|F5IFH)Q>A`c#Rf1?JnuitK1n~c%$WoySX@L0#Gr)k^ z$0h8dWP&ku)W~C^qNT4gjwG2FWrgfx>8l>5d7$D9dO-TD)#RHqWw8?m%>#_!xhLTQ zV5VV{g;=DHUZF@zgTvm9AmJiO-WO-(s>wEPbPP#a>Jez$C79l?OP-G0C9!B}B1oU8 zGW`y9$dF#$i>?(He7ex@ep6w82MQ!+eFTT<8Ty(_;ATq2MRIwn3mmj zs(HqlDlsH*Fi5{?PebB}md!z1Pn=5S+V@6JHau%j;R>WV7tIeJp+W;^Oh4ljHxS*b zmd0V!Mrm5$DSW_^paqQ$Y6y={++2gE*GYBkQg+Ai8>wWhID`HEC1P5bxDd5x1_&_q z!ifmsLAZmGI^C>xNbZPir4@PBa9NoeLcEtolY`HDmm_qeMz5hrNAg?jWzx5#JwoFtFbg5Yq(#+a%4 zj=wCG^Us{R)jQx9gbxqHCxnj5Fw5PtdvL9gT+z_%kaIMl-~ufgSk{to2Ndj-f1 zQ2Yh~x+Zx_j>KC3@(mO?j~@R1o{se+fBzt9H-CGa*lO*&>}qDswC!i>;Genkxum@X z7XeI&5B0Mf(UM#m+!41*3D!L}e(r8}lOH9(r z(E7n?1|vJ!UL^k9dDs$Cyq!lRsN<+sBvY3G$h`>xco&!u2$iA(eukA+twQ@mjZ-#> z4VnE-M@cRz5f2)oek6un&J@9@XadJ zCs}xL72S}879opAUAeJDYaVW5)ER8(-$jaBp^tk?)g81TTnc!+rIg9$hlVRTi}K8o z*G`*Au;DGCZVvNAy-xCnQ70&{XF905h=(*km*`R3*3PTI&FUc4T35<-uU8Ca1)6q? zG3-l`X_@JoB$>J>wc-})dq}OCI?N2YFwsj_Kb+YC7A<|YTnf$(#C1UusX#V~rlRg$ z@c{Wg(Xk3e#UY=pUN|t@RhZzX@$2P!>X{^%ZQ3rFjK~9fwq4Dy2YOIy#)ly>XMatz zT@5MGyVrDOm@lUM;e(%%w+ALi*iihy5~(6@tME%IUk-h5e+PTL;bIgWiIzS^`^+{= zkq|)9dse+VRJ$x6d!0xcf{B$l(6+H3N@W?m>N#RBmI zJKS44z_tn$M4|{04@vyqqx$yJe)%JuZOiI2%yqZ3jcu1Qe7NDvCG=ijg#^>RVgf7$ z(#X`+7N|0^t!F22p-Lk;nXSQ+R5rcT7EbD!@^6Ld&P)jAz%3)f@c0WXSdf4t!>mj6 zAq?gD4-GhvZ-O+p-q z(bN}`gy0-RF2``~Mhic20mM#c1BqR2!{<#c$YwbRSkK4;q%YQql@%wr22m)7giR07 zbf7+x_!RV>y9E2%5~E{@SRE;vMTx_zmpsONZaiYS%rT=W4nMP)Vx%7Rs`52h9|MI4 z!k-!sm4dePK$GHR`vP2Ivc0IKbr z^X!3v)NhrU@<1oOSYvU7Oa^J0vW$Zj9Ey8h3Qs6+X<+8<_~`KDkubO52a{abb4C}@ z9W%+xO;?0W}>8CyS7V{NJM&MW@LnihriwV|MIn+WQ3Fr3d|QU43@-8 z3*EI7;-3?)Sw6euYK&Uih`G2|xW4D6`-JO|abV(yVck@TJmR&pJcQ>-6X)1M^x;JS zU+r%0m(XhmpD|WSXEKN-w9VJd?+!2hh8PwG)v`HCO@p;sOy@{t;xuji%&TmgFvMD$ z?yB!quowPiQj<8Xf+PcLt%ociR`nsTvu>jS7Ok9z;f_v7kz>Nn=%uj-HyJV_o5DqM z4zv}4*a4kNpo}%uL)cub|9bQ|;$+CUdSce!loA)+kLASe<#&yoxXc6tR9(z&cxc0@ za^=$i4cVQl&zH0?=C(F*A7dr>&(89X;4A;g!*ow4benaO1Uj}CD)57ou7>9v6|Vsm z8i>$np_O4Xmi6>>^2H5t6Yvt4;GPeV+2tx!kK^=i7dV0!SDPe)a$O=5@LB7Q+=BFw zSVcrT^=j6%Fm>nIi{hpxWB@Btt1kK2P4Mo%Semtm=Ns}-3thF}G&wj@UFCuq8lO%S zp72E{Cbhzs>qW|Yq?R5my#D6=Y2`kt$G=!^Opsp zcR}te2bSX-&rZtiZ`3QQ1k-8;+A=v}zV8F|(1_XY+X5@3Y?6{TXi!p$oI;W#g9*ge zU0fdBRI%5c$r;#I-2Xc~1d1CwY-lV)h~f=WHRBLq(bxIx@O-;QmLJ|e48m-OzVp>= zwp<&oF*#7|5M=I$PRRXioQa}#E_b)Hx!yq!o2og&FALLSp2&zg#2#p_3q4E(@XWXN zRpde2M}Yx>9 z-F#z82MfgA&0nprH*-Y$i+nhm_Mvqp+_#0MW34z3V4mVCUI49^A8%qD`3Z`Q+}^(Z zz7s52E-_Y;#73K4DckE-?`)poP8u70hL+p;YnpPYcj(c#0jO~SKpwNJ8ZT0szA=C> z;F0;rBYM=~4)`KVby&>;IM~210`X9`aK&6pJF4Jq>JWCcf3tmQi_mx%sieJN{+U7x z1&JTr4;v$xK;Bf948&I(a-g0&%eh-eKg8HkCldA15T}M`ss+TRNeTVI%7Y^RpWi;J zsB(lkqLi5QP0p4^Ns68~UM*I^oZ%$!HPz^OHFt%I)fq-t`nWzUT0)c%CCwu^s>EPx zV9r%NMzIN3jm@e9s$0y|H{s6{Exo6p3wN3@RtTbfM@n8clHB9&(+HX%H3c$G!HOw^ zv@7di%aZfs5X|?C5#tEh^Hv$)cJ^Z24|~)U(WwX?IL$mX0L?-^K@gYSHp^?mIng~} zBv4CsGXIrRH)w4cwQjm|&K?CPBxhPetZ6x>4p0NB!t3SDBK-6vq=Ealy>%>9Xb3DD zpuCXqNn}->hSJ777$5)CYSkT&k53(Twl>rn0ASlwDMh?z zDwwOcAMW0L{`}Uki;{_!zzSo5beHp0i>-6_37PD2y=<|N7bkyO~rqnb6uD$r>$zSXburwRB zX1fipcrlWC=J$;l$GS)twgW@KRa&Fc0Vc+|Vx#sv{-ltOPON&ixG!2k!qwD)XYaqGi@{x#3RPCmF*OUv@_z8v973_u35BUy#X7>S#Sy zxj0z49H6x;FmAd;)OXvk(}>xf;9mOhd6h*o1OBIFg{T(=K- zE!@R<{DR4SY5B2b?P62eva{yVyk@a-&qs+w*Q5+~m zH|1hCgHOR=H;fEeZJO3PHV6cpuO7oqVYNkvcpJAm?C{md+PIhDsBB6hgjH$IFiTq> zXrrmy8+TPTMwJUt%TBa`Yz~~fy0{!Qt+b%$fKyw9v!um3TkizcL%TGr8@bzu>o!WK z7fVJ(yn^!Zn>l7vA>uhZ%S@x#$53;KCA?T4hTO5 zsRFt=HeyS6quvL*=%rxDuWzOxUe6?0)cP!%O7I;ebB7!C2Ho-sOwZJ8n!*%>fwOU< zO~5U$6vOKsyy)#ZRX@()lMI=WX)N&>8y=V3_sIbwp-STKDrK>s`GTfIBk+@Y5M2ta z4%iMC&(P!zJmWtgN@?}5t@D2#4jPEpv3<1Z}@f^&57 z0%8je&DC;W1j%%IM5a+3QPEACZb0v#s;E~cHRt0nz|$)L)10)L&V;2QqrXMz`DukSXFUB;b=R- zDV%SM+(F1#a_efXm`T68R)0uPK93Xv_uK3pS zjTEi&FdasrYvKwbtH1Hxyt_i{15J5V9T~}RSjo2HrwA4dNhdOE%?VZ}NkQ~5V_RV+ zn<5!2u9$0vbfGM3GX41BFYkV6tD5*V7B%sT!%Z!2zXlUK#NJCBjbiX9BYO=l&ufMLSFMrwnPc07EFw(rL zQw6WBT_|BEw5qtM2Q0z9UBa326zL1M^NZQHMzS#5hwJ(4)$$U2-j+EXM*sEfk7s{8 z{jViU2Ds=wRN78X0v97YhC}O2dy=8S;)(_4vqkx20_Tp+0a^NHep1y7S_0=!kpe@a zKIQbe3m{c+Z-Wbl?Tu!Fa2N74;}a*|GNu#(q;+a%OQX?!{uzVkW`XGwWq5v;+v|OW}uc#kRrpLkFk8VQ^v-96_yE0A8 zNln>hj2G%Hw<~E_RDgB6ogL9*0<9a6^f#V8e**prPXHTEc00_9T;yScqVY|^Qz3iO zE^3E5W?&}M#qvben;w3ozQ>q_;c}}5rcWgz%QKD+^6kttAaxcqg>6V@fG4A-B^+a+ z2d>?I-VMFW5Iu^tg!vEPYX}u9qImq>9!Jmv>n44h`%8~6k?MDxC9k(k%R+lJD{a6tj4-oxX6| zByMil&BeuHg(@^2+SMbZ%c>_9Gk4O=&}Wn}8Ap9aLE4(v*cOEo#w=^$>eV`9uJyQY z-?$H2&Z{|F-ynoZ*)`p9E+yTpzz1bdgRxT`4}8vO!VE*m`igu8hl}sNyZ!u`!@;gH z{LEMOFSNygHD}DKT*4v(X#}5^<>fxBxEu$YA?Mi z$IGo6bvj)`n^{qjU(acn-TLi-^bIZT-ylcgNbDR5)vyRvp>|^?r3G%7GzdOMr9wJ}U=!DPt*U|qw`p+NVy}t$9ft3MgiJS0@KODR9A?s{_#+DmT zh~9MB0mi&`w-(Z1=oG+DSfb@tPM0#I3q$`<*}|++6u)6?=b2Tbf~B@CRY0V)^tbOF1JtZWHzzG-0ncr-BU)sbBz~(W9*Y@_1uP@94$8g$Kdd;pdteP0iZ&)@A-8xR!!Tja=iHD7`7iPB4mCgtyjBz2*BJ+W4@mNB?G{koN2vSsq;3Lwn_B55tokNzoLR8`FxoF^z+@{N9Cd=rkr1G_TL&xAq@@qSXpTBFMn$& z!W{F9>7Kd`$Pok-pEl3on)iL6y&9|u!(a5(_FJzeQ4AxeY_?}r6%bZh9YSJ;pr^Ci zl^``tgy83H<@h(Rt_(dqG9rx9%|XiDe}Bht)^01$Jf%_#g>Ah`tLqrsKCxCX@^7Cr z4wlj~L(Mt`u>xAJH!Pg%4VAxMh+M?6bHlXKo^Q`9ML(x;?bMtl?RW4XFf5S=30f@f z1+1`HBW-qmz2ubLrQ@b1z&7$_oM*)1c}puS${D6`967R;Z*UGSkpYMeS7R{bfk#tl zR><5r(_oqvrB4O{b6QL#3j9-tiEsf{l!bcmxSuAlwhxzSX!n9=!`1vsHXsJM;F0vr zEXSzAYa8zvsjpr4d90fcjMxE{;*rfX0JS3^^oZfcrqg~0EjZ^#dzK^=MTMnQDREpA zFfG_RFh;RfTXTA(%Nm-N)$E$Ce)fi5A*ku2hx2b0n13f&rTzpb=3o%6EwP>L$1sgt zSsCckGTd_A#@81&`?V7Tp4LQjBe^#pXaIH0Z|%OnQcg*B-|+)vO+m@C3%FKXe*?7% zeqM|$4&pna0bY7ZaIo&~C$&BCVRXgmbg%jJI^ zj>14s%#kRu1mZOW;_f!;LbZ$}))H=Zi#<&zRb_W_!d(Iu8)~}Q{0$3p!Mq4=Tl5_u zyTb}6SH%gB5nHyRHi;PN?m?ufsz8lLlrhrBcA1+Fupl)HiBtQR&_&O7jf_*HF=ZG| zLK7zi(WVSET!LKYQS}{uZOx(!6@8H3Q^a^Y2rnpT8|PC5IL&7xi4b2S?cL#P)qZ#W zj80i5dQ!wl@bVSd2SBIUsxaos)KX#UZW{q#4OHGjF&Ra1(iI_TQ(wl8grIfyhznpe zoPkkL?OU5Xq7kxiVG)t_;Tng_HO!)L+d2J(AAmoQ7E-NGqm7bMd-AYCbvj(Kmi(FyR7(kg5hvn<)$l09(5#Z}#?^0Ua${6wNga)UEZ8m;W zAbMM+9OVd#(HP|jE&u`74}OYo4134_x#HxN$r6u7Jvulm%N?3ApKLJW zjE`?xb!82eBkgpw1Q#9l4R5@wH|pKCH741frT2J}QOO05`f`D`XC>0Rt6h^ft59zO z^eN_}j?^T^_73PMxcoi1ouDaf!Lc!DG;ykyLGcV-HMsa`DL9A>-$ESo_MlEZq6W&T zVvgV*MB)uiR5!I1Jhl!mI@zss&8TMVz9tfj`yO_RDszax#ua=4O;0F=T*MT6jIE>( z#~T{XG4$c~r8p)k=3ec*K`e3g23Q10>teKL4UUwDV9(E@3)Vf%WCr`;q4FVx%cbU7 zY7BGUxhHUTpo5&WONm}P%UlZ#otFVL0P$KSy-wx-6;5>OX`_yH(i4p3rWWqHBycUs zHpsujVXbB0;b!pg!Q0QDZ$I4~etwH$vM0B{{QQYJ!oPid_x(ej$BNEtWELFdB6akC z^kvbx6TT_*0|R!c5N#Ea`nt;_J#a7Fmomv5RdU*a=>25CkZEoJD*~d~p`u<(M=eG9 zk+&X)O-`Sa{KC~wR2X}T%Yl$@_GCR>^v+2ho!N=|82DZBn^R`g)Zg99JXL#W;Fu3) zu;NtOgY$f}5dQ$#A(&=Vw314sQU6j$DJtzdj!Le1*di>#q zPHBnY8Z|B5OEOyXHsWmJY{Nb_(J7JgHztrvJQieeJuL7PpuSMV8Y(CH=21h?^S&JD zpc|d3yxdu-03bYmYT(+Q;M|1Jvw7rncfPd`wa3A+U`YWBxdUMfq(V=NJUO$Osv&h| zhD>d}RQO2TQpp_rTS=@-88!E_X|CZdPdzjze&GfrKB-H^1EkJS<x3rm0ULHfm3mmJbh{bIxVaWS(&)@(<_ZQ8uekuNJR3>X!!>T52A>uQ~8qW*VMpXVYC3VN!9bP#$hgV zpV?QP$>XxjH;j&i7Jj};WZ5h!JYDXYV>JE=VgeQet|huyM?H8 zWfYgMXU`Ez>~7nTDy6jc-*I3i-9RMF*!&oSI^(;OFQ z`JvHk^SKJlz2>5&DKlfz_GxY;M7%(Nt&1$#J6& zoc-eq6w5Qvqdw8%78+t3R%|35FGg%nLT)EnSihXHjcj3Ncx{1D)#~tztKPSo3wE%^ zn81RgIA`U~eX)B=g1)L$c7AyIC+iaHF%k*ojB~n=0 z>Eg`@#`;ns#V)Z#iXn-e@)0)xMZA>4X8bad&;viveb~yA;Cd!&I_-DJWtY&0?~3c1 z$3TAuL3dEC0jaaj8zFym^&;E}ppIah5v^BrMB~Tyk)D>yx59*b!LoL(4(r!NmUFow zL;Rs+eTc*ZVW+lezZP}sy^LDBz0p}clR4dsNP&!v7ZEhD?)e6Nh3g!QAi_Zu!$WvR z;T3)HU?CS^OtCeQimv9m0r{6AXXx2P6as;|e;hw~bpGu8?9u7d$z<~M$)nq^&Ymuy zc+-&uM8OeY$Cv%qo|3SwN6UeO%`>kJHUv^}7;pv1`f*?o%E&bEZ$Lw)-$07zHCx1Y z@9%Cuv3QIhsS1jg!^Wv>l%(LVzW@H+$H~>l5AW_ieo6{BlT==Bk?rAF7pVkf0x9|< zIfXPKu<{Bs93-|>iay<}SB0drp}D{o->rS}ma>VUYE#RV++`9CBliZd zVl~M4z-ea!0eCtQal+C~X4t)o=WhpUq)k=-meVm^+w&eYR-NUq9atCJkC+l%My;^9A=IGg zPVh4vnaSFx!ilwMl5eb@dP&X4G6RgR*HC+pkje8VwAcU)!X=CY$W*5!K~ai z)uZLoSWb*$cVW{kQ?KR+YcidV;X2o{h>qL_Dl-$OezqhMedD@163?NU1`XQXz=ajp zEbP!WdyxbEeSY|NfO?R97me$i?P7nq>kP36)=eC^$AFyoVr)A=-4Oi1bh?YgKssSG zW4m(A&MmjOcf)o>hzhJcmcq;ds?6=0sfjk9KK=m9gdVQ3;~INdhXB_@ez|Cb1Mrws zEUP*OzObuC?7@sbxn6G&j1X)Gf-%2{4w)~Rr!rWeO6%wEeBOw$mC{D~!7!pHNj)176$aWHFxVbeOwg=Qalda0DFeTQ7l<8Zn3mbOioBz8~4K3tF0WpPOT%Gc*#8XxH*vf$(DcME@9Ybb)y;kJ>a zTQmsL7`4xmZ?P+2Aeg**W+JXNVJ~>%0yR+VIbxPJP9Ct&(Xd6aGkxs-2+`6E2jZ2MeV#3`Rdo41wPW1o_}s0TmwN1iG&P&wZQ?G6p=_4mI47i6nT zMJ8mW#hULy1~_w=IGqo2mW^7`{$ZUZJKj(0N7Ca475GKMd3C-0HWA101g<>v$i(K7 zxh#0=*hq4Ra?VMg5jBAJyGSl$BXkCH0IY#&Z@JZI(8I65)E(NN4Tu@G;-Dd=4+Ksu zV1jZ7kG`PW2MQ~I=wcmcI0R;YpcVw4Oe^Ram%G_~@tUF@mk3^bc7%&jcPb}N-M3Vu z?Co{(kBYNcq4??3vagZ++_SHdIll82@cF<&X=-p9FftHH8n=c+h&GlqdNqYTKb6FI z49+c>QzoY961Enmak_y55eNSl9Gd2@QGv0l7Oh!Ti^LDVPAg6Z918 z#leCj5peo+IP3wXf8f!{P<6A^9FKc2R#i@%AF3;-JnVR!%r3$1xK#r|uQ&4%V=0>R z)@2btVJ(e>KEM>i2&U#PJW+_C*b!4NXXdIZ9q`LMo8%~DH(IEOX7YFp%Me&ngmK*K zs}gn11>kYkRRbqik`dv@6~WXM+Z32%X`|t{lk#jkoC$B*Wj?ACk|dW%&%>uw4yAU| z=HS8w^Tl!1B{-F4oSuK(j&O6}+g(mKSkDQnEaeG}Jj78E92E3pK-hW|sZG_oxaS0jR)vSf!akieL^RG!d|h>81FD~g!*4&wIWBD@ zRZeQvcbHKGnBa_wD=+o50@LGg5FncF2#eJP2`iY(4tctz(`p}2EXh#4z|JiUF@!-b zsbo}FT1^&>1l$4nAgczLnh)s(aNep&xr3-^c=wrAhY{U3MzQLl>qv$_c>V0i^>bX0 zU~$HLYXZ%u#f3(iEQE2A^`ZH5t8bAdokR|oR;)mMCuLr!tgVLe^?Hl)^93(?Sk}3L znsR3d#24{XbH#_ZAHM(d-|s64Q92CB92g077^DFWHT7V#Ag*R_(|p*zAH=l)rB$T0 zN;H@37zMJEaz)yO3&h4CjPn(814U(WcJRw!st@JHCc31njMY2L*}R|jqPVCO{_)Wf zUpSCscaP+^W)Gx}`l5jJtxDA(adZ7@v0aXG8yf0NVXQWZPkFMn$0-b~Wo z!T9w6sXJ#}Ir(A57$S@nrtV<^*uUv#XKZ2Wo>*|04S-lB;Kvt>BrF6<%LMy)q1=!FUCZI;B z$#ETRS&#wSoBY>f20XNgL+tEICODw_0^68M#k8buLBdS7z8^IsOShhTC={9=xtzOo zkVqhoTiF7CwLFzac@7OeKpMMfZLo>%zE2aEuKPMesW>zTe&i>u;sQ?1Amw(1jLC#( zZ^E|+$<|iu*Q3;gyTnUgGo_=kzmvflMNB^9Gp%(Dw-YZPTbjb9V97QzJ#*b$eUbpS zXpL&rGu^ZP;E8^jOn5RJ)$R%y-j5YKOu)m`b~!^gOL zxk}(5*Dk(k*q65pavs0tDn0*|T&CxR3Bx>zF(=E#Im5~)R)o1zBFLjMBO?EUHg}V; z<@d}_sCjIT7(|9UBnBTV6e*R3lfH=yufI$k>N+$3F=}8vHl8qwqq#`tpxm1%S4Fy@ z+{73|RM*oB9mx$K;{NHVv|t&1%Jq7^xkCD#q>LL?MNc27Eyr+`?a@FMLNrW%t~BM> zS4%3&8KMHf2x~2;}q)^O-eFFq1k9r>j8x8k0y6xhjQyY2F%b+LXcBw2Fop#ygVP1fSf401ds=bZ0 z3(^`wi?e#eTi;O3_degZ88M8gQhOFf750 zOLy%-i7UiWCmy!z9cCM%0QE4Bj%J0?>)q9I$5gR6@S%Dzxr&*4Ay*YlheqP)E)Yyl zg{Fl#2DjAF$yd>U*Wy>B$UwRqZ=n^O`m$2u4fQR84);6wDsRzu8+~z#EMGmA zDI{sVb zb(FmnHZ>X%c|&3dxy%i?k~Bk`;S`nyrtW+Q^>FaRvC>%j;VH;jUty57ZrKVklZ02aD9nP96!! z{>ud(#sZq4plHXq&n+Ui{hn4GUwi4(%wPcb9@Oa=y9J*=jWU|t(Nn)IJVB(ZS;7Xg z$3XT7q!AYc?Wsxg)euRDUYZXoP&z1`g+t6O)du=?vullCetG+e4xL}#zwaj58owkr zgyl*wM_jV>XFbQXXj*l+9e>aIm$&wPW#Q4tooB9iRI&9W=H8zB>Gt;SNPp zWP)1bA0Qm-gnrtX-OS=L>o}U)cIsig@u2fYfHcW`1zpinrd58FElLKew;t^xN>}J@ zVYNF3C$VmrD=I+Upc5r>P$4mvk|VTuI@m=wAD)xm?6oSoCRW1#6_QV(2XM_o zsFV6Vs)@t#Sem)ULu!SLM918t2+P>tsD`)~#ib~>S1VR36Fmw%*>Q#no>w~pY5H4IX?BZMu`$jYBZT57gdq4 z%h)N4pan~Ub2$7#))sIKHwe}}&>4gy4(P+L{(br3^WEDI-`%1XE9~^hZP?zR9EQDX z|AU2GNB=!ieVRqbO+G&7xqRJDMXf48OgiYKl{aWN07*#!8R9DfgHMkD46q_m9M5ay z{RQMsiULpm-Q_M@m>yfWS*CB${$X%~<~ej5gY=~WeRR^O9&?oK1ML;2j~>p-U0`}a z9P>}20;YcWr1g*awws<{JH?3TF*3z1>6$EG0R)PI>B|jm$HW!86a=2>9=1An(r7j^ zcU7MXZ&#-Z5)EdKc}0#B-pFp6cc1XV4=6CbL1WHgJ&(Yj1^2p$=Y>8lQf50Pv8q{2*w8}0glLXpqI-HB~6X9bvkh#P(KWTo*AO>G3Lw5 z4KCg2e(L!NR9N08#_V;jB=v@t$}k)&OSPH2CnAKnfoRUsvYNC68SI`_O?`B`_E%&B z>@HCUs2hG>ynp-o$E0{z>^WcUL9E2ET9ktCCZFcWoF z2n^$l%{S*@xLHRpJA;za)KWx+g$jnN3l=7n`IqBrbqhJ8ymb21ShZuF{0Zieq`V{B zB+z2tK#qkn5-b7gU@V_sL#Isl1RS`px6A$fKY!8s4Vy8ySvf8 z={frSL-pXlyy+p1&cESs#C^Cs#2TZqM+_hZs6k74Av+_~fEEgCS%OvRYCQSk&oqop z@_X7%TjcD-!(4)brs&1t;{6XFOEHDR)$9>CJYHTsU+)mhfkGlw$ITvvSM#()?eaLj zG}8%Y2nT41e$;PIkP#zqP!4cqB;Vg(PV=AiV&%@B+~>^kSi}nQ#&w-zp>E(@a^ev4Eqmxl-9N zLMJq6O*K>#H#{|!H#8_g!|LS~QA#tglCE^;$C7PyVVXp0E2+NZ_m22=yg>COFJOgu zb{f;|1&I#3n@e(aQxu*MGoG$Hj=5Xjpvk7dGX9(kktJB9=h3h65%S$uae}EDl(mRx5!X?%>x)1#c0%$vmL^cQD4)Kcn^J9#RF)dY?o4pXKd56 zd)cNA)K8N!hRF)4I8A(B-3DieO#9NH2N5%zTa$=uJqQ3?27m;yX;?QesByz82q{f_Swxr z&E5DkMLO5&OdUSyaie09xvKC`ZWe?Gs5O~eppjPNWl@z)dofyC-R2PV+#OzBVk~uhXI9P|BGS%^8|Gk(-I8|r z$#9CLn=7vyd{9`~@;S-{QNxWyIhP2q-ZA;M;d@gS2?)l`%6$y#jKL&Z9{O|OpkPW9 zHWXCWz)Vg~@j;bJ&1`3ulQ6h5m*K=+(6eKkv;{`eT+Xpc4IxOAD!7$N8kBqkBpl@& zhFhjro()Ie7Np(?bphW|g+7kkuT{Y>Oa_*XYlkXd`UT%hR9-;12U2jgYFsl2;{_mD zpgul+FeaC9XK7mcKIBJ5zU3WKu3oRNm)AH4_lOo+UeoXL)#l8zSPsLN>oa@4orfrH zq}NX9b?3%DW=cGDd*8`dXQxlh7%5BVCB5wr(1cs8t!!f_k!uV|iL5@lsK5G`YVxDs zkD#i0h;qLU)N{(50St2#wwaOWCasGNuv)83NOlVcFIOT?KJ9<{F;fyIX@b7>wdxw9f>?2q890p z4^azs;9Yizf~|%AG%>c`B5P|xff>@I&VqLd!Uf ziGgWA>MTU{EJHo}lXJpue~OltM)$eAAB=0+23I&S7nfJ#!Hryj8URQ%_amGeWk*&} zN`%_kMN=zg$?#ca!kzRyGX-3@WrFev0p-$Dwb~I+_Vxbax!Z&~6Lf!H4Y*J}c>lt# zof4WM?nu+(bS>FtT0~ZTrqL7YY+l=g3}Art+H~mbQf?sS=5Y6I{(cO)KUq(=^Tl+v zwG5gW%44B`ADG!6muBkAi`)1%xDK!zb;J?Y$IoQ>i0nOjlFdKOrnCnk=4=H!n0ZI#nxY5_-g8BGQy z4pV=@QN5L`I~1 zxl#lp^T=e=(jC36z%&3(knA|pd{vIJL#=vU>gYXngHtWJY7?;-8#cSSSV7Ypqe%Wx z8CoA@7M@VXN{MHxSjQKh>Wx)Sf*8q3YE5|@q8g5Z@{=OgyiTwMn{d2(Ro|st zSYjx97FjJtNuw!jr@sKsQ1chy4;=dDMbKQe8T{ zdI@n#TT99iDLj_fUklahWn7Vlq*df8nxoO>(UQV&>c+MA@u<_*dx4KS>Gp4+g(`l9 zAR!5@2Fb2roCkjxb~z>Xbx|Ox0CwHkJ#XmcgqAP^p=fCp_`-b`oScYxb_@5#^d+@2 zqg16!JHF`KMF>Rd+v|Ebd2ncv#U8GhExJc*2H|#uaY4x-@L!0h3p>HOSIb9OcALVt zdd3=len5obv1RC2a!&V-oF%6R)Gapi?#1d;>{>^pn!=7Ua}=X9=T{yN;aQl=4n_Ww z>G@UJpVrj9i7Ip*0vnKq0(C4r;F4+}$weIqX=Ewc8Z2}1iy8vuBh5HC_YI-4^kT^! z%|sa&*NEU0s(=O>4!f~I=mlirnQOd=DK1ztIUO}Qbss;m3&zN?5D*fNB$4U^aR)cI zG?yOq&^ojRBnLZq4--FJ3Ft9m(b584Y;baT4VQ5Lv`ZB`T)KDhQx3(3HEz5Ktcj)` zY=d^yL@DltuS4+P$dX$yp5Hpa&jRMZR*%81QmA_znaJH@f7TE`*FOa9bjqQOj8H&a z9K)s#1T*{^C(&SFuD;X+%0}k~`w#YpLx~fULEgtbh}{@#*@Lf<8x&=krZ2)_a5g#u zu)Rl>6{AUY2uObwZqu&du!u`=79F3I(TO^6c1O|yblh0Di(XdUo<7DI0q4D=Ww=uP zx{Yu_jn+-opE$MDr{a=vpJO)-MN5yT6+^1f{rs`CTXO#m&jh1Tuzt0NyvAH$^*v)p zM)#(i(3?_y!&3z`VBkp!s%HTSWlN%QNvwy6Tv(TM#gaUL4Z6UhUd+CA4`ptqp+q2h zX|lr5ZquX*p>hW$9#qx+p0njx7uHB&X%ccj`@jDTX7w*H&+?)aY7ZZdWqY2)3w7S$+j*p}Kt2=?)^ z!Le59;0uV}U>gA*UHFpC^L~Y_&GVftzp0dxCQUDaG7Km2vIu6V$eGRa$am;)z08>G zDKmP*snvPzXlmp(oG6-82tz!x3pP{(BQ=}9;vg=rr^vy9UjQHvheZ}6f5_qTx$w_^ z>Pfv z)Ti2GzWEwyf`SN8eKVWc@v1`PB>>^%afB1{N8@|XYIzf%#*p}>(z~tZ{7owzLlO9P+!9s3@;)4kZ{?( zSmpy+AWq?b{(LVqDXjuW6%{H#@SzwUxI&r%Y{u?o)1Xaim^eGEy?|O*ghIgB;zF@fLTi%`gT_e%h6m6kkiK+2=Z@P|Tb#PomGW&ecmNhy?e6-w$kkVx zn!jr1IpEOw{^J)Y5+6?fIGH>;eRB5n(Np|`q$}sh^nCiXREseYZcw-E%BXCylRpr& zrkX;cpPYeCpM8OW0*BlVRE>JI2!`^OM#t0yI9y*)jn5yW?gjN4;8}b=LqRvd_>>Yn zAuPGqk<@1*Bkt-k$gvcdrWtMt(%bX|neJsWZ2POT3BoMSenDZak!Ap4=Mx6KRPiur zp(`-0sIBtkyrG-sp`~MT|Ayvh6uR)_fv&QC>Kg0drR*_-5xoJ@OCcbU(lZGuw3Ev< z9!!5%np4vCo49U6KoM~`K5Spwrj3>(o$`vm!IC~_Xt1ThCh2652sk6?AzCU#T~rIN zvthe`;>OWv`HMWf^d3g+NDnL(sMuLUS4T$qG?*?-AH8rpv?qXwmc~-K|HnxZP+kwa z*Qwaxwkj}vwwMOSm7=_$9FN<{>Vb9B;qX$ro_nGyhdbEl;;hcf9qIoee{R-W5b?p3 z771Ec%*BSP(b0Z$?UCE|RirjJHE3_Tf=UC@qj~7;Ug9WdovYI2GI>%{`>BhIqZ3-Z z`8A>DJJ*S%I6b!nj?Zl#JQ&^Ot7vJ36CE;FV$9VvD~9S-^(RXufoXSX30N^%@Kz*| zn0b*qa|USD1svya2j?)b@p?|IHeGa*qOh{~^cK~-K7OzjpnbJYCj-)aWui{=bZW(E z<~rC)OCRw|UjgBl@_Orhb~ew~*#vN$KUXN)a?k!8giB3-bIlYX^I2>?)9h$H`AJoa z)J-)J^V#$m(!Nlnjr>pDec8hFv8GE^`FD+iE|)@Wb25R$e$&$Y>52=x`3NFyWz3-X zHEb~I2KbN1yVS;?{$%8Y9WUH#X&8EWFLZh@bapRv4rdMHZXW}M=^)_DZ8Y_%`kqj& zch!jY4iBvzj8*li?4I9wCPl4{&!PZ`@=V?M2eM!Vq**tNw6kk4?G%mz?q_$r(`i#` zwcb~(BnTHayK~FaZ#+p3=~=qG!u1CX&j-taw3}DTg3e&6%WwB{k7Ydu2KnTI^1G0n zmweS>1p?b?doQK~v-yI>6}78SsNgwhT_g7qV@f}RlrpF(!6d0qM8BAp!el80zkrVi z!{pC}x)8d8=8};Ka}#QuOyCv!jqH)|m=N{AZ7N-+B%dWwEquS|Znb~0MZ%R7r7Lw2 z(uE=_|M`43K7G1hkKsnf7z740G7iajaFpO;_UD$7Xh6b^Dwz;VOm@-V6F)L2dlhN> zdX2f|oOYf&(7`Zo0q&1da|zvG%jU)$D4hFH#U31kI-pg(4yW3AC`?YD;j>_jfZNJ_ z2g@MbUS>yBmqck}1Sk90fdz7mucXj?N;U|`zWJGd&p!U=2eXJ{ zYQerAwih#$7(0w6zLlI7JFVslVhX5ex!+8nrKaC~oFI>|{Vx3Y&~MR7Lq(a1wUu`u z@NP23`_0kK^KzQD^4*8KD$qmFwnNe+__GJER@6;iJXd+4Xjp$*k(F7U4x0QkUVQOS z+vzwKsR->Pp*lq$WR=fCYXiqcho)mQ=9wRfNXFWdDLYbh6L&5@Vt(s56 zWk!xML4D~#H4v70)X+5qHnfB)kRwYPLd`a+3WFLy4U5a?cRzf%{eJY_k8eL=s#efH zr=2jWQd0+FuSn(8Tk<31Pf&e}F8T>nR2p_5S>UM@hw{bPef;w2yW7Lf&)=gKtyouC z%KhxQ+2B-h;^J()YYb8Pw~+>(^cKN=?A)wmq_1Rw+Ks{1@1}`V#hCLE;qsK95n8qE z6I~8o*O(7<&~)@<4%$X7pZW<$#C;QK?IzkerKNoZGRZn_37yk&bwRdXCcQ-o+Gy!% zVpglmIz|Y8Bob>HX`vbe>ovWg;Y6-3Fv&N1960j}DUO0F{Tx%!P1%i;Ka)`pc*eykupS0vV~dXer*W<6xP!cLN*i8k~zC8-*nm|Jp9 zjv_kcsNMvGfLo5LC3;WEq-IXL<3B!m_T=%iv+>#a)5nvu@uMfV{{pq#;%xGZ-s{m~ z{e-UtP-X?CrMRt|(r}tu_fvHHUbHk@1qFAnTmMvO(R+uEZzVa(>cLJ(1{bZsG`@NU zsl+t)?)q=HpJty>ZCdUy#;V)-R3L_$#&>lYV*fDiKIez|iWgTfFYjJJ_*}gE@b2@E zdbT`1(nV!_BcZrZq$N4a#q0HU<_fj5ocwsBG$ZgfilB>yh2ufJr4cw?80Cg0c2Le} zN#S4@%~oN*+elL#pfV=4*Y!eiKCqaB0chCL;p>p>+$jx7pVM!96wc9woA2R8W=riJ zJ92F`TZCsYNG2JHJsTYGQdP9xf}zNP8?U>i=O_&6cm%5G>=;DiCldhWf3wm-f`A}! zu|qm+@{)US-YOahYx~vV&wszW{f-&SbQ|IxY^B_FYtR%@V0tw=OwwZ z4R)y`_mkhoO_N^MD>zq8?UYFC#p2Yec8uEQSUdx>%YrL_pKe#k)7DMUGWO7S_4$l( zxMtV@VYs)M<)Kog0FXQQ+17Lbgc^!arrf@{?&pf_fi)OA$4X_dCTpmaJvhiDp#Sjh z?(O@9ia)xCrZ%pDjX|BgOPwB|5}zlS8Kqg8D+jMWsc30})o|@?X$sNJPPqB>?xW#| zPmA}BmbxZFxvQ)L-THwUTwmJvxy;qR&x>x~=N3X8W-t*XJ4T38ThBYVICm&N#cvSVam_)23v^&@1DOV!k+@R3v&F?~6UB zC%VzI)+!Az$-J{gWt`{pkH$AwtNa!b2UvAc0sz>ZzP>Zma!$WBlX{f1lfCi~m44o* z*3gj;Y`@q>4tDO>m=1cLthZ-n20(<^#x5a4fK~QnYM`v`1r4uq0FX)`YYiLb!~vw@ zN5!+*{W+maZ^*EF`#MoJG7T51CZSE_pmCCDVn8!PnmP*(k8;7$G9)D#hod;cF|IZ) zKq#!*7K+$?DjY9{%+|jmcMy$0DBa!dPyEj5`%WsSMrV@I*L`greVuQIFXUngw;5r> zB3jL$;kt$*Vvp|0&*3Ic70UYmC1YjU)MhB)X{PEl=`=agN%NC&xiy9}RTX(iV`7kJ zt8fi4K)M>1CWn2FSI*!@=M>?ARc z6JQWzW0$8SPUuUGg&lTSC@@V-dXEJffDh@WrH02ftfjOvD}ps#`qCxvb>tiQo!H#x z9ch|c0IP1~c1ot5V&5=Z@*X8={4Y#}0>ua!MXF=!e1<~0zGx6`1k=^cegH*FD;2M$ zGJ<10BUjRpLoY4cWI(F~L^?PG%+I0yn9q=02$p{_94^|0C#f7QjBEg>v?y_C!aJ>H zgSt>HjM2PvX95xS-@TyEDHlUH%3jeuVA=}Ks|_mE!sXN**u!*#V0W9TQe|>~c(EU1 z_mKg59y%*n++_9eNv7Rw2D736t=6tsvxa8gUT|g`(5R*BE%fND>79N%Ma5PP94-_MiVlXjIl}5( zC{{9V^yJ%@<}hX4$`;jhSp&A6!?SmHd$*iM{k%`F-oF20Dj;ek0l*GK(EEIAYIO4i zUxJfO$t;p0gvj54K2U)?=pdKRm5O4Hm(CAQ#nd3E9vNwNqx-t32Pgn;n(UlGyxrMmOB_zZR$y9tP7_gXy>Z`v`)w;<tg zPcN|*(Mp<}fVU#2Q7JN$ARCC8%Zt^CE=5Mk@Q^|pd5Rf-u+{HEq5ND4-fFy@>oA8f z5^wG@dpApJLias`$0C>N7(g@4pcJGTLSA8Rh|>ZW21kG{9tIwjE-A zM6PY|h8{~2&We#TD7>0HN;#{--hqn`-hce?!-%SGX{pwW?fKzrbIS8iry$H{nHR%h zY|ja?@3BclQaoZyAi#0?3SC_D{ew7Dpb zfc+4lPeI6j>V6}{Q0`kil4tlTZS^7IDof~WZw|H55Y%!Zx$@vV@>NtFiO;Y(DQb>L58LFOzQxJ?{N*8^I_dNa)Sf?1`k+0W1g7PV8-}67D67t zoTsJAAgRWr<}J1T(`WN3lv2o!Wc7`hMH_O%=^xFKG5_k>quD~--<-M^y1;<{>wXml zkqXr)iTG5WZeLC}L&r*mmF^3Z8OH7^6D3(S zs#}VU(V{0`?P(VUWQ4FZE2AQH-Tp9YSesr1Z036`#h%G_Lb)|ko(~MB!ZZ~BAXEDy zUyO4(DM1bv;6ap=!-dGW2%q0MeKt2r`!oSsHf ze~;v!;8JL>p2JK0@Z8uL*-^NL5{wi`*s24{K1GTU%XSY2K!W{}5xtBci>5}es-j^0 zFZPNOFe?G>l-%k*#vQC`Kt5gA>Yh8+$}zxQS3A27v;5L1N-KQ`5ziNQMQ8CNRigw+ zxD1*>wQVFIrLTV!rapIO9$j#Qdt<|;lSaw?21l@6C5KG?0H$e;QiA38&Urzw=aTvc z5vKw*CQXhz!??OCS~lOigPmfmdImoVL}Ojkn~J1SSW|w(m#WtjH6BL)_y;6_`+G$y zsr!3HTB-Yco&Baap8uv^kA73H$G@r9li$?q>2K=w>^Joq|HjGxZL>fAZPP#gZSz0= zZ3{4d1f%~!)a~&8_U-38cwryDzx~TQTFem+khNsb#D^B8nZ@rqt?b$B3P~b!WP4h_ z{4^)iup0f_ztz3p>8HH|Yd%BEhV8#ykl40T80E$C`HLaJ7|9J$r~~?@=?i3Ff`jLL zad88O5uSg@Y~zXo53C%t)fJeADEd?~@O0fUyHMQ{3J|*4fT4uDO^2QibkL1*lS1ic z_c3ErrJO}r=NkxIJj z1*R9%4rkGF7oY$BVfy~B%MYC;8tS22%ZbXWN=%S6G%j$}Yo6@^q8=>$&vi4ZV)jq)4DK1UUCMp_x$Dpe{hgVN4UyRVt3ECJ;<+ z7itWHskXhql{e})yCQVxlLMqL)(MT%ct2mrZFXwE^`ImInwnO|CZEK9WzW<{k5*{5 zl8||rwqz2I3eTQwUEctm>um=;FfCY-8U_D?6O(rvacjG1Yy(-xri^a$m}n8ppvxU`^x#bV;@bVCGXDf8`6?1*kxQ#PX^ zmCWRyP|1YFcUUD8(4>;#j%A?ZV5xN+@j(7i&Oq2M9Thw!f3!3M+(oqRT9kdq*omb)^92@JjBpRrbi!<+GSlEgel^Yfi%Xp6o@HLY z6+3colKFdXxi7`M;UmkBT&~w}=wPs$U87D8C0-lQ1NyLn6Ot=ywdt!#Q;L(iFroXA zMYjWcCZ`3gmI>`uGup8xt2P!ri#&9#edbOZJ64`Pt=UW|3 zTfcO$Yd$`nf}+K?WXynN11BH{C=|GGPvk1AWyb5kia zhUdZ!K`iy0C}f=25<2p}eF-?!_M*Zs9b?J%V!N;FcoXE3mV7>Lj^pqWiq%nWl$R|` z%Tc(tzLLXvHhobsk$J>oZI{g?eIu&I8LDvbG6YguejPjyU2QZIks?~}03|7ABjdO{ zI>j4$MO7uDqWY7hNo2Erl`*J;@vi~W>JfiyW$URhDYfeZ4M}}K-VoI6FY_aZA-}SL zxvK}NnHAbUg_QC185~R`@|YS|aE-8jFzdE<+0!mmx7eA*_$ABWEip>v?fildd_DTx z$M;AN_x{#SB`@G>f?QPdrJCgkKRbf4EL4ByK+WlN1${r;*dyPQ#D{KBioBbX(>?d> zSN{&O^9O|&Y6~kE8#nsy^0?A-;dPCp=Xix%?jjQT;Yzcvsrmm7i#P?Q88w>G4BYAu z{O?EIxS%+=@d`{YCsPn!yiO!V6L6WE4Rga$7`IW|`ph=1kqEV=`vKKbC{8O*{A%}t zUdZBtkQ@BvzD*pEO;U_j(%lSCV(?}B=Oub+e{(i zq`h&;UK6Hq7YM~OigG!>0GA7VgBR$?#P~=KVGw3HewrofYPv?MYRHVD6KGMG92>g1 ze?i&RnY}GA&7a0&hua{53XnR(31X~)uB!UA zeq$+m$jO>u@%;8~`thfq-+sFF^U^P~9IjOQSnY_2u%pxakpi>;Ul@-Q9aNe?@Tq<> zRkA0+8ykto@u5~l87!#o8Qee>s7Vx_sIcL5dbYEqqP{*IkhxS!lP=u!X$mJ5Ac=I>%#3#;#S z1x98KL{eR2-}M%5Vf8V-yCB}#aCnaE1Z6O@Y(y`hGzin*DLkKD`E)j}9i9*vAlR4-iBD-9f8WtUrZJjk5_nsWVX z+V#}ayb=MNIE77X z)M;xYFf?V#&=f?AN>PcQTp3t2ILaM%2#iPrQqqfP@4DlMW|j0y^8~5q zW>sTWL9EF6EFr60lZzOk#Nyq%@8Es#9;$37P#U{rZUp|s0tDr@>5o?ZBG25eX8vj*u4PhjEzSGNxIL)R#oYM}HL*DX(;K+Bu3k)W zMOSl^Kcw1umYjO}etj6?KnF}QXTOHK!vWRU2|pOx7)v}PVoOZ<*hop_A!rylJm%n)2Fkg}#nM&11ePM6<-8wv2F}kx1?@a?YvKwY zQ{qAmirG>oLzZfOzTefP_Kw9-tT|wMV4o z#U8T^yNYTuG=#(QB)H?qLf9z*`BxzGAZ>8_ z5#>i1P$`oG#JI-*;9(#6C@-_sTH7>i;YfSE4&NOsT`3SP!SjBEI}&Q44ab=?eNubE zQ&D7$L5(zzLK&{fE6p;LE9@ZHR+b{j(J0UeRvtSBx=>)b`JI9htreS(gw-hg0AAvH zk2C7<@@9Sm=dt^sN|!+LvfHia#runmGy>D7`vGtE7JB5E)xF^oP-TT|ypRYcCZ?T|$ zAoihTPQ64Ij>$PjeYF7+TG6iA+{=;h6PQx&*L&LNO$3O1mC@1!*+KOB?Yq0h$4@Jm z`PV<+ep1;0yVV!YNrjRy8=q1W(s)g+I8tdbxSzQU(v4#SB%$_epQaSTugKJ)!!3ysu={?h^>fKw|W)Ql@9`z z>#>rv*XPBO>dk<^k`|kKM;f}| zh~%2yx=n0-T`@EXVHPDlx$gcI-q2T&Z=`B%_U^OSf_e9Ga`o}UyStB{fli;X= zjiHldub6d50Jo+E7S@1vx2DkzdJnq@JIuVHp;WFMoLuWr)&Utp*TYyI zAZBEinaE0X$Urw^HMTjmNrF(ck0)WAm@)*c-AAI2^w3h_be>Kp>xE`M8k+e)sM&HW zjSrCvza7n?{c@-1$EFNq`fDvK=(%<=tsTX0_IkbFPB-6}bRMD645QrdQFXQSr>Kas zO)zu8iw`aiDd8>ZySXPhk_|D2sI28VJ(jTJm^R9OH#{>^FCrIYtI9}+cpn&BoSUOL zrYrV(L4{m)wFeYF5=Z$V3Z6oK+6x9xwM22Si*Du@QcWl?(efj9R7pxb+)Yo=L1>30 zMEv%>Ev$5>acVoCjtKVOT5_Y^7g(|vtHt!&3zv`T1@$TmZV^1#E?Qh{D9(>r<;L9% zP7O!{F%!<>2o)ukG_Y)qt3f<7J1MBnm?D&c|8hAS$0n|EUuzOvXh;ywnVSefo-oS& z$pekd0WzRdNIKzPQUlu$=zvK}3AV~$cwV@_2cz83p0N#@z%nfV)W{fdQ;der=pDJ|L%t z7&C-m+K<>B)!(AmL+`YG0FiEc_@KXW6)a0JF}rZ+YAb~(SBXJs!H<$6PP^v=ZxpXa zklgv**EL$2M&+TP)^Txn{qe)@?&HszkTctLjHKiLzWw=u{9}tIvgIB0eVM6C{C3fq zFbVMP73%ic^SUaP3f9w{$Z(rA;i3H0VzH7qTUz>}YDI+=x$ADy0oE6p(F)#LwkA}D zSC(_Vkxbqa!5&x-Q_fMQ>g01m?Gl!CQGulM)F)P;9>7g6Zk0pD6vItW$LWi69i_(3 zHrKJ6;Q#?Q*UjGY%=I{pA+RuG%YpI9=8*_C9IvP9>qD!3KyJ$R! zl?7Jk#zp2h9gH`y!y%06R9zf$8L+?&dpYAXKv`0-X%AI_*%O`J1~K~OdXKE$O4;8$ z_yo~qzdVU-5&kdidQL_t?05Yw8c_YtQoE&VNmKs>)h)m7yLq{$-_k!@W3=35Uts#x zaXuT;2?W9rR*_=T5V|&? zjs;aN)v@tTPf^yf8>fuGT-AKTcZ^u}QG`tCli+>Ii!vaKKdLEAq!vFcp9 z^vY9&EyLylYR!jAO65tz2b(*}s`z*uzFr|8*>bVB!L;d`;MWy~;v$^jA-|SyD!OQR zc8c)Ta;+8704Hpd3)XuWz@@XA1&1k0KJLOlR1r~w5Rk~_HQCDvBV=F=9`1!8)iHaG z8GLkKuL*lS9o^S!I}Jxj7X%_BO=)UJXb&N>4>2sSWaReUEAGlp6xUOl-8FRF(b7Xm zj;QZgtY0l*@e{HXb*?jcnV%8)3U0%_2PkPtAnzb$ytAz}ZUMxuw<%1TVZvP(_%cn$lGct)ZmujKUx8K@0+`9T~{ghOw&GNq-@(HRA{9WukC z;-$n!`dF%)$7172i<0{2 z!{rIVvI&>lr|!RC4Ikgmu*wx{PpV#88Mmc~cC`y#d(^gE+?^B44^P*Zsd}r>Eqw6? zIfn|=SjFx}e*G@;c7VRBJLUX(y_|tnI*gwBwv~AtDvHe;I3NUx^kYxc*>upOn!%2m zmS)O?me*V$Mf7+j(j48ReuWM^q7uVZg!Y@~c`>V#ij_D?Pb=AE1-FD3tEZzb6|}k& zm6b1kQ(){({Ui=QU)IQsZi4II?Wq}Qo9);;{z%d}q8@J>joIm>S(IK1N;jBQ!lHH( zKcu6o4d|(`w<7Mfdp!bOyVoPKwR`;>+c<5-E(hL#>Uz5;-k<|!fjOp;YFR!UH%Q_O zDc#>}BATEB-B)$7w5ekTB^)lLN@oW9CsR6DP^ilKk0Pdwa5V+n_dz~ zmKnLH=bJOQ<(O)@_+}P6riU)5_7;w6UB)BwN8gS9+kYF;QB;q2MoiLgn!6TO z5j40it`@t4e5A!Ok&mBAbK8Vo)QfKL#jHw4BhIQa(G#lcvnmtE)^l~S6ZMI#~ znG$``98;wW3;k#k4&`h_Aw@MEQbr<&<6F33ZXrwIW;kbwY^0~d9efr{WV>$`272hN z(4@c-DLb$>@9cwd7nc5*>9z|(Z|xQw9bkUPD3&qby;!f1RfSR)Covg-)>U-0SFqMIaCi38`AS9cP<(V zj!pFynlEo@;keD2%6;=ALQ=zG78eiss*Fk)r+El5CCp|Co{>I5&BgW3Q*~HK*LcuZ z6KTC(O7!qeDfkHxn4m`? zMca#V2faoYu(Z%0{l~n?EY(8PS%qN;dlV(@!Wc7@P0+4{@gk?{S9QyP}9 z4=>aQ9PV_y3-svuhYF|{(dK`#Bz1&BNslQmfkqM#`8d`qA&toUV@T+K~BOm7I`@dzczUE(bw%?EV(x( z+H0Vr`|n3kAwLWd99dvWq5y`uWP*j?kKl0vLXfnLB@aQkh1X2AA!a23tRKzyk3ZEM zAZletOS@Qj;7ZhCQKkax15LBl7;o(zf-+yBqA5on2pWt)M9pVs4jhfeA1Si~xld2u;L38#KttkXj(Rv-YyEjNUikxF84uWua&#Otd4RkXsHSs1qbX@kCr1$5Dp>!JA z-G*6NHgPQ0w0boF)0T#WQr(jWF=5_2&3vFPLG#ml!w8t>RC+Bh@8a~{XhZVH@4dPQ zv$wjNhNroSR>Bf)Lonjm#|7l{H>V!5()6Bt$m`VearY)4y7#90(hu31L57nH-q1t_ zOcR+76f<9e(Jv0W&MXY~(e0!eHML>mIx64b%~I}&_7CnT?se{%1eP+8Oj25y?kMS3 zB z9g(@H%ZrHGR-gt*p-g@V6PE8rN-oszS%b};?-^wQ5Q>g=08WrhcMwSGEv<>~Gh%Jm zT-ty%0P{PAw&e8iL4V__X&FRY_JJ#{m$mVb9C9|(4HcerO$3^Y+z+Qq3b3g{cgFsZ=qk>6^-ROLY9U1%-kWH|7bbcvBA^5~DSffF8KM8nN z(n?lFkATo}QwT5b-FUzRJM%1zB(FtZZ&P|D48)y{MxDILFYKDVXh_C zElgjaJ>Hh;d$hl=Qs1LaVoJ-9Cm|X%9y^*Z$-%o_%I~bC?I7(bPhr!=pB7eDza(lv zTmk*h^@$;ic75bMQixo@JY{5y%MJ(#11t3BMnZrl`-m}>*vicOkj+K*J+|+U$lL{}SCrkTWT{d@>z5-# zKh1fkpB|D4Ck%$|rtAQ91Fd>c?jTd1t7c3y1M&fGq1Jv+6Ws;jK5Rbkw_D7 zf)Ry+$W$7ZJIPWeUCh3|+3inQ$5rZ%41)$52G8Z5Ka7&n z>d0f@POIfCH;EL~EJ5(|wEYB$X|^Nu;s$W5czg&ay|VP@*l)6;)9&A*VLg1GW?6 zBvEwvIm*z834#%KINRR8|H(Zg6~Q?A9qJ{Xoc!K&t}Mxd;w|VNB*#N6Is?U`h} z?3rZAFk=r#%9Y0V$!7_A z#|>)tD^Sl7L5M8nNkvK?e1}8pYUkzSIu>k$=n(~jAlMih&DJ+?XJgs*2d~yENSUx^ zU0mbub6@MuRh)>>xlLw?!u0e=!yR~*ZppS*y)*{8`D*-V3y>TX8TOSj?4<)>2yA(K zLC;pZ!vuQ0I9AYvuf?gI#UAtJ-r~{Hj*?YV907cyyVRls)a=0_N8NmdldoRIJQv&?Lm#ix?t`gjNXKG(qtO4 zzJ`BSIW~yv`dY6K;N&k_8jf)^XHq%bY^rnt4Fpm$W3!p$>a4WK;VRi=vrgwW6pQO1 zbFf%2ItbqU1%fqX{Ia5)>mkj}TrU&diTN~wBvog4*Pm(cAR zJ{a;gI7<*TxZ{DMS`A-Wq+eXpLVh)3VHeY+(a8aV-g=9wT36WIGthhA4D@A(K1e!% zZWrAC`Q87#MF|`fUQ5Saqa!jgtO%M*_}IT%uG7~Q_b_GseqaZ|k@JeXhQ@V@9X$ zUKxG@eR$~33>Cu`7uK2L%y6GCLxH80HfisO??VCB8*C3Y=Zmp<5cDs%;M=s7q(Mp4 zOcy!E-maba4Ybbo33H!0#C$cR+j|r*C{$#I&OvV8H2+#t`;S{5jPSk}-;n_NPS6YT z@nk^z@9%=J%RUelmy~3%OBjfEyFvc+sxw#s#`3#iuSmnr zKnfQMOap5U{jOTG1Jn)rbTg5ST>}^`jatd5=Fc(Pv-z7*aV>Xp9M;lk*4cFQcaOkm z2`(w}8Y>7V-$hwFr<5IF9iyLZBMsOadYr4vd6wW{rO(%MqSBO!?v~d#>l>>mdkkno zO7Koa?GhfbnX%G-gJ?#V9~=Uw2oAYA{Q2*9x8HsI^5Kqyp?b#`=UA`$MIN7MU*rva zk#rgnJd{1f?A)u8yuUF`UCI9#K1!S}<_%;W+!$fvDGEr#id2g%Z^C&*u|&H2Ah*FK z{Fist+T_eZLCEyPqJl`i@l}&p_@-e^Vz!EojUW!cBVZafrFcK+ct+9_d9y<9C|U(Y zoO)O7lrgMqP8m*@B&qFUeN_gVJ}&|FZnzU&AYs|C9-<4f*M_ZbkjJY)UlAGv%ZfXz zQ`$loo@z`IBacogu1ZUA?HFfe6PLl$Aw zn#kgm-W%%5dm}q>H#27o6RrzSGus6Anc){aIICUYTxVr!`>5z1MpZ>wOqvoWZ4Ro5 zwp>=uKxG3340grBV?v~ksaN%IuG8fVJM40XdDm8{&C)}{kP3q5#AbyD6Qq8pJJ)sf zpPGXLa|#n$O2h#niOevm;nC2K6KV-gsI2|@t-}hZtL}D8ur84wKuB=bp0iq`3e*kyNF1}=<-n1JG1_M|0byLY z(yi`PE=GMP``jy#@h#@EePavL3$=gX{5}RVJhA+P%pqt^;biTBLfwn5ou>#(b&y_A7#IWweFK)V^PN3#x(S}y6zL#<`yp5_=ySCyMtvrw z&XUke9E5}+=&6~PnUO?A-$2dFZuuOUu-8{es2>71{K+YXqntCMe)rU#JRF(KjV9>K z9wjrUK*ITq=1v4MfGLEwqox({(+KnY5#Z~cxAni_qyDX^2#5yTu4 z)sJsKe7Jr81PWI%2-ZwN08K9$#6$67N8gdMjRmLyn1*l#0sDITEtVfTRR3c>b?&BP zq2KPM^VGC6#ocTG*9)wCB^lM_^~E=~vAC~@U&zmJZuuDklcW?VAvOuFCmAvGuw561 zdBjjBO7g(0g5nsXA=IMl)#B!Q%K97i2Od}%VzZMW%BTGpBNYXxF*t>z*@QC7`g*Z^ zj+85CfM$A+bgl@$?>Il6qb4{{fe)tkDf}BDnqRt zD9SI<(9%jhfWMlS{p`iWoIi{yNNs&*AOR_?Ym9*dYWYHv%SN_{BO3YvsA22VVKy6h znjyAyrl~+`#DQH`V0CicT;m*mw0yY4Ok?qnxHArS0P)8JQ=0+W;ig(rC(Tb}o52uF zkm?3b<|EhvUh+U_)#b4XDb@2vE?gO4MQW{^N%q5ZCR( zA4HLi05x+zTjnlM_5lZmQ9WjdJ7D0%1+koz7hL;XE2)mzI{ww|Nq&Okrjcl_3r|$`OwJ(m;i-hA+ZVYBRzW=C^~@Lh&B3u9QJ-chR%; z3|yymZ(_T2Lks*U{3us(CSP5rQm84J$xB*xrVLz-Lth;=lg%&egi6hLnSfy8!9o64(;|>D_)^DHcQ~ zG}QwP5eRQ$-V$PWAkM`iXB~s8osIRDo@J~=bzk@JK=O3Oz?Y(fh<;4_pRgJ3>%4k0 zDcjUE@kMRk5;$%ESDK6QbF-j71Fx-{6tYwP%Blua+2~YB$Er=EyQ=6YuF@AjSf>`N zj5r2Nt0Q^ndWJI_f7xJoJ{d;9<7h&+BiDBl020So`AE$Li#GRT=uS^?%yhMDqYMheU8^%TL6&=Dlt@;%-37*H5X59{P6a>X{g9X3fV ztQ2lRX_@^2L7nCX<0J=19%v4GcV?&wX5C@Esy(MQ zH^w*!dYOS)$SbDh%3>KOp$kq2Ci7n9V$o_ly$B9RGEzq%;lWvD_%@buyehGv8} zabwY^OM6S$Z%HSI6_1{BG678~WXU-m4Tc&sD%I(N&yP4ymnEI2lPsN*_#sIsqBihXY_IAL0QDvNml6^*p_YR>sHTUaPipn1ySE>{|MTCE zS9hxLMyT(~Vxs#l;!CPE#SM+)s@El|Q@o!n_yj56bQzUSoJc_}ipiXSBP;zg)&d5- zp6GBOvR%?_h{fBCVQ=0TyY2^sOX59nS&Z%S6gNe{Yia4BT3chei!)w6`~p-Swt&W1 zSndX0m7Q`s)#D?iQ0zeil(?zV=b=F@6GC2+y78t8sA1T!$4P-{jGTrAbfeoh2-wj> z}1o;XTRUny~t)o=<-R(hBI|5PwsBg_da>=%5>0de>MRTIx(J5^098p#vTz zpx(gU5l<;jEJkeL%BZ~@EnohZkQ(n>>p{3kC_S-^j9&ir=I8D04^ouS!hhT< zz6?3`PVm3HWK)72UHYBv8>Zo7dVZw*|1S*lI6eLH(BngDaFgHgzv7{~!{b7DgKM_v zj}3Fw*+>)a-q~kaTzEW~C6D5QhuAh=b;a5iD&!7S^Gi}h?Hsa~6dR1=Lj$U-=Pp>j zWw~QX(urpC*XCZHC|v{6GkA9Kg-fPXhMu;6vSny}tqX}oFP^!{0;}E4zTwOy8R*a@ zfw8_!W>S8nve55oK8G`;ZRC16ia%@dTtia^(R!N7#antoCm(L|flUAdi#lEl8S3GG zH@$)q(Xl%~s34*W z4F&ChgijhIgbALuSgabH9sOIJM0%VVGEmxeX{bruWIbadyp#<4jF=HQ9*=d>msPnj zG;XZ@g`hG{Bq9Q9*)NSX# zWg_DCpwAt7_6^ccaB)$iqZBTzAdOJ3D`lbzHHpciq9Z~5qe8q1Rj{3GSo+_b8c4cf z&kU6H#Q!?F`|0OT;KZraa{d;$1LpSl9rq;#Vz@8}=)6e?1{{I4vzm3RL9-6`y0oQ8 z%&-f+DR5xc&oa^F7(|pk?fihotR+>YbXz$X^MpHPHM>%%XCV?Xg2O}skW4g|^Q35m zWzLH3EhF;HB#7xki6KPZ84em5F7XI><8pF#<@2iX#;ijSNJEHY14xKGAbPR<3CeN3xw=@t+Co9*$G5fXY`O-~Z^fAZKi1v_ zMzZWY54+qUMT!zBi6X7HR9Z^REV(nRXFo)dVs~{_PjmV;RoyeQc9d3iclC0>*_mZe z4|ge&R%Ba}4Oz0|B#4E?kqp~0V&wtHu!G1jqC5me36#Ka94un8R9LKTqPMj#; z_x=BQ-MZDgvC_cIsdN8x?>+ZC{`0?o9mp6T+0L+o5R`bPi44r_PF8puZi8o) zG-|#iT)GoercwIMofo84UekSC0YPl9nSr=ci=ciny~WQmx8w>n!Qpicc72)I*#b;x z-?zV+K81>&#%-er;akXMFRG{QWKRLnsOLCmy}&?bflReCeFkx+cIBoMDteO`NwAp| zsA|B2BXkznLDy;8LsALCQ}9^R$FncYH_p#5hqK3zPmx1H(nf>jm+g2n`{+yvWQx!w z>IZxx<}5{6iDO01)~HAhmTGZsk_lH>1GE(&Q;d)(;AHH7eF?FgNp$6PVV2FftMJ80 zSM>@m794}nH@K;+$LZ`qWk#4BGtdA>D?@lzniS`1R|~6`B*ey#EOKx*_YZL6&2rgN0$&~eN|Mq&ny)szo57zpfZhvLapCd6}f7iy; z+&(fHDe(|f-s3c3-+BDG6J-wZapux$2j(msYe~e|1hy6Ikqg5cavUE(dWB&{M~eyT zPy+|z5&es@`upeSkDhk-o<4bm&{V}P!j^>0z7cMnaio?>inOTQBPOhWZsaI>*hB8R zyrQnCvmS@W@9Ku_A24SxSXvwEG&f~&-O4o|bep+Ogy(hv)W}3B=wi$`#Rmpf3Gso^ z-Xq32`3e_9h5KlwI`#w)VqMnxZ#ap9a_C`;rYct@X6Yi|DV5IG_yv>hK&1bnBy$ZzE@x zX_xDJ)yVbW;^sAV$@WPnOz*oF~XXFu6(W_ zu3ciy@hEpTB!vr-=CS*MAhNpFSgdOK7`2W6nMjG|c`i=DprSq@d88g2AqR%awneJy zDSEJLX@gEWR@GwvKK#>=F8N@xbM(sgI=ogcdNW>~pYAIaeR|EYPp(k6{_Aw}x{CLkVeu_XQp_Fejq0 z%-EK!uGt|?k40$|y?IPczlaFHm!M33cy`5-;r+ZU52~54B@3ZCUD<#l&p{f>6V_|I>^+W02 z!7&VJsi?$;O@Ur}k3(OBXYr||1-#J2ghua0lQx(tJ z*=v2_>0>P0$Me?N(LyPCZu^E!_s5~B5mWE)oF)?7uN;pImyX<0h z@<7S5bDIh4LcgI4+G!?@hrn1plU&M}WK7e8EtvT!!&1ASbXqh~HISx+(wjYEZ{w*M z0?`F$J(|SJrvQ81)9RThG}>cu|IlrRd$fL0)9GrGGWVBwIiM3KAsgGMZ{bToyC_>! z&IHzBx`77?C!sE@PaAD#*k?Kx8?AJl8s;oAHEDR=`=ymv^kK&Iz_x4eevoTX44E@7 zfyfM(si%RKra>yHhe$YeBpw&w;)@W*i4RUHk09lrsJb)MBD*t z)6G%*pt&hUATeWAqnM<_IAVh&Npr)gVV5+%S%$07%`ongz-dV%5@m7@+F(tu zpjbfB#P35TMO%azP8=*@FtBNCV6y^>&vyM`b=NBxGE zUy8*j|AgpWQo@586GspeP{2zk(Qedb`b87JI7j7{AEBm?*9@3Kyd!J7jHoGL>ZIXI z>~`~GOX^dr>yc?I9Sr+8v&#>!L-p8#l&z~EYe3zQnZq*QNRcEi*~1c~=K2!T>KBMm zW6Es>QyZ6?3R8)=VFU+?S8OX0X&?}{%oQyB3K=G*IQQeEXy71gXlIJyVK++kN;Y1~ zF4#r#<)-0^!1y)bJtp^theki5a-#F+%BI;3nPPw#gh0mlF+6&*`TSz~!{HV`5*r%$R8oYqOh>i=^DW~MZLmyfO=;FIMw9sF zaRQ~GokRn$mN`5=+L}N?8j!}87_0_>t&|{V$*DHi-D+H2C>S)j*|iemhhfP@n-TxV zad%fOFvYm!uINcHQe5VecR4qWQi8tH1lx9n@03_6&GnKLnBhnR^M<5Fa7d|N(4(N6 zf@Wqsf(<7;r^kor52J`8_45YgL3j2>M>|7}T4u253n)QS~oeNdZ~#>I?+}#m#;^d zo>CJ3)V=42S1GezLi{6}Md1sp9#|Hq0w0hrHZRa%%?s3I6XyMEZlQiIAd}imFT!=3 zj|Nwk8+gz%z^0#46eK2_8YYYGm2TPI4dNy@0d-GX$PzrkSudCaSr`#=i`+3Bz=Qp8 zq9f160eJ+3p2(B8FK^*O_8x?wM+dksYSDa%jDyd>=`&3NnK6p`_#hF&9*_;mSG+_cZdB`OWS>@|e(Ak^2o5p1Tfu5%<27S~Y9Z?}-uDV!*l7tdzb zj54P9Ld5M(3nh{#$dXHQy+p-y;GALhK}74c832QK@_0Ubc101$$@%=^(UbXkAoEQ1 z;FP{sG_p=eF2nDlG7F#$Ec1~hw%V0px6Yw4uy?h$nJP*t@_&HD-<49j+D44QzPUAAE?BxQ(jjOPC?ILNN(yF`h&(f4Yrs0ps! z?EHGMhzfv)k?c6+6wG;oBqyHC7`qoqbub>g$mYQ4`R0A`km+gizr$O-&hA}1cJ0t} z?YURf8DD(#(Q=|G$SVtodc!L+7lHV$76QN9ia_ZQV{H6xMm&b}rcxmXalLSnR;|$- z-bb$#3&o?O_PBOEms(gT4pKL9&H-stI67jMFXWDZw#9xx&q5Hbq&ARipe3{E0t75P zKAGcwU+YUu){>Ut=0G-Y7l?0{- znQ=}boa2Kc7ZYjc>_Hh&590cyWhqISx+6#lOYb#niEi-x!SumM-aLQ!fi&wI9R>kD zk3)U7Q)LU$I_&glj=~jT*~>FWquQx54lYSHMqyB4@}&@0wYpZPdS-U6akO$CA%N2R zO_t=mnpgBFqSL6Yq1a zcjj<{T0cafTIr{?i*U`k2O{pu?H_DGWwJC18M*Wr>9%yXEg*Wi9c3x}Kz%$H;kr#T z;H*Y-=)(lm4IF3L?YfkoL}qY+v?(^S-Hr$>PDPFZg=T6bTK5tK_lvVoSS5kmX#pWCW_Mm`CXLGQD4~B#` z6Bo1b^y=yB4`!d6AHP0){PgT|)c1>=Q{XrYTWE%v02I$zJ6R7WrxI7$v|~*7HWe!? zAU|77~IxN16kW@y;Q@&9idMhTT$wq0V)}pg$F4|c$S&lKT zK*6R%c0{DJB!bj+8+Y>;pd|r$L2jnj;w9i57{5S>$rxNWff&0c$I3h!L5uZ}Cy}|c z4GXxoDGJhaOzgNlWDd{`hJG9OS^%lrk#|@WJz{mQ4$%?(9Vax2NW>YM)C$mW@0_3Pe{rg_@qJsSObiY+^%AaFU@oCN`g6KD*kTKY8`)vnQRk zqw7*n0}Pw%=@|NzDjZZWytKq8y&#eHfcLiej8=2woe;CV>r6-%+vTKF!Ri|FWC?|R zho=xv(d1A_8f&U2e#(UL8C_a~!*M_=1xJ+Jp9_fA zf~Bp+9^W2KAp$=-=(H&~QA%D$974R#D`E-ZN_j=n~^*FI)VV|6tKVy zmDV*YoJDcMnn!1c$~I|lyCH4kSrB1rexd|L51^D`;My<^BZT!EXM0~yP^i5ga~7d0$^7x4Oha2R*)!urNW zC>;4IVn&E&>#fvjk>BPxRhNkrpw!r%`l8iEX-=t7HNsMvGi%SVe72T2#b9oSLxODd zCS;IsFfkQuImHT05kP88)W@i1y%5!`CmyA|YIvq`MJha*7}5`pAUgW!4VaH^q zqr+7qeh`&VALMrOhLJL0>Y+vZaJJqn8d!6u2j%d9QraVEkm13G4Hsl~os-odYio~3 z%2m#p!>gQW0m}k69@II$!K)`#-K)ngB$mdJQ-0%;mLOm6cTNV_Sz7jo$FLQo(i^{0Q-;O~F%1=z}nJA1pU#5$;T7qSO zrjt@Id{*6*yl+k2@W#ExLM=m9HaE?DO7Nu=E-;!)nRiU{y7RKNnU9rC<>U z0r>={1<&2(s?DZa~TBbz|K0-mk_@A7Qv9oSF1+ z*|3)rFOgu;(easGBRzSfd`8R(Mv~LB%;{$V#zg?TJ1)g#y75MMHHC%C(GZciPxg@} zI*4px+u3+sb1781cZg_p_9@Z4D_GPu(w+&Z0U_zhku^jA{evUK9y~lG-r5S=4)PcG zlqc+CS zcgZMhJefUy`s(=6V|YBCc$&VVfnCd+X~|LPNS(o9@=vd+Bm-2R=frAqh)%N}P8*~r z7wKp04D+_aUIS(nipv{NV}1cB55d3uF12E{Lq;fjrmoeWOjfAYM#|VCYpiWJ8pt!N z5mhku!^sjFOBhK4^qiovnZBE=(<0|(W@d_{mkiDH)tQtZP78~dgyghH(X2`pTp3pI& zr9(f|)Cuh>ZK_Q;7&I_Y5vK35nd42y)MP>?pVbJ%j!zOOXF5XOSj=glFw;Da4l}U7 zjYuzhO!kf%#6C3W1cUF1)1X2Exp+GANp5@>)avjH?-;vh4DTK9Oc-#D{-ofY>8aPo z?xO$x&0D?IK%)isn=ryT2?%GtV>mWdbPqe<$nm>LvzxFxfF&|{zz3x%hw!n$>w%&$z$WQea zJ-3Iw%}@LPt?OTTkGYvX^|P(h9EX=#gUB5GEhDXaN8ba^aHsa zLa#aXt(R)QlLHt%*oK;gFOD@W;JAaZl3^-JE;dBEL2w38^dxOI_BVD9wvn0#@i<~+ z)Fl9By+q&%uyvQSv-#%pXY`pf@zSbOaSbi>HN{au?19rn>})(g{Gxi!Zz%-CnXaLP zWdlsr`<>nK@D=Cli2NW>K*GD5Z@vVC7k`U_sT;Oz9$*)~4YQW<#x5fjs;M3%`-d*= zBHHj%lq5OCz<>=0Mwx`I*;yj-df*|T#B)&6C!eDd9>}h(4z6$up=wo|#S#&|^%)?r47--;Vf1!4RUfX=Tq$u2s^M z%UWqlfY0(c4?txS2s;zlTa5L9XsJfSw3kqc=mvgd%LK?!;C$WcR%*{GX z{Yy6LA*&S4)p<~1IZe?36_Xs#;M(ReA!u+;4>kLuqdhD!_GEXoy)k^Hl~aUf z&;nuT$fcX|GDuhT1fg-Gv0xuo)CA8cOyhZ1@`w4Q^dw`{;(E&o`2f<0CVFH&qel$g z6ORbl$Qz`Lx+BXNU>k-VCjEJMG}+o2k57(TT7rx|KpCbmE-Ls9>m;sP8H`#KJ9NOb zO8Qze@GTa)uGegtkA_c34j9KL&+uCy~k;lSyLs=e?wm&7T9JKO^<`(B9EOl=3xI97{=&kt$@@ep* z&{ELmIHF9JMtx|J1NmaWTc09vwt!Ll!n>||*A5<U?{#|pwUutKGgzH} ztk+%}!!TZZ-TfIN!J4D32-A1QWcLssPlktg>ym;+xDStzM3%Z@jFs(6E8-29`a+v{ zFnI+A;d|ztKhD(_bvzVddWXKmY!Mr=Rsg9n_k`&I=!dmng_l6yeaLK_zN4^-{mieXREwq>9*I4#2npZb;V~dn9kbq6}$yZ zf`-F*xOZ)8#zr_k7IG8fJpIV9o&h4>JKnl?vP0`QXuz=QJn5V$q`L9x0xVyANJ5b< zMRSG`oUG0!Qi?|9Qnok~ERLoQPFXppUjW*Hry~f+cVi5`+;T&C4X$!HyO=xYODSbi z%!0%FZheZe$75=okH9KUk5feQ;Aw}$GPd|KeBbO<_V7=LaInW9vyMF+oVl}`&x2ei zQl1SbuWPvMv~~?!2j(*-@-q@hW5+PU3X@3z;wYwLqSdv&eT9n5d7jwvmK6m|m=jug;+ zM5;Sn6%VA4@{G3xH7p{^?red@IcY(ZYx}8to%%WhYIt(2U>=qM5y-L%FA*Wkk_L4=QZz7ix=Z3~cqLV=j z4j{a;zlCfwR1hUO4kSzQ`mImxJb8v>)n{{%Dxy_zKmD|1aFXHJU~OY)6_%4&uIN38 z`=yLR4dfQ=*o%lvdE}}TDtfhYX|y8GilP?RCL@7h9+H+H!9DJY?8VgvkcJ7yK5ZES z3D?A$9%|UfwGV=igK9!>?}qtKxjLKtJC_*~LBm~BtKEO=o=E2)mraly1~OJ+kIl(F z!+Wu&`?wCNdcys5c+4#bY9K9JXGHTn4-^)fy?4+Brm71M^X4!IC(RcvC9ZD_HsWo! z+3tO+hsgON7ov-2;83>lzFQ=0L@|5$Zul2g8kFFd|+nH-lpLMzbaOZr7vUOdUI2 zfuN1F;8`TmrIcp+rRfsot?X>2@T!!!Xuq1qtT;|>%XUv_qf$=?9CmGhYLOA`nH>pa z^Wlfi;!ufKwK_O^vMdWLl73D0cWivONh3V)msfNvxBf{;H6aEo+XgkD`WC5%;r`g; zB6&ir5)!wXNNU%F8ab1xMtyPH!UxVRgK=^j)Y{SZaRjQHy!4qZV3E&Iz^=JZRdrEQ8%~WZl!rfz@}?xaDqm!Ek?tpq{ z2cjZ9sM+{-Sb;>a9%d`{cs~i}@JN%xIYzR|N!g?d0#+EkwLlzXRi-M9CvGs2#k(x{ z8X?*T@|bPszk_P1hYqLxBA&I}FCqR60|S~8iN$|x)XfpCy!X+j(GC~WWzB;)tEno6%GhiL(jrj#@lsfpt(p(7g* zWlMa~8Tg3;_Y{TY=OAR;+qPB&>Y*79YtDM<76Gohv*iMlsc@DpT2yC1y&>B&AfSqx zCJCoe6OZY}=VX>~mH^Vy1kWN^I#E@buYi2q!|n|rrTz{o2u#QCSU8it%&l15#fgr zFLht}5~d+9@VH~IPP9gG;=YdjwGtvs&mlf826`nNfbI4WL&*=K>l+ZM$*EoBP+Zc7 zQ89OCjHM^7sO#c0rCkowt8JmREf*;R5E!8yN4{LyzKYYVycB58!>wgBry%iNJZKeJ zCH?@&cotYylY%^g`wL_wBiNQf1i^T5NNspLLN<1Uk<+q<9roy8h)4;BN5wC>&(?p(K?1DEW7KM)c|a z29Iixm25Kbz8?Y^Auy2}xw1Ct^lUb5<7KoH^`Axn0uN zYd?4pZ4aRlqI3Z-)9UpCF%4@*uUz~vlAs1AVi!|c26Z9#I3n{VgVVzEnAV87%X9SI zK>!E3JU@SfGcvxMe_p;C_erQ9A$&A+p&ULK=LNLLnVOFFr)YqA7Yfzv*|iE{5Lss( zDZ{lOP8V8q61z?f42i4lAWN&5KM2Q;kp;0rq5#d1Is_s!I!v~TnpUfGd%^#PhQ#Pr z^1qQ~v8z99jzfa0P}5_$Yu&Ils7N#6naQcThDk$QALEX+-Oa$L28K<&D4Ny6w7UjMD_Az~9R#D$dgjMKdj>2qe$EdmDJPx^Ae@Y7JiNcRJobGF z!W~fnx{UJ-QqUYO45-lZ!!BuB$078XBP!oT0y!pO^WT_2>L8I2G~{9vPErKYl7b8e zj+ucu+7qGg+E}Ij(tu=I$>L~6-0s86`LnYl`akEWuDc(?ObYX%s@0>7e+ZP=$s|NU zK4clFN7_(|p@QxGgy$bFw%-ge{w7~m#VC;FR!C?mery>WnKsARj5&T@+DMN$IhkF)2I)zM3%k)#ZS~HiAPIcIVZBi~vx8jZARQBj znVau4fg`ruYj|h%}xnZ=Y^hJ?B}+?vU(1@e+S5d)Mc%% zDc}atUJx--?u9_d8aKtaSV}=S!L*8+O(x+|7mT4kb=(xzl$u9i>a`2}B1al#9M3{d zH<|J0rrqYt*GNeQkWVLe$4Y)wwhS|Iuhl_DR)U|We!FM7gOG%q2q0**G_;l)`w$)* z)A`lp&GDo0Qwhg$1>R2aTCqF0fs)=(HjQ>EjvF!q@LL;)A%OH@My7(817VdE>anf| zO6Rt+d^zg-%f(v5Qnt2J_tux&WvT#SRL)s2a55@@YTJU^YPZ8#mAz{ARIx%-a zmuV|YNsN;o3EDnE8WEGg2%+aelrk2RuZy7UZS1!m2DT2aNpRXFW|<%{giCeUB{Yhm zEUfX%k8fwuX(r0Ud*Rl@8YicWpIb^tGVlg$z2 zrYA>t(62iOyG{Ot&Ku=?8H{E|hGl{zE-mXCM588K3vdp{hdK#U)fWn>FghpJ9TY=C zM`j^R-)LAKI2vDkg2Q6hW6hCqp+i@k3UxG& z*TM1rk+4-6JDk{xn2LYL7JXfgaNA%86jRsyk!*r9cEUP;e)-}H>r!ufN!vvM6v(g?Su>L@diDm05SY8ru} zph8E$Fod)Syshh@^Yta(K8#x37^eozb{ny(7Du7TF1QmIa<^y!Qp82Fd!#2XDJl@1 z6FlH`{5tBc5YPjgK~Plo?M$Z)e@DInKXyPam)8!$fJo%6%SRU05?wr zL^RZ90CwK3a^%_T9v!UoGVD1XN4crndAh4>sQH8(!$Aig@gVehjv<^P!&=>(ou6OI zJyKa=ThFd8pPyZ|j`B7zMZRg!FFbv8&YEs|>DH&dVDz01HsU*cc~{EI;hj|-B6j5E zmu*Vi=re2+=2Fl;2_oA1KCS^1(s7AJl+WiBafGS4Fr?|)LZH@A(*U9WF_tP=Qsw`# zsn8xHV!|Iosq#x{v4qeZzjss^&y*0o*47dUW4ON4!IMAXA~f=|UE>F2WL^$YQ%nGm0@-LtN$ZA=HK1;=V{mh0|1QZ&ky~qR#j(O_7Uk^4)F#<}n8DHJ0+Aw5vvBt=RB}bkithjJC8GY&- z#w)&Gh`^Y_EH~Ma{pOVmj_5rb}=XL1g5j3N`tkmVJfJw?5&}y zHDaP4Y)DT+$&4*EN6Y8EpDit-KFEc5DlpJy+8*Qrd zTpY@9yJ>hzC6K{1JS1VbJh=vG|3+DsK3T%4BgBQ6zQU}$2M8AfB~B~9!jyw>YQSZ9 zluDSw7>JgGcr!Puz8TInr!qdKAh3#i~ z(&=}x(-wrGK+>6P_xr!UwWNvOt4;3_5|Sd%P*Vv@%{`z-Hv}AU`vi&M(A6Ss z$u6cm^s4=4M1EXA4$|X=3^4$P6qBQv)v-RotU7Y>=md4FuRceZ9;$Ozo;;BI*w!8d ztGH5b<~6N(JtzoK4L63G;3PpTkEjbku(JD##$R4Nm}37;5ZwvN3I0Qu?9dCF9I14U zKveQNRiS#XkLVIbkdArR1Qm2+odXTTX2-QysqWj_WxYbS*GW%YER@{CDIj9ayK8hs z-7>&FCBQTnyp%%SN5O444C`RslLSsUrXlDl#Z9L7lgzCNtPj;71#@^+r!iff17F%aj?K;>1B);2wlw1!TwDv#GQnnpt52sX+PYWun7)^ z6L?C54&0lRQR)zAH2=H>pgI_x%nlD=p0p3^9bBfyJfE`W(9bwHbmn@fV-J?UjAhlq zTL25`dgG}PwqXy0Og44*xdV|x*#=3pCJ25*2 ztsp5uAnGeWue!~#766ENlsE+Hv5m4tlC_Eb^iats2hXoSHcsb{=U`2<4`_k|!}4S- z2DOz4zy+A-23K!_cu2p(u@p8R52gf7ztmeT470^bla?J50i?zj2hcM7F3>?--8l%~ zL+dJ-_PqG`@rz0K&$Q>>Mdx|#6aZi98PNmwG14;gj)f}(_)r+7fqdKqA4cP>a}6b}~+$NrIhUP%9^ax-!Vr#;awcGl&n%vqwKXKe?h>e0%>GYbDxf zYk1A@Dlj&hjYd1gS9>wZ=+8c@#iV3%z!YhLWQR8ew#V{%SVx2@*%qMs)+q~sQi$?eKdFF^WoM+zeM>hi)8rsmp8!K7!c z5L?thY97&j1NBF%7h1gVkHg6OLB1F+NAUH$3NWUq8}!RTh}=p$p$Uw;jMpY53EL85 zYI^#R$0VZzhi-BM$pXGyEd+cRXES=3-J^7Z5k{FA=7Rf|?7fX4!cUSWVz# zi_dkb*{SGDMn7lL)@WWF^Svn{p%ah|Mp%iptV}i&wdBs=PG3>|O zN*)0oxZ24FU}Z1QKI%YCSjc3y&wK&$5(^t=8Khc_rzFuk9@nCLCtIoJSqIv9vxYjG z+o(etAvdJ2-Bo~MV``}%+&zwFJDJiUg47sJ<4hF^f4mn#yYXSdZV$HIJS6%sgtgVu z3qwugtt%!+X*{k2NH2_r#8CBYGA*tLweP`H*)R_0b9;WJEQMQ-zVPT73^yD-2!xYB zi3;H>iwu1S`@tOzMhcd}>Sp{U#w@FuHyVUslbypmCr1Y$L>X)&q~%>~>A^VA((Z9y z?z)C{3yyyci-#+KJ>lYELGS9^;@kvF*dUTSL44}B6mq8w9B11@goJYnn9)YEP*}R` zEf`@JWPQ=lAVF4V(cknfwne)xfDAP)0hgQ(mRM*}bXvf?gOuC~aff7!U}Wv}P(Y9) zlk_h5Z|4^TjV?Aq-iJQ!kbkKZe+5o5H)VZ*OO{n1yK^#tuDCTa4C=wyDb`N<=i~nVH>ylX` zcqlNh=!1wz>Ej5NXzvhFz>2C`#Pby{S<}hTG+pjVgL>I!`k^ZJEOc6`Vj@|xql_Uk;zFpmZU|}b*Z$Lg2US*-Za(2KpGr2{K z$;o+_u>*;oGS1>Ur9ESjWJ-I5CLv={Q`(aR)+xCI^Vo;ROYxejj({**<4w0BwII2? z0}&gN+ksR@lkAz|T z9fWLnJeMsw0!he#-Y)?OOgDDSxXaj0r~0#%(A*$bSA?u=dl2Wis3*`FNvBaZ(x;2x zfFVpmSJ`XX`y7O>k_Y4o6+{c3fj4y7!La=F6lFUw`n*J%0?T&1`{>CW56P7pv}`## zu>Ij8qs9q~ury;H5XFg6+T&>%c}PabnV}X}1q>0pSg=UHgeMs~56BbC7w49wHi z=0p%WvNuh3KmhC@+b&-lDteD`aowe(+RZ`Qyt1LAUVERa3I#}K1 zcpDxv2hA{KHdPTko@lz&S}PZ=>UDdEknmXxC0x|utAztJ5%Z=lZ$!lTZf zg{|w``r`a&Abp0-FUcSZBTSQXGrF_DsZiM3MG7=|E{_+Ol9JYeaSX94ZB1)|D;FDR zLm)iR3H&;bN6=HRu0VA}vBD0dR|sfclPEw+<2WQxTIhJ|W^}d%vn}~i?gt_lD{b^8 zvO;)ZEr5OKv_JZXEgLPbsncPvz@R#A1m9W($QS4s?A8PNYBt+*Hh~RSnnsRyh;nUY%!!e#E z+F@IIro3fq5mnQBz|*kq=o_h>yTK%o#%n?R08vaqZ^V#5k=%&E87IgXB=qYNRMbt( zAABX9pysOPz(y+)suyWSQewo$Ce}%g)8u4yFg5N&KQ-isL*xLyX zNo(DWCK@FT5vJz0_gw-X9e$kjr~!3D9r@R(rA4@IqsA969G>+z zhXa(3*ASyj;3*^2-CBckT#emvdqGP__F#1XAmbL- zmV~I_B(v2dXrn~fgl@raDb&=#H|eZyA@!3WO*`7GEkJEz`$8*(m`;>~(smu(Yt|xM z)FoMC6!+*cws{Yx!<}86WMHlsj0%Z@0=tKx+?Fj&t$ApeLkNAFSsUKzXExUhFdI0J z(9ozaiLkJYp?G*JMhD)zHMTt)>_uR}npFFOEboypZm+qvme}VWjue5?0)=@fViE-E zBH8ED69tZfkRl_GiB_YG7s^XvVaQR|jczFb9OX8+AR4%SJaXl&Pff38S998dl4OBU z!@@EkJ0A0PneVh^=OG>>YB3rwKdZMWy|~s(0Qc174S^0g8i7WL`8i!u#-H;rbDlT=)w{Sn+=99>(Tc)Oz|grKFmr-Plb~$wPnxLf45&BR-jSZv ztW$tZ54T-)SHGpHO{XGU!(vqZ{9JM9%{LT%IdwhEPaRqxc(-E1tV+hSEMzb`N`k3*JqpbjQ4Z{`D2yq? z)Tlvv6NGI<@R{fwViNc#(!%gSvVEMc{fbk7rH+Gm+{%7ybV$uAIM8SW2lzdRL5`n1 zrfVAkI%uf{fTYjh4y~ZdpxO_5P}&S^ktvt=E)q^Jfk;Y$t%ZXP)@GVsuc#lc?l!Of zMZ_k~rU2U7Hdser9m>6hL1JSavkmOCGy=QCtWM;Is_fbfjs$1&|v1!DRkNO>9`^nWX(` zzOs$fKmgUgH)I@vEFT%t@dY+bW_OElC1~Ed34Xdb_ktnsf>C7LiNQ#Fz*F8QfSOQw zDrVcUXs51)`LTeeL4cpKeYyZMxPX~(Qv_2CF@%*pITV{I*9X?(mnAbiXQ9YGl1be< z-qN+Dzwt(0J|x_nfbmz513kZ(nKDzszoUtYlpm*xpj3` z^BvgrqoPZ)1{Mp#{9&0&p95}LF5hcycf2~Hdi3bw1f7wzPpa&ajicD30SO<_Et4$Eq zccaOo{!Y)R5N;G_@cuUJxM>|OqPunt2M`Wt*=~^geRK7~=Ew=TMs_X2)R|~ELFT%& zYp#JB`(A%T{o5qT4V(|=mz;VbB{81JAbNu<`F6ID9&m(Ze;*q4px7%eYM!G>`|hSE z)}|ca@IVnNyW6O~ESumy_+%@NMiO=`QV>hq*x1`S(8xFhkUrGc3>AotYtal93Oio$ z{if={s@@JmS%}l>ZS*c-Dj0{EK|@4jjeNgjvc-@x;Q%ZG%@lHbPqOFaw_bxW%_y#g zy}bZ4BFU}Nm~R_WN_+y8iqXl&L;>J>%ax?@jIex&Wenk7NVXF@#=F&m z;k?XmT)1lU>INsdB$*mcky=w2U`?EziWh@k6bCZD;A8ZBwnw==bxU3Lik36DRI!s( z-R>X(>c;+XlqGCHibubw+zf2$Pjssmd!kqL#2^)>S%ni89rj~UzJw3EW<|LWN{uwO z5j!AtfK$!n!%3NtxIyxmNa*0V`ohmmQ7Mg3%IdLA$ZS;T;4D4c{=xpv{{7JeewEuh z`-g}xb^oy2S_a!WuvCj+>ad|bYY-kW(mdC$l8`9G2+8orQF$(705C1FKs|Ywhgj7Y z*+?fTci)A0*%h^m#Ak!c2u~Z2=L6fxob%$!x+&ojjrv6{Xir@)EiRhqJB|@SUqWd= zwO2>btCV8XmcBm(29hYern}>Bq!vAk6~|?v|-27hs~7EP~|m^l(q)QmX13 zGdz^3UR^jIyyTjr8c7)fCpkUBP^3pL@QPl5E&~aS7^ii1b#?jZ^!e5N>XZ5T%??9DfJ!HU%!FH(qtTpVifiekV1YDE-^5z_B$w~xC_C;lg(FVX z9cBaz1qdt>#t;%ByO}VB4hhr+q7#S* zLf@TV(5G8mnKcXaWFKV&5tsjD{%n4=GgQpv84OVG&mKRYOGaqcX8_>`=rqLdq>)tQ zDS3eSKvHAQag@yQaBqW>#B!t6p>b=BL1B~P$plSo8$5sS!Z_ML3OpZV9=zZy$n$gJ zG~L+Wcz~&S=y;#OO2Q>0M?B50DYU$zr#Qz(=|nQcD7iUPG^kU~06ik>24aJdDWpG4nYiTS8KYTy5jt&!Oh?N7h_(4GL8W7ToE@9XZNyer)Kb z#9}Foa15R(ey6#=cxRMMWxc7J4pBD^r)@xbNOQma;VZ=ri%{JZWce1c4VTOWu;g_R z2Bf?IGt90Xpwe4HL*-xUy$8&`(Y1mrU@T1vEiENDtv{$m_&M)LGSt=u-oYftbLfn_nPe zd%|Wn81u&Y;R2y+2ZCu}32mE;M{X2?p}0vC z+#a;TFV)ONLPArK^jR}J6bhV>n(d_@kV%Ige>CjCJ1T4XkMYFrOXU;0zw0OVYESI_ zuAkViJ+c40e&V3^#KG_Si7T}yuHcDW4n9$<1*hdJ6@1t=oL1gQ3zGXZBw#hv8f)5e zLOT+wj*mQtyNg)cPF>p$ZM52QD{FCZPQ}?VlI2=U`bih50Tz4ak>k6L^d0+%PWRox zji!Sp#g;9cv+B``MP1k4MR#Pf-+^eBBNJ&G&;cM)YFI7x z*|S5Ku2+r?DJ#e*G-0JEILU}(H4luQe|xOvm{P(ACwDp#qq%cY&XMbhE`SVn5V5K! znkCK>Y7yTFo|JMcJ1Z-x$4)jMUF|=A?G&Cy{BXa9vnY?#V%%0HCrzgg(fJ63UiRS9 zHf@PB+(^c0-wmxgP3LkF2bSq|OQ}Tv2$+_Ze|{Zv=Og6;MxQ;BmI!BE)E4%L%UgYq zm{OA>i(SOs-+^VXG@JPaJ;7)L5DsvtYULF{waWGYMfx^b&}M!QSz0$|FQDZE8_YC$ zw*JU>XcxAFo$imdBUc!Ex*h7!nQQZoVDvyreb zaD3;L^t~qPZZ=_xu+(!8x9TFeP)m<HwCnK3c|-?1EkM{ytdfVqXwo`qL6@+?hqYnsiLO8EUC7 zepI`RTWSc-B?JG%$r+t!-HgdfJ1%ju%j8oQ&Dr*15G6=IjUQ67h-s(WKRW1inVo3O z4OlI$DkM(aIY^O?!?=EUhC$96XkZ}58IKsQ$%jHAJY4QeDj^8h(pkRM>-A`dpZN=c3DGwd(e7)Zf%);ZX=PFzmSq*SFZ-0XMW4CAzNj${}j1wP_Tr z=MnKrnozfC4+0p@lC5YHSae*F4VkoPH%WfHg%F58*92K+BaQn>lUm9%vCYVdR$R2T z7BQ=jrhMX!m;jF6oW5cUhxCAXHbSnod$2v;fp=YI7$v921`y5|2*k}RuGj%wBsGXJ z+>x~H7Gz6F_PVNraz!5X2*5c~$m&qh&`N><3bfe|2M;V^<#^n+%@>Bp)J39uT$hLl z+GW+>sr-(Q=d)*GtxwM97w{-QM`kgbQ9~nPLcOM2IU>1ufERh@x-f77ti^@hx_NML zge`S6LBM1NX+RP}28U|}kdAa4d-VZHx*+evGR@65**U5Lrk{Bb-s|f*hv=1~hm1yf zbUXnMi1bAp5OGWo)lm{Lx(&Wr zYOQ0HaeWYpt!z>8}4V6WS<)n<*1&({?Xma{0NONvg& zNEb%ko?zd|bz=c)vDvA7sb8Sn*w%u--nVwB=^IS{0e|(d3b;?~d`TdUtbIw8E|#-X z17VWBpCN>Jr#mpq7vM}d#U`2nZdVWJfOXQcZ!roZNKise-(oEP z_4(x>U@aMR<0Tb%X)&MZ;5nD~t_9z53i~0mn)2`PRK9HONLJoIy5$kYdy#hgfn^;S^c6MgO1UJ9pg(0VY4l*tzd!2wqF8+znd& zG!Hew?L?*(8*+B)f6X*81A`P>ST+Sce@ITDeoaAh6l1S6#)+b-g4(IK$rhSR;+h3_ z5vUtVIawKQTrmWlqznr8Kw#^`x-^>7*vp|swjz>ZS{6669U+--d%_8$V38Qwn2=afSyN9KPu31)&48h6avPcs8SEb7V*{Vi5vX zaz)-D!J>FscM-|7k#5nw4DZXPy8xD~57FBK>*E)FLrY<>xxF_$hK07r&)9)38GRoj zeig{Touiv}EZ_RnaPo36e#7a8t0!y<1JZ*-A9R}x-z>E35wb_J2{cD6vGL{XjM)|W z@{GP&(nw1Q*kNlEEL6;#)4h#kQvLo)yT9HYKxNhI%x`s8j2lm8%f^Ogb^l%v?LbeI zeM}xuFM1ORqh9>j<%=!+5Z|lZFru4s<91AxWsMO;9pfd-x7N#(uk|EMH>77IO2?hQ zQZNw{O9va3P|IdS=aMmr(+8h%rU_G`>lpV9B+Y>p=6GlOrY`B&W=jx}_$moGZC!FF zj$x`D)SMwu-D1u%wxp3VS})gijx2fE*fXauko6_NMnPgkR|VK_eW|*ndM#nQpcq{U zeCi(Ca7)K`?`7AWi4)p#U4@H|x%zZqEeV8&H{_6rO(?YuRGnJ_8S8H?%$%)|_e4zL zy1OVSa58!kt_374<=Cq(lBe)i^VnjmSkurL+B1Y(xF8B({VQA&>;Q?OZCqX)>)E=a zzmev}_C9Xhz8SCS2#57Q@ZRV?m=3BVh5B%lU*;;yZVkME>tq{GZ&&%inKSMx%eb|J zd|ZW7A~#$HQgiz>Hx+A#Q^iGd8{l=uNT!er3&N2OpM)^xq$xE;5QLjMMLZgvG_FJS zYK;@kIYxUu<4DZ5qgPViUCbl4Cxj}A@~+F&(;mh*Hs7FE8lD`2?;j#{4mf+W#jt8x z8-`G_VXmaoH*zzRrA0bi%>5)(62{BxOuC6doa;|HZDjG)CO6|Xlpv||hWcAJM{mgU;Vm3@pIRH=uHOMZjM~tE05m|cP0&~3 z^eh@|e#-(-VZMZ>WOmAQi@1ARj;rZ1qw^4?))wIJ>1#+V1H+)FPlm5Qz8cORKR$&) ztL|e1_`4!RSW^>msJUaGqv9=PZ6A>|MDm+r-_>B6cRN;MnQZ37pfR zW+#pPt}qwGW4VaUHfGjFFCAT8KD`_w%82xAveC0xBGR={o{?R{qT-U%0ygSGbc0dj zflVmLj*LynNDORY69v9(oJElS1rj8}c|;5;^(ag)vLRUn+8XJ&eyl#~wtpi~LqL`v zlgTtN!JmzZV4#*d+(7W}CTENGHO>}o^cfTc{1=vNy+t4uV2rSWOp4Ij1(U%wSqyFr zGHO6R^wFEX6_2O#x|SZJoCbt1y_p4PCM;VSj_&gYwk$|d8<7cBr;bpgGCOUfS%I~Y zWDMtr8*eBU33nLU#!N3guO3@ZiiZgXL;cQ>hIW5Agc(@+|gdI3qxPy*Fn3{y`B+vOk>dVqtyguU8g6yNj&Ul zanP=Zs(N5z%+;`(BeqM39AAi(XujG5+*h=7Y|V641ZwuM!lYToxv-D-gb(}b!F8@MX@EXQKU4&9baP| zjz`!C#NGO>XJP~y`3+9Q+sFq_GSaYhc9EkRb5$?NeY65=-KbeI1#q|VgpaU=&EsZP zzIpmKP9BpxrCe}^U1vf9>S0>+LlBGz-3gbivT8FKQxwE31FOadaWxs}MjX>-+It~O~iYU~A=qEvtdD;HKXP`k{pun$bXdR^xQK?&wT84}1C(2+x`v=N8 z5-dVtJ(1a}*&Q-hQveS!%8+w0x&as%BnH)t(WrL!K$;NDtvN7oc(HND!WsLUEnw@Al^#1B2-}ZXNqzVq??A{y z(G@_bq?$bUjL-MXj5hYeliBRC0g~x#L*M_(5gL5?%V2z$H35Y=esC~B`uA&_ zu}Ldva)Zq=B)XdLR9ClM(Fl%UG~U^V1D0*fd9_wClB^0wr8hYfBoX zm1|1u;0hIL>OiB3g9$t6fvU(ajcwA?O?|}>e3COz@TSiWeyfcR{0SHzG#PhrYSXKo zJ*%PR45%AKdxl^sfwHhHAvk=X78~9?d#QES`tXNaySpw31hs*c3ikqalxVa)bShy$O6_Q_l2B7v^ta0s8_=7*iQb3mwNJEyukIRR!5W|C5` zrn&?*JOg0lRTmiAx$7VeyeKHrtNnmMO(jOr0b$X#)~PGC$Ee5ahE;scI*Vn2FF?6& zOtwz$zyi!j)=;ZLpbq)R<7}PUfe6(KkDPc_REx!K@<0f{>eiII0V;RY)rjjKs$+}p zgbLNjT_tiu=7I+s_eVGRpAI|w!Nbl$lo^C$t_iq<6!SXV7J+cb*=Kwsa*hOPa%`RiO2fF}}9av>JG>HQmapPUs3cwt6nUL64`f@D&T~PVkr9`&?VM@8Ok|jNh76Sc+avk12L9ezsn{}y?q37k zeC2RsI>mxYj0bueY`Q@{?-QW~-v^(10#tH&>vavsf8g*I${{s`ySmfx7ug|yU7p;%J#2UA!pP^u< zo9*%O<`U-nfHaNq=NNr4Yq6%??m4`AVEEN}s-1^JRMW}!=rJ<9jd#WeZkubq3%cMh z;r#J%DDoVFHjPB2*)f0lle$8^ZS*VJv~4c@2@w*+(+FwfNREyi1+!UO;w4N|#GaTJ z07$S-VVh6`sd>zgdo&3yM)nSqV-Oby>(%Jl;)Mrp%;iv$pkop^`}ww9Fe+K`|hTGlP!&5ngn%0xBksZ6uVf-UZ zoq`dl+lYIv?zVlFd0jM8&jD0^lqj6H3O`e8;{G+RO2Ki3)(o! z!SaJ|%fWhTaR3FmNpAZVc22Gm4|?au_NlYRiDq_fBBW&(1xI(ZGl5Xrj2Vj}U2u(< zYb8pL^l7Omw%Kv_2R|=EO{3$Zj|_%8qumfE3eFU&szrwJ691p$!E{yatvkBQL{j=b zG*SriQk3P_(r|m*$W-8qEUx%6rlPq)6@2X(lWYFuO2ZoDs&1p_7!D{{=LQ{^*L?6kJ9`GX z*4g9d=kuG>qY2GZvr7o@#)~=C=`oUw1U13Bc97Xm7Nl;YMApv$x~jaD+&07Loolc? zU>X?Fzd6}m7qm4rNc+S&_D04p!cz0#N-cREv>>Eh43*s}w?wvIi0Eq2q>XDY+Deuo zBMncP7^1LX4zEp0=tUacUcJ!5Ma~F(%7ABEGJ7%+L%3A!9&#EO+Dj+s2({6Pk+2Xe zLzggZUDre{{57-^d4m7k+9*_gCE~$dPU7?%6l8uoTrKdHq z*R`(L-avD%h_K+%AsZuY4nIyfvlyntKIiBLo|Va2jbo*51zs2UdtO)=I4)Lh4x3ch z%H?ZGj||SVnPf_oA5Q;e_BkA>8dO-|XzLCT33XZidio35RKx14&GfvH8VozL4o9^rR5iW*IYd3UlMBRLvl6>ZZe0_xzzcQjPfw{%NpsWTnhnlfawF`klekz6i1b= zCtI6tT&8S4#ftPD*rPm$OeKYXutyu(GVn^h-)8#=V*)4->W+!L8edL+ehhl5e)@4J z6D$s;!~w_4vwah!#-wp}u#q>85LI+%%N?|hZ8l5+0rwdHG%G=hPLqtuz2PCcNL-=8 z;0&4*ST_by^Z717dM&%{b{$P;a|Ff4AwFq_G_wJV)MMmEbDG+gNY*Aj)uWF4XJF>I zBsQ5a3j!O4{6tdf!0X8XQ`Cm*ehc#3x3(+>+sOdug!)hqB23e*YfoMtt8e4n)%J-7 z+>Sl+trcPVP{X!Pwv~R3L9=MUx8v1l1LnKYD_W!rWS9cvV{OoYp3*O7HD+cpw$8}m z0;K*n5*`qv!+u&aHX~4)$0={d(Tr$_#4>EI@B(y+<`XWiO!68?EnRRE1edAm(#h1= zldVKS<#kP=zI&VPf`TsZ$>OU`4>E>4umvRf5#~36NDg8EtT&QXSiRI#Mw$Al?`8jMA@8A!2)G%6;%J%3O~8gS@N}}(0PW$_|(CJho@WPRl^cS+qpo)E1J2*P&<1?s2!LI+QChWi{TU+RCEIz z3=K;{?`WVOl&<9Jr(0O5XpQU&L;i+Y{euas-8G zA7Nrk{|K+>BLZs+Be0zFz+=LiGv2la7t`P}Pi^N+{z){xFI;cu}1WO|53!@bqJ4~V^XBvVicCoQmITe}G zfx^)ekEC9@B@(fqx1v@WO}bz+-%cb6HuXpn!eP<2ZlzF!)nV$DK9lF*aN;g|V6d*? ziSkCidBM^xli1Wjw&wRbU=cR=+yOJxeAQ3Q@i8hZLa*_Kdxt$k()d8D`aRqcq6wzv zf=@El&R{W!Ew>(E`l676_Uk ztagINq}AM|lO0HrAoh#v1U{`s2b55Ct%9*Xf}C&fAGeO4K7IVGbpd23jZka-R=3@4 z-}-#_*7MiTXIJyvtYS}e5S65hQ-1w+?{=rfi|u}U4RJ>1j1V_}sj8~4#lPRd-#e-o zzWn~LeP4AG_3-z1@MGisAN)h_`muNZ_>G@<;iuoR@&5M4``-P+tMC8d#{1q^Rjtqv zO8&fW=R^Ikg>vKleDC|-z2k4p;cFTEUIV=8{%^)T;g91SzWsgguB!am z9~8{qz2(o&zcsyEV{$M5hE{k1%0H^-`1pP^KIHe?9OTdXIkk!7`@$%D*v88M&gQez zN7XxC#LsuF-rB3a>b>vY`|1}y@Ximu<3sQGrW@b$zv@Ly<-%Wn?VZ&> z_?^7Ljq1aBwYpKvW`+9q*5DthzNxtKk?LDf=Q}taFH|d42j#EfpZ$F#{7`uVE4jS? zrrQ7E*eYM?eE&yl?LS)e(U$M~IsAK}`aa$Ni}52rimU1GM)h*-ehy~(yHVY$!EYrX ze%+{U*WkDHzE8(ix8pDVxKVw)*8byapVrmKYwg>$_HDIKy=>RocWUiBwdZs6)8CD% zTWjAWIa(JbequjhSzY{k(|e>X6{WqX_N)XSCB7{6{{Rg~@5^!zm6Ts7(M2IjMD zZ}a;nW0UWTzxd-u_5HQ_r)u>dsMR-W^)*t)%R-kgIfJw ztv;>Qk8AY@wfZZy`tPgNf3Q|Rsnut-`dO_$uhn0z)gRUBpR3hhtJR;@>YuOGpVjKm zYxOs3^)J@yU#iu=Qmg++t^T96`X8*-f2>yjiCX=qs&YlVqk2-bc%l0FqJE?L+eQ7I z)rTT3Bj8=teo_Cb>PL(EyQ^O)>hG!k`=b8U)px#-zu>*qK~evj>L-f&*H*t!)ZbVA z4@Ld`)r&Xs=Y3uEN>Ts%>ZgnPH&nk;)IU)DpGEx}tCe@=&--9?S=2vN{l%jGd#b-* z)W4~E`Ca+_-&{Q|>fciRg`)ng)o&N|Z>v81Rr&qjUY!>8@2GyZsDEemn??P*s&9XH zet)a_!J_`%)z1|57xTuzU!)Gw-;L^zr3!xC&`Fmr-N1>L|J^`~{O?9p3=W{h$D&?z z9`&MgsJ|zF9O_?PtG~Ba|C(C;Yio57q}kt%N+e^va-;gX_?tg&RO#fg`Zv_zq(sx- zjp`dy1;1`oq}tNojp{?Gf?qeP-&3oXr_GJ(n``iIsntpCq`w>0x1|bx-6$wX*1w|$ z|IS+dyK41Tt^VD$`is?H$CPoF*zy~yfA~AUhB~+W-@(5RR3EASJFjzPeE{e0yU>{M zKd$=C>RY`|y8i>9uRiW|j_iw|hYpMS%hl&m4}YAUA9eUHet!V;(Vy^oOZAUef7U*wS)qi;T^wrDRYbSSRk1rlPy*#hJ=iDLi8c)$w-gvElyM23Y<)XJf zUs-E+);g!{!OF$?VEy!>f3b2ppP%>U^NP*N7oI`gd;7D9HF>NDq{A||i z_q%7O7lVGg-)XPm`+5WGB*JMud;U7_Xy5Lyoz5;!PgmA@>+Qi=|9m#<4^{@VwZRPE z)?Mk_9nY@Lag*I~*6m-+db5k(=~-vBy|S{>Jv|)^)_b${_Ue4C-_afMhHmfn`JmVC zug+H1F8X+GXBETHKJ9nA=Y#I*+F))2aQ51>N6)fx>veDU&pEl^%+K1L*&1efeRa@X zY0uX%c7uyGTNr0gFXty`ul3Nkm6h8UXZ@A4*;!|OtkgLxmLw6eb1!Qz{vZMS#cfl4RSb#OlOG0-OQB{W!tr~xt9)@QTT{%Y@Rw%)@MU0=DFpRZ$vR%WYR zo1VDTIovB);wz_Z3@ujYdhe{)KR-QRy=b4V4Y1VP=jd*Fmp0?$`KzSz!cnY@@wnnGlKf4&5pPymQuyoF6SgPH@ z`uSOBwsN+Hobii$(e53r-tMfOw>xL^4!>`{esS7ISFz|Znw{BTwO@>hBaTbW!8+D$ zXMnz*o((#^*=)Af>7C&V5n1G{ciQV>$uztd_nyq(hSVZ=YeG&M#Ki`t6GuMxnR9((YnYtTep*)z=?A zwO3!vR(e=uYis9cXM@$V*;*SjipgB-0hyh*ZU4k6)eQ0G*!2Mhr#-*u4LaSk^Hm_h z)w4PF)U4M%@2&Jtn?^jme5H5$VlY3wz&h;%FU<$*Sdz2T^)4~nyf-*MYkK?q&8tV& zb*zW}dIx>%o~>bhoncL`0J{KhbY>T8E8T|gK7Vay_x8>@{a$Zv(Ce?Qt*mudPcM3q zkIcHW)eCkaAc6dpz`gOSA%U9#*#HxC&WN&S^Zxqj`O4s|gJ-Tef-6VOUfpl6-#(jN z0L7hM%vT}GTki~dgOwf*i$QPotOGRBYv?zy#8p@G(`dcOxezKYv01ify*jSbdc!N1=5MGu3r_~p27 zZ4G#!jj?U7;JBNgue9<0UjL#qUq8b+w6=b6UcEl%5iaX0v$63LJecmy9$k%}UhX1! z#=-0JOU1EUYz)0^b}@wq&MwBgjR^2Ccv*wdlkp&HF9(HHRqy?| zs`}?xg7*8Dy#8w_U-*}+>WBUMANIQ1gAAvn=DmNWs{RnmKU-D*3d=uNRln%<-}Lg+ zpcDDr`z+D!iI-pY@;^k$_mJ~=FPK}>Xsq)+EJ@zI_g}B7@AUGDCEm||5>Affg^!!e z`-MJfTGUaJa%V{j{Dn?ceK*TqC5hw<5M#aUaDdeA2fQ46dDlxyMEIP4%FD-Ie%?z; z00{qaFMra@pYig~d-<<<`PaPs6)%6?%fIX8Kl1XcIWBnaN4>o3L6#FDXx8`?;5wEU`}B@cNIi z{8%M91Ka(qU;lZQH>>Iwy#611`5RvT7R&Fgs(8pXe)p$YVm$7!#5f(Y#P~gA*{Z4^Vu|to zEX(h$s@GZKVQ;d;{PK_e#W1LR4@nG>vqWb<dP!YQB^<25+C`~EI(=I#tWaSs(+Dn-1lc$0-62=mY=Swzr+&P|0>Iks`~d? zZdTQ=`t`rTa#&S=lO+c0w^@$B$Fl@7{$E*cSJgjac?S|r;G`CobYx4ir< zFaKLF|Gt<1i&&yx- z@>jk58(#iRFaNfe|BaV_*UNw4<^Sg8|Lx_C7i=EC+RLx=@`M}E`^zzKhM_xYl^0}8^^72Q$r2c^W>ZiQ?XT1#c!_RvC&w2Ut zUj9Wd|7|b-nwS59m%rlWf9BB`-hjWuR9+;q^ebYFH^4vI_AXd|1W!Y6(sc?h6_3bh!8Y*aCZyA z-Q6L$2X}XOcXxMpcMris2*E7`3l6~+=%;V?=A5&8s&;E@ubz5`f$4eYKhypD`lBcK zc&3@$hQY@*J>-5I!cm;SX`I7FT)}nR!d*PTV?4$4yu{CslRkbu@5+z(oNpK+RG`nV z8IHlnQ!(YwkE=fZdr9O}%)l%RKF%s2e}266@$Z$9E3rE3vJqRb9lNj>2XGk2a1w)$ z)8@%bxQZLNjeB^A$9aYqc!jrkkB|A1?-=sq9o47rr*9d7!N-5G$~ z!QkV?%5qKCXA`z!2XmmhEUIC%6XCy{v9DaH}@YDOHU^-@E4(4MKmSP1~Wok0fbjD#KreHc|Vh-kG5td>FR%LBAU^BL1 zC-z`J4&f+H;55$RBCg;%Zs9H-;4z-!d0yfT-sK}c=NpFjxC-#;>+m(hF*0K^9+NN? zGcXHtu>gy)3@foZ>#`ABupPUw7YA?{$8Zuq-c5Y|eEy$0A2#&yTd+O5u`h>kG$--n zi0t$2U%=%Io(H$edw7^9_&bB=z?h=9U`*|et@lr57v+(0+>+|g?#Lx4)kGJc8_22)0+Z<@R z&u1Q&at${#IR7~)ALm(KzE<4E!I z^%9)l)sY*qB|ES?`*A48a586cA%pX}_3}3Emp_kaF5^uPPMZ|3&2VQ2Q@K#t&ePUBoI;c9N;P6j{UuySO6 zd`jf=_eBCGXYlj<|G%#S{rrFZ`|6tSufO?-FBqI-hw^ymJATiYjL+cwI<1_EIaz?k z8Jt^Jk!!OdTQK;1cW_?a*V~71G$(N;gLCTTa`5@@t@0ioW^g|JyL^c^d5=#RoJ)TZ zGH|_o&G3xM;PdCfd2~u|&%mtA!@>;Cp)1POS&vQFn!)*VPk8``a~!8KICowwui{4T z;C=?@&8OuHyvjR#$l#p$tsK%^Gz=p#27~kEq;eYm#2n1e;9R+^T$#1lfXx}4CwG0BO#!Fh2) zIR(=*3v)9#CoU;hU^NE!3mVJ8`EWJzY6s7Eh92G|BWjrVQOY%b_VCZMddR5nKk(fgY(|Dau@dIAdX~k&O2S6 z$E94u%?!?W56Z`RmKS-Q!MX0g@=LyFXmiN049;_ZkP|RD(=juHbKHV*36^J7)?sjd z+fwep?(D~*49;yQ%d@zUE4ZG)dF@{L2v71nFEco&y)QrIe+*%s_zi>e*=TYcCT1%B z$lzQyuUv$sS&20moX0kmKmC7n4_lfk*` z-|{2A;5&x;HgG$G^VaX>n2gV4Ov~V$HK$yF#aWJ37@V&*lv}VpyRk2WbJfxEB+ldl zE@yC_x>er8!#u&?8Jwful<)BgU-Jud$Kd=lyd0IWnTRPFoSSBq^RO^Wu_A->(t2_e zwq_^xWN=P8Tpq`%oWsRj#f{v-{XE9gyuhox!-ss%w+#7lQ1t6GdQ2ixRzVEn}_%t&+#wb;6HrKSNy=QJ|5UU^%Ra# z7>fy+g6Wxsxmk!MS%KA9myOwq9od8ZIgDdDg|oScE4hK&xsOMAihuA5Z}S14@eRKW z7wG3(Mr3rx<;T0hK#z>VSWL(i{GXjSR`CASSeK32iXGX5{W*+dIfb*ih%32)+qsWN zd5VAV3UBiPpYaX9bk6&h5gDDI_xL_uhe_nr%*gD_$D%C5PkZK{uH%~gyw~?JHkHH!08O`buE?Ga5H!DAcOl{XXT5$&b$1V!9A|`a%kthu#C(f7~J1VE~jH= z=3+qx_qNK*Rau9P*pk70t?qI^4&@k5W^hkyp}d0Yxs7`n+|N2GpXX)X;(Z49vi_4p zINyE42#m(yK2~Bm6@O$l=4EgXtF&B+HCUfb8Qj0>EcfC-j^KC(_pav3OSqbwxRb$s zt6$|a{FB%CH-mdtFXVR&<$U)Yzh`j2D!!bIX_<*R8QiNXE|+5!)@DNn_o>>;-5A_& zA0m%taF1%HynxHOj$0YrpE@j`U~nJ)l6;fFy{RYiYkqnn=hM%NuNj`feW}=TBBo>p zW@T_ss<2#&6@W@i(61UkvUw{Ubl-D}LZt&UwLorYLeOCS(exXK;@xw_J!NS%K9U++S)ew_->3 zV1EYpmd46cIGc;OlEHnY?eabz7nLiYP~CTqa>^ z2KSP(%lTN8W%x6L`$)gY&DfS**qgyUq>=IjPUk!>WpMv!v%HH3d7Nh%+&j81-{q&* zEBMskOTK4t-zco}US$5j1WeB0o>68w7Ynik%QLuNR7Y;amh8ap4DJ;TmB(;0XK^8e z`$X&IZQRQvJjvi5(PjA-@AE1DV{m`y8|SH%|uMe z49v`MrhCeX}^RpPsvNCJ20h_ZOyRr`la}+0X2Iq4b*K!MY^ALaIIsU~P{D+VEiXZq@ z_`vlPj!_tk37LZFnT5Goh$UHp)mWE}*@_+6gZ(*-V>yMhxri&df!n!{M|p~W@CtA9 z0iW>=zl;#*=UYZ(bjD>8re;QFXFe8X8UDop<>!U-CUeM-227mXY}b6EHc`F*9?qAWN`3tFjIou_ZgOJNt1c$8a)daUoZ5 zJ-2Z$kMJbV^D=MoKA-YGhKLmC=Nm>~G{#|Krs9vx#=I=T(yYW9tk0%w!_Mr*fgHi{ zoW{9a!qwcwojkx_d4_-T8vo`azTi8C`nZ_+>Hh6Ie$SYU&ty!?Ow7pwEY5PQ!rE-e z7HrRM?8_k>%}Jce1zgT`+{!&X%oF^bmw1!+_=K(V4fGU_ zQ5cH}nS$w=g}GUXC0T*hSeK32iXGX5{W*+dIfb*ih%32)+qsWNd5VAV3UBiPpYaX9 zj27tUTSjDb#$^(wW=3XbJ{Dye{>+;Eh0WNOUD%t0IFb`Mo%6VqYq*)ac#y|=mKS-Q zclj@0@;yUG5A+n4k@*7?FgepPGjp*ZORzkvvJM-uB|ES?`*A48a586cAy;rcw{b6z z@FdUkGH>xdpYlJ3h!N=L8%AI>#$jTn;*ZS6yez`fti&3u&!%j{&g{j39KrFN#<^U= z)!f9LJiuRhhJW%J|K=mU;5&x;_#ZMp-~aP_#$zvvpWzvmv6+Y|nSoiEhlN>+6t6GdQ2ixRzVEn}_%t&+#wb;6HrKSNy=QVh4H($0&@& zgiOKo%);C(#FDJQYOKq~Y{ic3!Tub^v7Ex$T*Q^!!0p_}qddhwc!jt5fY11bpI#H` z({=PMBQiSUG6_>NBeOFfi?R%VW=;OWW^BtY?9D+O$qAg!d0fgh+{|4($m2ZAi@eUe z{Fg8Jo}uFgdJ4j-}mLU@cdJ4lxjKO$J$~63mIhdctSeBJp ziw)SE?bwxlIGCe2kux}-%eaNQ^z$tvGCJcj z2~#s8vojxyvJ8J_P5#1WY|Ad}%|RT=37pP(T*@`v%w0Ul<2=iYyw1D)moNFAp_2r9 z3d_j+feDzL>6n?hSdb-Ho>f_gjo6YM*q!}2lw&xVv$&8exSrd%mq&P#=Xsg8c%M)C zA44P!^z#iPFdE}9F;nqJW@BC!VQE%k4c2E~&g23v=Q?iX z9v3W_iI|cZn3Z{0n59^e)me{C*qWW#lLI)M<2aRb zxR|TBkvq7b$9S3-c$Ihfkk9#+AyWi;3d2Z@!FWu{H2jG7pc!U4&F<HXraA-|*9G7=J$hGa{oiE|V}d zGcr5#u_(*%XV&B|Y{s_i!rmOjk(|KkoX4eH!_C~qgFMc&yvXak%YXTj?-@FEpr^2m z%paJ5$(fFsnTrKkg5_D2b=Zh4*@4~Jk3%_zlR1kExq|DtjeB{7CwZQid5ib?l>aeA znm|9_Fao174ihsKe`Gf1Wf7KUCDvelHf0-jW-kup2#)78&gBxW<|gjs0shJ}{FB%C zHy`l@-!W9$Ku_QCd&XpZCSzJ=Vonxdah78h)@DPtV0(6BUk>4DPU1{1;Bv0xR_@_p zp5X7i#GAawCw$FMFOdG}=h4>;&!~*eL`=yH%*s40%u=k#>a52mY|T#W$pIYBah%FI zT+CJ6$Q|6zV?50ZyvjR#$me{^km&LZ)DPW?^m?Vo6qDHGcd( zMW3(R#%#ro?7{vV#<85j*<8ex+`#SJ$D=&OKX`?=`GC*(hM#`-%IEukMr3rxWfG=l zMrLO|7G)X!%$od#&DfS**qehmk`p+c^SG32xS6|nkjHtJ7kQm``7dAcJws;<^c0qn z`2!O$InyySbFm;xuso}>4jZv0JFq+ZaVW=dGG}oiS8zSIaW9YXB+v6QZ}C2#@;`?7 z_%r*{b@UA*FdE}9F;nqJW@BC!VQE%k4c2E~&g23v=Q?iX z9v6wMOS%@WBfz?=- zjoFGF*@OK#jAJ>4v$=>Xxq;ick4JfmfA9)#^8ugn4L|)(q0jgKjL7JW%Op(AjLgn_ zEXp$cnKk(fo3Smsur~*BBqwk>=W!|5a5H!DAdmAbFY-F?@?XB>dxp*)=qW5C^9Lqi za;9Tu=3+sXV0l($9X4W1c3^k*<4}&_WX|G3uHbrZ<6a)&NuK9r-r{{e<$ny3Bhb$` zjKFA&!^BL*ADNALS%jroi8WZCP1%N>*^2`?g5x=jbGd}8xrsY@fWPt#|Kv6P%}0E} zcMO#?(9?JPo-rAp$(WXzn3DxqoaI=Bwb_s@*q+_kmqR$3lQ@$LxSZ>_m3w%YC-^%r z@h0!_319PzT!DVRW_U(rY$jq#W?)w4VPTeHMOJ4$HeqXaVowg>aE{|t&f#LN;zsV^ zejej#Uf@;U;X^*>TZYUX=qU^%F$Uu?Dbw&L=3ssnV_8;aEjD0twqsZJ;b4y9M9$!R zF5_Bm;cgz{Z#>7pc!U4&F<ACK}B|KJtg<^w+C8-AHL(9gGw$mopABuveW%+7o)$};?!HTesh zu`Ro>HwSSfCvZCFaVghuGk5VIkMk@q@;dMGU%upfhRzr0DJ&!N2PR;0rekL2VnLQ* zc~)f|HeyS5V0ZT8P>$hb&f-F@;CgQ3ULN5|p66xW;(b2le+-d7(9buFz-Wxa#7xB> znT>f_gr!-DHCUfb*@m6jivu}=<2j9UxrD2^i930Kzw!+KaE{|t&f#LN;zsV^ejej#Uf@;U z;X^*>TZSwY=qU^%F$Uu?Dbw&L=3ssnV_8;aEjD0twqsZJ;b4y9M9$!RF5_Bm;cgz{ zZ#>7pc!U4&F<ACK}B|KJtg<^w+C8-Ds-zMs$kjL7JW%Op(AjLgn_EXp$cnKk(fo3Smsur~*B zBqwk>=W!|5a5H!DAdmAbFY-F?@?XB>dxkC==qW5C^9Lqia;9Tu=3+sXV0l($9X4W1 zc3^k*<4}&_WX|G3uHbrZ<6a)&NuK9r-r{{e<$nxOEYQz4jKFA&!^BL*ADNALS%jro zi8WZCP1%N>*^2`?g5x=jbGd}8xrsY@fWPt#|Kv6P%}0E}cMMfL(9?JPo-rAp$(WXz zn3DxqoaI=Bwb_s@*q+_kmqR$3lQ@$LxSZ>_m3w%YC-^%r@h0!_319Pz5`licW_U(r zY$jq#W?)w4VPTeHMOJ4$HeqXaVowg>aE{|t&f#LN;zsV^ejej#Uf@;U;X^*>TZSwd z=qU^%F$Uu?Dbw&L=3ssnV_8;aEjD0twqsZJ;b4y9M9$!RF5_Bm;cgz{Z#>7pc!U4& zF<ACK}B z|KJtg<^w+C8-7_j(9gGw$mopABuveW%+7o)$};?!HTeshu`Ro>HwSSfCvZCFaVghu zGk5VIkMk@q@;dMGU%upfhAtE6DJ&!N2PR;0rekL2VnLQ*c~)f|HeyS5V0ZT8P>$hb z&f-F@;CgQ3ULN5|p66xW;(b2le+*GJ(9buFz-Wxa#7xB>nT>f_gr!-DHCUfb*@m6j zivu}=<2j9UxrD2^i930Kzw!+KZ~ zVU}V=R%bmnVQY3`PY&R4j^k9$;bN}hM(*H#9^+|V;8ot?Lq6wQhO7|iDGVbq2IDa) z)9@$eV15>3SypB(HehqMV^{X!V2vjLO(d#FWgytjxp0EX9hf&U$RZ z*6hTd9Khim$Elpd#azXW+`;`k#?!pOtGvU9e9pHFSuN007)D|Y#$!^Z;ZMxL{4B<@ ztjt<$z~*enuI$6X9L0&8!TDUqwcNtpJjCC4j(_n6|KVf4;s<_JJ9|Oia#kG$(N;7jQY( zaVz)mFi-GzUgAyO;}gE-7j**te9iET%GgZAl+3`a%)`Pg#fq%XdTheh?8KfNz~LOn zshq>bT*Zyt!TmhO)4af|yu*il&bJI%H_%fUMq&)cV^XH!Pt3vmEXJ~|%vx-~=4{8V z?8Ctv#fhB3`CP`e+``>F#NT+1fAI$Y;bXqy2YyvA&{H@@VJs$O3Z`ck=4K(5WCd1Z zT{dPbc4QCs=P-`t6wc-%uH*)8=RO|gDgMDLyv+xE#y9-3exRRk8IjQ$mr0nK8JV5= zSd?Y>Gi&k}He*|MVQ&uNNKW8%&f`+9;b!jQK_2H>UgUM&<-dH%_YD0@pr^2m%paJ5 z$(fFsnTrKkg5_D2b=Zh4*@4~Jk3%_zlR1kExq|DtjeB{7CwZQid5ib?l>aeAgFrvu zFao174ihsKe`Gf1Wf7KUCDvelHf0-jW-kup2#)78&gBxW<|gjs0shJ}{FB%CHy`l@ z-!W9fKu_QCd&XpZCSzJ=Vonxdah78h)@DPtV0(6BUk>4DPU1{1;Bv0xR_@_pp5X7i z#GAawCw$E>8U_0Kn&BChv6+Y|nSoiEhlN>+6d7hVfi}(4I|1m`KKtJCw0;4ew6EhWm zWH#ny5te2p)?j@$WgB*8FAn4gj^{Man4_lh^n+AMpj>F;t5{Pv7x- z#$viHOv9g;gZWvEWm%cE*nrL1j$PS@gE@*5IfL`LjBB}tyLpJe z@f`o+4gSN&e8ms^s&$~JaE!uOOvn^W&n(Q%LM+J&tj4-*%vS8k9_-Iy9Lp)3%|%?v z4cyLsJjzr2gI9Q)5BQ94_+^_wKi@JUqcbj(Ff}tWJM*z9%kXE`*9K?~F z!0DXFrCh_!+{J@D&a=G8>%7Z<`I7G$x^1ARu#C(fn1IQdj+vQ@1zCdSS(SCzh%MQH z-Pw;rIfj!tiwn7e>$#14d4wlGZlYiHs)m!mS!c^ zV0|`a8+K+d4&(@q=QPgc60YVZ?&Jaf$}{|v*Z4Od@de*8RQo_r-|>6KWPB!LT4rKS z7GQCfV-?nBL$+Xhc4J=-;b>0cOfKMZuH#nj;bETO@4UpDyvHYe%`Z9x`uUpS8I`e_ zh$)$YS(%50S&9`|o%Ps+t=Wk^Ie^1Cj#D{@i@Ay$xr6(8jHh{lS9ymI`J8VVvSXm9 zFpR_)jK`!*!=IRg`B{u*S(&xifX&&CUD=0&If@fGgY&tJYq^EHd5FL99RK1C{=>(7 z#Si?dQ=q4CjKWw<$P`S^EX>V9EXfM2#=30GR_w?g?9X8w%PE}AMO?`Z+|GSG%2WJ< zS9qHb_>6D(W#>RY-!dYjGcJ=bH8V0h^RXz)@MqTKFKouP?84q0#F3o9>72)pxs7{ygeQ5PmwAi#`IP@LMAtw+-!KBBF%AZ4Lw?I$d@q5N(d?sUBW@1hjU~!gX71m}$ zwqSd9V_y#8XinlxF5q&m<5uqBVV>acyu_Ql$0vNvFS-Z%`I_Mwm9d$KDVc#;nTLg0 ziWOO%_1J{1*@-$D~Zd zpO}OBS&U^_nYGw}&DoA!*@uHUiW515^SO*`xrMuVh`;e1|Kbh)!^eEZ5B#cUpr>$* z!dOhm6im-7%*{e9$qKB-x@^o=?8qMM&tV+PDV)tkT*(dG&V4+}Q~ZNhc$*LSjBog5 zuRuTFG9sfhE|V}dGcr5#u_(*%XV&B|Y{s_i!rmOjk(|KkoX4eH!_C~qgFMc&yvXak z%YXTj?-{yxpr^2m%paJ5$(fFsnTrKkg5_D2b=Zh4*@4~Jk3%_zlR1kExq|DtjeB{7 zCwZQid5ib?l>aeApFls~Fao174ihsKe`Gf1Wf7KUCDvelHf0-jW-kup2#)78&gBxW z<|gjs0shJ}{FB%CHy`l@-!W9*Ku_QCd&XpZCSzJ=Vonxdah78h)@DPtV0(6BUk>4D zPU1{1;Bv0xR_@_pp5X7i#GAawCw$E>`UU#=n&BChv6+Y|nSoiEhlN>+6d7hVfi}(4I z|1reiKtJCw0;4ew6EhWmWH#ny5te2p)?j@$WgB*8FAn4gj^{Man4_ zlh^n+AMpj>G1QPiPv7x-#$viHOv9g;gZWvEWm%cE*nrL1j$PS@ zgE@*5IfL`LjBB}tyLpJe@f`o+4gSN&e8ms^YIvZhaE!uOOvn^W&n(Q%LM+J&tj4-* z%vS8k9_-Iy9Lp)3%|%?v4cyLsJjzr2gI9Q)5BQ94_~nQ|Ki@JUqcbj(Ff}tWJM*z9 z%kXE`*9K?~F!0DXFrCh_!+{J@D&a=G8>%7Z<`I7G$dSsxdu#C(fn1IQd zj+vQ@1zCdSS(SCzh%MQH-Pw;rIfj!tiwn7e>$#14d4wlGZlYiHs)m!mS!c^V0|`a8+K+d4&(@q=QPgc60YVZ?&Jaf$}{|v*Z4Od@de*8 z)aXD@-|>6KWPB!LT4rKS7GQCfV-?nBL$+Xhc4J=-;b>0cOfKMZuH#nj;bETO@4UpD zyvHYe%`e6T`uUpS8I`e_h$)$YS(%50S&9`|o%Ps+t=Wk^Ie^1Cj#D{@i@Ay$xr6(8 zjHh{lS9ymI`J8VVa%`ZdFpR_)jK`!*!=IRg`B{u*S(&xifX&&CUD=0&If@fGgY&tJ zYq^EHd5FL99RK1C{=>(7#Si>yT%f0LjKWw<$P`S^EX>V9EXfM2#=30GR_w?g?9X8w z%PE}AMO?`Z+|GSG%2WJ6D(<@i89-!dYjGcJ=bH8V0h^RXz)@MqTKFKouP z?84q0#F3o9>72)pxs7{ygeQ5PmwAi#`IP@L#Kb^9-!KBBF%AZ5$q(D#K@q5N( zd?sUBW@1hjU~!gX71m}$wqSd9V_y#8XinlxF5q&m<5uqBVV>acyu_Ql$0vNvFD3{2 z`I_Mwm9d$KDVc#;nTLg0iWOO%_1J{1*@-$D~ZdpO}OBS&U^_nYGw}&DoA!*@uHUiW515^SO*`xrMuVh`;e1 z|Kbh)!^eEZ5BzFspr>$*!dOhm6im-7%*{e9$qKB-x@^o=?8qMM&tV+PDV)tkT*(dG z&V4+}Q~ZNhc$*LSjBohmv_L=KG9sfhE|V}dGcr5#u_(*%XV&B|Y{s_i!rmOjk(|Kk zoX4eH!_C~qgFMc&yvXak%YXTj?-_b}pr^2m%paJ5$(fFsnTrKkg5_D2b=Zh4*@4~J zk3%_zlR1kExq|DtjeB{7CwZQid5ib?l>afrj6gr%Fao174ihsKe`Gf1Wf7KUCDvel zHf0-jW-kup2#)78&gBxW<|gjs0shJ}{FB%CHy`l@-!at8Ku_QCd&XpZCSzJ=Vonxd zah78h)@DPtV0(6BUk>4DPU1{1;Bv0xR_@_pp5X7i#GAawCw$E>W(E5Bn&BChv6+Y| znSoiEhlN>+6d7hVfi}(4I|1re;KtJCw0;4ew6EhWmWH#ny5te2p)?j@$WgB*8FAn4g zj^{Man4_lh^n+AMpj>G1P)UPv7x-#$viHOv9g; zgZWvEWm%cE*nrL1j$PS@gE@*5IfL`LjBB}tyLpJe@f`o+4gSN&e8ms^YH^^aaE!uO zOvn^W&n(Q%LM+J&tj4-*%vS8k9_-Iy9Lp)3%|%?v4cyLsJjzr2gI9Q)5BQ94_~nv7 zKi@JUqcbj(Ff}tWJM*z9%kXE`*9K?~F!0DXFrCh_!+{J@D&a=G8>%7Z< z`I7G$dTF4iu#C(fn1IQdj+vQ@1zCdSS(SCzh%MQH-Pw;rIfj!tiwn7e>$#14d4wl< zo|k!x_xY6nF~qV!Ki@C{qcIK>GZlYiHs)m!mS!c^V0|`a8+K+d4&(@q=QPgc60YVZ z?&Jaf$}{|v*Z4Od@de*8)bc=2-|>6KWPB!LT4rKS7GQCfV-?nBL$+Xhc4J=-;b>0c zOfKMZuH#nj;bETO@4UpDyvHYe%`a92`uUpS8I`e_h$)$YS(%50S&9`|o%Ps+t=Wk^ zIe^1Cj#D{@i@Ay$xr6(8jHh{lS9ymI`J8VVa%G^WFpR_)jK`!*!=IRg`B{u*S(&xi zfX&&CUD=0&If@fGgY&tJYq^EHd5FL99RK1C{=>(7#Si>yRiLMEjKWw<$P`S^EX>V9 zEXfM2#=30GR_w?g?9X8w%PE}AMO?`Z+|GSG%2WJ6D(72)pxs7{ygeQ5PmwAi#`IP@L z#M(eV-!KBBF%AZ5$xacyu_Ql$0vNvFV+Y8`I_Mwm9d$KDVc#;nTLg0iWOO%_1J{1*@-$D~ZdpO}OBS&U^_nYGw}&DoA!*@uHU ziW515^SO*`xrMuVh`;e1|Kbh)!^eEZ5BzFlpr>$*!dOhm6im-7%*{e9$qKB-x@^o= z?8qMM&tV+PDV)tkT*(dG&V4+}Q~ZNhc$*LSjBohmra(X6G9sfhE|V}dGcr5#u_(*% zXV&B|Y{s_i!rmOjk(|KkoX4eH!_C~qgFMc&yvXak%YXTj?-_b?pr^2m%paJ5$(fFs znTrKkg5_D2b=Zh4*@4~Jk3%_zlR1kExq|DtjeB{7CwZQid5ib?l>afrmOww>Fao17 z4ihsKe`Gf1Wf7KUCDvelHf0-jW-kup2#)78&gBxW<|gjs0shJ}{FB%CHy`l@-!atI zKu_QCd&XpZCSzJ=Vonxdah78h)@DPtV0(6BUk>4DPU1{1;Bv0xR_@_pp5X7i#GAaw zCw$E>wgvk6n&BChv6+Y|nSoiEhlN>+6d7hVfi}(4I|1rewKtJCw0;4ew6EhWmWH#ny z5te2p)?j@$WgB*8FAn4gj^{Man4_lh^n+AMpj>G1Q(wPv7x-#$viHOv9g;gZWvEWm%cE*nrL1j$PS@gE@*5IfL`LjBB}tyLpJe@f`o+ z4gSN&e8ms^YJZ@oaE!uOOvn^W&n(Q%LM+J&tj4-*%vS8k9_-Iy9Lp)3%|%?v4cyLs zJjzr2gI9Q)5BQ94_~n5>Ki@JUqcbj(Ff}tWJM*z9%kXE`*9K?~F!0DXF zrCh_!+{J@D&a=G8>%7Z<`I7G$`e2}^u#C(fn1IQdj+vQ@1zCdSS(SCzh%MQH-Pw;r zIfj!tiwn7e>$#14d4wl0v2N#R%T7sVse#!6oGyh=Pz47{F zVQv=Wg)GO5crhp6|Laz5|kaz4OE`8c=o1-`;Jcz_@9Q+~}8 z{EdGx!yEBBWoJGXVJTK*bzZ{D*_>Ch6ML{9hj0`pa587`HZI~)-p_})flu&RzQotK zkB9gXzu$sWQxP!0qO&;VCe#US3BTw;fW_%}JryR`BqAbly ztiif$$QEqN&g{tq4&`WG$0?l2+j$4?;YvQt$M__lVLT+RphC?DrmzQ9-b1`qH9e#)_R_7(WoXvS9JFy4*aR^6o0w;3@Z{s2^<^6n!8~6mDzM;w;N5ti?;&n5}pfyRtV2@LG=LBu?cl&f{V(<7z&_ zO?;Z$xr=+bpNIJgkMTHv<)2LdZoE#}n3siFk`-8ub=ZK-cm+GMJNt4lM{+!GywE&c>#;D3@fuH>#-4AvK_my7yEM< z$8aKV;w_xZJ9#fxaV&hUwmm*C{LWun$54_ zumiiX4+n7s$MFVE=WH(E65hu(T*uAa#vOc>Z}K3I@H2kHA9;#@GvoX5I^|$~7G-Hx zVhz@1L$+XBc4ki|a41LfI!@tC-p)IC4_ESGKE@~c9AD<^e4Fp_V}8l+`7{4u+Qaes zWMOU=%x9}Oh$lZL4@A5-_&Tsh>e`oBYczrT4Cof5KE>y`lY96M-{(<&#UJng z8+Kqf_TeCo;5gpE>7304T*CXfhU>VQ+qi?T@=YG(5q`#R_#;p8Z)Q9iuTu`@XHk}B zCDveFHe?I7WoPze0*7)muj3TX^}S(=qtgLT=EE!dWw*^>zz$_&iL zJS@oKEW>E|)s5F-eKuh$wqw+f9>)7}5QlRtCvpmBa1IynE-vFLKFkf=!fkwkyBK^d z5=&b<77HF9C3%R!;VEhSGk(qE{DproO`3RoCgxy17G?>SV-?n9U0%*+Y{T~K%3e(1 z5RT+HUe9T~mGgNQm-7KW%E!5tFYpzn+v#v z_i+u^aWl7Z2VdozJjf&bjNkA_p5oukm?>VT9L&$6EX_)+!Mbe77HrGT?8yWU%Y2=0^F4mdFZn%x<{wO(IbNSE%*}$lkmYz0FXm-z!q#lh zt9cCvayS!tJ*V+j&gWfR&IkA?ALmxSz*qPN5AXwi%CC8Xzws|-$P%wpcIIOdmSRO# z=Ow(H&3Pp|u?PEc2uE=OCvygG<03BQ{d|ZU_ynKjOMH#{c!(eI3x3CwJk2y&3w zpG+Uz(1geBY|P8TEXfM2#yV`kX1szO*`0kkm?Jr!H}YoA;X>Zc6?~BExrNX0MegQX ze3u{cbAHR8_&a0Sa?9 zxP5%*Xg7pX1AXop19!e#|fVJ%8pOOq(lSpDfJHg1nIBco8q=Wo*LM zY|pEC4F_^K6L~$S@m9{~U0luw_$VLeR=&Vj_y!N~1AfY{d4j+3FJ{OcuTysBV-c2O zMONn}yqwK>B|EVP`*8?IaRMiE25;jcF6I4vh#U9>pXEz@jr(|rAMp!*$CEtGG{FP9 z@Vu6pxmbY3S(a5;i`*Rq_a3XKwEu70cc`sLS zEjRKhKF^)p!*}>TkMb-2z+ZTV>GH?xl$Ci{h$UE_Rau+$*_3VAf!)}LgE)fYcmt<% zHWzRS@8cS-<7RH-4!+7ad5}l=8NcC=JjK76@q&1raxg!OvNS8P2J5mRTd*xVvnLZc zl%shar*I~3=N-IHzUA^6}aJildU zJ{DmqR%CTv!pqs5SF#g(upftT6en;pXYe*I;!@tvhq!@H@L9gZ*SL>|_z}P0cRb0{ zOj9UcpUlj~0xZt5tioEnl#SVnSFtO5a{#a9SWevYp^aGvIX0+ zGkY?DLphq)aSCVhcHY5zxRMX^F+R!X_%dJT+kB57^GklupZN#V24AEI_oFP#&4Rp; z<#-V<=4EWc)@;wKc?}10I1_n2r}0+K=UrUR2lyx-=T^SJSNH}G@B@CzuX%#M@h@h$ zFkYwZ%*P@u#fq%XOL#e(^GbGN5BB2_j^YGP<_zA(MO@1J`4Bho2|ml0_!{@|5I^D< z{EjDinrTYJ>yw$eSb)V@mQ`4bm$ETi@hWy@Zw}zK9Lq_Z%2}Mp#azbKe1x0$G`DjX z_i{fE^AjH9asJ9bnZ9JaPT823g;|mnSdDeqfX#RXJF+|baxh17Ja6R9oWq5@n=AMr z*K-S>;fvhOxA-nU`ygpf&n+16x z%kd&!%*)t>t=XPe^BNB1a3=D4PUEed&%3ys5Aabw&aHfbukZ~X;0OGaU-JZi<6q2B zE?%eX%*P@u#fq%XOL#e(^GbGN5BB2_j^YGP<_zA(MO@1J`4Bho2|ml0_!{@|5I^D< z{EjDinrX_%>yw$eSb)V@mQ`4bm$ETi@hWy@Zw}zK9Lq_Z%2}Mp#azbKe1x0$G`DjX z_i{fE^AjH9asJ9bnZ822PT823g;|mnSdDeqfX#RXJF+|baxh17Ja6R9oWq5@n=AMr z*K-S>;fvhOxA-nUkygpf&n+16x z%kd&!%*)t>t=XPe^BNB1a3=D4PUEed&%3ys5Aabw&aHfbukZ~X;0OGaU-JZi<6q2h zQM^vsnU6(SiWOO%m+*2n=auZl9_+^<9K{Ko%o)6mi@22c^C52F6MU90@ip$_A%4U! z_#IF3G}Ba#*C#V`u>gy+EUT~R8( z?&W?S<|jPHGJUmpow6}63$r9Euo~;I0h{p(c4T+<&3K)1Fh7g3G%K+N>#`wR zuq`{YClff7qj?>ta3*i(9lVDt`7j^jlYEXZ^L4(>_xLftHmj^H@n!0DXL1zf`WxQ6SvncKL7ukuYE_?mt-CO)9v-YdU;JOzct(QYF@*E9L_{u&uP4s^LZDS^8r4}$GMd+@D;wn z1N?xW@@t;pZ~TiHY^UsuelNU;@lveF>b!)}?}IltekD7x2m3MlJ@8S+CvY-n@HQ^u zQr^#pxPedbS-!;AxQ~bU5x?MfJjv5clQzB|W@auHU~!gZ71rXVY|K`?ie1^819&aR zauTO<7Uyv>mvJ>8;U+%K?cBw^+|R@OgvWTCzw%F}PZzIKHs)nvmShE1V;weNGhV@t z?9RR%%#j?=8+kM5a3SyJ3O>m7+`?!0B6ssGzRM5!Iltvk{GGA%@%m(9PF}!bEW^sI z$$D(WmTbo^?8W{Z#xb18n|KT7@=o5%Rb0!Be2UL=C-?9jzR#olia+odo?*J+0G{;y zCgx!wmSA~SWo_1HQ?_9Tc4Hq7;s}o84V=!|T)-u~k88M&o4JhvN$Yj)^-4n+v#v_i+u^aWl7Z2VdozJjf&b zjNkA_p5ouk=(wAM`B{{uS&21Rmkrs1ZP}SUnZThO&FeUYGnvtL%)$ID%F>Lk^Mc#; zr2V@t8?pu4vNL-!fkQc(*KrDG@^;?Ad$^Jh^D#cj=lC*T=i7XbAM;Co&!71R)7pMn zn41N8A;5L{*NV|`FWN79nBJFz z7+sH#H69)RqWxor>2tV%(RKMUar*anOaWR*1H6P(7KF$B^cK@gE=jc3n z?sZeN+-$aA9u{PAmSL3VKf2%jpIXj;cK`mL?Oz@Bsm~_-A6<9!6Zik$hw<~;fA#xt zyZ7TR?&W?S<|jPHGQInoY|P8TEXfM2#yV`k|Em4-e{@|u$^JW)vpA278C?&r zHvR}V@o8@7F7D-i9_A-J#^d~ze=@!8kd1j+m?c?()mVoO_#dtR|EcFNHG&gB+Msh! zhGvPy@?{DPE*{Q==8na3We&_6i*-W3kae?(n-`L5f(~Zn0RQ&|tZZjVE1i1Th1R4-F0aG28gu(4ap_ z+dKIAr2C(sUrG1D!T6DIewaM0cQBr`-3rEHN!uqFPdc9m{cUW1^U$E*{frL`Eg6eV zHa;yhSdZn#SB3`bv(xzQ&|tli-oHWqr04j-`o*e^yME;Og#Ll!6XOnzUX33#X?(2O zz=ZJ$v1%JWlM-NF%7@69pE)0==1z^ z+w)Cq-?VQE;lZ5vPn@R;;k<+iqXrB;?~1k>G(M?=$!7j{#p~NTVZ`8WqZ0@ITR^vj zVdGnlPHdYnZv5GG{kNdb(l;ADa8P{az(M^d4Cy;;)Zo#<=1Y2=(7%7;pzD&)O-M`_ zHDr*D8V~ySDI*gGBnCOcHI9dj7&a`67xNkxE>RWN{-?i3_g- zqI}`Ka!Pe+oh)v2Dsf$s#f9&Il=6k=w`jTHv&fXlI9hJ_tUaZ;waMZprV?zrMZpkUPQ@Ar zL)fNO%@QjaxG)&X2SXSaF0XAcB+s`#=y(_twJ2ZfU_$bID}#KwgK1%G#bAi?h3~24 z`NGfF!)v9eMft*GL-Kr^f_&k*Ax)G%t{vck6SoP3Rgd@F-} zKkQ$FV2JV^JtyCQ9I;sVnP}9ad_SENw<=fsUg+GoAI@3s(VAIelY*ddxs8G$T5g75 z8By*qN2T1cq`2^P*rIvi_l}b9SKVu6i5(5*hxwWWLzJ)JIr&xv`NCs<)S{R9&dFEr z;w-T-!OSpUvtanQd_jEJ$^~!o!H`n_{tEJyj*x}+6O~Q{o5Dh>ln9zv%w$eECL| zjm63Y$I7Usw7&boKXe})E5m$!gCV8uv8ZM&w&G}%E#?00>zO5Z=9DHWUqUMRss|4S zNB%2airaTuudHW}&jV7)w>-!|41aZ;J zbN9cJOS8tpYv?dvc#W1)zDdE2O7CEP)Kbc~`<|?^F+ot6Z&)y-l0Z~J-9tLOHw z-o064OM`QIm@m42JKz3tNAN+w9Q$?u!5Q_iyLRce-<$*yewbuh7H)>R)vKcD{V; zgAXz*1nU{KDD}D9qh#2?h4qW>-_DnBe~>S{wvAf!^4xr_gM8sVW|%L!e>-2k zEZx$?o{N$MvC+$O^X+&vYwVPK(f!-`^6d(Wob2tEV!o~Gvz|Sl-xw@6rTyjiAYbsd zJlj(0--#e!;~*+r-zmY6QocGp(!|2^LDW*pS7Srg*w7#-%r`X{Qpz_s$TvGm7MN1L zr9r-x!Td1a^k7ISU;dtHVomoz%K|b$~8L8y!+B?V>bt;I9UY@&s-wXZ+8q!wiHaaKnuL4go zc9()#V%dXfQ45zFw${P4*CU8a7fb4TFf|tIS2#U@rmqNwFkkLq2$vb;JKM&T%@WHMPSm1&d4loeagCn{>X&Q* HQQUt6v(8BS literal 0 HcmV?d00001 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.su b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.su similarity index 100% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.su rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.su diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.d b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.d similarity index 74% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.d rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.d index 782fc44..9ef2e81 100644 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.d +++ b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.d @@ -19,16 +19,9 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: @@ -68,22 +61,8 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o new file mode 100644 index 0000000000000000000000000000000000000000..9d9d50f92ce5111077eba316cbe638554bd32dfd GIT binary patch literal 711256 zcmd43cUTqY*Dkzg?`eB>uVRZ`V@zVAF}B!yZ!xjP5|dy_G||}5NK*lkB1l)7qF@2B z0D^*upr|M)iedq*hzfQEm2(9r5j;}wT0QznH z`9#p~>d(Iiom7858FWhh`Bczp_2<(;f2cp70Xnn(d=}{J`tu(_=hUD71p0IR`7faM z_2+Xz=hdIj2VGEq{wwHj_2&yg7uBEt4*Ey^`C`x|_2++rF0DUb2D-fddRNxk7Iad`g3VwfWaGPioxW~Zm{@&Xa~Bx-T!Wfxg}r!ePyeG?ks^==_?$8q ze*bDXSZ})zxX#6Op80ybqC`=D_V-hO_IEr;ZNGe`gT2tQ(M)Q4`Cte85Zjqz@YO^I z`$kLZ?nooZr!0}B*R`DEfweX}JU6hFhWqvB@|7cs=Y~qfi8V9X5}wZ0bY6p2GE-}( zEgB+AXJ6MgvpshQTx|AAyM(ap)=0Im^I_pVi+8U>SJvo2Ytd@0{o&S|B ztGes1vB@Uoe}TL@A}>91O!cVkpgI5Ph{oRPXrEz6qKc7yHy z%X2P6`#T=|zi&g+fd97^?EK%fAbQNXpZ_;4_zAV(fd9D#n^Ow{_dm6um0A$E|EUGl z)PlhMU$tQU^Hb2asCq#jYdVpC!x$A4S=$Nl|p`t$!ezsC7`TYh>(($z<*S@C1lGR4(I z^@vT0Q~n?0EuX0xT(gM!&wuAjeUM$g&KB|C*XCefz5M^{wK*P;#mh%Do@Y0>zBg%( z@yphaY;WZ-Q`V~IOzMHCm+d*TCq`mkGA;STl_{!hKs-{b05Q6^*QnUS%~Q=MFTFOzp~NV7V*TzIsNlPMk^Wo7bF zb~Nddvs~tRh;H14XiP(z7s*+n^IS$I7r7)~My5FHuaL>-HVhz*C`32lWGu_g{cQ>1 zT)V^cr;i1h!p`&s0NgGd6uTl3wzYXU&iOPF6jZ~{rzV;#@@GkKwHE|mm}xf0-ylK9 z4e;@enWj*DB@RN{PjKl&g@#wah`u?TjO%P5q%sMI_L$mA+i;?jaSd@U-h0kt9^8QB zHo))?071s}Ab{ZsE91H}Ai1hFKZsG5;!NFdz<3!ygfTpTE19OVgCOIF)^V)H(*@kH zI!;ti0C0F6qgIpEh&o2E?gwUM9b?u^KB zoRjfm8O2meNzZ@BDCf$N()fX6W&9+@aMG62_mcsdT*t{Z+r7~`Q|dTYvx~T?bsVp` z&oTRx<+z)k}T2n^cj5N?Z?ct+U+1$jM(;cw4~Bm4Fx+67VzULH&lIbn{$SFXIZa@{eH@O3F#;AL3X2CT z6TVg?`~wq5GLixS)$e$q^?$zO;rY-pJhJ*o1^nt4w7|{RU+aaNDpLgiz{J6 z^`2}oPStrb#{0qMjEdeWz46nda+$Kw#u$tTBH^Ie1~VI{6*4mA4V%VJrnuf5xs)hQ zA$t97kvcKIQA_i$6tX$`o!8_tN$g78d7Al zaNf)I;)#Df0j75oawOh&;bctrrgRrfFOsp;?8oxdLVfX%2`d1^Ow9vvGio`x?-H4X z{~n=QvwFH1`fHAVOqg}hdfa`9wZ$NDH=DQ(o}UIoE<&YdZ5Ig_4Z_;OLi2%NB(t0v zgBb4=f7_aEwszk&!*h2{(TJX2`m-%E!`$G~Ob-TB-RiPhV5VmS{4h#N?mNH1xZOzd zhQdOoa^Gb#yPx_15c`iW+X6HU%_1|G_eYpm#n*MV3+rrm{mXW9BLJ5EV;g}WOqdKU zW!A+Z&Qe9s|FB*DFWcZRfvuJQeGPr_dNN_F$hP$?o2qNwHO#4t%lvKIAma*}O|DQ= z*GtXTd@N$IANW5S#GJq-2_N`H4Q?hdxC0;f-(+^5kb&zzu?N~>zy3S6tNiQ#h`mn! zp}p#2ub2O4Z1)d*eQeJUe0^;15BzVkhOhDPG85z)ITLE#~4^LC0Q|r(O zZR8RO=&vvSF=5jPyYvvSZRDTTVHY%LHx-xDPX6IBk~LnD3V}|J>-iAFmF!{`qTO`z z9>mZS+k~a}wrQ*Gcu|frrVmfkYg?r3zb%e3gX%06)ZK{;=0j`9nug^e(#C&mU2V2< z4DJnfRl%({V|!`kzDw(Deg0+pbPND}{;O?o*qUq7Y^uJ*$bIYM_WQ@S2}^y~M-BSo zMu-2Mc#$o5C~TV99EA6(w{KSY5dOj^kV@`r-`w^RM1Hu6=7s&yv{CiVw+PK*YjeiH zw9%SW3TothMwUv>C?_wju zS9Lg!aD5tn(-8ejy~t)-CsH!ZFcSkSsRgV$sxWAp7?leCVMlVcMy3$!*kPt_&}$%| z_%^>J(AFnp6QFNoncgZDV%FtIKJ*{MqzRygdf!NZhewtUEy>2sz}!w=ruH8e0r zzOP+i|AquMW6b(HuG~&0vwZ%ypk2dZroX{5ne}t#1N1*MQ6CEcf{{|Wlwq8|3q-&(ZJKUYz&ZC2kHww9x- zX#Ve8O9Gic{?&EVc-!j#is~u7FZB0;zOG|!Jp-Ng{VzQARP;x^CH+O%j&)^2I<>Fo zX`rCLZgoV~yq@;0ryt1wAM(JwoYFymgLg{CC^|@7gWZ^5C_Ylv$sRLm&U))ShViBX z*FYLiDovfrh2iT?Tp5;Yo`NZoqNP@$)N#^S22(h-oa3hz;}(f}&dQ-fR5UTz@a(^j z3XQRjRcICemUEinU&v*wqL1lcQpI93*Qik+xcb6UC$9IUSj%u+^9k?J6Z{)qi?N?o zG_%&p6wMp_OIZh0ycX^LEmS;Z8rpb8A%g)He;*>eWE$7;ifX1w9ptvW>3=}Hx)}N5Z_bmqH6i3JY%p1QHz2L{ zDP`qUK}YEr9S>u^%E^*C5OS!BkPo^L(kqgDJ_;g<^?O1#_8@u5MLN%2K=^>`qzz9Y zZ7Y9NfHSY6iJfs5W244JP9-74#_X9q4U@z zI$va<^D#e@wtB(ebY_gd9*t5l37n$-7KK zinjX_I)~2BUZ)(UVQ$aK4o#zo8Cyx>Q$rHYj*c(GDSF6SlFwUD7$@5^FmfP8>}_l9 z-qYzkCWSB)PZ7SwbMim?G9BG_lVpPJN$5$63mAwC!GxcPDSm zaFVQ4QVw?ONYXEs&IkQL$28kj1mnHsWQNle*Ypt`w@)W;1$!uNR}G!d!=um1y7i*g zIB09zeptS6GWANrd|XUNlOst&89L5EO@osibtlh7*_5rn?Y!Jb+WEGt*gb&cC$xlF zf!7lEI+gsywIj@G6KQp}=WWu@=MPZ)=44lGcj}$(EpY8hRvA7NH)#nSn{ss3mhb53^@ePV<4ArR z+iGalVv={l+LDv43n1;zkI1vD3whrD8J#al8BpKvJnJl$EnPFHz;Cb#w@@-iB zX~Yip%_zmTM59(jnx!kv@Vp#S7#mpYT5 zvMwY!GM1v(qL1Wcj!Mc?vOP=NP>tbaeddt=U(}=>lxWl1uEOaK$&>TR!&D3voNSo~ zX%`ex{zJ=1?y!sEM$V_>yLsf{4z}%pc}tRMs|Yi84@DpOIeADKN=Nk)LfW4pWKCnj zEI&#ZSKFId-j4h)w)CjgWIvDIfE4k`E}Nqbh=;4C+Dn=O5Ggs*B`5zksYN zrxE@v7OQx+FOfv}mXIa;2^hYG`m_f*OUUd9?DS7a$Aa9d< z6Fv^}Z%%d^D;>PolSwk>Bt>teC)@G+>HKpPJ8<8f=zO9*A*0d>`OKA$-*h3ZVC#Qw zW{@PIE9IcrMCYpl2;cMpU6-ac`JCFA&Ofsu*V(dt_MSY%hLHSAE9JS*NVWkRNz$^0 zw04u}ytpZyzw;+QcFB~_M{~)4{%ewZRnzed%88up3oK$e+56Rm%xOUqFIzvn*oQFA zn8e^oXhKKJJn}reKb=R8Agk~5NpdHPY~!LSldrHg2c|2r(G%5b=!NL+=lR@HxZ^u9GzEW5vJPKlE>5kjZ*3z>mhJfoI!ancls55}MUm&{?2KezP^(plAtjpsnrvvycL}%e?s2ez9SDs zM+xKaiXy3Oy=^T18H;eta4=oR+Pe+;$!JaI{#b4EGF@LD$H}-~yzJ#m@?)4l@?N>* zp&aW_jE4S{d6+MHc3HsBBp=$9u4|1K9X+m*?G=Q z-r6z|kC4wKR4jSfh^~~s&r`C}m(cOq67u zzjm3<3(>dmvhOW~S%n%SFZ*#F`3as!KJ#o()T=M){F1GQ42hs@8+*|)0P`GPw)#)H zcGmXvCfMcx?`=J;<_=}MP$cBOKdALW3|K7C+|=6Q8IG;jqYl7*(e??haOfi?q7Ivh zN(wjpG`*7}xaF`MY159{=Z*8x(nM&#AK;EFpZbF4nsYww4axlKu!t5N=G{wg~9XOyVH)VDf8Wuz|@vhnSvB!yC|TWd2Bj z&Wq{r5}Y?v+#Na}W+j%JoG)`=Ds-EeqA_sh$2>Uzp+6Hg4qi4hjqMOGfEmq$1Ttm` z=0Qv#b*#b6ata&5n9Fb}p-e|Le1Zw;f0PNVL7)uA zz8efO8T800ZOe+=#% z6a5~#^Gt{pKJ%IB6Co^MB3yOU&xH4$y4=>l4e5{qY z>x|2L7~ExUj>S_=k3+lfK8C!D&>i9#trr72^F0j;v+P&lIC~T7HQbNCYUWl~2 zh55@DDZ4V&=m>c?rW?vrcs!-8oSW)oJ=MXta8>W!l(Gw&)K#xUNffa4zj^dl}mkI7w+ zm-snz7`0W~aO@5IxT4sc1TRN7^Ohzu1V|%zvqP zhQ6RvD2>*gi;f_|R}CwXMi=Mq2=g`H0N%PjpN(X?ZM=arx;LPayT_tHL?3YZA>_mP zo{)^+LOtnpH|&dX_6>T$!|yu}K)XCt1&I?gkvcFp#;pJvKSrR%XCM<74n!35)fG72 z!(7EG8IN*0_IUVY#+G{uV@v)pW6M63v8A8J*z!NZP||!RW4n&y3|&ZF6EvYt(UO6U z2Cm^lnuIp~n%=w?XYkZBCNi zWT4w*9EY`}MaJk6UC}@jd}8q+(X-S*`vAV0E@*=DRyV@oz5Rs~ICgnC8&Ug6>mVQ2 zpB8QtIP6kzj!bKs%Q`Who8ZTp(Z;|$h$*5)W-t@C9>Nf&mXJ}*Hf(Ql(adN(x7;=+ z;#aiWUS=oR#WVb$fFv+&Mgx+}JX?pd4r zvR*zg5MJEmt6M@CApezK;6V8zT0REJH_`kpMn0h*ob8Y&(t2^H+|LWbLvmL?1WJ-G zEd!S<&zy`1*>WKi5pv`oEdx0x&n*SyvV0U(3a-l|=ziUh&+CD(W%9e_;O@#Rwt=gV zCy%2%<;$=s%Q-6U)8uHaV%bf2@l=dE2joUYHy`MN6zQkoGgu+d0=G>O@&#OPSL`r> z>{EnZ2T4?f4T0{MA`aClE>jV$N3n%&Z*ynV*|=8E!f|X}O|z9Y6`w;vy8dgZqB3BP zJ0cGJY&b#;Nu^c5$ezg7hG>*W>(AD+&cd$!mo#Vn)bl4CJNBVbuam_JFJ0PChfTM& zG=J?GIuw%L&qgANexXa@ap0)Nz>iF!?)Y1WbvRBNEr)i_qifJEX#G2m3%lNihd+L` zgEp1t?QlJ5d^}pV$ezz4F{JaPjiS&v8Y^ zIt0q~Nb2&H0DqT&x)-RxJa z>;k)kissWGJfz6-1(&Q?au#+eir+8dic%F%Xy%`$D0&E=8Hz*;kjE5%x zmSV_MKu#;7sY-T6vG-RX^Ar>D`2}}QF{~Y~C|}_b4z55kmHMEIieVKnFH|_A%FA6= zcvD*!Df+j8v#W}JqX8*aIAp@vb%mG)azk;RrZ%OD(KN=EDGrF>ZYxT@fZZKMZGUk0 z6kF_JeqYgrmS+`;4YQEMLq#mzfX9lfnb1`#cD;e{i6U|a44x|PMT0z7i1hHiPzsm#57@Rq=nKWr|W|KYv#Fbsq2avVw zU*q6qJ?l^mFK%pQLqzvr9jPzaz`mLevXNcU62yz$NnNH7JLq>f^JOQ|!rYH_{S`WY zHgOxA1+b<s2ieV8xiObQ$a&>hF)U3uw-r z#RhGGT{fFL1bODLiSL0t#qM~WF0sE2F~zU|;1vGX58SIPdh7|B<$7x1kR z_l(`%3b{OI1-ibM>`-h6aIe_@G);QLb}@rgvktV}d&@=-M%Z`k*JHrdvSrmUcjPLl z3>3<}dIK(u`<1%22=15P0Ey)6sni|KRsR4l+c?KBkVFi3CKz6JaP}{NOy??S9-qPW zi-$0iJ4R#Vaqb<(JHfq3htF*8E1FQ9cDwkMG#TE_x20Y&o?mte!UX1C_+})0 z%n#fKu8MC`3+@S@MTNv?yuB9bKIc0oLHLsIcNXLof9)BZz2R@rTC$pN9ghZi%U`7( zk$1eIEx20#f*wdmVGPY2orQU{(sL2yRMcH7T)P0>I>DX_X>LNJ`3UPSEP4dp20=^p z3{RmC3I&{((3@_Rx6p&e0AC^IGRP)jFWq;4q5D~o%|aASy#s}e5^zC6?VsR6gq1pY z2^IDXL!d3fF?=w?Z56UQKo=pjWDqt|SlR}{ZNjS0z-<@$QK5OKu>UOL#R}7%Kz0jF z(?IqJ?fU|mAZQ&CVV^K$8S*?J4DSMRP}rOepUJ|72QW_sfCcGXEyCcH>Z6N7F zr|uAD2$S;>C{u8!D)4b(A}u6N2rX%*pDp}26T*|itNjRcN|=!Wa$1n6brZ-LNBd?+C^XR#sXF5Fr%^C`$WF)jlT zcQJ?tOb>BqE7*C8JAIMFMo~eF4{vc>1L%Cj*BudIlbA)zF+b6JIY@x`eJQ*Iirw+0 z1s5#dZVE0$To#RZTf|m0aoH+*&jA-H?w~S5l$c4bw~42Z;ZnAXi*G=z!g1 z%^>1L6;%{=iBAW^e2@4e)uQ%_-I@WCAYRepqW6i@e}itn*iZ@XfY^$PTuEZ1J|M~B zZW=xhi$59QELFToH|MC>frjgJaa=c$W8ych0Lc`G(-WB`wxgCmA?CIP$q}znFLhFs zQPC||d{6cD(_&LvEuR&y&@w1be0&GwyeOw-Xuil#f|rZp^Ubg;6y2!Eaap|A90o<= zx1=i;U(m37O)O9#!cDOS4f7@9v(LbliHoS4xh1xu63ZR&$zFK5E54coyZd4cc_|l{ z1p-nb{za3^hoZxEkjLV2><@F5Vk~u)PsIieVDLW5ve5wrZMo6WBM%Wk1qrW2TOXZS-FnFy@qp|pnvNx5RYm}YTfV@>sI|9gi<%5r4 zUaK5L<#s3O7ELFer2(T5!By%_cY3YV_#6VQm+-YNUSH|@9}s#-lcqzsK?>*LbEA|u z5e8n;1Ajn#q}JXbzEa{K2>qqP^&p$2&&GoUN)COY3zC{p#~CUet^o;?TG7qfDwW2= zb-46>HXxBwaxfx9N&Y*K{5C1(6m;9Ale96lLyFIaZl~0*GqR48yzp5Nw@dnsii&%r z-@gL4R~r32yd+5UBPMR2q@c<3eo0Bitpk#_CxnNjDNaZ}N!oZ2b}3THFAyGzmYUNdwo2+lGyf;jt+yagr41~|GwJdwB=KD8I2Di=k}GvH zFQo@|5WbSS(I)m*RX`7raMf6PS|d~oLtz)G`k7wQD3wbK2%}Y(cYTm0 zNb(fhoXR7o*{1j$0TUuSD*m5k2XBBdj}5m1a*k!bg6=%qiI(m8>?hkHEMOg|LUDmz z6bSAjt6B`MkQE9M?-Kj%Uog1LN&^w7h;=D}?h5NeC6KFZYg$7Tv$JTNyT)GHi$=N5 zPFM;rH`s(uXy}`4x+ly_*ikgGDP=#WuDguwOO0}iO`+X@+icz*2=B2A@x=vqpDh&; zp`1Oj4z3@topRu_f_2>w|PgV-Y$voYLlHYo;ucq>44+cR<`zb|}KjK-mpFbgm2l#&Op9nx6x$Rjl1p-h&y+d3LhR^4RtjexMrIm^yDVr zhQUVejvFF)aXT-=z?%!DT@4@ZYntEqa#Luky@^XLgwT&Wd=)}}?wd}Cx0!p}5L^Iv zi;4z;oS{3s1aVcnpbO>>6eCaw_sb^eLb)kD!G&?V7C^U!J3x=>R<8OTxNxpNm9iqZ zlop5($%O>~8O1%RK`znUDVn=(<3?p6iS69NX3)i8rwY0qTroW%JGqvJ;4GGN+l?!V zCO^#X@d3cYsz?d$@p>KS&lJV3~?|N4ZuVAuQl-(nRqBcWNYb z7rFcq2y~e%CxasHu5BL8MW2JSYn%(dE8(tlQxC!X2IohWv3uN?Q(gs-_8nxnnpzM;8!HJ9-txEf3&5#cS@rxeIq&XdMfN8Y** z#EJK!Z8v8=bs-|S@Rjj^xbhM$4A=6*mjJSk*SrG6osXk!Ob>oIjiej+)WLA=$#0zj zvXPIZ%>*xg!VkDwZ@w|rg?xCIDe$t1_dN`VA3v3zWPknyt$2g@(q0G@%vbgX3E{tV zg)Wre{{|7l_=PmmY~cr#0=bnRMLUS${2;oi5&UMlf02CJU63gL0uAob{A$}=i!Y+N z`5ss&-@m7Ch_B_rkKpT)YW^gkU<*Xi}u@( z@H5ZAAcOZ&Ai^=eK`clnf8-j>Pw)$94wKD)Uj{CRckG2cQ4;zA2B-O7X!3G~KTZ2P z=lGeU;p{v={XGowc?}ipFY?hkKnnSn^x9wIqXdvEd|52aukssSz^<6@L|xEzzI+&j zCH(Rt*p>3F4X`Uil^Kv*yb}lAZGJVaA@1;=)LGxBCZ3RC=3G$eKL=9QVTWJ|p#Sf%`{|P_$GRRZDgg*Xx#&`J%b}xC8FUTuC<~4+` z`A$#Z`VGH`)^gQ+VkmSq{G3P7z2z-FAn*8BK@h&@FU&^tTKND6T;br zfMg5R^qEeM;2r|*q)<8%UQP*nsN2pJ1`UP5X~DA)nVl6%w*#3c?514K37ct!c3$Xy z8A;>|$q!*yAhe)f>VjbB4`&yJ)wI|w6b54JgDVo6j|aITIA+1iRbgd+cqtaDv31H_ z6S_x0cwLxHtLU3T_APKFLW^kVN`*A)%gcm9+UB?=DDvUuuD}#ScTceQLA?8djK+X+ z;Rkv!9|)yM&{YV3(6soGAZ!5Sv9S6pkV@eNRT`^=`M%IS5x&DOaJlD#>1PL_Mpj`lh~V@ z$3=Ae2|8CXd??J969b&%*yn_j_U4XsN;#LxQx z87eY^pbHaw(H8v{F)<#|w~8C6uof=f8i8w%5N}ZT8!7Iimn%wqO>?Pe@kbiRwu#n- zFxV~*FvC1Xyq^by9pZ{8nC}#y(kwSt?EO8sIC0DbAa{w?(_yz;{DMC4*dvZL!RKCa zGJO^lFNV_4lOVpKGR;2mr)Gd8imG7f_KS`e;p~7o`3o2v6cx08eMpoo0y0UwLzj{) zZrBelMQr2^$YF6Ay*a7kM^x`h6KAJ^J0gyy1<+Bk7tP|+#V8MO8RAEYh;Upir4>w; z_?SkE6QXZ>=(5F$>tUWF{z!w{NpZ{`Kyt-~GzUE`_M-L08L{>*oShYK%mDxF z-Fu=>BwXJYJJIZ^T)aXv;|Jm*s*+cTEom$2q1ZSDc8|oNL>`MhZh=&aqiDOSO7x@K z_(c4E3!FU_=Y_-InRuAWmd{0&HW*%rD~do~ih+ZHd?kvJNcXk4vIyjjSTq*GYVpVc zKx#y34#-=vExvo;-ign#EyKMRGn)fhD^9uxpN`7qt-(1dU1=zHR=Tc4E-uQO)TO&B zqcZ_ntDO8bu3?>Wtr=v!(n57dH|1s;1KgFL(Y(MzxrpxO24&@O5KpB)trIpX6KD+Z zQtn+2;U;C$1UU0kZXAgu{FPDj0okl<)$4# zCMcbP!R=FaX$su|WvLqs4l2!2AcvHrVj)aZ#(fLq5oI;m9aX-e_DokEro~@|GWs)Q zeN5S(c2+Z$wFL$}(C;oKh--z~w3h znnRya4p{-nS>=#FVVoJrS&`E7B)BWe%2Xh)DqZM(FIH~82;DX1RqA4|E6ud*zM)jpM%+zh2l}R}M5)>Y zgHmOm_CS^?KMw-rwz87un0J(p1>o)~_cQ@{tjyX6yGo@Ul>@7kZ)xHCL^-Ax0zFl> z-2&Y+<&_|i=gKpUA$*~foWZ?Rj#UBqO8E)x6TMbOYQeoxcBPVZt@777KsrjpsZQo3 z{Z5~dI!iJtG`mQTz68=$dh!*JYo#>me%DFcX|c6lI-Cfho1~Zm&Rv>IBbSG?wj;O= zl9vJIo>Dgl_}nOc9u6;F(y0`fdrJpWfb@}0MnbnqT1|Uae$pJ;=ku3JC&D~Hs%{Hm zpfs*GA_Pfgzd{!*edz^*5XqZ%RYIjBDC4}sOOjfC36dgRh=K61bdriFsZ#ZiKpv4~ zeUQXaX*PW(nlABCh?gO`j)m@+w8R@+rZj=-u~|~TzCfOk@*09>{47#W!nkBfZW_5#bt;%m4%-5;x;(=VR zS~UZln`#hsmF}vCm$g;OI0=+5O3AMCg6Nj2~_&< zRc*Kj*PB#v$s`w@#(W)=M0A!o0Xd@uoRn@J* z#i#-+0okc)L!WTOs$?{ii&Hgth}PYuS~&(}w<=YHaIb0!^>y*8VQpcTpbC5npZiqb zFTfQgsu-H198hii5xRq_8-XB)RCzn#I!WcU7RY2(&L$uatFjg#daCOEFYuYB>Mp?U zi0Un^SB|P?#sQh3no5m)Oyx-nzf9HL2q2HECQOGgOJ$`t%T_(P0Ft9>^a|vpY9@Wt zbxPH48C>V84t@&mjOti9bZ1qA=_{H%)e@>YoKtn*1n#^lJr!XKR57%@ctQ1;3LzI& z{jxzWsn%?R?y~B_WSAGJPToNhS5$wxLU&d5a3RdEsV3066>bNzO4UdX@8W1O6y_V%Yitz>^}{l7-s+75 z(ICF++`qtWQa^cwB>dE^%VF-XZoz=ttnQEuU7*@`AiM;rhf!w1>Zg^s_7HU>tvf>1 z8v1x-i+UVw32jw}E`u;!opJ;uLVal{>>||@sUf4)hlU}gZR(N3;bprzw;v2*)NY@F z>`*7sJTg|@muil2>ShVZY?oS01h-o~mo_c-s87?*P`vsIl}r-Uv9ztVPkquGBvJh+ z3la9K)lCrLp!$6-goo4@o4{w1`VNgU$!dFgvQpFwCV)#-XVJPpP2HY$myf9V#xO`% zPoiecP&?A6$j8*(9|4)E{+N1=gF3^enss`v)HTZXnLfI)mN#qcU@hW3E>TO&p7zJsUABV4OyaYO504O z>O2}BZmF|rnRHuiT?V^5>ZRex^R9YN2z=gC@1tUIxmt{Z@By9zkP7upnsGi<-B)G<>hlGl8pB@9K+7an#HU1?Qx>Hvu|l zO)BjYyJ%Xvg1BmY=_7%)nzN6=t!?5$!#8R_v()6VXkDq4bc$oWZzM*G#v!-hf zbOD<5li&h1j`0W^q!~i%oM6qjpFkI)IZtC_s7ARDBuq2X6V0I(BHO?3|#L~AnWd*E%FzEnfnu4zrh;uy^=1IP}|FlSufPL1ya*u`p|*1~6;W*!f+ zOVf)s|8{FiY0kb!GnckO_iDO@A(wbfTx*a7O?jTn*V?F}%s-_bS<;9x$bQ`Z}s%ZSXuE}Z% z?uKR>ExB)MJU;QmQ#d9a5Pla31V#Y2MMw=C6?ZM%@PI3L(M3fXFbx)rXM^!*7Wm0gi6gBDppl#j^@JW z6U|q&41B72N`;qantL>-eXiNi8ITv6S>+JE)a;~U_$$pFTFt-K3@k#RH<|;@0IAk^ z4Ti2pbN^SkeyjPFw%^`q?$LnxUh};HkXp@j6$~7;Ikj-+r1hqu$61@?0-cL?7X1)p zt+qHGWS#a&CdhhiADZ&JX@4FM19$DcT`>31?wEn-8?=pRVDQv#q0w-ob}>~|ytGkN zVfEHV4}fbQZ3o(r@zwqy0J%v!nmz;a(>|f1lfPEn3gl*OpFiO`Kzn>Vkb&9=>OX_D z*J#HmSSz>3HH2t`>Eou@7ibhs(0S}LSz{gwlAM7#buxTD&97i5;Mb)*$ThBlAN z*vGW@w!$t`E73mJacyA?xGZe}O$bhCos*Guwzg^wxEyW3Vnjcw-9qo*DeZGww&ZI0 z7(_U&UHb`yXS9!219DcoB@lLb+RIe0JEy%@0CHYiL7h&%*3SrJfp#n{^)6^{bVR(1 z+Cx-fE!5`FXAhUO-Dtn+vi2f%jzwBN5#)-t50wJ1Y8x*`*kY~93CL^OY^uLp*Y3Ck zgB#jI^iJQ@rj3HGMC(oq+fwa~%djicKA}%yZ)uN*Al_~5!U2HX(Xz*p#9eJ^bJ&$@ zyVGOyKzpPFkP0n759FbC{8`vN(sum@ULI>-(5kLdyCxP~m3C-LWcEZGz6xHRYTaEx zo@u>k41ca2LhIBQ+6&VFd8uXSWAazpU%omU|oly z(1qv@D1Z#rwVS>LTY(+I*nx|MNAcdxF;FzDiSJ6?cG&`JHl?bGe2g+rq5a4yJx z-JjbL_JHp4=immIy1-cqrxk&e>7`ltPIX}UmQ0Hud`6b=6ayTo}<=qAHif;7xXx6K`$~F)d z>ne^T>@{5ieL{L&x16RNCAuG}C|asZJ^`*w*TV?zmhR~@klVUUf4IJ*lhNGfuI}<_ zw97r+C$y5fudAeuj&fboXgGVItMWy>3f)HyAbhBM)Dm`&bw9O%uu`|N6NFW|F|^_P zOgGCH=FfF4X`AeY?$I}Zywn||{f<|VyM z290;RyR^aeUe}qv&T-T~pemJC9{P8OV6Z`ds0Kn$J$~zf*Fs-IW52ilI&Ikd=zpShm9IY33&KtM!zS4I>5okU z7ofjc3|*l9Xaphz>DvZ@1nZUeAq>&q`2+Dn^%4Hy!t{33n{L(Xsjb8H9@L{m=;zo$ z7pZrkYDJX3xH-sn{Z87HkJ0y}Hrt_>Mj(ludL2C|vHE2qNSway?+CO@--2cdyY-H= zw%?=g_X;WP)gP#YmjwM`BkcC+N5#QQqP~)rSNrv@zOXx>|CBnUBz>EGuuIlIUk|$! z{ULgY4(q?8DO{@l9DN;^rr)*)!Xx^2v}j7#KMaCFhQ4qWd>+#)Y36@iKhOarOTVKp zgeUX`)!?%A{9HuO(ch+tb*?^vCK9LhQW79%^iBH1*;)NJHQ@5}e@4LIoIX7OWn*74a_XAIyb8k^YK3GP|Nbb^^$&`qvJC6ze~~hzQs8?Qa8l zLqC2SoZZwrjs&Dcf7}uAO7+3>VP2-+(-z2EdY&dqxAh(q;p~pSJuT|*>X%N3@Sgre zE+7^9tJE_*)GrwT;UoRLfe7?i@30hHrGB#mAXWNky1pm+n>j!})!WgU`I-JfEy6z6 z$I)2)Lf?EGa(SsgL`&c|`YM_MR_kYs1F6xkpbF1h{g?F3)I0shRD*x7Urp7tT77G( zzc?B?SAcUeq}_tf*$|on;$q07SH{&4LU(1Y;ZOu1>kJQRFkNrh@jY^JGyF>HaCgHo z>h(Pg-8w_K!7z{-!0~-rr zxFOvg@gfYpsZ)(M6j6D9n}H31>+Ocwe*qa|5N-jv!|)}2@VwJdNj+bzVPFSvafV(U zf!t+K(oNlM=tB$5J%(HF;d8Gcrwx$thUEJo2?qS02#>y@kcRR^!#7m=*l(Civ!?@w zGeaOeXsG@XUXl&Dr@*BcnvaCD!-gm~2vZG{yMd$`?(|2VM-11ZV1Cqa!h%5QhM}jx zWf*2nfZZ`e3H>T1({Q&fgvSjG6(6z;$7s%Q!ca@4q-;a-T)56LOgjVaq@f}oNt`l# zH5kHN!;qQa&Ke9H4CFOKOmlG84ZqNY^@gGKL2x$>ovT4g3~36G zQbW{c#49soslnYcyrK2xZG-2>h;YZy_W8Jv3aVpN~8;+@!&@$`JGekWUPEe*<}H*jWYhXNFO7=$;!wDBTx^6FLNX zX_(Rt3BEFnq;lqK154fZ8v{>Y`&1jU%fZzcE{B4=H3ZST=bfQ_2*`UwH~QA0)=;wr z#L-x~1m;f0ZzUj|jj9gd)*6G{K-L)}XimG{c(w*QH{-4M;M|SxH$&%POxGjO2IFul z+j$zhO#sEmwpA}Z|u7njkVd> zn2J>a##0&y1C0$=g9|ZsqLf07<=1}x><6V1@3}ciI*LTdQXaX;p z#^tmcJZ}7bCWKkWskG=lVO;qo%(IQ(4F)8~*p=!_CymK!2u~SfXqzn8c$4NRr;QCK z!tRW**-Yrp8t08bggj%*&mcT!97h`@1;zz^U~s|M#TVQ~qZiFh3ym`R>f@4e`g|B% zHXfk5evz?V0&=-xoZK3^t43>2cqumi+!v5*MlThTxNiKG7AiN4Q|RToY4ksei!L!X z+yhc-oRthnnXv~IeQy~LtcUQn@l0Qkd&ZO0f8IAXqq$AFanVTxdSI-jHC~1BHEn)9 zG}cnt;E^%V74aS$6WRb-XggNtXz7xb_{H-^#{{R^WX z&F5bl^BW=FD`Pkfn6Hiabrs$fV>{aSeQPZG4aj%KgXiJpy-~ji$XcT_?aDfun*9RK z$<%`eFlSTiCsyGM$=lVV|tmE&5{m3o@yA_zX6^r~U8{Q{_lNLQS7gwKvT4%P5$Ko3_xJGQxC|3eb_JM5-D^ znHI3Hi#D~PwZ%5mkbIbLH~nRYKryD*g-CaYX$S}8PSaEYkXVx`10>Eg{Ty_=O#5gz zez&QVwvqOjMma*a*L0C8F$esjLSK4w;tG=1G!i z)+{8LYzmtTF2$7F9^|lT$r3nAHA(G&Ofxl{0mu!7<~+V};?P1DjY(3O}}1>j0e&LX%n z(;52Y;g)GU)xmC?_ES;&j_LCWAa_m73?T2BHVs4)_f4JY^Or+eXPP=ZGEG|uXOB(a&4aGebdAP`DwB%7-gsv+`GLGQt*4t>YidHzwWIm$9B@u% z?@QpE&HcUsaWNOr65rLVqJCnnIVS{Uo!O2GA?wZGB_dBZbC1K|+|Ao7k(r12+mndC z!Q6!wO`hg)GzM%mH@XSV%Y5k`Al~M1dQ5%HFK96JHSeJ5!6x$>GVn9+q?w1m`H?Gh zo6URZHU^jvyTC5c+=@yVLFS^vAi?HwKFB4+JS_;wQ1gZXK!%w+$AjBqR;&WqYSxti z8Ezi`7(OG+?*kDw(wyS}U6lDQ-M?t_bm|henZKg1r?#6vw!lk_Ss4$z9p=~c^z1Yn zUc(^P+@HPa8B>D!qmIz+GvAAa zU7~q=9(4Q7pZtof515mwwsz1wMgcC_JeDSHDdydsAv|o(qs2(7IXMM(X=dp%TpuyF zrrqPCX2;#|l5TdO;%0{Vd=~^dW_FzeFPY}W%b+`M?(Pp^miY=5nNOH4zrj4)d~hXn zIp$ygg6^bQ9S_|pbIKykQo`^Yk%D;<9-XJq$(W{2?G$%2fUP;E2utSW^PY&qFd%Bw3fMT{_Q&$+%aEh z0CLyt9SU;K97!{z`)2pka9wWxjy5(Qm?zL|w8Ffd=DQEg*u%p6VCLx~vB&0fy}?zQ zJ4J(3nFFbtd17u&3$dr>$AjSWnR(wVB>&uex*Ft#dF5@meraw!29Q_g5-<3CZGJNg z=5Nebok6P2hp5x3F{jdq{?@#8A-H$u+HeZ8 zjHXdE*kYtQZHOf$2f9#;O9{-kTDnp3A>6XCA9N9xWi$v!S|(3N^eD^z)<8yEiUgQ% zvvlhLvfa{U2aqwAAA7=XhvjDz40c*BQ9Ux&l5-gbahBuvAlzkXO}A>dpB@MR^M(%aR)k$O+4Qnw(@?hU^EIW2qPlgOiprCkRhjbmzh4T0-~0 z;I!rBJaA_$1vEK1YZ*r+=RC_+Eyy`b9~06&Zy7*!zI;o|cSxzg68<&F1C!bM-P%-am%Rm;3;xGuIBGJw2>Yk=;$r8oAzxf_-~RO`BF=}gt1 z5=$YKR!c4ARj@0wB*h@YElVg1$Zd<29-=!I%NmfomNB$Wy=Tdt4|3nK;vq=6QU zd0@Fm%fJfDvlhtZvBhpINTp>{FW6OCRxJneiN*dPxTls5RFrvU@z{Y2dv3W%P4~jG z_9rCq(z51jB=O2}r31)o%OhIizp*qp23@s9Lk~lZr6J7@-&&5->-)}9Lv!}`mRH&E zQft|C9)TRK6KDs{$@(qaw}yQU zF2?$T`uSLE_wQgAXDy<+=`O2-2lCu){VWoYJ=VeW;pbj!C9NjntuZCgC0K7$0cD>R zpB~_?vKr5z>GoT*mV-NBHP?U~wBG&{!b8@+dqI+{rmG;y)}Yz2OR-ASl^nLt?gf%+ z?bsJSk6Lfgggo7vM&C1JSW~IVk6FjHN4lBT88p2+ZY`!~KFhkBcD+tm6X_?s+1AC6 zq06y`w}Zh+>yNZ{I%R!!0`YRKov5C5+FCXV+!?EkT%Wa?Z~QNgt~;*k^806H>bKG| z9di8dm z)V;fIcbi_f8+LEdVtmss=xcymc7M>P-C#G$1lDNRWrRqR-H1OFn(cgY!Mkm@ClYbq zvD;??uf^`?2=MOOjU)kUwF{)Oy3OuvJJj#lIn!3&ZYQRL^Bs2nRBPY2d$kO_PCLI( z0lMtEDWq<@t$bWVk6q<3h!5;)6wrHU*GNsLUb_`E+UT=eSp&EIb{ptY2J99ch2EfD z^zXR7A-i|R0EX>C1n@9ow}8IeQM+2o*&o{t(QYwr$L@g0gx%bez$Wb`UWTzLyS+vz zOxsNoZ^lkXja^5^H?)*EF_u!g<;-vk0p`M}odro(Mi`xRI>1P$BNlFqHKoAZ876yR z9t`d@6g(Ms{{zvB@%B#u-i*~`(~r?XAA&z4g-XPO3^)7yHOu|W+hA&guq6+#)w9*_)UB&LHH&M0pHF@oVU7g!|YHySWUF*fA@ zi)Jh~!b%JydK*A2<5PbGAIC7#FNfk8@1z1tV4U3sg(HkycYvde529c?k+G5fs$UZ0 z+1U_DX8iU66pk?jlolRm$Z42=f-#HE<(*{gjfCkG#wTAQh*UnXb zp3YcK9l8ug;4d(p$!Ib{FN<;gTj*so?9M?UhjEZ*<);}R(hbRF#D51YkMTbm>*O8uD5cfyEF*_@!(xVpa^Vt2FnuJY4EOc$aE|el6xex2 z9^LsehIki3y1-!5&RoHmp^khdV>fMeml!|(2$3pAG&Qa-GZfUKxx)D6YY?w8UPy+* zHHInxpqinfe6WT=|Mp^bEo1jFc&KA+*a3xlMjy2lt}`~#_Hu&}^8_SsGIj`{cZ<>9 z2GGFx>T`fb#tUblaF4OM7g#%E|I1M5U@Sik>^>t!iXb`}sUP5mbTOK!jOb>hegv$C z;gkf)2aJagp#G5IKxt?%!=4&^eT=7QtLtZ6piFguAyYwNkfEUC5JQZmVt`@Ba;g+Z z7NyE6~kLDGYn z`X@YiG8bon=*3K-M9`br`vW9>n6*^x`ZE8acDo;Q2ek(LnFh*O4l+NXdDS82lg+>a zn09}|Lm)F^8?YeeCyQY-n7M?S?}wQ~FTzm>vyPhDq0F>ESP5hPGXyN0X^{a$Fptv~ z63GmsR#_CY{<@Dh0LEP0g9O0pG2Hzn2qm&ca|AY0xQMLG}=%~m}OLml`^wvr##18bqUyc=IeJM zQpSAnJ+KSRa1D4DnPZedmNP9BdSICQ)r>LEIo0&>w=N;y&Z7|lttlkamE>r$2Kr1ue zgxlK2OsRpfd(5yG0os}4_W?SXKhcl8?lW)Bz-A{iRtRHVOl2TUcQc1*WZuIJF9h!a z(}CK351A1>==Cz^Qvb7$ne{zP_cQZ;195=4iN;-n%o{7AKE!-L-H~DD&DjWPggHTl z<|y+A+Cm;Nf0_-`V@yZN@*Xpth&axCfd+;X%!`y3PBL50gEz&rYQURjGHAn`Vb0zL zn~tn=CIBbaI8_DCtZg)obz#L%LBy3ck1p&0YcUNP-B_*rA?eNvoC`@0*8E1;^kf+} zB2F*Xf_~H{s*(( zqKe@#YwYE@Ivosr_Ucx%~C5)A_ zPEbp)j1@(_t_!RrGJTQNORsPx>lqrJTw-l|6OvUdPAsq+EIS(cG_aazy>4VB-bb8G ztcYXaHM1(W0o-PBmq6qWt3m^;g|)*GB6nFwz6EGyrR+oyZLHy9VE0&Qn*rKcAPK45)7?WsQ2i`1O%XDwX-Fu?Mq)M1dd?f@i*Sb+>& z!!Rqy55y4`YZMnY$~sS(@fgde3RWJo`f24GXU+Nzya`s{573)rU7W%7O|f33G<2Hf zE`rDmE8qZ#j_lWJA?d`<`W`l&*&mKU#D(4bCLFo4Q$B>q0XAy^fE)W)T9e(`Ar^>u zursJp=gB^#hNKsp9}Uc#eTEK=_^@Y9L&2AAnh(={?AD{u^JkaP$ovo++aKOtb|DK2 zfox}LhXt`6{UH*}o}e}BF#A6luuyg{6{unCfe`o$XU~2I#0d5PHIE|M4&*P2y~qk) zH2X**KrH)JT5aOkN;;n$&rYU8wh3$(3gQTR=6#49W#6tuWXbG(%>c*PY3m_!l6{^! zdns)HPY_uu`xFb3r`U1xA(F=Kq~>ip`wneV8SHv$NM*8zD9O)ax1NMvHv1FWfpXYY zL6AJnj-ulUx$Hd|2r!Rrn}M->b`-5d1?&JiCs4@VPz7EQyPD22o@LLc*-|n4+;@s^5l}T6FD_cOk$}TrTp_*MvldT%|&QlPnWxv!7V|DC_ZkVoTS8;(|XP@svEH~H_ z)VaLLX8r);E%w*6GBmKI-@;}idlp@E6Z?P};0`;MeoEZJzH$yCciBrU0Ilr#bl|X! z{c$#o-D9u&3RXJUaYvzWpS@%uymzwiP>-{VJ)2UhZuT+it@W^2u=fa_98iP zbR(lUuThsVhBKcI)5LO?FM`cDP9vpv@tkt{xDq&RyP$A{Q$)>`M9vW@M3Oj_ccGrl zd3PPaF;1QYR*rM_hePrNXNY#76potS-Bga5&Lp1VXig#cG)~v+u#(QX-Ung^r(gsD zW^rDpTaeB9<_h$3I3Lh#@H8j;b6~lgrBvDEaejCX#tJxRXb4%zDOmxmh*L-NsxzF3 zNO(WXdBPD2#hg<5U27>P{tmEnobWB+o#$|cAeM2Iv`=5)I0gb-eh(YfDt&Q&pZ9h^6Mfpu}*sN>nq`Iolx9*##2h`pRk*I>GjlS0`{KgW?Ow;|47 zZ$V_36GEll2&cIMrpGwD>D745x&JIYjB~zEfUzk~Fs%jCoQh89&2Ty`kaXmZT!Ew$ zcV`JqJ99&uKy=~8`~*o?ZrWA=H}1?DSaIj3o`j?acMTm7@Z>&d2hWQ;ss_)S8#oMg zAFhmwLSOCy>U;ZhGlt>lAUEe<*gVAj#t*yzZqsML0=cs{Lp_Mw=?wK?E{h6|!(0(P zs!(n@Z46=DxHrHH=Zaqd7Qx+3o%~3yAPZKaxEYk%MswNiP>A6^^%NY%ai4o0ym;=m zIA96f%d{9D;U=B}ILdwA5yld^bCRH!#LfQ_-j8!H(C-*daQi5yJ;{B80!-n?`amI- zTS&S7DelZNM3%;#M{TWiZmc8pGP#RRfSAQKcR?hZ>qnbL4)^>*csR}7P0L{}w~t=M zJnj+dkmqw>q_4k_yPeKt6me}&!PptD8y%uL%Z;ZstC)NIUGPe{@3?_j%2iMg@ErGV z>f)4fe~*F41@3Kn02jGiAAnfS4Gjjdf*U{+hf1#B19-T^Rn7&mihGT=!7JRW$?$%a zTS@QrHSTA0&ZC<92lXy$xZ+;$YPrqN0@QKerrf5UtDyrIH@Lg0dv}vtKxxG-?yGuW z4ctL`4vpL!Ujb|4Hj81bnY)2n1Gl*|$>81PhT34Pm0L0o#5QgaJ)?WvPvuZ(=T6li z&JJ!2A2#oE?<|K%CwFQy!tLfd{tC$+?y?Ud@__qoCx{QZuYCezz1-Z7!0Y2adIwhe zxpuUu4sh4E!21w4lXi zHE8e^`s+N3s!JB~j@jj!9&!5*82yl?sL%pX%yoVnl zmH^(~VMqq@;#R;|5YI>>tzh0cO0YtClU*Q&@kSTGUpTKh0g@3sGc5^`yzRe3B#PG_ z04vcv4sC8RyaGzd<9H4UAjb2)b%3J;-oa+rJi-&uQ0XWyo4Q7cyg2IYCGpPA12LJm zfCgj7d2tH>PVjo4gvd$WlUo5&c-dJXrt(6^VC59AwFtyCo|`?0>AWz?4l{YHR{_i7 zy?+{5HqVjnbq+5~1ne}=KxJnx&*v7@^LP*50xzG}w;sGgUiT{?7V#dW06W9`ipqhr zy!oXNDdv^$1~|uyrY>__94K> zygx!M{JnFX1niFQ!B=j?Zp{m3aO$dl7B||HKJ^Bm5Xj%#QMRt%pb= z-z5;ycRK+J_{XUQRmgXZ zhGY>xk~+F)`S~EyT43*E*4 z;Ax0-^BFV@?%{8E1|A;p7tI5B$p7?LMBU5xr-ptXf9naT_w!eFL2rQnst{HN`O)!E zAL8%*6TD&mzMsGw;g`!n9Oc{7xspfx=jFJ*F~0i~@bH*l^gblV`I~wnIl=d!V?LAo zcIxj=@g)}_GR@EW911i1Ndr7M3SRskn3F&rg;<;gF@FJb5%^Gn>MHp99P|zdTARZ_@BW;te}=g`*8yAFktb5+mu`;2%e{7eMbcU?1J7= zK|VEQ5(Q(_FGv#TD344QY@~_iF~PI6qaPO}^g-l=;6JKGQw5C)0H*{ezJ)@X;MQ!2 zqzitco?M1t=`5&c3TBQ2%M$#&29nu=muZHXBY2Gt{hSswtbplU!5pfc@&wP(iI99j zI30Q|5NM9VW}#r+46GChwor|JMlkv`B+m*Wl`vK;NTrp%MDQm)oKnG`^zxk(+@arr zofkZx3J+z1H|Xmx7uYkPS0Q+jGM!4nN0f$M5`26Q>Qw?R<-%743?me-3LFlDculZq z4X|p#PA$}H1OdBYx>oS=Wf1EHYjBQY_I1H?v^(7pqb`)0nLefc? zLz8T0;n)Qja}mBkU2s=n$6p{G5N7k>&rMjS1m+=hp|Z?VxH}0}yoB!`g}S$JC1oW( z!WSti^%HLY9l&4sG{t#P_$giHA>p^w1qcv^a}j5t@Yn6o3lav=Df|%Ojn%LjD&*6o zB22iz9^S)+%O64^LdX*VixMvR86aAC=2L(e;j{E?V}<3^xQ-LvqV`R^&?z6hBSJMT zsz-$*lK_drxpojq5;_WCI$8J!O)-uMZ_pg*gzzcqs+<)1)3=f$45YQ^lyDcVb!oyU zXvUW=%uK|EWe7_aLp@WtogP)T(0vNL9AOwOa;JrHbc`Zb_}^==k|(^_1}tCLx(-;O za3>!j6$#H$@^wa777c%Ag-b6Xq+(&|O-Pmqe{_bibHa@uL-M?EQ6M~&3AbGXRw10S zgI=YOp@7~cp=bpZs)P;g;9VB3q2JYA73Nak?V9jsYD88GnZE$k2)C4hS1YXe7g(Ke z1=WA`!Y3(tz9Fpe2k)k^JO_HWgkPNkXb{fOooE!UqX3(Q14j|kZDFAidUu4UUV=!A zFzYPT?+U-88A_`#;x7czCX9a`phNga1Z>_H&Y_t`r|=F{m|ep0N+@&-m(ldNNBG+v z@E!=){R;3<*x3!eUg5-k@cM+Vevs@JdOr`h141V%Mh1lyR6!33=gWLFdJY}_;wJ$l+cGNn`z+_&9FHm zd?W$UQPlJr{5gp}rFzU+^z1?ya}n*NbjwxrKbr9!5dHfmh;E_w3>0NN4P!x~ zQu=&DL?s4DhKg411r{d4pB2P9FM6REAWGyF4-hT-tR0TxL~?pR<3+#GQj#D_rH?sL z)Hwi#)fYYK4KSCs56#WQR3PeS-AW|sGrRhMC$e&WGGor@52;!{hMatcZMGo{!f)de- zw7-{%V)}rc6a7jF)_IZ3d|($uL;r)#i=x5P5Gfb&XpmYV`m+?KD@AvHhGdoKAhpUa zix$@bToK9X^}Z^4fler16Gg<}QmRF@lxNk5o^JqFE80g{dYx#?W{A{_0*k@BE{dWr z;D*SFUg(>msW@1P`62V51Y9B1yzXMS4nAMnn~M2x(fBkPP08XwN#Bb`%Fa1wAKm zKJB8;;(wloh>O@jEj?Fpf+sv25EncN5jXL!e}Q?52a5o_#6~(X;VoW7Ll+-$WgUpV z;_sozuyaE8RC{r;AM(mGy&v@ zE!4X>Ev|YB&o5Wpb_bFL;zIhE3&lIAG$|6-d4X6gcKH~fMEu0da8xQjau?u|c;9&t ztHjBt04|F$&cO>N_NE-ATD+ESNR4=+3dCCR%a@=~Ctef>)Aiz8p8&fl{(?N*5ApHxRhq`2h>@(Esmy?>W+BXTOhWG&4B=S#mBp0tW`X43!q1AbOLxF9)AJ;9*Qr} z0HIgBj0dbwTuSGH`o%84Kx9Dt>0I2iLGkV)5QoI(?Eu4Kk2e7xi8mC&-k9jF&KJmr0Q9`wTXZNb0tNmn3PU*E?DA8&#jjBq>ySWk@2aQ<^DZ zz6>i_62n<2WJ?ZElAj~_=Ptl$$y@#~mMiI`8EAfAzAYk{4W zyg_H8iX|V=*s4U5eF(f#$@>k!&Pkkd0M1K_X)P#|{7%{L1<7atJY1AGt_QJPA_#-` z3Q0XpP%9-bgdyBZl42A5RZ0F10d`sPGtE%0NYej?I-lw{nJOpd}>lVsV~Al{bL1S7IL zk`ZcPwn(T50AA8resJV1<%h$VkJK(3 z#{8sWGcbSYAzC;ON}H(EJ0z{5MJ_;kE(XLPsjC2{gQb5^cjU12j311JN-rpYg-Pd( zK_OgvlWt^$^lN&kk@*uo)+PJO?0Ns(u4{3DRjg@}4O5 zpd~L!+EWenWa;l4p>SOKFb~8NQU*P-lhRLI;UPupa}~T)>B}>~(xeL?LLpuH99hYb zR^EcYOliCWK$i69l>ph&0UFBZNOySvJ1w2J8X#A?@d9k-OM_O!SbA(J@FC zN%w9CI3r!g1+iFK{S!==NEcASQ7Zjq0>tyuc@7A^OuCf^;svQk1w<}NCA3?VON(70 zQYpPSg~%>R|Dm+EO3I-!;=1plY?H#wI8>m;=ARTgt_a^Bv$^e_C-?V~wTPoiK(|4r53`4y|`p5ea zxhq{t52sb?ln0SE>4K%Oa!jcSeIuwuBTl!WN zh!3T~w7T_5f1zr=U-}(2eFvoZ^u-NImwW`?khGen5yR5l+u)5#JD-G=N7AxNSQ(SL zPa~wq(!6>&8ke?E{V*X7p{D4x^acZxGtz6`z#L^)KL>D@Ew~3s7g@a=n5%3{A4Cqw zo+b}&viyDEdB|Ez;K);UoiYJ0S#>x(c*|bj58xxStp)Ivy+ui|pKOYbM)}K%DBU_J zTR_d}0NFnhhy==hB*`FIG|eW0WqH&jIV@Yt1Tj>0HU%ESWX8qN3zz-zI*diiwjBg9 zN;X~$k!V>_Gq4z$@Hj+bWh?s-S-dQ-7a=9c7SMp?h-{Gs;HZp4HBh4LB8|+GWQ*zR zKQ3EQ0^SLk8_iQs$_9_ZSgP!mA@EMgevAf4lUeDbOqXSr0?UwnX9CEQRUCkaY}rSS z2qH)JJ^lXSv@DWJ(p=e7G&{?atxN_nU*<~Rdx2~-brK6@ft0G8k$u_@;#rxJx*Wx_ zKuRl0WIJhqS1L;)W9MZvlfcSkAyh$MkgcGTIpwlR@>e0tBP*4%H|)T>B+Cy4u}bzl ztxH#AAJKYtRn|o*+%?&9s*kE=9w#7KBm3bZBx_}_zlD2!U3M%K;D)S*e#&@Lwk;0| z4YJgqpwK8gdI148$@bG4(kwd>0^)61cn93J$i!g?_pa=}5r9@%<4N$^WFo3_?#Twk z&})~ut%AP}*^PK8+?QSb7LuJZ%?=Q|WmjoO=#fnY!TST*mwQ2cC^OT8A6UOE zBNo_zEP)MdP`14VriW!7TVZ8HR`waNQQ2}@LmtV_EdX&$Hrx!Gm>1UcR0h>i8)r#$+z!>WVgIj0MH{h(aC@Z^4KAGe<=U=H-KJwIjxF)@`YmP^~)XU zRUD8j=7BdTZ=l_9NY17sIm7ZXItVr*|Mf#)qw@Wf%s!HL?trWf8e<( z)?SAdcg4!pz&sQS<#6k%XrcYqOOa1ih_~X~F@)r!7@dKLufo|4B7Ta+;}G#zte}+t zpn`Vc0mwAn-`4!;g#kqY^X08xrE+UlYe*ZzTej3SB(j#xz{b=~6>zf<$}h+-L??>VXn zI0s&$Vv^q7B!w@fD#?n5abU+3KT`&HT+zG}dM6ZL(AeXoV(1QRrYK&cR3%kWK+S+t zivBZ@OjBHlDvY22rnwrp@M-A}bEY8WgeA3T#xIo)6w_#i33ZyQ8pQ z3(%ri@&okR6k(J{-cvlFU%a;~9=!!#r^2Zf3SEjNbXKKXkwGJ-hl*8{+w>~x&x6>f z`1dP-L4}c;sY8kd%YY3lf+ zUF=8b7e}u4@Sb$|OUqW}T+ zD^$45K>G)jq6XQ^U0@}|e)R{i8EWrDU6nBVL&>lbX@8x{_$YfnS|g+F7gC8BXYV-* zk$C&f>j4t%|92XW67Bc#U^B^n+l!D)wx2!;EXDplb=uPG`G3PorhP^-By;Q^?S-Q} z`***GdZE2M0Fr0z576#ZYX2Rr&}H^(#n3Ca_oe>lCHpT!p>V}ModzA%_J4Olq0asx z2jGVNL28ON*e|Jtu{-w1D5MtqC1&`$Yk!`0wR`s8Pr_}x{mv&q?6A+J&QO;w$Gr&KvZ(qDOR9XuRVS~o!9kTNM6Sb(zgb?^d}cfSNNNZBfd!eQk`O7B9H zne?TGDpkG+K0+B!2~VW*BRcgFrL3W4Ek+sM3cXn6x)FdlrGFHN@ya*n0VF7A$HU4I zWipi*N0m?g1}sq-PCwyERyNVgeoT2=0?FgbaY{f^l>gFcid3aPmH(%dTe?6@S8jS1 zAVaxZf;cmk{&b=zOW8$Zxol-4)s#8PC6v3JR(?apNUn054p_c2EF2;Q%E%CSC{#|= zfp}K=)i8*~%Hlr(N|a6I;GI*hKZcObD_=4LD^q4mAbCMKK^>Qi$`y3c<;n-k!K+a6 zcLS?bW;O#f@>uE=*S6=G_@4E5?)!H|d zpHRc?rt<6}V7HVXuf`QMC{NRd*{J-KYLX`9+z{|?EALZ}^NzA1AD~6KoClFM<@eMG zxu?vaJ*Qncvj+{PnF0AiQYDHZD7$`U)=kRByF6Y39?bKb)hJydRV1lFsx z(1Yt&Y70OdP)<@Sa8S8{7ON3u-+6#hrGS2o^hjxU8sM?AObE$w<$fz{PADUbaYd8L zkNMzDDHEyxGOfhlsK9HgWViu1s`BUUS@HK?5F0W_*QMDWn0@)&|-vuYjvV(hl+ z1zP7@R3@4qwWHr+Qc37s$*}6pN$8EJFoVSFrW*Ji7d@sLtO0LA6>Ws+Db-ul zD413)JObW~YMin|M|JWOu;QeSrVfv@+K$#wSG92#Jh-bj(@X2AzDMmvFZB@`1bC~P z{)MEEI${LszUr@wpzf#sYXQJP^(=a*foeXz6T#|Q2CN)b&-xm?5cS)3z(Uo5Suhr+ zUe|#u3RhpH1OAcf-|5^;jQT11isRIG>G*HFS|Npp1oc)6)Q_msHbU>HdKu+JiRxD= z)l63N@FmPXp;pl6o1!jtfn=)Mo5szj)YD}EY3i4#g^{lQHWUgOY6+FAS?VGyh^N&P z9O&h#l~gq4t8Y+iu0S2t4v|8&}C_`lD)a`V8%G8yVx?fN) z{sLAms<%^?P_BNK3Zn}3F{)uJ)gHsRqAK+pCm?xMy=oYas?`hMgGh}!?GUh9b%QS? z>(uklLZn`uMSZ^O>g{5P+*Gfol(<#>+qVF1>I+oq-&23bh4*&#N?Ln5)b-R&yRVj> z2k2B!QR&sC9$gHPZuL^?$oHt{ut0pEj;Mx}hw3+JA?sB)KZ1IndJPpu{p!?}h-EaEnB98&-24BoJM$9`ZVYLD44HmWY7>iUs-9x05e7i|Z4tk$jo7*}gq2!28x zWdWE}Z`p|pn^F(P0Zgll??7)xT|rO9S;M8{WGnD*63AHk-dW?ML{_-nkr2JxWgGzEW1 zW1=$>0h%lwf)CWZ(FG8samj$qV2ywZmBX6sO(2G7F57^GYGSA(7^VrG1-)?1il2Z* zXl~L7EmD(8Bl;Lk^i}X;HG8Q06Q?=JfnL03DHSmZn(ghtj%ad=0FG)tp#(Bf(?iXw zBu(}!5J}efQ-yL&lWGQbT+_7=A}2I|TnF)_=351@6wOx3lT$U$8$djzxkQI|(lisE z0O=a;2XLFAdGa@?XKHS|1JhX=7iuD8Yv$6rl%x5HO77E|TU09KYQ~m8Ay4z#Gq9Pj zx$`D?1)4X$fkL51(E_YUGet*-&S=!N5IL)P^fcTSYyOu6(^8+>UE@@cn;Gs&BDF^Yg zW-%KgS2WL2E_F?_{UU;>)<}=SSdHdNGeE6IvL1SM8oP0Tdd>U)-@?~84np#VX3tBA z?55@oD!FfIRt3UXgXRYf^cpp@b6~Ssv(*XyZfiyZA#z7E{5(L5<_smecQr~IuvX2* z_W;^7F{4npr&&V&+BLhr2iBokW`oW9nm6fWPN$}5FZ6me&Qw!A(CEI0eHItuL7IV{7uI_9JTE82*OD#aR<>^%b>5yMSJC4 zV6NKjUJ!BD?&*ezhj!Zwu<5B?M86#J($3J}$Xk1sdcQu}tRm+8wz6qTJIMj8K|9K3SyA9joO*P+Bn(~4r`Y!1TjRrlir?C?Qt=P zVcK(rAckv?(TftHb=n0iQu~J%B2n6RsmzVm>aKtoqg}cK-ea{*R6fRO@6qjv*FM3A zNP<>KDfkiXZ%@F=QEe_If{EJkCGe1>m0kleS^M%2h~=2}I~oli*G^FP=Y+P9lA4p+ zOe+*pw43SGNYzRy5j>@B&j2w^TS7TlrnZw7k1TDi6R>RUD81!5+G|M=IjtR_gG9O7 zU#Z)ar){9rAzvH)E!-Ap9XbGtwAcy4QlfqR9q5&6zocIC zdF`+gyfW<~I%aS|yOJ`_i`uJ8V5M9eL2GM;wuOqHD(!qaEqPh%O8fK`?T&tkT-B}* z0d`H>OowHwwO#e_P@|ps2)tVD^VILD(@t&yv0i)61#w>2x>3XQhE`3-Qf_J=QJQ^A z>$xA^8?-6ZX=~JG(c<5vjiGg^S$CVDRo}SI{onqV=S9`(3RAy)UiWHrf>1 zv|(z1ds=x46xy{fDWTAz{e`NYZf&U*{(7`CwC6m~#!<%dP`i(2n7vxT(=gVjwS|D! zukCvQk^|b=@BD*ggUx8&W*e{=-78M88LxYq34aN?5Xy9p=!V~f$Wfhj2}BZgH)+P6qno9pVF|>Bi|MXX+}-0J3yx zjsV#@KiZ3PbRO>kJFR=3S{S*yCzrxzo^CnS;rTlLZtx0pl5h~u=+@I?Jgd7-MSZbu z4}DxEx`G-IOLan8m(J<_bb-QoUBw-MGF>*60~d6AW<&C#?xp{q9O#B9-Kx;NO^24N zbjhzl^0Mv+nyX#WJ+U5_a#dGa0pc}XGu^>z-NTyzH99pL3bneYm*I-)bSr5msn_+k z0K2ZksW*HGx*!!K8+4ttGdJp%{tuu@XGj5P)>UuAHQd&%rUuv@-A@AmExNAb(7UVq z>s#;CnI%?{mnv*7){E{$HPPTh7&JbQF|>9=zabPMQa zJ=8I_f!M3dCr5p{SQ;+$>%RUSU_cjf7RCm31ymvq>11yLjOwm(VEU2nAHv3TCi4DR zC#Jo4TzB_VU=z9o9sEt|t{ZTZr*zNegE+1GgEE#GT_3I9j{3zy@SOC)_3-Yhf9@9q ze?TAl2mHC|`Sgh0_5H&jdg$jhf#|7^z6NzK{SMmuz4d##AmXF<`Ty33{!A^r`{`Fu z!sD+mp)V&upMM3W1NCZZfCcH*%K?J*rUT#|)?cdz7NResvjCxb?l`b8eGg?_;rcIW zkQ$+Xhn9;-ePJ5zQj~tnT@YjSOOrs1(+4^L#Or^ij%R}Y6I!f}=x@{BcvR2$99W`W z*a2fn`rc54l&l~73D^mJ0p%Je^&FbSr05^N3)89k9u>Tw(r5nzUYhNT#5es4}g{Gz23*AoYRk80r9;4C0Zvg>gU;jmFvHz!mmQ_ zN~=_*{zp1Jd`bU4bt|g$7w9FrtdEv~ctyYFa~Qj-&!WBmn!fNEh*ax;oPw1a{k}Pf zvtIwy|A1ZBe^>zC4gH>X;P$58UjgivzLgrL4f?+5&VC{OwpOEa(&)W~1_w^fN!0XiiGy*GK`Z-^K z*R5~+9K0TV7av%!{_u|osZT#e`%%BX>pjFdpnot3;-J29A@qjyJI=%Ou>Ltp7Dn_( z=zQI%KAj%wBfXr`TBMBEHtQHkho2poW)Qa{hL3+hfIfyuA=G^hGFoQ* z49hxz`5W@)!t_DI^aQ{m!bI~fER68=mncGhVfMB#TqtEfEQ;t zS`J>kp<+1{5)5Km*^d~^R6!p#WL*GAH0+Z>FUc_feSl;`vl}Fj8FoL0`f-C7Ei5Mt zatB~14WEXBmtxozh#*o84&k`yQ-%~zfHcEUI@Hq*Pf{h7W!TJu>1;#liy-D0-k|o> zX~V030puFQMX-`*sQMp7@(nvb0ajpe-UO`BFrRwHMFyz|*Ko!lqL1>d!8RLu#fFe1 zU?ql&Um&DX!vi|BbJ0xqfdK0bK3edu8#MHm-!MoWfZa6gq?XAogX?ZcHW;+Cpx0;!-Hwo&4F3iJG#joS zg~)9~745fo46kee)?(N|Hrot`Zb9Up!EPMHcEeL9*z7QzGlO{Fu=F_)I}L35Qo9U; z&mr7y!<+-K(qnjKz-;DLlAXGMh(8Rfju%TDul?GVLcr)cx>>cMSR?F`8}vl7!-6&dD5_r zR<|jGv=Z2~VJH^HW(=2qg1V#eZw(Zjj9<}v?QGmm<*|$L6JHo}HFnk`qyxr35e*o-mCsd|Yueof0$oN>e*ym({S5I_Q2UC=vX9J~(RQRBiL z0ExyFS`w0sP1I6IHa_bOkz>ZzbGVe_#uVCNPZ-e zG#_r$j7O;5o^DK{)FHztqm)0>m_eyZmhsC1fNbNAA0U}yd_@az+89C|rCg&kl^A(O z`%5sEZ#2+>ivpty&3y}vnOhK9kkKU_I)+)d4+ zGUJ#D3KxvybZX$D@$*s`D>pLZfK?dFCSj%0xFHITE*T%32CvGPPgC{FMlS7YSB%H% zfL%4-qW;-6;{hsgs*REKt<)I*qq6|DM&=%XI%DNpfO=!#dMI2sHj9AWFdjUIkZv0N zY3h8-n1%M_>;|Jd9f@l+imt;-lTl0MPP5UEc9Pph`zQo)$LPEbycXjtOA*9fX3tpSi`X5Z+GcMZ!tlii~)pdt)D?PFM#(sM4oyO1KfLvGG+5!Df#eH_*^*!pNYe=%g`Gfw}%-OV%201RKe)?`*P1So4=K<3hnrXP16zgEc-Sm_k3Ld6c z+Th63w3w0_FVp@V0Ny4krOQ61=UagJnqGE>h@WZRFff19rVTK5(Bz;8IArRiZzaH# zL+gB?DW6(NL8cwUz=BQl=YV(EG$$K+A*Qm|pb%<$h8j{~rYOo$!c7_f;8G$?YpFnu zG?k`<7-gC>49rooG_8EaZ^1Tn$%+H!y+rsrw$depR!jyoorKBodF$@Ioo zkW4mRr7z%^X#?%k$4xqVrB0ak(+7Lfw7e1^#Z*TNXR4`u33#VW_f`T+GkvoSv80>o zC!m*M`h?!POj8w^&NAKp3A}8RGri?GrmqaJa@zFkKhVoHWzuGvXG);FF5e^#g+hU8 zPYM(YO?RJxLXpXjrle;~oC65{tm#{NaK)w{Xev}sddfH&6($q_d#3j=vTJow)bE&U**|cy!tXwgz zIS89qO%pNDyJm9R36W~kcmKjzjphbe&2L>1bUsOUg~OgnPOUCy4z%+gFQW_ zsUIQoz%)u}??Y2O)y2K0%|1=4aBN5O21*10!*N~n!ljE8WM?oAmCs4LFVxCEWl~Hp%9j<<4 z=5ujHW9E?!0FTXAqF{R5{HHe*Cd}p4urg^@QW7;~4yCnq+Pvg75NFI+9RM6H(<=d- zETOc5Ia|D_ws5g**MjJ3IYg<-0n49rpzdZ#r^ctd<^B_};$g9;R;Q=MmI?(gO9b`7 zye&&9`SP&@%MhTiMY;<-Kg+ZXdj6J%jZipf>7tI(AhFJc4A9|sdOSEr>S-kr}47dE;29XHM?NPr*W`^wyoS)S954X8DAUDy3U4 zOn{hSQSOGZOp6O0s>rg~1Q5x#oc$j_jwO>?3a2fyRD_gk*)j`Qo~50dEBTg#R$v7d zCpybfX!)JSGewsAvoLnXvXXMsvz8aBt66NBd>_0LOFwsZMjAbw;Ic@bONQ;vO)yYb(R-tS*y3aB?IreCGQn@zhN2t9mJcKO;14NmZj}O zU=5b=+Yo8Av{I$tWU>DV9-1vR3AozZmdzQ^yJP9U1+2yLKGhv}EqgrxS}mJjgTFRQ z3?&QqEdNp3+iuDI3Rs7whjQ=xmb_Tl?6maI(6h@@LvFh*yNbZ;u?TNL{ek6OcYueM zit7;RwHU}zpXJSBfPRZVEw}@g<20fewB+YOeaO;HrO>ct#~LV%Se{ZLmQhRV6ht0b z`st$_vlL~6_t;V$2`l549n?gauuRjWV$u?Q5WFc%K`IocEo*-SamI3r7Ar^VI}zYH zS*^78I9s19gJ~CQ8$)(tMe4p?`556sQF@GyY8RlF6z!@A`&MCNH7psV$=#y*4< zZ)*U(gFaRh6&$|SUG%d1S?5vm>~H;h1mK|crAfFwWZnEHK!EkbW*7^!4(bt7kky+3 zEZF)iHG~gaJI(+Lv3`CE#zL*1(b61dRnr0yZe7v~UW7HBI#H3)-jsf=Ubn1g=B$M>IjiStL`-X6Q{qz!8(@$yl7ox zgNJgf8+|JkR;LFbR$Aw)0WMj;q#=2g)z|>jm#tsYjl5zFl;BdXTIWy$<(gGY2~V|k zX$DN!SUZ0PR%_)^tzBm=rMX(YwVIa7>(*|{2X9zkpb!0~^|^TPZdoO-0c)_XpnRgy z`Y-^X$-0%k_hze<9?orRVgpRyu}0Ea)E4Uos*>+oKPiV^t5p&On{C#*U?|+PUZmWu z-FoK$cpX;N9>j9rI{67iI<1GPFzT`{`3#cX)=M-k>#<&Q1bARo+y?KV^-1d9^;(zy z3=e(Qu5B>ZZ~fgKAq`mDMqp*o+8+wykaZhf!?1Pb9e@$*YI`V*TEC!O?U6O=J78m0 z$84B>Yz?Fn1>@GgX+$_-UG+LbnzZV>U~I}d?@gGVw)UD~WyY$?1LkOxQCr!`_SyRo zakg3Zf#+g-ie5ffTc|s%9I&-8A>w9>kb~%MJGBvRJ#3f);)}Dz(XkXSTO5^8zP2GN zh<>)C9svF}zn2lqL0icvtQ@j^7!Q8|wu3Y)548P6-+Pelx)C7Q_C4ibhi%KofrZ$< z?FR_8t)+&3m`!jU3gNa@@4!QZ&2%2bNZS)MPKdJoL)Bok?bX}h#n_(qMx3#>BucE~ zY^(Yp5^qbSwpN18mrgz$v9all%Tb#q01An=y#LQ5ZS8bwC)t)r`O7g|H5FpVZ5cE- zJYhRPv+I+#&SF?eu|4w&)KhIPH0?ZPo2EoQ&32LvkZyCfL!245R@yf+ZQY3w$+CT) z1Jl{IS#&fb$7a(5oVHnx!E~H0_wPjLg@0@KHEmr4kyVd}d*)GvQ^n&g7GjMd#cGG}s zD7VdC1gye#eGnp*wvBItc**wf5QtT_V>INsY!lM&i?7(q_XAwDy-q3WHQO}po7J|N zQxK`KHBwu-*7h%*DXp{pLuGZnZ4(`zxo%tS4UrqRjTgbYY3uzOrf=D5d?C_cTSdD? zqpg_ox+Ys5eYefFGkS>Jwk=x-?2c_U)hjKwQ z+il-6fOXhh{)XH8wi((3I&HsE<=tgVr~JCx7XKx%9@|}NV?VGRY6a-CeMxQJe%mjU z&kxuxz5#5|W~9T_L$+;>z=mznYoR`3TSPhgs4c}8yhpbC#Ry`|_K@D)$F`_xVB;cvCjJ9$?cpjRop6w*P3eadi0P1gtnY?EL@kh{M-Z^tw1G>Aa1r zLpD9C0}kKh0&{a1H$dIp;U#MGdN_1YqU7mtEDo5L!+VDjptr-b0U-J~v{KpW>u{Uy zpr1ny9h>rZ$f35#L5BmBLmzSwQWqe=;Zi<41UigS_ch4jS=y_D9nR8d|FFY7TC74G z=F!&}>hJ@V)nN|rj6xyY;VEkVML2v<%V?y-B|c0?Idssz8SRk!|7Ry17E{wV)}fpB z%{Yg#MF8;*PlP}r!J+y`fFlkcQ6uXp{kL9xaSne|#gOE%iW*tT4)v6x9&@;U4sMS- zWIPFQ!oiW6#U~wVKLRhsA%V*3R0lns4>{#fxCH*v9E4O>r#rmi1T4eh6Dkfe9o{|w zkmXSEJN#uk3}nJXj>EP%-1*ZEZnRkCIvl6cInSY>03!MS$I^AjWnF!L@j>>3JeFBm zYOd6#mOgv$ftahzN;56XEUh#(OO_ye<6sD~WKY?kATneKB2z)8prD8#I8cA@^L_pL z!{Zt6bM9x|d(OG{G4}lP;0oBkI>SpLyH5c?5qlo(*%Y%M7XfgQ{R6%1m)MoJF{Bc9 z&5Q`*?P$sVEU@D_W5>c$TCMk=H`*^N}&-)3Jb0icVm zqY0^-eK`jadf1OY1J}#`fmZZB_Sdx_{p^WhM7YC#^Jh34VE;##GRQW04VHJ=Q}q1q zv0vW+XG3f|I|GWxnP9(9P3B3qdpgJyb{gICr))(VygXy~UIgGdJJAP$rr3W5fqTK; zPG$8=HhUFJUa?m#L3pp=W0Z_y#vp|Gm&dECHE^-{q!Cm6~eHbPsoXhucDWx1%H-witX9E$v zjPsl(&MO=<@>0&pPl8DWM?-sAl^n+)m{f5(XCnGlPSgtMsyT;g@2rM%ih5SHoIENj z>Nv?ljO-dma2A88=Nw1`pn;>La~Ib+DfTdF3$#FAZIBxvhH#gy#(MMC&wCO zh$HF*8Rm=+L3f|iPMymKoQp~faD=m;5|@XZB>J32IY#r~`Vr@YCU9dMFBx2qb57Ht zk;k0fbYx|M6G7|dBxl8H_%@79P>HncSoN0deIz(WcS~ zt~r&6Zd{vX0Jw9#+Aj{}F6n|UjJqWc z@NjP2HvpXFR@2N7!Tp`S+eq&Be&Eh=J>G#y6!+xMa2?HU_yr_}Ymo?DEVqZ+T5;U< zT->bl+@DXtXFPY&QA9}KR#Cq^k-L8ZND_B&I&{h0EebeG;pWW(m&!fs23;CA-UVLL zxxWTMm%;sEC3Klw9+i4o-0YdqUEt=LBVIO_F%CcuS3?_rx!g4BspfH)(fW|j-9hDC z0k_u(q>wv93ui@K=5$yVbAy)vcab|y0`3ymaXkPf+)b3^mvTd{Bi?21YU*p0aj(!; z`xUM?rPAfx%`_)haQD+zdnI?T6>wGDbJQ5T%9TxGNY&g)+K;Q@zN8YWmiys(1ghiC z41@3*ch47aUC(_?lW_yrjg5HMxoK-)*~r~UU9lV7GnaP8a~^o(wDt7!w_7I*P5bRFDFbVEA10SiHHb0Y^J?BcqeLiBF#`PmqC z57#yyTrYPWJ)A!72-T_m+|-`|xWf%?fU^Pa%v&IXTsbZ5ce$U?TyT$DMOEDpce)QO zhq*TN{oUt|sA2hl%W=X0N4SA&aSac-*Udmixo=Rx_=qbQLWD7H2X)29x&P6r>PhYg zloCJTPJRX4Q*J{9xM$oksv@6rEk*#J;vQWJ@`CGZfj}?0|Fr`CiYqk&+@9A=xrPHz zd=ai4d4u%*Iq@dw!kl@FDbqR5OQ?j23vYQ42I0z6QH6Pe7fyX)H{RZzFmdNq%!i2w z@AWpoJ$ZqYt$Fc|Pvcu%SF(+7S!mrP0j_=k2)% z+*zJ>1SEoY(GP=&; zaPd5QQ@|5=$I^jId~O=k2G%CK_ec7yaf@6eu;OMW}*@vN@jdqNn*7^%w~#2$Xy>)YLU)tr zLd~&Tyuj_ib?^@OL)Xa@(~p&J^L|?cKo{@WL6B}j^{nzuFpV*cz*P{4fEKPqTc7-T?6g`Z*&fZ zJHq?uJiI*QU8Z*QD6fIiibuR#9FQ^IPHIPw^M0;|m&ZKw1&A=gTStBUNnZYU@bZM0 zLsnE&L5;BaTWZ+-#{w) zoxX@r#edTaS;SI>V=V`<>$(oc}D z^FN`_w~?V zxA-?G$L!#Lu7G7Hf5lrMxA{k?GVS7jq(#_n{y2SjJ^c6{aJ~FLeuA!#FKq|c&rh!e z;0`~BX3PQp3>LUS{;b^?(p~=Jc$nPd2Ym!G#7}$)GR#k@0Q^4x2wl+w{(uO$5&m<^ zo*wceOaLF{e@m0qBmP@7#g6d{=!(Yq$t$3H%s>1gTu<;lsj`{m_tSRX6aFzeBlwiR zm0pHt{PsMM=lq{&MW5n(&^etK{N>LoBvtac+kmG{4srl|ASn(fBTm|*i)IK3tQVN}$Af7ry?gG`%(0K?v^@!&w;8K&> zOYjyXr+CUV1Z2l z$Vovn%^If!ihtncv|t|{6+9!DI0zCZFroZ2T;Sq}3p*=V6bZ`+fu0WGL<++G1N@xe zByG7y3ErXdI9lNJHB4dzFRlR|EBKD`f;hpCe1s_z-bS3sRF(TxHQ358@NsvoIC=#AXpXz%R<2&%KVE2eOj0l3;O5`-9^Du zdM7RkF4Evj1b@+TT`CBs(($dJGTK)DXO%-YXoEG5TRC(G6Yo9v*9H0u2-GOp z@E)Aq5IBXvq)D()h-+vT*ipBlMKGIE_g2A|ZvfCHD5pBSUGVp35Z)Bn(Mows@Ua@C zL*Vr`0G)#UH1FOPNCx4oOR({40J;U{MIb$bBlJ!83bH8I?-R(CFzFY>9zygxf|#Sw z4G2nWF{DAk{4;QNS8#_GjeCM5Du{;!AJ95IEI2y}+c?xA4c z8*nx%NM?h3Byjm(uS76RO~Y})2%X`1Ea*>w&k2F?2OyIIw}%+n6TvzvG@lA$s91g` zNT)rU=Yp>D5Kakxq>j=nLF;sI_QD@&-^oGvbv1~iP)YNylkh+4+ByrX=~Fu{)Xl)i zT!iyhV=S)1dGs-#5Kg=Yp_{N>3F0oC%>>*-c!n}LPvML_;Jk!0{s!?D_Rj+G5niZ+ z&R19?1l&(}@gfG{FI=SnE*!@aClr<p+X9mp0248SBu zI7UtFT%r38=<o zze#xJ6u4$#4fSGMggt2>t-^Kl;H6DCK?O&# zqHjTlgs+YOJ}hK&0lzQI-~snQD5d@45h0td@1bzyHIPx^hbeIVNVtQR-7#VKAcW(> zb+pVs7RuKGHz8EM4QG==%?WT%gtfG4KNZe@4B<1OCnZtOg~^ngP6-dwjQK*CorfX4 z6n;Yu#aF@uT?lJ0dS?rKI*7h+1i(>begwoxh*r?rw z>vo6`D_VLLfH=`d^!=R|eMZGdyeNt~@(CirQjkQ^PP$o1qI@ypYqS(Thy2Y(j_`N0MadD{evO( zh};vv^@_YH5$qEQ-vQSz;;R9_BhngRG9Y^U0(66-gVeCOD^k)dd`~o+4uTDd{yu=P z!y=Daz}**JRD*jUdPeWdh$w}s&xfL;G+B*`^1VSGiCTT&WlVIMzSMD%e<4gBi-d^? zG$CTs^fW0_6+!q!WZ#DfPenV-L7s^|jDpYSqF-p@oD!{x#+`T}`rIBqUy6R70N|DA z7A-IKV%uN{9mIOd$Q;EjeE>L#Cus3@76;Mp$8qtFdgxrl-wZ(LDo&+F`3bS|XAn1W z`9Z{U7oRG}kUYezW`Oe)cTiF9CC+#T&Rc9mzk%}++bjg}6+ajS&QH9Gjj;aW_7Io^ zh=-_=94P+aV~`;6&)>l^So{qotS7|^%1Ta&fBhFePm7D_8J!VZIszUdPTd2OP;u;f zaAD$V>g9!tRn9OuD_-UaK!n&I8}KtC#V>Zi^*QmoUY2p<$<)w>v(ifK@ z_M!WkDQ?pvLYDXet*IBpl{28r76(wSkt2?K1d=OWvk1C8v2z8S<%`F9z!iwigPvw=(7B8f9vP@j}2FMk$6P*n$ z7oVamp+a2n1;$w^&Od-bREc-c`gc{VqaEpL@!ZAmQX@X5hptw<;V(F=6VLb^@N42l zv>#V5Ub+KZgLp2@nAgQ7P9Tlq4oVJp0htw=SNx#8q5pRltuvL73zOgoO z?j`ta7mJ$U?4~#+4%{vA0Ii!H;=rx2>=gf@gYLHY-H##c5-;rs=@zH;L)ar;7Y&nM z@%1V=>l1G{23@~+CH+3&j@W4vxB+q78;CwA=Fzp^6(6PF%iI%xH3^d;@gEG}hQ(o4 z5Z)JmNR!nA@p`IrM#M88fO{y8{|nbXD&FxGxJTlkMbM3j=dOmcad8y&%O8tdY4x2D z`_XSBCdE-SLq8FlP~!PiykRf6XX0;HW4O=7tX&8+CH{OfoV^gwn*;8pc;`CcUWw0- zLufBKL0O4|Brp$w93?VJzMLe}euXn<$vip-;VPM;UnZWAcsYT%Nfx~UOLvLb6*v!x z=3`iTN)*dMyd=VQjLci|_EF$`B&(_4>ML0s44t2(ie5K=i5KO30TLEX@PQKJYj74M zxmJd;1WW#o_gVlVB&(YdFH&-XX47+$qf|OaNv4K@iPuocm3B_Y(#tdkrv26s)e z(iXUSNjbH+8ze)X7}9mg1)72yC0(u1-H<$=1JWcp_z=2g$#?WswMY`Ev(PGe;SSO! z8K;G)UGjpu{5K^*)^L4G;z2F$4oS@paGjEJDk^SE_AY>zE=lxVkZy@q3)ejoZ9Ag( zN)}YWb)V!PdWrfav2%gDBl&h6EbmGr1K{pS=8SxX0`cxklIWkDdmvdx zJ=GCOdM|_zCH8craa0n$3)~}#V=*F(Nd&jSjZ40ubn>xeF-`XqlFy$*H!0b98r&1f z@(7qbmDEy!`b_dh61+T@Y^G{{N^+OV+!vDdCn0<(`Ih<&uOvO8AokJ_N@E5p^Z+C`f9HN3b=`x}5eA^nzWbT?_>IdJaM-PAqzkdDYIlyn;n@U(Q}8tBeQm9%*hB0WT@QK(c-dy!#M^TY5NF8zeyXQhWI z%ZrfC`vxYF(ns|Bv2)T5^xUJQd^(dDEv=zRJVv^SnwzoG69d?fp)f%rFB!#rASrOW=fSVDn_6*sT-Bm>C(27h@K%`7z042 z^xz6a$db;ZgA*5|7W7SLORr^s%lU}Ku8eo0W|K0@Ym-_z>%R5r9 zap(r5YiTceP+Ghay1UXg+T6P*^}CJ%4oR#0p&OQFP~v%C`V)N}52RaZfFn}ja_AmP zL!W_+N)@s2`AGUjD{y1d?X+%=OI@g}ek|QXiTs2#;BA;pN^^HZ_e45_Cab5?4d24q zGwBZ6v3)MxnFigI^raGj7t+K3K=)E=M%nf&=^INh2z#0Tm#}n@xljq^D7#MUrjsnW z1A&}nb6TN0F3X64&PDbg?P<8mb{>GU6SC?bAas-EYGCOu+w&8md&nxN{p~4ZIwP!? z%>4z3x9r$|!1>7ZR95@S#?AugC%a8kiNEZ~DR2QYUw3#3lzl{PpCH+rRQLtU=2Lxp zQdUcCpHni67?_-vEhz==jLhX7a3QkvPDBWmUHt(hO!gu5V#8(Zp8z;3(`8?`U%`PnJTDBVRUU43h%cQfko@%5MA(u1Hp-gX?11_E#{uDC2Cz z$S%niSprug`)ejhsmya30GDN^DugYQt^WYr6B+mHmVTE>|MpEa@|H;`J{K`PSfWL4jTyC&N}O|E*G2@8M*S-3ZRUY9+Z2Ch+N zNoDm7nUE%{CfVLQAkDI6R3f&>w6s;!D%(m)Mw@KQBIw#>HndfAQzrffx?3`rE(kkh zVH?18%3AdBd0TeoDga%w()%FYvRNwu=#jMrgY?RxDPQW7CC)~Ke%Uwl?%t8L?F4*4 zwwrR(LD_4xZ*f<4)Cm`TPZs+FghR6BR8|kmB$goeWy7)X@<7)6E-Xi6(nwf7lofa& z!l-OfJcjg0woV4iG1+6PkH%$h(t7k*)=DFrkWEj8&q-M~rEpJVFMq=zp2~Jp5Ac~R zCLi$UvaDTjHYICm26-X#S_=3}*?G#4Udiqj!Kb}^coTFE^0){H9p&L;@aZHEr$&~u z{4YO{217b2f8hgiO1^v?!qalu zYrx2IPsTpmf4_gT5Z0hST+f9v5oQvT*KkaO}`KLQXX zuakmA%dNhK>lpcm|6nY!a(C)^#K|L;1Abm!L)&uk@|U#cB*=f+1YM$h`6~dDE zOR~J5+IA`OVQ+A$^0LJsY4TY#ji$^0ssYK6ze{Cxru-u1*IDudlrvnAKc^WpTOLWt zP>y^WwS98sPiX%yPyTNqyyVMYQGHY(pG`|aq5NB#tcv7OufwER{tvCG7v+y=^0*|o zega*IJoGz6D3$+A>Ca{PK3X@+x<&5!FTAwM-DvBrO}?6v;C6Z4ZwPc#e)t7UZplZeL(n0A z_X0-NDc?cI3~tLe?LnX}`QBJK>z1dNf%M4DDV6S(b7&UslaD3>*Dv1}4(^V8Bo^=i zdHxy;VyV_R7B{Yb5fM7gU(qoSq1L6;!Xo}E{ZFk zz>BNG^A&U_6q0W+7B|JmrikaRV9~_sp$P1PiKk*-2ZUaV!etnQw?eoZ03XE`S{r>8 z4KG0a6xMo#^;fh|S1dr0e;&d>#mEfcf)wfPh!?ErIRs}X6*sA`aY}Ky65MG;F{OoP z6eblIS%~7DJs_b9`}g52O!3-bn1n0-oCarS6~zhAMJO6tz(p#?sQf>t(3b%or5IWR zU9_Ug8(fSc>^R`Diuyi`B~HP4AC~78QPg0FS1{j5FuN!mnP~Q z#UlF9a}^D=+UF_y|Aj7JvCR~g1&VXeKnfMZbKs>&!KCTFSn*Xd02dWbTv%RGlwAN< zqR63drBv~*7Gt@r&^p6enWAS709OKdic|`0NSD zJq2?LWJuvfg~PByavLW16@N+rc%ay^3*3leqXrQkD&`*r8C8@#M1)6*r9XljQ)uVH zWL&Wz9MK;ua;X%WP&}auY*O(i{Y>DA;-~?Gc&a!;$-*;5&#&N~E6ghapHlFtmGnX( zGsYlZDlF-Q;w#0H5t!I3hhpKyK{@XNI7j8dV{qoA{Oc3|&dS-eIeT0gO^4@PluAn4 zT$M}ZASaZ6P%Ftz*|`&z?#fedz>9}cM_+)aGBE}KFXdip8hR_!=OCVsavyaae3eDC zsq3e#rz+B4xt02+0m{;aAc4w(jnD-tT?0XamEU}fi$1B$$wZ)2%4}MCPAl2g5S~$H zQtv)Q`G}^VP-TY;;9<)Bzac`nat(FQ&nlCmKq8a{vm5N7m4(CblBB#yDL}F^n>raO z%Jj7Wq$-pCcXmt3G6ODMsiqVlL%GEPx(mt$lq+T{-Q@t}C{4HG`f`=u(o@M(CeT>& zl~N7>1Gr7z99x0DwOz;!6o?V;;bo}CWvwsHk+4s|J)X%V4Y z8J>*@J<7jmvg%cCd>wb9PuVsbCjH8gUYOibPNxZeK)H}I|3Rf&1Gu}&;56v&DV^!F z7*ZC~WHqder6$mQWet6J50sO1Uq+ONsO)^G{L=@3QKdW{!beIs`ia??Qv5TxapgaB z3h}Wri$049WqJ%EOe$Yz!{mvwlX^N&mG96N%rm957P{xklLw)jQr@Gk?F*&JK16@1 zY~sS?l`@M)ZLb=YLg%0gus{Syl_?*tomBcz5NB0z3*g69zI43VMde0|jjM_m3HS+B zAN7LVR6ec< z6T0)NoosONs&RKXOHjqpZyys?FHb|4q$;h)r6jAG{NOW1)k4)$swzVOE=^TSrEI#2 zmkvON>c}j(&QxupJS$6ON9pSY)oY)FWUDfcgXE~9{`bYH81$&}RC(*+EMFC$4_txj zX$eT7>MAWgMXG)DW07Ljmo!;jR4wO2cS&WSH>*VT8EsURst$e$?y}1M23(h^RMb7c zqROa;uw0e(8C+MWHv9`Om8#2U0k2X;(YJC{wPqf;YE{5Y=xS7XTEJ^n7E~10sh&~S z_L^z~EkyOIS1BM3s<`PO*Hv?=*lJYGqG{%aYUMt_n^dtUz%{Gp(k@1e%1Z&#s``Ky z;Wkw>edz6~b2fnAR9z26pj)a(`w+cDHS2xoI#s^^+jCPrF$JJYC8xG)x5|Td;CfW8 zlsWdQT>b>VIg4XR9N^0=$|VLMFjss5&OEJLb~uY(&_ z<c^B_IHMnXX zf$B0(kRbIAYHa|F!huh zt|(l6pC*B`>W9>!i%^e0#aJTMZ-#<9rw*e{kSO(%AHhYd@h=Zfn-Qb7qFz_5nzAqw;Ik0)c;ZvRjB@$ z_VkO?qm(%ot4G$s=SB4||3Y_3ec@N=O4PHm!Ih~O(w^xR^=IGUQp(jcnh~KwJ?ai! zrTY6g2&>c^DDk|izC|fc*r!a_GwUHB?)u}5uAlKAiB>`8jZWF;`R{YewTwyIzM43=%`cj&ZFyV{QC$eZeZ z8C-X&Tex^Qx79XW=(^Nz--NDLy`5IdKJ{{%q5IWt)W;lDyL}InyXvEqy5Cd(z=z3w zb^lQaAE*Q8f*Voqq-B0o{R^#skJS7SxE@m`-Si1 z$R9BHa81-3;Ld6moB$v~<1qrCk(#H@@N!NQO*uo9=A%_0(VFFxATgSw)I~k7`Mnsp zcujc_012A^XueL=Y@i>2C22yu0Z-N#=+#Kk_|xWBswR<2j5N(r>YHY0()Yk5Q!|ZD zr(|hzkK_6-Xe1{95x`UenJXnuFWSSmFusPS2)nM-Nt zRn4Kj2vn`eHEKSt zf$)Y#N+tsrjNF?+BBa9z-POroVFTnYR*u%@RnwP>f#O! z`wf_MYC_uqxUE@o2|l|t@saS-t(i1$=e+5+yGriGs0b4^D!ET=Tny)e!f8ppSwd#TaVoApW)Nc};3ZRk=E2koWD zAdcFd-Y{{}j;6!4v-Z0mz#Z34(YNBFwd;USSM7{!z)xs*d+>C4yK9I41i(X^ zwGduBwYl%W#7jG8K6KvN06OOCqy1vQznq1tu92^Ol^QIOtQ3U z>W5s=E}|tQTboh^FFD#Rln~@<&z=P?PkWYDnSAY1N*#){U(z!w*7{I+by1s?0Qe>C ztYVN7?Q)vrO0{8>bzRm5EP}91yDJ6U745shh)}6r^dEdyY0E!@x?cI|#o2ybdvrGdMpjp4v&hc=$3 z`%Wz{8eVQ|lXrr2X&=u9u3KwD52r^vn^xam?X0c9^=UJY!K7dN6`eh}qh-tm8PLAE zgs}{2o2i<(tKBOC;GXs%ebYl)gA&4F?IYShy06upf#m~j0PXOPX!Ga8@}c&?7w|cz z9iYAWaqYbn2p?+$sR#H(dpQk&r`lD&0`N?0QUu|1ts^CEQ`+B`!19F_l`P(Qoexc9 z4m!z0m^kXDA4WVU-A~J5>8z_7h48rUYq}FIx=m{!bk!YB1v#PfwLw@nT>xzhxa$tb z!Ka7r5^ZUD>b4Do^V0o27dmfU$a}E#(RFvinXm5S%MkkM-dKpR{<@+m#0${8VPkYdluyL!ZhZnSPIs8n z*YmodCYZ$Q7HxwtNmt_mVY2R5+Sy9cr5{1OR9&qRT&L;mDS1xUjnEX7p-ZN%{Y>5P zX^<@41?sU}(5_FY6Xl;#sCEq^A89osjbRa^0~aaFsef^|PvU zn`wvts_u{<0JXaI`yh3?s*8wsO~<7NSFih#N}&c_IUUBot~*0jU863TdVn`{MJjk{ z(kW<{yIIGi6}Cn9jJndTy6Rov+H`Wty4rPB+hKWA7qI}sTe`c{1nSUjr0eU{ty=(c zTURTCuuIpnA12+pE!14;(QTB1^y-GFP2Z=xO$$T6Zt)V3JGytwVL6~HjDg9ZZVm00 z-PJvehVY(_e-LCymqb05VO`UH0PgG7{|(EBx*=NaM|Cb%AdhrSa+r+iW|}}Zu4{V^ z;bYx-FF2dft)|Y&?Ku&^4a|_fog=H#l?E ze@(O034PCMjM`1l`U!W?L+?aAD^L9k+M@8%&!ex{TQ8%wkB|O2rKrC8Unq6=)2pc$ z>#uL#3KF2NYy><|&&z;ikX~Aiu>|WMehSNzdW$jWPU&O25%09#O$hFc{xN-cA^MJ| z;6nA=`=ATcuU!Oqg#H6x=pyy5w6%XuFQCdMN*_pzX|(=AHwGA^|Jn(-SpDt@kU0H! zR2-bwKl%_{y#6lrDiibrZ^28V{&*8~$$D2kbSZjsS{qaKuU`h2rsu4ONxI%~6vNHb zFQ>iaEd7H&K`!X$e+!bWAN?B6a`YdwFqT|>F)b*0`s#(a=zRU#Z$nq0@9_dD)Mx*1 z*4Mk%!?IX!Oq*>N^`lgNT+;tSQ+kQs+!*ju{cB6WUDmHS06hWLR%b3G01*4z2wU^sICM zM)YG#s@d9D}G zy?&|xURAjn4-3pkKq6xWAQZ{plu{SLn$St{)Rrq=L!Vp8{A@~e6q*#K4 z8QyvXc(~zR`e4r*zAAuagkb?Kt&xUu4>&t#NZbmOD8oa4kZ41m3c?tJ(R=`64Y&4# zi!)g9;QGAblp}=k274xiNrr)Qh@NaXMbmwX;ok=6(hU{!ADKYF%f@P^;!5@fs*^m{8=w*iQs06-ZU{j)7Zb*6tc!lBVGMH2vI%!s{ zGGx=fZ;jzwdiiP%-6r7b3=65KXfzz5j^_=7*J=ox4C^T)Yc}lo6qYT9WcqPKtHCr3 zx|;?EN}g{ShCT<^VKDQD>rR6)W&XDf6=|^SG8`EMyw`Am%9cLEmI|2k8)9h*xnr`e2c^$xFdS+o}#h7i(*20C(Qjl1hw3Tc3p(M2c-E^;9!$ zpU}5iXe-VK?y~JnDv!%;k4^_yW&2AkaJ9BitRbwo6;RFGXuB{7x>nnd`0&zcJ4VjB zZ0A3N?vCwTEBG9?oxUByN4AS&VEM%MoqJC}Z>ku}twWl8Et+n3v zu)Mvt@(f7-+6mf499p}RYKzgeyQn)dzSd|qF7xTy`D(a+xppR*INLp?ewLfv5qi(O z?fj|f6ks=F0mv!44=85{v)ktdz&X3vB)k7!fu!5rUkiAa-CXJd`ZTkVd03DRaKrWL*2?jaq#zG?T< zIDFo=;}yZO%kJS~=(_D>D>3*UyNPl*>$UrMC9bH??$-pE^xOSHyN`G5Ojm*o*i|lp z<)B?Z?Rwp{v!tD-dv^Y%upF}U{vGgPyT7v`yl-boZ_fj}+|NnzlP*X-4BSeW!K-Z|N0B+Yi>>c0;q2q>7f3%_o$!$o$_`3 zeOvJ}{Q2ty&AA8aQXxNBPu1Pu0_tlVy8i^)!$w~~a^&p?u=!`sI>?V+<-yy(@6ryC zgHdlF)b&Owl)JYXeM?)}?M99{K=v6qRe|&y&0Yv{$7sp#xak8%C#gOjG%BA4++Cy9 zci{J)(SQ@+Lq=C^pc^)Frag*RM!obqNBikvpHiUdzw|-qIDG?^>`v3yg+S*#J(pIZ zgF>2>d%PaI{nA}ASb3@I0c>C^fk0px=-)?2qqrWW2eKJ=k%wPVR=tapts9s z`Y+V0_MJXRm7hC9P!G5Vqy835JQ)iG;Jg?^|2r$eSoal#K8%!J2z?osXJIUUjPCD2 z{22>u;U$0(I|we2k@FC)gBS-s1|XO*PYZIA@g6OXrxcfb9hN+%puDZhUGE{ zQyCwYz*!o@G7Um}WVE7WFx(bEn8|RZPdJOwBm}v@h@f4%Y{n~kwQ?ACw6fQTY^GoLywAcI-PpMlgJ?7sn?ZQP*pUIte&ey%D|!Pz6@lUG2-jQy8k5aY%Rs4@K5m|=mjOc*CbLpW(Xmy(nx#;h*ro*K`g zCfPG%REoGv28 znzYcga@k~o1f9$d zmRghU9*{bdEIn}7Oazp;)|-5p4U;yLrPPXQH#tWod#}k|>J9Xn{OE>w{U)ZrBf=e% zS*HLWG1(Oe-9r;!$~8w#j?x2vWOAh&!f_L;b$~xMS*rw@Fj16&JTdt$240?;%=&NcT?@0V`@iRV!5Wne?gdUdWcr40@H&u%@mo&rb1V2I+G60Tr%A>3#8Qa&Cg(Y z+4NnSlgmtdsh!qnIzUVMUDL4x7}7n{>pvmhkZElqoDG|rd;#vh=~e1vJutO&$H+!Z z=kJ5%L(|y5pc^%{rG;VK)QFCbJvPmJ4$BGCQ&-?~($t)G(4U&V?hWplY43-yd~W*M zK?tWzOXz;SFiobs(8X+R4dAY314(f0X70$}2A=DiNWK(q8uF^C|uTP@&%&HkDPz)7=$w;()iwmTeSIb&92 z1zd>PJ(}*r%)+RS4>wyzb?#X+A1c8z%|00bAj|A_33SSHu5&2*O*O2 zf~z&FrwgkylTz_}&1^l*yY*(nRnRq<1=oPPZZ`h~E~VY4oRv?{b zg3l4C%gpjHOuEeu*&)zVvps%-li`FX84< zYjG#enj2I5HNyNgI#6`Zd#2VeYhLp?NSt}J4kqW#{ps9B zy!o`faGhX2jq-v-^Gja=kYrvu2VAoG8d@+@%%67ykZRuThvBA~^XZ^!y7?i>>N3nT z%Am_MU!DrrE#^!Mn6#Q3-GrAe^Z$atb(?>E47wikkO}~L&FB9IpZ(@B`S5bb{KE*q z2hH`1K<=7fp|b9td0z@Fhs=MYiSxesW7;!#V4iM_A&r=Swi@K2d8I4hkIcKN4KQwQ zLVL=O&BOKqZf_CS0Jww2ucv@>vIsi~p|iy>)%czkyK~?($YK+veZdy#{(zsfxbzux zrz~XD>^g06fche5EVkMK7h>@by?mh-A5nKY%pyM(B-|pIw!O| zE?B%qpGCHXDP`R`7K3x)EY~7`8@%LM?4>SjzQv!H0WYwyTLzONi&PQ36kCkb0)5e9 z`S1iGshq2A!CEnYrDyc!G6Z*W#?F(3hV!y>C0xF(B-lnXaoG!FsLVjx zWdNwf%ksxBLAouk(MH}w%TMV6j9ONn z0Q`~VAhoH+EXU}W!noxYI#c!7va}qQ6PALnz`e4(8v&iYmHlOK4pv_Dh#jpeXmiln zDl8abU9FD)ig+iiw$o?tW_39oaCfWpKfong?V)Np$!ZZ5U&&T$L7g&7p$`B3~aX5Z*+Hatp235KG*7ZH;_Cl z#pkfhw;Bw#EstkRPpEVf$8fbgP~VgW2KS>17hu*B*!ADEO{4N~{0%xV># zv%6wdL2pmF)v;iZ3aj^D!{Do|mM6gEs+AozsjIDe9AH^vb!wRjP@5i9?n z0eEPodkk*W>bxz+`N*n;a+`6h&2(Ppu~oo%2q&!cHi$QAwS$9rPpsNbgL`Ua5J2b1 zlxzjSooVckk$EuJ?Sasfxq1?=y_lgN;8G%(fq#LEWS*w%=^WFCUd06FiavNrWIFx| zToQ8~tw+gB4z0y0%pf0_q%x06!KE>uw}PZIFS)@agBkEPB4jeVse_rt?EDs9E--g@ zAVN0tdus6JFeje^kjHeQ3M`-5x)&w|Oc(meUm^3|H(*l4e3wRD!CYYpu9Ep@8@MXw zmPmNH${eOs2i44!2?VNP#?HYt)H1(V0C*kqEjn&+jp-TyQqQ~+24MrUo~Fa=O#4j$ zG%~Yg;F_4*XgOy&d=L9&=_q0u3>@zm2gBGkv8nxzGHa)`thoGqjwIFxN1ld&t~;7-W>$Ye2k5 z%yI@Ij4^$wh4q;E(Q5ddU=~=xWRlsNMK1$$&U+9(WeO4?e8$ZD5xD2f6_f!^G5zQr ze91IQ#udF{PThftz4g)x;2f;oa=WmJ9oST}Bi&e!^OE_8m@e^BP( zZ(T^YC&c;%O~#?tZM43JS)Zr^Al&-OZg6qdw>dC5Z~X>Ma`Dy^pFo&keJB(060MI> z$2$rCpL%e~)_eAYq*z;R1|ZeCmr|89>+MM(>DG7C0MD@QbwQv^>j&$=Wm%hVg0ljWxuuUM~o2P3PrK1Us}D(kMrhc z>*rnIYOG^IKx(a5QT9}4E!82=HS4h}Fln|{%OGsAelQ5G)jISwxNfsfJO<%S>wC8# zyk(vCJ_2=Ecbx>T)4DAa&Td<8rcb8JdKb-g-PW~h5xvJ+M4L9f*3u0ieb%X;L)dRU zNr!6gSO+bH&lfY-&jaAq%-^;G?qGAX06Hg|`M<#DaT^|O#kkt^QiA1X<3Lr9hfN;! z9er%9rEr#L<3*)Oj!j`HoaNelN~a_8Y_3y(Ki{T`9!G&q*kL#;w2|BcuH0rXWjYl$ z=cw~pWy75fFSRyD{{W!Q#+lA=U9<7s06@LXjh_H-u!+$l>~$MS5V%Gg*IfYIu#wVk zaFb0&Hb}G0a>_1RY*MIw(`plY0Dx|r!9Nk9$3{SF>O-4!y691x*&AUwX7gquZpgUJ z{6v^Mw%K?Ix(S*yG~ zgs?u|i3tPmf5v&tJxQ=AWf+0M|x-%WPDAsB_M2}__ zT!%>v>mxe15zCs{2xn=mRn*ByXC+exn8Et76I>?i+-?A}SVd#tF0gLU)n>E4O93v2 z)jI~uTvj<{9(k;Dv^Sj3nodP;0c+ZNm=v-K7Xx0zin|Z4n6*yI!0My7;33PFwn;}>-_sKL zh^3B4yfIezPKIR^Nl_8k@=x< zF!?zb7|SW7ZlUoZJ6d049Q86rwAgqj8Qhi_KQ$w@)R;=r_A+Awq6HrrKT1Gl%Z=NJ zIIb|pkvn&#vDtd0RvG_1gsN8?my;&7#^}9_)LLVmZg_lb+(Po%I^(-zfVti{&56tn z#=RDFVxzHX7HZjKG*3sl&BhUQ?`eziIQhl58ee=BuuqKb-UDo#@oQRu?Zz*U1NNzL zvIm(vjCS%{>@-@gBl9!kgNO0hW!znihISk8r~Uc4@#(8*{R`tmWP{jaynZLj?KKW) z1=yFyMpMwjKBGeV!+ztkt0;HCIOcs|9yG?LqP;`L#rsg_VPkzdM_(CRkHCa{ZT$CA z)N;hQa|d8YjkPub_Kk5g*}ab$58sK@abrUg)=wA*ox$T`VBCh>|F`HZ_SB*0%c=AW%p_M52lkv{_NL@45PXz3`aVvT7em1^I zI@d48|BzJjt8ooQApK?>+Zm4=#yE0`{cb$h9I2be%xqNshq3OEeq(dCPS5Nu>IlN?%4p15Dq&giZ`J%^Zu=Ad`!1 z34=|!eEv*#??myTraSIOox@C%GEjWDsq9A-A7MIwAIgn1eNNLe$`soMm~WfhwUHWa zI!wH3jH!83q{f<>IPe%}O5KFVJEqg*VjOSkNUnwnCbt{?oM;-{0;x%+ee{@Yn&SfI z6jS%d(85&HIQSg{w_ZPG< z+q5MPk2$6nDDdKa(*g_XoNF5JK2q~c_fNoxJ}?z{P<+1WE+Um5n!Xu;)B;lnvc)bm zz0nexi%c(*iEXjz$`oWSG3{Q2$5K;o()*X0-e`!*J~BPh0#z?J>5rnHD@;|0udFnU zCiP>L$w!ekt4(e)+OIKfZ~?Z~^o|R#k4<-wF1pTifT-en)0C=sY%uM=g~vwI<&J1} zlPTGQ)MnFn52D-_Q!TPKZ8eP{^Ytk2QGU8drpfbBND`3N#UH$6vN>I>5WvMlT|O{LAS*EDuAM)aj=;ycLPXBzN4 z8rp9ve+uOen0_V7chEHN3?7F}Pm?9%u<7@%DEF1=_&^l++BBI>fu_AjP~fO(B?S?D zV>*5W?Hw~cz7(nBrn9F|{Df)S6qNhcH0xQkaMCowj?{Oi#YCY`nXJU^Pn)uvBJ+&N zKt_wRruHPypEEr$4UhAtcAo+Bf+@WhQWs5&ji~yP>FHdo%4Jh)@;F>E?S2Ebd~e#e z2$(;ZzUquFT{X>~3fPaPmO z)H%rfIqB1b%}q!i9AdtQq=cd7F=J4CnE9`4R6X3hxg4nx<|OL%NVC}ulu_n26nOZy z`QERQIodq^G*HHvue^@d$C`~~;vQ$7OAG#v`G_0sjW=7!(l)`o;~Bsvnr|({W0E=N zaiB~#`#(cvQ_S_;C_dGEFA?~6%`v4wnP&D>0?Ksr&gYPtVcswit-oh(OnSgfbJCN5 z%`&f{(=prpA6mva=8K&Gd*6J>i}vQ4Taf-R&;0zeczj^qN6Rta+{ua-J~R&_O>u#F zSrxRt&^+QE6j)?#*$ES}*c?yRgC%AsNi0jvPriZz%gp-^pz4pz*T~qv+_;*^^codrK0!=Gi+Qq7Umn|BsghKAUWha^AX}Jr_6h2pulN! z5|Ont=JB-rXU(T+RnD0=+3`4UZbkRYFPQt1JMW_TqYqH-l6eUU>zB>-;_MApKg~;sbNywWL5%iI zOI|!4eJz95;L*==jU<-0EOkg+?r*8~B~k+{TZ-`*Xer7>LxU_Y{)SErwiJy+YKZ0T z4k$O&GVLfH!z`QMM!De@+r4OZgryO6X{6^R8tJDLB(C_3uF^rdwX>1=tLWB^M37XZd6d9y2X}(ea&Sd4%@$Y|CrJvgTN> zK8n=)mPuq2pKGZ*5be#g#L%($z|w&X4D&5}i;(%DW#GF=EwFUmj`kK>I+Jj+$dc9? z%`Ubqx*M=1mZR-ZZmA_(hsQEY*+YPRWLZ5HkL8wx+9<6l6t zt1V5dp}-o;R#NrWT6#9Z<7117B)N5#T7O`)>n-;T0m=r;-pVMj(ej@M(B3A?0n!*Y zTN=^4Y_Y_XA$hB%-AKSbv3&a^Qrj#`R^qYUa_f1Zd}_ImH0T|czg`2%PK$vk*k_iP zNU7gtxk;AN-Ikd(kow$mM=qNE!g8?>%I&et_ztb_wXBW-%9oZOsN6n_l`I+iEeGhJ zAFvFs3zUPFOj?IS78A*zhb>DE0_7{qBqE3BEs3OLU$AT&3Y3eMSBjB&$pTTVX&lwT}Y zNDchevi==p{$?3i4{LkFvWHBazgrr|qAxcsmyRR#houFXgl<{(l2H1mrPp^z{bgB8 zacFN^>|{4x}?Zz*==EFb7%>-9lx9td@^}GT3_a3!d){C`(Il|hRj4LCpr=}rul(ov6sPk>BnJk{8t!ooe^%!f7_W>Jg z?P@@;$5{u)A@dz;+5(`Aw{D`vnP5$sj;beG*OTHf$-4Dj)H&ID>lw5@#d`BkpiH&) zj6>D$TIY@i$~0@ETBvNgbz3h~J;VC-gFt!Ds^5;xnbz*q`YdbmWYjX-dSo;nbF7QV z!Ti4Up**BKGT)j-VdEcK-z97P0_!)g17)H0++Bbzvd$tp zzu4MnFj7mblV_rqrPk%=fw|23@q2)MWG%5GwcI+h10E}^56uVWO6z~g+qufRl!7%^ zTXz!IUSoZLc>h}Kd$gz@Ta#x4Wu0|0nYGqipInK`HdynA1GdrneHJn|Szm38$7bus z4rq3Z^$%LHt=30op|Ve`1;i=0S>wq)v)wxT5MZBLH~$BjJFL}jprM`CS=Ryk%(|Qi z%P#A=s%USwwc}=Fer{bx%J~=8cp}t$tTlQewb$zX9i8~nn${RC?6byiL*{<#3JS

    (`y$UJ84 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�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%0DW9%%7w9hjCDXh7fO0HhsgsT;*5}3&0lM;$>o}9 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 literal 0 HcmV?d00001 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.su b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.su similarity index 100% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.su rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.su diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.d b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.d similarity index 73% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.d rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.d index 935b358..3462ea6 100644 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.d +++ b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.d @@ -19,16 +19,9 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: @@ -68,22 +61,8 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o new file mode 100644 index 0000000000000000000000000000000000000000..5dfb0722ab3ee42909324ebe32a6288aa7b63d94 GIT binary patch literal 706660 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

    T5N? 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

    tTagM*E6 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

    RiWr)K+F(;qa#rFU>SW*GRt&E=Syl1YZ) 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%0ATJ|6nv24L8nS79VOI4iy|Ulm)ALimr$x6f{jNXA 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

    ftMMk*V`H{pJ9c6m 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 ~?$qkw`I{^ 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�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%0AC6TE8)Eg=v8~+>=r;P)TByG39oHmLntvX)#qV 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ℑ$O`J)ERDDSYDD6 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

    ZyL&p#0Tt+ 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 A>Hq)$ literal 0 HcmV?d00001 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.su b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.su similarity index 100% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.su rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.su diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.d b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.d similarity index 73% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.d rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.d index 4ea27bf..9aafbfa 100644 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.d +++ b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.d @@ -19,16 +19,9 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: @@ -68,22 +61,8 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o new file mode 100644 index 0000000000000000000000000000000000000000..7a18d129ed9a1bae70c8a8dc83942ef2157ab252 GIT binary patch literal 698140 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%0DtTph#AY^UAuDG3-rgs5_ET@z-CqUVJMm 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≶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

    {$Wbt|cFdR^xf49E@Lr1#L}>(Z$Y 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

    %9i+20KK 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

    q}&hbb$qbEJef}^GoM~b4?sFk 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�IdH3#L9=WTqEC(t6y@M0`dKtoz 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 literal 0 HcmV?d00001 diff --git a/f103c8t6_HAL/Debug/f103c8t6_HAL.elf b/f103c8t6_HAL/Debug/f103c8t6_HAL.elf new file mode 100644 index 0000000000000000000000000000000000000000..9e5a2925073df67fb41dcd2733f9524b81066007 GIT binary patch literal 765372 zcmeFZ2bdK_w>H|nJMQk@!vtVv2r@88l$-@6=cpJ^3`0-{1Vq6Eh9OGMIp>^nP67g= zG6YE?10p#LIXm}#yZ0UjzH`2F{^#EN-*cb8=3#gBTD3yeTWM8wH{aK6P)n9&DfH)) z3P_~x`y{h8(t~qtN%BcrX(>)pkQXb(xcQQIH6db_50fPR4A+Pp%=eLs1K)IT^8$W4 zImo4b()h*IKt8!DGDG>K#h*YxARrJB2nYlO0s;YnfIvVXAP^7;2m}NI0s(=5KtLcM z5D*9m1Ox&C0fB%(Kp-Fx5C{ka1Ofs9fq+0jARrJB2nYlO0s;YnfIvVXAP^7;2m}NI z0s(=5KtLcM5D*9m1Ox&C0fB%(Kp-Fx5C{ka1Ofs9fq+0jARrJB2nYlO0s;YnfIvVX zAP^7;2m}NI0s(=5KtLcM5D*9m1Ox&C0fB%(Kp-Fx5C{ka1Ofs9fq+0jARrJB2nYlO z0s;YnfIvVXAP^7;2m}NI0s(=5KtLcM5D*9m1Ox&C0fB%(Kp-Fx5C{ka1Ofs9fq+0j zARrJB2nYlO0s;YnfIvVXAP^7;2m}NI0s(=5KtLcM5D*9m1Ox&C0fB%(Kp-Fx5C{ka z1Ofs9fq+0jARrJB2nYlO0s;YnfIvVXAP^7;2m}NI0s(=5KtLcM5D*9m1Ox&C0fB%( zKp-Fx5C{ka1Ofs9fq+0jARrJB2nYlO0s;YnfIvVXAP^7;2m}NI0s(=5KtLcM5D*9m z1Ox&C0fB%(Kp-Fx5C{ka1Ofs9fq+0jARrJB2nYlO0s;YnfIvVXAP^7;2m}NI0s(=5 zKtLcM5D*9m1Ox&C0fB%(Kp-Fx5D5HlMxcolci$(O6Y-ml-(36_9qsWpiIs?=Jwe$-O6&f=R=k{lo3F?^#VNpY0D7m!SI zrBXlpQl+lq=9?SI4@W-pl2%HKrPO=(q*MjJTKE1rm$Y)o5^1qzN6H;jOG>Ty zPsN;4o@@zkCyYxtmXNK59KXIr<6B9k9=4F;E4BpH(ih*g6*=p1O^JHgirUnSe4x~l z3d{Ro<6frtt_i;Q^$Ak^!vx5-stE0_Eh^^pxjw#q6q3w$Pug6i+{Ri-8030)IS+#BGl;A<{lRVpS_Oq4b|)ZWmswiNEGlC(lv{MjmL z^FQY#DQQJ7*vkUh%+Qme7wPKB%KC)$iJ9sjZxaT7Qqu!19Na6oqaUk&^TdY<4-?~4 zQ(7^to+@>En4s2snAkKy+MGFqFG-SJf4~r4|Ff&K*()7o{=<8>MLq`#MBs^xBsp~g zbp!RJcwfrFX4{*nrMAZmsCNH=RnKZ5#mgyC32Mn{)gB&5yL%>0N`2{Z+TDmWV1RaJ zUnn0YnM_~6&&2{>%=+0AiD0-Am7v5)smA?GxSIFU?zT;n;$zSP(q<_R7_RIN+`dYP zte-70vVQijVrwglfmr~E& z)9ZCjj6%ChDKe~@Zrie47_4zBeypViyV+{tniy3>sR!vGN|Y%Ol<^@qrk01E$76eb zg*H-B4dr11S}k#X!n(x9chZ!oD(lf!*?j90qpDX=-Q24BEveLcwA%W_0~uRwvvfsD zp??*+*)7@$c|hIWJoZ7QR)vIzpN_t76qgEH$15ftTjtay6)EpuX4mL(Pl~rv$TjOe z{8~xPq^K3WoNQlY=#87DQ&Ng&voCDkOIVxG1!Z*0-r`}KAFmsVTDZVw6{G868?}^P z*mv|{8>J$2FiwDF$@Oh~50sn7s;^JXR;6p3aaF)8(Y1{X-qGq^6YVNd)njVq4fe-S zn{`c;D=xpD^u2sQj?a{0p(W&sO%pQZX4|CQ9g?Qim-38DQ0p5Q-)!?>>ue5B0WQII z|0*%`#$ty z+!oJhZAqGf+)z*OEV3OjS0u~v?M`=1%nn>+MJg<%{*W{bBTz|ofR3|oaPZzN9GN_T z_n38--%hG*C-+6~P|(U!;dcAFCN_tyMA)hYTg?+Gp(iIn;`@5lp%Il(6#bMkPI6ap zyVQ$!xnJS_OWwyvCFFD^mfxOI%t`(X{7P&*O#9|g5N>rwmC z?oRusdG2L zIWASG8&%y-coB8Z-bN}Mx36q{89gHHZuMZPDhEsDb4x$|RFQP6srw2&WhuXFDN9N| z^ekG)6SVN$Qx>|M%K5}XvR5Y)Wqc839FG#j?u!nVz!%j2=dp*MSAw@s1?o3%>(wiD zpNx5H)`J`=R?z49$K_jO0;XrubxdGh7GQ z@LK+HO1E^4RMhr(qFh*KFKpWd9%Ln|Wf8Q(akp=N0q*DZ;$3bh+<%696%sjI2@Sos zJ-F?lM{Zl(w+Y&?Q$7OqVNkaidHTKT=DQ`l< zL-(rNJ1YleEB=e@$dm?8WRo9$D;L(1>j0zL@W-_j{?MLMYPY0n={>Xs>)pmzxK?uI zV2fo6Vr8ed7|ZcdN*TA8NI*B0ZPb<{*-S1DOYyg)lISamMbO{sClq!$og=#@#-KJwb)_@j)ys9cKI3tjvBilyWTmS$H_dizt-aVc2+5*4ifEKLmC zfTIbsOjL>u|BMdM6Huz`ZO2v9lSy?%iJF7rnBzYnpEX0> zh=PA#q??=YD(Z_lFwD)DQgh$))na>Q_j4_`>i+yr9;~r`L?wRs;;Qz=L$+kN7sG=gJt#8p4 zQLOKwa$|iPMrU1HswrLD*yP~8Yukz~eJMI@OPedUjj2@tH5kH3d2=|+&bcwNizNA9 z3dYJ`C0MAjRd3ouCBC`UC6QJhB7S<9`1W%T5~RZSlQE+{iGfk?0}We-cU&pua~cL3 zw9Y;wd{#AovXq+Vo|MmOXazZ1a>tFY-%~4&sV$eidMv@rJvsaRbN5zCo9}HfH%zM4v3ACLpQ38IVfroG34~<|4@Voge=;)2FCj~20KX7l zqyhnffIvVXAP^7;2m}NI0s(=5KtLcM5D*9m1Ox&C0fB%(Kp-Fx5C{ka1Ofs9fq+0j zARrJB2nYlO0s;YnfIvVXAP^7;2m}NI0s(=5KtLcM5D*9m1Ox&C0fB%(Kp-Fx5C{ka z1Ofs9fq+0jARrJB2nYlO0s;YnfIvVXAP^7;2m}NI0s(=5KtLcM5D*9m1Ox&C0fB%( zKp-Fx5C{ka1Ofs9fq+0jARrJB2nYlO0s;YnfIvVXAP^7;2m}NI0s(=5KtLcM5D*9m z1Ox&C0fB%(Kp-Fx5C{ka1Ofs9fq+0jARrJB2nYlO0s;YnfIvVXAP^7;2m}NI0s(=5 zKtLcM5D*9m1Ox&C0fB%(Kp-Fx5C{ka1Ofs9fq+0jARrJB2nYlO0s;YnfIvVXAP^7; z2m}NI0s(=5KtLcM5D*9m1Ox&C0fB%(Kp-Fx5C{ka1Ofs9fq+0jARrJB2nYlO0s;Yn zfIvVXAP^7;2m}NI0s(=5KtLcM5D*9m1Ox&C0fB%(Kp-Fx5C{ka1Ofs9fq+0jARrJB z2nYlO0s;YnfIvVXAP^7;2m}NI0s(=5KtLcM5D*CbAAmsKTT(cxDdShQ04^;)XwkBb zBtM5+tz40Yl5QCd{k}*wvz$eaR$}CAavnKel_dPbpDH(Te3H}tpf2^w?6F*a@Zyv8 zsYew_8C%sSDTQMyf$ft`Wtc4ad|I8A8WQ7CZ{!VLr%Fo0n0G0lYWLPW6M}sQdO-@ht3c;)=!7{c(_nwqKZRY8;*-I6eiUdqF%whK7)+c zVNflexiuLpaWP&j2-!MD>=F=Wp&vC#FBQQI|72XQ;b#rNC6lC`L}Er>(&e?0OcGZoY%vy?-eq{syoL6mg~HL}eqT{0`UgefVjW~q`{QK8j{%w`pT7b>@X z&nKDHg39uANYo4}pJ@)|I-YXm%k=?geV1?|R}N4lvyn@LOUi0mXrdH@wTJ@#GyeND zJGq)J`Omr{Qe>cjCi$mVMgBCuS)(~F5yJRbXFw)U6%-tOc)OX4_qR1 zWWFOH9=k-0)1*NI$uG%SS@#@L*dJM7LX#Er*${MgNx6su&~DsNq}JhskNPAlTpzCh zz$!a^=orcbTbJx|iVh+3t?8O%SIWxXV9wr*`s633AXkHkzT-f4ltOR5p`E1| z9s11lGDZh8Fv4P6ypBHHR(}uL{aj-P{6wEzAWL$)ti;$iv`O^JbEr@ItZYeT=!Wm5 zY`J#Aer2r}G#WrN($&nqppq*224q*Hdk|Em<>&#yX=2zs!<{BL&+u=JE=k=RqL*cu zCVc+Gm{>gnZh_T>7kj);mo9mW+sO-lOCFx9L`L7Xl8OaGwGq3 z$>GeThh`>+Gm{>gnZh_T>FG05fHRYhnP~*d`}E9Yl$1X}Y5)E3GRi40L&zOoMuy>K zWEft?%Q?n84)Jz{5k#7VuPo-zp3TC#GGIu~` z4jA#Y8Yr95HClN|4h^pYw!sj#{tj)1GkdlT%Zl zkj|0d1U+OL=ILM$838j4qWZ9V;O}&lB+Y5^e{K))rm9d7l|EIuK~(xwvxXYi9J%!hvF&h0x&@?Y*Ef(a|jati&G)tkRM zX8GPF^Lk`EDQjQSOZ1EAz20b&xIgeosfZF(c|SRb}QM=)qRgHyAwE9V2pA@6U4pgOBHL0sl%BFq~U)j~wu$Dv356PVBJ$QUh%?!)A z)EeN#sZ)@fTm2ZEJnBN+$E!KP&#Nwh?(=GI$mdg6gOgu91x^9=F0KXDwJi;)kfeD* zl+L{tf~X#VRP**)nzz@|yuFsry%vI~85HpLS~~Yy2%kt zgj-Z@=ky#Np-O=ZD2<*|_HCp}UcIL5{{n-~sYw84FQx!Q4JR-AQ2Ae6pp-06yjjJKAkw@jQOVeOukBXB5t$?iFL{?H+BsbWL z#UOQUBiQrs4h4Ipylp6FP*SEH3ie1jb|}~*6>f)uJyMzNP_RcT#tsF0q;lAyV2_ly z4do0TW|-ZyT!T#Go*WC`BL?RKd*p z16AC}L3JYs)r}lfFLKbi{ld(e0HI9Weqm;1IWlqkg_)K8B@?$_m|1BkayTw>W6Yk| zrNl)}Ce;MiD zgkzp!ZEcUe)dM-BE#o#6FJ@$Au8qMUpOP&Wntz$`lP6?;k?bS?!Y)GgZ~wwRhz>39 ze8T3A5Jp}CwDPKdVZVa@B+q)n_FP7Fr}P9lz)}S3-kk0RWMpOeimcB(Rvp((ebg}P zft4;hj@9rDZ5M6OSZCSs=#J6((52GDJqMBTe8or^QM8C$8)R41K)Hn3Y=m7+wrX20%e<5Y|(?x}6>zTPNi&9*6 zyU8saLw1lSnFcOqql1p%CU{(|O4$ywdKZg(wd*WpFGl)+3!S%` zW_R}_yE1Tc$gJAp^qTQlOP-LUFiSJY<<@|Y7hJA%#76&@FuR2!$%zo-LOdkcO&-Kc z(!r+bE3GP4+W%)(+T~b_zEiLWN$#qv6^U9EBKk1p%Kx9aLK zQJg1DE^vNc+@)84A&RTH$sXn|y?XJ?T+2-^n*LZ^EHzAiP4-{Gt$lnMI?)?)b)J*lO1^l$mT&s*(t%?cY>O-V>9>N zpsMVA!H)Z0P}k=KX!w0OGLlYxfx1m3IYEvr2})9&EL3eFN0tMbsyKUTxTPG)YDi&H z7*iHK6GLt+-KD@tQ7Guor`gy?co7>^-o-p#)znap#Q>fk1vmU{T4h-A8IC9Cd1 z=K%Q&+20$Z*{)0WS8^ox^pahJ)Yo2lRC^37*2SYty8?^e)uWuKrU(P%Z#*hIsyeA} zJt}il(>kd0cXH$?IEb*i4}*ln2C-J^=z=ScPNsM2<4 zO7`@q@^&<-ULI8`s!1()?=43zfxjwIHAwy7)u>KX)f%AscvJ(s4fXoUk$WK7#LmSU z^^+sdfJ*Q>OMf}?0;tY*2TBg`JoND}W_4VQZOJ5dVZ@B9rpuHi|9IS+WVksyLOD2# zUCA6W+?C!!YXKTuX)M=M5#%ZM)PV!z==molPDx68QErHts3 zlp4k8Qbu%1%8M>#M3*e4BSkQ}lo4I(u#%b4rHts3(LxqRmqw`w_OmdCo8Lpity3n+ z{|WB1FuF8KN0aXgObH2KhcSc#j4q8b(d0h~dN^Mof;kE1e;L87p_O0+!_sF7MldW> zmS6-!Ls@g6U6fPas_QK<(W?QJa>R=zJXXwPoW3eMJr)n8}zPo4eJ&$soJUMS+d^cULll*+pUTj%Uth86ZjJ;@{V1LdV!XWoKI$oba%7D5jwLU&wssp{v)W1U+ zyas(cU20~q{-5OP=?Vp_pO|Y4t2?uiSHjkLiZORK9zS`FpSvp^57rZ5GOJtQB${+F z9Q;B^D*gy3!9qqhGV(&ShAX-NqOqy4kF1g**}Q2umXJ^Dd01nwna)D)`JWKO@Q-zr z&*;k2j0<>pl5aZ7CNI@l4yhf*CUo$_!;kc^R1emuwcEg;YkM9O+y(~yVJo+R-*Fol zbRUmymcKFem+PTA=YO4UR)pw|`I~YETp6O(TFczQ=@YclLab4beg0<3coizkx|r{?_wN92&U3v*J0CJ0Or% zF4P_J#g~J#kMykVP{!9>xkl-7AL*q+10sQC`be+lm8qjt;M7Ar^?Buqk1DQimvr4% z^fKu_>hH$3rHa=ke2yqjn3gVAB|}+?AT*atWR%;JE?44-y#gm@LGHO{ecwr!eNL~C z?mId+WNpu89oKgibRrK2TQ3=ud%7cq>)P|l8M|5pruux7Mx(~(G`DAYBPTK4(mAa} z$Ya5+r{VFq=C*tjpz3XW^6f{YBJa|&;@O<(6@kPZJ7d>Fx<-fwtuty7aw2ofm z{~V$_ONAOkz}H^Mt`wSqHu1H@ozxG517|Y;Ab3i=7TuAteGA&FOK7!{7&Mpw{BY2$PFvCBexmZ@LF}T4a_`4Jcp5T!03h-%wD}d9z z7~H#$;BkUOzU>~zY{p&sam-QJkOHCO7*c8=bR0t}{Wyk1`f&`2^y3&3nFFEY7*bD; zV@Tx)gpOlK#YthIP>NI?NpIs(s#6!?nBLZ-Os6ra zk3Gr>)WNn^Z|70rPPJE&*WRNt2R;SzdIyh+k;1N!{6tpv(zB^glKt&G&yqgH6M|!& zKTY*0RSMH-eVVM)f}nT$o(X|f=W4vxoErWV~zepT7j5@bt+nqI>|MNXK8ozZ*AEd?CVL%3-gS zqWD6DzpP8BQG6l7U%@4UFGTn&Dr2ae*v+mh zd?CVL-zA(Vz7XMWy}G6QG6l7y6Y0*QG6l7df*b7qxeFE_1Go67a}aY5W%_!Ux={qLc|Mj8yRjF z^IybG<|b`ANOlQVLyC&SIhI}8CDf=jXcxPjOPEndNxbM1j-*UMhqWsy3t%AFWKKyr zCj#1k|J1}Or`&;x`&7`Wl$HI&eYL`Q$(>2uS1X*CbI?$h9IxR>t(BJHpe5^XD1-dE z7HA#7$sly)31c7`UDad9u~`uo#<)jTZ)$F*WLO+q5v7%@Yi>+dz}3r^m#jFCmEf}e zqAB;ai8!q!38+SY;fXcA;L;uOP=H+_yGmEtt~1)$pt@#Nj9hs_H154OF*c~hNzi?E zmF=8kFiW{uwcO4Jb*~^fBFUcqEIa2>Iv(?c?VV*k_dcax^w={T$=u=={VF`gq%o_C z8o?RYH}tibowQIxjrhkcMw1x#VR;?ZZ9$^cpZRsvSP!+tnEceQqvrGI&M~_@x|Bz^ zj`@;w-H?7qZ&s&qcUG4rjity^lu|JsCSGuzr6F0FGO}`AA?u<71suS+RTz(mFZuzC zbWzFexqK)3q$gI|qnkzd^ymg2{aVaSHo#>iGyAb`Xkr}A(WzJ0e-wos%r~^PB;|gW zri&<1oHX`Xl6lZ=uXFV3ws{eylGo<#qQCS+n|WRmW84$ZVoDIW&Qk733N)8JTL_^g zbPjpKM_B#6wr?)K=(T-oPxoCpsM|3niK_2~=yq`}P07UTI8w|oW`y~&a(2Y_EbcR8 zJgG{w&+w{}hzjMI$7=6!-Gh`$yH$yIi@7(wl#(1FKOYulD`DBgUXPBD!=uMmi-zsI zl5M{XE>`%gk`nf!UD2*!*Tv&&HJF2HX!#^^^fGQ@l=kE_%2kf76pKL{WVxyy%P-4y zqhx4VxuI1IL6sdP+cxY&k9;Q}DW*r(jVh1)02uV|+9e|_SRj{yiA9xPwr%+I%19gG z1)!1xq7gycC;<79K~rvdXez3xTsbyWyZo^ca-?1*W^}b!3TMtKm53sznf;diCWNyT zmH!jbtTs@L)TtGnvC2L)O^la^;PF55HOljqt*Df-9Ccm4Rbr5fS)^z>{`q6$P>%nR zP4-j^1)gr9uxFd}-!|EQ1QVJBt@i}wsAo~m976ej0672JADvKt3_RV=UVn32IqW~m zajX45pho|1j!-~ja;Qd@mTCuwFo(^*9hqo-P7&@frf`;LyF=E0ho%&+zpit>!@P$n z`9H(=Uz-t+4>7F-Fb9U(Q+qN^V$&L$9XKf(Po_!Jnf_OJ8bGlMBu z*9_Bari|71rrGe&G#e3`X8#4>(2N5^8D>7rd+FG@Iib18?TeTKgY#4dt>7G%Rr3IF z3&vInO@--WOo{qJaOua*5?o3pVs zZ|&mZ@EhHEz6) z^JL^?XkoYQqtju{kmJr>&$MfLQ?Sah&-RLJ|F#oke>yjPf~2V&nGln3Y~_5qBu_Q) zbLj@qQ}V}V$fJo|&-S9YbW^T)x<7=1Pa8_lp_x1x2OPV4d@wX{k$J{v-i&!a$WI3u z&u0iSGzJ;@GD<&%Wd4lpN2diciiVt`saV2-!Jy%(0=dmtC}Yn5*l^;>7yu^!w<5sw z^(8nw(9Q&i!y`SaWhj_AI9}WdhKwxfT_Zz(cOlH05%{OtDEisn9`kIY#r{WD-BI++ zz~O(6jK9+O;m8Mn*q7li^u0moi-q&S&mclyO}Ik1@QBuj_vJ!*q1V1c`R};- z@z}F@c0(`dhF;yB6MSJe^tx~8Mc~jY!l9RkL$4M88GJ=DWIwNKza}0Ic=kiDP%{5a zNC>GXr#K-wd^_QuC0D^~9$vjY;Xjc0r03J+La%`^moJI%51H;C)6lCZp%+y`@32sS z`+xr7Y~K9~(RG3}vEyGT4dr7xasNVTi2rOF();hGH2MfXpEMYQ&ciEorXD(Or%ZWX z@E0m)6_=8vO3$R^haP?~s{wvnf)8v+x8ntWFW?t?Y!!Oa6?%xq{AbIL-K-RP(8qi} z2IL>@@Gm6KC#C#*mJXHQ@v_s~i{t?OeA36cLiHz)oAG_YGl9@K1Nl7V;9sa6n1&8; z$Pcwg0TTENr94;SUxIt}_@U!3vO?wJJ;xcx7=IjN{Bex&R~A3Y@Q>q)W5=T;iT4~s z{BaEN$1%ho#}I!UL;P_J@y9X5AIA`X94jGvyuX7Viykb#o0Wz?-f+BdtngP2KQ|K> zjt`E3klwQ?^Efv6LkpG}#^zWglzzoMx#C4*kbKc2nu z)))i>c*>__cC_dz1#$nJtwm1?$GZ~G1&l%%G0Iih)Uuwy(-tMCrA6mx#H=u*0uRM{ z$cFI|Z+gm_7WYwJd=Z-`lj0B8tfCl4ilb=y)!z{fm=Rjm+mCRQBhu&#dDWQjUMpn6 zy%LBr`nfk@sxdH}xp#Th0?)&Us#MNw{Ejd1RO1G&N~bJZwxTcM4UghJBQs}H)i}&V z=_Tu0T)zhtd=SU$7#T%QlWkR1a%D9%AHJ+r;-ZcAWpQJiD#ztprRUSn1)mppYP%vQ7ZeVg6q^j@w&H^ z8~s_68l#k&6dy(Ytt{lPb@)|o+-%BMi=a#+%nX_o-iWy)x8Y52sdskr6UUPCNncmq zy*7A__kZFYGfmoal-C`z$f( zIbIKK;5DKw<=;j$0**<^dnG8@aw2VhjBnsHsQ}*7)TGP3$v?J__lpuKKOEmtYf^=k zl)NyP^@_%~(C|K#GP{z=+1ivPS%QzFHR(5uNKKlxnKHH8lCz>6@AXc!y!RsIHy0wi`D)Um;jGt)K9u?J zH2L?t^8RPc@|sj6!28!*(%R&!y#HYvuiri9we3ch`MjScxz?L@vUVZovoKz})u+tX z6ZClMFgee=HM(|$mfvkbtro{whBt!3uqqz5GwbmwC|EZcFuZ+r4mEYNZXJug4vE-GOOWlU{z6*Y|Hz zx8N-D!x~cZ{9*DN+~fVgVa)B4jh3?|(Q=)Fyq{i&@+BLRGqpSG_^sPBi&tVz<+9|j zzz3likBfQDiSLy(shHdMCgz}p$WLjZ@C@?X-=UWdE=sSoAg9tET8PBVs7V_l$T@?L z(lx1TNpiL{pl;tcX(tK6zb4(eMtR>myf2+Vem%9!eg^ zs}h=2d>v(Sx+C#Y9@_t|HTikllRx%tN*b$Ko~xb6FO8>Lz;FV+d{Kt-Q}F>h_{p^2 z3Tr>c(OZ;X+LqTw`^kxIOv(C-C|MT|m^EorQI@1u9IqEtUJJT2(&BGvr)6*Y%@RS~ zm9^=y`FLuLoI}a@>*REKMEm6P=lb!r?>uG04KVBDqLJQ5# z(OUZol>g#9@B3#X|AW`a$-9%@iw3A$b1Cnon6NXtV!dK zF?T6m&%?}Cie>0AfcHlS({f&XG>>^Wjy9)6^FGbB@ReKIzaP*-htcFOc5A&nK;4h} zkrQ^8xyA9t6jlek420Rko$YVo!#s@QmbAYS5i2mc!)sN1b)`uO#hLr)YkC}u|26LyHLNlMNoXK``*x`Xe&P?Cz2 zuZhoU&?2>o?a7?HfAnabOE>U+t1b<=K|947 zlk>?=TKM)4>dqL#k{=(4ctYydiu_ZhSg&vU@!ItWb?3IA-$i)U9xDPyt1caOSC)$I z{9GfB79P1JIlhiIANIyaZqi$&SpILWQY+aVeZO?1&C?$-cOH(2b!pjb-WM&%QkBK% z)1}NKX#YEn{J#5nKLT$F>(a^y%8bTG{JPYlJMHxRh?c*0d(_v(c>n$v^j-&VykIQ% z;k7T~99??lQ`UWq+j|$fF+gi~rv1Qe@iKVR0HdQF(Ywc2{1}^NEt86C-X9cPi@$Oi zHLT;{-3hJknZvMEZ#Tze{Slu*vw@r2utY!HHwt?Nxo>7>%-6i*Y*=h+6FMSC+ zpFhq6&ewOpL~ajxe`6H6r+lLnl3wyZ?Bc!UzutmGANgEvIP5FelfmpKH(~(WU*7&R zd=8N3A4T3kISbyh*9OUNTn9B+?u-~;8zNW5#y}e?ALME^Ozu<{#)ivhmVr4!Ue^#- zM#^)tz~3l&iGpObJW+%C82NWjtYhU0d60~gTmONojF%g6^iGf$RRc9q?)?$0Op-@^ zhGc=|G>k_EBV)=D+wf?fJN;VW~pQBXo1J_I)OLpdN} zz%})L+QO zYmqtF9qC0+0XknX{;yDa@my$Ty+o-imB+p7DOetE$_~#AYvuC2 zkHVDy4j(dW6-IOAe(@JJQuWje;MXfx7MxcjUWfd=dM~?j!Im6|hHq=MUpWqBknDS9{ z@i)kB`8Ucew7yMt>+z$^iny3sCpal)xw`|`Se@;aeIPN-y&k^b8m}}(vFa}1CZkb@QfPvv=Vqem*m}{A*(5nP zvqj=}u|W!!KznFq*1Qj|m5cNQzwU1g;G34Y1m8(=G-KIr^6Wv->nrH?N%2biOL4>*8F`x;G# zl`+1RoE87Xl zZ@$GRAadCEH$IZmPWT41z5et?RDj#lzN}|Jo%Q`W4b&yyo`x)^um5FGNy;A#j(REg zj={^{RuY5Du=g%nxQ1T0Mj#-v6+x8Rbr1KS*E1cMBY}Vje+8B zQ(9Vv*SvAg@8HLuorr7RW;Tlb{GdX?rmuFMD?{~uz2LD%soHQ+du?ZM8l1+saXUx0 zTik!vz_nOgu6iZ+WP#N(#omHW`H75QD_*Mw&dY;pp%7Ky?gWc9 z8fS%kgZi9~Uz^$;*LPYY9MD={Jc8VIf8l?@(mt_LVBxcuG9!1rew;zy2E8qJY8&-& zEYNm6nYG)aFW!t~zdpPcd>z%hHiqP0yUdvHdj4fS8Z5vp5-?^E}} z#cX-u9`NVN2l1|+Hc!67fNY45Y_7=-=eZf2-ugCG1_NV;L1W2aHQ-4F= zDf!CRu>O~9F@`@QFKz~rv-0Y}V4jm7T!fVi^6D;NUX;7z{}a$2%C{?n`AA;PP3b7# zh=M5NXkXg}usPPZlY6{zzN;2WHo;e#=P(m}Yj}J!*;n*=*qq`k%WgN#7ZU;IbYBHJ zn&}H%LNd$u9*<+@_!jcaW3F$|bFebs*Pt&X7x<#5L2r@o2qGKI*h{aWMq7Q$CP87F zuU=P3ZuhmuVxaBto#XMwSziRB;&Z;`j5vlUC08IBs!Zwyz2VB5{GdiC%N8IRrM%7^ z&1hv9H{oNI&$tsEr|jkyV}g=g10E(S*Lx$Gq71>ea@thoXnRo8l|-Jz%uwPZpfF2$ zm*;M?l}l+5nXAk_RBqV=RuH-?Dl9l(ygW9kBgTbO5RQ|zNxY{8l5{J6lVPzn( zKBCl!gRx`E@OltAuH@ScV<(hNYmoe@9AId3O1Zxk)M=%X3hIpVbrIDLd|fd0jcz911s-ev^^hQo`8zZYvv8;P$Rk zyC6jFDYric^MUgGXrTL0`DPa+|53Ibfax@4>1Y`1rvA>Lp}SfmFGPB(t13dImpY^& zto)#AM`5Lp+BX{B`>DM-7xY(`yp3d_>W@P*NPTStj15usWuS(tJ-9I+u71)M)Cl$U zDKIulP2LYHqt$iO;ApJ6|6PcTQ+Ip;y$R~7nn)(9y1x;BurgE4T@1-AH4isQbJd~EU}c_qATN>yYSvegw@|J3D?BV#t6l=NL|w)yX}MaE zd$AR2X~rR|)Z*WvVyo4J5unzp3yVTzo!aPkFgK_p79rWFmi-AHg@0xn% zQxrZ`ojVD7H`Nbwp)9vlgY~E~p7wdroUpv|l)6rfQqZz}R%H3j5~_%~uqKn5DJm$~RjZj!$K^ z&02O&j$5?5^T6DuC3B7ZQ5#BsJG3bqU~{Lo;}_)Z(gLNCw_Ce905R!a z-hjuS!}T)DK#kC+YM@5xzjLM?tvA~ZYOFp2|DU0TkMI~GPtb3?3!4-558ehfS^u~u zs405nS4gJm7gHfQU4NIG=9&8AXxN;k=ipX0Ur?}A#dm*E__L7$F|uC__9{v&K|*7H7( zysdf-p6YJX>v4N}MYqYks+VIxk*ZhYNyc^kQywJV)Nk7;?k#=kGBEGxe{f2;tFOHV zWB2u!--eY3y0QR;f25b=6OqTdnFmywKE#1!lChYD=x%(+on8-P%srH)m(k%jFj^`Nzj6ygl&;}Xru&D+cQ@92UHHsfXGR&yPb{}Ef3DO!GRU%h_h(LNGnYoW%%Yo;jlo6y}>ZszQCC`8Lm@7MTa0gUAwd zjEPDwHH)-C-f}$52erb?&O@%%=GK>xtTE?t`CMn-2!pZprjN(2o6NVlTyHk-@gc!h z^H45`Y%{B}M{YNV5cwTut9T?onO1caX_q;yt6GJyQsoXv^stXZ%H^v;`K(8>if|1i|{l9|Tf^0FD=Da=)K3jW^;?V6d1 zBjASlc@z|GnicjTxosZenbaL~?{hGA&A#jVgsc4RUC%v1%s{>oQ zm$hmS9Q|N*;;By`t9g4c`&pCT0<*tW+XtHit^GWu8e}~j29Y7w?Ey%JS}9e*9AP1B zz__(a@L+Vbm8UZD##ncGP(0phau>-2>lH2`ldRNvFg@AIza1h|tr;WXVVadT9fhA^ zy|*2CGp)0HFg4q%!)Ft7taUG-)bp$l%0Yd;^)e3?7g}|SgIZ*5^w0@DpK@)m=i$FO&~}H_?hxD~ zZd4=Ng0o2-hL5rk5Y5jEFI&`m3`Mu82DfWJsykZ2?oaC1oRD{^ncKqWZZ#K=M}AiS z41@Y!btw*$5fDZ90rOY2OC&^oQ@a#F-ahr>&tN92ou`7iUv0?~iUX=S0@Oh@`zN3d zskxKk?{{_QmryvYj;jJkN7U{okatv_w+DI0)TQA_j;o(>o%=)Gy#Sz`Q1gEVD}Sm# z6+t;qsyTW?Jw^SUfz2uP?9X7HR&x@Rzto@kG~kRnbPky3)LxH~oL85r@NhwG-UFsD zs=ghtc}ab7F(fam1-Xb_Q86u}wbiicU|v%Losp!fpEKmTp;qT!_oh1aOZdB`7Ow&7 zwmSG{=-pRi6fhsDOL+wPSk28~w~zKBL*KsI`1)Y>)5dd0(O>(fKbQlwV<(|7P|L#Y z*C4IyK`0E?Ug1-XA=+DvZ-#1*888gf68C{QT&r;e%n{n5qVP9TTN(>$ly-}U2BWp} zrD0`^HhDJk#%fCs!_heHt0Bl6uYFq{)C6sEBJw6`ce{W&Njr5P)MTv`kFus{>vO=v zRISi(NKVr_+(%iaYblIfXK1OLQHYsZ8e_Cs+IyLiH(NW!9x_M!hsVEjwPWmn^R%~b zLt(!5UIQ3gpuJfb)IzNoXZJ;j=OD6J%g+7U5^X786xgKAECA+y?HU8c1KMRiaX+X{ zt^-Gh5nmzih_=d&qqWjM!`L5M^;j@ZXru6dkZ6BuBY84*PP_Of6wYhI{si-a_91b( zsCAnLo0qfzPnIuhv)+W>746`cpss4K%!Z?D+NPGEQniHpFnwM7;S!P?+KL{~yQvK? zg}htZr!k;zYv1u1z+LT!m%+TJ?PQF0U%SOf;eodEeNYdzueks`(he}bNz>ltx|*bC zS%jpUUW1R_y6clahKC;d>4gyKsgHXZrhDnFJ3^$lUj8~n`s$nb7_*Pp-d-4eV7wn&ahY5Nst~3+%<9ygRNw3T&h?DjDY}6_GbsY9;Q}vflBbla8=i)wH z@9M@{`U|yTY@yyE5*`-mzs`Z)Qax`zB+K;EE1FGJ+0K6ED3kLjzp zSvjsZ;1qO1H+X=UqSrqJy;FMD0Q64lxml#Y^nO0%ozeMCu=cm!nUnQdJ-#BSbNYr% z$UCpUz!~gl{Jf5@G|4SmI8FmLLG zT0rlP{^md=clBYnpm$F{cNwPd>m_nQ@_}A&4Duf8`7R*uk&aJF7`_i43Fbd~nRnnl zP1mXbA(Ch}CVyYc(C$m?PJ_%-x;8ilTaInapVia5ylyez1}#sa>*G{ksi z8<<0lL>bIsMwT>C!;RQikT=3;vI@+RMnQIsQO20+a5UQ3Qx9N`F>dga}8rSBhq%Z)q?^j8`sW8h(xv1uLhRvWv20kzIJRvLNhjdP9RXoInzliWrl$1zyh zWGps8Z83@^q10QAjzd6gGq%49YKL*+V~FfDwtWfeC!^75P`iwMwP9tqu`dY)++%F6 z0fnE9GRY{}FGhoDko?tX$FlrpL@!6)KBLe96e8I;e-?WCjaRspKVWPh0%He_C~h_n z8Ex_CLpx%`H$rmMn6m{|ju~NC=Pko*35DCnIzH~dW2_>Oca5)k;CRnaE`a&K_>@o4 z9vV8g-H(jEoG~98FU~}f(u}vW!%C9*B~NF&ng4KR?_nNlg}k2T#u`xXWsc&)-p3r# z1XN$s$55u9+5I%E^fz-_NCudZr{Hg(S<(k;koiMNBty(Et3z+7dHs1%!%g!Xk`d3-e)t9)%{7}e1vSrx5Y`5vBgq zOyk;k(i~ubN--A~W)8kTdBv>DUU1<5tD8Xq^Mng*Nkx_N3W zjNLFxj)THY^8}AAZ<%%aK;*Xh_yCeS=A{~tyld{Cfa2aWKR$@$z8TjT%m-$k3UK?- zOnV=akIbvXVdb$oo_n2t%uYEWnPwj4TAbvMV9?#ozk*A7cYlE|QI;P5o1D^n`fF{1 zNH71UVldX*UyD)t5B}ENHT3bn%Qc{{zZ&C$e*PQWkM{RRb4D59Kg)f>Kz}0FfIJO1O+TW!v$}-0PVE`gy{i%FPGtR$< zEAx2&rzx;9!Jo_*U?%!sX$JL4ewf6_@rR#;qbdIQHAtrVW$wPG`2!}X>HZ2QVRNSc z06X6-|AsnnG}}LgV9oW<8wC&Z{Bg%X&G-K_19}VmMH3*h(7%!A7mNHB4-Oamr_O-n z5`X8>pqBczSmdqnkLU%3mHyt7kgW2Lp8@6u|E?yG+~{vay-og!#B;O1IX8b>{BPt( zski#;|A4%0{@$IC{OGTo56tcU`+P>W!=I%GlAZo;+hOx3fARI8cKIdF8oT`~M}XSn zw;4n4^=JA5BER@|b%6S>{tpYAd@z?kf)KUL*o_8JdFXDJV?r)fkyg&TIIK`guf6s0ApZ+jDh&$=W|7MP1 z;eW_!`;@=z^N>94@5VUmjDIg<%)kBPeuctW|4Z4BT=m~tfV^w|uXr4o>i>xw-|PPR z72xQG|0-1JXn|Ged&5Dn&S{}p3MNcOV!@mQ$0W%yv_2W#zOF#A{=-T>9ty26#K zpN0P^8hzKA=0JUbHLo*l4zzNNhm}Fr$kk9EY`wV>l0&TL@qdMA!>kYZ%xbvR{UwNu zu*Pu>A7xF-1LkOJ@Qd&;#`?Vt^2S<&et^O_>+&chLHTPO?gj zg8EeJ`>#Pwvkr2DKHVzzEsV{zX753f=2-`#pfKOMdLNPttSx*&X`xlD1|%0*d3l<# z*!r>~09j(a!Fh1070rNrnKk@dC@i<$`V8tTtY5zXbEWmT78F)lIX*_-YHJ3M+}BzY z`NUGhJD+kZM zcUaT2AlYf%Sc$x!tkIibdYAR_VW{u6-s=Dld#wA{p#HOUhz~ILT7~9;`o%i61$w_) zl`2E>H!J*0B+1rE?lAXT->{_*SWVYJldzZSFG|Afy7m7Q)eh#vpVbo^SZU`TO>EEXm;cKTExjv@J+dy30rl9L<-pNDRvkWzPqW7NgF=#>wHd0?%|6o&dEM}5A-1ohtbhw~u$gZ=V5p!(PiI92ww+x3TJKYKan*8X-bPJjdK zJntbHXkT87vJA45>q2C(-JORWL+t51`WR}z`xi_Pvv({<-f+8RE-)wAi_*ZHY!~2> z<`jD+_uA9!!p9&o-EP4n;u-ebey};yZkQL;EW5!ah|IBPb48zPf6GX2o;{Io`OLTX z)%p|8yBPm)aA#>@Kqpx2NU68y?voIY;Ld%^V5Tk_Vg-H*ks4ggya_c6N0?ee(neqw%N@l zLh?uZt+&A3Zs#OsJMG2ENPeuEMxrw_UXpOz*K9F>u*yKRk=PU+iypK>b%c zKqP*%_YVTK&u+OIZui?a_;~SveVPX$2W@8?lHcv!Q;>JquFd1)BX-?WD8x~_Qxfuy z*@yWK=pXh++;^O?+w+j*PrGg+6i(XJ>j9n=JAtoxpSB0LgydiLIj+oS>>GTt@V7mN zTfMXPt9)8`-riur$_4xVwy<*1zQvbDFWDy_LGQAi#5cdL+Hz%3*X&)>A(?7t^C7uz zcXxZT{c$UpzGaU*1-;vLRvs|iv3-0;?yh~83is^qxPN$H7kC7bhc?dY(39;Id|36^ zF8nnl|FQqz9GT=is*j|b^CHhtx;yilz-AcSP`Uhw2d!YI_$(51xbw(Wp zv%fRA8YBleMoy>?begy)5>Aa2P=lSUF9VRFPT*Tm!yM}p$}-%U$LM~9v!6v8=@_e! zH`+<63M*rr%PiSgCnq25j&qJk5E<`G#>-#YMCa$4NG3U-cLH;=(|#?IDb61?p*Pie zoj^`^Hq=0oW;l~-!OBeM?U$i2%URAX_iU%nO(@KDjtocMJZBt3_xaAIg`gHV1^Ccn zp)-w7h88=6d1SK0DRu$LQpXv9WSO&Z8$2v`!lL0}r89CTn5&!>v9P(?SxN-gIPzeW zWv#R46;SJ)Pr2{k;6$y4!baz6Rw!(CA_(giXUX4SZgm=7gyc3SA7_mpo#K2KW{1+B6pnpd^B*^xnCYu?m1%_5ZrgJ6@}>s&JMmc@zANoL)b@7o|e#i?EL;7 znEyBIdaKQO%jj134(Jb`3jfFJB?g94AbLu7E^N+Bde0{+#| z8ycuUSce6E{~gTXf%h6geMF!V`|ilV`#&OYRA9tTP@@B7=fmxoz)u4qIW`~{K;F2( zRj!TW1B(_QnGpD_58#;?Xv%%Sq`>FTLt%2DV_B$A3*_YLJ3WxVbLbg?7kGv=GqC6| z@@54JL?D?RNaG`uIf3Z2(3=~W{t%M$0(})E^8>dxz~+L$!W8H&3~b?J&_w}>!QSG) zf?PX^gz}ffhXI*$~*zHDF^v{vK{O1t!b@wK*{AOZeLo*iizKTLUv}B-;Xw zIkjA0ojO58H$1^Lr_3uiGr-}clxK(8NYL$d*6GX=bZCA7abJTN-A{V{sFGY z;j0{QmmOYTh>;aLELFkv6$i~(I4f~j)do`P@Zmw2lsT{mF_v%Er~!A|VI`H^cO2qP;F=t!jes;eET>J77KaV%fopYmNR`c9hmu|3 z+8n;4E#P*Ck7%3aovm|O4;~&m zNU56Wakxj#s$Pe`3gNTQVbB5hrQadG4BUW28|Ac*98zb%WYEF46~f03G1Lry;_wlj z108aBw-$kh9bBX^dFpU<0dyk{pKOBbQ3u|eAY%?QBN1=hf#(2|35U)X0B~Y74#Sx< z;~kpk_c9vyK(~)Elmu=+!~GP<0Y>H}kb{gHHV{|F4%!TNV=O%hxI1Gi6$c)SX|ynS zGKy(6Jj6IkT@^0|k25sUEP{u48#1Y2V8^DDzhQpx?XCzYLca-tz7w~zE z(QO15!3bLqE|L-U4M-G&a}I%yGo~CsplC)f4dMiYLp$;@j2-l_$1*}Hfji0g^DKLOmIo@FWo&a)_v6@iPg8YLNb7^fCP*Tndd3fpEzWespGjGfnE(#l9YjCgk$Td0lJ z#z>^4uAPxWS!@U6Fg-S%jJI#Wq>HiSN00{$Rw;1ZjEFh#@{p0q1J}d&fY!!d#tkJ# z*2h@*H@x&S=F>_t!0@6q{1Ky+7L-AT=W>`lW=y8T1K^E#;Ir;Wt2t$KE}A(58ODTWDd9q#%DP&abj}l1dcOv%2asS%QR5GU?1}{+M94; zj#8g!KNDL5c*mIQHUNH*`Nv9Fx-tW6Vd=*Fm-?UX%)3j$c`(KFO{^y~B@3fI#Pp(5 zre4f4>LhwIr4+%3IhE!RU*-iNbbibu3|RUz^>mp5%#f$B3}p6hgtNm;1rLBA<{YXU zgPDJ&U`Qd%`2XH9<_emnjxhJp7DWVeA>~Ao%(ngT62&a0)$lm;o$oQSXr`XhtrJWc zHSuDYpVOQb$J}-sx_G8@DFCOKn)gFz%PSHA~cBGbPQToUu`x4|Vd z)2VPc%iLcClETcU$?6>QHw(D)Om|u)Qkhe}gyjY1juqh2nDvxIr86H|;N>E7BfTUU z%&(|0%4G6i0z8XZN9~kLOkX(5yyP?8wnJCIbejcI z$o!O&{30gf2bf%De)AsS#mp62=&mr6{{|^x&ZCT_l(~d@Pi4&8CUE7<4YWU2!TgO@ zl1k>&5O}%D^ezEc#auB8Qq3&-uU*9Ktb?wW`RsQ9Tw}U00Kd+B+74$omds;AunCViO3^VU;!Kj}ypVA9E!gLdX zj53R2fg58k*$rpo%=K#^bYgMe1l*Z5{tCFgtY4Xc?_-tXgz$4NtUmhP53&r|aP7(} zh=tCL74AJ9AbS;Yri*Zmkw|r7MtoSU)CLW2>n19y&ff+nO3EKwqaX)K)! zaOtdN^blQSnJ9(JV0C{8*O@G3EQDFCcA6QoS!0I*$YD+S8$NScRRI`FKC9+WkOJ20 z^B^o_jXeTa#Ohm*=$BbzlvtOraww4~WqF>3Nf|3?E}WIK{(TItf~7qIKqYIwFUVC^ zD0ND!Szoa*q#D)+ni*jr%=`;g_o6yEgobsmtZW9S*yliGR$(N4Dc!I_m4qFSQ-C4&@2g^nHpm?<-&5D6+!v@1glPu zcuwqzc5u$@;YR58vQy82>|_5)uZ#^2qxd9m;0LFmnvd&0zr-9eMMFZ*g6gnsOb7ZJgq9Y)zj0Q(n883WlZ z4YyxRYdV@kp-5g z*md+ioMwknp?QWaq3JMzy+#AeM0R5ubV=;1+2E4dQu@KqvP*a1ic;8i%AU@#7t!YI zd3NR+Sf;UmDFm0!&Ug>bF0#Mc4`Bv7?lq81_84ulX0iRk0l&olhmSzn>`4XSa@aq7 z3S2Jx?x!%xW8YUpn9sIS^Pzxkegn}9*-q3-Dq^qu9a(27|fC_feukcdI=236vD*GDMGF5EzMv!W@O$Eyu_Hx=QuVr_~KzNP4t^$DT z>;P&Z*0DD%0=dDy*#gqQ{(#b-TkP2iaE@0d~m*xJT>=8tx$blNS-_F*|=I2Ka>C zPdUR7`#qYrhuH}t2%ob3+Q5yl*9L=(vM*5HGsd!yQd?N2j?eh+j(+6{1oI6 z=MXh)yf_=E`0?gs<-pR1^Yu{#^5ra!0l<&bdIvgx&gNG@0yxpW@EORdq~j2WIajH3 z8N?C(4K9?EO+z}u`CmW0gmK;-hnH}UgaRGq1n-5jW1QwK;37EQe&8ZGb(D2Qaq1=T za-4IHmceLF>ojmDIIUqYiQzcW8y?H~bsumiIV-3th~xN=Vi571DfC>Q;ygeP@ww9+ z6YVM_a$dO#lEi8F1tgi{eh6O9az3gCAcfQP61a1m#zE-Lb83q)+*Ho8kF$2$=r zjq^4264E*E`~|>8j*_;ivp4}v;4X3MD0(*M@ed$5oYd)fCUQCcRFmX!j#4$4&pEde z!UE0`DtZe!@7Mq@;;dQ-lgpeP)L$y*#J>RH6^?NWe3o$1DMu;gSUv-;jKf<6T{-8_ z`-o7%dBYLHO3oJAAgShL%mJW=^9t>A)pEA}49jbrCLy@%oL@HpP{%RsgvkxgpQkXE zo1A_XboHF~XTwVaC-g0t+~P>5VGxa+WmKr#=5Xlcy2II!iHmOHymShrnX`-PzZTBB z)bwrTWbKFWF6R$A8+(uQ3Dr6GImals>EN&n5U7*WNi|*<=Nn2jA8@>7;JP_KIV0Xf z&RG>KdpK^N!LpZgp5Bf=&ioHy($9&C1Ym%}n*!k@&T1+c2RXuPi13(mfS!pb93?H7 zL!6Mu5Ds%ZY2SC0qxc1uW1Pw|cp2yXwHcNZ96e3sa&RGYc8~4^!5O?nWbl^O=zwf}vJh@+;!XOTD zRn*7y;_mkbz?Zw4)^I=WDjRhE+^XLYFM!LV;}C(|%?p4#%>B~=CPCZ~dd`BmW0T=C zgu94xlu)k22QWFpefd4;!nm#<0Dg>{NHt{yw~ZRmk=(`9HHzYXI|;bsTnDNxqPfpi z0)B!!pMyX#Tt*Fs8_SJ*29_teA5Vcv95*!sB%aGJgYFb}XE=PG=JwGx(i!fqf1yj@ z#-_nbBKHEVGD%#wRp64jpZo@&=eWFG0G#Lc&ITZr`-p0U3*6Y%7+@Or;Ew>LbGI8o zE^-(D24@-E$y%6Xa=)W*X0o`msAqhMyL~Ej*<3bFu{qr79`KpV)tv{)%3EU~+})L33mYH-=vOQtqa|F~BnJd+)-eoI7nb02SQJbOx)E zJNF96Rqi_iSXObLKZ$Fo=DLkSSi^l`3UIYt6P-N1#$`AHcb#iLh5^=bm(%-jgPTk} z>YLnyH882?x_=6I1NY;7(B0<#WCgjy-TW$aP27B1)tb3`UjWy_{fx@aR_=9jeV4mf z4qO|zX$eR>SFjS6_qcxZ@o3!V?p}tmba0DzLfFZzbw#``?yETvKH%yob?D~4^9!6k z?4=78+u&7fAb z3vUI@6Z?6(0FVPb{L6TF%6T6oVVthK#`ECZc-J~GGIySmw!S@hRyE>z@-EOCaELeg z7C0~7^Rz+Y&C6O06CYkPEvCM_%m5HS-d_ap=RKrMHGsFz8Nxu`a{3t$^9;Lz3*vcG z3nQ49cOE2!mq6c*g!1YMeuQ^~np|PLqtxRJ=audNIm-Kvw)2khc6GpK1aDFR!bbAE zNf*WYnQroN9*3rcXrA-;ASZYS*zgj=D~kgzmgn>ga3^_V0|3PF*3;?mc;2ET@N$ax z@5?Yb&AU$1?-}0Vx!@9bGk=DcMBa~!;U$R|K}&fu@3sHR2;TQ)(53Kdf5fQI@%*W` zcAmF>47fBN^LJRL^ES{)r;EHF20$`+OV1--ChtNOOtN^Fb0ECL`y(D+vUv;t0U(EW zdnN+q@^s(AXC5#1Pw4V_Z9Whd@T5xsDCD)#Ifx?O&<^M>^ZMy*MKLcg9=a>McYlGd zgeTmBK&8B`l$TfVexY2kk~ilh09ScT19Vlq*QX#}HP0yv*IvWRn+KCxo>~l(Ydro; z=&tjI7Gn@~yb*dBZtx}+g52cwYyhd}HPceiz!R*6vs=7mO0XJvqgO$0^V}%?xx@S7 zFvilv6TJ#A%{)Kq&$sXbPD9tq>&pdqm*+&ua~m&(vgUSPVi3qZUNU7!_jyYxo9W>F z_6N95-t&}=cJcn8BIW@vX)55|Jn3@i9`gR02d;;wj|A!EdC@e}$4j9?te^K1O|b*K znAI5dBi>qC9|n0Nci{RlkNY7^p78c~z~>Ne(Hg*qd1Fo>PkB6gY({wh(uzLHOZWxc z81I)O(2esV4}zQE_0aiUC;lG#HJ$mgN6_u%|KkmAAOH7j@ae+0(M+_Tf9VQz2l#>} z2;KPK(8}e`4+@3OgFiuVPyQjQVGr@ssS5Gp|3eeJH=j>OC4BhoS`c4;K9vf7{E>4Y z{`}T$00i*eJ)jHZ@1WaynD0;1MG#-L1G-?or5j#C_={*WKa{^TAG#y_$+rMM%D?Cc zlVkjE--a%NznB)`NPhWBM33Tcqip*)|H-p}NAs&@gPh<;9EW8L|04aGvHSui04Mp6 zs2>@}UtR-1Jip{Fgs1p*F0ee!AEm1944<6`E`gu(GfWcsGj75piT^vL(#iaVZvlRm z|23VxOW_}N{?OCEoKT4nisRuf18KQ#y@h5Tid zoD}g-CV;!lpZ`7p#r)vi5MJSzmxC+e{}T^DDc`;kTp2%tl9O_N{R;q8@Qu?!D*5kH z)9EVz1oio<_+3L7QZ;|hDx1Li@%S0xDWYNOF(+~Z@dLuFaMuy zuEj+0sgHBT-YOi1Kqko{y%Fmh{yb-nJ{_6?=^r7@h7OnALd`Ah3F|i zhaQFzzJ{{HQNAy|zGM7v=#a`dKPVqwCitFZ2;?N#O6i@mAmuc0dj+mv0s<1(B3Xc?gCRVd5!}cQJ=_Pu!#B^0Rq=ezy%7{)1NdvEYQ&!7bHld zbtPCJ+=&5(2!5OlK&W8e9*`q~sFe_g37jiI!UZY+y<>uV|7B}}58i~A2myosPDG?& zWeiA^;4R9;j|-&12ox=tb{`Q=2(o8^ixIp|^L(73i;|3Z!RN=oof6m&Vw|T1_~S%) zs{~9s_?aMJIDtzPY@i*nB!NK;pUDDj0^_X`G}1@jDT1ln!JQM>hd|B?cG3BeR6$Q1 z$OXZ(*Fn+*CEo&6S(Rqd(K^fihT)|JY@t!Am ziPF1#K_fl$1%f=<^(qux;b6E$g4a5syDUgC08lK*#b1zm?uy`2F5;C4bkxr(72N+4 zT$#Xa9$c3T@Yja$9tmdA8M8`(jHaNgf>cVEs{}?$jj9ESL-0}~h--sotzf_i+%>^7 zv;%%!;G6}Yb%KYqFLOiC^fky$!5VtC>jgtxa1DY)sifN=r- z8ZF)`K_4}CorKeAYr|Q1au>M0!da9o>=SMrgEJSQ@;=CZ;rAaQ`T^k}-NA#x%W810 z!dXKAxCz<+Lg+4h<3|t=A@?MNUcw_%T%Wh_O)3$6g!LN$@D*;P`rS{s&JDz0IP(E? z0m7w5#0wP0($jiaNPnmPxggi`@P?tT_rn9xKU%;CbG zWN=4?TpIw#gbCk+LOs!Z&D>AV!!^FLSKW ze-cbi3NtuF>cg&Pmx zQZj^IgMeoW^Hl(32@m#zyCig{*)3Zrpw%!(D4<+8S9p+Kl00G5GDOH1zNG?JAlyuM zzEIe_1w$$lrqIfKMRmdc1u;Rlpeb_rjPg5?9D z=sw`x!e=NAeJI@g6SyAXo3zyR3U|JXA@vE*Y60jMrqXeU0pZ(nkVnF|s8SphzVk6G z9}6eN;u@X^TkF9M3B6PR3=3Jbx$sn2Cx@32VI6&>KPo&(?VB-SOE4_Qh2E5rO$bMW zz&VNRRH{3RP8>jly`sQ}82mob>H-iKk?0HP_KOPXc=`cRJ3ZwGMSg5px{5ArMFcld zC3OqkMVBcN^biHFgQcfPyb6OjB+91ltC#2nY7Kac(kNr`5iO_#z*iJ-1Dv1e_BKTD z7d3wmEWdKlu;}(n2oxmx*$F1WA_r<#g^1SofD08BXh4pL>S<#$O!S1h zRNLDcPwYfltSryY(Y zQC%jyB#VBXfbgv7MQTW;i1HZ_o)e{M05~s-Xa-3Y{Z!%NEsSfy)u?qy;5cw2un0Jdur7%6!p_lx-J?CO5*QQ1r$+ za7Chdj?i5ejZ*?yEGnhJUlC*REbBy9DIK{XDwzk%o1!v0 zC{-^?r5~ac=VCiJ(1f8eBKw$rTL{pl;;iCoucQy0=!G~Ng8wyL|0WH z-J)M;!{VW6Gxa}vMD5?fb+2gRR|xw=duY3>U)1!F>T-1>b;e==@wcnh? z88bng#m!U|>=jSX25z4??Fmd=#O^Hs>=*w_8;u9VdP-&wihp<(magI#>)_K(JbMMk z=`J4W2InD;CKFF_-B;iaiQirYFFs;VN-})KulB=>pZKM6`1BWVwZkMpoJHk-pm-5g z42Q+b-i2k5c*QHQ3>II{g0m2D*2mC=ino1^ut&t-+y^d9JevW_aB(7iJ8)DyJ`9s% z;?G{e4-g@q83A0RxONOAN_^%CbjQU9sIM3;-c7qSC&V=wz{QAl{$T~UH1U@Qz@>{{-3MHTIHw%KOmP)87_!9S^C8R;?^q6at~lT;ILi~K zQ%kQ$l zkan@h0g!v*e^LOyFMgYT=`Jyg>dgn@oz$M{5nm|>=@oxQefB=_dz3o#iyu(8X+XSK zh--Kxp6v$Vpm^H=F6^<`yBI!)#Q4iQcxc7VH1jYQ!mOS?zeD0NOAArd|$usT<$k`Jklg zWtg~1Tm7rzB_?fI||W>2U2O38o~`TVnhjmcA0CA$WEr z%jhFLe@QpB!vZ9e++h+Z`GMxF!xCo|xL`>+6{sPSdVjjyR=DHa`b)QPN5?QHEsvZ|E{5+lwL0k`&Nc#%#$}+FQzz z?EenJT*+IsF`XxQopQH)$x%u?3nWc72vj6VnFcSHCEwHfS1j2~vto&4nJWOLlB`I$ zE|ctf4qUm!=P&3gBtg_(tdx8>1Ar?yaY;#`{OFhmG$*2;-PRZ}oTkDdTss8Jhvd#nl6Vo^kRQVxjYq zW~O5hzEZb6@Zu-++6c~Hnn`m=fb>f`%@iorP?8ZWJxV)GA<{f*&4o&n>DbK?=@shi zg-P$xjSQE5PF==hQjH0^2x%!BJ|m^GdjOA;7SqdhT)K5L0MXK)av+S6zDg-otn{Ns zz)wnlSqc&-U8;hYc2}($ zx+Dz=M)YiHDz#Q~qzgA8P@Z&K1Gs!?#9HVIq_@Nn7D}bGP8UfFyg@EY%eq0XNC%ZL zDUpWIQMyv;rrqGmq^G;Vl}l9$m{drAehT4LX$jq>D(Ul-o>xl~DMF1@aSx!=;2kwqEkp7-PlQf@=K+V$G zbQtQc^yv?Pw@EK4plg@@P92aA>EZu@>y%!irMyd;pA6wc>FP4L?vXC?LD*jDUaH&% zq(kq*Bz=b-jbUlbbBOR%x-|mM#-yicE*O^%w*WUG&3+k{PO_X5 zSUSs$S#Z5qCZpMHpDgi5Sh~nsXpirJESYv`4$4-agr%#jauTAu$p%`WbC<>Gq4SVk z>H*wSCZ?kBkZdmfINq{Gs{4Ip?X;`zD_iXjou91fGjRU0*Vh0ZAY1k?;DNH{KLI!_ zTTee#u&kXHh7j3nbRZ~H*1-gKM3%7`5yE7tiSQCG`;AiDqcZO%0FKE9#-NLosis30 zB{PK~>~UE*y^YbbNAVyhWPARGvl!XaXy9UH)zpHDmp!KM7*5HQL{7`*(*V!Nid+Fm zkhxH=Vh_9Xr#*ay@UuCWbe^*m?j&f zM=@RYCw0g#$}IHuXUayjz-7rCCqORA)UyD{mU+;el_N`f55ip8DeAQ4$re!$Fkhyx zLWDxu#>LPT$qvyEa9MV^9l~N+iZ5_iWcz5xp+pwdfe59tmuqT5(f$+YGK= zmd-+i2HBIZ!QGPms)DmdSq8NRZp->(plg=J%!0EP+0iKww#t^$Z**6t*8tEads2aM zw#y>L@Oe*Wr#-j(vW2v3(kW}-49hOr%Ed5wAZw;XzFW5XV>o*#Ygqzak4(P+UV3G# zXj1KyNpB(gfJ{us(;vz1y$o(p=13LTW7(Zz0G`NBY7l5h7Ly0zuBXWxRaiMUYeSzs8|EEnmD2mS^PWk|9ix=l5e|iSkhDawN%j=^#v&&!FruMgGSJ z;Lgdr&w@KIU(kW*sq$Z_-Ecv^Yb{2WCV!(A@N{{@JJ4N}KTi))rd&$vSe87B_Kz;f zZJFS*<)6~FV~+gbR*-!8=ah03$kXWCh(dYyiy*~v9zADQW0yci)DvM*hE#VNxqEY=E#%&Q3+V8yGGk+?3bT+g~r=MUz#7Jo80x zx8(l|1!JdwvehRKlJ z`5z2$SiaLAUPk1()WRQ?cU3_*CZ9v;@`OBt3QZ?P&H@OX6%|x^?Nw-9V7X5bH5=rB z!bs)gLB;=~p>tJym4F-KrkG8A8+XNYnuR?S5Ay)`RNSE|>yYBlKS8_{zti*LqgYJ4 zY`zM{RS-W#{z?e_74OD_1Sq;`RSQ(quERKk6tCvOBv|nsJ;EW1LO=KnRp{=698qM^ zrc#*Vg>1wNS0vHK!%;i@F^Wl)v&Sm7J_I?b7@>tdPVv_jn8Yjk7Qy6{;^mhR=(J*82FMwOeGp{rI*`Vf{i zimTM+uT^Z%fyp(66aDVj6&E5A=%&Jn`q%Y}wKVB8C|1%fxTRRI16-rxyAGJ#R!sdK z+#Q8&7T`^a6Gz~zS;6}oLuyg{84Rvfad{qecNGsj0B=*Ap#-vBVPu2cQ}`vq%HF-uc`2J{=gwQXiteC~a`)#LlCScN z1txwk!HDgPIb;a*ZsOonB)a=sqUa+H}gv*#)=O##VMen$^qzH2(K!) zeg>{e8EOK&TKVJea9yLUDS_~svOEs(>&lV&7+{^U^h3aJC@W~Szo|Si6@Yr>*BY4I zQnG4c(x^1huJdhW;zw}Zq->=AXS4DmA6$#Fhjyr1m7ErkyUO7(0NRxf=^*!%KTth( zUpYo8YKQWN|JstuH4M1!QnoQcx|QPxK^`jej37PAmH~{VS1H;CK%a6qJz4!qC+ZqK zQjXCtHmICi3E^X9P%|#&sdCB&1R7DE8H8|D$)t_HF=ak=rN@=0$hDIy$^(|ps!h8w z+`X#&JUH8@$}#}wqMEb~!u_fXBE&nO%G85%Rrym{=BDbWdDmSv?>OKds^=*y@l@r| z%j~6kk7{jimH!{W`KT7qW%{aOs0-ky+AG31{Z-dD0vDkA@ECMKs=+1j8LT=>I~5_S zL_MO1sy5yS;E3vs0$jLCzY*l9YWrs($5b5pZ6j0_)VPjRjn0H+lqx(Gx@c7^WhEz6 zuhHupqq@q0Nvuk$gzJ;4!UKpGr;4Y2pi?T-Q<$7qt)qA4j4F`koqEd%LcU~o@zEr9zktVqds;R#~m!`^^3oq#^CEfXpsu#Zim#LbN zVn|u4a!S4~sggqxFIzSBGKQ3+T5=thxvG%eaF(yKE`eo%D&P=&7OI@fz+F+Tdn(2^(xi~EE`k{Xn>8XxltI>ZPizH;O?j#=%itj>LB%g zn^mnFaYI^E-_yQKt7-QZdr63ZM#lKo#f@%SWmYPh(_*s;4yl zK309v2$LtO_ZLApq$(Of^kLPCOVB-4sd~VTs2=k{MpXq~AY-c4RN0KH`fkAIglbp; zp_BT;T*Px$|4Q}PUUh;4ob6M)QM%=#ezOxM`_(Vbhwy+}OR45T^-&>ouIllp7?PWM zh8)h^)hp<=_fW@?7fdkBbuByGl;jBu1=_Q1%RtMFAt5Kh!EWK78v<4>E)ax^#yRNoTE51&>h92k} z>MeBZZmKJTU|Fv|Nr_;C`m?`ba!Y-WZe*i6l};8nsT&?a*sR_nz&Kmfg=Uaeb*Lx2 z+*R|b3(%(abA@HQI`mVF`kwk^1xSZ_Xc~l_>iJZ-cd1M1c+dm&E41i$t3RSQ^`W|o ze()aki!=%Js!z~6J)o|nhQ=fHLP}Kz)$elw)vq z4E>G>-kQ5qDf(zmeFUGrn$HR6rH8pf>BUW?& zTL4aKMtflrr@0&h;c3lgFIb+@^wFu#1kI^bkYvq72b`VNTw4uYil&YZsibP2SAbm5 zWR3%urrF*I%M8sWdYLmdEGkX1GzqQ{=4eW32Rv7Eh=V|R8aHammTHz#WmBd(at5Sa z^X4-kS2b~zqf}|Wp&L@INv9N`Ml<6w0JWOyN8tLJ#*f~P8=8?6M7XIba098=ETjjz zQS&i%7H(_YDW$rj`FK8rO`1F2AkCVa)HZ0*?4*abOY`L(kOvwDRps59)wF@|P$QRs z>(RK-xu9N6$0nHcY4EQ%V*=EqQkF2FQTzn*NVA>Nktdq>FCgBK=Ir0V4Qoy_AbhG} zoq}*g^DNDnqng|M;d)HdLi6B+Mt2iFowQHZ!qQp0gOWrS?K9LD-me{93E=@P%NgXL zR`?-^t9Ijd5I61D)FX4(2G9nAhnDv&ZjYySY8qT0(*C{~Iv=fx>SXfEvBdL%+ zr){88@4U8@lKfQdQ~GTCg0{s2&eF77>4v0hul^2rrZ$<AXf7z!uBYs`NXzy{gv(l&We^r??*=0J743~r zAuQ4U>WAT$YM0MIyfW=IA8_T`OD8}ov<`p5vQqmJ&3sq2Z#@rTm3Hehu&mZ@rS5W# z_8fIUYPJ7N!1XolBAV{6YkBX1)M-~!pXi2mg$yP)wO>Divs>DI-#~a<+v<;z-O);E z1EEPfOc9#3Z&3EzqFq4qQmZyy3EW-nyVP)N)9!o|+&!&e8@LXwnD&7>wdOV8y0nK% zz&+5`QhUE!`x3SE9%{Yo;H5{~ei9?=)6Q^)NxyazrKkhi4XMyQ(ysLad{8^{0mx%* zVKoNvL|aYG)TdeoH8e)F{~QHiR4bq_9>%p#x?wq?J@+gkIO$T~2j{H&gA&iZx~eGv zxahL#;AOu~90cJ3ofoY@2XzN1pK#S}xC-K?dpiciUFYnIKpwiC{&420o0bA+Ub+Y? zIB%UdO`JZuWGeN1buBc>`RNWFfiOVlCWY%j-5=B)Ijmbvk4>;HOA9VUr>3u;LUk^5 zBai3?DMJd=G0(u{sBVWNyd2Z{Tn87SGf^`wL~bcuF^qTF$3+8fQc}ql+npE!SK$c~<8{ZL}0! z%`A{}x=jl}&gZaGIW2^9&M&hLj`!2&T|9E zCEa`>ggLsRAK^Mz_v-^#=IKHPAuP}(y@tUT>KH;?N|8=k2$RdY@i`#HI_n;ol;{$M zF|tx!)KWMr)3wt~RIWSnB1na9PcNcZ>iQz!vsyR&CAb>h8?+5yt2;Oe!t1(MY1gDq zcYGY&4V~`=xW1_ysDrRxH%g~uZ|R<#0GWI_qkz2`v z)1nJI2a{G^`|I#>SNDk=xOUwwnpE%U1kMoN*ZJ8Y?9koY3Cm6${)@+3mw6e&Zk>Q; zw}(1L0S4Hsvqm6LpYBz9mK|2mlbo(gZ9n$?l+2OEm zT@?a7)y<;%VMKS4I!fcZn;gWO&_%j}bJE|V8ey;g&>dLr)0b($x#$C_&%R&(4;_y^ zpzr(}I#>M}Itb>b|CTZVcm2vBMDWnRuoJ{n-}5=hA^m1bg1z+Nm*K@*f9D*Ck3ODG zmHFwXsbS);*DM7I(66Swi9r2!YLXn*x9}kh)^CnOgb@AwSAh%FZ<`BeVfyu+5QgjL zX2ImBKH(;~V|qm_Od|BCh(nUQdop#QiRx$m2BJF8zY6Xcw}hZdCc`e%1x z5UKj7Mc^*zk5WmRroYX?Aky`L$059^f7T7c4E-2&5;OIYl&W0P``m#rTW_Q;M~;4R zCrGaT-3Be*BuRq5Y|g=MwgCm)tI`YUhYUSHQgPisJ({>DNGZ|EnV2cTZh zqY}75zd9EKyru6r4PB!?GZ4bt`p8yhweMLNUt@=k4=&pW%j{LRh zZ+w7w?fUj(0Nm4Gqn_h^J!>O`oq98^2wnOWRE0dyyX}CmTmOAKa1ZtIG~4v*w^54I zr}q$m>(@_EO7%$ZwGLhe_1Z7MJ=WVkg2@wo-AfP-=^N_d^Qr!&EL_8g-sN?SdQ_j( z3*nglNhSc}diM(GCiKnp+V3@dKt~Do8MuN}7g{7Ne zDfQsp4ed@CuBV~=YX}b++Ssu4G90E{!`tv+4NQCt)s##58m2vg(9f`74F>3MsN4oX zfFb<{=nfl3X%YxBj8HQm*f1ptT!`V54*>`@4AN<)FvHkfj4a&X&xG)(;Xnc`BMdG} zAdED8vI~GHgQyzLjvJnp0uXI@pU&IF7&3NYfUyQ16_Y0oe;9y^GdR(k8gJN2ZKhL( z_66V)3=_2Pn`rQQf>9?K4$?l?S%cjbx)j4_-$8iJu;ym~&Ks7e!*!~mkW%S1!_dzl z>4scKjO?Nzn(CtrgOnz~OoQPq2(t{)$6#{F(EbOwY{N9lKXVMR76|hUUlv1{Z`f1` zQea414N_=`{R;3RL(uCOM6u!iEdZ_7-1ZA*T-T21DuRfZsBhqY=H) z(6k7aw+#_*!t#!xCKRN}usIokW&{5`xE90hIJj;#Few+lYgkUL)i%RFG^Mv2p8F2u zp5X&Fg!c_5dPzDA%QnHX)38(y(q))MCj%ZBX7?a^x8c)YK^__gXjbeow9p#RYdA)a zVxK|$9CZB#e_9O(4BI_1vPTB5ec%QSFVZ+48~&hV_KCs%8*oF0C3Hr2*zf{1*q<7v zQnPr(Fz;&!M-2yO!g9>Oq2GPn;Fb+CVc35ULMLM#J?zfLPlj;|T#WB;1KDpp^gMJ2 zjQ6VG<)CpnebwM=ZpIfMBZ9ke2UQ^+#wCw1Bu}H~2uuzc@6%?mm+|{YF!472 zMJd0J(HaS#zQ)7U-uE*qsD|}7ny4)qU<}v^p0_D&l z#uK*y2sOSy%h?fQ2|Zb1Mi&Q=aN`K207;#v}AHCmYlJ061$5q~-IxvHCMOOEtdc1KkDVo0CA&j2CD_G~IZC7TSx( zD^x6J7+11jnQ5FI4`G&ZA{Y@a8P8Jfn{Dj=30#gb=v(M=jgRxe?H_P zV4M*F%R=MFk>HAqQ>Vk^vT=}Jl49d?SHN8{Zu=5kiShH#fGaiD-ayzgqv3N1D~z|P zI;%8}QyG8Ncu$P6)EL)N%28|F|33h(8Qp2IxoLE#{H)&i3$+3pjPFc`?zXYC4bJWu z574~ZWSsE>aIMB?XdC{n@z*UNZN?o7pu2B;<~9Hw#-F~8d#mzAw1VeInG*gH5kYhHT^k7yjy`=L zevb1DxJ-XX`6~bfIA-pFmmtT`58yM{@m1=oggCa+y$*A{L1lcnViFhP z1WI?DPK!pSW3?A7vmJ%BI^{X~&kz`WIezgFfOf}if$-Vk$Own7 z)A5x*!F4&>Uq!r!j&mr>>v3$Otg_ef(A#h};Q04mkVlT`7ZGUCF})ckLyqAA5Dq(5 z&4BQ!<0)Ew#~eecI2d1e~Agm<1;Ors1z33^1KjfjeySrt~hz zbb#K}VAE$*S{^ZdK?zTo>0LVY5pMc{a-w6V$UDGAn3Acn6lvNS0%4S?l$r>~O&PS` z5p6O%;!d0}dHez{#`JzQ$Vta6a~`-f(*ioyaM9#R-#BEL_WL73 zrYWTg!fex)J_vJ6kEr&|HSH>ZF5e`N#*hk3Z_fZ%XgaNgWs%91iQ9A8^dtsjDK_!v zLU+Z~{~Ndx)6AP7Wu^yTfs~sBwA)!>Id@2in>ia zI?eRZG?#w3UegB`AnY@JL9M`klZGa%K~rch$YT?mzD9atN;O&3Ddm2AWmlIzX8~5-jWTIedcE;V`MJo-n}3P%_1tV zT+MkLaBgNN5BT&jUrYhW&0FY`*$MMElpQ)*mXE@!mC-h7NTGmjNeApuR2D%_i6&GBv<*g+6 z46!)2AZ(~5vK1uEvf#fyrsX+$iz6)&TVNSw`A3Tg$1U4l20YqwVg+y~Ec<@JAYv>p zQ>uB=Vwep0DN7=)Bxfu;oM4$?;k^KpL`x90Z;~v%)JjUW30k5oMxD0TINrMNtWg8LXby*~O~A6yvWFT= zMV8ac;N`N#L|H={a5a|K zX-m1*a`Pfgu37%2Gd0&OzbRmH!*abHV`;JcxC*4zQb3jdT}!_hgJ`pi{R@+J%Vuhk z-m~;jI(grcQH?=#SQgEONvCBQb>zD&nIZ@uSghsn(rxh>hUG)cib248EIzaW+iP*8 zJgd*LvkWHv7GWI7fJM0nx<{7qf4~h|I-h~F$ChlWuAf*|(b_*`S+N0R*pjsXYgf-0SN?Y{Dtjo&aGs0@3?oXukUmVz(rgCp$hth zbuT55G1fIr7;da})f||dwC&R`W$6s=d8=9y>Z@}a|Q5J>xmSQ3)Ux8Dx_K0 zz79aT_3~u+ylA~M54sHNvDE-%TDMbCk!4*$Cr~a~vnb2Uwl1e%I>);9I9%sivsS`O zp4CYCM80*DUakV`v`O$;XicTOoDsQfuj_ zh)`x-qJ^;BS}cS~g>^dRQdh0oJPe}BdM*Oas;z6N=BlyIT?SmO)t|Z**Q|g3*TT0Z zJ%DAMbrTaKyJ5XZCHGBhJDmZkw-z`8*I*5!^0?7@gL0eO))hW5xnpgg2GV5xnDU8c z>!exWTCCzlAg$Kl`T@9WT}tuVtbcz8uHAa*75KboJx2HCzIDlV;JU0Lswp2>*L(-d zZtLN7AP=pXE(qIW^`uGB4x2~jVX27~U96ldeb+p0`TK7x`_t;uP z_iWgTiW_f^b@F?NH)8Fe$$!+^LGi|{uTt?kZjG4@Zo+za34A))vM2>`ws|{4xYzaq zy;b{cNejWb*xot_lY_QNG;6rp9y!3Lo9%z}<&e8gOg(WA+bQb(dfL8u1}2AW)hcja zwz8ivcyHS*$~b*&zS98kwHX89%+I#V0ha!@CTc_m*lKSgUZBmNR)oX0`3?{U*~;h* z54QbF8;v10_hZn7+Gb6Ivm-XvW|)N8j7FG*+X|^8f7I4q4B;`G@n={@*xru-iL|{% zwh6E4CF4mS^3fCuX(jPFEIGd9hxOm&OU%;KR z)l*V)+IIJ40M6LP=+Q{9ouEW8(Z)}JFv<2q3cRG)d}#7GXPdGc+)(nzm+d|t`muy@A0U+Dfx*PBuTNafqxwb_M zfXlO~sn=X!>!O{QLYs|_85G&>P{w)LRyrGAifyGdw_dSb9RXKndz(&6mfQZKb-Kb9 z+y!B!t=}IeS8Y4q!;q?Mu{DTLZF}Y;=xS^)Q@^Ly_5pS8uGw1lV4T-&p42d{vkB=~ z$_-oT?||R5&EJXW^|lk#acQv4q{;u5O-}PtqixS>xV~+B(;vD!wo#fmn`|pwL7Ht^ zdR|&=-_WAiYJ1BFa@V#a27or3(Gh@lTg6)l+i7c?iFjQ$aWMc7Y}4O>u-i6E0+WZf z!U=FawgP|XdTpmE8||}g{s>&ZEg>2{2W$hB;ykiNQL|&v<}Cp3vCW-|pC`6!wCOoy zV}?LDVk>Wf$*AouF#uz>XYWHeZaeWBZry}!`7StfvR{b?&e^_|%A~#aHz?KIXP-;W zxC8d(lpP+lpV|R0uJ+HUd*@~kdjR5Yf5ja_4|~ZLT%V_1Ms4~-_A^wOdf5XK!Fk(5 zDXfn@dO3#VYu|VsT!7uc0U*%MPR3Xc+rNAkx*&T?5QM?@NnIFHh&^&2!iL(|Rt2 z#@dgVV0qF$BLmLj?CYs95pVA+hsh~>DjiEXZ5Kzv%NaYH&OIgAPu~ESXkRM zO-`|g|WKST3UzCFYlfCBsKMvy}L4k`zV?3*UT^0Iwy4lIl9 zXDQvfVo#;yvdsSJ+psLRul^Ax753+s;ZiE?LDc@fYCmul!YcdkwIJ2@2V4MZ?33QW z71i1&a^d=#eGBbfU$>(~$BSTp-2lsa`$l?i8|;P8f!wn1J_*ujZ~h+FaNEwM2G||@ z`&0ll*>9Z$uG#KMQ$mY9Isv5Beuxfg+_k?mAG$Vs_Cfe;x9=E1ynFVu^hn*eKcaJv zUH|9ky5qX8y09Zt)5)tc&57)mzWy!Af`{`yqS^wo;40f+CB}Y%! zkM@J~tpDLhklyt_(yraNem_Mz{p&xIgAA_ESOC*Q>l26@Ue6-$&)5G!d-2HniI2gJ zuFw7u{>IktSdUvbzJ7KF24AdSL=nrx`l*z;Su?IuebEy#1#!YI-L^5Xffs0}=sQ(wu`27Klon`c# zz?5PbyQnL4j?qN1Mm%E~bz%}2C)6;V$O!xZ-jf)g9fj;X!+#mL3yjND?M-HsQB;}2 zc)JItQyK54f}}A@f-soQc&7v;i}AMzR#V zpAk)ct^&r(1sJ@&NZ6#+Xg3R4HRJ zr6y&JQg3kA8K2Wjbc1nd83u1MW_=3N<&5nG;3^ollc7?{2p@r!Ta1-cG0!T-)K|b& zGx+I{-DSK&0eKC>o5IOjMgkQ~>lhc97_4XPr{%tZ!4kk&Bg01l**%8*2t2ef1Ph^Z zpW#KJ*aOCO>dHQ3%%mDbE2EbVf3z_IDPV19RD?j*!I;zwD~}ipKZUH5@oY0>j~T&> z!F4mnzQvTDGN#gR|9cp-^_XWbV^R+W`xrM~1FoMjrvRo07=9F0K4T;u!Qdbxg&yh< zCWl@r8|JGkp=rx}kq#9H=JZ=o zab)hJ6w!&9*9A>yX0$5?U6^msdUl+tQ-ZiM#ou6pZpC5%swjE_%P4VBH+usDhB)n(_RaiAM+*3&it7v6q^Px7tp#C$oy&_xFF{I zr_c;$`qHVn5T?_|0E9A^90TAabHgFX!kAr7uz8AkBnG%}=0`)2MKE;~N1kRjiU2sn ztfNmflG%_1n^DZ|g&@()pJ|Ic%lz61cns4-VPPy&{|xXrCXW`DbIg1WxOnDNO3o9Q z9-aUsGB5e#qLY}r9YM}B+mZmkz+6X}R4P+652n+YN2rUK&U~JO!3^e>UqCXM15~Zg zV&=UJm29S;3DeDC{zfOxa+wtrFI{A2Ey7?P)9E|F^O<>*fGc1gj{X?@){;X%ZeTykIFm1g+8kq}EW3Y+oL;Gzr^Rv&u z-DCbjHXkr;tDy3b8UGA}t;|shx7wIrFfrK9Tt5SY9n3}ar9NU_o`LChGJp9OxW~*{ z6x4Jv_cwt&VMhOj>2@=Be}WtNl$kW2ARCc;D(qPlq?T3m($Uq=gfC$5g%cGM+J>hX2Cj4X$)@`xN+vwVsI~*ZDBAr z!ED?QxHW6>2LRZxKBM>AmgPa|u^p?DihuU3DU_}{uoj%cpd;&84m6!uItnD5S^h6U z#f9bP2JSd3We-$bS)cg8rWU`0@J;K_3M8T{iBxlr61 z#%ibZ{}gMOvX^kykF-2Ruwv*B$(?37JOw#}pAi8U$vRaDSrqI3w;<81Kw1*cvLdOZ z5W|}31eI8pLq0Agj&+IhqjRkGjhJ9OYk-2G1eS$1%tY2@DhwvE@?U}5^Q=fJw_jj= zL7_u3OF|)k3M-L9l~mSZdLz?VfA524I_oWJJY=w}sG^j~ntC6yEY`hZ7|Ui|q0<{V ztVNXA=CY1_jhS6!t+xf2$NGo*K$lqCXf-Wl{jva7F0*o}_*cXlZNp$O>lhP&64nMf zHE@MBLPrp;vb;}%yT#p1b=7aMO1^=Wo2+f+;L2G)`vFkF z`kfM-N|uHXa*NeWX8~@r<{t&Q!)o{hq>9zN6@Y5i(Rab!Wl0J!r5e^T>N?l5_N)e} zW7*#Ysb@7)F4MqTO6g7`>wVfunpkg9657lv{|2&qEH54=(Zbr;2%Gm=g+ogRC3_raQ#? zy%*dt>%@DQ?sJw)Jh&0oOi%b5WgVfS=oo8jGH~N8r;lLl1*`r&3{J3?2ZC6$r!D}_ zhRvQ1W47$yn3#(l+cy)OJ$v^NT!RDq5cM=1*`m#`;>4D%1i+b{O|489_K72~a-8jP z0K}EOa6fQv?AeXr+}V*ov;JOyx1E*0`X?I(YNBmcBOURm;K%$*gV0W z+5^syy$;=lY5we&lYt9h*NOoMWY466R1lj-F-kD|*il?c2-}(x)KK>C2^c)deon>W zFm`e+aHrUX#jqL9es3KH&#)JXK_b~Q>byp=H}=CrG<)@1fS+ZjeFn`Kb{u^Hv217B zr{mab>6JRi_M#6qo;_FulEA)03uhvmMfI#Cwoni5JlnhvbGg8tHw0WVdkVdEDeO=( zoyxxUEo5nI3%%v(?89qdC4-&v8*rKI?{C6i7JCxKb=mA!>4ZiOyEPVoT=pco1sB;4 zu~5llTWm1-eD-#Fa0P6}9KbKJcg=!kA^Rf@WS7}pR5&YQPcpz*G5hRBsFbizQ-$CP zyN8;WSK00KLSJL|-Gh}dZED;@i8W=9ml`#rY$HU?YRpGrXPvpv6qu?Oshw6Hv6 z-~R$rYGpqegRG7HH^t@c>`Ohsb+GHGs`-e$qyeTo*}Lgr&tvwhw3BqPGblZN!hY!` zsC2VEsT=W>ZMPM3>0u|dfb_E8xQa>ivCC9Y>1VI`9^3$XA+1Eu*!NceFv#9dwV5II z81-|8*&#bXp0oAqAsb=GP=|k%y(VDC7O!3p+qTEVP2pIZZ9 z!^xoo_qLpDN(US`pHWfGk@GQCu$(x(B^Y$(Y^IgSg~Jhp9OoRMC+5l-{|S?D<9xUU z#GTXF519w&2_@&AoZnx^B)m9#_X6(C>7ZoGhx5`};Cwlm)P^|0nMV7VA7=)20Q@=o zX)6feL{ot%kmLU)a6z1cC~(1?0V&E^ z08%*)T#z)*tthCZb0+VD%?!@D7z}1|-ZKD@#TlXkbT&uC!CZ1Uqe94XIX*Q2T;#k; zzedXAxcm&a`JBzP+!t^jQPKAjXYq4zg`BOlcU>(yt$_b=WL>Z@pV)pAC{E1k6ahxcc?oH19k3q^gc7woGaGaOI zbS3BAmjSrNdHy%J+Z@(+uyTjvrvg{SnNL|(HRs)(0NmxgPn%Q?r(TUo)N=fufz)vp ze+xi8XWKQHZs5G!0n*4((0bOy$)_N=nKKpzm3thw{TOWFe8Pjuea_7P8q=Koa5#F% zNy>zWc1~0mG&?xUHi3J@34aO?ogB_3kjI>}^oe$Hf~Eofg!5)7jCFIqr9#hBj+vSS zJsbz>bMnB_b{HJz?4h;w1!tZFgA<%+4u~~(troK7C3SvsPO5;efI@aoVf*5>U80L7!U3^H;C$Bu3Rw%Uv6BtWtgBl z_xR6{d2lB!!>m2IJ@&$(uVR4=O&~aeB{ux!WiWJi)c47}}2;`42dME+Y?a z1GtrX-~zezv~LD+H_*B5U~bVpsDyA=#6T9xHI{)p$+fb_1jD#0ci23|T~8rZIG6D& za1q@5RFFE&-9`!38E(oOuoB6gTaUpgE}KHzXzo=yA$6APRs=u{w{8&dSneIVJ#pOm zi6G~=hpK^#=W>O(%mnUo`bkD2cP*8RlDMC&1^hg>le#7sxWmIRoy^tz3|R_y&g;OX za+|1MmBtOF!~f}A6ZMiaxWB|=N}1g4bkrq_%WHtmZ0@%#$a1*92Es}%*NWOR7rEBC zFqX&tl48?*Zs`sH3b>05kX_<#sK8($SMnnUFLP&1fD~~*Dg>aI%ls6w60U@HpljUH z+3;S8 z*Fv51JKSt4@KtdemO)m{ZMlWPyWEl=F<8T$OWo>PE{_UJbzIjvaP{0WQfc7+xE~%G zxz1s@+9qy7BBtBSjlKi!9#=|vM+-OJ9^^iEmK^>baD@~sJmgNMu(y?)w;fy?_Xk>A z+qwUogv}1_hN-afh-*h~JGs0p$R2a!ssZofe&PV~g!_O}p>A#??VC@zZ{>jWaKEAj zx0idKS`>ZUoOBrL=Q6(re1N-(R-0$sXsT8Wa<4sy$`JQW9%RGZ778GrbAtk4WrVw) ziU_0JX!;t*xB_?J#<>UM0C>Tj_!@%~Tr(|J*1Yln$ZU8=Xzj7(B~hKojyIDIrP=e` z{{`p3OZf_%BX6A#h!gKSnu{~fZWCta!b_*CJHn;%Z%jaM$ zkSC#~If(Zeg-yY{Z>Yc?!gHodR48vgotQYuyQF}JFrFtJZ9B#Dh{s?!@5K?Aj^GV% zhriRj7ZjJD;eAYTYb0+jZA($SyR-yF^Zt1qHqY|fcVgBty!~3>&hZ-V0T9nKd=8Sp z%Ths>$g`uSQWCH4f54sRrBVKVfp?MCtYqF5S6E5mE&m>}RNie0*3)?3^+6?_*KLO> zW$+$lgUjS?+5_)dyy#$X*}Q%}Jmm0}{{@v?-q$JMF7jBk1m*F@sG*k6`)mL zhZn?$l`38^&9j=vrttMHFXs}bTf=h*gRGXfM*^;nw~yk9dfs7Q;2L;B`raFP{`7E~ zctSeF*v$KZ&Z6Gq{Y+VM3$K?}zWcoSA+Y&?C!`Z~4|%IU1E7_6o{Gh7ygte%+Ic%S zL8XKDIo<0=JozSQcJlUyfIQ|+qP9*K@3nf!p78E8fOPX_Q>y-y=duUJdU&%|VrIR( zp*~pY<87ed4)pWp(qc8hTTg&zyv-{B802Nr|I|6e>!x5~nD^QRn10TSq7wxpyqE+G zj`9x4Fr_ix0Xl#*&RZ>q=@+~)2CPi*W~YI(=HH@J)`rhaz@RO^<_{1%zT0cK1@`;_ zs=_(&kIjdQBmax#762&)o01(X|_%Dv+r!58-!#_&#ODsQ^60tbGoipI)_>cdAv3R~~F03T* z69j-K@>8hWnZ!?}K>j>GaURG8{?~6}p2_^9v~Q;HRn+K6#&g56nFZZ(eZ&6yE&EH3hRSv(2_RU=WcT!ln$SK~3tGVy@Rg;I zUE&8*Qdr10jlGgHuJCt$glo9U-#Z7~HU8vosFd>C zWf&~uSK~QOyUw3P$=wb9yAE)4lV5TSq?|9K5VeATk@n3>{;^o7+~S|7VBt2unZAHK ze0MRXTg5+1$7ibf3HDIA%b$E1vKszWs^!)4H#9`uVqy zfg9j&-wgOOzLaA2LH;XrsA-6wP4WCNUIyHk=lnaP;70hL{tGLk{GAnWG{*n>E@b0; zMhCbT{6s4APVm_-Al8C2k+5PT*z;d?L{LRZubtree8BAm94hlV2wG_Kb`(_65g8{z z6&2N-1#i>t(YhIY3tKc0k47v$ADD89?WYHb;5ZDxe^Ay~mvWS;p?#poN zEpUwm@e%w;X|=CFM1NM`gn&QKRrg)n_maEtcMFu_cERHp=yRP+rO{6*higurGF$Z5eFegK>i2&ilxDG*a3 zD@yQ?Qm<%%7iA1*1--{WVg!y9qQ(j$^5Hg4@Mr=m=LDAxuo5p=X@M+3aD>w8M8SLY zAW4EJJoq~=a6Aaj3xb3{!6geaXx~f`d}{}iDscV@{?Y_J=iwn;P!xf`^Af%VQKwzrJlr9N$Lr^Ic z)KU-SvLN^xxFSI(y;;SA&BviqBKVE=u`7bF=wQfI0lx(**91o?ur3u$qfNg|&`)>w zy5QAtkQ;*0hafivjelcGm4f(A;BE;n`vP}cko^?^cLd8R|Em)0KL^cf!J=a@c2_W) zis3ba;Y%2-6)g4vpia(&p*pBE2)2X)*C<#?iFA|T3;N!h1$!?7a8EFM7yPvd zPEi};zTh`{TOSBCw4*;1tfb#9wF*|zg48D1^$m=*3moWDIt0FRp!rCUOohl!!P_6h z*kgf)j;wSE7SbOddLkJ50f27727ADt3I?fK-y?W~%09h2Wl+%23fYigSpvwgU>)7^=Yp%$Bp(r^Q=fTMFoS-1GA6M11vf76qO|&j z04FH$#R;a62Wz2VH3n^jjqkvUtuTuAO*>&M9Tu_|I#ML(AY8fx#8J43YMf5O$+S*5 z3;E-~xd`8*wfwm7E}e{X6-Lp%=_c$~!mYc|j}|!(A&07{p2Dr?V8u%qY7MxzaE}s~ z;v=j{gB4%lG`gQBgr9zZdHM-|R72BW7)GCVfbbrrq=CYWCBOv|n z_|+khXyIl$pn6tVNx%P#5!TOu=~&_PD6UJNui5EsTfg}jMXw6C#o}qLn zNhmFbmGi<~KLL;;Tt`2UN);}pm_1GSmm3Dtg)PT$eHp@~lucv`167b^32)Kzlr3D@ z4U!{VoCWW>!r2sgToisX10M2(Uzb9bFMMq}xB{W=5vW`e_G6)#Rw%qhzfij@%=Uu! zBHn%epE&=?#@@!YHa)l?t=zd`Ov)eGufjkVQ4C8$wMW zjNKHD@iDV<;p9+EqC)sxEC7|lm*2wRE#W@;{%#9XE`r<NY!!CVX{I*e?Hw@PF05Gru0!~~HB3JeW<3X>QyBXS z$YWt{El8IzwjHu3!f8~y?-u4O;o+%JO@T{~@GyN&y~0?^Q~QK9)cxoea;fYyAZ({Y zBhQ3h1@Jy7{FC<0A>m{eYz_-Qr%d>{u#=AKj0h_z#vB!%cm{4vsQv_2#)YT!aQi|y z98R2Oy<*-=x; zSybr{6&KO;_W?LAnoDuHt7xsZ&7F& za6Y0R>8OOCXvuAu_7^>(#4^FXeP4jl#HhG=Ot z9NiR+24b*W3kTr_#&<$x4JywG>i((#P@Sf-}^+H-i zyf-oH`=Zy=!95TyqlfcQbf^hjt7sm@C~cxouftfoD5@HyL-gP(R33>A(OS?c^8O9v zvFJ8+fxARg==*yjs#HU>TNM2lCiqm8Y{oV8h)YQ>0X3uTd`qWn(4$3*j}Mm8=w`Z6575dC=v@ClJ>GT_$Y zPn$7lBOam+%vPLE-=Cd0lP=6&Y(tTbgLnf4$d2MzPfWr|Y%hQZXYuw;u;L;v{}L+4 z#X*aq;wqk21-P3yilQ}l@l*;AJjAWLz>PUIg(M|3fvM0P&AU0SFX(T!2cDc=LAPg2m-k;6lXvDg6%>dr(L0q_~`J zR+w1O2HYv}tj8eX;&gq=!DWlDy@gwl zBUZfzE>|3w4RTRzWCM^VenjhhzSt)e-V4P4&`NYkJYza!h2nTxI4_HDQ5T~~Tsjq8 zvG|=z07}HWRzdTMcpjZ9yDE030Qs6&L1|K{xQEvHGVu@{7P>CpL$T=%@tO!|-W2PH zfh!k}48mB2c;glTD#ZaoAh*P?($T2f;?or{c1IjZRlh26kpfn##m#hgYsCq6fY*u3 zA|b06XHxpnAl~*RaE;<+o{%+(@6ds+X0eXWp5GI1ISkSwzW5rf+!vpuyy}72FB#lJ z@rRV>w2GyaWwnXL9Wd4|?pg(79pcGUXniF9o+_T5;$J8(cq|su>((W%qg?xm*oz0Q zTU_}Tru$UkD|7T{yziyL8cT>K+_e=o#glYyHMFBylXwd6-ytZXEC zF(9@Q$32kQN&HuW*h`uY1K=RJoeR^BlBhQTaFS$8VcJ;|Kn)8Q$;ni3$0b`1fVfI* zs8#DGIY!%=yJYJU*z}MHSa_+WalMID3!e+dFLufvZRR8 zq!fvoN@b~%CwDQJCP_4dq)Qf8VlYE;m}*^_l8xnJiFo+o)y zkHLIN4HZ`kB%c0&Uy{_)nV~|-(}UnHOU_amv`FGk;bgHyPQ`~3N#azPz9Mlu0CH8* z;06!ZB=cQBN+lyam@bpdrN#d`t`FC6Lt;1pa#Qm0c~~izxEg`0kSwHNs8TY|6M$Qi znhLnREs3C7^Bu`3m9DBJ{#355mi+Hykh_u%y8*9}BGA(X=?!YK=S)u$R0|Ds7cT&*<1ub zo5X{@>2^usY;YZt<@+$DN0Q7)sB}u=KLB|wxik#YCHdnr;7=q6=!&`}g>=Z_sic~s zryj`%QvmOk2xzhDlMGJ6%=#t2(iIIzf>uHHOmgT0m>!gDq|9bW@(;E1h9z+WAkQUh z>17y^)KlkRR5G1*^fAd6I;S%(`Scmc3(04E$R;G}4VZ+r)Sb2h8>wJ2;I`7g&VjR& z>g(X$URtpP#6dcF1e%W0O_T{cN&V=YfV1==?XWJ=>2HBME_I`<)m6Hher(_-&2Pu0 zxJ&s|A@Gp8{sWn(R2>P^Uef2!0q~XvuZ7G5 zNPx7HR*gXE;oo2-NXp&~E5XvVUqDVulWxILn6&RNT-Yh;lTc`eOM~K|86mw#^{mrU zn{>#|NL}qfBBd_dpb{lra2@by>1v7#&PuHh!F!A}Q2<%2w4REoaZ*Pr>7A3-55ZWx zbnza@5~Tk-1%HXsAHRbvN%{x%gwIQVng!Drq;oo^(0~Bwu=) z-iZQfZ5g~@lJ27Ix=_le)bg^lHWQ>sdUg}w#nJ+b{7a-!R2#h_UG)V3SEUQ6Ido0x zN4Kt2y1)oonbf)xQp%?M;g-~#3`e)6 zTi=1PJJQ90P^pr-if|3p(gvzl+?76i8(fWa_Iv8ZaFy zBhsmEkc~>$Q!Y9toqGaPnvm{(0hzU|lKM_IvR|)&*vjtSg^HbQ8C7lVWna;!<{;xu zU=oh9kC`A&G828w&NA1+)rUU0L6CDBZkj2jh@swFp zitiz??l~e^kA$t)3&QErXUKD>Bn{t@|S?NJ=fwF}^0v9Cf zpqMCF=57QRBAerYDTT@&K7i?yvR5R4hsh?kgPf8jQ`sO~)T*N-Z;G6}uqIl6_wak}We(YMCRuOka4e?9R)W=S7)}4z}jWHgv#IzRY$Za0N1( z_c3@$_RXIlg|enEA-gQoZ-(0<+0OSsie=qOkP=xJRlcssEU&@)RoN@F>R*#-4uC6_ zU8ELTnQZ85*t{-l@P)A(vSk!)-;{aN;hl2X?0*5MkZoxNsg!-}0-LvFN9d6IZP{GP zZ0^YR(W_r2d)p6OwTw-1&s|wnB1nzQWf82@%C1tvQ70?k2CiNba$`aXw;R#^{q1KVUDy$na~vSlA)x*f8!bc*zm ztaAbUb;=fh0rFTjaTM?_*-mOjKank_WwcxN1@()c$_`uLuSd3F4oI);X$(yF$qK0$ z*Ds4|#o&M}osz<5vOSd54a(Ndhp{1<-X7erESz@j=d!dO435Y?p&)8hw)YIIjL8=6 zhLv&Itu##Og=`}g6enbZ6rNkly{PtUBVSknfUP{?D2SbWYY2$FeCFq{=^!`10=T36 z7InFuxRdf{)T0fPw@{LOO76&qX1M%wdVUddQ3d95T7Hr4#2NYE zYN$lYHPgUF$-}MSAzI#41i)Fjg}%QS`8rBQV&(Z6kj2TbuK+nGuc4b2FMrDlBtc#} zAEp!K&D8x!k{_m|_q@D~`dk;}szo5layk7fGey3DDkrJ(D^akLCO=3=YtrSv{Ru8Z zeuc^@nex(k;IicQdw|Q9FVBRB9C-qrP0N+PL~rCp`F0+zAy59pX~^>BVPAkNkb6+% zaalf@KA9r<3?l}M|_DZS9viZ}|$Z4~1ak=ZJC+ylT)(N3GUy<$6cKO7YOWso^4*3(Yn zq_CkvxwAs_4Ty_k>(B6aT=88IjJYb7PXgzrsG_9aUC}rI&O`A;&aa;TOUrqEhL<&+}g7Z?jyoO=S52u0s6aHkbj1@IT85YcuW zt=Q@T&9jQPsXQE`SVS%QScO9iG~*OIN1<{~@e(C|@rne>ixU)2=RuaJxJfZ|lA_!e zD(4j+(2{pS!KW`SS_C z63B`aYpLN|tguZ0DNzj5Dbg#78yhg|tBMmpV-nXC`)U6xRqUdUbeW=o%2U@BCk>F@ zP-Gp3v73r{-veH*kW)XdLLu1&u2RwE3UW)4OJ%LwiX#+?-BB#018Y@^FW&^IR_txY zt>i7v$#6eT=SETzS&TTw&d@>9i%$KZMtc8757y^88>;QAEb(ixY2#fK~y z8&Jejz5JOXgLdCRg`BzrLyDhig&tO%;z0IXAwLLiL}AUsbVn5zcEQn@BIZ*V8&@>b z%w8zASb&>Qb-F%e#9U#8S zTB?VfQ2Ld^n4fa;Q2_jvb>6TUpsc2Q9jF|#2MJQnr>bADQq>P*A;iEs5LbIR@rsKhJRX)xUcCHqadO;kRh93e@$juPqf%1vRw zT~NMDd1|t9i1y7Ceirgd=RoB z<%j;@hL!JxLFKt}=Nm9KqWmrjRz{WOl;e#l-6+i+S0;I3@P*R#H%wwec{32iT4kcj zo{j20rQ^0LEuxHRcB=D~@Y}1H?*ZVTTD$+K6Rj-y}&`ouZ&MdgAo(Eup9;&}$0QXeAPhD9r)dxbD_Ew43V%9#Y6fdawsNl#p1*jfu0U%KIGfgl^70H1tST)}rHbYcncL4}h_0Vc_QuWOd z*bGxGBKRqlk)phCm3#+OB2;Io@N!!9K0Ws{s;R*MM5@@oz)F#DXl)I5?ezhUiA`nwh~mYjzE^E+DB!kBvnZk9GzE9p<8}I zRp<-v$*LL(sZvxcD6LLaJ*8rJn(7RF)9I@Hi69xOH49-nQ;C)V@f5eHFx0sit1$wd#|eAG(fXV^#N^s*HtO+Kz2jLr`YYLDufOMm8%x=p;Dm| z(sEI$8V>>Pma5(WW4Bd@DWblkdP@Ubm1+YW|E*RXqGtYG6_2vk8r5v79oDMSE&@=e z%BEPVUiChu_zkKJ6s0$+W?hG@NmWfXt7g^wJ0SN|S!ZCZMa3+F>HDf}697C=B~bzF zq00JAkXDuB_t0!pt)Qf-UG^Y`rL?+BwLyiMJy8u% z`KDX-nC|sc)xGy2>rt@>L3&lMorcXmRXw$e`c)@s-yBc{uLk!__2;jc(xB>>1yC7M zIq!vRShbfHtLLiOJ7H`@)zJkjqpB0&DXGLr&duR%U*r$He?R!C8r^CRLf=q;H3WRXBcxJTb_yQ%-6BS-G)@F5Tnb?cD7le(Fya!I-~VP5EtrdYH;Sf$DJz0fN*$R4xiuFM9`Eh?-do525PClpLH?k530K zO#Sy>08XhVe*$CS>J1dMMW`Qlf}B>{($ShT>X~<;5~+5lJT*!kW)EZ0>M#ztvuYp8 zxnk58*tqss_3UGi#i_q(fZGK13pyKR(DT=N{%|(1DBGkZvF+_ zMfG$O0D0=oqfp6LOEzI<1#0yS;4Z11XM+@~&#VC8vf7JkRz>OqtH2ej>xMx})T^gM z<%;^O8t|*?-jy(ROv-3U7bVClN;&}9ie$s{W_%|5b zdli66^}8;xc}sm}3^s48-=Qqzj=GT+t17kVK1j9t-VLbSRnK_?vKsXu?VGjgNAE#a zr%p+Mqk479PRJV61}bDVsz*No*Q6dXz(ccIQUbs|^^*>e7In>90Pd@0z90|OzfrvO zP@OOb9$MAC^zOE)SJAfAuKt{2(+>5oNx(f)AEV!@cdGlTiuza`OY2LQ`sJ5Fo~TF9 zz)H6|Wg#@5s%KHFs7F2F1P{Gxk0?y3PrXS7&3?5#Ujvl$MRF?Uw`oLfuXg(u6uE6E>|iJ)b~k zqxmxwgSMLF9@wanQWUgE2=<;de0Yq_J6pL1)drJs>U`!5YAiYnD=@ z%2i`#!it;bBPuIITTW;aO2GMP<}8FUe@)7E zOesL~_i>OwjeRc$gETYe!Ah`ZcnFgS(F|P!3Dw+U0(Vk#ie9NO&2q}TPielTLUOp~ z?dvcdp^^Uya#}O~H2`Nc7v&(4ns>Ltbd=_c-!PYGO{xWevzm1)0FTiO(Z&#~$)i0d zP7^T&rq5{<&jEncdHW)7v*DViN? z08iCKQOuC05mH*6t`T2`hYXFl4Jw%$Id#jjG@LA0$=0yG0?E-#rmY}X<4lXyMa|kd zP|4G9Xiv@8G|}Qwpb_;!c1d%3Cp;8t#wq-{teHt^M3E+z*2rSb&`RJ+G>w#*UeP#H z)OA&pzW`RQX+n2GR;ux!^O$9tx-<-4*DR!f;D%YqZpFtkAg423M&W zdIaycG;dQ>a$EDwCdlq+B2odU(x|H-tJb_tY4u%A@*fzi(Uk87snxVwpjoGBItWMg z8a4fJr9pFuDg=$19p^E#Ce0Q)X3(rLe+x(VG&Quqw`gh$K<;by^#S)l^E0i&4>gLj zz_n_4RLg7AL{X66uGvGq>kbW`KE60jD&-`dns!pO5yG{^ZM-I}ib zm{PB17R8Evnl(uv{Te<+B?FqoVz_;#d5u2wLCvf>co@>;QFDD*vy?Ka=bG>Of3xtjKU<0h!YNK_K*=c8f44J() zi7Ips+TU(K=BVAZ7FL|Jm&YJ;);_14%SBr~1^$j}7tq4#s&$~n-%UHM4ukI6nD;RW z5AE^&0C;MPBB0`>y-0_$y|uAgxb@L?P*u!VyOLIv6WV~u!1-x;)$r%9z4t4O1!ya% zt`Vs9C;}IxZKAL+SethVGYipneFGAzowp3ePHNvc0+ldr4|SwZX>Fn)3)kMf4bu_Y zH;j;-)^_Iuen$HaHS;62ueySZ(oX#s@M!G^_c52V+R7EsjM1J>fR$Knr5W%zZBhX) z<(&4XWgzj|>Cqqw+JQZ=lBn%=2RupZNx}1Z?F3~77qs7I1D>o+b%08WcCQMiQ?>2% z3a4o+DZES9Druq4&~Bg)JyWZp-9AhE;19^Mwe3@&nWMe`3?x_EJr`CkYK64i=V>kH z0La(A!-r;pHarE~C2b~sD}~xjHRf_z+iVSEMcQOalZv%}(n*98ZJ-sbT+x0>i}6)$ zZ8dP$v~wvUE7c~i0=!In!Gl6 zM{7@=>?-ZWevoQyPA|w^?e7$h)M!1&!PRPirgXJV>#+}{UfWD1?gs5@iWM8R)2YSO zq%}IiShIFF9lN=weJc>S7VVma;O=XEjgURi9{U@Bhgx|wth8z!kAbvlzo$*VU7N-L zphNpxJWM~*zBB;RsjVIYd92++Vx6Ujq+4+Qg$Ez1lA7 zo%Lx4cZ2KK*1ipu0qx%b@cvADj#8mP?JBB43~7VtX9C08n^gOKu1%$2VMJT<9k@~L zr9!~Rw6m%BKCZP)#w1>7o9=;3XwP**#aj2>X;`t*#h(XftLyk3#_V*j`2k?Bi=*bO zgKj<@o^#X{)xemOZj~IwSrDDDm^v&6|(wJE5CK^(8+Y#~Z|7H*+lp19bmO!ps77 z8rph-bVai;7_2)?HHZ-1`z7E)byMwN<)rSLgYXchn@QF4Q@T?TAmO?y+6E(Zzix%f zY2Eq5;LhmYrf@4#x8yMZQMv?bCq(P6)PkJV?V~+4Mt6~JR;+HV5`Z{e$3GzFbnWf1 z60h^65FkMpMwN_2UAPH=B;ASs&Ti?L(}266lTZkdtShFMC{6dyt03vR(+U7Gbj!En z`Z9Iv>8WJtF40`Fb#+_-a&%`thUr|L9mQD}bqq=$^K^HXLnU7~XCnXwx~Fuq@sdtN z8(*PruQP03*2Vq_Ql$HV9)Gd!&I4$c=saJBl`A^;2@GD<{g421O=qBOsZ{sBuK_62 z87S|+u8X74;fC%j`fhLPiYW>z*A>zVU7=e=CDKY=Cq+TGbm5dN-_~U}0dPlGG9SjO zbos83RqG>UE>E?l$O7rGsnKCH)1JCY|Rv zaLqbD>K@u#?u@xM4y zH}`cI>(_m>A1VVnH$QlPrdvgo{6XEH5%4gi6L6q1tb0N=o#(m?N@+%Pv#&ums!KWy z*_bZe8nSVn2ldBZ=>8HyWkScMSzGH@$|1ASzc&LOZ1ub77fyEi7&=;Gum9jS;12qp zZQvaB|IlXRq+fRmaA*CX6*w2YyB!=I*B_*&i>v++#RYEq6~(~0>kmAJX%9VTA5=W` zVp?Ck^!+bDy!8!~1NrC;p8@Bq|KkS83H`KxfeX+tp^qd`-`xpZkiH}iBv?P?H2j6= z#q@rL>Wg}zc~U?17)Y3Y=On0{(&tjD5U$_&DO4i#Hab{2tv^a}@)>>ja`=nXfBzv= zqV%yE3`Xm-H)Aem^>))Ci_y=bGDWPu&k@Gr^u<;n=k%Xb!#7@k>;^6+LI0x%Y$ocv zDO*a?SBb!#*SAtCdqMwFGHfR6e|QZfML(V5tW>?6!q+st9}6U1Z?px;&}aVl#p%Q7 zQDy1NHo#c6-YOlq9DOKN7IO8GwDnxnGw8=6dHOGDvC7v^58~P6^DZHtlK{;%>zJeCx3jGE;nNz7}ya3>q{trsFZtEx0GIK|tO!-5Vex4n; zYW;HRV%*iARD#s#i+C_rtG`AcdY%3&I$%|={~`#E8uZmaz*wVx)hfuE^f`1X&H4qj zSl!bX3<2JvuceUjzJ3*v2m0$jfjrcoq;I8Fzk`}XZTb)oz}xi;zk{qpUq;)+BmGJ` zh}o%MJ0G&gdgD!SUHXUg+@I)!k3pqd-&FwFQ+>sM9RU52V90v)E53mDKK%-cL;CeU zQHx?gznk{rXZkLRi3askGQmyggmp@!L)VeF*gd+JPv8NR1Q;FKXifWdG>@iWXN!Z0fs+-bu(7T{+LhxdVtG(^x# z6lDmSi3vs`hF*mT2PD%)ikerp0C(@;sfOqQXPY8Tmt z4i=2%7=EH4D%Y@Gg29W1ogxh88D8B0oB4*|KVYoDFiNk+B}4cHa7Bjs)H5wM_-@6e zlo&4GhKDN#9wqKq4JqLmyk=NMfoG{u%;Ed)lf^heTN~8PPIHT zEG@uXIt|waPjf@rGf{edYbRTSdKuKYU zaV4F*2sO^x3v$x9cQ-C2%s83aqo<6U;9^?1F})KuBaB1VuyWe?z8f5!F>2R=L>fP( z_F%%ujEm?Q#Tr|@0f;kt(RzK(__7OZ#v6l<1D;?!Os__waVs^yl8h=F$j%$% zscxEVjQSQTDaMKe;8KnCcDTMYqsb8@-RMv6e1>s<0c4rRy)$7Y%jigFqOy%Iw!v+V zag4m@8V|hKUV_p`l6dBF*j7p40R>Sla<1{ ztj*X?p;5chi%OlH#vdnvdu;sK0j9f*vwT3F7{6ErT(>cn_Kv5<*RMdO&$w|n0R6@% zVhj!#)94`IkkRiU0K>*bKf~X1qg55S5##^p`HdRCN`~f`(bfs`95)IULiWPAiQcRU zqYu>wtxY^ih;2;Xy&$$GsT)-6OlK2d+TL_-4>$+YTNHyinyhMJ)5-Kw3gFJBhwH$( znChwAaNJbz69BHJ4NGCg%{1~hRNPGq7eVG>N}yw|o+idJa9*Y)H>h}iG&b{Y;%4+-rZ6gbOaf^bLi!fhKkptOS|bDB}w@4N%e)Vmk3Etc038 zhQXaQ9rghr%v4MVdrp~7(J9Mt(^&%s&zOE)3|yq?z7U#Grs;3u!lF%~FJbVk=~yO6 zjLGE)24hXp6eYx&cmXhd&a@;AB;GW8Ck7KtjZ{rbG<`wIWRfX(GPv`m>3cygn6^_S zkZk%l6K+#XsV1nTnmEtlJeA;l4-><3>KMoP%XCDbj=4Iu9}j6hs|py z8wNB>O|z(ib=%~<561484*CL6W!mHhS+yyPZsc9lpFhEEjmeRE6SbzJ=`dDj`pFrC z^`@0{y05`h&4JBEQwA;fO{S=DSZOx>vUn#JX>4qvZU7$?-Gb9-0pP z1(jBlfX*JYnT!iS+D#d`m`jIgJ7p7(OgF>;beay(H~rXDCC6Zw$(i~`PfUD&Xm*== zD6xHN`u-hg_L$ahgw1}_B@MmYR`;vT$zVKZ}Zzr z;MT{yg%$x{bMP&woG{O(-%Z(eT=S%5i&R_{Qw<5b9k%$~N81)DikQw=do zWw04)zTOCxlV%rc@rIdqt%I>s=Fyc<2{(U68()N(MK|QM`TMs(&X^xli8Rvuh7+b6 zW%i(0KiWK-0q(3hlET**vtuPxV$C*RVldv^=Y+uobAcXQqFH$a{*uh*2{<}${)vL; z3ud1pSV=a=QENZNe3TA3q?#S5aF%A?*agjWv*c5d4D%KxtYn%K>4nZRr%{BIZGMkJ z{v30r8dh@60t(?SnkP|7JLw^I%9j`T*|`XVDIO*Bnn(=^At89&oj0Cr3=F&b<07Xx5uQS%Sd^ z^G}a4*l2E}>uWN<_YO$2xmAwAd*%!OgG!6}Ut0{`H$RktJTNa#f`^CZBhR7IY94$K zq|GdO8Jg{8s|cucnDsy57CbU%hhwnQJnt~bV{;SLSh~!y^kcgx=7YaLv&U@nU(eM1 z`wR^BnYXE-(r*r!4B3GBry&eJGyicM#sHh~P8-6)|NHdklC=5urF&$zx3a~ZAI zW9H~e;Kt1%l#{$L2mAnIPL@Atm2$Sc$-=B%EMt3d2VE^`yP@J{*-0%5cgtD&iajia zE>Q8bINSlw%hE+P{UdyOy75F|M&Jpsq=+CGiEgI!gkTS{f`*uVH45mJbS{*<|S&1+Lk$ zY7GAFSyHL*)MA-NaqE3c&)>j3u$;~6uc_|5irxtW5@IqT!+c4N`=|2jt&tiE1oBfu!W&j2)3s%D4ki~~e zox>J8YT%7nLg@C4S}GUA(F=?F=O7c7X><#$t-f9ZVq>+A&K}rWO>G0f&T9WvaQ0TW z^T0V+{ooGH(W;dLD^6Cs>1jG!6?A}ev6|=xakEm<8tHDexdp~NtlFup$%CJjFLfjQt-h`WF2L%GHLw|IC0dKYAgdaB zV!>89n=u$-_5Kmq47K`qI><>YQy1W2R%s#sXYV}#qPn_vVa_>orZF=zof$^O7Nd!P zVi$XhI)I7M*gGn*ca0_ysZs?S77zuypeUjUD1s=6ASx>M-mzC~+-D79jM2B;|K9uO z`@T0Zvu5>u_St2vwf7i!SZV$y1(Gr5GOGQqGS3WvvDM}my&w{6o)7{MXWrW$#5LyQ z6dA8IFCPbNow<5rm|kzr`3=MkW;xY1Gwx zkoK4zX<^xGZW0NF4D+P10Q=1L>miwGUPY^Zmf1EO-uIhln<1HP9!!Dm0dwSYs2?=@ z(V)#SkE2yF*W85aHiymKY4GKn_gDcdFgK>8;<))RRXmH#LPro!n1vLPois<#R(Hz$ zh%TiSn};t3@2vSW1<&Wq!ySN~H@Bm8;)40pI{&VC!91&4Jz~ z*Fja#hy>T8R8!sVTI~`<(p=l@gkF}bgwo>!uGMKN$#qRy4ZVC<8NH)I*H)A>A9pRF zvx#EYI!$2Zf@=~PyX5-t8F)8b?PRc7;`&{G5FfibuZHAH*WxkYy>rcx!oZFt+ki6(NcnQFDx8_vMzU%gwiuRA(rcia{sT*g5$1HVQ+8(Cgx%CKy zh>!ars%On}-$>&u)cqnAoff#qR0W81uTL>Ul>3%>P+0B0`)d%_xu2^7o15Jy(5;q4 zcbjfdPjXMDdow%T&sGAK>h7=_dTH)SM0vq9dn;b;JCYjmbD`H>O%oexC;q8>3(%EBu}|-9SVQN?hUB`cG|t} za5y^S-klcCv+i>&>%9AYnn0J_=Trypvis^xs9$kkO5mz{AKI?3x!bLU$aVLx3EXg> zTN&y%-B~(3x#j)~VYl5QX|=iIK41?-?z&GJ4fPWDecM31=l(7llK0(nn(Hp#W&PCK&Fv~4lWxfw#0)r888+tXu6aJX0vRntuzl` z0m&Ar?;zt+V-zSYzo#X>RSs zXhWwCRIBXVr#CEocPtu|F6$`X?>cY?WV+R91By96>UUz$g@>Ac1^r{84E6h7Tz z`oDqXZANqjcJDAfeuMg5Cfo+R62?ep6lIJbl}F~VRp~Fq^I{uc0&y;DU?Azu-lDnf z!)~IT$d~O+yPF?-#sePw*=b_|0@wqK!JEg9psg~H4f+NmL2TL^s0Xu&6k&z3qiA%6 zv4^NuJ)hl0nO`9H^f1(exP8SC3FZbj1s1}cvfP#6hW-d*7`NjRi1WE@IgEvK4F&*2 zaH(`la{+hq3b2J--aVLJ#3{ak!eY*)Bft{QcRtz@$;mm0Eah&~F1(D3b^>oXS7Q*s z3T`Hgc1Cdt5=cgKZz%^}$(^E_WenH%Ti9I18NLT`H5YdZ#8}ReO2~0sKf0x|hKuw? zBi3?X(MirauCW%p_1vsFP}so9o5Afyt}X>yo45ixo!!jUs1Gag+yxpB3EUPcWNzV3 zrNh`(?j0SQBywStIBw%YO(1UPX44c-;nkXdUJZbVEF! z>q2j{fO{GS??puR%z+jvMu34A93tP_l( z!p(X?-T_E%6-3e5X`)~(MY_iXwfCSA#{~m<5Q_v;%3%7spxGD@ZwMX-0NfPBa8SP^ z$jgJV$AWg508a$1zk=jbK?^DjKNI8%(3a-{?J5vo2)bCD9Tjc2~N;)ZkZrr3iRgichykv;$tU3axQ)>58%y*-2^dH*qc(!Ea74* zwC@)d(M-)29^Vg<1H$y5fE^UJqg^UTSer7ATw%ut(907ZJOW3Dh41LW@`ZygK%_wU zjxLBC5e}umwNTiL>XN60rBsSKBaE4Yp13OPOy{H5goo$C-*w^R(NMo3+_(_x4}{aG z()v)CK(Xc{p@yF5v9J%NQcs0-%}{?P9Mcxyxv)|Oz)N9jG^~^gyZA%$m9Q#BkgtWs zx$s^l%sd3*9MRG!5WPeN5)cDLs|5f-q5wJ<2o^1T3ezE?HgYr~Of-WkMB$3zC4fbu$tr*-(FO{wqD6OqLL*j+CR3OfBN9=yag`{@7gl0LUtdRO z#fj?G1TkK8Z!#K@AbODwM_WWk+X34un%D@~HjybF>f1#fM8J|n>9oh}5Ur!!d8cSB z?M=HxJ85CrEgC~uswkPTbdhp16!wT#(#4q!(UnR7nIfA8P|p$_vjx~MIzr{N<08B5 z0JlYRDVMz?Iyeme?uurwgRv5ktt+s5qTN)DXz82k_2;v*j0qW1UqLp%Beqz}n zsQZgI(qADrPuyuBh=F2{-#`o!r#S-)7H_A5d8qgWZLMMAH{-yYFFrTP6lp{un zPg3HzP~4UF$VK82Cx9&$PcuMaiFi5P)L1G$vkYxnCY~*X-g5ER&0sT1{Ov@DM2p)| zp1V>!#16)`i#tW;f{!ZqII`W z9Fh&*QSs1RV8_J4bjR?FxF;1I&x%(jf_GlrN(^v8tabwLlGtrJp7yf16D8@TVgZG} zuf!AS)cTG1@oVV46-Uxm_f9;DigIP*CUl8>j>Jg2wwI(f#S(KRT~~tVEm@&~x{pLU z0D8WXSqez{NiO)Kf&P;FF^~+9i0Ez3lgzjcEKqW~H57s*XD&cJSTb-nh#`{P`5=Z$ zCO!rhCfT|aoi$$)&(bisr(uv+1wCdwInA4>amjR zG@0WhFGK)qBwQY>td+cV1Xw4z*$E=+C5yj@`Uc5ePng~)*+reTNz(8qC~TJ4Ykgf_Fudl?8>X68B$V^SY!@GOXN?SgnBiEs3luz-`GhO6%@O+&4k;u4ExCocAQx zo5RX|NgpdT>4BszmBk)P4tPWTv1ApM0iH@up9Jxl#A^)H=ScVEL)}YiS^&4+(nhqJ z`bf`Gjvp+&vkf*ENqbY+w^*v6!?PvQcJ;xFlnxQV=2GdiQ0Og_#&?6>a_Ko5d@G~} zs(=?I_1pvyEq%QX#P!mJbojDCdV3z!H%fhvLt&G2R8N4-(sdLi#7l1+21t-9XP|*w zq$>`#V_ttiDzk#eQL zc1t@_sU}r=t0pAVrM+50a*uQmZP0tAT3YKeqz{k7=00gA`e}oROLr0$i2u4~BxWMvQe?e>0_zjjHRHfLX?>B>@>AAP1L2|A`k4o?)7I%<(-T>zQxJ95`kNl` zaKU<)4tkfYf9nBo*}8}h@*Y~(qZjbVx`{W`A6u&_X?|kej;<*@wf=o3j6Jg+ngz+{ z)`NZoR%YF48F+JKHTDAYk`1C)JXeH0|ffG83R4DDxc$ zY?Ex_V2Es%)#(ioFZ;1IK!U9F1&nQxT^a^sTV+3ZLLpIhJ_BHztk(g6?Xt(#c-kb{ zOqvfnWYy{VVzTTj>fN2Pa0=^p$;SEuq{v*HA-P-TMT=aT>?{>-(q(aU-n>T^YX#z7 z*)uu>%aBRtg1ApMpMGMWDeD*suwRx+S97vu2Wj*ikd@5`I4CnzLgRB~vtl7~NT!$o zD|s^UZ;(7J%ce1(FZ-E_K?Sll-vK)!a}%T0g|bjOs5~k=)Dr%V$r{oQTO=DoRkic7 z1-$_-$e0=Ma8bt7O@^DYuc`ohAoKHp!b92A2f!Z5j&(yjAIownws|VcrdRb$=C>Ba z=dvPe_ZkGYgA|7($WI4BWQ%;Z3$U&7^~V7c z<>7u1*(U$a2oKxk6RSZlNnW!rtn85YISmiVax)cpcgm|jg+hw_CS_o|x3$E^kP!J}BQwDRz$hMG>%Ed5tJoIVAVbgF>D>^9dXsmXB288S>>l?4VvC zui6tLN93Vl0EP09NDz<8J?S9*nEYuEC>)m;wE}iRZcp3UN%_ki5IH3uNxMw3oTobP zY58wd);uE*dko@P`6`;)=j3t(9I6xEKOR;|&u(^tc zR9E&^^r34|K8h1GLVOjDDqwz!X?pPd6_V;`V1Qy&FW8)?I6`M4L5js8-~}tZ+QLeR zVii>uLKU0nN>-R+QGZCzSG?K|Ubvz;MII4~bJRV{6%T1KUZDujhleOdk8CJJD^3gt zwoZ}U5F+apBWaP_pg8&sh#M8B6X0)?!fFiqdb6S{3oKrdI2Is5Ve_A8dQ zgh!02JxJtdo4IRub3YJy$gy7TVU*>;%AyNmlT<_ z)?HQ;%u- zMm+*HeQjiW;lbagi~_8AHb<%I8)TCrfMl3WG#$%svUx(O$xfS*d(psMHmm7&M2bz| zQDD1mN;g40)n++Llzf`a_?yr>U~`CKw}UoT-vH#=WZJ+=zD@8rC=}Qv4+S`4v)UaB zg*I_Rp?=gR@EWjVHW_qCblfI?2o#EJCMEzoVRJ7L;H1rE@^{Ln5=BVGHXf7E&dWBQ zbo2U(%}Cl)AKIAcp&!{ecZcK?n_MbGKDC(`2a#tsi|Dlbxs5B`5_@TrbP6`Tl>;(C z^ii5_(DYGdCi&j>qqr#O+ z|E(N7R zQ@Wl7wq0qa3Urdv_7Sih%0~3G$x1n0?bxYQ(~Z$x$|WJ-r6}{i1#h?VxDT*YrOFK= zY0B@bKs{aApGu5-l%Z_^_9{CkK{7+>R0-HV<#38PGnKjP@L*ZWEoTAtEBnw0$yT;^ zhp_|7jn|-XPa$W>P&MKW-fOt+hYCF2%yz+HB5HBbvQ?PeYd8`1uJ4#O@ z)bA<{Yhn7HQcMxcePvZz&mJm;uHZdVcBL)yu~NAP{+=jX4MgLgDo<^Km1oK|8IXLg zY~32*h0?7%L|!V_I|D0K4ygyXuaxy@=Db!;xDJ1Bl({QFe5>qDiNiZ(uLZ!$lx{T9 z=csnAhfOcl{*B-x@%v0G( zfd#61y#y~v)ro$)6|9;=xl@SBgQAj9)nprBVXFOf|7pIe6D@1us!25QB2>YB;BSE{ z?HjaZp=ziLh>KJ)R5x9$Qj7#|i7M6zEK>D=Hk+lY+qD6fsfxY=Z@Fq7ReM*crhW^N zDAj>iP>)uPZw6y4Rb84xGDc+>2i_{x5?Xs!tMaA;#Ht3gZ8`Jk`D-aCBI;%>YOF zsy_GNy+GB7Y7j?MzfzH_P}S;3@Q$h+m%_s_)kw-8j;orMK(9!(Di)F_R8fxbcTzPn zA2v^^s?a5(wWYK6tE%7kgLh4Ji}vvAs@t95{f6p?P9WY?O}+!0w^Yegue+_< zNzwKl)x{dX?yBTGyqBmPsi1gIwVsOa_f@~puKhqIp(B%rs_Jz9^GFrC4SJ7Ntr`G( zqIyXo+*4JLs(AKiD*GIGc&-||3Ep3*f+^g3sVW@-P^#KG5|Xb}^}7Olt%~jd({EIj zCd1fU)ua=^-l?9{he(-fZU98)sOtowNnYxz_hEXj`r-(Pc&pVkgniV0li|o$J$MWn z;iq<+56oXZUkwnT&iE1P^VEs^p&qDSMRnmIbz&>12dn$ugL;VijtP39>Z+7QhN)}! zgyeknjXJ=>)i-IcicrsN4{U*2X#!ZNKA8%zNZpHyT#MCZPH6QK_5QYS6scb33T&zR z8i8f%!48mIuJ->59#*LBuEKPb`a0#5(ds^LfUQ(}*8~=$?mq?UtJD{z&|9spe*(mcd16!~DeLkLOgSxZ|6gH}lt%0#k>N2{Eyji`E z&Jp6(;opOppze|eutnXKh+Ea2*8?P~i>Vy8O`Xyh#r@AZMwArOD-35@MzU=_sZgog~@KV)3Q!bjOenG2Zy1G;fut(kfHNakV+7P(S zP=DJN*gkcvJ@hiw50U}0)af??_N!-7%d*v7kHXjib;Lek2i0W@0dmyWDB#Ie_oDFp zkh*y;8knap@&WI#+CZg@dMN%c(^sGm|xY3nIgE4-m_T7C2th-cJ(C!lav-S7;E=hR0|!ryuI zmCe8|sJC5&`bBkMB=jz+Z}*0W%j&yYU{};%(F%Q4Z9}{LHFfXyAYNBrPJ+!F>Y<6i zZmMrB1GuH;4nXp@y5B@#chsvCFnw2jwjyhzcPKH8tslFVg(n2L2Xna(6&viN=eLFCsOgHUccwwD}q$%QUiV7+bD!YYp`k zntimuM``Ykf=IOH9t)9`nz?;}#c1pz;C+?GoAQ9wn%;DwC{~j}vm;IuMYDg6#)-m_ zwVGQL_pH+#qZ>2pHG6sjY|uE-z}%>5r-Fw~8Z%{zn>90p@E)&OrGP?$Ce{NTvPJW) z7r<6c6N*?8HJzqHVVlOI5T>_loT;FZq!HDI-VRNBx_pqV5p4i*r^cCnzqCtZxCiwV zO{FKmc560V1D2}kB?p$K>7s$Lbj=uAe)nkX2cZ#rHB0h=WoSlH7_(1P=?p-oX3irJ zvoxur0rqRU$D{Gt8eiJZ4rpwsSbR{EOf}UUO`A91Ea%`3X+dPeiz_h{f*&EbY1p3~GQ0CrxpjAH!@nz{6Yr;D0i zEIeG&M9?9@Wer1d$Q8{n+E=b>y3nupuW4p;XyA2CGvpZj4b4V+D>pTn8h~4xq!1Xp zt?5S9$vYZm4fO769E-s#(Y)aR?rHcTP`|IKd4@dfwWO6fXN{PZt35)m9n~ z;HULy14sVaMUTM?&@$n`=4o|a7Es_4rk#`x zY`#`UYk9c#2$eGI#U_aH6%(smi!gyJj+YG1{iz!O<%1gfM{B+T(P$ zBvyM(1`l!Ct+ZvW(T=VSY^}Br)x_6nSIvRH_1aG3K-{3sq*!sI_DXjUH)*@klDApA zh?1>%tvv-N3EHMV!tEBVOb*^wZM8wrOVk#=1#z3UO*Me+S`*cmlC;(8Kw*bgM<-&* zTGG>DL|?=g2qdl_BoxFrE8n`LS&CNo`u3*?Zm3^ zm!X|P8N)uUnEEAC+mAwkEUj}8c>A?Gn*ht!_MkiA2efee)?P+ zy&fVjwEM$Be5tM12=BI3dyh(;ue8}^;JwzKI|J;EHY*x#-)d*keTH}1wikevX>(Tt zo1?4Q8X{i0pVFW(SJ&?nh(5Xin$y0zeSVPi)4h3#2lLnEB|s!Vmwy=w^K|ia+7hUH zNX3pIT|g*!!8&bSNQUSZP;n(xH)}bFVY+>kq0HB=w9 zXJ$ZLr1M(?k;S?L^m3NyRxgL?NZmY29G2>~EQQTwI_@WUU#?Tq%CJIbM_W&nt_@XK zqje{|0aogkPK4UBxFqQL+=bhD|hk*tfO)6Si`x^%{{OLv-f?G)Wllx*$R{Xj1@ zRkwE~MACFMT0utHs{=V-)H-6T31KBgwOpsXLMs1LgB3LmIEZu>1wtE@x1OKWsw(j@wEUh>VEfzhf6x;EP%_p zQ?o(5qBBrjcU6~5OWrlzBU)Rp>s%?5x}iHo$1^u|dudkP($%KY>TTUO9^l>4eN8jx zuFml)8d##ca~OK}bggNjzOPH44$}{Gv#9v+P#3Tr;E}EyWj&8|V`=a`(Rubo1E1<1 zP!0Z>?qC)ap6kA!3r8<>GkU=EOWm`_;Fao9M*w@Jv!*h|YhCR!NWRfMqn+}tuI@x& z?{qm57%S7AsRq+?^pkc&(n~L(pGwTte@FAyTi>73IUjv{y8Pj*pGg%#KfMc?_SbLe z23~-^G!VRb`X^rl3)Elk1Y<$^%sUVX)<4}3EJVMbPPs$%A_+W%>C-pC%6#~Phj9H1 zTA?HKxB7#(KwtM6u!Z_7@c@hT&J=Ag*6(TsuvGu;cL2-uiP_+-&`&=Gg(&^?OjwE5 zJ6XZzN_~3@sbci*w6LtwH*SI^t=5-NlozWPlD{~8t6|Vvqkluk7i;xHW`MU&?^6PW z_4*S=h-}c89t7B^PpJ(@oAhfs!^&p8sXg@K^`oytFF{|4!hU;Eu$Tof0 z_wc@5zmh6uN&3(Ou(?AYLK{)C-sl05oqEMNi0sl|p%PSz{uu>dyY&*fNR+C79t6EK zeZmq*rt5pr*~A`wvlyuF)hG3bLWaJ#62yJ_x4%L!Q$I%vVwOId5{~_P_YLrOKwrBi zz(IX03ifjJk|qGT`gi$g{2~2`Zvpc3nG{YQ)=#ACEcyB?l!X-N%N79~(a)iBN}+!I z0$4e!-zkFRG5sPcFdWyH{syc_--OETC-k|L(Vo<+M}c=rUt=$@VmY9Nf=(%&xtxUKi4v${Kaf67|#>YG!_R-&&~2fTZF z9l5=)UrA-x2l{z201x#SXq-LLzZ-}Ce5}7qwTmbEJUW|rs;@N?BG2@LX_)Xt+HKo1y)wu8ef1HYul6*;%w{og2Ecx8skA+ zYde<`_jR^mv_h}9jrs-Z8*F=3hNF$PrHdfB$<|Egshe%XXse629a$ST6KsPALw$>F zhdscy+B(xAL89%(iO}0-`+a9%+ij2bfL@aAYI>1N&betVNeJ#INE?X&oK5dh=GPDo#8Lo z;JgkBp@wA?&xaXqtcOUr;WC}XL>PXw0&juA%@@3d27g-h7a6usfw9GgnTG+E7*^5~ zMH8SYg<)1RkOc`->sD($Jo20x^bxG-y{D;%@+3ZIB&-Uaa9X z9i_w>qJPFStT9|SgSgfZO%d)oL+=X!>kUmPVccMdrIlf$;rs95VUywbLJ&6_+TR0+ zH@H&Llwhbr9kRu+;2k_{HDv4tG0||HZdq?L^rcK{yP;V;h)IT%tss(OkhBLe%`ig; zEZy)M9l`7|9HD4tuc6v`NM;y*q8YHyFpBcxOoI1-*R3P^x4U7{=48c*HQh5kR5A%O1p| z26xJ!j~QI3mT=rKWHg9HhLSE&KVg{q1BfRL9+Xg>GE@(S>0*P21jN$@)kR32G1R7@ z=B#1PHxM~zP~L>;^M?7CAbG*idM>P7H1Gz1ONLe@uyW17 zTmW{%@PLkgZyF4AV0g>0)(ggN8`h10hdYKABzf1ccNsv5!9?lKJ;O7Ke(xJ>+#vG6 zFvAz79~zER`18o{^d=-98*b3i%@czs?cq-i=9W-+W~k8y;JIPU4z%;7;kh$JN)6UC zVda&fk^)Pd>w#=~*2 z5^jv6Yxohylii@cz&KP1u+VtZ2E;|iD^wa-Y+Sk)dP|IR={zUWxSvzVJyLT;w;otj2n-Dm}->Mfnl2Q;7us(HTLsFtM?g=G+wfdi8*kaZCpMARt_51 z{tE1j@ey5UK5H~lP;<`Mic*a8Mvms@1!F%ONM1Bvpm%%8Xrg+^W#e)Ro30o=TLWA* z4(bGO%~niX=eGe^sa-6c5xutaSqfS3&RSyBgnAAUjx7t*78YE*)K9ps}nL5ewd}~a*=uB~~=_M6c)|q0tyxnE`;XWLtm@dwM$ZpdrFYwY#VWZu)sIu)U_D z12C3hdPFsy9Mf1zaB@wG@8CAiRO%1nVN+dN^$Sc-2rD!Vq%*0brh2pl9WxD~P4T#C z{%v?DGKKmBJ7M~vJ|s_?^69MSl&O*qlEtP8zrfLHQzd$hXH0ipAbHkwX(@>3O~a`; zcEhxt*1DUfhIhfcWxDzf>bFfLbg**Al;0oVuIZa9P$)6ArTFE(Ddks)JTQf~1@EEB zZ9UXqnu7P?!Aea_Da`h&d@KU~=2jlC03zO%XHtsjQ@LFpM0_i^rBbI~<*aW2{44hy z4Prp$=9B}?t2}N1o+z+#OJAr5RgSy`VsPa~;~^4Kc?vDYp_PBdptYg^toBQ)r+zIe z#P_;S=({)5VJ0+un6IC}uP-xrFEBr*tN@Dsj7=~E0~i^Bd5rabCxlXXMlbQPqTEB})EdwuwY2gUoZYJghtfVqCu7a4xgdKsEbS8+v z9;UMo+PjxIML$i=VA>P5j~SE%$xMc$R5*+Ijco2`SlTM{m@U`K0j0A**OG)*=^L5A?$`1p5d_aKe@B6BTDAEMkY_@{iDutE+%y5Z4`55@9%3gRsS1G!-_M zbE9zxX6f^0XJ`>@VOJSsmq(jnw3UktlnyKW(Au8gegohAJj?I^BhzXBpXN&gZ)W`O zc%%z_pd679y?YzW{r2Y3YQ$$skD~vi4{_ZlfYXX!o zTMj_-9`m>ju=~tws%O7oUe*NhCF9r+Hoe#*?+D3+Z`b+|azGa8Q8u+KukTgy5&fQNPL7=Q5A zvjO|T+rT=}Z>Kl2hCbkBv2Un^na37<1>SM?Aq7rn*`jd}xypXK2G})LHv`75v+AYj ztQ)Mj4|q@6WlO+&#+KXzc+RHhpb;-vT&cr@u^mGIO4-zFaQliKIt$oqwz~-+fQ$Bm zmHAw(KNKRljduZJxF=#*S}# zv;@3kf_smE9T&Jz7*!;A-3q2p2+Z_DmXm@42Y^!oBb}BP3k=rqa9R*WM@MG_)9OL; zte_6%MCSyLrh|80u$;~SE(lK2?X8OfsTPvA1zvlA-4PTez{6cZ|DC`}1Ti#{?+J?P z!TWu|^0P4ZQ1DZ4fJcJDh5%0lwHdg5D(JWyPxMSsXax3L@InXm7lJh+7<(zO^@o*L zf=jf0zZP^p1K`Ww@&?h5Kb8s1pTFD~SOD)xckSo#ed0h2-M-E^a zKY)tB%lUXZ-rK?_CqZ&6zj`W&DSQcCI?ClA*#j%&b7z6~kl%j*#2De27VwZQd`#CI z4hheV0r8G7{3@^~!tL8&+E>*72}Hs~>Y30>5j~~~+F8-}YthbYqEJc;Z;S5J3H5!^ zihcL3_YkBhD%UZH`XQ3 z!DsWO3FIb~00eOjsnV9k?W_UbDQ;LS^r8f#C}52i)K3O6 zMzDZ}$tr>I8nD%ZwlBbo6(sKj7AMdg0=7nQD-75M!ERb>HVT$^0N5mG^ew<#^MZ#>l zDYHUYzaB*5gjMP9G1x3z-vuB^_)~4DrwMO%120|Jn(B3Xgx4Oy!(O49BC`F$Xeq#9 zp>KC|;C6At<9PNYaW(~zyT#kG!Alj->IX+@Vtr5W(#73+!rvb8=JNo1#hNsL4Dsbj zP}nCf9t@Fe@u?Od9uWJ}Mja;kB?`PHl7eJvi{$zoaw{pMTrEkOO;PL)sks*3xb?|q@E2iiPdUi~ z>oVF=7h22O0b6PrEQyJNi|8RdA zBm)XpC0%J#zA34+2E<#EqqGg*m6TCOmq>I1^zcJT(eDs>Bsq5lR-Q_xeglzblD?GI zyp&Ay239JWG6_w3BN=@a*jtGq1YO`GeL{CO{H2j}Iua-?D+LIVTBc~I^yz5W43n;+ zCWT9Hiy;{$^}hov(b9|bC@ZBoRPBzDdLMz_8tF+2%GXKl10lItI*E>)6Qp$}LVc@r zb7v?dN@v}H+ilX!DWvNzEJsbAsvVI%%xgNuhv8G`BVRf5bs^=2%mkDDWU3n za4qQlUNi^2eye{B-)32!F(u}9!(EK#z7cG<*@!h2t zji{El=zOPD#&mpdof(4fZDOgM-1ae@u(!KJt!wX3Be+9-T9rFGy@dPDGmoQzgR<3V z-{7ln2gy?`Ax~4X8d^^}1G_V)wgD+AVIHaHm^r5q9Z5Vcs zh2(JmwcvX6ErR3-z69S#dQgZtY6(R|o>QsZ`tw;Dfuna(YCJ|q;r+OV6!**;KLV1o zdmqB*ueqq0Ps*_aPs3z)WBVQ3*^OYdzl zGl7mYl9^5vH|%8kQr@+Tc~cpZDGYlW*dAsh1xr~>Et-ot%o$ow3z;0MN}gj}>wqT4Zf%-lSP9A<{k11Ms~o&oU$vtSGSoo8|{!{!BM*F@-DWU@{I zTw>${VeB@;(wcIIS$YuQF7s_Vh)5=@0}f&zKu|XxVe-XR7qQU<#69>?O1J zCy10X)#>Qy6_Z*F>@`zFCwXs}pH4#WEyLV_++ELl?5c`IXj!v>a&VrTm?4T(~ zCoCbO$4t;SGb3HmoZXCyM>}$uv`APu$t?Q{yb>lm7}zW32W(arouynSDr`k@-gH2- zl53#{e>FF!CH$@78twqtz`dg36wl3E32ZB8|GHwVoTIR|?|?I~-2c{Fd=8XbL2_`O z5%i(Qy&yh%_C|b;+4Tr!x3Pj5=!ISEFiK;0vol`;OJlpt25%307fDL_V^pKfy>14@ z8P4XFFx7OExj)LaRgivKDgvm9-aVRt3 z7nliSdQ&r!8SQyU?qPBpK(dhesUIYZ8UNwn-DCz(JbsU93}5B#*dTz^H?62d|Lw&# z_^fx0YBNpp&*QUMCM7a0F43H98B7Jh)-`Y9vD$8-{jGg^L&$XWtBmhGei(qR8Jk5} z_Y|L0(C08Yjlp=roTiw_hkZ$X@5^4Ky5mB2&mdrHSbhXV*0SL#P+rIC=^D^__BYy= z6WJxS3vXkC8$o0*+n9<98Ek7ONbY0P>BusZUHu(E7Tcp4z<#!98uYT+Z4^r$VCQ!O z@i1FLkDt#@p+K>KO*jN_gl#$+rVH8qRJA_JPN((j7+c~3z2oflXkbO`6eHZ8V5ib% zb`tLm#8d3VQiv3@jcBDf%{rWg`We=K0*GhX8m9oxvGwRY@;qC-3F;Tvb1A?svaPnE z(=M^y^I+vN+s_R3D{L>Sgk5Fl(Ur1r&WFOuWnAfV=q=}}y#ZLkZK?x>DDGPpl6$$I z=*CY5cYPKlbGTWwY3FjO1u%A$OA3O>F>WEMN-cvvVHP2+cw;2v!hk%Fx;c%pd0nFsKYAm~8X9yakl%R$`1U!|WdWb%hz zLH!7ygu-_D0GfLM!W|#Zgiz1^S~%=gFAASOmF9uodp4aJ_32D=w(scI`0V%mYe@E2 z#pBZ>-2*m96#3wDgdW~EvbQuawuKF*9VL+sXbKNW>`=;`li5iaZI%w~{gj7lpLy%> zb_RBnf;p%?6|Fo13SneKOeE~DU{aDG6veco@w=L_j)rh7^NR<-dd9vvh#MG3s=jVv zcDe#=Wt{26a3?c_vj1I-^gQlFRH^0T9dz-{L6+R_rds9HLM(hqGchotW3h zAi3hIhF~ zimNW?Bnn>Y@GWb_$yi=^A3GW+uEgt}y}=igjc6X^1tRAUZ{W^JRG6KJXO@zOtv! zNR+X;GDaj2a8_n3~LF5{15;@?Cg+MfvKDkh~vIu`uJibM&1*7Z3dubu6=<2@?dR}6gF z=LWv~9}j%Rp9X%Vih*zQuMK=m=<<22tQa|}ijkwP7&#)$4Nb+|(0*=i=suYn`ii+> z`^nree3%=?in(F;$=on~m>ZQV=0=r2=0?>o&kZ}fkKRGe4-fX&1q#!qe1ZBfCI0%J zWSm6)m-nQocu$o+_nvJ2@q1GK={>0`-jn)Yd`~nb{?;#nZyu9?9jC>B&G>XN#N)GN zH~MUKatl7&cSyu!p}F!3Cjsy03di;M2k+^x8;PJ|>0&;&k?{ZKMk4%oHWK#J_ayr4 zMk4;(zbDH(*yr%!9WY#LS;ZnCuUG^=Y#(?%<#Xj9tZ52PQt2;q#inAeC_gt>RR4Ic zsQ)xqG!=72`{_IQ{AMnrcc80Su=Jl>u%w?XSl0h<7c9Qdv?R=lzKO~B>=(C#W(JZh z#8?7+vdn9R+={_J2&3^Ibz!NuJX@CQWv1@7kkF563R!hK-pz z+{0>E^Zt{k;Llj+2E(Qf_3#|-F{r*nQwOI%k@`;1B22S-RHmEms!tfze zJRGKbj&p7>sDXnM{spVPQzPg4^_?3w?r+iTKV;I_dgI2A^Qh-BWTA3J2& zD9>^K<(fTt=H$P=f({&)Jc|S#$yf|=P?~)WDqS) zp5w9{}m=)7_g7NZHCV>~873^dC#TApu=rSCzNS{#=@l%)~x zJI^9Da)Rf0$o!=bi2jA{!6N7RIhEmKhkSwj1w(kZQ$GI&MvNIUdDQ2OSr}h1H(@&U z0iMK)M}p2G?-O&a8J=t0s1Yx*Vg*biB&ZByVGbnb9V>>{wVcY=oXJ;l)L0RhW}REQ$>XE(N;cJY5>tHM71g_Zxm?sFdF>9SWk?rpJ5~r zk``=7V#{cW?~|DIL7_Ear@UsHcE)M;UJEk+Onyi#h~V_?7pyZ{=*4Q zM`nN9#rHp@$NwCe{nr|t|NEuK|MPj|$64J++b3<<6>edffgVjucM9O!?F zji2<1rK|pCCuSXJ+X$tsi<3BvZrz%f*2j?*{s$f)(TN)EMcfwRJ9TT-t;1*8ISlf( z580kYC;mybGO!)#m6Lf7KUggXS9e7o1-ljFLXw8eK(RXPZdfpHA zEv>)u1v`&Hx9vtThOj;_H}g^#UecPkrgKJn-ar5Z0yy?-{fW(Bj{1;iMt;)f6u5#o}bh7vf>%bqZPkZJFSk|!iDZTg$^vhqM-vOP2oll?Q)fecI zIQ;ya{Q57@cYT4L^Cx;1j<-20{B-rRQC3BG^XJ<>AD!iWHnI8aRiS@$-uGW?ANp@{ zKKt2M_daj^ki-6M-^_o{+Cjy9`_jAla3koW6Vgv^1p)nYqWr#OI_$&smJ#*eM=zAa zBVhT{1tJ_Q{&5sbVaH#u3_Tq zLgLdC)(?I5(Ftos$5|TmuigInpI9>x3lKHrSfe~(<~3$sVb9BP=cgavsvfVX#|!%r z1$*O%D4;vZpM|{9kw+PUY5B=cdlM{SAO3qYFLB{j_Iz~*zMeh*jSG(}LLY7dS+?sS z+2>unfA9e0!DNAgbS9S6RWJ@4eeJD?NW@lI8Eu>)^!&wuU0 zJK0-^PJe`amgjv-x_x;&GhfY~uj;_J>B<}1@D1$w<}Q3yd%lgOi|It%5}js{yTx+6 z*O7cxH(u|;f7^{8>p&rxkUm)#UJoD;+VfQi*5H32Ft;3Y z*=nR(oo__Ih1U|8QjR&6V{^-`JAPvQioE=WSny2r3|>8N&%Hn^zjok-^?0Q{3R9L5 zGH+)2$iR=<@J!rWq5U7>V@)0pzfr;Pif$Cw%34uyuCeD;D0)@nrHFU!DT1U=OH5A# zQ@~mJZ4{}7QB?0vgPUUa_nhB|vj!YIy1F4%&zRJY`IeWIN}2g@QU4n^8RS6+?Y8N;iq@XRR7O>rLMe|vv&DBN6HO$;f>rk_7!bw^u@N-=cS)%o1`Hx znjopqYjKqLxmMuU%MOWOhtQ>yd34p>b%Jk(uF zdbbFLi7jC*l2Jsqe@=BHKg)`fp$m6|rEH5nY{MHI_^%x36hP+4S90d1c$oS;=fZ3H z^CCySOHIBy)`{M{8X1fW@9fOG<22uex9QE-;f(gYP1k|ErY}iqYSE{(20e%3PtOr4 zL8$+kT6Zky)=qq57qVI3g|9}L*B|MWbtspXELiQM1D@>;9m5Th@z#jA1P ztF`LS*KWnv>PqkRJ=@8RZ_%2jXI&SfB0cNAZ_34)@tR( zH*7^+hC2=QQM7;}+RZ5(K1t_eq{tx$^3JVkI6|sn{r5_Z>eJu@v2pnq7v8=B8OLJD zI9o24TT(*H<7dGL{oDydygqWqR)4(V;c~pj6JR&(#@mnJl`iEOX${_n=1z6|m2{Sw zgbw{Mc`O#MO5Z0t?c2Hy>eT3m27@}aYhwQ~GRSrEXsgcMySNW>@9@89d-vxyk|SM| ze+urLSO;a#I0*0|>a6V(ARZ(}00H4aO8ZNPJVVduS|d&9VUKtB`ftDA_hn{18V$-` z$Cd;_?svTwaP|JaRCG)9VM%?ETTw046WDvu3q!Rvx~teEj&j*L_(JTi&gk$=&33+Z&EYO={suSIua-yWL(i>zB>dd^7uxNeth=wX;k9 zf_{J9#|#ea3!F##4oh@&XK)cxvx07T2ebPHV zj$gn3eQ!M546o*sC%ymvZveapu1{`t`N`4EdOKS*`2Tn^AHJH5SL@|=qUSbO!};)b zG#NLO$=%auz0`BEZiWrMxB0>?w)Ug-ycyk2&up=yr4O6kkFT5OYc6)L`0XE!G4(H+ z(fm19M<3B^lr6j-jX2&Kb|f@-YIAtjU|xI2gR|X}qkIpMZP;Mq_(=Qy@iC_h5B%m2 z!`0Pba=Y&Rs>gQY&1SY-4JWrxp7j2o-}ly&&1Cz;-gK@vo%Zcbr+vI>I0dE?zeejb z{oBVlCf1>Uf({7-PKhM_=61ILsw_v(@%yxQ^2^}F{@dvl+wn~wh&kL2p9UsPr?v(7 zttD7k#6;@Fa=e>Q;^TTTRBp||X*|X8vDm4A?IYrOPdx$?wRMli3(Vkjv~EV*$!vP= zANLF&2S~pe{rLLbyN9}ak2B`#~XueY0Zv)=YkZ1bzRUH4BMHAc(DO3MYj zm<;jY`SAL<(LYV2-IN>HIJx_Lc00kQ$2gw!{*Mn^P+i-5t6opo0HhKx(8Lg19>2YwGGuwhjYx!bu$@XPq4YLVVbMi_LyD1`NI?|@pX^4 z=@v~O9)PU_Vv60hobO1`F8(O$nlCgLSNQOf2)@8WK?S*^CaVFSw`#Vpu-W=#E(6;o zd%%q2r^YU9S_ha`q5433x_@ejA1!^b;6`2gmyY#Bu%`L+f7=9wE33wO{<-oX~Gwnj?H}doEM70 zaGn!LL)oXipiEc2?#p`o4P^}OqvsEQ+oD)Ov-uI}>uB^6gj`8DwYgcYw`gc*k~%bt z;pRE`#%E;oUpAkfK%AM1nvKB#))P>X&4lPY+4hRH+XEWHOot?9)1fe=^_93Bz%=FD zkfTxm+80hZIGt~idpVxmE+Ho@X17Gg-=0BadUknsadtX5yX-&hKYVj`K0O_@Ncd^5 zCh6i5N6l)vnY{#u-z<0Q(WGQ;Mzfw~&PFE7C0UQR80>gHvXK#^v?JmhPHab{rq)3M z;0)3s{@)+?H*rG>Fk0V`rA_+%YGb!ynj5|A0?0ePa=t*GtgHPKU5+j3t^9tMNyG$u z$Nl&qa2ZNuoqRJudbP$gA3>18pY}SofO)JojDBM7C0kA~bx(4`fO12Y8UVy_(?mbh za0gDF21cHy!wm?E&4Z9>INCn5c_!E9#>VX9p8Xjlkt^!J8pX9>)){*4zMnLRYX-399Yug9F!34_rTc0_G2z zvsjGQvvtTF{gbnulT*=#^<*(zHINt!w-&N zr<(eZn7maZ81eYL3ymeU0i>BFl^>DpO}8MNQ(Gu4Wm_z`N@4-|hvB)gtbybIfE%FR z-Gf+QN47RpV<^a`ZT5?11)66x*p;yEKDs@VywQ3SV!?2?T`q#@3hO0+_%Dg!0NqM`t>i|3B2#Ta{&C-n%k0h(x?DwRn*xiL?^`wkUDeE z0trW>v!$b8pEOxgzzd-I=0*QPOnVb8;kvE-W^uK{vXK2z*y**}j;h))uC5y~eWqt5 zT6bR4x)1@JEFJ2m;g5%-=6-lLxt`ok)<8O-%S-l`fEmUfM1^8@yM@pWCPBfWcl=EQN}a9@ zUqY1lrq?&!b+WnugWoQ%sW!xdl(KdK&M)JWGNY6T`xvEr=!+r3b@HnE?BwgC0cnzrUviu%s_D3F8{ce?odh{R8t2_| zz8zj;h{Id_9rVns*}8ht&NH9>bA;OMKf?` z1Q8(myQ#K6&}I-%5W^Ld*6hu0si0%_UVr-Z;msdEe|l(|dSScp`Ho~@{ zX=8R!9YkJ;Ts1ldUWPCE5?x*0D9 zkdsW?lasgi(n9Tb#@DhbPH?O>~^)=!d7=;W21SL zyOhkD+L=&kB7=*oxa8o*Bl^u%67zAfkWjGo!dyyYoNxX4YP<HRcoRT_0kLU!85Zk4a}Mqtu$V3 z(KSq*nkFKoGdVCp(psn56xpZPbbj^do-TvYblu!v^z!fKqNIf`F2S}nEs0@qS) z-O2`|U)@xXg3Khd$2caU*K>sR#y*vB47N5|0%L02{bKh#w{&N% zD?_Bni7B3L$4F*Hb#_A^(J@Ie@>RL{*M1Y@lKIy-67XQTqCip)wguGCGzQl?oC?Y@ zqU%pFJ@7(Yw4PJL^q5kC9Q~8#&Jnmiy){&t3U5u{SWJ?jvuVf)Sh(Gy$x-HsI-^)< zPCc;!Nr=To^%lhpixs5lN?&dP^_`+s+-AEi++QSI-q7P330^1d@Aqv%`HRBQ9^6=w zea2~D?9VASd{z9YrrA-zr;(CI!-YirlVASi|Lx}X1k9MYS=*eY^~%7ElAHS(kVJpO z&01aZmy>DHFr(c@6)`ysuE&#RyPjQNPuBjC>{qhd4i`h*al{m%@xvcK|ImzYWI&-r zZGMyfQP45Z<0njO7j5N7@nE1bOF zopv}uIxTU6oQ6#T_Et`2r=20e^ue|Lsf}xGsBSS)XwZBM3?jO?#FH=Nxv*hiCVl-% z%`?IDP+_AH)pm$N1yW~QIjkx6tMhY`)!RE*x5jTizW(FehuQiCaJY4)WKpGqxE@`> zbIMM6m?bAIBp;14!PFhX1gQJX5YoyV8U|&H)CxMGP3{_?!p-Sa>69(3?S(Uk1d`gRD@_1BfA5!Tmhq3FKyGB zs0D){1tq5%fFI-kvIy#5u!S1j2hNfoPF7Drh-umYrLPxc53H{fdF}^w_Gp5dIJco7 zz5IBo&YZV@G7^Cc(uzb#oLt7T#|$Q-AkWV(vyi=-&tJF|bnm)hYFoXAZE0>6bId^R znEr*lL$48CV|0&up?22ppz6=AZzp3oNwF)i>@wGEZf4VMuWp)FLWd0Pg)=xc zg@NFqH!ncpW>j_h7bNrjW(RRvQ7PE`H?QA)k0RdkXb_Mu9sRNb-M-UQ!LDyFGh);o zp^;$vUK^XS_ricxO-25^C|aK4vrB z6|N*Mq&BrIK5Q}C2&Q0N^jURPzmo;KkQTuxrXRrqySN%pro-KQD!|rAW}Vozm@ps$>+?k{3-P3&PkEEd+YV&PzM=2m_x=lee75Y-^$Y3gQ_tK$|DFOJ zfRKnKlJEU%Z7=&Be)xa)8+w#ahhxP?eDRjuEi8oNV|&$;fA9T&y}$m58u8LCVeXp$ zM=!aeo92(7-@N_w=3VpM+yAsVH^Dm)Ia-=HVUr6jom?`(@~jz`^jI2ibRSD*ickcp$s2qAUYa9Ha#1mneOa_d{pNma`Q z*_uO9vvwCvP6Htyj1q=bO+&C`Gj>Kx(^QQ!{K$0>9a&Bl;=l+x!{F6bAHpdj=zib( zd&JP`3Ot=@y|#;5uZAc&RRe zMIm6|YO==c#(*#>Acp@V!iF`5PrxagHE3_gMbIT9Q2V6q(VHG4ZglA)9`zbwPl`^U zp9&u_y&@e1j0(PA>%a z5G~1dheDWQY^7@!6i74{1|D=r7GWeU;1MwZ0$#J&&Cg88n<8uoS8!o|=JR6Wem~|V zn!>4!ET;68U$VdB|NHkTXf`%H6wZO|c}H|`?H5@iETT(*>IM_4yRZUB-t82EeHnz- z0;xOq_Y^)1sWENUtp(H#+}&4Wu%WBxZCX)*)R{wvUopj~`R`0Ci=mtTq1loZe*sGo zwQh+dwohqPm|_=CKW#p}|M};K?|HdU;Y1zl4&|JL;OjSaNq4gHMF{0Sm&a*D0s4NpKUPQ5ZQE?t?nsaj1;q4>rnv@j z86upA!94KyKn#X$iBatIKlcXv-jmzqmz^iKOQ%W}4AQL&^%F3La=QbeTTj-L7w}E~ z^!n?c-aP4Hg!wWr_Hb2CXM8P8+3U0tg+!TQd1YN&Y1^f=&Iy*gpGn+x!kvONf;xp< z>cmPa&=FZOEE1Dnn#nsFjy7Y^oFUGfd!NGTYFKGRGJgZsWg3L!+$D%?mMQw=fx0=R zG!i1#YB)2gU_aZU4HAEWsCxBkI~hospKLZB5DRqp^hDyHTx`EF_5&vZNFM@Xl>>me zG25sGvkr26IU)rWYE~gb-$nMmA{O(vxqS?u;c}WHW1RQ7FY#tGV{*@+kQm`~+|o;U z(+ua77%?vhssW+lcEkLG%Hz+8Ed9Bu4Ovit!lA;eYkHI`cNV-Rh&v18puPaUFFP!$YUR0ZVICLkfK#|HZpm+g6-t^oBqiF(M5WZSvoqIc!2bMk^@|s z>z|t%lbRZ&6a{m*wrN@g(&Gv$H%ej`C3_9Zoc9Bt$7ty-q0GR}2R$y7nVLIy_tASp zJb)c}wZx=UqCg9%8z`TcGXa5ln@Tilfz%z@GZH?=(}>|qUN7TevB1&NNAaWAMdlG6 z<%v|9ClS!u^l7hZ=}s++sgua9E452B)#JM#Uw`QR=0skR4ZZFYxW3Db4Sq%f=p#5B zQs&`&vo(B7tu$Q9e?+lCC!NkfJc3KN4f z9`2?WXwf5Js<5mS$gt^-Epfv`c-*wvLRIqz4M^`LEHblF{?;7)u4My7RUYY~P8y?t zl19h(@D~KNhnN6U!ncLyzR&m$^bp$yvVt{Rto!KwPd|NTAk_PJlfOK?`$XG;%%J<7 z5*+In>1 zb4cob+;P0;?fPDEeF^J zREKU5ZI0}MTTolWq-F@K<>nsQC1=bG%v2QV4v-Tk*BiKGNs2JRoQLgf0CtFg#Xtne8Lp`_*Oh{fEUF0<6Q1xa8t1D*22J$>BH#3C(dm0hFg>0WbFw-~8gz|6ZK!Tx z{1`XicH*0l?m=5&^9h8R$y<3?&Y(|Spg!eNXYpr#HJU>bH%rQ(VN< zCqjL)h0_e*;Z;1VL?@wj2I*sT%_H?MO_GV0Ue0$^UPtg(={Z*<7=Unfam^>d#FHxO zUNhqfTWv;O!!#h9NQen5vYPMzI8m1Q*GaMgOOZem#R2J+T z(5xE^vvGG6$t~wc46M>}_U(rIo&w%wW+K3wq|L}tAeveQ;vuy)*dJb|AL!U| zRsC%e%~V)Q7$o$x(v6xd&&ZMt@o$V}Yl8Fd)8-{)A>N zejIp}QIgll6GE^`BEtrHqEYD_!TmqAOxGDLHT&m)v{2fX%h|kXYQEUQNIB3BW zOjDB{t5^h2DbKb!KC%|oTK)8plIKb>hydskkb0UjG#i}~L9|v1wXzGE0(eK)pvjQ1 zj9>5hX1c)UiCgVJjMtO9nNrU1PLgU(DdcI)Ddg$d#Ecuo1z!{+SEukU&i7e;1=Pn7 zGs}!-Ge;OXFXCKIoWhrv^g>~_Q-?DAoG!%~sWN?un=QlbO5wf(tl=<5V};!c!|P_z z`^)>c5NzK*^p3xJ_x|UvfIv`TF5vMx{)JtNmZpb=Gw23nZ3j97G)3);dDO&#pN}?w`?!7c-JctH9GlT@y+#R_ z;J=x>V8g|$61E2CA#OZ8ZRXd8=C5%P#fIOufMuX=V1f?f#Bc7I zs-t|Vn|m9ONuWi%hs__PFM10O z1w75>1#j=nQ4P)$0Rfigj!v$gVCtS|@)^I(qn7atKujRkQCb!`?AnV?*l!_7gUaK7 zd1&6gfA<6b55<$wTXXZpcU)qLdhU|L~bhPwsqT`r-PqQ{Mp4+KUqFbcJ2MLkU zyXc~sFGO*(z@L@UxnI(2Nb4{a<2QeK^F5+KG;+kQ$e`6Js%N0yWP&hQO;y(jMl@SqNLfz@$ zoDu0(Lr^~cVAw!{@Tv_vY{vZLf}V(nB$%xxE2CIMhIKj})2c@k_hf}I zC*&Q&#C`nz`_J&~JQ@6UFgQ6oyEr*}HaI^y?Vq9|NB;t4kdi5t=I3l!l`)z$n4iE% zW7I{n5V&Y)tw>3bCq;+$YM;Glh(1Ki;$iS-y{e^$(J=z22qbv>ktv1YrG#fJLDkZo z?WmMuLMu=nhE>oq({RySk4`Xk|59R1?@Jvt!g9=Qu2aMGQqI5@XUxxo$*Gy|%=TNpG%Y$PL2+CrmU(C`Y15pmxo$%t#YZ-nQfm>A1gSm)M7^)^zV z=Ue#h=KkBTI6}%305dp5QWY}WrnBp!;sv`h|H?_U)c_#=4adOldgE{}B#`D%0r0T8 ztsdT?qVNwzRD5;OCN5=X;8qC0sj7wH0y1569RcDwt-?bElI$O$1Kc%+byzY4qAszD zW>+V@=!9V3mISlV*Dyu@aNMWWkW1lFEGVa-;4g$nvEPB49t)2$taZi~n=+bO`YhTi zg|CdJX@Rs}B7Kp<1fi{zGutrTpb>Zyzhk_-3luyM-6Zj%D~A@aGO>qUj;szKEfCA$ z*vkPFYEx~#Ca5|9L7SYrh z6+n7Z6u)nQvf!2lwiP7&~YW413CMUt6dUm)dB zI(lFpSm_g0QgZ6^87_iZT=u^D@yD<5dpJ212iSs0^#!qoIF67OR*Ad245{{lQf)$r zlO)dT7bXh~6m-!LcX#WBAWZTz=GZfsbIQ6)X`c>fps_n!p~JpF@1@lWHfO%Z!Zs2Y zgr*b#DXh%gOw9O3#3h26)bXo+Er+k_@kJElGZWg&D|&%QlDV{9vh{|bX$n=}qgEkQ zVuUILa?@RfaBNA`BxVA{WSU_5dcD?I7%bT}V%IQrcj@}7D4y3p**;c158zZj&mSlq z!DKNvGUOR>n{($-5==v(_z9MXRPRxal1X`3F2lR97_Iys)29cW)eRD?`sCLiA6Qi~ zvky@1jkQO zg(uk?n0C8Z!FqjUyr?7a(0yA!IXxRKH1x;P8UvzEt4AUHBlp+-x7UJN)st9>0 z?Z@&&_7$OY(_@Mdr;VEDc5}C$q|k9{kojw3M>h`M;`0Xz8uNI;mlqGeIlY`Zd6(?~Chm?ouq|TdZzmuwR=D=5cy_bjKP%{L zF*a~Y1iy1*+qi9)Nciw)Q1lbe_R+#8%g$SgMRjEwpP4ohjJ~rU|$1 z_8g~!!krun7p8{WS`T46-8qcdD{G{EwxPR!EbO61 zimkY;9v0Ec&t1A@%pv@m$ksp+hbmyHn4~T+?g~GpiwVUIEeQHD?6UU472WrN)jZ_H zN%NJJv!cmmSdSGEHA$kojHu)!rD_cstSEY_BFG5zVDKU=PW?<`=#A23i{3EQQTF`R z8nsK1inr+@orSBM(*>Ni6XVL|kL(Fg$+sF{*29hd?eEjw31;}Tk2vrr2i`;_jZL2t z7!u$*=y8H&{4~|1(~}+`bp~!=a-@m%fq2B!V^ZF*d09M=o3t30XOtuizTt9be2Zo@ z;yc{vtVD8~G0RRayhk>}TZmN{#H3d@wIRm$$THo+X*YQ}n%p6&VW+hv}S~})zG?-TOn6puUG(#pmK$Suythsi*D*1wDp+K2|yZjA-1|~>U^WN5jTEO<FRe>L7hLuBKEFo z05L19^>sEib=@M=)Xsx6I+->F#IdN0hb;z08nIP-iZtvi^QlZ11#f^gt1Wo6q56^( zgy`fa>;nb;@kqp0hkbUFBC0(;YL6dzST%Kr;cU&s64cMc;Tahz0xkBtXs`uoW9A61 zxiheMmBmkBlZ?%K$>pQ|$A5WMb8UoB5u?{ztQ*y0Zwan7H!LiCKbz4z4Q#ZX!;>`I zOqX*nP_gsclh}y18zT9{%24vMK7fM$7;%H+=Jvz(1B&O&-u?XfQ+$7)6Bl}^)cqG2 z`1*Osw)}0R(aDvkjYdmDHxK6WYK{DEM8_e!=ql<$)ECveqz_xxM@+{&xa8l_L0`g& zQ25~OVx|bfL-B(JTsLYjdZbmSdXQl1ZX29V6Zf!tD36>TdX{HJmwI7=4i@ZAN$4s~ zv+>CTo$?@^M0E0t1XFiks}$+cJ7$g`tqM%uvRD9_(L=+?0R+nKDqzkWO?4VekpTT8V{=P6jMKY#Oq{s%S4VeIW7(NbEC>N`sg#_2_R5YO2 zx>uBV@Ng&G0tjLrwPRhodu9S#w9>d?77&^1Wb_G^$6X?bhZMm*$vVN0nmG>i@GrG= zpKD|Rv5Nod!^6k#Ub9M<&4WXc3`7YD8V_nJ!#v9vByF$;U+X!}IC_q!{?K$`);yjh z)GWs5&GgN?Hy?i#Gu1&t`IaI~LC2m}x$C8#v5^1Qd3&&Mtac$it$}-Quv5DZ0`2aujP=Moim4 zg%Lx$a(sgjQN|r4gH3R`HaI`Y6zB-1ik3dyZrVbYrOX$f+{y^Ds9eJJ%$N!8)`lOA zAI?2#UB}X6<*iQ9zP7RlJCbjjUcvPkM7cLwzXBqrwo$M+Psr_|si|);qE5A11hRMh zcPI1Gw0|W*3dMaUcAA!z!{+wDSz)fvnqo#Ynm)Se5A?7xx)0J9%uj^0&po8;bwD|N zI33BOUN6jaAZG=luRO9=zZ^UFvmILfG8&kb$o;F{&;&M&=xZtG#YWu+Do}6(uA*ZX zLh4q~Eryk?M9_1+e4ESQJP8pfXQ3ba$k7Ig=|NSrC_((#M^H1i7d`a7O|!;-uwb8X({?533A%YJoH=$?ZVAF+%ikp?6Fz ztqeRJoNSi^p3g~ok7NQEt4#odSPO-Rw~+Wso>chBG@UgW>DZR@ZW<&Cr?>`50Rq7h z%t?UbMiuc*WxL&M8e}m*qxaPq_o&J3UB=vC^nDzzWx>CxcjoM!@DM=AlA}TdX24_0 z_q5u5lFOX(Lg!UNKr#-X)c>pIdcEAOj`dgNSN#_p!Bsz9Zch9ZuSYvYN#aL4MRnpw zJH?@4k9Oh-Vx+^6T*x4Nn!F)AO9}**zz-Jo4Ruz!ZU+d3A&$BI08QPkXIt2YW3e|f z^i*%IjBtfOn<7FVlX}Zez6VtXI9Zg7-B$zLb}(o*n<$P-!^V*1OaFsoWRj9Hy8MzJ zUwoC-8!vcu4O90l??j+!wOc7KNE!;Le*(o;PAQ^DXQQ?pCjc}RK#~kcYuqhUa_@%- zT8NXBo&F@?3X*U~2SWpo262{(nIPN28Mnuhb9l6b9i*Vkev|@H9X*8carlH9e)-{uy6hVioiI?8mKz_?Q5mXSQ>`8*DO@4I>Jy}2bCBZHiYt+ zXSSDcfpJ5;P#P(c0ErW!I)qKzc?BeuPN)uw$XD}Tw2j}Tb~%BNOV5>|2%&Y|jtr$X z%(T^@HdHe&`XWmqM0PjDhT#xr{}hftKdiMpyeu4lKCI#eaJBig4On5RDswgCem%%6lO3bJ`*cNtOsI90t(v$yLqM8wYOMByaroKnqv z!i4nO@w{)UsTswKwj%;J-R_n)4^V0x7BI#E@`&O4{{4TEoTm%l{9z8G2|{9W|H&A& zs8x#EFqBR#c^Pn88TPhC398^ePYK_H=!0^=jXoteH9AtBbR_k&YAsqITMQf+0(8AX z0T_m5_pF8r@*P1fz`S@(o*D63MF8h|LclXn8qY;bjJefGZ%II%nbVHTFD~j6v~7(D z_DlPvu1CS6Ha}p?hIVgP@6AyPd+*F3ybtlY&7WR>{6r&K5v2I z+rgu+yZh+5+zXQxj9-y7UXsf_pl*qS1@LcjMQ|>{1SIUD8`DNfH!DoPlTn}2s!l6< z_S{s?iH7lj8#CCqvr<#oIzc(HCK(qiEs z35PBE=;Ncb!(MEfC);-ttpw8}xQ9@*oc7_37t)EAM#y~f_4Q;r1J7Zl4eokcqs$A6 zMV~Ez-xjdbe`;&zsSdS8Z;G;kq8)oSr4~ejBvM>&BE_{w(XqUsfmL%3ijs_}l9@AM zBDb|yJ`z+4FQ})pFr?JFM}&mSq;i`=qfS+m?0VZft`!eZ#!xRLbU-YWc`7Ap z{58+qev(TKJp)eY4qgO zn0Bpw7-v7B%6WB!6Kw{T#V_jt?t=Z`Nw^VQ)$2|U%|Lw_MG}@ITyJ5LYb|{ZQ}=A# zyV){mv(?sWd*Uxd5&VL*jstyhFY(Uj!(!~utt3n6!J3+Ylk1mi7`#W1Og$c4xUyTt}60P_i01^s1f1}HGo z4)s)7N%_nD*v(iZR4SYdzLAMp`9x^wyNr&=Mb@uGwH%b{TmawZ_AS@%irSxL7fmJ~ zt8=fuy_ZXP zW)kjDHM5yM>W zCK;HP)rnq}J*+8VQW*SFyBycyU($x^QMOr3p{z~BpwRoaWM2-8T^^LnQLaAcDd@dkWS9`O$fw3Oi$%^5bKV)#O9<~n zj0pe>bady?bhthE&sbzVwX}3)9OIs~A_p)U$eg7fPTAJ)wG$Ie^8zvl;fIGl&0&O} zAM39IF#H#E>as%$y*L2o`M5@dxb_U4tO}^>A|xcQdY$qOaOQ*}R%jI9`4d2+BYOR& zyW0`jEf4ft47Z~j2_ZP2n}UYUT^S9^)3(Ux*!GFT>%c)CIXR^U>Zy?ETjd&*HpCZ} zpj4%SP~!`v)GHntP;Y`nrv=ljTLd`jXWg4nm0~e1RTCmZ{Rm-ig6R>4>O7ZXwVrOT zHof)*O@Y)C_cnPYf@ldY%cP3IO&={Qd6mF=IVU5zS&~)ssfTyeK-~}}bAWDz!M@C@ zG%36Vch|q{f$M%d=vwIPsa^o;MaF{8vVGYnvMQWZfOQjc=OF}6K>HblB>BF+1eAuV zNn`Tp_`4^)?|T31fA!{bTqVAhU)0OOY8zzV;zc^7JzDvCj+hA|5_QrKjLT$gDv9uh zX}dwrU{mJ7O)~)PB~?z=!Ww5PkUmpbWcJ=7fg#c8@8`qg zx;i365Jsd0#A?IP8$BOojk+bJwpmQj<%qn|ZV>C-gF~+u*-6m}Na1DV|fNgP2 z3kA3xR6nX>DE9K?_?QX53?@aq>EvY(W=f0-#lbXd0NEW@RT87M;u}yv7$AseGnAQK z$x>Of%{XefAo7=l0m)g8TWcvio)l+1Lo~ZWLZJ@EY=LS4t zPz4H$ZHbH2Em*dYySk%ZThX}-Y%5}ME8QV$38wLI4}s|`9%+ck=x8(O1Z`O~q4Js$ z)7Sykp^|ckDMHubvZhT9aw(>Jin9WndjwG8SzwfRMS3e@V1$*7``^BdIv>^$?blX| z80>gOY|Va3Mz1M?ZpuJ?A-O>c9}@LUExpKS;`jy>oS&(q-QmjH_834|UFKDrUoV#B zq(NcWDeDM6cohfok$ITS9#~`3cx{7JZcL!8LTkXhc}k>N1c-rgl^LskIjAgbpnEke zoyrT zX_1Gd*rCW)vLUqfI>9tCW%thFd?>Vjiv&e=<{q{a4q<-c>8FeL-#>`_xM6A!C>bn{ z7GkZfYj^>?#+K?qiOTXA-PZX+WuJ;kw+)c`0B7KeSPE-~ZTKVyIcc)35-@$0qB^Adu>PSZrZ3_})b(~-KPNCuk$hHi3nVmNc zFdRI|`e|}XI&3(a!fr{_7WxVszX!qMmw)emGKH))xu3qB7{<-Cd5fy$b}HBAZ|}bQ z@x%LfZ~jv!bAf{jlsA+`NFG+I4uhgM9hzJW}dACimHX zTRf%k?0PcTZYdpQvG43fsfR3z09{v7ww7T45t22s(Rd7HR*q>JWqM=+b_9bZNgh zy40dE!|@m`p}PiQHXqnVs+QokJojtN8UEPECXLcu{a)O{8@kI9yp(Gtb^P&@1lwrT znu!VfXJqXsl%DP8Mn|IK2X<~wrGygho_}9IAzsICox-V-2WS6u-l9)|pB7v(aB;%xnOKb>uyOMbQ|&%*rcHMT+^HecPiR&y zj20M!^00TP& znmQwxNCsp zM!SSXa7uMbVScK|)j!WveSyf{ddn9yzA&@%%&hgxg<+}%iju~;jm@yhX;`2~l#(6c zG*tu|AfJhk{^k#)7hlU9r&p;)E$nnQN$c4Of`ksA&Y0n8s&IlO?s+UFJb`r&nX*g}6njxvDn@|Q!vqnx%kH4%LV&|zP))3VMkRnK@Vs||OGgcE-s(Nzyf*#e1 z#F$Set5(3B@pY{B5iLWsA)oXHkp;+93ZZBqb~w|Nrw*vZNELwP0e~!4hXLatbGVmWco&IvJ!lnGirUTi@?oB=DA2PGfU{(3dt^z9Sj_00sad zqMln%B6YWUv~&|gKwxA^l?xR7U0%qqE=n;J9%(}{v3}VyeL10t05aHI84jkV9+%Z4 zNd&a6XAP-7PK3^f;y4lcB6yQxJ3+k>I5OE%7yzk5nJ{CfIbX-qcK!rk7Lhr;85G*X zmq9LBEeDR$ZnZV&p^}NCt4w(pRsNOV7;6#7*m=M- zph4>>tXMD3kWQvuqCF4S*2;FEZ2{+_OjXf zoUvPn(Cz~M1V#V_56lJ|1&ZKbAcbNG>Px;b%#l3RK02TTcXtq326yIJkJ-TJ23~zh zf@uMo=F^X#fBNG<7Ia_EB1-z{-V#5>8%UQZJy3@9Bqpz9&4cJ*@-dR^dVS@_5U0W6 zNLjmgE?;0Che@+{S2wIlTl?RCz=0k%Do-%%WK0R>a}y>Itr*@zx9aS6x5W8-umPJC zMeFt+$WbRJ(LpFQvBALX8o&c`QM z?(SG^oZA~3Ds=)ZeTp7}*9`w#UoVB(B?O3n7eH;JD8=U?eG0Os;Y~I)QHaOv0VZUa zizL({Pev*ABC{|BZaCga=3Fg?%R8J;%T+2b=(C#Uema9;7T&`8bmzbR=?zYI*2`_0 z+AgHXRu03Y$zyJqsK_`?JKO2GvWr90c9#pn_+qp=t3M--JdNqfSMRp zpfp5=u^FmJHO3Y=%rNr6btsQ@)^=F_HwTb8*bK zx6Dps^sq3o>rEzYyS(lVJ*}37O68!2Xn-xtB;;?*u=;5Ot;Q$N8e~qZ=d`nnJ(0F# z=o*{Fm0aJrXui=}_C2e}W*ep_iR^&8k4C$kD8Pn3GxX#2%jNC-Rf}v-of3Mzr)cG+ zjqoD#K7p>2aA;mV|JzqRAC9RI39r%(LzM2 z8p)~0Y*N9nB6wL2*%N@fJ7kwOkc=*Ey;Vl!!e*n&?+XN9tS5E))1f|^c};{{r=4R( zOH;^A3?ceDto&~H{DNjpkzCF_o@{)H0&|yEV6IO)f8-n(6?PY)H}s{F)sY;R)kv3{I0Zn^3Z%$( zGH|P@bGvL_!pEF!_$;oYnGJr!H?%e01k*woc0ASlJMp3f9sTtB%{wBL*PBrW|H(_b zAyzp5c;^Sdd0KeehpR1^V0t@E6x)~Zl;2*l0{s$&`7jMY3D5V{sQEK64&i`O3b8O@F^k?EwWddx25v zpp+;@?jv%LhNQJ~lcHxbM@wi@C^rZWs`q{k)8nY~mBgevfdhpxmutlJ!>@8H(^_s~ zTKzCS8m*AtIeEEae8|bA?E}NdDqTu%m+cgi2#6QY-cD|_{%0*ZlKfz9NA9mN8lrbg zo_GoEX8)2tU1El0JUeb!KLs(=SOA5Wqdo+rR$F~ifFh61*rHA|7n`OTg$xu7m`kBh*z`%s?QLTZ_CMrddC{I&xNf ze|i1(-|akW`~t&=-)X#_yu3d~)KGmM+OH%N(609PV?GGAo_b#F34Jl|ybBNc`p}(E zdMG*wfg{~`48n>#S2LWZUK>G+&CmrdJ%dPx5@L9%O`96dgY7$Jz_vY7ZD`sTSs_Wv zVz<8HvDn7=F3Y`IjGPit1;fX3yO1dh1G6C!>es(?rZ^u5oA5t(lwP{&vE$1$w^3y< zMS;47tOe9ODro|y)Wa(ZqO=b;L6KEtCs1~X{{_94I+kF14YVMh5j@*^bRoN>YaViF zlqB2L>W6B3WuTrKp$a$mZ6Sb_-6dw(NmhGe4k$tiDXml4jNFcHH#*cZK}#~XC>k#j zi^D!!6GHk^05x`FYNzrxN~hUZf(xLpmGF_-<)RammIHxtQOlblVl+AQ`;-e*CWdE_ zJsd$G16B2%C)Wo4MOZG@^?LPDe9t|%J0G9AAfxR z;ZvPKB0h-89Ip3HZ?8alks)ZvlWRLWXR^u{^v&Aq9>%^v@Bz#%{s~tW=Fri>SIP)W zrmBI;q_?6u8Dx{>TC~Xup<6HDa@oF|x&%lMEwku0O4iq@CwHuqiC2obQ^ALg2IjRG zrqjj(py3(0@x*xHDx_fIH)of}w!(vfpp?y)s*8u@mLOg>BkT%+Dl0qFDHj^&Dwf$H zpUXX!t3E68&d#dhfczA_Uh!Lt;DhJU(ekaOL!TZPCUy34 zTna|*?h-_UQ>+QOQw6GuBV%Dx==q7UEQQXsQiccovm3^^=EStWw;luILJ}NTBg<2X z1G^C8K?B2v)apvM2K%WGr0W{fGJ$foSW$0X4NoLv*B6(Y2tv(%#|}4@9$B$-uXGcv zUzFF@-s$bW?a7cE^(MGEj@`#qrwAg+K^wuvUcR>A^A$)7Au2LjfSBRXtVKnxTOf58 zEpt3*3oA8D-Ss{v0&O9&hUM-qF~C!eYuLgx_9ppc2J4U+YE=&(ElsR22adk4e*9{$ zP!y1`^Ej-+^d-{c{fdE@GEfz6Mpy(_%GAEwtJe~u@vkiB1#|1(=V~%os@=5

    GO%e)9(YsRh{dT-@^F1R{n4J838p|X^_}ks;|_-!5XIS8l`R5?&FaYEO&P*>nt`}`bL}`>J|0wXJc4D zl~z+M23TbWUA46VEWg7AL0`OR=^Yf5za1ko=37}&>!x~;=pmwrr(!e07S(|FuBab( z0?Jqbx9(Yp3E^)=eX~8FO>dlFS#ZSqiw^Kit}t^R<3tD9GLBNoZyt&X8PI)x)j0n4 zar@@GKij#Pxl5iZ%PH!_;{fH(p5Eimu)b|=N)#5;gI_qo=oK_8Wc7|9A`~S<)x+|; zaKxJRXLi@kd^&nHjGY`cytSC_@25Zj=dQ)F;fI8Q@`6@F zh7{5Ih<0EJA?9ZFNRbp4p{B;b9R+;Y&89M>*-t@;L5f$p8m9`Y3T8;_jcE(pS{yxZ zP9Ntq`B3CC_6k;0y4xpN1_DciG@0@Z(O z?XapAD5wjBP_GgfUnIlDKxP8yjit#IWC829=58dCx#JK5tGAh_MJ#}Acv^3QP#jb47L{MNf ziX%~%M5L${OTwjsXhh{CC&^q;->8u+Xv_v8ZMWJS0xzJ#DkMwy!nfOGp#mP654fZgKqvDSO^7KH{EV|1o zCYYuwW%qt~^Zvt|Pk+1q@c#49Z;-?22U|18w*@*%1PXzZv_JkMNzz{mz%)B%J58Er zh_L(vguN~5@cQNqiLC|I_we)A<2V`Ga9zYRo1IzI%Zg(_4du7sf^);>Yls!|IZQ58 zZp#Q<9p?j!41#QVixuv|ed|#aR4L3gPrjz-p!H~l-j0ShuBwJ@tr62a)nm}dYeth$v4@kl#>B;WgOb4ob z_(PrYU|o1>f1GA9!E$#in`PB;ppH}4BBhgc{Hi=^4Gm3U8o_`ezZx)qNl;0xe7(L$ zl?F}5VS^vE%(grucGR4Nc0p+>^v z)Y62C8PTdU+qg$GMIv|zQ`>w~?jry49B>|WK`cfGwtf_7-hz%(=H_~Llm)4};;XZG zo;@C*WFkd6{-*a|y*Gb?Q6gVUMG@2qfhQ=0wSIzr_5?VmqFe*28h-71GL>>W@biODJ_YnF;xh)WBkO3XbF*o7G65f1-WPmUND9vsis3>T*L3~BRsa? z56iuU6n@wfQfzRj__)`t`+G&XddPq=(Z?dV1|A$4t+YL`a@ajszL?OQsVxGRz#3?x zc`#B$cA3HjHGwJmz~xX`{&>seFOaJ??>~R|j;HC_VR|~P$)y5Zv%%&V*IG@mZE0$X z*+eOu;nDEhklyU48|=ZvIN$<#sc@WN`iy*wD&$G97m=QJOrV_ZfTc z5g?@;V{WR{u>5Imc*-g8bs(%N54EgOVfk0TN5lhr#wOq$s!<^_4UZvq%VKp}S*Ked zMEY^#J(H)0Gc^&mRY0JPv;PIQa5$@UzFk{W$sdz|i}-?2gZ2J#YOlOkDp9GuQvZ z)b+nGcl`@U_9O|2r0EydkX79J&m_pu(`p+@a!N@mrL_UkWvcF(!Ia&PO!Qdv`(a1oM3?xuQr@c=p9Cg=bDi z%~x6lbknxAUkJA*v)z5tZkF7N6cU$b^-G^eHK!0JJ!LZ-pcO<96FE0lR5_N6%-i5m z-$c*$Ac3HxTn`8X7RcqE3)0e5&$}y`)#M4}X6Ex~OUy7)A_04I2K7XD^rS!Fvs6-#?2CLE2 zq9UnvJ(-|LJzT}7@(7bmn~l#|iyQnrd#>zfNNL^&UsY}`doHm9%Nb6ns#!R#m#Aw^ z+geyC+_#=g_yN~fi|u%c;?g{xHZ$WplYgyUY|wxiQDH4o4061?)N2z=-8oM>@Ol04 z`uk?{^Xm@}!w(Oy6~*0gy}A6Oe1S8_qp0M4)&qKBF03I^5;*qx!^cnahj%}G`mq^o zKfHeT@lOvQJ|+y@0Y&DM+iPgm1DRkI5ETy!*XrZQBi ztw9NuS*Cir*=^j>l8UFdfO@DW4jht4@R64-X{3;q&Cn7j1IZZdmoyk1ZlK$^b$=npSs*#_Fn<*uYQa4@ zlmll)TYzjtavZ_sq0>;0ihIwxA`JbxfN8MYLmKdQ2n~C9Ki2N4u0X}Cg6PgWWnv4y z^Gcu^sj72Lwy~x!M+*GI0NFwDho;XIDL(f^?N=ceh+{aDHgGJlxuD#&VwuGh){HV;1}q#b?fW zG&galRvyjXP%Dppd#KwOJ;*&;`VJBPNK{FI3BJu*Kw%+YtT2`_a^8`vbMng>eE6*J zT|v|rB<0m+JAt>+j&?qINs*E>v7SLZ<$(+w1RwG=EbBGYA2VMun43w4-NdOAUV67S z1$PCSlAQ!H7FY>|D6XoOcG(RjBJO*xJsj?|Kt15y;)~rF1@pyDux7ndyo}5Aj=P<* zjp1&EYMy#1e12RwSc z^`j7+;+;EY+h*K5Nz67z0&2y}&C*R2jL}GhF@rM>9EI%)C-s#MVxnXM6i;?ffo}-6 zcv{#7_@E^Y9Ky8@DDJ_Vo*oXKtU!`uql`#*uzd;Du(=jdhg}O34Xuk_f7b0r!N5w0 ztwqdsPZJ$2Jxdjb79$o|!aG7z@1KoA+@(^Nie6P#Txc6CIzqcE*$B+3_wb%{R&k>! zPX|v52BFacIlDKTnduxfSZ?lh0rHxKlp|=BVJ>x3gEo9ImelQf^r!+;s-TnIk0C2b z7$POl&5|kiA7RRXrG=qj$^&=u0c>jRjjTA8!X$joLOx;U(E0P~VJ5Pwi!G(?{Jxj* ziB@`dl&t6qNy@OiH6k_L8E9&z2TsEh$t!I$SAyjSx{Bb>iWF`-)joSk0 zajv7FAQp5KkdZRKq7BmxG}q6zkk=6fit^?$V2b%g@*~RVQ0;u=s4)+A3t~qNO$g_? zrRlja5F00~pc;yYKtTqIU?|2_GG;m2^b%lLhROEEZd*vmLoTQ&w$*K`Te4TuJQYJ; zE)Erdh5YX&VClJ9BUFZI&(AKl%l_ag3p`=lPp77LxAN!Q2M`8r2~w_5MTK4y$!H7W z(eE&o($0iB4w#7EajHpTu0$6fDLodNjd=U#m_t7`HT{HV~Y@8X_vcsP-Y_ey}`%J**+F zELq{Q4w?dvWBT)$CpSAHoYt@A+bcW_%d6>1KckGwHp#n z-E4E1HN^OW(?WJ@bHB`Y1=N!yd7Mk~I8gWtOSKQDu>ld=INZtYmF}k6%Tw9wpluSF zZiD@enL!#Kb>lA&2Zbto_DSAU|sR8t6*VV(zi{P5c+1f*I0!O3XQNzlQu}lb=nd* zYCBI>aTRF4M7$XU#oN*3IDV*_Zf?LGgWJMO)4m?wnfCSY%CxVaf$&77S&jxd+(>Yz zK?@lLSHscs4OMY0%!{ywpJc=Ae6yR}ZGmoD2&9@hZ#T`QQ;Q3G0PhGZFsB#c6E~aP zoZ^g`_shLj?itb+uSIvTdoUWFk|I=47MvKQs`=nU5s#y4KFD<2&W3X}2F8jX?UJa` zI)_&6ONj+g-zgI6HAUL!R>OQ+co6~I@FkS;| z%?b2ogcA9CdCi0CAPnl13->Tb)1HM}R7Vj>l1^NT2ocEG5X-%+iBL+Tb5hYO8+sbQ zC|B3&_}l`hk2P)_N8>_fFXjI|preZDKaSGlvEeBqY2+6uRskuz5>Cqvgt$V+Puo#3 z>j^3&9sl(D|NZ)>H}6Pt9MI721*a?0ef$c_tK)?EruPTL5%Gp6xyLc@-H*pe(g(x$9VW3oC6T8+ z*)q(U1>A435m&t3c=_ZSkvv{D6%5`hL>v?ZirT5iPyW5*sUb0xCt{&z4lye=rr~Dq zxZkW!38-aD3qKprxB>I>`voBZcb|^US;IM1QMI3H3af9(a#i z@BbF0*!j<~}e9F{77=BW_DBUwiSWLlVrd zP(T^yXj;7~nWH(VRB_79$A{n{>KuZf@+dH=B6iRhYKF=Q&q(9mf$KsgTMV0@HG&RV z2E>eay$k|_(O~&(2z(8XDG-u?<|nqjzxP=>eGl#yImR7^Yq^)Y#5YGpRHnwhgSZ%`FR{f!ZI z#iPiIUw8qqk=wdnVJ|UHf%^D1zzVQjYPTz9ALw$gua6rl-HO$hm)0~FuV87adz7;T zvGV&(%<`ZGnvsBHL9|Kvj`>HM$$mf;D8XR=UJm<-j@dZa$*HsNuY=v3+W#ZHr6I=4 zdyl-`I{vedjH6T@9WkA^DkVw0Qk5lHRVW{T_cLvTUn5MzPH!(4YigHQY8k&EK=5Z)#U&go8 zYOhbkd#tWXLutOM{^65J70A50DDqoXNURV^H}@hXsj3^4RvRmV!XehOJc@!2+7~5% zZeN0agV^$)Sg#y2O+lsVp_vdZcFNEeglm}79xqx4;baDU#_C)%B;l#8fT`9-QwnCT z2PIg3uSZRnW>0plG9~z!!m6KP`7s{p)Vb~nmb!1pb7o}>w?lbr;hCkN?L5bQ8_Aws z2Vf$$(ve;xQjvWmxy1v=i+5nbY#lw?DWvRd7Hu-WI=+y2m?AdyzMbUYFtT*&V zNc9Mb-|9S`deiJ(#}0$V=&(C~ABa0{V2gnC$31B(doRm{doYML<};)`GYRfbuA!NZ zfQOhFTEjw;<|#W#ijE_948bK~2Su>c5HKdNow$Z!LODa>gDo=1s;I)t-OXA^x*kXJ zxP_GzZB3(CyK1e`5?-}@n)eH0ffjF8%gsyz$KzmQwNUbL{3nhYk;#y)HBRGER23@) z;82^D7bs5GcAINyod6S?euEQ`D9Lb^aS5?F99^;LDv*%MmP_-m*P4>0!aiy%8lESl zvh~d$R-TJf!fN5oQBxU!Wc6B!#O8x79*_b8>|&BdsomCLYPX8vOSp835XRAS>@`Cz zYvx6R;%v3S6ZLbOsTQ$-<}K#rA-uP#=_^gO$2?eiR<^Y1}iU;=1*?&x?#&o-IyOt zR3ue^0!7iY4WYR}5JhRtMsO+Bq2=xMl3EYW@q~heaeui>FaWcn)x*@g>eRD8{_WGl zcke$VC7XMZ+HBZ8;1*k~d;tbj&66IXbjz%4#BO!wcBq?hwR-rVGQ71w>h9SwZ$91P ztd@rlB4U0GyAwmWn$W;7k5VvRf*K)U)qksRE>4jtAP=Y&6GbTSxrHUErZ1bCoC1%M z?BfC}nQPvEtZnIpO;tho)l92Z0p#?9b9&6V6ZU$zTxU3Gg6X>rAF8tv&O0N)>n@}~ zsY*G*+dIpYBa1&Bb86et_X|~48xKJmdS-gJt>CMNFuQ_27Y9d&{ z$k|>u|01LZw!{64*)F2U0-r1bqPtHqOX^@=27SJ}8X%|_khrKz;d!9yiQkA>$j*tc zYv)9C0dAY~!k03`6JAJM%exT=Vx>e-p8^-!y8CDf zXlrHA5X%>}rQRB*?m|QG2AW~}rG3MxE9pGUv-JwpFrRt(tSbvzAw=y1MLf7Ikl652 z8-+hWW^LD0S2c@RN{hE!;3$)_A*gRB8D83-UBfio%=i(~rv`~Rf&)PO2cHpjfvElk zqW-RTpav;WZG;;1im%?H?x~(y=6yii=CVRoWjH&@b`mE`KUxP=R0Lm+mPgKp!LK-?_Yf)?61`rPygj7!dYEC@$6rI z;(64BRX$v2tRi z51&SF-+%Y#@teQA`3Pii&MgqAskj9My%|*y8>?B&+r!Zm1xO>&6|2qE83`4j+}VYZ zLeYZ=3emOn&H4CvlOv}tFI5W-X70wNdR zvt6}8wsvv!R58WnC{Ij9bUT*i2T`B^`AO&F>1cI#J4m1?fl^m-%BREarLN9+@=>&e zhni}6-E^9v?>bi=TR_dJuRD{DQ3P}~><(#JU6mc|#>r3zdfO3LW~-L`j_T3JMAbq~ zXH`7Y(`{j4S*68*5#9UIAq6mvP%)-hP&(1dTJ#)!3DXVsjt1wN7v2z#h^Z$Q1+hLCh2`#P+4oZr3&nVXf$+S898k_RwAZG{Mxp3<*EmE}w>E z&9dD!ZhD9z4KZSSO7~#tp9!pq#`>yDhDa#4j&r;=6CIxoUOc^DuE*{LVSSfea6u&a@n_@ zf%96@^KsxLPfvzx((W)G4))#L!fBjm+M){G`nP!jdEP>a?I()i&!!+Ziur-z3>w#-kZNKK#Rvc~RawishdO}CQ# zw+2Sv4zHj~q2#~|KW9!$4|ikTZ@+`zYJ1KpL)$|(4MTODJZg4dJM97^QN&Ltvui=b z-ODuAD-;Fz^FR`xoZ+rlU#%y@=PjSG&3HJ0H8J{nIw)qhaOqA>8qV$1hfxz2QyhU4 zxRQ?|on^^7pWCe@1#80jp*K-;wku&@vi0v2qC65*Q;Cd4>|Iuu#JO8AAhpc7aROju zQ#lf(rXzuTc5cFOhg)gG=mOiSy7abp7M!Hf;Ge*7mv4#4*=uS0uV`yD5habo!NJ

    d=JmZ<;iw))=Oz(>!PC5e> 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
    : +/** + * @brief The application entry point. + * @retval int + */ +int main(void) +{ + 800014c: b580 push {r7, lr} + 800014e: af00 add r7, sp, #0 + /* USER CODE END 1 */ + + /* MCU Configuration--------------------------------------------------------*/ + + /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ + HAL_Init(); + 8000150: f000 f8f8 bl 8000344 + /* USER CODE BEGIN Init */ + + /* USER CODE END Init */ + + /* Configure the system clock */ + SystemClock_Config(); + 8000154: f000 f803 bl 800015e + /* USER CODE BEGIN SysInit */ + + /* USER CODE END SysInit */ + + /* Initialize all configured peripherals */ + MX_GPIO_Init(); + 8000158: f000 f846 bl 80001e8 + + /* USER CODE END 2 */ + + /* Infinite loop */ + /* USER CODE BEGIN WHILE */ + while (1) + 800015c: e7fe b.n 800015c + +0800015e : +/** + * @brief System Clock Configuration + * @retval None + */ +void SystemClock_Config(void) +{ + 800015e: b580 push {r7, lr} + 8000160: b090 sub sp, #64 ; 0x40 + 8000162: af00 add r7, sp, #0 + RCC_OscInitTypeDef RCC_OscInitStruct = {0}; + 8000164: f107 0318 add.w r3, r7, #24 + 8000168: 2228 movs r2, #40 ; 0x28 + 800016a: 2100 movs r1, #0 + 800016c: 4618 mov r0, r3 + 800016e: f000 fe3b bl 8000de8 + RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; + 8000172: 1d3b adds r3, r7, #4 + 8000174: 2200 movs r2, #0 + 8000176: 601a str r2, [r3, #0] + 8000178: 605a str r2, [r3, #4] + 800017a: 609a str r2, [r3, #8] + 800017c: 60da str r2, [r3, #12] + 800017e: 611a str r2, [r3, #16] + + /** Initializes the RCC Oscillators according to the specified parameters + * in the RCC_OscInitTypeDef structure. + */ + RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; + 8000180: 2301 movs r3, #1 + 8000182: 61bb str r3, [r7, #24] + RCC_OscInitStruct.HSEState = RCC_HSE_ON; + 8000184: f44f 3380 mov.w r3, #65536 ; 0x10000 + 8000188: 61fb str r3, [r7, #28] + RCC_OscInitStruct.HSEPredivValue = RCC_HSE_PREDIV_DIV1; + 800018a: 2300 movs r3, #0 + 800018c: 623b str r3, [r7, #32] + RCC_OscInitStruct.HSIState = RCC_HSI_ON; + 800018e: 2301 movs r3, #1 + 8000190: 62bb str r3, [r7, #40] ; 0x28 + RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; + 8000192: 2302 movs r3, #2 + 8000194: 637b str r3, [r7, #52] ; 0x34 + RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; + 8000196: f44f 3380 mov.w r3, #65536 ; 0x10000 + 800019a: 63bb str r3, [r7, #56] ; 0x38 + RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL9; + 800019c: f44f 13e0 mov.w r3, #1835008 ; 0x1c0000 + 80001a0: 63fb str r3, [r7, #60] ; 0x3c + if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) + 80001a2: f107 0318 add.w r3, r7, #24 + 80001a6: 4618 mov r0, r3 + 80001a8: f000 fa12 bl 80005d0 + 80001ac: 4603 mov r3, r0 + 80001ae: 2b00 cmp r3, #0 + 80001b0: d001 beq.n 80001b6 + { + Error_Handler(); + 80001b2: f000 f83b bl 800022c + } + + /** Initializes the CPU, AHB and APB buses clocks + */ + RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK + 80001b6: 230f movs r3, #15 + 80001b8: 607b str r3, [r7, #4] + |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; + RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; + 80001ba: 2302 movs r3, #2 + 80001bc: 60bb str r3, [r7, #8] + RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; + 80001be: 2300 movs r3, #0 + 80001c0: 60fb str r3, [r7, #12] + RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2; + 80001c2: f44f 6380 mov.w r3, #1024 ; 0x400 + 80001c6: 613b str r3, [r7, #16] + RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; + 80001c8: 2300 movs r3, #0 + 80001ca: 617b str r3, [r7, #20] + + if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) + 80001cc: 1d3b adds r3, r7, #4 + 80001ce: 2102 movs r1, #2 + 80001d0: 4618 mov r0, r3 + 80001d2: f000 fc7d bl 8000ad0 + 80001d6: 4603 mov r3, r0 + 80001d8: 2b00 cmp r3, #0 + 80001da: d001 beq.n 80001e0 + { + Error_Handler(); + 80001dc: f000 f826 bl 800022c + } +} + 80001e0: bf00 nop + 80001e2: 3740 adds r7, #64 ; 0x40 + 80001e4: 46bd mov sp, r7 + 80001e6: bd80 pop {r7, pc} + +080001e8 : + * @brief GPIO Initialization Function + * @param None + * @retval None + */ +static void MX_GPIO_Init(void) +{ + 80001e8: b480 push {r7} + 80001ea: b083 sub sp, #12 + 80001ec: af00 add r7, sp, #0 + + /* GPIO Ports Clock Enable */ + __HAL_RCC_GPIOD_CLK_ENABLE(); + 80001ee: 4b0e ldr r3, [pc, #56] ; (8000228 ) + 80001f0: 699b ldr r3, [r3, #24] + 80001f2: 4a0d ldr r2, [pc, #52] ; (8000228 ) + 80001f4: f043 0320 orr.w r3, r3, #32 + 80001f8: 6193 str r3, [r2, #24] + 80001fa: 4b0b ldr r3, [pc, #44] ; (8000228 ) + 80001fc: 699b ldr r3, [r3, #24] + 80001fe: f003 0320 and.w r3, r3, #32 + 8000202: 607b str r3, [r7, #4] + 8000204: 687b ldr r3, [r7, #4] + __HAL_RCC_GPIOA_CLK_ENABLE(); + 8000206: 4b08 ldr r3, [pc, #32] ; (8000228 ) + 8000208: 699b ldr r3, [r3, #24] + 800020a: 4a07 ldr r2, [pc, #28] ; (8000228 ) + 800020c: f043 0304 orr.w r3, r3, #4 + 8000210: 6193 str r3, [r2, #24] + 8000212: 4b05 ldr r3, [pc, #20] ; (8000228 ) + 8000214: 699b ldr r3, [r3, #24] + 8000216: f003 0304 and.w r3, r3, #4 + 800021a: 603b str r3, [r7, #0] + 800021c: 683b ldr r3, [r7, #0] + +} + 800021e: bf00 nop + 8000220: 370c adds r7, #12 + 8000222: 46bd mov sp, r7 + 8000224: bc80 pop {r7} + 8000226: 4770 bx lr + 8000228: 40021000 .word 0x40021000 + +0800022c : +/** + * @brief This function is executed in case of error occurrence. + * @retval None + */ +void Error_Handler(void) +{ + 800022c: b480 push {r7} + 800022e: af00 add r7, sp, #0 + \details Disables IRQ interrupts by setting the I-bit in the CPSR. + Can only be executed in Privileged modes. + */ +__STATIC_FORCEINLINE void __disable_irq(void) +{ + __ASM volatile ("cpsid i" : : : "memory"); + 8000230: b672 cpsid i +} + 8000232: bf00 nop + /* USER CODE BEGIN Error_Handler_Debug */ + /* User can add his own implementation to report the HAL error return state */ + __disable_irq(); + while (1) + 8000234: e7fe b.n 8000234 + ... + +08000238 : +/* USER CODE END 0 */ +/** + * Initializes the Global MSP. + */ +void HAL_MspInit(void) +{ + 8000238: b480 push {r7} + 800023a: b085 sub sp, #20 + 800023c: af00 add r7, sp, #0 + /* USER CODE BEGIN MspInit 0 */ + + /* USER CODE END MspInit 0 */ + + __HAL_RCC_AFIO_CLK_ENABLE(); + 800023e: 4b15 ldr r3, [pc, #84] ; (8000294 ) + 8000240: 699b ldr r3, [r3, #24] + 8000242: 4a14 ldr r2, [pc, #80] ; (8000294 ) + 8000244: f043 0301 orr.w r3, r3, #1 + 8000248: 6193 str r3, [r2, #24] + 800024a: 4b12 ldr r3, [pc, #72] ; (8000294 ) + 800024c: 699b ldr r3, [r3, #24] + 800024e: f003 0301 and.w r3, r3, #1 + 8000252: 60bb str r3, [r7, #8] + 8000254: 68bb ldr r3, [r7, #8] + __HAL_RCC_PWR_CLK_ENABLE(); + 8000256: 4b0f ldr r3, [pc, #60] ; (8000294 ) + 8000258: 69db ldr r3, [r3, #28] + 800025a: 4a0e ldr r2, [pc, #56] ; (8000294 ) + 800025c: f043 5380 orr.w r3, r3, #268435456 ; 0x10000000 + 8000260: 61d3 str r3, [r2, #28] + 8000262: 4b0c ldr r3, [pc, #48] ; (8000294 ) + 8000264: 69db ldr r3, [r3, #28] + 8000266: f003 5380 and.w r3, r3, #268435456 ; 0x10000000 + 800026a: 607b str r3, [r7, #4] + 800026c: 687b ldr r3, [r7, #4] + + /* System interrupt init*/ + + /** NOJTAG: JTAG-DP Disabled and SW-DP Enabled + */ + __HAL_AFIO_REMAP_SWJ_NOJTAG(); + 800026e: 4b0a ldr r3, [pc, #40] ; (8000298 ) + 8000270: 685b ldr r3, [r3, #4] + 8000272: 60fb str r3, [r7, #12] + 8000274: 68fb ldr r3, [r7, #12] + 8000276: f023 63e0 bic.w r3, r3, #117440512 ; 0x7000000 + 800027a: 60fb str r3, [r7, #12] + 800027c: 68fb ldr r3, [r7, #12] + 800027e: f043 7300 orr.w r3, r3, #33554432 ; 0x2000000 + 8000282: 60fb str r3, [r7, #12] + 8000284: 4a04 ldr r2, [pc, #16] ; (8000298 ) + 8000286: 68fb ldr r3, [r7, #12] + 8000288: 6053 str r3, [r2, #4] + + /* USER CODE BEGIN MspInit 1 */ + + /* USER CODE END MspInit 1 */ +} + 800028a: bf00 nop + 800028c: 3714 adds r7, #20 + 800028e: 46bd mov sp, r7 + 8000290: bc80 pop {r7} + 8000292: 4770 bx lr + 8000294: 40021000 .word 0x40021000 + 8000298: 40010000 .word 0x40010000 + +0800029c : +/******************************************************************************/ +/** + * @brief This function handles Non maskable interrupt. + */ +void NMI_Handler(void) +{ + 800029c: b480 push {r7} + 800029e: af00 add r7, sp, #0 + /* USER CODE BEGIN NonMaskableInt_IRQn 0 */ + + /* USER CODE END NonMaskableInt_IRQn 0 */ + /* USER CODE BEGIN NonMaskableInt_IRQn 1 */ + while (1) + 80002a0: e7fe b.n 80002a0 + +080002a2 : + +/** + * @brief This function handles Hard fault interrupt. + */ +void HardFault_Handler(void) +{ + 80002a2: b480 push {r7} + 80002a4: af00 add r7, sp, #0 + /* USER CODE BEGIN HardFault_IRQn 0 */ + + /* USER CODE END HardFault_IRQn 0 */ + while (1) + 80002a6: e7fe b.n 80002a6 + +080002a8 : + +/** + * @brief This function handles Memory management fault. + */ +void MemManage_Handler(void) +{ + 80002a8: b480 push {r7} + 80002aa: af00 add r7, sp, #0 + /* USER CODE BEGIN MemoryManagement_IRQn 0 */ + + /* USER CODE END MemoryManagement_IRQn 0 */ + while (1) + 80002ac: e7fe b.n 80002ac + +080002ae : + +/** + * @brief This function handles Prefetch fault, memory access fault. + */ +void BusFault_Handler(void) +{ + 80002ae: b480 push {r7} + 80002b0: af00 add r7, sp, #0 + /* USER CODE BEGIN BusFault_IRQn 0 */ + + /* USER CODE END BusFault_IRQn 0 */ + while (1) + 80002b2: e7fe b.n 80002b2 + +080002b4 : + +/** + * @brief This function handles Undefined instruction or illegal state. + */ +void UsageFault_Handler(void) +{ + 80002b4: b480 push {r7} + 80002b6: af00 add r7, sp, #0 + /* USER CODE BEGIN UsageFault_IRQn 0 */ + + /* USER CODE END UsageFault_IRQn 0 */ + while (1) + 80002b8: e7fe b.n 80002b8 + +080002ba : + +/** + * @brief This function handles System service call via SWI instruction. + */ +void SVC_Handler(void) +{ + 80002ba: b480 push {r7} + 80002bc: af00 add r7, sp, #0 + + /* USER CODE END SVCall_IRQn 0 */ + /* USER CODE BEGIN SVCall_IRQn 1 */ + + /* USER CODE END SVCall_IRQn 1 */ +} + 80002be: bf00 nop + 80002c0: 46bd mov sp, r7 + 80002c2: bc80 pop {r7} + 80002c4: 4770 bx lr + +080002c6 : + +/** + * @brief This function handles Debug monitor. + */ +void DebugMon_Handler(void) +{ + 80002c6: b480 push {r7} + 80002c8: af00 add r7, sp, #0 + + /* USER CODE END DebugMonitor_IRQn 0 */ + /* USER CODE BEGIN DebugMonitor_IRQn 1 */ + + /* USER CODE END DebugMonitor_IRQn 1 */ +} + 80002ca: bf00 nop + 80002cc: 46bd mov sp, r7 + 80002ce: bc80 pop {r7} + 80002d0: 4770 bx lr + +080002d2 : + +/** + * @brief This function handles Pendable request for system service. + */ +void PendSV_Handler(void) +{ + 80002d2: b480 push {r7} + 80002d4: af00 add r7, sp, #0 + + /* USER CODE END PendSV_IRQn 0 */ + /* USER CODE BEGIN PendSV_IRQn 1 */ + + /* USER CODE END PendSV_IRQn 1 */ +} + 80002d6: bf00 nop + 80002d8: 46bd mov sp, r7 + 80002da: bc80 pop {r7} + 80002dc: 4770 bx lr + +080002de : + +/** + * @brief This function handles System tick timer. + */ +void SysTick_Handler(void) +{ + 80002de: b580 push {r7, lr} + 80002e0: af00 add r7, sp, #0 + /* USER CODE BEGIN SysTick_IRQn 0 */ + + /* USER CODE END SysTick_IRQn 0 */ + HAL_IncTick(); + 80002e2: f000 f875 bl 80003d0 + /* USER CODE BEGIN SysTick_IRQn 1 */ + + /* USER CODE END SysTick_IRQn 1 */ +} + 80002e6: bf00 nop + 80002e8: bd80 pop {r7, pc} + +080002ea : + * @note This function should be used only after reset. + * @param None + * @retval None + */ +void SystemInit (void) +{ + 80002ea: b480 push {r7} + 80002ec: af00 add r7, sp, #0 + + /* Configure the Vector Table location -------------------------------------*/ +#if defined(USER_VECT_TAB_ADDRESS) + SCB->VTOR = VECT_TAB_BASE_ADDRESS | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM. */ +#endif /* USER_VECT_TAB_ADDRESS */ +} + 80002ee: bf00 nop + 80002f0: 46bd mov sp, r7 + 80002f2: bc80 pop {r7} + 80002f4: 4770 bx lr + ... + +080002f8 : + .weak Reset_Handler + .type Reset_Handler, %function +Reset_Handler: + +/* Copy the data segment initializers from flash to SRAM */ + ldr r0, =_sdata + 80002f8: 480c ldr r0, [pc, #48] ; (800032c ) + ldr r1, =_edata + 80002fa: 490d ldr r1, [pc, #52] ; (8000330 ) + ldr r2, =_sidata + 80002fc: 4a0d ldr r2, [pc, #52] ; (8000334 ) + movs r3, #0 + 80002fe: 2300 movs r3, #0 + b LoopCopyDataInit + 8000300: e002 b.n 8000308 + +08000302 : + +CopyDataInit: + ldr r4, [r2, r3] + 8000302: 58d4 ldr r4, [r2, r3] + str r4, [r0, r3] + 8000304: 50c4 str r4, [r0, r3] + adds r3, r3, #4 + 8000306: 3304 adds r3, #4 + +08000308 : + +LoopCopyDataInit: + adds r4, r0, r3 + 8000308: 18c4 adds r4, r0, r3 + cmp r4, r1 + 800030a: 428c cmp r4, r1 + bcc CopyDataInit + 800030c: d3f9 bcc.n 8000302 + +/* Zero fill the bss segment. */ + ldr r2, =_sbss + 800030e: 4a0a ldr r2, [pc, #40] ; (8000338 ) + ldr r4, =_ebss + 8000310: 4c0a ldr r4, [pc, #40] ; (800033c ) + movs r3, #0 + 8000312: 2300 movs r3, #0 + b LoopFillZerobss + 8000314: e001 b.n 800031a + +08000316 : + +FillZerobss: + str r3, [r2] + 8000316: 6013 str r3, [r2, #0] + adds r2, r2, #4 + 8000318: 3204 adds r2, #4 + +0800031a : + +LoopFillZerobss: + cmp r2, r4 + 800031a: 42a2 cmp r2, r4 + bcc FillZerobss + 800031c: d3fb bcc.n 8000316 + +/* Call the clock system intitialization function.*/ + bl SystemInit + 800031e: f7ff ffe4 bl 80002ea +/* Call static constructors */ + bl __libc_init_array + 8000322: f000 fd3d bl 8000da0 <__libc_init_array> +/* Call the application's entry point.*/ + bl main + 8000326: f7ff ff11 bl 800014c
    + bx lr + 800032a: 4770 bx lr + ldr r0, =_sdata + 800032c: 20000000 .word 0x20000000 + ldr r1, =_edata + 8000330: 2000000c .word 0x2000000c + ldr r2, =_sidata + 8000334: 08000e38 .word 0x08000e38 + ldr r2, =_sbss + 8000338: 2000000c .word 0x2000000c + ldr r4, =_ebss + 800033c: 2000002c .word 0x2000002c + +08000340 : + * @retval : None +*/ + .section .text.Default_Handler,"ax",%progbits +Default_Handler: +Infinite_Loop: + b Infinite_Loop + 8000340: e7fe b.n 8000340 + ... + +08000344 : + * need to ensure that the SysTick time base is always set to 1 millisecond + * to have correct HAL operation. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_Init(void) +{ + 8000344: b580 push {r7, lr} + 8000346: af00 add r7, sp, #0 + defined(STM32F102x6) || defined(STM32F102xB) || \ + defined(STM32F103x6) || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) || \ + defined(STM32F105xC) || defined(STM32F107xC) + + /* Prefetch buffer is not available on value line devices */ + __HAL_FLASH_PREFETCH_BUFFER_ENABLE(); + 8000348: 4b08 ldr r3, [pc, #32] ; (800036c ) + 800034a: 681b ldr r3, [r3, #0] + 800034c: 4a07 ldr r2, [pc, #28] ; (800036c ) + 800034e: f043 0310 orr.w r3, r3, #16 + 8000352: 6013 str r3, [r2, #0] +#endif +#endif /* PREFETCH_ENABLE */ + + /* Set Interrupt Group Priority */ + HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4); + 8000354: 2003 movs r0, #3 + 8000356: f000 f907 bl 8000568 + + /* Use systick as time base source and configure 1ms tick (default clock after Reset is HSI) */ + HAL_InitTick(TICK_INT_PRIORITY); + 800035a: 200f movs r0, #15 + 800035c: f000 f808 bl 8000370 + + /* Init the low level hardware */ + HAL_MspInit(); + 8000360: f7ff ff6a bl 8000238 + + /* Return function status */ + return HAL_OK; + 8000364: 2300 movs r3, #0 +} + 8000366: 4618 mov r0, r3 + 8000368: bd80 pop {r7, pc} + 800036a: bf00 nop + 800036c: 40022000 .word 0x40022000 + +08000370 : + * implementation in user file. + * @param TickPriority Tick interrupt priority. + * @retval HAL status + */ +__weak HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority) +{ + 8000370: b580 push {r7, lr} + 8000372: b082 sub sp, #8 + 8000374: af00 add r7, sp, #0 + 8000376: 6078 str r0, [r7, #4] + /* Configure the SysTick to have interrupt in 1ms time basis*/ + if (HAL_SYSTICK_Config(SystemCoreClock / (1000U / uwTickFreq)) > 0U) + 8000378: 4b12 ldr r3, [pc, #72] ; (80003c4 ) + 800037a: 681a ldr r2, [r3, #0] + 800037c: 4b12 ldr r3, [pc, #72] ; (80003c8 ) + 800037e: 781b ldrb r3, [r3, #0] + 8000380: 4619 mov r1, r3 + 8000382: f44f 737a mov.w r3, #1000 ; 0x3e8 + 8000386: fbb3 f3f1 udiv r3, r3, r1 + 800038a: fbb2 f3f3 udiv r3, r2, r3 + 800038e: 4618 mov r0, r3 + 8000390: f000 f911 bl 80005b6 + 8000394: 4603 mov r3, r0 + 8000396: 2b00 cmp r3, #0 + 8000398: d001 beq.n 800039e + { + return HAL_ERROR; + 800039a: 2301 movs r3, #1 + 800039c: e00e b.n 80003bc + } + + /* Configure the SysTick IRQ priority */ + if (TickPriority < (1UL << __NVIC_PRIO_BITS)) + 800039e: 687b ldr r3, [r7, #4] + 80003a0: 2b0f cmp r3, #15 + 80003a2: d80a bhi.n 80003ba + { + HAL_NVIC_SetPriority(SysTick_IRQn, TickPriority, 0U); + 80003a4: 2200 movs r2, #0 + 80003a6: 6879 ldr r1, [r7, #4] + 80003a8: f04f 30ff mov.w r0, #4294967295 + 80003ac: f000 f8e7 bl 800057e + uwTickPrio = TickPriority; + 80003b0: 4a06 ldr r2, [pc, #24] ; (80003cc ) + 80003b2: 687b ldr r3, [r7, #4] + 80003b4: 6013 str r3, [r2, #0] + { + return HAL_ERROR; + } + + /* Return function status */ + return HAL_OK; + 80003b6: 2300 movs r3, #0 + 80003b8: e000 b.n 80003bc + return HAL_ERROR; + 80003ba: 2301 movs r3, #1 +} + 80003bc: 4618 mov r0, r3 + 80003be: 3708 adds r7, #8 + 80003c0: 46bd mov sp, r7 + 80003c2: bd80 pop {r7, pc} + 80003c4: 20000000 .word 0x20000000 + 80003c8: 20000008 .word 0x20000008 + 80003cc: 20000004 .word 0x20000004 + +080003d0 : + * @note This function is declared as __weak to be overwritten in case of other + * implementations in user file. + * @retval None + */ +__weak void HAL_IncTick(void) +{ + 80003d0: b480 push {r7} + 80003d2: af00 add r7, sp, #0 + uwTick += uwTickFreq; + 80003d4: 4b05 ldr r3, [pc, #20] ; (80003ec ) + 80003d6: 781b ldrb r3, [r3, #0] + 80003d8: 461a mov r2, r3 + 80003da: 4b05 ldr r3, [pc, #20] ; (80003f0 ) + 80003dc: 681b ldr r3, [r3, #0] + 80003de: 4413 add r3, r2 + 80003e0: 4a03 ldr r2, [pc, #12] ; (80003f0 ) + 80003e2: 6013 str r3, [r2, #0] +} + 80003e4: bf00 nop + 80003e6: 46bd mov sp, r7 + 80003e8: bc80 pop {r7} + 80003ea: 4770 bx lr + 80003ec: 20000008 .word 0x20000008 + 80003f0: 20000028 .word 0x20000028 + +080003f4 : + * @note This function is declared as __weak to be overwritten in case of other + * implementations in user file. + * @retval tick value + */ +__weak uint32_t HAL_GetTick(void) +{ + 80003f4: b480 push {r7} + 80003f6: af00 add r7, sp, #0 + return uwTick; + 80003f8: 4b02 ldr r3, [pc, #8] ; (8000404 ) + 80003fa: 681b ldr r3, [r3, #0] +} + 80003fc: 4618 mov r0, r3 + 80003fe: 46bd mov sp, r7 + 8000400: bc80 pop {r7} + 8000402: 4770 bx lr + 8000404: 20000028 .word 0x20000028 + +08000408 <__NVIC_SetPriorityGrouping>: + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Priority grouping field. + */ +__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) +{ + 8000408: b480 push {r7} + 800040a: b085 sub sp, #20 + 800040c: af00 add r7, sp, #0 + 800040e: 6078 str r0, [r7, #4] + uint32_t reg_value; + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + 8000410: 687b ldr r3, [r7, #4] + 8000412: f003 0307 and.w r3, r3, #7 + 8000416: 60fb str r3, [r7, #12] + + reg_value = SCB->AIRCR; /* read old register configuration */ + 8000418: 4b0c ldr r3, [pc, #48] ; (800044c <__NVIC_SetPriorityGrouping+0x44>) + 800041a: 68db ldr r3, [r3, #12] + 800041c: 60bb str r3, [r7, #8] + reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ + 800041e: 68ba ldr r2, [r7, #8] + 8000420: f64f 03ff movw r3, #63743 ; 0xf8ff + 8000424: 4013 ands r3, r2 + 8000426: 60bb str r3, [r7, #8] + reg_value = (reg_value | + ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (PriorityGroupTmp << SCB_AIRCR_PRIGROUP_Pos) ); /* Insert write key and priority group */ + 8000428: 68fb ldr r3, [r7, #12] + 800042a: 021a lsls r2, r3, #8 + ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + 800042c: 68bb ldr r3, [r7, #8] + 800042e: 4313 orrs r3, r2 + reg_value = (reg_value | + 8000430: f043 63bf orr.w r3, r3, #100139008 ; 0x5f80000 + 8000434: f443 3300 orr.w r3, r3, #131072 ; 0x20000 + 8000438: 60bb str r3, [r7, #8] + SCB->AIRCR = reg_value; + 800043a: 4a04 ldr r2, [pc, #16] ; (800044c <__NVIC_SetPriorityGrouping+0x44>) + 800043c: 68bb ldr r3, [r7, #8] + 800043e: 60d3 str r3, [r2, #12] +} + 8000440: bf00 nop + 8000442: 3714 adds r7, #20 + 8000444: 46bd mov sp, r7 + 8000446: bc80 pop {r7} + 8000448: 4770 bx lr + 800044a: bf00 nop + 800044c: e000ed00 .word 0xe000ed00 + +08000450 <__NVIC_GetPriorityGrouping>: + \brief Get Priority Grouping + \details Reads the priority grouping field from the NVIC Interrupt Controller. + \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). + */ +__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) +{ + 8000450: b480 push {r7} + 8000452: af00 add r7, sp, #0 + return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); + 8000454: 4b04 ldr r3, [pc, #16] ; (8000468 <__NVIC_GetPriorityGrouping+0x18>) + 8000456: 68db ldr r3, [r3, #12] + 8000458: 0a1b lsrs r3, r3, #8 + 800045a: f003 0307 and.w r3, r3, #7 +} + 800045e: 4618 mov r0, r3 + 8000460: 46bd mov sp, r7 + 8000462: bc80 pop {r7} + 8000464: 4770 bx lr + 8000466: bf00 nop + 8000468: e000ed00 .word 0xe000ed00 + +0800046c <__NVIC_SetPriority>: + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + 800046c: b480 push {r7} + 800046e: b083 sub sp, #12 + 8000470: af00 add r7, sp, #0 + 8000472: 4603 mov r3, r0 + 8000474: 6039 str r1, [r7, #0] + 8000476: 71fb strb r3, [r7, #7] + if ((int32_t)(IRQn) >= 0) + 8000478: f997 3007 ldrsb.w r3, [r7, #7] + 800047c: 2b00 cmp r3, #0 + 800047e: db0a blt.n 8000496 <__NVIC_SetPriority+0x2a> + { + NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + 8000480: 683b ldr r3, [r7, #0] + 8000482: b2da uxtb r2, r3 + 8000484: 490c ldr r1, [pc, #48] ; (80004b8 <__NVIC_SetPriority+0x4c>) + 8000486: f997 3007 ldrsb.w r3, [r7, #7] + 800048a: 0112 lsls r2, r2, #4 + 800048c: b2d2 uxtb r2, r2 + 800048e: 440b add r3, r1 + 8000490: f883 2300 strb.w r2, [r3, #768] ; 0x300 + } + else + { + SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } +} + 8000494: e00a b.n 80004ac <__NVIC_SetPriority+0x40> + SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + 8000496: 683b ldr r3, [r7, #0] + 8000498: b2da uxtb r2, r3 + 800049a: 4908 ldr r1, [pc, #32] ; (80004bc <__NVIC_SetPriority+0x50>) + 800049c: 79fb ldrb r3, [r7, #7] + 800049e: f003 030f and.w r3, r3, #15 + 80004a2: 3b04 subs r3, #4 + 80004a4: 0112 lsls r2, r2, #4 + 80004a6: b2d2 uxtb r2, r2 + 80004a8: 440b add r3, r1 + 80004aa: 761a strb r2, [r3, #24] +} + 80004ac: bf00 nop + 80004ae: 370c adds r7, #12 + 80004b0: 46bd mov sp, r7 + 80004b2: bc80 pop {r7} + 80004b4: 4770 bx lr + 80004b6: bf00 nop + 80004b8: e000e100 .word 0xe000e100 + 80004bc: e000ed00 .word 0xe000ed00 + +080004c0 : + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + 80004c0: b480 push {r7} + 80004c2: b089 sub sp, #36 ; 0x24 + 80004c4: af00 add r7, sp, #0 + 80004c6: 60f8 str r0, [r7, #12] + 80004c8: 60b9 str r1, [r7, #8] + 80004ca: 607a str r2, [r7, #4] + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + 80004cc: 68fb ldr r3, [r7, #12] + 80004ce: f003 0307 and.w r3, r3, #7 + 80004d2: 61fb str r3, [r7, #28] + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + 80004d4: 69fb ldr r3, [r7, #28] + 80004d6: f1c3 0307 rsb r3, r3, #7 + 80004da: 2b04 cmp r3, #4 + 80004dc: bf28 it cs + 80004de: 2304 movcs r3, #4 + 80004e0: 61bb str r3, [r7, #24] + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + 80004e2: 69fb ldr r3, [r7, #28] + 80004e4: 3304 adds r3, #4 + 80004e6: 2b06 cmp r3, #6 + 80004e8: d902 bls.n 80004f0 + 80004ea: 69fb ldr r3, [r7, #28] + 80004ec: 3b03 subs r3, #3 + 80004ee: e000 b.n 80004f2 + 80004f0: 2300 movs r3, #0 + 80004f2: 617b str r3, [r7, #20] + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + 80004f4: f04f 32ff mov.w r2, #4294967295 + 80004f8: 69bb ldr r3, [r7, #24] + 80004fa: fa02 f303 lsl.w r3, r2, r3 + 80004fe: 43da mvns r2, r3 + 8000500: 68bb ldr r3, [r7, #8] + 8000502: 401a ands r2, r3 + 8000504: 697b ldr r3, [r7, #20] + 8000506: 409a lsls r2, r3 + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + 8000508: f04f 31ff mov.w r1, #4294967295 + 800050c: 697b ldr r3, [r7, #20] + 800050e: fa01 f303 lsl.w r3, r1, r3 + 8000512: 43d9 mvns r1, r3 + 8000514: 687b ldr r3, [r7, #4] + 8000516: 400b ands r3, r1 + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + 8000518: 4313 orrs r3, r2 + ); +} + 800051a: 4618 mov r0, r3 + 800051c: 3724 adds r7, #36 ; 0x24 + 800051e: 46bd mov sp, r7 + 8000520: bc80 pop {r7} + 8000522: 4770 bx lr + +08000524 : + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + 8000524: b580 push {r7, lr} + 8000526: b082 sub sp, #8 + 8000528: af00 add r7, sp, #0 + 800052a: 6078 str r0, [r7, #4] + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + 800052c: 687b ldr r3, [r7, #4] + 800052e: 3b01 subs r3, #1 + 8000530: f1b3 7f80 cmp.w r3, #16777216 ; 0x1000000 + 8000534: d301 bcc.n 800053a + { + return (1UL); /* Reload value impossible */ + 8000536: 2301 movs r3, #1 + 8000538: e00f b.n 800055a + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + 800053a: 4a0a ldr r2, [pc, #40] ; (8000564 ) + 800053c: 687b ldr r3, [r7, #4] + 800053e: 3b01 subs r3, #1 + 8000540: 6053 str r3, [r2, #4] + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + 8000542: 210f movs r1, #15 + 8000544: f04f 30ff mov.w r0, #4294967295 + 8000548: f7ff ff90 bl 800046c <__NVIC_SetPriority> + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + 800054c: 4b05 ldr r3, [pc, #20] ; (8000564 ) + 800054e: 2200 movs r2, #0 + 8000550: 609a str r2, [r3, #8] + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + 8000552: 4b04 ldr r3, [pc, #16] ; (8000564 ) + 8000554: 2207 movs r2, #7 + 8000556: 601a str r2, [r3, #0] + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ + 8000558: 2300 movs r3, #0 +} + 800055a: 4618 mov r0, r3 + 800055c: 3708 adds r7, #8 + 800055e: 46bd mov sp, r7 + 8000560: bd80 pop {r7, pc} + 8000562: bf00 nop + 8000564: e000e010 .word 0xe000e010 + +08000568 : + * @note When the NVIC_PriorityGroup_0 is selected, IRQ preemption is no more possible. + * The pending IRQ priority will be managed only by the subpriority. + * @retval None + */ +void HAL_NVIC_SetPriorityGrouping(uint32_t PriorityGroup) +{ + 8000568: b580 push {r7, lr} + 800056a: b082 sub sp, #8 + 800056c: af00 add r7, sp, #0 + 800056e: 6078 str r0, [r7, #4] + /* Check the parameters */ + assert_param(IS_NVIC_PRIORITY_GROUP(PriorityGroup)); + + /* Set the PRIGROUP[10:8] bits according to the PriorityGroup parameter value */ + NVIC_SetPriorityGrouping(PriorityGroup); + 8000570: 6878 ldr r0, [r7, #4] + 8000572: f7ff ff49 bl 8000408 <__NVIC_SetPriorityGrouping> +} + 8000576: bf00 nop + 8000578: 3708 adds r7, #8 + 800057a: 46bd mov sp, r7 + 800057c: bd80 pop {r7, pc} + +0800057e : + * This parameter can be a value between 0 and 15 + * A lower priority value indicates a higher priority. + * @retval None + */ +void HAL_NVIC_SetPriority(IRQn_Type IRQn, uint32_t PreemptPriority, uint32_t SubPriority) +{ + 800057e: b580 push {r7, lr} + 8000580: b086 sub sp, #24 + 8000582: af00 add r7, sp, #0 + 8000584: 4603 mov r3, r0 + 8000586: 60b9 str r1, [r7, #8] + 8000588: 607a str r2, [r7, #4] + 800058a: 73fb strb r3, [r7, #15] + uint32_t prioritygroup = 0x00U; + 800058c: 2300 movs r3, #0 + 800058e: 617b str r3, [r7, #20] + + /* Check the parameters */ + assert_param(IS_NVIC_SUB_PRIORITY(SubPriority)); + assert_param(IS_NVIC_PREEMPTION_PRIORITY(PreemptPriority)); + + prioritygroup = NVIC_GetPriorityGrouping(); + 8000590: f7ff ff5e bl 8000450 <__NVIC_GetPriorityGrouping> + 8000594: 6178 str r0, [r7, #20] + + NVIC_SetPriority(IRQn, NVIC_EncodePriority(prioritygroup, PreemptPriority, SubPriority)); + 8000596: 687a ldr r2, [r7, #4] + 8000598: 68b9 ldr r1, [r7, #8] + 800059a: 6978 ldr r0, [r7, #20] + 800059c: f7ff ff90 bl 80004c0 + 80005a0: 4602 mov r2, r0 + 80005a2: f997 300f ldrsb.w r3, [r7, #15] + 80005a6: 4611 mov r1, r2 + 80005a8: 4618 mov r0, r3 + 80005aa: f7ff ff5f bl 800046c <__NVIC_SetPriority> +} + 80005ae: bf00 nop + 80005b0: 3718 adds r7, #24 + 80005b2: 46bd mov sp, r7 + 80005b4: bd80 pop {r7, pc} + +080005b6 : + * @param TicksNumb: Specifies the ticks Number of ticks between two interrupts. + * @retval status: - 0 Function succeeded. + * - 1 Function failed. + */ +uint32_t HAL_SYSTICK_Config(uint32_t TicksNumb) +{ + 80005b6: b580 push {r7, lr} + 80005b8: b082 sub sp, #8 + 80005ba: af00 add r7, sp, #0 + 80005bc: 6078 str r0, [r7, #4] + return SysTick_Config(TicksNumb); + 80005be: 6878 ldr r0, [r7, #4] + 80005c0: f7ff ffb0 bl 8000524 + 80005c4: 4603 mov r3, r0 +} + 80005c6: 4618 mov r0, r3 + 80005c8: 3708 adds r7, #8 + 80005ca: 46bd mov sp, r7 + 80005cc: bd80 pop {r7, pc} + ... + +080005d0 : + * supported by this macro. User should request a transition to HSE Off + * first and then HSE On or HSE Bypass. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_RCC_OscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct) +{ + 80005d0: b580 push {r7, lr} + 80005d2: b086 sub sp, #24 + 80005d4: af00 add r7, sp, #0 + 80005d6: 6078 str r0, [r7, #4] + uint32_t tickstart; + uint32_t pll_config; + + /* Check Null pointer */ + if (RCC_OscInitStruct == NULL) + 80005d8: 687b ldr r3, [r7, #4] + 80005da: 2b00 cmp r3, #0 + 80005dc: d101 bne.n 80005e2 + { + return HAL_ERROR; + 80005de: 2301 movs r3, #1 + 80005e0: e26c b.n 8000abc + + /* Check the parameters */ + assert_param(IS_RCC_OSCILLATORTYPE(RCC_OscInitStruct->OscillatorType)); + + /*------------------------------- HSE Configuration ------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSE) == RCC_OSCILLATORTYPE_HSE) + 80005e2: 687b ldr r3, [r7, #4] + 80005e4: 681b ldr r3, [r3, #0] + 80005e6: f003 0301 and.w r3, r3, #1 + 80005ea: 2b00 cmp r3, #0 + 80005ec: f000 8087 beq.w 80006fe + { + /* Check the parameters */ + assert_param(IS_RCC_HSE(RCC_OscInitStruct->HSEState)); + + /* When the HSE is used as system clock or clock source for PLL in these cases it is not allowed to be disabled */ + if ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_HSE) + 80005f0: 4b92 ldr r3, [pc, #584] ; (800083c ) + 80005f2: 685b ldr r3, [r3, #4] + 80005f4: f003 030c and.w r3, r3, #12 + 80005f8: 2b04 cmp r3, #4 + 80005fa: d00c beq.n 8000616 + || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSE))) + 80005fc: 4b8f ldr r3, [pc, #572] ; (800083c ) + 80005fe: 685b ldr r3, [r3, #4] + 8000600: f003 030c and.w r3, r3, #12 + 8000604: 2b08 cmp r3, #8 + 8000606: d112 bne.n 800062e + 8000608: 4b8c ldr r3, [pc, #560] ; (800083c ) + 800060a: 685b ldr r3, [r3, #4] + 800060c: f403 3380 and.w r3, r3, #65536 ; 0x10000 + 8000610: f5b3 3f80 cmp.w r3, #65536 ; 0x10000 + 8000614: d10b bne.n 800062e + { + if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) && (RCC_OscInitStruct->HSEState == RCC_HSE_OFF)) + 8000616: 4b89 ldr r3, [pc, #548] ; (800083c ) + 8000618: 681b ldr r3, [r3, #0] + 800061a: f403 3300 and.w r3, r3, #131072 ; 0x20000 + 800061e: 2b00 cmp r3, #0 + 8000620: d06c beq.n 80006fc + 8000622: 687b ldr r3, [r7, #4] + 8000624: 685b ldr r3, [r3, #4] + 8000626: 2b00 cmp r3, #0 + 8000628: d168 bne.n 80006fc + { + return HAL_ERROR; + 800062a: 2301 movs r3, #1 + 800062c: e246 b.n 8000abc + } + } + else + { + /* Set the new HSE configuration ---------------------------------------*/ + __HAL_RCC_HSE_CONFIG(RCC_OscInitStruct->HSEState); + 800062e: 687b ldr r3, [r7, #4] + 8000630: 685b ldr r3, [r3, #4] + 8000632: f5b3 3f80 cmp.w r3, #65536 ; 0x10000 + 8000636: d106 bne.n 8000646 + 8000638: 4b80 ldr r3, [pc, #512] ; (800083c ) + 800063a: 681b ldr r3, [r3, #0] + 800063c: 4a7f ldr r2, [pc, #508] ; (800083c ) + 800063e: f443 3380 orr.w r3, r3, #65536 ; 0x10000 + 8000642: 6013 str r3, [r2, #0] + 8000644: e02e b.n 80006a4 + 8000646: 687b ldr r3, [r7, #4] + 8000648: 685b ldr r3, [r3, #4] + 800064a: 2b00 cmp r3, #0 + 800064c: d10c bne.n 8000668 + 800064e: 4b7b ldr r3, [pc, #492] ; (800083c ) + 8000650: 681b ldr r3, [r3, #0] + 8000652: 4a7a ldr r2, [pc, #488] ; (800083c ) + 8000654: f423 3380 bic.w r3, r3, #65536 ; 0x10000 + 8000658: 6013 str r3, [r2, #0] + 800065a: 4b78 ldr r3, [pc, #480] ; (800083c ) + 800065c: 681b ldr r3, [r3, #0] + 800065e: 4a77 ldr r2, [pc, #476] ; (800083c ) + 8000660: f423 2380 bic.w r3, r3, #262144 ; 0x40000 + 8000664: 6013 str r3, [r2, #0] + 8000666: e01d b.n 80006a4 + 8000668: 687b ldr r3, [r7, #4] + 800066a: 685b ldr r3, [r3, #4] + 800066c: f5b3 2fa0 cmp.w r3, #327680 ; 0x50000 + 8000670: d10c bne.n 800068c + 8000672: 4b72 ldr r3, [pc, #456] ; (800083c ) + 8000674: 681b ldr r3, [r3, #0] + 8000676: 4a71 ldr r2, [pc, #452] ; (800083c ) + 8000678: f443 2380 orr.w r3, r3, #262144 ; 0x40000 + 800067c: 6013 str r3, [r2, #0] + 800067e: 4b6f ldr r3, [pc, #444] ; (800083c ) + 8000680: 681b ldr r3, [r3, #0] + 8000682: 4a6e ldr r2, [pc, #440] ; (800083c ) + 8000684: f443 3380 orr.w r3, r3, #65536 ; 0x10000 + 8000688: 6013 str r3, [r2, #0] + 800068a: e00b b.n 80006a4 + 800068c: 4b6b ldr r3, [pc, #428] ; (800083c ) + 800068e: 681b ldr r3, [r3, #0] + 8000690: 4a6a ldr r2, [pc, #424] ; (800083c ) + 8000692: f423 3380 bic.w r3, r3, #65536 ; 0x10000 + 8000696: 6013 str r3, [r2, #0] + 8000698: 4b68 ldr r3, [pc, #416] ; (800083c ) + 800069a: 681b ldr r3, [r3, #0] + 800069c: 4a67 ldr r2, [pc, #412] ; (800083c ) + 800069e: f423 2380 bic.w r3, r3, #262144 ; 0x40000 + 80006a2: 6013 str r3, [r2, #0] + + + /* Check the HSE State */ + if (RCC_OscInitStruct->HSEState != RCC_HSE_OFF) + 80006a4: 687b ldr r3, [r7, #4] + 80006a6: 685b ldr r3, [r3, #4] + 80006a8: 2b00 cmp r3, #0 + 80006aa: d013 beq.n 80006d4 + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 80006ac: f7ff fea2 bl 80003f4 + 80006b0: 6138 str r0, [r7, #16] + + /* Wait till HSE is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET) + 80006b2: e008 b.n 80006c6 + { + if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE) + 80006b4: f7ff fe9e bl 80003f4 + 80006b8: 4602 mov r2, r0 + 80006ba: 693b ldr r3, [r7, #16] + 80006bc: 1ad3 subs r3, r2, r3 + 80006be: 2b64 cmp r3, #100 ; 0x64 + 80006c0: d901 bls.n 80006c6 + { + return HAL_TIMEOUT; + 80006c2: 2303 movs r3, #3 + 80006c4: e1fa b.n 8000abc + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET) + 80006c6: 4b5d ldr r3, [pc, #372] ; (800083c ) + 80006c8: 681b ldr r3, [r3, #0] + 80006ca: f403 3300 and.w r3, r3, #131072 ; 0x20000 + 80006ce: 2b00 cmp r3, #0 + 80006d0: d0f0 beq.n 80006b4 + 80006d2: e014 b.n 80006fe + } + } + else + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 80006d4: f7ff fe8e bl 80003f4 + 80006d8: 6138 str r0, [r7, #16] + + /* Wait till HSE is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) + 80006da: e008 b.n 80006ee + { + if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE) + 80006dc: f7ff fe8a bl 80003f4 + 80006e0: 4602 mov r2, r0 + 80006e2: 693b ldr r3, [r7, #16] + 80006e4: 1ad3 subs r3, r2, r3 + 80006e6: 2b64 cmp r3, #100 ; 0x64 + 80006e8: d901 bls.n 80006ee + { + return HAL_TIMEOUT; + 80006ea: 2303 movs r3, #3 + 80006ec: e1e6 b.n 8000abc + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) + 80006ee: 4b53 ldr r3, [pc, #332] ; (800083c ) + 80006f0: 681b ldr r3, [r3, #0] + 80006f2: f403 3300 and.w r3, r3, #131072 ; 0x20000 + 80006f6: 2b00 cmp r3, #0 + 80006f8: d1f0 bne.n 80006dc + 80006fa: e000 b.n 80006fe + if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) && (RCC_OscInitStruct->HSEState == RCC_HSE_OFF)) + 80006fc: bf00 nop + } + } + } + } + /*----------------------------- HSI Configuration --------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSI) == RCC_OSCILLATORTYPE_HSI) + 80006fe: 687b ldr r3, [r7, #4] + 8000700: 681b ldr r3, [r3, #0] + 8000702: f003 0302 and.w r3, r3, #2 + 8000706: 2b00 cmp r3, #0 + 8000708: d063 beq.n 80007d2 + /* Check the parameters */ + assert_param(IS_RCC_HSI(RCC_OscInitStruct->HSIState)); + assert_param(IS_RCC_CALIBRATION_VALUE(RCC_OscInitStruct->HSICalibrationValue)); + + /* Check if HSI is used as system clock or as PLL source when PLL is selected as system clock */ + if ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_HSI) + 800070a: 4b4c ldr r3, [pc, #304] ; (800083c ) + 800070c: 685b ldr r3, [r3, #4] + 800070e: f003 030c and.w r3, r3, #12 + 8000712: 2b00 cmp r3, #0 + 8000714: d00b beq.n 800072e + || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSI_DIV2))) + 8000716: 4b49 ldr r3, [pc, #292] ; (800083c ) + 8000718: 685b ldr r3, [r3, #4] + 800071a: f003 030c and.w r3, r3, #12 + 800071e: 2b08 cmp r3, #8 + 8000720: d11c bne.n 800075c + 8000722: 4b46 ldr r3, [pc, #280] ; (800083c ) + 8000724: 685b ldr r3, [r3, #4] + 8000726: f403 3380 and.w r3, r3, #65536 ; 0x10000 + 800072a: 2b00 cmp r3, #0 + 800072c: d116 bne.n 800075c + { + /* When HSI is used as system clock it will not disabled */ + if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) && (RCC_OscInitStruct->HSIState != RCC_HSI_ON)) + 800072e: 4b43 ldr r3, [pc, #268] ; (800083c ) + 8000730: 681b ldr r3, [r3, #0] + 8000732: f003 0302 and.w r3, r3, #2 + 8000736: 2b00 cmp r3, #0 + 8000738: d005 beq.n 8000746 + 800073a: 687b ldr r3, [r7, #4] + 800073c: 691b ldr r3, [r3, #16] + 800073e: 2b01 cmp r3, #1 + 8000740: d001 beq.n 8000746 + { + return HAL_ERROR; + 8000742: 2301 movs r3, #1 + 8000744: e1ba b.n 8000abc + } + /* Otherwise, just the calibration is allowed */ + else + { + /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/ + __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->HSICalibrationValue); + 8000746: 4b3d ldr r3, [pc, #244] ; (800083c ) + 8000748: 681b ldr r3, [r3, #0] + 800074a: f023 02f8 bic.w r2, r3, #248 ; 0xf8 + 800074e: 687b ldr r3, [r7, #4] + 8000750: 695b ldr r3, [r3, #20] + 8000752: 00db lsls r3, r3, #3 + 8000754: 4939 ldr r1, [pc, #228] ; (800083c ) + 8000756: 4313 orrs r3, r2 + 8000758: 600b str r3, [r1, #0] + if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) && (RCC_OscInitStruct->HSIState != RCC_HSI_ON)) + 800075a: e03a b.n 80007d2 + } + } + else + { + /* Check the HSI State */ + if (RCC_OscInitStruct->HSIState != RCC_HSI_OFF) + 800075c: 687b ldr r3, [r7, #4] + 800075e: 691b ldr r3, [r3, #16] + 8000760: 2b00 cmp r3, #0 + 8000762: d020 beq.n 80007a6 + { + /* Enable the Internal High Speed oscillator (HSI). */ + __HAL_RCC_HSI_ENABLE(); + 8000764: 4b36 ldr r3, [pc, #216] ; (8000840 ) + 8000766: 2201 movs r2, #1 + 8000768: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 800076a: f7ff fe43 bl 80003f4 + 800076e: 6138 str r0, [r7, #16] + + /* Wait till HSI is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET) + 8000770: e008 b.n 8000784 + { + if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE) + 8000772: f7ff fe3f bl 80003f4 + 8000776: 4602 mov r2, r0 + 8000778: 693b ldr r3, [r7, #16] + 800077a: 1ad3 subs r3, r2, r3 + 800077c: 2b02 cmp r3, #2 + 800077e: d901 bls.n 8000784 + { + return HAL_TIMEOUT; + 8000780: 2303 movs r3, #3 + 8000782: e19b b.n 8000abc + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET) + 8000784: 4b2d ldr r3, [pc, #180] ; (800083c ) + 8000786: 681b ldr r3, [r3, #0] + 8000788: f003 0302 and.w r3, r3, #2 + 800078c: 2b00 cmp r3, #0 + 800078e: d0f0 beq.n 8000772 + } + } + + /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/ + __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->HSICalibrationValue); + 8000790: 4b2a ldr r3, [pc, #168] ; (800083c ) + 8000792: 681b ldr r3, [r3, #0] + 8000794: f023 02f8 bic.w r2, r3, #248 ; 0xf8 + 8000798: 687b ldr r3, [r7, #4] + 800079a: 695b ldr r3, [r3, #20] + 800079c: 00db lsls r3, r3, #3 + 800079e: 4927 ldr r1, [pc, #156] ; (800083c ) + 80007a0: 4313 orrs r3, r2 + 80007a2: 600b str r3, [r1, #0] + 80007a4: e015 b.n 80007d2 + } + else + { + /* Disable the Internal High Speed oscillator (HSI). */ + __HAL_RCC_HSI_DISABLE(); + 80007a6: 4b26 ldr r3, [pc, #152] ; (8000840 ) + 80007a8: 2200 movs r2, #0 + 80007aa: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 80007ac: f7ff fe22 bl 80003f4 + 80007b0: 6138 str r0, [r7, #16] + + /* Wait till HSI is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) + 80007b2: e008 b.n 80007c6 + { + if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE) + 80007b4: f7ff fe1e bl 80003f4 + 80007b8: 4602 mov r2, r0 + 80007ba: 693b ldr r3, [r7, #16] + 80007bc: 1ad3 subs r3, r2, r3 + 80007be: 2b02 cmp r3, #2 + 80007c0: d901 bls.n 80007c6 + { + return HAL_TIMEOUT; + 80007c2: 2303 movs r3, #3 + 80007c4: e17a b.n 8000abc + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) + 80007c6: 4b1d ldr r3, [pc, #116] ; (800083c ) + 80007c8: 681b ldr r3, [r3, #0] + 80007ca: f003 0302 and.w r3, r3, #2 + 80007ce: 2b00 cmp r3, #0 + 80007d0: d1f0 bne.n 80007b4 + } + } + } + } + /*------------------------------ LSI Configuration -------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSI) == RCC_OSCILLATORTYPE_LSI) + 80007d2: 687b ldr r3, [r7, #4] + 80007d4: 681b ldr r3, [r3, #0] + 80007d6: f003 0308 and.w r3, r3, #8 + 80007da: 2b00 cmp r3, #0 + 80007dc: d03a beq.n 8000854 + { + /* Check the parameters */ + assert_param(IS_RCC_LSI(RCC_OscInitStruct->LSIState)); + + /* Check the LSI State */ + if (RCC_OscInitStruct->LSIState != RCC_LSI_OFF) + 80007de: 687b ldr r3, [r7, #4] + 80007e0: 699b ldr r3, [r3, #24] + 80007e2: 2b00 cmp r3, #0 + 80007e4: d019 beq.n 800081a + { + /* Enable the Internal Low Speed oscillator (LSI). */ + __HAL_RCC_LSI_ENABLE(); + 80007e6: 4b17 ldr r3, [pc, #92] ; (8000844 ) + 80007e8: 2201 movs r2, #1 + 80007ea: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 80007ec: f7ff fe02 bl 80003f4 + 80007f0: 6138 str r0, [r7, #16] + + /* Wait till LSI is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) == RESET) + 80007f2: e008 b.n 8000806 + { + if ((HAL_GetTick() - tickstart) > LSI_TIMEOUT_VALUE) + 80007f4: f7ff fdfe bl 80003f4 + 80007f8: 4602 mov r2, r0 + 80007fa: 693b ldr r3, [r7, #16] + 80007fc: 1ad3 subs r3, r2, r3 + 80007fe: 2b02 cmp r3, #2 + 8000800: d901 bls.n 8000806 + { + return HAL_TIMEOUT; + 8000802: 2303 movs r3, #3 + 8000804: e15a b.n 8000abc + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) == RESET) + 8000806: 4b0d ldr r3, [pc, #52] ; (800083c ) + 8000808: 6a5b ldr r3, [r3, #36] ; 0x24 + 800080a: f003 0302 and.w r3, r3, #2 + 800080e: 2b00 cmp r3, #0 + 8000810: d0f0 beq.n 80007f4 + } + } + /* To have a fully stabilized clock in the specified range, a software delay of 1ms + should be added.*/ + RCC_Delay(1); + 8000812: 2001 movs r0, #1 + 8000814: f000 faa6 bl 8000d64 + 8000818: e01c b.n 8000854 + } + else + { + /* Disable the Internal Low Speed oscillator (LSI). */ + __HAL_RCC_LSI_DISABLE(); + 800081a: 4b0a ldr r3, [pc, #40] ; (8000844 ) + 800081c: 2200 movs r2, #0 + 800081e: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8000820: f7ff fde8 bl 80003f4 + 8000824: 6138 str r0, [r7, #16] + + /* Wait till LSI is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) != RESET) + 8000826: e00f b.n 8000848 + { + if ((HAL_GetTick() - tickstart) > LSI_TIMEOUT_VALUE) + 8000828: f7ff fde4 bl 80003f4 + 800082c: 4602 mov r2, r0 + 800082e: 693b ldr r3, [r7, #16] + 8000830: 1ad3 subs r3, r2, r3 + 8000832: 2b02 cmp r3, #2 + 8000834: d908 bls.n 8000848 + { + return HAL_TIMEOUT; + 8000836: 2303 movs r3, #3 + 8000838: e140 b.n 8000abc + 800083a: bf00 nop + 800083c: 40021000 .word 0x40021000 + 8000840: 42420000 .word 0x42420000 + 8000844: 42420480 .word 0x42420480 + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) != RESET) + 8000848: 4b9e ldr r3, [pc, #632] ; (8000ac4 ) + 800084a: 6a5b ldr r3, [r3, #36] ; 0x24 + 800084c: f003 0302 and.w r3, r3, #2 + 8000850: 2b00 cmp r3, #0 + 8000852: d1e9 bne.n 8000828 + } + } + } + } + /*------------------------------ LSE Configuration -------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSE) == RCC_OSCILLATORTYPE_LSE) + 8000854: 687b ldr r3, [r7, #4] + 8000856: 681b ldr r3, [r3, #0] + 8000858: f003 0304 and.w r3, r3, #4 + 800085c: 2b00 cmp r3, #0 + 800085e: f000 80a6 beq.w 80009ae + { + FlagStatus pwrclkchanged = RESET; + 8000862: 2300 movs r3, #0 + 8000864: 75fb strb r3, [r7, #23] + /* Check the parameters */ + assert_param(IS_RCC_LSE(RCC_OscInitStruct->LSEState)); + + /* Update LSE configuration in Backup Domain control register */ + /* Requires to enable write access to Backup Domain of necessary */ + if (__HAL_RCC_PWR_IS_CLK_DISABLED()) + 8000866: 4b97 ldr r3, [pc, #604] ; (8000ac4 ) + 8000868: 69db ldr r3, [r3, #28] + 800086a: f003 5380 and.w r3, r3, #268435456 ; 0x10000000 + 800086e: 2b00 cmp r3, #0 + 8000870: d10d bne.n 800088e + { + __HAL_RCC_PWR_CLK_ENABLE(); + 8000872: 4b94 ldr r3, [pc, #592] ; (8000ac4 ) + 8000874: 69db ldr r3, [r3, #28] + 8000876: 4a93 ldr r2, [pc, #588] ; (8000ac4 ) + 8000878: f043 5380 orr.w r3, r3, #268435456 ; 0x10000000 + 800087c: 61d3 str r3, [r2, #28] + 800087e: 4b91 ldr r3, [pc, #580] ; (8000ac4 ) + 8000880: 69db ldr r3, [r3, #28] + 8000882: f003 5380 and.w r3, r3, #268435456 ; 0x10000000 + 8000886: 60bb str r3, [r7, #8] + 8000888: 68bb ldr r3, [r7, #8] + pwrclkchanged = SET; + 800088a: 2301 movs r3, #1 + 800088c: 75fb strb r3, [r7, #23] + } + + if (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) + 800088e: 4b8e ldr r3, [pc, #568] ; (8000ac8 ) + 8000890: 681b ldr r3, [r3, #0] + 8000892: f403 7380 and.w r3, r3, #256 ; 0x100 + 8000896: 2b00 cmp r3, #0 + 8000898: d118 bne.n 80008cc + { + /* Enable write access to Backup domain */ + SET_BIT(PWR->CR, PWR_CR_DBP); + 800089a: 4b8b ldr r3, [pc, #556] ; (8000ac8 ) + 800089c: 681b ldr r3, [r3, #0] + 800089e: 4a8a ldr r2, [pc, #552] ; (8000ac8 ) + 80008a0: f443 7380 orr.w r3, r3, #256 ; 0x100 + 80008a4: 6013 str r3, [r2, #0] + + /* Wait for Backup domain Write protection disable */ + tickstart = HAL_GetTick(); + 80008a6: f7ff fda5 bl 80003f4 + 80008aa: 6138 str r0, [r7, #16] + + while (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) + 80008ac: e008 b.n 80008c0 + { + if ((HAL_GetTick() - tickstart) > RCC_DBP_TIMEOUT_VALUE) + 80008ae: f7ff fda1 bl 80003f4 + 80008b2: 4602 mov r2, r0 + 80008b4: 693b ldr r3, [r7, #16] + 80008b6: 1ad3 subs r3, r2, r3 + 80008b8: 2b64 cmp r3, #100 ; 0x64 + 80008ba: d901 bls.n 80008c0 + { + return HAL_TIMEOUT; + 80008bc: 2303 movs r3, #3 + 80008be: e0fd b.n 8000abc + while (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) + 80008c0: 4b81 ldr r3, [pc, #516] ; (8000ac8 ) + 80008c2: 681b ldr r3, [r3, #0] + 80008c4: f403 7380 and.w r3, r3, #256 ; 0x100 + 80008c8: 2b00 cmp r3, #0 + 80008ca: d0f0 beq.n 80008ae + } + } + } + + /* Set the new LSE configuration -----------------------------------------*/ + __HAL_RCC_LSE_CONFIG(RCC_OscInitStruct->LSEState); + 80008cc: 687b ldr r3, [r7, #4] + 80008ce: 68db ldr r3, [r3, #12] + 80008d0: 2b01 cmp r3, #1 + 80008d2: d106 bne.n 80008e2 + 80008d4: 4b7b ldr r3, [pc, #492] ; (8000ac4 ) + 80008d6: 6a1b ldr r3, [r3, #32] + 80008d8: 4a7a ldr r2, [pc, #488] ; (8000ac4 ) + 80008da: f043 0301 orr.w r3, r3, #1 + 80008de: 6213 str r3, [r2, #32] + 80008e0: e02d b.n 800093e + 80008e2: 687b ldr r3, [r7, #4] + 80008e4: 68db ldr r3, [r3, #12] + 80008e6: 2b00 cmp r3, #0 + 80008e8: d10c bne.n 8000904 + 80008ea: 4b76 ldr r3, [pc, #472] ; (8000ac4 ) + 80008ec: 6a1b ldr r3, [r3, #32] + 80008ee: 4a75 ldr r2, [pc, #468] ; (8000ac4 ) + 80008f0: f023 0301 bic.w r3, r3, #1 + 80008f4: 6213 str r3, [r2, #32] + 80008f6: 4b73 ldr r3, [pc, #460] ; (8000ac4 ) + 80008f8: 6a1b ldr r3, [r3, #32] + 80008fa: 4a72 ldr r2, [pc, #456] ; (8000ac4 ) + 80008fc: f023 0304 bic.w r3, r3, #4 + 8000900: 6213 str r3, [r2, #32] + 8000902: e01c b.n 800093e + 8000904: 687b ldr r3, [r7, #4] + 8000906: 68db ldr r3, [r3, #12] + 8000908: 2b05 cmp r3, #5 + 800090a: d10c bne.n 8000926 + 800090c: 4b6d ldr r3, [pc, #436] ; (8000ac4 ) + 800090e: 6a1b ldr r3, [r3, #32] + 8000910: 4a6c ldr r2, [pc, #432] ; (8000ac4 ) + 8000912: f043 0304 orr.w r3, r3, #4 + 8000916: 6213 str r3, [r2, #32] + 8000918: 4b6a ldr r3, [pc, #424] ; (8000ac4 ) + 800091a: 6a1b ldr r3, [r3, #32] + 800091c: 4a69 ldr r2, [pc, #420] ; (8000ac4 ) + 800091e: f043 0301 orr.w r3, r3, #1 + 8000922: 6213 str r3, [r2, #32] + 8000924: e00b b.n 800093e + 8000926: 4b67 ldr r3, [pc, #412] ; (8000ac4 ) + 8000928: 6a1b ldr r3, [r3, #32] + 800092a: 4a66 ldr r2, [pc, #408] ; (8000ac4 ) + 800092c: f023 0301 bic.w r3, r3, #1 + 8000930: 6213 str r3, [r2, #32] + 8000932: 4b64 ldr r3, [pc, #400] ; (8000ac4 ) + 8000934: 6a1b ldr r3, [r3, #32] + 8000936: 4a63 ldr r2, [pc, #396] ; (8000ac4 ) + 8000938: f023 0304 bic.w r3, r3, #4 + 800093c: 6213 str r3, [r2, #32] + /* Check the LSE State */ + if (RCC_OscInitStruct->LSEState != RCC_LSE_OFF) + 800093e: 687b ldr r3, [r7, #4] + 8000940: 68db ldr r3, [r3, #12] + 8000942: 2b00 cmp r3, #0 + 8000944: d015 beq.n 8000972 + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8000946: f7ff fd55 bl 80003f4 + 800094a: 6138 str r0, [r7, #16] + + /* Wait till LSE is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) == RESET) + 800094c: e00a b.n 8000964 + { + if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE) + 800094e: f7ff fd51 bl 80003f4 + 8000952: 4602 mov r2, r0 + 8000954: 693b ldr r3, [r7, #16] + 8000956: 1ad3 subs r3, r2, r3 + 8000958: f241 3288 movw r2, #5000 ; 0x1388 + 800095c: 4293 cmp r3, r2 + 800095e: d901 bls.n 8000964 + { + return HAL_TIMEOUT; + 8000960: 2303 movs r3, #3 + 8000962: e0ab b.n 8000abc + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) == RESET) + 8000964: 4b57 ldr r3, [pc, #348] ; (8000ac4 ) + 8000966: 6a1b ldr r3, [r3, #32] + 8000968: f003 0302 and.w r3, r3, #2 + 800096c: 2b00 cmp r3, #0 + 800096e: d0ee beq.n 800094e + 8000970: e014 b.n 800099c + } + } + else + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8000972: f7ff fd3f bl 80003f4 + 8000976: 6138 str r0, [r7, #16] + + /* Wait till LSE is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) != RESET) + 8000978: e00a b.n 8000990 + { + if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE) + 800097a: f7ff fd3b bl 80003f4 + 800097e: 4602 mov r2, r0 + 8000980: 693b ldr r3, [r7, #16] + 8000982: 1ad3 subs r3, r2, r3 + 8000984: f241 3288 movw r2, #5000 ; 0x1388 + 8000988: 4293 cmp r3, r2 + 800098a: d901 bls.n 8000990 + { + return HAL_TIMEOUT; + 800098c: 2303 movs r3, #3 + 800098e: e095 b.n 8000abc + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) != RESET) + 8000990: 4b4c ldr r3, [pc, #304] ; (8000ac4 ) + 8000992: 6a1b ldr r3, [r3, #32] + 8000994: f003 0302 and.w r3, r3, #2 + 8000998: 2b00 cmp r3, #0 + 800099a: d1ee bne.n 800097a + } + } + } + + /* Require to disable power clock if necessary */ + if (pwrclkchanged == SET) + 800099c: 7dfb ldrb r3, [r7, #23] + 800099e: 2b01 cmp r3, #1 + 80009a0: d105 bne.n 80009ae + { + __HAL_RCC_PWR_CLK_DISABLE(); + 80009a2: 4b48 ldr r3, [pc, #288] ; (8000ac4 ) + 80009a4: 69db ldr r3, [r3, #28] + 80009a6: 4a47 ldr r2, [pc, #284] ; (8000ac4 ) + 80009a8: f023 5380 bic.w r3, r3, #268435456 ; 0x10000000 + 80009ac: 61d3 str r3, [r2, #28] + +#endif /* RCC_CR_PLL2ON */ + /*-------------------------------- PLL Configuration -----------------------*/ + /* Check the parameters */ + assert_param(IS_RCC_PLL(RCC_OscInitStruct->PLL.PLLState)); + if ((RCC_OscInitStruct->PLL.PLLState) != RCC_PLL_NONE) + 80009ae: 687b ldr r3, [r7, #4] + 80009b0: 69db ldr r3, [r3, #28] + 80009b2: 2b00 cmp r3, #0 + 80009b4: f000 8081 beq.w 8000aba + { + /* Check if the PLL is used as system clock or not */ + if (__HAL_RCC_GET_SYSCLK_SOURCE() != RCC_SYSCLKSOURCE_STATUS_PLLCLK) + 80009b8: 4b42 ldr r3, [pc, #264] ; (8000ac4 ) + 80009ba: 685b ldr r3, [r3, #4] + 80009bc: f003 030c and.w r3, r3, #12 + 80009c0: 2b08 cmp r3, #8 + 80009c2: d061 beq.n 8000a88 + { + if ((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_ON) + 80009c4: 687b ldr r3, [r7, #4] + 80009c6: 69db ldr r3, [r3, #28] + 80009c8: 2b02 cmp r3, #2 + 80009ca: d146 bne.n 8000a5a + /* Check the parameters */ + assert_param(IS_RCC_PLLSOURCE(RCC_OscInitStruct->PLL.PLLSource)); + assert_param(IS_RCC_PLL_MUL(RCC_OscInitStruct->PLL.PLLMUL)); + + /* Disable the main PLL. */ + __HAL_RCC_PLL_DISABLE(); + 80009cc: 4b3f ldr r3, [pc, #252] ; (8000acc ) + 80009ce: 2200 movs r2, #0 + 80009d0: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 80009d2: f7ff fd0f bl 80003f4 + 80009d6: 6138 str r0, [r7, #16] + + /* Wait till PLL is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) + 80009d8: e008 b.n 80009ec + { + if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) + 80009da: f7ff fd0b bl 80003f4 + 80009de: 4602 mov r2, r0 + 80009e0: 693b ldr r3, [r7, #16] + 80009e2: 1ad3 subs r3, r2, r3 + 80009e4: 2b02 cmp r3, #2 + 80009e6: d901 bls.n 80009ec + { + return HAL_TIMEOUT; + 80009e8: 2303 movs r3, #3 + 80009ea: e067 b.n 8000abc + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) + 80009ec: 4b35 ldr r3, [pc, #212] ; (8000ac4 ) + 80009ee: 681b ldr r3, [r3, #0] + 80009f0: f003 7300 and.w r3, r3, #33554432 ; 0x2000000 + 80009f4: 2b00 cmp r3, #0 + 80009f6: d1f0 bne.n 80009da + } + } + + /* Configure the HSE prediv factor --------------------------------*/ + /* It can be written only when the PLL is disabled. Not used in PLL source is different than HSE */ + if (RCC_OscInitStruct->PLL.PLLSource == RCC_PLLSOURCE_HSE) + 80009f8: 687b ldr r3, [r7, #4] + 80009fa: 6a1b ldr r3, [r3, #32] + 80009fc: f5b3 3f80 cmp.w r3, #65536 ; 0x10000 + 8000a00: d108 bne.n 8000a14 + /* Set PREDIV1 source */ + SET_BIT(RCC->CFGR2, RCC_OscInitStruct->Prediv1Source); +#endif /* RCC_CFGR2_PREDIV1SRC */ + + /* Set PREDIV1 Value */ + __HAL_RCC_HSE_PREDIV_CONFIG(RCC_OscInitStruct->HSEPredivValue); + 8000a02: 4b30 ldr r3, [pc, #192] ; (8000ac4 ) + 8000a04: 685b ldr r3, [r3, #4] + 8000a06: f423 3200 bic.w r2, r3, #131072 ; 0x20000 + 8000a0a: 687b ldr r3, [r7, #4] + 8000a0c: 689b ldr r3, [r3, #8] + 8000a0e: 492d ldr r1, [pc, #180] ; (8000ac4 ) + 8000a10: 4313 orrs r3, r2 + 8000a12: 604b str r3, [r1, #4] + } + + /* Configure the main PLL clock source and multiplication factors. */ + __HAL_RCC_PLL_CONFIG(RCC_OscInitStruct->PLL.PLLSource, + 8000a14: 4b2b ldr r3, [pc, #172] ; (8000ac4 ) + 8000a16: 685b ldr r3, [r3, #4] + 8000a18: f423 1274 bic.w r2, r3, #3997696 ; 0x3d0000 + 8000a1c: 687b ldr r3, [r7, #4] + 8000a1e: 6a19 ldr r1, [r3, #32] + 8000a20: 687b ldr r3, [r7, #4] + 8000a22: 6a5b ldr r3, [r3, #36] ; 0x24 + 8000a24: 430b orrs r3, r1 + 8000a26: 4927 ldr r1, [pc, #156] ; (8000ac4 ) + 8000a28: 4313 orrs r3, r2 + 8000a2a: 604b str r3, [r1, #4] + RCC_OscInitStruct->PLL.PLLMUL); + /* Enable the main PLL. */ + __HAL_RCC_PLL_ENABLE(); + 8000a2c: 4b27 ldr r3, [pc, #156] ; (8000acc ) + 8000a2e: 2201 movs r2, #1 + 8000a30: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8000a32: f7ff fcdf bl 80003f4 + 8000a36: 6138 str r0, [r7, #16] + + /* Wait till PLL is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET) + 8000a38: e008 b.n 8000a4c + { + if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) + 8000a3a: f7ff fcdb bl 80003f4 + 8000a3e: 4602 mov r2, r0 + 8000a40: 693b ldr r3, [r7, #16] + 8000a42: 1ad3 subs r3, r2, r3 + 8000a44: 2b02 cmp r3, #2 + 8000a46: d901 bls.n 8000a4c + { + return HAL_TIMEOUT; + 8000a48: 2303 movs r3, #3 + 8000a4a: e037 b.n 8000abc + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET) + 8000a4c: 4b1d ldr r3, [pc, #116] ; (8000ac4 ) + 8000a4e: 681b ldr r3, [r3, #0] + 8000a50: f003 7300 and.w r3, r3, #33554432 ; 0x2000000 + 8000a54: 2b00 cmp r3, #0 + 8000a56: d0f0 beq.n 8000a3a + 8000a58: e02f b.n 8000aba + } + } + else + { + /* Disable the main PLL. */ + __HAL_RCC_PLL_DISABLE(); + 8000a5a: 4b1c ldr r3, [pc, #112] ; (8000acc ) + 8000a5c: 2200 movs r2, #0 + 8000a5e: 601a str r2, [r3, #0] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8000a60: f7ff fcc8 bl 80003f4 + 8000a64: 6138 str r0, [r7, #16] + + /* Wait till PLL is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) + 8000a66: e008 b.n 8000a7a + { + if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) + 8000a68: f7ff fcc4 bl 80003f4 + 8000a6c: 4602 mov r2, r0 + 8000a6e: 693b ldr r3, [r7, #16] + 8000a70: 1ad3 subs r3, r2, r3 + 8000a72: 2b02 cmp r3, #2 + 8000a74: d901 bls.n 8000a7a + { + return HAL_TIMEOUT; + 8000a76: 2303 movs r3, #3 + 8000a78: e020 b.n 8000abc + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) + 8000a7a: 4b12 ldr r3, [pc, #72] ; (8000ac4 ) + 8000a7c: 681b ldr r3, [r3, #0] + 8000a7e: f003 7300 and.w r3, r3, #33554432 ; 0x2000000 + 8000a82: 2b00 cmp r3, #0 + 8000a84: d1f0 bne.n 8000a68 + 8000a86: e018 b.n 8000aba + } + } + else + { + /* Check if there is a request to disable the PLL used as System clock source */ + if ((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_OFF) + 8000a88: 687b ldr r3, [r7, #4] + 8000a8a: 69db ldr r3, [r3, #28] + 8000a8c: 2b01 cmp r3, #1 + 8000a8e: d101 bne.n 8000a94 + { + return HAL_ERROR; + 8000a90: 2301 movs r3, #1 + 8000a92: e013 b.n 8000abc + } + else + { + /* Do not return HAL_ERROR if request repeats the current configuration */ + pll_config = RCC->CFGR; + 8000a94: 4b0b ldr r3, [pc, #44] ; (8000ac4 ) + 8000a96: 685b ldr r3, [r3, #4] + 8000a98: 60fb str r3, [r7, #12] + if ((READ_BIT(pll_config, RCC_CFGR_PLLSRC) != RCC_OscInitStruct->PLL.PLLSource) || + 8000a9a: 68fb ldr r3, [r7, #12] + 8000a9c: f403 3280 and.w r2, r3, #65536 ; 0x10000 + 8000aa0: 687b ldr r3, [r7, #4] + 8000aa2: 6a1b ldr r3, [r3, #32] + 8000aa4: 429a cmp r2, r3 + 8000aa6: d106 bne.n 8000ab6 + (READ_BIT(pll_config, RCC_CFGR_PLLMULL) != RCC_OscInitStruct->PLL.PLLMUL)) + 8000aa8: 68fb ldr r3, [r7, #12] + 8000aaa: f403 1270 and.w r2, r3, #3932160 ; 0x3c0000 + 8000aae: 687b ldr r3, [r7, #4] + 8000ab0: 6a5b ldr r3, [r3, #36] ; 0x24 + if ((READ_BIT(pll_config, RCC_CFGR_PLLSRC) != RCC_OscInitStruct->PLL.PLLSource) || + 8000ab2: 429a cmp r2, r3 + 8000ab4: d001 beq.n 8000aba + { + return HAL_ERROR; + 8000ab6: 2301 movs r3, #1 + 8000ab8: e000 b.n 8000abc + } + } + } + } + + return HAL_OK; + 8000aba: 2300 movs r3, #0 +} + 8000abc: 4618 mov r0, r3 + 8000abe: 3718 adds r7, #24 + 8000ac0: 46bd mov sp, r7 + 8000ac2: bd80 pop {r7, pc} + 8000ac4: 40021000 .word 0x40021000 + 8000ac8: 40007000 .word 0x40007000 + 8000acc: 42420060 .word 0x42420060 + +08000ad0 : + * You can use @ref HAL_RCC_GetClockConfig() function to know which clock is + * currently used as system clock source. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency) +{ + 8000ad0: b580 push {r7, lr} + 8000ad2: b084 sub sp, #16 + 8000ad4: af00 add r7, sp, #0 + 8000ad6: 6078 str r0, [r7, #4] + 8000ad8: 6039 str r1, [r7, #0] + uint32_t tickstart; + + /* Check Null pointer */ + if (RCC_ClkInitStruct == NULL) + 8000ada: 687b ldr r3, [r7, #4] + 8000adc: 2b00 cmp r3, #0 + 8000ade: d101 bne.n 8000ae4 + { + return HAL_ERROR; + 8000ae0: 2301 movs r3, #1 + 8000ae2: e0d0 b.n 8000c86 + must be correctly programmed according to the frequency of the CPU clock + (HCLK) of the device. */ + +#if defined(FLASH_ACR_LATENCY) + /* Increasing the number of wait states because of higher CPU frequency */ + if (FLatency > __HAL_FLASH_GET_LATENCY()) + 8000ae4: 4b6a ldr r3, [pc, #424] ; (8000c90 ) + 8000ae6: 681b ldr r3, [r3, #0] + 8000ae8: f003 0307 and.w r3, r3, #7 + 8000aec: 683a ldr r2, [r7, #0] + 8000aee: 429a cmp r2, r3 + 8000af0: d910 bls.n 8000b14 + { + /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */ + __HAL_FLASH_SET_LATENCY(FLatency); + 8000af2: 4b67 ldr r3, [pc, #412] ; (8000c90 ) + 8000af4: 681b ldr r3, [r3, #0] + 8000af6: f023 0207 bic.w r2, r3, #7 + 8000afa: 4965 ldr r1, [pc, #404] ; (8000c90 ) + 8000afc: 683b ldr r3, [r7, #0] + 8000afe: 4313 orrs r3, r2 + 8000b00: 600b str r3, [r1, #0] + + /* Check that the new number of wait states is taken into account to access the Flash + memory by reading the FLASH_ACR register */ + if (__HAL_FLASH_GET_LATENCY() != FLatency) + 8000b02: 4b63 ldr r3, [pc, #396] ; (8000c90 ) + 8000b04: 681b ldr r3, [r3, #0] + 8000b06: f003 0307 and.w r3, r3, #7 + 8000b0a: 683a ldr r2, [r7, #0] + 8000b0c: 429a cmp r2, r3 + 8000b0e: d001 beq.n 8000b14 + { + return HAL_ERROR; + 8000b10: 2301 movs r3, #1 + 8000b12: e0b8 b.n 8000c86 + } +} + +#endif /* FLASH_ACR_LATENCY */ +/*-------------------------- HCLK Configuration --------------------------*/ +if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK) + 8000b14: 687b ldr r3, [r7, #4] + 8000b16: 681b ldr r3, [r3, #0] + 8000b18: f003 0302 and.w r3, r3, #2 + 8000b1c: 2b00 cmp r3, #0 + 8000b1e: d020 beq.n 8000b62 + { + /* Set the highest APBx dividers in order to ensure that we do not go through + a non-spec phase whatever we decrease or increase HCLK. */ + if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1) + 8000b20: 687b ldr r3, [r7, #4] + 8000b22: 681b ldr r3, [r3, #0] + 8000b24: f003 0304 and.w r3, r3, #4 + 8000b28: 2b00 cmp r3, #0 + 8000b2a: d005 beq.n 8000b38 + { + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE1, RCC_HCLK_DIV16); + 8000b2c: 4b59 ldr r3, [pc, #356] ; (8000c94 ) + 8000b2e: 685b ldr r3, [r3, #4] + 8000b30: 4a58 ldr r2, [pc, #352] ; (8000c94 ) + 8000b32: f443 63e0 orr.w r3, r3, #1792 ; 0x700 + 8000b36: 6053 str r3, [r2, #4] + } + + if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2) + 8000b38: 687b ldr r3, [r7, #4] + 8000b3a: 681b ldr r3, [r3, #0] + 8000b3c: f003 0308 and.w r3, r3, #8 + 8000b40: 2b00 cmp r3, #0 + 8000b42: d005 beq.n 8000b50 + { + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE2, (RCC_HCLK_DIV16 << 3)); + 8000b44: 4b53 ldr r3, [pc, #332] ; (8000c94 ) + 8000b46: 685b ldr r3, [r3, #4] + 8000b48: 4a52 ldr r2, [pc, #328] ; (8000c94 ) + 8000b4a: f443 5360 orr.w r3, r3, #14336 ; 0x3800 + 8000b4e: 6053 str r3, [r2, #4] + } + + /* Set the new HCLK clock divider */ + assert_param(IS_RCC_HCLK(RCC_ClkInitStruct->AHBCLKDivider)); + MODIFY_REG(RCC->CFGR, RCC_CFGR_HPRE, RCC_ClkInitStruct->AHBCLKDivider); + 8000b50: 4b50 ldr r3, [pc, #320] ; (8000c94 ) + 8000b52: 685b ldr r3, [r3, #4] + 8000b54: f023 02f0 bic.w r2, r3, #240 ; 0xf0 + 8000b58: 687b ldr r3, [r7, #4] + 8000b5a: 689b ldr r3, [r3, #8] + 8000b5c: 494d ldr r1, [pc, #308] ; (8000c94 ) + 8000b5e: 4313 orrs r3, r2 + 8000b60: 604b str r3, [r1, #4] + } + + /*------------------------- SYSCLK Configuration ---------------------------*/ + if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_SYSCLK) == RCC_CLOCKTYPE_SYSCLK) + 8000b62: 687b ldr r3, [r7, #4] + 8000b64: 681b ldr r3, [r3, #0] + 8000b66: f003 0301 and.w r3, r3, #1 + 8000b6a: 2b00 cmp r3, #0 + 8000b6c: d040 beq.n 8000bf0 + { + assert_param(IS_RCC_SYSCLKSOURCE(RCC_ClkInitStruct->SYSCLKSource)); + + /* HSE is selected as System Clock Source */ + if (RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_HSE) + 8000b6e: 687b ldr r3, [r7, #4] + 8000b70: 685b ldr r3, [r3, #4] + 8000b72: 2b01 cmp r3, #1 + 8000b74: d107 bne.n 8000b86 + { + /* Check the HSE ready flag */ + if (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET) + 8000b76: 4b47 ldr r3, [pc, #284] ; (8000c94 ) + 8000b78: 681b ldr r3, [r3, #0] + 8000b7a: f403 3300 and.w r3, r3, #131072 ; 0x20000 + 8000b7e: 2b00 cmp r3, #0 + 8000b80: d115 bne.n 8000bae + { + return HAL_ERROR; + 8000b82: 2301 movs r3, #1 + 8000b84: e07f b.n 8000c86 + } + } + /* PLL is selected as System Clock Source */ + else if (RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_PLLCLK) + 8000b86: 687b ldr r3, [r7, #4] + 8000b88: 685b ldr r3, [r3, #4] + 8000b8a: 2b02 cmp r3, #2 + 8000b8c: d107 bne.n 8000b9e + { + /* Check the PLL ready flag */ + if (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET) + 8000b8e: 4b41 ldr r3, [pc, #260] ; (8000c94 ) + 8000b90: 681b ldr r3, [r3, #0] + 8000b92: f003 7300 and.w r3, r3, #33554432 ; 0x2000000 + 8000b96: 2b00 cmp r3, #0 + 8000b98: d109 bne.n 8000bae + { + return HAL_ERROR; + 8000b9a: 2301 movs r3, #1 + 8000b9c: e073 b.n 8000c86 + } + /* HSI is selected as System Clock Source */ + else + { + /* Check the HSI ready flag */ + if (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET) + 8000b9e: 4b3d ldr r3, [pc, #244] ; (8000c94 ) + 8000ba0: 681b ldr r3, [r3, #0] + 8000ba2: f003 0302 and.w r3, r3, #2 + 8000ba6: 2b00 cmp r3, #0 + 8000ba8: d101 bne.n 8000bae + { + return HAL_ERROR; + 8000baa: 2301 movs r3, #1 + 8000bac: e06b b.n 8000c86 + } + } + __HAL_RCC_SYSCLK_CONFIG(RCC_ClkInitStruct->SYSCLKSource); + 8000bae: 4b39 ldr r3, [pc, #228] ; (8000c94 ) + 8000bb0: 685b ldr r3, [r3, #4] + 8000bb2: f023 0203 bic.w r2, r3, #3 + 8000bb6: 687b ldr r3, [r7, #4] + 8000bb8: 685b ldr r3, [r3, #4] + 8000bba: 4936 ldr r1, [pc, #216] ; (8000c94 ) + 8000bbc: 4313 orrs r3, r2 + 8000bbe: 604b str r3, [r1, #4] + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + 8000bc0: f7ff fc18 bl 80003f4 + 8000bc4: 60f8 str r0, [r7, #12] + + while (__HAL_RCC_GET_SYSCLK_SOURCE() != (RCC_ClkInitStruct->SYSCLKSource << RCC_CFGR_SWS_Pos)) + 8000bc6: e00a b.n 8000bde + { + if ((HAL_GetTick() - tickstart) > CLOCKSWITCH_TIMEOUT_VALUE) + 8000bc8: f7ff fc14 bl 80003f4 + 8000bcc: 4602 mov r2, r0 + 8000bce: 68fb ldr r3, [r7, #12] + 8000bd0: 1ad3 subs r3, r2, r3 + 8000bd2: f241 3288 movw r2, #5000 ; 0x1388 + 8000bd6: 4293 cmp r3, r2 + 8000bd8: d901 bls.n 8000bde + { + return HAL_TIMEOUT; + 8000bda: 2303 movs r3, #3 + 8000bdc: e053 b.n 8000c86 + while (__HAL_RCC_GET_SYSCLK_SOURCE() != (RCC_ClkInitStruct->SYSCLKSource << RCC_CFGR_SWS_Pos)) + 8000bde: 4b2d ldr r3, [pc, #180] ; (8000c94 ) + 8000be0: 685b ldr r3, [r3, #4] + 8000be2: f003 020c and.w r2, r3, #12 + 8000be6: 687b ldr r3, [r7, #4] + 8000be8: 685b ldr r3, [r3, #4] + 8000bea: 009b lsls r3, r3, #2 + 8000bec: 429a cmp r2, r3 + 8000bee: d1eb bne.n 8000bc8 + } + } + +#if defined(FLASH_ACR_LATENCY) + /* Decreasing the number of wait states because of lower CPU frequency */ + if (FLatency < __HAL_FLASH_GET_LATENCY()) + 8000bf0: 4b27 ldr r3, [pc, #156] ; (8000c90 ) + 8000bf2: 681b ldr r3, [r3, #0] + 8000bf4: f003 0307 and.w r3, r3, #7 + 8000bf8: 683a ldr r2, [r7, #0] + 8000bfa: 429a cmp r2, r3 + 8000bfc: d210 bcs.n 8000c20 + { + /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */ + __HAL_FLASH_SET_LATENCY(FLatency); + 8000bfe: 4b24 ldr r3, [pc, #144] ; (8000c90 ) + 8000c00: 681b ldr r3, [r3, #0] + 8000c02: f023 0207 bic.w r2, r3, #7 + 8000c06: 4922 ldr r1, [pc, #136] ; (8000c90 ) + 8000c08: 683b ldr r3, [r7, #0] + 8000c0a: 4313 orrs r3, r2 + 8000c0c: 600b str r3, [r1, #0] + + /* Check that the new number of wait states is taken into account to access the Flash + memory by reading the FLASH_ACR register */ + if (__HAL_FLASH_GET_LATENCY() != FLatency) + 8000c0e: 4b20 ldr r3, [pc, #128] ; (8000c90 ) + 8000c10: 681b ldr r3, [r3, #0] + 8000c12: f003 0307 and.w r3, r3, #7 + 8000c16: 683a ldr r2, [r7, #0] + 8000c18: 429a cmp r2, r3 + 8000c1a: d001 beq.n 8000c20 + { + return HAL_ERROR; + 8000c1c: 2301 movs r3, #1 + 8000c1e: e032 b.n 8000c86 + } +} +#endif /* FLASH_ACR_LATENCY */ + +/*-------------------------- PCLK1 Configuration ---------------------------*/ +if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1) + 8000c20: 687b ldr r3, [r7, #4] + 8000c22: 681b ldr r3, [r3, #0] + 8000c24: f003 0304 and.w r3, r3, #4 + 8000c28: 2b00 cmp r3, #0 + 8000c2a: d008 beq.n 8000c3e + { + assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB1CLKDivider)); + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE1, RCC_ClkInitStruct->APB1CLKDivider); + 8000c2c: 4b19 ldr r3, [pc, #100] ; (8000c94 ) + 8000c2e: 685b ldr r3, [r3, #4] + 8000c30: f423 62e0 bic.w r2, r3, #1792 ; 0x700 + 8000c34: 687b ldr r3, [r7, #4] + 8000c36: 68db ldr r3, [r3, #12] + 8000c38: 4916 ldr r1, [pc, #88] ; (8000c94 ) + 8000c3a: 4313 orrs r3, r2 + 8000c3c: 604b str r3, [r1, #4] + } + + /*-------------------------- PCLK2 Configuration ---------------------------*/ + if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2) + 8000c3e: 687b ldr r3, [r7, #4] + 8000c40: 681b ldr r3, [r3, #0] + 8000c42: f003 0308 and.w r3, r3, #8 + 8000c46: 2b00 cmp r3, #0 + 8000c48: d009 beq.n 8000c5e + { + assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB2CLKDivider)); + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE2, ((RCC_ClkInitStruct->APB2CLKDivider) << 3)); + 8000c4a: 4b12 ldr r3, [pc, #72] ; (8000c94 ) + 8000c4c: 685b ldr r3, [r3, #4] + 8000c4e: f423 5260 bic.w r2, r3, #14336 ; 0x3800 + 8000c52: 687b ldr r3, [r7, #4] + 8000c54: 691b ldr r3, [r3, #16] + 8000c56: 00db lsls r3, r3, #3 + 8000c58: 490e ldr r1, [pc, #56] ; (8000c94 ) + 8000c5a: 4313 orrs r3, r2 + 8000c5c: 604b str r3, [r1, #4] + } + + /* Update the SystemCoreClock global variable */ + SystemCoreClock = HAL_RCC_GetSysClockFreq() >> AHBPrescTable[(RCC->CFGR & RCC_CFGR_HPRE) >> RCC_CFGR_HPRE_Pos]; + 8000c5e: f000 f821 bl 8000ca4 + 8000c62: 4602 mov r2, r0 + 8000c64: 4b0b ldr r3, [pc, #44] ; (8000c94 ) + 8000c66: 685b ldr r3, [r3, #4] + 8000c68: 091b lsrs r3, r3, #4 + 8000c6a: f003 030f and.w r3, r3, #15 + 8000c6e: 490a ldr r1, [pc, #40] ; (8000c98 ) + 8000c70: 5ccb ldrb r3, [r1, r3] + 8000c72: fa22 f303 lsr.w r3, r2, r3 + 8000c76: 4a09 ldr r2, [pc, #36] ; (8000c9c ) + 8000c78: 6013 str r3, [r2, #0] + + /* Configure the source of time base considering new system clocks settings*/ + HAL_InitTick(uwTickPrio); + 8000c7a: 4b09 ldr r3, [pc, #36] ; (8000ca0 ) + 8000c7c: 681b ldr r3, [r3, #0] + 8000c7e: 4618 mov r0, r3 + 8000c80: f7ff fb76 bl 8000370 + + return HAL_OK; + 8000c84: 2300 movs r3, #0 +} + 8000c86: 4618 mov r0, r3 + 8000c88: 3710 adds r7, #16 + 8000c8a: 46bd mov sp, r7 + 8000c8c: bd80 pop {r7, pc} + 8000c8e: bf00 nop + 8000c90: 40022000 .word 0x40022000 + 8000c94: 40021000 .word 0x40021000 + 8000c98: 08000e20 .word 0x08000e20 + 8000c9c: 20000000 .word 0x20000000 + 8000ca0: 20000004 .word 0x20000004 + +08000ca4 : + * right SYSCLK value. Otherwise, any configuration based on this function will be incorrect. + * + * @retval SYSCLK frequency + */ +uint32_t HAL_RCC_GetSysClockFreq(void) +{ + 8000ca4: b490 push {r4, r7} + 8000ca6: b08a sub sp, #40 ; 0x28 + 8000ca8: af00 add r7, sp, #0 +#if defined(RCC_CFGR2_PREDIV1SRC) + const uint8_t aPLLMULFactorTable[14] = {0, 0, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 0, 13}; + const uint8_t aPredivFactorTable[16] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; +#else + const uint8_t aPLLMULFactorTable[16] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 16}; + 8000caa: 4b2a ldr r3, [pc, #168] ; (8000d54 ) + 8000cac: 1d3c adds r4, r7, #4 + 8000cae: cb0f ldmia r3, {r0, r1, r2, r3} + 8000cb0: e884 000f stmia.w r4, {r0, r1, r2, r3} +#if defined(RCC_CFGR2_PREDIV1) + const uint8_t aPredivFactorTable[16] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; +#else + const uint8_t aPredivFactorTable[2] = {1, 2}; + 8000cb4: f240 2301 movw r3, #513 ; 0x201 + 8000cb8: 803b strh r3, [r7, #0] +#endif /*RCC_CFGR2_PREDIV1*/ + +#endif + uint32_t tmpreg = 0U, prediv = 0U, pllclk = 0U, pllmul = 0U; + 8000cba: 2300 movs r3, #0 + 8000cbc: 61fb str r3, [r7, #28] + 8000cbe: 2300 movs r3, #0 + 8000cc0: 61bb str r3, [r7, #24] + 8000cc2: 2300 movs r3, #0 + 8000cc4: 627b str r3, [r7, #36] ; 0x24 + 8000cc6: 2300 movs r3, #0 + 8000cc8: 617b str r3, [r7, #20] + uint32_t sysclockfreq = 0U; + 8000cca: 2300 movs r3, #0 + 8000ccc: 623b str r3, [r7, #32] +#if defined(RCC_CFGR2_PREDIV1SRC) + uint32_t prediv2 = 0U, pll2mul = 0U; +#endif /*RCC_CFGR2_PREDIV1SRC*/ + + tmpreg = RCC->CFGR; + 8000cce: 4b22 ldr r3, [pc, #136] ; (8000d58 ) + 8000cd0: 685b ldr r3, [r3, #4] + 8000cd2: 61fb str r3, [r7, #28] + + /* Get SYSCLK source -------------------------------------------------------*/ + switch (tmpreg & RCC_CFGR_SWS) + 8000cd4: 69fb ldr r3, [r7, #28] + 8000cd6: f003 030c and.w r3, r3, #12 + 8000cda: 2b04 cmp r3, #4 + 8000cdc: d002 beq.n 8000ce4 + 8000cde: 2b08 cmp r3, #8 + 8000ce0: d003 beq.n 8000cea + 8000ce2: e02d b.n 8000d40 + { + case RCC_SYSCLKSOURCE_STATUS_HSE: /* HSE used as system clock */ + { + sysclockfreq = HSE_VALUE; + 8000ce4: 4b1d ldr r3, [pc, #116] ; (8000d5c ) + 8000ce6: 623b str r3, [r7, #32] + break; + 8000ce8: e02d b.n 8000d46 + } + case RCC_SYSCLKSOURCE_STATUS_PLLCLK: /* PLL used as system clock */ + { + pllmul = aPLLMULFactorTable[(uint32_t)(tmpreg & RCC_CFGR_PLLMULL) >> RCC_CFGR_PLLMULL_Pos]; + 8000cea: 69fb ldr r3, [r7, #28] + 8000cec: 0c9b lsrs r3, r3, #18 + 8000cee: f003 030f and.w r3, r3, #15 + 8000cf2: f107 0228 add.w r2, r7, #40 ; 0x28 + 8000cf6: 4413 add r3, r2 + 8000cf8: f813 3c24 ldrb.w r3, [r3, #-36] + 8000cfc: 617b str r3, [r7, #20] + if ((tmpreg & RCC_CFGR_PLLSRC) != RCC_PLLSOURCE_HSI_DIV2) + 8000cfe: 69fb ldr r3, [r7, #28] + 8000d00: f403 3380 and.w r3, r3, #65536 ; 0x10000 + 8000d04: 2b00 cmp r3, #0 + 8000d06: d013 beq.n 8000d30 + { +#if defined(RCC_CFGR2_PREDIV1) + prediv = aPredivFactorTable[(uint32_t)(RCC->CFGR2 & RCC_CFGR2_PREDIV1) >> RCC_CFGR2_PREDIV1_Pos]; +#else + prediv = aPredivFactorTable[(uint32_t)(RCC->CFGR & RCC_CFGR_PLLXTPRE) >> RCC_CFGR_PLLXTPRE_Pos]; + 8000d08: 4b13 ldr r3, [pc, #76] ; (8000d58 ) + 8000d0a: 685b ldr r3, [r3, #4] + 8000d0c: 0c5b lsrs r3, r3, #17 + 8000d0e: f003 0301 and.w r3, r3, #1 + 8000d12: f107 0228 add.w r2, r7, #40 ; 0x28 + 8000d16: 4413 add r3, r2 + 8000d18: f813 3c28 ldrb.w r3, [r3, #-40] + 8000d1c: 61bb str r3, [r7, #24] + { + pllclk = pllclk / 2; + } +#else + /* HSE used as PLL clock source : PLLCLK = HSE/PREDIV1 * PLLMUL */ + pllclk = (uint32_t)((HSE_VALUE * pllmul) / prediv); + 8000d1e: 697b ldr r3, [r7, #20] + 8000d20: 4a0e ldr r2, [pc, #56] ; (8000d5c ) + 8000d22: fb02 f203 mul.w r2, r2, r3 + 8000d26: 69bb ldr r3, [r7, #24] + 8000d28: fbb2 f3f3 udiv r3, r2, r3 + 8000d2c: 627b str r3, [r7, #36] ; 0x24 + 8000d2e: e004 b.n 8000d3a +#endif /*RCC_CFGR2_PREDIV1SRC*/ + } + else + { + /* HSI used as PLL clock source : PLLCLK = HSI/2 * PLLMUL */ + pllclk = (uint32_t)((HSI_VALUE >> 1) * pllmul); + 8000d30: 697b ldr r3, [r7, #20] + 8000d32: 4a0b ldr r2, [pc, #44] ; (8000d60 ) + 8000d34: fb02 f303 mul.w r3, r2, r3 + 8000d38: 627b str r3, [r7, #36] ; 0x24 + } + sysclockfreq = pllclk; + 8000d3a: 6a7b ldr r3, [r7, #36] ; 0x24 + 8000d3c: 623b str r3, [r7, #32] + break; + 8000d3e: e002 b.n 8000d46 + } + case RCC_SYSCLKSOURCE_STATUS_HSI: /* HSI used as system clock source */ + default: /* HSI used as system clock */ + { + sysclockfreq = HSI_VALUE; + 8000d40: 4b06 ldr r3, [pc, #24] ; (8000d5c ) + 8000d42: 623b str r3, [r7, #32] + break; + 8000d44: bf00 nop + } + } + return sysclockfreq; + 8000d46: 6a3b ldr r3, [r7, #32] +} + 8000d48: 4618 mov r0, r3 + 8000d4a: 3728 adds r7, #40 ; 0x28 + 8000d4c: 46bd mov sp, r7 + 8000d4e: bc90 pop {r4, r7} + 8000d50: 4770 bx lr + 8000d52: bf00 nop + 8000d54: 08000e10 .word 0x08000e10 + 8000d58: 40021000 .word 0x40021000 + 8000d5c: 007a1200 .word 0x007a1200 + 8000d60: 003d0900 .word 0x003d0900 + +08000d64 : + * @brief This function provides delay (in milliseconds) based on CPU cycles method. + * @param mdelay: specifies the delay time length, in milliseconds. + * @retval None + */ +static void RCC_Delay(uint32_t mdelay) +{ + 8000d64: b480 push {r7} + 8000d66: b085 sub sp, #20 + 8000d68: af00 add r7, sp, #0 + 8000d6a: 6078 str r0, [r7, #4] + __IO uint32_t Delay = mdelay * (SystemCoreClock / 8U / 1000U); + 8000d6c: 4b0a ldr r3, [pc, #40] ; (8000d98 ) + 8000d6e: 681b ldr r3, [r3, #0] + 8000d70: 4a0a ldr r2, [pc, #40] ; (8000d9c ) + 8000d72: fba2 2303 umull r2, r3, r2, r3 + 8000d76: 0a5b lsrs r3, r3, #9 + 8000d78: 687a ldr r2, [r7, #4] + 8000d7a: fb02 f303 mul.w r3, r2, r3 + 8000d7e: 60fb str r3, [r7, #12] + do + { + __NOP(); + 8000d80: bf00 nop + } + while (Delay --); + 8000d82: 68fb ldr r3, [r7, #12] + 8000d84: 1e5a subs r2, r3, #1 + 8000d86: 60fa str r2, [r7, #12] + 8000d88: 2b00 cmp r3, #0 + 8000d8a: d1f9 bne.n 8000d80 +} + 8000d8c: bf00 nop + 8000d8e: bf00 nop + 8000d90: 3714 adds r7, #20 + 8000d92: 46bd mov sp, r7 + 8000d94: bc80 pop {r7} + 8000d96: 4770 bx lr + 8000d98: 20000000 .word 0x20000000 + 8000d9c: 10624dd3 .word 0x10624dd3 + +08000da0 <__libc_init_array>: + 8000da0: b570 push {r4, r5, r6, lr} + 8000da2: 2600 movs r6, #0 + 8000da4: 4d0c ldr r5, [pc, #48] ; (8000dd8 <__libc_init_array+0x38>) + 8000da6: 4c0d ldr r4, [pc, #52] ; (8000ddc <__libc_init_array+0x3c>) + 8000da8: 1b64 subs r4, r4, r5 + 8000daa: 10a4 asrs r4, r4, #2 + 8000dac: 42a6 cmp r6, r4 + 8000dae: d109 bne.n 8000dc4 <__libc_init_array+0x24> + 8000db0: f000 f822 bl 8000df8 <_init> + 8000db4: 2600 movs r6, #0 + 8000db6: 4d0a ldr r5, [pc, #40] ; (8000de0 <__libc_init_array+0x40>) + 8000db8: 4c0a ldr r4, [pc, #40] ; (8000de4 <__libc_init_array+0x44>) + 8000dba: 1b64 subs r4, r4, r5 + 8000dbc: 10a4 asrs r4, r4, #2 + 8000dbe: 42a6 cmp r6, r4 + 8000dc0: d105 bne.n 8000dce <__libc_init_array+0x2e> + 8000dc2: bd70 pop {r4, r5, r6, pc} + 8000dc4: f855 3b04 ldr.w r3, [r5], #4 + 8000dc8: 4798 blx r3 + 8000dca: 3601 adds r6, #1 + 8000dcc: e7ee b.n 8000dac <__libc_init_array+0xc> + 8000dce: f855 3b04 ldr.w r3, [r5], #4 + 8000dd2: 4798 blx r3 + 8000dd4: 3601 adds r6, #1 + 8000dd6: e7f2 b.n 8000dbe <__libc_init_array+0x1e> + 8000dd8: 08000e30 .word 0x08000e30 + 8000ddc: 08000e30 .word 0x08000e30 + 8000de0: 08000e30 .word 0x08000e30 + 8000de4: 08000e34 .word 0x08000e34 + +08000de8 : + 8000de8: 4603 mov r3, r0 + 8000dea: 4402 add r2, r0 + 8000dec: 4293 cmp r3, r2 + 8000dee: d100 bne.n 8000df2 + 8000df0: 4770 bx lr + 8000df2: f803 1b01 strb.w r1, [r3], #1 + 8000df6: e7f9 b.n 8000dec + +08000df8 <_init>: + 8000df8: b5f8 push {r3, r4, r5, r6, r7, lr} + 8000dfa: bf00 nop + 8000dfc: bcf8 pop {r3, r4, r5, r6, r7} + 8000dfe: bc08 pop {r3} + 8000e00: 469e mov lr, r3 + 8000e02: 4770 bx lr + +08000e04 <_fini>: + 8000e04: b5f8 push {r3, r4, r5, r6, r7, lr} + 8000e06: bf00 nop + 8000e08: bcf8 pop {r3, r4, r5, r6, r7} + 8000e0a: bc08 pop {r3} + 8000e0c: 469e mov lr, r3 + 8000e0e: 4770 bx lr diff --git a/f103c8t6_HAL/Debug/f103c8t6_HAL.map b/f103c8t6_HAL/Debug/f103c8t6_HAL.map new file mode 100644 index 0000000..c0a3b0f --- /dev/null +++ b/f103c8t6_HAL/Debug/f103c8t6_HAL.map @@ -0,0 +1,2353 @@ +Archive member included to satisfy reference by file (symbol) + +c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-errno.o) + ./Core/Src/syscalls.o (__errno) +c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-exit.o) + c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o (exit) +c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-impure.o) + c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-exit.o) (_global_impure_ptr) +c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-init.o) + c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o (__libc_init_array) +c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-memset.o) + c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o (memset) + +Allocating common symbols +Common symbol size file + +uwTick 0x4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o +pFlash 0x20 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + +Discarded input sections + + .text 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crti.o + .data 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crti.o + .bss 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crti.o + .data 0x0000000000000000 0x4 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + .text 0x0000000000000000 0x7c c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .data 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .bss 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .ARM.extab 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .ARM.exidx 0x0000000000000000 0x10 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .ARM.attributes + 0x0000000000000000 0x1b c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/main.o + .text 0x0000000000000000 0x0 ./Core/Src/main.o + .data 0x0000000000000000 0x0 ./Core/Src/main.o + .bss 0x0000000000000000 0x0 ./Core/Src/main.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_hal_msp.o + .text 0x0000000000000000 0x0 ./Core/Src/stm32f1xx_hal_msp.o + .data 0x0000000000000000 0x0 ./Core/Src/stm32f1xx_hal_msp.o + .bss 0x0000000000000000 0x0 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0xa9c ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x20f ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x2e ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x8e ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x51 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x103 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x6a ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x1df ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x1c ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0xc3 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0xd23 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0xe09e ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x6d ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x3468 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x174 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x5c ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x5be ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x289 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x1cb ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x114 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x1b2 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x27 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x136 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x1bc ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x34 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x3c ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x57 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x88 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x241 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x141 ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000000000 0x83 ./Core/Src/stm32f1xx_hal_msp.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/stm32f1xx_it.o + .text 0x0000000000000000 0x0 ./Core/Src/stm32f1xx_it.o + .data 0x0000000000000000 0x0 ./Core/Src/stm32f1xx_it.o + .bss 0x0000000000000000 0x0 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0xa9c ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x20f ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x2e ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x8e ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x51 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x103 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x6a ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x1df ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x1c ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0xc3 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0xd23 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0xe09e ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x6d ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x3468 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x174 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x5c ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x5be ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x289 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x1cb ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x114 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x1b2 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x27 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x136 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x1bc ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x34 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x3c ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x57 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x88 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x241 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x141 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x0000000000000000 0x83 ./Core/Src/stm32f1xx_it.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/syscalls.o + .text 0x0000000000000000 0x0 ./Core/Src/syscalls.o + .data 0x0000000000000000 0x0 ./Core/Src/syscalls.o + .bss 0x0000000000000000 0x0 ./Core/Src/syscalls.o + .bss.__env 0x0000000000000000 0x4 ./Core/Src/syscalls.o + .data.environ 0x0000000000000000 0x4 ./Core/Src/syscalls.o + .text.initialise_monitor_handles + 0x0000000000000000 0xc ./Core/Src/syscalls.o + .text._getpid 0x0000000000000000 0xe ./Core/Src/syscalls.o + .text._kill 0x0000000000000000 0x20 ./Core/Src/syscalls.o + .text._exit 0x0000000000000000 0x14 ./Core/Src/syscalls.o + .text._read 0x0000000000000000 0x3a ./Core/Src/syscalls.o + .text._write 0x0000000000000000 0x38 ./Core/Src/syscalls.o + .text._close 0x0000000000000000 0x16 ./Core/Src/syscalls.o + .text._fstat 0x0000000000000000 0x1e ./Core/Src/syscalls.o + .text._isatty 0x0000000000000000 0x14 ./Core/Src/syscalls.o + .text._lseek 0x0000000000000000 0x18 ./Core/Src/syscalls.o + .text._open 0x0000000000000000 0x1a ./Core/Src/syscalls.o + .text._wait 0x0000000000000000 0x1e ./Core/Src/syscalls.o + .text._unlink 0x0000000000000000 0x1e ./Core/Src/syscalls.o + .text._times 0x0000000000000000 0x16 ./Core/Src/syscalls.o + .text._stat 0x0000000000000000 0x1e ./Core/Src/syscalls.o + .text._link 0x0000000000000000 0x20 ./Core/Src/syscalls.o + .text._fork 0x0000000000000000 0x16 ./Core/Src/syscalls.o + .text._execve 0x0000000000000000 0x22 ./Core/Src/syscalls.o + .debug_info 0x0000000000000000 0xfa8 ./Core/Src/syscalls.o + .debug_abbrev 0x0000000000000000 0x286 ./Core/Src/syscalls.o + .debug_aranges + 0x0000000000000000 0xa8 ./Core/Src/syscalls.o + .debug_ranges 0x0000000000000000 0x98 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x24c ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0xa9c ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x4c ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x18 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x94 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x3c ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x34 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x57 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x174 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x339 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x16 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x43 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x34 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x58 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x71 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x1c ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x12a ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x35 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x6a ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x1c ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x52 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x40 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0xd5 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x1c ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x3d ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x35 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x12c ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x16 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x16 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x29 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x241 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x1c ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x10 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x16 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x145 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x189 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0x16 ./Core/Src/syscalls.o + .debug_macro 0x0000000000000000 0xce ./Core/Src/syscalls.o + .debug_line 0x0000000000000000 0x802 ./Core/Src/syscalls.o + .debug_str 0x0000000000000000 0x8e8c ./Core/Src/syscalls.o + .comment 0x0000000000000000 0x54 ./Core/Src/syscalls.o + .debug_frame 0x0000000000000000 0x2ac ./Core/Src/syscalls.o + .ARM.attributes + 0x0000000000000000 0x2d ./Core/Src/syscalls.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/sysmem.o + .text 0x0000000000000000 0x0 ./Core/Src/sysmem.o + .data 0x0000000000000000 0x0 ./Core/Src/sysmem.o + .bss 0x0000000000000000 0x0 ./Core/Src/sysmem.o + .bss.__sbrk_heap_end + 0x0000000000000000 0x4 ./Core/Src/sysmem.o + .text._sbrk 0x0000000000000000 0x6c ./Core/Src/sysmem.o + .debug_info 0x0000000000000000 0xa25 ./Core/Src/sysmem.o + .debug_abbrev 0x0000000000000000 0x1bf ./Core/Src/sysmem.o + .debug_aranges + 0x0000000000000000 0x20 ./Core/Src/sysmem.o + .debug_ranges 0x0000000000000000 0x10 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0xff ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0xa9c ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x10 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x4c ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x18 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x94 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x3c ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x34 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x174 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x16 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x43 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x57 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x34 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x10 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x58 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x71 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x1c ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x12a ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x23b ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x103 ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x6a ./Core/Src/sysmem.o + .debug_macro 0x0000000000000000 0x1df ./Core/Src/sysmem.o + .debug_line 0x0000000000000000 0x4f8 ./Core/Src/sysmem.o + .debug_str 0x0000000000000000 0x625f ./Core/Src/sysmem.o + .comment 0x0000000000000000 0x54 ./Core/Src/sysmem.o + .debug_frame 0x0000000000000000 0x34 ./Core/Src/sysmem.o + .ARM.attributes + 0x0000000000000000 0x2d ./Core/Src/sysmem.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .group 0x0000000000000000 0xc ./Core/Src/system_stm32f1xx.o + .text 0x0000000000000000 0x0 ./Core/Src/system_stm32f1xx.o + .data 0x0000000000000000 0x0 ./Core/Src/system_stm32f1xx.o + .bss 0x0000000000000000 0x0 ./Core/Src/system_stm32f1xx.o + .rodata.APBPrescTable + 0x0000000000000000 0x8 ./Core/Src/system_stm32f1xx.o + .text.SystemCoreClockUpdate + 0x0000000000000000 0xe4 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0xa9c ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x2e ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x8e ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x51 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x103 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x6a ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x1df ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x1c ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x22 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0xc3 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0xd23 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0xe09e ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x6d ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x20f ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x3468 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x174 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x5c ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x5be ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x289 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x1cb ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x114 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x1b2 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x27 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x136 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x1bc ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x34 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x3c ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x57 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x88 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x241 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x141 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x0000000000000000 0x83 ./Core/Src/system_stm32f1xx.o + .text 0x0000000000000000 0x14 ./Core/Startup/startup_stm32f103c8tx.o + .data 0x0000000000000000 0x0 ./Core/Startup/startup_stm32f103c8tx.o + .bss 0x0000000000000000 0x0 ./Core/Startup/startup_stm32f103c8tx.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DeInit + 0x0000000000000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_MspInit + 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_MspDeInit + 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetTickPrio + 0x0000000000000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_SetTickFreq + 0x0000000000000000 0x50 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetTickFreq + 0x0000000000000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_Delay + 0x0000000000000000 0x48 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_SuspendTick + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_ResumeTick + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetHalVersion + 0x0000000000000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetREVID + 0x0000000000000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetDEVID + 0x0000000000000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetUIDw0 + 0x0000000000000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetUIDw1 + 0x0000000000000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_GetUIDw2 + 0x0000000000000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_EnableDBGSleepMode + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_DisableDBGSleepMode + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_EnableDBGStopMode + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_DisableDBGStopMode + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_EnableDBGStandbyMode + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .text.HAL_DBGMCU_DisableDBGStandbyMode + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_EnableIRQ + 0x0000000000000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_DisableIRQ + 0x0000000000000000 0x48 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_GetPendingIRQ + 0x0000000000000000 0x40 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_SetPendingIRQ + 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_ClearPendingIRQ + 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_GetActive + 0x0000000000000000 0x40 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_GetPriority + 0x0000000000000000 0x4c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.NVIC_DecodePriority + 0x0000000000000000 0x6c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_SystemReset + 0x0000000000000000 0x2c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_EnableIRQ + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_DisableIRQ + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_SystemReset + 0x0000000000000000 0x8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_GetPriorityGrouping + 0x0000000000000000 0xe ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_GetPriority + 0x0000000000000000 0x2c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_SetPendingIRQ + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_GetPendingIRQ + 0x0000000000000000 0x1e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_ClearPendingIRQ + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_GetActive + 0x0000000000000000 0x1e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_SYSTICK_CLKSourceConfig + 0x0000000000000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_SYSTICK_IRQHandler + 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_SYSTICK_Callback + 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_Init + 0x0000000000000000 0xb4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_DeInit + 0x0000000000000000 0xb8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_Start + 0x0000000000000000 0x84 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_Start_IT + 0x0000000000000000 0xbe ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_Abort + 0x0000000000000000 0x74 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_Abort_IT + 0x0000000000000000 0xec ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_PollForTransfer + 0x0000000000000000 0x30c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_IRQHandler + 0x0000000000000000 0x20c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_RegisterCallback + 0x0000000000000000 0x90 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_UnRegisterCallback + 0x0000000000000000 0xa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_GetState + 0x0000000000000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.HAL_DMA_GetError + 0x0000000000000000 0x16 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .text.DMA_SetConfig + 0x0000000000000000 0x5a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_info 0x0000000000000000 0x81e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_abbrev 0x0000000000000000 0x228 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_aranges + 0x0000000000000000 0x80 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_ranges 0x0000000000000000 0x70 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_line 0x0000000000000000 0xd37 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_str 0x0000000000000000 0x7b02e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .comment 0x0000000000000000 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .debug_frame 0x0000000000000000 0x208 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .ARM.attributes + 0x0000000000000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_SetConfigLine + 0x0000000000000000 0x14c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_GetConfigLine + 0x0000000000000000 0xf0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_ClearConfigLine + 0x0000000000000000 0xc0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_RegisterCallback + 0x0000000000000000 0x32 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_GetHandle + 0x0000000000000000 0x26 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_IRQHandler + 0x0000000000000000 0x48 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_GetPending + 0x0000000000000000 0x40 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_ClearPending + 0x0000000000000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .text.HAL_EXTI_GenerateSWI + 0x0000000000000000 0x2c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_info 0x0000000000000000 0x62f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_abbrev 0x0000000000000000 0x1e2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_aranges + 0x0000000000000000 0x60 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_ranges 0x0000000000000000 0x50 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_line 0x0000000000000000 0x907 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_str 0x0000000000000000 0x7ae13 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .comment 0x0000000000000000 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .debug_frame 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .ARM.attributes + 0x0000000000000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_Program + 0x0000000000000000 0xe0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_Program_IT + 0x0000000000000000 0x90 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_IRQHandler + 0x0000000000000000 0x1c8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_EndOfOperationCallback + 0x0000000000000000 0x12 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_OperationErrorCallback + 0x0000000000000000 0x12 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_Unlock + 0x0000000000000000 0x4c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_Lock + 0x0000000000000000 0x20 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_OB_Unlock + 0x0000000000000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_OB_Lock + 0x0000000000000000 0x20 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_OB_Launch + 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.HAL_FLASH_GetError + 0x0000000000000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.FLASH_Program_HalfWord + 0x0000000000000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.FLASH_WaitForLastOperation + 0x0000000000000000 0x8c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .text.FLASH_SetErrorCode + 0x0000000000000000 0xa0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_info 0x0000000000000000 0x5f3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_abbrev 0x0000000000000000 0x23e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_aranges + 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_ranges 0x0000000000000000 0x78 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_line 0x0000000000000000 0x9bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_str 0x0000000000000000 0x7af29 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .comment 0x0000000000000000 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .debug_frame 0x0000000000000000 0x20c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .ARM.attributes + 0x0000000000000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + COMMON 0x0000000000000000 0x20 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_Erase + 0x0000000000000000 0xd8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_Erase_IT + 0x0000000000000000 0x84 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_OBErase + 0x0000000000000000 0x84 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_OBProgram + 0x0000000000000000 0xf8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_OBGetConfig + 0x0000000000000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.HAL_FLASHEx_OBGetUserData + 0x0000000000000000 0x40 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_MassErase + 0x0000000000000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_EnableWRP + 0x0000000000000000 0x144 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_DisableWRP + 0x0000000000000000 0x140 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_RDP_LevelConfig + 0x0000000000000000 0xa0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_UserConfig + 0x0000000000000000 0x70 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_ProgramData + 0x0000000000000000 0x68 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_GetWRP + 0x0000000000000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_GetRDP + 0x0000000000000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_OB_GetUser + 0x0000000000000000 0x20 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .text.FLASH_PageErase + 0x0000000000000000 0x40 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_info 0x0000000000000000 0x8a2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_abbrev 0x0000000000000000 0x249 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_aranges + 0x0000000000000000 0x98 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_ranges 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x196 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_line 0x0000000000000000 0xaab ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_str 0x0000000000000000 0x7b0ed ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .comment 0x0000000000000000 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .debug_frame 0x0000000000000000 0x258 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .ARM.attributes + 0x0000000000000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_Init + 0x0000000000000000 0x308 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_DeInit + 0x0000000000000000 0x178 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_ReadPin + 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_WritePin + 0x0000000000000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_TogglePin + 0x0000000000000000 0x32 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_LockPin + 0x0000000000000000 0x4e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_EXTI_IRQHandler + 0x0000000000000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .text.HAL_GPIO_EXTI_Callback + 0x0000000000000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_info 0x0000000000000000 0x701 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_abbrev 0x0000000000000000 0x1e8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_aranges + 0x0000000000000000 0x58 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_ranges 0x0000000000000000 0x48 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x1ef ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_line 0x0000000000000000 0x976 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_str 0x0000000000000000 0x7b017 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .comment 0x0000000000000000 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .debug_frame 0x0000000000000000 0x14c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .ARM.attributes + 0x0000000000000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .text.HAL_GPIOEx_ConfigEventout + 0x0000000000000000 0x2c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .text.HAL_GPIOEx_EnableEventout + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .text.HAL_GPIOEx_DisableEventout + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_info 0x0000000000000000 0x248 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_abbrev 0x0000000000000000 0x112 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_aranges + 0x0000000000000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_ranges 0x0000000000000000 0x20 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_line 0x0000000000000000 0x675 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_str 0x0000000000000000 0x7ac94 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .comment 0x0000000000000000 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .debug_frame 0x0000000000000000 0x78 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .ARM.attributes + 0x0000000000000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.PWR_OverloadWfe + 0x0000000000000000 0x10 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DeInit + 0x0000000000000000 0x28 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnableBkUpAccess + 0x0000000000000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DisableBkUpAccess + 0x0000000000000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_ConfigPVD + 0x0000000000000000 0xbc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnablePVD + 0x0000000000000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DisablePVD + 0x0000000000000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnableWakeUpPin + 0x0000000000000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DisableWakeUpPin + 0x0000000000000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnterSLEEPMode + 0x0000000000000000 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnterSTOPMode + 0x0000000000000000 0x64 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnterSTANDBYMode + 0x0000000000000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnableSleepOnExit + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DisableSleepOnExit + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_EnableSEVOnPend + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_DisableSEVOnPend + 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_PVD_IRQHandler + 0x0000000000000000 0x24 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .text.HAL_PWR_PVDCallback + 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_info 0x0000000000000000 0x730 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_abbrev 0x0000000000000000 0x213 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_aranges + 0x0000000000000000 0xa8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_ranges 0x0000000000000000 0x98 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x1e4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_line 0x0000000000000000 0x861 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_str 0x0000000000000000 0x7b1b6 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .comment 0x0000000000000000 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .debug_frame 0x0000000000000000 0x270 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .ARM.attributes + 0x0000000000000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_DeInit + 0x0000000000000000 0x134 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_MCOConfig + 0x0000000000000000 0x70 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_EnableCSS + 0x0000000000000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_DisableCSS + 0x0000000000000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_GetHCLKFreq + 0x0000000000000000 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_GetPCLK1Freq + 0x0000000000000000 0x28 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_GetPCLK2Freq + 0x0000000000000000 0x28 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_GetOscConfig + 0x0000000000000000 0x104 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_GetClockConfig + 0x0000000000000000 0x60 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_NMI_IRQHandler + 0x0000000000000000 0x28 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.HAL_RCC_CSSCallback + 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .text.HAL_RCCEx_PeriphCLKConfig + 0x0000000000000000 0x16c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .text.HAL_RCCEx_GetPeriphCLKConfig + 0x0000000000000000 0x60 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .rodata 0x0000000000000000 0x10 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .text.HAL_RCCEx_GetPeriphCLKFreq + 0x0000000000000000 0x188 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_info 0x0000000000000000 0x480 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_abbrev 0x0000000000000000 0x193 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_aranges + 0x0000000000000000 0x30 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_ranges 0x0000000000000000 0x20 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_line 0x0000000000000000 0x82b ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_str 0x0000000000000000 0x7addd ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .comment 0x0000000000000000 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .debug_frame 0x0000000000000000 0x84 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .ARM.attributes + 0x0000000000000000 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_info 0x0000000000000000 0x178 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_abbrev 0x0000000000000000 0x9a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_aranges + 0x0000000000000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x185 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_line 0x0000000000000000 0x629 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .debug_str 0x0000000000000000 0x7abf4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .comment 0x0000000000000000 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .ARM.attributes + 0x0000000000000000 0x33 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .group 0x0000000000000000 0xc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .text 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .data 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .bss 0x0000000000000000 0x0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_info 0x0000000000000000 0x178 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_abbrev 0x0000000000000000 0x9a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_aranges + 0x0000000000000000 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0xa9c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x20f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x2e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x8e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x51 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x103 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x6a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x1df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x22 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0xc3 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0xd23 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0xe09e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x6d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x3468 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x174 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x5c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x5be ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x289 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x1cb ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x114 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x1b2 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x27 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x136 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x1bc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x34 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x57 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x88 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x241 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x141 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_macro 0x0000000000000000 0x83 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_line 0x0000000000000000 0x62c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .debug_str 0x0000000000000000 0x7abf7 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .comment 0x0000000000000000 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .ARM.attributes + 0x0000000000000000 0x33 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o + .text 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-errno.o) + .data 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-errno.o) + .bss 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-errno.o) + .text.__errno 0x0000000000000000 0xc c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-errno.o) + .debug_frame 0x0000000000000000 0x20 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-errno.o) + .ARM.attributes + 0x0000000000000000 0x2d c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-errno.o) + .text 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-exit.o) + .data 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-exit.o) + .bss 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-exit.o) + .text.exit 0x0000000000000000 0x28 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-exit.o) + .debug_frame 0x0000000000000000 0x28 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-exit.o) + .ARM.attributes + 0x0000000000000000 0x2d c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-exit.o) + .text 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-impure.o) + .data 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-impure.o) + .bss 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-impure.o) + .data._impure_ptr + 0x0000000000000000 0x4 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-impure.o) + .data.impure_data + 0x0000000000000000 0x60 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-impure.o) + .rodata._global_impure_ptr + 0x0000000000000000 0x4 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-impure.o) + .ARM.attributes + 0x0000000000000000 0x2d c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-impure.o) + .text 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-init.o) + .data 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-init.o) + .bss 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-init.o) + .text 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-memset.o) + .data 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-memset.o) + .bss 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-memset.o) + .text 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtend.o + .data 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtend.o + .bss 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtend.o + .eh_frame 0x0000000000000000 0x4 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtend.o + .ARM.attributes + 0x0000000000000000 0x2d c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtend.o + .text 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtn.o + .data 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtn.o + .bss 0x0000000000000000 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtn.o + +Memory Configuration + +Name Origin Length Attributes +RAM 0x0000000020000000 0x0000000000005000 xrw +FLASH 0x0000000008000000 0x0000000000010000 xr +*default* 0x0000000000000000 0xffffffffffffffff + +Linker script and memory map + +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crti.o +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/crt0.o +LOAD ./Core/Src/main.o +LOAD ./Core/Src/stm32f1xx_hal_msp.o +LOAD ./Core/Src/stm32f1xx_it.o +LOAD ./Core/Src/syscalls.o +LOAD ./Core/Src/sysmem.o +LOAD ./Core/Src/system_stm32f1xx.o +LOAD ./Core/Startup/startup_stm32f103c8tx.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o +LOAD ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o +START GROUP +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libm.a +END GROUP +START GROUP +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp\libgcc.a +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a +END GROUP +START GROUP +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp\libgcc.a +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libnosys.a +END GROUP +START GROUP +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp\libgcc.a +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libnosys.a +END GROUP +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtend.o +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtn.o + 0x0000000020005000 _estack = (ORIGIN (RAM) + LENGTH (RAM)) + 0x0000000000000200 _Min_Heap_Size = 0x200 + 0x0000000000000400 _Min_Stack_Size = 0x400 + +.isr_vector 0x0000000008000000 0x10c + 0x0000000008000000 . = ALIGN (0x4) + *(.isr_vector) + .isr_vector 0x0000000008000000 0x10c ./Core/Startup/startup_stm32f103c8tx.o + 0x0000000008000000 g_pfnVectors + 0x000000000800010c . = ALIGN (0x4) + +.text 0x000000000800010c 0xd04 + 0x000000000800010c . = ALIGN (0x4) + *(.text) + .text 0x000000000800010c 0x40 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + *(.text*) + .text.main 0x000000000800014c 0x12 ./Core/Src/main.o + 0x000000000800014c main + .text.SystemClock_Config + 0x000000000800015e 0x8a ./Core/Src/main.o + 0x000000000800015e SystemClock_Config + .text.MX_GPIO_Init + 0x00000000080001e8 0x44 ./Core/Src/main.o + .text.Error_Handler + 0x000000000800022c 0xa ./Core/Src/main.o + 0x000000000800022c Error_Handler + *fill* 0x0000000008000236 0x2 + .text.HAL_MspInit + 0x0000000008000238 0x64 ./Core/Src/stm32f1xx_hal_msp.o + 0x0000000008000238 HAL_MspInit + .text.NMI_Handler + 0x000000000800029c 0x6 ./Core/Src/stm32f1xx_it.o + 0x000000000800029c NMI_Handler + .text.HardFault_Handler + 0x00000000080002a2 0x6 ./Core/Src/stm32f1xx_it.o + 0x00000000080002a2 HardFault_Handler + .text.MemManage_Handler + 0x00000000080002a8 0x6 ./Core/Src/stm32f1xx_it.o + 0x00000000080002a8 MemManage_Handler + .text.BusFault_Handler + 0x00000000080002ae 0x6 ./Core/Src/stm32f1xx_it.o + 0x00000000080002ae BusFault_Handler + .text.UsageFault_Handler + 0x00000000080002b4 0x6 ./Core/Src/stm32f1xx_it.o + 0x00000000080002b4 UsageFault_Handler + .text.SVC_Handler + 0x00000000080002ba 0xc ./Core/Src/stm32f1xx_it.o + 0x00000000080002ba SVC_Handler + .text.DebugMon_Handler + 0x00000000080002c6 0xc ./Core/Src/stm32f1xx_it.o + 0x00000000080002c6 DebugMon_Handler + .text.PendSV_Handler + 0x00000000080002d2 0xc ./Core/Src/stm32f1xx_it.o + 0x00000000080002d2 PendSV_Handler + .text.SysTick_Handler + 0x00000000080002de 0xc ./Core/Src/stm32f1xx_it.o + 0x00000000080002de SysTick_Handler + .text.SystemInit + 0x00000000080002ea 0xc ./Core/Src/system_stm32f1xx.o + 0x00000000080002ea SystemInit + *fill* 0x00000000080002f6 0x2 + .text.Reset_Handler + 0x00000000080002f8 0x48 ./Core/Startup/startup_stm32f103c8tx.o + 0x00000000080002f8 Reset_Handler + .text.Default_Handler + 0x0000000008000340 0x2 ./Core/Startup/startup_stm32f103c8tx.o + 0x0000000008000340 RTC_Alarm_IRQHandler + 0x0000000008000340 EXTI2_IRQHandler + 0x0000000008000340 TIM1_CC_IRQHandler + 0x0000000008000340 PVD_IRQHandler + 0x0000000008000340 EXTI3_IRQHandler + 0x0000000008000340 EXTI0_IRQHandler + 0x0000000008000340 I2C2_EV_IRQHandler + 0x0000000008000340 ADC1_2_IRQHandler + 0x0000000008000340 SPI1_IRQHandler + 0x0000000008000340 TAMPER_IRQHandler + 0x0000000008000340 DMA1_Channel4_IRQHandler + 0x0000000008000340 USART3_IRQHandler + 0x0000000008000340 RTC_IRQHandler + 0x0000000008000340 DMA1_Channel7_IRQHandler + 0x0000000008000340 CAN1_RX1_IRQHandler + 0x0000000008000340 TIM4_IRQHandler + 0x0000000008000340 I2C1_EV_IRQHandler + 0x0000000008000340 DMA1_Channel6_IRQHandler + 0x0000000008000340 TIM3_IRQHandler + 0x0000000008000340 RCC_IRQHandler + 0x0000000008000340 TIM1_TRG_COM_IRQHandler + 0x0000000008000340 DMA1_Channel1_IRQHandler + 0x0000000008000340 Default_Handler + 0x0000000008000340 EXTI15_10_IRQHandler + 0x0000000008000340 EXTI9_5_IRQHandler + 0x0000000008000340 SPI2_IRQHandler + 0x0000000008000340 DMA1_Channel5_IRQHandler + 0x0000000008000340 EXTI4_IRQHandler + 0x0000000008000340 USB_LP_CAN1_RX0_IRQHandler + 0x0000000008000340 USB_HP_CAN1_TX_IRQHandler + 0x0000000008000340 DMA1_Channel3_IRQHandler + 0x0000000008000340 TIM1_UP_IRQHandler + 0x0000000008000340 WWDG_IRQHandler + 0x0000000008000340 TIM2_IRQHandler + 0x0000000008000340 TIM1_BRK_IRQHandler + 0x0000000008000340 EXTI1_IRQHandler + 0x0000000008000340 USART2_IRQHandler + 0x0000000008000340 I2C2_ER_IRQHandler + 0x0000000008000340 DMA1_Channel2_IRQHandler + 0x0000000008000340 CAN1_SCE_IRQHandler + 0x0000000008000340 FLASH_IRQHandler + 0x0000000008000340 USART1_IRQHandler + 0x0000000008000340 I2C1_ER_IRQHandler + 0x0000000008000340 USBWakeUp_IRQHandler + *fill* 0x0000000008000342 0x2 + .text.HAL_Init + 0x0000000008000344 0x2c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x0000000008000344 HAL_Init + .text.HAL_InitTick + 0x0000000008000370 0x60 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x0000000008000370 HAL_InitTick + .text.HAL_IncTick + 0x00000000080003d0 0x24 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x00000000080003d0 HAL_IncTick + .text.HAL_GetTick + 0x00000000080003f4 0x14 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x00000000080003f4 HAL_GetTick + .text.__NVIC_SetPriorityGrouping + 0x0000000008000408 0x48 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_GetPriorityGrouping + 0x0000000008000450 0x1c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.__NVIC_SetPriority + 0x000000000800046c 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.NVIC_EncodePriority + 0x00000000080004c0 0x64 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.SysTick_Config + 0x0000000008000524 0x44 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .text.HAL_NVIC_SetPriorityGrouping + 0x0000000008000568 0x16 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + 0x0000000008000568 HAL_NVIC_SetPriorityGrouping + .text.HAL_NVIC_SetPriority + 0x000000000800057e 0x38 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + 0x000000000800057e HAL_NVIC_SetPriority + .text.HAL_SYSTICK_Config + 0x00000000080005b6 0x18 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + 0x00000000080005b6 HAL_SYSTICK_Config + *fill* 0x00000000080005ce 0x2 + .text.HAL_RCC_OscConfig + 0x00000000080005d0 0x500 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + 0x00000000080005d0 HAL_RCC_OscConfig + .text.HAL_RCC_ClockConfig + 0x0000000008000ad0 0x1d4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + 0x0000000008000ad0 HAL_RCC_ClockConfig + .text.HAL_RCC_GetSysClockFreq + 0x0000000008000ca4 0xc0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + 0x0000000008000ca4 HAL_RCC_GetSysClockFreq + .text.RCC_Delay + 0x0000000008000d64 0x3c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .text.__libc_init_array + 0x0000000008000da0 0x48 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-init.o) + 0x0000000008000da0 __libc_init_array + .text.memset 0x0000000008000de8 0x10 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-memset.o) + 0x0000000008000de8 memset + *(.glue_7) + .glue_7 0x0000000008000df8 0x0 linker stubs + *(.glue_7t) + .glue_7t 0x0000000008000df8 0x0 linker stubs + *(.eh_frame) + .eh_frame 0x0000000008000df8 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + *(.init) + .init 0x0000000008000df8 0x4 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crti.o + 0x0000000008000df8 _init + .init 0x0000000008000dfc 0x8 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtn.o + *(.fini) + .fini 0x0000000008000e04 0x4 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crti.o + 0x0000000008000e04 _fini + .fini 0x0000000008000e08 0x8 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtn.o + 0x0000000008000e10 . = ALIGN (0x4) + 0x0000000008000e10 _etext = . + +.vfp11_veneer 0x0000000008000e10 0x0 + .vfp11_veneer 0x0000000008000e10 0x0 linker stubs + +.v4_bx 0x0000000008000e10 0x0 + .v4_bx 0x0000000008000e10 0x0 linker stubs + +.iplt 0x0000000008000e10 0x0 + .iplt 0x0000000008000e10 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + +.rodata 0x0000000008000e10 0x20 + 0x0000000008000e10 . = ALIGN (0x4) + *(.rodata) + .rodata 0x0000000008000e10 0x10 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + *(.rodata*) + .rodata.AHBPrescTable + 0x0000000008000e20 0x10 ./Core/Src/system_stm32f1xx.o + 0x0000000008000e20 AHBPrescTable + 0x0000000008000e30 . = ALIGN (0x4) + +.rel.dyn 0x0000000008000e30 0x0 + .rel.iplt 0x0000000008000e30 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + +.ARM.extab 0x0000000008000e30 0x0 + 0x0000000008000e30 . = ALIGN (0x4) + *(.ARM.extab* .gnu.linkonce.armextab.*) + 0x0000000008000e30 . = ALIGN (0x4) + +.ARM 0x0000000008000e30 0x0 + 0x0000000008000e30 . = ALIGN (0x4) + 0x0000000008000e30 __exidx_start = . + *(.ARM.exidx*) + 0x0000000008000e30 __exidx_end = . + 0x0000000008000e30 . = ALIGN (0x4) + +.preinit_array 0x0000000008000e30 0x0 + 0x0000000008000e30 . = ALIGN (0x4) + 0x0000000008000e30 PROVIDE (__preinit_array_start = .) + *(.preinit_array*) + 0x0000000008000e30 PROVIDE (__preinit_array_end = .) + 0x0000000008000e30 . = ALIGN (0x4) + +.init_array 0x0000000008000e30 0x4 + 0x0000000008000e30 . = ALIGN (0x4) + 0x0000000008000e30 PROVIDE (__init_array_start = .) + *(SORT_BY_NAME(.init_array.*)) + *(.init_array*) + .init_array 0x0000000008000e30 0x4 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + 0x0000000008000e34 PROVIDE (__init_array_end = .) + 0x0000000008000e34 . = ALIGN (0x4) + +.fini_array 0x0000000008000e34 0x4 + 0x0000000008000e34 . = ALIGN (0x4) + [!provide] PROVIDE (__fini_array_start = .) + *(SORT_BY_NAME(.fini_array.*)) + *(.fini_array*) + .fini_array 0x0000000008000e34 0x4 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + [!provide] PROVIDE (__fini_array_end = .) + 0x0000000008000e38 . = ALIGN (0x4) + 0x0000000008000e38 _sidata = LOADADDR (.data) + +.data 0x0000000020000000 0xc load address 0x0000000008000e38 + 0x0000000020000000 . = ALIGN (0x4) + 0x0000000020000000 _sdata = . + *(.data) + *(.data*) + .data.SystemCoreClock + 0x0000000020000000 0x4 ./Core/Src/system_stm32f1xx.o + 0x0000000020000000 SystemCoreClock + .data.uwTickPrio + 0x0000000020000004 0x4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x0000000020000004 uwTickPrio + .data.uwTickFreq + 0x0000000020000008 0x1 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x0000000020000008 uwTickFreq + *(.RamFunc) + *(.RamFunc*) + 0x000000002000000c . = ALIGN (0x4) + *fill* 0x0000000020000009 0x3 + 0x000000002000000c _edata = . + +.igot.plt 0x000000002000000c 0x0 load address 0x0000000008000e44 + .igot.plt 0x000000002000000c 0x0 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + 0x000000002000000c . = ALIGN (0x4) + +.bss 0x000000002000000c 0x20 load address 0x0000000008000e44 + 0x000000002000000c _sbss = . + 0x000000002000000c __bss_start__ = _sbss + *(.bss) + .bss 0x000000002000000c 0x1c c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + *(.bss*) + *(COMMON) + COMMON 0x0000000020000028 0x4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x0000000020000028 uwTick + 0x000000002000002c . = ALIGN (0x4) + 0x000000002000002c _ebss = . + 0x000000002000002c __bss_end__ = _ebss + +._user_heap_stack + 0x000000002000002c 0x604 load address 0x0000000008000e44 + 0x0000000020000030 . = ALIGN (0x8) + *fill* 0x000000002000002c 0x4 + [!provide] PROVIDE (end = .) + 0x0000000020000030 PROVIDE (_end = .) + 0x0000000020000230 . = (. + _Min_Heap_Size) + *fill* 0x0000000020000030 0x200 + 0x0000000020000630 . = (. + _Min_Stack_Size) + *fill* 0x0000000020000230 0x400 + 0x0000000020000630 . = ALIGN (0x8) + +/DISCARD/ + libc.a(*) + libm.a(*) + libgcc.a(*) + +.ARM.attributes + 0x0000000000000000 0x29 + *(.ARM.attributes) + .ARM.attributes + 0x0000000000000000 0x1d c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crti.o + .ARM.attributes + 0x000000000000001d 0x2d c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + .ARM.attributes + 0x000000000000004a 0x2d ./Core/Src/main.o + .ARM.attributes + 0x0000000000000077 0x2d ./Core/Src/stm32f1xx_hal_msp.o + .ARM.attributes + 0x00000000000000a4 0x2d ./Core/Src/stm32f1xx_it.o + .ARM.attributes + 0x00000000000000d1 0x2d ./Core/Src/system_stm32f1xx.o + .ARM.attributes + 0x00000000000000fe 0x21 ./Core/Startup/startup_stm32f103c8tx.o + .ARM.attributes + 0x000000000000011f 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .ARM.attributes + 0x000000000000014c 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .ARM.attributes + 0x0000000000000179 0x2d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .ARM.attributes + 0x00000000000001a6 0x2d c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-init.o) + .ARM.attributes + 0x00000000000001d3 0x2d c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-memset.o) + .ARM.attributes + 0x0000000000000200 0x1d c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtn.o +OUTPUT(f103c8t6_HAL.elf elf32-littlearm) +LOAD linker stubs +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc.a +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libm.a +LOAD c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp\libgcc.a + +.debug_info 0x0000000000000000 0x27f9 + .debug_info 0x0000000000000000 0x427 ./Core/Src/main.o + .debug_info 0x0000000000000427 0x2fc ./Core/Src/stm32f1xx_hal_msp.o + .debug_info 0x0000000000000723 0x222 ./Core/Src/stm32f1xx_it.o + .debug_info 0x0000000000000945 0x2be ./Core/Src/system_stm32f1xx.o + .debug_info 0x0000000000000c03 0x22 ./Core/Startup/startup_stm32f103c8tx.o + .debug_info 0x0000000000000c25 0x76a ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_info 0x000000000000138f 0xbdc ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_info 0x0000000000001f6b 0x88e ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_abbrev 0x0000000000000000 0xc75 + .debug_abbrev 0x0000000000000000 0x1b3 ./Core/Src/main.o + .debug_abbrev 0x00000000000001b3 0x11d ./Core/Src/stm32f1xx_hal_msp.o + .debug_abbrev 0x00000000000002d0 0xd2 ./Core/Src/stm32f1xx_it.o + .debug_abbrev 0x00000000000003a2 0x14e ./Core/Src/system_stm32f1xx.o + .debug_abbrev 0x00000000000004f0 0x12 ./Core/Startup/startup_stm32f103c8tx.o + .debug_abbrev 0x0000000000000502 0x1ed ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_abbrev 0x00000000000006ef 0x313 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_abbrev 0x0000000000000a02 0x273 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_aranges 0x0000000000000000 0x378 + .debug_aranges + 0x0000000000000000 0x38 ./Core/Src/main.o + .debug_aranges + 0x0000000000000038 0x20 ./Core/Src/stm32f1xx_hal_msp.o + .debug_aranges + 0x0000000000000058 0x60 ./Core/Src/stm32f1xx_it.o + .debug_aranges + 0x00000000000000b8 0x28 ./Core/Src/system_stm32f1xx.o + .debug_aranges + 0x00000000000000e0 0x28 ./Core/Startup/startup_stm32f103c8tx.o + .debug_aranges + 0x0000000000000108 0xe0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_aranges + 0x00000000000001e8 0x100 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_aranges + 0x00000000000002e8 0x90 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_ranges 0x0000000000000000 0x300 + .debug_ranges 0x0000000000000000 0x28 ./Core/Src/main.o + .debug_ranges 0x0000000000000028 0x10 ./Core/Src/stm32f1xx_hal_msp.o + .debug_ranges 0x0000000000000038 0x50 ./Core/Src/stm32f1xx_it.o + .debug_ranges 0x0000000000000088 0x18 ./Core/Src/system_stm32f1xx.o + .debug_ranges 0x00000000000000a0 0x20 ./Core/Startup/startup_stm32f103c8tx.o + .debug_ranges 0x00000000000000c0 0xd0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_ranges 0x0000000000000190 0xf0 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_ranges 0x0000000000000280 0x80 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_macro 0x0000000000000000 0x156ee + .debug_macro 0x0000000000000000 0x18e ./Core/Src/main.o + .debug_macro 0x000000000000018e 0xa9c ./Core/Src/main.o + .debug_macro 0x0000000000000c2a 0x20f ./Core/Src/main.o + .debug_macro 0x0000000000000e39 0x2e ./Core/Src/main.o + .debug_macro 0x0000000000000e67 0x22 ./Core/Src/main.o + .debug_macro 0x0000000000000e89 0x22 ./Core/Src/main.o + .debug_macro 0x0000000000000eab 0x8e ./Core/Src/main.o + .debug_macro 0x0000000000000f39 0x51 ./Core/Src/main.o + .debug_macro 0x0000000000000f8a 0x103 ./Core/Src/main.o + .debug_macro 0x000000000000108d 0x6a ./Core/Src/main.o + .debug_macro 0x00000000000010f7 0x1df ./Core/Src/main.o + .debug_macro 0x00000000000012d6 0x1c ./Core/Src/main.o + .debug_macro 0x00000000000012f2 0x22 ./Core/Src/main.o + .debug_macro 0x0000000000001314 0xc3 ./Core/Src/main.o + .debug_macro 0x00000000000013d7 0xd23 ./Core/Src/main.o + .debug_macro 0x00000000000020fa 0xe09e ./Core/Src/main.o + .debug_macro 0x0000000000010198 0x6d ./Core/Src/main.o + .debug_macro 0x0000000000010205 0x3468 ./Core/Src/main.o + .debug_macro 0x000000000001366d 0x174 ./Core/Src/main.o + .debug_macro 0x00000000000137e1 0x5c ./Core/Src/main.o + .debug_macro 0x000000000001383d 0x5be ./Core/Src/main.o + .debug_macro 0x0000000000013dfb 0x289 ./Core/Src/main.o + .debug_macro 0x0000000000014084 0x1cb ./Core/Src/main.o + .debug_macro 0x000000000001424f 0x114 ./Core/Src/main.o + .debug_macro 0x0000000000014363 0x1b2 ./Core/Src/main.o + .debug_macro 0x0000000000014515 0x27 ./Core/Src/main.o + .debug_macro 0x000000000001453c 0x136 ./Core/Src/main.o + .debug_macro 0x0000000000014672 0x1bc ./Core/Src/main.o + .debug_macro 0x000000000001482e 0x34 ./Core/Src/main.o + .debug_macro 0x0000000000014862 0x3c ./Core/Src/main.o + .debug_macro 0x000000000001489e 0x57 ./Core/Src/main.o + .debug_macro 0x00000000000148f5 0x88 ./Core/Src/main.o + .debug_macro 0x000000000001497d 0x241 ./Core/Src/main.o + .debug_macro 0x0000000000014bbe 0x141 ./Core/Src/main.o + .debug_macro 0x0000000000014cff 0x83 ./Core/Src/main.o + .debug_macro 0x0000000000014d82 0x18e ./Core/Src/stm32f1xx_hal_msp.o + .debug_macro 0x0000000000014f10 0x198 ./Core/Src/stm32f1xx_it.o + .debug_macro 0x00000000000150a8 0x184 ./Core/Src/system_stm32f1xx.o + .debug_macro 0x000000000001522c 0x1a8 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_macro 0x00000000000153d4 0x184 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_macro 0x0000000000015558 0x196 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_line 0x0000000000000000 0x3bae + .debug_line 0x0000000000000000 0x6b8 ./Core/Src/main.o + .debug_line 0x00000000000006b8 0x634 ./Core/Src/stm32f1xx_hal_msp.o + .debug_line 0x0000000000000cec 0x6f6 ./Core/Src/stm32f1xx_it.o + .debug_line 0x00000000000013e2 0x6b2 ./Core/Src/system_stm32f1xx.o + .debug_line 0x0000000000001a94 0x87 ./Core/Startup/startup_stm32f103c8tx.o + .debug_line 0x0000000000001b1b 0x8df ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_line 0x00000000000023fa 0xac7 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_line 0x0000000000002ec1 0xced ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_str 0x0000000000000000 0x7b703 + .debug_str 0x0000000000000000 0x7aa68 ./Core/Src/main.o + 0x7ad96 (size before relaxing) + .debug_str 0x000000000007aa68 0x5a ./Core/Src/stm32f1xx_hal_msp.o + 0x7ac66 (size before relaxing) + .debug_str 0x000000000007aac2 0xbd ./Core/Src/stm32f1xx_it.o + 0x7ac83 (size before relaxing) + .debug_str 0x000000000007ab7f 0x52 ./Core/Src/system_stm32f1xx.o + 0x7ac53 (size before relaxing) + .debug_str 0x000000000007abd1 0x36 ./Core/Startup/startup_stm32f103c8tx.o + 0x73 (size before relaxing) + .debug_str 0x000000000007ac07 0x56f ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x7b2e4 (size before relaxing) + .debug_str 0x000000000007b176 0x300 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + 0x7b2ec (size before relaxing) + .debug_str 0x000000000007b476 0x28d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + 0x7b050 (size before relaxing) + +.comment 0x0000000000000000 0x53 + .comment 0x0000000000000000 0x53 ./Core/Src/main.o + 0x54 (size before relaxing) + .comment 0x0000000000000053 0x54 ./Core/Src/stm32f1xx_hal_msp.o + .comment 0x0000000000000053 0x54 ./Core/Src/stm32f1xx_it.o + .comment 0x0000000000000053 0x54 ./Core/Src/system_stm32f1xx.o + .comment 0x0000000000000053 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .comment 0x0000000000000053 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .comment 0x0000000000000053 0x54 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + +.debug_frame 0x0000000000000000 0xbe8 + .debug_frame 0x0000000000000000 0x90 ./Core/Src/main.o + .debug_frame 0x0000000000000090 0x38 ./Core/Src/stm32f1xx_hal_msp.o + .debug_frame 0x00000000000000c8 0x104 ./Core/Src/stm32f1xx_it.o + .debug_frame 0x00000000000001cc 0x58 ./Core/Src/system_stm32f1xx.o + .debug_frame 0x0000000000000224 0x334 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + .debug_frame 0x0000000000000558 0x428 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o + .debug_frame 0x0000000000000980 0x21c ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .debug_frame 0x0000000000000b9c 0x2c c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-init.o) + .debug_frame 0x0000000000000bc8 0x20 c:/st/stm32cubeide_1.8.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.win32_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp\libc_nano.a(lib_a-memset.o) diff --git a/stm32f103/Debug/makefile b/f103c8t6_HAL/Debug/makefile similarity index 64% rename from stm32f103/Debug/makefile rename to f103c8t6_HAL/Debug/makefile index 2d689cf..5bc6234 100644 --- a/stm32f103/Debug/makefile +++ b/f103c8t6_HAL/Debug/makefile @@ -9,10 +9,6 @@ RM := rm -rf # All of the sources participating in the build are defined here -include sources.mk --include USB_DEVICE/Target/subdir.mk --include USB_DEVICE/App/subdir.mk --include Middlewares/ST/STM32_USB_Device_Library/Core/Src/subdir.mk --include Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/subdir.mk -include Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk -include Core/Startup/subdir.mk -include Core/Src/subdir.mk @@ -38,34 +34,34 @@ $(wildcard ../makefile.init) \ $(wildcard ../makefile.targets) \ -BUILD_ARTIFACT_NAME := stm32f103 +BUILD_ARTIFACT_NAME := f103c8t6_HAL BUILD_ARTIFACT_EXTENSION := elf BUILD_ARTIFACT_PREFIX := BUILD_ARTIFACT := $(BUILD_ARTIFACT_PREFIX)$(BUILD_ARTIFACT_NAME)$(if $(BUILD_ARTIFACT_EXTENSION),.$(BUILD_ARTIFACT_EXTENSION),) # Add inputs and outputs from these tool invocations to the build variables EXECUTABLES += \ -stm32f103.elf \ +f103c8t6_HAL.elf \ SIZE_OUTPUT += \ default.size.stdout \ OBJDUMP_LIST += \ -stm32f103.list \ +f103c8t6_HAL.list \ OBJCOPY_BIN += \ -stm32f103.bin \ +f103c8t6_HAL.bin \ # All Target all: main-build # Main-build Target -main-build: stm32f103.elf secondary-outputs +main-build: f103c8t6_HAL.elf secondary-outputs # Tool invocations -stm32f103.elf: $(OBJS) $(USER_OBJS) C:\Users\wuwen\Desktop\morse_code_trainer\stm32f103\STM32F103C8TX_FLASH.ld makefile objects.list $(OPTIONAL_TOOL_DEPS) - arm-none-eabi-gcc -o "stm32f103.elf" @"objects.list" $(USER_OBJS) $(LIBS) -mcpu=cortex-m3 -T"C:\Users\wuwen\Desktop\morse_code_trainer\stm32f103\STM32F103C8TX_FLASH.ld" --specs=nosys.specs -Wl,-Map="stm32f103.map" -Wl,--gc-sections -static --specs=nano.specs -mfloat-abi=soft -mthumb -Wl,--start-group -lc -lm -Wl,--end-group +f103c8t6_HAL.elf: $(OBJS) $(USER_OBJS) C:\Users\wuwen\Desktop\morse_code_trainer\f103c8t6_HAL\STM32F103C8TX_FLASH.ld makefile objects.list $(OPTIONAL_TOOL_DEPS) + arm-none-eabi-gcc -o "f103c8t6_HAL.elf" @"objects.list" $(USER_OBJS) $(LIBS) -mcpu=cortex-m3 -T"C:\Users\wuwen\Desktop\morse_code_trainer\f103c8t6_HAL\STM32F103C8TX_FLASH.ld" --specs=nosys.specs -Wl,-Map="f103c8t6_HAL.map" -Wl,--gc-sections -static --specs=nano.specs -mfloat-abi=soft -mthumb -Wl,--start-group -lc -lm -Wl,--end-group @echo 'Finished building target: $@' @echo ' ' @@ -74,19 +70,19 @@ default.size.stdout: $(EXECUTABLES) makefile objects.list $(OPTIONAL_TOOL_DEPS) @echo 'Finished building: $@' @echo ' ' -stm32f103.list: $(EXECUTABLES) makefile objects.list $(OPTIONAL_TOOL_DEPS) - arm-none-eabi-objdump -h -S $(EXECUTABLES) > "stm32f103.list" +f103c8t6_HAL.list: $(EXECUTABLES) makefile objects.list $(OPTIONAL_TOOL_DEPS) + arm-none-eabi-objdump -h -S $(EXECUTABLES) > "f103c8t6_HAL.list" @echo 'Finished building: $@' @echo ' ' -stm32f103.bin: $(EXECUTABLES) makefile objects.list $(OPTIONAL_TOOL_DEPS) - arm-none-eabi-objcopy -O binary $(EXECUTABLES) "stm32f103.bin" +f103c8t6_HAL.bin: $(EXECUTABLES) makefile objects.list $(OPTIONAL_TOOL_DEPS) + arm-none-eabi-objcopy -O binary $(EXECUTABLES) "f103c8t6_HAL.bin" @echo 'Finished building: $@' @echo ' ' # Other Targets clean: - -$(RM) default.size.stdout stm32f103.bin stm32f103.elf stm32f103.list + -$(RM) default.size.stdout f103c8t6_HAL.bin f103c8t6_HAL.elf f103c8t6_HAL.list -@echo ' ' secondary-outputs: $(SIZE_OUTPUT) $(OBJDUMP_LIST) $(OBJCOPY_BIN) diff --git a/stm32f103/Debug/objects.list b/f103c8t6_HAL/Debug/objects.list similarity index 54% rename from stm32f103/Debug/objects.list rename to f103c8t6_HAL/Debug/objects.list index 976fd9f..ed9dee4 100644 --- a/stm32f103/Debug/objects.list +++ b/f103c8t6_HAL/Debug/objects.list @@ -6,8 +6,6 @@ "./Core/Src/system_stm32f1xx.o" "./Core/Startup/startup_stm32f103c8tx.o" "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o" -"./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.o" -"./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.o" "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o" "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o" "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o" @@ -15,21 +13,8 @@ "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o" "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o" "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o" -"./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.o" -"./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.o" -"./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.o" "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o" "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o" "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o" "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o" "./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o" -"./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.o" -"./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.o" -"./Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.o" -"./Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.o" -"./Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.o" -"./Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.o" -"./USB_DEVICE/App/usb_device.o" -"./USB_DEVICE/App/usbd_desc.o" -"./USB_DEVICE/App/usbd_dfu_if.o" -"./USB_DEVICE/Target/usbd_conf.o" diff --git a/stm32f103/Debug/objects.mk b/f103c8t6_HAL/Debug/objects.mk similarity index 100% rename from stm32f103/Debug/objects.mk rename to f103c8t6_HAL/Debug/objects.mk diff --git a/stm32f103/Debug/sources.mk b/f103c8t6_HAL/Debug/sources.mk similarity index 80% rename from stm32f103/Debug/sources.mk rename to f103c8t6_HAL/Debug/sources.mk index 8abaa8f..0b21f01 100644 --- a/stm32f103/Debug/sources.mk +++ b/f103c8t6_HAL/Debug/sources.mk @@ -23,8 +23,4 @@ SUBDIRS := \ Core/Src \ Core/Startup \ Drivers/STM32F1xx_HAL_Driver/Src \ -Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src \ -Middlewares/ST/STM32_USB_Device_Library/Core/Src \ -USB_DEVICE/App \ -USB_DEVICE/Target \ diff --git a/stm32f103/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h b/f103c8t6_HAL/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h similarity index 98% rename from stm32f103/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h rename to f103c8t6_HAL/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h index 99d0ecc..8171849 100644 --- a/stm32f103/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h @@ -1,10242 +1,10242 @@ -/** - ****************************************************************************** - * @file stm32f103xb.h - * @author MCD Application Team - * @brief CMSIS Cortex-M3 Device Peripheral Access Layer Header File. - * This file contains all the peripheral register's definitions, bits - * definitions and memory mapping for STM32F1xx devices. - * - * This file contains: - * - Data structures and the address mapping for all peripherals - * - Peripheral's registers declarations and bits definition - * - Macros to access peripheral’s registers hardware - * - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2017 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - - -/** @addtogroup CMSIS - * @{ - */ - -/** @addtogroup stm32f103xb - * @{ - */ - -#ifndef __STM32F103xB_H -#define __STM32F103xB_H - -#ifdef __cplusplus - extern "C" { -#endif - -/** @addtogroup Configuration_section_for_CMSIS - * @{ - */ -/** - * @brief Configuration of the Cortex-M3 Processor and Core Peripherals - */ -#define __CM3_REV 0x0200U /*!< Core Revision r2p0 */ - #define __MPU_PRESENT 0U /*!< Other STM32 devices does not provide an MPU */ -#define __NVIC_PRIO_BITS 4U /*!< STM32 uses 4 Bits for the Priority Levels */ -#define __Vendor_SysTickConfig 0U /*!< Set to 1 if different SysTick Config is used */ - -/** - * @} - */ - -/** @addtogroup Peripheral_interrupt_number_definition - * @{ - */ - -/** - * @brief STM32F10x Interrupt Number Definition, according to the selected device - * in @ref Library_configuration_section - */ - - /*!< Interrupt Number Definition */ -typedef enum -{ -/****** Cortex-M3 Processor Exceptions Numbers ***************************************************/ - NonMaskableInt_IRQn = -14, /*!< 2 Non Maskable Interrupt */ - HardFault_IRQn = -13, /*!< 3 Cortex-M3 Hard Fault Interrupt */ - MemoryManagement_IRQn = -12, /*!< 4 Cortex-M3 Memory Management Interrupt */ - BusFault_IRQn = -11, /*!< 5 Cortex-M3 Bus Fault Interrupt */ - UsageFault_IRQn = -10, /*!< 6 Cortex-M3 Usage Fault Interrupt */ - SVCall_IRQn = -5, /*!< 11 Cortex-M3 SV Call Interrupt */ - DebugMonitor_IRQn = -4, /*!< 12 Cortex-M3 Debug Monitor Interrupt */ - PendSV_IRQn = -2, /*!< 14 Cortex-M3 Pend SV Interrupt */ - SysTick_IRQn = -1, /*!< 15 Cortex-M3 System Tick Interrupt */ - -/****** STM32 specific Interrupt Numbers *********************************************************/ - WWDG_IRQn = 0, /*!< Window WatchDog Interrupt */ - PVD_IRQn = 1, /*!< PVD through EXTI Line detection Interrupt */ - TAMPER_IRQn = 2, /*!< Tamper Interrupt */ - RTC_IRQn = 3, /*!< RTC global Interrupt */ - FLASH_IRQn = 4, /*!< FLASH global Interrupt */ - RCC_IRQn = 5, /*!< RCC global Interrupt */ - EXTI0_IRQn = 6, /*!< EXTI Line0 Interrupt */ - EXTI1_IRQn = 7, /*!< EXTI Line1 Interrupt */ - EXTI2_IRQn = 8, /*!< EXTI Line2 Interrupt */ - EXTI3_IRQn = 9, /*!< EXTI Line3 Interrupt */ - EXTI4_IRQn = 10, /*!< EXTI Line4 Interrupt */ - DMA1_Channel1_IRQn = 11, /*!< DMA1 Channel 1 global Interrupt */ - DMA1_Channel2_IRQn = 12, /*!< DMA1 Channel 2 global Interrupt */ - DMA1_Channel3_IRQn = 13, /*!< DMA1 Channel 3 global Interrupt */ - DMA1_Channel4_IRQn = 14, /*!< DMA1 Channel 4 global Interrupt */ - DMA1_Channel5_IRQn = 15, /*!< DMA1 Channel 5 global Interrupt */ - DMA1_Channel6_IRQn = 16, /*!< DMA1 Channel 6 global Interrupt */ - DMA1_Channel7_IRQn = 17, /*!< DMA1 Channel 7 global Interrupt */ - ADC1_2_IRQn = 18, /*!< ADC1 and ADC2 global Interrupt */ - USB_HP_CAN1_TX_IRQn = 19, /*!< USB Device High Priority or CAN1 TX Interrupts */ - USB_LP_CAN1_RX0_IRQn = 20, /*!< USB Device Low Priority or CAN1 RX0 Interrupts */ - CAN1_RX1_IRQn = 21, /*!< CAN1 RX1 Interrupt */ - CAN1_SCE_IRQn = 22, /*!< CAN1 SCE Interrupt */ - EXTI9_5_IRQn = 23, /*!< External Line[9:5] Interrupts */ - TIM1_BRK_IRQn = 24, /*!< TIM1 Break Interrupt */ - TIM1_UP_IRQn = 25, /*!< TIM1 Update Interrupt */ - TIM1_TRG_COM_IRQn = 26, /*!< TIM1 Trigger and Commutation Interrupt */ - TIM1_CC_IRQn = 27, /*!< TIM1 Capture Compare Interrupt */ - TIM2_IRQn = 28, /*!< TIM2 global Interrupt */ - TIM3_IRQn = 29, /*!< TIM3 global Interrupt */ - TIM4_IRQn = 30, /*!< TIM4 global Interrupt */ - I2C1_EV_IRQn = 31, /*!< I2C1 Event Interrupt */ - I2C1_ER_IRQn = 32, /*!< I2C1 Error Interrupt */ - I2C2_EV_IRQn = 33, /*!< I2C2 Event Interrupt */ - I2C2_ER_IRQn = 34, /*!< I2C2 Error Interrupt */ - SPI1_IRQn = 35, /*!< SPI1 global Interrupt */ - SPI2_IRQn = 36, /*!< SPI2 global Interrupt */ - USART1_IRQn = 37, /*!< USART1 global Interrupt */ - USART2_IRQn = 38, /*!< USART2 global Interrupt */ - USART3_IRQn = 39, /*!< USART3 global Interrupt */ - EXTI15_10_IRQn = 40, /*!< External Line[15:10] Interrupts */ - RTC_Alarm_IRQn = 41, /*!< RTC Alarm through EXTI Line Interrupt */ - USBWakeUp_IRQn = 42, /*!< USB Device WakeUp from suspend through EXTI Line Interrupt */ -} IRQn_Type; - -/** - * @} - */ - -#include "core_cm3.h" -#include "system_stm32f1xx.h" -#include - -/** @addtogroup Peripheral_registers_structures - * @{ - */ - -/** - * @brief Analog to Digital Converter - */ - -typedef struct -{ - __IO uint32_t SR; - __IO uint32_t CR1; - __IO uint32_t CR2; - __IO uint32_t SMPR1; - __IO uint32_t SMPR2; - __IO uint32_t JOFR1; - __IO uint32_t JOFR2; - __IO uint32_t JOFR3; - __IO uint32_t JOFR4; - __IO uint32_t HTR; - __IO uint32_t LTR; - __IO uint32_t SQR1; - __IO uint32_t SQR2; - __IO uint32_t SQR3; - __IO uint32_t JSQR; - __IO uint32_t JDR1; - __IO uint32_t JDR2; - __IO uint32_t JDR3; - __IO uint32_t JDR4; - __IO uint32_t DR; -} ADC_TypeDef; - -typedef struct -{ - __IO uint32_t SR; /*!< ADC status register, used for ADC multimode (bits common to several ADC instances). Address offset: ADC1 base address */ - __IO uint32_t CR1; /*!< ADC control register 1, used for ADC multimode (bits common to several ADC instances). Address offset: ADC1 base address + 0x04 */ - __IO uint32_t CR2; /*!< ADC control register 2, used for ADC multimode (bits common to several ADC instances). Address offset: ADC1 base address + 0x08 */ - uint32_t RESERVED[16]; - __IO uint32_t DR; /*!< ADC data register, used for ADC multimode (bits common to several ADC instances). Address offset: ADC1 base address + 0x4C */ -} ADC_Common_TypeDef; - -/** - * @brief Backup Registers - */ - -typedef struct -{ - uint32_t RESERVED0; - __IO uint32_t DR1; - __IO uint32_t DR2; - __IO uint32_t DR3; - __IO uint32_t DR4; - __IO uint32_t DR5; - __IO uint32_t DR6; - __IO uint32_t DR7; - __IO uint32_t DR8; - __IO uint32_t DR9; - __IO uint32_t DR10; - __IO uint32_t RTCCR; - __IO uint32_t CR; - __IO uint32_t CSR; -} BKP_TypeDef; - -/** - * @brief Controller Area Network TxMailBox - */ - -typedef struct -{ - __IO uint32_t TIR; - __IO uint32_t TDTR; - __IO uint32_t TDLR; - __IO uint32_t TDHR; -} CAN_TxMailBox_TypeDef; - -/** - * @brief Controller Area Network FIFOMailBox - */ - -typedef struct -{ - __IO uint32_t RIR; - __IO uint32_t RDTR; - __IO uint32_t RDLR; - __IO uint32_t RDHR; -} CAN_FIFOMailBox_TypeDef; - -/** - * @brief Controller Area Network FilterRegister - */ - -typedef struct -{ - __IO uint32_t FR1; - __IO uint32_t FR2; -} CAN_FilterRegister_TypeDef; - -/** - * @brief Controller Area Network - */ - -typedef struct -{ - __IO uint32_t MCR; - __IO uint32_t MSR; - __IO uint32_t TSR; - __IO uint32_t RF0R; - __IO uint32_t RF1R; - __IO uint32_t IER; - __IO uint32_t ESR; - __IO uint32_t BTR; - uint32_t RESERVED0[88]; - CAN_TxMailBox_TypeDef sTxMailBox[3]; - CAN_FIFOMailBox_TypeDef sFIFOMailBox[2]; - uint32_t RESERVED1[12]; - __IO uint32_t FMR; - __IO uint32_t FM1R; - uint32_t RESERVED2; - __IO uint32_t FS1R; - uint32_t RESERVED3; - __IO uint32_t FFA1R; - uint32_t RESERVED4; - __IO uint32_t FA1R; - uint32_t RESERVED5[8]; - CAN_FilterRegister_TypeDef sFilterRegister[14]; -} CAN_TypeDef; - -/** - * @brief CRC calculation unit - */ - -typedef struct -{ - __IO uint32_t DR; /*!< CRC Data register, Address offset: 0x00 */ - __IO uint8_t IDR; /*!< CRC Independent data register, Address offset: 0x04 */ - uint8_t RESERVED0; /*!< Reserved, Address offset: 0x05 */ - uint16_t RESERVED1; /*!< Reserved, Address offset: 0x06 */ - __IO uint32_t CR; /*!< CRC Control register, Address offset: 0x08 */ -} CRC_TypeDef; - - -/** - * @brief Debug MCU - */ - -typedef struct -{ - __IO uint32_t IDCODE; - __IO uint32_t CR; -}DBGMCU_TypeDef; - -/** - * @brief DMA Controller - */ - -typedef struct -{ - __IO uint32_t CCR; - __IO uint32_t CNDTR; - __IO uint32_t CPAR; - __IO uint32_t CMAR; -} DMA_Channel_TypeDef; - -typedef struct -{ - __IO uint32_t ISR; - __IO uint32_t IFCR; -} DMA_TypeDef; - - - -/** - * @brief External Interrupt/Event Controller - */ - -typedef struct -{ - __IO uint32_t IMR; - __IO uint32_t EMR; - __IO uint32_t RTSR; - __IO uint32_t FTSR; - __IO uint32_t SWIER; - __IO uint32_t PR; -} EXTI_TypeDef; - -/** - * @brief FLASH Registers - */ - -typedef struct -{ - __IO uint32_t ACR; - __IO uint32_t KEYR; - __IO uint32_t OPTKEYR; - __IO uint32_t SR; - __IO uint32_t CR; - __IO uint32_t AR; - __IO uint32_t RESERVED; - __IO uint32_t OBR; - __IO uint32_t WRPR; -} FLASH_TypeDef; - -/** - * @brief Option Bytes Registers - */ - -typedef struct -{ - __IO uint16_t RDP; - __IO uint16_t USER; - __IO uint16_t Data0; - __IO uint16_t Data1; - __IO uint16_t WRP0; - __IO uint16_t WRP1; - __IO uint16_t WRP2; - __IO uint16_t WRP3; -} OB_TypeDef; - -/** - * @brief General Purpose I/O - */ - -typedef struct -{ - __IO uint32_t CRL; - __IO uint32_t CRH; - __IO uint32_t IDR; - __IO uint32_t ODR; - __IO uint32_t BSRR; - __IO uint32_t BRR; - __IO uint32_t LCKR; -} GPIO_TypeDef; - -/** - * @brief Alternate Function I/O - */ - -typedef struct -{ - __IO uint32_t EVCR; - __IO uint32_t MAPR; - __IO uint32_t EXTICR[4]; - uint32_t RESERVED0; - __IO uint32_t MAPR2; -} AFIO_TypeDef; -/** - * @brief Inter Integrated Circuit Interface - */ - -typedef struct -{ - __IO uint32_t CR1; - __IO uint32_t CR2; - __IO uint32_t OAR1; - __IO uint32_t OAR2; - __IO uint32_t DR; - __IO uint32_t SR1; - __IO uint32_t SR2; - __IO uint32_t CCR; - __IO uint32_t TRISE; -} I2C_TypeDef; - -/** - * @brief Independent WATCHDOG - */ - -typedef struct -{ - __IO uint32_t KR; /*!< Key register, Address offset: 0x00 */ - __IO uint32_t PR; /*!< Prescaler register, Address offset: 0x04 */ - __IO uint32_t RLR; /*!< Reload register, Address offset: 0x08 */ - __IO uint32_t SR; /*!< Status register, Address offset: 0x0C */ -} IWDG_TypeDef; - -/** - * @brief Power Control - */ - -typedef struct -{ - __IO uint32_t CR; - __IO uint32_t CSR; -} PWR_TypeDef; - -/** - * @brief Reset and Clock Control - */ - -typedef struct -{ - __IO uint32_t CR; - __IO uint32_t CFGR; - __IO uint32_t CIR; - __IO uint32_t APB2RSTR; - __IO uint32_t APB1RSTR; - __IO uint32_t AHBENR; - __IO uint32_t APB2ENR; - __IO uint32_t APB1ENR; - __IO uint32_t BDCR; - __IO uint32_t CSR; - - -} RCC_TypeDef; - -/** - * @brief Real-Time Clock - */ - -typedef struct -{ - __IO uint32_t CRH; - __IO uint32_t CRL; - __IO uint32_t PRLH; - __IO uint32_t PRLL; - __IO uint32_t DIVH; - __IO uint32_t DIVL; - __IO uint32_t CNTH; - __IO uint32_t CNTL; - __IO uint32_t ALRH; - __IO uint32_t ALRL; -} RTC_TypeDef; - -/** - * @brief Serial Peripheral Interface - */ - -typedef struct -{ - __IO uint32_t CR1; - __IO uint32_t CR2; - __IO uint32_t SR; - __IO uint32_t DR; - __IO uint32_t CRCPR; - __IO uint32_t RXCRCR; - __IO uint32_t TXCRCR; - __IO uint32_t I2SCFGR; -} SPI_TypeDef; - -/** - * @brief TIM Timers - */ -typedef struct -{ - __IO uint32_t CR1; /*!< TIM control register 1, Address offset: 0x00 */ - __IO uint32_t CR2; /*!< TIM control register 2, Address offset: 0x04 */ - __IO uint32_t SMCR; /*!< TIM slave Mode Control register, Address offset: 0x08 */ - __IO uint32_t DIER; /*!< TIM DMA/interrupt enable register, Address offset: 0x0C */ - __IO uint32_t SR; /*!< TIM status register, Address offset: 0x10 */ - __IO uint32_t EGR; /*!< TIM event generation register, Address offset: 0x14 */ - __IO uint32_t CCMR1; /*!< TIM capture/compare mode register 1, Address offset: 0x18 */ - __IO uint32_t CCMR2; /*!< TIM capture/compare mode register 2, Address offset: 0x1C */ - __IO uint32_t CCER; /*!< TIM capture/compare enable register, Address offset: 0x20 */ - __IO uint32_t CNT; /*!< TIM counter register, Address offset: 0x24 */ - __IO uint32_t PSC; /*!< TIM prescaler register, Address offset: 0x28 */ - __IO uint32_t ARR; /*!< TIM auto-reload register, Address offset: 0x2C */ - __IO uint32_t RCR; /*!< TIM repetition counter register, Address offset: 0x30 */ - __IO uint32_t CCR1; /*!< TIM capture/compare register 1, Address offset: 0x34 */ - __IO uint32_t CCR2; /*!< TIM capture/compare register 2, Address offset: 0x38 */ - __IO uint32_t CCR3; /*!< TIM capture/compare register 3, Address offset: 0x3C */ - __IO uint32_t CCR4; /*!< TIM capture/compare register 4, Address offset: 0x40 */ - __IO uint32_t BDTR; /*!< TIM break and dead-time register, Address offset: 0x44 */ - __IO uint32_t DCR; /*!< TIM DMA control register, Address offset: 0x48 */ - __IO uint32_t DMAR; /*!< TIM DMA address for full transfer register, Address offset: 0x4C */ - __IO uint32_t OR; /*!< TIM option register, Address offset: 0x50 */ -}TIM_TypeDef; - - -/** - * @brief Universal Synchronous Asynchronous Receiver Transmitter - */ - -typedef struct -{ - __IO uint32_t SR; /*!< USART Status register, Address offset: 0x00 */ - __IO uint32_t DR; /*!< USART Data register, Address offset: 0x04 */ - __IO uint32_t BRR; /*!< USART Baud rate register, Address offset: 0x08 */ - __IO uint32_t CR1; /*!< USART Control register 1, Address offset: 0x0C */ - __IO uint32_t CR2; /*!< USART Control register 2, Address offset: 0x10 */ - __IO uint32_t CR3; /*!< USART Control register 3, Address offset: 0x14 */ - __IO uint32_t GTPR; /*!< USART Guard time and prescaler register, Address offset: 0x18 */ -} USART_TypeDef; - -/** - * @brief Universal Serial Bus Full Speed Device - */ - -typedef struct -{ - __IO uint16_t EP0R; /*!< USB Endpoint 0 register, Address offset: 0x00 */ - __IO uint16_t RESERVED0; /*!< Reserved */ - __IO uint16_t EP1R; /*!< USB Endpoint 1 register, Address offset: 0x04 */ - __IO uint16_t RESERVED1; /*!< Reserved */ - __IO uint16_t EP2R; /*!< USB Endpoint 2 register, Address offset: 0x08 */ - __IO uint16_t RESERVED2; /*!< Reserved */ - __IO uint16_t EP3R; /*!< USB Endpoint 3 register, Address offset: 0x0C */ - __IO uint16_t RESERVED3; /*!< Reserved */ - __IO uint16_t EP4R; /*!< USB Endpoint 4 register, Address offset: 0x10 */ - __IO uint16_t RESERVED4; /*!< Reserved */ - __IO uint16_t EP5R; /*!< USB Endpoint 5 register, Address offset: 0x14 */ - __IO uint16_t RESERVED5; /*!< Reserved */ - __IO uint16_t EP6R; /*!< USB Endpoint 6 register, Address offset: 0x18 */ - __IO uint16_t RESERVED6; /*!< Reserved */ - __IO uint16_t EP7R; /*!< USB Endpoint 7 register, Address offset: 0x1C */ - __IO uint16_t RESERVED7[17]; /*!< Reserved */ - __IO uint16_t CNTR; /*!< Control register, Address offset: 0x40 */ - __IO uint16_t RESERVED8; /*!< Reserved */ - __IO uint16_t ISTR; /*!< Interrupt status register, Address offset: 0x44 */ - __IO uint16_t RESERVED9; /*!< Reserved */ - __IO uint16_t FNR; /*!< Frame number register, Address offset: 0x48 */ - __IO uint16_t RESERVEDA; /*!< Reserved */ - __IO uint16_t DADDR; /*!< Device address register, Address offset: 0x4C */ - __IO uint16_t RESERVEDB; /*!< Reserved */ - __IO uint16_t BTABLE; /*!< Buffer Table address register, Address offset: 0x50 */ - __IO uint16_t RESERVEDC; /*!< Reserved */ -} USB_TypeDef; - - -/** - * @brief Window WATCHDOG - */ - -typedef struct -{ - __IO uint32_t CR; /*!< WWDG Control register, Address offset: 0x00 */ - __IO uint32_t CFR; /*!< WWDG Configuration register, Address offset: 0x04 */ - __IO uint32_t SR; /*!< WWDG Status register, Address offset: 0x08 */ -} WWDG_TypeDef; - -/** - * @} - */ - -/** @addtogroup Peripheral_memory_map - * @{ - */ - - -#define FLASH_BASE 0x08000000UL /*!< FLASH base address in the alias region */ -#define FLASH_BANK1_END 0x0801FFFFUL /*!< FLASH END address of bank1 */ -#define SRAM_BASE 0x20000000UL /*!< SRAM base address in the alias region */ -#define PERIPH_BASE 0x40000000UL /*!< Peripheral base address in the alias region */ - -#define SRAM_BB_BASE 0x22000000UL /*!< SRAM base address in the bit-band region */ -#define PERIPH_BB_BASE 0x42000000UL /*!< Peripheral base address in the bit-band region */ - - -/*!< Peripheral memory map */ -#define APB1PERIPH_BASE PERIPH_BASE -#define APB2PERIPH_BASE (PERIPH_BASE + 0x00010000UL) -#define AHBPERIPH_BASE (PERIPH_BASE + 0x00020000UL) - -#define TIM2_BASE (APB1PERIPH_BASE + 0x00000000UL) -#define TIM3_BASE (APB1PERIPH_BASE + 0x00000400UL) -#define TIM4_BASE (APB1PERIPH_BASE + 0x00000800UL) -#define RTC_BASE (APB1PERIPH_BASE + 0x00002800UL) -#define WWDG_BASE (APB1PERIPH_BASE + 0x00002C00UL) -#define IWDG_BASE (APB1PERIPH_BASE + 0x00003000UL) -#define SPI2_BASE (APB1PERIPH_BASE + 0x00003800UL) -#define USART2_BASE (APB1PERIPH_BASE + 0x00004400UL) -#define USART3_BASE (APB1PERIPH_BASE + 0x00004800UL) -#define I2C1_BASE (APB1PERIPH_BASE + 0x00005400UL) -#define I2C2_BASE (APB1PERIPH_BASE + 0x00005800UL) -#define CAN1_BASE (APB1PERIPH_BASE + 0x00006400UL) -#define BKP_BASE (APB1PERIPH_BASE + 0x00006C00UL) -#define PWR_BASE (APB1PERIPH_BASE + 0x00007000UL) -#define AFIO_BASE (APB2PERIPH_BASE + 0x00000000UL) -#define EXTI_BASE (APB2PERIPH_BASE + 0x00000400UL) -#define GPIOA_BASE (APB2PERIPH_BASE + 0x00000800UL) -#define GPIOB_BASE (APB2PERIPH_BASE + 0x00000C00UL) -#define GPIOC_BASE (APB2PERIPH_BASE + 0x00001000UL) -#define GPIOD_BASE (APB2PERIPH_BASE + 0x00001400UL) -#define GPIOE_BASE (APB2PERIPH_BASE + 0x00001800UL) -#define ADC1_BASE (APB2PERIPH_BASE + 0x00002400UL) -#define ADC2_BASE (APB2PERIPH_BASE + 0x00002800UL) -#define TIM1_BASE (APB2PERIPH_BASE + 0x00002C00UL) -#define SPI1_BASE (APB2PERIPH_BASE + 0x00003000UL) -#define USART1_BASE (APB2PERIPH_BASE + 0x00003800UL) - - -#define DMA1_BASE (AHBPERIPH_BASE + 0x00000000UL) -#define DMA1_Channel1_BASE (AHBPERIPH_BASE + 0x00000008UL) -#define DMA1_Channel2_BASE (AHBPERIPH_BASE + 0x0000001CUL) -#define DMA1_Channel3_BASE (AHBPERIPH_BASE + 0x00000030UL) -#define DMA1_Channel4_BASE (AHBPERIPH_BASE + 0x00000044UL) -#define DMA1_Channel5_BASE (AHBPERIPH_BASE + 0x00000058UL) -#define DMA1_Channel6_BASE (AHBPERIPH_BASE + 0x0000006CUL) -#define DMA1_Channel7_BASE (AHBPERIPH_BASE + 0x00000080UL) -#define RCC_BASE (AHBPERIPH_BASE + 0x00001000UL) -#define CRC_BASE (AHBPERIPH_BASE + 0x00003000UL) - -#define FLASH_R_BASE (AHBPERIPH_BASE + 0x00002000UL) /*!< Flash registers base address */ -#define FLASHSIZE_BASE 0x1FFFF7E0UL /*!< FLASH Size register base address */ -#define UID_BASE 0x1FFFF7E8UL /*!< Unique device ID register base address */ -#define OB_BASE 0x1FFFF800UL /*!< Flash Option Bytes base address */ - - - -#define DBGMCU_BASE 0xE0042000UL /*!< Debug MCU registers base address */ - -/* USB device FS */ -#define USB_BASE (APB1PERIPH_BASE + 0x00005C00UL) /*!< USB_IP Peripheral Registers base address */ -#define USB_PMAADDR (APB1PERIPH_BASE + 0x00006000UL) /*!< USB_IP Packet Memory Area base address */ - - -/** - * @} - */ - -/** @addtogroup Peripheral_declaration - * @{ - */ - -#define TIM2 ((TIM_TypeDef *)TIM2_BASE) -#define TIM3 ((TIM_TypeDef *)TIM3_BASE) -#define TIM4 ((TIM_TypeDef *)TIM4_BASE) -#define RTC ((RTC_TypeDef *)RTC_BASE) -#define WWDG ((WWDG_TypeDef *)WWDG_BASE) -#define IWDG ((IWDG_TypeDef *)IWDG_BASE) -#define SPI2 ((SPI_TypeDef *)SPI2_BASE) -#define USART2 ((USART_TypeDef *)USART2_BASE) -#define USART3 ((USART_TypeDef *)USART3_BASE) -#define I2C1 ((I2C_TypeDef *)I2C1_BASE) -#define I2C2 ((I2C_TypeDef *)I2C2_BASE) -#define USB ((USB_TypeDef *)USB_BASE) -#define CAN1 ((CAN_TypeDef *)CAN1_BASE) -#define BKP ((BKP_TypeDef *)BKP_BASE) -#define PWR ((PWR_TypeDef *)PWR_BASE) -#define AFIO ((AFIO_TypeDef *)AFIO_BASE) -#define EXTI ((EXTI_TypeDef *)EXTI_BASE) -#define GPIOA ((GPIO_TypeDef *)GPIOA_BASE) -#define GPIOB ((GPIO_TypeDef *)GPIOB_BASE) -#define GPIOC ((GPIO_TypeDef *)GPIOC_BASE) -#define GPIOD ((GPIO_TypeDef *)GPIOD_BASE) -#define GPIOE ((GPIO_TypeDef *)GPIOE_BASE) -#define ADC1 ((ADC_TypeDef *)ADC1_BASE) -#define ADC2 ((ADC_TypeDef *)ADC2_BASE) -#define ADC12_COMMON ((ADC_Common_TypeDef *)ADC1_BASE) -#define TIM1 ((TIM_TypeDef *)TIM1_BASE) -#define SPI1 ((SPI_TypeDef *)SPI1_BASE) -#define USART1 ((USART_TypeDef *)USART1_BASE) -#define DMA1 ((DMA_TypeDef *)DMA1_BASE) -#define DMA1_Channel1 ((DMA_Channel_TypeDef *)DMA1_Channel1_BASE) -#define DMA1_Channel2 ((DMA_Channel_TypeDef *)DMA1_Channel2_BASE) -#define DMA1_Channel3 ((DMA_Channel_TypeDef *)DMA1_Channel3_BASE) -#define DMA1_Channel4 ((DMA_Channel_TypeDef *)DMA1_Channel4_BASE) -#define DMA1_Channel5 ((DMA_Channel_TypeDef *)DMA1_Channel5_BASE) -#define DMA1_Channel6 ((DMA_Channel_TypeDef *)DMA1_Channel6_BASE) -#define DMA1_Channel7 ((DMA_Channel_TypeDef *)DMA1_Channel7_BASE) -#define RCC ((RCC_TypeDef *)RCC_BASE) -#define CRC ((CRC_TypeDef *)CRC_BASE) -#define FLASH ((FLASH_TypeDef *)FLASH_R_BASE) -#define OB ((OB_TypeDef *)OB_BASE) -#define DBGMCU ((DBGMCU_TypeDef *)DBGMCU_BASE) - - -/** - * @} - */ - -/** @addtogroup Exported_constants - * @{ - */ - - /** @addtogroup Hardware_Constant_Definition - * @{ - */ -#define LSI_STARTUP_TIME 85U /*!< LSI Maximum startup time in us */ - /** - * @} - */ - - /** @addtogroup Peripheral_Registers_Bits_Definition - * @{ - */ - -/******************************************************************************/ -/* Peripheral Registers_Bits_Definition */ -/******************************************************************************/ - -/******************************************************************************/ -/* */ -/* CRC calculation unit (CRC) */ -/* */ -/******************************************************************************/ - -/******************* Bit definition for CRC_DR register *********************/ -#define CRC_DR_DR_Pos (0U) -#define CRC_DR_DR_Msk (0xFFFFFFFFUL << CRC_DR_DR_Pos) /*!< 0xFFFFFFFF */ -#define CRC_DR_DR CRC_DR_DR_Msk /*!< Data register bits */ - -/******************* Bit definition for CRC_IDR register ********************/ -#define CRC_IDR_IDR_Pos (0U) -#define CRC_IDR_IDR_Msk (0xFFUL << CRC_IDR_IDR_Pos) /*!< 0x000000FF */ -#define CRC_IDR_IDR CRC_IDR_IDR_Msk /*!< General-purpose 8-bit data register bits */ - -/******************** Bit definition for CRC_CR register ********************/ -#define CRC_CR_RESET_Pos (0U) -#define CRC_CR_RESET_Msk (0x1UL << CRC_CR_RESET_Pos) /*!< 0x00000001 */ -#define CRC_CR_RESET CRC_CR_RESET_Msk /*!< RESET bit */ - -/******************************************************************************/ -/* */ -/* Power Control */ -/* */ -/******************************************************************************/ - -/******************** Bit definition for PWR_CR register ********************/ -#define PWR_CR_LPDS_Pos (0U) -#define PWR_CR_LPDS_Msk (0x1UL << PWR_CR_LPDS_Pos) /*!< 0x00000001 */ -#define PWR_CR_LPDS PWR_CR_LPDS_Msk /*!< Low-Power Deepsleep */ -#define PWR_CR_PDDS_Pos (1U) -#define PWR_CR_PDDS_Msk (0x1UL << PWR_CR_PDDS_Pos) /*!< 0x00000002 */ -#define PWR_CR_PDDS PWR_CR_PDDS_Msk /*!< Power Down Deepsleep */ -#define PWR_CR_CWUF_Pos (2U) -#define PWR_CR_CWUF_Msk (0x1UL << PWR_CR_CWUF_Pos) /*!< 0x00000004 */ -#define PWR_CR_CWUF PWR_CR_CWUF_Msk /*!< Clear Wakeup Flag */ -#define PWR_CR_CSBF_Pos (3U) -#define PWR_CR_CSBF_Msk (0x1UL << PWR_CR_CSBF_Pos) /*!< 0x00000008 */ -#define PWR_CR_CSBF PWR_CR_CSBF_Msk /*!< Clear Standby Flag */ -#define PWR_CR_PVDE_Pos (4U) -#define PWR_CR_PVDE_Msk (0x1UL << PWR_CR_PVDE_Pos) /*!< 0x00000010 */ -#define PWR_CR_PVDE PWR_CR_PVDE_Msk /*!< Power Voltage Detector Enable */ - -#define PWR_CR_PLS_Pos (5U) -#define PWR_CR_PLS_Msk (0x7UL << PWR_CR_PLS_Pos) /*!< 0x000000E0 */ -#define PWR_CR_PLS PWR_CR_PLS_Msk /*!< PLS[2:0] bits (PVD Level Selection) */ -#define PWR_CR_PLS_0 (0x1UL << PWR_CR_PLS_Pos) /*!< 0x00000020 */ -#define PWR_CR_PLS_1 (0x2UL << PWR_CR_PLS_Pos) /*!< 0x00000040 */ -#define PWR_CR_PLS_2 (0x4UL << PWR_CR_PLS_Pos) /*!< 0x00000080 */ - -/*!< PVD level configuration */ -#define PWR_CR_PLS_LEV0 0x00000000U /*!< PVD level 2.2V */ -#define PWR_CR_PLS_LEV1 0x00000020U /*!< PVD level 2.3V */ -#define PWR_CR_PLS_LEV2 0x00000040U /*!< PVD level 2.4V */ -#define PWR_CR_PLS_LEV3 0x00000060U /*!< PVD level 2.5V */ -#define PWR_CR_PLS_LEV4 0x00000080U /*!< PVD level 2.6V */ -#define PWR_CR_PLS_LEV5 0x000000A0U /*!< PVD level 2.7V */ -#define PWR_CR_PLS_LEV6 0x000000C0U /*!< PVD level 2.8V */ -#define PWR_CR_PLS_LEV7 0x000000E0U /*!< PVD level 2.9V */ - -/* Legacy defines */ -#define PWR_CR_PLS_2V2 PWR_CR_PLS_LEV0 -#define PWR_CR_PLS_2V3 PWR_CR_PLS_LEV1 -#define PWR_CR_PLS_2V4 PWR_CR_PLS_LEV2 -#define PWR_CR_PLS_2V5 PWR_CR_PLS_LEV3 -#define PWR_CR_PLS_2V6 PWR_CR_PLS_LEV4 -#define PWR_CR_PLS_2V7 PWR_CR_PLS_LEV5 -#define PWR_CR_PLS_2V8 PWR_CR_PLS_LEV6 -#define PWR_CR_PLS_2V9 PWR_CR_PLS_LEV7 - -#define PWR_CR_DBP_Pos (8U) -#define PWR_CR_DBP_Msk (0x1UL << PWR_CR_DBP_Pos) /*!< 0x00000100 */ -#define PWR_CR_DBP PWR_CR_DBP_Msk /*!< Disable Backup Domain write protection */ - - -/******************* Bit definition for PWR_CSR register ********************/ -#define PWR_CSR_WUF_Pos (0U) -#define PWR_CSR_WUF_Msk (0x1UL << PWR_CSR_WUF_Pos) /*!< 0x00000001 */ -#define PWR_CSR_WUF PWR_CSR_WUF_Msk /*!< Wakeup Flag */ -#define PWR_CSR_SBF_Pos (1U) -#define PWR_CSR_SBF_Msk (0x1UL << PWR_CSR_SBF_Pos) /*!< 0x00000002 */ -#define PWR_CSR_SBF PWR_CSR_SBF_Msk /*!< Standby Flag */ -#define PWR_CSR_PVDO_Pos (2U) -#define PWR_CSR_PVDO_Msk (0x1UL << PWR_CSR_PVDO_Pos) /*!< 0x00000004 */ -#define PWR_CSR_PVDO PWR_CSR_PVDO_Msk /*!< PVD Output */ -#define PWR_CSR_EWUP_Pos (8U) -#define PWR_CSR_EWUP_Msk (0x1UL << PWR_CSR_EWUP_Pos) /*!< 0x00000100 */ -#define PWR_CSR_EWUP PWR_CSR_EWUP_Msk /*!< Enable WKUP pin */ - -/******************************************************************************/ -/* */ -/* Backup registers */ -/* */ -/******************************************************************************/ - -/******************* Bit definition for BKP_DR1 register ********************/ -#define BKP_DR1_D_Pos (0U) -#define BKP_DR1_D_Msk (0xFFFFUL << BKP_DR1_D_Pos) /*!< 0x0000FFFF */ -#define BKP_DR1_D BKP_DR1_D_Msk /*!< Backup data */ - -/******************* Bit definition for BKP_DR2 register ********************/ -#define BKP_DR2_D_Pos (0U) -#define BKP_DR2_D_Msk (0xFFFFUL << BKP_DR2_D_Pos) /*!< 0x0000FFFF */ -#define BKP_DR2_D BKP_DR2_D_Msk /*!< Backup data */ - -/******************* Bit definition for BKP_DR3 register ********************/ -#define BKP_DR3_D_Pos (0U) -#define BKP_DR3_D_Msk (0xFFFFUL << BKP_DR3_D_Pos) /*!< 0x0000FFFF */ -#define BKP_DR3_D BKP_DR3_D_Msk /*!< Backup data */ - -/******************* Bit definition for BKP_DR4 register ********************/ -#define BKP_DR4_D_Pos (0U) -#define BKP_DR4_D_Msk (0xFFFFUL << BKP_DR4_D_Pos) /*!< 0x0000FFFF */ -#define BKP_DR4_D BKP_DR4_D_Msk /*!< Backup data */ - -/******************* Bit definition for BKP_DR5 register ********************/ -#define BKP_DR5_D_Pos (0U) -#define BKP_DR5_D_Msk (0xFFFFUL << BKP_DR5_D_Pos) /*!< 0x0000FFFF */ -#define BKP_DR5_D BKP_DR5_D_Msk /*!< Backup data */ - -/******************* Bit definition for BKP_DR6 register ********************/ -#define BKP_DR6_D_Pos (0U) -#define BKP_DR6_D_Msk (0xFFFFUL << BKP_DR6_D_Pos) /*!< 0x0000FFFF */ -#define BKP_DR6_D BKP_DR6_D_Msk /*!< Backup data */ - -/******************* Bit definition for BKP_DR7 register ********************/ -#define BKP_DR7_D_Pos (0U) -#define BKP_DR7_D_Msk (0xFFFFUL << BKP_DR7_D_Pos) /*!< 0x0000FFFF */ -#define BKP_DR7_D BKP_DR7_D_Msk /*!< Backup data */ - -/******************* Bit definition for BKP_DR8 register ********************/ -#define BKP_DR8_D_Pos (0U) -#define BKP_DR8_D_Msk (0xFFFFUL << BKP_DR8_D_Pos) /*!< 0x0000FFFF */ -#define BKP_DR8_D BKP_DR8_D_Msk /*!< Backup data */ - -/******************* Bit definition for BKP_DR9 register ********************/ -#define BKP_DR9_D_Pos (0U) -#define BKP_DR9_D_Msk (0xFFFFUL << BKP_DR9_D_Pos) /*!< 0x0000FFFF */ -#define BKP_DR9_D BKP_DR9_D_Msk /*!< Backup data */ - -/******************* Bit definition for BKP_DR10 register *******************/ -#define BKP_DR10_D_Pos (0U) -#define BKP_DR10_D_Msk (0xFFFFUL << BKP_DR10_D_Pos) /*!< 0x0000FFFF */ -#define BKP_DR10_D BKP_DR10_D_Msk /*!< Backup data */ - -#define RTC_BKP_NUMBER 10 - -/****************** Bit definition for BKP_RTCCR register *******************/ -#define BKP_RTCCR_CAL_Pos (0U) -#define BKP_RTCCR_CAL_Msk (0x7FUL << BKP_RTCCR_CAL_Pos) /*!< 0x0000007F */ -#define BKP_RTCCR_CAL BKP_RTCCR_CAL_Msk /*!< Calibration value */ -#define BKP_RTCCR_CCO_Pos (7U) -#define BKP_RTCCR_CCO_Msk (0x1UL << BKP_RTCCR_CCO_Pos) /*!< 0x00000080 */ -#define BKP_RTCCR_CCO BKP_RTCCR_CCO_Msk /*!< Calibration Clock Output */ -#define BKP_RTCCR_ASOE_Pos (8U) -#define BKP_RTCCR_ASOE_Msk (0x1UL << BKP_RTCCR_ASOE_Pos) /*!< 0x00000100 */ -#define BKP_RTCCR_ASOE BKP_RTCCR_ASOE_Msk /*!< Alarm or Second Output Enable */ -#define BKP_RTCCR_ASOS_Pos (9U) -#define BKP_RTCCR_ASOS_Msk (0x1UL << BKP_RTCCR_ASOS_Pos) /*!< 0x00000200 */ -#define BKP_RTCCR_ASOS BKP_RTCCR_ASOS_Msk /*!< Alarm or Second Output Selection */ - -/******************** Bit definition for BKP_CR register ********************/ -#define BKP_CR_TPE_Pos (0U) -#define BKP_CR_TPE_Msk (0x1UL << BKP_CR_TPE_Pos) /*!< 0x00000001 */ -#define BKP_CR_TPE BKP_CR_TPE_Msk /*!< TAMPER pin enable */ -#define BKP_CR_TPAL_Pos (1U) -#define BKP_CR_TPAL_Msk (0x1UL << BKP_CR_TPAL_Pos) /*!< 0x00000002 */ -#define BKP_CR_TPAL BKP_CR_TPAL_Msk /*!< TAMPER pin active level */ - -/******************* Bit definition for BKP_CSR register ********************/ -#define BKP_CSR_CTE_Pos (0U) -#define BKP_CSR_CTE_Msk (0x1UL << BKP_CSR_CTE_Pos) /*!< 0x00000001 */ -#define BKP_CSR_CTE BKP_CSR_CTE_Msk /*!< Clear Tamper event */ -#define BKP_CSR_CTI_Pos (1U) -#define BKP_CSR_CTI_Msk (0x1UL << BKP_CSR_CTI_Pos) /*!< 0x00000002 */ -#define BKP_CSR_CTI BKP_CSR_CTI_Msk /*!< Clear Tamper Interrupt */ -#define BKP_CSR_TPIE_Pos (2U) -#define BKP_CSR_TPIE_Msk (0x1UL << BKP_CSR_TPIE_Pos) /*!< 0x00000004 */ -#define BKP_CSR_TPIE BKP_CSR_TPIE_Msk /*!< TAMPER Pin interrupt enable */ -#define BKP_CSR_TEF_Pos (8U) -#define BKP_CSR_TEF_Msk (0x1UL << BKP_CSR_TEF_Pos) /*!< 0x00000100 */ -#define BKP_CSR_TEF BKP_CSR_TEF_Msk /*!< Tamper Event Flag */ -#define BKP_CSR_TIF_Pos (9U) -#define BKP_CSR_TIF_Msk (0x1UL << BKP_CSR_TIF_Pos) /*!< 0x00000200 */ -#define BKP_CSR_TIF BKP_CSR_TIF_Msk /*!< Tamper Interrupt Flag */ - -/******************************************************************************/ -/* */ -/* Reset and Clock Control */ -/* */ -/******************************************************************************/ - -/******************** Bit definition for RCC_CR register ********************/ -#define RCC_CR_HSION_Pos (0U) -#define RCC_CR_HSION_Msk (0x1UL << RCC_CR_HSION_Pos) /*!< 0x00000001 */ -#define RCC_CR_HSION RCC_CR_HSION_Msk /*!< Internal High Speed clock enable */ -#define RCC_CR_HSIRDY_Pos (1U) -#define RCC_CR_HSIRDY_Msk (0x1UL << RCC_CR_HSIRDY_Pos) /*!< 0x00000002 */ -#define RCC_CR_HSIRDY RCC_CR_HSIRDY_Msk /*!< Internal High Speed clock ready flag */ -#define RCC_CR_HSITRIM_Pos (3U) -#define RCC_CR_HSITRIM_Msk (0x1FUL << RCC_CR_HSITRIM_Pos) /*!< 0x000000F8 */ -#define RCC_CR_HSITRIM RCC_CR_HSITRIM_Msk /*!< Internal High Speed clock trimming */ -#define RCC_CR_HSICAL_Pos (8U) -#define RCC_CR_HSICAL_Msk (0xFFUL << RCC_CR_HSICAL_Pos) /*!< 0x0000FF00 */ -#define RCC_CR_HSICAL RCC_CR_HSICAL_Msk /*!< Internal High Speed clock Calibration */ -#define RCC_CR_HSEON_Pos (16U) -#define RCC_CR_HSEON_Msk (0x1UL << RCC_CR_HSEON_Pos) /*!< 0x00010000 */ -#define RCC_CR_HSEON RCC_CR_HSEON_Msk /*!< External High Speed clock enable */ -#define RCC_CR_HSERDY_Pos (17U) -#define RCC_CR_HSERDY_Msk (0x1UL << RCC_CR_HSERDY_Pos) /*!< 0x00020000 */ -#define RCC_CR_HSERDY RCC_CR_HSERDY_Msk /*!< External High Speed clock ready flag */ -#define RCC_CR_HSEBYP_Pos (18U) -#define RCC_CR_HSEBYP_Msk (0x1UL << RCC_CR_HSEBYP_Pos) /*!< 0x00040000 */ -#define RCC_CR_HSEBYP RCC_CR_HSEBYP_Msk /*!< External High Speed clock Bypass */ -#define RCC_CR_CSSON_Pos (19U) -#define RCC_CR_CSSON_Msk (0x1UL << RCC_CR_CSSON_Pos) /*!< 0x00080000 */ -#define RCC_CR_CSSON RCC_CR_CSSON_Msk /*!< Clock Security System enable */ -#define RCC_CR_PLLON_Pos (24U) -#define RCC_CR_PLLON_Msk (0x1UL << RCC_CR_PLLON_Pos) /*!< 0x01000000 */ -#define RCC_CR_PLLON RCC_CR_PLLON_Msk /*!< PLL enable */ -#define RCC_CR_PLLRDY_Pos (25U) -#define RCC_CR_PLLRDY_Msk (0x1UL << RCC_CR_PLLRDY_Pos) /*!< 0x02000000 */ -#define RCC_CR_PLLRDY RCC_CR_PLLRDY_Msk /*!< PLL clock ready flag */ - - -/******************* Bit definition for RCC_CFGR register *******************/ -/*!< SW configuration */ -#define RCC_CFGR_SW_Pos (0U) -#define RCC_CFGR_SW_Msk (0x3UL << RCC_CFGR_SW_Pos) /*!< 0x00000003 */ -#define RCC_CFGR_SW RCC_CFGR_SW_Msk /*!< SW[1:0] bits (System clock Switch) */ -#define RCC_CFGR_SW_0 (0x1UL << RCC_CFGR_SW_Pos) /*!< 0x00000001 */ -#define RCC_CFGR_SW_1 (0x2UL << RCC_CFGR_SW_Pos) /*!< 0x00000002 */ - -#define RCC_CFGR_SW_HSI 0x00000000U /*!< HSI selected as system clock */ -#define RCC_CFGR_SW_HSE 0x00000001U /*!< HSE selected as system clock */ -#define RCC_CFGR_SW_PLL 0x00000002U /*!< PLL selected as system clock */ - -/*!< SWS configuration */ -#define RCC_CFGR_SWS_Pos (2U) -#define RCC_CFGR_SWS_Msk (0x3UL << RCC_CFGR_SWS_Pos) /*!< 0x0000000C */ -#define RCC_CFGR_SWS RCC_CFGR_SWS_Msk /*!< SWS[1:0] bits (System Clock Switch Status) */ -#define RCC_CFGR_SWS_0 (0x1UL << RCC_CFGR_SWS_Pos) /*!< 0x00000004 */ -#define RCC_CFGR_SWS_1 (0x2UL << RCC_CFGR_SWS_Pos) /*!< 0x00000008 */ - -#define RCC_CFGR_SWS_HSI 0x00000000U /*!< HSI oscillator used as system clock */ -#define RCC_CFGR_SWS_HSE 0x00000004U /*!< HSE oscillator used as system clock */ -#define RCC_CFGR_SWS_PLL 0x00000008U /*!< PLL used as system clock */ - -/*!< HPRE configuration */ -#define RCC_CFGR_HPRE_Pos (4U) -#define RCC_CFGR_HPRE_Msk (0xFUL << RCC_CFGR_HPRE_Pos) /*!< 0x000000F0 */ -#define RCC_CFGR_HPRE RCC_CFGR_HPRE_Msk /*!< HPRE[3:0] bits (AHB prescaler) */ -#define RCC_CFGR_HPRE_0 (0x1UL << RCC_CFGR_HPRE_Pos) /*!< 0x00000010 */ -#define RCC_CFGR_HPRE_1 (0x2UL << RCC_CFGR_HPRE_Pos) /*!< 0x00000020 */ -#define RCC_CFGR_HPRE_2 (0x4UL << RCC_CFGR_HPRE_Pos) /*!< 0x00000040 */ -#define RCC_CFGR_HPRE_3 (0x8UL << RCC_CFGR_HPRE_Pos) /*!< 0x00000080 */ - -#define RCC_CFGR_HPRE_DIV1 0x00000000U /*!< SYSCLK not divided */ -#define RCC_CFGR_HPRE_DIV2 0x00000080U /*!< SYSCLK divided by 2 */ -#define RCC_CFGR_HPRE_DIV4 0x00000090U /*!< SYSCLK divided by 4 */ -#define RCC_CFGR_HPRE_DIV8 0x000000A0U /*!< SYSCLK divided by 8 */ -#define RCC_CFGR_HPRE_DIV16 0x000000B0U /*!< SYSCLK divided by 16 */ -#define RCC_CFGR_HPRE_DIV64 0x000000C0U /*!< SYSCLK divided by 64 */ -#define RCC_CFGR_HPRE_DIV128 0x000000D0U /*!< SYSCLK divided by 128 */ -#define RCC_CFGR_HPRE_DIV256 0x000000E0U /*!< SYSCLK divided by 256 */ -#define RCC_CFGR_HPRE_DIV512 0x000000F0U /*!< SYSCLK divided by 512 */ - -/*!< PPRE1 configuration */ -#define RCC_CFGR_PPRE1_Pos (8U) -#define RCC_CFGR_PPRE1_Msk (0x7UL << RCC_CFGR_PPRE1_Pos) /*!< 0x00000700 */ -#define RCC_CFGR_PPRE1 RCC_CFGR_PPRE1_Msk /*!< PRE1[2:0] bits (APB1 prescaler) */ -#define RCC_CFGR_PPRE1_0 (0x1UL << RCC_CFGR_PPRE1_Pos) /*!< 0x00000100 */ -#define RCC_CFGR_PPRE1_1 (0x2UL << RCC_CFGR_PPRE1_Pos) /*!< 0x00000200 */ -#define RCC_CFGR_PPRE1_2 (0x4UL << RCC_CFGR_PPRE1_Pos) /*!< 0x00000400 */ - -#define RCC_CFGR_PPRE1_DIV1 0x00000000U /*!< HCLK not divided */ -#define RCC_CFGR_PPRE1_DIV2 0x00000400U /*!< HCLK divided by 2 */ -#define RCC_CFGR_PPRE1_DIV4 0x00000500U /*!< HCLK divided by 4 */ -#define RCC_CFGR_PPRE1_DIV8 0x00000600U /*!< HCLK divided by 8 */ -#define RCC_CFGR_PPRE1_DIV16 0x00000700U /*!< HCLK divided by 16 */ - -/*!< PPRE2 configuration */ -#define RCC_CFGR_PPRE2_Pos (11U) -#define RCC_CFGR_PPRE2_Msk (0x7UL << RCC_CFGR_PPRE2_Pos) /*!< 0x00003800 */ -#define RCC_CFGR_PPRE2 RCC_CFGR_PPRE2_Msk /*!< PRE2[2:0] bits (APB2 prescaler) */ -#define RCC_CFGR_PPRE2_0 (0x1UL << RCC_CFGR_PPRE2_Pos) /*!< 0x00000800 */ -#define RCC_CFGR_PPRE2_1 (0x2UL << RCC_CFGR_PPRE2_Pos) /*!< 0x00001000 */ -#define RCC_CFGR_PPRE2_2 (0x4UL << RCC_CFGR_PPRE2_Pos) /*!< 0x00002000 */ - -#define RCC_CFGR_PPRE2_DIV1 0x00000000U /*!< HCLK not divided */ -#define RCC_CFGR_PPRE2_DIV2 0x00002000U /*!< HCLK divided by 2 */ -#define RCC_CFGR_PPRE2_DIV4 0x00002800U /*!< HCLK divided by 4 */ -#define RCC_CFGR_PPRE2_DIV8 0x00003000U /*!< HCLK divided by 8 */ -#define RCC_CFGR_PPRE2_DIV16 0x00003800U /*!< HCLK divided by 16 */ - -/*!< ADCPPRE configuration */ -#define RCC_CFGR_ADCPRE_Pos (14U) -#define RCC_CFGR_ADCPRE_Msk (0x3UL << RCC_CFGR_ADCPRE_Pos) /*!< 0x0000C000 */ -#define RCC_CFGR_ADCPRE RCC_CFGR_ADCPRE_Msk /*!< ADCPRE[1:0] bits (ADC prescaler) */ -#define RCC_CFGR_ADCPRE_0 (0x1UL << RCC_CFGR_ADCPRE_Pos) /*!< 0x00004000 */ -#define RCC_CFGR_ADCPRE_1 (0x2UL << RCC_CFGR_ADCPRE_Pos) /*!< 0x00008000 */ - -#define RCC_CFGR_ADCPRE_DIV2 0x00000000U /*!< PCLK2 divided by 2 */ -#define RCC_CFGR_ADCPRE_DIV4 0x00004000U /*!< PCLK2 divided by 4 */ -#define RCC_CFGR_ADCPRE_DIV6 0x00008000U /*!< PCLK2 divided by 6 */ -#define RCC_CFGR_ADCPRE_DIV8 0x0000C000U /*!< PCLK2 divided by 8 */ - -#define RCC_CFGR_PLLSRC_Pos (16U) -#define RCC_CFGR_PLLSRC_Msk (0x1UL << RCC_CFGR_PLLSRC_Pos) /*!< 0x00010000 */ -#define RCC_CFGR_PLLSRC RCC_CFGR_PLLSRC_Msk /*!< PLL entry clock source */ - -#define RCC_CFGR_PLLXTPRE_Pos (17U) -#define RCC_CFGR_PLLXTPRE_Msk (0x1UL << RCC_CFGR_PLLXTPRE_Pos) /*!< 0x00020000 */ -#define RCC_CFGR_PLLXTPRE RCC_CFGR_PLLXTPRE_Msk /*!< HSE divider for PLL entry */ - -/*!< PLLMUL configuration */ -#define RCC_CFGR_PLLMULL_Pos (18U) -#define RCC_CFGR_PLLMULL_Msk (0xFUL << RCC_CFGR_PLLMULL_Pos) /*!< 0x003C0000 */ -#define RCC_CFGR_PLLMULL RCC_CFGR_PLLMULL_Msk /*!< PLLMUL[3:0] bits (PLL multiplication factor) */ -#define RCC_CFGR_PLLMULL_0 (0x1UL << RCC_CFGR_PLLMULL_Pos) /*!< 0x00040000 */ -#define RCC_CFGR_PLLMULL_1 (0x2UL << RCC_CFGR_PLLMULL_Pos) /*!< 0x00080000 */ -#define RCC_CFGR_PLLMULL_2 (0x4UL << RCC_CFGR_PLLMULL_Pos) /*!< 0x00100000 */ -#define RCC_CFGR_PLLMULL_3 (0x8UL << RCC_CFGR_PLLMULL_Pos) /*!< 0x00200000 */ - -#define RCC_CFGR_PLLXTPRE_HSE 0x00000000U /*!< HSE clock not divided for PLL entry */ -#define RCC_CFGR_PLLXTPRE_HSE_DIV2 0x00020000U /*!< HSE clock divided by 2 for PLL entry */ - -#define RCC_CFGR_PLLMULL2 0x00000000U /*!< PLL input clock*2 */ -#define RCC_CFGR_PLLMULL3_Pos (18U) -#define RCC_CFGR_PLLMULL3_Msk (0x1UL << RCC_CFGR_PLLMULL3_Pos) /*!< 0x00040000 */ -#define RCC_CFGR_PLLMULL3 RCC_CFGR_PLLMULL3_Msk /*!< PLL input clock*3 */ -#define RCC_CFGR_PLLMULL4_Pos (19U) -#define RCC_CFGR_PLLMULL4_Msk (0x1UL << RCC_CFGR_PLLMULL4_Pos) /*!< 0x00080000 */ -#define RCC_CFGR_PLLMULL4 RCC_CFGR_PLLMULL4_Msk /*!< PLL input clock*4 */ -#define RCC_CFGR_PLLMULL5_Pos (18U) -#define RCC_CFGR_PLLMULL5_Msk (0x3UL << RCC_CFGR_PLLMULL5_Pos) /*!< 0x000C0000 */ -#define RCC_CFGR_PLLMULL5 RCC_CFGR_PLLMULL5_Msk /*!< PLL input clock*5 */ -#define RCC_CFGR_PLLMULL6_Pos (20U) -#define RCC_CFGR_PLLMULL6_Msk (0x1UL << RCC_CFGR_PLLMULL6_Pos) /*!< 0x00100000 */ -#define RCC_CFGR_PLLMULL6 RCC_CFGR_PLLMULL6_Msk /*!< PLL input clock*6 */ -#define RCC_CFGR_PLLMULL7_Pos (18U) -#define RCC_CFGR_PLLMULL7_Msk (0x5UL << RCC_CFGR_PLLMULL7_Pos) /*!< 0x00140000 */ -#define RCC_CFGR_PLLMULL7 RCC_CFGR_PLLMULL7_Msk /*!< PLL input clock*7 */ -#define RCC_CFGR_PLLMULL8_Pos (19U) -#define RCC_CFGR_PLLMULL8_Msk (0x3UL << RCC_CFGR_PLLMULL8_Pos) /*!< 0x00180000 */ -#define RCC_CFGR_PLLMULL8 RCC_CFGR_PLLMULL8_Msk /*!< PLL input clock*8 */ -#define RCC_CFGR_PLLMULL9_Pos (18U) -#define RCC_CFGR_PLLMULL9_Msk (0x7UL << RCC_CFGR_PLLMULL9_Pos) /*!< 0x001C0000 */ -#define RCC_CFGR_PLLMULL9 RCC_CFGR_PLLMULL9_Msk /*!< PLL input clock*9 */ -#define RCC_CFGR_PLLMULL10_Pos (21U) -#define RCC_CFGR_PLLMULL10_Msk (0x1UL << RCC_CFGR_PLLMULL10_Pos) /*!< 0x00200000 */ -#define RCC_CFGR_PLLMULL10 RCC_CFGR_PLLMULL10_Msk /*!< PLL input clock10 */ -#define RCC_CFGR_PLLMULL11_Pos (18U) -#define RCC_CFGR_PLLMULL11_Msk (0x9UL << RCC_CFGR_PLLMULL11_Pos) /*!< 0x00240000 */ -#define RCC_CFGR_PLLMULL11 RCC_CFGR_PLLMULL11_Msk /*!< PLL input clock*11 */ -#define RCC_CFGR_PLLMULL12_Pos (19U) -#define RCC_CFGR_PLLMULL12_Msk (0x5UL << RCC_CFGR_PLLMULL12_Pos) /*!< 0x00280000 */ -#define RCC_CFGR_PLLMULL12 RCC_CFGR_PLLMULL12_Msk /*!< PLL input clock*12 */ -#define RCC_CFGR_PLLMULL13_Pos (18U) -#define RCC_CFGR_PLLMULL13_Msk (0xBUL << RCC_CFGR_PLLMULL13_Pos) /*!< 0x002C0000 */ -#define RCC_CFGR_PLLMULL13 RCC_CFGR_PLLMULL13_Msk /*!< PLL input clock*13 */ -#define RCC_CFGR_PLLMULL14_Pos (20U) -#define RCC_CFGR_PLLMULL14_Msk (0x3UL << RCC_CFGR_PLLMULL14_Pos) /*!< 0x00300000 */ -#define RCC_CFGR_PLLMULL14 RCC_CFGR_PLLMULL14_Msk /*!< PLL input clock*14 */ -#define RCC_CFGR_PLLMULL15_Pos (18U) -#define RCC_CFGR_PLLMULL15_Msk (0xDUL << RCC_CFGR_PLLMULL15_Pos) /*!< 0x00340000 */ -#define RCC_CFGR_PLLMULL15 RCC_CFGR_PLLMULL15_Msk /*!< PLL input clock*15 */ -#define RCC_CFGR_PLLMULL16_Pos (19U) -#define RCC_CFGR_PLLMULL16_Msk (0x7UL << RCC_CFGR_PLLMULL16_Pos) /*!< 0x00380000 */ -#define RCC_CFGR_PLLMULL16 RCC_CFGR_PLLMULL16_Msk /*!< PLL input clock*16 */ -#define RCC_CFGR_USBPRE_Pos (22U) -#define RCC_CFGR_USBPRE_Msk (0x1UL << RCC_CFGR_USBPRE_Pos) /*!< 0x00400000 */ -#define RCC_CFGR_USBPRE RCC_CFGR_USBPRE_Msk /*!< USB Device prescaler */ - -/*!< MCO configuration */ -#define RCC_CFGR_MCO_Pos (24U) -#define RCC_CFGR_MCO_Msk (0x7UL << RCC_CFGR_MCO_Pos) /*!< 0x07000000 */ -#define RCC_CFGR_MCO RCC_CFGR_MCO_Msk /*!< MCO[2:0] bits (Microcontroller Clock Output) */ -#define RCC_CFGR_MCO_0 (0x1UL << RCC_CFGR_MCO_Pos) /*!< 0x01000000 */ -#define RCC_CFGR_MCO_1 (0x2UL << RCC_CFGR_MCO_Pos) /*!< 0x02000000 */ -#define RCC_CFGR_MCO_2 (0x4UL << RCC_CFGR_MCO_Pos) /*!< 0x04000000 */ - -#define RCC_CFGR_MCO_NOCLOCK 0x00000000U /*!< No clock */ -#define RCC_CFGR_MCO_SYSCLK 0x04000000U /*!< System clock selected as MCO source */ -#define RCC_CFGR_MCO_HSI 0x05000000U /*!< HSI clock selected as MCO source */ -#define RCC_CFGR_MCO_HSE 0x06000000U /*!< HSE clock selected as MCO source */ -#define RCC_CFGR_MCO_PLLCLK_DIV2 0x07000000U /*!< PLL clock divided by 2 selected as MCO source */ - - /* Reference defines */ - #define RCC_CFGR_MCOSEL RCC_CFGR_MCO - #define RCC_CFGR_MCOSEL_0 RCC_CFGR_MCO_0 - #define RCC_CFGR_MCOSEL_1 RCC_CFGR_MCO_1 - #define RCC_CFGR_MCOSEL_2 RCC_CFGR_MCO_2 - #define RCC_CFGR_MCOSEL_NOCLOCK RCC_CFGR_MCO_NOCLOCK - #define RCC_CFGR_MCOSEL_SYSCLK RCC_CFGR_MCO_SYSCLK - #define RCC_CFGR_MCOSEL_HSI RCC_CFGR_MCO_HSI - #define RCC_CFGR_MCOSEL_HSE RCC_CFGR_MCO_HSE - #define RCC_CFGR_MCOSEL_PLL_DIV2 RCC_CFGR_MCO_PLLCLK_DIV2 - -/*!<****************** Bit definition for RCC_CIR register ********************/ -#define RCC_CIR_LSIRDYF_Pos (0U) -#define RCC_CIR_LSIRDYF_Msk (0x1UL << RCC_CIR_LSIRDYF_Pos) /*!< 0x00000001 */ -#define RCC_CIR_LSIRDYF RCC_CIR_LSIRDYF_Msk /*!< LSI Ready Interrupt flag */ -#define RCC_CIR_LSERDYF_Pos (1U) -#define RCC_CIR_LSERDYF_Msk (0x1UL << RCC_CIR_LSERDYF_Pos) /*!< 0x00000002 */ -#define RCC_CIR_LSERDYF RCC_CIR_LSERDYF_Msk /*!< LSE Ready Interrupt flag */ -#define RCC_CIR_HSIRDYF_Pos (2U) -#define RCC_CIR_HSIRDYF_Msk (0x1UL << RCC_CIR_HSIRDYF_Pos) /*!< 0x00000004 */ -#define RCC_CIR_HSIRDYF RCC_CIR_HSIRDYF_Msk /*!< HSI Ready Interrupt flag */ -#define RCC_CIR_HSERDYF_Pos (3U) -#define RCC_CIR_HSERDYF_Msk (0x1UL << RCC_CIR_HSERDYF_Pos) /*!< 0x00000008 */ -#define RCC_CIR_HSERDYF RCC_CIR_HSERDYF_Msk /*!< HSE Ready Interrupt flag */ -#define RCC_CIR_PLLRDYF_Pos (4U) -#define RCC_CIR_PLLRDYF_Msk (0x1UL << RCC_CIR_PLLRDYF_Pos) /*!< 0x00000010 */ -#define RCC_CIR_PLLRDYF RCC_CIR_PLLRDYF_Msk /*!< PLL Ready Interrupt flag */ -#define RCC_CIR_CSSF_Pos (7U) -#define RCC_CIR_CSSF_Msk (0x1UL << RCC_CIR_CSSF_Pos) /*!< 0x00000080 */ -#define RCC_CIR_CSSF RCC_CIR_CSSF_Msk /*!< Clock Security System Interrupt flag */ -#define RCC_CIR_LSIRDYIE_Pos (8U) -#define RCC_CIR_LSIRDYIE_Msk (0x1UL << RCC_CIR_LSIRDYIE_Pos) /*!< 0x00000100 */ -#define RCC_CIR_LSIRDYIE RCC_CIR_LSIRDYIE_Msk /*!< LSI Ready Interrupt Enable */ -#define RCC_CIR_LSERDYIE_Pos (9U) -#define RCC_CIR_LSERDYIE_Msk (0x1UL << RCC_CIR_LSERDYIE_Pos) /*!< 0x00000200 */ -#define RCC_CIR_LSERDYIE RCC_CIR_LSERDYIE_Msk /*!< LSE Ready Interrupt Enable */ -#define RCC_CIR_HSIRDYIE_Pos (10U) -#define RCC_CIR_HSIRDYIE_Msk (0x1UL << RCC_CIR_HSIRDYIE_Pos) /*!< 0x00000400 */ -#define RCC_CIR_HSIRDYIE RCC_CIR_HSIRDYIE_Msk /*!< HSI Ready Interrupt Enable */ -#define RCC_CIR_HSERDYIE_Pos (11U) -#define RCC_CIR_HSERDYIE_Msk (0x1UL << RCC_CIR_HSERDYIE_Pos) /*!< 0x00000800 */ -#define RCC_CIR_HSERDYIE RCC_CIR_HSERDYIE_Msk /*!< HSE Ready Interrupt Enable */ -#define RCC_CIR_PLLRDYIE_Pos (12U) -#define RCC_CIR_PLLRDYIE_Msk (0x1UL << RCC_CIR_PLLRDYIE_Pos) /*!< 0x00001000 */ -#define RCC_CIR_PLLRDYIE RCC_CIR_PLLRDYIE_Msk /*!< PLL Ready Interrupt Enable */ -#define RCC_CIR_LSIRDYC_Pos (16U) -#define RCC_CIR_LSIRDYC_Msk (0x1UL << RCC_CIR_LSIRDYC_Pos) /*!< 0x00010000 */ -#define RCC_CIR_LSIRDYC RCC_CIR_LSIRDYC_Msk /*!< LSI Ready Interrupt Clear */ -#define RCC_CIR_LSERDYC_Pos (17U) -#define RCC_CIR_LSERDYC_Msk (0x1UL << RCC_CIR_LSERDYC_Pos) /*!< 0x00020000 */ -#define RCC_CIR_LSERDYC RCC_CIR_LSERDYC_Msk /*!< LSE Ready Interrupt Clear */ -#define RCC_CIR_HSIRDYC_Pos (18U) -#define RCC_CIR_HSIRDYC_Msk (0x1UL << RCC_CIR_HSIRDYC_Pos) /*!< 0x00040000 */ -#define RCC_CIR_HSIRDYC RCC_CIR_HSIRDYC_Msk /*!< HSI Ready Interrupt Clear */ -#define RCC_CIR_HSERDYC_Pos (19U) -#define RCC_CIR_HSERDYC_Msk (0x1UL << RCC_CIR_HSERDYC_Pos) /*!< 0x00080000 */ -#define RCC_CIR_HSERDYC RCC_CIR_HSERDYC_Msk /*!< HSE Ready Interrupt Clear */ -#define RCC_CIR_PLLRDYC_Pos (20U) -#define RCC_CIR_PLLRDYC_Msk (0x1UL << RCC_CIR_PLLRDYC_Pos) /*!< 0x00100000 */ -#define RCC_CIR_PLLRDYC RCC_CIR_PLLRDYC_Msk /*!< PLL Ready Interrupt Clear */ -#define RCC_CIR_CSSC_Pos (23U) -#define RCC_CIR_CSSC_Msk (0x1UL << RCC_CIR_CSSC_Pos) /*!< 0x00800000 */ -#define RCC_CIR_CSSC RCC_CIR_CSSC_Msk /*!< Clock Security System Interrupt Clear */ - - -/***************** Bit definition for RCC_APB2RSTR register *****************/ -#define RCC_APB2RSTR_AFIORST_Pos (0U) -#define RCC_APB2RSTR_AFIORST_Msk (0x1UL << RCC_APB2RSTR_AFIORST_Pos) /*!< 0x00000001 */ -#define RCC_APB2RSTR_AFIORST RCC_APB2RSTR_AFIORST_Msk /*!< Alternate Function I/O reset */ -#define RCC_APB2RSTR_IOPARST_Pos (2U) -#define RCC_APB2RSTR_IOPARST_Msk (0x1UL << RCC_APB2RSTR_IOPARST_Pos) /*!< 0x00000004 */ -#define RCC_APB2RSTR_IOPARST RCC_APB2RSTR_IOPARST_Msk /*!< I/O port A reset */ -#define RCC_APB2RSTR_IOPBRST_Pos (3U) -#define RCC_APB2RSTR_IOPBRST_Msk (0x1UL << RCC_APB2RSTR_IOPBRST_Pos) /*!< 0x00000008 */ -#define RCC_APB2RSTR_IOPBRST RCC_APB2RSTR_IOPBRST_Msk /*!< I/O port B reset */ -#define RCC_APB2RSTR_IOPCRST_Pos (4U) -#define RCC_APB2RSTR_IOPCRST_Msk (0x1UL << RCC_APB2RSTR_IOPCRST_Pos) /*!< 0x00000010 */ -#define RCC_APB2RSTR_IOPCRST RCC_APB2RSTR_IOPCRST_Msk /*!< I/O port C reset */ -#define RCC_APB2RSTR_IOPDRST_Pos (5U) -#define RCC_APB2RSTR_IOPDRST_Msk (0x1UL << RCC_APB2RSTR_IOPDRST_Pos) /*!< 0x00000020 */ -#define RCC_APB2RSTR_IOPDRST RCC_APB2RSTR_IOPDRST_Msk /*!< I/O port D reset */ -#define RCC_APB2RSTR_ADC1RST_Pos (9U) -#define RCC_APB2RSTR_ADC1RST_Msk (0x1UL << RCC_APB2RSTR_ADC1RST_Pos) /*!< 0x00000200 */ -#define RCC_APB2RSTR_ADC1RST RCC_APB2RSTR_ADC1RST_Msk /*!< ADC 1 interface reset */ - -#define RCC_APB2RSTR_ADC2RST_Pos (10U) -#define RCC_APB2RSTR_ADC2RST_Msk (0x1UL << RCC_APB2RSTR_ADC2RST_Pos) /*!< 0x00000400 */ -#define RCC_APB2RSTR_ADC2RST RCC_APB2RSTR_ADC2RST_Msk /*!< ADC 2 interface reset */ - -#define RCC_APB2RSTR_TIM1RST_Pos (11U) -#define RCC_APB2RSTR_TIM1RST_Msk (0x1UL << RCC_APB2RSTR_TIM1RST_Pos) /*!< 0x00000800 */ -#define RCC_APB2RSTR_TIM1RST RCC_APB2RSTR_TIM1RST_Msk /*!< TIM1 Timer reset */ -#define RCC_APB2RSTR_SPI1RST_Pos (12U) -#define RCC_APB2RSTR_SPI1RST_Msk (0x1UL << RCC_APB2RSTR_SPI1RST_Pos) /*!< 0x00001000 */ -#define RCC_APB2RSTR_SPI1RST RCC_APB2RSTR_SPI1RST_Msk /*!< SPI 1 reset */ -#define RCC_APB2RSTR_USART1RST_Pos (14U) -#define RCC_APB2RSTR_USART1RST_Msk (0x1UL << RCC_APB2RSTR_USART1RST_Pos) /*!< 0x00004000 */ -#define RCC_APB2RSTR_USART1RST RCC_APB2RSTR_USART1RST_Msk /*!< USART1 reset */ - - -#define RCC_APB2RSTR_IOPERST_Pos (6U) -#define RCC_APB2RSTR_IOPERST_Msk (0x1UL << RCC_APB2RSTR_IOPERST_Pos) /*!< 0x00000040 */ -#define RCC_APB2RSTR_IOPERST RCC_APB2RSTR_IOPERST_Msk /*!< I/O port E reset */ - - - - -/***************** Bit definition for RCC_APB1RSTR register *****************/ -#define RCC_APB1RSTR_TIM2RST_Pos (0U) -#define RCC_APB1RSTR_TIM2RST_Msk (0x1UL << RCC_APB1RSTR_TIM2RST_Pos) /*!< 0x00000001 */ -#define RCC_APB1RSTR_TIM2RST RCC_APB1RSTR_TIM2RST_Msk /*!< Timer 2 reset */ -#define RCC_APB1RSTR_TIM3RST_Pos (1U) -#define RCC_APB1RSTR_TIM3RST_Msk (0x1UL << RCC_APB1RSTR_TIM3RST_Pos) /*!< 0x00000002 */ -#define RCC_APB1RSTR_TIM3RST RCC_APB1RSTR_TIM3RST_Msk /*!< Timer 3 reset */ -#define RCC_APB1RSTR_WWDGRST_Pos (11U) -#define RCC_APB1RSTR_WWDGRST_Msk (0x1UL << RCC_APB1RSTR_WWDGRST_Pos) /*!< 0x00000800 */ -#define RCC_APB1RSTR_WWDGRST RCC_APB1RSTR_WWDGRST_Msk /*!< Window Watchdog reset */ -#define RCC_APB1RSTR_USART2RST_Pos (17U) -#define RCC_APB1RSTR_USART2RST_Msk (0x1UL << RCC_APB1RSTR_USART2RST_Pos) /*!< 0x00020000 */ -#define RCC_APB1RSTR_USART2RST RCC_APB1RSTR_USART2RST_Msk /*!< USART 2 reset */ -#define RCC_APB1RSTR_I2C1RST_Pos (21U) -#define RCC_APB1RSTR_I2C1RST_Msk (0x1UL << RCC_APB1RSTR_I2C1RST_Pos) /*!< 0x00200000 */ -#define RCC_APB1RSTR_I2C1RST RCC_APB1RSTR_I2C1RST_Msk /*!< I2C 1 reset */ - -#define RCC_APB1RSTR_CAN1RST_Pos (25U) -#define RCC_APB1RSTR_CAN1RST_Msk (0x1UL << RCC_APB1RSTR_CAN1RST_Pos) /*!< 0x02000000 */ -#define RCC_APB1RSTR_CAN1RST RCC_APB1RSTR_CAN1RST_Msk /*!< CAN1 reset */ - -#define RCC_APB1RSTR_BKPRST_Pos (27U) -#define RCC_APB1RSTR_BKPRST_Msk (0x1UL << RCC_APB1RSTR_BKPRST_Pos) /*!< 0x08000000 */ -#define RCC_APB1RSTR_BKPRST RCC_APB1RSTR_BKPRST_Msk /*!< Backup interface reset */ -#define RCC_APB1RSTR_PWRRST_Pos (28U) -#define RCC_APB1RSTR_PWRRST_Msk (0x1UL << RCC_APB1RSTR_PWRRST_Pos) /*!< 0x10000000 */ -#define RCC_APB1RSTR_PWRRST RCC_APB1RSTR_PWRRST_Msk /*!< Power interface reset */ - -#define RCC_APB1RSTR_TIM4RST_Pos (2U) -#define RCC_APB1RSTR_TIM4RST_Msk (0x1UL << RCC_APB1RSTR_TIM4RST_Pos) /*!< 0x00000004 */ -#define RCC_APB1RSTR_TIM4RST RCC_APB1RSTR_TIM4RST_Msk /*!< Timer 4 reset */ -#define RCC_APB1RSTR_SPI2RST_Pos (14U) -#define RCC_APB1RSTR_SPI2RST_Msk (0x1UL << RCC_APB1RSTR_SPI2RST_Pos) /*!< 0x00004000 */ -#define RCC_APB1RSTR_SPI2RST RCC_APB1RSTR_SPI2RST_Msk /*!< SPI 2 reset */ -#define RCC_APB1RSTR_USART3RST_Pos (18U) -#define RCC_APB1RSTR_USART3RST_Msk (0x1UL << RCC_APB1RSTR_USART3RST_Pos) /*!< 0x00040000 */ -#define RCC_APB1RSTR_USART3RST RCC_APB1RSTR_USART3RST_Msk /*!< USART 3 reset */ -#define RCC_APB1RSTR_I2C2RST_Pos (22U) -#define RCC_APB1RSTR_I2C2RST_Msk (0x1UL << RCC_APB1RSTR_I2C2RST_Pos) /*!< 0x00400000 */ -#define RCC_APB1RSTR_I2C2RST RCC_APB1RSTR_I2C2RST_Msk /*!< I2C 2 reset */ - -#define RCC_APB1RSTR_USBRST_Pos (23U) -#define RCC_APB1RSTR_USBRST_Msk (0x1UL << RCC_APB1RSTR_USBRST_Pos) /*!< 0x00800000 */ -#define RCC_APB1RSTR_USBRST RCC_APB1RSTR_USBRST_Msk /*!< USB Device reset */ - - - - - - -/****************** Bit definition for RCC_AHBENR register ******************/ -#define RCC_AHBENR_DMA1EN_Pos (0U) -#define RCC_AHBENR_DMA1EN_Msk (0x1UL << RCC_AHBENR_DMA1EN_Pos) /*!< 0x00000001 */ -#define RCC_AHBENR_DMA1EN RCC_AHBENR_DMA1EN_Msk /*!< DMA1 clock enable */ -#define RCC_AHBENR_SRAMEN_Pos (2U) -#define RCC_AHBENR_SRAMEN_Msk (0x1UL << RCC_AHBENR_SRAMEN_Pos) /*!< 0x00000004 */ -#define RCC_AHBENR_SRAMEN RCC_AHBENR_SRAMEN_Msk /*!< SRAM interface clock enable */ -#define RCC_AHBENR_FLITFEN_Pos (4U) -#define RCC_AHBENR_FLITFEN_Msk (0x1UL << RCC_AHBENR_FLITFEN_Pos) /*!< 0x00000010 */ -#define RCC_AHBENR_FLITFEN RCC_AHBENR_FLITFEN_Msk /*!< FLITF clock enable */ -#define RCC_AHBENR_CRCEN_Pos (6U) -#define RCC_AHBENR_CRCEN_Msk (0x1UL << RCC_AHBENR_CRCEN_Pos) /*!< 0x00000040 */ -#define RCC_AHBENR_CRCEN RCC_AHBENR_CRCEN_Msk /*!< CRC clock enable */ - - - - -/****************** Bit definition for RCC_APB2ENR register *****************/ -#define RCC_APB2ENR_AFIOEN_Pos (0U) -#define RCC_APB2ENR_AFIOEN_Msk (0x1UL << RCC_APB2ENR_AFIOEN_Pos) /*!< 0x00000001 */ -#define RCC_APB2ENR_AFIOEN RCC_APB2ENR_AFIOEN_Msk /*!< Alternate Function I/O clock enable */ -#define RCC_APB2ENR_IOPAEN_Pos (2U) -#define RCC_APB2ENR_IOPAEN_Msk (0x1UL << RCC_APB2ENR_IOPAEN_Pos) /*!< 0x00000004 */ -#define RCC_APB2ENR_IOPAEN RCC_APB2ENR_IOPAEN_Msk /*!< I/O port A clock enable */ -#define RCC_APB2ENR_IOPBEN_Pos (3U) -#define RCC_APB2ENR_IOPBEN_Msk (0x1UL << RCC_APB2ENR_IOPBEN_Pos) /*!< 0x00000008 */ -#define RCC_APB2ENR_IOPBEN RCC_APB2ENR_IOPBEN_Msk /*!< I/O port B clock enable */ -#define RCC_APB2ENR_IOPCEN_Pos (4U) -#define RCC_APB2ENR_IOPCEN_Msk (0x1UL << RCC_APB2ENR_IOPCEN_Pos) /*!< 0x00000010 */ -#define RCC_APB2ENR_IOPCEN RCC_APB2ENR_IOPCEN_Msk /*!< I/O port C clock enable */ -#define RCC_APB2ENR_IOPDEN_Pos (5U) -#define RCC_APB2ENR_IOPDEN_Msk (0x1UL << RCC_APB2ENR_IOPDEN_Pos) /*!< 0x00000020 */ -#define RCC_APB2ENR_IOPDEN RCC_APB2ENR_IOPDEN_Msk /*!< I/O port D clock enable */ -#define RCC_APB2ENR_ADC1EN_Pos (9U) -#define RCC_APB2ENR_ADC1EN_Msk (0x1UL << RCC_APB2ENR_ADC1EN_Pos) /*!< 0x00000200 */ -#define RCC_APB2ENR_ADC1EN RCC_APB2ENR_ADC1EN_Msk /*!< ADC 1 interface clock enable */ - -#define RCC_APB2ENR_ADC2EN_Pos (10U) -#define RCC_APB2ENR_ADC2EN_Msk (0x1UL << RCC_APB2ENR_ADC2EN_Pos) /*!< 0x00000400 */ -#define RCC_APB2ENR_ADC2EN RCC_APB2ENR_ADC2EN_Msk /*!< ADC 2 interface clock enable */ - -#define RCC_APB2ENR_TIM1EN_Pos (11U) -#define RCC_APB2ENR_TIM1EN_Msk (0x1UL << RCC_APB2ENR_TIM1EN_Pos) /*!< 0x00000800 */ -#define RCC_APB2ENR_TIM1EN RCC_APB2ENR_TIM1EN_Msk /*!< TIM1 Timer clock enable */ -#define RCC_APB2ENR_SPI1EN_Pos (12U) -#define RCC_APB2ENR_SPI1EN_Msk (0x1UL << RCC_APB2ENR_SPI1EN_Pos) /*!< 0x00001000 */ -#define RCC_APB2ENR_SPI1EN RCC_APB2ENR_SPI1EN_Msk /*!< SPI 1 clock enable */ -#define RCC_APB2ENR_USART1EN_Pos (14U) -#define RCC_APB2ENR_USART1EN_Msk (0x1UL << RCC_APB2ENR_USART1EN_Pos) /*!< 0x00004000 */ -#define RCC_APB2ENR_USART1EN RCC_APB2ENR_USART1EN_Msk /*!< USART1 clock enable */ - - -#define RCC_APB2ENR_IOPEEN_Pos (6U) -#define RCC_APB2ENR_IOPEEN_Msk (0x1UL << RCC_APB2ENR_IOPEEN_Pos) /*!< 0x00000040 */ -#define RCC_APB2ENR_IOPEEN RCC_APB2ENR_IOPEEN_Msk /*!< I/O port E clock enable */ - - - - -/***************** Bit definition for RCC_APB1ENR register ******************/ -#define RCC_APB1ENR_TIM2EN_Pos (0U) -#define RCC_APB1ENR_TIM2EN_Msk (0x1UL << RCC_APB1ENR_TIM2EN_Pos) /*!< 0x00000001 */ -#define RCC_APB1ENR_TIM2EN RCC_APB1ENR_TIM2EN_Msk /*!< Timer 2 clock enabled*/ -#define RCC_APB1ENR_TIM3EN_Pos (1U) -#define RCC_APB1ENR_TIM3EN_Msk (0x1UL << RCC_APB1ENR_TIM3EN_Pos) /*!< 0x00000002 */ -#define RCC_APB1ENR_TIM3EN RCC_APB1ENR_TIM3EN_Msk /*!< Timer 3 clock enable */ -#define RCC_APB1ENR_WWDGEN_Pos (11U) -#define RCC_APB1ENR_WWDGEN_Msk (0x1UL << RCC_APB1ENR_WWDGEN_Pos) /*!< 0x00000800 */ -#define RCC_APB1ENR_WWDGEN RCC_APB1ENR_WWDGEN_Msk /*!< Window Watchdog clock enable */ -#define RCC_APB1ENR_USART2EN_Pos (17U) -#define RCC_APB1ENR_USART2EN_Msk (0x1UL << RCC_APB1ENR_USART2EN_Pos) /*!< 0x00020000 */ -#define RCC_APB1ENR_USART2EN RCC_APB1ENR_USART2EN_Msk /*!< USART 2 clock enable */ -#define RCC_APB1ENR_I2C1EN_Pos (21U) -#define RCC_APB1ENR_I2C1EN_Msk (0x1UL << RCC_APB1ENR_I2C1EN_Pos) /*!< 0x00200000 */ -#define RCC_APB1ENR_I2C1EN RCC_APB1ENR_I2C1EN_Msk /*!< I2C 1 clock enable */ - -#define RCC_APB1ENR_CAN1EN_Pos (25U) -#define RCC_APB1ENR_CAN1EN_Msk (0x1UL << RCC_APB1ENR_CAN1EN_Pos) /*!< 0x02000000 */ -#define RCC_APB1ENR_CAN1EN RCC_APB1ENR_CAN1EN_Msk /*!< CAN1 clock enable */ - -#define RCC_APB1ENR_BKPEN_Pos (27U) -#define RCC_APB1ENR_BKPEN_Msk (0x1UL << RCC_APB1ENR_BKPEN_Pos) /*!< 0x08000000 */ -#define RCC_APB1ENR_BKPEN RCC_APB1ENR_BKPEN_Msk /*!< Backup interface clock enable */ -#define RCC_APB1ENR_PWREN_Pos (28U) -#define RCC_APB1ENR_PWREN_Msk (0x1UL << RCC_APB1ENR_PWREN_Pos) /*!< 0x10000000 */ -#define RCC_APB1ENR_PWREN RCC_APB1ENR_PWREN_Msk /*!< Power interface clock enable */ - -#define RCC_APB1ENR_TIM4EN_Pos (2U) -#define RCC_APB1ENR_TIM4EN_Msk (0x1UL << RCC_APB1ENR_TIM4EN_Pos) /*!< 0x00000004 */ -#define RCC_APB1ENR_TIM4EN RCC_APB1ENR_TIM4EN_Msk /*!< Timer 4 clock enable */ -#define RCC_APB1ENR_SPI2EN_Pos (14U) -#define RCC_APB1ENR_SPI2EN_Msk (0x1UL << RCC_APB1ENR_SPI2EN_Pos) /*!< 0x00004000 */ -#define RCC_APB1ENR_SPI2EN RCC_APB1ENR_SPI2EN_Msk /*!< SPI 2 clock enable */ -#define RCC_APB1ENR_USART3EN_Pos (18U) -#define RCC_APB1ENR_USART3EN_Msk (0x1UL << RCC_APB1ENR_USART3EN_Pos) /*!< 0x00040000 */ -#define RCC_APB1ENR_USART3EN RCC_APB1ENR_USART3EN_Msk /*!< USART 3 clock enable */ -#define RCC_APB1ENR_I2C2EN_Pos (22U) -#define RCC_APB1ENR_I2C2EN_Msk (0x1UL << RCC_APB1ENR_I2C2EN_Pos) /*!< 0x00400000 */ -#define RCC_APB1ENR_I2C2EN RCC_APB1ENR_I2C2EN_Msk /*!< I2C 2 clock enable */ - -#define RCC_APB1ENR_USBEN_Pos (23U) -#define RCC_APB1ENR_USBEN_Msk (0x1UL << RCC_APB1ENR_USBEN_Pos) /*!< 0x00800000 */ -#define RCC_APB1ENR_USBEN RCC_APB1ENR_USBEN_Msk /*!< USB Device clock enable */ - - - - - - -/******************* Bit definition for RCC_BDCR register *******************/ -#define RCC_BDCR_LSEON_Pos (0U) -#define RCC_BDCR_LSEON_Msk (0x1UL << RCC_BDCR_LSEON_Pos) /*!< 0x00000001 */ -#define RCC_BDCR_LSEON RCC_BDCR_LSEON_Msk /*!< External Low Speed oscillator enable */ -#define RCC_BDCR_LSERDY_Pos (1U) -#define RCC_BDCR_LSERDY_Msk (0x1UL << RCC_BDCR_LSERDY_Pos) /*!< 0x00000002 */ -#define RCC_BDCR_LSERDY RCC_BDCR_LSERDY_Msk /*!< External Low Speed oscillator Ready */ -#define RCC_BDCR_LSEBYP_Pos (2U) -#define RCC_BDCR_LSEBYP_Msk (0x1UL << RCC_BDCR_LSEBYP_Pos) /*!< 0x00000004 */ -#define RCC_BDCR_LSEBYP RCC_BDCR_LSEBYP_Msk /*!< External Low Speed oscillator Bypass */ - -#define RCC_BDCR_RTCSEL_Pos (8U) -#define RCC_BDCR_RTCSEL_Msk (0x3UL << RCC_BDCR_RTCSEL_Pos) /*!< 0x00000300 */ -#define RCC_BDCR_RTCSEL RCC_BDCR_RTCSEL_Msk /*!< RTCSEL[1:0] bits (RTC clock source selection) */ -#define RCC_BDCR_RTCSEL_0 (0x1UL << RCC_BDCR_RTCSEL_Pos) /*!< 0x00000100 */ -#define RCC_BDCR_RTCSEL_1 (0x2UL << RCC_BDCR_RTCSEL_Pos) /*!< 0x00000200 */ - -/*!< RTC congiguration */ -#define RCC_BDCR_RTCSEL_NOCLOCK 0x00000000U /*!< No clock */ -#define RCC_BDCR_RTCSEL_LSE 0x00000100U /*!< LSE oscillator clock used as RTC clock */ -#define RCC_BDCR_RTCSEL_LSI 0x00000200U /*!< LSI oscillator clock used as RTC clock */ -#define RCC_BDCR_RTCSEL_HSE 0x00000300U /*!< HSE oscillator clock divided by 128 used as RTC clock */ - -#define RCC_BDCR_RTCEN_Pos (15U) -#define RCC_BDCR_RTCEN_Msk (0x1UL << RCC_BDCR_RTCEN_Pos) /*!< 0x00008000 */ -#define RCC_BDCR_RTCEN RCC_BDCR_RTCEN_Msk /*!< RTC clock enable */ -#define RCC_BDCR_BDRST_Pos (16U) -#define RCC_BDCR_BDRST_Msk (0x1UL << RCC_BDCR_BDRST_Pos) /*!< 0x00010000 */ -#define RCC_BDCR_BDRST RCC_BDCR_BDRST_Msk /*!< Backup domain software reset */ - -/******************* Bit definition for RCC_CSR register ********************/ -#define RCC_CSR_LSION_Pos (0U) -#define RCC_CSR_LSION_Msk (0x1UL << RCC_CSR_LSION_Pos) /*!< 0x00000001 */ -#define RCC_CSR_LSION RCC_CSR_LSION_Msk /*!< Internal Low Speed oscillator enable */ -#define RCC_CSR_LSIRDY_Pos (1U) -#define RCC_CSR_LSIRDY_Msk (0x1UL << RCC_CSR_LSIRDY_Pos) /*!< 0x00000002 */ -#define RCC_CSR_LSIRDY RCC_CSR_LSIRDY_Msk /*!< Internal Low Speed oscillator Ready */ -#define RCC_CSR_RMVF_Pos (24U) -#define RCC_CSR_RMVF_Msk (0x1UL << RCC_CSR_RMVF_Pos) /*!< 0x01000000 */ -#define RCC_CSR_RMVF RCC_CSR_RMVF_Msk /*!< Remove reset flag */ -#define RCC_CSR_PINRSTF_Pos (26U) -#define RCC_CSR_PINRSTF_Msk (0x1UL << RCC_CSR_PINRSTF_Pos) /*!< 0x04000000 */ -#define RCC_CSR_PINRSTF RCC_CSR_PINRSTF_Msk /*!< PIN reset flag */ -#define RCC_CSR_PORRSTF_Pos (27U) -#define RCC_CSR_PORRSTF_Msk (0x1UL << RCC_CSR_PORRSTF_Pos) /*!< 0x08000000 */ -#define RCC_CSR_PORRSTF RCC_CSR_PORRSTF_Msk /*!< POR/PDR reset flag */ -#define RCC_CSR_SFTRSTF_Pos (28U) -#define RCC_CSR_SFTRSTF_Msk (0x1UL << RCC_CSR_SFTRSTF_Pos) /*!< 0x10000000 */ -#define RCC_CSR_SFTRSTF RCC_CSR_SFTRSTF_Msk /*!< Software Reset flag */ -#define RCC_CSR_IWDGRSTF_Pos (29U) -#define RCC_CSR_IWDGRSTF_Msk (0x1UL << RCC_CSR_IWDGRSTF_Pos) /*!< 0x20000000 */ -#define RCC_CSR_IWDGRSTF RCC_CSR_IWDGRSTF_Msk /*!< Independent Watchdog reset flag */ -#define RCC_CSR_WWDGRSTF_Pos (30U) -#define RCC_CSR_WWDGRSTF_Msk (0x1UL << RCC_CSR_WWDGRSTF_Pos) /*!< 0x40000000 */ -#define RCC_CSR_WWDGRSTF RCC_CSR_WWDGRSTF_Msk /*!< Window watchdog reset flag */ -#define RCC_CSR_LPWRRSTF_Pos (31U) -#define RCC_CSR_LPWRRSTF_Msk (0x1UL << RCC_CSR_LPWRRSTF_Pos) /*!< 0x80000000 */ -#define RCC_CSR_LPWRRSTF RCC_CSR_LPWRRSTF_Msk /*!< Low-Power reset flag */ - - - -/******************************************************************************/ -/* */ -/* General Purpose and Alternate Function I/O */ -/* */ -/******************************************************************************/ - -/******************* Bit definition for GPIO_CRL register *******************/ -#define GPIO_CRL_MODE_Pos (0U) -#define GPIO_CRL_MODE_Msk (0x33333333UL << GPIO_CRL_MODE_Pos) /*!< 0x33333333 */ -#define GPIO_CRL_MODE GPIO_CRL_MODE_Msk /*!< Port x mode bits */ - -#define GPIO_CRL_MODE0_Pos (0U) -#define GPIO_CRL_MODE0_Msk (0x3UL << GPIO_CRL_MODE0_Pos) /*!< 0x00000003 */ -#define GPIO_CRL_MODE0 GPIO_CRL_MODE0_Msk /*!< MODE0[1:0] bits (Port x mode bits, pin 0) */ -#define GPIO_CRL_MODE0_0 (0x1UL << GPIO_CRL_MODE0_Pos) /*!< 0x00000001 */ -#define GPIO_CRL_MODE0_1 (0x2UL << GPIO_CRL_MODE0_Pos) /*!< 0x00000002 */ - -#define GPIO_CRL_MODE1_Pos (4U) -#define GPIO_CRL_MODE1_Msk (0x3UL << GPIO_CRL_MODE1_Pos) /*!< 0x00000030 */ -#define GPIO_CRL_MODE1 GPIO_CRL_MODE1_Msk /*!< MODE1[1:0] bits (Port x mode bits, pin 1) */ -#define GPIO_CRL_MODE1_0 (0x1UL << GPIO_CRL_MODE1_Pos) /*!< 0x00000010 */ -#define GPIO_CRL_MODE1_1 (0x2UL << GPIO_CRL_MODE1_Pos) /*!< 0x00000020 */ - -#define GPIO_CRL_MODE2_Pos (8U) -#define GPIO_CRL_MODE2_Msk (0x3UL << GPIO_CRL_MODE2_Pos) /*!< 0x00000300 */ -#define GPIO_CRL_MODE2 GPIO_CRL_MODE2_Msk /*!< MODE2[1:0] bits (Port x mode bits, pin 2) */ -#define GPIO_CRL_MODE2_0 (0x1UL << GPIO_CRL_MODE2_Pos) /*!< 0x00000100 */ -#define GPIO_CRL_MODE2_1 (0x2UL << GPIO_CRL_MODE2_Pos) /*!< 0x00000200 */ - -#define GPIO_CRL_MODE3_Pos (12U) -#define GPIO_CRL_MODE3_Msk (0x3UL << GPIO_CRL_MODE3_Pos) /*!< 0x00003000 */ -#define GPIO_CRL_MODE3 GPIO_CRL_MODE3_Msk /*!< MODE3[1:0] bits (Port x mode bits, pin 3) */ -#define GPIO_CRL_MODE3_0 (0x1UL << GPIO_CRL_MODE3_Pos) /*!< 0x00001000 */ -#define GPIO_CRL_MODE3_1 (0x2UL << GPIO_CRL_MODE3_Pos) /*!< 0x00002000 */ - -#define GPIO_CRL_MODE4_Pos (16U) -#define GPIO_CRL_MODE4_Msk (0x3UL << GPIO_CRL_MODE4_Pos) /*!< 0x00030000 */ -#define GPIO_CRL_MODE4 GPIO_CRL_MODE4_Msk /*!< MODE4[1:0] bits (Port x mode bits, pin 4) */ -#define GPIO_CRL_MODE4_0 (0x1UL << GPIO_CRL_MODE4_Pos) /*!< 0x00010000 */ -#define GPIO_CRL_MODE4_1 (0x2UL << GPIO_CRL_MODE4_Pos) /*!< 0x00020000 */ - -#define GPIO_CRL_MODE5_Pos (20U) -#define GPIO_CRL_MODE5_Msk (0x3UL << GPIO_CRL_MODE5_Pos) /*!< 0x00300000 */ -#define GPIO_CRL_MODE5 GPIO_CRL_MODE5_Msk /*!< MODE5[1:0] bits (Port x mode bits, pin 5) */ -#define GPIO_CRL_MODE5_0 (0x1UL << GPIO_CRL_MODE5_Pos) /*!< 0x00100000 */ -#define GPIO_CRL_MODE5_1 (0x2UL << GPIO_CRL_MODE5_Pos) /*!< 0x00200000 */ - -#define GPIO_CRL_MODE6_Pos (24U) -#define GPIO_CRL_MODE6_Msk (0x3UL << GPIO_CRL_MODE6_Pos) /*!< 0x03000000 */ -#define GPIO_CRL_MODE6 GPIO_CRL_MODE6_Msk /*!< MODE6[1:0] bits (Port x mode bits, pin 6) */ -#define GPIO_CRL_MODE6_0 (0x1UL << GPIO_CRL_MODE6_Pos) /*!< 0x01000000 */ -#define GPIO_CRL_MODE6_1 (0x2UL << GPIO_CRL_MODE6_Pos) /*!< 0x02000000 */ - -#define GPIO_CRL_MODE7_Pos (28U) -#define GPIO_CRL_MODE7_Msk (0x3UL << GPIO_CRL_MODE7_Pos) /*!< 0x30000000 */ -#define GPIO_CRL_MODE7 GPIO_CRL_MODE7_Msk /*!< MODE7[1:0] bits (Port x mode bits, pin 7) */ -#define GPIO_CRL_MODE7_0 (0x1UL << GPIO_CRL_MODE7_Pos) /*!< 0x10000000 */ -#define GPIO_CRL_MODE7_1 (0x2UL << GPIO_CRL_MODE7_Pos) /*!< 0x20000000 */ - -#define GPIO_CRL_CNF_Pos (2U) -#define GPIO_CRL_CNF_Msk (0x33333333UL << GPIO_CRL_CNF_Pos) /*!< 0xCCCCCCCC */ -#define GPIO_CRL_CNF GPIO_CRL_CNF_Msk /*!< Port x configuration bits */ - -#define GPIO_CRL_CNF0_Pos (2U) -#define GPIO_CRL_CNF0_Msk (0x3UL << GPIO_CRL_CNF0_Pos) /*!< 0x0000000C */ -#define GPIO_CRL_CNF0 GPIO_CRL_CNF0_Msk /*!< CNF0[1:0] bits (Port x configuration bits, pin 0) */ -#define GPIO_CRL_CNF0_0 (0x1UL << GPIO_CRL_CNF0_Pos) /*!< 0x00000004 */ -#define GPIO_CRL_CNF0_1 (0x2UL << GPIO_CRL_CNF0_Pos) /*!< 0x00000008 */ - -#define GPIO_CRL_CNF1_Pos (6U) -#define GPIO_CRL_CNF1_Msk (0x3UL << GPIO_CRL_CNF1_Pos) /*!< 0x000000C0 */ -#define GPIO_CRL_CNF1 GPIO_CRL_CNF1_Msk /*!< CNF1[1:0] bits (Port x configuration bits, pin 1) */ -#define GPIO_CRL_CNF1_0 (0x1UL << GPIO_CRL_CNF1_Pos) /*!< 0x00000040 */ -#define GPIO_CRL_CNF1_1 (0x2UL << GPIO_CRL_CNF1_Pos) /*!< 0x00000080 */ - -#define GPIO_CRL_CNF2_Pos (10U) -#define GPIO_CRL_CNF2_Msk (0x3UL << GPIO_CRL_CNF2_Pos) /*!< 0x00000C00 */ -#define GPIO_CRL_CNF2 GPIO_CRL_CNF2_Msk /*!< CNF2[1:0] bits (Port x configuration bits, pin 2) */ -#define GPIO_CRL_CNF2_0 (0x1UL << GPIO_CRL_CNF2_Pos) /*!< 0x00000400 */ -#define GPIO_CRL_CNF2_1 (0x2UL << GPIO_CRL_CNF2_Pos) /*!< 0x00000800 */ - -#define GPIO_CRL_CNF3_Pos (14U) -#define GPIO_CRL_CNF3_Msk (0x3UL << GPIO_CRL_CNF3_Pos) /*!< 0x0000C000 */ -#define GPIO_CRL_CNF3 GPIO_CRL_CNF3_Msk /*!< CNF3[1:0] bits (Port x configuration bits, pin 3) */ -#define GPIO_CRL_CNF3_0 (0x1UL << GPIO_CRL_CNF3_Pos) /*!< 0x00004000 */ -#define GPIO_CRL_CNF3_1 (0x2UL << GPIO_CRL_CNF3_Pos) /*!< 0x00008000 */ - -#define GPIO_CRL_CNF4_Pos (18U) -#define GPIO_CRL_CNF4_Msk (0x3UL << GPIO_CRL_CNF4_Pos) /*!< 0x000C0000 */ -#define GPIO_CRL_CNF4 GPIO_CRL_CNF4_Msk /*!< CNF4[1:0] bits (Port x configuration bits, pin 4) */ -#define GPIO_CRL_CNF4_0 (0x1UL << GPIO_CRL_CNF4_Pos) /*!< 0x00040000 */ -#define GPIO_CRL_CNF4_1 (0x2UL << GPIO_CRL_CNF4_Pos) /*!< 0x00080000 */ - -#define GPIO_CRL_CNF5_Pos (22U) -#define GPIO_CRL_CNF5_Msk (0x3UL << GPIO_CRL_CNF5_Pos) /*!< 0x00C00000 */ -#define GPIO_CRL_CNF5 GPIO_CRL_CNF5_Msk /*!< CNF5[1:0] bits (Port x configuration bits, pin 5) */ -#define GPIO_CRL_CNF5_0 (0x1UL << GPIO_CRL_CNF5_Pos) /*!< 0x00400000 */ -#define GPIO_CRL_CNF5_1 (0x2UL << GPIO_CRL_CNF5_Pos) /*!< 0x00800000 */ - -#define GPIO_CRL_CNF6_Pos (26U) -#define GPIO_CRL_CNF6_Msk (0x3UL << GPIO_CRL_CNF6_Pos) /*!< 0x0C000000 */ -#define GPIO_CRL_CNF6 GPIO_CRL_CNF6_Msk /*!< CNF6[1:0] bits (Port x configuration bits, pin 6) */ -#define GPIO_CRL_CNF6_0 (0x1UL << GPIO_CRL_CNF6_Pos) /*!< 0x04000000 */ -#define GPIO_CRL_CNF6_1 (0x2UL << GPIO_CRL_CNF6_Pos) /*!< 0x08000000 */ - -#define GPIO_CRL_CNF7_Pos (30U) -#define GPIO_CRL_CNF7_Msk (0x3UL << GPIO_CRL_CNF7_Pos) /*!< 0xC0000000 */ -#define GPIO_CRL_CNF7 GPIO_CRL_CNF7_Msk /*!< CNF7[1:0] bits (Port x configuration bits, pin 7) */ -#define GPIO_CRL_CNF7_0 (0x1UL << GPIO_CRL_CNF7_Pos) /*!< 0x40000000 */ -#define GPIO_CRL_CNF7_1 (0x2UL << GPIO_CRL_CNF7_Pos) /*!< 0x80000000 */ - -/******************* Bit definition for GPIO_CRH register *******************/ -#define GPIO_CRH_MODE_Pos (0U) -#define GPIO_CRH_MODE_Msk (0x33333333UL << GPIO_CRH_MODE_Pos) /*!< 0x33333333 */ -#define GPIO_CRH_MODE GPIO_CRH_MODE_Msk /*!< Port x mode bits */ - -#define GPIO_CRH_MODE8_Pos (0U) -#define GPIO_CRH_MODE8_Msk (0x3UL << GPIO_CRH_MODE8_Pos) /*!< 0x00000003 */ -#define GPIO_CRH_MODE8 GPIO_CRH_MODE8_Msk /*!< MODE8[1:0] bits (Port x mode bits, pin 8) */ -#define GPIO_CRH_MODE8_0 (0x1UL << GPIO_CRH_MODE8_Pos) /*!< 0x00000001 */ -#define GPIO_CRH_MODE8_1 (0x2UL << GPIO_CRH_MODE8_Pos) /*!< 0x00000002 */ - -#define GPIO_CRH_MODE9_Pos (4U) -#define GPIO_CRH_MODE9_Msk (0x3UL << GPIO_CRH_MODE9_Pos) /*!< 0x00000030 */ -#define GPIO_CRH_MODE9 GPIO_CRH_MODE9_Msk /*!< MODE9[1:0] bits (Port x mode bits, pin 9) */ -#define GPIO_CRH_MODE9_0 (0x1UL << GPIO_CRH_MODE9_Pos) /*!< 0x00000010 */ -#define GPIO_CRH_MODE9_1 (0x2UL << GPIO_CRH_MODE9_Pos) /*!< 0x00000020 */ - -#define GPIO_CRH_MODE10_Pos (8U) -#define GPIO_CRH_MODE10_Msk (0x3UL << GPIO_CRH_MODE10_Pos) /*!< 0x00000300 */ -#define GPIO_CRH_MODE10 GPIO_CRH_MODE10_Msk /*!< MODE10[1:0] bits (Port x mode bits, pin 10) */ -#define GPIO_CRH_MODE10_0 (0x1UL << GPIO_CRH_MODE10_Pos) /*!< 0x00000100 */ -#define GPIO_CRH_MODE10_1 (0x2UL << GPIO_CRH_MODE10_Pos) /*!< 0x00000200 */ - -#define GPIO_CRH_MODE11_Pos (12U) -#define GPIO_CRH_MODE11_Msk (0x3UL << GPIO_CRH_MODE11_Pos) /*!< 0x00003000 */ -#define GPIO_CRH_MODE11 GPIO_CRH_MODE11_Msk /*!< MODE11[1:0] bits (Port x mode bits, pin 11) */ -#define GPIO_CRH_MODE11_0 (0x1UL << GPIO_CRH_MODE11_Pos) /*!< 0x00001000 */ -#define GPIO_CRH_MODE11_1 (0x2UL << GPIO_CRH_MODE11_Pos) /*!< 0x00002000 */ - -#define GPIO_CRH_MODE12_Pos (16U) -#define GPIO_CRH_MODE12_Msk (0x3UL << GPIO_CRH_MODE12_Pos) /*!< 0x00030000 */ -#define GPIO_CRH_MODE12 GPIO_CRH_MODE12_Msk /*!< MODE12[1:0] bits (Port x mode bits, pin 12) */ -#define GPIO_CRH_MODE12_0 (0x1UL << GPIO_CRH_MODE12_Pos) /*!< 0x00010000 */ -#define GPIO_CRH_MODE12_1 (0x2UL << GPIO_CRH_MODE12_Pos) /*!< 0x00020000 */ - -#define GPIO_CRH_MODE13_Pos (20U) -#define GPIO_CRH_MODE13_Msk (0x3UL << GPIO_CRH_MODE13_Pos) /*!< 0x00300000 */ -#define GPIO_CRH_MODE13 GPIO_CRH_MODE13_Msk /*!< MODE13[1:0] bits (Port x mode bits, pin 13) */ -#define GPIO_CRH_MODE13_0 (0x1UL << GPIO_CRH_MODE13_Pos) /*!< 0x00100000 */ -#define GPIO_CRH_MODE13_1 (0x2UL << GPIO_CRH_MODE13_Pos) /*!< 0x00200000 */ - -#define GPIO_CRH_MODE14_Pos (24U) -#define GPIO_CRH_MODE14_Msk (0x3UL << GPIO_CRH_MODE14_Pos) /*!< 0x03000000 */ -#define GPIO_CRH_MODE14 GPIO_CRH_MODE14_Msk /*!< MODE14[1:0] bits (Port x mode bits, pin 14) */ -#define GPIO_CRH_MODE14_0 (0x1UL << GPIO_CRH_MODE14_Pos) /*!< 0x01000000 */ -#define GPIO_CRH_MODE14_1 (0x2UL << GPIO_CRH_MODE14_Pos) /*!< 0x02000000 */ - -#define GPIO_CRH_MODE15_Pos (28U) -#define GPIO_CRH_MODE15_Msk (0x3UL << GPIO_CRH_MODE15_Pos) /*!< 0x30000000 */ -#define GPIO_CRH_MODE15 GPIO_CRH_MODE15_Msk /*!< MODE15[1:0] bits (Port x mode bits, pin 15) */ -#define GPIO_CRH_MODE15_0 (0x1UL << GPIO_CRH_MODE15_Pos) /*!< 0x10000000 */ -#define GPIO_CRH_MODE15_1 (0x2UL << GPIO_CRH_MODE15_Pos) /*!< 0x20000000 */ - -#define GPIO_CRH_CNF_Pos (2U) -#define GPIO_CRH_CNF_Msk (0x33333333UL << GPIO_CRH_CNF_Pos) /*!< 0xCCCCCCCC */ -#define GPIO_CRH_CNF GPIO_CRH_CNF_Msk /*!< Port x configuration bits */ - -#define GPIO_CRH_CNF8_Pos (2U) -#define GPIO_CRH_CNF8_Msk (0x3UL << GPIO_CRH_CNF8_Pos) /*!< 0x0000000C */ -#define GPIO_CRH_CNF8 GPIO_CRH_CNF8_Msk /*!< CNF8[1:0] bits (Port x configuration bits, pin 8) */ -#define GPIO_CRH_CNF8_0 (0x1UL << GPIO_CRH_CNF8_Pos) /*!< 0x00000004 */ -#define GPIO_CRH_CNF8_1 (0x2UL << GPIO_CRH_CNF8_Pos) /*!< 0x00000008 */ - -#define GPIO_CRH_CNF9_Pos (6U) -#define GPIO_CRH_CNF9_Msk (0x3UL << GPIO_CRH_CNF9_Pos) /*!< 0x000000C0 */ -#define GPIO_CRH_CNF9 GPIO_CRH_CNF9_Msk /*!< CNF9[1:0] bits (Port x configuration bits, pin 9) */ -#define GPIO_CRH_CNF9_0 (0x1UL << GPIO_CRH_CNF9_Pos) /*!< 0x00000040 */ -#define GPIO_CRH_CNF9_1 (0x2UL << GPIO_CRH_CNF9_Pos) /*!< 0x00000080 */ - -#define GPIO_CRH_CNF10_Pos (10U) -#define GPIO_CRH_CNF10_Msk (0x3UL << GPIO_CRH_CNF10_Pos) /*!< 0x00000C00 */ -#define GPIO_CRH_CNF10 GPIO_CRH_CNF10_Msk /*!< CNF10[1:0] bits (Port x configuration bits, pin 10) */ -#define GPIO_CRH_CNF10_0 (0x1UL << GPIO_CRH_CNF10_Pos) /*!< 0x00000400 */ -#define GPIO_CRH_CNF10_1 (0x2UL << GPIO_CRH_CNF10_Pos) /*!< 0x00000800 */ - -#define GPIO_CRH_CNF11_Pos (14U) -#define GPIO_CRH_CNF11_Msk (0x3UL << GPIO_CRH_CNF11_Pos) /*!< 0x0000C000 */ -#define GPIO_CRH_CNF11 GPIO_CRH_CNF11_Msk /*!< CNF11[1:0] bits (Port x configuration bits, pin 11) */ -#define GPIO_CRH_CNF11_0 (0x1UL << GPIO_CRH_CNF11_Pos) /*!< 0x00004000 */ -#define GPIO_CRH_CNF11_1 (0x2UL << GPIO_CRH_CNF11_Pos) /*!< 0x00008000 */ - -#define GPIO_CRH_CNF12_Pos (18U) -#define GPIO_CRH_CNF12_Msk (0x3UL << GPIO_CRH_CNF12_Pos) /*!< 0x000C0000 */ -#define GPIO_CRH_CNF12 GPIO_CRH_CNF12_Msk /*!< CNF12[1:0] bits (Port x configuration bits, pin 12) */ -#define GPIO_CRH_CNF12_0 (0x1UL << GPIO_CRH_CNF12_Pos) /*!< 0x00040000 */ -#define GPIO_CRH_CNF12_1 (0x2UL << GPIO_CRH_CNF12_Pos) /*!< 0x00080000 */ - -#define GPIO_CRH_CNF13_Pos (22U) -#define GPIO_CRH_CNF13_Msk (0x3UL << GPIO_CRH_CNF13_Pos) /*!< 0x00C00000 */ -#define GPIO_CRH_CNF13 GPIO_CRH_CNF13_Msk /*!< CNF13[1:0] bits (Port x configuration bits, pin 13) */ -#define GPIO_CRH_CNF13_0 (0x1UL << GPIO_CRH_CNF13_Pos) /*!< 0x00400000 */ -#define GPIO_CRH_CNF13_1 (0x2UL << GPIO_CRH_CNF13_Pos) /*!< 0x00800000 */ - -#define GPIO_CRH_CNF14_Pos (26U) -#define GPIO_CRH_CNF14_Msk (0x3UL << GPIO_CRH_CNF14_Pos) /*!< 0x0C000000 */ -#define GPIO_CRH_CNF14 GPIO_CRH_CNF14_Msk /*!< CNF14[1:0] bits (Port x configuration bits, pin 14) */ -#define GPIO_CRH_CNF14_0 (0x1UL << GPIO_CRH_CNF14_Pos) /*!< 0x04000000 */ -#define GPIO_CRH_CNF14_1 (0x2UL << GPIO_CRH_CNF14_Pos) /*!< 0x08000000 */ - -#define GPIO_CRH_CNF15_Pos (30U) -#define GPIO_CRH_CNF15_Msk (0x3UL << GPIO_CRH_CNF15_Pos) /*!< 0xC0000000 */ -#define GPIO_CRH_CNF15 GPIO_CRH_CNF15_Msk /*!< CNF15[1:0] bits (Port x configuration bits, pin 15) */ -#define GPIO_CRH_CNF15_0 (0x1UL << GPIO_CRH_CNF15_Pos) /*!< 0x40000000 */ -#define GPIO_CRH_CNF15_1 (0x2UL << GPIO_CRH_CNF15_Pos) /*!< 0x80000000 */ - -/*!<****************** Bit definition for GPIO_IDR register *******************/ -#define GPIO_IDR_IDR0_Pos (0U) -#define GPIO_IDR_IDR0_Msk (0x1UL << GPIO_IDR_IDR0_Pos) /*!< 0x00000001 */ -#define GPIO_IDR_IDR0 GPIO_IDR_IDR0_Msk /*!< Port input data, bit 0 */ -#define GPIO_IDR_IDR1_Pos (1U) -#define GPIO_IDR_IDR1_Msk (0x1UL << GPIO_IDR_IDR1_Pos) /*!< 0x00000002 */ -#define GPIO_IDR_IDR1 GPIO_IDR_IDR1_Msk /*!< Port input data, bit 1 */ -#define GPIO_IDR_IDR2_Pos (2U) -#define GPIO_IDR_IDR2_Msk (0x1UL << GPIO_IDR_IDR2_Pos) /*!< 0x00000004 */ -#define GPIO_IDR_IDR2 GPIO_IDR_IDR2_Msk /*!< Port input data, bit 2 */ -#define GPIO_IDR_IDR3_Pos (3U) -#define GPIO_IDR_IDR3_Msk (0x1UL << GPIO_IDR_IDR3_Pos) /*!< 0x00000008 */ -#define GPIO_IDR_IDR3 GPIO_IDR_IDR3_Msk /*!< Port input data, bit 3 */ -#define GPIO_IDR_IDR4_Pos (4U) -#define GPIO_IDR_IDR4_Msk (0x1UL << GPIO_IDR_IDR4_Pos) /*!< 0x00000010 */ -#define GPIO_IDR_IDR4 GPIO_IDR_IDR4_Msk /*!< Port input data, bit 4 */ -#define GPIO_IDR_IDR5_Pos (5U) -#define GPIO_IDR_IDR5_Msk (0x1UL << GPIO_IDR_IDR5_Pos) /*!< 0x00000020 */ -#define GPIO_IDR_IDR5 GPIO_IDR_IDR5_Msk /*!< Port input data, bit 5 */ -#define GPIO_IDR_IDR6_Pos (6U) -#define GPIO_IDR_IDR6_Msk (0x1UL << GPIO_IDR_IDR6_Pos) /*!< 0x00000040 */ -#define GPIO_IDR_IDR6 GPIO_IDR_IDR6_Msk /*!< Port input data, bit 6 */ -#define GPIO_IDR_IDR7_Pos (7U) -#define GPIO_IDR_IDR7_Msk (0x1UL << GPIO_IDR_IDR7_Pos) /*!< 0x00000080 */ -#define GPIO_IDR_IDR7 GPIO_IDR_IDR7_Msk /*!< Port input data, bit 7 */ -#define GPIO_IDR_IDR8_Pos (8U) -#define GPIO_IDR_IDR8_Msk (0x1UL << GPIO_IDR_IDR8_Pos) /*!< 0x00000100 */ -#define GPIO_IDR_IDR8 GPIO_IDR_IDR8_Msk /*!< Port input data, bit 8 */ -#define GPIO_IDR_IDR9_Pos (9U) -#define GPIO_IDR_IDR9_Msk (0x1UL << GPIO_IDR_IDR9_Pos) /*!< 0x00000200 */ -#define GPIO_IDR_IDR9 GPIO_IDR_IDR9_Msk /*!< Port input data, bit 9 */ -#define GPIO_IDR_IDR10_Pos (10U) -#define GPIO_IDR_IDR10_Msk (0x1UL << GPIO_IDR_IDR10_Pos) /*!< 0x00000400 */ -#define GPIO_IDR_IDR10 GPIO_IDR_IDR10_Msk /*!< Port input data, bit 10 */ -#define GPIO_IDR_IDR11_Pos (11U) -#define GPIO_IDR_IDR11_Msk (0x1UL << GPIO_IDR_IDR11_Pos) /*!< 0x00000800 */ -#define GPIO_IDR_IDR11 GPIO_IDR_IDR11_Msk /*!< Port input data, bit 11 */ -#define GPIO_IDR_IDR12_Pos (12U) -#define GPIO_IDR_IDR12_Msk (0x1UL << GPIO_IDR_IDR12_Pos) /*!< 0x00001000 */ -#define GPIO_IDR_IDR12 GPIO_IDR_IDR12_Msk /*!< Port input data, bit 12 */ -#define GPIO_IDR_IDR13_Pos (13U) -#define GPIO_IDR_IDR13_Msk (0x1UL << GPIO_IDR_IDR13_Pos) /*!< 0x00002000 */ -#define GPIO_IDR_IDR13 GPIO_IDR_IDR13_Msk /*!< Port input data, bit 13 */ -#define GPIO_IDR_IDR14_Pos (14U) -#define GPIO_IDR_IDR14_Msk (0x1UL << GPIO_IDR_IDR14_Pos) /*!< 0x00004000 */ -#define GPIO_IDR_IDR14 GPIO_IDR_IDR14_Msk /*!< Port input data, bit 14 */ -#define GPIO_IDR_IDR15_Pos (15U) -#define GPIO_IDR_IDR15_Msk (0x1UL << GPIO_IDR_IDR15_Pos) /*!< 0x00008000 */ -#define GPIO_IDR_IDR15 GPIO_IDR_IDR15_Msk /*!< Port input data, bit 15 */ - -/******************* Bit definition for GPIO_ODR register *******************/ -#define GPIO_ODR_ODR0_Pos (0U) -#define GPIO_ODR_ODR0_Msk (0x1UL << GPIO_ODR_ODR0_Pos) /*!< 0x00000001 */ -#define GPIO_ODR_ODR0 GPIO_ODR_ODR0_Msk /*!< Port output data, bit 0 */ -#define GPIO_ODR_ODR1_Pos (1U) -#define GPIO_ODR_ODR1_Msk (0x1UL << GPIO_ODR_ODR1_Pos) /*!< 0x00000002 */ -#define GPIO_ODR_ODR1 GPIO_ODR_ODR1_Msk /*!< Port output data, bit 1 */ -#define GPIO_ODR_ODR2_Pos (2U) -#define GPIO_ODR_ODR2_Msk (0x1UL << GPIO_ODR_ODR2_Pos) /*!< 0x00000004 */ -#define GPIO_ODR_ODR2 GPIO_ODR_ODR2_Msk /*!< Port output data, bit 2 */ -#define GPIO_ODR_ODR3_Pos (3U) -#define GPIO_ODR_ODR3_Msk (0x1UL << GPIO_ODR_ODR3_Pos) /*!< 0x00000008 */ -#define GPIO_ODR_ODR3 GPIO_ODR_ODR3_Msk /*!< Port output data, bit 3 */ -#define GPIO_ODR_ODR4_Pos (4U) -#define GPIO_ODR_ODR4_Msk (0x1UL << GPIO_ODR_ODR4_Pos) /*!< 0x00000010 */ -#define GPIO_ODR_ODR4 GPIO_ODR_ODR4_Msk /*!< Port output data, bit 4 */ -#define GPIO_ODR_ODR5_Pos (5U) -#define GPIO_ODR_ODR5_Msk (0x1UL << GPIO_ODR_ODR5_Pos) /*!< 0x00000020 */ -#define GPIO_ODR_ODR5 GPIO_ODR_ODR5_Msk /*!< Port output data, bit 5 */ -#define GPIO_ODR_ODR6_Pos (6U) -#define GPIO_ODR_ODR6_Msk (0x1UL << GPIO_ODR_ODR6_Pos) /*!< 0x00000040 */ -#define GPIO_ODR_ODR6 GPIO_ODR_ODR6_Msk /*!< Port output data, bit 6 */ -#define GPIO_ODR_ODR7_Pos (7U) -#define GPIO_ODR_ODR7_Msk (0x1UL << GPIO_ODR_ODR7_Pos) /*!< 0x00000080 */ -#define GPIO_ODR_ODR7 GPIO_ODR_ODR7_Msk /*!< Port output data, bit 7 */ -#define GPIO_ODR_ODR8_Pos (8U) -#define GPIO_ODR_ODR8_Msk (0x1UL << GPIO_ODR_ODR8_Pos) /*!< 0x00000100 */ -#define GPIO_ODR_ODR8 GPIO_ODR_ODR8_Msk /*!< Port output data, bit 8 */ -#define GPIO_ODR_ODR9_Pos (9U) -#define GPIO_ODR_ODR9_Msk (0x1UL << GPIO_ODR_ODR9_Pos) /*!< 0x00000200 */ -#define GPIO_ODR_ODR9 GPIO_ODR_ODR9_Msk /*!< Port output data, bit 9 */ -#define GPIO_ODR_ODR10_Pos (10U) -#define GPIO_ODR_ODR10_Msk (0x1UL << GPIO_ODR_ODR10_Pos) /*!< 0x00000400 */ -#define GPIO_ODR_ODR10 GPIO_ODR_ODR10_Msk /*!< Port output data, bit 10 */ -#define GPIO_ODR_ODR11_Pos (11U) -#define GPIO_ODR_ODR11_Msk (0x1UL << GPIO_ODR_ODR11_Pos) /*!< 0x00000800 */ -#define GPIO_ODR_ODR11 GPIO_ODR_ODR11_Msk /*!< Port output data, bit 11 */ -#define GPIO_ODR_ODR12_Pos (12U) -#define GPIO_ODR_ODR12_Msk (0x1UL << GPIO_ODR_ODR12_Pos) /*!< 0x00001000 */ -#define GPIO_ODR_ODR12 GPIO_ODR_ODR12_Msk /*!< Port output data, bit 12 */ -#define GPIO_ODR_ODR13_Pos (13U) -#define GPIO_ODR_ODR13_Msk (0x1UL << GPIO_ODR_ODR13_Pos) /*!< 0x00002000 */ -#define GPIO_ODR_ODR13 GPIO_ODR_ODR13_Msk /*!< Port output data, bit 13 */ -#define GPIO_ODR_ODR14_Pos (14U) -#define GPIO_ODR_ODR14_Msk (0x1UL << GPIO_ODR_ODR14_Pos) /*!< 0x00004000 */ -#define GPIO_ODR_ODR14 GPIO_ODR_ODR14_Msk /*!< Port output data, bit 14 */ -#define GPIO_ODR_ODR15_Pos (15U) -#define GPIO_ODR_ODR15_Msk (0x1UL << GPIO_ODR_ODR15_Pos) /*!< 0x00008000 */ -#define GPIO_ODR_ODR15 GPIO_ODR_ODR15_Msk /*!< Port output data, bit 15 */ - -/****************** Bit definition for GPIO_BSRR register *******************/ -#define GPIO_BSRR_BS0_Pos (0U) -#define GPIO_BSRR_BS0_Msk (0x1UL << GPIO_BSRR_BS0_Pos) /*!< 0x00000001 */ -#define GPIO_BSRR_BS0 GPIO_BSRR_BS0_Msk /*!< Port x Set bit 0 */ -#define GPIO_BSRR_BS1_Pos (1U) -#define GPIO_BSRR_BS1_Msk (0x1UL << GPIO_BSRR_BS1_Pos) /*!< 0x00000002 */ -#define GPIO_BSRR_BS1 GPIO_BSRR_BS1_Msk /*!< Port x Set bit 1 */ -#define GPIO_BSRR_BS2_Pos (2U) -#define GPIO_BSRR_BS2_Msk (0x1UL << GPIO_BSRR_BS2_Pos) /*!< 0x00000004 */ -#define GPIO_BSRR_BS2 GPIO_BSRR_BS2_Msk /*!< Port x Set bit 2 */ -#define GPIO_BSRR_BS3_Pos (3U) -#define GPIO_BSRR_BS3_Msk (0x1UL << GPIO_BSRR_BS3_Pos) /*!< 0x00000008 */ -#define GPIO_BSRR_BS3 GPIO_BSRR_BS3_Msk /*!< Port x Set bit 3 */ -#define GPIO_BSRR_BS4_Pos (4U) -#define GPIO_BSRR_BS4_Msk (0x1UL << GPIO_BSRR_BS4_Pos) /*!< 0x00000010 */ -#define GPIO_BSRR_BS4 GPIO_BSRR_BS4_Msk /*!< Port x Set bit 4 */ -#define GPIO_BSRR_BS5_Pos (5U) -#define GPIO_BSRR_BS5_Msk (0x1UL << GPIO_BSRR_BS5_Pos) /*!< 0x00000020 */ -#define GPIO_BSRR_BS5 GPIO_BSRR_BS5_Msk /*!< Port x Set bit 5 */ -#define GPIO_BSRR_BS6_Pos (6U) -#define GPIO_BSRR_BS6_Msk (0x1UL << GPIO_BSRR_BS6_Pos) /*!< 0x00000040 */ -#define GPIO_BSRR_BS6 GPIO_BSRR_BS6_Msk /*!< Port x Set bit 6 */ -#define GPIO_BSRR_BS7_Pos (7U) -#define GPIO_BSRR_BS7_Msk (0x1UL << GPIO_BSRR_BS7_Pos) /*!< 0x00000080 */ -#define GPIO_BSRR_BS7 GPIO_BSRR_BS7_Msk /*!< Port x Set bit 7 */ -#define GPIO_BSRR_BS8_Pos (8U) -#define GPIO_BSRR_BS8_Msk (0x1UL << GPIO_BSRR_BS8_Pos) /*!< 0x00000100 */ -#define GPIO_BSRR_BS8 GPIO_BSRR_BS8_Msk /*!< Port x Set bit 8 */ -#define GPIO_BSRR_BS9_Pos (9U) -#define GPIO_BSRR_BS9_Msk (0x1UL << GPIO_BSRR_BS9_Pos) /*!< 0x00000200 */ -#define GPIO_BSRR_BS9 GPIO_BSRR_BS9_Msk /*!< Port x Set bit 9 */ -#define GPIO_BSRR_BS10_Pos (10U) -#define GPIO_BSRR_BS10_Msk (0x1UL << GPIO_BSRR_BS10_Pos) /*!< 0x00000400 */ -#define GPIO_BSRR_BS10 GPIO_BSRR_BS10_Msk /*!< Port x Set bit 10 */ -#define GPIO_BSRR_BS11_Pos (11U) -#define GPIO_BSRR_BS11_Msk (0x1UL << GPIO_BSRR_BS11_Pos) /*!< 0x00000800 */ -#define GPIO_BSRR_BS11 GPIO_BSRR_BS11_Msk /*!< Port x Set bit 11 */ -#define GPIO_BSRR_BS12_Pos (12U) -#define GPIO_BSRR_BS12_Msk (0x1UL << GPIO_BSRR_BS12_Pos) /*!< 0x00001000 */ -#define GPIO_BSRR_BS12 GPIO_BSRR_BS12_Msk /*!< Port x Set bit 12 */ -#define GPIO_BSRR_BS13_Pos (13U) -#define GPIO_BSRR_BS13_Msk (0x1UL << GPIO_BSRR_BS13_Pos) /*!< 0x00002000 */ -#define GPIO_BSRR_BS13 GPIO_BSRR_BS13_Msk /*!< Port x Set bit 13 */ -#define GPIO_BSRR_BS14_Pos (14U) -#define GPIO_BSRR_BS14_Msk (0x1UL << GPIO_BSRR_BS14_Pos) /*!< 0x00004000 */ -#define GPIO_BSRR_BS14 GPIO_BSRR_BS14_Msk /*!< Port x Set bit 14 */ -#define GPIO_BSRR_BS15_Pos (15U) -#define GPIO_BSRR_BS15_Msk (0x1UL << GPIO_BSRR_BS15_Pos) /*!< 0x00008000 */ -#define GPIO_BSRR_BS15 GPIO_BSRR_BS15_Msk /*!< Port x Set bit 15 */ - -#define GPIO_BSRR_BR0_Pos (16U) -#define GPIO_BSRR_BR0_Msk (0x1UL << GPIO_BSRR_BR0_Pos) /*!< 0x00010000 */ -#define GPIO_BSRR_BR0 GPIO_BSRR_BR0_Msk /*!< Port x Reset bit 0 */ -#define GPIO_BSRR_BR1_Pos (17U) -#define GPIO_BSRR_BR1_Msk (0x1UL << GPIO_BSRR_BR1_Pos) /*!< 0x00020000 */ -#define GPIO_BSRR_BR1 GPIO_BSRR_BR1_Msk /*!< Port x Reset bit 1 */ -#define GPIO_BSRR_BR2_Pos (18U) -#define GPIO_BSRR_BR2_Msk (0x1UL << GPIO_BSRR_BR2_Pos) /*!< 0x00040000 */ -#define GPIO_BSRR_BR2 GPIO_BSRR_BR2_Msk /*!< Port x Reset bit 2 */ -#define GPIO_BSRR_BR3_Pos (19U) -#define GPIO_BSRR_BR3_Msk (0x1UL << GPIO_BSRR_BR3_Pos) /*!< 0x00080000 */ -#define GPIO_BSRR_BR3 GPIO_BSRR_BR3_Msk /*!< Port x Reset bit 3 */ -#define GPIO_BSRR_BR4_Pos (20U) -#define GPIO_BSRR_BR4_Msk (0x1UL << GPIO_BSRR_BR4_Pos) /*!< 0x00100000 */ -#define GPIO_BSRR_BR4 GPIO_BSRR_BR4_Msk /*!< Port x Reset bit 4 */ -#define GPIO_BSRR_BR5_Pos (21U) -#define GPIO_BSRR_BR5_Msk (0x1UL << GPIO_BSRR_BR5_Pos) /*!< 0x00200000 */ -#define GPIO_BSRR_BR5 GPIO_BSRR_BR5_Msk /*!< Port x Reset bit 5 */ -#define GPIO_BSRR_BR6_Pos (22U) -#define GPIO_BSRR_BR6_Msk (0x1UL << GPIO_BSRR_BR6_Pos) /*!< 0x00400000 */ -#define GPIO_BSRR_BR6 GPIO_BSRR_BR6_Msk /*!< Port x Reset bit 6 */ -#define GPIO_BSRR_BR7_Pos (23U) -#define GPIO_BSRR_BR7_Msk (0x1UL << GPIO_BSRR_BR7_Pos) /*!< 0x00800000 */ -#define GPIO_BSRR_BR7 GPIO_BSRR_BR7_Msk /*!< Port x Reset bit 7 */ -#define GPIO_BSRR_BR8_Pos (24U) -#define GPIO_BSRR_BR8_Msk (0x1UL << GPIO_BSRR_BR8_Pos) /*!< 0x01000000 */ -#define GPIO_BSRR_BR8 GPIO_BSRR_BR8_Msk /*!< Port x Reset bit 8 */ -#define GPIO_BSRR_BR9_Pos (25U) -#define GPIO_BSRR_BR9_Msk (0x1UL << GPIO_BSRR_BR9_Pos) /*!< 0x02000000 */ -#define GPIO_BSRR_BR9 GPIO_BSRR_BR9_Msk /*!< Port x Reset bit 9 */ -#define GPIO_BSRR_BR10_Pos (26U) -#define GPIO_BSRR_BR10_Msk (0x1UL << GPIO_BSRR_BR10_Pos) /*!< 0x04000000 */ -#define GPIO_BSRR_BR10 GPIO_BSRR_BR10_Msk /*!< Port x Reset bit 10 */ -#define GPIO_BSRR_BR11_Pos (27U) -#define GPIO_BSRR_BR11_Msk (0x1UL << GPIO_BSRR_BR11_Pos) /*!< 0x08000000 */ -#define GPIO_BSRR_BR11 GPIO_BSRR_BR11_Msk /*!< Port x Reset bit 11 */ -#define GPIO_BSRR_BR12_Pos (28U) -#define GPIO_BSRR_BR12_Msk (0x1UL << GPIO_BSRR_BR12_Pos) /*!< 0x10000000 */ -#define GPIO_BSRR_BR12 GPIO_BSRR_BR12_Msk /*!< Port x Reset bit 12 */ -#define GPIO_BSRR_BR13_Pos (29U) -#define GPIO_BSRR_BR13_Msk (0x1UL << GPIO_BSRR_BR13_Pos) /*!< 0x20000000 */ -#define GPIO_BSRR_BR13 GPIO_BSRR_BR13_Msk /*!< Port x Reset bit 13 */ -#define GPIO_BSRR_BR14_Pos (30U) -#define GPIO_BSRR_BR14_Msk (0x1UL << GPIO_BSRR_BR14_Pos) /*!< 0x40000000 */ -#define GPIO_BSRR_BR14 GPIO_BSRR_BR14_Msk /*!< Port x Reset bit 14 */ -#define GPIO_BSRR_BR15_Pos (31U) -#define GPIO_BSRR_BR15_Msk (0x1UL << GPIO_BSRR_BR15_Pos) /*!< 0x80000000 */ -#define GPIO_BSRR_BR15 GPIO_BSRR_BR15_Msk /*!< Port x Reset bit 15 */ - -/******************* Bit definition for GPIO_BRR register *******************/ -#define GPIO_BRR_BR0_Pos (0U) -#define GPIO_BRR_BR0_Msk (0x1UL << GPIO_BRR_BR0_Pos) /*!< 0x00000001 */ -#define GPIO_BRR_BR0 GPIO_BRR_BR0_Msk /*!< Port x Reset bit 0 */ -#define GPIO_BRR_BR1_Pos (1U) -#define GPIO_BRR_BR1_Msk (0x1UL << GPIO_BRR_BR1_Pos) /*!< 0x00000002 */ -#define GPIO_BRR_BR1 GPIO_BRR_BR1_Msk /*!< Port x Reset bit 1 */ -#define GPIO_BRR_BR2_Pos (2U) -#define GPIO_BRR_BR2_Msk (0x1UL << GPIO_BRR_BR2_Pos) /*!< 0x00000004 */ -#define GPIO_BRR_BR2 GPIO_BRR_BR2_Msk /*!< Port x Reset bit 2 */ -#define GPIO_BRR_BR3_Pos (3U) -#define GPIO_BRR_BR3_Msk (0x1UL << GPIO_BRR_BR3_Pos) /*!< 0x00000008 */ -#define GPIO_BRR_BR3 GPIO_BRR_BR3_Msk /*!< Port x Reset bit 3 */ -#define GPIO_BRR_BR4_Pos (4U) -#define GPIO_BRR_BR4_Msk (0x1UL << GPIO_BRR_BR4_Pos) /*!< 0x00000010 */ -#define GPIO_BRR_BR4 GPIO_BRR_BR4_Msk /*!< Port x Reset bit 4 */ -#define GPIO_BRR_BR5_Pos (5U) -#define GPIO_BRR_BR5_Msk (0x1UL << GPIO_BRR_BR5_Pos) /*!< 0x00000020 */ -#define GPIO_BRR_BR5 GPIO_BRR_BR5_Msk /*!< Port x Reset bit 5 */ -#define GPIO_BRR_BR6_Pos (6U) -#define GPIO_BRR_BR6_Msk (0x1UL << GPIO_BRR_BR6_Pos) /*!< 0x00000040 */ -#define GPIO_BRR_BR6 GPIO_BRR_BR6_Msk /*!< Port x Reset bit 6 */ -#define GPIO_BRR_BR7_Pos (7U) -#define GPIO_BRR_BR7_Msk (0x1UL << GPIO_BRR_BR7_Pos) /*!< 0x00000080 */ -#define GPIO_BRR_BR7 GPIO_BRR_BR7_Msk /*!< Port x Reset bit 7 */ -#define GPIO_BRR_BR8_Pos (8U) -#define GPIO_BRR_BR8_Msk (0x1UL << GPIO_BRR_BR8_Pos) /*!< 0x00000100 */ -#define GPIO_BRR_BR8 GPIO_BRR_BR8_Msk /*!< Port x Reset bit 8 */ -#define GPIO_BRR_BR9_Pos (9U) -#define GPIO_BRR_BR9_Msk (0x1UL << GPIO_BRR_BR9_Pos) /*!< 0x00000200 */ -#define GPIO_BRR_BR9 GPIO_BRR_BR9_Msk /*!< Port x Reset bit 9 */ -#define GPIO_BRR_BR10_Pos (10U) -#define GPIO_BRR_BR10_Msk (0x1UL << GPIO_BRR_BR10_Pos) /*!< 0x00000400 */ -#define GPIO_BRR_BR10 GPIO_BRR_BR10_Msk /*!< Port x Reset bit 10 */ -#define GPIO_BRR_BR11_Pos (11U) -#define GPIO_BRR_BR11_Msk (0x1UL << GPIO_BRR_BR11_Pos) /*!< 0x00000800 */ -#define GPIO_BRR_BR11 GPIO_BRR_BR11_Msk /*!< Port x Reset bit 11 */ -#define GPIO_BRR_BR12_Pos (12U) -#define GPIO_BRR_BR12_Msk (0x1UL << GPIO_BRR_BR12_Pos) /*!< 0x00001000 */ -#define GPIO_BRR_BR12 GPIO_BRR_BR12_Msk /*!< Port x Reset bit 12 */ -#define GPIO_BRR_BR13_Pos (13U) -#define GPIO_BRR_BR13_Msk (0x1UL << GPIO_BRR_BR13_Pos) /*!< 0x00002000 */ -#define GPIO_BRR_BR13 GPIO_BRR_BR13_Msk /*!< Port x Reset bit 13 */ -#define GPIO_BRR_BR14_Pos (14U) -#define GPIO_BRR_BR14_Msk (0x1UL << GPIO_BRR_BR14_Pos) /*!< 0x00004000 */ -#define GPIO_BRR_BR14 GPIO_BRR_BR14_Msk /*!< Port x Reset bit 14 */ -#define GPIO_BRR_BR15_Pos (15U) -#define GPIO_BRR_BR15_Msk (0x1UL << GPIO_BRR_BR15_Pos) /*!< 0x00008000 */ -#define GPIO_BRR_BR15 GPIO_BRR_BR15_Msk /*!< Port x Reset bit 15 */ - -/****************** Bit definition for GPIO_LCKR register *******************/ -#define GPIO_LCKR_LCK0_Pos (0U) -#define GPIO_LCKR_LCK0_Msk (0x1UL << GPIO_LCKR_LCK0_Pos) /*!< 0x00000001 */ -#define GPIO_LCKR_LCK0 GPIO_LCKR_LCK0_Msk /*!< Port x Lock bit 0 */ -#define GPIO_LCKR_LCK1_Pos (1U) -#define GPIO_LCKR_LCK1_Msk (0x1UL << GPIO_LCKR_LCK1_Pos) /*!< 0x00000002 */ -#define GPIO_LCKR_LCK1 GPIO_LCKR_LCK1_Msk /*!< Port x Lock bit 1 */ -#define GPIO_LCKR_LCK2_Pos (2U) -#define GPIO_LCKR_LCK2_Msk (0x1UL << GPIO_LCKR_LCK2_Pos) /*!< 0x00000004 */ -#define GPIO_LCKR_LCK2 GPIO_LCKR_LCK2_Msk /*!< Port x Lock bit 2 */ -#define GPIO_LCKR_LCK3_Pos (3U) -#define GPIO_LCKR_LCK3_Msk (0x1UL << GPIO_LCKR_LCK3_Pos) /*!< 0x00000008 */ -#define GPIO_LCKR_LCK3 GPIO_LCKR_LCK3_Msk /*!< Port x Lock bit 3 */ -#define GPIO_LCKR_LCK4_Pos (4U) -#define GPIO_LCKR_LCK4_Msk (0x1UL << GPIO_LCKR_LCK4_Pos) /*!< 0x00000010 */ -#define GPIO_LCKR_LCK4 GPIO_LCKR_LCK4_Msk /*!< Port x Lock bit 4 */ -#define GPIO_LCKR_LCK5_Pos (5U) -#define GPIO_LCKR_LCK5_Msk (0x1UL << GPIO_LCKR_LCK5_Pos) /*!< 0x00000020 */ -#define GPIO_LCKR_LCK5 GPIO_LCKR_LCK5_Msk /*!< Port x Lock bit 5 */ -#define GPIO_LCKR_LCK6_Pos (6U) -#define GPIO_LCKR_LCK6_Msk (0x1UL << GPIO_LCKR_LCK6_Pos) /*!< 0x00000040 */ -#define GPIO_LCKR_LCK6 GPIO_LCKR_LCK6_Msk /*!< Port x Lock bit 6 */ -#define GPIO_LCKR_LCK7_Pos (7U) -#define GPIO_LCKR_LCK7_Msk (0x1UL << GPIO_LCKR_LCK7_Pos) /*!< 0x00000080 */ -#define GPIO_LCKR_LCK7 GPIO_LCKR_LCK7_Msk /*!< Port x Lock bit 7 */ -#define GPIO_LCKR_LCK8_Pos (8U) -#define GPIO_LCKR_LCK8_Msk (0x1UL << GPIO_LCKR_LCK8_Pos) /*!< 0x00000100 */ -#define GPIO_LCKR_LCK8 GPIO_LCKR_LCK8_Msk /*!< Port x Lock bit 8 */ -#define GPIO_LCKR_LCK9_Pos (9U) -#define GPIO_LCKR_LCK9_Msk (0x1UL << GPIO_LCKR_LCK9_Pos) /*!< 0x00000200 */ -#define GPIO_LCKR_LCK9 GPIO_LCKR_LCK9_Msk /*!< Port x Lock bit 9 */ -#define GPIO_LCKR_LCK10_Pos (10U) -#define GPIO_LCKR_LCK10_Msk (0x1UL << GPIO_LCKR_LCK10_Pos) /*!< 0x00000400 */ -#define GPIO_LCKR_LCK10 GPIO_LCKR_LCK10_Msk /*!< Port x Lock bit 10 */ -#define GPIO_LCKR_LCK11_Pos (11U) -#define GPIO_LCKR_LCK11_Msk (0x1UL << GPIO_LCKR_LCK11_Pos) /*!< 0x00000800 */ -#define GPIO_LCKR_LCK11 GPIO_LCKR_LCK11_Msk /*!< Port x Lock bit 11 */ -#define GPIO_LCKR_LCK12_Pos (12U) -#define GPIO_LCKR_LCK12_Msk (0x1UL << GPIO_LCKR_LCK12_Pos) /*!< 0x00001000 */ -#define GPIO_LCKR_LCK12 GPIO_LCKR_LCK12_Msk /*!< Port x Lock bit 12 */ -#define GPIO_LCKR_LCK13_Pos (13U) -#define GPIO_LCKR_LCK13_Msk (0x1UL << GPIO_LCKR_LCK13_Pos) /*!< 0x00002000 */ -#define GPIO_LCKR_LCK13 GPIO_LCKR_LCK13_Msk /*!< Port x Lock bit 13 */ -#define GPIO_LCKR_LCK14_Pos (14U) -#define GPIO_LCKR_LCK14_Msk (0x1UL << GPIO_LCKR_LCK14_Pos) /*!< 0x00004000 */ -#define GPIO_LCKR_LCK14 GPIO_LCKR_LCK14_Msk /*!< Port x Lock bit 14 */ -#define GPIO_LCKR_LCK15_Pos (15U) -#define GPIO_LCKR_LCK15_Msk (0x1UL << GPIO_LCKR_LCK15_Pos) /*!< 0x00008000 */ -#define GPIO_LCKR_LCK15 GPIO_LCKR_LCK15_Msk /*!< Port x Lock bit 15 */ -#define GPIO_LCKR_LCKK_Pos (16U) -#define GPIO_LCKR_LCKK_Msk (0x1UL << GPIO_LCKR_LCKK_Pos) /*!< 0x00010000 */ -#define GPIO_LCKR_LCKK GPIO_LCKR_LCKK_Msk /*!< Lock key */ - -/*----------------------------------------------------------------------------*/ - -/****************** Bit definition for AFIO_EVCR register *******************/ -#define AFIO_EVCR_PIN_Pos (0U) -#define AFIO_EVCR_PIN_Msk (0xFUL << AFIO_EVCR_PIN_Pos) /*!< 0x0000000F */ -#define AFIO_EVCR_PIN AFIO_EVCR_PIN_Msk /*!< PIN[3:0] bits (Pin selection) */ -#define AFIO_EVCR_PIN_0 (0x1UL << AFIO_EVCR_PIN_Pos) /*!< 0x00000001 */ -#define AFIO_EVCR_PIN_1 (0x2UL << AFIO_EVCR_PIN_Pos) /*!< 0x00000002 */ -#define AFIO_EVCR_PIN_2 (0x4UL << AFIO_EVCR_PIN_Pos) /*!< 0x00000004 */ -#define AFIO_EVCR_PIN_3 (0x8UL << AFIO_EVCR_PIN_Pos) /*!< 0x00000008 */ - -/*!< PIN configuration */ -#define AFIO_EVCR_PIN_PX0 0x00000000U /*!< Pin 0 selected */ -#define AFIO_EVCR_PIN_PX1_Pos (0U) -#define AFIO_EVCR_PIN_PX1_Msk (0x1UL << AFIO_EVCR_PIN_PX1_Pos) /*!< 0x00000001 */ -#define AFIO_EVCR_PIN_PX1 AFIO_EVCR_PIN_PX1_Msk /*!< Pin 1 selected */ -#define AFIO_EVCR_PIN_PX2_Pos (1U) -#define AFIO_EVCR_PIN_PX2_Msk (0x1UL << AFIO_EVCR_PIN_PX2_Pos) /*!< 0x00000002 */ -#define AFIO_EVCR_PIN_PX2 AFIO_EVCR_PIN_PX2_Msk /*!< Pin 2 selected */ -#define AFIO_EVCR_PIN_PX3_Pos (0U) -#define AFIO_EVCR_PIN_PX3_Msk (0x3UL << AFIO_EVCR_PIN_PX3_Pos) /*!< 0x00000003 */ -#define AFIO_EVCR_PIN_PX3 AFIO_EVCR_PIN_PX3_Msk /*!< Pin 3 selected */ -#define AFIO_EVCR_PIN_PX4_Pos (2U) -#define AFIO_EVCR_PIN_PX4_Msk (0x1UL << AFIO_EVCR_PIN_PX4_Pos) /*!< 0x00000004 */ -#define AFIO_EVCR_PIN_PX4 AFIO_EVCR_PIN_PX4_Msk /*!< Pin 4 selected */ -#define AFIO_EVCR_PIN_PX5_Pos (0U) -#define AFIO_EVCR_PIN_PX5_Msk (0x5UL << AFIO_EVCR_PIN_PX5_Pos) /*!< 0x00000005 */ -#define AFIO_EVCR_PIN_PX5 AFIO_EVCR_PIN_PX5_Msk /*!< Pin 5 selected */ -#define AFIO_EVCR_PIN_PX6_Pos (1U) -#define AFIO_EVCR_PIN_PX6_Msk (0x3UL << AFIO_EVCR_PIN_PX6_Pos) /*!< 0x00000006 */ -#define AFIO_EVCR_PIN_PX6 AFIO_EVCR_PIN_PX6_Msk /*!< Pin 6 selected */ -#define AFIO_EVCR_PIN_PX7_Pos (0U) -#define AFIO_EVCR_PIN_PX7_Msk (0x7UL << AFIO_EVCR_PIN_PX7_Pos) /*!< 0x00000007 */ -#define AFIO_EVCR_PIN_PX7 AFIO_EVCR_PIN_PX7_Msk /*!< Pin 7 selected */ -#define AFIO_EVCR_PIN_PX8_Pos (3U) -#define AFIO_EVCR_PIN_PX8_Msk (0x1UL << AFIO_EVCR_PIN_PX8_Pos) /*!< 0x00000008 */ -#define AFIO_EVCR_PIN_PX8 AFIO_EVCR_PIN_PX8_Msk /*!< Pin 8 selected */ -#define AFIO_EVCR_PIN_PX9_Pos (0U) -#define AFIO_EVCR_PIN_PX9_Msk (0x9UL << AFIO_EVCR_PIN_PX9_Pos) /*!< 0x00000009 */ -#define AFIO_EVCR_PIN_PX9 AFIO_EVCR_PIN_PX9_Msk /*!< Pin 9 selected */ -#define AFIO_EVCR_PIN_PX10_Pos (1U) -#define AFIO_EVCR_PIN_PX10_Msk (0x5UL << AFIO_EVCR_PIN_PX10_Pos) /*!< 0x0000000A */ -#define AFIO_EVCR_PIN_PX10 AFIO_EVCR_PIN_PX10_Msk /*!< Pin 10 selected */ -#define AFIO_EVCR_PIN_PX11_Pos (0U) -#define AFIO_EVCR_PIN_PX11_Msk (0xBUL << AFIO_EVCR_PIN_PX11_Pos) /*!< 0x0000000B */ -#define AFIO_EVCR_PIN_PX11 AFIO_EVCR_PIN_PX11_Msk /*!< Pin 11 selected */ -#define AFIO_EVCR_PIN_PX12_Pos (2U) -#define AFIO_EVCR_PIN_PX12_Msk (0x3UL << AFIO_EVCR_PIN_PX12_Pos) /*!< 0x0000000C */ -#define AFIO_EVCR_PIN_PX12 AFIO_EVCR_PIN_PX12_Msk /*!< Pin 12 selected */ -#define AFIO_EVCR_PIN_PX13_Pos (0U) -#define AFIO_EVCR_PIN_PX13_Msk (0xDUL << AFIO_EVCR_PIN_PX13_Pos) /*!< 0x0000000D */ -#define AFIO_EVCR_PIN_PX13 AFIO_EVCR_PIN_PX13_Msk /*!< Pin 13 selected */ -#define AFIO_EVCR_PIN_PX14_Pos (1U) -#define AFIO_EVCR_PIN_PX14_Msk (0x7UL << AFIO_EVCR_PIN_PX14_Pos) /*!< 0x0000000E */ -#define AFIO_EVCR_PIN_PX14 AFIO_EVCR_PIN_PX14_Msk /*!< Pin 14 selected */ -#define AFIO_EVCR_PIN_PX15_Pos (0U) -#define AFIO_EVCR_PIN_PX15_Msk (0xFUL << AFIO_EVCR_PIN_PX15_Pos) /*!< 0x0000000F */ -#define AFIO_EVCR_PIN_PX15 AFIO_EVCR_PIN_PX15_Msk /*!< Pin 15 selected */ - -#define AFIO_EVCR_PORT_Pos (4U) -#define AFIO_EVCR_PORT_Msk (0x7UL << AFIO_EVCR_PORT_Pos) /*!< 0x00000070 */ -#define AFIO_EVCR_PORT AFIO_EVCR_PORT_Msk /*!< PORT[2:0] bits (Port selection) */ -#define AFIO_EVCR_PORT_0 (0x1UL << AFIO_EVCR_PORT_Pos) /*!< 0x00000010 */ -#define AFIO_EVCR_PORT_1 (0x2UL << AFIO_EVCR_PORT_Pos) /*!< 0x00000020 */ -#define AFIO_EVCR_PORT_2 (0x4UL << AFIO_EVCR_PORT_Pos) /*!< 0x00000040 */ - -/*!< PORT configuration */ -#define AFIO_EVCR_PORT_PA 0x00000000 /*!< Port A selected */ -#define AFIO_EVCR_PORT_PB_Pos (4U) -#define AFIO_EVCR_PORT_PB_Msk (0x1UL << AFIO_EVCR_PORT_PB_Pos) /*!< 0x00000010 */ -#define AFIO_EVCR_PORT_PB AFIO_EVCR_PORT_PB_Msk /*!< Port B selected */ -#define AFIO_EVCR_PORT_PC_Pos (5U) -#define AFIO_EVCR_PORT_PC_Msk (0x1UL << AFIO_EVCR_PORT_PC_Pos) /*!< 0x00000020 */ -#define AFIO_EVCR_PORT_PC AFIO_EVCR_PORT_PC_Msk /*!< Port C selected */ -#define AFIO_EVCR_PORT_PD_Pos (4U) -#define AFIO_EVCR_PORT_PD_Msk (0x3UL << AFIO_EVCR_PORT_PD_Pos) /*!< 0x00000030 */ -#define AFIO_EVCR_PORT_PD AFIO_EVCR_PORT_PD_Msk /*!< Port D selected */ -#define AFIO_EVCR_PORT_PE_Pos (6U) -#define AFIO_EVCR_PORT_PE_Msk (0x1UL << AFIO_EVCR_PORT_PE_Pos) /*!< 0x00000040 */ -#define AFIO_EVCR_PORT_PE AFIO_EVCR_PORT_PE_Msk /*!< Port E selected */ - -#define AFIO_EVCR_EVOE_Pos (7U) -#define AFIO_EVCR_EVOE_Msk (0x1UL << AFIO_EVCR_EVOE_Pos) /*!< 0x00000080 */ -#define AFIO_EVCR_EVOE AFIO_EVCR_EVOE_Msk /*!< Event Output Enable */ - -/****************** Bit definition for AFIO_MAPR register *******************/ -#define AFIO_MAPR_SPI1_REMAP_Pos (0U) -#define AFIO_MAPR_SPI1_REMAP_Msk (0x1UL << AFIO_MAPR_SPI1_REMAP_Pos) /*!< 0x00000001 */ -#define AFIO_MAPR_SPI1_REMAP AFIO_MAPR_SPI1_REMAP_Msk /*!< SPI1 remapping */ -#define AFIO_MAPR_I2C1_REMAP_Pos (1U) -#define AFIO_MAPR_I2C1_REMAP_Msk (0x1UL << AFIO_MAPR_I2C1_REMAP_Pos) /*!< 0x00000002 */ -#define AFIO_MAPR_I2C1_REMAP AFIO_MAPR_I2C1_REMAP_Msk /*!< I2C1 remapping */ -#define AFIO_MAPR_USART1_REMAP_Pos (2U) -#define AFIO_MAPR_USART1_REMAP_Msk (0x1UL << AFIO_MAPR_USART1_REMAP_Pos) /*!< 0x00000004 */ -#define AFIO_MAPR_USART1_REMAP AFIO_MAPR_USART1_REMAP_Msk /*!< USART1 remapping */ -#define AFIO_MAPR_USART2_REMAP_Pos (3U) -#define AFIO_MAPR_USART2_REMAP_Msk (0x1UL << AFIO_MAPR_USART2_REMAP_Pos) /*!< 0x00000008 */ -#define AFIO_MAPR_USART2_REMAP AFIO_MAPR_USART2_REMAP_Msk /*!< USART2 remapping */ - -#define AFIO_MAPR_USART3_REMAP_Pos (4U) -#define AFIO_MAPR_USART3_REMAP_Msk (0x3UL << AFIO_MAPR_USART3_REMAP_Pos) /*!< 0x00000030 */ -#define AFIO_MAPR_USART3_REMAP AFIO_MAPR_USART3_REMAP_Msk /*!< USART3_REMAP[1:0] bits (USART3 remapping) */ -#define AFIO_MAPR_USART3_REMAP_0 (0x1UL << AFIO_MAPR_USART3_REMAP_Pos) /*!< 0x00000010 */ -#define AFIO_MAPR_USART3_REMAP_1 (0x2UL << AFIO_MAPR_USART3_REMAP_Pos) /*!< 0x00000020 */ - -/* USART3_REMAP configuration */ -#define AFIO_MAPR_USART3_REMAP_NOREMAP 0x00000000U /*!< No remap (TX/PB10, RX/PB11, CK/PB12, CTS/PB13, RTS/PB14) */ -#define AFIO_MAPR_USART3_REMAP_PARTIALREMAP_Pos (4U) -#define AFIO_MAPR_USART3_REMAP_PARTIALREMAP_Msk (0x1UL << AFIO_MAPR_USART3_REMAP_PARTIALREMAP_Pos) /*!< 0x00000010 */ -#define AFIO_MAPR_USART3_REMAP_PARTIALREMAP AFIO_MAPR_USART3_REMAP_PARTIALREMAP_Msk /*!< Partial remap (TX/PC10, RX/PC11, CK/PC12, CTS/PB13, RTS/PB14) */ -#define AFIO_MAPR_USART3_REMAP_FULLREMAP_Pos (4U) -#define AFIO_MAPR_USART3_REMAP_FULLREMAP_Msk (0x3UL << AFIO_MAPR_USART3_REMAP_FULLREMAP_Pos) /*!< 0x00000030 */ -#define AFIO_MAPR_USART3_REMAP_FULLREMAP AFIO_MAPR_USART3_REMAP_FULLREMAP_Msk /*!< Full remap (TX/PD8, RX/PD9, CK/PD10, CTS/PD11, RTS/PD12) */ - -#define AFIO_MAPR_TIM1_REMAP_Pos (6U) -#define AFIO_MAPR_TIM1_REMAP_Msk (0x3UL << AFIO_MAPR_TIM1_REMAP_Pos) /*!< 0x000000C0 */ -#define AFIO_MAPR_TIM1_REMAP AFIO_MAPR_TIM1_REMAP_Msk /*!< TIM1_REMAP[1:0] bits (TIM1 remapping) */ -#define AFIO_MAPR_TIM1_REMAP_0 (0x1UL << AFIO_MAPR_TIM1_REMAP_Pos) /*!< 0x00000040 */ -#define AFIO_MAPR_TIM1_REMAP_1 (0x2UL << AFIO_MAPR_TIM1_REMAP_Pos) /*!< 0x00000080 */ - -/*!< TIM1_REMAP configuration */ -#define AFIO_MAPR_TIM1_REMAP_NOREMAP 0x00000000U /*!< No remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PB12, CH1N/PB13, CH2N/PB14, CH3N/PB15) */ -#define AFIO_MAPR_TIM1_REMAP_PARTIALREMAP_Pos (6U) -#define AFIO_MAPR_TIM1_REMAP_PARTIALREMAP_Msk (0x1UL << AFIO_MAPR_TIM1_REMAP_PARTIALREMAP_Pos) /*!< 0x00000040 */ -#define AFIO_MAPR_TIM1_REMAP_PARTIALREMAP AFIO_MAPR_TIM1_REMAP_PARTIALREMAP_Msk /*!< Partial remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PA6, CH1N/PA7, CH2N/PB0, CH3N/PB1) */ -#define AFIO_MAPR_TIM1_REMAP_FULLREMAP_Pos (6U) -#define AFIO_MAPR_TIM1_REMAP_FULLREMAP_Msk (0x3UL << AFIO_MAPR_TIM1_REMAP_FULLREMAP_Pos) /*!< 0x000000C0 */ -#define AFIO_MAPR_TIM1_REMAP_FULLREMAP AFIO_MAPR_TIM1_REMAP_FULLREMAP_Msk /*!< Full remap (ETR/PE7, CH1/PE9, CH2/PE11, CH3/PE13, CH4/PE14, BKIN/PE15, CH1N/PE8, CH2N/PE10, CH3N/PE12) */ - -#define AFIO_MAPR_TIM2_REMAP_Pos (8U) -#define AFIO_MAPR_TIM2_REMAP_Msk (0x3UL << AFIO_MAPR_TIM2_REMAP_Pos) /*!< 0x00000300 */ -#define AFIO_MAPR_TIM2_REMAP AFIO_MAPR_TIM2_REMAP_Msk /*!< TIM2_REMAP[1:0] bits (TIM2 remapping) */ -#define AFIO_MAPR_TIM2_REMAP_0 (0x1UL << AFIO_MAPR_TIM2_REMAP_Pos) /*!< 0x00000100 */ -#define AFIO_MAPR_TIM2_REMAP_1 (0x2UL << AFIO_MAPR_TIM2_REMAP_Pos) /*!< 0x00000200 */ - -/*!< TIM2_REMAP configuration */ -#define AFIO_MAPR_TIM2_REMAP_NOREMAP 0x00000000U /*!< No remap (CH1/ETR/PA0, CH2/PA1, CH3/PA2, CH4/PA3) */ -#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1_Pos (8U) -#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1_Msk (0x1UL << AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1_Pos) /*!< 0x00000100 */ -#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1 AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1_Msk /*!< Partial remap (CH1/ETR/PA15, CH2/PB3, CH3/PA2, CH4/PA3) */ -#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2_Pos (9U) -#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2_Msk (0x1UL << AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2_Pos) /*!< 0x00000200 */ -#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2 AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2_Msk /*!< Partial remap (CH1/ETR/PA0, CH2/PA1, CH3/PB10, CH4/PB11) */ -#define AFIO_MAPR_TIM2_REMAP_FULLREMAP_Pos (8U) -#define AFIO_MAPR_TIM2_REMAP_FULLREMAP_Msk (0x3UL << AFIO_MAPR_TIM2_REMAP_FULLREMAP_Pos) /*!< 0x00000300 */ -#define AFIO_MAPR_TIM2_REMAP_FULLREMAP AFIO_MAPR_TIM2_REMAP_FULLREMAP_Msk /*!< Full remap (CH1/ETR/PA15, CH2/PB3, CH3/PB10, CH4/PB11) */ - -#define AFIO_MAPR_TIM3_REMAP_Pos (10U) -#define AFIO_MAPR_TIM3_REMAP_Msk (0x3UL << AFIO_MAPR_TIM3_REMAP_Pos) /*!< 0x00000C00 */ -#define AFIO_MAPR_TIM3_REMAP AFIO_MAPR_TIM3_REMAP_Msk /*!< TIM3_REMAP[1:0] bits (TIM3 remapping) */ -#define AFIO_MAPR_TIM3_REMAP_0 (0x1UL << AFIO_MAPR_TIM3_REMAP_Pos) /*!< 0x00000400 */ -#define AFIO_MAPR_TIM3_REMAP_1 (0x2UL << AFIO_MAPR_TIM3_REMAP_Pos) /*!< 0x00000800 */ - -/*!< TIM3_REMAP configuration */ -#define AFIO_MAPR_TIM3_REMAP_NOREMAP 0x00000000U /*!< No remap (CH1/PA6, CH2/PA7, CH3/PB0, CH4/PB1) */ -#define AFIO_MAPR_TIM3_REMAP_PARTIALREMAP_Pos (11U) -#define AFIO_MAPR_TIM3_REMAP_PARTIALREMAP_Msk (0x1UL << AFIO_MAPR_TIM3_REMAP_PARTIALREMAP_Pos) /*!< 0x00000800 */ -#define AFIO_MAPR_TIM3_REMAP_PARTIALREMAP AFIO_MAPR_TIM3_REMAP_PARTIALREMAP_Msk /*!< Partial remap (CH1/PB4, CH2/PB5, CH3/PB0, CH4/PB1) */ -#define AFIO_MAPR_TIM3_REMAP_FULLREMAP_Pos (10U) -#define AFIO_MAPR_TIM3_REMAP_FULLREMAP_Msk (0x3UL << AFIO_MAPR_TIM3_REMAP_FULLREMAP_Pos) /*!< 0x00000C00 */ -#define AFIO_MAPR_TIM3_REMAP_FULLREMAP AFIO_MAPR_TIM3_REMAP_FULLREMAP_Msk /*!< Full remap (CH1/PC6, CH2/PC7, CH3/PC8, CH4/PC9) */ - -#define AFIO_MAPR_TIM4_REMAP_Pos (12U) -#define AFIO_MAPR_TIM4_REMAP_Msk (0x1UL << AFIO_MAPR_TIM4_REMAP_Pos) /*!< 0x00001000 */ -#define AFIO_MAPR_TIM4_REMAP AFIO_MAPR_TIM4_REMAP_Msk /*!< TIM4_REMAP bit (TIM4 remapping) */ - -#define AFIO_MAPR_CAN_REMAP_Pos (13U) -#define AFIO_MAPR_CAN_REMAP_Msk (0x3UL << AFIO_MAPR_CAN_REMAP_Pos) /*!< 0x00006000 */ -#define AFIO_MAPR_CAN_REMAP AFIO_MAPR_CAN_REMAP_Msk /*!< CAN_REMAP[1:0] bits (CAN Alternate function remapping) */ -#define AFIO_MAPR_CAN_REMAP_0 (0x1UL << AFIO_MAPR_CAN_REMAP_Pos) /*!< 0x00002000 */ -#define AFIO_MAPR_CAN_REMAP_1 (0x2UL << AFIO_MAPR_CAN_REMAP_Pos) /*!< 0x00004000 */ - -/*!< CAN_REMAP configuration */ -#define AFIO_MAPR_CAN_REMAP_REMAP1 0x00000000U /*!< CANRX mapped to PA11, CANTX mapped to PA12 */ -#define AFIO_MAPR_CAN_REMAP_REMAP2_Pos (14U) -#define AFIO_MAPR_CAN_REMAP_REMAP2_Msk (0x1UL << AFIO_MAPR_CAN_REMAP_REMAP2_Pos) /*!< 0x00004000 */ -#define AFIO_MAPR_CAN_REMAP_REMAP2 AFIO_MAPR_CAN_REMAP_REMAP2_Msk /*!< CANRX mapped to PB8, CANTX mapped to PB9 */ -#define AFIO_MAPR_CAN_REMAP_REMAP3_Pos (13U) -#define AFIO_MAPR_CAN_REMAP_REMAP3_Msk (0x3UL << AFIO_MAPR_CAN_REMAP_REMAP3_Pos) /*!< 0x00006000 */ -#define AFIO_MAPR_CAN_REMAP_REMAP3 AFIO_MAPR_CAN_REMAP_REMAP3_Msk /*!< CANRX mapped to PD0, CANTX mapped to PD1 */ - -#define AFIO_MAPR_PD01_REMAP_Pos (15U) -#define AFIO_MAPR_PD01_REMAP_Msk (0x1UL << AFIO_MAPR_PD01_REMAP_Pos) /*!< 0x00008000 */ -#define AFIO_MAPR_PD01_REMAP AFIO_MAPR_PD01_REMAP_Msk /*!< Port D0/Port D1 mapping on OSC_IN/OSC_OUT */ - -/*!< SWJ_CFG configuration */ -#define AFIO_MAPR_SWJ_CFG_Pos (24U) -#define AFIO_MAPR_SWJ_CFG_Msk (0x7UL << AFIO_MAPR_SWJ_CFG_Pos) /*!< 0x07000000 */ -#define AFIO_MAPR_SWJ_CFG AFIO_MAPR_SWJ_CFG_Msk /*!< SWJ_CFG[2:0] bits (Serial Wire JTAG configuration) */ -#define AFIO_MAPR_SWJ_CFG_0 (0x1UL << AFIO_MAPR_SWJ_CFG_Pos) /*!< 0x01000000 */ -#define AFIO_MAPR_SWJ_CFG_1 (0x2UL << AFIO_MAPR_SWJ_CFG_Pos) /*!< 0x02000000 */ -#define AFIO_MAPR_SWJ_CFG_2 (0x4UL << AFIO_MAPR_SWJ_CFG_Pos) /*!< 0x04000000 */ - -#define AFIO_MAPR_SWJ_CFG_RESET 0x00000000U /*!< Full SWJ (JTAG-DP + SW-DP) : Reset State */ -#define AFIO_MAPR_SWJ_CFG_NOJNTRST_Pos (24U) -#define AFIO_MAPR_SWJ_CFG_NOJNTRST_Msk (0x1UL << AFIO_MAPR_SWJ_CFG_NOJNTRST_Pos) /*!< 0x01000000 */ -#define AFIO_MAPR_SWJ_CFG_NOJNTRST AFIO_MAPR_SWJ_CFG_NOJNTRST_Msk /*!< Full SWJ (JTAG-DP + SW-DP) but without JNTRST */ -#define AFIO_MAPR_SWJ_CFG_JTAGDISABLE_Pos (25U) -#define AFIO_MAPR_SWJ_CFG_JTAGDISABLE_Msk (0x1UL << AFIO_MAPR_SWJ_CFG_JTAGDISABLE_Pos) /*!< 0x02000000 */ -#define AFIO_MAPR_SWJ_CFG_JTAGDISABLE AFIO_MAPR_SWJ_CFG_JTAGDISABLE_Msk /*!< JTAG-DP Disabled and SW-DP Enabled */ -#define AFIO_MAPR_SWJ_CFG_DISABLE_Pos (26U) -#define AFIO_MAPR_SWJ_CFG_DISABLE_Msk (0x1UL << AFIO_MAPR_SWJ_CFG_DISABLE_Pos) /*!< 0x04000000 */ -#define AFIO_MAPR_SWJ_CFG_DISABLE AFIO_MAPR_SWJ_CFG_DISABLE_Msk /*!< JTAG-DP Disabled and SW-DP Disabled */ - - -/***************** Bit definition for AFIO_EXTICR1 register *****************/ -#define AFIO_EXTICR1_EXTI0_Pos (0U) -#define AFIO_EXTICR1_EXTI0_Msk (0xFUL << AFIO_EXTICR1_EXTI0_Pos) /*!< 0x0000000F */ -#define AFIO_EXTICR1_EXTI0 AFIO_EXTICR1_EXTI0_Msk /*!< EXTI 0 configuration */ -#define AFIO_EXTICR1_EXTI1_Pos (4U) -#define AFIO_EXTICR1_EXTI1_Msk (0xFUL << AFIO_EXTICR1_EXTI1_Pos) /*!< 0x000000F0 */ -#define AFIO_EXTICR1_EXTI1 AFIO_EXTICR1_EXTI1_Msk /*!< EXTI 1 configuration */ -#define AFIO_EXTICR1_EXTI2_Pos (8U) -#define AFIO_EXTICR1_EXTI2_Msk (0xFUL << AFIO_EXTICR1_EXTI2_Pos) /*!< 0x00000F00 */ -#define AFIO_EXTICR1_EXTI2 AFIO_EXTICR1_EXTI2_Msk /*!< EXTI 2 configuration */ -#define AFIO_EXTICR1_EXTI3_Pos (12U) -#define AFIO_EXTICR1_EXTI3_Msk (0xFUL << AFIO_EXTICR1_EXTI3_Pos) /*!< 0x0000F000 */ -#define AFIO_EXTICR1_EXTI3 AFIO_EXTICR1_EXTI3_Msk /*!< EXTI 3 configuration */ - -/*!< EXTI0 configuration */ -#define AFIO_EXTICR1_EXTI0_PA 0x00000000U /*!< PA[0] pin */ -#define AFIO_EXTICR1_EXTI0_PB_Pos (0U) -#define AFIO_EXTICR1_EXTI0_PB_Msk (0x1UL << AFIO_EXTICR1_EXTI0_PB_Pos) /*!< 0x00000001 */ -#define AFIO_EXTICR1_EXTI0_PB AFIO_EXTICR1_EXTI0_PB_Msk /*!< PB[0] pin */ -#define AFIO_EXTICR1_EXTI0_PC_Pos (1U) -#define AFIO_EXTICR1_EXTI0_PC_Msk (0x1UL << AFIO_EXTICR1_EXTI0_PC_Pos) /*!< 0x00000002 */ -#define AFIO_EXTICR1_EXTI0_PC AFIO_EXTICR1_EXTI0_PC_Msk /*!< PC[0] pin */ -#define AFIO_EXTICR1_EXTI0_PD_Pos (0U) -#define AFIO_EXTICR1_EXTI0_PD_Msk (0x3UL << AFIO_EXTICR1_EXTI0_PD_Pos) /*!< 0x00000003 */ -#define AFIO_EXTICR1_EXTI0_PD AFIO_EXTICR1_EXTI0_PD_Msk /*!< PD[0] pin */ -#define AFIO_EXTICR1_EXTI0_PE_Pos (2U) -#define AFIO_EXTICR1_EXTI0_PE_Msk (0x1UL << AFIO_EXTICR1_EXTI0_PE_Pos) /*!< 0x00000004 */ -#define AFIO_EXTICR1_EXTI0_PE AFIO_EXTICR1_EXTI0_PE_Msk /*!< PE[0] pin */ -#define AFIO_EXTICR1_EXTI0_PF_Pos (0U) -#define AFIO_EXTICR1_EXTI0_PF_Msk (0x5UL << AFIO_EXTICR1_EXTI0_PF_Pos) /*!< 0x00000005 */ -#define AFIO_EXTICR1_EXTI0_PF AFIO_EXTICR1_EXTI0_PF_Msk /*!< PF[0] pin */ -#define AFIO_EXTICR1_EXTI0_PG_Pos (1U) -#define AFIO_EXTICR1_EXTI0_PG_Msk (0x3UL << AFIO_EXTICR1_EXTI0_PG_Pos) /*!< 0x00000006 */ -#define AFIO_EXTICR1_EXTI0_PG AFIO_EXTICR1_EXTI0_PG_Msk /*!< PG[0] pin */ - -/*!< EXTI1 configuration */ -#define AFIO_EXTICR1_EXTI1_PA 0x00000000U /*!< PA[1] pin */ -#define AFIO_EXTICR1_EXTI1_PB_Pos (4U) -#define AFIO_EXTICR1_EXTI1_PB_Msk (0x1UL << AFIO_EXTICR1_EXTI1_PB_Pos) /*!< 0x00000010 */ -#define AFIO_EXTICR1_EXTI1_PB AFIO_EXTICR1_EXTI1_PB_Msk /*!< PB[1] pin */ -#define AFIO_EXTICR1_EXTI1_PC_Pos (5U) -#define AFIO_EXTICR1_EXTI1_PC_Msk (0x1UL << AFIO_EXTICR1_EXTI1_PC_Pos) /*!< 0x00000020 */ -#define AFIO_EXTICR1_EXTI1_PC AFIO_EXTICR1_EXTI1_PC_Msk /*!< PC[1] pin */ -#define AFIO_EXTICR1_EXTI1_PD_Pos (4U) -#define AFIO_EXTICR1_EXTI1_PD_Msk (0x3UL << AFIO_EXTICR1_EXTI1_PD_Pos) /*!< 0x00000030 */ -#define AFIO_EXTICR1_EXTI1_PD AFIO_EXTICR1_EXTI1_PD_Msk /*!< PD[1] pin */ -#define AFIO_EXTICR1_EXTI1_PE_Pos (6U) -#define AFIO_EXTICR1_EXTI1_PE_Msk (0x1UL << AFIO_EXTICR1_EXTI1_PE_Pos) /*!< 0x00000040 */ -#define AFIO_EXTICR1_EXTI1_PE AFIO_EXTICR1_EXTI1_PE_Msk /*!< PE[1] pin */ -#define AFIO_EXTICR1_EXTI1_PF_Pos (4U) -#define AFIO_EXTICR1_EXTI1_PF_Msk (0x5UL << AFIO_EXTICR1_EXTI1_PF_Pos) /*!< 0x00000050 */ -#define AFIO_EXTICR1_EXTI1_PF AFIO_EXTICR1_EXTI1_PF_Msk /*!< PF[1] pin */ -#define AFIO_EXTICR1_EXTI1_PG_Pos (5U) -#define AFIO_EXTICR1_EXTI1_PG_Msk (0x3UL << AFIO_EXTICR1_EXTI1_PG_Pos) /*!< 0x00000060 */ -#define AFIO_EXTICR1_EXTI1_PG AFIO_EXTICR1_EXTI1_PG_Msk /*!< PG[1] pin */ - -/*!< EXTI2 configuration */ -#define AFIO_EXTICR1_EXTI2_PA 0x00000000U /*!< PA[2] pin */ -#define AFIO_EXTICR1_EXTI2_PB_Pos (8U) -#define AFIO_EXTICR1_EXTI2_PB_Msk (0x1UL << AFIO_EXTICR1_EXTI2_PB_Pos) /*!< 0x00000100 */ -#define AFIO_EXTICR1_EXTI2_PB AFIO_EXTICR1_EXTI2_PB_Msk /*!< PB[2] pin */ -#define AFIO_EXTICR1_EXTI2_PC_Pos (9U) -#define AFIO_EXTICR1_EXTI2_PC_Msk (0x1UL << AFIO_EXTICR1_EXTI2_PC_Pos) /*!< 0x00000200 */ -#define AFIO_EXTICR1_EXTI2_PC AFIO_EXTICR1_EXTI2_PC_Msk /*!< PC[2] pin */ -#define AFIO_EXTICR1_EXTI2_PD_Pos (8U) -#define AFIO_EXTICR1_EXTI2_PD_Msk (0x3UL << AFIO_EXTICR1_EXTI2_PD_Pos) /*!< 0x00000300 */ -#define AFIO_EXTICR1_EXTI2_PD AFIO_EXTICR1_EXTI2_PD_Msk /*!< PD[2] pin */ -#define AFIO_EXTICR1_EXTI2_PE_Pos (10U) -#define AFIO_EXTICR1_EXTI2_PE_Msk (0x1UL << AFIO_EXTICR1_EXTI2_PE_Pos) /*!< 0x00000400 */ -#define AFIO_EXTICR1_EXTI2_PE AFIO_EXTICR1_EXTI2_PE_Msk /*!< PE[2] pin */ -#define AFIO_EXTICR1_EXTI2_PF_Pos (8U) -#define AFIO_EXTICR1_EXTI2_PF_Msk (0x5UL << AFIO_EXTICR1_EXTI2_PF_Pos) /*!< 0x00000500 */ -#define AFIO_EXTICR1_EXTI2_PF AFIO_EXTICR1_EXTI2_PF_Msk /*!< PF[2] pin */ -#define AFIO_EXTICR1_EXTI2_PG_Pos (9U) -#define AFIO_EXTICR1_EXTI2_PG_Msk (0x3UL << AFIO_EXTICR1_EXTI2_PG_Pos) /*!< 0x00000600 */ -#define AFIO_EXTICR1_EXTI2_PG AFIO_EXTICR1_EXTI2_PG_Msk /*!< PG[2] pin */ - -/*!< EXTI3 configuration */ -#define AFIO_EXTICR1_EXTI3_PA 0x00000000U /*!< PA[3] pin */ -#define AFIO_EXTICR1_EXTI3_PB_Pos (12U) -#define AFIO_EXTICR1_EXTI3_PB_Msk (0x1UL << AFIO_EXTICR1_EXTI3_PB_Pos) /*!< 0x00001000 */ -#define AFIO_EXTICR1_EXTI3_PB AFIO_EXTICR1_EXTI3_PB_Msk /*!< PB[3] pin */ -#define AFIO_EXTICR1_EXTI3_PC_Pos (13U) -#define AFIO_EXTICR1_EXTI3_PC_Msk (0x1UL << AFIO_EXTICR1_EXTI3_PC_Pos) /*!< 0x00002000 */ -#define AFIO_EXTICR1_EXTI3_PC AFIO_EXTICR1_EXTI3_PC_Msk /*!< PC[3] pin */ -#define AFIO_EXTICR1_EXTI3_PD_Pos (12U) -#define AFIO_EXTICR1_EXTI3_PD_Msk (0x3UL << AFIO_EXTICR1_EXTI3_PD_Pos) /*!< 0x00003000 */ -#define AFIO_EXTICR1_EXTI3_PD AFIO_EXTICR1_EXTI3_PD_Msk /*!< PD[3] pin */ -#define AFIO_EXTICR1_EXTI3_PE_Pos (14U) -#define AFIO_EXTICR1_EXTI3_PE_Msk (0x1UL << AFIO_EXTICR1_EXTI3_PE_Pos) /*!< 0x00004000 */ -#define AFIO_EXTICR1_EXTI3_PE AFIO_EXTICR1_EXTI3_PE_Msk /*!< PE[3] pin */ -#define AFIO_EXTICR1_EXTI3_PF_Pos (12U) -#define AFIO_EXTICR1_EXTI3_PF_Msk (0x5UL << AFIO_EXTICR1_EXTI3_PF_Pos) /*!< 0x00005000 */ -#define AFIO_EXTICR1_EXTI3_PF AFIO_EXTICR1_EXTI3_PF_Msk /*!< PF[3] pin */ -#define AFIO_EXTICR1_EXTI3_PG_Pos (13U) -#define AFIO_EXTICR1_EXTI3_PG_Msk (0x3UL << AFIO_EXTICR1_EXTI3_PG_Pos) /*!< 0x00006000 */ -#define AFIO_EXTICR1_EXTI3_PG AFIO_EXTICR1_EXTI3_PG_Msk /*!< PG[3] pin */ - -/***************** Bit definition for AFIO_EXTICR2 register *****************/ -#define AFIO_EXTICR2_EXTI4_Pos (0U) -#define AFIO_EXTICR2_EXTI4_Msk (0xFUL << AFIO_EXTICR2_EXTI4_Pos) /*!< 0x0000000F */ -#define AFIO_EXTICR2_EXTI4 AFIO_EXTICR2_EXTI4_Msk /*!< EXTI 4 configuration */ -#define AFIO_EXTICR2_EXTI5_Pos (4U) -#define AFIO_EXTICR2_EXTI5_Msk (0xFUL << AFIO_EXTICR2_EXTI5_Pos) /*!< 0x000000F0 */ -#define AFIO_EXTICR2_EXTI5 AFIO_EXTICR2_EXTI5_Msk /*!< EXTI 5 configuration */ -#define AFIO_EXTICR2_EXTI6_Pos (8U) -#define AFIO_EXTICR2_EXTI6_Msk (0xFUL << AFIO_EXTICR2_EXTI6_Pos) /*!< 0x00000F00 */ -#define AFIO_EXTICR2_EXTI6 AFIO_EXTICR2_EXTI6_Msk /*!< EXTI 6 configuration */ -#define AFIO_EXTICR2_EXTI7_Pos (12U) -#define AFIO_EXTICR2_EXTI7_Msk (0xFUL << AFIO_EXTICR2_EXTI7_Pos) /*!< 0x0000F000 */ -#define AFIO_EXTICR2_EXTI7 AFIO_EXTICR2_EXTI7_Msk /*!< EXTI 7 configuration */ - -/*!< EXTI4 configuration */ -#define AFIO_EXTICR2_EXTI4_PA 0x00000000U /*!< PA[4] pin */ -#define AFIO_EXTICR2_EXTI4_PB_Pos (0U) -#define AFIO_EXTICR2_EXTI4_PB_Msk (0x1UL << AFIO_EXTICR2_EXTI4_PB_Pos) /*!< 0x00000001 */ -#define AFIO_EXTICR2_EXTI4_PB AFIO_EXTICR2_EXTI4_PB_Msk /*!< PB[4] pin */ -#define AFIO_EXTICR2_EXTI4_PC_Pos (1U) -#define AFIO_EXTICR2_EXTI4_PC_Msk (0x1UL << AFIO_EXTICR2_EXTI4_PC_Pos) /*!< 0x00000002 */ -#define AFIO_EXTICR2_EXTI4_PC AFIO_EXTICR2_EXTI4_PC_Msk /*!< PC[4] pin */ -#define AFIO_EXTICR2_EXTI4_PD_Pos (0U) -#define AFIO_EXTICR2_EXTI4_PD_Msk (0x3UL << AFIO_EXTICR2_EXTI4_PD_Pos) /*!< 0x00000003 */ -#define AFIO_EXTICR2_EXTI4_PD AFIO_EXTICR2_EXTI4_PD_Msk /*!< PD[4] pin */ -#define AFIO_EXTICR2_EXTI4_PE_Pos (2U) -#define AFIO_EXTICR2_EXTI4_PE_Msk (0x1UL << AFIO_EXTICR2_EXTI4_PE_Pos) /*!< 0x00000004 */ -#define AFIO_EXTICR2_EXTI4_PE AFIO_EXTICR2_EXTI4_PE_Msk /*!< PE[4] pin */ -#define AFIO_EXTICR2_EXTI4_PF_Pos (0U) -#define AFIO_EXTICR2_EXTI4_PF_Msk (0x5UL << AFIO_EXTICR2_EXTI4_PF_Pos) /*!< 0x00000005 */ -#define AFIO_EXTICR2_EXTI4_PF AFIO_EXTICR2_EXTI4_PF_Msk /*!< PF[4] pin */ -#define AFIO_EXTICR2_EXTI4_PG_Pos (1U) -#define AFIO_EXTICR2_EXTI4_PG_Msk (0x3UL << AFIO_EXTICR2_EXTI4_PG_Pos) /*!< 0x00000006 */ -#define AFIO_EXTICR2_EXTI4_PG AFIO_EXTICR2_EXTI4_PG_Msk /*!< PG[4] pin */ - -/* EXTI5 configuration */ -#define AFIO_EXTICR2_EXTI5_PA 0x00000000U /*!< PA[5] pin */ -#define AFIO_EXTICR2_EXTI5_PB_Pos (4U) -#define AFIO_EXTICR2_EXTI5_PB_Msk (0x1UL << AFIO_EXTICR2_EXTI5_PB_Pos) /*!< 0x00000010 */ -#define AFIO_EXTICR2_EXTI5_PB AFIO_EXTICR2_EXTI5_PB_Msk /*!< PB[5] pin */ -#define AFIO_EXTICR2_EXTI5_PC_Pos (5U) -#define AFIO_EXTICR2_EXTI5_PC_Msk (0x1UL << AFIO_EXTICR2_EXTI5_PC_Pos) /*!< 0x00000020 */ -#define AFIO_EXTICR2_EXTI5_PC AFIO_EXTICR2_EXTI5_PC_Msk /*!< PC[5] pin */ -#define AFIO_EXTICR2_EXTI5_PD_Pos (4U) -#define AFIO_EXTICR2_EXTI5_PD_Msk (0x3UL << AFIO_EXTICR2_EXTI5_PD_Pos) /*!< 0x00000030 */ -#define AFIO_EXTICR2_EXTI5_PD AFIO_EXTICR2_EXTI5_PD_Msk /*!< PD[5] pin */ -#define AFIO_EXTICR2_EXTI5_PE_Pos (6U) -#define AFIO_EXTICR2_EXTI5_PE_Msk (0x1UL << AFIO_EXTICR2_EXTI5_PE_Pos) /*!< 0x00000040 */ -#define AFIO_EXTICR2_EXTI5_PE AFIO_EXTICR2_EXTI5_PE_Msk /*!< PE[5] pin */ -#define AFIO_EXTICR2_EXTI5_PF_Pos (4U) -#define AFIO_EXTICR2_EXTI5_PF_Msk (0x5UL << AFIO_EXTICR2_EXTI5_PF_Pos) /*!< 0x00000050 */ -#define AFIO_EXTICR2_EXTI5_PF AFIO_EXTICR2_EXTI5_PF_Msk /*!< PF[5] pin */ -#define AFIO_EXTICR2_EXTI5_PG_Pos (5U) -#define AFIO_EXTICR2_EXTI5_PG_Msk (0x3UL << AFIO_EXTICR2_EXTI5_PG_Pos) /*!< 0x00000060 */ -#define AFIO_EXTICR2_EXTI5_PG AFIO_EXTICR2_EXTI5_PG_Msk /*!< PG[5] pin */ - -/*!< EXTI6 configuration */ -#define AFIO_EXTICR2_EXTI6_PA 0x00000000U /*!< PA[6] pin */ -#define AFIO_EXTICR2_EXTI6_PB_Pos (8U) -#define AFIO_EXTICR2_EXTI6_PB_Msk (0x1UL << AFIO_EXTICR2_EXTI6_PB_Pos) /*!< 0x00000100 */ -#define AFIO_EXTICR2_EXTI6_PB AFIO_EXTICR2_EXTI6_PB_Msk /*!< PB[6] pin */ -#define AFIO_EXTICR2_EXTI6_PC_Pos (9U) -#define AFIO_EXTICR2_EXTI6_PC_Msk (0x1UL << AFIO_EXTICR2_EXTI6_PC_Pos) /*!< 0x00000200 */ -#define AFIO_EXTICR2_EXTI6_PC AFIO_EXTICR2_EXTI6_PC_Msk /*!< PC[6] pin */ -#define AFIO_EXTICR2_EXTI6_PD_Pos (8U) -#define AFIO_EXTICR2_EXTI6_PD_Msk (0x3UL << AFIO_EXTICR2_EXTI6_PD_Pos) /*!< 0x00000300 */ -#define AFIO_EXTICR2_EXTI6_PD AFIO_EXTICR2_EXTI6_PD_Msk /*!< PD[6] pin */ -#define AFIO_EXTICR2_EXTI6_PE_Pos (10U) -#define AFIO_EXTICR2_EXTI6_PE_Msk (0x1UL << AFIO_EXTICR2_EXTI6_PE_Pos) /*!< 0x00000400 */ -#define AFIO_EXTICR2_EXTI6_PE AFIO_EXTICR2_EXTI6_PE_Msk /*!< PE[6] pin */ -#define AFIO_EXTICR2_EXTI6_PF_Pos (8U) -#define AFIO_EXTICR2_EXTI6_PF_Msk (0x5UL << AFIO_EXTICR2_EXTI6_PF_Pos) /*!< 0x00000500 */ -#define AFIO_EXTICR2_EXTI6_PF AFIO_EXTICR2_EXTI6_PF_Msk /*!< PF[6] pin */ -#define AFIO_EXTICR2_EXTI6_PG_Pos (9U) -#define AFIO_EXTICR2_EXTI6_PG_Msk (0x3UL << AFIO_EXTICR2_EXTI6_PG_Pos) /*!< 0x00000600 */ -#define AFIO_EXTICR2_EXTI6_PG AFIO_EXTICR2_EXTI6_PG_Msk /*!< PG[6] pin */ - -/*!< EXTI7 configuration */ -#define AFIO_EXTICR2_EXTI7_PA 0x00000000U /*!< PA[7] pin */ -#define AFIO_EXTICR2_EXTI7_PB_Pos (12U) -#define AFIO_EXTICR2_EXTI7_PB_Msk (0x1UL << AFIO_EXTICR2_EXTI7_PB_Pos) /*!< 0x00001000 */ -#define AFIO_EXTICR2_EXTI7_PB AFIO_EXTICR2_EXTI7_PB_Msk /*!< PB[7] pin */ -#define AFIO_EXTICR2_EXTI7_PC_Pos (13U) -#define AFIO_EXTICR2_EXTI7_PC_Msk (0x1UL << AFIO_EXTICR2_EXTI7_PC_Pos) /*!< 0x00002000 */ -#define AFIO_EXTICR2_EXTI7_PC AFIO_EXTICR2_EXTI7_PC_Msk /*!< PC[7] pin */ -#define AFIO_EXTICR2_EXTI7_PD_Pos (12U) -#define AFIO_EXTICR2_EXTI7_PD_Msk (0x3UL << AFIO_EXTICR2_EXTI7_PD_Pos) /*!< 0x00003000 */ -#define AFIO_EXTICR2_EXTI7_PD AFIO_EXTICR2_EXTI7_PD_Msk /*!< PD[7] pin */ -#define AFIO_EXTICR2_EXTI7_PE_Pos (14U) -#define AFIO_EXTICR2_EXTI7_PE_Msk (0x1UL << AFIO_EXTICR2_EXTI7_PE_Pos) /*!< 0x00004000 */ -#define AFIO_EXTICR2_EXTI7_PE AFIO_EXTICR2_EXTI7_PE_Msk /*!< PE[7] pin */ -#define AFIO_EXTICR2_EXTI7_PF_Pos (12U) -#define AFIO_EXTICR2_EXTI7_PF_Msk (0x5UL << AFIO_EXTICR2_EXTI7_PF_Pos) /*!< 0x00005000 */ -#define AFIO_EXTICR2_EXTI7_PF AFIO_EXTICR2_EXTI7_PF_Msk /*!< PF[7] pin */ -#define AFIO_EXTICR2_EXTI7_PG_Pos (13U) -#define AFIO_EXTICR2_EXTI7_PG_Msk (0x3UL << AFIO_EXTICR2_EXTI7_PG_Pos) /*!< 0x00006000 */ -#define AFIO_EXTICR2_EXTI7_PG AFIO_EXTICR2_EXTI7_PG_Msk /*!< PG[7] pin */ - -/***************** Bit definition for AFIO_EXTICR3 register *****************/ -#define AFIO_EXTICR3_EXTI8_Pos (0U) -#define AFIO_EXTICR3_EXTI8_Msk (0xFUL << AFIO_EXTICR3_EXTI8_Pos) /*!< 0x0000000F */ -#define AFIO_EXTICR3_EXTI8 AFIO_EXTICR3_EXTI8_Msk /*!< EXTI 8 configuration */ -#define AFIO_EXTICR3_EXTI9_Pos (4U) -#define AFIO_EXTICR3_EXTI9_Msk (0xFUL << AFIO_EXTICR3_EXTI9_Pos) /*!< 0x000000F0 */ -#define AFIO_EXTICR3_EXTI9 AFIO_EXTICR3_EXTI9_Msk /*!< EXTI 9 configuration */ -#define AFIO_EXTICR3_EXTI10_Pos (8U) -#define AFIO_EXTICR3_EXTI10_Msk (0xFUL << AFIO_EXTICR3_EXTI10_Pos) /*!< 0x00000F00 */ -#define AFIO_EXTICR3_EXTI10 AFIO_EXTICR3_EXTI10_Msk /*!< EXTI 10 configuration */ -#define AFIO_EXTICR3_EXTI11_Pos (12U) -#define AFIO_EXTICR3_EXTI11_Msk (0xFUL << AFIO_EXTICR3_EXTI11_Pos) /*!< 0x0000F000 */ -#define AFIO_EXTICR3_EXTI11 AFIO_EXTICR3_EXTI11_Msk /*!< EXTI 11 configuration */ - -/*!< EXTI8 configuration */ -#define AFIO_EXTICR3_EXTI8_PA 0x00000000U /*!< PA[8] pin */ -#define AFIO_EXTICR3_EXTI8_PB_Pos (0U) -#define AFIO_EXTICR3_EXTI8_PB_Msk (0x1UL << AFIO_EXTICR3_EXTI8_PB_Pos) /*!< 0x00000001 */ -#define AFIO_EXTICR3_EXTI8_PB AFIO_EXTICR3_EXTI8_PB_Msk /*!< PB[8] pin */ -#define AFIO_EXTICR3_EXTI8_PC_Pos (1U) -#define AFIO_EXTICR3_EXTI8_PC_Msk (0x1UL << AFIO_EXTICR3_EXTI8_PC_Pos) /*!< 0x00000002 */ -#define AFIO_EXTICR3_EXTI8_PC AFIO_EXTICR3_EXTI8_PC_Msk /*!< PC[8] pin */ -#define AFIO_EXTICR3_EXTI8_PD_Pos (0U) -#define AFIO_EXTICR3_EXTI8_PD_Msk (0x3UL << AFIO_EXTICR3_EXTI8_PD_Pos) /*!< 0x00000003 */ -#define AFIO_EXTICR3_EXTI8_PD AFIO_EXTICR3_EXTI8_PD_Msk /*!< PD[8] pin */ -#define AFIO_EXTICR3_EXTI8_PE_Pos (2U) -#define AFIO_EXTICR3_EXTI8_PE_Msk (0x1UL << AFIO_EXTICR3_EXTI8_PE_Pos) /*!< 0x00000004 */ -#define AFIO_EXTICR3_EXTI8_PE AFIO_EXTICR3_EXTI8_PE_Msk /*!< PE[8] pin */ -#define AFIO_EXTICR3_EXTI8_PF_Pos (0U) -#define AFIO_EXTICR3_EXTI8_PF_Msk (0x5UL << AFIO_EXTICR3_EXTI8_PF_Pos) /*!< 0x00000005 */ -#define AFIO_EXTICR3_EXTI8_PF AFIO_EXTICR3_EXTI8_PF_Msk /*!< PF[8] pin */ -#define AFIO_EXTICR3_EXTI8_PG_Pos (1U) -#define AFIO_EXTICR3_EXTI8_PG_Msk (0x3UL << AFIO_EXTICR3_EXTI8_PG_Pos) /*!< 0x00000006 */ -#define AFIO_EXTICR3_EXTI8_PG AFIO_EXTICR3_EXTI8_PG_Msk /*!< PG[8] pin */ - -/*!< EXTI9 configuration */ -#define AFIO_EXTICR3_EXTI9_PA 0x00000000U /*!< PA[9] pin */ -#define AFIO_EXTICR3_EXTI9_PB_Pos (4U) -#define AFIO_EXTICR3_EXTI9_PB_Msk (0x1UL << AFIO_EXTICR3_EXTI9_PB_Pos) /*!< 0x00000010 */ -#define AFIO_EXTICR3_EXTI9_PB AFIO_EXTICR3_EXTI9_PB_Msk /*!< PB[9] pin */ -#define AFIO_EXTICR3_EXTI9_PC_Pos (5U) -#define AFIO_EXTICR3_EXTI9_PC_Msk (0x1UL << AFIO_EXTICR3_EXTI9_PC_Pos) /*!< 0x00000020 */ -#define AFIO_EXTICR3_EXTI9_PC AFIO_EXTICR3_EXTI9_PC_Msk /*!< PC[9] pin */ -#define AFIO_EXTICR3_EXTI9_PD_Pos (4U) -#define AFIO_EXTICR3_EXTI9_PD_Msk (0x3UL << AFIO_EXTICR3_EXTI9_PD_Pos) /*!< 0x00000030 */ -#define AFIO_EXTICR3_EXTI9_PD AFIO_EXTICR3_EXTI9_PD_Msk /*!< PD[9] pin */ -#define AFIO_EXTICR3_EXTI9_PE_Pos (6U) -#define AFIO_EXTICR3_EXTI9_PE_Msk (0x1UL << AFIO_EXTICR3_EXTI9_PE_Pos) /*!< 0x00000040 */ -#define AFIO_EXTICR3_EXTI9_PE AFIO_EXTICR3_EXTI9_PE_Msk /*!< PE[9] pin */ -#define AFIO_EXTICR3_EXTI9_PF_Pos (4U) -#define AFIO_EXTICR3_EXTI9_PF_Msk (0x5UL << AFIO_EXTICR3_EXTI9_PF_Pos) /*!< 0x00000050 */ -#define AFIO_EXTICR3_EXTI9_PF AFIO_EXTICR3_EXTI9_PF_Msk /*!< PF[9] pin */ -#define AFIO_EXTICR3_EXTI9_PG_Pos (5U) -#define AFIO_EXTICR3_EXTI9_PG_Msk (0x3UL << AFIO_EXTICR3_EXTI9_PG_Pos) /*!< 0x00000060 */ -#define AFIO_EXTICR3_EXTI9_PG AFIO_EXTICR3_EXTI9_PG_Msk /*!< PG[9] pin */ - -/*!< EXTI10 configuration */ -#define AFIO_EXTICR3_EXTI10_PA 0x00000000U /*!< PA[10] pin */ -#define AFIO_EXTICR3_EXTI10_PB_Pos (8U) -#define AFIO_EXTICR3_EXTI10_PB_Msk (0x1UL << AFIO_EXTICR3_EXTI10_PB_Pos) /*!< 0x00000100 */ -#define AFIO_EXTICR3_EXTI10_PB AFIO_EXTICR3_EXTI10_PB_Msk /*!< PB[10] pin */ -#define AFIO_EXTICR3_EXTI10_PC_Pos (9U) -#define AFIO_EXTICR3_EXTI10_PC_Msk (0x1UL << AFIO_EXTICR3_EXTI10_PC_Pos) /*!< 0x00000200 */ -#define AFIO_EXTICR3_EXTI10_PC AFIO_EXTICR3_EXTI10_PC_Msk /*!< PC[10] pin */ -#define AFIO_EXTICR3_EXTI10_PD_Pos (8U) -#define AFIO_EXTICR3_EXTI10_PD_Msk (0x3UL << AFIO_EXTICR3_EXTI10_PD_Pos) /*!< 0x00000300 */ -#define AFIO_EXTICR3_EXTI10_PD AFIO_EXTICR3_EXTI10_PD_Msk /*!< PD[10] pin */ -#define AFIO_EXTICR3_EXTI10_PE_Pos (10U) -#define AFIO_EXTICR3_EXTI10_PE_Msk (0x1UL << AFIO_EXTICR3_EXTI10_PE_Pos) /*!< 0x00000400 */ -#define AFIO_EXTICR3_EXTI10_PE AFIO_EXTICR3_EXTI10_PE_Msk /*!< PE[10] pin */ -#define AFIO_EXTICR3_EXTI10_PF_Pos (8U) -#define AFIO_EXTICR3_EXTI10_PF_Msk (0x5UL << AFIO_EXTICR3_EXTI10_PF_Pos) /*!< 0x00000500 */ -#define AFIO_EXTICR3_EXTI10_PF AFIO_EXTICR3_EXTI10_PF_Msk /*!< PF[10] pin */ -#define AFIO_EXTICR3_EXTI10_PG_Pos (9U) -#define AFIO_EXTICR3_EXTI10_PG_Msk (0x3UL << AFIO_EXTICR3_EXTI10_PG_Pos) /*!< 0x00000600 */ -#define AFIO_EXTICR3_EXTI10_PG AFIO_EXTICR3_EXTI10_PG_Msk /*!< PG[10] pin */ - -/*!< EXTI11 configuration */ -#define AFIO_EXTICR3_EXTI11_PA 0x00000000U /*!< PA[11] pin */ -#define AFIO_EXTICR3_EXTI11_PB_Pos (12U) -#define AFIO_EXTICR3_EXTI11_PB_Msk (0x1UL << AFIO_EXTICR3_EXTI11_PB_Pos) /*!< 0x00001000 */ -#define AFIO_EXTICR3_EXTI11_PB AFIO_EXTICR3_EXTI11_PB_Msk /*!< PB[11] pin */ -#define AFIO_EXTICR3_EXTI11_PC_Pos (13U) -#define AFIO_EXTICR3_EXTI11_PC_Msk (0x1UL << AFIO_EXTICR3_EXTI11_PC_Pos) /*!< 0x00002000 */ -#define AFIO_EXTICR3_EXTI11_PC AFIO_EXTICR3_EXTI11_PC_Msk /*!< PC[11] pin */ -#define AFIO_EXTICR3_EXTI11_PD_Pos (12U) -#define AFIO_EXTICR3_EXTI11_PD_Msk (0x3UL << AFIO_EXTICR3_EXTI11_PD_Pos) /*!< 0x00003000 */ -#define AFIO_EXTICR3_EXTI11_PD AFIO_EXTICR3_EXTI11_PD_Msk /*!< PD[11] pin */ -#define AFIO_EXTICR3_EXTI11_PE_Pos (14U) -#define AFIO_EXTICR3_EXTI11_PE_Msk (0x1UL << AFIO_EXTICR3_EXTI11_PE_Pos) /*!< 0x00004000 */ -#define AFIO_EXTICR3_EXTI11_PE AFIO_EXTICR3_EXTI11_PE_Msk /*!< PE[11] pin */ -#define AFIO_EXTICR3_EXTI11_PF_Pos (12U) -#define AFIO_EXTICR3_EXTI11_PF_Msk (0x5UL << AFIO_EXTICR3_EXTI11_PF_Pos) /*!< 0x00005000 */ -#define AFIO_EXTICR3_EXTI11_PF AFIO_EXTICR3_EXTI11_PF_Msk /*!< PF[11] pin */ -#define AFIO_EXTICR3_EXTI11_PG_Pos (13U) -#define AFIO_EXTICR3_EXTI11_PG_Msk (0x3UL << AFIO_EXTICR3_EXTI11_PG_Pos) /*!< 0x00006000 */ -#define AFIO_EXTICR3_EXTI11_PG AFIO_EXTICR3_EXTI11_PG_Msk /*!< PG[11] pin */ - -/***************** Bit definition for AFIO_EXTICR4 register *****************/ -#define AFIO_EXTICR4_EXTI12_Pos (0U) -#define AFIO_EXTICR4_EXTI12_Msk (0xFUL << AFIO_EXTICR4_EXTI12_Pos) /*!< 0x0000000F */ -#define AFIO_EXTICR4_EXTI12 AFIO_EXTICR4_EXTI12_Msk /*!< EXTI 12 configuration */ -#define AFIO_EXTICR4_EXTI13_Pos (4U) -#define AFIO_EXTICR4_EXTI13_Msk (0xFUL << AFIO_EXTICR4_EXTI13_Pos) /*!< 0x000000F0 */ -#define AFIO_EXTICR4_EXTI13 AFIO_EXTICR4_EXTI13_Msk /*!< EXTI 13 configuration */ -#define AFIO_EXTICR4_EXTI14_Pos (8U) -#define AFIO_EXTICR4_EXTI14_Msk (0xFUL << AFIO_EXTICR4_EXTI14_Pos) /*!< 0x00000F00 */ -#define AFIO_EXTICR4_EXTI14 AFIO_EXTICR4_EXTI14_Msk /*!< EXTI 14 configuration */ -#define AFIO_EXTICR4_EXTI15_Pos (12U) -#define AFIO_EXTICR4_EXTI15_Msk (0xFUL << AFIO_EXTICR4_EXTI15_Pos) /*!< 0x0000F000 */ -#define AFIO_EXTICR4_EXTI15 AFIO_EXTICR4_EXTI15_Msk /*!< EXTI 15 configuration */ - -/* EXTI12 configuration */ -#define AFIO_EXTICR4_EXTI12_PA 0x00000000U /*!< PA[12] pin */ -#define AFIO_EXTICR4_EXTI12_PB_Pos (0U) -#define AFIO_EXTICR4_EXTI12_PB_Msk (0x1UL << AFIO_EXTICR4_EXTI12_PB_Pos) /*!< 0x00000001 */ -#define AFIO_EXTICR4_EXTI12_PB AFIO_EXTICR4_EXTI12_PB_Msk /*!< PB[12] pin */ -#define AFIO_EXTICR4_EXTI12_PC_Pos (1U) -#define AFIO_EXTICR4_EXTI12_PC_Msk (0x1UL << AFIO_EXTICR4_EXTI12_PC_Pos) /*!< 0x00000002 */ -#define AFIO_EXTICR4_EXTI12_PC AFIO_EXTICR4_EXTI12_PC_Msk /*!< PC[12] pin */ -#define AFIO_EXTICR4_EXTI12_PD_Pos (0U) -#define AFIO_EXTICR4_EXTI12_PD_Msk (0x3UL << AFIO_EXTICR4_EXTI12_PD_Pos) /*!< 0x00000003 */ -#define AFIO_EXTICR4_EXTI12_PD AFIO_EXTICR4_EXTI12_PD_Msk /*!< PD[12] pin */ -#define AFIO_EXTICR4_EXTI12_PE_Pos (2U) -#define AFIO_EXTICR4_EXTI12_PE_Msk (0x1UL << AFIO_EXTICR4_EXTI12_PE_Pos) /*!< 0x00000004 */ -#define AFIO_EXTICR4_EXTI12_PE AFIO_EXTICR4_EXTI12_PE_Msk /*!< PE[12] pin */ -#define AFIO_EXTICR4_EXTI12_PF_Pos (0U) -#define AFIO_EXTICR4_EXTI12_PF_Msk (0x5UL << AFIO_EXTICR4_EXTI12_PF_Pos) /*!< 0x00000005 */ -#define AFIO_EXTICR4_EXTI12_PF AFIO_EXTICR4_EXTI12_PF_Msk /*!< PF[12] pin */ -#define AFIO_EXTICR4_EXTI12_PG_Pos (1U) -#define AFIO_EXTICR4_EXTI12_PG_Msk (0x3UL << AFIO_EXTICR4_EXTI12_PG_Pos) /*!< 0x00000006 */ -#define AFIO_EXTICR4_EXTI12_PG AFIO_EXTICR4_EXTI12_PG_Msk /*!< PG[12] pin */ - -/* EXTI13 configuration */ -#define AFIO_EXTICR4_EXTI13_PA 0x00000000U /*!< PA[13] pin */ -#define AFIO_EXTICR4_EXTI13_PB_Pos (4U) -#define AFIO_EXTICR4_EXTI13_PB_Msk (0x1UL << AFIO_EXTICR4_EXTI13_PB_Pos) /*!< 0x00000010 */ -#define AFIO_EXTICR4_EXTI13_PB AFIO_EXTICR4_EXTI13_PB_Msk /*!< PB[13] pin */ -#define AFIO_EXTICR4_EXTI13_PC_Pos (5U) -#define AFIO_EXTICR4_EXTI13_PC_Msk (0x1UL << AFIO_EXTICR4_EXTI13_PC_Pos) /*!< 0x00000020 */ -#define AFIO_EXTICR4_EXTI13_PC AFIO_EXTICR4_EXTI13_PC_Msk /*!< PC[13] pin */ -#define AFIO_EXTICR4_EXTI13_PD_Pos (4U) -#define AFIO_EXTICR4_EXTI13_PD_Msk (0x3UL << AFIO_EXTICR4_EXTI13_PD_Pos) /*!< 0x00000030 */ -#define AFIO_EXTICR4_EXTI13_PD AFIO_EXTICR4_EXTI13_PD_Msk /*!< PD[13] pin */ -#define AFIO_EXTICR4_EXTI13_PE_Pos (6U) -#define AFIO_EXTICR4_EXTI13_PE_Msk (0x1UL << AFIO_EXTICR4_EXTI13_PE_Pos) /*!< 0x00000040 */ -#define AFIO_EXTICR4_EXTI13_PE AFIO_EXTICR4_EXTI13_PE_Msk /*!< PE[13] pin */ -#define AFIO_EXTICR4_EXTI13_PF_Pos (4U) -#define AFIO_EXTICR4_EXTI13_PF_Msk (0x5UL << AFIO_EXTICR4_EXTI13_PF_Pos) /*!< 0x00000050 */ -#define AFIO_EXTICR4_EXTI13_PF AFIO_EXTICR4_EXTI13_PF_Msk /*!< PF[13] pin */ -#define AFIO_EXTICR4_EXTI13_PG_Pos (5U) -#define AFIO_EXTICR4_EXTI13_PG_Msk (0x3UL << AFIO_EXTICR4_EXTI13_PG_Pos) /*!< 0x00000060 */ -#define AFIO_EXTICR4_EXTI13_PG AFIO_EXTICR4_EXTI13_PG_Msk /*!< PG[13] pin */ - -/*!< EXTI14 configuration */ -#define AFIO_EXTICR4_EXTI14_PA 0x00000000U /*!< PA[14] pin */ -#define AFIO_EXTICR4_EXTI14_PB_Pos (8U) -#define AFIO_EXTICR4_EXTI14_PB_Msk (0x1UL << AFIO_EXTICR4_EXTI14_PB_Pos) /*!< 0x00000100 */ -#define AFIO_EXTICR4_EXTI14_PB AFIO_EXTICR4_EXTI14_PB_Msk /*!< PB[14] pin */ -#define AFIO_EXTICR4_EXTI14_PC_Pos (9U) -#define AFIO_EXTICR4_EXTI14_PC_Msk (0x1UL << AFIO_EXTICR4_EXTI14_PC_Pos) /*!< 0x00000200 */ -#define AFIO_EXTICR4_EXTI14_PC AFIO_EXTICR4_EXTI14_PC_Msk /*!< PC[14] pin */ -#define AFIO_EXTICR4_EXTI14_PD_Pos (8U) -#define AFIO_EXTICR4_EXTI14_PD_Msk (0x3UL << AFIO_EXTICR4_EXTI14_PD_Pos) /*!< 0x00000300 */ -#define AFIO_EXTICR4_EXTI14_PD AFIO_EXTICR4_EXTI14_PD_Msk /*!< PD[14] pin */ -#define AFIO_EXTICR4_EXTI14_PE_Pos (10U) -#define AFIO_EXTICR4_EXTI14_PE_Msk (0x1UL << AFIO_EXTICR4_EXTI14_PE_Pos) /*!< 0x00000400 */ -#define AFIO_EXTICR4_EXTI14_PE AFIO_EXTICR4_EXTI14_PE_Msk /*!< PE[14] pin */ -#define AFIO_EXTICR4_EXTI14_PF_Pos (8U) -#define AFIO_EXTICR4_EXTI14_PF_Msk (0x5UL << AFIO_EXTICR4_EXTI14_PF_Pos) /*!< 0x00000500 */ -#define AFIO_EXTICR4_EXTI14_PF AFIO_EXTICR4_EXTI14_PF_Msk /*!< PF[14] pin */ -#define AFIO_EXTICR4_EXTI14_PG_Pos (9U) -#define AFIO_EXTICR4_EXTI14_PG_Msk (0x3UL << AFIO_EXTICR4_EXTI14_PG_Pos) /*!< 0x00000600 */ -#define AFIO_EXTICR4_EXTI14_PG AFIO_EXTICR4_EXTI14_PG_Msk /*!< PG[14] pin */ - -/*!< EXTI15 configuration */ -#define AFIO_EXTICR4_EXTI15_PA 0x00000000U /*!< PA[15] pin */ -#define AFIO_EXTICR4_EXTI15_PB_Pos (12U) -#define AFIO_EXTICR4_EXTI15_PB_Msk (0x1UL << AFIO_EXTICR4_EXTI15_PB_Pos) /*!< 0x00001000 */ -#define AFIO_EXTICR4_EXTI15_PB AFIO_EXTICR4_EXTI15_PB_Msk /*!< PB[15] pin */ -#define AFIO_EXTICR4_EXTI15_PC_Pos (13U) -#define AFIO_EXTICR4_EXTI15_PC_Msk (0x1UL << AFIO_EXTICR4_EXTI15_PC_Pos) /*!< 0x00002000 */ -#define AFIO_EXTICR4_EXTI15_PC AFIO_EXTICR4_EXTI15_PC_Msk /*!< PC[15] pin */ -#define AFIO_EXTICR4_EXTI15_PD_Pos (12U) -#define AFIO_EXTICR4_EXTI15_PD_Msk (0x3UL << AFIO_EXTICR4_EXTI15_PD_Pos) /*!< 0x00003000 */ -#define AFIO_EXTICR4_EXTI15_PD AFIO_EXTICR4_EXTI15_PD_Msk /*!< PD[15] pin */ -#define AFIO_EXTICR4_EXTI15_PE_Pos (14U) -#define AFIO_EXTICR4_EXTI15_PE_Msk (0x1UL << AFIO_EXTICR4_EXTI15_PE_Pos) /*!< 0x00004000 */ -#define AFIO_EXTICR4_EXTI15_PE AFIO_EXTICR4_EXTI15_PE_Msk /*!< PE[15] pin */ -#define AFIO_EXTICR4_EXTI15_PF_Pos (12U) -#define AFIO_EXTICR4_EXTI15_PF_Msk (0x5UL << AFIO_EXTICR4_EXTI15_PF_Pos) /*!< 0x00005000 */ -#define AFIO_EXTICR4_EXTI15_PF AFIO_EXTICR4_EXTI15_PF_Msk /*!< PF[15] pin */ -#define AFIO_EXTICR4_EXTI15_PG_Pos (13U) -#define AFIO_EXTICR4_EXTI15_PG_Msk (0x3UL << AFIO_EXTICR4_EXTI15_PG_Pos) /*!< 0x00006000 */ -#define AFIO_EXTICR4_EXTI15_PG AFIO_EXTICR4_EXTI15_PG_Msk /*!< PG[15] pin */ - -/****************** Bit definition for AFIO_MAPR2 register ******************/ - - - -/******************************************************************************/ -/* */ -/* External Interrupt/Event Controller */ -/* */ -/******************************************************************************/ - -/******************* Bit definition for EXTI_IMR register *******************/ -#define EXTI_IMR_MR0_Pos (0U) -#define EXTI_IMR_MR0_Msk (0x1UL << EXTI_IMR_MR0_Pos) /*!< 0x00000001 */ -#define EXTI_IMR_MR0 EXTI_IMR_MR0_Msk /*!< Interrupt Mask on line 0 */ -#define EXTI_IMR_MR1_Pos (1U) -#define EXTI_IMR_MR1_Msk (0x1UL << EXTI_IMR_MR1_Pos) /*!< 0x00000002 */ -#define EXTI_IMR_MR1 EXTI_IMR_MR1_Msk /*!< Interrupt Mask on line 1 */ -#define EXTI_IMR_MR2_Pos (2U) -#define EXTI_IMR_MR2_Msk (0x1UL << EXTI_IMR_MR2_Pos) /*!< 0x00000004 */ -#define EXTI_IMR_MR2 EXTI_IMR_MR2_Msk /*!< Interrupt Mask on line 2 */ -#define EXTI_IMR_MR3_Pos (3U) -#define EXTI_IMR_MR3_Msk (0x1UL << EXTI_IMR_MR3_Pos) /*!< 0x00000008 */ -#define EXTI_IMR_MR3 EXTI_IMR_MR3_Msk /*!< Interrupt Mask on line 3 */ -#define EXTI_IMR_MR4_Pos (4U) -#define EXTI_IMR_MR4_Msk (0x1UL << EXTI_IMR_MR4_Pos) /*!< 0x00000010 */ -#define EXTI_IMR_MR4 EXTI_IMR_MR4_Msk /*!< Interrupt Mask on line 4 */ -#define EXTI_IMR_MR5_Pos (5U) -#define EXTI_IMR_MR5_Msk (0x1UL << EXTI_IMR_MR5_Pos) /*!< 0x00000020 */ -#define EXTI_IMR_MR5 EXTI_IMR_MR5_Msk /*!< Interrupt Mask on line 5 */ -#define EXTI_IMR_MR6_Pos (6U) -#define EXTI_IMR_MR6_Msk (0x1UL << EXTI_IMR_MR6_Pos) /*!< 0x00000040 */ -#define EXTI_IMR_MR6 EXTI_IMR_MR6_Msk /*!< Interrupt Mask on line 6 */ -#define EXTI_IMR_MR7_Pos (7U) -#define EXTI_IMR_MR7_Msk (0x1UL << EXTI_IMR_MR7_Pos) /*!< 0x00000080 */ -#define EXTI_IMR_MR7 EXTI_IMR_MR7_Msk /*!< Interrupt Mask on line 7 */ -#define EXTI_IMR_MR8_Pos (8U) -#define EXTI_IMR_MR8_Msk (0x1UL << EXTI_IMR_MR8_Pos) /*!< 0x00000100 */ -#define EXTI_IMR_MR8 EXTI_IMR_MR8_Msk /*!< Interrupt Mask on line 8 */ -#define EXTI_IMR_MR9_Pos (9U) -#define EXTI_IMR_MR9_Msk (0x1UL << EXTI_IMR_MR9_Pos) /*!< 0x00000200 */ -#define EXTI_IMR_MR9 EXTI_IMR_MR9_Msk /*!< Interrupt Mask on line 9 */ -#define EXTI_IMR_MR10_Pos (10U) -#define EXTI_IMR_MR10_Msk (0x1UL << EXTI_IMR_MR10_Pos) /*!< 0x00000400 */ -#define EXTI_IMR_MR10 EXTI_IMR_MR10_Msk /*!< Interrupt Mask on line 10 */ -#define EXTI_IMR_MR11_Pos (11U) -#define EXTI_IMR_MR11_Msk (0x1UL << EXTI_IMR_MR11_Pos) /*!< 0x00000800 */ -#define EXTI_IMR_MR11 EXTI_IMR_MR11_Msk /*!< Interrupt Mask on line 11 */ -#define EXTI_IMR_MR12_Pos (12U) -#define EXTI_IMR_MR12_Msk (0x1UL << EXTI_IMR_MR12_Pos) /*!< 0x00001000 */ -#define EXTI_IMR_MR12 EXTI_IMR_MR12_Msk /*!< Interrupt Mask on line 12 */ -#define EXTI_IMR_MR13_Pos (13U) -#define EXTI_IMR_MR13_Msk (0x1UL << EXTI_IMR_MR13_Pos) /*!< 0x00002000 */ -#define EXTI_IMR_MR13 EXTI_IMR_MR13_Msk /*!< Interrupt Mask on line 13 */ -#define EXTI_IMR_MR14_Pos (14U) -#define EXTI_IMR_MR14_Msk (0x1UL << EXTI_IMR_MR14_Pos) /*!< 0x00004000 */ -#define EXTI_IMR_MR14 EXTI_IMR_MR14_Msk /*!< Interrupt Mask on line 14 */ -#define EXTI_IMR_MR15_Pos (15U) -#define EXTI_IMR_MR15_Msk (0x1UL << EXTI_IMR_MR15_Pos) /*!< 0x00008000 */ -#define EXTI_IMR_MR15 EXTI_IMR_MR15_Msk /*!< Interrupt Mask on line 15 */ -#define EXTI_IMR_MR16_Pos (16U) -#define EXTI_IMR_MR16_Msk (0x1UL << EXTI_IMR_MR16_Pos) /*!< 0x00010000 */ -#define EXTI_IMR_MR16 EXTI_IMR_MR16_Msk /*!< Interrupt Mask on line 16 */ -#define EXTI_IMR_MR17_Pos (17U) -#define EXTI_IMR_MR17_Msk (0x1UL << EXTI_IMR_MR17_Pos) /*!< 0x00020000 */ -#define EXTI_IMR_MR17 EXTI_IMR_MR17_Msk /*!< Interrupt Mask on line 17 */ -#define EXTI_IMR_MR18_Pos (18U) -#define EXTI_IMR_MR18_Msk (0x1UL << EXTI_IMR_MR18_Pos) /*!< 0x00040000 */ -#define EXTI_IMR_MR18 EXTI_IMR_MR18_Msk /*!< Interrupt Mask on line 18 */ - -/* References Defines */ -#define EXTI_IMR_IM0 EXTI_IMR_MR0 -#define EXTI_IMR_IM1 EXTI_IMR_MR1 -#define EXTI_IMR_IM2 EXTI_IMR_MR2 -#define EXTI_IMR_IM3 EXTI_IMR_MR3 -#define EXTI_IMR_IM4 EXTI_IMR_MR4 -#define EXTI_IMR_IM5 EXTI_IMR_MR5 -#define EXTI_IMR_IM6 EXTI_IMR_MR6 -#define EXTI_IMR_IM7 EXTI_IMR_MR7 -#define EXTI_IMR_IM8 EXTI_IMR_MR8 -#define EXTI_IMR_IM9 EXTI_IMR_MR9 -#define EXTI_IMR_IM10 EXTI_IMR_MR10 -#define EXTI_IMR_IM11 EXTI_IMR_MR11 -#define EXTI_IMR_IM12 EXTI_IMR_MR12 -#define EXTI_IMR_IM13 EXTI_IMR_MR13 -#define EXTI_IMR_IM14 EXTI_IMR_MR14 -#define EXTI_IMR_IM15 EXTI_IMR_MR15 -#define EXTI_IMR_IM16 EXTI_IMR_MR16 -#define EXTI_IMR_IM17 EXTI_IMR_MR17 -#define EXTI_IMR_IM18 EXTI_IMR_MR18 -#define EXTI_IMR_IM 0x0007FFFFU /*!< Interrupt Mask All */ - -/******************* Bit definition for EXTI_EMR register *******************/ -#define EXTI_EMR_MR0_Pos (0U) -#define EXTI_EMR_MR0_Msk (0x1UL << EXTI_EMR_MR0_Pos) /*!< 0x00000001 */ -#define EXTI_EMR_MR0 EXTI_EMR_MR0_Msk /*!< Event Mask on line 0 */ -#define EXTI_EMR_MR1_Pos (1U) -#define EXTI_EMR_MR1_Msk (0x1UL << EXTI_EMR_MR1_Pos) /*!< 0x00000002 */ -#define EXTI_EMR_MR1 EXTI_EMR_MR1_Msk /*!< Event Mask on line 1 */ -#define EXTI_EMR_MR2_Pos (2U) -#define EXTI_EMR_MR2_Msk (0x1UL << EXTI_EMR_MR2_Pos) /*!< 0x00000004 */ -#define EXTI_EMR_MR2 EXTI_EMR_MR2_Msk /*!< Event Mask on line 2 */ -#define EXTI_EMR_MR3_Pos (3U) -#define EXTI_EMR_MR3_Msk (0x1UL << EXTI_EMR_MR3_Pos) /*!< 0x00000008 */ -#define EXTI_EMR_MR3 EXTI_EMR_MR3_Msk /*!< Event Mask on line 3 */ -#define EXTI_EMR_MR4_Pos (4U) -#define EXTI_EMR_MR4_Msk (0x1UL << EXTI_EMR_MR4_Pos) /*!< 0x00000010 */ -#define EXTI_EMR_MR4 EXTI_EMR_MR4_Msk /*!< Event Mask on line 4 */ -#define EXTI_EMR_MR5_Pos (5U) -#define EXTI_EMR_MR5_Msk (0x1UL << EXTI_EMR_MR5_Pos) /*!< 0x00000020 */ -#define EXTI_EMR_MR5 EXTI_EMR_MR5_Msk /*!< Event Mask on line 5 */ -#define EXTI_EMR_MR6_Pos (6U) -#define EXTI_EMR_MR6_Msk (0x1UL << EXTI_EMR_MR6_Pos) /*!< 0x00000040 */ -#define EXTI_EMR_MR6 EXTI_EMR_MR6_Msk /*!< Event Mask on line 6 */ -#define EXTI_EMR_MR7_Pos (7U) -#define EXTI_EMR_MR7_Msk (0x1UL << EXTI_EMR_MR7_Pos) /*!< 0x00000080 */ -#define EXTI_EMR_MR7 EXTI_EMR_MR7_Msk /*!< Event Mask on line 7 */ -#define EXTI_EMR_MR8_Pos (8U) -#define EXTI_EMR_MR8_Msk (0x1UL << EXTI_EMR_MR8_Pos) /*!< 0x00000100 */ -#define EXTI_EMR_MR8 EXTI_EMR_MR8_Msk /*!< Event Mask on line 8 */ -#define EXTI_EMR_MR9_Pos (9U) -#define EXTI_EMR_MR9_Msk (0x1UL << EXTI_EMR_MR9_Pos) /*!< 0x00000200 */ -#define EXTI_EMR_MR9 EXTI_EMR_MR9_Msk /*!< Event Mask on line 9 */ -#define EXTI_EMR_MR10_Pos (10U) -#define EXTI_EMR_MR10_Msk (0x1UL << EXTI_EMR_MR10_Pos) /*!< 0x00000400 */ -#define EXTI_EMR_MR10 EXTI_EMR_MR10_Msk /*!< Event Mask on line 10 */ -#define EXTI_EMR_MR11_Pos (11U) -#define EXTI_EMR_MR11_Msk (0x1UL << EXTI_EMR_MR11_Pos) /*!< 0x00000800 */ -#define EXTI_EMR_MR11 EXTI_EMR_MR11_Msk /*!< Event Mask on line 11 */ -#define EXTI_EMR_MR12_Pos (12U) -#define EXTI_EMR_MR12_Msk (0x1UL << EXTI_EMR_MR12_Pos) /*!< 0x00001000 */ -#define EXTI_EMR_MR12 EXTI_EMR_MR12_Msk /*!< Event Mask on line 12 */ -#define EXTI_EMR_MR13_Pos (13U) -#define EXTI_EMR_MR13_Msk (0x1UL << EXTI_EMR_MR13_Pos) /*!< 0x00002000 */ -#define EXTI_EMR_MR13 EXTI_EMR_MR13_Msk /*!< Event Mask on line 13 */ -#define EXTI_EMR_MR14_Pos (14U) -#define EXTI_EMR_MR14_Msk (0x1UL << EXTI_EMR_MR14_Pos) /*!< 0x00004000 */ -#define EXTI_EMR_MR14 EXTI_EMR_MR14_Msk /*!< Event Mask on line 14 */ -#define EXTI_EMR_MR15_Pos (15U) -#define EXTI_EMR_MR15_Msk (0x1UL << EXTI_EMR_MR15_Pos) /*!< 0x00008000 */ -#define EXTI_EMR_MR15 EXTI_EMR_MR15_Msk /*!< Event Mask on line 15 */ -#define EXTI_EMR_MR16_Pos (16U) -#define EXTI_EMR_MR16_Msk (0x1UL << EXTI_EMR_MR16_Pos) /*!< 0x00010000 */ -#define EXTI_EMR_MR16 EXTI_EMR_MR16_Msk /*!< Event Mask on line 16 */ -#define EXTI_EMR_MR17_Pos (17U) -#define EXTI_EMR_MR17_Msk (0x1UL << EXTI_EMR_MR17_Pos) /*!< 0x00020000 */ -#define EXTI_EMR_MR17 EXTI_EMR_MR17_Msk /*!< Event Mask on line 17 */ -#define EXTI_EMR_MR18_Pos (18U) -#define EXTI_EMR_MR18_Msk (0x1UL << EXTI_EMR_MR18_Pos) /*!< 0x00040000 */ -#define EXTI_EMR_MR18 EXTI_EMR_MR18_Msk /*!< Event Mask on line 18 */ - -/* References Defines */ -#define EXTI_EMR_EM0 EXTI_EMR_MR0 -#define EXTI_EMR_EM1 EXTI_EMR_MR1 -#define EXTI_EMR_EM2 EXTI_EMR_MR2 -#define EXTI_EMR_EM3 EXTI_EMR_MR3 -#define EXTI_EMR_EM4 EXTI_EMR_MR4 -#define EXTI_EMR_EM5 EXTI_EMR_MR5 -#define EXTI_EMR_EM6 EXTI_EMR_MR6 -#define EXTI_EMR_EM7 EXTI_EMR_MR7 -#define EXTI_EMR_EM8 EXTI_EMR_MR8 -#define EXTI_EMR_EM9 EXTI_EMR_MR9 -#define EXTI_EMR_EM10 EXTI_EMR_MR10 -#define EXTI_EMR_EM11 EXTI_EMR_MR11 -#define EXTI_EMR_EM12 EXTI_EMR_MR12 -#define EXTI_EMR_EM13 EXTI_EMR_MR13 -#define EXTI_EMR_EM14 EXTI_EMR_MR14 -#define EXTI_EMR_EM15 EXTI_EMR_MR15 -#define EXTI_EMR_EM16 EXTI_EMR_MR16 -#define EXTI_EMR_EM17 EXTI_EMR_MR17 -#define EXTI_EMR_EM18 EXTI_EMR_MR18 - -/****************** Bit definition for EXTI_RTSR register *******************/ -#define EXTI_RTSR_TR0_Pos (0U) -#define EXTI_RTSR_TR0_Msk (0x1UL << EXTI_RTSR_TR0_Pos) /*!< 0x00000001 */ -#define EXTI_RTSR_TR0 EXTI_RTSR_TR0_Msk /*!< Rising trigger event configuration bit of line 0 */ -#define EXTI_RTSR_TR1_Pos (1U) -#define EXTI_RTSR_TR1_Msk (0x1UL << EXTI_RTSR_TR1_Pos) /*!< 0x00000002 */ -#define EXTI_RTSR_TR1 EXTI_RTSR_TR1_Msk /*!< Rising trigger event configuration bit of line 1 */ -#define EXTI_RTSR_TR2_Pos (2U) -#define EXTI_RTSR_TR2_Msk (0x1UL << EXTI_RTSR_TR2_Pos) /*!< 0x00000004 */ -#define EXTI_RTSR_TR2 EXTI_RTSR_TR2_Msk /*!< Rising trigger event configuration bit of line 2 */ -#define EXTI_RTSR_TR3_Pos (3U) -#define EXTI_RTSR_TR3_Msk (0x1UL << EXTI_RTSR_TR3_Pos) /*!< 0x00000008 */ -#define EXTI_RTSR_TR3 EXTI_RTSR_TR3_Msk /*!< Rising trigger event configuration bit of line 3 */ -#define EXTI_RTSR_TR4_Pos (4U) -#define EXTI_RTSR_TR4_Msk (0x1UL << EXTI_RTSR_TR4_Pos) /*!< 0x00000010 */ -#define EXTI_RTSR_TR4 EXTI_RTSR_TR4_Msk /*!< Rising trigger event configuration bit of line 4 */ -#define EXTI_RTSR_TR5_Pos (5U) -#define EXTI_RTSR_TR5_Msk (0x1UL << EXTI_RTSR_TR5_Pos) /*!< 0x00000020 */ -#define EXTI_RTSR_TR5 EXTI_RTSR_TR5_Msk /*!< Rising trigger event configuration bit of line 5 */ -#define EXTI_RTSR_TR6_Pos (6U) -#define EXTI_RTSR_TR6_Msk (0x1UL << EXTI_RTSR_TR6_Pos) /*!< 0x00000040 */ -#define EXTI_RTSR_TR6 EXTI_RTSR_TR6_Msk /*!< Rising trigger event configuration bit of line 6 */ -#define EXTI_RTSR_TR7_Pos (7U) -#define EXTI_RTSR_TR7_Msk (0x1UL << EXTI_RTSR_TR7_Pos) /*!< 0x00000080 */ -#define EXTI_RTSR_TR7 EXTI_RTSR_TR7_Msk /*!< Rising trigger event configuration bit of line 7 */ -#define EXTI_RTSR_TR8_Pos (8U) -#define EXTI_RTSR_TR8_Msk (0x1UL << EXTI_RTSR_TR8_Pos) /*!< 0x00000100 */ -#define EXTI_RTSR_TR8 EXTI_RTSR_TR8_Msk /*!< Rising trigger event configuration bit of line 8 */ -#define EXTI_RTSR_TR9_Pos (9U) -#define EXTI_RTSR_TR9_Msk (0x1UL << EXTI_RTSR_TR9_Pos) /*!< 0x00000200 */ -#define EXTI_RTSR_TR9 EXTI_RTSR_TR9_Msk /*!< Rising trigger event configuration bit of line 9 */ -#define EXTI_RTSR_TR10_Pos (10U) -#define EXTI_RTSR_TR10_Msk (0x1UL << EXTI_RTSR_TR10_Pos) /*!< 0x00000400 */ -#define EXTI_RTSR_TR10 EXTI_RTSR_TR10_Msk /*!< Rising trigger event configuration bit of line 10 */ -#define EXTI_RTSR_TR11_Pos (11U) -#define EXTI_RTSR_TR11_Msk (0x1UL << EXTI_RTSR_TR11_Pos) /*!< 0x00000800 */ -#define EXTI_RTSR_TR11 EXTI_RTSR_TR11_Msk /*!< Rising trigger event configuration bit of line 11 */ -#define EXTI_RTSR_TR12_Pos (12U) -#define EXTI_RTSR_TR12_Msk (0x1UL << EXTI_RTSR_TR12_Pos) /*!< 0x00001000 */ -#define EXTI_RTSR_TR12 EXTI_RTSR_TR12_Msk /*!< Rising trigger event configuration bit of line 12 */ -#define EXTI_RTSR_TR13_Pos (13U) -#define EXTI_RTSR_TR13_Msk (0x1UL << EXTI_RTSR_TR13_Pos) /*!< 0x00002000 */ -#define EXTI_RTSR_TR13 EXTI_RTSR_TR13_Msk /*!< Rising trigger event configuration bit of line 13 */ -#define EXTI_RTSR_TR14_Pos (14U) -#define EXTI_RTSR_TR14_Msk (0x1UL << EXTI_RTSR_TR14_Pos) /*!< 0x00004000 */ -#define EXTI_RTSR_TR14 EXTI_RTSR_TR14_Msk /*!< Rising trigger event configuration bit of line 14 */ -#define EXTI_RTSR_TR15_Pos (15U) -#define EXTI_RTSR_TR15_Msk (0x1UL << EXTI_RTSR_TR15_Pos) /*!< 0x00008000 */ -#define EXTI_RTSR_TR15 EXTI_RTSR_TR15_Msk /*!< Rising trigger event configuration bit of line 15 */ -#define EXTI_RTSR_TR16_Pos (16U) -#define EXTI_RTSR_TR16_Msk (0x1UL << EXTI_RTSR_TR16_Pos) /*!< 0x00010000 */ -#define EXTI_RTSR_TR16 EXTI_RTSR_TR16_Msk /*!< Rising trigger event configuration bit of line 16 */ -#define EXTI_RTSR_TR17_Pos (17U) -#define EXTI_RTSR_TR17_Msk (0x1UL << EXTI_RTSR_TR17_Pos) /*!< 0x00020000 */ -#define EXTI_RTSR_TR17 EXTI_RTSR_TR17_Msk /*!< Rising trigger event configuration bit of line 17 */ -#define EXTI_RTSR_TR18_Pos (18U) -#define EXTI_RTSR_TR18_Msk (0x1UL << EXTI_RTSR_TR18_Pos) /*!< 0x00040000 */ -#define EXTI_RTSR_TR18 EXTI_RTSR_TR18_Msk /*!< Rising trigger event configuration bit of line 18 */ - -/* References Defines */ -#define EXTI_RTSR_RT0 EXTI_RTSR_TR0 -#define EXTI_RTSR_RT1 EXTI_RTSR_TR1 -#define EXTI_RTSR_RT2 EXTI_RTSR_TR2 -#define EXTI_RTSR_RT3 EXTI_RTSR_TR3 -#define EXTI_RTSR_RT4 EXTI_RTSR_TR4 -#define EXTI_RTSR_RT5 EXTI_RTSR_TR5 -#define EXTI_RTSR_RT6 EXTI_RTSR_TR6 -#define EXTI_RTSR_RT7 EXTI_RTSR_TR7 -#define EXTI_RTSR_RT8 EXTI_RTSR_TR8 -#define EXTI_RTSR_RT9 EXTI_RTSR_TR9 -#define EXTI_RTSR_RT10 EXTI_RTSR_TR10 -#define EXTI_RTSR_RT11 EXTI_RTSR_TR11 -#define EXTI_RTSR_RT12 EXTI_RTSR_TR12 -#define EXTI_RTSR_RT13 EXTI_RTSR_TR13 -#define EXTI_RTSR_RT14 EXTI_RTSR_TR14 -#define EXTI_RTSR_RT15 EXTI_RTSR_TR15 -#define EXTI_RTSR_RT16 EXTI_RTSR_TR16 -#define EXTI_RTSR_RT17 EXTI_RTSR_TR17 -#define EXTI_RTSR_RT18 EXTI_RTSR_TR18 - -/****************** Bit definition for EXTI_FTSR register *******************/ -#define EXTI_FTSR_TR0_Pos (0U) -#define EXTI_FTSR_TR0_Msk (0x1UL << EXTI_FTSR_TR0_Pos) /*!< 0x00000001 */ -#define EXTI_FTSR_TR0 EXTI_FTSR_TR0_Msk /*!< Falling trigger event configuration bit of line 0 */ -#define EXTI_FTSR_TR1_Pos (1U) -#define EXTI_FTSR_TR1_Msk (0x1UL << EXTI_FTSR_TR1_Pos) /*!< 0x00000002 */ -#define EXTI_FTSR_TR1 EXTI_FTSR_TR1_Msk /*!< Falling trigger event configuration bit of line 1 */ -#define EXTI_FTSR_TR2_Pos (2U) -#define EXTI_FTSR_TR2_Msk (0x1UL << EXTI_FTSR_TR2_Pos) /*!< 0x00000004 */ -#define EXTI_FTSR_TR2 EXTI_FTSR_TR2_Msk /*!< Falling trigger event configuration bit of line 2 */ -#define EXTI_FTSR_TR3_Pos (3U) -#define EXTI_FTSR_TR3_Msk (0x1UL << EXTI_FTSR_TR3_Pos) /*!< 0x00000008 */ -#define EXTI_FTSR_TR3 EXTI_FTSR_TR3_Msk /*!< Falling trigger event configuration bit of line 3 */ -#define EXTI_FTSR_TR4_Pos (4U) -#define EXTI_FTSR_TR4_Msk (0x1UL << EXTI_FTSR_TR4_Pos) /*!< 0x00000010 */ -#define EXTI_FTSR_TR4 EXTI_FTSR_TR4_Msk /*!< Falling trigger event configuration bit of line 4 */ -#define EXTI_FTSR_TR5_Pos (5U) -#define EXTI_FTSR_TR5_Msk (0x1UL << EXTI_FTSR_TR5_Pos) /*!< 0x00000020 */ -#define EXTI_FTSR_TR5 EXTI_FTSR_TR5_Msk /*!< Falling trigger event configuration bit of line 5 */ -#define EXTI_FTSR_TR6_Pos (6U) -#define EXTI_FTSR_TR6_Msk (0x1UL << EXTI_FTSR_TR6_Pos) /*!< 0x00000040 */ -#define EXTI_FTSR_TR6 EXTI_FTSR_TR6_Msk /*!< Falling trigger event configuration bit of line 6 */ -#define EXTI_FTSR_TR7_Pos (7U) -#define EXTI_FTSR_TR7_Msk (0x1UL << EXTI_FTSR_TR7_Pos) /*!< 0x00000080 */ -#define EXTI_FTSR_TR7 EXTI_FTSR_TR7_Msk /*!< Falling trigger event configuration bit of line 7 */ -#define EXTI_FTSR_TR8_Pos (8U) -#define EXTI_FTSR_TR8_Msk (0x1UL << EXTI_FTSR_TR8_Pos) /*!< 0x00000100 */ -#define EXTI_FTSR_TR8 EXTI_FTSR_TR8_Msk /*!< Falling trigger event configuration bit of line 8 */ -#define EXTI_FTSR_TR9_Pos (9U) -#define EXTI_FTSR_TR9_Msk (0x1UL << EXTI_FTSR_TR9_Pos) /*!< 0x00000200 */ -#define EXTI_FTSR_TR9 EXTI_FTSR_TR9_Msk /*!< Falling trigger event configuration bit of line 9 */ -#define EXTI_FTSR_TR10_Pos (10U) -#define EXTI_FTSR_TR10_Msk (0x1UL << EXTI_FTSR_TR10_Pos) /*!< 0x00000400 */ -#define EXTI_FTSR_TR10 EXTI_FTSR_TR10_Msk /*!< Falling trigger event configuration bit of line 10 */ -#define EXTI_FTSR_TR11_Pos (11U) -#define EXTI_FTSR_TR11_Msk (0x1UL << EXTI_FTSR_TR11_Pos) /*!< 0x00000800 */ -#define EXTI_FTSR_TR11 EXTI_FTSR_TR11_Msk /*!< Falling trigger event configuration bit of line 11 */ -#define EXTI_FTSR_TR12_Pos (12U) -#define EXTI_FTSR_TR12_Msk (0x1UL << EXTI_FTSR_TR12_Pos) /*!< 0x00001000 */ -#define EXTI_FTSR_TR12 EXTI_FTSR_TR12_Msk /*!< Falling trigger event configuration bit of line 12 */ -#define EXTI_FTSR_TR13_Pos (13U) -#define EXTI_FTSR_TR13_Msk (0x1UL << EXTI_FTSR_TR13_Pos) /*!< 0x00002000 */ -#define EXTI_FTSR_TR13 EXTI_FTSR_TR13_Msk /*!< Falling trigger event configuration bit of line 13 */ -#define EXTI_FTSR_TR14_Pos (14U) -#define EXTI_FTSR_TR14_Msk (0x1UL << EXTI_FTSR_TR14_Pos) /*!< 0x00004000 */ -#define EXTI_FTSR_TR14 EXTI_FTSR_TR14_Msk /*!< Falling trigger event configuration bit of line 14 */ -#define EXTI_FTSR_TR15_Pos (15U) -#define EXTI_FTSR_TR15_Msk (0x1UL << EXTI_FTSR_TR15_Pos) /*!< 0x00008000 */ -#define EXTI_FTSR_TR15 EXTI_FTSR_TR15_Msk /*!< Falling trigger event configuration bit of line 15 */ -#define EXTI_FTSR_TR16_Pos (16U) -#define EXTI_FTSR_TR16_Msk (0x1UL << EXTI_FTSR_TR16_Pos) /*!< 0x00010000 */ -#define EXTI_FTSR_TR16 EXTI_FTSR_TR16_Msk /*!< Falling trigger event configuration bit of line 16 */ -#define EXTI_FTSR_TR17_Pos (17U) -#define EXTI_FTSR_TR17_Msk (0x1UL << EXTI_FTSR_TR17_Pos) /*!< 0x00020000 */ -#define EXTI_FTSR_TR17 EXTI_FTSR_TR17_Msk /*!< Falling trigger event configuration bit of line 17 */ -#define EXTI_FTSR_TR18_Pos (18U) -#define EXTI_FTSR_TR18_Msk (0x1UL << EXTI_FTSR_TR18_Pos) /*!< 0x00040000 */ -#define EXTI_FTSR_TR18 EXTI_FTSR_TR18_Msk /*!< Falling trigger event configuration bit of line 18 */ - -/* References Defines */ -#define EXTI_FTSR_FT0 EXTI_FTSR_TR0 -#define EXTI_FTSR_FT1 EXTI_FTSR_TR1 -#define EXTI_FTSR_FT2 EXTI_FTSR_TR2 -#define EXTI_FTSR_FT3 EXTI_FTSR_TR3 -#define EXTI_FTSR_FT4 EXTI_FTSR_TR4 -#define EXTI_FTSR_FT5 EXTI_FTSR_TR5 -#define EXTI_FTSR_FT6 EXTI_FTSR_TR6 -#define EXTI_FTSR_FT7 EXTI_FTSR_TR7 -#define EXTI_FTSR_FT8 EXTI_FTSR_TR8 -#define EXTI_FTSR_FT9 EXTI_FTSR_TR9 -#define EXTI_FTSR_FT10 EXTI_FTSR_TR10 -#define EXTI_FTSR_FT11 EXTI_FTSR_TR11 -#define EXTI_FTSR_FT12 EXTI_FTSR_TR12 -#define EXTI_FTSR_FT13 EXTI_FTSR_TR13 -#define EXTI_FTSR_FT14 EXTI_FTSR_TR14 -#define EXTI_FTSR_FT15 EXTI_FTSR_TR15 -#define EXTI_FTSR_FT16 EXTI_FTSR_TR16 -#define EXTI_FTSR_FT17 EXTI_FTSR_TR17 -#define EXTI_FTSR_FT18 EXTI_FTSR_TR18 - -/****************** Bit definition for EXTI_SWIER register ******************/ -#define EXTI_SWIER_SWIER0_Pos (0U) -#define EXTI_SWIER_SWIER0_Msk (0x1UL << EXTI_SWIER_SWIER0_Pos) /*!< 0x00000001 */ -#define EXTI_SWIER_SWIER0 EXTI_SWIER_SWIER0_Msk /*!< Software Interrupt on line 0 */ -#define EXTI_SWIER_SWIER1_Pos (1U) -#define EXTI_SWIER_SWIER1_Msk (0x1UL << EXTI_SWIER_SWIER1_Pos) /*!< 0x00000002 */ -#define EXTI_SWIER_SWIER1 EXTI_SWIER_SWIER1_Msk /*!< Software Interrupt on line 1 */ -#define EXTI_SWIER_SWIER2_Pos (2U) -#define EXTI_SWIER_SWIER2_Msk (0x1UL << EXTI_SWIER_SWIER2_Pos) /*!< 0x00000004 */ -#define EXTI_SWIER_SWIER2 EXTI_SWIER_SWIER2_Msk /*!< Software Interrupt on line 2 */ -#define EXTI_SWIER_SWIER3_Pos (3U) -#define EXTI_SWIER_SWIER3_Msk (0x1UL << EXTI_SWIER_SWIER3_Pos) /*!< 0x00000008 */ -#define EXTI_SWIER_SWIER3 EXTI_SWIER_SWIER3_Msk /*!< Software Interrupt on line 3 */ -#define EXTI_SWIER_SWIER4_Pos (4U) -#define EXTI_SWIER_SWIER4_Msk (0x1UL << EXTI_SWIER_SWIER4_Pos) /*!< 0x00000010 */ -#define EXTI_SWIER_SWIER4 EXTI_SWIER_SWIER4_Msk /*!< Software Interrupt on line 4 */ -#define EXTI_SWIER_SWIER5_Pos (5U) -#define EXTI_SWIER_SWIER5_Msk (0x1UL << EXTI_SWIER_SWIER5_Pos) /*!< 0x00000020 */ -#define EXTI_SWIER_SWIER5 EXTI_SWIER_SWIER5_Msk /*!< Software Interrupt on line 5 */ -#define EXTI_SWIER_SWIER6_Pos (6U) -#define EXTI_SWIER_SWIER6_Msk (0x1UL << EXTI_SWIER_SWIER6_Pos) /*!< 0x00000040 */ -#define EXTI_SWIER_SWIER6 EXTI_SWIER_SWIER6_Msk /*!< Software Interrupt on line 6 */ -#define EXTI_SWIER_SWIER7_Pos (7U) -#define EXTI_SWIER_SWIER7_Msk (0x1UL << EXTI_SWIER_SWIER7_Pos) /*!< 0x00000080 */ -#define EXTI_SWIER_SWIER7 EXTI_SWIER_SWIER7_Msk /*!< Software Interrupt on line 7 */ -#define EXTI_SWIER_SWIER8_Pos (8U) -#define EXTI_SWIER_SWIER8_Msk (0x1UL << EXTI_SWIER_SWIER8_Pos) /*!< 0x00000100 */ -#define EXTI_SWIER_SWIER8 EXTI_SWIER_SWIER8_Msk /*!< Software Interrupt on line 8 */ -#define EXTI_SWIER_SWIER9_Pos (9U) -#define EXTI_SWIER_SWIER9_Msk (0x1UL << EXTI_SWIER_SWIER9_Pos) /*!< 0x00000200 */ -#define EXTI_SWIER_SWIER9 EXTI_SWIER_SWIER9_Msk /*!< Software Interrupt on line 9 */ -#define EXTI_SWIER_SWIER10_Pos (10U) -#define EXTI_SWIER_SWIER10_Msk (0x1UL << EXTI_SWIER_SWIER10_Pos) /*!< 0x00000400 */ -#define EXTI_SWIER_SWIER10 EXTI_SWIER_SWIER10_Msk /*!< Software Interrupt on line 10 */ -#define EXTI_SWIER_SWIER11_Pos (11U) -#define EXTI_SWIER_SWIER11_Msk (0x1UL << EXTI_SWIER_SWIER11_Pos) /*!< 0x00000800 */ -#define EXTI_SWIER_SWIER11 EXTI_SWIER_SWIER11_Msk /*!< Software Interrupt on line 11 */ -#define EXTI_SWIER_SWIER12_Pos (12U) -#define EXTI_SWIER_SWIER12_Msk (0x1UL << EXTI_SWIER_SWIER12_Pos) /*!< 0x00001000 */ -#define EXTI_SWIER_SWIER12 EXTI_SWIER_SWIER12_Msk /*!< Software Interrupt on line 12 */ -#define EXTI_SWIER_SWIER13_Pos (13U) -#define EXTI_SWIER_SWIER13_Msk (0x1UL << EXTI_SWIER_SWIER13_Pos) /*!< 0x00002000 */ -#define EXTI_SWIER_SWIER13 EXTI_SWIER_SWIER13_Msk /*!< Software Interrupt on line 13 */ -#define EXTI_SWIER_SWIER14_Pos (14U) -#define EXTI_SWIER_SWIER14_Msk (0x1UL << EXTI_SWIER_SWIER14_Pos) /*!< 0x00004000 */ -#define EXTI_SWIER_SWIER14 EXTI_SWIER_SWIER14_Msk /*!< Software Interrupt on line 14 */ -#define EXTI_SWIER_SWIER15_Pos (15U) -#define EXTI_SWIER_SWIER15_Msk (0x1UL << EXTI_SWIER_SWIER15_Pos) /*!< 0x00008000 */ -#define EXTI_SWIER_SWIER15 EXTI_SWIER_SWIER15_Msk /*!< Software Interrupt on line 15 */ -#define EXTI_SWIER_SWIER16_Pos (16U) -#define EXTI_SWIER_SWIER16_Msk (0x1UL << EXTI_SWIER_SWIER16_Pos) /*!< 0x00010000 */ -#define EXTI_SWIER_SWIER16 EXTI_SWIER_SWIER16_Msk /*!< Software Interrupt on line 16 */ -#define EXTI_SWIER_SWIER17_Pos (17U) -#define EXTI_SWIER_SWIER17_Msk (0x1UL << EXTI_SWIER_SWIER17_Pos) /*!< 0x00020000 */ -#define EXTI_SWIER_SWIER17 EXTI_SWIER_SWIER17_Msk /*!< Software Interrupt on line 17 */ -#define EXTI_SWIER_SWIER18_Pos (18U) -#define EXTI_SWIER_SWIER18_Msk (0x1UL << EXTI_SWIER_SWIER18_Pos) /*!< 0x00040000 */ -#define EXTI_SWIER_SWIER18 EXTI_SWIER_SWIER18_Msk /*!< Software Interrupt on line 18 */ - -/* References Defines */ -#define EXTI_SWIER_SWI0 EXTI_SWIER_SWIER0 -#define EXTI_SWIER_SWI1 EXTI_SWIER_SWIER1 -#define EXTI_SWIER_SWI2 EXTI_SWIER_SWIER2 -#define EXTI_SWIER_SWI3 EXTI_SWIER_SWIER3 -#define EXTI_SWIER_SWI4 EXTI_SWIER_SWIER4 -#define EXTI_SWIER_SWI5 EXTI_SWIER_SWIER5 -#define EXTI_SWIER_SWI6 EXTI_SWIER_SWIER6 -#define EXTI_SWIER_SWI7 EXTI_SWIER_SWIER7 -#define EXTI_SWIER_SWI8 EXTI_SWIER_SWIER8 -#define EXTI_SWIER_SWI9 EXTI_SWIER_SWIER9 -#define EXTI_SWIER_SWI10 EXTI_SWIER_SWIER10 -#define EXTI_SWIER_SWI11 EXTI_SWIER_SWIER11 -#define EXTI_SWIER_SWI12 EXTI_SWIER_SWIER12 -#define EXTI_SWIER_SWI13 EXTI_SWIER_SWIER13 -#define EXTI_SWIER_SWI14 EXTI_SWIER_SWIER14 -#define EXTI_SWIER_SWI15 EXTI_SWIER_SWIER15 -#define EXTI_SWIER_SWI16 EXTI_SWIER_SWIER16 -#define EXTI_SWIER_SWI17 EXTI_SWIER_SWIER17 -#define EXTI_SWIER_SWI18 EXTI_SWIER_SWIER18 - -/******************* Bit definition for EXTI_PR register ********************/ -#define EXTI_PR_PR0_Pos (0U) -#define EXTI_PR_PR0_Msk (0x1UL << EXTI_PR_PR0_Pos) /*!< 0x00000001 */ -#define EXTI_PR_PR0 EXTI_PR_PR0_Msk /*!< Pending bit for line 0 */ -#define EXTI_PR_PR1_Pos (1U) -#define EXTI_PR_PR1_Msk (0x1UL << EXTI_PR_PR1_Pos) /*!< 0x00000002 */ -#define EXTI_PR_PR1 EXTI_PR_PR1_Msk /*!< Pending bit for line 1 */ -#define EXTI_PR_PR2_Pos (2U) -#define EXTI_PR_PR2_Msk (0x1UL << EXTI_PR_PR2_Pos) /*!< 0x00000004 */ -#define EXTI_PR_PR2 EXTI_PR_PR2_Msk /*!< Pending bit for line 2 */ -#define EXTI_PR_PR3_Pos (3U) -#define EXTI_PR_PR3_Msk (0x1UL << EXTI_PR_PR3_Pos) /*!< 0x00000008 */ -#define EXTI_PR_PR3 EXTI_PR_PR3_Msk /*!< Pending bit for line 3 */ -#define EXTI_PR_PR4_Pos (4U) -#define EXTI_PR_PR4_Msk (0x1UL << EXTI_PR_PR4_Pos) /*!< 0x00000010 */ -#define EXTI_PR_PR4 EXTI_PR_PR4_Msk /*!< Pending bit for line 4 */ -#define EXTI_PR_PR5_Pos (5U) -#define EXTI_PR_PR5_Msk (0x1UL << EXTI_PR_PR5_Pos) /*!< 0x00000020 */ -#define EXTI_PR_PR5 EXTI_PR_PR5_Msk /*!< Pending bit for line 5 */ -#define EXTI_PR_PR6_Pos (6U) -#define EXTI_PR_PR6_Msk (0x1UL << EXTI_PR_PR6_Pos) /*!< 0x00000040 */ -#define EXTI_PR_PR6 EXTI_PR_PR6_Msk /*!< Pending bit for line 6 */ -#define EXTI_PR_PR7_Pos (7U) -#define EXTI_PR_PR7_Msk (0x1UL << EXTI_PR_PR7_Pos) /*!< 0x00000080 */ -#define EXTI_PR_PR7 EXTI_PR_PR7_Msk /*!< Pending bit for line 7 */ -#define EXTI_PR_PR8_Pos (8U) -#define EXTI_PR_PR8_Msk (0x1UL << EXTI_PR_PR8_Pos) /*!< 0x00000100 */ -#define EXTI_PR_PR8 EXTI_PR_PR8_Msk /*!< Pending bit for line 8 */ -#define EXTI_PR_PR9_Pos (9U) -#define EXTI_PR_PR9_Msk (0x1UL << EXTI_PR_PR9_Pos) /*!< 0x00000200 */ -#define EXTI_PR_PR9 EXTI_PR_PR9_Msk /*!< Pending bit for line 9 */ -#define EXTI_PR_PR10_Pos (10U) -#define EXTI_PR_PR10_Msk (0x1UL << EXTI_PR_PR10_Pos) /*!< 0x00000400 */ -#define EXTI_PR_PR10 EXTI_PR_PR10_Msk /*!< Pending bit for line 10 */ -#define EXTI_PR_PR11_Pos (11U) -#define EXTI_PR_PR11_Msk (0x1UL << EXTI_PR_PR11_Pos) /*!< 0x00000800 */ -#define EXTI_PR_PR11 EXTI_PR_PR11_Msk /*!< Pending bit for line 11 */ -#define EXTI_PR_PR12_Pos (12U) -#define EXTI_PR_PR12_Msk (0x1UL << EXTI_PR_PR12_Pos) /*!< 0x00001000 */ -#define EXTI_PR_PR12 EXTI_PR_PR12_Msk /*!< Pending bit for line 12 */ -#define EXTI_PR_PR13_Pos (13U) -#define EXTI_PR_PR13_Msk (0x1UL << EXTI_PR_PR13_Pos) /*!< 0x00002000 */ -#define EXTI_PR_PR13 EXTI_PR_PR13_Msk /*!< Pending bit for line 13 */ -#define EXTI_PR_PR14_Pos (14U) -#define EXTI_PR_PR14_Msk (0x1UL << EXTI_PR_PR14_Pos) /*!< 0x00004000 */ -#define EXTI_PR_PR14 EXTI_PR_PR14_Msk /*!< Pending bit for line 14 */ -#define EXTI_PR_PR15_Pos (15U) -#define EXTI_PR_PR15_Msk (0x1UL << EXTI_PR_PR15_Pos) /*!< 0x00008000 */ -#define EXTI_PR_PR15 EXTI_PR_PR15_Msk /*!< Pending bit for line 15 */ -#define EXTI_PR_PR16_Pos (16U) -#define EXTI_PR_PR16_Msk (0x1UL << EXTI_PR_PR16_Pos) /*!< 0x00010000 */ -#define EXTI_PR_PR16 EXTI_PR_PR16_Msk /*!< Pending bit for line 16 */ -#define EXTI_PR_PR17_Pos (17U) -#define EXTI_PR_PR17_Msk (0x1UL << EXTI_PR_PR17_Pos) /*!< 0x00020000 */ -#define EXTI_PR_PR17 EXTI_PR_PR17_Msk /*!< Pending bit for line 17 */ -#define EXTI_PR_PR18_Pos (18U) -#define EXTI_PR_PR18_Msk (0x1UL << EXTI_PR_PR18_Pos) /*!< 0x00040000 */ -#define EXTI_PR_PR18 EXTI_PR_PR18_Msk /*!< Pending bit for line 18 */ - -/* References Defines */ -#define EXTI_PR_PIF0 EXTI_PR_PR0 -#define EXTI_PR_PIF1 EXTI_PR_PR1 -#define EXTI_PR_PIF2 EXTI_PR_PR2 -#define EXTI_PR_PIF3 EXTI_PR_PR3 -#define EXTI_PR_PIF4 EXTI_PR_PR4 -#define EXTI_PR_PIF5 EXTI_PR_PR5 -#define EXTI_PR_PIF6 EXTI_PR_PR6 -#define EXTI_PR_PIF7 EXTI_PR_PR7 -#define EXTI_PR_PIF8 EXTI_PR_PR8 -#define EXTI_PR_PIF9 EXTI_PR_PR9 -#define EXTI_PR_PIF10 EXTI_PR_PR10 -#define EXTI_PR_PIF11 EXTI_PR_PR11 -#define EXTI_PR_PIF12 EXTI_PR_PR12 -#define EXTI_PR_PIF13 EXTI_PR_PR13 -#define EXTI_PR_PIF14 EXTI_PR_PR14 -#define EXTI_PR_PIF15 EXTI_PR_PR15 -#define EXTI_PR_PIF16 EXTI_PR_PR16 -#define EXTI_PR_PIF17 EXTI_PR_PR17 -#define EXTI_PR_PIF18 EXTI_PR_PR18 - -/******************************************************************************/ -/* */ -/* DMA Controller */ -/* */ -/******************************************************************************/ - -/******************* Bit definition for DMA_ISR register ********************/ -#define DMA_ISR_GIF1_Pos (0U) -#define DMA_ISR_GIF1_Msk (0x1UL << DMA_ISR_GIF1_Pos) /*!< 0x00000001 */ -#define DMA_ISR_GIF1 DMA_ISR_GIF1_Msk /*!< Channel 1 Global interrupt flag */ -#define DMA_ISR_TCIF1_Pos (1U) -#define DMA_ISR_TCIF1_Msk (0x1UL << DMA_ISR_TCIF1_Pos) /*!< 0x00000002 */ -#define DMA_ISR_TCIF1 DMA_ISR_TCIF1_Msk /*!< Channel 1 Transfer Complete flag */ -#define DMA_ISR_HTIF1_Pos (2U) -#define DMA_ISR_HTIF1_Msk (0x1UL << DMA_ISR_HTIF1_Pos) /*!< 0x00000004 */ -#define DMA_ISR_HTIF1 DMA_ISR_HTIF1_Msk /*!< Channel 1 Half Transfer flag */ -#define DMA_ISR_TEIF1_Pos (3U) -#define DMA_ISR_TEIF1_Msk (0x1UL << DMA_ISR_TEIF1_Pos) /*!< 0x00000008 */ -#define DMA_ISR_TEIF1 DMA_ISR_TEIF1_Msk /*!< Channel 1 Transfer Error flag */ -#define DMA_ISR_GIF2_Pos (4U) -#define DMA_ISR_GIF2_Msk (0x1UL << DMA_ISR_GIF2_Pos) /*!< 0x00000010 */ -#define DMA_ISR_GIF2 DMA_ISR_GIF2_Msk /*!< Channel 2 Global interrupt flag */ -#define DMA_ISR_TCIF2_Pos (5U) -#define DMA_ISR_TCIF2_Msk (0x1UL << DMA_ISR_TCIF2_Pos) /*!< 0x00000020 */ -#define DMA_ISR_TCIF2 DMA_ISR_TCIF2_Msk /*!< Channel 2 Transfer Complete flag */ -#define DMA_ISR_HTIF2_Pos (6U) -#define DMA_ISR_HTIF2_Msk (0x1UL << DMA_ISR_HTIF2_Pos) /*!< 0x00000040 */ -#define DMA_ISR_HTIF2 DMA_ISR_HTIF2_Msk /*!< Channel 2 Half Transfer flag */ -#define DMA_ISR_TEIF2_Pos (7U) -#define DMA_ISR_TEIF2_Msk (0x1UL << DMA_ISR_TEIF2_Pos) /*!< 0x00000080 */ -#define DMA_ISR_TEIF2 DMA_ISR_TEIF2_Msk /*!< Channel 2 Transfer Error flag */ -#define DMA_ISR_GIF3_Pos (8U) -#define DMA_ISR_GIF3_Msk (0x1UL << DMA_ISR_GIF3_Pos) /*!< 0x00000100 */ -#define DMA_ISR_GIF3 DMA_ISR_GIF3_Msk /*!< Channel 3 Global interrupt flag */ -#define DMA_ISR_TCIF3_Pos (9U) -#define DMA_ISR_TCIF3_Msk (0x1UL << DMA_ISR_TCIF3_Pos) /*!< 0x00000200 */ -#define DMA_ISR_TCIF3 DMA_ISR_TCIF3_Msk /*!< Channel 3 Transfer Complete flag */ -#define DMA_ISR_HTIF3_Pos (10U) -#define DMA_ISR_HTIF3_Msk (0x1UL << DMA_ISR_HTIF3_Pos) /*!< 0x00000400 */ -#define DMA_ISR_HTIF3 DMA_ISR_HTIF3_Msk /*!< Channel 3 Half Transfer flag */ -#define DMA_ISR_TEIF3_Pos (11U) -#define DMA_ISR_TEIF3_Msk (0x1UL << DMA_ISR_TEIF3_Pos) /*!< 0x00000800 */ -#define DMA_ISR_TEIF3 DMA_ISR_TEIF3_Msk /*!< Channel 3 Transfer Error flag */ -#define DMA_ISR_GIF4_Pos (12U) -#define DMA_ISR_GIF4_Msk (0x1UL << DMA_ISR_GIF4_Pos) /*!< 0x00001000 */ -#define DMA_ISR_GIF4 DMA_ISR_GIF4_Msk /*!< Channel 4 Global interrupt flag */ -#define DMA_ISR_TCIF4_Pos (13U) -#define DMA_ISR_TCIF4_Msk (0x1UL << DMA_ISR_TCIF4_Pos) /*!< 0x00002000 */ -#define DMA_ISR_TCIF4 DMA_ISR_TCIF4_Msk /*!< Channel 4 Transfer Complete flag */ -#define DMA_ISR_HTIF4_Pos (14U) -#define DMA_ISR_HTIF4_Msk (0x1UL << DMA_ISR_HTIF4_Pos) /*!< 0x00004000 */ -#define DMA_ISR_HTIF4 DMA_ISR_HTIF4_Msk /*!< Channel 4 Half Transfer flag */ -#define DMA_ISR_TEIF4_Pos (15U) -#define DMA_ISR_TEIF4_Msk (0x1UL << DMA_ISR_TEIF4_Pos) /*!< 0x00008000 */ -#define DMA_ISR_TEIF4 DMA_ISR_TEIF4_Msk /*!< Channel 4 Transfer Error flag */ -#define DMA_ISR_GIF5_Pos (16U) -#define DMA_ISR_GIF5_Msk (0x1UL << DMA_ISR_GIF5_Pos) /*!< 0x00010000 */ -#define DMA_ISR_GIF5 DMA_ISR_GIF5_Msk /*!< Channel 5 Global interrupt flag */ -#define DMA_ISR_TCIF5_Pos (17U) -#define DMA_ISR_TCIF5_Msk (0x1UL << DMA_ISR_TCIF5_Pos) /*!< 0x00020000 */ -#define DMA_ISR_TCIF5 DMA_ISR_TCIF5_Msk /*!< Channel 5 Transfer Complete flag */ -#define DMA_ISR_HTIF5_Pos (18U) -#define DMA_ISR_HTIF5_Msk (0x1UL << DMA_ISR_HTIF5_Pos) /*!< 0x00040000 */ -#define DMA_ISR_HTIF5 DMA_ISR_HTIF5_Msk /*!< Channel 5 Half Transfer flag */ -#define DMA_ISR_TEIF5_Pos (19U) -#define DMA_ISR_TEIF5_Msk (0x1UL << DMA_ISR_TEIF5_Pos) /*!< 0x00080000 */ -#define DMA_ISR_TEIF5 DMA_ISR_TEIF5_Msk /*!< Channel 5 Transfer Error flag */ -#define DMA_ISR_GIF6_Pos (20U) -#define DMA_ISR_GIF6_Msk (0x1UL << DMA_ISR_GIF6_Pos) /*!< 0x00100000 */ -#define DMA_ISR_GIF6 DMA_ISR_GIF6_Msk /*!< Channel 6 Global interrupt flag */ -#define DMA_ISR_TCIF6_Pos (21U) -#define DMA_ISR_TCIF6_Msk (0x1UL << DMA_ISR_TCIF6_Pos) /*!< 0x00200000 */ -#define DMA_ISR_TCIF6 DMA_ISR_TCIF6_Msk /*!< Channel 6 Transfer Complete flag */ -#define DMA_ISR_HTIF6_Pos (22U) -#define DMA_ISR_HTIF6_Msk (0x1UL << DMA_ISR_HTIF6_Pos) /*!< 0x00400000 */ -#define DMA_ISR_HTIF6 DMA_ISR_HTIF6_Msk /*!< Channel 6 Half Transfer flag */ -#define DMA_ISR_TEIF6_Pos (23U) -#define DMA_ISR_TEIF6_Msk (0x1UL << DMA_ISR_TEIF6_Pos) /*!< 0x00800000 */ -#define DMA_ISR_TEIF6 DMA_ISR_TEIF6_Msk /*!< Channel 6 Transfer Error flag */ -#define DMA_ISR_GIF7_Pos (24U) -#define DMA_ISR_GIF7_Msk (0x1UL << DMA_ISR_GIF7_Pos) /*!< 0x01000000 */ -#define DMA_ISR_GIF7 DMA_ISR_GIF7_Msk /*!< Channel 7 Global interrupt flag */ -#define DMA_ISR_TCIF7_Pos (25U) -#define DMA_ISR_TCIF7_Msk (0x1UL << DMA_ISR_TCIF7_Pos) /*!< 0x02000000 */ -#define DMA_ISR_TCIF7 DMA_ISR_TCIF7_Msk /*!< Channel 7 Transfer Complete flag */ -#define DMA_ISR_HTIF7_Pos (26U) -#define DMA_ISR_HTIF7_Msk (0x1UL << DMA_ISR_HTIF7_Pos) /*!< 0x04000000 */ -#define DMA_ISR_HTIF7 DMA_ISR_HTIF7_Msk /*!< Channel 7 Half Transfer flag */ -#define DMA_ISR_TEIF7_Pos (27U) -#define DMA_ISR_TEIF7_Msk (0x1UL << DMA_ISR_TEIF7_Pos) /*!< 0x08000000 */ -#define DMA_ISR_TEIF7 DMA_ISR_TEIF7_Msk /*!< Channel 7 Transfer Error flag */ - -/******************* Bit definition for DMA_IFCR register *******************/ -#define DMA_IFCR_CGIF1_Pos (0U) -#define DMA_IFCR_CGIF1_Msk (0x1UL << DMA_IFCR_CGIF1_Pos) /*!< 0x00000001 */ -#define DMA_IFCR_CGIF1 DMA_IFCR_CGIF1_Msk /*!< Channel 1 Global interrupt clear */ -#define DMA_IFCR_CTCIF1_Pos (1U) -#define DMA_IFCR_CTCIF1_Msk (0x1UL << DMA_IFCR_CTCIF1_Pos) /*!< 0x00000002 */ -#define DMA_IFCR_CTCIF1 DMA_IFCR_CTCIF1_Msk /*!< Channel 1 Transfer Complete clear */ -#define DMA_IFCR_CHTIF1_Pos (2U) -#define DMA_IFCR_CHTIF1_Msk (0x1UL << DMA_IFCR_CHTIF1_Pos) /*!< 0x00000004 */ -#define DMA_IFCR_CHTIF1 DMA_IFCR_CHTIF1_Msk /*!< Channel 1 Half Transfer clear */ -#define DMA_IFCR_CTEIF1_Pos (3U) -#define DMA_IFCR_CTEIF1_Msk (0x1UL << DMA_IFCR_CTEIF1_Pos) /*!< 0x00000008 */ -#define DMA_IFCR_CTEIF1 DMA_IFCR_CTEIF1_Msk /*!< Channel 1 Transfer Error clear */ -#define DMA_IFCR_CGIF2_Pos (4U) -#define DMA_IFCR_CGIF2_Msk (0x1UL << DMA_IFCR_CGIF2_Pos) /*!< 0x00000010 */ -#define DMA_IFCR_CGIF2 DMA_IFCR_CGIF2_Msk /*!< Channel 2 Global interrupt clear */ -#define DMA_IFCR_CTCIF2_Pos (5U) -#define DMA_IFCR_CTCIF2_Msk (0x1UL << DMA_IFCR_CTCIF2_Pos) /*!< 0x00000020 */ -#define DMA_IFCR_CTCIF2 DMA_IFCR_CTCIF2_Msk /*!< Channel 2 Transfer Complete clear */ -#define DMA_IFCR_CHTIF2_Pos (6U) -#define DMA_IFCR_CHTIF2_Msk (0x1UL << DMA_IFCR_CHTIF2_Pos) /*!< 0x00000040 */ -#define DMA_IFCR_CHTIF2 DMA_IFCR_CHTIF2_Msk /*!< Channel 2 Half Transfer clear */ -#define DMA_IFCR_CTEIF2_Pos (7U) -#define DMA_IFCR_CTEIF2_Msk (0x1UL << DMA_IFCR_CTEIF2_Pos) /*!< 0x00000080 */ -#define DMA_IFCR_CTEIF2 DMA_IFCR_CTEIF2_Msk /*!< Channel 2 Transfer Error clear */ -#define DMA_IFCR_CGIF3_Pos (8U) -#define DMA_IFCR_CGIF3_Msk (0x1UL << DMA_IFCR_CGIF3_Pos) /*!< 0x00000100 */ -#define DMA_IFCR_CGIF3 DMA_IFCR_CGIF3_Msk /*!< Channel 3 Global interrupt clear */ -#define DMA_IFCR_CTCIF3_Pos (9U) -#define DMA_IFCR_CTCIF3_Msk (0x1UL << DMA_IFCR_CTCIF3_Pos) /*!< 0x00000200 */ -#define DMA_IFCR_CTCIF3 DMA_IFCR_CTCIF3_Msk /*!< Channel 3 Transfer Complete clear */ -#define DMA_IFCR_CHTIF3_Pos (10U) -#define DMA_IFCR_CHTIF3_Msk (0x1UL << DMA_IFCR_CHTIF3_Pos) /*!< 0x00000400 */ -#define DMA_IFCR_CHTIF3 DMA_IFCR_CHTIF3_Msk /*!< Channel 3 Half Transfer clear */ -#define DMA_IFCR_CTEIF3_Pos (11U) -#define DMA_IFCR_CTEIF3_Msk (0x1UL << DMA_IFCR_CTEIF3_Pos) /*!< 0x00000800 */ -#define DMA_IFCR_CTEIF3 DMA_IFCR_CTEIF3_Msk /*!< Channel 3 Transfer Error clear */ -#define DMA_IFCR_CGIF4_Pos (12U) -#define DMA_IFCR_CGIF4_Msk (0x1UL << DMA_IFCR_CGIF4_Pos) /*!< 0x00001000 */ -#define DMA_IFCR_CGIF4 DMA_IFCR_CGIF4_Msk /*!< Channel 4 Global interrupt clear */ -#define DMA_IFCR_CTCIF4_Pos (13U) -#define DMA_IFCR_CTCIF4_Msk (0x1UL << DMA_IFCR_CTCIF4_Pos) /*!< 0x00002000 */ -#define DMA_IFCR_CTCIF4 DMA_IFCR_CTCIF4_Msk /*!< Channel 4 Transfer Complete clear */ -#define DMA_IFCR_CHTIF4_Pos (14U) -#define DMA_IFCR_CHTIF4_Msk (0x1UL << DMA_IFCR_CHTIF4_Pos) /*!< 0x00004000 */ -#define DMA_IFCR_CHTIF4 DMA_IFCR_CHTIF4_Msk /*!< Channel 4 Half Transfer clear */ -#define DMA_IFCR_CTEIF4_Pos (15U) -#define DMA_IFCR_CTEIF4_Msk (0x1UL << DMA_IFCR_CTEIF4_Pos) /*!< 0x00008000 */ -#define DMA_IFCR_CTEIF4 DMA_IFCR_CTEIF4_Msk /*!< Channel 4 Transfer Error clear */ -#define DMA_IFCR_CGIF5_Pos (16U) -#define DMA_IFCR_CGIF5_Msk (0x1UL << DMA_IFCR_CGIF5_Pos) /*!< 0x00010000 */ -#define DMA_IFCR_CGIF5 DMA_IFCR_CGIF5_Msk /*!< Channel 5 Global interrupt clear */ -#define DMA_IFCR_CTCIF5_Pos (17U) -#define DMA_IFCR_CTCIF5_Msk (0x1UL << DMA_IFCR_CTCIF5_Pos) /*!< 0x00020000 */ -#define DMA_IFCR_CTCIF5 DMA_IFCR_CTCIF5_Msk /*!< Channel 5 Transfer Complete clear */ -#define DMA_IFCR_CHTIF5_Pos (18U) -#define DMA_IFCR_CHTIF5_Msk (0x1UL << DMA_IFCR_CHTIF5_Pos) /*!< 0x00040000 */ -#define DMA_IFCR_CHTIF5 DMA_IFCR_CHTIF5_Msk /*!< Channel 5 Half Transfer clear */ -#define DMA_IFCR_CTEIF5_Pos (19U) -#define DMA_IFCR_CTEIF5_Msk (0x1UL << DMA_IFCR_CTEIF5_Pos) /*!< 0x00080000 */ -#define DMA_IFCR_CTEIF5 DMA_IFCR_CTEIF5_Msk /*!< Channel 5 Transfer Error clear */ -#define DMA_IFCR_CGIF6_Pos (20U) -#define DMA_IFCR_CGIF6_Msk (0x1UL << DMA_IFCR_CGIF6_Pos) /*!< 0x00100000 */ -#define DMA_IFCR_CGIF6 DMA_IFCR_CGIF6_Msk /*!< Channel 6 Global interrupt clear */ -#define DMA_IFCR_CTCIF6_Pos (21U) -#define DMA_IFCR_CTCIF6_Msk (0x1UL << DMA_IFCR_CTCIF6_Pos) /*!< 0x00200000 */ -#define DMA_IFCR_CTCIF6 DMA_IFCR_CTCIF6_Msk /*!< Channel 6 Transfer Complete clear */ -#define DMA_IFCR_CHTIF6_Pos (22U) -#define DMA_IFCR_CHTIF6_Msk (0x1UL << DMA_IFCR_CHTIF6_Pos) /*!< 0x00400000 */ -#define DMA_IFCR_CHTIF6 DMA_IFCR_CHTIF6_Msk /*!< Channel 6 Half Transfer clear */ -#define DMA_IFCR_CTEIF6_Pos (23U) -#define DMA_IFCR_CTEIF6_Msk (0x1UL << DMA_IFCR_CTEIF6_Pos) /*!< 0x00800000 */ -#define DMA_IFCR_CTEIF6 DMA_IFCR_CTEIF6_Msk /*!< Channel 6 Transfer Error clear */ -#define DMA_IFCR_CGIF7_Pos (24U) -#define DMA_IFCR_CGIF7_Msk (0x1UL << DMA_IFCR_CGIF7_Pos) /*!< 0x01000000 */ -#define DMA_IFCR_CGIF7 DMA_IFCR_CGIF7_Msk /*!< Channel 7 Global interrupt clear */ -#define DMA_IFCR_CTCIF7_Pos (25U) -#define DMA_IFCR_CTCIF7_Msk (0x1UL << DMA_IFCR_CTCIF7_Pos) /*!< 0x02000000 */ -#define DMA_IFCR_CTCIF7 DMA_IFCR_CTCIF7_Msk /*!< Channel 7 Transfer Complete clear */ -#define DMA_IFCR_CHTIF7_Pos (26U) -#define DMA_IFCR_CHTIF7_Msk (0x1UL << DMA_IFCR_CHTIF7_Pos) /*!< 0x04000000 */ -#define DMA_IFCR_CHTIF7 DMA_IFCR_CHTIF7_Msk /*!< Channel 7 Half Transfer clear */ -#define DMA_IFCR_CTEIF7_Pos (27U) -#define DMA_IFCR_CTEIF7_Msk (0x1UL << DMA_IFCR_CTEIF7_Pos) /*!< 0x08000000 */ -#define DMA_IFCR_CTEIF7 DMA_IFCR_CTEIF7_Msk /*!< Channel 7 Transfer Error clear */ - -/******************* Bit definition for DMA_CCR register *******************/ -#define DMA_CCR_EN_Pos (0U) -#define DMA_CCR_EN_Msk (0x1UL << DMA_CCR_EN_Pos) /*!< 0x00000001 */ -#define DMA_CCR_EN DMA_CCR_EN_Msk /*!< Channel enable */ -#define DMA_CCR_TCIE_Pos (1U) -#define DMA_CCR_TCIE_Msk (0x1UL << DMA_CCR_TCIE_Pos) /*!< 0x00000002 */ -#define DMA_CCR_TCIE DMA_CCR_TCIE_Msk /*!< Transfer complete interrupt enable */ -#define DMA_CCR_HTIE_Pos (2U) -#define DMA_CCR_HTIE_Msk (0x1UL << DMA_CCR_HTIE_Pos) /*!< 0x00000004 */ -#define DMA_CCR_HTIE DMA_CCR_HTIE_Msk /*!< Half Transfer interrupt enable */ -#define DMA_CCR_TEIE_Pos (3U) -#define DMA_CCR_TEIE_Msk (0x1UL << DMA_CCR_TEIE_Pos) /*!< 0x00000008 */ -#define DMA_CCR_TEIE DMA_CCR_TEIE_Msk /*!< Transfer error interrupt enable */ -#define DMA_CCR_DIR_Pos (4U) -#define DMA_CCR_DIR_Msk (0x1UL << DMA_CCR_DIR_Pos) /*!< 0x00000010 */ -#define DMA_CCR_DIR DMA_CCR_DIR_Msk /*!< Data transfer direction */ -#define DMA_CCR_CIRC_Pos (5U) -#define DMA_CCR_CIRC_Msk (0x1UL << DMA_CCR_CIRC_Pos) /*!< 0x00000020 */ -#define DMA_CCR_CIRC DMA_CCR_CIRC_Msk /*!< Circular mode */ -#define DMA_CCR_PINC_Pos (6U) -#define DMA_CCR_PINC_Msk (0x1UL << DMA_CCR_PINC_Pos) /*!< 0x00000040 */ -#define DMA_CCR_PINC DMA_CCR_PINC_Msk /*!< Peripheral increment mode */ -#define DMA_CCR_MINC_Pos (7U) -#define DMA_CCR_MINC_Msk (0x1UL << DMA_CCR_MINC_Pos) /*!< 0x00000080 */ -#define DMA_CCR_MINC DMA_CCR_MINC_Msk /*!< Memory increment mode */ - -#define DMA_CCR_PSIZE_Pos (8U) -#define DMA_CCR_PSIZE_Msk (0x3UL << DMA_CCR_PSIZE_Pos) /*!< 0x00000300 */ -#define DMA_CCR_PSIZE DMA_CCR_PSIZE_Msk /*!< PSIZE[1:0] bits (Peripheral size) */ -#define DMA_CCR_PSIZE_0 (0x1UL << DMA_CCR_PSIZE_Pos) /*!< 0x00000100 */ -#define DMA_CCR_PSIZE_1 (0x2UL << DMA_CCR_PSIZE_Pos) /*!< 0x00000200 */ - -#define DMA_CCR_MSIZE_Pos (10U) -#define DMA_CCR_MSIZE_Msk (0x3UL << DMA_CCR_MSIZE_Pos) /*!< 0x00000C00 */ -#define DMA_CCR_MSIZE DMA_CCR_MSIZE_Msk /*!< MSIZE[1:0] bits (Memory size) */ -#define DMA_CCR_MSIZE_0 (0x1UL << DMA_CCR_MSIZE_Pos) /*!< 0x00000400 */ -#define DMA_CCR_MSIZE_1 (0x2UL << DMA_CCR_MSIZE_Pos) /*!< 0x00000800 */ - -#define DMA_CCR_PL_Pos (12U) -#define DMA_CCR_PL_Msk (0x3UL << DMA_CCR_PL_Pos) /*!< 0x00003000 */ -#define DMA_CCR_PL DMA_CCR_PL_Msk /*!< PL[1:0] bits(Channel Priority level) */ -#define DMA_CCR_PL_0 (0x1UL << DMA_CCR_PL_Pos) /*!< 0x00001000 */ -#define DMA_CCR_PL_1 (0x2UL << DMA_CCR_PL_Pos) /*!< 0x00002000 */ - -#define DMA_CCR_MEM2MEM_Pos (14U) -#define DMA_CCR_MEM2MEM_Msk (0x1UL << DMA_CCR_MEM2MEM_Pos) /*!< 0x00004000 */ -#define DMA_CCR_MEM2MEM DMA_CCR_MEM2MEM_Msk /*!< Memory to memory mode */ - -/****************** Bit definition for DMA_CNDTR register ******************/ -#define DMA_CNDTR_NDT_Pos (0U) -#define DMA_CNDTR_NDT_Msk (0xFFFFUL << DMA_CNDTR_NDT_Pos) /*!< 0x0000FFFF */ -#define DMA_CNDTR_NDT DMA_CNDTR_NDT_Msk /*!< Number of data to Transfer */ - -/****************** Bit definition for DMA_CPAR register *******************/ -#define DMA_CPAR_PA_Pos (0U) -#define DMA_CPAR_PA_Msk (0xFFFFFFFFUL << DMA_CPAR_PA_Pos) /*!< 0xFFFFFFFF */ -#define DMA_CPAR_PA DMA_CPAR_PA_Msk /*!< Peripheral Address */ - -/****************** Bit definition for DMA_CMAR register *******************/ -#define DMA_CMAR_MA_Pos (0U) -#define DMA_CMAR_MA_Msk (0xFFFFFFFFUL << DMA_CMAR_MA_Pos) /*!< 0xFFFFFFFF */ -#define DMA_CMAR_MA DMA_CMAR_MA_Msk /*!< Memory Address */ - -/******************************************************************************/ -/* */ -/* Analog to Digital Converter (ADC) */ -/* */ -/******************************************************************************/ - -/* - * @brief Specific device feature definitions (not present on all devices in the STM32F1 family) - */ -#define ADC_MULTIMODE_SUPPORT /*!< ADC feature available only on specific devices: multimode available on devices with several ADC instances */ - -/******************** Bit definition for ADC_SR register ********************/ -#define ADC_SR_AWD_Pos (0U) -#define ADC_SR_AWD_Msk (0x1UL << ADC_SR_AWD_Pos) /*!< 0x00000001 */ -#define ADC_SR_AWD ADC_SR_AWD_Msk /*!< ADC analog watchdog 1 flag */ -#define ADC_SR_EOS_Pos (1U) -#define ADC_SR_EOS_Msk (0x1UL << ADC_SR_EOS_Pos) /*!< 0x00000002 */ -#define ADC_SR_EOS ADC_SR_EOS_Msk /*!< ADC group regular end of sequence conversions flag */ -#define ADC_SR_JEOS_Pos (2U) -#define ADC_SR_JEOS_Msk (0x1UL << ADC_SR_JEOS_Pos) /*!< 0x00000004 */ -#define ADC_SR_JEOS ADC_SR_JEOS_Msk /*!< ADC group injected end of sequence conversions flag */ -#define ADC_SR_JSTRT_Pos (3U) -#define ADC_SR_JSTRT_Msk (0x1UL << ADC_SR_JSTRT_Pos) /*!< 0x00000008 */ -#define ADC_SR_JSTRT ADC_SR_JSTRT_Msk /*!< ADC group injected conversion start flag */ -#define ADC_SR_STRT_Pos (4U) -#define ADC_SR_STRT_Msk (0x1UL << ADC_SR_STRT_Pos) /*!< 0x00000010 */ -#define ADC_SR_STRT ADC_SR_STRT_Msk /*!< ADC group regular conversion start flag */ - -/* Legacy defines */ -#define ADC_SR_EOC (ADC_SR_EOS) -#define ADC_SR_JEOC (ADC_SR_JEOS) - -/******************* Bit definition for ADC_CR1 register ********************/ -#define ADC_CR1_AWDCH_Pos (0U) -#define ADC_CR1_AWDCH_Msk (0x1FUL << ADC_CR1_AWDCH_Pos) /*!< 0x0000001F */ -#define ADC_CR1_AWDCH ADC_CR1_AWDCH_Msk /*!< ADC analog watchdog 1 monitored channel selection */ -#define ADC_CR1_AWDCH_0 (0x01UL << ADC_CR1_AWDCH_Pos) /*!< 0x00000001 */ -#define ADC_CR1_AWDCH_1 (0x02UL << ADC_CR1_AWDCH_Pos) /*!< 0x00000002 */ -#define ADC_CR1_AWDCH_2 (0x04UL << ADC_CR1_AWDCH_Pos) /*!< 0x00000004 */ -#define ADC_CR1_AWDCH_3 (0x08UL << ADC_CR1_AWDCH_Pos) /*!< 0x00000008 */ -#define ADC_CR1_AWDCH_4 (0x10UL << ADC_CR1_AWDCH_Pos) /*!< 0x00000010 */ - -#define ADC_CR1_EOSIE_Pos (5U) -#define ADC_CR1_EOSIE_Msk (0x1UL << ADC_CR1_EOSIE_Pos) /*!< 0x00000020 */ -#define ADC_CR1_EOSIE ADC_CR1_EOSIE_Msk /*!< ADC group regular end of sequence conversions interrupt */ -#define ADC_CR1_AWDIE_Pos (6U) -#define ADC_CR1_AWDIE_Msk (0x1UL << ADC_CR1_AWDIE_Pos) /*!< 0x00000040 */ -#define ADC_CR1_AWDIE ADC_CR1_AWDIE_Msk /*!< ADC analog watchdog 1 interrupt */ -#define ADC_CR1_JEOSIE_Pos (7U) -#define ADC_CR1_JEOSIE_Msk (0x1UL << ADC_CR1_JEOSIE_Pos) /*!< 0x00000080 */ -#define ADC_CR1_JEOSIE ADC_CR1_JEOSIE_Msk /*!< ADC group injected end of sequence conversions interrupt */ -#define ADC_CR1_SCAN_Pos (8U) -#define ADC_CR1_SCAN_Msk (0x1UL << ADC_CR1_SCAN_Pos) /*!< 0x00000100 */ -#define ADC_CR1_SCAN ADC_CR1_SCAN_Msk /*!< ADC scan mode */ -#define ADC_CR1_AWDSGL_Pos (9U) -#define ADC_CR1_AWDSGL_Msk (0x1UL << ADC_CR1_AWDSGL_Pos) /*!< 0x00000200 */ -#define ADC_CR1_AWDSGL ADC_CR1_AWDSGL_Msk /*!< ADC analog watchdog 1 monitoring a single channel or all channels */ -#define ADC_CR1_JAUTO_Pos (10U) -#define ADC_CR1_JAUTO_Msk (0x1UL << ADC_CR1_JAUTO_Pos) /*!< 0x00000400 */ -#define ADC_CR1_JAUTO ADC_CR1_JAUTO_Msk /*!< ADC group injected automatic trigger mode */ -#define ADC_CR1_DISCEN_Pos (11U) -#define ADC_CR1_DISCEN_Msk (0x1UL << ADC_CR1_DISCEN_Pos) /*!< 0x00000800 */ -#define ADC_CR1_DISCEN ADC_CR1_DISCEN_Msk /*!< ADC group regular sequencer discontinuous mode */ -#define ADC_CR1_JDISCEN_Pos (12U) -#define ADC_CR1_JDISCEN_Msk (0x1UL << ADC_CR1_JDISCEN_Pos) /*!< 0x00001000 */ -#define ADC_CR1_JDISCEN ADC_CR1_JDISCEN_Msk /*!< ADC group injected sequencer discontinuous mode */ - -#define ADC_CR1_DISCNUM_Pos (13U) -#define ADC_CR1_DISCNUM_Msk (0x7UL << ADC_CR1_DISCNUM_Pos) /*!< 0x0000E000 */ -#define ADC_CR1_DISCNUM ADC_CR1_DISCNUM_Msk /*!< ADC group regular sequencer discontinuous number of ranks */ -#define ADC_CR1_DISCNUM_0 (0x1UL << ADC_CR1_DISCNUM_Pos) /*!< 0x00002000 */ -#define ADC_CR1_DISCNUM_1 (0x2UL << ADC_CR1_DISCNUM_Pos) /*!< 0x00004000 */ -#define ADC_CR1_DISCNUM_2 (0x4UL << ADC_CR1_DISCNUM_Pos) /*!< 0x00008000 */ - -#define ADC_CR1_DUALMOD_Pos (16U) -#define ADC_CR1_DUALMOD_Msk (0xFUL << ADC_CR1_DUALMOD_Pos) /*!< 0x000F0000 */ -#define ADC_CR1_DUALMOD ADC_CR1_DUALMOD_Msk /*!< ADC multimode mode selection */ -#define ADC_CR1_DUALMOD_0 (0x1UL << ADC_CR1_DUALMOD_Pos) /*!< 0x00010000 */ -#define ADC_CR1_DUALMOD_1 (0x2UL << ADC_CR1_DUALMOD_Pos) /*!< 0x00020000 */ -#define ADC_CR1_DUALMOD_2 (0x4UL << ADC_CR1_DUALMOD_Pos) /*!< 0x00040000 */ -#define ADC_CR1_DUALMOD_3 (0x8UL << ADC_CR1_DUALMOD_Pos) /*!< 0x00080000 */ - -#define ADC_CR1_JAWDEN_Pos (22U) -#define ADC_CR1_JAWDEN_Msk (0x1UL << ADC_CR1_JAWDEN_Pos) /*!< 0x00400000 */ -#define ADC_CR1_JAWDEN ADC_CR1_JAWDEN_Msk /*!< ADC analog watchdog 1 enable on scope ADC group injected */ -#define ADC_CR1_AWDEN_Pos (23U) -#define ADC_CR1_AWDEN_Msk (0x1UL << ADC_CR1_AWDEN_Pos) /*!< 0x00800000 */ -#define ADC_CR1_AWDEN ADC_CR1_AWDEN_Msk /*!< ADC analog watchdog 1 enable on scope ADC group regular */ - -/* Legacy defines */ -#define ADC_CR1_EOCIE (ADC_CR1_EOSIE) -#define ADC_CR1_JEOCIE (ADC_CR1_JEOSIE) - -/******************* Bit definition for ADC_CR2 register ********************/ -#define ADC_CR2_ADON_Pos (0U) -#define ADC_CR2_ADON_Msk (0x1UL << ADC_CR2_ADON_Pos) /*!< 0x00000001 */ -#define ADC_CR2_ADON ADC_CR2_ADON_Msk /*!< ADC enable */ -#define ADC_CR2_CONT_Pos (1U) -#define ADC_CR2_CONT_Msk (0x1UL << ADC_CR2_CONT_Pos) /*!< 0x00000002 */ -#define ADC_CR2_CONT ADC_CR2_CONT_Msk /*!< ADC group regular continuous conversion mode */ -#define ADC_CR2_CAL_Pos (2U) -#define ADC_CR2_CAL_Msk (0x1UL << ADC_CR2_CAL_Pos) /*!< 0x00000004 */ -#define ADC_CR2_CAL ADC_CR2_CAL_Msk /*!< ADC calibration start */ -#define ADC_CR2_RSTCAL_Pos (3U) -#define ADC_CR2_RSTCAL_Msk (0x1UL << ADC_CR2_RSTCAL_Pos) /*!< 0x00000008 */ -#define ADC_CR2_RSTCAL ADC_CR2_RSTCAL_Msk /*!< ADC calibration reset */ -#define ADC_CR2_DMA_Pos (8U) -#define ADC_CR2_DMA_Msk (0x1UL << ADC_CR2_DMA_Pos) /*!< 0x00000100 */ -#define ADC_CR2_DMA ADC_CR2_DMA_Msk /*!< ADC DMA transfer enable */ -#define ADC_CR2_ALIGN_Pos (11U) -#define ADC_CR2_ALIGN_Msk (0x1UL << ADC_CR2_ALIGN_Pos) /*!< 0x00000800 */ -#define ADC_CR2_ALIGN ADC_CR2_ALIGN_Msk /*!< ADC data alignement */ - -#define ADC_CR2_JEXTSEL_Pos (12U) -#define ADC_CR2_JEXTSEL_Msk (0x7UL << ADC_CR2_JEXTSEL_Pos) /*!< 0x00007000 */ -#define ADC_CR2_JEXTSEL ADC_CR2_JEXTSEL_Msk /*!< ADC group injected external trigger source */ -#define ADC_CR2_JEXTSEL_0 (0x1UL << ADC_CR2_JEXTSEL_Pos) /*!< 0x00001000 */ -#define ADC_CR2_JEXTSEL_1 (0x2UL << ADC_CR2_JEXTSEL_Pos) /*!< 0x00002000 */ -#define ADC_CR2_JEXTSEL_2 (0x4UL << ADC_CR2_JEXTSEL_Pos) /*!< 0x00004000 */ - -#define ADC_CR2_JEXTTRIG_Pos (15U) -#define ADC_CR2_JEXTTRIG_Msk (0x1UL << ADC_CR2_JEXTTRIG_Pos) /*!< 0x00008000 */ -#define ADC_CR2_JEXTTRIG ADC_CR2_JEXTTRIG_Msk /*!< ADC group injected external trigger enable */ - -#define ADC_CR2_EXTSEL_Pos (17U) -#define ADC_CR2_EXTSEL_Msk (0x7UL << ADC_CR2_EXTSEL_Pos) /*!< 0x000E0000 */ -#define ADC_CR2_EXTSEL ADC_CR2_EXTSEL_Msk /*!< ADC group regular external trigger source */ -#define ADC_CR2_EXTSEL_0 (0x1UL << ADC_CR2_EXTSEL_Pos) /*!< 0x00020000 */ -#define ADC_CR2_EXTSEL_1 (0x2UL << ADC_CR2_EXTSEL_Pos) /*!< 0x00040000 */ -#define ADC_CR2_EXTSEL_2 (0x4UL << ADC_CR2_EXTSEL_Pos) /*!< 0x00080000 */ - -#define ADC_CR2_EXTTRIG_Pos (20U) -#define ADC_CR2_EXTTRIG_Msk (0x1UL << ADC_CR2_EXTTRIG_Pos) /*!< 0x00100000 */ -#define ADC_CR2_EXTTRIG ADC_CR2_EXTTRIG_Msk /*!< ADC group regular external trigger enable */ -#define ADC_CR2_JSWSTART_Pos (21U) -#define ADC_CR2_JSWSTART_Msk (0x1UL << ADC_CR2_JSWSTART_Pos) /*!< 0x00200000 */ -#define ADC_CR2_JSWSTART ADC_CR2_JSWSTART_Msk /*!< ADC group injected conversion start */ -#define ADC_CR2_SWSTART_Pos (22U) -#define ADC_CR2_SWSTART_Msk (0x1UL << ADC_CR2_SWSTART_Pos) /*!< 0x00400000 */ -#define ADC_CR2_SWSTART ADC_CR2_SWSTART_Msk /*!< ADC group regular conversion start */ -#define ADC_CR2_TSVREFE_Pos (23U) -#define ADC_CR2_TSVREFE_Msk (0x1UL << ADC_CR2_TSVREFE_Pos) /*!< 0x00800000 */ -#define ADC_CR2_TSVREFE ADC_CR2_TSVREFE_Msk /*!< ADC internal path to VrefInt and temperature sensor enable */ - -/****************** Bit definition for ADC_SMPR1 register *******************/ -#define ADC_SMPR1_SMP10_Pos (0U) -#define ADC_SMPR1_SMP10_Msk (0x7UL << ADC_SMPR1_SMP10_Pos) /*!< 0x00000007 */ -#define ADC_SMPR1_SMP10 ADC_SMPR1_SMP10_Msk /*!< ADC channel 10 sampling time selection */ -#define ADC_SMPR1_SMP10_0 (0x1UL << ADC_SMPR1_SMP10_Pos) /*!< 0x00000001 */ -#define ADC_SMPR1_SMP10_1 (0x2UL << ADC_SMPR1_SMP10_Pos) /*!< 0x00000002 */ -#define ADC_SMPR1_SMP10_2 (0x4UL << ADC_SMPR1_SMP10_Pos) /*!< 0x00000004 */ - -#define ADC_SMPR1_SMP11_Pos (3U) -#define ADC_SMPR1_SMP11_Msk (0x7UL << ADC_SMPR1_SMP11_Pos) /*!< 0x00000038 */ -#define ADC_SMPR1_SMP11 ADC_SMPR1_SMP11_Msk /*!< ADC channel 11 sampling time selection */ -#define ADC_SMPR1_SMP11_0 (0x1UL << ADC_SMPR1_SMP11_Pos) /*!< 0x00000008 */ -#define ADC_SMPR1_SMP11_1 (0x2UL << ADC_SMPR1_SMP11_Pos) /*!< 0x00000010 */ -#define ADC_SMPR1_SMP11_2 (0x4UL << ADC_SMPR1_SMP11_Pos) /*!< 0x00000020 */ - -#define ADC_SMPR1_SMP12_Pos (6U) -#define ADC_SMPR1_SMP12_Msk (0x7UL << ADC_SMPR1_SMP12_Pos) /*!< 0x000001C0 */ -#define ADC_SMPR1_SMP12 ADC_SMPR1_SMP12_Msk /*!< ADC channel 12 sampling time selection */ -#define ADC_SMPR1_SMP12_0 (0x1UL << ADC_SMPR1_SMP12_Pos) /*!< 0x00000040 */ -#define ADC_SMPR1_SMP12_1 (0x2UL << ADC_SMPR1_SMP12_Pos) /*!< 0x00000080 */ -#define ADC_SMPR1_SMP12_2 (0x4UL << ADC_SMPR1_SMP12_Pos) /*!< 0x00000100 */ - -#define ADC_SMPR1_SMP13_Pos (9U) -#define ADC_SMPR1_SMP13_Msk (0x7UL << ADC_SMPR1_SMP13_Pos) /*!< 0x00000E00 */ -#define ADC_SMPR1_SMP13 ADC_SMPR1_SMP13_Msk /*!< ADC channel 13 sampling time selection */ -#define ADC_SMPR1_SMP13_0 (0x1UL << ADC_SMPR1_SMP13_Pos) /*!< 0x00000200 */ -#define ADC_SMPR1_SMP13_1 (0x2UL << ADC_SMPR1_SMP13_Pos) /*!< 0x00000400 */ -#define ADC_SMPR1_SMP13_2 (0x4UL << ADC_SMPR1_SMP13_Pos) /*!< 0x00000800 */ - -#define ADC_SMPR1_SMP14_Pos (12U) -#define ADC_SMPR1_SMP14_Msk (0x7UL << ADC_SMPR1_SMP14_Pos) /*!< 0x00007000 */ -#define ADC_SMPR1_SMP14 ADC_SMPR1_SMP14_Msk /*!< ADC channel 14 sampling time selection */ -#define ADC_SMPR1_SMP14_0 (0x1UL << ADC_SMPR1_SMP14_Pos) /*!< 0x00001000 */ -#define ADC_SMPR1_SMP14_1 (0x2UL << ADC_SMPR1_SMP14_Pos) /*!< 0x00002000 */ -#define ADC_SMPR1_SMP14_2 (0x4UL << ADC_SMPR1_SMP14_Pos) /*!< 0x00004000 */ - -#define ADC_SMPR1_SMP15_Pos (15U) -#define ADC_SMPR1_SMP15_Msk (0x7UL << ADC_SMPR1_SMP15_Pos) /*!< 0x00038000 */ -#define ADC_SMPR1_SMP15 ADC_SMPR1_SMP15_Msk /*!< ADC channel 15 sampling time selection */ -#define ADC_SMPR1_SMP15_0 (0x1UL << ADC_SMPR1_SMP15_Pos) /*!< 0x00008000 */ -#define ADC_SMPR1_SMP15_1 (0x2UL << ADC_SMPR1_SMP15_Pos) /*!< 0x00010000 */ -#define ADC_SMPR1_SMP15_2 (0x4UL << ADC_SMPR1_SMP15_Pos) /*!< 0x00020000 */ - -#define ADC_SMPR1_SMP16_Pos (18U) -#define ADC_SMPR1_SMP16_Msk (0x7UL << ADC_SMPR1_SMP16_Pos) /*!< 0x001C0000 */ -#define ADC_SMPR1_SMP16 ADC_SMPR1_SMP16_Msk /*!< ADC channel 16 sampling time selection */ -#define ADC_SMPR1_SMP16_0 (0x1UL << ADC_SMPR1_SMP16_Pos) /*!< 0x00040000 */ -#define ADC_SMPR1_SMP16_1 (0x2UL << ADC_SMPR1_SMP16_Pos) /*!< 0x00080000 */ -#define ADC_SMPR1_SMP16_2 (0x4UL << ADC_SMPR1_SMP16_Pos) /*!< 0x00100000 */ - -#define ADC_SMPR1_SMP17_Pos (21U) -#define ADC_SMPR1_SMP17_Msk (0x7UL << ADC_SMPR1_SMP17_Pos) /*!< 0x00E00000 */ -#define ADC_SMPR1_SMP17 ADC_SMPR1_SMP17_Msk /*!< ADC channel 17 sampling time selection */ -#define ADC_SMPR1_SMP17_0 (0x1UL << ADC_SMPR1_SMP17_Pos) /*!< 0x00200000 */ -#define ADC_SMPR1_SMP17_1 (0x2UL << ADC_SMPR1_SMP17_Pos) /*!< 0x00400000 */ -#define ADC_SMPR1_SMP17_2 (0x4UL << ADC_SMPR1_SMP17_Pos) /*!< 0x00800000 */ - -/****************** Bit definition for ADC_SMPR2 register *******************/ -#define ADC_SMPR2_SMP0_Pos (0U) -#define ADC_SMPR2_SMP0_Msk (0x7UL << ADC_SMPR2_SMP0_Pos) /*!< 0x00000007 */ -#define ADC_SMPR2_SMP0 ADC_SMPR2_SMP0_Msk /*!< ADC channel 0 sampling time selection */ -#define ADC_SMPR2_SMP0_0 (0x1UL << ADC_SMPR2_SMP0_Pos) /*!< 0x00000001 */ -#define ADC_SMPR2_SMP0_1 (0x2UL << ADC_SMPR2_SMP0_Pos) /*!< 0x00000002 */ -#define ADC_SMPR2_SMP0_2 (0x4UL << ADC_SMPR2_SMP0_Pos) /*!< 0x00000004 */ - -#define ADC_SMPR2_SMP1_Pos (3U) -#define ADC_SMPR2_SMP1_Msk (0x7UL << ADC_SMPR2_SMP1_Pos) /*!< 0x00000038 */ -#define ADC_SMPR2_SMP1 ADC_SMPR2_SMP1_Msk /*!< ADC channel 1 sampling time selection */ -#define ADC_SMPR2_SMP1_0 (0x1UL << ADC_SMPR2_SMP1_Pos) /*!< 0x00000008 */ -#define ADC_SMPR2_SMP1_1 (0x2UL << ADC_SMPR2_SMP1_Pos) /*!< 0x00000010 */ -#define ADC_SMPR2_SMP1_2 (0x4UL << ADC_SMPR2_SMP1_Pos) /*!< 0x00000020 */ - -#define ADC_SMPR2_SMP2_Pos (6U) -#define ADC_SMPR2_SMP2_Msk (0x7UL << ADC_SMPR2_SMP2_Pos) /*!< 0x000001C0 */ -#define ADC_SMPR2_SMP2 ADC_SMPR2_SMP2_Msk /*!< ADC channel 2 sampling time selection */ -#define ADC_SMPR2_SMP2_0 (0x1UL << ADC_SMPR2_SMP2_Pos) /*!< 0x00000040 */ -#define ADC_SMPR2_SMP2_1 (0x2UL << ADC_SMPR2_SMP2_Pos) /*!< 0x00000080 */ -#define ADC_SMPR2_SMP2_2 (0x4UL << ADC_SMPR2_SMP2_Pos) /*!< 0x00000100 */ - -#define ADC_SMPR2_SMP3_Pos (9U) -#define ADC_SMPR2_SMP3_Msk (0x7UL << ADC_SMPR2_SMP3_Pos) /*!< 0x00000E00 */ -#define ADC_SMPR2_SMP3 ADC_SMPR2_SMP3_Msk /*!< ADC channel 3 sampling time selection */ -#define ADC_SMPR2_SMP3_0 (0x1UL << ADC_SMPR2_SMP3_Pos) /*!< 0x00000200 */ -#define ADC_SMPR2_SMP3_1 (0x2UL << ADC_SMPR2_SMP3_Pos) /*!< 0x00000400 */ -#define ADC_SMPR2_SMP3_2 (0x4UL << ADC_SMPR2_SMP3_Pos) /*!< 0x00000800 */ - -#define ADC_SMPR2_SMP4_Pos (12U) -#define ADC_SMPR2_SMP4_Msk (0x7UL << ADC_SMPR2_SMP4_Pos) /*!< 0x00007000 */ -#define ADC_SMPR2_SMP4 ADC_SMPR2_SMP4_Msk /*!< ADC channel 4 sampling time selection */ -#define ADC_SMPR2_SMP4_0 (0x1UL << ADC_SMPR2_SMP4_Pos) /*!< 0x00001000 */ -#define ADC_SMPR2_SMP4_1 (0x2UL << ADC_SMPR2_SMP4_Pos) /*!< 0x00002000 */ -#define ADC_SMPR2_SMP4_2 (0x4UL << ADC_SMPR2_SMP4_Pos) /*!< 0x00004000 */ - -#define ADC_SMPR2_SMP5_Pos (15U) -#define ADC_SMPR2_SMP5_Msk (0x7UL << ADC_SMPR2_SMP5_Pos) /*!< 0x00038000 */ -#define ADC_SMPR2_SMP5 ADC_SMPR2_SMP5_Msk /*!< ADC channel 5 sampling time selection */ -#define ADC_SMPR2_SMP5_0 (0x1UL << ADC_SMPR2_SMP5_Pos) /*!< 0x00008000 */ -#define ADC_SMPR2_SMP5_1 (0x2UL << ADC_SMPR2_SMP5_Pos) /*!< 0x00010000 */ -#define ADC_SMPR2_SMP5_2 (0x4UL << ADC_SMPR2_SMP5_Pos) /*!< 0x00020000 */ - -#define ADC_SMPR2_SMP6_Pos (18U) -#define ADC_SMPR2_SMP6_Msk (0x7UL << ADC_SMPR2_SMP6_Pos) /*!< 0x001C0000 */ -#define ADC_SMPR2_SMP6 ADC_SMPR2_SMP6_Msk /*!< ADC channel 6 sampling time selection */ -#define ADC_SMPR2_SMP6_0 (0x1UL << ADC_SMPR2_SMP6_Pos) /*!< 0x00040000 */ -#define ADC_SMPR2_SMP6_1 (0x2UL << ADC_SMPR2_SMP6_Pos) /*!< 0x00080000 */ -#define ADC_SMPR2_SMP6_2 (0x4UL << ADC_SMPR2_SMP6_Pos) /*!< 0x00100000 */ - -#define ADC_SMPR2_SMP7_Pos (21U) -#define ADC_SMPR2_SMP7_Msk (0x7UL << ADC_SMPR2_SMP7_Pos) /*!< 0x00E00000 */ -#define ADC_SMPR2_SMP7 ADC_SMPR2_SMP7_Msk /*!< ADC channel 7 sampling time selection */ -#define ADC_SMPR2_SMP7_0 (0x1UL << ADC_SMPR2_SMP7_Pos) /*!< 0x00200000 */ -#define ADC_SMPR2_SMP7_1 (0x2UL << ADC_SMPR2_SMP7_Pos) /*!< 0x00400000 */ -#define ADC_SMPR2_SMP7_2 (0x4UL << ADC_SMPR2_SMP7_Pos) /*!< 0x00800000 */ - -#define ADC_SMPR2_SMP8_Pos (24U) -#define ADC_SMPR2_SMP8_Msk (0x7UL << ADC_SMPR2_SMP8_Pos) /*!< 0x07000000 */ -#define ADC_SMPR2_SMP8 ADC_SMPR2_SMP8_Msk /*!< ADC channel 8 sampling time selection */ -#define ADC_SMPR2_SMP8_0 (0x1UL << ADC_SMPR2_SMP8_Pos) /*!< 0x01000000 */ -#define ADC_SMPR2_SMP8_1 (0x2UL << ADC_SMPR2_SMP8_Pos) /*!< 0x02000000 */ -#define ADC_SMPR2_SMP8_2 (0x4UL << ADC_SMPR2_SMP8_Pos) /*!< 0x04000000 */ - -#define ADC_SMPR2_SMP9_Pos (27U) -#define ADC_SMPR2_SMP9_Msk (0x7UL << ADC_SMPR2_SMP9_Pos) /*!< 0x38000000 */ -#define ADC_SMPR2_SMP9 ADC_SMPR2_SMP9_Msk /*!< ADC channel 9 sampling time selection */ -#define ADC_SMPR2_SMP9_0 (0x1UL << ADC_SMPR2_SMP9_Pos) /*!< 0x08000000 */ -#define ADC_SMPR2_SMP9_1 (0x2UL << ADC_SMPR2_SMP9_Pos) /*!< 0x10000000 */ -#define ADC_SMPR2_SMP9_2 (0x4UL << ADC_SMPR2_SMP9_Pos) /*!< 0x20000000 */ - -/****************** Bit definition for ADC_JOFR1 register *******************/ -#define ADC_JOFR1_JOFFSET1_Pos (0U) -#define ADC_JOFR1_JOFFSET1_Msk (0xFFFUL << ADC_JOFR1_JOFFSET1_Pos) /*!< 0x00000FFF */ -#define ADC_JOFR1_JOFFSET1 ADC_JOFR1_JOFFSET1_Msk /*!< ADC group injected sequencer rank 1 offset value */ - -/****************** Bit definition for ADC_JOFR2 register *******************/ -#define ADC_JOFR2_JOFFSET2_Pos (0U) -#define ADC_JOFR2_JOFFSET2_Msk (0xFFFUL << ADC_JOFR2_JOFFSET2_Pos) /*!< 0x00000FFF */ -#define ADC_JOFR2_JOFFSET2 ADC_JOFR2_JOFFSET2_Msk /*!< ADC group injected sequencer rank 2 offset value */ - -/****************** Bit definition for ADC_JOFR3 register *******************/ -#define ADC_JOFR3_JOFFSET3_Pos (0U) -#define ADC_JOFR3_JOFFSET3_Msk (0xFFFUL << ADC_JOFR3_JOFFSET3_Pos) /*!< 0x00000FFF */ -#define ADC_JOFR3_JOFFSET3 ADC_JOFR3_JOFFSET3_Msk /*!< ADC group injected sequencer rank 3 offset value */ - -/****************** Bit definition for ADC_JOFR4 register *******************/ -#define ADC_JOFR4_JOFFSET4_Pos (0U) -#define ADC_JOFR4_JOFFSET4_Msk (0xFFFUL << ADC_JOFR4_JOFFSET4_Pos) /*!< 0x00000FFF */ -#define ADC_JOFR4_JOFFSET4 ADC_JOFR4_JOFFSET4_Msk /*!< ADC group injected sequencer rank 4 offset value */ - -/******************* Bit definition for ADC_HTR register ********************/ -#define ADC_HTR_HT_Pos (0U) -#define ADC_HTR_HT_Msk (0xFFFUL << ADC_HTR_HT_Pos) /*!< 0x00000FFF */ -#define ADC_HTR_HT ADC_HTR_HT_Msk /*!< ADC analog watchdog 1 threshold high */ - -/******************* Bit definition for ADC_LTR register ********************/ -#define ADC_LTR_LT_Pos (0U) -#define ADC_LTR_LT_Msk (0xFFFUL << ADC_LTR_LT_Pos) /*!< 0x00000FFF */ -#define ADC_LTR_LT ADC_LTR_LT_Msk /*!< ADC analog watchdog 1 threshold low */ - -/******************* Bit definition for ADC_SQR1 register *******************/ -#define ADC_SQR1_SQ13_Pos (0U) -#define ADC_SQR1_SQ13_Msk (0x1FUL << ADC_SQR1_SQ13_Pos) /*!< 0x0000001F */ -#define ADC_SQR1_SQ13 ADC_SQR1_SQ13_Msk /*!< ADC group regular sequencer rank 13 */ -#define ADC_SQR1_SQ13_0 (0x01UL << ADC_SQR1_SQ13_Pos) /*!< 0x00000001 */ -#define ADC_SQR1_SQ13_1 (0x02UL << ADC_SQR1_SQ13_Pos) /*!< 0x00000002 */ -#define ADC_SQR1_SQ13_2 (0x04UL << ADC_SQR1_SQ13_Pos) /*!< 0x00000004 */ -#define ADC_SQR1_SQ13_3 (0x08UL << ADC_SQR1_SQ13_Pos) /*!< 0x00000008 */ -#define ADC_SQR1_SQ13_4 (0x10UL << ADC_SQR1_SQ13_Pos) /*!< 0x00000010 */ - -#define ADC_SQR1_SQ14_Pos (5U) -#define ADC_SQR1_SQ14_Msk (0x1FUL << ADC_SQR1_SQ14_Pos) /*!< 0x000003E0 */ -#define ADC_SQR1_SQ14 ADC_SQR1_SQ14_Msk /*!< ADC group regular sequencer rank 14 */ -#define ADC_SQR1_SQ14_0 (0x01UL << ADC_SQR1_SQ14_Pos) /*!< 0x00000020 */ -#define ADC_SQR1_SQ14_1 (0x02UL << ADC_SQR1_SQ14_Pos) /*!< 0x00000040 */ -#define ADC_SQR1_SQ14_2 (0x04UL << ADC_SQR1_SQ14_Pos) /*!< 0x00000080 */ -#define ADC_SQR1_SQ14_3 (0x08UL << ADC_SQR1_SQ14_Pos) /*!< 0x00000100 */ -#define ADC_SQR1_SQ14_4 (0x10UL << ADC_SQR1_SQ14_Pos) /*!< 0x00000200 */ - -#define ADC_SQR1_SQ15_Pos (10U) -#define ADC_SQR1_SQ15_Msk (0x1FUL << ADC_SQR1_SQ15_Pos) /*!< 0x00007C00 */ -#define ADC_SQR1_SQ15 ADC_SQR1_SQ15_Msk /*!< ADC group regular sequencer rank 15 */ -#define ADC_SQR1_SQ15_0 (0x01UL << ADC_SQR1_SQ15_Pos) /*!< 0x00000400 */ -#define ADC_SQR1_SQ15_1 (0x02UL << ADC_SQR1_SQ15_Pos) /*!< 0x00000800 */ -#define ADC_SQR1_SQ15_2 (0x04UL << ADC_SQR1_SQ15_Pos) /*!< 0x00001000 */ -#define ADC_SQR1_SQ15_3 (0x08UL << ADC_SQR1_SQ15_Pos) /*!< 0x00002000 */ -#define ADC_SQR1_SQ15_4 (0x10UL << ADC_SQR1_SQ15_Pos) /*!< 0x00004000 */ - -#define ADC_SQR1_SQ16_Pos (15U) -#define ADC_SQR1_SQ16_Msk (0x1FUL << ADC_SQR1_SQ16_Pos) /*!< 0x000F8000 */ -#define ADC_SQR1_SQ16 ADC_SQR1_SQ16_Msk /*!< ADC group regular sequencer rank 16 */ -#define ADC_SQR1_SQ16_0 (0x01UL << ADC_SQR1_SQ16_Pos) /*!< 0x00008000 */ -#define ADC_SQR1_SQ16_1 (0x02UL << ADC_SQR1_SQ16_Pos) /*!< 0x00010000 */ -#define ADC_SQR1_SQ16_2 (0x04UL << ADC_SQR1_SQ16_Pos) /*!< 0x00020000 */ -#define ADC_SQR1_SQ16_3 (0x08UL << ADC_SQR1_SQ16_Pos) /*!< 0x00040000 */ -#define ADC_SQR1_SQ16_4 (0x10UL << ADC_SQR1_SQ16_Pos) /*!< 0x00080000 */ - -#define ADC_SQR1_L_Pos (20U) -#define ADC_SQR1_L_Msk (0xFUL << ADC_SQR1_L_Pos) /*!< 0x00F00000 */ -#define ADC_SQR1_L ADC_SQR1_L_Msk /*!< ADC group regular sequencer scan length */ -#define ADC_SQR1_L_0 (0x1UL << ADC_SQR1_L_Pos) /*!< 0x00100000 */ -#define ADC_SQR1_L_1 (0x2UL << ADC_SQR1_L_Pos) /*!< 0x00200000 */ -#define ADC_SQR1_L_2 (0x4UL << ADC_SQR1_L_Pos) /*!< 0x00400000 */ -#define ADC_SQR1_L_3 (0x8UL << ADC_SQR1_L_Pos) /*!< 0x00800000 */ - -/******************* Bit definition for ADC_SQR2 register *******************/ -#define ADC_SQR2_SQ7_Pos (0U) -#define ADC_SQR2_SQ7_Msk (0x1FUL << ADC_SQR2_SQ7_Pos) /*!< 0x0000001F */ -#define ADC_SQR2_SQ7 ADC_SQR2_SQ7_Msk /*!< ADC group regular sequencer rank 7 */ -#define ADC_SQR2_SQ7_0 (0x01UL << ADC_SQR2_SQ7_Pos) /*!< 0x00000001 */ -#define ADC_SQR2_SQ7_1 (0x02UL << ADC_SQR2_SQ7_Pos) /*!< 0x00000002 */ -#define ADC_SQR2_SQ7_2 (0x04UL << ADC_SQR2_SQ7_Pos) /*!< 0x00000004 */ -#define ADC_SQR2_SQ7_3 (0x08UL << ADC_SQR2_SQ7_Pos) /*!< 0x00000008 */ -#define ADC_SQR2_SQ7_4 (0x10UL << ADC_SQR2_SQ7_Pos) /*!< 0x00000010 */ - -#define ADC_SQR2_SQ8_Pos (5U) -#define ADC_SQR2_SQ8_Msk (0x1FUL << ADC_SQR2_SQ8_Pos) /*!< 0x000003E0 */ -#define ADC_SQR2_SQ8 ADC_SQR2_SQ8_Msk /*!< ADC group regular sequencer rank 8 */ -#define ADC_SQR2_SQ8_0 (0x01UL << ADC_SQR2_SQ8_Pos) /*!< 0x00000020 */ -#define ADC_SQR2_SQ8_1 (0x02UL << ADC_SQR2_SQ8_Pos) /*!< 0x00000040 */ -#define ADC_SQR2_SQ8_2 (0x04UL << ADC_SQR2_SQ8_Pos) /*!< 0x00000080 */ -#define ADC_SQR2_SQ8_3 (0x08UL << ADC_SQR2_SQ8_Pos) /*!< 0x00000100 */ -#define ADC_SQR2_SQ8_4 (0x10UL << ADC_SQR2_SQ8_Pos) /*!< 0x00000200 */ - -#define ADC_SQR2_SQ9_Pos (10U) -#define ADC_SQR2_SQ9_Msk (0x1FUL << ADC_SQR2_SQ9_Pos) /*!< 0x00007C00 */ -#define ADC_SQR2_SQ9 ADC_SQR2_SQ9_Msk /*!< ADC group regular sequencer rank 9 */ -#define ADC_SQR2_SQ9_0 (0x01UL << ADC_SQR2_SQ9_Pos) /*!< 0x00000400 */ -#define ADC_SQR2_SQ9_1 (0x02UL << ADC_SQR2_SQ9_Pos) /*!< 0x00000800 */ -#define ADC_SQR2_SQ9_2 (0x04UL << ADC_SQR2_SQ9_Pos) /*!< 0x00001000 */ -#define ADC_SQR2_SQ9_3 (0x08UL << ADC_SQR2_SQ9_Pos) /*!< 0x00002000 */ -#define ADC_SQR2_SQ9_4 (0x10UL << ADC_SQR2_SQ9_Pos) /*!< 0x00004000 */ - -#define ADC_SQR2_SQ10_Pos (15U) -#define ADC_SQR2_SQ10_Msk (0x1FUL << ADC_SQR2_SQ10_Pos) /*!< 0x000F8000 */ -#define ADC_SQR2_SQ10 ADC_SQR2_SQ10_Msk /*!< ADC group regular sequencer rank 10 */ -#define ADC_SQR2_SQ10_0 (0x01UL << ADC_SQR2_SQ10_Pos) /*!< 0x00008000 */ -#define ADC_SQR2_SQ10_1 (0x02UL << ADC_SQR2_SQ10_Pos) /*!< 0x00010000 */ -#define ADC_SQR2_SQ10_2 (0x04UL << ADC_SQR2_SQ10_Pos) /*!< 0x00020000 */ -#define ADC_SQR2_SQ10_3 (0x08UL << ADC_SQR2_SQ10_Pos) /*!< 0x00040000 */ -#define ADC_SQR2_SQ10_4 (0x10UL << ADC_SQR2_SQ10_Pos) /*!< 0x00080000 */ - -#define ADC_SQR2_SQ11_Pos (20U) -#define ADC_SQR2_SQ11_Msk (0x1FUL << ADC_SQR2_SQ11_Pos) /*!< 0x01F00000 */ -#define ADC_SQR2_SQ11 ADC_SQR2_SQ11_Msk /*!< ADC group regular sequencer rank 1 */ -#define ADC_SQR2_SQ11_0 (0x01UL << ADC_SQR2_SQ11_Pos) /*!< 0x00100000 */ -#define ADC_SQR2_SQ11_1 (0x02UL << ADC_SQR2_SQ11_Pos) /*!< 0x00200000 */ -#define ADC_SQR2_SQ11_2 (0x04UL << ADC_SQR2_SQ11_Pos) /*!< 0x00400000 */ -#define ADC_SQR2_SQ11_3 (0x08UL << ADC_SQR2_SQ11_Pos) /*!< 0x00800000 */ -#define ADC_SQR2_SQ11_4 (0x10UL << ADC_SQR2_SQ11_Pos) /*!< 0x01000000 */ - -#define ADC_SQR2_SQ12_Pos (25U) -#define ADC_SQR2_SQ12_Msk (0x1FUL << ADC_SQR2_SQ12_Pos) /*!< 0x3E000000 */ -#define ADC_SQR2_SQ12 ADC_SQR2_SQ12_Msk /*!< ADC group regular sequencer rank 12 */ -#define ADC_SQR2_SQ12_0 (0x01UL << ADC_SQR2_SQ12_Pos) /*!< 0x02000000 */ -#define ADC_SQR2_SQ12_1 (0x02UL << ADC_SQR2_SQ12_Pos) /*!< 0x04000000 */ -#define ADC_SQR2_SQ12_2 (0x04UL << ADC_SQR2_SQ12_Pos) /*!< 0x08000000 */ -#define ADC_SQR2_SQ12_3 (0x08UL << ADC_SQR2_SQ12_Pos) /*!< 0x10000000 */ -#define ADC_SQR2_SQ12_4 (0x10UL << ADC_SQR2_SQ12_Pos) /*!< 0x20000000 */ - -/******************* Bit definition for ADC_SQR3 register *******************/ -#define ADC_SQR3_SQ1_Pos (0U) -#define ADC_SQR3_SQ1_Msk (0x1FUL << ADC_SQR3_SQ1_Pos) /*!< 0x0000001F */ -#define ADC_SQR3_SQ1 ADC_SQR3_SQ1_Msk /*!< ADC group regular sequencer rank 1 */ -#define ADC_SQR3_SQ1_0 (0x01UL << ADC_SQR3_SQ1_Pos) /*!< 0x00000001 */ -#define ADC_SQR3_SQ1_1 (0x02UL << ADC_SQR3_SQ1_Pos) /*!< 0x00000002 */ -#define ADC_SQR3_SQ1_2 (0x04UL << ADC_SQR3_SQ1_Pos) /*!< 0x00000004 */ -#define ADC_SQR3_SQ1_3 (0x08UL << ADC_SQR3_SQ1_Pos) /*!< 0x00000008 */ -#define ADC_SQR3_SQ1_4 (0x10UL << ADC_SQR3_SQ1_Pos) /*!< 0x00000010 */ - -#define ADC_SQR3_SQ2_Pos (5U) -#define ADC_SQR3_SQ2_Msk (0x1FUL << ADC_SQR3_SQ2_Pos) /*!< 0x000003E0 */ -#define ADC_SQR3_SQ2 ADC_SQR3_SQ2_Msk /*!< ADC group regular sequencer rank 2 */ -#define ADC_SQR3_SQ2_0 (0x01UL << ADC_SQR3_SQ2_Pos) /*!< 0x00000020 */ -#define ADC_SQR3_SQ2_1 (0x02UL << ADC_SQR3_SQ2_Pos) /*!< 0x00000040 */ -#define ADC_SQR3_SQ2_2 (0x04UL << ADC_SQR3_SQ2_Pos) /*!< 0x00000080 */ -#define ADC_SQR3_SQ2_3 (0x08UL << ADC_SQR3_SQ2_Pos) /*!< 0x00000100 */ -#define ADC_SQR3_SQ2_4 (0x10UL << ADC_SQR3_SQ2_Pos) /*!< 0x00000200 */ - -#define ADC_SQR3_SQ3_Pos (10U) -#define ADC_SQR3_SQ3_Msk (0x1FUL << ADC_SQR3_SQ3_Pos) /*!< 0x00007C00 */ -#define ADC_SQR3_SQ3 ADC_SQR3_SQ3_Msk /*!< ADC group regular sequencer rank 3 */ -#define ADC_SQR3_SQ3_0 (0x01UL << ADC_SQR3_SQ3_Pos) /*!< 0x00000400 */ -#define ADC_SQR3_SQ3_1 (0x02UL << ADC_SQR3_SQ3_Pos) /*!< 0x00000800 */ -#define ADC_SQR3_SQ3_2 (0x04UL << ADC_SQR3_SQ3_Pos) /*!< 0x00001000 */ -#define ADC_SQR3_SQ3_3 (0x08UL << ADC_SQR3_SQ3_Pos) /*!< 0x00002000 */ -#define ADC_SQR3_SQ3_4 (0x10UL << ADC_SQR3_SQ3_Pos) /*!< 0x00004000 */ - -#define ADC_SQR3_SQ4_Pos (15U) -#define ADC_SQR3_SQ4_Msk (0x1FUL << ADC_SQR3_SQ4_Pos) /*!< 0x000F8000 */ -#define ADC_SQR3_SQ4 ADC_SQR3_SQ4_Msk /*!< ADC group regular sequencer rank 4 */ -#define ADC_SQR3_SQ4_0 (0x01UL << ADC_SQR3_SQ4_Pos) /*!< 0x00008000 */ -#define ADC_SQR3_SQ4_1 (0x02UL << ADC_SQR3_SQ4_Pos) /*!< 0x00010000 */ -#define ADC_SQR3_SQ4_2 (0x04UL << ADC_SQR3_SQ4_Pos) /*!< 0x00020000 */ -#define ADC_SQR3_SQ4_3 (0x08UL << ADC_SQR3_SQ4_Pos) /*!< 0x00040000 */ -#define ADC_SQR3_SQ4_4 (0x10UL << ADC_SQR3_SQ4_Pos) /*!< 0x00080000 */ - -#define ADC_SQR3_SQ5_Pos (20U) -#define ADC_SQR3_SQ5_Msk (0x1FUL << ADC_SQR3_SQ5_Pos) /*!< 0x01F00000 */ -#define ADC_SQR3_SQ5 ADC_SQR3_SQ5_Msk /*!< ADC group regular sequencer rank 5 */ -#define ADC_SQR3_SQ5_0 (0x01UL << ADC_SQR3_SQ5_Pos) /*!< 0x00100000 */ -#define ADC_SQR3_SQ5_1 (0x02UL << ADC_SQR3_SQ5_Pos) /*!< 0x00200000 */ -#define ADC_SQR3_SQ5_2 (0x04UL << ADC_SQR3_SQ5_Pos) /*!< 0x00400000 */ -#define ADC_SQR3_SQ5_3 (0x08UL << ADC_SQR3_SQ5_Pos) /*!< 0x00800000 */ -#define ADC_SQR3_SQ5_4 (0x10UL << ADC_SQR3_SQ5_Pos) /*!< 0x01000000 */ - -#define ADC_SQR3_SQ6_Pos (25U) -#define ADC_SQR3_SQ6_Msk (0x1FUL << ADC_SQR3_SQ6_Pos) /*!< 0x3E000000 */ -#define ADC_SQR3_SQ6 ADC_SQR3_SQ6_Msk /*!< ADC group regular sequencer rank 6 */ -#define ADC_SQR3_SQ6_0 (0x01UL << ADC_SQR3_SQ6_Pos) /*!< 0x02000000 */ -#define ADC_SQR3_SQ6_1 (0x02UL << ADC_SQR3_SQ6_Pos) /*!< 0x04000000 */ -#define ADC_SQR3_SQ6_2 (0x04UL << ADC_SQR3_SQ6_Pos) /*!< 0x08000000 */ -#define ADC_SQR3_SQ6_3 (0x08UL << ADC_SQR3_SQ6_Pos) /*!< 0x10000000 */ -#define ADC_SQR3_SQ6_4 (0x10UL << ADC_SQR3_SQ6_Pos) /*!< 0x20000000 */ - -/******************* Bit definition for ADC_JSQR register *******************/ -#define ADC_JSQR_JSQ1_Pos (0U) -#define ADC_JSQR_JSQ1_Msk (0x1FUL << ADC_JSQR_JSQ1_Pos) /*!< 0x0000001F */ -#define ADC_JSQR_JSQ1 ADC_JSQR_JSQ1_Msk /*!< ADC group injected sequencer rank 1 */ -#define ADC_JSQR_JSQ1_0 (0x01UL << ADC_JSQR_JSQ1_Pos) /*!< 0x00000001 */ -#define ADC_JSQR_JSQ1_1 (0x02UL << ADC_JSQR_JSQ1_Pos) /*!< 0x00000002 */ -#define ADC_JSQR_JSQ1_2 (0x04UL << ADC_JSQR_JSQ1_Pos) /*!< 0x00000004 */ -#define ADC_JSQR_JSQ1_3 (0x08UL << ADC_JSQR_JSQ1_Pos) /*!< 0x00000008 */ -#define ADC_JSQR_JSQ1_4 (0x10UL << ADC_JSQR_JSQ1_Pos) /*!< 0x00000010 */ - -#define ADC_JSQR_JSQ2_Pos (5U) -#define ADC_JSQR_JSQ2_Msk (0x1FUL << ADC_JSQR_JSQ2_Pos) /*!< 0x000003E0 */ -#define ADC_JSQR_JSQ2 ADC_JSQR_JSQ2_Msk /*!< ADC group injected sequencer rank 2 */ -#define ADC_JSQR_JSQ2_0 (0x01UL << ADC_JSQR_JSQ2_Pos) /*!< 0x00000020 */ -#define ADC_JSQR_JSQ2_1 (0x02UL << ADC_JSQR_JSQ2_Pos) /*!< 0x00000040 */ -#define ADC_JSQR_JSQ2_2 (0x04UL << ADC_JSQR_JSQ2_Pos) /*!< 0x00000080 */ -#define ADC_JSQR_JSQ2_3 (0x08UL << ADC_JSQR_JSQ2_Pos) /*!< 0x00000100 */ -#define ADC_JSQR_JSQ2_4 (0x10UL << ADC_JSQR_JSQ2_Pos) /*!< 0x00000200 */ - -#define ADC_JSQR_JSQ3_Pos (10U) -#define ADC_JSQR_JSQ3_Msk (0x1FUL << ADC_JSQR_JSQ3_Pos) /*!< 0x00007C00 */ -#define ADC_JSQR_JSQ3 ADC_JSQR_JSQ3_Msk /*!< ADC group injected sequencer rank 3 */ -#define ADC_JSQR_JSQ3_0 (0x01UL << ADC_JSQR_JSQ3_Pos) /*!< 0x00000400 */ -#define ADC_JSQR_JSQ3_1 (0x02UL << ADC_JSQR_JSQ3_Pos) /*!< 0x00000800 */ -#define ADC_JSQR_JSQ3_2 (0x04UL << ADC_JSQR_JSQ3_Pos) /*!< 0x00001000 */ -#define ADC_JSQR_JSQ3_3 (0x08UL << ADC_JSQR_JSQ3_Pos) /*!< 0x00002000 */ -#define ADC_JSQR_JSQ3_4 (0x10UL << ADC_JSQR_JSQ3_Pos) /*!< 0x00004000 */ - -#define ADC_JSQR_JSQ4_Pos (15U) -#define ADC_JSQR_JSQ4_Msk (0x1FUL << ADC_JSQR_JSQ4_Pos) /*!< 0x000F8000 */ -#define ADC_JSQR_JSQ4 ADC_JSQR_JSQ4_Msk /*!< ADC group injected sequencer rank 4 */ -#define ADC_JSQR_JSQ4_0 (0x01UL << ADC_JSQR_JSQ4_Pos) /*!< 0x00008000 */ -#define ADC_JSQR_JSQ4_1 (0x02UL << ADC_JSQR_JSQ4_Pos) /*!< 0x00010000 */ -#define ADC_JSQR_JSQ4_2 (0x04UL << ADC_JSQR_JSQ4_Pos) /*!< 0x00020000 */ -#define ADC_JSQR_JSQ4_3 (0x08UL << ADC_JSQR_JSQ4_Pos) /*!< 0x00040000 */ -#define ADC_JSQR_JSQ4_4 (0x10UL << ADC_JSQR_JSQ4_Pos) /*!< 0x00080000 */ - -#define ADC_JSQR_JL_Pos (20U) -#define ADC_JSQR_JL_Msk (0x3UL << ADC_JSQR_JL_Pos) /*!< 0x00300000 */ -#define ADC_JSQR_JL ADC_JSQR_JL_Msk /*!< ADC group injected sequencer scan length */ -#define ADC_JSQR_JL_0 (0x1UL << ADC_JSQR_JL_Pos) /*!< 0x00100000 */ -#define ADC_JSQR_JL_1 (0x2UL << ADC_JSQR_JL_Pos) /*!< 0x00200000 */ - -/******************* Bit definition for ADC_JDR1 register *******************/ -#define ADC_JDR1_JDATA_Pos (0U) -#define ADC_JDR1_JDATA_Msk (0xFFFFUL << ADC_JDR1_JDATA_Pos) /*!< 0x0000FFFF */ -#define ADC_JDR1_JDATA ADC_JDR1_JDATA_Msk /*!< ADC group injected sequencer rank 1 conversion data */ - -/******************* Bit definition for ADC_JDR2 register *******************/ -#define ADC_JDR2_JDATA_Pos (0U) -#define ADC_JDR2_JDATA_Msk (0xFFFFUL << ADC_JDR2_JDATA_Pos) /*!< 0x0000FFFF */ -#define ADC_JDR2_JDATA ADC_JDR2_JDATA_Msk /*!< ADC group injected sequencer rank 2 conversion data */ - -/******************* Bit definition for ADC_JDR3 register *******************/ -#define ADC_JDR3_JDATA_Pos (0U) -#define ADC_JDR3_JDATA_Msk (0xFFFFUL << ADC_JDR3_JDATA_Pos) /*!< 0x0000FFFF */ -#define ADC_JDR3_JDATA ADC_JDR3_JDATA_Msk /*!< ADC group injected sequencer rank 3 conversion data */ - -/******************* Bit definition for ADC_JDR4 register *******************/ -#define ADC_JDR4_JDATA_Pos (0U) -#define ADC_JDR4_JDATA_Msk (0xFFFFUL << ADC_JDR4_JDATA_Pos) /*!< 0x0000FFFF */ -#define ADC_JDR4_JDATA ADC_JDR4_JDATA_Msk /*!< ADC group injected sequencer rank 4 conversion data */ - -/******************** Bit definition for ADC_DR register ********************/ -#define ADC_DR_DATA_Pos (0U) -#define ADC_DR_DATA_Msk (0xFFFFUL << ADC_DR_DATA_Pos) /*!< 0x0000FFFF */ -#define ADC_DR_DATA ADC_DR_DATA_Msk /*!< ADC group regular conversion data */ -#define ADC_DR_ADC2DATA_Pos (16U) -#define ADC_DR_ADC2DATA_Msk (0xFFFFUL << ADC_DR_ADC2DATA_Pos) /*!< 0xFFFF0000 */ -#define ADC_DR_ADC2DATA ADC_DR_ADC2DATA_Msk /*!< ADC group regular conversion data for ADC slave, in multimode */ - - -/*****************************************************************************/ -/* */ -/* Timers (TIM) */ -/* */ -/*****************************************************************************/ -/******************* Bit definition for TIM_CR1 register *******************/ -#define TIM_CR1_CEN_Pos (0U) -#define TIM_CR1_CEN_Msk (0x1UL << TIM_CR1_CEN_Pos) /*!< 0x00000001 */ -#define TIM_CR1_CEN TIM_CR1_CEN_Msk /*!
    © Copyright (c) 2017 STMicroelectronics. + * All rights reserved.
    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + + +/** @addtogroup CMSIS + * @{ + */ + +/** @addtogroup stm32f103xb + * @{ + */ + +#ifndef __STM32F103xB_H +#define __STM32F103xB_H + +#ifdef __cplusplus + extern "C" { +#endif + +/** @addtogroup Configuration_section_for_CMSIS + * @{ + */ +/** + * @brief Configuration of the Cortex-M3 Processor and Core Peripherals + */ +#define __CM3_REV 0x0200U /*!< Core Revision r2p0 */ + #define __MPU_PRESENT 0U /*!< Other STM32 devices does not provide an MPU */ +#define __NVIC_PRIO_BITS 4U /*!< STM32 uses 4 Bits for the Priority Levels */ +#define __Vendor_SysTickConfig 0U /*!< Set to 1 if different SysTick Config is used */ + +/** + * @} + */ + +/** @addtogroup Peripheral_interrupt_number_definition + * @{ + */ + +/** + * @brief STM32F10x Interrupt Number Definition, according to the selected device + * in @ref Library_configuration_section + */ + + /*!< Interrupt Number Definition */ +typedef enum +{ +/****** Cortex-M3 Processor Exceptions Numbers ***************************************************/ + NonMaskableInt_IRQn = -14, /*!< 2 Non Maskable Interrupt */ + HardFault_IRQn = -13, /*!< 3 Cortex-M3 Hard Fault Interrupt */ + MemoryManagement_IRQn = -12, /*!< 4 Cortex-M3 Memory Management Interrupt */ + BusFault_IRQn = -11, /*!< 5 Cortex-M3 Bus Fault Interrupt */ + UsageFault_IRQn = -10, /*!< 6 Cortex-M3 Usage Fault Interrupt */ + SVCall_IRQn = -5, /*!< 11 Cortex-M3 SV Call Interrupt */ + DebugMonitor_IRQn = -4, /*!< 12 Cortex-M3 Debug Monitor Interrupt */ + PendSV_IRQn = -2, /*!< 14 Cortex-M3 Pend SV Interrupt */ + SysTick_IRQn = -1, /*!< 15 Cortex-M3 System Tick Interrupt */ + +/****** STM32 specific Interrupt Numbers *********************************************************/ + WWDG_IRQn = 0, /*!< Window WatchDog Interrupt */ + PVD_IRQn = 1, /*!< PVD through EXTI Line detection Interrupt */ + TAMPER_IRQn = 2, /*!< Tamper Interrupt */ + RTC_IRQn = 3, /*!< RTC global Interrupt */ + FLASH_IRQn = 4, /*!< FLASH global Interrupt */ + RCC_IRQn = 5, /*!< RCC global Interrupt */ + EXTI0_IRQn = 6, /*!< EXTI Line0 Interrupt */ + EXTI1_IRQn = 7, /*!< EXTI Line1 Interrupt */ + EXTI2_IRQn = 8, /*!< EXTI Line2 Interrupt */ + EXTI3_IRQn = 9, /*!< EXTI Line3 Interrupt */ + EXTI4_IRQn = 10, /*!< EXTI Line4 Interrupt */ + DMA1_Channel1_IRQn = 11, /*!< DMA1 Channel 1 global Interrupt */ + DMA1_Channel2_IRQn = 12, /*!< DMA1 Channel 2 global Interrupt */ + DMA1_Channel3_IRQn = 13, /*!< DMA1 Channel 3 global Interrupt */ + DMA1_Channel4_IRQn = 14, /*!< DMA1 Channel 4 global Interrupt */ + DMA1_Channel5_IRQn = 15, /*!< DMA1 Channel 5 global Interrupt */ + DMA1_Channel6_IRQn = 16, /*!< DMA1 Channel 6 global Interrupt */ + DMA1_Channel7_IRQn = 17, /*!< DMA1 Channel 7 global Interrupt */ + ADC1_2_IRQn = 18, /*!< ADC1 and ADC2 global Interrupt */ + USB_HP_CAN1_TX_IRQn = 19, /*!< USB Device High Priority or CAN1 TX Interrupts */ + USB_LP_CAN1_RX0_IRQn = 20, /*!< USB Device Low Priority or CAN1 RX0 Interrupts */ + CAN1_RX1_IRQn = 21, /*!< CAN1 RX1 Interrupt */ + CAN1_SCE_IRQn = 22, /*!< CAN1 SCE Interrupt */ + EXTI9_5_IRQn = 23, /*!< External Line[9:5] Interrupts */ + TIM1_BRK_IRQn = 24, /*!< TIM1 Break Interrupt */ + TIM1_UP_IRQn = 25, /*!< TIM1 Update Interrupt */ + TIM1_TRG_COM_IRQn = 26, /*!< TIM1 Trigger and Commutation Interrupt */ + TIM1_CC_IRQn = 27, /*!< TIM1 Capture Compare Interrupt */ + TIM2_IRQn = 28, /*!< TIM2 global Interrupt */ + TIM3_IRQn = 29, /*!< TIM3 global Interrupt */ + TIM4_IRQn = 30, /*!< TIM4 global Interrupt */ + I2C1_EV_IRQn = 31, /*!< I2C1 Event Interrupt */ + I2C1_ER_IRQn = 32, /*!< I2C1 Error Interrupt */ + I2C2_EV_IRQn = 33, /*!< I2C2 Event Interrupt */ + I2C2_ER_IRQn = 34, /*!< I2C2 Error Interrupt */ + SPI1_IRQn = 35, /*!< SPI1 global Interrupt */ + SPI2_IRQn = 36, /*!< SPI2 global Interrupt */ + USART1_IRQn = 37, /*!< USART1 global Interrupt */ + USART2_IRQn = 38, /*!< USART2 global Interrupt */ + USART3_IRQn = 39, /*!< USART3 global Interrupt */ + EXTI15_10_IRQn = 40, /*!< External Line[15:10] Interrupts */ + RTC_Alarm_IRQn = 41, /*!< RTC Alarm through EXTI Line Interrupt */ + USBWakeUp_IRQn = 42, /*!< USB Device WakeUp from suspend through EXTI Line Interrupt */ +} IRQn_Type; + +/** + * @} + */ + +#include "core_cm3.h" +#include "system_stm32f1xx.h" +#include + +/** @addtogroup Peripheral_registers_structures + * @{ + */ + +/** + * @brief Analog to Digital Converter + */ + +typedef struct +{ + __IO uint32_t SR; + __IO uint32_t CR1; + __IO uint32_t CR2; + __IO uint32_t SMPR1; + __IO uint32_t SMPR2; + __IO uint32_t JOFR1; + __IO uint32_t JOFR2; + __IO uint32_t JOFR3; + __IO uint32_t JOFR4; + __IO uint32_t HTR; + __IO uint32_t LTR; + __IO uint32_t SQR1; + __IO uint32_t SQR2; + __IO uint32_t SQR3; + __IO uint32_t JSQR; + __IO uint32_t JDR1; + __IO uint32_t JDR2; + __IO uint32_t JDR3; + __IO uint32_t JDR4; + __IO uint32_t DR; +} ADC_TypeDef; + +typedef struct +{ + __IO uint32_t SR; /*!< ADC status register, used for ADC multimode (bits common to several ADC instances). Address offset: ADC1 base address */ + __IO uint32_t CR1; /*!< ADC control register 1, used for ADC multimode (bits common to several ADC instances). Address offset: ADC1 base address + 0x04 */ + __IO uint32_t CR2; /*!< ADC control register 2, used for ADC multimode (bits common to several ADC instances). Address offset: ADC1 base address + 0x08 */ + uint32_t RESERVED[16]; + __IO uint32_t DR; /*!< ADC data register, used for ADC multimode (bits common to several ADC instances). Address offset: ADC1 base address + 0x4C */ +} ADC_Common_TypeDef; + +/** + * @brief Backup Registers + */ + +typedef struct +{ + uint32_t RESERVED0; + __IO uint32_t DR1; + __IO uint32_t DR2; + __IO uint32_t DR3; + __IO uint32_t DR4; + __IO uint32_t DR5; + __IO uint32_t DR6; + __IO uint32_t DR7; + __IO uint32_t DR8; + __IO uint32_t DR9; + __IO uint32_t DR10; + __IO uint32_t RTCCR; + __IO uint32_t CR; + __IO uint32_t CSR; +} BKP_TypeDef; + +/** + * @brief Controller Area Network TxMailBox + */ + +typedef struct +{ + __IO uint32_t TIR; + __IO uint32_t TDTR; + __IO uint32_t TDLR; + __IO uint32_t TDHR; +} CAN_TxMailBox_TypeDef; + +/** + * @brief Controller Area Network FIFOMailBox + */ + +typedef struct +{ + __IO uint32_t RIR; + __IO uint32_t RDTR; + __IO uint32_t RDLR; + __IO uint32_t RDHR; +} CAN_FIFOMailBox_TypeDef; + +/** + * @brief Controller Area Network FilterRegister + */ + +typedef struct +{ + __IO uint32_t FR1; + __IO uint32_t FR2; +} CAN_FilterRegister_TypeDef; + +/** + * @brief Controller Area Network + */ + +typedef struct +{ + __IO uint32_t MCR; + __IO uint32_t MSR; + __IO uint32_t TSR; + __IO uint32_t RF0R; + __IO uint32_t RF1R; + __IO uint32_t IER; + __IO uint32_t ESR; + __IO uint32_t BTR; + uint32_t RESERVED0[88]; + CAN_TxMailBox_TypeDef sTxMailBox[3]; + CAN_FIFOMailBox_TypeDef sFIFOMailBox[2]; + uint32_t RESERVED1[12]; + __IO uint32_t FMR; + __IO uint32_t FM1R; + uint32_t RESERVED2; + __IO uint32_t FS1R; + uint32_t RESERVED3; + __IO uint32_t FFA1R; + uint32_t RESERVED4; + __IO uint32_t FA1R; + uint32_t RESERVED5[8]; + CAN_FilterRegister_TypeDef sFilterRegister[14]; +} CAN_TypeDef; + +/** + * @brief CRC calculation unit + */ + +typedef struct +{ + __IO uint32_t DR; /*!< CRC Data register, Address offset: 0x00 */ + __IO uint8_t IDR; /*!< CRC Independent data register, Address offset: 0x04 */ + uint8_t RESERVED0; /*!< Reserved, Address offset: 0x05 */ + uint16_t RESERVED1; /*!< Reserved, Address offset: 0x06 */ + __IO uint32_t CR; /*!< CRC Control register, Address offset: 0x08 */ +} CRC_TypeDef; + + +/** + * @brief Debug MCU + */ + +typedef struct +{ + __IO uint32_t IDCODE; + __IO uint32_t CR; +}DBGMCU_TypeDef; + +/** + * @brief DMA Controller + */ + +typedef struct +{ + __IO uint32_t CCR; + __IO uint32_t CNDTR; + __IO uint32_t CPAR; + __IO uint32_t CMAR; +} DMA_Channel_TypeDef; + +typedef struct +{ + __IO uint32_t ISR; + __IO uint32_t IFCR; +} DMA_TypeDef; + + + +/** + * @brief External Interrupt/Event Controller + */ + +typedef struct +{ + __IO uint32_t IMR; + __IO uint32_t EMR; + __IO uint32_t RTSR; + __IO uint32_t FTSR; + __IO uint32_t SWIER; + __IO uint32_t PR; +} EXTI_TypeDef; + +/** + * @brief FLASH Registers + */ + +typedef struct +{ + __IO uint32_t ACR; + __IO uint32_t KEYR; + __IO uint32_t OPTKEYR; + __IO uint32_t SR; + __IO uint32_t CR; + __IO uint32_t AR; + __IO uint32_t RESERVED; + __IO uint32_t OBR; + __IO uint32_t WRPR; +} FLASH_TypeDef; + +/** + * @brief Option Bytes Registers + */ + +typedef struct +{ + __IO uint16_t RDP; + __IO uint16_t USER; + __IO uint16_t Data0; + __IO uint16_t Data1; + __IO uint16_t WRP0; + __IO uint16_t WRP1; + __IO uint16_t WRP2; + __IO uint16_t WRP3; +} OB_TypeDef; + +/** + * @brief General Purpose I/O + */ + +typedef struct +{ + __IO uint32_t CRL; + __IO uint32_t CRH; + __IO uint32_t IDR; + __IO uint32_t ODR; + __IO uint32_t BSRR; + __IO uint32_t BRR; + __IO uint32_t LCKR; +} GPIO_TypeDef; + +/** + * @brief Alternate Function I/O + */ + +typedef struct +{ + __IO uint32_t EVCR; + __IO uint32_t MAPR; + __IO uint32_t EXTICR[4]; + uint32_t RESERVED0; + __IO uint32_t MAPR2; +} AFIO_TypeDef; +/** + * @brief Inter Integrated Circuit Interface + */ + +typedef struct +{ + __IO uint32_t CR1; + __IO uint32_t CR2; + __IO uint32_t OAR1; + __IO uint32_t OAR2; + __IO uint32_t DR; + __IO uint32_t SR1; + __IO uint32_t SR2; + __IO uint32_t CCR; + __IO uint32_t TRISE; +} I2C_TypeDef; + +/** + * @brief Independent WATCHDOG + */ + +typedef struct +{ + __IO uint32_t KR; /*!< Key register, Address offset: 0x00 */ + __IO uint32_t PR; /*!< Prescaler register, Address offset: 0x04 */ + __IO uint32_t RLR; /*!< Reload register, Address offset: 0x08 */ + __IO uint32_t SR; /*!< Status register, Address offset: 0x0C */ +} IWDG_TypeDef; + +/** + * @brief Power Control + */ + +typedef struct +{ + __IO uint32_t CR; + __IO uint32_t CSR; +} PWR_TypeDef; + +/** + * @brief Reset and Clock Control + */ + +typedef struct +{ + __IO uint32_t CR; + __IO uint32_t CFGR; + __IO uint32_t CIR; + __IO uint32_t APB2RSTR; + __IO uint32_t APB1RSTR; + __IO uint32_t AHBENR; + __IO uint32_t APB2ENR; + __IO uint32_t APB1ENR; + __IO uint32_t BDCR; + __IO uint32_t CSR; + + +} RCC_TypeDef; + +/** + * @brief Real-Time Clock + */ + +typedef struct +{ + __IO uint32_t CRH; + __IO uint32_t CRL; + __IO uint32_t PRLH; + __IO uint32_t PRLL; + __IO uint32_t DIVH; + __IO uint32_t DIVL; + __IO uint32_t CNTH; + __IO uint32_t CNTL; + __IO uint32_t ALRH; + __IO uint32_t ALRL; +} RTC_TypeDef; + +/** + * @brief Serial Peripheral Interface + */ + +typedef struct +{ + __IO uint32_t CR1; + __IO uint32_t CR2; + __IO uint32_t SR; + __IO uint32_t DR; + __IO uint32_t CRCPR; + __IO uint32_t RXCRCR; + __IO uint32_t TXCRCR; + __IO uint32_t I2SCFGR; +} SPI_TypeDef; + +/** + * @brief TIM Timers + */ +typedef struct +{ + __IO uint32_t CR1; /*!< TIM control register 1, Address offset: 0x00 */ + __IO uint32_t CR2; /*!< TIM control register 2, Address offset: 0x04 */ + __IO uint32_t SMCR; /*!< TIM slave Mode Control register, Address offset: 0x08 */ + __IO uint32_t DIER; /*!< TIM DMA/interrupt enable register, Address offset: 0x0C */ + __IO uint32_t SR; /*!< TIM status register, Address offset: 0x10 */ + __IO uint32_t EGR; /*!< TIM event generation register, Address offset: 0x14 */ + __IO uint32_t CCMR1; /*!< TIM capture/compare mode register 1, Address offset: 0x18 */ + __IO uint32_t CCMR2; /*!< TIM capture/compare mode register 2, Address offset: 0x1C */ + __IO uint32_t CCER; /*!< TIM capture/compare enable register, Address offset: 0x20 */ + __IO uint32_t CNT; /*!< TIM counter register, Address offset: 0x24 */ + __IO uint32_t PSC; /*!< TIM prescaler register, Address offset: 0x28 */ + __IO uint32_t ARR; /*!< TIM auto-reload register, Address offset: 0x2C */ + __IO uint32_t RCR; /*!< TIM repetition counter register, Address offset: 0x30 */ + __IO uint32_t CCR1; /*!< TIM capture/compare register 1, Address offset: 0x34 */ + __IO uint32_t CCR2; /*!< TIM capture/compare register 2, Address offset: 0x38 */ + __IO uint32_t CCR3; /*!< TIM capture/compare register 3, Address offset: 0x3C */ + __IO uint32_t CCR4; /*!< TIM capture/compare register 4, Address offset: 0x40 */ + __IO uint32_t BDTR; /*!< TIM break and dead-time register, Address offset: 0x44 */ + __IO uint32_t DCR; /*!< TIM DMA control register, Address offset: 0x48 */ + __IO uint32_t DMAR; /*!< TIM DMA address for full transfer register, Address offset: 0x4C */ + __IO uint32_t OR; /*!< TIM option register, Address offset: 0x50 */ +}TIM_TypeDef; + + +/** + * @brief Universal Synchronous Asynchronous Receiver Transmitter + */ + +typedef struct +{ + __IO uint32_t SR; /*!< USART Status register, Address offset: 0x00 */ + __IO uint32_t DR; /*!< USART Data register, Address offset: 0x04 */ + __IO uint32_t BRR; /*!< USART Baud rate register, Address offset: 0x08 */ + __IO uint32_t CR1; /*!< USART Control register 1, Address offset: 0x0C */ + __IO uint32_t CR2; /*!< USART Control register 2, Address offset: 0x10 */ + __IO uint32_t CR3; /*!< USART Control register 3, Address offset: 0x14 */ + __IO uint32_t GTPR; /*!< USART Guard time and prescaler register, Address offset: 0x18 */ +} USART_TypeDef; + +/** + * @brief Universal Serial Bus Full Speed Device + */ + +typedef struct +{ + __IO uint16_t EP0R; /*!< USB Endpoint 0 register, Address offset: 0x00 */ + __IO uint16_t RESERVED0; /*!< Reserved */ + __IO uint16_t EP1R; /*!< USB Endpoint 1 register, Address offset: 0x04 */ + __IO uint16_t RESERVED1; /*!< Reserved */ + __IO uint16_t EP2R; /*!< USB Endpoint 2 register, Address offset: 0x08 */ + __IO uint16_t RESERVED2; /*!< Reserved */ + __IO uint16_t EP3R; /*!< USB Endpoint 3 register, Address offset: 0x0C */ + __IO uint16_t RESERVED3; /*!< Reserved */ + __IO uint16_t EP4R; /*!< USB Endpoint 4 register, Address offset: 0x10 */ + __IO uint16_t RESERVED4; /*!< Reserved */ + __IO uint16_t EP5R; /*!< USB Endpoint 5 register, Address offset: 0x14 */ + __IO uint16_t RESERVED5; /*!< Reserved */ + __IO uint16_t EP6R; /*!< USB Endpoint 6 register, Address offset: 0x18 */ + __IO uint16_t RESERVED6; /*!< Reserved */ + __IO uint16_t EP7R; /*!< USB Endpoint 7 register, Address offset: 0x1C */ + __IO uint16_t RESERVED7[17]; /*!< Reserved */ + __IO uint16_t CNTR; /*!< Control register, Address offset: 0x40 */ + __IO uint16_t RESERVED8; /*!< Reserved */ + __IO uint16_t ISTR; /*!< Interrupt status register, Address offset: 0x44 */ + __IO uint16_t RESERVED9; /*!< Reserved */ + __IO uint16_t FNR; /*!< Frame number register, Address offset: 0x48 */ + __IO uint16_t RESERVEDA; /*!< Reserved */ + __IO uint16_t DADDR; /*!< Device address register, Address offset: 0x4C */ + __IO uint16_t RESERVEDB; /*!< Reserved */ + __IO uint16_t BTABLE; /*!< Buffer Table address register, Address offset: 0x50 */ + __IO uint16_t RESERVEDC; /*!< Reserved */ +} USB_TypeDef; + + +/** + * @brief Window WATCHDOG + */ + +typedef struct +{ + __IO uint32_t CR; /*!< WWDG Control register, Address offset: 0x00 */ + __IO uint32_t CFR; /*!< WWDG Configuration register, Address offset: 0x04 */ + __IO uint32_t SR; /*!< WWDG Status register, Address offset: 0x08 */ +} WWDG_TypeDef; + +/** + * @} + */ + +/** @addtogroup Peripheral_memory_map + * @{ + */ + + +#define FLASH_BASE 0x08000000UL /*!< FLASH base address in the alias region */ +#define FLASH_BANK1_END 0x0801FFFFUL /*!< FLASH END address of bank1 */ +#define SRAM_BASE 0x20000000UL /*!< SRAM base address in the alias region */ +#define PERIPH_BASE 0x40000000UL /*!< Peripheral base address in the alias region */ + +#define SRAM_BB_BASE 0x22000000UL /*!< SRAM base address in the bit-band region */ +#define PERIPH_BB_BASE 0x42000000UL /*!< Peripheral base address in the bit-band region */ + + +/*!< Peripheral memory map */ +#define APB1PERIPH_BASE PERIPH_BASE +#define APB2PERIPH_BASE (PERIPH_BASE + 0x00010000UL) +#define AHBPERIPH_BASE (PERIPH_BASE + 0x00020000UL) + +#define TIM2_BASE (APB1PERIPH_BASE + 0x00000000UL) +#define TIM3_BASE (APB1PERIPH_BASE + 0x00000400UL) +#define TIM4_BASE (APB1PERIPH_BASE + 0x00000800UL) +#define RTC_BASE (APB1PERIPH_BASE + 0x00002800UL) +#define WWDG_BASE (APB1PERIPH_BASE + 0x00002C00UL) +#define IWDG_BASE (APB1PERIPH_BASE + 0x00003000UL) +#define SPI2_BASE (APB1PERIPH_BASE + 0x00003800UL) +#define USART2_BASE (APB1PERIPH_BASE + 0x00004400UL) +#define USART3_BASE (APB1PERIPH_BASE + 0x00004800UL) +#define I2C1_BASE (APB1PERIPH_BASE + 0x00005400UL) +#define I2C2_BASE (APB1PERIPH_BASE + 0x00005800UL) +#define CAN1_BASE (APB1PERIPH_BASE + 0x00006400UL) +#define BKP_BASE (APB1PERIPH_BASE + 0x00006C00UL) +#define PWR_BASE (APB1PERIPH_BASE + 0x00007000UL) +#define AFIO_BASE (APB2PERIPH_BASE + 0x00000000UL) +#define EXTI_BASE (APB2PERIPH_BASE + 0x00000400UL) +#define GPIOA_BASE (APB2PERIPH_BASE + 0x00000800UL) +#define GPIOB_BASE (APB2PERIPH_BASE + 0x00000C00UL) +#define GPIOC_BASE (APB2PERIPH_BASE + 0x00001000UL) +#define GPIOD_BASE (APB2PERIPH_BASE + 0x00001400UL) +#define GPIOE_BASE (APB2PERIPH_BASE + 0x00001800UL) +#define ADC1_BASE (APB2PERIPH_BASE + 0x00002400UL) +#define ADC2_BASE (APB2PERIPH_BASE + 0x00002800UL) +#define TIM1_BASE (APB2PERIPH_BASE + 0x00002C00UL) +#define SPI1_BASE (APB2PERIPH_BASE + 0x00003000UL) +#define USART1_BASE (APB2PERIPH_BASE + 0x00003800UL) + + +#define DMA1_BASE (AHBPERIPH_BASE + 0x00000000UL) +#define DMA1_Channel1_BASE (AHBPERIPH_BASE + 0x00000008UL) +#define DMA1_Channel2_BASE (AHBPERIPH_BASE + 0x0000001CUL) +#define DMA1_Channel3_BASE (AHBPERIPH_BASE + 0x00000030UL) +#define DMA1_Channel4_BASE (AHBPERIPH_BASE + 0x00000044UL) +#define DMA1_Channel5_BASE (AHBPERIPH_BASE + 0x00000058UL) +#define DMA1_Channel6_BASE (AHBPERIPH_BASE + 0x0000006CUL) +#define DMA1_Channel7_BASE (AHBPERIPH_BASE + 0x00000080UL) +#define RCC_BASE (AHBPERIPH_BASE + 0x00001000UL) +#define CRC_BASE (AHBPERIPH_BASE + 0x00003000UL) + +#define FLASH_R_BASE (AHBPERIPH_BASE + 0x00002000UL) /*!< Flash registers base address */ +#define FLASHSIZE_BASE 0x1FFFF7E0UL /*!< FLASH Size register base address */ +#define UID_BASE 0x1FFFF7E8UL /*!< Unique device ID register base address */ +#define OB_BASE 0x1FFFF800UL /*!< Flash Option Bytes base address */ + + + +#define DBGMCU_BASE 0xE0042000UL /*!< Debug MCU registers base address */ + +/* USB device FS */ +#define USB_BASE (APB1PERIPH_BASE + 0x00005C00UL) /*!< USB_IP Peripheral Registers base address */ +#define USB_PMAADDR (APB1PERIPH_BASE + 0x00006000UL) /*!< USB_IP Packet Memory Area base address */ + + +/** + * @} + */ + +/** @addtogroup Peripheral_declaration + * @{ + */ + +#define TIM2 ((TIM_TypeDef *)TIM2_BASE) +#define TIM3 ((TIM_TypeDef *)TIM3_BASE) +#define TIM4 ((TIM_TypeDef *)TIM4_BASE) +#define RTC ((RTC_TypeDef *)RTC_BASE) +#define WWDG ((WWDG_TypeDef *)WWDG_BASE) +#define IWDG ((IWDG_TypeDef *)IWDG_BASE) +#define SPI2 ((SPI_TypeDef *)SPI2_BASE) +#define USART2 ((USART_TypeDef *)USART2_BASE) +#define USART3 ((USART_TypeDef *)USART3_BASE) +#define I2C1 ((I2C_TypeDef *)I2C1_BASE) +#define I2C2 ((I2C_TypeDef *)I2C2_BASE) +#define USB ((USB_TypeDef *)USB_BASE) +#define CAN1 ((CAN_TypeDef *)CAN1_BASE) +#define BKP ((BKP_TypeDef *)BKP_BASE) +#define PWR ((PWR_TypeDef *)PWR_BASE) +#define AFIO ((AFIO_TypeDef *)AFIO_BASE) +#define EXTI ((EXTI_TypeDef *)EXTI_BASE) +#define GPIOA ((GPIO_TypeDef *)GPIOA_BASE) +#define GPIOB ((GPIO_TypeDef *)GPIOB_BASE) +#define GPIOC ((GPIO_TypeDef *)GPIOC_BASE) +#define GPIOD ((GPIO_TypeDef *)GPIOD_BASE) +#define GPIOE ((GPIO_TypeDef *)GPIOE_BASE) +#define ADC1 ((ADC_TypeDef *)ADC1_BASE) +#define ADC2 ((ADC_TypeDef *)ADC2_BASE) +#define ADC12_COMMON ((ADC_Common_TypeDef *)ADC1_BASE) +#define TIM1 ((TIM_TypeDef *)TIM1_BASE) +#define SPI1 ((SPI_TypeDef *)SPI1_BASE) +#define USART1 ((USART_TypeDef *)USART1_BASE) +#define DMA1 ((DMA_TypeDef *)DMA1_BASE) +#define DMA1_Channel1 ((DMA_Channel_TypeDef *)DMA1_Channel1_BASE) +#define DMA1_Channel2 ((DMA_Channel_TypeDef *)DMA1_Channel2_BASE) +#define DMA1_Channel3 ((DMA_Channel_TypeDef *)DMA1_Channel3_BASE) +#define DMA1_Channel4 ((DMA_Channel_TypeDef *)DMA1_Channel4_BASE) +#define DMA1_Channel5 ((DMA_Channel_TypeDef *)DMA1_Channel5_BASE) +#define DMA1_Channel6 ((DMA_Channel_TypeDef *)DMA1_Channel6_BASE) +#define DMA1_Channel7 ((DMA_Channel_TypeDef *)DMA1_Channel7_BASE) +#define RCC ((RCC_TypeDef *)RCC_BASE) +#define CRC ((CRC_TypeDef *)CRC_BASE) +#define FLASH ((FLASH_TypeDef *)FLASH_R_BASE) +#define OB ((OB_TypeDef *)OB_BASE) +#define DBGMCU ((DBGMCU_TypeDef *)DBGMCU_BASE) + + +/** + * @} + */ + +/** @addtogroup Exported_constants + * @{ + */ + + /** @addtogroup Hardware_Constant_Definition + * @{ + */ +#define LSI_STARTUP_TIME 85U /*!< LSI Maximum startup time in us */ + /** + * @} + */ + + /** @addtogroup Peripheral_Registers_Bits_Definition + * @{ + */ + +/******************************************************************************/ +/* Peripheral Registers_Bits_Definition */ +/******************************************************************************/ + +/******************************************************************************/ +/* */ +/* CRC calculation unit (CRC) */ +/* */ +/******************************************************************************/ + +/******************* Bit definition for CRC_DR register *********************/ +#define CRC_DR_DR_Pos (0U) +#define CRC_DR_DR_Msk (0xFFFFFFFFUL << CRC_DR_DR_Pos) /*!< 0xFFFFFFFF */ +#define CRC_DR_DR CRC_DR_DR_Msk /*!< Data register bits */ + +/******************* Bit definition for CRC_IDR register ********************/ +#define CRC_IDR_IDR_Pos (0U) +#define CRC_IDR_IDR_Msk (0xFFUL << CRC_IDR_IDR_Pos) /*!< 0x000000FF */ +#define CRC_IDR_IDR CRC_IDR_IDR_Msk /*!< General-purpose 8-bit data register bits */ + +/******************** Bit definition for CRC_CR register ********************/ +#define CRC_CR_RESET_Pos (0U) +#define CRC_CR_RESET_Msk (0x1UL << CRC_CR_RESET_Pos) /*!< 0x00000001 */ +#define CRC_CR_RESET CRC_CR_RESET_Msk /*!< RESET bit */ + +/******************************************************************************/ +/* */ +/* Power Control */ +/* */ +/******************************************************************************/ + +/******************** Bit definition for PWR_CR register ********************/ +#define PWR_CR_LPDS_Pos (0U) +#define PWR_CR_LPDS_Msk (0x1UL << PWR_CR_LPDS_Pos) /*!< 0x00000001 */ +#define PWR_CR_LPDS PWR_CR_LPDS_Msk /*!< Low-Power Deepsleep */ +#define PWR_CR_PDDS_Pos (1U) +#define PWR_CR_PDDS_Msk (0x1UL << PWR_CR_PDDS_Pos) /*!< 0x00000002 */ +#define PWR_CR_PDDS PWR_CR_PDDS_Msk /*!< Power Down Deepsleep */ +#define PWR_CR_CWUF_Pos (2U) +#define PWR_CR_CWUF_Msk (0x1UL << PWR_CR_CWUF_Pos) /*!< 0x00000004 */ +#define PWR_CR_CWUF PWR_CR_CWUF_Msk /*!< Clear Wakeup Flag */ +#define PWR_CR_CSBF_Pos (3U) +#define PWR_CR_CSBF_Msk (0x1UL << PWR_CR_CSBF_Pos) /*!< 0x00000008 */ +#define PWR_CR_CSBF PWR_CR_CSBF_Msk /*!< Clear Standby Flag */ +#define PWR_CR_PVDE_Pos (4U) +#define PWR_CR_PVDE_Msk (0x1UL << PWR_CR_PVDE_Pos) /*!< 0x00000010 */ +#define PWR_CR_PVDE PWR_CR_PVDE_Msk /*!< Power Voltage Detector Enable */ + +#define PWR_CR_PLS_Pos (5U) +#define PWR_CR_PLS_Msk (0x7UL << PWR_CR_PLS_Pos) /*!< 0x000000E0 */ +#define PWR_CR_PLS PWR_CR_PLS_Msk /*!< PLS[2:0] bits (PVD Level Selection) */ +#define PWR_CR_PLS_0 (0x1UL << PWR_CR_PLS_Pos) /*!< 0x00000020 */ +#define PWR_CR_PLS_1 (0x2UL << PWR_CR_PLS_Pos) /*!< 0x00000040 */ +#define PWR_CR_PLS_2 (0x4UL << PWR_CR_PLS_Pos) /*!< 0x00000080 */ + +/*!< PVD level configuration */ +#define PWR_CR_PLS_LEV0 0x00000000U /*!< PVD level 2.2V */ +#define PWR_CR_PLS_LEV1 0x00000020U /*!< PVD level 2.3V */ +#define PWR_CR_PLS_LEV2 0x00000040U /*!< PVD level 2.4V */ +#define PWR_CR_PLS_LEV3 0x00000060U /*!< PVD level 2.5V */ +#define PWR_CR_PLS_LEV4 0x00000080U /*!< PVD level 2.6V */ +#define PWR_CR_PLS_LEV5 0x000000A0U /*!< PVD level 2.7V */ +#define PWR_CR_PLS_LEV6 0x000000C0U /*!< PVD level 2.8V */ +#define PWR_CR_PLS_LEV7 0x000000E0U /*!< PVD level 2.9V */ + +/* Legacy defines */ +#define PWR_CR_PLS_2V2 PWR_CR_PLS_LEV0 +#define PWR_CR_PLS_2V3 PWR_CR_PLS_LEV1 +#define PWR_CR_PLS_2V4 PWR_CR_PLS_LEV2 +#define PWR_CR_PLS_2V5 PWR_CR_PLS_LEV3 +#define PWR_CR_PLS_2V6 PWR_CR_PLS_LEV4 +#define PWR_CR_PLS_2V7 PWR_CR_PLS_LEV5 +#define PWR_CR_PLS_2V8 PWR_CR_PLS_LEV6 +#define PWR_CR_PLS_2V9 PWR_CR_PLS_LEV7 + +#define PWR_CR_DBP_Pos (8U) +#define PWR_CR_DBP_Msk (0x1UL << PWR_CR_DBP_Pos) /*!< 0x00000100 */ +#define PWR_CR_DBP PWR_CR_DBP_Msk /*!< Disable Backup Domain write protection */ + + +/******************* Bit definition for PWR_CSR register ********************/ +#define PWR_CSR_WUF_Pos (0U) +#define PWR_CSR_WUF_Msk (0x1UL << PWR_CSR_WUF_Pos) /*!< 0x00000001 */ +#define PWR_CSR_WUF PWR_CSR_WUF_Msk /*!< Wakeup Flag */ +#define PWR_CSR_SBF_Pos (1U) +#define PWR_CSR_SBF_Msk (0x1UL << PWR_CSR_SBF_Pos) /*!< 0x00000002 */ +#define PWR_CSR_SBF PWR_CSR_SBF_Msk /*!< Standby Flag */ +#define PWR_CSR_PVDO_Pos (2U) +#define PWR_CSR_PVDO_Msk (0x1UL << PWR_CSR_PVDO_Pos) /*!< 0x00000004 */ +#define PWR_CSR_PVDO PWR_CSR_PVDO_Msk /*!< PVD Output */ +#define PWR_CSR_EWUP_Pos (8U) +#define PWR_CSR_EWUP_Msk (0x1UL << PWR_CSR_EWUP_Pos) /*!< 0x00000100 */ +#define PWR_CSR_EWUP PWR_CSR_EWUP_Msk /*!< Enable WKUP pin */ + +/******************************************************************************/ +/* */ +/* Backup registers */ +/* */ +/******************************************************************************/ + +/******************* Bit definition for BKP_DR1 register ********************/ +#define BKP_DR1_D_Pos (0U) +#define BKP_DR1_D_Msk (0xFFFFUL << BKP_DR1_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR1_D BKP_DR1_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR2 register ********************/ +#define BKP_DR2_D_Pos (0U) +#define BKP_DR2_D_Msk (0xFFFFUL << BKP_DR2_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR2_D BKP_DR2_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR3 register ********************/ +#define BKP_DR3_D_Pos (0U) +#define BKP_DR3_D_Msk (0xFFFFUL << BKP_DR3_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR3_D BKP_DR3_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR4 register ********************/ +#define BKP_DR4_D_Pos (0U) +#define BKP_DR4_D_Msk (0xFFFFUL << BKP_DR4_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR4_D BKP_DR4_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR5 register ********************/ +#define BKP_DR5_D_Pos (0U) +#define BKP_DR5_D_Msk (0xFFFFUL << BKP_DR5_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR5_D BKP_DR5_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR6 register ********************/ +#define BKP_DR6_D_Pos (0U) +#define BKP_DR6_D_Msk (0xFFFFUL << BKP_DR6_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR6_D BKP_DR6_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR7 register ********************/ +#define BKP_DR7_D_Pos (0U) +#define BKP_DR7_D_Msk (0xFFFFUL << BKP_DR7_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR7_D BKP_DR7_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR8 register ********************/ +#define BKP_DR8_D_Pos (0U) +#define BKP_DR8_D_Msk (0xFFFFUL << BKP_DR8_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR8_D BKP_DR8_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR9 register ********************/ +#define BKP_DR9_D_Pos (0U) +#define BKP_DR9_D_Msk (0xFFFFUL << BKP_DR9_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR9_D BKP_DR9_D_Msk /*!< Backup data */ + +/******************* Bit definition for BKP_DR10 register *******************/ +#define BKP_DR10_D_Pos (0U) +#define BKP_DR10_D_Msk (0xFFFFUL << BKP_DR10_D_Pos) /*!< 0x0000FFFF */ +#define BKP_DR10_D BKP_DR10_D_Msk /*!< Backup data */ + +#define RTC_BKP_NUMBER 10 + +/****************** Bit definition for BKP_RTCCR register *******************/ +#define BKP_RTCCR_CAL_Pos (0U) +#define BKP_RTCCR_CAL_Msk (0x7FUL << BKP_RTCCR_CAL_Pos) /*!< 0x0000007F */ +#define BKP_RTCCR_CAL BKP_RTCCR_CAL_Msk /*!< Calibration value */ +#define BKP_RTCCR_CCO_Pos (7U) +#define BKP_RTCCR_CCO_Msk (0x1UL << BKP_RTCCR_CCO_Pos) /*!< 0x00000080 */ +#define BKP_RTCCR_CCO BKP_RTCCR_CCO_Msk /*!< Calibration Clock Output */ +#define BKP_RTCCR_ASOE_Pos (8U) +#define BKP_RTCCR_ASOE_Msk (0x1UL << BKP_RTCCR_ASOE_Pos) /*!< 0x00000100 */ +#define BKP_RTCCR_ASOE BKP_RTCCR_ASOE_Msk /*!< Alarm or Second Output Enable */ +#define BKP_RTCCR_ASOS_Pos (9U) +#define BKP_RTCCR_ASOS_Msk (0x1UL << BKP_RTCCR_ASOS_Pos) /*!< 0x00000200 */ +#define BKP_RTCCR_ASOS BKP_RTCCR_ASOS_Msk /*!< Alarm or Second Output Selection */ + +/******************** Bit definition for BKP_CR register ********************/ +#define BKP_CR_TPE_Pos (0U) +#define BKP_CR_TPE_Msk (0x1UL << BKP_CR_TPE_Pos) /*!< 0x00000001 */ +#define BKP_CR_TPE BKP_CR_TPE_Msk /*!< TAMPER pin enable */ +#define BKP_CR_TPAL_Pos (1U) +#define BKP_CR_TPAL_Msk (0x1UL << BKP_CR_TPAL_Pos) /*!< 0x00000002 */ +#define BKP_CR_TPAL BKP_CR_TPAL_Msk /*!< TAMPER pin active level */ + +/******************* Bit definition for BKP_CSR register ********************/ +#define BKP_CSR_CTE_Pos (0U) +#define BKP_CSR_CTE_Msk (0x1UL << BKP_CSR_CTE_Pos) /*!< 0x00000001 */ +#define BKP_CSR_CTE BKP_CSR_CTE_Msk /*!< Clear Tamper event */ +#define BKP_CSR_CTI_Pos (1U) +#define BKP_CSR_CTI_Msk (0x1UL << BKP_CSR_CTI_Pos) /*!< 0x00000002 */ +#define BKP_CSR_CTI BKP_CSR_CTI_Msk /*!< Clear Tamper Interrupt */ +#define BKP_CSR_TPIE_Pos (2U) +#define BKP_CSR_TPIE_Msk (0x1UL << BKP_CSR_TPIE_Pos) /*!< 0x00000004 */ +#define BKP_CSR_TPIE BKP_CSR_TPIE_Msk /*!< TAMPER Pin interrupt enable */ +#define BKP_CSR_TEF_Pos (8U) +#define BKP_CSR_TEF_Msk (0x1UL << BKP_CSR_TEF_Pos) /*!< 0x00000100 */ +#define BKP_CSR_TEF BKP_CSR_TEF_Msk /*!< Tamper Event Flag */ +#define BKP_CSR_TIF_Pos (9U) +#define BKP_CSR_TIF_Msk (0x1UL << BKP_CSR_TIF_Pos) /*!< 0x00000200 */ +#define BKP_CSR_TIF BKP_CSR_TIF_Msk /*!< Tamper Interrupt Flag */ + +/******************************************************************************/ +/* */ +/* Reset and Clock Control */ +/* */ +/******************************************************************************/ + +/******************** Bit definition for RCC_CR register ********************/ +#define RCC_CR_HSION_Pos (0U) +#define RCC_CR_HSION_Msk (0x1UL << RCC_CR_HSION_Pos) /*!< 0x00000001 */ +#define RCC_CR_HSION RCC_CR_HSION_Msk /*!< Internal High Speed clock enable */ +#define RCC_CR_HSIRDY_Pos (1U) +#define RCC_CR_HSIRDY_Msk (0x1UL << RCC_CR_HSIRDY_Pos) /*!< 0x00000002 */ +#define RCC_CR_HSIRDY RCC_CR_HSIRDY_Msk /*!< Internal High Speed clock ready flag */ +#define RCC_CR_HSITRIM_Pos (3U) +#define RCC_CR_HSITRIM_Msk (0x1FUL << RCC_CR_HSITRIM_Pos) /*!< 0x000000F8 */ +#define RCC_CR_HSITRIM RCC_CR_HSITRIM_Msk /*!< Internal High Speed clock trimming */ +#define RCC_CR_HSICAL_Pos (8U) +#define RCC_CR_HSICAL_Msk (0xFFUL << RCC_CR_HSICAL_Pos) /*!< 0x0000FF00 */ +#define RCC_CR_HSICAL RCC_CR_HSICAL_Msk /*!< Internal High Speed clock Calibration */ +#define RCC_CR_HSEON_Pos (16U) +#define RCC_CR_HSEON_Msk (0x1UL << RCC_CR_HSEON_Pos) /*!< 0x00010000 */ +#define RCC_CR_HSEON RCC_CR_HSEON_Msk /*!< External High Speed clock enable */ +#define RCC_CR_HSERDY_Pos (17U) +#define RCC_CR_HSERDY_Msk (0x1UL << RCC_CR_HSERDY_Pos) /*!< 0x00020000 */ +#define RCC_CR_HSERDY RCC_CR_HSERDY_Msk /*!< External High Speed clock ready flag */ +#define RCC_CR_HSEBYP_Pos (18U) +#define RCC_CR_HSEBYP_Msk (0x1UL << RCC_CR_HSEBYP_Pos) /*!< 0x00040000 */ +#define RCC_CR_HSEBYP RCC_CR_HSEBYP_Msk /*!< External High Speed clock Bypass */ +#define RCC_CR_CSSON_Pos (19U) +#define RCC_CR_CSSON_Msk (0x1UL << RCC_CR_CSSON_Pos) /*!< 0x00080000 */ +#define RCC_CR_CSSON RCC_CR_CSSON_Msk /*!< Clock Security System enable */ +#define RCC_CR_PLLON_Pos (24U) +#define RCC_CR_PLLON_Msk (0x1UL << RCC_CR_PLLON_Pos) /*!< 0x01000000 */ +#define RCC_CR_PLLON RCC_CR_PLLON_Msk /*!< PLL enable */ +#define RCC_CR_PLLRDY_Pos (25U) +#define RCC_CR_PLLRDY_Msk (0x1UL << RCC_CR_PLLRDY_Pos) /*!< 0x02000000 */ +#define RCC_CR_PLLRDY RCC_CR_PLLRDY_Msk /*!< PLL clock ready flag */ + + +/******************* Bit definition for RCC_CFGR register *******************/ +/*!< SW configuration */ +#define RCC_CFGR_SW_Pos (0U) +#define RCC_CFGR_SW_Msk (0x3UL << RCC_CFGR_SW_Pos) /*!< 0x00000003 */ +#define RCC_CFGR_SW RCC_CFGR_SW_Msk /*!< SW[1:0] bits (System clock Switch) */ +#define RCC_CFGR_SW_0 (0x1UL << RCC_CFGR_SW_Pos) /*!< 0x00000001 */ +#define RCC_CFGR_SW_1 (0x2UL << RCC_CFGR_SW_Pos) /*!< 0x00000002 */ + +#define RCC_CFGR_SW_HSI 0x00000000U /*!< HSI selected as system clock */ +#define RCC_CFGR_SW_HSE 0x00000001U /*!< HSE selected as system clock */ +#define RCC_CFGR_SW_PLL 0x00000002U /*!< PLL selected as system clock */ + +/*!< SWS configuration */ +#define RCC_CFGR_SWS_Pos (2U) +#define RCC_CFGR_SWS_Msk (0x3UL << RCC_CFGR_SWS_Pos) /*!< 0x0000000C */ +#define RCC_CFGR_SWS RCC_CFGR_SWS_Msk /*!< SWS[1:0] bits (System Clock Switch Status) */ +#define RCC_CFGR_SWS_0 (0x1UL << RCC_CFGR_SWS_Pos) /*!< 0x00000004 */ +#define RCC_CFGR_SWS_1 (0x2UL << RCC_CFGR_SWS_Pos) /*!< 0x00000008 */ + +#define RCC_CFGR_SWS_HSI 0x00000000U /*!< HSI oscillator used as system clock */ +#define RCC_CFGR_SWS_HSE 0x00000004U /*!< HSE oscillator used as system clock */ +#define RCC_CFGR_SWS_PLL 0x00000008U /*!< PLL used as system clock */ + +/*!< HPRE configuration */ +#define RCC_CFGR_HPRE_Pos (4U) +#define RCC_CFGR_HPRE_Msk (0xFUL << RCC_CFGR_HPRE_Pos) /*!< 0x000000F0 */ +#define RCC_CFGR_HPRE RCC_CFGR_HPRE_Msk /*!< HPRE[3:0] bits (AHB prescaler) */ +#define RCC_CFGR_HPRE_0 (0x1UL << RCC_CFGR_HPRE_Pos) /*!< 0x00000010 */ +#define RCC_CFGR_HPRE_1 (0x2UL << RCC_CFGR_HPRE_Pos) /*!< 0x00000020 */ +#define RCC_CFGR_HPRE_2 (0x4UL << RCC_CFGR_HPRE_Pos) /*!< 0x00000040 */ +#define RCC_CFGR_HPRE_3 (0x8UL << RCC_CFGR_HPRE_Pos) /*!< 0x00000080 */ + +#define RCC_CFGR_HPRE_DIV1 0x00000000U /*!< SYSCLK not divided */ +#define RCC_CFGR_HPRE_DIV2 0x00000080U /*!< SYSCLK divided by 2 */ +#define RCC_CFGR_HPRE_DIV4 0x00000090U /*!< SYSCLK divided by 4 */ +#define RCC_CFGR_HPRE_DIV8 0x000000A0U /*!< SYSCLK divided by 8 */ +#define RCC_CFGR_HPRE_DIV16 0x000000B0U /*!< SYSCLK divided by 16 */ +#define RCC_CFGR_HPRE_DIV64 0x000000C0U /*!< SYSCLK divided by 64 */ +#define RCC_CFGR_HPRE_DIV128 0x000000D0U /*!< SYSCLK divided by 128 */ +#define RCC_CFGR_HPRE_DIV256 0x000000E0U /*!< SYSCLK divided by 256 */ +#define RCC_CFGR_HPRE_DIV512 0x000000F0U /*!< SYSCLK divided by 512 */ + +/*!< PPRE1 configuration */ +#define RCC_CFGR_PPRE1_Pos (8U) +#define RCC_CFGR_PPRE1_Msk (0x7UL << RCC_CFGR_PPRE1_Pos) /*!< 0x00000700 */ +#define RCC_CFGR_PPRE1 RCC_CFGR_PPRE1_Msk /*!< PRE1[2:0] bits (APB1 prescaler) */ +#define RCC_CFGR_PPRE1_0 (0x1UL << RCC_CFGR_PPRE1_Pos) /*!< 0x00000100 */ +#define RCC_CFGR_PPRE1_1 (0x2UL << RCC_CFGR_PPRE1_Pos) /*!< 0x00000200 */ +#define RCC_CFGR_PPRE1_2 (0x4UL << RCC_CFGR_PPRE1_Pos) /*!< 0x00000400 */ + +#define RCC_CFGR_PPRE1_DIV1 0x00000000U /*!< HCLK not divided */ +#define RCC_CFGR_PPRE1_DIV2 0x00000400U /*!< HCLK divided by 2 */ +#define RCC_CFGR_PPRE1_DIV4 0x00000500U /*!< HCLK divided by 4 */ +#define RCC_CFGR_PPRE1_DIV8 0x00000600U /*!< HCLK divided by 8 */ +#define RCC_CFGR_PPRE1_DIV16 0x00000700U /*!< HCLK divided by 16 */ + +/*!< PPRE2 configuration */ +#define RCC_CFGR_PPRE2_Pos (11U) +#define RCC_CFGR_PPRE2_Msk (0x7UL << RCC_CFGR_PPRE2_Pos) /*!< 0x00003800 */ +#define RCC_CFGR_PPRE2 RCC_CFGR_PPRE2_Msk /*!< PRE2[2:0] bits (APB2 prescaler) */ +#define RCC_CFGR_PPRE2_0 (0x1UL << RCC_CFGR_PPRE2_Pos) /*!< 0x00000800 */ +#define RCC_CFGR_PPRE2_1 (0x2UL << RCC_CFGR_PPRE2_Pos) /*!< 0x00001000 */ +#define RCC_CFGR_PPRE2_2 (0x4UL << RCC_CFGR_PPRE2_Pos) /*!< 0x00002000 */ + +#define RCC_CFGR_PPRE2_DIV1 0x00000000U /*!< HCLK not divided */ +#define RCC_CFGR_PPRE2_DIV2 0x00002000U /*!< HCLK divided by 2 */ +#define RCC_CFGR_PPRE2_DIV4 0x00002800U /*!< HCLK divided by 4 */ +#define RCC_CFGR_PPRE2_DIV8 0x00003000U /*!< HCLK divided by 8 */ +#define RCC_CFGR_PPRE2_DIV16 0x00003800U /*!< HCLK divided by 16 */ + +/*!< ADCPPRE configuration */ +#define RCC_CFGR_ADCPRE_Pos (14U) +#define RCC_CFGR_ADCPRE_Msk (0x3UL << RCC_CFGR_ADCPRE_Pos) /*!< 0x0000C000 */ +#define RCC_CFGR_ADCPRE RCC_CFGR_ADCPRE_Msk /*!< ADCPRE[1:0] bits (ADC prescaler) */ +#define RCC_CFGR_ADCPRE_0 (0x1UL << RCC_CFGR_ADCPRE_Pos) /*!< 0x00004000 */ +#define RCC_CFGR_ADCPRE_1 (0x2UL << RCC_CFGR_ADCPRE_Pos) /*!< 0x00008000 */ + +#define RCC_CFGR_ADCPRE_DIV2 0x00000000U /*!< PCLK2 divided by 2 */ +#define RCC_CFGR_ADCPRE_DIV4 0x00004000U /*!< PCLK2 divided by 4 */ +#define RCC_CFGR_ADCPRE_DIV6 0x00008000U /*!< PCLK2 divided by 6 */ +#define RCC_CFGR_ADCPRE_DIV8 0x0000C000U /*!< PCLK2 divided by 8 */ + +#define RCC_CFGR_PLLSRC_Pos (16U) +#define RCC_CFGR_PLLSRC_Msk (0x1UL << RCC_CFGR_PLLSRC_Pos) /*!< 0x00010000 */ +#define RCC_CFGR_PLLSRC RCC_CFGR_PLLSRC_Msk /*!< PLL entry clock source */ + +#define RCC_CFGR_PLLXTPRE_Pos (17U) +#define RCC_CFGR_PLLXTPRE_Msk (0x1UL << RCC_CFGR_PLLXTPRE_Pos) /*!< 0x00020000 */ +#define RCC_CFGR_PLLXTPRE RCC_CFGR_PLLXTPRE_Msk /*!< HSE divider for PLL entry */ + +/*!< PLLMUL configuration */ +#define RCC_CFGR_PLLMULL_Pos (18U) +#define RCC_CFGR_PLLMULL_Msk (0xFUL << RCC_CFGR_PLLMULL_Pos) /*!< 0x003C0000 */ +#define RCC_CFGR_PLLMULL RCC_CFGR_PLLMULL_Msk /*!< PLLMUL[3:0] bits (PLL multiplication factor) */ +#define RCC_CFGR_PLLMULL_0 (0x1UL << RCC_CFGR_PLLMULL_Pos) /*!< 0x00040000 */ +#define RCC_CFGR_PLLMULL_1 (0x2UL << RCC_CFGR_PLLMULL_Pos) /*!< 0x00080000 */ +#define RCC_CFGR_PLLMULL_2 (0x4UL << RCC_CFGR_PLLMULL_Pos) /*!< 0x00100000 */ +#define RCC_CFGR_PLLMULL_3 (0x8UL << RCC_CFGR_PLLMULL_Pos) /*!< 0x00200000 */ + +#define RCC_CFGR_PLLXTPRE_HSE 0x00000000U /*!< HSE clock not divided for PLL entry */ +#define RCC_CFGR_PLLXTPRE_HSE_DIV2 0x00020000U /*!< HSE clock divided by 2 for PLL entry */ + +#define RCC_CFGR_PLLMULL2 0x00000000U /*!< PLL input clock*2 */ +#define RCC_CFGR_PLLMULL3_Pos (18U) +#define RCC_CFGR_PLLMULL3_Msk (0x1UL << RCC_CFGR_PLLMULL3_Pos) /*!< 0x00040000 */ +#define RCC_CFGR_PLLMULL3 RCC_CFGR_PLLMULL3_Msk /*!< PLL input clock*3 */ +#define RCC_CFGR_PLLMULL4_Pos (19U) +#define RCC_CFGR_PLLMULL4_Msk (0x1UL << RCC_CFGR_PLLMULL4_Pos) /*!< 0x00080000 */ +#define RCC_CFGR_PLLMULL4 RCC_CFGR_PLLMULL4_Msk /*!< PLL input clock*4 */ +#define RCC_CFGR_PLLMULL5_Pos (18U) +#define RCC_CFGR_PLLMULL5_Msk (0x3UL << RCC_CFGR_PLLMULL5_Pos) /*!< 0x000C0000 */ +#define RCC_CFGR_PLLMULL5 RCC_CFGR_PLLMULL5_Msk /*!< PLL input clock*5 */ +#define RCC_CFGR_PLLMULL6_Pos (20U) +#define RCC_CFGR_PLLMULL6_Msk (0x1UL << RCC_CFGR_PLLMULL6_Pos) /*!< 0x00100000 */ +#define RCC_CFGR_PLLMULL6 RCC_CFGR_PLLMULL6_Msk /*!< PLL input clock*6 */ +#define RCC_CFGR_PLLMULL7_Pos (18U) +#define RCC_CFGR_PLLMULL7_Msk (0x5UL << RCC_CFGR_PLLMULL7_Pos) /*!< 0x00140000 */ +#define RCC_CFGR_PLLMULL7 RCC_CFGR_PLLMULL7_Msk /*!< PLL input clock*7 */ +#define RCC_CFGR_PLLMULL8_Pos (19U) +#define RCC_CFGR_PLLMULL8_Msk (0x3UL << RCC_CFGR_PLLMULL8_Pos) /*!< 0x00180000 */ +#define RCC_CFGR_PLLMULL8 RCC_CFGR_PLLMULL8_Msk /*!< PLL input clock*8 */ +#define RCC_CFGR_PLLMULL9_Pos (18U) +#define RCC_CFGR_PLLMULL9_Msk (0x7UL << RCC_CFGR_PLLMULL9_Pos) /*!< 0x001C0000 */ +#define RCC_CFGR_PLLMULL9 RCC_CFGR_PLLMULL9_Msk /*!< PLL input clock*9 */ +#define RCC_CFGR_PLLMULL10_Pos (21U) +#define RCC_CFGR_PLLMULL10_Msk (0x1UL << RCC_CFGR_PLLMULL10_Pos) /*!< 0x00200000 */ +#define RCC_CFGR_PLLMULL10 RCC_CFGR_PLLMULL10_Msk /*!< PLL input clock10 */ +#define RCC_CFGR_PLLMULL11_Pos (18U) +#define RCC_CFGR_PLLMULL11_Msk (0x9UL << RCC_CFGR_PLLMULL11_Pos) /*!< 0x00240000 */ +#define RCC_CFGR_PLLMULL11 RCC_CFGR_PLLMULL11_Msk /*!< PLL input clock*11 */ +#define RCC_CFGR_PLLMULL12_Pos (19U) +#define RCC_CFGR_PLLMULL12_Msk (0x5UL << RCC_CFGR_PLLMULL12_Pos) /*!< 0x00280000 */ +#define RCC_CFGR_PLLMULL12 RCC_CFGR_PLLMULL12_Msk /*!< PLL input clock*12 */ +#define RCC_CFGR_PLLMULL13_Pos (18U) +#define RCC_CFGR_PLLMULL13_Msk (0xBUL << RCC_CFGR_PLLMULL13_Pos) /*!< 0x002C0000 */ +#define RCC_CFGR_PLLMULL13 RCC_CFGR_PLLMULL13_Msk /*!< PLL input clock*13 */ +#define RCC_CFGR_PLLMULL14_Pos (20U) +#define RCC_CFGR_PLLMULL14_Msk (0x3UL << RCC_CFGR_PLLMULL14_Pos) /*!< 0x00300000 */ +#define RCC_CFGR_PLLMULL14 RCC_CFGR_PLLMULL14_Msk /*!< PLL input clock*14 */ +#define RCC_CFGR_PLLMULL15_Pos (18U) +#define RCC_CFGR_PLLMULL15_Msk (0xDUL << RCC_CFGR_PLLMULL15_Pos) /*!< 0x00340000 */ +#define RCC_CFGR_PLLMULL15 RCC_CFGR_PLLMULL15_Msk /*!< PLL input clock*15 */ +#define RCC_CFGR_PLLMULL16_Pos (19U) +#define RCC_CFGR_PLLMULL16_Msk (0x7UL << RCC_CFGR_PLLMULL16_Pos) /*!< 0x00380000 */ +#define RCC_CFGR_PLLMULL16 RCC_CFGR_PLLMULL16_Msk /*!< PLL input clock*16 */ +#define RCC_CFGR_USBPRE_Pos (22U) +#define RCC_CFGR_USBPRE_Msk (0x1UL << RCC_CFGR_USBPRE_Pos) /*!< 0x00400000 */ +#define RCC_CFGR_USBPRE RCC_CFGR_USBPRE_Msk /*!< USB Device prescaler */ + +/*!< MCO configuration */ +#define RCC_CFGR_MCO_Pos (24U) +#define RCC_CFGR_MCO_Msk (0x7UL << RCC_CFGR_MCO_Pos) /*!< 0x07000000 */ +#define RCC_CFGR_MCO RCC_CFGR_MCO_Msk /*!< MCO[2:0] bits (Microcontroller Clock Output) */ +#define RCC_CFGR_MCO_0 (0x1UL << RCC_CFGR_MCO_Pos) /*!< 0x01000000 */ +#define RCC_CFGR_MCO_1 (0x2UL << RCC_CFGR_MCO_Pos) /*!< 0x02000000 */ +#define RCC_CFGR_MCO_2 (0x4UL << RCC_CFGR_MCO_Pos) /*!< 0x04000000 */ + +#define RCC_CFGR_MCO_NOCLOCK 0x00000000U /*!< No clock */ +#define RCC_CFGR_MCO_SYSCLK 0x04000000U /*!< System clock selected as MCO source */ +#define RCC_CFGR_MCO_HSI 0x05000000U /*!< HSI clock selected as MCO source */ +#define RCC_CFGR_MCO_HSE 0x06000000U /*!< HSE clock selected as MCO source */ +#define RCC_CFGR_MCO_PLLCLK_DIV2 0x07000000U /*!< PLL clock divided by 2 selected as MCO source */ + + /* Reference defines */ + #define RCC_CFGR_MCOSEL RCC_CFGR_MCO + #define RCC_CFGR_MCOSEL_0 RCC_CFGR_MCO_0 + #define RCC_CFGR_MCOSEL_1 RCC_CFGR_MCO_1 + #define RCC_CFGR_MCOSEL_2 RCC_CFGR_MCO_2 + #define RCC_CFGR_MCOSEL_NOCLOCK RCC_CFGR_MCO_NOCLOCK + #define RCC_CFGR_MCOSEL_SYSCLK RCC_CFGR_MCO_SYSCLK + #define RCC_CFGR_MCOSEL_HSI RCC_CFGR_MCO_HSI + #define RCC_CFGR_MCOSEL_HSE RCC_CFGR_MCO_HSE + #define RCC_CFGR_MCOSEL_PLL_DIV2 RCC_CFGR_MCO_PLLCLK_DIV2 + +/*!<****************** Bit definition for RCC_CIR register ********************/ +#define RCC_CIR_LSIRDYF_Pos (0U) +#define RCC_CIR_LSIRDYF_Msk (0x1UL << RCC_CIR_LSIRDYF_Pos) /*!< 0x00000001 */ +#define RCC_CIR_LSIRDYF RCC_CIR_LSIRDYF_Msk /*!< LSI Ready Interrupt flag */ +#define RCC_CIR_LSERDYF_Pos (1U) +#define RCC_CIR_LSERDYF_Msk (0x1UL << RCC_CIR_LSERDYF_Pos) /*!< 0x00000002 */ +#define RCC_CIR_LSERDYF RCC_CIR_LSERDYF_Msk /*!< LSE Ready Interrupt flag */ +#define RCC_CIR_HSIRDYF_Pos (2U) +#define RCC_CIR_HSIRDYF_Msk (0x1UL << RCC_CIR_HSIRDYF_Pos) /*!< 0x00000004 */ +#define RCC_CIR_HSIRDYF RCC_CIR_HSIRDYF_Msk /*!< HSI Ready Interrupt flag */ +#define RCC_CIR_HSERDYF_Pos (3U) +#define RCC_CIR_HSERDYF_Msk (0x1UL << RCC_CIR_HSERDYF_Pos) /*!< 0x00000008 */ +#define RCC_CIR_HSERDYF RCC_CIR_HSERDYF_Msk /*!< HSE Ready Interrupt flag */ +#define RCC_CIR_PLLRDYF_Pos (4U) +#define RCC_CIR_PLLRDYF_Msk (0x1UL << RCC_CIR_PLLRDYF_Pos) /*!< 0x00000010 */ +#define RCC_CIR_PLLRDYF RCC_CIR_PLLRDYF_Msk /*!< PLL Ready Interrupt flag */ +#define RCC_CIR_CSSF_Pos (7U) +#define RCC_CIR_CSSF_Msk (0x1UL << RCC_CIR_CSSF_Pos) /*!< 0x00000080 */ +#define RCC_CIR_CSSF RCC_CIR_CSSF_Msk /*!< Clock Security System Interrupt flag */ +#define RCC_CIR_LSIRDYIE_Pos (8U) +#define RCC_CIR_LSIRDYIE_Msk (0x1UL << RCC_CIR_LSIRDYIE_Pos) /*!< 0x00000100 */ +#define RCC_CIR_LSIRDYIE RCC_CIR_LSIRDYIE_Msk /*!< LSI Ready Interrupt Enable */ +#define RCC_CIR_LSERDYIE_Pos (9U) +#define RCC_CIR_LSERDYIE_Msk (0x1UL << RCC_CIR_LSERDYIE_Pos) /*!< 0x00000200 */ +#define RCC_CIR_LSERDYIE RCC_CIR_LSERDYIE_Msk /*!< LSE Ready Interrupt Enable */ +#define RCC_CIR_HSIRDYIE_Pos (10U) +#define RCC_CIR_HSIRDYIE_Msk (0x1UL << RCC_CIR_HSIRDYIE_Pos) /*!< 0x00000400 */ +#define RCC_CIR_HSIRDYIE RCC_CIR_HSIRDYIE_Msk /*!< HSI Ready Interrupt Enable */ +#define RCC_CIR_HSERDYIE_Pos (11U) +#define RCC_CIR_HSERDYIE_Msk (0x1UL << RCC_CIR_HSERDYIE_Pos) /*!< 0x00000800 */ +#define RCC_CIR_HSERDYIE RCC_CIR_HSERDYIE_Msk /*!< HSE Ready Interrupt Enable */ +#define RCC_CIR_PLLRDYIE_Pos (12U) +#define RCC_CIR_PLLRDYIE_Msk (0x1UL << RCC_CIR_PLLRDYIE_Pos) /*!< 0x00001000 */ +#define RCC_CIR_PLLRDYIE RCC_CIR_PLLRDYIE_Msk /*!< PLL Ready Interrupt Enable */ +#define RCC_CIR_LSIRDYC_Pos (16U) +#define RCC_CIR_LSIRDYC_Msk (0x1UL << RCC_CIR_LSIRDYC_Pos) /*!< 0x00010000 */ +#define RCC_CIR_LSIRDYC RCC_CIR_LSIRDYC_Msk /*!< LSI Ready Interrupt Clear */ +#define RCC_CIR_LSERDYC_Pos (17U) +#define RCC_CIR_LSERDYC_Msk (0x1UL << RCC_CIR_LSERDYC_Pos) /*!< 0x00020000 */ +#define RCC_CIR_LSERDYC RCC_CIR_LSERDYC_Msk /*!< LSE Ready Interrupt Clear */ +#define RCC_CIR_HSIRDYC_Pos (18U) +#define RCC_CIR_HSIRDYC_Msk (0x1UL << RCC_CIR_HSIRDYC_Pos) /*!< 0x00040000 */ +#define RCC_CIR_HSIRDYC RCC_CIR_HSIRDYC_Msk /*!< HSI Ready Interrupt Clear */ +#define RCC_CIR_HSERDYC_Pos (19U) +#define RCC_CIR_HSERDYC_Msk (0x1UL << RCC_CIR_HSERDYC_Pos) /*!< 0x00080000 */ +#define RCC_CIR_HSERDYC RCC_CIR_HSERDYC_Msk /*!< HSE Ready Interrupt Clear */ +#define RCC_CIR_PLLRDYC_Pos (20U) +#define RCC_CIR_PLLRDYC_Msk (0x1UL << RCC_CIR_PLLRDYC_Pos) /*!< 0x00100000 */ +#define RCC_CIR_PLLRDYC RCC_CIR_PLLRDYC_Msk /*!< PLL Ready Interrupt Clear */ +#define RCC_CIR_CSSC_Pos (23U) +#define RCC_CIR_CSSC_Msk (0x1UL << RCC_CIR_CSSC_Pos) /*!< 0x00800000 */ +#define RCC_CIR_CSSC RCC_CIR_CSSC_Msk /*!< Clock Security System Interrupt Clear */ + + +/***************** Bit definition for RCC_APB2RSTR register *****************/ +#define RCC_APB2RSTR_AFIORST_Pos (0U) +#define RCC_APB2RSTR_AFIORST_Msk (0x1UL << RCC_APB2RSTR_AFIORST_Pos) /*!< 0x00000001 */ +#define RCC_APB2RSTR_AFIORST RCC_APB2RSTR_AFIORST_Msk /*!< Alternate Function I/O reset */ +#define RCC_APB2RSTR_IOPARST_Pos (2U) +#define RCC_APB2RSTR_IOPARST_Msk (0x1UL << RCC_APB2RSTR_IOPARST_Pos) /*!< 0x00000004 */ +#define RCC_APB2RSTR_IOPARST RCC_APB2RSTR_IOPARST_Msk /*!< I/O port A reset */ +#define RCC_APB2RSTR_IOPBRST_Pos (3U) +#define RCC_APB2RSTR_IOPBRST_Msk (0x1UL << RCC_APB2RSTR_IOPBRST_Pos) /*!< 0x00000008 */ +#define RCC_APB2RSTR_IOPBRST RCC_APB2RSTR_IOPBRST_Msk /*!< I/O port B reset */ +#define RCC_APB2RSTR_IOPCRST_Pos (4U) +#define RCC_APB2RSTR_IOPCRST_Msk (0x1UL << RCC_APB2RSTR_IOPCRST_Pos) /*!< 0x00000010 */ +#define RCC_APB2RSTR_IOPCRST RCC_APB2RSTR_IOPCRST_Msk /*!< I/O port C reset */ +#define RCC_APB2RSTR_IOPDRST_Pos (5U) +#define RCC_APB2RSTR_IOPDRST_Msk (0x1UL << RCC_APB2RSTR_IOPDRST_Pos) /*!< 0x00000020 */ +#define RCC_APB2RSTR_IOPDRST RCC_APB2RSTR_IOPDRST_Msk /*!< I/O port D reset */ +#define RCC_APB2RSTR_ADC1RST_Pos (9U) +#define RCC_APB2RSTR_ADC1RST_Msk (0x1UL << RCC_APB2RSTR_ADC1RST_Pos) /*!< 0x00000200 */ +#define RCC_APB2RSTR_ADC1RST RCC_APB2RSTR_ADC1RST_Msk /*!< ADC 1 interface reset */ + +#define RCC_APB2RSTR_ADC2RST_Pos (10U) +#define RCC_APB2RSTR_ADC2RST_Msk (0x1UL << RCC_APB2RSTR_ADC2RST_Pos) /*!< 0x00000400 */ +#define RCC_APB2RSTR_ADC2RST RCC_APB2RSTR_ADC2RST_Msk /*!< ADC 2 interface reset */ + +#define RCC_APB2RSTR_TIM1RST_Pos (11U) +#define RCC_APB2RSTR_TIM1RST_Msk (0x1UL << RCC_APB2RSTR_TIM1RST_Pos) /*!< 0x00000800 */ +#define RCC_APB2RSTR_TIM1RST RCC_APB2RSTR_TIM1RST_Msk /*!< TIM1 Timer reset */ +#define RCC_APB2RSTR_SPI1RST_Pos (12U) +#define RCC_APB2RSTR_SPI1RST_Msk (0x1UL << RCC_APB2RSTR_SPI1RST_Pos) /*!< 0x00001000 */ +#define RCC_APB2RSTR_SPI1RST RCC_APB2RSTR_SPI1RST_Msk /*!< SPI 1 reset */ +#define RCC_APB2RSTR_USART1RST_Pos (14U) +#define RCC_APB2RSTR_USART1RST_Msk (0x1UL << RCC_APB2RSTR_USART1RST_Pos) /*!< 0x00004000 */ +#define RCC_APB2RSTR_USART1RST RCC_APB2RSTR_USART1RST_Msk /*!< USART1 reset */ + + +#define RCC_APB2RSTR_IOPERST_Pos (6U) +#define RCC_APB2RSTR_IOPERST_Msk (0x1UL << RCC_APB2RSTR_IOPERST_Pos) /*!< 0x00000040 */ +#define RCC_APB2RSTR_IOPERST RCC_APB2RSTR_IOPERST_Msk /*!< I/O port E reset */ + + + + +/***************** Bit definition for RCC_APB1RSTR register *****************/ +#define RCC_APB1RSTR_TIM2RST_Pos (0U) +#define RCC_APB1RSTR_TIM2RST_Msk (0x1UL << RCC_APB1RSTR_TIM2RST_Pos) /*!< 0x00000001 */ +#define RCC_APB1RSTR_TIM2RST RCC_APB1RSTR_TIM2RST_Msk /*!< Timer 2 reset */ +#define RCC_APB1RSTR_TIM3RST_Pos (1U) +#define RCC_APB1RSTR_TIM3RST_Msk (0x1UL << RCC_APB1RSTR_TIM3RST_Pos) /*!< 0x00000002 */ +#define RCC_APB1RSTR_TIM3RST RCC_APB1RSTR_TIM3RST_Msk /*!< Timer 3 reset */ +#define RCC_APB1RSTR_WWDGRST_Pos (11U) +#define RCC_APB1RSTR_WWDGRST_Msk (0x1UL << RCC_APB1RSTR_WWDGRST_Pos) /*!< 0x00000800 */ +#define RCC_APB1RSTR_WWDGRST RCC_APB1RSTR_WWDGRST_Msk /*!< Window Watchdog reset */ +#define RCC_APB1RSTR_USART2RST_Pos (17U) +#define RCC_APB1RSTR_USART2RST_Msk (0x1UL << RCC_APB1RSTR_USART2RST_Pos) /*!< 0x00020000 */ +#define RCC_APB1RSTR_USART2RST RCC_APB1RSTR_USART2RST_Msk /*!< USART 2 reset */ +#define RCC_APB1RSTR_I2C1RST_Pos (21U) +#define RCC_APB1RSTR_I2C1RST_Msk (0x1UL << RCC_APB1RSTR_I2C1RST_Pos) /*!< 0x00200000 */ +#define RCC_APB1RSTR_I2C1RST RCC_APB1RSTR_I2C1RST_Msk /*!< I2C 1 reset */ + +#define RCC_APB1RSTR_CAN1RST_Pos (25U) +#define RCC_APB1RSTR_CAN1RST_Msk (0x1UL << RCC_APB1RSTR_CAN1RST_Pos) /*!< 0x02000000 */ +#define RCC_APB1RSTR_CAN1RST RCC_APB1RSTR_CAN1RST_Msk /*!< CAN1 reset */ + +#define RCC_APB1RSTR_BKPRST_Pos (27U) +#define RCC_APB1RSTR_BKPRST_Msk (0x1UL << RCC_APB1RSTR_BKPRST_Pos) /*!< 0x08000000 */ +#define RCC_APB1RSTR_BKPRST RCC_APB1RSTR_BKPRST_Msk /*!< Backup interface reset */ +#define RCC_APB1RSTR_PWRRST_Pos (28U) +#define RCC_APB1RSTR_PWRRST_Msk (0x1UL << RCC_APB1RSTR_PWRRST_Pos) /*!< 0x10000000 */ +#define RCC_APB1RSTR_PWRRST RCC_APB1RSTR_PWRRST_Msk /*!< Power interface reset */ + +#define RCC_APB1RSTR_TIM4RST_Pos (2U) +#define RCC_APB1RSTR_TIM4RST_Msk (0x1UL << RCC_APB1RSTR_TIM4RST_Pos) /*!< 0x00000004 */ +#define RCC_APB1RSTR_TIM4RST RCC_APB1RSTR_TIM4RST_Msk /*!< Timer 4 reset */ +#define RCC_APB1RSTR_SPI2RST_Pos (14U) +#define RCC_APB1RSTR_SPI2RST_Msk (0x1UL << RCC_APB1RSTR_SPI2RST_Pos) /*!< 0x00004000 */ +#define RCC_APB1RSTR_SPI2RST RCC_APB1RSTR_SPI2RST_Msk /*!< SPI 2 reset */ +#define RCC_APB1RSTR_USART3RST_Pos (18U) +#define RCC_APB1RSTR_USART3RST_Msk (0x1UL << RCC_APB1RSTR_USART3RST_Pos) /*!< 0x00040000 */ +#define RCC_APB1RSTR_USART3RST RCC_APB1RSTR_USART3RST_Msk /*!< USART 3 reset */ +#define RCC_APB1RSTR_I2C2RST_Pos (22U) +#define RCC_APB1RSTR_I2C2RST_Msk (0x1UL << RCC_APB1RSTR_I2C2RST_Pos) /*!< 0x00400000 */ +#define RCC_APB1RSTR_I2C2RST RCC_APB1RSTR_I2C2RST_Msk /*!< I2C 2 reset */ + +#define RCC_APB1RSTR_USBRST_Pos (23U) +#define RCC_APB1RSTR_USBRST_Msk (0x1UL << RCC_APB1RSTR_USBRST_Pos) /*!< 0x00800000 */ +#define RCC_APB1RSTR_USBRST RCC_APB1RSTR_USBRST_Msk /*!< USB Device reset */ + + + + + + +/****************** Bit definition for RCC_AHBENR register ******************/ +#define RCC_AHBENR_DMA1EN_Pos (0U) +#define RCC_AHBENR_DMA1EN_Msk (0x1UL << RCC_AHBENR_DMA1EN_Pos) /*!< 0x00000001 */ +#define RCC_AHBENR_DMA1EN RCC_AHBENR_DMA1EN_Msk /*!< DMA1 clock enable */ +#define RCC_AHBENR_SRAMEN_Pos (2U) +#define RCC_AHBENR_SRAMEN_Msk (0x1UL << RCC_AHBENR_SRAMEN_Pos) /*!< 0x00000004 */ +#define RCC_AHBENR_SRAMEN RCC_AHBENR_SRAMEN_Msk /*!< SRAM interface clock enable */ +#define RCC_AHBENR_FLITFEN_Pos (4U) +#define RCC_AHBENR_FLITFEN_Msk (0x1UL << RCC_AHBENR_FLITFEN_Pos) /*!< 0x00000010 */ +#define RCC_AHBENR_FLITFEN RCC_AHBENR_FLITFEN_Msk /*!< FLITF clock enable */ +#define RCC_AHBENR_CRCEN_Pos (6U) +#define RCC_AHBENR_CRCEN_Msk (0x1UL << RCC_AHBENR_CRCEN_Pos) /*!< 0x00000040 */ +#define RCC_AHBENR_CRCEN RCC_AHBENR_CRCEN_Msk /*!< CRC clock enable */ + + + + +/****************** Bit definition for RCC_APB2ENR register *****************/ +#define RCC_APB2ENR_AFIOEN_Pos (0U) +#define RCC_APB2ENR_AFIOEN_Msk (0x1UL << RCC_APB2ENR_AFIOEN_Pos) /*!< 0x00000001 */ +#define RCC_APB2ENR_AFIOEN RCC_APB2ENR_AFIOEN_Msk /*!< Alternate Function I/O clock enable */ +#define RCC_APB2ENR_IOPAEN_Pos (2U) +#define RCC_APB2ENR_IOPAEN_Msk (0x1UL << RCC_APB2ENR_IOPAEN_Pos) /*!< 0x00000004 */ +#define RCC_APB2ENR_IOPAEN RCC_APB2ENR_IOPAEN_Msk /*!< I/O port A clock enable */ +#define RCC_APB2ENR_IOPBEN_Pos (3U) +#define RCC_APB2ENR_IOPBEN_Msk (0x1UL << RCC_APB2ENR_IOPBEN_Pos) /*!< 0x00000008 */ +#define RCC_APB2ENR_IOPBEN RCC_APB2ENR_IOPBEN_Msk /*!< I/O port B clock enable */ +#define RCC_APB2ENR_IOPCEN_Pos (4U) +#define RCC_APB2ENR_IOPCEN_Msk (0x1UL << RCC_APB2ENR_IOPCEN_Pos) /*!< 0x00000010 */ +#define RCC_APB2ENR_IOPCEN RCC_APB2ENR_IOPCEN_Msk /*!< I/O port C clock enable */ +#define RCC_APB2ENR_IOPDEN_Pos (5U) +#define RCC_APB2ENR_IOPDEN_Msk (0x1UL << RCC_APB2ENR_IOPDEN_Pos) /*!< 0x00000020 */ +#define RCC_APB2ENR_IOPDEN RCC_APB2ENR_IOPDEN_Msk /*!< I/O port D clock enable */ +#define RCC_APB2ENR_ADC1EN_Pos (9U) +#define RCC_APB2ENR_ADC1EN_Msk (0x1UL << RCC_APB2ENR_ADC1EN_Pos) /*!< 0x00000200 */ +#define RCC_APB2ENR_ADC1EN RCC_APB2ENR_ADC1EN_Msk /*!< ADC 1 interface clock enable */ + +#define RCC_APB2ENR_ADC2EN_Pos (10U) +#define RCC_APB2ENR_ADC2EN_Msk (0x1UL << RCC_APB2ENR_ADC2EN_Pos) /*!< 0x00000400 */ +#define RCC_APB2ENR_ADC2EN RCC_APB2ENR_ADC2EN_Msk /*!< ADC 2 interface clock enable */ + +#define RCC_APB2ENR_TIM1EN_Pos (11U) +#define RCC_APB2ENR_TIM1EN_Msk (0x1UL << RCC_APB2ENR_TIM1EN_Pos) /*!< 0x00000800 */ +#define RCC_APB2ENR_TIM1EN RCC_APB2ENR_TIM1EN_Msk /*!< TIM1 Timer clock enable */ +#define RCC_APB2ENR_SPI1EN_Pos (12U) +#define RCC_APB2ENR_SPI1EN_Msk (0x1UL << RCC_APB2ENR_SPI1EN_Pos) /*!< 0x00001000 */ +#define RCC_APB2ENR_SPI1EN RCC_APB2ENR_SPI1EN_Msk /*!< SPI 1 clock enable */ +#define RCC_APB2ENR_USART1EN_Pos (14U) +#define RCC_APB2ENR_USART1EN_Msk (0x1UL << RCC_APB2ENR_USART1EN_Pos) /*!< 0x00004000 */ +#define RCC_APB2ENR_USART1EN RCC_APB2ENR_USART1EN_Msk /*!< USART1 clock enable */ + + +#define RCC_APB2ENR_IOPEEN_Pos (6U) +#define RCC_APB2ENR_IOPEEN_Msk (0x1UL << RCC_APB2ENR_IOPEEN_Pos) /*!< 0x00000040 */ +#define RCC_APB2ENR_IOPEEN RCC_APB2ENR_IOPEEN_Msk /*!< I/O port E clock enable */ + + + + +/***************** Bit definition for RCC_APB1ENR register ******************/ +#define RCC_APB1ENR_TIM2EN_Pos (0U) +#define RCC_APB1ENR_TIM2EN_Msk (0x1UL << RCC_APB1ENR_TIM2EN_Pos) /*!< 0x00000001 */ +#define RCC_APB1ENR_TIM2EN RCC_APB1ENR_TIM2EN_Msk /*!< Timer 2 clock enabled*/ +#define RCC_APB1ENR_TIM3EN_Pos (1U) +#define RCC_APB1ENR_TIM3EN_Msk (0x1UL << RCC_APB1ENR_TIM3EN_Pos) /*!< 0x00000002 */ +#define RCC_APB1ENR_TIM3EN RCC_APB1ENR_TIM3EN_Msk /*!< Timer 3 clock enable */ +#define RCC_APB1ENR_WWDGEN_Pos (11U) +#define RCC_APB1ENR_WWDGEN_Msk (0x1UL << RCC_APB1ENR_WWDGEN_Pos) /*!< 0x00000800 */ +#define RCC_APB1ENR_WWDGEN RCC_APB1ENR_WWDGEN_Msk /*!< Window Watchdog clock enable */ +#define RCC_APB1ENR_USART2EN_Pos (17U) +#define RCC_APB1ENR_USART2EN_Msk (0x1UL << RCC_APB1ENR_USART2EN_Pos) /*!< 0x00020000 */ +#define RCC_APB1ENR_USART2EN RCC_APB1ENR_USART2EN_Msk /*!< USART 2 clock enable */ +#define RCC_APB1ENR_I2C1EN_Pos (21U) +#define RCC_APB1ENR_I2C1EN_Msk (0x1UL << RCC_APB1ENR_I2C1EN_Pos) /*!< 0x00200000 */ +#define RCC_APB1ENR_I2C1EN RCC_APB1ENR_I2C1EN_Msk /*!< I2C 1 clock enable */ + +#define RCC_APB1ENR_CAN1EN_Pos (25U) +#define RCC_APB1ENR_CAN1EN_Msk (0x1UL << RCC_APB1ENR_CAN1EN_Pos) /*!< 0x02000000 */ +#define RCC_APB1ENR_CAN1EN RCC_APB1ENR_CAN1EN_Msk /*!< CAN1 clock enable */ + +#define RCC_APB1ENR_BKPEN_Pos (27U) +#define RCC_APB1ENR_BKPEN_Msk (0x1UL << RCC_APB1ENR_BKPEN_Pos) /*!< 0x08000000 */ +#define RCC_APB1ENR_BKPEN RCC_APB1ENR_BKPEN_Msk /*!< Backup interface clock enable */ +#define RCC_APB1ENR_PWREN_Pos (28U) +#define RCC_APB1ENR_PWREN_Msk (0x1UL << RCC_APB1ENR_PWREN_Pos) /*!< 0x10000000 */ +#define RCC_APB1ENR_PWREN RCC_APB1ENR_PWREN_Msk /*!< Power interface clock enable */ + +#define RCC_APB1ENR_TIM4EN_Pos (2U) +#define RCC_APB1ENR_TIM4EN_Msk (0x1UL << RCC_APB1ENR_TIM4EN_Pos) /*!< 0x00000004 */ +#define RCC_APB1ENR_TIM4EN RCC_APB1ENR_TIM4EN_Msk /*!< Timer 4 clock enable */ +#define RCC_APB1ENR_SPI2EN_Pos (14U) +#define RCC_APB1ENR_SPI2EN_Msk (0x1UL << RCC_APB1ENR_SPI2EN_Pos) /*!< 0x00004000 */ +#define RCC_APB1ENR_SPI2EN RCC_APB1ENR_SPI2EN_Msk /*!< SPI 2 clock enable */ +#define RCC_APB1ENR_USART3EN_Pos (18U) +#define RCC_APB1ENR_USART3EN_Msk (0x1UL << RCC_APB1ENR_USART3EN_Pos) /*!< 0x00040000 */ +#define RCC_APB1ENR_USART3EN RCC_APB1ENR_USART3EN_Msk /*!< USART 3 clock enable */ +#define RCC_APB1ENR_I2C2EN_Pos (22U) +#define RCC_APB1ENR_I2C2EN_Msk (0x1UL << RCC_APB1ENR_I2C2EN_Pos) /*!< 0x00400000 */ +#define RCC_APB1ENR_I2C2EN RCC_APB1ENR_I2C2EN_Msk /*!< I2C 2 clock enable */ + +#define RCC_APB1ENR_USBEN_Pos (23U) +#define RCC_APB1ENR_USBEN_Msk (0x1UL << RCC_APB1ENR_USBEN_Pos) /*!< 0x00800000 */ +#define RCC_APB1ENR_USBEN RCC_APB1ENR_USBEN_Msk /*!< USB Device clock enable */ + + + + + + +/******************* Bit definition for RCC_BDCR register *******************/ +#define RCC_BDCR_LSEON_Pos (0U) +#define RCC_BDCR_LSEON_Msk (0x1UL << RCC_BDCR_LSEON_Pos) /*!< 0x00000001 */ +#define RCC_BDCR_LSEON RCC_BDCR_LSEON_Msk /*!< External Low Speed oscillator enable */ +#define RCC_BDCR_LSERDY_Pos (1U) +#define RCC_BDCR_LSERDY_Msk (0x1UL << RCC_BDCR_LSERDY_Pos) /*!< 0x00000002 */ +#define RCC_BDCR_LSERDY RCC_BDCR_LSERDY_Msk /*!< External Low Speed oscillator Ready */ +#define RCC_BDCR_LSEBYP_Pos (2U) +#define RCC_BDCR_LSEBYP_Msk (0x1UL << RCC_BDCR_LSEBYP_Pos) /*!< 0x00000004 */ +#define RCC_BDCR_LSEBYP RCC_BDCR_LSEBYP_Msk /*!< External Low Speed oscillator Bypass */ + +#define RCC_BDCR_RTCSEL_Pos (8U) +#define RCC_BDCR_RTCSEL_Msk (0x3UL << RCC_BDCR_RTCSEL_Pos) /*!< 0x00000300 */ +#define RCC_BDCR_RTCSEL RCC_BDCR_RTCSEL_Msk /*!< RTCSEL[1:0] bits (RTC clock source selection) */ +#define RCC_BDCR_RTCSEL_0 (0x1UL << RCC_BDCR_RTCSEL_Pos) /*!< 0x00000100 */ +#define RCC_BDCR_RTCSEL_1 (0x2UL << RCC_BDCR_RTCSEL_Pos) /*!< 0x00000200 */ + +/*!< RTC congiguration */ +#define RCC_BDCR_RTCSEL_NOCLOCK 0x00000000U /*!< No clock */ +#define RCC_BDCR_RTCSEL_LSE 0x00000100U /*!< LSE oscillator clock used as RTC clock */ +#define RCC_BDCR_RTCSEL_LSI 0x00000200U /*!< LSI oscillator clock used as RTC clock */ +#define RCC_BDCR_RTCSEL_HSE 0x00000300U /*!< HSE oscillator clock divided by 128 used as RTC clock */ + +#define RCC_BDCR_RTCEN_Pos (15U) +#define RCC_BDCR_RTCEN_Msk (0x1UL << RCC_BDCR_RTCEN_Pos) /*!< 0x00008000 */ +#define RCC_BDCR_RTCEN RCC_BDCR_RTCEN_Msk /*!< RTC clock enable */ +#define RCC_BDCR_BDRST_Pos (16U) +#define RCC_BDCR_BDRST_Msk (0x1UL << RCC_BDCR_BDRST_Pos) /*!< 0x00010000 */ +#define RCC_BDCR_BDRST RCC_BDCR_BDRST_Msk /*!< Backup domain software reset */ + +/******************* Bit definition for RCC_CSR register ********************/ +#define RCC_CSR_LSION_Pos (0U) +#define RCC_CSR_LSION_Msk (0x1UL << RCC_CSR_LSION_Pos) /*!< 0x00000001 */ +#define RCC_CSR_LSION RCC_CSR_LSION_Msk /*!< Internal Low Speed oscillator enable */ +#define RCC_CSR_LSIRDY_Pos (1U) +#define RCC_CSR_LSIRDY_Msk (0x1UL << RCC_CSR_LSIRDY_Pos) /*!< 0x00000002 */ +#define RCC_CSR_LSIRDY RCC_CSR_LSIRDY_Msk /*!< Internal Low Speed oscillator Ready */ +#define RCC_CSR_RMVF_Pos (24U) +#define RCC_CSR_RMVF_Msk (0x1UL << RCC_CSR_RMVF_Pos) /*!< 0x01000000 */ +#define RCC_CSR_RMVF RCC_CSR_RMVF_Msk /*!< Remove reset flag */ +#define RCC_CSR_PINRSTF_Pos (26U) +#define RCC_CSR_PINRSTF_Msk (0x1UL << RCC_CSR_PINRSTF_Pos) /*!< 0x04000000 */ +#define RCC_CSR_PINRSTF RCC_CSR_PINRSTF_Msk /*!< PIN reset flag */ +#define RCC_CSR_PORRSTF_Pos (27U) +#define RCC_CSR_PORRSTF_Msk (0x1UL << RCC_CSR_PORRSTF_Pos) /*!< 0x08000000 */ +#define RCC_CSR_PORRSTF RCC_CSR_PORRSTF_Msk /*!< POR/PDR reset flag */ +#define RCC_CSR_SFTRSTF_Pos (28U) +#define RCC_CSR_SFTRSTF_Msk (0x1UL << RCC_CSR_SFTRSTF_Pos) /*!< 0x10000000 */ +#define RCC_CSR_SFTRSTF RCC_CSR_SFTRSTF_Msk /*!< Software Reset flag */ +#define RCC_CSR_IWDGRSTF_Pos (29U) +#define RCC_CSR_IWDGRSTF_Msk (0x1UL << RCC_CSR_IWDGRSTF_Pos) /*!< 0x20000000 */ +#define RCC_CSR_IWDGRSTF RCC_CSR_IWDGRSTF_Msk /*!< Independent Watchdog reset flag */ +#define RCC_CSR_WWDGRSTF_Pos (30U) +#define RCC_CSR_WWDGRSTF_Msk (0x1UL << RCC_CSR_WWDGRSTF_Pos) /*!< 0x40000000 */ +#define RCC_CSR_WWDGRSTF RCC_CSR_WWDGRSTF_Msk /*!< Window watchdog reset flag */ +#define RCC_CSR_LPWRRSTF_Pos (31U) +#define RCC_CSR_LPWRRSTF_Msk (0x1UL << RCC_CSR_LPWRRSTF_Pos) /*!< 0x80000000 */ +#define RCC_CSR_LPWRRSTF RCC_CSR_LPWRRSTF_Msk /*!< Low-Power reset flag */ + + + +/******************************************************************************/ +/* */ +/* General Purpose and Alternate Function I/O */ +/* */ +/******************************************************************************/ + +/******************* Bit definition for GPIO_CRL register *******************/ +#define GPIO_CRL_MODE_Pos (0U) +#define GPIO_CRL_MODE_Msk (0x33333333UL << GPIO_CRL_MODE_Pos) /*!< 0x33333333 */ +#define GPIO_CRL_MODE GPIO_CRL_MODE_Msk /*!< Port x mode bits */ + +#define GPIO_CRL_MODE0_Pos (0U) +#define GPIO_CRL_MODE0_Msk (0x3UL << GPIO_CRL_MODE0_Pos) /*!< 0x00000003 */ +#define GPIO_CRL_MODE0 GPIO_CRL_MODE0_Msk /*!< MODE0[1:0] bits (Port x mode bits, pin 0) */ +#define GPIO_CRL_MODE0_0 (0x1UL << GPIO_CRL_MODE0_Pos) /*!< 0x00000001 */ +#define GPIO_CRL_MODE0_1 (0x2UL << GPIO_CRL_MODE0_Pos) /*!< 0x00000002 */ + +#define GPIO_CRL_MODE1_Pos (4U) +#define GPIO_CRL_MODE1_Msk (0x3UL << GPIO_CRL_MODE1_Pos) /*!< 0x00000030 */ +#define GPIO_CRL_MODE1 GPIO_CRL_MODE1_Msk /*!< MODE1[1:0] bits (Port x mode bits, pin 1) */ +#define GPIO_CRL_MODE1_0 (0x1UL << GPIO_CRL_MODE1_Pos) /*!< 0x00000010 */ +#define GPIO_CRL_MODE1_1 (0x2UL << GPIO_CRL_MODE1_Pos) /*!< 0x00000020 */ + +#define GPIO_CRL_MODE2_Pos (8U) +#define GPIO_CRL_MODE2_Msk (0x3UL << GPIO_CRL_MODE2_Pos) /*!< 0x00000300 */ +#define GPIO_CRL_MODE2 GPIO_CRL_MODE2_Msk /*!< MODE2[1:0] bits (Port x mode bits, pin 2) */ +#define GPIO_CRL_MODE2_0 (0x1UL << GPIO_CRL_MODE2_Pos) /*!< 0x00000100 */ +#define GPIO_CRL_MODE2_1 (0x2UL << GPIO_CRL_MODE2_Pos) /*!< 0x00000200 */ + +#define GPIO_CRL_MODE3_Pos (12U) +#define GPIO_CRL_MODE3_Msk (0x3UL << GPIO_CRL_MODE3_Pos) /*!< 0x00003000 */ +#define GPIO_CRL_MODE3 GPIO_CRL_MODE3_Msk /*!< MODE3[1:0] bits (Port x mode bits, pin 3) */ +#define GPIO_CRL_MODE3_0 (0x1UL << GPIO_CRL_MODE3_Pos) /*!< 0x00001000 */ +#define GPIO_CRL_MODE3_1 (0x2UL << GPIO_CRL_MODE3_Pos) /*!< 0x00002000 */ + +#define GPIO_CRL_MODE4_Pos (16U) +#define GPIO_CRL_MODE4_Msk (0x3UL << GPIO_CRL_MODE4_Pos) /*!< 0x00030000 */ +#define GPIO_CRL_MODE4 GPIO_CRL_MODE4_Msk /*!< MODE4[1:0] bits (Port x mode bits, pin 4) */ +#define GPIO_CRL_MODE4_0 (0x1UL << GPIO_CRL_MODE4_Pos) /*!< 0x00010000 */ +#define GPIO_CRL_MODE4_1 (0x2UL << GPIO_CRL_MODE4_Pos) /*!< 0x00020000 */ + +#define GPIO_CRL_MODE5_Pos (20U) +#define GPIO_CRL_MODE5_Msk (0x3UL << GPIO_CRL_MODE5_Pos) /*!< 0x00300000 */ +#define GPIO_CRL_MODE5 GPIO_CRL_MODE5_Msk /*!< MODE5[1:0] bits (Port x mode bits, pin 5) */ +#define GPIO_CRL_MODE5_0 (0x1UL << GPIO_CRL_MODE5_Pos) /*!< 0x00100000 */ +#define GPIO_CRL_MODE5_1 (0x2UL << GPIO_CRL_MODE5_Pos) /*!< 0x00200000 */ + +#define GPIO_CRL_MODE6_Pos (24U) +#define GPIO_CRL_MODE6_Msk (0x3UL << GPIO_CRL_MODE6_Pos) /*!< 0x03000000 */ +#define GPIO_CRL_MODE6 GPIO_CRL_MODE6_Msk /*!< MODE6[1:0] bits (Port x mode bits, pin 6) */ +#define GPIO_CRL_MODE6_0 (0x1UL << GPIO_CRL_MODE6_Pos) /*!< 0x01000000 */ +#define GPIO_CRL_MODE6_1 (0x2UL << GPIO_CRL_MODE6_Pos) /*!< 0x02000000 */ + +#define GPIO_CRL_MODE7_Pos (28U) +#define GPIO_CRL_MODE7_Msk (0x3UL << GPIO_CRL_MODE7_Pos) /*!< 0x30000000 */ +#define GPIO_CRL_MODE7 GPIO_CRL_MODE7_Msk /*!< MODE7[1:0] bits (Port x mode bits, pin 7) */ +#define GPIO_CRL_MODE7_0 (0x1UL << GPIO_CRL_MODE7_Pos) /*!< 0x10000000 */ +#define GPIO_CRL_MODE7_1 (0x2UL << GPIO_CRL_MODE7_Pos) /*!< 0x20000000 */ + +#define GPIO_CRL_CNF_Pos (2U) +#define GPIO_CRL_CNF_Msk (0x33333333UL << GPIO_CRL_CNF_Pos) /*!< 0xCCCCCCCC */ +#define GPIO_CRL_CNF GPIO_CRL_CNF_Msk /*!< Port x configuration bits */ + +#define GPIO_CRL_CNF0_Pos (2U) +#define GPIO_CRL_CNF0_Msk (0x3UL << GPIO_CRL_CNF0_Pos) /*!< 0x0000000C */ +#define GPIO_CRL_CNF0 GPIO_CRL_CNF0_Msk /*!< CNF0[1:0] bits (Port x configuration bits, pin 0) */ +#define GPIO_CRL_CNF0_0 (0x1UL << GPIO_CRL_CNF0_Pos) /*!< 0x00000004 */ +#define GPIO_CRL_CNF0_1 (0x2UL << GPIO_CRL_CNF0_Pos) /*!< 0x00000008 */ + +#define GPIO_CRL_CNF1_Pos (6U) +#define GPIO_CRL_CNF1_Msk (0x3UL << GPIO_CRL_CNF1_Pos) /*!< 0x000000C0 */ +#define GPIO_CRL_CNF1 GPIO_CRL_CNF1_Msk /*!< CNF1[1:0] bits (Port x configuration bits, pin 1) */ +#define GPIO_CRL_CNF1_0 (0x1UL << GPIO_CRL_CNF1_Pos) /*!< 0x00000040 */ +#define GPIO_CRL_CNF1_1 (0x2UL << GPIO_CRL_CNF1_Pos) /*!< 0x00000080 */ + +#define GPIO_CRL_CNF2_Pos (10U) +#define GPIO_CRL_CNF2_Msk (0x3UL << GPIO_CRL_CNF2_Pos) /*!< 0x00000C00 */ +#define GPIO_CRL_CNF2 GPIO_CRL_CNF2_Msk /*!< CNF2[1:0] bits (Port x configuration bits, pin 2) */ +#define GPIO_CRL_CNF2_0 (0x1UL << GPIO_CRL_CNF2_Pos) /*!< 0x00000400 */ +#define GPIO_CRL_CNF2_1 (0x2UL << GPIO_CRL_CNF2_Pos) /*!< 0x00000800 */ + +#define GPIO_CRL_CNF3_Pos (14U) +#define GPIO_CRL_CNF3_Msk (0x3UL << GPIO_CRL_CNF3_Pos) /*!< 0x0000C000 */ +#define GPIO_CRL_CNF3 GPIO_CRL_CNF3_Msk /*!< CNF3[1:0] bits (Port x configuration bits, pin 3) */ +#define GPIO_CRL_CNF3_0 (0x1UL << GPIO_CRL_CNF3_Pos) /*!< 0x00004000 */ +#define GPIO_CRL_CNF3_1 (0x2UL << GPIO_CRL_CNF3_Pos) /*!< 0x00008000 */ + +#define GPIO_CRL_CNF4_Pos (18U) +#define GPIO_CRL_CNF4_Msk (0x3UL << GPIO_CRL_CNF4_Pos) /*!< 0x000C0000 */ +#define GPIO_CRL_CNF4 GPIO_CRL_CNF4_Msk /*!< CNF4[1:0] bits (Port x configuration bits, pin 4) */ +#define GPIO_CRL_CNF4_0 (0x1UL << GPIO_CRL_CNF4_Pos) /*!< 0x00040000 */ +#define GPIO_CRL_CNF4_1 (0x2UL << GPIO_CRL_CNF4_Pos) /*!< 0x00080000 */ + +#define GPIO_CRL_CNF5_Pos (22U) +#define GPIO_CRL_CNF5_Msk (0x3UL << GPIO_CRL_CNF5_Pos) /*!< 0x00C00000 */ +#define GPIO_CRL_CNF5 GPIO_CRL_CNF5_Msk /*!< CNF5[1:0] bits (Port x configuration bits, pin 5) */ +#define GPIO_CRL_CNF5_0 (0x1UL << GPIO_CRL_CNF5_Pos) /*!< 0x00400000 */ +#define GPIO_CRL_CNF5_1 (0x2UL << GPIO_CRL_CNF5_Pos) /*!< 0x00800000 */ + +#define GPIO_CRL_CNF6_Pos (26U) +#define GPIO_CRL_CNF6_Msk (0x3UL << GPIO_CRL_CNF6_Pos) /*!< 0x0C000000 */ +#define GPIO_CRL_CNF6 GPIO_CRL_CNF6_Msk /*!< CNF6[1:0] bits (Port x configuration bits, pin 6) */ +#define GPIO_CRL_CNF6_0 (0x1UL << GPIO_CRL_CNF6_Pos) /*!< 0x04000000 */ +#define GPIO_CRL_CNF6_1 (0x2UL << GPIO_CRL_CNF6_Pos) /*!< 0x08000000 */ + +#define GPIO_CRL_CNF7_Pos (30U) +#define GPIO_CRL_CNF7_Msk (0x3UL << GPIO_CRL_CNF7_Pos) /*!< 0xC0000000 */ +#define GPIO_CRL_CNF7 GPIO_CRL_CNF7_Msk /*!< CNF7[1:0] bits (Port x configuration bits, pin 7) */ +#define GPIO_CRL_CNF7_0 (0x1UL << GPIO_CRL_CNF7_Pos) /*!< 0x40000000 */ +#define GPIO_CRL_CNF7_1 (0x2UL << GPIO_CRL_CNF7_Pos) /*!< 0x80000000 */ + +/******************* Bit definition for GPIO_CRH register *******************/ +#define GPIO_CRH_MODE_Pos (0U) +#define GPIO_CRH_MODE_Msk (0x33333333UL << GPIO_CRH_MODE_Pos) /*!< 0x33333333 */ +#define GPIO_CRH_MODE GPIO_CRH_MODE_Msk /*!< Port x mode bits */ + +#define GPIO_CRH_MODE8_Pos (0U) +#define GPIO_CRH_MODE8_Msk (0x3UL << GPIO_CRH_MODE8_Pos) /*!< 0x00000003 */ +#define GPIO_CRH_MODE8 GPIO_CRH_MODE8_Msk /*!< MODE8[1:0] bits (Port x mode bits, pin 8) */ +#define GPIO_CRH_MODE8_0 (0x1UL << GPIO_CRH_MODE8_Pos) /*!< 0x00000001 */ +#define GPIO_CRH_MODE8_1 (0x2UL << GPIO_CRH_MODE8_Pos) /*!< 0x00000002 */ + +#define GPIO_CRH_MODE9_Pos (4U) +#define GPIO_CRH_MODE9_Msk (0x3UL << GPIO_CRH_MODE9_Pos) /*!< 0x00000030 */ +#define GPIO_CRH_MODE9 GPIO_CRH_MODE9_Msk /*!< MODE9[1:0] bits (Port x mode bits, pin 9) */ +#define GPIO_CRH_MODE9_0 (0x1UL << GPIO_CRH_MODE9_Pos) /*!< 0x00000010 */ +#define GPIO_CRH_MODE9_1 (0x2UL << GPIO_CRH_MODE9_Pos) /*!< 0x00000020 */ + +#define GPIO_CRH_MODE10_Pos (8U) +#define GPIO_CRH_MODE10_Msk (0x3UL << GPIO_CRH_MODE10_Pos) /*!< 0x00000300 */ +#define GPIO_CRH_MODE10 GPIO_CRH_MODE10_Msk /*!< MODE10[1:0] bits (Port x mode bits, pin 10) */ +#define GPIO_CRH_MODE10_0 (0x1UL << GPIO_CRH_MODE10_Pos) /*!< 0x00000100 */ +#define GPIO_CRH_MODE10_1 (0x2UL << GPIO_CRH_MODE10_Pos) /*!< 0x00000200 */ + +#define GPIO_CRH_MODE11_Pos (12U) +#define GPIO_CRH_MODE11_Msk (0x3UL << GPIO_CRH_MODE11_Pos) /*!< 0x00003000 */ +#define GPIO_CRH_MODE11 GPIO_CRH_MODE11_Msk /*!< MODE11[1:0] bits (Port x mode bits, pin 11) */ +#define GPIO_CRH_MODE11_0 (0x1UL << GPIO_CRH_MODE11_Pos) /*!< 0x00001000 */ +#define GPIO_CRH_MODE11_1 (0x2UL << GPIO_CRH_MODE11_Pos) /*!< 0x00002000 */ + +#define GPIO_CRH_MODE12_Pos (16U) +#define GPIO_CRH_MODE12_Msk (0x3UL << GPIO_CRH_MODE12_Pos) /*!< 0x00030000 */ +#define GPIO_CRH_MODE12 GPIO_CRH_MODE12_Msk /*!< MODE12[1:0] bits (Port x mode bits, pin 12) */ +#define GPIO_CRH_MODE12_0 (0x1UL << GPIO_CRH_MODE12_Pos) /*!< 0x00010000 */ +#define GPIO_CRH_MODE12_1 (0x2UL << GPIO_CRH_MODE12_Pos) /*!< 0x00020000 */ + +#define GPIO_CRH_MODE13_Pos (20U) +#define GPIO_CRH_MODE13_Msk (0x3UL << GPIO_CRH_MODE13_Pos) /*!< 0x00300000 */ +#define GPIO_CRH_MODE13 GPIO_CRH_MODE13_Msk /*!< MODE13[1:0] bits (Port x mode bits, pin 13) */ +#define GPIO_CRH_MODE13_0 (0x1UL << GPIO_CRH_MODE13_Pos) /*!< 0x00100000 */ +#define GPIO_CRH_MODE13_1 (0x2UL << GPIO_CRH_MODE13_Pos) /*!< 0x00200000 */ + +#define GPIO_CRH_MODE14_Pos (24U) +#define GPIO_CRH_MODE14_Msk (0x3UL << GPIO_CRH_MODE14_Pos) /*!< 0x03000000 */ +#define GPIO_CRH_MODE14 GPIO_CRH_MODE14_Msk /*!< MODE14[1:0] bits (Port x mode bits, pin 14) */ +#define GPIO_CRH_MODE14_0 (0x1UL << GPIO_CRH_MODE14_Pos) /*!< 0x01000000 */ +#define GPIO_CRH_MODE14_1 (0x2UL << GPIO_CRH_MODE14_Pos) /*!< 0x02000000 */ + +#define GPIO_CRH_MODE15_Pos (28U) +#define GPIO_CRH_MODE15_Msk (0x3UL << GPIO_CRH_MODE15_Pos) /*!< 0x30000000 */ +#define GPIO_CRH_MODE15 GPIO_CRH_MODE15_Msk /*!< MODE15[1:0] bits (Port x mode bits, pin 15) */ +#define GPIO_CRH_MODE15_0 (0x1UL << GPIO_CRH_MODE15_Pos) /*!< 0x10000000 */ +#define GPIO_CRH_MODE15_1 (0x2UL << GPIO_CRH_MODE15_Pos) /*!< 0x20000000 */ + +#define GPIO_CRH_CNF_Pos (2U) +#define GPIO_CRH_CNF_Msk (0x33333333UL << GPIO_CRH_CNF_Pos) /*!< 0xCCCCCCCC */ +#define GPIO_CRH_CNF GPIO_CRH_CNF_Msk /*!< Port x configuration bits */ + +#define GPIO_CRH_CNF8_Pos (2U) +#define GPIO_CRH_CNF8_Msk (0x3UL << GPIO_CRH_CNF8_Pos) /*!< 0x0000000C */ +#define GPIO_CRH_CNF8 GPIO_CRH_CNF8_Msk /*!< CNF8[1:0] bits (Port x configuration bits, pin 8) */ +#define GPIO_CRH_CNF8_0 (0x1UL << GPIO_CRH_CNF8_Pos) /*!< 0x00000004 */ +#define GPIO_CRH_CNF8_1 (0x2UL << GPIO_CRH_CNF8_Pos) /*!< 0x00000008 */ + +#define GPIO_CRH_CNF9_Pos (6U) +#define GPIO_CRH_CNF9_Msk (0x3UL << GPIO_CRH_CNF9_Pos) /*!< 0x000000C0 */ +#define GPIO_CRH_CNF9 GPIO_CRH_CNF9_Msk /*!< CNF9[1:0] bits (Port x configuration bits, pin 9) */ +#define GPIO_CRH_CNF9_0 (0x1UL << GPIO_CRH_CNF9_Pos) /*!< 0x00000040 */ +#define GPIO_CRH_CNF9_1 (0x2UL << GPIO_CRH_CNF9_Pos) /*!< 0x00000080 */ + +#define GPIO_CRH_CNF10_Pos (10U) +#define GPIO_CRH_CNF10_Msk (0x3UL << GPIO_CRH_CNF10_Pos) /*!< 0x00000C00 */ +#define GPIO_CRH_CNF10 GPIO_CRH_CNF10_Msk /*!< CNF10[1:0] bits (Port x configuration bits, pin 10) */ +#define GPIO_CRH_CNF10_0 (0x1UL << GPIO_CRH_CNF10_Pos) /*!< 0x00000400 */ +#define GPIO_CRH_CNF10_1 (0x2UL << GPIO_CRH_CNF10_Pos) /*!< 0x00000800 */ + +#define GPIO_CRH_CNF11_Pos (14U) +#define GPIO_CRH_CNF11_Msk (0x3UL << GPIO_CRH_CNF11_Pos) /*!< 0x0000C000 */ +#define GPIO_CRH_CNF11 GPIO_CRH_CNF11_Msk /*!< CNF11[1:0] bits (Port x configuration bits, pin 11) */ +#define GPIO_CRH_CNF11_0 (0x1UL << GPIO_CRH_CNF11_Pos) /*!< 0x00004000 */ +#define GPIO_CRH_CNF11_1 (0x2UL << GPIO_CRH_CNF11_Pos) /*!< 0x00008000 */ + +#define GPIO_CRH_CNF12_Pos (18U) +#define GPIO_CRH_CNF12_Msk (0x3UL << GPIO_CRH_CNF12_Pos) /*!< 0x000C0000 */ +#define GPIO_CRH_CNF12 GPIO_CRH_CNF12_Msk /*!< CNF12[1:0] bits (Port x configuration bits, pin 12) */ +#define GPIO_CRH_CNF12_0 (0x1UL << GPIO_CRH_CNF12_Pos) /*!< 0x00040000 */ +#define GPIO_CRH_CNF12_1 (0x2UL << GPIO_CRH_CNF12_Pos) /*!< 0x00080000 */ + +#define GPIO_CRH_CNF13_Pos (22U) +#define GPIO_CRH_CNF13_Msk (0x3UL << GPIO_CRH_CNF13_Pos) /*!< 0x00C00000 */ +#define GPIO_CRH_CNF13 GPIO_CRH_CNF13_Msk /*!< CNF13[1:0] bits (Port x configuration bits, pin 13) */ +#define GPIO_CRH_CNF13_0 (0x1UL << GPIO_CRH_CNF13_Pos) /*!< 0x00400000 */ +#define GPIO_CRH_CNF13_1 (0x2UL << GPIO_CRH_CNF13_Pos) /*!< 0x00800000 */ + +#define GPIO_CRH_CNF14_Pos (26U) +#define GPIO_CRH_CNF14_Msk (0x3UL << GPIO_CRH_CNF14_Pos) /*!< 0x0C000000 */ +#define GPIO_CRH_CNF14 GPIO_CRH_CNF14_Msk /*!< CNF14[1:0] bits (Port x configuration bits, pin 14) */ +#define GPIO_CRH_CNF14_0 (0x1UL << GPIO_CRH_CNF14_Pos) /*!< 0x04000000 */ +#define GPIO_CRH_CNF14_1 (0x2UL << GPIO_CRH_CNF14_Pos) /*!< 0x08000000 */ + +#define GPIO_CRH_CNF15_Pos (30U) +#define GPIO_CRH_CNF15_Msk (0x3UL << GPIO_CRH_CNF15_Pos) /*!< 0xC0000000 */ +#define GPIO_CRH_CNF15 GPIO_CRH_CNF15_Msk /*!< CNF15[1:0] bits (Port x configuration bits, pin 15) */ +#define GPIO_CRH_CNF15_0 (0x1UL << GPIO_CRH_CNF15_Pos) /*!< 0x40000000 */ +#define GPIO_CRH_CNF15_1 (0x2UL << GPIO_CRH_CNF15_Pos) /*!< 0x80000000 */ + +/*!<****************** Bit definition for GPIO_IDR register *******************/ +#define GPIO_IDR_IDR0_Pos (0U) +#define GPIO_IDR_IDR0_Msk (0x1UL << GPIO_IDR_IDR0_Pos) /*!< 0x00000001 */ +#define GPIO_IDR_IDR0 GPIO_IDR_IDR0_Msk /*!< Port input data, bit 0 */ +#define GPIO_IDR_IDR1_Pos (1U) +#define GPIO_IDR_IDR1_Msk (0x1UL << GPIO_IDR_IDR1_Pos) /*!< 0x00000002 */ +#define GPIO_IDR_IDR1 GPIO_IDR_IDR1_Msk /*!< Port input data, bit 1 */ +#define GPIO_IDR_IDR2_Pos (2U) +#define GPIO_IDR_IDR2_Msk (0x1UL << GPIO_IDR_IDR2_Pos) /*!< 0x00000004 */ +#define GPIO_IDR_IDR2 GPIO_IDR_IDR2_Msk /*!< Port input data, bit 2 */ +#define GPIO_IDR_IDR3_Pos (3U) +#define GPIO_IDR_IDR3_Msk (0x1UL << GPIO_IDR_IDR3_Pos) /*!< 0x00000008 */ +#define GPIO_IDR_IDR3 GPIO_IDR_IDR3_Msk /*!< Port input data, bit 3 */ +#define GPIO_IDR_IDR4_Pos (4U) +#define GPIO_IDR_IDR4_Msk (0x1UL << GPIO_IDR_IDR4_Pos) /*!< 0x00000010 */ +#define GPIO_IDR_IDR4 GPIO_IDR_IDR4_Msk /*!< Port input data, bit 4 */ +#define GPIO_IDR_IDR5_Pos (5U) +#define GPIO_IDR_IDR5_Msk (0x1UL << GPIO_IDR_IDR5_Pos) /*!< 0x00000020 */ +#define GPIO_IDR_IDR5 GPIO_IDR_IDR5_Msk /*!< Port input data, bit 5 */ +#define GPIO_IDR_IDR6_Pos (6U) +#define GPIO_IDR_IDR6_Msk (0x1UL << GPIO_IDR_IDR6_Pos) /*!< 0x00000040 */ +#define GPIO_IDR_IDR6 GPIO_IDR_IDR6_Msk /*!< Port input data, bit 6 */ +#define GPIO_IDR_IDR7_Pos (7U) +#define GPIO_IDR_IDR7_Msk (0x1UL << GPIO_IDR_IDR7_Pos) /*!< 0x00000080 */ +#define GPIO_IDR_IDR7 GPIO_IDR_IDR7_Msk /*!< Port input data, bit 7 */ +#define GPIO_IDR_IDR8_Pos (8U) +#define GPIO_IDR_IDR8_Msk (0x1UL << GPIO_IDR_IDR8_Pos) /*!< 0x00000100 */ +#define GPIO_IDR_IDR8 GPIO_IDR_IDR8_Msk /*!< Port input data, bit 8 */ +#define GPIO_IDR_IDR9_Pos (9U) +#define GPIO_IDR_IDR9_Msk (0x1UL << GPIO_IDR_IDR9_Pos) /*!< 0x00000200 */ +#define GPIO_IDR_IDR9 GPIO_IDR_IDR9_Msk /*!< Port input data, bit 9 */ +#define GPIO_IDR_IDR10_Pos (10U) +#define GPIO_IDR_IDR10_Msk (0x1UL << GPIO_IDR_IDR10_Pos) /*!< 0x00000400 */ +#define GPIO_IDR_IDR10 GPIO_IDR_IDR10_Msk /*!< Port input data, bit 10 */ +#define GPIO_IDR_IDR11_Pos (11U) +#define GPIO_IDR_IDR11_Msk (0x1UL << GPIO_IDR_IDR11_Pos) /*!< 0x00000800 */ +#define GPIO_IDR_IDR11 GPIO_IDR_IDR11_Msk /*!< Port input data, bit 11 */ +#define GPIO_IDR_IDR12_Pos (12U) +#define GPIO_IDR_IDR12_Msk (0x1UL << GPIO_IDR_IDR12_Pos) /*!< 0x00001000 */ +#define GPIO_IDR_IDR12 GPIO_IDR_IDR12_Msk /*!< Port input data, bit 12 */ +#define GPIO_IDR_IDR13_Pos (13U) +#define GPIO_IDR_IDR13_Msk (0x1UL << GPIO_IDR_IDR13_Pos) /*!< 0x00002000 */ +#define GPIO_IDR_IDR13 GPIO_IDR_IDR13_Msk /*!< Port input data, bit 13 */ +#define GPIO_IDR_IDR14_Pos (14U) +#define GPIO_IDR_IDR14_Msk (0x1UL << GPIO_IDR_IDR14_Pos) /*!< 0x00004000 */ +#define GPIO_IDR_IDR14 GPIO_IDR_IDR14_Msk /*!< Port input data, bit 14 */ +#define GPIO_IDR_IDR15_Pos (15U) +#define GPIO_IDR_IDR15_Msk (0x1UL << GPIO_IDR_IDR15_Pos) /*!< 0x00008000 */ +#define GPIO_IDR_IDR15 GPIO_IDR_IDR15_Msk /*!< Port input data, bit 15 */ + +/******************* Bit definition for GPIO_ODR register *******************/ +#define GPIO_ODR_ODR0_Pos (0U) +#define GPIO_ODR_ODR0_Msk (0x1UL << GPIO_ODR_ODR0_Pos) /*!< 0x00000001 */ +#define GPIO_ODR_ODR0 GPIO_ODR_ODR0_Msk /*!< Port output data, bit 0 */ +#define GPIO_ODR_ODR1_Pos (1U) +#define GPIO_ODR_ODR1_Msk (0x1UL << GPIO_ODR_ODR1_Pos) /*!< 0x00000002 */ +#define GPIO_ODR_ODR1 GPIO_ODR_ODR1_Msk /*!< Port output data, bit 1 */ +#define GPIO_ODR_ODR2_Pos (2U) +#define GPIO_ODR_ODR2_Msk (0x1UL << GPIO_ODR_ODR2_Pos) /*!< 0x00000004 */ +#define GPIO_ODR_ODR2 GPIO_ODR_ODR2_Msk /*!< Port output data, bit 2 */ +#define GPIO_ODR_ODR3_Pos (3U) +#define GPIO_ODR_ODR3_Msk (0x1UL << GPIO_ODR_ODR3_Pos) /*!< 0x00000008 */ +#define GPIO_ODR_ODR3 GPIO_ODR_ODR3_Msk /*!< Port output data, bit 3 */ +#define GPIO_ODR_ODR4_Pos (4U) +#define GPIO_ODR_ODR4_Msk (0x1UL << GPIO_ODR_ODR4_Pos) /*!< 0x00000010 */ +#define GPIO_ODR_ODR4 GPIO_ODR_ODR4_Msk /*!< Port output data, bit 4 */ +#define GPIO_ODR_ODR5_Pos (5U) +#define GPIO_ODR_ODR5_Msk (0x1UL << GPIO_ODR_ODR5_Pos) /*!< 0x00000020 */ +#define GPIO_ODR_ODR5 GPIO_ODR_ODR5_Msk /*!< Port output data, bit 5 */ +#define GPIO_ODR_ODR6_Pos (6U) +#define GPIO_ODR_ODR6_Msk (0x1UL << GPIO_ODR_ODR6_Pos) /*!< 0x00000040 */ +#define GPIO_ODR_ODR6 GPIO_ODR_ODR6_Msk /*!< Port output data, bit 6 */ +#define GPIO_ODR_ODR7_Pos (7U) +#define GPIO_ODR_ODR7_Msk (0x1UL << GPIO_ODR_ODR7_Pos) /*!< 0x00000080 */ +#define GPIO_ODR_ODR7 GPIO_ODR_ODR7_Msk /*!< Port output data, bit 7 */ +#define GPIO_ODR_ODR8_Pos (8U) +#define GPIO_ODR_ODR8_Msk (0x1UL << GPIO_ODR_ODR8_Pos) /*!< 0x00000100 */ +#define GPIO_ODR_ODR8 GPIO_ODR_ODR8_Msk /*!< Port output data, bit 8 */ +#define GPIO_ODR_ODR9_Pos (9U) +#define GPIO_ODR_ODR9_Msk (0x1UL << GPIO_ODR_ODR9_Pos) /*!< 0x00000200 */ +#define GPIO_ODR_ODR9 GPIO_ODR_ODR9_Msk /*!< Port output data, bit 9 */ +#define GPIO_ODR_ODR10_Pos (10U) +#define GPIO_ODR_ODR10_Msk (0x1UL << GPIO_ODR_ODR10_Pos) /*!< 0x00000400 */ +#define GPIO_ODR_ODR10 GPIO_ODR_ODR10_Msk /*!< Port output data, bit 10 */ +#define GPIO_ODR_ODR11_Pos (11U) +#define GPIO_ODR_ODR11_Msk (0x1UL << GPIO_ODR_ODR11_Pos) /*!< 0x00000800 */ +#define GPIO_ODR_ODR11 GPIO_ODR_ODR11_Msk /*!< Port output data, bit 11 */ +#define GPIO_ODR_ODR12_Pos (12U) +#define GPIO_ODR_ODR12_Msk (0x1UL << GPIO_ODR_ODR12_Pos) /*!< 0x00001000 */ +#define GPIO_ODR_ODR12 GPIO_ODR_ODR12_Msk /*!< Port output data, bit 12 */ +#define GPIO_ODR_ODR13_Pos (13U) +#define GPIO_ODR_ODR13_Msk (0x1UL << GPIO_ODR_ODR13_Pos) /*!< 0x00002000 */ +#define GPIO_ODR_ODR13 GPIO_ODR_ODR13_Msk /*!< Port output data, bit 13 */ +#define GPIO_ODR_ODR14_Pos (14U) +#define GPIO_ODR_ODR14_Msk (0x1UL << GPIO_ODR_ODR14_Pos) /*!< 0x00004000 */ +#define GPIO_ODR_ODR14 GPIO_ODR_ODR14_Msk /*!< Port output data, bit 14 */ +#define GPIO_ODR_ODR15_Pos (15U) +#define GPIO_ODR_ODR15_Msk (0x1UL << GPIO_ODR_ODR15_Pos) /*!< 0x00008000 */ +#define GPIO_ODR_ODR15 GPIO_ODR_ODR15_Msk /*!< Port output data, bit 15 */ + +/****************** Bit definition for GPIO_BSRR register *******************/ +#define GPIO_BSRR_BS0_Pos (0U) +#define GPIO_BSRR_BS0_Msk (0x1UL << GPIO_BSRR_BS0_Pos) /*!< 0x00000001 */ +#define GPIO_BSRR_BS0 GPIO_BSRR_BS0_Msk /*!< Port x Set bit 0 */ +#define GPIO_BSRR_BS1_Pos (1U) +#define GPIO_BSRR_BS1_Msk (0x1UL << GPIO_BSRR_BS1_Pos) /*!< 0x00000002 */ +#define GPIO_BSRR_BS1 GPIO_BSRR_BS1_Msk /*!< Port x Set bit 1 */ +#define GPIO_BSRR_BS2_Pos (2U) +#define GPIO_BSRR_BS2_Msk (0x1UL << GPIO_BSRR_BS2_Pos) /*!< 0x00000004 */ +#define GPIO_BSRR_BS2 GPIO_BSRR_BS2_Msk /*!< Port x Set bit 2 */ +#define GPIO_BSRR_BS3_Pos (3U) +#define GPIO_BSRR_BS3_Msk (0x1UL << GPIO_BSRR_BS3_Pos) /*!< 0x00000008 */ +#define GPIO_BSRR_BS3 GPIO_BSRR_BS3_Msk /*!< Port x Set bit 3 */ +#define GPIO_BSRR_BS4_Pos (4U) +#define GPIO_BSRR_BS4_Msk (0x1UL << GPIO_BSRR_BS4_Pos) /*!< 0x00000010 */ +#define GPIO_BSRR_BS4 GPIO_BSRR_BS4_Msk /*!< Port x Set bit 4 */ +#define GPIO_BSRR_BS5_Pos (5U) +#define GPIO_BSRR_BS5_Msk (0x1UL << GPIO_BSRR_BS5_Pos) /*!< 0x00000020 */ +#define GPIO_BSRR_BS5 GPIO_BSRR_BS5_Msk /*!< Port x Set bit 5 */ +#define GPIO_BSRR_BS6_Pos (6U) +#define GPIO_BSRR_BS6_Msk (0x1UL << GPIO_BSRR_BS6_Pos) /*!< 0x00000040 */ +#define GPIO_BSRR_BS6 GPIO_BSRR_BS6_Msk /*!< Port x Set bit 6 */ +#define GPIO_BSRR_BS7_Pos (7U) +#define GPIO_BSRR_BS7_Msk (0x1UL << GPIO_BSRR_BS7_Pos) /*!< 0x00000080 */ +#define GPIO_BSRR_BS7 GPIO_BSRR_BS7_Msk /*!< Port x Set bit 7 */ +#define GPIO_BSRR_BS8_Pos (8U) +#define GPIO_BSRR_BS8_Msk (0x1UL << GPIO_BSRR_BS8_Pos) /*!< 0x00000100 */ +#define GPIO_BSRR_BS8 GPIO_BSRR_BS8_Msk /*!< Port x Set bit 8 */ +#define GPIO_BSRR_BS9_Pos (9U) +#define GPIO_BSRR_BS9_Msk (0x1UL << GPIO_BSRR_BS9_Pos) /*!< 0x00000200 */ +#define GPIO_BSRR_BS9 GPIO_BSRR_BS9_Msk /*!< Port x Set bit 9 */ +#define GPIO_BSRR_BS10_Pos (10U) +#define GPIO_BSRR_BS10_Msk (0x1UL << GPIO_BSRR_BS10_Pos) /*!< 0x00000400 */ +#define GPIO_BSRR_BS10 GPIO_BSRR_BS10_Msk /*!< Port x Set bit 10 */ +#define GPIO_BSRR_BS11_Pos (11U) +#define GPIO_BSRR_BS11_Msk (0x1UL << GPIO_BSRR_BS11_Pos) /*!< 0x00000800 */ +#define GPIO_BSRR_BS11 GPIO_BSRR_BS11_Msk /*!< Port x Set bit 11 */ +#define GPIO_BSRR_BS12_Pos (12U) +#define GPIO_BSRR_BS12_Msk (0x1UL << GPIO_BSRR_BS12_Pos) /*!< 0x00001000 */ +#define GPIO_BSRR_BS12 GPIO_BSRR_BS12_Msk /*!< Port x Set bit 12 */ +#define GPIO_BSRR_BS13_Pos (13U) +#define GPIO_BSRR_BS13_Msk (0x1UL << GPIO_BSRR_BS13_Pos) /*!< 0x00002000 */ +#define GPIO_BSRR_BS13 GPIO_BSRR_BS13_Msk /*!< Port x Set bit 13 */ +#define GPIO_BSRR_BS14_Pos (14U) +#define GPIO_BSRR_BS14_Msk (0x1UL << GPIO_BSRR_BS14_Pos) /*!< 0x00004000 */ +#define GPIO_BSRR_BS14 GPIO_BSRR_BS14_Msk /*!< Port x Set bit 14 */ +#define GPIO_BSRR_BS15_Pos (15U) +#define GPIO_BSRR_BS15_Msk (0x1UL << GPIO_BSRR_BS15_Pos) /*!< 0x00008000 */ +#define GPIO_BSRR_BS15 GPIO_BSRR_BS15_Msk /*!< Port x Set bit 15 */ + +#define GPIO_BSRR_BR0_Pos (16U) +#define GPIO_BSRR_BR0_Msk (0x1UL << GPIO_BSRR_BR0_Pos) /*!< 0x00010000 */ +#define GPIO_BSRR_BR0 GPIO_BSRR_BR0_Msk /*!< Port x Reset bit 0 */ +#define GPIO_BSRR_BR1_Pos (17U) +#define GPIO_BSRR_BR1_Msk (0x1UL << GPIO_BSRR_BR1_Pos) /*!< 0x00020000 */ +#define GPIO_BSRR_BR1 GPIO_BSRR_BR1_Msk /*!< Port x Reset bit 1 */ +#define GPIO_BSRR_BR2_Pos (18U) +#define GPIO_BSRR_BR2_Msk (0x1UL << GPIO_BSRR_BR2_Pos) /*!< 0x00040000 */ +#define GPIO_BSRR_BR2 GPIO_BSRR_BR2_Msk /*!< Port x Reset bit 2 */ +#define GPIO_BSRR_BR3_Pos (19U) +#define GPIO_BSRR_BR3_Msk (0x1UL << GPIO_BSRR_BR3_Pos) /*!< 0x00080000 */ +#define GPIO_BSRR_BR3 GPIO_BSRR_BR3_Msk /*!< Port x Reset bit 3 */ +#define GPIO_BSRR_BR4_Pos (20U) +#define GPIO_BSRR_BR4_Msk (0x1UL << GPIO_BSRR_BR4_Pos) /*!< 0x00100000 */ +#define GPIO_BSRR_BR4 GPIO_BSRR_BR4_Msk /*!< Port x Reset bit 4 */ +#define GPIO_BSRR_BR5_Pos (21U) +#define GPIO_BSRR_BR5_Msk (0x1UL << GPIO_BSRR_BR5_Pos) /*!< 0x00200000 */ +#define GPIO_BSRR_BR5 GPIO_BSRR_BR5_Msk /*!< Port x Reset bit 5 */ +#define GPIO_BSRR_BR6_Pos (22U) +#define GPIO_BSRR_BR6_Msk (0x1UL << GPIO_BSRR_BR6_Pos) /*!< 0x00400000 */ +#define GPIO_BSRR_BR6 GPIO_BSRR_BR6_Msk /*!< Port x Reset bit 6 */ +#define GPIO_BSRR_BR7_Pos (23U) +#define GPIO_BSRR_BR7_Msk (0x1UL << GPIO_BSRR_BR7_Pos) /*!< 0x00800000 */ +#define GPIO_BSRR_BR7 GPIO_BSRR_BR7_Msk /*!< Port x Reset bit 7 */ +#define GPIO_BSRR_BR8_Pos (24U) +#define GPIO_BSRR_BR8_Msk (0x1UL << GPIO_BSRR_BR8_Pos) /*!< 0x01000000 */ +#define GPIO_BSRR_BR8 GPIO_BSRR_BR8_Msk /*!< Port x Reset bit 8 */ +#define GPIO_BSRR_BR9_Pos (25U) +#define GPIO_BSRR_BR9_Msk (0x1UL << GPIO_BSRR_BR9_Pos) /*!< 0x02000000 */ +#define GPIO_BSRR_BR9 GPIO_BSRR_BR9_Msk /*!< Port x Reset bit 9 */ +#define GPIO_BSRR_BR10_Pos (26U) +#define GPIO_BSRR_BR10_Msk (0x1UL << GPIO_BSRR_BR10_Pos) /*!< 0x04000000 */ +#define GPIO_BSRR_BR10 GPIO_BSRR_BR10_Msk /*!< Port x Reset bit 10 */ +#define GPIO_BSRR_BR11_Pos (27U) +#define GPIO_BSRR_BR11_Msk (0x1UL << GPIO_BSRR_BR11_Pos) /*!< 0x08000000 */ +#define GPIO_BSRR_BR11 GPIO_BSRR_BR11_Msk /*!< Port x Reset bit 11 */ +#define GPIO_BSRR_BR12_Pos (28U) +#define GPIO_BSRR_BR12_Msk (0x1UL << GPIO_BSRR_BR12_Pos) /*!< 0x10000000 */ +#define GPIO_BSRR_BR12 GPIO_BSRR_BR12_Msk /*!< Port x Reset bit 12 */ +#define GPIO_BSRR_BR13_Pos (29U) +#define GPIO_BSRR_BR13_Msk (0x1UL << GPIO_BSRR_BR13_Pos) /*!< 0x20000000 */ +#define GPIO_BSRR_BR13 GPIO_BSRR_BR13_Msk /*!< Port x Reset bit 13 */ +#define GPIO_BSRR_BR14_Pos (30U) +#define GPIO_BSRR_BR14_Msk (0x1UL << GPIO_BSRR_BR14_Pos) /*!< 0x40000000 */ +#define GPIO_BSRR_BR14 GPIO_BSRR_BR14_Msk /*!< Port x Reset bit 14 */ +#define GPIO_BSRR_BR15_Pos (31U) +#define GPIO_BSRR_BR15_Msk (0x1UL << GPIO_BSRR_BR15_Pos) /*!< 0x80000000 */ +#define GPIO_BSRR_BR15 GPIO_BSRR_BR15_Msk /*!< Port x Reset bit 15 */ + +/******************* Bit definition for GPIO_BRR register *******************/ +#define GPIO_BRR_BR0_Pos (0U) +#define GPIO_BRR_BR0_Msk (0x1UL << GPIO_BRR_BR0_Pos) /*!< 0x00000001 */ +#define GPIO_BRR_BR0 GPIO_BRR_BR0_Msk /*!< Port x Reset bit 0 */ +#define GPIO_BRR_BR1_Pos (1U) +#define GPIO_BRR_BR1_Msk (0x1UL << GPIO_BRR_BR1_Pos) /*!< 0x00000002 */ +#define GPIO_BRR_BR1 GPIO_BRR_BR1_Msk /*!< Port x Reset bit 1 */ +#define GPIO_BRR_BR2_Pos (2U) +#define GPIO_BRR_BR2_Msk (0x1UL << GPIO_BRR_BR2_Pos) /*!< 0x00000004 */ +#define GPIO_BRR_BR2 GPIO_BRR_BR2_Msk /*!< Port x Reset bit 2 */ +#define GPIO_BRR_BR3_Pos (3U) +#define GPIO_BRR_BR3_Msk (0x1UL << GPIO_BRR_BR3_Pos) /*!< 0x00000008 */ +#define GPIO_BRR_BR3 GPIO_BRR_BR3_Msk /*!< Port x Reset bit 3 */ +#define GPIO_BRR_BR4_Pos (4U) +#define GPIO_BRR_BR4_Msk (0x1UL << GPIO_BRR_BR4_Pos) /*!< 0x00000010 */ +#define GPIO_BRR_BR4 GPIO_BRR_BR4_Msk /*!< Port x Reset bit 4 */ +#define GPIO_BRR_BR5_Pos (5U) +#define GPIO_BRR_BR5_Msk (0x1UL << GPIO_BRR_BR5_Pos) /*!< 0x00000020 */ +#define GPIO_BRR_BR5 GPIO_BRR_BR5_Msk /*!< Port x Reset bit 5 */ +#define GPIO_BRR_BR6_Pos (6U) +#define GPIO_BRR_BR6_Msk (0x1UL << GPIO_BRR_BR6_Pos) /*!< 0x00000040 */ +#define GPIO_BRR_BR6 GPIO_BRR_BR6_Msk /*!< Port x Reset bit 6 */ +#define GPIO_BRR_BR7_Pos (7U) +#define GPIO_BRR_BR7_Msk (0x1UL << GPIO_BRR_BR7_Pos) /*!< 0x00000080 */ +#define GPIO_BRR_BR7 GPIO_BRR_BR7_Msk /*!< Port x Reset bit 7 */ +#define GPIO_BRR_BR8_Pos (8U) +#define GPIO_BRR_BR8_Msk (0x1UL << GPIO_BRR_BR8_Pos) /*!< 0x00000100 */ +#define GPIO_BRR_BR8 GPIO_BRR_BR8_Msk /*!< Port x Reset bit 8 */ +#define GPIO_BRR_BR9_Pos (9U) +#define GPIO_BRR_BR9_Msk (0x1UL << GPIO_BRR_BR9_Pos) /*!< 0x00000200 */ +#define GPIO_BRR_BR9 GPIO_BRR_BR9_Msk /*!< Port x Reset bit 9 */ +#define GPIO_BRR_BR10_Pos (10U) +#define GPIO_BRR_BR10_Msk (0x1UL << GPIO_BRR_BR10_Pos) /*!< 0x00000400 */ +#define GPIO_BRR_BR10 GPIO_BRR_BR10_Msk /*!< Port x Reset bit 10 */ +#define GPIO_BRR_BR11_Pos (11U) +#define GPIO_BRR_BR11_Msk (0x1UL << GPIO_BRR_BR11_Pos) /*!< 0x00000800 */ +#define GPIO_BRR_BR11 GPIO_BRR_BR11_Msk /*!< Port x Reset bit 11 */ +#define GPIO_BRR_BR12_Pos (12U) +#define GPIO_BRR_BR12_Msk (0x1UL << GPIO_BRR_BR12_Pos) /*!< 0x00001000 */ +#define GPIO_BRR_BR12 GPIO_BRR_BR12_Msk /*!< Port x Reset bit 12 */ +#define GPIO_BRR_BR13_Pos (13U) +#define GPIO_BRR_BR13_Msk (0x1UL << GPIO_BRR_BR13_Pos) /*!< 0x00002000 */ +#define GPIO_BRR_BR13 GPIO_BRR_BR13_Msk /*!< Port x Reset bit 13 */ +#define GPIO_BRR_BR14_Pos (14U) +#define GPIO_BRR_BR14_Msk (0x1UL << GPIO_BRR_BR14_Pos) /*!< 0x00004000 */ +#define GPIO_BRR_BR14 GPIO_BRR_BR14_Msk /*!< Port x Reset bit 14 */ +#define GPIO_BRR_BR15_Pos (15U) +#define GPIO_BRR_BR15_Msk (0x1UL << GPIO_BRR_BR15_Pos) /*!< 0x00008000 */ +#define GPIO_BRR_BR15 GPIO_BRR_BR15_Msk /*!< Port x Reset bit 15 */ + +/****************** Bit definition for GPIO_LCKR register *******************/ +#define GPIO_LCKR_LCK0_Pos (0U) +#define GPIO_LCKR_LCK0_Msk (0x1UL << GPIO_LCKR_LCK0_Pos) /*!< 0x00000001 */ +#define GPIO_LCKR_LCK0 GPIO_LCKR_LCK0_Msk /*!< Port x Lock bit 0 */ +#define GPIO_LCKR_LCK1_Pos (1U) +#define GPIO_LCKR_LCK1_Msk (0x1UL << GPIO_LCKR_LCK1_Pos) /*!< 0x00000002 */ +#define GPIO_LCKR_LCK1 GPIO_LCKR_LCK1_Msk /*!< Port x Lock bit 1 */ +#define GPIO_LCKR_LCK2_Pos (2U) +#define GPIO_LCKR_LCK2_Msk (0x1UL << GPIO_LCKR_LCK2_Pos) /*!< 0x00000004 */ +#define GPIO_LCKR_LCK2 GPIO_LCKR_LCK2_Msk /*!< Port x Lock bit 2 */ +#define GPIO_LCKR_LCK3_Pos (3U) +#define GPIO_LCKR_LCK3_Msk (0x1UL << GPIO_LCKR_LCK3_Pos) /*!< 0x00000008 */ +#define GPIO_LCKR_LCK3 GPIO_LCKR_LCK3_Msk /*!< Port x Lock bit 3 */ +#define GPIO_LCKR_LCK4_Pos (4U) +#define GPIO_LCKR_LCK4_Msk (0x1UL << GPIO_LCKR_LCK4_Pos) /*!< 0x00000010 */ +#define GPIO_LCKR_LCK4 GPIO_LCKR_LCK4_Msk /*!< Port x Lock bit 4 */ +#define GPIO_LCKR_LCK5_Pos (5U) +#define GPIO_LCKR_LCK5_Msk (0x1UL << GPIO_LCKR_LCK5_Pos) /*!< 0x00000020 */ +#define GPIO_LCKR_LCK5 GPIO_LCKR_LCK5_Msk /*!< Port x Lock bit 5 */ +#define GPIO_LCKR_LCK6_Pos (6U) +#define GPIO_LCKR_LCK6_Msk (0x1UL << GPIO_LCKR_LCK6_Pos) /*!< 0x00000040 */ +#define GPIO_LCKR_LCK6 GPIO_LCKR_LCK6_Msk /*!< Port x Lock bit 6 */ +#define GPIO_LCKR_LCK7_Pos (7U) +#define GPIO_LCKR_LCK7_Msk (0x1UL << GPIO_LCKR_LCK7_Pos) /*!< 0x00000080 */ +#define GPIO_LCKR_LCK7 GPIO_LCKR_LCK7_Msk /*!< Port x Lock bit 7 */ +#define GPIO_LCKR_LCK8_Pos (8U) +#define GPIO_LCKR_LCK8_Msk (0x1UL << GPIO_LCKR_LCK8_Pos) /*!< 0x00000100 */ +#define GPIO_LCKR_LCK8 GPIO_LCKR_LCK8_Msk /*!< Port x Lock bit 8 */ +#define GPIO_LCKR_LCK9_Pos (9U) +#define GPIO_LCKR_LCK9_Msk (0x1UL << GPIO_LCKR_LCK9_Pos) /*!< 0x00000200 */ +#define GPIO_LCKR_LCK9 GPIO_LCKR_LCK9_Msk /*!< Port x Lock bit 9 */ +#define GPIO_LCKR_LCK10_Pos (10U) +#define GPIO_LCKR_LCK10_Msk (0x1UL << GPIO_LCKR_LCK10_Pos) /*!< 0x00000400 */ +#define GPIO_LCKR_LCK10 GPIO_LCKR_LCK10_Msk /*!< Port x Lock bit 10 */ +#define GPIO_LCKR_LCK11_Pos (11U) +#define GPIO_LCKR_LCK11_Msk (0x1UL << GPIO_LCKR_LCK11_Pos) /*!< 0x00000800 */ +#define GPIO_LCKR_LCK11 GPIO_LCKR_LCK11_Msk /*!< Port x Lock bit 11 */ +#define GPIO_LCKR_LCK12_Pos (12U) +#define GPIO_LCKR_LCK12_Msk (0x1UL << GPIO_LCKR_LCK12_Pos) /*!< 0x00001000 */ +#define GPIO_LCKR_LCK12 GPIO_LCKR_LCK12_Msk /*!< Port x Lock bit 12 */ +#define GPIO_LCKR_LCK13_Pos (13U) +#define GPIO_LCKR_LCK13_Msk (0x1UL << GPIO_LCKR_LCK13_Pos) /*!< 0x00002000 */ +#define GPIO_LCKR_LCK13 GPIO_LCKR_LCK13_Msk /*!< Port x Lock bit 13 */ +#define GPIO_LCKR_LCK14_Pos (14U) +#define GPIO_LCKR_LCK14_Msk (0x1UL << GPIO_LCKR_LCK14_Pos) /*!< 0x00004000 */ +#define GPIO_LCKR_LCK14 GPIO_LCKR_LCK14_Msk /*!< Port x Lock bit 14 */ +#define GPIO_LCKR_LCK15_Pos (15U) +#define GPIO_LCKR_LCK15_Msk (0x1UL << GPIO_LCKR_LCK15_Pos) /*!< 0x00008000 */ +#define GPIO_LCKR_LCK15 GPIO_LCKR_LCK15_Msk /*!< Port x Lock bit 15 */ +#define GPIO_LCKR_LCKK_Pos (16U) +#define GPIO_LCKR_LCKK_Msk (0x1UL << GPIO_LCKR_LCKK_Pos) /*!< 0x00010000 */ +#define GPIO_LCKR_LCKK GPIO_LCKR_LCKK_Msk /*!< Lock key */ + +/*----------------------------------------------------------------------------*/ + +/****************** Bit definition for AFIO_EVCR register *******************/ +#define AFIO_EVCR_PIN_Pos (0U) +#define AFIO_EVCR_PIN_Msk (0xFUL << AFIO_EVCR_PIN_Pos) /*!< 0x0000000F */ +#define AFIO_EVCR_PIN AFIO_EVCR_PIN_Msk /*!< PIN[3:0] bits (Pin selection) */ +#define AFIO_EVCR_PIN_0 (0x1UL << AFIO_EVCR_PIN_Pos) /*!< 0x00000001 */ +#define AFIO_EVCR_PIN_1 (0x2UL << AFIO_EVCR_PIN_Pos) /*!< 0x00000002 */ +#define AFIO_EVCR_PIN_2 (0x4UL << AFIO_EVCR_PIN_Pos) /*!< 0x00000004 */ +#define AFIO_EVCR_PIN_3 (0x8UL << AFIO_EVCR_PIN_Pos) /*!< 0x00000008 */ + +/*!< PIN configuration */ +#define AFIO_EVCR_PIN_PX0 0x00000000U /*!< Pin 0 selected */ +#define AFIO_EVCR_PIN_PX1_Pos (0U) +#define AFIO_EVCR_PIN_PX1_Msk (0x1UL << AFIO_EVCR_PIN_PX1_Pos) /*!< 0x00000001 */ +#define AFIO_EVCR_PIN_PX1 AFIO_EVCR_PIN_PX1_Msk /*!< Pin 1 selected */ +#define AFIO_EVCR_PIN_PX2_Pos (1U) +#define AFIO_EVCR_PIN_PX2_Msk (0x1UL << AFIO_EVCR_PIN_PX2_Pos) /*!< 0x00000002 */ +#define AFIO_EVCR_PIN_PX2 AFIO_EVCR_PIN_PX2_Msk /*!< Pin 2 selected */ +#define AFIO_EVCR_PIN_PX3_Pos (0U) +#define AFIO_EVCR_PIN_PX3_Msk (0x3UL << AFIO_EVCR_PIN_PX3_Pos) /*!< 0x00000003 */ +#define AFIO_EVCR_PIN_PX3 AFIO_EVCR_PIN_PX3_Msk /*!< Pin 3 selected */ +#define AFIO_EVCR_PIN_PX4_Pos (2U) +#define AFIO_EVCR_PIN_PX4_Msk (0x1UL << AFIO_EVCR_PIN_PX4_Pos) /*!< 0x00000004 */ +#define AFIO_EVCR_PIN_PX4 AFIO_EVCR_PIN_PX4_Msk /*!< Pin 4 selected */ +#define AFIO_EVCR_PIN_PX5_Pos (0U) +#define AFIO_EVCR_PIN_PX5_Msk (0x5UL << AFIO_EVCR_PIN_PX5_Pos) /*!< 0x00000005 */ +#define AFIO_EVCR_PIN_PX5 AFIO_EVCR_PIN_PX5_Msk /*!< Pin 5 selected */ +#define AFIO_EVCR_PIN_PX6_Pos (1U) +#define AFIO_EVCR_PIN_PX6_Msk (0x3UL << AFIO_EVCR_PIN_PX6_Pos) /*!< 0x00000006 */ +#define AFIO_EVCR_PIN_PX6 AFIO_EVCR_PIN_PX6_Msk /*!< Pin 6 selected */ +#define AFIO_EVCR_PIN_PX7_Pos (0U) +#define AFIO_EVCR_PIN_PX7_Msk (0x7UL << AFIO_EVCR_PIN_PX7_Pos) /*!< 0x00000007 */ +#define AFIO_EVCR_PIN_PX7 AFIO_EVCR_PIN_PX7_Msk /*!< Pin 7 selected */ +#define AFIO_EVCR_PIN_PX8_Pos (3U) +#define AFIO_EVCR_PIN_PX8_Msk (0x1UL << AFIO_EVCR_PIN_PX8_Pos) /*!< 0x00000008 */ +#define AFIO_EVCR_PIN_PX8 AFIO_EVCR_PIN_PX8_Msk /*!< Pin 8 selected */ +#define AFIO_EVCR_PIN_PX9_Pos (0U) +#define AFIO_EVCR_PIN_PX9_Msk (0x9UL << AFIO_EVCR_PIN_PX9_Pos) /*!< 0x00000009 */ +#define AFIO_EVCR_PIN_PX9 AFIO_EVCR_PIN_PX9_Msk /*!< Pin 9 selected */ +#define AFIO_EVCR_PIN_PX10_Pos (1U) +#define AFIO_EVCR_PIN_PX10_Msk (0x5UL << AFIO_EVCR_PIN_PX10_Pos) /*!< 0x0000000A */ +#define AFIO_EVCR_PIN_PX10 AFIO_EVCR_PIN_PX10_Msk /*!< Pin 10 selected */ +#define AFIO_EVCR_PIN_PX11_Pos (0U) +#define AFIO_EVCR_PIN_PX11_Msk (0xBUL << AFIO_EVCR_PIN_PX11_Pos) /*!< 0x0000000B */ +#define AFIO_EVCR_PIN_PX11 AFIO_EVCR_PIN_PX11_Msk /*!< Pin 11 selected */ +#define AFIO_EVCR_PIN_PX12_Pos (2U) +#define AFIO_EVCR_PIN_PX12_Msk (0x3UL << AFIO_EVCR_PIN_PX12_Pos) /*!< 0x0000000C */ +#define AFIO_EVCR_PIN_PX12 AFIO_EVCR_PIN_PX12_Msk /*!< Pin 12 selected */ +#define AFIO_EVCR_PIN_PX13_Pos (0U) +#define AFIO_EVCR_PIN_PX13_Msk (0xDUL << AFIO_EVCR_PIN_PX13_Pos) /*!< 0x0000000D */ +#define AFIO_EVCR_PIN_PX13 AFIO_EVCR_PIN_PX13_Msk /*!< Pin 13 selected */ +#define AFIO_EVCR_PIN_PX14_Pos (1U) +#define AFIO_EVCR_PIN_PX14_Msk (0x7UL << AFIO_EVCR_PIN_PX14_Pos) /*!< 0x0000000E */ +#define AFIO_EVCR_PIN_PX14 AFIO_EVCR_PIN_PX14_Msk /*!< Pin 14 selected */ +#define AFIO_EVCR_PIN_PX15_Pos (0U) +#define AFIO_EVCR_PIN_PX15_Msk (0xFUL << AFIO_EVCR_PIN_PX15_Pos) /*!< 0x0000000F */ +#define AFIO_EVCR_PIN_PX15 AFIO_EVCR_PIN_PX15_Msk /*!< Pin 15 selected */ + +#define AFIO_EVCR_PORT_Pos (4U) +#define AFIO_EVCR_PORT_Msk (0x7UL << AFIO_EVCR_PORT_Pos) /*!< 0x00000070 */ +#define AFIO_EVCR_PORT AFIO_EVCR_PORT_Msk /*!< PORT[2:0] bits (Port selection) */ +#define AFIO_EVCR_PORT_0 (0x1UL << AFIO_EVCR_PORT_Pos) /*!< 0x00000010 */ +#define AFIO_EVCR_PORT_1 (0x2UL << AFIO_EVCR_PORT_Pos) /*!< 0x00000020 */ +#define AFIO_EVCR_PORT_2 (0x4UL << AFIO_EVCR_PORT_Pos) /*!< 0x00000040 */ + +/*!< PORT configuration */ +#define AFIO_EVCR_PORT_PA 0x00000000 /*!< Port A selected */ +#define AFIO_EVCR_PORT_PB_Pos (4U) +#define AFIO_EVCR_PORT_PB_Msk (0x1UL << AFIO_EVCR_PORT_PB_Pos) /*!< 0x00000010 */ +#define AFIO_EVCR_PORT_PB AFIO_EVCR_PORT_PB_Msk /*!< Port B selected */ +#define AFIO_EVCR_PORT_PC_Pos (5U) +#define AFIO_EVCR_PORT_PC_Msk (0x1UL << AFIO_EVCR_PORT_PC_Pos) /*!< 0x00000020 */ +#define AFIO_EVCR_PORT_PC AFIO_EVCR_PORT_PC_Msk /*!< Port C selected */ +#define AFIO_EVCR_PORT_PD_Pos (4U) +#define AFIO_EVCR_PORT_PD_Msk (0x3UL << AFIO_EVCR_PORT_PD_Pos) /*!< 0x00000030 */ +#define AFIO_EVCR_PORT_PD AFIO_EVCR_PORT_PD_Msk /*!< Port D selected */ +#define AFIO_EVCR_PORT_PE_Pos (6U) +#define AFIO_EVCR_PORT_PE_Msk (0x1UL << AFIO_EVCR_PORT_PE_Pos) /*!< 0x00000040 */ +#define AFIO_EVCR_PORT_PE AFIO_EVCR_PORT_PE_Msk /*!< Port E selected */ + +#define AFIO_EVCR_EVOE_Pos (7U) +#define AFIO_EVCR_EVOE_Msk (0x1UL << AFIO_EVCR_EVOE_Pos) /*!< 0x00000080 */ +#define AFIO_EVCR_EVOE AFIO_EVCR_EVOE_Msk /*!< Event Output Enable */ + +/****************** Bit definition for AFIO_MAPR register *******************/ +#define AFIO_MAPR_SPI1_REMAP_Pos (0U) +#define AFIO_MAPR_SPI1_REMAP_Msk (0x1UL << AFIO_MAPR_SPI1_REMAP_Pos) /*!< 0x00000001 */ +#define AFIO_MAPR_SPI1_REMAP AFIO_MAPR_SPI1_REMAP_Msk /*!< SPI1 remapping */ +#define AFIO_MAPR_I2C1_REMAP_Pos (1U) +#define AFIO_MAPR_I2C1_REMAP_Msk (0x1UL << AFIO_MAPR_I2C1_REMAP_Pos) /*!< 0x00000002 */ +#define AFIO_MAPR_I2C1_REMAP AFIO_MAPR_I2C1_REMAP_Msk /*!< I2C1 remapping */ +#define AFIO_MAPR_USART1_REMAP_Pos (2U) +#define AFIO_MAPR_USART1_REMAP_Msk (0x1UL << AFIO_MAPR_USART1_REMAP_Pos) /*!< 0x00000004 */ +#define AFIO_MAPR_USART1_REMAP AFIO_MAPR_USART1_REMAP_Msk /*!< USART1 remapping */ +#define AFIO_MAPR_USART2_REMAP_Pos (3U) +#define AFIO_MAPR_USART2_REMAP_Msk (0x1UL << AFIO_MAPR_USART2_REMAP_Pos) /*!< 0x00000008 */ +#define AFIO_MAPR_USART2_REMAP AFIO_MAPR_USART2_REMAP_Msk /*!< USART2 remapping */ + +#define AFIO_MAPR_USART3_REMAP_Pos (4U) +#define AFIO_MAPR_USART3_REMAP_Msk (0x3UL << AFIO_MAPR_USART3_REMAP_Pos) /*!< 0x00000030 */ +#define AFIO_MAPR_USART3_REMAP AFIO_MAPR_USART3_REMAP_Msk /*!< USART3_REMAP[1:0] bits (USART3 remapping) */ +#define AFIO_MAPR_USART3_REMAP_0 (0x1UL << AFIO_MAPR_USART3_REMAP_Pos) /*!< 0x00000010 */ +#define AFIO_MAPR_USART3_REMAP_1 (0x2UL << AFIO_MAPR_USART3_REMAP_Pos) /*!< 0x00000020 */ + +/* USART3_REMAP configuration */ +#define AFIO_MAPR_USART3_REMAP_NOREMAP 0x00000000U /*!< No remap (TX/PB10, RX/PB11, CK/PB12, CTS/PB13, RTS/PB14) */ +#define AFIO_MAPR_USART3_REMAP_PARTIALREMAP_Pos (4U) +#define AFIO_MAPR_USART3_REMAP_PARTIALREMAP_Msk (0x1UL << AFIO_MAPR_USART3_REMAP_PARTIALREMAP_Pos) /*!< 0x00000010 */ +#define AFIO_MAPR_USART3_REMAP_PARTIALREMAP AFIO_MAPR_USART3_REMAP_PARTIALREMAP_Msk /*!< Partial remap (TX/PC10, RX/PC11, CK/PC12, CTS/PB13, RTS/PB14) */ +#define AFIO_MAPR_USART3_REMAP_FULLREMAP_Pos (4U) +#define AFIO_MAPR_USART3_REMAP_FULLREMAP_Msk (0x3UL << AFIO_MAPR_USART3_REMAP_FULLREMAP_Pos) /*!< 0x00000030 */ +#define AFIO_MAPR_USART3_REMAP_FULLREMAP AFIO_MAPR_USART3_REMAP_FULLREMAP_Msk /*!< Full remap (TX/PD8, RX/PD9, CK/PD10, CTS/PD11, RTS/PD12) */ + +#define AFIO_MAPR_TIM1_REMAP_Pos (6U) +#define AFIO_MAPR_TIM1_REMAP_Msk (0x3UL << AFIO_MAPR_TIM1_REMAP_Pos) /*!< 0x000000C0 */ +#define AFIO_MAPR_TIM1_REMAP AFIO_MAPR_TIM1_REMAP_Msk /*!< TIM1_REMAP[1:0] bits (TIM1 remapping) */ +#define AFIO_MAPR_TIM1_REMAP_0 (0x1UL << AFIO_MAPR_TIM1_REMAP_Pos) /*!< 0x00000040 */ +#define AFIO_MAPR_TIM1_REMAP_1 (0x2UL << AFIO_MAPR_TIM1_REMAP_Pos) /*!< 0x00000080 */ + +/*!< TIM1_REMAP configuration */ +#define AFIO_MAPR_TIM1_REMAP_NOREMAP 0x00000000U /*!< No remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PB12, CH1N/PB13, CH2N/PB14, CH3N/PB15) */ +#define AFIO_MAPR_TIM1_REMAP_PARTIALREMAP_Pos (6U) +#define AFIO_MAPR_TIM1_REMAP_PARTIALREMAP_Msk (0x1UL << AFIO_MAPR_TIM1_REMAP_PARTIALREMAP_Pos) /*!< 0x00000040 */ +#define AFIO_MAPR_TIM1_REMAP_PARTIALREMAP AFIO_MAPR_TIM1_REMAP_PARTIALREMAP_Msk /*!< Partial remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PA6, CH1N/PA7, CH2N/PB0, CH3N/PB1) */ +#define AFIO_MAPR_TIM1_REMAP_FULLREMAP_Pos (6U) +#define AFIO_MAPR_TIM1_REMAP_FULLREMAP_Msk (0x3UL << AFIO_MAPR_TIM1_REMAP_FULLREMAP_Pos) /*!< 0x000000C0 */ +#define AFIO_MAPR_TIM1_REMAP_FULLREMAP AFIO_MAPR_TIM1_REMAP_FULLREMAP_Msk /*!< Full remap (ETR/PE7, CH1/PE9, CH2/PE11, CH3/PE13, CH4/PE14, BKIN/PE15, CH1N/PE8, CH2N/PE10, CH3N/PE12) */ + +#define AFIO_MAPR_TIM2_REMAP_Pos (8U) +#define AFIO_MAPR_TIM2_REMAP_Msk (0x3UL << AFIO_MAPR_TIM2_REMAP_Pos) /*!< 0x00000300 */ +#define AFIO_MAPR_TIM2_REMAP AFIO_MAPR_TIM2_REMAP_Msk /*!< TIM2_REMAP[1:0] bits (TIM2 remapping) */ +#define AFIO_MAPR_TIM2_REMAP_0 (0x1UL << AFIO_MAPR_TIM2_REMAP_Pos) /*!< 0x00000100 */ +#define AFIO_MAPR_TIM2_REMAP_1 (0x2UL << AFIO_MAPR_TIM2_REMAP_Pos) /*!< 0x00000200 */ + +/*!< TIM2_REMAP configuration */ +#define AFIO_MAPR_TIM2_REMAP_NOREMAP 0x00000000U /*!< No remap (CH1/ETR/PA0, CH2/PA1, CH3/PA2, CH4/PA3) */ +#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1_Pos (8U) +#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1_Msk (0x1UL << AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1_Pos) /*!< 0x00000100 */ +#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1 AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1_Msk /*!< Partial remap (CH1/ETR/PA15, CH2/PB3, CH3/PA2, CH4/PA3) */ +#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2_Pos (9U) +#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2_Msk (0x1UL << AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2_Pos) /*!< 0x00000200 */ +#define AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2 AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2_Msk /*!< Partial remap (CH1/ETR/PA0, CH2/PA1, CH3/PB10, CH4/PB11) */ +#define AFIO_MAPR_TIM2_REMAP_FULLREMAP_Pos (8U) +#define AFIO_MAPR_TIM2_REMAP_FULLREMAP_Msk (0x3UL << AFIO_MAPR_TIM2_REMAP_FULLREMAP_Pos) /*!< 0x00000300 */ +#define AFIO_MAPR_TIM2_REMAP_FULLREMAP AFIO_MAPR_TIM2_REMAP_FULLREMAP_Msk /*!< Full remap (CH1/ETR/PA15, CH2/PB3, CH3/PB10, CH4/PB11) */ + +#define AFIO_MAPR_TIM3_REMAP_Pos (10U) +#define AFIO_MAPR_TIM3_REMAP_Msk (0x3UL << AFIO_MAPR_TIM3_REMAP_Pos) /*!< 0x00000C00 */ +#define AFIO_MAPR_TIM3_REMAP AFIO_MAPR_TIM3_REMAP_Msk /*!< TIM3_REMAP[1:0] bits (TIM3 remapping) */ +#define AFIO_MAPR_TIM3_REMAP_0 (0x1UL << AFIO_MAPR_TIM3_REMAP_Pos) /*!< 0x00000400 */ +#define AFIO_MAPR_TIM3_REMAP_1 (0x2UL << AFIO_MAPR_TIM3_REMAP_Pos) /*!< 0x00000800 */ + +/*!< TIM3_REMAP configuration */ +#define AFIO_MAPR_TIM3_REMAP_NOREMAP 0x00000000U /*!< No remap (CH1/PA6, CH2/PA7, CH3/PB0, CH4/PB1) */ +#define AFIO_MAPR_TIM3_REMAP_PARTIALREMAP_Pos (11U) +#define AFIO_MAPR_TIM3_REMAP_PARTIALREMAP_Msk (0x1UL << AFIO_MAPR_TIM3_REMAP_PARTIALREMAP_Pos) /*!< 0x00000800 */ +#define AFIO_MAPR_TIM3_REMAP_PARTIALREMAP AFIO_MAPR_TIM3_REMAP_PARTIALREMAP_Msk /*!< Partial remap (CH1/PB4, CH2/PB5, CH3/PB0, CH4/PB1) */ +#define AFIO_MAPR_TIM3_REMAP_FULLREMAP_Pos (10U) +#define AFIO_MAPR_TIM3_REMAP_FULLREMAP_Msk (0x3UL << AFIO_MAPR_TIM3_REMAP_FULLREMAP_Pos) /*!< 0x00000C00 */ +#define AFIO_MAPR_TIM3_REMAP_FULLREMAP AFIO_MAPR_TIM3_REMAP_FULLREMAP_Msk /*!< Full remap (CH1/PC6, CH2/PC7, CH3/PC8, CH4/PC9) */ + +#define AFIO_MAPR_TIM4_REMAP_Pos (12U) +#define AFIO_MAPR_TIM4_REMAP_Msk (0x1UL << AFIO_MAPR_TIM4_REMAP_Pos) /*!< 0x00001000 */ +#define AFIO_MAPR_TIM4_REMAP AFIO_MAPR_TIM4_REMAP_Msk /*!< TIM4_REMAP bit (TIM4 remapping) */ + +#define AFIO_MAPR_CAN_REMAP_Pos (13U) +#define AFIO_MAPR_CAN_REMAP_Msk (0x3UL << AFIO_MAPR_CAN_REMAP_Pos) /*!< 0x00006000 */ +#define AFIO_MAPR_CAN_REMAP AFIO_MAPR_CAN_REMAP_Msk /*!< CAN_REMAP[1:0] bits (CAN Alternate function remapping) */ +#define AFIO_MAPR_CAN_REMAP_0 (0x1UL << AFIO_MAPR_CAN_REMAP_Pos) /*!< 0x00002000 */ +#define AFIO_MAPR_CAN_REMAP_1 (0x2UL << AFIO_MAPR_CAN_REMAP_Pos) /*!< 0x00004000 */ + +/*!< CAN_REMAP configuration */ +#define AFIO_MAPR_CAN_REMAP_REMAP1 0x00000000U /*!< CANRX mapped to PA11, CANTX mapped to PA12 */ +#define AFIO_MAPR_CAN_REMAP_REMAP2_Pos (14U) +#define AFIO_MAPR_CAN_REMAP_REMAP2_Msk (0x1UL << AFIO_MAPR_CAN_REMAP_REMAP2_Pos) /*!< 0x00004000 */ +#define AFIO_MAPR_CAN_REMAP_REMAP2 AFIO_MAPR_CAN_REMAP_REMAP2_Msk /*!< CANRX mapped to PB8, CANTX mapped to PB9 */ +#define AFIO_MAPR_CAN_REMAP_REMAP3_Pos (13U) +#define AFIO_MAPR_CAN_REMAP_REMAP3_Msk (0x3UL << AFIO_MAPR_CAN_REMAP_REMAP3_Pos) /*!< 0x00006000 */ +#define AFIO_MAPR_CAN_REMAP_REMAP3 AFIO_MAPR_CAN_REMAP_REMAP3_Msk /*!< CANRX mapped to PD0, CANTX mapped to PD1 */ + +#define AFIO_MAPR_PD01_REMAP_Pos (15U) +#define AFIO_MAPR_PD01_REMAP_Msk (0x1UL << AFIO_MAPR_PD01_REMAP_Pos) /*!< 0x00008000 */ +#define AFIO_MAPR_PD01_REMAP AFIO_MAPR_PD01_REMAP_Msk /*!< Port D0/Port D1 mapping on OSC_IN/OSC_OUT */ + +/*!< SWJ_CFG configuration */ +#define AFIO_MAPR_SWJ_CFG_Pos (24U) +#define AFIO_MAPR_SWJ_CFG_Msk (0x7UL << AFIO_MAPR_SWJ_CFG_Pos) /*!< 0x07000000 */ +#define AFIO_MAPR_SWJ_CFG AFIO_MAPR_SWJ_CFG_Msk /*!< SWJ_CFG[2:0] bits (Serial Wire JTAG configuration) */ +#define AFIO_MAPR_SWJ_CFG_0 (0x1UL << AFIO_MAPR_SWJ_CFG_Pos) /*!< 0x01000000 */ +#define AFIO_MAPR_SWJ_CFG_1 (0x2UL << AFIO_MAPR_SWJ_CFG_Pos) /*!< 0x02000000 */ +#define AFIO_MAPR_SWJ_CFG_2 (0x4UL << AFIO_MAPR_SWJ_CFG_Pos) /*!< 0x04000000 */ + +#define AFIO_MAPR_SWJ_CFG_RESET 0x00000000U /*!< Full SWJ (JTAG-DP + SW-DP) : Reset State */ +#define AFIO_MAPR_SWJ_CFG_NOJNTRST_Pos (24U) +#define AFIO_MAPR_SWJ_CFG_NOJNTRST_Msk (0x1UL << AFIO_MAPR_SWJ_CFG_NOJNTRST_Pos) /*!< 0x01000000 */ +#define AFIO_MAPR_SWJ_CFG_NOJNTRST AFIO_MAPR_SWJ_CFG_NOJNTRST_Msk /*!< Full SWJ (JTAG-DP + SW-DP) but without JNTRST */ +#define AFIO_MAPR_SWJ_CFG_JTAGDISABLE_Pos (25U) +#define AFIO_MAPR_SWJ_CFG_JTAGDISABLE_Msk (0x1UL << AFIO_MAPR_SWJ_CFG_JTAGDISABLE_Pos) /*!< 0x02000000 */ +#define AFIO_MAPR_SWJ_CFG_JTAGDISABLE AFIO_MAPR_SWJ_CFG_JTAGDISABLE_Msk /*!< JTAG-DP Disabled and SW-DP Enabled */ +#define AFIO_MAPR_SWJ_CFG_DISABLE_Pos (26U) +#define AFIO_MAPR_SWJ_CFG_DISABLE_Msk (0x1UL << AFIO_MAPR_SWJ_CFG_DISABLE_Pos) /*!< 0x04000000 */ +#define AFIO_MAPR_SWJ_CFG_DISABLE AFIO_MAPR_SWJ_CFG_DISABLE_Msk /*!< JTAG-DP Disabled and SW-DP Disabled */ + + +/***************** Bit definition for AFIO_EXTICR1 register *****************/ +#define AFIO_EXTICR1_EXTI0_Pos (0U) +#define AFIO_EXTICR1_EXTI0_Msk (0xFUL << AFIO_EXTICR1_EXTI0_Pos) /*!< 0x0000000F */ +#define AFIO_EXTICR1_EXTI0 AFIO_EXTICR1_EXTI0_Msk /*!< EXTI 0 configuration */ +#define AFIO_EXTICR1_EXTI1_Pos (4U) +#define AFIO_EXTICR1_EXTI1_Msk (0xFUL << AFIO_EXTICR1_EXTI1_Pos) /*!< 0x000000F0 */ +#define AFIO_EXTICR1_EXTI1 AFIO_EXTICR1_EXTI1_Msk /*!< EXTI 1 configuration */ +#define AFIO_EXTICR1_EXTI2_Pos (8U) +#define AFIO_EXTICR1_EXTI2_Msk (0xFUL << AFIO_EXTICR1_EXTI2_Pos) /*!< 0x00000F00 */ +#define AFIO_EXTICR1_EXTI2 AFIO_EXTICR1_EXTI2_Msk /*!< EXTI 2 configuration */ +#define AFIO_EXTICR1_EXTI3_Pos (12U) +#define AFIO_EXTICR1_EXTI3_Msk (0xFUL << AFIO_EXTICR1_EXTI3_Pos) /*!< 0x0000F000 */ +#define AFIO_EXTICR1_EXTI3 AFIO_EXTICR1_EXTI3_Msk /*!< EXTI 3 configuration */ + +/*!< EXTI0 configuration */ +#define AFIO_EXTICR1_EXTI0_PA 0x00000000U /*!< PA[0] pin */ +#define AFIO_EXTICR1_EXTI0_PB_Pos (0U) +#define AFIO_EXTICR1_EXTI0_PB_Msk (0x1UL << AFIO_EXTICR1_EXTI0_PB_Pos) /*!< 0x00000001 */ +#define AFIO_EXTICR1_EXTI0_PB AFIO_EXTICR1_EXTI0_PB_Msk /*!< PB[0] pin */ +#define AFIO_EXTICR1_EXTI0_PC_Pos (1U) +#define AFIO_EXTICR1_EXTI0_PC_Msk (0x1UL << AFIO_EXTICR1_EXTI0_PC_Pos) /*!< 0x00000002 */ +#define AFIO_EXTICR1_EXTI0_PC AFIO_EXTICR1_EXTI0_PC_Msk /*!< PC[0] pin */ +#define AFIO_EXTICR1_EXTI0_PD_Pos (0U) +#define AFIO_EXTICR1_EXTI0_PD_Msk (0x3UL << AFIO_EXTICR1_EXTI0_PD_Pos) /*!< 0x00000003 */ +#define AFIO_EXTICR1_EXTI0_PD AFIO_EXTICR1_EXTI0_PD_Msk /*!< PD[0] pin */ +#define AFIO_EXTICR1_EXTI0_PE_Pos (2U) +#define AFIO_EXTICR1_EXTI0_PE_Msk (0x1UL << AFIO_EXTICR1_EXTI0_PE_Pos) /*!< 0x00000004 */ +#define AFIO_EXTICR1_EXTI0_PE AFIO_EXTICR1_EXTI0_PE_Msk /*!< PE[0] pin */ +#define AFIO_EXTICR1_EXTI0_PF_Pos (0U) +#define AFIO_EXTICR1_EXTI0_PF_Msk (0x5UL << AFIO_EXTICR1_EXTI0_PF_Pos) /*!< 0x00000005 */ +#define AFIO_EXTICR1_EXTI0_PF AFIO_EXTICR1_EXTI0_PF_Msk /*!< PF[0] pin */ +#define AFIO_EXTICR1_EXTI0_PG_Pos (1U) +#define AFIO_EXTICR1_EXTI0_PG_Msk (0x3UL << AFIO_EXTICR1_EXTI0_PG_Pos) /*!< 0x00000006 */ +#define AFIO_EXTICR1_EXTI0_PG AFIO_EXTICR1_EXTI0_PG_Msk /*!< PG[0] pin */ + +/*!< EXTI1 configuration */ +#define AFIO_EXTICR1_EXTI1_PA 0x00000000U /*!< PA[1] pin */ +#define AFIO_EXTICR1_EXTI1_PB_Pos (4U) +#define AFIO_EXTICR1_EXTI1_PB_Msk (0x1UL << AFIO_EXTICR1_EXTI1_PB_Pos) /*!< 0x00000010 */ +#define AFIO_EXTICR1_EXTI1_PB AFIO_EXTICR1_EXTI1_PB_Msk /*!< PB[1] pin */ +#define AFIO_EXTICR1_EXTI1_PC_Pos (5U) +#define AFIO_EXTICR1_EXTI1_PC_Msk (0x1UL << AFIO_EXTICR1_EXTI1_PC_Pos) /*!< 0x00000020 */ +#define AFIO_EXTICR1_EXTI1_PC AFIO_EXTICR1_EXTI1_PC_Msk /*!< PC[1] pin */ +#define AFIO_EXTICR1_EXTI1_PD_Pos (4U) +#define AFIO_EXTICR1_EXTI1_PD_Msk (0x3UL << AFIO_EXTICR1_EXTI1_PD_Pos) /*!< 0x00000030 */ +#define AFIO_EXTICR1_EXTI1_PD AFIO_EXTICR1_EXTI1_PD_Msk /*!< PD[1] pin */ +#define AFIO_EXTICR1_EXTI1_PE_Pos (6U) +#define AFIO_EXTICR1_EXTI1_PE_Msk (0x1UL << AFIO_EXTICR1_EXTI1_PE_Pos) /*!< 0x00000040 */ +#define AFIO_EXTICR1_EXTI1_PE AFIO_EXTICR1_EXTI1_PE_Msk /*!< PE[1] pin */ +#define AFIO_EXTICR1_EXTI1_PF_Pos (4U) +#define AFIO_EXTICR1_EXTI1_PF_Msk (0x5UL << AFIO_EXTICR1_EXTI1_PF_Pos) /*!< 0x00000050 */ +#define AFIO_EXTICR1_EXTI1_PF AFIO_EXTICR1_EXTI1_PF_Msk /*!< PF[1] pin */ +#define AFIO_EXTICR1_EXTI1_PG_Pos (5U) +#define AFIO_EXTICR1_EXTI1_PG_Msk (0x3UL << AFIO_EXTICR1_EXTI1_PG_Pos) /*!< 0x00000060 */ +#define AFIO_EXTICR1_EXTI1_PG AFIO_EXTICR1_EXTI1_PG_Msk /*!< PG[1] pin */ + +/*!< EXTI2 configuration */ +#define AFIO_EXTICR1_EXTI2_PA 0x00000000U /*!< PA[2] pin */ +#define AFIO_EXTICR1_EXTI2_PB_Pos (8U) +#define AFIO_EXTICR1_EXTI2_PB_Msk (0x1UL << AFIO_EXTICR1_EXTI2_PB_Pos) /*!< 0x00000100 */ +#define AFIO_EXTICR1_EXTI2_PB AFIO_EXTICR1_EXTI2_PB_Msk /*!< PB[2] pin */ +#define AFIO_EXTICR1_EXTI2_PC_Pos (9U) +#define AFIO_EXTICR1_EXTI2_PC_Msk (0x1UL << AFIO_EXTICR1_EXTI2_PC_Pos) /*!< 0x00000200 */ +#define AFIO_EXTICR1_EXTI2_PC AFIO_EXTICR1_EXTI2_PC_Msk /*!< PC[2] pin */ +#define AFIO_EXTICR1_EXTI2_PD_Pos (8U) +#define AFIO_EXTICR1_EXTI2_PD_Msk (0x3UL << AFIO_EXTICR1_EXTI2_PD_Pos) /*!< 0x00000300 */ +#define AFIO_EXTICR1_EXTI2_PD AFIO_EXTICR1_EXTI2_PD_Msk /*!< PD[2] pin */ +#define AFIO_EXTICR1_EXTI2_PE_Pos (10U) +#define AFIO_EXTICR1_EXTI2_PE_Msk (0x1UL << AFIO_EXTICR1_EXTI2_PE_Pos) /*!< 0x00000400 */ +#define AFIO_EXTICR1_EXTI2_PE AFIO_EXTICR1_EXTI2_PE_Msk /*!< PE[2] pin */ +#define AFIO_EXTICR1_EXTI2_PF_Pos (8U) +#define AFIO_EXTICR1_EXTI2_PF_Msk (0x5UL << AFIO_EXTICR1_EXTI2_PF_Pos) /*!< 0x00000500 */ +#define AFIO_EXTICR1_EXTI2_PF AFIO_EXTICR1_EXTI2_PF_Msk /*!< PF[2] pin */ +#define AFIO_EXTICR1_EXTI2_PG_Pos (9U) +#define AFIO_EXTICR1_EXTI2_PG_Msk (0x3UL << AFIO_EXTICR1_EXTI2_PG_Pos) /*!< 0x00000600 */ +#define AFIO_EXTICR1_EXTI2_PG AFIO_EXTICR1_EXTI2_PG_Msk /*!< PG[2] pin */ + +/*!< EXTI3 configuration */ +#define AFIO_EXTICR1_EXTI3_PA 0x00000000U /*!< PA[3] pin */ +#define AFIO_EXTICR1_EXTI3_PB_Pos (12U) +#define AFIO_EXTICR1_EXTI3_PB_Msk (0x1UL << AFIO_EXTICR1_EXTI3_PB_Pos) /*!< 0x00001000 */ +#define AFIO_EXTICR1_EXTI3_PB AFIO_EXTICR1_EXTI3_PB_Msk /*!< PB[3] pin */ +#define AFIO_EXTICR1_EXTI3_PC_Pos (13U) +#define AFIO_EXTICR1_EXTI3_PC_Msk (0x1UL << AFIO_EXTICR1_EXTI3_PC_Pos) /*!< 0x00002000 */ +#define AFIO_EXTICR1_EXTI3_PC AFIO_EXTICR1_EXTI3_PC_Msk /*!< PC[3] pin */ +#define AFIO_EXTICR1_EXTI3_PD_Pos (12U) +#define AFIO_EXTICR1_EXTI3_PD_Msk (0x3UL << AFIO_EXTICR1_EXTI3_PD_Pos) /*!< 0x00003000 */ +#define AFIO_EXTICR1_EXTI3_PD AFIO_EXTICR1_EXTI3_PD_Msk /*!< PD[3] pin */ +#define AFIO_EXTICR1_EXTI3_PE_Pos (14U) +#define AFIO_EXTICR1_EXTI3_PE_Msk (0x1UL << AFIO_EXTICR1_EXTI3_PE_Pos) /*!< 0x00004000 */ +#define AFIO_EXTICR1_EXTI3_PE AFIO_EXTICR1_EXTI3_PE_Msk /*!< PE[3] pin */ +#define AFIO_EXTICR1_EXTI3_PF_Pos (12U) +#define AFIO_EXTICR1_EXTI3_PF_Msk (0x5UL << AFIO_EXTICR1_EXTI3_PF_Pos) /*!< 0x00005000 */ +#define AFIO_EXTICR1_EXTI3_PF AFIO_EXTICR1_EXTI3_PF_Msk /*!< PF[3] pin */ +#define AFIO_EXTICR1_EXTI3_PG_Pos (13U) +#define AFIO_EXTICR1_EXTI3_PG_Msk (0x3UL << AFIO_EXTICR1_EXTI3_PG_Pos) /*!< 0x00006000 */ +#define AFIO_EXTICR1_EXTI3_PG AFIO_EXTICR1_EXTI3_PG_Msk /*!< PG[3] pin */ + +/***************** Bit definition for AFIO_EXTICR2 register *****************/ +#define AFIO_EXTICR2_EXTI4_Pos (0U) +#define AFIO_EXTICR2_EXTI4_Msk (0xFUL << AFIO_EXTICR2_EXTI4_Pos) /*!< 0x0000000F */ +#define AFIO_EXTICR2_EXTI4 AFIO_EXTICR2_EXTI4_Msk /*!< EXTI 4 configuration */ +#define AFIO_EXTICR2_EXTI5_Pos (4U) +#define AFIO_EXTICR2_EXTI5_Msk (0xFUL << AFIO_EXTICR2_EXTI5_Pos) /*!< 0x000000F0 */ +#define AFIO_EXTICR2_EXTI5 AFIO_EXTICR2_EXTI5_Msk /*!< EXTI 5 configuration */ +#define AFIO_EXTICR2_EXTI6_Pos (8U) +#define AFIO_EXTICR2_EXTI6_Msk (0xFUL << AFIO_EXTICR2_EXTI6_Pos) /*!< 0x00000F00 */ +#define AFIO_EXTICR2_EXTI6 AFIO_EXTICR2_EXTI6_Msk /*!< EXTI 6 configuration */ +#define AFIO_EXTICR2_EXTI7_Pos (12U) +#define AFIO_EXTICR2_EXTI7_Msk (0xFUL << AFIO_EXTICR2_EXTI7_Pos) /*!< 0x0000F000 */ +#define AFIO_EXTICR2_EXTI7 AFIO_EXTICR2_EXTI7_Msk /*!< EXTI 7 configuration */ + +/*!< EXTI4 configuration */ +#define AFIO_EXTICR2_EXTI4_PA 0x00000000U /*!< PA[4] pin */ +#define AFIO_EXTICR2_EXTI4_PB_Pos (0U) +#define AFIO_EXTICR2_EXTI4_PB_Msk (0x1UL << AFIO_EXTICR2_EXTI4_PB_Pos) /*!< 0x00000001 */ +#define AFIO_EXTICR2_EXTI4_PB AFIO_EXTICR2_EXTI4_PB_Msk /*!< PB[4] pin */ +#define AFIO_EXTICR2_EXTI4_PC_Pos (1U) +#define AFIO_EXTICR2_EXTI4_PC_Msk (0x1UL << AFIO_EXTICR2_EXTI4_PC_Pos) /*!< 0x00000002 */ +#define AFIO_EXTICR2_EXTI4_PC AFIO_EXTICR2_EXTI4_PC_Msk /*!< PC[4] pin */ +#define AFIO_EXTICR2_EXTI4_PD_Pos (0U) +#define AFIO_EXTICR2_EXTI4_PD_Msk (0x3UL << AFIO_EXTICR2_EXTI4_PD_Pos) /*!< 0x00000003 */ +#define AFIO_EXTICR2_EXTI4_PD AFIO_EXTICR2_EXTI4_PD_Msk /*!< PD[4] pin */ +#define AFIO_EXTICR2_EXTI4_PE_Pos (2U) +#define AFIO_EXTICR2_EXTI4_PE_Msk (0x1UL << AFIO_EXTICR2_EXTI4_PE_Pos) /*!< 0x00000004 */ +#define AFIO_EXTICR2_EXTI4_PE AFIO_EXTICR2_EXTI4_PE_Msk /*!< PE[4] pin */ +#define AFIO_EXTICR2_EXTI4_PF_Pos (0U) +#define AFIO_EXTICR2_EXTI4_PF_Msk (0x5UL << AFIO_EXTICR2_EXTI4_PF_Pos) /*!< 0x00000005 */ +#define AFIO_EXTICR2_EXTI4_PF AFIO_EXTICR2_EXTI4_PF_Msk /*!< PF[4] pin */ +#define AFIO_EXTICR2_EXTI4_PG_Pos (1U) +#define AFIO_EXTICR2_EXTI4_PG_Msk (0x3UL << AFIO_EXTICR2_EXTI4_PG_Pos) /*!< 0x00000006 */ +#define AFIO_EXTICR2_EXTI4_PG AFIO_EXTICR2_EXTI4_PG_Msk /*!< PG[4] pin */ + +/* EXTI5 configuration */ +#define AFIO_EXTICR2_EXTI5_PA 0x00000000U /*!< PA[5] pin */ +#define AFIO_EXTICR2_EXTI5_PB_Pos (4U) +#define AFIO_EXTICR2_EXTI5_PB_Msk (0x1UL << AFIO_EXTICR2_EXTI5_PB_Pos) /*!< 0x00000010 */ +#define AFIO_EXTICR2_EXTI5_PB AFIO_EXTICR2_EXTI5_PB_Msk /*!< PB[5] pin */ +#define AFIO_EXTICR2_EXTI5_PC_Pos (5U) +#define AFIO_EXTICR2_EXTI5_PC_Msk (0x1UL << AFIO_EXTICR2_EXTI5_PC_Pos) /*!< 0x00000020 */ +#define AFIO_EXTICR2_EXTI5_PC AFIO_EXTICR2_EXTI5_PC_Msk /*!< PC[5] pin */ +#define AFIO_EXTICR2_EXTI5_PD_Pos (4U) +#define AFIO_EXTICR2_EXTI5_PD_Msk (0x3UL << AFIO_EXTICR2_EXTI5_PD_Pos) /*!< 0x00000030 */ +#define AFIO_EXTICR2_EXTI5_PD AFIO_EXTICR2_EXTI5_PD_Msk /*!< PD[5] pin */ +#define AFIO_EXTICR2_EXTI5_PE_Pos (6U) +#define AFIO_EXTICR2_EXTI5_PE_Msk (0x1UL << AFIO_EXTICR2_EXTI5_PE_Pos) /*!< 0x00000040 */ +#define AFIO_EXTICR2_EXTI5_PE AFIO_EXTICR2_EXTI5_PE_Msk /*!< PE[5] pin */ +#define AFIO_EXTICR2_EXTI5_PF_Pos (4U) +#define AFIO_EXTICR2_EXTI5_PF_Msk (0x5UL << AFIO_EXTICR2_EXTI5_PF_Pos) /*!< 0x00000050 */ +#define AFIO_EXTICR2_EXTI5_PF AFIO_EXTICR2_EXTI5_PF_Msk /*!< PF[5] pin */ +#define AFIO_EXTICR2_EXTI5_PG_Pos (5U) +#define AFIO_EXTICR2_EXTI5_PG_Msk (0x3UL << AFIO_EXTICR2_EXTI5_PG_Pos) /*!< 0x00000060 */ +#define AFIO_EXTICR2_EXTI5_PG AFIO_EXTICR2_EXTI5_PG_Msk /*!< PG[5] pin */ + +/*!< EXTI6 configuration */ +#define AFIO_EXTICR2_EXTI6_PA 0x00000000U /*!< PA[6] pin */ +#define AFIO_EXTICR2_EXTI6_PB_Pos (8U) +#define AFIO_EXTICR2_EXTI6_PB_Msk (0x1UL << AFIO_EXTICR2_EXTI6_PB_Pos) /*!< 0x00000100 */ +#define AFIO_EXTICR2_EXTI6_PB AFIO_EXTICR2_EXTI6_PB_Msk /*!< PB[6] pin */ +#define AFIO_EXTICR2_EXTI6_PC_Pos (9U) +#define AFIO_EXTICR2_EXTI6_PC_Msk (0x1UL << AFIO_EXTICR2_EXTI6_PC_Pos) /*!< 0x00000200 */ +#define AFIO_EXTICR2_EXTI6_PC AFIO_EXTICR2_EXTI6_PC_Msk /*!< PC[6] pin */ +#define AFIO_EXTICR2_EXTI6_PD_Pos (8U) +#define AFIO_EXTICR2_EXTI6_PD_Msk (0x3UL << AFIO_EXTICR2_EXTI6_PD_Pos) /*!< 0x00000300 */ +#define AFIO_EXTICR2_EXTI6_PD AFIO_EXTICR2_EXTI6_PD_Msk /*!< PD[6] pin */ +#define AFIO_EXTICR2_EXTI6_PE_Pos (10U) +#define AFIO_EXTICR2_EXTI6_PE_Msk (0x1UL << AFIO_EXTICR2_EXTI6_PE_Pos) /*!< 0x00000400 */ +#define AFIO_EXTICR2_EXTI6_PE AFIO_EXTICR2_EXTI6_PE_Msk /*!< PE[6] pin */ +#define AFIO_EXTICR2_EXTI6_PF_Pos (8U) +#define AFIO_EXTICR2_EXTI6_PF_Msk (0x5UL << AFIO_EXTICR2_EXTI6_PF_Pos) /*!< 0x00000500 */ +#define AFIO_EXTICR2_EXTI6_PF AFIO_EXTICR2_EXTI6_PF_Msk /*!< PF[6] pin */ +#define AFIO_EXTICR2_EXTI6_PG_Pos (9U) +#define AFIO_EXTICR2_EXTI6_PG_Msk (0x3UL << AFIO_EXTICR2_EXTI6_PG_Pos) /*!< 0x00000600 */ +#define AFIO_EXTICR2_EXTI6_PG AFIO_EXTICR2_EXTI6_PG_Msk /*!< PG[6] pin */ + +/*!< EXTI7 configuration */ +#define AFIO_EXTICR2_EXTI7_PA 0x00000000U /*!< PA[7] pin */ +#define AFIO_EXTICR2_EXTI7_PB_Pos (12U) +#define AFIO_EXTICR2_EXTI7_PB_Msk (0x1UL << AFIO_EXTICR2_EXTI7_PB_Pos) /*!< 0x00001000 */ +#define AFIO_EXTICR2_EXTI7_PB AFIO_EXTICR2_EXTI7_PB_Msk /*!< PB[7] pin */ +#define AFIO_EXTICR2_EXTI7_PC_Pos (13U) +#define AFIO_EXTICR2_EXTI7_PC_Msk (0x1UL << AFIO_EXTICR2_EXTI7_PC_Pos) /*!< 0x00002000 */ +#define AFIO_EXTICR2_EXTI7_PC AFIO_EXTICR2_EXTI7_PC_Msk /*!< PC[7] pin */ +#define AFIO_EXTICR2_EXTI7_PD_Pos (12U) +#define AFIO_EXTICR2_EXTI7_PD_Msk (0x3UL << AFIO_EXTICR2_EXTI7_PD_Pos) /*!< 0x00003000 */ +#define AFIO_EXTICR2_EXTI7_PD AFIO_EXTICR2_EXTI7_PD_Msk /*!< PD[7] pin */ +#define AFIO_EXTICR2_EXTI7_PE_Pos (14U) +#define AFIO_EXTICR2_EXTI7_PE_Msk (0x1UL << AFIO_EXTICR2_EXTI7_PE_Pos) /*!< 0x00004000 */ +#define AFIO_EXTICR2_EXTI7_PE AFIO_EXTICR2_EXTI7_PE_Msk /*!< PE[7] pin */ +#define AFIO_EXTICR2_EXTI7_PF_Pos (12U) +#define AFIO_EXTICR2_EXTI7_PF_Msk (0x5UL << AFIO_EXTICR2_EXTI7_PF_Pos) /*!< 0x00005000 */ +#define AFIO_EXTICR2_EXTI7_PF AFIO_EXTICR2_EXTI7_PF_Msk /*!< PF[7] pin */ +#define AFIO_EXTICR2_EXTI7_PG_Pos (13U) +#define AFIO_EXTICR2_EXTI7_PG_Msk (0x3UL << AFIO_EXTICR2_EXTI7_PG_Pos) /*!< 0x00006000 */ +#define AFIO_EXTICR2_EXTI7_PG AFIO_EXTICR2_EXTI7_PG_Msk /*!< PG[7] pin */ + +/***************** Bit definition for AFIO_EXTICR3 register *****************/ +#define AFIO_EXTICR3_EXTI8_Pos (0U) +#define AFIO_EXTICR3_EXTI8_Msk (0xFUL << AFIO_EXTICR3_EXTI8_Pos) /*!< 0x0000000F */ +#define AFIO_EXTICR3_EXTI8 AFIO_EXTICR3_EXTI8_Msk /*!< EXTI 8 configuration */ +#define AFIO_EXTICR3_EXTI9_Pos (4U) +#define AFIO_EXTICR3_EXTI9_Msk (0xFUL << AFIO_EXTICR3_EXTI9_Pos) /*!< 0x000000F0 */ +#define AFIO_EXTICR3_EXTI9 AFIO_EXTICR3_EXTI9_Msk /*!< EXTI 9 configuration */ +#define AFIO_EXTICR3_EXTI10_Pos (8U) +#define AFIO_EXTICR3_EXTI10_Msk (0xFUL << AFIO_EXTICR3_EXTI10_Pos) /*!< 0x00000F00 */ +#define AFIO_EXTICR3_EXTI10 AFIO_EXTICR3_EXTI10_Msk /*!< EXTI 10 configuration */ +#define AFIO_EXTICR3_EXTI11_Pos (12U) +#define AFIO_EXTICR3_EXTI11_Msk (0xFUL << AFIO_EXTICR3_EXTI11_Pos) /*!< 0x0000F000 */ +#define AFIO_EXTICR3_EXTI11 AFIO_EXTICR3_EXTI11_Msk /*!< EXTI 11 configuration */ + +/*!< EXTI8 configuration */ +#define AFIO_EXTICR3_EXTI8_PA 0x00000000U /*!< PA[8] pin */ +#define AFIO_EXTICR3_EXTI8_PB_Pos (0U) +#define AFIO_EXTICR3_EXTI8_PB_Msk (0x1UL << AFIO_EXTICR3_EXTI8_PB_Pos) /*!< 0x00000001 */ +#define AFIO_EXTICR3_EXTI8_PB AFIO_EXTICR3_EXTI8_PB_Msk /*!< PB[8] pin */ +#define AFIO_EXTICR3_EXTI8_PC_Pos (1U) +#define AFIO_EXTICR3_EXTI8_PC_Msk (0x1UL << AFIO_EXTICR3_EXTI8_PC_Pos) /*!< 0x00000002 */ +#define AFIO_EXTICR3_EXTI8_PC AFIO_EXTICR3_EXTI8_PC_Msk /*!< PC[8] pin */ +#define AFIO_EXTICR3_EXTI8_PD_Pos (0U) +#define AFIO_EXTICR3_EXTI8_PD_Msk (0x3UL << AFIO_EXTICR3_EXTI8_PD_Pos) /*!< 0x00000003 */ +#define AFIO_EXTICR3_EXTI8_PD AFIO_EXTICR3_EXTI8_PD_Msk /*!< PD[8] pin */ +#define AFIO_EXTICR3_EXTI8_PE_Pos (2U) +#define AFIO_EXTICR3_EXTI8_PE_Msk (0x1UL << AFIO_EXTICR3_EXTI8_PE_Pos) /*!< 0x00000004 */ +#define AFIO_EXTICR3_EXTI8_PE AFIO_EXTICR3_EXTI8_PE_Msk /*!< PE[8] pin */ +#define AFIO_EXTICR3_EXTI8_PF_Pos (0U) +#define AFIO_EXTICR3_EXTI8_PF_Msk (0x5UL << AFIO_EXTICR3_EXTI8_PF_Pos) /*!< 0x00000005 */ +#define AFIO_EXTICR3_EXTI8_PF AFIO_EXTICR3_EXTI8_PF_Msk /*!< PF[8] pin */ +#define AFIO_EXTICR3_EXTI8_PG_Pos (1U) +#define AFIO_EXTICR3_EXTI8_PG_Msk (0x3UL << AFIO_EXTICR3_EXTI8_PG_Pos) /*!< 0x00000006 */ +#define AFIO_EXTICR3_EXTI8_PG AFIO_EXTICR3_EXTI8_PG_Msk /*!< PG[8] pin */ + +/*!< EXTI9 configuration */ +#define AFIO_EXTICR3_EXTI9_PA 0x00000000U /*!< PA[9] pin */ +#define AFIO_EXTICR3_EXTI9_PB_Pos (4U) +#define AFIO_EXTICR3_EXTI9_PB_Msk (0x1UL << AFIO_EXTICR3_EXTI9_PB_Pos) /*!< 0x00000010 */ +#define AFIO_EXTICR3_EXTI9_PB AFIO_EXTICR3_EXTI9_PB_Msk /*!< PB[9] pin */ +#define AFIO_EXTICR3_EXTI9_PC_Pos (5U) +#define AFIO_EXTICR3_EXTI9_PC_Msk (0x1UL << AFIO_EXTICR3_EXTI9_PC_Pos) /*!< 0x00000020 */ +#define AFIO_EXTICR3_EXTI9_PC AFIO_EXTICR3_EXTI9_PC_Msk /*!< PC[9] pin */ +#define AFIO_EXTICR3_EXTI9_PD_Pos (4U) +#define AFIO_EXTICR3_EXTI9_PD_Msk (0x3UL << AFIO_EXTICR3_EXTI9_PD_Pos) /*!< 0x00000030 */ +#define AFIO_EXTICR3_EXTI9_PD AFIO_EXTICR3_EXTI9_PD_Msk /*!< PD[9] pin */ +#define AFIO_EXTICR3_EXTI9_PE_Pos (6U) +#define AFIO_EXTICR3_EXTI9_PE_Msk (0x1UL << AFIO_EXTICR3_EXTI9_PE_Pos) /*!< 0x00000040 */ +#define AFIO_EXTICR3_EXTI9_PE AFIO_EXTICR3_EXTI9_PE_Msk /*!< PE[9] pin */ +#define AFIO_EXTICR3_EXTI9_PF_Pos (4U) +#define AFIO_EXTICR3_EXTI9_PF_Msk (0x5UL << AFIO_EXTICR3_EXTI9_PF_Pos) /*!< 0x00000050 */ +#define AFIO_EXTICR3_EXTI9_PF AFIO_EXTICR3_EXTI9_PF_Msk /*!< PF[9] pin */ +#define AFIO_EXTICR3_EXTI9_PG_Pos (5U) +#define AFIO_EXTICR3_EXTI9_PG_Msk (0x3UL << AFIO_EXTICR3_EXTI9_PG_Pos) /*!< 0x00000060 */ +#define AFIO_EXTICR3_EXTI9_PG AFIO_EXTICR3_EXTI9_PG_Msk /*!< PG[9] pin */ + +/*!< EXTI10 configuration */ +#define AFIO_EXTICR3_EXTI10_PA 0x00000000U /*!< PA[10] pin */ +#define AFIO_EXTICR3_EXTI10_PB_Pos (8U) +#define AFIO_EXTICR3_EXTI10_PB_Msk (0x1UL << AFIO_EXTICR3_EXTI10_PB_Pos) /*!< 0x00000100 */ +#define AFIO_EXTICR3_EXTI10_PB AFIO_EXTICR3_EXTI10_PB_Msk /*!< PB[10] pin */ +#define AFIO_EXTICR3_EXTI10_PC_Pos (9U) +#define AFIO_EXTICR3_EXTI10_PC_Msk (0x1UL << AFIO_EXTICR3_EXTI10_PC_Pos) /*!< 0x00000200 */ +#define AFIO_EXTICR3_EXTI10_PC AFIO_EXTICR3_EXTI10_PC_Msk /*!< PC[10] pin */ +#define AFIO_EXTICR3_EXTI10_PD_Pos (8U) +#define AFIO_EXTICR3_EXTI10_PD_Msk (0x3UL << AFIO_EXTICR3_EXTI10_PD_Pos) /*!< 0x00000300 */ +#define AFIO_EXTICR3_EXTI10_PD AFIO_EXTICR3_EXTI10_PD_Msk /*!< PD[10] pin */ +#define AFIO_EXTICR3_EXTI10_PE_Pos (10U) +#define AFIO_EXTICR3_EXTI10_PE_Msk (0x1UL << AFIO_EXTICR3_EXTI10_PE_Pos) /*!< 0x00000400 */ +#define AFIO_EXTICR3_EXTI10_PE AFIO_EXTICR3_EXTI10_PE_Msk /*!< PE[10] pin */ +#define AFIO_EXTICR3_EXTI10_PF_Pos (8U) +#define AFIO_EXTICR3_EXTI10_PF_Msk (0x5UL << AFIO_EXTICR3_EXTI10_PF_Pos) /*!< 0x00000500 */ +#define AFIO_EXTICR3_EXTI10_PF AFIO_EXTICR3_EXTI10_PF_Msk /*!< PF[10] pin */ +#define AFIO_EXTICR3_EXTI10_PG_Pos (9U) +#define AFIO_EXTICR3_EXTI10_PG_Msk (0x3UL << AFIO_EXTICR3_EXTI10_PG_Pos) /*!< 0x00000600 */ +#define AFIO_EXTICR3_EXTI10_PG AFIO_EXTICR3_EXTI10_PG_Msk /*!< PG[10] pin */ + +/*!< EXTI11 configuration */ +#define AFIO_EXTICR3_EXTI11_PA 0x00000000U /*!< PA[11] pin */ +#define AFIO_EXTICR3_EXTI11_PB_Pos (12U) +#define AFIO_EXTICR3_EXTI11_PB_Msk (0x1UL << AFIO_EXTICR3_EXTI11_PB_Pos) /*!< 0x00001000 */ +#define AFIO_EXTICR3_EXTI11_PB AFIO_EXTICR3_EXTI11_PB_Msk /*!< PB[11] pin */ +#define AFIO_EXTICR3_EXTI11_PC_Pos (13U) +#define AFIO_EXTICR3_EXTI11_PC_Msk (0x1UL << AFIO_EXTICR3_EXTI11_PC_Pos) /*!< 0x00002000 */ +#define AFIO_EXTICR3_EXTI11_PC AFIO_EXTICR3_EXTI11_PC_Msk /*!< PC[11] pin */ +#define AFIO_EXTICR3_EXTI11_PD_Pos (12U) +#define AFIO_EXTICR3_EXTI11_PD_Msk (0x3UL << AFIO_EXTICR3_EXTI11_PD_Pos) /*!< 0x00003000 */ +#define AFIO_EXTICR3_EXTI11_PD AFIO_EXTICR3_EXTI11_PD_Msk /*!< PD[11] pin */ +#define AFIO_EXTICR3_EXTI11_PE_Pos (14U) +#define AFIO_EXTICR3_EXTI11_PE_Msk (0x1UL << AFIO_EXTICR3_EXTI11_PE_Pos) /*!< 0x00004000 */ +#define AFIO_EXTICR3_EXTI11_PE AFIO_EXTICR3_EXTI11_PE_Msk /*!< PE[11] pin */ +#define AFIO_EXTICR3_EXTI11_PF_Pos (12U) +#define AFIO_EXTICR3_EXTI11_PF_Msk (0x5UL << AFIO_EXTICR3_EXTI11_PF_Pos) /*!< 0x00005000 */ +#define AFIO_EXTICR3_EXTI11_PF AFIO_EXTICR3_EXTI11_PF_Msk /*!< PF[11] pin */ +#define AFIO_EXTICR3_EXTI11_PG_Pos (13U) +#define AFIO_EXTICR3_EXTI11_PG_Msk (0x3UL << AFIO_EXTICR3_EXTI11_PG_Pos) /*!< 0x00006000 */ +#define AFIO_EXTICR3_EXTI11_PG AFIO_EXTICR3_EXTI11_PG_Msk /*!< PG[11] pin */ + +/***************** Bit definition for AFIO_EXTICR4 register *****************/ +#define AFIO_EXTICR4_EXTI12_Pos (0U) +#define AFIO_EXTICR4_EXTI12_Msk (0xFUL << AFIO_EXTICR4_EXTI12_Pos) /*!< 0x0000000F */ +#define AFIO_EXTICR4_EXTI12 AFIO_EXTICR4_EXTI12_Msk /*!< EXTI 12 configuration */ +#define AFIO_EXTICR4_EXTI13_Pos (4U) +#define AFIO_EXTICR4_EXTI13_Msk (0xFUL << AFIO_EXTICR4_EXTI13_Pos) /*!< 0x000000F0 */ +#define AFIO_EXTICR4_EXTI13 AFIO_EXTICR4_EXTI13_Msk /*!< EXTI 13 configuration */ +#define AFIO_EXTICR4_EXTI14_Pos (8U) +#define AFIO_EXTICR4_EXTI14_Msk (0xFUL << AFIO_EXTICR4_EXTI14_Pos) /*!< 0x00000F00 */ +#define AFIO_EXTICR4_EXTI14 AFIO_EXTICR4_EXTI14_Msk /*!< EXTI 14 configuration */ +#define AFIO_EXTICR4_EXTI15_Pos (12U) +#define AFIO_EXTICR4_EXTI15_Msk (0xFUL << AFIO_EXTICR4_EXTI15_Pos) /*!< 0x0000F000 */ +#define AFIO_EXTICR4_EXTI15 AFIO_EXTICR4_EXTI15_Msk /*!< EXTI 15 configuration */ + +/* EXTI12 configuration */ +#define AFIO_EXTICR4_EXTI12_PA 0x00000000U /*!< PA[12] pin */ +#define AFIO_EXTICR4_EXTI12_PB_Pos (0U) +#define AFIO_EXTICR4_EXTI12_PB_Msk (0x1UL << AFIO_EXTICR4_EXTI12_PB_Pos) /*!< 0x00000001 */ +#define AFIO_EXTICR4_EXTI12_PB AFIO_EXTICR4_EXTI12_PB_Msk /*!< PB[12] pin */ +#define AFIO_EXTICR4_EXTI12_PC_Pos (1U) +#define AFIO_EXTICR4_EXTI12_PC_Msk (0x1UL << AFIO_EXTICR4_EXTI12_PC_Pos) /*!< 0x00000002 */ +#define AFIO_EXTICR4_EXTI12_PC AFIO_EXTICR4_EXTI12_PC_Msk /*!< PC[12] pin */ +#define AFIO_EXTICR4_EXTI12_PD_Pos (0U) +#define AFIO_EXTICR4_EXTI12_PD_Msk (0x3UL << AFIO_EXTICR4_EXTI12_PD_Pos) /*!< 0x00000003 */ +#define AFIO_EXTICR4_EXTI12_PD AFIO_EXTICR4_EXTI12_PD_Msk /*!< PD[12] pin */ +#define AFIO_EXTICR4_EXTI12_PE_Pos (2U) +#define AFIO_EXTICR4_EXTI12_PE_Msk (0x1UL << AFIO_EXTICR4_EXTI12_PE_Pos) /*!< 0x00000004 */ +#define AFIO_EXTICR4_EXTI12_PE AFIO_EXTICR4_EXTI12_PE_Msk /*!< PE[12] pin */ +#define AFIO_EXTICR4_EXTI12_PF_Pos (0U) +#define AFIO_EXTICR4_EXTI12_PF_Msk (0x5UL << AFIO_EXTICR4_EXTI12_PF_Pos) /*!< 0x00000005 */ +#define AFIO_EXTICR4_EXTI12_PF AFIO_EXTICR4_EXTI12_PF_Msk /*!< PF[12] pin */ +#define AFIO_EXTICR4_EXTI12_PG_Pos (1U) +#define AFIO_EXTICR4_EXTI12_PG_Msk (0x3UL << AFIO_EXTICR4_EXTI12_PG_Pos) /*!< 0x00000006 */ +#define AFIO_EXTICR4_EXTI12_PG AFIO_EXTICR4_EXTI12_PG_Msk /*!< PG[12] pin */ + +/* EXTI13 configuration */ +#define AFIO_EXTICR4_EXTI13_PA 0x00000000U /*!< PA[13] pin */ +#define AFIO_EXTICR4_EXTI13_PB_Pos (4U) +#define AFIO_EXTICR4_EXTI13_PB_Msk (0x1UL << AFIO_EXTICR4_EXTI13_PB_Pos) /*!< 0x00000010 */ +#define AFIO_EXTICR4_EXTI13_PB AFIO_EXTICR4_EXTI13_PB_Msk /*!< PB[13] pin */ +#define AFIO_EXTICR4_EXTI13_PC_Pos (5U) +#define AFIO_EXTICR4_EXTI13_PC_Msk (0x1UL << AFIO_EXTICR4_EXTI13_PC_Pos) /*!< 0x00000020 */ +#define AFIO_EXTICR4_EXTI13_PC AFIO_EXTICR4_EXTI13_PC_Msk /*!< PC[13] pin */ +#define AFIO_EXTICR4_EXTI13_PD_Pos (4U) +#define AFIO_EXTICR4_EXTI13_PD_Msk (0x3UL << AFIO_EXTICR4_EXTI13_PD_Pos) /*!< 0x00000030 */ +#define AFIO_EXTICR4_EXTI13_PD AFIO_EXTICR4_EXTI13_PD_Msk /*!< PD[13] pin */ +#define AFIO_EXTICR4_EXTI13_PE_Pos (6U) +#define AFIO_EXTICR4_EXTI13_PE_Msk (0x1UL << AFIO_EXTICR4_EXTI13_PE_Pos) /*!< 0x00000040 */ +#define AFIO_EXTICR4_EXTI13_PE AFIO_EXTICR4_EXTI13_PE_Msk /*!< PE[13] pin */ +#define AFIO_EXTICR4_EXTI13_PF_Pos (4U) +#define AFIO_EXTICR4_EXTI13_PF_Msk (0x5UL << AFIO_EXTICR4_EXTI13_PF_Pos) /*!< 0x00000050 */ +#define AFIO_EXTICR4_EXTI13_PF AFIO_EXTICR4_EXTI13_PF_Msk /*!< PF[13] pin */ +#define AFIO_EXTICR4_EXTI13_PG_Pos (5U) +#define AFIO_EXTICR4_EXTI13_PG_Msk (0x3UL << AFIO_EXTICR4_EXTI13_PG_Pos) /*!< 0x00000060 */ +#define AFIO_EXTICR4_EXTI13_PG AFIO_EXTICR4_EXTI13_PG_Msk /*!< PG[13] pin */ + +/*!< EXTI14 configuration */ +#define AFIO_EXTICR4_EXTI14_PA 0x00000000U /*!< PA[14] pin */ +#define AFIO_EXTICR4_EXTI14_PB_Pos (8U) +#define AFIO_EXTICR4_EXTI14_PB_Msk (0x1UL << AFIO_EXTICR4_EXTI14_PB_Pos) /*!< 0x00000100 */ +#define AFIO_EXTICR4_EXTI14_PB AFIO_EXTICR4_EXTI14_PB_Msk /*!< PB[14] pin */ +#define AFIO_EXTICR4_EXTI14_PC_Pos (9U) +#define AFIO_EXTICR4_EXTI14_PC_Msk (0x1UL << AFIO_EXTICR4_EXTI14_PC_Pos) /*!< 0x00000200 */ +#define AFIO_EXTICR4_EXTI14_PC AFIO_EXTICR4_EXTI14_PC_Msk /*!< PC[14] pin */ +#define AFIO_EXTICR4_EXTI14_PD_Pos (8U) +#define AFIO_EXTICR4_EXTI14_PD_Msk (0x3UL << AFIO_EXTICR4_EXTI14_PD_Pos) /*!< 0x00000300 */ +#define AFIO_EXTICR4_EXTI14_PD AFIO_EXTICR4_EXTI14_PD_Msk /*!< PD[14] pin */ +#define AFIO_EXTICR4_EXTI14_PE_Pos (10U) +#define AFIO_EXTICR4_EXTI14_PE_Msk (0x1UL << AFIO_EXTICR4_EXTI14_PE_Pos) /*!< 0x00000400 */ +#define AFIO_EXTICR4_EXTI14_PE AFIO_EXTICR4_EXTI14_PE_Msk /*!< PE[14] pin */ +#define AFIO_EXTICR4_EXTI14_PF_Pos (8U) +#define AFIO_EXTICR4_EXTI14_PF_Msk (0x5UL << AFIO_EXTICR4_EXTI14_PF_Pos) /*!< 0x00000500 */ +#define AFIO_EXTICR4_EXTI14_PF AFIO_EXTICR4_EXTI14_PF_Msk /*!< PF[14] pin */ +#define AFIO_EXTICR4_EXTI14_PG_Pos (9U) +#define AFIO_EXTICR4_EXTI14_PG_Msk (0x3UL << AFIO_EXTICR4_EXTI14_PG_Pos) /*!< 0x00000600 */ +#define AFIO_EXTICR4_EXTI14_PG AFIO_EXTICR4_EXTI14_PG_Msk /*!< PG[14] pin */ + +/*!< EXTI15 configuration */ +#define AFIO_EXTICR4_EXTI15_PA 0x00000000U /*!< PA[15] pin */ +#define AFIO_EXTICR4_EXTI15_PB_Pos (12U) +#define AFIO_EXTICR4_EXTI15_PB_Msk (0x1UL << AFIO_EXTICR4_EXTI15_PB_Pos) /*!< 0x00001000 */ +#define AFIO_EXTICR4_EXTI15_PB AFIO_EXTICR4_EXTI15_PB_Msk /*!< PB[15] pin */ +#define AFIO_EXTICR4_EXTI15_PC_Pos (13U) +#define AFIO_EXTICR4_EXTI15_PC_Msk (0x1UL << AFIO_EXTICR4_EXTI15_PC_Pos) /*!< 0x00002000 */ +#define AFIO_EXTICR4_EXTI15_PC AFIO_EXTICR4_EXTI15_PC_Msk /*!< PC[15] pin */ +#define AFIO_EXTICR4_EXTI15_PD_Pos (12U) +#define AFIO_EXTICR4_EXTI15_PD_Msk (0x3UL << AFIO_EXTICR4_EXTI15_PD_Pos) /*!< 0x00003000 */ +#define AFIO_EXTICR4_EXTI15_PD AFIO_EXTICR4_EXTI15_PD_Msk /*!< PD[15] pin */ +#define AFIO_EXTICR4_EXTI15_PE_Pos (14U) +#define AFIO_EXTICR4_EXTI15_PE_Msk (0x1UL << AFIO_EXTICR4_EXTI15_PE_Pos) /*!< 0x00004000 */ +#define AFIO_EXTICR4_EXTI15_PE AFIO_EXTICR4_EXTI15_PE_Msk /*!< PE[15] pin */ +#define AFIO_EXTICR4_EXTI15_PF_Pos (12U) +#define AFIO_EXTICR4_EXTI15_PF_Msk (0x5UL << AFIO_EXTICR4_EXTI15_PF_Pos) /*!< 0x00005000 */ +#define AFIO_EXTICR4_EXTI15_PF AFIO_EXTICR4_EXTI15_PF_Msk /*!< PF[15] pin */ +#define AFIO_EXTICR4_EXTI15_PG_Pos (13U) +#define AFIO_EXTICR4_EXTI15_PG_Msk (0x3UL << AFIO_EXTICR4_EXTI15_PG_Pos) /*!< 0x00006000 */ +#define AFIO_EXTICR4_EXTI15_PG AFIO_EXTICR4_EXTI15_PG_Msk /*!< PG[15] pin */ + +/****************** Bit definition for AFIO_MAPR2 register ******************/ + + + +/******************************************************************************/ +/* */ +/* External Interrupt/Event Controller */ +/* */ +/******************************************************************************/ + +/******************* Bit definition for EXTI_IMR register *******************/ +#define EXTI_IMR_MR0_Pos (0U) +#define EXTI_IMR_MR0_Msk (0x1UL << EXTI_IMR_MR0_Pos) /*!< 0x00000001 */ +#define EXTI_IMR_MR0 EXTI_IMR_MR0_Msk /*!< Interrupt Mask on line 0 */ +#define EXTI_IMR_MR1_Pos (1U) +#define EXTI_IMR_MR1_Msk (0x1UL << EXTI_IMR_MR1_Pos) /*!< 0x00000002 */ +#define EXTI_IMR_MR1 EXTI_IMR_MR1_Msk /*!< Interrupt Mask on line 1 */ +#define EXTI_IMR_MR2_Pos (2U) +#define EXTI_IMR_MR2_Msk (0x1UL << EXTI_IMR_MR2_Pos) /*!< 0x00000004 */ +#define EXTI_IMR_MR2 EXTI_IMR_MR2_Msk /*!< Interrupt Mask on line 2 */ +#define EXTI_IMR_MR3_Pos (3U) +#define EXTI_IMR_MR3_Msk (0x1UL << EXTI_IMR_MR3_Pos) /*!< 0x00000008 */ +#define EXTI_IMR_MR3 EXTI_IMR_MR3_Msk /*!< Interrupt Mask on line 3 */ +#define EXTI_IMR_MR4_Pos (4U) +#define EXTI_IMR_MR4_Msk (0x1UL << EXTI_IMR_MR4_Pos) /*!< 0x00000010 */ +#define EXTI_IMR_MR4 EXTI_IMR_MR4_Msk /*!< Interrupt Mask on line 4 */ +#define EXTI_IMR_MR5_Pos (5U) +#define EXTI_IMR_MR5_Msk (0x1UL << EXTI_IMR_MR5_Pos) /*!< 0x00000020 */ +#define EXTI_IMR_MR5 EXTI_IMR_MR5_Msk /*!< Interrupt Mask on line 5 */ +#define EXTI_IMR_MR6_Pos (6U) +#define EXTI_IMR_MR6_Msk (0x1UL << EXTI_IMR_MR6_Pos) /*!< 0x00000040 */ +#define EXTI_IMR_MR6 EXTI_IMR_MR6_Msk /*!< Interrupt Mask on line 6 */ +#define EXTI_IMR_MR7_Pos (7U) +#define EXTI_IMR_MR7_Msk (0x1UL << EXTI_IMR_MR7_Pos) /*!< 0x00000080 */ +#define EXTI_IMR_MR7 EXTI_IMR_MR7_Msk /*!< Interrupt Mask on line 7 */ +#define EXTI_IMR_MR8_Pos (8U) +#define EXTI_IMR_MR8_Msk (0x1UL << EXTI_IMR_MR8_Pos) /*!< 0x00000100 */ +#define EXTI_IMR_MR8 EXTI_IMR_MR8_Msk /*!< Interrupt Mask on line 8 */ +#define EXTI_IMR_MR9_Pos (9U) +#define EXTI_IMR_MR9_Msk (0x1UL << EXTI_IMR_MR9_Pos) /*!< 0x00000200 */ +#define EXTI_IMR_MR9 EXTI_IMR_MR9_Msk /*!< Interrupt Mask on line 9 */ +#define EXTI_IMR_MR10_Pos (10U) +#define EXTI_IMR_MR10_Msk (0x1UL << EXTI_IMR_MR10_Pos) /*!< 0x00000400 */ +#define EXTI_IMR_MR10 EXTI_IMR_MR10_Msk /*!< Interrupt Mask on line 10 */ +#define EXTI_IMR_MR11_Pos (11U) +#define EXTI_IMR_MR11_Msk (0x1UL << EXTI_IMR_MR11_Pos) /*!< 0x00000800 */ +#define EXTI_IMR_MR11 EXTI_IMR_MR11_Msk /*!< Interrupt Mask on line 11 */ +#define EXTI_IMR_MR12_Pos (12U) +#define EXTI_IMR_MR12_Msk (0x1UL << EXTI_IMR_MR12_Pos) /*!< 0x00001000 */ +#define EXTI_IMR_MR12 EXTI_IMR_MR12_Msk /*!< Interrupt Mask on line 12 */ +#define EXTI_IMR_MR13_Pos (13U) +#define EXTI_IMR_MR13_Msk (0x1UL << EXTI_IMR_MR13_Pos) /*!< 0x00002000 */ +#define EXTI_IMR_MR13 EXTI_IMR_MR13_Msk /*!< Interrupt Mask on line 13 */ +#define EXTI_IMR_MR14_Pos (14U) +#define EXTI_IMR_MR14_Msk (0x1UL << EXTI_IMR_MR14_Pos) /*!< 0x00004000 */ +#define EXTI_IMR_MR14 EXTI_IMR_MR14_Msk /*!< Interrupt Mask on line 14 */ +#define EXTI_IMR_MR15_Pos (15U) +#define EXTI_IMR_MR15_Msk (0x1UL << EXTI_IMR_MR15_Pos) /*!< 0x00008000 */ +#define EXTI_IMR_MR15 EXTI_IMR_MR15_Msk /*!< Interrupt Mask on line 15 */ +#define EXTI_IMR_MR16_Pos (16U) +#define EXTI_IMR_MR16_Msk (0x1UL << EXTI_IMR_MR16_Pos) /*!< 0x00010000 */ +#define EXTI_IMR_MR16 EXTI_IMR_MR16_Msk /*!< Interrupt Mask on line 16 */ +#define EXTI_IMR_MR17_Pos (17U) +#define EXTI_IMR_MR17_Msk (0x1UL << EXTI_IMR_MR17_Pos) /*!< 0x00020000 */ +#define EXTI_IMR_MR17 EXTI_IMR_MR17_Msk /*!< Interrupt Mask on line 17 */ +#define EXTI_IMR_MR18_Pos (18U) +#define EXTI_IMR_MR18_Msk (0x1UL << EXTI_IMR_MR18_Pos) /*!< 0x00040000 */ +#define EXTI_IMR_MR18 EXTI_IMR_MR18_Msk /*!< Interrupt Mask on line 18 */ + +/* References Defines */ +#define EXTI_IMR_IM0 EXTI_IMR_MR0 +#define EXTI_IMR_IM1 EXTI_IMR_MR1 +#define EXTI_IMR_IM2 EXTI_IMR_MR2 +#define EXTI_IMR_IM3 EXTI_IMR_MR3 +#define EXTI_IMR_IM4 EXTI_IMR_MR4 +#define EXTI_IMR_IM5 EXTI_IMR_MR5 +#define EXTI_IMR_IM6 EXTI_IMR_MR6 +#define EXTI_IMR_IM7 EXTI_IMR_MR7 +#define EXTI_IMR_IM8 EXTI_IMR_MR8 +#define EXTI_IMR_IM9 EXTI_IMR_MR9 +#define EXTI_IMR_IM10 EXTI_IMR_MR10 +#define EXTI_IMR_IM11 EXTI_IMR_MR11 +#define EXTI_IMR_IM12 EXTI_IMR_MR12 +#define EXTI_IMR_IM13 EXTI_IMR_MR13 +#define EXTI_IMR_IM14 EXTI_IMR_MR14 +#define EXTI_IMR_IM15 EXTI_IMR_MR15 +#define EXTI_IMR_IM16 EXTI_IMR_MR16 +#define EXTI_IMR_IM17 EXTI_IMR_MR17 +#define EXTI_IMR_IM18 EXTI_IMR_MR18 +#define EXTI_IMR_IM 0x0007FFFFU /*!< Interrupt Mask All */ + +/******************* Bit definition for EXTI_EMR register *******************/ +#define EXTI_EMR_MR0_Pos (0U) +#define EXTI_EMR_MR0_Msk (0x1UL << EXTI_EMR_MR0_Pos) /*!< 0x00000001 */ +#define EXTI_EMR_MR0 EXTI_EMR_MR0_Msk /*!< Event Mask on line 0 */ +#define EXTI_EMR_MR1_Pos (1U) +#define EXTI_EMR_MR1_Msk (0x1UL << EXTI_EMR_MR1_Pos) /*!< 0x00000002 */ +#define EXTI_EMR_MR1 EXTI_EMR_MR1_Msk /*!< Event Mask on line 1 */ +#define EXTI_EMR_MR2_Pos (2U) +#define EXTI_EMR_MR2_Msk (0x1UL << EXTI_EMR_MR2_Pos) /*!< 0x00000004 */ +#define EXTI_EMR_MR2 EXTI_EMR_MR2_Msk /*!< Event Mask on line 2 */ +#define EXTI_EMR_MR3_Pos (3U) +#define EXTI_EMR_MR3_Msk (0x1UL << EXTI_EMR_MR3_Pos) /*!< 0x00000008 */ +#define EXTI_EMR_MR3 EXTI_EMR_MR3_Msk /*!< Event Mask on line 3 */ +#define EXTI_EMR_MR4_Pos (4U) +#define EXTI_EMR_MR4_Msk (0x1UL << EXTI_EMR_MR4_Pos) /*!< 0x00000010 */ +#define EXTI_EMR_MR4 EXTI_EMR_MR4_Msk /*!< Event Mask on line 4 */ +#define EXTI_EMR_MR5_Pos (5U) +#define EXTI_EMR_MR5_Msk (0x1UL << EXTI_EMR_MR5_Pos) /*!< 0x00000020 */ +#define EXTI_EMR_MR5 EXTI_EMR_MR5_Msk /*!< Event Mask on line 5 */ +#define EXTI_EMR_MR6_Pos (6U) +#define EXTI_EMR_MR6_Msk (0x1UL << EXTI_EMR_MR6_Pos) /*!< 0x00000040 */ +#define EXTI_EMR_MR6 EXTI_EMR_MR6_Msk /*!< Event Mask on line 6 */ +#define EXTI_EMR_MR7_Pos (7U) +#define EXTI_EMR_MR7_Msk (0x1UL << EXTI_EMR_MR7_Pos) /*!< 0x00000080 */ +#define EXTI_EMR_MR7 EXTI_EMR_MR7_Msk /*!< Event Mask on line 7 */ +#define EXTI_EMR_MR8_Pos (8U) +#define EXTI_EMR_MR8_Msk (0x1UL << EXTI_EMR_MR8_Pos) /*!< 0x00000100 */ +#define EXTI_EMR_MR8 EXTI_EMR_MR8_Msk /*!< Event Mask on line 8 */ +#define EXTI_EMR_MR9_Pos (9U) +#define EXTI_EMR_MR9_Msk (0x1UL << EXTI_EMR_MR9_Pos) /*!< 0x00000200 */ +#define EXTI_EMR_MR9 EXTI_EMR_MR9_Msk /*!< Event Mask on line 9 */ +#define EXTI_EMR_MR10_Pos (10U) +#define EXTI_EMR_MR10_Msk (0x1UL << EXTI_EMR_MR10_Pos) /*!< 0x00000400 */ +#define EXTI_EMR_MR10 EXTI_EMR_MR10_Msk /*!< Event Mask on line 10 */ +#define EXTI_EMR_MR11_Pos (11U) +#define EXTI_EMR_MR11_Msk (0x1UL << EXTI_EMR_MR11_Pos) /*!< 0x00000800 */ +#define EXTI_EMR_MR11 EXTI_EMR_MR11_Msk /*!< Event Mask on line 11 */ +#define EXTI_EMR_MR12_Pos (12U) +#define EXTI_EMR_MR12_Msk (0x1UL << EXTI_EMR_MR12_Pos) /*!< 0x00001000 */ +#define EXTI_EMR_MR12 EXTI_EMR_MR12_Msk /*!< Event Mask on line 12 */ +#define EXTI_EMR_MR13_Pos (13U) +#define EXTI_EMR_MR13_Msk (0x1UL << EXTI_EMR_MR13_Pos) /*!< 0x00002000 */ +#define EXTI_EMR_MR13 EXTI_EMR_MR13_Msk /*!< Event Mask on line 13 */ +#define EXTI_EMR_MR14_Pos (14U) +#define EXTI_EMR_MR14_Msk (0x1UL << EXTI_EMR_MR14_Pos) /*!< 0x00004000 */ +#define EXTI_EMR_MR14 EXTI_EMR_MR14_Msk /*!< Event Mask on line 14 */ +#define EXTI_EMR_MR15_Pos (15U) +#define EXTI_EMR_MR15_Msk (0x1UL << EXTI_EMR_MR15_Pos) /*!< 0x00008000 */ +#define EXTI_EMR_MR15 EXTI_EMR_MR15_Msk /*!< Event Mask on line 15 */ +#define EXTI_EMR_MR16_Pos (16U) +#define EXTI_EMR_MR16_Msk (0x1UL << EXTI_EMR_MR16_Pos) /*!< 0x00010000 */ +#define EXTI_EMR_MR16 EXTI_EMR_MR16_Msk /*!< Event Mask on line 16 */ +#define EXTI_EMR_MR17_Pos (17U) +#define EXTI_EMR_MR17_Msk (0x1UL << EXTI_EMR_MR17_Pos) /*!< 0x00020000 */ +#define EXTI_EMR_MR17 EXTI_EMR_MR17_Msk /*!< Event Mask on line 17 */ +#define EXTI_EMR_MR18_Pos (18U) +#define EXTI_EMR_MR18_Msk (0x1UL << EXTI_EMR_MR18_Pos) /*!< 0x00040000 */ +#define EXTI_EMR_MR18 EXTI_EMR_MR18_Msk /*!< Event Mask on line 18 */ + +/* References Defines */ +#define EXTI_EMR_EM0 EXTI_EMR_MR0 +#define EXTI_EMR_EM1 EXTI_EMR_MR1 +#define EXTI_EMR_EM2 EXTI_EMR_MR2 +#define EXTI_EMR_EM3 EXTI_EMR_MR3 +#define EXTI_EMR_EM4 EXTI_EMR_MR4 +#define EXTI_EMR_EM5 EXTI_EMR_MR5 +#define EXTI_EMR_EM6 EXTI_EMR_MR6 +#define EXTI_EMR_EM7 EXTI_EMR_MR7 +#define EXTI_EMR_EM8 EXTI_EMR_MR8 +#define EXTI_EMR_EM9 EXTI_EMR_MR9 +#define EXTI_EMR_EM10 EXTI_EMR_MR10 +#define EXTI_EMR_EM11 EXTI_EMR_MR11 +#define EXTI_EMR_EM12 EXTI_EMR_MR12 +#define EXTI_EMR_EM13 EXTI_EMR_MR13 +#define EXTI_EMR_EM14 EXTI_EMR_MR14 +#define EXTI_EMR_EM15 EXTI_EMR_MR15 +#define EXTI_EMR_EM16 EXTI_EMR_MR16 +#define EXTI_EMR_EM17 EXTI_EMR_MR17 +#define EXTI_EMR_EM18 EXTI_EMR_MR18 + +/****************** Bit definition for EXTI_RTSR register *******************/ +#define EXTI_RTSR_TR0_Pos (0U) +#define EXTI_RTSR_TR0_Msk (0x1UL << EXTI_RTSR_TR0_Pos) /*!< 0x00000001 */ +#define EXTI_RTSR_TR0 EXTI_RTSR_TR0_Msk /*!< Rising trigger event configuration bit of line 0 */ +#define EXTI_RTSR_TR1_Pos (1U) +#define EXTI_RTSR_TR1_Msk (0x1UL << EXTI_RTSR_TR1_Pos) /*!< 0x00000002 */ +#define EXTI_RTSR_TR1 EXTI_RTSR_TR1_Msk /*!< Rising trigger event configuration bit of line 1 */ +#define EXTI_RTSR_TR2_Pos (2U) +#define EXTI_RTSR_TR2_Msk (0x1UL << EXTI_RTSR_TR2_Pos) /*!< 0x00000004 */ +#define EXTI_RTSR_TR2 EXTI_RTSR_TR2_Msk /*!< Rising trigger event configuration bit of line 2 */ +#define EXTI_RTSR_TR3_Pos (3U) +#define EXTI_RTSR_TR3_Msk (0x1UL << EXTI_RTSR_TR3_Pos) /*!< 0x00000008 */ +#define EXTI_RTSR_TR3 EXTI_RTSR_TR3_Msk /*!< Rising trigger event configuration bit of line 3 */ +#define EXTI_RTSR_TR4_Pos (4U) +#define EXTI_RTSR_TR4_Msk (0x1UL << EXTI_RTSR_TR4_Pos) /*!< 0x00000010 */ +#define EXTI_RTSR_TR4 EXTI_RTSR_TR4_Msk /*!< Rising trigger event configuration bit of line 4 */ +#define EXTI_RTSR_TR5_Pos (5U) +#define EXTI_RTSR_TR5_Msk (0x1UL << EXTI_RTSR_TR5_Pos) /*!< 0x00000020 */ +#define EXTI_RTSR_TR5 EXTI_RTSR_TR5_Msk /*!< Rising trigger event configuration bit of line 5 */ +#define EXTI_RTSR_TR6_Pos (6U) +#define EXTI_RTSR_TR6_Msk (0x1UL << EXTI_RTSR_TR6_Pos) /*!< 0x00000040 */ +#define EXTI_RTSR_TR6 EXTI_RTSR_TR6_Msk /*!< Rising trigger event configuration bit of line 6 */ +#define EXTI_RTSR_TR7_Pos (7U) +#define EXTI_RTSR_TR7_Msk (0x1UL << EXTI_RTSR_TR7_Pos) /*!< 0x00000080 */ +#define EXTI_RTSR_TR7 EXTI_RTSR_TR7_Msk /*!< Rising trigger event configuration bit of line 7 */ +#define EXTI_RTSR_TR8_Pos (8U) +#define EXTI_RTSR_TR8_Msk (0x1UL << EXTI_RTSR_TR8_Pos) /*!< 0x00000100 */ +#define EXTI_RTSR_TR8 EXTI_RTSR_TR8_Msk /*!< Rising trigger event configuration bit of line 8 */ +#define EXTI_RTSR_TR9_Pos (9U) +#define EXTI_RTSR_TR9_Msk (0x1UL << EXTI_RTSR_TR9_Pos) /*!< 0x00000200 */ +#define EXTI_RTSR_TR9 EXTI_RTSR_TR9_Msk /*!< Rising trigger event configuration bit of line 9 */ +#define EXTI_RTSR_TR10_Pos (10U) +#define EXTI_RTSR_TR10_Msk (0x1UL << EXTI_RTSR_TR10_Pos) /*!< 0x00000400 */ +#define EXTI_RTSR_TR10 EXTI_RTSR_TR10_Msk /*!< Rising trigger event configuration bit of line 10 */ +#define EXTI_RTSR_TR11_Pos (11U) +#define EXTI_RTSR_TR11_Msk (0x1UL << EXTI_RTSR_TR11_Pos) /*!< 0x00000800 */ +#define EXTI_RTSR_TR11 EXTI_RTSR_TR11_Msk /*!< Rising trigger event configuration bit of line 11 */ +#define EXTI_RTSR_TR12_Pos (12U) +#define EXTI_RTSR_TR12_Msk (0x1UL << EXTI_RTSR_TR12_Pos) /*!< 0x00001000 */ +#define EXTI_RTSR_TR12 EXTI_RTSR_TR12_Msk /*!< Rising trigger event configuration bit of line 12 */ +#define EXTI_RTSR_TR13_Pos (13U) +#define EXTI_RTSR_TR13_Msk (0x1UL << EXTI_RTSR_TR13_Pos) /*!< 0x00002000 */ +#define EXTI_RTSR_TR13 EXTI_RTSR_TR13_Msk /*!< Rising trigger event configuration bit of line 13 */ +#define EXTI_RTSR_TR14_Pos (14U) +#define EXTI_RTSR_TR14_Msk (0x1UL << EXTI_RTSR_TR14_Pos) /*!< 0x00004000 */ +#define EXTI_RTSR_TR14 EXTI_RTSR_TR14_Msk /*!< Rising trigger event configuration bit of line 14 */ +#define EXTI_RTSR_TR15_Pos (15U) +#define EXTI_RTSR_TR15_Msk (0x1UL << EXTI_RTSR_TR15_Pos) /*!< 0x00008000 */ +#define EXTI_RTSR_TR15 EXTI_RTSR_TR15_Msk /*!< Rising trigger event configuration bit of line 15 */ +#define EXTI_RTSR_TR16_Pos (16U) +#define EXTI_RTSR_TR16_Msk (0x1UL << EXTI_RTSR_TR16_Pos) /*!< 0x00010000 */ +#define EXTI_RTSR_TR16 EXTI_RTSR_TR16_Msk /*!< Rising trigger event configuration bit of line 16 */ +#define EXTI_RTSR_TR17_Pos (17U) +#define EXTI_RTSR_TR17_Msk (0x1UL << EXTI_RTSR_TR17_Pos) /*!< 0x00020000 */ +#define EXTI_RTSR_TR17 EXTI_RTSR_TR17_Msk /*!< Rising trigger event configuration bit of line 17 */ +#define EXTI_RTSR_TR18_Pos (18U) +#define EXTI_RTSR_TR18_Msk (0x1UL << EXTI_RTSR_TR18_Pos) /*!< 0x00040000 */ +#define EXTI_RTSR_TR18 EXTI_RTSR_TR18_Msk /*!< Rising trigger event configuration bit of line 18 */ + +/* References Defines */ +#define EXTI_RTSR_RT0 EXTI_RTSR_TR0 +#define EXTI_RTSR_RT1 EXTI_RTSR_TR1 +#define EXTI_RTSR_RT2 EXTI_RTSR_TR2 +#define EXTI_RTSR_RT3 EXTI_RTSR_TR3 +#define EXTI_RTSR_RT4 EXTI_RTSR_TR4 +#define EXTI_RTSR_RT5 EXTI_RTSR_TR5 +#define EXTI_RTSR_RT6 EXTI_RTSR_TR6 +#define EXTI_RTSR_RT7 EXTI_RTSR_TR7 +#define EXTI_RTSR_RT8 EXTI_RTSR_TR8 +#define EXTI_RTSR_RT9 EXTI_RTSR_TR9 +#define EXTI_RTSR_RT10 EXTI_RTSR_TR10 +#define EXTI_RTSR_RT11 EXTI_RTSR_TR11 +#define EXTI_RTSR_RT12 EXTI_RTSR_TR12 +#define EXTI_RTSR_RT13 EXTI_RTSR_TR13 +#define EXTI_RTSR_RT14 EXTI_RTSR_TR14 +#define EXTI_RTSR_RT15 EXTI_RTSR_TR15 +#define EXTI_RTSR_RT16 EXTI_RTSR_TR16 +#define EXTI_RTSR_RT17 EXTI_RTSR_TR17 +#define EXTI_RTSR_RT18 EXTI_RTSR_TR18 + +/****************** Bit definition for EXTI_FTSR register *******************/ +#define EXTI_FTSR_TR0_Pos (0U) +#define EXTI_FTSR_TR0_Msk (0x1UL << EXTI_FTSR_TR0_Pos) /*!< 0x00000001 */ +#define EXTI_FTSR_TR0 EXTI_FTSR_TR0_Msk /*!< Falling trigger event configuration bit of line 0 */ +#define EXTI_FTSR_TR1_Pos (1U) +#define EXTI_FTSR_TR1_Msk (0x1UL << EXTI_FTSR_TR1_Pos) /*!< 0x00000002 */ +#define EXTI_FTSR_TR1 EXTI_FTSR_TR1_Msk /*!< Falling trigger event configuration bit of line 1 */ +#define EXTI_FTSR_TR2_Pos (2U) +#define EXTI_FTSR_TR2_Msk (0x1UL << EXTI_FTSR_TR2_Pos) /*!< 0x00000004 */ +#define EXTI_FTSR_TR2 EXTI_FTSR_TR2_Msk /*!< Falling trigger event configuration bit of line 2 */ +#define EXTI_FTSR_TR3_Pos (3U) +#define EXTI_FTSR_TR3_Msk (0x1UL << EXTI_FTSR_TR3_Pos) /*!< 0x00000008 */ +#define EXTI_FTSR_TR3 EXTI_FTSR_TR3_Msk /*!< Falling trigger event configuration bit of line 3 */ +#define EXTI_FTSR_TR4_Pos (4U) +#define EXTI_FTSR_TR4_Msk (0x1UL << EXTI_FTSR_TR4_Pos) /*!< 0x00000010 */ +#define EXTI_FTSR_TR4 EXTI_FTSR_TR4_Msk /*!< Falling trigger event configuration bit of line 4 */ +#define EXTI_FTSR_TR5_Pos (5U) +#define EXTI_FTSR_TR5_Msk (0x1UL << EXTI_FTSR_TR5_Pos) /*!< 0x00000020 */ +#define EXTI_FTSR_TR5 EXTI_FTSR_TR5_Msk /*!< Falling trigger event configuration bit of line 5 */ +#define EXTI_FTSR_TR6_Pos (6U) +#define EXTI_FTSR_TR6_Msk (0x1UL << EXTI_FTSR_TR6_Pos) /*!< 0x00000040 */ +#define EXTI_FTSR_TR6 EXTI_FTSR_TR6_Msk /*!< Falling trigger event configuration bit of line 6 */ +#define EXTI_FTSR_TR7_Pos (7U) +#define EXTI_FTSR_TR7_Msk (0x1UL << EXTI_FTSR_TR7_Pos) /*!< 0x00000080 */ +#define EXTI_FTSR_TR7 EXTI_FTSR_TR7_Msk /*!< Falling trigger event configuration bit of line 7 */ +#define EXTI_FTSR_TR8_Pos (8U) +#define EXTI_FTSR_TR8_Msk (0x1UL << EXTI_FTSR_TR8_Pos) /*!< 0x00000100 */ +#define EXTI_FTSR_TR8 EXTI_FTSR_TR8_Msk /*!< Falling trigger event configuration bit of line 8 */ +#define EXTI_FTSR_TR9_Pos (9U) +#define EXTI_FTSR_TR9_Msk (0x1UL << EXTI_FTSR_TR9_Pos) /*!< 0x00000200 */ +#define EXTI_FTSR_TR9 EXTI_FTSR_TR9_Msk /*!< Falling trigger event configuration bit of line 9 */ +#define EXTI_FTSR_TR10_Pos (10U) +#define EXTI_FTSR_TR10_Msk (0x1UL << EXTI_FTSR_TR10_Pos) /*!< 0x00000400 */ +#define EXTI_FTSR_TR10 EXTI_FTSR_TR10_Msk /*!< Falling trigger event configuration bit of line 10 */ +#define EXTI_FTSR_TR11_Pos (11U) +#define EXTI_FTSR_TR11_Msk (0x1UL << EXTI_FTSR_TR11_Pos) /*!< 0x00000800 */ +#define EXTI_FTSR_TR11 EXTI_FTSR_TR11_Msk /*!< Falling trigger event configuration bit of line 11 */ +#define EXTI_FTSR_TR12_Pos (12U) +#define EXTI_FTSR_TR12_Msk (0x1UL << EXTI_FTSR_TR12_Pos) /*!< 0x00001000 */ +#define EXTI_FTSR_TR12 EXTI_FTSR_TR12_Msk /*!< Falling trigger event configuration bit of line 12 */ +#define EXTI_FTSR_TR13_Pos (13U) +#define EXTI_FTSR_TR13_Msk (0x1UL << EXTI_FTSR_TR13_Pos) /*!< 0x00002000 */ +#define EXTI_FTSR_TR13 EXTI_FTSR_TR13_Msk /*!< Falling trigger event configuration bit of line 13 */ +#define EXTI_FTSR_TR14_Pos (14U) +#define EXTI_FTSR_TR14_Msk (0x1UL << EXTI_FTSR_TR14_Pos) /*!< 0x00004000 */ +#define EXTI_FTSR_TR14 EXTI_FTSR_TR14_Msk /*!< Falling trigger event configuration bit of line 14 */ +#define EXTI_FTSR_TR15_Pos (15U) +#define EXTI_FTSR_TR15_Msk (0x1UL << EXTI_FTSR_TR15_Pos) /*!< 0x00008000 */ +#define EXTI_FTSR_TR15 EXTI_FTSR_TR15_Msk /*!< Falling trigger event configuration bit of line 15 */ +#define EXTI_FTSR_TR16_Pos (16U) +#define EXTI_FTSR_TR16_Msk (0x1UL << EXTI_FTSR_TR16_Pos) /*!< 0x00010000 */ +#define EXTI_FTSR_TR16 EXTI_FTSR_TR16_Msk /*!< Falling trigger event configuration bit of line 16 */ +#define EXTI_FTSR_TR17_Pos (17U) +#define EXTI_FTSR_TR17_Msk (0x1UL << EXTI_FTSR_TR17_Pos) /*!< 0x00020000 */ +#define EXTI_FTSR_TR17 EXTI_FTSR_TR17_Msk /*!< Falling trigger event configuration bit of line 17 */ +#define EXTI_FTSR_TR18_Pos (18U) +#define EXTI_FTSR_TR18_Msk (0x1UL << EXTI_FTSR_TR18_Pos) /*!< 0x00040000 */ +#define EXTI_FTSR_TR18 EXTI_FTSR_TR18_Msk /*!< Falling trigger event configuration bit of line 18 */ + +/* References Defines */ +#define EXTI_FTSR_FT0 EXTI_FTSR_TR0 +#define EXTI_FTSR_FT1 EXTI_FTSR_TR1 +#define EXTI_FTSR_FT2 EXTI_FTSR_TR2 +#define EXTI_FTSR_FT3 EXTI_FTSR_TR3 +#define EXTI_FTSR_FT4 EXTI_FTSR_TR4 +#define EXTI_FTSR_FT5 EXTI_FTSR_TR5 +#define EXTI_FTSR_FT6 EXTI_FTSR_TR6 +#define EXTI_FTSR_FT7 EXTI_FTSR_TR7 +#define EXTI_FTSR_FT8 EXTI_FTSR_TR8 +#define EXTI_FTSR_FT9 EXTI_FTSR_TR9 +#define EXTI_FTSR_FT10 EXTI_FTSR_TR10 +#define EXTI_FTSR_FT11 EXTI_FTSR_TR11 +#define EXTI_FTSR_FT12 EXTI_FTSR_TR12 +#define EXTI_FTSR_FT13 EXTI_FTSR_TR13 +#define EXTI_FTSR_FT14 EXTI_FTSR_TR14 +#define EXTI_FTSR_FT15 EXTI_FTSR_TR15 +#define EXTI_FTSR_FT16 EXTI_FTSR_TR16 +#define EXTI_FTSR_FT17 EXTI_FTSR_TR17 +#define EXTI_FTSR_FT18 EXTI_FTSR_TR18 + +/****************** Bit definition for EXTI_SWIER register ******************/ +#define EXTI_SWIER_SWIER0_Pos (0U) +#define EXTI_SWIER_SWIER0_Msk (0x1UL << EXTI_SWIER_SWIER0_Pos) /*!< 0x00000001 */ +#define EXTI_SWIER_SWIER0 EXTI_SWIER_SWIER0_Msk /*!< Software Interrupt on line 0 */ +#define EXTI_SWIER_SWIER1_Pos (1U) +#define EXTI_SWIER_SWIER1_Msk (0x1UL << EXTI_SWIER_SWIER1_Pos) /*!< 0x00000002 */ +#define EXTI_SWIER_SWIER1 EXTI_SWIER_SWIER1_Msk /*!< Software Interrupt on line 1 */ +#define EXTI_SWIER_SWIER2_Pos (2U) +#define EXTI_SWIER_SWIER2_Msk (0x1UL << EXTI_SWIER_SWIER2_Pos) /*!< 0x00000004 */ +#define EXTI_SWIER_SWIER2 EXTI_SWIER_SWIER2_Msk /*!< Software Interrupt on line 2 */ +#define EXTI_SWIER_SWIER3_Pos (3U) +#define EXTI_SWIER_SWIER3_Msk (0x1UL << EXTI_SWIER_SWIER3_Pos) /*!< 0x00000008 */ +#define EXTI_SWIER_SWIER3 EXTI_SWIER_SWIER3_Msk /*!< Software Interrupt on line 3 */ +#define EXTI_SWIER_SWIER4_Pos (4U) +#define EXTI_SWIER_SWIER4_Msk (0x1UL << EXTI_SWIER_SWIER4_Pos) /*!< 0x00000010 */ +#define EXTI_SWIER_SWIER4 EXTI_SWIER_SWIER4_Msk /*!< Software Interrupt on line 4 */ +#define EXTI_SWIER_SWIER5_Pos (5U) +#define EXTI_SWIER_SWIER5_Msk (0x1UL << EXTI_SWIER_SWIER5_Pos) /*!< 0x00000020 */ +#define EXTI_SWIER_SWIER5 EXTI_SWIER_SWIER5_Msk /*!< Software Interrupt on line 5 */ +#define EXTI_SWIER_SWIER6_Pos (6U) +#define EXTI_SWIER_SWIER6_Msk (0x1UL << EXTI_SWIER_SWIER6_Pos) /*!< 0x00000040 */ +#define EXTI_SWIER_SWIER6 EXTI_SWIER_SWIER6_Msk /*!< Software Interrupt on line 6 */ +#define EXTI_SWIER_SWIER7_Pos (7U) +#define EXTI_SWIER_SWIER7_Msk (0x1UL << EXTI_SWIER_SWIER7_Pos) /*!< 0x00000080 */ +#define EXTI_SWIER_SWIER7 EXTI_SWIER_SWIER7_Msk /*!< Software Interrupt on line 7 */ +#define EXTI_SWIER_SWIER8_Pos (8U) +#define EXTI_SWIER_SWIER8_Msk (0x1UL << EXTI_SWIER_SWIER8_Pos) /*!< 0x00000100 */ +#define EXTI_SWIER_SWIER8 EXTI_SWIER_SWIER8_Msk /*!< Software Interrupt on line 8 */ +#define EXTI_SWIER_SWIER9_Pos (9U) +#define EXTI_SWIER_SWIER9_Msk (0x1UL << EXTI_SWIER_SWIER9_Pos) /*!< 0x00000200 */ +#define EXTI_SWIER_SWIER9 EXTI_SWIER_SWIER9_Msk /*!< Software Interrupt on line 9 */ +#define EXTI_SWIER_SWIER10_Pos (10U) +#define EXTI_SWIER_SWIER10_Msk (0x1UL << EXTI_SWIER_SWIER10_Pos) /*!< 0x00000400 */ +#define EXTI_SWIER_SWIER10 EXTI_SWIER_SWIER10_Msk /*!< Software Interrupt on line 10 */ +#define EXTI_SWIER_SWIER11_Pos (11U) +#define EXTI_SWIER_SWIER11_Msk (0x1UL << EXTI_SWIER_SWIER11_Pos) /*!< 0x00000800 */ +#define EXTI_SWIER_SWIER11 EXTI_SWIER_SWIER11_Msk /*!< Software Interrupt on line 11 */ +#define EXTI_SWIER_SWIER12_Pos (12U) +#define EXTI_SWIER_SWIER12_Msk (0x1UL << EXTI_SWIER_SWIER12_Pos) /*!< 0x00001000 */ +#define EXTI_SWIER_SWIER12 EXTI_SWIER_SWIER12_Msk /*!< Software Interrupt on line 12 */ +#define EXTI_SWIER_SWIER13_Pos (13U) +#define EXTI_SWIER_SWIER13_Msk (0x1UL << EXTI_SWIER_SWIER13_Pos) /*!< 0x00002000 */ +#define EXTI_SWIER_SWIER13 EXTI_SWIER_SWIER13_Msk /*!< Software Interrupt on line 13 */ +#define EXTI_SWIER_SWIER14_Pos (14U) +#define EXTI_SWIER_SWIER14_Msk (0x1UL << EXTI_SWIER_SWIER14_Pos) /*!< 0x00004000 */ +#define EXTI_SWIER_SWIER14 EXTI_SWIER_SWIER14_Msk /*!< Software Interrupt on line 14 */ +#define EXTI_SWIER_SWIER15_Pos (15U) +#define EXTI_SWIER_SWIER15_Msk (0x1UL << EXTI_SWIER_SWIER15_Pos) /*!< 0x00008000 */ +#define EXTI_SWIER_SWIER15 EXTI_SWIER_SWIER15_Msk /*!< Software Interrupt on line 15 */ +#define EXTI_SWIER_SWIER16_Pos (16U) +#define EXTI_SWIER_SWIER16_Msk (0x1UL << EXTI_SWIER_SWIER16_Pos) /*!< 0x00010000 */ +#define EXTI_SWIER_SWIER16 EXTI_SWIER_SWIER16_Msk /*!< Software Interrupt on line 16 */ +#define EXTI_SWIER_SWIER17_Pos (17U) +#define EXTI_SWIER_SWIER17_Msk (0x1UL << EXTI_SWIER_SWIER17_Pos) /*!< 0x00020000 */ +#define EXTI_SWIER_SWIER17 EXTI_SWIER_SWIER17_Msk /*!< Software Interrupt on line 17 */ +#define EXTI_SWIER_SWIER18_Pos (18U) +#define EXTI_SWIER_SWIER18_Msk (0x1UL << EXTI_SWIER_SWIER18_Pos) /*!< 0x00040000 */ +#define EXTI_SWIER_SWIER18 EXTI_SWIER_SWIER18_Msk /*!< Software Interrupt on line 18 */ + +/* References Defines */ +#define EXTI_SWIER_SWI0 EXTI_SWIER_SWIER0 +#define EXTI_SWIER_SWI1 EXTI_SWIER_SWIER1 +#define EXTI_SWIER_SWI2 EXTI_SWIER_SWIER2 +#define EXTI_SWIER_SWI3 EXTI_SWIER_SWIER3 +#define EXTI_SWIER_SWI4 EXTI_SWIER_SWIER4 +#define EXTI_SWIER_SWI5 EXTI_SWIER_SWIER5 +#define EXTI_SWIER_SWI6 EXTI_SWIER_SWIER6 +#define EXTI_SWIER_SWI7 EXTI_SWIER_SWIER7 +#define EXTI_SWIER_SWI8 EXTI_SWIER_SWIER8 +#define EXTI_SWIER_SWI9 EXTI_SWIER_SWIER9 +#define EXTI_SWIER_SWI10 EXTI_SWIER_SWIER10 +#define EXTI_SWIER_SWI11 EXTI_SWIER_SWIER11 +#define EXTI_SWIER_SWI12 EXTI_SWIER_SWIER12 +#define EXTI_SWIER_SWI13 EXTI_SWIER_SWIER13 +#define EXTI_SWIER_SWI14 EXTI_SWIER_SWIER14 +#define EXTI_SWIER_SWI15 EXTI_SWIER_SWIER15 +#define EXTI_SWIER_SWI16 EXTI_SWIER_SWIER16 +#define EXTI_SWIER_SWI17 EXTI_SWIER_SWIER17 +#define EXTI_SWIER_SWI18 EXTI_SWIER_SWIER18 + +/******************* Bit definition for EXTI_PR register ********************/ +#define EXTI_PR_PR0_Pos (0U) +#define EXTI_PR_PR0_Msk (0x1UL << EXTI_PR_PR0_Pos) /*!< 0x00000001 */ +#define EXTI_PR_PR0 EXTI_PR_PR0_Msk /*!< Pending bit for line 0 */ +#define EXTI_PR_PR1_Pos (1U) +#define EXTI_PR_PR1_Msk (0x1UL << EXTI_PR_PR1_Pos) /*!< 0x00000002 */ +#define EXTI_PR_PR1 EXTI_PR_PR1_Msk /*!< Pending bit for line 1 */ +#define EXTI_PR_PR2_Pos (2U) +#define EXTI_PR_PR2_Msk (0x1UL << EXTI_PR_PR2_Pos) /*!< 0x00000004 */ +#define EXTI_PR_PR2 EXTI_PR_PR2_Msk /*!< Pending bit for line 2 */ +#define EXTI_PR_PR3_Pos (3U) +#define EXTI_PR_PR3_Msk (0x1UL << EXTI_PR_PR3_Pos) /*!< 0x00000008 */ +#define EXTI_PR_PR3 EXTI_PR_PR3_Msk /*!< Pending bit for line 3 */ +#define EXTI_PR_PR4_Pos (4U) +#define EXTI_PR_PR4_Msk (0x1UL << EXTI_PR_PR4_Pos) /*!< 0x00000010 */ +#define EXTI_PR_PR4 EXTI_PR_PR4_Msk /*!< Pending bit for line 4 */ +#define EXTI_PR_PR5_Pos (5U) +#define EXTI_PR_PR5_Msk (0x1UL << EXTI_PR_PR5_Pos) /*!< 0x00000020 */ +#define EXTI_PR_PR5 EXTI_PR_PR5_Msk /*!< Pending bit for line 5 */ +#define EXTI_PR_PR6_Pos (6U) +#define EXTI_PR_PR6_Msk (0x1UL << EXTI_PR_PR6_Pos) /*!< 0x00000040 */ +#define EXTI_PR_PR6 EXTI_PR_PR6_Msk /*!< Pending bit for line 6 */ +#define EXTI_PR_PR7_Pos (7U) +#define EXTI_PR_PR7_Msk (0x1UL << EXTI_PR_PR7_Pos) /*!< 0x00000080 */ +#define EXTI_PR_PR7 EXTI_PR_PR7_Msk /*!< Pending bit for line 7 */ +#define EXTI_PR_PR8_Pos (8U) +#define EXTI_PR_PR8_Msk (0x1UL << EXTI_PR_PR8_Pos) /*!< 0x00000100 */ +#define EXTI_PR_PR8 EXTI_PR_PR8_Msk /*!< Pending bit for line 8 */ +#define EXTI_PR_PR9_Pos (9U) +#define EXTI_PR_PR9_Msk (0x1UL << EXTI_PR_PR9_Pos) /*!< 0x00000200 */ +#define EXTI_PR_PR9 EXTI_PR_PR9_Msk /*!< Pending bit for line 9 */ +#define EXTI_PR_PR10_Pos (10U) +#define EXTI_PR_PR10_Msk (0x1UL << EXTI_PR_PR10_Pos) /*!< 0x00000400 */ +#define EXTI_PR_PR10 EXTI_PR_PR10_Msk /*!< Pending bit for line 10 */ +#define EXTI_PR_PR11_Pos (11U) +#define EXTI_PR_PR11_Msk (0x1UL << EXTI_PR_PR11_Pos) /*!< 0x00000800 */ +#define EXTI_PR_PR11 EXTI_PR_PR11_Msk /*!< Pending bit for line 11 */ +#define EXTI_PR_PR12_Pos (12U) +#define EXTI_PR_PR12_Msk (0x1UL << EXTI_PR_PR12_Pos) /*!< 0x00001000 */ +#define EXTI_PR_PR12 EXTI_PR_PR12_Msk /*!< Pending bit for line 12 */ +#define EXTI_PR_PR13_Pos (13U) +#define EXTI_PR_PR13_Msk (0x1UL << EXTI_PR_PR13_Pos) /*!< 0x00002000 */ +#define EXTI_PR_PR13 EXTI_PR_PR13_Msk /*!< Pending bit for line 13 */ +#define EXTI_PR_PR14_Pos (14U) +#define EXTI_PR_PR14_Msk (0x1UL << EXTI_PR_PR14_Pos) /*!< 0x00004000 */ +#define EXTI_PR_PR14 EXTI_PR_PR14_Msk /*!< Pending bit for line 14 */ +#define EXTI_PR_PR15_Pos (15U) +#define EXTI_PR_PR15_Msk (0x1UL << EXTI_PR_PR15_Pos) /*!< 0x00008000 */ +#define EXTI_PR_PR15 EXTI_PR_PR15_Msk /*!< Pending bit for line 15 */ +#define EXTI_PR_PR16_Pos (16U) +#define EXTI_PR_PR16_Msk (0x1UL << EXTI_PR_PR16_Pos) /*!< 0x00010000 */ +#define EXTI_PR_PR16 EXTI_PR_PR16_Msk /*!< Pending bit for line 16 */ +#define EXTI_PR_PR17_Pos (17U) +#define EXTI_PR_PR17_Msk (0x1UL << EXTI_PR_PR17_Pos) /*!< 0x00020000 */ +#define EXTI_PR_PR17 EXTI_PR_PR17_Msk /*!< Pending bit for line 17 */ +#define EXTI_PR_PR18_Pos (18U) +#define EXTI_PR_PR18_Msk (0x1UL << EXTI_PR_PR18_Pos) /*!< 0x00040000 */ +#define EXTI_PR_PR18 EXTI_PR_PR18_Msk /*!< Pending bit for line 18 */ + +/* References Defines */ +#define EXTI_PR_PIF0 EXTI_PR_PR0 +#define EXTI_PR_PIF1 EXTI_PR_PR1 +#define EXTI_PR_PIF2 EXTI_PR_PR2 +#define EXTI_PR_PIF3 EXTI_PR_PR3 +#define EXTI_PR_PIF4 EXTI_PR_PR4 +#define EXTI_PR_PIF5 EXTI_PR_PR5 +#define EXTI_PR_PIF6 EXTI_PR_PR6 +#define EXTI_PR_PIF7 EXTI_PR_PR7 +#define EXTI_PR_PIF8 EXTI_PR_PR8 +#define EXTI_PR_PIF9 EXTI_PR_PR9 +#define EXTI_PR_PIF10 EXTI_PR_PR10 +#define EXTI_PR_PIF11 EXTI_PR_PR11 +#define EXTI_PR_PIF12 EXTI_PR_PR12 +#define EXTI_PR_PIF13 EXTI_PR_PR13 +#define EXTI_PR_PIF14 EXTI_PR_PR14 +#define EXTI_PR_PIF15 EXTI_PR_PR15 +#define EXTI_PR_PIF16 EXTI_PR_PR16 +#define EXTI_PR_PIF17 EXTI_PR_PR17 +#define EXTI_PR_PIF18 EXTI_PR_PR18 + +/******************************************************************************/ +/* */ +/* DMA Controller */ +/* */ +/******************************************************************************/ + +/******************* Bit definition for DMA_ISR register ********************/ +#define DMA_ISR_GIF1_Pos (0U) +#define DMA_ISR_GIF1_Msk (0x1UL << DMA_ISR_GIF1_Pos) /*!< 0x00000001 */ +#define DMA_ISR_GIF1 DMA_ISR_GIF1_Msk /*!< Channel 1 Global interrupt flag */ +#define DMA_ISR_TCIF1_Pos (1U) +#define DMA_ISR_TCIF1_Msk (0x1UL << DMA_ISR_TCIF1_Pos) /*!< 0x00000002 */ +#define DMA_ISR_TCIF1 DMA_ISR_TCIF1_Msk /*!< Channel 1 Transfer Complete flag */ +#define DMA_ISR_HTIF1_Pos (2U) +#define DMA_ISR_HTIF1_Msk (0x1UL << DMA_ISR_HTIF1_Pos) /*!< 0x00000004 */ +#define DMA_ISR_HTIF1 DMA_ISR_HTIF1_Msk /*!< Channel 1 Half Transfer flag */ +#define DMA_ISR_TEIF1_Pos (3U) +#define DMA_ISR_TEIF1_Msk (0x1UL << DMA_ISR_TEIF1_Pos) /*!< 0x00000008 */ +#define DMA_ISR_TEIF1 DMA_ISR_TEIF1_Msk /*!< Channel 1 Transfer Error flag */ +#define DMA_ISR_GIF2_Pos (4U) +#define DMA_ISR_GIF2_Msk (0x1UL << DMA_ISR_GIF2_Pos) /*!< 0x00000010 */ +#define DMA_ISR_GIF2 DMA_ISR_GIF2_Msk /*!< Channel 2 Global interrupt flag */ +#define DMA_ISR_TCIF2_Pos (5U) +#define DMA_ISR_TCIF2_Msk (0x1UL << DMA_ISR_TCIF2_Pos) /*!< 0x00000020 */ +#define DMA_ISR_TCIF2 DMA_ISR_TCIF2_Msk /*!< Channel 2 Transfer Complete flag */ +#define DMA_ISR_HTIF2_Pos (6U) +#define DMA_ISR_HTIF2_Msk (0x1UL << DMA_ISR_HTIF2_Pos) /*!< 0x00000040 */ +#define DMA_ISR_HTIF2 DMA_ISR_HTIF2_Msk /*!< Channel 2 Half Transfer flag */ +#define DMA_ISR_TEIF2_Pos (7U) +#define DMA_ISR_TEIF2_Msk (0x1UL << DMA_ISR_TEIF2_Pos) /*!< 0x00000080 */ +#define DMA_ISR_TEIF2 DMA_ISR_TEIF2_Msk /*!< Channel 2 Transfer Error flag */ +#define DMA_ISR_GIF3_Pos (8U) +#define DMA_ISR_GIF3_Msk (0x1UL << DMA_ISR_GIF3_Pos) /*!< 0x00000100 */ +#define DMA_ISR_GIF3 DMA_ISR_GIF3_Msk /*!< Channel 3 Global interrupt flag */ +#define DMA_ISR_TCIF3_Pos (9U) +#define DMA_ISR_TCIF3_Msk (0x1UL << DMA_ISR_TCIF3_Pos) /*!< 0x00000200 */ +#define DMA_ISR_TCIF3 DMA_ISR_TCIF3_Msk /*!< Channel 3 Transfer Complete flag */ +#define DMA_ISR_HTIF3_Pos (10U) +#define DMA_ISR_HTIF3_Msk (0x1UL << DMA_ISR_HTIF3_Pos) /*!< 0x00000400 */ +#define DMA_ISR_HTIF3 DMA_ISR_HTIF3_Msk /*!< Channel 3 Half Transfer flag */ +#define DMA_ISR_TEIF3_Pos (11U) +#define DMA_ISR_TEIF3_Msk (0x1UL << DMA_ISR_TEIF3_Pos) /*!< 0x00000800 */ +#define DMA_ISR_TEIF3 DMA_ISR_TEIF3_Msk /*!< Channel 3 Transfer Error flag */ +#define DMA_ISR_GIF4_Pos (12U) +#define DMA_ISR_GIF4_Msk (0x1UL << DMA_ISR_GIF4_Pos) /*!< 0x00001000 */ +#define DMA_ISR_GIF4 DMA_ISR_GIF4_Msk /*!< Channel 4 Global interrupt flag */ +#define DMA_ISR_TCIF4_Pos (13U) +#define DMA_ISR_TCIF4_Msk (0x1UL << DMA_ISR_TCIF4_Pos) /*!< 0x00002000 */ +#define DMA_ISR_TCIF4 DMA_ISR_TCIF4_Msk /*!< Channel 4 Transfer Complete flag */ +#define DMA_ISR_HTIF4_Pos (14U) +#define DMA_ISR_HTIF4_Msk (0x1UL << DMA_ISR_HTIF4_Pos) /*!< 0x00004000 */ +#define DMA_ISR_HTIF4 DMA_ISR_HTIF4_Msk /*!< Channel 4 Half Transfer flag */ +#define DMA_ISR_TEIF4_Pos (15U) +#define DMA_ISR_TEIF4_Msk (0x1UL << DMA_ISR_TEIF4_Pos) /*!< 0x00008000 */ +#define DMA_ISR_TEIF4 DMA_ISR_TEIF4_Msk /*!< Channel 4 Transfer Error flag */ +#define DMA_ISR_GIF5_Pos (16U) +#define DMA_ISR_GIF5_Msk (0x1UL << DMA_ISR_GIF5_Pos) /*!< 0x00010000 */ +#define DMA_ISR_GIF5 DMA_ISR_GIF5_Msk /*!< Channel 5 Global interrupt flag */ +#define DMA_ISR_TCIF5_Pos (17U) +#define DMA_ISR_TCIF5_Msk (0x1UL << DMA_ISR_TCIF5_Pos) /*!< 0x00020000 */ +#define DMA_ISR_TCIF5 DMA_ISR_TCIF5_Msk /*!< Channel 5 Transfer Complete flag */ +#define DMA_ISR_HTIF5_Pos (18U) +#define DMA_ISR_HTIF5_Msk (0x1UL << DMA_ISR_HTIF5_Pos) /*!< 0x00040000 */ +#define DMA_ISR_HTIF5 DMA_ISR_HTIF5_Msk /*!< Channel 5 Half Transfer flag */ +#define DMA_ISR_TEIF5_Pos (19U) +#define DMA_ISR_TEIF5_Msk (0x1UL << DMA_ISR_TEIF5_Pos) /*!< 0x00080000 */ +#define DMA_ISR_TEIF5 DMA_ISR_TEIF5_Msk /*!< Channel 5 Transfer Error flag */ +#define DMA_ISR_GIF6_Pos (20U) +#define DMA_ISR_GIF6_Msk (0x1UL << DMA_ISR_GIF6_Pos) /*!< 0x00100000 */ +#define DMA_ISR_GIF6 DMA_ISR_GIF6_Msk /*!< Channel 6 Global interrupt flag */ +#define DMA_ISR_TCIF6_Pos (21U) +#define DMA_ISR_TCIF6_Msk (0x1UL << DMA_ISR_TCIF6_Pos) /*!< 0x00200000 */ +#define DMA_ISR_TCIF6 DMA_ISR_TCIF6_Msk /*!< Channel 6 Transfer Complete flag */ +#define DMA_ISR_HTIF6_Pos (22U) +#define DMA_ISR_HTIF6_Msk (0x1UL << DMA_ISR_HTIF6_Pos) /*!< 0x00400000 */ +#define DMA_ISR_HTIF6 DMA_ISR_HTIF6_Msk /*!< Channel 6 Half Transfer flag */ +#define DMA_ISR_TEIF6_Pos (23U) +#define DMA_ISR_TEIF6_Msk (0x1UL << DMA_ISR_TEIF6_Pos) /*!< 0x00800000 */ +#define DMA_ISR_TEIF6 DMA_ISR_TEIF6_Msk /*!< Channel 6 Transfer Error flag */ +#define DMA_ISR_GIF7_Pos (24U) +#define DMA_ISR_GIF7_Msk (0x1UL << DMA_ISR_GIF7_Pos) /*!< 0x01000000 */ +#define DMA_ISR_GIF7 DMA_ISR_GIF7_Msk /*!< Channel 7 Global interrupt flag */ +#define DMA_ISR_TCIF7_Pos (25U) +#define DMA_ISR_TCIF7_Msk (0x1UL << DMA_ISR_TCIF7_Pos) /*!< 0x02000000 */ +#define DMA_ISR_TCIF7 DMA_ISR_TCIF7_Msk /*!< Channel 7 Transfer Complete flag */ +#define DMA_ISR_HTIF7_Pos (26U) +#define DMA_ISR_HTIF7_Msk (0x1UL << DMA_ISR_HTIF7_Pos) /*!< 0x04000000 */ +#define DMA_ISR_HTIF7 DMA_ISR_HTIF7_Msk /*!< Channel 7 Half Transfer flag */ +#define DMA_ISR_TEIF7_Pos (27U) +#define DMA_ISR_TEIF7_Msk (0x1UL << DMA_ISR_TEIF7_Pos) /*!< 0x08000000 */ +#define DMA_ISR_TEIF7 DMA_ISR_TEIF7_Msk /*!< Channel 7 Transfer Error flag */ + +/******************* Bit definition for DMA_IFCR register *******************/ +#define DMA_IFCR_CGIF1_Pos (0U) +#define DMA_IFCR_CGIF1_Msk (0x1UL << DMA_IFCR_CGIF1_Pos) /*!< 0x00000001 */ +#define DMA_IFCR_CGIF1 DMA_IFCR_CGIF1_Msk /*!< Channel 1 Global interrupt clear */ +#define DMA_IFCR_CTCIF1_Pos (1U) +#define DMA_IFCR_CTCIF1_Msk (0x1UL << DMA_IFCR_CTCIF1_Pos) /*!< 0x00000002 */ +#define DMA_IFCR_CTCIF1 DMA_IFCR_CTCIF1_Msk /*!< Channel 1 Transfer Complete clear */ +#define DMA_IFCR_CHTIF1_Pos (2U) +#define DMA_IFCR_CHTIF1_Msk (0x1UL << DMA_IFCR_CHTIF1_Pos) /*!< 0x00000004 */ +#define DMA_IFCR_CHTIF1 DMA_IFCR_CHTIF1_Msk /*!< Channel 1 Half Transfer clear */ +#define DMA_IFCR_CTEIF1_Pos (3U) +#define DMA_IFCR_CTEIF1_Msk (0x1UL << DMA_IFCR_CTEIF1_Pos) /*!< 0x00000008 */ +#define DMA_IFCR_CTEIF1 DMA_IFCR_CTEIF1_Msk /*!< Channel 1 Transfer Error clear */ +#define DMA_IFCR_CGIF2_Pos (4U) +#define DMA_IFCR_CGIF2_Msk (0x1UL << DMA_IFCR_CGIF2_Pos) /*!< 0x00000010 */ +#define DMA_IFCR_CGIF2 DMA_IFCR_CGIF2_Msk /*!< Channel 2 Global interrupt clear */ +#define DMA_IFCR_CTCIF2_Pos (5U) +#define DMA_IFCR_CTCIF2_Msk (0x1UL << DMA_IFCR_CTCIF2_Pos) /*!< 0x00000020 */ +#define DMA_IFCR_CTCIF2 DMA_IFCR_CTCIF2_Msk /*!< Channel 2 Transfer Complete clear */ +#define DMA_IFCR_CHTIF2_Pos (6U) +#define DMA_IFCR_CHTIF2_Msk (0x1UL << DMA_IFCR_CHTIF2_Pos) /*!< 0x00000040 */ +#define DMA_IFCR_CHTIF2 DMA_IFCR_CHTIF2_Msk /*!< Channel 2 Half Transfer clear */ +#define DMA_IFCR_CTEIF2_Pos (7U) +#define DMA_IFCR_CTEIF2_Msk (0x1UL << DMA_IFCR_CTEIF2_Pos) /*!< 0x00000080 */ +#define DMA_IFCR_CTEIF2 DMA_IFCR_CTEIF2_Msk /*!< Channel 2 Transfer Error clear */ +#define DMA_IFCR_CGIF3_Pos (8U) +#define DMA_IFCR_CGIF3_Msk (0x1UL << DMA_IFCR_CGIF3_Pos) /*!< 0x00000100 */ +#define DMA_IFCR_CGIF3 DMA_IFCR_CGIF3_Msk /*!< Channel 3 Global interrupt clear */ +#define DMA_IFCR_CTCIF3_Pos (9U) +#define DMA_IFCR_CTCIF3_Msk (0x1UL << DMA_IFCR_CTCIF3_Pos) /*!< 0x00000200 */ +#define DMA_IFCR_CTCIF3 DMA_IFCR_CTCIF3_Msk /*!< Channel 3 Transfer Complete clear */ +#define DMA_IFCR_CHTIF3_Pos (10U) +#define DMA_IFCR_CHTIF3_Msk (0x1UL << DMA_IFCR_CHTIF3_Pos) /*!< 0x00000400 */ +#define DMA_IFCR_CHTIF3 DMA_IFCR_CHTIF3_Msk /*!< Channel 3 Half Transfer clear */ +#define DMA_IFCR_CTEIF3_Pos (11U) +#define DMA_IFCR_CTEIF3_Msk (0x1UL << DMA_IFCR_CTEIF3_Pos) /*!< 0x00000800 */ +#define DMA_IFCR_CTEIF3 DMA_IFCR_CTEIF3_Msk /*!< Channel 3 Transfer Error clear */ +#define DMA_IFCR_CGIF4_Pos (12U) +#define DMA_IFCR_CGIF4_Msk (0x1UL << DMA_IFCR_CGIF4_Pos) /*!< 0x00001000 */ +#define DMA_IFCR_CGIF4 DMA_IFCR_CGIF4_Msk /*!< Channel 4 Global interrupt clear */ +#define DMA_IFCR_CTCIF4_Pos (13U) +#define DMA_IFCR_CTCIF4_Msk (0x1UL << DMA_IFCR_CTCIF4_Pos) /*!< 0x00002000 */ +#define DMA_IFCR_CTCIF4 DMA_IFCR_CTCIF4_Msk /*!< Channel 4 Transfer Complete clear */ +#define DMA_IFCR_CHTIF4_Pos (14U) +#define DMA_IFCR_CHTIF4_Msk (0x1UL << DMA_IFCR_CHTIF4_Pos) /*!< 0x00004000 */ +#define DMA_IFCR_CHTIF4 DMA_IFCR_CHTIF4_Msk /*!< Channel 4 Half Transfer clear */ +#define DMA_IFCR_CTEIF4_Pos (15U) +#define DMA_IFCR_CTEIF4_Msk (0x1UL << DMA_IFCR_CTEIF4_Pos) /*!< 0x00008000 */ +#define DMA_IFCR_CTEIF4 DMA_IFCR_CTEIF4_Msk /*!< Channel 4 Transfer Error clear */ +#define DMA_IFCR_CGIF5_Pos (16U) +#define DMA_IFCR_CGIF5_Msk (0x1UL << DMA_IFCR_CGIF5_Pos) /*!< 0x00010000 */ +#define DMA_IFCR_CGIF5 DMA_IFCR_CGIF5_Msk /*!< Channel 5 Global interrupt clear */ +#define DMA_IFCR_CTCIF5_Pos (17U) +#define DMA_IFCR_CTCIF5_Msk (0x1UL << DMA_IFCR_CTCIF5_Pos) /*!< 0x00020000 */ +#define DMA_IFCR_CTCIF5 DMA_IFCR_CTCIF5_Msk /*!< Channel 5 Transfer Complete clear */ +#define DMA_IFCR_CHTIF5_Pos (18U) +#define DMA_IFCR_CHTIF5_Msk (0x1UL << DMA_IFCR_CHTIF5_Pos) /*!< 0x00040000 */ +#define DMA_IFCR_CHTIF5 DMA_IFCR_CHTIF5_Msk /*!< Channel 5 Half Transfer clear */ +#define DMA_IFCR_CTEIF5_Pos (19U) +#define DMA_IFCR_CTEIF5_Msk (0x1UL << DMA_IFCR_CTEIF5_Pos) /*!< 0x00080000 */ +#define DMA_IFCR_CTEIF5 DMA_IFCR_CTEIF5_Msk /*!< Channel 5 Transfer Error clear */ +#define DMA_IFCR_CGIF6_Pos (20U) +#define DMA_IFCR_CGIF6_Msk (0x1UL << DMA_IFCR_CGIF6_Pos) /*!< 0x00100000 */ +#define DMA_IFCR_CGIF6 DMA_IFCR_CGIF6_Msk /*!< Channel 6 Global interrupt clear */ +#define DMA_IFCR_CTCIF6_Pos (21U) +#define DMA_IFCR_CTCIF6_Msk (0x1UL << DMA_IFCR_CTCIF6_Pos) /*!< 0x00200000 */ +#define DMA_IFCR_CTCIF6 DMA_IFCR_CTCIF6_Msk /*!< Channel 6 Transfer Complete clear */ +#define DMA_IFCR_CHTIF6_Pos (22U) +#define DMA_IFCR_CHTIF6_Msk (0x1UL << DMA_IFCR_CHTIF6_Pos) /*!< 0x00400000 */ +#define DMA_IFCR_CHTIF6 DMA_IFCR_CHTIF6_Msk /*!< Channel 6 Half Transfer clear */ +#define DMA_IFCR_CTEIF6_Pos (23U) +#define DMA_IFCR_CTEIF6_Msk (0x1UL << DMA_IFCR_CTEIF6_Pos) /*!< 0x00800000 */ +#define DMA_IFCR_CTEIF6 DMA_IFCR_CTEIF6_Msk /*!< Channel 6 Transfer Error clear */ +#define DMA_IFCR_CGIF7_Pos (24U) +#define DMA_IFCR_CGIF7_Msk (0x1UL << DMA_IFCR_CGIF7_Pos) /*!< 0x01000000 */ +#define DMA_IFCR_CGIF7 DMA_IFCR_CGIF7_Msk /*!< Channel 7 Global interrupt clear */ +#define DMA_IFCR_CTCIF7_Pos (25U) +#define DMA_IFCR_CTCIF7_Msk (0x1UL << DMA_IFCR_CTCIF7_Pos) /*!< 0x02000000 */ +#define DMA_IFCR_CTCIF7 DMA_IFCR_CTCIF7_Msk /*!< Channel 7 Transfer Complete clear */ +#define DMA_IFCR_CHTIF7_Pos (26U) +#define DMA_IFCR_CHTIF7_Msk (0x1UL << DMA_IFCR_CHTIF7_Pos) /*!< 0x04000000 */ +#define DMA_IFCR_CHTIF7 DMA_IFCR_CHTIF7_Msk /*!< Channel 7 Half Transfer clear */ +#define DMA_IFCR_CTEIF7_Pos (27U) +#define DMA_IFCR_CTEIF7_Msk (0x1UL << DMA_IFCR_CTEIF7_Pos) /*!< 0x08000000 */ +#define DMA_IFCR_CTEIF7 DMA_IFCR_CTEIF7_Msk /*!< Channel 7 Transfer Error clear */ + +/******************* Bit definition for DMA_CCR register *******************/ +#define DMA_CCR_EN_Pos (0U) +#define DMA_CCR_EN_Msk (0x1UL << DMA_CCR_EN_Pos) /*!< 0x00000001 */ +#define DMA_CCR_EN DMA_CCR_EN_Msk /*!< Channel enable */ +#define DMA_CCR_TCIE_Pos (1U) +#define DMA_CCR_TCIE_Msk (0x1UL << DMA_CCR_TCIE_Pos) /*!< 0x00000002 */ +#define DMA_CCR_TCIE DMA_CCR_TCIE_Msk /*!< Transfer complete interrupt enable */ +#define DMA_CCR_HTIE_Pos (2U) +#define DMA_CCR_HTIE_Msk (0x1UL << DMA_CCR_HTIE_Pos) /*!< 0x00000004 */ +#define DMA_CCR_HTIE DMA_CCR_HTIE_Msk /*!< Half Transfer interrupt enable */ +#define DMA_CCR_TEIE_Pos (3U) +#define DMA_CCR_TEIE_Msk (0x1UL << DMA_CCR_TEIE_Pos) /*!< 0x00000008 */ +#define DMA_CCR_TEIE DMA_CCR_TEIE_Msk /*!< Transfer error interrupt enable */ +#define DMA_CCR_DIR_Pos (4U) +#define DMA_CCR_DIR_Msk (0x1UL << DMA_CCR_DIR_Pos) /*!< 0x00000010 */ +#define DMA_CCR_DIR DMA_CCR_DIR_Msk /*!< Data transfer direction */ +#define DMA_CCR_CIRC_Pos (5U) +#define DMA_CCR_CIRC_Msk (0x1UL << DMA_CCR_CIRC_Pos) /*!< 0x00000020 */ +#define DMA_CCR_CIRC DMA_CCR_CIRC_Msk /*!< Circular mode */ +#define DMA_CCR_PINC_Pos (6U) +#define DMA_CCR_PINC_Msk (0x1UL << DMA_CCR_PINC_Pos) /*!< 0x00000040 */ +#define DMA_CCR_PINC DMA_CCR_PINC_Msk /*!< Peripheral increment mode */ +#define DMA_CCR_MINC_Pos (7U) +#define DMA_CCR_MINC_Msk (0x1UL << DMA_CCR_MINC_Pos) /*!< 0x00000080 */ +#define DMA_CCR_MINC DMA_CCR_MINC_Msk /*!< Memory increment mode */ + +#define DMA_CCR_PSIZE_Pos (8U) +#define DMA_CCR_PSIZE_Msk (0x3UL << DMA_CCR_PSIZE_Pos) /*!< 0x00000300 */ +#define DMA_CCR_PSIZE DMA_CCR_PSIZE_Msk /*!< PSIZE[1:0] bits (Peripheral size) */ +#define DMA_CCR_PSIZE_0 (0x1UL << DMA_CCR_PSIZE_Pos) /*!< 0x00000100 */ +#define DMA_CCR_PSIZE_1 (0x2UL << DMA_CCR_PSIZE_Pos) /*!< 0x00000200 */ + +#define DMA_CCR_MSIZE_Pos (10U) +#define DMA_CCR_MSIZE_Msk (0x3UL << DMA_CCR_MSIZE_Pos) /*!< 0x00000C00 */ +#define DMA_CCR_MSIZE DMA_CCR_MSIZE_Msk /*!< MSIZE[1:0] bits (Memory size) */ +#define DMA_CCR_MSIZE_0 (0x1UL << DMA_CCR_MSIZE_Pos) /*!< 0x00000400 */ +#define DMA_CCR_MSIZE_1 (0x2UL << DMA_CCR_MSIZE_Pos) /*!< 0x00000800 */ + +#define DMA_CCR_PL_Pos (12U) +#define DMA_CCR_PL_Msk (0x3UL << DMA_CCR_PL_Pos) /*!< 0x00003000 */ +#define DMA_CCR_PL DMA_CCR_PL_Msk /*!< PL[1:0] bits(Channel Priority level) */ +#define DMA_CCR_PL_0 (0x1UL << DMA_CCR_PL_Pos) /*!< 0x00001000 */ +#define DMA_CCR_PL_1 (0x2UL << DMA_CCR_PL_Pos) /*!< 0x00002000 */ + +#define DMA_CCR_MEM2MEM_Pos (14U) +#define DMA_CCR_MEM2MEM_Msk (0x1UL << DMA_CCR_MEM2MEM_Pos) /*!< 0x00004000 */ +#define DMA_CCR_MEM2MEM DMA_CCR_MEM2MEM_Msk /*!< Memory to memory mode */ + +/****************** Bit definition for DMA_CNDTR register ******************/ +#define DMA_CNDTR_NDT_Pos (0U) +#define DMA_CNDTR_NDT_Msk (0xFFFFUL << DMA_CNDTR_NDT_Pos) /*!< 0x0000FFFF */ +#define DMA_CNDTR_NDT DMA_CNDTR_NDT_Msk /*!< Number of data to Transfer */ + +/****************** Bit definition for DMA_CPAR register *******************/ +#define DMA_CPAR_PA_Pos (0U) +#define DMA_CPAR_PA_Msk (0xFFFFFFFFUL << DMA_CPAR_PA_Pos) /*!< 0xFFFFFFFF */ +#define DMA_CPAR_PA DMA_CPAR_PA_Msk /*!< Peripheral Address */ + +/****************** Bit definition for DMA_CMAR register *******************/ +#define DMA_CMAR_MA_Pos (0U) +#define DMA_CMAR_MA_Msk (0xFFFFFFFFUL << DMA_CMAR_MA_Pos) /*!< 0xFFFFFFFF */ +#define DMA_CMAR_MA DMA_CMAR_MA_Msk /*!< Memory Address */ + +/******************************************************************************/ +/* */ +/* Analog to Digital Converter (ADC) */ +/* */ +/******************************************************************************/ + +/* + * @brief Specific device feature definitions (not present on all devices in the STM32F1 family) + */ +#define ADC_MULTIMODE_SUPPORT /*!< ADC feature available only on specific devices: multimode available on devices with several ADC instances */ + +/******************** Bit definition for ADC_SR register ********************/ +#define ADC_SR_AWD_Pos (0U) +#define ADC_SR_AWD_Msk (0x1UL << ADC_SR_AWD_Pos) /*!< 0x00000001 */ +#define ADC_SR_AWD ADC_SR_AWD_Msk /*!< ADC analog watchdog 1 flag */ +#define ADC_SR_EOS_Pos (1U) +#define ADC_SR_EOS_Msk (0x1UL << ADC_SR_EOS_Pos) /*!< 0x00000002 */ +#define ADC_SR_EOS ADC_SR_EOS_Msk /*!< ADC group regular end of sequence conversions flag */ +#define ADC_SR_JEOS_Pos (2U) +#define ADC_SR_JEOS_Msk (0x1UL << ADC_SR_JEOS_Pos) /*!< 0x00000004 */ +#define ADC_SR_JEOS ADC_SR_JEOS_Msk /*!< ADC group injected end of sequence conversions flag */ +#define ADC_SR_JSTRT_Pos (3U) +#define ADC_SR_JSTRT_Msk (0x1UL << ADC_SR_JSTRT_Pos) /*!< 0x00000008 */ +#define ADC_SR_JSTRT ADC_SR_JSTRT_Msk /*!< ADC group injected conversion start flag */ +#define ADC_SR_STRT_Pos (4U) +#define ADC_SR_STRT_Msk (0x1UL << ADC_SR_STRT_Pos) /*!< 0x00000010 */ +#define ADC_SR_STRT ADC_SR_STRT_Msk /*!< ADC group regular conversion start flag */ + +/* Legacy defines */ +#define ADC_SR_EOC (ADC_SR_EOS) +#define ADC_SR_JEOC (ADC_SR_JEOS) + +/******************* Bit definition for ADC_CR1 register ********************/ +#define ADC_CR1_AWDCH_Pos (0U) +#define ADC_CR1_AWDCH_Msk (0x1FUL << ADC_CR1_AWDCH_Pos) /*!< 0x0000001F */ +#define ADC_CR1_AWDCH ADC_CR1_AWDCH_Msk /*!< ADC analog watchdog 1 monitored channel selection */ +#define ADC_CR1_AWDCH_0 (0x01UL << ADC_CR1_AWDCH_Pos) /*!< 0x00000001 */ +#define ADC_CR1_AWDCH_1 (0x02UL << ADC_CR1_AWDCH_Pos) /*!< 0x00000002 */ +#define ADC_CR1_AWDCH_2 (0x04UL << ADC_CR1_AWDCH_Pos) /*!< 0x00000004 */ +#define ADC_CR1_AWDCH_3 (0x08UL << ADC_CR1_AWDCH_Pos) /*!< 0x00000008 */ +#define ADC_CR1_AWDCH_4 (0x10UL << ADC_CR1_AWDCH_Pos) /*!< 0x00000010 */ + +#define ADC_CR1_EOSIE_Pos (5U) +#define ADC_CR1_EOSIE_Msk (0x1UL << ADC_CR1_EOSIE_Pos) /*!< 0x00000020 */ +#define ADC_CR1_EOSIE ADC_CR1_EOSIE_Msk /*!< ADC group regular end of sequence conversions interrupt */ +#define ADC_CR1_AWDIE_Pos (6U) +#define ADC_CR1_AWDIE_Msk (0x1UL << ADC_CR1_AWDIE_Pos) /*!< 0x00000040 */ +#define ADC_CR1_AWDIE ADC_CR1_AWDIE_Msk /*!< ADC analog watchdog 1 interrupt */ +#define ADC_CR1_JEOSIE_Pos (7U) +#define ADC_CR1_JEOSIE_Msk (0x1UL << ADC_CR1_JEOSIE_Pos) /*!< 0x00000080 */ +#define ADC_CR1_JEOSIE ADC_CR1_JEOSIE_Msk /*!< ADC group injected end of sequence conversions interrupt */ +#define ADC_CR1_SCAN_Pos (8U) +#define ADC_CR1_SCAN_Msk (0x1UL << ADC_CR1_SCAN_Pos) /*!< 0x00000100 */ +#define ADC_CR1_SCAN ADC_CR1_SCAN_Msk /*!< ADC scan mode */ +#define ADC_CR1_AWDSGL_Pos (9U) +#define ADC_CR1_AWDSGL_Msk (0x1UL << ADC_CR1_AWDSGL_Pos) /*!< 0x00000200 */ +#define ADC_CR1_AWDSGL ADC_CR1_AWDSGL_Msk /*!< ADC analog watchdog 1 monitoring a single channel or all channels */ +#define ADC_CR1_JAUTO_Pos (10U) +#define ADC_CR1_JAUTO_Msk (0x1UL << ADC_CR1_JAUTO_Pos) /*!< 0x00000400 */ +#define ADC_CR1_JAUTO ADC_CR1_JAUTO_Msk /*!< ADC group injected automatic trigger mode */ +#define ADC_CR1_DISCEN_Pos (11U) +#define ADC_CR1_DISCEN_Msk (0x1UL << ADC_CR1_DISCEN_Pos) /*!< 0x00000800 */ +#define ADC_CR1_DISCEN ADC_CR1_DISCEN_Msk /*!< ADC group regular sequencer discontinuous mode */ +#define ADC_CR1_JDISCEN_Pos (12U) +#define ADC_CR1_JDISCEN_Msk (0x1UL << ADC_CR1_JDISCEN_Pos) /*!< 0x00001000 */ +#define ADC_CR1_JDISCEN ADC_CR1_JDISCEN_Msk /*!< ADC group injected sequencer discontinuous mode */ + +#define ADC_CR1_DISCNUM_Pos (13U) +#define ADC_CR1_DISCNUM_Msk (0x7UL << ADC_CR1_DISCNUM_Pos) /*!< 0x0000E000 */ +#define ADC_CR1_DISCNUM ADC_CR1_DISCNUM_Msk /*!< ADC group regular sequencer discontinuous number of ranks */ +#define ADC_CR1_DISCNUM_0 (0x1UL << ADC_CR1_DISCNUM_Pos) /*!< 0x00002000 */ +#define ADC_CR1_DISCNUM_1 (0x2UL << ADC_CR1_DISCNUM_Pos) /*!< 0x00004000 */ +#define ADC_CR1_DISCNUM_2 (0x4UL << ADC_CR1_DISCNUM_Pos) /*!< 0x00008000 */ + +#define ADC_CR1_DUALMOD_Pos (16U) +#define ADC_CR1_DUALMOD_Msk (0xFUL << ADC_CR1_DUALMOD_Pos) /*!< 0x000F0000 */ +#define ADC_CR1_DUALMOD ADC_CR1_DUALMOD_Msk /*!< ADC multimode mode selection */ +#define ADC_CR1_DUALMOD_0 (0x1UL << ADC_CR1_DUALMOD_Pos) /*!< 0x00010000 */ +#define ADC_CR1_DUALMOD_1 (0x2UL << ADC_CR1_DUALMOD_Pos) /*!< 0x00020000 */ +#define ADC_CR1_DUALMOD_2 (0x4UL << ADC_CR1_DUALMOD_Pos) /*!< 0x00040000 */ +#define ADC_CR1_DUALMOD_3 (0x8UL << ADC_CR1_DUALMOD_Pos) /*!< 0x00080000 */ + +#define ADC_CR1_JAWDEN_Pos (22U) +#define ADC_CR1_JAWDEN_Msk (0x1UL << ADC_CR1_JAWDEN_Pos) /*!< 0x00400000 */ +#define ADC_CR1_JAWDEN ADC_CR1_JAWDEN_Msk /*!< ADC analog watchdog 1 enable on scope ADC group injected */ +#define ADC_CR1_AWDEN_Pos (23U) +#define ADC_CR1_AWDEN_Msk (0x1UL << ADC_CR1_AWDEN_Pos) /*!< 0x00800000 */ +#define ADC_CR1_AWDEN ADC_CR1_AWDEN_Msk /*!< ADC analog watchdog 1 enable on scope ADC group regular */ + +/* Legacy defines */ +#define ADC_CR1_EOCIE (ADC_CR1_EOSIE) +#define ADC_CR1_JEOCIE (ADC_CR1_JEOSIE) + +/******************* Bit definition for ADC_CR2 register ********************/ +#define ADC_CR2_ADON_Pos (0U) +#define ADC_CR2_ADON_Msk (0x1UL << ADC_CR2_ADON_Pos) /*!< 0x00000001 */ +#define ADC_CR2_ADON ADC_CR2_ADON_Msk /*!< ADC enable */ +#define ADC_CR2_CONT_Pos (1U) +#define ADC_CR2_CONT_Msk (0x1UL << ADC_CR2_CONT_Pos) /*!< 0x00000002 */ +#define ADC_CR2_CONT ADC_CR2_CONT_Msk /*!< ADC group regular continuous conversion mode */ +#define ADC_CR2_CAL_Pos (2U) +#define ADC_CR2_CAL_Msk (0x1UL << ADC_CR2_CAL_Pos) /*!< 0x00000004 */ +#define ADC_CR2_CAL ADC_CR2_CAL_Msk /*!< ADC calibration start */ +#define ADC_CR2_RSTCAL_Pos (3U) +#define ADC_CR2_RSTCAL_Msk (0x1UL << ADC_CR2_RSTCAL_Pos) /*!< 0x00000008 */ +#define ADC_CR2_RSTCAL ADC_CR2_RSTCAL_Msk /*!< ADC calibration reset */ +#define ADC_CR2_DMA_Pos (8U) +#define ADC_CR2_DMA_Msk (0x1UL << ADC_CR2_DMA_Pos) /*!< 0x00000100 */ +#define ADC_CR2_DMA ADC_CR2_DMA_Msk /*!< ADC DMA transfer enable */ +#define ADC_CR2_ALIGN_Pos (11U) +#define ADC_CR2_ALIGN_Msk (0x1UL << ADC_CR2_ALIGN_Pos) /*!< 0x00000800 */ +#define ADC_CR2_ALIGN ADC_CR2_ALIGN_Msk /*!< ADC data alignement */ + +#define ADC_CR2_JEXTSEL_Pos (12U) +#define ADC_CR2_JEXTSEL_Msk (0x7UL << ADC_CR2_JEXTSEL_Pos) /*!< 0x00007000 */ +#define ADC_CR2_JEXTSEL ADC_CR2_JEXTSEL_Msk /*!< ADC group injected external trigger source */ +#define ADC_CR2_JEXTSEL_0 (0x1UL << ADC_CR2_JEXTSEL_Pos) /*!< 0x00001000 */ +#define ADC_CR2_JEXTSEL_1 (0x2UL << ADC_CR2_JEXTSEL_Pos) /*!< 0x00002000 */ +#define ADC_CR2_JEXTSEL_2 (0x4UL << ADC_CR2_JEXTSEL_Pos) /*!< 0x00004000 */ + +#define ADC_CR2_JEXTTRIG_Pos (15U) +#define ADC_CR2_JEXTTRIG_Msk (0x1UL << ADC_CR2_JEXTTRIG_Pos) /*!< 0x00008000 */ +#define ADC_CR2_JEXTTRIG ADC_CR2_JEXTTRIG_Msk /*!< ADC group injected external trigger enable */ + +#define ADC_CR2_EXTSEL_Pos (17U) +#define ADC_CR2_EXTSEL_Msk (0x7UL << ADC_CR2_EXTSEL_Pos) /*!< 0x000E0000 */ +#define ADC_CR2_EXTSEL ADC_CR2_EXTSEL_Msk /*!< ADC group regular external trigger source */ +#define ADC_CR2_EXTSEL_0 (0x1UL << ADC_CR2_EXTSEL_Pos) /*!< 0x00020000 */ +#define ADC_CR2_EXTSEL_1 (0x2UL << ADC_CR2_EXTSEL_Pos) /*!< 0x00040000 */ +#define ADC_CR2_EXTSEL_2 (0x4UL << ADC_CR2_EXTSEL_Pos) /*!< 0x00080000 */ + +#define ADC_CR2_EXTTRIG_Pos (20U) +#define ADC_CR2_EXTTRIG_Msk (0x1UL << ADC_CR2_EXTTRIG_Pos) /*!< 0x00100000 */ +#define ADC_CR2_EXTTRIG ADC_CR2_EXTTRIG_Msk /*!< ADC group regular external trigger enable */ +#define ADC_CR2_JSWSTART_Pos (21U) +#define ADC_CR2_JSWSTART_Msk (0x1UL << ADC_CR2_JSWSTART_Pos) /*!< 0x00200000 */ +#define ADC_CR2_JSWSTART ADC_CR2_JSWSTART_Msk /*!< ADC group injected conversion start */ +#define ADC_CR2_SWSTART_Pos (22U) +#define ADC_CR2_SWSTART_Msk (0x1UL << ADC_CR2_SWSTART_Pos) /*!< 0x00400000 */ +#define ADC_CR2_SWSTART ADC_CR2_SWSTART_Msk /*!< ADC group regular conversion start */ +#define ADC_CR2_TSVREFE_Pos (23U) +#define ADC_CR2_TSVREFE_Msk (0x1UL << ADC_CR2_TSVREFE_Pos) /*!< 0x00800000 */ +#define ADC_CR2_TSVREFE ADC_CR2_TSVREFE_Msk /*!< ADC internal path to VrefInt and temperature sensor enable */ + +/****************** Bit definition for ADC_SMPR1 register *******************/ +#define ADC_SMPR1_SMP10_Pos (0U) +#define ADC_SMPR1_SMP10_Msk (0x7UL << ADC_SMPR1_SMP10_Pos) /*!< 0x00000007 */ +#define ADC_SMPR1_SMP10 ADC_SMPR1_SMP10_Msk /*!< ADC channel 10 sampling time selection */ +#define ADC_SMPR1_SMP10_0 (0x1UL << ADC_SMPR1_SMP10_Pos) /*!< 0x00000001 */ +#define ADC_SMPR1_SMP10_1 (0x2UL << ADC_SMPR1_SMP10_Pos) /*!< 0x00000002 */ +#define ADC_SMPR1_SMP10_2 (0x4UL << ADC_SMPR1_SMP10_Pos) /*!< 0x00000004 */ + +#define ADC_SMPR1_SMP11_Pos (3U) +#define ADC_SMPR1_SMP11_Msk (0x7UL << ADC_SMPR1_SMP11_Pos) /*!< 0x00000038 */ +#define ADC_SMPR1_SMP11 ADC_SMPR1_SMP11_Msk /*!< ADC channel 11 sampling time selection */ +#define ADC_SMPR1_SMP11_0 (0x1UL << ADC_SMPR1_SMP11_Pos) /*!< 0x00000008 */ +#define ADC_SMPR1_SMP11_1 (0x2UL << ADC_SMPR1_SMP11_Pos) /*!< 0x00000010 */ +#define ADC_SMPR1_SMP11_2 (0x4UL << ADC_SMPR1_SMP11_Pos) /*!< 0x00000020 */ + +#define ADC_SMPR1_SMP12_Pos (6U) +#define ADC_SMPR1_SMP12_Msk (0x7UL << ADC_SMPR1_SMP12_Pos) /*!< 0x000001C0 */ +#define ADC_SMPR1_SMP12 ADC_SMPR1_SMP12_Msk /*!< ADC channel 12 sampling time selection */ +#define ADC_SMPR1_SMP12_0 (0x1UL << ADC_SMPR1_SMP12_Pos) /*!< 0x00000040 */ +#define ADC_SMPR1_SMP12_1 (0x2UL << ADC_SMPR1_SMP12_Pos) /*!< 0x00000080 */ +#define ADC_SMPR1_SMP12_2 (0x4UL << ADC_SMPR1_SMP12_Pos) /*!< 0x00000100 */ + +#define ADC_SMPR1_SMP13_Pos (9U) +#define ADC_SMPR1_SMP13_Msk (0x7UL << ADC_SMPR1_SMP13_Pos) /*!< 0x00000E00 */ +#define ADC_SMPR1_SMP13 ADC_SMPR1_SMP13_Msk /*!< ADC channel 13 sampling time selection */ +#define ADC_SMPR1_SMP13_0 (0x1UL << ADC_SMPR1_SMP13_Pos) /*!< 0x00000200 */ +#define ADC_SMPR1_SMP13_1 (0x2UL << ADC_SMPR1_SMP13_Pos) /*!< 0x00000400 */ +#define ADC_SMPR1_SMP13_2 (0x4UL << ADC_SMPR1_SMP13_Pos) /*!< 0x00000800 */ + +#define ADC_SMPR1_SMP14_Pos (12U) +#define ADC_SMPR1_SMP14_Msk (0x7UL << ADC_SMPR1_SMP14_Pos) /*!< 0x00007000 */ +#define ADC_SMPR1_SMP14 ADC_SMPR1_SMP14_Msk /*!< ADC channel 14 sampling time selection */ +#define ADC_SMPR1_SMP14_0 (0x1UL << ADC_SMPR1_SMP14_Pos) /*!< 0x00001000 */ +#define ADC_SMPR1_SMP14_1 (0x2UL << ADC_SMPR1_SMP14_Pos) /*!< 0x00002000 */ +#define ADC_SMPR1_SMP14_2 (0x4UL << ADC_SMPR1_SMP14_Pos) /*!< 0x00004000 */ + +#define ADC_SMPR1_SMP15_Pos (15U) +#define ADC_SMPR1_SMP15_Msk (0x7UL << ADC_SMPR1_SMP15_Pos) /*!< 0x00038000 */ +#define ADC_SMPR1_SMP15 ADC_SMPR1_SMP15_Msk /*!< ADC channel 15 sampling time selection */ +#define ADC_SMPR1_SMP15_0 (0x1UL << ADC_SMPR1_SMP15_Pos) /*!< 0x00008000 */ +#define ADC_SMPR1_SMP15_1 (0x2UL << ADC_SMPR1_SMP15_Pos) /*!< 0x00010000 */ +#define ADC_SMPR1_SMP15_2 (0x4UL << ADC_SMPR1_SMP15_Pos) /*!< 0x00020000 */ + +#define ADC_SMPR1_SMP16_Pos (18U) +#define ADC_SMPR1_SMP16_Msk (0x7UL << ADC_SMPR1_SMP16_Pos) /*!< 0x001C0000 */ +#define ADC_SMPR1_SMP16 ADC_SMPR1_SMP16_Msk /*!< ADC channel 16 sampling time selection */ +#define ADC_SMPR1_SMP16_0 (0x1UL << ADC_SMPR1_SMP16_Pos) /*!< 0x00040000 */ +#define ADC_SMPR1_SMP16_1 (0x2UL << ADC_SMPR1_SMP16_Pos) /*!< 0x00080000 */ +#define ADC_SMPR1_SMP16_2 (0x4UL << ADC_SMPR1_SMP16_Pos) /*!< 0x00100000 */ + +#define ADC_SMPR1_SMP17_Pos (21U) +#define ADC_SMPR1_SMP17_Msk (0x7UL << ADC_SMPR1_SMP17_Pos) /*!< 0x00E00000 */ +#define ADC_SMPR1_SMP17 ADC_SMPR1_SMP17_Msk /*!< ADC channel 17 sampling time selection */ +#define ADC_SMPR1_SMP17_0 (0x1UL << ADC_SMPR1_SMP17_Pos) /*!< 0x00200000 */ +#define ADC_SMPR1_SMP17_1 (0x2UL << ADC_SMPR1_SMP17_Pos) /*!< 0x00400000 */ +#define ADC_SMPR1_SMP17_2 (0x4UL << ADC_SMPR1_SMP17_Pos) /*!< 0x00800000 */ + +/****************** Bit definition for ADC_SMPR2 register *******************/ +#define ADC_SMPR2_SMP0_Pos (0U) +#define ADC_SMPR2_SMP0_Msk (0x7UL << ADC_SMPR2_SMP0_Pos) /*!< 0x00000007 */ +#define ADC_SMPR2_SMP0 ADC_SMPR2_SMP0_Msk /*!< ADC channel 0 sampling time selection */ +#define ADC_SMPR2_SMP0_0 (0x1UL << ADC_SMPR2_SMP0_Pos) /*!< 0x00000001 */ +#define ADC_SMPR2_SMP0_1 (0x2UL << ADC_SMPR2_SMP0_Pos) /*!< 0x00000002 */ +#define ADC_SMPR2_SMP0_2 (0x4UL << ADC_SMPR2_SMP0_Pos) /*!< 0x00000004 */ + +#define ADC_SMPR2_SMP1_Pos (3U) +#define ADC_SMPR2_SMP1_Msk (0x7UL << ADC_SMPR2_SMP1_Pos) /*!< 0x00000038 */ +#define ADC_SMPR2_SMP1 ADC_SMPR2_SMP1_Msk /*!< ADC channel 1 sampling time selection */ +#define ADC_SMPR2_SMP1_0 (0x1UL << ADC_SMPR2_SMP1_Pos) /*!< 0x00000008 */ +#define ADC_SMPR2_SMP1_1 (0x2UL << ADC_SMPR2_SMP1_Pos) /*!< 0x00000010 */ +#define ADC_SMPR2_SMP1_2 (0x4UL << ADC_SMPR2_SMP1_Pos) /*!< 0x00000020 */ + +#define ADC_SMPR2_SMP2_Pos (6U) +#define ADC_SMPR2_SMP2_Msk (0x7UL << ADC_SMPR2_SMP2_Pos) /*!< 0x000001C0 */ +#define ADC_SMPR2_SMP2 ADC_SMPR2_SMP2_Msk /*!< ADC channel 2 sampling time selection */ +#define ADC_SMPR2_SMP2_0 (0x1UL << ADC_SMPR2_SMP2_Pos) /*!< 0x00000040 */ +#define ADC_SMPR2_SMP2_1 (0x2UL << ADC_SMPR2_SMP2_Pos) /*!< 0x00000080 */ +#define ADC_SMPR2_SMP2_2 (0x4UL << ADC_SMPR2_SMP2_Pos) /*!< 0x00000100 */ + +#define ADC_SMPR2_SMP3_Pos (9U) +#define ADC_SMPR2_SMP3_Msk (0x7UL << ADC_SMPR2_SMP3_Pos) /*!< 0x00000E00 */ +#define ADC_SMPR2_SMP3 ADC_SMPR2_SMP3_Msk /*!< ADC channel 3 sampling time selection */ +#define ADC_SMPR2_SMP3_0 (0x1UL << ADC_SMPR2_SMP3_Pos) /*!< 0x00000200 */ +#define ADC_SMPR2_SMP3_1 (0x2UL << ADC_SMPR2_SMP3_Pos) /*!< 0x00000400 */ +#define ADC_SMPR2_SMP3_2 (0x4UL << ADC_SMPR2_SMP3_Pos) /*!< 0x00000800 */ + +#define ADC_SMPR2_SMP4_Pos (12U) +#define ADC_SMPR2_SMP4_Msk (0x7UL << ADC_SMPR2_SMP4_Pos) /*!< 0x00007000 */ +#define ADC_SMPR2_SMP4 ADC_SMPR2_SMP4_Msk /*!< ADC channel 4 sampling time selection */ +#define ADC_SMPR2_SMP4_0 (0x1UL << ADC_SMPR2_SMP4_Pos) /*!< 0x00001000 */ +#define ADC_SMPR2_SMP4_1 (0x2UL << ADC_SMPR2_SMP4_Pos) /*!< 0x00002000 */ +#define ADC_SMPR2_SMP4_2 (0x4UL << ADC_SMPR2_SMP4_Pos) /*!< 0x00004000 */ + +#define ADC_SMPR2_SMP5_Pos (15U) +#define ADC_SMPR2_SMP5_Msk (0x7UL << ADC_SMPR2_SMP5_Pos) /*!< 0x00038000 */ +#define ADC_SMPR2_SMP5 ADC_SMPR2_SMP5_Msk /*!< ADC channel 5 sampling time selection */ +#define ADC_SMPR2_SMP5_0 (0x1UL << ADC_SMPR2_SMP5_Pos) /*!< 0x00008000 */ +#define ADC_SMPR2_SMP5_1 (0x2UL << ADC_SMPR2_SMP5_Pos) /*!< 0x00010000 */ +#define ADC_SMPR2_SMP5_2 (0x4UL << ADC_SMPR2_SMP5_Pos) /*!< 0x00020000 */ + +#define ADC_SMPR2_SMP6_Pos (18U) +#define ADC_SMPR2_SMP6_Msk (0x7UL << ADC_SMPR2_SMP6_Pos) /*!< 0x001C0000 */ +#define ADC_SMPR2_SMP6 ADC_SMPR2_SMP6_Msk /*!< ADC channel 6 sampling time selection */ +#define ADC_SMPR2_SMP6_0 (0x1UL << ADC_SMPR2_SMP6_Pos) /*!< 0x00040000 */ +#define ADC_SMPR2_SMP6_1 (0x2UL << ADC_SMPR2_SMP6_Pos) /*!< 0x00080000 */ +#define ADC_SMPR2_SMP6_2 (0x4UL << ADC_SMPR2_SMP6_Pos) /*!< 0x00100000 */ + +#define ADC_SMPR2_SMP7_Pos (21U) +#define ADC_SMPR2_SMP7_Msk (0x7UL << ADC_SMPR2_SMP7_Pos) /*!< 0x00E00000 */ +#define ADC_SMPR2_SMP7 ADC_SMPR2_SMP7_Msk /*!< ADC channel 7 sampling time selection */ +#define ADC_SMPR2_SMP7_0 (0x1UL << ADC_SMPR2_SMP7_Pos) /*!< 0x00200000 */ +#define ADC_SMPR2_SMP7_1 (0x2UL << ADC_SMPR2_SMP7_Pos) /*!< 0x00400000 */ +#define ADC_SMPR2_SMP7_2 (0x4UL << ADC_SMPR2_SMP7_Pos) /*!< 0x00800000 */ + +#define ADC_SMPR2_SMP8_Pos (24U) +#define ADC_SMPR2_SMP8_Msk (0x7UL << ADC_SMPR2_SMP8_Pos) /*!< 0x07000000 */ +#define ADC_SMPR2_SMP8 ADC_SMPR2_SMP8_Msk /*!< ADC channel 8 sampling time selection */ +#define ADC_SMPR2_SMP8_0 (0x1UL << ADC_SMPR2_SMP8_Pos) /*!< 0x01000000 */ +#define ADC_SMPR2_SMP8_1 (0x2UL << ADC_SMPR2_SMP8_Pos) /*!< 0x02000000 */ +#define ADC_SMPR2_SMP8_2 (0x4UL << ADC_SMPR2_SMP8_Pos) /*!< 0x04000000 */ + +#define ADC_SMPR2_SMP9_Pos (27U) +#define ADC_SMPR2_SMP9_Msk (0x7UL << ADC_SMPR2_SMP9_Pos) /*!< 0x38000000 */ +#define ADC_SMPR2_SMP9 ADC_SMPR2_SMP9_Msk /*!< ADC channel 9 sampling time selection */ +#define ADC_SMPR2_SMP9_0 (0x1UL << ADC_SMPR2_SMP9_Pos) /*!< 0x08000000 */ +#define ADC_SMPR2_SMP9_1 (0x2UL << ADC_SMPR2_SMP9_Pos) /*!< 0x10000000 */ +#define ADC_SMPR2_SMP9_2 (0x4UL << ADC_SMPR2_SMP9_Pos) /*!< 0x20000000 */ + +/****************** Bit definition for ADC_JOFR1 register *******************/ +#define ADC_JOFR1_JOFFSET1_Pos (0U) +#define ADC_JOFR1_JOFFSET1_Msk (0xFFFUL << ADC_JOFR1_JOFFSET1_Pos) /*!< 0x00000FFF */ +#define ADC_JOFR1_JOFFSET1 ADC_JOFR1_JOFFSET1_Msk /*!< ADC group injected sequencer rank 1 offset value */ + +/****************** Bit definition for ADC_JOFR2 register *******************/ +#define ADC_JOFR2_JOFFSET2_Pos (0U) +#define ADC_JOFR2_JOFFSET2_Msk (0xFFFUL << ADC_JOFR2_JOFFSET2_Pos) /*!< 0x00000FFF */ +#define ADC_JOFR2_JOFFSET2 ADC_JOFR2_JOFFSET2_Msk /*!< ADC group injected sequencer rank 2 offset value */ + +/****************** Bit definition for ADC_JOFR3 register *******************/ +#define ADC_JOFR3_JOFFSET3_Pos (0U) +#define ADC_JOFR3_JOFFSET3_Msk (0xFFFUL << ADC_JOFR3_JOFFSET3_Pos) /*!< 0x00000FFF */ +#define ADC_JOFR3_JOFFSET3 ADC_JOFR3_JOFFSET3_Msk /*!< ADC group injected sequencer rank 3 offset value */ + +/****************** Bit definition for ADC_JOFR4 register *******************/ +#define ADC_JOFR4_JOFFSET4_Pos (0U) +#define ADC_JOFR4_JOFFSET4_Msk (0xFFFUL << ADC_JOFR4_JOFFSET4_Pos) /*!< 0x00000FFF */ +#define ADC_JOFR4_JOFFSET4 ADC_JOFR4_JOFFSET4_Msk /*!< ADC group injected sequencer rank 4 offset value */ + +/******************* Bit definition for ADC_HTR register ********************/ +#define ADC_HTR_HT_Pos (0U) +#define ADC_HTR_HT_Msk (0xFFFUL << ADC_HTR_HT_Pos) /*!< 0x00000FFF */ +#define ADC_HTR_HT ADC_HTR_HT_Msk /*!< ADC analog watchdog 1 threshold high */ + +/******************* Bit definition for ADC_LTR register ********************/ +#define ADC_LTR_LT_Pos (0U) +#define ADC_LTR_LT_Msk (0xFFFUL << ADC_LTR_LT_Pos) /*!< 0x00000FFF */ +#define ADC_LTR_LT ADC_LTR_LT_Msk /*!< ADC analog watchdog 1 threshold low */ + +/******************* Bit definition for ADC_SQR1 register *******************/ +#define ADC_SQR1_SQ13_Pos (0U) +#define ADC_SQR1_SQ13_Msk (0x1FUL << ADC_SQR1_SQ13_Pos) /*!< 0x0000001F */ +#define ADC_SQR1_SQ13 ADC_SQR1_SQ13_Msk /*!< ADC group regular sequencer rank 13 */ +#define ADC_SQR1_SQ13_0 (0x01UL << ADC_SQR1_SQ13_Pos) /*!< 0x00000001 */ +#define ADC_SQR1_SQ13_1 (0x02UL << ADC_SQR1_SQ13_Pos) /*!< 0x00000002 */ +#define ADC_SQR1_SQ13_2 (0x04UL << ADC_SQR1_SQ13_Pos) /*!< 0x00000004 */ +#define ADC_SQR1_SQ13_3 (0x08UL << ADC_SQR1_SQ13_Pos) /*!< 0x00000008 */ +#define ADC_SQR1_SQ13_4 (0x10UL << ADC_SQR1_SQ13_Pos) /*!< 0x00000010 */ + +#define ADC_SQR1_SQ14_Pos (5U) +#define ADC_SQR1_SQ14_Msk (0x1FUL << ADC_SQR1_SQ14_Pos) /*!< 0x000003E0 */ +#define ADC_SQR1_SQ14 ADC_SQR1_SQ14_Msk /*!< ADC group regular sequencer rank 14 */ +#define ADC_SQR1_SQ14_0 (0x01UL << ADC_SQR1_SQ14_Pos) /*!< 0x00000020 */ +#define ADC_SQR1_SQ14_1 (0x02UL << ADC_SQR1_SQ14_Pos) /*!< 0x00000040 */ +#define ADC_SQR1_SQ14_2 (0x04UL << ADC_SQR1_SQ14_Pos) /*!< 0x00000080 */ +#define ADC_SQR1_SQ14_3 (0x08UL << ADC_SQR1_SQ14_Pos) /*!< 0x00000100 */ +#define ADC_SQR1_SQ14_4 (0x10UL << ADC_SQR1_SQ14_Pos) /*!< 0x00000200 */ + +#define ADC_SQR1_SQ15_Pos (10U) +#define ADC_SQR1_SQ15_Msk (0x1FUL << ADC_SQR1_SQ15_Pos) /*!< 0x00007C00 */ +#define ADC_SQR1_SQ15 ADC_SQR1_SQ15_Msk /*!< ADC group regular sequencer rank 15 */ +#define ADC_SQR1_SQ15_0 (0x01UL << ADC_SQR1_SQ15_Pos) /*!< 0x00000400 */ +#define ADC_SQR1_SQ15_1 (0x02UL << ADC_SQR1_SQ15_Pos) /*!< 0x00000800 */ +#define ADC_SQR1_SQ15_2 (0x04UL << ADC_SQR1_SQ15_Pos) /*!< 0x00001000 */ +#define ADC_SQR1_SQ15_3 (0x08UL << ADC_SQR1_SQ15_Pos) /*!< 0x00002000 */ +#define ADC_SQR1_SQ15_4 (0x10UL << ADC_SQR1_SQ15_Pos) /*!< 0x00004000 */ + +#define ADC_SQR1_SQ16_Pos (15U) +#define ADC_SQR1_SQ16_Msk (0x1FUL << ADC_SQR1_SQ16_Pos) /*!< 0x000F8000 */ +#define ADC_SQR1_SQ16 ADC_SQR1_SQ16_Msk /*!< ADC group regular sequencer rank 16 */ +#define ADC_SQR1_SQ16_0 (0x01UL << ADC_SQR1_SQ16_Pos) /*!< 0x00008000 */ +#define ADC_SQR1_SQ16_1 (0x02UL << ADC_SQR1_SQ16_Pos) /*!< 0x00010000 */ +#define ADC_SQR1_SQ16_2 (0x04UL << ADC_SQR1_SQ16_Pos) /*!< 0x00020000 */ +#define ADC_SQR1_SQ16_3 (0x08UL << ADC_SQR1_SQ16_Pos) /*!< 0x00040000 */ +#define ADC_SQR1_SQ16_4 (0x10UL << ADC_SQR1_SQ16_Pos) /*!< 0x00080000 */ + +#define ADC_SQR1_L_Pos (20U) +#define ADC_SQR1_L_Msk (0xFUL << ADC_SQR1_L_Pos) /*!< 0x00F00000 */ +#define ADC_SQR1_L ADC_SQR1_L_Msk /*!< ADC group regular sequencer scan length */ +#define ADC_SQR1_L_0 (0x1UL << ADC_SQR1_L_Pos) /*!< 0x00100000 */ +#define ADC_SQR1_L_1 (0x2UL << ADC_SQR1_L_Pos) /*!< 0x00200000 */ +#define ADC_SQR1_L_2 (0x4UL << ADC_SQR1_L_Pos) /*!< 0x00400000 */ +#define ADC_SQR1_L_3 (0x8UL << ADC_SQR1_L_Pos) /*!< 0x00800000 */ + +/******************* Bit definition for ADC_SQR2 register *******************/ +#define ADC_SQR2_SQ7_Pos (0U) +#define ADC_SQR2_SQ7_Msk (0x1FUL << ADC_SQR2_SQ7_Pos) /*!< 0x0000001F */ +#define ADC_SQR2_SQ7 ADC_SQR2_SQ7_Msk /*!< ADC group regular sequencer rank 7 */ +#define ADC_SQR2_SQ7_0 (0x01UL << ADC_SQR2_SQ7_Pos) /*!< 0x00000001 */ +#define ADC_SQR2_SQ7_1 (0x02UL << ADC_SQR2_SQ7_Pos) /*!< 0x00000002 */ +#define ADC_SQR2_SQ7_2 (0x04UL << ADC_SQR2_SQ7_Pos) /*!< 0x00000004 */ +#define ADC_SQR2_SQ7_3 (0x08UL << ADC_SQR2_SQ7_Pos) /*!< 0x00000008 */ +#define ADC_SQR2_SQ7_4 (0x10UL << ADC_SQR2_SQ7_Pos) /*!< 0x00000010 */ + +#define ADC_SQR2_SQ8_Pos (5U) +#define ADC_SQR2_SQ8_Msk (0x1FUL << ADC_SQR2_SQ8_Pos) /*!< 0x000003E0 */ +#define ADC_SQR2_SQ8 ADC_SQR2_SQ8_Msk /*!< ADC group regular sequencer rank 8 */ +#define ADC_SQR2_SQ8_0 (0x01UL << ADC_SQR2_SQ8_Pos) /*!< 0x00000020 */ +#define ADC_SQR2_SQ8_1 (0x02UL << ADC_SQR2_SQ8_Pos) /*!< 0x00000040 */ +#define ADC_SQR2_SQ8_2 (0x04UL << ADC_SQR2_SQ8_Pos) /*!< 0x00000080 */ +#define ADC_SQR2_SQ8_3 (0x08UL << ADC_SQR2_SQ8_Pos) /*!< 0x00000100 */ +#define ADC_SQR2_SQ8_4 (0x10UL << ADC_SQR2_SQ8_Pos) /*!< 0x00000200 */ + +#define ADC_SQR2_SQ9_Pos (10U) +#define ADC_SQR2_SQ9_Msk (0x1FUL << ADC_SQR2_SQ9_Pos) /*!< 0x00007C00 */ +#define ADC_SQR2_SQ9 ADC_SQR2_SQ9_Msk /*!< ADC group regular sequencer rank 9 */ +#define ADC_SQR2_SQ9_0 (0x01UL << ADC_SQR2_SQ9_Pos) /*!< 0x00000400 */ +#define ADC_SQR2_SQ9_1 (0x02UL << ADC_SQR2_SQ9_Pos) /*!< 0x00000800 */ +#define ADC_SQR2_SQ9_2 (0x04UL << ADC_SQR2_SQ9_Pos) /*!< 0x00001000 */ +#define ADC_SQR2_SQ9_3 (0x08UL << ADC_SQR2_SQ9_Pos) /*!< 0x00002000 */ +#define ADC_SQR2_SQ9_4 (0x10UL << ADC_SQR2_SQ9_Pos) /*!< 0x00004000 */ + +#define ADC_SQR2_SQ10_Pos (15U) +#define ADC_SQR2_SQ10_Msk (0x1FUL << ADC_SQR2_SQ10_Pos) /*!< 0x000F8000 */ +#define ADC_SQR2_SQ10 ADC_SQR2_SQ10_Msk /*!< ADC group regular sequencer rank 10 */ +#define ADC_SQR2_SQ10_0 (0x01UL << ADC_SQR2_SQ10_Pos) /*!< 0x00008000 */ +#define ADC_SQR2_SQ10_1 (0x02UL << ADC_SQR2_SQ10_Pos) /*!< 0x00010000 */ +#define ADC_SQR2_SQ10_2 (0x04UL << ADC_SQR2_SQ10_Pos) /*!< 0x00020000 */ +#define ADC_SQR2_SQ10_3 (0x08UL << ADC_SQR2_SQ10_Pos) /*!< 0x00040000 */ +#define ADC_SQR2_SQ10_4 (0x10UL << ADC_SQR2_SQ10_Pos) /*!< 0x00080000 */ + +#define ADC_SQR2_SQ11_Pos (20U) +#define ADC_SQR2_SQ11_Msk (0x1FUL << ADC_SQR2_SQ11_Pos) /*!< 0x01F00000 */ +#define ADC_SQR2_SQ11 ADC_SQR2_SQ11_Msk /*!< ADC group regular sequencer rank 1 */ +#define ADC_SQR2_SQ11_0 (0x01UL << ADC_SQR2_SQ11_Pos) /*!< 0x00100000 */ +#define ADC_SQR2_SQ11_1 (0x02UL << ADC_SQR2_SQ11_Pos) /*!< 0x00200000 */ +#define ADC_SQR2_SQ11_2 (0x04UL << ADC_SQR2_SQ11_Pos) /*!< 0x00400000 */ +#define ADC_SQR2_SQ11_3 (0x08UL << ADC_SQR2_SQ11_Pos) /*!< 0x00800000 */ +#define ADC_SQR2_SQ11_4 (0x10UL << ADC_SQR2_SQ11_Pos) /*!< 0x01000000 */ + +#define ADC_SQR2_SQ12_Pos (25U) +#define ADC_SQR2_SQ12_Msk (0x1FUL << ADC_SQR2_SQ12_Pos) /*!< 0x3E000000 */ +#define ADC_SQR2_SQ12 ADC_SQR2_SQ12_Msk /*!< ADC group regular sequencer rank 12 */ +#define ADC_SQR2_SQ12_0 (0x01UL << ADC_SQR2_SQ12_Pos) /*!< 0x02000000 */ +#define ADC_SQR2_SQ12_1 (0x02UL << ADC_SQR2_SQ12_Pos) /*!< 0x04000000 */ +#define ADC_SQR2_SQ12_2 (0x04UL << ADC_SQR2_SQ12_Pos) /*!< 0x08000000 */ +#define ADC_SQR2_SQ12_3 (0x08UL << ADC_SQR2_SQ12_Pos) /*!< 0x10000000 */ +#define ADC_SQR2_SQ12_4 (0x10UL << ADC_SQR2_SQ12_Pos) /*!< 0x20000000 */ + +/******************* Bit definition for ADC_SQR3 register *******************/ +#define ADC_SQR3_SQ1_Pos (0U) +#define ADC_SQR3_SQ1_Msk (0x1FUL << ADC_SQR3_SQ1_Pos) /*!< 0x0000001F */ +#define ADC_SQR3_SQ1 ADC_SQR3_SQ1_Msk /*!< ADC group regular sequencer rank 1 */ +#define ADC_SQR3_SQ1_0 (0x01UL << ADC_SQR3_SQ1_Pos) /*!< 0x00000001 */ +#define ADC_SQR3_SQ1_1 (0x02UL << ADC_SQR3_SQ1_Pos) /*!< 0x00000002 */ +#define ADC_SQR3_SQ1_2 (0x04UL << ADC_SQR3_SQ1_Pos) /*!< 0x00000004 */ +#define ADC_SQR3_SQ1_3 (0x08UL << ADC_SQR3_SQ1_Pos) /*!< 0x00000008 */ +#define ADC_SQR3_SQ1_4 (0x10UL << ADC_SQR3_SQ1_Pos) /*!< 0x00000010 */ + +#define ADC_SQR3_SQ2_Pos (5U) +#define ADC_SQR3_SQ2_Msk (0x1FUL << ADC_SQR3_SQ2_Pos) /*!< 0x000003E0 */ +#define ADC_SQR3_SQ2 ADC_SQR3_SQ2_Msk /*!< ADC group regular sequencer rank 2 */ +#define ADC_SQR3_SQ2_0 (0x01UL << ADC_SQR3_SQ2_Pos) /*!< 0x00000020 */ +#define ADC_SQR3_SQ2_1 (0x02UL << ADC_SQR3_SQ2_Pos) /*!< 0x00000040 */ +#define ADC_SQR3_SQ2_2 (0x04UL << ADC_SQR3_SQ2_Pos) /*!< 0x00000080 */ +#define ADC_SQR3_SQ2_3 (0x08UL << ADC_SQR3_SQ2_Pos) /*!< 0x00000100 */ +#define ADC_SQR3_SQ2_4 (0x10UL << ADC_SQR3_SQ2_Pos) /*!< 0x00000200 */ + +#define ADC_SQR3_SQ3_Pos (10U) +#define ADC_SQR3_SQ3_Msk (0x1FUL << ADC_SQR3_SQ3_Pos) /*!< 0x00007C00 */ +#define ADC_SQR3_SQ3 ADC_SQR3_SQ3_Msk /*!< ADC group regular sequencer rank 3 */ +#define ADC_SQR3_SQ3_0 (0x01UL << ADC_SQR3_SQ3_Pos) /*!< 0x00000400 */ +#define ADC_SQR3_SQ3_1 (0x02UL << ADC_SQR3_SQ3_Pos) /*!< 0x00000800 */ +#define ADC_SQR3_SQ3_2 (0x04UL << ADC_SQR3_SQ3_Pos) /*!< 0x00001000 */ +#define ADC_SQR3_SQ3_3 (0x08UL << ADC_SQR3_SQ3_Pos) /*!< 0x00002000 */ +#define ADC_SQR3_SQ3_4 (0x10UL << ADC_SQR3_SQ3_Pos) /*!< 0x00004000 */ + +#define ADC_SQR3_SQ4_Pos (15U) +#define ADC_SQR3_SQ4_Msk (0x1FUL << ADC_SQR3_SQ4_Pos) /*!< 0x000F8000 */ +#define ADC_SQR3_SQ4 ADC_SQR3_SQ4_Msk /*!< ADC group regular sequencer rank 4 */ +#define ADC_SQR3_SQ4_0 (0x01UL << ADC_SQR3_SQ4_Pos) /*!< 0x00008000 */ +#define ADC_SQR3_SQ4_1 (0x02UL << ADC_SQR3_SQ4_Pos) /*!< 0x00010000 */ +#define ADC_SQR3_SQ4_2 (0x04UL << ADC_SQR3_SQ4_Pos) /*!< 0x00020000 */ +#define ADC_SQR3_SQ4_3 (0x08UL << ADC_SQR3_SQ4_Pos) /*!< 0x00040000 */ +#define ADC_SQR3_SQ4_4 (0x10UL << ADC_SQR3_SQ4_Pos) /*!< 0x00080000 */ + +#define ADC_SQR3_SQ5_Pos (20U) +#define ADC_SQR3_SQ5_Msk (0x1FUL << ADC_SQR3_SQ5_Pos) /*!< 0x01F00000 */ +#define ADC_SQR3_SQ5 ADC_SQR3_SQ5_Msk /*!< ADC group regular sequencer rank 5 */ +#define ADC_SQR3_SQ5_0 (0x01UL << ADC_SQR3_SQ5_Pos) /*!< 0x00100000 */ +#define ADC_SQR3_SQ5_1 (0x02UL << ADC_SQR3_SQ5_Pos) /*!< 0x00200000 */ +#define ADC_SQR3_SQ5_2 (0x04UL << ADC_SQR3_SQ5_Pos) /*!< 0x00400000 */ +#define ADC_SQR3_SQ5_3 (0x08UL << ADC_SQR3_SQ5_Pos) /*!< 0x00800000 */ +#define ADC_SQR3_SQ5_4 (0x10UL << ADC_SQR3_SQ5_Pos) /*!< 0x01000000 */ + +#define ADC_SQR3_SQ6_Pos (25U) +#define ADC_SQR3_SQ6_Msk (0x1FUL << ADC_SQR3_SQ6_Pos) /*!< 0x3E000000 */ +#define ADC_SQR3_SQ6 ADC_SQR3_SQ6_Msk /*!< ADC group regular sequencer rank 6 */ +#define ADC_SQR3_SQ6_0 (0x01UL << ADC_SQR3_SQ6_Pos) /*!< 0x02000000 */ +#define ADC_SQR3_SQ6_1 (0x02UL << ADC_SQR3_SQ6_Pos) /*!< 0x04000000 */ +#define ADC_SQR3_SQ6_2 (0x04UL << ADC_SQR3_SQ6_Pos) /*!< 0x08000000 */ +#define ADC_SQR3_SQ6_3 (0x08UL << ADC_SQR3_SQ6_Pos) /*!< 0x10000000 */ +#define ADC_SQR3_SQ6_4 (0x10UL << ADC_SQR3_SQ6_Pos) /*!< 0x20000000 */ + +/******************* Bit definition for ADC_JSQR register *******************/ +#define ADC_JSQR_JSQ1_Pos (0U) +#define ADC_JSQR_JSQ1_Msk (0x1FUL << ADC_JSQR_JSQ1_Pos) /*!< 0x0000001F */ +#define ADC_JSQR_JSQ1 ADC_JSQR_JSQ1_Msk /*!< ADC group injected sequencer rank 1 */ +#define ADC_JSQR_JSQ1_0 (0x01UL << ADC_JSQR_JSQ1_Pos) /*!< 0x00000001 */ +#define ADC_JSQR_JSQ1_1 (0x02UL << ADC_JSQR_JSQ1_Pos) /*!< 0x00000002 */ +#define ADC_JSQR_JSQ1_2 (0x04UL << ADC_JSQR_JSQ1_Pos) /*!< 0x00000004 */ +#define ADC_JSQR_JSQ1_3 (0x08UL << ADC_JSQR_JSQ1_Pos) /*!< 0x00000008 */ +#define ADC_JSQR_JSQ1_4 (0x10UL << ADC_JSQR_JSQ1_Pos) /*!< 0x00000010 */ + +#define ADC_JSQR_JSQ2_Pos (5U) +#define ADC_JSQR_JSQ2_Msk (0x1FUL << ADC_JSQR_JSQ2_Pos) /*!< 0x000003E0 */ +#define ADC_JSQR_JSQ2 ADC_JSQR_JSQ2_Msk /*!< ADC group injected sequencer rank 2 */ +#define ADC_JSQR_JSQ2_0 (0x01UL << ADC_JSQR_JSQ2_Pos) /*!< 0x00000020 */ +#define ADC_JSQR_JSQ2_1 (0x02UL << ADC_JSQR_JSQ2_Pos) /*!< 0x00000040 */ +#define ADC_JSQR_JSQ2_2 (0x04UL << ADC_JSQR_JSQ2_Pos) /*!< 0x00000080 */ +#define ADC_JSQR_JSQ2_3 (0x08UL << ADC_JSQR_JSQ2_Pos) /*!< 0x00000100 */ +#define ADC_JSQR_JSQ2_4 (0x10UL << ADC_JSQR_JSQ2_Pos) /*!< 0x00000200 */ + +#define ADC_JSQR_JSQ3_Pos (10U) +#define ADC_JSQR_JSQ3_Msk (0x1FUL << ADC_JSQR_JSQ3_Pos) /*!< 0x00007C00 */ +#define ADC_JSQR_JSQ3 ADC_JSQR_JSQ3_Msk /*!< ADC group injected sequencer rank 3 */ +#define ADC_JSQR_JSQ3_0 (0x01UL << ADC_JSQR_JSQ3_Pos) /*!< 0x00000400 */ +#define ADC_JSQR_JSQ3_1 (0x02UL << ADC_JSQR_JSQ3_Pos) /*!< 0x00000800 */ +#define ADC_JSQR_JSQ3_2 (0x04UL << ADC_JSQR_JSQ3_Pos) /*!< 0x00001000 */ +#define ADC_JSQR_JSQ3_3 (0x08UL << ADC_JSQR_JSQ3_Pos) /*!< 0x00002000 */ +#define ADC_JSQR_JSQ3_4 (0x10UL << ADC_JSQR_JSQ3_Pos) /*!< 0x00004000 */ + +#define ADC_JSQR_JSQ4_Pos (15U) +#define ADC_JSQR_JSQ4_Msk (0x1FUL << ADC_JSQR_JSQ4_Pos) /*!< 0x000F8000 */ +#define ADC_JSQR_JSQ4 ADC_JSQR_JSQ4_Msk /*!< ADC group injected sequencer rank 4 */ +#define ADC_JSQR_JSQ4_0 (0x01UL << ADC_JSQR_JSQ4_Pos) /*!< 0x00008000 */ +#define ADC_JSQR_JSQ4_1 (0x02UL << ADC_JSQR_JSQ4_Pos) /*!< 0x00010000 */ +#define ADC_JSQR_JSQ4_2 (0x04UL << ADC_JSQR_JSQ4_Pos) /*!< 0x00020000 */ +#define ADC_JSQR_JSQ4_3 (0x08UL << ADC_JSQR_JSQ4_Pos) /*!< 0x00040000 */ +#define ADC_JSQR_JSQ4_4 (0x10UL << ADC_JSQR_JSQ4_Pos) /*!< 0x00080000 */ + +#define ADC_JSQR_JL_Pos (20U) +#define ADC_JSQR_JL_Msk (0x3UL << ADC_JSQR_JL_Pos) /*!< 0x00300000 */ +#define ADC_JSQR_JL ADC_JSQR_JL_Msk /*!< ADC group injected sequencer scan length */ +#define ADC_JSQR_JL_0 (0x1UL << ADC_JSQR_JL_Pos) /*!< 0x00100000 */ +#define ADC_JSQR_JL_1 (0x2UL << ADC_JSQR_JL_Pos) /*!< 0x00200000 */ + +/******************* Bit definition for ADC_JDR1 register *******************/ +#define ADC_JDR1_JDATA_Pos (0U) +#define ADC_JDR1_JDATA_Msk (0xFFFFUL << ADC_JDR1_JDATA_Pos) /*!< 0x0000FFFF */ +#define ADC_JDR1_JDATA ADC_JDR1_JDATA_Msk /*!< ADC group injected sequencer rank 1 conversion data */ + +/******************* Bit definition for ADC_JDR2 register *******************/ +#define ADC_JDR2_JDATA_Pos (0U) +#define ADC_JDR2_JDATA_Msk (0xFFFFUL << ADC_JDR2_JDATA_Pos) /*!< 0x0000FFFF */ +#define ADC_JDR2_JDATA ADC_JDR2_JDATA_Msk /*!< ADC group injected sequencer rank 2 conversion data */ + +/******************* Bit definition for ADC_JDR3 register *******************/ +#define ADC_JDR3_JDATA_Pos (0U) +#define ADC_JDR3_JDATA_Msk (0xFFFFUL << ADC_JDR3_JDATA_Pos) /*!< 0x0000FFFF */ +#define ADC_JDR3_JDATA ADC_JDR3_JDATA_Msk /*!< ADC group injected sequencer rank 3 conversion data */ + +/******************* Bit definition for ADC_JDR4 register *******************/ +#define ADC_JDR4_JDATA_Pos (0U) +#define ADC_JDR4_JDATA_Msk (0xFFFFUL << ADC_JDR4_JDATA_Pos) /*!< 0x0000FFFF */ +#define ADC_JDR4_JDATA ADC_JDR4_JDATA_Msk /*!< ADC group injected sequencer rank 4 conversion data */ + +/******************** Bit definition for ADC_DR register ********************/ +#define ADC_DR_DATA_Pos (0U) +#define ADC_DR_DATA_Msk (0xFFFFUL << ADC_DR_DATA_Pos) /*!< 0x0000FFFF */ +#define ADC_DR_DATA ADC_DR_DATA_Msk /*!< ADC group regular conversion data */ +#define ADC_DR_ADC2DATA_Pos (16U) +#define ADC_DR_ADC2DATA_Msk (0xFFFFUL << ADC_DR_ADC2DATA_Pos) /*!< 0xFFFF0000 */ +#define ADC_DR_ADC2DATA ADC_DR_ADC2DATA_Msk /*!< ADC group regular conversion data for ADC slave, in multimode */ + + +/*****************************************************************************/ +/* */ +/* Timers (TIM) */ +/* */ +/*****************************************************************************/ +/******************* Bit definition for TIM_CR1 register *******************/ +#define TIM_CR1_CEN_Pos (0U) +#define TIM_CR1_CEN_Msk (0x1UL << TIM_CR1_CEN_Pos) /*!< 0x00000001 */ +#define TIM_CR1_CEN TIM_CR1_CEN_Msk /*!
    © Copyright (c) 2017 STMicroelectronics. - * All rights reserved.
    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/** @addtogroup CMSIS - * @{ - */ - -/** @addtogroup stm32f1xx - * @{ - */ - -#ifndef __STM32F1XX_H -#define __STM32F1XX_H - -#ifdef __cplusplus - extern "C" { -#endif /* __cplusplus */ - -/** @addtogroup Library_configuration_section - * @{ - */ - -/** - * @brief STM32 Family - */ -#if !defined (STM32F1) -#define STM32F1 -#endif /* STM32F1 */ - -/* Uncomment the line below according to the target STM32L device used in your - application - */ - -#if !defined (STM32F100xB) && !defined (STM32F100xE) && !defined (STM32F101x6) && \ - !defined (STM32F101xB) && !defined (STM32F101xE) && !defined (STM32F101xG) && !defined (STM32F102x6) && !defined (STM32F102xB) && !defined (STM32F103x6) && \ - !defined (STM32F103xB) && !defined (STM32F103xE) && !defined (STM32F103xG) && !defined (STM32F105xC) && !defined (STM32F107xC) - /* #define STM32F100xB */ /*!< STM32F100C4, STM32F100R4, STM32F100C6, STM32F100R6, STM32F100C8, STM32F100R8, STM32F100V8, STM32F100CB, STM32F100RB and STM32F100VB */ - /* #define STM32F100xE */ /*!< STM32F100RC, STM32F100VC, STM32F100ZC, STM32F100RD, STM32F100VD, STM32F100ZD, STM32F100RE, STM32F100VE and STM32F100ZE */ - /* #define STM32F101x6 */ /*!< STM32F101C4, STM32F101R4, STM32F101T4, STM32F101C6, STM32F101R6 and STM32F101T6 Devices */ - /* #define STM32F101xB */ /*!< STM32F101C8, STM32F101R8, STM32F101T8, STM32F101V8, STM32F101CB, STM32F101RB, STM32F101TB and STM32F101VB */ - /* #define STM32F101xE */ /*!< STM32F101RC, STM32F101VC, STM32F101ZC, STM32F101RD, STM32F101VD, STM32F101ZD, STM32F101RE, STM32F101VE and STM32F101ZE */ - /* #define STM32F101xG */ /*!< STM32F101RF, STM32F101VF, STM32F101ZF, STM32F101RG, STM32F101VG and STM32F101ZG */ - /* #define STM32F102x6 */ /*!< STM32F102C4, STM32F102R4, STM32F102C6 and STM32F102R6 */ - /* #define STM32F102xB */ /*!< STM32F102C8, STM32F102R8, STM32F102CB and STM32F102RB */ - /* #define STM32F103x6 */ /*!< STM32F103C4, STM32F103R4, STM32F103T4, STM32F103C6, STM32F103R6 and STM32F103T6 */ - /* #define STM32F103xB */ /*!< STM32F103C8, STM32F103R8, STM32F103T8, STM32F103V8, STM32F103CB, STM32F103RB, STM32F103TB and STM32F103VB */ - /* #define STM32F103xE */ /*!< STM32F103RC, STM32F103VC, STM32F103ZC, STM32F103RD, STM32F103VD, STM32F103ZD, STM32F103RE, STM32F103VE and STM32F103ZE */ - /* #define STM32F103xG */ /*!< STM32F103RF, STM32F103VF, STM32F103ZF, STM32F103RG, STM32F103VG and STM32F103ZG */ - /* #define STM32F105xC */ /*!< STM32F105R8, STM32F105V8, STM32F105RB, STM32F105VB, STM32F105RC and STM32F105VC */ - /* #define STM32F107xC */ /*!< STM32F107RB, STM32F107VB, STM32F107RC and STM32F107VC */ -#endif - -/* Tip: To avoid modifying this file each time you need to switch between these - devices, you can define the device in your toolchain compiler preprocessor. - */ - -#if !defined (USE_HAL_DRIVER) -/** - * @brief Comment the line below if you will not use the peripherals drivers. - In this case, these drivers will not be included and the application code will - be based on direct access to peripherals registers - */ - /*#define USE_HAL_DRIVER */ -#endif /* USE_HAL_DRIVER */ - -/** - * @brief CMSIS Device version number V4.3.3 - */ -#define __STM32F1_CMSIS_VERSION_MAIN (0x04) /*!< [31:24] main version */ -#define __STM32F1_CMSIS_VERSION_SUB1 (0x03) /*!< [23:16] sub1 version */ -#define __STM32F1_CMSIS_VERSION_SUB2 (0x03) /*!< [15:8] sub2 version */ -#define __STM32F1_CMSIS_VERSION_RC (0x00) /*!< [7:0] release candidate */ -#define __STM32F1_CMSIS_VERSION ((__STM32F1_CMSIS_VERSION_MAIN << 24)\ - |(__STM32F1_CMSIS_VERSION_SUB1 << 16)\ - |(__STM32F1_CMSIS_VERSION_SUB2 << 8 )\ - |(__STM32F1_CMSIS_VERSION_RC)) - -/** - * @} - */ - -/** @addtogroup Device_Included - * @{ - */ - -#if defined(STM32F100xB) - #include "stm32f100xb.h" -#elif defined(STM32F100xE) - #include "stm32f100xe.h" -#elif defined(STM32F101x6) - #include "stm32f101x6.h" -#elif defined(STM32F101xB) - #include "stm32f101xb.h" -#elif defined(STM32F101xE) - #include "stm32f101xe.h" -#elif defined(STM32F101xG) - #include "stm32f101xg.h" -#elif defined(STM32F102x6) - #include "stm32f102x6.h" -#elif defined(STM32F102xB) - #include "stm32f102xb.h" -#elif defined(STM32F103x6) - #include "stm32f103x6.h" -#elif defined(STM32F103xB) - #include "stm32f103xb.h" -#elif defined(STM32F103xE) - #include "stm32f103xe.h" -#elif defined(STM32F103xG) - #include "stm32f103xg.h" -#elif defined(STM32F105xC) - #include "stm32f105xc.h" -#elif defined(STM32F107xC) - #include "stm32f107xc.h" -#else - #error "Please select first the target STM32F1xx device used in your application (in stm32f1xx.h file)" -#endif - -/** - * @} - */ - -/** @addtogroup Exported_types - * @{ - */ -typedef enum -{ - RESET = 0, - SET = !RESET -} FlagStatus, ITStatus; - -typedef enum -{ - DISABLE = 0, - ENABLE = !DISABLE -} FunctionalState; -#define IS_FUNCTIONAL_STATE(STATE) (((STATE) == DISABLE) || ((STATE) == ENABLE)) - -typedef enum -{ - SUCCESS = 0U, - ERROR = !SUCCESS -} ErrorStatus; - -/** - * @} - */ - - -/** @addtogroup Exported_macros - * @{ - */ -#define SET_BIT(REG, BIT) ((REG) |= (BIT)) - -#define CLEAR_BIT(REG, BIT) ((REG) &= ~(BIT)) - -#define READ_BIT(REG, BIT) ((REG) & (BIT)) - -#define CLEAR_REG(REG) ((REG) = (0x0)) - -#define WRITE_REG(REG, VAL) ((REG) = (VAL)) - -#define READ_REG(REG) ((REG)) - -#define MODIFY_REG(REG, CLEARMASK, SETMASK) WRITE_REG((REG), (((READ_REG(REG)) & (~(CLEARMASK))) | (SETMASK))) - -#define POSITION_VAL(VAL) (__CLZ(__RBIT(VAL))) - -/* Use of CMSIS compiler intrinsics for register exclusive access */ -/* Atomic 32-bit register access macro to set one or several bits */ -#define ATOMIC_SET_BIT(REG, BIT) \ - do { \ - uint32_t val; \ - do { \ - val = __LDREXW((__IO uint32_t *)&(REG)) | (BIT); \ - } while ((__STREXW(val,(__IO uint32_t *)&(REG))) != 0U); \ - } while(0) - -/* Atomic 32-bit register access macro to clear one or several bits */ -#define ATOMIC_CLEAR_BIT(REG, BIT) \ - do { \ - uint32_t val; \ - do { \ - val = __LDREXW((__IO uint32_t *)&(REG)) & ~(BIT); \ - } while ((__STREXW(val,(__IO uint32_t *)&(REG))) != 0U); \ - } while(0) - -/* Atomic 32-bit register access macro to clear and set one or several bits */ -#define ATOMIC_MODIFY_REG(REG, CLEARMSK, SETMASK) \ - do { \ - uint32_t val; \ - do { \ - val = (__LDREXW((__IO uint32_t *)&(REG)) & ~(CLEARMSK)) | (SETMASK); \ - } while ((__STREXW(val,(__IO uint32_t *)&(REG))) != 0U); \ - } while(0) - -/* Atomic 16-bit register access macro to set one or several bits */ -#define ATOMIC_SETH_BIT(REG, BIT) \ - do { \ - uint16_t val; \ - do { \ - val = __LDREXH((__IO uint16_t *)&(REG)) | (BIT); \ - } while ((__STREXH(val,(__IO uint16_t *)&(REG))) != 0U); \ - } while(0) - -/* Atomic 16-bit register access macro to clear one or several bits */ -#define ATOMIC_CLEARH_BIT(REG, BIT) \ - do { \ - uint16_t val; \ - do { \ - val = __LDREXH((__IO uint16_t *)&(REG)) & ~(BIT); \ - } while ((__STREXH(val,(__IO uint16_t *)&(REG))) != 0U); \ - } while(0) - -/* Atomic 16-bit register access macro to clear and set one or several bits */ -#define ATOMIC_MODIFYH_REG(REG, CLEARMSK, SETMASK) \ - do { \ - uint16_t val; \ - do { \ - val = (__LDREXH((__IO uint16_t *)&(REG)) & ~(CLEARMSK)) | (SETMASK); \ - } while ((__STREXH(val,(__IO uint16_t *)&(REG))) != 0U); \ - } while(0) - - -/** - * @} - */ - -#if defined (USE_HAL_DRIVER) - #include "stm32f1xx_hal.h" -#endif /* USE_HAL_DRIVER */ - - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif /* __STM32F1xx_H */ -/** - * @} - */ - -/** - * @} - */ - - - - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx.h + * @author MCD Application Team + * @brief CMSIS STM32F1xx Device Peripheral Access Layer Header File. + * + * The file is the unique include file that the application programmer + * is using in the C source code, usually in main.c. This file contains: + * - Configuration section that allows to select: + * - The STM32F1xx device used in the target application + * - To use or not the peripheral’s drivers in application code(i.e. + * code will be based on direct access to peripheral’s registers + * rather than drivers API), this option is controlled by + * "#define USE_HAL_DRIVER" + * + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2017 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/** @addtogroup CMSIS + * @{ + */ + +/** @addtogroup stm32f1xx + * @{ + */ + +#ifndef __STM32F1XX_H +#define __STM32F1XX_H + +#ifdef __cplusplus + extern "C" { +#endif /* __cplusplus */ + +/** @addtogroup Library_configuration_section + * @{ + */ + +/** + * @brief STM32 Family + */ +#if !defined (STM32F1) +#define STM32F1 +#endif /* STM32F1 */ + +/* Uncomment the line below according to the target STM32L device used in your + application + */ + +#if !defined (STM32F100xB) && !defined (STM32F100xE) && !defined (STM32F101x6) && \ + !defined (STM32F101xB) && !defined (STM32F101xE) && !defined (STM32F101xG) && !defined (STM32F102x6) && !defined (STM32F102xB) && !defined (STM32F103x6) && \ + !defined (STM32F103xB) && !defined (STM32F103xE) && !defined (STM32F103xG) && !defined (STM32F105xC) && !defined (STM32F107xC) + /* #define STM32F100xB */ /*!< STM32F100C4, STM32F100R4, STM32F100C6, STM32F100R6, STM32F100C8, STM32F100R8, STM32F100V8, STM32F100CB, STM32F100RB and STM32F100VB */ + /* #define STM32F100xE */ /*!< STM32F100RC, STM32F100VC, STM32F100ZC, STM32F100RD, STM32F100VD, STM32F100ZD, STM32F100RE, STM32F100VE and STM32F100ZE */ + /* #define STM32F101x6 */ /*!< STM32F101C4, STM32F101R4, STM32F101T4, STM32F101C6, STM32F101R6 and STM32F101T6 Devices */ + /* #define STM32F101xB */ /*!< STM32F101C8, STM32F101R8, STM32F101T8, STM32F101V8, STM32F101CB, STM32F101RB, STM32F101TB and STM32F101VB */ + /* #define STM32F101xE */ /*!< STM32F101RC, STM32F101VC, STM32F101ZC, STM32F101RD, STM32F101VD, STM32F101ZD, STM32F101RE, STM32F101VE and STM32F101ZE */ + /* #define STM32F101xG */ /*!< STM32F101RF, STM32F101VF, STM32F101ZF, STM32F101RG, STM32F101VG and STM32F101ZG */ + /* #define STM32F102x6 */ /*!< STM32F102C4, STM32F102R4, STM32F102C6 and STM32F102R6 */ + /* #define STM32F102xB */ /*!< STM32F102C8, STM32F102R8, STM32F102CB and STM32F102RB */ + /* #define STM32F103x6 */ /*!< STM32F103C4, STM32F103R4, STM32F103T4, STM32F103C6, STM32F103R6 and STM32F103T6 */ + /* #define STM32F103xB */ /*!< STM32F103C8, STM32F103R8, STM32F103T8, STM32F103V8, STM32F103CB, STM32F103RB, STM32F103TB and STM32F103VB */ + /* #define STM32F103xE */ /*!< STM32F103RC, STM32F103VC, STM32F103ZC, STM32F103RD, STM32F103VD, STM32F103ZD, STM32F103RE, STM32F103VE and STM32F103ZE */ + /* #define STM32F103xG */ /*!< STM32F103RF, STM32F103VF, STM32F103ZF, STM32F103RG, STM32F103VG and STM32F103ZG */ + /* #define STM32F105xC */ /*!< STM32F105R8, STM32F105V8, STM32F105RB, STM32F105VB, STM32F105RC and STM32F105VC */ + /* #define STM32F107xC */ /*!< STM32F107RB, STM32F107VB, STM32F107RC and STM32F107VC */ +#endif + +/* Tip: To avoid modifying this file each time you need to switch between these + devices, you can define the device in your toolchain compiler preprocessor. + */ + +#if !defined (USE_HAL_DRIVER) +/** + * @brief Comment the line below if you will not use the peripherals drivers. + In this case, these drivers will not be included and the application code will + be based on direct access to peripherals registers + */ + /*#define USE_HAL_DRIVER */ +#endif /* USE_HAL_DRIVER */ + +/** + * @brief CMSIS Device version number V4.3.3 + */ +#define __STM32F1_CMSIS_VERSION_MAIN (0x04) /*!< [31:24] main version */ +#define __STM32F1_CMSIS_VERSION_SUB1 (0x03) /*!< [23:16] sub1 version */ +#define __STM32F1_CMSIS_VERSION_SUB2 (0x03) /*!< [15:8] sub2 version */ +#define __STM32F1_CMSIS_VERSION_RC (0x00) /*!< [7:0] release candidate */ +#define __STM32F1_CMSIS_VERSION ((__STM32F1_CMSIS_VERSION_MAIN << 24)\ + |(__STM32F1_CMSIS_VERSION_SUB1 << 16)\ + |(__STM32F1_CMSIS_VERSION_SUB2 << 8 )\ + |(__STM32F1_CMSIS_VERSION_RC)) + +/** + * @} + */ + +/** @addtogroup Device_Included + * @{ + */ + +#if defined(STM32F100xB) + #include "stm32f100xb.h" +#elif defined(STM32F100xE) + #include "stm32f100xe.h" +#elif defined(STM32F101x6) + #include "stm32f101x6.h" +#elif defined(STM32F101xB) + #include "stm32f101xb.h" +#elif defined(STM32F101xE) + #include "stm32f101xe.h" +#elif defined(STM32F101xG) + #include "stm32f101xg.h" +#elif defined(STM32F102x6) + #include "stm32f102x6.h" +#elif defined(STM32F102xB) + #include "stm32f102xb.h" +#elif defined(STM32F103x6) + #include "stm32f103x6.h" +#elif defined(STM32F103xB) + #include "stm32f103xb.h" +#elif defined(STM32F103xE) + #include "stm32f103xe.h" +#elif defined(STM32F103xG) + #include "stm32f103xg.h" +#elif defined(STM32F105xC) + #include "stm32f105xc.h" +#elif defined(STM32F107xC) + #include "stm32f107xc.h" +#else + #error "Please select first the target STM32F1xx device used in your application (in stm32f1xx.h file)" +#endif + +/** + * @} + */ + +/** @addtogroup Exported_types + * @{ + */ +typedef enum +{ + RESET = 0, + SET = !RESET +} FlagStatus, ITStatus; + +typedef enum +{ + DISABLE = 0, + ENABLE = !DISABLE +} FunctionalState; +#define IS_FUNCTIONAL_STATE(STATE) (((STATE) == DISABLE) || ((STATE) == ENABLE)) + +typedef enum +{ + SUCCESS = 0U, + ERROR = !SUCCESS +} ErrorStatus; + +/** + * @} + */ + + +/** @addtogroup Exported_macros + * @{ + */ +#define SET_BIT(REG, BIT) ((REG) |= (BIT)) + +#define CLEAR_BIT(REG, BIT) ((REG) &= ~(BIT)) + +#define READ_BIT(REG, BIT) ((REG) & (BIT)) + +#define CLEAR_REG(REG) ((REG) = (0x0)) + +#define WRITE_REG(REG, VAL) ((REG) = (VAL)) + +#define READ_REG(REG) ((REG)) + +#define MODIFY_REG(REG, CLEARMASK, SETMASK) WRITE_REG((REG), (((READ_REG(REG)) & (~(CLEARMASK))) | (SETMASK))) + +#define POSITION_VAL(VAL) (__CLZ(__RBIT(VAL))) + +/* Use of CMSIS compiler intrinsics for register exclusive access */ +/* Atomic 32-bit register access macro to set one or several bits */ +#define ATOMIC_SET_BIT(REG, BIT) \ + do { \ + uint32_t val; \ + do { \ + val = __LDREXW((__IO uint32_t *)&(REG)) | (BIT); \ + } while ((__STREXW(val,(__IO uint32_t *)&(REG))) != 0U); \ + } while(0) + +/* Atomic 32-bit register access macro to clear one or several bits */ +#define ATOMIC_CLEAR_BIT(REG, BIT) \ + do { \ + uint32_t val; \ + do { \ + val = __LDREXW((__IO uint32_t *)&(REG)) & ~(BIT); \ + } while ((__STREXW(val,(__IO uint32_t *)&(REG))) != 0U); \ + } while(0) + +/* Atomic 32-bit register access macro to clear and set one or several bits */ +#define ATOMIC_MODIFY_REG(REG, CLEARMSK, SETMASK) \ + do { \ + uint32_t val; \ + do { \ + val = (__LDREXW((__IO uint32_t *)&(REG)) & ~(CLEARMSK)) | (SETMASK); \ + } while ((__STREXW(val,(__IO uint32_t *)&(REG))) != 0U); \ + } while(0) + +/* Atomic 16-bit register access macro to set one or several bits */ +#define ATOMIC_SETH_BIT(REG, BIT) \ + do { \ + uint16_t val; \ + do { \ + val = __LDREXH((__IO uint16_t *)&(REG)) | (BIT); \ + } while ((__STREXH(val,(__IO uint16_t *)&(REG))) != 0U); \ + } while(0) + +/* Atomic 16-bit register access macro to clear one or several bits */ +#define ATOMIC_CLEARH_BIT(REG, BIT) \ + do { \ + uint16_t val; \ + do { \ + val = __LDREXH((__IO uint16_t *)&(REG)) & ~(BIT); \ + } while ((__STREXH(val,(__IO uint16_t *)&(REG))) != 0U); \ + } while(0) + +/* Atomic 16-bit register access macro to clear and set one or several bits */ +#define ATOMIC_MODIFYH_REG(REG, CLEARMSK, SETMASK) \ + do { \ + uint16_t val; \ + do { \ + val = (__LDREXH((__IO uint16_t *)&(REG)) & ~(CLEARMSK)) | (SETMASK); \ + } while ((__STREXH(val,(__IO uint16_t *)&(REG))) != 0U); \ + } while(0) + + +/** + * @} + */ + +#if defined (USE_HAL_DRIVER) + #include "stm32f1xx_hal.h" +#endif /* USE_HAL_DRIVER */ + + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#endif /* __STM32F1xx_H */ +/** + * @} + */ + +/** + * @} + */ + + + + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h b/f103c8t6_HAL/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h similarity index 95% rename from stm32f103/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h rename to f103c8t6_HAL/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h index 8e33366..187fdde 100644 --- a/stm32f103/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h @@ -1,98 +1,98 @@ -/** - ****************************************************************************** - * @file system_stm32f10x.h - * @author MCD Application Team - * @brief CMSIS Cortex-M3 Device Peripheral Access Layer System Header File. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2017 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/** @addtogroup CMSIS - * @{ - */ - -/** @addtogroup stm32f10x_system - * @{ - */ - -/** - * @brief Define to prevent recursive inclusion - */ -#ifndef __SYSTEM_STM32F10X_H -#define __SYSTEM_STM32F10X_H - -#ifdef __cplusplus - extern "C" { -#endif - -/** @addtogroup STM32F10x_System_Includes - * @{ - */ - -/** - * @} - */ - - -/** @addtogroup STM32F10x_System_Exported_types - * @{ - */ - -extern uint32_t SystemCoreClock; /*!< System Clock Frequency (Core Clock) */ -extern const uint8_t AHBPrescTable[16U]; /*!< AHB prescalers table values */ -extern const uint8_t APBPrescTable[8U]; /*!< APB prescalers table values */ - -/** - * @} - */ - -/** @addtogroup STM32F10x_System_Exported_Constants - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32F10x_System_Exported_Macros - * @{ - */ - -/** - * @} - */ - -/** @addtogroup STM32F10x_System_Exported_Functions - * @{ - */ - -extern void SystemInit(void); -extern void SystemCoreClockUpdate(void); -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /*__SYSTEM_STM32F10X_H */ - -/** - * @} - */ - -/** - * @} - */ -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file system_stm32f10x.h + * @author MCD Application Team + * @brief CMSIS Cortex-M3 Device Peripheral Access Layer System Header File. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2017 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/** @addtogroup CMSIS + * @{ + */ + +/** @addtogroup stm32f10x_system + * @{ + */ + +/** + * @brief Define to prevent recursive inclusion + */ +#ifndef __SYSTEM_STM32F10X_H +#define __SYSTEM_STM32F10X_H + +#ifdef __cplusplus + extern "C" { +#endif + +/** @addtogroup STM32F10x_System_Includes + * @{ + */ + +/** + * @} + */ + + +/** @addtogroup STM32F10x_System_Exported_types + * @{ + */ + +extern uint32_t SystemCoreClock; /*!< System Clock Frequency (Core Clock) */ +extern const uint8_t AHBPrescTable[16U]; /*!< AHB prescalers table values */ +extern const uint8_t APBPrescTable[8U]; /*!< APB prescalers table values */ + +/** + * @} + */ + +/** @addtogroup STM32F10x_System_Exported_Constants + * @{ + */ + +/** + * @} + */ + +/** @addtogroup STM32F10x_System_Exported_Macros + * @{ + */ + +/** + * @} + */ + +/** @addtogroup STM32F10x_System_Exported_Functions + * @{ + */ + +extern void SystemInit(void); +extern void SystemCoreClockUpdate(void); +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /*__SYSTEM_STM32F10X_H */ + +/** + * @} + */ + +/** + * @} + */ +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/CMSIS/Device/ST/STM32F1xx/License.md b/f103c8t6_HAL/Drivers/CMSIS/Device/ST/STM32F1xx/License.md similarity index 100% rename from stm32f103/Drivers/CMSIS/Device/ST/STM32F1xx/License.md rename to f103c8t6_HAL/Drivers/CMSIS/Device/ST/STM32F1xx/License.md diff --git a/stm32f103/Drivers/CMSIS/Include/cmsis_armcc.h b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_armcc.h similarity index 96% rename from stm32f103/Drivers/CMSIS/Include/cmsis_armcc.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_armcc.h index 7d751fb..4d9d064 100644 --- a/stm32f103/Drivers/CMSIS/Include/cmsis_armcc.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_armcc.h @@ -1,865 +1,865 @@ -/**************************************************************************//** - * @file cmsis_armcc.h - * @brief CMSIS compiler ARMCC (Arm Compiler 5) header file - * @version V5.0.4 - * @date 10. January 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef __CMSIS_ARMCC_H -#define __CMSIS_ARMCC_H - - -#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 400677) - #error "Please use Arm Compiler Toolchain V4.0.677 or later!" -#endif - -/* CMSIS compiler control architecture macros */ -#if ((defined (__TARGET_ARCH_6_M ) && (__TARGET_ARCH_6_M == 1)) || \ - (defined (__TARGET_ARCH_6S_M ) && (__TARGET_ARCH_6S_M == 1)) ) - #define __ARM_ARCH_6M__ 1 -#endif - -#if (defined (__TARGET_ARCH_7_M ) && (__TARGET_ARCH_7_M == 1)) - #define __ARM_ARCH_7M__ 1 -#endif - -#if (defined (__TARGET_ARCH_7E_M) && (__TARGET_ARCH_7E_M == 1)) - #define __ARM_ARCH_7EM__ 1 -#endif - - /* __ARM_ARCH_8M_BASE__ not applicable */ - /* __ARM_ARCH_8M_MAIN__ not applicable */ - - -/* CMSIS compiler specific defines */ -#ifndef __ASM - #define __ASM __asm -#endif -#ifndef __INLINE - #define __INLINE __inline -#endif -#ifndef __STATIC_INLINE - #define __STATIC_INLINE static __inline -#endif -#ifndef __STATIC_FORCEINLINE - #define __STATIC_FORCEINLINE static __forceinline -#endif -#ifndef __NO_RETURN - #define __NO_RETURN __declspec(noreturn) -#endif -#ifndef __USED - #define __USED __attribute__((used)) -#endif -#ifndef __WEAK - #define __WEAK __attribute__((weak)) -#endif -#ifndef __PACKED - #define __PACKED __attribute__((packed)) -#endif -#ifndef __PACKED_STRUCT - #define __PACKED_STRUCT __packed struct -#endif -#ifndef __PACKED_UNION - #define __PACKED_UNION __packed union -#endif -#ifndef __UNALIGNED_UINT32 /* deprecated */ - #define __UNALIGNED_UINT32(x) (*((__packed uint32_t *)(x))) -#endif -#ifndef __UNALIGNED_UINT16_WRITE - #define __UNALIGNED_UINT16_WRITE(addr, val) ((*((__packed uint16_t *)(addr))) = (val)) -#endif -#ifndef __UNALIGNED_UINT16_READ - #define __UNALIGNED_UINT16_READ(addr) (*((const __packed uint16_t *)(addr))) -#endif -#ifndef __UNALIGNED_UINT32_WRITE - #define __UNALIGNED_UINT32_WRITE(addr, val) ((*((__packed uint32_t *)(addr))) = (val)) -#endif -#ifndef __UNALIGNED_UINT32_READ - #define __UNALIGNED_UINT32_READ(addr) (*((const __packed uint32_t *)(addr))) -#endif -#ifndef __ALIGNED - #define __ALIGNED(x) __attribute__((aligned(x))) -#endif -#ifndef __RESTRICT - #define __RESTRICT __restrict -#endif - -/* ########################### Core Function Access ########################### */ -/** \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions - @{ - */ - -/** - \brief Enable IRQ Interrupts - \details Enables IRQ interrupts by clearing the I-bit in the CPSR. - Can only be executed in Privileged modes. - */ -/* intrinsic void __enable_irq(); */ - - -/** - \brief Disable IRQ Interrupts - \details Disables IRQ interrupts by setting the I-bit in the CPSR. - Can only be executed in Privileged modes. - */ -/* intrinsic void __disable_irq(); */ - -/** - \brief Get Control Register - \details Returns the content of the Control Register. - \return Control Register value - */ -__STATIC_INLINE uint32_t __get_CONTROL(void) -{ - register uint32_t __regControl __ASM("control"); - return(__regControl); -} - - -/** - \brief Set Control Register - \details Writes the given value to the Control Register. - \param [in] control Control Register value to set - */ -__STATIC_INLINE void __set_CONTROL(uint32_t control) -{ - register uint32_t __regControl __ASM("control"); - __regControl = control; -} - - -/** - \brief Get IPSR Register - \details Returns the content of the IPSR Register. - \return IPSR Register value - */ -__STATIC_INLINE uint32_t __get_IPSR(void) -{ - register uint32_t __regIPSR __ASM("ipsr"); - return(__regIPSR); -} - - -/** - \brief Get APSR Register - \details Returns the content of the APSR Register. - \return APSR Register value - */ -__STATIC_INLINE uint32_t __get_APSR(void) -{ - register uint32_t __regAPSR __ASM("apsr"); - return(__regAPSR); -} - - -/** - \brief Get xPSR Register - \details Returns the content of the xPSR Register. - \return xPSR Register value - */ -__STATIC_INLINE uint32_t __get_xPSR(void) -{ - register uint32_t __regXPSR __ASM("xpsr"); - return(__regXPSR); -} - - -/** - \brief Get Process Stack Pointer - \details Returns the current value of the Process Stack Pointer (PSP). - \return PSP Register value - */ -__STATIC_INLINE uint32_t __get_PSP(void) -{ - register uint32_t __regProcessStackPointer __ASM("psp"); - return(__regProcessStackPointer); -} - - -/** - \brief Set Process Stack Pointer - \details Assigns the given value to the Process Stack Pointer (PSP). - \param [in] topOfProcStack Process Stack Pointer value to set - */ -__STATIC_INLINE void __set_PSP(uint32_t topOfProcStack) -{ - register uint32_t __regProcessStackPointer __ASM("psp"); - __regProcessStackPointer = topOfProcStack; -} - - -/** - \brief Get Main Stack Pointer - \details Returns the current value of the Main Stack Pointer (MSP). - \return MSP Register value - */ -__STATIC_INLINE uint32_t __get_MSP(void) -{ - register uint32_t __regMainStackPointer __ASM("msp"); - return(__regMainStackPointer); -} - - -/** - \brief Set Main Stack Pointer - \details Assigns the given value to the Main Stack Pointer (MSP). - \param [in] topOfMainStack Main Stack Pointer value to set - */ -__STATIC_INLINE void __set_MSP(uint32_t topOfMainStack) -{ - register uint32_t __regMainStackPointer __ASM("msp"); - __regMainStackPointer = topOfMainStack; -} - - -/** - \brief Get Priority Mask - \details Returns the current state of the priority mask bit from the Priority Mask Register. - \return Priority Mask value - */ -__STATIC_INLINE uint32_t __get_PRIMASK(void) -{ - register uint32_t __regPriMask __ASM("primask"); - return(__regPriMask); -} - - -/** - \brief Set Priority Mask - \details Assigns the given value to the Priority Mask Register. - \param [in] priMask Priority Mask - */ -__STATIC_INLINE void __set_PRIMASK(uint32_t priMask) -{ - register uint32_t __regPriMask __ASM("primask"); - __regPriMask = (priMask); -} - - -#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) - -/** - \brief Enable FIQ - \details Enables FIQ interrupts by clearing the F-bit in the CPSR. - Can only be executed in Privileged modes. - */ -#define __enable_fault_irq __enable_fiq - - -/** - \brief Disable FIQ - \details Disables FIQ interrupts by setting the F-bit in the CPSR. - Can only be executed in Privileged modes. - */ -#define __disable_fault_irq __disable_fiq - - -/** - \brief Get Base Priority - \details Returns the current value of the Base Priority register. - \return Base Priority register value - */ -__STATIC_INLINE uint32_t __get_BASEPRI(void) -{ - register uint32_t __regBasePri __ASM("basepri"); - return(__regBasePri); -} - - -/** - \brief Set Base Priority - \details Assigns the given value to the Base Priority register. - \param [in] basePri Base Priority value to set - */ -__STATIC_INLINE void __set_BASEPRI(uint32_t basePri) -{ - register uint32_t __regBasePri __ASM("basepri"); - __regBasePri = (basePri & 0xFFU); -} - - -/** - \brief Set Base Priority with condition - \details Assigns the given value to the Base Priority register only if BASEPRI masking is disabled, - or the new value increases the BASEPRI priority level. - \param [in] basePri Base Priority value to set - */ -__STATIC_INLINE void __set_BASEPRI_MAX(uint32_t basePri) -{ - register uint32_t __regBasePriMax __ASM("basepri_max"); - __regBasePriMax = (basePri & 0xFFU); -} - - -/** - \brief Get Fault Mask - \details Returns the current value of the Fault Mask register. - \return Fault Mask register value - */ -__STATIC_INLINE uint32_t __get_FAULTMASK(void) -{ - register uint32_t __regFaultMask __ASM("faultmask"); - return(__regFaultMask); -} - - -/** - \brief Set Fault Mask - \details Assigns the given value to the Fault Mask register. - \param [in] faultMask Fault Mask value to set - */ -__STATIC_INLINE void __set_FAULTMASK(uint32_t faultMask) -{ - register uint32_t __regFaultMask __ASM("faultmask"); - __regFaultMask = (faultMask & (uint32_t)1U); -} - -#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */ - - -/** - \brief Get FPSCR - \details Returns the current value of the Floating Point Status/Control register. - \return Floating Point Status/Control register value - */ -__STATIC_INLINE uint32_t __get_FPSCR(void) -{ -#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ - (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) - register uint32_t __regfpscr __ASM("fpscr"); - return(__regfpscr); -#else - return(0U); -#endif -} - - -/** - \brief Set FPSCR - \details Assigns the given value to the Floating Point Status/Control register. - \param [in] fpscr Floating Point Status/Control value to set - */ -__STATIC_INLINE void __set_FPSCR(uint32_t fpscr) -{ -#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ - (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) - register uint32_t __regfpscr __ASM("fpscr"); - __regfpscr = (fpscr); -#else - (void)fpscr; -#endif -} - - -/*@} end of CMSIS_Core_RegAccFunctions */ - - -/* ########################## Core Instruction Access ######################### */ -/** \defgroup CMSIS_Core_InstructionInterface CMSIS Core Instruction Interface - Access to dedicated instructions - @{ -*/ - -/** - \brief No Operation - \details No Operation does nothing. This instruction can be used for code alignment purposes. - */ -#define __NOP __nop - - -/** - \brief Wait For Interrupt - \details Wait For Interrupt is a hint instruction that suspends execution until one of a number of events occurs. - */ -#define __WFI __wfi - - -/** - \brief Wait For Event - \details Wait For Event is a hint instruction that permits the processor to enter - a low-power state until one of a number of events occurs. - */ -#define __WFE __wfe - - -/** - \brief Send Event - \details Send Event is a hint instruction. It causes an event to be signaled to the CPU. - */ -#define __SEV __sev - - -/** - \brief Instruction Synchronization Barrier - \details Instruction Synchronization Barrier flushes the pipeline in the processor, - so that all instructions following the ISB are fetched from cache or memory, - after the instruction has been completed. - */ -#define __ISB() do {\ - __schedule_barrier();\ - __isb(0xF);\ - __schedule_barrier();\ - } while (0U) - -/** - \brief Data Synchronization Barrier - \details Acts as a special kind of Data Memory Barrier. - It completes when all explicit memory accesses before this instruction complete. - */ -#define __DSB() do {\ - __schedule_barrier();\ - __dsb(0xF);\ - __schedule_barrier();\ - } while (0U) - -/** - \brief Data Memory Barrier - \details Ensures the apparent order of the explicit memory operations before - and after the instruction, without ensuring their completion. - */ -#define __DMB() do {\ - __schedule_barrier();\ - __dmb(0xF);\ - __schedule_barrier();\ - } while (0U) - - -/** - \brief Reverse byte order (32 bit) - \details Reverses the byte order in unsigned integer value. For example, 0x12345678 becomes 0x78563412. - \param [in] value Value to reverse - \return Reversed value - */ -#define __REV __rev - - -/** - \brief Reverse byte order (16 bit) - \details Reverses the byte order within each halfword of a word. For example, 0x12345678 becomes 0x34127856. - \param [in] value Value to reverse - \return Reversed value - */ -#ifndef __NO_EMBEDDED_ASM -__attribute__((section(".rev16_text"))) __STATIC_INLINE __ASM uint32_t __REV16(uint32_t value) -{ - rev16 r0, r0 - bx lr -} -#endif - - -/** - \brief Reverse byte order (16 bit) - \details Reverses the byte order in a 16-bit value and returns the signed 16-bit result. For example, 0x0080 becomes 0x8000. - \param [in] value Value to reverse - \return Reversed value - */ -#ifndef __NO_EMBEDDED_ASM -__attribute__((section(".revsh_text"))) __STATIC_INLINE __ASM int16_t __REVSH(int16_t value) -{ - revsh r0, r0 - bx lr -} -#endif - - -/** - \brief Rotate Right in unsigned value (32 bit) - \details Rotate Right (immediate) provides the value of the contents of a register rotated by a variable number of bits. - \param [in] op1 Value to rotate - \param [in] op2 Number of Bits to rotate - \return Rotated value - */ -#define __ROR __ror - - -/** - \brief Breakpoint - \details Causes the processor to enter Debug state. - Debug tools can use this to investigate system state when the instruction at a particular address is reached. - \param [in] value is ignored by the processor. - If required, a debugger can use it to store additional information about the breakpoint. - */ -#define __BKPT(value) __breakpoint(value) - - -/** - \brief Reverse bit order of value - \details Reverses the bit order of the given value. - \param [in] value Value to reverse - \return Reversed value - */ -#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) - #define __RBIT __rbit -#else -__attribute__((always_inline)) __STATIC_INLINE uint32_t __RBIT(uint32_t value) -{ - uint32_t result; - uint32_t s = (4U /*sizeof(v)*/ * 8U) - 1U; /* extra shift needed at end */ - - result = value; /* r will be reversed bits of v; first get LSB of v */ - for (value >>= 1U; value != 0U; value >>= 1U) - { - result <<= 1U; - result |= value & 1U; - s--; - } - result <<= s; /* shift when v's highest bits are zero */ - return result; -} -#endif - - -/** - \brief Count leading zeros - \details Counts the number of leading zeros of a data value. - \param [in] value Value to count the leading zeros - \return number of leading zeros in value - */ -#define __CLZ __clz - - -#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) - -/** - \brief LDR Exclusive (8 bit) - \details Executes a exclusive LDR instruction for 8 bit value. - \param [in] ptr Pointer to data - \return value of type uint8_t at (*ptr) - */ -#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) - #define __LDREXB(ptr) ((uint8_t ) __ldrex(ptr)) -#else - #define __LDREXB(ptr) _Pragma("push") _Pragma("diag_suppress 3731") ((uint8_t ) __ldrex(ptr)) _Pragma("pop") -#endif - - -/** - \brief LDR Exclusive (16 bit) - \details Executes a exclusive LDR instruction for 16 bit values. - \param [in] ptr Pointer to data - \return value of type uint16_t at (*ptr) - */ -#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) - #define __LDREXH(ptr) ((uint16_t) __ldrex(ptr)) -#else - #define __LDREXH(ptr) _Pragma("push") _Pragma("diag_suppress 3731") ((uint16_t) __ldrex(ptr)) _Pragma("pop") -#endif - - -/** - \brief LDR Exclusive (32 bit) - \details Executes a exclusive LDR instruction for 32 bit values. - \param [in] ptr Pointer to data - \return value of type uint32_t at (*ptr) - */ -#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) - #define __LDREXW(ptr) ((uint32_t ) __ldrex(ptr)) -#else - #define __LDREXW(ptr) _Pragma("push") _Pragma("diag_suppress 3731") ((uint32_t ) __ldrex(ptr)) _Pragma("pop") -#endif - - -/** - \brief STR Exclusive (8 bit) - \details Executes a exclusive STR instruction for 8 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) - #define __STREXB(value, ptr) __strex(value, ptr) -#else - #define __STREXB(value, ptr) _Pragma("push") _Pragma("diag_suppress 3731") __strex(value, ptr) _Pragma("pop") -#endif - - -/** - \brief STR Exclusive (16 bit) - \details Executes a exclusive STR instruction for 16 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) - #define __STREXH(value, ptr) __strex(value, ptr) -#else - #define __STREXH(value, ptr) _Pragma("push") _Pragma("diag_suppress 3731") __strex(value, ptr) _Pragma("pop") -#endif - - -/** - \brief STR Exclusive (32 bit) - \details Executes a exclusive STR instruction for 32 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) - #define __STREXW(value, ptr) __strex(value, ptr) -#else - #define __STREXW(value, ptr) _Pragma("push") _Pragma("diag_suppress 3731") __strex(value, ptr) _Pragma("pop") -#endif - - -/** - \brief Remove the exclusive lock - \details Removes the exclusive lock which is created by LDREX. - */ -#define __CLREX __clrex - - -/** - \brief Signed Saturate - \details Saturates a signed value. - \param [in] value Value to be saturated - \param [in] sat Bit position to saturate to (1..32) - \return Saturated value - */ -#define __SSAT __ssat - - -/** - \brief Unsigned Saturate - \details Saturates an unsigned value. - \param [in] value Value to be saturated - \param [in] sat Bit position to saturate to (0..31) - \return Saturated value - */ -#define __USAT __usat - - -/** - \brief Rotate Right with Extend (32 bit) - \details Moves each bit of a bitstring right by one bit. - The carry input is shifted in at the left end of the bitstring. - \param [in] value Value to rotate - \return Rotated value - */ -#ifndef __NO_EMBEDDED_ASM -__attribute__((section(".rrx_text"))) __STATIC_INLINE __ASM uint32_t __RRX(uint32_t value) -{ - rrx r0, r0 - bx lr -} -#endif - - -/** - \brief LDRT Unprivileged (8 bit) - \details Executes a Unprivileged LDRT instruction for 8 bit value. - \param [in] ptr Pointer to data - \return value of type uint8_t at (*ptr) - */ -#define __LDRBT(ptr) ((uint8_t ) __ldrt(ptr)) - - -/** - \brief LDRT Unprivileged (16 bit) - \details Executes a Unprivileged LDRT instruction for 16 bit values. - \param [in] ptr Pointer to data - \return value of type uint16_t at (*ptr) - */ -#define __LDRHT(ptr) ((uint16_t) __ldrt(ptr)) - - -/** - \brief LDRT Unprivileged (32 bit) - \details Executes a Unprivileged LDRT instruction for 32 bit values. - \param [in] ptr Pointer to data - \return value of type uint32_t at (*ptr) - */ -#define __LDRT(ptr) ((uint32_t ) __ldrt(ptr)) - - -/** - \brief STRT Unprivileged (8 bit) - \details Executes a Unprivileged STRT instruction for 8 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -#define __STRBT(value, ptr) __strt(value, ptr) - - -/** - \brief STRT Unprivileged (16 bit) - \details Executes a Unprivileged STRT instruction for 16 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -#define __STRHT(value, ptr) __strt(value, ptr) - - -/** - \brief STRT Unprivileged (32 bit) - \details Executes a Unprivileged STRT instruction for 32 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -#define __STRT(value, ptr) __strt(value, ptr) - -#else /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */ - -/** - \brief Signed Saturate - \details Saturates a signed value. - \param [in] value Value to be saturated - \param [in] sat Bit position to saturate to (1..32) - \return Saturated value - */ -__attribute__((always_inline)) __STATIC_INLINE int32_t __SSAT(int32_t val, uint32_t sat) -{ - if ((sat >= 1U) && (sat <= 32U)) - { - const int32_t max = (int32_t)((1U << (sat - 1U)) - 1U); - const int32_t min = -1 - max ; - if (val > max) - { - return max; - } - else if (val < min) - { - return min; - } - } - return val; -} - -/** - \brief Unsigned Saturate - \details Saturates an unsigned value. - \param [in] value Value to be saturated - \param [in] sat Bit position to saturate to (0..31) - \return Saturated value - */ -__attribute__((always_inline)) __STATIC_INLINE uint32_t __USAT(int32_t val, uint32_t sat) -{ - if (sat <= 31U) - { - const uint32_t max = ((1U << sat) - 1U); - if (val > (int32_t)max) - { - return max; - } - else if (val < 0) - { - return 0U; - } - } - return (uint32_t)val; -} - -#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */ - -/*@}*/ /* end of group CMSIS_Core_InstructionInterface */ - - -/* ################### Compiler specific Intrinsics ########################### */ -/** \defgroup CMSIS_SIMD_intrinsics CMSIS SIMD Intrinsics - Access to dedicated SIMD instructions - @{ -*/ - -#if ((defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) - -#define __SADD8 __sadd8 -#define __QADD8 __qadd8 -#define __SHADD8 __shadd8 -#define __UADD8 __uadd8 -#define __UQADD8 __uqadd8 -#define __UHADD8 __uhadd8 -#define __SSUB8 __ssub8 -#define __QSUB8 __qsub8 -#define __SHSUB8 __shsub8 -#define __USUB8 __usub8 -#define __UQSUB8 __uqsub8 -#define __UHSUB8 __uhsub8 -#define __SADD16 __sadd16 -#define __QADD16 __qadd16 -#define __SHADD16 __shadd16 -#define __UADD16 __uadd16 -#define __UQADD16 __uqadd16 -#define __UHADD16 __uhadd16 -#define __SSUB16 __ssub16 -#define __QSUB16 __qsub16 -#define __SHSUB16 __shsub16 -#define __USUB16 __usub16 -#define __UQSUB16 __uqsub16 -#define __UHSUB16 __uhsub16 -#define __SASX __sasx -#define __QASX __qasx -#define __SHASX __shasx -#define __UASX __uasx -#define __UQASX __uqasx -#define __UHASX __uhasx -#define __SSAX __ssax -#define __QSAX __qsax -#define __SHSAX __shsax -#define __USAX __usax -#define __UQSAX __uqsax -#define __UHSAX __uhsax -#define __USAD8 __usad8 -#define __USADA8 __usada8 -#define __SSAT16 __ssat16 -#define __USAT16 __usat16 -#define __UXTB16 __uxtb16 -#define __UXTAB16 __uxtab16 -#define __SXTB16 __sxtb16 -#define __SXTAB16 __sxtab16 -#define __SMUAD __smuad -#define __SMUADX __smuadx -#define __SMLAD __smlad -#define __SMLADX __smladx -#define __SMLALD __smlald -#define __SMLALDX __smlaldx -#define __SMUSD __smusd -#define __SMUSDX __smusdx -#define __SMLSD __smlsd -#define __SMLSDX __smlsdx -#define __SMLSLD __smlsld -#define __SMLSLDX __smlsldx -#define __SEL __sel -#define __QADD __qadd -#define __QSUB __qsub - -#define __PKHBT(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0x0000FFFFUL) | \ - ((((uint32_t)(ARG2)) << (ARG3)) & 0xFFFF0000UL) ) - -#define __PKHTB(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0xFFFF0000UL) | \ - ((((uint32_t)(ARG2)) >> (ARG3)) & 0x0000FFFFUL) ) - -#define __SMMLA(ARG1,ARG2,ARG3) ( (int32_t)((((int64_t)(ARG1) * (ARG2)) + \ - ((int64_t)(ARG3) << 32U) ) >> 32U)) - -#endif /* ((defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */ -/*@} end of group CMSIS_SIMD_intrinsics */ - - -#endif /* __CMSIS_ARMCC_H */ +/**************************************************************************//** + * @file cmsis_armcc.h + * @brief CMSIS compiler ARMCC (Arm Compiler 5) header file + * @version V5.0.4 + * @date 10. January 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef __CMSIS_ARMCC_H +#define __CMSIS_ARMCC_H + + +#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 400677) + #error "Please use Arm Compiler Toolchain V4.0.677 or later!" +#endif + +/* CMSIS compiler control architecture macros */ +#if ((defined (__TARGET_ARCH_6_M ) && (__TARGET_ARCH_6_M == 1)) || \ + (defined (__TARGET_ARCH_6S_M ) && (__TARGET_ARCH_6S_M == 1)) ) + #define __ARM_ARCH_6M__ 1 +#endif + +#if (defined (__TARGET_ARCH_7_M ) && (__TARGET_ARCH_7_M == 1)) + #define __ARM_ARCH_7M__ 1 +#endif + +#if (defined (__TARGET_ARCH_7E_M) && (__TARGET_ARCH_7E_M == 1)) + #define __ARM_ARCH_7EM__ 1 +#endif + + /* __ARM_ARCH_8M_BASE__ not applicable */ + /* __ARM_ARCH_8M_MAIN__ not applicable */ + + +/* CMSIS compiler specific defines */ +#ifndef __ASM + #define __ASM __asm +#endif +#ifndef __INLINE + #define __INLINE __inline +#endif +#ifndef __STATIC_INLINE + #define __STATIC_INLINE static __inline +#endif +#ifndef __STATIC_FORCEINLINE + #define __STATIC_FORCEINLINE static __forceinline +#endif +#ifndef __NO_RETURN + #define __NO_RETURN __declspec(noreturn) +#endif +#ifndef __USED + #define __USED __attribute__((used)) +#endif +#ifndef __WEAK + #define __WEAK __attribute__((weak)) +#endif +#ifndef __PACKED + #define __PACKED __attribute__((packed)) +#endif +#ifndef __PACKED_STRUCT + #define __PACKED_STRUCT __packed struct +#endif +#ifndef __PACKED_UNION + #define __PACKED_UNION __packed union +#endif +#ifndef __UNALIGNED_UINT32 /* deprecated */ + #define __UNALIGNED_UINT32(x) (*((__packed uint32_t *)(x))) +#endif +#ifndef __UNALIGNED_UINT16_WRITE + #define __UNALIGNED_UINT16_WRITE(addr, val) ((*((__packed uint16_t *)(addr))) = (val)) +#endif +#ifndef __UNALIGNED_UINT16_READ + #define __UNALIGNED_UINT16_READ(addr) (*((const __packed uint16_t *)(addr))) +#endif +#ifndef __UNALIGNED_UINT32_WRITE + #define __UNALIGNED_UINT32_WRITE(addr, val) ((*((__packed uint32_t *)(addr))) = (val)) +#endif +#ifndef __UNALIGNED_UINT32_READ + #define __UNALIGNED_UINT32_READ(addr) (*((const __packed uint32_t *)(addr))) +#endif +#ifndef __ALIGNED + #define __ALIGNED(x) __attribute__((aligned(x))) +#endif +#ifndef __RESTRICT + #define __RESTRICT __restrict +#endif + +/* ########################### Core Function Access ########################### */ +/** \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions + @{ + */ + +/** + \brief Enable IRQ Interrupts + \details Enables IRQ interrupts by clearing the I-bit in the CPSR. + Can only be executed in Privileged modes. + */ +/* intrinsic void __enable_irq(); */ + + +/** + \brief Disable IRQ Interrupts + \details Disables IRQ interrupts by setting the I-bit in the CPSR. + Can only be executed in Privileged modes. + */ +/* intrinsic void __disable_irq(); */ + +/** + \brief Get Control Register + \details Returns the content of the Control Register. + \return Control Register value + */ +__STATIC_INLINE uint32_t __get_CONTROL(void) +{ + register uint32_t __regControl __ASM("control"); + return(__regControl); +} + + +/** + \brief Set Control Register + \details Writes the given value to the Control Register. + \param [in] control Control Register value to set + */ +__STATIC_INLINE void __set_CONTROL(uint32_t control) +{ + register uint32_t __regControl __ASM("control"); + __regControl = control; +} + + +/** + \brief Get IPSR Register + \details Returns the content of the IPSR Register. + \return IPSR Register value + */ +__STATIC_INLINE uint32_t __get_IPSR(void) +{ + register uint32_t __regIPSR __ASM("ipsr"); + return(__regIPSR); +} + + +/** + \brief Get APSR Register + \details Returns the content of the APSR Register. + \return APSR Register value + */ +__STATIC_INLINE uint32_t __get_APSR(void) +{ + register uint32_t __regAPSR __ASM("apsr"); + return(__regAPSR); +} + + +/** + \brief Get xPSR Register + \details Returns the content of the xPSR Register. + \return xPSR Register value + */ +__STATIC_INLINE uint32_t __get_xPSR(void) +{ + register uint32_t __regXPSR __ASM("xpsr"); + return(__regXPSR); +} + + +/** + \brief Get Process Stack Pointer + \details Returns the current value of the Process Stack Pointer (PSP). + \return PSP Register value + */ +__STATIC_INLINE uint32_t __get_PSP(void) +{ + register uint32_t __regProcessStackPointer __ASM("psp"); + return(__regProcessStackPointer); +} + + +/** + \brief Set Process Stack Pointer + \details Assigns the given value to the Process Stack Pointer (PSP). + \param [in] topOfProcStack Process Stack Pointer value to set + */ +__STATIC_INLINE void __set_PSP(uint32_t topOfProcStack) +{ + register uint32_t __regProcessStackPointer __ASM("psp"); + __regProcessStackPointer = topOfProcStack; +} + + +/** + \brief Get Main Stack Pointer + \details Returns the current value of the Main Stack Pointer (MSP). + \return MSP Register value + */ +__STATIC_INLINE uint32_t __get_MSP(void) +{ + register uint32_t __regMainStackPointer __ASM("msp"); + return(__regMainStackPointer); +} + + +/** + \brief Set Main Stack Pointer + \details Assigns the given value to the Main Stack Pointer (MSP). + \param [in] topOfMainStack Main Stack Pointer value to set + */ +__STATIC_INLINE void __set_MSP(uint32_t topOfMainStack) +{ + register uint32_t __regMainStackPointer __ASM("msp"); + __regMainStackPointer = topOfMainStack; +} + + +/** + \brief Get Priority Mask + \details Returns the current state of the priority mask bit from the Priority Mask Register. + \return Priority Mask value + */ +__STATIC_INLINE uint32_t __get_PRIMASK(void) +{ + register uint32_t __regPriMask __ASM("primask"); + return(__regPriMask); +} + + +/** + \brief Set Priority Mask + \details Assigns the given value to the Priority Mask Register. + \param [in] priMask Priority Mask + */ +__STATIC_INLINE void __set_PRIMASK(uint32_t priMask) +{ + register uint32_t __regPriMask __ASM("primask"); + __regPriMask = (priMask); +} + + +#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) + +/** + \brief Enable FIQ + \details Enables FIQ interrupts by clearing the F-bit in the CPSR. + Can only be executed in Privileged modes. + */ +#define __enable_fault_irq __enable_fiq + + +/** + \brief Disable FIQ + \details Disables FIQ interrupts by setting the F-bit in the CPSR. + Can only be executed in Privileged modes. + */ +#define __disable_fault_irq __disable_fiq + + +/** + \brief Get Base Priority + \details Returns the current value of the Base Priority register. + \return Base Priority register value + */ +__STATIC_INLINE uint32_t __get_BASEPRI(void) +{ + register uint32_t __regBasePri __ASM("basepri"); + return(__regBasePri); +} + + +/** + \brief Set Base Priority + \details Assigns the given value to the Base Priority register. + \param [in] basePri Base Priority value to set + */ +__STATIC_INLINE void __set_BASEPRI(uint32_t basePri) +{ + register uint32_t __regBasePri __ASM("basepri"); + __regBasePri = (basePri & 0xFFU); +} + + +/** + \brief Set Base Priority with condition + \details Assigns the given value to the Base Priority register only if BASEPRI masking is disabled, + or the new value increases the BASEPRI priority level. + \param [in] basePri Base Priority value to set + */ +__STATIC_INLINE void __set_BASEPRI_MAX(uint32_t basePri) +{ + register uint32_t __regBasePriMax __ASM("basepri_max"); + __regBasePriMax = (basePri & 0xFFU); +} + + +/** + \brief Get Fault Mask + \details Returns the current value of the Fault Mask register. + \return Fault Mask register value + */ +__STATIC_INLINE uint32_t __get_FAULTMASK(void) +{ + register uint32_t __regFaultMask __ASM("faultmask"); + return(__regFaultMask); +} + + +/** + \brief Set Fault Mask + \details Assigns the given value to the Fault Mask register. + \param [in] faultMask Fault Mask value to set + */ +__STATIC_INLINE void __set_FAULTMASK(uint32_t faultMask) +{ + register uint32_t __regFaultMask __ASM("faultmask"); + __regFaultMask = (faultMask & (uint32_t)1U); +} + +#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */ + + +/** + \brief Get FPSCR + \details Returns the current value of the Floating Point Status/Control register. + \return Floating Point Status/Control register value + */ +__STATIC_INLINE uint32_t __get_FPSCR(void) +{ +#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ + (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) + register uint32_t __regfpscr __ASM("fpscr"); + return(__regfpscr); +#else + return(0U); +#endif +} + + +/** + \brief Set FPSCR + \details Assigns the given value to the Floating Point Status/Control register. + \param [in] fpscr Floating Point Status/Control value to set + */ +__STATIC_INLINE void __set_FPSCR(uint32_t fpscr) +{ +#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ + (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) + register uint32_t __regfpscr __ASM("fpscr"); + __regfpscr = (fpscr); +#else + (void)fpscr; +#endif +} + + +/*@} end of CMSIS_Core_RegAccFunctions */ + + +/* ########################## Core Instruction Access ######################### */ +/** \defgroup CMSIS_Core_InstructionInterface CMSIS Core Instruction Interface + Access to dedicated instructions + @{ +*/ + +/** + \brief No Operation + \details No Operation does nothing. This instruction can be used for code alignment purposes. + */ +#define __NOP __nop + + +/** + \brief Wait For Interrupt + \details Wait For Interrupt is a hint instruction that suspends execution until one of a number of events occurs. + */ +#define __WFI __wfi + + +/** + \brief Wait For Event + \details Wait For Event is a hint instruction that permits the processor to enter + a low-power state until one of a number of events occurs. + */ +#define __WFE __wfe + + +/** + \brief Send Event + \details Send Event is a hint instruction. It causes an event to be signaled to the CPU. + */ +#define __SEV __sev + + +/** + \brief Instruction Synchronization Barrier + \details Instruction Synchronization Barrier flushes the pipeline in the processor, + so that all instructions following the ISB are fetched from cache or memory, + after the instruction has been completed. + */ +#define __ISB() do {\ + __schedule_barrier();\ + __isb(0xF);\ + __schedule_barrier();\ + } while (0U) + +/** + \brief Data Synchronization Barrier + \details Acts as a special kind of Data Memory Barrier. + It completes when all explicit memory accesses before this instruction complete. + */ +#define __DSB() do {\ + __schedule_barrier();\ + __dsb(0xF);\ + __schedule_barrier();\ + } while (0U) + +/** + \brief Data Memory Barrier + \details Ensures the apparent order of the explicit memory operations before + and after the instruction, without ensuring their completion. + */ +#define __DMB() do {\ + __schedule_barrier();\ + __dmb(0xF);\ + __schedule_barrier();\ + } while (0U) + + +/** + \brief Reverse byte order (32 bit) + \details Reverses the byte order in unsigned integer value. For example, 0x12345678 becomes 0x78563412. + \param [in] value Value to reverse + \return Reversed value + */ +#define __REV __rev + + +/** + \brief Reverse byte order (16 bit) + \details Reverses the byte order within each halfword of a word. For example, 0x12345678 becomes 0x34127856. + \param [in] value Value to reverse + \return Reversed value + */ +#ifndef __NO_EMBEDDED_ASM +__attribute__((section(".rev16_text"))) __STATIC_INLINE __ASM uint32_t __REV16(uint32_t value) +{ + rev16 r0, r0 + bx lr +} +#endif + + +/** + \brief Reverse byte order (16 bit) + \details Reverses the byte order in a 16-bit value and returns the signed 16-bit result. For example, 0x0080 becomes 0x8000. + \param [in] value Value to reverse + \return Reversed value + */ +#ifndef __NO_EMBEDDED_ASM +__attribute__((section(".revsh_text"))) __STATIC_INLINE __ASM int16_t __REVSH(int16_t value) +{ + revsh r0, r0 + bx lr +} +#endif + + +/** + \brief Rotate Right in unsigned value (32 bit) + \details Rotate Right (immediate) provides the value of the contents of a register rotated by a variable number of bits. + \param [in] op1 Value to rotate + \param [in] op2 Number of Bits to rotate + \return Rotated value + */ +#define __ROR __ror + + +/** + \brief Breakpoint + \details Causes the processor to enter Debug state. + Debug tools can use this to investigate system state when the instruction at a particular address is reached. + \param [in] value is ignored by the processor. + If required, a debugger can use it to store additional information about the breakpoint. + */ +#define __BKPT(value) __breakpoint(value) + + +/** + \brief Reverse bit order of value + \details Reverses the bit order of the given value. + \param [in] value Value to reverse + \return Reversed value + */ +#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) + #define __RBIT __rbit +#else +__attribute__((always_inline)) __STATIC_INLINE uint32_t __RBIT(uint32_t value) +{ + uint32_t result; + uint32_t s = (4U /*sizeof(v)*/ * 8U) - 1U; /* extra shift needed at end */ + + result = value; /* r will be reversed bits of v; first get LSB of v */ + for (value >>= 1U; value != 0U; value >>= 1U) + { + result <<= 1U; + result |= value & 1U; + s--; + } + result <<= s; /* shift when v's highest bits are zero */ + return result; +} +#endif + + +/** + \brief Count leading zeros + \details Counts the number of leading zeros of a data value. + \param [in] value Value to count the leading zeros + \return number of leading zeros in value + */ +#define __CLZ __clz + + +#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) + +/** + \brief LDR Exclusive (8 bit) + \details Executes a exclusive LDR instruction for 8 bit value. + \param [in] ptr Pointer to data + \return value of type uint8_t at (*ptr) + */ +#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) + #define __LDREXB(ptr) ((uint8_t ) __ldrex(ptr)) +#else + #define __LDREXB(ptr) _Pragma("push") _Pragma("diag_suppress 3731") ((uint8_t ) __ldrex(ptr)) _Pragma("pop") +#endif + + +/** + \brief LDR Exclusive (16 bit) + \details Executes a exclusive LDR instruction for 16 bit values. + \param [in] ptr Pointer to data + \return value of type uint16_t at (*ptr) + */ +#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) + #define __LDREXH(ptr) ((uint16_t) __ldrex(ptr)) +#else + #define __LDREXH(ptr) _Pragma("push") _Pragma("diag_suppress 3731") ((uint16_t) __ldrex(ptr)) _Pragma("pop") +#endif + + +/** + \brief LDR Exclusive (32 bit) + \details Executes a exclusive LDR instruction for 32 bit values. + \param [in] ptr Pointer to data + \return value of type uint32_t at (*ptr) + */ +#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) + #define __LDREXW(ptr) ((uint32_t ) __ldrex(ptr)) +#else + #define __LDREXW(ptr) _Pragma("push") _Pragma("diag_suppress 3731") ((uint32_t ) __ldrex(ptr)) _Pragma("pop") +#endif + + +/** + \brief STR Exclusive (8 bit) + \details Executes a exclusive STR instruction for 8 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) + #define __STREXB(value, ptr) __strex(value, ptr) +#else + #define __STREXB(value, ptr) _Pragma("push") _Pragma("diag_suppress 3731") __strex(value, ptr) _Pragma("pop") +#endif + + +/** + \brief STR Exclusive (16 bit) + \details Executes a exclusive STR instruction for 16 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) + #define __STREXH(value, ptr) __strex(value, ptr) +#else + #define __STREXH(value, ptr) _Pragma("push") _Pragma("diag_suppress 3731") __strex(value, ptr) _Pragma("pop") +#endif + + +/** + \brief STR Exclusive (32 bit) + \details Executes a exclusive STR instruction for 32 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION < 5060020) + #define __STREXW(value, ptr) __strex(value, ptr) +#else + #define __STREXW(value, ptr) _Pragma("push") _Pragma("diag_suppress 3731") __strex(value, ptr) _Pragma("pop") +#endif + + +/** + \brief Remove the exclusive lock + \details Removes the exclusive lock which is created by LDREX. + */ +#define __CLREX __clrex + + +/** + \brief Signed Saturate + \details Saturates a signed value. + \param [in] value Value to be saturated + \param [in] sat Bit position to saturate to (1..32) + \return Saturated value + */ +#define __SSAT __ssat + + +/** + \brief Unsigned Saturate + \details Saturates an unsigned value. + \param [in] value Value to be saturated + \param [in] sat Bit position to saturate to (0..31) + \return Saturated value + */ +#define __USAT __usat + + +/** + \brief Rotate Right with Extend (32 bit) + \details Moves each bit of a bitstring right by one bit. + The carry input is shifted in at the left end of the bitstring. + \param [in] value Value to rotate + \return Rotated value + */ +#ifndef __NO_EMBEDDED_ASM +__attribute__((section(".rrx_text"))) __STATIC_INLINE __ASM uint32_t __RRX(uint32_t value) +{ + rrx r0, r0 + bx lr +} +#endif + + +/** + \brief LDRT Unprivileged (8 bit) + \details Executes a Unprivileged LDRT instruction for 8 bit value. + \param [in] ptr Pointer to data + \return value of type uint8_t at (*ptr) + */ +#define __LDRBT(ptr) ((uint8_t ) __ldrt(ptr)) + + +/** + \brief LDRT Unprivileged (16 bit) + \details Executes a Unprivileged LDRT instruction for 16 bit values. + \param [in] ptr Pointer to data + \return value of type uint16_t at (*ptr) + */ +#define __LDRHT(ptr) ((uint16_t) __ldrt(ptr)) + + +/** + \brief LDRT Unprivileged (32 bit) + \details Executes a Unprivileged LDRT instruction for 32 bit values. + \param [in] ptr Pointer to data + \return value of type uint32_t at (*ptr) + */ +#define __LDRT(ptr) ((uint32_t ) __ldrt(ptr)) + + +/** + \brief STRT Unprivileged (8 bit) + \details Executes a Unprivileged STRT instruction for 8 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +#define __STRBT(value, ptr) __strt(value, ptr) + + +/** + \brief STRT Unprivileged (16 bit) + \details Executes a Unprivileged STRT instruction for 16 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +#define __STRHT(value, ptr) __strt(value, ptr) + + +/** + \brief STRT Unprivileged (32 bit) + \details Executes a Unprivileged STRT instruction for 32 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +#define __STRT(value, ptr) __strt(value, ptr) + +#else /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */ + +/** + \brief Signed Saturate + \details Saturates a signed value. + \param [in] value Value to be saturated + \param [in] sat Bit position to saturate to (1..32) + \return Saturated value + */ +__attribute__((always_inline)) __STATIC_INLINE int32_t __SSAT(int32_t val, uint32_t sat) +{ + if ((sat >= 1U) && (sat <= 32U)) + { + const int32_t max = (int32_t)((1U << (sat - 1U)) - 1U); + const int32_t min = -1 - max ; + if (val > max) + { + return max; + } + else if (val < min) + { + return min; + } + } + return val; +} + +/** + \brief Unsigned Saturate + \details Saturates an unsigned value. + \param [in] value Value to be saturated + \param [in] sat Bit position to saturate to (0..31) + \return Saturated value + */ +__attribute__((always_inline)) __STATIC_INLINE uint32_t __USAT(int32_t val, uint32_t sat) +{ + if (sat <= 31U) + { + const uint32_t max = ((1U << sat) - 1U); + if (val > (int32_t)max) + { + return max; + } + else if (val < 0) + { + return 0U; + } + } + return (uint32_t)val; +} + +#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */ + +/*@}*/ /* end of group CMSIS_Core_InstructionInterface */ + + +/* ################### Compiler specific Intrinsics ########################### */ +/** \defgroup CMSIS_SIMD_intrinsics CMSIS SIMD Intrinsics + Access to dedicated SIMD instructions + @{ +*/ + +#if ((defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) + +#define __SADD8 __sadd8 +#define __QADD8 __qadd8 +#define __SHADD8 __shadd8 +#define __UADD8 __uadd8 +#define __UQADD8 __uqadd8 +#define __UHADD8 __uhadd8 +#define __SSUB8 __ssub8 +#define __QSUB8 __qsub8 +#define __SHSUB8 __shsub8 +#define __USUB8 __usub8 +#define __UQSUB8 __uqsub8 +#define __UHSUB8 __uhsub8 +#define __SADD16 __sadd16 +#define __QADD16 __qadd16 +#define __SHADD16 __shadd16 +#define __UADD16 __uadd16 +#define __UQADD16 __uqadd16 +#define __UHADD16 __uhadd16 +#define __SSUB16 __ssub16 +#define __QSUB16 __qsub16 +#define __SHSUB16 __shsub16 +#define __USUB16 __usub16 +#define __UQSUB16 __uqsub16 +#define __UHSUB16 __uhsub16 +#define __SASX __sasx +#define __QASX __qasx +#define __SHASX __shasx +#define __UASX __uasx +#define __UQASX __uqasx +#define __UHASX __uhasx +#define __SSAX __ssax +#define __QSAX __qsax +#define __SHSAX __shsax +#define __USAX __usax +#define __UQSAX __uqsax +#define __UHSAX __uhsax +#define __USAD8 __usad8 +#define __USADA8 __usada8 +#define __SSAT16 __ssat16 +#define __USAT16 __usat16 +#define __UXTB16 __uxtb16 +#define __UXTAB16 __uxtab16 +#define __SXTB16 __sxtb16 +#define __SXTAB16 __sxtab16 +#define __SMUAD __smuad +#define __SMUADX __smuadx +#define __SMLAD __smlad +#define __SMLADX __smladx +#define __SMLALD __smlald +#define __SMLALDX __smlaldx +#define __SMUSD __smusd +#define __SMUSDX __smusdx +#define __SMLSD __smlsd +#define __SMLSDX __smlsdx +#define __SMLSLD __smlsld +#define __SMLSLDX __smlsldx +#define __SEL __sel +#define __QADD __qadd +#define __QSUB __qsub + +#define __PKHBT(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0x0000FFFFUL) | \ + ((((uint32_t)(ARG2)) << (ARG3)) & 0xFFFF0000UL) ) + +#define __PKHTB(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0xFFFF0000UL) | \ + ((((uint32_t)(ARG2)) >> (ARG3)) & 0x0000FFFFUL) ) + +#define __SMMLA(ARG1,ARG2,ARG3) ( (int32_t)((((int64_t)(ARG1) * (ARG2)) + \ + ((int64_t)(ARG3) << 32U) ) >> 32U)) + +#endif /* ((defined (__ARM_ARCH_7EM__) && (__ARM_ARCH_7EM__ == 1)) ) */ +/*@} end of group CMSIS_SIMD_intrinsics */ + + +#endif /* __CMSIS_ARMCC_H */ diff --git a/stm32f103/Drivers/CMSIS/Include/cmsis_armclang.h b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_armclang.h similarity index 96% rename from stm32f103/Drivers/CMSIS/Include/cmsis_armclang.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_armclang.h index d8031b0..162a400 100644 --- a/stm32f103/Drivers/CMSIS/Include/cmsis_armclang.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_armclang.h @@ -1,1869 +1,1869 @@ -/**************************************************************************//** - * @file cmsis_armclang.h - * @brief CMSIS compiler armclang (Arm Compiler 6) header file - * @version V5.0.4 - * @date 10. January 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*lint -esym(9058, IRQn)*/ /* disable MISRA 2012 Rule 2.4 for IRQn */ - -#ifndef __CMSIS_ARMCLANG_H -#define __CMSIS_ARMCLANG_H - -#pragma clang system_header /* treat file as system include file */ - -#ifndef __ARM_COMPAT_H -#include /* Compatibility header for Arm Compiler 5 intrinsics */ -#endif - -/* CMSIS compiler specific defines */ -#ifndef __ASM - #define __ASM __asm -#endif -#ifndef __INLINE - #define __INLINE __inline -#endif -#ifndef __STATIC_INLINE - #define __STATIC_INLINE static __inline -#endif -#ifndef __STATIC_FORCEINLINE - #define __STATIC_FORCEINLINE __attribute__((always_inline)) static __inline -#endif -#ifndef __NO_RETURN - #define __NO_RETURN __attribute__((__noreturn__)) -#endif -#ifndef __USED - #define __USED __attribute__((used)) -#endif -#ifndef __WEAK - #define __WEAK __attribute__((weak)) -#endif -#ifndef __PACKED - #define __PACKED __attribute__((packed, aligned(1))) -#endif -#ifndef __PACKED_STRUCT - #define __PACKED_STRUCT struct __attribute__((packed, aligned(1))) -#endif -#ifndef __PACKED_UNION - #define __PACKED_UNION union __attribute__((packed, aligned(1))) -#endif -#ifndef __UNALIGNED_UINT32 /* deprecated */ - #pragma clang diagnostic push - #pragma clang diagnostic ignored "-Wpacked" -/*lint -esym(9058, T_UINT32)*/ /* disable MISRA 2012 Rule 2.4 for T_UINT32 */ - struct __attribute__((packed)) T_UINT32 { uint32_t v; }; - #pragma clang diagnostic pop - #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) -#endif -#ifndef __UNALIGNED_UINT16_WRITE - #pragma clang diagnostic push - #pragma clang diagnostic ignored "-Wpacked" -/*lint -esym(9058, T_UINT16_WRITE)*/ /* disable MISRA 2012 Rule 2.4 for T_UINT16_WRITE */ - __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; }; - #pragma clang diagnostic pop - #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val)) -#endif -#ifndef __UNALIGNED_UINT16_READ - #pragma clang diagnostic push - #pragma clang diagnostic ignored "-Wpacked" -/*lint -esym(9058, T_UINT16_READ)*/ /* disable MISRA 2012 Rule 2.4 for T_UINT16_READ */ - __PACKED_STRUCT T_UINT16_READ { uint16_t v; }; - #pragma clang diagnostic pop - #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v) -#endif -#ifndef __UNALIGNED_UINT32_WRITE - #pragma clang diagnostic push - #pragma clang diagnostic ignored "-Wpacked" -/*lint -esym(9058, T_UINT32_WRITE)*/ /* disable MISRA 2012 Rule 2.4 for T_UINT32_WRITE */ - __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; }; - #pragma clang diagnostic pop - #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val)) -#endif -#ifndef __UNALIGNED_UINT32_READ - #pragma clang diagnostic push - #pragma clang diagnostic ignored "-Wpacked" -/*lint -esym(9058, T_UINT32_READ)*/ /* disable MISRA 2012 Rule 2.4 for T_UINT32_READ */ - __PACKED_STRUCT T_UINT32_READ { uint32_t v; }; - #pragma clang diagnostic pop - #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v) -#endif -#ifndef __ALIGNED - #define __ALIGNED(x) __attribute__((aligned(x))) -#endif -#ifndef __RESTRICT - #define __RESTRICT __restrict -#endif - - -/* ########################### Core Function Access ########################### */ -/** \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions - @{ - */ - -/** - \brief Enable IRQ Interrupts - \details Enables IRQ interrupts by clearing the I-bit in the CPSR. - Can only be executed in Privileged modes. - */ -/* intrinsic void __enable_irq(); see arm_compat.h */ - - -/** - \brief Disable IRQ Interrupts - \details Disables IRQ interrupts by setting the I-bit in the CPSR. - Can only be executed in Privileged modes. - */ -/* intrinsic void __disable_irq(); see arm_compat.h */ - - -/** - \brief Get Control Register - \details Returns the content of the Control Register. - \return Control Register value - */ -__STATIC_FORCEINLINE uint32_t __get_CONTROL(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, control" : "=r" (result) ); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Control Register (non-secure) - \details Returns the content of the non-secure Control Register when in secure mode. - \return non-secure Control Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_CONTROL_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, control_ns" : "=r" (result) ); - return(result); -} -#endif - - -/** - \brief Set Control Register - \details Writes the given value to the Control Register. - \param [in] control Control Register value to set - */ -__STATIC_FORCEINLINE void __set_CONTROL(uint32_t control) -{ - __ASM volatile ("MSR control, %0" : : "r" (control) : "memory"); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Control Register (non-secure) - \details Writes the given value to the non-secure Control Register when in secure state. - \param [in] control Control Register value to set - */ -__STATIC_FORCEINLINE void __TZ_set_CONTROL_NS(uint32_t control) -{ - __ASM volatile ("MSR control_ns, %0" : : "r" (control) : "memory"); -} -#endif - - -/** - \brief Get IPSR Register - \details Returns the content of the IPSR Register. - \return IPSR Register value - */ -__STATIC_FORCEINLINE uint32_t __get_IPSR(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, ipsr" : "=r" (result) ); - return(result); -} - - -/** - \brief Get APSR Register - \details Returns the content of the APSR Register. - \return APSR Register value - */ -__STATIC_FORCEINLINE uint32_t __get_APSR(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, apsr" : "=r" (result) ); - return(result); -} - - -/** - \brief Get xPSR Register - \details Returns the content of the xPSR Register. - \return xPSR Register value - */ -__STATIC_FORCEINLINE uint32_t __get_xPSR(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, xpsr" : "=r" (result) ); - return(result); -} - - -/** - \brief Get Process Stack Pointer - \details Returns the current value of the Process Stack Pointer (PSP). - \return PSP Register value - */ -__STATIC_FORCEINLINE uint32_t __get_PSP(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, psp" : "=r" (result) ); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Process Stack Pointer (non-secure) - \details Returns the current value of the non-secure Process Stack Pointer (PSP) when in secure state. - \return PSP Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_PSP_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, psp_ns" : "=r" (result) ); - return(result); -} -#endif - - -/** - \brief Set Process Stack Pointer - \details Assigns the given value to the Process Stack Pointer (PSP). - \param [in] topOfProcStack Process Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __set_PSP(uint32_t topOfProcStack) -{ - __ASM volatile ("MSR psp, %0" : : "r" (topOfProcStack) : ); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Process Stack Pointer (non-secure) - \details Assigns the given value to the non-secure Process Stack Pointer (PSP) when in secure state. - \param [in] topOfProcStack Process Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __TZ_set_PSP_NS(uint32_t topOfProcStack) -{ - __ASM volatile ("MSR psp_ns, %0" : : "r" (topOfProcStack) : ); -} -#endif - - -/** - \brief Get Main Stack Pointer - \details Returns the current value of the Main Stack Pointer (MSP). - \return MSP Register value - */ -__STATIC_FORCEINLINE uint32_t __get_MSP(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, msp" : "=r" (result) ); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Main Stack Pointer (non-secure) - \details Returns the current value of the non-secure Main Stack Pointer (MSP) when in secure state. - \return MSP Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_MSP_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, msp_ns" : "=r" (result) ); - return(result); -} -#endif - - -/** - \brief Set Main Stack Pointer - \details Assigns the given value to the Main Stack Pointer (MSP). - \param [in] topOfMainStack Main Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __set_MSP(uint32_t topOfMainStack) -{ - __ASM volatile ("MSR msp, %0" : : "r" (topOfMainStack) : ); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Main Stack Pointer (non-secure) - \details Assigns the given value to the non-secure Main Stack Pointer (MSP) when in secure state. - \param [in] topOfMainStack Main Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __TZ_set_MSP_NS(uint32_t topOfMainStack) -{ - __ASM volatile ("MSR msp_ns, %0" : : "r" (topOfMainStack) : ); -} -#endif - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Stack Pointer (non-secure) - \details Returns the current value of the non-secure Stack Pointer (SP) when in secure state. - \return SP Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_SP_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, sp_ns" : "=r" (result) ); - return(result); -} - - -/** - \brief Set Stack Pointer (non-secure) - \details Assigns the given value to the non-secure Stack Pointer (SP) when in secure state. - \param [in] topOfStack Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __TZ_set_SP_NS(uint32_t topOfStack) -{ - __ASM volatile ("MSR sp_ns, %0" : : "r" (topOfStack) : ); -} -#endif - - -/** - \brief Get Priority Mask - \details Returns the current state of the priority mask bit from the Priority Mask Register. - \return Priority Mask value - */ -__STATIC_FORCEINLINE uint32_t __get_PRIMASK(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, primask" : "=r" (result) ); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Priority Mask (non-secure) - \details Returns the current state of the non-secure priority mask bit from the Priority Mask Register when in secure state. - \return Priority Mask value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_PRIMASK_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, primask_ns" : "=r" (result) ); - return(result); -} -#endif - - -/** - \brief Set Priority Mask - \details Assigns the given value to the Priority Mask Register. - \param [in] priMask Priority Mask - */ -__STATIC_FORCEINLINE void __set_PRIMASK(uint32_t priMask) -{ - __ASM volatile ("MSR primask, %0" : : "r" (priMask) : "memory"); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Priority Mask (non-secure) - \details Assigns the given value to the non-secure Priority Mask Register when in secure state. - \param [in] priMask Priority Mask - */ -__STATIC_FORCEINLINE void __TZ_set_PRIMASK_NS(uint32_t priMask) -{ - __ASM volatile ("MSR primask_ns, %0" : : "r" (priMask) : "memory"); -} -#endif - - -#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) -/** - \brief Enable FIQ - \details Enables FIQ interrupts by clearing the F-bit in the CPSR. - Can only be executed in Privileged modes. - */ -#define __enable_fault_irq __enable_fiq /* see arm_compat.h */ - - -/** - \brief Disable FIQ - \details Disables FIQ interrupts by setting the F-bit in the CPSR. - Can only be executed in Privileged modes. - */ -#define __disable_fault_irq __disable_fiq /* see arm_compat.h */ - - -/** - \brief Get Base Priority - \details Returns the current value of the Base Priority register. - \return Base Priority register value - */ -__STATIC_FORCEINLINE uint32_t __get_BASEPRI(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, basepri" : "=r" (result) ); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Base Priority (non-secure) - \details Returns the current value of the non-secure Base Priority register when in secure state. - \return Base Priority register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_BASEPRI_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, basepri_ns" : "=r" (result) ); - return(result); -} -#endif - - -/** - \brief Set Base Priority - \details Assigns the given value to the Base Priority register. - \param [in] basePri Base Priority value to set - */ -__STATIC_FORCEINLINE void __set_BASEPRI(uint32_t basePri) -{ - __ASM volatile ("MSR basepri, %0" : : "r" (basePri) : "memory"); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Base Priority (non-secure) - \details Assigns the given value to the non-secure Base Priority register when in secure state. - \param [in] basePri Base Priority value to set - */ -__STATIC_FORCEINLINE void __TZ_set_BASEPRI_NS(uint32_t basePri) -{ - __ASM volatile ("MSR basepri_ns, %0" : : "r" (basePri) : "memory"); -} -#endif - - -/** - \brief Set Base Priority with condition - \details Assigns the given value to the Base Priority register only if BASEPRI masking is disabled, - or the new value increases the BASEPRI priority level. - \param [in] basePri Base Priority value to set - */ -__STATIC_FORCEINLINE void __set_BASEPRI_MAX(uint32_t basePri) -{ - __ASM volatile ("MSR basepri_max, %0" : : "r" (basePri) : "memory"); -} - - -/** - \brief Get Fault Mask - \details Returns the current value of the Fault Mask register. - \return Fault Mask register value - */ -__STATIC_FORCEINLINE uint32_t __get_FAULTMASK(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, faultmask" : "=r" (result) ); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Fault Mask (non-secure) - \details Returns the current value of the non-secure Fault Mask register when in secure state. - \return Fault Mask register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_FAULTMASK_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, faultmask_ns" : "=r" (result) ); - return(result); -} -#endif - - -/** - \brief Set Fault Mask - \details Assigns the given value to the Fault Mask register. - \param [in] faultMask Fault Mask value to set - */ -__STATIC_FORCEINLINE void __set_FAULTMASK(uint32_t faultMask) -{ - __ASM volatile ("MSR faultmask, %0" : : "r" (faultMask) : "memory"); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Fault Mask (non-secure) - \details Assigns the given value to the non-secure Fault Mask register when in secure state. - \param [in] faultMask Fault Mask value to set - */ -__STATIC_FORCEINLINE void __TZ_set_FAULTMASK_NS(uint32_t faultMask) -{ - __ASM volatile ("MSR faultmask_ns, %0" : : "r" (faultMask) : "memory"); -} -#endif - -#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ - - -#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) - -/** - \brief Get Process Stack Pointer Limit - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence zero is returned always in non-secure - mode. - - \details Returns the current value of the Process Stack Pointer Limit (PSPLIM). - \return PSPLIM Register value - */ -__STATIC_FORCEINLINE uint32_t __get_PSPLIM(void) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - return 0U; -#else - uint32_t result; - __ASM volatile ("MRS %0, psplim" : "=r" (result) ); - return result; -#endif -} - -#if (defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Process Stack Pointer Limit (non-secure) - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence zero is returned always in non-secure - mode. - - \details Returns the current value of the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. - \return PSPLIM Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_PSPLIM_NS(void) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - return 0U; -#else - uint32_t result; - __ASM volatile ("MRS %0, psplim_ns" : "=r" (result) ); - return result; -#endif -} -#endif - - -/** - \brief Set Process Stack Pointer Limit - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence the write is silently ignored in non-secure - mode. - - \details Assigns the given value to the Process Stack Pointer Limit (PSPLIM). - \param [in] ProcStackPtrLimit Process Stack Pointer Limit value to set - */ -__STATIC_FORCEINLINE void __set_PSPLIM(uint32_t ProcStackPtrLimit) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - (void)ProcStackPtrLimit; -#else - __ASM volatile ("MSR psplim, %0" : : "r" (ProcStackPtrLimit)); -#endif -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Process Stack Pointer (non-secure) - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence the write is silently ignored in non-secure - mode. - - \details Assigns the given value to the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. - \param [in] ProcStackPtrLimit Process Stack Pointer Limit value to set - */ -__STATIC_FORCEINLINE void __TZ_set_PSPLIM_NS(uint32_t ProcStackPtrLimit) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - (void)ProcStackPtrLimit; -#else - __ASM volatile ("MSR psplim_ns, %0\n" : : "r" (ProcStackPtrLimit)); -#endif -} -#endif - - -/** - \brief Get Main Stack Pointer Limit - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence zero is returned always. - - \details Returns the current value of the Main Stack Pointer Limit (MSPLIM). - \return MSPLIM Register value - */ -__STATIC_FORCEINLINE uint32_t __get_MSPLIM(void) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - return 0U; -#else - uint32_t result; - __ASM volatile ("MRS %0, msplim" : "=r" (result) ); - return result; -#endif -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Main Stack Pointer Limit (non-secure) - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence zero is returned always. - - \details Returns the current value of the non-secure Main Stack Pointer Limit(MSPLIM) when in secure state. - \return MSPLIM Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_MSPLIM_NS(void) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - return 0U; -#else - uint32_t result; - __ASM volatile ("MRS %0, msplim_ns" : "=r" (result) ); - return result; -#endif -} -#endif - - -/** - \brief Set Main Stack Pointer Limit - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence the write is silently ignored. - - \details Assigns the given value to the Main Stack Pointer Limit (MSPLIM). - \param [in] MainStackPtrLimit Main Stack Pointer Limit value to set - */ -__STATIC_FORCEINLINE void __set_MSPLIM(uint32_t MainStackPtrLimit) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - (void)MainStackPtrLimit; -#else - __ASM volatile ("MSR msplim, %0" : : "r" (MainStackPtrLimit)); -#endif -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Main Stack Pointer Limit (non-secure) - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence the write is silently ignored. - - \details Assigns the given value to the non-secure Main Stack Pointer Limit (MSPLIM) when in secure state. - \param [in] MainStackPtrLimit Main Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __TZ_set_MSPLIM_NS(uint32_t MainStackPtrLimit) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - (void)MainStackPtrLimit; -#else - __ASM volatile ("MSR msplim_ns, %0" : : "r" (MainStackPtrLimit)); -#endif -} -#endif - -#endif /* ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ - -/** - \brief Get FPSCR - \details Returns the current value of the Floating Point Status/Control register. - \return Floating Point Status/Control register value - */ -#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ - (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) -#define __get_FPSCR (uint32_t)__builtin_arm_get_fpscr -#else -#define __get_FPSCR() ((uint32_t)0U) -#endif - -/** - \brief Set FPSCR - \details Assigns the given value to the Floating Point Status/Control register. - \param [in] fpscr Floating Point Status/Control value to set - */ -#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ - (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) -#define __set_FPSCR __builtin_arm_set_fpscr -#else -#define __set_FPSCR(x) ((void)(x)) -#endif - - -/*@} end of CMSIS_Core_RegAccFunctions */ - - -/* ########################## Core Instruction Access ######################### */ -/** \defgroup CMSIS_Core_InstructionInterface CMSIS Core Instruction Interface - Access to dedicated instructions - @{ -*/ - -/* Define macros for porting to both thumb1 and thumb2. - * For thumb1, use low register (r0-r7), specified by constraint "l" - * Otherwise, use general registers, specified by constraint "r" */ -#if defined (__thumb__) && !defined (__thumb2__) -#define __CMSIS_GCC_OUT_REG(r) "=l" (r) -#define __CMSIS_GCC_USE_REG(r) "l" (r) -#else -#define __CMSIS_GCC_OUT_REG(r) "=r" (r) -#define __CMSIS_GCC_USE_REG(r) "r" (r) -#endif - -/** - \brief No Operation - \details No Operation does nothing. This instruction can be used for code alignment purposes. - */ -#define __NOP __builtin_arm_nop - -/** - \brief Wait For Interrupt - \details Wait For Interrupt is a hint instruction that suspends execution until one of a number of events occurs. - */ -#define __WFI __builtin_arm_wfi - - -/** - \brief Wait For Event - \details Wait For Event is a hint instruction that permits the processor to enter - a low-power state until one of a number of events occurs. - */ -#define __WFE __builtin_arm_wfe - - -/** - \brief Send Event - \details Send Event is a hint instruction. It causes an event to be signaled to the CPU. - */ -#define __SEV __builtin_arm_sev - - -/** - \brief Instruction Synchronization Barrier - \details Instruction Synchronization Barrier flushes the pipeline in the processor, - so that all instructions following the ISB are fetched from cache or memory, - after the instruction has been completed. - */ -#define __ISB() __builtin_arm_isb(0xF); - -/** - \brief Data Synchronization Barrier - \details Acts as a special kind of Data Memory Barrier. - It completes when all explicit memory accesses before this instruction complete. - */ -#define __DSB() __builtin_arm_dsb(0xF); - - -/** - \brief Data Memory Barrier - \details Ensures the apparent order of the explicit memory operations before - and after the instruction, without ensuring their completion. - */ -#define __DMB() __builtin_arm_dmb(0xF); - - -/** - \brief Reverse byte order (32 bit) - \details Reverses the byte order in unsigned integer value. For example, 0x12345678 becomes 0x78563412. - \param [in] value Value to reverse - \return Reversed value - */ -#define __REV(value) __builtin_bswap32(value) - - -/** - \brief Reverse byte order (16 bit) - \details Reverses the byte order within each halfword of a word. For example, 0x12345678 becomes 0x34127856. - \param [in] value Value to reverse - \return Reversed value - */ -#define __REV16(value) __ROR(__REV(value), 16) - - -/** - \brief Reverse byte order (16 bit) - \details Reverses the byte order in a 16-bit value and returns the signed 16-bit result. For example, 0x0080 becomes 0x8000. - \param [in] value Value to reverse - \return Reversed value - */ -#define __REVSH(value) (int16_t)__builtin_bswap16(value) - - -/** - \brief Rotate Right in unsigned value (32 bit) - \details Rotate Right (immediate) provides the value of the contents of a register rotated by a variable number of bits. - \param [in] op1 Value to rotate - \param [in] op2 Number of Bits to rotate - \return Rotated value - */ -__STATIC_FORCEINLINE uint32_t __ROR(uint32_t op1, uint32_t op2) -{ - op2 %= 32U; - if (op2 == 0U) - { - return op1; - } - return (op1 >> op2) | (op1 << (32U - op2)); -} - - -/** - \brief Breakpoint - \details Causes the processor to enter Debug state. - Debug tools can use this to investigate system state when the instruction at a particular address is reached. - \param [in] value is ignored by the processor. - If required, a debugger can use it to store additional information about the breakpoint. - */ -#define __BKPT(value) __ASM volatile ("bkpt "#value) - - -/** - \brief Reverse bit order of value - \details Reverses the bit order of the given value. - \param [in] value Value to reverse - \return Reversed value - */ -#define __RBIT __builtin_arm_rbit - -/** - \brief Count leading zeros - \details Counts the number of leading zeros of a data value. - \param [in] value Value to count the leading zeros - \return number of leading zeros in value - */ -#define __CLZ (uint8_t)__builtin_clz - - -#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) -/** - \brief LDR Exclusive (8 bit) - \details Executes a exclusive LDR instruction for 8 bit value. - \param [in] ptr Pointer to data - \return value of type uint8_t at (*ptr) - */ -#define __LDREXB (uint8_t)__builtin_arm_ldrex - - -/** - \brief LDR Exclusive (16 bit) - \details Executes a exclusive LDR instruction for 16 bit values. - \param [in] ptr Pointer to data - \return value of type uint16_t at (*ptr) - */ -#define __LDREXH (uint16_t)__builtin_arm_ldrex - - -/** - \brief LDR Exclusive (32 bit) - \details Executes a exclusive LDR instruction for 32 bit values. - \param [in] ptr Pointer to data - \return value of type uint32_t at (*ptr) - */ -#define __LDREXW (uint32_t)__builtin_arm_ldrex - - -/** - \brief STR Exclusive (8 bit) - \details Executes a exclusive STR instruction for 8 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -#define __STREXB (uint32_t)__builtin_arm_strex - - -/** - \brief STR Exclusive (16 bit) - \details Executes a exclusive STR instruction for 16 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -#define __STREXH (uint32_t)__builtin_arm_strex - - -/** - \brief STR Exclusive (32 bit) - \details Executes a exclusive STR instruction for 32 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -#define __STREXW (uint32_t)__builtin_arm_strex - - -/** - \brief Remove the exclusive lock - \details Removes the exclusive lock which is created by LDREX. - */ -#define __CLREX __builtin_arm_clrex - -#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ - - -#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) - -/** - \brief Signed Saturate - \details Saturates a signed value. - \param [in] value Value to be saturated - \param [in] sat Bit position to saturate to (1..32) - \return Saturated value - */ -#define __SSAT __builtin_arm_ssat - - -/** - \brief Unsigned Saturate - \details Saturates an unsigned value. - \param [in] value Value to be saturated - \param [in] sat Bit position to saturate to (0..31) - \return Saturated value - */ -#define __USAT __builtin_arm_usat - - -/** - \brief Rotate Right with Extend (32 bit) - \details Moves each bit of a bitstring right by one bit. - The carry input is shifted in at the left end of the bitstring. - \param [in] value Value to rotate - \return Rotated value - */ -__STATIC_FORCEINLINE uint32_t __RRX(uint32_t value) -{ - uint32_t result; - - __ASM volatile ("rrx %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); - return(result); -} - - -/** - \brief LDRT Unprivileged (8 bit) - \details Executes a Unprivileged LDRT instruction for 8 bit value. - \param [in] ptr Pointer to data - \return value of type uint8_t at (*ptr) - */ -__STATIC_FORCEINLINE uint8_t __LDRBT(volatile uint8_t *ptr) -{ - uint32_t result; - - __ASM volatile ("ldrbt %0, %1" : "=r" (result) : "Q" (*ptr) ); - return ((uint8_t) result); /* Add explicit type cast here */ -} - - -/** - \brief LDRT Unprivileged (16 bit) - \details Executes a Unprivileged LDRT instruction for 16 bit values. - \param [in] ptr Pointer to data - \return value of type uint16_t at (*ptr) - */ -__STATIC_FORCEINLINE uint16_t __LDRHT(volatile uint16_t *ptr) -{ - uint32_t result; - - __ASM volatile ("ldrht %0, %1" : "=r" (result) : "Q" (*ptr) ); - return ((uint16_t) result); /* Add explicit type cast here */ -} - - -/** - \brief LDRT Unprivileged (32 bit) - \details Executes a Unprivileged LDRT instruction for 32 bit values. - \param [in] ptr Pointer to data - \return value of type uint32_t at (*ptr) - */ -__STATIC_FORCEINLINE uint32_t __LDRT(volatile uint32_t *ptr) -{ - uint32_t result; - - __ASM volatile ("ldrt %0, %1" : "=r" (result) : "Q" (*ptr) ); - return(result); -} - - -/** - \brief STRT Unprivileged (8 bit) - \details Executes a Unprivileged STRT instruction for 8 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STRBT(uint8_t value, volatile uint8_t *ptr) -{ - __ASM volatile ("strbt %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); -} - - -/** - \brief STRT Unprivileged (16 bit) - \details Executes a Unprivileged STRT instruction for 16 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STRHT(uint16_t value, volatile uint16_t *ptr) -{ - __ASM volatile ("strht %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); -} - - -/** - \brief STRT Unprivileged (32 bit) - \details Executes a Unprivileged STRT instruction for 32 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STRT(uint32_t value, volatile uint32_t *ptr) -{ - __ASM volatile ("strt %1, %0" : "=Q" (*ptr) : "r" (value) ); -} - -#else /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ - -/** - \brief Signed Saturate - \details Saturates a signed value. - \param [in] value Value to be saturated - \param [in] sat Bit position to saturate to (1..32) - \return Saturated value - */ -__STATIC_FORCEINLINE int32_t __SSAT(int32_t val, uint32_t sat) -{ - if ((sat >= 1U) && (sat <= 32U)) - { - const int32_t max = (int32_t)((1U << (sat - 1U)) - 1U); - const int32_t min = -1 - max ; - if (val > max) - { - return max; - } - else if (val < min) - { - return min; - } - } - return val; -} - -/** - \brief Unsigned Saturate - \details Saturates an unsigned value. - \param [in] value Value to be saturated - \param [in] sat Bit position to saturate to (0..31) - \return Saturated value - */ -__STATIC_FORCEINLINE uint32_t __USAT(int32_t val, uint32_t sat) -{ - if (sat <= 31U) - { - const uint32_t max = ((1U << sat) - 1U); - if (val > (int32_t)max) - { - return max; - } - else if (val < 0) - { - return 0U; - } - } - return (uint32_t)val; -} - -#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ - - -#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) -/** - \brief Load-Acquire (8 bit) - \details Executes a LDAB instruction for 8 bit value. - \param [in] ptr Pointer to data - \return value of type uint8_t at (*ptr) - */ -__STATIC_FORCEINLINE uint8_t __LDAB(volatile uint8_t *ptr) -{ - uint32_t result; - - __ASM volatile ("ldab %0, %1" : "=r" (result) : "Q" (*ptr) ); - return ((uint8_t) result); -} - - -/** - \brief Load-Acquire (16 bit) - \details Executes a LDAH instruction for 16 bit values. - \param [in] ptr Pointer to data - \return value of type uint16_t at (*ptr) - */ -__STATIC_FORCEINLINE uint16_t __LDAH(volatile uint16_t *ptr) -{ - uint32_t result; - - __ASM volatile ("ldah %0, %1" : "=r" (result) : "Q" (*ptr) ); - return ((uint16_t) result); -} - - -/** - \brief Load-Acquire (32 bit) - \details Executes a LDA instruction for 32 bit values. - \param [in] ptr Pointer to data - \return value of type uint32_t at (*ptr) - */ -__STATIC_FORCEINLINE uint32_t __LDA(volatile uint32_t *ptr) -{ - uint32_t result; - - __ASM volatile ("lda %0, %1" : "=r" (result) : "Q" (*ptr) ); - return(result); -} - - -/** - \brief Store-Release (8 bit) - \details Executes a STLB instruction for 8 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STLB(uint8_t value, volatile uint8_t *ptr) -{ - __ASM volatile ("stlb %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); -} - - -/** - \brief Store-Release (16 bit) - \details Executes a STLH instruction for 16 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STLH(uint16_t value, volatile uint16_t *ptr) -{ - __ASM volatile ("stlh %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); -} - - -/** - \brief Store-Release (32 bit) - \details Executes a STL instruction for 32 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STL(uint32_t value, volatile uint32_t *ptr) -{ - __ASM volatile ("stl %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); -} - - -/** - \brief Load-Acquire Exclusive (8 bit) - \details Executes a LDAB exclusive instruction for 8 bit value. - \param [in] ptr Pointer to data - \return value of type uint8_t at (*ptr) - */ -#define __LDAEXB (uint8_t)__builtin_arm_ldaex - - -/** - \brief Load-Acquire Exclusive (16 bit) - \details Executes a LDAH exclusive instruction for 16 bit values. - \param [in] ptr Pointer to data - \return value of type uint16_t at (*ptr) - */ -#define __LDAEXH (uint16_t)__builtin_arm_ldaex - - -/** - \brief Load-Acquire Exclusive (32 bit) - \details Executes a LDA exclusive instruction for 32 bit values. - \param [in] ptr Pointer to data - \return value of type uint32_t at (*ptr) - */ -#define __LDAEX (uint32_t)__builtin_arm_ldaex - - -/** - \brief Store-Release Exclusive (8 bit) - \details Executes a STLB exclusive instruction for 8 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -#define __STLEXB (uint32_t)__builtin_arm_stlex - - -/** - \brief Store-Release Exclusive (16 bit) - \details Executes a STLH exclusive instruction for 16 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -#define __STLEXH (uint32_t)__builtin_arm_stlex - - -/** - \brief Store-Release Exclusive (32 bit) - \details Executes a STL exclusive instruction for 32 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -#define __STLEX (uint32_t)__builtin_arm_stlex - -#endif /* ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ - -/*@}*/ /* end of group CMSIS_Core_InstructionInterface */ - - -/* ################### Compiler specific Intrinsics ########################### */ -/** \defgroup CMSIS_SIMD_intrinsics CMSIS SIMD Intrinsics - Access to dedicated SIMD instructions - @{ -*/ - -#if (defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1)) - -__STATIC_FORCEINLINE uint32_t __SADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("sadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - - -__STATIC_FORCEINLINE uint32_t __SSUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("ssub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QSUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHSUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __USUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("usub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQSUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHSUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - - -__STATIC_FORCEINLINE uint32_t __SADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("sadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SSUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("ssub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QSUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHSUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __USUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("usub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQSUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHSUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("sasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SSAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("ssax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QSAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHSAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __USAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("usax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQSAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHSAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __USAD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("usad8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __USADA8(uint32_t op1, uint32_t op2, uint32_t op3) -{ - uint32_t result; - - __ASM volatile ("usada8 %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -#define __SSAT16(ARG1,ARG2) \ -({ \ - int32_t __RES, __ARG1 = (ARG1); \ - __ASM ("ssat16 %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ - __RES; \ - }) - -#define __USAT16(ARG1,ARG2) \ -({ \ - uint32_t __RES, __ARG1 = (ARG1); \ - __ASM ("usat16 %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ - __RES; \ - }) - -__STATIC_FORCEINLINE uint32_t __UXTB16(uint32_t op1) -{ - uint32_t result; - - __ASM volatile ("uxtb16 %0, %1" : "=r" (result) : "r" (op1)); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UXTAB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uxtab16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SXTB16(uint32_t op1) -{ - uint32_t result; - - __ASM volatile ("sxtb16 %0, %1" : "=r" (result) : "r" (op1)); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SXTAB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("sxtab16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMUAD (uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("smuad %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMUADX (uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("smuadx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMLAD (uint32_t op1, uint32_t op2, uint32_t op3) -{ - uint32_t result; - - __ASM volatile ("smlad %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMLADX (uint32_t op1, uint32_t op2, uint32_t op3) -{ - uint32_t result; - - __ASM volatile ("smladx %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -__STATIC_FORCEINLINE uint64_t __SMLALD (uint32_t op1, uint32_t op2, uint64_t acc) -{ - union llreg_u{ - uint32_t w32[2]; - uint64_t w64; - } llr; - llr.w64 = acc; - -#ifndef __ARMEB__ /* Little endian */ - __ASM volatile ("smlald %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); -#else /* Big endian */ - __ASM volatile ("smlald %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); -#endif - - return(llr.w64); -} - -__STATIC_FORCEINLINE uint64_t __SMLALDX (uint32_t op1, uint32_t op2, uint64_t acc) -{ - union llreg_u{ - uint32_t w32[2]; - uint64_t w64; - } llr; - llr.w64 = acc; - -#ifndef __ARMEB__ /* Little endian */ - __ASM volatile ("smlaldx %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); -#else /* Big endian */ - __ASM volatile ("smlaldx %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); -#endif - - return(llr.w64); -} - -__STATIC_FORCEINLINE uint32_t __SMUSD (uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("smusd %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMUSDX (uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("smusdx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMLSD (uint32_t op1, uint32_t op2, uint32_t op3) -{ - uint32_t result; - - __ASM volatile ("smlsd %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMLSDX (uint32_t op1, uint32_t op2, uint32_t op3) -{ - uint32_t result; - - __ASM volatile ("smlsdx %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -__STATIC_FORCEINLINE uint64_t __SMLSLD (uint32_t op1, uint32_t op2, uint64_t acc) -{ - union llreg_u{ - uint32_t w32[2]; - uint64_t w64; - } llr; - llr.w64 = acc; - -#ifndef __ARMEB__ /* Little endian */ - __ASM volatile ("smlsld %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); -#else /* Big endian */ - __ASM volatile ("smlsld %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); -#endif - - return(llr.w64); -} - -__STATIC_FORCEINLINE uint64_t __SMLSLDX (uint32_t op1, uint32_t op2, uint64_t acc) -{ - union llreg_u{ - uint32_t w32[2]; - uint64_t w64; - } llr; - llr.w64 = acc; - -#ifndef __ARMEB__ /* Little endian */ - __ASM volatile ("smlsldx %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); -#else /* Big endian */ - __ASM volatile ("smlsldx %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); -#endif - - return(llr.w64); -} - -__STATIC_FORCEINLINE uint32_t __SEL (uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("sel %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE int32_t __QADD( int32_t op1, int32_t op2) -{ - int32_t result; - - __ASM volatile ("qadd %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE int32_t __QSUB( int32_t op1, int32_t op2) -{ - int32_t result; - - __ASM volatile ("qsub %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -#if 0 -#define __PKHBT(ARG1,ARG2,ARG3) \ -({ \ - uint32_t __RES, __ARG1 = (ARG1), __ARG2 = (ARG2); \ - __ASM ("pkhbt %0, %1, %2, lsl %3" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2), "I" (ARG3) ); \ - __RES; \ - }) - -#define __PKHTB(ARG1,ARG2,ARG3) \ -({ \ - uint32_t __RES, __ARG1 = (ARG1), __ARG2 = (ARG2); \ - if (ARG3 == 0) \ - __ASM ("pkhtb %0, %1, %2" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2) ); \ - else \ - __ASM ("pkhtb %0, %1, %2, asr %3" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2), "I" (ARG3) ); \ - __RES; \ - }) -#endif - -#define __PKHBT(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0x0000FFFFUL) | \ - ((((uint32_t)(ARG2)) << (ARG3)) & 0xFFFF0000UL) ) - -#define __PKHTB(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0xFFFF0000UL) | \ - ((((uint32_t)(ARG2)) >> (ARG3)) & 0x0000FFFFUL) ) - -__STATIC_FORCEINLINE int32_t __SMMLA (int32_t op1, int32_t op2, int32_t op3) -{ - int32_t result; - - __ASM volatile ("smmla %0, %1, %2, %3" : "=r" (result): "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -#endif /* (__ARM_FEATURE_DSP == 1) */ -/*@} end of group CMSIS_SIMD_intrinsics */ - - -#endif /* __CMSIS_ARMCLANG_H */ +/**************************************************************************//** + * @file cmsis_armclang.h + * @brief CMSIS compiler armclang (Arm Compiler 6) header file + * @version V5.0.4 + * @date 10. January 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/*lint -esym(9058, IRQn)*/ /* disable MISRA 2012 Rule 2.4 for IRQn */ + +#ifndef __CMSIS_ARMCLANG_H +#define __CMSIS_ARMCLANG_H + +#pragma clang system_header /* treat file as system include file */ + +#ifndef __ARM_COMPAT_H +#include /* Compatibility header for Arm Compiler 5 intrinsics */ +#endif + +/* CMSIS compiler specific defines */ +#ifndef __ASM + #define __ASM __asm +#endif +#ifndef __INLINE + #define __INLINE __inline +#endif +#ifndef __STATIC_INLINE + #define __STATIC_INLINE static __inline +#endif +#ifndef __STATIC_FORCEINLINE + #define __STATIC_FORCEINLINE __attribute__((always_inline)) static __inline +#endif +#ifndef __NO_RETURN + #define __NO_RETURN __attribute__((__noreturn__)) +#endif +#ifndef __USED + #define __USED __attribute__((used)) +#endif +#ifndef __WEAK + #define __WEAK __attribute__((weak)) +#endif +#ifndef __PACKED + #define __PACKED __attribute__((packed, aligned(1))) +#endif +#ifndef __PACKED_STRUCT + #define __PACKED_STRUCT struct __attribute__((packed, aligned(1))) +#endif +#ifndef __PACKED_UNION + #define __PACKED_UNION union __attribute__((packed, aligned(1))) +#endif +#ifndef __UNALIGNED_UINT32 /* deprecated */ + #pragma clang diagnostic push + #pragma clang diagnostic ignored "-Wpacked" +/*lint -esym(9058, T_UINT32)*/ /* disable MISRA 2012 Rule 2.4 for T_UINT32 */ + struct __attribute__((packed)) T_UINT32 { uint32_t v; }; + #pragma clang diagnostic pop + #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) +#endif +#ifndef __UNALIGNED_UINT16_WRITE + #pragma clang diagnostic push + #pragma clang diagnostic ignored "-Wpacked" +/*lint -esym(9058, T_UINT16_WRITE)*/ /* disable MISRA 2012 Rule 2.4 for T_UINT16_WRITE */ + __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; }; + #pragma clang diagnostic pop + #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val)) +#endif +#ifndef __UNALIGNED_UINT16_READ + #pragma clang diagnostic push + #pragma clang diagnostic ignored "-Wpacked" +/*lint -esym(9058, T_UINT16_READ)*/ /* disable MISRA 2012 Rule 2.4 for T_UINT16_READ */ + __PACKED_STRUCT T_UINT16_READ { uint16_t v; }; + #pragma clang diagnostic pop + #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v) +#endif +#ifndef __UNALIGNED_UINT32_WRITE + #pragma clang diagnostic push + #pragma clang diagnostic ignored "-Wpacked" +/*lint -esym(9058, T_UINT32_WRITE)*/ /* disable MISRA 2012 Rule 2.4 for T_UINT32_WRITE */ + __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; }; + #pragma clang diagnostic pop + #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val)) +#endif +#ifndef __UNALIGNED_UINT32_READ + #pragma clang diagnostic push + #pragma clang diagnostic ignored "-Wpacked" +/*lint -esym(9058, T_UINT32_READ)*/ /* disable MISRA 2012 Rule 2.4 for T_UINT32_READ */ + __PACKED_STRUCT T_UINT32_READ { uint32_t v; }; + #pragma clang diagnostic pop + #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v) +#endif +#ifndef __ALIGNED + #define __ALIGNED(x) __attribute__((aligned(x))) +#endif +#ifndef __RESTRICT + #define __RESTRICT __restrict +#endif + + +/* ########################### Core Function Access ########################### */ +/** \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions + @{ + */ + +/** + \brief Enable IRQ Interrupts + \details Enables IRQ interrupts by clearing the I-bit in the CPSR. + Can only be executed in Privileged modes. + */ +/* intrinsic void __enable_irq(); see arm_compat.h */ + + +/** + \brief Disable IRQ Interrupts + \details Disables IRQ interrupts by setting the I-bit in the CPSR. + Can only be executed in Privileged modes. + */ +/* intrinsic void __disable_irq(); see arm_compat.h */ + + +/** + \brief Get Control Register + \details Returns the content of the Control Register. + \return Control Register value + */ +__STATIC_FORCEINLINE uint32_t __get_CONTROL(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, control" : "=r" (result) ); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Control Register (non-secure) + \details Returns the content of the non-secure Control Register when in secure mode. + \return non-secure Control Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_CONTROL_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, control_ns" : "=r" (result) ); + return(result); +} +#endif + + +/** + \brief Set Control Register + \details Writes the given value to the Control Register. + \param [in] control Control Register value to set + */ +__STATIC_FORCEINLINE void __set_CONTROL(uint32_t control) +{ + __ASM volatile ("MSR control, %0" : : "r" (control) : "memory"); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Control Register (non-secure) + \details Writes the given value to the non-secure Control Register when in secure state. + \param [in] control Control Register value to set + */ +__STATIC_FORCEINLINE void __TZ_set_CONTROL_NS(uint32_t control) +{ + __ASM volatile ("MSR control_ns, %0" : : "r" (control) : "memory"); +} +#endif + + +/** + \brief Get IPSR Register + \details Returns the content of the IPSR Register. + \return IPSR Register value + */ +__STATIC_FORCEINLINE uint32_t __get_IPSR(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, ipsr" : "=r" (result) ); + return(result); +} + + +/** + \brief Get APSR Register + \details Returns the content of the APSR Register. + \return APSR Register value + */ +__STATIC_FORCEINLINE uint32_t __get_APSR(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, apsr" : "=r" (result) ); + return(result); +} + + +/** + \brief Get xPSR Register + \details Returns the content of the xPSR Register. + \return xPSR Register value + */ +__STATIC_FORCEINLINE uint32_t __get_xPSR(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, xpsr" : "=r" (result) ); + return(result); +} + + +/** + \brief Get Process Stack Pointer + \details Returns the current value of the Process Stack Pointer (PSP). + \return PSP Register value + */ +__STATIC_FORCEINLINE uint32_t __get_PSP(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, psp" : "=r" (result) ); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Process Stack Pointer (non-secure) + \details Returns the current value of the non-secure Process Stack Pointer (PSP) when in secure state. + \return PSP Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_PSP_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, psp_ns" : "=r" (result) ); + return(result); +} +#endif + + +/** + \brief Set Process Stack Pointer + \details Assigns the given value to the Process Stack Pointer (PSP). + \param [in] topOfProcStack Process Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __set_PSP(uint32_t topOfProcStack) +{ + __ASM volatile ("MSR psp, %0" : : "r" (topOfProcStack) : ); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Process Stack Pointer (non-secure) + \details Assigns the given value to the non-secure Process Stack Pointer (PSP) when in secure state. + \param [in] topOfProcStack Process Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __TZ_set_PSP_NS(uint32_t topOfProcStack) +{ + __ASM volatile ("MSR psp_ns, %0" : : "r" (topOfProcStack) : ); +} +#endif + + +/** + \brief Get Main Stack Pointer + \details Returns the current value of the Main Stack Pointer (MSP). + \return MSP Register value + */ +__STATIC_FORCEINLINE uint32_t __get_MSP(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, msp" : "=r" (result) ); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Main Stack Pointer (non-secure) + \details Returns the current value of the non-secure Main Stack Pointer (MSP) when in secure state. + \return MSP Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_MSP_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, msp_ns" : "=r" (result) ); + return(result); +} +#endif + + +/** + \brief Set Main Stack Pointer + \details Assigns the given value to the Main Stack Pointer (MSP). + \param [in] topOfMainStack Main Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __set_MSP(uint32_t topOfMainStack) +{ + __ASM volatile ("MSR msp, %0" : : "r" (topOfMainStack) : ); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Main Stack Pointer (non-secure) + \details Assigns the given value to the non-secure Main Stack Pointer (MSP) when in secure state. + \param [in] topOfMainStack Main Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __TZ_set_MSP_NS(uint32_t topOfMainStack) +{ + __ASM volatile ("MSR msp_ns, %0" : : "r" (topOfMainStack) : ); +} +#endif + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Stack Pointer (non-secure) + \details Returns the current value of the non-secure Stack Pointer (SP) when in secure state. + \return SP Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_SP_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, sp_ns" : "=r" (result) ); + return(result); +} + + +/** + \brief Set Stack Pointer (non-secure) + \details Assigns the given value to the non-secure Stack Pointer (SP) when in secure state. + \param [in] topOfStack Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __TZ_set_SP_NS(uint32_t topOfStack) +{ + __ASM volatile ("MSR sp_ns, %0" : : "r" (topOfStack) : ); +} +#endif + + +/** + \brief Get Priority Mask + \details Returns the current state of the priority mask bit from the Priority Mask Register. + \return Priority Mask value + */ +__STATIC_FORCEINLINE uint32_t __get_PRIMASK(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, primask" : "=r" (result) ); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Priority Mask (non-secure) + \details Returns the current state of the non-secure priority mask bit from the Priority Mask Register when in secure state. + \return Priority Mask value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_PRIMASK_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, primask_ns" : "=r" (result) ); + return(result); +} +#endif + + +/** + \brief Set Priority Mask + \details Assigns the given value to the Priority Mask Register. + \param [in] priMask Priority Mask + */ +__STATIC_FORCEINLINE void __set_PRIMASK(uint32_t priMask) +{ + __ASM volatile ("MSR primask, %0" : : "r" (priMask) : "memory"); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Priority Mask (non-secure) + \details Assigns the given value to the non-secure Priority Mask Register when in secure state. + \param [in] priMask Priority Mask + */ +__STATIC_FORCEINLINE void __TZ_set_PRIMASK_NS(uint32_t priMask) +{ + __ASM volatile ("MSR primask_ns, %0" : : "r" (priMask) : "memory"); +} +#endif + + +#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) +/** + \brief Enable FIQ + \details Enables FIQ interrupts by clearing the F-bit in the CPSR. + Can only be executed in Privileged modes. + */ +#define __enable_fault_irq __enable_fiq /* see arm_compat.h */ + + +/** + \brief Disable FIQ + \details Disables FIQ interrupts by setting the F-bit in the CPSR. + Can only be executed in Privileged modes. + */ +#define __disable_fault_irq __disable_fiq /* see arm_compat.h */ + + +/** + \brief Get Base Priority + \details Returns the current value of the Base Priority register. + \return Base Priority register value + */ +__STATIC_FORCEINLINE uint32_t __get_BASEPRI(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, basepri" : "=r" (result) ); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Base Priority (non-secure) + \details Returns the current value of the non-secure Base Priority register when in secure state. + \return Base Priority register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_BASEPRI_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, basepri_ns" : "=r" (result) ); + return(result); +} +#endif + + +/** + \brief Set Base Priority + \details Assigns the given value to the Base Priority register. + \param [in] basePri Base Priority value to set + */ +__STATIC_FORCEINLINE void __set_BASEPRI(uint32_t basePri) +{ + __ASM volatile ("MSR basepri, %0" : : "r" (basePri) : "memory"); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Base Priority (non-secure) + \details Assigns the given value to the non-secure Base Priority register when in secure state. + \param [in] basePri Base Priority value to set + */ +__STATIC_FORCEINLINE void __TZ_set_BASEPRI_NS(uint32_t basePri) +{ + __ASM volatile ("MSR basepri_ns, %0" : : "r" (basePri) : "memory"); +} +#endif + + +/** + \brief Set Base Priority with condition + \details Assigns the given value to the Base Priority register only if BASEPRI masking is disabled, + or the new value increases the BASEPRI priority level. + \param [in] basePri Base Priority value to set + */ +__STATIC_FORCEINLINE void __set_BASEPRI_MAX(uint32_t basePri) +{ + __ASM volatile ("MSR basepri_max, %0" : : "r" (basePri) : "memory"); +} + + +/** + \brief Get Fault Mask + \details Returns the current value of the Fault Mask register. + \return Fault Mask register value + */ +__STATIC_FORCEINLINE uint32_t __get_FAULTMASK(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, faultmask" : "=r" (result) ); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Fault Mask (non-secure) + \details Returns the current value of the non-secure Fault Mask register when in secure state. + \return Fault Mask register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_FAULTMASK_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, faultmask_ns" : "=r" (result) ); + return(result); +} +#endif + + +/** + \brief Set Fault Mask + \details Assigns the given value to the Fault Mask register. + \param [in] faultMask Fault Mask value to set + */ +__STATIC_FORCEINLINE void __set_FAULTMASK(uint32_t faultMask) +{ + __ASM volatile ("MSR faultmask, %0" : : "r" (faultMask) : "memory"); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Fault Mask (non-secure) + \details Assigns the given value to the non-secure Fault Mask register when in secure state. + \param [in] faultMask Fault Mask value to set + */ +__STATIC_FORCEINLINE void __TZ_set_FAULTMASK_NS(uint32_t faultMask) +{ + __ASM volatile ("MSR faultmask_ns, %0" : : "r" (faultMask) : "memory"); +} +#endif + +#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ + + +#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) + +/** + \brief Get Process Stack Pointer Limit + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence zero is returned always in non-secure + mode. + + \details Returns the current value of the Process Stack Pointer Limit (PSPLIM). + \return PSPLIM Register value + */ +__STATIC_FORCEINLINE uint32_t __get_PSPLIM(void) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + return 0U; +#else + uint32_t result; + __ASM volatile ("MRS %0, psplim" : "=r" (result) ); + return result; +#endif +} + +#if (defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Process Stack Pointer Limit (non-secure) + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence zero is returned always in non-secure + mode. + + \details Returns the current value of the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. + \return PSPLIM Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_PSPLIM_NS(void) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + return 0U; +#else + uint32_t result; + __ASM volatile ("MRS %0, psplim_ns" : "=r" (result) ); + return result; +#endif +} +#endif + + +/** + \brief Set Process Stack Pointer Limit + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence the write is silently ignored in non-secure + mode. + + \details Assigns the given value to the Process Stack Pointer Limit (PSPLIM). + \param [in] ProcStackPtrLimit Process Stack Pointer Limit value to set + */ +__STATIC_FORCEINLINE void __set_PSPLIM(uint32_t ProcStackPtrLimit) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + (void)ProcStackPtrLimit; +#else + __ASM volatile ("MSR psplim, %0" : : "r" (ProcStackPtrLimit)); +#endif +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Process Stack Pointer (non-secure) + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence the write is silently ignored in non-secure + mode. + + \details Assigns the given value to the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. + \param [in] ProcStackPtrLimit Process Stack Pointer Limit value to set + */ +__STATIC_FORCEINLINE void __TZ_set_PSPLIM_NS(uint32_t ProcStackPtrLimit) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + (void)ProcStackPtrLimit; +#else + __ASM volatile ("MSR psplim_ns, %0\n" : : "r" (ProcStackPtrLimit)); +#endif +} +#endif + + +/** + \brief Get Main Stack Pointer Limit + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence zero is returned always. + + \details Returns the current value of the Main Stack Pointer Limit (MSPLIM). + \return MSPLIM Register value + */ +__STATIC_FORCEINLINE uint32_t __get_MSPLIM(void) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + return 0U; +#else + uint32_t result; + __ASM volatile ("MRS %0, msplim" : "=r" (result) ); + return result; +#endif +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Main Stack Pointer Limit (non-secure) + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence zero is returned always. + + \details Returns the current value of the non-secure Main Stack Pointer Limit(MSPLIM) when in secure state. + \return MSPLIM Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_MSPLIM_NS(void) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + return 0U; +#else + uint32_t result; + __ASM volatile ("MRS %0, msplim_ns" : "=r" (result) ); + return result; +#endif +} +#endif + + +/** + \brief Set Main Stack Pointer Limit + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence the write is silently ignored. + + \details Assigns the given value to the Main Stack Pointer Limit (MSPLIM). + \param [in] MainStackPtrLimit Main Stack Pointer Limit value to set + */ +__STATIC_FORCEINLINE void __set_MSPLIM(uint32_t MainStackPtrLimit) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + (void)MainStackPtrLimit; +#else + __ASM volatile ("MSR msplim, %0" : : "r" (MainStackPtrLimit)); +#endif +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Main Stack Pointer Limit (non-secure) + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence the write is silently ignored. + + \details Assigns the given value to the non-secure Main Stack Pointer Limit (MSPLIM) when in secure state. + \param [in] MainStackPtrLimit Main Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __TZ_set_MSPLIM_NS(uint32_t MainStackPtrLimit) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + (void)MainStackPtrLimit; +#else + __ASM volatile ("MSR msplim_ns, %0" : : "r" (MainStackPtrLimit)); +#endif +} +#endif + +#endif /* ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ + +/** + \brief Get FPSCR + \details Returns the current value of the Floating Point Status/Control register. + \return Floating Point Status/Control register value + */ +#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ + (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) +#define __get_FPSCR (uint32_t)__builtin_arm_get_fpscr +#else +#define __get_FPSCR() ((uint32_t)0U) +#endif + +/** + \brief Set FPSCR + \details Assigns the given value to the Floating Point Status/Control register. + \param [in] fpscr Floating Point Status/Control value to set + */ +#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ + (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) +#define __set_FPSCR __builtin_arm_set_fpscr +#else +#define __set_FPSCR(x) ((void)(x)) +#endif + + +/*@} end of CMSIS_Core_RegAccFunctions */ + + +/* ########################## Core Instruction Access ######################### */ +/** \defgroup CMSIS_Core_InstructionInterface CMSIS Core Instruction Interface + Access to dedicated instructions + @{ +*/ + +/* Define macros for porting to both thumb1 and thumb2. + * For thumb1, use low register (r0-r7), specified by constraint "l" + * Otherwise, use general registers, specified by constraint "r" */ +#if defined (__thumb__) && !defined (__thumb2__) +#define __CMSIS_GCC_OUT_REG(r) "=l" (r) +#define __CMSIS_GCC_USE_REG(r) "l" (r) +#else +#define __CMSIS_GCC_OUT_REG(r) "=r" (r) +#define __CMSIS_GCC_USE_REG(r) "r" (r) +#endif + +/** + \brief No Operation + \details No Operation does nothing. This instruction can be used for code alignment purposes. + */ +#define __NOP __builtin_arm_nop + +/** + \brief Wait For Interrupt + \details Wait For Interrupt is a hint instruction that suspends execution until one of a number of events occurs. + */ +#define __WFI __builtin_arm_wfi + + +/** + \brief Wait For Event + \details Wait For Event is a hint instruction that permits the processor to enter + a low-power state until one of a number of events occurs. + */ +#define __WFE __builtin_arm_wfe + + +/** + \brief Send Event + \details Send Event is a hint instruction. It causes an event to be signaled to the CPU. + */ +#define __SEV __builtin_arm_sev + + +/** + \brief Instruction Synchronization Barrier + \details Instruction Synchronization Barrier flushes the pipeline in the processor, + so that all instructions following the ISB are fetched from cache or memory, + after the instruction has been completed. + */ +#define __ISB() __builtin_arm_isb(0xF); + +/** + \brief Data Synchronization Barrier + \details Acts as a special kind of Data Memory Barrier. + It completes when all explicit memory accesses before this instruction complete. + */ +#define __DSB() __builtin_arm_dsb(0xF); + + +/** + \brief Data Memory Barrier + \details Ensures the apparent order of the explicit memory operations before + and after the instruction, without ensuring their completion. + */ +#define __DMB() __builtin_arm_dmb(0xF); + + +/** + \brief Reverse byte order (32 bit) + \details Reverses the byte order in unsigned integer value. For example, 0x12345678 becomes 0x78563412. + \param [in] value Value to reverse + \return Reversed value + */ +#define __REV(value) __builtin_bswap32(value) + + +/** + \brief Reverse byte order (16 bit) + \details Reverses the byte order within each halfword of a word. For example, 0x12345678 becomes 0x34127856. + \param [in] value Value to reverse + \return Reversed value + */ +#define __REV16(value) __ROR(__REV(value), 16) + + +/** + \brief Reverse byte order (16 bit) + \details Reverses the byte order in a 16-bit value and returns the signed 16-bit result. For example, 0x0080 becomes 0x8000. + \param [in] value Value to reverse + \return Reversed value + */ +#define __REVSH(value) (int16_t)__builtin_bswap16(value) + + +/** + \brief Rotate Right in unsigned value (32 bit) + \details Rotate Right (immediate) provides the value of the contents of a register rotated by a variable number of bits. + \param [in] op1 Value to rotate + \param [in] op2 Number of Bits to rotate + \return Rotated value + */ +__STATIC_FORCEINLINE uint32_t __ROR(uint32_t op1, uint32_t op2) +{ + op2 %= 32U; + if (op2 == 0U) + { + return op1; + } + return (op1 >> op2) | (op1 << (32U - op2)); +} + + +/** + \brief Breakpoint + \details Causes the processor to enter Debug state. + Debug tools can use this to investigate system state when the instruction at a particular address is reached. + \param [in] value is ignored by the processor. + If required, a debugger can use it to store additional information about the breakpoint. + */ +#define __BKPT(value) __ASM volatile ("bkpt "#value) + + +/** + \brief Reverse bit order of value + \details Reverses the bit order of the given value. + \param [in] value Value to reverse + \return Reversed value + */ +#define __RBIT __builtin_arm_rbit + +/** + \brief Count leading zeros + \details Counts the number of leading zeros of a data value. + \param [in] value Value to count the leading zeros + \return number of leading zeros in value + */ +#define __CLZ (uint8_t)__builtin_clz + + +#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) +/** + \brief LDR Exclusive (8 bit) + \details Executes a exclusive LDR instruction for 8 bit value. + \param [in] ptr Pointer to data + \return value of type uint8_t at (*ptr) + */ +#define __LDREXB (uint8_t)__builtin_arm_ldrex + + +/** + \brief LDR Exclusive (16 bit) + \details Executes a exclusive LDR instruction for 16 bit values. + \param [in] ptr Pointer to data + \return value of type uint16_t at (*ptr) + */ +#define __LDREXH (uint16_t)__builtin_arm_ldrex + + +/** + \brief LDR Exclusive (32 bit) + \details Executes a exclusive LDR instruction for 32 bit values. + \param [in] ptr Pointer to data + \return value of type uint32_t at (*ptr) + */ +#define __LDREXW (uint32_t)__builtin_arm_ldrex + + +/** + \brief STR Exclusive (8 bit) + \details Executes a exclusive STR instruction for 8 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +#define __STREXB (uint32_t)__builtin_arm_strex + + +/** + \brief STR Exclusive (16 bit) + \details Executes a exclusive STR instruction for 16 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +#define __STREXH (uint32_t)__builtin_arm_strex + + +/** + \brief STR Exclusive (32 bit) + \details Executes a exclusive STR instruction for 32 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +#define __STREXW (uint32_t)__builtin_arm_strex + + +/** + \brief Remove the exclusive lock + \details Removes the exclusive lock which is created by LDREX. + */ +#define __CLREX __builtin_arm_clrex + +#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ + + +#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) + +/** + \brief Signed Saturate + \details Saturates a signed value. + \param [in] value Value to be saturated + \param [in] sat Bit position to saturate to (1..32) + \return Saturated value + */ +#define __SSAT __builtin_arm_ssat + + +/** + \brief Unsigned Saturate + \details Saturates an unsigned value. + \param [in] value Value to be saturated + \param [in] sat Bit position to saturate to (0..31) + \return Saturated value + */ +#define __USAT __builtin_arm_usat + + +/** + \brief Rotate Right with Extend (32 bit) + \details Moves each bit of a bitstring right by one bit. + The carry input is shifted in at the left end of the bitstring. + \param [in] value Value to rotate + \return Rotated value + */ +__STATIC_FORCEINLINE uint32_t __RRX(uint32_t value) +{ + uint32_t result; + + __ASM volatile ("rrx %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); + return(result); +} + + +/** + \brief LDRT Unprivileged (8 bit) + \details Executes a Unprivileged LDRT instruction for 8 bit value. + \param [in] ptr Pointer to data + \return value of type uint8_t at (*ptr) + */ +__STATIC_FORCEINLINE uint8_t __LDRBT(volatile uint8_t *ptr) +{ + uint32_t result; + + __ASM volatile ("ldrbt %0, %1" : "=r" (result) : "Q" (*ptr) ); + return ((uint8_t) result); /* Add explicit type cast here */ +} + + +/** + \brief LDRT Unprivileged (16 bit) + \details Executes a Unprivileged LDRT instruction for 16 bit values. + \param [in] ptr Pointer to data + \return value of type uint16_t at (*ptr) + */ +__STATIC_FORCEINLINE uint16_t __LDRHT(volatile uint16_t *ptr) +{ + uint32_t result; + + __ASM volatile ("ldrht %0, %1" : "=r" (result) : "Q" (*ptr) ); + return ((uint16_t) result); /* Add explicit type cast here */ +} + + +/** + \brief LDRT Unprivileged (32 bit) + \details Executes a Unprivileged LDRT instruction for 32 bit values. + \param [in] ptr Pointer to data + \return value of type uint32_t at (*ptr) + */ +__STATIC_FORCEINLINE uint32_t __LDRT(volatile uint32_t *ptr) +{ + uint32_t result; + + __ASM volatile ("ldrt %0, %1" : "=r" (result) : "Q" (*ptr) ); + return(result); +} + + +/** + \brief STRT Unprivileged (8 bit) + \details Executes a Unprivileged STRT instruction for 8 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STRBT(uint8_t value, volatile uint8_t *ptr) +{ + __ASM volatile ("strbt %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); +} + + +/** + \brief STRT Unprivileged (16 bit) + \details Executes a Unprivileged STRT instruction for 16 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STRHT(uint16_t value, volatile uint16_t *ptr) +{ + __ASM volatile ("strht %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); +} + + +/** + \brief STRT Unprivileged (32 bit) + \details Executes a Unprivileged STRT instruction for 32 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STRT(uint32_t value, volatile uint32_t *ptr) +{ + __ASM volatile ("strt %1, %0" : "=Q" (*ptr) : "r" (value) ); +} + +#else /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ + +/** + \brief Signed Saturate + \details Saturates a signed value. + \param [in] value Value to be saturated + \param [in] sat Bit position to saturate to (1..32) + \return Saturated value + */ +__STATIC_FORCEINLINE int32_t __SSAT(int32_t val, uint32_t sat) +{ + if ((sat >= 1U) && (sat <= 32U)) + { + const int32_t max = (int32_t)((1U << (sat - 1U)) - 1U); + const int32_t min = -1 - max ; + if (val > max) + { + return max; + } + else if (val < min) + { + return min; + } + } + return val; +} + +/** + \brief Unsigned Saturate + \details Saturates an unsigned value. + \param [in] value Value to be saturated + \param [in] sat Bit position to saturate to (0..31) + \return Saturated value + */ +__STATIC_FORCEINLINE uint32_t __USAT(int32_t val, uint32_t sat) +{ + if (sat <= 31U) + { + const uint32_t max = ((1U << sat) - 1U); + if (val > (int32_t)max) + { + return max; + } + else if (val < 0) + { + return 0U; + } + } + return (uint32_t)val; +} + +#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ + + +#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) +/** + \brief Load-Acquire (8 bit) + \details Executes a LDAB instruction for 8 bit value. + \param [in] ptr Pointer to data + \return value of type uint8_t at (*ptr) + */ +__STATIC_FORCEINLINE uint8_t __LDAB(volatile uint8_t *ptr) +{ + uint32_t result; + + __ASM volatile ("ldab %0, %1" : "=r" (result) : "Q" (*ptr) ); + return ((uint8_t) result); +} + + +/** + \brief Load-Acquire (16 bit) + \details Executes a LDAH instruction for 16 bit values. + \param [in] ptr Pointer to data + \return value of type uint16_t at (*ptr) + */ +__STATIC_FORCEINLINE uint16_t __LDAH(volatile uint16_t *ptr) +{ + uint32_t result; + + __ASM volatile ("ldah %0, %1" : "=r" (result) : "Q" (*ptr) ); + return ((uint16_t) result); +} + + +/** + \brief Load-Acquire (32 bit) + \details Executes a LDA instruction for 32 bit values. + \param [in] ptr Pointer to data + \return value of type uint32_t at (*ptr) + */ +__STATIC_FORCEINLINE uint32_t __LDA(volatile uint32_t *ptr) +{ + uint32_t result; + + __ASM volatile ("lda %0, %1" : "=r" (result) : "Q" (*ptr) ); + return(result); +} + + +/** + \brief Store-Release (8 bit) + \details Executes a STLB instruction for 8 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STLB(uint8_t value, volatile uint8_t *ptr) +{ + __ASM volatile ("stlb %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); +} + + +/** + \brief Store-Release (16 bit) + \details Executes a STLH instruction for 16 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STLH(uint16_t value, volatile uint16_t *ptr) +{ + __ASM volatile ("stlh %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); +} + + +/** + \brief Store-Release (32 bit) + \details Executes a STL instruction for 32 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STL(uint32_t value, volatile uint32_t *ptr) +{ + __ASM volatile ("stl %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); +} + + +/** + \brief Load-Acquire Exclusive (8 bit) + \details Executes a LDAB exclusive instruction for 8 bit value. + \param [in] ptr Pointer to data + \return value of type uint8_t at (*ptr) + */ +#define __LDAEXB (uint8_t)__builtin_arm_ldaex + + +/** + \brief Load-Acquire Exclusive (16 bit) + \details Executes a LDAH exclusive instruction for 16 bit values. + \param [in] ptr Pointer to data + \return value of type uint16_t at (*ptr) + */ +#define __LDAEXH (uint16_t)__builtin_arm_ldaex + + +/** + \brief Load-Acquire Exclusive (32 bit) + \details Executes a LDA exclusive instruction for 32 bit values. + \param [in] ptr Pointer to data + \return value of type uint32_t at (*ptr) + */ +#define __LDAEX (uint32_t)__builtin_arm_ldaex + + +/** + \brief Store-Release Exclusive (8 bit) + \details Executes a STLB exclusive instruction for 8 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +#define __STLEXB (uint32_t)__builtin_arm_stlex + + +/** + \brief Store-Release Exclusive (16 bit) + \details Executes a STLH exclusive instruction for 16 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +#define __STLEXH (uint32_t)__builtin_arm_stlex + + +/** + \brief Store-Release Exclusive (32 bit) + \details Executes a STL exclusive instruction for 32 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +#define __STLEX (uint32_t)__builtin_arm_stlex + +#endif /* ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ + +/*@}*/ /* end of group CMSIS_Core_InstructionInterface */ + + +/* ################### Compiler specific Intrinsics ########################### */ +/** \defgroup CMSIS_SIMD_intrinsics CMSIS SIMD Intrinsics + Access to dedicated SIMD instructions + @{ +*/ + +#if (defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1)) + +__STATIC_FORCEINLINE uint32_t __SADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("sadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + + +__STATIC_FORCEINLINE uint32_t __SSUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("ssub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QSUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHSUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __USUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("usub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQSUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHSUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + + +__STATIC_FORCEINLINE uint32_t __SADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("sadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SSUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("ssub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QSUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHSUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __USUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("usub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQSUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHSUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("sasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SSAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("ssax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QSAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHSAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __USAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("usax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQSAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHSAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __USAD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("usad8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __USADA8(uint32_t op1, uint32_t op2, uint32_t op3) +{ + uint32_t result; + + __ASM volatile ("usada8 %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +#define __SSAT16(ARG1,ARG2) \ +({ \ + int32_t __RES, __ARG1 = (ARG1); \ + __ASM ("ssat16 %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ + __RES; \ + }) + +#define __USAT16(ARG1,ARG2) \ +({ \ + uint32_t __RES, __ARG1 = (ARG1); \ + __ASM ("usat16 %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ + __RES; \ + }) + +__STATIC_FORCEINLINE uint32_t __UXTB16(uint32_t op1) +{ + uint32_t result; + + __ASM volatile ("uxtb16 %0, %1" : "=r" (result) : "r" (op1)); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UXTAB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uxtab16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SXTB16(uint32_t op1) +{ + uint32_t result; + + __ASM volatile ("sxtb16 %0, %1" : "=r" (result) : "r" (op1)); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SXTAB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("sxtab16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMUAD (uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("smuad %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMUADX (uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("smuadx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMLAD (uint32_t op1, uint32_t op2, uint32_t op3) +{ + uint32_t result; + + __ASM volatile ("smlad %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMLADX (uint32_t op1, uint32_t op2, uint32_t op3) +{ + uint32_t result; + + __ASM volatile ("smladx %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +__STATIC_FORCEINLINE uint64_t __SMLALD (uint32_t op1, uint32_t op2, uint64_t acc) +{ + union llreg_u{ + uint32_t w32[2]; + uint64_t w64; + } llr; + llr.w64 = acc; + +#ifndef __ARMEB__ /* Little endian */ + __ASM volatile ("smlald %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); +#else /* Big endian */ + __ASM volatile ("smlald %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); +#endif + + return(llr.w64); +} + +__STATIC_FORCEINLINE uint64_t __SMLALDX (uint32_t op1, uint32_t op2, uint64_t acc) +{ + union llreg_u{ + uint32_t w32[2]; + uint64_t w64; + } llr; + llr.w64 = acc; + +#ifndef __ARMEB__ /* Little endian */ + __ASM volatile ("smlaldx %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); +#else /* Big endian */ + __ASM volatile ("smlaldx %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); +#endif + + return(llr.w64); +} + +__STATIC_FORCEINLINE uint32_t __SMUSD (uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("smusd %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMUSDX (uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("smusdx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMLSD (uint32_t op1, uint32_t op2, uint32_t op3) +{ + uint32_t result; + + __ASM volatile ("smlsd %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMLSDX (uint32_t op1, uint32_t op2, uint32_t op3) +{ + uint32_t result; + + __ASM volatile ("smlsdx %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +__STATIC_FORCEINLINE uint64_t __SMLSLD (uint32_t op1, uint32_t op2, uint64_t acc) +{ + union llreg_u{ + uint32_t w32[2]; + uint64_t w64; + } llr; + llr.w64 = acc; + +#ifndef __ARMEB__ /* Little endian */ + __ASM volatile ("smlsld %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); +#else /* Big endian */ + __ASM volatile ("smlsld %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); +#endif + + return(llr.w64); +} + +__STATIC_FORCEINLINE uint64_t __SMLSLDX (uint32_t op1, uint32_t op2, uint64_t acc) +{ + union llreg_u{ + uint32_t w32[2]; + uint64_t w64; + } llr; + llr.w64 = acc; + +#ifndef __ARMEB__ /* Little endian */ + __ASM volatile ("smlsldx %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); +#else /* Big endian */ + __ASM volatile ("smlsldx %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); +#endif + + return(llr.w64); +} + +__STATIC_FORCEINLINE uint32_t __SEL (uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("sel %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE int32_t __QADD( int32_t op1, int32_t op2) +{ + int32_t result; + + __ASM volatile ("qadd %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE int32_t __QSUB( int32_t op1, int32_t op2) +{ + int32_t result; + + __ASM volatile ("qsub %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +#if 0 +#define __PKHBT(ARG1,ARG2,ARG3) \ +({ \ + uint32_t __RES, __ARG1 = (ARG1), __ARG2 = (ARG2); \ + __ASM ("pkhbt %0, %1, %2, lsl %3" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2), "I" (ARG3) ); \ + __RES; \ + }) + +#define __PKHTB(ARG1,ARG2,ARG3) \ +({ \ + uint32_t __RES, __ARG1 = (ARG1), __ARG2 = (ARG2); \ + if (ARG3 == 0) \ + __ASM ("pkhtb %0, %1, %2" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2) ); \ + else \ + __ASM ("pkhtb %0, %1, %2, asr %3" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2), "I" (ARG3) ); \ + __RES; \ + }) +#endif + +#define __PKHBT(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0x0000FFFFUL) | \ + ((((uint32_t)(ARG2)) << (ARG3)) & 0xFFFF0000UL) ) + +#define __PKHTB(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0xFFFF0000UL) | \ + ((((uint32_t)(ARG2)) >> (ARG3)) & 0x0000FFFFUL) ) + +__STATIC_FORCEINLINE int32_t __SMMLA (int32_t op1, int32_t op2, int32_t op3) +{ + int32_t result; + + __ASM volatile ("smmla %0, %1, %2, %3" : "=r" (result): "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +#endif /* (__ARM_FEATURE_DSP == 1) */ +/*@} end of group CMSIS_SIMD_intrinsics */ + + +#endif /* __CMSIS_ARMCLANG_H */ diff --git a/stm32f103/Drivers/CMSIS/Include/cmsis_compiler.h b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_compiler.h similarity index 97% rename from stm32f103/Drivers/CMSIS/Include/cmsis_compiler.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_compiler.h index 79a2cac..94212eb 100644 --- a/stm32f103/Drivers/CMSIS/Include/cmsis_compiler.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_compiler.h @@ -1,266 +1,266 @@ -/**************************************************************************//** - * @file cmsis_compiler.h - * @brief CMSIS compiler generic header file - * @version V5.0.4 - * @date 10. January 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef __CMSIS_COMPILER_H -#define __CMSIS_COMPILER_H - -#include - -/* - * Arm Compiler 4/5 - */ -#if defined ( __CC_ARM ) - #include "cmsis_armcc.h" - - -/* - * Arm Compiler 6 (armclang) - */ -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #include "cmsis_armclang.h" - - -/* - * GNU Compiler - */ -#elif defined ( __GNUC__ ) - #include "cmsis_gcc.h" - - -/* - * IAR Compiler - */ -#elif defined ( __ICCARM__ ) - #include - - -/* - * TI Arm Compiler - */ -#elif defined ( __TI_ARM__ ) - #include - - #ifndef __ASM - #define __ASM __asm - #endif - #ifndef __INLINE - #define __INLINE inline - #endif - #ifndef __STATIC_INLINE - #define __STATIC_INLINE static inline - #endif - #ifndef __STATIC_FORCEINLINE - #define __STATIC_FORCEINLINE __STATIC_INLINE - #endif - #ifndef __NO_RETURN - #define __NO_RETURN __attribute__((noreturn)) - #endif - #ifndef __USED - #define __USED __attribute__((used)) - #endif - #ifndef __WEAK - #define __WEAK __attribute__((weak)) - #endif - #ifndef __PACKED - #define __PACKED __attribute__((packed)) - #endif - #ifndef __PACKED_STRUCT - #define __PACKED_STRUCT struct __attribute__((packed)) - #endif - #ifndef __PACKED_UNION - #define __PACKED_UNION union __attribute__((packed)) - #endif - #ifndef __UNALIGNED_UINT32 /* deprecated */ - struct __attribute__((packed)) T_UINT32 { uint32_t v; }; - #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) - #endif - #ifndef __UNALIGNED_UINT16_WRITE - __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; }; - #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void*)(addr))->v) = (val)) - #endif - #ifndef __UNALIGNED_UINT16_READ - __PACKED_STRUCT T_UINT16_READ { uint16_t v; }; - #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v) - #endif - #ifndef __UNALIGNED_UINT32_WRITE - __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; }; - #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val)) - #endif - #ifndef __UNALIGNED_UINT32_READ - __PACKED_STRUCT T_UINT32_READ { uint32_t v; }; - #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v) - #endif - #ifndef __ALIGNED - #define __ALIGNED(x) __attribute__((aligned(x))) - #endif - #ifndef __RESTRICT - #warning No compiler specific solution for __RESTRICT. __RESTRICT is ignored. - #define __RESTRICT - #endif - - -/* - * TASKING Compiler - */ -#elif defined ( __TASKING__ ) - /* - * The CMSIS functions have been implemented as intrinsics in the compiler. - * Please use "carm -?i" to get an up to date list of all intrinsics, - * Including the CMSIS ones. - */ - - #ifndef __ASM - #define __ASM __asm - #endif - #ifndef __INLINE - #define __INLINE inline - #endif - #ifndef __STATIC_INLINE - #define __STATIC_INLINE static inline - #endif - #ifndef __STATIC_FORCEINLINE - #define __STATIC_FORCEINLINE __STATIC_INLINE - #endif - #ifndef __NO_RETURN - #define __NO_RETURN __attribute__((noreturn)) - #endif - #ifndef __USED - #define __USED __attribute__((used)) - #endif - #ifndef __WEAK - #define __WEAK __attribute__((weak)) - #endif - #ifndef __PACKED - #define __PACKED __packed__ - #endif - #ifndef __PACKED_STRUCT - #define __PACKED_STRUCT struct __packed__ - #endif - #ifndef __PACKED_UNION - #define __PACKED_UNION union __packed__ - #endif - #ifndef __UNALIGNED_UINT32 /* deprecated */ - struct __packed__ T_UINT32 { uint32_t v; }; - #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) - #endif - #ifndef __UNALIGNED_UINT16_WRITE - __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; }; - #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val)) - #endif - #ifndef __UNALIGNED_UINT16_READ - __PACKED_STRUCT T_UINT16_READ { uint16_t v; }; - #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v) - #endif - #ifndef __UNALIGNED_UINT32_WRITE - __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; }; - #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val)) - #endif - #ifndef __UNALIGNED_UINT32_READ - __PACKED_STRUCT T_UINT32_READ { uint32_t v; }; - #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v) - #endif - #ifndef __ALIGNED - #define __ALIGNED(x) __align(x) - #endif - #ifndef __RESTRICT - #warning No compiler specific solution for __RESTRICT. __RESTRICT is ignored. - #define __RESTRICT - #endif - - -/* - * COSMIC Compiler - */ -#elif defined ( __CSMC__ ) - #include - - #ifndef __ASM - #define __ASM _asm - #endif - #ifndef __INLINE - #define __INLINE inline - #endif - #ifndef __STATIC_INLINE - #define __STATIC_INLINE static inline - #endif - #ifndef __STATIC_FORCEINLINE - #define __STATIC_FORCEINLINE __STATIC_INLINE - #endif - #ifndef __NO_RETURN - // NO RETURN is automatically detected hence no warning here - #define __NO_RETURN - #endif - #ifndef __USED - #warning No compiler specific solution for __USED. __USED is ignored. - #define __USED - #endif - #ifndef __WEAK - #define __WEAK __weak - #endif - #ifndef __PACKED - #define __PACKED @packed - #endif - #ifndef __PACKED_STRUCT - #define __PACKED_STRUCT @packed struct - #endif - #ifndef __PACKED_UNION - #define __PACKED_UNION @packed union - #endif - #ifndef __UNALIGNED_UINT32 /* deprecated */ - @packed struct T_UINT32 { uint32_t v; }; - #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) - #endif - #ifndef __UNALIGNED_UINT16_WRITE - __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; }; - #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val)) - #endif - #ifndef __UNALIGNED_UINT16_READ - __PACKED_STRUCT T_UINT16_READ { uint16_t v; }; - #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v) - #endif - #ifndef __UNALIGNED_UINT32_WRITE - __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; }; - #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val)) - #endif - #ifndef __UNALIGNED_UINT32_READ - __PACKED_STRUCT T_UINT32_READ { uint32_t v; }; - #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v) - #endif - #ifndef __ALIGNED - #warning No compiler specific solution for __ALIGNED. __ALIGNED is ignored. - #define __ALIGNED(x) - #endif - #ifndef __RESTRICT - #warning No compiler specific solution for __RESTRICT. __RESTRICT is ignored. - #define __RESTRICT - #endif - - -#else - #error Unknown compiler. -#endif - - -#endif /* __CMSIS_COMPILER_H */ - +/**************************************************************************//** + * @file cmsis_compiler.h + * @brief CMSIS compiler generic header file + * @version V5.0.4 + * @date 10. January 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef __CMSIS_COMPILER_H +#define __CMSIS_COMPILER_H + +#include + +/* + * Arm Compiler 4/5 + */ +#if defined ( __CC_ARM ) + #include "cmsis_armcc.h" + + +/* + * Arm Compiler 6 (armclang) + */ +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #include "cmsis_armclang.h" + + +/* + * GNU Compiler + */ +#elif defined ( __GNUC__ ) + #include "cmsis_gcc.h" + + +/* + * IAR Compiler + */ +#elif defined ( __ICCARM__ ) + #include + + +/* + * TI Arm Compiler + */ +#elif defined ( __TI_ARM__ ) + #include + + #ifndef __ASM + #define __ASM __asm + #endif + #ifndef __INLINE + #define __INLINE inline + #endif + #ifndef __STATIC_INLINE + #define __STATIC_INLINE static inline + #endif + #ifndef __STATIC_FORCEINLINE + #define __STATIC_FORCEINLINE __STATIC_INLINE + #endif + #ifndef __NO_RETURN + #define __NO_RETURN __attribute__((noreturn)) + #endif + #ifndef __USED + #define __USED __attribute__((used)) + #endif + #ifndef __WEAK + #define __WEAK __attribute__((weak)) + #endif + #ifndef __PACKED + #define __PACKED __attribute__((packed)) + #endif + #ifndef __PACKED_STRUCT + #define __PACKED_STRUCT struct __attribute__((packed)) + #endif + #ifndef __PACKED_UNION + #define __PACKED_UNION union __attribute__((packed)) + #endif + #ifndef __UNALIGNED_UINT32 /* deprecated */ + struct __attribute__((packed)) T_UINT32 { uint32_t v; }; + #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) + #endif + #ifndef __UNALIGNED_UINT16_WRITE + __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; }; + #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void*)(addr))->v) = (val)) + #endif + #ifndef __UNALIGNED_UINT16_READ + __PACKED_STRUCT T_UINT16_READ { uint16_t v; }; + #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v) + #endif + #ifndef __UNALIGNED_UINT32_WRITE + __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; }; + #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val)) + #endif + #ifndef __UNALIGNED_UINT32_READ + __PACKED_STRUCT T_UINT32_READ { uint32_t v; }; + #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v) + #endif + #ifndef __ALIGNED + #define __ALIGNED(x) __attribute__((aligned(x))) + #endif + #ifndef __RESTRICT + #warning No compiler specific solution for __RESTRICT. __RESTRICT is ignored. + #define __RESTRICT + #endif + + +/* + * TASKING Compiler + */ +#elif defined ( __TASKING__ ) + /* + * The CMSIS functions have been implemented as intrinsics in the compiler. + * Please use "carm -?i" to get an up to date list of all intrinsics, + * Including the CMSIS ones. + */ + + #ifndef __ASM + #define __ASM __asm + #endif + #ifndef __INLINE + #define __INLINE inline + #endif + #ifndef __STATIC_INLINE + #define __STATIC_INLINE static inline + #endif + #ifndef __STATIC_FORCEINLINE + #define __STATIC_FORCEINLINE __STATIC_INLINE + #endif + #ifndef __NO_RETURN + #define __NO_RETURN __attribute__((noreturn)) + #endif + #ifndef __USED + #define __USED __attribute__((used)) + #endif + #ifndef __WEAK + #define __WEAK __attribute__((weak)) + #endif + #ifndef __PACKED + #define __PACKED __packed__ + #endif + #ifndef __PACKED_STRUCT + #define __PACKED_STRUCT struct __packed__ + #endif + #ifndef __PACKED_UNION + #define __PACKED_UNION union __packed__ + #endif + #ifndef __UNALIGNED_UINT32 /* deprecated */ + struct __packed__ T_UINT32 { uint32_t v; }; + #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) + #endif + #ifndef __UNALIGNED_UINT16_WRITE + __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; }; + #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val)) + #endif + #ifndef __UNALIGNED_UINT16_READ + __PACKED_STRUCT T_UINT16_READ { uint16_t v; }; + #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v) + #endif + #ifndef __UNALIGNED_UINT32_WRITE + __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; }; + #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val)) + #endif + #ifndef __UNALIGNED_UINT32_READ + __PACKED_STRUCT T_UINT32_READ { uint32_t v; }; + #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v) + #endif + #ifndef __ALIGNED + #define __ALIGNED(x) __align(x) + #endif + #ifndef __RESTRICT + #warning No compiler specific solution for __RESTRICT. __RESTRICT is ignored. + #define __RESTRICT + #endif + + +/* + * COSMIC Compiler + */ +#elif defined ( __CSMC__ ) + #include + + #ifndef __ASM + #define __ASM _asm + #endif + #ifndef __INLINE + #define __INLINE inline + #endif + #ifndef __STATIC_INLINE + #define __STATIC_INLINE static inline + #endif + #ifndef __STATIC_FORCEINLINE + #define __STATIC_FORCEINLINE __STATIC_INLINE + #endif + #ifndef __NO_RETURN + // NO RETURN is automatically detected hence no warning here + #define __NO_RETURN + #endif + #ifndef __USED + #warning No compiler specific solution for __USED. __USED is ignored. + #define __USED + #endif + #ifndef __WEAK + #define __WEAK __weak + #endif + #ifndef __PACKED + #define __PACKED @packed + #endif + #ifndef __PACKED_STRUCT + #define __PACKED_STRUCT @packed struct + #endif + #ifndef __PACKED_UNION + #define __PACKED_UNION @packed union + #endif + #ifndef __UNALIGNED_UINT32 /* deprecated */ + @packed struct T_UINT32 { uint32_t v; }; + #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) + #endif + #ifndef __UNALIGNED_UINT16_WRITE + __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; }; + #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val)) + #endif + #ifndef __UNALIGNED_UINT16_READ + __PACKED_STRUCT T_UINT16_READ { uint16_t v; }; + #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v) + #endif + #ifndef __UNALIGNED_UINT32_WRITE + __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; }; + #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val)) + #endif + #ifndef __UNALIGNED_UINT32_READ + __PACKED_STRUCT T_UINT32_READ { uint32_t v; }; + #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v) + #endif + #ifndef __ALIGNED + #warning No compiler specific solution for __ALIGNED. __ALIGNED is ignored. + #define __ALIGNED(x) + #endif + #ifndef __RESTRICT + #warning No compiler specific solution for __RESTRICT. __RESTRICT is ignored. + #define __RESTRICT + #endif + + +#else + #error Unknown compiler. +#endif + + +#endif /* __CMSIS_COMPILER_H */ + diff --git a/stm32f103/Drivers/CMSIS/Include/cmsis_gcc.h b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_gcc.h similarity index 96% rename from stm32f103/Drivers/CMSIS/Include/cmsis_gcc.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_gcc.h index 1bd41a4..2d9db15 100644 --- a/stm32f103/Drivers/CMSIS/Include/cmsis_gcc.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_gcc.h @@ -1,2085 +1,2085 @@ -/**************************************************************************//** - * @file cmsis_gcc.h - * @brief CMSIS compiler GCC header file - * @version V5.0.4 - * @date 09. April 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef __CMSIS_GCC_H -#define __CMSIS_GCC_H - -/* ignore some GCC warnings */ -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wsign-conversion" -#pragma GCC diagnostic ignored "-Wconversion" -#pragma GCC diagnostic ignored "-Wunused-parameter" - -/* Fallback for __has_builtin */ -#ifndef __has_builtin - #define __has_builtin(x) (0) -#endif - -/* CMSIS compiler specific defines */ -#ifndef __ASM - #define __ASM __asm -#endif -#ifndef __INLINE - #define __INLINE inline -#endif -#ifndef __STATIC_INLINE - #define __STATIC_INLINE static inline -#endif -#ifndef __STATIC_FORCEINLINE - #define __STATIC_FORCEINLINE __attribute__((always_inline)) static inline -#endif -#ifndef __NO_RETURN - #define __NO_RETURN __attribute__((__noreturn__)) -#endif -#ifndef __USED - #define __USED __attribute__((used)) -#endif -#ifndef __WEAK - #define __WEAK __attribute__((weak)) -#endif -#ifndef __PACKED - #define __PACKED __attribute__((packed, aligned(1))) -#endif -#ifndef __PACKED_STRUCT - #define __PACKED_STRUCT struct __attribute__((packed, aligned(1))) -#endif -#ifndef __PACKED_UNION - #define __PACKED_UNION union __attribute__((packed, aligned(1))) -#endif -#ifndef __UNALIGNED_UINT32 /* deprecated */ - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wpacked" - #pragma GCC diagnostic ignored "-Wattributes" - struct __attribute__((packed)) T_UINT32 { uint32_t v; }; - #pragma GCC diagnostic pop - #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) -#endif -#ifndef __UNALIGNED_UINT16_WRITE - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wpacked" - #pragma GCC diagnostic ignored "-Wattributes" - __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; }; - #pragma GCC diagnostic pop - #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val)) -#endif -#ifndef __UNALIGNED_UINT16_READ - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wpacked" - #pragma GCC diagnostic ignored "-Wattributes" - __PACKED_STRUCT T_UINT16_READ { uint16_t v; }; - #pragma GCC diagnostic pop - #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v) -#endif -#ifndef __UNALIGNED_UINT32_WRITE - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wpacked" - #pragma GCC diagnostic ignored "-Wattributes" - __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; }; - #pragma GCC diagnostic pop - #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val)) -#endif -#ifndef __UNALIGNED_UINT32_READ - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wpacked" - #pragma GCC diagnostic ignored "-Wattributes" - __PACKED_STRUCT T_UINT32_READ { uint32_t v; }; - #pragma GCC diagnostic pop - #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v) -#endif -#ifndef __ALIGNED - #define __ALIGNED(x) __attribute__((aligned(x))) -#endif -#ifndef __RESTRICT - #define __RESTRICT __restrict -#endif - - -/* ########################### Core Function Access ########################### */ -/** \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions - @{ - */ - -/** - \brief Enable IRQ Interrupts - \details Enables IRQ interrupts by clearing the I-bit in the CPSR. - Can only be executed in Privileged modes. - */ -__STATIC_FORCEINLINE void __enable_irq(void) -{ - __ASM volatile ("cpsie i" : : : "memory"); -} - - -/** - \brief Disable IRQ Interrupts - \details Disables IRQ interrupts by setting the I-bit in the CPSR. - Can only be executed in Privileged modes. - */ -__STATIC_FORCEINLINE void __disable_irq(void) -{ - __ASM volatile ("cpsid i" : : : "memory"); -} - - -/** - \brief Get Control Register - \details Returns the content of the Control Register. - \return Control Register value - */ -__STATIC_FORCEINLINE uint32_t __get_CONTROL(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, control" : "=r" (result) ); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Control Register (non-secure) - \details Returns the content of the non-secure Control Register when in secure mode. - \return non-secure Control Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_CONTROL_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, control_ns" : "=r" (result) ); - return(result); -} -#endif - - -/** - \brief Set Control Register - \details Writes the given value to the Control Register. - \param [in] control Control Register value to set - */ -__STATIC_FORCEINLINE void __set_CONTROL(uint32_t control) -{ - __ASM volatile ("MSR control, %0" : : "r" (control) : "memory"); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Control Register (non-secure) - \details Writes the given value to the non-secure Control Register when in secure state. - \param [in] control Control Register value to set - */ -__STATIC_FORCEINLINE void __TZ_set_CONTROL_NS(uint32_t control) -{ - __ASM volatile ("MSR control_ns, %0" : : "r" (control) : "memory"); -} -#endif - - -/** - \brief Get IPSR Register - \details Returns the content of the IPSR Register. - \return IPSR Register value - */ -__STATIC_FORCEINLINE uint32_t __get_IPSR(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, ipsr" : "=r" (result) ); - return(result); -} - - -/** - \brief Get APSR Register - \details Returns the content of the APSR Register. - \return APSR Register value - */ -__STATIC_FORCEINLINE uint32_t __get_APSR(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, apsr" : "=r" (result) ); - return(result); -} - - -/** - \brief Get xPSR Register - \details Returns the content of the xPSR Register. - \return xPSR Register value - */ -__STATIC_FORCEINLINE uint32_t __get_xPSR(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, xpsr" : "=r" (result) ); - return(result); -} - - -/** - \brief Get Process Stack Pointer - \details Returns the current value of the Process Stack Pointer (PSP). - \return PSP Register value - */ -__STATIC_FORCEINLINE uint32_t __get_PSP(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, psp" : "=r" (result) ); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Process Stack Pointer (non-secure) - \details Returns the current value of the non-secure Process Stack Pointer (PSP) when in secure state. - \return PSP Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_PSP_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, psp_ns" : "=r" (result) ); - return(result); -} -#endif - - -/** - \brief Set Process Stack Pointer - \details Assigns the given value to the Process Stack Pointer (PSP). - \param [in] topOfProcStack Process Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __set_PSP(uint32_t topOfProcStack) -{ - __ASM volatile ("MSR psp, %0" : : "r" (topOfProcStack) : ); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Process Stack Pointer (non-secure) - \details Assigns the given value to the non-secure Process Stack Pointer (PSP) when in secure state. - \param [in] topOfProcStack Process Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __TZ_set_PSP_NS(uint32_t topOfProcStack) -{ - __ASM volatile ("MSR psp_ns, %0" : : "r" (topOfProcStack) : ); -} -#endif - - -/** - \brief Get Main Stack Pointer - \details Returns the current value of the Main Stack Pointer (MSP). - \return MSP Register value - */ -__STATIC_FORCEINLINE uint32_t __get_MSP(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, msp" : "=r" (result) ); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Main Stack Pointer (non-secure) - \details Returns the current value of the non-secure Main Stack Pointer (MSP) when in secure state. - \return MSP Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_MSP_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, msp_ns" : "=r" (result) ); - return(result); -} -#endif - - -/** - \brief Set Main Stack Pointer - \details Assigns the given value to the Main Stack Pointer (MSP). - \param [in] topOfMainStack Main Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __set_MSP(uint32_t topOfMainStack) -{ - __ASM volatile ("MSR msp, %0" : : "r" (topOfMainStack) : ); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Main Stack Pointer (non-secure) - \details Assigns the given value to the non-secure Main Stack Pointer (MSP) when in secure state. - \param [in] topOfMainStack Main Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __TZ_set_MSP_NS(uint32_t topOfMainStack) -{ - __ASM volatile ("MSR msp_ns, %0" : : "r" (topOfMainStack) : ); -} -#endif - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Stack Pointer (non-secure) - \details Returns the current value of the non-secure Stack Pointer (SP) when in secure state. - \return SP Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_SP_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, sp_ns" : "=r" (result) ); - return(result); -} - - -/** - \brief Set Stack Pointer (non-secure) - \details Assigns the given value to the non-secure Stack Pointer (SP) when in secure state. - \param [in] topOfStack Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __TZ_set_SP_NS(uint32_t topOfStack) -{ - __ASM volatile ("MSR sp_ns, %0" : : "r" (topOfStack) : ); -} -#endif - - -/** - \brief Get Priority Mask - \details Returns the current state of the priority mask bit from the Priority Mask Register. - \return Priority Mask value - */ -__STATIC_FORCEINLINE uint32_t __get_PRIMASK(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, primask" : "=r" (result) :: "memory"); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Priority Mask (non-secure) - \details Returns the current state of the non-secure priority mask bit from the Priority Mask Register when in secure state. - \return Priority Mask value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_PRIMASK_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, primask_ns" : "=r" (result) :: "memory"); - return(result); -} -#endif - - -/** - \brief Set Priority Mask - \details Assigns the given value to the Priority Mask Register. - \param [in] priMask Priority Mask - */ -__STATIC_FORCEINLINE void __set_PRIMASK(uint32_t priMask) -{ - __ASM volatile ("MSR primask, %0" : : "r" (priMask) : "memory"); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Priority Mask (non-secure) - \details Assigns the given value to the non-secure Priority Mask Register when in secure state. - \param [in] priMask Priority Mask - */ -__STATIC_FORCEINLINE void __TZ_set_PRIMASK_NS(uint32_t priMask) -{ - __ASM volatile ("MSR primask_ns, %0" : : "r" (priMask) : "memory"); -} -#endif - - -#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) -/** - \brief Enable FIQ - \details Enables FIQ interrupts by clearing the F-bit in the CPSR. - Can only be executed in Privileged modes. - */ -__STATIC_FORCEINLINE void __enable_fault_irq(void) -{ - __ASM volatile ("cpsie f" : : : "memory"); -} - - -/** - \brief Disable FIQ - \details Disables FIQ interrupts by setting the F-bit in the CPSR. - Can only be executed in Privileged modes. - */ -__STATIC_FORCEINLINE void __disable_fault_irq(void) -{ - __ASM volatile ("cpsid f" : : : "memory"); -} - - -/** - \brief Get Base Priority - \details Returns the current value of the Base Priority register. - \return Base Priority register value - */ -__STATIC_FORCEINLINE uint32_t __get_BASEPRI(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, basepri" : "=r" (result) ); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Base Priority (non-secure) - \details Returns the current value of the non-secure Base Priority register when in secure state. - \return Base Priority register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_BASEPRI_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, basepri_ns" : "=r" (result) ); - return(result); -} -#endif - - -/** - \brief Set Base Priority - \details Assigns the given value to the Base Priority register. - \param [in] basePri Base Priority value to set - */ -__STATIC_FORCEINLINE void __set_BASEPRI(uint32_t basePri) -{ - __ASM volatile ("MSR basepri, %0" : : "r" (basePri) : "memory"); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Base Priority (non-secure) - \details Assigns the given value to the non-secure Base Priority register when in secure state. - \param [in] basePri Base Priority value to set - */ -__STATIC_FORCEINLINE void __TZ_set_BASEPRI_NS(uint32_t basePri) -{ - __ASM volatile ("MSR basepri_ns, %0" : : "r" (basePri) : "memory"); -} -#endif - - -/** - \brief Set Base Priority with condition - \details Assigns the given value to the Base Priority register only if BASEPRI masking is disabled, - or the new value increases the BASEPRI priority level. - \param [in] basePri Base Priority value to set - */ -__STATIC_FORCEINLINE void __set_BASEPRI_MAX(uint32_t basePri) -{ - __ASM volatile ("MSR basepri_max, %0" : : "r" (basePri) : "memory"); -} - - -/** - \brief Get Fault Mask - \details Returns the current value of the Fault Mask register. - \return Fault Mask register value - */ -__STATIC_FORCEINLINE uint32_t __get_FAULTMASK(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, faultmask" : "=r" (result) ); - return(result); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Fault Mask (non-secure) - \details Returns the current value of the non-secure Fault Mask register when in secure state. - \return Fault Mask register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_FAULTMASK_NS(void) -{ - uint32_t result; - - __ASM volatile ("MRS %0, faultmask_ns" : "=r" (result) ); - return(result); -} -#endif - - -/** - \brief Set Fault Mask - \details Assigns the given value to the Fault Mask register. - \param [in] faultMask Fault Mask value to set - */ -__STATIC_FORCEINLINE void __set_FAULTMASK(uint32_t faultMask) -{ - __ASM volatile ("MSR faultmask, %0" : : "r" (faultMask) : "memory"); -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Fault Mask (non-secure) - \details Assigns the given value to the non-secure Fault Mask register when in secure state. - \param [in] faultMask Fault Mask value to set - */ -__STATIC_FORCEINLINE void __TZ_set_FAULTMASK_NS(uint32_t faultMask) -{ - __ASM volatile ("MSR faultmask_ns, %0" : : "r" (faultMask) : "memory"); -} -#endif - -#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ - - -#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) - -/** - \brief Get Process Stack Pointer Limit - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence zero is returned always in non-secure - mode. - - \details Returns the current value of the Process Stack Pointer Limit (PSPLIM). - \return PSPLIM Register value - */ -__STATIC_FORCEINLINE uint32_t __get_PSPLIM(void) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - return 0U; -#else - uint32_t result; - __ASM volatile ("MRS %0, psplim" : "=r" (result) ); - return result; -#endif -} - -#if (defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Process Stack Pointer Limit (non-secure) - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence zero is returned always. - - \details Returns the current value of the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. - \return PSPLIM Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_PSPLIM_NS(void) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - return 0U; -#else - uint32_t result; - __ASM volatile ("MRS %0, psplim_ns" : "=r" (result) ); - return result; -#endif -} -#endif - - -/** - \brief Set Process Stack Pointer Limit - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence the write is silently ignored in non-secure - mode. - - \details Assigns the given value to the Process Stack Pointer Limit (PSPLIM). - \param [in] ProcStackPtrLimit Process Stack Pointer Limit value to set - */ -__STATIC_FORCEINLINE void __set_PSPLIM(uint32_t ProcStackPtrLimit) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - (void)ProcStackPtrLimit; -#else - __ASM volatile ("MSR psplim, %0" : : "r" (ProcStackPtrLimit)); -#endif -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Process Stack Pointer (non-secure) - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence the write is silently ignored. - - \details Assigns the given value to the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. - \param [in] ProcStackPtrLimit Process Stack Pointer Limit value to set - */ -__STATIC_FORCEINLINE void __TZ_set_PSPLIM_NS(uint32_t ProcStackPtrLimit) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - (void)ProcStackPtrLimit; -#else - __ASM volatile ("MSR psplim_ns, %0\n" : : "r" (ProcStackPtrLimit)); -#endif -} -#endif - - -/** - \brief Get Main Stack Pointer Limit - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence zero is returned always in non-secure - mode. - - \details Returns the current value of the Main Stack Pointer Limit (MSPLIM). - \return MSPLIM Register value - */ -__STATIC_FORCEINLINE uint32_t __get_MSPLIM(void) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - return 0U; -#else - uint32_t result; - __ASM volatile ("MRS %0, msplim" : "=r" (result) ); - return result; -#endif -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Get Main Stack Pointer Limit (non-secure) - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence zero is returned always. - - \details Returns the current value of the non-secure Main Stack Pointer Limit(MSPLIM) when in secure state. - \return MSPLIM Register value - */ -__STATIC_FORCEINLINE uint32_t __TZ_get_MSPLIM_NS(void) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - return 0U; -#else - uint32_t result; - __ASM volatile ("MRS %0, msplim_ns" : "=r" (result) ); - return result; -#endif -} -#endif - - -/** - \brief Set Main Stack Pointer Limit - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence the write is silently ignored in non-secure - mode. - - \details Assigns the given value to the Main Stack Pointer Limit (MSPLIM). - \param [in] MainStackPtrLimit Main Stack Pointer Limit value to set - */ -__STATIC_FORCEINLINE void __set_MSPLIM(uint32_t MainStackPtrLimit) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - (void)MainStackPtrLimit; -#else - __ASM volatile ("MSR msplim, %0" : : "r" (MainStackPtrLimit)); -#endif -} - - -#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) -/** - \brief Set Main Stack Pointer Limit (non-secure) - Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure - Stack Pointer Limit register hence the write is silently ignored. - - \details Assigns the given value to the non-secure Main Stack Pointer Limit (MSPLIM) when in secure state. - \param [in] MainStackPtrLimit Main Stack Pointer value to set - */ -__STATIC_FORCEINLINE void __TZ_set_MSPLIM_NS(uint32_t MainStackPtrLimit) -{ -#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - (void)MainStackPtrLimit; -#else - __ASM volatile ("MSR msplim_ns, %0" : : "r" (MainStackPtrLimit)); -#endif -} -#endif - -#endif /* ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ - - -/** - \brief Get FPSCR - \details Returns the current value of the Floating Point Status/Control register. - \return Floating Point Status/Control register value - */ -__STATIC_FORCEINLINE uint32_t __get_FPSCR(void) -{ -#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ - (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) -#if __has_builtin(__builtin_arm_get_fpscr) -// Re-enable using built-in when GCC has been fixed -// || (__GNUC__ > 7) || (__GNUC__ == 7 && __GNUC_MINOR__ >= 2) - /* see https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00443.html */ - return __builtin_arm_get_fpscr(); -#else - uint32_t result; - - __ASM volatile ("VMRS %0, fpscr" : "=r" (result) ); - return(result); -#endif -#else - return(0U); -#endif -} - - -/** - \brief Set FPSCR - \details Assigns the given value to the Floating Point Status/Control register. - \param [in] fpscr Floating Point Status/Control value to set - */ -__STATIC_FORCEINLINE void __set_FPSCR(uint32_t fpscr) -{ -#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ - (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) -#if __has_builtin(__builtin_arm_set_fpscr) -// Re-enable using built-in when GCC has been fixed -// || (__GNUC__ > 7) || (__GNUC__ == 7 && __GNUC_MINOR__ >= 2) - /* see https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00443.html */ - __builtin_arm_set_fpscr(fpscr); -#else - __ASM volatile ("VMSR fpscr, %0" : : "r" (fpscr) : "vfpcc", "memory"); -#endif -#else - (void)fpscr; -#endif -} - - -/*@} end of CMSIS_Core_RegAccFunctions */ - - -/* ########################## Core Instruction Access ######################### */ -/** \defgroup CMSIS_Core_InstructionInterface CMSIS Core Instruction Interface - Access to dedicated instructions - @{ -*/ - -/* Define macros for porting to both thumb1 and thumb2. - * For thumb1, use low register (r0-r7), specified by constraint "l" - * Otherwise, use general registers, specified by constraint "r" */ -#if defined (__thumb__) && !defined (__thumb2__) -#define __CMSIS_GCC_OUT_REG(r) "=l" (r) -#define __CMSIS_GCC_RW_REG(r) "+l" (r) -#define __CMSIS_GCC_USE_REG(r) "l" (r) -#else -#define __CMSIS_GCC_OUT_REG(r) "=r" (r) -#define __CMSIS_GCC_RW_REG(r) "+r" (r) -#define __CMSIS_GCC_USE_REG(r) "r" (r) -#endif - -/** - \brief No Operation - \details No Operation does nothing. This instruction can be used for code alignment purposes. - */ -#define __NOP() __ASM volatile ("nop") - -/** - \brief Wait For Interrupt - \details Wait For Interrupt is a hint instruction that suspends execution until one of a number of events occurs. - */ -#define __WFI() __ASM volatile ("wfi") - - -/** - \brief Wait For Event - \details Wait For Event is a hint instruction that permits the processor to enter - a low-power state until one of a number of events occurs. - */ -#define __WFE() __ASM volatile ("wfe") - - -/** - \brief Send Event - \details Send Event is a hint instruction. It causes an event to be signaled to the CPU. - */ -#define __SEV() __ASM volatile ("sev") - - -/** - \brief Instruction Synchronization Barrier - \details Instruction Synchronization Barrier flushes the pipeline in the processor, - so that all instructions following the ISB are fetched from cache or memory, - after the instruction has been completed. - */ -__STATIC_FORCEINLINE void __ISB(void) -{ - __ASM volatile ("isb 0xF":::"memory"); -} - - -/** - \brief Data Synchronization Barrier - \details Acts as a special kind of Data Memory Barrier. - It completes when all explicit memory accesses before this instruction complete. - */ -__STATIC_FORCEINLINE void __DSB(void) -{ - __ASM volatile ("dsb 0xF":::"memory"); -} - - -/** - \brief Data Memory Barrier - \details Ensures the apparent order of the explicit memory operations before - and after the instruction, without ensuring their completion. - */ -__STATIC_FORCEINLINE void __DMB(void) -{ - __ASM volatile ("dmb 0xF":::"memory"); -} - - -/** - \brief Reverse byte order (32 bit) - \details Reverses the byte order in unsigned integer value. For example, 0x12345678 becomes 0x78563412. - \param [in] value Value to reverse - \return Reversed value - */ -__STATIC_FORCEINLINE uint32_t __REV(uint32_t value) -{ -#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5) - return __builtin_bswap32(value); -#else - uint32_t result; - - __ASM volatile ("rev %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); - return result; -#endif -} - - -/** - \brief Reverse byte order (16 bit) - \details Reverses the byte order within each halfword of a word. For example, 0x12345678 becomes 0x34127856. - \param [in] value Value to reverse - \return Reversed value - */ -__STATIC_FORCEINLINE uint32_t __REV16(uint32_t value) -{ - uint32_t result; - - __ASM volatile ("rev16 %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); - return result; -} - - -/** - \brief Reverse byte order (16 bit) - \details Reverses the byte order in a 16-bit value and returns the signed 16-bit result. For example, 0x0080 becomes 0x8000. - \param [in] value Value to reverse - \return Reversed value - */ -__STATIC_FORCEINLINE int16_t __REVSH(int16_t value) -{ -#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) - return (int16_t)__builtin_bswap16(value); -#else - int16_t result; - - __ASM volatile ("revsh %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); - return result; -#endif -} - - -/** - \brief Rotate Right in unsigned value (32 bit) - \details Rotate Right (immediate) provides the value of the contents of a register rotated by a variable number of bits. - \param [in] op1 Value to rotate - \param [in] op2 Number of Bits to rotate - \return Rotated value - */ -__STATIC_FORCEINLINE uint32_t __ROR(uint32_t op1, uint32_t op2) -{ - op2 %= 32U; - if (op2 == 0U) - { - return op1; - } - return (op1 >> op2) | (op1 << (32U - op2)); -} - - -/** - \brief Breakpoint - \details Causes the processor to enter Debug state. - Debug tools can use this to investigate system state when the instruction at a particular address is reached. - \param [in] value is ignored by the processor. - If required, a debugger can use it to store additional information about the breakpoint. - */ -#define __BKPT(value) __ASM volatile ("bkpt "#value) - - -/** - \brief Reverse bit order of value - \details Reverses the bit order of the given value. - \param [in] value Value to reverse - \return Reversed value - */ -__STATIC_FORCEINLINE uint32_t __RBIT(uint32_t value) -{ - uint32_t result; - -#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) - __ASM volatile ("rbit %0, %1" : "=r" (result) : "r" (value) ); -#else - uint32_t s = (4U /*sizeof(v)*/ * 8U) - 1U; /* extra shift needed at end */ - - result = value; /* r will be reversed bits of v; first get LSB of v */ - for (value >>= 1U; value != 0U; value >>= 1U) - { - result <<= 1U; - result |= value & 1U; - s--; - } - result <<= s; /* shift when v's highest bits are zero */ -#endif - return result; -} - - -/** - \brief Count leading zeros - \details Counts the number of leading zeros of a data value. - \param [in] value Value to count the leading zeros - \return number of leading zeros in value - */ -#define __CLZ (uint8_t)__builtin_clz - - -#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) -/** - \brief LDR Exclusive (8 bit) - \details Executes a exclusive LDR instruction for 8 bit value. - \param [in] ptr Pointer to data - \return value of type uint8_t at (*ptr) - */ -__STATIC_FORCEINLINE uint8_t __LDREXB(volatile uint8_t *addr) -{ - uint32_t result; - -#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) - __ASM volatile ("ldrexb %0, %1" : "=r" (result) : "Q" (*addr) ); -#else - /* Prior to GCC 4.8, "Q" will be expanded to [rx, #0] which is not - accepted by assembler. So has to use following less efficient pattern. - */ - __ASM volatile ("ldrexb %0, [%1]" : "=r" (result) : "r" (addr) : "memory" ); -#endif - return ((uint8_t) result); /* Add explicit type cast here */ -} - - -/** - \brief LDR Exclusive (16 bit) - \details Executes a exclusive LDR instruction for 16 bit values. - \param [in] ptr Pointer to data - \return value of type uint16_t at (*ptr) - */ -__STATIC_FORCEINLINE uint16_t __LDREXH(volatile uint16_t *addr) -{ - uint32_t result; - -#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) - __ASM volatile ("ldrexh %0, %1" : "=r" (result) : "Q" (*addr) ); -#else - /* Prior to GCC 4.8, "Q" will be expanded to [rx, #0] which is not - accepted by assembler. So has to use following less efficient pattern. - */ - __ASM volatile ("ldrexh %0, [%1]" : "=r" (result) : "r" (addr) : "memory" ); -#endif - return ((uint16_t) result); /* Add explicit type cast here */ -} - - -/** - \brief LDR Exclusive (32 bit) - \details Executes a exclusive LDR instruction for 32 bit values. - \param [in] ptr Pointer to data - \return value of type uint32_t at (*ptr) - */ -__STATIC_FORCEINLINE uint32_t __LDREXW(volatile uint32_t *addr) -{ - uint32_t result; - - __ASM volatile ("ldrex %0, %1" : "=r" (result) : "Q" (*addr) ); - return(result); -} - - -/** - \brief STR Exclusive (8 bit) - \details Executes a exclusive STR instruction for 8 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -__STATIC_FORCEINLINE uint32_t __STREXB(uint8_t value, volatile uint8_t *addr) -{ - uint32_t result; - - __ASM volatile ("strexb %0, %2, %1" : "=&r" (result), "=Q" (*addr) : "r" ((uint32_t)value) ); - return(result); -} - - -/** - \brief STR Exclusive (16 bit) - \details Executes a exclusive STR instruction for 16 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -__STATIC_FORCEINLINE uint32_t __STREXH(uint16_t value, volatile uint16_t *addr) -{ - uint32_t result; - - __ASM volatile ("strexh %0, %2, %1" : "=&r" (result), "=Q" (*addr) : "r" ((uint32_t)value) ); - return(result); -} - - -/** - \brief STR Exclusive (32 bit) - \details Executes a exclusive STR instruction for 32 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -__STATIC_FORCEINLINE uint32_t __STREXW(uint32_t value, volatile uint32_t *addr) -{ - uint32_t result; - - __ASM volatile ("strex %0, %2, %1" : "=&r" (result), "=Q" (*addr) : "r" (value) ); - return(result); -} - - -/** - \brief Remove the exclusive lock - \details Removes the exclusive lock which is created by LDREX. - */ -__STATIC_FORCEINLINE void __CLREX(void) -{ - __ASM volatile ("clrex" ::: "memory"); -} - -#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ - - -#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) -/** - \brief Signed Saturate - \details Saturates a signed value. - \param [in] ARG1 Value to be saturated - \param [in] ARG2 Bit position to saturate to (1..32) - \return Saturated value - */ -#define __SSAT(ARG1,ARG2) \ -__extension__ \ -({ \ - int32_t __RES, __ARG1 = (ARG1); \ - __ASM ("ssat %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ - __RES; \ - }) - - -/** - \brief Unsigned Saturate - \details Saturates an unsigned value. - \param [in] ARG1 Value to be saturated - \param [in] ARG2 Bit position to saturate to (0..31) - \return Saturated value - */ -#define __USAT(ARG1,ARG2) \ - __extension__ \ -({ \ - uint32_t __RES, __ARG1 = (ARG1); \ - __ASM ("usat %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ - __RES; \ - }) - - -/** - \brief Rotate Right with Extend (32 bit) - \details Moves each bit of a bitstring right by one bit. - The carry input is shifted in at the left end of the bitstring. - \param [in] value Value to rotate - \return Rotated value - */ -__STATIC_FORCEINLINE uint32_t __RRX(uint32_t value) -{ - uint32_t result; - - __ASM volatile ("rrx %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); - return(result); -} - - -/** - \brief LDRT Unprivileged (8 bit) - \details Executes a Unprivileged LDRT instruction for 8 bit value. - \param [in] ptr Pointer to data - \return value of type uint8_t at (*ptr) - */ -__STATIC_FORCEINLINE uint8_t __LDRBT(volatile uint8_t *ptr) -{ - uint32_t result; - -#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) - __ASM volatile ("ldrbt %0, %1" : "=r" (result) : "Q" (*ptr) ); -#else - /* Prior to GCC 4.8, "Q" will be expanded to [rx, #0] which is not - accepted by assembler. So has to use following less efficient pattern. - */ - __ASM volatile ("ldrbt %0, [%1]" : "=r" (result) : "r" (ptr) : "memory" ); -#endif - return ((uint8_t) result); /* Add explicit type cast here */ -} - - -/** - \brief LDRT Unprivileged (16 bit) - \details Executes a Unprivileged LDRT instruction for 16 bit values. - \param [in] ptr Pointer to data - \return value of type uint16_t at (*ptr) - */ -__STATIC_FORCEINLINE uint16_t __LDRHT(volatile uint16_t *ptr) -{ - uint32_t result; - -#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) - __ASM volatile ("ldrht %0, %1" : "=r" (result) : "Q" (*ptr) ); -#else - /* Prior to GCC 4.8, "Q" will be expanded to [rx, #0] which is not - accepted by assembler. So has to use following less efficient pattern. - */ - __ASM volatile ("ldrht %0, [%1]" : "=r" (result) : "r" (ptr) : "memory" ); -#endif - return ((uint16_t) result); /* Add explicit type cast here */ -} - - -/** - \brief LDRT Unprivileged (32 bit) - \details Executes a Unprivileged LDRT instruction for 32 bit values. - \param [in] ptr Pointer to data - \return value of type uint32_t at (*ptr) - */ -__STATIC_FORCEINLINE uint32_t __LDRT(volatile uint32_t *ptr) -{ - uint32_t result; - - __ASM volatile ("ldrt %0, %1" : "=r" (result) : "Q" (*ptr) ); - return(result); -} - - -/** - \brief STRT Unprivileged (8 bit) - \details Executes a Unprivileged STRT instruction for 8 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STRBT(uint8_t value, volatile uint8_t *ptr) -{ - __ASM volatile ("strbt %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); -} - - -/** - \brief STRT Unprivileged (16 bit) - \details Executes a Unprivileged STRT instruction for 16 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STRHT(uint16_t value, volatile uint16_t *ptr) -{ - __ASM volatile ("strht %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); -} - - -/** - \brief STRT Unprivileged (32 bit) - \details Executes a Unprivileged STRT instruction for 32 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STRT(uint32_t value, volatile uint32_t *ptr) -{ - __ASM volatile ("strt %1, %0" : "=Q" (*ptr) : "r" (value) ); -} - -#else /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ - -/** - \brief Signed Saturate - \details Saturates a signed value. - \param [in] value Value to be saturated - \param [in] sat Bit position to saturate to (1..32) - \return Saturated value - */ -__STATIC_FORCEINLINE int32_t __SSAT(int32_t val, uint32_t sat) -{ - if ((sat >= 1U) && (sat <= 32U)) - { - const int32_t max = (int32_t)((1U << (sat - 1U)) - 1U); - const int32_t min = -1 - max ; - if (val > max) - { - return max; - } - else if (val < min) - { - return min; - } - } - return val; -} - -/** - \brief Unsigned Saturate - \details Saturates an unsigned value. - \param [in] value Value to be saturated - \param [in] sat Bit position to saturate to (0..31) - \return Saturated value - */ -__STATIC_FORCEINLINE uint32_t __USAT(int32_t val, uint32_t sat) -{ - if (sat <= 31U) - { - const uint32_t max = ((1U << sat) - 1U); - if (val > (int32_t)max) - { - return max; - } - else if (val < 0) - { - return 0U; - } - } - return (uint32_t)val; -} - -#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ - (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ - (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ - - -#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) -/** - \brief Load-Acquire (8 bit) - \details Executes a LDAB instruction for 8 bit value. - \param [in] ptr Pointer to data - \return value of type uint8_t at (*ptr) - */ -__STATIC_FORCEINLINE uint8_t __LDAB(volatile uint8_t *ptr) -{ - uint32_t result; - - __ASM volatile ("ldab %0, %1" : "=r" (result) : "Q" (*ptr) ); - return ((uint8_t) result); -} - - -/** - \brief Load-Acquire (16 bit) - \details Executes a LDAH instruction for 16 bit values. - \param [in] ptr Pointer to data - \return value of type uint16_t at (*ptr) - */ -__STATIC_FORCEINLINE uint16_t __LDAH(volatile uint16_t *ptr) -{ - uint32_t result; - - __ASM volatile ("ldah %0, %1" : "=r" (result) : "Q" (*ptr) ); - return ((uint16_t) result); -} - - -/** - \brief Load-Acquire (32 bit) - \details Executes a LDA instruction for 32 bit values. - \param [in] ptr Pointer to data - \return value of type uint32_t at (*ptr) - */ -__STATIC_FORCEINLINE uint32_t __LDA(volatile uint32_t *ptr) -{ - uint32_t result; - - __ASM volatile ("lda %0, %1" : "=r" (result) : "Q" (*ptr) ); - return(result); -} - - -/** - \brief Store-Release (8 bit) - \details Executes a STLB instruction for 8 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STLB(uint8_t value, volatile uint8_t *ptr) -{ - __ASM volatile ("stlb %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); -} - - -/** - \brief Store-Release (16 bit) - \details Executes a STLH instruction for 16 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STLH(uint16_t value, volatile uint16_t *ptr) -{ - __ASM volatile ("stlh %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); -} - - -/** - \brief Store-Release (32 bit) - \details Executes a STL instruction for 32 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - */ -__STATIC_FORCEINLINE void __STL(uint32_t value, volatile uint32_t *ptr) -{ - __ASM volatile ("stl %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); -} - - -/** - \brief Load-Acquire Exclusive (8 bit) - \details Executes a LDAB exclusive instruction for 8 bit value. - \param [in] ptr Pointer to data - \return value of type uint8_t at (*ptr) - */ -__STATIC_FORCEINLINE uint8_t __LDAEXB(volatile uint8_t *ptr) -{ - uint32_t result; - - __ASM volatile ("ldaexb %0, %1" : "=r" (result) : "Q" (*ptr) ); - return ((uint8_t) result); -} - - -/** - \brief Load-Acquire Exclusive (16 bit) - \details Executes a LDAH exclusive instruction for 16 bit values. - \param [in] ptr Pointer to data - \return value of type uint16_t at (*ptr) - */ -__STATIC_FORCEINLINE uint16_t __LDAEXH(volatile uint16_t *ptr) -{ - uint32_t result; - - __ASM volatile ("ldaexh %0, %1" : "=r" (result) : "Q" (*ptr) ); - return ((uint16_t) result); -} - - -/** - \brief Load-Acquire Exclusive (32 bit) - \details Executes a LDA exclusive instruction for 32 bit values. - \param [in] ptr Pointer to data - \return value of type uint32_t at (*ptr) - */ -__STATIC_FORCEINLINE uint32_t __LDAEX(volatile uint32_t *ptr) -{ - uint32_t result; - - __ASM volatile ("ldaex %0, %1" : "=r" (result) : "Q" (*ptr) ); - return(result); -} - - -/** - \brief Store-Release Exclusive (8 bit) - \details Executes a STLB exclusive instruction for 8 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -__STATIC_FORCEINLINE uint32_t __STLEXB(uint8_t value, volatile uint8_t *ptr) -{ - uint32_t result; - - __ASM volatile ("stlexb %0, %2, %1" : "=&r" (result), "=Q" (*ptr) : "r" ((uint32_t)value) ); - return(result); -} - - -/** - \brief Store-Release Exclusive (16 bit) - \details Executes a STLH exclusive instruction for 16 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -__STATIC_FORCEINLINE uint32_t __STLEXH(uint16_t value, volatile uint16_t *ptr) -{ - uint32_t result; - - __ASM volatile ("stlexh %0, %2, %1" : "=&r" (result), "=Q" (*ptr) : "r" ((uint32_t)value) ); - return(result); -} - - -/** - \brief Store-Release Exclusive (32 bit) - \details Executes a STL exclusive instruction for 32 bit values. - \param [in] value Value to store - \param [in] ptr Pointer to location - \return 0 Function succeeded - \return 1 Function failed - */ -__STATIC_FORCEINLINE uint32_t __STLEX(uint32_t value, volatile uint32_t *ptr) -{ - uint32_t result; - - __ASM volatile ("stlex %0, %2, %1" : "=&r" (result), "=Q" (*ptr) : "r" ((uint32_t)value) ); - return(result); -} - -#endif /* ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ - -/*@}*/ /* end of group CMSIS_Core_InstructionInterface */ - - -/* ################### Compiler specific Intrinsics ########################### */ -/** \defgroup CMSIS_SIMD_intrinsics CMSIS SIMD Intrinsics - Access to dedicated SIMD instructions - @{ -*/ - -#if (defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1)) - -__STATIC_FORCEINLINE uint32_t __SADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("sadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHADD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - - -__STATIC_FORCEINLINE uint32_t __SSUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("ssub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QSUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHSUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __USUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("usub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQSUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHSUB8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - - -__STATIC_FORCEINLINE uint32_t __SADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("sadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHADD16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SSUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("ssub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QSUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHSUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __USUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("usub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQSUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHSUB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("sasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHASX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SSAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("ssax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __QSAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("qsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SHSAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("shsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __USAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("usax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UQSAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uqsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UHSAX(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uhsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __USAD8(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("usad8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __USADA8(uint32_t op1, uint32_t op2, uint32_t op3) -{ - uint32_t result; - - __ASM volatile ("usada8 %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -#define __SSAT16(ARG1,ARG2) \ -({ \ - int32_t __RES, __ARG1 = (ARG1); \ - __ASM ("ssat16 %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ - __RES; \ - }) - -#define __USAT16(ARG1,ARG2) \ -({ \ - uint32_t __RES, __ARG1 = (ARG1); \ - __ASM ("usat16 %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ - __RES; \ - }) - -__STATIC_FORCEINLINE uint32_t __UXTB16(uint32_t op1) -{ - uint32_t result; - - __ASM volatile ("uxtb16 %0, %1" : "=r" (result) : "r" (op1)); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __UXTAB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("uxtab16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SXTB16(uint32_t op1) -{ - uint32_t result; - - __ASM volatile ("sxtb16 %0, %1" : "=r" (result) : "r" (op1)); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SXTAB16(uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("sxtab16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMUAD (uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("smuad %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMUADX (uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("smuadx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMLAD (uint32_t op1, uint32_t op2, uint32_t op3) -{ - uint32_t result; - - __ASM volatile ("smlad %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMLADX (uint32_t op1, uint32_t op2, uint32_t op3) -{ - uint32_t result; - - __ASM volatile ("smladx %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -__STATIC_FORCEINLINE uint64_t __SMLALD (uint32_t op1, uint32_t op2, uint64_t acc) -{ - union llreg_u{ - uint32_t w32[2]; - uint64_t w64; - } llr; - llr.w64 = acc; - -#ifndef __ARMEB__ /* Little endian */ - __ASM volatile ("smlald %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); -#else /* Big endian */ - __ASM volatile ("smlald %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); -#endif - - return(llr.w64); -} - -__STATIC_FORCEINLINE uint64_t __SMLALDX (uint32_t op1, uint32_t op2, uint64_t acc) -{ - union llreg_u{ - uint32_t w32[2]; - uint64_t w64; - } llr; - llr.w64 = acc; - -#ifndef __ARMEB__ /* Little endian */ - __ASM volatile ("smlaldx %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); -#else /* Big endian */ - __ASM volatile ("smlaldx %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); -#endif - - return(llr.w64); -} - -__STATIC_FORCEINLINE uint32_t __SMUSD (uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("smusd %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMUSDX (uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("smusdx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMLSD (uint32_t op1, uint32_t op2, uint32_t op3) -{ - uint32_t result; - - __ASM volatile ("smlsd %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -__STATIC_FORCEINLINE uint32_t __SMLSDX (uint32_t op1, uint32_t op2, uint32_t op3) -{ - uint32_t result; - - __ASM volatile ("smlsdx %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -__STATIC_FORCEINLINE uint64_t __SMLSLD (uint32_t op1, uint32_t op2, uint64_t acc) -{ - union llreg_u{ - uint32_t w32[2]; - uint64_t w64; - } llr; - llr.w64 = acc; - -#ifndef __ARMEB__ /* Little endian */ - __ASM volatile ("smlsld %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); -#else /* Big endian */ - __ASM volatile ("smlsld %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); -#endif - - return(llr.w64); -} - -__STATIC_FORCEINLINE uint64_t __SMLSLDX (uint32_t op1, uint32_t op2, uint64_t acc) -{ - union llreg_u{ - uint32_t w32[2]; - uint64_t w64; - } llr; - llr.w64 = acc; - -#ifndef __ARMEB__ /* Little endian */ - __ASM volatile ("smlsldx %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); -#else /* Big endian */ - __ASM volatile ("smlsldx %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); -#endif - - return(llr.w64); -} - -__STATIC_FORCEINLINE uint32_t __SEL (uint32_t op1, uint32_t op2) -{ - uint32_t result; - - __ASM volatile ("sel %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE int32_t __QADD( int32_t op1, int32_t op2) -{ - int32_t result; - - __ASM volatile ("qadd %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -__STATIC_FORCEINLINE int32_t __QSUB( int32_t op1, int32_t op2) -{ - int32_t result; - - __ASM volatile ("qsub %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); - return(result); -} - -#if 0 -#define __PKHBT(ARG1,ARG2,ARG3) \ -({ \ - uint32_t __RES, __ARG1 = (ARG1), __ARG2 = (ARG2); \ - __ASM ("pkhbt %0, %1, %2, lsl %3" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2), "I" (ARG3) ); \ - __RES; \ - }) - -#define __PKHTB(ARG1,ARG2,ARG3) \ -({ \ - uint32_t __RES, __ARG1 = (ARG1), __ARG2 = (ARG2); \ - if (ARG3 == 0) \ - __ASM ("pkhtb %0, %1, %2" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2) ); \ - else \ - __ASM ("pkhtb %0, %1, %2, asr %3" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2), "I" (ARG3) ); \ - __RES; \ - }) -#endif - -#define __PKHBT(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0x0000FFFFUL) | \ - ((((uint32_t)(ARG2)) << (ARG3)) & 0xFFFF0000UL) ) - -#define __PKHTB(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0xFFFF0000UL) | \ - ((((uint32_t)(ARG2)) >> (ARG3)) & 0x0000FFFFUL) ) - -__STATIC_FORCEINLINE int32_t __SMMLA (int32_t op1, int32_t op2, int32_t op3) -{ - int32_t result; - - __ASM volatile ("smmla %0, %1, %2, %3" : "=r" (result): "r" (op1), "r" (op2), "r" (op3) ); - return(result); -} - -#endif /* (__ARM_FEATURE_DSP == 1) */ -/*@} end of group CMSIS_SIMD_intrinsics */ - - -#pragma GCC diagnostic pop - -#endif /* __CMSIS_GCC_H */ +/**************************************************************************//** + * @file cmsis_gcc.h + * @brief CMSIS compiler GCC header file + * @version V5.0.4 + * @date 09. April 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef __CMSIS_GCC_H +#define __CMSIS_GCC_H + +/* ignore some GCC warnings */ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wsign-conversion" +#pragma GCC diagnostic ignored "-Wconversion" +#pragma GCC diagnostic ignored "-Wunused-parameter" + +/* Fallback for __has_builtin */ +#ifndef __has_builtin + #define __has_builtin(x) (0) +#endif + +/* CMSIS compiler specific defines */ +#ifndef __ASM + #define __ASM __asm +#endif +#ifndef __INLINE + #define __INLINE inline +#endif +#ifndef __STATIC_INLINE + #define __STATIC_INLINE static inline +#endif +#ifndef __STATIC_FORCEINLINE + #define __STATIC_FORCEINLINE __attribute__((always_inline)) static inline +#endif +#ifndef __NO_RETURN + #define __NO_RETURN __attribute__((__noreturn__)) +#endif +#ifndef __USED + #define __USED __attribute__((used)) +#endif +#ifndef __WEAK + #define __WEAK __attribute__((weak)) +#endif +#ifndef __PACKED + #define __PACKED __attribute__((packed, aligned(1))) +#endif +#ifndef __PACKED_STRUCT + #define __PACKED_STRUCT struct __attribute__((packed, aligned(1))) +#endif +#ifndef __PACKED_UNION + #define __PACKED_UNION union __attribute__((packed, aligned(1))) +#endif +#ifndef __UNALIGNED_UINT32 /* deprecated */ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wpacked" + #pragma GCC diagnostic ignored "-Wattributes" + struct __attribute__((packed)) T_UINT32 { uint32_t v; }; + #pragma GCC diagnostic pop + #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) +#endif +#ifndef __UNALIGNED_UINT16_WRITE + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wpacked" + #pragma GCC diagnostic ignored "-Wattributes" + __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; }; + #pragma GCC diagnostic pop + #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))->v) = (val)) +#endif +#ifndef __UNALIGNED_UINT16_READ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wpacked" + #pragma GCC diagnostic ignored "-Wattributes" + __PACKED_STRUCT T_UINT16_READ { uint16_t v; }; + #pragma GCC diagnostic pop + #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(addr))->v) +#endif +#ifndef __UNALIGNED_UINT32_WRITE + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wpacked" + #pragma GCC diagnostic ignored "-Wattributes" + __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; }; + #pragma GCC diagnostic pop + #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))->v) = (val)) +#endif +#ifndef __UNALIGNED_UINT32_READ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wpacked" + #pragma GCC diagnostic ignored "-Wattributes" + __PACKED_STRUCT T_UINT32_READ { uint32_t v; }; + #pragma GCC diagnostic pop + #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(addr))->v) +#endif +#ifndef __ALIGNED + #define __ALIGNED(x) __attribute__((aligned(x))) +#endif +#ifndef __RESTRICT + #define __RESTRICT __restrict +#endif + + +/* ########################### Core Function Access ########################### */ +/** \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions + @{ + */ + +/** + \brief Enable IRQ Interrupts + \details Enables IRQ interrupts by clearing the I-bit in the CPSR. + Can only be executed in Privileged modes. + */ +__STATIC_FORCEINLINE void __enable_irq(void) +{ + __ASM volatile ("cpsie i" : : : "memory"); +} + + +/** + \brief Disable IRQ Interrupts + \details Disables IRQ interrupts by setting the I-bit in the CPSR. + Can only be executed in Privileged modes. + */ +__STATIC_FORCEINLINE void __disable_irq(void) +{ + __ASM volatile ("cpsid i" : : : "memory"); +} + + +/** + \brief Get Control Register + \details Returns the content of the Control Register. + \return Control Register value + */ +__STATIC_FORCEINLINE uint32_t __get_CONTROL(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, control" : "=r" (result) ); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Control Register (non-secure) + \details Returns the content of the non-secure Control Register when in secure mode. + \return non-secure Control Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_CONTROL_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, control_ns" : "=r" (result) ); + return(result); +} +#endif + + +/** + \brief Set Control Register + \details Writes the given value to the Control Register. + \param [in] control Control Register value to set + */ +__STATIC_FORCEINLINE void __set_CONTROL(uint32_t control) +{ + __ASM volatile ("MSR control, %0" : : "r" (control) : "memory"); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Control Register (non-secure) + \details Writes the given value to the non-secure Control Register when in secure state. + \param [in] control Control Register value to set + */ +__STATIC_FORCEINLINE void __TZ_set_CONTROL_NS(uint32_t control) +{ + __ASM volatile ("MSR control_ns, %0" : : "r" (control) : "memory"); +} +#endif + + +/** + \brief Get IPSR Register + \details Returns the content of the IPSR Register. + \return IPSR Register value + */ +__STATIC_FORCEINLINE uint32_t __get_IPSR(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, ipsr" : "=r" (result) ); + return(result); +} + + +/** + \brief Get APSR Register + \details Returns the content of the APSR Register. + \return APSR Register value + */ +__STATIC_FORCEINLINE uint32_t __get_APSR(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, apsr" : "=r" (result) ); + return(result); +} + + +/** + \brief Get xPSR Register + \details Returns the content of the xPSR Register. + \return xPSR Register value + */ +__STATIC_FORCEINLINE uint32_t __get_xPSR(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, xpsr" : "=r" (result) ); + return(result); +} + + +/** + \brief Get Process Stack Pointer + \details Returns the current value of the Process Stack Pointer (PSP). + \return PSP Register value + */ +__STATIC_FORCEINLINE uint32_t __get_PSP(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, psp" : "=r" (result) ); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Process Stack Pointer (non-secure) + \details Returns the current value of the non-secure Process Stack Pointer (PSP) when in secure state. + \return PSP Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_PSP_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, psp_ns" : "=r" (result) ); + return(result); +} +#endif + + +/** + \brief Set Process Stack Pointer + \details Assigns the given value to the Process Stack Pointer (PSP). + \param [in] topOfProcStack Process Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __set_PSP(uint32_t topOfProcStack) +{ + __ASM volatile ("MSR psp, %0" : : "r" (topOfProcStack) : ); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Process Stack Pointer (non-secure) + \details Assigns the given value to the non-secure Process Stack Pointer (PSP) when in secure state. + \param [in] topOfProcStack Process Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __TZ_set_PSP_NS(uint32_t topOfProcStack) +{ + __ASM volatile ("MSR psp_ns, %0" : : "r" (topOfProcStack) : ); +} +#endif + + +/** + \brief Get Main Stack Pointer + \details Returns the current value of the Main Stack Pointer (MSP). + \return MSP Register value + */ +__STATIC_FORCEINLINE uint32_t __get_MSP(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, msp" : "=r" (result) ); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Main Stack Pointer (non-secure) + \details Returns the current value of the non-secure Main Stack Pointer (MSP) when in secure state. + \return MSP Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_MSP_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, msp_ns" : "=r" (result) ); + return(result); +} +#endif + + +/** + \brief Set Main Stack Pointer + \details Assigns the given value to the Main Stack Pointer (MSP). + \param [in] topOfMainStack Main Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __set_MSP(uint32_t topOfMainStack) +{ + __ASM volatile ("MSR msp, %0" : : "r" (topOfMainStack) : ); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Main Stack Pointer (non-secure) + \details Assigns the given value to the non-secure Main Stack Pointer (MSP) when in secure state. + \param [in] topOfMainStack Main Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __TZ_set_MSP_NS(uint32_t topOfMainStack) +{ + __ASM volatile ("MSR msp_ns, %0" : : "r" (topOfMainStack) : ); +} +#endif + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Stack Pointer (non-secure) + \details Returns the current value of the non-secure Stack Pointer (SP) when in secure state. + \return SP Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_SP_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, sp_ns" : "=r" (result) ); + return(result); +} + + +/** + \brief Set Stack Pointer (non-secure) + \details Assigns the given value to the non-secure Stack Pointer (SP) when in secure state. + \param [in] topOfStack Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __TZ_set_SP_NS(uint32_t topOfStack) +{ + __ASM volatile ("MSR sp_ns, %0" : : "r" (topOfStack) : ); +} +#endif + + +/** + \brief Get Priority Mask + \details Returns the current state of the priority mask bit from the Priority Mask Register. + \return Priority Mask value + */ +__STATIC_FORCEINLINE uint32_t __get_PRIMASK(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, primask" : "=r" (result) :: "memory"); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Priority Mask (non-secure) + \details Returns the current state of the non-secure priority mask bit from the Priority Mask Register when in secure state. + \return Priority Mask value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_PRIMASK_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, primask_ns" : "=r" (result) :: "memory"); + return(result); +} +#endif + + +/** + \brief Set Priority Mask + \details Assigns the given value to the Priority Mask Register. + \param [in] priMask Priority Mask + */ +__STATIC_FORCEINLINE void __set_PRIMASK(uint32_t priMask) +{ + __ASM volatile ("MSR primask, %0" : : "r" (priMask) : "memory"); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Priority Mask (non-secure) + \details Assigns the given value to the non-secure Priority Mask Register when in secure state. + \param [in] priMask Priority Mask + */ +__STATIC_FORCEINLINE void __TZ_set_PRIMASK_NS(uint32_t priMask) +{ + __ASM volatile ("MSR primask_ns, %0" : : "r" (priMask) : "memory"); +} +#endif + + +#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) +/** + \brief Enable FIQ + \details Enables FIQ interrupts by clearing the F-bit in the CPSR. + Can only be executed in Privileged modes. + */ +__STATIC_FORCEINLINE void __enable_fault_irq(void) +{ + __ASM volatile ("cpsie f" : : : "memory"); +} + + +/** + \brief Disable FIQ + \details Disables FIQ interrupts by setting the F-bit in the CPSR. + Can only be executed in Privileged modes. + */ +__STATIC_FORCEINLINE void __disable_fault_irq(void) +{ + __ASM volatile ("cpsid f" : : : "memory"); +} + + +/** + \brief Get Base Priority + \details Returns the current value of the Base Priority register. + \return Base Priority register value + */ +__STATIC_FORCEINLINE uint32_t __get_BASEPRI(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, basepri" : "=r" (result) ); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Base Priority (non-secure) + \details Returns the current value of the non-secure Base Priority register when in secure state. + \return Base Priority register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_BASEPRI_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, basepri_ns" : "=r" (result) ); + return(result); +} +#endif + + +/** + \brief Set Base Priority + \details Assigns the given value to the Base Priority register. + \param [in] basePri Base Priority value to set + */ +__STATIC_FORCEINLINE void __set_BASEPRI(uint32_t basePri) +{ + __ASM volatile ("MSR basepri, %0" : : "r" (basePri) : "memory"); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Base Priority (non-secure) + \details Assigns the given value to the non-secure Base Priority register when in secure state. + \param [in] basePri Base Priority value to set + */ +__STATIC_FORCEINLINE void __TZ_set_BASEPRI_NS(uint32_t basePri) +{ + __ASM volatile ("MSR basepri_ns, %0" : : "r" (basePri) : "memory"); +} +#endif + + +/** + \brief Set Base Priority with condition + \details Assigns the given value to the Base Priority register only if BASEPRI masking is disabled, + or the new value increases the BASEPRI priority level. + \param [in] basePri Base Priority value to set + */ +__STATIC_FORCEINLINE void __set_BASEPRI_MAX(uint32_t basePri) +{ + __ASM volatile ("MSR basepri_max, %0" : : "r" (basePri) : "memory"); +} + + +/** + \brief Get Fault Mask + \details Returns the current value of the Fault Mask register. + \return Fault Mask register value + */ +__STATIC_FORCEINLINE uint32_t __get_FAULTMASK(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, faultmask" : "=r" (result) ); + return(result); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Fault Mask (non-secure) + \details Returns the current value of the non-secure Fault Mask register when in secure state. + \return Fault Mask register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_FAULTMASK_NS(void) +{ + uint32_t result; + + __ASM volatile ("MRS %0, faultmask_ns" : "=r" (result) ); + return(result); +} +#endif + + +/** + \brief Set Fault Mask + \details Assigns the given value to the Fault Mask register. + \param [in] faultMask Fault Mask value to set + */ +__STATIC_FORCEINLINE void __set_FAULTMASK(uint32_t faultMask) +{ + __ASM volatile ("MSR faultmask, %0" : : "r" (faultMask) : "memory"); +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Fault Mask (non-secure) + \details Assigns the given value to the non-secure Fault Mask register when in secure state. + \param [in] faultMask Fault Mask value to set + */ +__STATIC_FORCEINLINE void __TZ_set_FAULTMASK_NS(uint32_t faultMask) +{ + __ASM volatile ("MSR faultmask_ns, %0" : : "r" (faultMask) : "memory"); +} +#endif + +#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ + + +#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) + +/** + \brief Get Process Stack Pointer Limit + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence zero is returned always in non-secure + mode. + + \details Returns the current value of the Process Stack Pointer Limit (PSPLIM). + \return PSPLIM Register value + */ +__STATIC_FORCEINLINE uint32_t __get_PSPLIM(void) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + return 0U; +#else + uint32_t result; + __ASM volatile ("MRS %0, psplim" : "=r" (result) ); + return result; +#endif +} + +#if (defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Process Stack Pointer Limit (non-secure) + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence zero is returned always. + + \details Returns the current value of the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. + \return PSPLIM Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_PSPLIM_NS(void) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + return 0U; +#else + uint32_t result; + __ASM volatile ("MRS %0, psplim_ns" : "=r" (result) ); + return result; +#endif +} +#endif + + +/** + \brief Set Process Stack Pointer Limit + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence the write is silently ignored in non-secure + mode. + + \details Assigns the given value to the Process Stack Pointer Limit (PSPLIM). + \param [in] ProcStackPtrLimit Process Stack Pointer Limit value to set + */ +__STATIC_FORCEINLINE void __set_PSPLIM(uint32_t ProcStackPtrLimit) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + (void)ProcStackPtrLimit; +#else + __ASM volatile ("MSR psplim, %0" : : "r" (ProcStackPtrLimit)); +#endif +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Process Stack Pointer (non-secure) + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence the write is silently ignored. + + \details Assigns the given value to the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. + \param [in] ProcStackPtrLimit Process Stack Pointer Limit value to set + */ +__STATIC_FORCEINLINE void __TZ_set_PSPLIM_NS(uint32_t ProcStackPtrLimit) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + (void)ProcStackPtrLimit; +#else + __ASM volatile ("MSR psplim_ns, %0\n" : : "r" (ProcStackPtrLimit)); +#endif +} +#endif + + +/** + \brief Get Main Stack Pointer Limit + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence zero is returned always in non-secure + mode. + + \details Returns the current value of the Main Stack Pointer Limit (MSPLIM). + \return MSPLIM Register value + */ +__STATIC_FORCEINLINE uint32_t __get_MSPLIM(void) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + return 0U; +#else + uint32_t result; + __ASM volatile ("MRS %0, msplim" : "=r" (result) ); + return result; +#endif +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Get Main Stack Pointer Limit (non-secure) + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence zero is returned always. + + \details Returns the current value of the non-secure Main Stack Pointer Limit(MSPLIM) when in secure state. + \return MSPLIM Register value + */ +__STATIC_FORCEINLINE uint32_t __TZ_get_MSPLIM_NS(void) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + return 0U; +#else + uint32_t result; + __ASM volatile ("MRS %0, msplim_ns" : "=r" (result) ); + return result; +#endif +} +#endif + + +/** + \brief Set Main Stack Pointer Limit + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence the write is silently ignored in non-secure + mode. + + \details Assigns the given value to the Main Stack Pointer Limit (MSPLIM). + \param [in] MainStackPtrLimit Main Stack Pointer Limit value to set + */ +__STATIC_FORCEINLINE void __set_MSPLIM(uint32_t MainStackPtrLimit) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + (void)MainStackPtrLimit; +#else + __ASM volatile ("MSR msplim, %0" : : "r" (MainStackPtrLimit)); +#endif +} + + +#if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) +/** + \brief Set Main Stack Pointer Limit (non-secure) + Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + Stack Pointer Limit register hence the write is silently ignored. + + \details Assigns the given value to the non-secure Main Stack Pointer Limit (MSPLIM) when in secure state. + \param [in] MainStackPtrLimit Main Stack Pointer value to set + */ +__STATIC_FORCEINLINE void __TZ_set_MSPLIM_NS(uint32_t MainStackPtrLimit) +{ +#if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + (void)MainStackPtrLimit; +#else + __ASM volatile ("MSR msplim_ns, %0" : : "r" (MainStackPtrLimit)); +#endif +} +#endif + +#endif /* ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ + + +/** + \brief Get FPSCR + \details Returns the current value of the Floating Point Status/Control register. + \return Floating Point Status/Control register value + */ +__STATIC_FORCEINLINE uint32_t __get_FPSCR(void) +{ +#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ + (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) +#if __has_builtin(__builtin_arm_get_fpscr) +// Re-enable using built-in when GCC has been fixed +// || (__GNUC__ > 7) || (__GNUC__ == 7 && __GNUC_MINOR__ >= 2) + /* see https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00443.html */ + return __builtin_arm_get_fpscr(); +#else + uint32_t result; + + __ASM volatile ("VMRS %0, fpscr" : "=r" (result) ); + return(result); +#endif +#else + return(0U); +#endif +} + + +/** + \brief Set FPSCR + \details Assigns the given value to the Floating Point Status/Control register. + \param [in] fpscr Floating Point Status/Control value to set + */ +__STATIC_FORCEINLINE void __set_FPSCR(uint32_t fpscr) +{ +#if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ + (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) +#if __has_builtin(__builtin_arm_set_fpscr) +// Re-enable using built-in when GCC has been fixed +// || (__GNUC__ > 7) || (__GNUC__ == 7 && __GNUC_MINOR__ >= 2) + /* see https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00443.html */ + __builtin_arm_set_fpscr(fpscr); +#else + __ASM volatile ("VMSR fpscr, %0" : : "r" (fpscr) : "vfpcc", "memory"); +#endif +#else + (void)fpscr; +#endif +} + + +/*@} end of CMSIS_Core_RegAccFunctions */ + + +/* ########################## Core Instruction Access ######################### */ +/** \defgroup CMSIS_Core_InstructionInterface CMSIS Core Instruction Interface + Access to dedicated instructions + @{ +*/ + +/* Define macros for porting to both thumb1 and thumb2. + * For thumb1, use low register (r0-r7), specified by constraint "l" + * Otherwise, use general registers, specified by constraint "r" */ +#if defined (__thumb__) && !defined (__thumb2__) +#define __CMSIS_GCC_OUT_REG(r) "=l" (r) +#define __CMSIS_GCC_RW_REG(r) "+l" (r) +#define __CMSIS_GCC_USE_REG(r) "l" (r) +#else +#define __CMSIS_GCC_OUT_REG(r) "=r" (r) +#define __CMSIS_GCC_RW_REG(r) "+r" (r) +#define __CMSIS_GCC_USE_REG(r) "r" (r) +#endif + +/** + \brief No Operation + \details No Operation does nothing. This instruction can be used for code alignment purposes. + */ +#define __NOP() __ASM volatile ("nop") + +/** + \brief Wait For Interrupt + \details Wait For Interrupt is a hint instruction that suspends execution until one of a number of events occurs. + */ +#define __WFI() __ASM volatile ("wfi") + + +/** + \brief Wait For Event + \details Wait For Event is a hint instruction that permits the processor to enter + a low-power state until one of a number of events occurs. + */ +#define __WFE() __ASM volatile ("wfe") + + +/** + \brief Send Event + \details Send Event is a hint instruction. It causes an event to be signaled to the CPU. + */ +#define __SEV() __ASM volatile ("sev") + + +/** + \brief Instruction Synchronization Barrier + \details Instruction Synchronization Barrier flushes the pipeline in the processor, + so that all instructions following the ISB are fetched from cache or memory, + after the instruction has been completed. + */ +__STATIC_FORCEINLINE void __ISB(void) +{ + __ASM volatile ("isb 0xF":::"memory"); +} + + +/** + \brief Data Synchronization Barrier + \details Acts as a special kind of Data Memory Barrier. + It completes when all explicit memory accesses before this instruction complete. + */ +__STATIC_FORCEINLINE void __DSB(void) +{ + __ASM volatile ("dsb 0xF":::"memory"); +} + + +/** + \brief Data Memory Barrier + \details Ensures the apparent order of the explicit memory operations before + and after the instruction, without ensuring their completion. + */ +__STATIC_FORCEINLINE void __DMB(void) +{ + __ASM volatile ("dmb 0xF":::"memory"); +} + + +/** + \brief Reverse byte order (32 bit) + \details Reverses the byte order in unsigned integer value. For example, 0x12345678 becomes 0x78563412. + \param [in] value Value to reverse + \return Reversed value + */ +__STATIC_FORCEINLINE uint32_t __REV(uint32_t value) +{ +#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5) + return __builtin_bswap32(value); +#else + uint32_t result; + + __ASM volatile ("rev %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); + return result; +#endif +} + + +/** + \brief Reverse byte order (16 bit) + \details Reverses the byte order within each halfword of a word. For example, 0x12345678 becomes 0x34127856. + \param [in] value Value to reverse + \return Reversed value + */ +__STATIC_FORCEINLINE uint32_t __REV16(uint32_t value) +{ + uint32_t result; + + __ASM volatile ("rev16 %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); + return result; +} + + +/** + \brief Reverse byte order (16 bit) + \details Reverses the byte order in a 16-bit value and returns the signed 16-bit result. For example, 0x0080 becomes 0x8000. + \param [in] value Value to reverse + \return Reversed value + */ +__STATIC_FORCEINLINE int16_t __REVSH(int16_t value) +{ +#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) + return (int16_t)__builtin_bswap16(value); +#else + int16_t result; + + __ASM volatile ("revsh %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); + return result; +#endif +} + + +/** + \brief Rotate Right in unsigned value (32 bit) + \details Rotate Right (immediate) provides the value of the contents of a register rotated by a variable number of bits. + \param [in] op1 Value to rotate + \param [in] op2 Number of Bits to rotate + \return Rotated value + */ +__STATIC_FORCEINLINE uint32_t __ROR(uint32_t op1, uint32_t op2) +{ + op2 %= 32U; + if (op2 == 0U) + { + return op1; + } + return (op1 >> op2) | (op1 << (32U - op2)); +} + + +/** + \brief Breakpoint + \details Causes the processor to enter Debug state. + Debug tools can use this to investigate system state when the instruction at a particular address is reached. + \param [in] value is ignored by the processor. + If required, a debugger can use it to store additional information about the breakpoint. + */ +#define __BKPT(value) __ASM volatile ("bkpt "#value) + + +/** + \brief Reverse bit order of value + \details Reverses the bit order of the given value. + \param [in] value Value to reverse + \return Reversed value + */ +__STATIC_FORCEINLINE uint32_t __RBIT(uint32_t value) +{ + uint32_t result; + +#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) + __ASM volatile ("rbit %0, %1" : "=r" (result) : "r" (value) ); +#else + uint32_t s = (4U /*sizeof(v)*/ * 8U) - 1U; /* extra shift needed at end */ + + result = value; /* r will be reversed bits of v; first get LSB of v */ + for (value >>= 1U; value != 0U; value >>= 1U) + { + result <<= 1U; + result |= value & 1U; + s--; + } + result <<= s; /* shift when v's highest bits are zero */ +#endif + return result; +} + + +/** + \brief Count leading zeros + \details Counts the number of leading zeros of a data value. + \param [in] value Value to count the leading zeros + \return number of leading zeros in value + */ +#define __CLZ (uint8_t)__builtin_clz + + +#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) +/** + \brief LDR Exclusive (8 bit) + \details Executes a exclusive LDR instruction for 8 bit value. + \param [in] ptr Pointer to data + \return value of type uint8_t at (*ptr) + */ +__STATIC_FORCEINLINE uint8_t __LDREXB(volatile uint8_t *addr) +{ + uint32_t result; + +#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) + __ASM volatile ("ldrexb %0, %1" : "=r" (result) : "Q" (*addr) ); +#else + /* Prior to GCC 4.8, "Q" will be expanded to [rx, #0] which is not + accepted by assembler. So has to use following less efficient pattern. + */ + __ASM volatile ("ldrexb %0, [%1]" : "=r" (result) : "r" (addr) : "memory" ); +#endif + return ((uint8_t) result); /* Add explicit type cast here */ +} + + +/** + \brief LDR Exclusive (16 bit) + \details Executes a exclusive LDR instruction for 16 bit values. + \param [in] ptr Pointer to data + \return value of type uint16_t at (*ptr) + */ +__STATIC_FORCEINLINE uint16_t __LDREXH(volatile uint16_t *addr) +{ + uint32_t result; + +#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) + __ASM volatile ("ldrexh %0, %1" : "=r" (result) : "Q" (*addr) ); +#else + /* Prior to GCC 4.8, "Q" will be expanded to [rx, #0] which is not + accepted by assembler. So has to use following less efficient pattern. + */ + __ASM volatile ("ldrexh %0, [%1]" : "=r" (result) : "r" (addr) : "memory" ); +#endif + return ((uint16_t) result); /* Add explicit type cast here */ +} + + +/** + \brief LDR Exclusive (32 bit) + \details Executes a exclusive LDR instruction for 32 bit values. + \param [in] ptr Pointer to data + \return value of type uint32_t at (*ptr) + */ +__STATIC_FORCEINLINE uint32_t __LDREXW(volatile uint32_t *addr) +{ + uint32_t result; + + __ASM volatile ("ldrex %0, %1" : "=r" (result) : "Q" (*addr) ); + return(result); +} + + +/** + \brief STR Exclusive (8 bit) + \details Executes a exclusive STR instruction for 8 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +__STATIC_FORCEINLINE uint32_t __STREXB(uint8_t value, volatile uint8_t *addr) +{ + uint32_t result; + + __ASM volatile ("strexb %0, %2, %1" : "=&r" (result), "=Q" (*addr) : "r" ((uint32_t)value) ); + return(result); +} + + +/** + \brief STR Exclusive (16 bit) + \details Executes a exclusive STR instruction for 16 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +__STATIC_FORCEINLINE uint32_t __STREXH(uint16_t value, volatile uint16_t *addr) +{ + uint32_t result; + + __ASM volatile ("strexh %0, %2, %1" : "=&r" (result), "=Q" (*addr) : "r" ((uint32_t)value) ); + return(result); +} + + +/** + \brief STR Exclusive (32 bit) + \details Executes a exclusive STR instruction for 32 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +__STATIC_FORCEINLINE uint32_t __STREXW(uint32_t value, volatile uint32_t *addr) +{ + uint32_t result; + + __ASM volatile ("strex %0, %2, %1" : "=&r" (result), "=Q" (*addr) : "r" (value) ); + return(result); +} + + +/** + \brief Remove the exclusive lock + \details Removes the exclusive lock which is created by LDREX. + */ +__STATIC_FORCEINLINE void __CLREX(void) +{ + __ASM volatile ("clrex" ::: "memory"); +} + +#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ + + +#if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) +/** + \brief Signed Saturate + \details Saturates a signed value. + \param [in] ARG1 Value to be saturated + \param [in] ARG2 Bit position to saturate to (1..32) + \return Saturated value + */ +#define __SSAT(ARG1,ARG2) \ +__extension__ \ +({ \ + int32_t __RES, __ARG1 = (ARG1); \ + __ASM ("ssat %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ + __RES; \ + }) + + +/** + \brief Unsigned Saturate + \details Saturates an unsigned value. + \param [in] ARG1 Value to be saturated + \param [in] ARG2 Bit position to saturate to (0..31) + \return Saturated value + */ +#define __USAT(ARG1,ARG2) \ + __extension__ \ +({ \ + uint32_t __RES, __ARG1 = (ARG1); \ + __ASM ("usat %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ + __RES; \ + }) + + +/** + \brief Rotate Right with Extend (32 bit) + \details Moves each bit of a bitstring right by one bit. + The carry input is shifted in at the left end of the bitstring. + \param [in] value Value to rotate + \return Rotated value + */ +__STATIC_FORCEINLINE uint32_t __RRX(uint32_t value) +{ + uint32_t result; + + __ASM volatile ("rrx %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); + return(result); +} + + +/** + \brief LDRT Unprivileged (8 bit) + \details Executes a Unprivileged LDRT instruction for 8 bit value. + \param [in] ptr Pointer to data + \return value of type uint8_t at (*ptr) + */ +__STATIC_FORCEINLINE uint8_t __LDRBT(volatile uint8_t *ptr) +{ + uint32_t result; + +#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) + __ASM volatile ("ldrbt %0, %1" : "=r" (result) : "Q" (*ptr) ); +#else + /* Prior to GCC 4.8, "Q" will be expanded to [rx, #0] which is not + accepted by assembler. So has to use following less efficient pattern. + */ + __ASM volatile ("ldrbt %0, [%1]" : "=r" (result) : "r" (ptr) : "memory" ); +#endif + return ((uint8_t) result); /* Add explicit type cast here */ +} + + +/** + \brief LDRT Unprivileged (16 bit) + \details Executes a Unprivileged LDRT instruction for 16 bit values. + \param [in] ptr Pointer to data + \return value of type uint16_t at (*ptr) + */ +__STATIC_FORCEINLINE uint16_t __LDRHT(volatile uint16_t *ptr) +{ + uint32_t result; + +#if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) + __ASM volatile ("ldrht %0, %1" : "=r" (result) : "Q" (*ptr) ); +#else + /* Prior to GCC 4.8, "Q" will be expanded to [rx, #0] which is not + accepted by assembler. So has to use following less efficient pattern. + */ + __ASM volatile ("ldrht %0, [%1]" : "=r" (result) : "r" (ptr) : "memory" ); +#endif + return ((uint16_t) result); /* Add explicit type cast here */ +} + + +/** + \brief LDRT Unprivileged (32 bit) + \details Executes a Unprivileged LDRT instruction for 32 bit values. + \param [in] ptr Pointer to data + \return value of type uint32_t at (*ptr) + */ +__STATIC_FORCEINLINE uint32_t __LDRT(volatile uint32_t *ptr) +{ + uint32_t result; + + __ASM volatile ("ldrt %0, %1" : "=r" (result) : "Q" (*ptr) ); + return(result); +} + + +/** + \brief STRT Unprivileged (8 bit) + \details Executes a Unprivileged STRT instruction for 8 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STRBT(uint8_t value, volatile uint8_t *ptr) +{ + __ASM volatile ("strbt %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); +} + + +/** + \brief STRT Unprivileged (16 bit) + \details Executes a Unprivileged STRT instruction for 16 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STRHT(uint16_t value, volatile uint16_t *ptr) +{ + __ASM volatile ("strht %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); +} + + +/** + \brief STRT Unprivileged (32 bit) + \details Executes a Unprivileged STRT instruction for 32 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STRT(uint32_t value, volatile uint32_t *ptr) +{ + __ASM volatile ("strt %1, %0" : "=Q" (*ptr) : "r" (value) ); +} + +#else /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ + +/** + \brief Signed Saturate + \details Saturates a signed value. + \param [in] value Value to be saturated + \param [in] sat Bit position to saturate to (1..32) + \return Saturated value + */ +__STATIC_FORCEINLINE int32_t __SSAT(int32_t val, uint32_t sat) +{ + if ((sat >= 1U) && (sat <= 32U)) + { + const int32_t max = (int32_t)((1U << (sat - 1U)) - 1U); + const int32_t min = -1 - max ; + if (val > max) + { + return max; + } + else if (val < min) + { + return min; + } + } + return val; +} + +/** + \brief Unsigned Saturate + \details Saturates an unsigned value. + \param [in] value Value to be saturated + \param [in] sat Bit position to saturate to (0..31) + \return Saturated value + */ +__STATIC_FORCEINLINE uint32_t __USAT(int32_t val, uint32_t sat) +{ + if (sat <= 31U) + { + const uint32_t max = ((1U << sat) - 1U); + if (val > (int32_t)max) + { + return max; + } + else if (val < 0) + { + return 0U; + } + } + return (uint32_t)val; +} + +#endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \ + (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \ + (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ + + +#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) +/** + \brief Load-Acquire (8 bit) + \details Executes a LDAB instruction for 8 bit value. + \param [in] ptr Pointer to data + \return value of type uint8_t at (*ptr) + */ +__STATIC_FORCEINLINE uint8_t __LDAB(volatile uint8_t *ptr) +{ + uint32_t result; + + __ASM volatile ("ldab %0, %1" : "=r" (result) : "Q" (*ptr) ); + return ((uint8_t) result); +} + + +/** + \brief Load-Acquire (16 bit) + \details Executes a LDAH instruction for 16 bit values. + \param [in] ptr Pointer to data + \return value of type uint16_t at (*ptr) + */ +__STATIC_FORCEINLINE uint16_t __LDAH(volatile uint16_t *ptr) +{ + uint32_t result; + + __ASM volatile ("ldah %0, %1" : "=r" (result) : "Q" (*ptr) ); + return ((uint16_t) result); +} + + +/** + \brief Load-Acquire (32 bit) + \details Executes a LDA instruction for 32 bit values. + \param [in] ptr Pointer to data + \return value of type uint32_t at (*ptr) + */ +__STATIC_FORCEINLINE uint32_t __LDA(volatile uint32_t *ptr) +{ + uint32_t result; + + __ASM volatile ("lda %0, %1" : "=r" (result) : "Q" (*ptr) ); + return(result); +} + + +/** + \brief Store-Release (8 bit) + \details Executes a STLB instruction for 8 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STLB(uint8_t value, volatile uint8_t *ptr) +{ + __ASM volatile ("stlb %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); +} + + +/** + \brief Store-Release (16 bit) + \details Executes a STLH instruction for 16 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STLH(uint16_t value, volatile uint16_t *ptr) +{ + __ASM volatile ("stlh %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); +} + + +/** + \brief Store-Release (32 bit) + \details Executes a STL instruction for 32 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + */ +__STATIC_FORCEINLINE void __STL(uint32_t value, volatile uint32_t *ptr) +{ + __ASM volatile ("stl %1, %0" : "=Q" (*ptr) : "r" ((uint32_t)value) ); +} + + +/** + \brief Load-Acquire Exclusive (8 bit) + \details Executes a LDAB exclusive instruction for 8 bit value. + \param [in] ptr Pointer to data + \return value of type uint8_t at (*ptr) + */ +__STATIC_FORCEINLINE uint8_t __LDAEXB(volatile uint8_t *ptr) +{ + uint32_t result; + + __ASM volatile ("ldaexb %0, %1" : "=r" (result) : "Q" (*ptr) ); + return ((uint8_t) result); +} + + +/** + \brief Load-Acquire Exclusive (16 bit) + \details Executes a LDAH exclusive instruction for 16 bit values. + \param [in] ptr Pointer to data + \return value of type uint16_t at (*ptr) + */ +__STATIC_FORCEINLINE uint16_t __LDAEXH(volatile uint16_t *ptr) +{ + uint32_t result; + + __ASM volatile ("ldaexh %0, %1" : "=r" (result) : "Q" (*ptr) ); + return ((uint16_t) result); +} + + +/** + \brief Load-Acquire Exclusive (32 bit) + \details Executes a LDA exclusive instruction for 32 bit values. + \param [in] ptr Pointer to data + \return value of type uint32_t at (*ptr) + */ +__STATIC_FORCEINLINE uint32_t __LDAEX(volatile uint32_t *ptr) +{ + uint32_t result; + + __ASM volatile ("ldaex %0, %1" : "=r" (result) : "Q" (*ptr) ); + return(result); +} + + +/** + \brief Store-Release Exclusive (8 bit) + \details Executes a STLB exclusive instruction for 8 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +__STATIC_FORCEINLINE uint32_t __STLEXB(uint8_t value, volatile uint8_t *ptr) +{ + uint32_t result; + + __ASM volatile ("stlexb %0, %2, %1" : "=&r" (result), "=Q" (*ptr) : "r" ((uint32_t)value) ); + return(result); +} + + +/** + \brief Store-Release Exclusive (16 bit) + \details Executes a STLH exclusive instruction for 16 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +__STATIC_FORCEINLINE uint32_t __STLEXH(uint16_t value, volatile uint16_t *ptr) +{ + uint32_t result; + + __ASM volatile ("stlexh %0, %2, %1" : "=&r" (result), "=Q" (*ptr) : "r" ((uint32_t)value) ); + return(result); +} + + +/** + \brief Store-Release Exclusive (32 bit) + \details Executes a STL exclusive instruction for 32 bit values. + \param [in] value Value to store + \param [in] ptr Pointer to location + \return 0 Function succeeded + \return 1 Function failed + */ +__STATIC_FORCEINLINE uint32_t __STLEX(uint32_t value, volatile uint32_t *ptr) +{ + uint32_t result; + + __ASM volatile ("stlex %0, %2, %1" : "=&r" (result), "=Q" (*ptr) : "r" ((uint32_t)value) ); + return(result); +} + +#endif /* ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */ + +/*@}*/ /* end of group CMSIS_Core_InstructionInterface */ + + +/* ################### Compiler specific Intrinsics ########################### */ +/** \defgroup CMSIS_SIMD_intrinsics CMSIS SIMD Intrinsics + Access to dedicated SIMD instructions + @{ +*/ + +#if (defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1)) + +__STATIC_FORCEINLINE uint32_t __SADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("sadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHADD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + + +__STATIC_FORCEINLINE uint32_t __SSUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("ssub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QSUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHSUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __USUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("usub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQSUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHSUB8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhsub8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + + +__STATIC_FORCEINLINE uint32_t __SADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("sadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHADD16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhadd16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SSUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("ssub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QSUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHSUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __USUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("usub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQSUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHSUB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhsub16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("sasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHASX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhasx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SSAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("ssax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __QSAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("qsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SHSAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("shsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __USAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("usax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UQSAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uqsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UHSAX(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uhsax %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __USAD8(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("usad8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __USADA8(uint32_t op1, uint32_t op2, uint32_t op3) +{ + uint32_t result; + + __ASM volatile ("usada8 %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +#define __SSAT16(ARG1,ARG2) \ +({ \ + int32_t __RES, __ARG1 = (ARG1); \ + __ASM ("ssat16 %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ + __RES; \ + }) + +#define __USAT16(ARG1,ARG2) \ +({ \ + uint32_t __RES, __ARG1 = (ARG1); \ + __ASM ("usat16 %0, %1, %2" : "=r" (__RES) : "I" (ARG2), "r" (__ARG1) ); \ + __RES; \ + }) + +__STATIC_FORCEINLINE uint32_t __UXTB16(uint32_t op1) +{ + uint32_t result; + + __ASM volatile ("uxtb16 %0, %1" : "=r" (result) : "r" (op1)); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __UXTAB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("uxtab16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SXTB16(uint32_t op1) +{ + uint32_t result; + + __ASM volatile ("sxtb16 %0, %1" : "=r" (result) : "r" (op1)); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SXTAB16(uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("sxtab16 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMUAD (uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("smuad %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMUADX (uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("smuadx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMLAD (uint32_t op1, uint32_t op2, uint32_t op3) +{ + uint32_t result; + + __ASM volatile ("smlad %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMLADX (uint32_t op1, uint32_t op2, uint32_t op3) +{ + uint32_t result; + + __ASM volatile ("smladx %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +__STATIC_FORCEINLINE uint64_t __SMLALD (uint32_t op1, uint32_t op2, uint64_t acc) +{ + union llreg_u{ + uint32_t w32[2]; + uint64_t w64; + } llr; + llr.w64 = acc; + +#ifndef __ARMEB__ /* Little endian */ + __ASM volatile ("smlald %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); +#else /* Big endian */ + __ASM volatile ("smlald %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); +#endif + + return(llr.w64); +} + +__STATIC_FORCEINLINE uint64_t __SMLALDX (uint32_t op1, uint32_t op2, uint64_t acc) +{ + union llreg_u{ + uint32_t w32[2]; + uint64_t w64; + } llr; + llr.w64 = acc; + +#ifndef __ARMEB__ /* Little endian */ + __ASM volatile ("smlaldx %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); +#else /* Big endian */ + __ASM volatile ("smlaldx %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); +#endif + + return(llr.w64); +} + +__STATIC_FORCEINLINE uint32_t __SMUSD (uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("smusd %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMUSDX (uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("smusdx %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMLSD (uint32_t op1, uint32_t op2, uint32_t op3) +{ + uint32_t result; + + __ASM volatile ("smlsd %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +__STATIC_FORCEINLINE uint32_t __SMLSDX (uint32_t op1, uint32_t op2, uint32_t op3) +{ + uint32_t result; + + __ASM volatile ("smlsdx %0, %1, %2, %3" : "=r" (result) : "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +__STATIC_FORCEINLINE uint64_t __SMLSLD (uint32_t op1, uint32_t op2, uint64_t acc) +{ + union llreg_u{ + uint32_t w32[2]; + uint64_t w64; + } llr; + llr.w64 = acc; + +#ifndef __ARMEB__ /* Little endian */ + __ASM volatile ("smlsld %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); +#else /* Big endian */ + __ASM volatile ("smlsld %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); +#endif + + return(llr.w64); +} + +__STATIC_FORCEINLINE uint64_t __SMLSLDX (uint32_t op1, uint32_t op2, uint64_t acc) +{ + union llreg_u{ + uint32_t w32[2]; + uint64_t w64; + } llr; + llr.w64 = acc; + +#ifndef __ARMEB__ /* Little endian */ + __ASM volatile ("smlsldx %0, %1, %2, %3" : "=r" (llr.w32[0]), "=r" (llr.w32[1]): "r" (op1), "r" (op2) , "0" (llr.w32[0]), "1" (llr.w32[1]) ); +#else /* Big endian */ + __ASM volatile ("smlsldx %0, %1, %2, %3" : "=r" (llr.w32[1]), "=r" (llr.w32[0]): "r" (op1), "r" (op2) , "0" (llr.w32[1]), "1" (llr.w32[0]) ); +#endif + + return(llr.w64); +} + +__STATIC_FORCEINLINE uint32_t __SEL (uint32_t op1, uint32_t op2) +{ + uint32_t result; + + __ASM volatile ("sel %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE int32_t __QADD( int32_t op1, int32_t op2) +{ + int32_t result; + + __ASM volatile ("qadd %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__STATIC_FORCEINLINE int32_t __QSUB( int32_t op1, int32_t op2) +{ + int32_t result; + + __ASM volatile ("qsub %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +#if 0 +#define __PKHBT(ARG1,ARG2,ARG3) \ +({ \ + uint32_t __RES, __ARG1 = (ARG1), __ARG2 = (ARG2); \ + __ASM ("pkhbt %0, %1, %2, lsl %3" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2), "I" (ARG3) ); \ + __RES; \ + }) + +#define __PKHTB(ARG1,ARG2,ARG3) \ +({ \ + uint32_t __RES, __ARG1 = (ARG1), __ARG2 = (ARG2); \ + if (ARG3 == 0) \ + __ASM ("pkhtb %0, %1, %2" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2) ); \ + else \ + __ASM ("pkhtb %0, %1, %2, asr %3" : "=r" (__RES) : "r" (__ARG1), "r" (__ARG2), "I" (ARG3) ); \ + __RES; \ + }) +#endif + +#define __PKHBT(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0x0000FFFFUL) | \ + ((((uint32_t)(ARG2)) << (ARG3)) & 0xFFFF0000UL) ) + +#define __PKHTB(ARG1,ARG2,ARG3) ( ((((uint32_t)(ARG1)) ) & 0xFFFF0000UL) | \ + ((((uint32_t)(ARG2)) >> (ARG3)) & 0x0000FFFFUL) ) + +__STATIC_FORCEINLINE int32_t __SMMLA (int32_t op1, int32_t op2, int32_t op3) +{ + int32_t result; + + __ASM volatile ("smmla %0, %1, %2, %3" : "=r" (result): "r" (op1), "r" (op2), "r" (op3) ); + return(result); +} + +#endif /* (__ARM_FEATURE_DSP == 1) */ +/*@} end of group CMSIS_SIMD_intrinsics */ + + +#pragma GCC diagnostic pop + +#endif /* __CMSIS_GCC_H */ diff --git a/stm32f103/Drivers/CMSIS/Include/cmsis_iccarm.h b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_iccarm.h similarity index 96% rename from stm32f103/Drivers/CMSIS/Include/cmsis_iccarm.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_iccarm.h index 3c90a2c..11c4af0 100644 --- a/stm32f103/Drivers/CMSIS/Include/cmsis_iccarm.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_iccarm.h @@ -1,935 +1,935 @@ -/**************************************************************************//** - * @file cmsis_iccarm.h - * @brief CMSIS compiler ICCARM (IAR Compiler for Arm) header file - * @version V5.0.7 - * @date 19. June 2018 - ******************************************************************************/ - -//------------------------------------------------------------------------------ -// -// Copyright (c) 2017-2018 IAR Systems -// -// Licensed under the Apache License, Version 2.0 (the "License") -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -//------------------------------------------------------------------------------ - - -#ifndef __CMSIS_ICCARM_H__ -#define __CMSIS_ICCARM_H__ - -#ifndef __ICCARM__ - #error This file should only be compiled by ICCARM -#endif - -#pragma system_include - -#define __IAR_FT _Pragma("inline=forced") __intrinsic - -#if (__VER__ >= 8000000) - #define __ICCARM_V8 1 -#else - #define __ICCARM_V8 0 -#endif - -#ifndef __ALIGNED - #if __ICCARM_V8 - #define __ALIGNED(x) __attribute__((aligned(x))) - #elif (__VER__ >= 7080000) - /* Needs IAR language extensions */ - #define __ALIGNED(x) __attribute__((aligned(x))) - #else - #warning No compiler specific solution for __ALIGNED.__ALIGNED is ignored. - #define __ALIGNED(x) - #endif -#endif - - -/* Define compiler macros for CPU architecture, used in CMSIS 5. - */ -#if __ARM_ARCH_6M__ || __ARM_ARCH_7M__ || __ARM_ARCH_7EM__ || __ARM_ARCH_8M_BASE__ || __ARM_ARCH_8M_MAIN__ -/* Macros already defined */ -#else - #if defined(__ARM8M_MAINLINE__) || defined(__ARM8EM_MAINLINE__) - #define __ARM_ARCH_8M_MAIN__ 1 - #elif defined(__ARM8M_BASELINE__) - #define __ARM_ARCH_8M_BASE__ 1 - #elif defined(__ARM_ARCH_PROFILE) && __ARM_ARCH_PROFILE == 'M' - #if __ARM_ARCH == 6 - #define __ARM_ARCH_6M__ 1 - #elif __ARM_ARCH == 7 - #if __ARM_FEATURE_DSP - #define __ARM_ARCH_7EM__ 1 - #else - #define __ARM_ARCH_7M__ 1 - #endif - #endif /* __ARM_ARCH */ - #endif /* __ARM_ARCH_PROFILE == 'M' */ -#endif - -/* Alternativ core deduction for older ICCARM's */ -#if !defined(__ARM_ARCH_6M__) && !defined(__ARM_ARCH_7M__) && !defined(__ARM_ARCH_7EM__) && \ - !defined(__ARM_ARCH_8M_BASE__) && !defined(__ARM_ARCH_8M_MAIN__) - #if defined(__ARM6M__) && (__CORE__ == __ARM6M__) - #define __ARM_ARCH_6M__ 1 - #elif defined(__ARM7M__) && (__CORE__ == __ARM7M__) - #define __ARM_ARCH_7M__ 1 - #elif defined(__ARM7EM__) && (__CORE__ == __ARM7EM__) - #define __ARM_ARCH_7EM__ 1 - #elif defined(__ARM8M_BASELINE__) && (__CORE == __ARM8M_BASELINE__) - #define __ARM_ARCH_8M_BASE__ 1 - #elif defined(__ARM8M_MAINLINE__) && (__CORE == __ARM8M_MAINLINE__) - #define __ARM_ARCH_8M_MAIN__ 1 - #elif defined(__ARM8EM_MAINLINE__) && (__CORE == __ARM8EM_MAINLINE__) - #define __ARM_ARCH_8M_MAIN__ 1 - #else - #error "Unknown target." - #endif -#endif - - - -#if defined(__ARM_ARCH_6M__) && __ARM_ARCH_6M__==1 - #define __IAR_M0_FAMILY 1 -#elif defined(__ARM_ARCH_8M_BASE__) && __ARM_ARCH_8M_BASE__==1 - #define __IAR_M0_FAMILY 1 -#else - #define __IAR_M0_FAMILY 0 -#endif - - -#ifndef __ASM - #define __ASM __asm -#endif - -#ifndef __INLINE - #define __INLINE inline -#endif - -#ifndef __NO_RETURN - #if __ICCARM_V8 - #define __NO_RETURN __attribute__((__noreturn__)) - #else - #define __NO_RETURN _Pragma("object_attribute=__noreturn") - #endif -#endif - -#ifndef __PACKED - #if __ICCARM_V8 - #define __PACKED __attribute__((packed, aligned(1))) - #else - /* Needs IAR language extensions */ - #define __PACKED __packed - #endif -#endif - -#ifndef __PACKED_STRUCT - #if __ICCARM_V8 - #define __PACKED_STRUCT struct __attribute__((packed, aligned(1))) - #else - /* Needs IAR language extensions */ - #define __PACKED_STRUCT __packed struct - #endif -#endif - -#ifndef __PACKED_UNION - #if __ICCARM_V8 - #define __PACKED_UNION union __attribute__((packed, aligned(1))) - #else - /* Needs IAR language extensions */ - #define __PACKED_UNION __packed union - #endif -#endif - -#ifndef __RESTRICT - #define __RESTRICT __restrict -#endif - -#ifndef __STATIC_INLINE - #define __STATIC_INLINE static inline -#endif - -#ifndef __FORCEINLINE - #define __FORCEINLINE _Pragma("inline=forced") -#endif - -#ifndef __STATIC_FORCEINLINE - #define __STATIC_FORCEINLINE __FORCEINLINE __STATIC_INLINE -#endif - -#ifndef __UNALIGNED_UINT16_READ -#pragma language=save -#pragma language=extended -__IAR_FT uint16_t __iar_uint16_read(void const *ptr) -{ - return *(__packed uint16_t*)(ptr); -} -#pragma language=restore -#define __UNALIGNED_UINT16_READ(PTR) __iar_uint16_read(PTR) -#endif - - -#ifndef __UNALIGNED_UINT16_WRITE -#pragma language=save -#pragma language=extended -__IAR_FT void __iar_uint16_write(void const *ptr, uint16_t val) -{ - *(__packed uint16_t*)(ptr) = val;; -} -#pragma language=restore -#define __UNALIGNED_UINT16_WRITE(PTR,VAL) __iar_uint16_write(PTR,VAL) -#endif - -#ifndef __UNALIGNED_UINT32_READ -#pragma language=save -#pragma language=extended -__IAR_FT uint32_t __iar_uint32_read(void const *ptr) -{ - return *(__packed uint32_t*)(ptr); -} -#pragma language=restore -#define __UNALIGNED_UINT32_READ(PTR) __iar_uint32_read(PTR) -#endif - -#ifndef __UNALIGNED_UINT32_WRITE -#pragma language=save -#pragma language=extended -__IAR_FT void __iar_uint32_write(void const *ptr, uint32_t val) -{ - *(__packed uint32_t*)(ptr) = val;; -} -#pragma language=restore -#define __UNALIGNED_UINT32_WRITE(PTR,VAL) __iar_uint32_write(PTR,VAL) -#endif - -#ifndef __UNALIGNED_UINT32 /* deprecated */ -#pragma language=save -#pragma language=extended -__packed struct __iar_u32 { uint32_t v; }; -#pragma language=restore -#define __UNALIGNED_UINT32(PTR) (((struct __iar_u32 *)(PTR))->v) -#endif - -#ifndef __USED - #if __ICCARM_V8 - #define __USED __attribute__((used)) - #else - #define __USED _Pragma("__root") - #endif -#endif - -#ifndef __WEAK - #if __ICCARM_V8 - #define __WEAK __attribute__((weak)) - #else - #define __WEAK _Pragma("__weak") - #endif -#endif - - -#ifndef __ICCARM_INTRINSICS_VERSION__ - #define __ICCARM_INTRINSICS_VERSION__ 0 -#endif - -#if __ICCARM_INTRINSICS_VERSION__ == 2 - - #if defined(__CLZ) - #undef __CLZ - #endif - #if defined(__REVSH) - #undef __REVSH - #endif - #if defined(__RBIT) - #undef __RBIT - #endif - #if defined(__SSAT) - #undef __SSAT - #endif - #if defined(__USAT) - #undef __USAT - #endif - - #include "iccarm_builtin.h" - - #define __disable_fault_irq __iar_builtin_disable_fiq - #define __disable_irq __iar_builtin_disable_interrupt - #define __enable_fault_irq __iar_builtin_enable_fiq - #define __enable_irq __iar_builtin_enable_interrupt - #define __arm_rsr __iar_builtin_rsr - #define __arm_wsr __iar_builtin_wsr - - - #define __get_APSR() (__arm_rsr("APSR")) - #define __get_BASEPRI() (__arm_rsr("BASEPRI")) - #define __get_CONTROL() (__arm_rsr("CONTROL")) - #define __get_FAULTMASK() (__arm_rsr("FAULTMASK")) - - #if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ - (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) - #define __get_FPSCR() (__arm_rsr("FPSCR")) - #define __set_FPSCR(VALUE) (__arm_wsr("FPSCR", (VALUE))) - #else - #define __get_FPSCR() ( 0 ) - #define __set_FPSCR(VALUE) ((void)VALUE) - #endif - - #define __get_IPSR() (__arm_rsr("IPSR")) - #define __get_MSP() (__arm_rsr("MSP")) - #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - #define __get_MSPLIM() (0U) - #else - #define __get_MSPLIM() (__arm_rsr("MSPLIM")) - #endif - #define __get_PRIMASK() (__arm_rsr("PRIMASK")) - #define __get_PSP() (__arm_rsr("PSP")) - - #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - #define __get_PSPLIM() (0U) - #else - #define __get_PSPLIM() (__arm_rsr("PSPLIM")) - #endif - - #define __get_xPSR() (__arm_rsr("xPSR")) - - #define __set_BASEPRI(VALUE) (__arm_wsr("BASEPRI", (VALUE))) - #define __set_BASEPRI_MAX(VALUE) (__arm_wsr("BASEPRI_MAX", (VALUE))) - #define __set_CONTROL(VALUE) (__arm_wsr("CONTROL", (VALUE))) - #define __set_FAULTMASK(VALUE) (__arm_wsr("FAULTMASK", (VALUE))) - #define __set_MSP(VALUE) (__arm_wsr("MSP", (VALUE))) - - #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - #define __set_MSPLIM(VALUE) ((void)(VALUE)) - #else - #define __set_MSPLIM(VALUE) (__arm_wsr("MSPLIM", (VALUE))) - #endif - #define __set_PRIMASK(VALUE) (__arm_wsr("PRIMASK", (VALUE))) - #define __set_PSP(VALUE) (__arm_wsr("PSP", (VALUE))) - #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - #define __set_PSPLIM(VALUE) ((void)(VALUE)) - #else - #define __set_PSPLIM(VALUE) (__arm_wsr("PSPLIM", (VALUE))) - #endif - - #define __TZ_get_CONTROL_NS() (__arm_rsr("CONTROL_NS")) - #define __TZ_set_CONTROL_NS(VALUE) (__arm_wsr("CONTROL_NS", (VALUE))) - #define __TZ_get_PSP_NS() (__arm_rsr("PSP_NS")) - #define __TZ_set_PSP_NS(VALUE) (__arm_wsr("PSP_NS", (VALUE))) - #define __TZ_get_MSP_NS() (__arm_rsr("MSP_NS")) - #define __TZ_set_MSP_NS(VALUE) (__arm_wsr("MSP_NS", (VALUE))) - #define __TZ_get_SP_NS() (__arm_rsr("SP_NS")) - #define __TZ_set_SP_NS(VALUE) (__arm_wsr("SP_NS", (VALUE))) - #define __TZ_get_PRIMASK_NS() (__arm_rsr("PRIMASK_NS")) - #define __TZ_set_PRIMASK_NS(VALUE) (__arm_wsr("PRIMASK_NS", (VALUE))) - #define __TZ_get_BASEPRI_NS() (__arm_rsr("BASEPRI_NS")) - #define __TZ_set_BASEPRI_NS(VALUE) (__arm_wsr("BASEPRI_NS", (VALUE))) - #define __TZ_get_FAULTMASK_NS() (__arm_rsr("FAULTMASK_NS")) - #define __TZ_set_FAULTMASK_NS(VALUE)(__arm_wsr("FAULTMASK_NS", (VALUE))) - - #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - #define __TZ_get_PSPLIM_NS() (0U) - #define __TZ_set_PSPLIM_NS(VALUE) ((void)(VALUE)) - #else - #define __TZ_get_PSPLIM_NS() (__arm_rsr("PSPLIM_NS")) - #define __TZ_set_PSPLIM_NS(VALUE) (__arm_wsr("PSPLIM_NS", (VALUE))) - #endif - - #define __TZ_get_MSPLIM_NS() (__arm_rsr("MSPLIM_NS")) - #define __TZ_set_MSPLIM_NS(VALUE) (__arm_wsr("MSPLIM_NS", (VALUE))) - - #define __NOP __iar_builtin_no_operation - - #define __CLZ __iar_builtin_CLZ - #define __CLREX __iar_builtin_CLREX - - #define __DMB __iar_builtin_DMB - #define __DSB __iar_builtin_DSB - #define __ISB __iar_builtin_ISB - - #define __LDREXB __iar_builtin_LDREXB - #define __LDREXH __iar_builtin_LDREXH - #define __LDREXW __iar_builtin_LDREX - - #define __RBIT __iar_builtin_RBIT - #define __REV __iar_builtin_REV - #define __REV16 __iar_builtin_REV16 - - __IAR_FT int16_t __REVSH(int16_t val) - { - return (int16_t) __iar_builtin_REVSH(val); - } - - #define __ROR __iar_builtin_ROR - #define __RRX __iar_builtin_RRX - - #define __SEV __iar_builtin_SEV - - #if !__IAR_M0_FAMILY - #define __SSAT __iar_builtin_SSAT - #endif - - #define __STREXB __iar_builtin_STREXB - #define __STREXH __iar_builtin_STREXH - #define __STREXW __iar_builtin_STREX - - #if !__IAR_M0_FAMILY - #define __USAT __iar_builtin_USAT - #endif - - #define __WFE __iar_builtin_WFE - #define __WFI __iar_builtin_WFI - - #if __ARM_MEDIA__ - #define __SADD8 __iar_builtin_SADD8 - #define __QADD8 __iar_builtin_QADD8 - #define __SHADD8 __iar_builtin_SHADD8 - #define __UADD8 __iar_builtin_UADD8 - #define __UQADD8 __iar_builtin_UQADD8 - #define __UHADD8 __iar_builtin_UHADD8 - #define __SSUB8 __iar_builtin_SSUB8 - #define __QSUB8 __iar_builtin_QSUB8 - #define __SHSUB8 __iar_builtin_SHSUB8 - #define __USUB8 __iar_builtin_USUB8 - #define __UQSUB8 __iar_builtin_UQSUB8 - #define __UHSUB8 __iar_builtin_UHSUB8 - #define __SADD16 __iar_builtin_SADD16 - #define __QADD16 __iar_builtin_QADD16 - #define __SHADD16 __iar_builtin_SHADD16 - #define __UADD16 __iar_builtin_UADD16 - #define __UQADD16 __iar_builtin_UQADD16 - #define __UHADD16 __iar_builtin_UHADD16 - #define __SSUB16 __iar_builtin_SSUB16 - #define __QSUB16 __iar_builtin_QSUB16 - #define __SHSUB16 __iar_builtin_SHSUB16 - #define __USUB16 __iar_builtin_USUB16 - #define __UQSUB16 __iar_builtin_UQSUB16 - #define __UHSUB16 __iar_builtin_UHSUB16 - #define __SASX __iar_builtin_SASX - #define __QASX __iar_builtin_QASX - #define __SHASX __iar_builtin_SHASX - #define __UASX __iar_builtin_UASX - #define __UQASX __iar_builtin_UQASX - #define __UHASX __iar_builtin_UHASX - #define __SSAX __iar_builtin_SSAX - #define __QSAX __iar_builtin_QSAX - #define __SHSAX __iar_builtin_SHSAX - #define __USAX __iar_builtin_USAX - #define __UQSAX __iar_builtin_UQSAX - #define __UHSAX __iar_builtin_UHSAX - #define __USAD8 __iar_builtin_USAD8 - #define __USADA8 __iar_builtin_USADA8 - #define __SSAT16 __iar_builtin_SSAT16 - #define __USAT16 __iar_builtin_USAT16 - #define __UXTB16 __iar_builtin_UXTB16 - #define __UXTAB16 __iar_builtin_UXTAB16 - #define __SXTB16 __iar_builtin_SXTB16 - #define __SXTAB16 __iar_builtin_SXTAB16 - #define __SMUAD __iar_builtin_SMUAD - #define __SMUADX __iar_builtin_SMUADX - #define __SMMLA __iar_builtin_SMMLA - #define __SMLAD __iar_builtin_SMLAD - #define __SMLADX __iar_builtin_SMLADX - #define __SMLALD __iar_builtin_SMLALD - #define __SMLALDX __iar_builtin_SMLALDX - #define __SMUSD __iar_builtin_SMUSD - #define __SMUSDX __iar_builtin_SMUSDX - #define __SMLSD __iar_builtin_SMLSD - #define __SMLSDX __iar_builtin_SMLSDX - #define __SMLSLD __iar_builtin_SMLSLD - #define __SMLSLDX __iar_builtin_SMLSLDX - #define __SEL __iar_builtin_SEL - #define __QADD __iar_builtin_QADD - #define __QSUB __iar_builtin_QSUB - #define __PKHBT __iar_builtin_PKHBT - #define __PKHTB __iar_builtin_PKHTB - #endif - -#else /* __ICCARM_INTRINSICS_VERSION__ == 2 */ - - #if __IAR_M0_FAMILY - /* Avoid clash between intrinsics.h and arm_math.h when compiling for Cortex-M0. */ - #define __CLZ __cmsis_iar_clz_not_active - #define __SSAT __cmsis_iar_ssat_not_active - #define __USAT __cmsis_iar_usat_not_active - #define __RBIT __cmsis_iar_rbit_not_active - #define __get_APSR __cmsis_iar_get_APSR_not_active - #endif - - - #if (!((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ - (defined (__FPU_USED ) && (__FPU_USED == 1U)) )) - #define __get_FPSCR __cmsis_iar_get_FPSR_not_active - #define __set_FPSCR __cmsis_iar_set_FPSR_not_active - #endif - - #ifdef __INTRINSICS_INCLUDED - #error intrinsics.h is already included previously! - #endif - - #include - - #if __IAR_M0_FAMILY - /* Avoid clash between intrinsics.h and arm_math.h when compiling for Cortex-M0. */ - #undef __CLZ - #undef __SSAT - #undef __USAT - #undef __RBIT - #undef __get_APSR - - __STATIC_INLINE uint8_t __CLZ(uint32_t data) - { - if (data == 0U) { return 32U; } - - uint32_t count = 0U; - uint32_t mask = 0x80000000U; - - while ((data & mask) == 0U) - { - count += 1U; - mask = mask >> 1U; - } - return count; - } - - __STATIC_INLINE uint32_t __RBIT(uint32_t v) - { - uint8_t sc = 31U; - uint32_t r = v; - for (v >>= 1U; v; v >>= 1U) - { - r <<= 1U; - r |= v & 1U; - sc--; - } - return (r << sc); - } - - __STATIC_INLINE uint32_t __get_APSR(void) - { - uint32_t res; - __asm("MRS %0,APSR" : "=r" (res)); - return res; - } - - #endif - - #if (!((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ - (defined (__FPU_USED ) && (__FPU_USED == 1U)) )) - #undef __get_FPSCR - #undef __set_FPSCR - #define __get_FPSCR() (0) - #define __set_FPSCR(VALUE) ((void)VALUE) - #endif - - #pragma diag_suppress=Pe940 - #pragma diag_suppress=Pe177 - - #define __enable_irq __enable_interrupt - #define __disable_irq __disable_interrupt - #define __NOP __no_operation - - #define __get_xPSR __get_PSR - - #if (!defined(__ARM_ARCH_6M__) || __ARM_ARCH_6M__==0) - - __IAR_FT uint32_t __LDREXW(uint32_t volatile *ptr) - { - return __LDREX((unsigned long *)ptr); - } - - __IAR_FT uint32_t __STREXW(uint32_t value, uint32_t volatile *ptr) - { - return __STREX(value, (unsigned long *)ptr); - } - #endif - - - /* __CORTEX_M is defined in core_cm0.h, core_cm3.h and core_cm4.h. */ - #if (__CORTEX_M >= 0x03) - - __IAR_FT uint32_t __RRX(uint32_t value) - { - uint32_t result; - __ASM("RRX %0, %1" : "=r"(result) : "r" (value) : "cc"); - return(result); - } - - __IAR_FT void __set_BASEPRI_MAX(uint32_t value) - { - __asm volatile("MSR BASEPRI_MAX,%0"::"r" (value)); - } - - - #define __enable_fault_irq __enable_fiq - #define __disable_fault_irq __disable_fiq - - - #endif /* (__CORTEX_M >= 0x03) */ - - __IAR_FT uint32_t __ROR(uint32_t op1, uint32_t op2) - { - return (op1 >> op2) | (op1 << ((sizeof(op1)*8)-op2)); - } - - #if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) - - __IAR_FT uint32_t __get_MSPLIM(void) - { - uint32_t res; - #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - res = 0U; - #else - __asm volatile("MRS %0,MSPLIM" : "=r" (res)); - #endif - return res; - } - - __IAR_FT void __set_MSPLIM(uint32_t value) - { - #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure MSPLIM is RAZ/WI - (void)value; - #else - __asm volatile("MSR MSPLIM,%0" :: "r" (value)); - #endif - } - - __IAR_FT uint32_t __get_PSPLIM(void) - { - uint32_t res; - #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - res = 0U; - #else - __asm volatile("MRS %0,PSPLIM" : "=r" (res)); - #endif - return res; - } - - __IAR_FT void __set_PSPLIM(uint32_t value) - { - #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - (void)value; - #else - __asm volatile("MSR PSPLIM,%0" :: "r" (value)); - #endif - } - - __IAR_FT uint32_t __TZ_get_CONTROL_NS(void) - { - uint32_t res; - __asm volatile("MRS %0,CONTROL_NS" : "=r" (res)); - return res; - } - - __IAR_FT void __TZ_set_CONTROL_NS(uint32_t value) - { - __asm volatile("MSR CONTROL_NS,%0" :: "r" (value)); - } - - __IAR_FT uint32_t __TZ_get_PSP_NS(void) - { - uint32_t res; - __asm volatile("MRS %0,PSP_NS" : "=r" (res)); - return res; - } - - __IAR_FT void __TZ_set_PSP_NS(uint32_t value) - { - __asm volatile("MSR PSP_NS,%0" :: "r" (value)); - } - - __IAR_FT uint32_t __TZ_get_MSP_NS(void) - { - uint32_t res; - __asm volatile("MRS %0,MSP_NS" : "=r" (res)); - return res; - } - - __IAR_FT void __TZ_set_MSP_NS(uint32_t value) - { - __asm volatile("MSR MSP_NS,%0" :: "r" (value)); - } - - __IAR_FT uint32_t __TZ_get_SP_NS(void) - { - uint32_t res; - __asm volatile("MRS %0,SP_NS" : "=r" (res)); - return res; - } - __IAR_FT void __TZ_set_SP_NS(uint32_t value) - { - __asm volatile("MSR SP_NS,%0" :: "r" (value)); - } - - __IAR_FT uint32_t __TZ_get_PRIMASK_NS(void) - { - uint32_t res; - __asm volatile("MRS %0,PRIMASK_NS" : "=r" (res)); - return res; - } - - __IAR_FT void __TZ_set_PRIMASK_NS(uint32_t value) - { - __asm volatile("MSR PRIMASK_NS,%0" :: "r" (value)); - } - - __IAR_FT uint32_t __TZ_get_BASEPRI_NS(void) - { - uint32_t res; - __asm volatile("MRS %0,BASEPRI_NS" : "=r" (res)); - return res; - } - - __IAR_FT void __TZ_set_BASEPRI_NS(uint32_t value) - { - __asm volatile("MSR BASEPRI_NS,%0" :: "r" (value)); - } - - __IAR_FT uint32_t __TZ_get_FAULTMASK_NS(void) - { - uint32_t res; - __asm volatile("MRS %0,FAULTMASK_NS" : "=r" (res)); - return res; - } - - __IAR_FT void __TZ_set_FAULTMASK_NS(uint32_t value) - { - __asm volatile("MSR FAULTMASK_NS,%0" :: "r" (value)); - } - - __IAR_FT uint32_t __TZ_get_PSPLIM_NS(void) - { - uint32_t res; - #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - res = 0U; - #else - __asm volatile("MRS %0,PSPLIM_NS" : "=r" (res)); - #endif - return res; - } - - __IAR_FT void __TZ_set_PSPLIM_NS(uint32_t value) - { - #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ - (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) - // without main extensions, the non-secure PSPLIM is RAZ/WI - (void)value; - #else - __asm volatile("MSR PSPLIM_NS,%0" :: "r" (value)); - #endif - } - - __IAR_FT uint32_t __TZ_get_MSPLIM_NS(void) - { - uint32_t res; - __asm volatile("MRS %0,MSPLIM_NS" : "=r" (res)); - return res; - } - - __IAR_FT void __TZ_set_MSPLIM_NS(uint32_t value) - { - __asm volatile("MSR MSPLIM_NS,%0" :: "r" (value)); - } - - #endif /* __ARM_ARCH_8M_MAIN__ or __ARM_ARCH_8M_BASE__ */ - -#endif /* __ICCARM_INTRINSICS_VERSION__ == 2 */ - -#define __BKPT(value) __asm volatile ("BKPT %0" : : "i"(value)) - -#if __IAR_M0_FAMILY - __STATIC_INLINE int32_t __SSAT(int32_t val, uint32_t sat) - { - if ((sat >= 1U) && (sat <= 32U)) - { - const int32_t max = (int32_t)((1U << (sat - 1U)) - 1U); - const int32_t min = -1 - max ; - if (val > max) - { - return max; - } - else if (val < min) - { - return min; - } - } - return val; - } - - __STATIC_INLINE uint32_t __USAT(int32_t val, uint32_t sat) - { - if (sat <= 31U) - { - const uint32_t max = ((1U << sat) - 1U); - if (val > (int32_t)max) - { - return max; - } - else if (val < 0) - { - return 0U; - } - } - return (uint32_t)val; - } -#endif - -#if (__CORTEX_M >= 0x03) /* __CORTEX_M is defined in core_cm0.h, core_cm3.h and core_cm4.h. */ - - __IAR_FT uint8_t __LDRBT(volatile uint8_t *addr) - { - uint32_t res; - __ASM("LDRBT %0, [%1]" : "=r" (res) : "r" (addr) : "memory"); - return ((uint8_t)res); - } - - __IAR_FT uint16_t __LDRHT(volatile uint16_t *addr) - { - uint32_t res; - __ASM("LDRHT %0, [%1]" : "=r" (res) : "r" (addr) : "memory"); - return ((uint16_t)res); - } - - __IAR_FT uint32_t __LDRT(volatile uint32_t *addr) - { - uint32_t res; - __ASM("LDRT %0, [%1]" : "=r" (res) : "r" (addr) : "memory"); - return res; - } - - __IAR_FT void __STRBT(uint8_t value, volatile uint8_t *addr) - { - __ASM("STRBT %1, [%0]" : : "r" (addr), "r" ((uint32_t)value) : "memory"); - } - - __IAR_FT void __STRHT(uint16_t value, volatile uint16_t *addr) - { - __ASM("STRHT %1, [%0]" : : "r" (addr), "r" ((uint32_t)value) : "memory"); - } - - __IAR_FT void __STRT(uint32_t value, volatile uint32_t *addr) - { - __ASM("STRT %1, [%0]" : : "r" (addr), "r" (value) : "memory"); - } - -#endif /* (__CORTEX_M >= 0x03) */ - -#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ - (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) - - - __IAR_FT uint8_t __LDAB(volatile uint8_t *ptr) - { - uint32_t res; - __ASM volatile ("LDAB %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); - return ((uint8_t)res); - } - - __IAR_FT uint16_t __LDAH(volatile uint16_t *ptr) - { - uint32_t res; - __ASM volatile ("LDAH %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); - return ((uint16_t)res); - } - - __IAR_FT uint32_t __LDA(volatile uint32_t *ptr) - { - uint32_t res; - __ASM volatile ("LDA %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); - return res; - } - - __IAR_FT void __STLB(uint8_t value, volatile uint8_t *ptr) - { - __ASM volatile ("STLB %1, [%0]" :: "r" (ptr), "r" (value) : "memory"); - } - - __IAR_FT void __STLH(uint16_t value, volatile uint16_t *ptr) - { - __ASM volatile ("STLH %1, [%0]" :: "r" (ptr), "r" (value) : "memory"); - } - - __IAR_FT void __STL(uint32_t value, volatile uint32_t *ptr) - { - __ASM volatile ("STL %1, [%0]" :: "r" (ptr), "r" (value) : "memory"); - } - - __IAR_FT uint8_t __LDAEXB(volatile uint8_t *ptr) - { - uint32_t res; - __ASM volatile ("LDAEXB %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); - return ((uint8_t)res); - } - - __IAR_FT uint16_t __LDAEXH(volatile uint16_t *ptr) - { - uint32_t res; - __ASM volatile ("LDAEXH %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); - return ((uint16_t)res); - } - - __IAR_FT uint32_t __LDAEX(volatile uint32_t *ptr) - { - uint32_t res; - __ASM volatile ("LDAEX %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); - return res; - } - - __IAR_FT uint32_t __STLEXB(uint8_t value, volatile uint8_t *ptr) - { - uint32_t res; - __ASM volatile ("STLEXB %0, %2, [%1]" : "=r" (res) : "r" (ptr), "r" (value) : "memory"); - return res; - } - - __IAR_FT uint32_t __STLEXH(uint16_t value, volatile uint16_t *ptr) - { - uint32_t res; - __ASM volatile ("STLEXH %0, %2, [%1]" : "=r" (res) : "r" (ptr), "r" (value) : "memory"); - return res; - } - - __IAR_FT uint32_t __STLEX(uint32_t value, volatile uint32_t *ptr) - { - uint32_t res; - __ASM volatile ("STLEX %0, %2, [%1]" : "=r" (res) : "r" (ptr), "r" (value) : "memory"); - return res; - } - -#endif /* __ARM_ARCH_8M_MAIN__ or __ARM_ARCH_8M_BASE__ */ - -#undef __IAR_FT -#undef __IAR_M0_FAMILY -#undef __ICCARM_V8 - -#pragma diag_default=Pe940 -#pragma diag_default=Pe177 - -#endif /* __CMSIS_ICCARM_H__ */ +/**************************************************************************//** + * @file cmsis_iccarm.h + * @brief CMSIS compiler ICCARM (IAR Compiler for Arm) header file + * @version V5.0.7 + * @date 19. June 2018 + ******************************************************************************/ + +//------------------------------------------------------------------------------ +// +// Copyright (c) 2017-2018 IAR Systems +// +// Licensed under the Apache License, Version 2.0 (the "License") +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +//------------------------------------------------------------------------------ + + +#ifndef __CMSIS_ICCARM_H__ +#define __CMSIS_ICCARM_H__ + +#ifndef __ICCARM__ + #error This file should only be compiled by ICCARM +#endif + +#pragma system_include + +#define __IAR_FT _Pragma("inline=forced") __intrinsic + +#if (__VER__ >= 8000000) + #define __ICCARM_V8 1 +#else + #define __ICCARM_V8 0 +#endif + +#ifndef __ALIGNED + #if __ICCARM_V8 + #define __ALIGNED(x) __attribute__((aligned(x))) + #elif (__VER__ >= 7080000) + /* Needs IAR language extensions */ + #define __ALIGNED(x) __attribute__((aligned(x))) + #else + #warning No compiler specific solution for __ALIGNED.__ALIGNED is ignored. + #define __ALIGNED(x) + #endif +#endif + + +/* Define compiler macros for CPU architecture, used in CMSIS 5. + */ +#if __ARM_ARCH_6M__ || __ARM_ARCH_7M__ || __ARM_ARCH_7EM__ || __ARM_ARCH_8M_BASE__ || __ARM_ARCH_8M_MAIN__ +/* Macros already defined */ +#else + #if defined(__ARM8M_MAINLINE__) || defined(__ARM8EM_MAINLINE__) + #define __ARM_ARCH_8M_MAIN__ 1 + #elif defined(__ARM8M_BASELINE__) + #define __ARM_ARCH_8M_BASE__ 1 + #elif defined(__ARM_ARCH_PROFILE) && __ARM_ARCH_PROFILE == 'M' + #if __ARM_ARCH == 6 + #define __ARM_ARCH_6M__ 1 + #elif __ARM_ARCH == 7 + #if __ARM_FEATURE_DSP + #define __ARM_ARCH_7EM__ 1 + #else + #define __ARM_ARCH_7M__ 1 + #endif + #endif /* __ARM_ARCH */ + #endif /* __ARM_ARCH_PROFILE == 'M' */ +#endif + +/* Alternativ core deduction for older ICCARM's */ +#if !defined(__ARM_ARCH_6M__) && !defined(__ARM_ARCH_7M__) && !defined(__ARM_ARCH_7EM__) && \ + !defined(__ARM_ARCH_8M_BASE__) && !defined(__ARM_ARCH_8M_MAIN__) + #if defined(__ARM6M__) && (__CORE__ == __ARM6M__) + #define __ARM_ARCH_6M__ 1 + #elif defined(__ARM7M__) && (__CORE__ == __ARM7M__) + #define __ARM_ARCH_7M__ 1 + #elif defined(__ARM7EM__) && (__CORE__ == __ARM7EM__) + #define __ARM_ARCH_7EM__ 1 + #elif defined(__ARM8M_BASELINE__) && (__CORE == __ARM8M_BASELINE__) + #define __ARM_ARCH_8M_BASE__ 1 + #elif defined(__ARM8M_MAINLINE__) && (__CORE == __ARM8M_MAINLINE__) + #define __ARM_ARCH_8M_MAIN__ 1 + #elif defined(__ARM8EM_MAINLINE__) && (__CORE == __ARM8EM_MAINLINE__) + #define __ARM_ARCH_8M_MAIN__ 1 + #else + #error "Unknown target." + #endif +#endif + + + +#if defined(__ARM_ARCH_6M__) && __ARM_ARCH_6M__==1 + #define __IAR_M0_FAMILY 1 +#elif defined(__ARM_ARCH_8M_BASE__) && __ARM_ARCH_8M_BASE__==1 + #define __IAR_M0_FAMILY 1 +#else + #define __IAR_M0_FAMILY 0 +#endif + + +#ifndef __ASM + #define __ASM __asm +#endif + +#ifndef __INLINE + #define __INLINE inline +#endif + +#ifndef __NO_RETURN + #if __ICCARM_V8 + #define __NO_RETURN __attribute__((__noreturn__)) + #else + #define __NO_RETURN _Pragma("object_attribute=__noreturn") + #endif +#endif + +#ifndef __PACKED + #if __ICCARM_V8 + #define __PACKED __attribute__((packed, aligned(1))) + #else + /* Needs IAR language extensions */ + #define __PACKED __packed + #endif +#endif + +#ifndef __PACKED_STRUCT + #if __ICCARM_V8 + #define __PACKED_STRUCT struct __attribute__((packed, aligned(1))) + #else + /* Needs IAR language extensions */ + #define __PACKED_STRUCT __packed struct + #endif +#endif + +#ifndef __PACKED_UNION + #if __ICCARM_V8 + #define __PACKED_UNION union __attribute__((packed, aligned(1))) + #else + /* Needs IAR language extensions */ + #define __PACKED_UNION __packed union + #endif +#endif + +#ifndef __RESTRICT + #define __RESTRICT __restrict +#endif + +#ifndef __STATIC_INLINE + #define __STATIC_INLINE static inline +#endif + +#ifndef __FORCEINLINE + #define __FORCEINLINE _Pragma("inline=forced") +#endif + +#ifndef __STATIC_FORCEINLINE + #define __STATIC_FORCEINLINE __FORCEINLINE __STATIC_INLINE +#endif + +#ifndef __UNALIGNED_UINT16_READ +#pragma language=save +#pragma language=extended +__IAR_FT uint16_t __iar_uint16_read(void const *ptr) +{ + return *(__packed uint16_t*)(ptr); +} +#pragma language=restore +#define __UNALIGNED_UINT16_READ(PTR) __iar_uint16_read(PTR) +#endif + + +#ifndef __UNALIGNED_UINT16_WRITE +#pragma language=save +#pragma language=extended +__IAR_FT void __iar_uint16_write(void const *ptr, uint16_t val) +{ + *(__packed uint16_t*)(ptr) = val;; +} +#pragma language=restore +#define __UNALIGNED_UINT16_WRITE(PTR,VAL) __iar_uint16_write(PTR,VAL) +#endif + +#ifndef __UNALIGNED_UINT32_READ +#pragma language=save +#pragma language=extended +__IAR_FT uint32_t __iar_uint32_read(void const *ptr) +{ + return *(__packed uint32_t*)(ptr); +} +#pragma language=restore +#define __UNALIGNED_UINT32_READ(PTR) __iar_uint32_read(PTR) +#endif + +#ifndef __UNALIGNED_UINT32_WRITE +#pragma language=save +#pragma language=extended +__IAR_FT void __iar_uint32_write(void const *ptr, uint32_t val) +{ + *(__packed uint32_t*)(ptr) = val;; +} +#pragma language=restore +#define __UNALIGNED_UINT32_WRITE(PTR,VAL) __iar_uint32_write(PTR,VAL) +#endif + +#ifndef __UNALIGNED_UINT32 /* deprecated */ +#pragma language=save +#pragma language=extended +__packed struct __iar_u32 { uint32_t v; }; +#pragma language=restore +#define __UNALIGNED_UINT32(PTR) (((struct __iar_u32 *)(PTR))->v) +#endif + +#ifndef __USED + #if __ICCARM_V8 + #define __USED __attribute__((used)) + #else + #define __USED _Pragma("__root") + #endif +#endif + +#ifndef __WEAK + #if __ICCARM_V8 + #define __WEAK __attribute__((weak)) + #else + #define __WEAK _Pragma("__weak") + #endif +#endif + + +#ifndef __ICCARM_INTRINSICS_VERSION__ + #define __ICCARM_INTRINSICS_VERSION__ 0 +#endif + +#if __ICCARM_INTRINSICS_VERSION__ == 2 + + #if defined(__CLZ) + #undef __CLZ + #endif + #if defined(__REVSH) + #undef __REVSH + #endif + #if defined(__RBIT) + #undef __RBIT + #endif + #if defined(__SSAT) + #undef __SSAT + #endif + #if defined(__USAT) + #undef __USAT + #endif + + #include "iccarm_builtin.h" + + #define __disable_fault_irq __iar_builtin_disable_fiq + #define __disable_irq __iar_builtin_disable_interrupt + #define __enable_fault_irq __iar_builtin_enable_fiq + #define __enable_irq __iar_builtin_enable_interrupt + #define __arm_rsr __iar_builtin_rsr + #define __arm_wsr __iar_builtin_wsr + + + #define __get_APSR() (__arm_rsr("APSR")) + #define __get_BASEPRI() (__arm_rsr("BASEPRI")) + #define __get_CONTROL() (__arm_rsr("CONTROL")) + #define __get_FAULTMASK() (__arm_rsr("FAULTMASK")) + + #if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ + (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) + #define __get_FPSCR() (__arm_rsr("FPSCR")) + #define __set_FPSCR(VALUE) (__arm_wsr("FPSCR", (VALUE))) + #else + #define __get_FPSCR() ( 0 ) + #define __set_FPSCR(VALUE) ((void)VALUE) + #endif + + #define __get_IPSR() (__arm_rsr("IPSR")) + #define __get_MSP() (__arm_rsr("MSP")) + #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + #define __get_MSPLIM() (0U) + #else + #define __get_MSPLIM() (__arm_rsr("MSPLIM")) + #endif + #define __get_PRIMASK() (__arm_rsr("PRIMASK")) + #define __get_PSP() (__arm_rsr("PSP")) + + #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + #define __get_PSPLIM() (0U) + #else + #define __get_PSPLIM() (__arm_rsr("PSPLIM")) + #endif + + #define __get_xPSR() (__arm_rsr("xPSR")) + + #define __set_BASEPRI(VALUE) (__arm_wsr("BASEPRI", (VALUE))) + #define __set_BASEPRI_MAX(VALUE) (__arm_wsr("BASEPRI_MAX", (VALUE))) + #define __set_CONTROL(VALUE) (__arm_wsr("CONTROL", (VALUE))) + #define __set_FAULTMASK(VALUE) (__arm_wsr("FAULTMASK", (VALUE))) + #define __set_MSP(VALUE) (__arm_wsr("MSP", (VALUE))) + + #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + #define __set_MSPLIM(VALUE) ((void)(VALUE)) + #else + #define __set_MSPLIM(VALUE) (__arm_wsr("MSPLIM", (VALUE))) + #endif + #define __set_PRIMASK(VALUE) (__arm_wsr("PRIMASK", (VALUE))) + #define __set_PSP(VALUE) (__arm_wsr("PSP", (VALUE))) + #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + #define __set_PSPLIM(VALUE) ((void)(VALUE)) + #else + #define __set_PSPLIM(VALUE) (__arm_wsr("PSPLIM", (VALUE))) + #endif + + #define __TZ_get_CONTROL_NS() (__arm_rsr("CONTROL_NS")) + #define __TZ_set_CONTROL_NS(VALUE) (__arm_wsr("CONTROL_NS", (VALUE))) + #define __TZ_get_PSP_NS() (__arm_rsr("PSP_NS")) + #define __TZ_set_PSP_NS(VALUE) (__arm_wsr("PSP_NS", (VALUE))) + #define __TZ_get_MSP_NS() (__arm_rsr("MSP_NS")) + #define __TZ_set_MSP_NS(VALUE) (__arm_wsr("MSP_NS", (VALUE))) + #define __TZ_get_SP_NS() (__arm_rsr("SP_NS")) + #define __TZ_set_SP_NS(VALUE) (__arm_wsr("SP_NS", (VALUE))) + #define __TZ_get_PRIMASK_NS() (__arm_rsr("PRIMASK_NS")) + #define __TZ_set_PRIMASK_NS(VALUE) (__arm_wsr("PRIMASK_NS", (VALUE))) + #define __TZ_get_BASEPRI_NS() (__arm_rsr("BASEPRI_NS")) + #define __TZ_set_BASEPRI_NS(VALUE) (__arm_wsr("BASEPRI_NS", (VALUE))) + #define __TZ_get_FAULTMASK_NS() (__arm_rsr("FAULTMASK_NS")) + #define __TZ_set_FAULTMASK_NS(VALUE)(__arm_wsr("FAULTMASK_NS", (VALUE))) + + #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + #define __TZ_get_PSPLIM_NS() (0U) + #define __TZ_set_PSPLIM_NS(VALUE) ((void)(VALUE)) + #else + #define __TZ_get_PSPLIM_NS() (__arm_rsr("PSPLIM_NS")) + #define __TZ_set_PSPLIM_NS(VALUE) (__arm_wsr("PSPLIM_NS", (VALUE))) + #endif + + #define __TZ_get_MSPLIM_NS() (__arm_rsr("MSPLIM_NS")) + #define __TZ_set_MSPLIM_NS(VALUE) (__arm_wsr("MSPLIM_NS", (VALUE))) + + #define __NOP __iar_builtin_no_operation + + #define __CLZ __iar_builtin_CLZ + #define __CLREX __iar_builtin_CLREX + + #define __DMB __iar_builtin_DMB + #define __DSB __iar_builtin_DSB + #define __ISB __iar_builtin_ISB + + #define __LDREXB __iar_builtin_LDREXB + #define __LDREXH __iar_builtin_LDREXH + #define __LDREXW __iar_builtin_LDREX + + #define __RBIT __iar_builtin_RBIT + #define __REV __iar_builtin_REV + #define __REV16 __iar_builtin_REV16 + + __IAR_FT int16_t __REVSH(int16_t val) + { + return (int16_t) __iar_builtin_REVSH(val); + } + + #define __ROR __iar_builtin_ROR + #define __RRX __iar_builtin_RRX + + #define __SEV __iar_builtin_SEV + + #if !__IAR_M0_FAMILY + #define __SSAT __iar_builtin_SSAT + #endif + + #define __STREXB __iar_builtin_STREXB + #define __STREXH __iar_builtin_STREXH + #define __STREXW __iar_builtin_STREX + + #if !__IAR_M0_FAMILY + #define __USAT __iar_builtin_USAT + #endif + + #define __WFE __iar_builtin_WFE + #define __WFI __iar_builtin_WFI + + #if __ARM_MEDIA__ + #define __SADD8 __iar_builtin_SADD8 + #define __QADD8 __iar_builtin_QADD8 + #define __SHADD8 __iar_builtin_SHADD8 + #define __UADD8 __iar_builtin_UADD8 + #define __UQADD8 __iar_builtin_UQADD8 + #define __UHADD8 __iar_builtin_UHADD8 + #define __SSUB8 __iar_builtin_SSUB8 + #define __QSUB8 __iar_builtin_QSUB8 + #define __SHSUB8 __iar_builtin_SHSUB8 + #define __USUB8 __iar_builtin_USUB8 + #define __UQSUB8 __iar_builtin_UQSUB8 + #define __UHSUB8 __iar_builtin_UHSUB8 + #define __SADD16 __iar_builtin_SADD16 + #define __QADD16 __iar_builtin_QADD16 + #define __SHADD16 __iar_builtin_SHADD16 + #define __UADD16 __iar_builtin_UADD16 + #define __UQADD16 __iar_builtin_UQADD16 + #define __UHADD16 __iar_builtin_UHADD16 + #define __SSUB16 __iar_builtin_SSUB16 + #define __QSUB16 __iar_builtin_QSUB16 + #define __SHSUB16 __iar_builtin_SHSUB16 + #define __USUB16 __iar_builtin_USUB16 + #define __UQSUB16 __iar_builtin_UQSUB16 + #define __UHSUB16 __iar_builtin_UHSUB16 + #define __SASX __iar_builtin_SASX + #define __QASX __iar_builtin_QASX + #define __SHASX __iar_builtin_SHASX + #define __UASX __iar_builtin_UASX + #define __UQASX __iar_builtin_UQASX + #define __UHASX __iar_builtin_UHASX + #define __SSAX __iar_builtin_SSAX + #define __QSAX __iar_builtin_QSAX + #define __SHSAX __iar_builtin_SHSAX + #define __USAX __iar_builtin_USAX + #define __UQSAX __iar_builtin_UQSAX + #define __UHSAX __iar_builtin_UHSAX + #define __USAD8 __iar_builtin_USAD8 + #define __USADA8 __iar_builtin_USADA8 + #define __SSAT16 __iar_builtin_SSAT16 + #define __USAT16 __iar_builtin_USAT16 + #define __UXTB16 __iar_builtin_UXTB16 + #define __UXTAB16 __iar_builtin_UXTAB16 + #define __SXTB16 __iar_builtin_SXTB16 + #define __SXTAB16 __iar_builtin_SXTAB16 + #define __SMUAD __iar_builtin_SMUAD + #define __SMUADX __iar_builtin_SMUADX + #define __SMMLA __iar_builtin_SMMLA + #define __SMLAD __iar_builtin_SMLAD + #define __SMLADX __iar_builtin_SMLADX + #define __SMLALD __iar_builtin_SMLALD + #define __SMLALDX __iar_builtin_SMLALDX + #define __SMUSD __iar_builtin_SMUSD + #define __SMUSDX __iar_builtin_SMUSDX + #define __SMLSD __iar_builtin_SMLSD + #define __SMLSDX __iar_builtin_SMLSDX + #define __SMLSLD __iar_builtin_SMLSLD + #define __SMLSLDX __iar_builtin_SMLSLDX + #define __SEL __iar_builtin_SEL + #define __QADD __iar_builtin_QADD + #define __QSUB __iar_builtin_QSUB + #define __PKHBT __iar_builtin_PKHBT + #define __PKHTB __iar_builtin_PKHTB + #endif + +#else /* __ICCARM_INTRINSICS_VERSION__ == 2 */ + + #if __IAR_M0_FAMILY + /* Avoid clash between intrinsics.h and arm_math.h when compiling for Cortex-M0. */ + #define __CLZ __cmsis_iar_clz_not_active + #define __SSAT __cmsis_iar_ssat_not_active + #define __USAT __cmsis_iar_usat_not_active + #define __RBIT __cmsis_iar_rbit_not_active + #define __get_APSR __cmsis_iar_get_APSR_not_active + #endif + + + #if (!((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ + (defined (__FPU_USED ) && (__FPU_USED == 1U)) )) + #define __get_FPSCR __cmsis_iar_get_FPSR_not_active + #define __set_FPSCR __cmsis_iar_set_FPSR_not_active + #endif + + #ifdef __INTRINSICS_INCLUDED + #error intrinsics.h is already included previously! + #endif + + #include + + #if __IAR_M0_FAMILY + /* Avoid clash between intrinsics.h and arm_math.h when compiling for Cortex-M0. */ + #undef __CLZ + #undef __SSAT + #undef __USAT + #undef __RBIT + #undef __get_APSR + + __STATIC_INLINE uint8_t __CLZ(uint32_t data) + { + if (data == 0U) { return 32U; } + + uint32_t count = 0U; + uint32_t mask = 0x80000000U; + + while ((data & mask) == 0U) + { + count += 1U; + mask = mask >> 1U; + } + return count; + } + + __STATIC_INLINE uint32_t __RBIT(uint32_t v) + { + uint8_t sc = 31U; + uint32_t r = v; + for (v >>= 1U; v; v >>= 1U) + { + r <<= 1U; + r |= v & 1U; + sc--; + } + return (r << sc); + } + + __STATIC_INLINE uint32_t __get_APSR(void) + { + uint32_t res; + __asm("MRS %0,APSR" : "=r" (res)); + return res; + } + + #endif + + #if (!((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ + (defined (__FPU_USED ) && (__FPU_USED == 1U)) )) + #undef __get_FPSCR + #undef __set_FPSCR + #define __get_FPSCR() (0) + #define __set_FPSCR(VALUE) ((void)VALUE) + #endif + + #pragma diag_suppress=Pe940 + #pragma diag_suppress=Pe177 + + #define __enable_irq __enable_interrupt + #define __disable_irq __disable_interrupt + #define __NOP __no_operation + + #define __get_xPSR __get_PSR + + #if (!defined(__ARM_ARCH_6M__) || __ARM_ARCH_6M__==0) + + __IAR_FT uint32_t __LDREXW(uint32_t volatile *ptr) + { + return __LDREX((unsigned long *)ptr); + } + + __IAR_FT uint32_t __STREXW(uint32_t value, uint32_t volatile *ptr) + { + return __STREX(value, (unsigned long *)ptr); + } + #endif + + + /* __CORTEX_M is defined in core_cm0.h, core_cm3.h and core_cm4.h. */ + #if (__CORTEX_M >= 0x03) + + __IAR_FT uint32_t __RRX(uint32_t value) + { + uint32_t result; + __ASM("RRX %0, %1" : "=r"(result) : "r" (value) : "cc"); + return(result); + } + + __IAR_FT void __set_BASEPRI_MAX(uint32_t value) + { + __asm volatile("MSR BASEPRI_MAX,%0"::"r" (value)); + } + + + #define __enable_fault_irq __enable_fiq + #define __disable_fault_irq __disable_fiq + + + #endif /* (__CORTEX_M >= 0x03) */ + + __IAR_FT uint32_t __ROR(uint32_t op1, uint32_t op2) + { + return (op1 >> op2) | (op1 << ((sizeof(op1)*8)-op2)); + } + + #if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) + + __IAR_FT uint32_t __get_MSPLIM(void) + { + uint32_t res; + #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + res = 0U; + #else + __asm volatile("MRS %0,MSPLIM" : "=r" (res)); + #endif + return res; + } + + __IAR_FT void __set_MSPLIM(uint32_t value) + { + #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure MSPLIM is RAZ/WI + (void)value; + #else + __asm volatile("MSR MSPLIM,%0" :: "r" (value)); + #endif + } + + __IAR_FT uint32_t __get_PSPLIM(void) + { + uint32_t res; + #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + res = 0U; + #else + __asm volatile("MRS %0,PSPLIM" : "=r" (res)); + #endif + return res; + } + + __IAR_FT void __set_PSPLIM(uint32_t value) + { + #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + (void)value; + #else + __asm volatile("MSR PSPLIM,%0" :: "r" (value)); + #endif + } + + __IAR_FT uint32_t __TZ_get_CONTROL_NS(void) + { + uint32_t res; + __asm volatile("MRS %0,CONTROL_NS" : "=r" (res)); + return res; + } + + __IAR_FT void __TZ_set_CONTROL_NS(uint32_t value) + { + __asm volatile("MSR CONTROL_NS,%0" :: "r" (value)); + } + + __IAR_FT uint32_t __TZ_get_PSP_NS(void) + { + uint32_t res; + __asm volatile("MRS %0,PSP_NS" : "=r" (res)); + return res; + } + + __IAR_FT void __TZ_set_PSP_NS(uint32_t value) + { + __asm volatile("MSR PSP_NS,%0" :: "r" (value)); + } + + __IAR_FT uint32_t __TZ_get_MSP_NS(void) + { + uint32_t res; + __asm volatile("MRS %0,MSP_NS" : "=r" (res)); + return res; + } + + __IAR_FT void __TZ_set_MSP_NS(uint32_t value) + { + __asm volatile("MSR MSP_NS,%0" :: "r" (value)); + } + + __IAR_FT uint32_t __TZ_get_SP_NS(void) + { + uint32_t res; + __asm volatile("MRS %0,SP_NS" : "=r" (res)); + return res; + } + __IAR_FT void __TZ_set_SP_NS(uint32_t value) + { + __asm volatile("MSR SP_NS,%0" :: "r" (value)); + } + + __IAR_FT uint32_t __TZ_get_PRIMASK_NS(void) + { + uint32_t res; + __asm volatile("MRS %0,PRIMASK_NS" : "=r" (res)); + return res; + } + + __IAR_FT void __TZ_set_PRIMASK_NS(uint32_t value) + { + __asm volatile("MSR PRIMASK_NS,%0" :: "r" (value)); + } + + __IAR_FT uint32_t __TZ_get_BASEPRI_NS(void) + { + uint32_t res; + __asm volatile("MRS %0,BASEPRI_NS" : "=r" (res)); + return res; + } + + __IAR_FT void __TZ_set_BASEPRI_NS(uint32_t value) + { + __asm volatile("MSR BASEPRI_NS,%0" :: "r" (value)); + } + + __IAR_FT uint32_t __TZ_get_FAULTMASK_NS(void) + { + uint32_t res; + __asm volatile("MRS %0,FAULTMASK_NS" : "=r" (res)); + return res; + } + + __IAR_FT void __TZ_set_FAULTMASK_NS(uint32_t value) + { + __asm volatile("MSR FAULTMASK_NS,%0" :: "r" (value)); + } + + __IAR_FT uint32_t __TZ_get_PSPLIM_NS(void) + { + uint32_t res; + #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + res = 0U; + #else + __asm volatile("MRS %0,PSPLIM_NS" : "=r" (res)); + #endif + return res; + } + + __IAR_FT void __TZ_set_PSPLIM_NS(uint32_t value) + { + #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + (!defined (__ARM_FEATURE_CMSE ) || (__ARM_FEATURE_CMSE < 3))) + // without main extensions, the non-secure PSPLIM is RAZ/WI + (void)value; + #else + __asm volatile("MSR PSPLIM_NS,%0" :: "r" (value)); + #endif + } + + __IAR_FT uint32_t __TZ_get_MSPLIM_NS(void) + { + uint32_t res; + __asm volatile("MRS %0,MSPLIM_NS" : "=r" (res)); + return res; + } + + __IAR_FT void __TZ_set_MSPLIM_NS(uint32_t value) + { + __asm volatile("MSR MSPLIM_NS,%0" :: "r" (value)); + } + + #endif /* __ARM_ARCH_8M_MAIN__ or __ARM_ARCH_8M_BASE__ */ + +#endif /* __ICCARM_INTRINSICS_VERSION__ == 2 */ + +#define __BKPT(value) __asm volatile ("BKPT %0" : : "i"(value)) + +#if __IAR_M0_FAMILY + __STATIC_INLINE int32_t __SSAT(int32_t val, uint32_t sat) + { + if ((sat >= 1U) && (sat <= 32U)) + { + const int32_t max = (int32_t)((1U << (sat - 1U)) - 1U); + const int32_t min = -1 - max ; + if (val > max) + { + return max; + } + else if (val < min) + { + return min; + } + } + return val; + } + + __STATIC_INLINE uint32_t __USAT(int32_t val, uint32_t sat) + { + if (sat <= 31U) + { + const uint32_t max = ((1U << sat) - 1U); + if (val > (int32_t)max) + { + return max; + } + else if (val < 0) + { + return 0U; + } + } + return (uint32_t)val; + } +#endif + +#if (__CORTEX_M >= 0x03) /* __CORTEX_M is defined in core_cm0.h, core_cm3.h and core_cm4.h. */ + + __IAR_FT uint8_t __LDRBT(volatile uint8_t *addr) + { + uint32_t res; + __ASM("LDRBT %0, [%1]" : "=r" (res) : "r" (addr) : "memory"); + return ((uint8_t)res); + } + + __IAR_FT uint16_t __LDRHT(volatile uint16_t *addr) + { + uint32_t res; + __ASM("LDRHT %0, [%1]" : "=r" (res) : "r" (addr) : "memory"); + return ((uint16_t)res); + } + + __IAR_FT uint32_t __LDRT(volatile uint32_t *addr) + { + uint32_t res; + __ASM("LDRT %0, [%1]" : "=r" (res) : "r" (addr) : "memory"); + return res; + } + + __IAR_FT void __STRBT(uint8_t value, volatile uint8_t *addr) + { + __ASM("STRBT %1, [%0]" : : "r" (addr), "r" ((uint32_t)value) : "memory"); + } + + __IAR_FT void __STRHT(uint16_t value, volatile uint16_t *addr) + { + __ASM("STRHT %1, [%0]" : : "r" (addr), "r" ((uint32_t)value) : "memory"); + } + + __IAR_FT void __STRT(uint32_t value, volatile uint32_t *addr) + { + __ASM("STRT %1, [%0]" : : "r" (addr), "r" (value) : "memory"); + } + +#endif /* (__CORTEX_M >= 0x03) */ + +#if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ + (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) + + + __IAR_FT uint8_t __LDAB(volatile uint8_t *ptr) + { + uint32_t res; + __ASM volatile ("LDAB %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); + return ((uint8_t)res); + } + + __IAR_FT uint16_t __LDAH(volatile uint16_t *ptr) + { + uint32_t res; + __ASM volatile ("LDAH %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); + return ((uint16_t)res); + } + + __IAR_FT uint32_t __LDA(volatile uint32_t *ptr) + { + uint32_t res; + __ASM volatile ("LDA %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); + return res; + } + + __IAR_FT void __STLB(uint8_t value, volatile uint8_t *ptr) + { + __ASM volatile ("STLB %1, [%0]" :: "r" (ptr), "r" (value) : "memory"); + } + + __IAR_FT void __STLH(uint16_t value, volatile uint16_t *ptr) + { + __ASM volatile ("STLH %1, [%0]" :: "r" (ptr), "r" (value) : "memory"); + } + + __IAR_FT void __STL(uint32_t value, volatile uint32_t *ptr) + { + __ASM volatile ("STL %1, [%0]" :: "r" (ptr), "r" (value) : "memory"); + } + + __IAR_FT uint8_t __LDAEXB(volatile uint8_t *ptr) + { + uint32_t res; + __ASM volatile ("LDAEXB %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); + return ((uint8_t)res); + } + + __IAR_FT uint16_t __LDAEXH(volatile uint16_t *ptr) + { + uint32_t res; + __ASM volatile ("LDAEXH %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); + return ((uint16_t)res); + } + + __IAR_FT uint32_t __LDAEX(volatile uint32_t *ptr) + { + uint32_t res; + __ASM volatile ("LDAEX %0, [%1]" : "=r" (res) : "r" (ptr) : "memory"); + return res; + } + + __IAR_FT uint32_t __STLEXB(uint8_t value, volatile uint8_t *ptr) + { + uint32_t res; + __ASM volatile ("STLEXB %0, %2, [%1]" : "=r" (res) : "r" (ptr), "r" (value) : "memory"); + return res; + } + + __IAR_FT uint32_t __STLEXH(uint16_t value, volatile uint16_t *ptr) + { + uint32_t res; + __ASM volatile ("STLEXH %0, %2, [%1]" : "=r" (res) : "r" (ptr), "r" (value) : "memory"); + return res; + } + + __IAR_FT uint32_t __STLEX(uint32_t value, volatile uint32_t *ptr) + { + uint32_t res; + __ASM volatile ("STLEX %0, %2, [%1]" : "=r" (res) : "r" (ptr), "r" (value) : "memory"); + return res; + } + +#endif /* __ARM_ARCH_8M_MAIN__ or __ARM_ARCH_8M_BASE__ */ + +#undef __IAR_FT +#undef __IAR_M0_FAMILY +#undef __ICCARM_V8 + +#pragma diag_default=Pe940 +#pragma diag_default=Pe177 + +#endif /* __CMSIS_ICCARM_H__ */ diff --git a/stm32f103/Drivers/CMSIS/Include/cmsis_version.h b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_version.h similarity index 97% rename from stm32f103/Drivers/CMSIS/Include/cmsis_version.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_version.h index ae3f2e3..660f612 100644 --- a/stm32f103/Drivers/CMSIS/Include/cmsis_version.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/cmsis_version.h @@ -1,39 +1,39 @@ -/**************************************************************************//** - * @file cmsis_version.h - * @brief CMSIS Core(M) Version definitions - * @version V5.0.2 - * @date 19. April 2017 - ******************************************************************************/ -/* - * Copyright (c) 2009-2017 ARM Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CMSIS_VERSION_H -#define __CMSIS_VERSION_H - -/* CMSIS Version definitions */ -#define __CM_CMSIS_VERSION_MAIN ( 5U) /*!< [31:16] CMSIS Core(M) main version */ -#define __CM_CMSIS_VERSION_SUB ( 1U) /*!< [15:0] CMSIS Core(M) sub version */ -#define __CM_CMSIS_VERSION ((__CM_CMSIS_VERSION_MAIN << 16U) | \ - __CM_CMSIS_VERSION_SUB ) /*!< CMSIS Core(M) version number */ -#endif +/**************************************************************************//** + * @file cmsis_version.h + * @brief CMSIS Core(M) Version definitions + * @version V5.0.2 + * @date 19. April 2017 + ******************************************************************************/ +/* + * Copyright (c) 2009-2017 ARM Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CMSIS_VERSION_H +#define __CMSIS_VERSION_H + +/* CMSIS Version definitions */ +#define __CM_CMSIS_VERSION_MAIN ( 5U) /*!< [31:16] CMSIS Core(M) main version */ +#define __CM_CMSIS_VERSION_SUB ( 1U) /*!< [15:0] CMSIS Core(M) sub version */ +#define __CM_CMSIS_VERSION ((__CM_CMSIS_VERSION_MAIN << 16U) | \ + __CM_CMSIS_VERSION_SUB ) /*!< CMSIS Core(M) version number */ +#endif diff --git a/stm32f103/Drivers/CMSIS/Include/core_armv8mbl.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_armv8mbl.h similarity index 98% rename from stm32f103/Drivers/CMSIS/Include/core_armv8mbl.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_armv8mbl.h index ec76ab2..251e4ed 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_armv8mbl.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_armv8mbl.h @@ -1,1918 +1,1918 @@ -/**************************************************************************//** - * @file core_armv8mbl.h - * @brief CMSIS Armv8-M Baseline Core Peripheral Access Layer Header File - * @version V5.0.7 - * @date 22. June 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_ARMV8MBL_H_GENERIC -#define __CORE_ARMV8MBL_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup Cortex_ARMv8MBL - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS definitions */ -#define __ARMv8MBL_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __ARMv8MBL_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __ARMv8MBL_CMSIS_VERSION ((__ARMv8MBL_CMSIS_VERSION_MAIN << 16U) | \ - __ARMv8MBL_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_M ( 2U) /*!< Cortex-M Core */ - -/** __FPU_USED indicates whether an FPU is used or not. - This core does not support an FPU at all -*/ -#define __FPU_USED 0U - -#if defined ( __CC_ARM ) - #if defined __TARGET_FPU_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined __ARM_PCS_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __ICCARM__ ) - #if defined __ARMVFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TI_ARM__ ) - #if defined __TI_VFP_SUPPORT__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TASKING__ ) - #if defined __FPU_VFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_ARMV8MBL_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_ARMV8MBL_H_DEPENDANT -#define __CORE_ARMV8MBL_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __ARMv8MBL_REV - #define __ARMv8MBL_REV 0x0000U - #warning "__ARMv8MBL_REV not defined in device header file; using default!" - #endif - - #ifndef __FPU_PRESENT - #define __FPU_PRESENT 0U - #warning "__FPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __MPU_PRESENT - #define __MPU_PRESENT 0U - #warning "__MPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __SAUREGION_PRESENT - #define __SAUREGION_PRESENT 0U - #warning "__SAUREGION_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __VTOR_PRESENT - #define __VTOR_PRESENT 0U - #warning "__VTOR_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 2U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif - - #ifndef __ETM_PRESENT - #define __ETM_PRESENT 0U - #warning "__ETM_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __MTB_PRESENT - #define __MTB_PRESENT 0U - #warning "__MTB_PRESENT not defined in device header file; using default!" - #endif - -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group ARMv8MBL */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - - Core Debug Register - - Core MPU Register - - Core SAU Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ - uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ - uint32_t SPSEL:1; /*!< bit: 1 Stack-pointer select */ - uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ -#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[16U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[16U]; - __IOM uint32_t ICER[16U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[16U]; - __IOM uint32_t ISPR[16U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[16U]; - __IOM uint32_t ICPR[16U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[16U]; - __IOM uint32_t IABR[16U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ - uint32_t RESERVED4[16U]; - __IOM uint32_t ITNS[16U]; /*!< Offset: 0x280 (R/W) Interrupt Non-Secure State Register */ - uint32_t RESERVED5[16U]; - __IOM uint32_t IPR[124U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ -} NVIC_Type; - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) - __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ -#else - uint32_t RESERVED0; -#endif - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - uint32_t RESERVED1; - __IOM uint32_t SHPR[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_PENDNMISET_Pos 31U /*!< SCB ICSR: PENDNMISET Position */ -#define SCB_ICSR_PENDNMISET_Msk (1UL << SCB_ICSR_PENDNMISET_Pos) /*!< SCB ICSR: PENDNMISET Mask */ - -#define SCB_ICSR_NMIPENDSET_Pos SCB_ICSR_PENDNMISET_Pos /*!< SCB ICSR: NMIPENDSET Position, backward compatibility */ -#define SCB_ICSR_NMIPENDSET_Msk SCB_ICSR_PENDNMISET_Msk /*!< SCB ICSR: NMIPENDSET Mask, backward compatibility */ - -#define SCB_ICSR_PENDNMICLR_Pos 30U /*!< SCB ICSR: PENDNMICLR Position */ -#define SCB_ICSR_PENDNMICLR_Msk (1UL << SCB_ICSR_PENDNMICLR_Pos) /*!< SCB ICSR: PENDNMICLR Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_STTNS_Pos 24U /*!< SCB ICSR: STTNS Position (Security Extension) */ -#define SCB_ICSR_STTNS_Msk (1UL << SCB_ICSR_STTNS_Pos) /*!< SCB ICSR: STTNS Mask (Security Extension) */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ -#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) -/* SCB Vector Table Offset Register Definitions */ -#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ -#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ -#endif - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_PRIS_Pos 14U /*!< SCB AIRCR: PRIS Position */ -#define SCB_AIRCR_PRIS_Msk (1UL << SCB_AIRCR_PRIS_Pos) /*!< SCB AIRCR: PRIS Mask */ - -#define SCB_AIRCR_BFHFNMINS_Pos 13U /*!< SCB AIRCR: BFHFNMINS Position */ -#define SCB_AIRCR_BFHFNMINS_Msk (1UL << SCB_AIRCR_BFHFNMINS_Pos) /*!< SCB AIRCR: BFHFNMINS Mask */ - -#define SCB_AIRCR_SYSRESETREQS_Pos 3U /*!< SCB AIRCR: SYSRESETREQS Position */ -#define SCB_AIRCR_SYSRESETREQS_Msk (1UL << SCB_AIRCR_SYSRESETREQS_Pos) /*!< SCB AIRCR: SYSRESETREQS Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEPS_Pos 3U /*!< SCB SCR: SLEEPDEEPS Position */ -#define SCB_SCR_SLEEPDEEPS_Msk (1UL << SCB_SCR_SLEEPDEEPS_Pos) /*!< SCB SCR: SLEEPDEEPS Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_BP_Pos 18U /*!< SCB CCR: BP Position */ -#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos) /*!< SCB CCR: BP Mask */ - -#define SCB_CCR_IC_Pos 17U /*!< SCB CCR: IC Position */ -#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos) /*!< SCB CCR: IC Mask */ - -#define SCB_CCR_DC_Pos 16U /*!< SCB CCR: DC Position */ -#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos) /*!< SCB CCR: DC Mask */ - -#define SCB_CCR_STKOFHFNMIGN_Pos 10U /*!< SCB CCR: STKOFHFNMIGN Position */ -#define SCB_CCR_STKOFHFNMIGN_Msk (1UL << SCB_CCR_STKOFHFNMIGN_Pos) /*!< SCB CCR: STKOFHFNMIGN Mask */ - -#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ -#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ - -#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ -#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ -#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_HARDFAULTPENDED_Pos 21U /*!< SCB SHCSR: HARDFAULTPENDED Position */ -#define SCB_SHCSR_HARDFAULTPENDED_Msk (1UL << SCB_SHCSR_HARDFAULTPENDED_Pos) /*!< SCB SHCSR: HARDFAULTPENDED Mask */ - -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ -#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ - -#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ -#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ - -#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ -#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ - -#define SCB_SHCSR_NMIACT_Pos 5U /*!< SCB SHCSR: NMIACT Position */ -#define SCB_SHCSR_NMIACT_Msk (1UL << SCB_SHCSR_NMIACT_Pos) /*!< SCB SHCSR: NMIACT Mask */ - -#define SCB_SHCSR_HARDFAULTACT_Pos 2U /*!< SCB SHCSR: HARDFAULTACT Position */ -#define SCB_SHCSR_HARDFAULTACT_Msk (1UL << SCB_SHCSR_HARDFAULTACT_Pos) /*!< SCB SHCSR: HARDFAULTACT Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) - \brief Type definitions for the Data Watchpoint and Trace (DWT) - @{ - */ - -/** - \brief Structure type to access the Data Watchpoint and Trace Register (DWT). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ - uint32_t RESERVED0[6U]; - __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ - __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ - uint32_t RESERVED1[1U]; - __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ - uint32_t RESERVED2[1U]; - __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ - uint32_t RESERVED3[1U]; - __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ - uint32_t RESERVED4[1U]; - __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ - uint32_t RESERVED5[1U]; - __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ - uint32_t RESERVED6[1U]; - __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ - uint32_t RESERVED7[1U]; - __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ - uint32_t RESERVED8[1U]; - __IOM uint32_t COMP4; /*!< Offset: 0x060 (R/W) Comparator Register 4 */ - uint32_t RESERVED9[1U]; - __IOM uint32_t FUNCTION4; /*!< Offset: 0x068 (R/W) Function Register 4 */ - uint32_t RESERVED10[1U]; - __IOM uint32_t COMP5; /*!< Offset: 0x070 (R/W) Comparator Register 5 */ - uint32_t RESERVED11[1U]; - __IOM uint32_t FUNCTION5; /*!< Offset: 0x078 (R/W) Function Register 5 */ - uint32_t RESERVED12[1U]; - __IOM uint32_t COMP6; /*!< Offset: 0x080 (R/W) Comparator Register 6 */ - uint32_t RESERVED13[1U]; - __IOM uint32_t FUNCTION6; /*!< Offset: 0x088 (R/W) Function Register 6 */ - uint32_t RESERVED14[1U]; - __IOM uint32_t COMP7; /*!< Offset: 0x090 (R/W) Comparator Register 7 */ - uint32_t RESERVED15[1U]; - __IOM uint32_t FUNCTION7; /*!< Offset: 0x098 (R/W) Function Register 7 */ - uint32_t RESERVED16[1U]; - __IOM uint32_t COMP8; /*!< Offset: 0x0A0 (R/W) Comparator Register 8 */ - uint32_t RESERVED17[1U]; - __IOM uint32_t FUNCTION8; /*!< Offset: 0x0A8 (R/W) Function Register 8 */ - uint32_t RESERVED18[1U]; - __IOM uint32_t COMP9; /*!< Offset: 0x0B0 (R/W) Comparator Register 9 */ - uint32_t RESERVED19[1U]; - __IOM uint32_t FUNCTION9; /*!< Offset: 0x0B8 (R/W) Function Register 9 */ - uint32_t RESERVED20[1U]; - __IOM uint32_t COMP10; /*!< Offset: 0x0C0 (R/W) Comparator Register 10 */ - uint32_t RESERVED21[1U]; - __IOM uint32_t FUNCTION10; /*!< Offset: 0x0C8 (R/W) Function Register 10 */ - uint32_t RESERVED22[1U]; - __IOM uint32_t COMP11; /*!< Offset: 0x0D0 (R/W) Comparator Register 11 */ - uint32_t RESERVED23[1U]; - __IOM uint32_t FUNCTION11; /*!< Offset: 0x0D8 (R/W) Function Register 11 */ - uint32_t RESERVED24[1U]; - __IOM uint32_t COMP12; /*!< Offset: 0x0E0 (R/W) Comparator Register 12 */ - uint32_t RESERVED25[1U]; - __IOM uint32_t FUNCTION12; /*!< Offset: 0x0E8 (R/W) Function Register 12 */ - uint32_t RESERVED26[1U]; - __IOM uint32_t COMP13; /*!< Offset: 0x0F0 (R/W) Comparator Register 13 */ - uint32_t RESERVED27[1U]; - __IOM uint32_t FUNCTION13; /*!< Offset: 0x0F8 (R/W) Function Register 13 */ - uint32_t RESERVED28[1U]; - __IOM uint32_t COMP14; /*!< Offset: 0x100 (R/W) Comparator Register 14 */ - uint32_t RESERVED29[1U]; - __IOM uint32_t FUNCTION14; /*!< Offset: 0x108 (R/W) Function Register 14 */ - uint32_t RESERVED30[1U]; - __IOM uint32_t COMP15; /*!< Offset: 0x110 (R/W) Comparator Register 15 */ - uint32_t RESERVED31[1U]; - __IOM uint32_t FUNCTION15; /*!< Offset: 0x118 (R/W) Function Register 15 */ -} DWT_Type; - -/* DWT Control Register Definitions */ -#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ -#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ - -#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ -#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ - -#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ -#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ - -#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ -#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ - -#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ -#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ - -/* DWT Comparator Function Register Definitions */ -#define DWT_FUNCTION_ID_Pos 27U /*!< DWT FUNCTION: ID Position */ -#define DWT_FUNCTION_ID_Msk (0x1FUL << DWT_FUNCTION_ID_Pos) /*!< DWT FUNCTION: ID Mask */ - -#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ -#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ - -#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ -#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ - -#define DWT_FUNCTION_ACTION_Pos 4U /*!< DWT FUNCTION: ACTION Position */ -#define DWT_FUNCTION_ACTION_Msk (0x3UL << DWT_FUNCTION_ACTION_Pos) /*!< DWT FUNCTION: ACTION Mask */ - -#define DWT_FUNCTION_MATCH_Pos 0U /*!< DWT FUNCTION: MATCH Position */ -#define DWT_FUNCTION_MATCH_Msk (0xFUL /*<< DWT_FUNCTION_MATCH_Pos*/) /*!< DWT FUNCTION: MATCH Mask */ - -/*@}*/ /* end of group CMSIS_DWT */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_TPI Trace Port Interface (TPI) - \brief Type definitions for the Trace Port Interface (TPI) - @{ - */ - -/** - \brief Structure type to access the Trace Port Interface Register (TPI). - */ -typedef struct -{ - __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Sizes Register */ - __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Sizes Register */ - uint32_t RESERVED0[2U]; - __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ - uint32_t RESERVED1[55U]; - __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ - uint32_t RESERVED2[131U]; - __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ - __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ - __IOM uint32_t PSCR; /*!< Offset: 0x308 (R/W) Periodic Synchronization Control Register */ - uint32_t RESERVED3[809U]; - __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) Software Lock Access Register */ - __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) Software Lock Status Register */ - uint32_t RESERVED4[4U]; - __IM uint32_t TYPE; /*!< Offset: 0xFC8 (R/ ) Device Identifier Register */ - __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) Device Type Register */ -} TPI_Type; - -/* TPI Asynchronous Clock Prescaler Register Definitions */ -#define TPI_ACPR_SWOSCALER_Pos 0U /*!< TPI ACPR: SWOSCALER Position */ -#define TPI_ACPR_SWOSCALER_Msk (0xFFFFUL /*<< TPI_ACPR_SWOSCALER_Pos*/) /*!< TPI ACPR: SWOSCALER Mask */ - -/* TPI Selected Pin Protocol Register Definitions */ -#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ -#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ - -/* TPI Formatter and Flush Status Register Definitions */ -#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ -#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ - -#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ -#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ - -#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ -#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ - -#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ -#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ - -/* TPI Formatter and Flush Control Register Definitions */ -#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ -#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ - -#define TPI_FFCR_FOnMan_Pos 6U /*!< TPI FFCR: FOnMan Position */ -#define TPI_FFCR_FOnMan_Msk (0x1UL << TPI_FFCR_FOnMan_Pos) /*!< TPI FFCR: FOnMan Mask */ - -#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ -#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ - -/* TPI Periodic Synchronization Control Register Definitions */ -#define TPI_PSCR_PSCount_Pos 0U /*!< TPI PSCR: PSCount Position */ -#define TPI_PSCR_PSCount_Msk (0x1FUL /*<< TPI_PSCR_PSCount_Pos*/) /*!< TPI PSCR: TPSCount Mask */ - -/* TPI Software Lock Status Register Definitions */ -#define TPI_LSR_nTT_Pos 1U /*!< TPI LSR: Not thirty-two bit. Position */ -#define TPI_LSR_nTT_Msk (0x1UL << TPI_LSR_nTT_Pos) /*!< TPI LSR: Not thirty-two bit. Mask */ - -#define TPI_LSR_SLK_Pos 1U /*!< TPI LSR: Software Lock status Position */ -#define TPI_LSR_SLK_Msk (0x1UL << TPI_LSR_SLK_Pos) /*!< TPI LSR: Software Lock status Mask */ - -#define TPI_LSR_SLI_Pos 0U /*!< TPI LSR: Software Lock implemented Position */ -#define TPI_LSR_SLI_Msk (0x1UL /*<< TPI_LSR_SLI_Pos*/) /*!< TPI LSR: Software Lock implemented Mask */ - -/* TPI DEVID Register Definitions */ -#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ -#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ - -#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ -#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ - -#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ -#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ - -#define TPI_DEVID_FIFOSZ_Pos 6U /*!< TPI DEVID: FIFO depth Position */ -#define TPI_DEVID_FIFOSZ_Msk (0x7UL << TPI_DEVID_FIFOSZ_Pos) /*!< TPI DEVID: FIFO depth Mask */ - -/* TPI DEVTYPE Register Definitions */ -#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ -#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ - -#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ -#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ - -/*@}*/ /* end of group CMSIS_TPI */ - - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_MPU Memory Protection Unit (MPU) - \brief Type definitions for the Memory Protection Unit (MPU) - @{ - */ - -/** - \brief Structure type to access the Memory Protection Unit (MPU). - */ -typedef struct -{ - __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ - __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region Number Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ - __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) MPU Region Limit Address Register */ - uint32_t RESERVED0[7U]; - union { - __IOM uint32_t MAIR[2]; - struct { - __IOM uint32_t MAIR0; /*!< Offset: 0x030 (R/W) MPU Memory Attribute Indirection Register 0 */ - __IOM uint32_t MAIR1; /*!< Offset: 0x034 (R/W) MPU Memory Attribute Indirection Register 1 */ - }; - }; -} MPU_Type; - -#define MPU_TYPE_RALIASES 1U - -/* MPU Type Register Definitions */ -#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ -#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ - -#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ -#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ - -#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ -#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ - -/* MPU Control Register Definitions */ -#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ -#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ - -#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ -#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ - -#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ -#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ - -/* MPU Region Number Register Definitions */ -#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ -#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ - -/* MPU Region Base Address Register Definitions */ -#define MPU_RBAR_BASE_Pos 5U /*!< MPU RBAR: BASE Position */ -#define MPU_RBAR_BASE_Msk (0x7FFFFFFUL << MPU_RBAR_BASE_Pos) /*!< MPU RBAR: BASE Mask */ - -#define MPU_RBAR_SH_Pos 3U /*!< MPU RBAR: SH Position */ -#define MPU_RBAR_SH_Msk (0x3UL << MPU_RBAR_SH_Pos) /*!< MPU RBAR: SH Mask */ - -#define MPU_RBAR_AP_Pos 1U /*!< MPU RBAR: AP Position */ -#define MPU_RBAR_AP_Msk (0x3UL << MPU_RBAR_AP_Pos) /*!< MPU RBAR: AP Mask */ - -#define MPU_RBAR_XN_Pos 0U /*!< MPU RBAR: XN Position */ -#define MPU_RBAR_XN_Msk (01UL /*<< MPU_RBAR_XN_Pos*/) /*!< MPU RBAR: XN Mask */ - -/* MPU Region Limit Address Register Definitions */ -#define MPU_RLAR_LIMIT_Pos 5U /*!< MPU RLAR: LIMIT Position */ -#define MPU_RLAR_LIMIT_Msk (0x7FFFFFFUL << MPU_RLAR_LIMIT_Pos) /*!< MPU RLAR: LIMIT Mask */ - -#define MPU_RLAR_AttrIndx_Pos 1U /*!< MPU RLAR: AttrIndx Position */ -#define MPU_RLAR_AttrIndx_Msk (0x7UL << MPU_RLAR_AttrIndx_Pos) /*!< MPU RLAR: AttrIndx Mask */ - -#define MPU_RLAR_EN_Pos 0U /*!< MPU RLAR: EN Position */ -#define MPU_RLAR_EN_Msk (1UL /*<< MPU_RLAR_EN_Pos*/) /*!< MPU RLAR: EN Mask */ - -/* MPU Memory Attribute Indirection Register 0 Definitions */ -#define MPU_MAIR0_Attr3_Pos 24U /*!< MPU MAIR0: Attr3 Position */ -#define MPU_MAIR0_Attr3_Msk (0xFFUL << MPU_MAIR0_Attr3_Pos) /*!< MPU MAIR0: Attr3 Mask */ - -#define MPU_MAIR0_Attr2_Pos 16U /*!< MPU MAIR0: Attr2 Position */ -#define MPU_MAIR0_Attr2_Msk (0xFFUL << MPU_MAIR0_Attr2_Pos) /*!< MPU MAIR0: Attr2 Mask */ - -#define MPU_MAIR0_Attr1_Pos 8U /*!< MPU MAIR0: Attr1 Position */ -#define MPU_MAIR0_Attr1_Msk (0xFFUL << MPU_MAIR0_Attr1_Pos) /*!< MPU MAIR0: Attr1 Mask */ - -#define MPU_MAIR0_Attr0_Pos 0U /*!< MPU MAIR0: Attr0 Position */ -#define MPU_MAIR0_Attr0_Msk (0xFFUL /*<< MPU_MAIR0_Attr0_Pos*/) /*!< MPU MAIR0: Attr0 Mask */ - -/* MPU Memory Attribute Indirection Register 1 Definitions */ -#define MPU_MAIR1_Attr7_Pos 24U /*!< MPU MAIR1: Attr7 Position */ -#define MPU_MAIR1_Attr7_Msk (0xFFUL << MPU_MAIR1_Attr7_Pos) /*!< MPU MAIR1: Attr7 Mask */ - -#define MPU_MAIR1_Attr6_Pos 16U /*!< MPU MAIR1: Attr6 Position */ -#define MPU_MAIR1_Attr6_Msk (0xFFUL << MPU_MAIR1_Attr6_Pos) /*!< MPU MAIR1: Attr6 Mask */ - -#define MPU_MAIR1_Attr5_Pos 8U /*!< MPU MAIR1: Attr5 Position */ -#define MPU_MAIR1_Attr5_Msk (0xFFUL << MPU_MAIR1_Attr5_Pos) /*!< MPU MAIR1: Attr5 Mask */ - -#define MPU_MAIR1_Attr4_Pos 0U /*!< MPU MAIR1: Attr4 Position */ -#define MPU_MAIR1_Attr4_Msk (0xFFUL /*<< MPU_MAIR1_Attr4_Pos*/) /*!< MPU MAIR1: Attr4 Mask */ - -/*@} end of group CMSIS_MPU */ -#endif - - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SAU Security Attribution Unit (SAU) - \brief Type definitions for the Security Attribution Unit (SAU) - @{ - */ - -/** - \brief Structure type to access the Security Attribution Unit (SAU). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SAU Control Register */ - __IM uint32_t TYPE; /*!< Offset: 0x004 (R/ ) SAU Type Register */ -#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) SAU Region Number Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) SAU Region Base Address Register */ - __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) SAU Region Limit Address Register */ -#endif -} SAU_Type; - -/* SAU Control Register Definitions */ -#define SAU_CTRL_ALLNS_Pos 1U /*!< SAU CTRL: ALLNS Position */ -#define SAU_CTRL_ALLNS_Msk (1UL << SAU_CTRL_ALLNS_Pos) /*!< SAU CTRL: ALLNS Mask */ - -#define SAU_CTRL_ENABLE_Pos 0U /*!< SAU CTRL: ENABLE Position */ -#define SAU_CTRL_ENABLE_Msk (1UL /*<< SAU_CTRL_ENABLE_Pos*/) /*!< SAU CTRL: ENABLE Mask */ - -/* SAU Type Register Definitions */ -#define SAU_TYPE_SREGION_Pos 0U /*!< SAU TYPE: SREGION Position */ -#define SAU_TYPE_SREGION_Msk (0xFFUL /*<< SAU_TYPE_SREGION_Pos*/) /*!< SAU TYPE: SREGION Mask */ - -#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) -/* SAU Region Number Register Definitions */ -#define SAU_RNR_REGION_Pos 0U /*!< SAU RNR: REGION Position */ -#define SAU_RNR_REGION_Msk (0xFFUL /*<< SAU_RNR_REGION_Pos*/) /*!< SAU RNR: REGION Mask */ - -/* SAU Region Base Address Register Definitions */ -#define SAU_RBAR_BADDR_Pos 5U /*!< SAU RBAR: BADDR Position */ -#define SAU_RBAR_BADDR_Msk (0x7FFFFFFUL << SAU_RBAR_BADDR_Pos) /*!< SAU RBAR: BADDR Mask */ - -/* SAU Region Limit Address Register Definitions */ -#define SAU_RLAR_LADDR_Pos 5U /*!< SAU RLAR: LADDR Position */ -#define SAU_RLAR_LADDR_Msk (0x7FFFFFFUL << SAU_RLAR_LADDR_Pos) /*!< SAU RLAR: LADDR Mask */ - -#define SAU_RLAR_NSC_Pos 1U /*!< SAU RLAR: NSC Position */ -#define SAU_RLAR_NSC_Msk (1UL << SAU_RLAR_NSC_Pos) /*!< SAU RLAR: NSC Mask */ - -#define SAU_RLAR_ENABLE_Pos 0U /*!< SAU RLAR: ENABLE Position */ -#define SAU_RLAR_ENABLE_Msk (1UL /*<< SAU_RLAR_ENABLE_Pos*/) /*!< SAU RLAR: ENABLE Mask */ - -#endif /* defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) */ - -/*@} end of group CMSIS_SAU */ -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief Type definitions for the Core Debug Registers - @{ - */ - -/** - \brief Structure type to access the Core Debug Register (CoreDebug). - */ -typedef struct -{ - __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ - __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ - __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ - __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ - uint32_t RESERVED4[1U]; - __IOM uint32_t DAUTHCTRL; /*!< Offset: 0x014 (R/W) Debug Authentication Control Register */ - __IOM uint32_t DSCSR; /*!< Offset: 0x018 (R/W) Debug Security Control and Status Register */ -} CoreDebug_Type; - -/* Debug Halting Control and Status Register Definitions */ -#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ -#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ - -#define CoreDebug_DHCSR_S_RESTART_ST_Pos 26U /*!< CoreDebug DHCSR: S_RESTART_ST Position */ -#define CoreDebug_DHCSR_S_RESTART_ST_Msk (1UL << CoreDebug_DHCSR_S_RESTART_ST_Pos) /*!< CoreDebug DHCSR: S_RESTART_ST Mask */ - -#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ -#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ - -#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ -#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ - -#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ -#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ - -#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ -#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ - -#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ -#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ - -#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ -#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ - -#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ -#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ - -#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ -#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ - -#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ -#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ - -#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ -#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ - -/* Debug Core Register Selector Register Definitions */ -#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ -#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ - -#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ -#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ - -/* Debug Exception and Monitor Control Register */ -#define CoreDebug_DEMCR_DWTENA_Pos 24U /*!< CoreDebug DEMCR: DWTENA Position */ -#define CoreDebug_DEMCR_DWTENA_Msk (1UL << CoreDebug_DEMCR_DWTENA_Pos) /*!< CoreDebug DEMCR: DWTENA Mask */ - -#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ -#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ - -#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ -#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ - -/* Debug Authentication Control Register Definitions */ -#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos 3U /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Position */ -#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Mask */ - -#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos 2U /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Position */ -#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Msk (1UL << CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos) /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Mask */ - -#define CoreDebug_DAUTHCTRL_INTSPIDEN_Pos 1U /*!< CoreDebug DAUTHCTRL: INTSPIDEN Position */ -#define CoreDebug_DAUTHCTRL_INTSPIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPIDEN Mask */ - -#define CoreDebug_DAUTHCTRL_SPIDENSEL_Pos 0U /*!< CoreDebug DAUTHCTRL: SPIDENSEL Position */ -#define CoreDebug_DAUTHCTRL_SPIDENSEL_Msk (1UL /*<< CoreDebug_DAUTHCTRL_SPIDENSEL_Pos*/) /*!< CoreDebug DAUTHCTRL: SPIDENSEL Mask */ - -/* Debug Security Control and Status Register Definitions */ -#define CoreDebug_DSCSR_CDS_Pos 16U /*!< CoreDebug DSCSR: CDS Position */ -#define CoreDebug_DSCSR_CDS_Msk (1UL << CoreDebug_DSCSR_CDS_Pos) /*!< CoreDebug DSCSR: CDS Mask */ - -#define CoreDebug_DSCSR_SBRSEL_Pos 1U /*!< CoreDebug DSCSR: SBRSEL Position */ -#define CoreDebug_DSCSR_SBRSEL_Msk (1UL << CoreDebug_DSCSR_SBRSEL_Pos) /*!< CoreDebug DSCSR: SBRSEL Mask */ - -#define CoreDebug_DSCSR_SBRSELEN_Pos 0U /*!< CoreDebug DSCSR: SBRSELEN Position */ -#define CoreDebug_DSCSR_SBRSELEN_Msk (1UL /*<< CoreDebug_DSCSR_SBRSELEN_Pos*/) /*!< CoreDebug DSCSR: SBRSELEN Mask */ - -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ - #define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ - #define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ - #define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ - #define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ - #define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ - #define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ - #define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - - - #define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ - #define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ - #define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ - #define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ - #define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ - #define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE ) /*!< Core Debug configuration struct */ - - #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ - #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ - #endif - - #if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - #define SAU_BASE (SCS_BASE + 0x0DD0UL) /*!< Security Attribution Unit */ - #define SAU ((SAU_Type *) SAU_BASE ) /*!< Security Attribution Unit */ - #endif - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - #define SCS_BASE_NS (0xE002E000UL) /*!< System Control Space Base Address (non-secure address space) */ - #define CoreDebug_BASE_NS (0xE002EDF0UL) /*!< Core Debug Base Address (non-secure address space) */ - #define SysTick_BASE_NS (SCS_BASE_NS + 0x0010UL) /*!< SysTick Base Address (non-secure address space) */ - #define NVIC_BASE_NS (SCS_BASE_NS + 0x0100UL) /*!< NVIC Base Address (non-secure address space) */ - #define SCB_BASE_NS (SCS_BASE_NS + 0x0D00UL) /*!< System Control Block Base Address (non-secure address space) */ - - #define SCB_NS ((SCB_Type *) SCB_BASE_NS ) /*!< SCB configuration struct (non-secure address space) */ - #define SysTick_NS ((SysTick_Type *) SysTick_BASE_NS ) /*!< SysTick configuration struct (non-secure address space) */ - #define NVIC_NS ((NVIC_Type *) NVIC_BASE_NS ) /*!< NVIC configuration struct (non-secure address space) */ - #define CoreDebug_NS ((CoreDebug_Type *) CoreDebug_BASE_NS) /*!< Core Debug configuration struct (non-secure address space) */ - - #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE_NS (SCS_BASE_NS + 0x0D90UL) /*!< Memory Protection Unit (non-secure address space) */ - #define MPU_NS ((MPU_Type *) MPU_BASE_NS ) /*!< Memory Protection Unit (non-secure address space) */ - #endif - -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping - #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ - #define NVIC_GetActive __NVIC_GetActive - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* Special LR values for Secure/Non-Secure call handling and exception handling */ - -/* Function Return Payload (from ARMv8-M Architecture Reference Manual) LR value on entry from Secure BLXNS */ -#define FNC_RETURN (0xFEFFFFFFUL) /* bit [0] ignored when processing a branch */ - -/* The following EXC_RETURN mask values are used to evaluate the LR on exception entry */ -#define EXC_RETURN_PREFIX (0xFF000000UL) /* bits [31:24] set to indicate an EXC_RETURN value */ -#define EXC_RETURN_S (0x00000040UL) /* bit [6] stack used to push registers: 0=Non-secure 1=Secure */ -#define EXC_RETURN_DCRS (0x00000020UL) /* bit [5] stacking rules for called registers: 0=skipped 1=saved */ -#define EXC_RETURN_FTYPE (0x00000010UL) /* bit [4] allocate stack for floating-point context: 0=done 1=skipped */ -#define EXC_RETURN_MODE (0x00000008UL) /* bit [3] processor mode for return: 0=Handler mode 1=Thread mode */ -#define EXC_RETURN_SPSEL (0x00000002UL) /* bit [1] stack pointer used to restore context: 0=MSP 1=PSP */ -#define EXC_RETURN_ES (0x00000001UL) /* bit [0] security state exception was taken to: 0=Non-secure 1=Secure */ - -/* Integrity Signature (from ARMv8-M Architecture Reference Manual) for exception context stacking */ -#if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) /* Value for processors with floating-point extension: */ -#define EXC_INTEGRITY_SIGNATURE (0xFEFA125AUL) /* bit [0] SFTC must match LR bit[4] EXC_RETURN_FTYPE */ -#else -#define EXC_INTEGRITY_SIGNATURE (0xFEFA125BUL) /* Value for processors without floating-point extension */ -#endif - - -/* Interrupt Priorities are WORD accessible only under Armv6-M */ -/* The following MACROS handle generation of the register offset and byte masks */ -#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) -#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) -#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) - -#define __NVIC_SetPriorityGrouping(X) (void)(X) -#define __NVIC_GetPriorityGrouping() (0U) - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt - \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief Get Interrupt Target State - \details Reads the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - \return 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_GetTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Target State - \details Sets the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_SetTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] |= ((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Clear Interrupt Target State - \details Clears the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_ClearTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] &= ~((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IPR[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IPR[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } - else - { - SCB->SHPR[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHPR[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IPR[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return((uint32_t)(((SCB->SHPR[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Encode Priority - \details Encodes the priority for an interrupt with the given priority group, - preemptive priority value, and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Used priority group. - \param [in] PreemptPriority Preemptive priority value (starting from 0). - \param [in] SubPriority Subpriority value (starting from 0). - \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). - */ -__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - return ( - ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | - ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) - ); -} - - -/** - \brief Decode Priority - \details Decodes an interrupt priority value with a given priority group to - preemptive priority value and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. - \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). - \param [in] PriorityGroup Used priority group. - \param [out] pPreemptPriority Preemptive priority value (starting from 0). - \param [out] pSubPriority Subpriority value (starting from 0). - */ -__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); - *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); -} - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - VTOR must been relocated to SRAM before. - If VTOR is not present address 0 must be mapped to SRAM. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) - uint32_t *vectors = (uint32_t *)SCB->VTOR; -#else - uint32_t *vectors = (uint32_t *)0x0U; -#endif - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) - uint32_t *vectors = (uint32_t *)SCB->VTOR; -#else - uint32_t *vectors = (uint32_t *)0x0U; -#endif - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - SCB_AIRCR_SYSRESETREQ_Msk); - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief Enable Interrupt (non-secure) - \details Enables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_EnableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status (non-secure) - \details Returns a device specific interrupt enable status from the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetEnableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt (non-secure) - \details Disables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_DisableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Pending Interrupt (non-secure) - \details Reads the NVIC pending register in the non-secure NVIC when in secure state and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt (non-secure) - \details Sets the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_SetPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt (non-secure) - \details Clears the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_ClearPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt (non-secure) - \details Reads the active register in non-secure NVIC when in secure state and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetActive_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Priority (non-secure) - \details Sets the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every non-secure processor exception. - */ -__STATIC_INLINE void TZ_NVIC_SetPriority_NS(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->IPR[_IP_IDX(IRQn)] = ((uint32_t)(NVIC_NS->IPR[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } - else - { - SCB_NS->SHPR[_SHP_IDX(IRQn)] = ((uint32_t)(SCB_NS->SHPR[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } -} - - -/** - \brief Get Interrupt Priority (non-secure) - \details Reads the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetPriority_NS(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->IPR[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return((uint32_t)(((SCB_NS->SHPR[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } -} -#endif /* defined (__ARM_FEATURE_CMSE) &&(__ARM_FEATURE_CMSE == 3U) */ - -/*@} end of CMSIS_Core_NVICFunctions */ - -/* ########################## MPU functions #################################### */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - -#include "mpu_armv8.h" - -#endif - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - return 0U; /* No FPU */ -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ########################## SAU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SAUFunctions SAU Functions - \brief Functions that configure the SAU. - @{ - */ - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - -/** - \brief Enable SAU - \details Enables the Security Attribution Unit (SAU). - */ -__STATIC_INLINE void TZ_SAU_Enable(void) -{ - SAU->CTRL |= (SAU_CTRL_ENABLE_Msk); -} - - - -/** - \brief Disable SAU - \details Disables the Security Attribution Unit (SAU). - */ -__STATIC_INLINE void TZ_SAU_Disable(void) -{ - SAU->CTRL &= ~(SAU_CTRL_ENABLE_Msk); -} - -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - -/*@} end of CMSIS_Core_SAUFunctions */ - - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief System Tick Configuration (non-secure) - \details Initializes the non-secure System Timer and its interrupt when in secure state, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function TZ_SysTick_Config_NS is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - - */ -__STATIC_INLINE uint32_t TZ_SysTick_Config_NS(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick_NS->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - TZ_NVIC_SetPriority_NS (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick_NS->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick_NS->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_ARMV8MBL_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_armv8mbl.h + * @brief CMSIS Armv8-M Baseline Core Peripheral Access Layer Header File + * @version V5.0.7 + * @date 22. June 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_ARMV8MBL_H_GENERIC +#define __CORE_ARMV8MBL_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup Cortex_ARMv8MBL + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS definitions */ +#define __ARMv8MBL_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __ARMv8MBL_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __ARMv8MBL_CMSIS_VERSION ((__ARMv8MBL_CMSIS_VERSION_MAIN << 16U) | \ + __ARMv8MBL_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_M ( 2U) /*!< Cortex-M Core */ + +/** __FPU_USED indicates whether an FPU is used or not. + This core does not support an FPU at all +*/ +#define __FPU_USED 0U + +#if defined ( __CC_ARM ) + #if defined __TARGET_FPU_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined __ARM_PCS_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __ICCARM__ ) + #if defined __ARMVFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TI_ARM__ ) + #if defined __TI_VFP_SUPPORT__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TASKING__ ) + #if defined __FPU_VFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_ARMV8MBL_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_ARMV8MBL_H_DEPENDANT +#define __CORE_ARMV8MBL_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __ARMv8MBL_REV + #define __ARMv8MBL_REV 0x0000U + #warning "__ARMv8MBL_REV not defined in device header file; using default!" + #endif + + #ifndef __FPU_PRESENT + #define __FPU_PRESENT 0U + #warning "__FPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __MPU_PRESENT + #define __MPU_PRESENT 0U + #warning "__MPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __SAUREGION_PRESENT + #define __SAUREGION_PRESENT 0U + #warning "__SAUREGION_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __VTOR_PRESENT + #define __VTOR_PRESENT 0U + #warning "__VTOR_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 2U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif + + #ifndef __ETM_PRESENT + #define __ETM_PRESENT 0U + #warning "__ETM_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __MTB_PRESENT + #define __MTB_PRESENT 0U + #warning "__MTB_PRESENT not defined in device header file; using default!" + #endif + +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group ARMv8MBL */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + - Core Debug Register + - Core MPU Register + - Core SAU Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ + uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ + uint32_t SPSEL:1; /*!< bit: 1 Stack-pointer select */ + uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ +#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[16U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[16U]; + __IOM uint32_t ICER[16U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[16U]; + __IOM uint32_t ISPR[16U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[16U]; + __IOM uint32_t ICPR[16U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[16U]; + __IOM uint32_t IABR[16U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ + uint32_t RESERVED4[16U]; + __IOM uint32_t ITNS[16U]; /*!< Offset: 0x280 (R/W) Interrupt Non-Secure State Register */ + uint32_t RESERVED5[16U]; + __IOM uint32_t IPR[124U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ +} NVIC_Type; + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) + __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ +#else + uint32_t RESERVED0; +#endif + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + uint32_t RESERVED1; + __IOM uint32_t SHPR[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_PENDNMISET_Pos 31U /*!< SCB ICSR: PENDNMISET Position */ +#define SCB_ICSR_PENDNMISET_Msk (1UL << SCB_ICSR_PENDNMISET_Pos) /*!< SCB ICSR: PENDNMISET Mask */ + +#define SCB_ICSR_NMIPENDSET_Pos SCB_ICSR_PENDNMISET_Pos /*!< SCB ICSR: NMIPENDSET Position, backward compatibility */ +#define SCB_ICSR_NMIPENDSET_Msk SCB_ICSR_PENDNMISET_Msk /*!< SCB ICSR: NMIPENDSET Mask, backward compatibility */ + +#define SCB_ICSR_PENDNMICLR_Pos 30U /*!< SCB ICSR: PENDNMICLR Position */ +#define SCB_ICSR_PENDNMICLR_Msk (1UL << SCB_ICSR_PENDNMICLR_Pos) /*!< SCB ICSR: PENDNMICLR Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_STTNS_Pos 24U /*!< SCB ICSR: STTNS Position (Security Extension) */ +#define SCB_ICSR_STTNS_Msk (1UL << SCB_ICSR_STTNS_Pos) /*!< SCB ICSR: STTNS Mask (Security Extension) */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ +#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) +/* SCB Vector Table Offset Register Definitions */ +#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ +#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ +#endif + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_PRIS_Pos 14U /*!< SCB AIRCR: PRIS Position */ +#define SCB_AIRCR_PRIS_Msk (1UL << SCB_AIRCR_PRIS_Pos) /*!< SCB AIRCR: PRIS Mask */ + +#define SCB_AIRCR_BFHFNMINS_Pos 13U /*!< SCB AIRCR: BFHFNMINS Position */ +#define SCB_AIRCR_BFHFNMINS_Msk (1UL << SCB_AIRCR_BFHFNMINS_Pos) /*!< SCB AIRCR: BFHFNMINS Mask */ + +#define SCB_AIRCR_SYSRESETREQS_Pos 3U /*!< SCB AIRCR: SYSRESETREQS Position */ +#define SCB_AIRCR_SYSRESETREQS_Msk (1UL << SCB_AIRCR_SYSRESETREQS_Pos) /*!< SCB AIRCR: SYSRESETREQS Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEPS_Pos 3U /*!< SCB SCR: SLEEPDEEPS Position */ +#define SCB_SCR_SLEEPDEEPS_Msk (1UL << SCB_SCR_SLEEPDEEPS_Pos) /*!< SCB SCR: SLEEPDEEPS Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_BP_Pos 18U /*!< SCB CCR: BP Position */ +#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos) /*!< SCB CCR: BP Mask */ + +#define SCB_CCR_IC_Pos 17U /*!< SCB CCR: IC Position */ +#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos) /*!< SCB CCR: IC Mask */ + +#define SCB_CCR_DC_Pos 16U /*!< SCB CCR: DC Position */ +#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos) /*!< SCB CCR: DC Mask */ + +#define SCB_CCR_STKOFHFNMIGN_Pos 10U /*!< SCB CCR: STKOFHFNMIGN Position */ +#define SCB_CCR_STKOFHFNMIGN_Msk (1UL << SCB_CCR_STKOFHFNMIGN_Pos) /*!< SCB CCR: STKOFHFNMIGN Mask */ + +#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ +#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ + +#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ +#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ +#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_HARDFAULTPENDED_Pos 21U /*!< SCB SHCSR: HARDFAULTPENDED Position */ +#define SCB_SHCSR_HARDFAULTPENDED_Msk (1UL << SCB_SHCSR_HARDFAULTPENDED_Pos) /*!< SCB SHCSR: HARDFAULTPENDED Mask */ + +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ +#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ + +#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ +#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ + +#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ +#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ + +#define SCB_SHCSR_NMIACT_Pos 5U /*!< SCB SHCSR: NMIACT Position */ +#define SCB_SHCSR_NMIACT_Msk (1UL << SCB_SHCSR_NMIACT_Pos) /*!< SCB SHCSR: NMIACT Mask */ + +#define SCB_SHCSR_HARDFAULTACT_Pos 2U /*!< SCB SHCSR: HARDFAULTACT Position */ +#define SCB_SHCSR_HARDFAULTACT_Msk (1UL << SCB_SHCSR_HARDFAULTACT_Pos) /*!< SCB SHCSR: HARDFAULTACT Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) + \brief Type definitions for the Data Watchpoint and Trace (DWT) + @{ + */ + +/** + \brief Structure type to access the Data Watchpoint and Trace Register (DWT). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ + uint32_t RESERVED0[6U]; + __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ + __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ + uint32_t RESERVED1[1U]; + __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ + uint32_t RESERVED2[1U]; + __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ + uint32_t RESERVED3[1U]; + __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ + uint32_t RESERVED4[1U]; + __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ + uint32_t RESERVED5[1U]; + __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ + uint32_t RESERVED6[1U]; + __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ + uint32_t RESERVED7[1U]; + __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ + uint32_t RESERVED8[1U]; + __IOM uint32_t COMP4; /*!< Offset: 0x060 (R/W) Comparator Register 4 */ + uint32_t RESERVED9[1U]; + __IOM uint32_t FUNCTION4; /*!< Offset: 0x068 (R/W) Function Register 4 */ + uint32_t RESERVED10[1U]; + __IOM uint32_t COMP5; /*!< Offset: 0x070 (R/W) Comparator Register 5 */ + uint32_t RESERVED11[1U]; + __IOM uint32_t FUNCTION5; /*!< Offset: 0x078 (R/W) Function Register 5 */ + uint32_t RESERVED12[1U]; + __IOM uint32_t COMP6; /*!< Offset: 0x080 (R/W) Comparator Register 6 */ + uint32_t RESERVED13[1U]; + __IOM uint32_t FUNCTION6; /*!< Offset: 0x088 (R/W) Function Register 6 */ + uint32_t RESERVED14[1U]; + __IOM uint32_t COMP7; /*!< Offset: 0x090 (R/W) Comparator Register 7 */ + uint32_t RESERVED15[1U]; + __IOM uint32_t FUNCTION7; /*!< Offset: 0x098 (R/W) Function Register 7 */ + uint32_t RESERVED16[1U]; + __IOM uint32_t COMP8; /*!< Offset: 0x0A0 (R/W) Comparator Register 8 */ + uint32_t RESERVED17[1U]; + __IOM uint32_t FUNCTION8; /*!< Offset: 0x0A8 (R/W) Function Register 8 */ + uint32_t RESERVED18[1U]; + __IOM uint32_t COMP9; /*!< Offset: 0x0B0 (R/W) Comparator Register 9 */ + uint32_t RESERVED19[1U]; + __IOM uint32_t FUNCTION9; /*!< Offset: 0x0B8 (R/W) Function Register 9 */ + uint32_t RESERVED20[1U]; + __IOM uint32_t COMP10; /*!< Offset: 0x0C0 (R/W) Comparator Register 10 */ + uint32_t RESERVED21[1U]; + __IOM uint32_t FUNCTION10; /*!< Offset: 0x0C8 (R/W) Function Register 10 */ + uint32_t RESERVED22[1U]; + __IOM uint32_t COMP11; /*!< Offset: 0x0D0 (R/W) Comparator Register 11 */ + uint32_t RESERVED23[1U]; + __IOM uint32_t FUNCTION11; /*!< Offset: 0x0D8 (R/W) Function Register 11 */ + uint32_t RESERVED24[1U]; + __IOM uint32_t COMP12; /*!< Offset: 0x0E0 (R/W) Comparator Register 12 */ + uint32_t RESERVED25[1U]; + __IOM uint32_t FUNCTION12; /*!< Offset: 0x0E8 (R/W) Function Register 12 */ + uint32_t RESERVED26[1U]; + __IOM uint32_t COMP13; /*!< Offset: 0x0F0 (R/W) Comparator Register 13 */ + uint32_t RESERVED27[1U]; + __IOM uint32_t FUNCTION13; /*!< Offset: 0x0F8 (R/W) Function Register 13 */ + uint32_t RESERVED28[1U]; + __IOM uint32_t COMP14; /*!< Offset: 0x100 (R/W) Comparator Register 14 */ + uint32_t RESERVED29[1U]; + __IOM uint32_t FUNCTION14; /*!< Offset: 0x108 (R/W) Function Register 14 */ + uint32_t RESERVED30[1U]; + __IOM uint32_t COMP15; /*!< Offset: 0x110 (R/W) Comparator Register 15 */ + uint32_t RESERVED31[1U]; + __IOM uint32_t FUNCTION15; /*!< Offset: 0x118 (R/W) Function Register 15 */ +} DWT_Type; + +/* DWT Control Register Definitions */ +#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ +#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ + +#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ +#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ + +#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ +#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ + +#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ +#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ + +#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ +#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ + +/* DWT Comparator Function Register Definitions */ +#define DWT_FUNCTION_ID_Pos 27U /*!< DWT FUNCTION: ID Position */ +#define DWT_FUNCTION_ID_Msk (0x1FUL << DWT_FUNCTION_ID_Pos) /*!< DWT FUNCTION: ID Mask */ + +#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ +#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ + +#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ +#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ + +#define DWT_FUNCTION_ACTION_Pos 4U /*!< DWT FUNCTION: ACTION Position */ +#define DWT_FUNCTION_ACTION_Msk (0x3UL << DWT_FUNCTION_ACTION_Pos) /*!< DWT FUNCTION: ACTION Mask */ + +#define DWT_FUNCTION_MATCH_Pos 0U /*!< DWT FUNCTION: MATCH Position */ +#define DWT_FUNCTION_MATCH_Msk (0xFUL /*<< DWT_FUNCTION_MATCH_Pos*/) /*!< DWT FUNCTION: MATCH Mask */ + +/*@}*/ /* end of group CMSIS_DWT */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_TPI Trace Port Interface (TPI) + \brief Type definitions for the Trace Port Interface (TPI) + @{ + */ + +/** + \brief Structure type to access the Trace Port Interface Register (TPI). + */ +typedef struct +{ + __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Sizes Register */ + __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Sizes Register */ + uint32_t RESERVED0[2U]; + __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ + uint32_t RESERVED1[55U]; + __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ + uint32_t RESERVED2[131U]; + __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ + __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ + __IOM uint32_t PSCR; /*!< Offset: 0x308 (R/W) Periodic Synchronization Control Register */ + uint32_t RESERVED3[809U]; + __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) Software Lock Access Register */ + __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) Software Lock Status Register */ + uint32_t RESERVED4[4U]; + __IM uint32_t TYPE; /*!< Offset: 0xFC8 (R/ ) Device Identifier Register */ + __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) Device Type Register */ +} TPI_Type; + +/* TPI Asynchronous Clock Prescaler Register Definitions */ +#define TPI_ACPR_SWOSCALER_Pos 0U /*!< TPI ACPR: SWOSCALER Position */ +#define TPI_ACPR_SWOSCALER_Msk (0xFFFFUL /*<< TPI_ACPR_SWOSCALER_Pos*/) /*!< TPI ACPR: SWOSCALER Mask */ + +/* TPI Selected Pin Protocol Register Definitions */ +#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ +#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ + +/* TPI Formatter and Flush Status Register Definitions */ +#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ +#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ + +#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ +#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ + +#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ +#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ + +#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ +#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ + +/* TPI Formatter and Flush Control Register Definitions */ +#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ +#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ + +#define TPI_FFCR_FOnMan_Pos 6U /*!< TPI FFCR: FOnMan Position */ +#define TPI_FFCR_FOnMan_Msk (0x1UL << TPI_FFCR_FOnMan_Pos) /*!< TPI FFCR: FOnMan Mask */ + +#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ +#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ + +/* TPI Periodic Synchronization Control Register Definitions */ +#define TPI_PSCR_PSCount_Pos 0U /*!< TPI PSCR: PSCount Position */ +#define TPI_PSCR_PSCount_Msk (0x1FUL /*<< TPI_PSCR_PSCount_Pos*/) /*!< TPI PSCR: TPSCount Mask */ + +/* TPI Software Lock Status Register Definitions */ +#define TPI_LSR_nTT_Pos 1U /*!< TPI LSR: Not thirty-two bit. Position */ +#define TPI_LSR_nTT_Msk (0x1UL << TPI_LSR_nTT_Pos) /*!< TPI LSR: Not thirty-two bit. Mask */ + +#define TPI_LSR_SLK_Pos 1U /*!< TPI LSR: Software Lock status Position */ +#define TPI_LSR_SLK_Msk (0x1UL << TPI_LSR_SLK_Pos) /*!< TPI LSR: Software Lock status Mask */ + +#define TPI_LSR_SLI_Pos 0U /*!< TPI LSR: Software Lock implemented Position */ +#define TPI_LSR_SLI_Msk (0x1UL /*<< TPI_LSR_SLI_Pos*/) /*!< TPI LSR: Software Lock implemented Mask */ + +/* TPI DEVID Register Definitions */ +#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ +#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ + +#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ +#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ + +#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ +#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ + +#define TPI_DEVID_FIFOSZ_Pos 6U /*!< TPI DEVID: FIFO depth Position */ +#define TPI_DEVID_FIFOSZ_Msk (0x7UL << TPI_DEVID_FIFOSZ_Pos) /*!< TPI DEVID: FIFO depth Mask */ + +/* TPI DEVTYPE Register Definitions */ +#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ +#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ + +#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ +#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ + +/*@}*/ /* end of group CMSIS_TPI */ + + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_MPU Memory Protection Unit (MPU) + \brief Type definitions for the Memory Protection Unit (MPU) + @{ + */ + +/** + \brief Structure type to access the Memory Protection Unit (MPU). + */ +typedef struct +{ + __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ + __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region Number Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ + __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) MPU Region Limit Address Register */ + uint32_t RESERVED0[7U]; + union { + __IOM uint32_t MAIR[2]; + struct { + __IOM uint32_t MAIR0; /*!< Offset: 0x030 (R/W) MPU Memory Attribute Indirection Register 0 */ + __IOM uint32_t MAIR1; /*!< Offset: 0x034 (R/W) MPU Memory Attribute Indirection Register 1 */ + }; + }; +} MPU_Type; + +#define MPU_TYPE_RALIASES 1U + +/* MPU Type Register Definitions */ +#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ +#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ + +#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ +#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ + +#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ +#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ + +/* MPU Control Register Definitions */ +#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ +#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ + +#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ +#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ + +#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ +#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ + +/* MPU Region Number Register Definitions */ +#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ +#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ + +/* MPU Region Base Address Register Definitions */ +#define MPU_RBAR_BASE_Pos 5U /*!< MPU RBAR: BASE Position */ +#define MPU_RBAR_BASE_Msk (0x7FFFFFFUL << MPU_RBAR_BASE_Pos) /*!< MPU RBAR: BASE Mask */ + +#define MPU_RBAR_SH_Pos 3U /*!< MPU RBAR: SH Position */ +#define MPU_RBAR_SH_Msk (0x3UL << MPU_RBAR_SH_Pos) /*!< MPU RBAR: SH Mask */ + +#define MPU_RBAR_AP_Pos 1U /*!< MPU RBAR: AP Position */ +#define MPU_RBAR_AP_Msk (0x3UL << MPU_RBAR_AP_Pos) /*!< MPU RBAR: AP Mask */ + +#define MPU_RBAR_XN_Pos 0U /*!< MPU RBAR: XN Position */ +#define MPU_RBAR_XN_Msk (01UL /*<< MPU_RBAR_XN_Pos*/) /*!< MPU RBAR: XN Mask */ + +/* MPU Region Limit Address Register Definitions */ +#define MPU_RLAR_LIMIT_Pos 5U /*!< MPU RLAR: LIMIT Position */ +#define MPU_RLAR_LIMIT_Msk (0x7FFFFFFUL << MPU_RLAR_LIMIT_Pos) /*!< MPU RLAR: LIMIT Mask */ + +#define MPU_RLAR_AttrIndx_Pos 1U /*!< MPU RLAR: AttrIndx Position */ +#define MPU_RLAR_AttrIndx_Msk (0x7UL << MPU_RLAR_AttrIndx_Pos) /*!< MPU RLAR: AttrIndx Mask */ + +#define MPU_RLAR_EN_Pos 0U /*!< MPU RLAR: EN Position */ +#define MPU_RLAR_EN_Msk (1UL /*<< MPU_RLAR_EN_Pos*/) /*!< MPU RLAR: EN Mask */ + +/* MPU Memory Attribute Indirection Register 0 Definitions */ +#define MPU_MAIR0_Attr3_Pos 24U /*!< MPU MAIR0: Attr3 Position */ +#define MPU_MAIR0_Attr3_Msk (0xFFUL << MPU_MAIR0_Attr3_Pos) /*!< MPU MAIR0: Attr3 Mask */ + +#define MPU_MAIR0_Attr2_Pos 16U /*!< MPU MAIR0: Attr2 Position */ +#define MPU_MAIR0_Attr2_Msk (0xFFUL << MPU_MAIR0_Attr2_Pos) /*!< MPU MAIR0: Attr2 Mask */ + +#define MPU_MAIR0_Attr1_Pos 8U /*!< MPU MAIR0: Attr1 Position */ +#define MPU_MAIR0_Attr1_Msk (0xFFUL << MPU_MAIR0_Attr1_Pos) /*!< MPU MAIR0: Attr1 Mask */ + +#define MPU_MAIR0_Attr0_Pos 0U /*!< MPU MAIR0: Attr0 Position */ +#define MPU_MAIR0_Attr0_Msk (0xFFUL /*<< MPU_MAIR0_Attr0_Pos*/) /*!< MPU MAIR0: Attr0 Mask */ + +/* MPU Memory Attribute Indirection Register 1 Definitions */ +#define MPU_MAIR1_Attr7_Pos 24U /*!< MPU MAIR1: Attr7 Position */ +#define MPU_MAIR1_Attr7_Msk (0xFFUL << MPU_MAIR1_Attr7_Pos) /*!< MPU MAIR1: Attr7 Mask */ + +#define MPU_MAIR1_Attr6_Pos 16U /*!< MPU MAIR1: Attr6 Position */ +#define MPU_MAIR1_Attr6_Msk (0xFFUL << MPU_MAIR1_Attr6_Pos) /*!< MPU MAIR1: Attr6 Mask */ + +#define MPU_MAIR1_Attr5_Pos 8U /*!< MPU MAIR1: Attr5 Position */ +#define MPU_MAIR1_Attr5_Msk (0xFFUL << MPU_MAIR1_Attr5_Pos) /*!< MPU MAIR1: Attr5 Mask */ + +#define MPU_MAIR1_Attr4_Pos 0U /*!< MPU MAIR1: Attr4 Position */ +#define MPU_MAIR1_Attr4_Msk (0xFFUL /*<< MPU_MAIR1_Attr4_Pos*/) /*!< MPU MAIR1: Attr4 Mask */ + +/*@} end of group CMSIS_MPU */ +#endif + + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SAU Security Attribution Unit (SAU) + \brief Type definitions for the Security Attribution Unit (SAU) + @{ + */ + +/** + \brief Structure type to access the Security Attribution Unit (SAU). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SAU Control Register */ + __IM uint32_t TYPE; /*!< Offset: 0x004 (R/ ) SAU Type Register */ +#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) SAU Region Number Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) SAU Region Base Address Register */ + __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) SAU Region Limit Address Register */ +#endif +} SAU_Type; + +/* SAU Control Register Definitions */ +#define SAU_CTRL_ALLNS_Pos 1U /*!< SAU CTRL: ALLNS Position */ +#define SAU_CTRL_ALLNS_Msk (1UL << SAU_CTRL_ALLNS_Pos) /*!< SAU CTRL: ALLNS Mask */ + +#define SAU_CTRL_ENABLE_Pos 0U /*!< SAU CTRL: ENABLE Position */ +#define SAU_CTRL_ENABLE_Msk (1UL /*<< SAU_CTRL_ENABLE_Pos*/) /*!< SAU CTRL: ENABLE Mask */ + +/* SAU Type Register Definitions */ +#define SAU_TYPE_SREGION_Pos 0U /*!< SAU TYPE: SREGION Position */ +#define SAU_TYPE_SREGION_Msk (0xFFUL /*<< SAU_TYPE_SREGION_Pos*/) /*!< SAU TYPE: SREGION Mask */ + +#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) +/* SAU Region Number Register Definitions */ +#define SAU_RNR_REGION_Pos 0U /*!< SAU RNR: REGION Position */ +#define SAU_RNR_REGION_Msk (0xFFUL /*<< SAU_RNR_REGION_Pos*/) /*!< SAU RNR: REGION Mask */ + +/* SAU Region Base Address Register Definitions */ +#define SAU_RBAR_BADDR_Pos 5U /*!< SAU RBAR: BADDR Position */ +#define SAU_RBAR_BADDR_Msk (0x7FFFFFFUL << SAU_RBAR_BADDR_Pos) /*!< SAU RBAR: BADDR Mask */ + +/* SAU Region Limit Address Register Definitions */ +#define SAU_RLAR_LADDR_Pos 5U /*!< SAU RLAR: LADDR Position */ +#define SAU_RLAR_LADDR_Msk (0x7FFFFFFUL << SAU_RLAR_LADDR_Pos) /*!< SAU RLAR: LADDR Mask */ + +#define SAU_RLAR_NSC_Pos 1U /*!< SAU RLAR: NSC Position */ +#define SAU_RLAR_NSC_Msk (1UL << SAU_RLAR_NSC_Pos) /*!< SAU RLAR: NSC Mask */ + +#define SAU_RLAR_ENABLE_Pos 0U /*!< SAU RLAR: ENABLE Position */ +#define SAU_RLAR_ENABLE_Msk (1UL /*<< SAU_RLAR_ENABLE_Pos*/) /*!< SAU RLAR: ENABLE Mask */ + +#endif /* defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) */ + +/*@} end of group CMSIS_SAU */ +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief Type definitions for the Core Debug Registers + @{ + */ + +/** + \brief Structure type to access the Core Debug Register (CoreDebug). + */ +typedef struct +{ + __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ + __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ + __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ + __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ + uint32_t RESERVED4[1U]; + __IOM uint32_t DAUTHCTRL; /*!< Offset: 0x014 (R/W) Debug Authentication Control Register */ + __IOM uint32_t DSCSR; /*!< Offset: 0x018 (R/W) Debug Security Control and Status Register */ +} CoreDebug_Type; + +/* Debug Halting Control and Status Register Definitions */ +#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ +#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ + +#define CoreDebug_DHCSR_S_RESTART_ST_Pos 26U /*!< CoreDebug DHCSR: S_RESTART_ST Position */ +#define CoreDebug_DHCSR_S_RESTART_ST_Msk (1UL << CoreDebug_DHCSR_S_RESTART_ST_Pos) /*!< CoreDebug DHCSR: S_RESTART_ST Mask */ + +#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ +#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ + +#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ +#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ + +#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ +#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ + +#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ +#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ + +#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ +#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ + +#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ +#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ + +#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ +#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ + +#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ +#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ + +#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ +#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ + +#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ +#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ + +/* Debug Core Register Selector Register Definitions */ +#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ +#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ + +#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ +#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ + +/* Debug Exception and Monitor Control Register */ +#define CoreDebug_DEMCR_DWTENA_Pos 24U /*!< CoreDebug DEMCR: DWTENA Position */ +#define CoreDebug_DEMCR_DWTENA_Msk (1UL << CoreDebug_DEMCR_DWTENA_Pos) /*!< CoreDebug DEMCR: DWTENA Mask */ + +#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ +#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ + +#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ +#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ + +/* Debug Authentication Control Register Definitions */ +#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos 3U /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Position */ +#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Mask */ + +#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos 2U /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Position */ +#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Msk (1UL << CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos) /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Mask */ + +#define CoreDebug_DAUTHCTRL_INTSPIDEN_Pos 1U /*!< CoreDebug DAUTHCTRL: INTSPIDEN Position */ +#define CoreDebug_DAUTHCTRL_INTSPIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPIDEN Mask */ + +#define CoreDebug_DAUTHCTRL_SPIDENSEL_Pos 0U /*!< CoreDebug DAUTHCTRL: SPIDENSEL Position */ +#define CoreDebug_DAUTHCTRL_SPIDENSEL_Msk (1UL /*<< CoreDebug_DAUTHCTRL_SPIDENSEL_Pos*/) /*!< CoreDebug DAUTHCTRL: SPIDENSEL Mask */ + +/* Debug Security Control and Status Register Definitions */ +#define CoreDebug_DSCSR_CDS_Pos 16U /*!< CoreDebug DSCSR: CDS Position */ +#define CoreDebug_DSCSR_CDS_Msk (1UL << CoreDebug_DSCSR_CDS_Pos) /*!< CoreDebug DSCSR: CDS Mask */ + +#define CoreDebug_DSCSR_SBRSEL_Pos 1U /*!< CoreDebug DSCSR: SBRSEL Position */ +#define CoreDebug_DSCSR_SBRSEL_Msk (1UL << CoreDebug_DSCSR_SBRSEL_Pos) /*!< CoreDebug DSCSR: SBRSEL Mask */ + +#define CoreDebug_DSCSR_SBRSELEN_Pos 0U /*!< CoreDebug DSCSR: SBRSELEN Position */ +#define CoreDebug_DSCSR_SBRSELEN_Msk (1UL /*<< CoreDebug_DSCSR_SBRSELEN_Pos*/) /*!< CoreDebug DSCSR: SBRSELEN Mask */ + +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ + #define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ + #define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ + #define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ + #define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ + #define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ + #define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ + #define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + + + #define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ + #define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ + #define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ + #define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ + #define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ + #define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE ) /*!< Core Debug configuration struct */ + + #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ + #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ + #endif + + #if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + #define SAU_BASE (SCS_BASE + 0x0DD0UL) /*!< Security Attribution Unit */ + #define SAU ((SAU_Type *) SAU_BASE ) /*!< Security Attribution Unit */ + #endif + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + #define SCS_BASE_NS (0xE002E000UL) /*!< System Control Space Base Address (non-secure address space) */ + #define CoreDebug_BASE_NS (0xE002EDF0UL) /*!< Core Debug Base Address (non-secure address space) */ + #define SysTick_BASE_NS (SCS_BASE_NS + 0x0010UL) /*!< SysTick Base Address (non-secure address space) */ + #define NVIC_BASE_NS (SCS_BASE_NS + 0x0100UL) /*!< NVIC Base Address (non-secure address space) */ + #define SCB_BASE_NS (SCS_BASE_NS + 0x0D00UL) /*!< System Control Block Base Address (non-secure address space) */ + + #define SCB_NS ((SCB_Type *) SCB_BASE_NS ) /*!< SCB configuration struct (non-secure address space) */ + #define SysTick_NS ((SysTick_Type *) SysTick_BASE_NS ) /*!< SysTick configuration struct (non-secure address space) */ + #define NVIC_NS ((NVIC_Type *) NVIC_BASE_NS ) /*!< NVIC configuration struct (non-secure address space) */ + #define CoreDebug_NS ((CoreDebug_Type *) CoreDebug_BASE_NS) /*!< Core Debug configuration struct (non-secure address space) */ + + #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE_NS (SCS_BASE_NS + 0x0D90UL) /*!< Memory Protection Unit (non-secure address space) */ + #define MPU_NS ((MPU_Type *) MPU_BASE_NS ) /*!< Memory Protection Unit (non-secure address space) */ + #endif + +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping + #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ + #define NVIC_GetActive __NVIC_GetActive + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* Special LR values for Secure/Non-Secure call handling and exception handling */ + +/* Function Return Payload (from ARMv8-M Architecture Reference Manual) LR value on entry from Secure BLXNS */ +#define FNC_RETURN (0xFEFFFFFFUL) /* bit [0] ignored when processing a branch */ + +/* The following EXC_RETURN mask values are used to evaluate the LR on exception entry */ +#define EXC_RETURN_PREFIX (0xFF000000UL) /* bits [31:24] set to indicate an EXC_RETURN value */ +#define EXC_RETURN_S (0x00000040UL) /* bit [6] stack used to push registers: 0=Non-secure 1=Secure */ +#define EXC_RETURN_DCRS (0x00000020UL) /* bit [5] stacking rules for called registers: 0=skipped 1=saved */ +#define EXC_RETURN_FTYPE (0x00000010UL) /* bit [4] allocate stack for floating-point context: 0=done 1=skipped */ +#define EXC_RETURN_MODE (0x00000008UL) /* bit [3] processor mode for return: 0=Handler mode 1=Thread mode */ +#define EXC_RETURN_SPSEL (0x00000002UL) /* bit [1] stack pointer used to restore context: 0=MSP 1=PSP */ +#define EXC_RETURN_ES (0x00000001UL) /* bit [0] security state exception was taken to: 0=Non-secure 1=Secure */ + +/* Integrity Signature (from ARMv8-M Architecture Reference Manual) for exception context stacking */ +#if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) /* Value for processors with floating-point extension: */ +#define EXC_INTEGRITY_SIGNATURE (0xFEFA125AUL) /* bit [0] SFTC must match LR bit[4] EXC_RETURN_FTYPE */ +#else +#define EXC_INTEGRITY_SIGNATURE (0xFEFA125BUL) /* Value for processors without floating-point extension */ +#endif + + +/* Interrupt Priorities are WORD accessible only under Armv6-M */ +/* The following MACROS handle generation of the register offset and byte masks */ +#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) +#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) +#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) + +#define __NVIC_SetPriorityGrouping(X) (void)(X) +#define __NVIC_GetPriorityGrouping() (0U) + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt + \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief Get Interrupt Target State + \details Reads the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + \return 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_GetTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Target State + \details Sets the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_SetTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] |= ((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Clear Interrupt Target State + \details Clears the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_ClearTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] &= ~((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IPR[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IPR[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } + else + { + SCB->SHPR[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHPR[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IPR[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return((uint32_t)(((SCB->SHPR[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Encode Priority + \details Encodes the priority for an interrupt with the given priority group, + preemptive priority value, and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Used priority group. + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + ); +} + + +/** + \brief Decode Priority + \details Decodes an interrupt priority value with a given priority group to + preemptive priority value and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. + \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). + \param [in] PriorityGroup Used priority group. + \param [out] pPreemptPriority Preemptive priority value (starting from 0). + \param [out] pSubPriority Subpriority value (starting from 0). + */ +__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); + *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); +} + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + VTOR must been relocated to SRAM before. + If VTOR is not present address 0 must be mapped to SRAM. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) + uint32_t *vectors = (uint32_t *)SCB->VTOR; +#else + uint32_t *vectors = (uint32_t *)0x0U; +#endif + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) + uint32_t *vectors = (uint32_t *)SCB->VTOR; +#else + uint32_t *vectors = (uint32_t *)0x0U; +#endif + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + SCB_AIRCR_SYSRESETREQ_Msk); + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief Enable Interrupt (non-secure) + \details Enables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_EnableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status (non-secure) + \details Returns a device specific interrupt enable status from the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetEnableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt (non-secure) + \details Disables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_DisableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Pending Interrupt (non-secure) + \details Reads the NVIC pending register in the non-secure NVIC when in secure state and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt (non-secure) + \details Sets the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_SetPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt (non-secure) + \details Clears the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_ClearPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt (non-secure) + \details Reads the active register in non-secure NVIC when in secure state and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetActive_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Priority (non-secure) + \details Sets the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every non-secure processor exception. + */ +__STATIC_INLINE void TZ_NVIC_SetPriority_NS(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->IPR[_IP_IDX(IRQn)] = ((uint32_t)(NVIC_NS->IPR[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } + else + { + SCB_NS->SHPR[_SHP_IDX(IRQn)] = ((uint32_t)(SCB_NS->SHPR[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } +} + + +/** + \brief Get Interrupt Priority (non-secure) + \details Reads the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetPriority_NS(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->IPR[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return((uint32_t)(((SCB_NS->SHPR[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } +} +#endif /* defined (__ARM_FEATURE_CMSE) &&(__ARM_FEATURE_CMSE == 3U) */ + +/*@} end of CMSIS_Core_NVICFunctions */ + +/* ########################## MPU functions #################################### */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + +#include "mpu_armv8.h" + +#endif + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + return 0U; /* No FPU */ +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ########################## SAU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SAUFunctions SAU Functions + \brief Functions that configure the SAU. + @{ + */ + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + +/** + \brief Enable SAU + \details Enables the Security Attribution Unit (SAU). + */ +__STATIC_INLINE void TZ_SAU_Enable(void) +{ + SAU->CTRL |= (SAU_CTRL_ENABLE_Msk); +} + + + +/** + \brief Disable SAU + \details Disables the Security Attribution Unit (SAU). + */ +__STATIC_INLINE void TZ_SAU_Disable(void) +{ + SAU->CTRL &= ~(SAU_CTRL_ENABLE_Msk); +} + +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + +/*@} end of CMSIS_Core_SAUFunctions */ + + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief System Tick Configuration (non-secure) + \details Initializes the non-secure System Timer and its interrupt when in secure state, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function TZ_SysTick_Config_NS is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + + */ +__STATIC_INLINE uint32_t TZ_SysTick_Config_NS(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick_NS->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + TZ_NVIC_SetPriority_NS (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick_NS->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick_NS->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_ARMV8MBL_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/core_armv8mml.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_armv8mml.h similarity index 98% rename from stm32f103/Drivers/CMSIS/Include/core_armv8mml.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_armv8mml.h index 2d0f106..3a3148e 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_armv8mml.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_armv8mml.h @@ -1,2927 +1,2927 @@ -/**************************************************************************//** - * @file core_armv8mml.h - * @brief CMSIS Armv8-M Mainline Core Peripheral Access Layer Header File - * @version V5.0.7 - * @date 06. July 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_ARMV8MML_H_GENERIC -#define __CORE_ARMV8MML_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup Cortex_ARMv8MML - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS Armv8MML definitions */ -#define __ARMv8MML_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __ARMv8MML_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __ARMv8MML_CMSIS_VERSION ((__ARMv8MML_CMSIS_VERSION_MAIN << 16U) | \ - __ARMv8MML_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_M (81U) /*!< Cortex-M Core */ - -/** __FPU_USED indicates whether an FPU is used or not. - For this, __FPU_PRESENT has to be checked prior to making use of FPU specific registers and functions. -*/ -#if defined ( __CC_ARM ) - #if defined __TARGET_FPU_VFP - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - - #if defined(__ARM_FEATURE_DSP) - #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U) - #define __DSP_USED 1U - #else - #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" - #define __DSP_USED 0U - #endif - #else - #define __DSP_USED 0U - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined __ARM_PCS_VFP - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #warning "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - - #if defined(__ARM_FEATURE_DSP) - #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U) - #define __DSP_USED 1U - #else - #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" - #define __DSP_USED 0U - #endif - #else - #define __DSP_USED 0U - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - - #if defined(__ARM_FEATURE_DSP) - #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U) - #define __DSP_USED 1U - #else - #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" - #define __DSP_USED 0U - #endif - #else - #define __DSP_USED 0U - #endif - -#elif defined ( __ICCARM__ ) - #if defined __ARMVFP__ - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - - #if defined(__ARM_FEATURE_DSP) - #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U) - #define __DSP_USED 1U - #else - #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" - #define __DSP_USED 0U - #endif - #else - #define __DSP_USED 0U - #endif - -#elif defined ( __TI_ARM__ ) - #if defined __TI_VFP_SUPPORT__ - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __TASKING__ ) - #if defined __FPU_VFP__ - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_ARMV8MML_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_ARMV8MML_H_DEPENDANT -#define __CORE_ARMV8MML_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __ARMv8MML_REV - #define __ARMv8MML_REV 0x0000U - #warning "__ARMv8MML_REV not defined in device header file; using default!" - #endif - - #ifndef __FPU_PRESENT - #define __FPU_PRESENT 0U - #warning "__FPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __MPU_PRESENT - #define __MPU_PRESENT 0U - #warning "__MPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __SAUREGION_PRESENT - #define __SAUREGION_PRESENT 0U - #warning "__SAUREGION_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __DSP_PRESENT - #define __DSP_PRESENT 0U - #warning "__DSP_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 3U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group ARMv8MML */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - - Core Debug Register - - Core MPU Register - - Core SAU Register - - Core FPU Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:16; /*!< bit: 0..15 Reserved */ - uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ - uint32_t _reserved1:7; /*!< bit: 20..26 Reserved */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - -#define APSR_Q_Pos 27U /*!< APSR: Q Position */ -#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ - -#define APSR_GE_Pos 16U /*!< APSR: GE Position */ -#define APSR_GE_Msk (0xFUL << APSR_GE_Pos) /*!< APSR: GE Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:7; /*!< bit: 9..15 Reserved */ - uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ - uint32_t _reserved1:4; /*!< bit: 20..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ - uint32_t IT:2; /*!< bit: 25..26 saved IT state (read 0) */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ -#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ - -#define xPSR_IT_Pos 25U /*!< xPSR: IT Position */ -#define xPSR_IT_Msk (3UL << xPSR_IT_Pos) /*!< xPSR: IT Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_GE_Pos 16U /*!< xPSR: GE Position */ -#define xPSR_GE_Msk (0xFUL << xPSR_GE_Pos) /*!< xPSR: GE Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ - uint32_t SPSEL:1; /*!< bit: 1 Stack-pointer select */ - uint32_t FPCA:1; /*!< bit: 2 Floating-point context active */ - uint32_t SFPA:1; /*!< bit: 3 Secure floating-point active */ - uint32_t _reserved1:28; /*!< bit: 4..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_SFPA_Pos 3U /*!< CONTROL: SFPA Position */ -#define CONTROL_SFPA_Msk (1UL << CONTROL_SFPA_Pos) /*!< CONTROL: SFPA Mask */ - -#define CONTROL_FPCA_Pos 2U /*!< CONTROL: FPCA Position */ -#define CONTROL_FPCA_Msk (1UL << CONTROL_FPCA_Pos) /*!< CONTROL: FPCA Mask */ - -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ -#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[16U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[16U]; - __IOM uint32_t ICER[16U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[16U]; - __IOM uint32_t ISPR[16U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[16U]; - __IOM uint32_t ICPR[16U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[16U]; - __IOM uint32_t IABR[16U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ - uint32_t RESERVED4[16U]; - __IOM uint32_t ITNS[16U]; /*!< Offset: 0x280 (R/W) Interrupt Non-Secure State Register */ - uint32_t RESERVED5[16U]; - __IOM uint8_t IPR[496U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ - uint32_t RESERVED6[580U]; - __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ -} NVIC_Type; - -/* Software Triggered Interrupt Register Definitions */ -#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ -#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ - __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - __IOM uint8_t SHPR[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ - __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ - __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ - __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ - __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ - __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ - __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ - __IM uint32_t ID_PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ - __IM uint32_t ID_DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ - __IM uint32_t ID_ADR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ - __IM uint32_t ID_MMFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ - __IM uint32_t ID_ISAR[6U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ - __IM uint32_t CLIDR; /*!< Offset: 0x078 (R/ ) Cache Level ID register */ - __IM uint32_t CTR; /*!< Offset: 0x07C (R/ ) Cache Type register */ - __IM uint32_t CCSIDR; /*!< Offset: 0x080 (R/ ) Cache Size ID Register */ - __IOM uint32_t CSSELR; /*!< Offset: 0x084 (R/W) Cache Size Selection Register */ - __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ - __IOM uint32_t NSACR; /*!< Offset: 0x08C (R/W) Non-Secure Access Control Register */ - uint32_t RESERVED3[92U]; - __OM uint32_t STIR; /*!< Offset: 0x200 ( /W) Software Triggered Interrupt Register */ - uint32_t RESERVED4[15U]; - __IM uint32_t MVFR0; /*!< Offset: 0x240 (R/ ) Media and VFP Feature Register 0 */ - __IM uint32_t MVFR1; /*!< Offset: 0x244 (R/ ) Media and VFP Feature Register 1 */ - __IM uint32_t MVFR2; /*!< Offset: 0x248 (R/ ) Media and VFP Feature Register 2 */ - uint32_t RESERVED5[1U]; - __OM uint32_t ICIALLU; /*!< Offset: 0x250 ( /W) I-Cache Invalidate All to PoU */ - uint32_t RESERVED6[1U]; - __OM uint32_t ICIMVAU; /*!< Offset: 0x258 ( /W) I-Cache Invalidate by MVA to PoU */ - __OM uint32_t DCIMVAC; /*!< Offset: 0x25C ( /W) D-Cache Invalidate by MVA to PoC */ - __OM uint32_t DCISW; /*!< Offset: 0x260 ( /W) D-Cache Invalidate by Set-way */ - __OM uint32_t DCCMVAU; /*!< Offset: 0x264 ( /W) D-Cache Clean by MVA to PoU */ - __OM uint32_t DCCMVAC; /*!< Offset: 0x268 ( /W) D-Cache Clean by MVA to PoC */ - __OM uint32_t DCCSW; /*!< Offset: 0x26C ( /W) D-Cache Clean by Set-way */ - __OM uint32_t DCCIMVAC; /*!< Offset: 0x270 ( /W) D-Cache Clean and Invalidate by MVA to PoC */ - __OM uint32_t DCCISW; /*!< Offset: 0x274 ( /W) D-Cache Clean and Invalidate by Set-way */ - uint32_t RESERVED7[6U]; - __IOM uint32_t ITCMCR; /*!< Offset: 0x290 (R/W) Instruction Tightly-Coupled Memory Control Register */ - __IOM uint32_t DTCMCR; /*!< Offset: 0x294 (R/W) Data Tightly-Coupled Memory Control Registers */ - __IOM uint32_t AHBPCR; /*!< Offset: 0x298 (R/W) AHBP Control Register */ - __IOM uint32_t CACR; /*!< Offset: 0x29C (R/W) L1 Cache Control Register */ - __IOM uint32_t AHBSCR; /*!< Offset: 0x2A0 (R/W) AHB Slave Control Register */ - uint32_t RESERVED8[1U]; - __IOM uint32_t ABFSR; /*!< Offset: 0x2A8 (R/W) Auxiliary Bus Fault Status Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_PENDNMISET_Pos 31U /*!< SCB ICSR: PENDNMISET Position */ -#define SCB_ICSR_PENDNMISET_Msk (1UL << SCB_ICSR_PENDNMISET_Pos) /*!< SCB ICSR: PENDNMISET Mask */ - -#define SCB_ICSR_NMIPENDSET_Pos SCB_ICSR_PENDNMISET_Pos /*!< SCB ICSR: NMIPENDSET Position, backward compatibility */ -#define SCB_ICSR_NMIPENDSET_Msk SCB_ICSR_PENDNMISET_Msk /*!< SCB ICSR: NMIPENDSET Mask, backward compatibility */ - -#define SCB_ICSR_PENDNMICLR_Pos 30U /*!< SCB ICSR: PENDNMICLR Position */ -#define SCB_ICSR_PENDNMICLR_Msk (1UL << SCB_ICSR_PENDNMICLR_Pos) /*!< SCB ICSR: PENDNMICLR Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_STTNS_Pos 24U /*!< SCB ICSR: STTNS Position (Security Extension) */ -#define SCB_ICSR_STTNS_Msk (1UL << SCB_ICSR_STTNS_Pos) /*!< SCB ICSR: STTNS Mask (Security Extension) */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ -#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -/* SCB Vector Table Offset Register Definitions */ -#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ -#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_PRIS_Pos 14U /*!< SCB AIRCR: PRIS Position */ -#define SCB_AIRCR_PRIS_Msk (1UL << SCB_AIRCR_PRIS_Pos) /*!< SCB AIRCR: PRIS Mask */ - -#define SCB_AIRCR_BFHFNMINS_Pos 13U /*!< SCB AIRCR: BFHFNMINS Position */ -#define SCB_AIRCR_BFHFNMINS_Msk (1UL << SCB_AIRCR_BFHFNMINS_Pos) /*!< SCB AIRCR: BFHFNMINS Mask */ - -#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ -#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ - -#define SCB_AIRCR_SYSRESETREQS_Pos 3U /*!< SCB AIRCR: SYSRESETREQS Position */ -#define SCB_AIRCR_SYSRESETREQS_Msk (1UL << SCB_AIRCR_SYSRESETREQS_Pos) /*!< SCB AIRCR: SYSRESETREQS Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEPS_Pos 3U /*!< SCB SCR: SLEEPDEEPS Position */ -#define SCB_SCR_SLEEPDEEPS_Msk (1UL << SCB_SCR_SLEEPDEEPS_Pos) /*!< SCB SCR: SLEEPDEEPS Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_BP_Pos 18U /*!< SCB CCR: BP Position */ -#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos) /*!< SCB CCR: BP Mask */ - -#define SCB_CCR_IC_Pos 17U /*!< SCB CCR: IC Position */ -#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos) /*!< SCB CCR: IC Mask */ - -#define SCB_CCR_DC_Pos 16U /*!< SCB CCR: DC Position */ -#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos) /*!< SCB CCR: DC Mask */ - -#define SCB_CCR_STKOFHFNMIGN_Pos 10U /*!< SCB CCR: STKOFHFNMIGN Position */ -#define SCB_CCR_STKOFHFNMIGN_Msk (1UL << SCB_CCR_STKOFHFNMIGN_Pos) /*!< SCB CCR: STKOFHFNMIGN Mask */ - -#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ -#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ - -#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ -#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ -#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_HARDFAULTPENDED_Pos 21U /*!< SCB SHCSR: HARDFAULTPENDED Position */ -#define SCB_SHCSR_HARDFAULTPENDED_Msk (1UL << SCB_SHCSR_HARDFAULTPENDED_Pos) /*!< SCB SHCSR: HARDFAULTPENDED Mask */ - -#define SCB_SHCSR_SECUREFAULTPENDED_Pos 20U /*!< SCB SHCSR: SECUREFAULTPENDED Position */ -#define SCB_SHCSR_SECUREFAULTPENDED_Msk (1UL << SCB_SHCSR_SECUREFAULTPENDED_Pos) /*!< SCB SHCSR: SECUREFAULTPENDED Mask */ - -#define SCB_SHCSR_SECUREFAULTENA_Pos 19U /*!< SCB SHCSR: SECUREFAULTENA Position */ -#define SCB_SHCSR_SECUREFAULTENA_Msk (1UL << SCB_SHCSR_SECUREFAULTENA_Pos) /*!< SCB SHCSR: SECUREFAULTENA Mask */ - -#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ -#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ - -#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ -#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ - -#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ -#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ - -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ -#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ - -#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ -#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ - -#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ -#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ - -#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ -#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ - -#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ -#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ - -#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ -#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ - -#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ -#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ - -#define SCB_SHCSR_NMIACT_Pos 5U /*!< SCB SHCSR: NMIACT Position */ -#define SCB_SHCSR_NMIACT_Msk (1UL << SCB_SHCSR_NMIACT_Pos) /*!< SCB SHCSR: NMIACT Mask */ - -#define SCB_SHCSR_SECUREFAULTACT_Pos 4U /*!< SCB SHCSR: SECUREFAULTACT Position */ -#define SCB_SHCSR_SECUREFAULTACT_Msk (1UL << SCB_SHCSR_SECUREFAULTACT_Pos) /*!< SCB SHCSR: SECUREFAULTACT Mask */ - -#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ -#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ - -#define SCB_SHCSR_HARDFAULTACT_Pos 2U /*!< SCB SHCSR: HARDFAULTACT Position */ -#define SCB_SHCSR_HARDFAULTACT_Msk (1UL << SCB_SHCSR_HARDFAULTACT_Pos) /*!< SCB SHCSR: HARDFAULTACT Mask */ - -#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ -#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ - -#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ -#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ - -/* SCB Configurable Fault Status Register Definitions */ -#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ -#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ - -#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ -#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ - -#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ -#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ - -/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ -#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ - -#define SCB_CFSR_MLSPERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 5U) /*!< SCB CFSR (MMFSR): MLSPERR Position */ -#define SCB_CFSR_MLSPERR_Msk (1UL << SCB_CFSR_MLSPERR_Pos) /*!< SCB CFSR (MMFSR): MLSPERR Mask */ - -#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ -#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ - -#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ -#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ - -#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ -#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ - -#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ -#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ - -/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ -#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ - -#define SCB_CFSR_LSPERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 5U) /*!< SCB CFSR (BFSR): LSPERR Position */ -#define SCB_CFSR_LSPERR_Msk (1UL << SCB_CFSR_LSPERR_Pos) /*!< SCB CFSR (BFSR): LSPERR Mask */ - -#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ -#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ - -#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ -#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ - -#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ -#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ - -#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ -#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ - -#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ -#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ - -/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ -#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ - -#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ -#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ - -#define SCB_CFSR_STKOF_Pos (SCB_CFSR_USGFAULTSR_Pos + 4U) /*!< SCB CFSR (UFSR): STKOF Position */ -#define SCB_CFSR_STKOF_Msk (1UL << SCB_CFSR_STKOF_Pos) /*!< SCB CFSR (UFSR): STKOF Mask */ - -#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ -#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ - -#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ -#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ - -#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ -#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ - -#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ -#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ - -/* SCB Hard Fault Status Register Definitions */ -#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ -#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ - -#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ -#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ - -#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ -#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ - -/* SCB Debug Fault Status Register Definitions */ -#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ -#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ - -#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ -#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ - -#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ -#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ - -#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ -#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ - -#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ -#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ - -/* SCB Non-Secure Access Control Register Definitions */ -#define SCB_NSACR_CP11_Pos 11U /*!< SCB NSACR: CP11 Position */ -#define SCB_NSACR_CP11_Msk (1UL << SCB_NSACR_CP11_Pos) /*!< SCB NSACR: CP11 Mask */ - -#define SCB_NSACR_CP10_Pos 10U /*!< SCB NSACR: CP10 Position */ -#define SCB_NSACR_CP10_Msk (1UL << SCB_NSACR_CP10_Pos) /*!< SCB NSACR: CP10 Mask */ - -#define SCB_NSACR_CPn_Pos 0U /*!< SCB NSACR: CPn Position */ -#define SCB_NSACR_CPn_Msk (1UL /*<< SCB_NSACR_CPn_Pos*/) /*!< SCB NSACR: CPn Mask */ - -/* SCB Cache Level ID Register Definitions */ -#define SCB_CLIDR_LOUU_Pos 27U /*!< SCB CLIDR: LoUU Position */ -#define SCB_CLIDR_LOUU_Msk (7UL << SCB_CLIDR_LOUU_Pos) /*!< SCB CLIDR: LoUU Mask */ - -#define SCB_CLIDR_LOC_Pos 24U /*!< SCB CLIDR: LoC Position */ -#define SCB_CLIDR_LOC_Msk (7UL << SCB_CLIDR_LOC_Pos) /*!< SCB CLIDR: LoC Mask */ - -/* SCB Cache Type Register Definitions */ -#define SCB_CTR_FORMAT_Pos 29U /*!< SCB CTR: Format Position */ -#define SCB_CTR_FORMAT_Msk (7UL << SCB_CTR_FORMAT_Pos) /*!< SCB CTR: Format Mask */ - -#define SCB_CTR_CWG_Pos 24U /*!< SCB CTR: CWG Position */ -#define SCB_CTR_CWG_Msk (0xFUL << SCB_CTR_CWG_Pos) /*!< SCB CTR: CWG Mask */ - -#define SCB_CTR_ERG_Pos 20U /*!< SCB CTR: ERG Position */ -#define SCB_CTR_ERG_Msk (0xFUL << SCB_CTR_ERG_Pos) /*!< SCB CTR: ERG Mask */ - -#define SCB_CTR_DMINLINE_Pos 16U /*!< SCB CTR: DminLine Position */ -#define SCB_CTR_DMINLINE_Msk (0xFUL << SCB_CTR_DMINLINE_Pos) /*!< SCB CTR: DminLine Mask */ - -#define SCB_CTR_IMINLINE_Pos 0U /*!< SCB CTR: ImInLine Position */ -#define SCB_CTR_IMINLINE_Msk (0xFUL /*<< SCB_CTR_IMINLINE_Pos*/) /*!< SCB CTR: ImInLine Mask */ - -/* SCB Cache Size ID Register Definitions */ -#define SCB_CCSIDR_WT_Pos 31U /*!< SCB CCSIDR: WT Position */ -#define SCB_CCSIDR_WT_Msk (1UL << SCB_CCSIDR_WT_Pos) /*!< SCB CCSIDR: WT Mask */ - -#define SCB_CCSIDR_WB_Pos 30U /*!< SCB CCSIDR: WB Position */ -#define SCB_CCSIDR_WB_Msk (1UL << SCB_CCSIDR_WB_Pos) /*!< SCB CCSIDR: WB Mask */ - -#define SCB_CCSIDR_RA_Pos 29U /*!< SCB CCSIDR: RA Position */ -#define SCB_CCSIDR_RA_Msk (1UL << SCB_CCSIDR_RA_Pos) /*!< SCB CCSIDR: RA Mask */ - -#define SCB_CCSIDR_WA_Pos 28U /*!< SCB CCSIDR: WA Position */ -#define SCB_CCSIDR_WA_Msk (1UL << SCB_CCSIDR_WA_Pos) /*!< SCB CCSIDR: WA Mask */ - -#define SCB_CCSIDR_NUMSETS_Pos 13U /*!< SCB CCSIDR: NumSets Position */ -#define SCB_CCSIDR_NUMSETS_Msk (0x7FFFUL << SCB_CCSIDR_NUMSETS_Pos) /*!< SCB CCSIDR: NumSets Mask */ - -#define SCB_CCSIDR_ASSOCIATIVITY_Pos 3U /*!< SCB CCSIDR: Associativity Position */ -#define SCB_CCSIDR_ASSOCIATIVITY_Msk (0x3FFUL << SCB_CCSIDR_ASSOCIATIVITY_Pos) /*!< SCB CCSIDR: Associativity Mask */ - -#define SCB_CCSIDR_LINESIZE_Pos 0U /*!< SCB CCSIDR: LineSize Position */ -#define SCB_CCSIDR_LINESIZE_Msk (7UL /*<< SCB_CCSIDR_LINESIZE_Pos*/) /*!< SCB CCSIDR: LineSize Mask */ - -/* SCB Cache Size Selection Register Definitions */ -#define SCB_CSSELR_LEVEL_Pos 1U /*!< SCB CSSELR: Level Position */ -#define SCB_CSSELR_LEVEL_Msk (7UL << SCB_CSSELR_LEVEL_Pos) /*!< SCB CSSELR: Level Mask */ - -#define SCB_CSSELR_IND_Pos 0U /*!< SCB CSSELR: InD Position */ -#define SCB_CSSELR_IND_Msk (1UL /*<< SCB_CSSELR_IND_Pos*/) /*!< SCB CSSELR: InD Mask */ - -/* SCB Software Triggered Interrupt Register Definitions */ -#define SCB_STIR_INTID_Pos 0U /*!< SCB STIR: INTID Position */ -#define SCB_STIR_INTID_Msk (0x1FFUL /*<< SCB_STIR_INTID_Pos*/) /*!< SCB STIR: INTID Mask */ - -/* SCB D-Cache Invalidate by Set-way Register Definitions */ -#define SCB_DCISW_WAY_Pos 30U /*!< SCB DCISW: Way Position */ -#define SCB_DCISW_WAY_Msk (3UL << SCB_DCISW_WAY_Pos) /*!< SCB DCISW: Way Mask */ - -#define SCB_DCISW_SET_Pos 5U /*!< SCB DCISW: Set Position */ -#define SCB_DCISW_SET_Msk (0x1FFUL << SCB_DCISW_SET_Pos) /*!< SCB DCISW: Set Mask */ - -/* SCB D-Cache Clean by Set-way Register Definitions */ -#define SCB_DCCSW_WAY_Pos 30U /*!< SCB DCCSW: Way Position */ -#define SCB_DCCSW_WAY_Msk (3UL << SCB_DCCSW_WAY_Pos) /*!< SCB DCCSW: Way Mask */ - -#define SCB_DCCSW_SET_Pos 5U /*!< SCB DCCSW: Set Position */ -#define SCB_DCCSW_SET_Msk (0x1FFUL << SCB_DCCSW_SET_Pos) /*!< SCB DCCSW: Set Mask */ - -/* SCB D-Cache Clean and Invalidate by Set-way Register Definitions */ -#define SCB_DCCISW_WAY_Pos 30U /*!< SCB DCCISW: Way Position */ -#define SCB_DCCISW_WAY_Msk (3UL << SCB_DCCISW_WAY_Pos) /*!< SCB DCCISW: Way Mask */ - -#define SCB_DCCISW_SET_Pos 5U /*!< SCB DCCISW: Set Position */ -#define SCB_DCCISW_SET_Msk (0x1FFUL << SCB_DCCISW_SET_Pos) /*!< SCB DCCISW: Set Mask */ - -/* Instruction Tightly-Coupled Memory Control Register Definitions */ -#define SCB_ITCMCR_SZ_Pos 3U /*!< SCB ITCMCR: SZ Position */ -#define SCB_ITCMCR_SZ_Msk (0xFUL << SCB_ITCMCR_SZ_Pos) /*!< SCB ITCMCR: SZ Mask */ - -#define SCB_ITCMCR_RETEN_Pos 2U /*!< SCB ITCMCR: RETEN Position */ -#define SCB_ITCMCR_RETEN_Msk (1UL << SCB_ITCMCR_RETEN_Pos) /*!< SCB ITCMCR: RETEN Mask */ - -#define SCB_ITCMCR_RMW_Pos 1U /*!< SCB ITCMCR: RMW Position */ -#define SCB_ITCMCR_RMW_Msk (1UL << SCB_ITCMCR_RMW_Pos) /*!< SCB ITCMCR: RMW Mask */ - -#define SCB_ITCMCR_EN_Pos 0U /*!< SCB ITCMCR: EN Position */ -#define SCB_ITCMCR_EN_Msk (1UL /*<< SCB_ITCMCR_EN_Pos*/) /*!< SCB ITCMCR: EN Mask */ - -/* Data Tightly-Coupled Memory Control Register Definitions */ -#define SCB_DTCMCR_SZ_Pos 3U /*!< SCB DTCMCR: SZ Position */ -#define SCB_DTCMCR_SZ_Msk (0xFUL << SCB_DTCMCR_SZ_Pos) /*!< SCB DTCMCR: SZ Mask */ - -#define SCB_DTCMCR_RETEN_Pos 2U /*!< SCB DTCMCR: RETEN Position */ -#define SCB_DTCMCR_RETEN_Msk (1UL << SCB_DTCMCR_RETEN_Pos) /*!< SCB DTCMCR: RETEN Mask */ - -#define SCB_DTCMCR_RMW_Pos 1U /*!< SCB DTCMCR: RMW Position */ -#define SCB_DTCMCR_RMW_Msk (1UL << SCB_DTCMCR_RMW_Pos) /*!< SCB DTCMCR: RMW Mask */ - -#define SCB_DTCMCR_EN_Pos 0U /*!< SCB DTCMCR: EN Position */ -#define SCB_DTCMCR_EN_Msk (1UL /*<< SCB_DTCMCR_EN_Pos*/) /*!< SCB DTCMCR: EN Mask */ - -/* AHBP Control Register Definitions */ -#define SCB_AHBPCR_SZ_Pos 1U /*!< SCB AHBPCR: SZ Position */ -#define SCB_AHBPCR_SZ_Msk (7UL << SCB_AHBPCR_SZ_Pos) /*!< SCB AHBPCR: SZ Mask */ - -#define SCB_AHBPCR_EN_Pos 0U /*!< SCB AHBPCR: EN Position */ -#define SCB_AHBPCR_EN_Msk (1UL /*<< SCB_AHBPCR_EN_Pos*/) /*!< SCB AHBPCR: EN Mask */ - -/* L1 Cache Control Register Definitions */ -#define SCB_CACR_FORCEWT_Pos 2U /*!< SCB CACR: FORCEWT Position */ -#define SCB_CACR_FORCEWT_Msk (1UL << SCB_CACR_FORCEWT_Pos) /*!< SCB CACR: FORCEWT Mask */ - -#define SCB_CACR_ECCEN_Pos 1U /*!< SCB CACR: ECCEN Position */ -#define SCB_CACR_ECCEN_Msk (1UL << SCB_CACR_ECCEN_Pos) /*!< SCB CACR: ECCEN Mask */ - -#define SCB_CACR_SIWT_Pos 0U /*!< SCB CACR: SIWT Position */ -#define SCB_CACR_SIWT_Msk (1UL /*<< SCB_CACR_SIWT_Pos*/) /*!< SCB CACR: SIWT Mask */ - -/* AHBS Control Register Definitions */ -#define SCB_AHBSCR_INITCOUNT_Pos 11U /*!< SCB AHBSCR: INITCOUNT Position */ -#define SCB_AHBSCR_INITCOUNT_Msk (0x1FUL << SCB_AHBPCR_INITCOUNT_Pos) /*!< SCB AHBSCR: INITCOUNT Mask */ - -#define SCB_AHBSCR_TPRI_Pos 2U /*!< SCB AHBSCR: TPRI Position */ -#define SCB_AHBSCR_TPRI_Msk (0x1FFUL << SCB_AHBPCR_TPRI_Pos) /*!< SCB AHBSCR: TPRI Mask */ - -#define SCB_AHBSCR_CTL_Pos 0U /*!< SCB AHBSCR: CTL Position*/ -#define SCB_AHBSCR_CTL_Msk (3UL /*<< SCB_AHBPCR_CTL_Pos*/) /*!< SCB AHBSCR: CTL Mask */ - -/* Auxiliary Bus Fault Status Register Definitions */ -#define SCB_ABFSR_AXIMTYPE_Pos 8U /*!< SCB ABFSR: AXIMTYPE Position*/ -#define SCB_ABFSR_AXIMTYPE_Msk (3UL << SCB_ABFSR_AXIMTYPE_Pos) /*!< SCB ABFSR: AXIMTYPE Mask */ - -#define SCB_ABFSR_EPPB_Pos 4U /*!< SCB ABFSR: EPPB Position*/ -#define SCB_ABFSR_EPPB_Msk (1UL << SCB_ABFSR_EPPB_Pos) /*!< SCB ABFSR: EPPB Mask */ - -#define SCB_ABFSR_AXIM_Pos 3U /*!< SCB ABFSR: AXIM Position*/ -#define SCB_ABFSR_AXIM_Msk (1UL << SCB_ABFSR_AXIM_Pos) /*!< SCB ABFSR: AXIM Mask */ - -#define SCB_ABFSR_AHBP_Pos 2U /*!< SCB ABFSR: AHBP Position*/ -#define SCB_ABFSR_AHBP_Msk (1UL << SCB_ABFSR_AHBP_Pos) /*!< SCB ABFSR: AHBP Mask */ - -#define SCB_ABFSR_DTCM_Pos 1U /*!< SCB ABFSR: DTCM Position*/ -#define SCB_ABFSR_DTCM_Msk (1UL << SCB_ABFSR_DTCM_Pos) /*!< SCB ABFSR: DTCM Mask */ - -#define SCB_ABFSR_ITCM_Pos 0U /*!< SCB ABFSR: ITCM Position*/ -#define SCB_ABFSR_ITCM_Msk (1UL /*<< SCB_ABFSR_ITCM_Pos*/) /*!< SCB ABFSR: ITCM Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) - \brief Type definitions for the System Control and ID Register not in the SCB - @{ - */ - -/** - \brief Structure type to access the System Control and ID Register not in the SCB. - */ -typedef struct -{ - uint32_t RESERVED0[1U]; - __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ - __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ - __IOM uint32_t CPPWR; /*!< Offset: 0x00C (R/W) Coprocessor Power Control Register */ -} SCnSCB_Type; - -/* Interrupt Controller Type Register Definitions */ -#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ -#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ - -/*@} end of group CMSIS_SCnotSCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) - \brief Type definitions for the Instrumentation Trace Macrocell (ITM) - @{ - */ - -/** - \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). - */ -typedef struct -{ - __OM union - { - __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ - __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ - __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ - } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ - uint32_t RESERVED0[864U]; - __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ - uint32_t RESERVED1[15U]; - __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ - uint32_t RESERVED2[15U]; - __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ - uint32_t RESERVED3[29U]; - __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ - __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ - __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ - uint32_t RESERVED4[43U]; - __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ - __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ - uint32_t RESERVED5[1U]; - __IM uint32_t DEVARCH; /*!< Offset: 0xFBC (R/ ) ITM Device Architecture Register */ - uint32_t RESERVED6[4U]; - __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ - __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ - __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ - __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ - __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ - __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ - __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ - __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ - __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ - __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ - __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ - __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ -} ITM_Type; - -/* ITM Stimulus Port Register Definitions */ -#define ITM_STIM_DISABLED_Pos 1U /*!< ITM STIM: DISABLED Position */ -#define ITM_STIM_DISABLED_Msk (0x1UL << ITM_STIM_DISABLED_Pos) /*!< ITM STIM: DISABLED Mask */ - -#define ITM_STIM_FIFOREADY_Pos 0U /*!< ITM STIM: FIFOREADY Position */ -#define ITM_STIM_FIFOREADY_Msk (0x1UL /*<< ITM_STIM_FIFOREADY_Pos*/) /*!< ITM STIM: FIFOREADY Mask */ - -/* ITM Trace Privilege Register Definitions */ -#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ -#define ITM_TPR_PRIVMASK_Msk (0xFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ - -/* ITM Trace Control Register Definitions */ -#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ -#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ - -#define ITM_TCR_TRACEBUSID_Pos 16U /*!< ITM TCR: ATBID Position */ -#define ITM_TCR_TRACEBUSID_Msk (0x7FUL << ITM_TCR_TRACEBUSID_Pos) /*!< ITM TCR: ATBID Mask */ - -#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ -#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ - -#define ITM_TCR_TSPRESCALE_Pos 8U /*!< ITM TCR: TSPRESCALE Position */ -#define ITM_TCR_TSPRESCALE_Msk (3UL << ITM_TCR_TSPRESCALE_Pos) /*!< ITM TCR: TSPRESCALE Mask */ - -#define ITM_TCR_STALLENA_Pos 5U /*!< ITM TCR: STALLENA Position */ -#define ITM_TCR_STALLENA_Msk (1UL << ITM_TCR_STALLENA_Pos) /*!< ITM TCR: STALLENA Mask */ - -#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ -#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ - -#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ -#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ - -#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ -#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ - -#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ -#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ - -#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ -#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ - -/* ITM Integration Write Register Definitions */ -#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ -#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ - -/* ITM Integration Read Register Definitions */ -#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ -#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ - -/* ITM Integration Mode Control Register Definitions */ -#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ -#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ - -/* ITM Lock Status Register Definitions */ -#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ -#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ - -#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ -#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ - -#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ -#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ - -/*@}*/ /* end of group CMSIS_ITM */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) - \brief Type definitions for the Data Watchpoint and Trace (DWT) - @{ - */ - -/** - \brief Structure type to access the Data Watchpoint and Trace Register (DWT). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ - __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ - __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ - __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ - __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ - __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ - __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ - __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ - __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ - uint32_t RESERVED1[1U]; - __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ - uint32_t RESERVED2[1U]; - __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ - uint32_t RESERVED3[1U]; - __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ - uint32_t RESERVED4[1U]; - __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ - uint32_t RESERVED5[1U]; - __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ - uint32_t RESERVED6[1U]; - __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ - uint32_t RESERVED7[1U]; - __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ - uint32_t RESERVED8[1U]; - __IOM uint32_t COMP4; /*!< Offset: 0x060 (R/W) Comparator Register 4 */ - uint32_t RESERVED9[1U]; - __IOM uint32_t FUNCTION4; /*!< Offset: 0x068 (R/W) Function Register 4 */ - uint32_t RESERVED10[1U]; - __IOM uint32_t COMP5; /*!< Offset: 0x070 (R/W) Comparator Register 5 */ - uint32_t RESERVED11[1U]; - __IOM uint32_t FUNCTION5; /*!< Offset: 0x078 (R/W) Function Register 5 */ - uint32_t RESERVED12[1U]; - __IOM uint32_t COMP6; /*!< Offset: 0x080 (R/W) Comparator Register 6 */ - uint32_t RESERVED13[1U]; - __IOM uint32_t FUNCTION6; /*!< Offset: 0x088 (R/W) Function Register 6 */ - uint32_t RESERVED14[1U]; - __IOM uint32_t COMP7; /*!< Offset: 0x090 (R/W) Comparator Register 7 */ - uint32_t RESERVED15[1U]; - __IOM uint32_t FUNCTION7; /*!< Offset: 0x098 (R/W) Function Register 7 */ - uint32_t RESERVED16[1U]; - __IOM uint32_t COMP8; /*!< Offset: 0x0A0 (R/W) Comparator Register 8 */ - uint32_t RESERVED17[1U]; - __IOM uint32_t FUNCTION8; /*!< Offset: 0x0A8 (R/W) Function Register 8 */ - uint32_t RESERVED18[1U]; - __IOM uint32_t COMP9; /*!< Offset: 0x0B0 (R/W) Comparator Register 9 */ - uint32_t RESERVED19[1U]; - __IOM uint32_t FUNCTION9; /*!< Offset: 0x0B8 (R/W) Function Register 9 */ - uint32_t RESERVED20[1U]; - __IOM uint32_t COMP10; /*!< Offset: 0x0C0 (R/W) Comparator Register 10 */ - uint32_t RESERVED21[1U]; - __IOM uint32_t FUNCTION10; /*!< Offset: 0x0C8 (R/W) Function Register 10 */ - uint32_t RESERVED22[1U]; - __IOM uint32_t COMP11; /*!< Offset: 0x0D0 (R/W) Comparator Register 11 */ - uint32_t RESERVED23[1U]; - __IOM uint32_t FUNCTION11; /*!< Offset: 0x0D8 (R/W) Function Register 11 */ - uint32_t RESERVED24[1U]; - __IOM uint32_t COMP12; /*!< Offset: 0x0E0 (R/W) Comparator Register 12 */ - uint32_t RESERVED25[1U]; - __IOM uint32_t FUNCTION12; /*!< Offset: 0x0E8 (R/W) Function Register 12 */ - uint32_t RESERVED26[1U]; - __IOM uint32_t COMP13; /*!< Offset: 0x0F0 (R/W) Comparator Register 13 */ - uint32_t RESERVED27[1U]; - __IOM uint32_t FUNCTION13; /*!< Offset: 0x0F8 (R/W) Function Register 13 */ - uint32_t RESERVED28[1U]; - __IOM uint32_t COMP14; /*!< Offset: 0x100 (R/W) Comparator Register 14 */ - uint32_t RESERVED29[1U]; - __IOM uint32_t FUNCTION14; /*!< Offset: 0x108 (R/W) Function Register 14 */ - uint32_t RESERVED30[1U]; - __IOM uint32_t COMP15; /*!< Offset: 0x110 (R/W) Comparator Register 15 */ - uint32_t RESERVED31[1U]; - __IOM uint32_t FUNCTION15; /*!< Offset: 0x118 (R/W) Function Register 15 */ - uint32_t RESERVED32[934U]; - __IM uint32_t LSR; /*!< Offset: 0xFB4 (R ) Lock Status Register */ - uint32_t RESERVED33[1U]; - __IM uint32_t DEVARCH; /*!< Offset: 0xFBC (R/ ) Device Architecture Register */ -} DWT_Type; - -/* DWT Control Register Definitions */ -#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ -#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ - -#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ -#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ - -#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ -#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ - -#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ -#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ - -#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ -#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ - -#define DWT_CTRL_CYCDISS_Pos 23U /*!< DWT CTRL: CYCDISS Position */ -#define DWT_CTRL_CYCDISS_Msk (0x1UL << DWT_CTRL_CYCDISS_Pos) /*!< DWT CTRL: CYCDISS Mask */ - -#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ -#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ - -#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ -#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ - -#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ -#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ - -#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ -#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ - -#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ -#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ - -#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ -#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ - -#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ -#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ - -#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ -#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ - -#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ -#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ - -#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ -#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ - -#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ -#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ - -#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ -#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ - -#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ -#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ - -/* DWT CPI Count Register Definitions */ -#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ -#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ - -/* DWT Exception Overhead Count Register Definitions */ -#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ -#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ - -/* DWT Sleep Count Register Definitions */ -#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ -#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ - -/* DWT LSU Count Register Definitions */ -#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ -#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ - -/* DWT Folded-instruction Count Register Definitions */ -#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ -#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ - -/* DWT Comparator Function Register Definitions */ -#define DWT_FUNCTION_ID_Pos 27U /*!< DWT FUNCTION: ID Position */ -#define DWT_FUNCTION_ID_Msk (0x1FUL << DWT_FUNCTION_ID_Pos) /*!< DWT FUNCTION: ID Mask */ - -#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ -#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ - -#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ -#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ - -#define DWT_FUNCTION_ACTION_Pos 4U /*!< DWT FUNCTION: ACTION Position */ -#define DWT_FUNCTION_ACTION_Msk (0x1UL << DWT_FUNCTION_ACTION_Pos) /*!< DWT FUNCTION: ACTION Mask */ - -#define DWT_FUNCTION_MATCH_Pos 0U /*!< DWT FUNCTION: MATCH Position */ -#define DWT_FUNCTION_MATCH_Msk (0xFUL /*<< DWT_FUNCTION_MATCH_Pos*/) /*!< DWT FUNCTION: MATCH Mask */ - -/*@}*/ /* end of group CMSIS_DWT */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_TPI Trace Port Interface (TPI) - \brief Type definitions for the Trace Port Interface (TPI) - @{ - */ - -/** - \brief Structure type to access the Trace Port Interface Register (TPI). - */ -typedef struct -{ - __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Sizes Register */ - __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Sizes Register */ - uint32_t RESERVED0[2U]; - __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ - uint32_t RESERVED1[55U]; - __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ - uint32_t RESERVED2[131U]; - __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ - __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ - __IOM uint32_t PSCR; /*!< Offset: 0x308 (R/W) Periodic Synchronization Control Register */ - uint32_t RESERVED3[809U]; - __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) Software Lock Access Register */ - __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) Software Lock Status Register */ - uint32_t RESERVED4[4U]; - __IM uint32_t TYPE; /*!< Offset: 0xFC8 (R/ ) Device Identifier Register */ - __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) Device Type Register */ -} TPI_Type; - -/* TPI Asynchronous Clock Prescaler Register Definitions */ -#define TPI_ACPR_SWOSCALER_Pos 0U /*!< TPI ACPR: SWOSCALER Position */ -#define TPI_ACPR_SWOSCALER_Msk (0xFFFFUL /*<< TPI_ACPR_SWOSCALER_Pos*/) /*!< TPI ACPR: SWOSCALER Mask */ - -/* TPI Selected Pin Protocol Register Definitions */ -#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ -#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ - -/* TPI Formatter and Flush Status Register Definitions */ -#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ -#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ - -#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ -#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ - -#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ -#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ - -#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ -#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ - -/* TPI Formatter and Flush Control Register Definitions */ -#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ -#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ - -#define TPI_FFCR_FOnMan_Pos 6U /*!< TPI FFCR: FOnMan Position */ -#define TPI_FFCR_FOnMan_Msk (0x1UL << TPI_FFCR_FOnMan_Pos) /*!< TPI FFCR: FOnMan Mask */ - -#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ -#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ - -/* TPI Periodic Synchronization Control Register Definitions */ -#define TPI_PSCR_PSCount_Pos 0U /*!< TPI PSCR: PSCount Position */ -#define TPI_PSCR_PSCount_Msk (0x1FUL /*<< TPI_PSCR_PSCount_Pos*/) /*!< TPI PSCR: TPSCount Mask */ - -/* TPI Software Lock Status Register Definitions */ -#define TPI_LSR_nTT_Pos 1U /*!< TPI LSR: Not thirty-two bit. Position */ -#define TPI_LSR_nTT_Msk (0x1UL << TPI_LSR_nTT_Pos) /*!< TPI LSR: Not thirty-two bit. Mask */ - -#define TPI_LSR_SLK_Pos 1U /*!< TPI LSR: Software Lock status Position */ -#define TPI_LSR_SLK_Msk (0x1UL << TPI_LSR_SLK_Pos) /*!< TPI LSR: Software Lock status Mask */ - -#define TPI_LSR_SLI_Pos 0U /*!< TPI LSR: Software Lock implemented Position */ -#define TPI_LSR_SLI_Msk (0x1UL /*<< TPI_LSR_SLI_Pos*/) /*!< TPI LSR: Software Lock implemented Mask */ - -/* TPI DEVID Register Definitions */ -#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ -#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ - -#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ -#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ - -#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ -#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ - -#define TPI_DEVID_FIFOSZ_Pos 6U /*!< TPI DEVID: FIFO depth Position */ -#define TPI_DEVID_FIFOSZ_Msk (0x7UL << TPI_DEVID_FIFOSZ_Pos) /*!< TPI DEVID: FIFO depth Mask */ - -/* TPI DEVTYPE Register Definitions */ -#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ -#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ - -#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ -#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ - -/*@}*/ /* end of group CMSIS_TPI */ - - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_MPU Memory Protection Unit (MPU) - \brief Type definitions for the Memory Protection Unit (MPU) - @{ - */ - -/** - \brief Structure type to access the Memory Protection Unit (MPU). - */ -typedef struct -{ - __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ - __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region Number Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ - __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) MPU Region Limit Address Register */ - __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Region Base Address Register Alias 1 */ - __IOM uint32_t RLAR_A1; /*!< Offset: 0x018 (R/W) MPU Region Limit Address Register Alias 1 */ - __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Region Base Address Register Alias 2 */ - __IOM uint32_t RLAR_A2; /*!< Offset: 0x020 (R/W) MPU Region Limit Address Register Alias 2 */ - __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Region Base Address Register Alias 3 */ - __IOM uint32_t RLAR_A3; /*!< Offset: 0x028 (R/W) MPU Region Limit Address Register Alias 3 */ - uint32_t RESERVED0[1]; - union { - __IOM uint32_t MAIR[2]; - struct { - __IOM uint32_t MAIR0; /*!< Offset: 0x030 (R/W) MPU Memory Attribute Indirection Register 0 */ - __IOM uint32_t MAIR1; /*!< Offset: 0x034 (R/W) MPU Memory Attribute Indirection Register 1 */ - }; - }; -} MPU_Type; - -#define MPU_TYPE_RALIASES 4U - -/* MPU Type Register Definitions */ -#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ -#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ - -#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ -#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ - -#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ -#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ - -/* MPU Control Register Definitions */ -#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ -#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ - -#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ -#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ - -#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ -#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ - -/* MPU Region Number Register Definitions */ -#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ -#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ - -/* MPU Region Base Address Register Definitions */ -#define MPU_RBAR_BASE_Pos 5U /*!< MPU RBAR: BASE Position */ -#define MPU_RBAR_BASE_Msk (0x7FFFFFFUL << MPU_RBAR_BASE_Pos) /*!< MPU RBAR: BASE Mask */ - -#define MPU_RBAR_SH_Pos 3U /*!< MPU RBAR: SH Position */ -#define MPU_RBAR_SH_Msk (0x3UL << MPU_RBAR_SH_Pos) /*!< MPU RBAR: SH Mask */ - -#define MPU_RBAR_AP_Pos 1U /*!< MPU RBAR: AP Position */ -#define MPU_RBAR_AP_Msk (0x3UL << MPU_RBAR_AP_Pos) /*!< MPU RBAR: AP Mask */ - -#define MPU_RBAR_XN_Pos 0U /*!< MPU RBAR: XN Position */ -#define MPU_RBAR_XN_Msk (01UL /*<< MPU_RBAR_XN_Pos*/) /*!< MPU RBAR: XN Mask */ - -/* MPU Region Limit Address Register Definitions */ -#define MPU_RLAR_LIMIT_Pos 5U /*!< MPU RLAR: LIMIT Position */ -#define MPU_RLAR_LIMIT_Msk (0x7FFFFFFUL << MPU_RLAR_LIMIT_Pos) /*!< MPU RLAR: LIMIT Mask */ - -#define MPU_RLAR_AttrIndx_Pos 1U /*!< MPU RLAR: AttrIndx Position */ -#define MPU_RLAR_AttrIndx_Msk (0x7UL << MPU_RLAR_AttrIndx_Pos) /*!< MPU RLAR: AttrIndx Mask */ - -#define MPU_RLAR_EN_Pos 0U /*!< MPU RLAR: Region enable bit Position */ -#define MPU_RLAR_EN_Msk (1UL /*<< MPU_RLAR_EN_Pos*/) /*!< MPU RLAR: Region enable bit Disable Mask */ - -/* MPU Memory Attribute Indirection Register 0 Definitions */ -#define MPU_MAIR0_Attr3_Pos 24U /*!< MPU MAIR0: Attr3 Position */ -#define MPU_MAIR0_Attr3_Msk (0xFFUL << MPU_MAIR0_Attr3_Pos) /*!< MPU MAIR0: Attr3 Mask */ - -#define MPU_MAIR0_Attr2_Pos 16U /*!< MPU MAIR0: Attr2 Position */ -#define MPU_MAIR0_Attr2_Msk (0xFFUL << MPU_MAIR0_Attr2_Pos) /*!< MPU MAIR0: Attr2 Mask */ - -#define MPU_MAIR0_Attr1_Pos 8U /*!< MPU MAIR0: Attr1 Position */ -#define MPU_MAIR0_Attr1_Msk (0xFFUL << MPU_MAIR0_Attr1_Pos) /*!< MPU MAIR0: Attr1 Mask */ - -#define MPU_MAIR0_Attr0_Pos 0U /*!< MPU MAIR0: Attr0 Position */ -#define MPU_MAIR0_Attr0_Msk (0xFFUL /*<< MPU_MAIR0_Attr0_Pos*/) /*!< MPU MAIR0: Attr0 Mask */ - -/* MPU Memory Attribute Indirection Register 1 Definitions */ -#define MPU_MAIR1_Attr7_Pos 24U /*!< MPU MAIR1: Attr7 Position */ -#define MPU_MAIR1_Attr7_Msk (0xFFUL << MPU_MAIR1_Attr7_Pos) /*!< MPU MAIR1: Attr7 Mask */ - -#define MPU_MAIR1_Attr6_Pos 16U /*!< MPU MAIR1: Attr6 Position */ -#define MPU_MAIR1_Attr6_Msk (0xFFUL << MPU_MAIR1_Attr6_Pos) /*!< MPU MAIR1: Attr6 Mask */ - -#define MPU_MAIR1_Attr5_Pos 8U /*!< MPU MAIR1: Attr5 Position */ -#define MPU_MAIR1_Attr5_Msk (0xFFUL << MPU_MAIR1_Attr5_Pos) /*!< MPU MAIR1: Attr5 Mask */ - -#define MPU_MAIR1_Attr4_Pos 0U /*!< MPU MAIR1: Attr4 Position */ -#define MPU_MAIR1_Attr4_Msk (0xFFUL /*<< MPU_MAIR1_Attr4_Pos*/) /*!< MPU MAIR1: Attr4 Mask */ - -/*@} end of group CMSIS_MPU */ -#endif - - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SAU Security Attribution Unit (SAU) - \brief Type definitions for the Security Attribution Unit (SAU) - @{ - */ - -/** - \brief Structure type to access the Security Attribution Unit (SAU). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SAU Control Register */ - __IM uint32_t TYPE; /*!< Offset: 0x004 (R/ ) SAU Type Register */ -#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) SAU Region Number Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) SAU Region Base Address Register */ - __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) SAU Region Limit Address Register */ -#else - uint32_t RESERVED0[3]; -#endif - __IOM uint32_t SFSR; /*!< Offset: 0x014 (R/W) Secure Fault Status Register */ - __IOM uint32_t SFAR; /*!< Offset: 0x018 (R/W) Secure Fault Address Register */ -} SAU_Type; - -/* SAU Control Register Definitions */ -#define SAU_CTRL_ALLNS_Pos 1U /*!< SAU CTRL: ALLNS Position */ -#define SAU_CTRL_ALLNS_Msk (1UL << SAU_CTRL_ALLNS_Pos) /*!< SAU CTRL: ALLNS Mask */ - -#define SAU_CTRL_ENABLE_Pos 0U /*!< SAU CTRL: ENABLE Position */ -#define SAU_CTRL_ENABLE_Msk (1UL /*<< SAU_CTRL_ENABLE_Pos*/) /*!< SAU CTRL: ENABLE Mask */ - -/* SAU Type Register Definitions */ -#define SAU_TYPE_SREGION_Pos 0U /*!< SAU TYPE: SREGION Position */ -#define SAU_TYPE_SREGION_Msk (0xFFUL /*<< SAU_TYPE_SREGION_Pos*/) /*!< SAU TYPE: SREGION Mask */ - -#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) -/* SAU Region Number Register Definitions */ -#define SAU_RNR_REGION_Pos 0U /*!< SAU RNR: REGION Position */ -#define SAU_RNR_REGION_Msk (0xFFUL /*<< SAU_RNR_REGION_Pos*/) /*!< SAU RNR: REGION Mask */ - -/* SAU Region Base Address Register Definitions */ -#define SAU_RBAR_BADDR_Pos 5U /*!< SAU RBAR: BADDR Position */ -#define SAU_RBAR_BADDR_Msk (0x7FFFFFFUL << SAU_RBAR_BADDR_Pos) /*!< SAU RBAR: BADDR Mask */ - -/* SAU Region Limit Address Register Definitions */ -#define SAU_RLAR_LADDR_Pos 5U /*!< SAU RLAR: LADDR Position */ -#define SAU_RLAR_LADDR_Msk (0x7FFFFFFUL << SAU_RLAR_LADDR_Pos) /*!< SAU RLAR: LADDR Mask */ - -#define SAU_RLAR_NSC_Pos 1U /*!< SAU RLAR: NSC Position */ -#define SAU_RLAR_NSC_Msk (1UL << SAU_RLAR_NSC_Pos) /*!< SAU RLAR: NSC Mask */ - -#define SAU_RLAR_ENABLE_Pos 0U /*!< SAU RLAR: ENABLE Position */ -#define SAU_RLAR_ENABLE_Msk (1UL /*<< SAU_RLAR_ENABLE_Pos*/) /*!< SAU RLAR: ENABLE Mask */ - -#endif /* defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) */ - -/* Secure Fault Status Register Definitions */ -#define SAU_SFSR_LSERR_Pos 7U /*!< SAU SFSR: LSERR Position */ -#define SAU_SFSR_LSERR_Msk (1UL << SAU_SFSR_LSERR_Pos) /*!< SAU SFSR: LSERR Mask */ - -#define SAU_SFSR_SFARVALID_Pos 6U /*!< SAU SFSR: SFARVALID Position */ -#define SAU_SFSR_SFARVALID_Msk (1UL << SAU_SFSR_SFARVALID_Pos) /*!< SAU SFSR: SFARVALID Mask */ - -#define SAU_SFSR_LSPERR_Pos 5U /*!< SAU SFSR: LSPERR Position */ -#define SAU_SFSR_LSPERR_Msk (1UL << SAU_SFSR_LSPERR_Pos) /*!< SAU SFSR: LSPERR Mask */ - -#define SAU_SFSR_INVTRAN_Pos 4U /*!< SAU SFSR: INVTRAN Position */ -#define SAU_SFSR_INVTRAN_Msk (1UL << SAU_SFSR_INVTRAN_Pos) /*!< SAU SFSR: INVTRAN Mask */ - -#define SAU_SFSR_AUVIOL_Pos 3U /*!< SAU SFSR: AUVIOL Position */ -#define SAU_SFSR_AUVIOL_Msk (1UL << SAU_SFSR_AUVIOL_Pos) /*!< SAU SFSR: AUVIOL Mask */ - -#define SAU_SFSR_INVER_Pos 2U /*!< SAU SFSR: INVER Position */ -#define SAU_SFSR_INVER_Msk (1UL << SAU_SFSR_INVER_Pos) /*!< SAU SFSR: INVER Mask */ - -#define SAU_SFSR_INVIS_Pos 1U /*!< SAU SFSR: INVIS Position */ -#define SAU_SFSR_INVIS_Msk (1UL << SAU_SFSR_INVIS_Pos) /*!< SAU SFSR: INVIS Mask */ - -#define SAU_SFSR_INVEP_Pos 0U /*!< SAU SFSR: INVEP Position */ -#define SAU_SFSR_INVEP_Msk (1UL /*<< SAU_SFSR_INVEP_Pos*/) /*!< SAU SFSR: INVEP Mask */ - -/*@} end of group CMSIS_SAU */ -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_FPU Floating Point Unit (FPU) - \brief Type definitions for the Floating Point Unit (FPU) - @{ - */ - -/** - \brief Structure type to access the Floating Point Unit (FPU). - */ -typedef struct -{ - uint32_t RESERVED0[1U]; - __IOM uint32_t FPCCR; /*!< Offset: 0x004 (R/W) Floating-Point Context Control Register */ - __IOM uint32_t FPCAR; /*!< Offset: 0x008 (R/W) Floating-Point Context Address Register */ - __IOM uint32_t FPDSCR; /*!< Offset: 0x00C (R/W) Floating-Point Default Status Control Register */ - __IM uint32_t MVFR0; /*!< Offset: 0x010 (R/ ) Media and FP Feature Register 0 */ - __IM uint32_t MVFR1; /*!< Offset: 0x014 (R/ ) Media and FP Feature Register 1 */ -} FPU_Type; - -/* Floating-Point Context Control Register Definitions */ -#define FPU_FPCCR_ASPEN_Pos 31U /*!< FPCCR: ASPEN bit Position */ -#define FPU_FPCCR_ASPEN_Msk (1UL << FPU_FPCCR_ASPEN_Pos) /*!< FPCCR: ASPEN bit Mask */ - -#define FPU_FPCCR_LSPEN_Pos 30U /*!< FPCCR: LSPEN Position */ -#define FPU_FPCCR_LSPEN_Msk (1UL << FPU_FPCCR_LSPEN_Pos) /*!< FPCCR: LSPEN bit Mask */ - -#define FPU_FPCCR_LSPENS_Pos 29U /*!< FPCCR: LSPENS Position */ -#define FPU_FPCCR_LSPENS_Msk (1UL << FPU_FPCCR_LSPENS_Pos) /*!< FPCCR: LSPENS bit Mask */ - -#define FPU_FPCCR_CLRONRET_Pos 28U /*!< FPCCR: CLRONRET Position */ -#define FPU_FPCCR_CLRONRET_Msk (1UL << FPU_FPCCR_CLRONRET_Pos) /*!< FPCCR: CLRONRET bit Mask */ - -#define FPU_FPCCR_CLRONRETS_Pos 27U /*!< FPCCR: CLRONRETS Position */ -#define FPU_FPCCR_CLRONRETS_Msk (1UL << FPU_FPCCR_CLRONRETS_Pos) /*!< FPCCR: CLRONRETS bit Mask */ - -#define FPU_FPCCR_TS_Pos 26U /*!< FPCCR: TS Position */ -#define FPU_FPCCR_TS_Msk (1UL << FPU_FPCCR_TS_Pos) /*!< FPCCR: TS bit Mask */ - -#define FPU_FPCCR_UFRDY_Pos 10U /*!< FPCCR: UFRDY Position */ -#define FPU_FPCCR_UFRDY_Msk (1UL << FPU_FPCCR_UFRDY_Pos) /*!< FPCCR: UFRDY bit Mask */ - -#define FPU_FPCCR_SPLIMVIOL_Pos 9U /*!< FPCCR: SPLIMVIOL Position */ -#define FPU_FPCCR_SPLIMVIOL_Msk (1UL << FPU_FPCCR_SPLIMVIOL_Pos) /*!< FPCCR: SPLIMVIOL bit Mask */ - -#define FPU_FPCCR_MONRDY_Pos 8U /*!< FPCCR: MONRDY Position */ -#define FPU_FPCCR_MONRDY_Msk (1UL << FPU_FPCCR_MONRDY_Pos) /*!< FPCCR: MONRDY bit Mask */ - -#define FPU_FPCCR_SFRDY_Pos 7U /*!< FPCCR: SFRDY Position */ -#define FPU_FPCCR_SFRDY_Msk (1UL << FPU_FPCCR_SFRDY_Pos) /*!< FPCCR: SFRDY bit Mask */ - -#define FPU_FPCCR_BFRDY_Pos 6U /*!< FPCCR: BFRDY Position */ -#define FPU_FPCCR_BFRDY_Msk (1UL << FPU_FPCCR_BFRDY_Pos) /*!< FPCCR: BFRDY bit Mask */ - -#define FPU_FPCCR_MMRDY_Pos 5U /*!< FPCCR: MMRDY Position */ -#define FPU_FPCCR_MMRDY_Msk (1UL << FPU_FPCCR_MMRDY_Pos) /*!< FPCCR: MMRDY bit Mask */ - -#define FPU_FPCCR_HFRDY_Pos 4U /*!< FPCCR: HFRDY Position */ -#define FPU_FPCCR_HFRDY_Msk (1UL << FPU_FPCCR_HFRDY_Pos) /*!< FPCCR: HFRDY bit Mask */ - -#define FPU_FPCCR_THREAD_Pos 3U /*!< FPCCR: processor mode bit Position */ -#define FPU_FPCCR_THREAD_Msk (1UL << FPU_FPCCR_THREAD_Pos) /*!< FPCCR: processor mode active bit Mask */ - -#define FPU_FPCCR_S_Pos 2U /*!< FPCCR: Security status of the FP context bit Position */ -#define FPU_FPCCR_S_Msk (1UL << FPU_FPCCR_S_Pos) /*!< FPCCR: Security status of the FP context bit Mask */ - -#define FPU_FPCCR_USER_Pos 1U /*!< FPCCR: privilege level bit Position */ -#define FPU_FPCCR_USER_Msk (1UL << FPU_FPCCR_USER_Pos) /*!< FPCCR: privilege level bit Mask */ - -#define FPU_FPCCR_LSPACT_Pos 0U /*!< FPCCR: Lazy state preservation active bit Position */ -#define FPU_FPCCR_LSPACT_Msk (1UL /*<< FPU_FPCCR_LSPACT_Pos*/) /*!< FPCCR: Lazy state preservation active bit Mask */ - -/* Floating-Point Context Address Register Definitions */ -#define FPU_FPCAR_ADDRESS_Pos 3U /*!< FPCAR: ADDRESS bit Position */ -#define FPU_FPCAR_ADDRESS_Msk (0x1FFFFFFFUL << FPU_FPCAR_ADDRESS_Pos) /*!< FPCAR: ADDRESS bit Mask */ - -/* Floating-Point Default Status Control Register Definitions */ -#define FPU_FPDSCR_AHP_Pos 26U /*!< FPDSCR: AHP bit Position */ -#define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos) /*!< FPDSCR: AHP bit Mask */ - -#define FPU_FPDSCR_DN_Pos 25U /*!< FPDSCR: DN bit Position */ -#define FPU_FPDSCR_DN_Msk (1UL << FPU_FPDSCR_DN_Pos) /*!< FPDSCR: DN bit Mask */ - -#define FPU_FPDSCR_FZ_Pos 24U /*!< FPDSCR: FZ bit Position */ -#define FPU_FPDSCR_FZ_Msk (1UL << FPU_FPDSCR_FZ_Pos) /*!< FPDSCR: FZ bit Mask */ - -#define FPU_FPDSCR_RMode_Pos 22U /*!< FPDSCR: RMode bit Position */ -#define FPU_FPDSCR_RMode_Msk (3UL << FPU_FPDSCR_RMode_Pos) /*!< FPDSCR: RMode bit Mask */ - -/* Media and FP Feature Register 0 Definitions */ -#define FPU_MVFR0_FP_rounding_modes_Pos 28U /*!< MVFR0: FP rounding modes bits Position */ -#define FPU_MVFR0_FP_rounding_modes_Msk (0xFUL << FPU_MVFR0_FP_rounding_modes_Pos) /*!< MVFR0: FP rounding modes bits Mask */ - -#define FPU_MVFR0_Short_vectors_Pos 24U /*!< MVFR0: Short vectors bits Position */ -#define FPU_MVFR0_Short_vectors_Msk (0xFUL << FPU_MVFR0_Short_vectors_Pos) /*!< MVFR0: Short vectors bits Mask */ - -#define FPU_MVFR0_Square_root_Pos 20U /*!< MVFR0: Square root bits Position */ -#define FPU_MVFR0_Square_root_Msk (0xFUL << FPU_MVFR0_Square_root_Pos) /*!< MVFR0: Square root bits Mask */ - -#define FPU_MVFR0_Divide_Pos 16U /*!< MVFR0: Divide bits Position */ -#define FPU_MVFR0_Divide_Msk (0xFUL << FPU_MVFR0_Divide_Pos) /*!< MVFR0: Divide bits Mask */ - -#define FPU_MVFR0_FP_excep_trapping_Pos 12U /*!< MVFR0: FP exception trapping bits Position */ -#define FPU_MVFR0_FP_excep_trapping_Msk (0xFUL << FPU_MVFR0_FP_excep_trapping_Pos) /*!< MVFR0: FP exception trapping bits Mask */ - -#define FPU_MVFR0_Double_precision_Pos 8U /*!< MVFR0: Double-precision bits Position */ -#define FPU_MVFR0_Double_precision_Msk (0xFUL << FPU_MVFR0_Double_precision_Pos) /*!< MVFR0: Double-precision bits Mask */ - -#define FPU_MVFR0_Single_precision_Pos 4U /*!< MVFR0: Single-precision bits Position */ -#define FPU_MVFR0_Single_precision_Msk (0xFUL << FPU_MVFR0_Single_precision_Pos) /*!< MVFR0: Single-precision bits Mask */ - -#define FPU_MVFR0_A_SIMD_registers_Pos 0U /*!< MVFR0: A_SIMD registers bits Position */ -#define FPU_MVFR0_A_SIMD_registers_Msk (0xFUL /*<< FPU_MVFR0_A_SIMD_registers_Pos*/) /*!< MVFR0: A_SIMD registers bits Mask */ - -/* Media and FP Feature Register 1 Definitions */ -#define FPU_MVFR1_FP_fused_MAC_Pos 28U /*!< MVFR1: FP fused MAC bits Position */ -#define FPU_MVFR1_FP_fused_MAC_Msk (0xFUL << FPU_MVFR1_FP_fused_MAC_Pos) /*!< MVFR1: FP fused MAC bits Mask */ - -#define FPU_MVFR1_FP_HPFP_Pos 24U /*!< MVFR1: FP HPFP bits Position */ -#define FPU_MVFR1_FP_HPFP_Msk (0xFUL << FPU_MVFR1_FP_HPFP_Pos) /*!< MVFR1: FP HPFP bits Mask */ - -#define FPU_MVFR1_D_NaN_mode_Pos 4U /*!< MVFR1: D_NaN mode bits Position */ -#define FPU_MVFR1_D_NaN_mode_Msk (0xFUL << FPU_MVFR1_D_NaN_mode_Pos) /*!< MVFR1: D_NaN mode bits Mask */ - -#define FPU_MVFR1_FtZ_mode_Pos 0U /*!< MVFR1: FtZ mode bits Position */ -#define FPU_MVFR1_FtZ_mode_Msk (0xFUL /*<< FPU_MVFR1_FtZ_mode_Pos*/) /*!< MVFR1: FtZ mode bits Mask */ - -/*@} end of group CMSIS_FPU */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief Type definitions for the Core Debug Registers - @{ - */ - -/** - \brief Structure type to access the Core Debug Register (CoreDebug). - */ -typedef struct -{ - __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ - __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ - __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ - __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ - uint32_t RESERVED4[1U]; - __IOM uint32_t DAUTHCTRL; /*!< Offset: 0x014 (R/W) Debug Authentication Control Register */ - __IOM uint32_t DSCSR; /*!< Offset: 0x018 (R/W) Debug Security Control and Status Register */ -} CoreDebug_Type; - -/* Debug Halting Control and Status Register Definitions */ -#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ -#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ - -#define CoreDebug_DHCSR_S_RESTART_ST_Pos 26U /*!< CoreDebug DHCSR: S_RESTART_ST Position */ -#define CoreDebug_DHCSR_S_RESTART_ST_Msk (1UL << CoreDebug_DHCSR_S_RESTART_ST_Pos) /*!< CoreDebug DHCSR: S_RESTART_ST Mask */ - -#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ -#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ - -#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ -#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ - -#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ -#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ - -#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ -#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ - -#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ -#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ - -#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ -#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ - -#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ -#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ - -#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ -#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ - -#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ -#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ - -#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ -#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ - -#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ -#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ - -/* Debug Core Register Selector Register Definitions */ -#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ -#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ - -#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ -#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ - -/* Debug Exception and Monitor Control Register Definitions */ -#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ -#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ - -#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ -#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ - -#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ -#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ - -#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ -#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ - -#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ -#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ - -#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ -#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ - -#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ -#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ - -#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ -#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ - -#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ -#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ - -#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ -#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ - -#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ -#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ - -#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ -#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ - -#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ -#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ - -/* Debug Authentication Control Register Definitions */ -#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos 3U /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Position */ -#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Mask */ - -#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos 2U /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Position */ -#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Msk (1UL << CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos) /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Mask */ - -#define CoreDebug_DAUTHCTRL_INTSPIDEN_Pos 1U /*!< CoreDebug DAUTHCTRL: INTSPIDEN Position */ -#define CoreDebug_DAUTHCTRL_INTSPIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPIDEN Mask */ - -#define CoreDebug_DAUTHCTRL_SPIDENSEL_Pos 0U /*!< CoreDebug DAUTHCTRL: SPIDENSEL Position */ -#define CoreDebug_DAUTHCTRL_SPIDENSEL_Msk (1UL /*<< CoreDebug_DAUTHCTRL_SPIDENSEL_Pos*/) /*!< CoreDebug DAUTHCTRL: SPIDENSEL Mask */ - -/* Debug Security Control and Status Register Definitions */ -#define CoreDebug_DSCSR_CDS_Pos 16U /*!< CoreDebug DSCSR: CDS Position */ -#define CoreDebug_DSCSR_CDS_Msk (1UL << CoreDebug_DSCSR_CDS_Pos) /*!< CoreDebug DSCSR: CDS Mask */ - -#define CoreDebug_DSCSR_SBRSEL_Pos 1U /*!< CoreDebug DSCSR: SBRSEL Position */ -#define CoreDebug_DSCSR_SBRSEL_Msk (1UL << CoreDebug_DSCSR_SBRSEL_Pos) /*!< CoreDebug DSCSR: SBRSEL Mask */ - -#define CoreDebug_DSCSR_SBRSELEN_Pos 0U /*!< CoreDebug DSCSR: SBRSELEN Position */ -#define CoreDebug_DSCSR_SBRSELEN_Msk (1UL /*<< CoreDebug_DSCSR_SBRSELEN_Pos*/) /*!< CoreDebug DSCSR: SBRSELEN Mask */ - -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ - #define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ - #define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ - #define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ - #define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ - #define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ - #define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ - #define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ - #define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - - #define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ - #define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ - #define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ - #define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ - #define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ - #define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ - #define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ - #define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE ) /*!< Core Debug configuration struct */ - - #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ - #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ - #endif - - #if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - #define SAU_BASE (SCS_BASE + 0x0DD0UL) /*!< Security Attribution Unit */ - #define SAU ((SAU_Type *) SAU_BASE ) /*!< Security Attribution Unit */ - #endif - - #define FPU_BASE (SCS_BASE + 0x0F30UL) /*!< Floating Point Unit */ - #define FPU ((FPU_Type *) FPU_BASE ) /*!< Floating Point Unit */ - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - #define SCS_BASE_NS (0xE002E000UL) /*!< System Control Space Base Address (non-secure address space) */ - #define CoreDebug_BASE_NS (0xE002EDF0UL) /*!< Core Debug Base Address (non-secure address space) */ - #define SysTick_BASE_NS (SCS_BASE_NS + 0x0010UL) /*!< SysTick Base Address (non-secure address space) */ - #define NVIC_BASE_NS (SCS_BASE_NS + 0x0100UL) /*!< NVIC Base Address (non-secure address space) */ - #define SCB_BASE_NS (SCS_BASE_NS + 0x0D00UL) /*!< System Control Block Base Address (non-secure address space) */ - - #define SCnSCB_NS ((SCnSCB_Type *) SCS_BASE_NS ) /*!< System control Register not in SCB(non-secure address space) */ - #define SCB_NS ((SCB_Type *) SCB_BASE_NS ) /*!< SCB configuration struct (non-secure address space) */ - #define SysTick_NS ((SysTick_Type *) SysTick_BASE_NS ) /*!< SysTick configuration struct (non-secure address space) */ - #define NVIC_NS ((NVIC_Type *) NVIC_BASE_NS ) /*!< NVIC configuration struct (non-secure address space) */ - #define CoreDebug_NS ((CoreDebug_Type *) CoreDebug_BASE_NS) /*!< Core Debug configuration struct (non-secure address space) */ - - #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE_NS (SCS_BASE_NS + 0x0D90UL) /*!< Memory Protection Unit (non-secure address space) */ - #define MPU_NS ((MPU_Type *) MPU_BASE_NS ) /*!< Memory Protection Unit (non-secure address space) */ - #endif - - #define FPU_BASE_NS (SCS_BASE_NS + 0x0F30UL) /*!< Floating Point Unit (non-secure address space) */ - #define FPU_NS ((FPU_Type *) FPU_BASE_NS ) /*!< Floating Point Unit (non-secure address space) */ - -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Debug Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping - #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ - #define NVIC_GetActive __NVIC_GetActive - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* Special LR values for Secure/Non-Secure call handling and exception handling */ - -/* Function Return Payload (from ARMv8-M Architecture Reference Manual) LR value on entry from Secure BLXNS */ -#define FNC_RETURN (0xFEFFFFFFUL) /* bit [0] ignored when processing a branch */ - -/* The following EXC_RETURN mask values are used to evaluate the LR on exception entry */ -#define EXC_RETURN_PREFIX (0xFF000000UL) /* bits [31:24] set to indicate an EXC_RETURN value */ -#define EXC_RETURN_S (0x00000040UL) /* bit [6] stack used to push registers: 0=Non-secure 1=Secure */ -#define EXC_RETURN_DCRS (0x00000020UL) /* bit [5] stacking rules for called registers: 0=skipped 1=saved */ -#define EXC_RETURN_FTYPE (0x00000010UL) /* bit [4] allocate stack for floating-point context: 0=done 1=skipped */ -#define EXC_RETURN_MODE (0x00000008UL) /* bit [3] processor mode for return: 0=Handler mode 1=Thread mode */ -#define EXC_RETURN_SPSEL (0x00000002UL) /* bit [1] stack pointer used to restore context: 0=MSP 1=PSP */ -#define EXC_RETURN_ES (0x00000001UL) /* bit [0] security state exception was taken to: 0=Non-secure 1=Secure */ - -/* Integrity Signature (from ARMv8-M Architecture Reference Manual) for exception context stacking */ -#if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) /* Value for processors with floating-point extension: */ -#define EXC_INTEGRITY_SIGNATURE (0xFEFA125AUL) /* bit [0] SFTC must match LR bit[4] EXC_RETURN_FTYPE */ -#else -#define EXC_INTEGRITY_SIGNATURE (0xFEFA125BUL) /* Value for processors without floating-point extension */ -#endif - - -/** - \brief Set Priority Grouping - \details Sets the priority grouping field using the required unlock sequence. - The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. - Only values from 0..7 are used. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Priority grouping field. - */ -__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) -{ - uint32_t reg_value; - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - - reg_value = SCB->AIRCR; /* read old register configuration */ - reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ - reg_value = (reg_value | - ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (PriorityGroupTmp << 8U) ); /* Insert write key and priorty group */ - SCB->AIRCR = reg_value; -} - - -/** - \brief Get Priority Grouping - \details Reads the priority grouping field from the NVIC Interrupt Controller. - \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). - */ -__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) -{ - return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); -} - - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt - \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief Get Interrupt Target State - \details Reads the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - \return 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_GetTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Target State - \details Sets the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_SetTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] |= ((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Clear Interrupt Target State - \details Clears the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_ClearTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] &= ~((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IPR[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } - else - { - SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return(((uint32_t)NVIC->IPR[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return(((uint32_t)SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Encode Priority - \details Encodes the priority for an interrupt with the given priority group, - preemptive priority value, and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Used priority group. - \param [in] PreemptPriority Preemptive priority value (starting from 0). - \param [in] SubPriority Subpriority value (starting from 0). - \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). - */ -__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - return ( - ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | - ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) - ); -} - - -/** - \brief Decode Priority - \details Decodes an interrupt priority value with a given priority group to - preemptive priority value and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. - \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). - \param [in] PriorityGroup Used priority group. - \param [out] pPreemptPriority Preemptive priority value (starting from 0). - \param [out] pSubPriority Subpriority value (starting from 0). - */ -__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); - *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); -} - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - VTOR must been relocated to SRAM before. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | - SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief Set Priority Grouping (non-secure) - \details Sets the non-secure priority grouping field when in secure state using the required unlock sequence. - The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. - Only values from 0..7 are used. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Priority grouping field. - */ -__STATIC_INLINE void TZ_NVIC_SetPriorityGrouping_NS(uint32_t PriorityGroup) -{ - uint32_t reg_value; - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - - reg_value = SCB_NS->AIRCR; /* read old register configuration */ - reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ - reg_value = (reg_value | - ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (PriorityGroupTmp << 8U) ); /* Insert write key and priorty group */ - SCB_NS->AIRCR = reg_value; -} - - -/** - \brief Get Priority Grouping (non-secure) - \details Reads the priority grouping field from the non-secure NVIC when in secure state. - \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetPriorityGrouping_NS(void) -{ - return ((uint32_t)((SCB_NS->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); -} - - -/** - \brief Enable Interrupt (non-secure) - \details Enables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_EnableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status (non-secure) - \details Returns a device specific interrupt enable status from the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetEnableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt (non-secure) - \details Disables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_DisableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Pending Interrupt (non-secure) - \details Reads the NVIC pending register in the non-secure NVIC when in secure state and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt (non-secure) - \details Sets the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_SetPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt (non-secure) - \details Clears the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_ClearPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt (non-secure) - \details Reads the active register in non-secure NVIC when in secure state and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetActive_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Priority (non-secure) - \details Sets the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every non-secure processor exception. - */ -__STATIC_INLINE void TZ_NVIC_SetPriority_NS(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->IPR[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } - else - { - SCB_NS->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } -} - - -/** - \brief Get Interrupt Priority (non-secure) - \details Reads the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetPriority_NS(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return(((uint32_t)NVIC_NS->IPR[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return(((uint32_t)SCB_NS->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); - } -} -#endif /* defined (__ARM_FEATURE_CMSE) &&(__ARM_FEATURE_CMSE == 3U) */ - -/*@} end of CMSIS_Core_NVICFunctions */ - -/* ########################## MPU functions #################################### */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - -#include "mpu_armv8.h" - -#endif - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - uint32_t mvfr0; - - mvfr0 = FPU->MVFR0; - if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x220U) - { - return 2U; /* Double + Single precision FPU */ - } - else if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x020U) - { - return 1U; /* Single precision FPU */ - } - else - { - return 0U; /* No FPU */ - } -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ########################## SAU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SAUFunctions SAU Functions - \brief Functions that configure the SAU. - @{ - */ - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - -/** - \brief Enable SAU - \details Enables the Security Attribution Unit (SAU). - */ -__STATIC_INLINE void TZ_SAU_Enable(void) -{ - SAU->CTRL |= (SAU_CTRL_ENABLE_Msk); -} - - - -/** - \brief Disable SAU - \details Disables the Security Attribution Unit (SAU). - */ -__STATIC_INLINE void TZ_SAU_Disable(void) -{ - SAU->CTRL &= ~(SAU_CTRL_ENABLE_Msk); -} - -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - -/*@} end of CMSIS_Core_SAUFunctions */ - - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief System Tick Configuration (non-secure) - \details Initializes the non-secure System Timer and its interrupt when in secure state, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function TZ_SysTick_Config_NS is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - - */ -__STATIC_INLINE uint32_t TZ_SysTick_Config_NS(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick_NS->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - TZ_NVIC_SetPriority_NS (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick_NS->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick_NS->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - -/* ##################################### Debug In/Output function ########################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_core_DebugFunctions ITM Functions - \brief Functions that access the ITM debug interface. - @{ - */ - -extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ -#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ - - -/** - \brief ITM Send Character - \details Transmits a character via the ITM channel 0, and - \li Just returns when no debugger is connected that has booked the output. - \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. - \param [in] ch Character to transmit. - \returns Character to transmit. - */ -__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) -{ - if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ - ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ - { - while (ITM->PORT[0U].u32 == 0UL) - { - __NOP(); - } - ITM->PORT[0U].u8 = (uint8_t)ch; - } - return (ch); -} - - -/** - \brief ITM Receive Character - \details Inputs a character via the external variable \ref ITM_RxBuffer. - \return Received character. - \return -1 No character pending. - */ -__STATIC_INLINE int32_t ITM_ReceiveChar (void) -{ - int32_t ch = -1; /* no character available */ - - if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) - { - ch = ITM_RxBuffer; - ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ - } - - return (ch); -} - - -/** - \brief ITM Check Character - \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. - \return 0 No character available. - \return 1 Character available. - */ -__STATIC_INLINE int32_t ITM_CheckChar (void) -{ - - if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) - { - return (0); /* no character available */ - } - else - { - return (1); /* character available */ - } -} - -/*@} end of CMSIS_core_DebugFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_ARMV8MML_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_armv8mml.h + * @brief CMSIS Armv8-M Mainline Core Peripheral Access Layer Header File + * @version V5.0.7 + * @date 06. July 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_ARMV8MML_H_GENERIC +#define __CORE_ARMV8MML_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup Cortex_ARMv8MML + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS Armv8MML definitions */ +#define __ARMv8MML_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __ARMv8MML_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __ARMv8MML_CMSIS_VERSION ((__ARMv8MML_CMSIS_VERSION_MAIN << 16U) | \ + __ARMv8MML_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_M (81U) /*!< Cortex-M Core */ + +/** __FPU_USED indicates whether an FPU is used or not. + For this, __FPU_PRESENT has to be checked prior to making use of FPU specific registers and functions. +*/ +#if defined ( __CC_ARM ) + #if defined __TARGET_FPU_VFP + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + + #if defined(__ARM_FEATURE_DSP) + #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U) + #define __DSP_USED 1U + #else + #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" + #define __DSP_USED 0U + #endif + #else + #define __DSP_USED 0U + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined __ARM_PCS_VFP + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #warning "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + + #if defined(__ARM_FEATURE_DSP) + #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U) + #define __DSP_USED 1U + #else + #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" + #define __DSP_USED 0U + #endif + #else + #define __DSP_USED 0U + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + + #if defined(__ARM_FEATURE_DSP) + #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U) + #define __DSP_USED 1U + #else + #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" + #define __DSP_USED 0U + #endif + #else + #define __DSP_USED 0U + #endif + +#elif defined ( __ICCARM__ ) + #if defined __ARMVFP__ + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + + #if defined(__ARM_FEATURE_DSP) + #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U) + #define __DSP_USED 1U + #else + #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" + #define __DSP_USED 0U + #endif + #else + #define __DSP_USED 0U + #endif + +#elif defined ( __TI_ARM__ ) + #if defined __TI_VFP_SUPPORT__ + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __TASKING__ ) + #if defined __FPU_VFP__ + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_ARMV8MML_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_ARMV8MML_H_DEPENDANT +#define __CORE_ARMV8MML_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __ARMv8MML_REV + #define __ARMv8MML_REV 0x0000U + #warning "__ARMv8MML_REV not defined in device header file; using default!" + #endif + + #ifndef __FPU_PRESENT + #define __FPU_PRESENT 0U + #warning "__FPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __MPU_PRESENT + #define __MPU_PRESENT 0U + #warning "__MPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __SAUREGION_PRESENT + #define __SAUREGION_PRESENT 0U + #warning "__SAUREGION_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __DSP_PRESENT + #define __DSP_PRESENT 0U + #warning "__DSP_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 3U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group ARMv8MML */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + - Core Debug Register + - Core MPU Register + - Core SAU Register + - Core FPU Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:16; /*!< bit: 0..15 Reserved */ + uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ + uint32_t _reserved1:7; /*!< bit: 20..26 Reserved */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + +#define APSR_Q_Pos 27U /*!< APSR: Q Position */ +#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ + +#define APSR_GE_Pos 16U /*!< APSR: GE Position */ +#define APSR_GE_Msk (0xFUL << APSR_GE_Pos) /*!< APSR: GE Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:7; /*!< bit: 9..15 Reserved */ + uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ + uint32_t _reserved1:4; /*!< bit: 20..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ + uint32_t IT:2; /*!< bit: 25..26 saved IT state (read 0) */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ +#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ + +#define xPSR_IT_Pos 25U /*!< xPSR: IT Position */ +#define xPSR_IT_Msk (3UL << xPSR_IT_Pos) /*!< xPSR: IT Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_GE_Pos 16U /*!< xPSR: GE Position */ +#define xPSR_GE_Msk (0xFUL << xPSR_GE_Pos) /*!< xPSR: GE Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ + uint32_t SPSEL:1; /*!< bit: 1 Stack-pointer select */ + uint32_t FPCA:1; /*!< bit: 2 Floating-point context active */ + uint32_t SFPA:1; /*!< bit: 3 Secure floating-point active */ + uint32_t _reserved1:28; /*!< bit: 4..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_SFPA_Pos 3U /*!< CONTROL: SFPA Position */ +#define CONTROL_SFPA_Msk (1UL << CONTROL_SFPA_Pos) /*!< CONTROL: SFPA Mask */ + +#define CONTROL_FPCA_Pos 2U /*!< CONTROL: FPCA Position */ +#define CONTROL_FPCA_Msk (1UL << CONTROL_FPCA_Pos) /*!< CONTROL: FPCA Mask */ + +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ +#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[16U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[16U]; + __IOM uint32_t ICER[16U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[16U]; + __IOM uint32_t ISPR[16U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[16U]; + __IOM uint32_t ICPR[16U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[16U]; + __IOM uint32_t IABR[16U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ + uint32_t RESERVED4[16U]; + __IOM uint32_t ITNS[16U]; /*!< Offset: 0x280 (R/W) Interrupt Non-Secure State Register */ + uint32_t RESERVED5[16U]; + __IOM uint8_t IPR[496U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ + uint32_t RESERVED6[580U]; + __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ +} NVIC_Type; + +/* Software Triggered Interrupt Register Definitions */ +#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ +#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ + __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + __IOM uint8_t SHPR[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ + __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ + __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ + __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ + __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ + __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ + __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ + __IM uint32_t ID_PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ + __IM uint32_t ID_DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ + __IM uint32_t ID_ADR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ + __IM uint32_t ID_MMFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ + __IM uint32_t ID_ISAR[6U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ + __IM uint32_t CLIDR; /*!< Offset: 0x078 (R/ ) Cache Level ID register */ + __IM uint32_t CTR; /*!< Offset: 0x07C (R/ ) Cache Type register */ + __IM uint32_t CCSIDR; /*!< Offset: 0x080 (R/ ) Cache Size ID Register */ + __IOM uint32_t CSSELR; /*!< Offset: 0x084 (R/W) Cache Size Selection Register */ + __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ + __IOM uint32_t NSACR; /*!< Offset: 0x08C (R/W) Non-Secure Access Control Register */ + uint32_t RESERVED3[92U]; + __OM uint32_t STIR; /*!< Offset: 0x200 ( /W) Software Triggered Interrupt Register */ + uint32_t RESERVED4[15U]; + __IM uint32_t MVFR0; /*!< Offset: 0x240 (R/ ) Media and VFP Feature Register 0 */ + __IM uint32_t MVFR1; /*!< Offset: 0x244 (R/ ) Media and VFP Feature Register 1 */ + __IM uint32_t MVFR2; /*!< Offset: 0x248 (R/ ) Media and VFP Feature Register 2 */ + uint32_t RESERVED5[1U]; + __OM uint32_t ICIALLU; /*!< Offset: 0x250 ( /W) I-Cache Invalidate All to PoU */ + uint32_t RESERVED6[1U]; + __OM uint32_t ICIMVAU; /*!< Offset: 0x258 ( /W) I-Cache Invalidate by MVA to PoU */ + __OM uint32_t DCIMVAC; /*!< Offset: 0x25C ( /W) D-Cache Invalidate by MVA to PoC */ + __OM uint32_t DCISW; /*!< Offset: 0x260 ( /W) D-Cache Invalidate by Set-way */ + __OM uint32_t DCCMVAU; /*!< Offset: 0x264 ( /W) D-Cache Clean by MVA to PoU */ + __OM uint32_t DCCMVAC; /*!< Offset: 0x268 ( /W) D-Cache Clean by MVA to PoC */ + __OM uint32_t DCCSW; /*!< Offset: 0x26C ( /W) D-Cache Clean by Set-way */ + __OM uint32_t DCCIMVAC; /*!< Offset: 0x270 ( /W) D-Cache Clean and Invalidate by MVA to PoC */ + __OM uint32_t DCCISW; /*!< Offset: 0x274 ( /W) D-Cache Clean and Invalidate by Set-way */ + uint32_t RESERVED7[6U]; + __IOM uint32_t ITCMCR; /*!< Offset: 0x290 (R/W) Instruction Tightly-Coupled Memory Control Register */ + __IOM uint32_t DTCMCR; /*!< Offset: 0x294 (R/W) Data Tightly-Coupled Memory Control Registers */ + __IOM uint32_t AHBPCR; /*!< Offset: 0x298 (R/W) AHBP Control Register */ + __IOM uint32_t CACR; /*!< Offset: 0x29C (R/W) L1 Cache Control Register */ + __IOM uint32_t AHBSCR; /*!< Offset: 0x2A0 (R/W) AHB Slave Control Register */ + uint32_t RESERVED8[1U]; + __IOM uint32_t ABFSR; /*!< Offset: 0x2A8 (R/W) Auxiliary Bus Fault Status Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_PENDNMISET_Pos 31U /*!< SCB ICSR: PENDNMISET Position */ +#define SCB_ICSR_PENDNMISET_Msk (1UL << SCB_ICSR_PENDNMISET_Pos) /*!< SCB ICSR: PENDNMISET Mask */ + +#define SCB_ICSR_NMIPENDSET_Pos SCB_ICSR_PENDNMISET_Pos /*!< SCB ICSR: NMIPENDSET Position, backward compatibility */ +#define SCB_ICSR_NMIPENDSET_Msk SCB_ICSR_PENDNMISET_Msk /*!< SCB ICSR: NMIPENDSET Mask, backward compatibility */ + +#define SCB_ICSR_PENDNMICLR_Pos 30U /*!< SCB ICSR: PENDNMICLR Position */ +#define SCB_ICSR_PENDNMICLR_Msk (1UL << SCB_ICSR_PENDNMICLR_Pos) /*!< SCB ICSR: PENDNMICLR Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_STTNS_Pos 24U /*!< SCB ICSR: STTNS Position (Security Extension) */ +#define SCB_ICSR_STTNS_Msk (1UL << SCB_ICSR_STTNS_Pos) /*!< SCB ICSR: STTNS Mask (Security Extension) */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ +#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +/* SCB Vector Table Offset Register Definitions */ +#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ +#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_PRIS_Pos 14U /*!< SCB AIRCR: PRIS Position */ +#define SCB_AIRCR_PRIS_Msk (1UL << SCB_AIRCR_PRIS_Pos) /*!< SCB AIRCR: PRIS Mask */ + +#define SCB_AIRCR_BFHFNMINS_Pos 13U /*!< SCB AIRCR: BFHFNMINS Position */ +#define SCB_AIRCR_BFHFNMINS_Msk (1UL << SCB_AIRCR_BFHFNMINS_Pos) /*!< SCB AIRCR: BFHFNMINS Mask */ + +#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ +#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ + +#define SCB_AIRCR_SYSRESETREQS_Pos 3U /*!< SCB AIRCR: SYSRESETREQS Position */ +#define SCB_AIRCR_SYSRESETREQS_Msk (1UL << SCB_AIRCR_SYSRESETREQS_Pos) /*!< SCB AIRCR: SYSRESETREQS Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEPS_Pos 3U /*!< SCB SCR: SLEEPDEEPS Position */ +#define SCB_SCR_SLEEPDEEPS_Msk (1UL << SCB_SCR_SLEEPDEEPS_Pos) /*!< SCB SCR: SLEEPDEEPS Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_BP_Pos 18U /*!< SCB CCR: BP Position */ +#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos) /*!< SCB CCR: BP Mask */ + +#define SCB_CCR_IC_Pos 17U /*!< SCB CCR: IC Position */ +#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos) /*!< SCB CCR: IC Mask */ + +#define SCB_CCR_DC_Pos 16U /*!< SCB CCR: DC Position */ +#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos) /*!< SCB CCR: DC Mask */ + +#define SCB_CCR_STKOFHFNMIGN_Pos 10U /*!< SCB CCR: STKOFHFNMIGN Position */ +#define SCB_CCR_STKOFHFNMIGN_Msk (1UL << SCB_CCR_STKOFHFNMIGN_Pos) /*!< SCB CCR: STKOFHFNMIGN Mask */ + +#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ +#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ + +#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ +#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ +#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_HARDFAULTPENDED_Pos 21U /*!< SCB SHCSR: HARDFAULTPENDED Position */ +#define SCB_SHCSR_HARDFAULTPENDED_Msk (1UL << SCB_SHCSR_HARDFAULTPENDED_Pos) /*!< SCB SHCSR: HARDFAULTPENDED Mask */ + +#define SCB_SHCSR_SECUREFAULTPENDED_Pos 20U /*!< SCB SHCSR: SECUREFAULTPENDED Position */ +#define SCB_SHCSR_SECUREFAULTPENDED_Msk (1UL << SCB_SHCSR_SECUREFAULTPENDED_Pos) /*!< SCB SHCSR: SECUREFAULTPENDED Mask */ + +#define SCB_SHCSR_SECUREFAULTENA_Pos 19U /*!< SCB SHCSR: SECUREFAULTENA Position */ +#define SCB_SHCSR_SECUREFAULTENA_Msk (1UL << SCB_SHCSR_SECUREFAULTENA_Pos) /*!< SCB SHCSR: SECUREFAULTENA Mask */ + +#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ +#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ + +#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ +#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ + +#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ +#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ + +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ +#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ + +#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ +#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ + +#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ +#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ + +#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ +#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ + +#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ +#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ + +#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ +#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ + +#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ +#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ + +#define SCB_SHCSR_NMIACT_Pos 5U /*!< SCB SHCSR: NMIACT Position */ +#define SCB_SHCSR_NMIACT_Msk (1UL << SCB_SHCSR_NMIACT_Pos) /*!< SCB SHCSR: NMIACT Mask */ + +#define SCB_SHCSR_SECUREFAULTACT_Pos 4U /*!< SCB SHCSR: SECUREFAULTACT Position */ +#define SCB_SHCSR_SECUREFAULTACT_Msk (1UL << SCB_SHCSR_SECUREFAULTACT_Pos) /*!< SCB SHCSR: SECUREFAULTACT Mask */ + +#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ +#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ + +#define SCB_SHCSR_HARDFAULTACT_Pos 2U /*!< SCB SHCSR: HARDFAULTACT Position */ +#define SCB_SHCSR_HARDFAULTACT_Msk (1UL << SCB_SHCSR_HARDFAULTACT_Pos) /*!< SCB SHCSR: HARDFAULTACT Mask */ + +#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ +#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ + +#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ +#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ + +/* SCB Configurable Fault Status Register Definitions */ +#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ +#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ + +#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ +#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ + +#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ +#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ + +/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ +#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ + +#define SCB_CFSR_MLSPERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 5U) /*!< SCB CFSR (MMFSR): MLSPERR Position */ +#define SCB_CFSR_MLSPERR_Msk (1UL << SCB_CFSR_MLSPERR_Pos) /*!< SCB CFSR (MMFSR): MLSPERR Mask */ + +#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ +#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ + +#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ +#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ + +#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ +#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ + +#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ +#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ + +/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ +#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ + +#define SCB_CFSR_LSPERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 5U) /*!< SCB CFSR (BFSR): LSPERR Position */ +#define SCB_CFSR_LSPERR_Msk (1UL << SCB_CFSR_LSPERR_Pos) /*!< SCB CFSR (BFSR): LSPERR Mask */ + +#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ +#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ + +#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ +#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ + +#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ +#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ + +#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ +#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ + +#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ +#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ + +/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ +#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ + +#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ +#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ + +#define SCB_CFSR_STKOF_Pos (SCB_CFSR_USGFAULTSR_Pos + 4U) /*!< SCB CFSR (UFSR): STKOF Position */ +#define SCB_CFSR_STKOF_Msk (1UL << SCB_CFSR_STKOF_Pos) /*!< SCB CFSR (UFSR): STKOF Mask */ + +#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ +#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ + +#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ +#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ + +#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ +#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ + +#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ +#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ + +/* SCB Hard Fault Status Register Definitions */ +#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ +#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ + +#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ +#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ + +#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ +#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ + +/* SCB Debug Fault Status Register Definitions */ +#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ +#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ + +#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ +#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ + +#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ +#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ + +#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ +#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ + +#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ +#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ + +/* SCB Non-Secure Access Control Register Definitions */ +#define SCB_NSACR_CP11_Pos 11U /*!< SCB NSACR: CP11 Position */ +#define SCB_NSACR_CP11_Msk (1UL << SCB_NSACR_CP11_Pos) /*!< SCB NSACR: CP11 Mask */ + +#define SCB_NSACR_CP10_Pos 10U /*!< SCB NSACR: CP10 Position */ +#define SCB_NSACR_CP10_Msk (1UL << SCB_NSACR_CP10_Pos) /*!< SCB NSACR: CP10 Mask */ + +#define SCB_NSACR_CPn_Pos 0U /*!< SCB NSACR: CPn Position */ +#define SCB_NSACR_CPn_Msk (1UL /*<< SCB_NSACR_CPn_Pos*/) /*!< SCB NSACR: CPn Mask */ + +/* SCB Cache Level ID Register Definitions */ +#define SCB_CLIDR_LOUU_Pos 27U /*!< SCB CLIDR: LoUU Position */ +#define SCB_CLIDR_LOUU_Msk (7UL << SCB_CLIDR_LOUU_Pos) /*!< SCB CLIDR: LoUU Mask */ + +#define SCB_CLIDR_LOC_Pos 24U /*!< SCB CLIDR: LoC Position */ +#define SCB_CLIDR_LOC_Msk (7UL << SCB_CLIDR_LOC_Pos) /*!< SCB CLIDR: LoC Mask */ + +/* SCB Cache Type Register Definitions */ +#define SCB_CTR_FORMAT_Pos 29U /*!< SCB CTR: Format Position */ +#define SCB_CTR_FORMAT_Msk (7UL << SCB_CTR_FORMAT_Pos) /*!< SCB CTR: Format Mask */ + +#define SCB_CTR_CWG_Pos 24U /*!< SCB CTR: CWG Position */ +#define SCB_CTR_CWG_Msk (0xFUL << SCB_CTR_CWG_Pos) /*!< SCB CTR: CWG Mask */ + +#define SCB_CTR_ERG_Pos 20U /*!< SCB CTR: ERG Position */ +#define SCB_CTR_ERG_Msk (0xFUL << SCB_CTR_ERG_Pos) /*!< SCB CTR: ERG Mask */ + +#define SCB_CTR_DMINLINE_Pos 16U /*!< SCB CTR: DminLine Position */ +#define SCB_CTR_DMINLINE_Msk (0xFUL << SCB_CTR_DMINLINE_Pos) /*!< SCB CTR: DminLine Mask */ + +#define SCB_CTR_IMINLINE_Pos 0U /*!< SCB CTR: ImInLine Position */ +#define SCB_CTR_IMINLINE_Msk (0xFUL /*<< SCB_CTR_IMINLINE_Pos*/) /*!< SCB CTR: ImInLine Mask */ + +/* SCB Cache Size ID Register Definitions */ +#define SCB_CCSIDR_WT_Pos 31U /*!< SCB CCSIDR: WT Position */ +#define SCB_CCSIDR_WT_Msk (1UL << SCB_CCSIDR_WT_Pos) /*!< SCB CCSIDR: WT Mask */ + +#define SCB_CCSIDR_WB_Pos 30U /*!< SCB CCSIDR: WB Position */ +#define SCB_CCSIDR_WB_Msk (1UL << SCB_CCSIDR_WB_Pos) /*!< SCB CCSIDR: WB Mask */ + +#define SCB_CCSIDR_RA_Pos 29U /*!< SCB CCSIDR: RA Position */ +#define SCB_CCSIDR_RA_Msk (1UL << SCB_CCSIDR_RA_Pos) /*!< SCB CCSIDR: RA Mask */ + +#define SCB_CCSIDR_WA_Pos 28U /*!< SCB CCSIDR: WA Position */ +#define SCB_CCSIDR_WA_Msk (1UL << SCB_CCSIDR_WA_Pos) /*!< SCB CCSIDR: WA Mask */ + +#define SCB_CCSIDR_NUMSETS_Pos 13U /*!< SCB CCSIDR: NumSets Position */ +#define SCB_CCSIDR_NUMSETS_Msk (0x7FFFUL << SCB_CCSIDR_NUMSETS_Pos) /*!< SCB CCSIDR: NumSets Mask */ + +#define SCB_CCSIDR_ASSOCIATIVITY_Pos 3U /*!< SCB CCSIDR: Associativity Position */ +#define SCB_CCSIDR_ASSOCIATIVITY_Msk (0x3FFUL << SCB_CCSIDR_ASSOCIATIVITY_Pos) /*!< SCB CCSIDR: Associativity Mask */ + +#define SCB_CCSIDR_LINESIZE_Pos 0U /*!< SCB CCSIDR: LineSize Position */ +#define SCB_CCSIDR_LINESIZE_Msk (7UL /*<< SCB_CCSIDR_LINESIZE_Pos*/) /*!< SCB CCSIDR: LineSize Mask */ + +/* SCB Cache Size Selection Register Definitions */ +#define SCB_CSSELR_LEVEL_Pos 1U /*!< SCB CSSELR: Level Position */ +#define SCB_CSSELR_LEVEL_Msk (7UL << SCB_CSSELR_LEVEL_Pos) /*!< SCB CSSELR: Level Mask */ + +#define SCB_CSSELR_IND_Pos 0U /*!< SCB CSSELR: InD Position */ +#define SCB_CSSELR_IND_Msk (1UL /*<< SCB_CSSELR_IND_Pos*/) /*!< SCB CSSELR: InD Mask */ + +/* SCB Software Triggered Interrupt Register Definitions */ +#define SCB_STIR_INTID_Pos 0U /*!< SCB STIR: INTID Position */ +#define SCB_STIR_INTID_Msk (0x1FFUL /*<< SCB_STIR_INTID_Pos*/) /*!< SCB STIR: INTID Mask */ + +/* SCB D-Cache Invalidate by Set-way Register Definitions */ +#define SCB_DCISW_WAY_Pos 30U /*!< SCB DCISW: Way Position */ +#define SCB_DCISW_WAY_Msk (3UL << SCB_DCISW_WAY_Pos) /*!< SCB DCISW: Way Mask */ + +#define SCB_DCISW_SET_Pos 5U /*!< SCB DCISW: Set Position */ +#define SCB_DCISW_SET_Msk (0x1FFUL << SCB_DCISW_SET_Pos) /*!< SCB DCISW: Set Mask */ + +/* SCB D-Cache Clean by Set-way Register Definitions */ +#define SCB_DCCSW_WAY_Pos 30U /*!< SCB DCCSW: Way Position */ +#define SCB_DCCSW_WAY_Msk (3UL << SCB_DCCSW_WAY_Pos) /*!< SCB DCCSW: Way Mask */ + +#define SCB_DCCSW_SET_Pos 5U /*!< SCB DCCSW: Set Position */ +#define SCB_DCCSW_SET_Msk (0x1FFUL << SCB_DCCSW_SET_Pos) /*!< SCB DCCSW: Set Mask */ + +/* SCB D-Cache Clean and Invalidate by Set-way Register Definitions */ +#define SCB_DCCISW_WAY_Pos 30U /*!< SCB DCCISW: Way Position */ +#define SCB_DCCISW_WAY_Msk (3UL << SCB_DCCISW_WAY_Pos) /*!< SCB DCCISW: Way Mask */ + +#define SCB_DCCISW_SET_Pos 5U /*!< SCB DCCISW: Set Position */ +#define SCB_DCCISW_SET_Msk (0x1FFUL << SCB_DCCISW_SET_Pos) /*!< SCB DCCISW: Set Mask */ + +/* Instruction Tightly-Coupled Memory Control Register Definitions */ +#define SCB_ITCMCR_SZ_Pos 3U /*!< SCB ITCMCR: SZ Position */ +#define SCB_ITCMCR_SZ_Msk (0xFUL << SCB_ITCMCR_SZ_Pos) /*!< SCB ITCMCR: SZ Mask */ + +#define SCB_ITCMCR_RETEN_Pos 2U /*!< SCB ITCMCR: RETEN Position */ +#define SCB_ITCMCR_RETEN_Msk (1UL << SCB_ITCMCR_RETEN_Pos) /*!< SCB ITCMCR: RETEN Mask */ + +#define SCB_ITCMCR_RMW_Pos 1U /*!< SCB ITCMCR: RMW Position */ +#define SCB_ITCMCR_RMW_Msk (1UL << SCB_ITCMCR_RMW_Pos) /*!< SCB ITCMCR: RMW Mask */ + +#define SCB_ITCMCR_EN_Pos 0U /*!< SCB ITCMCR: EN Position */ +#define SCB_ITCMCR_EN_Msk (1UL /*<< SCB_ITCMCR_EN_Pos*/) /*!< SCB ITCMCR: EN Mask */ + +/* Data Tightly-Coupled Memory Control Register Definitions */ +#define SCB_DTCMCR_SZ_Pos 3U /*!< SCB DTCMCR: SZ Position */ +#define SCB_DTCMCR_SZ_Msk (0xFUL << SCB_DTCMCR_SZ_Pos) /*!< SCB DTCMCR: SZ Mask */ + +#define SCB_DTCMCR_RETEN_Pos 2U /*!< SCB DTCMCR: RETEN Position */ +#define SCB_DTCMCR_RETEN_Msk (1UL << SCB_DTCMCR_RETEN_Pos) /*!< SCB DTCMCR: RETEN Mask */ + +#define SCB_DTCMCR_RMW_Pos 1U /*!< SCB DTCMCR: RMW Position */ +#define SCB_DTCMCR_RMW_Msk (1UL << SCB_DTCMCR_RMW_Pos) /*!< SCB DTCMCR: RMW Mask */ + +#define SCB_DTCMCR_EN_Pos 0U /*!< SCB DTCMCR: EN Position */ +#define SCB_DTCMCR_EN_Msk (1UL /*<< SCB_DTCMCR_EN_Pos*/) /*!< SCB DTCMCR: EN Mask */ + +/* AHBP Control Register Definitions */ +#define SCB_AHBPCR_SZ_Pos 1U /*!< SCB AHBPCR: SZ Position */ +#define SCB_AHBPCR_SZ_Msk (7UL << SCB_AHBPCR_SZ_Pos) /*!< SCB AHBPCR: SZ Mask */ + +#define SCB_AHBPCR_EN_Pos 0U /*!< SCB AHBPCR: EN Position */ +#define SCB_AHBPCR_EN_Msk (1UL /*<< SCB_AHBPCR_EN_Pos*/) /*!< SCB AHBPCR: EN Mask */ + +/* L1 Cache Control Register Definitions */ +#define SCB_CACR_FORCEWT_Pos 2U /*!< SCB CACR: FORCEWT Position */ +#define SCB_CACR_FORCEWT_Msk (1UL << SCB_CACR_FORCEWT_Pos) /*!< SCB CACR: FORCEWT Mask */ + +#define SCB_CACR_ECCEN_Pos 1U /*!< SCB CACR: ECCEN Position */ +#define SCB_CACR_ECCEN_Msk (1UL << SCB_CACR_ECCEN_Pos) /*!< SCB CACR: ECCEN Mask */ + +#define SCB_CACR_SIWT_Pos 0U /*!< SCB CACR: SIWT Position */ +#define SCB_CACR_SIWT_Msk (1UL /*<< SCB_CACR_SIWT_Pos*/) /*!< SCB CACR: SIWT Mask */ + +/* AHBS Control Register Definitions */ +#define SCB_AHBSCR_INITCOUNT_Pos 11U /*!< SCB AHBSCR: INITCOUNT Position */ +#define SCB_AHBSCR_INITCOUNT_Msk (0x1FUL << SCB_AHBPCR_INITCOUNT_Pos) /*!< SCB AHBSCR: INITCOUNT Mask */ + +#define SCB_AHBSCR_TPRI_Pos 2U /*!< SCB AHBSCR: TPRI Position */ +#define SCB_AHBSCR_TPRI_Msk (0x1FFUL << SCB_AHBPCR_TPRI_Pos) /*!< SCB AHBSCR: TPRI Mask */ + +#define SCB_AHBSCR_CTL_Pos 0U /*!< SCB AHBSCR: CTL Position*/ +#define SCB_AHBSCR_CTL_Msk (3UL /*<< SCB_AHBPCR_CTL_Pos*/) /*!< SCB AHBSCR: CTL Mask */ + +/* Auxiliary Bus Fault Status Register Definitions */ +#define SCB_ABFSR_AXIMTYPE_Pos 8U /*!< SCB ABFSR: AXIMTYPE Position*/ +#define SCB_ABFSR_AXIMTYPE_Msk (3UL << SCB_ABFSR_AXIMTYPE_Pos) /*!< SCB ABFSR: AXIMTYPE Mask */ + +#define SCB_ABFSR_EPPB_Pos 4U /*!< SCB ABFSR: EPPB Position*/ +#define SCB_ABFSR_EPPB_Msk (1UL << SCB_ABFSR_EPPB_Pos) /*!< SCB ABFSR: EPPB Mask */ + +#define SCB_ABFSR_AXIM_Pos 3U /*!< SCB ABFSR: AXIM Position*/ +#define SCB_ABFSR_AXIM_Msk (1UL << SCB_ABFSR_AXIM_Pos) /*!< SCB ABFSR: AXIM Mask */ + +#define SCB_ABFSR_AHBP_Pos 2U /*!< SCB ABFSR: AHBP Position*/ +#define SCB_ABFSR_AHBP_Msk (1UL << SCB_ABFSR_AHBP_Pos) /*!< SCB ABFSR: AHBP Mask */ + +#define SCB_ABFSR_DTCM_Pos 1U /*!< SCB ABFSR: DTCM Position*/ +#define SCB_ABFSR_DTCM_Msk (1UL << SCB_ABFSR_DTCM_Pos) /*!< SCB ABFSR: DTCM Mask */ + +#define SCB_ABFSR_ITCM_Pos 0U /*!< SCB ABFSR: ITCM Position*/ +#define SCB_ABFSR_ITCM_Msk (1UL /*<< SCB_ABFSR_ITCM_Pos*/) /*!< SCB ABFSR: ITCM Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) + \brief Type definitions for the System Control and ID Register not in the SCB + @{ + */ + +/** + \brief Structure type to access the System Control and ID Register not in the SCB. + */ +typedef struct +{ + uint32_t RESERVED0[1U]; + __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ + __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ + __IOM uint32_t CPPWR; /*!< Offset: 0x00C (R/W) Coprocessor Power Control Register */ +} SCnSCB_Type; + +/* Interrupt Controller Type Register Definitions */ +#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ +#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ + +/*@} end of group CMSIS_SCnotSCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) + \brief Type definitions for the Instrumentation Trace Macrocell (ITM) + @{ + */ + +/** + \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). + */ +typedef struct +{ + __OM union + { + __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ + __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ + __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ + } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ + uint32_t RESERVED0[864U]; + __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ + uint32_t RESERVED1[15U]; + __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ + uint32_t RESERVED2[15U]; + __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ + uint32_t RESERVED3[29U]; + __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ + __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ + __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ + uint32_t RESERVED4[43U]; + __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ + __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ + uint32_t RESERVED5[1U]; + __IM uint32_t DEVARCH; /*!< Offset: 0xFBC (R/ ) ITM Device Architecture Register */ + uint32_t RESERVED6[4U]; + __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ + __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ + __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ + __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ + __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ + __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ + __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ + __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ + __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ + __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ + __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ + __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ +} ITM_Type; + +/* ITM Stimulus Port Register Definitions */ +#define ITM_STIM_DISABLED_Pos 1U /*!< ITM STIM: DISABLED Position */ +#define ITM_STIM_DISABLED_Msk (0x1UL << ITM_STIM_DISABLED_Pos) /*!< ITM STIM: DISABLED Mask */ + +#define ITM_STIM_FIFOREADY_Pos 0U /*!< ITM STIM: FIFOREADY Position */ +#define ITM_STIM_FIFOREADY_Msk (0x1UL /*<< ITM_STIM_FIFOREADY_Pos*/) /*!< ITM STIM: FIFOREADY Mask */ + +/* ITM Trace Privilege Register Definitions */ +#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ +#define ITM_TPR_PRIVMASK_Msk (0xFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ + +/* ITM Trace Control Register Definitions */ +#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ +#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ + +#define ITM_TCR_TRACEBUSID_Pos 16U /*!< ITM TCR: ATBID Position */ +#define ITM_TCR_TRACEBUSID_Msk (0x7FUL << ITM_TCR_TRACEBUSID_Pos) /*!< ITM TCR: ATBID Mask */ + +#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ +#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ + +#define ITM_TCR_TSPRESCALE_Pos 8U /*!< ITM TCR: TSPRESCALE Position */ +#define ITM_TCR_TSPRESCALE_Msk (3UL << ITM_TCR_TSPRESCALE_Pos) /*!< ITM TCR: TSPRESCALE Mask */ + +#define ITM_TCR_STALLENA_Pos 5U /*!< ITM TCR: STALLENA Position */ +#define ITM_TCR_STALLENA_Msk (1UL << ITM_TCR_STALLENA_Pos) /*!< ITM TCR: STALLENA Mask */ + +#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ +#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ + +#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ +#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ + +#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ +#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ + +#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ +#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ + +#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ +#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ + +/* ITM Integration Write Register Definitions */ +#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ +#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ + +/* ITM Integration Read Register Definitions */ +#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ +#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ + +/* ITM Integration Mode Control Register Definitions */ +#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ +#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ + +/* ITM Lock Status Register Definitions */ +#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ +#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ + +#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ +#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ + +#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ +#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ + +/*@}*/ /* end of group CMSIS_ITM */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) + \brief Type definitions for the Data Watchpoint and Trace (DWT) + @{ + */ + +/** + \brief Structure type to access the Data Watchpoint and Trace Register (DWT). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ + __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ + __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ + __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ + __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ + __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ + __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ + __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ + __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ + uint32_t RESERVED1[1U]; + __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ + uint32_t RESERVED2[1U]; + __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ + uint32_t RESERVED3[1U]; + __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ + uint32_t RESERVED4[1U]; + __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ + uint32_t RESERVED5[1U]; + __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ + uint32_t RESERVED6[1U]; + __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ + uint32_t RESERVED7[1U]; + __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ + uint32_t RESERVED8[1U]; + __IOM uint32_t COMP4; /*!< Offset: 0x060 (R/W) Comparator Register 4 */ + uint32_t RESERVED9[1U]; + __IOM uint32_t FUNCTION4; /*!< Offset: 0x068 (R/W) Function Register 4 */ + uint32_t RESERVED10[1U]; + __IOM uint32_t COMP5; /*!< Offset: 0x070 (R/W) Comparator Register 5 */ + uint32_t RESERVED11[1U]; + __IOM uint32_t FUNCTION5; /*!< Offset: 0x078 (R/W) Function Register 5 */ + uint32_t RESERVED12[1U]; + __IOM uint32_t COMP6; /*!< Offset: 0x080 (R/W) Comparator Register 6 */ + uint32_t RESERVED13[1U]; + __IOM uint32_t FUNCTION6; /*!< Offset: 0x088 (R/W) Function Register 6 */ + uint32_t RESERVED14[1U]; + __IOM uint32_t COMP7; /*!< Offset: 0x090 (R/W) Comparator Register 7 */ + uint32_t RESERVED15[1U]; + __IOM uint32_t FUNCTION7; /*!< Offset: 0x098 (R/W) Function Register 7 */ + uint32_t RESERVED16[1U]; + __IOM uint32_t COMP8; /*!< Offset: 0x0A0 (R/W) Comparator Register 8 */ + uint32_t RESERVED17[1U]; + __IOM uint32_t FUNCTION8; /*!< Offset: 0x0A8 (R/W) Function Register 8 */ + uint32_t RESERVED18[1U]; + __IOM uint32_t COMP9; /*!< Offset: 0x0B0 (R/W) Comparator Register 9 */ + uint32_t RESERVED19[1U]; + __IOM uint32_t FUNCTION9; /*!< Offset: 0x0B8 (R/W) Function Register 9 */ + uint32_t RESERVED20[1U]; + __IOM uint32_t COMP10; /*!< Offset: 0x0C0 (R/W) Comparator Register 10 */ + uint32_t RESERVED21[1U]; + __IOM uint32_t FUNCTION10; /*!< Offset: 0x0C8 (R/W) Function Register 10 */ + uint32_t RESERVED22[1U]; + __IOM uint32_t COMP11; /*!< Offset: 0x0D0 (R/W) Comparator Register 11 */ + uint32_t RESERVED23[1U]; + __IOM uint32_t FUNCTION11; /*!< Offset: 0x0D8 (R/W) Function Register 11 */ + uint32_t RESERVED24[1U]; + __IOM uint32_t COMP12; /*!< Offset: 0x0E0 (R/W) Comparator Register 12 */ + uint32_t RESERVED25[1U]; + __IOM uint32_t FUNCTION12; /*!< Offset: 0x0E8 (R/W) Function Register 12 */ + uint32_t RESERVED26[1U]; + __IOM uint32_t COMP13; /*!< Offset: 0x0F0 (R/W) Comparator Register 13 */ + uint32_t RESERVED27[1U]; + __IOM uint32_t FUNCTION13; /*!< Offset: 0x0F8 (R/W) Function Register 13 */ + uint32_t RESERVED28[1U]; + __IOM uint32_t COMP14; /*!< Offset: 0x100 (R/W) Comparator Register 14 */ + uint32_t RESERVED29[1U]; + __IOM uint32_t FUNCTION14; /*!< Offset: 0x108 (R/W) Function Register 14 */ + uint32_t RESERVED30[1U]; + __IOM uint32_t COMP15; /*!< Offset: 0x110 (R/W) Comparator Register 15 */ + uint32_t RESERVED31[1U]; + __IOM uint32_t FUNCTION15; /*!< Offset: 0x118 (R/W) Function Register 15 */ + uint32_t RESERVED32[934U]; + __IM uint32_t LSR; /*!< Offset: 0xFB4 (R ) Lock Status Register */ + uint32_t RESERVED33[1U]; + __IM uint32_t DEVARCH; /*!< Offset: 0xFBC (R/ ) Device Architecture Register */ +} DWT_Type; + +/* DWT Control Register Definitions */ +#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ +#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ + +#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ +#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ + +#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ +#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ + +#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ +#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ + +#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ +#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ + +#define DWT_CTRL_CYCDISS_Pos 23U /*!< DWT CTRL: CYCDISS Position */ +#define DWT_CTRL_CYCDISS_Msk (0x1UL << DWT_CTRL_CYCDISS_Pos) /*!< DWT CTRL: CYCDISS Mask */ + +#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ +#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ + +#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ +#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ + +#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ +#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ + +#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ +#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ + +#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ +#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ + +#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ +#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ + +#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ +#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ + +#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ +#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ + +#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ +#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ + +#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ +#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ + +#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ +#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ + +#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ +#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ + +#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ +#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ + +/* DWT CPI Count Register Definitions */ +#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ +#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ + +/* DWT Exception Overhead Count Register Definitions */ +#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ +#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ + +/* DWT Sleep Count Register Definitions */ +#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ +#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ + +/* DWT LSU Count Register Definitions */ +#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ +#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ + +/* DWT Folded-instruction Count Register Definitions */ +#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ +#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ + +/* DWT Comparator Function Register Definitions */ +#define DWT_FUNCTION_ID_Pos 27U /*!< DWT FUNCTION: ID Position */ +#define DWT_FUNCTION_ID_Msk (0x1FUL << DWT_FUNCTION_ID_Pos) /*!< DWT FUNCTION: ID Mask */ + +#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ +#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ + +#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ +#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ + +#define DWT_FUNCTION_ACTION_Pos 4U /*!< DWT FUNCTION: ACTION Position */ +#define DWT_FUNCTION_ACTION_Msk (0x1UL << DWT_FUNCTION_ACTION_Pos) /*!< DWT FUNCTION: ACTION Mask */ + +#define DWT_FUNCTION_MATCH_Pos 0U /*!< DWT FUNCTION: MATCH Position */ +#define DWT_FUNCTION_MATCH_Msk (0xFUL /*<< DWT_FUNCTION_MATCH_Pos*/) /*!< DWT FUNCTION: MATCH Mask */ + +/*@}*/ /* end of group CMSIS_DWT */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_TPI Trace Port Interface (TPI) + \brief Type definitions for the Trace Port Interface (TPI) + @{ + */ + +/** + \brief Structure type to access the Trace Port Interface Register (TPI). + */ +typedef struct +{ + __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Sizes Register */ + __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Sizes Register */ + uint32_t RESERVED0[2U]; + __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ + uint32_t RESERVED1[55U]; + __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ + uint32_t RESERVED2[131U]; + __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ + __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ + __IOM uint32_t PSCR; /*!< Offset: 0x308 (R/W) Periodic Synchronization Control Register */ + uint32_t RESERVED3[809U]; + __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) Software Lock Access Register */ + __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) Software Lock Status Register */ + uint32_t RESERVED4[4U]; + __IM uint32_t TYPE; /*!< Offset: 0xFC8 (R/ ) Device Identifier Register */ + __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) Device Type Register */ +} TPI_Type; + +/* TPI Asynchronous Clock Prescaler Register Definitions */ +#define TPI_ACPR_SWOSCALER_Pos 0U /*!< TPI ACPR: SWOSCALER Position */ +#define TPI_ACPR_SWOSCALER_Msk (0xFFFFUL /*<< TPI_ACPR_SWOSCALER_Pos*/) /*!< TPI ACPR: SWOSCALER Mask */ + +/* TPI Selected Pin Protocol Register Definitions */ +#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ +#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ + +/* TPI Formatter and Flush Status Register Definitions */ +#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ +#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ + +#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ +#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ + +#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ +#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ + +#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ +#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ + +/* TPI Formatter and Flush Control Register Definitions */ +#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ +#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ + +#define TPI_FFCR_FOnMan_Pos 6U /*!< TPI FFCR: FOnMan Position */ +#define TPI_FFCR_FOnMan_Msk (0x1UL << TPI_FFCR_FOnMan_Pos) /*!< TPI FFCR: FOnMan Mask */ + +#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ +#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ + +/* TPI Periodic Synchronization Control Register Definitions */ +#define TPI_PSCR_PSCount_Pos 0U /*!< TPI PSCR: PSCount Position */ +#define TPI_PSCR_PSCount_Msk (0x1FUL /*<< TPI_PSCR_PSCount_Pos*/) /*!< TPI PSCR: TPSCount Mask */ + +/* TPI Software Lock Status Register Definitions */ +#define TPI_LSR_nTT_Pos 1U /*!< TPI LSR: Not thirty-two bit. Position */ +#define TPI_LSR_nTT_Msk (0x1UL << TPI_LSR_nTT_Pos) /*!< TPI LSR: Not thirty-two bit. Mask */ + +#define TPI_LSR_SLK_Pos 1U /*!< TPI LSR: Software Lock status Position */ +#define TPI_LSR_SLK_Msk (0x1UL << TPI_LSR_SLK_Pos) /*!< TPI LSR: Software Lock status Mask */ + +#define TPI_LSR_SLI_Pos 0U /*!< TPI LSR: Software Lock implemented Position */ +#define TPI_LSR_SLI_Msk (0x1UL /*<< TPI_LSR_SLI_Pos*/) /*!< TPI LSR: Software Lock implemented Mask */ + +/* TPI DEVID Register Definitions */ +#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ +#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ + +#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ +#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ + +#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ +#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ + +#define TPI_DEVID_FIFOSZ_Pos 6U /*!< TPI DEVID: FIFO depth Position */ +#define TPI_DEVID_FIFOSZ_Msk (0x7UL << TPI_DEVID_FIFOSZ_Pos) /*!< TPI DEVID: FIFO depth Mask */ + +/* TPI DEVTYPE Register Definitions */ +#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ +#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ + +#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ +#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ + +/*@}*/ /* end of group CMSIS_TPI */ + + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_MPU Memory Protection Unit (MPU) + \brief Type definitions for the Memory Protection Unit (MPU) + @{ + */ + +/** + \brief Structure type to access the Memory Protection Unit (MPU). + */ +typedef struct +{ + __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ + __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region Number Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ + __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) MPU Region Limit Address Register */ + __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Region Base Address Register Alias 1 */ + __IOM uint32_t RLAR_A1; /*!< Offset: 0x018 (R/W) MPU Region Limit Address Register Alias 1 */ + __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Region Base Address Register Alias 2 */ + __IOM uint32_t RLAR_A2; /*!< Offset: 0x020 (R/W) MPU Region Limit Address Register Alias 2 */ + __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Region Base Address Register Alias 3 */ + __IOM uint32_t RLAR_A3; /*!< Offset: 0x028 (R/W) MPU Region Limit Address Register Alias 3 */ + uint32_t RESERVED0[1]; + union { + __IOM uint32_t MAIR[2]; + struct { + __IOM uint32_t MAIR0; /*!< Offset: 0x030 (R/W) MPU Memory Attribute Indirection Register 0 */ + __IOM uint32_t MAIR1; /*!< Offset: 0x034 (R/W) MPU Memory Attribute Indirection Register 1 */ + }; + }; +} MPU_Type; + +#define MPU_TYPE_RALIASES 4U + +/* MPU Type Register Definitions */ +#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ +#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ + +#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ +#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ + +#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ +#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ + +/* MPU Control Register Definitions */ +#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ +#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ + +#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ +#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ + +#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ +#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ + +/* MPU Region Number Register Definitions */ +#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ +#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ + +/* MPU Region Base Address Register Definitions */ +#define MPU_RBAR_BASE_Pos 5U /*!< MPU RBAR: BASE Position */ +#define MPU_RBAR_BASE_Msk (0x7FFFFFFUL << MPU_RBAR_BASE_Pos) /*!< MPU RBAR: BASE Mask */ + +#define MPU_RBAR_SH_Pos 3U /*!< MPU RBAR: SH Position */ +#define MPU_RBAR_SH_Msk (0x3UL << MPU_RBAR_SH_Pos) /*!< MPU RBAR: SH Mask */ + +#define MPU_RBAR_AP_Pos 1U /*!< MPU RBAR: AP Position */ +#define MPU_RBAR_AP_Msk (0x3UL << MPU_RBAR_AP_Pos) /*!< MPU RBAR: AP Mask */ + +#define MPU_RBAR_XN_Pos 0U /*!< MPU RBAR: XN Position */ +#define MPU_RBAR_XN_Msk (01UL /*<< MPU_RBAR_XN_Pos*/) /*!< MPU RBAR: XN Mask */ + +/* MPU Region Limit Address Register Definitions */ +#define MPU_RLAR_LIMIT_Pos 5U /*!< MPU RLAR: LIMIT Position */ +#define MPU_RLAR_LIMIT_Msk (0x7FFFFFFUL << MPU_RLAR_LIMIT_Pos) /*!< MPU RLAR: LIMIT Mask */ + +#define MPU_RLAR_AttrIndx_Pos 1U /*!< MPU RLAR: AttrIndx Position */ +#define MPU_RLAR_AttrIndx_Msk (0x7UL << MPU_RLAR_AttrIndx_Pos) /*!< MPU RLAR: AttrIndx Mask */ + +#define MPU_RLAR_EN_Pos 0U /*!< MPU RLAR: Region enable bit Position */ +#define MPU_RLAR_EN_Msk (1UL /*<< MPU_RLAR_EN_Pos*/) /*!< MPU RLAR: Region enable bit Disable Mask */ + +/* MPU Memory Attribute Indirection Register 0 Definitions */ +#define MPU_MAIR0_Attr3_Pos 24U /*!< MPU MAIR0: Attr3 Position */ +#define MPU_MAIR0_Attr3_Msk (0xFFUL << MPU_MAIR0_Attr3_Pos) /*!< MPU MAIR0: Attr3 Mask */ + +#define MPU_MAIR0_Attr2_Pos 16U /*!< MPU MAIR0: Attr2 Position */ +#define MPU_MAIR0_Attr2_Msk (0xFFUL << MPU_MAIR0_Attr2_Pos) /*!< MPU MAIR0: Attr2 Mask */ + +#define MPU_MAIR0_Attr1_Pos 8U /*!< MPU MAIR0: Attr1 Position */ +#define MPU_MAIR0_Attr1_Msk (0xFFUL << MPU_MAIR0_Attr1_Pos) /*!< MPU MAIR0: Attr1 Mask */ + +#define MPU_MAIR0_Attr0_Pos 0U /*!< MPU MAIR0: Attr0 Position */ +#define MPU_MAIR0_Attr0_Msk (0xFFUL /*<< MPU_MAIR0_Attr0_Pos*/) /*!< MPU MAIR0: Attr0 Mask */ + +/* MPU Memory Attribute Indirection Register 1 Definitions */ +#define MPU_MAIR1_Attr7_Pos 24U /*!< MPU MAIR1: Attr7 Position */ +#define MPU_MAIR1_Attr7_Msk (0xFFUL << MPU_MAIR1_Attr7_Pos) /*!< MPU MAIR1: Attr7 Mask */ + +#define MPU_MAIR1_Attr6_Pos 16U /*!< MPU MAIR1: Attr6 Position */ +#define MPU_MAIR1_Attr6_Msk (0xFFUL << MPU_MAIR1_Attr6_Pos) /*!< MPU MAIR1: Attr6 Mask */ + +#define MPU_MAIR1_Attr5_Pos 8U /*!< MPU MAIR1: Attr5 Position */ +#define MPU_MAIR1_Attr5_Msk (0xFFUL << MPU_MAIR1_Attr5_Pos) /*!< MPU MAIR1: Attr5 Mask */ + +#define MPU_MAIR1_Attr4_Pos 0U /*!< MPU MAIR1: Attr4 Position */ +#define MPU_MAIR1_Attr4_Msk (0xFFUL /*<< MPU_MAIR1_Attr4_Pos*/) /*!< MPU MAIR1: Attr4 Mask */ + +/*@} end of group CMSIS_MPU */ +#endif + + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SAU Security Attribution Unit (SAU) + \brief Type definitions for the Security Attribution Unit (SAU) + @{ + */ + +/** + \brief Structure type to access the Security Attribution Unit (SAU). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SAU Control Register */ + __IM uint32_t TYPE; /*!< Offset: 0x004 (R/ ) SAU Type Register */ +#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) SAU Region Number Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) SAU Region Base Address Register */ + __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) SAU Region Limit Address Register */ +#else + uint32_t RESERVED0[3]; +#endif + __IOM uint32_t SFSR; /*!< Offset: 0x014 (R/W) Secure Fault Status Register */ + __IOM uint32_t SFAR; /*!< Offset: 0x018 (R/W) Secure Fault Address Register */ +} SAU_Type; + +/* SAU Control Register Definitions */ +#define SAU_CTRL_ALLNS_Pos 1U /*!< SAU CTRL: ALLNS Position */ +#define SAU_CTRL_ALLNS_Msk (1UL << SAU_CTRL_ALLNS_Pos) /*!< SAU CTRL: ALLNS Mask */ + +#define SAU_CTRL_ENABLE_Pos 0U /*!< SAU CTRL: ENABLE Position */ +#define SAU_CTRL_ENABLE_Msk (1UL /*<< SAU_CTRL_ENABLE_Pos*/) /*!< SAU CTRL: ENABLE Mask */ + +/* SAU Type Register Definitions */ +#define SAU_TYPE_SREGION_Pos 0U /*!< SAU TYPE: SREGION Position */ +#define SAU_TYPE_SREGION_Msk (0xFFUL /*<< SAU_TYPE_SREGION_Pos*/) /*!< SAU TYPE: SREGION Mask */ + +#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) +/* SAU Region Number Register Definitions */ +#define SAU_RNR_REGION_Pos 0U /*!< SAU RNR: REGION Position */ +#define SAU_RNR_REGION_Msk (0xFFUL /*<< SAU_RNR_REGION_Pos*/) /*!< SAU RNR: REGION Mask */ + +/* SAU Region Base Address Register Definitions */ +#define SAU_RBAR_BADDR_Pos 5U /*!< SAU RBAR: BADDR Position */ +#define SAU_RBAR_BADDR_Msk (0x7FFFFFFUL << SAU_RBAR_BADDR_Pos) /*!< SAU RBAR: BADDR Mask */ + +/* SAU Region Limit Address Register Definitions */ +#define SAU_RLAR_LADDR_Pos 5U /*!< SAU RLAR: LADDR Position */ +#define SAU_RLAR_LADDR_Msk (0x7FFFFFFUL << SAU_RLAR_LADDR_Pos) /*!< SAU RLAR: LADDR Mask */ + +#define SAU_RLAR_NSC_Pos 1U /*!< SAU RLAR: NSC Position */ +#define SAU_RLAR_NSC_Msk (1UL << SAU_RLAR_NSC_Pos) /*!< SAU RLAR: NSC Mask */ + +#define SAU_RLAR_ENABLE_Pos 0U /*!< SAU RLAR: ENABLE Position */ +#define SAU_RLAR_ENABLE_Msk (1UL /*<< SAU_RLAR_ENABLE_Pos*/) /*!< SAU RLAR: ENABLE Mask */ + +#endif /* defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) */ + +/* Secure Fault Status Register Definitions */ +#define SAU_SFSR_LSERR_Pos 7U /*!< SAU SFSR: LSERR Position */ +#define SAU_SFSR_LSERR_Msk (1UL << SAU_SFSR_LSERR_Pos) /*!< SAU SFSR: LSERR Mask */ + +#define SAU_SFSR_SFARVALID_Pos 6U /*!< SAU SFSR: SFARVALID Position */ +#define SAU_SFSR_SFARVALID_Msk (1UL << SAU_SFSR_SFARVALID_Pos) /*!< SAU SFSR: SFARVALID Mask */ + +#define SAU_SFSR_LSPERR_Pos 5U /*!< SAU SFSR: LSPERR Position */ +#define SAU_SFSR_LSPERR_Msk (1UL << SAU_SFSR_LSPERR_Pos) /*!< SAU SFSR: LSPERR Mask */ + +#define SAU_SFSR_INVTRAN_Pos 4U /*!< SAU SFSR: INVTRAN Position */ +#define SAU_SFSR_INVTRAN_Msk (1UL << SAU_SFSR_INVTRAN_Pos) /*!< SAU SFSR: INVTRAN Mask */ + +#define SAU_SFSR_AUVIOL_Pos 3U /*!< SAU SFSR: AUVIOL Position */ +#define SAU_SFSR_AUVIOL_Msk (1UL << SAU_SFSR_AUVIOL_Pos) /*!< SAU SFSR: AUVIOL Mask */ + +#define SAU_SFSR_INVER_Pos 2U /*!< SAU SFSR: INVER Position */ +#define SAU_SFSR_INVER_Msk (1UL << SAU_SFSR_INVER_Pos) /*!< SAU SFSR: INVER Mask */ + +#define SAU_SFSR_INVIS_Pos 1U /*!< SAU SFSR: INVIS Position */ +#define SAU_SFSR_INVIS_Msk (1UL << SAU_SFSR_INVIS_Pos) /*!< SAU SFSR: INVIS Mask */ + +#define SAU_SFSR_INVEP_Pos 0U /*!< SAU SFSR: INVEP Position */ +#define SAU_SFSR_INVEP_Msk (1UL /*<< SAU_SFSR_INVEP_Pos*/) /*!< SAU SFSR: INVEP Mask */ + +/*@} end of group CMSIS_SAU */ +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_FPU Floating Point Unit (FPU) + \brief Type definitions for the Floating Point Unit (FPU) + @{ + */ + +/** + \brief Structure type to access the Floating Point Unit (FPU). + */ +typedef struct +{ + uint32_t RESERVED0[1U]; + __IOM uint32_t FPCCR; /*!< Offset: 0x004 (R/W) Floating-Point Context Control Register */ + __IOM uint32_t FPCAR; /*!< Offset: 0x008 (R/W) Floating-Point Context Address Register */ + __IOM uint32_t FPDSCR; /*!< Offset: 0x00C (R/W) Floating-Point Default Status Control Register */ + __IM uint32_t MVFR0; /*!< Offset: 0x010 (R/ ) Media and FP Feature Register 0 */ + __IM uint32_t MVFR1; /*!< Offset: 0x014 (R/ ) Media and FP Feature Register 1 */ +} FPU_Type; + +/* Floating-Point Context Control Register Definitions */ +#define FPU_FPCCR_ASPEN_Pos 31U /*!< FPCCR: ASPEN bit Position */ +#define FPU_FPCCR_ASPEN_Msk (1UL << FPU_FPCCR_ASPEN_Pos) /*!< FPCCR: ASPEN bit Mask */ + +#define FPU_FPCCR_LSPEN_Pos 30U /*!< FPCCR: LSPEN Position */ +#define FPU_FPCCR_LSPEN_Msk (1UL << FPU_FPCCR_LSPEN_Pos) /*!< FPCCR: LSPEN bit Mask */ + +#define FPU_FPCCR_LSPENS_Pos 29U /*!< FPCCR: LSPENS Position */ +#define FPU_FPCCR_LSPENS_Msk (1UL << FPU_FPCCR_LSPENS_Pos) /*!< FPCCR: LSPENS bit Mask */ + +#define FPU_FPCCR_CLRONRET_Pos 28U /*!< FPCCR: CLRONRET Position */ +#define FPU_FPCCR_CLRONRET_Msk (1UL << FPU_FPCCR_CLRONRET_Pos) /*!< FPCCR: CLRONRET bit Mask */ + +#define FPU_FPCCR_CLRONRETS_Pos 27U /*!< FPCCR: CLRONRETS Position */ +#define FPU_FPCCR_CLRONRETS_Msk (1UL << FPU_FPCCR_CLRONRETS_Pos) /*!< FPCCR: CLRONRETS bit Mask */ + +#define FPU_FPCCR_TS_Pos 26U /*!< FPCCR: TS Position */ +#define FPU_FPCCR_TS_Msk (1UL << FPU_FPCCR_TS_Pos) /*!< FPCCR: TS bit Mask */ + +#define FPU_FPCCR_UFRDY_Pos 10U /*!< FPCCR: UFRDY Position */ +#define FPU_FPCCR_UFRDY_Msk (1UL << FPU_FPCCR_UFRDY_Pos) /*!< FPCCR: UFRDY bit Mask */ + +#define FPU_FPCCR_SPLIMVIOL_Pos 9U /*!< FPCCR: SPLIMVIOL Position */ +#define FPU_FPCCR_SPLIMVIOL_Msk (1UL << FPU_FPCCR_SPLIMVIOL_Pos) /*!< FPCCR: SPLIMVIOL bit Mask */ + +#define FPU_FPCCR_MONRDY_Pos 8U /*!< FPCCR: MONRDY Position */ +#define FPU_FPCCR_MONRDY_Msk (1UL << FPU_FPCCR_MONRDY_Pos) /*!< FPCCR: MONRDY bit Mask */ + +#define FPU_FPCCR_SFRDY_Pos 7U /*!< FPCCR: SFRDY Position */ +#define FPU_FPCCR_SFRDY_Msk (1UL << FPU_FPCCR_SFRDY_Pos) /*!< FPCCR: SFRDY bit Mask */ + +#define FPU_FPCCR_BFRDY_Pos 6U /*!< FPCCR: BFRDY Position */ +#define FPU_FPCCR_BFRDY_Msk (1UL << FPU_FPCCR_BFRDY_Pos) /*!< FPCCR: BFRDY bit Mask */ + +#define FPU_FPCCR_MMRDY_Pos 5U /*!< FPCCR: MMRDY Position */ +#define FPU_FPCCR_MMRDY_Msk (1UL << FPU_FPCCR_MMRDY_Pos) /*!< FPCCR: MMRDY bit Mask */ + +#define FPU_FPCCR_HFRDY_Pos 4U /*!< FPCCR: HFRDY Position */ +#define FPU_FPCCR_HFRDY_Msk (1UL << FPU_FPCCR_HFRDY_Pos) /*!< FPCCR: HFRDY bit Mask */ + +#define FPU_FPCCR_THREAD_Pos 3U /*!< FPCCR: processor mode bit Position */ +#define FPU_FPCCR_THREAD_Msk (1UL << FPU_FPCCR_THREAD_Pos) /*!< FPCCR: processor mode active bit Mask */ + +#define FPU_FPCCR_S_Pos 2U /*!< FPCCR: Security status of the FP context bit Position */ +#define FPU_FPCCR_S_Msk (1UL << FPU_FPCCR_S_Pos) /*!< FPCCR: Security status of the FP context bit Mask */ + +#define FPU_FPCCR_USER_Pos 1U /*!< FPCCR: privilege level bit Position */ +#define FPU_FPCCR_USER_Msk (1UL << FPU_FPCCR_USER_Pos) /*!< FPCCR: privilege level bit Mask */ + +#define FPU_FPCCR_LSPACT_Pos 0U /*!< FPCCR: Lazy state preservation active bit Position */ +#define FPU_FPCCR_LSPACT_Msk (1UL /*<< FPU_FPCCR_LSPACT_Pos*/) /*!< FPCCR: Lazy state preservation active bit Mask */ + +/* Floating-Point Context Address Register Definitions */ +#define FPU_FPCAR_ADDRESS_Pos 3U /*!< FPCAR: ADDRESS bit Position */ +#define FPU_FPCAR_ADDRESS_Msk (0x1FFFFFFFUL << FPU_FPCAR_ADDRESS_Pos) /*!< FPCAR: ADDRESS bit Mask */ + +/* Floating-Point Default Status Control Register Definitions */ +#define FPU_FPDSCR_AHP_Pos 26U /*!< FPDSCR: AHP bit Position */ +#define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos) /*!< FPDSCR: AHP bit Mask */ + +#define FPU_FPDSCR_DN_Pos 25U /*!< FPDSCR: DN bit Position */ +#define FPU_FPDSCR_DN_Msk (1UL << FPU_FPDSCR_DN_Pos) /*!< FPDSCR: DN bit Mask */ + +#define FPU_FPDSCR_FZ_Pos 24U /*!< FPDSCR: FZ bit Position */ +#define FPU_FPDSCR_FZ_Msk (1UL << FPU_FPDSCR_FZ_Pos) /*!< FPDSCR: FZ bit Mask */ + +#define FPU_FPDSCR_RMode_Pos 22U /*!< FPDSCR: RMode bit Position */ +#define FPU_FPDSCR_RMode_Msk (3UL << FPU_FPDSCR_RMode_Pos) /*!< FPDSCR: RMode bit Mask */ + +/* Media and FP Feature Register 0 Definitions */ +#define FPU_MVFR0_FP_rounding_modes_Pos 28U /*!< MVFR0: FP rounding modes bits Position */ +#define FPU_MVFR0_FP_rounding_modes_Msk (0xFUL << FPU_MVFR0_FP_rounding_modes_Pos) /*!< MVFR0: FP rounding modes bits Mask */ + +#define FPU_MVFR0_Short_vectors_Pos 24U /*!< MVFR0: Short vectors bits Position */ +#define FPU_MVFR0_Short_vectors_Msk (0xFUL << FPU_MVFR0_Short_vectors_Pos) /*!< MVFR0: Short vectors bits Mask */ + +#define FPU_MVFR0_Square_root_Pos 20U /*!< MVFR0: Square root bits Position */ +#define FPU_MVFR0_Square_root_Msk (0xFUL << FPU_MVFR0_Square_root_Pos) /*!< MVFR0: Square root bits Mask */ + +#define FPU_MVFR0_Divide_Pos 16U /*!< MVFR0: Divide bits Position */ +#define FPU_MVFR0_Divide_Msk (0xFUL << FPU_MVFR0_Divide_Pos) /*!< MVFR0: Divide bits Mask */ + +#define FPU_MVFR0_FP_excep_trapping_Pos 12U /*!< MVFR0: FP exception trapping bits Position */ +#define FPU_MVFR0_FP_excep_trapping_Msk (0xFUL << FPU_MVFR0_FP_excep_trapping_Pos) /*!< MVFR0: FP exception trapping bits Mask */ + +#define FPU_MVFR0_Double_precision_Pos 8U /*!< MVFR0: Double-precision bits Position */ +#define FPU_MVFR0_Double_precision_Msk (0xFUL << FPU_MVFR0_Double_precision_Pos) /*!< MVFR0: Double-precision bits Mask */ + +#define FPU_MVFR0_Single_precision_Pos 4U /*!< MVFR0: Single-precision bits Position */ +#define FPU_MVFR0_Single_precision_Msk (0xFUL << FPU_MVFR0_Single_precision_Pos) /*!< MVFR0: Single-precision bits Mask */ + +#define FPU_MVFR0_A_SIMD_registers_Pos 0U /*!< MVFR0: A_SIMD registers bits Position */ +#define FPU_MVFR0_A_SIMD_registers_Msk (0xFUL /*<< FPU_MVFR0_A_SIMD_registers_Pos*/) /*!< MVFR0: A_SIMD registers bits Mask */ + +/* Media and FP Feature Register 1 Definitions */ +#define FPU_MVFR1_FP_fused_MAC_Pos 28U /*!< MVFR1: FP fused MAC bits Position */ +#define FPU_MVFR1_FP_fused_MAC_Msk (0xFUL << FPU_MVFR1_FP_fused_MAC_Pos) /*!< MVFR1: FP fused MAC bits Mask */ + +#define FPU_MVFR1_FP_HPFP_Pos 24U /*!< MVFR1: FP HPFP bits Position */ +#define FPU_MVFR1_FP_HPFP_Msk (0xFUL << FPU_MVFR1_FP_HPFP_Pos) /*!< MVFR1: FP HPFP bits Mask */ + +#define FPU_MVFR1_D_NaN_mode_Pos 4U /*!< MVFR1: D_NaN mode bits Position */ +#define FPU_MVFR1_D_NaN_mode_Msk (0xFUL << FPU_MVFR1_D_NaN_mode_Pos) /*!< MVFR1: D_NaN mode bits Mask */ + +#define FPU_MVFR1_FtZ_mode_Pos 0U /*!< MVFR1: FtZ mode bits Position */ +#define FPU_MVFR1_FtZ_mode_Msk (0xFUL /*<< FPU_MVFR1_FtZ_mode_Pos*/) /*!< MVFR1: FtZ mode bits Mask */ + +/*@} end of group CMSIS_FPU */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief Type definitions for the Core Debug Registers + @{ + */ + +/** + \brief Structure type to access the Core Debug Register (CoreDebug). + */ +typedef struct +{ + __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ + __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ + __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ + __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ + uint32_t RESERVED4[1U]; + __IOM uint32_t DAUTHCTRL; /*!< Offset: 0x014 (R/W) Debug Authentication Control Register */ + __IOM uint32_t DSCSR; /*!< Offset: 0x018 (R/W) Debug Security Control and Status Register */ +} CoreDebug_Type; + +/* Debug Halting Control and Status Register Definitions */ +#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ +#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ + +#define CoreDebug_DHCSR_S_RESTART_ST_Pos 26U /*!< CoreDebug DHCSR: S_RESTART_ST Position */ +#define CoreDebug_DHCSR_S_RESTART_ST_Msk (1UL << CoreDebug_DHCSR_S_RESTART_ST_Pos) /*!< CoreDebug DHCSR: S_RESTART_ST Mask */ + +#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ +#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ + +#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ +#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ + +#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ +#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ + +#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ +#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ + +#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ +#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ + +#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ +#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ + +#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ +#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ + +#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ +#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ + +#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ +#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ + +#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ +#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ + +#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ +#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ + +/* Debug Core Register Selector Register Definitions */ +#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ +#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ + +#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ +#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ + +/* Debug Exception and Monitor Control Register Definitions */ +#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ +#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ + +#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ +#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ + +#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ +#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ + +#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ +#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ + +#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ +#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ + +#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ +#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ + +#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ +#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ + +#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ +#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ + +#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ +#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ + +#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ +#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ + +#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ +#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ + +#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ +#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ + +#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ +#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ + +/* Debug Authentication Control Register Definitions */ +#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos 3U /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Position */ +#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Mask */ + +#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos 2U /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Position */ +#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Msk (1UL << CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos) /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Mask */ + +#define CoreDebug_DAUTHCTRL_INTSPIDEN_Pos 1U /*!< CoreDebug DAUTHCTRL: INTSPIDEN Position */ +#define CoreDebug_DAUTHCTRL_INTSPIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPIDEN Mask */ + +#define CoreDebug_DAUTHCTRL_SPIDENSEL_Pos 0U /*!< CoreDebug DAUTHCTRL: SPIDENSEL Position */ +#define CoreDebug_DAUTHCTRL_SPIDENSEL_Msk (1UL /*<< CoreDebug_DAUTHCTRL_SPIDENSEL_Pos*/) /*!< CoreDebug DAUTHCTRL: SPIDENSEL Mask */ + +/* Debug Security Control and Status Register Definitions */ +#define CoreDebug_DSCSR_CDS_Pos 16U /*!< CoreDebug DSCSR: CDS Position */ +#define CoreDebug_DSCSR_CDS_Msk (1UL << CoreDebug_DSCSR_CDS_Pos) /*!< CoreDebug DSCSR: CDS Mask */ + +#define CoreDebug_DSCSR_SBRSEL_Pos 1U /*!< CoreDebug DSCSR: SBRSEL Position */ +#define CoreDebug_DSCSR_SBRSEL_Msk (1UL << CoreDebug_DSCSR_SBRSEL_Pos) /*!< CoreDebug DSCSR: SBRSEL Mask */ + +#define CoreDebug_DSCSR_SBRSELEN_Pos 0U /*!< CoreDebug DSCSR: SBRSELEN Position */ +#define CoreDebug_DSCSR_SBRSELEN_Msk (1UL /*<< CoreDebug_DSCSR_SBRSELEN_Pos*/) /*!< CoreDebug DSCSR: SBRSELEN Mask */ + +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ + #define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ + #define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ + #define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ + #define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ + #define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ + #define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ + #define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ + #define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + + #define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ + #define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ + #define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ + #define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ + #define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ + #define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ + #define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ + #define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE ) /*!< Core Debug configuration struct */ + + #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ + #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ + #endif + + #if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + #define SAU_BASE (SCS_BASE + 0x0DD0UL) /*!< Security Attribution Unit */ + #define SAU ((SAU_Type *) SAU_BASE ) /*!< Security Attribution Unit */ + #endif + + #define FPU_BASE (SCS_BASE + 0x0F30UL) /*!< Floating Point Unit */ + #define FPU ((FPU_Type *) FPU_BASE ) /*!< Floating Point Unit */ + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + #define SCS_BASE_NS (0xE002E000UL) /*!< System Control Space Base Address (non-secure address space) */ + #define CoreDebug_BASE_NS (0xE002EDF0UL) /*!< Core Debug Base Address (non-secure address space) */ + #define SysTick_BASE_NS (SCS_BASE_NS + 0x0010UL) /*!< SysTick Base Address (non-secure address space) */ + #define NVIC_BASE_NS (SCS_BASE_NS + 0x0100UL) /*!< NVIC Base Address (non-secure address space) */ + #define SCB_BASE_NS (SCS_BASE_NS + 0x0D00UL) /*!< System Control Block Base Address (non-secure address space) */ + + #define SCnSCB_NS ((SCnSCB_Type *) SCS_BASE_NS ) /*!< System control Register not in SCB(non-secure address space) */ + #define SCB_NS ((SCB_Type *) SCB_BASE_NS ) /*!< SCB configuration struct (non-secure address space) */ + #define SysTick_NS ((SysTick_Type *) SysTick_BASE_NS ) /*!< SysTick configuration struct (non-secure address space) */ + #define NVIC_NS ((NVIC_Type *) NVIC_BASE_NS ) /*!< NVIC configuration struct (non-secure address space) */ + #define CoreDebug_NS ((CoreDebug_Type *) CoreDebug_BASE_NS) /*!< Core Debug configuration struct (non-secure address space) */ + + #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE_NS (SCS_BASE_NS + 0x0D90UL) /*!< Memory Protection Unit (non-secure address space) */ + #define MPU_NS ((MPU_Type *) MPU_BASE_NS ) /*!< Memory Protection Unit (non-secure address space) */ + #endif + + #define FPU_BASE_NS (SCS_BASE_NS + 0x0F30UL) /*!< Floating Point Unit (non-secure address space) */ + #define FPU_NS ((FPU_Type *) FPU_BASE_NS ) /*!< Floating Point Unit (non-secure address space) */ + +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Debug Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping + #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ + #define NVIC_GetActive __NVIC_GetActive + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* Special LR values for Secure/Non-Secure call handling and exception handling */ + +/* Function Return Payload (from ARMv8-M Architecture Reference Manual) LR value on entry from Secure BLXNS */ +#define FNC_RETURN (0xFEFFFFFFUL) /* bit [0] ignored when processing a branch */ + +/* The following EXC_RETURN mask values are used to evaluate the LR on exception entry */ +#define EXC_RETURN_PREFIX (0xFF000000UL) /* bits [31:24] set to indicate an EXC_RETURN value */ +#define EXC_RETURN_S (0x00000040UL) /* bit [6] stack used to push registers: 0=Non-secure 1=Secure */ +#define EXC_RETURN_DCRS (0x00000020UL) /* bit [5] stacking rules for called registers: 0=skipped 1=saved */ +#define EXC_RETURN_FTYPE (0x00000010UL) /* bit [4] allocate stack for floating-point context: 0=done 1=skipped */ +#define EXC_RETURN_MODE (0x00000008UL) /* bit [3] processor mode for return: 0=Handler mode 1=Thread mode */ +#define EXC_RETURN_SPSEL (0x00000002UL) /* bit [1] stack pointer used to restore context: 0=MSP 1=PSP */ +#define EXC_RETURN_ES (0x00000001UL) /* bit [0] security state exception was taken to: 0=Non-secure 1=Secure */ + +/* Integrity Signature (from ARMv8-M Architecture Reference Manual) for exception context stacking */ +#if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) /* Value for processors with floating-point extension: */ +#define EXC_INTEGRITY_SIGNATURE (0xFEFA125AUL) /* bit [0] SFTC must match LR bit[4] EXC_RETURN_FTYPE */ +#else +#define EXC_INTEGRITY_SIGNATURE (0xFEFA125BUL) /* Value for processors without floating-point extension */ +#endif + + +/** + \brief Set Priority Grouping + \details Sets the priority grouping field using the required unlock sequence. + The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. + Only values from 0..7 are used. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Priority grouping field. + */ +__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) +{ + uint32_t reg_value; + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + + reg_value = SCB->AIRCR; /* read old register configuration */ + reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ + reg_value = (reg_value | + ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (PriorityGroupTmp << 8U) ); /* Insert write key and priorty group */ + SCB->AIRCR = reg_value; +} + + +/** + \brief Get Priority Grouping + \details Reads the priority grouping field from the NVIC Interrupt Controller. + \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). + */ +__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) +{ + return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); +} + + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt + \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief Get Interrupt Target State + \details Reads the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + \return 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_GetTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Target State + \details Sets the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_SetTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] |= ((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Clear Interrupt Target State + \details Clears the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_ClearTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] &= ~((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IPR[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } + else + { + SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return(((uint32_t)NVIC->IPR[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return(((uint32_t)SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Encode Priority + \details Encodes the priority for an interrupt with the given priority group, + preemptive priority value, and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Used priority group. + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + ); +} + + +/** + \brief Decode Priority + \details Decodes an interrupt priority value with a given priority group to + preemptive priority value and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. + \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). + \param [in] PriorityGroup Used priority group. + \param [out] pPreemptPriority Preemptive priority value (starting from 0). + \param [out] pSubPriority Subpriority value (starting from 0). + */ +__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); + *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); +} + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + VTOR must been relocated to SRAM before. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | + SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief Set Priority Grouping (non-secure) + \details Sets the non-secure priority grouping field when in secure state using the required unlock sequence. + The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. + Only values from 0..7 are used. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Priority grouping field. + */ +__STATIC_INLINE void TZ_NVIC_SetPriorityGrouping_NS(uint32_t PriorityGroup) +{ + uint32_t reg_value; + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + + reg_value = SCB_NS->AIRCR; /* read old register configuration */ + reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ + reg_value = (reg_value | + ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (PriorityGroupTmp << 8U) ); /* Insert write key and priorty group */ + SCB_NS->AIRCR = reg_value; +} + + +/** + \brief Get Priority Grouping (non-secure) + \details Reads the priority grouping field from the non-secure NVIC when in secure state. + \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetPriorityGrouping_NS(void) +{ + return ((uint32_t)((SCB_NS->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); +} + + +/** + \brief Enable Interrupt (non-secure) + \details Enables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_EnableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status (non-secure) + \details Returns a device specific interrupt enable status from the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetEnableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt (non-secure) + \details Disables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_DisableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Pending Interrupt (non-secure) + \details Reads the NVIC pending register in the non-secure NVIC when in secure state and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt (non-secure) + \details Sets the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_SetPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt (non-secure) + \details Clears the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_ClearPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt (non-secure) + \details Reads the active register in non-secure NVIC when in secure state and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetActive_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Priority (non-secure) + \details Sets the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every non-secure processor exception. + */ +__STATIC_INLINE void TZ_NVIC_SetPriority_NS(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->IPR[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } + else + { + SCB_NS->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } +} + + +/** + \brief Get Interrupt Priority (non-secure) + \details Reads the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetPriority_NS(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return(((uint32_t)NVIC_NS->IPR[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return(((uint32_t)SCB_NS->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); + } +} +#endif /* defined (__ARM_FEATURE_CMSE) &&(__ARM_FEATURE_CMSE == 3U) */ + +/*@} end of CMSIS_Core_NVICFunctions */ + +/* ########################## MPU functions #################################### */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + +#include "mpu_armv8.h" + +#endif + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + uint32_t mvfr0; + + mvfr0 = FPU->MVFR0; + if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x220U) + { + return 2U; /* Double + Single precision FPU */ + } + else if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x020U) + { + return 1U; /* Single precision FPU */ + } + else + { + return 0U; /* No FPU */ + } +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ########################## SAU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SAUFunctions SAU Functions + \brief Functions that configure the SAU. + @{ + */ + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + +/** + \brief Enable SAU + \details Enables the Security Attribution Unit (SAU). + */ +__STATIC_INLINE void TZ_SAU_Enable(void) +{ + SAU->CTRL |= (SAU_CTRL_ENABLE_Msk); +} + + + +/** + \brief Disable SAU + \details Disables the Security Attribution Unit (SAU). + */ +__STATIC_INLINE void TZ_SAU_Disable(void) +{ + SAU->CTRL &= ~(SAU_CTRL_ENABLE_Msk); +} + +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + +/*@} end of CMSIS_Core_SAUFunctions */ + + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief System Tick Configuration (non-secure) + \details Initializes the non-secure System Timer and its interrupt when in secure state, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function TZ_SysTick_Config_NS is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + + */ +__STATIC_INLINE uint32_t TZ_SysTick_Config_NS(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick_NS->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + TZ_NVIC_SetPriority_NS (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick_NS->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick_NS->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + +/* ##################################### Debug In/Output function ########################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_core_DebugFunctions ITM Functions + \brief Functions that access the ITM debug interface. + @{ + */ + +extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ +#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ + + +/** + \brief ITM Send Character + \details Transmits a character via the ITM channel 0, and + \li Just returns when no debugger is connected that has booked the output. + \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. + \param [in] ch Character to transmit. + \returns Character to transmit. + */ +__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) +{ + if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ + ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ + { + while (ITM->PORT[0U].u32 == 0UL) + { + __NOP(); + } + ITM->PORT[0U].u8 = (uint8_t)ch; + } + return (ch); +} + + +/** + \brief ITM Receive Character + \details Inputs a character via the external variable \ref ITM_RxBuffer. + \return Received character. + \return -1 No character pending. + */ +__STATIC_INLINE int32_t ITM_ReceiveChar (void) +{ + int32_t ch = -1; /* no character available */ + + if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) + { + ch = ITM_RxBuffer; + ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ + } + + return (ch); +} + + +/** + \brief ITM Check Character + \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. + \return 0 No character available. + \return 1 Character available. + */ +__STATIC_INLINE int32_t ITM_CheckChar (void) +{ + + if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) + { + return (0); /* no character available */ + } + else + { + return (1); /* character available */ + } +} + +/*@} end of CMSIS_core_DebugFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_ARMV8MML_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/core_cm0.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm0.h similarity index 97% rename from stm32f103/Drivers/CMSIS/Include/core_cm0.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_cm0.h index 6f82227..f929bba 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_cm0.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm0.h @@ -1,949 +1,949 @@ -/**************************************************************************//** - * @file core_cm0.h - * @brief CMSIS Cortex-M0 Core Peripheral Access Layer Header File - * @version V5.0.5 - * @date 28. May 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_CM0_H_GENERIC -#define __CORE_CM0_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup Cortex_M0 - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS CM0 definitions */ -#define __CM0_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __CM0_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __CM0_CMSIS_VERSION ((__CM0_CMSIS_VERSION_MAIN << 16U) | \ - __CM0_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_M (0U) /*!< Cortex-M Core */ - -/** __FPU_USED indicates whether an FPU is used or not. - This core does not support an FPU at all -*/ -#define __FPU_USED 0U - -#if defined ( __CC_ARM ) - #if defined __TARGET_FPU_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined __ARM_PCS_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __ICCARM__ ) - #if defined __ARMVFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TI_ARM__ ) - #if defined __TI_VFP_SUPPORT__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TASKING__ ) - #if defined __FPU_VFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM0_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_CM0_H_DEPENDANT -#define __CORE_CM0_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __CM0_REV - #define __CM0_REV 0x0000U - #warning "__CM0_REV not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 2U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group Cortex_M0 */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ - uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t _reserved0:1; /*!< bit: 0 Reserved */ - uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ - uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[1U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[31U]; - __IOM uint32_t ICER[1U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[31U]; - __IOM uint32_t ISPR[1U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[31U]; - __IOM uint32_t ICPR[1U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[31U]; - uint32_t RESERVED4[64U]; - __IOM uint32_t IP[8U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ -} NVIC_Type; - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ - uint32_t RESERVED0; - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - uint32_t RESERVED1; - __IOM uint32_t SHP[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ -#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ -#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief Cortex-M0 Core Debug Registers (DCB registers, SHCSR, and DFSR) are only accessible over DAP and not via processor. - Therefore they are not covered by the Cortex-M0 header file. - @{ - */ -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ -#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ -#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ -#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ -#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - -#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ -#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ -#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ - - -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping - #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ -/*#define NVIC_GetActive __NVIC_GetActive not available for Cortex-M0 */ - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* The following EXC_RETURN values are saved the LR on exception entry */ -#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ -#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ -#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ - - -/* Interrupt Priorities are WORD accessible only under Armv6-M */ -/* The following MACROS handle generation of the register offset and byte masks */ -#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) -#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) -#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) - -#define __NVIC_SetPriorityGrouping(X) (void)(X) -#define __NVIC_GetPriorityGrouping() (0U) - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IP[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IP[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } - else - { - SCB->SHP[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHP[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IP[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return((uint32_t)(((SCB->SHP[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Encode Priority - \details Encodes the priority for an interrupt with the given priority group, - preemptive priority value, and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Used priority group. - \param [in] PreemptPriority Preemptive priority value (starting from 0). - \param [in] SubPriority Subpriority value (starting from 0). - \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). - */ -__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - return ( - ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | - ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) - ); -} - - -/** - \brief Decode Priority - \details Decodes an interrupt priority value with a given priority group to - preemptive priority value and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. - \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). - \param [in] PriorityGroup Used priority group. - \param [out] pPreemptPriority Preemptive priority value (starting from 0). - \param [out] pSubPriority Subpriority value (starting from 0). - */ -__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); - *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); -} - - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - Address 0 must be mapped to SRAM. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ - uint32_t *vectors = (uint32_t *)0x0U; - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ - uint32_t *vectors = (uint32_t *)0x0U; - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - SCB_AIRCR_SYSRESETREQ_Msk); - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -/*@} end of CMSIS_Core_NVICFunctions */ - - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - return 0U; /* No FPU */ -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM0_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_cm0.h + * @brief CMSIS Cortex-M0 Core Peripheral Access Layer Header File + * @version V5.0.5 + * @date 28. May 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_CM0_H_GENERIC +#define __CORE_CM0_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup Cortex_M0 + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS CM0 definitions */ +#define __CM0_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __CM0_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __CM0_CMSIS_VERSION ((__CM0_CMSIS_VERSION_MAIN << 16U) | \ + __CM0_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_M (0U) /*!< Cortex-M Core */ + +/** __FPU_USED indicates whether an FPU is used or not. + This core does not support an FPU at all +*/ +#define __FPU_USED 0U + +#if defined ( __CC_ARM ) + #if defined __TARGET_FPU_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined __ARM_PCS_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __ICCARM__ ) + #if defined __ARMVFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TI_ARM__ ) + #if defined __TI_VFP_SUPPORT__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TASKING__ ) + #if defined __FPU_VFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM0_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_CM0_H_DEPENDANT +#define __CORE_CM0_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __CM0_REV + #define __CM0_REV 0x0000U + #warning "__CM0_REV not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 2U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group Cortex_M0 */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ + uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t _reserved0:1; /*!< bit: 0 Reserved */ + uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ + uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[1U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[31U]; + __IOM uint32_t ICER[1U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[31U]; + __IOM uint32_t ISPR[1U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[31U]; + __IOM uint32_t ICPR[1U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[31U]; + uint32_t RESERVED4[64U]; + __IOM uint32_t IP[8U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ +} NVIC_Type; + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ + uint32_t RESERVED0; + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + uint32_t RESERVED1; + __IOM uint32_t SHP[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ +#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ +#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief Cortex-M0 Core Debug Registers (DCB registers, SHCSR, and DFSR) are only accessible over DAP and not via processor. + Therefore they are not covered by the Cortex-M0 header file. + @{ + */ +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ +#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ +#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ +#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ +#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + +#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ +#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ +#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ + + +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping + #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ +/*#define NVIC_GetActive __NVIC_GetActive not available for Cortex-M0 */ + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* The following EXC_RETURN values are saved the LR on exception entry */ +#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ +#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ +#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ + + +/* Interrupt Priorities are WORD accessible only under Armv6-M */ +/* The following MACROS handle generation of the register offset and byte masks */ +#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) +#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) +#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) + +#define __NVIC_SetPriorityGrouping(X) (void)(X) +#define __NVIC_GetPriorityGrouping() (0U) + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IP[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IP[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } + else + { + SCB->SHP[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHP[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IP[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return((uint32_t)(((SCB->SHP[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Encode Priority + \details Encodes the priority for an interrupt with the given priority group, + preemptive priority value, and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Used priority group. + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + ); +} + + +/** + \brief Decode Priority + \details Decodes an interrupt priority value with a given priority group to + preemptive priority value and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. + \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). + \param [in] PriorityGroup Used priority group. + \param [out] pPreemptPriority Preemptive priority value (starting from 0). + \param [out] pSubPriority Subpriority value (starting from 0). + */ +__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); + *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); +} + + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + Address 0 must be mapped to SRAM. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ + uint32_t *vectors = (uint32_t *)0x0U; + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ + uint32_t *vectors = (uint32_t *)0x0U; + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + SCB_AIRCR_SYSRESETREQ_Msk); + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +/*@} end of CMSIS_Core_NVICFunctions */ + + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + return 0U; /* No FPU */ +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM0_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/core_cm0plus.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm0plus.h similarity index 97% rename from stm32f103/Drivers/CMSIS/Include/core_cm0plus.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_cm0plus.h index b9377e8..424011a 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_cm0plus.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm0plus.h @@ -1,1083 +1,1083 @@ -/**************************************************************************//** - * @file core_cm0plus.h - * @brief CMSIS Cortex-M0+ Core Peripheral Access Layer Header File - * @version V5.0.6 - * @date 28. May 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_CM0PLUS_H_GENERIC -#define __CORE_CM0PLUS_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup Cortex-M0+ - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS CM0+ definitions */ -#define __CM0PLUS_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __CM0PLUS_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __CM0PLUS_CMSIS_VERSION ((__CM0PLUS_CMSIS_VERSION_MAIN << 16U) | \ - __CM0PLUS_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_M (0U) /*!< Cortex-M Core */ - -/** __FPU_USED indicates whether an FPU is used or not. - This core does not support an FPU at all -*/ -#define __FPU_USED 0U - -#if defined ( __CC_ARM ) - #if defined __TARGET_FPU_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined __ARM_PCS_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __ICCARM__ ) - #if defined __ARMVFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TI_ARM__ ) - #if defined __TI_VFP_SUPPORT__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TASKING__ ) - #if defined __FPU_VFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM0PLUS_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_CM0PLUS_H_DEPENDANT -#define __CORE_CM0PLUS_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __CM0PLUS_REV - #define __CM0PLUS_REV 0x0000U - #warning "__CM0PLUS_REV not defined in device header file; using default!" - #endif - - #ifndef __MPU_PRESENT - #define __MPU_PRESENT 0U - #warning "__MPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __VTOR_PRESENT - #define __VTOR_PRESENT 0U - #warning "__VTOR_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 2U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group Cortex-M0+ */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - - Core MPU Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ - uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ - uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ - uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ -#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[1U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[31U]; - __IOM uint32_t ICER[1U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[31U]; - __IOM uint32_t ISPR[1U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[31U]; - __IOM uint32_t ICPR[1U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[31U]; - uint32_t RESERVED4[64U]; - __IOM uint32_t IP[8U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ -} NVIC_Type; - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) - __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ -#else - uint32_t RESERVED0; -#endif - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - uint32_t RESERVED1; - __IOM uint32_t SHP[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ -#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) -/* SCB Interrupt Control State Register Definitions */ -#define SCB_VTOR_TBLOFF_Pos 8U /*!< SCB VTOR: TBLOFF Position */ -#define SCB_VTOR_TBLOFF_Msk (0xFFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ -#endif - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ -#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_MPU Memory Protection Unit (MPU) - \brief Type definitions for the Memory Protection Unit (MPU) - @{ - */ - -/** - \brief Structure type to access the Memory Protection Unit (MPU). - */ -typedef struct -{ - __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ - __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ - __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ -} MPU_Type; - -#define MPU_TYPE_RALIASES 1U - -/* MPU Type Register Definitions */ -#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ -#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ - -#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ -#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ - -#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ -#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ - -/* MPU Control Register Definitions */ -#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ -#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ - -#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ -#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ - -#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ -#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ - -/* MPU Region Number Register Definitions */ -#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ -#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ - -/* MPU Region Base Address Register Definitions */ -#define MPU_RBAR_ADDR_Pos 8U /*!< MPU RBAR: ADDR Position */ -#define MPU_RBAR_ADDR_Msk (0xFFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ - -#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ -#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ - -#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ -#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ - -/* MPU Region Attribute and Size Register Definitions */ -#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ -#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ - -#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ -#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ - -#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ -#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ - -#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ -#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ - -#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ -#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ - -#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ -#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ - -#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ -#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ - -#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ -#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ - -#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ -#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ - -#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ -#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ - -/*@} end of group CMSIS_MPU */ -#endif - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief Cortex-M0+ Core Debug Registers (DCB registers, SHCSR, and DFSR) are only accessible over DAP and not via processor. - Therefore they are not covered by the Cortex-M0+ header file. - @{ - */ -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ -#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ -#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ -#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ -#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - -#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ -#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ -#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ - #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ -#endif - -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping - #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ -/*#define NVIC_GetActive __NVIC_GetActive not available for Cortex-M0+ */ - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* The following EXC_RETURN values are saved the LR on exception entry */ -#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ -#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ -#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ - - -/* Interrupt Priorities are WORD accessible only under Armv6-M */ -/* The following MACROS handle generation of the register offset and byte masks */ -#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) -#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) -#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) - -#define __NVIC_SetPriorityGrouping(X) (void)(X) -#define __NVIC_GetPriorityGrouping() (0U) - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IP[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IP[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } - else - { - SCB->SHP[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHP[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IP[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return((uint32_t)(((SCB->SHP[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Encode Priority - \details Encodes the priority for an interrupt with the given priority group, - preemptive priority value, and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Used priority group. - \param [in] PreemptPriority Preemptive priority value (starting from 0). - \param [in] SubPriority Subpriority value (starting from 0). - \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). - */ -__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - return ( - ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | - ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) - ); -} - - -/** - \brief Decode Priority - \details Decodes an interrupt priority value with a given priority group to - preemptive priority value and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. - \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). - \param [in] PriorityGroup Used priority group. - \param [out] pPreemptPriority Preemptive priority value (starting from 0). - \param [out] pSubPriority Subpriority value (starting from 0). - */ -__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); - *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); -} - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - VTOR must been relocated to SRAM before. - If VTOR is not present address 0 must be mapped to SRAM. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) - uint32_t *vectors = (uint32_t *)SCB->VTOR; -#else - uint32_t *vectors = (uint32_t *)0x0U; -#endif - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) - uint32_t *vectors = (uint32_t *)SCB->VTOR; -#else - uint32_t *vectors = (uint32_t *)0x0U; -#endif - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; - -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - SCB_AIRCR_SYSRESETREQ_Msk); - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -/*@} end of CMSIS_Core_NVICFunctions */ - -/* ########################## MPU functions #################################### */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - -#include "mpu_armv7.h" - -#endif - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - return 0U; /* No FPU */ -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM0PLUS_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_cm0plus.h + * @brief CMSIS Cortex-M0+ Core Peripheral Access Layer Header File + * @version V5.0.6 + * @date 28. May 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_CM0PLUS_H_GENERIC +#define __CORE_CM0PLUS_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup Cortex-M0+ + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS CM0+ definitions */ +#define __CM0PLUS_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __CM0PLUS_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __CM0PLUS_CMSIS_VERSION ((__CM0PLUS_CMSIS_VERSION_MAIN << 16U) | \ + __CM0PLUS_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_M (0U) /*!< Cortex-M Core */ + +/** __FPU_USED indicates whether an FPU is used or not. + This core does not support an FPU at all +*/ +#define __FPU_USED 0U + +#if defined ( __CC_ARM ) + #if defined __TARGET_FPU_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined __ARM_PCS_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __ICCARM__ ) + #if defined __ARMVFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TI_ARM__ ) + #if defined __TI_VFP_SUPPORT__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TASKING__ ) + #if defined __FPU_VFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM0PLUS_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_CM0PLUS_H_DEPENDANT +#define __CORE_CM0PLUS_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __CM0PLUS_REV + #define __CM0PLUS_REV 0x0000U + #warning "__CM0PLUS_REV not defined in device header file; using default!" + #endif + + #ifndef __MPU_PRESENT + #define __MPU_PRESENT 0U + #warning "__MPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __VTOR_PRESENT + #define __VTOR_PRESENT 0U + #warning "__VTOR_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 2U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group Cortex-M0+ */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + - Core MPU Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ + uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ + uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ + uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ +#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[1U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[31U]; + __IOM uint32_t ICER[1U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[31U]; + __IOM uint32_t ISPR[1U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[31U]; + __IOM uint32_t ICPR[1U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[31U]; + uint32_t RESERVED4[64U]; + __IOM uint32_t IP[8U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ +} NVIC_Type; + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) + __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ +#else + uint32_t RESERVED0; +#endif + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + uint32_t RESERVED1; + __IOM uint32_t SHP[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ +#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) +/* SCB Interrupt Control State Register Definitions */ +#define SCB_VTOR_TBLOFF_Pos 8U /*!< SCB VTOR: TBLOFF Position */ +#define SCB_VTOR_TBLOFF_Msk (0xFFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ +#endif + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ +#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_MPU Memory Protection Unit (MPU) + \brief Type definitions for the Memory Protection Unit (MPU) + @{ + */ + +/** + \brief Structure type to access the Memory Protection Unit (MPU). + */ +typedef struct +{ + __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ + __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ + __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ +} MPU_Type; + +#define MPU_TYPE_RALIASES 1U + +/* MPU Type Register Definitions */ +#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ +#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ + +#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ +#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ + +#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ +#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ + +/* MPU Control Register Definitions */ +#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ +#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ + +#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ +#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ + +#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ +#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ + +/* MPU Region Number Register Definitions */ +#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ +#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ + +/* MPU Region Base Address Register Definitions */ +#define MPU_RBAR_ADDR_Pos 8U /*!< MPU RBAR: ADDR Position */ +#define MPU_RBAR_ADDR_Msk (0xFFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ + +#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ +#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ + +#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ +#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ + +/* MPU Region Attribute and Size Register Definitions */ +#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ +#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ + +#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ +#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ + +#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ +#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ + +#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ +#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ + +#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ +#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ + +#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ +#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ + +#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ +#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ + +#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ +#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ + +#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ +#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ + +#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ +#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ + +/*@} end of group CMSIS_MPU */ +#endif + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief Cortex-M0+ Core Debug Registers (DCB registers, SHCSR, and DFSR) are only accessible over DAP and not via processor. + Therefore they are not covered by the Cortex-M0+ header file. + @{ + */ +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ +#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ +#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ +#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ +#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + +#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ +#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ +#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ + #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ +#endif + +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping + #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ +/*#define NVIC_GetActive __NVIC_GetActive not available for Cortex-M0+ */ + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* The following EXC_RETURN values are saved the LR on exception entry */ +#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ +#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ +#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ + + +/* Interrupt Priorities are WORD accessible only under Armv6-M */ +/* The following MACROS handle generation of the register offset and byte masks */ +#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) +#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) +#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) + +#define __NVIC_SetPriorityGrouping(X) (void)(X) +#define __NVIC_GetPriorityGrouping() (0U) + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IP[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IP[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } + else + { + SCB->SHP[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHP[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IP[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return((uint32_t)(((SCB->SHP[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Encode Priority + \details Encodes the priority for an interrupt with the given priority group, + preemptive priority value, and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Used priority group. + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + ); +} + + +/** + \brief Decode Priority + \details Decodes an interrupt priority value with a given priority group to + preemptive priority value and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. + \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). + \param [in] PriorityGroup Used priority group. + \param [out] pPreemptPriority Preemptive priority value (starting from 0). + \param [out] pSubPriority Subpriority value (starting from 0). + */ +__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); + *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); +} + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + VTOR must been relocated to SRAM before. + If VTOR is not present address 0 must be mapped to SRAM. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) + uint32_t *vectors = (uint32_t *)SCB->VTOR; +#else + uint32_t *vectors = (uint32_t *)0x0U; +#endif + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) + uint32_t *vectors = (uint32_t *)SCB->VTOR; +#else + uint32_t *vectors = (uint32_t *)0x0U; +#endif + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; + +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + SCB_AIRCR_SYSRESETREQ_Msk); + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +/*@} end of CMSIS_Core_NVICFunctions */ + +/* ########################## MPU functions #################################### */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + +#include "mpu_armv7.h" + +#endif + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + return 0U; /* No FPU */ +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM0PLUS_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/core_cm1.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm1.h similarity index 97% rename from stm32f103/Drivers/CMSIS/Include/core_cm1.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_cm1.h index fd1c407..0ed678e 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_cm1.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm1.h @@ -1,976 +1,976 @@ -/**************************************************************************//** - * @file core_cm1.h - * @brief CMSIS Cortex-M1 Core Peripheral Access Layer Header File - * @version V1.0.0 - * @date 23. July 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_CM1_H_GENERIC -#define __CORE_CM1_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup Cortex_M1 - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS CM1 definitions */ -#define __CM1_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __CM1_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __CM1_CMSIS_VERSION ((__CM1_CMSIS_VERSION_MAIN << 16U) | \ - __CM1_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_M (1U) /*!< Cortex-M Core */ - -/** __FPU_USED indicates whether an FPU is used or not. - This core does not support an FPU at all -*/ -#define __FPU_USED 0U - -#if defined ( __CC_ARM ) - #if defined __TARGET_FPU_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined __ARM_PCS_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __ICCARM__ ) - #if defined __ARMVFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TI_ARM__ ) - #if defined __TI_VFP_SUPPORT__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TASKING__ ) - #if defined __FPU_VFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM1_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_CM1_H_DEPENDANT -#define __CORE_CM1_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __CM1_REV - #define __CM1_REV 0x0100U - #warning "__CM1_REV not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 2U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group Cortex_M1 */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ - uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t _reserved0:1; /*!< bit: 0 Reserved */ - uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ - uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[1U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[31U]; - __IOM uint32_t ICER[1U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[31U]; - __IOM uint32_t ISPR[1U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[31U]; - __IOM uint32_t ICPR[1U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[31U]; - uint32_t RESERVED4[64U]; - __IOM uint32_t IP[8U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ -} NVIC_Type; - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ - uint32_t RESERVED0; - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - uint32_t RESERVED1; - __IOM uint32_t SHP[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ -#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ -#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) - \brief Type definitions for the System Control and ID Register not in the SCB - @{ - */ - -/** - \brief Structure type to access the System Control and ID Register not in the SCB. - */ -typedef struct -{ - uint32_t RESERVED0[2U]; - __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ -} SCnSCB_Type; - -/* Auxiliary Control Register Definitions */ -#define SCnSCB_ACTLR_ITCMUAEN_Pos 4U /*!< ACTLR: Instruction TCM Upper Alias Enable Position */ -#define SCnSCB_ACTLR_ITCMUAEN_Msk (1UL << SCnSCB_ACTLR_ITCMUAEN_Pos) /*!< ACTLR: Instruction TCM Upper Alias Enable Mask */ - -#define SCnSCB_ACTLR_ITCMLAEN_Pos 3U /*!< ACTLR: Instruction TCM Lower Alias Enable Position */ -#define SCnSCB_ACTLR_ITCMLAEN_Msk (1UL << SCnSCB_ACTLR_ITCMLAEN_Pos) /*!< ACTLR: Instruction TCM Lower Alias Enable Mask */ - -/*@} end of group CMSIS_SCnotSCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief Cortex-M1 Core Debug Registers (DCB registers, SHCSR, and DFSR) are only accessible over DAP and not via processor. - Therefore they are not covered by the Cortex-M1 header file. - @{ - */ -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ -#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ -#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ -#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ -#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - -#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ -#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ -#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ -#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ - - -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping - #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ -/*#define NVIC_GetActive __NVIC_GetActive not available for Cortex-M1 */ - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* The following EXC_RETURN values are saved the LR on exception entry */ -#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ -#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ -#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ - - -/* Interrupt Priorities are WORD accessible only under Armv6-M */ -/* The following MACROS handle generation of the register offset and byte masks */ -#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) -#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) -#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) - -#define __NVIC_SetPriorityGrouping(X) (void)(X) -#define __NVIC_GetPriorityGrouping() (0U) - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IP[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IP[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } - else - { - SCB->SHP[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHP[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IP[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return((uint32_t)(((SCB->SHP[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Encode Priority - \details Encodes the priority for an interrupt with the given priority group, - preemptive priority value, and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Used priority group. - \param [in] PreemptPriority Preemptive priority value (starting from 0). - \param [in] SubPriority Subpriority value (starting from 0). - \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). - */ -__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - return ( - ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | - ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) - ); -} - - -/** - \brief Decode Priority - \details Decodes an interrupt priority value with a given priority group to - preemptive priority value and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. - \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). - \param [in] PriorityGroup Used priority group. - \param [out] pPreemptPriority Preemptive priority value (starting from 0). - \param [out] pSubPriority Subpriority value (starting from 0). - */ -__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); - *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); -} - - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - Address 0 must be mapped to SRAM. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ - uint32_t *vectors = (uint32_t *)0x0U; - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ - uint32_t *vectors = (uint32_t *)0x0U; - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - SCB_AIRCR_SYSRESETREQ_Msk); - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -/*@} end of CMSIS_Core_NVICFunctions */ - - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - return 0U; /* No FPU */ -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM1_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_cm1.h + * @brief CMSIS Cortex-M1 Core Peripheral Access Layer Header File + * @version V1.0.0 + * @date 23. July 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_CM1_H_GENERIC +#define __CORE_CM1_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup Cortex_M1 + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS CM1 definitions */ +#define __CM1_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __CM1_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __CM1_CMSIS_VERSION ((__CM1_CMSIS_VERSION_MAIN << 16U) | \ + __CM1_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_M (1U) /*!< Cortex-M Core */ + +/** __FPU_USED indicates whether an FPU is used or not. + This core does not support an FPU at all +*/ +#define __FPU_USED 0U + +#if defined ( __CC_ARM ) + #if defined __TARGET_FPU_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined __ARM_PCS_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __ICCARM__ ) + #if defined __ARMVFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TI_ARM__ ) + #if defined __TI_VFP_SUPPORT__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TASKING__ ) + #if defined __FPU_VFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM1_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_CM1_H_DEPENDANT +#define __CORE_CM1_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __CM1_REV + #define __CM1_REV 0x0100U + #warning "__CM1_REV not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 2U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group Cortex_M1 */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ + uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t _reserved0:1; /*!< bit: 0 Reserved */ + uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ + uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[1U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[31U]; + __IOM uint32_t ICER[1U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[31U]; + __IOM uint32_t ISPR[1U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[31U]; + __IOM uint32_t ICPR[1U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[31U]; + uint32_t RESERVED4[64U]; + __IOM uint32_t IP[8U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ +} NVIC_Type; + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ + uint32_t RESERVED0; + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + uint32_t RESERVED1; + __IOM uint32_t SHP[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ +#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ +#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) + \brief Type definitions for the System Control and ID Register not in the SCB + @{ + */ + +/** + \brief Structure type to access the System Control and ID Register not in the SCB. + */ +typedef struct +{ + uint32_t RESERVED0[2U]; + __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ +} SCnSCB_Type; + +/* Auxiliary Control Register Definitions */ +#define SCnSCB_ACTLR_ITCMUAEN_Pos 4U /*!< ACTLR: Instruction TCM Upper Alias Enable Position */ +#define SCnSCB_ACTLR_ITCMUAEN_Msk (1UL << SCnSCB_ACTLR_ITCMUAEN_Pos) /*!< ACTLR: Instruction TCM Upper Alias Enable Mask */ + +#define SCnSCB_ACTLR_ITCMLAEN_Pos 3U /*!< ACTLR: Instruction TCM Lower Alias Enable Position */ +#define SCnSCB_ACTLR_ITCMLAEN_Msk (1UL << SCnSCB_ACTLR_ITCMLAEN_Pos) /*!< ACTLR: Instruction TCM Lower Alias Enable Mask */ + +/*@} end of group CMSIS_SCnotSCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief Cortex-M1 Core Debug Registers (DCB registers, SHCSR, and DFSR) are only accessible over DAP and not via processor. + Therefore they are not covered by the Cortex-M1 header file. + @{ + */ +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ +#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ +#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ +#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ +#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + +#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ +#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ +#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ +#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ + + +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping + #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ +/*#define NVIC_GetActive __NVIC_GetActive not available for Cortex-M1 */ + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* The following EXC_RETURN values are saved the LR on exception entry */ +#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ +#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ +#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ + + +/* Interrupt Priorities are WORD accessible only under Armv6-M */ +/* The following MACROS handle generation of the register offset and byte masks */ +#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) +#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) +#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) + +#define __NVIC_SetPriorityGrouping(X) (void)(X) +#define __NVIC_GetPriorityGrouping() (0U) + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IP[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IP[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } + else + { + SCB->SHP[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHP[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IP[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return((uint32_t)(((SCB->SHP[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Encode Priority + \details Encodes the priority for an interrupt with the given priority group, + preemptive priority value, and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Used priority group. + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + ); +} + + +/** + \brief Decode Priority + \details Decodes an interrupt priority value with a given priority group to + preemptive priority value and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. + \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). + \param [in] PriorityGroup Used priority group. + \param [out] pPreemptPriority Preemptive priority value (starting from 0). + \param [out] pSubPriority Subpriority value (starting from 0). + */ +__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); + *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); +} + + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + Address 0 must be mapped to SRAM. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ + uint32_t *vectors = (uint32_t *)0x0U; + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ + uint32_t *vectors = (uint32_t *)0x0U; + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + SCB_AIRCR_SYSRESETREQ_Msk); + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +/*@} end of CMSIS_Core_NVICFunctions */ + + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + return 0U; /* No FPU */ +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM1_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/core_cm23.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm23.h similarity index 98% rename from stm32f103/Drivers/CMSIS/Include/core_cm23.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_cm23.h index 8202a8d..acbc5df 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_cm23.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm23.h @@ -1,1993 +1,1993 @@ -/**************************************************************************//** - * @file core_cm23.h - * @brief CMSIS Cortex-M23 Core Peripheral Access Layer Header File - * @version V5.0.7 - * @date 22. June 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_CM23_H_GENERIC -#define __CORE_CM23_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup Cortex_M23 - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS definitions */ -#define __CM23_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __CM23_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __CM23_CMSIS_VERSION ((__CM23_CMSIS_VERSION_MAIN << 16U) | \ - __CM23_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_M (23U) /*!< Cortex-M Core */ - -/** __FPU_USED indicates whether an FPU is used or not. - This core does not support an FPU at all -*/ -#define __FPU_USED 0U - -#if defined ( __CC_ARM ) - #if defined __TARGET_FPU_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined __ARM_PCS_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __ICCARM__ ) - #if defined __ARMVFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TI_ARM__ ) - #if defined __TI_VFP_SUPPORT__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TASKING__ ) - #if defined __FPU_VFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM23_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_CM23_H_DEPENDANT -#define __CORE_CM23_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __CM23_REV - #define __CM23_REV 0x0000U - #warning "__CM23_REV not defined in device header file; using default!" - #endif - - #ifndef __FPU_PRESENT - #define __FPU_PRESENT 0U - #warning "__FPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __MPU_PRESENT - #define __MPU_PRESENT 0U - #warning "__MPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __SAUREGION_PRESENT - #define __SAUREGION_PRESENT 0U - #warning "__SAUREGION_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __VTOR_PRESENT - #define __VTOR_PRESENT 0U - #warning "__VTOR_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 2U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif - - #ifndef __ETM_PRESENT - #define __ETM_PRESENT 0U - #warning "__ETM_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __MTB_PRESENT - #define __MTB_PRESENT 0U - #warning "__MTB_PRESENT not defined in device header file; using default!" - #endif - -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group Cortex_M23 */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - - Core Debug Register - - Core MPU Register - - Core SAU Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ - uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ - uint32_t SPSEL:1; /*!< bit: 1 Stack-pointer select */ - uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ -#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[16U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[16U]; - __IOM uint32_t ICER[16U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[16U]; - __IOM uint32_t ISPR[16U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[16U]; - __IOM uint32_t ICPR[16U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[16U]; - __IOM uint32_t IABR[16U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ - uint32_t RESERVED4[16U]; - __IOM uint32_t ITNS[16U]; /*!< Offset: 0x280 (R/W) Interrupt Non-Secure State Register */ - uint32_t RESERVED5[16U]; - __IOM uint32_t IPR[124U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ -} NVIC_Type; - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) - __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ -#else - uint32_t RESERVED0; -#endif - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - uint32_t RESERVED1; - __IOM uint32_t SHPR[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_PENDNMISET_Pos 31U /*!< SCB ICSR: PENDNMISET Position */ -#define SCB_ICSR_PENDNMISET_Msk (1UL << SCB_ICSR_PENDNMISET_Pos) /*!< SCB ICSR: PENDNMISET Mask */ - -#define SCB_ICSR_NMIPENDSET_Pos SCB_ICSR_PENDNMISET_Pos /*!< SCB ICSR: NMIPENDSET Position, backward compatibility */ -#define SCB_ICSR_NMIPENDSET_Msk SCB_ICSR_PENDNMISET_Msk /*!< SCB ICSR: NMIPENDSET Mask, backward compatibility */ - -#define SCB_ICSR_PENDNMICLR_Pos 30U /*!< SCB ICSR: PENDNMICLR Position */ -#define SCB_ICSR_PENDNMICLR_Msk (1UL << SCB_ICSR_PENDNMICLR_Pos) /*!< SCB ICSR: PENDNMICLR Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_STTNS_Pos 24U /*!< SCB ICSR: STTNS Position (Security Extension) */ -#define SCB_ICSR_STTNS_Msk (1UL << SCB_ICSR_STTNS_Pos) /*!< SCB ICSR: STTNS Mask (Security Extension) */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ -#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) -/* SCB Vector Table Offset Register Definitions */ -#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ -#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ -#endif - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_PRIS_Pos 14U /*!< SCB AIRCR: PRIS Position */ -#define SCB_AIRCR_PRIS_Msk (1UL << SCB_AIRCR_PRIS_Pos) /*!< SCB AIRCR: PRIS Mask */ - -#define SCB_AIRCR_BFHFNMINS_Pos 13U /*!< SCB AIRCR: BFHFNMINS Position */ -#define SCB_AIRCR_BFHFNMINS_Msk (1UL << SCB_AIRCR_BFHFNMINS_Pos) /*!< SCB AIRCR: BFHFNMINS Mask */ - -#define SCB_AIRCR_SYSRESETREQS_Pos 3U /*!< SCB AIRCR: SYSRESETREQS Position */ -#define SCB_AIRCR_SYSRESETREQS_Msk (1UL << SCB_AIRCR_SYSRESETREQS_Pos) /*!< SCB AIRCR: SYSRESETREQS Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEPS_Pos 3U /*!< SCB SCR: SLEEPDEEPS Position */ -#define SCB_SCR_SLEEPDEEPS_Msk (1UL << SCB_SCR_SLEEPDEEPS_Pos) /*!< SCB SCR: SLEEPDEEPS Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_BP_Pos 18U /*!< SCB CCR: BP Position */ -#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos) /*!< SCB CCR: BP Mask */ - -#define SCB_CCR_IC_Pos 17U /*!< SCB CCR: IC Position */ -#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos) /*!< SCB CCR: IC Mask */ - -#define SCB_CCR_DC_Pos 16U /*!< SCB CCR: DC Position */ -#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos) /*!< SCB CCR: DC Mask */ - -#define SCB_CCR_STKOFHFNMIGN_Pos 10U /*!< SCB CCR: STKOFHFNMIGN Position */ -#define SCB_CCR_STKOFHFNMIGN_Msk (1UL << SCB_CCR_STKOFHFNMIGN_Pos) /*!< SCB CCR: STKOFHFNMIGN Mask */ - -#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ -#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ - -#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ -#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ -#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_HARDFAULTPENDED_Pos 21U /*!< SCB SHCSR: HARDFAULTPENDED Position */ -#define SCB_SHCSR_HARDFAULTPENDED_Msk (1UL << SCB_SHCSR_HARDFAULTPENDED_Pos) /*!< SCB SHCSR: HARDFAULTPENDED Mask */ - -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ -#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ - -#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ -#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ - -#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ -#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ - -#define SCB_SHCSR_NMIACT_Pos 5U /*!< SCB SHCSR: NMIACT Position */ -#define SCB_SHCSR_NMIACT_Msk (1UL << SCB_SHCSR_NMIACT_Pos) /*!< SCB SHCSR: NMIACT Mask */ - -#define SCB_SHCSR_HARDFAULTACT_Pos 2U /*!< SCB SHCSR: HARDFAULTACT Position */ -#define SCB_SHCSR_HARDFAULTACT_Msk (1UL << SCB_SHCSR_HARDFAULTACT_Pos) /*!< SCB SHCSR: HARDFAULTACT Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) - \brief Type definitions for the Data Watchpoint and Trace (DWT) - @{ - */ - -/** - \brief Structure type to access the Data Watchpoint and Trace Register (DWT). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ - uint32_t RESERVED0[6U]; - __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ - __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ - uint32_t RESERVED1[1U]; - __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ - uint32_t RESERVED2[1U]; - __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ - uint32_t RESERVED3[1U]; - __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ - uint32_t RESERVED4[1U]; - __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ - uint32_t RESERVED5[1U]; - __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ - uint32_t RESERVED6[1U]; - __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ - uint32_t RESERVED7[1U]; - __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ - uint32_t RESERVED8[1U]; - __IOM uint32_t COMP4; /*!< Offset: 0x060 (R/W) Comparator Register 4 */ - uint32_t RESERVED9[1U]; - __IOM uint32_t FUNCTION4; /*!< Offset: 0x068 (R/W) Function Register 4 */ - uint32_t RESERVED10[1U]; - __IOM uint32_t COMP5; /*!< Offset: 0x070 (R/W) Comparator Register 5 */ - uint32_t RESERVED11[1U]; - __IOM uint32_t FUNCTION5; /*!< Offset: 0x078 (R/W) Function Register 5 */ - uint32_t RESERVED12[1U]; - __IOM uint32_t COMP6; /*!< Offset: 0x080 (R/W) Comparator Register 6 */ - uint32_t RESERVED13[1U]; - __IOM uint32_t FUNCTION6; /*!< Offset: 0x088 (R/W) Function Register 6 */ - uint32_t RESERVED14[1U]; - __IOM uint32_t COMP7; /*!< Offset: 0x090 (R/W) Comparator Register 7 */ - uint32_t RESERVED15[1U]; - __IOM uint32_t FUNCTION7; /*!< Offset: 0x098 (R/W) Function Register 7 */ - uint32_t RESERVED16[1U]; - __IOM uint32_t COMP8; /*!< Offset: 0x0A0 (R/W) Comparator Register 8 */ - uint32_t RESERVED17[1U]; - __IOM uint32_t FUNCTION8; /*!< Offset: 0x0A8 (R/W) Function Register 8 */ - uint32_t RESERVED18[1U]; - __IOM uint32_t COMP9; /*!< Offset: 0x0B0 (R/W) Comparator Register 9 */ - uint32_t RESERVED19[1U]; - __IOM uint32_t FUNCTION9; /*!< Offset: 0x0B8 (R/W) Function Register 9 */ - uint32_t RESERVED20[1U]; - __IOM uint32_t COMP10; /*!< Offset: 0x0C0 (R/W) Comparator Register 10 */ - uint32_t RESERVED21[1U]; - __IOM uint32_t FUNCTION10; /*!< Offset: 0x0C8 (R/W) Function Register 10 */ - uint32_t RESERVED22[1U]; - __IOM uint32_t COMP11; /*!< Offset: 0x0D0 (R/W) Comparator Register 11 */ - uint32_t RESERVED23[1U]; - __IOM uint32_t FUNCTION11; /*!< Offset: 0x0D8 (R/W) Function Register 11 */ - uint32_t RESERVED24[1U]; - __IOM uint32_t COMP12; /*!< Offset: 0x0E0 (R/W) Comparator Register 12 */ - uint32_t RESERVED25[1U]; - __IOM uint32_t FUNCTION12; /*!< Offset: 0x0E8 (R/W) Function Register 12 */ - uint32_t RESERVED26[1U]; - __IOM uint32_t COMP13; /*!< Offset: 0x0F0 (R/W) Comparator Register 13 */ - uint32_t RESERVED27[1U]; - __IOM uint32_t FUNCTION13; /*!< Offset: 0x0F8 (R/W) Function Register 13 */ - uint32_t RESERVED28[1U]; - __IOM uint32_t COMP14; /*!< Offset: 0x100 (R/W) Comparator Register 14 */ - uint32_t RESERVED29[1U]; - __IOM uint32_t FUNCTION14; /*!< Offset: 0x108 (R/W) Function Register 14 */ - uint32_t RESERVED30[1U]; - __IOM uint32_t COMP15; /*!< Offset: 0x110 (R/W) Comparator Register 15 */ - uint32_t RESERVED31[1U]; - __IOM uint32_t FUNCTION15; /*!< Offset: 0x118 (R/W) Function Register 15 */ -} DWT_Type; - -/* DWT Control Register Definitions */ -#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ -#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ - -#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ -#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ - -#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ -#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ - -#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ -#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ - -#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ -#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ - -/* DWT Comparator Function Register Definitions */ -#define DWT_FUNCTION_ID_Pos 27U /*!< DWT FUNCTION: ID Position */ -#define DWT_FUNCTION_ID_Msk (0x1FUL << DWT_FUNCTION_ID_Pos) /*!< DWT FUNCTION: ID Mask */ - -#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ -#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ - -#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ -#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ - -#define DWT_FUNCTION_ACTION_Pos 4U /*!< DWT FUNCTION: ACTION Position */ -#define DWT_FUNCTION_ACTION_Msk (0x3UL << DWT_FUNCTION_ACTION_Pos) /*!< DWT FUNCTION: ACTION Mask */ - -#define DWT_FUNCTION_MATCH_Pos 0U /*!< DWT FUNCTION: MATCH Position */ -#define DWT_FUNCTION_MATCH_Msk (0xFUL /*<< DWT_FUNCTION_MATCH_Pos*/) /*!< DWT FUNCTION: MATCH Mask */ - -/*@}*/ /* end of group CMSIS_DWT */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_TPI Trace Port Interface (TPI) - \brief Type definitions for the Trace Port Interface (TPI) - @{ - */ - -/** - \brief Structure type to access the Trace Port Interface Register (TPI). - */ -typedef struct -{ - __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ - __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ - uint32_t RESERVED0[2U]; - __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ - uint32_t RESERVED1[55U]; - __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ - uint32_t RESERVED2[131U]; - __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ - __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ - __IOM uint32_t PSCR; /*!< Offset: 0x308 (R/W) Periodic Synchronization Control Register */ - uint32_t RESERVED3[759U]; - __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ - __IM uint32_t ITFTTD0; /*!< Offset: 0xEEC (R/ ) Integration Test FIFO Test Data 0 Register */ - __IOM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/W) Integration Test ATB Control Register 2 */ - uint32_t RESERVED4[1U]; - __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) Integration Test ATB Control Register 0 */ - __IM uint32_t ITFTTD1; /*!< Offset: 0xEFC (R/ ) Integration Test FIFO Test Data 1 Register */ - __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ - uint32_t RESERVED5[39U]; - __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ - __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ - uint32_t RESERVED7[8U]; - __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) Device Configuration Register */ - __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) Device Type Identifier Register */ -} TPI_Type; - -/* TPI Asynchronous Clock Prescaler Register Definitions */ -#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ -#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ - -/* TPI Selected Pin Protocol Register Definitions */ -#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ -#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ - -/* TPI Formatter and Flush Status Register Definitions */ -#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ -#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ - -#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ -#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ - -#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ -#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ - -#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ -#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ - -/* TPI Formatter and Flush Control Register Definitions */ -#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ -#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ - -#define TPI_FFCR_FOnMan_Pos 6U /*!< TPI FFCR: FOnMan Position */ -#define TPI_FFCR_FOnMan_Msk (0x1UL << TPI_FFCR_FOnMan_Pos) /*!< TPI FFCR: FOnMan Mask */ - -#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ -#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ - -/* TPI TRIGGER Register Definitions */ -#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ -#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ - -/* TPI Integration Test FIFO Test Data 0 Register Definitions */ -#define TPI_ITFTTD0_ATB_IF2_ATVALID_Pos 29U /*!< TPI ITFTTD0: ATB Interface 2 ATVALIDPosition */ -#define TPI_ITFTTD0_ATB_IF2_ATVALID_Msk (0x3UL << TPI_ITFTTD0_ATB_IF2_ATVALID_Pos) /*!< TPI ITFTTD0: ATB Interface 2 ATVALID Mask */ - -#define TPI_ITFTTD0_ATB_IF2_bytecount_Pos 27U /*!< TPI ITFTTD0: ATB Interface 2 byte count Position */ -#define TPI_ITFTTD0_ATB_IF2_bytecount_Msk (0x3UL << TPI_ITFTTD0_ATB_IF2_bytecount_Pos) /*!< TPI ITFTTD0: ATB Interface 2 byte count Mask */ - -#define TPI_ITFTTD0_ATB_IF1_ATVALID_Pos 26U /*!< TPI ITFTTD0: ATB Interface 1 ATVALID Position */ -#define TPI_ITFTTD0_ATB_IF1_ATVALID_Msk (0x3UL << TPI_ITFTTD0_ATB_IF1_ATVALID_Pos) /*!< TPI ITFTTD0: ATB Interface 1 ATVALID Mask */ - -#define TPI_ITFTTD0_ATB_IF1_bytecount_Pos 24U /*!< TPI ITFTTD0: ATB Interface 1 byte count Position */ -#define TPI_ITFTTD0_ATB_IF1_bytecount_Msk (0x3UL << TPI_ITFTTD0_ATB_IF1_bytecount_Pos) /*!< TPI ITFTTD0: ATB Interface 1 byte countt Mask */ - -#define TPI_ITFTTD0_ATB_IF1_data2_Pos 16U /*!< TPI ITFTTD0: ATB Interface 1 data2 Position */ -#define TPI_ITFTTD0_ATB_IF1_data2_Msk (0xFFUL << TPI_ITFTTD0_ATB_IF1_data1_Pos) /*!< TPI ITFTTD0: ATB Interface 1 data2 Mask */ - -#define TPI_ITFTTD0_ATB_IF1_data1_Pos 8U /*!< TPI ITFTTD0: ATB Interface 1 data1 Position */ -#define TPI_ITFTTD0_ATB_IF1_data1_Msk (0xFFUL << TPI_ITFTTD0_ATB_IF1_data1_Pos) /*!< TPI ITFTTD0: ATB Interface 1 data1 Mask */ - -#define TPI_ITFTTD0_ATB_IF1_data0_Pos 0U /*!< TPI ITFTTD0: ATB Interface 1 data0 Position */ -#define TPI_ITFTTD0_ATB_IF1_data0_Msk (0xFFUL /*<< TPI_ITFTTD0_ATB_IF1_data0_Pos*/) /*!< TPI ITFTTD0: ATB Interface 1 data0 Mask */ - -/* TPI Integration Test ATB Control Register 2 Register Definitions */ -#define TPI_ITATBCTR2_AFVALID2S_Pos 1U /*!< TPI ITATBCTR2: AFVALID2S Position */ -#define TPI_ITATBCTR2_AFVALID2S_Msk (0x1UL << TPI_ITATBCTR2_AFVALID2S_Pos) /*!< TPI ITATBCTR2: AFVALID2SS Mask */ - -#define TPI_ITATBCTR2_AFVALID1S_Pos 1U /*!< TPI ITATBCTR2: AFVALID1S Position */ -#define TPI_ITATBCTR2_AFVALID1S_Msk (0x1UL << TPI_ITATBCTR2_AFVALID1S_Pos) /*!< TPI ITATBCTR2: AFVALID1SS Mask */ - -#define TPI_ITATBCTR2_ATREADY2S_Pos 0U /*!< TPI ITATBCTR2: ATREADY2S Position */ -#define TPI_ITATBCTR2_ATREADY2S_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2S_Pos*/) /*!< TPI ITATBCTR2: ATREADY2S Mask */ - -#define TPI_ITATBCTR2_ATREADY1S_Pos 0U /*!< TPI ITATBCTR2: ATREADY1S Position */ -#define TPI_ITATBCTR2_ATREADY1S_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1S_Pos*/) /*!< TPI ITATBCTR2: ATREADY1S Mask */ - -/* TPI Integration Test FIFO Test Data 1 Register Definitions */ -#define TPI_ITFTTD1_ATB_IF2_ATVALID_Pos 29U /*!< TPI ITFTTD1: ATB Interface 2 ATVALID Position */ -#define TPI_ITFTTD1_ATB_IF2_ATVALID_Msk (0x3UL << TPI_ITFTTD1_ATB_IF2_ATVALID_Pos) /*!< TPI ITFTTD1: ATB Interface 2 ATVALID Mask */ - -#define TPI_ITFTTD1_ATB_IF2_bytecount_Pos 27U /*!< TPI ITFTTD1: ATB Interface 2 byte count Position */ -#define TPI_ITFTTD1_ATB_IF2_bytecount_Msk (0x3UL << TPI_ITFTTD1_ATB_IF2_bytecount_Pos) /*!< TPI ITFTTD1: ATB Interface 2 byte count Mask */ - -#define TPI_ITFTTD1_ATB_IF1_ATVALID_Pos 26U /*!< TPI ITFTTD1: ATB Interface 1 ATVALID Position */ -#define TPI_ITFTTD1_ATB_IF1_ATVALID_Msk (0x3UL << TPI_ITFTTD1_ATB_IF1_ATVALID_Pos) /*!< TPI ITFTTD1: ATB Interface 1 ATVALID Mask */ - -#define TPI_ITFTTD1_ATB_IF1_bytecount_Pos 24U /*!< TPI ITFTTD1: ATB Interface 1 byte count Position */ -#define TPI_ITFTTD1_ATB_IF1_bytecount_Msk (0x3UL << TPI_ITFTTD1_ATB_IF1_bytecount_Pos) /*!< TPI ITFTTD1: ATB Interface 1 byte countt Mask */ - -#define TPI_ITFTTD1_ATB_IF2_data2_Pos 16U /*!< TPI ITFTTD1: ATB Interface 2 data2 Position */ -#define TPI_ITFTTD1_ATB_IF2_data2_Msk (0xFFUL << TPI_ITFTTD1_ATB_IF2_data1_Pos) /*!< TPI ITFTTD1: ATB Interface 2 data2 Mask */ - -#define TPI_ITFTTD1_ATB_IF2_data1_Pos 8U /*!< TPI ITFTTD1: ATB Interface 2 data1 Position */ -#define TPI_ITFTTD1_ATB_IF2_data1_Msk (0xFFUL << TPI_ITFTTD1_ATB_IF2_data1_Pos) /*!< TPI ITFTTD1: ATB Interface 2 data1 Mask */ - -#define TPI_ITFTTD1_ATB_IF2_data0_Pos 0U /*!< TPI ITFTTD1: ATB Interface 2 data0 Position */ -#define TPI_ITFTTD1_ATB_IF2_data0_Msk (0xFFUL /*<< TPI_ITFTTD1_ATB_IF2_data0_Pos*/) /*!< TPI ITFTTD1: ATB Interface 2 data0 Mask */ - -/* TPI Integration Test ATB Control Register 0 Definitions */ -#define TPI_ITATBCTR0_AFVALID2S_Pos 1U /*!< TPI ITATBCTR0: AFVALID2S Position */ -#define TPI_ITATBCTR0_AFVALID2S_Msk (0x1UL << TPI_ITATBCTR0_AFVALID2S_Pos) /*!< TPI ITATBCTR0: AFVALID2SS Mask */ - -#define TPI_ITATBCTR0_AFVALID1S_Pos 1U /*!< TPI ITATBCTR0: AFVALID1S Position */ -#define TPI_ITATBCTR0_AFVALID1S_Msk (0x1UL << TPI_ITATBCTR0_AFVALID1S_Pos) /*!< TPI ITATBCTR0: AFVALID1SS Mask */ - -#define TPI_ITATBCTR0_ATREADY2S_Pos 0U /*!< TPI ITATBCTR0: ATREADY2S Position */ -#define TPI_ITATBCTR0_ATREADY2S_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2S_Pos*/) /*!< TPI ITATBCTR0: ATREADY2S Mask */ - -#define TPI_ITATBCTR0_ATREADY1S_Pos 0U /*!< TPI ITATBCTR0: ATREADY1S Position */ -#define TPI_ITATBCTR0_ATREADY1S_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1S_Pos*/) /*!< TPI ITATBCTR0: ATREADY1S Mask */ - -/* TPI Integration Mode Control Register Definitions */ -#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ -#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ - -/* TPI DEVID Register Definitions */ -#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ -#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ - -#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ -#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ - -#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ -#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ - -#define TPI_DEVID_FIFOSZ_Pos 6U /*!< TPI DEVID: FIFOSZ Position */ -#define TPI_DEVID_FIFOSZ_Msk (0x7UL << TPI_DEVID_FIFOSZ_Pos) /*!< TPI DEVID: FIFOSZ Mask */ - -#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ -#define TPI_DEVID_NrTraceInput_Msk (0x3FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ - -/* TPI DEVTYPE Register Definitions */ -#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ -#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ - -#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ -#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ - -/*@}*/ /* end of group CMSIS_TPI */ - - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_MPU Memory Protection Unit (MPU) - \brief Type definitions for the Memory Protection Unit (MPU) - @{ - */ - -/** - \brief Structure type to access the Memory Protection Unit (MPU). - */ -typedef struct -{ - __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ - __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region Number Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ - __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) MPU Region Limit Address Register */ - uint32_t RESERVED0[7U]; - union { - __IOM uint32_t MAIR[2]; - struct { - __IOM uint32_t MAIR0; /*!< Offset: 0x030 (R/W) MPU Memory Attribute Indirection Register 0 */ - __IOM uint32_t MAIR1; /*!< Offset: 0x034 (R/W) MPU Memory Attribute Indirection Register 1 */ - }; - }; -} MPU_Type; - -#define MPU_TYPE_RALIASES 1U - -/* MPU Type Register Definitions */ -#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ -#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ - -#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ -#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ - -#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ -#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ - -/* MPU Control Register Definitions */ -#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ -#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ - -#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ -#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ - -#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ -#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ - -/* MPU Region Number Register Definitions */ -#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ -#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ - -/* MPU Region Base Address Register Definitions */ -#define MPU_RBAR_BASE_Pos 5U /*!< MPU RBAR: BASE Position */ -#define MPU_RBAR_BASE_Msk (0x7FFFFFFUL << MPU_RBAR_BASE_Pos) /*!< MPU RBAR: BASE Mask */ - -#define MPU_RBAR_SH_Pos 3U /*!< MPU RBAR: SH Position */ -#define MPU_RBAR_SH_Msk (0x3UL << MPU_RBAR_SH_Pos) /*!< MPU RBAR: SH Mask */ - -#define MPU_RBAR_AP_Pos 1U /*!< MPU RBAR: AP Position */ -#define MPU_RBAR_AP_Msk (0x3UL << MPU_RBAR_AP_Pos) /*!< MPU RBAR: AP Mask */ - -#define MPU_RBAR_XN_Pos 0U /*!< MPU RBAR: XN Position */ -#define MPU_RBAR_XN_Msk (01UL /*<< MPU_RBAR_XN_Pos*/) /*!< MPU RBAR: XN Mask */ - -/* MPU Region Limit Address Register Definitions */ -#define MPU_RLAR_LIMIT_Pos 5U /*!< MPU RLAR: LIMIT Position */ -#define MPU_RLAR_LIMIT_Msk (0x7FFFFFFUL << MPU_RLAR_LIMIT_Pos) /*!< MPU RLAR: LIMIT Mask */ - -#define MPU_RLAR_AttrIndx_Pos 1U /*!< MPU RLAR: AttrIndx Position */ -#define MPU_RLAR_AttrIndx_Msk (0x7UL << MPU_RLAR_AttrIndx_Pos) /*!< MPU RLAR: AttrIndx Mask */ - -#define MPU_RLAR_EN_Pos 0U /*!< MPU RLAR: EN Position */ -#define MPU_RLAR_EN_Msk (1UL /*<< MPU_RLAR_EN_Pos*/) /*!< MPU RLAR: EN Mask */ - -/* MPU Memory Attribute Indirection Register 0 Definitions */ -#define MPU_MAIR0_Attr3_Pos 24U /*!< MPU MAIR0: Attr3 Position */ -#define MPU_MAIR0_Attr3_Msk (0xFFUL << MPU_MAIR0_Attr3_Pos) /*!< MPU MAIR0: Attr3 Mask */ - -#define MPU_MAIR0_Attr2_Pos 16U /*!< MPU MAIR0: Attr2 Position */ -#define MPU_MAIR0_Attr2_Msk (0xFFUL << MPU_MAIR0_Attr2_Pos) /*!< MPU MAIR0: Attr2 Mask */ - -#define MPU_MAIR0_Attr1_Pos 8U /*!< MPU MAIR0: Attr1 Position */ -#define MPU_MAIR0_Attr1_Msk (0xFFUL << MPU_MAIR0_Attr1_Pos) /*!< MPU MAIR0: Attr1 Mask */ - -#define MPU_MAIR0_Attr0_Pos 0U /*!< MPU MAIR0: Attr0 Position */ -#define MPU_MAIR0_Attr0_Msk (0xFFUL /*<< MPU_MAIR0_Attr0_Pos*/) /*!< MPU MAIR0: Attr0 Mask */ - -/* MPU Memory Attribute Indirection Register 1 Definitions */ -#define MPU_MAIR1_Attr7_Pos 24U /*!< MPU MAIR1: Attr7 Position */ -#define MPU_MAIR1_Attr7_Msk (0xFFUL << MPU_MAIR1_Attr7_Pos) /*!< MPU MAIR1: Attr7 Mask */ - -#define MPU_MAIR1_Attr6_Pos 16U /*!< MPU MAIR1: Attr6 Position */ -#define MPU_MAIR1_Attr6_Msk (0xFFUL << MPU_MAIR1_Attr6_Pos) /*!< MPU MAIR1: Attr6 Mask */ - -#define MPU_MAIR1_Attr5_Pos 8U /*!< MPU MAIR1: Attr5 Position */ -#define MPU_MAIR1_Attr5_Msk (0xFFUL << MPU_MAIR1_Attr5_Pos) /*!< MPU MAIR1: Attr5 Mask */ - -#define MPU_MAIR1_Attr4_Pos 0U /*!< MPU MAIR1: Attr4 Position */ -#define MPU_MAIR1_Attr4_Msk (0xFFUL /*<< MPU_MAIR1_Attr4_Pos*/) /*!< MPU MAIR1: Attr4 Mask */ - -/*@} end of group CMSIS_MPU */ -#endif - - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SAU Security Attribution Unit (SAU) - \brief Type definitions for the Security Attribution Unit (SAU) - @{ - */ - -/** - \brief Structure type to access the Security Attribution Unit (SAU). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SAU Control Register */ - __IM uint32_t TYPE; /*!< Offset: 0x004 (R/ ) SAU Type Register */ -#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) SAU Region Number Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) SAU Region Base Address Register */ - __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) SAU Region Limit Address Register */ -#endif -} SAU_Type; - -/* SAU Control Register Definitions */ -#define SAU_CTRL_ALLNS_Pos 1U /*!< SAU CTRL: ALLNS Position */ -#define SAU_CTRL_ALLNS_Msk (1UL << SAU_CTRL_ALLNS_Pos) /*!< SAU CTRL: ALLNS Mask */ - -#define SAU_CTRL_ENABLE_Pos 0U /*!< SAU CTRL: ENABLE Position */ -#define SAU_CTRL_ENABLE_Msk (1UL /*<< SAU_CTRL_ENABLE_Pos*/) /*!< SAU CTRL: ENABLE Mask */ - -/* SAU Type Register Definitions */ -#define SAU_TYPE_SREGION_Pos 0U /*!< SAU TYPE: SREGION Position */ -#define SAU_TYPE_SREGION_Msk (0xFFUL /*<< SAU_TYPE_SREGION_Pos*/) /*!< SAU TYPE: SREGION Mask */ - -#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) -/* SAU Region Number Register Definitions */ -#define SAU_RNR_REGION_Pos 0U /*!< SAU RNR: REGION Position */ -#define SAU_RNR_REGION_Msk (0xFFUL /*<< SAU_RNR_REGION_Pos*/) /*!< SAU RNR: REGION Mask */ - -/* SAU Region Base Address Register Definitions */ -#define SAU_RBAR_BADDR_Pos 5U /*!< SAU RBAR: BADDR Position */ -#define SAU_RBAR_BADDR_Msk (0x7FFFFFFUL << SAU_RBAR_BADDR_Pos) /*!< SAU RBAR: BADDR Mask */ - -/* SAU Region Limit Address Register Definitions */ -#define SAU_RLAR_LADDR_Pos 5U /*!< SAU RLAR: LADDR Position */ -#define SAU_RLAR_LADDR_Msk (0x7FFFFFFUL << SAU_RLAR_LADDR_Pos) /*!< SAU RLAR: LADDR Mask */ - -#define SAU_RLAR_NSC_Pos 1U /*!< SAU RLAR: NSC Position */ -#define SAU_RLAR_NSC_Msk (1UL << SAU_RLAR_NSC_Pos) /*!< SAU RLAR: NSC Mask */ - -#define SAU_RLAR_ENABLE_Pos 0U /*!< SAU RLAR: ENABLE Position */ -#define SAU_RLAR_ENABLE_Msk (1UL /*<< SAU_RLAR_ENABLE_Pos*/) /*!< SAU RLAR: ENABLE Mask */ - -#endif /* defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) */ - -/*@} end of group CMSIS_SAU */ -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief Type definitions for the Core Debug Registers - @{ - */ - -/** - \brief Structure type to access the Core Debug Register (CoreDebug). - */ -typedef struct -{ - __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ - __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ - __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ - __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ - uint32_t RESERVED4[1U]; - __IOM uint32_t DAUTHCTRL; /*!< Offset: 0x014 (R/W) Debug Authentication Control Register */ - __IOM uint32_t DSCSR; /*!< Offset: 0x018 (R/W) Debug Security Control and Status Register */ -} CoreDebug_Type; - -/* Debug Halting Control and Status Register Definitions */ -#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ -#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ - -#define CoreDebug_DHCSR_S_RESTART_ST_Pos 26U /*!< CoreDebug DHCSR: S_RESTART_ST Position */ -#define CoreDebug_DHCSR_S_RESTART_ST_Msk (1UL << CoreDebug_DHCSR_S_RESTART_ST_Pos) /*!< CoreDebug DHCSR: S_RESTART_ST Mask */ - -#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ -#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ - -#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ -#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ - -#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ -#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ - -#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ -#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ - -#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ -#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ - -#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ -#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ - -#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ -#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ - -#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ -#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ - -#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ -#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ - -#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ -#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ - -/* Debug Core Register Selector Register Definitions */ -#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ -#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ - -#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ -#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ - -/* Debug Exception and Monitor Control Register */ -#define CoreDebug_DEMCR_DWTENA_Pos 24U /*!< CoreDebug DEMCR: DWTENA Position */ -#define CoreDebug_DEMCR_DWTENA_Msk (1UL << CoreDebug_DEMCR_DWTENA_Pos) /*!< CoreDebug DEMCR: DWTENA Mask */ - -#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ -#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ - -#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ -#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ - -/* Debug Authentication Control Register Definitions */ -#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos 3U /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Position */ -#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Mask */ - -#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos 2U /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Position */ -#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Msk (1UL << CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos) /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Mask */ - -#define CoreDebug_DAUTHCTRL_INTSPIDEN_Pos 1U /*!< CoreDebug DAUTHCTRL: INTSPIDEN Position */ -#define CoreDebug_DAUTHCTRL_INTSPIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPIDEN Mask */ - -#define CoreDebug_DAUTHCTRL_SPIDENSEL_Pos 0U /*!< CoreDebug DAUTHCTRL: SPIDENSEL Position */ -#define CoreDebug_DAUTHCTRL_SPIDENSEL_Msk (1UL /*<< CoreDebug_DAUTHCTRL_SPIDENSEL_Pos*/) /*!< CoreDebug DAUTHCTRL: SPIDENSEL Mask */ - -/* Debug Security Control and Status Register Definitions */ -#define CoreDebug_DSCSR_CDS_Pos 16U /*!< CoreDebug DSCSR: CDS Position */ -#define CoreDebug_DSCSR_CDS_Msk (1UL << CoreDebug_DSCSR_CDS_Pos) /*!< CoreDebug DSCSR: CDS Mask */ - -#define CoreDebug_DSCSR_SBRSEL_Pos 1U /*!< CoreDebug DSCSR: SBRSEL Position */ -#define CoreDebug_DSCSR_SBRSEL_Msk (1UL << CoreDebug_DSCSR_SBRSEL_Pos) /*!< CoreDebug DSCSR: SBRSEL Mask */ - -#define CoreDebug_DSCSR_SBRSELEN_Pos 0U /*!< CoreDebug DSCSR: SBRSELEN Position */ -#define CoreDebug_DSCSR_SBRSELEN_Msk (1UL /*<< CoreDebug_DSCSR_SBRSELEN_Pos*/) /*!< CoreDebug DSCSR: SBRSELEN Mask */ - -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ - #define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ - #define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ - #define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ - #define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ - #define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ - #define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ - #define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - - - #define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ - #define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ - #define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ - #define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ - #define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ - #define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE ) /*!< Core Debug configuration struct */ - - #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ - #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ - #endif - - #if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - #define SAU_BASE (SCS_BASE + 0x0DD0UL) /*!< Security Attribution Unit */ - #define SAU ((SAU_Type *) SAU_BASE ) /*!< Security Attribution Unit */ - #endif - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - #define SCS_BASE_NS (0xE002E000UL) /*!< System Control Space Base Address (non-secure address space) */ - #define CoreDebug_BASE_NS (0xE002EDF0UL) /*!< Core Debug Base Address (non-secure address space) */ - #define SysTick_BASE_NS (SCS_BASE_NS + 0x0010UL) /*!< SysTick Base Address (non-secure address space) */ - #define NVIC_BASE_NS (SCS_BASE_NS + 0x0100UL) /*!< NVIC Base Address (non-secure address space) */ - #define SCB_BASE_NS (SCS_BASE_NS + 0x0D00UL) /*!< System Control Block Base Address (non-secure address space) */ - - #define SCB_NS ((SCB_Type *) SCB_BASE_NS ) /*!< SCB configuration struct (non-secure address space) */ - #define SysTick_NS ((SysTick_Type *) SysTick_BASE_NS ) /*!< SysTick configuration struct (non-secure address space) */ - #define NVIC_NS ((NVIC_Type *) NVIC_BASE_NS ) /*!< NVIC configuration struct (non-secure address space) */ - #define CoreDebug_NS ((CoreDebug_Type *) CoreDebug_BASE_NS) /*!< Core Debug configuration struct (non-secure address space) */ - - #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE_NS (SCS_BASE_NS + 0x0D90UL) /*!< Memory Protection Unit (non-secure address space) */ - #define MPU_NS ((MPU_Type *) MPU_BASE_NS ) /*!< Memory Protection Unit (non-secure address space) */ - #endif - -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else -/*#define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping not available for Cortex-M23 */ -/*#define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping not available for Cortex-M23 */ - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ - #define NVIC_GetActive __NVIC_GetActive - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* Special LR values for Secure/Non-Secure call handling and exception handling */ - -/* Function Return Payload (from ARMv8-M Architecture Reference Manual) LR value on entry from Secure BLXNS */ -#define FNC_RETURN (0xFEFFFFFFUL) /* bit [0] ignored when processing a branch */ - -/* The following EXC_RETURN mask values are used to evaluate the LR on exception entry */ -#define EXC_RETURN_PREFIX (0xFF000000UL) /* bits [31:24] set to indicate an EXC_RETURN value */ -#define EXC_RETURN_S (0x00000040UL) /* bit [6] stack used to push registers: 0=Non-secure 1=Secure */ -#define EXC_RETURN_DCRS (0x00000020UL) /* bit [5] stacking rules for called registers: 0=skipped 1=saved */ -#define EXC_RETURN_FTYPE (0x00000010UL) /* bit [4] allocate stack for floating-point context: 0=done 1=skipped */ -#define EXC_RETURN_MODE (0x00000008UL) /* bit [3] processor mode for return: 0=Handler mode 1=Thread mode */ -#define EXC_RETURN_SPSEL (0x00000002UL) /* bit [1] stack pointer used to restore context: 0=MSP 1=PSP */ -#define EXC_RETURN_ES (0x00000001UL) /* bit [0] security state exception was taken to: 0=Non-secure 1=Secure */ - -/* Integrity Signature (from ARMv8-M Architecture Reference Manual) for exception context stacking */ -#if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) /* Value for processors with floating-point extension: */ -#define EXC_INTEGRITY_SIGNATURE (0xFEFA125AUL) /* bit [0] SFTC must match LR bit[4] EXC_RETURN_FTYPE */ -#else -#define EXC_INTEGRITY_SIGNATURE (0xFEFA125BUL) /* Value for processors without floating-point extension */ -#endif - - -/* Interrupt Priorities are WORD accessible only under Armv6-M */ -/* The following MACROS handle generation of the register offset and byte masks */ -#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) -#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) -#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) - -#define __NVIC_SetPriorityGrouping(X) (void)(X) -#define __NVIC_GetPriorityGrouping() (0U) - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt - \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief Get Interrupt Target State - \details Reads the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - \return 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_GetTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Target State - \details Sets the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_SetTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] |= ((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Clear Interrupt Target State - \details Clears the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_ClearTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] &= ~((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IPR[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IPR[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } - else - { - SCB->SHPR[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHPR[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IPR[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return((uint32_t)(((SCB->SHPR[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Encode Priority - \details Encodes the priority for an interrupt with the given priority group, - preemptive priority value, and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Used priority group. - \param [in] PreemptPriority Preemptive priority value (starting from 0). - \param [in] SubPriority Subpriority value (starting from 0). - \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). - */ -__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - return ( - ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | - ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) - ); -} - - -/** - \brief Decode Priority - \details Decodes an interrupt priority value with a given priority group to - preemptive priority value and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. - \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). - \param [in] PriorityGroup Used priority group. - \param [out] pPreemptPriority Preemptive priority value (starting from 0). - \param [out] pSubPriority Subpriority value (starting from 0). - */ -__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); - *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); -} - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - VTOR must been relocated to SRAM before. - If VTOR is not present address 0 must be mapped to SRAM. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) - uint32_t *vectors = (uint32_t *)SCB->VTOR; -#else - uint32_t *vectors = (uint32_t *)0x0U; -#endif - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ -#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) - uint32_t *vectors = (uint32_t *)SCB->VTOR; -#else - uint32_t *vectors = (uint32_t *)0x0U; -#endif - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - SCB_AIRCR_SYSRESETREQ_Msk); - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief Enable Interrupt (non-secure) - \details Enables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_EnableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status (non-secure) - \details Returns a device specific interrupt enable status from the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetEnableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt (non-secure) - \details Disables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_DisableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Pending Interrupt (non-secure) - \details Reads the NVIC pending register in the non-secure NVIC when in secure state and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt (non-secure) - \details Sets the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_SetPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt (non-secure) - \details Clears the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_ClearPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt (non-secure) - \details Reads the active register in non-secure NVIC when in secure state and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetActive_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Priority (non-secure) - \details Sets the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every non-secure processor exception. - */ -__STATIC_INLINE void TZ_NVIC_SetPriority_NS(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->IPR[_IP_IDX(IRQn)] = ((uint32_t)(NVIC_NS->IPR[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } - else - { - SCB_NS->SHPR[_SHP_IDX(IRQn)] = ((uint32_t)(SCB_NS->SHPR[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } -} - - -/** - \brief Get Interrupt Priority (non-secure) - \details Reads the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetPriority_NS(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->IPR[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return((uint32_t)(((SCB_NS->SHPR[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } -} -#endif /* defined (__ARM_FEATURE_CMSE) &&(__ARM_FEATURE_CMSE == 3U) */ - -/*@} end of CMSIS_Core_NVICFunctions */ - -/* ########################## MPU functions #################################### */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - -#include "mpu_armv8.h" - -#endif - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - return 0U; /* No FPU */ -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ########################## SAU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SAUFunctions SAU Functions - \brief Functions that configure the SAU. - @{ - */ - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - -/** - \brief Enable SAU - \details Enables the Security Attribution Unit (SAU). - */ -__STATIC_INLINE void TZ_SAU_Enable(void) -{ - SAU->CTRL |= (SAU_CTRL_ENABLE_Msk); -} - - - -/** - \brief Disable SAU - \details Disables the Security Attribution Unit (SAU). - */ -__STATIC_INLINE void TZ_SAU_Disable(void) -{ - SAU->CTRL &= ~(SAU_CTRL_ENABLE_Msk); -} - -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - -/*@} end of CMSIS_Core_SAUFunctions */ - - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief System Tick Configuration (non-secure) - \details Initializes the non-secure System Timer and its interrupt when in secure state, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function TZ_SysTick_Config_NS is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - - */ -__STATIC_INLINE uint32_t TZ_SysTick_Config_NS(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick_NS->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - TZ_NVIC_SetPriority_NS (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick_NS->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick_NS->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM23_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_cm23.h + * @brief CMSIS Cortex-M23 Core Peripheral Access Layer Header File + * @version V5.0.7 + * @date 22. June 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_CM23_H_GENERIC +#define __CORE_CM23_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup Cortex_M23 + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS definitions */ +#define __CM23_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __CM23_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __CM23_CMSIS_VERSION ((__CM23_CMSIS_VERSION_MAIN << 16U) | \ + __CM23_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_M (23U) /*!< Cortex-M Core */ + +/** __FPU_USED indicates whether an FPU is used or not. + This core does not support an FPU at all +*/ +#define __FPU_USED 0U + +#if defined ( __CC_ARM ) + #if defined __TARGET_FPU_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined __ARM_PCS_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __ICCARM__ ) + #if defined __ARMVFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TI_ARM__ ) + #if defined __TI_VFP_SUPPORT__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TASKING__ ) + #if defined __FPU_VFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM23_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_CM23_H_DEPENDANT +#define __CORE_CM23_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __CM23_REV + #define __CM23_REV 0x0000U + #warning "__CM23_REV not defined in device header file; using default!" + #endif + + #ifndef __FPU_PRESENT + #define __FPU_PRESENT 0U + #warning "__FPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __MPU_PRESENT + #define __MPU_PRESENT 0U + #warning "__MPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __SAUREGION_PRESENT + #define __SAUREGION_PRESENT 0U + #warning "__SAUREGION_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __VTOR_PRESENT + #define __VTOR_PRESENT 0U + #warning "__VTOR_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 2U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif + + #ifndef __ETM_PRESENT + #define __ETM_PRESENT 0U + #warning "__ETM_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __MTB_PRESENT + #define __MTB_PRESENT 0U + #warning "__MTB_PRESENT not defined in device header file; using default!" + #endif + +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group Cortex_M23 */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + - Core Debug Register + - Core MPU Register + - Core SAU Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ + uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ + uint32_t SPSEL:1; /*!< bit: 1 Stack-pointer select */ + uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ +#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[16U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[16U]; + __IOM uint32_t ICER[16U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[16U]; + __IOM uint32_t ISPR[16U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[16U]; + __IOM uint32_t ICPR[16U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[16U]; + __IOM uint32_t IABR[16U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ + uint32_t RESERVED4[16U]; + __IOM uint32_t ITNS[16U]; /*!< Offset: 0x280 (R/W) Interrupt Non-Secure State Register */ + uint32_t RESERVED5[16U]; + __IOM uint32_t IPR[124U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ +} NVIC_Type; + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) + __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ +#else + uint32_t RESERVED0; +#endif + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + uint32_t RESERVED1; + __IOM uint32_t SHPR[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_PENDNMISET_Pos 31U /*!< SCB ICSR: PENDNMISET Position */ +#define SCB_ICSR_PENDNMISET_Msk (1UL << SCB_ICSR_PENDNMISET_Pos) /*!< SCB ICSR: PENDNMISET Mask */ + +#define SCB_ICSR_NMIPENDSET_Pos SCB_ICSR_PENDNMISET_Pos /*!< SCB ICSR: NMIPENDSET Position, backward compatibility */ +#define SCB_ICSR_NMIPENDSET_Msk SCB_ICSR_PENDNMISET_Msk /*!< SCB ICSR: NMIPENDSET Mask, backward compatibility */ + +#define SCB_ICSR_PENDNMICLR_Pos 30U /*!< SCB ICSR: PENDNMICLR Position */ +#define SCB_ICSR_PENDNMICLR_Msk (1UL << SCB_ICSR_PENDNMICLR_Pos) /*!< SCB ICSR: PENDNMICLR Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_STTNS_Pos 24U /*!< SCB ICSR: STTNS Position (Security Extension) */ +#define SCB_ICSR_STTNS_Msk (1UL << SCB_ICSR_STTNS_Pos) /*!< SCB ICSR: STTNS Mask (Security Extension) */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ +#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) +/* SCB Vector Table Offset Register Definitions */ +#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ +#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ +#endif + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_PRIS_Pos 14U /*!< SCB AIRCR: PRIS Position */ +#define SCB_AIRCR_PRIS_Msk (1UL << SCB_AIRCR_PRIS_Pos) /*!< SCB AIRCR: PRIS Mask */ + +#define SCB_AIRCR_BFHFNMINS_Pos 13U /*!< SCB AIRCR: BFHFNMINS Position */ +#define SCB_AIRCR_BFHFNMINS_Msk (1UL << SCB_AIRCR_BFHFNMINS_Pos) /*!< SCB AIRCR: BFHFNMINS Mask */ + +#define SCB_AIRCR_SYSRESETREQS_Pos 3U /*!< SCB AIRCR: SYSRESETREQS Position */ +#define SCB_AIRCR_SYSRESETREQS_Msk (1UL << SCB_AIRCR_SYSRESETREQS_Pos) /*!< SCB AIRCR: SYSRESETREQS Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEPS_Pos 3U /*!< SCB SCR: SLEEPDEEPS Position */ +#define SCB_SCR_SLEEPDEEPS_Msk (1UL << SCB_SCR_SLEEPDEEPS_Pos) /*!< SCB SCR: SLEEPDEEPS Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_BP_Pos 18U /*!< SCB CCR: BP Position */ +#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos) /*!< SCB CCR: BP Mask */ + +#define SCB_CCR_IC_Pos 17U /*!< SCB CCR: IC Position */ +#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos) /*!< SCB CCR: IC Mask */ + +#define SCB_CCR_DC_Pos 16U /*!< SCB CCR: DC Position */ +#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos) /*!< SCB CCR: DC Mask */ + +#define SCB_CCR_STKOFHFNMIGN_Pos 10U /*!< SCB CCR: STKOFHFNMIGN Position */ +#define SCB_CCR_STKOFHFNMIGN_Msk (1UL << SCB_CCR_STKOFHFNMIGN_Pos) /*!< SCB CCR: STKOFHFNMIGN Mask */ + +#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ +#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ + +#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ +#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ +#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_HARDFAULTPENDED_Pos 21U /*!< SCB SHCSR: HARDFAULTPENDED Position */ +#define SCB_SHCSR_HARDFAULTPENDED_Msk (1UL << SCB_SHCSR_HARDFAULTPENDED_Pos) /*!< SCB SHCSR: HARDFAULTPENDED Mask */ + +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ +#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ + +#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ +#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ + +#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ +#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ + +#define SCB_SHCSR_NMIACT_Pos 5U /*!< SCB SHCSR: NMIACT Position */ +#define SCB_SHCSR_NMIACT_Msk (1UL << SCB_SHCSR_NMIACT_Pos) /*!< SCB SHCSR: NMIACT Mask */ + +#define SCB_SHCSR_HARDFAULTACT_Pos 2U /*!< SCB SHCSR: HARDFAULTACT Position */ +#define SCB_SHCSR_HARDFAULTACT_Msk (1UL << SCB_SHCSR_HARDFAULTACT_Pos) /*!< SCB SHCSR: HARDFAULTACT Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) + \brief Type definitions for the Data Watchpoint and Trace (DWT) + @{ + */ + +/** + \brief Structure type to access the Data Watchpoint and Trace Register (DWT). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ + uint32_t RESERVED0[6U]; + __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ + __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ + uint32_t RESERVED1[1U]; + __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ + uint32_t RESERVED2[1U]; + __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ + uint32_t RESERVED3[1U]; + __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ + uint32_t RESERVED4[1U]; + __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ + uint32_t RESERVED5[1U]; + __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ + uint32_t RESERVED6[1U]; + __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ + uint32_t RESERVED7[1U]; + __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ + uint32_t RESERVED8[1U]; + __IOM uint32_t COMP4; /*!< Offset: 0x060 (R/W) Comparator Register 4 */ + uint32_t RESERVED9[1U]; + __IOM uint32_t FUNCTION4; /*!< Offset: 0x068 (R/W) Function Register 4 */ + uint32_t RESERVED10[1U]; + __IOM uint32_t COMP5; /*!< Offset: 0x070 (R/W) Comparator Register 5 */ + uint32_t RESERVED11[1U]; + __IOM uint32_t FUNCTION5; /*!< Offset: 0x078 (R/W) Function Register 5 */ + uint32_t RESERVED12[1U]; + __IOM uint32_t COMP6; /*!< Offset: 0x080 (R/W) Comparator Register 6 */ + uint32_t RESERVED13[1U]; + __IOM uint32_t FUNCTION6; /*!< Offset: 0x088 (R/W) Function Register 6 */ + uint32_t RESERVED14[1U]; + __IOM uint32_t COMP7; /*!< Offset: 0x090 (R/W) Comparator Register 7 */ + uint32_t RESERVED15[1U]; + __IOM uint32_t FUNCTION7; /*!< Offset: 0x098 (R/W) Function Register 7 */ + uint32_t RESERVED16[1U]; + __IOM uint32_t COMP8; /*!< Offset: 0x0A0 (R/W) Comparator Register 8 */ + uint32_t RESERVED17[1U]; + __IOM uint32_t FUNCTION8; /*!< Offset: 0x0A8 (R/W) Function Register 8 */ + uint32_t RESERVED18[1U]; + __IOM uint32_t COMP9; /*!< Offset: 0x0B0 (R/W) Comparator Register 9 */ + uint32_t RESERVED19[1U]; + __IOM uint32_t FUNCTION9; /*!< Offset: 0x0B8 (R/W) Function Register 9 */ + uint32_t RESERVED20[1U]; + __IOM uint32_t COMP10; /*!< Offset: 0x0C0 (R/W) Comparator Register 10 */ + uint32_t RESERVED21[1U]; + __IOM uint32_t FUNCTION10; /*!< Offset: 0x0C8 (R/W) Function Register 10 */ + uint32_t RESERVED22[1U]; + __IOM uint32_t COMP11; /*!< Offset: 0x0D0 (R/W) Comparator Register 11 */ + uint32_t RESERVED23[1U]; + __IOM uint32_t FUNCTION11; /*!< Offset: 0x0D8 (R/W) Function Register 11 */ + uint32_t RESERVED24[1U]; + __IOM uint32_t COMP12; /*!< Offset: 0x0E0 (R/W) Comparator Register 12 */ + uint32_t RESERVED25[1U]; + __IOM uint32_t FUNCTION12; /*!< Offset: 0x0E8 (R/W) Function Register 12 */ + uint32_t RESERVED26[1U]; + __IOM uint32_t COMP13; /*!< Offset: 0x0F0 (R/W) Comparator Register 13 */ + uint32_t RESERVED27[1U]; + __IOM uint32_t FUNCTION13; /*!< Offset: 0x0F8 (R/W) Function Register 13 */ + uint32_t RESERVED28[1U]; + __IOM uint32_t COMP14; /*!< Offset: 0x100 (R/W) Comparator Register 14 */ + uint32_t RESERVED29[1U]; + __IOM uint32_t FUNCTION14; /*!< Offset: 0x108 (R/W) Function Register 14 */ + uint32_t RESERVED30[1U]; + __IOM uint32_t COMP15; /*!< Offset: 0x110 (R/W) Comparator Register 15 */ + uint32_t RESERVED31[1U]; + __IOM uint32_t FUNCTION15; /*!< Offset: 0x118 (R/W) Function Register 15 */ +} DWT_Type; + +/* DWT Control Register Definitions */ +#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ +#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ + +#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ +#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ + +#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ +#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ + +#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ +#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ + +#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ +#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ + +/* DWT Comparator Function Register Definitions */ +#define DWT_FUNCTION_ID_Pos 27U /*!< DWT FUNCTION: ID Position */ +#define DWT_FUNCTION_ID_Msk (0x1FUL << DWT_FUNCTION_ID_Pos) /*!< DWT FUNCTION: ID Mask */ + +#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ +#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ + +#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ +#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ + +#define DWT_FUNCTION_ACTION_Pos 4U /*!< DWT FUNCTION: ACTION Position */ +#define DWT_FUNCTION_ACTION_Msk (0x3UL << DWT_FUNCTION_ACTION_Pos) /*!< DWT FUNCTION: ACTION Mask */ + +#define DWT_FUNCTION_MATCH_Pos 0U /*!< DWT FUNCTION: MATCH Position */ +#define DWT_FUNCTION_MATCH_Msk (0xFUL /*<< DWT_FUNCTION_MATCH_Pos*/) /*!< DWT FUNCTION: MATCH Mask */ + +/*@}*/ /* end of group CMSIS_DWT */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_TPI Trace Port Interface (TPI) + \brief Type definitions for the Trace Port Interface (TPI) + @{ + */ + +/** + \brief Structure type to access the Trace Port Interface Register (TPI). + */ +typedef struct +{ + __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ + __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ + uint32_t RESERVED0[2U]; + __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ + uint32_t RESERVED1[55U]; + __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ + uint32_t RESERVED2[131U]; + __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ + __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ + __IOM uint32_t PSCR; /*!< Offset: 0x308 (R/W) Periodic Synchronization Control Register */ + uint32_t RESERVED3[759U]; + __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ + __IM uint32_t ITFTTD0; /*!< Offset: 0xEEC (R/ ) Integration Test FIFO Test Data 0 Register */ + __IOM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/W) Integration Test ATB Control Register 2 */ + uint32_t RESERVED4[1U]; + __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) Integration Test ATB Control Register 0 */ + __IM uint32_t ITFTTD1; /*!< Offset: 0xEFC (R/ ) Integration Test FIFO Test Data 1 Register */ + __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ + uint32_t RESERVED5[39U]; + __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ + __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ + uint32_t RESERVED7[8U]; + __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) Device Configuration Register */ + __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) Device Type Identifier Register */ +} TPI_Type; + +/* TPI Asynchronous Clock Prescaler Register Definitions */ +#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ +#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ + +/* TPI Selected Pin Protocol Register Definitions */ +#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ +#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ + +/* TPI Formatter and Flush Status Register Definitions */ +#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ +#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ + +#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ +#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ + +#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ +#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ + +#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ +#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ + +/* TPI Formatter and Flush Control Register Definitions */ +#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ +#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ + +#define TPI_FFCR_FOnMan_Pos 6U /*!< TPI FFCR: FOnMan Position */ +#define TPI_FFCR_FOnMan_Msk (0x1UL << TPI_FFCR_FOnMan_Pos) /*!< TPI FFCR: FOnMan Mask */ + +#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ +#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ + +/* TPI TRIGGER Register Definitions */ +#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ +#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ + +/* TPI Integration Test FIFO Test Data 0 Register Definitions */ +#define TPI_ITFTTD0_ATB_IF2_ATVALID_Pos 29U /*!< TPI ITFTTD0: ATB Interface 2 ATVALIDPosition */ +#define TPI_ITFTTD0_ATB_IF2_ATVALID_Msk (0x3UL << TPI_ITFTTD0_ATB_IF2_ATVALID_Pos) /*!< TPI ITFTTD0: ATB Interface 2 ATVALID Mask */ + +#define TPI_ITFTTD0_ATB_IF2_bytecount_Pos 27U /*!< TPI ITFTTD0: ATB Interface 2 byte count Position */ +#define TPI_ITFTTD0_ATB_IF2_bytecount_Msk (0x3UL << TPI_ITFTTD0_ATB_IF2_bytecount_Pos) /*!< TPI ITFTTD0: ATB Interface 2 byte count Mask */ + +#define TPI_ITFTTD0_ATB_IF1_ATVALID_Pos 26U /*!< TPI ITFTTD0: ATB Interface 1 ATVALID Position */ +#define TPI_ITFTTD0_ATB_IF1_ATVALID_Msk (0x3UL << TPI_ITFTTD0_ATB_IF1_ATVALID_Pos) /*!< TPI ITFTTD0: ATB Interface 1 ATVALID Mask */ + +#define TPI_ITFTTD0_ATB_IF1_bytecount_Pos 24U /*!< TPI ITFTTD0: ATB Interface 1 byte count Position */ +#define TPI_ITFTTD0_ATB_IF1_bytecount_Msk (0x3UL << TPI_ITFTTD0_ATB_IF1_bytecount_Pos) /*!< TPI ITFTTD0: ATB Interface 1 byte countt Mask */ + +#define TPI_ITFTTD0_ATB_IF1_data2_Pos 16U /*!< TPI ITFTTD0: ATB Interface 1 data2 Position */ +#define TPI_ITFTTD0_ATB_IF1_data2_Msk (0xFFUL << TPI_ITFTTD0_ATB_IF1_data1_Pos) /*!< TPI ITFTTD0: ATB Interface 1 data2 Mask */ + +#define TPI_ITFTTD0_ATB_IF1_data1_Pos 8U /*!< TPI ITFTTD0: ATB Interface 1 data1 Position */ +#define TPI_ITFTTD0_ATB_IF1_data1_Msk (0xFFUL << TPI_ITFTTD0_ATB_IF1_data1_Pos) /*!< TPI ITFTTD0: ATB Interface 1 data1 Mask */ + +#define TPI_ITFTTD0_ATB_IF1_data0_Pos 0U /*!< TPI ITFTTD0: ATB Interface 1 data0 Position */ +#define TPI_ITFTTD0_ATB_IF1_data0_Msk (0xFFUL /*<< TPI_ITFTTD0_ATB_IF1_data0_Pos*/) /*!< TPI ITFTTD0: ATB Interface 1 data0 Mask */ + +/* TPI Integration Test ATB Control Register 2 Register Definitions */ +#define TPI_ITATBCTR2_AFVALID2S_Pos 1U /*!< TPI ITATBCTR2: AFVALID2S Position */ +#define TPI_ITATBCTR2_AFVALID2S_Msk (0x1UL << TPI_ITATBCTR2_AFVALID2S_Pos) /*!< TPI ITATBCTR2: AFVALID2SS Mask */ + +#define TPI_ITATBCTR2_AFVALID1S_Pos 1U /*!< TPI ITATBCTR2: AFVALID1S Position */ +#define TPI_ITATBCTR2_AFVALID1S_Msk (0x1UL << TPI_ITATBCTR2_AFVALID1S_Pos) /*!< TPI ITATBCTR2: AFVALID1SS Mask */ + +#define TPI_ITATBCTR2_ATREADY2S_Pos 0U /*!< TPI ITATBCTR2: ATREADY2S Position */ +#define TPI_ITATBCTR2_ATREADY2S_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2S_Pos*/) /*!< TPI ITATBCTR2: ATREADY2S Mask */ + +#define TPI_ITATBCTR2_ATREADY1S_Pos 0U /*!< TPI ITATBCTR2: ATREADY1S Position */ +#define TPI_ITATBCTR2_ATREADY1S_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1S_Pos*/) /*!< TPI ITATBCTR2: ATREADY1S Mask */ + +/* TPI Integration Test FIFO Test Data 1 Register Definitions */ +#define TPI_ITFTTD1_ATB_IF2_ATVALID_Pos 29U /*!< TPI ITFTTD1: ATB Interface 2 ATVALID Position */ +#define TPI_ITFTTD1_ATB_IF2_ATVALID_Msk (0x3UL << TPI_ITFTTD1_ATB_IF2_ATVALID_Pos) /*!< TPI ITFTTD1: ATB Interface 2 ATVALID Mask */ + +#define TPI_ITFTTD1_ATB_IF2_bytecount_Pos 27U /*!< TPI ITFTTD1: ATB Interface 2 byte count Position */ +#define TPI_ITFTTD1_ATB_IF2_bytecount_Msk (0x3UL << TPI_ITFTTD1_ATB_IF2_bytecount_Pos) /*!< TPI ITFTTD1: ATB Interface 2 byte count Mask */ + +#define TPI_ITFTTD1_ATB_IF1_ATVALID_Pos 26U /*!< TPI ITFTTD1: ATB Interface 1 ATVALID Position */ +#define TPI_ITFTTD1_ATB_IF1_ATVALID_Msk (0x3UL << TPI_ITFTTD1_ATB_IF1_ATVALID_Pos) /*!< TPI ITFTTD1: ATB Interface 1 ATVALID Mask */ + +#define TPI_ITFTTD1_ATB_IF1_bytecount_Pos 24U /*!< TPI ITFTTD1: ATB Interface 1 byte count Position */ +#define TPI_ITFTTD1_ATB_IF1_bytecount_Msk (0x3UL << TPI_ITFTTD1_ATB_IF1_bytecount_Pos) /*!< TPI ITFTTD1: ATB Interface 1 byte countt Mask */ + +#define TPI_ITFTTD1_ATB_IF2_data2_Pos 16U /*!< TPI ITFTTD1: ATB Interface 2 data2 Position */ +#define TPI_ITFTTD1_ATB_IF2_data2_Msk (0xFFUL << TPI_ITFTTD1_ATB_IF2_data1_Pos) /*!< TPI ITFTTD1: ATB Interface 2 data2 Mask */ + +#define TPI_ITFTTD1_ATB_IF2_data1_Pos 8U /*!< TPI ITFTTD1: ATB Interface 2 data1 Position */ +#define TPI_ITFTTD1_ATB_IF2_data1_Msk (0xFFUL << TPI_ITFTTD1_ATB_IF2_data1_Pos) /*!< TPI ITFTTD1: ATB Interface 2 data1 Mask */ + +#define TPI_ITFTTD1_ATB_IF2_data0_Pos 0U /*!< TPI ITFTTD1: ATB Interface 2 data0 Position */ +#define TPI_ITFTTD1_ATB_IF2_data0_Msk (0xFFUL /*<< TPI_ITFTTD1_ATB_IF2_data0_Pos*/) /*!< TPI ITFTTD1: ATB Interface 2 data0 Mask */ + +/* TPI Integration Test ATB Control Register 0 Definitions */ +#define TPI_ITATBCTR0_AFVALID2S_Pos 1U /*!< TPI ITATBCTR0: AFVALID2S Position */ +#define TPI_ITATBCTR0_AFVALID2S_Msk (0x1UL << TPI_ITATBCTR0_AFVALID2S_Pos) /*!< TPI ITATBCTR0: AFVALID2SS Mask */ + +#define TPI_ITATBCTR0_AFVALID1S_Pos 1U /*!< TPI ITATBCTR0: AFVALID1S Position */ +#define TPI_ITATBCTR0_AFVALID1S_Msk (0x1UL << TPI_ITATBCTR0_AFVALID1S_Pos) /*!< TPI ITATBCTR0: AFVALID1SS Mask */ + +#define TPI_ITATBCTR0_ATREADY2S_Pos 0U /*!< TPI ITATBCTR0: ATREADY2S Position */ +#define TPI_ITATBCTR0_ATREADY2S_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2S_Pos*/) /*!< TPI ITATBCTR0: ATREADY2S Mask */ + +#define TPI_ITATBCTR0_ATREADY1S_Pos 0U /*!< TPI ITATBCTR0: ATREADY1S Position */ +#define TPI_ITATBCTR0_ATREADY1S_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1S_Pos*/) /*!< TPI ITATBCTR0: ATREADY1S Mask */ + +/* TPI Integration Mode Control Register Definitions */ +#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ +#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ + +/* TPI DEVID Register Definitions */ +#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ +#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ + +#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ +#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ + +#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ +#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ + +#define TPI_DEVID_FIFOSZ_Pos 6U /*!< TPI DEVID: FIFOSZ Position */ +#define TPI_DEVID_FIFOSZ_Msk (0x7UL << TPI_DEVID_FIFOSZ_Pos) /*!< TPI DEVID: FIFOSZ Mask */ + +#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ +#define TPI_DEVID_NrTraceInput_Msk (0x3FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ + +/* TPI DEVTYPE Register Definitions */ +#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ +#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ + +#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ +#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ + +/*@}*/ /* end of group CMSIS_TPI */ + + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_MPU Memory Protection Unit (MPU) + \brief Type definitions for the Memory Protection Unit (MPU) + @{ + */ + +/** + \brief Structure type to access the Memory Protection Unit (MPU). + */ +typedef struct +{ + __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ + __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region Number Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ + __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) MPU Region Limit Address Register */ + uint32_t RESERVED0[7U]; + union { + __IOM uint32_t MAIR[2]; + struct { + __IOM uint32_t MAIR0; /*!< Offset: 0x030 (R/W) MPU Memory Attribute Indirection Register 0 */ + __IOM uint32_t MAIR1; /*!< Offset: 0x034 (R/W) MPU Memory Attribute Indirection Register 1 */ + }; + }; +} MPU_Type; + +#define MPU_TYPE_RALIASES 1U + +/* MPU Type Register Definitions */ +#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ +#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ + +#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ +#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ + +#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ +#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ + +/* MPU Control Register Definitions */ +#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ +#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ + +#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ +#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ + +#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ +#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ + +/* MPU Region Number Register Definitions */ +#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ +#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ + +/* MPU Region Base Address Register Definitions */ +#define MPU_RBAR_BASE_Pos 5U /*!< MPU RBAR: BASE Position */ +#define MPU_RBAR_BASE_Msk (0x7FFFFFFUL << MPU_RBAR_BASE_Pos) /*!< MPU RBAR: BASE Mask */ + +#define MPU_RBAR_SH_Pos 3U /*!< MPU RBAR: SH Position */ +#define MPU_RBAR_SH_Msk (0x3UL << MPU_RBAR_SH_Pos) /*!< MPU RBAR: SH Mask */ + +#define MPU_RBAR_AP_Pos 1U /*!< MPU RBAR: AP Position */ +#define MPU_RBAR_AP_Msk (0x3UL << MPU_RBAR_AP_Pos) /*!< MPU RBAR: AP Mask */ + +#define MPU_RBAR_XN_Pos 0U /*!< MPU RBAR: XN Position */ +#define MPU_RBAR_XN_Msk (01UL /*<< MPU_RBAR_XN_Pos*/) /*!< MPU RBAR: XN Mask */ + +/* MPU Region Limit Address Register Definitions */ +#define MPU_RLAR_LIMIT_Pos 5U /*!< MPU RLAR: LIMIT Position */ +#define MPU_RLAR_LIMIT_Msk (0x7FFFFFFUL << MPU_RLAR_LIMIT_Pos) /*!< MPU RLAR: LIMIT Mask */ + +#define MPU_RLAR_AttrIndx_Pos 1U /*!< MPU RLAR: AttrIndx Position */ +#define MPU_RLAR_AttrIndx_Msk (0x7UL << MPU_RLAR_AttrIndx_Pos) /*!< MPU RLAR: AttrIndx Mask */ + +#define MPU_RLAR_EN_Pos 0U /*!< MPU RLAR: EN Position */ +#define MPU_RLAR_EN_Msk (1UL /*<< MPU_RLAR_EN_Pos*/) /*!< MPU RLAR: EN Mask */ + +/* MPU Memory Attribute Indirection Register 0 Definitions */ +#define MPU_MAIR0_Attr3_Pos 24U /*!< MPU MAIR0: Attr3 Position */ +#define MPU_MAIR0_Attr3_Msk (0xFFUL << MPU_MAIR0_Attr3_Pos) /*!< MPU MAIR0: Attr3 Mask */ + +#define MPU_MAIR0_Attr2_Pos 16U /*!< MPU MAIR0: Attr2 Position */ +#define MPU_MAIR0_Attr2_Msk (0xFFUL << MPU_MAIR0_Attr2_Pos) /*!< MPU MAIR0: Attr2 Mask */ + +#define MPU_MAIR0_Attr1_Pos 8U /*!< MPU MAIR0: Attr1 Position */ +#define MPU_MAIR0_Attr1_Msk (0xFFUL << MPU_MAIR0_Attr1_Pos) /*!< MPU MAIR0: Attr1 Mask */ + +#define MPU_MAIR0_Attr0_Pos 0U /*!< MPU MAIR0: Attr0 Position */ +#define MPU_MAIR0_Attr0_Msk (0xFFUL /*<< MPU_MAIR0_Attr0_Pos*/) /*!< MPU MAIR0: Attr0 Mask */ + +/* MPU Memory Attribute Indirection Register 1 Definitions */ +#define MPU_MAIR1_Attr7_Pos 24U /*!< MPU MAIR1: Attr7 Position */ +#define MPU_MAIR1_Attr7_Msk (0xFFUL << MPU_MAIR1_Attr7_Pos) /*!< MPU MAIR1: Attr7 Mask */ + +#define MPU_MAIR1_Attr6_Pos 16U /*!< MPU MAIR1: Attr6 Position */ +#define MPU_MAIR1_Attr6_Msk (0xFFUL << MPU_MAIR1_Attr6_Pos) /*!< MPU MAIR1: Attr6 Mask */ + +#define MPU_MAIR1_Attr5_Pos 8U /*!< MPU MAIR1: Attr5 Position */ +#define MPU_MAIR1_Attr5_Msk (0xFFUL << MPU_MAIR1_Attr5_Pos) /*!< MPU MAIR1: Attr5 Mask */ + +#define MPU_MAIR1_Attr4_Pos 0U /*!< MPU MAIR1: Attr4 Position */ +#define MPU_MAIR1_Attr4_Msk (0xFFUL /*<< MPU_MAIR1_Attr4_Pos*/) /*!< MPU MAIR1: Attr4 Mask */ + +/*@} end of group CMSIS_MPU */ +#endif + + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SAU Security Attribution Unit (SAU) + \brief Type definitions for the Security Attribution Unit (SAU) + @{ + */ + +/** + \brief Structure type to access the Security Attribution Unit (SAU). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SAU Control Register */ + __IM uint32_t TYPE; /*!< Offset: 0x004 (R/ ) SAU Type Register */ +#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) SAU Region Number Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) SAU Region Base Address Register */ + __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) SAU Region Limit Address Register */ +#endif +} SAU_Type; + +/* SAU Control Register Definitions */ +#define SAU_CTRL_ALLNS_Pos 1U /*!< SAU CTRL: ALLNS Position */ +#define SAU_CTRL_ALLNS_Msk (1UL << SAU_CTRL_ALLNS_Pos) /*!< SAU CTRL: ALLNS Mask */ + +#define SAU_CTRL_ENABLE_Pos 0U /*!< SAU CTRL: ENABLE Position */ +#define SAU_CTRL_ENABLE_Msk (1UL /*<< SAU_CTRL_ENABLE_Pos*/) /*!< SAU CTRL: ENABLE Mask */ + +/* SAU Type Register Definitions */ +#define SAU_TYPE_SREGION_Pos 0U /*!< SAU TYPE: SREGION Position */ +#define SAU_TYPE_SREGION_Msk (0xFFUL /*<< SAU_TYPE_SREGION_Pos*/) /*!< SAU TYPE: SREGION Mask */ + +#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) +/* SAU Region Number Register Definitions */ +#define SAU_RNR_REGION_Pos 0U /*!< SAU RNR: REGION Position */ +#define SAU_RNR_REGION_Msk (0xFFUL /*<< SAU_RNR_REGION_Pos*/) /*!< SAU RNR: REGION Mask */ + +/* SAU Region Base Address Register Definitions */ +#define SAU_RBAR_BADDR_Pos 5U /*!< SAU RBAR: BADDR Position */ +#define SAU_RBAR_BADDR_Msk (0x7FFFFFFUL << SAU_RBAR_BADDR_Pos) /*!< SAU RBAR: BADDR Mask */ + +/* SAU Region Limit Address Register Definitions */ +#define SAU_RLAR_LADDR_Pos 5U /*!< SAU RLAR: LADDR Position */ +#define SAU_RLAR_LADDR_Msk (0x7FFFFFFUL << SAU_RLAR_LADDR_Pos) /*!< SAU RLAR: LADDR Mask */ + +#define SAU_RLAR_NSC_Pos 1U /*!< SAU RLAR: NSC Position */ +#define SAU_RLAR_NSC_Msk (1UL << SAU_RLAR_NSC_Pos) /*!< SAU RLAR: NSC Mask */ + +#define SAU_RLAR_ENABLE_Pos 0U /*!< SAU RLAR: ENABLE Position */ +#define SAU_RLAR_ENABLE_Msk (1UL /*<< SAU_RLAR_ENABLE_Pos*/) /*!< SAU RLAR: ENABLE Mask */ + +#endif /* defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) */ + +/*@} end of group CMSIS_SAU */ +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief Type definitions for the Core Debug Registers + @{ + */ + +/** + \brief Structure type to access the Core Debug Register (CoreDebug). + */ +typedef struct +{ + __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ + __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ + __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ + __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ + uint32_t RESERVED4[1U]; + __IOM uint32_t DAUTHCTRL; /*!< Offset: 0x014 (R/W) Debug Authentication Control Register */ + __IOM uint32_t DSCSR; /*!< Offset: 0x018 (R/W) Debug Security Control and Status Register */ +} CoreDebug_Type; + +/* Debug Halting Control and Status Register Definitions */ +#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ +#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ + +#define CoreDebug_DHCSR_S_RESTART_ST_Pos 26U /*!< CoreDebug DHCSR: S_RESTART_ST Position */ +#define CoreDebug_DHCSR_S_RESTART_ST_Msk (1UL << CoreDebug_DHCSR_S_RESTART_ST_Pos) /*!< CoreDebug DHCSR: S_RESTART_ST Mask */ + +#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ +#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ + +#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ +#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ + +#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ +#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ + +#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ +#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ + +#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ +#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ + +#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ +#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ + +#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ +#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ + +#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ +#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ + +#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ +#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ + +#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ +#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ + +/* Debug Core Register Selector Register Definitions */ +#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ +#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ + +#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ +#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ + +/* Debug Exception and Monitor Control Register */ +#define CoreDebug_DEMCR_DWTENA_Pos 24U /*!< CoreDebug DEMCR: DWTENA Position */ +#define CoreDebug_DEMCR_DWTENA_Msk (1UL << CoreDebug_DEMCR_DWTENA_Pos) /*!< CoreDebug DEMCR: DWTENA Mask */ + +#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ +#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ + +#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ +#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ + +/* Debug Authentication Control Register Definitions */ +#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos 3U /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Position */ +#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Mask */ + +#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos 2U /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Position */ +#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Msk (1UL << CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos) /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Mask */ + +#define CoreDebug_DAUTHCTRL_INTSPIDEN_Pos 1U /*!< CoreDebug DAUTHCTRL: INTSPIDEN Position */ +#define CoreDebug_DAUTHCTRL_INTSPIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPIDEN Mask */ + +#define CoreDebug_DAUTHCTRL_SPIDENSEL_Pos 0U /*!< CoreDebug DAUTHCTRL: SPIDENSEL Position */ +#define CoreDebug_DAUTHCTRL_SPIDENSEL_Msk (1UL /*<< CoreDebug_DAUTHCTRL_SPIDENSEL_Pos*/) /*!< CoreDebug DAUTHCTRL: SPIDENSEL Mask */ + +/* Debug Security Control and Status Register Definitions */ +#define CoreDebug_DSCSR_CDS_Pos 16U /*!< CoreDebug DSCSR: CDS Position */ +#define CoreDebug_DSCSR_CDS_Msk (1UL << CoreDebug_DSCSR_CDS_Pos) /*!< CoreDebug DSCSR: CDS Mask */ + +#define CoreDebug_DSCSR_SBRSEL_Pos 1U /*!< CoreDebug DSCSR: SBRSEL Position */ +#define CoreDebug_DSCSR_SBRSEL_Msk (1UL << CoreDebug_DSCSR_SBRSEL_Pos) /*!< CoreDebug DSCSR: SBRSEL Mask */ + +#define CoreDebug_DSCSR_SBRSELEN_Pos 0U /*!< CoreDebug DSCSR: SBRSELEN Position */ +#define CoreDebug_DSCSR_SBRSELEN_Msk (1UL /*<< CoreDebug_DSCSR_SBRSELEN_Pos*/) /*!< CoreDebug DSCSR: SBRSELEN Mask */ + +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ + #define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ + #define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ + #define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ + #define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ + #define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ + #define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ + #define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + + + #define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ + #define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ + #define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ + #define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ + #define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ + #define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE ) /*!< Core Debug configuration struct */ + + #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ + #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ + #endif + + #if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + #define SAU_BASE (SCS_BASE + 0x0DD0UL) /*!< Security Attribution Unit */ + #define SAU ((SAU_Type *) SAU_BASE ) /*!< Security Attribution Unit */ + #endif + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + #define SCS_BASE_NS (0xE002E000UL) /*!< System Control Space Base Address (non-secure address space) */ + #define CoreDebug_BASE_NS (0xE002EDF0UL) /*!< Core Debug Base Address (non-secure address space) */ + #define SysTick_BASE_NS (SCS_BASE_NS + 0x0010UL) /*!< SysTick Base Address (non-secure address space) */ + #define NVIC_BASE_NS (SCS_BASE_NS + 0x0100UL) /*!< NVIC Base Address (non-secure address space) */ + #define SCB_BASE_NS (SCS_BASE_NS + 0x0D00UL) /*!< System Control Block Base Address (non-secure address space) */ + + #define SCB_NS ((SCB_Type *) SCB_BASE_NS ) /*!< SCB configuration struct (non-secure address space) */ + #define SysTick_NS ((SysTick_Type *) SysTick_BASE_NS ) /*!< SysTick configuration struct (non-secure address space) */ + #define NVIC_NS ((NVIC_Type *) NVIC_BASE_NS ) /*!< NVIC configuration struct (non-secure address space) */ + #define CoreDebug_NS ((CoreDebug_Type *) CoreDebug_BASE_NS) /*!< Core Debug configuration struct (non-secure address space) */ + + #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE_NS (SCS_BASE_NS + 0x0D90UL) /*!< Memory Protection Unit (non-secure address space) */ + #define MPU_NS ((MPU_Type *) MPU_BASE_NS ) /*!< Memory Protection Unit (non-secure address space) */ + #endif + +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else +/*#define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping not available for Cortex-M23 */ +/*#define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping not available for Cortex-M23 */ + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ + #define NVIC_GetActive __NVIC_GetActive + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* Special LR values for Secure/Non-Secure call handling and exception handling */ + +/* Function Return Payload (from ARMv8-M Architecture Reference Manual) LR value on entry from Secure BLXNS */ +#define FNC_RETURN (0xFEFFFFFFUL) /* bit [0] ignored when processing a branch */ + +/* The following EXC_RETURN mask values are used to evaluate the LR on exception entry */ +#define EXC_RETURN_PREFIX (0xFF000000UL) /* bits [31:24] set to indicate an EXC_RETURN value */ +#define EXC_RETURN_S (0x00000040UL) /* bit [6] stack used to push registers: 0=Non-secure 1=Secure */ +#define EXC_RETURN_DCRS (0x00000020UL) /* bit [5] stacking rules for called registers: 0=skipped 1=saved */ +#define EXC_RETURN_FTYPE (0x00000010UL) /* bit [4] allocate stack for floating-point context: 0=done 1=skipped */ +#define EXC_RETURN_MODE (0x00000008UL) /* bit [3] processor mode for return: 0=Handler mode 1=Thread mode */ +#define EXC_RETURN_SPSEL (0x00000002UL) /* bit [1] stack pointer used to restore context: 0=MSP 1=PSP */ +#define EXC_RETURN_ES (0x00000001UL) /* bit [0] security state exception was taken to: 0=Non-secure 1=Secure */ + +/* Integrity Signature (from ARMv8-M Architecture Reference Manual) for exception context stacking */ +#if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) /* Value for processors with floating-point extension: */ +#define EXC_INTEGRITY_SIGNATURE (0xFEFA125AUL) /* bit [0] SFTC must match LR bit[4] EXC_RETURN_FTYPE */ +#else +#define EXC_INTEGRITY_SIGNATURE (0xFEFA125BUL) /* Value for processors without floating-point extension */ +#endif + + +/* Interrupt Priorities are WORD accessible only under Armv6-M */ +/* The following MACROS handle generation of the register offset and byte masks */ +#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) +#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) +#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) + +#define __NVIC_SetPriorityGrouping(X) (void)(X) +#define __NVIC_GetPriorityGrouping() (0U) + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt + \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief Get Interrupt Target State + \details Reads the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + \return 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_GetTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Target State + \details Sets the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_SetTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] |= ((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Clear Interrupt Target State + \details Clears the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_ClearTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] &= ~((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IPR[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IPR[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } + else + { + SCB->SHPR[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHPR[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IPR[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return((uint32_t)(((SCB->SHPR[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Encode Priority + \details Encodes the priority for an interrupt with the given priority group, + preemptive priority value, and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Used priority group. + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + ); +} + + +/** + \brief Decode Priority + \details Decodes an interrupt priority value with a given priority group to + preemptive priority value and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. + \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). + \param [in] PriorityGroup Used priority group. + \param [out] pPreemptPriority Preemptive priority value (starting from 0). + \param [out] pSubPriority Subpriority value (starting from 0). + */ +__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); + *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); +} + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + VTOR must been relocated to SRAM before. + If VTOR is not present address 0 must be mapped to SRAM. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) + uint32_t *vectors = (uint32_t *)SCB->VTOR; +#else + uint32_t *vectors = (uint32_t *)0x0U; +#endif + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ +#if defined (__VTOR_PRESENT) && (__VTOR_PRESENT == 1U) + uint32_t *vectors = (uint32_t *)SCB->VTOR; +#else + uint32_t *vectors = (uint32_t *)0x0U; +#endif + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + SCB_AIRCR_SYSRESETREQ_Msk); + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief Enable Interrupt (non-secure) + \details Enables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_EnableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status (non-secure) + \details Returns a device specific interrupt enable status from the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetEnableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt (non-secure) + \details Disables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_DisableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Pending Interrupt (non-secure) + \details Reads the NVIC pending register in the non-secure NVIC when in secure state and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt (non-secure) + \details Sets the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_SetPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt (non-secure) + \details Clears the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_ClearPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt (non-secure) + \details Reads the active register in non-secure NVIC when in secure state and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetActive_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Priority (non-secure) + \details Sets the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every non-secure processor exception. + */ +__STATIC_INLINE void TZ_NVIC_SetPriority_NS(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->IPR[_IP_IDX(IRQn)] = ((uint32_t)(NVIC_NS->IPR[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } + else + { + SCB_NS->SHPR[_SHP_IDX(IRQn)] = ((uint32_t)(SCB_NS->SHPR[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } +} + + +/** + \brief Get Interrupt Priority (non-secure) + \details Reads the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetPriority_NS(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->IPR[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return((uint32_t)(((SCB_NS->SHPR[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } +} +#endif /* defined (__ARM_FEATURE_CMSE) &&(__ARM_FEATURE_CMSE == 3U) */ + +/*@} end of CMSIS_Core_NVICFunctions */ + +/* ########################## MPU functions #################################### */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + +#include "mpu_armv8.h" + +#endif + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + return 0U; /* No FPU */ +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ########################## SAU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SAUFunctions SAU Functions + \brief Functions that configure the SAU. + @{ + */ + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + +/** + \brief Enable SAU + \details Enables the Security Attribution Unit (SAU). + */ +__STATIC_INLINE void TZ_SAU_Enable(void) +{ + SAU->CTRL |= (SAU_CTRL_ENABLE_Msk); +} + + + +/** + \brief Disable SAU + \details Disables the Security Attribution Unit (SAU). + */ +__STATIC_INLINE void TZ_SAU_Disable(void) +{ + SAU->CTRL &= ~(SAU_CTRL_ENABLE_Msk); +} + +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + +/*@} end of CMSIS_Core_SAUFunctions */ + + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief System Tick Configuration (non-secure) + \details Initializes the non-secure System Timer and its interrupt when in secure state, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function TZ_SysTick_Config_NS is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + + */ +__STATIC_INLINE uint32_t TZ_SysTick_Config_NS(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick_NS->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + TZ_NVIC_SetPriority_NS (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick_NS->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick_NS->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM23_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/core_cm3.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm3.h similarity index 98% rename from stm32f103/Drivers/CMSIS/Include/core_cm3.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_cm3.h index b0dfbd3..74bff64 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_cm3.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm3.h @@ -1,1941 +1,1941 @@ -/**************************************************************************//** - * @file core_cm3.h - * @brief CMSIS Cortex-M3 Core Peripheral Access Layer Header File - * @version V5.0.8 - * @date 04. June 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_CM3_H_GENERIC -#define __CORE_CM3_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup Cortex_M3 - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS CM3 definitions */ -#define __CM3_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __CM3_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __CM3_CMSIS_VERSION ((__CM3_CMSIS_VERSION_MAIN << 16U) | \ - __CM3_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_M (3U) /*!< Cortex-M Core */ - -/** __FPU_USED indicates whether an FPU is used or not. - This core does not support an FPU at all -*/ -#define __FPU_USED 0U - -#if defined ( __CC_ARM ) - #if defined __TARGET_FPU_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined __ARM_PCS_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __ICCARM__ ) - #if defined __ARMVFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TI_ARM__ ) - #if defined __TI_VFP_SUPPORT__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TASKING__ ) - #if defined __FPU_VFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM3_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_CM3_H_DEPENDANT -#define __CORE_CM3_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __CM3_REV - #define __CM3_REV 0x0200U - #warning "__CM3_REV not defined in device header file; using default!" - #endif - - #ifndef __MPU_PRESENT - #define __MPU_PRESENT 0U - #warning "__MPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 3U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group Cortex_M3 */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - - Core Debug Register - - Core MPU Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:27; /*!< bit: 0..26 Reserved */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - -#define APSR_Q_Pos 27U /*!< APSR: Q Position */ -#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:1; /*!< bit: 9 Reserved */ - uint32_t ICI_IT_1:6; /*!< bit: 10..15 ICI/IT part 1 */ - uint32_t _reserved1:8; /*!< bit: 16..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit */ - uint32_t ICI_IT_2:2; /*!< bit: 25..26 ICI/IT part 2 */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ -#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ - -#define xPSR_ICI_IT_2_Pos 25U /*!< xPSR: ICI/IT part 2 Position */ -#define xPSR_ICI_IT_2_Msk (3UL << xPSR_ICI_IT_2_Pos) /*!< xPSR: ICI/IT part 2 Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_ICI_IT_1_Pos 10U /*!< xPSR: ICI/IT part 1 Position */ -#define xPSR_ICI_IT_1_Msk (0x3FUL << xPSR_ICI_IT_1_Pos) /*!< xPSR: ICI/IT part 1 Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ - uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ - uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ -#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[8U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[24U]; - __IOM uint32_t ICER[8U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[24U]; - __IOM uint32_t ISPR[8U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[24U]; - __IOM uint32_t ICPR[8U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[24U]; - __IOM uint32_t IABR[8U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ - uint32_t RESERVED4[56U]; - __IOM uint8_t IP[240U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ - uint32_t RESERVED5[644U]; - __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ -} NVIC_Type; - -/* Software Triggered Interrupt Register Definitions */ -#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ -#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ - __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - __IOM uint8_t SHP[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ - __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ - __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ - __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ - __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ - __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ - __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ - __IM uint32_t PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ - __IM uint32_t DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ - __IM uint32_t ADR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ - __IM uint32_t MMFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ - __IM uint32_t ISAR[5U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ - uint32_t RESERVED0[5U]; - __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ -#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ -#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -/* SCB Vector Table Offset Register Definitions */ -#if defined (__CM3_REV) && (__CM3_REV < 0x0201U) /* core r2p1 */ -#define SCB_VTOR_TBLBASE_Pos 29U /*!< SCB VTOR: TBLBASE Position */ -#define SCB_VTOR_TBLBASE_Msk (1UL << SCB_VTOR_TBLBASE_Pos) /*!< SCB VTOR: TBLBASE Mask */ - -#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ -#define SCB_VTOR_TBLOFF_Msk (0x3FFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ -#else -#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ -#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ -#endif - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ -#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -#define SCB_AIRCR_VECTRESET_Pos 0U /*!< SCB AIRCR: VECTRESET Position */ -#define SCB_AIRCR_VECTRESET_Msk (1UL /*<< SCB_AIRCR_VECTRESET_Pos*/) /*!< SCB AIRCR: VECTRESET Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ -#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ - -#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ -#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ - -#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ -#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ -#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ - -#define SCB_CCR_NONBASETHRDENA_Pos 0U /*!< SCB CCR: NONBASETHRDENA Position */ -#define SCB_CCR_NONBASETHRDENA_Msk (1UL /*<< SCB_CCR_NONBASETHRDENA_Pos*/) /*!< SCB CCR: NONBASETHRDENA Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ -#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ - -#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ -#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ - -#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ -#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ - -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ -#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ - -#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ -#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ - -#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ -#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ - -#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ -#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ - -#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ -#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ - -#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ -#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ - -#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ -#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ - -#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ -#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ - -#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ -#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ - -#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ -#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ - -/* SCB Configurable Fault Status Register Definitions */ -#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ -#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ - -#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ -#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ - -#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ -#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ - -/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ -#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ - -#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ -#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ - -#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ -#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ - -#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ -#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ - -#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ -#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ - -/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ -#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ - -#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ -#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ - -#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ -#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ - -#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ -#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ - -#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ -#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ - -#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ -#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ - -/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ -#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ - -#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ -#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ - -#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ -#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ - -#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ -#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ - -#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ -#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ - -#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ -#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ - -/* SCB Hard Fault Status Register Definitions */ -#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ -#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ - -#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ -#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ - -#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ -#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ - -/* SCB Debug Fault Status Register Definitions */ -#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ -#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ - -#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ -#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ - -#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ -#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ - -#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ -#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ - -#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ -#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) - \brief Type definitions for the System Control and ID Register not in the SCB - @{ - */ - -/** - \brief Structure type to access the System Control and ID Register not in the SCB. - */ -typedef struct -{ - uint32_t RESERVED0[1U]; - __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ -#if defined (__CM3_REV) && (__CM3_REV >= 0x200U) - __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ -#else - uint32_t RESERVED1[1U]; -#endif -} SCnSCB_Type; - -/* Interrupt Controller Type Register Definitions */ -#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ -#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ - -/* Auxiliary Control Register Definitions */ - -#define SCnSCB_ACTLR_DISFOLD_Pos 2U /*!< ACTLR: DISFOLD Position */ -#define SCnSCB_ACTLR_DISFOLD_Msk (1UL << SCnSCB_ACTLR_DISFOLD_Pos) /*!< ACTLR: DISFOLD Mask */ - -#define SCnSCB_ACTLR_DISDEFWBUF_Pos 1U /*!< ACTLR: DISDEFWBUF Position */ -#define SCnSCB_ACTLR_DISDEFWBUF_Msk (1UL << SCnSCB_ACTLR_DISDEFWBUF_Pos) /*!< ACTLR: DISDEFWBUF Mask */ - -#define SCnSCB_ACTLR_DISMCYCINT_Pos 0U /*!< ACTLR: DISMCYCINT Position */ -#define SCnSCB_ACTLR_DISMCYCINT_Msk (1UL /*<< SCnSCB_ACTLR_DISMCYCINT_Pos*/) /*!< ACTLR: DISMCYCINT Mask */ - -/*@} end of group CMSIS_SCnotSCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) - \brief Type definitions for the Instrumentation Trace Macrocell (ITM) - @{ - */ - -/** - \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). - */ -typedef struct -{ - __OM union - { - __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ - __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ - __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ - } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ - uint32_t RESERVED0[864U]; - __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ - uint32_t RESERVED1[15U]; - __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ - uint32_t RESERVED2[15U]; - __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ - uint32_t RESERVED3[29U]; - __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ - __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ - __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ - uint32_t RESERVED4[43U]; - __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ - __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ - uint32_t RESERVED5[6U]; - __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ - __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ - __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ - __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ - __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ - __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ - __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ - __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ - __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ - __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ - __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ - __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ -} ITM_Type; - -/* ITM Trace Privilege Register Definitions */ -#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ -#define ITM_TPR_PRIVMASK_Msk (0xFFFFFFFFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ - -/* ITM Trace Control Register Definitions */ -#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ -#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ - -#define ITM_TCR_TraceBusID_Pos 16U /*!< ITM TCR: ATBID Position */ -#define ITM_TCR_TraceBusID_Msk (0x7FUL << ITM_TCR_TraceBusID_Pos) /*!< ITM TCR: ATBID Mask */ - -#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ -#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ - -#define ITM_TCR_TSPrescale_Pos 8U /*!< ITM TCR: TSPrescale Position */ -#define ITM_TCR_TSPrescale_Msk (3UL << ITM_TCR_TSPrescale_Pos) /*!< ITM TCR: TSPrescale Mask */ - -#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ -#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ - -#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ -#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ - -#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ -#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ - -#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ -#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ - -#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ -#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ - -/* ITM Integration Write Register Definitions */ -#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ -#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ - -/* ITM Integration Read Register Definitions */ -#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ -#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ - -/* ITM Integration Mode Control Register Definitions */ -#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ -#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ - -/* ITM Lock Status Register Definitions */ -#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ -#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ - -#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ -#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ - -#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ -#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ - -/*@}*/ /* end of group CMSIS_ITM */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) - \brief Type definitions for the Data Watchpoint and Trace (DWT) - @{ - */ - -/** - \brief Structure type to access the Data Watchpoint and Trace Register (DWT). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ - __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ - __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ - __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ - __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ - __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ - __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ - __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ - __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ - __IOM uint32_t MASK0; /*!< Offset: 0x024 (R/W) Mask Register 0 */ - __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ - uint32_t RESERVED0[1U]; - __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ - __IOM uint32_t MASK1; /*!< Offset: 0x034 (R/W) Mask Register 1 */ - __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ - uint32_t RESERVED1[1U]; - __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ - __IOM uint32_t MASK2; /*!< Offset: 0x044 (R/W) Mask Register 2 */ - __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ - uint32_t RESERVED2[1U]; - __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ - __IOM uint32_t MASK3; /*!< Offset: 0x054 (R/W) Mask Register 3 */ - __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ -} DWT_Type; - -/* DWT Control Register Definitions */ -#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ -#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ - -#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ -#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ - -#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ -#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ - -#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ -#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ - -#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ -#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ - -#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ -#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ - -#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ -#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ - -#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ -#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ - -#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ -#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ - -#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ -#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ - -#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ -#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ - -#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ -#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ - -#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ -#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ - -#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ -#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ - -#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ -#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ - -#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ -#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ - -#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ -#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ - -#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ -#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ - -/* DWT CPI Count Register Definitions */ -#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ -#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ - -/* DWT Exception Overhead Count Register Definitions */ -#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ -#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ - -/* DWT Sleep Count Register Definitions */ -#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ -#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ - -/* DWT LSU Count Register Definitions */ -#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ -#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ - -/* DWT Folded-instruction Count Register Definitions */ -#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ -#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ - -/* DWT Comparator Mask Register Definitions */ -#define DWT_MASK_MASK_Pos 0U /*!< DWT MASK: MASK Position */ -#define DWT_MASK_MASK_Msk (0x1FUL /*<< DWT_MASK_MASK_Pos*/) /*!< DWT MASK: MASK Mask */ - -/* DWT Comparator Function Register Definitions */ -#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ -#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ - -#define DWT_FUNCTION_DATAVADDR1_Pos 16U /*!< DWT FUNCTION: DATAVADDR1 Position */ -#define DWT_FUNCTION_DATAVADDR1_Msk (0xFUL << DWT_FUNCTION_DATAVADDR1_Pos) /*!< DWT FUNCTION: DATAVADDR1 Mask */ - -#define DWT_FUNCTION_DATAVADDR0_Pos 12U /*!< DWT FUNCTION: DATAVADDR0 Position */ -#define DWT_FUNCTION_DATAVADDR0_Msk (0xFUL << DWT_FUNCTION_DATAVADDR0_Pos) /*!< DWT FUNCTION: DATAVADDR0 Mask */ - -#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ -#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ - -#define DWT_FUNCTION_LNK1ENA_Pos 9U /*!< DWT FUNCTION: LNK1ENA Position */ -#define DWT_FUNCTION_LNK1ENA_Msk (0x1UL << DWT_FUNCTION_LNK1ENA_Pos) /*!< DWT FUNCTION: LNK1ENA Mask */ - -#define DWT_FUNCTION_DATAVMATCH_Pos 8U /*!< DWT FUNCTION: DATAVMATCH Position */ -#define DWT_FUNCTION_DATAVMATCH_Msk (0x1UL << DWT_FUNCTION_DATAVMATCH_Pos) /*!< DWT FUNCTION: DATAVMATCH Mask */ - -#define DWT_FUNCTION_CYCMATCH_Pos 7U /*!< DWT FUNCTION: CYCMATCH Position */ -#define DWT_FUNCTION_CYCMATCH_Msk (0x1UL << DWT_FUNCTION_CYCMATCH_Pos) /*!< DWT FUNCTION: CYCMATCH Mask */ - -#define DWT_FUNCTION_EMITRANGE_Pos 5U /*!< DWT FUNCTION: EMITRANGE Position */ -#define DWT_FUNCTION_EMITRANGE_Msk (0x1UL << DWT_FUNCTION_EMITRANGE_Pos) /*!< DWT FUNCTION: EMITRANGE Mask */ - -#define DWT_FUNCTION_FUNCTION_Pos 0U /*!< DWT FUNCTION: FUNCTION Position */ -#define DWT_FUNCTION_FUNCTION_Msk (0xFUL /*<< DWT_FUNCTION_FUNCTION_Pos*/) /*!< DWT FUNCTION: FUNCTION Mask */ - -/*@}*/ /* end of group CMSIS_DWT */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_TPI Trace Port Interface (TPI) - \brief Type definitions for the Trace Port Interface (TPI) - @{ - */ - -/** - \brief Structure type to access the Trace Port Interface Register (TPI). - */ -typedef struct -{ - __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ - __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ - uint32_t RESERVED0[2U]; - __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ - uint32_t RESERVED1[55U]; - __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ - uint32_t RESERVED2[131U]; - __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ - __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ - __IM uint32_t FSCR; /*!< Offset: 0x308 (R/ ) Formatter Synchronization Counter Register */ - uint32_t RESERVED3[759U]; - __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ - __IM uint32_t FIFO0; /*!< Offset: 0xEEC (R/ ) Integration ETM Data */ - __IM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/ ) ITATBCTR2 */ - uint32_t RESERVED4[1U]; - __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) ITATBCTR0 */ - __IM uint32_t FIFO1; /*!< Offset: 0xEFC (R/ ) Integration ITM Data */ - __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ - uint32_t RESERVED5[39U]; - __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ - __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ - uint32_t RESERVED7[8U]; - __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) TPIU_DEVID */ - __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) TPIU_DEVTYPE */ -} TPI_Type; - -/* TPI Asynchronous Clock Prescaler Register Definitions */ -#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ -#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ - -/* TPI Selected Pin Protocol Register Definitions */ -#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ -#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ - -/* TPI Formatter and Flush Status Register Definitions */ -#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ -#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ - -#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ -#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ - -#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ -#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ - -#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ -#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ - -/* TPI Formatter and Flush Control Register Definitions */ -#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ -#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ - -#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ -#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ - -/* TPI TRIGGER Register Definitions */ -#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ -#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ - -/* TPI Integration ETM Data Register Definitions (FIFO0) */ -#define TPI_FIFO0_ITM_ATVALID_Pos 29U /*!< TPI FIFO0: ITM_ATVALID Position */ -#define TPI_FIFO0_ITM_ATVALID_Msk (0x3UL << TPI_FIFO0_ITM_ATVALID_Pos) /*!< TPI FIFO0: ITM_ATVALID Mask */ - -#define TPI_FIFO0_ITM_bytecount_Pos 27U /*!< TPI FIFO0: ITM_bytecount Position */ -#define TPI_FIFO0_ITM_bytecount_Msk (0x3UL << TPI_FIFO0_ITM_bytecount_Pos) /*!< TPI FIFO0: ITM_bytecount Mask */ - -#define TPI_FIFO0_ETM_ATVALID_Pos 26U /*!< TPI FIFO0: ETM_ATVALID Position */ -#define TPI_FIFO0_ETM_ATVALID_Msk (0x3UL << TPI_FIFO0_ETM_ATVALID_Pos) /*!< TPI FIFO0: ETM_ATVALID Mask */ - -#define TPI_FIFO0_ETM_bytecount_Pos 24U /*!< TPI FIFO0: ETM_bytecount Position */ -#define TPI_FIFO0_ETM_bytecount_Msk (0x3UL << TPI_FIFO0_ETM_bytecount_Pos) /*!< TPI FIFO0: ETM_bytecount Mask */ - -#define TPI_FIFO0_ETM2_Pos 16U /*!< TPI FIFO0: ETM2 Position */ -#define TPI_FIFO0_ETM2_Msk (0xFFUL << TPI_FIFO0_ETM2_Pos) /*!< TPI FIFO0: ETM2 Mask */ - -#define TPI_FIFO0_ETM1_Pos 8U /*!< TPI FIFO0: ETM1 Position */ -#define TPI_FIFO0_ETM1_Msk (0xFFUL << TPI_FIFO0_ETM1_Pos) /*!< TPI FIFO0: ETM1 Mask */ - -#define TPI_FIFO0_ETM0_Pos 0U /*!< TPI FIFO0: ETM0 Position */ -#define TPI_FIFO0_ETM0_Msk (0xFFUL /*<< TPI_FIFO0_ETM0_Pos*/) /*!< TPI FIFO0: ETM0 Mask */ - -/* TPI ITATBCTR2 Register Definitions */ -#define TPI_ITATBCTR2_ATREADY2_Pos 0U /*!< TPI ITATBCTR2: ATREADY2 Position */ -#define TPI_ITATBCTR2_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2_Pos*/) /*!< TPI ITATBCTR2: ATREADY2 Mask */ - -#define TPI_ITATBCTR2_ATREADY1_Pos 0U /*!< TPI ITATBCTR2: ATREADY1 Position */ -#define TPI_ITATBCTR2_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1_Pos*/) /*!< TPI ITATBCTR2: ATREADY1 Mask */ - -/* TPI Integration ITM Data Register Definitions (FIFO1) */ -#define TPI_FIFO1_ITM_ATVALID_Pos 29U /*!< TPI FIFO1: ITM_ATVALID Position */ -#define TPI_FIFO1_ITM_ATVALID_Msk (0x3UL << TPI_FIFO1_ITM_ATVALID_Pos) /*!< TPI FIFO1: ITM_ATVALID Mask */ - -#define TPI_FIFO1_ITM_bytecount_Pos 27U /*!< TPI FIFO1: ITM_bytecount Position */ -#define TPI_FIFO1_ITM_bytecount_Msk (0x3UL << TPI_FIFO1_ITM_bytecount_Pos) /*!< TPI FIFO1: ITM_bytecount Mask */ - -#define TPI_FIFO1_ETM_ATVALID_Pos 26U /*!< TPI FIFO1: ETM_ATVALID Position */ -#define TPI_FIFO1_ETM_ATVALID_Msk (0x3UL << TPI_FIFO1_ETM_ATVALID_Pos) /*!< TPI FIFO1: ETM_ATVALID Mask */ - -#define TPI_FIFO1_ETM_bytecount_Pos 24U /*!< TPI FIFO1: ETM_bytecount Position */ -#define TPI_FIFO1_ETM_bytecount_Msk (0x3UL << TPI_FIFO1_ETM_bytecount_Pos) /*!< TPI FIFO1: ETM_bytecount Mask */ - -#define TPI_FIFO1_ITM2_Pos 16U /*!< TPI FIFO1: ITM2 Position */ -#define TPI_FIFO1_ITM2_Msk (0xFFUL << TPI_FIFO1_ITM2_Pos) /*!< TPI FIFO1: ITM2 Mask */ - -#define TPI_FIFO1_ITM1_Pos 8U /*!< TPI FIFO1: ITM1 Position */ -#define TPI_FIFO1_ITM1_Msk (0xFFUL << TPI_FIFO1_ITM1_Pos) /*!< TPI FIFO1: ITM1 Mask */ - -#define TPI_FIFO1_ITM0_Pos 0U /*!< TPI FIFO1: ITM0 Position */ -#define TPI_FIFO1_ITM0_Msk (0xFFUL /*<< TPI_FIFO1_ITM0_Pos*/) /*!< TPI FIFO1: ITM0 Mask */ - -/* TPI ITATBCTR0 Register Definitions */ -#define TPI_ITATBCTR0_ATREADY2_Pos 0U /*!< TPI ITATBCTR0: ATREADY2 Position */ -#define TPI_ITATBCTR0_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2_Pos*/) /*!< TPI ITATBCTR0: ATREADY2 Mask */ - -#define TPI_ITATBCTR0_ATREADY1_Pos 0U /*!< TPI ITATBCTR0: ATREADY1 Position */ -#define TPI_ITATBCTR0_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1_Pos*/) /*!< TPI ITATBCTR0: ATREADY1 Mask */ - -/* TPI Integration Mode Control Register Definitions */ -#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ -#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ - -/* TPI DEVID Register Definitions */ -#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ -#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ - -#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ -#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ - -#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ -#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ - -#define TPI_DEVID_MinBufSz_Pos 6U /*!< TPI DEVID: MinBufSz Position */ -#define TPI_DEVID_MinBufSz_Msk (0x7UL << TPI_DEVID_MinBufSz_Pos) /*!< TPI DEVID: MinBufSz Mask */ - -#define TPI_DEVID_AsynClkIn_Pos 5U /*!< TPI DEVID: AsynClkIn Position */ -#define TPI_DEVID_AsynClkIn_Msk (0x1UL << TPI_DEVID_AsynClkIn_Pos) /*!< TPI DEVID: AsynClkIn Mask */ - -#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ -#define TPI_DEVID_NrTraceInput_Msk (0x1FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ - -/* TPI DEVTYPE Register Definitions */ -#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ -#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ - -#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ -#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ - -/*@}*/ /* end of group CMSIS_TPI */ - - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_MPU Memory Protection Unit (MPU) - \brief Type definitions for the Memory Protection Unit (MPU) - @{ - */ - -/** - \brief Structure type to access the Memory Protection Unit (MPU). - */ -typedef struct -{ - __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ - __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ - __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ - __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Alias 1 Region Base Address Register */ - __IOM uint32_t RASR_A1; /*!< Offset: 0x018 (R/W) MPU Alias 1 Region Attribute and Size Register */ - __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Alias 2 Region Base Address Register */ - __IOM uint32_t RASR_A2; /*!< Offset: 0x020 (R/W) MPU Alias 2 Region Attribute and Size Register */ - __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Alias 3 Region Base Address Register */ - __IOM uint32_t RASR_A3; /*!< Offset: 0x028 (R/W) MPU Alias 3 Region Attribute and Size Register */ -} MPU_Type; - -#define MPU_TYPE_RALIASES 4U - -/* MPU Type Register Definitions */ -#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ -#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ - -#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ -#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ - -#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ -#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ - -/* MPU Control Register Definitions */ -#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ -#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ - -#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ -#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ - -#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ -#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ - -/* MPU Region Number Register Definitions */ -#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ -#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ - -/* MPU Region Base Address Register Definitions */ -#define MPU_RBAR_ADDR_Pos 5U /*!< MPU RBAR: ADDR Position */ -#define MPU_RBAR_ADDR_Msk (0x7FFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ - -#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ -#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ - -#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ -#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ - -/* MPU Region Attribute and Size Register Definitions */ -#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ -#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ - -#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ -#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ - -#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ -#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ - -#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ -#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ - -#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ -#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ - -#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ -#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ - -#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ -#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ - -#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ -#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ - -#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ -#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ - -#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ -#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ - -/*@} end of group CMSIS_MPU */ -#endif - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief Type definitions for the Core Debug Registers - @{ - */ - -/** - \brief Structure type to access the Core Debug Register (CoreDebug). - */ -typedef struct -{ - __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ - __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ - __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ - __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ -} CoreDebug_Type; - -/* Debug Halting Control and Status Register Definitions */ -#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ -#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ - -#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ -#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ - -#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ -#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ - -#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ -#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ - -#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ -#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ - -#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ -#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ - -#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ -#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ - -#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ -#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ - -#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ -#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ - -#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ -#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ - -#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ -#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ - -#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ -#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ - -/* Debug Core Register Selector Register Definitions */ -#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ -#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ - -#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ -#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ - -/* Debug Exception and Monitor Control Register Definitions */ -#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ -#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ - -#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ -#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ - -#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ -#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ - -#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ -#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ - -#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ -#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ - -#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ -#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ - -#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ -#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ - -#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ -#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ - -#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ -#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ - -#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ -#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ - -#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ -#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ - -#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ -#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ - -#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ -#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ - -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ -#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ -#define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ -#define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ -#define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ -#define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ -#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ -#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ -#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - -#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ -#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ -#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ -#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ -#define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ -#define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ -#define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ -#define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE) /*!< Core Debug configuration struct */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ - #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ -#endif - -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Debug Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping - #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ - #define NVIC_GetActive __NVIC_GetActive - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* The following EXC_RETURN values are saved the LR on exception entry */ -#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ -#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ -#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ - - -/** - \brief Set Priority Grouping - \details Sets the priority grouping field using the required unlock sequence. - The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. - Only values from 0..7 are used. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Priority grouping field. - */ -__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) -{ - uint32_t reg_value; - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - - reg_value = SCB->AIRCR; /* read old register configuration */ - reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ - reg_value = (reg_value | - ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (PriorityGroupTmp << SCB_AIRCR_PRIGROUP_Pos) ); /* Insert write key and priority group */ - SCB->AIRCR = reg_value; -} - - -/** - \brief Get Priority Grouping - \details Reads the priority grouping field from the NVIC Interrupt Controller. - \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). - */ -__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) -{ - return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); -} - - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt - \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } - else - { - SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return(((uint32_t)NVIC->IP[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return(((uint32_t)SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Encode Priority - \details Encodes the priority for an interrupt with the given priority group, - preemptive priority value, and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Used priority group. - \param [in] PreemptPriority Preemptive priority value (starting from 0). - \param [in] SubPriority Subpriority value (starting from 0). - \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). - */ -__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - return ( - ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | - ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) - ); -} - - -/** - \brief Decode Priority - \details Decodes an interrupt priority value with a given priority group to - preemptive priority value and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. - \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). - \param [in] PriorityGroup Used priority group. - \param [out] pPreemptPriority Preemptive priority value (starting from 0). - \param [out] pSubPriority Subpriority value (starting from 0). - */ -__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); - *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); -} - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - VTOR must been relocated to SRAM before. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | - SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -/*@} end of CMSIS_Core_NVICFunctions */ - -/* ########################## MPU functions #################################### */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - -#include "mpu_armv7.h" - -#endif - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - return 0U; /* No FPU */ -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - -/* ##################################### Debug In/Output function ########################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_core_DebugFunctions ITM Functions - \brief Functions that access the ITM debug interface. - @{ - */ - -extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ -#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ - - -/** - \brief ITM Send Character - \details Transmits a character via the ITM channel 0, and - \li Just returns when no debugger is connected that has booked the output. - \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. - \param [in] ch Character to transmit. - \returns Character to transmit. - */ -__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) -{ - if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ - ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ - { - while (ITM->PORT[0U].u32 == 0UL) - { - __NOP(); - } - ITM->PORT[0U].u8 = (uint8_t)ch; - } - return (ch); -} - - -/** - \brief ITM Receive Character - \details Inputs a character via the external variable \ref ITM_RxBuffer. - \return Received character. - \return -1 No character pending. - */ -__STATIC_INLINE int32_t ITM_ReceiveChar (void) -{ - int32_t ch = -1; /* no character available */ - - if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) - { - ch = ITM_RxBuffer; - ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ - } - - return (ch); -} - - -/** - \brief ITM Check Character - \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. - \return 0 No character available. - \return 1 Character available. - */ -__STATIC_INLINE int32_t ITM_CheckChar (void) -{ - - if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) - { - return (0); /* no character available */ - } - else - { - return (1); /* character available */ - } -} - -/*@} end of CMSIS_core_DebugFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM3_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_cm3.h + * @brief CMSIS Cortex-M3 Core Peripheral Access Layer Header File + * @version V5.0.8 + * @date 04. June 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_CM3_H_GENERIC +#define __CORE_CM3_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup Cortex_M3 + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS CM3 definitions */ +#define __CM3_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __CM3_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __CM3_CMSIS_VERSION ((__CM3_CMSIS_VERSION_MAIN << 16U) | \ + __CM3_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_M (3U) /*!< Cortex-M Core */ + +/** __FPU_USED indicates whether an FPU is used or not. + This core does not support an FPU at all +*/ +#define __FPU_USED 0U + +#if defined ( __CC_ARM ) + #if defined __TARGET_FPU_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined __ARM_PCS_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __ICCARM__ ) + #if defined __ARMVFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TI_ARM__ ) + #if defined __TI_VFP_SUPPORT__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TASKING__ ) + #if defined __FPU_VFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM3_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_CM3_H_DEPENDANT +#define __CORE_CM3_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __CM3_REV + #define __CM3_REV 0x0200U + #warning "__CM3_REV not defined in device header file; using default!" + #endif + + #ifndef __MPU_PRESENT + #define __MPU_PRESENT 0U + #warning "__MPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 3U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group Cortex_M3 */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + - Core Debug Register + - Core MPU Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:27; /*!< bit: 0..26 Reserved */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + +#define APSR_Q_Pos 27U /*!< APSR: Q Position */ +#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:1; /*!< bit: 9 Reserved */ + uint32_t ICI_IT_1:6; /*!< bit: 10..15 ICI/IT part 1 */ + uint32_t _reserved1:8; /*!< bit: 16..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit */ + uint32_t ICI_IT_2:2; /*!< bit: 25..26 ICI/IT part 2 */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ +#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ + +#define xPSR_ICI_IT_2_Pos 25U /*!< xPSR: ICI/IT part 2 Position */ +#define xPSR_ICI_IT_2_Msk (3UL << xPSR_ICI_IT_2_Pos) /*!< xPSR: ICI/IT part 2 Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_ICI_IT_1_Pos 10U /*!< xPSR: ICI/IT part 1 Position */ +#define xPSR_ICI_IT_1_Msk (0x3FUL << xPSR_ICI_IT_1_Pos) /*!< xPSR: ICI/IT part 1 Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ + uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ + uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ +#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[8U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[24U]; + __IOM uint32_t ICER[8U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[24U]; + __IOM uint32_t ISPR[8U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[24U]; + __IOM uint32_t ICPR[8U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[24U]; + __IOM uint32_t IABR[8U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ + uint32_t RESERVED4[56U]; + __IOM uint8_t IP[240U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ + uint32_t RESERVED5[644U]; + __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ +} NVIC_Type; + +/* Software Triggered Interrupt Register Definitions */ +#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ +#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ + __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + __IOM uint8_t SHP[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ + __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ + __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ + __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ + __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ + __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ + __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ + __IM uint32_t PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ + __IM uint32_t DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ + __IM uint32_t ADR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ + __IM uint32_t MMFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ + __IM uint32_t ISAR[5U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ + uint32_t RESERVED0[5U]; + __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ +#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ +#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +/* SCB Vector Table Offset Register Definitions */ +#if defined (__CM3_REV) && (__CM3_REV < 0x0201U) /* core r2p1 */ +#define SCB_VTOR_TBLBASE_Pos 29U /*!< SCB VTOR: TBLBASE Position */ +#define SCB_VTOR_TBLBASE_Msk (1UL << SCB_VTOR_TBLBASE_Pos) /*!< SCB VTOR: TBLBASE Mask */ + +#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ +#define SCB_VTOR_TBLOFF_Msk (0x3FFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ +#else +#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ +#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ +#endif + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ +#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +#define SCB_AIRCR_VECTRESET_Pos 0U /*!< SCB AIRCR: VECTRESET Position */ +#define SCB_AIRCR_VECTRESET_Msk (1UL /*<< SCB_AIRCR_VECTRESET_Pos*/) /*!< SCB AIRCR: VECTRESET Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ +#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ + +#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ +#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ + +#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ +#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ +#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ + +#define SCB_CCR_NONBASETHRDENA_Pos 0U /*!< SCB CCR: NONBASETHRDENA Position */ +#define SCB_CCR_NONBASETHRDENA_Msk (1UL /*<< SCB_CCR_NONBASETHRDENA_Pos*/) /*!< SCB CCR: NONBASETHRDENA Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ +#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ + +#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ +#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ + +#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ +#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ + +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ +#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ + +#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ +#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ + +#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ +#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ + +#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ +#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ + +#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ +#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ + +#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ +#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ + +#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ +#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ + +#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ +#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ + +#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ +#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ + +#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ +#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ + +/* SCB Configurable Fault Status Register Definitions */ +#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ +#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ + +#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ +#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ + +#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ +#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ + +/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ +#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ + +#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ +#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ + +#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ +#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ + +#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ +#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ + +#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ +#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ + +/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ +#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ + +#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ +#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ + +#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ +#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ + +#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ +#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ + +#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ +#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ + +#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ +#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ + +/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ +#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ + +#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ +#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ + +#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ +#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ + +#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ +#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ + +#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ +#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ + +#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ +#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ + +/* SCB Hard Fault Status Register Definitions */ +#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ +#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ + +#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ +#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ + +#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ +#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ + +/* SCB Debug Fault Status Register Definitions */ +#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ +#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ + +#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ +#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ + +#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ +#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ + +#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ +#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ + +#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ +#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) + \brief Type definitions for the System Control and ID Register not in the SCB + @{ + */ + +/** + \brief Structure type to access the System Control and ID Register not in the SCB. + */ +typedef struct +{ + uint32_t RESERVED0[1U]; + __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ +#if defined (__CM3_REV) && (__CM3_REV >= 0x200U) + __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ +#else + uint32_t RESERVED1[1U]; +#endif +} SCnSCB_Type; + +/* Interrupt Controller Type Register Definitions */ +#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ +#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ + +/* Auxiliary Control Register Definitions */ + +#define SCnSCB_ACTLR_DISFOLD_Pos 2U /*!< ACTLR: DISFOLD Position */ +#define SCnSCB_ACTLR_DISFOLD_Msk (1UL << SCnSCB_ACTLR_DISFOLD_Pos) /*!< ACTLR: DISFOLD Mask */ + +#define SCnSCB_ACTLR_DISDEFWBUF_Pos 1U /*!< ACTLR: DISDEFWBUF Position */ +#define SCnSCB_ACTLR_DISDEFWBUF_Msk (1UL << SCnSCB_ACTLR_DISDEFWBUF_Pos) /*!< ACTLR: DISDEFWBUF Mask */ + +#define SCnSCB_ACTLR_DISMCYCINT_Pos 0U /*!< ACTLR: DISMCYCINT Position */ +#define SCnSCB_ACTLR_DISMCYCINT_Msk (1UL /*<< SCnSCB_ACTLR_DISMCYCINT_Pos*/) /*!< ACTLR: DISMCYCINT Mask */ + +/*@} end of group CMSIS_SCnotSCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) + \brief Type definitions for the Instrumentation Trace Macrocell (ITM) + @{ + */ + +/** + \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). + */ +typedef struct +{ + __OM union + { + __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ + __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ + __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ + } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ + uint32_t RESERVED0[864U]; + __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ + uint32_t RESERVED1[15U]; + __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ + uint32_t RESERVED2[15U]; + __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ + uint32_t RESERVED3[29U]; + __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ + __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ + __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ + uint32_t RESERVED4[43U]; + __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ + __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ + uint32_t RESERVED5[6U]; + __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ + __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ + __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ + __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ + __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ + __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ + __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ + __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ + __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ + __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ + __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ + __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ +} ITM_Type; + +/* ITM Trace Privilege Register Definitions */ +#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ +#define ITM_TPR_PRIVMASK_Msk (0xFFFFFFFFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ + +/* ITM Trace Control Register Definitions */ +#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ +#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ + +#define ITM_TCR_TraceBusID_Pos 16U /*!< ITM TCR: ATBID Position */ +#define ITM_TCR_TraceBusID_Msk (0x7FUL << ITM_TCR_TraceBusID_Pos) /*!< ITM TCR: ATBID Mask */ + +#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ +#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ + +#define ITM_TCR_TSPrescale_Pos 8U /*!< ITM TCR: TSPrescale Position */ +#define ITM_TCR_TSPrescale_Msk (3UL << ITM_TCR_TSPrescale_Pos) /*!< ITM TCR: TSPrescale Mask */ + +#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ +#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ + +#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ +#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ + +#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ +#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ + +#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ +#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ + +#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ +#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ + +/* ITM Integration Write Register Definitions */ +#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ +#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ + +/* ITM Integration Read Register Definitions */ +#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ +#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ + +/* ITM Integration Mode Control Register Definitions */ +#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ +#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ + +/* ITM Lock Status Register Definitions */ +#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ +#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ + +#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ +#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ + +#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ +#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ + +/*@}*/ /* end of group CMSIS_ITM */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) + \brief Type definitions for the Data Watchpoint and Trace (DWT) + @{ + */ + +/** + \brief Structure type to access the Data Watchpoint and Trace Register (DWT). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ + __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ + __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ + __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ + __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ + __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ + __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ + __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ + __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ + __IOM uint32_t MASK0; /*!< Offset: 0x024 (R/W) Mask Register 0 */ + __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ + uint32_t RESERVED0[1U]; + __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ + __IOM uint32_t MASK1; /*!< Offset: 0x034 (R/W) Mask Register 1 */ + __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ + uint32_t RESERVED1[1U]; + __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ + __IOM uint32_t MASK2; /*!< Offset: 0x044 (R/W) Mask Register 2 */ + __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ + uint32_t RESERVED2[1U]; + __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ + __IOM uint32_t MASK3; /*!< Offset: 0x054 (R/W) Mask Register 3 */ + __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ +} DWT_Type; + +/* DWT Control Register Definitions */ +#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ +#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ + +#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ +#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ + +#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ +#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ + +#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ +#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ + +#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ +#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ + +#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ +#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ + +#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ +#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ + +#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ +#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ + +#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ +#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ + +#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ +#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ + +#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ +#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ + +#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ +#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ + +#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ +#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ + +#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ +#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ + +#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ +#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ + +#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ +#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ + +#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ +#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ + +#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ +#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ + +/* DWT CPI Count Register Definitions */ +#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ +#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ + +/* DWT Exception Overhead Count Register Definitions */ +#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ +#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ + +/* DWT Sleep Count Register Definitions */ +#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ +#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ + +/* DWT LSU Count Register Definitions */ +#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ +#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ + +/* DWT Folded-instruction Count Register Definitions */ +#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ +#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ + +/* DWT Comparator Mask Register Definitions */ +#define DWT_MASK_MASK_Pos 0U /*!< DWT MASK: MASK Position */ +#define DWT_MASK_MASK_Msk (0x1FUL /*<< DWT_MASK_MASK_Pos*/) /*!< DWT MASK: MASK Mask */ + +/* DWT Comparator Function Register Definitions */ +#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ +#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ + +#define DWT_FUNCTION_DATAVADDR1_Pos 16U /*!< DWT FUNCTION: DATAVADDR1 Position */ +#define DWT_FUNCTION_DATAVADDR1_Msk (0xFUL << DWT_FUNCTION_DATAVADDR1_Pos) /*!< DWT FUNCTION: DATAVADDR1 Mask */ + +#define DWT_FUNCTION_DATAVADDR0_Pos 12U /*!< DWT FUNCTION: DATAVADDR0 Position */ +#define DWT_FUNCTION_DATAVADDR0_Msk (0xFUL << DWT_FUNCTION_DATAVADDR0_Pos) /*!< DWT FUNCTION: DATAVADDR0 Mask */ + +#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ +#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ + +#define DWT_FUNCTION_LNK1ENA_Pos 9U /*!< DWT FUNCTION: LNK1ENA Position */ +#define DWT_FUNCTION_LNK1ENA_Msk (0x1UL << DWT_FUNCTION_LNK1ENA_Pos) /*!< DWT FUNCTION: LNK1ENA Mask */ + +#define DWT_FUNCTION_DATAVMATCH_Pos 8U /*!< DWT FUNCTION: DATAVMATCH Position */ +#define DWT_FUNCTION_DATAVMATCH_Msk (0x1UL << DWT_FUNCTION_DATAVMATCH_Pos) /*!< DWT FUNCTION: DATAVMATCH Mask */ + +#define DWT_FUNCTION_CYCMATCH_Pos 7U /*!< DWT FUNCTION: CYCMATCH Position */ +#define DWT_FUNCTION_CYCMATCH_Msk (0x1UL << DWT_FUNCTION_CYCMATCH_Pos) /*!< DWT FUNCTION: CYCMATCH Mask */ + +#define DWT_FUNCTION_EMITRANGE_Pos 5U /*!< DWT FUNCTION: EMITRANGE Position */ +#define DWT_FUNCTION_EMITRANGE_Msk (0x1UL << DWT_FUNCTION_EMITRANGE_Pos) /*!< DWT FUNCTION: EMITRANGE Mask */ + +#define DWT_FUNCTION_FUNCTION_Pos 0U /*!< DWT FUNCTION: FUNCTION Position */ +#define DWT_FUNCTION_FUNCTION_Msk (0xFUL /*<< DWT_FUNCTION_FUNCTION_Pos*/) /*!< DWT FUNCTION: FUNCTION Mask */ + +/*@}*/ /* end of group CMSIS_DWT */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_TPI Trace Port Interface (TPI) + \brief Type definitions for the Trace Port Interface (TPI) + @{ + */ + +/** + \brief Structure type to access the Trace Port Interface Register (TPI). + */ +typedef struct +{ + __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ + __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ + uint32_t RESERVED0[2U]; + __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ + uint32_t RESERVED1[55U]; + __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ + uint32_t RESERVED2[131U]; + __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ + __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ + __IM uint32_t FSCR; /*!< Offset: 0x308 (R/ ) Formatter Synchronization Counter Register */ + uint32_t RESERVED3[759U]; + __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ + __IM uint32_t FIFO0; /*!< Offset: 0xEEC (R/ ) Integration ETM Data */ + __IM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/ ) ITATBCTR2 */ + uint32_t RESERVED4[1U]; + __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) ITATBCTR0 */ + __IM uint32_t FIFO1; /*!< Offset: 0xEFC (R/ ) Integration ITM Data */ + __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ + uint32_t RESERVED5[39U]; + __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ + __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ + uint32_t RESERVED7[8U]; + __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) TPIU_DEVID */ + __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) TPIU_DEVTYPE */ +} TPI_Type; + +/* TPI Asynchronous Clock Prescaler Register Definitions */ +#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ +#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ + +/* TPI Selected Pin Protocol Register Definitions */ +#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ +#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ + +/* TPI Formatter and Flush Status Register Definitions */ +#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ +#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ + +#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ +#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ + +#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ +#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ + +#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ +#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ + +/* TPI Formatter and Flush Control Register Definitions */ +#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ +#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ + +#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ +#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ + +/* TPI TRIGGER Register Definitions */ +#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ +#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ + +/* TPI Integration ETM Data Register Definitions (FIFO0) */ +#define TPI_FIFO0_ITM_ATVALID_Pos 29U /*!< TPI FIFO0: ITM_ATVALID Position */ +#define TPI_FIFO0_ITM_ATVALID_Msk (0x3UL << TPI_FIFO0_ITM_ATVALID_Pos) /*!< TPI FIFO0: ITM_ATVALID Mask */ + +#define TPI_FIFO0_ITM_bytecount_Pos 27U /*!< TPI FIFO0: ITM_bytecount Position */ +#define TPI_FIFO0_ITM_bytecount_Msk (0x3UL << TPI_FIFO0_ITM_bytecount_Pos) /*!< TPI FIFO0: ITM_bytecount Mask */ + +#define TPI_FIFO0_ETM_ATVALID_Pos 26U /*!< TPI FIFO0: ETM_ATVALID Position */ +#define TPI_FIFO0_ETM_ATVALID_Msk (0x3UL << TPI_FIFO0_ETM_ATVALID_Pos) /*!< TPI FIFO0: ETM_ATVALID Mask */ + +#define TPI_FIFO0_ETM_bytecount_Pos 24U /*!< TPI FIFO0: ETM_bytecount Position */ +#define TPI_FIFO0_ETM_bytecount_Msk (0x3UL << TPI_FIFO0_ETM_bytecount_Pos) /*!< TPI FIFO0: ETM_bytecount Mask */ + +#define TPI_FIFO0_ETM2_Pos 16U /*!< TPI FIFO0: ETM2 Position */ +#define TPI_FIFO0_ETM2_Msk (0xFFUL << TPI_FIFO0_ETM2_Pos) /*!< TPI FIFO0: ETM2 Mask */ + +#define TPI_FIFO0_ETM1_Pos 8U /*!< TPI FIFO0: ETM1 Position */ +#define TPI_FIFO0_ETM1_Msk (0xFFUL << TPI_FIFO0_ETM1_Pos) /*!< TPI FIFO0: ETM1 Mask */ + +#define TPI_FIFO0_ETM0_Pos 0U /*!< TPI FIFO0: ETM0 Position */ +#define TPI_FIFO0_ETM0_Msk (0xFFUL /*<< TPI_FIFO0_ETM0_Pos*/) /*!< TPI FIFO0: ETM0 Mask */ + +/* TPI ITATBCTR2 Register Definitions */ +#define TPI_ITATBCTR2_ATREADY2_Pos 0U /*!< TPI ITATBCTR2: ATREADY2 Position */ +#define TPI_ITATBCTR2_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2_Pos*/) /*!< TPI ITATBCTR2: ATREADY2 Mask */ + +#define TPI_ITATBCTR2_ATREADY1_Pos 0U /*!< TPI ITATBCTR2: ATREADY1 Position */ +#define TPI_ITATBCTR2_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1_Pos*/) /*!< TPI ITATBCTR2: ATREADY1 Mask */ + +/* TPI Integration ITM Data Register Definitions (FIFO1) */ +#define TPI_FIFO1_ITM_ATVALID_Pos 29U /*!< TPI FIFO1: ITM_ATVALID Position */ +#define TPI_FIFO1_ITM_ATVALID_Msk (0x3UL << TPI_FIFO1_ITM_ATVALID_Pos) /*!< TPI FIFO1: ITM_ATVALID Mask */ + +#define TPI_FIFO1_ITM_bytecount_Pos 27U /*!< TPI FIFO1: ITM_bytecount Position */ +#define TPI_FIFO1_ITM_bytecount_Msk (0x3UL << TPI_FIFO1_ITM_bytecount_Pos) /*!< TPI FIFO1: ITM_bytecount Mask */ + +#define TPI_FIFO1_ETM_ATVALID_Pos 26U /*!< TPI FIFO1: ETM_ATVALID Position */ +#define TPI_FIFO1_ETM_ATVALID_Msk (0x3UL << TPI_FIFO1_ETM_ATVALID_Pos) /*!< TPI FIFO1: ETM_ATVALID Mask */ + +#define TPI_FIFO1_ETM_bytecount_Pos 24U /*!< TPI FIFO1: ETM_bytecount Position */ +#define TPI_FIFO1_ETM_bytecount_Msk (0x3UL << TPI_FIFO1_ETM_bytecount_Pos) /*!< TPI FIFO1: ETM_bytecount Mask */ + +#define TPI_FIFO1_ITM2_Pos 16U /*!< TPI FIFO1: ITM2 Position */ +#define TPI_FIFO1_ITM2_Msk (0xFFUL << TPI_FIFO1_ITM2_Pos) /*!< TPI FIFO1: ITM2 Mask */ + +#define TPI_FIFO1_ITM1_Pos 8U /*!< TPI FIFO1: ITM1 Position */ +#define TPI_FIFO1_ITM1_Msk (0xFFUL << TPI_FIFO1_ITM1_Pos) /*!< TPI FIFO1: ITM1 Mask */ + +#define TPI_FIFO1_ITM0_Pos 0U /*!< TPI FIFO1: ITM0 Position */ +#define TPI_FIFO1_ITM0_Msk (0xFFUL /*<< TPI_FIFO1_ITM0_Pos*/) /*!< TPI FIFO1: ITM0 Mask */ + +/* TPI ITATBCTR0 Register Definitions */ +#define TPI_ITATBCTR0_ATREADY2_Pos 0U /*!< TPI ITATBCTR0: ATREADY2 Position */ +#define TPI_ITATBCTR0_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2_Pos*/) /*!< TPI ITATBCTR0: ATREADY2 Mask */ + +#define TPI_ITATBCTR0_ATREADY1_Pos 0U /*!< TPI ITATBCTR0: ATREADY1 Position */ +#define TPI_ITATBCTR0_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1_Pos*/) /*!< TPI ITATBCTR0: ATREADY1 Mask */ + +/* TPI Integration Mode Control Register Definitions */ +#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ +#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ + +/* TPI DEVID Register Definitions */ +#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ +#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ + +#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ +#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ + +#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ +#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ + +#define TPI_DEVID_MinBufSz_Pos 6U /*!< TPI DEVID: MinBufSz Position */ +#define TPI_DEVID_MinBufSz_Msk (0x7UL << TPI_DEVID_MinBufSz_Pos) /*!< TPI DEVID: MinBufSz Mask */ + +#define TPI_DEVID_AsynClkIn_Pos 5U /*!< TPI DEVID: AsynClkIn Position */ +#define TPI_DEVID_AsynClkIn_Msk (0x1UL << TPI_DEVID_AsynClkIn_Pos) /*!< TPI DEVID: AsynClkIn Mask */ + +#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ +#define TPI_DEVID_NrTraceInput_Msk (0x1FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ + +/* TPI DEVTYPE Register Definitions */ +#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ +#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ + +#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ +#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ + +/*@}*/ /* end of group CMSIS_TPI */ + + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_MPU Memory Protection Unit (MPU) + \brief Type definitions for the Memory Protection Unit (MPU) + @{ + */ + +/** + \brief Structure type to access the Memory Protection Unit (MPU). + */ +typedef struct +{ + __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ + __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ + __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ + __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Alias 1 Region Base Address Register */ + __IOM uint32_t RASR_A1; /*!< Offset: 0x018 (R/W) MPU Alias 1 Region Attribute and Size Register */ + __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Alias 2 Region Base Address Register */ + __IOM uint32_t RASR_A2; /*!< Offset: 0x020 (R/W) MPU Alias 2 Region Attribute and Size Register */ + __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Alias 3 Region Base Address Register */ + __IOM uint32_t RASR_A3; /*!< Offset: 0x028 (R/W) MPU Alias 3 Region Attribute and Size Register */ +} MPU_Type; + +#define MPU_TYPE_RALIASES 4U + +/* MPU Type Register Definitions */ +#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ +#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ + +#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ +#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ + +#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ +#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ + +/* MPU Control Register Definitions */ +#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ +#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ + +#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ +#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ + +#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ +#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ + +/* MPU Region Number Register Definitions */ +#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ +#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ + +/* MPU Region Base Address Register Definitions */ +#define MPU_RBAR_ADDR_Pos 5U /*!< MPU RBAR: ADDR Position */ +#define MPU_RBAR_ADDR_Msk (0x7FFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ + +#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ +#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ + +#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ +#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ + +/* MPU Region Attribute and Size Register Definitions */ +#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ +#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ + +#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ +#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ + +#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ +#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ + +#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ +#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ + +#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ +#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ + +#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ +#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ + +#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ +#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ + +#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ +#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ + +#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ +#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ + +#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ +#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ + +/*@} end of group CMSIS_MPU */ +#endif + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief Type definitions for the Core Debug Registers + @{ + */ + +/** + \brief Structure type to access the Core Debug Register (CoreDebug). + */ +typedef struct +{ + __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ + __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ + __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ + __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ +} CoreDebug_Type; + +/* Debug Halting Control and Status Register Definitions */ +#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ +#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ + +#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ +#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ + +#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ +#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ + +#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ +#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ + +#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ +#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ + +#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ +#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ + +#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ +#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ + +#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ +#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ + +#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ +#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ + +#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ +#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ + +#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ +#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ + +#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ +#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ + +/* Debug Core Register Selector Register Definitions */ +#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ +#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ + +#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ +#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ + +/* Debug Exception and Monitor Control Register Definitions */ +#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ +#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ + +#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ +#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ + +#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ +#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ + +#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ +#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ + +#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ +#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ + +#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ +#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ + +#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ +#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ + +#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ +#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ + +#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ +#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ + +#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ +#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ + +#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ +#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ + +#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ +#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ + +#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ +#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ + +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ +#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ +#define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ +#define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ +#define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ +#define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ +#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ +#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ +#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + +#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ +#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ +#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ +#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ +#define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ +#define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ +#define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ +#define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE) /*!< Core Debug configuration struct */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ + #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ +#endif + +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Debug Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping + #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ + #define NVIC_GetActive __NVIC_GetActive + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* The following EXC_RETURN values are saved the LR on exception entry */ +#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ +#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ +#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ + + +/** + \brief Set Priority Grouping + \details Sets the priority grouping field using the required unlock sequence. + The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. + Only values from 0..7 are used. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Priority grouping field. + */ +__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) +{ + uint32_t reg_value; + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + + reg_value = SCB->AIRCR; /* read old register configuration */ + reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ + reg_value = (reg_value | + ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (PriorityGroupTmp << SCB_AIRCR_PRIGROUP_Pos) ); /* Insert write key and priority group */ + SCB->AIRCR = reg_value; +} + + +/** + \brief Get Priority Grouping + \details Reads the priority grouping field from the NVIC Interrupt Controller. + \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). + */ +__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) +{ + return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); +} + + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt + \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } + else + { + SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return(((uint32_t)NVIC->IP[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return(((uint32_t)SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Encode Priority + \details Encodes the priority for an interrupt with the given priority group, + preemptive priority value, and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Used priority group. + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + ); +} + + +/** + \brief Decode Priority + \details Decodes an interrupt priority value with a given priority group to + preemptive priority value and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. + \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). + \param [in] PriorityGroup Used priority group. + \param [out] pPreemptPriority Preemptive priority value (starting from 0). + \param [out] pSubPriority Subpriority value (starting from 0). + */ +__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); + *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); +} + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + VTOR must been relocated to SRAM before. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | + SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +/*@} end of CMSIS_Core_NVICFunctions */ + +/* ########################## MPU functions #################################### */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + +#include "mpu_armv7.h" + +#endif + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + return 0U; /* No FPU */ +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + +/* ##################################### Debug In/Output function ########################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_core_DebugFunctions ITM Functions + \brief Functions that access the ITM debug interface. + @{ + */ + +extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ +#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ + + +/** + \brief ITM Send Character + \details Transmits a character via the ITM channel 0, and + \li Just returns when no debugger is connected that has booked the output. + \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. + \param [in] ch Character to transmit. + \returns Character to transmit. + */ +__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) +{ + if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ + ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ + { + while (ITM->PORT[0U].u32 == 0UL) + { + __NOP(); + } + ITM->PORT[0U].u8 = (uint8_t)ch; + } + return (ch); +} + + +/** + \brief ITM Receive Character + \details Inputs a character via the external variable \ref ITM_RxBuffer. + \return Received character. + \return -1 No character pending. + */ +__STATIC_INLINE int32_t ITM_ReceiveChar (void) +{ + int32_t ch = -1; /* no character available */ + + if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) + { + ch = ITM_RxBuffer; + ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ + } + + return (ch); +} + + +/** + \brief ITM Check Character + \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. + \return 0 No character available. + \return 1 Character available. + */ +__STATIC_INLINE int32_t ITM_CheckChar (void) +{ + + if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) + { + return (0); /* no character available */ + } + else + { + return (1); /* character available */ + } +} + +/*@} end of CMSIS_core_DebugFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM3_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/core_cm33.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm33.h similarity index 98% rename from stm32f103/Drivers/CMSIS/Include/core_cm33.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_cm33.h index 02f82e2..6cd2db7 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_cm33.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm33.h @@ -1,3002 +1,3002 @@ -/**************************************************************************//** - * @file core_cm33.h - * @brief CMSIS Cortex-M33 Core Peripheral Access Layer Header File - * @version V5.0.9 - * @date 06. July 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_CM33_H_GENERIC -#define __CORE_CM33_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup Cortex_M33 - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS CM33 definitions */ -#define __CM33_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __CM33_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __CM33_CMSIS_VERSION ((__CM33_CMSIS_VERSION_MAIN << 16U) | \ - __CM33_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_M (33U) /*!< Cortex-M Core */ - -/** __FPU_USED indicates whether an FPU is used or not. - For this, __FPU_PRESENT has to be checked prior to making use of FPU specific registers and functions. -*/ -#if defined ( __CC_ARM ) - #if defined (__TARGET_FPU_VFP) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - - #if defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1U) - #if defined (__DSP_PRESENT) && (__DSP_PRESENT == 1U) - #define __DSP_USED 1U - #else - #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" - #define __DSP_USED 0U - #endif - #else - #define __DSP_USED 0U - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined (__ARM_PCS_VFP) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #warning "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - - #if defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1U) - #if defined (__DSP_PRESENT) && (__DSP_PRESENT == 1U) - #define __DSP_USED 1U - #else - #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" - #define __DSP_USED 0U - #endif - #else - #define __DSP_USED 0U - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - - #if defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1U) - #if defined (__DSP_PRESENT) && (__DSP_PRESENT == 1U) - #define __DSP_USED 1U - #else - #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" - #define __DSP_USED 0U - #endif - #else - #define __DSP_USED 0U - #endif - -#elif defined ( __ICCARM__ ) - #if defined (__ARMVFP__) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - - #if defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1U) - #if defined (__DSP_PRESENT) && (__DSP_PRESENT == 1U) - #define __DSP_USED 1U - #else - #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" - #define __DSP_USED 0U - #endif - #else - #define __DSP_USED 0U - #endif - -#elif defined ( __TI_ARM__ ) - #if defined (__TI_VFP_SUPPORT__) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __TASKING__ ) - #if defined (__FPU_VFP__) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM33_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_CM33_H_DEPENDANT -#define __CORE_CM33_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __CM33_REV - #define __CM33_REV 0x0000U - #warning "__CM33_REV not defined in device header file; using default!" - #endif - - #ifndef __FPU_PRESENT - #define __FPU_PRESENT 0U - #warning "__FPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __MPU_PRESENT - #define __MPU_PRESENT 0U - #warning "__MPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __SAUREGION_PRESENT - #define __SAUREGION_PRESENT 0U - #warning "__SAUREGION_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __DSP_PRESENT - #define __DSP_PRESENT 0U - #warning "__DSP_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 3U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group Cortex_M33 */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - - Core Debug Register - - Core MPU Register - - Core SAU Register - - Core FPU Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:16; /*!< bit: 0..15 Reserved */ - uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ - uint32_t _reserved1:7; /*!< bit: 20..26 Reserved */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - -#define APSR_Q_Pos 27U /*!< APSR: Q Position */ -#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ - -#define APSR_GE_Pos 16U /*!< APSR: GE Position */ -#define APSR_GE_Msk (0xFUL << APSR_GE_Pos) /*!< APSR: GE Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:7; /*!< bit: 9..15 Reserved */ - uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ - uint32_t _reserved1:4; /*!< bit: 20..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ - uint32_t IT:2; /*!< bit: 25..26 saved IT state (read 0) */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ -#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ - -#define xPSR_IT_Pos 25U /*!< xPSR: IT Position */ -#define xPSR_IT_Msk (3UL << xPSR_IT_Pos) /*!< xPSR: IT Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_GE_Pos 16U /*!< xPSR: GE Position */ -#define xPSR_GE_Msk (0xFUL << xPSR_GE_Pos) /*!< xPSR: GE Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ - uint32_t SPSEL:1; /*!< bit: 1 Stack-pointer select */ - uint32_t FPCA:1; /*!< bit: 2 Floating-point context active */ - uint32_t SFPA:1; /*!< bit: 3 Secure floating-point active */ - uint32_t _reserved1:28; /*!< bit: 4..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_SFPA_Pos 3U /*!< CONTROL: SFPA Position */ -#define CONTROL_SFPA_Msk (1UL << CONTROL_SFPA_Pos) /*!< CONTROL: SFPA Mask */ - -#define CONTROL_FPCA_Pos 2U /*!< CONTROL: FPCA Position */ -#define CONTROL_FPCA_Msk (1UL << CONTROL_FPCA_Pos) /*!< CONTROL: FPCA Mask */ - -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ -#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[16U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[16U]; - __IOM uint32_t ICER[16U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[16U]; - __IOM uint32_t ISPR[16U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[16U]; - __IOM uint32_t ICPR[16U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[16U]; - __IOM uint32_t IABR[16U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ - uint32_t RESERVED4[16U]; - __IOM uint32_t ITNS[16U]; /*!< Offset: 0x280 (R/W) Interrupt Non-Secure State Register */ - uint32_t RESERVED5[16U]; - __IOM uint8_t IPR[496U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ - uint32_t RESERVED6[580U]; - __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ -} NVIC_Type; - -/* Software Triggered Interrupt Register Definitions */ -#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ -#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ - __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - __IOM uint8_t SHPR[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ - __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ - __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ - __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ - __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ - __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ - __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ - __IM uint32_t ID_PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ - __IM uint32_t ID_DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ - __IM uint32_t ID_ADR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ - __IM uint32_t ID_MMFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ - __IM uint32_t ID_ISAR[6U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ - __IM uint32_t CLIDR; /*!< Offset: 0x078 (R/ ) Cache Level ID register */ - __IM uint32_t CTR; /*!< Offset: 0x07C (R/ ) Cache Type register */ - __IM uint32_t CCSIDR; /*!< Offset: 0x080 (R/ ) Cache Size ID Register */ - __IOM uint32_t CSSELR; /*!< Offset: 0x084 (R/W) Cache Size Selection Register */ - __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ - __IOM uint32_t NSACR; /*!< Offset: 0x08C (R/W) Non-Secure Access Control Register */ - uint32_t RESERVED3[92U]; - __OM uint32_t STIR; /*!< Offset: 0x200 ( /W) Software Triggered Interrupt Register */ - uint32_t RESERVED4[15U]; - __IM uint32_t MVFR0; /*!< Offset: 0x240 (R/ ) Media and VFP Feature Register 0 */ - __IM uint32_t MVFR1; /*!< Offset: 0x244 (R/ ) Media and VFP Feature Register 1 */ - __IM uint32_t MVFR2; /*!< Offset: 0x248 (R/ ) Media and VFP Feature Register 2 */ - uint32_t RESERVED5[1U]; - __OM uint32_t ICIALLU; /*!< Offset: 0x250 ( /W) I-Cache Invalidate All to PoU */ - uint32_t RESERVED6[1U]; - __OM uint32_t ICIMVAU; /*!< Offset: 0x258 ( /W) I-Cache Invalidate by MVA to PoU */ - __OM uint32_t DCIMVAC; /*!< Offset: 0x25C ( /W) D-Cache Invalidate by MVA to PoC */ - __OM uint32_t DCISW; /*!< Offset: 0x260 ( /W) D-Cache Invalidate by Set-way */ - __OM uint32_t DCCMVAU; /*!< Offset: 0x264 ( /W) D-Cache Clean by MVA to PoU */ - __OM uint32_t DCCMVAC; /*!< Offset: 0x268 ( /W) D-Cache Clean by MVA to PoC */ - __OM uint32_t DCCSW; /*!< Offset: 0x26C ( /W) D-Cache Clean by Set-way */ - __OM uint32_t DCCIMVAC; /*!< Offset: 0x270 ( /W) D-Cache Clean and Invalidate by MVA to PoC */ - __OM uint32_t DCCISW; /*!< Offset: 0x274 ( /W) D-Cache Clean and Invalidate by Set-way */ - uint32_t RESERVED7[6U]; - __IOM uint32_t ITCMCR; /*!< Offset: 0x290 (R/W) Instruction Tightly-Coupled Memory Control Register */ - __IOM uint32_t DTCMCR; /*!< Offset: 0x294 (R/W) Data Tightly-Coupled Memory Control Registers */ - __IOM uint32_t AHBPCR; /*!< Offset: 0x298 (R/W) AHBP Control Register */ - __IOM uint32_t CACR; /*!< Offset: 0x29C (R/W) L1 Cache Control Register */ - __IOM uint32_t AHBSCR; /*!< Offset: 0x2A0 (R/W) AHB Slave Control Register */ - uint32_t RESERVED8[1U]; - __IOM uint32_t ABFSR; /*!< Offset: 0x2A8 (R/W) Auxiliary Bus Fault Status Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_PENDNMISET_Pos 31U /*!< SCB ICSR: PENDNMISET Position */ -#define SCB_ICSR_PENDNMISET_Msk (1UL << SCB_ICSR_PENDNMISET_Pos) /*!< SCB ICSR: PENDNMISET Mask */ - -#define SCB_ICSR_NMIPENDSET_Pos SCB_ICSR_PENDNMISET_Pos /*!< SCB ICSR: NMIPENDSET Position, backward compatibility */ -#define SCB_ICSR_NMIPENDSET_Msk SCB_ICSR_PENDNMISET_Msk /*!< SCB ICSR: NMIPENDSET Mask, backward compatibility */ - -#define SCB_ICSR_PENDNMICLR_Pos 30U /*!< SCB ICSR: PENDNMICLR Position */ -#define SCB_ICSR_PENDNMICLR_Msk (1UL << SCB_ICSR_PENDNMICLR_Pos) /*!< SCB ICSR: PENDNMICLR Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_STTNS_Pos 24U /*!< SCB ICSR: STTNS Position (Security Extension) */ -#define SCB_ICSR_STTNS_Msk (1UL << SCB_ICSR_STTNS_Pos) /*!< SCB ICSR: STTNS Mask (Security Extension) */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ -#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -/* SCB Vector Table Offset Register Definitions */ -#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ -#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_PRIS_Pos 14U /*!< SCB AIRCR: PRIS Position */ -#define SCB_AIRCR_PRIS_Msk (1UL << SCB_AIRCR_PRIS_Pos) /*!< SCB AIRCR: PRIS Mask */ - -#define SCB_AIRCR_BFHFNMINS_Pos 13U /*!< SCB AIRCR: BFHFNMINS Position */ -#define SCB_AIRCR_BFHFNMINS_Msk (1UL << SCB_AIRCR_BFHFNMINS_Pos) /*!< SCB AIRCR: BFHFNMINS Mask */ - -#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ -#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ - -#define SCB_AIRCR_SYSRESETREQS_Pos 3U /*!< SCB AIRCR: SYSRESETREQS Position */ -#define SCB_AIRCR_SYSRESETREQS_Msk (1UL << SCB_AIRCR_SYSRESETREQS_Pos) /*!< SCB AIRCR: SYSRESETREQS Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEPS_Pos 3U /*!< SCB SCR: SLEEPDEEPS Position */ -#define SCB_SCR_SLEEPDEEPS_Msk (1UL << SCB_SCR_SLEEPDEEPS_Pos) /*!< SCB SCR: SLEEPDEEPS Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_BP_Pos 18U /*!< SCB CCR: BP Position */ -#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos) /*!< SCB CCR: BP Mask */ - -#define SCB_CCR_IC_Pos 17U /*!< SCB CCR: IC Position */ -#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos) /*!< SCB CCR: IC Mask */ - -#define SCB_CCR_DC_Pos 16U /*!< SCB CCR: DC Position */ -#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos) /*!< SCB CCR: DC Mask */ - -#define SCB_CCR_STKOFHFNMIGN_Pos 10U /*!< SCB CCR: STKOFHFNMIGN Position */ -#define SCB_CCR_STKOFHFNMIGN_Msk (1UL << SCB_CCR_STKOFHFNMIGN_Pos) /*!< SCB CCR: STKOFHFNMIGN Mask */ - -#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ -#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ - -#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ -#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ -#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_HARDFAULTPENDED_Pos 21U /*!< SCB SHCSR: HARDFAULTPENDED Position */ -#define SCB_SHCSR_HARDFAULTPENDED_Msk (1UL << SCB_SHCSR_HARDFAULTPENDED_Pos) /*!< SCB SHCSR: HARDFAULTPENDED Mask */ - -#define SCB_SHCSR_SECUREFAULTPENDED_Pos 20U /*!< SCB SHCSR: SECUREFAULTPENDED Position */ -#define SCB_SHCSR_SECUREFAULTPENDED_Msk (1UL << SCB_SHCSR_SECUREFAULTPENDED_Pos) /*!< SCB SHCSR: SECUREFAULTPENDED Mask */ - -#define SCB_SHCSR_SECUREFAULTENA_Pos 19U /*!< SCB SHCSR: SECUREFAULTENA Position */ -#define SCB_SHCSR_SECUREFAULTENA_Msk (1UL << SCB_SHCSR_SECUREFAULTENA_Pos) /*!< SCB SHCSR: SECUREFAULTENA Mask */ - -#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ -#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ - -#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ -#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ - -#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ -#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ - -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ -#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ - -#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ -#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ - -#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ -#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ - -#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ -#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ - -#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ -#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ - -#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ -#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ - -#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ -#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ - -#define SCB_SHCSR_NMIACT_Pos 5U /*!< SCB SHCSR: NMIACT Position */ -#define SCB_SHCSR_NMIACT_Msk (1UL << SCB_SHCSR_NMIACT_Pos) /*!< SCB SHCSR: NMIACT Mask */ - -#define SCB_SHCSR_SECUREFAULTACT_Pos 4U /*!< SCB SHCSR: SECUREFAULTACT Position */ -#define SCB_SHCSR_SECUREFAULTACT_Msk (1UL << SCB_SHCSR_SECUREFAULTACT_Pos) /*!< SCB SHCSR: SECUREFAULTACT Mask */ - -#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ -#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ - -#define SCB_SHCSR_HARDFAULTACT_Pos 2U /*!< SCB SHCSR: HARDFAULTACT Position */ -#define SCB_SHCSR_HARDFAULTACT_Msk (1UL << SCB_SHCSR_HARDFAULTACT_Pos) /*!< SCB SHCSR: HARDFAULTACT Mask */ - -#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ -#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ - -#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ -#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ - -/* SCB Configurable Fault Status Register Definitions */ -#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ -#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ - -#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ -#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ - -#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ -#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ - -/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ -#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ - -#define SCB_CFSR_MLSPERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 5U) /*!< SCB CFSR (MMFSR): MLSPERR Position */ -#define SCB_CFSR_MLSPERR_Msk (1UL << SCB_CFSR_MLSPERR_Pos) /*!< SCB CFSR (MMFSR): MLSPERR Mask */ - -#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ -#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ - -#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ -#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ - -#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ -#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ - -#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ -#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ - -/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ -#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ - -#define SCB_CFSR_LSPERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 5U) /*!< SCB CFSR (BFSR): LSPERR Position */ -#define SCB_CFSR_LSPERR_Msk (1UL << SCB_CFSR_LSPERR_Pos) /*!< SCB CFSR (BFSR): LSPERR Mask */ - -#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ -#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ - -#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ -#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ - -#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ -#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ - -#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ -#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ - -#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ -#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ - -/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ -#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ - -#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ -#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ - -#define SCB_CFSR_STKOF_Pos (SCB_CFSR_USGFAULTSR_Pos + 4U) /*!< SCB CFSR (UFSR): STKOF Position */ -#define SCB_CFSR_STKOF_Msk (1UL << SCB_CFSR_STKOF_Pos) /*!< SCB CFSR (UFSR): STKOF Mask */ - -#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ -#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ - -#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ -#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ - -#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ -#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ - -#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ -#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ - -/* SCB Hard Fault Status Register Definitions */ -#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ -#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ - -#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ -#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ - -#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ -#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ - -/* SCB Debug Fault Status Register Definitions */ -#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ -#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ - -#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ -#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ - -#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ -#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ - -#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ -#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ - -#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ -#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ - -/* SCB Non-Secure Access Control Register Definitions */ -#define SCB_NSACR_CP11_Pos 11U /*!< SCB NSACR: CP11 Position */ -#define SCB_NSACR_CP11_Msk (1UL << SCB_NSACR_CP11_Pos) /*!< SCB NSACR: CP11 Mask */ - -#define SCB_NSACR_CP10_Pos 10U /*!< SCB NSACR: CP10 Position */ -#define SCB_NSACR_CP10_Msk (1UL << SCB_NSACR_CP10_Pos) /*!< SCB NSACR: CP10 Mask */ - -#define SCB_NSACR_CPn_Pos 0U /*!< SCB NSACR: CPn Position */ -#define SCB_NSACR_CPn_Msk (1UL /*<< SCB_NSACR_CPn_Pos*/) /*!< SCB NSACR: CPn Mask */ - -/* SCB Cache Level ID Register Definitions */ -#define SCB_CLIDR_LOUU_Pos 27U /*!< SCB CLIDR: LoUU Position */ -#define SCB_CLIDR_LOUU_Msk (7UL << SCB_CLIDR_LOUU_Pos) /*!< SCB CLIDR: LoUU Mask */ - -#define SCB_CLIDR_LOC_Pos 24U /*!< SCB CLIDR: LoC Position */ -#define SCB_CLIDR_LOC_Msk (7UL << SCB_CLIDR_LOC_Pos) /*!< SCB CLIDR: LoC Mask */ - -/* SCB Cache Type Register Definitions */ -#define SCB_CTR_FORMAT_Pos 29U /*!< SCB CTR: Format Position */ -#define SCB_CTR_FORMAT_Msk (7UL << SCB_CTR_FORMAT_Pos) /*!< SCB CTR: Format Mask */ - -#define SCB_CTR_CWG_Pos 24U /*!< SCB CTR: CWG Position */ -#define SCB_CTR_CWG_Msk (0xFUL << SCB_CTR_CWG_Pos) /*!< SCB CTR: CWG Mask */ - -#define SCB_CTR_ERG_Pos 20U /*!< SCB CTR: ERG Position */ -#define SCB_CTR_ERG_Msk (0xFUL << SCB_CTR_ERG_Pos) /*!< SCB CTR: ERG Mask */ - -#define SCB_CTR_DMINLINE_Pos 16U /*!< SCB CTR: DminLine Position */ -#define SCB_CTR_DMINLINE_Msk (0xFUL << SCB_CTR_DMINLINE_Pos) /*!< SCB CTR: DminLine Mask */ - -#define SCB_CTR_IMINLINE_Pos 0U /*!< SCB CTR: ImInLine Position */ -#define SCB_CTR_IMINLINE_Msk (0xFUL /*<< SCB_CTR_IMINLINE_Pos*/) /*!< SCB CTR: ImInLine Mask */ - -/* SCB Cache Size ID Register Definitions */ -#define SCB_CCSIDR_WT_Pos 31U /*!< SCB CCSIDR: WT Position */ -#define SCB_CCSIDR_WT_Msk (1UL << SCB_CCSIDR_WT_Pos) /*!< SCB CCSIDR: WT Mask */ - -#define SCB_CCSIDR_WB_Pos 30U /*!< SCB CCSIDR: WB Position */ -#define SCB_CCSIDR_WB_Msk (1UL << SCB_CCSIDR_WB_Pos) /*!< SCB CCSIDR: WB Mask */ - -#define SCB_CCSIDR_RA_Pos 29U /*!< SCB CCSIDR: RA Position */ -#define SCB_CCSIDR_RA_Msk (1UL << SCB_CCSIDR_RA_Pos) /*!< SCB CCSIDR: RA Mask */ - -#define SCB_CCSIDR_WA_Pos 28U /*!< SCB CCSIDR: WA Position */ -#define SCB_CCSIDR_WA_Msk (1UL << SCB_CCSIDR_WA_Pos) /*!< SCB CCSIDR: WA Mask */ - -#define SCB_CCSIDR_NUMSETS_Pos 13U /*!< SCB CCSIDR: NumSets Position */ -#define SCB_CCSIDR_NUMSETS_Msk (0x7FFFUL << SCB_CCSIDR_NUMSETS_Pos) /*!< SCB CCSIDR: NumSets Mask */ - -#define SCB_CCSIDR_ASSOCIATIVITY_Pos 3U /*!< SCB CCSIDR: Associativity Position */ -#define SCB_CCSIDR_ASSOCIATIVITY_Msk (0x3FFUL << SCB_CCSIDR_ASSOCIATIVITY_Pos) /*!< SCB CCSIDR: Associativity Mask */ - -#define SCB_CCSIDR_LINESIZE_Pos 0U /*!< SCB CCSIDR: LineSize Position */ -#define SCB_CCSIDR_LINESIZE_Msk (7UL /*<< SCB_CCSIDR_LINESIZE_Pos*/) /*!< SCB CCSIDR: LineSize Mask */ - -/* SCB Cache Size Selection Register Definitions */ -#define SCB_CSSELR_LEVEL_Pos 1U /*!< SCB CSSELR: Level Position */ -#define SCB_CSSELR_LEVEL_Msk (7UL << SCB_CSSELR_LEVEL_Pos) /*!< SCB CSSELR: Level Mask */ - -#define SCB_CSSELR_IND_Pos 0U /*!< SCB CSSELR: InD Position */ -#define SCB_CSSELR_IND_Msk (1UL /*<< SCB_CSSELR_IND_Pos*/) /*!< SCB CSSELR: InD Mask */ - -/* SCB Software Triggered Interrupt Register Definitions */ -#define SCB_STIR_INTID_Pos 0U /*!< SCB STIR: INTID Position */ -#define SCB_STIR_INTID_Msk (0x1FFUL /*<< SCB_STIR_INTID_Pos*/) /*!< SCB STIR: INTID Mask */ - -/* SCB D-Cache Invalidate by Set-way Register Definitions */ -#define SCB_DCISW_WAY_Pos 30U /*!< SCB DCISW: Way Position */ -#define SCB_DCISW_WAY_Msk (3UL << SCB_DCISW_WAY_Pos) /*!< SCB DCISW: Way Mask */ - -#define SCB_DCISW_SET_Pos 5U /*!< SCB DCISW: Set Position */ -#define SCB_DCISW_SET_Msk (0x1FFUL << SCB_DCISW_SET_Pos) /*!< SCB DCISW: Set Mask */ - -/* SCB D-Cache Clean by Set-way Register Definitions */ -#define SCB_DCCSW_WAY_Pos 30U /*!< SCB DCCSW: Way Position */ -#define SCB_DCCSW_WAY_Msk (3UL << SCB_DCCSW_WAY_Pos) /*!< SCB DCCSW: Way Mask */ - -#define SCB_DCCSW_SET_Pos 5U /*!< SCB DCCSW: Set Position */ -#define SCB_DCCSW_SET_Msk (0x1FFUL << SCB_DCCSW_SET_Pos) /*!< SCB DCCSW: Set Mask */ - -/* SCB D-Cache Clean and Invalidate by Set-way Register Definitions */ -#define SCB_DCCISW_WAY_Pos 30U /*!< SCB DCCISW: Way Position */ -#define SCB_DCCISW_WAY_Msk (3UL << SCB_DCCISW_WAY_Pos) /*!< SCB DCCISW: Way Mask */ - -#define SCB_DCCISW_SET_Pos 5U /*!< SCB DCCISW: Set Position */ -#define SCB_DCCISW_SET_Msk (0x1FFUL << SCB_DCCISW_SET_Pos) /*!< SCB DCCISW: Set Mask */ - -/* Instruction Tightly-Coupled Memory Control Register Definitions */ -#define SCB_ITCMCR_SZ_Pos 3U /*!< SCB ITCMCR: SZ Position */ -#define SCB_ITCMCR_SZ_Msk (0xFUL << SCB_ITCMCR_SZ_Pos) /*!< SCB ITCMCR: SZ Mask */ - -#define SCB_ITCMCR_RETEN_Pos 2U /*!< SCB ITCMCR: RETEN Position */ -#define SCB_ITCMCR_RETEN_Msk (1UL << SCB_ITCMCR_RETEN_Pos) /*!< SCB ITCMCR: RETEN Mask */ - -#define SCB_ITCMCR_RMW_Pos 1U /*!< SCB ITCMCR: RMW Position */ -#define SCB_ITCMCR_RMW_Msk (1UL << SCB_ITCMCR_RMW_Pos) /*!< SCB ITCMCR: RMW Mask */ - -#define SCB_ITCMCR_EN_Pos 0U /*!< SCB ITCMCR: EN Position */ -#define SCB_ITCMCR_EN_Msk (1UL /*<< SCB_ITCMCR_EN_Pos*/) /*!< SCB ITCMCR: EN Mask */ - -/* Data Tightly-Coupled Memory Control Register Definitions */ -#define SCB_DTCMCR_SZ_Pos 3U /*!< SCB DTCMCR: SZ Position */ -#define SCB_DTCMCR_SZ_Msk (0xFUL << SCB_DTCMCR_SZ_Pos) /*!< SCB DTCMCR: SZ Mask */ - -#define SCB_DTCMCR_RETEN_Pos 2U /*!< SCB DTCMCR: RETEN Position */ -#define SCB_DTCMCR_RETEN_Msk (1UL << SCB_DTCMCR_RETEN_Pos) /*!< SCB DTCMCR: RETEN Mask */ - -#define SCB_DTCMCR_RMW_Pos 1U /*!< SCB DTCMCR: RMW Position */ -#define SCB_DTCMCR_RMW_Msk (1UL << SCB_DTCMCR_RMW_Pos) /*!< SCB DTCMCR: RMW Mask */ - -#define SCB_DTCMCR_EN_Pos 0U /*!< SCB DTCMCR: EN Position */ -#define SCB_DTCMCR_EN_Msk (1UL /*<< SCB_DTCMCR_EN_Pos*/) /*!< SCB DTCMCR: EN Mask */ - -/* AHBP Control Register Definitions */ -#define SCB_AHBPCR_SZ_Pos 1U /*!< SCB AHBPCR: SZ Position */ -#define SCB_AHBPCR_SZ_Msk (7UL << SCB_AHBPCR_SZ_Pos) /*!< SCB AHBPCR: SZ Mask */ - -#define SCB_AHBPCR_EN_Pos 0U /*!< SCB AHBPCR: EN Position */ -#define SCB_AHBPCR_EN_Msk (1UL /*<< SCB_AHBPCR_EN_Pos*/) /*!< SCB AHBPCR: EN Mask */ - -/* L1 Cache Control Register Definitions */ -#define SCB_CACR_FORCEWT_Pos 2U /*!< SCB CACR: FORCEWT Position */ -#define SCB_CACR_FORCEWT_Msk (1UL << SCB_CACR_FORCEWT_Pos) /*!< SCB CACR: FORCEWT Mask */ - -#define SCB_CACR_ECCEN_Pos 1U /*!< SCB CACR: ECCEN Position */ -#define SCB_CACR_ECCEN_Msk (1UL << SCB_CACR_ECCEN_Pos) /*!< SCB CACR: ECCEN Mask */ - -#define SCB_CACR_SIWT_Pos 0U /*!< SCB CACR: SIWT Position */ -#define SCB_CACR_SIWT_Msk (1UL /*<< SCB_CACR_SIWT_Pos*/) /*!< SCB CACR: SIWT Mask */ - -/* AHBS Control Register Definitions */ -#define SCB_AHBSCR_INITCOUNT_Pos 11U /*!< SCB AHBSCR: INITCOUNT Position */ -#define SCB_AHBSCR_INITCOUNT_Msk (0x1FUL << SCB_AHBPCR_INITCOUNT_Pos) /*!< SCB AHBSCR: INITCOUNT Mask */ - -#define SCB_AHBSCR_TPRI_Pos 2U /*!< SCB AHBSCR: TPRI Position */ -#define SCB_AHBSCR_TPRI_Msk (0x1FFUL << SCB_AHBPCR_TPRI_Pos) /*!< SCB AHBSCR: TPRI Mask */ - -#define SCB_AHBSCR_CTL_Pos 0U /*!< SCB AHBSCR: CTL Position*/ -#define SCB_AHBSCR_CTL_Msk (3UL /*<< SCB_AHBPCR_CTL_Pos*/) /*!< SCB AHBSCR: CTL Mask */ - -/* Auxiliary Bus Fault Status Register Definitions */ -#define SCB_ABFSR_AXIMTYPE_Pos 8U /*!< SCB ABFSR: AXIMTYPE Position*/ -#define SCB_ABFSR_AXIMTYPE_Msk (3UL << SCB_ABFSR_AXIMTYPE_Pos) /*!< SCB ABFSR: AXIMTYPE Mask */ - -#define SCB_ABFSR_EPPB_Pos 4U /*!< SCB ABFSR: EPPB Position*/ -#define SCB_ABFSR_EPPB_Msk (1UL << SCB_ABFSR_EPPB_Pos) /*!< SCB ABFSR: EPPB Mask */ - -#define SCB_ABFSR_AXIM_Pos 3U /*!< SCB ABFSR: AXIM Position*/ -#define SCB_ABFSR_AXIM_Msk (1UL << SCB_ABFSR_AXIM_Pos) /*!< SCB ABFSR: AXIM Mask */ - -#define SCB_ABFSR_AHBP_Pos 2U /*!< SCB ABFSR: AHBP Position*/ -#define SCB_ABFSR_AHBP_Msk (1UL << SCB_ABFSR_AHBP_Pos) /*!< SCB ABFSR: AHBP Mask */ - -#define SCB_ABFSR_DTCM_Pos 1U /*!< SCB ABFSR: DTCM Position*/ -#define SCB_ABFSR_DTCM_Msk (1UL << SCB_ABFSR_DTCM_Pos) /*!< SCB ABFSR: DTCM Mask */ - -#define SCB_ABFSR_ITCM_Pos 0U /*!< SCB ABFSR: ITCM Position*/ -#define SCB_ABFSR_ITCM_Msk (1UL /*<< SCB_ABFSR_ITCM_Pos*/) /*!< SCB ABFSR: ITCM Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) - \brief Type definitions for the System Control and ID Register not in the SCB - @{ - */ - -/** - \brief Structure type to access the System Control and ID Register not in the SCB. - */ -typedef struct -{ - uint32_t RESERVED0[1U]; - __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ - __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ - __IOM uint32_t CPPWR; /*!< Offset: 0x00C (R/W) Coprocessor Power Control Register */ -} SCnSCB_Type; - -/* Interrupt Controller Type Register Definitions */ -#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ -#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ - -/*@} end of group CMSIS_SCnotSCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) - \brief Type definitions for the Instrumentation Trace Macrocell (ITM) - @{ - */ - -/** - \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). - */ -typedef struct -{ - __OM union - { - __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ - __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ - __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ - } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ - uint32_t RESERVED0[864U]; - __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ - uint32_t RESERVED1[15U]; - __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ - uint32_t RESERVED2[15U]; - __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ - uint32_t RESERVED3[29U]; - __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ - __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ - __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ - uint32_t RESERVED4[43U]; - __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ - __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ - uint32_t RESERVED5[1U]; - __IM uint32_t DEVARCH; /*!< Offset: 0xFBC (R/ ) ITM Device Architecture Register */ - uint32_t RESERVED6[4U]; - __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ - __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ - __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ - __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ - __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ - __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ - __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ - __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ - __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ - __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ - __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ - __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ -} ITM_Type; - -/* ITM Stimulus Port Register Definitions */ -#define ITM_STIM_DISABLED_Pos 1U /*!< ITM STIM: DISABLED Position */ -#define ITM_STIM_DISABLED_Msk (0x1UL << ITM_STIM_DISABLED_Pos) /*!< ITM STIM: DISABLED Mask */ - -#define ITM_STIM_FIFOREADY_Pos 0U /*!< ITM STIM: FIFOREADY Position */ -#define ITM_STIM_FIFOREADY_Msk (0x1UL /*<< ITM_STIM_FIFOREADY_Pos*/) /*!< ITM STIM: FIFOREADY Mask */ - -/* ITM Trace Privilege Register Definitions */ -#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ -#define ITM_TPR_PRIVMASK_Msk (0xFFFFFFFFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ - -/* ITM Trace Control Register Definitions */ -#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ -#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ - -#define ITM_TCR_TRACEBUSID_Pos 16U /*!< ITM TCR: ATBID Position */ -#define ITM_TCR_TRACEBUSID_Msk (0x7FUL << ITM_TCR_TRACEBUSID_Pos) /*!< ITM TCR: ATBID Mask */ - -#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ -#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ - -#define ITM_TCR_TSPRESCALE_Pos 8U /*!< ITM TCR: TSPRESCALE Position */ -#define ITM_TCR_TSPRESCALE_Msk (3UL << ITM_TCR_TSPRESCALE_Pos) /*!< ITM TCR: TSPRESCALE Mask */ - -#define ITM_TCR_STALLENA_Pos 5U /*!< ITM TCR: STALLENA Position */ -#define ITM_TCR_STALLENA_Msk (1UL << ITM_TCR_STALLENA_Pos) /*!< ITM TCR: STALLENA Mask */ - -#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ -#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ - -#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ -#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ - -#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ -#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ - -#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ -#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ - -#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ -#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ - -/* ITM Integration Write Register Definitions */ -#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ -#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ - -/* ITM Integration Read Register Definitions */ -#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ -#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ - -/* ITM Integration Mode Control Register Definitions */ -#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ -#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ - -/* ITM Lock Status Register Definitions */ -#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ -#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ - -#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ -#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ - -#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ -#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ - -/*@}*/ /* end of group CMSIS_ITM */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) - \brief Type definitions for the Data Watchpoint and Trace (DWT) - @{ - */ - -/** - \brief Structure type to access the Data Watchpoint and Trace Register (DWT). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ - __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ - __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ - __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ - __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ - __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ - __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ - __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ - __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ - uint32_t RESERVED1[1U]; - __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ - uint32_t RESERVED2[1U]; - __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ - uint32_t RESERVED3[1U]; - __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ - uint32_t RESERVED4[1U]; - __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ - uint32_t RESERVED5[1U]; - __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ - uint32_t RESERVED6[1U]; - __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ - uint32_t RESERVED7[1U]; - __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ - uint32_t RESERVED8[1U]; - __IOM uint32_t COMP4; /*!< Offset: 0x060 (R/W) Comparator Register 4 */ - uint32_t RESERVED9[1U]; - __IOM uint32_t FUNCTION4; /*!< Offset: 0x068 (R/W) Function Register 4 */ - uint32_t RESERVED10[1U]; - __IOM uint32_t COMP5; /*!< Offset: 0x070 (R/W) Comparator Register 5 */ - uint32_t RESERVED11[1U]; - __IOM uint32_t FUNCTION5; /*!< Offset: 0x078 (R/W) Function Register 5 */ - uint32_t RESERVED12[1U]; - __IOM uint32_t COMP6; /*!< Offset: 0x080 (R/W) Comparator Register 6 */ - uint32_t RESERVED13[1U]; - __IOM uint32_t FUNCTION6; /*!< Offset: 0x088 (R/W) Function Register 6 */ - uint32_t RESERVED14[1U]; - __IOM uint32_t COMP7; /*!< Offset: 0x090 (R/W) Comparator Register 7 */ - uint32_t RESERVED15[1U]; - __IOM uint32_t FUNCTION7; /*!< Offset: 0x098 (R/W) Function Register 7 */ - uint32_t RESERVED16[1U]; - __IOM uint32_t COMP8; /*!< Offset: 0x0A0 (R/W) Comparator Register 8 */ - uint32_t RESERVED17[1U]; - __IOM uint32_t FUNCTION8; /*!< Offset: 0x0A8 (R/W) Function Register 8 */ - uint32_t RESERVED18[1U]; - __IOM uint32_t COMP9; /*!< Offset: 0x0B0 (R/W) Comparator Register 9 */ - uint32_t RESERVED19[1U]; - __IOM uint32_t FUNCTION9; /*!< Offset: 0x0B8 (R/W) Function Register 9 */ - uint32_t RESERVED20[1U]; - __IOM uint32_t COMP10; /*!< Offset: 0x0C0 (R/W) Comparator Register 10 */ - uint32_t RESERVED21[1U]; - __IOM uint32_t FUNCTION10; /*!< Offset: 0x0C8 (R/W) Function Register 10 */ - uint32_t RESERVED22[1U]; - __IOM uint32_t COMP11; /*!< Offset: 0x0D0 (R/W) Comparator Register 11 */ - uint32_t RESERVED23[1U]; - __IOM uint32_t FUNCTION11; /*!< Offset: 0x0D8 (R/W) Function Register 11 */ - uint32_t RESERVED24[1U]; - __IOM uint32_t COMP12; /*!< Offset: 0x0E0 (R/W) Comparator Register 12 */ - uint32_t RESERVED25[1U]; - __IOM uint32_t FUNCTION12; /*!< Offset: 0x0E8 (R/W) Function Register 12 */ - uint32_t RESERVED26[1U]; - __IOM uint32_t COMP13; /*!< Offset: 0x0F0 (R/W) Comparator Register 13 */ - uint32_t RESERVED27[1U]; - __IOM uint32_t FUNCTION13; /*!< Offset: 0x0F8 (R/W) Function Register 13 */ - uint32_t RESERVED28[1U]; - __IOM uint32_t COMP14; /*!< Offset: 0x100 (R/W) Comparator Register 14 */ - uint32_t RESERVED29[1U]; - __IOM uint32_t FUNCTION14; /*!< Offset: 0x108 (R/W) Function Register 14 */ - uint32_t RESERVED30[1U]; - __IOM uint32_t COMP15; /*!< Offset: 0x110 (R/W) Comparator Register 15 */ - uint32_t RESERVED31[1U]; - __IOM uint32_t FUNCTION15; /*!< Offset: 0x118 (R/W) Function Register 15 */ - uint32_t RESERVED32[934U]; - __IM uint32_t LSR; /*!< Offset: 0xFB4 (R ) Lock Status Register */ - uint32_t RESERVED33[1U]; - __IM uint32_t DEVARCH; /*!< Offset: 0xFBC (R/ ) Device Architecture Register */ -} DWT_Type; - -/* DWT Control Register Definitions */ -#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ -#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ - -#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ -#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ - -#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ -#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ - -#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ -#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ - -#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ -#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ - -#define DWT_CTRL_CYCDISS_Pos 23U /*!< DWT CTRL: CYCDISS Position */ -#define DWT_CTRL_CYCDISS_Msk (0x1UL << DWT_CTRL_CYCDISS_Pos) /*!< DWT CTRL: CYCDISS Mask */ - -#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ -#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ - -#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ -#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ - -#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ -#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ - -#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ -#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ - -#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ -#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ - -#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ -#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ - -#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ -#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ - -#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ -#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ - -#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ -#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ - -#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ -#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ - -#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ -#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ - -#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ -#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ - -#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ -#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ - -/* DWT CPI Count Register Definitions */ -#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ -#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ - -/* DWT Exception Overhead Count Register Definitions */ -#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ -#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ - -/* DWT Sleep Count Register Definitions */ -#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ -#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ - -/* DWT LSU Count Register Definitions */ -#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ -#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ - -/* DWT Folded-instruction Count Register Definitions */ -#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ -#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ - -/* DWT Comparator Function Register Definitions */ -#define DWT_FUNCTION_ID_Pos 27U /*!< DWT FUNCTION: ID Position */ -#define DWT_FUNCTION_ID_Msk (0x1FUL << DWT_FUNCTION_ID_Pos) /*!< DWT FUNCTION: ID Mask */ - -#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ -#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ - -#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ -#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ - -#define DWT_FUNCTION_ACTION_Pos 4U /*!< DWT FUNCTION: ACTION Position */ -#define DWT_FUNCTION_ACTION_Msk (0x1UL << DWT_FUNCTION_ACTION_Pos) /*!< DWT FUNCTION: ACTION Mask */ - -#define DWT_FUNCTION_MATCH_Pos 0U /*!< DWT FUNCTION: MATCH Position */ -#define DWT_FUNCTION_MATCH_Msk (0xFUL /*<< DWT_FUNCTION_MATCH_Pos*/) /*!< DWT FUNCTION: MATCH Mask */ - -/*@}*/ /* end of group CMSIS_DWT */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_TPI Trace Port Interface (TPI) - \brief Type definitions for the Trace Port Interface (TPI) - @{ - */ - -/** - \brief Structure type to access the Trace Port Interface Register (TPI). - */ -typedef struct -{ - __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ - __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ - uint32_t RESERVED0[2U]; - __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ - uint32_t RESERVED1[55U]; - __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ - uint32_t RESERVED2[131U]; - __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ - __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ - __IOM uint32_t PSCR; /*!< Offset: 0x308 (R/W) Periodic Synchronization Control Register */ - uint32_t RESERVED3[759U]; - __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ - __IM uint32_t ITFTTD0; /*!< Offset: 0xEEC (R/ ) Integration Test FIFO Test Data 0 Register */ - __IOM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/W) Integration Test ATB Control Register 2 */ - uint32_t RESERVED4[1U]; - __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) Integration Test ATB Control Register 0 */ - __IM uint32_t ITFTTD1; /*!< Offset: 0xEFC (R/ ) Integration Test FIFO Test Data 1 Register */ - __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ - uint32_t RESERVED5[39U]; - __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ - __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ - uint32_t RESERVED7[8U]; - __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) Device Configuration Register */ - __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) Device Type Identifier Register */ -} TPI_Type; - -/* TPI Asynchronous Clock Prescaler Register Definitions */ -#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ -#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ - -/* TPI Selected Pin Protocol Register Definitions */ -#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ -#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ - -/* TPI Formatter and Flush Status Register Definitions */ -#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ -#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ - -#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ -#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ - -#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ -#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ - -#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ -#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ - -/* TPI Formatter and Flush Control Register Definitions */ -#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ -#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ - -#define TPI_FFCR_FOnMan_Pos 6U /*!< TPI FFCR: FOnMan Position */ -#define TPI_FFCR_FOnMan_Msk (0x1UL << TPI_FFCR_FOnMan_Pos) /*!< TPI FFCR: FOnMan Mask */ - -#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ -#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ - -/* TPI TRIGGER Register Definitions */ -#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ -#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ - -/* TPI Integration Test FIFO Test Data 0 Register Definitions */ -#define TPI_ITFTTD0_ATB_IF2_ATVALID_Pos 29U /*!< TPI ITFTTD0: ATB Interface 2 ATVALIDPosition */ -#define TPI_ITFTTD0_ATB_IF2_ATVALID_Msk (0x3UL << TPI_ITFTTD0_ATB_IF2_ATVALID_Pos) /*!< TPI ITFTTD0: ATB Interface 2 ATVALID Mask */ - -#define TPI_ITFTTD0_ATB_IF2_bytecount_Pos 27U /*!< TPI ITFTTD0: ATB Interface 2 byte count Position */ -#define TPI_ITFTTD0_ATB_IF2_bytecount_Msk (0x3UL << TPI_ITFTTD0_ATB_IF2_bytecount_Pos) /*!< TPI ITFTTD0: ATB Interface 2 byte count Mask */ - -#define TPI_ITFTTD0_ATB_IF1_ATVALID_Pos 26U /*!< TPI ITFTTD0: ATB Interface 1 ATVALID Position */ -#define TPI_ITFTTD0_ATB_IF1_ATVALID_Msk (0x3UL << TPI_ITFTTD0_ATB_IF1_ATVALID_Pos) /*!< TPI ITFTTD0: ATB Interface 1 ATVALID Mask */ - -#define TPI_ITFTTD0_ATB_IF1_bytecount_Pos 24U /*!< TPI ITFTTD0: ATB Interface 1 byte count Position */ -#define TPI_ITFTTD0_ATB_IF1_bytecount_Msk (0x3UL << TPI_ITFTTD0_ATB_IF1_bytecount_Pos) /*!< TPI ITFTTD0: ATB Interface 1 byte countt Mask */ - -#define TPI_ITFTTD0_ATB_IF1_data2_Pos 16U /*!< TPI ITFTTD0: ATB Interface 1 data2 Position */ -#define TPI_ITFTTD0_ATB_IF1_data2_Msk (0xFFUL << TPI_ITFTTD0_ATB_IF1_data1_Pos) /*!< TPI ITFTTD0: ATB Interface 1 data2 Mask */ - -#define TPI_ITFTTD0_ATB_IF1_data1_Pos 8U /*!< TPI ITFTTD0: ATB Interface 1 data1 Position */ -#define TPI_ITFTTD0_ATB_IF1_data1_Msk (0xFFUL << TPI_ITFTTD0_ATB_IF1_data1_Pos) /*!< TPI ITFTTD0: ATB Interface 1 data1 Mask */ - -#define TPI_ITFTTD0_ATB_IF1_data0_Pos 0U /*!< TPI ITFTTD0: ATB Interface 1 data0 Position */ -#define TPI_ITFTTD0_ATB_IF1_data0_Msk (0xFFUL /*<< TPI_ITFTTD0_ATB_IF1_data0_Pos*/) /*!< TPI ITFTTD0: ATB Interface 1 data0 Mask */ - -/* TPI Integration Test ATB Control Register 2 Register Definitions */ -#define TPI_ITATBCTR2_AFVALID2S_Pos 1U /*!< TPI ITATBCTR2: AFVALID2S Position */ -#define TPI_ITATBCTR2_AFVALID2S_Msk (0x1UL << TPI_ITATBCTR2_AFVALID2S_Pos) /*!< TPI ITATBCTR2: AFVALID2SS Mask */ - -#define TPI_ITATBCTR2_AFVALID1S_Pos 1U /*!< TPI ITATBCTR2: AFVALID1S Position */ -#define TPI_ITATBCTR2_AFVALID1S_Msk (0x1UL << TPI_ITATBCTR2_AFVALID1S_Pos) /*!< TPI ITATBCTR2: AFVALID1SS Mask */ - -#define TPI_ITATBCTR2_ATREADY2S_Pos 0U /*!< TPI ITATBCTR2: ATREADY2S Position */ -#define TPI_ITATBCTR2_ATREADY2S_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2S_Pos*/) /*!< TPI ITATBCTR2: ATREADY2S Mask */ - -#define TPI_ITATBCTR2_ATREADY1S_Pos 0U /*!< TPI ITATBCTR2: ATREADY1S Position */ -#define TPI_ITATBCTR2_ATREADY1S_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1S_Pos*/) /*!< TPI ITATBCTR2: ATREADY1S Mask */ - -/* TPI Integration Test FIFO Test Data 1 Register Definitions */ -#define TPI_ITFTTD1_ATB_IF2_ATVALID_Pos 29U /*!< TPI ITFTTD1: ATB Interface 2 ATVALID Position */ -#define TPI_ITFTTD1_ATB_IF2_ATVALID_Msk (0x3UL << TPI_ITFTTD1_ATB_IF2_ATVALID_Pos) /*!< TPI ITFTTD1: ATB Interface 2 ATVALID Mask */ - -#define TPI_ITFTTD1_ATB_IF2_bytecount_Pos 27U /*!< TPI ITFTTD1: ATB Interface 2 byte count Position */ -#define TPI_ITFTTD1_ATB_IF2_bytecount_Msk (0x3UL << TPI_ITFTTD1_ATB_IF2_bytecount_Pos) /*!< TPI ITFTTD1: ATB Interface 2 byte count Mask */ - -#define TPI_ITFTTD1_ATB_IF1_ATVALID_Pos 26U /*!< TPI ITFTTD1: ATB Interface 1 ATVALID Position */ -#define TPI_ITFTTD1_ATB_IF1_ATVALID_Msk (0x3UL << TPI_ITFTTD1_ATB_IF1_ATVALID_Pos) /*!< TPI ITFTTD1: ATB Interface 1 ATVALID Mask */ - -#define TPI_ITFTTD1_ATB_IF1_bytecount_Pos 24U /*!< TPI ITFTTD1: ATB Interface 1 byte count Position */ -#define TPI_ITFTTD1_ATB_IF1_bytecount_Msk (0x3UL << TPI_ITFTTD1_ATB_IF1_bytecount_Pos) /*!< TPI ITFTTD1: ATB Interface 1 byte countt Mask */ - -#define TPI_ITFTTD1_ATB_IF2_data2_Pos 16U /*!< TPI ITFTTD1: ATB Interface 2 data2 Position */ -#define TPI_ITFTTD1_ATB_IF2_data2_Msk (0xFFUL << TPI_ITFTTD1_ATB_IF2_data1_Pos) /*!< TPI ITFTTD1: ATB Interface 2 data2 Mask */ - -#define TPI_ITFTTD1_ATB_IF2_data1_Pos 8U /*!< TPI ITFTTD1: ATB Interface 2 data1 Position */ -#define TPI_ITFTTD1_ATB_IF2_data1_Msk (0xFFUL << TPI_ITFTTD1_ATB_IF2_data1_Pos) /*!< TPI ITFTTD1: ATB Interface 2 data1 Mask */ - -#define TPI_ITFTTD1_ATB_IF2_data0_Pos 0U /*!< TPI ITFTTD1: ATB Interface 2 data0 Position */ -#define TPI_ITFTTD1_ATB_IF2_data0_Msk (0xFFUL /*<< TPI_ITFTTD1_ATB_IF2_data0_Pos*/) /*!< TPI ITFTTD1: ATB Interface 2 data0 Mask */ - -/* TPI Integration Test ATB Control Register 0 Definitions */ -#define TPI_ITATBCTR0_AFVALID2S_Pos 1U /*!< TPI ITATBCTR0: AFVALID2S Position */ -#define TPI_ITATBCTR0_AFVALID2S_Msk (0x1UL << TPI_ITATBCTR0_AFVALID2S_Pos) /*!< TPI ITATBCTR0: AFVALID2SS Mask */ - -#define TPI_ITATBCTR0_AFVALID1S_Pos 1U /*!< TPI ITATBCTR0: AFVALID1S Position */ -#define TPI_ITATBCTR0_AFVALID1S_Msk (0x1UL << TPI_ITATBCTR0_AFVALID1S_Pos) /*!< TPI ITATBCTR0: AFVALID1SS Mask */ - -#define TPI_ITATBCTR0_ATREADY2S_Pos 0U /*!< TPI ITATBCTR0: ATREADY2S Position */ -#define TPI_ITATBCTR0_ATREADY2S_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2S_Pos*/) /*!< TPI ITATBCTR0: ATREADY2S Mask */ - -#define TPI_ITATBCTR0_ATREADY1S_Pos 0U /*!< TPI ITATBCTR0: ATREADY1S Position */ -#define TPI_ITATBCTR0_ATREADY1S_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1S_Pos*/) /*!< TPI ITATBCTR0: ATREADY1S Mask */ - -/* TPI Integration Mode Control Register Definitions */ -#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ -#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ - -/* TPI DEVID Register Definitions */ -#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ -#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ - -#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ -#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ - -#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ -#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ - -#define TPI_DEVID_FIFOSZ_Pos 6U /*!< TPI DEVID: FIFOSZ Position */ -#define TPI_DEVID_FIFOSZ_Msk (0x7UL << TPI_DEVID_FIFOSZ_Pos) /*!< TPI DEVID: FIFOSZ Mask */ - -#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ -#define TPI_DEVID_NrTraceInput_Msk (0x3FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ - -/* TPI DEVTYPE Register Definitions */ -#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ -#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ - -#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ -#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ - -/*@}*/ /* end of group CMSIS_TPI */ - - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_MPU Memory Protection Unit (MPU) - \brief Type definitions for the Memory Protection Unit (MPU) - @{ - */ - -/** - \brief Structure type to access the Memory Protection Unit (MPU). - */ -typedef struct -{ - __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ - __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region Number Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ - __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) MPU Region Limit Address Register */ - __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Region Base Address Register Alias 1 */ - __IOM uint32_t RLAR_A1; /*!< Offset: 0x018 (R/W) MPU Region Limit Address Register Alias 1 */ - __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Region Base Address Register Alias 2 */ - __IOM uint32_t RLAR_A2; /*!< Offset: 0x020 (R/W) MPU Region Limit Address Register Alias 2 */ - __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Region Base Address Register Alias 3 */ - __IOM uint32_t RLAR_A3; /*!< Offset: 0x028 (R/W) MPU Region Limit Address Register Alias 3 */ - uint32_t RESERVED0[1]; - union { - __IOM uint32_t MAIR[2]; - struct { - __IOM uint32_t MAIR0; /*!< Offset: 0x030 (R/W) MPU Memory Attribute Indirection Register 0 */ - __IOM uint32_t MAIR1; /*!< Offset: 0x034 (R/W) MPU Memory Attribute Indirection Register 1 */ - }; - }; -} MPU_Type; - -#define MPU_TYPE_RALIASES 4U - -/* MPU Type Register Definitions */ -#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ -#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ - -#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ -#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ - -#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ -#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ - -/* MPU Control Register Definitions */ -#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ -#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ - -#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ -#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ - -#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ -#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ - -/* MPU Region Number Register Definitions */ -#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ -#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ - -/* MPU Region Base Address Register Definitions */ -#define MPU_RBAR_BASE_Pos 5U /*!< MPU RBAR: BASE Position */ -#define MPU_RBAR_BASE_Msk (0x7FFFFFFUL << MPU_RBAR_BASE_Pos) /*!< MPU RBAR: BASE Mask */ - -#define MPU_RBAR_SH_Pos 3U /*!< MPU RBAR: SH Position */ -#define MPU_RBAR_SH_Msk (0x3UL << MPU_RBAR_SH_Pos) /*!< MPU RBAR: SH Mask */ - -#define MPU_RBAR_AP_Pos 1U /*!< MPU RBAR: AP Position */ -#define MPU_RBAR_AP_Msk (0x3UL << MPU_RBAR_AP_Pos) /*!< MPU RBAR: AP Mask */ - -#define MPU_RBAR_XN_Pos 0U /*!< MPU RBAR: XN Position */ -#define MPU_RBAR_XN_Msk (01UL /*<< MPU_RBAR_XN_Pos*/) /*!< MPU RBAR: XN Mask */ - -/* MPU Region Limit Address Register Definitions */ -#define MPU_RLAR_LIMIT_Pos 5U /*!< MPU RLAR: LIMIT Position */ -#define MPU_RLAR_LIMIT_Msk (0x7FFFFFFUL << MPU_RLAR_LIMIT_Pos) /*!< MPU RLAR: LIMIT Mask */ - -#define MPU_RLAR_AttrIndx_Pos 1U /*!< MPU RLAR: AttrIndx Position */ -#define MPU_RLAR_AttrIndx_Msk (0x7UL << MPU_RLAR_AttrIndx_Pos) /*!< MPU RLAR: AttrIndx Mask */ - -#define MPU_RLAR_EN_Pos 0U /*!< MPU RLAR: Region enable bit Position */ -#define MPU_RLAR_EN_Msk (1UL /*<< MPU_RLAR_EN_Pos*/) /*!< MPU RLAR: Region enable bit Disable Mask */ - -/* MPU Memory Attribute Indirection Register 0 Definitions */ -#define MPU_MAIR0_Attr3_Pos 24U /*!< MPU MAIR0: Attr3 Position */ -#define MPU_MAIR0_Attr3_Msk (0xFFUL << MPU_MAIR0_Attr3_Pos) /*!< MPU MAIR0: Attr3 Mask */ - -#define MPU_MAIR0_Attr2_Pos 16U /*!< MPU MAIR0: Attr2 Position */ -#define MPU_MAIR0_Attr2_Msk (0xFFUL << MPU_MAIR0_Attr2_Pos) /*!< MPU MAIR0: Attr2 Mask */ - -#define MPU_MAIR0_Attr1_Pos 8U /*!< MPU MAIR0: Attr1 Position */ -#define MPU_MAIR0_Attr1_Msk (0xFFUL << MPU_MAIR0_Attr1_Pos) /*!< MPU MAIR0: Attr1 Mask */ - -#define MPU_MAIR0_Attr0_Pos 0U /*!< MPU MAIR0: Attr0 Position */ -#define MPU_MAIR0_Attr0_Msk (0xFFUL /*<< MPU_MAIR0_Attr0_Pos*/) /*!< MPU MAIR0: Attr0 Mask */ - -/* MPU Memory Attribute Indirection Register 1 Definitions */ -#define MPU_MAIR1_Attr7_Pos 24U /*!< MPU MAIR1: Attr7 Position */ -#define MPU_MAIR1_Attr7_Msk (0xFFUL << MPU_MAIR1_Attr7_Pos) /*!< MPU MAIR1: Attr7 Mask */ - -#define MPU_MAIR1_Attr6_Pos 16U /*!< MPU MAIR1: Attr6 Position */ -#define MPU_MAIR1_Attr6_Msk (0xFFUL << MPU_MAIR1_Attr6_Pos) /*!< MPU MAIR1: Attr6 Mask */ - -#define MPU_MAIR1_Attr5_Pos 8U /*!< MPU MAIR1: Attr5 Position */ -#define MPU_MAIR1_Attr5_Msk (0xFFUL << MPU_MAIR1_Attr5_Pos) /*!< MPU MAIR1: Attr5 Mask */ - -#define MPU_MAIR1_Attr4_Pos 0U /*!< MPU MAIR1: Attr4 Position */ -#define MPU_MAIR1_Attr4_Msk (0xFFUL /*<< MPU_MAIR1_Attr4_Pos*/) /*!< MPU MAIR1: Attr4 Mask */ - -/*@} end of group CMSIS_MPU */ -#endif - - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SAU Security Attribution Unit (SAU) - \brief Type definitions for the Security Attribution Unit (SAU) - @{ - */ - -/** - \brief Structure type to access the Security Attribution Unit (SAU). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SAU Control Register */ - __IM uint32_t TYPE; /*!< Offset: 0x004 (R/ ) SAU Type Register */ -#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) SAU Region Number Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) SAU Region Base Address Register */ - __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) SAU Region Limit Address Register */ -#else - uint32_t RESERVED0[3]; -#endif - __IOM uint32_t SFSR; /*!< Offset: 0x014 (R/W) Secure Fault Status Register */ - __IOM uint32_t SFAR; /*!< Offset: 0x018 (R/W) Secure Fault Address Register */ -} SAU_Type; - -/* SAU Control Register Definitions */ -#define SAU_CTRL_ALLNS_Pos 1U /*!< SAU CTRL: ALLNS Position */ -#define SAU_CTRL_ALLNS_Msk (1UL << SAU_CTRL_ALLNS_Pos) /*!< SAU CTRL: ALLNS Mask */ - -#define SAU_CTRL_ENABLE_Pos 0U /*!< SAU CTRL: ENABLE Position */ -#define SAU_CTRL_ENABLE_Msk (1UL /*<< SAU_CTRL_ENABLE_Pos*/) /*!< SAU CTRL: ENABLE Mask */ - -/* SAU Type Register Definitions */ -#define SAU_TYPE_SREGION_Pos 0U /*!< SAU TYPE: SREGION Position */ -#define SAU_TYPE_SREGION_Msk (0xFFUL /*<< SAU_TYPE_SREGION_Pos*/) /*!< SAU TYPE: SREGION Mask */ - -#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) -/* SAU Region Number Register Definitions */ -#define SAU_RNR_REGION_Pos 0U /*!< SAU RNR: REGION Position */ -#define SAU_RNR_REGION_Msk (0xFFUL /*<< SAU_RNR_REGION_Pos*/) /*!< SAU RNR: REGION Mask */ - -/* SAU Region Base Address Register Definitions */ -#define SAU_RBAR_BADDR_Pos 5U /*!< SAU RBAR: BADDR Position */ -#define SAU_RBAR_BADDR_Msk (0x7FFFFFFUL << SAU_RBAR_BADDR_Pos) /*!< SAU RBAR: BADDR Mask */ - -/* SAU Region Limit Address Register Definitions */ -#define SAU_RLAR_LADDR_Pos 5U /*!< SAU RLAR: LADDR Position */ -#define SAU_RLAR_LADDR_Msk (0x7FFFFFFUL << SAU_RLAR_LADDR_Pos) /*!< SAU RLAR: LADDR Mask */ - -#define SAU_RLAR_NSC_Pos 1U /*!< SAU RLAR: NSC Position */ -#define SAU_RLAR_NSC_Msk (1UL << SAU_RLAR_NSC_Pos) /*!< SAU RLAR: NSC Mask */ - -#define SAU_RLAR_ENABLE_Pos 0U /*!< SAU RLAR: ENABLE Position */ -#define SAU_RLAR_ENABLE_Msk (1UL /*<< SAU_RLAR_ENABLE_Pos*/) /*!< SAU RLAR: ENABLE Mask */ - -#endif /* defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) */ - -/* Secure Fault Status Register Definitions */ -#define SAU_SFSR_LSERR_Pos 7U /*!< SAU SFSR: LSERR Position */ -#define SAU_SFSR_LSERR_Msk (1UL << SAU_SFSR_LSERR_Pos) /*!< SAU SFSR: LSERR Mask */ - -#define SAU_SFSR_SFARVALID_Pos 6U /*!< SAU SFSR: SFARVALID Position */ -#define SAU_SFSR_SFARVALID_Msk (1UL << SAU_SFSR_SFARVALID_Pos) /*!< SAU SFSR: SFARVALID Mask */ - -#define SAU_SFSR_LSPERR_Pos 5U /*!< SAU SFSR: LSPERR Position */ -#define SAU_SFSR_LSPERR_Msk (1UL << SAU_SFSR_LSPERR_Pos) /*!< SAU SFSR: LSPERR Mask */ - -#define SAU_SFSR_INVTRAN_Pos 4U /*!< SAU SFSR: INVTRAN Position */ -#define SAU_SFSR_INVTRAN_Msk (1UL << SAU_SFSR_INVTRAN_Pos) /*!< SAU SFSR: INVTRAN Mask */ - -#define SAU_SFSR_AUVIOL_Pos 3U /*!< SAU SFSR: AUVIOL Position */ -#define SAU_SFSR_AUVIOL_Msk (1UL << SAU_SFSR_AUVIOL_Pos) /*!< SAU SFSR: AUVIOL Mask */ - -#define SAU_SFSR_INVER_Pos 2U /*!< SAU SFSR: INVER Position */ -#define SAU_SFSR_INVER_Msk (1UL << SAU_SFSR_INVER_Pos) /*!< SAU SFSR: INVER Mask */ - -#define SAU_SFSR_INVIS_Pos 1U /*!< SAU SFSR: INVIS Position */ -#define SAU_SFSR_INVIS_Msk (1UL << SAU_SFSR_INVIS_Pos) /*!< SAU SFSR: INVIS Mask */ - -#define SAU_SFSR_INVEP_Pos 0U /*!< SAU SFSR: INVEP Position */ -#define SAU_SFSR_INVEP_Msk (1UL /*<< SAU_SFSR_INVEP_Pos*/) /*!< SAU SFSR: INVEP Mask */ - -/*@} end of group CMSIS_SAU */ -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_FPU Floating Point Unit (FPU) - \brief Type definitions for the Floating Point Unit (FPU) - @{ - */ - -/** - \brief Structure type to access the Floating Point Unit (FPU). - */ -typedef struct -{ - uint32_t RESERVED0[1U]; - __IOM uint32_t FPCCR; /*!< Offset: 0x004 (R/W) Floating-Point Context Control Register */ - __IOM uint32_t FPCAR; /*!< Offset: 0x008 (R/W) Floating-Point Context Address Register */ - __IOM uint32_t FPDSCR; /*!< Offset: 0x00C (R/W) Floating-Point Default Status Control Register */ - __IM uint32_t MVFR0; /*!< Offset: 0x010 (R/ ) Media and FP Feature Register 0 */ - __IM uint32_t MVFR1; /*!< Offset: 0x014 (R/ ) Media and FP Feature Register 1 */ -} FPU_Type; - -/* Floating-Point Context Control Register Definitions */ -#define FPU_FPCCR_ASPEN_Pos 31U /*!< FPCCR: ASPEN bit Position */ -#define FPU_FPCCR_ASPEN_Msk (1UL << FPU_FPCCR_ASPEN_Pos) /*!< FPCCR: ASPEN bit Mask */ - -#define FPU_FPCCR_LSPEN_Pos 30U /*!< FPCCR: LSPEN Position */ -#define FPU_FPCCR_LSPEN_Msk (1UL << FPU_FPCCR_LSPEN_Pos) /*!< FPCCR: LSPEN bit Mask */ - -#define FPU_FPCCR_LSPENS_Pos 29U /*!< FPCCR: LSPENS Position */ -#define FPU_FPCCR_LSPENS_Msk (1UL << FPU_FPCCR_LSPENS_Pos) /*!< FPCCR: LSPENS bit Mask */ - -#define FPU_FPCCR_CLRONRET_Pos 28U /*!< FPCCR: CLRONRET Position */ -#define FPU_FPCCR_CLRONRET_Msk (1UL << FPU_FPCCR_CLRONRET_Pos) /*!< FPCCR: CLRONRET bit Mask */ - -#define FPU_FPCCR_CLRONRETS_Pos 27U /*!< FPCCR: CLRONRETS Position */ -#define FPU_FPCCR_CLRONRETS_Msk (1UL << FPU_FPCCR_CLRONRETS_Pos) /*!< FPCCR: CLRONRETS bit Mask */ - -#define FPU_FPCCR_TS_Pos 26U /*!< FPCCR: TS Position */ -#define FPU_FPCCR_TS_Msk (1UL << FPU_FPCCR_TS_Pos) /*!< FPCCR: TS bit Mask */ - -#define FPU_FPCCR_UFRDY_Pos 10U /*!< FPCCR: UFRDY Position */ -#define FPU_FPCCR_UFRDY_Msk (1UL << FPU_FPCCR_UFRDY_Pos) /*!< FPCCR: UFRDY bit Mask */ - -#define FPU_FPCCR_SPLIMVIOL_Pos 9U /*!< FPCCR: SPLIMVIOL Position */ -#define FPU_FPCCR_SPLIMVIOL_Msk (1UL << FPU_FPCCR_SPLIMVIOL_Pos) /*!< FPCCR: SPLIMVIOL bit Mask */ - -#define FPU_FPCCR_MONRDY_Pos 8U /*!< FPCCR: MONRDY Position */ -#define FPU_FPCCR_MONRDY_Msk (1UL << FPU_FPCCR_MONRDY_Pos) /*!< FPCCR: MONRDY bit Mask */ - -#define FPU_FPCCR_SFRDY_Pos 7U /*!< FPCCR: SFRDY Position */ -#define FPU_FPCCR_SFRDY_Msk (1UL << FPU_FPCCR_SFRDY_Pos) /*!< FPCCR: SFRDY bit Mask */ - -#define FPU_FPCCR_BFRDY_Pos 6U /*!< FPCCR: BFRDY Position */ -#define FPU_FPCCR_BFRDY_Msk (1UL << FPU_FPCCR_BFRDY_Pos) /*!< FPCCR: BFRDY bit Mask */ - -#define FPU_FPCCR_MMRDY_Pos 5U /*!< FPCCR: MMRDY Position */ -#define FPU_FPCCR_MMRDY_Msk (1UL << FPU_FPCCR_MMRDY_Pos) /*!< FPCCR: MMRDY bit Mask */ - -#define FPU_FPCCR_HFRDY_Pos 4U /*!< FPCCR: HFRDY Position */ -#define FPU_FPCCR_HFRDY_Msk (1UL << FPU_FPCCR_HFRDY_Pos) /*!< FPCCR: HFRDY bit Mask */ - -#define FPU_FPCCR_THREAD_Pos 3U /*!< FPCCR: processor mode bit Position */ -#define FPU_FPCCR_THREAD_Msk (1UL << FPU_FPCCR_THREAD_Pos) /*!< FPCCR: processor mode active bit Mask */ - -#define FPU_FPCCR_S_Pos 2U /*!< FPCCR: Security status of the FP context bit Position */ -#define FPU_FPCCR_S_Msk (1UL << FPU_FPCCR_S_Pos) /*!< FPCCR: Security status of the FP context bit Mask */ - -#define FPU_FPCCR_USER_Pos 1U /*!< FPCCR: privilege level bit Position */ -#define FPU_FPCCR_USER_Msk (1UL << FPU_FPCCR_USER_Pos) /*!< FPCCR: privilege level bit Mask */ - -#define FPU_FPCCR_LSPACT_Pos 0U /*!< FPCCR: Lazy state preservation active bit Position */ -#define FPU_FPCCR_LSPACT_Msk (1UL /*<< FPU_FPCCR_LSPACT_Pos*/) /*!< FPCCR: Lazy state preservation active bit Mask */ - -/* Floating-Point Context Address Register Definitions */ -#define FPU_FPCAR_ADDRESS_Pos 3U /*!< FPCAR: ADDRESS bit Position */ -#define FPU_FPCAR_ADDRESS_Msk (0x1FFFFFFFUL << FPU_FPCAR_ADDRESS_Pos) /*!< FPCAR: ADDRESS bit Mask */ - -/* Floating-Point Default Status Control Register Definitions */ -#define FPU_FPDSCR_AHP_Pos 26U /*!< FPDSCR: AHP bit Position */ -#define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos) /*!< FPDSCR: AHP bit Mask */ - -#define FPU_FPDSCR_DN_Pos 25U /*!< FPDSCR: DN bit Position */ -#define FPU_FPDSCR_DN_Msk (1UL << FPU_FPDSCR_DN_Pos) /*!< FPDSCR: DN bit Mask */ - -#define FPU_FPDSCR_FZ_Pos 24U /*!< FPDSCR: FZ bit Position */ -#define FPU_FPDSCR_FZ_Msk (1UL << FPU_FPDSCR_FZ_Pos) /*!< FPDSCR: FZ bit Mask */ - -#define FPU_FPDSCR_RMode_Pos 22U /*!< FPDSCR: RMode bit Position */ -#define FPU_FPDSCR_RMode_Msk (3UL << FPU_FPDSCR_RMode_Pos) /*!< FPDSCR: RMode bit Mask */ - -/* Media and FP Feature Register 0 Definitions */ -#define FPU_MVFR0_FP_rounding_modes_Pos 28U /*!< MVFR0: FP rounding modes bits Position */ -#define FPU_MVFR0_FP_rounding_modes_Msk (0xFUL << FPU_MVFR0_FP_rounding_modes_Pos) /*!< MVFR0: FP rounding modes bits Mask */ - -#define FPU_MVFR0_Short_vectors_Pos 24U /*!< MVFR0: Short vectors bits Position */ -#define FPU_MVFR0_Short_vectors_Msk (0xFUL << FPU_MVFR0_Short_vectors_Pos) /*!< MVFR0: Short vectors bits Mask */ - -#define FPU_MVFR0_Square_root_Pos 20U /*!< MVFR0: Square root bits Position */ -#define FPU_MVFR0_Square_root_Msk (0xFUL << FPU_MVFR0_Square_root_Pos) /*!< MVFR0: Square root bits Mask */ - -#define FPU_MVFR0_Divide_Pos 16U /*!< MVFR0: Divide bits Position */ -#define FPU_MVFR0_Divide_Msk (0xFUL << FPU_MVFR0_Divide_Pos) /*!< MVFR0: Divide bits Mask */ - -#define FPU_MVFR0_FP_excep_trapping_Pos 12U /*!< MVFR0: FP exception trapping bits Position */ -#define FPU_MVFR0_FP_excep_trapping_Msk (0xFUL << FPU_MVFR0_FP_excep_trapping_Pos) /*!< MVFR0: FP exception trapping bits Mask */ - -#define FPU_MVFR0_Double_precision_Pos 8U /*!< MVFR0: Double-precision bits Position */ -#define FPU_MVFR0_Double_precision_Msk (0xFUL << FPU_MVFR0_Double_precision_Pos) /*!< MVFR0: Double-precision bits Mask */ - -#define FPU_MVFR0_Single_precision_Pos 4U /*!< MVFR0: Single-precision bits Position */ -#define FPU_MVFR0_Single_precision_Msk (0xFUL << FPU_MVFR0_Single_precision_Pos) /*!< MVFR0: Single-precision bits Mask */ - -#define FPU_MVFR0_A_SIMD_registers_Pos 0U /*!< MVFR0: A_SIMD registers bits Position */ -#define FPU_MVFR0_A_SIMD_registers_Msk (0xFUL /*<< FPU_MVFR0_A_SIMD_registers_Pos*/) /*!< MVFR0: A_SIMD registers bits Mask */ - -/* Media and FP Feature Register 1 Definitions */ -#define FPU_MVFR1_FP_fused_MAC_Pos 28U /*!< MVFR1: FP fused MAC bits Position */ -#define FPU_MVFR1_FP_fused_MAC_Msk (0xFUL << FPU_MVFR1_FP_fused_MAC_Pos) /*!< MVFR1: FP fused MAC bits Mask */ - -#define FPU_MVFR1_FP_HPFP_Pos 24U /*!< MVFR1: FP HPFP bits Position */ -#define FPU_MVFR1_FP_HPFP_Msk (0xFUL << FPU_MVFR1_FP_HPFP_Pos) /*!< MVFR1: FP HPFP bits Mask */ - -#define FPU_MVFR1_D_NaN_mode_Pos 4U /*!< MVFR1: D_NaN mode bits Position */ -#define FPU_MVFR1_D_NaN_mode_Msk (0xFUL << FPU_MVFR1_D_NaN_mode_Pos) /*!< MVFR1: D_NaN mode bits Mask */ - -#define FPU_MVFR1_FtZ_mode_Pos 0U /*!< MVFR1: FtZ mode bits Position */ -#define FPU_MVFR1_FtZ_mode_Msk (0xFUL /*<< FPU_MVFR1_FtZ_mode_Pos*/) /*!< MVFR1: FtZ mode bits Mask */ - -/*@} end of group CMSIS_FPU */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief Type definitions for the Core Debug Registers - @{ - */ - -/** - \brief Structure type to access the Core Debug Register (CoreDebug). - */ -typedef struct -{ - __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ - __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ - __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ - __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ - uint32_t RESERVED4[1U]; - __IOM uint32_t DAUTHCTRL; /*!< Offset: 0x014 (R/W) Debug Authentication Control Register */ - __IOM uint32_t DSCSR; /*!< Offset: 0x018 (R/W) Debug Security Control and Status Register */ -} CoreDebug_Type; - -/* Debug Halting Control and Status Register Definitions */ -#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ -#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ - -#define CoreDebug_DHCSR_S_RESTART_ST_Pos 26U /*!< CoreDebug DHCSR: S_RESTART_ST Position */ -#define CoreDebug_DHCSR_S_RESTART_ST_Msk (1UL << CoreDebug_DHCSR_S_RESTART_ST_Pos) /*!< CoreDebug DHCSR: S_RESTART_ST Mask */ - -#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ -#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ - -#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ -#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ - -#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ -#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ - -#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ -#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ - -#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ -#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ - -#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ -#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ - -#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ -#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ - -#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ -#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ - -#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ -#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ - -#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ -#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ - -#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ -#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ - -/* Debug Core Register Selector Register Definitions */ -#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ -#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ - -#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ -#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ - -/* Debug Exception and Monitor Control Register Definitions */ -#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ -#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ - -#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ -#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ - -#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ -#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ - -#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ -#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ - -#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ -#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ - -#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ -#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ - -#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ -#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ - -#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ -#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ - -#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ -#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ - -#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ -#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ - -#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ -#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ - -#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ -#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ - -#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ -#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ - -/* Debug Authentication Control Register Definitions */ -#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos 3U /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Position */ -#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Mask */ - -#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos 2U /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Position */ -#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Msk (1UL << CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos) /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Mask */ - -#define CoreDebug_DAUTHCTRL_INTSPIDEN_Pos 1U /*!< CoreDebug DAUTHCTRL: INTSPIDEN Position */ -#define CoreDebug_DAUTHCTRL_INTSPIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPIDEN Mask */ - -#define CoreDebug_DAUTHCTRL_SPIDENSEL_Pos 0U /*!< CoreDebug DAUTHCTRL: SPIDENSEL Position */ -#define CoreDebug_DAUTHCTRL_SPIDENSEL_Msk (1UL /*<< CoreDebug_DAUTHCTRL_SPIDENSEL_Pos*/) /*!< CoreDebug DAUTHCTRL: SPIDENSEL Mask */ - -/* Debug Security Control and Status Register Definitions */ -#define CoreDebug_DSCSR_CDS_Pos 16U /*!< CoreDebug DSCSR: CDS Position */ -#define CoreDebug_DSCSR_CDS_Msk (1UL << CoreDebug_DSCSR_CDS_Pos) /*!< CoreDebug DSCSR: CDS Mask */ - -#define CoreDebug_DSCSR_SBRSEL_Pos 1U /*!< CoreDebug DSCSR: SBRSEL Position */ -#define CoreDebug_DSCSR_SBRSEL_Msk (1UL << CoreDebug_DSCSR_SBRSEL_Pos) /*!< CoreDebug DSCSR: SBRSEL Mask */ - -#define CoreDebug_DSCSR_SBRSELEN_Pos 0U /*!< CoreDebug DSCSR: SBRSELEN Position */ -#define CoreDebug_DSCSR_SBRSELEN_Msk (1UL /*<< CoreDebug_DSCSR_SBRSELEN_Pos*/) /*!< CoreDebug DSCSR: SBRSELEN Mask */ - -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ - #define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ - #define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ - #define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ - #define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ - #define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ - #define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ - #define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ - #define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - - #define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ - #define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ - #define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ - #define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ - #define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ - #define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ - #define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ - #define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE ) /*!< Core Debug configuration struct */ - - #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ - #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ - #endif - - #if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - #define SAU_BASE (SCS_BASE + 0x0DD0UL) /*!< Security Attribution Unit */ - #define SAU ((SAU_Type *) SAU_BASE ) /*!< Security Attribution Unit */ - #endif - - #define FPU_BASE (SCS_BASE + 0x0F30UL) /*!< Floating Point Unit */ - #define FPU ((FPU_Type *) FPU_BASE ) /*!< Floating Point Unit */ - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - #define SCS_BASE_NS (0xE002E000UL) /*!< System Control Space Base Address (non-secure address space) */ - #define CoreDebug_BASE_NS (0xE002EDF0UL) /*!< Core Debug Base Address (non-secure address space) */ - #define SysTick_BASE_NS (SCS_BASE_NS + 0x0010UL) /*!< SysTick Base Address (non-secure address space) */ - #define NVIC_BASE_NS (SCS_BASE_NS + 0x0100UL) /*!< NVIC Base Address (non-secure address space) */ - #define SCB_BASE_NS (SCS_BASE_NS + 0x0D00UL) /*!< System Control Block Base Address (non-secure address space) */ - - #define SCnSCB_NS ((SCnSCB_Type *) SCS_BASE_NS ) /*!< System control Register not in SCB(non-secure address space) */ - #define SCB_NS ((SCB_Type *) SCB_BASE_NS ) /*!< SCB configuration struct (non-secure address space) */ - #define SysTick_NS ((SysTick_Type *) SysTick_BASE_NS ) /*!< SysTick configuration struct (non-secure address space) */ - #define NVIC_NS ((NVIC_Type *) NVIC_BASE_NS ) /*!< NVIC configuration struct (non-secure address space) */ - #define CoreDebug_NS ((CoreDebug_Type *) CoreDebug_BASE_NS) /*!< Core Debug configuration struct (non-secure address space) */ - - #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE_NS (SCS_BASE_NS + 0x0D90UL) /*!< Memory Protection Unit (non-secure address space) */ - #define MPU_NS ((MPU_Type *) MPU_BASE_NS ) /*!< Memory Protection Unit (non-secure address space) */ - #endif - - #define FPU_BASE_NS (SCS_BASE_NS + 0x0F30UL) /*!< Floating Point Unit (non-secure address space) */ - #define FPU_NS ((FPU_Type *) FPU_BASE_NS ) /*!< Floating Point Unit (non-secure address space) */ - -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Debug Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping - #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ - #define NVIC_GetActive __NVIC_GetActive - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* Special LR values for Secure/Non-Secure call handling and exception handling */ - -/* Function Return Payload (from ARMv8-M Architecture Reference Manual) LR value on entry from Secure BLXNS */ -#define FNC_RETURN (0xFEFFFFFFUL) /* bit [0] ignored when processing a branch */ - -/* The following EXC_RETURN mask values are used to evaluate the LR on exception entry */ -#define EXC_RETURN_PREFIX (0xFF000000UL) /* bits [31:24] set to indicate an EXC_RETURN value */ -#define EXC_RETURN_S (0x00000040UL) /* bit [6] stack used to push registers: 0=Non-secure 1=Secure */ -#define EXC_RETURN_DCRS (0x00000020UL) /* bit [5] stacking rules for called registers: 0=skipped 1=saved */ -#define EXC_RETURN_FTYPE (0x00000010UL) /* bit [4] allocate stack for floating-point context: 0=done 1=skipped */ -#define EXC_RETURN_MODE (0x00000008UL) /* bit [3] processor mode for return: 0=Handler mode 1=Thread mode */ -#define EXC_RETURN_SPSEL (0x00000002UL) /* bit [1] stack pointer used to restore context: 0=MSP 1=PSP */ -#define EXC_RETURN_ES (0x00000001UL) /* bit [0] security state exception was taken to: 0=Non-secure 1=Secure */ - -/* Integrity Signature (from ARMv8-M Architecture Reference Manual) for exception context stacking */ -#if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) /* Value for processors with floating-point extension: */ -#define EXC_INTEGRITY_SIGNATURE (0xFEFA125AUL) /* bit [0] SFTC must match LR bit[4] EXC_RETURN_FTYPE */ -#else -#define EXC_INTEGRITY_SIGNATURE (0xFEFA125BUL) /* Value for processors without floating-point extension */ -#endif - - -/** - \brief Set Priority Grouping - \details Sets the priority grouping field using the required unlock sequence. - The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. - Only values from 0..7 are used. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Priority grouping field. - */ -__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) -{ - uint32_t reg_value; - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - - reg_value = SCB->AIRCR; /* read old register configuration */ - reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ - reg_value = (reg_value | - ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (PriorityGroupTmp << 8U) ); /* Insert write key and priority group */ - SCB->AIRCR = reg_value; -} - - -/** - \brief Get Priority Grouping - \details Reads the priority grouping field from the NVIC Interrupt Controller. - \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). - */ -__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) -{ - return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); -} - - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt - \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief Get Interrupt Target State - \details Reads the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - \return 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_GetTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Target State - \details Sets the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_SetTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] |= ((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Clear Interrupt Target State - \details Clears the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 if interrupt is assigned to Secure - 1 if interrupt is assigned to Non Secure - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t NVIC_ClearTargetState(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] &= ~((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); - return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IPR[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } - else - { - SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return(((uint32_t)NVIC->IPR[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return(((uint32_t)SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Encode Priority - \details Encodes the priority for an interrupt with the given priority group, - preemptive priority value, and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Used priority group. - \param [in] PreemptPriority Preemptive priority value (starting from 0). - \param [in] SubPriority Subpriority value (starting from 0). - \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). - */ -__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - return ( - ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | - ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) - ); -} - - -/** - \brief Decode Priority - \details Decodes an interrupt priority value with a given priority group to - preemptive priority value and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. - \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). - \param [in] PriorityGroup Used priority group. - \param [out] pPreemptPriority Preemptive priority value (starting from 0). - \param [out] pSubPriority Subpriority value (starting from 0). - */ -__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); - *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); -} - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - VTOR must been relocated to SRAM before. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | - SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief Set Priority Grouping (non-secure) - \details Sets the non-secure priority grouping field when in secure state using the required unlock sequence. - The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. - Only values from 0..7 are used. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Priority grouping field. - */ -__STATIC_INLINE void TZ_NVIC_SetPriorityGrouping_NS(uint32_t PriorityGroup) -{ - uint32_t reg_value; - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - - reg_value = SCB_NS->AIRCR; /* read old register configuration */ - reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ - reg_value = (reg_value | - ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (PriorityGroupTmp << SCB_AIRCR_PRIGROUP_Pos) ); /* Insert write key and priority group */ - SCB_NS->AIRCR = reg_value; -} - - -/** - \brief Get Priority Grouping (non-secure) - \details Reads the priority grouping field from the non-secure NVIC when in secure state. - \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetPriorityGrouping_NS(void) -{ - return ((uint32_t)((SCB_NS->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); -} - - -/** - \brief Enable Interrupt (non-secure) - \details Enables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_EnableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status (non-secure) - \details Returns a device specific interrupt enable status from the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetEnableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt (non-secure) - \details Disables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_DisableIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Pending Interrupt (non-secure) - \details Reads the NVIC pending register in the non-secure NVIC when in secure state and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt (non-secure) - \details Sets the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_SetPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt (non-secure) - \details Clears the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void TZ_NVIC_ClearPendingIRQ_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt (non-secure) - \details Reads the active register in non-secure NVIC when in secure state and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetActive_NS(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC_NS->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Priority (non-secure) - \details Sets the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every non-secure processor exception. - */ -__STATIC_INLINE void TZ_NVIC_SetPriority_NS(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC_NS->IPR[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } - else - { - SCB_NS->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } -} - - -/** - \brief Get Interrupt Priority (non-secure) - \details Reads the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t TZ_NVIC_GetPriority_NS(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return(((uint32_t)NVIC_NS->IPR[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return(((uint32_t)SCB_NS->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); - } -} -#endif /* defined (__ARM_FEATURE_CMSE) &&(__ARM_FEATURE_CMSE == 3U) */ - -/*@} end of CMSIS_Core_NVICFunctions */ - -/* ########################## MPU functions #################################### */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - -#include "mpu_armv8.h" - -#endif - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - uint32_t mvfr0; - - mvfr0 = FPU->MVFR0; - if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x220U) - { - return 2U; /* Double + Single precision FPU */ - } - else if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x020U) - { - return 1U; /* Single precision FPU */ - } - else - { - return 0U; /* No FPU */ - } -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ########################## SAU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SAUFunctions SAU Functions - \brief Functions that configure the SAU. - @{ - */ - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) - -/** - \brief Enable SAU - \details Enables the Security Attribution Unit (SAU). - */ -__STATIC_INLINE void TZ_SAU_Enable(void) -{ - SAU->CTRL |= (SAU_CTRL_ENABLE_Msk); -} - - - -/** - \brief Disable SAU - \details Disables the Security Attribution Unit (SAU). - */ -__STATIC_INLINE void TZ_SAU_Disable(void) -{ - SAU->CTRL &= ~(SAU_CTRL_ENABLE_Msk); -} - -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - -/*@} end of CMSIS_Core_SAUFunctions */ - - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) -/** - \brief System Tick Configuration (non-secure) - \details Initializes the non-secure System Timer and its interrupt when in secure state, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function TZ_SysTick_Config_NS is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - - */ -__STATIC_INLINE uint32_t TZ_SysTick_Config_NS(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick_NS->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - TZ_NVIC_SetPriority_NS (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick_NS->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick_NS->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} -#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - -/* ##################################### Debug In/Output function ########################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_core_DebugFunctions ITM Functions - \brief Functions that access the ITM debug interface. - @{ - */ - -extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ -#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ - - -/** - \brief ITM Send Character - \details Transmits a character via the ITM channel 0, and - \li Just returns when no debugger is connected that has booked the output. - \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. - \param [in] ch Character to transmit. - \returns Character to transmit. - */ -__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) -{ - if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ - ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ - { - while (ITM->PORT[0U].u32 == 0UL) - { - __NOP(); - } - ITM->PORT[0U].u8 = (uint8_t)ch; - } - return (ch); -} - - -/** - \brief ITM Receive Character - \details Inputs a character via the external variable \ref ITM_RxBuffer. - \return Received character. - \return -1 No character pending. - */ -__STATIC_INLINE int32_t ITM_ReceiveChar (void) -{ - int32_t ch = -1; /* no character available */ - - if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) - { - ch = ITM_RxBuffer; - ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ - } - - return (ch); -} - - -/** - \brief ITM Check Character - \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. - \return 0 No character available. - \return 1 Character available. - */ -__STATIC_INLINE int32_t ITM_CheckChar (void) -{ - - if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) - { - return (0); /* no character available */ - } - else - { - return (1); /* character available */ - } -} - -/*@} end of CMSIS_core_DebugFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM33_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_cm33.h + * @brief CMSIS Cortex-M33 Core Peripheral Access Layer Header File + * @version V5.0.9 + * @date 06. July 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_CM33_H_GENERIC +#define __CORE_CM33_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup Cortex_M33 + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS CM33 definitions */ +#define __CM33_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __CM33_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __CM33_CMSIS_VERSION ((__CM33_CMSIS_VERSION_MAIN << 16U) | \ + __CM33_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_M (33U) /*!< Cortex-M Core */ + +/** __FPU_USED indicates whether an FPU is used or not. + For this, __FPU_PRESENT has to be checked prior to making use of FPU specific registers and functions. +*/ +#if defined ( __CC_ARM ) + #if defined (__TARGET_FPU_VFP) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + + #if defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1U) + #if defined (__DSP_PRESENT) && (__DSP_PRESENT == 1U) + #define __DSP_USED 1U + #else + #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" + #define __DSP_USED 0U + #endif + #else + #define __DSP_USED 0U + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined (__ARM_PCS_VFP) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #warning "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + + #if defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1U) + #if defined (__DSP_PRESENT) && (__DSP_PRESENT == 1U) + #define __DSP_USED 1U + #else + #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" + #define __DSP_USED 0U + #endif + #else + #define __DSP_USED 0U + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + + #if defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1U) + #if defined (__DSP_PRESENT) && (__DSP_PRESENT == 1U) + #define __DSP_USED 1U + #else + #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" + #define __DSP_USED 0U + #endif + #else + #define __DSP_USED 0U + #endif + +#elif defined ( __ICCARM__ ) + #if defined (__ARMVFP__) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + + #if defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1U) + #if defined (__DSP_PRESENT) && (__DSP_PRESENT == 1U) + #define __DSP_USED 1U + #else + #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)" + #define __DSP_USED 0U + #endif + #else + #define __DSP_USED 0U + #endif + +#elif defined ( __TI_ARM__ ) + #if defined (__TI_VFP_SUPPORT__) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __TASKING__ ) + #if defined (__FPU_VFP__) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM33_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_CM33_H_DEPENDANT +#define __CORE_CM33_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __CM33_REV + #define __CM33_REV 0x0000U + #warning "__CM33_REV not defined in device header file; using default!" + #endif + + #ifndef __FPU_PRESENT + #define __FPU_PRESENT 0U + #warning "__FPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __MPU_PRESENT + #define __MPU_PRESENT 0U + #warning "__MPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __SAUREGION_PRESENT + #define __SAUREGION_PRESENT 0U + #warning "__SAUREGION_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __DSP_PRESENT + #define __DSP_PRESENT 0U + #warning "__DSP_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 3U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group Cortex_M33 */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + - Core Debug Register + - Core MPU Register + - Core SAU Register + - Core FPU Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:16; /*!< bit: 0..15 Reserved */ + uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ + uint32_t _reserved1:7; /*!< bit: 20..26 Reserved */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + +#define APSR_Q_Pos 27U /*!< APSR: Q Position */ +#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ + +#define APSR_GE_Pos 16U /*!< APSR: GE Position */ +#define APSR_GE_Msk (0xFUL << APSR_GE_Pos) /*!< APSR: GE Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:7; /*!< bit: 9..15 Reserved */ + uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ + uint32_t _reserved1:4; /*!< bit: 20..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ + uint32_t IT:2; /*!< bit: 25..26 saved IT state (read 0) */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ +#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ + +#define xPSR_IT_Pos 25U /*!< xPSR: IT Position */ +#define xPSR_IT_Msk (3UL << xPSR_IT_Pos) /*!< xPSR: IT Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_GE_Pos 16U /*!< xPSR: GE Position */ +#define xPSR_GE_Msk (0xFUL << xPSR_GE_Pos) /*!< xPSR: GE Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ + uint32_t SPSEL:1; /*!< bit: 1 Stack-pointer select */ + uint32_t FPCA:1; /*!< bit: 2 Floating-point context active */ + uint32_t SFPA:1; /*!< bit: 3 Secure floating-point active */ + uint32_t _reserved1:28; /*!< bit: 4..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_SFPA_Pos 3U /*!< CONTROL: SFPA Position */ +#define CONTROL_SFPA_Msk (1UL << CONTROL_SFPA_Pos) /*!< CONTROL: SFPA Mask */ + +#define CONTROL_FPCA_Pos 2U /*!< CONTROL: FPCA Position */ +#define CONTROL_FPCA_Msk (1UL << CONTROL_FPCA_Pos) /*!< CONTROL: FPCA Mask */ + +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ +#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[16U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[16U]; + __IOM uint32_t ICER[16U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[16U]; + __IOM uint32_t ISPR[16U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[16U]; + __IOM uint32_t ICPR[16U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[16U]; + __IOM uint32_t IABR[16U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ + uint32_t RESERVED4[16U]; + __IOM uint32_t ITNS[16U]; /*!< Offset: 0x280 (R/W) Interrupt Non-Secure State Register */ + uint32_t RESERVED5[16U]; + __IOM uint8_t IPR[496U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ + uint32_t RESERVED6[580U]; + __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ +} NVIC_Type; + +/* Software Triggered Interrupt Register Definitions */ +#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ +#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ + __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + __IOM uint8_t SHPR[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ + __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ + __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ + __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ + __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ + __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ + __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ + __IM uint32_t ID_PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ + __IM uint32_t ID_DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ + __IM uint32_t ID_ADR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ + __IM uint32_t ID_MMFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ + __IM uint32_t ID_ISAR[6U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ + __IM uint32_t CLIDR; /*!< Offset: 0x078 (R/ ) Cache Level ID register */ + __IM uint32_t CTR; /*!< Offset: 0x07C (R/ ) Cache Type register */ + __IM uint32_t CCSIDR; /*!< Offset: 0x080 (R/ ) Cache Size ID Register */ + __IOM uint32_t CSSELR; /*!< Offset: 0x084 (R/W) Cache Size Selection Register */ + __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ + __IOM uint32_t NSACR; /*!< Offset: 0x08C (R/W) Non-Secure Access Control Register */ + uint32_t RESERVED3[92U]; + __OM uint32_t STIR; /*!< Offset: 0x200 ( /W) Software Triggered Interrupt Register */ + uint32_t RESERVED4[15U]; + __IM uint32_t MVFR0; /*!< Offset: 0x240 (R/ ) Media and VFP Feature Register 0 */ + __IM uint32_t MVFR1; /*!< Offset: 0x244 (R/ ) Media and VFP Feature Register 1 */ + __IM uint32_t MVFR2; /*!< Offset: 0x248 (R/ ) Media and VFP Feature Register 2 */ + uint32_t RESERVED5[1U]; + __OM uint32_t ICIALLU; /*!< Offset: 0x250 ( /W) I-Cache Invalidate All to PoU */ + uint32_t RESERVED6[1U]; + __OM uint32_t ICIMVAU; /*!< Offset: 0x258 ( /W) I-Cache Invalidate by MVA to PoU */ + __OM uint32_t DCIMVAC; /*!< Offset: 0x25C ( /W) D-Cache Invalidate by MVA to PoC */ + __OM uint32_t DCISW; /*!< Offset: 0x260 ( /W) D-Cache Invalidate by Set-way */ + __OM uint32_t DCCMVAU; /*!< Offset: 0x264 ( /W) D-Cache Clean by MVA to PoU */ + __OM uint32_t DCCMVAC; /*!< Offset: 0x268 ( /W) D-Cache Clean by MVA to PoC */ + __OM uint32_t DCCSW; /*!< Offset: 0x26C ( /W) D-Cache Clean by Set-way */ + __OM uint32_t DCCIMVAC; /*!< Offset: 0x270 ( /W) D-Cache Clean and Invalidate by MVA to PoC */ + __OM uint32_t DCCISW; /*!< Offset: 0x274 ( /W) D-Cache Clean and Invalidate by Set-way */ + uint32_t RESERVED7[6U]; + __IOM uint32_t ITCMCR; /*!< Offset: 0x290 (R/W) Instruction Tightly-Coupled Memory Control Register */ + __IOM uint32_t DTCMCR; /*!< Offset: 0x294 (R/W) Data Tightly-Coupled Memory Control Registers */ + __IOM uint32_t AHBPCR; /*!< Offset: 0x298 (R/W) AHBP Control Register */ + __IOM uint32_t CACR; /*!< Offset: 0x29C (R/W) L1 Cache Control Register */ + __IOM uint32_t AHBSCR; /*!< Offset: 0x2A0 (R/W) AHB Slave Control Register */ + uint32_t RESERVED8[1U]; + __IOM uint32_t ABFSR; /*!< Offset: 0x2A8 (R/W) Auxiliary Bus Fault Status Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_PENDNMISET_Pos 31U /*!< SCB ICSR: PENDNMISET Position */ +#define SCB_ICSR_PENDNMISET_Msk (1UL << SCB_ICSR_PENDNMISET_Pos) /*!< SCB ICSR: PENDNMISET Mask */ + +#define SCB_ICSR_NMIPENDSET_Pos SCB_ICSR_PENDNMISET_Pos /*!< SCB ICSR: NMIPENDSET Position, backward compatibility */ +#define SCB_ICSR_NMIPENDSET_Msk SCB_ICSR_PENDNMISET_Msk /*!< SCB ICSR: NMIPENDSET Mask, backward compatibility */ + +#define SCB_ICSR_PENDNMICLR_Pos 30U /*!< SCB ICSR: PENDNMICLR Position */ +#define SCB_ICSR_PENDNMICLR_Msk (1UL << SCB_ICSR_PENDNMICLR_Pos) /*!< SCB ICSR: PENDNMICLR Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_STTNS_Pos 24U /*!< SCB ICSR: STTNS Position (Security Extension) */ +#define SCB_ICSR_STTNS_Msk (1UL << SCB_ICSR_STTNS_Pos) /*!< SCB ICSR: STTNS Mask (Security Extension) */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ +#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +/* SCB Vector Table Offset Register Definitions */ +#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ +#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_PRIS_Pos 14U /*!< SCB AIRCR: PRIS Position */ +#define SCB_AIRCR_PRIS_Msk (1UL << SCB_AIRCR_PRIS_Pos) /*!< SCB AIRCR: PRIS Mask */ + +#define SCB_AIRCR_BFHFNMINS_Pos 13U /*!< SCB AIRCR: BFHFNMINS Position */ +#define SCB_AIRCR_BFHFNMINS_Msk (1UL << SCB_AIRCR_BFHFNMINS_Pos) /*!< SCB AIRCR: BFHFNMINS Mask */ + +#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ +#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ + +#define SCB_AIRCR_SYSRESETREQS_Pos 3U /*!< SCB AIRCR: SYSRESETREQS Position */ +#define SCB_AIRCR_SYSRESETREQS_Msk (1UL << SCB_AIRCR_SYSRESETREQS_Pos) /*!< SCB AIRCR: SYSRESETREQS Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEPS_Pos 3U /*!< SCB SCR: SLEEPDEEPS Position */ +#define SCB_SCR_SLEEPDEEPS_Msk (1UL << SCB_SCR_SLEEPDEEPS_Pos) /*!< SCB SCR: SLEEPDEEPS Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_BP_Pos 18U /*!< SCB CCR: BP Position */ +#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos) /*!< SCB CCR: BP Mask */ + +#define SCB_CCR_IC_Pos 17U /*!< SCB CCR: IC Position */ +#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos) /*!< SCB CCR: IC Mask */ + +#define SCB_CCR_DC_Pos 16U /*!< SCB CCR: DC Position */ +#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos) /*!< SCB CCR: DC Mask */ + +#define SCB_CCR_STKOFHFNMIGN_Pos 10U /*!< SCB CCR: STKOFHFNMIGN Position */ +#define SCB_CCR_STKOFHFNMIGN_Msk (1UL << SCB_CCR_STKOFHFNMIGN_Pos) /*!< SCB CCR: STKOFHFNMIGN Mask */ + +#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ +#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ + +#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ +#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ +#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_HARDFAULTPENDED_Pos 21U /*!< SCB SHCSR: HARDFAULTPENDED Position */ +#define SCB_SHCSR_HARDFAULTPENDED_Msk (1UL << SCB_SHCSR_HARDFAULTPENDED_Pos) /*!< SCB SHCSR: HARDFAULTPENDED Mask */ + +#define SCB_SHCSR_SECUREFAULTPENDED_Pos 20U /*!< SCB SHCSR: SECUREFAULTPENDED Position */ +#define SCB_SHCSR_SECUREFAULTPENDED_Msk (1UL << SCB_SHCSR_SECUREFAULTPENDED_Pos) /*!< SCB SHCSR: SECUREFAULTPENDED Mask */ + +#define SCB_SHCSR_SECUREFAULTENA_Pos 19U /*!< SCB SHCSR: SECUREFAULTENA Position */ +#define SCB_SHCSR_SECUREFAULTENA_Msk (1UL << SCB_SHCSR_SECUREFAULTENA_Pos) /*!< SCB SHCSR: SECUREFAULTENA Mask */ + +#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ +#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ + +#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ +#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ + +#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ +#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ + +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ +#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ + +#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ +#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ + +#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ +#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ + +#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ +#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ + +#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ +#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ + +#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ +#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ + +#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ +#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ + +#define SCB_SHCSR_NMIACT_Pos 5U /*!< SCB SHCSR: NMIACT Position */ +#define SCB_SHCSR_NMIACT_Msk (1UL << SCB_SHCSR_NMIACT_Pos) /*!< SCB SHCSR: NMIACT Mask */ + +#define SCB_SHCSR_SECUREFAULTACT_Pos 4U /*!< SCB SHCSR: SECUREFAULTACT Position */ +#define SCB_SHCSR_SECUREFAULTACT_Msk (1UL << SCB_SHCSR_SECUREFAULTACT_Pos) /*!< SCB SHCSR: SECUREFAULTACT Mask */ + +#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ +#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ + +#define SCB_SHCSR_HARDFAULTACT_Pos 2U /*!< SCB SHCSR: HARDFAULTACT Position */ +#define SCB_SHCSR_HARDFAULTACT_Msk (1UL << SCB_SHCSR_HARDFAULTACT_Pos) /*!< SCB SHCSR: HARDFAULTACT Mask */ + +#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ +#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ + +#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ +#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ + +/* SCB Configurable Fault Status Register Definitions */ +#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ +#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ + +#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ +#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ + +#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ +#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ + +/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ +#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ + +#define SCB_CFSR_MLSPERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 5U) /*!< SCB CFSR (MMFSR): MLSPERR Position */ +#define SCB_CFSR_MLSPERR_Msk (1UL << SCB_CFSR_MLSPERR_Pos) /*!< SCB CFSR (MMFSR): MLSPERR Mask */ + +#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ +#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ + +#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ +#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ + +#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ +#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ + +#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ +#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ + +/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ +#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ + +#define SCB_CFSR_LSPERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 5U) /*!< SCB CFSR (BFSR): LSPERR Position */ +#define SCB_CFSR_LSPERR_Msk (1UL << SCB_CFSR_LSPERR_Pos) /*!< SCB CFSR (BFSR): LSPERR Mask */ + +#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ +#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ + +#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ +#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ + +#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ +#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ + +#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ +#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ + +#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ +#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ + +/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ +#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ + +#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ +#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ + +#define SCB_CFSR_STKOF_Pos (SCB_CFSR_USGFAULTSR_Pos + 4U) /*!< SCB CFSR (UFSR): STKOF Position */ +#define SCB_CFSR_STKOF_Msk (1UL << SCB_CFSR_STKOF_Pos) /*!< SCB CFSR (UFSR): STKOF Mask */ + +#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ +#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ + +#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ +#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ + +#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ +#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ + +#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ +#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ + +/* SCB Hard Fault Status Register Definitions */ +#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ +#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ + +#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ +#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ + +#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ +#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ + +/* SCB Debug Fault Status Register Definitions */ +#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ +#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ + +#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ +#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ + +#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ +#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ + +#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ +#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ + +#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ +#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ + +/* SCB Non-Secure Access Control Register Definitions */ +#define SCB_NSACR_CP11_Pos 11U /*!< SCB NSACR: CP11 Position */ +#define SCB_NSACR_CP11_Msk (1UL << SCB_NSACR_CP11_Pos) /*!< SCB NSACR: CP11 Mask */ + +#define SCB_NSACR_CP10_Pos 10U /*!< SCB NSACR: CP10 Position */ +#define SCB_NSACR_CP10_Msk (1UL << SCB_NSACR_CP10_Pos) /*!< SCB NSACR: CP10 Mask */ + +#define SCB_NSACR_CPn_Pos 0U /*!< SCB NSACR: CPn Position */ +#define SCB_NSACR_CPn_Msk (1UL /*<< SCB_NSACR_CPn_Pos*/) /*!< SCB NSACR: CPn Mask */ + +/* SCB Cache Level ID Register Definitions */ +#define SCB_CLIDR_LOUU_Pos 27U /*!< SCB CLIDR: LoUU Position */ +#define SCB_CLIDR_LOUU_Msk (7UL << SCB_CLIDR_LOUU_Pos) /*!< SCB CLIDR: LoUU Mask */ + +#define SCB_CLIDR_LOC_Pos 24U /*!< SCB CLIDR: LoC Position */ +#define SCB_CLIDR_LOC_Msk (7UL << SCB_CLIDR_LOC_Pos) /*!< SCB CLIDR: LoC Mask */ + +/* SCB Cache Type Register Definitions */ +#define SCB_CTR_FORMAT_Pos 29U /*!< SCB CTR: Format Position */ +#define SCB_CTR_FORMAT_Msk (7UL << SCB_CTR_FORMAT_Pos) /*!< SCB CTR: Format Mask */ + +#define SCB_CTR_CWG_Pos 24U /*!< SCB CTR: CWG Position */ +#define SCB_CTR_CWG_Msk (0xFUL << SCB_CTR_CWG_Pos) /*!< SCB CTR: CWG Mask */ + +#define SCB_CTR_ERG_Pos 20U /*!< SCB CTR: ERG Position */ +#define SCB_CTR_ERG_Msk (0xFUL << SCB_CTR_ERG_Pos) /*!< SCB CTR: ERG Mask */ + +#define SCB_CTR_DMINLINE_Pos 16U /*!< SCB CTR: DminLine Position */ +#define SCB_CTR_DMINLINE_Msk (0xFUL << SCB_CTR_DMINLINE_Pos) /*!< SCB CTR: DminLine Mask */ + +#define SCB_CTR_IMINLINE_Pos 0U /*!< SCB CTR: ImInLine Position */ +#define SCB_CTR_IMINLINE_Msk (0xFUL /*<< SCB_CTR_IMINLINE_Pos*/) /*!< SCB CTR: ImInLine Mask */ + +/* SCB Cache Size ID Register Definitions */ +#define SCB_CCSIDR_WT_Pos 31U /*!< SCB CCSIDR: WT Position */ +#define SCB_CCSIDR_WT_Msk (1UL << SCB_CCSIDR_WT_Pos) /*!< SCB CCSIDR: WT Mask */ + +#define SCB_CCSIDR_WB_Pos 30U /*!< SCB CCSIDR: WB Position */ +#define SCB_CCSIDR_WB_Msk (1UL << SCB_CCSIDR_WB_Pos) /*!< SCB CCSIDR: WB Mask */ + +#define SCB_CCSIDR_RA_Pos 29U /*!< SCB CCSIDR: RA Position */ +#define SCB_CCSIDR_RA_Msk (1UL << SCB_CCSIDR_RA_Pos) /*!< SCB CCSIDR: RA Mask */ + +#define SCB_CCSIDR_WA_Pos 28U /*!< SCB CCSIDR: WA Position */ +#define SCB_CCSIDR_WA_Msk (1UL << SCB_CCSIDR_WA_Pos) /*!< SCB CCSIDR: WA Mask */ + +#define SCB_CCSIDR_NUMSETS_Pos 13U /*!< SCB CCSIDR: NumSets Position */ +#define SCB_CCSIDR_NUMSETS_Msk (0x7FFFUL << SCB_CCSIDR_NUMSETS_Pos) /*!< SCB CCSIDR: NumSets Mask */ + +#define SCB_CCSIDR_ASSOCIATIVITY_Pos 3U /*!< SCB CCSIDR: Associativity Position */ +#define SCB_CCSIDR_ASSOCIATIVITY_Msk (0x3FFUL << SCB_CCSIDR_ASSOCIATIVITY_Pos) /*!< SCB CCSIDR: Associativity Mask */ + +#define SCB_CCSIDR_LINESIZE_Pos 0U /*!< SCB CCSIDR: LineSize Position */ +#define SCB_CCSIDR_LINESIZE_Msk (7UL /*<< SCB_CCSIDR_LINESIZE_Pos*/) /*!< SCB CCSIDR: LineSize Mask */ + +/* SCB Cache Size Selection Register Definitions */ +#define SCB_CSSELR_LEVEL_Pos 1U /*!< SCB CSSELR: Level Position */ +#define SCB_CSSELR_LEVEL_Msk (7UL << SCB_CSSELR_LEVEL_Pos) /*!< SCB CSSELR: Level Mask */ + +#define SCB_CSSELR_IND_Pos 0U /*!< SCB CSSELR: InD Position */ +#define SCB_CSSELR_IND_Msk (1UL /*<< SCB_CSSELR_IND_Pos*/) /*!< SCB CSSELR: InD Mask */ + +/* SCB Software Triggered Interrupt Register Definitions */ +#define SCB_STIR_INTID_Pos 0U /*!< SCB STIR: INTID Position */ +#define SCB_STIR_INTID_Msk (0x1FFUL /*<< SCB_STIR_INTID_Pos*/) /*!< SCB STIR: INTID Mask */ + +/* SCB D-Cache Invalidate by Set-way Register Definitions */ +#define SCB_DCISW_WAY_Pos 30U /*!< SCB DCISW: Way Position */ +#define SCB_DCISW_WAY_Msk (3UL << SCB_DCISW_WAY_Pos) /*!< SCB DCISW: Way Mask */ + +#define SCB_DCISW_SET_Pos 5U /*!< SCB DCISW: Set Position */ +#define SCB_DCISW_SET_Msk (0x1FFUL << SCB_DCISW_SET_Pos) /*!< SCB DCISW: Set Mask */ + +/* SCB D-Cache Clean by Set-way Register Definitions */ +#define SCB_DCCSW_WAY_Pos 30U /*!< SCB DCCSW: Way Position */ +#define SCB_DCCSW_WAY_Msk (3UL << SCB_DCCSW_WAY_Pos) /*!< SCB DCCSW: Way Mask */ + +#define SCB_DCCSW_SET_Pos 5U /*!< SCB DCCSW: Set Position */ +#define SCB_DCCSW_SET_Msk (0x1FFUL << SCB_DCCSW_SET_Pos) /*!< SCB DCCSW: Set Mask */ + +/* SCB D-Cache Clean and Invalidate by Set-way Register Definitions */ +#define SCB_DCCISW_WAY_Pos 30U /*!< SCB DCCISW: Way Position */ +#define SCB_DCCISW_WAY_Msk (3UL << SCB_DCCISW_WAY_Pos) /*!< SCB DCCISW: Way Mask */ + +#define SCB_DCCISW_SET_Pos 5U /*!< SCB DCCISW: Set Position */ +#define SCB_DCCISW_SET_Msk (0x1FFUL << SCB_DCCISW_SET_Pos) /*!< SCB DCCISW: Set Mask */ + +/* Instruction Tightly-Coupled Memory Control Register Definitions */ +#define SCB_ITCMCR_SZ_Pos 3U /*!< SCB ITCMCR: SZ Position */ +#define SCB_ITCMCR_SZ_Msk (0xFUL << SCB_ITCMCR_SZ_Pos) /*!< SCB ITCMCR: SZ Mask */ + +#define SCB_ITCMCR_RETEN_Pos 2U /*!< SCB ITCMCR: RETEN Position */ +#define SCB_ITCMCR_RETEN_Msk (1UL << SCB_ITCMCR_RETEN_Pos) /*!< SCB ITCMCR: RETEN Mask */ + +#define SCB_ITCMCR_RMW_Pos 1U /*!< SCB ITCMCR: RMW Position */ +#define SCB_ITCMCR_RMW_Msk (1UL << SCB_ITCMCR_RMW_Pos) /*!< SCB ITCMCR: RMW Mask */ + +#define SCB_ITCMCR_EN_Pos 0U /*!< SCB ITCMCR: EN Position */ +#define SCB_ITCMCR_EN_Msk (1UL /*<< SCB_ITCMCR_EN_Pos*/) /*!< SCB ITCMCR: EN Mask */ + +/* Data Tightly-Coupled Memory Control Register Definitions */ +#define SCB_DTCMCR_SZ_Pos 3U /*!< SCB DTCMCR: SZ Position */ +#define SCB_DTCMCR_SZ_Msk (0xFUL << SCB_DTCMCR_SZ_Pos) /*!< SCB DTCMCR: SZ Mask */ + +#define SCB_DTCMCR_RETEN_Pos 2U /*!< SCB DTCMCR: RETEN Position */ +#define SCB_DTCMCR_RETEN_Msk (1UL << SCB_DTCMCR_RETEN_Pos) /*!< SCB DTCMCR: RETEN Mask */ + +#define SCB_DTCMCR_RMW_Pos 1U /*!< SCB DTCMCR: RMW Position */ +#define SCB_DTCMCR_RMW_Msk (1UL << SCB_DTCMCR_RMW_Pos) /*!< SCB DTCMCR: RMW Mask */ + +#define SCB_DTCMCR_EN_Pos 0U /*!< SCB DTCMCR: EN Position */ +#define SCB_DTCMCR_EN_Msk (1UL /*<< SCB_DTCMCR_EN_Pos*/) /*!< SCB DTCMCR: EN Mask */ + +/* AHBP Control Register Definitions */ +#define SCB_AHBPCR_SZ_Pos 1U /*!< SCB AHBPCR: SZ Position */ +#define SCB_AHBPCR_SZ_Msk (7UL << SCB_AHBPCR_SZ_Pos) /*!< SCB AHBPCR: SZ Mask */ + +#define SCB_AHBPCR_EN_Pos 0U /*!< SCB AHBPCR: EN Position */ +#define SCB_AHBPCR_EN_Msk (1UL /*<< SCB_AHBPCR_EN_Pos*/) /*!< SCB AHBPCR: EN Mask */ + +/* L1 Cache Control Register Definitions */ +#define SCB_CACR_FORCEWT_Pos 2U /*!< SCB CACR: FORCEWT Position */ +#define SCB_CACR_FORCEWT_Msk (1UL << SCB_CACR_FORCEWT_Pos) /*!< SCB CACR: FORCEWT Mask */ + +#define SCB_CACR_ECCEN_Pos 1U /*!< SCB CACR: ECCEN Position */ +#define SCB_CACR_ECCEN_Msk (1UL << SCB_CACR_ECCEN_Pos) /*!< SCB CACR: ECCEN Mask */ + +#define SCB_CACR_SIWT_Pos 0U /*!< SCB CACR: SIWT Position */ +#define SCB_CACR_SIWT_Msk (1UL /*<< SCB_CACR_SIWT_Pos*/) /*!< SCB CACR: SIWT Mask */ + +/* AHBS Control Register Definitions */ +#define SCB_AHBSCR_INITCOUNT_Pos 11U /*!< SCB AHBSCR: INITCOUNT Position */ +#define SCB_AHBSCR_INITCOUNT_Msk (0x1FUL << SCB_AHBPCR_INITCOUNT_Pos) /*!< SCB AHBSCR: INITCOUNT Mask */ + +#define SCB_AHBSCR_TPRI_Pos 2U /*!< SCB AHBSCR: TPRI Position */ +#define SCB_AHBSCR_TPRI_Msk (0x1FFUL << SCB_AHBPCR_TPRI_Pos) /*!< SCB AHBSCR: TPRI Mask */ + +#define SCB_AHBSCR_CTL_Pos 0U /*!< SCB AHBSCR: CTL Position*/ +#define SCB_AHBSCR_CTL_Msk (3UL /*<< SCB_AHBPCR_CTL_Pos*/) /*!< SCB AHBSCR: CTL Mask */ + +/* Auxiliary Bus Fault Status Register Definitions */ +#define SCB_ABFSR_AXIMTYPE_Pos 8U /*!< SCB ABFSR: AXIMTYPE Position*/ +#define SCB_ABFSR_AXIMTYPE_Msk (3UL << SCB_ABFSR_AXIMTYPE_Pos) /*!< SCB ABFSR: AXIMTYPE Mask */ + +#define SCB_ABFSR_EPPB_Pos 4U /*!< SCB ABFSR: EPPB Position*/ +#define SCB_ABFSR_EPPB_Msk (1UL << SCB_ABFSR_EPPB_Pos) /*!< SCB ABFSR: EPPB Mask */ + +#define SCB_ABFSR_AXIM_Pos 3U /*!< SCB ABFSR: AXIM Position*/ +#define SCB_ABFSR_AXIM_Msk (1UL << SCB_ABFSR_AXIM_Pos) /*!< SCB ABFSR: AXIM Mask */ + +#define SCB_ABFSR_AHBP_Pos 2U /*!< SCB ABFSR: AHBP Position*/ +#define SCB_ABFSR_AHBP_Msk (1UL << SCB_ABFSR_AHBP_Pos) /*!< SCB ABFSR: AHBP Mask */ + +#define SCB_ABFSR_DTCM_Pos 1U /*!< SCB ABFSR: DTCM Position*/ +#define SCB_ABFSR_DTCM_Msk (1UL << SCB_ABFSR_DTCM_Pos) /*!< SCB ABFSR: DTCM Mask */ + +#define SCB_ABFSR_ITCM_Pos 0U /*!< SCB ABFSR: ITCM Position*/ +#define SCB_ABFSR_ITCM_Msk (1UL /*<< SCB_ABFSR_ITCM_Pos*/) /*!< SCB ABFSR: ITCM Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) + \brief Type definitions for the System Control and ID Register not in the SCB + @{ + */ + +/** + \brief Structure type to access the System Control and ID Register not in the SCB. + */ +typedef struct +{ + uint32_t RESERVED0[1U]; + __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ + __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ + __IOM uint32_t CPPWR; /*!< Offset: 0x00C (R/W) Coprocessor Power Control Register */ +} SCnSCB_Type; + +/* Interrupt Controller Type Register Definitions */ +#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ +#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ + +/*@} end of group CMSIS_SCnotSCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) + \brief Type definitions for the Instrumentation Trace Macrocell (ITM) + @{ + */ + +/** + \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). + */ +typedef struct +{ + __OM union + { + __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ + __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ + __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ + } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ + uint32_t RESERVED0[864U]; + __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ + uint32_t RESERVED1[15U]; + __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ + uint32_t RESERVED2[15U]; + __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ + uint32_t RESERVED3[29U]; + __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ + __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ + __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ + uint32_t RESERVED4[43U]; + __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ + __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ + uint32_t RESERVED5[1U]; + __IM uint32_t DEVARCH; /*!< Offset: 0xFBC (R/ ) ITM Device Architecture Register */ + uint32_t RESERVED6[4U]; + __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ + __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ + __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ + __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ + __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ + __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ + __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ + __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ + __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ + __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ + __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ + __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ +} ITM_Type; + +/* ITM Stimulus Port Register Definitions */ +#define ITM_STIM_DISABLED_Pos 1U /*!< ITM STIM: DISABLED Position */ +#define ITM_STIM_DISABLED_Msk (0x1UL << ITM_STIM_DISABLED_Pos) /*!< ITM STIM: DISABLED Mask */ + +#define ITM_STIM_FIFOREADY_Pos 0U /*!< ITM STIM: FIFOREADY Position */ +#define ITM_STIM_FIFOREADY_Msk (0x1UL /*<< ITM_STIM_FIFOREADY_Pos*/) /*!< ITM STIM: FIFOREADY Mask */ + +/* ITM Trace Privilege Register Definitions */ +#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ +#define ITM_TPR_PRIVMASK_Msk (0xFFFFFFFFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ + +/* ITM Trace Control Register Definitions */ +#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ +#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ + +#define ITM_TCR_TRACEBUSID_Pos 16U /*!< ITM TCR: ATBID Position */ +#define ITM_TCR_TRACEBUSID_Msk (0x7FUL << ITM_TCR_TRACEBUSID_Pos) /*!< ITM TCR: ATBID Mask */ + +#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ +#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ + +#define ITM_TCR_TSPRESCALE_Pos 8U /*!< ITM TCR: TSPRESCALE Position */ +#define ITM_TCR_TSPRESCALE_Msk (3UL << ITM_TCR_TSPRESCALE_Pos) /*!< ITM TCR: TSPRESCALE Mask */ + +#define ITM_TCR_STALLENA_Pos 5U /*!< ITM TCR: STALLENA Position */ +#define ITM_TCR_STALLENA_Msk (1UL << ITM_TCR_STALLENA_Pos) /*!< ITM TCR: STALLENA Mask */ + +#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ +#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ + +#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ +#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ + +#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ +#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ + +#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ +#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ + +#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ +#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ + +/* ITM Integration Write Register Definitions */ +#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ +#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ + +/* ITM Integration Read Register Definitions */ +#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ +#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ + +/* ITM Integration Mode Control Register Definitions */ +#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ +#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ + +/* ITM Lock Status Register Definitions */ +#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ +#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ + +#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ +#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ + +#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ +#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ + +/*@}*/ /* end of group CMSIS_ITM */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) + \brief Type definitions for the Data Watchpoint and Trace (DWT) + @{ + */ + +/** + \brief Structure type to access the Data Watchpoint and Trace Register (DWT). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ + __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ + __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ + __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ + __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ + __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ + __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ + __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ + __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ + uint32_t RESERVED1[1U]; + __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ + uint32_t RESERVED2[1U]; + __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ + uint32_t RESERVED3[1U]; + __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ + uint32_t RESERVED4[1U]; + __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ + uint32_t RESERVED5[1U]; + __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ + uint32_t RESERVED6[1U]; + __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ + uint32_t RESERVED7[1U]; + __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ + uint32_t RESERVED8[1U]; + __IOM uint32_t COMP4; /*!< Offset: 0x060 (R/W) Comparator Register 4 */ + uint32_t RESERVED9[1U]; + __IOM uint32_t FUNCTION4; /*!< Offset: 0x068 (R/W) Function Register 4 */ + uint32_t RESERVED10[1U]; + __IOM uint32_t COMP5; /*!< Offset: 0x070 (R/W) Comparator Register 5 */ + uint32_t RESERVED11[1U]; + __IOM uint32_t FUNCTION5; /*!< Offset: 0x078 (R/W) Function Register 5 */ + uint32_t RESERVED12[1U]; + __IOM uint32_t COMP6; /*!< Offset: 0x080 (R/W) Comparator Register 6 */ + uint32_t RESERVED13[1U]; + __IOM uint32_t FUNCTION6; /*!< Offset: 0x088 (R/W) Function Register 6 */ + uint32_t RESERVED14[1U]; + __IOM uint32_t COMP7; /*!< Offset: 0x090 (R/W) Comparator Register 7 */ + uint32_t RESERVED15[1U]; + __IOM uint32_t FUNCTION7; /*!< Offset: 0x098 (R/W) Function Register 7 */ + uint32_t RESERVED16[1U]; + __IOM uint32_t COMP8; /*!< Offset: 0x0A0 (R/W) Comparator Register 8 */ + uint32_t RESERVED17[1U]; + __IOM uint32_t FUNCTION8; /*!< Offset: 0x0A8 (R/W) Function Register 8 */ + uint32_t RESERVED18[1U]; + __IOM uint32_t COMP9; /*!< Offset: 0x0B0 (R/W) Comparator Register 9 */ + uint32_t RESERVED19[1U]; + __IOM uint32_t FUNCTION9; /*!< Offset: 0x0B8 (R/W) Function Register 9 */ + uint32_t RESERVED20[1U]; + __IOM uint32_t COMP10; /*!< Offset: 0x0C0 (R/W) Comparator Register 10 */ + uint32_t RESERVED21[1U]; + __IOM uint32_t FUNCTION10; /*!< Offset: 0x0C8 (R/W) Function Register 10 */ + uint32_t RESERVED22[1U]; + __IOM uint32_t COMP11; /*!< Offset: 0x0D0 (R/W) Comparator Register 11 */ + uint32_t RESERVED23[1U]; + __IOM uint32_t FUNCTION11; /*!< Offset: 0x0D8 (R/W) Function Register 11 */ + uint32_t RESERVED24[1U]; + __IOM uint32_t COMP12; /*!< Offset: 0x0E0 (R/W) Comparator Register 12 */ + uint32_t RESERVED25[1U]; + __IOM uint32_t FUNCTION12; /*!< Offset: 0x0E8 (R/W) Function Register 12 */ + uint32_t RESERVED26[1U]; + __IOM uint32_t COMP13; /*!< Offset: 0x0F0 (R/W) Comparator Register 13 */ + uint32_t RESERVED27[1U]; + __IOM uint32_t FUNCTION13; /*!< Offset: 0x0F8 (R/W) Function Register 13 */ + uint32_t RESERVED28[1U]; + __IOM uint32_t COMP14; /*!< Offset: 0x100 (R/W) Comparator Register 14 */ + uint32_t RESERVED29[1U]; + __IOM uint32_t FUNCTION14; /*!< Offset: 0x108 (R/W) Function Register 14 */ + uint32_t RESERVED30[1U]; + __IOM uint32_t COMP15; /*!< Offset: 0x110 (R/W) Comparator Register 15 */ + uint32_t RESERVED31[1U]; + __IOM uint32_t FUNCTION15; /*!< Offset: 0x118 (R/W) Function Register 15 */ + uint32_t RESERVED32[934U]; + __IM uint32_t LSR; /*!< Offset: 0xFB4 (R ) Lock Status Register */ + uint32_t RESERVED33[1U]; + __IM uint32_t DEVARCH; /*!< Offset: 0xFBC (R/ ) Device Architecture Register */ +} DWT_Type; + +/* DWT Control Register Definitions */ +#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ +#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ + +#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ +#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ + +#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ +#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ + +#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ +#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ + +#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ +#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ + +#define DWT_CTRL_CYCDISS_Pos 23U /*!< DWT CTRL: CYCDISS Position */ +#define DWT_CTRL_CYCDISS_Msk (0x1UL << DWT_CTRL_CYCDISS_Pos) /*!< DWT CTRL: CYCDISS Mask */ + +#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ +#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ + +#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ +#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ + +#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ +#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ + +#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ +#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ + +#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ +#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ + +#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ +#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ + +#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ +#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ + +#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ +#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ + +#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ +#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ + +#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ +#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ + +#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ +#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ + +#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ +#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ + +#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ +#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ + +/* DWT CPI Count Register Definitions */ +#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ +#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ + +/* DWT Exception Overhead Count Register Definitions */ +#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ +#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ + +/* DWT Sleep Count Register Definitions */ +#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ +#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ + +/* DWT LSU Count Register Definitions */ +#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ +#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ + +/* DWT Folded-instruction Count Register Definitions */ +#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ +#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ + +/* DWT Comparator Function Register Definitions */ +#define DWT_FUNCTION_ID_Pos 27U /*!< DWT FUNCTION: ID Position */ +#define DWT_FUNCTION_ID_Msk (0x1FUL << DWT_FUNCTION_ID_Pos) /*!< DWT FUNCTION: ID Mask */ + +#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ +#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ + +#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ +#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ + +#define DWT_FUNCTION_ACTION_Pos 4U /*!< DWT FUNCTION: ACTION Position */ +#define DWT_FUNCTION_ACTION_Msk (0x1UL << DWT_FUNCTION_ACTION_Pos) /*!< DWT FUNCTION: ACTION Mask */ + +#define DWT_FUNCTION_MATCH_Pos 0U /*!< DWT FUNCTION: MATCH Position */ +#define DWT_FUNCTION_MATCH_Msk (0xFUL /*<< DWT_FUNCTION_MATCH_Pos*/) /*!< DWT FUNCTION: MATCH Mask */ + +/*@}*/ /* end of group CMSIS_DWT */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_TPI Trace Port Interface (TPI) + \brief Type definitions for the Trace Port Interface (TPI) + @{ + */ + +/** + \brief Structure type to access the Trace Port Interface Register (TPI). + */ +typedef struct +{ + __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ + __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ + uint32_t RESERVED0[2U]; + __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ + uint32_t RESERVED1[55U]; + __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ + uint32_t RESERVED2[131U]; + __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ + __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ + __IOM uint32_t PSCR; /*!< Offset: 0x308 (R/W) Periodic Synchronization Control Register */ + uint32_t RESERVED3[759U]; + __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ + __IM uint32_t ITFTTD0; /*!< Offset: 0xEEC (R/ ) Integration Test FIFO Test Data 0 Register */ + __IOM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/W) Integration Test ATB Control Register 2 */ + uint32_t RESERVED4[1U]; + __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) Integration Test ATB Control Register 0 */ + __IM uint32_t ITFTTD1; /*!< Offset: 0xEFC (R/ ) Integration Test FIFO Test Data 1 Register */ + __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ + uint32_t RESERVED5[39U]; + __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ + __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ + uint32_t RESERVED7[8U]; + __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) Device Configuration Register */ + __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) Device Type Identifier Register */ +} TPI_Type; + +/* TPI Asynchronous Clock Prescaler Register Definitions */ +#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ +#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ + +/* TPI Selected Pin Protocol Register Definitions */ +#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ +#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ + +/* TPI Formatter and Flush Status Register Definitions */ +#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ +#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ + +#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ +#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ + +#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ +#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ + +#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ +#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ + +/* TPI Formatter and Flush Control Register Definitions */ +#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ +#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ + +#define TPI_FFCR_FOnMan_Pos 6U /*!< TPI FFCR: FOnMan Position */ +#define TPI_FFCR_FOnMan_Msk (0x1UL << TPI_FFCR_FOnMan_Pos) /*!< TPI FFCR: FOnMan Mask */ + +#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ +#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ + +/* TPI TRIGGER Register Definitions */ +#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ +#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ + +/* TPI Integration Test FIFO Test Data 0 Register Definitions */ +#define TPI_ITFTTD0_ATB_IF2_ATVALID_Pos 29U /*!< TPI ITFTTD0: ATB Interface 2 ATVALIDPosition */ +#define TPI_ITFTTD0_ATB_IF2_ATVALID_Msk (0x3UL << TPI_ITFTTD0_ATB_IF2_ATVALID_Pos) /*!< TPI ITFTTD0: ATB Interface 2 ATVALID Mask */ + +#define TPI_ITFTTD0_ATB_IF2_bytecount_Pos 27U /*!< TPI ITFTTD0: ATB Interface 2 byte count Position */ +#define TPI_ITFTTD0_ATB_IF2_bytecount_Msk (0x3UL << TPI_ITFTTD0_ATB_IF2_bytecount_Pos) /*!< TPI ITFTTD0: ATB Interface 2 byte count Mask */ + +#define TPI_ITFTTD0_ATB_IF1_ATVALID_Pos 26U /*!< TPI ITFTTD0: ATB Interface 1 ATVALID Position */ +#define TPI_ITFTTD0_ATB_IF1_ATVALID_Msk (0x3UL << TPI_ITFTTD0_ATB_IF1_ATVALID_Pos) /*!< TPI ITFTTD0: ATB Interface 1 ATVALID Mask */ + +#define TPI_ITFTTD0_ATB_IF1_bytecount_Pos 24U /*!< TPI ITFTTD0: ATB Interface 1 byte count Position */ +#define TPI_ITFTTD0_ATB_IF1_bytecount_Msk (0x3UL << TPI_ITFTTD0_ATB_IF1_bytecount_Pos) /*!< TPI ITFTTD0: ATB Interface 1 byte countt Mask */ + +#define TPI_ITFTTD0_ATB_IF1_data2_Pos 16U /*!< TPI ITFTTD0: ATB Interface 1 data2 Position */ +#define TPI_ITFTTD0_ATB_IF1_data2_Msk (0xFFUL << TPI_ITFTTD0_ATB_IF1_data1_Pos) /*!< TPI ITFTTD0: ATB Interface 1 data2 Mask */ + +#define TPI_ITFTTD0_ATB_IF1_data1_Pos 8U /*!< TPI ITFTTD0: ATB Interface 1 data1 Position */ +#define TPI_ITFTTD0_ATB_IF1_data1_Msk (0xFFUL << TPI_ITFTTD0_ATB_IF1_data1_Pos) /*!< TPI ITFTTD0: ATB Interface 1 data1 Mask */ + +#define TPI_ITFTTD0_ATB_IF1_data0_Pos 0U /*!< TPI ITFTTD0: ATB Interface 1 data0 Position */ +#define TPI_ITFTTD0_ATB_IF1_data0_Msk (0xFFUL /*<< TPI_ITFTTD0_ATB_IF1_data0_Pos*/) /*!< TPI ITFTTD0: ATB Interface 1 data0 Mask */ + +/* TPI Integration Test ATB Control Register 2 Register Definitions */ +#define TPI_ITATBCTR2_AFVALID2S_Pos 1U /*!< TPI ITATBCTR2: AFVALID2S Position */ +#define TPI_ITATBCTR2_AFVALID2S_Msk (0x1UL << TPI_ITATBCTR2_AFVALID2S_Pos) /*!< TPI ITATBCTR2: AFVALID2SS Mask */ + +#define TPI_ITATBCTR2_AFVALID1S_Pos 1U /*!< TPI ITATBCTR2: AFVALID1S Position */ +#define TPI_ITATBCTR2_AFVALID1S_Msk (0x1UL << TPI_ITATBCTR2_AFVALID1S_Pos) /*!< TPI ITATBCTR2: AFVALID1SS Mask */ + +#define TPI_ITATBCTR2_ATREADY2S_Pos 0U /*!< TPI ITATBCTR2: ATREADY2S Position */ +#define TPI_ITATBCTR2_ATREADY2S_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2S_Pos*/) /*!< TPI ITATBCTR2: ATREADY2S Mask */ + +#define TPI_ITATBCTR2_ATREADY1S_Pos 0U /*!< TPI ITATBCTR2: ATREADY1S Position */ +#define TPI_ITATBCTR2_ATREADY1S_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1S_Pos*/) /*!< TPI ITATBCTR2: ATREADY1S Mask */ + +/* TPI Integration Test FIFO Test Data 1 Register Definitions */ +#define TPI_ITFTTD1_ATB_IF2_ATVALID_Pos 29U /*!< TPI ITFTTD1: ATB Interface 2 ATVALID Position */ +#define TPI_ITFTTD1_ATB_IF2_ATVALID_Msk (0x3UL << TPI_ITFTTD1_ATB_IF2_ATVALID_Pos) /*!< TPI ITFTTD1: ATB Interface 2 ATVALID Mask */ + +#define TPI_ITFTTD1_ATB_IF2_bytecount_Pos 27U /*!< TPI ITFTTD1: ATB Interface 2 byte count Position */ +#define TPI_ITFTTD1_ATB_IF2_bytecount_Msk (0x3UL << TPI_ITFTTD1_ATB_IF2_bytecount_Pos) /*!< TPI ITFTTD1: ATB Interface 2 byte count Mask */ + +#define TPI_ITFTTD1_ATB_IF1_ATVALID_Pos 26U /*!< TPI ITFTTD1: ATB Interface 1 ATVALID Position */ +#define TPI_ITFTTD1_ATB_IF1_ATVALID_Msk (0x3UL << TPI_ITFTTD1_ATB_IF1_ATVALID_Pos) /*!< TPI ITFTTD1: ATB Interface 1 ATVALID Mask */ + +#define TPI_ITFTTD1_ATB_IF1_bytecount_Pos 24U /*!< TPI ITFTTD1: ATB Interface 1 byte count Position */ +#define TPI_ITFTTD1_ATB_IF1_bytecount_Msk (0x3UL << TPI_ITFTTD1_ATB_IF1_bytecount_Pos) /*!< TPI ITFTTD1: ATB Interface 1 byte countt Mask */ + +#define TPI_ITFTTD1_ATB_IF2_data2_Pos 16U /*!< TPI ITFTTD1: ATB Interface 2 data2 Position */ +#define TPI_ITFTTD1_ATB_IF2_data2_Msk (0xFFUL << TPI_ITFTTD1_ATB_IF2_data1_Pos) /*!< TPI ITFTTD1: ATB Interface 2 data2 Mask */ + +#define TPI_ITFTTD1_ATB_IF2_data1_Pos 8U /*!< TPI ITFTTD1: ATB Interface 2 data1 Position */ +#define TPI_ITFTTD1_ATB_IF2_data1_Msk (0xFFUL << TPI_ITFTTD1_ATB_IF2_data1_Pos) /*!< TPI ITFTTD1: ATB Interface 2 data1 Mask */ + +#define TPI_ITFTTD1_ATB_IF2_data0_Pos 0U /*!< TPI ITFTTD1: ATB Interface 2 data0 Position */ +#define TPI_ITFTTD1_ATB_IF2_data0_Msk (0xFFUL /*<< TPI_ITFTTD1_ATB_IF2_data0_Pos*/) /*!< TPI ITFTTD1: ATB Interface 2 data0 Mask */ + +/* TPI Integration Test ATB Control Register 0 Definitions */ +#define TPI_ITATBCTR0_AFVALID2S_Pos 1U /*!< TPI ITATBCTR0: AFVALID2S Position */ +#define TPI_ITATBCTR0_AFVALID2S_Msk (0x1UL << TPI_ITATBCTR0_AFVALID2S_Pos) /*!< TPI ITATBCTR0: AFVALID2SS Mask */ + +#define TPI_ITATBCTR0_AFVALID1S_Pos 1U /*!< TPI ITATBCTR0: AFVALID1S Position */ +#define TPI_ITATBCTR0_AFVALID1S_Msk (0x1UL << TPI_ITATBCTR0_AFVALID1S_Pos) /*!< TPI ITATBCTR0: AFVALID1SS Mask */ + +#define TPI_ITATBCTR0_ATREADY2S_Pos 0U /*!< TPI ITATBCTR0: ATREADY2S Position */ +#define TPI_ITATBCTR0_ATREADY2S_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2S_Pos*/) /*!< TPI ITATBCTR0: ATREADY2S Mask */ + +#define TPI_ITATBCTR0_ATREADY1S_Pos 0U /*!< TPI ITATBCTR0: ATREADY1S Position */ +#define TPI_ITATBCTR0_ATREADY1S_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1S_Pos*/) /*!< TPI ITATBCTR0: ATREADY1S Mask */ + +/* TPI Integration Mode Control Register Definitions */ +#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ +#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ + +/* TPI DEVID Register Definitions */ +#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ +#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ + +#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ +#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ + +#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ +#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ + +#define TPI_DEVID_FIFOSZ_Pos 6U /*!< TPI DEVID: FIFOSZ Position */ +#define TPI_DEVID_FIFOSZ_Msk (0x7UL << TPI_DEVID_FIFOSZ_Pos) /*!< TPI DEVID: FIFOSZ Mask */ + +#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ +#define TPI_DEVID_NrTraceInput_Msk (0x3FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ + +/* TPI DEVTYPE Register Definitions */ +#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ +#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ + +#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ +#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ + +/*@}*/ /* end of group CMSIS_TPI */ + + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_MPU Memory Protection Unit (MPU) + \brief Type definitions for the Memory Protection Unit (MPU) + @{ + */ + +/** + \brief Structure type to access the Memory Protection Unit (MPU). + */ +typedef struct +{ + __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ + __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region Number Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ + __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) MPU Region Limit Address Register */ + __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Region Base Address Register Alias 1 */ + __IOM uint32_t RLAR_A1; /*!< Offset: 0x018 (R/W) MPU Region Limit Address Register Alias 1 */ + __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Region Base Address Register Alias 2 */ + __IOM uint32_t RLAR_A2; /*!< Offset: 0x020 (R/W) MPU Region Limit Address Register Alias 2 */ + __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Region Base Address Register Alias 3 */ + __IOM uint32_t RLAR_A3; /*!< Offset: 0x028 (R/W) MPU Region Limit Address Register Alias 3 */ + uint32_t RESERVED0[1]; + union { + __IOM uint32_t MAIR[2]; + struct { + __IOM uint32_t MAIR0; /*!< Offset: 0x030 (R/W) MPU Memory Attribute Indirection Register 0 */ + __IOM uint32_t MAIR1; /*!< Offset: 0x034 (R/W) MPU Memory Attribute Indirection Register 1 */ + }; + }; +} MPU_Type; + +#define MPU_TYPE_RALIASES 4U + +/* MPU Type Register Definitions */ +#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ +#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ + +#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ +#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ + +#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ +#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ + +/* MPU Control Register Definitions */ +#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ +#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ + +#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ +#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ + +#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ +#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ + +/* MPU Region Number Register Definitions */ +#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ +#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ + +/* MPU Region Base Address Register Definitions */ +#define MPU_RBAR_BASE_Pos 5U /*!< MPU RBAR: BASE Position */ +#define MPU_RBAR_BASE_Msk (0x7FFFFFFUL << MPU_RBAR_BASE_Pos) /*!< MPU RBAR: BASE Mask */ + +#define MPU_RBAR_SH_Pos 3U /*!< MPU RBAR: SH Position */ +#define MPU_RBAR_SH_Msk (0x3UL << MPU_RBAR_SH_Pos) /*!< MPU RBAR: SH Mask */ + +#define MPU_RBAR_AP_Pos 1U /*!< MPU RBAR: AP Position */ +#define MPU_RBAR_AP_Msk (0x3UL << MPU_RBAR_AP_Pos) /*!< MPU RBAR: AP Mask */ + +#define MPU_RBAR_XN_Pos 0U /*!< MPU RBAR: XN Position */ +#define MPU_RBAR_XN_Msk (01UL /*<< MPU_RBAR_XN_Pos*/) /*!< MPU RBAR: XN Mask */ + +/* MPU Region Limit Address Register Definitions */ +#define MPU_RLAR_LIMIT_Pos 5U /*!< MPU RLAR: LIMIT Position */ +#define MPU_RLAR_LIMIT_Msk (0x7FFFFFFUL << MPU_RLAR_LIMIT_Pos) /*!< MPU RLAR: LIMIT Mask */ + +#define MPU_RLAR_AttrIndx_Pos 1U /*!< MPU RLAR: AttrIndx Position */ +#define MPU_RLAR_AttrIndx_Msk (0x7UL << MPU_RLAR_AttrIndx_Pos) /*!< MPU RLAR: AttrIndx Mask */ + +#define MPU_RLAR_EN_Pos 0U /*!< MPU RLAR: Region enable bit Position */ +#define MPU_RLAR_EN_Msk (1UL /*<< MPU_RLAR_EN_Pos*/) /*!< MPU RLAR: Region enable bit Disable Mask */ + +/* MPU Memory Attribute Indirection Register 0 Definitions */ +#define MPU_MAIR0_Attr3_Pos 24U /*!< MPU MAIR0: Attr3 Position */ +#define MPU_MAIR0_Attr3_Msk (0xFFUL << MPU_MAIR0_Attr3_Pos) /*!< MPU MAIR0: Attr3 Mask */ + +#define MPU_MAIR0_Attr2_Pos 16U /*!< MPU MAIR0: Attr2 Position */ +#define MPU_MAIR0_Attr2_Msk (0xFFUL << MPU_MAIR0_Attr2_Pos) /*!< MPU MAIR0: Attr2 Mask */ + +#define MPU_MAIR0_Attr1_Pos 8U /*!< MPU MAIR0: Attr1 Position */ +#define MPU_MAIR0_Attr1_Msk (0xFFUL << MPU_MAIR0_Attr1_Pos) /*!< MPU MAIR0: Attr1 Mask */ + +#define MPU_MAIR0_Attr0_Pos 0U /*!< MPU MAIR0: Attr0 Position */ +#define MPU_MAIR0_Attr0_Msk (0xFFUL /*<< MPU_MAIR0_Attr0_Pos*/) /*!< MPU MAIR0: Attr0 Mask */ + +/* MPU Memory Attribute Indirection Register 1 Definitions */ +#define MPU_MAIR1_Attr7_Pos 24U /*!< MPU MAIR1: Attr7 Position */ +#define MPU_MAIR1_Attr7_Msk (0xFFUL << MPU_MAIR1_Attr7_Pos) /*!< MPU MAIR1: Attr7 Mask */ + +#define MPU_MAIR1_Attr6_Pos 16U /*!< MPU MAIR1: Attr6 Position */ +#define MPU_MAIR1_Attr6_Msk (0xFFUL << MPU_MAIR1_Attr6_Pos) /*!< MPU MAIR1: Attr6 Mask */ + +#define MPU_MAIR1_Attr5_Pos 8U /*!< MPU MAIR1: Attr5 Position */ +#define MPU_MAIR1_Attr5_Msk (0xFFUL << MPU_MAIR1_Attr5_Pos) /*!< MPU MAIR1: Attr5 Mask */ + +#define MPU_MAIR1_Attr4_Pos 0U /*!< MPU MAIR1: Attr4 Position */ +#define MPU_MAIR1_Attr4_Msk (0xFFUL /*<< MPU_MAIR1_Attr4_Pos*/) /*!< MPU MAIR1: Attr4 Mask */ + +/*@} end of group CMSIS_MPU */ +#endif + + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SAU Security Attribution Unit (SAU) + \brief Type definitions for the Security Attribution Unit (SAU) + @{ + */ + +/** + \brief Structure type to access the Security Attribution Unit (SAU). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SAU Control Register */ + __IM uint32_t TYPE; /*!< Offset: 0x004 (R/ ) SAU Type Register */ +#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) SAU Region Number Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) SAU Region Base Address Register */ + __IOM uint32_t RLAR; /*!< Offset: 0x010 (R/W) SAU Region Limit Address Register */ +#else + uint32_t RESERVED0[3]; +#endif + __IOM uint32_t SFSR; /*!< Offset: 0x014 (R/W) Secure Fault Status Register */ + __IOM uint32_t SFAR; /*!< Offset: 0x018 (R/W) Secure Fault Address Register */ +} SAU_Type; + +/* SAU Control Register Definitions */ +#define SAU_CTRL_ALLNS_Pos 1U /*!< SAU CTRL: ALLNS Position */ +#define SAU_CTRL_ALLNS_Msk (1UL << SAU_CTRL_ALLNS_Pos) /*!< SAU CTRL: ALLNS Mask */ + +#define SAU_CTRL_ENABLE_Pos 0U /*!< SAU CTRL: ENABLE Position */ +#define SAU_CTRL_ENABLE_Msk (1UL /*<< SAU_CTRL_ENABLE_Pos*/) /*!< SAU CTRL: ENABLE Mask */ + +/* SAU Type Register Definitions */ +#define SAU_TYPE_SREGION_Pos 0U /*!< SAU TYPE: SREGION Position */ +#define SAU_TYPE_SREGION_Msk (0xFFUL /*<< SAU_TYPE_SREGION_Pos*/) /*!< SAU TYPE: SREGION Mask */ + +#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) +/* SAU Region Number Register Definitions */ +#define SAU_RNR_REGION_Pos 0U /*!< SAU RNR: REGION Position */ +#define SAU_RNR_REGION_Msk (0xFFUL /*<< SAU_RNR_REGION_Pos*/) /*!< SAU RNR: REGION Mask */ + +/* SAU Region Base Address Register Definitions */ +#define SAU_RBAR_BADDR_Pos 5U /*!< SAU RBAR: BADDR Position */ +#define SAU_RBAR_BADDR_Msk (0x7FFFFFFUL << SAU_RBAR_BADDR_Pos) /*!< SAU RBAR: BADDR Mask */ + +/* SAU Region Limit Address Register Definitions */ +#define SAU_RLAR_LADDR_Pos 5U /*!< SAU RLAR: LADDR Position */ +#define SAU_RLAR_LADDR_Msk (0x7FFFFFFUL << SAU_RLAR_LADDR_Pos) /*!< SAU RLAR: LADDR Mask */ + +#define SAU_RLAR_NSC_Pos 1U /*!< SAU RLAR: NSC Position */ +#define SAU_RLAR_NSC_Msk (1UL << SAU_RLAR_NSC_Pos) /*!< SAU RLAR: NSC Mask */ + +#define SAU_RLAR_ENABLE_Pos 0U /*!< SAU RLAR: ENABLE Position */ +#define SAU_RLAR_ENABLE_Msk (1UL /*<< SAU_RLAR_ENABLE_Pos*/) /*!< SAU RLAR: ENABLE Mask */ + +#endif /* defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) */ + +/* Secure Fault Status Register Definitions */ +#define SAU_SFSR_LSERR_Pos 7U /*!< SAU SFSR: LSERR Position */ +#define SAU_SFSR_LSERR_Msk (1UL << SAU_SFSR_LSERR_Pos) /*!< SAU SFSR: LSERR Mask */ + +#define SAU_SFSR_SFARVALID_Pos 6U /*!< SAU SFSR: SFARVALID Position */ +#define SAU_SFSR_SFARVALID_Msk (1UL << SAU_SFSR_SFARVALID_Pos) /*!< SAU SFSR: SFARVALID Mask */ + +#define SAU_SFSR_LSPERR_Pos 5U /*!< SAU SFSR: LSPERR Position */ +#define SAU_SFSR_LSPERR_Msk (1UL << SAU_SFSR_LSPERR_Pos) /*!< SAU SFSR: LSPERR Mask */ + +#define SAU_SFSR_INVTRAN_Pos 4U /*!< SAU SFSR: INVTRAN Position */ +#define SAU_SFSR_INVTRAN_Msk (1UL << SAU_SFSR_INVTRAN_Pos) /*!< SAU SFSR: INVTRAN Mask */ + +#define SAU_SFSR_AUVIOL_Pos 3U /*!< SAU SFSR: AUVIOL Position */ +#define SAU_SFSR_AUVIOL_Msk (1UL << SAU_SFSR_AUVIOL_Pos) /*!< SAU SFSR: AUVIOL Mask */ + +#define SAU_SFSR_INVER_Pos 2U /*!< SAU SFSR: INVER Position */ +#define SAU_SFSR_INVER_Msk (1UL << SAU_SFSR_INVER_Pos) /*!< SAU SFSR: INVER Mask */ + +#define SAU_SFSR_INVIS_Pos 1U /*!< SAU SFSR: INVIS Position */ +#define SAU_SFSR_INVIS_Msk (1UL << SAU_SFSR_INVIS_Pos) /*!< SAU SFSR: INVIS Mask */ + +#define SAU_SFSR_INVEP_Pos 0U /*!< SAU SFSR: INVEP Position */ +#define SAU_SFSR_INVEP_Msk (1UL /*<< SAU_SFSR_INVEP_Pos*/) /*!< SAU SFSR: INVEP Mask */ + +/*@} end of group CMSIS_SAU */ +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_FPU Floating Point Unit (FPU) + \brief Type definitions for the Floating Point Unit (FPU) + @{ + */ + +/** + \brief Structure type to access the Floating Point Unit (FPU). + */ +typedef struct +{ + uint32_t RESERVED0[1U]; + __IOM uint32_t FPCCR; /*!< Offset: 0x004 (R/W) Floating-Point Context Control Register */ + __IOM uint32_t FPCAR; /*!< Offset: 0x008 (R/W) Floating-Point Context Address Register */ + __IOM uint32_t FPDSCR; /*!< Offset: 0x00C (R/W) Floating-Point Default Status Control Register */ + __IM uint32_t MVFR0; /*!< Offset: 0x010 (R/ ) Media and FP Feature Register 0 */ + __IM uint32_t MVFR1; /*!< Offset: 0x014 (R/ ) Media and FP Feature Register 1 */ +} FPU_Type; + +/* Floating-Point Context Control Register Definitions */ +#define FPU_FPCCR_ASPEN_Pos 31U /*!< FPCCR: ASPEN bit Position */ +#define FPU_FPCCR_ASPEN_Msk (1UL << FPU_FPCCR_ASPEN_Pos) /*!< FPCCR: ASPEN bit Mask */ + +#define FPU_FPCCR_LSPEN_Pos 30U /*!< FPCCR: LSPEN Position */ +#define FPU_FPCCR_LSPEN_Msk (1UL << FPU_FPCCR_LSPEN_Pos) /*!< FPCCR: LSPEN bit Mask */ + +#define FPU_FPCCR_LSPENS_Pos 29U /*!< FPCCR: LSPENS Position */ +#define FPU_FPCCR_LSPENS_Msk (1UL << FPU_FPCCR_LSPENS_Pos) /*!< FPCCR: LSPENS bit Mask */ + +#define FPU_FPCCR_CLRONRET_Pos 28U /*!< FPCCR: CLRONRET Position */ +#define FPU_FPCCR_CLRONRET_Msk (1UL << FPU_FPCCR_CLRONRET_Pos) /*!< FPCCR: CLRONRET bit Mask */ + +#define FPU_FPCCR_CLRONRETS_Pos 27U /*!< FPCCR: CLRONRETS Position */ +#define FPU_FPCCR_CLRONRETS_Msk (1UL << FPU_FPCCR_CLRONRETS_Pos) /*!< FPCCR: CLRONRETS bit Mask */ + +#define FPU_FPCCR_TS_Pos 26U /*!< FPCCR: TS Position */ +#define FPU_FPCCR_TS_Msk (1UL << FPU_FPCCR_TS_Pos) /*!< FPCCR: TS bit Mask */ + +#define FPU_FPCCR_UFRDY_Pos 10U /*!< FPCCR: UFRDY Position */ +#define FPU_FPCCR_UFRDY_Msk (1UL << FPU_FPCCR_UFRDY_Pos) /*!< FPCCR: UFRDY bit Mask */ + +#define FPU_FPCCR_SPLIMVIOL_Pos 9U /*!< FPCCR: SPLIMVIOL Position */ +#define FPU_FPCCR_SPLIMVIOL_Msk (1UL << FPU_FPCCR_SPLIMVIOL_Pos) /*!< FPCCR: SPLIMVIOL bit Mask */ + +#define FPU_FPCCR_MONRDY_Pos 8U /*!< FPCCR: MONRDY Position */ +#define FPU_FPCCR_MONRDY_Msk (1UL << FPU_FPCCR_MONRDY_Pos) /*!< FPCCR: MONRDY bit Mask */ + +#define FPU_FPCCR_SFRDY_Pos 7U /*!< FPCCR: SFRDY Position */ +#define FPU_FPCCR_SFRDY_Msk (1UL << FPU_FPCCR_SFRDY_Pos) /*!< FPCCR: SFRDY bit Mask */ + +#define FPU_FPCCR_BFRDY_Pos 6U /*!< FPCCR: BFRDY Position */ +#define FPU_FPCCR_BFRDY_Msk (1UL << FPU_FPCCR_BFRDY_Pos) /*!< FPCCR: BFRDY bit Mask */ + +#define FPU_FPCCR_MMRDY_Pos 5U /*!< FPCCR: MMRDY Position */ +#define FPU_FPCCR_MMRDY_Msk (1UL << FPU_FPCCR_MMRDY_Pos) /*!< FPCCR: MMRDY bit Mask */ + +#define FPU_FPCCR_HFRDY_Pos 4U /*!< FPCCR: HFRDY Position */ +#define FPU_FPCCR_HFRDY_Msk (1UL << FPU_FPCCR_HFRDY_Pos) /*!< FPCCR: HFRDY bit Mask */ + +#define FPU_FPCCR_THREAD_Pos 3U /*!< FPCCR: processor mode bit Position */ +#define FPU_FPCCR_THREAD_Msk (1UL << FPU_FPCCR_THREAD_Pos) /*!< FPCCR: processor mode active bit Mask */ + +#define FPU_FPCCR_S_Pos 2U /*!< FPCCR: Security status of the FP context bit Position */ +#define FPU_FPCCR_S_Msk (1UL << FPU_FPCCR_S_Pos) /*!< FPCCR: Security status of the FP context bit Mask */ + +#define FPU_FPCCR_USER_Pos 1U /*!< FPCCR: privilege level bit Position */ +#define FPU_FPCCR_USER_Msk (1UL << FPU_FPCCR_USER_Pos) /*!< FPCCR: privilege level bit Mask */ + +#define FPU_FPCCR_LSPACT_Pos 0U /*!< FPCCR: Lazy state preservation active bit Position */ +#define FPU_FPCCR_LSPACT_Msk (1UL /*<< FPU_FPCCR_LSPACT_Pos*/) /*!< FPCCR: Lazy state preservation active bit Mask */ + +/* Floating-Point Context Address Register Definitions */ +#define FPU_FPCAR_ADDRESS_Pos 3U /*!< FPCAR: ADDRESS bit Position */ +#define FPU_FPCAR_ADDRESS_Msk (0x1FFFFFFFUL << FPU_FPCAR_ADDRESS_Pos) /*!< FPCAR: ADDRESS bit Mask */ + +/* Floating-Point Default Status Control Register Definitions */ +#define FPU_FPDSCR_AHP_Pos 26U /*!< FPDSCR: AHP bit Position */ +#define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos) /*!< FPDSCR: AHP bit Mask */ + +#define FPU_FPDSCR_DN_Pos 25U /*!< FPDSCR: DN bit Position */ +#define FPU_FPDSCR_DN_Msk (1UL << FPU_FPDSCR_DN_Pos) /*!< FPDSCR: DN bit Mask */ + +#define FPU_FPDSCR_FZ_Pos 24U /*!< FPDSCR: FZ bit Position */ +#define FPU_FPDSCR_FZ_Msk (1UL << FPU_FPDSCR_FZ_Pos) /*!< FPDSCR: FZ bit Mask */ + +#define FPU_FPDSCR_RMode_Pos 22U /*!< FPDSCR: RMode bit Position */ +#define FPU_FPDSCR_RMode_Msk (3UL << FPU_FPDSCR_RMode_Pos) /*!< FPDSCR: RMode bit Mask */ + +/* Media and FP Feature Register 0 Definitions */ +#define FPU_MVFR0_FP_rounding_modes_Pos 28U /*!< MVFR0: FP rounding modes bits Position */ +#define FPU_MVFR0_FP_rounding_modes_Msk (0xFUL << FPU_MVFR0_FP_rounding_modes_Pos) /*!< MVFR0: FP rounding modes bits Mask */ + +#define FPU_MVFR0_Short_vectors_Pos 24U /*!< MVFR0: Short vectors bits Position */ +#define FPU_MVFR0_Short_vectors_Msk (0xFUL << FPU_MVFR0_Short_vectors_Pos) /*!< MVFR0: Short vectors bits Mask */ + +#define FPU_MVFR0_Square_root_Pos 20U /*!< MVFR0: Square root bits Position */ +#define FPU_MVFR0_Square_root_Msk (0xFUL << FPU_MVFR0_Square_root_Pos) /*!< MVFR0: Square root bits Mask */ + +#define FPU_MVFR0_Divide_Pos 16U /*!< MVFR0: Divide bits Position */ +#define FPU_MVFR0_Divide_Msk (0xFUL << FPU_MVFR0_Divide_Pos) /*!< MVFR0: Divide bits Mask */ + +#define FPU_MVFR0_FP_excep_trapping_Pos 12U /*!< MVFR0: FP exception trapping bits Position */ +#define FPU_MVFR0_FP_excep_trapping_Msk (0xFUL << FPU_MVFR0_FP_excep_trapping_Pos) /*!< MVFR0: FP exception trapping bits Mask */ + +#define FPU_MVFR0_Double_precision_Pos 8U /*!< MVFR0: Double-precision bits Position */ +#define FPU_MVFR0_Double_precision_Msk (0xFUL << FPU_MVFR0_Double_precision_Pos) /*!< MVFR0: Double-precision bits Mask */ + +#define FPU_MVFR0_Single_precision_Pos 4U /*!< MVFR0: Single-precision bits Position */ +#define FPU_MVFR0_Single_precision_Msk (0xFUL << FPU_MVFR0_Single_precision_Pos) /*!< MVFR0: Single-precision bits Mask */ + +#define FPU_MVFR0_A_SIMD_registers_Pos 0U /*!< MVFR0: A_SIMD registers bits Position */ +#define FPU_MVFR0_A_SIMD_registers_Msk (0xFUL /*<< FPU_MVFR0_A_SIMD_registers_Pos*/) /*!< MVFR0: A_SIMD registers bits Mask */ + +/* Media and FP Feature Register 1 Definitions */ +#define FPU_MVFR1_FP_fused_MAC_Pos 28U /*!< MVFR1: FP fused MAC bits Position */ +#define FPU_MVFR1_FP_fused_MAC_Msk (0xFUL << FPU_MVFR1_FP_fused_MAC_Pos) /*!< MVFR1: FP fused MAC bits Mask */ + +#define FPU_MVFR1_FP_HPFP_Pos 24U /*!< MVFR1: FP HPFP bits Position */ +#define FPU_MVFR1_FP_HPFP_Msk (0xFUL << FPU_MVFR1_FP_HPFP_Pos) /*!< MVFR1: FP HPFP bits Mask */ + +#define FPU_MVFR1_D_NaN_mode_Pos 4U /*!< MVFR1: D_NaN mode bits Position */ +#define FPU_MVFR1_D_NaN_mode_Msk (0xFUL << FPU_MVFR1_D_NaN_mode_Pos) /*!< MVFR1: D_NaN mode bits Mask */ + +#define FPU_MVFR1_FtZ_mode_Pos 0U /*!< MVFR1: FtZ mode bits Position */ +#define FPU_MVFR1_FtZ_mode_Msk (0xFUL /*<< FPU_MVFR1_FtZ_mode_Pos*/) /*!< MVFR1: FtZ mode bits Mask */ + +/*@} end of group CMSIS_FPU */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief Type definitions for the Core Debug Registers + @{ + */ + +/** + \brief Structure type to access the Core Debug Register (CoreDebug). + */ +typedef struct +{ + __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ + __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ + __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ + __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ + uint32_t RESERVED4[1U]; + __IOM uint32_t DAUTHCTRL; /*!< Offset: 0x014 (R/W) Debug Authentication Control Register */ + __IOM uint32_t DSCSR; /*!< Offset: 0x018 (R/W) Debug Security Control and Status Register */ +} CoreDebug_Type; + +/* Debug Halting Control and Status Register Definitions */ +#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ +#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ + +#define CoreDebug_DHCSR_S_RESTART_ST_Pos 26U /*!< CoreDebug DHCSR: S_RESTART_ST Position */ +#define CoreDebug_DHCSR_S_RESTART_ST_Msk (1UL << CoreDebug_DHCSR_S_RESTART_ST_Pos) /*!< CoreDebug DHCSR: S_RESTART_ST Mask */ + +#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ +#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ + +#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ +#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ + +#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ +#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ + +#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ +#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ + +#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ +#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ + +#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ +#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ + +#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ +#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ + +#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ +#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ + +#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ +#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ + +#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ +#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ + +#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ +#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ + +/* Debug Core Register Selector Register Definitions */ +#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ +#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ + +#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ +#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ + +/* Debug Exception and Monitor Control Register Definitions */ +#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ +#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ + +#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ +#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ + +#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ +#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ + +#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ +#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ + +#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ +#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ + +#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ +#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ + +#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ +#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ + +#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ +#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ + +#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ +#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ + +#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ +#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ + +#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ +#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ + +#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ +#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ + +#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ +#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ + +/* Debug Authentication Control Register Definitions */ +#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos 3U /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Position */ +#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPNIDEN, Mask */ + +#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos 2U /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Position */ +#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Msk (1UL << CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos) /*!< CoreDebug DAUTHCTRL: SPNIDENSEL Mask */ + +#define CoreDebug_DAUTHCTRL_INTSPIDEN_Pos 1U /*!< CoreDebug DAUTHCTRL: INTSPIDEN Position */ +#define CoreDebug_DAUTHCTRL_INTSPIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPIDEN_Pos) /*!< CoreDebug DAUTHCTRL: INTSPIDEN Mask */ + +#define CoreDebug_DAUTHCTRL_SPIDENSEL_Pos 0U /*!< CoreDebug DAUTHCTRL: SPIDENSEL Position */ +#define CoreDebug_DAUTHCTRL_SPIDENSEL_Msk (1UL /*<< CoreDebug_DAUTHCTRL_SPIDENSEL_Pos*/) /*!< CoreDebug DAUTHCTRL: SPIDENSEL Mask */ + +/* Debug Security Control and Status Register Definitions */ +#define CoreDebug_DSCSR_CDS_Pos 16U /*!< CoreDebug DSCSR: CDS Position */ +#define CoreDebug_DSCSR_CDS_Msk (1UL << CoreDebug_DSCSR_CDS_Pos) /*!< CoreDebug DSCSR: CDS Mask */ + +#define CoreDebug_DSCSR_SBRSEL_Pos 1U /*!< CoreDebug DSCSR: SBRSEL Position */ +#define CoreDebug_DSCSR_SBRSEL_Msk (1UL << CoreDebug_DSCSR_SBRSEL_Pos) /*!< CoreDebug DSCSR: SBRSEL Mask */ + +#define CoreDebug_DSCSR_SBRSELEN_Pos 0U /*!< CoreDebug DSCSR: SBRSELEN Position */ +#define CoreDebug_DSCSR_SBRSELEN_Msk (1UL /*<< CoreDebug_DSCSR_SBRSELEN_Pos*/) /*!< CoreDebug DSCSR: SBRSELEN Mask */ + +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ + #define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ + #define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ + #define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ + #define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ + #define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ + #define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ + #define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ + #define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + + #define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ + #define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ + #define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ + #define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ + #define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ + #define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ + #define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ + #define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE ) /*!< Core Debug configuration struct */ + + #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ + #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ + #endif + + #if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + #define SAU_BASE (SCS_BASE + 0x0DD0UL) /*!< Security Attribution Unit */ + #define SAU ((SAU_Type *) SAU_BASE ) /*!< Security Attribution Unit */ + #endif + + #define FPU_BASE (SCS_BASE + 0x0F30UL) /*!< Floating Point Unit */ + #define FPU ((FPU_Type *) FPU_BASE ) /*!< Floating Point Unit */ + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + #define SCS_BASE_NS (0xE002E000UL) /*!< System Control Space Base Address (non-secure address space) */ + #define CoreDebug_BASE_NS (0xE002EDF0UL) /*!< Core Debug Base Address (non-secure address space) */ + #define SysTick_BASE_NS (SCS_BASE_NS + 0x0010UL) /*!< SysTick Base Address (non-secure address space) */ + #define NVIC_BASE_NS (SCS_BASE_NS + 0x0100UL) /*!< NVIC Base Address (non-secure address space) */ + #define SCB_BASE_NS (SCS_BASE_NS + 0x0D00UL) /*!< System Control Block Base Address (non-secure address space) */ + + #define SCnSCB_NS ((SCnSCB_Type *) SCS_BASE_NS ) /*!< System control Register not in SCB(non-secure address space) */ + #define SCB_NS ((SCB_Type *) SCB_BASE_NS ) /*!< SCB configuration struct (non-secure address space) */ + #define SysTick_NS ((SysTick_Type *) SysTick_BASE_NS ) /*!< SysTick configuration struct (non-secure address space) */ + #define NVIC_NS ((NVIC_Type *) NVIC_BASE_NS ) /*!< NVIC configuration struct (non-secure address space) */ + #define CoreDebug_NS ((CoreDebug_Type *) CoreDebug_BASE_NS) /*!< Core Debug configuration struct (non-secure address space) */ + + #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE_NS (SCS_BASE_NS + 0x0D90UL) /*!< Memory Protection Unit (non-secure address space) */ + #define MPU_NS ((MPU_Type *) MPU_BASE_NS ) /*!< Memory Protection Unit (non-secure address space) */ + #endif + + #define FPU_BASE_NS (SCS_BASE_NS + 0x0F30UL) /*!< Floating Point Unit (non-secure address space) */ + #define FPU_NS ((FPU_Type *) FPU_BASE_NS ) /*!< Floating Point Unit (non-secure address space) */ + +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Debug Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping + #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ + #define NVIC_GetActive __NVIC_GetActive + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* Special LR values for Secure/Non-Secure call handling and exception handling */ + +/* Function Return Payload (from ARMv8-M Architecture Reference Manual) LR value on entry from Secure BLXNS */ +#define FNC_RETURN (0xFEFFFFFFUL) /* bit [0] ignored when processing a branch */ + +/* The following EXC_RETURN mask values are used to evaluate the LR on exception entry */ +#define EXC_RETURN_PREFIX (0xFF000000UL) /* bits [31:24] set to indicate an EXC_RETURN value */ +#define EXC_RETURN_S (0x00000040UL) /* bit [6] stack used to push registers: 0=Non-secure 1=Secure */ +#define EXC_RETURN_DCRS (0x00000020UL) /* bit [5] stacking rules for called registers: 0=skipped 1=saved */ +#define EXC_RETURN_FTYPE (0x00000010UL) /* bit [4] allocate stack for floating-point context: 0=done 1=skipped */ +#define EXC_RETURN_MODE (0x00000008UL) /* bit [3] processor mode for return: 0=Handler mode 1=Thread mode */ +#define EXC_RETURN_SPSEL (0x00000002UL) /* bit [1] stack pointer used to restore context: 0=MSP 1=PSP */ +#define EXC_RETURN_ES (0x00000001UL) /* bit [0] security state exception was taken to: 0=Non-secure 1=Secure */ + +/* Integrity Signature (from ARMv8-M Architecture Reference Manual) for exception context stacking */ +#if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) /* Value for processors with floating-point extension: */ +#define EXC_INTEGRITY_SIGNATURE (0xFEFA125AUL) /* bit [0] SFTC must match LR bit[4] EXC_RETURN_FTYPE */ +#else +#define EXC_INTEGRITY_SIGNATURE (0xFEFA125BUL) /* Value for processors without floating-point extension */ +#endif + + +/** + \brief Set Priority Grouping + \details Sets the priority grouping field using the required unlock sequence. + The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. + Only values from 0..7 are used. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Priority grouping field. + */ +__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) +{ + uint32_t reg_value; + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + + reg_value = SCB->AIRCR; /* read old register configuration */ + reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ + reg_value = (reg_value | + ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (PriorityGroupTmp << 8U) ); /* Insert write key and priority group */ + SCB->AIRCR = reg_value; +} + + +/** + \brief Get Priority Grouping + \details Reads the priority grouping field from the NVIC Interrupt Controller. + \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). + */ +__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) +{ + return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); +} + + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt + \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief Get Interrupt Target State + \details Reads the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + \return 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_GetTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Target State + \details Sets the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_SetTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] |= ((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Clear Interrupt Target State + \details Clears the interrupt target field in the NVIC and returns the interrupt target bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 if interrupt is assigned to Secure + 1 if interrupt is assigned to Non Secure + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t NVIC_ClearTargetState(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] &= ~((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL))); + return((uint32_t)(((NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IPR[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } + else + { + SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return(((uint32_t)NVIC->IPR[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return(((uint32_t)SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Encode Priority + \details Encodes the priority for an interrupt with the given priority group, + preemptive priority value, and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Used priority group. + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + ); +} + + +/** + \brief Decode Priority + \details Decodes an interrupt priority value with a given priority group to + preemptive priority value and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. + \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). + \param [in] PriorityGroup Used priority group. + \param [out] pPreemptPriority Preemptive priority value (starting from 0). + \param [out] pSubPriority Subpriority value (starting from 0). + */ +__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); + *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); +} + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + VTOR must been relocated to SRAM before. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | + SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief Set Priority Grouping (non-secure) + \details Sets the non-secure priority grouping field when in secure state using the required unlock sequence. + The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. + Only values from 0..7 are used. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Priority grouping field. + */ +__STATIC_INLINE void TZ_NVIC_SetPriorityGrouping_NS(uint32_t PriorityGroup) +{ + uint32_t reg_value; + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + + reg_value = SCB_NS->AIRCR; /* read old register configuration */ + reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ + reg_value = (reg_value | + ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (PriorityGroupTmp << SCB_AIRCR_PRIGROUP_Pos) ); /* Insert write key and priority group */ + SCB_NS->AIRCR = reg_value; +} + + +/** + \brief Get Priority Grouping (non-secure) + \details Reads the priority grouping field from the non-secure NVIC when in secure state. + \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetPriorityGrouping_NS(void) +{ + return ((uint32_t)((SCB_NS->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); +} + + +/** + \brief Enable Interrupt (non-secure) + \details Enables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_EnableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status (non-secure) + \details Returns a device specific interrupt enable status from the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetEnableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt (non-secure) + \details Disables a device specific interrupt in the non-secure NVIC interrupt controller when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_DisableIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Pending Interrupt (non-secure) + \details Reads the NVIC pending register in the non-secure NVIC when in secure state and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt (non-secure) + \details Sets the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_SetPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt (non-secure) + \details Clears the pending bit of a device specific interrupt in the non-secure NVIC pending register when in secure state. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void TZ_NVIC_ClearPendingIRQ_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt (non-secure) + \details Reads the active register in non-secure NVIC when in secure state and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetActive_NS(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC_NS->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Priority (non-secure) + \details Sets the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every non-secure processor exception. + */ +__STATIC_INLINE void TZ_NVIC_SetPriority_NS(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC_NS->IPR[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } + else + { + SCB_NS->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } +} + + +/** + \brief Get Interrupt Priority (non-secure) + \details Reads the priority of a non-secure device specific interrupt or a non-secure processor exception when in secure state. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t TZ_NVIC_GetPriority_NS(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return(((uint32_t)NVIC_NS->IPR[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return(((uint32_t)SCB_NS->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); + } +} +#endif /* defined (__ARM_FEATURE_CMSE) &&(__ARM_FEATURE_CMSE == 3U) */ + +/*@} end of CMSIS_Core_NVICFunctions */ + +/* ########################## MPU functions #################################### */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + +#include "mpu_armv8.h" + +#endif + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + uint32_t mvfr0; + + mvfr0 = FPU->MVFR0; + if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x220U) + { + return 2U; /* Double + Single precision FPU */ + } + else if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x020U) + { + return 1U; /* Single precision FPU */ + } + else + { + return 0U; /* No FPU */ + } +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ########################## SAU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SAUFunctions SAU Functions + \brief Functions that configure the SAU. + @{ + */ + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) + +/** + \brief Enable SAU + \details Enables the Security Attribution Unit (SAU). + */ +__STATIC_INLINE void TZ_SAU_Enable(void) +{ + SAU->CTRL |= (SAU_CTRL_ENABLE_Msk); +} + + + +/** + \brief Disable SAU + \details Disables the Security Attribution Unit (SAU). + */ +__STATIC_INLINE void TZ_SAU_Disable(void) +{ + SAU->CTRL &= ~(SAU_CTRL_ENABLE_Msk); +} + +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + +/*@} end of CMSIS_Core_SAUFunctions */ + + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) +/** + \brief System Tick Configuration (non-secure) + \details Initializes the non-secure System Timer and its interrupt when in secure state, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function TZ_SysTick_Config_NS is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + + */ +__STATIC_INLINE uint32_t TZ_SysTick_Config_NS(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick_NS->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + TZ_NVIC_SetPriority_NS (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick_NS->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick_NS->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} +#endif /* defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U) */ + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + +/* ##################################### Debug In/Output function ########################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_core_DebugFunctions ITM Functions + \brief Functions that access the ITM debug interface. + @{ + */ + +extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ +#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ + + +/** + \brief ITM Send Character + \details Transmits a character via the ITM channel 0, and + \li Just returns when no debugger is connected that has booked the output. + \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. + \param [in] ch Character to transmit. + \returns Character to transmit. + */ +__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) +{ + if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ + ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ + { + while (ITM->PORT[0U].u32 == 0UL) + { + __NOP(); + } + ITM->PORT[0U].u8 = (uint8_t)ch; + } + return (ch); +} + + +/** + \brief ITM Receive Character + \details Inputs a character via the external variable \ref ITM_RxBuffer. + \return Received character. + \return -1 No character pending. + */ +__STATIC_INLINE int32_t ITM_ReceiveChar (void) +{ + int32_t ch = -1; /* no character available */ + + if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) + { + ch = ITM_RxBuffer; + ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ + } + + return (ch); +} + + +/** + \brief ITM Check Character + \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. + \return 0 No character available. + \return 1 Character available. + */ +__STATIC_INLINE int32_t ITM_CheckChar (void) +{ + + if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) + { + return (0); /* no character available */ + } + else + { + return (1); /* character available */ + } +} + +/*@} end of CMSIS_core_DebugFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM33_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/core_cm4.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm4.h similarity index 98% rename from stm32f103/Drivers/CMSIS/Include/core_cm4.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_cm4.h index 308b868..7d56873 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_cm4.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm4.h @@ -1,2129 +1,2129 @@ -/**************************************************************************//** - * @file core_cm4.h - * @brief CMSIS Cortex-M4 Core Peripheral Access Layer Header File - * @version V5.0.8 - * @date 04. June 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_CM4_H_GENERIC -#define __CORE_CM4_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup Cortex_M4 - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS CM4 definitions */ -#define __CM4_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __CM4_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __CM4_CMSIS_VERSION ((__CM4_CMSIS_VERSION_MAIN << 16U) | \ - __CM4_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_M (4U) /*!< Cortex-M Core */ - -/** __FPU_USED indicates whether an FPU is used or not. - For this, __FPU_PRESENT has to be checked prior to making use of FPU specific registers and functions. -*/ -#if defined ( __CC_ARM ) - #if defined __TARGET_FPU_VFP - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined __ARM_PCS_VFP - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #warning "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __ICCARM__ ) - #if defined __ARMVFP__ - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __TI_ARM__ ) - #if defined __TI_VFP_SUPPORT__ - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __TASKING__ ) - #if defined __FPU_VFP__ - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM4_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_CM4_H_DEPENDANT -#define __CORE_CM4_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __CM4_REV - #define __CM4_REV 0x0000U - #warning "__CM4_REV not defined in device header file; using default!" - #endif - - #ifndef __FPU_PRESENT - #define __FPU_PRESENT 0U - #warning "__FPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __MPU_PRESENT - #define __MPU_PRESENT 0U - #warning "__MPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 3U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group Cortex_M4 */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - - Core Debug Register - - Core MPU Register - - Core FPU Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:16; /*!< bit: 0..15 Reserved */ - uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ - uint32_t _reserved1:7; /*!< bit: 20..26 Reserved */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - -#define APSR_Q_Pos 27U /*!< APSR: Q Position */ -#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ - -#define APSR_GE_Pos 16U /*!< APSR: GE Position */ -#define APSR_GE_Msk (0xFUL << APSR_GE_Pos) /*!< APSR: GE Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:1; /*!< bit: 9 Reserved */ - uint32_t ICI_IT_1:6; /*!< bit: 10..15 ICI/IT part 1 */ - uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ - uint32_t _reserved1:4; /*!< bit: 20..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit */ - uint32_t ICI_IT_2:2; /*!< bit: 25..26 ICI/IT part 2 */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ -#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ - -#define xPSR_ICI_IT_2_Pos 25U /*!< xPSR: ICI/IT part 2 Position */ -#define xPSR_ICI_IT_2_Msk (3UL << xPSR_ICI_IT_2_Pos) /*!< xPSR: ICI/IT part 2 Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_GE_Pos 16U /*!< xPSR: GE Position */ -#define xPSR_GE_Msk (0xFUL << xPSR_GE_Pos) /*!< xPSR: GE Mask */ - -#define xPSR_ICI_IT_1_Pos 10U /*!< xPSR: ICI/IT part 1 Position */ -#define xPSR_ICI_IT_1_Msk (0x3FUL << xPSR_ICI_IT_1_Pos) /*!< xPSR: ICI/IT part 1 Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ - uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ - uint32_t FPCA:1; /*!< bit: 2 FP extension active flag */ - uint32_t _reserved0:29; /*!< bit: 3..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_FPCA_Pos 2U /*!< CONTROL: FPCA Position */ -#define CONTROL_FPCA_Msk (1UL << CONTROL_FPCA_Pos) /*!< CONTROL: FPCA Mask */ - -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ -#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[8U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[24U]; - __IOM uint32_t ICER[8U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[24U]; - __IOM uint32_t ISPR[8U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[24U]; - __IOM uint32_t ICPR[8U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[24U]; - __IOM uint32_t IABR[8U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ - uint32_t RESERVED4[56U]; - __IOM uint8_t IP[240U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ - uint32_t RESERVED5[644U]; - __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ -} NVIC_Type; - -/* Software Triggered Interrupt Register Definitions */ -#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ -#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ - __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - __IOM uint8_t SHP[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ - __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ - __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ - __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ - __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ - __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ - __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ - __IM uint32_t PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ - __IM uint32_t DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ - __IM uint32_t ADR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ - __IM uint32_t MMFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ - __IM uint32_t ISAR[5U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ - uint32_t RESERVED0[5U]; - __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ -#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ -#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -/* SCB Vector Table Offset Register Definitions */ -#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ -#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ -#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -#define SCB_AIRCR_VECTRESET_Pos 0U /*!< SCB AIRCR: VECTRESET Position */ -#define SCB_AIRCR_VECTRESET_Msk (1UL /*<< SCB_AIRCR_VECTRESET_Pos*/) /*!< SCB AIRCR: VECTRESET Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ -#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ - -#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ -#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ - -#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ -#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ -#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ - -#define SCB_CCR_NONBASETHRDENA_Pos 0U /*!< SCB CCR: NONBASETHRDENA Position */ -#define SCB_CCR_NONBASETHRDENA_Msk (1UL /*<< SCB_CCR_NONBASETHRDENA_Pos*/) /*!< SCB CCR: NONBASETHRDENA Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ -#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ - -#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ -#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ - -#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ -#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ - -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ -#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ - -#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ -#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ - -#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ -#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ - -#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ -#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ - -#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ -#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ - -#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ -#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ - -#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ -#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ - -#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ -#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ - -#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ -#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ - -#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ -#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ - -/* SCB Configurable Fault Status Register Definitions */ -#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ -#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ - -#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ -#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ - -#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ -#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ - -/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ -#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ - -#define SCB_CFSR_MLSPERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 5U) /*!< SCB CFSR (MMFSR): MLSPERR Position */ -#define SCB_CFSR_MLSPERR_Msk (1UL << SCB_CFSR_MLSPERR_Pos) /*!< SCB CFSR (MMFSR): MLSPERR Mask */ - -#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ -#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ - -#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ -#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ - -#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ -#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ - -#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ -#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ - -/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ -#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ - -#define SCB_CFSR_LSPERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 5U) /*!< SCB CFSR (BFSR): LSPERR Position */ -#define SCB_CFSR_LSPERR_Msk (1UL << SCB_CFSR_LSPERR_Pos) /*!< SCB CFSR (BFSR): LSPERR Mask */ - -#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ -#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ - -#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ -#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ - -#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ -#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ - -#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ -#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ - -#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ -#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ - -/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ -#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ - -#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ -#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ - -#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ -#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ - -#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ -#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ - -#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ -#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ - -#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ -#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ - -/* SCB Hard Fault Status Register Definitions */ -#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ -#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ - -#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ -#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ - -#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ -#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ - -/* SCB Debug Fault Status Register Definitions */ -#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ -#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ - -#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ -#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ - -#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ -#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ - -#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ -#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ - -#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ -#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) - \brief Type definitions for the System Control and ID Register not in the SCB - @{ - */ - -/** - \brief Structure type to access the System Control and ID Register not in the SCB. - */ -typedef struct -{ - uint32_t RESERVED0[1U]; - __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ - __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ -} SCnSCB_Type; - -/* Interrupt Controller Type Register Definitions */ -#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ -#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ - -/* Auxiliary Control Register Definitions */ -#define SCnSCB_ACTLR_DISOOFP_Pos 9U /*!< ACTLR: DISOOFP Position */ -#define SCnSCB_ACTLR_DISOOFP_Msk (1UL << SCnSCB_ACTLR_DISOOFP_Pos) /*!< ACTLR: DISOOFP Mask */ - -#define SCnSCB_ACTLR_DISFPCA_Pos 8U /*!< ACTLR: DISFPCA Position */ -#define SCnSCB_ACTLR_DISFPCA_Msk (1UL << SCnSCB_ACTLR_DISFPCA_Pos) /*!< ACTLR: DISFPCA Mask */ - -#define SCnSCB_ACTLR_DISFOLD_Pos 2U /*!< ACTLR: DISFOLD Position */ -#define SCnSCB_ACTLR_DISFOLD_Msk (1UL << SCnSCB_ACTLR_DISFOLD_Pos) /*!< ACTLR: DISFOLD Mask */ - -#define SCnSCB_ACTLR_DISDEFWBUF_Pos 1U /*!< ACTLR: DISDEFWBUF Position */ -#define SCnSCB_ACTLR_DISDEFWBUF_Msk (1UL << SCnSCB_ACTLR_DISDEFWBUF_Pos) /*!< ACTLR: DISDEFWBUF Mask */ - -#define SCnSCB_ACTLR_DISMCYCINT_Pos 0U /*!< ACTLR: DISMCYCINT Position */ -#define SCnSCB_ACTLR_DISMCYCINT_Msk (1UL /*<< SCnSCB_ACTLR_DISMCYCINT_Pos*/) /*!< ACTLR: DISMCYCINT Mask */ - -/*@} end of group CMSIS_SCnotSCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) - \brief Type definitions for the Instrumentation Trace Macrocell (ITM) - @{ - */ - -/** - \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). - */ -typedef struct -{ - __OM union - { - __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ - __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ - __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ - } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ - uint32_t RESERVED0[864U]; - __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ - uint32_t RESERVED1[15U]; - __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ - uint32_t RESERVED2[15U]; - __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ - uint32_t RESERVED3[29U]; - __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ - __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ - __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ - uint32_t RESERVED4[43U]; - __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ - __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ - uint32_t RESERVED5[6U]; - __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ - __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ - __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ - __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ - __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ - __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ - __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ - __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ - __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ - __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ - __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ - __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ -} ITM_Type; - -/* ITM Trace Privilege Register Definitions */ -#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ -#define ITM_TPR_PRIVMASK_Msk (0xFFFFFFFFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ - -/* ITM Trace Control Register Definitions */ -#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ -#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ - -#define ITM_TCR_TraceBusID_Pos 16U /*!< ITM TCR: ATBID Position */ -#define ITM_TCR_TraceBusID_Msk (0x7FUL << ITM_TCR_TraceBusID_Pos) /*!< ITM TCR: ATBID Mask */ - -#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ -#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ - -#define ITM_TCR_TSPrescale_Pos 8U /*!< ITM TCR: TSPrescale Position */ -#define ITM_TCR_TSPrescale_Msk (3UL << ITM_TCR_TSPrescale_Pos) /*!< ITM TCR: TSPrescale Mask */ - -#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ -#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ - -#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ -#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ - -#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ -#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ - -#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ -#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ - -#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ -#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ - -/* ITM Integration Write Register Definitions */ -#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ -#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ - -/* ITM Integration Read Register Definitions */ -#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ -#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ - -/* ITM Integration Mode Control Register Definitions */ -#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ -#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ - -/* ITM Lock Status Register Definitions */ -#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ -#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ - -#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ -#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ - -#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ -#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ - -/*@}*/ /* end of group CMSIS_ITM */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) - \brief Type definitions for the Data Watchpoint and Trace (DWT) - @{ - */ - -/** - \brief Structure type to access the Data Watchpoint and Trace Register (DWT). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ - __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ - __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ - __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ - __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ - __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ - __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ - __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ - __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ - __IOM uint32_t MASK0; /*!< Offset: 0x024 (R/W) Mask Register 0 */ - __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ - uint32_t RESERVED0[1U]; - __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ - __IOM uint32_t MASK1; /*!< Offset: 0x034 (R/W) Mask Register 1 */ - __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ - uint32_t RESERVED1[1U]; - __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ - __IOM uint32_t MASK2; /*!< Offset: 0x044 (R/W) Mask Register 2 */ - __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ - uint32_t RESERVED2[1U]; - __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ - __IOM uint32_t MASK3; /*!< Offset: 0x054 (R/W) Mask Register 3 */ - __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ -} DWT_Type; - -/* DWT Control Register Definitions */ -#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ -#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ - -#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ -#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ - -#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ -#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ - -#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ -#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ - -#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ -#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ - -#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ -#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ - -#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ -#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ - -#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ -#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ - -#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ -#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ - -#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ -#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ - -#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ -#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ - -#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ -#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ - -#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ -#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ - -#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ -#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ - -#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ -#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ - -#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ -#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ - -#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ -#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ - -#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ -#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ - -/* DWT CPI Count Register Definitions */ -#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ -#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ - -/* DWT Exception Overhead Count Register Definitions */ -#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ -#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ - -/* DWT Sleep Count Register Definitions */ -#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ -#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ - -/* DWT LSU Count Register Definitions */ -#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ -#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ - -/* DWT Folded-instruction Count Register Definitions */ -#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ -#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ - -/* DWT Comparator Mask Register Definitions */ -#define DWT_MASK_MASK_Pos 0U /*!< DWT MASK: MASK Position */ -#define DWT_MASK_MASK_Msk (0x1FUL /*<< DWT_MASK_MASK_Pos*/) /*!< DWT MASK: MASK Mask */ - -/* DWT Comparator Function Register Definitions */ -#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ -#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ - -#define DWT_FUNCTION_DATAVADDR1_Pos 16U /*!< DWT FUNCTION: DATAVADDR1 Position */ -#define DWT_FUNCTION_DATAVADDR1_Msk (0xFUL << DWT_FUNCTION_DATAVADDR1_Pos) /*!< DWT FUNCTION: DATAVADDR1 Mask */ - -#define DWT_FUNCTION_DATAVADDR0_Pos 12U /*!< DWT FUNCTION: DATAVADDR0 Position */ -#define DWT_FUNCTION_DATAVADDR0_Msk (0xFUL << DWT_FUNCTION_DATAVADDR0_Pos) /*!< DWT FUNCTION: DATAVADDR0 Mask */ - -#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ -#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ - -#define DWT_FUNCTION_LNK1ENA_Pos 9U /*!< DWT FUNCTION: LNK1ENA Position */ -#define DWT_FUNCTION_LNK1ENA_Msk (0x1UL << DWT_FUNCTION_LNK1ENA_Pos) /*!< DWT FUNCTION: LNK1ENA Mask */ - -#define DWT_FUNCTION_DATAVMATCH_Pos 8U /*!< DWT FUNCTION: DATAVMATCH Position */ -#define DWT_FUNCTION_DATAVMATCH_Msk (0x1UL << DWT_FUNCTION_DATAVMATCH_Pos) /*!< DWT FUNCTION: DATAVMATCH Mask */ - -#define DWT_FUNCTION_CYCMATCH_Pos 7U /*!< DWT FUNCTION: CYCMATCH Position */ -#define DWT_FUNCTION_CYCMATCH_Msk (0x1UL << DWT_FUNCTION_CYCMATCH_Pos) /*!< DWT FUNCTION: CYCMATCH Mask */ - -#define DWT_FUNCTION_EMITRANGE_Pos 5U /*!< DWT FUNCTION: EMITRANGE Position */ -#define DWT_FUNCTION_EMITRANGE_Msk (0x1UL << DWT_FUNCTION_EMITRANGE_Pos) /*!< DWT FUNCTION: EMITRANGE Mask */ - -#define DWT_FUNCTION_FUNCTION_Pos 0U /*!< DWT FUNCTION: FUNCTION Position */ -#define DWT_FUNCTION_FUNCTION_Msk (0xFUL /*<< DWT_FUNCTION_FUNCTION_Pos*/) /*!< DWT FUNCTION: FUNCTION Mask */ - -/*@}*/ /* end of group CMSIS_DWT */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_TPI Trace Port Interface (TPI) - \brief Type definitions for the Trace Port Interface (TPI) - @{ - */ - -/** - \brief Structure type to access the Trace Port Interface Register (TPI). - */ -typedef struct -{ - __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ - __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ - uint32_t RESERVED0[2U]; - __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ - uint32_t RESERVED1[55U]; - __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ - uint32_t RESERVED2[131U]; - __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ - __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ - __IM uint32_t FSCR; /*!< Offset: 0x308 (R/ ) Formatter Synchronization Counter Register */ - uint32_t RESERVED3[759U]; - __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ - __IM uint32_t FIFO0; /*!< Offset: 0xEEC (R/ ) Integration ETM Data */ - __IM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/ ) ITATBCTR2 */ - uint32_t RESERVED4[1U]; - __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) ITATBCTR0 */ - __IM uint32_t FIFO1; /*!< Offset: 0xEFC (R/ ) Integration ITM Data */ - __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ - uint32_t RESERVED5[39U]; - __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ - __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ - uint32_t RESERVED7[8U]; - __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) TPIU_DEVID */ - __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) TPIU_DEVTYPE */ -} TPI_Type; - -/* TPI Asynchronous Clock Prescaler Register Definitions */ -#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ -#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ - -/* TPI Selected Pin Protocol Register Definitions */ -#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ -#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ - -/* TPI Formatter and Flush Status Register Definitions */ -#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ -#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ - -#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ -#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ - -#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ -#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ - -#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ -#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ - -/* TPI Formatter and Flush Control Register Definitions */ -#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ -#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ - -#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ -#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ - -/* TPI TRIGGER Register Definitions */ -#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ -#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ - -/* TPI Integration ETM Data Register Definitions (FIFO0) */ -#define TPI_FIFO0_ITM_ATVALID_Pos 29U /*!< TPI FIFO0: ITM_ATVALID Position */ -#define TPI_FIFO0_ITM_ATVALID_Msk (0x3UL << TPI_FIFO0_ITM_ATVALID_Pos) /*!< TPI FIFO0: ITM_ATVALID Mask */ - -#define TPI_FIFO0_ITM_bytecount_Pos 27U /*!< TPI FIFO0: ITM_bytecount Position */ -#define TPI_FIFO0_ITM_bytecount_Msk (0x3UL << TPI_FIFO0_ITM_bytecount_Pos) /*!< TPI FIFO0: ITM_bytecount Mask */ - -#define TPI_FIFO0_ETM_ATVALID_Pos 26U /*!< TPI FIFO0: ETM_ATVALID Position */ -#define TPI_FIFO0_ETM_ATVALID_Msk (0x3UL << TPI_FIFO0_ETM_ATVALID_Pos) /*!< TPI FIFO0: ETM_ATVALID Mask */ - -#define TPI_FIFO0_ETM_bytecount_Pos 24U /*!< TPI FIFO0: ETM_bytecount Position */ -#define TPI_FIFO0_ETM_bytecount_Msk (0x3UL << TPI_FIFO0_ETM_bytecount_Pos) /*!< TPI FIFO0: ETM_bytecount Mask */ - -#define TPI_FIFO0_ETM2_Pos 16U /*!< TPI FIFO0: ETM2 Position */ -#define TPI_FIFO0_ETM2_Msk (0xFFUL << TPI_FIFO0_ETM2_Pos) /*!< TPI FIFO0: ETM2 Mask */ - -#define TPI_FIFO0_ETM1_Pos 8U /*!< TPI FIFO0: ETM1 Position */ -#define TPI_FIFO0_ETM1_Msk (0xFFUL << TPI_FIFO0_ETM1_Pos) /*!< TPI FIFO0: ETM1 Mask */ - -#define TPI_FIFO0_ETM0_Pos 0U /*!< TPI FIFO0: ETM0 Position */ -#define TPI_FIFO0_ETM0_Msk (0xFFUL /*<< TPI_FIFO0_ETM0_Pos*/) /*!< TPI FIFO0: ETM0 Mask */ - -/* TPI ITATBCTR2 Register Definitions */ -#define TPI_ITATBCTR2_ATREADY2_Pos 0U /*!< TPI ITATBCTR2: ATREADY2 Position */ -#define TPI_ITATBCTR2_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2_Pos*/) /*!< TPI ITATBCTR2: ATREADY2 Mask */ - -#define TPI_ITATBCTR2_ATREADY1_Pos 0U /*!< TPI ITATBCTR2: ATREADY1 Position */ -#define TPI_ITATBCTR2_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1_Pos*/) /*!< TPI ITATBCTR2: ATREADY1 Mask */ - -/* TPI Integration ITM Data Register Definitions (FIFO1) */ -#define TPI_FIFO1_ITM_ATVALID_Pos 29U /*!< TPI FIFO1: ITM_ATVALID Position */ -#define TPI_FIFO1_ITM_ATVALID_Msk (0x3UL << TPI_FIFO1_ITM_ATVALID_Pos) /*!< TPI FIFO1: ITM_ATVALID Mask */ - -#define TPI_FIFO1_ITM_bytecount_Pos 27U /*!< TPI FIFO1: ITM_bytecount Position */ -#define TPI_FIFO1_ITM_bytecount_Msk (0x3UL << TPI_FIFO1_ITM_bytecount_Pos) /*!< TPI FIFO1: ITM_bytecount Mask */ - -#define TPI_FIFO1_ETM_ATVALID_Pos 26U /*!< TPI FIFO1: ETM_ATVALID Position */ -#define TPI_FIFO1_ETM_ATVALID_Msk (0x3UL << TPI_FIFO1_ETM_ATVALID_Pos) /*!< TPI FIFO1: ETM_ATVALID Mask */ - -#define TPI_FIFO1_ETM_bytecount_Pos 24U /*!< TPI FIFO1: ETM_bytecount Position */ -#define TPI_FIFO1_ETM_bytecount_Msk (0x3UL << TPI_FIFO1_ETM_bytecount_Pos) /*!< TPI FIFO1: ETM_bytecount Mask */ - -#define TPI_FIFO1_ITM2_Pos 16U /*!< TPI FIFO1: ITM2 Position */ -#define TPI_FIFO1_ITM2_Msk (0xFFUL << TPI_FIFO1_ITM2_Pos) /*!< TPI FIFO1: ITM2 Mask */ - -#define TPI_FIFO1_ITM1_Pos 8U /*!< TPI FIFO1: ITM1 Position */ -#define TPI_FIFO1_ITM1_Msk (0xFFUL << TPI_FIFO1_ITM1_Pos) /*!< TPI FIFO1: ITM1 Mask */ - -#define TPI_FIFO1_ITM0_Pos 0U /*!< TPI FIFO1: ITM0 Position */ -#define TPI_FIFO1_ITM0_Msk (0xFFUL /*<< TPI_FIFO1_ITM0_Pos*/) /*!< TPI FIFO1: ITM0 Mask */ - -/* TPI ITATBCTR0 Register Definitions */ -#define TPI_ITATBCTR0_ATREADY2_Pos 0U /*!< TPI ITATBCTR0: ATREADY2 Position */ -#define TPI_ITATBCTR0_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2_Pos*/) /*!< TPI ITATBCTR0: ATREADY2 Mask */ - -#define TPI_ITATBCTR0_ATREADY1_Pos 0U /*!< TPI ITATBCTR0: ATREADY1 Position */ -#define TPI_ITATBCTR0_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1_Pos*/) /*!< TPI ITATBCTR0: ATREADY1 Mask */ - -/* TPI Integration Mode Control Register Definitions */ -#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ -#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ - -/* TPI DEVID Register Definitions */ -#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ -#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ - -#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ -#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ - -#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ -#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ - -#define TPI_DEVID_MinBufSz_Pos 6U /*!< TPI DEVID: MinBufSz Position */ -#define TPI_DEVID_MinBufSz_Msk (0x7UL << TPI_DEVID_MinBufSz_Pos) /*!< TPI DEVID: MinBufSz Mask */ - -#define TPI_DEVID_AsynClkIn_Pos 5U /*!< TPI DEVID: AsynClkIn Position */ -#define TPI_DEVID_AsynClkIn_Msk (0x1UL << TPI_DEVID_AsynClkIn_Pos) /*!< TPI DEVID: AsynClkIn Mask */ - -#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ -#define TPI_DEVID_NrTraceInput_Msk (0x1FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ - -/* TPI DEVTYPE Register Definitions */ -#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ -#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ - -#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ -#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ - -/*@}*/ /* end of group CMSIS_TPI */ - - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_MPU Memory Protection Unit (MPU) - \brief Type definitions for the Memory Protection Unit (MPU) - @{ - */ - -/** - \brief Structure type to access the Memory Protection Unit (MPU). - */ -typedef struct -{ - __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ - __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ - __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ - __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Alias 1 Region Base Address Register */ - __IOM uint32_t RASR_A1; /*!< Offset: 0x018 (R/W) MPU Alias 1 Region Attribute and Size Register */ - __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Alias 2 Region Base Address Register */ - __IOM uint32_t RASR_A2; /*!< Offset: 0x020 (R/W) MPU Alias 2 Region Attribute and Size Register */ - __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Alias 3 Region Base Address Register */ - __IOM uint32_t RASR_A3; /*!< Offset: 0x028 (R/W) MPU Alias 3 Region Attribute and Size Register */ -} MPU_Type; - -#define MPU_TYPE_RALIASES 4U - -/* MPU Type Register Definitions */ -#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ -#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ - -#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ -#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ - -#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ -#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ - -/* MPU Control Register Definitions */ -#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ -#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ - -#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ -#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ - -#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ -#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ - -/* MPU Region Number Register Definitions */ -#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ -#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ - -/* MPU Region Base Address Register Definitions */ -#define MPU_RBAR_ADDR_Pos 5U /*!< MPU RBAR: ADDR Position */ -#define MPU_RBAR_ADDR_Msk (0x7FFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ - -#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ -#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ - -#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ -#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ - -/* MPU Region Attribute and Size Register Definitions */ -#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ -#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ - -#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ -#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ - -#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ -#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ - -#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ -#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ - -#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ -#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ - -#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ -#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ - -#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ -#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ - -#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ -#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ - -#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ -#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ - -#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ -#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ - -/*@} end of group CMSIS_MPU */ -#endif /* defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_FPU Floating Point Unit (FPU) - \brief Type definitions for the Floating Point Unit (FPU) - @{ - */ - -/** - \brief Structure type to access the Floating Point Unit (FPU). - */ -typedef struct -{ - uint32_t RESERVED0[1U]; - __IOM uint32_t FPCCR; /*!< Offset: 0x004 (R/W) Floating-Point Context Control Register */ - __IOM uint32_t FPCAR; /*!< Offset: 0x008 (R/W) Floating-Point Context Address Register */ - __IOM uint32_t FPDSCR; /*!< Offset: 0x00C (R/W) Floating-Point Default Status Control Register */ - __IM uint32_t MVFR0; /*!< Offset: 0x010 (R/ ) Media and FP Feature Register 0 */ - __IM uint32_t MVFR1; /*!< Offset: 0x014 (R/ ) Media and FP Feature Register 1 */ -} FPU_Type; - -/* Floating-Point Context Control Register Definitions */ -#define FPU_FPCCR_ASPEN_Pos 31U /*!< FPCCR: ASPEN bit Position */ -#define FPU_FPCCR_ASPEN_Msk (1UL << FPU_FPCCR_ASPEN_Pos) /*!< FPCCR: ASPEN bit Mask */ - -#define FPU_FPCCR_LSPEN_Pos 30U /*!< FPCCR: LSPEN Position */ -#define FPU_FPCCR_LSPEN_Msk (1UL << FPU_FPCCR_LSPEN_Pos) /*!< FPCCR: LSPEN bit Mask */ - -#define FPU_FPCCR_MONRDY_Pos 8U /*!< FPCCR: MONRDY Position */ -#define FPU_FPCCR_MONRDY_Msk (1UL << FPU_FPCCR_MONRDY_Pos) /*!< FPCCR: MONRDY bit Mask */ - -#define FPU_FPCCR_BFRDY_Pos 6U /*!< FPCCR: BFRDY Position */ -#define FPU_FPCCR_BFRDY_Msk (1UL << FPU_FPCCR_BFRDY_Pos) /*!< FPCCR: BFRDY bit Mask */ - -#define FPU_FPCCR_MMRDY_Pos 5U /*!< FPCCR: MMRDY Position */ -#define FPU_FPCCR_MMRDY_Msk (1UL << FPU_FPCCR_MMRDY_Pos) /*!< FPCCR: MMRDY bit Mask */ - -#define FPU_FPCCR_HFRDY_Pos 4U /*!< FPCCR: HFRDY Position */ -#define FPU_FPCCR_HFRDY_Msk (1UL << FPU_FPCCR_HFRDY_Pos) /*!< FPCCR: HFRDY bit Mask */ - -#define FPU_FPCCR_THREAD_Pos 3U /*!< FPCCR: processor mode bit Position */ -#define FPU_FPCCR_THREAD_Msk (1UL << FPU_FPCCR_THREAD_Pos) /*!< FPCCR: processor mode active bit Mask */ - -#define FPU_FPCCR_USER_Pos 1U /*!< FPCCR: privilege level bit Position */ -#define FPU_FPCCR_USER_Msk (1UL << FPU_FPCCR_USER_Pos) /*!< FPCCR: privilege level bit Mask */ - -#define FPU_FPCCR_LSPACT_Pos 0U /*!< FPCCR: Lazy state preservation active bit Position */ -#define FPU_FPCCR_LSPACT_Msk (1UL /*<< FPU_FPCCR_LSPACT_Pos*/) /*!< FPCCR: Lazy state preservation active bit Mask */ - -/* Floating-Point Context Address Register Definitions */ -#define FPU_FPCAR_ADDRESS_Pos 3U /*!< FPCAR: ADDRESS bit Position */ -#define FPU_FPCAR_ADDRESS_Msk (0x1FFFFFFFUL << FPU_FPCAR_ADDRESS_Pos) /*!< FPCAR: ADDRESS bit Mask */ - -/* Floating-Point Default Status Control Register Definitions */ -#define FPU_FPDSCR_AHP_Pos 26U /*!< FPDSCR: AHP bit Position */ -#define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos) /*!< FPDSCR: AHP bit Mask */ - -#define FPU_FPDSCR_DN_Pos 25U /*!< FPDSCR: DN bit Position */ -#define FPU_FPDSCR_DN_Msk (1UL << FPU_FPDSCR_DN_Pos) /*!< FPDSCR: DN bit Mask */ - -#define FPU_FPDSCR_FZ_Pos 24U /*!< FPDSCR: FZ bit Position */ -#define FPU_FPDSCR_FZ_Msk (1UL << FPU_FPDSCR_FZ_Pos) /*!< FPDSCR: FZ bit Mask */ - -#define FPU_FPDSCR_RMode_Pos 22U /*!< FPDSCR: RMode bit Position */ -#define FPU_FPDSCR_RMode_Msk (3UL << FPU_FPDSCR_RMode_Pos) /*!< FPDSCR: RMode bit Mask */ - -/* Media and FP Feature Register 0 Definitions */ -#define FPU_MVFR0_FP_rounding_modes_Pos 28U /*!< MVFR0: FP rounding modes bits Position */ -#define FPU_MVFR0_FP_rounding_modes_Msk (0xFUL << FPU_MVFR0_FP_rounding_modes_Pos) /*!< MVFR0: FP rounding modes bits Mask */ - -#define FPU_MVFR0_Short_vectors_Pos 24U /*!< MVFR0: Short vectors bits Position */ -#define FPU_MVFR0_Short_vectors_Msk (0xFUL << FPU_MVFR0_Short_vectors_Pos) /*!< MVFR0: Short vectors bits Mask */ - -#define FPU_MVFR0_Square_root_Pos 20U /*!< MVFR0: Square root bits Position */ -#define FPU_MVFR0_Square_root_Msk (0xFUL << FPU_MVFR0_Square_root_Pos) /*!< MVFR0: Square root bits Mask */ - -#define FPU_MVFR0_Divide_Pos 16U /*!< MVFR0: Divide bits Position */ -#define FPU_MVFR0_Divide_Msk (0xFUL << FPU_MVFR0_Divide_Pos) /*!< MVFR0: Divide bits Mask */ - -#define FPU_MVFR0_FP_excep_trapping_Pos 12U /*!< MVFR0: FP exception trapping bits Position */ -#define FPU_MVFR0_FP_excep_trapping_Msk (0xFUL << FPU_MVFR0_FP_excep_trapping_Pos) /*!< MVFR0: FP exception trapping bits Mask */ - -#define FPU_MVFR0_Double_precision_Pos 8U /*!< MVFR0: Double-precision bits Position */ -#define FPU_MVFR0_Double_precision_Msk (0xFUL << FPU_MVFR0_Double_precision_Pos) /*!< MVFR0: Double-precision bits Mask */ - -#define FPU_MVFR0_Single_precision_Pos 4U /*!< MVFR0: Single-precision bits Position */ -#define FPU_MVFR0_Single_precision_Msk (0xFUL << FPU_MVFR0_Single_precision_Pos) /*!< MVFR0: Single-precision bits Mask */ - -#define FPU_MVFR0_A_SIMD_registers_Pos 0U /*!< MVFR0: A_SIMD registers bits Position */ -#define FPU_MVFR0_A_SIMD_registers_Msk (0xFUL /*<< FPU_MVFR0_A_SIMD_registers_Pos*/) /*!< MVFR0: A_SIMD registers bits Mask */ - -/* Media and FP Feature Register 1 Definitions */ -#define FPU_MVFR1_FP_fused_MAC_Pos 28U /*!< MVFR1: FP fused MAC bits Position */ -#define FPU_MVFR1_FP_fused_MAC_Msk (0xFUL << FPU_MVFR1_FP_fused_MAC_Pos) /*!< MVFR1: FP fused MAC bits Mask */ - -#define FPU_MVFR1_FP_HPFP_Pos 24U /*!< MVFR1: FP HPFP bits Position */ -#define FPU_MVFR1_FP_HPFP_Msk (0xFUL << FPU_MVFR1_FP_HPFP_Pos) /*!< MVFR1: FP HPFP bits Mask */ - -#define FPU_MVFR1_D_NaN_mode_Pos 4U /*!< MVFR1: D_NaN mode bits Position */ -#define FPU_MVFR1_D_NaN_mode_Msk (0xFUL << FPU_MVFR1_D_NaN_mode_Pos) /*!< MVFR1: D_NaN mode bits Mask */ - -#define FPU_MVFR1_FtZ_mode_Pos 0U /*!< MVFR1: FtZ mode bits Position */ -#define FPU_MVFR1_FtZ_mode_Msk (0xFUL /*<< FPU_MVFR1_FtZ_mode_Pos*/) /*!< MVFR1: FtZ mode bits Mask */ - -/*@} end of group CMSIS_FPU */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief Type definitions for the Core Debug Registers - @{ - */ - -/** - \brief Structure type to access the Core Debug Register (CoreDebug). - */ -typedef struct -{ - __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ - __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ - __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ - __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ -} CoreDebug_Type; - -/* Debug Halting Control and Status Register Definitions */ -#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ -#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ - -#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ -#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ - -#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ -#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ - -#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ -#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ - -#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ -#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ - -#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ -#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ - -#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ -#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ - -#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ -#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ - -#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ -#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ - -#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ -#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ - -#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ -#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ - -#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ -#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ - -/* Debug Core Register Selector Register Definitions */ -#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ -#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ - -#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ -#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ - -/* Debug Exception and Monitor Control Register Definitions */ -#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ -#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ - -#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ -#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ - -#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ -#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ - -#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ -#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ - -#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ -#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ - -#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ -#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ - -#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ -#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ - -#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ -#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ - -#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ -#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ - -#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ -#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ - -#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ -#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ - -#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ -#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ - -#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ -#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ - -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ -#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ -#define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ -#define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ -#define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ -#define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ -#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ -#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ -#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - -#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ -#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ -#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ -#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ -#define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ -#define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ -#define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ -#define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE) /*!< Core Debug configuration struct */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ - #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ -#endif - -#define FPU_BASE (SCS_BASE + 0x0F30UL) /*!< Floating Point Unit */ -#define FPU ((FPU_Type *) FPU_BASE ) /*!< Floating Point Unit */ - -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Debug Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping - #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ - #define NVIC_GetActive __NVIC_GetActive - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* The following EXC_RETURN values are saved the LR on exception entry */ -#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ -#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ -#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ -#define EXC_RETURN_HANDLER_FPU (0xFFFFFFE1UL) /* return to Handler mode, uses MSP after return, restore floating-point state */ -#define EXC_RETURN_THREAD_MSP_FPU (0xFFFFFFE9UL) /* return to Thread mode, uses MSP after return, restore floating-point state */ -#define EXC_RETURN_THREAD_PSP_FPU (0xFFFFFFEDUL) /* return to Thread mode, uses PSP after return, restore floating-point state */ - - -/** - \brief Set Priority Grouping - \details Sets the priority grouping field using the required unlock sequence. - The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. - Only values from 0..7 are used. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Priority grouping field. - */ -__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) -{ - uint32_t reg_value; - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - - reg_value = SCB->AIRCR; /* read old register configuration */ - reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ - reg_value = (reg_value | - ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (PriorityGroupTmp << SCB_AIRCR_PRIGROUP_Pos) ); /* Insert write key and priority group */ - SCB->AIRCR = reg_value; -} - - -/** - \brief Get Priority Grouping - \details Reads the priority grouping field from the NVIC Interrupt Controller. - \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). - */ -__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) -{ - return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); -} - - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt - \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } - else - { - SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return(((uint32_t)NVIC->IP[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return(((uint32_t)SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Encode Priority - \details Encodes the priority for an interrupt with the given priority group, - preemptive priority value, and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Used priority group. - \param [in] PreemptPriority Preemptive priority value (starting from 0). - \param [in] SubPriority Subpriority value (starting from 0). - \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). - */ -__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - return ( - ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | - ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) - ); -} - - -/** - \brief Decode Priority - \details Decodes an interrupt priority value with a given priority group to - preemptive priority value and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. - \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). - \param [in] PriorityGroup Used priority group. - \param [out] pPreemptPriority Preemptive priority value (starting from 0). - \param [out] pSubPriority Subpriority value (starting from 0). - */ -__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); - *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); -} - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - VTOR must been relocated to SRAM before. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | - SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -/*@} end of CMSIS_Core_NVICFunctions */ - -/* ########################## MPU functions #################################### */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - -#include "mpu_armv7.h" - -#endif - - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - uint32_t mvfr0; - - mvfr0 = FPU->MVFR0; - if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x020U) - { - return 1U; /* Single precision FPU */ - } - else - { - return 0U; /* No FPU */ - } -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - -/* ##################################### Debug In/Output function ########################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_core_DebugFunctions ITM Functions - \brief Functions that access the ITM debug interface. - @{ - */ - -extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ -#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ - - -/** - \brief ITM Send Character - \details Transmits a character via the ITM channel 0, and - \li Just returns when no debugger is connected that has booked the output. - \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. - \param [in] ch Character to transmit. - \returns Character to transmit. - */ -__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) -{ - if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ - ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ - { - while (ITM->PORT[0U].u32 == 0UL) - { - __NOP(); - } - ITM->PORT[0U].u8 = (uint8_t)ch; - } - return (ch); -} - - -/** - \brief ITM Receive Character - \details Inputs a character via the external variable \ref ITM_RxBuffer. - \return Received character. - \return -1 No character pending. - */ -__STATIC_INLINE int32_t ITM_ReceiveChar (void) -{ - int32_t ch = -1; /* no character available */ - - if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) - { - ch = ITM_RxBuffer; - ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ - } - - return (ch); -} - - -/** - \brief ITM Check Character - \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. - \return 0 No character available. - \return 1 Character available. - */ -__STATIC_INLINE int32_t ITM_CheckChar (void) -{ - - if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) - { - return (0); /* no character available */ - } - else - { - return (1); /* character available */ - } -} - -/*@} end of CMSIS_core_DebugFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM4_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_cm4.h + * @brief CMSIS Cortex-M4 Core Peripheral Access Layer Header File + * @version V5.0.8 + * @date 04. June 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_CM4_H_GENERIC +#define __CORE_CM4_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup Cortex_M4 + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS CM4 definitions */ +#define __CM4_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __CM4_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __CM4_CMSIS_VERSION ((__CM4_CMSIS_VERSION_MAIN << 16U) | \ + __CM4_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_M (4U) /*!< Cortex-M Core */ + +/** __FPU_USED indicates whether an FPU is used or not. + For this, __FPU_PRESENT has to be checked prior to making use of FPU specific registers and functions. +*/ +#if defined ( __CC_ARM ) + #if defined __TARGET_FPU_VFP + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined __ARM_PCS_VFP + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #warning "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __ICCARM__ ) + #if defined __ARMVFP__ + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __TI_ARM__ ) + #if defined __TI_VFP_SUPPORT__ + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __TASKING__ ) + #if defined __FPU_VFP__ + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM4_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_CM4_H_DEPENDANT +#define __CORE_CM4_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __CM4_REV + #define __CM4_REV 0x0000U + #warning "__CM4_REV not defined in device header file; using default!" + #endif + + #ifndef __FPU_PRESENT + #define __FPU_PRESENT 0U + #warning "__FPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __MPU_PRESENT + #define __MPU_PRESENT 0U + #warning "__MPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 3U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group Cortex_M4 */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + - Core Debug Register + - Core MPU Register + - Core FPU Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:16; /*!< bit: 0..15 Reserved */ + uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ + uint32_t _reserved1:7; /*!< bit: 20..26 Reserved */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + +#define APSR_Q_Pos 27U /*!< APSR: Q Position */ +#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ + +#define APSR_GE_Pos 16U /*!< APSR: GE Position */ +#define APSR_GE_Msk (0xFUL << APSR_GE_Pos) /*!< APSR: GE Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:1; /*!< bit: 9 Reserved */ + uint32_t ICI_IT_1:6; /*!< bit: 10..15 ICI/IT part 1 */ + uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ + uint32_t _reserved1:4; /*!< bit: 20..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit */ + uint32_t ICI_IT_2:2; /*!< bit: 25..26 ICI/IT part 2 */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ +#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ + +#define xPSR_ICI_IT_2_Pos 25U /*!< xPSR: ICI/IT part 2 Position */ +#define xPSR_ICI_IT_2_Msk (3UL << xPSR_ICI_IT_2_Pos) /*!< xPSR: ICI/IT part 2 Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_GE_Pos 16U /*!< xPSR: GE Position */ +#define xPSR_GE_Msk (0xFUL << xPSR_GE_Pos) /*!< xPSR: GE Mask */ + +#define xPSR_ICI_IT_1_Pos 10U /*!< xPSR: ICI/IT part 1 Position */ +#define xPSR_ICI_IT_1_Msk (0x3FUL << xPSR_ICI_IT_1_Pos) /*!< xPSR: ICI/IT part 1 Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ + uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ + uint32_t FPCA:1; /*!< bit: 2 FP extension active flag */ + uint32_t _reserved0:29; /*!< bit: 3..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_FPCA_Pos 2U /*!< CONTROL: FPCA Position */ +#define CONTROL_FPCA_Msk (1UL << CONTROL_FPCA_Pos) /*!< CONTROL: FPCA Mask */ + +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ +#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[8U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[24U]; + __IOM uint32_t ICER[8U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[24U]; + __IOM uint32_t ISPR[8U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[24U]; + __IOM uint32_t ICPR[8U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[24U]; + __IOM uint32_t IABR[8U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ + uint32_t RESERVED4[56U]; + __IOM uint8_t IP[240U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ + uint32_t RESERVED5[644U]; + __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ +} NVIC_Type; + +/* Software Triggered Interrupt Register Definitions */ +#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ +#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ + __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + __IOM uint8_t SHP[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ + __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ + __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ + __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ + __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ + __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ + __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ + __IM uint32_t PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ + __IM uint32_t DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ + __IM uint32_t ADR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ + __IM uint32_t MMFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ + __IM uint32_t ISAR[5U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ + uint32_t RESERVED0[5U]; + __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ +#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ +#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +/* SCB Vector Table Offset Register Definitions */ +#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ +#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ +#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +#define SCB_AIRCR_VECTRESET_Pos 0U /*!< SCB AIRCR: VECTRESET Position */ +#define SCB_AIRCR_VECTRESET_Msk (1UL /*<< SCB_AIRCR_VECTRESET_Pos*/) /*!< SCB AIRCR: VECTRESET Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ +#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ + +#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ +#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ + +#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ +#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ +#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ + +#define SCB_CCR_NONBASETHRDENA_Pos 0U /*!< SCB CCR: NONBASETHRDENA Position */ +#define SCB_CCR_NONBASETHRDENA_Msk (1UL /*<< SCB_CCR_NONBASETHRDENA_Pos*/) /*!< SCB CCR: NONBASETHRDENA Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ +#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ + +#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ +#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ + +#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ +#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ + +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ +#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ + +#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ +#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ + +#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ +#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ + +#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ +#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ + +#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ +#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ + +#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ +#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ + +#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ +#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ + +#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ +#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ + +#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ +#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ + +#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ +#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ + +/* SCB Configurable Fault Status Register Definitions */ +#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ +#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ + +#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ +#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ + +#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ +#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ + +/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ +#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ + +#define SCB_CFSR_MLSPERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 5U) /*!< SCB CFSR (MMFSR): MLSPERR Position */ +#define SCB_CFSR_MLSPERR_Msk (1UL << SCB_CFSR_MLSPERR_Pos) /*!< SCB CFSR (MMFSR): MLSPERR Mask */ + +#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ +#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ + +#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ +#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ + +#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ +#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ + +#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ +#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ + +/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ +#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ + +#define SCB_CFSR_LSPERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 5U) /*!< SCB CFSR (BFSR): LSPERR Position */ +#define SCB_CFSR_LSPERR_Msk (1UL << SCB_CFSR_LSPERR_Pos) /*!< SCB CFSR (BFSR): LSPERR Mask */ + +#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ +#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ + +#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ +#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ + +#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ +#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ + +#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ +#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ + +#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ +#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ + +/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ +#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ + +#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ +#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ + +#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ +#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ + +#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ +#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ + +#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ +#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ + +#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ +#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ + +/* SCB Hard Fault Status Register Definitions */ +#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ +#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ + +#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ +#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ + +#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ +#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ + +/* SCB Debug Fault Status Register Definitions */ +#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ +#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ + +#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ +#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ + +#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ +#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ + +#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ +#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ + +#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ +#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) + \brief Type definitions for the System Control and ID Register not in the SCB + @{ + */ + +/** + \brief Structure type to access the System Control and ID Register not in the SCB. + */ +typedef struct +{ + uint32_t RESERVED0[1U]; + __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ + __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ +} SCnSCB_Type; + +/* Interrupt Controller Type Register Definitions */ +#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ +#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ + +/* Auxiliary Control Register Definitions */ +#define SCnSCB_ACTLR_DISOOFP_Pos 9U /*!< ACTLR: DISOOFP Position */ +#define SCnSCB_ACTLR_DISOOFP_Msk (1UL << SCnSCB_ACTLR_DISOOFP_Pos) /*!< ACTLR: DISOOFP Mask */ + +#define SCnSCB_ACTLR_DISFPCA_Pos 8U /*!< ACTLR: DISFPCA Position */ +#define SCnSCB_ACTLR_DISFPCA_Msk (1UL << SCnSCB_ACTLR_DISFPCA_Pos) /*!< ACTLR: DISFPCA Mask */ + +#define SCnSCB_ACTLR_DISFOLD_Pos 2U /*!< ACTLR: DISFOLD Position */ +#define SCnSCB_ACTLR_DISFOLD_Msk (1UL << SCnSCB_ACTLR_DISFOLD_Pos) /*!< ACTLR: DISFOLD Mask */ + +#define SCnSCB_ACTLR_DISDEFWBUF_Pos 1U /*!< ACTLR: DISDEFWBUF Position */ +#define SCnSCB_ACTLR_DISDEFWBUF_Msk (1UL << SCnSCB_ACTLR_DISDEFWBUF_Pos) /*!< ACTLR: DISDEFWBUF Mask */ + +#define SCnSCB_ACTLR_DISMCYCINT_Pos 0U /*!< ACTLR: DISMCYCINT Position */ +#define SCnSCB_ACTLR_DISMCYCINT_Msk (1UL /*<< SCnSCB_ACTLR_DISMCYCINT_Pos*/) /*!< ACTLR: DISMCYCINT Mask */ + +/*@} end of group CMSIS_SCnotSCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) + \brief Type definitions for the Instrumentation Trace Macrocell (ITM) + @{ + */ + +/** + \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). + */ +typedef struct +{ + __OM union + { + __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ + __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ + __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ + } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ + uint32_t RESERVED0[864U]; + __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ + uint32_t RESERVED1[15U]; + __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ + uint32_t RESERVED2[15U]; + __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ + uint32_t RESERVED3[29U]; + __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ + __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ + __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ + uint32_t RESERVED4[43U]; + __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ + __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ + uint32_t RESERVED5[6U]; + __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ + __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ + __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ + __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ + __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ + __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ + __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ + __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ + __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ + __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ + __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ + __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ +} ITM_Type; + +/* ITM Trace Privilege Register Definitions */ +#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ +#define ITM_TPR_PRIVMASK_Msk (0xFFFFFFFFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ + +/* ITM Trace Control Register Definitions */ +#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ +#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ + +#define ITM_TCR_TraceBusID_Pos 16U /*!< ITM TCR: ATBID Position */ +#define ITM_TCR_TraceBusID_Msk (0x7FUL << ITM_TCR_TraceBusID_Pos) /*!< ITM TCR: ATBID Mask */ + +#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ +#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ + +#define ITM_TCR_TSPrescale_Pos 8U /*!< ITM TCR: TSPrescale Position */ +#define ITM_TCR_TSPrescale_Msk (3UL << ITM_TCR_TSPrescale_Pos) /*!< ITM TCR: TSPrescale Mask */ + +#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ +#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ + +#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ +#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ + +#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ +#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ + +#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ +#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ + +#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ +#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ + +/* ITM Integration Write Register Definitions */ +#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ +#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ + +/* ITM Integration Read Register Definitions */ +#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ +#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ + +/* ITM Integration Mode Control Register Definitions */ +#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ +#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ + +/* ITM Lock Status Register Definitions */ +#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ +#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ + +#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ +#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ + +#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ +#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ + +/*@}*/ /* end of group CMSIS_ITM */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) + \brief Type definitions for the Data Watchpoint and Trace (DWT) + @{ + */ + +/** + \brief Structure type to access the Data Watchpoint and Trace Register (DWT). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ + __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ + __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ + __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ + __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ + __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ + __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ + __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ + __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ + __IOM uint32_t MASK0; /*!< Offset: 0x024 (R/W) Mask Register 0 */ + __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ + uint32_t RESERVED0[1U]; + __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ + __IOM uint32_t MASK1; /*!< Offset: 0x034 (R/W) Mask Register 1 */ + __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ + uint32_t RESERVED1[1U]; + __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ + __IOM uint32_t MASK2; /*!< Offset: 0x044 (R/W) Mask Register 2 */ + __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ + uint32_t RESERVED2[1U]; + __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ + __IOM uint32_t MASK3; /*!< Offset: 0x054 (R/W) Mask Register 3 */ + __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ +} DWT_Type; + +/* DWT Control Register Definitions */ +#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ +#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ + +#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ +#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ + +#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ +#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ + +#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ +#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ + +#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ +#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ + +#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ +#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ + +#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ +#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ + +#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ +#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ + +#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ +#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ + +#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ +#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ + +#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ +#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ + +#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ +#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ + +#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ +#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ + +#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ +#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ + +#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ +#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ + +#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ +#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ + +#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ +#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ + +#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ +#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ + +/* DWT CPI Count Register Definitions */ +#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ +#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ + +/* DWT Exception Overhead Count Register Definitions */ +#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ +#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ + +/* DWT Sleep Count Register Definitions */ +#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ +#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ + +/* DWT LSU Count Register Definitions */ +#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ +#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ + +/* DWT Folded-instruction Count Register Definitions */ +#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ +#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ + +/* DWT Comparator Mask Register Definitions */ +#define DWT_MASK_MASK_Pos 0U /*!< DWT MASK: MASK Position */ +#define DWT_MASK_MASK_Msk (0x1FUL /*<< DWT_MASK_MASK_Pos*/) /*!< DWT MASK: MASK Mask */ + +/* DWT Comparator Function Register Definitions */ +#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ +#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ + +#define DWT_FUNCTION_DATAVADDR1_Pos 16U /*!< DWT FUNCTION: DATAVADDR1 Position */ +#define DWT_FUNCTION_DATAVADDR1_Msk (0xFUL << DWT_FUNCTION_DATAVADDR1_Pos) /*!< DWT FUNCTION: DATAVADDR1 Mask */ + +#define DWT_FUNCTION_DATAVADDR0_Pos 12U /*!< DWT FUNCTION: DATAVADDR0 Position */ +#define DWT_FUNCTION_DATAVADDR0_Msk (0xFUL << DWT_FUNCTION_DATAVADDR0_Pos) /*!< DWT FUNCTION: DATAVADDR0 Mask */ + +#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ +#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ + +#define DWT_FUNCTION_LNK1ENA_Pos 9U /*!< DWT FUNCTION: LNK1ENA Position */ +#define DWT_FUNCTION_LNK1ENA_Msk (0x1UL << DWT_FUNCTION_LNK1ENA_Pos) /*!< DWT FUNCTION: LNK1ENA Mask */ + +#define DWT_FUNCTION_DATAVMATCH_Pos 8U /*!< DWT FUNCTION: DATAVMATCH Position */ +#define DWT_FUNCTION_DATAVMATCH_Msk (0x1UL << DWT_FUNCTION_DATAVMATCH_Pos) /*!< DWT FUNCTION: DATAVMATCH Mask */ + +#define DWT_FUNCTION_CYCMATCH_Pos 7U /*!< DWT FUNCTION: CYCMATCH Position */ +#define DWT_FUNCTION_CYCMATCH_Msk (0x1UL << DWT_FUNCTION_CYCMATCH_Pos) /*!< DWT FUNCTION: CYCMATCH Mask */ + +#define DWT_FUNCTION_EMITRANGE_Pos 5U /*!< DWT FUNCTION: EMITRANGE Position */ +#define DWT_FUNCTION_EMITRANGE_Msk (0x1UL << DWT_FUNCTION_EMITRANGE_Pos) /*!< DWT FUNCTION: EMITRANGE Mask */ + +#define DWT_FUNCTION_FUNCTION_Pos 0U /*!< DWT FUNCTION: FUNCTION Position */ +#define DWT_FUNCTION_FUNCTION_Msk (0xFUL /*<< DWT_FUNCTION_FUNCTION_Pos*/) /*!< DWT FUNCTION: FUNCTION Mask */ + +/*@}*/ /* end of group CMSIS_DWT */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_TPI Trace Port Interface (TPI) + \brief Type definitions for the Trace Port Interface (TPI) + @{ + */ + +/** + \brief Structure type to access the Trace Port Interface Register (TPI). + */ +typedef struct +{ + __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ + __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ + uint32_t RESERVED0[2U]; + __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ + uint32_t RESERVED1[55U]; + __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ + uint32_t RESERVED2[131U]; + __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ + __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ + __IM uint32_t FSCR; /*!< Offset: 0x308 (R/ ) Formatter Synchronization Counter Register */ + uint32_t RESERVED3[759U]; + __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ + __IM uint32_t FIFO0; /*!< Offset: 0xEEC (R/ ) Integration ETM Data */ + __IM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/ ) ITATBCTR2 */ + uint32_t RESERVED4[1U]; + __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) ITATBCTR0 */ + __IM uint32_t FIFO1; /*!< Offset: 0xEFC (R/ ) Integration ITM Data */ + __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ + uint32_t RESERVED5[39U]; + __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ + __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ + uint32_t RESERVED7[8U]; + __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) TPIU_DEVID */ + __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) TPIU_DEVTYPE */ +} TPI_Type; + +/* TPI Asynchronous Clock Prescaler Register Definitions */ +#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ +#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ + +/* TPI Selected Pin Protocol Register Definitions */ +#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ +#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ + +/* TPI Formatter and Flush Status Register Definitions */ +#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ +#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ + +#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ +#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ + +#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ +#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ + +#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ +#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ + +/* TPI Formatter and Flush Control Register Definitions */ +#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ +#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ + +#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ +#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ + +/* TPI TRIGGER Register Definitions */ +#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ +#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ + +/* TPI Integration ETM Data Register Definitions (FIFO0) */ +#define TPI_FIFO0_ITM_ATVALID_Pos 29U /*!< TPI FIFO0: ITM_ATVALID Position */ +#define TPI_FIFO0_ITM_ATVALID_Msk (0x3UL << TPI_FIFO0_ITM_ATVALID_Pos) /*!< TPI FIFO0: ITM_ATVALID Mask */ + +#define TPI_FIFO0_ITM_bytecount_Pos 27U /*!< TPI FIFO0: ITM_bytecount Position */ +#define TPI_FIFO0_ITM_bytecount_Msk (0x3UL << TPI_FIFO0_ITM_bytecount_Pos) /*!< TPI FIFO0: ITM_bytecount Mask */ + +#define TPI_FIFO0_ETM_ATVALID_Pos 26U /*!< TPI FIFO0: ETM_ATVALID Position */ +#define TPI_FIFO0_ETM_ATVALID_Msk (0x3UL << TPI_FIFO0_ETM_ATVALID_Pos) /*!< TPI FIFO0: ETM_ATVALID Mask */ + +#define TPI_FIFO0_ETM_bytecount_Pos 24U /*!< TPI FIFO0: ETM_bytecount Position */ +#define TPI_FIFO0_ETM_bytecount_Msk (0x3UL << TPI_FIFO0_ETM_bytecount_Pos) /*!< TPI FIFO0: ETM_bytecount Mask */ + +#define TPI_FIFO0_ETM2_Pos 16U /*!< TPI FIFO0: ETM2 Position */ +#define TPI_FIFO0_ETM2_Msk (0xFFUL << TPI_FIFO0_ETM2_Pos) /*!< TPI FIFO0: ETM2 Mask */ + +#define TPI_FIFO0_ETM1_Pos 8U /*!< TPI FIFO0: ETM1 Position */ +#define TPI_FIFO0_ETM1_Msk (0xFFUL << TPI_FIFO0_ETM1_Pos) /*!< TPI FIFO0: ETM1 Mask */ + +#define TPI_FIFO0_ETM0_Pos 0U /*!< TPI FIFO0: ETM0 Position */ +#define TPI_FIFO0_ETM0_Msk (0xFFUL /*<< TPI_FIFO0_ETM0_Pos*/) /*!< TPI FIFO0: ETM0 Mask */ + +/* TPI ITATBCTR2 Register Definitions */ +#define TPI_ITATBCTR2_ATREADY2_Pos 0U /*!< TPI ITATBCTR2: ATREADY2 Position */ +#define TPI_ITATBCTR2_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2_Pos*/) /*!< TPI ITATBCTR2: ATREADY2 Mask */ + +#define TPI_ITATBCTR2_ATREADY1_Pos 0U /*!< TPI ITATBCTR2: ATREADY1 Position */ +#define TPI_ITATBCTR2_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1_Pos*/) /*!< TPI ITATBCTR2: ATREADY1 Mask */ + +/* TPI Integration ITM Data Register Definitions (FIFO1) */ +#define TPI_FIFO1_ITM_ATVALID_Pos 29U /*!< TPI FIFO1: ITM_ATVALID Position */ +#define TPI_FIFO1_ITM_ATVALID_Msk (0x3UL << TPI_FIFO1_ITM_ATVALID_Pos) /*!< TPI FIFO1: ITM_ATVALID Mask */ + +#define TPI_FIFO1_ITM_bytecount_Pos 27U /*!< TPI FIFO1: ITM_bytecount Position */ +#define TPI_FIFO1_ITM_bytecount_Msk (0x3UL << TPI_FIFO1_ITM_bytecount_Pos) /*!< TPI FIFO1: ITM_bytecount Mask */ + +#define TPI_FIFO1_ETM_ATVALID_Pos 26U /*!< TPI FIFO1: ETM_ATVALID Position */ +#define TPI_FIFO1_ETM_ATVALID_Msk (0x3UL << TPI_FIFO1_ETM_ATVALID_Pos) /*!< TPI FIFO1: ETM_ATVALID Mask */ + +#define TPI_FIFO1_ETM_bytecount_Pos 24U /*!< TPI FIFO1: ETM_bytecount Position */ +#define TPI_FIFO1_ETM_bytecount_Msk (0x3UL << TPI_FIFO1_ETM_bytecount_Pos) /*!< TPI FIFO1: ETM_bytecount Mask */ + +#define TPI_FIFO1_ITM2_Pos 16U /*!< TPI FIFO1: ITM2 Position */ +#define TPI_FIFO1_ITM2_Msk (0xFFUL << TPI_FIFO1_ITM2_Pos) /*!< TPI FIFO1: ITM2 Mask */ + +#define TPI_FIFO1_ITM1_Pos 8U /*!< TPI FIFO1: ITM1 Position */ +#define TPI_FIFO1_ITM1_Msk (0xFFUL << TPI_FIFO1_ITM1_Pos) /*!< TPI FIFO1: ITM1 Mask */ + +#define TPI_FIFO1_ITM0_Pos 0U /*!< TPI FIFO1: ITM0 Position */ +#define TPI_FIFO1_ITM0_Msk (0xFFUL /*<< TPI_FIFO1_ITM0_Pos*/) /*!< TPI FIFO1: ITM0 Mask */ + +/* TPI ITATBCTR0 Register Definitions */ +#define TPI_ITATBCTR0_ATREADY2_Pos 0U /*!< TPI ITATBCTR0: ATREADY2 Position */ +#define TPI_ITATBCTR0_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2_Pos*/) /*!< TPI ITATBCTR0: ATREADY2 Mask */ + +#define TPI_ITATBCTR0_ATREADY1_Pos 0U /*!< TPI ITATBCTR0: ATREADY1 Position */ +#define TPI_ITATBCTR0_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1_Pos*/) /*!< TPI ITATBCTR0: ATREADY1 Mask */ + +/* TPI Integration Mode Control Register Definitions */ +#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ +#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ + +/* TPI DEVID Register Definitions */ +#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ +#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ + +#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ +#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ + +#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ +#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ + +#define TPI_DEVID_MinBufSz_Pos 6U /*!< TPI DEVID: MinBufSz Position */ +#define TPI_DEVID_MinBufSz_Msk (0x7UL << TPI_DEVID_MinBufSz_Pos) /*!< TPI DEVID: MinBufSz Mask */ + +#define TPI_DEVID_AsynClkIn_Pos 5U /*!< TPI DEVID: AsynClkIn Position */ +#define TPI_DEVID_AsynClkIn_Msk (0x1UL << TPI_DEVID_AsynClkIn_Pos) /*!< TPI DEVID: AsynClkIn Mask */ + +#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ +#define TPI_DEVID_NrTraceInput_Msk (0x1FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ + +/* TPI DEVTYPE Register Definitions */ +#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ +#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ + +#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ +#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ + +/*@}*/ /* end of group CMSIS_TPI */ + + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_MPU Memory Protection Unit (MPU) + \brief Type definitions for the Memory Protection Unit (MPU) + @{ + */ + +/** + \brief Structure type to access the Memory Protection Unit (MPU). + */ +typedef struct +{ + __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ + __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ + __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ + __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Alias 1 Region Base Address Register */ + __IOM uint32_t RASR_A1; /*!< Offset: 0x018 (R/W) MPU Alias 1 Region Attribute and Size Register */ + __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Alias 2 Region Base Address Register */ + __IOM uint32_t RASR_A2; /*!< Offset: 0x020 (R/W) MPU Alias 2 Region Attribute and Size Register */ + __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Alias 3 Region Base Address Register */ + __IOM uint32_t RASR_A3; /*!< Offset: 0x028 (R/W) MPU Alias 3 Region Attribute and Size Register */ +} MPU_Type; + +#define MPU_TYPE_RALIASES 4U + +/* MPU Type Register Definitions */ +#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ +#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ + +#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ +#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ + +#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ +#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ + +/* MPU Control Register Definitions */ +#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ +#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ + +#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ +#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ + +#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ +#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ + +/* MPU Region Number Register Definitions */ +#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ +#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ + +/* MPU Region Base Address Register Definitions */ +#define MPU_RBAR_ADDR_Pos 5U /*!< MPU RBAR: ADDR Position */ +#define MPU_RBAR_ADDR_Msk (0x7FFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ + +#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ +#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ + +#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ +#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ + +/* MPU Region Attribute and Size Register Definitions */ +#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ +#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ + +#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ +#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ + +#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ +#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ + +#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ +#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ + +#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ +#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ + +#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ +#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ + +#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ +#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ + +#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ +#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ + +#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ +#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ + +#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ +#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ + +/*@} end of group CMSIS_MPU */ +#endif /* defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_FPU Floating Point Unit (FPU) + \brief Type definitions for the Floating Point Unit (FPU) + @{ + */ + +/** + \brief Structure type to access the Floating Point Unit (FPU). + */ +typedef struct +{ + uint32_t RESERVED0[1U]; + __IOM uint32_t FPCCR; /*!< Offset: 0x004 (R/W) Floating-Point Context Control Register */ + __IOM uint32_t FPCAR; /*!< Offset: 0x008 (R/W) Floating-Point Context Address Register */ + __IOM uint32_t FPDSCR; /*!< Offset: 0x00C (R/W) Floating-Point Default Status Control Register */ + __IM uint32_t MVFR0; /*!< Offset: 0x010 (R/ ) Media and FP Feature Register 0 */ + __IM uint32_t MVFR1; /*!< Offset: 0x014 (R/ ) Media and FP Feature Register 1 */ +} FPU_Type; + +/* Floating-Point Context Control Register Definitions */ +#define FPU_FPCCR_ASPEN_Pos 31U /*!< FPCCR: ASPEN bit Position */ +#define FPU_FPCCR_ASPEN_Msk (1UL << FPU_FPCCR_ASPEN_Pos) /*!< FPCCR: ASPEN bit Mask */ + +#define FPU_FPCCR_LSPEN_Pos 30U /*!< FPCCR: LSPEN Position */ +#define FPU_FPCCR_LSPEN_Msk (1UL << FPU_FPCCR_LSPEN_Pos) /*!< FPCCR: LSPEN bit Mask */ + +#define FPU_FPCCR_MONRDY_Pos 8U /*!< FPCCR: MONRDY Position */ +#define FPU_FPCCR_MONRDY_Msk (1UL << FPU_FPCCR_MONRDY_Pos) /*!< FPCCR: MONRDY bit Mask */ + +#define FPU_FPCCR_BFRDY_Pos 6U /*!< FPCCR: BFRDY Position */ +#define FPU_FPCCR_BFRDY_Msk (1UL << FPU_FPCCR_BFRDY_Pos) /*!< FPCCR: BFRDY bit Mask */ + +#define FPU_FPCCR_MMRDY_Pos 5U /*!< FPCCR: MMRDY Position */ +#define FPU_FPCCR_MMRDY_Msk (1UL << FPU_FPCCR_MMRDY_Pos) /*!< FPCCR: MMRDY bit Mask */ + +#define FPU_FPCCR_HFRDY_Pos 4U /*!< FPCCR: HFRDY Position */ +#define FPU_FPCCR_HFRDY_Msk (1UL << FPU_FPCCR_HFRDY_Pos) /*!< FPCCR: HFRDY bit Mask */ + +#define FPU_FPCCR_THREAD_Pos 3U /*!< FPCCR: processor mode bit Position */ +#define FPU_FPCCR_THREAD_Msk (1UL << FPU_FPCCR_THREAD_Pos) /*!< FPCCR: processor mode active bit Mask */ + +#define FPU_FPCCR_USER_Pos 1U /*!< FPCCR: privilege level bit Position */ +#define FPU_FPCCR_USER_Msk (1UL << FPU_FPCCR_USER_Pos) /*!< FPCCR: privilege level bit Mask */ + +#define FPU_FPCCR_LSPACT_Pos 0U /*!< FPCCR: Lazy state preservation active bit Position */ +#define FPU_FPCCR_LSPACT_Msk (1UL /*<< FPU_FPCCR_LSPACT_Pos*/) /*!< FPCCR: Lazy state preservation active bit Mask */ + +/* Floating-Point Context Address Register Definitions */ +#define FPU_FPCAR_ADDRESS_Pos 3U /*!< FPCAR: ADDRESS bit Position */ +#define FPU_FPCAR_ADDRESS_Msk (0x1FFFFFFFUL << FPU_FPCAR_ADDRESS_Pos) /*!< FPCAR: ADDRESS bit Mask */ + +/* Floating-Point Default Status Control Register Definitions */ +#define FPU_FPDSCR_AHP_Pos 26U /*!< FPDSCR: AHP bit Position */ +#define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos) /*!< FPDSCR: AHP bit Mask */ + +#define FPU_FPDSCR_DN_Pos 25U /*!< FPDSCR: DN bit Position */ +#define FPU_FPDSCR_DN_Msk (1UL << FPU_FPDSCR_DN_Pos) /*!< FPDSCR: DN bit Mask */ + +#define FPU_FPDSCR_FZ_Pos 24U /*!< FPDSCR: FZ bit Position */ +#define FPU_FPDSCR_FZ_Msk (1UL << FPU_FPDSCR_FZ_Pos) /*!< FPDSCR: FZ bit Mask */ + +#define FPU_FPDSCR_RMode_Pos 22U /*!< FPDSCR: RMode bit Position */ +#define FPU_FPDSCR_RMode_Msk (3UL << FPU_FPDSCR_RMode_Pos) /*!< FPDSCR: RMode bit Mask */ + +/* Media and FP Feature Register 0 Definitions */ +#define FPU_MVFR0_FP_rounding_modes_Pos 28U /*!< MVFR0: FP rounding modes bits Position */ +#define FPU_MVFR0_FP_rounding_modes_Msk (0xFUL << FPU_MVFR0_FP_rounding_modes_Pos) /*!< MVFR0: FP rounding modes bits Mask */ + +#define FPU_MVFR0_Short_vectors_Pos 24U /*!< MVFR0: Short vectors bits Position */ +#define FPU_MVFR0_Short_vectors_Msk (0xFUL << FPU_MVFR0_Short_vectors_Pos) /*!< MVFR0: Short vectors bits Mask */ + +#define FPU_MVFR0_Square_root_Pos 20U /*!< MVFR0: Square root bits Position */ +#define FPU_MVFR0_Square_root_Msk (0xFUL << FPU_MVFR0_Square_root_Pos) /*!< MVFR0: Square root bits Mask */ + +#define FPU_MVFR0_Divide_Pos 16U /*!< MVFR0: Divide bits Position */ +#define FPU_MVFR0_Divide_Msk (0xFUL << FPU_MVFR0_Divide_Pos) /*!< MVFR0: Divide bits Mask */ + +#define FPU_MVFR0_FP_excep_trapping_Pos 12U /*!< MVFR0: FP exception trapping bits Position */ +#define FPU_MVFR0_FP_excep_trapping_Msk (0xFUL << FPU_MVFR0_FP_excep_trapping_Pos) /*!< MVFR0: FP exception trapping bits Mask */ + +#define FPU_MVFR0_Double_precision_Pos 8U /*!< MVFR0: Double-precision bits Position */ +#define FPU_MVFR0_Double_precision_Msk (0xFUL << FPU_MVFR0_Double_precision_Pos) /*!< MVFR0: Double-precision bits Mask */ + +#define FPU_MVFR0_Single_precision_Pos 4U /*!< MVFR0: Single-precision bits Position */ +#define FPU_MVFR0_Single_precision_Msk (0xFUL << FPU_MVFR0_Single_precision_Pos) /*!< MVFR0: Single-precision bits Mask */ + +#define FPU_MVFR0_A_SIMD_registers_Pos 0U /*!< MVFR0: A_SIMD registers bits Position */ +#define FPU_MVFR0_A_SIMD_registers_Msk (0xFUL /*<< FPU_MVFR0_A_SIMD_registers_Pos*/) /*!< MVFR0: A_SIMD registers bits Mask */ + +/* Media and FP Feature Register 1 Definitions */ +#define FPU_MVFR1_FP_fused_MAC_Pos 28U /*!< MVFR1: FP fused MAC bits Position */ +#define FPU_MVFR1_FP_fused_MAC_Msk (0xFUL << FPU_MVFR1_FP_fused_MAC_Pos) /*!< MVFR1: FP fused MAC bits Mask */ + +#define FPU_MVFR1_FP_HPFP_Pos 24U /*!< MVFR1: FP HPFP bits Position */ +#define FPU_MVFR1_FP_HPFP_Msk (0xFUL << FPU_MVFR1_FP_HPFP_Pos) /*!< MVFR1: FP HPFP bits Mask */ + +#define FPU_MVFR1_D_NaN_mode_Pos 4U /*!< MVFR1: D_NaN mode bits Position */ +#define FPU_MVFR1_D_NaN_mode_Msk (0xFUL << FPU_MVFR1_D_NaN_mode_Pos) /*!< MVFR1: D_NaN mode bits Mask */ + +#define FPU_MVFR1_FtZ_mode_Pos 0U /*!< MVFR1: FtZ mode bits Position */ +#define FPU_MVFR1_FtZ_mode_Msk (0xFUL /*<< FPU_MVFR1_FtZ_mode_Pos*/) /*!< MVFR1: FtZ mode bits Mask */ + +/*@} end of group CMSIS_FPU */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief Type definitions for the Core Debug Registers + @{ + */ + +/** + \brief Structure type to access the Core Debug Register (CoreDebug). + */ +typedef struct +{ + __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ + __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ + __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ + __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ +} CoreDebug_Type; + +/* Debug Halting Control and Status Register Definitions */ +#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ +#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ + +#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ +#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ + +#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ +#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ + +#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ +#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ + +#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ +#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ + +#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ +#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ + +#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ +#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ + +#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ +#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ + +#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ +#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ + +#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ +#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ + +#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ +#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ + +#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ +#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ + +/* Debug Core Register Selector Register Definitions */ +#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ +#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ + +#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ +#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ + +/* Debug Exception and Monitor Control Register Definitions */ +#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ +#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ + +#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ +#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ + +#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ +#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ + +#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ +#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ + +#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ +#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ + +#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ +#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ + +#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ +#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ + +#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ +#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ + +#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ +#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ + +#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ +#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ + +#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ +#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ + +#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ +#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ + +#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ +#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ + +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ +#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ +#define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ +#define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ +#define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ +#define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ +#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ +#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ +#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + +#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ +#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ +#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ +#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ +#define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ +#define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ +#define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ +#define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE) /*!< Core Debug configuration struct */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ + #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ +#endif + +#define FPU_BASE (SCS_BASE + 0x0F30UL) /*!< Floating Point Unit */ +#define FPU ((FPU_Type *) FPU_BASE ) /*!< Floating Point Unit */ + +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Debug Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping + #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ + #define NVIC_GetActive __NVIC_GetActive + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* The following EXC_RETURN values are saved the LR on exception entry */ +#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ +#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ +#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ +#define EXC_RETURN_HANDLER_FPU (0xFFFFFFE1UL) /* return to Handler mode, uses MSP after return, restore floating-point state */ +#define EXC_RETURN_THREAD_MSP_FPU (0xFFFFFFE9UL) /* return to Thread mode, uses MSP after return, restore floating-point state */ +#define EXC_RETURN_THREAD_PSP_FPU (0xFFFFFFEDUL) /* return to Thread mode, uses PSP after return, restore floating-point state */ + + +/** + \brief Set Priority Grouping + \details Sets the priority grouping field using the required unlock sequence. + The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. + Only values from 0..7 are used. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Priority grouping field. + */ +__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) +{ + uint32_t reg_value; + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + + reg_value = SCB->AIRCR; /* read old register configuration */ + reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ + reg_value = (reg_value | + ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (PriorityGroupTmp << SCB_AIRCR_PRIGROUP_Pos) ); /* Insert write key and priority group */ + SCB->AIRCR = reg_value; +} + + +/** + \brief Get Priority Grouping + \details Reads the priority grouping field from the NVIC Interrupt Controller. + \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). + */ +__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) +{ + return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); +} + + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt + \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } + else + { + SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return(((uint32_t)NVIC->IP[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return(((uint32_t)SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Encode Priority + \details Encodes the priority for an interrupt with the given priority group, + preemptive priority value, and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Used priority group. + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + ); +} + + +/** + \brief Decode Priority + \details Decodes an interrupt priority value with a given priority group to + preemptive priority value and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. + \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). + \param [in] PriorityGroup Used priority group. + \param [out] pPreemptPriority Preemptive priority value (starting from 0). + \param [out] pSubPriority Subpriority value (starting from 0). + */ +__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); + *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); +} + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + VTOR must been relocated to SRAM before. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | + SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +/*@} end of CMSIS_Core_NVICFunctions */ + +/* ########################## MPU functions #################################### */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + +#include "mpu_armv7.h" + +#endif + + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + uint32_t mvfr0; + + mvfr0 = FPU->MVFR0; + if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x020U) + { + return 1U; /* Single precision FPU */ + } + else + { + return 0U; /* No FPU */ + } +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + +/* ##################################### Debug In/Output function ########################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_core_DebugFunctions ITM Functions + \brief Functions that access the ITM debug interface. + @{ + */ + +extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ +#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ + + +/** + \brief ITM Send Character + \details Transmits a character via the ITM channel 0, and + \li Just returns when no debugger is connected that has booked the output. + \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. + \param [in] ch Character to transmit. + \returns Character to transmit. + */ +__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) +{ + if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ + ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ + { + while (ITM->PORT[0U].u32 == 0UL) + { + __NOP(); + } + ITM->PORT[0U].u8 = (uint8_t)ch; + } + return (ch); +} + + +/** + \brief ITM Receive Character + \details Inputs a character via the external variable \ref ITM_RxBuffer. + \return Received character. + \return -1 No character pending. + */ +__STATIC_INLINE int32_t ITM_ReceiveChar (void) +{ + int32_t ch = -1; /* no character available */ + + if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) + { + ch = ITM_RxBuffer; + ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ + } + + return (ch); +} + + +/** + \brief ITM Check Character + \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. + \return 0 No character available. + \return 1 Character available. + */ +__STATIC_INLINE int32_t ITM_CheckChar (void) +{ + + if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) + { + return (0); /* no character available */ + } + else + { + return (1); /* character available */ + } +} + +/*@} end of CMSIS_core_DebugFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM4_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/core_cm7.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm7.h similarity index 98% rename from stm32f103/Drivers/CMSIS/Include/core_cm7.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_cm7.h index ada6c2a..a14dc62 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_cm7.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_cm7.h @@ -1,2671 +1,2671 @@ -/**************************************************************************//** - * @file core_cm7.h - * @brief CMSIS Cortex-M7 Core Peripheral Access Layer Header File - * @version V5.0.8 - * @date 04. June 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_CM7_H_GENERIC -#define __CORE_CM7_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup Cortex_M7 - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS CM7 definitions */ -#define __CM7_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __CM7_CMSIS_VERSION_SUB ( __CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __CM7_CMSIS_VERSION ((__CM7_CMSIS_VERSION_MAIN << 16U) | \ - __CM7_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_M (7U) /*!< Cortex-M Core */ - -/** __FPU_USED indicates whether an FPU is used or not. - For this, __FPU_PRESENT has to be checked prior to making use of FPU specific registers and functions. -*/ -#if defined ( __CC_ARM ) - #if defined __TARGET_FPU_VFP - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined __ARM_PCS_VFP - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #warning "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __ICCARM__ ) - #if defined __ARMVFP__ - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __TI_ARM__ ) - #if defined __TI_VFP_SUPPORT__ - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __TASKING__ ) - #if defined __FPU_VFP__ - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) - #define __FPU_USED 1U - #else - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #define __FPU_USED 0U - #endif - #else - #define __FPU_USED 0U - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM7_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_CM7_H_DEPENDANT -#define __CORE_CM7_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __CM7_REV - #define __CM7_REV 0x0000U - #warning "__CM7_REV not defined in device header file; using default!" - #endif - - #ifndef __FPU_PRESENT - #define __FPU_PRESENT 0U - #warning "__FPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __MPU_PRESENT - #define __MPU_PRESENT 0U - #warning "__MPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __ICACHE_PRESENT - #define __ICACHE_PRESENT 0U - #warning "__ICACHE_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __DCACHE_PRESENT - #define __DCACHE_PRESENT 0U - #warning "__DCACHE_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __DTCM_PRESENT - #define __DTCM_PRESENT 0U - #warning "__DTCM_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 3U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group Cortex_M7 */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - - Core Debug Register - - Core MPU Register - - Core FPU Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:16; /*!< bit: 0..15 Reserved */ - uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ - uint32_t _reserved1:7; /*!< bit: 20..26 Reserved */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - -#define APSR_Q_Pos 27U /*!< APSR: Q Position */ -#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ - -#define APSR_GE_Pos 16U /*!< APSR: GE Position */ -#define APSR_GE_Msk (0xFUL << APSR_GE_Pos) /*!< APSR: GE Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:1; /*!< bit: 9 Reserved */ - uint32_t ICI_IT_1:6; /*!< bit: 10..15 ICI/IT part 1 */ - uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ - uint32_t _reserved1:4; /*!< bit: 20..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit */ - uint32_t ICI_IT_2:2; /*!< bit: 25..26 ICI/IT part 2 */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ -#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ - -#define xPSR_ICI_IT_2_Pos 25U /*!< xPSR: ICI/IT part 2 Position */ -#define xPSR_ICI_IT_2_Msk (3UL << xPSR_ICI_IT_2_Pos) /*!< xPSR: ICI/IT part 2 Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_GE_Pos 16U /*!< xPSR: GE Position */ -#define xPSR_GE_Msk (0xFUL << xPSR_GE_Pos) /*!< xPSR: GE Mask */ - -#define xPSR_ICI_IT_1_Pos 10U /*!< xPSR: ICI/IT part 1 Position */ -#define xPSR_ICI_IT_1_Msk (0x3FUL << xPSR_ICI_IT_1_Pos) /*!< xPSR: ICI/IT part 1 Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ - uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ - uint32_t FPCA:1; /*!< bit: 2 FP extension active flag */ - uint32_t _reserved0:29; /*!< bit: 3..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_FPCA_Pos 2U /*!< CONTROL: FPCA Position */ -#define CONTROL_FPCA_Msk (1UL << CONTROL_FPCA_Pos) /*!< CONTROL: FPCA Mask */ - -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ -#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[8U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[24U]; - __IOM uint32_t ICER[8U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[24U]; - __IOM uint32_t ISPR[8U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[24U]; - __IOM uint32_t ICPR[8U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[24U]; - __IOM uint32_t IABR[8U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ - uint32_t RESERVED4[56U]; - __IOM uint8_t IP[240U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ - uint32_t RESERVED5[644U]; - __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ -} NVIC_Type; - -/* Software Triggered Interrupt Register Definitions */ -#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ -#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ - __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - __IOM uint8_t SHPR[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ - __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ - __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ - __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ - __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ - __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ - __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ - __IM uint32_t ID_PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ - __IM uint32_t ID_DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ - __IM uint32_t ID_AFR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ - __IM uint32_t ID_MFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ - __IM uint32_t ID_ISAR[5U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ - uint32_t RESERVED0[1U]; - __IM uint32_t CLIDR; /*!< Offset: 0x078 (R/ ) Cache Level ID register */ - __IM uint32_t CTR; /*!< Offset: 0x07C (R/ ) Cache Type register */ - __IM uint32_t CCSIDR; /*!< Offset: 0x080 (R/ ) Cache Size ID Register */ - __IOM uint32_t CSSELR; /*!< Offset: 0x084 (R/W) Cache Size Selection Register */ - __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ - uint32_t RESERVED3[93U]; - __OM uint32_t STIR; /*!< Offset: 0x200 ( /W) Software Triggered Interrupt Register */ - uint32_t RESERVED4[15U]; - __IM uint32_t MVFR0; /*!< Offset: 0x240 (R/ ) Media and VFP Feature Register 0 */ - __IM uint32_t MVFR1; /*!< Offset: 0x244 (R/ ) Media and VFP Feature Register 1 */ - __IM uint32_t MVFR2; /*!< Offset: 0x248 (R/ ) Media and VFP Feature Register 2 */ - uint32_t RESERVED5[1U]; - __OM uint32_t ICIALLU; /*!< Offset: 0x250 ( /W) I-Cache Invalidate All to PoU */ - uint32_t RESERVED6[1U]; - __OM uint32_t ICIMVAU; /*!< Offset: 0x258 ( /W) I-Cache Invalidate by MVA to PoU */ - __OM uint32_t DCIMVAC; /*!< Offset: 0x25C ( /W) D-Cache Invalidate by MVA to PoC */ - __OM uint32_t DCISW; /*!< Offset: 0x260 ( /W) D-Cache Invalidate by Set-way */ - __OM uint32_t DCCMVAU; /*!< Offset: 0x264 ( /W) D-Cache Clean by MVA to PoU */ - __OM uint32_t DCCMVAC; /*!< Offset: 0x268 ( /W) D-Cache Clean by MVA to PoC */ - __OM uint32_t DCCSW; /*!< Offset: 0x26C ( /W) D-Cache Clean by Set-way */ - __OM uint32_t DCCIMVAC; /*!< Offset: 0x270 ( /W) D-Cache Clean and Invalidate by MVA to PoC */ - __OM uint32_t DCCISW; /*!< Offset: 0x274 ( /W) D-Cache Clean and Invalidate by Set-way */ - uint32_t RESERVED7[6U]; - __IOM uint32_t ITCMCR; /*!< Offset: 0x290 (R/W) Instruction Tightly-Coupled Memory Control Register */ - __IOM uint32_t DTCMCR; /*!< Offset: 0x294 (R/W) Data Tightly-Coupled Memory Control Registers */ - __IOM uint32_t AHBPCR; /*!< Offset: 0x298 (R/W) AHBP Control Register */ - __IOM uint32_t CACR; /*!< Offset: 0x29C (R/W) L1 Cache Control Register */ - __IOM uint32_t AHBSCR; /*!< Offset: 0x2A0 (R/W) AHB Slave Control Register */ - uint32_t RESERVED8[1U]; - __IOM uint32_t ABFSR; /*!< Offset: 0x2A8 (R/W) Auxiliary Bus Fault Status Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ -#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ -#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -/* SCB Vector Table Offset Register Definitions */ -#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ -#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ -#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -#define SCB_AIRCR_VECTRESET_Pos 0U /*!< SCB AIRCR: VECTRESET Position */ -#define SCB_AIRCR_VECTRESET_Msk (1UL /*<< SCB_AIRCR_VECTRESET_Pos*/) /*!< SCB AIRCR: VECTRESET Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_BP_Pos 18U /*!< SCB CCR: Branch prediction enable bit Position */ -#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos) /*!< SCB CCR: Branch prediction enable bit Mask */ - -#define SCB_CCR_IC_Pos 17U /*!< SCB CCR: Instruction cache enable bit Position */ -#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos) /*!< SCB CCR: Instruction cache enable bit Mask */ - -#define SCB_CCR_DC_Pos 16U /*!< SCB CCR: Cache enable bit Position */ -#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos) /*!< SCB CCR: Cache enable bit Mask */ - -#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ -#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ - -#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ -#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ - -#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ -#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ -#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ - -#define SCB_CCR_NONBASETHRDENA_Pos 0U /*!< SCB CCR: NONBASETHRDENA Position */ -#define SCB_CCR_NONBASETHRDENA_Msk (1UL /*<< SCB_CCR_NONBASETHRDENA_Pos*/) /*!< SCB CCR: NONBASETHRDENA Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ -#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ - -#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ -#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ - -#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ -#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ - -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ -#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ - -#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ -#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ - -#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ -#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ - -#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ -#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ - -#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ -#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ - -#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ -#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ - -#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ -#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ - -#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ -#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ - -#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ -#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ - -#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ -#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ - -/* SCB Configurable Fault Status Register Definitions */ -#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ -#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ - -#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ -#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ - -#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ -#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ - -/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ -#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ - -#define SCB_CFSR_MLSPERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 5U) /*!< SCB CFSR (MMFSR): MLSPERR Position */ -#define SCB_CFSR_MLSPERR_Msk (1UL << SCB_CFSR_MLSPERR_Pos) /*!< SCB CFSR (MMFSR): MLSPERR Mask */ - -#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ -#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ - -#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ -#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ - -#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ -#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ - -#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ -#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ - -/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ -#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ - -#define SCB_CFSR_LSPERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 5U) /*!< SCB CFSR (BFSR): LSPERR Position */ -#define SCB_CFSR_LSPERR_Msk (1UL << SCB_CFSR_LSPERR_Pos) /*!< SCB CFSR (BFSR): LSPERR Mask */ - -#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ -#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ - -#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ -#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ - -#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ -#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ - -#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ -#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ - -#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ -#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ - -/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ -#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ - -#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ -#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ - -#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ -#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ - -#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ -#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ - -#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ -#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ - -#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ -#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ - -/* SCB Hard Fault Status Register Definitions */ -#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ -#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ - -#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ -#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ - -#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ -#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ - -/* SCB Debug Fault Status Register Definitions */ -#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ -#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ - -#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ -#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ - -#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ -#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ - -#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ -#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ - -#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ -#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ - -/* SCB Cache Level ID Register Definitions */ -#define SCB_CLIDR_LOUU_Pos 27U /*!< SCB CLIDR: LoUU Position */ -#define SCB_CLIDR_LOUU_Msk (7UL << SCB_CLIDR_LOUU_Pos) /*!< SCB CLIDR: LoUU Mask */ - -#define SCB_CLIDR_LOC_Pos 24U /*!< SCB CLIDR: LoC Position */ -#define SCB_CLIDR_LOC_Msk (7UL << SCB_CLIDR_LOC_Pos) /*!< SCB CLIDR: LoC Mask */ - -/* SCB Cache Type Register Definitions */ -#define SCB_CTR_FORMAT_Pos 29U /*!< SCB CTR: Format Position */ -#define SCB_CTR_FORMAT_Msk (7UL << SCB_CTR_FORMAT_Pos) /*!< SCB CTR: Format Mask */ - -#define SCB_CTR_CWG_Pos 24U /*!< SCB CTR: CWG Position */ -#define SCB_CTR_CWG_Msk (0xFUL << SCB_CTR_CWG_Pos) /*!< SCB CTR: CWG Mask */ - -#define SCB_CTR_ERG_Pos 20U /*!< SCB CTR: ERG Position */ -#define SCB_CTR_ERG_Msk (0xFUL << SCB_CTR_ERG_Pos) /*!< SCB CTR: ERG Mask */ - -#define SCB_CTR_DMINLINE_Pos 16U /*!< SCB CTR: DminLine Position */ -#define SCB_CTR_DMINLINE_Msk (0xFUL << SCB_CTR_DMINLINE_Pos) /*!< SCB CTR: DminLine Mask */ - -#define SCB_CTR_IMINLINE_Pos 0U /*!< SCB CTR: ImInLine Position */ -#define SCB_CTR_IMINLINE_Msk (0xFUL /*<< SCB_CTR_IMINLINE_Pos*/) /*!< SCB CTR: ImInLine Mask */ - -/* SCB Cache Size ID Register Definitions */ -#define SCB_CCSIDR_WT_Pos 31U /*!< SCB CCSIDR: WT Position */ -#define SCB_CCSIDR_WT_Msk (1UL << SCB_CCSIDR_WT_Pos) /*!< SCB CCSIDR: WT Mask */ - -#define SCB_CCSIDR_WB_Pos 30U /*!< SCB CCSIDR: WB Position */ -#define SCB_CCSIDR_WB_Msk (1UL << SCB_CCSIDR_WB_Pos) /*!< SCB CCSIDR: WB Mask */ - -#define SCB_CCSIDR_RA_Pos 29U /*!< SCB CCSIDR: RA Position */ -#define SCB_CCSIDR_RA_Msk (1UL << SCB_CCSIDR_RA_Pos) /*!< SCB CCSIDR: RA Mask */ - -#define SCB_CCSIDR_WA_Pos 28U /*!< SCB CCSIDR: WA Position */ -#define SCB_CCSIDR_WA_Msk (1UL << SCB_CCSIDR_WA_Pos) /*!< SCB CCSIDR: WA Mask */ - -#define SCB_CCSIDR_NUMSETS_Pos 13U /*!< SCB CCSIDR: NumSets Position */ -#define SCB_CCSIDR_NUMSETS_Msk (0x7FFFUL << SCB_CCSIDR_NUMSETS_Pos) /*!< SCB CCSIDR: NumSets Mask */ - -#define SCB_CCSIDR_ASSOCIATIVITY_Pos 3U /*!< SCB CCSIDR: Associativity Position */ -#define SCB_CCSIDR_ASSOCIATIVITY_Msk (0x3FFUL << SCB_CCSIDR_ASSOCIATIVITY_Pos) /*!< SCB CCSIDR: Associativity Mask */ - -#define SCB_CCSIDR_LINESIZE_Pos 0U /*!< SCB CCSIDR: LineSize Position */ -#define SCB_CCSIDR_LINESIZE_Msk (7UL /*<< SCB_CCSIDR_LINESIZE_Pos*/) /*!< SCB CCSIDR: LineSize Mask */ - -/* SCB Cache Size Selection Register Definitions */ -#define SCB_CSSELR_LEVEL_Pos 1U /*!< SCB CSSELR: Level Position */ -#define SCB_CSSELR_LEVEL_Msk (7UL << SCB_CSSELR_LEVEL_Pos) /*!< SCB CSSELR: Level Mask */ - -#define SCB_CSSELR_IND_Pos 0U /*!< SCB CSSELR: InD Position */ -#define SCB_CSSELR_IND_Msk (1UL /*<< SCB_CSSELR_IND_Pos*/) /*!< SCB CSSELR: InD Mask */ - -/* SCB Software Triggered Interrupt Register Definitions */ -#define SCB_STIR_INTID_Pos 0U /*!< SCB STIR: INTID Position */ -#define SCB_STIR_INTID_Msk (0x1FFUL /*<< SCB_STIR_INTID_Pos*/) /*!< SCB STIR: INTID Mask */ - -/* SCB D-Cache Invalidate by Set-way Register Definitions */ -#define SCB_DCISW_WAY_Pos 30U /*!< SCB DCISW: Way Position */ -#define SCB_DCISW_WAY_Msk (3UL << SCB_DCISW_WAY_Pos) /*!< SCB DCISW: Way Mask */ - -#define SCB_DCISW_SET_Pos 5U /*!< SCB DCISW: Set Position */ -#define SCB_DCISW_SET_Msk (0x1FFUL << SCB_DCISW_SET_Pos) /*!< SCB DCISW: Set Mask */ - -/* SCB D-Cache Clean by Set-way Register Definitions */ -#define SCB_DCCSW_WAY_Pos 30U /*!< SCB DCCSW: Way Position */ -#define SCB_DCCSW_WAY_Msk (3UL << SCB_DCCSW_WAY_Pos) /*!< SCB DCCSW: Way Mask */ - -#define SCB_DCCSW_SET_Pos 5U /*!< SCB DCCSW: Set Position */ -#define SCB_DCCSW_SET_Msk (0x1FFUL << SCB_DCCSW_SET_Pos) /*!< SCB DCCSW: Set Mask */ - -/* SCB D-Cache Clean and Invalidate by Set-way Register Definitions */ -#define SCB_DCCISW_WAY_Pos 30U /*!< SCB DCCISW: Way Position */ -#define SCB_DCCISW_WAY_Msk (3UL << SCB_DCCISW_WAY_Pos) /*!< SCB DCCISW: Way Mask */ - -#define SCB_DCCISW_SET_Pos 5U /*!< SCB DCCISW: Set Position */ -#define SCB_DCCISW_SET_Msk (0x1FFUL << SCB_DCCISW_SET_Pos) /*!< SCB DCCISW: Set Mask */ - -/* Instruction Tightly-Coupled Memory Control Register Definitions */ -#define SCB_ITCMCR_SZ_Pos 3U /*!< SCB ITCMCR: SZ Position */ -#define SCB_ITCMCR_SZ_Msk (0xFUL << SCB_ITCMCR_SZ_Pos) /*!< SCB ITCMCR: SZ Mask */ - -#define SCB_ITCMCR_RETEN_Pos 2U /*!< SCB ITCMCR: RETEN Position */ -#define SCB_ITCMCR_RETEN_Msk (1UL << SCB_ITCMCR_RETEN_Pos) /*!< SCB ITCMCR: RETEN Mask */ - -#define SCB_ITCMCR_RMW_Pos 1U /*!< SCB ITCMCR: RMW Position */ -#define SCB_ITCMCR_RMW_Msk (1UL << SCB_ITCMCR_RMW_Pos) /*!< SCB ITCMCR: RMW Mask */ - -#define SCB_ITCMCR_EN_Pos 0U /*!< SCB ITCMCR: EN Position */ -#define SCB_ITCMCR_EN_Msk (1UL /*<< SCB_ITCMCR_EN_Pos*/) /*!< SCB ITCMCR: EN Mask */ - -/* Data Tightly-Coupled Memory Control Register Definitions */ -#define SCB_DTCMCR_SZ_Pos 3U /*!< SCB DTCMCR: SZ Position */ -#define SCB_DTCMCR_SZ_Msk (0xFUL << SCB_DTCMCR_SZ_Pos) /*!< SCB DTCMCR: SZ Mask */ - -#define SCB_DTCMCR_RETEN_Pos 2U /*!< SCB DTCMCR: RETEN Position */ -#define SCB_DTCMCR_RETEN_Msk (1UL << SCB_DTCMCR_RETEN_Pos) /*!< SCB DTCMCR: RETEN Mask */ - -#define SCB_DTCMCR_RMW_Pos 1U /*!< SCB DTCMCR: RMW Position */ -#define SCB_DTCMCR_RMW_Msk (1UL << SCB_DTCMCR_RMW_Pos) /*!< SCB DTCMCR: RMW Mask */ - -#define SCB_DTCMCR_EN_Pos 0U /*!< SCB DTCMCR: EN Position */ -#define SCB_DTCMCR_EN_Msk (1UL /*<< SCB_DTCMCR_EN_Pos*/) /*!< SCB DTCMCR: EN Mask */ - -/* AHBP Control Register Definitions */ -#define SCB_AHBPCR_SZ_Pos 1U /*!< SCB AHBPCR: SZ Position */ -#define SCB_AHBPCR_SZ_Msk (7UL << SCB_AHBPCR_SZ_Pos) /*!< SCB AHBPCR: SZ Mask */ - -#define SCB_AHBPCR_EN_Pos 0U /*!< SCB AHBPCR: EN Position */ -#define SCB_AHBPCR_EN_Msk (1UL /*<< SCB_AHBPCR_EN_Pos*/) /*!< SCB AHBPCR: EN Mask */ - -/* L1 Cache Control Register Definitions */ -#define SCB_CACR_FORCEWT_Pos 2U /*!< SCB CACR: FORCEWT Position */ -#define SCB_CACR_FORCEWT_Msk (1UL << SCB_CACR_FORCEWT_Pos) /*!< SCB CACR: FORCEWT Mask */ - -#define SCB_CACR_ECCEN_Pos 1U /*!< SCB CACR: ECCEN Position */ -#define SCB_CACR_ECCEN_Msk (1UL << SCB_CACR_ECCEN_Pos) /*!< SCB CACR: ECCEN Mask */ - -#define SCB_CACR_SIWT_Pos 0U /*!< SCB CACR: SIWT Position */ -#define SCB_CACR_SIWT_Msk (1UL /*<< SCB_CACR_SIWT_Pos*/) /*!< SCB CACR: SIWT Mask */ - -/* AHBS Control Register Definitions */ -#define SCB_AHBSCR_INITCOUNT_Pos 11U /*!< SCB AHBSCR: INITCOUNT Position */ -#define SCB_AHBSCR_INITCOUNT_Msk (0x1FUL << SCB_AHBPCR_INITCOUNT_Pos) /*!< SCB AHBSCR: INITCOUNT Mask */ - -#define SCB_AHBSCR_TPRI_Pos 2U /*!< SCB AHBSCR: TPRI Position */ -#define SCB_AHBSCR_TPRI_Msk (0x1FFUL << SCB_AHBPCR_TPRI_Pos) /*!< SCB AHBSCR: TPRI Mask */ - -#define SCB_AHBSCR_CTL_Pos 0U /*!< SCB AHBSCR: CTL Position*/ -#define SCB_AHBSCR_CTL_Msk (3UL /*<< SCB_AHBPCR_CTL_Pos*/) /*!< SCB AHBSCR: CTL Mask */ - -/* Auxiliary Bus Fault Status Register Definitions */ -#define SCB_ABFSR_AXIMTYPE_Pos 8U /*!< SCB ABFSR: AXIMTYPE Position*/ -#define SCB_ABFSR_AXIMTYPE_Msk (3UL << SCB_ABFSR_AXIMTYPE_Pos) /*!< SCB ABFSR: AXIMTYPE Mask */ - -#define SCB_ABFSR_EPPB_Pos 4U /*!< SCB ABFSR: EPPB Position*/ -#define SCB_ABFSR_EPPB_Msk (1UL << SCB_ABFSR_EPPB_Pos) /*!< SCB ABFSR: EPPB Mask */ - -#define SCB_ABFSR_AXIM_Pos 3U /*!< SCB ABFSR: AXIM Position*/ -#define SCB_ABFSR_AXIM_Msk (1UL << SCB_ABFSR_AXIM_Pos) /*!< SCB ABFSR: AXIM Mask */ - -#define SCB_ABFSR_AHBP_Pos 2U /*!< SCB ABFSR: AHBP Position*/ -#define SCB_ABFSR_AHBP_Msk (1UL << SCB_ABFSR_AHBP_Pos) /*!< SCB ABFSR: AHBP Mask */ - -#define SCB_ABFSR_DTCM_Pos 1U /*!< SCB ABFSR: DTCM Position*/ -#define SCB_ABFSR_DTCM_Msk (1UL << SCB_ABFSR_DTCM_Pos) /*!< SCB ABFSR: DTCM Mask */ - -#define SCB_ABFSR_ITCM_Pos 0U /*!< SCB ABFSR: ITCM Position*/ -#define SCB_ABFSR_ITCM_Msk (1UL /*<< SCB_ABFSR_ITCM_Pos*/) /*!< SCB ABFSR: ITCM Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) - \brief Type definitions for the System Control and ID Register not in the SCB - @{ - */ - -/** - \brief Structure type to access the System Control and ID Register not in the SCB. - */ -typedef struct -{ - uint32_t RESERVED0[1U]; - __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ - __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ -} SCnSCB_Type; - -/* Interrupt Controller Type Register Definitions */ -#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ -#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ - -/* Auxiliary Control Register Definitions */ -#define SCnSCB_ACTLR_DISITMATBFLUSH_Pos 12U /*!< ACTLR: DISITMATBFLUSH Position */ -#define SCnSCB_ACTLR_DISITMATBFLUSH_Msk (1UL << SCnSCB_ACTLR_DISITMATBFLUSH_Pos) /*!< ACTLR: DISITMATBFLUSH Mask */ - -#define SCnSCB_ACTLR_DISRAMODE_Pos 11U /*!< ACTLR: DISRAMODE Position */ -#define SCnSCB_ACTLR_DISRAMODE_Msk (1UL << SCnSCB_ACTLR_DISRAMODE_Pos) /*!< ACTLR: DISRAMODE Mask */ - -#define SCnSCB_ACTLR_FPEXCODIS_Pos 10U /*!< ACTLR: FPEXCODIS Position */ -#define SCnSCB_ACTLR_FPEXCODIS_Msk (1UL << SCnSCB_ACTLR_FPEXCODIS_Pos) /*!< ACTLR: FPEXCODIS Mask */ - -#define SCnSCB_ACTLR_DISFOLD_Pos 2U /*!< ACTLR: DISFOLD Position */ -#define SCnSCB_ACTLR_DISFOLD_Msk (1UL << SCnSCB_ACTLR_DISFOLD_Pos) /*!< ACTLR: DISFOLD Mask */ - -#define SCnSCB_ACTLR_DISMCYCINT_Pos 0U /*!< ACTLR: DISMCYCINT Position */ -#define SCnSCB_ACTLR_DISMCYCINT_Msk (1UL /*<< SCnSCB_ACTLR_DISMCYCINT_Pos*/) /*!< ACTLR: DISMCYCINT Mask */ - -/*@} end of group CMSIS_SCnotSCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) - \brief Type definitions for the Instrumentation Trace Macrocell (ITM) - @{ - */ - -/** - \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). - */ -typedef struct -{ - __OM union - { - __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ - __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ - __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ - } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ - uint32_t RESERVED0[864U]; - __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ - uint32_t RESERVED1[15U]; - __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ - uint32_t RESERVED2[15U]; - __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ - uint32_t RESERVED3[29U]; - __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ - __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ - __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ - uint32_t RESERVED4[43U]; - __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ - __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ - uint32_t RESERVED5[6U]; - __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ - __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ - __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ - __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ - __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ - __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ - __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ - __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ - __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ - __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ - __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ - __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ -} ITM_Type; - -/* ITM Trace Privilege Register Definitions */ -#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ -#define ITM_TPR_PRIVMASK_Msk (0xFFFFFFFFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ - -/* ITM Trace Control Register Definitions */ -#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ -#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ - -#define ITM_TCR_TraceBusID_Pos 16U /*!< ITM TCR: ATBID Position */ -#define ITM_TCR_TraceBusID_Msk (0x7FUL << ITM_TCR_TraceBusID_Pos) /*!< ITM TCR: ATBID Mask */ - -#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ -#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ - -#define ITM_TCR_TSPrescale_Pos 8U /*!< ITM TCR: TSPrescale Position */ -#define ITM_TCR_TSPrescale_Msk (3UL << ITM_TCR_TSPrescale_Pos) /*!< ITM TCR: TSPrescale Mask */ - -#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ -#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ - -#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ -#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ - -#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ -#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ - -#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ -#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ - -#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ -#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ - -/* ITM Integration Write Register Definitions */ -#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ -#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ - -/* ITM Integration Read Register Definitions */ -#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ -#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ - -/* ITM Integration Mode Control Register Definitions */ -#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ -#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ - -/* ITM Lock Status Register Definitions */ -#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ -#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ - -#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ -#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ - -#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ -#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ - -/*@}*/ /* end of group CMSIS_ITM */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) - \brief Type definitions for the Data Watchpoint and Trace (DWT) - @{ - */ - -/** - \brief Structure type to access the Data Watchpoint and Trace Register (DWT). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ - __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ - __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ - __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ - __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ - __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ - __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ - __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ - __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ - __IOM uint32_t MASK0; /*!< Offset: 0x024 (R/W) Mask Register 0 */ - __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ - uint32_t RESERVED0[1U]; - __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ - __IOM uint32_t MASK1; /*!< Offset: 0x034 (R/W) Mask Register 1 */ - __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ - uint32_t RESERVED1[1U]; - __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ - __IOM uint32_t MASK2; /*!< Offset: 0x044 (R/W) Mask Register 2 */ - __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ - uint32_t RESERVED2[1U]; - __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ - __IOM uint32_t MASK3; /*!< Offset: 0x054 (R/W) Mask Register 3 */ - __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ - uint32_t RESERVED3[981U]; - __OM uint32_t LAR; /*!< Offset: 0xFB0 ( W) Lock Access Register */ - __IM uint32_t LSR; /*!< Offset: 0xFB4 (R ) Lock Status Register */ -} DWT_Type; - -/* DWT Control Register Definitions */ -#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ -#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ - -#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ -#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ - -#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ -#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ - -#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ -#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ - -#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ -#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ - -#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ -#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ - -#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ -#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ - -#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ -#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ - -#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ -#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ - -#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ -#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ - -#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ -#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ - -#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ -#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ - -#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ -#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ - -#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ -#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ - -#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ -#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ - -#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ -#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ - -#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ -#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ - -#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ -#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ - -/* DWT CPI Count Register Definitions */ -#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ -#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ - -/* DWT Exception Overhead Count Register Definitions */ -#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ -#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ - -/* DWT Sleep Count Register Definitions */ -#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ -#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ - -/* DWT LSU Count Register Definitions */ -#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ -#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ - -/* DWT Folded-instruction Count Register Definitions */ -#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ -#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ - -/* DWT Comparator Mask Register Definitions */ -#define DWT_MASK_MASK_Pos 0U /*!< DWT MASK: MASK Position */ -#define DWT_MASK_MASK_Msk (0x1FUL /*<< DWT_MASK_MASK_Pos*/) /*!< DWT MASK: MASK Mask */ - -/* DWT Comparator Function Register Definitions */ -#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ -#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ - -#define DWT_FUNCTION_DATAVADDR1_Pos 16U /*!< DWT FUNCTION: DATAVADDR1 Position */ -#define DWT_FUNCTION_DATAVADDR1_Msk (0xFUL << DWT_FUNCTION_DATAVADDR1_Pos) /*!< DWT FUNCTION: DATAVADDR1 Mask */ - -#define DWT_FUNCTION_DATAVADDR0_Pos 12U /*!< DWT FUNCTION: DATAVADDR0 Position */ -#define DWT_FUNCTION_DATAVADDR0_Msk (0xFUL << DWT_FUNCTION_DATAVADDR0_Pos) /*!< DWT FUNCTION: DATAVADDR0 Mask */ - -#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ -#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ - -#define DWT_FUNCTION_LNK1ENA_Pos 9U /*!< DWT FUNCTION: LNK1ENA Position */ -#define DWT_FUNCTION_LNK1ENA_Msk (0x1UL << DWT_FUNCTION_LNK1ENA_Pos) /*!< DWT FUNCTION: LNK1ENA Mask */ - -#define DWT_FUNCTION_DATAVMATCH_Pos 8U /*!< DWT FUNCTION: DATAVMATCH Position */ -#define DWT_FUNCTION_DATAVMATCH_Msk (0x1UL << DWT_FUNCTION_DATAVMATCH_Pos) /*!< DWT FUNCTION: DATAVMATCH Mask */ - -#define DWT_FUNCTION_CYCMATCH_Pos 7U /*!< DWT FUNCTION: CYCMATCH Position */ -#define DWT_FUNCTION_CYCMATCH_Msk (0x1UL << DWT_FUNCTION_CYCMATCH_Pos) /*!< DWT FUNCTION: CYCMATCH Mask */ - -#define DWT_FUNCTION_EMITRANGE_Pos 5U /*!< DWT FUNCTION: EMITRANGE Position */ -#define DWT_FUNCTION_EMITRANGE_Msk (0x1UL << DWT_FUNCTION_EMITRANGE_Pos) /*!< DWT FUNCTION: EMITRANGE Mask */ - -#define DWT_FUNCTION_FUNCTION_Pos 0U /*!< DWT FUNCTION: FUNCTION Position */ -#define DWT_FUNCTION_FUNCTION_Msk (0xFUL /*<< DWT_FUNCTION_FUNCTION_Pos*/) /*!< DWT FUNCTION: FUNCTION Mask */ - -/*@}*/ /* end of group CMSIS_DWT */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_TPI Trace Port Interface (TPI) - \brief Type definitions for the Trace Port Interface (TPI) - @{ - */ - -/** - \brief Structure type to access the Trace Port Interface Register (TPI). - */ -typedef struct -{ - __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ - __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ - uint32_t RESERVED0[2U]; - __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ - uint32_t RESERVED1[55U]; - __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ - uint32_t RESERVED2[131U]; - __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ - __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ - __IM uint32_t FSCR; /*!< Offset: 0x308 (R/ ) Formatter Synchronization Counter Register */ - uint32_t RESERVED3[759U]; - __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ - __IM uint32_t FIFO0; /*!< Offset: 0xEEC (R/ ) Integration ETM Data */ - __IM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/ ) ITATBCTR2 */ - uint32_t RESERVED4[1U]; - __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) ITATBCTR0 */ - __IM uint32_t FIFO1; /*!< Offset: 0xEFC (R/ ) Integration ITM Data */ - __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ - uint32_t RESERVED5[39U]; - __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ - __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ - uint32_t RESERVED7[8U]; - __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) TPIU_DEVID */ - __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) TPIU_DEVTYPE */ -} TPI_Type; - -/* TPI Asynchronous Clock Prescaler Register Definitions */ -#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ -#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ - -/* TPI Selected Pin Protocol Register Definitions */ -#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ -#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ - -/* TPI Formatter and Flush Status Register Definitions */ -#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ -#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ - -#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ -#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ - -#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ -#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ - -#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ -#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ - -/* TPI Formatter and Flush Control Register Definitions */ -#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ -#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ - -#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ -#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ - -/* TPI TRIGGER Register Definitions */ -#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ -#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ - -/* TPI Integration ETM Data Register Definitions (FIFO0) */ -#define TPI_FIFO0_ITM_ATVALID_Pos 29U /*!< TPI FIFO0: ITM_ATVALID Position */ -#define TPI_FIFO0_ITM_ATVALID_Msk (0x3UL << TPI_FIFO0_ITM_ATVALID_Pos) /*!< TPI FIFO0: ITM_ATVALID Mask */ - -#define TPI_FIFO0_ITM_bytecount_Pos 27U /*!< TPI FIFO0: ITM_bytecount Position */ -#define TPI_FIFO0_ITM_bytecount_Msk (0x3UL << TPI_FIFO0_ITM_bytecount_Pos) /*!< TPI FIFO0: ITM_bytecount Mask */ - -#define TPI_FIFO0_ETM_ATVALID_Pos 26U /*!< TPI FIFO0: ETM_ATVALID Position */ -#define TPI_FIFO0_ETM_ATVALID_Msk (0x3UL << TPI_FIFO0_ETM_ATVALID_Pos) /*!< TPI FIFO0: ETM_ATVALID Mask */ - -#define TPI_FIFO0_ETM_bytecount_Pos 24U /*!< TPI FIFO0: ETM_bytecount Position */ -#define TPI_FIFO0_ETM_bytecount_Msk (0x3UL << TPI_FIFO0_ETM_bytecount_Pos) /*!< TPI FIFO0: ETM_bytecount Mask */ - -#define TPI_FIFO0_ETM2_Pos 16U /*!< TPI FIFO0: ETM2 Position */ -#define TPI_FIFO0_ETM2_Msk (0xFFUL << TPI_FIFO0_ETM2_Pos) /*!< TPI FIFO0: ETM2 Mask */ - -#define TPI_FIFO0_ETM1_Pos 8U /*!< TPI FIFO0: ETM1 Position */ -#define TPI_FIFO0_ETM1_Msk (0xFFUL << TPI_FIFO0_ETM1_Pos) /*!< TPI FIFO0: ETM1 Mask */ - -#define TPI_FIFO0_ETM0_Pos 0U /*!< TPI FIFO0: ETM0 Position */ -#define TPI_FIFO0_ETM0_Msk (0xFFUL /*<< TPI_FIFO0_ETM0_Pos*/) /*!< TPI FIFO0: ETM0 Mask */ - -/* TPI ITATBCTR2 Register Definitions */ -#define TPI_ITATBCTR2_ATREADY2_Pos 0U /*!< TPI ITATBCTR2: ATREADY2 Position */ -#define TPI_ITATBCTR2_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2_Pos*/) /*!< TPI ITATBCTR2: ATREADY2 Mask */ - -#define TPI_ITATBCTR2_ATREADY1_Pos 0U /*!< TPI ITATBCTR2: ATREADY1 Position */ -#define TPI_ITATBCTR2_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1_Pos*/) /*!< TPI ITATBCTR2: ATREADY1 Mask */ - -/* TPI Integration ITM Data Register Definitions (FIFO1) */ -#define TPI_FIFO1_ITM_ATVALID_Pos 29U /*!< TPI FIFO1: ITM_ATVALID Position */ -#define TPI_FIFO1_ITM_ATVALID_Msk (0x3UL << TPI_FIFO1_ITM_ATVALID_Pos) /*!< TPI FIFO1: ITM_ATVALID Mask */ - -#define TPI_FIFO1_ITM_bytecount_Pos 27U /*!< TPI FIFO1: ITM_bytecount Position */ -#define TPI_FIFO1_ITM_bytecount_Msk (0x3UL << TPI_FIFO1_ITM_bytecount_Pos) /*!< TPI FIFO1: ITM_bytecount Mask */ - -#define TPI_FIFO1_ETM_ATVALID_Pos 26U /*!< TPI FIFO1: ETM_ATVALID Position */ -#define TPI_FIFO1_ETM_ATVALID_Msk (0x3UL << TPI_FIFO1_ETM_ATVALID_Pos) /*!< TPI FIFO1: ETM_ATVALID Mask */ - -#define TPI_FIFO1_ETM_bytecount_Pos 24U /*!< TPI FIFO1: ETM_bytecount Position */ -#define TPI_FIFO1_ETM_bytecount_Msk (0x3UL << TPI_FIFO1_ETM_bytecount_Pos) /*!< TPI FIFO1: ETM_bytecount Mask */ - -#define TPI_FIFO1_ITM2_Pos 16U /*!< TPI FIFO1: ITM2 Position */ -#define TPI_FIFO1_ITM2_Msk (0xFFUL << TPI_FIFO1_ITM2_Pos) /*!< TPI FIFO1: ITM2 Mask */ - -#define TPI_FIFO1_ITM1_Pos 8U /*!< TPI FIFO1: ITM1 Position */ -#define TPI_FIFO1_ITM1_Msk (0xFFUL << TPI_FIFO1_ITM1_Pos) /*!< TPI FIFO1: ITM1 Mask */ - -#define TPI_FIFO1_ITM0_Pos 0U /*!< TPI FIFO1: ITM0 Position */ -#define TPI_FIFO1_ITM0_Msk (0xFFUL /*<< TPI_FIFO1_ITM0_Pos*/) /*!< TPI FIFO1: ITM0 Mask */ - -/* TPI ITATBCTR0 Register Definitions */ -#define TPI_ITATBCTR0_ATREADY2_Pos 0U /*!< TPI ITATBCTR0: ATREADY2 Position */ -#define TPI_ITATBCTR0_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2_Pos*/) /*!< TPI ITATBCTR0: ATREADY2 Mask */ - -#define TPI_ITATBCTR0_ATREADY1_Pos 0U /*!< TPI ITATBCTR0: ATREADY1 Position */ -#define TPI_ITATBCTR0_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1_Pos*/) /*!< TPI ITATBCTR0: ATREADY1 Mask */ - -/* TPI Integration Mode Control Register Definitions */ -#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ -#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ - -/* TPI DEVID Register Definitions */ -#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ -#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ - -#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ -#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ - -#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ -#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ - -#define TPI_DEVID_MinBufSz_Pos 6U /*!< TPI DEVID: MinBufSz Position */ -#define TPI_DEVID_MinBufSz_Msk (0x7UL << TPI_DEVID_MinBufSz_Pos) /*!< TPI DEVID: MinBufSz Mask */ - -#define TPI_DEVID_AsynClkIn_Pos 5U /*!< TPI DEVID: AsynClkIn Position */ -#define TPI_DEVID_AsynClkIn_Msk (0x1UL << TPI_DEVID_AsynClkIn_Pos) /*!< TPI DEVID: AsynClkIn Mask */ - -#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ -#define TPI_DEVID_NrTraceInput_Msk (0x1FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ - -/* TPI DEVTYPE Register Definitions */ -#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ -#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ - -#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ -#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ - -/*@}*/ /* end of group CMSIS_TPI */ - - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_MPU Memory Protection Unit (MPU) - \brief Type definitions for the Memory Protection Unit (MPU) - @{ - */ - -/** - \brief Structure type to access the Memory Protection Unit (MPU). - */ -typedef struct -{ - __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ - __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ - __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ - __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Alias 1 Region Base Address Register */ - __IOM uint32_t RASR_A1; /*!< Offset: 0x018 (R/W) MPU Alias 1 Region Attribute and Size Register */ - __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Alias 2 Region Base Address Register */ - __IOM uint32_t RASR_A2; /*!< Offset: 0x020 (R/W) MPU Alias 2 Region Attribute and Size Register */ - __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Alias 3 Region Base Address Register */ - __IOM uint32_t RASR_A3; /*!< Offset: 0x028 (R/W) MPU Alias 3 Region Attribute and Size Register */ -} MPU_Type; - -#define MPU_TYPE_RALIASES 4U - -/* MPU Type Register Definitions */ -#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ -#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ - -#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ -#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ - -#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ -#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ - -/* MPU Control Register Definitions */ -#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ -#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ - -#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ -#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ - -#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ -#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ - -/* MPU Region Number Register Definitions */ -#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ -#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ - -/* MPU Region Base Address Register Definitions */ -#define MPU_RBAR_ADDR_Pos 5U /*!< MPU RBAR: ADDR Position */ -#define MPU_RBAR_ADDR_Msk (0x7FFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ - -#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ -#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ - -#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ -#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ - -/* MPU Region Attribute and Size Register Definitions */ -#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ -#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ - -#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ -#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ - -#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ -#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ - -#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ -#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ - -#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ -#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ - -#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ -#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ - -#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ -#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ - -#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ -#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ - -#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ -#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ - -#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ -#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ - -/*@} end of group CMSIS_MPU */ -#endif /* defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_FPU Floating Point Unit (FPU) - \brief Type definitions for the Floating Point Unit (FPU) - @{ - */ - -/** - \brief Structure type to access the Floating Point Unit (FPU). - */ -typedef struct -{ - uint32_t RESERVED0[1U]; - __IOM uint32_t FPCCR; /*!< Offset: 0x004 (R/W) Floating-Point Context Control Register */ - __IOM uint32_t FPCAR; /*!< Offset: 0x008 (R/W) Floating-Point Context Address Register */ - __IOM uint32_t FPDSCR; /*!< Offset: 0x00C (R/W) Floating-Point Default Status Control Register */ - __IM uint32_t MVFR0; /*!< Offset: 0x010 (R/ ) Media and FP Feature Register 0 */ - __IM uint32_t MVFR1; /*!< Offset: 0x014 (R/ ) Media and FP Feature Register 1 */ - __IM uint32_t MVFR2; /*!< Offset: 0x018 (R/ ) Media and FP Feature Register 2 */ -} FPU_Type; - -/* Floating-Point Context Control Register Definitions */ -#define FPU_FPCCR_ASPEN_Pos 31U /*!< FPCCR: ASPEN bit Position */ -#define FPU_FPCCR_ASPEN_Msk (1UL << FPU_FPCCR_ASPEN_Pos) /*!< FPCCR: ASPEN bit Mask */ - -#define FPU_FPCCR_LSPEN_Pos 30U /*!< FPCCR: LSPEN Position */ -#define FPU_FPCCR_LSPEN_Msk (1UL << FPU_FPCCR_LSPEN_Pos) /*!< FPCCR: LSPEN bit Mask */ - -#define FPU_FPCCR_MONRDY_Pos 8U /*!< FPCCR: MONRDY Position */ -#define FPU_FPCCR_MONRDY_Msk (1UL << FPU_FPCCR_MONRDY_Pos) /*!< FPCCR: MONRDY bit Mask */ - -#define FPU_FPCCR_BFRDY_Pos 6U /*!< FPCCR: BFRDY Position */ -#define FPU_FPCCR_BFRDY_Msk (1UL << FPU_FPCCR_BFRDY_Pos) /*!< FPCCR: BFRDY bit Mask */ - -#define FPU_FPCCR_MMRDY_Pos 5U /*!< FPCCR: MMRDY Position */ -#define FPU_FPCCR_MMRDY_Msk (1UL << FPU_FPCCR_MMRDY_Pos) /*!< FPCCR: MMRDY bit Mask */ - -#define FPU_FPCCR_HFRDY_Pos 4U /*!< FPCCR: HFRDY Position */ -#define FPU_FPCCR_HFRDY_Msk (1UL << FPU_FPCCR_HFRDY_Pos) /*!< FPCCR: HFRDY bit Mask */ - -#define FPU_FPCCR_THREAD_Pos 3U /*!< FPCCR: processor mode bit Position */ -#define FPU_FPCCR_THREAD_Msk (1UL << FPU_FPCCR_THREAD_Pos) /*!< FPCCR: processor mode active bit Mask */ - -#define FPU_FPCCR_USER_Pos 1U /*!< FPCCR: privilege level bit Position */ -#define FPU_FPCCR_USER_Msk (1UL << FPU_FPCCR_USER_Pos) /*!< FPCCR: privilege level bit Mask */ - -#define FPU_FPCCR_LSPACT_Pos 0U /*!< FPCCR: Lazy state preservation active bit Position */ -#define FPU_FPCCR_LSPACT_Msk (1UL /*<< FPU_FPCCR_LSPACT_Pos*/) /*!< FPCCR: Lazy state preservation active bit Mask */ - -/* Floating-Point Context Address Register Definitions */ -#define FPU_FPCAR_ADDRESS_Pos 3U /*!< FPCAR: ADDRESS bit Position */ -#define FPU_FPCAR_ADDRESS_Msk (0x1FFFFFFFUL << FPU_FPCAR_ADDRESS_Pos) /*!< FPCAR: ADDRESS bit Mask */ - -/* Floating-Point Default Status Control Register Definitions */ -#define FPU_FPDSCR_AHP_Pos 26U /*!< FPDSCR: AHP bit Position */ -#define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos) /*!< FPDSCR: AHP bit Mask */ - -#define FPU_FPDSCR_DN_Pos 25U /*!< FPDSCR: DN bit Position */ -#define FPU_FPDSCR_DN_Msk (1UL << FPU_FPDSCR_DN_Pos) /*!< FPDSCR: DN bit Mask */ - -#define FPU_FPDSCR_FZ_Pos 24U /*!< FPDSCR: FZ bit Position */ -#define FPU_FPDSCR_FZ_Msk (1UL << FPU_FPDSCR_FZ_Pos) /*!< FPDSCR: FZ bit Mask */ - -#define FPU_FPDSCR_RMode_Pos 22U /*!< FPDSCR: RMode bit Position */ -#define FPU_FPDSCR_RMode_Msk (3UL << FPU_FPDSCR_RMode_Pos) /*!< FPDSCR: RMode bit Mask */ - -/* Media and FP Feature Register 0 Definitions */ -#define FPU_MVFR0_FP_rounding_modes_Pos 28U /*!< MVFR0: FP rounding modes bits Position */ -#define FPU_MVFR0_FP_rounding_modes_Msk (0xFUL << FPU_MVFR0_FP_rounding_modes_Pos) /*!< MVFR0: FP rounding modes bits Mask */ - -#define FPU_MVFR0_Short_vectors_Pos 24U /*!< MVFR0: Short vectors bits Position */ -#define FPU_MVFR0_Short_vectors_Msk (0xFUL << FPU_MVFR0_Short_vectors_Pos) /*!< MVFR0: Short vectors bits Mask */ - -#define FPU_MVFR0_Square_root_Pos 20U /*!< MVFR0: Square root bits Position */ -#define FPU_MVFR0_Square_root_Msk (0xFUL << FPU_MVFR0_Square_root_Pos) /*!< MVFR0: Square root bits Mask */ - -#define FPU_MVFR0_Divide_Pos 16U /*!< MVFR0: Divide bits Position */ -#define FPU_MVFR0_Divide_Msk (0xFUL << FPU_MVFR0_Divide_Pos) /*!< MVFR0: Divide bits Mask */ - -#define FPU_MVFR0_FP_excep_trapping_Pos 12U /*!< MVFR0: FP exception trapping bits Position */ -#define FPU_MVFR0_FP_excep_trapping_Msk (0xFUL << FPU_MVFR0_FP_excep_trapping_Pos) /*!< MVFR0: FP exception trapping bits Mask */ - -#define FPU_MVFR0_Double_precision_Pos 8U /*!< MVFR0: Double-precision bits Position */ -#define FPU_MVFR0_Double_precision_Msk (0xFUL << FPU_MVFR0_Double_precision_Pos) /*!< MVFR0: Double-precision bits Mask */ - -#define FPU_MVFR0_Single_precision_Pos 4U /*!< MVFR0: Single-precision bits Position */ -#define FPU_MVFR0_Single_precision_Msk (0xFUL << FPU_MVFR0_Single_precision_Pos) /*!< MVFR0: Single-precision bits Mask */ - -#define FPU_MVFR0_A_SIMD_registers_Pos 0U /*!< MVFR0: A_SIMD registers bits Position */ -#define FPU_MVFR0_A_SIMD_registers_Msk (0xFUL /*<< FPU_MVFR0_A_SIMD_registers_Pos*/) /*!< MVFR0: A_SIMD registers bits Mask */ - -/* Media and FP Feature Register 1 Definitions */ -#define FPU_MVFR1_FP_fused_MAC_Pos 28U /*!< MVFR1: FP fused MAC bits Position */ -#define FPU_MVFR1_FP_fused_MAC_Msk (0xFUL << FPU_MVFR1_FP_fused_MAC_Pos) /*!< MVFR1: FP fused MAC bits Mask */ - -#define FPU_MVFR1_FP_HPFP_Pos 24U /*!< MVFR1: FP HPFP bits Position */ -#define FPU_MVFR1_FP_HPFP_Msk (0xFUL << FPU_MVFR1_FP_HPFP_Pos) /*!< MVFR1: FP HPFP bits Mask */ - -#define FPU_MVFR1_D_NaN_mode_Pos 4U /*!< MVFR1: D_NaN mode bits Position */ -#define FPU_MVFR1_D_NaN_mode_Msk (0xFUL << FPU_MVFR1_D_NaN_mode_Pos) /*!< MVFR1: D_NaN mode bits Mask */ - -#define FPU_MVFR1_FtZ_mode_Pos 0U /*!< MVFR1: FtZ mode bits Position */ -#define FPU_MVFR1_FtZ_mode_Msk (0xFUL /*<< FPU_MVFR1_FtZ_mode_Pos*/) /*!< MVFR1: FtZ mode bits Mask */ - -/* Media and FP Feature Register 2 Definitions */ - -/*@} end of group CMSIS_FPU */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief Type definitions for the Core Debug Registers - @{ - */ - -/** - \brief Structure type to access the Core Debug Register (CoreDebug). - */ -typedef struct -{ - __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ - __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ - __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ - __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ -} CoreDebug_Type; - -/* Debug Halting Control and Status Register Definitions */ -#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ -#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ - -#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ -#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ - -#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ -#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ - -#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ -#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ - -#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ -#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ - -#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ -#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ - -#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ -#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ - -#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ -#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ - -#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ -#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ - -#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ -#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ - -#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ -#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ - -#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ -#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ - -/* Debug Core Register Selector Register Definitions */ -#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ -#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ - -#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ -#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ - -/* Debug Exception and Monitor Control Register Definitions */ -#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ -#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ - -#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ -#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ - -#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ -#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ - -#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ -#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ - -#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ -#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ - -#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ -#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ - -#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ -#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ - -#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ -#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ - -#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ -#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ - -#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ -#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ - -#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ -#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ - -#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ -#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ - -#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ -#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ - -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ -#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ -#define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ -#define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ -#define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ -#define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ -#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ -#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ -#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - -#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ -#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ -#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ -#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ -#define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ -#define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ -#define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ -#define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE) /*!< Core Debug configuration struct */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ - #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ -#endif - -#define FPU_BASE (SCS_BASE + 0x0F30UL) /*!< Floating Point Unit */ -#define FPU ((FPU_Type *) FPU_BASE ) /*!< Floating Point Unit */ - -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Debug Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping - #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ - #define NVIC_GetActive __NVIC_GetActive - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* The following EXC_RETURN values are saved the LR on exception entry */ -#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ -#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ -#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ -#define EXC_RETURN_HANDLER_FPU (0xFFFFFFE1UL) /* return to Handler mode, uses MSP after return, restore floating-point state */ -#define EXC_RETURN_THREAD_MSP_FPU (0xFFFFFFE9UL) /* return to Thread mode, uses MSP after return, restore floating-point state */ -#define EXC_RETURN_THREAD_PSP_FPU (0xFFFFFFEDUL) /* return to Thread mode, uses PSP after return, restore floating-point state */ - - -/** - \brief Set Priority Grouping - \details Sets the priority grouping field using the required unlock sequence. - The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. - Only values from 0..7 are used. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Priority grouping field. - */ -__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) -{ - uint32_t reg_value; - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - - reg_value = SCB->AIRCR; /* read old register configuration */ - reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ - reg_value = (reg_value | - ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (PriorityGroupTmp << SCB_AIRCR_PRIGROUP_Pos) ); /* Insert write key and priority group */ - SCB->AIRCR = reg_value; -} - - -/** - \brief Get Priority Grouping - \details Reads the priority grouping field from the NVIC Interrupt Controller. - \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). - */ -__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) -{ - return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); -} - - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt - \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } - else - { - SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return(((uint32_t)NVIC->IP[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return(((uint32_t)SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Encode Priority - \details Encodes the priority for an interrupt with the given priority group, - preemptive priority value, and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Used priority group. - \param [in] PreemptPriority Preemptive priority value (starting from 0). - \param [in] SubPriority Subpriority value (starting from 0). - \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). - */ -__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - return ( - ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | - ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) - ); -} - - -/** - \brief Decode Priority - \details Decodes an interrupt priority value with a given priority group to - preemptive priority value and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. - \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). - \param [in] PriorityGroup Used priority group. - \param [out] pPreemptPriority Preemptive priority value (starting from 0). - \param [out] pSubPriority Subpriority value (starting from 0). - */ -__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); - *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); -} - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - VTOR must been relocated to SRAM before. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | - SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -/*@} end of CMSIS_Core_NVICFunctions */ - -/* ########################## MPU functions #################################### */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - -#include "mpu_armv7.h" - -#endif - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - uint32_t mvfr0; - - mvfr0 = SCB->MVFR0; - if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x220U) - { - return 2U; /* Double + Single precision FPU */ - } - else if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x020U) - { - return 1U; /* Single precision FPU */ - } - else - { - return 0U; /* No FPU */ - } -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ########################## Cache functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_CacheFunctions Cache Functions - \brief Functions that configure Instruction and Data cache. - @{ - */ - -/* Cache Size ID Register Macros */ -#define CCSIDR_WAYS(x) (((x) & SCB_CCSIDR_ASSOCIATIVITY_Msk) >> SCB_CCSIDR_ASSOCIATIVITY_Pos) -#define CCSIDR_SETS(x) (((x) & SCB_CCSIDR_NUMSETS_Msk ) >> SCB_CCSIDR_NUMSETS_Pos ) - - -/** - \brief Enable I-Cache - \details Turns on I-Cache - */ -__STATIC_INLINE void SCB_EnableICache (void) -{ - #if defined (__ICACHE_PRESENT) && (__ICACHE_PRESENT == 1U) - __DSB(); - __ISB(); - SCB->ICIALLU = 0UL; /* invalidate I-Cache */ - __DSB(); - __ISB(); - SCB->CCR |= (uint32_t)SCB_CCR_IC_Msk; /* enable I-Cache */ - __DSB(); - __ISB(); - #endif -} - - -/** - \brief Disable I-Cache - \details Turns off I-Cache - */ -__STATIC_INLINE void SCB_DisableICache (void) -{ - #if defined (__ICACHE_PRESENT) && (__ICACHE_PRESENT == 1U) - __DSB(); - __ISB(); - SCB->CCR &= ~(uint32_t)SCB_CCR_IC_Msk; /* disable I-Cache */ - SCB->ICIALLU = 0UL; /* invalidate I-Cache */ - __DSB(); - __ISB(); - #endif -} - - -/** - \brief Invalidate I-Cache - \details Invalidates I-Cache - */ -__STATIC_INLINE void SCB_InvalidateICache (void) -{ - #if defined (__ICACHE_PRESENT) && (__ICACHE_PRESENT == 1U) - __DSB(); - __ISB(); - SCB->ICIALLU = 0UL; - __DSB(); - __ISB(); - #endif -} - - -/** - \brief Enable D-Cache - \details Turns on D-Cache - */ -__STATIC_INLINE void SCB_EnableDCache (void) -{ - #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) - uint32_t ccsidr; - uint32_t sets; - uint32_t ways; - - SCB->CSSELR = 0U; /*(0U << 1U) | 0U;*/ /* Level 1 data cache */ - __DSB(); - - ccsidr = SCB->CCSIDR; - - /* invalidate D-Cache */ - sets = (uint32_t)(CCSIDR_SETS(ccsidr)); - do { - ways = (uint32_t)(CCSIDR_WAYS(ccsidr)); - do { - SCB->DCISW = (((sets << SCB_DCISW_SET_Pos) & SCB_DCISW_SET_Msk) | - ((ways << SCB_DCISW_WAY_Pos) & SCB_DCISW_WAY_Msk) ); - #if defined ( __CC_ARM ) - __schedule_barrier(); - #endif - } while (ways-- != 0U); - } while(sets-- != 0U); - __DSB(); - - SCB->CCR |= (uint32_t)SCB_CCR_DC_Msk; /* enable D-Cache */ - - __DSB(); - __ISB(); - #endif -} - - -/** - \brief Disable D-Cache - \details Turns off D-Cache - */ -__STATIC_INLINE void SCB_DisableDCache (void) -{ - #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) - uint32_t ccsidr; - uint32_t sets; - uint32_t ways; - - SCB->CSSELR = 0U; /*(0U << 1U) | 0U;*/ /* Level 1 data cache */ - __DSB(); - - SCB->CCR &= ~(uint32_t)SCB_CCR_DC_Msk; /* disable D-Cache */ - __DSB(); - - ccsidr = SCB->CCSIDR; - - /* clean & invalidate D-Cache */ - sets = (uint32_t)(CCSIDR_SETS(ccsidr)); - do { - ways = (uint32_t)(CCSIDR_WAYS(ccsidr)); - do { - SCB->DCCISW = (((sets << SCB_DCCISW_SET_Pos) & SCB_DCCISW_SET_Msk) | - ((ways << SCB_DCCISW_WAY_Pos) & SCB_DCCISW_WAY_Msk) ); - #if defined ( __CC_ARM ) - __schedule_barrier(); - #endif - } while (ways-- != 0U); - } while(sets-- != 0U); - - __DSB(); - __ISB(); - #endif -} - - -/** - \brief Invalidate D-Cache - \details Invalidates D-Cache - */ -__STATIC_INLINE void SCB_InvalidateDCache (void) -{ - #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) - uint32_t ccsidr; - uint32_t sets; - uint32_t ways; - - SCB->CSSELR = 0U; /*(0U << 1U) | 0U;*/ /* Level 1 data cache */ - __DSB(); - - ccsidr = SCB->CCSIDR; - - /* invalidate D-Cache */ - sets = (uint32_t)(CCSIDR_SETS(ccsidr)); - do { - ways = (uint32_t)(CCSIDR_WAYS(ccsidr)); - do { - SCB->DCISW = (((sets << SCB_DCISW_SET_Pos) & SCB_DCISW_SET_Msk) | - ((ways << SCB_DCISW_WAY_Pos) & SCB_DCISW_WAY_Msk) ); - #if defined ( __CC_ARM ) - __schedule_barrier(); - #endif - } while (ways-- != 0U); - } while(sets-- != 0U); - - __DSB(); - __ISB(); - #endif -} - - -/** - \brief Clean D-Cache - \details Cleans D-Cache - */ -__STATIC_INLINE void SCB_CleanDCache (void) -{ - #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) - uint32_t ccsidr; - uint32_t sets; - uint32_t ways; - - SCB->CSSELR = 0U; /*(0U << 1U) | 0U;*/ /* Level 1 data cache */ - __DSB(); - - ccsidr = SCB->CCSIDR; - - /* clean D-Cache */ - sets = (uint32_t)(CCSIDR_SETS(ccsidr)); - do { - ways = (uint32_t)(CCSIDR_WAYS(ccsidr)); - do { - SCB->DCCSW = (((sets << SCB_DCCSW_SET_Pos) & SCB_DCCSW_SET_Msk) | - ((ways << SCB_DCCSW_WAY_Pos) & SCB_DCCSW_WAY_Msk) ); - #if defined ( __CC_ARM ) - __schedule_barrier(); - #endif - } while (ways-- != 0U); - } while(sets-- != 0U); - - __DSB(); - __ISB(); - #endif -} - - -/** - \brief Clean & Invalidate D-Cache - \details Cleans and Invalidates D-Cache - */ -__STATIC_INLINE void SCB_CleanInvalidateDCache (void) -{ - #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) - uint32_t ccsidr; - uint32_t sets; - uint32_t ways; - - SCB->CSSELR = 0U; /*(0U << 1U) | 0U;*/ /* Level 1 data cache */ - __DSB(); - - ccsidr = SCB->CCSIDR; - - /* clean & invalidate D-Cache */ - sets = (uint32_t)(CCSIDR_SETS(ccsidr)); - do { - ways = (uint32_t)(CCSIDR_WAYS(ccsidr)); - do { - SCB->DCCISW = (((sets << SCB_DCCISW_SET_Pos) & SCB_DCCISW_SET_Msk) | - ((ways << SCB_DCCISW_WAY_Pos) & SCB_DCCISW_WAY_Msk) ); - #if defined ( __CC_ARM ) - __schedule_barrier(); - #endif - } while (ways-- != 0U); - } while(sets-- != 0U); - - __DSB(); - __ISB(); - #endif -} - - -/** - \brief D-Cache Invalidate by address - \details Invalidates D-Cache for the given address - \param[in] addr address (aligned to 32-byte boundary) - \param[in] dsize size of memory block (in number of bytes) -*/ -__STATIC_INLINE void SCB_InvalidateDCache_by_Addr (uint32_t *addr, int32_t dsize) -{ - #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) - int32_t op_size = dsize; - uint32_t op_addr = (uint32_t)addr; - int32_t linesize = 32; /* in Cortex-M7 size of cache line is fixed to 8 words (32 bytes) */ - - __DSB(); - - while (op_size > 0) { - SCB->DCIMVAC = op_addr; - op_addr += (uint32_t)linesize; - op_size -= linesize; - } - - __DSB(); - __ISB(); - #endif -} - - -/** - \brief D-Cache Clean by address - \details Cleans D-Cache for the given address - \param[in] addr address (aligned to 32-byte boundary) - \param[in] dsize size of memory block (in number of bytes) -*/ -__STATIC_INLINE void SCB_CleanDCache_by_Addr (uint32_t *addr, int32_t dsize) -{ - #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) - int32_t op_size = dsize; - uint32_t op_addr = (uint32_t) addr; - int32_t linesize = 32; /* in Cortex-M7 size of cache line is fixed to 8 words (32 bytes) */ - - __DSB(); - - while (op_size > 0) { - SCB->DCCMVAC = op_addr; - op_addr += (uint32_t)linesize; - op_size -= linesize; - } - - __DSB(); - __ISB(); - #endif -} - - -/** - \brief D-Cache Clean and Invalidate by address - \details Cleans and invalidates D_Cache for the given address - \param[in] addr address (aligned to 32-byte boundary) - \param[in] dsize size of memory block (in number of bytes) -*/ -__STATIC_INLINE void SCB_CleanInvalidateDCache_by_Addr (uint32_t *addr, int32_t dsize) -{ - #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) - int32_t op_size = dsize; - uint32_t op_addr = (uint32_t) addr; - int32_t linesize = 32; /* in Cortex-M7 size of cache line is fixed to 8 words (32 bytes) */ - - __DSB(); - - while (op_size > 0) { - SCB->DCCIMVAC = op_addr; - op_addr += (uint32_t)linesize; - op_size -= linesize; - } - - __DSB(); - __ISB(); - #endif -} - - -/*@} end of CMSIS_Core_CacheFunctions */ - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - -/* ##################################### Debug In/Output function ########################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_core_DebugFunctions ITM Functions - \brief Functions that access the ITM debug interface. - @{ - */ - -extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ -#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ - - -/** - \brief ITM Send Character - \details Transmits a character via the ITM channel 0, and - \li Just returns when no debugger is connected that has booked the output. - \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. - \param [in] ch Character to transmit. - \returns Character to transmit. - */ -__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) -{ - if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ - ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ - { - while (ITM->PORT[0U].u32 == 0UL) - { - __NOP(); - } - ITM->PORT[0U].u8 = (uint8_t)ch; - } - return (ch); -} - - -/** - \brief ITM Receive Character - \details Inputs a character via the external variable \ref ITM_RxBuffer. - \return Received character. - \return -1 No character pending. - */ -__STATIC_INLINE int32_t ITM_ReceiveChar (void) -{ - int32_t ch = -1; /* no character available */ - - if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) - { - ch = ITM_RxBuffer; - ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ - } - - return (ch); -} - - -/** - \brief ITM Check Character - \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. - \return 0 No character available. - \return 1 Character available. - */ -__STATIC_INLINE int32_t ITM_CheckChar (void) -{ - - if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) - { - return (0); /* no character available */ - } - else - { - return (1); /* character available */ - } -} - -/*@} end of CMSIS_core_DebugFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_CM7_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_cm7.h + * @brief CMSIS Cortex-M7 Core Peripheral Access Layer Header File + * @version V5.0.8 + * @date 04. June 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_CM7_H_GENERIC +#define __CORE_CM7_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup Cortex_M7 + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS CM7 definitions */ +#define __CM7_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __CM7_CMSIS_VERSION_SUB ( __CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __CM7_CMSIS_VERSION ((__CM7_CMSIS_VERSION_MAIN << 16U) | \ + __CM7_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_M (7U) /*!< Cortex-M Core */ + +/** __FPU_USED indicates whether an FPU is used or not. + For this, __FPU_PRESENT has to be checked prior to making use of FPU specific registers and functions. +*/ +#if defined ( __CC_ARM ) + #if defined __TARGET_FPU_VFP + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined __ARM_PCS_VFP + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #warning "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __ICCARM__ ) + #if defined __ARMVFP__ + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __TI_ARM__ ) + #if defined __TI_VFP_SUPPORT__ + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __TASKING__ ) + #if defined __FPU_VFP__ + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U) + #define __FPU_USED 1U + #else + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #define __FPU_USED 0U + #endif + #else + #define __FPU_USED 0U + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM7_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_CM7_H_DEPENDANT +#define __CORE_CM7_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __CM7_REV + #define __CM7_REV 0x0000U + #warning "__CM7_REV not defined in device header file; using default!" + #endif + + #ifndef __FPU_PRESENT + #define __FPU_PRESENT 0U + #warning "__FPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __MPU_PRESENT + #define __MPU_PRESENT 0U + #warning "__MPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __ICACHE_PRESENT + #define __ICACHE_PRESENT 0U + #warning "__ICACHE_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __DCACHE_PRESENT + #define __DCACHE_PRESENT 0U + #warning "__DCACHE_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __DTCM_PRESENT + #define __DTCM_PRESENT 0U + #warning "__DTCM_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 3U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group Cortex_M7 */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + - Core Debug Register + - Core MPU Register + - Core FPU Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:16; /*!< bit: 0..15 Reserved */ + uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ + uint32_t _reserved1:7; /*!< bit: 20..26 Reserved */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + +#define APSR_Q_Pos 27U /*!< APSR: Q Position */ +#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ + +#define APSR_GE_Pos 16U /*!< APSR: GE Position */ +#define APSR_GE_Msk (0xFUL << APSR_GE_Pos) /*!< APSR: GE Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:1; /*!< bit: 9 Reserved */ + uint32_t ICI_IT_1:6; /*!< bit: 10..15 ICI/IT part 1 */ + uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */ + uint32_t _reserved1:4; /*!< bit: 20..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit */ + uint32_t ICI_IT_2:2; /*!< bit: 25..26 ICI/IT part 2 */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ +#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ + +#define xPSR_ICI_IT_2_Pos 25U /*!< xPSR: ICI/IT part 2 Position */ +#define xPSR_ICI_IT_2_Msk (3UL << xPSR_ICI_IT_2_Pos) /*!< xPSR: ICI/IT part 2 Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_GE_Pos 16U /*!< xPSR: GE Position */ +#define xPSR_GE_Msk (0xFUL << xPSR_GE_Pos) /*!< xPSR: GE Mask */ + +#define xPSR_ICI_IT_1_Pos 10U /*!< xPSR: ICI/IT part 1 Position */ +#define xPSR_ICI_IT_1_Msk (0x3FUL << xPSR_ICI_IT_1_Pos) /*!< xPSR: ICI/IT part 1 Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ + uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ + uint32_t FPCA:1; /*!< bit: 2 FP extension active flag */ + uint32_t _reserved0:29; /*!< bit: 3..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_FPCA_Pos 2U /*!< CONTROL: FPCA Position */ +#define CONTROL_FPCA_Msk (1UL << CONTROL_FPCA_Pos) /*!< CONTROL: FPCA Mask */ + +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ +#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[8U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[24U]; + __IOM uint32_t ICER[8U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[24U]; + __IOM uint32_t ISPR[8U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[24U]; + __IOM uint32_t ICPR[8U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[24U]; + __IOM uint32_t IABR[8U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ + uint32_t RESERVED4[56U]; + __IOM uint8_t IP[240U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ + uint32_t RESERVED5[644U]; + __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ +} NVIC_Type; + +/* Software Triggered Interrupt Register Definitions */ +#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ +#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ + __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + __IOM uint8_t SHPR[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ + __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ + __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ + __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ + __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ + __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ + __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ + __IM uint32_t ID_PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ + __IM uint32_t ID_DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ + __IM uint32_t ID_AFR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ + __IM uint32_t ID_MFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ + __IM uint32_t ID_ISAR[5U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ + uint32_t RESERVED0[1U]; + __IM uint32_t CLIDR; /*!< Offset: 0x078 (R/ ) Cache Level ID register */ + __IM uint32_t CTR; /*!< Offset: 0x07C (R/ ) Cache Type register */ + __IM uint32_t CCSIDR; /*!< Offset: 0x080 (R/ ) Cache Size ID Register */ + __IOM uint32_t CSSELR; /*!< Offset: 0x084 (R/W) Cache Size Selection Register */ + __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ + uint32_t RESERVED3[93U]; + __OM uint32_t STIR; /*!< Offset: 0x200 ( /W) Software Triggered Interrupt Register */ + uint32_t RESERVED4[15U]; + __IM uint32_t MVFR0; /*!< Offset: 0x240 (R/ ) Media and VFP Feature Register 0 */ + __IM uint32_t MVFR1; /*!< Offset: 0x244 (R/ ) Media and VFP Feature Register 1 */ + __IM uint32_t MVFR2; /*!< Offset: 0x248 (R/ ) Media and VFP Feature Register 2 */ + uint32_t RESERVED5[1U]; + __OM uint32_t ICIALLU; /*!< Offset: 0x250 ( /W) I-Cache Invalidate All to PoU */ + uint32_t RESERVED6[1U]; + __OM uint32_t ICIMVAU; /*!< Offset: 0x258 ( /W) I-Cache Invalidate by MVA to PoU */ + __OM uint32_t DCIMVAC; /*!< Offset: 0x25C ( /W) D-Cache Invalidate by MVA to PoC */ + __OM uint32_t DCISW; /*!< Offset: 0x260 ( /W) D-Cache Invalidate by Set-way */ + __OM uint32_t DCCMVAU; /*!< Offset: 0x264 ( /W) D-Cache Clean by MVA to PoU */ + __OM uint32_t DCCMVAC; /*!< Offset: 0x268 ( /W) D-Cache Clean by MVA to PoC */ + __OM uint32_t DCCSW; /*!< Offset: 0x26C ( /W) D-Cache Clean by Set-way */ + __OM uint32_t DCCIMVAC; /*!< Offset: 0x270 ( /W) D-Cache Clean and Invalidate by MVA to PoC */ + __OM uint32_t DCCISW; /*!< Offset: 0x274 ( /W) D-Cache Clean and Invalidate by Set-way */ + uint32_t RESERVED7[6U]; + __IOM uint32_t ITCMCR; /*!< Offset: 0x290 (R/W) Instruction Tightly-Coupled Memory Control Register */ + __IOM uint32_t DTCMCR; /*!< Offset: 0x294 (R/W) Data Tightly-Coupled Memory Control Registers */ + __IOM uint32_t AHBPCR; /*!< Offset: 0x298 (R/W) AHBP Control Register */ + __IOM uint32_t CACR; /*!< Offset: 0x29C (R/W) L1 Cache Control Register */ + __IOM uint32_t AHBSCR; /*!< Offset: 0x2A0 (R/W) AHB Slave Control Register */ + uint32_t RESERVED8[1U]; + __IOM uint32_t ABFSR; /*!< Offset: 0x2A8 (R/W) Auxiliary Bus Fault Status Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ +#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ +#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +/* SCB Vector Table Offset Register Definitions */ +#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ +#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ +#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +#define SCB_AIRCR_VECTRESET_Pos 0U /*!< SCB AIRCR: VECTRESET Position */ +#define SCB_AIRCR_VECTRESET_Msk (1UL /*<< SCB_AIRCR_VECTRESET_Pos*/) /*!< SCB AIRCR: VECTRESET Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_BP_Pos 18U /*!< SCB CCR: Branch prediction enable bit Position */ +#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos) /*!< SCB CCR: Branch prediction enable bit Mask */ + +#define SCB_CCR_IC_Pos 17U /*!< SCB CCR: Instruction cache enable bit Position */ +#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos) /*!< SCB CCR: Instruction cache enable bit Mask */ + +#define SCB_CCR_DC_Pos 16U /*!< SCB CCR: Cache enable bit Position */ +#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos) /*!< SCB CCR: Cache enable bit Mask */ + +#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ +#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ + +#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ +#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ + +#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ +#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ +#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ + +#define SCB_CCR_NONBASETHRDENA_Pos 0U /*!< SCB CCR: NONBASETHRDENA Position */ +#define SCB_CCR_NONBASETHRDENA_Msk (1UL /*<< SCB_CCR_NONBASETHRDENA_Pos*/) /*!< SCB CCR: NONBASETHRDENA Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ +#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ + +#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ +#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ + +#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ +#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ + +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ +#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ + +#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ +#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ + +#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ +#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ + +#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ +#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ + +#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ +#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ + +#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ +#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ + +#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ +#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ + +#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ +#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ + +#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ +#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ + +#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ +#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ + +/* SCB Configurable Fault Status Register Definitions */ +#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ +#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ + +#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ +#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ + +#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ +#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ + +/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ +#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ + +#define SCB_CFSR_MLSPERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 5U) /*!< SCB CFSR (MMFSR): MLSPERR Position */ +#define SCB_CFSR_MLSPERR_Msk (1UL << SCB_CFSR_MLSPERR_Pos) /*!< SCB CFSR (MMFSR): MLSPERR Mask */ + +#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ +#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ + +#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ +#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ + +#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ +#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ + +#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ +#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ + +/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ +#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ + +#define SCB_CFSR_LSPERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 5U) /*!< SCB CFSR (BFSR): LSPERR Position */ +#define SCB_CFSR_LSPERR_Msk (1UL << SCB_CFSR_LSPERR_Pos) /*!< SCB CFSR (BFSR): LSPERR Mask */ + +#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ +#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ + +#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ +#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ + +#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ +#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ + +#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ +#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ + +#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ +#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ + +/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ +#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ + +#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ +#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ + +#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ +#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ + +#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ +#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ + +#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ +#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ + +#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ +#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ + +/* SCB Hard Fault Status Register Definitions */ +#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ +#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ + +#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ +#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ + +#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ +#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ + +/* SCB Debug Fault Status Register Definitions */ +#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ +#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ + +#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ +#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ + +#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ +#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ + +#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ +#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ + +#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ +#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ + +/* SCB Cache Level ID Register Definitions */ +#define SCB_CLIDR_LOUU_Pos 27U /*!< SCB CLIDR: LoUU Position */ +#define SCB_CLIDR_LOUU_Msk (7UL << SCB_CLIDR_LOUU_Pos) /*!< SCB CLIDR: LoUU Mask */ + +#define SCB_CLIDR_LOC_Pos 24U /*!< SCB CLIDR: LoC Position */ +#define SCB_CLIDR_LOC_Msk (7UL << SCB_CLIDR_LOC_Pos) /*!< SCB CLIDR: LoC Mask */ + +/* SCB Cache Type Register Definitions */ +#define SCB_CTR_FORMAT_Pos 29U /*!< SCB CTR: Format Position */ +#define SCB_CTR_FORMAT_Msk (7UL << SCB_CTR_FORMAT_Pos) /*!< SCB CTR: Format Mask */ + +#define SCB_CTR_CWG_Pos 24U /*!< SCB CTR: CWG Position */ +#define SCB_CTR_CWG_Msk (0xFUL << SCB_CTR_CWG_Pos) /*!< SCB CTR: CWG Mask */ + +#define SCB_CTR_ERG_Pos 20U /*!< SCB CTR: ERG Position */ +#define SCB_CTR_ERG_Msk (0xFUL << SCB_CTR_ERG_Pos) /*!< SCB CTR: ERG Mask */ + +#define SCB_CTR_DMINLINE_Pos 16U /*!< SCB CTR: DminLine Position */ +#define SCB_CTR_DMINLINE_Msk (0xFUL << SCB_CTR_DMINLINE_Pos) /*!< SCB CTR: DminLine Mask */ + +#define SCB_CTR_IMINLINE_Pos 0U /*!< SCB CTR: ImInLine Position */ +#define SCB_CTR_IMINLINE_Msk (0xFUL /*<< SCB_CTR_IMINLINE_Pos*/) /*!< SCB CTR: ImInLine Mask */ + +/* SCB Cache Size ID Register Definitions */ +#define SCB_CCSIDR_WT_Pos 31U /*!< SCB CCSIDR: WT Position */ +#define SCB_CCSIDR_WT_Msk (1UL << SCB_CCSIDR_WT_Pos) /*!< SCB CCSIDR: WT Mask */ + +#define SCB_CCSIDR_WB_Pos 30U /*!< SCB CCSIDR: WB Position */ +#define SCB_CCSIDR_WB_Msk (1UL << SCB_CCSIDR_WB_Pos) /*!< SCB CCSIDR: WB Mask */ + +#define SCB_CCSIDR_RA_Pos 29U /*!< SCB CCSIDR: RA Position */ +#define SCB_CCSIDR_RA_Msk (1UL << SCB_CCSIDR_RA_Pos) /*!< SCB CCSIDR: RA Mask */ + +#define SCB_CCSIDR_WA_Pos 28U /*!< SCB CCSIDR: WA Position */ +#define SCB_CCSIDR_WA_Msk (1UL << SCB_CCSIDR_WA_Pos) /*!< SCB CCSIDR: WA Mask */ + +#define SCB_CCSIDR_NUMSETS_Pos 13U /*!< SCB CCSIDR: NumSets Position */ +#define SCB_CCSIDR_NUMSETS_Msk (0x7FFFUL << SCB_CCSIDR_NUMSETS_Pos) /*!< SCB CCSIDR: NumSets Mask */ + +#define SCB_CCSIDR_ASSOCIATIVITY_Pos 3U /*!< SCB CCSIDR: Associativity Position */ +#define SCB_CCSIDR_ASSOCIATIVITY_Msk (0x3FFUL << SCB_CCSIDR_ASSOCIATIVITY_Pos) /*!< SCB CCSIDR: Associativity Mask */ + +#define SCB_CCSIDR_LINESIZE_Pos 0U /*!< SCB CCSIDR: LineSize Position */ +#define SCB_CCSIDR_LINESIZE_Msk (7UL /*<< SCB_CCSIDR_LINESIZE_Pos*/) /*!< SCB CCSIDR: LineSize Mask */ + +/* SCB Cache Size Selection Register Definitions */ +#define SCB_CSSELR_LEVEL_Pos 1U /*!< SCB CSSELR: Level Position */ +#define SCB_CSSELR_LEVEL_Msk (7UL << SCB_CSSELR_LEVEL_Pos) /*!< SCB CSSELR: Level Mask */ + +#define SCB_CSSELR_IND_Pos 0U /*!< SCB CSSELR: InD Position */ +#define SCB_CSSELR_IND_Msk (1UL /*<< SCB_CSSELR_IND_Pos*/) /*!< SCB CSSELR: InD Mask */ + +/* SCB Software Triggered Interrupt Register Definitions */ +#define SCB_STIR_INTID_Pos 0U /*!< SCB STIR: INTID Position */ +#define SCB_STIR_INTID_Msk (0x1FFUL /*<< SCB_STIR_INTID_Pos*/) /*!< SCB STIR: INTID Mask */ + +/* SCB D-Cache Invalidate by Set-way Register Definitions */ +#define SCB_DCISW_WAY_Pos 30U /*!< SCB DCISW: Way Position */ +#define SCB_DCISW_WAY_Msk (3UL << SCB_DCISW_WAY_Pos) /*!< SCB DCISW: Way Mask */ + +#define SCB_DCISW_SET_Pos 5U /*!< SCB DCISW: Set Position */ +#define SCB_DCISW_SET_Msk (0x1FFUL << SCB_DCISW_SET_Pos) /*!< SCB DCISW: Set Mask */ + +/* SCB D-Cache Clean by Set-way Register Definitions */ +#define SCB_DCCSW_WAY_Pos 30U /*!< SCB DCCSW: Way Position */ +#define SCB_DCCSW_WAY_Msk (3UL << SCB_DCCSW_WAY_Pos) /*!< SCB DCCSW: Way Mask */ + +#define SCB_DCCSW_SET_Pos 5U /*!< SCB DCCSW: Set Position */ +#define SCB_DCCSW_SET_Msk (0x1FFUL << SCB_DCCSW_SET_Pos) /*!< SCB DCCSW: Set Mask */ + +/* SCB D-Cache Clean and Invalidate by Set-way Register Definitions */ +#define SCB_DCCISW_WAY_Pos 30U /*!< SCB DCCISW: Way Position */ +#define SCB_DCCISW_WAY_Msk (3UL << SCB_DCCISW_WAY_Pos) /*!< SCB DCCISW: Way Mask */ + +#define SCB_DCCISW_SET_Pos 5U /*!< SCB DCCISW: Set Position */ +#define SCB_DCCISW_SET_Msk (0x1FFUL << SCB_DCCISW_SET_Pos) /*!< SCB DCCISW: Set Mask */ + +/* Instruction Tightly-Coupled Memory Control Register Definitions */ +#define SCB_ITCMCR_SZ_Pos 3U /*!< SCB ITCMCR: SZ Position */ +#define SCB_ITCMCR_SZ_Msk (0xFUL << SCB_ITCMCR_SZ_Pos) /*!< SCB ITCMCR: SZ Mask */ + +#define SCB_ITCMCR_RETEN_Pos 2U /*!< SCB ITCMCR: RETEN Position */ +#define SCB_ITCMCR_RETEN_Msk (1UL << SCB_ITCMCR_RETEN_Pos) /*!< SCB ITCMCR: RETEN Mask */ + +#define SCB_ITCMCR_RMW_Pos 1U /*!< SCB ITCMCR: RMW Position */ +#define SCB_ITCMCR_RMW_Msk (1UL << SCB_ITCMCR_RMW_Pos) /*!< SCB ITCMCR: RMW Mask */ + +#define SCB_ITCMCR_EN_Pos 0U /*!< SCB ITCMCR: EN Position */ +#define SCB_ITCMCR_EN_Msk (1UL /*<< SCB_ITCMCR_EN_Pos*/) /*!< SCB ITCMCR: EN Mask */ + +/* Data Tightly-Coupled Memory Control Register Definitions */ +#define SCB_DTCMCR_SZ_Pos 3U /*!< SCB DTCMCR: SZ Position */ +#define SCB_DTCMCR_SZ_Msk (0xFUL << SCB_DTCMCR_SZ_Pos) /*!< SCB DTCMCR: SZ Mask */ + +#define SCB_DTCMCR_RETEN_Pos 2U /*!< SCB DTCMCR: RETEN Position */ +#define SCB_DTCMCR_RETEN_Msk (1UL << SCB_DTCMCR_RETEN_Pos) /*!< SCB DTCMCR: RETEN Mask */ + +#define SCB_DTCMCR_RMW_Pos 1U /*!< SCB DTCMCR: RMW Position */ +#define SCB_DTCMCR_RMW_Msk (1UL << SCB_DTCMCR_RMW_Pos) /*!< SCB DTCMCR: RMW Mask */ + +#define SCB_DTCMCR_EN_Pos 0U /*!< SCB DTCMCR: EN Position */ +#define SCB_DTCMCR_EN_Msk (1UL /*<< SCB_DTCMCR_EN_Pos*/) /*!< SCB DTCMCR: EN Mask */ + +/* AHBP Control Register Definitions */ +#define SCB_AHBPCR_SZ_Pos 1U /*!< SCB AHBPCR: SZ Position */ +#define SCB_AHBPCR_SZ_Msk (7UL << SCB_AHBPCR_SZ_Pos) /*!< SCB AHBPCR: SZ Mask */ + +#define SCB_AHBPCR_EN_Pos 0U /*!< SCB AHBPCR: EN Position */ +#define SCB_AHBPCR_EN_Msk (1UL /*<< SCB_AHBPCR_EN_Pos*/) /*!< SCB AHBPCR: EN Mask */ + +/* L1 Cache Control Register Definitions */ +#define SCB_CACR_FORCEWT_Pos 2U /*!< SCB CACR: FORCEWT Position */ +#define SCB_CACR_FORCEWT_Msk (1UL << SCB_CACR_FORCEWT_Pos) /*!< SCB CACR: FORCEWT Mask */ + +#define SCB_CACR_ECCEN_Pos 1U /*!< SCB CACR: ECCEN Position */ +#define SCB_CACR_ECCEN_Msk (1UL << SCB_CACR_ECCEN_Pos) /*!< SCB CACR: ECCEN Mask */ + +#define SCB_CACR_SIWT_Pos 0U /*!< SCB CACR: SIWT Position */ +#define SCB_CACR_SIWT_Msk (1UL /*<< SCB_CACR_SIWT_Pos*/) /*!< SCB CACR: SIWT Mask */ + +/* AHBS Control Register Definitions */ +#define SCB_AHBSCR_INITCOUNT_Pos 11U /*!< SCB AHBSCR: INITCOUNT Position */ +#define SCB_AHBSCR_INITCOUNT_Msk (0x1FUL << SCB_AHBPCR_INITCOUNT_Pos) /*!< SCB AHBSCR: INITCOUNT Mask */ + +#define SCB_AHBSCR_TPRI_Pos 2U /*!< SCB AHBSCR: TPRI Position */ +#define SCB_AHBSCR_TPRI_Msk (0x1FFUL << SCB_AHBPCR_TPRI_Pos) /*!< SCB AHBSCR: TPRI Mask */ + +#define SCB_AHBSCR_CTL_Pos 0U /*!< SCB AHBSCR: CTL Position*/ +#define SCB_AHBSCR_CTL_Msk (3UL /*<< SCB_AHBPCR_CTL_Pos*/) /*!< SCB AHBSCR: CTL Mask */ + +/* Auxiliary Bus Fault Status Register Definitions */ +#define SCB_ABFSR_AXIMTYPE_Pos 8U /*!< SCB ABFSR: AXIMTYPE Position*/ +#define SCB_ABFSR_AXIMTYPE_Msk (3UL << SCB_ABFSR_AXIMTYPE_Pos) /*!< SCB ABFSR: AXIMTYPE Mask */ + +#define SCB_ABFSR_EPPB_Pos 4U /*!< SCB ABFSR: EPPB Position*/ +#define SCB_ABFSR_EPPB_Msk (1UL << SCB_ABFSR_EPPB_Pos) /*!< SCB ABFSR: EPPB Mask */ + +#define SCB_ABFSR_AXIM_Pos 3U /*!< SCB ABFSR: AXIM Position*/ +#define SCB_ABFSR_AXIM_Msk (1UL << SCB_ABFSR_AXIM_Pos) /*!< SCB ABFSR: AXIM Mask */ + +#define SCB_ABFSR_AHBP_Pos 2U /*!< SCB ABFSR: AHBP Position*/ +#define SCB_ABFSR_AHBP_Msk (1UL << SCB_ABFSR_AHBP_Pos) /*!< SCB ABFSR: AHBP Mask */ + +#define SCB_ABFSR_DTCM_Pos 1U /*!< SCB ABFSR: DTCM Position*/ +#define SCB_ABFSR_DTCM_Msk (1UL << SCB_ABFSR_DTCM_Pos) /*!< SCB ABFSR: DTCM Mask */ + +#define SCB_ABFSR_ITCM_Pos 0U /*!< SCB ABFSR: ITCM Position*/ +#define SCB_ABFSR_ITCM_Msk (1UL /*<< SCB_ABFSR_ITCM_Pos*/) /*!< SCB ABFSR: ITCM Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) + \brief Type definitions for the System Control and ID Register not in the SCB + @{ + */ + +/** + \brief Structure type to access the System Control and ID Register not in the SCB. + */ +typedef struct +{ + uint32_t RESERVED0[1U]; + __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ + __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ +} SCnSCB_Type; + +/* Interrupt Controller Type Register Definitions */ +#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ +#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ + +/* Auxiliary Control Register Definitions */ +#define SCnSCB_ACTLR_DISITMATBFLUSH_Pos 12U /*!< ACTLR: DISITMATBFLUSH Position */ +#define SCnSCB_ACTLR_DISITMATBFLUSH_Msk (1UL << SCnSCB_ACTLR_DISITMATBFLUSH_Pos) /*!< ACTLR: DISITMATBFLUSH Mask */ + +#define SCnSCB_ACTLR_DISRAMODE_Pos 11U /*!< ACTLR: DISRAMODE Position */ +#define SCnSCB_ACTLR_DISRAMODE_Msk (1UL << SCnSCB_ACTLR_DISRAMODE_Pos) /*!< ACTLR: DISRAMODE Mask */ + +#define SCnSCB_ACTLR_FPEXCODIS_Pos 10U /*!< ACTLR: FPEXCODIS Position */ +#define SCnSCB_ACTLR_FPEXCODIS_Msk (1UL << SCnSCB_ACTLR_FPEXCODIS_Pos) /*!< ACTLR: FPEXCODIS Mask */ + +#define SCnSCB_ACTLR_DISFOLD_Pos 2U /*!< ACTLR: DISFOLD Position */ +#define SCnSCB_ACTLR_DISFOLD_Msk (1UL << SCnSCB_ACTLR_DISFOLD_Pos) /*!< ACTLR: DISFOLD Mask */ + +#define SCnSCB_ACTLR_DISMCYCINT_Pos 0U /*!< ACTLR: DISMCYCINT Position */ +#define SCnSCB_ACTLR_DISMCYCINT_Msk (1UL /*<< SCnSCB_ACTLR_DISMCYCINT_Pos*/) /*!< ACTLR: DISMCYCINT Mask */ + +/*@} end of group CMSIS_SCnotSCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) + \brief Type definitions for the Instrumentation Trace Macrocell (ITM) + @{ + */ + +/** + \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). + */ +typedef struct +{ + __OM union + { + __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ + __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ + __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ + } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ + uint32_t RESERVED0[864U]; + __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ + uint32_t RESERVED1[15U]; + __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ + uint32_t RESERVED2[15U]; + __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ + uint32_t RESERVED3[29U]; + __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ + __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ + __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ + uint32_t RESERVED4[43U]; + __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ + __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ + uint32_t RESERVED5[6U]; + __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ + __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ + __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ + __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ + __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ + __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ + __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ + __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ + __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ + __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ + __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ + __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ +} ITM_Type; + +/* ITM Trace Privilege Register Definitions */ +#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ +#define ITM_TPR_PRIVMASK_Msk (0xFFFFFFFFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ + +/* ITM Trace Control Register Definitions */ +#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ +#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ + +#define ITM_TCR_TraceBusID_Pos 16U /*!< ITM TCR: ATBID Position */ +#define ITM_TCR_TraceBusID_Msk (0x7FUL << ITM_TCR_TraceBusID_Pos) /*!< ITM TCR: ATBID Mask */ + +#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ +#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ + +#define ITM_TCR_TSPrescale_Pos 8U /*!< ITM TCR: TSPrescale Position */ +#define ITM_TCR_TSPrescale_Msk (3UL << ITM_TCR_TSPrescale_Pos) /*!< ITM TCR: TSPrescale Mask */ + +#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ +#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ + +#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ +#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ + +#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ +#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ + +#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ +#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ + +#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ +#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ + +/* ITM Integration Write Register Definitions */ +#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ +#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ + +/* ITM Integration Read Register Definitions */ +#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ +#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ + +/* ITM Integration Mode Control Register Definitions */ +#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ +#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ + +/* ITM Lock Status Register Definitions */ +#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ +#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ + +#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ +#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ + +#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ +#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ + +/*@}*/ /* end of group CMSIS_ITM */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) + \brief Type definitions for the Data Watchpoint and Trace (DWT) + @{ + */ + +/** + \brief Structure type to access the Data Watchpoint and Trace Register (DWT). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ + __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ + __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ + __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ + __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ + __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ + __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ + __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ + __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ + __IOM uint32_t MASK0; /*!< Offset: 0x024 (R/W) Mask Register 0 */ + __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ + uint32_t RESERVED0[1U]; + __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ + __IOM uint32_t MASK1; /*!< Offset: 0x034 (R/W) Mask Register 1 */ + __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ + uint32_t RESERVED1[1U]; + __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ + __IOM uint32_t MASK2; /*!< Offset: 0x044 (R/W) Mask Register 2 */ + __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ + uint32_t RESERVED2[1U]; + __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ + __IOM uint32_t MASK3; /*!< Offset: 0x054 (R/W) Mask Register 3 */ + __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ + uint32_t RESERVED3[981U]; + __OM uint32_t LAR; /*!< Offset: 0xFB0 ( W) Lock Access Register */ + __IM uint32_t LSR; /*!< Offset: 0xFB4 (R ) Lock Status Register */ +} DWT_Type; + +/* DWT Control Register Definitions */ +#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ +#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ + +#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ +#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ + +#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ +#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ + +#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ +#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ + +#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ +#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ + +#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ +#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ + +#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ +#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ + +#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ +#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ + +#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ +#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ + +#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ +#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ + +#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ +#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ + +#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ +#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ + +#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ +#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ + +#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ +#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ + +#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ +#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ + +#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ +#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ + +#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ +#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ + +#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ +#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ + +/* DWT CPI Count Register Definitions */ +#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ +#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ + +/* DWT Exception Overhead Count Register Definitions */ +#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ +#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ + +/* DWT Sleep Count Register Definitions */ +#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ +#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ + +/* DWT LSU Count Register Definitions */ +#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ +#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ + +/* DWT Folded-instruction Count Register Definitions */ +#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ +#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ + +/* DWT Comparator Mask Register Definitions */ +#define DWT_MASK_MASK_Pos 0U /*!< DWT MASK: MASK Position */ +#define DWT_MASK_MASK_Msk (0x1FUL /*<< DWT_MASK_MASK_Pos*/) /*!< DWT MASK: MASK Mask */ + +/* DWT Comparator Function Register Definitions */ +#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ +#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ + +#define DWT_FUNCTION_DATAVADDR1_Pos 16U /*!< DWT FUNCTION: DATAVADDR1 Position */ +#define DWT_FUNCTION_DATAVADDR1_Msk (0xFUL << DWT_FUNCTION_DATAVADDR1_Pos) /*!< DWT FUNCTION: DATAVADDR1 Mask */ + +#define DWT_FUNCTION_DATAVADDR0_Pos 12U /*!< DWT FUNCTION: DATAVADDR0 Position */ +#define DWT_FUNCTION_DATAVADDR0_Msk (0xFUL << DWT_FUNCTION_DATAVADDR0_Pos) /*!< DWT FUNCTION: DATAVADDR0 Mask */ + +#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ +#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ + +#define DWT_FUNCTION_LNK1ENA_Pos 9U /*!< DWT FUNCTION: LNK1ENA Position */ +#define DWT_FUNCTION_LNK1ENA_Msk (0x1UL << DWT_FUNCTION_LNK1ENA_Pos) /*!< DWT FUNCTION: LNK1ENA Mask */ + +#define DWT_FUNCTION_DATAVMATCH_Pos 8U /*!< DWT FUNCTION: DATAVMATCH Position */ +#define DWT_FUNCTION_DATAVMATCH_Msk (0x1UL << DWT_FUNCTION_DATAVMATCH_Pos) /*!< DWT FUNCTION: DATAVMATCH Mask */ + +#define DWT_FUNCTION_CYCMATCH_Pos 7U /*!< DWT FUNCTION: CYCMATCH Position */ +#define DWT_FUNCTION_CYCMATCH_Msk (0x1UL << DWT_FUNCTION_CYCMATCH_Pos) /*!< DWT FUNCTION: CYCMATCH Mask */ + +#define DWT_FUNCTION_EMITRANGE_Pos 5U /*!< DWT FUNCTION: EMITRANGE Position */ +#define DWT_FUNCTION_EMITRANGE_Msk (0x1UL << DWT_FUNCTION_EMITRANGE_Pos) /*!< DWT FUNCTION: EMITRANGE Mask */ + +#define DWT_FUNCTION_FUNCTION_Pos 0U /*!< DWT FUNCTION: FUNCTION Position */ +#define DWT_FUNCTION_FUNCTION_Msk (0xFUL /*<< DWT_FUNCTION_FUNCTION_Pos*/) /*!< DWT FUNCTION: FUNCTION Mask */ + +/*@}*/ /* end of group CMSIS_DWT */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_TPI Trace Port Interface (TPI) + \brief Type definitions for the Trace Port Interface (TPI) + @{ + */ + +/** + \brief Structure type to access the Trace Port Interface Register (TPI). + */ +typedef struct +{ + __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ + __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ + uint32_t RESERVED0[2U]; + __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ + uint32_t RESERVED1[55U]; + __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ + uint32_t RESERVED2[131U]; + __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ + __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ + __IM uint32_t FSCR; /*!< Offset: 0x308 (R/ ) Formatter Synchronization Counter Register */ + uint32_t RESERVED3[759U]; + __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ + __IM uint32_t FIFO0; /*!< Offset: 0xEEC (R/ ) Integration ETM Data */ + __IM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/ ) ITATBCTR2 */ + uint32_t RESERVED4[1U]; + __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) ITATBCTR0 */ + __IM uint32_t FIFO1; /*!< Offset: 0xEFC (R/ ) Integration ITM Data */ + __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ + uint32_t RESERVED5[39U]; + __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ + __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ + uint32_t RESERVED7[8U]; + __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) TPIU_DEVID */ + __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) TPIU_DEVTYPE */ +} TPI_Type; + +/* TPI Asynchronous Clock Prescaler Register Definitions */ +#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ +#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ + +/* TPI Selected Pin Protocol Register Definitions */ +#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ +#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ + +/* TPI Formatter and Flush Status Register Definitions */ +#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ +#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ + +#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ +#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ + +#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ +#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ + +#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ +#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ + +/* TPI Formatter and Flush Control Register Definitions */ +#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ +#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ + +#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ +#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ + +/* TPI TRIGGER Register Definitions */ +#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ +#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ + +/* TPI Integration ETM Data Register Definitions (FIFO0) */ +#define TPI_FIFO0_ITM_ATVALID_Pos 29U /*!< TPI FIFO0: ITM_ATVALID Position */ +#define TPI_FIFO0_ITM_ATVALID_Msk (0x3UL << TPI_FIFO0_ITM_ATVALID_Pos) /*!< TPI FIFO0: ITM_ATVALID Mask */ + +#define TPI_FIFO0_ITM_bytecount_Pos 27U /*!< TPI FIFO0: ITM_bytecount Position */ +#define TPI_FIFO0_ITM_bytecount_Msk (0x3UL << TPI_FIFO0_ITM_bytecount_Pos) /*!< TPI FIFO0: ITM_bytecount Mask */ + +#define TPI_FIFO0_ETM_ATVALID_Pos 26U /*!< TPI FIFO0: ETM_ATVALID Position */ +#define TPI_FIFO0_ETM_ATVALID_Msk (0x3UL << TPI_FIFO0_ETM_ATVALID_Pos) /*!< TPI FIFO0: ETM_ATVALID Mask */ + +#define TPI_FIFO0_ETM_bytecount_Pos 24U /*!< TPI FIFO0: ETM_bytecount Position */ +#define TPI_FIFO0_ETM_bytecount_Msk (0x3UL << TPI_FIFO0_ETM_bytecount_Pos) /*!< TPI FIFO0: ETM_bytecount Mask */ + +#define TPI_FIFO0_ETM2_Pos 16U /*!< TPI FIFO0: ETM2 Position */ +#define TPI_FIFO0_ETM2_Msk (0xFFUL << TPI_FIFO0_ETM2_Pos) /*!< TPI FIFO0: ETM2 Mask */ + +#define TPI_FIFO0_ETM1_Pos 8U /*!< TPI FIFO0: ETM1 Position */ +#define TPI_FIFO0_ETM1_Msk (0xFFUL << TPI_FIFO0_ETM1_Pos) /*!< TPI FIFO0: ETM1 Mask */ + +#define TPI_FIFO0_ETM0_Pos 0U /*!< TPI FIFO0: ETM0 Position */ +#define TPI_FIFO0_ETM0_Msk (0xFFUL /*<< TPI_FIFO0_ETM0_Pos*/) /*!< TPI FIFO0: ETM0 Mask */ + +/* TPI ITATBCTR2 Register Definitions */ +#define TPI_ITATBCTR2_ATREADY2_Pos 0U /*!< TPI ITATBCTR2: ATREADY2 Position */ +#define TPI_ITATBCTR2_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2_Pos*/) /*!< TPI ITATBCTR2: ATREADY2 Mask */ + +#define TPI_ITATBCTR2_ATREADY1_Pos 0U /*!< TPI ITATBCTR2: ATREADY1 Position */ +#define TPI_ITATBCTR2_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1_Pos*/) /*!< TPI ITATBCTR2: ATREADY1 Mask */ + +/* TPI Integration ITM Data Register Definitions (FIFO1) */ +#define TPI_FIFO1_ITM_ATVALID_Pos 29U /*!< TPI FIFO1: ITM_ATVALID Position */ +#define TPI_FIFO1_ITM_ATVALID_Msk (0x3UL << TPI_FIFO1_ITM_ATVALID_Pos) /*!< TPI FIFO1: ITM_ATVALID Mask */ + +#define TPI_FIFO1_ITM_bytecount_Pos 27U /*!< TPI FIFO1: ITM_bytecount Position */ +#define TPI_FIFO1_ITM_bytecount_Msk (0x3UL << TPI_FIFO1_ITM_bytecount_Pos) /*!< TPI FIFO1: ITM_bytecount Mask */ + +#define TPI_FIFO1_ETM_ATVALID_Pos 26U /*!< TPI FIFO1: ETM_ATVALID Position */ +#define TPI_FIFO1_ETM_ATVALID_Msk (0x3UL << TPI_FIFO1_ETM_ATVALID_Pos) /*!< TPI FIFO1: ETM_ATVALID Mask */ + +#define TPI_FIFO1_ETM_bytecount_Pos 24U /*!< TPI FIFO1: ETM_bytecount Position */ +#define TPI_FIFO1_ETM_bytecount_Msk (0x3UL << TPI_FIFO1_ETM_bytecount_Pos) /*!< TPI FIFO1: ETM_bytecount Mask */ + +#define TPI_FIFO1_ITM2_Pos 16U /*!< TPI FIFO1: ITM2 Position */ +#define TPI_FIFO1_ITM2_Msk (0xFFUL << TPI_FIFO1_ITM2_Pos) /*!< TPI FIFO1: ITM2 Mask */ + +#define TPI_FIFO1_ITM1_Pos 8U /*!< TPI FIFO1: ITM1 Position */ +#define TPI_FIFO1_ITM1_Msk (0xFFUL << TPI_FIFO1_ITM1_Pos) /*!< TPI FIFO1: ITM1 Mask */ + +#define TPI_FIFO1_ITM0_Pos 0U /*!< TPI FIFO1: ITM0 Position */ +#define TPI_FIFO1_ITM0_Msk (0xFFUL /*<< TPI_FIFO1_ITM0_Pos*/) /*!< TPI FIFO1: ITM0 Mask */ + +/* TPI ITATBCTR0 Register Definitions */ +#define TPI_ITATBCTR0_ATREADY2_Pos 0U /*!< TPI ITATBCTR0: ATREADY2 Position */ +#define TPI_ITATBCTR0_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2_Pos*/) /*!< TPI ITATBCTR0: ATREADY2 Mask */ + +#define TPI_ITATBCTR0_ATREADY1_Pos 0U /*!< TPI ITATBCTR0: ATREADY1 Position */ +#define TPI_ITATBCTR0_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1_Pos*/) /*!< TPI ITATBCTR0: ATREADY1 Mask */ + +/* TPI Integration Mode Control Register Definitions */ +#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ +#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ + +/* TPI DEVID Register Definitions */ +#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ +#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ + +#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ +#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ + +#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ +#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ + +#define TPI_DEVID_MinBufSz_Pos 6U /*!< TPI DEVID: MinBufSz Position */ +#define TPI_DEVID_MinBufSz_Msk (0x7UL << TPI_DEVID_MinBufSz_Pos) /*!< TPI DEVID: MinBufSz Mask */ + +#define TPI_DEVID_AsynClkIn_Pos 5U /*!< TPI DEVID: AsynClkIn Position */ +#define TPI_DEVID_AsynClkIn_Msk (0x1UL << TPI_DEVID_AsynClkIn_Pos) /*!< TPI DEVID: AsynClkIn Mask */ + +#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ +#define TPI_DEVID_NrTraceInput_Msk (0x1FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ + +/* TPI DEVTYPE Register Definitions */ +#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ +#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ + +#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ +#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ + +/*@}*/ /* end of group CMSIS_TPI */ + + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_MPU Memory Protection Unit (MPU) + \brief Type definitions for the Memory Protection Unit (MPU) + @{ + */ + +/** + \brief Structure type to access the Memory Protection Unit (MPU). + */ +typedef struct +{ + __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ + __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ + __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ + __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Alias 1 Region Base Address Register */ + __IOM uint32_t RASR_A1; /*!< Offset: 0x018 (R/W) MPU Alias 1 Region Attribute and Size Register */ + __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Alias 2 Region Base Address Register */ + __IOM uint32_t RASR_A2; /*!< Offset: 0x020 (R/W) MPU Alias 2 Region Attribute and Size Register */ + __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Alias 3 Region Base Address Register */ + __IOM uint32_t RASR_A3; /*!< Offset: 0x028 (R/W) MPU Alias 3 Region Attribute and Size Register */ +} MPU_Type; + +#define MPU_TYPE_RALIASES 4U + +/* MPU Type Register Definitions */ +#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ +#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ + +#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ +#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ + +#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ +#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ + +/* MPU Control Register Definitions */ +#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ +#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ + +#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ +#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ + +#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ +#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ + +/* MPU Region Number Register Definitions */ +#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ +#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ + +/* MPU Region Base Address Register Definitions */ +#define MPU_RBAR_ADDR_Pos 5U /*!< MPU RBAR: ADDR Position */ +#define MPU_RBAR_ADDR_Msk (0x7FFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ + +#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ +#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ + +#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ +#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ + +/* MPU Region Attribute and Size Register Definitions */ +#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ +#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ + +#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ +#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ + +#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ +#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ + +#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ +#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ + +#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ +#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ + +#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ +#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ + +#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ +#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ + +#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ +#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ + +#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ +#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ + +#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ +#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ + +/*@} end of group CMSIS_MPU */ +#endif /* defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_FPU Floating Point Unit (FPU) + \brief Type definitions for the Floating Point Unit (FPU) + @{ + */ + +/** + \brief Structure type to access the Floating Point Unit (FPU). + */ +typedef struct +{ + uint32_t RESERVED0[1U]; + __IOM uint32_t FPCCR; /*!< Offset: 0x004 (R/W) Floating-Point Context Control Register */ + __IOM uint32_t FPCAR; /*!< Offset: 0x008 (R/W) Floating-Point Context Address Register */ + __IOM uint32_t FPDSCR; /*!< Offset: 0x00C (R/W) Floating-Point Default Status Control Register */ + __IM uint32_t MVFR0; /*!< Offset: 0x010 (R/ ) Media and FP Feature Register 0 */ + __IM uint32_t MVFR1; /*!< Offset: 0x014 (R/ ) Media and FP Feature Register 1 */ + __IM uint32_t MVFR2; /*!< Offset: 0x018 (R/ ) Media and FP Feature Register 2 */ +} FPU_Type; + +/* Floating-Point Context Control Register Definitions */ +#define FPU_FPCCR_ASPEN_Pos 31U /*!< FPCCR: ASPEN bit Position */ +#define FPU_FPCCR_ASPEN_Msk (1UL << FPU_FPCCR_ASPEN_Pos) /*!< FPCCR: ASPEN bit Mask */ + +#define FPU_FPCCR_LSPEN_Pos 30U /*!< FPCCR: LSPEN Position */ +#define FPU_FPCCR_LSPEN_Msk (1UL << FPU_FPCCR_LSPEN_Pos) /*!< FPCCR: LSPEN bit Mask */ + +#define FPU_FPCCR_MONRDY_Pos 8U /*!< FPCCR: MONRDY Position */ +#define FPU_FPCCR_MONRDY_Msk (1UL << FPU_FPCCR_MONRDY_Pos) /*!< FPCCR: MONRDY bit Mask */ + +#define FPU_FPCCR_BFRDY_Pos 6U /*!< FPCCR: BFRDY Position */ +#define FPU_FPCCR_BFRDY_Msk (1UL << FPU_FPCCR_BFRDY_Pos) /*!< FPCCR: BFRDY bit Mask */ + +#define FPU_FPCCR_MMRDY_Pos 5U /*!< FPCCR: MMRDY Position */ +#define FPU_FPCCR_MMRDY_Msk (1UL << FPU_FPCCR_MMRDY_Pos) /*!< FPCCR: MMRDY bit Mask */ + +#define FPU_FPCCR_HFRDY_Pos 4U /*!< FPCCR: HFRDY Position */ +#define FPU_FPCCR_HFRDY_Msk (1UL << FPU_FPCCR_HFRDY_Pos) /*!< FPCCR: HFRDY bit Mask */ + +#define FPU_FPCCR_THREAD_Pos 3U /*!< FPCCR: processor mode bit Position */ +#define FPU_FPCCR_THREAD_Msk (1UL << FPU_FPCCR_THREAD_Pos) /*!< FPCCR: processor mode active bit Mask */ + +#define FPU_FPCCR_USER_Pos 1U /*!< FPCCR: privilege level bit Position */ +#define FPU_FPCCR_USER_Msk (1UL << FPU_FPCCR_USER_Pos) /*!< FPCCR: privilege level bit Mask */ + +#define FPU_FPCCR_LSPACT_Pos 0U /*!< FPCCR: Lazy state preservation active bit Position */ +#define FPU_FPCCR_LSPACT_Msk (1UL /*<< FPU_FPCCR_LSPACT_Pos*/) /*!< FPCCR: Lazy state preservation active bit Mask */ + +/* Floating-Point Context Address Register Definitions */ +#define FPU_FPCAR_ADDRESS_Pos 3U /*!< FPCAR: ADDRESS bit Position */ +#define FPU_FPCAR_ADDRESS_Msk (0x1FFFFFFFUL << FPU_FPCAR_ADDRESS_Pos) /*!< FPCAR: ADDRESS bit Mask */ + +/* Floating-Point Default Status Control Register Definitions */ +#define FPU_FPDSCR_AHP_Pos 26U /*!< FPDSCR: AHP bit Position */ +#define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos) /*!< FPDSCR: AHP bit Mask */ + +#define FPU_FPDSCR_DN_Pos 25U /*!< FPDSCR: DN bit Position */ +#define FPU_FPDSCR_DN_Msk (1UL << FPU_FPDSCR_DN_Pos) /*!< FPDSCR: DN bit Mask */ + +#define FPU_FPDSCR_FZ_Pos 24U /*!< FPDSCR: FZ bit Position */ +#define FPU_FPDSCR_FZ_Msk (1UL << FPU_FPDSCR_FZ_Pos) /*!< FPDSCR: FZ bit Mask */ + +#define FPU_FPDSCR_RMode_Pos 22U /*!< FPDSCR: RMode bit Position */ +#define FPU_FPDSCR_RMode_Msk (3UL << FPU_FPDSCR_RMode_Pos) /*!< FPDSCR: RMode bit Mask */ + +/* Media and FP Feature Register 0 Definitions */ +#define FPU_MVFR0_FP_rounding_modes_Pos 28U /*!< MVFR0: FP rounding modes bits Position */ +#define FPU_MVFR0_FP_rounding_modes_Msk (0xFUL << FPU_MVFR0_FP_rounding_modes_Pos) /*!< MVFR0: FP rounding modes bits Mask */ + +#define FPU_MVFR0_Short_vectors_Pos 24U /*!< MVFR0: Short vectors bits Position */ +#define FPU_MVFR0_Short_vectors_Msk (0xFUL << FPU_MVFR0_Short_vectors_Pos) /*!< MVFR0: Short vectors bits Mask */ + +#define FPU_MVFR0_Square_root_Pos 20U /*!< MVFR0: Square root bits Position */ +#define FPU_MVFR0_Square_root_Msk (0xFUL << FPU_MVFR0_Square_root_Pos) /*!< MVFR0: Square root bits Mask */ + +#define FPU_MVFR0_Divide_Pos 16U /*!< MVFR0: Divide bits Position */ +#define FPU_MVFR0_Divide_Msk (0xFUL << FPU_MVFR0_Divide_Pos) /*!< MVFR0: Divide bits Mask */ + +#define FPU_MVFR0_FP_excep_trapping_Pos 12U /*!< MVFR0: FP exception trapping bits Position */ +#define FPU_MVFR0_FP_excep_trapping_Msk (0xFUL << FPU_MVFR0_FP_excep_trapping_Pos) /*!< MVFR0: FP exception trapping bits Mask */ + +#define FPU_MVFR0_Double_precision_Pos 8U /*!< MVFR0: Double-precision bits Position */ +#define FPU_MVFR0_Double_precision_Msk (0xFUL << FPU_MVFR0_Double_precision_Pos) /*!< MVFR0: Double-precision bits Mask */ + +#define FPU_MVFR0_Single_precision_Pos 4U /*!< MVFR0: Single-precision bits Position */ +#define FPU_MVFR0_Single_precision_Msk (0xFUL << FPU_MVFR0_Single_precision_Pos) /*!< MVFR0: Single-precision bits Mask */ + +#define FPU_MVFR0_A_SIMD_registers_Pos 0U /*!< MVFR0: A_SIMD registers bits Position */ +#define FPU_MVFR0_A_SIMD_registers_Msk (0xFUL /*<< FPU_MVFR0_A_SIMD_registers_Pos*/) /*!< MVFR0: A_SIMD registers bits Mask */ + +/* Media and FP Feature Register 1 Definitions */ +#define FPU_MVFR1_FP_fused_MAC_Pos 28U /*!< MVFR1: FP fused MAC bits Position */ +#define FPU_MVFR1_FP_fused_MAC_Msk (0xFUL << FPU_MVFR1_FP_fused_MAC_Pos) /*!< MVFR1: FP fused MAC bits Mask */ + +#define FPU_MVFR1_FP_HPFP_Pos 24U /*!< MVFR1: FP HPFP bits Position */ +#define FPU_MVFR1_FP_HPFP_Msk (0xFUL << FPU_MVFR1_FP_HPFP_Pos) /*!< MVFR1: FP HPFP bits Mask */ + +#define FPU_MVFR1_D_NaN_mode_Pos 4U /*!< MVFR1: D_NaN mode bits Position */ +#define FPU_MVFR1_D_NaN_mode_Msk (0xFUL << FPU_MVFR1_D_NaN_mode_Pos) /*!< MVFR1: D_NaN mode bits Mask */ + +#define FPU_MVFR1_FtZ_mode_Pos 0U /*!< MVFR1: FtZ mode bits Position */ +#define FPU_MVFR1_FtZ_mode_Msk (0xFUL /*<< FPU_MVFR1_FtZ_mode_Pos*/) /*!< MVFR1: FtZ mode bits Mask */ + +/* Media and FP Feature Register 2 Definitions */ + +/*@} end of group CMSIS_FPU */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief Type definitions for the Core Debug Registers + @{ + */ + +/** + \brief Structure type to access the Core Debug Register (CoreDebug). + */ +typedef struct +{ + __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ + __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ + __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ + __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ +} CoreDebug_Type; + +/* Debug Halting Control and Status Register Definitions */ +#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ +#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ + +#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ +#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ + +#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ +#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ + +#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ +#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ + +#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ +#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ + +#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ +#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ + +#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ +#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ + +#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ +#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ + +#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ +#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ + +#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ +#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ + +#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ +#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ + +#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ +#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ + +/* Debug Core Register Selector Register Definitions */ +#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ +#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ + +#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ +#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ + +/* Debug Exception and Monitor Control Register Definitions */ +#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ +#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ + +#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ +#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ + +#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ +#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ + +#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ +#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ + +#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ +#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ + +#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ +#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ + +#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ +#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ + +#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ +#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ + +#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ +#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ + +#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ +#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ + +#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ +#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ + +#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ +#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ + +#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ +#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ + +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ +#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ +#define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ +#define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ +#define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ +#define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ +#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ +#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ +#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + +#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ +#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ +#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ +#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ +#define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ +#define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ +#define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ +#define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE) /*!< Core Debug configuration struct */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ + #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ +#endif + +#define FPU_BASE (SCS_BASE + 0x0F30UL) /*!< Floating Point Unit */ +#define FPU ((FPU_Type *) FPU_BASE ) /*!< Floating Point Unit */ + +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Debug Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping + #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ + #define NVIC_GetActive __NVIC_GetActive + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* The following EXC_RETURN values are saved the LR on exception entry */ +#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ +#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ +#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ +#define EXC_RETURN_HANDLER_FPU (0xFFFFFFE1UL) /* return to Handler mode, uses MSP after return, restore floating-point state */ +#define EXC_RETURN_THREAD_MSP_FPU (0xFFFFFFE9UL) /* return to Thread mode, uses MSP after return, restore floating-point state */ +#define EXC_RETURN_THREAD_PSP_FPU (0xFFFFFFEDUL) /* return to Thread mode, uses PSP after return, restore floating-point state */ + + +/** + \brief Set Priority Grouping + \details Sets the priority grouping field using the required unlock sequence. + The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. + Only values from 0..7 are used. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Priority grouping field. + */ +__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) +{ + uint32_t reg_value; + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + + reg_value = SCB->AIRCR; /* read old register configuration */ + reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ + reg_value = (reg_value | + ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (PriorityGroupTmp << SCB_AIRCR_PRIGROUP_Pos) ); /* Insert write key and priority group */ + SCB->AIRCR = reg_value; +} + + +/** + \brief Get Priority Grouping + \details Reads the priority grouping field from the NVIC Interrupt Controller. + \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). + */ +__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) +{ + return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); +} + + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt + \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } + else + { + SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return(((uint32_t)NVIC->IP[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return(((uint32_t)SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Encode Priority + \details Encodes the priority for an interrupt with the given priority group, + preemptive priority value, and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Used priority group. + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + ); +} + + +/** + \brief Decode Priority + \details Decodes an interrupt priority value with a given priority group to + preemptive priority value and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. + \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). + \param [in] PriorityGroup Used priority group. + \param [out] pPreemptPriority Preemptive priority value (starting from 0). + \param [out] pSubPriority Subpriority value (starting from 0). + */ +__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); + *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); +} + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + VTOR must been relocated to SRAM before. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | + SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +/*@} end of CMSIS_Core_NVICFunctions */ + +/* ########################## MPU functions #################################### */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + +#include "mpu_armv7.h" + +#endif + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + uint32_t mvfr0; + + mvfr0 = SCB->MVFR0; + if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x220U) + { + return 2U; /* Double + Single precision FPU */ + } + else if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x020U) + { + return 1U; /* Single precision FPU */ + } + else + { + return 0U; /* No FPU */ + } +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ########################## Cache functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_CacheFunctions Cache Functions + \brief Functions that configure Instruction and Data cache. + @{ + */ + +/* Cache Size ID Register Macros */ +#define CCSIDR_WAYS(x) (((x) & SCB_CCSIDR_ASSOCIATIVITY_Msk) >> SCB_CCSIDR_ASSOCIATIVITY_Pos) +#define CCSIDR_SETS(x) (((x) & SCB_CCSIDR_NUMSETS_Msk ) >> SCB_CCSIDR_NUMSETS_Pos ) + + +/** + \brief Enable I-Cache + \details Turns on I-Cache + */ +__STATIC_INLINE void SCB_EnableICache (void) +{ + #if defined (__ICACHE_PRESENT) && (__ICACHE_PRESENT == 1U) + __DSB(); + __ISB(); + SCB->ICIALLU = 0UL; /* invalidate I-Cache */ + __DSB(); + __ISB(); + SCB->CCR |= (uint32_t)SCB_CCR_IC_Msk; /* enable I-Cache */ + __DSB(); + __ISB(); + #endif +} + + +/** + \brief Disable I-Cache + \details Turns off I-Cache + */ +__STATIC_INLINE void SCB_DisableICache (void) +{ + #if defined (__ICACHE_PRESENT) && (__ICACHE_PRESENT == 1U) + __DSB(); + __ISB(); + SCB->CCR &= ~(uint32_t)SCB_CCR_IC_Msk; /* disable I-Cache */ + SCB->ICIALLU = 0UL; /* invalidate I-Cache */ + __DSB(); + __ISB(); + #endif +} + + +/** + \brief Invalidate I-Cache + \details Invalidates I-Cache + */ +__STATIC_INLINE void SCB_InvalidateICache (void) +{ + #if defined (__ICACHE_PRESENT) && (__ICACHE_PRESENT == 1U) + __DSB(); + __ISB(); + SCB->ICIALLU = 0UL; + __DSB(); + __ISB(); + #endif +} + + +/** + \brief Enable D-Cache + \details Turns on D-Cache + */ +__STATIC_INLINE void SCB_EnableDCache (void) +{ + #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) + uint32_t ccsidr; + uint32_t sets; + uint32_t ways; + + SCB->CSSELR = 0U; /*(0U << 1U) | 0U;*/ /* Level 1 data cache */ + __DSB(); + + ccsidr = SCB->CCSIDR; + + /* invalidate D-Cache */ + sets = (uint32_t)(CCSIDR_SETS(ccsidr)); + do { + ways = (uint32_t)(CCSIDR_WAYS(ccsidr)); + do { + SCB->DCISW = (((sets << SCB_DCISW_SET_Pos) & SCB_DCISW_SET_Msk) | + ((ways << SCB_DCISW_WAY_Pos) & SCB_DCISW_WAY_Msk) ); + #if defined ( __CC_ARM ) + __schedule_barrier(); + #endif + } while (ways-- != 0U); + } while(sets-- != 0U); + __DSB(); + + SCB->CCR |= (uint32_t)SCB_CCR_DC_Msk; /* enable D-Cache */ + + __DSB(); + __ISB(); + #endif +} + + +/** + \brief Disable D-Cache + \details Turns off D-Cache + */ +__STATIC_INLINE void SCB_DisableDCache (void) +{ + #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) + uint32_t ccsidr; + uint32_t sets; + uint32_t ways; + + SCB->CSSELR = 0U; /*(0U << 1U) | 0U;*/ /* Level 1 data cache */ + __DSB(); + + SCB->CCR &= ~(uint32_t)SCB_CCR_DC_Msk; /* disable D-Cache */ + __DSB(); + + ccsidr = SCB->CCSIDR; + + /* clean & invalidate D-Cache */ + sets = (uint32_t)(CCSIDR_SETS(ccsidr)); + do { + ways = (uint32_t)(CCSIDR_WAYS(ccsidr)); + do { + SCB->DCCISW = (((sets << SCB_DCCISW_SET_Pos) & SCB_DCCISW_SET_Msk) | + ((ways << SCB_DCCISW_WAY_Pos) & SCB_DCCISW_WAY_Msk) ); + #if defined ( __CC_ARM ) + __schedule_barrier(); + #endif + } while (ways-- != 0U); + } while(sets-- != 0U); + + __DSB(); + __ISB(); + #endif +} + + +/** + \brief Invalidate D-Cache + \details Invalidates D-Cache + */ +__STATIC_INLINE void SCB_InvalidateDCache (void) +{ + #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) + uint32_t ccsidr; + uint32_t sets; + uint32_t ways; + + SCB->CSSELR = 0U; /*(0U << 1U) | 0U;*/ /* Level 1 data cache */ + __DSB(); + + ccsidr = SCB->CCSIDR; + + /* invalidate D-Cache */ + sets = (uint32_t)(CCSIDR_SETS(ccsidr)); + do { + ways = (uint32_t)(CCSIDR_WAYS(ccsidr)); + do { + SCB->DCISW = (((sets << SCB_DCISW_SET_Pos) & SCB_DCISW_SET_Msk) | + ((ways << SCB_DCISW_WAY_Pos) & SCB_DCISW_WAY_Msk) ); + #if defined ( __CC_ARM ) + __schedule_barrier(); + #endif + } while (ways-- != 0U); + } while(sets-- != 0U); + + __DSB(); + __ISB(); + #endif +} + + +/** + \brief Clean D-Cache + \details Cleans D-Cache + */ +__STATIC_INLINE void SCB_CleanDCache (void) +{ + #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) + uint32_t ccsidr; + uint32_t sets; + uint32_t ways; + + SCB->CSSELR = 0U; /*(0U << 1U) | 0U;*/ /* Level 1 data cache */ + __DSB(); + + ccsidr = SCB->CCSIDR; + + /* clean D-Cache */ + sets = (uint32_t)(CCSIDR_SETS(ccsidr)); + do { + ways = (uint32_t)(CCSIDR_WAYS(ccsidr)); + do { + SCB->DCCSW = (((sets << SCB_DCCSW_SET_Pos) & SCB_DCCSW_SET_Msk) | + ((ways << SCB_DCCSW_WAY_Pos) & SCB_DCCSW_WAY_Msk) ); + #if defined ( __CC_ARM ) + __schedule_barrier(); + #endif + } while (ways-- != 0U); + } while(sets-- != 0U); + + __DSB(); + __ISB(); + #endif +} + + +/** + \brief Clean & Invalidate D-Cache + \details Cleans and Invalidates D-Cache + */ +__STATIC_INLINE void SCB_CleanInvalidateDCache (void) +{ + #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) + uint32_t ccsidr; + uint32_t sets; + uint32_t ways; + + SCB->CSSELR = 0U; /*(0U << 1U) | 0U;*/ /* Level 1 data cache */ + __DSB(); + + ccsidr = SCB->CCSIDR; + + /* clean & invalidate D-Cache */ + sets = (uint32_t)(CCSIDR_SETS(ccsidr)); + do { + ways = (uint32_t)(CCSIDR_WAYS(ccsidr)); + do { + SCB->DCCISW = (((sets << SCB_DCCISW_SET_Pos) & SCB_DCCISW_SET_Msk) | + ((ways << SCB_DCCISW_WAY_Pos) & SCB_DCCISW_WAY_Msk) ); + #if defined ( __CC_ARM ) + __schedule_barrier(); + #endif + } while (ways-- != 0U); + } while(sets-- != 0U); + + __DSB(); + __ISB(); + #endif +} + + +/** + \brief D-Cache Invalidate by address + \details Invalidates D-Cache for the given address + \param[in] addr address (aligned to 32-byte boundary) + \param[in] dsize size of memory block (in number of bytes) +*/ +__STATIC_INLINE void SCB_InvalidateDCache_by_Addr (uint32_t *addr, int32_t dsize) +{ + #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) + int32_t op_size = dsize; + uint32_t op_addr = (uint32_t)addr; + int32_t linesize = 32; /* in Cortex-M7 size of cache line is fixed to 8 words (32 bytes) */ + + __DSB(); + + while (op_size > 0) { + SCB->DCIMVAC = op_addr; + op_addr += (uint32_t)linesize; + op_size -= linesize; + } + + __DSB(); + __ISB(); + #endif +} + + +/** + \brief D-Cache Clean by address + \details Cleans D-Cache for the given address + \param[in] addr address (aligned to 32-byte boundary) + \param[in] dsize size of memory block (in number of bytes) +*/ +__STATIC_INLINE void SCB_CleanDCache_by_Addr (uint32_t *addr, int32_t dsize) +{ + #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) + int32_t op_size = dsize; + uint32_t op_addr = (uint32_t) addr; + int32_t linesize = 32; /* in Cortex-M7 size of cache line is fixed to 8 words (32 bytes) */ + + __DSB(); + + while (op_size > 0) { + SCB->DCCMVAC = op_addr; + op_addr += (uint32_t)linesize; + op_size -= linesize; + } + + __DSB(); + __ISB(); + #endif +} + + +/** + \brief D-Cache Clean and Invalidate by address + \details Cleans and invalidates D_Cache for the given address + \param[in] addr address (aligned to 32-byte boundary) + \param[in] dsize size of memory block (in number of bytes) +*/ +__STATIC_INLINE void SCB_CleanInvalidateDCache_by_Addr (uint32_t *addr, int32_t dsize) +{ + #if defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U) + int32_t op_size = dsize; + uint32_t op_addr = (uint32_t) addr; + int32_t linesize = 32; /* in Cortex-M7 size of cache line is fixed to 8 words (32 bytes) */ + + __DSB(); + + while (op_size > 0) { + SCB->DCCIMVAC = op_addr; + op_addr += (uint32_t)linesize; + op_size -= linesize; + } + + __DSB(); + __ISB(); + #endif +} + + +/*@} end of CMSIS_Core_CacheFunctions */ + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + +/* ##################################### Debug In/Output function ########################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_core_DebugFunctions ITM Functions + \brief Functions that access the ITM debug interface. + @{ + */ + +extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ +#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ + + +/** + \brief ITM Send Character + \details Transmits a character via the ITM channel 0, and + \li Just returns when no debugger is connected that has booked the output. + \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. + \param [in] ch Character to transmit. + \returns Character to transmit. + */ +__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) +{ + if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ + ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ + { + while (ITM->PORT[0U].u32 == 0UL) + { + __NOP(); + } + ITM->PORT[0U].u8 = (uint8_t)ch; + } + return (ch); +} + + +/** + \brief ITM Receive Character + \details Inputs a character via the external variable \ref ITM_RxBuffer. + \return Received character. + \return -1 No character pending. + */ +__STATIC_INLINE int32_t ITM_ReceiveChar (void) +{ + int32_t ch = -1; /* no character available */ + + if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) + { + ch = ITM_RxBuffer; + ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ + } + + return (ch); +} + + +/** + \brief ITM Check Character + \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. + \return 0 No character available. + \return 1 Character available. + */ +__STATIC_INLINE int32_t ITM_CheckChar (void) +{ + + if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) + { + return (0); /* no character available */ + } + else + { + return (1); /* character available */ + } +} + +/*@} end of CMSIS_core_DebugFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_CM7_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/core_sc000.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_sc000.h similarity index 97% rename from stm32f103/Drivers/CMSIS/Include/core_sc000.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_sc000.h index 9086c64..9b67c92 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_sc000.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_sc000.h @@ -1,1022 +1,1022 @@ -/**************************************************************************//** - * @file core_sc000.h - * @brief CMSIS SC000 Core Peripheral Access Layer Header File - * @version V5.0.5 - * @date 28. May 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_SC000_H_GENERIC -#define __CORE_SC000_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup SC000 - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS SC000 definitions */ -#define __SC000_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __SC000_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __SC000_CMSIS_VERSION ((__SC000_CMSIS_VERSION_MAIN << 16U) | \ - __SC000_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_SC (000U) /*!< Cortex secure core */ - -/** __FPU_USED indicates whether an FPU is used or not. - This core does not support an FPU at all -*/ -#define __FPU_USED 0U - -#if defined ( __CC_ARM ) - #if defined __TARGET_FPU_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined __ARM_PCS_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __ICCARM__ ) - #if defined __ARMVFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TI_ARM__ ) - #if defined __TI_VFP_SUPPORT__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TASKING__ ) - #if defined __FPU_VFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_SC000_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_SC000_H_DEPENDANT -#define __CORE_SC000_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __SC000_REV - #define __SC000_REV 0x0000U - #warning "__SC000_REV not defined in device header file; using default!" - #endif - - #ifndef __MPU_PRESENT - #define __MPU_PRESENT 0U - #warning "__MPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 2U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group SC000 */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - - Core MPU Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ - uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t _reserved0:1; /*!< bit: 0 Reserved */ - uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ - uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[1U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[31U]; - __IOM uint32_t ICER[1U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[31U]; - __IOM uint32_t ISPR[1U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[31U]; - __IOM uint32_t ICPR[1U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[31U]; - uint32_t RESERVED4[64U]; - __IOM uint32_t IP[8U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ -} NVIC_Type; - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ - __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - uint32_t RESERVED0[1U]; - __IOM uint32_t SHP[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ - uint32_t RESERVED1[154U]; - __IOM uint32_t SFCR; /*!< Offset: 0x290 (R/W) Security Features Control Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ -#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ -#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ -#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) - \brief Type definitions for the System Control and ID Register not in the SCB - @{ - */ - -/** - \brief Structure type to access the System Control and ID Register not in the SCB. - */ -typedef struct -{ - uint32_t RESERVED0[2U]; - __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ -} SCnSCB_Type; - -/* Auxiliary Control Register Definitions */ -#define SCnSCB_ACTLR_DISMCYCINT_Pos 0U /*!< ACTLR: DISMCYCINT Position */ -#define SCnSCB_ACTLR_DISMCYCINT_Msk (1UL /*<< SCnSCB_ACTLR_DISMCYCINT_Pos*/) /*!< ACTLR: DISMCYCINT Mask */ - -/*@} end of group CMSIS_SCnotSCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_MPU Memory Protection Unit (MPU) - \brief Type definitions for the Memory Protection Unit (MPU) - @{ - */ - -/** - \brief Structure type to access the Memory Protection Unit (MPU). - */ -typedef struct -{ - __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ - __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ - __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ -} MPU_Type; - -/* MPU Type Register Definitions */ -#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ -#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ - -#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ -#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ - -#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ -#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ - -/* MPU Control Register Definitions */ -#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ -#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ - -#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ -#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ - -#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ -#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ - -/* MPU Region Number Register Definitions */ -#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ -#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ - -/* MPU Region Base Address Register Definitions */ -#define MPU_RBAR_ADDR_Pos 8U /*!< MPU RBAR: ADDR Position */ -#define MPU_RBAR_ADDR_Msk (0xFFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ - -#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ -#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ - -#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ -#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ - -/* MPU Region Attribute and Size Register Definitions */ -#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ -#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ - -#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ -#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ - -#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ -#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ - -#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ -#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ - -#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ -#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ - -#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ -#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ - -#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ -#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ - -#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ -#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ - -#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ -#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ - -#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ -#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ - -/*@} end of group CMSIS_MPU */ -#endif - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief SC000 Core Debug Registers (DCB registers, SHCSR, and DFSR) are only accessible over DAP and not via processor. - Therefore they are not covered by the SC000 header file. - @{ - */ -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ -#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ -#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ -#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ -#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - -#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ -#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ -#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ -#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ - #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ -#endif - -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else -/*#define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping not available for SC000 */ -/*#define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping not available for SC000 */ - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ -/*#define NVIC_GetActive __NVIC_GetActive not available for SC000 */ - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* The following EXC_RETURN values are saved the LR on exception entry */ -#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ -#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ -#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ - - -/* Interrupt Priorities are WORD accessible only under Armv6-M */ -/* The following MACROS handle generation of the register offset and byte masks */ -#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) -#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) -#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) - - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IP[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IP[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } - else - { - SCB->SHP[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHP[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | - (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IP[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return((uint32_t)(((SCB->SHP[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - VTOR must been relocated to SRAM before. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - SCB_AIRCR_SYSRESETREQ_Msk); - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -/*@} end of CMSIS_Core_NVICFunctions */ - - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - return 0U; /* No FPU */ -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_SC000_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_sc000.h + * @brief CMSIS SC000 Core Peripheral Access Layer Header File + * @version V5.0.5 + * @date 28. May 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_SC000_H_GENERIC +#define __CORE_SC000_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup SC000 + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS SC000 definitions */ +#define __SC000_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __SC000_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __SC000_CMSIS_VERSION ((__SC000_CMSIS_VERSION_MAIN << 16U) | \ + __SC000_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_SC (000U) /*!< Cortex secure core */ + +/** __FPU_USED indicates whether an FPU is used or not. + This core does not support an FPU at all +*/ +#define __FPU_USED 0U + +#if defined ( __CC_ARM ) + #if defined __TARGET_FPU_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined __ARM_PCS_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __ICCARM__ ) + #if defined __ARMVFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TI_ARM__ ) + #if defined __TI_VFP_SUPPORT__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TASKING__ ) + #if defined __FPU_VFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_SC000_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_SC000_H_DEPENDANT +#define __CORE_SC000_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __SC000_REV + #define __SC000_REV 0x0000U + #warning "__SC000_REV not defined in device header file; using default!" + #endif + + #ifndef __MPU_PRESENT + #define __MPU_PRESENT 0U + #warning "__MPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 2U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group SC000 */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + - Core MPU Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:28; /*!< bit: 0..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:15; /*!< bit: 9..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit (read 0) */ + uint32_t _reserved1:3; /*!< bit: 25..27 Reserved */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t _reserved0:1; /*!< bit: 0 Reserved */ + uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ + uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[1U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[31U]; + __IOM uint32_t ICER[1U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[31U]; + __IOM uint32_t ISPR[1U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[31U]; + __IOM uint32_t ICPR[1U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[31U]; + uint32_t RESERVED4[64U]; + __IOM uint32_t IP[8U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register */ +} NVIC_Type; + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ + __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + uint32_t RESERVED0[1U]; + __IOM uint32_t SHP[2U]; /*!< Offset: 0x01C (R/W) System Handlers Priority Registers. [0] is RESERVED */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ + uint32_t RESERVED1[154U]; + __IOM uint32_t SFCR; /*!< Offset: 0x290 (R/W) Security Features Control Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ +#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ +#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ +#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) + \brief Type definitions for the System Control and ID Register not in the SCB + @{ + */ + +/** + \brief Structure type to access the System Control and ID Register not in the SCB. + */ +typedef struct +{ + uint32_t RESERVED0[2U]; + __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */ +} SCnSCB_Type; + +/* Auxiliary Control Register Definitions */ +#define SCnSCB_ACTLR_DISMCYCINT_Pos 0U /*!< ACTLR: DISMCYCINT Position */ +#define SCnSCB_ACTLR_DISMCYCINT_Msk (1UL /*<< SCnSCB_ACTLR_DISMCYCINT_Pos*/) /*!< ACTLR: DISMCYCINT Mask */ + +/*@} end of group CMSIS_SCnotSCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_MPU Memory Protection Unit (MPU) + \brief Type definitions for the Memory Protection Unit (MPU) + @{ + */ + +/** + \brief Structure type to access the Memory Protection Unit (MPU). + */ +typedef struct +{ + __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ + __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ + __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ +} MPU_Type; + +/* MPU Type Register Definitions */ +#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ +#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ + +#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ +#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ + +#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ +#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ + +/* MPU Control Register Definitions */ +#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ +#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ + +#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ +#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ + +#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ +#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ + +/* MPU Region Number Register Definitions */ +#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ +#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ + +/* MPU Region Base Address Register Definitions */ +#define MPU_RBAR_ADDR_Pos 8U /*!< MPU RBAR: ADDR Position */ +#define MPU_RBAR_ADDR_Msk (0xFFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ + +#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ +#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ + +#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ +#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ + +/* MPU Region Attribute and Size Register Definitions */ +#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ +#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ + +#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ +#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ + +#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ +#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ + +#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ +#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ + +#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ +#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ + +#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ +#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ + +#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ +#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ + +#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ +#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ + +#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ +#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ + +#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ +#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ + +/*@} end of group CMSIS_MPU */ +#endif + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief SC000 Core Debug Registers (DCB registers, SHCSR, and DFSR) are only accessible over DAP and not via processor. + Therefore they are not covered by the SC000 header file. + @{ + */ +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ +#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ +#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ +#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ +#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + +#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ +#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ +#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ +#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ + #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ +#endif + +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else +/*#define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping not available for SC000 */ +/*#define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping not available for SC000 */ + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ +/*#define NVIC_GetActive __NVIC_GetActive not available for SC000 */ + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* The following EXC_RETURN values are saved the LR on exception entry */ +#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ +#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ +#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ + + +/* Interrupt Priorities are WORD accessible only under Armv6-M */ +/* The following MACROS handle generation of the register offset and byte masks */ +#define _BIT_SHIFT(IRQn) ( ((((uint32_t)(int32_t)(IRQn)) ) & 0x03UL) * 8UL) +#define _SHP_IDX(IRQn) ( (((((uint32_t)(int32_t)(IRQn)) & 0x0FUL)-8UL) >> 2UL) ) +#define _IP_IDX(IRQn) ( (((uint32_t)(int32_t)(IRQn)) >> 2UL) ) + + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[0U] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[0U] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IP[_IP_IDX(IRQn)] = ((uint32_t)(NVIC->IP[_IP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } + else + { + SCB->SHP[_SHP_IDX(IRQn)] = ((uint32_t)(SCB->SHP[_SHP_IDX(IRQn)] & ~(0xFFUL << _BIT_SHIFT(IRQn))) | + (((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL) << _BIT_SHIFT(IRQn))); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IP[ _IP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return((uint32_t)(((SCB->SHP[_SHP_IDX(IRQn)] >> _BIT_SHIFT(IRQn) ) & (uint32_t)0xFFUL) >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + VTOR must been relocated to SRAM before. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = ((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + SCB_AIRCR_SYSRESETREQ_Msk); + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +/*@} end of CMSIS_Core_NVICFunctions */ + + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + return 0U; /* No FPU */ +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_SC000_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/core_sc300.h b/f103c8t6_HAL/Drivers/CMSIS/Include/core_sc300.h similarity index 98% rename from stm32f103/Drivers/CMSIS/Include/core_sc300.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/core_sc300.h index 665822d..3e8a471 100644 --- a/stm32f103/Drivers/CMSIS/Include/core_sc300.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/core_sc300.h @@ -1,1915 +1,1915 @@ -/**************************************************************************//** - * @file core_sc300.h - * @brief CMSIS SC300 Core Peripheral Access Layer Header File - * @version V5.0.6 - * @date 04. June 2018 - ******************************************************************************/ -/* - * Copyright (c) 2009-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef __CORE_SC300_H_GENERIC -#define __CORE_SC300_H_GENERIC - -#include - -#ifdef __cplusplus - extern "C" { -#endif - -/** - \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions - CMSIS violates the following MISRA-C:2004 rules: - - \li Required Rule 8.5, object/function definition in header file.
    - Function definitions in header files are used to allow 'inlining'. - - \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    - Unions are used for effective representation of core registers. - - \li Advisory Rule 19.7, Function-like macro defined.
    - Function-like macros are used to allow more efficient code. - */ - - -/******************************************************************************* - * CMSIS definitions - ******************************************************************************/ -/** - \ingroup SC3000 - @{ - */ - -#include "cmsis_version.h" - -/* CMSIS SC300 definitions */ -#define __SC300_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ -#define __SC300_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ -#define __SC300_CMSIS_VERSION ((__SC300_CMSIS_VERSION_MAIN << 16U) | \ - __SC300_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ - -#define __CORTEX_SC (300U) /*!< Cortex secure core */ - -/** __FPU_USED indicates whether an FPU is used or not. - This core does not support an FPU at all -*/ -#define __FPU_USED 0U - -#if defined ( __CC_ARM ) - #if defined __TARGET_FPU_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) - #if defined __ARM_PCS_VFP - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __GNUC__ ) - #if defined (__VFP_FP__) && !defined(__SOFTFP__) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __ICCARM__ ) - #if defined __ARMVFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TI_ARM__ ) - #if defined __TI_VFP_SUPPORT__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __TASKING__ ) - #if defined __FPU_VFP__ - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#elif defined ( __CSMC__ ) - #if ( __CSMC__ & 0x400U) - #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" - #endif - -#endif - -#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_SC300_H_GENERIC */ - -#ifndef __CMSIS_GENERIC - -#ifndef __CORE_SC300_H_DEPENDANT -#define __CORE_SC300_H_DEPENDANT - -#ifdef __cplusplus - extern "C" { -#endif - -/* check device defines and use defaults */ -#if defined __CHECK_DEVICE_DEFINES - #ifndef __SC300_REV - #define __SC300_REV 0x0000U - #warning "__SC300_REV not defined in device header file; using default!" - #endif - - #ifndef __MPU_PRESENT - #define __MPU_PRESENT 0U - #warning "__MPU_PRESENT not defined in device header file; using default!" - #endif - - #ifndef __NVIC_PRIO_BITS - #define __NVIC_PRIO_BITS 3U - #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" - #endif - - #ifndef __Vendor_SysTickConfig - #define __Vendor_SysTickConfig 0U - #warning "__Vendor_SysTickConfig not defined in device header file; using default!" - #endif -#endif - -/* IO definitions (access restrictions to peripheral registers) */ -/** - \defgroup CMSIS_glob_defs CMSIS Global Defines - - IO Type Qualifiers are used - \li to specify the access to peripheral variables. - \li for automatic generation of peripheral register debug information. -*/ -#ifdef __cplusplus - #define __I volatile /*!< Defines 'read only' permissions */ -#else - #define __I volatile const /*!< Defines 'read only' permissions */ -#endif -#define __O volatile /*!< Defines 'write only' permissions */ -#define __IO volatile /*!< Defines 'read / write' permissions */ - -/* following defines should be used for structure members */ -#define __IM volatile const /*! Defines 'read only' structure member permissions */ -#define __OM volatile /*! Defines 'write only' structure member permissions */ -#define __IOM volatile /*! Defines 'read / write' structure member permissions */ - -/*@} end of group SC300 */ - - - -/******************************************************************************* - * Register Abstraction - Core Register contain: - - Core Register - - Core NVIC Register - - Core SCB Register - - Core SysTick Register - - Core Debug Register - - Core MPU Register - ******************************************************************************/ -/** - \defgroup CMSIS_core_register Defines and Type Definitions - \brief Type definitions and defines for Cortex-M processor based devices. -*/ - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CORE Status and Control Registers - \brief Core Register type definitions. - @{ - */ - -/** - \brief Union type to access the Application Program Status Register (APSR). - */ -typedef union -{ - struct - { - uint32_t _reserved0:27; /*!< bit: 0..26 Reserved */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} APSR_Type; - -/* APSR Register Definitions */ -#define APSR_N_Pos 31U /*!< APSR: N Position */ -#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ - -#define APSR_Z_Pos 30U /*!< APSR: Z Position */ -#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ - -#define APSR_C_Pos 29U /*!< APSR: C Position */ -#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ - -#define APSR_V_Pos 28U /*!< APSR: V Position */ -#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ - -#define APSR_Q_Pos 27U /*!< APSR: Q Position */ -#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ - - -/** - \brief Union type to access the Interrupt Program Status Register (IPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} IPSR_Type; - -/* IPSR Register Definitions */ -#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ -#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ - - -/** - \brief Union type to access the Special-Purpose Program Status Registers (xPSR). - */ -typedef union -{ - struct - { - uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ - uint32_t _reserved0:1; /*!< bit: 9 Reserved */ - uint32_t ICI_IT_1:6; /*!< bit: 10..15 ICI/IT part 1 */ - uint32_t _reserved1:8; /*!< bit: 16..23 Reserved */ - uint32_t T:1; /*!< bit: 24 Thumb bit */ - uint32_t ICI_IT_2:2; /*!< bit: 25..26 ICI/IT part 2 */ - uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ - uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ - uint32_t C:1; /*!< bit: 29 Carry condition code flag */ - uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ - uint32_t N:1; /*!< bit: 31 Negative condition code flag */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} xPSR_Type; - -/* xPSR Register Definitions */ -#define xPSR_N_Pos 31U /*!< xPSR: N Position */ -#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ - -#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ -#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ - -#define xPSR_C_Pos 29U /*!< xPSR: C Position */ -#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ - -#define xPSR_V_Pos 28U /*!< xPSR: V Position */ -#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ - -#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ -#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ - -#define xPSR_ICI_IT_2_Pos 25U /*!< xPSR: ICI/IT part 2 Position */ -#define xPSR_ICI_IT_2_Msk (3UL << xPSR_ICI_IT_2_Pos) /*!< xPSR: ICI/IT part 2 Mask */ - -#define xPSR_T_Pos 24U /*!< xPSR: T Position */ -#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ - -#define xPSR_ICI_IT_1_Pos 10U /*!< xPSR: ICI/IT part 1 Position */ -#define xPSR_ICI_IT_1_Msk (0x3FUL << xPSR_ICI_IT_1_Pos) /*!< xPSR: ICI/IT part 1 Mask */ - -#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ -#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ - - -/** - \brief Union type to access the Control Registers (CONTROL). - */ -typedef union -{ - struct - { - uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ - uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ - uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ - } b; /*!< Structure used for bit access */ - uint32_t w; /*!< Type used for word access */ -} CONTROL_Type; - -/* CONTROL Register Definitions */ -#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ -#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ - -#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ -#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ - -/*@} end of group CMSIS_CORE */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) - \brief Type definitions for the NVIC Registers - @{ - */ - -/** - \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). - */ -typedef struct -{ - __IOM uint32_t ISER[8U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ - uint32_t RESERVED0[24U]; - __IOM uint32_t ICER[8U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ - uint32_t RSERVED1[24U]; - __IOM uint32_t ISPR[8U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ - uint32_t RESERVED2[24U]; - __IOM uint32_t ICPR[8U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ - uint32_t RESERVED3[24U]; - __IOM uint32_t IABR[8U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ - uint32_t RESERVED4[56U]; - __IOM uint8_t IP[240U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ - uint32_t RESERVED5[644U]; - __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ -} NVIC_Type; - -/* Software Triggered Interrupt Register Definitions */ -#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ -#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ - -/*@} end of group CMSIS_NVIC */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCB System Control Block (SCB) - \brief Type definitions for the System Control Block Registers - @{ - */ - -/** - \brief Structure type to access the System Control Block (SCB). - */ -typedef struct -{ - __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ - __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ - __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ - __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ - __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ - __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ - __IOM uint8_t SHP[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ - __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ - __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ - __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ - __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ - __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ - __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ - __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ - __IM uint32_t PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ - __IM uint32_t DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ - __IM uint32_t ADR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ - __IM uint32_t MMFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ - __IM uint32_t ISAR[5U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ - uint32_t RESERVED0[5U]; - __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ - uint32_t RESERVED1[129U]; - __IOM uint32_t SFCR; /*!< Offset: 0x290 (R/W) Security Features Control Register */ -} SCB_Type; - -/* SCB CPUID Register Definitions */ -#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ -#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ - -#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ -#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ - -#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ -#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ - -#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ -#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ - -#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ -#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ - -/* SCB Interrupt Control State Register Definitions */ -#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ -#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ - -#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ -#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ - -#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ -#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ - -#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ -#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ - -#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ -#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ - -#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ -#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ - -#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ -#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ - -#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ -#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ - -#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ -#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ - -#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ -#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ - -/* SCB Vector Table Offset Register Definitions */ -#define SCB_VTOR_TBLBASE_Pos 29U /*!< SCB VTOR: TBLBASE Position */ -#define SCB_VTOR_TBLBASE_Msk (1UL << SCB_VTOR_TBLBASE_Pos) /*!< SCB VTOR: TBLBASE Mask */ - -#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ -#define SCB_VTOR_TBLOFF_Msk (0x3FFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ - -/* SCB Application Interrupt and Reset Control Register Definitions */ -#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ -#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ - -#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ -#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ - -#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ -#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ - -#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ -#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ - -#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ -#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ - -#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ -#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ - -#define SCB_AIRCR_VECTRESET_Pos 0U /*!< SCB AIRCR: VECTRESET Position */ -#define SCB_AIRCR_VECTRESET_Msk (1UL /*<< SCB_AIRCR_VECTRESET_Pos*/) /*!< SCB AIRCR: VECTRESET Mask */ - -/* SCB System Control Register Definitions */ -#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ -#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ - -#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ -#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ - -#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ -#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ - -/* SCB Configuration Control Register Definitions */ -#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ -#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ - -#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ -#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ - -#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ -#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ - -#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ -#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ - -#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ -#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ - -#define SCB_CCR_NONBASETHRDENA_Pos 0U /*!< SCB CCR: NONBASETHRDENA Position */ -#define SCB_CCR_NONBASETHRDENA_Msk (1UL /*<< SCB_CCR_NONBASETHRDENA_Pos*/) /*!< SCB CCR: NONBASETHRDENA Mask */ - -/* SCB System Handler Control and State Register Definitions */ -#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ -#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ - -#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ -#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ - -#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ -#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ - -#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ -#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ - -#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ -#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ - -#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ -#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ - -#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ -#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ - -#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ -#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ - -#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ -#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ - -#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ -#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ - -#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ -#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ - -#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ -#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ - -#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ -#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ - -#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ -#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ - -/* SCB Configurable Fault Status Register Definitions */ -#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ -#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ - -#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ -#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ - -#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ -#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ - -/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ -#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ - -#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ -#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ - -#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ -#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ - -#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ -#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ - -#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ -#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ - -/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ -#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ - -#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ -#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ - -#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ -#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ - -#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ -#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ - -#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ -#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ - -#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ -#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ - -/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ -#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ -#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ - -#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ -#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ - -#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ -#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ - -#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ -#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ - -#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ -#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ - -#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ -#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ - -/* SCB Hard Fault Status Register Definitions */ -#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ -#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ - -#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ -#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ - -#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ -#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ - -/* SCB Debug Fault Status Register Definitions */ -#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ -#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ - -#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ -#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ - -#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ -#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ - -#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ -#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ - -#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ -#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ - -/*@} end of group CMSIS_SCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) - \brief Type definitions for the System Control and ID Register not in the SCB - @{ - */ - -/** - \brief Structure type to access the System Control and ID Register not in the SCB. - */ -typedef struct -{ - uint32_t RESERVED0[1U]; - __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ - uint32_t RESERVED1[1U]; -} SCnSCB_Type; - -/* Interrupt Controller Type Register Definitions */ -#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ -#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ - -/*@} end of group CMSIS_SCnotSCB */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_SysTick System Tick Timer (SysTick) - \brief Type definitions for the System Timer Registers. - @{ - */ - -/** - \brief Structure type to access the System Timer (SysTick). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ - __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ - __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ - __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ -} SysTick_Type; - -/* SysTick Control / Status Register Definitions */ -#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ -#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ - -#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ -#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ - -#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ -#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ - -#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ -#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ - -/* SysTick Reload Register Definitions */ -#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ -#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ - -/* SysTick Current Register Definitions */ -#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ -#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ - -/* SysTick Calibration Register Definitions */ -#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ -#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ - -#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ -#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ - -#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ -#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ - -/*@} end of group CMSIS_SysTick */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) - \brief Type definitions for the Instrumentation Trace Macrocell (ITM) - @{ - */ - -/** - \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). - */ -typedef struct -{ - __OM union - { - __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ - __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ - __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ - } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ - uint32_t RESERVED0[864U]; - __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ - uint32_t RESERVED1[15U]; - __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ - uint32_t RESERVED2[15U]; - __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ - uint32_t RESERVED3[29U]; - __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ - __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ - __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ - uint32_t RESERVED4[43U]; - __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ - __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ - uint32_t RESERVED5[6U]; - __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ - __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ - __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ - __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ - __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ - __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ - __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ - __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ - __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ - __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ - __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ - __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ -} ITM_Type; - -/* ITM Trace Privilege Register Definitions */ -#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ -#define ITM_TPR_PRIVMASK_Msk (0xFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ - -/* ITM Trace Control Register Definitions */ -#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ -#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ - -#define ITM_TCR_TraceBusID_Pos 16U /*!< ITM TCR: ATBID Position */ -#define ITM_TCR_TraceBusID_Msk (0x7FUL << ITM_TCR_TraceBusID_Pos) /*!< ITM TCR: ATBID Mask */ - -#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ -#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ - -#define ITM_TCR_TSPrescale_Pos 8U /*!< ITM TCR: TSPrescale Position */ -#define ITM_TCR_TSPrescale_Msk (3UL << ITM_TCR_TSPrescale_Pos) /*!< ITM TCR: TSPrescale Mask */ - -#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ -#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ - -#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ -#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ - -#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ -#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ - -#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ -#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ - -#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ -#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ - -/* ITM Integration Write Register Definitions */ -#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ -#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ - -/* ITM Integration Read Register Definitions */ -#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ -#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ - -/* ITM Integration Mode Control Register Definitions */ -#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ -#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ - -/* ITM Lock Status Register Definitions */ -#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ -#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ - -#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ -#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ - -#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ -#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ - -/*@}*/ /* end of group CMSIS_ITM */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) - \brief Type definitions for the Data Watchpoint and Trace (DWT) - @{ - */ - -/** - \brief Structure type to access the Data Watchpoint and Trace Register (DWT). - */ -typedef struct -{ - __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ - __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ - __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ - __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ - __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ - __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ - __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ - __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ - __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ - __IOM uint32_t MASK0; /*!< Offset: 0x024 (R/W) Mask Register 0 */ - __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ - uint32_t RESERVED0[1U]; - __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ - __IOM uint32_t MASK1; /*!< Offset: 0x034 (R/W) Mask Register 1 */ - __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ - uint32_t RESERVED1[1U]; - __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ - __IOM uint32_t MASK2; /*!< Offset: 0x044 (R/W) Mask Register 2 */ - __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ - uint32_t RESERVED2[1U]; - __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ - __IOM uint32_t MASK3; /*!< Offset: 0x054 (R/W) Mask Register 3 */ - __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ -} DWT_Type; - -/* DWT Control Register Definitions */ -#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ -#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ - -#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ -#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ - -#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ -#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ - -#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ -#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ - -#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ -#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ - -#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ -#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ - -#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ -#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ - -#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ -#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ - -#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ -#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ - -#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ -#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ - -#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ -#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ - -#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ -#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ - -#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ -#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ - -#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ -#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ - -#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ -#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ - -#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ -#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ - -#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ -#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ - -#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ -#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ - -/* DWT CPI Count Register Definitions */ -#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ -#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ - -/* DWT Exception Overhead Count Register Definitions */ -#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ -#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ - -/* DWT Sleep Count Register Definitions */ -#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ -#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ - -/* DWT LSU Count Register Definitions */ -#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ -#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ - -/* DWT Folded-instruction Count Register Definitions */ -#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ -#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ - -/* DWT Comparator Mask Register Definitions */ -#define DWT_MASK_MASK_Pos 0U /*!< DWT MASK: MASK Position */ -#define DWT_MASK_MASK_Msk (0x1FUL /*<< DWT_MASK_MASK_Pos*/) /*!< DWT MASK: MASK Mask */ - -/* DWT Comparator Function Register Definitions */ -#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ -#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ - -#define DWT_FUNCTION_DATAVADDR1_Pos 16U /*!< DWT FUNCTION: DATAVADDR1 Position */ -#define DWT_FUNCTION_DATAVADDR1_Msk (0xFUL << DWT_FUNCTION_DATAVADDR1_Pos) /*!< DWT FUNCTION: DATAVADDR1 Mask */ - -#define DWT_FUNCTION_DATAVADDR0_Pos 12U /*!< DWT FUNCTION: DATAVADDR0 Position */ -#define DWT_FUNCTION_DATAVADDR0_Msk (0xFUL << DWT_FUNCTION_DATAVADDR0_Pos) /*!< DWT FUNCTION: DATAVADDR0 Mask */ - -#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ -#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ - -#define DWT_FUNCTION_LNK1ENA_Pos 9U /*!< DWT FUNCTION: LNK1ENA Position */ -#define DWT_FUNCTION_LNK1ENA_Msk (0x1UL << DWT_FUNCTION_LNK1ENA_Pos) /*!< DWT FUNCTION: LNK1ENA Mask */ - -#define DWT_FUNCTION_DATAVMATCH_Pos 8U /*!< DWT FUNCTION: DATAVMATCH Position */ -#define DWT_FUNCTION_DATAVMATCH_Msk (0x1UL << DWT_FUNCTION_DATAVMATCH_Pos) /*!< DWT FUNCTION: DATAVMATCH Mask */ - -#define DWT_FUNCTION_CYCMATCH_Pos 7U /*!< DWT FUNCTION: CYCMATCH Position */ -#define DWT_FUNCTION_CYCMATCH_Msk (0x1UL << DWT_FUNCTION_CYCMATCH_Pos) /*!< DWT FUNCTION: CYCMATCH Mask */ - -#define DWT_FUNCTION_EMITRANGE_Pos 5U /*!< DWT FUNCTION: EMITRANGE Position */ -#define DWT_FUNCTION_EMITRANGE_Msk (0x1UL << DWT_FUNCTION_EMITRANGE_Pos) /*!< DWT FUNCTION: EMITRANGE Mask */ - -#define DWT_FUNCTION_FUNCTION_Pos 0U /*!< DWT FUNCTION: FUNCTION Position */ -#define DWT_FUNCTION_FUNCTION_Msk (0xFUL /*<< DWT_FUNCTION_FUNCTION_Pos*/) /*!< DWT FUNCTION: FUNCTION Mask */ - -/*@}*/ /* end of group CMSIS_DWT */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_TPI Trace Port Interface (TPI) - \brief Type definitions for the Trace Port Interface (TPI) - @{ - */ - -/** - \brief Structure type to access the Trace Port Interface Register (TPI). - */ -typedef struct -{ - __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ - __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ - uint32_t RESERVED0[2U]; - __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ - uint32_t RESERVED1[55U]; - __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ - uint32_t RESERVED2[131U]; - __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ - __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ - __IM uint32_t FSCR; /*!< Offset: 0x308 (R/ ) Formatter Synchronization Counter Register */ - uint32_t RESERVED3[759U]; - __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ - __IM uint32_t FIFO0; /*!< Offset: 0xEEC (R/ ) Integration ETM Data */ - __IM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/ ) ITATBCTR2 */ - uint32_t RESERVED4[1U]; - __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) ITATBCTR0 */ - __IM uint32_t FIFO1; /*!< Offset: 0xEFC (R/ ) Integration ITM Data */ - __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ - uint32_t RESERVED5[39U]; - __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ - __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ - uint32_t RESERVED7[8U]; - __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) TPIU_DEVID */ - __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) TPIU_DEVTYPE */ -} TPI_Type; - -/* TPI Asynchronous Clock Prescaler Register Definitions */ -#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ -#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ - -/* TPI Selected Pin Protocol Register Definitions */ -#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ -#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ - -/* TPI Formatter and Flush Status Register Definitions */ -#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ -#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ - -#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ -#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ - -#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ -#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ - -#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ -#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ - -/* TPI Formatter and Flush Control Register Definitions */ -#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ -#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ - -#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ -#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ - -/* TPI TRIGGER Register Definitions */ -#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ -#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ - -/* TPI Integration ETM Data Register Definitions (FIFO0) */ -#define TPI_FIFO0_ITM_ATVALID_Pos 29U /*!< TPI FIFO0: ITM_ATVALID Position */ -#define TPI_FIFO0_ITM_ATVALID_Msk (0x3UL << TPI_FIFO0_ITM_ATVALID_Pos) /*!< TPI FIFO0: ITM_ATVALID Mask */ - -#define TPI_FIFO0_ITM_bytecount_Pos 27U /*!< TPI FIFO0: ITM_bytecount Position */ -#define TPI_FIFO0_ITM_bytecount_Msk (0x3UL << TPI_FIFO0_ITM_bytecount_Pos) /*!< TPI FIFO0: ITM_bytecount Mask */ - -#define TPI_FIFO0_ETM_ATVALID_Pos 26U /*!< TPI FIFO0: ETM_ATVALID Position */ -#define TPI_FIFO0_ETM_ATVALID_Msk (0x3UL << TPI_FIFO0_ETM_ATVALID_Pos) /*!< TPI FIFO0: ETM_ATVALID Mask */ - -#define TPI_FIFO0_ETM_bytecount_Pos 24U /*!< TPI FIFO0: ETM_bytecount Position */ -#define TPI_FIFO0_ETM_bytecount_Msk (0x3UL << TPI_FIFO0_ETM_bytecount_Pos) /*!< TPI FIFO0: ETM_bytecount Mask */ - -#define TPI_FIFO0_ETM2_Pos 16U /*!< TPI FIFO0: ETM2 Position */ -#define TPI_FIFO0_ETM2_Msk (0xFFUL << TPI_FIFO0_ETM2_Pos) /*!< TPI FIFO0: ETM2 Mask */ - -#define TPI_FIFO0_ETM1_Pos 8U /*!< TPI FIFO0: ETM1 Position */ -#define TPI_FIFO0_ETM1_Msk (0xFFUL << TPI_FIFO0_ETM1_Pos) /*!< TPI FIFO0: ETM1 Mask */ - -#define TPI_FIFO0_ETM0_Pos 0U /*!< TPI FIFO0: ETM0 Position */ -#define TPI_FIFO0_ETM0_Msk (0xFFUL /*<< TPI_FIFO0_ETM0_Pos*/) /*!< TPI FIFO0: ETM0 Mask */ - -/* TPI ITATBCTR2 Register Definitions */ -#define TPI_ITATBCTR2_ATREADY2_Pos 0U /*!< TPI ITATBCTR2: ATREADY2 Position */ -#define TPI_ITATBCTR2_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2_Pos*/) /*!< TPI ITATBCTR2: ATREADY2 Mask */ - -#define TPI_ITATBCTR2_ATREADY1_Pos 0U /*!< TPI ITATBCTR2: ATREADY1 Position */ -#define TPI_ITATBCTR2_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1_Pos*/) /*!< TPI ITATBCTR2: ATREADY1 Mask */ - -/* TPI Integration ITM Data Register Definitions (FIFO1) */ -#define TPI_FIFO1_ITM_ATVALID_Pos 29U /*!< TPI FIFO1: ITM_ATVALID Position */ -#define TPI_FIFO1_ITM_ATVALID_Msk (0x3UL << TPI_FIFO1_ITM_ATVALID_Pos) /*!< TPI FIFO1: ITM_ATVALID Mask */ - -#define TPI_FIFO1_ITM_bytecount_Pos 27U /*!< TPI FIFO1: ITM_bytecount Position */ -#define TPI_FIFO1_ITM_bytecount_Msk (0x3UL << TPI_FIFO1_ITM_bytecount_Pos) /*!< TPI FIFO1: ITM_bytecount Mask */ - -#define TPI_FIFO1_ETM_ATVALID_Pos 26U /*!< TPI FIFO1: ETM_ATVALID Position */ -#define TPI_FIFO1_ETM_ATVALID_Msk (0x3UL << TPI_FIFO1_ETM_ATVALID_Pos) /*!< TPI FIFO1: ETM_ATVALID Mask */ - -#define TPI_FIFO1_ETM_bytecount_Pos 24U /*!< TPI FIFO1: ETM_bytecount Position */ -#define TPI_FIFO1_ETM_bytecount_Msk (0x3UL << TPI_FIFO1_ETM_bytecount_Pos) /*!< TPI FIFO1: ETM_bytecount Mask */ - -#define TPI_FIFO1_ITM2_Pos 16U /*!< TPI FIFO1: ITM2 Position */ -#define TPI_FIFO1_ITM2_Msk (0xFFUL << TPI_FIFO1_ITM2_Pos) /*!< TPI FIFO1: ITM2 Mask */ - -#define TPI_FIFO1_ITM1_Pos 8U /*!< TPI FIFO1: ITM1 Position */ -#define TPI_FIFO1_ITM1_Msk (0xFFUL << TPI_FIFO1_ITM1_Pos) /*!< TPI FIFO1: ITM1 Mask */ - -#define TPI_FIFO1_ITM0_Pos 0U /*!< TPI FIFO1: ITM0 Position */ -#define TPI_FIFO1_ITM0_Msk (0xFFUL /*<< TPI_FIFO1_ITM0_Pos*/) /*!< TPI FIFO1: ITM0 Mask */ - -/* TPI ITATBCTR0 Register Definitions */ -#define TPI_ITATBCTR0_ATREADY2_Pos 0U /*!< TPI ITATBCTR0: ATREADY2 Position */ -#define TPI_ITATBCTR0_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2_Pos*/) /*!< TPI ITATBCTR0: ATREADY2 Mask */ - -#define TPI_ITATBCTR0_ATREADY1_Pos 0U /*!< TPI ITATBCTR0: ATREADY1 Position */ -#define TPI_ITATBCTR0_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1_Pos*/) /*!< TPI ITATBCTR0: ATREADY1 Mask */ - -/* TPI Integration Mode Control Register Definitions */ -#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ -#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ - -/* TPI DEVID Register Definitions */ -#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ -#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ - -#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ -#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ - -#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ -#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ - -#define TPI_DEVID_MinBufSz_Pos 6U /*!< TPI DEVID: MinBufSz Position */ -#define TPI_DEVID_MinBufSz_Msk (0x7UL << TPI_DEVID_MinBufSz_Pos) /*!< TPI DEVID: MinBufSz Mask */ - -#define TPI_DEVID_AsynClkIn_Pos 5U /*!< TPI DEVID: AsynClkIn Position */ -#define TPI_DEVID_AsynClkIn_Msk (0x1UL << TPI_DEVID_AsynClkIn_Pos) /*!< TPI DEVID: AsynClkIn Mask */ - -#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ -#define TPI_DEVID_NrTraceInput_Msk (0x1FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ - -/* TPI DEVTYPE Register Definitions */ -#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ -#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ - -#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ -#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ - -/*@}*/ /* end of group CMSIS_TPI */ - - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_MPU Memory Protection Unit (MPU) - \brief Type definitions for the Memory Protection Unit (MPU) - @{ - */ - -/** - \brief Structure type to access the Memory Protection Unit (MPU). - */ -typedef struct -{ - __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ - __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ - __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ - __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ - __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ - __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Alias 1 Region Base Address Register */ - __IOM uint32_t RASR_A1; /*!< Offset: 0x018 (R/W) MPU Alias 1 Region Attribute and Size Register */ - __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Alias 2 Region Base Address Register */ - __IOM uint32_t RASR_A2; /*!< Offset: 0x020 (R/W) MPU Alias 2 Region Attribute and Size Register */ - __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Alias 3 Region Base Address Register */ - __IOM uint32_t RASR_A3; /*!< Offset: 0x028 (R/W) MPU Alias 3 Region Attribute and Size Register */ -} MPU_Type; - -/* MPU Type Register Definitions */ -#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ -#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ - -#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ -#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ - -#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ -#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ - -/* MPU Control Register Definitions */ -#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ -#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ - -#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ -#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ - -#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ -#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ - -/* MPU Region Number Register Definitions */ -#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ -#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ - -/* MPU Region Base Address Register Definitions */ -#define MPU_RBAR_ADDR_Pos 5U /*!< MPU RBAR: ADDR Position */ -#define MPU_RBAR_ADDR_Msk (0x7FFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ - -#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ -#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ - -#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ -#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ - -/* MPU Region Attribute and Size Register Definitions */ -#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ -#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ - -#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ -#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ - -#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ -#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ - -#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ -#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ - -#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ -#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ - -#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ -#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ - -#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ -#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ - -#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ -#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ - -#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ -#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ - -#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ -#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ - -/*@} end of group CMSIS_MPU */ -#endif - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) - \brief Type definitions for the Core Debug Registers - @{ - */ - -/** - \brief Structure type to access the Core Debug Register (CoreDebug). - */ -typedef struct -{ - __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ - __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ - __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ - __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ -} CoreDebug_Type; - -/* Debug Halting Control and Status Register Definitions */ -#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ -#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ - -#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ -#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ - -#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ -#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ - -#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ -#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ - -#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ -#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ - -#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ -#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ - -#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ -#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ - -#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ -#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ - -#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ -#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ - -#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ -#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ - -#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ -#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ - -#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ -#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ - -/* Debug Core Register Selector Register Definitions */ -#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ -#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ - -#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ -#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ - -/* Debug Exception and Monitor Control Register Definitions */ -#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ -#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ - -#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ -#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ - -#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ -#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ - -#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ -#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ - -#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ -#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ - -#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ -#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ - -#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ -#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ - -#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ -#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ - -#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ -#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ - -#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ -#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ - -#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ -#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ - -#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ -#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ - -#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ -#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ - -/*@} end of group CMSIS_CoreDebug */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_bitfield Core register bit field macros - \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). - @{ - */ - -/** - \brief Mask and shift a bit field value for use in a register bit range. - \param[in] field Name of the register bit field. - \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. - \return Masked and shifted value. -*/ -#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) - -/** - \brief Mask and shift a register value to extract a bit filed value. - \param[in] field Name of the register bit field. - \param[in] value Value of register. This parameter is interpreted as an uint32_t type. - \return Masked and shifted bit field value. -*/ -#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) - -/*@} end of group CMSIS_core_bitfield */ - - -/** - \ingroup CMSIS_core_register - \defgroup CMSIS_core_base Core Definitions - \brief Definitions for base addresses, unions, and structures. - @{ - */ - -/* Memory mapping of Core Hardware */ -#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ -#define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ -#define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ -#define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ -#define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ -#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ -#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ -#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ - -#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ -#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ -#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ -#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ -#define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ -#define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ -#define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ -#define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE) /*!< Core Debug configuration struct */ - -#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) - #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ - #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ -#endif - -/*@} */ - - - -/******************************************************************************* - * Hardware Abstraction Layer - Core Function Interface contains: - - Core NVIC Functions - - Core SysTick Functions - - Core Debug Functions - - Core Register Access Functions - ******************************************************************************/ -/** - \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference -*/ - - - -/* ########################## NVIC functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_NVICFunctions NVIC Functions - \brief Functions that manage interrupts and exceptions via the NVIC. - @{ - */ - -#ifdef CMSIS_NVIC_VIRTUAL - #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE - #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" - #endif - #include CMSIS_NVIC_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping - #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping - #define NVIC_EnableIRQ __NVIC_EnableIRQ - #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ - #define NVIC_DisableIRQ __NVIC_DisableIRQ - #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ - #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ - #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ - #define NVIC_GetActive __NVIC_GetActive - #define NVIC_SetPriority __NVIC_SetPriority - #define NVIC_GetPriority __NVIC_GetPriority - #define NVIC_SystemReset __NVIC_SystemReset -#endif /* CMSIS_NVIC_VIRTUAL */ - -#ifdef CMSIS_VECTAB_VIRTUAL - #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE - #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" - #endif - #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE -#else - #define NVIC_SetVector __NVIC_SetVector - #define NVIC_GetVector __NVIC_GetVector -#endif /* (CMSIS_VECTAB_VIRTUAL) */ - -#define NVIC_USER_IRQ_OFFSET 16 - - -/* The following EXC_RETURN values are saved the LR on exception entry */ -#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ -#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ -#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ - - - -/** - \brief Set Priority Grouping - \details Sets the priority grouping field using the required unlock sequence. - The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. - Only values from 0..7 are used. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Priority grouping field. - */ -__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) -{ - uint32_t reg_value; - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - - reg_value = SCB->AIRCR; /* read old register configuration */ - reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ - reg_value = (reg_value | - ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (PriorityGroupTmp << 8U) ); /* Insert write key and priorty group */ - SCB->AIRCR = reg_value; -} - - -/** - \brief Get Priority Grouping - \details Reads the priority grouping field from the NVIC Interrupt Controller. - \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). - */ -__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) -{ - return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); -} - - -/** - \brief Enable Interrupt - \details Enables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Interrupt Enable status - \details Returns a device specific interrupt enable status from the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt is not enabled. - \return 1 Interrupt is enabled. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Disable Interrupt - \details Disables a device specific interrupt in the NVIC interrupt controller. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - __DSB(); - __ISB(); - } -} - - -/** - \brief Get Pending Interrupt - \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not pending. - \return 1 Interrupt status is pending. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Pending Interrupt - \details Sets the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Clear Pending Interrupt - \details Clears the pending bit of a device specific interrupt in the NVIC pending register. - \param [in] IRQn Device specific interrupt number. - \note IRQn must not be negative. - */ -__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); - } -} - - -/** - \brief Get Active Interrupt - \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. - \param [in] IRQn Device specific interrupt number. - \return 0 Interrupt status is not active. - \return 1 Interrupt status is active. - \note IRQn must not be negative. - */ -__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) -{ - if ((int32_t)(IRQn) >= 0) - { - return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); - } - else - { - return(0U); - } -} - - -/** - \brief Set Interrupt Priority - \details Sets the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \param [in] priority Priority to set. - \note The priority cannot be set for every processor exception. - */ -__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) -{ - if ((int32_t)(IRQn) >= 0) - { - NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } - else - { - SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); - } -} - - -/** - \brief Get Interrupt Priority - \details Reads the priority of a device specific interrupt or a processor exception. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Interrupt Priority. - Value is aligned automatically to the implemented priority bits of the microcontroller. - */ -__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) -{ - - if ((int32_t)(IRQn) >= 0) - { - return(((uint32_t)NVIC->IP[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); - } - else - { - return(((uint32_t)SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); - } -} - - -/** - \brief Encode Priority - \details Encodes the priority for an interrupt with the given priority group, - preemptive priority value, and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. - \param [in] PriorityGroup Used priority group. - \param [in] PreemptPriority Preemptive priority value (starting from 0). - \param [in] SubPriority Subpriority value (starting from 0). - \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). - */ -__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - return ( - ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | - ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) - ); -} - - -/** - \brief Decode Priority - \details Decodes an interrupt priority value with a given priority group to - preemptive priority value and subpriority value. - In case of a conflict between priority grouping and available - priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. - \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). - \param [in] PriorityGroup Used priority group. - \param [out] pPreemptPriority Preemptive priority value (starting from 0). - \param [out] pSubPriority Subpriority value (starting from 0). - */ -__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) -{ - uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ - uint32_t PreemptPriorityBits; - uint32_t SubPriorityBits; - - PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); - SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); - - *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); - *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); -} - - -/** - \brief Set Interrupt Vector - \details Sets an interrupt vector in SRAM based interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - VTOR must been relocated to SRAM before. - \param [in] IRQn Interrupt number - \param [in] vector Address of interrupt handler function - */ -__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; -} - - -/** - \brief Get Interrupt Vector - \details Reads an interrupt vector from interrupt vector table. - The interrupt number can be positive to specify a device specific interrupt, - or negative to specify a processor exception. - \param [in] IRQn Interrupt number. - \return Address of interrupt handler function - */ -__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) -{ - uint32_t *vectors = (uint32_t *)SCB->VTOR; - return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; -} - - -/** - \brief System Reset - \details Initiates a system reset request to reset the MCU. - */ -__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) -{ - __DSB(); /* Ensure all outstanding memory accesses included - buffered write are completed before reset */ - SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | - (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | - SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ - __DSB(); /* Ensure completion of memory access */ - - for(;;) /* wait until reset */ - { - __NOP(); - } -} - -/*@} end of CMSIS_Core_NVICFunctions */ - - -/* ########################## FPU functions #################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_FpuFunctions FPU Functions - \brief Function that provides FPU type. - @{ - */ - -/** - \brief get FPU type - \details returns the FPU type - \returns - - \b 0: No FPU - - \b 1: Single precision FPU - - \b 2: Double + Single precision FPU - */ -__STATIC_INLINE uint32_t SCB_GetFPUType(void) -{ - return 0U; /* No FPU */ -} - - -/*@} end of CMSIS_Core_FpuFunctions */ - - - -/* ################################## SysTick function ############################################ */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_Core_SysTickFunctions SysTick Functions - \brief Functions that configure the System. - @{ - */ - -#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) - -/** - \brief System Tick Configuration - \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. - Counter is in free running mode to generate periodic interrupts. - \param [in] ticks Number of ticks between two interrupts. - \return 0 Function succeeded. - \return 1 Function failed. - \note When the variable __Vendor_SysTickConfig is set to 1, then the - function SysTick_Config is not included. In this case, the file device.h - must contain a vendor-specific implementation of this function. - */ -__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) -{ - if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) - { - return (1UL); /* Reload value impossible */ - } - - SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ - NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ - SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ - SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | - SysTick_CTRL_TICKINT_Msk | - SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ - return (0UL); /* Function successful */ -} - -#endif - -/*@} end of CMSIS_Core_SysTickFunctions */ - - - -/* ##################################### Debug In/Output function ########################################### */ -/** - \ingroup CMSIS_Core_FunctionInterface - \defgroup CMSIS_core_DebugFunctions ITM Functions - \brief Functions that access the ITM debug interface. - @{ - */ - -extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ -#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ - - -/** - \brief ITM Send Character - \details Transmits a character via the ITM channel 0, and - \li Just returns when no debugger is connected that has booked the output. - \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. - \param [in] ch Character to transmit. - \returns Character to transmit. - */ -__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) -{ - if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ - ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ - { - while (ITM->PORT[0U].u32 == 0UL) - { - __NOP(); - } - ITM->PORT[0U].u8 = (uint8_t)ch; - } - return (ch); -} - - -/** - \brief ITM Receive Character - \details Inputs a character via the external variable \ref ITM_RxBuffer. - \return Received character. - \return -1 No character pending. - */ -__STATIC_INLINE int32_t ITM_ReceiveChar (void) -{ - int32_t ch = -1; /* no character available */ - - if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) - { - ch = ITM_RxBuffer; - ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ - } - - return (ch); -} - - -/** - \brief ITM Check Character - \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. - \return 0 No character available. - \return 1 Character available. - */ -__STATIC_INLINE int32_t ITM_CheckChar (void) -{ - - if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) - { - return (0); /* no character available */ - } - else - { - return (1); /* character available */ - } -} - -/*@} end of CMSIS_core_DebugFunctions */ - - - - -#ifdef __cplusplus -} -#endif - -#endif /* __CORE_SC300_H_DEPENDANT */ - -#endif /* __CMSIS_GENERIC */ +/**************************************************************************//** + * @file core_sc300.h + * @brief CMSIS SC300 Core Peripheral Access Layer Header File + * @version V5.0.6 + * @date 04. June 2018 + ******************************************************************************/ +/* + * Copyright (c) 2009-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef __CORE_SC300_H_GENERIC +#define __CORE_SC300_H_GENERIC + +#include + +#ifdef __cplusplus + extern "C" { +#endif + +/** + \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions + CMSIS violates the following MISRA-C:2004 rules: + + \li Required Rule 8.5, object/function definition in header file.
    + Function definitions in header files are used to allow 'inlining'. + + \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.
    + Unions are used for effective representation of core registers. + + \li Advisory Rule 19.7, Function-like macro defined.
    + Function-like macros are used to allow more efficient code. + */ + + +/******************************************************************************* + * CMSIS definitions + ******************************************************************************/ +/** + \ingroup SC3000 + @{ + */ + +#include "cmsis_version.h" + +/* CMSIS SC300 definitions */ +#define __SC300_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] CMSIS HAL main version */ +#define __SC300_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] CMSIS HAL sub version */ +#define __SC300_CMSIS_VERSION ((__SC300_CMSIS_VERSION_MAIN << 16U) | \ + __SC300_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL version number */ + +#define __CORTEX_SC (300U) /*!< Cortex secure core */ + +/** __FPU_USED indicates whether an FPU is used or not. + This core does not support an FPU at all +*/ +#define __FPU_USED 0U + +#if defined ( __CC_ARM ) + #if defined __TARGET_FPU_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) + #if defined __ARM_PCS_VFP + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __ICCARM__ ) + #if defined __ARMVFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TI_ARM__ ) + #if defined __TI_VFP_SUPPORT__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __TASKING__ ) + #if defined __FPU_VFP__ + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#elif defined ( __CSMC__ ) + #if ( __CSMC__ & 0x400U) + #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)" + #endif + +#endif + +#include "cmsis_compiler.h" /* CMSIS compiler specific defines */ + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_SC300_H_GENERIC */ + +#ifndef __CMSIS_GENERIC + +#ifndef __CORE_SC300_H_DEPENDANT +#define __CORE_SC300_H_DEPENDANT + +#ifdef __cplusplus + extern "C" { +#endif + +/* check device defines and use defaults */ +#if defined __CHECK_DEVICE_DEFINES + #ifndef __SC300_REV + #define __SC300_REV 0x0000U + #warning "__SC300_REV not defined in device header file; using default!" + #endif + + #ifndef __MPU_PRESENT + #define __MPU_PRESENT 0U + #warning "__MPU_PRESENT not defined in device header file; using default!" + #endif + + #ifndef __NVIC_PRIO_BITS + #define __NVIC_PRIO_BITS 3U + #warning "__NVIC_PRIO_BITS not defined in device header file; using default!" + #endif + + #ifndef __Vendor_SysTickConfig + #define __Vendor_SysTickConfig 0U + #warning "__Vendor_SysTickConfig not defined in device header file; using default!" + #endif +#endif + +/* IO definitions (access restrictions to peripheral registers) */ +/** + \defgroup CMSIS_glob_defs CMSIS Global Defines + + IO Type Qualifiers are used + \li to specify the access to peripheral variables. + \li for automatic generation of peripheral register debug information. +*/ +#ifdef __cplusplus + #define __I volatile /*!< Defines 'read only' permissions */ +#else + #define __I volatile const /*!< Defines 'read only' permissions */ +#endif +#define __O volatile /*!< Defines 'write only' permissions */ +#define __IO volatile /*!< Defines 'read / write' permissions */ + +/* following defines should be used for structure members */ +#define __IM volatile const /*! Defines 'read only' structure member permissions */ +#define __OM volatile /*! Defines 'write only' structure member permissions */ +#define __IOM volatile /*! Defines 'read / write' structure member permissions */ + +/*@} end of group SC300 */ + + + +/******************************************************************************* + * Register Abstraction + Core Register contain: + - Core Register + - Core NVIC Register + - Core SCB Register + - Core SysTick Register + - Core Debug Register + - Core MPU Register + ******************************************************************************/ +/** + \defgroup CMSIS_core_register Defines and Type Definitions + \brief Type definitions and defines for Cortex-M processor based devices. +*/ + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CORE Status and Control Registers + \brief Core Register type definitions. + @{ + */ + +/** + \brief Union type to access the Application Program Status Register (APSR). + */ +typedef union +{ + struct + { + uint32_t _reserved0:27; /*!< bit: 0..26 Reserved */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} APSR_Type; + +/* APSR Register Definitions */ +#define APSR_N_Pos 31U /*!< APSR: N Position */ +#define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR: N Mask */ + +#define APSR_Z_Pos 30U /*!< APSR: Z Position */ +#define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR: Z Mask */ + +#define APSR_C_Pos 29U /*!< APSR: C Position */ +#define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR: C Mask */ + +#define APSR_V_Pos 28U /*!< APSR: V Position */ +#define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR: V Mask */ + +#define APSR_Q_Pos 27U /*!< APSR: Q Position */ +#define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR: Q Mask */ + + +/** + \brief Union type to access the Interrupt Program Status Register (IPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} IPSR_Type; + +/* IPSR Register Definitions */ +#define IPSR_ISR_Pos 0U /*!< IPSR: ISR Position */ +#define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR: ISR Mask */ + + +/** + \brief Union type to access the Special-Purpose Program Status Registers (xPSR). + */ +typedef union +{ + struct + { + uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */ + uint32_t _reserved0:1; /*!< bit: 9 Reserved */ + uint32_t ICI_IT_1:6; /*!< bit: 10..15 ICI/IT part 1 */ + uint32_t _reserved1:8; /*!< bit: 16..23 Reserved */ + uint32_t T:1; /*!< bit: 24 Thumb bit */ + uint32_t ICI_IT_2:2; /*!< bit: 25..26 ICI/IT part 2 */ + uint32_t Q:1; /*!< bit: 27 Saturation condition flag */ + uint32_t V:1; /*!< bit: 28 Overflow condition code flag */ + uint32_t C:1; /*!< bit: 29 Carry condition code flag */ + uint32_t Z:1; /*!< bit: 30 Zero condition code flag */ + uint32_t N:1; /*!< bit: 31 Negative condition code flag */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} xPSR_Type; + +/* xPSR Register Definitions */ +#define xPSR_N_Pos 31U /*!< xPSR: N Position */ +#define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR: N Mask */ + +#define xPSR_Z_Pos 30U /*!< xPSR: Z Position */ +#define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR: Z Mask */ + +#define xPSR_C_Pos 29U /*!< xPSR: C Position */ +#define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR: C Mask */ + +#define xPSR_V_Pos 28U /*!< xPSR: V Position */ +#define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR: V Mask */ + +#define xPSR_Q_Pos 27U /*!< xPSR: Q Position */ +#define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR: Q Mask */ + +#define xPSR_ICI_IT_2_Pos 25U /*!< xPSR: ICI/IT part 2 Position */ +#define xPSR_ICI_IT_2_Msk (3UL << xPSR_ICI_IT_2_Pos) /*!< xPSR: ICI/IT part 2 Mask */ + +#define xPSR_T_Pos 24U /*!< xPSR: T Position */ +#define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR: T Mask */ + +#define xPSR_ICI_IT_1_Pos 10U /*!< xPSR: ICI/IT part 1 Position */ +#define xPSR_ICI_IT_1_Msk (0x3FUL << xPSR_ICI_IT_1_Pos) /*!< xPSR: ICI/IT part 1 Mask */ + +#define xPSR_ISR_Pos 0U /*!< xPSR: ISR Position */ +#define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR: ISR Mask */ + + +/** + \brief Union type to access the Control Registers (CONTROL). + */ +typedef union +{ + struct + { + uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */ + uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */ + uint32_t _reserved1:30; /*!< bit: 2..31 Reserved */ + } b; /*!< Structure used for bit access */ + uint32_t w; /*!< Type used for word access */ +} CONTROL_Type; + +/* CONTROL Register Definitions */ +#define CONTROL_SPSEL_Pos 1U /*!< CONTROL: SPSEL Position */ +#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONTROL: SPSEL Mask */ + +#define CONTROL_nPRIV_Pos 0U /*!< CONTROL: nPRIV Position */ +#define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONTROL: nPRIV Mask */ + +/*@} end of group CMSIS_CORE */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC) + \brief Type definitions for the NVIC Registers + @{ + */ + +/** + \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC). + */ +typedef struct +{ + __IOM uint32_t ISER[8U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */ + uint32_t RESERVED0[24U]; + __IOM uint32_t ICER[8U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register */ + uint32_t RSERVED1[24U]; + __IOM uint32_t ISPR[8U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register */ + uint32_t RESERVED2[24U]; + __IOM uint32_t ICPR[8U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register */ + uint32_t RESERVED3[24U]; + __IOM uint32_t IABR[8U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */ + uint32_t RESERVED4[56U]; + __IOM uint8_t IP[240U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bit wide) */ + uint32_t RESERVED5[644U]; + __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Register */ +} NVIC_Type; + +/* Software Triggered Interrupt Register Definitions */ +#define NVIC_STIR_INTID_Pos 0U /*!< STIR: INTLINESNUM Position */ +#define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: INTLINESNUM Mask */ + +/*@} end of group CMSIS_NVIC */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCB System Control Block (SCB) + \brief Type definitions for the System Control Block Registers + @{ + */ + +/** + \brief Structure type to access the System Control Block (SCB). + */ +typedef struct +{ + __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */ + __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Register */ + __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */ + __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset Control Register */ + __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */ + __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register */ + __IOM uint8_t SHP[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registers (4-7, 8-11, 12-15) */ + __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State Register */ + __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Register */ + __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */ + __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */ + __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register */ + __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */ + __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register */ + __IM uint32_t PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */ + __IM uint32_t DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */ + __IM uint32_t ADR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */ + __IM uint32_t MMFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */ + __IM uint32_t ISAR[5U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Register */ + uint32_t RESERVED0[5U]; + __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Register */ + uint32_t RESERVED1[129U]; + __IOM uint32_t SFCR; /*!< Offset: 0x290 (R/W) Security Features Control Register */ +} SCB_Type; + +/* SCB CPUID Register Definitions */ +#define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB CPUID: IMPLEMENTER Position */ +#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB CPUID: IMPLEMENTER Mask */ + +#define SCB_CPUID_VARIANT_Pos 20U /*!< SCB CPUID: VARIANT Position */ +#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB CPUID: VARIANT Mask */ + +#define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB CPUID: ARCHITECTURE Position */ +#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB CPUID: ARCHITECTURE Mask */ + +#define SCB_CPUID_PARTNO_Pos 4U /*!< SCB CPUID: PARTNO Position */ +#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB CPUID: PARTNO Mask */ + +#define SCB_CPUID_REVISION_Pos 0U /*!< SCB CPUID: REVISION Position */ +#define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB CPUID: REVISION Mask */ + +/* SCB Interrupt Control State Register Definitions */ +#define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB ICSR: NMIPENDSET Position */ +#define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB ICSR: NMIPENDSET Mask */ + +#define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB ICSR: PENDSVSET Position */ +#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB ICSR: PENDSVSET Mask */ + +#define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB ICSR: PENDSVCLR Position */ +#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB ICSR: PENDSVCLR Mask */ + +#define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB ICSR: PENDSTSET Position */ +#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB ICSR: PENDSTSET Mask */ + +#define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB ICSR: PENDSTCLR Position */ +#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB ICSR: PENDSTCLR Mask */ + +#define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB ICSR: ISRPREEMPT Position */ +#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB ICSR: ISRPREEMPT Mask */ + +#define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB ICSR: ISRPENDING Position */ +#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB ICSR: ISRPENDING Mask */ + +#define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB ICSR: VECTPENDING Position */ +#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB ICSR: VECTPENDING Mask */ + +#define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB ICSR: RETTOBASE Position */ +#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB ICSR: RETTOBASE Mask */ + +#define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB ICSR: VECTACTIVE Position */ +#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB ICSR: VECTACTIVE Mask */ + +/* SCB Vector Table Offset Register Definitions */ +#define SCB_VTOR_TBLBASE_Pos 29U /*!< SCB VTOR: TBLBASE Position */ +#define SCB_VTOR_TBLBASE_Msk (1UL << SCB_VTOR_TBLBASE_Pos) /*!< SCB VTOR: TBLBASE Mask */ + +#define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB VTOR: TBLOFF Position */ +#define SCB_VTOR_TBLOFF_Msk (0x3FFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB VTOR: TBLOFF Mask */ + +/* SCB Application Interrupt and Reset Control Register Definitions */ +#define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB AIRCR: VECTKEY Position */ +#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB AIRCR: VECTKEY Mask */ + +#define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB AIRCR: VECTKEYSTAT Position */ +#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB AIRCR: VECTKEYSTAT Mask */ + +#define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB AIRCR: ENDIANESS Position */ +#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB AIRCR: ENDIANESS Mask */ + +#define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB AIRCR: PRIGROUP Position */ +#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB AIRCR: PRIGROUP Mask */ + +#define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB AIRCR: SYSRESETREQ Position */ +#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB AIRCR: SYSRESETREQ Mask */ + +#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB AIRCR: VECTCLRACTIVE Position */ +#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB AIRCR: VECTCLRACTIVE Mask */ + +#define SCB_AIRCR_VECTRESET_Pos 0U /*!< SCB AIRCR: VECTRESET Position */ +#define SCB_AIRCR_VECTRESET_Msk (1UL /*<< SCB_AIRCR_VECTRESET_Pos*/) /*!< SCB AIRCR: VECTRESET Mask */ + +/* SCB System Control Register Definitions */ +#define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB SCR: SEVONPEND Position */ +#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB SCR: SEVONPEND Mask */ + +#define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB SCR: SLEEPDEEP Position */ +#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB SCR: SLEEPDEEP Mask */ + +#define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB SCR: SLEEPONEXIT Position */ +#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB SCR: SLEEPONEXIT Mask */ + +/* SCB Configuration Control Register Definitions */ +#define SCB_CCR_STKALIGN_Pos 9U /*!< SCB CCR: STKALIGN Position */ +#define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB CCR: STKALIGN Mask */ + +#define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB CCR: BFHFNMIGN Position */ +#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB CCR: BFHFNMIGN Mask */ + +#define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB CCR: DIV_0_TRP Position */ +#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB CCR: DIV_0_TRP Mask */ + +#define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB CCR: UNALIGN_TRP Position */ +#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB CCR: UNALIGN_TRP Mask */ + +#define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB CCR: USERSETMPEND Position */ +#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB CCR: USERSETMPEND Mask */ + +#define SCB_CCR_NONBASETHRDENA_Pos 0U /*!< SCB CCR: NONBASETHRDENA Position */ +#define SCB_CCR_NONBASETHRDENA_Msk (1UL /*<< SCB_CCR_NONBASETHRDENA_Pos*/) /*!< SCB CCR: NONBASETHRDENA Mask */ + +/* SCB System Handler Control and State Register Definitions */ +#define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB SHCSR: USGFAULTENA Position */ +#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB SHCSR: USGFAULTENA Mask */ + +#define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB SHCSR: BUSFAULTENA Position */ +#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB SHCSR: BUSFAULTENA Mask */ + +#define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB SHCSR: MEMFAULTENA Position */ +#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB SHCSR: MEMFAULTENA Mask */ + +#define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB SHCSR: SVCALLPENDED Position */ +#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB SHCSR: SVCALLPENDED Mask */ + +#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB SHCSR: BUSFAULTPENDED Position */ +#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB SHCSR: BUSFAULTPENDED Mask */ + +#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB SHCSR: MEMFAULTPENDED Position */ +#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB SHCSR: MEMFAULTPENDED Mask */ + +#define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB SHCSR: USGFAULTPENDED Position */ +#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB SHCSR: USGFAULTPENDED Mask */ + +#define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB SHCSR: SYSTICKACT Position */ +#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB SHCSR: SYSTICKACT Mask */ + +#define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB SHCSR: PENDSVACT Position */ +#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB SHCSR: PENDSVACT Mask */ + +#define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB SHCSR: MONITORACT Position */ +#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB SHCSR: MONITORACT Mask */ + +#define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB SHCSR: SVCALLACT Position */ +#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB SHCSR: SVCALLACT Mask */ + +#define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB SHCSR: USGFAULTACT Position */ +#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB SHCSR: USGFAULTACT Mask */ + +#define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB SHCSR: BUSFAULTACT Position */ +#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB SHCSR: BUSFAULTACT Mask */ + +#define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB SHCSR: MEMFAULTACT Position */ +#define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB SHCSR: MEMFAULTACT Mask */ + +/* SCB Configurable Fault Status Register Definitions */ +#define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB CFSR: Usage Fault Status Register Position */ +#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB CFSR: Usage Fault Status Register Mask */ + +#define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB CFSR: Bus Fault Status Register Position */ +#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB CFSR: Bus Fault Status Register Mask */ + +#define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB CFSR: Memory Manage Fault Status Register Position */ +#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB CFSR: Memory Manage Fault Status Register Mask */ + +/* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB CFSR (MMFSR): MMARVALID Position */ +#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB CFSR (MMFSR): MMARVALID Mask */ + +#define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB CFSR (MMFSR): MSTKERR Position */ +#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB CFSR (MMFSR): MSTKERR Mask */ + +#define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB CFSR (MMFSR): MUNSTKERR Position */ +#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB CFSR (MMFSR): MUNSTKERR Mask */ + +#define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB CFSR (MMFSR): DACCVIOL Position */ +#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB CFSR (MMFSR): DACCVIOL Mask */ + +#define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB CFSR (MMFSR): IACCVIOL Position */ +#define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB CFSR (MMFSR): IACCVIOL Mask */ + +/* BusFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB CFSR (BFSR): BFARVALID Position */ +#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB CFSR (BFSR): BFARVALID Mask */ + +#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB CFSR (BFSR): STKERR Position */ +#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB CFSR (BFSR): STKERR Mask */ + +#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB CFSR (BFSR): UNSTKERR Position */ +#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB CFSR (BFSR): UNSTKERR Mask */ + +#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB CFSR (BFSR): IMPRECISERR Position */ +#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB CFSR (BFSR): IMPRECISERR Mask */ + +#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB CFSR (BFSR): PRECISERR Position */ +#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB CFSR (BFSR): PRECISERR Mask */ + +#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB CFSR (BFSR): IBUSERR Position */ +#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB CFSR (BFSR): IBUSERR Mask */ + +/* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ +#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB CFSR (UFSR): DIVBYZERO Position */ +#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB CFSR (UFSR): DIVBYZERO Mask */ + +#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB CFSR (UFSR): UNALIGNED Position */ +#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB CFSR (UFSR): UNALIGNED Mask */ + +#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB CFSR (UFSR): NOCP Position */ +#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB CFSR (UFSR): NOCP Mask */ + +#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB CFSR (UFSR): INVPC Position */ +#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB CFSR (UFSR): INVPC Mask */ + +#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB CFSR (UFSR): INVSTATE Position */ +#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB CFSR (UFSR): INVSTATE Mask */ + +#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB CFSR (UFSR): UNDEFINSTR Position */ +#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB CFSR (UFSR): UNDEFINSTR Mask */ + +/* SCB Hard Fault Status Register Definitions */ +#define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB HFSR: DEBUGEVT Position */ +#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB HFSR: DEBUGEVT Mask */ + +#define SCB_HFSR_FORCED_Pos 30U /*!< SCB HFSR: FORCED Position */ +#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB HFSR: FORCED Mask */ + +#define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB HFSR: VECTTBL Position */ +#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB HFSR: VECTTBL Mask */ + +/* SCB Debug Fault Status Register Definitions */ +#define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB DFSR: EXTERNAL Position */ +#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB DFSR: EXTERNAL Mask */ + +#define SCB_DFSR_VCATCH_Pos 3U /*!< SCB DFSR: VCATCH Position */ +#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB DFSR: VCATCH Mask */ + +#define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB DFSR: DWTTRAP Position */ +#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB DFSR: DWTTRAP Mask */ + +#define SCB_DFSR_BKPT_Pos 1U /*!< SCB DFSR: BKPT Position */ +#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB DFSR: BKPT Mask */ + +#define SCB_DFSR_HALTED_Pos 0U /*!< SCB DFSR: HALTED Position */ +#define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB DFSR: HALTED Mask */ + +/*@} end of group CMSIS_SCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB) + \brief Type definitions for the System Control and ID Register not in the SCB + @{ + */ + +/** + \brief Structure type to access the System Control and ID Register not in the SCB. + */ +typedef struct +{ + uint32_t RESERVED0[1U]; + __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Register */ + uint32_t RESERVED1[1U]; +} SCnSCB_Type; + +/* Interrupt Controller Type Register Definitions */ +#define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: INTLINESNUM Position */ +#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: INTLINESNUM Mask */ + +/*@} end of group CMSIS_SCnotSCB */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_SysTick System Tick Timer (SysTick) + \brief Type definitions for the System Timer Registers. + @{ + */ + +/** + \brief Structure type to access the System Timer (SysTick). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Register */ + __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */ + __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register */ + __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */ +} SysTick_Type; + +/* SysTick Control / Status Register Definitions */ +#define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysTick CTRL: COUNTFLAG Position */ +#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysTick CTRL: COUNTFLAG Mask */ + +#define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysTick CTRL: CLKSOURCE Position */ +#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysTick CTRL: CLKSOURCE Mask */ + +#define SysTick_CTRL_TICKINT_Pos 1U /*!< SysTick CTRL: TICKINT Position */ +#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysTick CTRL: TICKINT Mask */ + +#define SysTick_CTRL_ENABLE_Pos 0U /*!< SysTick CTRL: ENABLE Position */ +#define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysTick CTRL: ENABLE Mask */ + +/* SysTick Reload Register Definitions */ +#define SysTick_LOAD_RELOAD_Pos 0U /*!< SysTick LOAD: RELOAD Position */ +#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysTick LOAD: RELOAD Mask */ + +/* SysTick Current Register Definitions */ +#define SysTick_VAL_CURRENT_Pos 0U /*!< SysTick VAL: CURRENT Position */ +#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysTick VAL: CURRENT Mask */ + +/* SysTick Calibration Register Definitions */ +#define SysTick_CALIB_NOREF_Pos 31U /*!< SysTick CALIB: NOREF Position */ +#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysTick CALIB: NOREF Mask */ + +#define SysTick_CALIB_SKEW_Pos 30U /*!< SysTick CALIB: SKEW Position */ +#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysTick CALIB: SKEW Mask */ + +#define SysTick_CALIB_TENMS_Pos 0U /*!< SysTick CALIB: TENMS Position */ +#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysTick CALIB: TENMS Mask */ + +/*@} end of group CMSIS_SysTick */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM) + \brief Type definitions for the Instrumentation Trace Macrocell (ITM) + @{ + */ + +/** + \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM). + */ +typedef struct +{ + __OM union + { + __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */ + __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */ + __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */ + } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */ + uint32_t RESERVED0[864U]; + __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */ + uint32_t RESERVED1[15U]; + __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */ + uint32_t RESERVED2[15U]; + __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */ + uint32_t RESERVED3[29U]; + __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register */ + __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */ + __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Register */ + uint32_t RESERVED4[43U]; + __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */ + __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */ + uint32_t RESERVED5[6U]; + __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Register #4 */ + __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Register #5 */ + __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Register #6 */ + __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Register #7 */ + __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Register #0 */ + __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Register #1 */ + __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Register #2 */ + __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Register #3 */ + __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Register #0 */ + __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Register #1 */ + __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Register #2 */ + __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Register #3 */ +} ITM_Type; + +/* ITM Trace Privilege Register Definitions */ +#define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM TPR: PRIVMASK Position */ +#define ITM_TPR_PRIVMASK_Msk (0xFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM TPR: PRIVMASK Mask */ + +/* ITM Trace Control Register Definitions */ +#define ITM_TCR_BUSY_Pos 23U /*!< ITM TCR: BUSY Position */ +#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM TCR: BUSY Mask */ + +#define ITM_TCR_TraceBusID_Pos 16U /*!< ITM TCR: ATBID Position */ +#define ITM_TCR_TraceBusID_Msk (0x7FUL << ITM_TCR_TraceBusID_Pos) /*!< ITM TCR: ATBID Mask */ + +#define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM TCR: Global timestamp frequency Position */ +#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM TCR: Global timestamp frequency Mask */ + +#define ITM_TCR_TSPrescale_Pos 8U /*!< ITM TCR: TSPrescale Position */ +#define ITM_TCR_TSPrescale_Msk (3UL << ITM_TCR_TSPrescale_Pos) /*!< ITM TCR: TSPrescale Mask */ + +#define ITM_TCR_SWOENA_Pos 4U /*!< ITM TCR: SWOENA Position */ +#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM TCR: SWOENA Mask */ + +#define ITM_TCR_DWTENA_Pos 3U /*!< ITM TCR: DWTENA Position */ +#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM TCR: DWTENA Mask */ + +#define ITM_TCR_SYNCENA_Pos 2U /*!< ITM TCR: SYNCENA Position */ +#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM TCR: SYNCENA Mask */ + +#define ITM_TCR_TSENA_Pos 1U /*!< ITM TCR: TSENA Position */ +#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM TCR: TSENA Mask */ + +#define ITM_TCR_ITMENA_Pos 0U /*!< ITM TCR: ITM Enable bit Position */ +#define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM TCR: ITM Enable bit Mask */ + +/* ITM Integration Write Register Definitions */ +#define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM IWR: ATVALIDM Position */ +#define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM IWR: ATVALIDM Mask */ + +/* ITM Integration Read Register Definitions */ +#define ITM_IRR_ATREADYM_Pos 0U /*!< ITM IRR: ATREADYM Position */ +#define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM IRR: ATREADYM Mask */ + +/* ITM Integration Mode Control Register Definitions */ +#define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM IMCR: INTEGRATION Position */ +#define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM IMCR: INTEGRATION Mask */ + +/* ITM Lock Status Register Definitions */ +#define ITM_LSR_ByteAcc_Pos 2U /*!< ITM LSR: ByteAcc Position */ +#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM LSR: ByteAcc Mask */ + +#define ITM_LSR_Access_Pos 1U /*!< ITM LSR: Access Position */ +#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM LSR: Access Mask */ + +#define ITM_LSR_Present_Pos 0U /*!< ITM LSR: Present Position */ +#define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM LSR: Present Mask */ + +/*@}*/ /* end of group CMSIS_ITM */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT) + \brief Type definitions for the Data Watchpoint and Trace (DWT) + @{ + */ + +/** + \brief Structure type to access the Data Watchpoint and Trace Register (DWT). + */ +typedef struct +{ + __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ + __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */ + __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */ + __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Register */ + __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */ + __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */ + __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Register */ + __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register */ + __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */ + __IOM uint32_t MASK0; /*!< Offset: 0x024 (R/W) Mask Register 0 */ + __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */ + uint32_t RESERVED0[1U]; + __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */ + __IOM uint32_t MASK1; /*!< Offset: 0x034 (R/W) Mask Register 1 */ + __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */ + uint32_t RESERVED1[1U]; + __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */ + __IOM uint32_t MASK2; /*!< Offset: 0x044 (R/W) Mask Register 2 */ + __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */ + uint32_t RESERVED2[1U]; + __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */ + __IOM uint32_t MASK3; /*!< Offset: 0x054 (R/W) Mask Register 3 */ + __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */ +} DWT_Type; + +/* DWT Control Register Definitions */ +#define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTRL: NUMCOMP Position */ +#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTRL: NUMCOMP Mask */ + +#define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTRL: NOTRCPKT Position */ +#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTRL: NOTRCPKT Mask */ + +#define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTRL: NOEXTTRIG Position */ +#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTRL: NOEXTTRIG Mask */ + +#define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTRL: NOCYCCNT Position */ +#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTRL: NOCYCCNT Mask */ + +#define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTRL: NOPRFCNT Position */ +#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTRL: NOPRFCNT Mask */ + +#define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTRL: CYCEVTENA Position */ +#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTRL: CYCEVTENA Mask */ + +#define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTRL: FOLDEVTENA Position */ +#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTRL: FOLDEVTENA Mask */ + +#define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTRL: LSUEVTENA Position */ +#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTRL: LSUEVTENA Mask */ + +#define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTRL: SLEEPEVTENA Position */ +#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTRL: SLEEPEVTENA Mask */ + +#define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTRL: EXCEVTENA Position */ +#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTRL: EXCEVTENA Mask */ + +#define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTRL: CPIEVTENA Position */ +#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTRL: CPIEVTENA Mask */ + +#define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTRL: EXCTRCENA Position */ +#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTRL: EXCTRCENA Mask */ + +#define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTRL: PCSAMPLENA Position */ +#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTRL: PCSAMPLENA Mask */ + +#define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTRL: SYNCTAP Position */ +#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTRL: SYNCTAP Mask */ + +#define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTRL: CYCTAP Position */ +#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTRL: CYCTAP Mask */ + +#define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTRL: POSTINIT Position */ +#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTRL: POSTINIT Mask */ + +#define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTRL: POSTPRESET Position */ +#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTRL: POSTPRESET Mask */ + +#define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTRL: CYCCNTENA Position */ +#define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTRL: CYCCNTENA Mask */ + +/* DWT CPI Count Register Definitions */ +#define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPICNT: CPICNT Position */ +#define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPICNT: CPICNT Mask */ + +/* DWT Exception Overhead Count Register Definitions */ +#define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXCCNT: EXCCNT Position */ +#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXCCNT: EXCCNT Mask */ + +/* DWT Sleep Count Register Definitions */ +#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLEEPCNT: SLEEPCNT Position */ +#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLEEPCNT: SLEEPCNT Mask */ + +/* DWT LSU Count Register Definitions */ +#define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSUCNT: LSUCNT Position */ +#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSUCNT: LSUCNT Mask */ + +/* DWT Folded-instruction Count Register Definitions */ +#define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOLDCNT: FOLDCNT Position */ +#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOLDCNT: FOLDCNT Mask */ + +/* DWT Comparator Mask Register Definitions */ +#define DWT_MASK_MASK_Pos 0U /*!< DWT MASK: MASK Position */ +#define DWT_MASK_MASK_Msk (0x1FUL /*<< DWT_MASK_MASK_Pos*/) /*!< DWT MASK: MASK Mask */ + +/* DWT Comparator Function Register Definitions */ +#define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUNCTION: MATCHED Position */ +#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUNCTION: MATCHED Mask */ + +#define DWT_FUNCTION_DATAVADDR1_Pos 16U /*!< DWT FUNCTION: DATAVADDR1 Position */ +#define DWT_FUNCTION_DATAVADDR1_Msk (0xFUL << DWT_FUNCTION_DATAVADDR1_Pos) /*!< DWT FUNCTION: DATAVADDR1 Mask */ + +#define DWT_FUNCTION_DATAVADDR0_Pos 12U /*!< DWT FUNCTION: DATAVADDR0 Position */ +#define DWT_FUNCTION_DATAVADDR0_Msk (0xFUL << DWT_FUNCTION_DATAVADDR0_Pos) /*!< DWT FUNCTION: DATAVADDR0 Mask */ + +#define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUNCTION: DATAVSIZE Position */ +#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUNCTION: DATAVSIZE Mask */ + +#define DWT_FUNCTION_LNK1ENA_Pos 9U /*!< DWT FUNCTION: LNK1ENA Position */ +#define DWT_FUNCTION_LNK1ENA_Msk (0x1UL << DWT_FUNCTION_LNK1ENA_Pos) /*!< DWT FUNCTION: LNK1ENA Mask */ + +#define DWT_FUNCTION_DATAVMATCH_Pos 8U /*!< DWT FUNCTION: DATAVMATCH Position */ +#define DWT_FUNCTION_DATAVMATCH_Msk (0x1UL << DWT_FUNCTION_DATAVMATCH_Pos) /*!< DWT FUNCTION: DATAVMATCH Mask */ + +#define DWT_FUNCTION_CYCMATCH_Pos 7U /*!< DWT FUNCTION: CYCMATCH Position */ +#define DWT_FUNCTION_CYCMATCH_Msk (0x1UL << DWT_FUNCTION_CYCMATCH_Pos) /*!< DWT FUNCTION: CYCMATCH Mask */ + +#define DWT_FUNCTION_EMITRANGE_Pos 5U /*!< DWT FUNCTION: EMITRANGE Position */ +#define DWT_FUNCTION_EMITRANGE_Msk (0x1UL << DWT_FUNCTION_EMITRANGE_Pos) /*!< DWT FUNCTION: EMITRANGE Mask */ + +#define DWT_FUNCTION_FUNCTION_Pos 0U /*!< DWT FUNCTION: FUNCTION Position */ +#define DWT_FUNCTION_FUNCTION_Msk (0xFUL /*<< DWT_FUNCTION_FUNCTION_Pos*/) /*!< DWT FUNCTION: FUNCTION Mask */ + +/*@}*/ /* end of group CMSIS_DWT */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_TPI Trace Port Interface (TPI) + \brief Type definitions for the Trace Port Interface (TPI) + @{ + */ + +/** + \brief Structure type to access the Trace Port Interface Register (TPI). + */ +typedef struct +{ + __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Register */ + __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Register */ + uint32_t RESERVED0[2U]; + __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Register */ + uint32_t RESERVED1[55U]; + __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register */ + uint32_t RESERVED2[131U]; + __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Register */ + __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Register */ + __IM uint32_t FSCR; /*!< Offset: 0x308 (R/ ) Formatter Synchronization Counter Register */ + uint32_t RESERVED3[759U]; + __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */ + __IM uint32_t FIFO0; /*!< Offset: 0xEEC (R/ ) Integration ETM Data */ + __IM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/ ) ITATBCTR2 */ + uint32_t RESERVED4[1U]; + __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) ITATBCTR0 */ + __IM uint32_t FIFO1; /*!< Offset: 0xEFC (R/ ) Integration ITM Data */ + __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ + uint32_t RESERVED5[39U]; + __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */ + __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */ + uint32_t RESERVED7[8U]; + __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) TPIU_DEVID */ + __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) TPIU_DEVTYPE */ +} TPI_Type; + +/* TPI Asynchronous Clock Prescaler Register Definitions */ +#define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACPR: PRESCALER Position */ +#define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACPR: PRESCALER Mask */ + +/* TPI Selected Pin Protocol Register Definitions */ +#define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPPR: TXMODE Position */ +#define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPPR: TXMODE Mask */ + +/* TPI Formatter and Flush Status Register Definitions */ +#define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFSR: FtNonStop Position */ +#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFSR: FtNonStop Mask */ + +#define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFSR: TCPresent Position */ +#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFSR: TCPresent Mask */ + +#define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFSR: FtStopped Position */ +#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFSR: FtStopped Mask */ + +#define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFSR: FlInProg Position */ +#define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFSR: FlInProg Mask */ + +/* TPI Formatter and Flush Control Register Definitions */ +#define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFCR: TrigIn Position */ +#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFCR: TrigIn Mask */ + +#define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFCR: EnFCont Position */ +#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFCR: EnFCont Mask */ + +/* TPI TRIGGER Register Definitions */ +#define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRIGGER: TRIGGER Position */ +#define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRIGGER: TRIGGER Mask */ + +/* TPI Integration ETM Data Register Definitions (FIFO0) */ +#define TPI_FIFO0_ITM_ATVALID_Pos 29U /*!< TPI FIFO0: ITM_ATVALID Position */ +#define TPI_FIFO0_ITM_ATVALID_Msk (0x3UL << TPI_FIFO0_ITM_ATVALID_Pos) /*!< TPI FIFO0: ITM_ATVALID Mask */ + +#define TPI_FIFO0_ITM_bytecount_Pos 27U /*!< TPI FIFO0: ITM_bytecount Position */ +#define TPI_FIFO0_ITM_bytecount_Msk (0x3UL << TPI_FIFO0_ITM_bytecount_Pos) /*!< TPI FIFO0: ITM_bytecount Mask */ + +#define TPI_FIFO0_ETM_ATVALID_Pos 26U /*!< TPI FIFO0: ETM_ATVALID Position */ +#define TPI_FIFO0_ETM_ATVALID_Msk (0x3UL << TPI_FIFO0_ETM_ATVALID_Pos) /*!< TPI FIFO0: ETM_ATVALID Mask */ + +#define TPI_FIFO0_ETM_bytecount_Pos 24U /*!< TPI FIFO0: ETM_bytecount Position */ +#define TPI_FIFO0_ETM_bytecount_Msk (0x3UL << TPI_FIFO0_ETM_bytecount_Pos) /*!< TPI FIFO0: ETM_bytecount Mask */ + +#define TPI_FIFO0_ETM2_Pos 16U /*!< TPI FIFO0: ETM2 Position */ +#define TPI_FIFO0_ETM2_Msk (0xFFUL << TPI_FIFO0_ETM2_Pos) /*!< TPI FIFO0: ETM2 Mask */ + +#define TPI_FIFO0_ETM1_Pos 8U /*!< TPI FIFO0: ETM1 Position */ +#define TPI_FIFO0_ETM1_Msk (0xFFUL << TPI_FIFO0_ETM1_Pos) /*!< TPI FIFO0: ETM1 Mask */ + +#define TPI_FIFO0_ETM0_Pos 0U /*!< TPI FIFO0: ETM0 Position */ +#define TPI_FIFO0_ETM0_Msk (0xFFUL /*<< TPI_FIFO0_ETM0_Pos*/) /*!< TPI FIFO0: ETM0 Mask */ + +/* TPI ITATBCTR2 Register Definitions */ +#define TPI_ITATBCTR2_ATREADY2_Pos 0U /*!< TPI ITATBCTR2: ATREADY2 Position */ +#define TPI_ITATBCTR2_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2_Pos*/) /*!< TPI ITATBCTR2: ATREADY2 Mask */ + +#define TPI_ITATBCTR2_ATREADY1_Pos 0U /*!< TPI ITATBCTR2: ATREADY1 Position */ +#define TPI_ITATBCTR2_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1_Pos*/) /*!< TPI ITATBCTR2: ATREADY1 Mask */ + +/* TPI Integration ITM Data Register Definitions (FIFO1) */ +#define TPI_FIFO1_ITM_ATVALID_Pos 29U /*!< TPI FIFO1: ITM_ATVALID Position */ +#define TPI_FIFO1_ITM_ATVALID_Msk (0x3UL << TPI_FIFO1_ITM_ATVALID_Pos) /*!< TPI FIFO1: ITM_ATVALID Mask */ + +#define TPI_FIFO1_ITM_bytecount_Pos 27U /*!< TPI FIFO1: ITM_bytecount Position */ +#define TPI_FIFO1_ITM_bytecount_Msk (0x3UL << TPI_FIFO1_ITM_bytecount_Pos) /*!< TPI FIFO1: ITM_bytecount Mask */ + +#define TPI_FIFO1_ETM_ATVALID_Pos 26U /*!< TPI FIFO1: ETM_ATVALID Position */ +#define TPI_FIFO1_ETM_ATVALID_Msk (0x3UL << TPI_FIFO1_ETM_ATVALID_Pos) /*!< TPI FIFO1: ETM_ATVALID Mask */ + +#define TPI_FIFO1_ETM_bytecount_Pos 24U /*!< TPI FIFO1: ETM_bytecount Position */ +#define TPI_FIFO1_ETM_bytecount_Msk (0x3UL << TPI_FIFO1_ETM_bytecount_Pos) /*!< TPI FIFO1: ETM_bytecount Mask */ + +#define TPI_FIFO1_ITM2_Pos 16U /*!< TPI FIFO1: ITM2 Position */ +#define TPI_FIFO1_ITM2_Msk (0xFFUL << TPI_FIFO1_ITM2_Pos) /*!< TPI FIFO1: ITM2 Mask */ + +#define TPI_FIFO1_ITM1_Pos 8U /*!< TPI FIFO1: ITM1 Position */ +#define TPI_FIFO1_ITM1_Msk (0xFFUL << TPI_FIFO1_ITM1_Pos) /*!< TPI FIFO1: ITM1 Mask */ + +#define TPI_FIFO1_ITM0_Pos 0U /*!< TPI FIFO1: ITM0 Position */ +#define TPI_FIFO1_ITM0_Msk (0xFFUL /*<< TPI_FIFO1_ITM0_Pos*/) /*!< TPI FIFO1: ITM0 Mask */ + +/* TPI ITATBCTR0 Register Definitions */ +#define TPI_ITATBCTR0_ATREADY2_Pos 0U /*!< TPI ITATBCTR0: ATREADY2 Position */ +#define TPI_ITATBCTR0_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2_Pos*/) /*!< TPI ITATBCTR0: ATREADY2 Mask */ + +#define TPI_ITATBCTR0_ATREADY1_Pos 0U /*!< TPI ITATBCTR0: ATREADY1 Position */ +#define TPI_ITATBCTR0_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1_Pos*/) /*!< TPI ITATBCTR0: ATREADY1 Mask */ + +/* TPI Integration Mode Control Register Definitions */ +#define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITCTRL: Mode Position */ +#define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITCTRL: Mode Mask */ + +/* TPI DEVID Register Definitions */ +#define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEVID: NRZVALID Position */ +#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEVID: NRZVALID Mask */ + +#define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEVID: MANCVALID Position */ +#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEVID: MANCVALID Mask */ + +#define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEVID: PTINVALID Position */ +#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEVID: PTINVALID Mask */ + +#define TPI_DEVID_MinBufSz_Pos 6U /*!< TPI DEVID: MinBufSz Position */ +#define TPI_DEVID_MinBufSz_Msk (0x7UL << TPI_DEVID_MinBufSz_Pos) /*!< TPI DEVID: MinBufSz Mask */ + +#define TPI_DEVID_AsynClkIn_Pos 5U /*!< TPI DEVID: AsynClkIn Position */ +#define TPI_DEVID_AsynClkIn_Msk (0x1UL << TPI_DEVID_AsynClkIn_Pos) /*!< TPI DEVID: AsynClkIn Mask */ + +#define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEVID: NrTraceInput Position */ +#define TPI_DEVID_NrTraceInput_Msk (0x1FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEVID: NrTraceInput Mask */ + +/* TPI DEVTYPE Register Definitions */ +#define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEVTYPE: SubType Position */ +#define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEVTYPE: SubType Mask */ + +#define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEVTYPE: MajorType Position */ +#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEVTYPE: MajorType Mask */ + +/*@}*/ /* end of group CMSIS_TPI */ + + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_MPU Memory Protection Unit (MPU) + \brief Type definitions for the Memory Protection Unit (MPU) + @{ + */ + +/** + \brief Structure type to access the Memory Protection Unit (MPU). + */ +typedef struct +{ + __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */ + __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */ + __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */ + __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register */ + __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Register */ + __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Alias 1 Region Base Address Register */ + __IOM uint32_t RASR_A1; /*!< Offset: 0x018 (R/W) MPU Alias 1 Region Attribute and Size Register */ + __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Alias 2 Region Base Address Register */ + __IOM uint32_t RASR_A2; /*!< Offset: 0x020 (R/W) MPU Alias 2 Region Attribute and Size Register */ + __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Alias 3 Region Base Address Register */ + __IOM uint32_t RASR_A3; /*!< Offset: 0x028 (R/W) MPU Alias 3 Region Attribute and Size Register */ +} MPU_Type; + +/* MPU Type Register Definitions */ +#define MPU_TYPE_IREGION_Pos 16U /*!< MPU TYPE: IREGION Position */ +#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU TYPE: IREGION Mask */ + +#define MPU_TYPE_DREGION_Pos 8U /*!< MPU TYPE: DREGION Position */ +#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU TYPE: DREGION Mask */ + +#define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU TYPE: SEPARATE Position */ +#define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU TYPE: SEPARATE Mask */ + +/* MPU Control Register Definitions */ +#define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU CTRL: PRIVDEFENA Position */ +#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU CTRL: PRIVDEFENA Mask */ + +#define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU CTRL: HFNMIENA Position */ +#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU CTRL: HFNMIENA Mask */ + +#define MPU_CTRL_ENABLE_Pos 0U /*!< MPU CTRL: ENABLE Position */ +#define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU CTRL: ENABLE Mask */ + +/* MPU Region Number Register Definitions */ +#define MPU_RNR_REGION_Pos 0U /*!< MPU RNR: REGION Position */ +#define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU RNR: REGION Mask */ + +/* MPU Region Base Address Register Definitions */ +#define MPU_RBAR_ADDR_Pos 5U /*!< MPU RBAR: ADDR Position */ +#define MPU_RBAR_ADDR_Msk (0x7FFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU RBAR: ADDR Mask */ + +#define MPU_RBAR_VALID_Pos 4U /*!< MPU RBAR: VALID Position */ +#define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU RBAR: VALID Mask */ + +#define MPU_RBAR_REGION_Pos 0U /*!< MPU RBAR: REGION Position */ +#define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU RBAR: REGION Mask */ + +/* MPU Region Attribute and Size Register Definitions */ +#define MPU_RASR_ATTRS_Pos 16U /*!< MPU RASR: MPU Region Attribute field Position */ +#define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU RASR: MPU Region Attribute field Mask */ + +#define MPU_RASR_XN_Pos 28U /*!< MPU RASR: ATTRS.XN Position */ +#define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU RASR: ATTRS.XN Mask */ + +#define MPU_RASR_AP_Pos 24U /*!< MPU RASR: ATTRS.AP Position */ +#define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU RASR: ATTRS.AP Mask */ + +#define MPU_RASR_TEX_Pos 19U /*!< MPU RASR: ATTRS.TEX Position */ +#define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU RASR: ATTRS.TEX Mask */ + +#define MPU_RASR_S_Pos 18U /*!< MPU RASR: ATTRS.S Position */ +#define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU RASR: ATTRS.S Mask */ + +#define MPU_RASR_C_Pos 17U /*!< MPU RASR: ATTRS.C Position */ +#define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU RASR: ATTRS.C Mask */ + +#define MPU_RASR_B_Pos 16U /*!< MPU RASR: ATTRS.B Position */ +#define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU RASR: ATTRS.B Mask */ + +#define MPU_RASR_SRD_Pos 8U /*!< MPU RASR: Sub-Region Disable Position */ +#define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU RASR: Sub-Region Disable Mask */ + +#define MPU_RASR_SIZE_Pos 1U /*!< MPU RASR: Region Size Field Position */ +#define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU RASR: Region Size Field Mask */ + +#define MPU_RASR_ENABLE_Pos 0U /*!< MPU RASR: Region enable bit Position */ +#define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU RASR: Region enable bit Disable Mask */ + +/*@} end of group CMSIS_MPU */ +#endif + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) + \brief Type definitions for the Core Debug Registers + @{ + */ + +/** + \brief Structure type to access the Core Debug Register (CoreDebug). + */ +typedef struct +{ + __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status Register */ + __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Register */ + __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Register */ + __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Control Register */ +} CoreDebug_Type; + +/* Debug Halting Control and Status Register Definitions */ +#define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< CoreDebug DHCSR: DBGKEY Position */ +#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< CoreDebug DHCSR: DBGKEY Mask */ + +#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< CoreDebug DHCSR: S_RESET_ST Position */ +#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< CoreDebug DHCSR: S_RESET_ST Mask */ + +#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< CoreDebug DHCSR: S_RETIRE_ST Position */ +#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< CoreDebug DHCSR: S_RETIRE_ST Mask */ + +#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< CoreDebug DHCSR: S_LOCKUP Position */ +#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< CoreDebug DHCSR: S_LOCKUP Mask */ + +#define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< CoreDebug DHCSR: S_SLEEP Position */ +#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< CoreDebug DHCSR: S_SLEEP Mask */ + +#define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< CoreDebug DHCSR: S_HALT Position */ +#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< CoreDebug DHCSR: S_HALT Mask */ + +#define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< CoreDebug DHCSR: S_REGRDY Position */ +#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< CoreDebug DHCSR: S_REGRDY Mask */ + +#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< CoreDebug DHCSR: C_SNAPSTALL Position */ +#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< CoreDebug DHCSR: C_SNAPSTALL Mask */ + +#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< CoreDebug DHCSR: C_MASKINTS Position */ +#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< CoreDebug DHCSR: C_MASKINTS Mask */ + +#define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< CoreDebug DHCSR: C_STEP Position */ +#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< CoreDebug DHCSR: C_STEP Mask */ + +#define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< CoreDebug DHCSR: C_HALT Position */ +#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< CoreDebug DHCSR: C_HALT Mask */ + +#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< CoreDebug DHCSR: C_DEBUGEN Position */ +#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< CoreDebug DHCSR: C_DEBUGEN Mask */ + +/* Debug Core Register Selector Register Definitions */ +#define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< CoreDebug DCRSR: REGWnR Position */ +#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< CoreDebug DCRSR: REGWnR Mask */ + +#define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< CoreDebug DCRSR: REGSEL Position */ +#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< CoreDebug DCRSR: REGSEL Mask */ + +/* Debug Exception and Monitor Control Register Definitions */ +#define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< CoreDebug DEMCR: TRCENA Position */ +#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< CoreDebug DEMCR: TRCENA Mask */ + +#define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< CoreDebug DEMCR: MON_REQ Position */ +#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< CoreDebug DEMCR: MON_REQ Mask */ + +#define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< CoreDebug DEMCR: MON_STEP Position */ +#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< CoreDebug DEMCR: MON_STEP Mask */ + +#define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< CoreDebug DEMCR: MON_PEND Position */ +#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< CoreDebug DEMCR: MON_PEND Mask */ + +#define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< CoreDebug DEMCR: MON_EN Position */ +#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< CoreDebug DEMCR: MON_EN Mask */ + +#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< CoreDebug DEMCR: VC_HARDERR Position */ +#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< CoreDebug DEMCR: VC_HARDERR Mask */ + +#define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< CoreDebug DEMCR: VC_INTERR Position */ +#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< CoreDebug DEMCR: VC_INTERR Mask */ + +#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< CoreDebug DEMCR: VC_BUSERR Position */ +#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< CoreDebug DEMCR: VC_BUSERR Mask */ + +#define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< CoreDebug DEMCR: VC_STATERR Position */ +#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< CoreDebug DEMCR: VC_STATERR Mask */ + +#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< CoreDebug DEMCR: VC_CHKERR Position */ +#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< CoreDebug DEMCR: VC_CHKERR Mask */ + +#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< CoreDebug DEMCR: VC_NOCPERR Position */ +#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< CoreDebug DEMCR: VC_NOCPERR Mask */ + +#define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< CoreDebug DEMCR: VC_MMERR Position */ +#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< CoreDebug DEMCR: VC_MMERR Mask */ + +#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< CoreDebug DEMCR: VC_CORERESET Position */ +#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< CoreDebug DEMCR: VC_CORERESET Mask */ + +/*@} end of group CMSIS_CoreDebug */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_bitfield Core register bit field macros + \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk). + @{ + */ + +/** + \brief Mask and shift a bit field value for use in a register bit range. + \param[in] field Name of the register bit field. + \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. + \return Masked and shifted value. +*/ +#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) + +/** + \brief Mask and shift a register value to extract a bit filed value. + \param[in] field Name of the register bit field. + \param[in] value Value of register. This parameter is interpreted as an uint32_t type. + \return Masked and shifted bit field value. +*/ +#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos) + +/*@} end of group CMSIS_core_bitfield */ + + +/** + \ingroup CMSIS_core_register + \defgroup CMSIS_core_base Core Definitions + \brief Definitions for base addresses, unions, and structures. + @{ + */ + +/* Memory mapping of Core Hardware */ +#define SCS_BASE (0xE000E000UL) /*!< System Control Space Base Address */ +#define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */ +#define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */ +#define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */ +#define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address */ +#define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */ +#define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */ +#define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Base Address */ + +#define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register not in SCB */ +#define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct */ +#define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration struct */ +#define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struct */ +#define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct */ +#define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct */ +#define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct */ +#define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE) /*!< Core Debug configuration struct */ + +#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) + #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit */ + #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit */ +#endif + +/*@} */ + + + +/******************************************************************************* + * Hardware Abstraction Layer + Core Function Interface contains: + - Core NVIC Functions + - Core SysTick Functions + - Core Debug Functions + - Core Register Access Functions + ******************************************************************************/ +/** + \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference +*/ + + + +/* ########################## NVIC functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_NVICFunctions NVIC Functions + \brief Functions that manage interrupts and exceptions via the NVIC. + @{ + */ + +#ifdef CMSIS_NVIC_VIRTUAL + #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE + #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h" + #endif + #include CMSIS_NVIC_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping + #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping + #define NVIC_EnableIRQ __NVIC_EnableIRQ + #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ + #define NVIC_DisableIRQ __NVIC_DisableIRQ + #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ + #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ + #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ + #define NVIC_GetActive __NVIC_GetActive + #define NVIC_SetPriority __NVIC_SetPriority + #define NVIC_GetPriority __NVIC_GetPriority + #define NVIC_SystemReset __NVIC_SystemReset +#endif /* CMSIS_NVIC_VIRTUAL */ + +#ifdef CMSIS_VECTAB_VIRTUAL + #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE + #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h" + #endif + #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE +#else + #define NVIC_SetVector __NVIC_SetVector + #define NVIC_GetVector __NVIC_GetVector +#endif /* (CMSIS_VECTAB_VIRTUAL) */ + +#define NVIC_USER_IRQ_OFFSET 16 + + +/* The following EXC_RETURN values are saved the LR on exception entry */ +#define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after return */ +#define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after return */ +#define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after return */ + + + +/** + \brief Set Priority Grouping + \details Sets the priority grouping field using the required unlock sequence. + The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field. + Only values from 0..7 are used. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Priority grouping field. + */ +__STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup) +{ + uint32_t reg_value; + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + + reg_value = SCB->AIRCR; /* read old register configuration */ + reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to change */ + reg_value = (reg_value | + ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (PriorityGroupTmp << 8U) ); /* Insert write key and priorty group */ + SCB->AIRCR = reg_value; +} + + +/** + \brief Get Priority Grouping + \details Reads the priority grouping field from the NVIC Interrupt Controller. + \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field). + */ +__STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void) +{ + return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos)); +} + + +/** + \brief Enable Interrupt + \details Enables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Interrupt Enable status + \details Returns a device specific interrupt enable status from the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt is not enabled. + \return 1 Interrupt is enabled. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Disable Interrupt + \details Disables a device specific interrupt in the NVIC interrupt controller. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + __DSB(); + __ISB(); + } +} + + +/** + \brief Get Pending Interrupt + \details Reads the NVIC pending register and returns the pending bit for the specified device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not pending. + \return 1 Interrupt status is pending. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Pending Interrupt + \details Sets the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Clear Pending Interrupt + \details Clears the pending bit of a device specific interrupt in the NVIC pending register. + \param [in] IRQn Device specific interrupt number. + \note IRQn must not be negative. + */ +__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)); + } +} + + +/** + \brief Get Active Interrupt + \details Reads the active register in the NVIC and returns the active bit for the device specific interrupt. + \param [in] IRQn Device specific interrupt number. + \return 0 Interrupt status is not active. + \return 1 Interrupt status is active. + \note IRQn must not be negative. + */ +__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn) +{ + if ((int32_t)(IRQn) >= 0) + { + return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL)); + } + else + { + return(0U); + } +} + + +/** + \brief Set Interrupt Priority + \details Sets the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \param [in] priority Priority to set. + \note The priority cannot be set for every processor exception. + */ +__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) +{ + if ((int32_t)(IRQn) >= 0) + { + NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } + else + { + SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (uint32_t)0xFFUL); + } +} + + +/** + \brief Get Interrupt Priority + \details Reads the priority of a device specific interrupt or a processor exception. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Interrupt Priority. + Value is aligned automatically to the implemented priority bits of the microcontroller. + */ +__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn) +{ + + if ((int32_t)(IRQn) >= 0) + { + return(((uint32_t)NVIC->IP[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS))); + } + else + { + return(((uint32_t)SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS))); + } +} + + +/** + \brief Encode Priority + \details Encodes the priority for an interrupt with the given priority group, + preemptive priority value, and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set. + \param [in] PriorityGroup Used priority group. + \param [in] PreemptPriority Preemptive priority value (starting from 0). + \param [in] SubPriority Subpriority value (starting from 0). + \return Encoded priority. Value can be used in the function \ref NVIC_SetPriority(). + */ +__STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + return ( + ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) | + ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL))) + ); +} + + +/** + \brief Decode Priority + \details Decodes an interrupt priority value with a given priority group to + preemptive priority value and subpriority value. + In case of a conflict between priority grouping and available + priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set. + \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC_GetPriority(). + \param [in] PriorityGroup Used priority group. + \param [out] pPreemptPriority Preemptive priority value (starting from 0). + \param [out] pSubPriority Subpriority value (starting from 0). + */ +__STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* const pPreemptPriority, uint32_t* const pSubPriority) +{ + uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used */ + uint32_t PreemptPriorityBits; + uint32_t SubPriorityBits; + + PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NVIC_PRIO_BITS) : (uint32_t)(7UL - PriorityGroupTmp); + SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(__NVIC_PRIO_BITS)); + + *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL); + *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL); +} + + +/** + \brief Set Interrupt Vector + \details Sets an interrupt vector in SRAM based interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + VTOR must been relocated to SRAM before. + \param [in] IRQn Interrupt number + \param [in] vector Address of interrupt handler function + */ +__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector; +} + + +/** + \brief Get Interrupt Vector + \details Reads an interrupt vector from interrupt vector table. + The interrupt number can be positive to specify a device specific interrupt, + or negative to specify a processor exception. + \param [in] IRQn Interrupt number. + \return Address of interrupt handler function + */ +__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn) +{ + uint32_t *vectors = (uint32_t *)SCB->VTOR; + return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET]; +} + + +/** + \brief System Reset + \details Initiates a system reset request to reset the MCU. + */ +__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void) +{ + __DSB(); /* Ensure all outstanding memory accesses included + buffered write are completed before reset */ + SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) | + (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) | + SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchanged */ + __DSB(); /* Ensure completion of memory access */ + + for(;;) /* wait until reset */ + { + __NOP(); + } +} + +/*@} end of CMSIS_Core_NVICFunctions */ + + +/* ########################## FPU functions #################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_FpuFunctions FPU Functions + \brief Function that provides FPU type. + @{ + */ + +/** + \brief get FPU type + \details returns the FPU type + \returns + - \b 0: No FPU + - \b 1: Single precision FPU + - \b 2: Double + Single precision FPU + */ +__STATIC_INLINE uint32_t SCB_GetFPUType(void) +{ + return 0U; /* No FPU */ +} + + +/*@} end of CMSIS_Core_FpuFunctions */ + + + +/* ################################## SysTick function ############################################ */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_Core_SysTickFunctions SysTick Functions + \brief Functions that configure the System. + @{ + */ + +#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U) + +/** + \brief System Tick Configuration + \details Initializes the System Timer and its interrupt, and starts the System Tick Timer. + Counter is in free running mode to generate periodic interrupts. + \param [in] ticks Number of ticks between two interrupts. + \return 0 Function succeeded. + \return 1 Function failed. + \note When the variable __Vendor_SysTickConfig is set to 1, then the + function SysTick_Config is not included. In this case, the file device.h + must contain a vendor-specific implementation of this function. + */ +__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks) +{ + if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk) + { + return (1UL); /* Reload value impossible */ + } + + SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */ + NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */ + SysTick->VAL = 0UL; /* Load the SysTick Counter Value */ + SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk | + SysTick_CTRL_TICKINT_Msk | + SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTick Timer */ + return (0UL); /* Function successful */ +} + +#endif + +/*@} end of CMSIS_Core_SysTickFunctions */ + + + +/* ##################################### Debug In/Output function ########################################### */ +/** + \ingroup CMSIS_Core_FunctionInterface + \defgroup CMSIS_core_DebugFunctions ITM Functions + \brief Functions that access the ITM debug interface. + @{ + */ + +extern volatile int32_t ITM_RxBuffer; /*!< External variable to receive characters. */ +#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U) /*!< Value identifying \ref ITM_RxBuffer is ready for next character. */ + + +/** + \brief ITM Send Character + \details Transmits a character via the ITM channel 0, and + \li Just returns when no debugger is connected that has booked the output. + \li Is blocking when a debugger is connected, but the previous character sent has not been transmitted. + \param [in] ch Character to transmit. + \returns Character to transmit. + */ +__STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) +{ + if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) && /* ITM enabled */ + ((ITM->TER & 1UL ) != 0UL) ) /* ITM Port #0 enabled */ + { + while (ITM->PORT[0U].u32 == 0UL) + { + __NOP(); + } + ITM->PORT[0U].u8 = (uint8_t)ch; + } + return (ch); +} + + +/** + \brief ITM Receive Character + \details Inputs a character via the external variable \ref ITM_RxBuffer. + \return Received character. + \return -1 No character pending. + */ +__STATIC_INLINE int32_t ITM_ReceiveChar (void) +{ + int32_t ch = -1; /* no character available */ + + if (ITM_RxBuffer != ITM_RXBUFFER_EMPTY) + { + ch = ITM_RxBuffer; + ITM_RxBuffer = ITM_RXBUFFER_EMPTY; /* ready for next character */ + } + + return (ch); +} + + +/** + \brief ITM Check Character + \details Checks whether a character is pending for reading in the variable \ref ITM_RxBuffer. + \return 0 No character available. + \return 1 Character available. + */ +__STATIC_INLINE int32_t ITM_CheckChar (void) +{ + + if (ITM_RxBuffer == ITM_RXBUFFER_EMPTY) + { + return (0); /* no character available */ + } + else + { + return (1); /* character available */ + } +} + +/*@} end of CMSIS_core_DebugFunctions */ + + + + +#ifdef __cplusplus +} +#endif + +#endif /* __CORE_SC300_H_DEPENDANT */ + +#endif /* __CMSIS_GENERIC */ diff --git a/stm32f103/Drivers/CMSIS/Include/mpu_armv7.h b/f103c8t6_HAL/Drivers/CMSIS/Include/mpu_armv7.h similarity index 97% rename from stm32f103/Drivers/CMSIS/Include/mpu_armv7.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/mpu_armv7.h index 7d4b600..0142203 100644 --- a/stm32f103/Drivers/CMSIS/Include/mpu_armv7.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/mpu_armv7.h @@ -1,270 +1,270 @@ -/****************************************************************************** - * @file mpu_armv7.h - * @brief CMSIS MPU API for Armv7-M MPU - * @version V5.0.4 - * @date 10. January 2018 - ******************************************************************************/ -/* - * Copyright (c) 2017-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef ARM_MPU_ARMV7_H -#define ARM_MPU_ARMV7_H - -#define ARM_MPU_REGION_SIZE_32B ((uint8_t)0x04U) ///!< MPU Region Size 32 Bytes -#define ARM_MPU_REGION_SIZE_64B ((uint8_t)0x05U) ///!< MPU Region Size 64 Bytes -#define ARM_MPU_REGION_SIZE_128B ((uint8_t)0x06U) ///!< MPU Region Size 128 Bytes -#define ARM_MPU_REGION_SIZE_256B ((uint8_t)0x07U) ///!< MPU Region Size 256 Bytes -#define ARM_MPU_REGION_SIZE_512B ((uint8_t)0x08U) ///!< MPU Region Size 512 Bytes -#define ARM_MPU_REGION_SIZE_1KB ((uint8_t)0x09U) ///!< MPU Region Size 1 KByte -#define ARM_MPU_REGION_SIZE_2KB ((uint8_t)0x0AU) ///!< MPU Region Size 2 KBytes -#define ARM_MPU_REGION_SIZE_4KB ((uint8_t)0x0BU) ///!< MPU Region Size 4 KBytes -#define ARM_MPU_REGION_SIZE_8KB ((uint8_t)0x0CU) ///!< MPU Region Size 8 KBytes -#define ARM_MPU_REGION_SIZE_16KB ((uint8_t)0x0DU) ///!< MPU Region Size 16 KBytes -#define ARM_MPU_REGION_SIZE_32KB ((uint8_t)0x0EU) ///!< MPU Region Size 32 KBytes -#define ARM_MPU_REGION_SIZE_64KB ((uint8_t)0x0FU) ///!< MPU Region Size 64 KBytes -#define ARM_MPU_REGION_SIZE_128KB ((uint8_t)0x10U) ///!< MPU Region Size 128 KBytes -#define ARM_MPU_REGION_SIZE_256KB ((uint8_t)0x11U) ///!< MPU Region Size 256 KBytes -#define ARM_MPU_REGION_SIZE_512KB ((uint8_t)0x12U) ///!< MPU Region Size 512 KBytes -#define ARM_MPU_REGION_SIZE_1MB ((uint8_t)0x13U) ///!< MPU Region Size 1 MByte -#define ARM_MPU_REGION_SIZE_2MB ((uint8_t)0x14U) ///!< MPU Region Size 2 MBytes -#define ARM_MPU_REGION_SIZE_4MB ((uint8_t)0x15U) ///!< MPU Region Size 4 MBytes -#define ARM_MPU_REGION_SIZE_8MB ((uint8_t)0x16U) ///!< MPU Region Size 8 MBytes -#define ARM_MPU_REGION_SIZE_16MB ((uint8_t)0x17U) ///!< MPU Region Size 16 MBytes -#define ARM_MPU_REGION_SIZE_32MB ((uint8_t)0x18U) ///!< MPU Region Size 32 MBytes -#define ARM_MPU_REGION_SIZE_64MB ((uint8_t)0x19U) ///!< MPU Region Size 64 MBytes -#define ARM_MPU_REGION_SIZE_128MB ((uint8_t)0x1AU) ///!< MPU Region Size 128 MBytes -#define ARM_MPU_REGION_SIZE_256MB ((uint8_t)0x1BU) ///!< MPU Region Size 256 MBytes -#define ARM_MPU_REGION_SIZE_512MB ((uint8_t)0x1CU) ///!< MPU Region Size 512 MBytes -#define ARM_MPU_REGION_SIZE_1GB ((uint8_t)0x1DU) ///!< MPU Region Size 1 GByte -#define ARM_MPU_REGION_SIZE_2GB ((uint8_t)0x1EU) ///!< MPU Region Size 2 GBytes -#define ARM_MPU_REGION_SIZE_4GB ((uint8_t)0x1FU) ///!< MPU Region Size 4 GBytes - -#define ARM_MPU_AP_NONE 0U ///!< MPU Access Permission no access -#define ARM_MPU_AP_PRIV 1U ///!< MPU Access Permission privileged access only -#define ARM_MPU_AP_URO 2U ///!< MPU Access Permission unprivileged access read-only -#define ARM_MPU_AP_FULL 3U ///!< MPU Access Permission full access -#define ARM_MPU_AP_PRO 5U ///!< MPU Access Permission privileged access read-only -#define ARM_MPU_AP_RO 6U ///!< MPU Access Permission read-only access - -/** MPU Region Base Address Register Value -* -* \param Region The region to be configured, number 0 to 15. -* \param BaseAddress The base address for the region. -*/ -#define ARM_MPU_RBAR(Region, BaseAddress) \ - (((BaseAddress) & MPU_RBAR_ADDR_Msk) | \ - ((Region) & MPU_RBAR_REGION_Msk) | \ - (MPU_RBAR_VALID_Msk)) - -/** -* MPU Memory Access Attributes -* -* \param TypeExtField Type extension field, allows you to configure memory access type, for example strongly ordered, peripheral. -* \param IsShareable Region is shareable between multiple bus masters. -* \param IsCacheable Region is cacheable, i.e. its value may be kept in cache. -* \param IsBufferable Region is bufferable, i.e. using write-back caching. Cacheable but non-bufferable regions use write-through policy. -*/ -#define ARM_MPU_ACCESS_(TypeExtField, IsShareable, IsCacheable, IsBufferable) \ - ((((TypeExtField ) << MPU_RASR_TEX_Pos) & MPU_RASR_TEX_Msk) | \ - (((IsShareable ) << MPU_RASR_S_Pos) & MPU_RASR_S_Msk) | \ - (((IsCacheable ) << MPU_RASR_C_Pos) & MPU_RASR_C_Msk) | \ - (((IsBufferable ) << MPU_RASR_B_Pos) & MPU_RASR_B_Msk)) - -/** -* MPU Region Attribute and Size Register Value -* -* \param DisableExec Instruction access disable bit, 1= disable instruction fetches. -* \param AccessPermission Data access permissions, allows you to configure read/write access for User and Privileged mode. -* \param AccessAttributes Memory access attribution, see \ref ARM_MPU_ACCESS_. -* \param SubRegionDisable Sub-region disable field. -* \param Size Region size of the region to be configured, for example 4K, 8K. -*/ -#define ARM_MPU_RASR_EX(DisableExec, AccessPermission, AccessAttributes, SubRegionDisable, Size) \ - ((((DisableExec ) << MPU_RASR_XN_Pos) & MPU_RASR_XN_Msk) | \ - (((AccessPermission) << MPU_RASR_AP_Pos) & MPU_RASR_AP_Msk) | \ - (((AccessAttributes) ) & (MPU_RASR_TEX_Msk | MPU_RASR_S_Msk | MPU_RASR_C_Msk | MPU_RASR_B_Msk))) - -/** -* MPU Region Attribute and Size Register Value -* -* \param DisableExec Instruction access disable bit, 1= disable instruction fetches. -* \param AccessPermission Data access permissions, allows you to configure read/write access for User and Privileged mode. -* \param TypeExtField Type extension field, allows you to configure memory access type, for example strongly ordered, peripheral. -* \param IsShareable Region is shareable between multiple bus masters. -* \param IsCacheable Region is cacheable, i.e. its value may be kept in cache. -* \param IsBufferable Region is bufferable, i.e. using write-back caching. Cacheable but non-bufferable regions use write-through policy. -* \param SubRegionDisable Sub-region disable field. -* \param Size Region size of the region to be configured, for example 4K, 8K. -*/ -#define ARM_MPU_RASR(DisableExec, AccessPermission, TypeExtField, IsShareable, IsCacheable, IsBufferable, SubRegionDisable, Size) \ - ARM_MPU_RASR_EX(DisableExec, AccessPermission, ARM_MPU_ACCESS_(TypeExtField, IsShareable, IsCacheable, IsBufferable), SubRegionDisable, Size) - -/** -* MPU Memory Access Attribute for strongly ordered memory. -* - TEX: 000b -* - Shareable -* - Non-cacheable -* - Non-bufferable -*/ -#define ARM_MPU_ACCESS_ORDERED ARM_MPU_ACCESS_(0U, 1U, 0U, 0U) - -/** -* MPU Memory Access Attribute for device memory. -* - TEX: 000b (if non-shareable) or 010b (if shareable) -* - Shareable or non-shareable -* - Non-cacheable -* - Bufferable (if shareable) or non-bufferable (if non-shareable) -* -* \param IsShareable Configures the device memory as shareable or non-shareable. -*/ -#define ARM_MPU_ACCESS_DEVICE(IsShareable) ((IsShareable) ? ARM_MPU_ACCESS_(0U, 1U, 0U, 1U) : ARM_MPU_ACCESS_(2U, 0U, 0U, 0U)) - -/** -* MPU Memory Access Attribute for normal memory. -* - TEX: 1BBb (reflecting outer cacheability rules) -* - Shareable or non-shareable -* - Cacheable or non-cacheable (reflecting inner cacheability rules) -* - Bufferable or non-bufferable (reflecting inner cacheability rules) -* -* \param OuterCp Configures the outer cache policy. -* \param InnerCp Configures the inner cache policy. -* \param IsShareable Configures the memory as shareable or non-shareable. -*/ -#define ARM_MPU_ACCESS_NORMAL(OuterCp, InnerCp, IsShareable) ARM_MPU_ACCESS_((4U | (OuterCp)), IsShareable, ((InnerCp) & 2U), ((InnerCp) & 1U)) - -/** -* MPU Memory Access Attribute non-cacheable policy. -*/ -#define ARM_MPU_CACHEP_NOCACHE 0U - -/** -* MPU Memory Access Attribute write-back, write and read allocate policy. -*/ -#define ARM_MPU_CACHEP_WB_WRA 1U - -/** -* MPU Memory Access Attribute write-through, no write allocate policy. -*/ -#define ARM_MPU_CACHEP_WT_NWA 2U - -/** -* MPU Memory Access Attribute write-back, no write allocate policy. -*/ -#define ARM_MPU_CACHEP_WB_NWA 3U - - -/** -* Struct for a single MPU Region -*/ -typedef struct { - uint32_t RBAR; //!< The region base address register value (RBAR) - uint32_t RASR; //!< The region attribute and size register value (RASR) \ref MPU_RASR -} ARM_MPU_Region_t; - -/** Enable the MPU. -* \param MPU_Control Default access permissions for unconfigured regions. -*/ -__STATIC_INLINE void ARM_MPU_Enable(uint32_t MPU_Control) -{ - __DSB(); - __ISB(); - MPU->CTRL = MPU_Control | MPU_CTRL_ENABLE_Msk; -#ifdef SCB_SHCSR_MEMFAULTENA_Msk - SCB->SHCSR |= SCB_SHCSR_MEMFAULTENA_Msk; -#endif -} - -/** Disable the MPU. -*/ -__STATIC_INLINE void ARM_MPU_Disable(void) -{ - __DSB(); - __ISB(); -#ifdef SCB_SHCSR_MEMFAULTENA_Msk - SCB->SHCSR &= ~SCB_SHCSR_MEMFAULTENA_Msk; -#endif - MPU->CTRL &= ~MPU_CTRL_ENABLE_Msk; -} - -/** Clear and disable the given MPU region. -* \param rnr Region number to be cleared. -*/ -__STATIC_INLINE void ARM_MPU_ClrRegion(uint32_t rnr) -{ - MPU->RNR = rnr; - MPU->RASR = 0U; -} - -/** Configure an MPU region. -* \param rbar Value for RBAR register. -* \param rsar Value for RSAR register. -*/ -__STATIC_INLINE void ARM_MPU_SetRegion(uint32_t rbar, uint32_t rasr) -{ - MPU->RBAR = rbar; - MPU->RASR = rasr; -} - -/** Configure the given MPU region. -* \param rnr Region number to be configured. -* \param rbar Value for RBAR register. -* \param rsar Value for RSAR register. -*/ -__STATIC_INLINE void ARM_MPU_SetRegionEx(uint32_t rnr, uint32_t rbar, uint32_t rasr) -{ - MPU->RNR = rnr; - MPU->RBAR = rbar; - MPU->RASR = rasr; -} - -/** Memcopy with strictly ordered memory access, e.g. for register targets. -* \param dst Destination data is copied to. -* \param src Source data is copied from. -* \param len Amount of data words to be copied. -*/ -__STATIC_INLINE void orderedCpy(volatile uint32_t* dst, const uint32_t* __RESTRICT src, uint32_t len) -{ - uint32_t i; - for (i = 0U; i < len; ++i) - { - dst[i] = src[i]; - } -} - -/** Load the given number of MPU regions from a table. -* \param table Pointer to the MPU configuration table. -* \param cnt Amount of regions to be configured. -*/ -__STATIC_INLINE void ARM_MPU_Load(ARM_MPU_Region_t const* table, uint32_t cnt) -{ - const uint32_t rowWordSize = sizeof(ARM_MPU_Region_t)/4U; - while (cnt > MPU_TYPE_RALIASES) { - orderedCpy(&(MPU->RBAR), &(table->RBAR), MPU_TYPE_RALIASES*rowWordSize); - table += MPU_TYPE_RALIASES; - cnt -= MPU_TYPE_RALIASES; - } - orderedCpy(&(MPU->RBAR), &(table->RBAR), cnt*rowWordSize); -} - -#endif +/****************************************************************************** + * @file mpu_armv7.h + * @brief CMSIS MPU API for Armv7-M MPU + * @version V5.0.4 + * @date 10. January 2018 + ******************************************************************************/ +/* + * Copyright (c) 2017-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef ARM_MPU_ARMV7_H +#define ARM_MPU_ARMV7_H + +#define ARM_MPU_REGION_SIZE_32B ((uint8_t)0x04U) ///!< MPU Region Size 32 Bytes +#define ARM_MPU_REGION_SIZE_64B ((uint8_t)0x05U) ///!< MPU Region Size 64 Bytes +#define ARM_MPU_REGION_SIZE_128B ((uint8_t)0x06U) ///!< MPU Region Size 128 Bytes +#define ARM_MPU_REGION_SIZE_256B ((uint8_t)0x07U) ///!< MPU Region Size 256 Bytes +#define ARM_MPU_REGION_SIZE_512B ((uint8_t)0x08U) ///!< MPU Region Size 512 Bytes +#define ARM_MPU_REGION_SIZE_1KB ((uint8_t)0x09U) ///!< MPU Region Size 1 KByte +#define ARM_MPU_REGION_SIZE_2KB ((uint8_t)0x0AU) ///!< MPU Region Size 2 KBytes +#define ARM_MPU_REGION_SIZE_4KB ((uint8_t)0x0BU) ///!< MPU Region Size 4 KBytes +#define ARM_MPU_REGION_SIZE_8KB ((uint8_t)0x0CU) ///!< MPU Region Size 8 KBytes +#define ARM_MPU_REGION_SIZE_16KB ((uint8_t)0x0DU) ///!< MPU Region Size 16 KBytes +#define ARM_MPU_REGION_SIZE_32KB ((uint8_t)0x0EU) ///!< MPU Region Size 32 KBytes +#define ARM_MPU_REGION_SIZE_64KB ((uint8_t)0x0FU) ///!< MPU Region Size 64 KBytes +#define ARM_MPU_REGION_SIZE_128KB ((uint8_t)0x10U) ///!< MPU Region Size 128 KBytes +#define ARM_MPU_REGION_SIZE_256KB ((uint8_t)0x11U) ///!< MPU Region Size 256 KBytes +#define ARM_MPU_REGION_SIZE_512KB ((uint8_t)0x12U) ///!< MPU Region Size 512 KBytes +#define ARM_MPU_REGION_SIZE_1MB ((uint8_t)0x13U) ///!< MPU Region Size 1 MByte +#define ARM_MPU_REGION_SIZE_2MB ((uint8_t)0x14U) ///!< MPU Region Size 2 MBytes +#define ARM_MPU_REGION_SIZE_4MB ((uint8_t)0x15U) ///!< MPU Region Size 4 MBytes +#define ARM_MPU_REGION_SIZE_8MB ((uint8_t)0x16U) ///!< MPU Region Size 8 MBytes +#define ARM_MPU_REGION_SIZE_16MB ((uint8_t)0x17U) ///!< MPU Region Size 16 MBytes +#define ARM_MPU_REGION_SIZE_32MB ((uint8_t)0x18U) ///!< MPU Region Size 32 MBytes +#define ARM_MPU_REGION_SIZE_64MB ((uint8_t)0x19U) ///!< MPU Region Size 64 MBytes +#define ARM_MPU_REGION_SIZE_128MB ((uint8_t)0x1AU) ///!< MPU Region Size 128 MBytes +#define ARM_MPU_REGION_SIZE_256MB ((uint8_t)0x1BU) ///!< MPU Region Size 256 MBytes +#define ARM_MPU_REGION_SIZE_512MB ((uint8_t)0x1CU) ///!< MPU Region Size 512 MBytes +#define ARM_MPU_REGION_SIZE_1GB ((uint8_t)0x1DU) ///!< MPU Region Size 1 GByte +#define ARM_MPU_REGION_SIZE_2GB ((uint8_t)0x1EU) ///!< MPU Region Size 2 GBytes +#define ARM_MPU_REGION_SIZE_4GB ((uint8_t)0x1FU) ///!< MPU Region Size 4 GBytes + +#define ARM_MPU_AP_NONE 0U ///!< MPU Access Permission no access +#define ARM_MPU_AP_PRIV 1U ///!< MPU Access Permission privileged access only +#define ARM_MPU_AP_URO 2U ///!< MPU Access Permission unprivileged access read-only +#define ARM_MPU_AP_FULL 3U ///!< MPU Access Permission full access +#define ARM_MPU_AP_PRO 5U ///!< MPU Access Permission privileged access read-only +#define ARM_MPU_AP_RO 6U ///!< MPU Access Permission read-only access + +/** MPU Region Base Address Register Value +* +* \param Region The region to be configured, number 0 to 15. +* \param BaseAddress The base address for the region. +*/ +#define ARM_MPU_RBAR(Region, BaseAddress) \ + (((BaseAddress) & MPU_RBAR_ADDR_Msk) | \ + ((Region) & MPU_RBAR_REGION_Msk) | \ + (MPU_RBAR_VALID_Msk)) + +/** +* MPU Memory Access Attributes +* +* \param TypeExtField Type extension field, allows you to configure memory access type, for example strongly ordered, peripheral. +* \param IsShareable Region is shareable between multiple bus masters. +* \param IsCacheable Region is cacheable, i.e. its value may be kept in cache. +* \param IsBufferable Region is bufferable, i.e. using write-back caching. Cacheable but non-bufferable regions use write-through policy. +*/ +#define ARM_MPU_ACCESS_(TypeExtField, IsShareable, IsCacheable, IsBufferable) \ + ((((TypeExtField ) << MPU_RASR_TEX_Pos) & MPU_RASR_TEX_Msk) | \ + (((IsShareable ) << MPU_RASR_S_Pos) & MPU_RASR_S_Msk) | \ + (((IsCacheable ) << MPU_RASR_C_Pos) & MPU_RASR_C_Msk) | \ + (((IsBufferable ) << MPU_RASR_B_Pos) & MPU_RASR_B_Msk)) + +/** +* MPU Region Attribute and Size Register Value +* +* \param DisableExec Instruction access disable bit, 1= disable instruction fetches. +* \param AccessPermission Data access permissions, allows you to configure read/write access for User and Privileged mode. +* \param AccessAttributes Memory access attribution, see \ref ARM_MPU_ACCESS_. +* \param SubRegionDisable Sub-region disable field. +* \param Size Region size of the region to be configured, for example 4K, 8K. +*/ +#define ARM_MPU_RASR_EX(DisableExec, AccessPermission, AccessAttributes, SubRegionDisable, Size) \ + ((((DisableExec ) << MPU_RASR_XN_Pos) & MPU_RASR_XN_Msk) | \ + (((AccessPermission) << MPU_RASR_AP_Pos) & MPU_RASR_AP_Msk) | \ + (((AccessAttributes) ) & (MPU_RASR_TEX_Msk | MPU_RASR_S_Msk | MPU_RASR_C_Msk | MPU_RASR_B_Msk))) + +/** +* MPU Region Attribute and Size Register Value +* +* \param DisableExec Instruction access disable bit, 1= disable instruction fetches. +* \param AccessPermission Data access permissions, allows you to configure read/write access for User and Privileged mode. +* \param TypeExtField Type extension field, allows you to configure memory access type, for example strongly ordered, peripheral. +* \param IsShareable Region is shareable between multiple bus masters. +* \param IsCacheable Region is cacheable, i.e. its value may be kept in cache. +* \param IsBufferable Region is bufferable, i.e. using write-back caching. Cacheable but non-bufferable regions use write-through policy. +* \param SubRegionDisable Sub-region disable field. +* \param Size Region size of the region to be configured, for example 4K, 8K. +*/ +#define ARM_MPU_RASR(DisableExec, AccessPermission, TypeExtField, IsShareable, IsCacheable, IsBufferable, SubRegionDisable, Size) \ + ARM_MPU_RASR_EX(DisableExec, AccessPermission, ARM_MPU_ACCESS_(TypeExtField, IsShareable, IsCacheable, IsBufferable), SubRegionDisable, Size) + +/** +* MPU Memory Access Attribute for strongly ordered memory. +* - TEX: 000b +* - Shareable +* - Non-cacheable +* - Non-bufferable +*/ +#define ARM_MPU_ACCESS_ORDERED ARM_MPU_ACCESS_(0U, 1U, 0U, 0U) + +/** +* MPU Memory Access Attribute for device memory. +* - TEX: 000b (if non-shareable) or 010b (if shareable) +* - Shareable or non-shareable +* - Non-cacheable +* - Bufferable (if shareable) or non-bufferable (if non-shareable) +* +* \param IsShareable Configures the device memory as shareable or non-shareable. +*/ +#define ARM_MPU_ACCESS_DEVICE(IsShareable) ((IsShareable) ? ARM_MPU_ACCESS_(0U, 1U, 0U, 1U) : ARM_MPU_ACCESS_(2U, 0U, 0U, 0U)) + +/** +* MPU Memory Access Attribute for normal memory. +* - TEX: 1BBb (reflecting outer cacheability rules) +* - Shareable or non-shareable +* - Cacheable or non-cacheable (reflecting inner cacheability rules) +* - Bufferable or non-bufferable (reflecting inner cacheability rules) +* +* \param OuterCp Configures the outer cache policy. +* \param InnerCp Configures the inner cache policy. +* \param IsShareable Configures the memory as shareable or non-shareable. +*/ +#define ARM_MPU_ACCESS_NORMAL(OuterCp, InnerCp, IsShareable) ARM_MPU_ACCESS_((4U | (OuterCp)), IsShareable, ((InnerCp) & 2U), ((InnerCp) & 1U)) + +/** +* MPU Memory Access Attribute non-cacheable policy. +*/ +#define ARM_MPU_CACHEP_NOCACHE 0U + +/** +* MPU Memory Access Attribute write-back, write and read allocate policy. +*/ +#define ARM_MPU_CACHEP_WB_WRA 1U + +/** +* MPU Memory Access Attribute write-through, no write allocate policy. +*/ +#define ARM_MPU_CACHEP_WT_NWA 2U + +/** +* MPU Memory Access Attribute write-back, no write allocate policy. +*/ +#define ARM_MPU_CACHEP_WB_NWA 3U + + +/** +* Struct for a single MPU Region +*/ +typedef struct { + uint32_t RBAR; //!< The region base address register value (RBAR) + uint32_t RASR; //!< The region attribute and size register value (RASR) \ref MPU_RASR +} ARM_MPU_Region_t; + +/** Enable the MPU. +* \param MPU_Control Default access permissions for unconfigured regions. +*/ +__STATIC_INLINE void ARM_MPU_Enable(uint32_t MPU_Control) +{ + __DSB(); + __ISB(); + MPU->CTRL = MPU_Control | MPU_CTRL_ENABLE_Msk; +#ifdef SCB_SHCSR_MEMFAULTENA_Msk + SCB->SHCSR |= SCB_SHCSR_MEMFAULTENA_Msk; +#endif +} + +/** Disable the MPU. +*/ +__STATIC_INLINE void ARM_MPU_Disable(void) +{ + __DSB(); + __ISB(); +#ifdef SCB_SHCSR_MEMFAULTENA_Msk + SCB->SHCSR &= ~SCB_SHCSR_MEMFAULTENA_Msk; +#endif + MPU->CTRL &= ~MPU_CTRL_ENABLE_Msk; +} + +/** Clear and disable the given MPU region. +* \param rnr Region number to be cleared. +*/ +__STATIC_INLINE void ARM_MPU_ClrRegion(uint32_t rnr) +{ + MPU->RNR = rnr; + MPU->RASR = 0U; +} + +/** Configure an MPU region. +* \param rbar Value for RBAR register. +* \param rsar Value for RSAR register. +*/ +__STATIC_INLINE void ARM_MPU_SetRegion(uint32_t rbar, uint32_t rasr) +{ + MPU->RBAR = rbar; + MPU->RASR = rasr; +} + +/** Configure the given MPU region. +* \param rnr Region number to be configured. +* \param rbar Value for RBAR register. +* \param rsar Value for RSAR register. +*/ +__STATIC_INLINE void ARM_MPU_SetRegionEx(uint32_t rnr, uint32_t rbar, uint32_t rasr) +{ + MPU->RNR = rnr; + MPU->RBAR = rbar; + MPU->RASR = rasr; +} + +/** Memcopy with strictly ordered memory access, e.g. for register targets. +* \param dst Destination data is copied to. +* \param src Source data is copied from. +* \param len Amount of data words to be copied. +*/ +__STATIC_INLINE void orderedCpy(volatile uint32_t* dst, const uint32_t* __RESTRICT src, uint32_t len) +{ + uint32_t i; + for (i = 0U; i < len; ++i) + { + dst[i] = src[i]; + } +} + +/** Load the given number of MPU regions from a table. +* \param table Pointer to the MPU configuration table. +* \param cnt Amount of regions to be configured. +*/ +__STATIC_INLINE void ARM_MPU_Load(ARM_MPU_Region_t const* table, uint32_t cnt) +{ + const uint32_t rowWordSize = sizeof(ARM_MPU_Region_t)/4U; + while (cnt > MPU_TYPE_RALIASES) { + orderedCpy(&(MPU->RBAR), &(table->RBAR), MPU_TYPE_RALIASES*rowWordSize); + table += MPU_TYPE_RALIASES; + cnt -= MPU_TYPE_RALIASES; + } + orderedCpy(&(MPU->RBAR), &(table->RBAR), cnt*rowWordSize); +} + +#endif diff --git a/stm32f103/Drivers/CMSIS/Include/mpu_armv8.h b/f103c8t6_HAL/Drivers/CMSIS/Include/mpu_armv8.h similarity index 96% rename from stm32f103/Drivers/CMSIS/Include/mpu_armv8.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/mpu_armv8.h index 99ee9f9..62571da 100644 --- a/stm32f103/Drivers/CMSIS/Include/mpu_armv8.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/mpu_armv8.h @@ -1,333 +1,333 @@ -/****************************************************************************** - * @file mpu_armv8.h - * @brief CMSIS MPU API for Armv8-M MPU - * @version V5.0.4 - * @date 10. January 2018 - ******************************************************************************/ -/* - * Copyright (c) 2017-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef ARM_MPU_ARMV8_H -#define ARM_MPU_ARMV8_H - -/** \brief Attribute for device memory (outer only) */ -#define ARM_MPU_ATTR_DEVICE ( 0U ) - -/** \brief Attribute for non-cacheable, normal memory */ -#define ARM_MPU_ATTR_NON_CACHEABLE ( 4U ) - -/** \brief Attribute for normal memory (outer and inner) -* \param NT Non-Transient: Set to 1 for non-transient data. -* \param WB Write-Back: Set to 1 to use write-back update policy. -* \param RA Read Allocation: Set to 1 to use cache allocation on read miss. -* \param WA Write Allocation: Set to 1 to use cache allocation on write miss. -*/ -#define ARM_MPU_ATTR_MEMORY_(NT, WB, RA, WA) \ - (((NT & 1U) << 3U) | ((WB & 1U) << 2U) | ((RA & 1U) << 1U) | (WA & 1U)) - -/** \brief Device memory type non Gathering, non Re-ordering, non Early Write Acknowledgement */ -#define ARM_MPU_ATTR_DEVICE_nGnRnE (0U) - -/** \brief Device memory type non Gathering, non Re-ordering, Early Write Acknowledgement */ -#define ARM_MPU_ATTR_DEVICE_nGnRE (1U) - -/** \brief Device memory type non Gathering, Re-ordering, Early Write Acknowledgement */ -#define ARM_MPU_ATTR_DEVICE_nGRE (2U) - -/** \brief Device memory type Gathering, Re-ordering, Early Write Acknowledgement */ -#define ARM_MPU_ATTR_DEVICE_GRE (3U) - -/** \brief Memory Attribute -* \param O Outer memory attributes -* \param I O == ARM_MPU_ATTR_DEVICE: Device memory attributes, else: Inner memory attributes -*/ -#define ARM_MPU_ATTR(O, I) (((O & 0xFU) << 4U) | (((O & 0xFU) != 0U) ? (I & 0xFU) : ((I & 0x3U) << 2U))) - -/** \brief Normal memory non-shareable */ -#define ARM_MPU_SH_NON (0U) - -/** \brief Normal memory outer shareable */ -#define ARM_MPU_SH_OUTER (2U) - -/** \brief Normal memory inner shareable */ -#define ARM_MPU_SH_INNER (3U) - -/** \brief Memory access permissions -* \param RO Read-Only: Set to 1 for read-only memory. -* \param NP Non-Privileged: Set to 1 for non-privileged memory. -*/ -#define ARM_MPU_AP_(RO, NP) (((RO & 1U) << 1U) | (NP & 1U)) - -/** \brief Region Base Address Register value -* \param BASE The base address bits [31:5] of a memory region. The value is zero extended. Effective address gets 32 byte aligned. -* \param SH Defines the Shareability domain for this memory region. -* \param RO Read-Only: Set to 1 for a read-only memory region. -* \param NP Non-Privileged: Set to 1 for a non-privileged memory region. -* \oaram XN eXecute Never: Set to 1 for a non-executable memory region. -*/ -#define ARM_MPU_RBAR(BASE, SH, RO, NP, XN) \ - ((BASE & MPU_RBAR_BASE_Msk) | \ - ((SH << MPU_RBAR_SH_Pos) & MPU_RBAR_SH_Msk) | \ - ((ARM_MPU_AP_(RO, NP) << MPU_RBAR_AP_Pos) & MPU_RBAR_AP_Msk) | \ - ((XN << MPU_RBAR_XN_Pos) & MPU_RBAR_XN_Msk)) - -/** \brief Region Limit Address Register value -* \param LIMIT The limit address bits [31:5] for this memory region. The value is one extended. -* \param IDX The attribute index to be associated with this memory region. -*/ -#define ARM_MPU_RLAR(LIMIT, IDX) \ - ((LIMIT & MPU_RLAR_LIMIT_Msk) | \ - ((IDX << MPU_RLAR_AttrIndx_Pos) & MPU_RLAR_AttrIndx_Msk) | \ - (MPU_RLAR_EN_Msk)) - -/** -* Struct for a single MPU Region -*/ -typedef struct { - uint32_t RBAR; /*!< Region Base Address Register value */ - uint32_t RLAR; /*!< Region Limit Address Register value */ -} ARM_MPU_Region_t; - -/** Enable the MPU. -* \param MPU_Control Default access permissions for unconfigured regions. -*/ -__STATIC_INLINE void ARM_MPU_Enable(uint32_t MPU_Control) -{ - __DSB(); - __ISB(); - MPU->CTRL = MPU_Control | MPU_CTRL_ENABLE_Msk; -#ifdef SCB_SHCSR_MEMFAULTENA_Msk - SCB->SHCSR |= SCB_SHCSR_MEMFAULTENA_Msk; -#endif -} - -/** Disable the MPU. -*/ -__STATIC_INLINE void ARM_MPU_Disable(void) -{ - __DSB(); - __ISB(); -#ifdef SCB_SHCSR_MEMFAULTENA_Msk - SCB->SHCSR &= ~SCB_SHCSR_MEMFAULTENA_Msk; -#endif - MPU->CTRL &= ~MPU_CTRL_ENABLE_Msk; -} - -#ifdef MPU_NS -/** Enable the Non-secure MPU. -* \param MPU_Control Default access permissions for unconfigured regions. -*/ -__STATIC_INLINE void ARM_MPU_Enable_NS(uint32_t MPU_Control) -{ - __DSB(); - __ISB(); - MPU_NS->CTRL = MPU_Control | MPU_CTRL_ENABLE_Msk; -#ifdef SCB_SHCSR_MEMFAULTENA_Msk - SCB_NS->SHCSR |= SCB_SHCSR_MEMFAULTENA_Msk; -#endif -} - -/** Disable the Non-secure MPU. -*/ -__STATIC_INLINE void ARM_MPU_Disable_NS(void) -{ - __DSB(); - __ISB(); -#ifdef SCB_SHCSR_MEMFAULTENA_Msk - SCB_NS->SHCSR &= ~SCB_SHCSR_MEMFAULTENA_Msk; -#endif - MPU_NS->CTRL &= ~MPU_CTRL_ENABLE_Msk; -} -#endif - -/** Set the memory attribute encoding to the given MPU. -* \param mpu Pointer to the MPU to be configured. -* \param idx The attribute index to be set [0-7] -* \param attr The attribute value to be set. -*/ -__STATIC_INLINE void ARM_MPU_SetMemAttrEx(MPU_Type* mpu, uint8_t idx, uint8_t attr) -{ - const uint8_t reg = idx / 4U; - const uint32_t pos = ((idx % 4U) * 8U); - const uint32_t mask = 0xFFU << pos; - - if (reg >= (sizeof(mpu->MAIR) / sizeof(mpu->MAIR[0]))) { - return; // invalid index - } - - mpu->MAIR[reg] = ((mpu->MAIR[reg] & ~mask) | ((attr << pos) & mask)); -} - -/** Set the memory attribute encoding. -* \param idx The attribute index to be set [0-7] -* \param attr The attribute value to be set. -*/ -__STATIC_INLINE void ARM_MPU_SetMemAttr(uint8_t idx, uint8_t attr) -{ - ARM_MPU_SetMemAttrEx(MPU, idx, attr); -} - -#ifdef MPU_NS -/** Set the memory attribute encoding to the Non-secure MPU. -* \param idx The attribute index to be set [0-7] -* \param attr The attribute value to be set. -*/ -__STATIC_INLINE void ARM_MPU_SetMemAttr_NS(uint8_t idx, uint8_t attr) -{ - ARM_MPU_SetMemAttrEx(MPU_NS, idx, attr); -} -#endif - -/** Clear and disable the given MPU region of the given MPU. -* \param mpu Pointer to MPU to be used. -* \param rnr Region number to be cleared. -*/ -__STATIC_INLINE void ARM_MPU_ClrRegionEx(MPU_Type* mpu, uint32_t rnr) -{ - mpu->RNR = rnr; - mpu->RLAR = 0U; -} - -/** Clear and disable the given MPU region. -* \param rnr Region number to be cleared. -*/ -__STATIC_INLINE void ARM_MPU_ClrRegion(uint32_t rnr) -{ - ARM_MPU_ClrRegionEx(MPU, rnr); -} - -#ifdef MPU_NS -/** Clear and disable the given Non-secure MPU region. -* \param rnr Region number to be cleared. -*/ -__STATIC_INLINE void ARM_MPU_ClrRegion_NS(uint32_t rnr) -{ - ARM_MPU_ClrRegionEx(MPU_NS, rnr); -} -#endif - -/** Configure the given MPU region of the given MPU. -* \param mpu Pointer to MPU to be used. -* \param rnr Region number to be configured. -* \param rbar Value for RBAR register. -* \param rlar Value for RLAR register. -*/ -__STATIC_INLINE void ARM_MPU_SetRegionEx(MPU_Type* mpu, uint32_t rnr, uint32_t rbar, uint32_t rlar) -{ - mpu->RNR = rnr; - mpu->RBAR = rbar; - mpu->RLAR = rlar; -} - -/** Configure the given MPU region. -* \param rnr Region number to be configured. -* \param rbar Value for RBAR register. -* \param rlar Value for RLAR register. -*/ -__STATIC_INLINE void ARM_MPU_SetRegion(uint32_t rnr, uint32_t rbar, uint32_t rlar) -{ - ARM_MPU_SetRegionEx(MPU, rnr, rbar, rlar); -} - -#ifdef MPU_NS -/** Configure the given Non-secure MPU region. -* \param rnr Region number to be configured. -* \param rbar Value for RBAR register. -* \param rlar Value for RLAR register. -*/ -__STATIC_INLINE void ARM_MPU_SetRegion_NS(uint32_t rnr, uint32_t rbar, uint32_t rlar) -{ - ARM_MPU_SetRegionEx(MPU_NS, rnr, rbar, rlar); -} -#endif - -/** Memcopy with strictly ordered memory access, e.g. for register targets. -* \param dst Destination data is copied to. -* \param src Source data is copied from. -* \param len Amount of data words to be copied. -*/ -__STATIC_INLINE void orderedCpy(volatile uint32_t* dst, const uint32_t* __RESTRICT src, uint32_t len) -{ - uint32_t i; - for (i = 0U; i < len; ++i) - { - dst[i] = src[i]; - } -} - -/** Load the given number of MPU regions from a table to the given MPU. -* \param mpu Pointer to the MPU registers to be used. -* \param rnr First region number to be configured. -* \param table Pointer to the MPU configuration table. -* \param cnt Amount of regions to be configured. -*/ -__STATIC_INLINE void ARM_MPU_LoadEx(MPU_Type* mpu, uint32_t rnr, ARM_MPU_Region_t const* table, uint32_t cnt) -{ - const uint32_t rowWordSize = sizeof(ARM_MPU_Region_t)/4U; - if (cnt == 1U) { - mpu->RNR = rnr; - orderedCpy(&(mpu->RBAR), &(table->RBAR), rowWordSize); - } else { - uint32_t rnrBase = rnr & ~(MPU_TYPE_RALIASES-1U); - uint32_t rnrOffset = rnr % MPU_TYPE_RALIASES; - - mpu->RNR = rnrBase; - while ((rnrOffset + cnt) > MPU_TYPE_RALIASES) { - uint32_t c = MPU_TYPE_RALIASES - rnrOffset; - orderedCpy(&(mpu->RBAR)+(rnrOffset*2U), &(table->RBAR), c*rowWordSize); - table += c; - cnt -= c; - rnrOffset = 0U; - rnrBase += MPU_TYPE_RALIASES; - mpu->RNR = rnrBase; - } - - orderedCpy(&(mpu->RBAR)+(rnrOffset*2U), &(table->RBAR), cnt*rowWordSize); - } -} - -/** Load the given number of MPU regions from a table. -* \param rnr First region number to be configured. -* \param table Pointer to the MPU configuration table. -* \param cnt Amount of regions to be configured. -*/ -__STATIC_INLINE void ARM_MPU_Load(uint32_t rnr, ARM_MPU_Region_t const* table, uint32_t cnt) -{ - ARM_MPU_LoadEx(MPU, rnr, table, cnt); -} - -#ifdef MPU_NS -/** Load the given number of MPU regions from a table to the Non-secure MPU. -* \param rnr First region number to be configured. -* \param table Pointer to the MPU configuration table. -* \param cnt Amount of regions to be configured. -*/ -__STATIC_INLINE void ARM_MPU_Load_NS(uint32_t rnr, ARM_MPU_Region_t const* table, uint32_t cnt) -{ - ARM_MPU_LoadEx(MPU_NS, rnr, table, cnt); -} -#endif - -#endif - +/****************************************************************************** + * @file mpu_armv8.h + * @brief CMSIS MPU API for Armv8-M MPU + * @version V5.0.4 + * @date 10. January 2018 + ******************************************************************************/ +/* + * Copyright (c) 2017-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef ARM_MPU_ARMV8_H +#define ARM_MPU_ARMV8_H + +/** \brief Attribute for device memory (outer only) */ +#define ARM_MPU_ATTR_DEVICE ( 0U ) + +/** \brief Attribute for non-cacheable, normal memory */ +#define ARM_MPU_ATTR_NON_CACHEABLE ( 4U ) + +/** \brief Attribute for normal memory (outer and inner) +* \param NT Non-Transient: Set to 1 for non-transient data. +* \param WB Write-Back: Set to 1 to use write-back update policy. +* \param RA Read Allocation: Set to 1 to use cache allocation on read miss. +* \param WA Write Allocation: Set to 1 to use cache allocation on write miss. +*/ +#define ARM_MPU_ATTR_MEMORY_(NT, WB, RA, WA) \ + (((NT & 1U) << 3U) | ((WB & 1U) << 2U) | ((RA & 1U) << 1U) | (WA & 1U)) + +/** \brief Device memory type non Gathering, non Re-ordering, non Early Write Acknowledgement */ +#define ARM_MPU_ATTR_DEVICE_nGnRnE (0U) + +/** \brief Device memory type non Gathering, non Re-ordering, Early Write Acknowledgement */ +#define ARM_MPU_ATTR_DEVICE_nGnRE (1U) + +/** \brief Device memory type non Gathering, Re-ordering, Early Write Acknowledgement */ +#define ARM_MPU_ATTR_DEVICE_nGRE (2U) + +/** \brief Device memory type Gathering, Re-ordering, Early Write Acknowledgement */ +#define ARM_MPU_ATTR_DEVICE_GRE (3U) + +/** \brief Memory Attribute +* \param O Outer memory attributes +* \param I O == ARM_MPU_ATTR_DEVICE: Device memory attributes, else: Inner memory attributes +*/ +#define ARM_MPU_ATTR(O, I) (((O & 0xFU) << 4U) | (((O & 0xFU) != 0U) ? (I & 0xFU) : ((I & 0x3U) << 2U))) + +/** \brief Normal memory non-shareable */ +#define ARM_MPU_SH_NON (0U) + +/** \brief Normal memory outer shareable */ +#define ARM_MPU_SH_OUTER (2U) + +/** \brief Normal memory inner shareable */ +#define ARM_MPU_SH_INNER (3U) + +/** \brief Memory access permissions +* \param RO Read-Only: Set to 1 for read-only memory. +* \param NP Non-Privileged: Set to 1 for non-privileged memory. +*/ +#define ARM_MPU_AP_(RO, NP) (((RO & 1U) << 1U) | (NP & 1U)) + +/** \brief Region Base Address Register value +* \param BASE The base address bits [31:5] of a memory region. The value is zero extended. Effective address gets 32 byte aligned. +* \param SH Defines the Shareability domain for this memory region. +* \param RO Read-Only: Set to 1 for a read-only memory region. +* \param NP Non-Privileged: Set to 1 for a non-privileged memory region. +* \oaram XN eXecute Never: Set to 1 for a non-executable memory region. +*/ +#define ARM_MPU_RBAR(BASE, SH, RO, NP, XN) \ + ((BASE & MPU_RBAR_BASE_Msk) | \ + ((SH << MPU_RBAR_SH_Pos) & MPU_RBAR_SH_Msk) | \ + ((ARM_MPU_AP_(RO, NP) << MPU_RBAR_AP_Pos) & MPU_RBAR_AP_Msk) | \ + ((XN << MPU_RBAR_XN_Pos) & MPU_RBAR_XN_Msk)) + +/** \brief Region Limit Address Register value +* \param LIMIT The limit address bits [31:5] for this memory region. The value is one extended. +* \param IDX The attribute index to be associated with this memory region. +*/ +#define ARM_MPU_RLAR(LIMIT, IDX) \ + ((LIMIT & MPU_RLAR_LIMIT_Msk) | \ + ((IDX << MPU_RLAR_AttrIndx_Pos) & MPU_RLAR_AttrIndx_Msk) | \ + (MPU_RLAR_EN_Msk)) + +/** +* Struct for a single MPU Region +*/ +typedef struct { + uint32_t RBAR; /*!< Region Base Address Register value */ + uint32_t RLAR; /*!< Region Limit Address Register value */ +} ARM_MPU_Region_t; + +/** Enable the MPU. +* \param MPU_Control Default access permissions for unconfigured regions. +*/ +__STATIC_INLINE void ARM_MPU_Enable(uint32_t MPU_Control) +{ + __DSB(); + __ISB(); + MPU->CTRL = MPU_Control | MPU_CTRL_ENABLE_Msk; +#ifdef SCB_SHCSR_MEMFAULTENA_Msk + SCB->SHCSR |= SCB_SHCSR_MEMFAULTENA_Msk; +#endif +} + +/** Disable the MPU. +*/ +__STATIC_INLINE void ARM_MPU_Disable(void) +{ + __DSB(); + __ISB(); +#ifdef SCB_SHCSR_MEMFAULTENA_Msk + SCB->SHCSR &= ~SCB_SHCSR_MEMFAULTENA_Msk; +#endif + MPU->CTRL &= ~MPU_CTRL_ENABLE_Msk; +} + +#ifdef MPU_NS +/** Enable the Non-secure MPU. +* \param MPU_Control Default access permissions for unconfigured regions. +*/ +__STATIC_INLINE void ARM_MPU_Enable_NS(uint32_t MPU_Control) +{ + __DSB(); + __ISB(); + MPU_NS->CTRL = MPU_Control | MPU_CTRL_ENABLE_Msk; +#ifdef SCB_SHCSR_MEMFAULTENA_Msk + SCB_NS->SHCSR |= SCB_SHCSR_MEMFAULTENA_Msk; +#endif +} + +/** Disable the Non-secure MPU. +*/ +__STATIC_INLINE void ARM_MPU_Disable_NS(void) +{ + __DSB(); + __ISB(); +#ifdef SCB_SHCSR_MEMFAULTENA_Msk + SCB_NS->SHCSR &= ~SCB_SHCSR_MEMFAULTENA_Msk; +#endif + MPU_NS->CTRL &= ~MPU_CTRL_ENABLE_Msk; +} +#endif + +/** Set the memory attribute encoding to the given MPU. +* \param mpu Pointer to the MPU to be configured. +* \param idx The attribute index to be set [0-7] +* \param attr The attribute value to be set. +*/ +__STATIC_INLINE void ARM_MPU_SetMemAttrEx(MPU_Type* mpu, uint8_t idx, uint8_t attr) +{ + const uint8_t reg = idx / 4U; + const uint32_t pos = ((idx % 4U) * 8U); + const uint32_t mask = 0xFFU << pos; + + if (reg >= (sizeof(mpu->MAIR) / sizeof(mpu->MAIR[0]))) { + return; // invalid index + } + + mpu->MAIR[reg] = ((mpu->MAIR[reg] & ~mask) | ((attr << pos) & mask)); +} + +/** Set the memory attribute encoding. +* \param idx The attribute index to be set [0-7] +* \param attr The attribute value to be set. +*/ +__STATIC_INLINE void ARM_MPU_SetMemAttr(uint8_t idx, uint8_t attr) +{ + ARM_MPU_SetMemAttrEx(MPU, idx, attr); +} + +#ifdef MPU_NS +/** Set the memory attribute encoding to the Non-secure MPU. +* \param idx The attribute index to be set [0-7] +* \param attr The attribute value to be set. +*/ +__STATIC_INLINE void ARM_MPU_SetMemAttr_NS(uint8_t idx, uint8_t attr) +{ + ARM_MPU_SetMemAttrEx(MPU_NS, idx, attr); +} +#endif + +/** Clear and disable the given MPU region of the given MPU. +* \param mpu Pointer to MPU to be used. +* \param rnr Region number to be cleared. +*/ +__STATIC_INLINE void ARM_MPU_ClrRegionEx(MPU_Type* mpu, uint32_t rnr) +{ + mpu->RNR = rnr; + mpu->RLAR = 0U; +} + +/** Clear and disable the given MPU region. +* \param rnr Region number to be cleared. +*/ +__STATIC_INLINE void ARM_MPU_ClrRegion(uint32_t rnr) +{ + ARM_MPU_ClrRegionEx(MPU, rnr); +} + +#ifdef MPU_NS +/** Clear and disable the given Non-secure MPU region. +* \param rnr Region number to be cleared. +*/ +__STATIC_INLINE void ARM_MPU_ClrRegion_NS(uint32_t rnr) +{ + ARM_MPU_ClrRegionEx(MPU_NS, rnr); +} +#endif + +/** Configure the given MPU region of the given MPU. +* \param mpu Pointer to MPU to be used. +* \param rnr Region number to be configured. +* \param rbar Value for RBAR register. +* \param rlar Value for RLAR register. +*/ +__STATIC_INLINE void ARM_MPU_SetRegionEx(MPU_Type* mpu, uint32_t rnr, uint32_t rbar, uint32_t rlar) +{ + mpu->RNR = rnr; + mpu->RBAR = rbar; + mpu->RLAR = rlar; +} + +/** Configure the given MPU region. +* \param rnr Region number to be configured. +* \param rbar Value for RBAR register. +* \param rlar Value for RLAR register. +*/ +__STATIC_INLINE void ARM_MPU_SetRegion(uint32_t rnr, uint32_t rbar, uint32_t rlar) +{ + ARM_MPU_SetRegionEx(MPU, rnr, rbar, rlar); +} + +#ifdef MPU_NS +/** Configure the given Non-secure MPU region. +* \param rnr Region number to be configured. +* \param rbar Value for RBAR register. +* \param rlar Value for RLAR register. +*/ +__STATIC_INLINE void ARM_MPU_SetRegion_NS(uint32_t rnr, uint32_t rbar, uint32_t rlar) +{ + ARM_MPU_SetRegionEx(MPU_NS, rnr, rbar, rlar); +} +#endif + +/** Memcopy with strictly ordered memory access, e.g. for register targets. +* \param dst Destination data is copied to. +* \param src Source data is copied from. +* \param len Amount of data words to be copied. +*/ +__STATIC_INLINE void orderedCpy(volatile uint32_t* dst, const uint32_t* __RESTRICT src, uint32_t len) +{ + uint32_t i; + for (i = 0U; i < len; ++i) + { + dst[i] = src[i]; + } +} + +/** Load the given number of MPU regions from a table to the given MPU. +* \param mpu Pointer to the MPU registers to be used. +* \param rnr First region number to be configured. +* \param table Pointer to the MPU configuration table. +* \param cnt Amount of regions to be configured. +*/ +__STATIC_INLINE void ARM_MPU_LoadEx(MPU_Type* mpu, uint32_t rnr, ARM_MPU_Region_t const* table, uint32_t cnt) +{ + const uint32_t rowWordSize = sizeof(ARM_MPU_Region_t)/4U; + if (cnt == 1U) { + mpu->RNR = rnr; + orderedCpy(&(mpu->RBAR), &(table->RBAR), rowWordSize); + } else { + uint32_t rnrBase = rnr & ~(MPU_TYPE_RALIASES-1U); + uint32_t rnrOffset = rnr % MPU_TYPE_RALIASES; + + mpu->RNR = rnrBase; + while ((rnrOffset + cnt) > MPU_TYPE_RALIASES) { + uint32_t c = MPU_TYPE_RALIASES - rnrOffset; + orderedCpy(&(mpu->RBAR)+(rnrOffset*2U), &(table->RBAR), c*rowWordSize); + table += c; + cnt -= c; + rnrOffset = 0U; + rnrBase += MPU_TYPE_RALIASES; + mpu->RNR = rnrBase; + } + + orderedCpy(&(mpu->RBAR)+(rnrOffset*2U), &(table->RBAR), cnt*rowWordSize); + } +} + +/** Load the given number of MPU regions from a table. +* \param rnr First region number to be configured. +* \param table Pointer to the MPU configuration table. +* \param cnt Amount of regions to be configured. +*/ +__STATIC_INLINE void ARM_MPU_Load(uint32_t rnr, ARM_MPU_Region_t const* table, uint32_t cnt) +{ + ARM_MPU_LoadEx(MPU, rnr, table, cnt); +} + +#ifdef MPU_NS +/** Load the given number of MPU regions from a table to the Non-secure MPU. +* \param rnr First region number to be configured. +* \param table Pointer to the MPU configuration table. +* \param cnt Amount of regions to be configured. +*/ +__STATIC_INLINE void ARM_MPU_Load_NS(uint32_t rnr, ARM_MPU_Region_t const* table, uint32_t cnt) +{ + ARM_MPU_LoadEx(MPU_NS, rnr, table, cnt); +} +#endif + +#endif + diff --git a/stm32f103/Drivers/CMSIS/Include/tz_context.h b/f103c8t6_HAL/Drivers/CMSIS/Include/tz_context.h similarity index 97% rename from stm32f103/Drivers/CMSIS/Include/tz_context.h rename to f103c8t6_HAL/Drivers/CMSIS/Include/tz_context.h index d4c1474..0d09749 100644 --- a/stm32f103/Drivers/CMSIS/Include/tz_context.h +++ b/f103c8t6_HAL/Drivers/CMSIS/Include/tz_context.h @@ -1,70 +1,70 @@ -/****************************************************************************** - * @file tz_context.h - * @brief Context Management for Armv8-M TrustZone - * @version V1.0.1 - * @date 10. January 2018 - ******************************************************************************/ -/* - * Copyright (c) 2017-2018 Arm Limited. All rights reserved. - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the License); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#if defined ( __ICCARM__ ) - #pragma system_include /* treat file as system include file for MISRA check */ -#elif defined (__clang__) - #pragma clang system_header /* treat file as system include file */ -#endif - -#ifndef TZ_CONTEXT_H -#define TZ_CONTEXT_H - -#include - -#ifndef TZ_MODULEID_T -#define TZ_MODULEID_T -/// \details Data type that identifies secure software modules called by a process. -typedef uint32_t TZ_ModuleId_t; -#endif - -/// \details TZ Memory ID identifies an allocated memory slot. -typedef uint32_t TZ_MemoryId_t; - -/// Initialize secure context memory system -/// \return execution status (1: success, 0: error) -uint32_t TZ_InitContextSystem_S (void); - -/// Allocate context memory for calling secure software modules in TrustZone -/// \param[in] module identifies software modules called from non-secure mode -/// \return value != 0 id TrustZone memory slot identifier -/// \return value 0 no memory available or internal error -TZ_MemoryId_t TZ_AllocModuleContext_S (TZ_ModuleId_t module); - -/// Free context memory that was previously allocated with \ref TZ_AllocModuleContext_S -/// \param[in] id TrustZone memory slot identifier -/// \return execution status (1: success, 0: error) -uint32_t TZ_FreeModuleContext_S (TZ_MemoryId_t id); - -/// Load secure context (called on RTOS thread context switch) -/// \param[in] id TrustZone memory slot identifier -/// \return execution status (1: success, 0: error) -uint32_t TZ_LoadContext_S (TZ_MemoryId_t id); - -/// Store secure context (called on RTOS thread context switch) -/// \param[in] id TrustZone memory slot identifier -/// \return execution status (1: success, 0: error) -uint32_t TZ_StoreContext_S (TZ_MemoryId_t id); - -#endif // TZ_CONTEXT_H +/****************************************************************************** + * @file tz_context.h + * @brief Context Management for Armv8-M TrustZone + * @version V1.0.1 + * @date 10. January 2018 + ******************************************************************************/ +/* + * Copyright (c) 2017-2018 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if defined ( __ICCARM__ ) + #pragma system_include /* treat file as system include file for MISRA check */ +#elif defined (__clang__) + #pragma clang system_header /* treat file as system include file */ +#endif + +#ifndef TZ_CONTEXT_H +#define TZ_CONTEXT_H + +#include + +#ifndef TZ_MODULEID_T +#define TZ_MODULEID_T +/// \details Data type that identifies secure software modules called by a process. +typedef uint32_t TZ_ModuleId_t; +#endif + +/// \details TZ Memory ID identifies an allocated memory slot. +typedef uint32_t TZ_MemoryId_t; + +/// Initialize secure context memory system +/// \return execution status (1: success, 0: error) +uint32_t TZ_InitContextSystem_S (void); + +/// Allocate context memory for calling secure software modules in TrustZone +/// \param[in] module identifies software modules called from non-secure mode +/// \return value != 0 id TrustZone memory slot identifier +/// \return value 0 no memory available or internal error +TZ_MemoryId_t TZ_AllocModuleContext_S (TZ_ModuleId_t module); + +/// Free context memory that was previously allocated with \ref TZ_AllocModuleContext_S +/// \param[in] id TrustZone memory slot identifier +/// \return execution status (1: success, 0: error) +uint32_t TZ_FreeModuleContext_S (TZ_MemoryId_t id); + +/// Load secure context (called on RTOS thread context switch) +/// \param[in] id TrustZone memory slot identifier +/// \return execution status (1: success, 0: error) +uint32_t TZ_LoadContext_S (TZ_MemoryId_t id); + +/// Store secure context (called on RTOS thread context switch) +/// \param[in] id TrustZone memory slot identifier +/// \return execution status (1: success, 0: error) +uint32_t TZ_StoreContext_S (TZ_MemoryId_t id); + +#endif // TZ_CONTEXT_H diff --git a/stm32f103/Drivers/CMSIS/LICENSE.txt b/f103c8t6_HAL/Drivers/CMSIS/LICENSE.txt similarity index 100% rename from stm32f103/Drivers/CMSIS/LICENSE.txt rename to f103c8t6_HAL/Drivers/CMSIS/LICENSE.txt diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h similarity index 98% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h index 412525a..ac54cea 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h @@ -1,3783 +1,3783 @@ -/** - ****************************************************************************** - * @file stm32_hal_legacy.h - * @author MCD Application Team - * @brief This file contains aliases definition for the STM32Cube HAL constants - * macros and functions maintained for legacy purpose. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2019 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef STM32_HAL_LEGACY -#define STM32_HAL_LEGACY - -#ifdef __cplusplus - extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ - -/** @defgroup HAL_AES_Aliased_Defines HAL CRYP Aliased Defines maintained for legacy purpose - * @{ - */ -#define AES_FLAG_RDERR CRYP_FLAG_RDERR -#define AES_FLAG_WRERR CRYP_FLAG_WRERR -#define AES_CLEARFLAG_CCF CRYP_CLEARFLAG_CCF -#define AES_CLEARFLAG_RDERR CRYP_CLEARFLAG_RDERR -#define AES_CLEARFLAG_WRERR CRYP_CLEARFLAG_WRERR -/** - * @} - */ - -/** @defgroup HAL_ADC_Aliased_Defines HAL ADC Aliased Defines maintained for legacy purpose - * @{ - */ -#define ADC_RESOLUTION12b ADC_RESOLUTION_12B -#define ADC_RESOLUTION10b ADC_RESOLUTION_10B -#define ADC_RESOLUTION8b ADC_RESOLUTION_8B -#define ADC_RESOLUTION6b ADC_RESOLUTION_6B -#define OVR_DATA_OVERWRITTEN ADC_OVR_DATA_OVERWRITTEN -#define OVR_DATA_PRESERVED ADC_OVR_DATA_PRESERVED -#define EOC_SINGLE_CONV ADC_EOC_SINGLE_CONV -#define EOC_SEQ_CONV ADC_EOC_SEQ_CONV -#define EOC_SINGLE_SEQ_CONV ADC_EOC_SINGLE_SEQ_CONV -#define REGULAR_GROUP ADC_REGULAR_GROUP -#define INJECTED_GROUP ADC_INJECTED_GROUP -#define REGULAR_INJECTED_GROUP ADC_REGULAR_INJECTED_GROUP -#define AWD_EVENT ADC_AWD_EVENT -#define AWD1_EVENT ADC_AWD1_EVENT -#define AWD2_EVENT ADC_AWD2_EVENT -#define AWD3_EVENT ADC_AWD3_EVENT -#define OVR_EVENT ADC_OVR_EVENT -#define JQOVF_EVENT ADC_JQOVF_EVENT -#define ALL_CHANNELS ADC_ALL_CHANNELS -#define REGULAR_CHANNELS ADC_REGULAR_CHANNELS -#define INJECTED_CHANNELS ADC_INJECTED_CHANNELS -#define SYSCFG_FLAG_SENSOR_ADC ADC_FLAG_SENSOR -#define SYSCFG_FLAG_VREF_ADC ADC_FLAG_VREFINT -#define ADC_CLOCKPRESCALER_PCLK_DIV1 ADC_CLOCK_SYNC_PCLK_DIV1 -#define ADC_CLOCKPRESCALER_PCLK_DIV2 ADC_CLOCK_SYNC_PCLK_DIV2 -#define ADC_CLOCKPRESCALER_PCLK_DIV4 ADC_CLOCK_SYNC_PCLK_DIV4 -#define ADC_CLOCKPRESCALER_PCLK_DIV6 ADC_CLOCK_SYNC_PCLK_DIV6 -#define ADC_CLOCKPRESCALER_PCLK_DIV8 ADC_CLOCK_SYNC_PCLK_DIV8 -#define ADC_EXTERNALTRIG0_T6_TRGO ADC_EXTERNALTRIGCONV_T6_TRGO -#define ADC_EXTERNALTRIG1_T21_CC2 ADC_EXTERNALTRIGCONV_T21_CC2 -#define ADC_EXTERNALTRIG2_T2_TRGO ADC_EXTERNALTRIGCONV_T2_TRGO -#define ADC_EXTERNALTRIG3_T2_CC4 ADC_EXTERNALTRIGCONV_T2_CC4 -#define ADC_EXTERNALTRIG4_T22_TRGO ADC_EXTERNALTRIGCONV_T22_TRGO -#define ADC_EXTERNALTRIG7_EXT_IT11 ADC_EXTERNALTRIGCONV_EXT_IT11 -#define ADC_CLOCK_ASYNC ADC_CLOCK_ASYNC_DIV1 -#define ADC_EXTERNALTRIG_EDGE_NONE ADC_EXTERNALTRIGCONVEDGE_NONE -#define ADC_EXTERNALTRIG_EDGE_RISING ADC_EXTERNALTRIGCONVEDGE_RISING -#define ADC_EXTERNALTRIG_EDGE_FALLING ADC_EXTERNALTRIGCONVEDGE_FALLING -#define ADC_EXTERNALTRIG_EDGE_RISINGFALLING ADC_EXTERNALTRIGCONVEDGE_RISINGFALLING -#define ADC_SAMPLETIME_2CYCLE_5 ADC_SAMPLETIME_2CYCLES_5 - -#define HAL_ADC_STATE_BUSY_REG HAL_ADC_STATE_REG_BUSY -#define HAL_ADC_STATE_BUSY_INJ HAL_ADC_STATE_INJ_BUSY -#define HAL_ADC_STATE_EOC_REG HAL_ADC_STATE_REG_EOC -#define HAL_ADC_STATE_EOC_INJ HAL_ADC_STATE_INJ_EOC -#define HAL_ADC_STATE_ERROR HAL_ADC_STATE_ERROR_INTERNAL -#define HAL_ADC_STATE_BUSY HAL_ADC_STATE_BUSY_INTERNAL -#define HAL_ADC_STATE_AWD HAL_ADC_STATE_AWD1 - -#if defined(STM32H7) -#define ADC_CHANNEL_VBAT_DIV4 ADC_CHANNEL_VBAT -#endif /* STM32H7 */ -/** - * @} - */ - -/** @defgroup HAL_CEC_Aliased_Defines HAL CEC Aliased Defines maintained for legacy purpose - * @{ - */ - -#define __HAL_CEC_GET_IT __HAL_CEC_GET_FLAG - -/** - * @} - */ - -/** @defgroup HAL_COMP_Aliased_Defines HAL COMP Aliased Defines maintained for legacy purpose - * @{ - */ -#define COMP_WINDOWMODE_DISABLED COMP_WINDOWMODE_DISABLE -#define COMP_WINDOWMODE_ENABLED COMP_WINDOWMODE_ENABLE -#define COMP_EXTI_LINE_COMP1_EVENT COMP_EXTI_LINE_COMP1 -#define COMP_EXTI_LINE_COMP2_EVENT COMP_EXTI_LINE_COMP2 -#define COMP_EXTI_LINE_COMP3_EVENT COMP_EXTI_LINE_COMP3 -#define COMP_EXTI_LINE_COMP4_EVENT COMP_EXTI_LINE_COMP4 -#define COMP_EXTI_LINE_COMP5_EVENT COMP_EXTI_LINE_COMP5 -#define COMP_EXTI_LINE_COMP6_EVENT COMP_EXTI_LINE_COMP6 -#define COMP_EXTI_LINE_COMP7_EVENT COMP_EXTI_LINE_COMP7 -#if defined(STM32L0) -#define COMP_LPTIMCONNECTION_ENABLED ((uint32_t)0x00000003U) /*!< COMPX output generic naming: connected to LPTIM input 1 for COMP1, LPTIM input 2 for COMP2 */ -#endif -#define COMP_OUTPUT_COMP6TIM2OCREFCLR COMP_OUTPUT_COMP6_TIM2OCREFCLR -#if defined(STM32F373xC) || defined(STM32F378xx) -#define COMP_OUTPUT_TIM3IC1 COMP_OUTPUT_COMP1_TIM3IC1 -#define COMP_OUTPUT_TIM3OCREFCLR COMP_OUTPUT_COMP1_TIM3OCREFCLR -#endif /* STM32F373xC || STM32F378xx */ - -#if defined(STM32L0) || defined(STM32L4) -#define COMP_WINDOWMODE_ENABLE COMP_WINDOWMODE_COMP1_INPUT_PLUS_COMMON - -#define COMP_NONINVERTINGINPUT_IO1 COMP_INPUT_PLUS_IO1 -#define COMP_NONINVERTINGINPUT_IO2 COMP_INPUT_PLUS_IO2 -#define COMP_NONINVERTINGINPUT_IO3 COMP_INPUT_PLUS_IO3 -#define COMP_NONINVERTINGINPUT_IO4 COMP_INPUT_PLUS_IO4 -#define COMP_NONINVERTINGINPUT_IO5 COMP_INPUT_PLUS_IO5 -#define COMP_NONINVERTINGINPUT_IO6 COMP_INPUT_PLUS_IO6 - -#define COMP_INVERTINGINPUT_1_4VREFINT COMP_INPUT_MINUS_1_4VREFINT -#define COMP_INVERTINGINPUT_1_2VREFINT COMP_INPUT_MINUS_1_2VREFINT -#define COMP_INVERTINGINPUT_3_4VREFINT COMP_INPUT_MINUS_3_4VREFINT -#define COMP_INVERTINGINPUT_VREFINT COMP_INPUT_MINUS_VREFINT -#define COMP_INVERTINGINPUT_DAC1_CH1 COMP_INPUT_MINUS_DAC1_CH1 -#define COMP_INVERTINGINPUT_DAC1_CH2 COMP_INPUT_MINUS_DAC1_CH2 -#define COMP_INVERTINGINPUT_DAC1 COMP_INPUT_MINUS_DAC1_CH1 -#define COMP_INVERTINGINPUT_DAC2 COMP_INPUT_MINUS_DAC1_CH2 -#define COMP_INVERTINGINPUT_IO1 COMP_INPUT_MINUS_IO1 -#if defined(STM32L0) -/* Issue fixed on STM32L0 COMP driver: only 2 dedicated IO (IO1 and IO2), */ -/* IO2 was wrongly assigned to IO shared with DAC and IO3 was corresponding */ -/* to the second dedicated IO (only for COMP2). */ -#define COMP_INVERTINGINPUT_IO2 COMP_INPUT_MINUS_DAC1_CH2 -#define COMP_INVERTINGINPUT_IO3 COMP_INPUT_MINUS_IO2 -#else -#define COMP_INVERTINGINPUT_IO2 COMP_INPUT_MINUS_IO2 -#define COMP_INVERTINGINPUT_IO3 COMP_INPUT_MINUS_IO3 -#endif -#define COMP_INVERTINGINPUT_IO4 COMP_INPUT_MINUS_IO4 -#define COMP_INVERTINGINPUT_IO5 COMP_INPUT_MINUS_IO5 - -#define COMP_OUTPUTLEVEL_LOW COMP_OUTPUT_LEVEL_LOW -#define COMP_OUTPUTLEVEL_HIGH COMP_OUTPUT_LEVEL_HIGH - -/* Note: Literal "COMP_FLAG_LOCK" kept for legacy purpose. */ -/* To check COMP lock state, use macro "__HAL_COMP_IS_LOCKED()". */ -#if defined(COMP_CSR_LOCK) -#define COMP_FLAG_LOCK COMP_CSR_LOCK -#elif defined(COMP_CSR_COMP1LOCK) -#define COMP_FLAG_LOCK COMP_CSR_COMP1LOCK -#elif defined(COMP_CSR_COMPxLOCK) -#define COMP_FLAG_LOCK COMP_CSR_COMPxLOCK -#endif - -#if defined(STM32L4) -#define COMP_BLANKINGSRCE_TIM1OC5 COMP_BLANKINGSRC_TIM1_OC5_COMP1 -#define COMP_BLANKINGSRCE_TIM2OC3 COMP_BLANKINGSRC_TIM2_OC3_COMP1 -#define COMP_BLANKINGSRCE_TIM3OC3 COMP_BLANKINGSRC_TIM3_OC3_COMP1 -#define COMP_BLANKINGSRCE_TIM3OC4 COMP_BLANKINGSRC_TIM3_OC4_COMP2 -#define COMP_BLANKINGSRCE_TIM8OC5 COMP_BLANKINGSRC_TIM8_OC5_COMP2 -#define COMP_BLANKINGSRCE_TIM15OC1 COMP_BLANKINGSRC_TIM15_OC1_COMP2 -#define COMP_BLANKINGSRCE_NONE COMP_BLANKINGSRC_NONE -#endif - -#if defined(STM32L0) -#define COMP_MODE_HIGHSPEED COMP_POWERMODE_MEDIUMSPEED -#define COMP_MODE_LOWSPEED COMP_POWERMODE_ULTRALOWPOWER -#else -#define COMP_MODE_HIGHSPEED COMP_POWERMODE_HIGHSPEED -#define COMP_MODE_MEDIUMSPEED COMP_POWERMODE_MEDIUMSPEED -#define COMP_MODE_LOWPOWER COMP_POWERMODE_LOWPOWER -#define COMP_MODE_ULTRALOWPOWER COMP_POWERMODE_ULTRALOWPOWER -#endif - -#endif -/** - * @} - */ - -/** @defgroup HAL_CORTEX_Aliased_Defines HAL CORTEX Aliased Defines maintained for legacy purpose - * @{ - */ -#define __HAL_CORTEX_SYSTICKCLK_CONFIG HAL_SYSTICK_CLKSourceConfig -/** - * @} - */ - -/** @defgroup HAL_CRC_Aliased_Defines HAL CRC Aliased Defines maintained for legacy purpose - * @{ - */ - -#define CRC_OUTPUTDATA_INVERSION_DISABLED CRC_OUTPUTDATA_INVERSION_DISABLE -#define CRC_OUTPUTDATA_INVERSION_ENABLED CRC_OUTPUTDATA_INVERSION_ENABLE - -/** - * @} - */ - -/** @defgroup HAL_DAC_Aliased_Defines HAL DAC Aliased Defines maintained for legacy purpose - * @{ - */ - -#define DAC1_CHANNEL_1 DAC_CHANNEL_1 -#define DAC1_CHANNEL_2 DAC_CHANNEL_2 -#define DAC2_CHANNEL_1 DAC_CHANNEL_1 -#define DAC_WAVE_NONE 0x00000000U -#define DAC_WAVE_NOISE DAC_CR_WAVE1_0 -#define DAC_WAVE_TRIANGLE DAC_CR_WAVE1_1 -#define DAC_WAVEGENERATION_NONE DAC_WAVE_NONE -#define DAC_WAVEGENERATION_NOISE DAC_WAVE_NOISE -#define DAC_WAVEGENERATION_TRIANGLE DAC_WAVE_TRIANGLE - -#if defined(STM32G4) || defined(STM32H7) -#define DAC_CHIPCONNECT_DISABLE DAC_CHIPCONNECT_EXTERNAL -#define DAC_CHIPCONNECT_ENABLE DAC_CHIPCONNECT_INTERNAL -#endif - -#if defined(STM32L1) || defined(STM32L4) || defined(STM32G0) || defined(STM32L5) || defined(STM32H7) || defined(STM32F4) || defined(STM32G4) -#define HAL_DAC_MSP_INIT_CB_ID HAL_DAC_MSPINIT_CB_ID -#define HAL_DAC_MSP_DEINIT_CB_ID HAL_DAC_MSPDEINIT_CB_ID -#endif - -/** - * @} - */ - -/** @defgroup HAL_DMA_Aliased_Defines HAL DMA Aliased Defines maintained for legacy purpose - * @{ - */ -#define HAL_REMAPDMA_ADC_DMA_CH2 DMA_REMAP_ADC_DMA_CH2 -#define HAL_REMAPDMA_USART1_TX_DMA_CH4 DMA_REMAP_USART1_TX_DMA_CH4 -#define HAL_REMAPDMA_USART1_RX_DMA_CH5 DMA_REMAP_USART1_RX_DMA_CH5 -#define HAL_REMAPDMA_TIM16_DMA_CH4 DMA_REMAP_TIM16_DMA_CH4 -#define HAL_REMAPDMA_TIM17_DMA_CH2 DMA_REMAP_TIM17_DMA_CH2 -#define HAL_REMAPDMA_USART3_DMA_CH32 DMA_REMAP_USART3_DMA_CH32 -#define HAL_REMAPDMA_TIM16_DMA_CH6 DMA_REMAP_TIM16_DMA_CH6 -#define HAL_REMAPDMA_TIM17_DMA_CH7 DMA_REMAP_TIM17_DMA_CH7 -#define HAL_REMAPDMA_SPI2_DMA_CH67 DMA_REMAP_SPI2_DMA_CH67 -#define HAL_REMAPDMA_USART2_DMA_CH67 DMA_REMAP_USART2_DMA_CH67 -#define HAL_REMAPDMA_I2C1_DMA_CH76 DMA_REMAP_I2C1_DMA_CH76 -#define HAL_REMAPDMA_TIM1_DMA_CH6 DMA_REMAP_TIM1_DMA_CH6 -#define HAL_REMAPDMA_TIM2_DMA_CH7 DMA_REMAP_TIM2_DMA_CH7 -#define HAL_REMAPDMA_TIM3_DMA_CH6 DMA_REMAP_TIM3_DMA_CH6 - -#define IS_HAL_REMAPDMA IS_DMA_REMAP -#define __HAL_REMAPDMA_CHANNEL_ENABLE __HAL_DMA_REMAP_CHANNEL_ENABLE -#define __HAL_REMAPDMA_CHANNEL_DISABLE __HAL_DMA_REMAP_CHANNEL_DISABLE - -#if defined(STM32L4) - -#define HAL_DMAMUX1_REQUEST_GEN_EXTI0 HAL_DMAMUX1_REQ_GEN_EXTI0 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI1 HAL_DMAMUX1_REQ_GEN_EXTI1 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI2 HAL_DMAMUX1_REQ_GEN_EXTI2 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI3 HAL_DMAMUX1_REQ_GEN_EXTI3 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI4 HAL_DMAMUX1_REQ_GEN_EXTI4 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI5 HAL_DMAMUX1_REQ_GEN_EXTI5 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI6 HAL_DMAMUX1_REQ_GEN_EXTI6 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI7 HAL_DMAMUX1_REQ_GEN_EXTI7 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI8 HAL_DMAMUX1_REQ_GEN_EXTI8 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI9 HAL_DMAMUX1_REQ_GEN_EXTI9 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI10 HAL_DMAMUX1_REQ_GEN_EXTI10 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI11 HAL_DMAMUX1_REQ_GEN_EXTI11 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI12 HAL_DMAMUX1_REQ_GEN_EXTI12 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI13 HAL_DMAMUX1_REQ_GEN_EXTI13 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI14 HAL_DMAMUX1_REQ_GEN_EXTI14 -#define HAL_DMAMUX1_REQUEST_GEN_EXTI15 HAL_DMAMUX1_REQ_GEN_EXTI15 -#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH0_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH0_EVT -#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH1_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH1_EVT -#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH2_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH2_EVT -#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH3_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH3_EVT -#define HAL_DMAMUX1_REQUEST_GEN_LPTIM1_OUT HAL_DMAMUX1_REQ_GEN_LPTIM1_OUT -#define HAL_DMAMUX1_REQUEST_GEN_LPTIM2_OUT HAL_DMAMUX1_REQ_GEN_LPTIM2_OUT -#define HAL_DMAMUX1_REQUEST_GEN_DSI_TE HAL_DMAMUX1_REQ_GEN_DSI_TE -#define HAL_DMAMUX1_REQUEST_GEN_DSI_EOT HAL_DMAMUX1_REQ_GEN_DSI_EOT -#define HAL_DMAMUX1_REQUEST_GEN_DMA2D_EOT HAL_DMAMUX1_REQ_GEN_DMA2D_EOT -#define HAL_DMAMUX1_REQUEST_GEN_LTDC_IT HAL_DMAMUX1_REQ_GEN_LTDC_IT - -#define HAL_DMAMUX_REQUEST_GEN_NO_EVENT HAL_DMAMUX_REQ_GEN_NO_EVENT -#define HAL_DMAMUX_REQUEST_GEN_RISING HAL_DMAMUX_REQ_GEN_RISING -#define HAL_DMAMUX_REQUEST_GEN_FALLING HAL_DMAMUX_REQ_GEN_FALLING -#define HAL_DMAMUX_REQUEST_GEN_RISING_FALLING HAL_DMAMUX_REQ_GEN_RISING_FALLING - -#if defined(STM32L4R5xx) || defined(STM32L4R9xx) || defined(STM32L4R9xx) || defined(STM32L4S5xx) || defined(STM32L4S7xx) || defined(STM32L4S9xx) -#define DMA_REQUEST_DCMI_PSSI DMA_REQUEST_DCMI -#endif - -#endif /* STM32L4 */ - -#if defined(STM32G0) -#define DMA_REQUEST_DAC1_CHANNEL1 DMA_REQUEST_DAC1_CH1 -#define DMA_REQUEST_DAC1_CHANNEL2 DMA_REQUEST_DAC1_CH2 -#define DMA_REQUEST_TIM16_TRIG_COM DMA_REQUEST_TIM16_COM -#define DMA_REQUEST_TIM17_TRIG_COM DMA_REQUEST_TIM17_COM - -#define LL_DMAMUX_REQ_TIM16_TRIG_COM LL_DMAMUX_REQ_TIM16_COM -#define LL_DMAMUX_REQ_TIM17_TRIG_COM LL_DMAMUX_REQ_TIM17_COM -#endif - -#if defined(STM32H7) - -#define DMA_REQUEST_DAC1 DMA_REQUEST_DAC1_CH1 -#define DMA_REQUEST_DAC2 DMA_REQUEST_DAC1_CH2 - -#define BDMA_REQUEST_LP_UART1_RX BDMA_REQUEST_LPUART1_RX -#define BDMA_REQUEST_LP_UART1_TX BDMA_REQUEST_LPUART1_TX - -#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH0_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH0_EVT -#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH1_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH1_EVT -#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH2_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH2_EVT -#define HAL_DMAMUX1_REQUEST_GEN_LPTIM1_OUT HAL_DMAMUX1_REQ_GEN_LPTIM1_OUT -#define HAL_DMAMUX1_REQUEST_GEN_LPTIM2_OUT HAL_DMAMUX1_REQ_GEN_LPTIM2_OUT -#define HAL_DMAMUX1_REQUEST_GEN_LPTIM3_OUT HAL_DMAMUX1_REQ_GEN_LPTIM3_OUT -#define HAL_DMAMUX1_REQUEST_GEN_EXTI0 HAL_DMAMUX1_REQ_GEN_EXTI0 -#define HAL_DMAMUX1_REQUEST_GEN_TIM12_TRGO HAL_DMAMUX1_REQ_GEN_TIM12_TRGO - -#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH0_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH0_EVT -#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH1_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH1_EVT -#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH2_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH2_EVT -#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH3_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH3_EVT -#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH4_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH4_EVT -#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH5_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH5_EVT -#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH6_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH6_EVT -#define HAL_DMAMUX2_REQUEST_GEN_LPUART1_RX_WKUP HAL_DMAMUX2_REQ_GEN_LPUART1_RX_WKUP -#define HAL_DMAMUX2_REQUEST_GEN_LPUART1_TX_WKUP HAL_DMAMUX2_REQ_GEN_LPUART1_TX_WKUP -#define HAL_DMAMUX2_REQUEST_GEN_LPTIM2_WKUP HAL_DMAMUX2_REQ_GEN_LPTIM2_WKUP -#define HAL_DMAMUX2_REQUEST_GEN_LPTIM2_OUT HAL_DMAMUX2_REQ_GEN_LPTIM2_OUT -#define HAL_DMAMUX2_REQUEST_GEN_LPTIM3_WKUP HAL_DMAMUX2_REQ_GEN_LPTIM3_WKUP -#define HAL_DMAMUX2_REQUEST_GEN_LPTIM3_OUT HAL_DMAMUX2_REQ_GEN_LPTIM3_OUT -#define HAL_DMAMUX2_REQUEST_GEN_LPTIM4_WKUP HAL_DMAMUX2_REQ_GEN_LPTIM4_WKUP -#define HAL_DMAMUX2_REQUEST_GEN_LPTIM5_WKUP HAL_DMAMUX2_REQ_GEN_LPTIM5_WKUP -#define HAL_DMAMUX2_REQUEST_GEN_I2C4_WKUP HAL_DMAMUX2_REQ_GEN_I2C4_WKUP -#define HAL_DMAMUX2_REQUEST_GEN_SPI6_WKUP HAL_DMAMUX2_REQ_GEN_SPI6_WKUP -#define HAL_DMAMUX2_REQUEST_GEN_COMP1_OUT HAL_DMAMUX2_REQ_GEN_COMP1_OUT -#define HAL_DMAMUX2_REQUEST_GEN_COMP2_OUT HAL_DMAMUX2_REQ_GEN_COMP2_OUT -#define HAL_DMAMUX2_REQUEST_GEN_RTC_WKUP HAL_DMAMUX2_REQ_GEN_RTC_WKUP -#define HAL_DMAMUX2_REQUEST_GEN_EXTI0 HAL_DMAMUX2_REQ_GEN_EXTI0 -#define HAL_DMAMUX2_REQUEST_GEN_EXTI2 HAL_DMAMUX2_REQ_GEN_EXTI2 -#define HAL_DMAMUX2_REQUEST_GEN_I2C4_IT_EVT HAL_DMAMUX2_REQ_GEN_I2C4_IT_EVT -#define HAL_DMAMUX2_REQUEST_GEN_SPI6_IT HAL_DMAMUX2_REQ_GEN_SPI6_IT -#define HAL_DMAMUX2_REQUEST_GEN_LPUART1_TX_IT HAL_DMAMUX2_REQ_GEN_LPUART1_TX_IT -#define HAL_DMAMUX2_REQUEST_GEN_LPUART1_RX_IT HAL_DMAMUX2_REQ_GEN_LPUART1_RX_IT -#define HAL_DMAMUX2_REQUEST_GEN_ADC3_IT HAL_DMAMUX2_REQ_GEN_ADC3_IT -#define HAL_DMAMUX2_REQUEST_GEN_ADC3_AWD1_OUT HAL_DMAMUX2_REQ_GEN_ADC3_AWD1_OUT -#define HAL_DMAMUX2_REQUEST_GEN_BDMA_CH0_IT HAL_DMAMUX2_REQ_GEN_BDMA_CH0_IT -#define HAL_DMAMUX2_REQUEST_GEN_BDMA_CH1_IT HAL_DMAMUX2_REQ_GEN_BDMA_CH1_IT - -#define HAL_DMAMUX_REQUEST_GEN_NO_EVENT HAL_DMAMUX_REQ_GEN_NO_EVENT -#define HAL_DMAMUX_REQUEST_GEN_RISING HAL_DMAMUX_REQ_GEN_RISING -#define HAL_DMAMUX_REQUEST_GEN_FALLING HAL_DMAMUX_REQ_GEN_FALLING -#define HAL_DMAMUX_REQUEST_GEN_RISING_FALLING HAL_DMAMUX_REQ_GEN_RISING_FALLING - -#define DFSDM_FILTER_EXT_TRIG_LPTIM1 DFSDM_FILTER_EXT_TRIG_LPTIM1_OUT -#define DFSDM_FILTER_EXT_TRIG_LPTIM2 DFSDM_FILTER_EXT_TRIG_LPTIM2_OUT -#define DFSDM_FILTER_EXT_TRIG_LPTIM3 DFSDM_FILTER_EXT_TRIG_LPTIM3_OUT - -#define DAC_TRIGGER_LP1_OUT DAC_TRIGGER_LPTIM1_OUT -#define DAC_TRIGGER_LP2_OUT DAC_TRIGGER_LPTIM2_OUT - -#endif /* STM32H7 */ - -/** - * @} - */ - -/** @defgroup HAL_FLASH_Aliased_Defines HAL FLASH Aliased Defines maintained for legacy purpose - * @{ - */ - -#define TYPEPROGRAM_BYTE FLASH_TYPEPROGRAM_BYTE -#define TYPEPROGRAM_HALFWORD FLASH_TYPEPROGRAM_HALFWORD -#define TYPEPROGRAM_WORD FLASH_TYPEPROGRAM_WORD -#define TYPEPROGRAM_DOUBLEWORD FLASH_TYPEPROGRAM_DOUBLEWORD -#define TYPEERASE_SECTORS FLASH_TYPEERASE_SECTORS -#define TYPEERASE_PAGES FLASH_TYPEERASE_PAGES -#define TYPEERASE_PAGEERASE FLASH_TYPEERASE_PAGES -#define TYPEERASE_MASSERASE FLASH_TYPEERASE_MASSERASE -#define WRPSTATE_DISABLE OB_WRPSTATE_DISABLE -#define WRPSTATE_ENABLE OB_WRPSTATE_ENABLE -#define HAL_FLASH_TIMEOUT_VALUE FLASH_TIMEOUT_VALUE -#define OBEX_PCROP OPTIONBYTE_PCROP -#define OBEX_BOOTCONFIG OPTIONBYTE_BOOTCONFIG -#define PCROPSTATE_DISABLE OB_PCROP_STATE_DISABLE -#define PCROPSTATE_ENABLE OB_PCROP_STATE_ENABLE -#define TYPEERASEDATA_BYTE FLASH_TYPEERASEDATA_BYTE -#define TYPEERASEDATA_HALFWORD FLASH_TYPEERASEDATA_HALFWORD -#define TYPEERASEDATA_WORD FLASH_TYPEERASEDATA_WORD -#define TYPEPROGRAMDATA_BYTE FLASH_TYPEPROGRAMDATA_BYTE -#define TYPEPROGRAMDATA_HALFWORD FLASH_TYPEPROGRAMDATA_HALFWORD -#define TYPEPROGRAMDATA_WORD FLASH_TYPEPROGRAMDATA_WORD -#define TYPEPROGRAMDATA_FASTBYTE FLASH_TYPEPROGRAMDATA_FASTBYTE -#define TYPEPROGRAMDATA_FASTHALFWORD FLASH_TYPEPROGRAMDATA_FASTHALFWORD -#define TYPEPROGRAMDATA_FASTWORD FLASH_TYPEPROGRAMDATA_FASTWORD -#define PAGESIZE FLASH_PAGE_SIZE -#define TYPEPROGRAM_FASTBYTE FLASH_TYPEPROGRAM_BYTE -#define TYPEPROGRAM_FASTHALFWORD FLASH_TYPEPROGRAM_HALFWORD -#define TYPEPROGRAM_FASTWORD FLASH_TYPEPROGRAM_WORD -#define VOLTAGE_RANGE_1 FLASH_VOLTAGE_RANGE_1 -#define VOLTAGE_RANGE_2 FLASH_VOLTAGE_RANGE_2 -#define VOLTAGE_RANGE_3 FLASH_VOLTAGE_RANGE_3 -#define VOLTAGE_RANGE_4 FLASH_VOLTAGE_RANGE_4 -#define TYPEPROGRAM_FAST FLASH_TYPEPROGRAM_FAST -#define TYPEPROGRAM_FAST_AND_LAST FLASH_TYPEPROGRAM_FAST_AND_LAST -#define WRPAREA_BANK1_AREAA OB_WRPAREA_BANK1_AREAA -#define WRPAREA_BANK1_AREAB OB_WRPAREA_BANK1_AREAB -#define WRPAREA_BANK2_AREAA OB_WRPAREA_BANK2_AREAA -#define WRPAREA_BANK2_AREAB OB_WRPAREA_BANK2_AREAB -#define IWDG_STDBY_FREEZE OB_IWDG_STDBY_FREEZE -#define IWDG_STDBY_ACTIVE OB_IWDG_STDBY_RUN -#define IWDG_STOP_FREEZE OB_IWDG_STOP_FREEZE -#define IWDG_STOP_ACTIVE OB_IWDG_STOP_RUN -#define FLASH_ERROR_NONE HAL_FLASH_ERROR_NONE -#define FLASH_ERROR_RD HAL_FLASH_ERROR_RD -#define FLASH_ERROR_PG HAL_FLASH_ERROR_PROG -#define FLASH_ERROR_PGP HAL_FLASH_ERROR_PGS -#define FLASH_ERROR_WRP HAL_FLASH_ERROR_WRP -#define FLASH_ERROR_OPTV HAL_FLASH_ERROR_OPTV -#define FLASH_ERROR_OPTVUSR HAL_FLASH_ERROR_OPTVUSR -#define FLASH_ERROR_PROG HAL_FLASH_ERROR_PROG -#define FLASH_ERROR_OP HAL_FLASH_ERROR_OPERATION -#define FLASH_ERROR_PGA HAL_FLASH_ERROR_PGA -#define FLASH_ERROR_SIZE HAL_FLASH_ERROR_SIZE -#define FLASH_ERROR_SIZ HAL_FLASH_ERROR_SIZE -#define FLASH_ERROR_PGS HAL_FLASH_ERROR_PGS -#define FLASH_ERROR_MIS HAL_FLASH_ERROR_MIS -#define FLASH_ERROR_FAST HAL_FLASH_ERROR_FAST -#define FLASH_ERROR_FWWERR HAL_FLASH_ERROR_FWWERR -#define FLASH_ERROR_NOTZERO HAL_FLASH_ERROR_NOTZERO -#define FLASH_ERROR_OPERATION HAL_FLASH_ERROR_OPERATION -#define FLASH_ERROR_ERS HAL_FLASH_ERROR_ERS -#define OB_WDG_SW OB_IWDG_SW -#define OB_WDG_HW OB_IWDG_HW -#define OB_SDADC12_VDD_MONITOR_SET OB_SDACD_VDD_MONITOR_SET -#define OB_SDADC12_VDD_MONITOR_RESET OB_SDACD_VDD_MONITOR_RESET -#define OB_RAM_PARITY_CHECK_SET OB_SRAM_PARITY_SET -#define OB_RAM_PARITY_CHECK_RESET OB_SRAM_PARITY_RESET -#define IS_OB_SDADC12_VDD_MONITOR IS_OB_SDACD_VDD_MONITOR -#define OB_RDP_LEVEL0 OB_RDP_LEVEL_0 -#define OB_RDP_LEVEL1 OB_RDP_LEVEL_1 -#define OB_RDP_LEVEL2 OB_RDP_LEVEL_2 -#if defined(STM32G0) -#define OB_BOOT_LOCK_DISABLE OB_BOOT_ENTRY_FORCED_NONE -#define OB_BOOT_LOCK_ENABLE OB_BOOT_ENTRY_FORCED_FLASH -#else -#define OB_BOOT_ENTRY_FORCED_NONE OB_BOOT_LOCK_DISABLE -#define OB_BOOT_ENTRY_FORCED_FLASH OB_BOOT_LOCK_ENABLE -#endif -#if defined(STM32H7) -#define FLASH_FLAG_SNECCE_BANK1RR FLASH_FLAG_SNECCERR_BANK1 -#define FLASH_FLAG_DBECCE_BANK1RR FLASH_FLAG_DBECCERR_BANK1 -#define FLASH_FLAG_STRBER_BANK1R FLASH_FLAG_STRBERR_BANK1 -#define FLASH_FLAG_SNECCE_BANK2RR FLASH_FLAG_SNECCERR_BANK2 -#define FLASH_FLAG_DBECCE_BANK2RR FLASH_FLAG_DBECCERR_BANK2 -#define FLASH_FLAG_STRBER_BANK2R FLASH_FLAG_STRBERR_BANK2 -#define FLASH_FLAG_WDW FLASH_FLAG_WBNE -#define OB_WRP_SECTOR_All OB_WRP_SECTOR_ALL -#endif /* STM32H7 */ - -/** - * @} - */ - -/** @defgroup HAL_JPEG_Aliased_Macros HAL JPEG Aliased Macros maintained for legacy purpose - * @{ - */ - -#if defined(STM32H7) -#define __HAL_RCC_JPEG_CLK_ENABLE __HAL_RCC_JPGDECEN_CLK_ENABLE -#define __HAL_RCC_JPEG_CLK_DISABLE __HAL_RCC_JPGDECEN_CLK_DISABLE -#define __HAL_RCC_JPEG_FORCE_RESET __HAL_RCC_JPGDECRST_FORCE_RESET -#define __HAL_RCC_JPEG_RELEASE_RESET __HAL_RCC_JPGDECRST_RELEASE_RESET -#define __HAL_RCC_JPEG_CLK_SLEEP_ENABLE __HAL_RCC_JPGDEC_CLK_SLEEP_ENABLE -#define __HAL_RCC_JPEG_CLK_SLEEP_DISABLE __HAL_RCC_JPGDEC_CLK_SLEEP_DISABLE -#endif /* STM32H7 */ - -/** - * @} - */ - -/** @defgroup HAL_SYSCFG_Aliased_Defines HAL SYSCFG Aliased Defines maintained for legacy purpose - * @{ - */ - -#define HAL_SYSCFG_FASTMODEPLUS_I2C_PA9 I2C_FASTMODEPLUS_PA9 -#define HAL_SYSCFG_FASTMODEPLUS_I2C_PA10 I2C_FASTMODEPLUS_PA10 -#define HAL_SYSCFG_FASTMODEPLUS_I2C_PB6 I2C_FASTMODEPLUS_PB6 -#define HAL_SYSCFG_FASTMODEPLUS_I2C_PB7 I2C_FASTMODEPLUS_PB7 -#define HAL_SYSCFG_FASTMODEPLUS_I2C_PB8 I2C_FASTMODEPLUS_PB8 -#define HAL_SYSCFG_FASTMODEPLUS_I2C_PB9 I2C_FASTMODEPLUS_PB9 -#define HAL_SYSCFG_FASTMODEPLUS_I2C1 I2C_FASTMODEPLUS_I2C1 -#define HAL_SYSCFG_FASTMODEPLUS_I2C2 I2C_FASTMODEPLUS_I2C2 -#define HAL_SYSCFG_FASTMODEPLUS_I2C3 I2C_FASTMODEPLUS_I2C3 -#if defined(STM32G4) - -#define HAL_SYSCFG_EnableIOAnalogSwitchBooster HAL_SYSCFG_EnableIOSwitchBooster -#define HAL_SYSCFG_DisableIOAnalogSwitchBooster HAL_SYSCFG_DisableIOSwitchBooster -#define HAL_SYSCFG_EnableIOAnalogSwitchVDD HAL_SYSCFG_EnableIOSwitchVDD -#define HAL_SYSCFG_DisableIOAnalogSwitchVDD HAL_SYSCFG_DisableIOSwitchVDD -#endif /* STM32G4 */ -/** - * @} - */ - - -/** @defgroup LL_FMC_Aliased_Defines LL FMC Aliased Defines maintained for compatibility purpose - * @{ - */ -#if defined(STM32L4) || defined(STM32F7) || defined(STM32H7) || defined(STM32G4) -#define FMC_NAND_PCC_WAIT_FEATURE_DISABLE FMC_NAND_WAIT_FEATURE_DISABLE -#define FMC_NAND_PCC_WAIT_FEATURE_ENABLE FMC_NAND_WAIT_FEATURE_ENABLE -#define FMC_NAND_PCC_MEM_BUS_WIDTH_8 FMC_NAND_MEM_BUS_WIDTH_8 -#define FMC_NAND_PCC_MEM_BUS_WIDTH_16 FMC_NAND_MEM_BUS_WIDTH_16 -#elif defined(STM32F1) || defined(STM32F2) || defined(STM32F3) || defined(STM32F4) -#define FMC_NAND_WAIT_FEATURE_DISABLE FMC_NAND_PCC_WAIT_FEATURE_DISABLE -#define FMC_NAND_WAIT_FEATURE_ENABLE FMC_NAND_PCC_WAIT_FEATURE_ENABLE -#define FMC_NAND_MEM_BUS_WIDTH_8 FMC_NAND_PCC_MEM_BUS_WIDTH_8 -#define FMC_NAND_MEM_BUS_WIDTH_16 FMC_NAND_PCC_MEM_BUS_WIDTH_16 -#endif -/** - * @} - */ - -/** @defgroup LL_FSMC_Aliased_Defines LL FSMC Aliased Defines maintained for legacy purpose - * @{ - */ - -#define FSMC_NORSRAM_TYPEDEF FSMC_NORSRAM_TypeDef -#define FSMC_NORSRAM_EXTENDED_TYPEDEF FSMC_NORSRAM_EXTENDED_TypeDef -/** - * @} - */ - -/** @defgroup HAL_GPIO_Aliased_Macros HAL GPIO Aliased Macros maintained for legacy purpose - * @{ - */ -#define GET_GPIO_SOURCE GPIO_GET_INDEX -#define GET_GPIO_INDEX GPIO_GET_INDEX - -#if defined(STM32F4) -#define GPIO_AF12_SDMMC GPIO_AF12_SDIO -#define GPIO_AF12_SDMMC1 GPIO_AF12_SDIO -#endif - -#if defined(STM32F7) -#define GPIO_AF12_SDIO GPIO_AF12_SDMMC1 -#define GPIO_AF12_SDMMC GPIO_AF12_SDMMC1 -#endif - -#if defined(STM32L4) -#define GPIO_AF12_SDIO GPIO_AF12_SDMMC1 -#define GPIO_AF12_SDMMC GPIO_AF12_SDMMC1 -#endif - -#if defined(STM32H7) -#define GPIO_AF7_SDIO1 GPIO_AF7_SDMMC1 -#define GPIO_AF8_SDIO1 GPIO_AF8_SDMMC1 -#define GPIO_AF12_SDIO1 GPIO_AF12_SDMMC1 -#define GPIO_AF9_SDIO2 GPIO_AF9_SDMMC2 -#define GPIO_AF10_SDIO2 GPIO_AF10_SDMMC2 -#define GPIO_AF11_SDIO2 GPIO_AF11_SDMMC2 - -#if defined (STM32H743xx) || defined (STM32H753xx) || defined (STM32H750xx) || defined (STM32H742xx) || \ - defined (STM32H745xx) || defined (STM32H755xx) || defined (STM32H747xx) || defined (STM32H757xx) -#define GPIO_AF10_OTG2_HS GPIO_AF10_OTG2_FS -#define GPIO_AF10_OTG1_FS GPIO_AF10_OTG1_HS -#define GPIO_AF12_OTG2_FS GPIO_AF12_OTG1_FS -#endif /*STM32H743xx || STM32H753xx || STM32H750xx || STM32H742xx || STM32H745xx || STM32H755xx || STM32H747xx || STM32H757xx */ -#endif /* STM32H7 */ - -#define GPIO_AF0_LPTIM GPIO_AF0_LPTIM1 -#define GPIO_AF1_LPTIM GPIO_AF1_LPTIM1 -#define GPIO_AF2_LPTIM GPIO_AF2_LPTIM1 - -#if defined(STM32L0) || defined(STM32L4) || defined(STM32F4) || defined(STM32F2) || defined(STM32F7) || defined(STM32G4) || defined(STM32H7) -#define GPIO_SPEED_LOW GPIO_SPEED_FREQ_LOW -#define GPIO_SPEED_MEDIUM GPIO_SPEED_FREQ_MEDIUM -#define GPIO_SPEED_FAST GPIO_SPEED_FREQ_HIGH -#define GPIO_SPEED_HIGH GPIO_SPEED_FREQ_VERY_HIGH -#endif /* STM32L0 || STM32L4 || STM32F4 || STM32F2 || STM32F7 || STM32G4 || STM32H7*/ - -#if defined(STM32L1) - #define GPIO_SPEED_VERY_LOW GPIO_SPEED_FREQ_LOW - #define GPIO_SPEED_LOW GPIO_SPEED_FREQ_MEDIUM - #define GPIO_SPEED_MEDIUM GPIO_SPEED_FREQ_HIGH - #define GPIO_SPEED_HIGH GPIO_SPEED_FREQ_VERY_HIGH -#endif /* STM32L1 */ - -#if defined(STM32F0) || defined(STM32F3) || defined(STM32F1) - #define GPIO_SPEED_LOW GPIO_SPEED_FREQ_LOW - #define GPIO_SPEED_MEDIUM GPIO_SPEED_FREQ_MEDIUM - #define GPIO_SPEED_HIGH GPIO_SPEED_FREQ_HIGH -#endif /* STM32F0 || STM32F3 || STM32F1 */ - -#define GPIO_AF6_DFSDM GPIO_AF6_DFSDM1 -/** - * @} - */ - -/** @defgroup HAL_HRTIM_Aliased_Macros HAL HRTIM Aliased Macros maintained for legacy purpose - * @{ - */ -#define HRTIM_TIMDELAYEDPROTECTION_DISABLED HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DISABLED -#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDOUT1_EEV68 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDOUT1_EEV6 -#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDOUT2_EEV68 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDOUT2_EEV6 -#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDBOTH_EEV68 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDBOTH_EEV6 -#define HRTIM_TIMDELAYEDPROTECTION_BALANCED_EEV68 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_BALANCED_EEV6 -#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDOUT1_DEEV79 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDOUT1_DEEV7 -#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDOUT2_DEEV79 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDOUT2_DEEV7 -#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDBOTH_EEV79 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDBOTH_EEV7 -#define HRTIM_TIMDELAYEDPROTECTION_BALANCED_EEV79 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_BALANCED_EEV7 - -#define __HAL_HRTIM_SetCounter __HAL_HRTIM_SETCOUNTER -#define __HAL_HRTIM_GetCounter __HAL_HRTIM_GETCOUNTER -#define __HAL_HRTIM_SetPeriod __HAL_HRTIM_SETPERIOD -#define __HAL_HRTIM_GetPeriod __HAL_HRTIM_GETPERIOD -#define __HAL_HRTIM_SetClockPrescaler __HAL_HRTIM_SETCLOCKPRESCALER -#define __HAL_HRTIM_GetClockPrescaler __HAL_HRTIM_GETCLOCKPRESCALER -#define __HAL_HRTIM_SetCompare __HAL_HRTIM_SETCOMPARE -#define __HAL_HRTIM_GetCompare __HAL_HRTIM_GETCOMPARE - -#if defined(STM32G4) -#define HAL_HRTIM_ExternalEventCounterConfig HAL_HRTIM_ExtEventCounterConfig -#define HAL_HRTIM_ExternalEventCounterEnable HAL_HRTIM_ExtEventCounterEnable -#define HAL_HRTIM_ExternalEventCounterDisable HAL_HRTIM_ExtEventCounterDisable -#define HAL_HRTIM_ExternalEventCounterReset HAL_HRTIM_ExtEventCounterReset -#define HRTIM_TIMEEVENT_A HRTIM_EVENTCOUNTER_A -#define HRTIM_TIMEEVENT_B HRTIM_EVENTCOUNTER_B -#define HRTIM_TIMEEVENTRESETMODE_UNCONDITIONAL HRTIM_EVENTCOUNTER_RSTMODE_UNCONDITIONAL -#define HRTIM_TIMEEVENTRESETMODE_CONDITIONAL HRTIM_EVENTCOUNTER_RSTMODE_CONDITIONAL -#endif /* STM32G4 */ - -#if defined(STM32H7) -#define HRTIM_OUTPUTSET_TIMAEV1_TIMBCMP1 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTSET_TIMAEV2_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTSET_TIMAEV3_TIMCCMP2 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTSET_TIMAEV4_TIMCCMP3 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTSET_TIMAEV5_TIMDCMP1 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTSET_TIMAEV6_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTSET_TIMAEV7_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTSET_TIMAEV8_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTSET_TIMAEV9_TIMFCMP4 HRTIM_OUTPUTSET_TIMEV_9 -#define HRTIM_OUTPUTSET_TIMBEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTSET_TIMBEV2_TIMACMP2 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTSET_TIMBEV3_TIMCCMP3 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTSET_TIMBEV4_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTSET_TIMBEV5_TIMDCMP3 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTSET_TIMBEV6_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTSET_TIMBEV7_TIMECMP1 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTSET_TIMBEV8_TIMECMP2 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTSET_TIMBEV9_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_9 -#define HRTIM_OUTPUTSET_TIMCEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTSET_TIMCEV2_TIMACMP2 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTSET_TIMCEV3_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTSET_TIMCEV4_TIMBCMP3 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTSET_TIMCEV5_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTSET_TIMCEV6_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTSET_TIMCEV7_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTSET_TIMCEV8_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTSET_TIMCEV9_TIMFCMP2 HRTIM_OUTPUTSET_TIMEV_9 -#define HRTIM_OUTPUTSET_TIMDEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTSET_TIMDEV2_TIMACMP4 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTSET_TIMDEV3_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTSET_TIMDEV4_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTSET_TIMDEV5_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTSET_TIMDEV6_TIMECMP1 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTSET_TIMDEV7_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTSET_TIMDEV8_TIMFCMP1 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTSET_TIMDEV9_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_9 -#define HRTIM_OUTPUTSET_TIMEEV1_TIMACMP4 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTSET_TIMEEV2_TIMBCMP3 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTSET_TIMEEV3_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTSET_TIMEEV4_TIMCCMP1 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTSET_TIMEEV5_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTSET_TIMEEV6_TIMDCMP1 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTSET_TIMEEV7_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTSET_TIMEEV8_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTSET_TIMEEV9_TIMFCMP4 HRTIM_OUTPUTSET_TIMEV_9 -#define HRTIM_OUTPUTSET_TIMFEV1_TIMACMP3 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTSET_TIMFEV2_TIMBCMP1 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTSET_TIMFEV3_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTSET_TIMFEV4_TIMCCMP1 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTSET_TIMFEV5_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTSET_TIMFEV6_TIMDCMP3 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTSET_TIMFEV7_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTSET_TIMFEV8_TIMECMP2 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTSET_TIMFEV9_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_9 - -#define HRTIM_OUTPUTRESET_TIMAEV1_TIMBCMP1 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTRESET_TIMAEV2_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTRESET_TIMAEV3_TIMCCMP2 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTRESET_TIMAEV4_TIMCCMP3 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTRESET_TIMAEV5_TIMDCMP1 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTRESET_TIMAEV6_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTRESET_TIMAEV7_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTRESET_TIMAEV8_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTRESET_TIMAEV9_TIMFCMP4 HRTIM_OUTPUTSET_TIMEV_9 -#define HRTIM_OUTPUTRESET_TIMBEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTRESET_TIMBEV2_TIMACMP2 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTRESET_TIMBEV3_TIMCCMP3 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTRESET_TIMBEV4_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTRESET_TIMBEV5_TIMDCMP3 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTRESET_TIMBEV6_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTRESET_TIMBEV7_TIMECMP1 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTRESET_TIMBEV8_TIMECMP2 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTRESET_TIMBEV9_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_9 -#define HRTIM_OUTPUTRESET_TIMCEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTRESET_TIMCEV2_TIMACMP2 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTRESET_TIMCEV3_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTRESET_TIMCEV4_TIMBCMP3 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTRESET_TIMCEV5_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTRESET_TIMCEV6_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTRESET_TIMCEV7_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTRESET_TIMCEV8_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTRESET_TIMCEV9_TIMFCMP2 HRTIM_OUTPUTSET_TIMEV_9 -#define HRTIM_OUTPUTRESET_TIMDEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTRESET_TIMDEV2_TIMACMP4 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTRESET_TIMDEV3_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTRESET_TIMDEV4_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTRESET_TIMDEV5_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTRESET_TIMDEV6_TIMECMP1 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTRESET_TIMDEV7_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTRESET_TIMDEV8_TIMFCMP1 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTRESET_TIMDEV9_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_9 -#define HRTIM_OUTPUTRESET_TIMEEV1_TIMACMP4 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTRESET_TIMEEV2_TIMBCMP3 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTRESET_TIMEEV3_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTRESET_TIMEEV4_TIMCCMP1 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTRESET_TIMEEV5_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTRESET_TIMEEV6_TIMDCMP1 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTRESET_TIMEEV7_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTRESET_TIMEEV8_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTRESET_TIMEEV9_TIMFCMP4 HRTIM_OUTPUTSET_TIMEV_9 -#define HRTIM_OUTPUTRESET_TIMFEV1_TIMACMP3 HRTIM_OUTPUTSET_TIMEV_1 -#define HRTIM_OUTPUTRESET_TIMFEV2_TIMBCMP1 HRTIM_OUTPUTSET_TIMEV_2 -#define HRTIM_OUTPUTRESET_TIMFEV3_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_3 -#define HRTIM_OUTPUTRESET_TIMFEV4_TIMCCMP1 HRTIM_OUTPUTSET_TIMEV_4 -#define HRTIM_OUTPUTRESET_TIMFEV5_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_5 -#define HRTIM_OUTPUTRESET_TIMFEV6_TIMDCMP3 HRTIM_OUTPUTSET_TIMEV_6 -#define HRTIM_OUTPUTRESET_TIMFEV7_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_7 -#define HRTIM_OUTPUTRESET_TIMFEV8_TIMECMP2 HRTIM_OUTPUTSET_TIMEV_8 -#define HRTIM_OUTPUTRESET_TIMFEV9_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_9 -#endif /* STM32H7 */ - -#if defined(STM32F3) -/** @brief Constants defining available sources associated to external events. - */ -#define HRTIM_EVENTSRC_1 (0x00000000U) -#define HRTIM_EVENTSRC_2 (HRTIM_EECR1_EE1SRC_0) -#define HRTIM_EVENTSRC_3 (HRTIM_EECR1_EE1SRC_1) -#define HRTIM_EVENTSRC_4 (HRTIM_EECR1_EE1SRC_1 | HRTIM_EECR1_EE1SRC_0) - -/** @brief Constants defining the events that can be selected to configure the - * set/reset crossbar of a timer output - */ -#define HRTIM_OUTPUTSET_TIMEV_1 (HRTIM_SET1R_TIMEVNT1) -#define HRTIM_OUTPUTSET_TIMEV_2 (HRTIM_SET1R_TIMEVNT2) -#define HRTIM_OUTPUTSET_TIMEV_3 (HRTIM_SET1R_TIMEVNT3) -#define HRTIM_OUTPUTSET_TIMEV_4 (HRTIM_SET1R_TIMEVNT4) -#define HRTIM_OUTPUTSET_TIMEV_5 (HRTIM_SET1R_TIMEVNT5) -#define HRTIM_OUTPUTSET_TIMEV_6 (HRTIM_SET1R_TIMEVNT6) -#define HRTIM_OUTPUTSET_TIMEV_7 (HRTIM_SET1R_TIMEVNT7) -#define HRTIM_OUTPUTSET_TIMEV_8 (HRTIM_SET1R_TIMEVNT8) -#define HRTIM_OUTPUTSET_TIMEV_9 (HRTIM_SET1R_TIMEVNT9) - -#define HRTIM_OUTPUTRESET_TIMEV_1 (HRTIM_RST1R_TIMEVNT1) -#define HRTIM_OUTPUTRESET_TIMEV_2 (HRTIM_RST1R_TIMEVNT2) -#define HRTIM_OUTPUTRESET_TIMEV_3 (HRTIM_RST1R_TIMEVNT3) -#define HRTIM_OUTPUTRESET_TIMEV_4 (HRTIM_RST1R_TIMEVNT4) -#define HRTIM_OUTPUTRESET_TIMEV_5 (HRTIM_RST1R_TIMEVNT5) -#define HRTIM_OUTPUTRESET_TIMEV_6 (HRTIM_RST1R_TIMEVNT6) -#define HRTIM_OUTPUTRESET_TIMEV_7 (HRTIM_RST1R_TIMEVNT7) -#define HRTIM_OUTPUTRESET_TIMEV_8 (HRTIM_RST1R_TIMEVNT8) -#define HRTIM_OUTPUTRESET_TIMEV_9 (HRTIM_RST1R_TIMEVNT9) - -/** @brief Constants defining the event filtering applied to external events - * by a timer - */ -#define HRTIM_TIMEVENTFILTER_NONE (0x00000000U) -#define HRTIM_TIMEVENTFILTER_BLANKINGCMP1 (HRTIM_EEFR1_EE1FLTR_0) -#define HRTIM_TIMEVENTFILTER_BLANKINGCMP2 (HRTIM_EEFR1_EE1FLTR_1) -#define HRTIM_TIMEVENTFILTER_BLANKINGCMP3 (HRTIM_EEFR1_EE1FLTR_1 | HRTIM_EEFR1_EE1FLTR_0) -#define HRTIM_TIMEVENTFILTER_BLANKINGCMP4 (HRTIM_EEFR1_EE1FLTR_2) -#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR1 (HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_0) -#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR2 (HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_1) -#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR3 (HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_1 | HRTIM_EEFR1_EE1FLTR_0) -#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR4 (HRTIM_EEFR1_EE1FLTR_3) -#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR5 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_0) -#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR6 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_1) -#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR7 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_1 | HRTIM_EEFR1_EE1FLTR_0) -#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR8 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_2) -#define HRTIM_TIMEVENTFILTER_WINDOWINGCMP2 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_0) -#define HRTIM_TIMEVENTFILTER_WINDOWINGCMP3 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_1) -#define HRTIM_TIMEVENTFILTER_WINDOWINGTIM (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_1 | HRTIM_EEFR1_EE1FLTR_0) - -/** @brief Constants defining the DLL calibration periods (in micro seconds) - */ -#define HRTIM_CALIBRATIONRATE_7300 0x00000000U -#define HRTIM_CALIBRATIONRATE_910 (HRTIM_DLLCR_CALRTE_0) -#define HRTIM_CALIBRATIONRATE_114 (HRTIM_DLLCR_CALRTE_1) -#define HRTIM_CALIBRATIONRATE_14 (HRTIM_DLLCR_CALRTE_1 | HRTIM_DLLCR_CALRTE_0) - -#endif /* STM32F3 */ -/** - * @} - */ - -/** @defgroup HAL_I2C_Aliased_Defines HAL I2C Aliased Defines maintained for legacy purpose - * @{ - */ -#define I2C_DUALADDRESS_DISABLED I2C_DUALADDRESS_DISABLE -#define I2C_DUALADDRESS_ENABLED I2C_DUALADDRESS_ENABLE -#define I2C_GENERALCALL_DISABLED I2C_GENERALCALL_DISABLE -#define I2C_GENERALCALL_ENABLED I2C_GENERALCALL_ENABLE -#define I2C_NOSTRETCH_DISABLED I2C_NOSTRETCH_DISABLE -#define I2C_NOSTRETCH_ENABLED I2C_NOSTRETCH_ENABLE -#define I2C_ANALOGFILTER_ENABLED I2C_ANALOGFILTER_ENABLE -#define I2C_ANALOGFILTER_DISABLED I2C_ANALOGFILTER_DISABLE -#if defined(STM32F0) || defined(STM32F1) || defined(STM32F3) || defined(STM32G0) || defined(STM32L4) || defined(STM32L1) || defined(STM32F7) -#define HAL_I2C_STATE_MEM_BUSY_TX HAL_I2C_STATE_BUSY_TX -#define HAL_I2C_STATE_MEM_BUSY_RX HAL_I2C_STATE_BUSY_RX -#define HAL_I2C_STATE_MASTER_BUSY_TX HAL_I2C_STATE_BUSY_TX -#define HAL_I2C_STATE_MASTER_BUSY_RX HAL_I2C_STATE_BUSY_RX -#define HAL_I2C_STATE_SLAVE_BUSY_TX HAL_I2C_STATE_BUSY_TX -#define HAL_I2C_STATE_SLAVE_BUSY_RX HAL_I2C_STATE_BUSY_RX -#endif -/** - * @} - */ - -/** @defgroup HAL_IRDA_Aliased_Defines HAL IRDA Aliased Defines maintained for legacy purpose - * @{ - */ -#define IRDA_ONE_BIT_SAMPLE_DISABLED IRDA_ONE_BIT_SAMPLE_DISABLE -#define IRDA_ONE_BIT_SAMPLE_ENABLED IRDA_ONE_BIT_SAMPLE_ENABLE - -/** - * @} - */ - -/** @defgroup HAL_IWDG_Aliased_Defines HAL IWDG Aliased Defines maintained for legacy purpose - * @{ - */ -#define KR_KEY_RELOAD IWDG_KEY_RELOAD -#define KR_KEY_ENABLE IWDG_KEY_ENABLE -#define KR_KEY_EWA IWDG_KEY_WRITE_ACCESS_ENABLE -#define KR_KEY_DWA IWDG_KEY_WRITE_ACCESS_DISABLE -/** - * @} - */ - -/** @defgroup HAL_LPTIM_Aliased_Defines HAL LPTIM Aliased Defines maintained for legacy purpose - * @{ - */ - -#define LPTIM_CLOCKSAMPLETIME_DIRECTTRANSISTION LPTIM_CLOCKSAMPLETIME_DIRECTTRANSITION -#define LPTIM_CLOCKSAMPLETIME_2TRANSISTIONS LPTIM_CLOCKSAMPLETIME_2TRANSITIONS -#define LPTIM_CLOCKSAMPLETIME_4TRANSISTIONS LPTIM_CLOCKSAMPLETIME_4TRANSITIONS -#define LPTIM_CLOCKSAMPLETIME_8TRANSISTIONS LPTIM_CLOCKSAMPLETIME_8TRANSITIONS - -#define LPTIM_CLOCKPOLARITY_RISINGEDGE LPTIM_CLOCKPOLARITY_RISING -#define LPTIM_CLOCKPOLARITY_FALLINGEDGE LPTIM_CLOCKPOLARITY_FALLING -#define LPTIM_CLOCKPOLARITY_BOTHEDGES LPTIM_CLOCKPOLARITY_RISING_FALLING - -#define LPTIM_TRIGSAMPLETIME_DIRECTTRANSISTION LPTIM_TRIGSAMPLETIME_DIRECTTRANSITION -#define LPTIM_TRIGSAMPLETIME_2TRANSISTIONS LPTIM_TRIGSAMPLETIME_2TRANSITIONS -#define LPTIM_TRIGSAMPLETIME_4TRANSISTIONS LPTIM_TRIGSAMPLETIME_4TRANSITIONS -#define LPTIM_TRIGSAMPLETIME_8TRANSISTIONS LPTIM_TRIGSAMPLETIME_8TRANSITIONS - -/* The following 3 definition have also been present in a temporary version of lptim.h */ -/* They need to be renamed also to the right name, just in case */ -#define LPTIM_TRIGSAMPLETIME_2TRANSITION LPTIM_TRIGSAMPLETIME_2TRANSITIONS -#define LPTIM_TRIGSAMPLETIME_4TRANSITION LPTIM_TRIGSAMPLETIME_4TRANSITIONS -#define LPTIM_TRIGSAMPLETIME_8TRANSITION LPTIM_TRIGSAMPLETIME_8TRANSITIONS - -/** - * @} - */ - -/** @defgroup HAL_NAND_Aliased_Defines HAL NAND Aliased Defines maintained for legacy purpose - * @{ - */ -#define HAL_NAND_Read_Page HAL_NAND_Read_Page_8b -#define HAL_NAND_Write_Page HAL_NAND_Write_Page_8b -#define HAL_NAND_Read_SpareArea HAL_NAND_Read_SpareArea_8b -#define HAL_NAND_Write_SpareArea HAL_NAND_Write_SpareArea_8b - -#define NAND_AddressTypedef NAND_AddressTypeDef - -#define __ARRAY_ADDRESS ARRAY_ADDRESS -#define __ADDR_1st_CYCLE ADDR_1ST_CYCLE -#define __ADDR_2nd_CYCLE ADDR_2ND_CYCLE -#define __ADDR_3rd_CYCLE ADDR_3RD_CYCLE -#define __ADDR_4th_CYCLE ADDR_4TH_CYCLE -/** - * @} - */ - -/** @defgroup HAL_NOR_Aliased_Defines HAL NOR Aliased Defines maintained for legacy purpose - * @{ - */ -#define NOR_StatusTypedef HAL_NOR_StatusTypeDef -#define NOR_SUCCESS HAL_NOR_STATUS_SUCCESS -#define NOR_ONGOING HAL_NOR_STATUS_ONGOING -#define NOR_ERROR HAL_NOR_STATUS_ERROR -#define NOR_TIMEOUT HAL_NOR_STATUS_TIMEOUT - -#define __NOR_WRITE NOR_WRITE -#define __NOR_ADDR_SHIFT NOR_ADDR_SHIFT -/** - * @} - */ - -/** @defgroup HAL_OPAMP_Aliased_Defines HAL OPAMP Aliased Defines maintained for legacy purpose - * @{ - */ - -#define OPAMP_NONINVERTINGINPUT_VP0 OPAMP_NONINVERTINGINPUT_IO0 -#define OPAMP_NONINVERTINGINPUT_VP1 OPAMP_NONINVERTINGINPUT_IO1 -#define OPAMP_NONINVERTINGINPUT_VP2 OPAMP_NONINVERTINGINPUT_IO2 -#define OPAMP_NONINVERTINGINPUT_VP3 OPAMP_NONINVERTINGINPUT_IO3 - -#define OPAMP_SEC_NONINVERTINGINPUT_VP0 OPAMP_SEC_NONINVERTINGINPUT_IO0 -#define OPAMP_SEC_NONINVERTINGINPUT_VP1 OPAMP_SEC_NONINVERTINGINPUT_IO1 -#define OPAMP_SEC_NONINVERTINGINPUT_VP2 OPAMP_SEC_NONINVERTINGINPUT_IO2 -#define OPAMP_SEC_NONINVERTINGINPUT_VP3 OPAMP_SEC_NONINVERTINGINPUT_IO3 - -#define OPAMP_INVERTINGINPUT_VM0 OPAMP_INVERTINGINPUT_IO0 -#define OPAMP_INVERTINGINPUT_VM1 OPAMP_INVERTINGINPUT_IO1 - -#define IOPAMP_INVERTINGINPUT_VM0 OPAMP_INVERTINGINPUT_IO0 -#define IOPAMP_INVERTINGINPUT_VM1 OPAMP_INVERTINGINPUT_IO1 - -#define OPAMP_SEC_INVERTINGINPUT_VM0 OPAMP_SEC_INVERTINGINPUT_IO0 -#define OPAMP_SEC_INVERTINGINPUT_VM1 OPAMP_SEC_INVERTINGINPUT_IO1 - -#define OPAMP_INVERTINGINPUT_VINM OPAMP_SEC_INVERTINGINPUT_IO1 - -#define OPAMP_PGACONNECT_NO OPAMP_PGA_CONNECT_INVERTINGINPUT_NO -#define OPAMP_PGACONNECT_VM0 OPAMP_PGA_CONNECT_INVERTINGINPUT_IO0 -#define OPAMP_PGACONNECT_VM1 OPAMP_PGA_CONNECT_INVERTINGINPUT_IO1 - -#if defined(STM32L1) || defined(STM32L4) || defined(STM32L5) || defined(STM32H7) || defined(STM32G4) -#define HAL_OPAMP_MSP_INIT_CB_ID HAL_OPAMP_MSPINIT_CB_ID -#define HAL_OPAMP_MSP_DEINIT_CB_ID HAL_OPAMP_MSPDEINIT_CB_ID -#endif - - -/** - * @} - */ - -/** @defgroup HAL_I2S_Aliased_Defines HAL I2S Aliased Defines maintained for legacy purpose - * @{ - */ -#define I2S_STANDARD_PHILLIPS I2S_STANDARD_PHILIPS - -#if defined(STM32H7) - #define I2S_IT_TXE I2S_IT_TXP - #define I2S_IT_RXNE I2S_IT_RXP - - #define I2S_FLAG_TXE I2S_FLAG_TXP - #define I2S_FLAG_RXNE I2S_FLAG_RXP -#endif - -#if defined(STM32F7) - #define I2S_CLOCK_SYSCLK I2S_CLOCK_PLL -#endif -/** - * @} - */ - -/** @defgroup HAL_PCCARD_Aliased_Defines HAL PCCARD Aliased Defines maintained for legacy purpose - * @{ - */ - -/* Compact Flash-ATA registers description */ -#define CF_DATA ATA_DATA -#define CF_SECTOR_COUNT ATA_SECTOR_COUNT -#define CF_SECTOR_NUMBER ATA_SECTOR_NUMBER -#define CF_CYLINDER_LOW ATA_CYLINDER_LOW -#define CF_CYLINDER_HIGH ATA_CYLINDER_HIGH -#define CF_CARD_HEAD ATA_CARD_HEAD -#define CF_STATUS_CMD ATA_STATUS_CMD -#define CF_STATUS_CMD_ALTERNATE ATA_STATUS_CMD_ALTERNATE -#define CF_COMMON_DATA_AREA ATA_COMMON_DATA_AREA - -/* Compact Flash-ATA commands */ -#define CF_READ_SECTOR_CMD ATA_READ_SECTOR_CMD -#define CF_WRITE_SECTOR_CMD ATA_WRITE_SECTOR_CMD -#define CF_ERASE_SECTOR_CMD ATA_ERASE_SECTOR_CMD -#define CF_IDENTIFY_CMD ATA_IDENTIFY_CMD - -#define PCCARD_StatusTypedef HAL_PCCARD_StatusTypeDef -#define PCCARD_SUCCESS HAL_PCCARD_STATUS_SUCCESS -#define PCCARD_ONGOING HAL_PCCARD_STATUS_ONGOING -#define PCCARD_ERROR HAL_PCCARD_STATUS_ERROR -#define PCCARD_TIMEOUT HAL_PCCARD_STATUS_TIMEOUT -/** - * @} - */ - -/** @defgroup HAL_RTC_Aliased_Defines HAL RTC Aliased Defines maintained for legacy purpose - * @{ - */ - -#define FORMAT_BIN RTC_FORMAT_BIN -#define FORMAT_BCD RTC_FORMAT_BCD - -#define RTC_ALARMSUBSECONDMASK_None RTC_ALARMSUBSECONDMASK_NONE -#define RTC_TAMPERERASEBACKUP_DISABLED RTC_TAMPER_ERASE_BACKUP_DISABLE -#define RTC_TAMPERMASK_FLAG_DISABLED RTC_TAMPERMASK_FLAG_DISABLE -#define RTC_TAMPERMASK_FLAG_ENABLED RTC_TAMPERMASK_FLAG_ENABLE - -#define RTC_MASKTAMPERFLAG_DISABLED RTC_TAMPERMASK_FLAG_DISABLE -#define RTC_MASKTAMPERFLAG_ENABLED RTC_TAMPERMASK_FLAG_ENABLE -#define RTC_TAMPERERASEBACKUP_ENABLED RTC_TAMPER_ERASE_BACKUP_ENABLE -#define RTC_TAMPER1_2_INTERRUPT RTC_ALL_TAMPER_INTERRUPT -#define RTC_TAMPER1_2_3_INTERRUPT RTC_ALL_TAMPER_INTERRUPT - -#define RTC_TIMESTAMPPIN_PC13 RTC_TIMESTAMPPIN_DEFAULT -#define RTC_TIMESTAMPPIN_PA0 RTC_TIMESTAMPPIN_POS1 -#define RTC_TIMESTAMPPIN_PI8 RTC_TIMESTAMPPIN_POS1 -#define RTC_TIMESTAMPPIN_PC1 RTC_TIMESTAMPPIN_POS2 - -#define RTC_OUTPUT_REMAP_PC13 RTC_OUTPUT_REMAP_NONE -#define RTC_OUTPUT_REMAP_PB14 RTC_OUTPUT_REMAP_POS1 -#define RTC_OUTPUT_REMAP_PB2 RTC_OUTPUT_REMAP_POS1 - -#define RTC_TAMPERPIN_PC13 RTC_TAMPERPIN_DEFAULT -#define RTC_TAMPERPIN_PA0 RTC_TAMPERPIN_POS1 -#define RTC_TAMPERPIN_PI8 RTC_TAMPERPIN_POS1 - -#if defined(STM32H7) -#define RTC_TAMPCR_TAMPXE RTC_TAMPER_X -#define RTC_TAMPCR_TAMPXIE RTC_TAMPER_X_INTERRUPT - -#define RTC_TAMPER1_INTERRUPT RTC_IT_TAMP1 -#define RTC_TAMPER2_INTERRUPT RTC_IT_TAMP2 -#define RTC_TAMPER3_INTERRUPT RTC_IT_TAMP3 -#define RTC_ALL_TAMPER_INTERRUPT RTC_IT_TAMPALL -#endif /* STM32H7 */ - -/** - * @} - */ - - -/** @defgroup HAL_SMARTCARD_Aliased_Defines HAL SMARTCARD Aliased Defines maintained for legacy purpose - * @{ - */ -#define SMARTCARD_NACK_ENABLED SMARTCARD_NACK_ENABLE -#define SMARTCARD_NACK_DISABLED SMARTCARD_NACK_DISABLE - -#define SMARTCARD_ONEBIT_SAMPLING_DISABLED SMARTCARD_ONE_BIT_SAMPLE_DISABLE -#define SMARTCARD_ONEBIT_SAMPLING_ENABLED SMARTCARD_ONE_BIT_SAMPLE_ENABLE -#define SMARTCARD_ONEBIT_SAMPLING_DISABLE SMARTCARD_ONE_BIT_SAMPLE_DISABLE -#define SMARTCARD_ONEBIT_SAMPLING_ENABLE SMARTCARD_ONE_BIT_SAMPLE_ENABLE - -#define SMARTCARD_TIMEOUT_DISABLED SMARTCARD_TIMEOUT_DISABLE -#define SMARTCARD_TIMEOUT_ENABLED SMARTCARD_TIMEOUT_ENABLE - -#define SMARTCARD_LASTBIT_DISABLED SMARTCARD_LASTBIT_DISABLE -#define SMARTCARD_LASTBIT_ENABLED SMARTCARD_LASTBIT_ENABLE -/** - * @} - */ - - -/** @defgroup HAL_SMBUS_Aliased_Defines HAL SMBUS Aliased Defines maintained for legacy purpose - * @{ - */ -#define SMBUS_DUALADDRESS_DISABLED SMBUS_DUALADDRESS_DISABLE -#define SMBUS_DUALADDRESS_ENABLED SMBUS_DUALADDRESS_ENABLE -#define SMBUS_GENERALCALL_DISABLED SMBUS_GENERALCALL_DISABLE -#define SMBUS_GENERALCALL_ENABLED SMBUS_GENERALCALL_ENABLE -#define SMBUS_NOSTRETCH_DISABLED SMBUS_NOSTRETCH_DISABLE -#define SMBUS_NOSTRETCH_ENABLED SMBUS_NOSTRETCH_ENABLE -#define SMBUS_ANALOGFILTER_ENABLED SMBUS_ANALOGFILTER_ENABLE -#define SMBUS_ANALOGFILTER_DISABLED SMBUS_ANALOGFILTER_DISABLE -#define SMBUS_PEC_DISABLED SMBUS_PEC_DISABLE -#define SMBUS_PEC_ENABLED SMBUS_PEC_ENABLE -#define HAL_SMBUS_STATE_SLAVE_LISTEN HAL_SMBUS_STATE_LISTEN -/** - * @} - */ - -/** @defgroup HAL_SPI_Aliased_Defines HAL SPI Aliased Defines maintained for legacy purpose - * @{ - */ -#define SPI_TIMODE_DISABLED SPI_TIMODE_DISABLE -#define SPI_TIMODE_ENABLED SPI_TIMODE_ENABLE - -#define SPI_CRCCALCULATION_DISABLED SPI_CRCCALCULATION_DISABLE -#define SPI_CRCCALCULATION_ENABLED SPI_CRCCALCULATION_ENABLE - -#define SPI_NSS_PULSE_DISABLED SPI_NSS_PULSE_DISABLE -#define SPI_NSS_PULSE_ENABLED SPI_NSS_PULSE_ENABLE - -#if defined(STM32H7) - - #define SPI_FLAG_TXE SPI_FLAG_TXP - #define SPI_FLAG_RXNE SPI_FLAG_RXP - - #define SPI_IT_TXE SPI_IT_TXP - #define SPI_IT_RXNE SPI_IT_RXP - - #define SPI_FRLVL_EMPTY SPI_RX_FIFO_0PACKET - #define SPI_FRLVL_QUARTER_FULL SPI_RX_FIFO_1PACKET - #define SPI_FRLVL_HALF_FULL SPI_RX_FIFO_2PACKET - #define SPI_FRLVL_FULL SPI_RX_FIFO_3PACKET - -#endif /* STM32H7 */ - -/** - * @} - */ - -/** @defgroup HAL_TIM_Aliased_Defines HAL TIM Aliased Defines maintained for legacy purpose - * @{ - */ -#define CCER_CCxE_MASK TIM_CCER_CCxE_MASK -#define CCER_CCxNE_MASK TIM_CCER_CCxNE_MASK - -#define TIM_DMABase_CR1 TIM_DMABASE_CR1 -#define TIM_DMABase_CR2 TIM_DMABASE_CR2 -#define TIM_DMABase_SMCR TIM_DMABASE_SMCR -#define TIM_DMABase_DIER TIM_DMABASE_DIER -#define TIM_DMABase_SR TIM_DMABASE_SR -#define TIM_DMABase_EGR TIM_DMABASE_EGR -#define TIM_DMABase_CCMR1 TIM_DMABASE_CCMR1 -#define TIM_DMABase_CCMR2 TIM_DMABASE_CCMR2 -#define TIM_DMABase_CCER TIM_DMABASE_CCER -#define TIM_DMABase_CNT TIM_DMABASE_CNT -#define TIM_DMABase_PSC TIM_DMABASE_PSC -#define TIM_DMABase_ARR TIM_DMABASE_ARR -#define TIM_DMABase_RCR TIM_DMABASE_RCR -#define TIM_DMABase_CCR1 TIM_DMABASE_CCR1 -#define TIM_DMABase_CCR2 TIM_DMABASE_CCR2 -#define TIM_DMABase_CCR3 TIM_DMABASE_CCR3 -#define TIM_DMABase_CCR4 TIM_DMABASE_CCR4 -#define TIM_DMABase_BDTR TIM_DMABASE_BDTR -#define TIM_DMABase_DCR TIM_DMABASE_DCR -#define TIM_DMABase_DMAR TIM_DMABASE_DMAR -#define TIM_DMABase_OR1 TIM_DMABASE_OR1 -#define TIM_DMABase_CCMR3 TIM_DMABASE_CCMR3 -#define TIM_DMABase_CCR5 TIM_DMABASE_CCR5 -#define TIM_DMABase_CCR6 TIM_DMABASE_CCR6 -#define TIM_DMABase_OR2 TIM_DMABASE_OR2 -#define TIM_DMABase_OR3 TIM_DMABASE_OR3 -#define TIM_DMABase_OR TIM_DMABASE_OR - -#define TIM_EventSource_Update TIM_EVENTSOURCE_UPDATE -#define TIM_EventSource_CC1 TIM_EVENTSOURCE_CC1 -#define TIM_EventSource_CC2 TIM_EVENTSOURCE_CC2 -#define TIM_EventSource_CC3 TIM_EVENTSOURCE_CC3 -#define TIM_EventSource_CC4 TIM_EVENTSOURCE_CC4 -#define TIM_EventSource_COM TIM_EVENTSOURCE_COM -#define TIM_EventSource_Trigger TIM_EVENTSOURCE_TRIGGER -#define TIM_EventSource_Break TIM_EVENTSOURCE_BREAK -#define TIM_EventSource_Break2 TIM_EVENTSOURCE_BREAK2 - -#define TIM_DMABurstLength_1Transfer TIM_DMABURSTLENGTH_1TRANSFER -#define TIM_DMABurstLength_2Transfers TIM_DMABURSTLENGTH_2TRANSFERS -#define TIM_DMABurstLength_3Transfers TIM_DMABURSTLENGTH_3TRANSFERS -#define TIM_DMABurstLength_4Transfers TIM_DMABURSTLENGTH_4TRANSFERS -#define TIM_DMABurstLength_5Transfers TIM_DMABURSTLENGTH_5TRANSFERS -#define TIM_DMABurstLength_6Transfers TIM_DMABURSTLENGTH_6TRANSFERS -#define TIM_DMABurstLength_7Transfers TIM_DMABURSTLENGTH_7TRANSFERS -#define TIM_DMABurstLength_8Transfers TIM_DMABURSTLENGTH_8TRANSFERS -#define TIM_DMABurstLength_9Transfers TIM_DMABURSTLENGTH_9TRANSFERS -#define TIM_DMABurstLength_10Transfers TIM_DMABURSTLENGTH_10TRANSFERS -#define TIM_DMABurstLength_11Transfers TIM_DMABURSTLENGTH_11TRANSFERS -#define TIM_DMABurstLength_12Transfers TIM_DMABURSTLENGTH_12TRANSFERS -#define TIM_DMABurstLength_13Transfers TIM_DMABURSTLENGTH_13TRANSFERS -#define TIM_DMABurstLength_14Transfers TIM_DMABURSTLENGTH_14TRANSFERS -#define TIM_DMABurstLength_15Transfers TIM_DMABURSTLENGTH_15TRANSFERS -#define TIM_DMABurstLength_16Transfers TIM_DMABURSTLENGTH_16TRANSFERS -#define TIM_DMABurstLength_17Transfers TIM_DMABURSTLENGTH_17TRANSFERS -#define TIM_DMABurstLength_18Transfers TIM_DMABURSTLENGTH_18TRANSFERS - -#if defined(STM32L0) -#define TIM22_TI1_GPIO1 TIM22_TI1_GPIO -#define TIM22_TI1_GPIO2 TIM22_TI1_GPIO -#endif - -#if defined(STM32F3) -#define IS_TIM_HALL_INTERFACE_INSTANCE IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE -#endif - -#if defined(STM32H7) -#define TIM_TIM1_ETR_COMP1_OUT TIM_TIM1_ETR_COMP1 -#define TIM_TIM1_ETR_COMP2_OUT TIM_TIM1_ETR_COMP2 -#define TIM_TIM8_ETR_COMP1_OUT TIM_TIM8_ETR_COMP1 -#define TIM_TIM8_ETR_COMP2_OUT TIM_TIM8_ETR_COMP2 -#define TIM_TIM2_ETR_COMP1_OUT TIM_TIM2_ETR_COMP1 -#define TIM_TIM2_ETR_COMP2_OUT TIM_TIM2_ETR_COMP2 -#define TIM_TIM3_ETR_COMP1_OUT TIM_TIM3_ETR_COMP1 -#define TIM_TIM1_TI1_COMP1_OUT TIM_TIM1_TI1_COMP1 -#define TIM_TIM8_TI1_COMP2_OUT TIM_TIM8_TI1_COMP2 -#define TIM_TIM2_TI4_COMP1_OUT TIM_TIM2_TI4_COMP1 -#define TIM_TIM2_TI4_COMP2_OUT TIM_TIM2_TI4_COMP2 -#define TIM_TIM2_TI4_COMP1COMP2_OUT TIM_TIM2_TI4_COMP1_COMP2 -#define TIM_TIM3_TI1_COMP1_OUT TIM_TIM3_TI1_COMP1 -#define TIM_TIM3_TI1_COMP2_OUT TIM_TIM3_TI1_COMP2 -#define TIM_TIM3_TI1_COMP1COMP2_OUT TIM_TIM3_TI1_COMP1_COMP2 -#endif - -/** - * @} - */ - -/** @defgroup HAL_TSC_Aliased_Defines HAL TSC Aliased Defines maintained for legacy purpose - * @{ - */ -#define TSC_SYNC_POL_FALL TSC_SYNC_POLARITY_FALLING -#define TSC_SYNC_POL_RISE_HIGH TSC_SYNC_POLARITY_RISING -/** - * @} - */ - -/** @defgroup HAL_UART_Aliased_Defines HAL UART Aliased Defines maintained for legacy purpose - * @{ - */ -#define UART_ONEBIT_SAMPLING_DISABLED UART_ONE_BIT_SAMPLE_DISABLE -#define UART_ONEBIT_SAMPLING_ENABLED UART_ONE_BIT_SAMPLE_ENABLE -#define UART_ONE_BIT_SAMPLE_DISABLED UART_ONE_BIT_SAMPLE_DISABLE -#define UART_ONE_BIT_SAMPLE_ENABLED UART_ONE_BIT_SAMPLE_ENABLE - -#define __HAL_UART_ONEBIT_ENABLE __HAL_UART_ONE_BIT_SAMPLE_ENABLE -#define __HAL_UART_ONEBIT_DISABLE __HAL_UART_ONE_BIT_SAMPLE_DISABLE - -#define __DIV_SAMPLING16 UART_DIV_SAMPLING16 -#define __DIVMANT_SAMPLING16 UART_DIVMANT_SAMPLING16 -#define __DIVFRAQ_SAMPLING16 UART_DIVFRAQ_SAMPLING16 -#define __UART_BRR_SAMPLING16 UART_BRR_SAMPLING16 - -#define __DIV_SAMPLING8 UART_DIV_SAMPLING8 -#define __DIVMANT_SAMPLING8 UART_DIVMANT_SAMPLING8 -#define __DIVFRAQ_SAMPLING8 UART_DIVFRAQ_SAMPLING8 -#define __UART_BRR_SAMPLING8 UART_BRR_SAMPLING8 - -#define __DIV_LPUART UART_DIV_LPUART - -#define UART_WAKEUPMETHODE_IDLELINE UART_WAKEUPMETHOD_IDLELINE -#define UART_WAKEUPMETHODE_ADDRESSMARK UART_WAKEUPMETHOD_ADDRESSMARK - -/** - * @} - */ - - -/** @defgroup HAL_USART_Aliased_Defines HAL USART Aliased Defines maintained for legacy purpose - * @{ - */ - -#define USART_CLOCK_DISABLED USART_CLOCK_DISABLE -#define USART_CLOCK_ENABLED USART_CLOCK_ENABLE - -#define USARTNACK_ENABLED USART_NACK_ENABLE -#define USARTNACK_DISABLED USART_NACK_DISABLE -/** - * @} - */ - -/** @defgroup HAL_WWDG_Aliased_Defines HAL WWDG Aliased Defines maintained for legacy purpose - * @{ - */ -#define CFR_BASE WWDG_CFR_BASE - -/** - * @} - */ - -/** @defgroup HAL_CAN_Aliased_Defines HAL CAN Aliased Defines maintained for legacy purpose - * @{ - */ -#define CAN_FilterFIFO0 CAN_FILTER_FIFO0 -#define CAN_FilterFIFO1 CAN_FILTER_FIFO1 -#define CAN_IT_RQCP0 CAN_IT_TME -#define CAN_IT_RQCP1 CAN_IT_TME -#define CAN_IT_RQCP2 CAN_IT_TME -#define INAK_TIMEOUT CAN_TIMEOUT_VALUE -#define SLAK_TIMEOUT CAN_TIMEOUT_VALUE -#define CAN_TXSTATUS_FAILED ((uint8_t)0x00U) -#define CAN_TXSTATUS_OK ((uint8_t)0x01U) -#define CAN_TXSTATUS_PENDING ((uint8_t)0x02U) - -/** - * @} - */ - -/** @defgroup HAL_ETH_Aliased_Defines HAL ETH Aliased Defines maintained for legacy purpose - * @{ - */ - -#define VLAN_TAG ETH_VLAN_TAG -#define MIN_ETH_PAYLOAD ETH_MIN_ETH_PAYLOAD -#define MAX_ETH_PAYLOAD ETH_MAX_ETH_PAYLOAD -#define JUMBO_FRAME_PAYLOAD ETH_JUMBO_FRAME_PAYLOAD -#define MACMIIAR_CR_MASK ETH_MACMIIAR_CR_MASK -#define MACCR_CLEAR_MASK ETH_MACCR_CLEAR_MASK -#define MACFCR_CLEAR_MASK ETH_MACFCR_CLEAR_MASK -#define DMAOMR_CLEAR_MASK ETH_DMAOMR_CLEAR_MASK - -#define ETH_MMCCR 0x00000100U -#define ETH_MMCRIR 0x00000104U -#define ETH_MMCTIR 0x00000108U -#define ETH_MMCRIMR 0x0000010CU -#define ETH_MMCTIMR 0x00000110U -#define ETH_MMCTGFSCCR 0x0000014CU -#define ETH_MMCTGFMSCCR 0x00000150U -#define ETH_MMCTGFCR 0x00000168U -#define ETH_MMCRFCECR 0x00000194U -#define ETH_MMCRFAECR 0x00000198U -#define ETH_MMCRGUFCR 0x000001C4U - -#define ETH_MAC_TXFIFO_FULL 0x02000000U /* Tx FIFO full */ -#define ETH_MAC_TXFIFONOT_EMPTY 0x01000000U /* Tx FIFO not empty */ -#define ETH_MAC_TXFIFO_WRITE_ACTIVE 0x00400000U /* Tx FIFO write active */ -#define ETH_MAC_TXFIFO_IDLE 0x00000000U /* Tx FIFO read status: Idle */ -#define ETH_MAC_TXFIFO_READ 0x00100000U /* Tx FIFO read status: Read (transferring data to the MAC transmitter) */ -#define ETH_MAC_TXFIFO_WAITING 0x00200000U /* Tx FIFO read status: Waiting for TxStatus from MAC transmitter */ -#define ETH_MAC_TXFIFO_WRITING 0x00300000U /* Tx FIFO read status: Writing the received TxStatus or flushing the TxFIFO */ -#define ETH_MAC_TRANSMISSION_PAUSE 0x00080000U /* MAC transmitter in pause */ -#define ETH_MAC_TRANSMITFRAMECONTROLLER_IDLE 0x00000000U /* MAC transmit frame controller: Idle */ -#define ETH_MAC_TRANSMITFRAMECONTROLLER_WAITING 0x00020000U /* MAC transmit frame controller: Waiting for Status of previous frame or IFG/backoff period to be over */ -#define ETH_MAC_TRANSMITFRAMECONTROLLER_GENRATING_PCF 0x00040000U /* MAC transmit frame controller: Generating and transmitting a Pause control frame (in full duplex mode) */ -#define ETH_MAC_TRANSMITFRAMECONTROLLER_TRANSFERRING 0x00060000U /* MAC transmit frame controller: Transferring input frame for transmission */ -#define ETH_MAC_MII_TRANSMIT_ACTIVE 0x00010000U /* MAC MII transmit engine active */ -#define ETH_MAC_RXFIFO_EMPTY 0x00000000U /* Rx FIFO fill level: empty */ -#define ETH_MAC_RXFIFO_BELOW_THRESHOLD 0x00000100U /* Rx FIFO fill level: fill-level below flow-control de-activate threshold */ -#define ETH_MAC_RXFIFO_ABOVE_THRESHOLD 0x00000200U /* Rx FIFO fill level: fill-level above flow-control activate threshold */ -#define ETH_MAC_RXFIFO_FULL 0x00000300U /* Rx FIFO fill level: full */ -#if defined(STM32F1) -#else -#define ETH_MAC_READCONTROLLER_IDLE 0x00000000U /* Rx FIFO read controller IDLE state */ -#define ETH_MAC_READCONTROLLER_READING_DATA 0x00000020U /* Rx FIFO read controller Reading frame data */ -#define ETH_MAC_READCONTROLLER_READING_STATUS 0x00000040U /* Rx FIFO read controller Reading frame status (or time-stamp) */ -#endif -#define ETH_MAC_READCONTROLLER_FLUSHING 0x00000060U /* Rx FIFO read controller Flushing the frame data and status */ -#define ETH_MAC_RXFIFO_WRITE_ACTIVE 0x00000010U /* Rx FIFO write controller active */ -#define ETH_MAC_SMALL_FIFO_NOTACTIVE 0x00000000U /* MAC small FIFO read / write controllers not active */ -#define ETH_MAC_SMALL_FIFO_READ_ACTIVE 0x00000002U /* MAC small FIFO read controller active */ -#define ETH_MAC_SMALL_FIFO_WRITE_ACTIVE 0x00000004U /* MAC small FIFO write controller active */ -#define ETH_MAC_SMALL_FIFO_RW_ACTIVE 0x00000006U /* MAC small FIFO read / write controllers active */ -#define ETH_MAC_MII_RECEIVE_PROTOCOL_ACTIVE 0x00000001U /* MAC MII receive protocol engine active */ - -/** - * @} - */ - -/** @defgroup HAL_DCMI_Aliased_Defines HAL DCMI Aliased Defines maintained for legacy purpose - * @{ - */ -#define HAL_DCMI_ERROR_OVF HAL_DCMI_ERROR_OVR -#define DCMI_IT_OVF DCMI_IT_OVR -#define DCMI_FLAG_OVFRI DCMI_FLAG_OVRRI -#define DCMI_FLAG_OVFMI DCMI_FLAG_OVRMI - -#define HAL_DCMI_ConfigCROP HAL_DCMI_ConfigCrop -#define HAL_DCMI_EnableCROP HAL_DCMI_EnableCrop -#define HAL_DCMI_DisableCROP HAL_DCMI_DisableCrop - -/** - * @} - */ - -#if defined(STM32L4) || defined(STM32F7) || defined(STM32F427xx) || defined(STM32F437xx) \ - || defined(STM32F429xx) || defined(STM32F439xx) || defined(STM32F469xx) || defined(STM32F479xx) \ - || defined(STM32H7) -/** @defgroup HAL_DMA2D_Aliased_Defines HAL DMA2D Aliased Defines maintained for legacy purpose - * @{ - */ -#define DMA2D_ARGB8888 DMA2D_OUTPUT_ARGB8888 -#define DMA2D_RGB888 DMA2D_OUTPUT_RGB888 -#define DMA2D_RGB565 DMA2D_OUTPUT_RGB565 -#define DMA2D_ARGB1555 DMA2D_OUTPUT_ARGB1555 -#define DMA2D_ARGB4444 DMA2D_OUTPUT_ARGB4444 - -#define CM_ARGB8888 DMA2D_INPUT_ARGB8888 -#define CM_RGB888 DMA2D_INPUT_RGB888 -#define CM_RGB565 DMA2D_INPUT_RGB565 -#define CM_ARGB1555 DMA2D_INPUT_ARGB1555 -#define CM_ARGB4444 DMA2D_INPUT_ARGB4444 -#define CM_L8 DMA2D_INPUT_L8 -#define CM_AL44 DMA2D_INPUT_AL44 -#define CM_AL88 DMA2D_INPUT_AL88 -#define CM_L4 DMA2D_INPUT_L4 -#define CM_A8 DMA2D_INPUT_A8 -#define CM_A4 DMA2D_INPUT_A4 -/** - * @} - */ -#endif /* STM32L4 || STM32F7 || STM32F4 || STM32H7 */ - -/** @defgroup HAL_PPP_Aliased_Defines HAL PPP Aliased Defines maintained for legacy purpose - * @{ - */ - -/** - * @} - */ - -/* Exported functions --------------------------------------------------------*/ - -/** @defgroup HAL_CRYP_Aliased_Functions HAL CRYP Aliased Functions maintained for legacy purpose - * @{ - */ -#define HAL_CRYP_ComputationCpltCallback HAL_CRYPEx_ComputationCpltCallback -/** - * @} - */ - -/** @defgroup HAL_HASH_Aliased_Functions HAL HASH Aliased Functions maintained for legacy purpose - * @{ - */ -#define HAL_HASH_STATETypeDef HAL_HASH_StateTypeDef -#define HAL_HASHPhaseTypeDef HAL_HASH_PhaseTypeDef -#define HAL_HMAC_MD5_Finish HAL_HASH_MD5_Finish -#define HAL_HMAC_SHA1_Finish HAL_HASH_SHA1_Finish -#define HAL_HMAC_SHA224_Finish HAL_HASH_SHA224_Finish -#define HAL_HMAC_SHA256_Finish HAL_HASH_SHA256_Finish - -/*HASH Algorithm Selection*/ - -#define HASH_AlgoSelection_SHA1 HASH_ALGOSELECTION_SHA1 -#define HASH_AlgoSelection_SHA224 HASH_ALGOSELECTION_SHA224 -#define HASH_AlgoSelection_SHA256 HASH_ALGOSELECTION_SHA256 -#define HASH_AlgoSelection_MD5 HASH_ALGOSELECTION_MD5 - -#define HASH_AlgoMode_HASH HASH_ALGOMODE_HASH -#define HASH_AlgoMode_HMAC HASH_ALGOMODE_HMAC - -#define HASH_HMACKeyType_ShortKey HASH_HMAC_KEYTYPE_SHORTKEY -#define HASH_HMACKeyType_LongKey HASH_HMAC_KEYTYPE_LONGKEY - -#if defined(STM32L4) || defined(STM32L5) || defined(STM32F2) || defined(STM32F4) || defined(STM32F7) || defined(STM32H7) - -#define HAL_HASH_MD5_Accumulate HAL_HASH_MD5_Accmlt -#define HAL_HASH_MD5_Accumulate_End HAL_HASH_MD5_Accmlt_End -#define HAL_HASH_MD5_Accumulate_IT HAL_HASH_MD5_Accmlt_IT -#define HAL_HASH_MD5_Accumulate_End_IT HAL_HASH_MD5_Accmlt_End_IT - -#define HAL_HASH_SHA1_Accumulate HAL_HASH_SHA1_Accmlt -#define HAL_HASH_SHA1_Accumulate_End HAL_HASH_SHA1_Accmlt_End -#define HAL_HASH_SHA1_Accumulate_IT HAL_HASH_SHA1_Accmlt_IT -#define HAL_HASH_SHA1_Accumulate_End_IT HAL_HASH_SHA1_Accmlt_End_IT - -#define HAL_HASHEx_SHA224_Accumulate HAL_HASHEx_SHA224_Accmlt -#define HAL_HASHEx_SHA224_Accumulate_End HAL_HASHEx_SHA224_Accmlt_End -#define HAL_HASHEx_SHA224_Accumulate_IT HAL_HASHEx_SHA224_Accmlt_IT -#define HAL_HASHEx_SHA224_Accumulate_End_IT HAL_HASHEx_SHA224_Accmlt_End_IT - -#define HAL_HASHEx_SHA256_Accumulate HAL_HASHEx_SHA256_Accmlt -#define HAL_HASHEx_SHA256_Accumulate_End HAL_HASHEx_SHA256_Accmlt_End -#define HAL_HASHEx_SHA256_Accumulate_IT HAL_HASHEx_SHA256_Accmlt_IT -#define HAL_HASHEx_SHA256_Accumulate_End_IT HAL_HASHEx_SHA256_Accmlt_End_IT - -#endif /* STM32L4 || STM32L5 || STM32F2 || STM32F4 || STM32F7 || STM32H7 */ -/** - * @} - */ - -/** @defgroup HAL_Aliased_Functions HAL Generic Aliased Functions maintained for legacy purpose - * @{ - */ -#define HAL_EnableDBGSleepMode HAL_DBGMCU_EnableDBGSleepMode -#define HAL_DisableDBGSleepMode HAL_DBGMCU_DisableDBGSleepMode -#define HAL_EnableDBGStopMode HAL_DBGMCU_EnableDBGStopMode -#define HAL_DisableDBGStopMode HAL_DBGMCU_DisableDBGStopMode -#define HAL_EnableDBGStandbyMode HAL_DBGMCU_EnableDBGStandbyMode -#define HAL_DisableDBGStandbyMode HAL_DBGMCU_DisableDBGStandbyMode -#define HAL_DBG_LowPowerConfig(Periph, cmd) (((cmd)==ENABLE)? HAL_DBGMCU_DBG_EnableLowPowerConfig(Periph) : HAL_DBGMCU_DBG_DisableLowPowerConfig(Periph)) -#define HAL_VREFINT_OutputSelect HAL_SYSCFG_VREFINT_OutputSelect -#define HAL_Lock_Cmd(cmd) (((cmd)==ENABLE) ? HAL_SYSCFG_Enable_Lock_VREFINT() : HAL_SYSCFG_Disable_Lock_VREFINT()) -#if defined(STM32L0) -#else -#define HAL_VREFINT_Cmd(cmd) (((cmd)==ENABLE)? HAL_SYSCFG_EnableVREFINT() : HAL_SYSCFG_DisableVREFINT()) -#endif -#define HAL_ADC_EnableBuffer_Cmd(cmd) (((cmd)==ENABLE) ? HAL_ADCEx_EnableVREFINT() : HAL_ADCEx_DisableVREFINT()) -#define HAL_ADC_EnableBufferSensor_Cmd(cmd) (((cmd)==ENABLE) ? HAL_ADCEx_EnableVREFINTTempSensor() : HAL_ADCEx_DisableVREFINTTempSensor()) -#if defined(STM32H7A3xx) || defined(STM32H7B3xx) || defined(STM32H7B0xx) || defined(STM32H7A3xxQ) || defined(STM32H7B3xxQ) || defined(STM32H7B0xxQ) -#define HAL_EnableSRDomainDBGStopMode HAL_EnableDomain3DBGStopMode -#define HAL_DisableSRDomainDBGStopMode HAL_DisableDomain3DBGStopMode -#define HAL_EnableSRDomainDBGStandbyMode HAL_EnableDomain3DBGStandbyMode -#define HAL_DisableSRDomainDBGStandbyMode HAL_DisableDomain3DBGStandbyMode -#endif /* STM32H7A3xx || STM32H7B3xx || STM32H7B0xx || STM32H7A3xxQ || STM32H7B3xxQ || STM32H7B0xxQ */ - -/** - * @} - */ - -/** @defgroup HAL_FLASH_Aliased_Functions HAL FLASH Aliased Functions maintained for legacy purpose - * @{ - */ -#define FLASH_HalfPageProgram HAL_FLASHEx_HalfPageProgram -#define FLASH_EnableRunPowerDown HAL_FLASHEx_EnableRunPowerDown -#define FLASH_DisableRunPowerDown HAL_FLASHEx_DisableRunPowerDown -#define HAL_DATA_EEPROMEx_Unlock HAL_FLASHEx_DATAEEPROM_Unlock -#define HAL_DATA_EEPROMEx_Lock HAL_FLASHEx_DATAEEPROM_Lock -#define HAL_DATA_EEPROMEx_Erase HAL_FLASHEx_DATAEEPROM_Erase -#define HAL_DATA_EEPROMEx_Program HAL_FLASHEx_DATAEEPROM_Program - - /** - * @} - */ - -/** @defgroup HAL_I2C_Aliased_Functions HAL I2C Aliased Functions maintained for legacy purpose - * @{ - */ -#define HAL_I2CEx_AnalogFilter_Config HAL_I2CEx_ConfigAnalogFilter -#define HAL_I2CEx_DigitalFilter_Config HAL_I2CEx_ConfigDigitalFilter -#define HAL_FMPI2CEx_AnalogFilter_Config HAL_FMPI2CEx_ConfigAnalogFilter -#define HAL_FMPI2CEx_DigitalFilter_Config HAL_FMPI2CEx_ConfigDigitalFilter - -#define HAL_I2CFastModePlusConfig(SYSCFG_I2CFastModePlus, cmd) (((cmd)==ENABLE)? HAL_I2CEx_EnableFastModePlus(SYSCFG_I2CFastModePlus): HAL_I2CEx_DisableFastModePlus(SYSCFG_I2CFastModePlus)) - -#if defined(STM32H7) || defined(STM32WB) || defined(STM32G0) || defined(STM32F0) || defined(STM32F1) || defined(STM32F2) || defined(STM32F3) || defined(STM32F4) || defined(STM32F7) || defined(STM32L0) || defined(STM32L4) || defined(STM32L5) || defined(STM32G4) || defined(STM32L1) -#define HAL_I2C_Master_Sequential_Transmit_IT HAL_I2C_Master_Seq_Transmit_IT -#define HAL_I2C_Master_Sequential_Receive_IT HAL_I2C_Master_Seq_Receive_IT -#define HAL_I2C_Slave_Sequential_Transmit_IT HAL_I2C_Slave_Seq_Transmit_IT -#define HAL_I2C_Slave_Sequential_Receive_IT HAL_I2C_Slave_Seq_Receive_IT -#endif /* STM32H7 || STM32WB || STM32G0 || STM32F0 || STM32F1 || STM32F2 || STM32F3 || STM32F4 || STM32F7 || STM32L0 || STM32L4 || STM32L5 || STM32G4 || STM32L1 */ -#if defined(STM32H7) || defined(STM32WB) || defined(STM32G0) || defined(STM32F4) || defined(STM32F7) || defined(STM32L0) || defined(STM32L4) || defined(STM32L5) || defined(STM32G4)|| defined(STM32L1) -#define HAL_I2C_Master_Sequential_Transmit_DMA HAL_I2C_Master_Seq_Transmit_DMA -#define HAL_I2C_Master_Sequential_Receive_DMA HAL_I2C_Master_Seq_Receive_DMA -#define HAL_I2C_Slave_Sequential_Transmit_DMA HAL_I2C_Slave_Seq_Transmit_DMA -#define HAL_I2C_Slave_Sequential_Receive_DMA HAL_I2C_Slave_Seq_Receive_DMA -#endif /* STM32H7 || STM32WB || STM32G0 || STM32F4 || STM32F7 || STM32L0 || STM32L4 || STM32L5 || STM32G4 || STM32L1 */ - -#if defined(STM32F4) -#define HAL_FMPI2C_Master_Sequential_Transmit_IT HAL_FMPI2C_Master_Seq_Transmit_IT -#define HAL_FMPI2C_Master_Sequential_Receive_IT HAL_FMPI2C_Master_Seq_Receive_IT -#define HAL_FMPI2C_Slave_Sequential_Transmit_IT HAL_FMPI2C_Slave_Seq_Transmit_IT -#define HAL_FMPI2C_Slave_Sequential_Receive_IT HAL_FMPI2C_Slave_Seq_Receive_IT -#define HAL_FMPI2C_Master_Sequential_Transmit_DMA HAL_FMPI2C_Master_Seq_Transmit_DMA -#define HAL_FMPI2C_Master_Sequential_Receive_DMA HAL_FMPI2C_Master_Seq_Receive_DMA -#define HAL_FMPI2C_Slave_Sequential_Transmit_DMA HAL_FMPI2C_Slave_Seq_Transmit_DMA -#define HAL_FMPI2C_Slave_Sequential_Receive_DMA HAL_FMPI2C_Slave_Seq_Receive_DMA -#endif /* STM32F4 */ - /** - * @} - */ - -/** @defgroup HAL_PWR_Aliased HAL PWR Aliased maintained for legacy purpose - * @{ - */ - -#if defined(STM32G0) -#define HAL_PWR_ConfigPVD HAL_PWREx_ConfigPVD -#define HAL_PWR_EnablePVD HAL_PWREx_EnablePVD -#define HAL_PWR_DisablePVD HAL_PWREx_DisablePVD -#define HAL_PWR_PVD_IRQHandler HAL_PWREx_PVD_IRQHandler -#endif -#define HAL_PWR_PVDConfig HAL_PWR_ConfigPVD -#define HAL_PWR_DisableBkUpReg HAL_PWREx_DisableBkUpReg -#define HAL_PWR_DisableFlashPowerDown HAL_PWREx_DisableFlashPowerDown -#define HAL_PWR_DisableVddio2Monitor HAL_PWREx_DisableVddio2Monitor -#define HAL_PWR_EnableBkUpReg HAL_PWREx_EnableBkUpReg -#define HAL_PWR_EnableFlashPowerDown HAL_PWREx_EnableFlashPowerDown -#define HAL_PWR_EnableVddio2Monitor HAL_PWREx_EnableVddio2Monitor -#define HAL_PWR_PVD_PVM_IRQHandler HAL_PWREx_PVD_PVM_IRQHandler -#define HAL_PWR_PVDLevelConfig HAL_PWR_ConfigPVD -#define HAL_PWR_Vddio2Monitor_IRQHandler HAL_PWREx_Vddio2Monitor_IRQHandler -#define HAL_PWR_Vddio2MonitorCallback HAL_PWREx_Vddio2MonitorCallback -#define HAL_PWREx_ActivateOverDrive HAL_PWREx_EnableOverDrive -#define HAL_PWREx_DeactivateOverDrive HAL_PWREx_DisableOverDrive -#define HAL_PWREx_DisableSDADCAnalog HAL_PWREx_DisableSDADC -#define HAL_PWREx_EnableSDADCAnalog HAL_PWREx_EnableSDADC -#define HAL_PWREx_PVMConfig HAL_PWREx_ConfigPVM - -#define PWR_MODE_NORMAL PWR_PVD_MODE_NORMAL -#define PWR_MODE_IT_RISING PWR_PVD_MODE_IT_RISING -#define PWR_MODE_IT_FALLING PWR_PVD_MODE_IT_FALLING -#define PWR_MODE_IT_RISING_FALLING PWR_PVD_MODE_IT_RISING_FALLING -#define PWR_MODE_EVENT_RISING PWR_PVD_MODE_EVENT_RISING -#define PWR_MODE_EVENT_FALLING PWR_PVD_MODE_EVENT_FALLING -#define PWR_MODE_EVENT_RISING_FALLING PWR_PVD_MODE_EVENT_RISING_FALLING - -#define CR_OFFSET_BB PWR_CR_OFFSET_BB -#define CSR_OFFSET_BB PWR_CSR_OFFSET_BB -#define PMODE_BIT_NUMBER VOS_BIT_NUMBER -#define CR_PMODE_BB CR_VOS_BB - -#define DBP_BitNumber DBP_BIT_NUMBER -#define PVDE_BitNumber PVDE_BIT_NUMBER -#define PMODE_BitNumber PMODE_BIT_NUMBER -#define EWUP_BitNumber EWUP_BIT_NUMBER -#define FPDS_BitNumber FPDS_BIT_NUMBER -#define ODEN_BitNumber ODEN_BIT_NUMBER -#define ODSWEN_BitNumber ODSWEN_BIT_NUMBER -#define MRLVDS_BitNumber MRLVDS_BIT_NUMBER -#define LPLVDS_BitNumber LPLVDS_BIT_NUMBER -#define BRE_BitNumber BRE_BIT_NUMBER - -#define PWR_MODE_EVT PWR_PVD_MODE_NORMAL - - /** - * @} - */ - -/** @defgroup HAL_SMBUS_Aliased_Functions HAL SMBUS Aliased Functions maintained for legacy purpose - * @{ - */ -#define HAL_SMBUS_Slave_Listen_IT HAL_SMBUS_EnableListen_IT -#define HAL_SMBUS_SlaveAddrCallback HAL_SMBUS_AddrCallback -#define HAL_SMBUS_SlaveListenCpltCallback HAL_SMBUS_ListenCpltCallback -/** - * @} - */ - -/** @defgroup HAL_SPI_Aliased_Functions HAL SPI Aliased Functions maintained for legacy purpose - * @{ - */ -#define HAL_SPI_FlushRxFifo HAL_SPIEx_FlushRxFifo -/** - * @} - */ - -/** @defgroup HAL_TIM_Aliased_Functions HAL TIM Aliased Functions maintained for legacy purpose - * @{ - */ -#define HAL_TIM_DMADelayPulseCplt TIM_DMADelayPulseCplt -#define HAL_TIM_DMAError TIM_DMAError -#define HAL_TIM_DMACaptureCplt TIM_DMACaptureCplt -#define HAL_TIMEx_DMACommutationCplt TIMEx_DMACommutationCplt -#if defined(STM32H7) || defined(STM32G0) || defined(STM32F0) || defined(STM32F1) || defined(STM32F2) || defined(STM32F3) || defined(STM32F4) || defined(STM32F7) || defined(STM32L0) || defined(STM32L4) -#define HAL_TIM_SlaveConfigSynchronization HAL_TIM_SlaveConfigSynchro -#define HAL_TIM_SlaveConfigSynchronization_IT HAL_TIM_SlaveConfigSynchro_IT -#define HAL_TIMEx_CommutationCallback HAL_TIMEx_CommutCallback -#define HAL_TIMEx_ConfigCommutationEvent HAL_TIMEx_ConfigCommutEvent -#define HAL_TIMEx_ConfigCommutationEvent_IT HAL_TIMEx_ConfigCommutEvent_IT -#define HAL_TIMEx_ConfigCommutationEvent_DMA HAL_TIMEx_ConfigCommutEvent_DMA -#endif /* STM32H7 || STM32G0 || STM32F0 || STM32F1 || STM32F2 || STM32F3 || STM32F4 || STM32F7 || STM32L0 */ -/** - * @} - */ - -/** @defgroup HAL_UART_Aliased_Functions HAL UART Aliased Functions maintained for legacy purpose - * @{ - */ -#define HAL_UART_WakeupCallback HAL_UARTEx_WakeupCallback -/** - * @} - */ - -/** @defgroup HAL_LTDC_Aliased_Functions HAL LTDC Aliased Functions maintained for legacy purpose - * @{ - */ -#define HAL_LTDC_LineEvenCallback HAL_LTDC_LineEventCallback -#define HAL_LTDC_Relaod HAL_LTDC_Reload -#define HAL_LTDC_StructInitFromVideoConfig HAL_LTDCEx_StructInitFromVideoConfig -#define HAL_LTDC_StructInitFromAdaptedCommandConfig HAL_LTDCEx_StructInitFromAdaptedCommandConfig -/** - * @} - */ - - -/** @defgroup HAL_PPP_Aliased_Functions HAL PPP Aliased Functions maintained for legacy purpose - * @{ - */ - -/** - * @} - */ - -/* Exported macros ------------------------------------------------------------*/ - -/** @defgroup HAL_AES_Aliased_Macros HAL CRYP Aliased Macros maintained for legacy purpose - * @{ - */ -#define AES_IT_CC CRYP_IT_CC -#define AES_IT_ERR CRYP_IT_ERR -#define AES_FLAG_CCF CRYP_FLAG_CCF -/** - * @} - */ - -/** @defgroup HAL_Aliased_Macros HAL Generic Aliased Macros maintained for legacy purpose - * @{ - */ -#define __HAL_GET_BOOT_MODE __HAL_SYSCFG_GET_BOOT_MODE -#define __HAL_REMAPMEMORY_FLASH __HAL_SYSCFG_REMAPMEMORY_FLASH -#define __HAL_REMAPMEMORY_SYSTEMFLASH __HAL_SYSCFG_REMAPMEMORY_SYSTEMFLASH -#define __HAL_REMAPMEMORY_SRAM __HAL_SYSCFG_REMAPMEMORY_SRAM -#define __HAL_REMAPMEMORY_FMC __HAL_SYSCFG_REMAPMEMORY_FMC -#define __HAL_REMAPMEMORY_FMC_SDRAM __HAL_SYSCFG_REMAPMEMORY_FMC_SDRAM -#define __HAL_REMAPMEMORY_FSMC __HAL_SYSCFG_REMAPMEMORY_FSMC -#define __HAL_REMAPMEMORY_QUADSPI __HAL_SYSCFG_REMAPMEMORY_QUADSPI -#define __HAL_FMC_BANK __HAL_SYSCFG_FMC_BANK -#define __HAL_GET_FLAG __HAL_SYSCFG_GET_FLAG -#define __HAL_CLEAR_FLAG __HAL_SYSCFG_CLEAR_FLAG -#define __HAL_VREFINT_OUT_ENABLE __HAL_SYSCFG_VREFINT_OUT_ENABLE -#define __HAL_VREFINT_OUT_DISABLE __HAL_SYSCFG_VREFINT_OUT_DISABLE -#define __HAL_SYSCFG_SRAM2_WRP_ENABLE __HAL_SYSCFG_SRAM2_WRP_0_31_ENABLE - -#define SYSCFG_FLAG_VREF_READY SYSCFG_FLAG_VREFINT_READY -#define SYSCFG_FLAG_RC48 RCC_FLAG_HSI48 -#define IS_SYSCFG_FASTMODEPLUS_CONFIG IS_I2C_FASTMODEPLUS -#define UFB_MODE_BitNumber UFB_MODE_BIT_NUMBER -#define CMP_PD_BitNumber CMP_PD_BIT_NUMBER - -/** - * @} - */ - - -/** @defgroup HAL_ADC_Aliased_Macros HAL ADC Aliased Macros maintained for legacy purpose - * @{ - */ -#define __ADC_ENABLE __HAL_ADC_ENABLE -#define __ADC_DISABLE __HAL_ADC_DISABLE -#define __HAL_ADC_ENABLING_CONDITIONS ADC_ENABLING_CONDITIONS -#define __HAL_ADC_DISABLING_CONDITIONS ADC_DISABLING_CONDITIONS -#define __HAL_ADC_IS_ENABLED ADC_IS_ENABLE -#define __ADC_IS_ENABLED ADC_IS_ENABLE -#define __HAL_ADC_IS_SOFTWARE_START_REGULAR ADC_IS_SOFTWARE_START_REGULAR -#define __HAL_ADC_IS_SOFTWARE_START_INJECTED ADC_IS_SOFTWARE_START_INJECTED -#define __HAL_ADC_IS_CONVERSION_ONGOING_REGULAR_INJECTED ADC_IS_CONVERSION_ONGOING_REGULAR_INJECTED -#define __HAL_ADC_IS_CONVERSION_ONGOING_REGULAR ADC_IS_CONVERSION_ONGOING_REGULAR -#define __HAL_ADC_IS_CONVERSION_ONGOING_INJECTED ADC_IS_CONVERSION_ONGOING_INJECTED -#define __HAL_ADC_IS_CONVERSION_ONGOING ADC_IS_CONVERSION_ONGOING -#define __HAL_ADC_CLEAR_ERRORCODE ADC_CLEAR_ERRORCODE - -#define __HAL_ADC_GET_RESOLUTION ADC_GET_RESOLUTION -#define __HAL_ADC_JSQR_RK ADC_JSQR_RK -#define __HAL_ADC_CFGR_AWD1CH ADC_CFGR_AWD1CH_SHIFT -#define __HAL_ADC_CFGR_AWD23CR ADC_CFGR_AWD23CR -#define __HAL_ADC_CFGR_INJECT_AUTO_CONVERSION ADC_CFGR_INJECT_AUTO_CONVERSION -#define __HAL_ADC_CFGR_INJECT_CONTEXT_QUEUE ADC_CFGR_INJECT_CONTEXT_QUEUE -#define __HAL_ADC_CFGR_INJECT_DISCCONTINUOUS ADC_CFGR_INJECT_DISCCONTINUOUS -#define __HAL_ADC_CFGR_REG_DISCCONTINUOUS ADC_CFGR_REG_DISCCONTINUOUS -#define __HAL_ADC_CFGR_DISCONTINUOUS_NUM ADC_CFGR_DISCONTINUOUS_NUM -#define __HAL_ADC_CFGR_AUTOWAIT ADC_CFGR_AUTOWAIT -#define __HAL_ADC_CFGR_CONTINUOUS ADC_CFGR_CONTINUOUS -#define __HAL_ADC_CFGR_OVERRUN ADC_CFGR_OVERRUN -#define __HAL_ADC_CFGR_DMACONTREQ ADC_CFGR_DMACONTREQ -#define __HAL_ADC_CFGR_EXTSEL ADC_CFGR_EXTSEL_SET -#define __HAL_ADC_JSQR_JEXTSEL ADC_JSQR_JEXTSEL_SET -#define __HAL_ADC_OFR_CHANNEL ADC_OFR_CHANNEL -#define __HAL_ADC_DIFSEL_CHANNEL ADC_DIFSEL_CHANNEL -#define __HAL_ADC_CALFACT_DIFF_SET ADC_CALFACT_DIFF_SET -#define __HAL_ADC_CALFACT_DIFF_GET ADC_CALFACT_DIFF_GET -#define __HAL_ADC_TRX_HIGHTHRESHOLD ADC_TRX_HIGHTHRESHOLD - -#define __HAL_ADC_OFFSET_SHIFT_RESOLUTION ADC_OFFSET_SHIFT_RESOLUTION -#define __HAL_ADC_AWD1THRESHOLD_SHIFT_RESOLUTION ADC_AWD1THRESHOLD_SHIFT_RESOLUTION -#define __HAL_ADC_AWD23THRESHOLD_SHIFT_RESOLUTION ADC_AWD23THRESHOLD_SHIFT_RESOLUTION -#define __HAL_ADC_COMMON_REGISTER ADC_COMMON_REGISTER -#define __HAL_ADC_COMMON_CCR_MULTI ADC_COMMON_CCR_MULTI -#define __HAL_ADC_MULTIMODE_IS_ENABLED ADC_MULTIMODE_IS_ENABLE -#define __ADC_MULTIMODE_IS_ENABLED ADC_MULTIMODE_IS_ENABLE -#define __HAL_ADC_NONMULTIMODE_OR_MULTIMODEMASTER ADC_NONMULTIMODE_OR_MULTIMODEMASTER -#define __HAL_ADC_COMMON_ADC_OTHER ADC_COMMON_ADC_OTHER -#define __HAL_ADC_MULTI_SLAVE ADC_MULTI_SLAVE - -#define __HAL_ADC_SQR1_L ADC_SQR1_L_SHIFT -#define __HAL_ADC_JSQR_JL ADC_JSQR_JL_SHIFT -#define __HAL_ADC_JSQR_RK_JL ADC_JSQR_RK_JL -#define __HAL_ADC_CR1_DISCONTINUOUS_NUM ADC_CR1_DISCONTINUOUS_NUM -#define __HAL_ADC_CR1_SCAN ADC_CR1_SCAN_SET -#define __HAL_ADC_CONVCYCLES_MAX_RANGE ADC_CONVCYCLES_MAX_RANGE -#define __HAL_ADC_CLOCK_PRESCALER_RANGE ADC_CLOCK_PRESCALER_RANGE -#define __HAL_ADC_GET_CLOCK_PRESCALER ADC_GET_CLOCK_PRESCALER - -#define __HAL_ADC_SQR1 ADC_SQR1 -#define __HAL_ADC_SMPR1 ADC_SMPR1 -#define __HAL_ADC_SMPR2 ADC_SMPR2 -#define __HAL_ADC_SQR3_RK ADC_SQR3_RK -#define __HAL_ADC_SQR2_RK ADC_SQR2_RK -#define __HAL_ADC_SQR1_RK ADC_SQR1_RK -#define __HAL_ADC_CR2_CONTINUOUS ADC_CR2_CONTINUOUS -#define __HAL_ADC_CR1_DISCONTINUOUS ADC_CR1_DISCONTINUOUS -#define __HAL_ADC_CR1_SCANCONV ADC_CR1_SCANCONV -#define __HAL_ADC_CR2_EOCSelection ADC_CR2_EOCSelection -#define __HAL_ADC_CR2_DMAContReq ADC_CR2_DMAContReq -#define __HAL_ADC_JSQR ADC_JSQR - -#define __HAL_ADC_CHSELR_CHANNEL ADC_CHSELR_CHANNEL -#define __HAL_ADC_CFGR1_REG_DISCCONTINUOUS ADC_CFGR1_REG_DISCCONTINUOUS -#define __HAL_ADC_CFGR1_AUTOOFF ADC_CFGR1_AUTOOFF -#define __HAL_ADC_CFGR1_AUTOWAIT ADC_CFGR1_AUTOWAIT -#define __HAL_ADC_CFGR1_CONTINUOUS ADC_CFGR1_CONTINUOUS -#define __HAL_ADC_CFGR1_OVERRUN ADC_CFGR1_OVERRUN -#define __HAL_ADC_CFGR1_SCANDIR ADC_CFGR1_SCANDIR -#define __HAL_ADC_CFGR1_DMACONTREQ ADC_CFGR1_DMACONTREQ - -/** - * @} - */ - -/** @defgroup HAL_DAC_Aliased_Macros HAL DAC Aliased Macros maintained for legacy purpose - * @{ - */ -#define __HAL_DHR12R1_ALIGNEMENT DAC_DHR12R1_ALIGNMENT -#define __HAL_DHR12R2_ALIGNEMENT DAC_DHR12R2_ALIGNMENT -#define __HAL_DHR12RD_ALIGNEMENT DAC_DHR12RD_ALIGNMENT -#define IS_DAC_GENERATE_WAVE IS_DAC_WAVE - -/** - * @} - */ - -/** @defgroup HAL_DBGMCU_Aliased_Macros HAL DBGMCU Aliased Macros maintained for legacy purpose - * @{ - */ -#define __HAL_FREEZE_TIM1_DBGMCU __HAL_DBGMCU_FREEZE_TIM1 -#define __HAL_UNFREEZE_TIM1_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM1 -#define __HAL_FREEZE_TIM2_DBGMCU __HAL_DBGMCU_FREEZE_TIM2 -#define __HAL_UNFREEZE_TIM2_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM2 -#define __HAL_FREEZE_TIM3_DBGMCU __HAL_DBGMCU_FREEZE_TIM3 -#define __HAL_UNFREEZE_TIM3_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM3 -#define __HAL_FREEZE_TIM4_DBGMCU __HAL_DBGMCU_FREEZE_TIM4 -#define __HAL_UNFREEZE_TIM4_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM4 -#define __HAL_FREEZE_TIM5_DBGMCU __HAL_DBGMCU_FREEZE_TIM5 -#define __HAL_UNFREEZE_TIM5_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM5 -#define __HAL_FREEZE_TIM6_DBGMCU __HAL_DBGMCU_FREEZE_TIM6 -#define __HAL_UNFREEZE_TIM6_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM6 -#define __HAL_FREEZE_TIM7_DBGMCU __HAL_DBGMCU_FREEZE_TIM7 -#define __HAL_UNFREEZE_TIM7_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM7 -#define __HAL_FREEZE_TIM8_DBGMCU __HAL_DBGMCU_FREEZE_TIM8 -#define __HAL_UNFREEZE_TIM8_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM8 - -#define __HAL_FREEZE_TIM9_DBGMCU __HAL_DBGMCU_FREEZE_TIM9 -#define __HAL_UNFREEZE_TIM9_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM9 -#define __HAL_FREEZE_TIM10_DBGMCU __HAL_DBGMCU_FREEZE_TIM10 -#define __HAL_UNFREEZE_TIM10_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM10 -#define __HAL_FREEZE_TIM11_DBGMCU __HAL_DBGMCU_FREEZE_TIM11 -#define __HAL_UNFREEZE_TIM11_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM11 -#define __HAL_FREEZE_TIM12_DBGMCU __HAL_DBGMCU_FREEZE_TIM12 -#define __HAL_UNFREEZE_TIM12_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM12 -#define __HAL_FREEZE_TIM13_DBGMCU __HAL_DBGMCU_FREEZE_TIM13 -#define __HAL_UNFREEZE_TIM13_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM13 -#define __HAL_FREEZE_TIM14_DBGMCU __HAL_DBGMCU_FREEZE_TIM14 -#define __HAL_UNFREEZE_TIM14_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM14 -#define __HAL_FREEZE_CAN2_DBGMCU __HAL_DBGMCU_FREEZE_CAN2 -#define __HAL_UNFREEZE_CAN2_DBGMCU __HAL_DBGMCU_UNFREEZE_CAN2 - - -#define __HAL_FREEZE_TIM15_DBGMCU __HAL_DBGMCU_FREEZE_TIM15 -#define __HAL_UNFREEZE_TIM15_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM15 -#define __HAL_FREEZE_TIM16_DBGMCU __HAL_DBGMCU_FREEZE_TIM16 -#define __HAL_UNFREEZE_TIM16_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM16 -#define __HAL_FREEZE_TIM17_DBGMCU __HAL_DBGMCU_FREEZE_TIM17 -#define __HAL_UNFREEZE_TIM17_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM17 -#define __HAL_FREEZE_RTC_DBGMCU __HAL_DBGMCU_FREEZE_RTC -#define __HAL_UNFREEZE_RTC_DBGMCU __HAL_DBGMCU_UNFREEZE_RTC -#if defined(STM32H7) - #define __HAL_FREEZE_WWDG_DBGMCU __HAL_DBGMCU_FREEZE_WWDG1 - #define __HAL_UNFREEZE_WWDG_DBGMCU __HAL_DBGMCU_UnFreeze_WWDG1 - #define __HAL_FREEZE_IWDG_DBGMCU __HAL_DBGMCU_FREEZE_IWDG1 - #define __HAL_UNFREEZE_IWDG_DBGMCU __HAL_DBGMCU_UnFreeze_IWDG1 -#else - #define __HAL_FREEZE_WWDG_DBGMCU __HAL_DBGMCU_FREEZE_WWDG - #define __HAL_UNFREEZE_WWDG_DBGMCU __HAL_DBGMCU_UNFREEZE_WWDG - #define __HAL_FREEZE_IWDG_DBGMCU __HAL_DBGMCU_FREEZE_IWDG - #define __HAL_UNFREEZE_IWDG_DBGMCU __HAL_DBGMCU_UNFREEZE_IWDG -#endif /* STM32H7 */ -#define __HAL_FREEZE_I2C1_TIMEOUT_DBGMCU __HAL_DBGMCU_FREEZE_I2C1_TIMEOUT -#define __HAL_UNFREEZE_I2C1_TIMEOUT_DBGMCU __HAL_DBGMCU_UNFREEZE_I2C1_TIMEOUT -#define __HAL_FREEZE_I2C2_TIMEOUT_DBGMCU __HAL_DBGMCU_FREEZE_I2C2_TIMEOUT -#define __HAL_UNFREEZE_I2C2_TIMEOUT_DBGMCU __HAL_DBGMCU_UNFREEZE_I2C2_TIMEOUT -#define __HAL_FREEZE_I2C3_TIMEOUT_DBGMCU __HAL_DBGMCU_FREEZE_I2C3_TIMEOUT -#define __HAL_UNFREEZE_I2C3_TIMEOUT_DBGMCU __HAL_DBGMCU_UNFREEZE_I2C3_TIMEOUT -#define __HAL_FREEZE_CAN1_DBGMCU __HAL_DBGMCU_FREEZE_CAN1 -#define __HAL_UNFREEZE_CAN1_DBGMCU __HAL_DBGMCU_UNFREEZE_CAN1 -#define __HAL_FREEZE_LPTIM1_DBGMCU __HAL_DBGMCU_FREEZE_LPTIM1 -#define __HAL_UNFREEZE_LPTIM1_DBGMCU __HAL_DBGMCU_UNFREEZE_LPTIM1 -#define __HAL_FREEZE_LPTIM2_DBGMCU __HAL_DBGMCU_FREEZE_LPTIM2 -#define __HAL_UNFREEZE_LPTIM2_DBGMCU __HAL_DBGMCU_UNFREEZE_LPTIM2 - -/** - * @} - */ - -/** @defgroup HAL_COMP_Aliased_Macros HAL COMP Aliased Macros maintained for legacy purpose - * @{ - */ -#if defined(STM32F3) -#define COMP_START __HAL_COMP_ENABLE -#define COMP_STOP __HAL_COMP_DISABLE -#define COMP_LOCK __HAL_COMP_LOCK - -#if defined(STM32F301x8) || defined(STM32F302x8) || defined(STM32F318xx) || defined(STM32F303x8) || defined(STM32F334x8) || defined(STM32F328xx) -#define __HAL_COMP_EXTI_RISING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_RISING_EDGE() : \ - __HAL_COMP_COMP6_EXTI_ENABLE_RISING_EDGE()) -#define __HAL_COMP_EXTI_RISING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_RISING_EDGE() : \ - __HAL_COMP_COMP6_EXTI_DISABLE_RISING_EDGE()) -#define __HAL_COMP_EXTI_FALLING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_FALLING_EDGE() : \ - __HAL_COMP_COMP6_EXTI_ENABLE_FALLING_EDGE()) -#define __HAL_COMP_EXTI_FALLING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_FALLING_EDGE() : \ - __HAL_COMP_COMP6_EXTI_DISABLE_FALLING_EDGE()) -#define __HAL_COMP_EXTI_ENABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_IT() : \ - __HAL_COMP_COMP6_EXTI_ENABLE_IT()) -#define __HAL_COMP_EXTI_DISABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_IT() : \ - __HAL_COMP_COMP6_EXTI_DISABLE_IT()) -#define __HAL_COMP_EXTI_GET_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_GET_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_GET_FLAG() : \ - __HAL_COMP_COMP6_EXTI_GET_FLAG()) -#define __HAL_COMP_EXTI_CLEAR_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_CLEAR_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_CLEAR_FLAG() : \ - __HAL_COMP_COMP6_EXTI_CLEAR_FLAG()) -# endif -# if defined(STM32F302xE) || defined(STM32F302xC) -#define __HAL_COMP_EXTI_RISING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_RISING_EDGE() : \ - __HAL_COMP_COMP6_EXTI_ENABLE_RISING_EDGE()) -#define __HAL_COMP_EXTI_RISING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_RISING_EDGE() : \ - __HAL_COMP_COMP6_EXTI_DISABLE_RISING_EDGE()) -#define __HAL_COMP_EXTI_FALLING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_FALLING_EDGE() : \ - __HAL_COMP_COMP6_EXTI_ENABLE_FALLING_EDGE()) -#define __HAL_COMP_EXTI_FALLING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_FALLING_EDGE() : \ - __HAL_COMP_COMP6_EXTI_DISABLE_FALLING_EDGE()) -#define __HAL_COMP_EXTI_ENABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_IT() : \ - __HAL_COMP_COMP6_EXTI_ENABLE_IT()) -#define __HAL_COMP_EXTI_DISABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_IT() : \ - __HAL_COMP_COMP6_EXTI_DISABLE_IT()) -#define __HAL_COMP_EXTI_GET_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_GET_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_GET_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_GET_FLAG() : \ - __HAL_COMP_COMP6_EXTI_GET_FLAG()) -#define __HAL_COMP_EXTI_CLEAR_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_CLEAR_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_CLEAR_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_CLEAR_FLAG() : \ - __HAL_COMP_COMP6_EXTI_CLEAR_FLAG()) -# endif -# if defined(STM32F303xE) || defined(STM32F398xx) || defined(STM32F303xC) || defined(STM32F358xx) -#define __HAL_COMP_EXTI_RISING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_ENABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_ENABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_ENABLE_RISING_EDGE() : \ - __HAL_COMP_COMP7_EXTI_ENABLE_RISING_EDGE()) -#define __HAL_COMP_EXTI_RISING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_DISABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_DISABLE_RISING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_DISABLE_RISING_EDGE() : \ - __HAL_COMP_COMP7_EXTI_DISABLE_RISING_EDGE()) -#define __HAL_COMP_EXTI_FALLING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_ENABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_ENABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_ENABLE_FALLING_EDGE() : \ - __HAL_COMP_COMP7_EXTI_ENABLE_FALLING_EDGE()) -#define __HAL_COMP_EXTI_FALLING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_DISABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_DISABLE_FALLING_EDGE() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_DISABLE_FALLING_EDGE() : \ - __HAL_COMP_COMP7_EXTI_DISABLE_FALLING_EDGE()) -#define __HAL_COMP_EXTI_ENABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_ENABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_ENABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_ENABLE_IT() : \ - __HAL_COMP_COMP7_EXTI_ENABLE_IT()) -#define __HAL_COMP_EXTI_DISABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_DISABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_DISABLE_IT() : \ - ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_DISABLE_IT() : \ - __HAL_COMP_COMP7_EXTI_DISABLE_IT()) -#define __HAL_COMP_EXTI_GET_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_GET_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_GET_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_GET_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_GET_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_GET_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_GET_FLAG() : \ - __HAL_COMP_COMP7_EXTI_GET_FLAG()) -#define __HAL_COMP_EXTI_CLEAR_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_CLEAR_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_CLEAR_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_CLEAR_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_CLEAR_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_CLEAR_FLAG() : \ - ((__FLAG__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_CLEAR_FLAG() : \ - __HAL_COMP_COMP7_EXTI_CLEAR_FLAG()) -# endif -# if defined(STM32F373xC) ||defined(STM32F378xx) -#define __HAL_COMP_EXTI_RISING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_RISING_EDGE() : \ - __HAL_COMP_COMP2_EXTI_ENABLE_RISING_EDGE()) -#define __HAL_COMP_EXTI_RISING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_RISING_EDGE() : \ - __HAL_COMP_COMP2_EXTI_DISABLE_RISING_EDGE()) -#define __HAL_COMP_EXTI_FALLING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_FALLING_EDGE() : \ - __HAL_COMP_COMP2_EXTI_ENABLE_FALLING_EDGE()) -#define __HAL_COMP_EXTI_FALLING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_FALLING_EDGE() : \ - __HAL_COMP_COMP2_EXTI_DISABLE_FALLING_EDGE()) -#define __HAL_COMP_EXTI_ENABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_IT() : \ - __HAL_COMP_COMP2_EXTI_ENABLE_IT()) -#define __HAL_COMP_EXTI_DISABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_IT() : \ - __HAL_COMP_COMP2_EXTI_DISABLE_IT()) -#define __HAL_COMP_EXTI_GET_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_GET_FLAG() : \ - __HAL_COMP_COMP2_EXTI_GET_FLAG()) -#define __HAL_COMP_EXTI_CLEAR_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_CLEAR_FLAG() : \ - __HAL_COMP_COMP2_EXTI_CLEAR_FLAG()) -# endif -#else -#define __HAL_COMP_EXTI_RISING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_RISING_EDGE() : \ - __HAL_COMP_COMP2_EXTI_ENABLE_RISING_EDGE()) -#define __HAL_COMP_EXTI_RISING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_RISING_EDGE() : \ - __HAL_COMP_COMP2_EXTI_DISABLE_RISING_EDGE()) -#define __HAL_COMP_EXTI_FALLING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_FALLING_EDGE() : \ - __HAL_COMP_COMP2_EXTI_ENABLE_FALLING_EDGE()) -#define __HAL_COMP_EXTI_FALLING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_FALLING_EDGE() : \ - __HAL_COMP_COMP2_EXTI_DISABLE_FALLING_EDGE()) -#define __HAL_COMP_EXTI_ENABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_IT() : \ - __HAL_COMP_COMP2_EXTI_ENABLE_IT()) -#define __HAL_COMP_EXTI_DISABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_IT() : \ - __HAL_COMP_COMP2_EXTI_DISABLE_IT()) -#define __HAL_COMP_EXTI_GET_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_GET_FLAG() : \ - __HAL_COMP_COMP2_EXTI_GET_FLAG()) -#define __HAL_COMP_EXTI_CLEAR_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_CLEAR_FLAG() : \ - __HAL_COMP_COMP2_EXTI_CLEAR_FLAG()) -#endif - -#define __HAL_COMP_GET_EXTI_LINE COMP_GET_EXTI_LINE - -#if defined(STM32L0) || defined(STM32L4) -/* Note: On these STM32 families, the only argument of this macro */ -/* is COMP_FLAG_LOCK. */ -/* This macro is replaced by __HAL_COMP_IS_LOCKED with only HAL handle */ -/* argument. */ -#define __HAL_COMP_GET_FLAG(__HANDLE__, __FLAG__) (__HAL_COMP_IS_LOCKED(__HANDLE__)) -#endif -/** - * @} - */ - -#if defined(STM32L0) || defined(STM32L4) -/** @defgroup HAL_COMP_Aliased_Functions HAL COMP Aliased Functions maintained for legacy purpose - * @{ - */ -#define HAL_COMP_Start_IT HAL_COMP_Start /* Function considered as legacy as EXTI event or IT configuration is done into HAL_COMP_Init() */ -#define HAL_COMP_Stop_IT HAL_COMP_Stop /* Function considered as legacy as EXTI event or IT configuration is done into HAL_COMP_Init() */ -/** - * @} - */ -#endif - -/** @defgroup HAL_DAC_Aliased_Macros HAL DAC Aliased Macros maintained for legacy purpose - * @{ - */ - -#define IS_DAC_WAVE(WAVE) (((WAVE) == DAC_WAVE_NONE) || \ - ((WAVE) == DAC_WAVE_NOISE)|| \ - ((WAVE) == DAC_WAVE_TRIANGLE)) - -/** - * @} - */ - -/** @defgroup HAL_FLASH_Aliased_Macros HAL FLASH Aliased Macros maintained for legacy purpose - * @{ - */ - -#define IS_WRPAREA IS_OB_WRPAREA -#define IS_TYPEPROGRAM IS_FLASH_TYPEPROGRAM -#define IS_TYPEPROGRAMFLASH IS_FLASH_TYPEPROGRAM -#define IS_TYPEERASE IS_FLASH_TYPEERASE -#define IS_NBSECTORS IS_FLASH_NBSECTORS -#define IS_OB_WDG_SOURCE IS_OB_IWDG_SOURCE - -/** - * @} - */ - -/** @defgroup HAL_I2C_Aliased_Macros HAL I2C Aliased Macros maintained for legacy purpose - * @{ - */ - -#define __HAL_I2C_RESET_CR2 I2C_RESET_CR2 -#define __HAL_I2C_GENERATE_START I2C_GENERATE_START -#if defined(STM32F1) -#define __HAL_I2C_FREQ_RANGE I2C_FREQRANGE -#else -#define __HAL_I2C_FREQ_RANGE I2C_FREQ_RANGE -#endif /* STM32F1 */ -#define __HAL_I2C_RISE_TIME I2C_RISE_TIME -#define __HAL_I2C_SPEED_STANDARD I2C_SPEED_STANDARD -#define __HAL_I2C_SPEED_FAST I2C_SPEED_FAST -#define __HAL_I2C_SPEED I2C_SPEED -#define __HAL_I2C_7BIT_ADD_WRITE I2C_7BIT_ADD_WRITE -#define __HAL_I2C_7BIT_ADD_READ I2C_7BIT_ADD_READ -#define __HAL_I2C_10BIT_ADDRESS I2C_10BIT_ADDRESS -#define __HAL_I2C_10BIT_HEADER_WRITE I2C_10BIT_HEADER_WRITE -#define __HAL_I2C_10BIT_HEADER_READ I2C_10BIT_HEADER_READ -#define __HAL_I2C_MEM_ADD_MSB I2C_MEM_ADD_MSB -#define __HAL_I2C_MEM_ADD_LSB I2C_MEM_ADD_LSB -#define __HAL_I2C_FREQRANGE I2C_FREQRANGE -/** - * @} - */ - -/** @defgroup HAL_I2S_Aliased_Macros HAL I2S Aliased Macros maintained for legacy purpose - * @{ - */ - -#define IS_I2S_INSTANCE IS_I2S_ALL_INSTANCE -#define IS_I2S_INSTANCE_EXT IS_I2S_ALL_INSTANCE_EXT - -#if defined(STM32H7) - #define __HAL_I2S_CLEAR_FREFLAG __HAL_I2S_CLEAR_TIFREFLAG -#endif - -/** - * @} - */ - -/** @defgroup HAL_IRDA_Aliased_Macros HAL IRDA Aliased Macros maintained for legacy purpose - * @{ - */ - -#define __IRDA_DISABLE __HAL_IRDA_DISABLE -#define __IRDA_ENABLE __HAL_IRDA_ENABLE - -#define __HAL_IRDA_GETCLOCKSOURCE IRDA_GETCLOCKSOURCE -#define __HAL_IRDA_MASK_COMPUTATION IRDA_MASK_COMPUTATION -#define __IRDA_GETCLOCKSOURCE IRDA_GETCLOCKSOURCE -#define __IRDA_MASK_COMPUTATION IRDA_MASK_COMPUTATION - -#define IS_IRDA_ONEBIT_SAMPLE IS_IRDA_ONE_BIT_SAMPLE - - -/** - * @} - */ - - -/** @defgroup HAL_IWDG_Aliased_Macros HAL IWDG Aliased Macros maintained for legacy purpose - * @{ - */ -#define __HAL_IWDG_ENABLE_WRITE_ACCESS IWDG_ENABLE_WRITE_ACCESS -#define __HAL_IWDG_DISABLE_WRITE_ACCESS IWDG_DISABLE_WRITE_ACCESS -/** - * @} - */ - - -/** @defgroup HAL_LPTIM_Aliased_Macros HAL LPTIM Aliased Macros maintained for legacy purpose - * @{ - */ - -#define __HAL_LPTIM_ENABLE_INTERRUPT __HAL_LPTIM_ENABLE_IT -#define __HAL_LPTIM_DISABLE_INTERRUPT __HAL_LPTIM_DISABLE_IT -#define __HAL_LPTIM_GET_ITSTATUS __HAL_LPTIM_GET_IT_SOURCE - -/** - * @} - */ - - -/** @defgroup HAL_OPAMP_Aliased_Macros HAL OPAMP Aliased Macros maintained for legacy purpose - * @{ - */ -#define __OPAMP_CSR_OPAXPD OPAMP_CSR_OPAXPD -#define __OPAMP_CSR_S3SELX OPAMP_CSR_S3SELX -#define __OPAMP_CSR_S4SELX OPAMP_CSR_S4SELX -#define __OPAMP_CSR_S5SELX OPAMP_CSR_S5SELX -#define __OPAMP_CSR_S6SELX OPAMP_CSR_S6SELX -#define __OPAMP_CSR_OPAXCAL_L OPAMP_CSR_OPAXCAL_L -#define __OPAMP_CSR_OPAXCAL_H OPAMP_CSR_OPAXCAL_H -#define __OPAMP_CSR_OPAXLPM OPAMP_CSR_OPAXLPM -#define __OPAMP_CSR_ALL_SWITCHES OPAMP_CSR_ALL_SWITCHES -#define __OPAMP_CSR_ANAWSELX OPAMP_CSR_ANAWSELX -#define __OPAMP_CSR_OPAXCALOUT OPAMP_CSR_OPAXCALOUT -#define __OPAMP_OFFSET_TRIM_BITSPOSITION OPAMP_OFFSET_TRIM_BITSPOSITION -#define __OPAMP_OFFSET_TRIM_SET OPAMP_OFFSET_TRIM_SET - -/** - * @} - */ - - -/** @defgroup HAL_PWR_Aliased_Macros HAL PWR Aliased Macros maintained for legacy purpose - * @{ - */ -#define __HAL_PVD_EVENT_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_EVENT -#define __HAL_PVD_EVENT_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_EVENT -#define __HAL_PVD_EXTI_FALLINGTRIGGER_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE -#define __HAL_PVD_EXTI_FALLINGTRIGGER_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE -#define __HAL_PVD_EXTI_RISINGTRIGGER_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE -#define __HAL_PVD_EXTI_RISINGTRIGGER_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE -#define __HAL_PVM_EVENT_DISABLE __HAL_PWR_PVM_EVENT_DISABLE -#define __HAL_PVM_EVENT_ENABLE __HAL_PWR_PVM_EVENT_ENABLE -#define __HAL_PVM_EXTI_FALLINGTRIGGER_DISABLE __HAL_PWR_PVM_EXTI_FALLINGTRIGGER_DISABLE -#define __HAL_PVM_EXTI_FALLINGTRIGGER_ENABLE __HAL_PWR_PVM_EXTI_FALLINGTRIGGER_ENABLE -#define __HAL_PVM_EXTI_RISINGTRIGGER_DISABLE __HAL_PWR_PVM_EXTI_RISINGTRIGGER_DISABLE -#define __HAL_PVM_EXTI_RISINGTRIGGER_ENABLE __HAL_PWR_PVM_EXTI_RISINGTRIGGER_ENABLE -#define __HAL_PWR_INTERNALWAKEUP_DISABLE HAL_PWREx_DisableInternalWakeUpLine -#define __HAL_PWR_INTERNALWAKEUP_ENABLE HAL_PWREx_EnableInternalWakeUpLine -#define __HAL_PWR_PULL_UP_DOWN_CONFIG_DISABLE HAL_PWREx_DisablePullUpPullDownConfig -#define __HAL_PWR_PULL_UP_DOWN_CONFIG_ENABLE HAL_PWREx_EnablePullUpPullDownConfig -#define __HAL_PWR_PVD_EXTI_CLEAR_EGDE_TRIGGER() do { __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE();__HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE(); } while(0) -#define __HAL_PWR_PVD_EXTI_EVENT_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_EVENT -#define __HAL_PWR_PVD_EXTI_EVENT_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_EVENT -#define __HAL_PWR_PVD_EXTI_FALLINGTRIGGER_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE -#define __HAL_PWR_PVD_EXTI_FALLINGTRIGGER_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE -#define __HAL_PWR_PVD_EXTI_RISINGTRIGGER_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE -#define __HAL_PWR_PVD_EXTI_RISINGTRIGGER_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE -#define __HAL_PWR_PVD_EXTI_SET_FALLING_EGDE_TRIGGER __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE -#define __HAL_PWR_PVD_EXTI_SET_RISING_EDGE_TRIGGER __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE -#define __HAL_PWR_PVM_DISABLE() do { HAL_PWREx_DisablePVM1();HAL_PWREx_DisablePVM2();HAL_PWREx_DisablePVM3();HAL_PWREx_DisablePVM4(); } while(0) -#define __HAL_PWR_PVM_ENABLE() do { HAL_PWREx_EnablePVM1();HAL_PWREx_EnablePVM2();HAL_PWREx_EnablePVM3();HAL_PWREx_EnablePVM4(); } while(0) -#define __HAL_PWR_SRAM2CONTENT_PRESERVE_DISABLE HAL_PWREx_DisableSRAM2ContentRetention -#define __HAL_PWR_SRAM2CONTENT_PRESERVE_ENABLE HAL_PWREx_EnableSRAM2ContentRetention -#define __HAL_PWR_VDDIO2_DISABLE HAL_PWREx_DisableVddIO2 -#define __HAL_PWR_VDDIO2_ENABLE HAL_PWREx_EnableVddIO2 -#define __HAL_PWR_VDDIO2_EXTI_CLEAR_EGDE_TRIGGER __HAL_PWR_VDDIO2_EXTI_DISABLE_FALLING_EDGE -#define __HAL_PWR_VDDIO2_EXTI_SET_FALLING_EGDE_TRIGGER __HAL_PWR_VDDIO2_EXTI_ENABLE_FALLING_EDGE -#define __HAL_PWR_VDDUSB_DISABLE HAL_PWREx_DisableVddUSB -#define __HAL_PWR_VDDUSB_ENABLE HAL_PWREx_EnableVddUSB - -#if defined (STM32F4) -#define __HAL_PVD_EXTI_ENABLE_IT(PWR_EXTI_LINE_PVD) __HAL_PWR_PVD_EXTI_ENABLE_IT() -#define __HAL_PVD_EXTI_DISABLE_IT(PWR_EXTI_LINE_PVD) __HAL_PWR_PVD_EXTI_DISABLE_IT() -#define __HAL_PVD_EXTI_GET_FLAG(PWR_EXTI_LINE_PVD) __HAL_PWR_PVD_EXTI_GET_FLAG() -#define __HAL_PVD_EXTI_CLEAR_FLAG(PWR_EXTI_LINE_PVD) __HAL_PWR_PVD_EXTI_CLEAR_FLAG() -#define __HAL_PVD_EXTI_GENERATE_SWIT(PWR_EXTI_LINE_PVD) __HAL_PWR_PVD_EXTI_GENERATE_SWIT() -#else -#define __HAL_PVD_EXTI_CLEAR_FLAG __HAL_PWR_PVD_EXTI_CLEAR_FLAG -#define __HAL_PVD_EXTI_DISABLE_IT __HAL_PWR_PVD_EXTI_DISABLE_IT -#define __HAL_PVD_EXTI_ENABLE_IT __HAL_PWR_PVD_EXTI_ENABLE_IT -#define __HAL_PVD_EXTI_GENERATE_SWIT __HAL_PWR_PVD_EXTI_GENERATE_SWIT -#define __HAL_PVD_EXTI_GET_FLAG __HAL_PWR_PVD_EXTI_GET_FLAG -#endif /* STM32F4 */ -/** - * @} - */ - - -/** @defgroup HAL_RCC_Aliased HAL RCC Aliased maintained for legacy purpose - * @{ - */ - -#define RCC_StopWakeUpClock_MSI RCC_STOP_WAKEUPCLOCK_MSI -#define RCC_StopWakeUpClock_HSI RCC_STOP_WAKEUPCLOCK_HSI - -#define HAL_RCC_CCSCallback HAL_RCC_CSSCallback -#define HAL_RC48_EnableBuffer_Cmd(cmd) (((cmd)==ENABLE) ? HAL_RCCEx_EnableHSI48_VREFINT() : HAL_RCCEx_DisableHSI48_VREFINT()) - -#define __ADC_CLK_DISABLE __HAL_RCC_ADC_CLK_DISABLE -#define __ADC_CLK_ENABLE __HAL_RCC_ADC_CLK_ENABLE -#define __ADC_CLK_SLEEP_DISABLE __HAL_RCC_ADC_CLK_SLEEP_DISABLE -#define __ADC_CLK_SLEEP_ENABLE __HAL_RCC_ADC_CLK_SLEEP_ENABLE -#define __ADC_FORCE_RESET __HAL_RCC_ADC_FORCE_RESET -#define __ADC_RELEASE_RESET __HAL_RCC_ADC_RELEASE_RESET -#define __ADC1_CLK_DISABLE __HAL_RCC_ADC1_CLK_DISABLE -#define __ADC1_CLK_ENABLE __HAL_RCC_ADC1_CLK_ENABLE -#define __ADC1_FORCE_RESET __HAL_RCC_ADC1_FORCE_RESET -#define __ADC1_RELEASE_RESET __HAL_RCC_ADC1_RELEASE_RESET -#define __ADC1_CLK_SLEEP_ENABLE __HAL_RCC_ADC1_CLK_SLEEP_ENABLE -#define __ADC1_CLK_SLEEP_DISABLE __HAL_RCC_ADC1_CLK_SLEEP_DISABLE -#define __ADC2_CLK_DISABLE __HAL_RCC_ADC2_CLK_DISABLE -#define __ADC2_CLK_ENABLE __HAL_RCC_ADC2_CLK_ENABLE -#define __ADC2_FORCE_RESET __HAL_RCC_ADC2_FORCE_RESET -#define __ADC2_RELEASE_RESET __HAL_RCC_ADC2_RELEASE_RESET -#define __ADC3_CLK_DISABLE __HAL_RCC_ADC3_CLK_DISABLE -#define __ADC3_CLK_ENABLE __HAL_RCC_ADC3_CLK_ENABLE -#define __ADC3_FORCE_RESET __HAL_RCC_ADC3_FORCE_RESET -#define __ADC3_RELEASE_RESET __HAL_RCC_ADC3_RELEASE_RESET -#define __AES_CLK_DISABLE __HAL_RCC_AES_CLK_DISABLE -#define __AES_CLK_ENABLE __HAL_RCC_AES_CLK_ENABLE -#define __AES_CLK_SLEEP_DISABLE __HAL_RCC_AES_CLK_SLEEP_DISABLE -#define __AES_CLK_SLEEP_ENABLE __HAL_RCC_AES_CLK_SLEEP_ENABLE -#define __AES_FORCE_RESET __HAL_RCC_AES_FORCE_RESET -#define __AES_RELEASE_RESET __HAL_RCC_AES_RELEASE_RESET -#define __CRYP_CLK_SLEEP_ENABLE __HAL_RCC_CRYP_CLK_SLEEP_ENABLE -#define __CRYP_CLK_SLEEP_DISABLE __HAL_RCC_CRYP_CLK_SLEEP_DISABLE -#define __CRYP_CLK_ENABLE __HAL_RCC_CRYP_CLK_ENABLE -#define __CRYP_CLK_DISABLE __HAL_RCC_CRYP_CLK_DISABLE -#define __CRYP_FORCE_RESET __HAL_RCC_CRYP_FORCE_RESET -#define __CRYP_RELEASE_RESET __HAL_RCC_CRYP_RELEASE_RESET -#define __AFIO_CLK_DISABLE __HAL_RCC_AFIO_CLK_DISABLE -#define __AFIO_CLK_ENABLE __HAL_RCC_AFIO_CLK_ENABLE -#define __AFIO_FORCE_RESET __HAL_RCC_AFIO_FORCE_RESET -#define __AFIO_RELEASE_RESET __HAL_RCC_AFIO_RELEASE_RESET -#define __AHB_FORCE_RESET __HAL_RCC_AHB_FORCE_RESET -#define __AHB_RELEASE_RESET __HAL_RCC_AHB_RELEASE_RESET -#define __AHB1_FORCE_RESET __HAL_RCC_AHB1_FORCE_RESET -#define __AHB1_RELEASE_RESET __HAL_RCC_AHB1_RELEASE_RESET -#define __AHB2_FORCE_RESET __HAL_RCC_AHB2_FORCE_RESET -#define __AHB2_RELEASE_RESET __HAL_RCC_AHB2_RELEASE_RESET -#define __AHB3_FORCE_RESET __HAL_RCC_AHB3_FORCE_RESET -#define __AHB3_RELEASE_RESET __HAL_RCC_AHB3_RELEASE_RESET -#define __APB1_FORCE_RESET __HAL_RCC_APB1_FORCE_RESET -#define __APB1_RELEASE_RESET __HAL_RCC_APB1_RELEASE_RESET -#define __APB2_FORCE_RESET __HAL_RCC_APB2_FORCE_RESET -#define __APB2_RELEASE_RESET __HAL_RCC_APB2_RELEASE_RESET -#define __BKP_CLK_DISABLE __HAL_RCC_BKP_CLK_DISABLE -#define __BKP_CLK_ENABLE __HAL_RCC_BKP_CLK_ENABLE -#define __BKP_FORCE_RESET __HAL_RCC_BKP_FORCE_RESET -#define __BKP_RELEASE_RESET __HAL_RCC_BKP_RELEASE_RESET -#define __CAN1_CLK_DISABLE __HAL_RCC_CAN1_CLK_DISABLE -#define __CAN1_CLK_ENABLE __HAL_RCC_CAN1_CLK_ENABLE -#define __CAN1_CLK_SLEEP_DISABLE __HAL_RCC_CAN1_CLK_SLEEP_DISABLE -#define __CAN1_CLK_SLEEP_ENABLE __HAL_RCC_CAN1_CLK_SLEEP_ENABLE -#define __CAN1_FORCE_RESET __HAL_RCC_CAN1_FORCE_RESET -#define __CAN1_RELEASE_RESET __HAL_RCC_CAN1_RELEASE_RESET -#define __CAN_CLK_DISABLE __HAL_RCC_CAN1_CLK_DISABLE -#define __CAN_CLK_ENABLE __HAL_RCC_CAN1_CLK_ENABLE -#define __CAN_FORCE_RESET __HAL_RCC_CAN1_FORCE_RESET -#define __CAN_RELEASE_RESET __HAL_RCC_CAN1_RELEASE_RESET -#define __CAN2_CLK_DISABLE __HAL_RCC_CAN2_CLK_DISABLE -#define __CAN2_CLK_ENABLE __HAL_RCC_CAN2_CLK_ENABLE -#define __CAN2_FORCE_RESET __HAL_RCC_CAN2_FORCE_RESET -#define __CAN2_RELEASE_RESET __HAL_RCC_CAN2_RELEASE_RESET -#define __CEC_CLK_DISABLE __HAL_RCC_CEC_CLK_DISABLE -#define __CEC_CLK_ENABLE __HAL_RCC_CEC_CLK_ENABLE -#define __COMP_CLK_DISABLE __HAL_RCC_COMP_CLK_DISABLE -#define __COMP_CLK_ENABLE __HAL_RCC_COMP_CLK_ENABLE -#define __COMP_FORCE_RESET __HAL_RCC_COMP_FORCE_RESET -#define __COMP_RELEASE_RESET __HAL_RCC_COMP_RELEASE_RESET -#define __COMP_CLK_SLEEP_ENABLE __HAL_RCC_COMP_CLK_SLEEP_ENABLE -#define __COMP_CLK_SLEEP_DISABLE __HAL_RCC_COMP_CLK_SLEEP_DISABLE -#define __CEC_FORCE_RESET __HAL_RCC_CEC_FORCE_RESET -#define __CEC_RELEASE_RESET __HAL_RCC_CEC_RELEASE_RESET -#define __CRC_CLK_DISABLE __HAL_RCC_CRC_CLK_DISABLE -#define __CRC_CLK_ENABLE __HAL_RCC_CRC_CLK_ENABLE -#define __CRC_CLK_SLEEP_DISABLE __HAL_RCC_CRC_CLK_SLEEP_DISABLE -#define __CRC_CLK_SLEEP_ENABLE __HAL_RCC_CRC_CLK_SLEEP_ENABLE -#define __CRC_FORCE_RESET __HAL_RCC_CRC_FORCE_RESET -#define __CRC_RELEASE_RESET __HAL_RCC_CRC_RELEASE_RESET -#define __DAC_CLK_DISABLE __HAL_RCC_DAC_CLK_DISABLE -#define __DAC_CLK_ENABLE __HAL_RCC_DAC_CLK_ENABLE -#define __DAC_FORCE_RESET __HAL_RCC_DAC_FORCE_RESET -#define __DAC_RELEASE_RESET __HAL_RCC_DAC_RELEASE_RESET -#define __DAC1_CLK_DISABLE __HAL_RCC_DAC1_CLK_DISABLE -#define __DAC1_CLK_ENABLE __HAL_RCC_DAC1_CLK_ENABLE -#define __DAC1_CLK_SLEEP_DISABLE __HAL_RCC_DAC1_CLK_SLEEP_DISABLE -#define __DAC1_CLK_SLEEP_ENABLE __HAL_RCC_DAC1_CLK_SLEEP_ENABLE -#define __DAC1_FORCE_RESET __HAL_RCC_DAC1_FORCE_RESET -#define __DAC1_RELEASE_RESET __HAL_RCC_DAC1_RELEASE_RESET -#define __DBGMCU_CLK_ENABLE __HAL_RCC_DBGMCU_CLK_ENABLE -#define __DBGMCU_CLK_DISABLE __HAL_RCC_DBGMCU_CLK_DISABLE -#define __DBGMCU_FORCE_RESET __HAL_RCC_DBGMCU_FORCE_RESET -#define __DBGMCU_RELEASE_RESET __HAL_RCC_DBGMCU_RELEASE_RESET -#define __DFSDM_CLK_DISABLE __HAL_RCC_DFSDM_CLK_DISABLE -#define __DFSDM_CLK_ENABLE __HAL_RCC_DFSDM_CLK_ENABLE -#define __DFSDM_CLK_SLEEP_DISABLE __HAL_RCC_DFSDM_CLK_SLEEP_DISABLE -#define __DFSDM_CLK_SLEEP_ENABLE __HAL_RCC_DFSDM_CLK_SLEEP_ENABLE -#define __DFSDM_FORCE_RESET __HAL_RCC_DFSDM_FORCE_RESET -#define __DFSDM_RELEASE_RESET __HAL_RCC_DFSDM_RELEASE_RESET -#define __DMA1_CLK_DISABLE __HAL_RCC_DMA1_CLK_DISABLE -#define __DMA1_CLK_ENABLE __HAL_RCC_DMA1_CLK_ENABLE -#define __DMA1_CLK_SLEEP_DISABLE __HAL_RCC_DMA1_CLK_SLEEP_DISABLE -#define __DMA1_CLK_SLEEP_ENABLE __HAL_RCC_DMA1_CLK_SLEEP_ENABLE -#define __DMA1_FORCE_RESET __HAL_RCC_DMA1_FORCE_RESET -#define __DMA1_RELEASE_RESET __HAL_RCC_DMA1_RELEASE_RESET -#define __DMA2_CLK_DISABLE __HAL_RCC_DMA2_CLK_DISABLE -#define __DMA2_CLK_ENABLE __HAL_RCC_DMA2_CLK_ENABLE -#define __DMA2_CLK_SLEEP_DISABLE __HAL_RCC_DMA2_CLK_SLEEP_DISABLE -#define __DMA2_CLK_SLEEP_ENABLE __HAL_RCC_DMA2_CLK_SLEEP_ENABLE -#define __DMA2_FORCE_RESET __HAL_RCC_DMA2_FORCE_RESET -#define __DMA2_RELEASE_RESET __HAL_RCC_DMA2_RELEASE_RESET -#define __ETHMAC_CLK_DISABLE __HAL_RCC_ETHMAC_CLK_DISABLE -#define __ETHMAC_CLK_ENABLE __HAL_RCC_ETHMAC_CLK_ENABLE -#define __ETHMAC_FORCE_RESET __HAL_RCC_ETHMAC_FORCE_RESET -#define __ETHMAC_RELEASE_RESET __HAL_RCC_ETHMAC_RELEASE_RESET -#define __ETHMACRX_CLK_DISABLE __HAL_RCC_ETHMACRX_CLK_DISABLE -#define __ETHMACRX_CLK_ENABLE __HAL_RCC_ETHMACRX_CLK_ENABLE -#define __ETHMACTX_CLK_DISABLE __HAL_RCC_ETHMACTX_CLK_DISABLE -#define __ETHMACTX_CLK_ENABLE __HAL_RCC_ETHMACTX_CLK_ENABLE -#define __FIREWALL_CLK_DISABLE __HAL_RCC_FIREWALL_CLK_DISABLE -#define __FIREWALL_CLK_ENABLE __HAL_RCC_FIREWALL_CLK_ENABLE -#define __FLASH_CLK_DISABLE __HAL_RCC_FLASH_CLK_DISABLE -#define __FLASH_CLK_ENABLE __HAL_RCC_FLASH_CLK_ENABLE -#define __FLASH_CLK_SLEEP_DISABLE __HAL_RCC_FLASH_CLK_SLEEP_DISABLE -#define __FLASH_CLK_SLEEP_ENABLE __HAL_RCC_FLASH_CLK_SLEEP_ENABLE -#define __FLASH_FORCE_RESET __HAL_RCC_FLASH_FORCE_RESET -#define __FLASH_RELEASE_RESET __HAL_RCC_FLASH_RELEASE_RESET -#define __FLITF_CLK_DISABLE __HAL_RCC_FLITF_CLK_DISABLE -#define __FLITF_CLK_ENABLE __HAL_RCC_FLITF_CLK_ENABLE -#define __FLITF_FORCE_RESET __HAL_RCC_FLITF_FORCE_RESET -#define __FLITF_RELEASE_RESET __HAL_RCC_FLITF_RELEASE_RESET -#define __FLITF_CLK_SLEEP_ENABLE __HAL_RCC_FLITF_CLK_SLEEP_ENABLE -#define __FLITF_CLK_SLEEP_DISABLE __HAL_RCC_FLITF_CLK_SLEEP_DISABLE -#define __FMC_CLK_DISABLE __HAL_RCC_FMC_CLK_DISABLE -#define __FMC_CLK_ENABLE __HAL_RCC_FMC_CLK_ENABLE -#define __FMC_CLK_SLEEP_DISABLE __HAL_RCC_FMC_CLK_SLEEP_DISABLE -#define __FMC_CLK_SLEEP_ENABLE __HAL_RCC_FMC_CLK_SLEEP_ENABLE -#define __FMC_FORCE_RESET __HAL_RCC_FMC_FORCE_RESET -#define __FMC_RELEASE_RESET __HAL_RCC_FMC_RELEASE_RESET -#define __FSMC_CLK_DISABLE __HAL_RCC_FSMC_CLK_DISABLE -#define __FSMC_CLK_ENABLE __HAL_RCC_FSMC_CLK_ENABLE -#define __GPIOA_CLK_DISABLE __HAL_RCC_GPIOA_CLK_DISABLE -#define __GPIOA_CLK_ENABLE __HAL_RCC_GPIOA_CLK_ENABLE -#define __GPIOA_CLK_SLEEP_DISABLE __HAL_RCC_GPIOA_CLK_SLEEP_DISABLE -#define __GPIOA_CLK_SLEEP_ENABLE __HAL_RCC_GPIOA_CLK_SLEEP_ENABLE -#define __GPIOA_FORCE_RESET __HAL_RCC_GPIOA_FORCE_RESET -#define __GPIOA_RELEASE_RESET __HAL_RCC_GPIOA_RELEASE_RESET -#define __GPIOB_CLK_DISABLE __HAL_RCC_GPIOB_CLK_DISABLE -#define __GPIOB_CLK_ENABLE __HAL_RCC_GPIOB_CLK_ENABLE -#define __GPIOB_CLK_SLEEP_DISABLE __HAL_RCC_GPIOB_CLK_SLEEP_DISABLE -#define __GPIOB_CLK_SLEEP_ENABLE __HAL_RCC_GPIOB_CLK_SLEEP_ENABLE -#define __GPIOB_FORCE_RESET __HAL_RCC_GPIOB_FORCE_RESET -#define __GPIOB_RELEASE_RESET __HAL_RCC_GPIOB_RELEASE_RESET -#define __GPIOC_CLK_DISABLE __HAL_RCC_GPIOC_CLK_DISABLE -#define __GPIOC_CLK_ENABLE __HAL_RCC_GPIOC_CLK_ENABLE -#define __GPIOC_CLK_SLEEP_DISABLE __HAL_RCC_GPIOC_CLK_SLEEP_DISABLE -#define __GPIOC_CLK_SLEEP_ENABLE __HAL_RCC_GPIOC_CLK_SLEEP_ENABLE -#define __GPIOC_FORCE_RESET __HAL_RCC_GPIOC_FORCE_RESET -#define __GPIOC_RELEASE_RESET __HAL_RCC_GPIOC_RELEASE_RESET -#define __GPIOD_CLK_DISABLE __HAL_RCC_GPIOD_CLK_DISABLE -#define __GPIOD_CLK_ENABLE __HAL_RCC_GPIOD_CLK_ENABLE -#define __GPIOD_CLK_SLEEP_DISABLE __HAL_RCC_GPIOD_CLK_SLEEP_DISABLE -#define __GPIOD_CLK_SLEEP_ENABLE __HAL_RCC_GPIOD_CLK_SLEEP_ENABLE -#define __GPIOD_FORCE_RESET __HAL_RCC_GPIOD_FORCE_RESET -#define __GPIOD_RELEASE_RESET __HAL_RCC_GPIOD_RELEASE_RESET -#define __GPIOE_CLK_DISABLE __HAL_RCC_GPIOE_CLK_DISABLE -#define __GPIOE_CLK_ENABLE __HAL_RCC_GPIOE_CLK_ENABLE -#define __GPIOE_CLK_SLEEP_DISABLE __HAL_RCC_GPIOE_CLK_SLEEP_DISABLE -#define __GPIOE_CLK_SLEEP_ENABLE __HAL_RCC_GPIOE_CLK_SLEEP_ENABLE -#define __GPIOE_FORCE_RESET __HAL_RCC_GPIOE_FORCE_RESET -#define __GPIOE_RELEASE_RESET __HAL_RCC_GPIOE_RELEASE_RESET -#define __GPIOF_CLK_DISABLE __HAL_RCC_GPIOF_CLK_DISABLE -#define __GPIOF_CLK_ENABLE __HAL_RCC_GPIOF_CLK_ENABLE -#define __GPIOF_CLK_SLEEP_DISABLE __HAL_RCC_GPIOF_CLK_SLEEP_DISABLE -#define __GPIOF_CLK_SLEEP_ENABLE __HAL_RCC_GPIOF_CLK_SLEEP_ENABLE -#define __GPIOF_FORCE_RESET __HAL_RCC_GPIOF_FORCE_RESET -#define __GPIOF_RELEASE_RESET __HAL_RCC_GPIOF_RELEASE_RESET -#define __GPIOG_CLK_DISABLE __HAL_RCC_GPIOG_CLK_DISABLE -#define __GPIOG_CLK_ENABLE __HAL_RCC_GPIOG_CLK_ENABLE -#define __GPIOG_CLK_SLEEP_DISABLE __HAL_RCC_GPIOG_CLK_SLEEP_DISABLE -#define __GPIOG_CLK_SLEEP_ENABLE __HAL_RCC_GPIOG_CLK_SLEEP_ENABLE -#define __GPIOG_FORCE_RESET __HAL_RCC_GPIOG_FORCE_RESET -#define __GPIOG_RELEASE_RESET __HAL_RCC_GPIOG_RELEASE_RESET -#define __GPIOH_CLK_DISABLE __HAL_RCC_GPIOH_CLK_DISABLE -#define __GPIOH_CLK_ENABLE __HAL_RCC_GPIOH_CLK_ENABLE -#define __GPIOH_CLK_SLEEP_DISABLE __HAL_RCC_GPIOH_CLK_SLEEP_DISABLE -#define __GPIOH_CLK_SLEEP_ENABLE __HAL_RCC_GPIOH_CLK_SLEEP_ENABLE -#define __GPIOH_FORCE_RESET __HAL_RCC_GPIOH_FORCE_RESET -#define __GPIOH_RELEASE_RESET __HAL_RCC_GPIOH_RELEASE_RESET -#define __I2C1_CLK_DISABLE __HAL_RCC_I2C1_CLK_DISABLE -#define __I2C1_CLK_ENABLE __HAL_RCC_I2C1_CLK_ENABLE -#define __I2C1_CLK_SLEEP_DISABLE __HAL_RCC_I2C1_CLK_SLEEP_DISABLE -#define __I2C1_CLK_SLEEP_ENABLE __HAL_RCC_I2C1_CLK_SLEEP_ENABLE -#define __I2C1_FORCE_RESET __HAL_RCC_I2C1_FORCE_RESET -#define __I2C1_RELEASE_RESET __HAL_RCC_I2C1_RELEASE_RESET -#define __I2C2_CLK_DISABLE __HAL_RCC_I2C2_CLK_DISABLE -#define __I2C2_CLK_ENABLE __HAL_RCC_I2C2_CLK_ENABLE -#define __I2C2_CLK_SLEEP_DISABLE __HAL_RCC_I2C2_CLK_SLEEP_DISABLE -#define __I2C2_CLK_SLEEP_ENABLE __HAL_RCC_I2C2_CLK_SLEEP_ENABLE -#define __I2C2_FORCE_RESET __HAL_RCC_I2C2_FORCE_RESET -#define __I2C2_RELEASE_RESET __HAL_RCC_I2C2_RELEASE_RESET -#define __I2C3_CLK_DISABLE __HAL_RCC_I2C3_CLK_DISABLE -#define __I2C3_CLK_ENABLE __HAL_RCC_I2C3_CLK_ENABLE -#define __I2C3_CLK_SLEEP_DISABLE __HAL_RCC_I2C3_CLK_SLEEP_DISABLE -#define __I2C3_CLK_SLEEP_ENABLE __HAL_RCC_I2C3_CLK_SLEEP_ENABLE -#define __I2C3_FORCE_RESET __HAL_RCC_I2C3_FORCE_RESET -#define __I2C3_RELEASE_RESET __HAL_RCC_I2C3_RELEASE_RESET -#define __LCD_CLK_DISABLE __HAL_RCC_LCD_CLK_DISABLE -#define __LCD_CLK_ENABLE __HAL_RCC_LCD_CLK_ENABLE -#define __LCD_CLK_SLEEP_DISABLE __HAL_RCC_LCD_CLK_SLEEP_DISABLE -#define __LCD_CLK_SLEEP_ENABLE __HAL_RCC_LCD_CLK_SLEEP_ENABLE -#define __LCD_FORCE_RESET __HAL_RCC_LCD_FORCE_RESET -#define __LCD_RELEASE_RESET __HAL_RCC_LCD_RELEASE_RESET -#define __LPTIM1_CLK_DISABLE __HAL_RCC_LPTIM1_CLK_DISABLE -#define __LPTIM1_CLK_ENABLE __HAL_RCC_LPTIM1_CLK_ENABLE -#define __LPTIM1_CLK_SLEEP_DISABLE __HAL_RCC_LPTIM1_CLK_SLEEP_DISABLE -#define __LPTIM1_CLK_SLEEP_ENABLE __HAL_RCC_LPTIM1_CLK_SLEEP_ENABLE -#define __LPTIM1_FORCE_RESET __HAL_RCC_LPTIM1_FORCE_RESET -#define __LPTIM1_RELEASE_RESET __HAL_RCC_LPTIM1_RELEASE_RESET -#define __LPTIM2_CLK_DISABLE __HAL_RCC_LPTIM2_CLK_DISABLE -#define __LPTIM2_CLK_ENABLE __HAL_RCC_LPTIM2_CLK_ENABLE -#define __LPTIM2_CLK_SLEEP_DISABLE __HAL_RCC_LPTIM2_CLK_SLEEP_DISABLE -#define __LPTIM2_CLK_SLEEP_ENABLE __HAL_RCC_LPTIM2_CLK_SLEEP_ENABLE -#define __LPTIM2_FORCE_RESET __HAL_RCC_LPTIM2_FORCE_RESET -#define __LPTIM2_RELEASE_RESET __HAL_RCC_LPTIM2_RELEASE_RESET -#define __LPUART1_CLK_DISABLE __HAL_RCC_LPUART1_CLK_DISABLE -#define __LPUART1_CLK_ENABLE __HAL_RCC_LPUART1_CLK_ENABLE -#define __LPUART1_CLK_SLEEP_DISABLE __HAL_RCC_LPUART1_CLK_SLEEP_DISABLE -#define __LPUART1_CLK_SLEEP_ENABLE __HAL_RCC_LPUART1_CLK_SLEEP_ENABLE -#define __LPUART1_FORCE_RESET __HAL_RCC_LPUART1_FORCE_RESET -#define __LPUART1_RELEASE_RESET __HAL_RCC_LPUART1_RELEASE_RESET -#define __OPAMP_CLK_DISABLE __HAL_RCC_OPAMP_CLK_DISABLE -#define __OPAMP_CLK_ENABLE __HAL_RCC_OPAMP_CLK_ENABLE -#define __OPAMP_CLK_SLEEP_DISABLE __HAL_RCC_OPAMP_CLK_SLEEP_DISABLE -#define __OPAMP_CLK_SLEEP_ENABLE __HAL_RCC_OPAMP_CLK_SLEEP_ENABLE -#define __OPAMP_FORCE_RESET __HAL_RCC_OPAMP_FORCE_RESET -#define __OPAMP_RELEASE_RESET __HAL_RCC_OPAMP_RELEASE_RESET -#define __OTGFS_CLK_DISABLE __HAL_RCC_OTGFS_CLK_DISABLE -#define __OTGFS_CLK_ENABLE __HAL_RCC_OTGFS_CLK_ENABLE -#define __OTGFS_CLK_SLEEP_DISABLE __HAL_RCC_OTGFS_CLK_SLEEP_DISABLE -#define __OTGFS_CLK_SLEEP_ENABLE __HAL_RCC_OTGFS_CLK_SLEEP_ENABLE -#define __OTGFS_FORCE_RESET __HAL_RCC_OTGFS_FORCE_RESET -#define __OTGFS_RELEASE_RESET __HAL_RCC_OTGFS_RELEASE_RESET -#define __PWR_CLK_DISABLE __HAL_RCC_PWR_CLK_DISABLE -#define __PWR_CLK_ENABLE __HAL_RCC_PWR_CLK_ENABLE -#define __PWR_CLK_SLEEP_DISABLE __HAL_RCC_PWR_CLK_SLEEP_DISABLE -#define __PWR_CLK_SLEEP_ENABLE __HAL_RCC_PWR_CLK_SLEEP_ENABLE -#define __PWR_FORCE_RESET __HAL_RCC_PWR_FORCE_RESET -#define __PWR_RELEASE_RESET __HAL_RCC_PWR_RELEASE_RESET -#define __QSPI_CLK_DISABLE __HAL_RCC_QSPI_CLK_DISABLE -#define __QSPI_CLK_ENABLE __HAL_RCC_QSPI_CLK_ENABLE -#define __QSPI_CLK_SLEEP_DISABLE __HAL_RCC_QSPI_CLK_SLEEP_DISABLE -#define __QSPI_CLK_SLEEP_ENABLE __HAL_RCC_QSPI_CLK_SLEEP_ENABLE -#define __QSPI_FORCE_RESET __HAL_RCC_QSPI_FORCE_RESET -#define __QSPI_RELEASE_RESET __HAL_RCC_QSPI_RELEASE_RESET - -#if defined(STM32WB) -#define __HAL_RCC_QSPI_CLK_DISABLE __HAL_RCC_QUADSPI_CLK_DISABLE -#define __HAL_RCC_QSPI_CLK_ENABLE __HAL_RCC_QUADSPI_CLK_ENABLE -#define __HAL_RCC_QSPI_CLK_SLEEP_DISABLE __HAL_RCC_QUADSPI_CLK_SLEEP_DISABLE -#define __HAL_RCC_QSPI_CLK_SLEEP_ENABLE __HAL_RCC_QUADSPI_CLK_SLEEP_ENABLE -#define __HAL_RCC_QSPI_FORCE_RESET __HAL_RCC_QUADSPI_FORCE_RESET -#define __HAL_RCC_QSPI_RELEASE_RESET __HAL_RCC_QUADSPI_RELEASE_RESET -#define __HAL_RCC_QSPI_IS_CLK_ENABLED __HAL_RCC_QUADSPI_IS_CLK_ENABLED -#define __HAL_RCC_QSPI_IS_CLK_DISABLED __HAL_RCC_QUADSPI_IS_CLK_DISABLED -#define __HAL_RCC_QSPI_IS_CLK_SLEEP_ENABLED __HAL_RCC_QUADSPI_IS_CLK_SLEEP_ENABLED -#define __HAL_RCC_QSPI_IS_CLK_SLEEP_DISABLED __HAL_RCC_QUADSPI_IS_CLK_SLEEP_DISABLED -#define QSPI_IRQHandler QUADSPI_IRQHandler -#endif /* __HAL_RCC_QUADSPI_CLK_ENABLE */ - -#define __RNG_CLK_DISABLE __HAL_RCC_RNG_CLK_DISABLE -#define __RNG_CLK_ENABLE __HAL_RCC_RNG_CLK_ENABLE -#define __RNG_CLK_SLEEP_DISABLE __HAL_RCC_RNG_CLK_SLEEP_DISABLE -#define __RNG_CLK_SLEEP_ENABLE __HAL_RCC_RNG_CLK_SLEEP_ENABLE -#define __RNG_FORCE_RESET __HAL_RCC_RNG_FORCE_RESET -#define __RNG_RELEASE_RESET __HAL_RCC_RNG_RELEASE_RESET -#define __SAI1_CLK_DISABLE __HAL_RCC_SAI1_CLK_DISABLE -#define __SAI1_CLK_ENABLE __HAL_RCC_SAI1_CLK_ENABLE -#define __SAI1_CLK_SLEEP_DISABLE __HAL_RCC_SAI1_CLK_SLEEP_DISABLE -#define __SAI1_CLK_SLEEP_ENABLE __HAL_RCC_SAI1_CLK_SLEEP_ENABLE -#define __SAI1_FORCE_RESET __HAL_RCC_SAI1_FORCE_RESET -#define __SAI1_RELEASE_RESET __HAL_RCC_SAI1_RELEASE_RESET -#define __SAI2_CLK_DISABLE __HAL_RCC_SAI2_CLK_DISABLE -#define __SAI2_CLK_ENABLE __HAL_RCC_SAI2_CLK_ENABLE -#define __SAI2_CLK_SLEEP_DISABLE __HAL_RCC_SAI2_CLK_SLEEP_DISABLE -#define __SAI2_CLK_SLEEP_ENABLE __HAL_RCC_SAI2_CLK_SLEEP_ENABLE -#define __SAI2_FORCE_RESET __HAL_RCC_SAI2_FORCE_RESET -#define __SAI2_RELEASE_RESET __HAL_RCC_SAI2_RELEASE_RESET -#define __SDIO_CLK_DISABLE __HAL_RCC_SDIO_CLK_DISABLE -#define __SDIO_CLK_ENABLE __HAL_RCC_SDIO_CLK_ENABLE -#define __SDMMC_CLK_DISABLE __HAL_RCC_SDMMC_CLK_DISABLE -#define __SDMMC_CLK_ENABLE __HAL_RCC_SDMMC_CLK_ENABLE -#define __SDMMC_CLK_SLEEP_DISABLE __HAL_RCC_SDMMC_CLK_SLEEP_DISABLE -#define __SDMMC_CLK_SLEEP_ENABLE __HAL_RCC_SDMMC_CLK_SLEEP_ENABLE -#define __SDMMC_FORCE_RESET __HAL_RCC_SDMMC_FORCE_RESET -#define __SDMMC_RELEASE_RESET __HAL_RCC_SDMMC_RELEASE_RESET -#define __SPI1_CLK_DISABLE __HAL_RCC_SPI1_CLK_DISABLE -#define __SPI1_CLK_ENABLE __HAL_RCC_SPI1_CLK_ENABLE -#define __SPI1_CLK_SLEEP_DISABLE __HAL_RCC_SPI1_CLK_SLEEP_DISABLE -#define __SPI1_CLK_SLEEP_ENABLE __HAL_RCC_SPI1_CLK_SLEEP_ENABLE -#define __SPI1_FORCE_RESET __HAL_RCC_SPI1_FORCE_RESET -#define __SPI1_RELEASE_RESET __HAL_RCC_SPI1_RELEASE_RESET -#define __SPI2_CLK_DISABLE __HAL_RCC_SPI2_CLK_DISABLE -#define __SPI2_CLK_ENABLE __HAL_RCC_SPI2_CLK_ENABLE -#define __SPI2_CLK_SLEEP_DISABLE __HAL_RCC_SPI2_CLK_SLEEP_DISABLE -#define __SPI2_CLK_SLEEP_ENABLE __HAL_RCC_SPI2_CLK_SLEEP_ENABLE -#define __SPI2_FORCE_RESET __HAL_RCC_SPI2_FORCE_RESET -#define __SPI2_RELEASE_RESET __HAL_RCC_SPI2_RELEASE_RESET -#define __SPI3_CLK_DISABLE __HAL_RCC_SPI3_CLK_DISABLE -#define __SPI3_CLK_ENABLE __HAL_RCC_SPI3_CLK_ENABLE -#define __SPI3_CLK_SLEEP_DISABLE __HAL_RCC_SPI3_CLK_SLEEP_DISABLE -#define __SPI3_CLK_SLEEP_ENABLE __HAL_RCC_SPI3_CLK_SLEEP_ENABLE -#define __SPI3_FORCE_RESET __HAL_RCC_SPI3_FORCE_RESET -#define __SPI3_RELEASE_RESET __HAL_RCC_SPI3_RELEASE_RESET -#define __SRAM_CLK_DISABLE __HAL_RCC_SRAM_CLK_DISABLE -#define __SRAM_CLK_ENABLE __HAL_RCC_SRAM_CLK_ENABLE -#define __SRAM1_CLK_SLEEP_DISABLE __HAL_RCC_SRAM1_CLK_SLEEP_DISABLE -#define __SRAM1_CLK_SLEEP_ENABLE __HAL_RCC_SRAM1_CLK_SLEEP_ENABLE -#define __SRAM2_CLK_SLEEP_DISABLE __HAL_RCC_SRAM2_CLK_SLEEP_DISABLE -#define __SRAM2_CLK_SLEEP_ENABLE __HAL_RCC_SRAM2_CLK_SLEEP_ENABLE -#define __SWPMI1_CLK_DISABLE __HAL_RCC_SWPMI1_CLK_DISABLE -#define __SWPMI1_CLK_ENABLE __HAL_RCC_SWPMI1_CLK_ENABLE -#define __SWPMI1_CLK_SLEEP_DISABLE __HAL_RCC_SWPMI1_CLK_SLEEP_DISABLE -#define __SWPMI1_CLK_SLEEP_ENABLE __HAL_RCC_SWPMI1_CLK_SLEEP_ENABLE -#define __SWPMI1_FORCE_RESET __HAL_RCC_SWPMI1_FORCE_RESET -#define __SWPMI1_RELEASE_RESET __HAL_RCC_SWPMI1_RELEASE_RESET -#define __SYSCFG_CLK_DISABLE __HAL_RCC_SYSCFG_CLK_DISABLE -#define __SYSCFG_CLK_ENABLE __HAL_RCC_SYSCFG_CLK_ENABLE -#define __SYSCFG_CLK_SLEEP_DISABLE __HAL_RCC_SYSCFG_CLK_SLEEP_DISABLE -#define __SYSCFG_CLK_SLEEP_ENABLE __HAL_RCC_SYSCFG_CLK_SLEEP_ENABLE -#define __SYSCFG_FORCE_RESET __HAL_RCC_SYSCFG_FORCE_RESET -#define __SYSCFG_RELEASE_RESET __HAL_RCC_SYSCFG_RELEASE_RESET -#define __TIM1_CLK_DISABLE __HAL_RCC_TIM1_CLK_DISABLE -#define __TIM1_CLK_ENABLE __HAL_RCC_TIM1_CLK_ENABLE -#define __TIM1_CLK_SLEEP_DISABLE __HAL_RCC_TIM1_CLK_SLEEP_DISABLE -#define __TIM1_CLK_SLEEP_ENABLE __HAL_RCC_TIM1_CLK_SLEEP_ENABLE -#define __TIM1_FORCE_RESET __HAL_RCC_TIM1_FORCE_RESET -#define __TIM1_RELEASE_RESET __HAL_RCC_TIM1_RELEASE_RESET -#define __TIM10_CLK_DISABLE __HAL_RCC_TIM10_CLK_DISABLE -#define __TIM10_CLK_ENABLE __HAL_RCC_TIM10_CLK_ENABLE -#define __TIM10_FORCE_RESET __HAL_RCC_TIM10_FORCE_RESET -#define __TIM10_RELEASE_RESET __HAL_RCC_TIM10_RELEASE_RESET -#define __TIM11_CLK_DISABLE __HAL_RCC_TIM11_CLK_DISABLE -#define __TIM11_CLK_ENABLE __HAL_RCC_TIM11_CLK_ENABLE -#define __TIM11_FORCE_RESET __HAL_RCC_TIM11_FORCE_RESET -#define __TIM11_RELEASE_RESET __HAL_RCC_TIM11_RELEASE_RESET -#define __TIM12_CLK_DISABLE __HAL_RCC_TIM12_CLK_DISABLE -#define __TIM12_CLK_ENABLE __HAL_RCC_TIM12_CLK_ENABLE -#define __TIM12_FORCE_RESET __HAL_RCC_TIM12_FORCE_RESET -#define __TIM12_RELEASE_RESET __HAL_RCC_TIM12_RELEASE_RESET -#define __TIM13_CLK_DISABLE __HAL_RCC_TIM13_CLK_DISABLE -#define __TIM13_CLK_ENABLE __HAL_RCC_TIM13_CLK_ENABLE -#define __TIM13_FORCE_RESET __HAL_RCC_TIM13_FORCE_RESET -#define __TIM13_RELEASE_RESET __HAL_RCC_TIM13_RELEASE_RESET -#define __TIM14_CLK_DISABLE __HAL_RCC_TIM14_CLK_DISABLE -#define __TIM14_CLK_ENABLE __HAL_RCC_TIM14_CLK_ENABLE -#define __TIM14_FORCE_RESET __HAL_RCC_TIM14_FORCE_RESET -#define __TIM14_RELEASE_RESET __HAL_RCC_TIM14_RELEASE_RESET -#define __TIM15_CLK_DISABLE __HAL_RCC_TIM15_CLK_DISABLE -#define __TIM15_CLK_ENABLE __HAL_RCC_TIM15_CLK_ENABLE -#define __TIM15_CLK_SLEEP_DISABLE __HAL_RCC_TIM15_CLK_SLEEP_DISABLE -#define __TIM15_CLK_SLEEP_ENABLE __HAL_RCC_TIM15_CLK_SLEEP_ENABLE -#define __TIM15_FORCE_RESET __HAL_RCC_TIM15_FORCE_RESET -#define __TIM15_RELEASE_RESET __HAL_RCC_TIM15_RELEASE_RESET -#define __TIM16_CLK_DISABLE __HAL_RCC_TIM16_CLK_DISABLE -#define __TIM16_CLK_ENABLE __HAL_RCC_TIM16_CLK_ENABLE -#define __TIM16_CLK_SLEEP_DISABLE __HAL_RCC_TIM16_CLK_SLEEP_DISABLE -#define __TIM16_CLK_SLEEP_ENABLE __HAL_RCC_TIM16_CLK_SLEEP_ENABLE -#define __TIM16_FORCE_RESET __HAL_RCC_TIM16_FORCE_RESET -#define __TIM16_RELEASE_RESET __HAL_RCC_TIM16_RELEASE_RESET -#define __TIM17_CLK_DISABLE __HAL_RCC_TIM17_CLK_DISABLE -#define __TIM17_CLK_ENABLE __HAL_RCC_TIM17_CLK_ENABLE -#define __TIM17_CLK_SLEEP_DISABLE __HAL_RCC_TIM17_CLK_SLEEP_DISABLE -#define __TIM17_CLK_SLEEP_ENABLE __HAL_RCC_TIM17_CLK_SLEEP_ENABLE -#define __TIM17_FORCE_RESET __HAL_RCC_TIM17_FORCE_RESET -#define __TIM17_RELEASE_RESET __HAL_RCC_TIM17_RELEASE_RESET -#define __TIM2_CLK_DISABLE __HAL_RCC_TIM2_CLK_DISABLE -#define __TIM2_CLK_ENABLE __HAL_RCC_TIM2_CLK_ENABLE -#define __TIM2_CLK_SLEEP_DISABLE __HAL_RCC_TIM2_CLK_SLEEP_DISABLE -#define __TIM2_CLK_SLEEP_ENABLE __HAL_RCC_TIM2_CLK_SLEEP_ENABLE -#define __TIM2_FORCE_RESET __HAL_RCC_TIM2_FORCE_RESET -#define __TIM2_RELEASE_RESET __HAL_RCC_TIM2_RELEASE_RESET -#define __TIM3_CLK_DISABLE __HAL_RCC_TIM3_CLK_DISABLE -#define __TIM3_CLK_ENABLE __HAL_RCC_TIM3_CLK_ENABLE -#define __TIM3_CLK_SLEEP_DISABLE __HAL_RCC_TIM3_CLK_SLEEP_DISABLE -#define __TIM3_CLK_SLEEP_ENABLE __HAL_RCC_TIM3_CLK_SLEEP_ENABLE -#define __TIM3_FORCE_RESET __HAL_RCC_TIM3_FORCE_RESET -#define __TIM3_RELEASE_RESET __HAL_RCC_TIM3_RELEASE_RESET -#define __TIM4_CLK_DISABLE __HAL_RCC_TIM4_CLK_DISABLE -#define __TIM4_CLK_ENABLE __HAL_RCC_TIM4_CLK_ENABLE -#define __TIM4_CLK_SLEEP_DISABLE __HAL_RCC_TIM4_CLK_SLEEP_DISABLE -#define __TIM4_CLK_SLEEP_ENABLE __HAL_RCC_TIM4_CLK_SLEEP_ENABLE -#define __TIM4_FORCE_RESET __HAL_RCC_TIM4_FORCE_RESET -#define __TIM4_RELEASE_RESET __HAL_RCC_TIM4_RELEASE_RESET -#define __TIM5_CLK_DISABLE __HAL_RCC_TIM5_CLK_DISABLE -#define __TIM5_CLK_ENABLE __HAL_RCC_TIM5_CLK_ENABLE -#define __TIM5_CLK_SLEEP_DISABLE __HAL_RCC_TIM5_CLK_SLEEP_DISABLE -#define __TIM5_CLK_SLEEP_ENABLE __HAL_RCC_TIM5_CLK_SLEEP_ENABLE -#define __TIM5_FORCE_RESET __HAL_RCC_TIM5_FORCE_RESET -#define __TIM5_RELEASE_RESET __HAL_RCC_TIM5_RELEASE_RESET -#define __TIM6_CLK_DISABLE __HAL_RCC_TIM6_CLK_DISABLE -#define __TIM6_CLK_ENABLE __HAL_RCC_TIM6_CLK_ENABLE -#define __TIM6_CLK_SLEEP_DISABLE __HAL_RCC_TIM6_CLK_SLEEP_DISABLE -#define __TIM6_CLK_SLEEP_ENABLE __HAL_RCC_TIM6_CLK_SLEEP_ENABLE -#define __TIM6_FORCE_RESET __HAL_RCC_TIM6_FORCE_RESET -#define __TIM6_RELEASE_RESET __HAL_RCC_TIM6_RELEASE_RESET -#define __TIM7_CLK_DISABLE __HAL_RCC_TIM7_CLK_DISABLE -#define __TIM7_CLK_ENABLE __HAL_RCC_TIM7_CLK_ENABLE -#define __TIM7_CLK_SLEEP_DISABLE __HAL_RCC_TIM7_CLK_SLEEP_DISABLE -#define __TIM7_CLK_SLEEP_ENABLE __HAL_RCC_TIM7_CLK_SLEEP_ENABLE -#define __TIM7_FORCE_RESET __HAL_RCC_TIM7_FORCE_RESET -#define __TIM7_RELEASE_RESET __HAL_RCC_TIM7_RELEASE_RESET -#define __TIM8_CLK_DISABLE __HAL_RCC_TIM8_CLK_DISABLE -#define __TIM8_CLK_ENABLE __HAL_RCC_TIM8_CLK_ENABLE -#define __TIM8_CLK_SLEEP_DISABLE __HAL_RCC_TIM8_CLK_SLEEP_DISABLE -#define __TIM8_CLK_SLEEP_ENABLE __HAL_RCC_TIM8_CLK_SLEEP_ENABLE -#define __TIM8_FORCE_RESET __HAL_RCC_TIM8_FORCE_RESET -#define __TIM8_RELEASE_RESET __HAL_RCC_TIM8_RELEASE_RESET -#define __TIM9_CLK_DISABLE __HAL_RCC_TIM9_CLK_DISABLE -#define __TIM9_CLK_ENABLE __HAL_RCC_TIM9_CLK_ENABLE -#define __TIM9_FORCE_RESET __HAL_RCC_TIM9_FORCE_RESET -#define __TIM9_RELEASE_RESET __HAL_RCC_TIM9_RELEASE_RESET -#define __TSC_CLK_DISABLE __HAL_RCC_TSC_CLK_DISABLE -#define __TSC_CLK_ENABLE __HAL_RCC_TSC_CLK_ENABLE -#define __TSC_CLK_SLEEP_DISABLE __HAL_RCC_TSC_CLK_SLEEP_DISABLE -#define __TSC_CLK_SLEEP_ENABLE __HAL_RCC_TSC_CLK_SLEEP_ENABLE -#define __TSC_FORCE_RESET __HAL_RCC_TSC_FORCE_RESET -#define __TSC_RELEASE_RESET __HAL_RCC_TSC_RELEASE_RESET -#define __UART4_CLK_DISABLE __HAL_RCC_UART4_CLK_DISABLE -#define __UART4_CLK_ENABLE __HAL_RCC_UART4_CLK_ENABLE -#define __UART4_CLK_SLEEP_DISABLE __HAL_RCC_UART4_CLK_SLEEP_DISABLE -#define __UART4_CLK_SLEEP_ENABLE __HAL_RCC_UART4_CLK_SLEEP_ENABLE -#define __UART4_FORCE_RESET __HAL_RCC_UART4_FORCE_RESET -#define __UART4_RELEASE_RESET __HAL_RCC_UART4_RELEASE_RESET -#define __UART5_CLK_DISABLE __HAL_RCC_UART5_CLK_DISABLE -#define __UART5_CLK_ENABLE __HAL_RCC_UART5_CLK_ENABLE -#define __UART5_CLK_SLEEP_DISABLE __HAL_RCC_UART5_CLK_SLEEP_DISABLE -#define __UART5_CLK_SLEEP_ENABLE __HAL_RCC_UART5_CLK_SLEEP_ENABLE -#define __UART5_FORCE_RESET __HAL_RCC_UART5_FORCE_RESET -#define __UART5_RELEASE_RESET __HAL_RCC_UART5_RELEASE_RESET -#define __USART1_CLK_DISABLE __HAL_RCC_USART1_CLK_DISABLE -#define __USART1_CLK_ENABLE __HAL_RCC_USART1_CLK_ENABLE -#define __USART1_CLK_SLEEP_DISABLE __HAL_RCC_USART1_CLK_SLEEP_DISABLE -#define __USART1_CLK_SLEEP_ENABLE __HAL_RCC_USART1_CLK_SLEEP_ENABLE -#define __USART1_FORCE_RESET __HAL_RCC_USART1_FORCE_RESET -#define __USART1_RELEASE_RESET __HAL_RCC_USART1_RELEASE_RESET -#define __USART2_CLK_DISABLE __HAL_RCC_USART2_CLK_DISABLE -#define __USART2_CLK_ENABLE __HAL_RCC_USART2_CLK_ENABLE -#define __USART2_CLK_SLEEP_DISABLE __HAL_RCC_USART2_CLK_SLEEP_DISABLE -#define __USART2_CLK_SLEEP_ENABLE __HAL_RCC_USART2_CLK_SLEEP_ENABLE -#define __USART2_FORCE_RESET __HAL_RCC_USART2_FORCE_RESET -#define __USART2_RELEASE_RESET __HAL_RCC_USART2_RELEASE_RESET -#define __USART3_CLK_DISABLE __HAL_RCC_USART3_CLK_DISABLE -#define __USART3_CLK_ENABLE __HAL_RCC_USART3_CLK_ENABLE -#define __USART3_CLK_SLEEP_DISABLE __HAL_RCC_USART3_CLK_SLEEP_DISABLE -#define __USART3_CLK_SLEEP_ENABLE __HAL_RCC_USART3_CLK_SLEEP_ENABLE -#define __USART3_FORCE_RESET __HAL_RCC_USART3_FORCE_RESET -#define __USART3_RELEASE_RESET __HAL_RCC_USART3_RELEASE_RESET -#define __USART4_CLK_DISABLE __HAL_RCC_UART4_CLK_DISABLE -#define __USART4_CLK_ENABLE __HAL_RCC_UART4_CLK_ENABLE -#define __USART4_CLK_SLEEP_ENABLE __HAL_RCC_UART4_CLK_SLEEP_ENABLE -#define __USART4_CLK_SLEEP_DISABLE __HAL_RCC_UART4_CLK_SLEEP_DISABLE -#define __USART4_FORCE_RESET __HAL_RCC_UART4_FORCE_RESET -#define __USART4_RELEASE_RESET __HAL_RCC_UART4_RELEASE_RESET -#define __USART5_CLK_DISABLE __HAL_RCC_UART5_CLK_DISABLE -#define __USART5_CLK_ENABLE __HAL_RCC_UART5_CLK_ENABLE -#define __USART5_CLK_SLEEP_ENABLE __HAL_RCC_UART5_CLK_SLEEP_ENABLE -#define __USART5_CLK_SLEEP_DISABLE __HAL_RCC_UART5_CLK_SLEEP_DISABLE -#define __USART5_FORCE_RESET __HAL_RCC_UART5_FORCE_RESET -#define __USART5_RELEASE_RESET __HAL_RCC_UART5_RELEASE_RESET -#define __USART7_CLK_DISABLE __HAL_RCC_UART7_CLK_DISABLE -#define __USART7_CLK_ENABLE __HAL_RCC_UART7_CLK_ENABLE -#define __USART7_FORCE_RESET __HAL_RCC_UART7_FORCE_RESET -#define __USART7_RELEASE_RESET __HAL_RCC_UART7_RELEASE_RESET -#define __USART8_CLK_DISABLE __HAL_RCC_UART8_CLK_DISABLE -#define __USART8_CLK_ENABLE __HAL_RCC_UART8_CLK_ENABLE -#define __USART8_FORCE_RESET __HAL_RCC_UART8_FORCE_RESET -#define __USART8_RELEASE_RESET __HAL_RCC_UART8_RELEASE_RESET -#define __USB_CLK_DISABLE __HAL_RCC_USB_CLK_DISABLE -#define __USB_CLK_ENABLE __HAL_RCC_USB_CLK_ENABLE -#define __USB_FORCE_RESET __HAL_RCC_USB_FORCE_RESET -#define __USB_CLK_SLEEP_ENABLE __HAL_RCC_USB_CLK_SLEEP_ENABLE -#define __USB_CLK_SLEEP_DISABLE __HAL_RCC_USB_CLK_SLEEP_DISABLE -#define __USB_OTG_FS_CLK_DISABLE __HAL_RCC_USB_OTG_FS_CLK_DISABLE -#define __USB_OTG_FS_CLK_ENABLE __HAL_RCC_USB_OTG_FS_CLK_ENABLE -#define __USB_RELEASE_RESET __HAL_RCC_USB_RELEASE_RESET - -#if defined(STM32H7) -#define __HAL_RCC_WWDG_CLK_DISABLE __HAL_RCC_WWDG1_CLK_DISABLE -#define __HAL_RCC_WWDG_CLK_ENABLE __HAL_RCC_WWDG1_CLK_ENABLE -#define __HAL_RCC_WWDG_CLK_SLEEP_DISABLE __HAL_RCC_WWDG1_CLK_SLEEP_DISABLE -#define __HAL_RCC_WWDG_CLK_SLEEP_ENABLE __HAL_RCC_WWDG1_CLK_SLEEP_ENABLE - -#define __HAL_RCC_WWDG_FORCE_RESET ((void)0U) /* Not available on the STM32H7*/ -#define __HAL_RCC_WWDG_RELEASE_RESET ((void)0U) /* Not available on the STM32H7*/ - - -#define __HAL_RCC_WWDG_IS_CLK_ENABLED __HAL_RCC_WWDG1_IS_CLK_ENABLED -#define __HAL_RCC_WWDG_IS_CLK_DISABLED __HAL_RCC_WWDG1_IS_CLK_DISABLED -#endif - -#define __WWDG_CLK_DISABLE __HAL_RCC_WWDG_CLK_DISABLE -#define __WWDG_CLK_ENABLE __HAL_RCC_WWDG_CLK_ENABLE -#define __WWDG_CLK_SLEEP_DISABLE __HAL_RCC_WWDG_CLK_SLEEP_DISABLE -#define __WWDG_CLK_SLEEP_ENABLE __HAL_RCC_WWDG_CLK_SLEEP_ENABLE -#define __WWDG_FORCE_RESET __HAL_RCC_WWDG_FORCE_RESET -#define __WWDG_RELEASE_RESET __HAL_RCC_WWDG_RELEASE_RESET - -#define __TIM21_CLK_ENABLE __HAL_RCC_TIM21_CLK_ENABLE -#define __TIM21_CLK_DISABLE __HAL_RCC_TIM21_CLK_DISABLE -#define __TIM21_FORCE_RESET __HAL_RCC_TIM21_FORCE_RESET -#define __TIM21_RELEASE_RESET __HAL_RCC_TIM21_RELEASE_RESET -#define __TIM21_CLK_SLEEP_ENABLE __HAL_RCC_TIM21_CLK_SLEEP_ENABLE -#define __TIM21_CLK_SLEEP_DISABLE __HAL_RCC_TIM21_CLK_SLEEP_DISABLE -#define __TIM22_CLK_ENABLE __HAL_RCC_TIM22_CLK_ENABLE -#define __TIM22_CLK_DISABLE __HAL_RCC_TIM22_CLK_DISABLE -#define __TIM22_FORCE_RESET __HAL_RCC_TIM22_FORCE_RESET -#define __TIM22_RELEASE_RESET __HAL_RCC_TIM22_RELEASE_RESET -#define __TIM22_CLK_SLEEP_ENABLE __HAL_RCC_TIM22_CLK_SLEEP_ENABLE -#define __TIM22_CLK_SLEEP_DISABLE __HAL_RCC_TIM22_CLK_SLEEP_DISABLE -#define __CRS_CLK_DISABLE __HAL_RCC_CRS_CLK_DISABLE -#define __CRS_CLK_ENABLE __HAL_RCC_CRS_CLK_ENABLE -#define __CRS_CLK_SLEEP_DISABLE __HAL_RCC_CRS_CLK_SLEEP_DISABLE -#define __CRS_CLK_SLEEP_ENABLE __HAL_RCC_CRS_CLK_SLEEP_ENABLE -#define __CRS_FORCE_RESET __HAL_RCC_CRS_FORCE_RESET -#define __CRS_RELEASE_RESET __HAL_RCC_CRS_RELEASE_RESET -#define __RCC_BACKUPRESET_FORCE __HAL_RCC_BACKUPRESET_FORCE -#define __RCC_BACKUPRESET_RELEASE __HAL_RCC_BACKUPRESET_RELEASE - -#define __USB_OTG_FS_FORCE_RESET __HAL_RCC_USB_OTG_FS_FORCE_RESET -#define __USB_OTG_FS_RELEASE_RESET __HAL_RCC_USB_OTG_FS_RELEASE_RESET -#define __USB_OTG_FS_CLK_SLEEP_ENABLE __HAL_RCC_USB_OTG_FS_CLK_SLEEP_ENABLE -#define __USB_OTG_FS_CLK_SLEEP_DISABLE __HAL_RCC_USB_OTG_FS_CLK_SLEEP_DISABLE -#define __USB_OTG_HS_CLK_DISABLE __HAL_RCC_USB_OTG_HS_CLK_DISABLE -#define __USB_OTG_HS_CLK_ENABLE __HAL_RCC_USB_OTG_HS_CLK_ENABLE -#define __USB_OTG_HS_ULPI_CLK_ENABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_ENABLE -#define __USB_OTG_HS_ULPI_CLK_DISABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_DISABLE -#define __TIM9_CLK_SLEEP_ENABLE __HAL_RCC_TIM9_CLK_SLEEP_ENABLE -#define __TIM9_CLK_SLEEP_DISABLE __HAL_RCC_TIM9_CLK_SLEEP_DISABLE -#define __TIM10_CLK_SLEEP_ENABLE __HAL_RCC_TIM10_CLK_SLEEP_ENABLE -#define __TIM10_CLK_SLEEP_DISABLE __HAL_RCC_TIM10_CLK_SLEEP_DISABLE -#define __TIM11_CLK_SLEEP_ENABLE __HAL_RCC_TIM11_CLK_SLEEP_ENABLE -#define __TIM11_CLK_SLEEP_DISABLE __HAL_RCC_TIM11_CLK_SLEEP_DISABLE -#define __ETHMACPTP_CLK_SLEEP_ENABLE __HAL_RCC_ETHMACPTP_CLK_SLEEP_ENABLE -#define __ETHMACPTP_CLK_SLEEP_DISABLE __HAL_RCC_ETHMACPTP_CLK_SLEEP_DISABLE -#define __ETHMACPTP_CLK_ENABLE __HAL_RCC_ETHMACPTP_CLK_ENABLE -#define __ETHMACPTP_CLK_DISABLE __HAL_RCC_ETHMACPTP_CLK_DISABLE -#define __HASH_CLK_ENABLE __HAL_RCC_HASH_CLK_ENABLE -#define __HASH_FORCE_RESET __HAL_RCC_HASH_FORCE_RESET -#define __HASH_RELEASE_RESET __HAL_RCC_HASH_RELEASE_RESET -#define __HASH_CLK_SLEEP_ENABLE __HAL_RCC_HASH_CLK_SLEEP_ENABLE -#define __HASH_CLK_SLEEP_DISABLE __HAL_RCC_HASH_CLK_SLEEP_DISABLE -#define __HASH_CLK_DISABLE __HAL_RCC_HASH_CLK_DISABLE -#define __SPI5_CLK_ENABLE __HAL_RCC_SPI5_CLK_ENABLE -#define __SPI5_CLK_DISABLE __HAL_RCC_SPI5_CLK_DISABLE -#define __SPI5_FORCE_RESET __HAL_RCC_SPI5_FORCE_RESET -#define __SPI5_RELEASE_RESET __HAL_RCC_SPI5_RELEASE_RESET -#define __SPI5_CLK_SLEEP_ENABLE __HAL_RCC_SPI5_CLK_SLEEP_ENABLE -#define __SPI5_CLK_SLEEP_DISABLE __HAL_RCC_SPI5_CLK_SLEEP_DISABLE -#define __SPI6_CLK_ENABLE __HAL_RCC_SPI6_CLK_ENABLE -#define __SPI6_CLK_DISABLE __HAL_RCC_SPI6_CLK_DISABLE -#define __SPI6_FORCE_RESET __HAL_RCC_SPI6_FORCE_RESET -#define __SPI6_RELEASE_RESET __HAL_RCC_SPI6_RELEASE_RESET -#define __SPI6_CLK_SLEEP_ENABLE __HAL_RCC_SPI6_CLK_SLEEP_ENABLE -#define __SPI6_CLK_SLEEP_DISABLE __HAL_RCC_SPI6_CLK_SLEEP_DISABLE -#define __LTDC_CLK_ENABLE __HAL_RCC_LTDC_CLK_ENABLE -#define __LTDC_CLK_DISABLE __HAL_RCC_LTDC_CLK_DISABLE -#define __LTDC_FORCE_RESET __HAL_RCC_LTDC_FORCE_RESET -#define __LTDC_RELEASE_RESET __HAL_RCC_LTDC_RELEASE_RESET -#define __LTDC_CLK_SLEEP_ENABLE __HAL_RCC_LTDC_CLK_SLEEP_ENABLE -#define __ETHMAC_CLK_SLEEP_ENABLE __HAL_RCC_ETHMAC_CLK_SLEEP_ENABLE -#define __ETHMAC_CLK_SLEEP_DISABLE __HAL_RCC_ETHMAC_CLK_SLEEP_DISABLE -#define __ETHMACTX_CLK_SLEEP_ENABLE __HAL_RCC_ETHMACTX_CLK_SLEEP_ENABLE -#define __ETHMACTX_CLK_SLEEP_DISABLE __HAL_RCC_ETHMACTX_CLK_SLEEP_DISABLE -#define __ETHMACRX_CLK_SLEEP_ENABLE __HAL_RCC_ETHMACRX_CLK_SLEEP_ENABLE -#define __ETHMACRX_CLK_SLEEP_DISABLE __HAL_RCC_ETHMACRX_CLK_SLEEP_DISABLE -#define __TIM12_CLK_SLEEP_ENABLE __HAL_RCC_TIM12_CLK_SLEEP_ENABLE -#define __TIM12_CLK_SLEEP_DISABLE __HAL_RCC_TIM12_CLK_SLEEP_DISABLE -#define __TIM13_CLK_SLEEP_ENABLE __HAL_RCC_TIM13_CLK_SLEEP_ENABLE -#define __TIM13_CLK_SLEEP_DISABLE __HAL_RCC_TIM13_CLK_SLEEP_DISABLE -#define __TIM14_CLK_SLEEP_ENABLE __HAL_RCC_TIM14_CLK_SLEEP_ENABLE -#define __TIM14_CLK_SLEEP_DISABLE __HAL_RCC_TIM14_CLK_SLEEP_DISABLE -#define __BKPSRAM_CLK_ENABLE __HAL_RCC_BKPSRAM_CLK_ENABLE -#define __BKPSRAM_CLK_DISABLE __HAL_RCC_BKPSRAM_CLK_DISABLE -#define __BKPSRAM_CLK_SLEEP_ENABLE __HAL_RCC_BKPSRAM_CLK_SLEEP_ENABLE -#define __BKPSRAM_CLK_SLEEP_DISABLE __HAL_RCC_BKPSRAM_CLK_SLEEP_DISABLE -#define __CCMDATARAMEN_CLK_ENABLE __HAL_RCC_CCMDATARAMEN_CLK_ENABLE -#define __CCMDATARAMEN_CLK_DISABLE __HAL_RCC_CCMDATARAMEN_CLK_DISABLE -#define __USART6_CLK_ENABLE __HAL_RCC_USART6_CLK_ENABLE -#define __USART6_CLK_DISABLE __HAL_RCC_USART6_CLK_DISABLE -#define __USART6_FORCE_RESET __HAL_RCC_USART6_FORCE_RESET -#define __USART6_RELEASE_RESET __HAL_RCC_USART6_RELEASE_RESET -#define __USART6_CLK_SLEEP_ENABLE __HAL_RCC_USART6_CLK_SLEEP_ENABLE -#define __USART6_CLK_SLEEP_DISABLE __HAL_RCC_USART6_CLK_SLEEP_DISABLE -#define __SPI4_CLK_ENABLE __HAL_RCC_SPI4_CLK_ENABLE -#define __SPI4_CLK_DISABLE __HAL_RCC_SPI4_CLK_DISABLE -#define __SPI4_FORCE_RESET __HAL_RCC_SPI4_FORCE_RESET -#define __SPI4_RELEASE_RESET __HAL_RCC_SPI4_RELEASE_RESET -#define __SPI4_CLK_SLEEP_ENABLE __HAL_RCC_SPI4_CLK_SLEEP_ENABLE -#define __SPI4_CLK_SLEEP_DISABLE __HAL_RCC_SPI4_CLK_SLEEP_DISABLE -#define __GPIOI_CLK_ENABLE __HAL_RCC_GPIOI_CLK_ENABLE -#define __GPIOI_CLK_DISABLE __HAL_RCC_GPIOI_CLK_DISABLE -#define __GPIOI_FORCE_RESET __HAL_RCC_GPIOI_FORCE_RESET -#define __GPIOI_RELEASE_RESET __HAL_RCC_GPIOI_RELEASE_RESET -#define __GPIOI_CLK_SLEEP_ENABLE __HAL_RCC_GPIOI_CLK_SLEEP_ENABLE -#define __GPIOI_CLK_SLEEP_DISABLE __HAL_RCC_GPIOI_CLK_SLEEP_DISABLE -#define __GPIOJ_CLK_ENABLE __HAL_RCC_GPIOJ_CLK_ENABLE -#define __GPIOJ_CLK_DISABLE __HAL_RCC_GPIOJ_CLK_DISABLE -#define __GPIOJ_FORCE_RESET __HAL_RCC_GPIOJ_FORCE_RESET -#define __GPIOJ_RELEASE_RESET __HAL_RCC_GPIOJ_RELEASE_RESET -#define __GPIOJ_CLK_SLEEP_ENABLE __HAL_RCC_GPIOJ_CLK_SLEEP_ENABLE -#define __GPIOJ_CLK_SLEEP_DISABLE __HAL_RCC_GPIOJ_CLK_SLEEP_DISABLE -#define __GPIOK_CLK_ENABLE __HAL_RCC_GPIOK_CLK_ENABLE -#define __GPIOK_CLK_DISABLE __HAL_RCC_GPIOK_CLK_DISABLE -#define __GPIOK_RELEASE_RESET __HAL_RCC_GPIOK_RELEASE_RESET -#define __GPIOK_CLK_SLEEP_ENABLE __HAL_RCC_GPIOK_CLK_SLEEP_ENABLE -#define __GPIOK_CLK_SLEEP_DISABLE __HAL_RCC_GPIOK_CLK_SLEEP_DISABLE -#define __ETH_CLK_ENABLE __HAL_RCC_ETH_CLK_ENABLE -#define __ETH_CLK_DISABLE __HAL_RCC_ETH_CLK_DISABLE -#define __DCMI_CLK_ENABLE __HAL_RCC_DCMI_CLK_ENABLE -#define __DCMI_CLK_DISABLE __HAL_RCC_DCMI_CLK_DISABLE -#define __DCMI_FORCE_RESET __HAL_RCC_DCMI_FORCE_RESET -#define __DCMI_RELEASE_RESET __HAL_RCC_DCMI_RELEASE_RESET -#define __DCMI_CLK_SLEEP_ENABLE __HAL_RCC_DCMI_CLK_SLEEP_ENABLE -#define __DCMI_CLK_SLEEP_DISABLE __HAL_RCC_DCMI_CLK_SLEEP_DISABLE -#define __UART7_CLK_ENABLE __HAL_RCC_UART7_CLK_ENABLE -#define __UART7_CLK_DISABLE __HAL_RCC_UART7_CLK_DISABLE -#define __UART7_RELEASE_RESET __HAL_RCC_UART7_RELEASE_RESET -#define __UART7_FORCE_RESET __HAL_RCC_UART7_FORCE_RESET -#define __UART7_CLK_SLEEP_ENABLE __HAL_RCC_UART7_CLK_SLEEP_ENABLE -#define __UART7_CLK_SLEEP_DISABLE __HAL_RCC_UART7_CLK_SLEEP_DISABLE -#define __UART8_CLK_ENABLE __HAL_RCC_UART8_CLK_ENABLE -#define __UART8_CLK_DISABLE __HAL_RCC_UART8_CLK_DISABLE -#define __UART8_FORCE_RESET __HAL_RCC_UART8_FORCE_RESET -#define __UART8_RELEASE_RESET __HAL_RCC_UART8_RELEASE_RESET -#define __UART8_CLK_SLEEP_ENABLE __HAL_RCC_UART8_CLK_SLEEP_ENABLE -#define __UART8_CLK_SLEEP_DISABLE __HAL_RCC_UART8_CLK_SLEEP_DISABLE -#define __OTGHS_CLK_SLEEP_ENABLE __HAL_RCC_USB_OTG_HS_CLK_SLEEP_ENABLE -#define __OTGHS_CLK_SLEEP_DISABLE __HAL_RCC_USB_OTG_HS_CLK_SLEEP_DISABLE -#define __OTGHS_FORCE_RESET __HAL_RCC_USB_OTG_HS_FORCE_RESET -#define __OTGHS_RELEASE_RESET __HAL_RCC_USB_OTG_HS_RELEASE_RESET -#define __OTGHSULPI_CLK_SLEEP_ENABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_ENABLE -#define __OTGHSULPI_CLK_SLEEP_DISABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_DISABLE -#define __HAL_RCC_OTGHS_CLK_SLEEP_ENABLE __HAL_RCC_USB_OTG_HS_CLK_SLEEP_ENABLE -#define __HAL_RCC_OTGHS_CLK_SLEEP_DISABLE __HAL_RCC_USB_OTG_HS_CLK_SLEEP_DISABLE -#define __HAL_RCC_OTGHS_IS_CLK_SLEEP_ENABLED __HAL_RCC_USB_OTG_HS_IS_CLK_SLEEP_ENABLED -#define __HAL_RCC_OTGHS_IS_CLK_SLEEP_DISABLED __HAL_RCC_USB_OTG_HS_IS_CLK_SLEEP_DISABLED -#define __HAL_RCC_OTGHS_FORCE_RESET __HAL_RCC_USB_OTG_HS_FORCE_RESET -#define __HAL_RCC_OTGHS_RELEASE_RESET __HAL_RCC_USB_OTG_HS_RELEASE_RESET -#define __HAL_RCC_OTGHSULPI_CLK_SLEEP_ENABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_ENABLE -#define __HAL_RCC_OTGHSULPI_CLK_SLEEP_DISABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_DISABLE -#define __HAL_RCC_OTGHSULPI_IS_CLK_SLEEP_ENABLED __HAL_RCC_USB_OTG_HS_ULPI_IS_CLK_SLEEP_ENABLED -#define __HAL_RCC_OTGHSULPI_IS_CLK_SLEEP_DISABLED __HAL_RCC_USB_OTG_HS_ULPI_IS_CLK_SLEEP_DISABLED -#define __SRAM3_CLK_SLEEP_ENABLE __HAL_RCC_SRAM3_CLK_SLEEP_ENABLE -#define __CAN2_CLK_SLEEP_ENABLE __HAL_RCC_CAN2_CLK_SLEEP_ENABLE -#define __CAN2_CLK_SLEEP_DISABLE __HAL_RCC_CAN2_CLK_SLEEP_DISABLE -#define __DAC_CLK_SLEEP_ENABLE __HAL_RCC_DAC_CLK_SLEEP_ENABLE -#define __DAC_CLK_SLEEP_DISABLE __HAL_RCC_DAC_CLK_SLEEP_DISABLE -#define __ADC2_CLK_SLEEP_ENABLE __HAL_RCC_ADC2_CLK_SLEEP_ENABLE -#define __ADC2_CLK_SLEEP_DISABLE __HAL_RCC_ADC2_CLK_SLEEP_DISABLE -#define __ADC3_CLK_SLEEP_ENABLE __HAL_RCC_ADC3_CLK_SLEEP_ENABLE -#define __ADC3_CLK_SLEEP_DISABLE __HAL_RCC_ADC3_CLK_SLEEP_DISABLE -#define __FSMC_FORCE_RESET __HAL_RCC_FSMC_FORCE_RESET -#define __FSMC_RELEASE_RESET __HAL_RCC_FSMC_RELEASE_RESET -#define __FSMC_CLK_SLEEP_ENABLE __HAL_RCC_FSMC_CLK_SLEEP_ENABLE -#define __FSMC_CLK_SLEEP_DISABLE __HAL_RCC_FSMC_CLK_SLEEP_DISABLE -#define __SDIO_FORCE_RESET __HAL_RCC_SDIO_FORCE_RESET -#define __SDIO_RELEASE_RESET __HAL_RCC_SDIO_RELEASE_RESET -#define __SDIO_CLK_SLEEP_DISABLE __HAL_RCC_SDIO_CLK_SLEEP_DISABLE -#define __SDIO_CLK_SLEEP_ENABLE __HAL_RCC_SDIO_CLK_SLEEP_ENABLE -#define __DMA2D_CLK_ENABLE __HAL_RCC_DMA2D_CLK_ENABLE -#define __DMA2D_CLK_DISABLE __HAL_RCC_DMA2D_CLK_DISABLE -#define __DMA2D_FORCE_RESET __HAL_RCC_DMA2D_FORCE_RESET -#define __DMA2D_RELEASE_RESET __HAL_RCC_DMA2D_RELEASE_RESET -#define __DMA2D_CLK_SLEEP_ENABLE __HAL_RCC_DMA2D_CLK_SLEEP_ENABLE -#define __DMA2D_CLK_SLEEP_DISABLE __HAL_RCC_DMA2D_CLK_SLEEP_DISABLE - -/* alias define maintained for legacy */ -#define __HAL_RCC_OTGFS_FORCE_RESET __HAL_RCC_USB_OTG_FS_FORCE_RESET -#define __HAL_RCC_OTGFS_RELEASE_RESET __HAL_RCC_USB_OTG_FS_RELEASE_RESET - -#define __ADC12_CLK_ENABLE __HAL_RCC_ADC12_CLK_ENABLE -#define __ADC12_CLK_DISABLE __HAL_RCC_ADC12_CLK_DISABLE -#define __ADC34_CLK_ENABLE __HAL_RCC_ADC34_CLK_ENABLE -#define __ADC34_CLK_DISABLE __HAL_RCC_ADC34_CLK_DISABLE -#define __DAC2_CLK_ENABLE __HAL_RCC_DAC2_CLK_ENABLE -#define __DAC2_CLK_DISABLE __HAL_RCC_DAC2_CLK_DISABLE -#define __TIM18_CLK_ENABLE __HAL_RCC_TIM18_CLK_ENABLE -#define __TIM18_CLK_DISABLE __HAL_RCC_TIM18_CLK_DISABLE -#define __TIM19_CLK_ENABLE __HAL_RCC_TIM19_CLK_ENABLE -#define __TIM19_CLK_DISABLE __HAL_RCC_TIM19_CLK_DISABLE -#define __TIM20_CLK_ENABLE __HAL_RCC_TIM20_CLK_ENABLE -#define __TIM20_CLK_DISABLE __HAL_RCC_TIM20_CLK_DISABLE -#define __HRTIM1_CLK_ENABLE __HAL_RCC_HRTIM1_CLK_ENABLE -#define __HRTIM1_CLK_DISABLE __HAL_RCC_HRTIM1_CLK_DISABLE -#define __SDADC1_CLK_ENABLE __HAL_RCC_SDADC1_CLK_ENABLE -#define __SDADC2_CLK_ENABLE __HAL_RCC_SDADC2_CLK_ENABLE -#define __SDADC3_CLK_ENABLE __HAL_RCC_SDADC3_CLK_ENABLE -#define __SDADC1_CLK_DISABLE __HAL_RCC_SDADC1_CLK_DISABLE -#define __SDADC2_CLK_DISABLE __HAL_RCC_SDADC2_CLK_DISABLE -#define __SDADC3_CLK_DISABLE __HAL_RCC_SDADC3_CLK_DISABLE - -#define __ADC12_FORCE_RESET __HAL_RCC_ADC12_FORCE_RESET -#define __ADC12_RELEASE_RESET __HAL_RCC_ADC12_RELEASE_RESET -#define __ADC34_FORCE_RESET __HAL_RCC_ADC34_FORCE_RESET -#define __ADC34_RELEASE_RESET __HAL_RCC_ADC34_RELEASE_RESET -#define __DAC2_FORCE_RESET __HAL_RCC_DAC2_FORCE_RESET -#define __DAC2_RELEASE_RESET __HAL_RCC_DAC2_RELEASE_RESET -#define __TIM18_FORCE_RESET __HAL_RCC_TIM18_FORCE_RESET -#define __TIM18_RELEASE_RESET __HAL_RCC_TIM18_RELEASE_RESET -#define __TIM19_FORCE_RESET __HAL_RCC_TIM19_FORCE_RESET -#define __TIM19_RELEASE_RESET __HAL_RCC_TIM19_RELEASE_RESET -#define __TIM20_FORCE_RESET __HAL_RCC_TIM20_FORCE_RESET -#define __TIM20_RELEASE_RESET __HAL_RCC_TIM20_RELEASE_RESET -#define __HRTIM1_FORCE_RESET __HAL_RCC_HRTIM1_FORCE_RESET -#define __HRTIM1_RELEASE_RESET __HAL_RCC_HRTIM1_RELEASE_RESET -#define __SDADC1_FORCE_RESET __HAL_RCC_SDADC1_FORCE_RESET -#define __SDADC2_FORCE_RESET __HAL_RCC_SDADC2_FORCE_RESET -#define __SDADC3_FORCE_RESET __HAL_RCC_SDADC3_FORCE_RESET -#define __SDADC1_RELEASE_RESET __HAL_RCC_SDADC1_RELEASE_RESET -#define __SDADC2_RELEASE_RESET __HAL_RCC_SDADC2_RELEASE_RESET -#define __SDADC3_RELEASE_RESET __HAL_RCC_SDADC3_RELEASE_RESET - -#define __ADC1_IS_CLK_ENABLED __HAL_RCC_ADC1_IS_CLK_ENABLED -#define __ADC1_IS_CLK_DISABLED __HAL_RCC_ADC1_IS_CLK_DISABLED -#define __ADC12_IS_CLK_ENABLED __HAL_RCC_ADC12_IS_CLK_ENABLED -#define __ADC12_IS_CLK_DISABLED __HAL_RCC_ADC12_IS_CLK_DISABLED -#define __ADC34_IS_CLK_ENABLED __HAL_RCC_ADC34_IS_CLK_ENABLED -#define __ADC34_IS_CLK_DISABLED __HAL_RCC_ADC34_IS_CLK_DISABLED -#define __CEC_IS_CLK_ENABLED __HAL_RCC_CEC_IS_CLK_ENABLED -#define __CEC_IS_CLK_DISABLED __HAL_RCC_CEC_IS_CLK_DISABLED -#define __CRC_IS_CLK_ENABLED __HAL_RCC_CRC_IS_CLK_ENABLED -#define __CRC_IS_CLK_DISABLED __HAL_RCC_CRC_IS_CLK_DISABLED -#define __DAC1_IS_CLK_ENABLED __HAL_RCC_DAC1_IS_CLK_ENABLED -#define __DAC1_IS_CLK_DISABLED __HAL_RCC_DAC1_IS_CLK_DISABLED -#define __DAC2_IS_CLK_ENABLED __HAL_RCC_DAC2_IS_CLK_ENABLED -#define __DAC2_IS_CLK_DISABLED __HAL_RCC_DAC2_IS_CLK_DISABLED -#define __DMA1_IS_CLK_ENABLED __HAL_RCC_DMA1_IS_CLK_ENABLED -#define __DMA1_IS_CLK_DISABLED __HAL_RCC_DMA1_IS_CLK_DISABLED -#define __DMA2_IS_CLK_ENABLED __HAL_RCC_DMA2_IS_CLK_ENABLED -#define __DMA2_IS_CLK_DISABLED __HAL_RCC_DMA2_IS_CLK_DISABLED -#define __FLITF_IS_CLK_ENABLED __HAL_RCC_FLITF_IS_CLK_ENABLED -#define __FLITF_IS_CLK_DISABLED __HAL_RCC_FLITF_IS_CLK_DISABLED -#define __FMC_IS_CLK_ENABLED __HAL_RCC_FMC_IS_CLK_ENABLED -#define __FMC_IS_CLK_DISABLED __HAL_RCC_FMC_IS_CLK_DISABLED -#define __GPIOA_IS_CLK_ENABLED __HAL_RCC_GPIOA_IS_CLK_ENABLED -#define __GPIOA_IS_CLK_DISABLED __HAL_RCC_GPIOA_IS_CLK_DISABLED -#define __GPIOB_IS_CLK_ENABLED __HAL_RCC_GPIOB_IS_CLK_ENABLED -#define __GPIOB_IS_CLK_DISABLED __HAL_RCC_GPIOB_IS_CLK_DISABLED -#define __GPIOC_IS_CLK_ENABLED __HAL_RCC_GPIOC_IS_CLK_ENABLED -#define __GPIOC_IS_CLK_DISABLED __HAL_RCC_GPIOC_IS_CLK_DISABLED -#define __GPIOD_IS_CLK_ENABLED __HAL_RCC_GPIOD_IS_CLK_ENABLED -#define __GPIOD_IS_CLK_DISABLED __HAL_RCC_GPIOD_IS_CLK_DISABLED -#define __GPIOE_IS_CLK_ENABLED __HAL_RCC_GPIOE_IS_CLK_ENABLED -#define __GPIOE_IS_CLK_DISABLED __HAL_RCC_GPIOE_IS_CLK_DISABLED -#define __GPIOF_IS_CLK_ENABLED __HAL_RCC_GPIOF_IS_CLK_ENABLED -#define __GPIOF_IS_CLK_DISABLED __HAL_RCC_GPIOF_IS_CLK_DISABLED -#define __GPIOG_IS_CLK_ENABLED __HAL_RCC_GPIOG_IS_CLK_ENABLED -#define __GPIOG_IS_CLK_DISABLED __HAL_RCC_GPIOG_IS_CLK_DISABLED -#define __GPIOH_IS_CLK_ENABLED __HAL_RCC_GPIOH_IS_CLK_ENABLED -#define __GPIOH_IS_CLK_DISABLED __HAL_RCC_GPIOH_IS_CLK_DISABLED -#define __HRTIM1_IS_CLK_ENABLED __HAL_RCC_HRTIM1_IS_CLK_ENABLED -#define __HRTIM1_IS_CLK_DISABLED __HAL_RCC_HRTIM1_IS_CLK_DISABLED -#define __I2C1_IS_CLK_ENABLED __HAL_RCC_I2C1_IS_CLK_ENABLED -#define __I2C1_IS_CLK_DISABLED __HAL_RCC_I2C1_IS_CLK_DISABLED -#define __I2C2_IS_CLK_ENABLED __HAL_RCC_I2C2_IS_CLK_ENABLED -#define __I2C2_IS_CLK_DISABLED __HAL_RCC_I2C2_IS_CLK_DISABLED -#define __I2C3_IS_CLK_ENABLED __HAL_RCC_I2C3_IS_CLK_ENABLED -#define __I2C3_IS_CLK_DISABLED __HAL_RCC_I2C3_IS_CLK_DISABLED -#define __PWR_IS_CLK_ENABLED __HAL_RCC_PWR_IS_CLK_ENABLED -#define __PWR_IS_CLK_DISABLED __HAL_RCC_PWR_IS_CLK_DISABLED -#define __SYSCFG_IS_CLK_ENABLED __HAL_RCC_SYSCFG_IS_CLK_ENABLED -#define __SYSCFG_IS_CLK_DISABLED __HAL_RCC_SYSCFG_IS_CLK_DISABLED -#define __SPI1_IS_CLK_ENABLED __HAL_RCC_SPI1_IS_CLK_ENABLED -#define __SPI1_IS_CLK_DISABLED __HAL_RCC_SPI1_IS_CLK_DISABLED -#define __SPI2_IS_CLK_ENABLED __HAL_RCC_SPI2_IS_CLK_ENABLED -#define __SPI2_IS_CLK_DISABLED __HAL_RCC_SPI2_IS_CLK_DISABLED -#define __SPI3_IS_CLK_ENABLED __HAL_RCC_SPI3_IS_CLK_ENABLED -#define __SPI3_IS_CLK_DISABLED __HAL_RCC_SPI3_IS_CLK_DISABLED -#define __SPI4_IS_CLK_ENABLED __HAL_RCC_SPI4_IS_CLK_ENABLED -#define __SPI4_IS_CLK_DISABLED __HAL_RCC_SPI4_IS_CLK_DISABLED -#define __SDADC1_IS_CLK_ENABLED __HAL_RCC_SDADC1_IS_CLK_ENABLED -#define __SDADC1_IS_CLK_DISABLED __HAL_RCC_SDADC1_IS_CLK_DISABLED -#define __SDADC2_IS_CLK_ENABLED __HAL_RCC_SDADC2_IS_CLK_ENABLED -#define __SDADC2_IS_CLK_DISABLED __HAL_RCC_SDADC2_IS_CLK_DISABLED -#define __SDADC3_IS_CLK_ENABLED __HAL_RCC_SDADC3_IS_CLK_ENABLED -#define __SDADC3_IS_CLK_DISABLED __HAL_RCC_SDADC3_IS_CLK_DISABLED -#define __SRAM_IS_CLK_ENABLED __HAL_RCC_SRAM_IS_CLK_ENABLED -#define __SRAM_IS_CLK_DISABLED __HAL_RCC_SRAM_IS_CLK_DISABLED -#define __TIM1_IS_CLK_ENABLED __HAL_RCC_TIM1_IS_CLK_ENABLED -#define __TIM1_IS_CLK_DISABLED __HAL_RCC_TIM1_IS_CLK_DISABLED -#define __TIM2_IS_CLK_ENABLED __HAL_RCC_TIM2_IS_CLK_ENABLED -#define __TIM2_IS_CLK_DISABLED __HAL_RCC_TIM2_IS_CLK_DISABLED -#define __TIM3_IS_CLK_ENABLED __HAL_RCC_TIM3_IS_CLK_ENABLED -#define __TIM3_IS_CLK_DISABLED __HAL_RCC_TIM3_IS_CLK_DISABLED -#define __TIM4_IS_CLK_ENABLED __HAL_RCC_TIM4_IS_CLK_ENABLED -#define __TIM4_IS_CLK_DISABLED __HAL_RCC_TIM4_IS_CLK_DISABLED -#define __TIM5_IS_CLK_ENABLED __HAL_RCC_TIM5_IS_CLK_ENABLED -#define __TIM5_IS_CLK_DISABLED __HAL_RCC_TIM5_IS_CLK_DISABLED -#define __TIM6_IS_CLK_ENABLED __HAL_RCC_TIM6_IS_CLK_ENABLED -#define __TIM6_IS_CLK_DISABLED __HAL_RCC_TIM6_IS_CLK_DISABLED -#define __TIM7_IS_CLK_ENABLED __HAL_RCC_TIM7_IS_CLK_ENABLED -#define __TIM7_IS_CLK_DISABLED __HAL_RCC_TIM7_IS_CLK_DISABLED -#define __TIM8_IS_CLK_ENABLED __HAL_RCC_TIM8_IS_CLK_ENABLED -#define __TIM8_IS_CLK_DISABLED __HAL_RCC_TIM8_IS_CLK_DISABLED -#define __TIM12_IS_CLK_ENABLED __HAL_RCC_TIM12_IS_CLK_ENABLED -#define __TIM12_IS_CLK_DISABLED __HAL_RCC_TIM12_IS_CLK_DISABLED -#define __TIM13_IS_CLK_ENABLED __HAL_RCC_TIM13_IS_CLK_ENABLED -#define __TIM13_IS_CLK_DISABLED __HAL_RCC_TIM13_IS_CLK_DISABLED -#define __TIM14_IS_CLK_ENABLED __HAL_RCC_TIM14_IS_CLK_ENABLED -#define __TIM14_IS_CLK_DISABLED __HAL_RCC_TIM14_IS_CLK_DISABLED -#define __TIM15_IS_CLK_ENABLED __HAL_RCC_TIM15_IS_CLK_ENABLED -#define __TIM15_IS_CLK_DISABLED __HAL_RCC_TIM15_IS_CLK_DISABLED -#define __TIM16_IS_CLK_ENABLED __HAL_RCC_TIM16_IS_CLK_ENABLED -#define __TIM16_IS_CLK_DISABLED __HAL_RCC_TIM16_IS_CLK_DISABLED -#define __TIM17_IS_CLK_ENABLED __HAL_RCC_TIM17_IS_CLK_ENABLED -#define __TIM17_IS_CLK_DISABLED __HAL_RCC_TIM17_IS_CLK_DISABLED -#define __TIM18_IS_CLK_ENABLED __HAL_RCC_TIM18_IS_CLK_ENABLED -#define __TIM18_IS_CLK_DISABLED __HAL_RCC_TIM18_IS_CLK_DISABLED -#define __TIM19_IS_CLK_ENABLED __HAL_RCC_TIM19_IS_CLK_ENABLED -#define __TIM19_IS_CLK_DISABLED __HAL_RCC_TIM19_IS_CLK_DISABLED -#define __TIM20_IS_CLK_ENABLED __HAL_RCC_TIM20_IS_CLK_ENABLED -#define __TIM20_IS_CLK_DISABLED __HAL_RCC_TIM20_IS_CLK_DISABLED -#define __TSC_IS_CLK_ENABLED __HAL_RCC_TSC_IS_CLK_ENABLED -#define __TSC_IS_CLK_DISABLED __HAL_RCC_TSC_IS_CLK_DISABLED -#define __UART4_IS_CLK_ENABLED __HAL_RCC_UART4_IS_CLK_ENABLED -#define __UART4_IS_CLK_DISABLED __HAL_RCC_UART4_IS_CLK_DISABLED -#define __UART5_IS_CLK_ENABLED __HAL_RCC_UART5_IS_CLK_ENABLED -#define __UART5_IS_CLK_DISABLED __HAL_RCC_UART5_IS_CLK_DISABLED -#define __USART1_IS_CLK_ENABLED __HAL_RCC_USART1_IS_CLK_ENABLED -#define __USART1_IS_CLK_DISABLED __HAL_RCC_USART1_IS_CLK_DISABLED -#define __USART2_IS_CLK_ENABLED __HAL_RCC_USART2_IS_CLK_ENABLED -#define __USART2_IS_CLK_DISABLED __HAL_RCC_USART2_IS_CLK_DISABLED -#define __USART3_IS_CLK_ENABLED __HAL_RCC_USART3_IS_CLK_ENABLED -#define __USART3_IS_CLK_DISABLED __HAL_RCC_USART3_IS_CLK_DISABLED -#define __USB_IS_CLK_ENABLED __HAL_RCC_USB_IS_CLK_ENABLED -#define __USB_IS_CLK_DISABLED __HAL_RCC_USB_IS_CLK_DISABLED -#define __WWDG_IS_CLK_ENABLED __HAL_RCC_WWDG_IS_CLK_ENABLED -#define __WWDG_IS_CLK_DISABLED __HAL_RCC_WWDG_IS_CLK_DISABLED - -#if defined(STM32L1) -#define __HAL_RCC_CRYP_CLK_DISABLE __HAL_RCC_AES_CLK_DISABLE -#define __HAL_RCC_CRYP_CLK_ENABLE __HAL_RCC_AES_CLK_ENABLE -#define __HAL_RCC_CRYP_CLK_SLEEP_DISABLE __HAL_RCC_AES_CLK_SLEEP_DISABLE -#define __HAL_RCC_CRYP_CLK_SLEEP_ENABLE __HAL_RCC_AES_CLK_SLEEP_ENABLE -#define __HAL_RCC_CRYP_FORCE_RESET __HAL_RCC_AES_FORCE_RESET -#define __HAL_RCC_CRYP_RELEASE_RESET __HAL_RCC_AES_RELEASE_RESET -#endif /* STM32L1 */ - -#if defined(STM32F4) -#define __HAL_RCC_SDMMC1_FORCE_RESET __HAL_RCC_SDIO_FORCE_RESET -#define __HAL_RCC_SDMMC1_RELEASE_RESET __HAL_RCC_SDIO_RELEASE_RESET -#define __HAL_RCC_SDMMC1_CLK_SLEEP_ENABLE __HAL_RCC_SDIO_CLK_SLEEP_ENABLE -#define __HAL_RCC_SDMMC1_CLK_SLEEP_DISABLE __HAL_RCC_SDIO_CLK_SLEEP_DISABLE -#define __HAL_RCC_SDMMC1_CLK_ENABLE __HAL_RCC_SDIO_CLK_ENABLE -#define __HAL_RCC_SDMMC1_CLK_DISABLE __HAL_RCC_SDIO_CLK_DISABLE -#define __HAL_RCC_SDMMC1_IS_CLK_ENABLED __HAL_RCC_SDIO_IS_CLK_ENABLED -#define __HAL_RCC_SDMMC1_IS_CLK_DISABLED __HAL_RCC_SDIO_IS_CLK_DISABLED -#define Sdmmc1ClockSelection SdioClockSelection -#define RCC_PERIPHCLK_SDMMC1 RCC_PERIPHCLK_SDIO -#define RCC_SDMMC1CLKSOURCE_CLK48 RCC_SDIOCLKSOURCE_CK48 -#define RCC_SDMMC1CLKSOURCE_SYSCLK RCC_SDIOCLKSOURCE_SYSCLK -#define __HAL_RCC_SDMMC1_CONFIG __HAL_RCC_SDIO_CONFIG -#define __HAL_RCC_GET_SDMMC1_SOURCE __HAL_RCC_GET_SDIO_SOURCE -#endif - -#if defined(STM32F7) || defined(STM32L4) -#define __HAL_RCC_SDIO_FORCE_RESET __HAL_RCC_SDMMC1_FORCE_RESET -#define __HAL_RCC_SDIO_RELEASE_RESET __HAL_RCC_SDMMC1_RELEASE_RESET -#define __HAL_RCC_SDIO_CLK_SLEEP_ENABLE __HAL_RCC_SDMMC1_CLK_SLEEP_ENABLE -#define __HAL_RCC_SDIO_CLK_SLEEP_DISABLE __HAL_RCC_SDMMC1_CLK_SLEEP_DISABLE -#define __HAL_RCC_SDIO_CLK_ENABLE __HAL_RCC_SDMMC1_CLK_ENABLE -#define __HAL_RCC_SDIO_CLK_DISABLE __HAL_RCC_SDMMC1_CLK_DISABLE -#define __HAL_RCC_SDIO_IS_CLK_ENABLED __HAL_RCC_SDMMC1_IS_CLK_ENABLED -#define __HAL_RCC_SDIO_IS_CLK_DISABLED __HAL_RCC_SDMMC1_IS_CLK_DISABLED -#define SdioClockSelection Sdmmc1ClockSelection -#define RCC_PERIPHCLK_SDIO RCC_PERIPHCLK_SDMMC1 -#define __HAL_RCC_SDIO_CONFIG __HAL_RCC_SDMMC1_CONFIG -#define __HAL_RCC_GET_SDIO_SOURCE __HAL_RCC_GET_SDMMC1_SOURCE -#endif - -#if defined(STM32F7) -#define RCC_SDIOCLKSOURCE_CLK48 RCC_SDMMC1CLKSOURCE_CLK48 -#define RCC_SDIOCLKSOURCE_SYSCLK RCC_SDMMC1CLKSOURCE_SYSCLK -#endif - -#if defined(STM32H7) -#define __HAL_RCC_USB_OTG_HS_CLK_ENABLE() __HAL_RCC_USB1_OTG_HS_CLK_ENABLE() -#define __HAL_RCC_USB_OTG_HS_ULPI_CLK_ENABLE() __HAL_RCC_USB1_OTG_HS_ULPI_CLK_ENABLE() -#define __HAL_RCC_USB_OTG_HS_CLK_DISABLE() __HAL_RCC_USB1_OTG_HS_CLK_DISABLE() -#define __HAL_RCC_USB_OTG_HS_ULPI_CLK_DISABLE() __HAL_RCC_USB1_OTG_HS_ULPI_CLK_DISABLE() -#define __HAL_RCC_USB_OTG_HS_FORCE_RESET() __HAL_RCC_USB1_OTG_HS_FORCE_RESET() -#define __HAL_RCC_USB_OTG_HS_RELEASE_RESET() __HAL_RCC_USB1_OTG_HS_RELEASE_RESET() -#define __HAL_RCC_USB_OTG_HS_CLK_SLEEP_ENABLE() __HAL_RCC_USB1_OTG_HS_CLK_SLEEP_ENABLE() -#define __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_ENABLE() __HAL_RCC_USB1_OTG_HS_ULPI_CLK_SLEEP_ENABLE() -#define __HAL_RCC_USB_OTG_HS_CLK_SLEEP_DISABLE() __HAL_RCC_USB1_OTG_HS_CLK_SLEEP_DISABLE() -#define __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_DISABLE() __HAL_RCC_USB1_OTG_HS_ULPI_CLK_SLEEP_DISABLE() - -#define __HAL_RCC_USB_OTG_FS_CLK_ENABLE() __HAL_RCC_USB2_OTG_FS_CLK_ENABLE() -#define __HAL_RCC_USB_OTG_FS_ULPI_CLK_ENABLE() __HAL_RCC_USB2_OTG_FS_ULPI_CLK_ENABLE() -#define __HAL_RCC_USB_OTG_FS_CLK_DISABLE() __HAL_RCC_USB2_OTG_FS_CLK_DISABLE() -#define __HAL_RCC_USB_OTG_FS_ULPI_CLK_DISABLE() __HAL_RCC_USB2_OTG_FS_ULPI_CLK_DISABLE() -#define __HAL_RCC_USB_OTG_FS_FORCE_RESET() __HAL_RCC_USB2_OTG_FS_FORCE_RESET() -#define __HAL_RCC_USB_OTG_FS_RELEASE_RESET() __HAL_RCC_USB2_OTG_FS_RELEASE_RESET() -#define __HAL_RCC_USB_OTG_FS_CLK_SLEEP_ENABLE() __HAL_RCC_USB2_OTG_FS_CLK_SLEEP_ENABLE() -#define __HAL_RCC_USB_OTG_FS_ULPI_CLK_SLEEP_ENABLE() __HAL_RCC_USB2_OTG_FS_ULPI_CLK_SLEEP_ENABLE() -#define __HAL_RCC_USB_OTG_FS_CLK_SLEEP_DISABLE() __HAL_RCC_USB2_OTG_FS_CLK_SLEEP_DISABLE() -#define __HAL_RCC_USB_OTG_FS_ULPI_CLK_SLEEP_DISABLE() __HAL_RCC_USB2_OTG_FS_ULPI_CLK_SLEEP_DISABLE() -#endif - -#define __HAL_RCC_I2SCLK __HAL_RCC_I2S_CONFIG -#define __HAL_RCC_I2SCLK_CONFIG __HAL_RCC_I2S_CONFIG - -#define __RCC_PLLSRC RCC_GET_PLL_OSCSOURCE - -#define IS_RCC_MSIRANGE IS_RCC_MSI_CLOCK_RANGE -#define IS_RCC_RTCCLK_SOURCE IS_RCC_RTCCLKSOURCE -#define IS_RCC_SYSCLK_DIV IS_RCC_HCLK -#define IS_RCC_HCLK_DIV IS_RCC_PCLK -#define IS_RCC_PERIPHCLK IS_RCC_PERIPHCLOCK - -#define RCC_IT_HSI14 RCC_IT_HSI14RDY - -#define RCC_IT_CSSLSE RCC_IT_LSECSS -#define RCC_IT_CSSHSE RCC_IT_CSS - -#define RCC_PLLMUL_3 RCC_PLL_MUL3 -#define RCC_PLLMUL_4 RCC_PLL_MUL4 -#define RCC_PLLMUL_6 RCC_PLL_MUL6 -#define RCC_PLLMUL_8 RCC_PLL_MUL8 -#define RCC_PLLMUL_12 RCC_PLL_MUL12 -#define RCC_PLLMUL_16 RCC_PLL_MUL16 -#define RCC_PLLMUL_24 RCC_PLL_MUL24 -#define RCC_PLLMUL_32 RCC_PLL_MUL32 -#define RCC_PLLMUL_48 RCC_PLL_MUL48 - -#define RCC_PLLDIV_2 RCC_PLL_DIV2 -#define RCC_PLLDIV_3 RCC_PLL_DIV3 -#define RCC_PLLDIV_4 RCC_PLL_DIV4 - -#define IS_RCC_MCOSOURCE IS_RCC_MCO1SOURCE -#define __HAL_RCC_MCO_CONFIG __HAL_RCC_MCO1_CONFIG -#define RCC_MCO_NODIV RCC_MCODIV_1 -#define RCC_MCO_DIV1 RCC_MCODIV_1 -#define RCC_MCO_DIV2 RCC_MCODIV_2 -#define RCC_MCO_DIV4 RCC_MCODIV_4 -#define RCC_MCO_DIV8 RCC_MCODIV_8 -#define RCC_MCO_DIV16 RCC_MCODIV_16 -#define RCC_MCO_DIV32 RCC_MCODIV_32 -#define RCC_MCO_DIV64 RCC_MCODIV_64 -#define RCC_MCO_DIV128 RCC_MCODIV_128 -#define RCC_MCOSOURCE_NONE RCC_MCO1SOURCE_NOCLOCK -#define RCC_MCOSOURCE_LSI RCC_MCO1SOURCE_LSI -#define RCC_MCOSOURCE_LSE RCC_MCO1SOURCE_LSE -#define RCC_MCOSOURCE_SYSCLK RCC_MCO1SOURCE_SYSCLK -#define RCC_MCOSOURCE_HSI RCC_MCO1SOURCE_HSI -#define RCC_MCOSOURCE_HSI14 RCC_MCO1SOURCE_HSI14 -#define RCC_MCOSOURCE_HSI48 RCC_MCO1SOURCE_HSI48 -#define RCC_MCOSOURCE_HSE RCC_MCO1SOURCE_HSE -#define RCC_MCOSOURCE_PLLCLK_DIV1 RCC_MCO1SOURCE_PLLCLK -#define RCC_MCOSOURCE_PLLCLK_NODIV RCC_MCO1SOURCE_PLLCLK -#define RCC_MCOSOURCE_PLLCLK_DIV2 RCC_MCO1SOURCE_PLLCLK_DIV2 - -#if defined(STM32L4) || defined(STM32WB) || defined(STM32G0) || defined(STM32G4) || defined(STM32L5) || defined(STM32WL) -#define RCC_RTCCLKSOURCE_NO_CLK RCC_RTCCLKSOURCE_NONE -#else -#define RCC_RTCCLKSOURCE_NONE RCC_RTCCLKSOURCE_NO_CLK -#endif - -#define RCC_USBCLK_PLLSAI1 RCC_USBCLKSOURCE_PLLSAI1 -#define RCC_USBCLK_PLL RCC_USBCLKSOURCE_PLL -#define RCC_USBCLK_MSI RCC_USBCLKSOURCE_MSI -#define RCC_USBCLKSOURCE_PLLCLK RCC_USBCLKSOURCE_PLL -#define RCC_USBPLLCLK_DIV1 RCC_USBCLKSOURCE_PLL -#define RCC_USBPLLCLK_DIV1_5 RCC_USBCLKSOURCE_PLL_DIV1_5 -#define RCC_USBPLLCLK_DIV2 RCC_USBCLKSOURCE_PLL_DIV2 -#define RCC_USBPLLCLK_DIV3 RCC_USBCLKSOURCE_PLL_DIV3 - -#define HSION_BitNumber RCC_HSION_BIT_NUMBER -#define HSION_BITNUMBER RCC_HSION_BIT_NUMBER -#define HSEON_BitNumber RCC_HSEON_BIT_NUMBER -#define HSEON_BITNUMBER RCC_HSEON_BIT_NUMBER -#define MSION_BITNUMBER RCC_MSION_BIT_NUMBER -#define CSSON_BitNumber RCC_CSSON_BIT_NUMBER -#define CSSON_BITNUMBER RCC_CSSON_BIT_NUMBER -#define PLLON_BitNumber RCC_PLLON_BIT_NUMBER -#define PLLON_BITNUMBER RCC_PLLON_BIT_NUMBER -#define PLLI2SON_BitNumber RCC_PLLI2SON_BIT_NUMBER -#define I2SSRC_BitNumber RCC_I2SSRC_BIT_NUMBER -#define RTCEN_BitNumber RCC_RTCEN_BIT_NUMBER -#define RTCEN_BITNUMBER RCC_RTCEN_BIT_NUMBER -#define BDRST_BitNumber RCC_BDRST_BIT_NUMBER -#define BDRST_BITNUMBER RCC_BDRST_BIT_NUMBER -#define RTCRST_BITNUMBER RCC_RTCRST_BIT_NUMBER -#define LSION_BitNumber RCC_LSION_BIT_NUMBER -#define LSION_BITNUMBER RCC_LSION_BIT_NUMBER -#define LSEON_BitNumber RCC_LSEON_BIT_NUMBER -#define LSEON_BITNUMBER RCC_LSEON_BIT_NUMBER -#define LSEBYP_BITNUMBER RCC_LSEBYP_BIT_NUMBER -#define PLLSAION_BitNumber RCC_PLLSAION_BIT_NUMBER -#define TIMPRE_BitNumber RCC_TIMPRE_BIT_NUMBER -#define RMVF_BitNumber RCC_RMVF_BIT_NUMBER -#define RMVF_BITNUMBER RCC_RMVF_BIT_NUMBER -#define RCC_CR2_HSI14TRIM_BitNumber RCC_HSI14TRIM_BIT_NUMBER -#define CR_BYTE2_ADDRESS RCC_CR_BYTE2_ADDRESS -#define CIR_BYTE1_ADDRESS RCC_CIR_BYTE1_ADDRESS -#define CIR_BYTE2_ADDRESS RCC_CIR_BYTE2_ADDRESS -#define BDCR_BYTE0_ADDRESS RCC_BDCR_BYTE0_ADDRESS -#define DBP_TIMEOUT_VALUE RCC_DBP_TIMEOUT_VALUE -#define LSE_TIMEOUT_VALUE RCC_LSE_TIMEOUT_VALUE - -#define CR_HSION_BB RCC_CR_HSION_BB -#define CR_CSSON_BB RCC_CR_CSSON_BB -#define CR_PLLON_BB RCC_CR_PLLON_BB -#define CR_PLLI2SON_BB RCC_CR_PLLI2SON_BB -#define CR_MSION_BB RCC_CR_MSION_BB -#define CSR_LSION_BB RCC_CSR_LSION_BB -#define CSR_LSEON_BB RCC_CSR_LSEON_BB -#define CSR_LSEBYP_BB RCC_CSR_LSEBYP_BB -#define CSR_RTCEN_BB RCC_CSR_RTCEN_BB -#define CSR_RTCRST_BB RCC_CSR_RTCRST_BB -#define CFGR_I2SSRC_BB RCC_CFGR_I2SSRC_BB -#define BDCR_RTCEN_BB RCC_BDCR_RTCEN_BB -#define BDCR_BDRST_BB RCC_BDCR_BDRST_BB -#define CR_HSEON_BB RCC_CR_HSEON_BB -#define CSR_RMVF_BB RCC_CSR_RMVF_BB -#define CR_PLLSAION_BB RCC_CR_PLLSAION_BB -#define DCKCFGR_TIMPRE_BB RCC_DCKCFGR_TIMPRE_BB - -#define __HAL_RCC_CRS_ENABLE_FREQ_ERROR_COUNTER __HAL_RCC_CRS_FREQ_ERROR_COUNTER_ENABLE -#define __HAL_RCC_CRS_DISABLE_FREQ_ERROR_COUNTER __HAL_RCC_CRS_FREQ_ERROR_COUNTER_DISABLE -#define __HAL_RCC_CRS_ENABLE_AUTOMATIC_CALIB __HAL_RCC_CRS_AUTOMATIC_CALIB_ENABLE -#define __HAL_RCC_CRS_DISABLE_AUTOMATIC_CALIB __HAL_RCC_CRS_AUTOMATIC_CALIB_DISABLE -#define __HAL_RCC_CRS_CALCULATE_RELOADVALUE __HAL_RCC_CRS_RELOADVALUE_CALCULATE - -#define __HAL_RCC_GET_IT_SOURCE __HAL_RCC_GET_IT - -#define RCC_CRS_SYNCWARM RCC_CRS_SYNCWARN -#define RCC_CRS_TRIMOV RCC_CRS_TRIMOVF - -#define RCC_PERIPHCLK_CK48 RCC_PERIPHCLK_CLK48 -#define RCC_CK48CLKSOURCE_PLLQ RCC_CLK48CLKSOURCE_PLLQ -#define RCC_CK48CLKSOURCE_PLLSAIP RCC_CLK48CLKSOURCE_PLLSAIP -#define RCC_CK48CLKSOURCE_PLLI2SQ RCC_CLK48CLKSOURCE_PLLI2SQ -#define IS_RCC_CK48CLKSOURCE IS_RCC_CLK48CLKSOURCE -#define RCC_SDIOCLKSOURCE_CK48 RCC_SDIOCLKSOURCE_CLK48 - -#define __HAL_RCC_DFSDM_CLK_ENABLE __HAL_RCC_DFSDM1_CLK_ENABLE -#define __HAL_RCC_DFSDM_CLK_DISABLE __HAL_RCC_DFSDM1_CLK_DISABLE -#define __HAL_RCC_DFSDM_IS_CLK_ENABLED __HAL_RCC_DFSDM1_IS_CLK_ENABLED -#define __HAL_RCC_DFSDM_IS_CLK_DISABLED __HAL_RCC_DFSDM1_IS_CLK_DISABLED -#define __HAL_RCC_DFSDM_FORCE_RESET __HAL_RCC_DFSDM1_FORCE_RESET -#define __HAL_RCC_DFSDM_RELEASE_RESET __HAL_RCC_DFSDM1_RELEASE_RESET -#define __HAL_RCC_DFSDM_CLK_SLEEP_ENABLE __HAL_RCC_DFSDM1_CLK_SLEEP_ENABLE -#define __HAL_RCC_DFSDM_CLK_SLEEP_DISABLE __HAL_RCC_DFSDM1_CLK_SLEEP_DISABLE -#define __HAL_RCC_DFSDM_IS_CLK_SLEEP_ENABLED __HAL_RCC_DFSDM1_IS_CLK_SLEEP_ENABLED -#define __HAL_RCC_DFSDM_IS_CLK_SLEEP_DISABLED __HAL_RCC_DFSDM1_IS_CLK_SLEEP_DISABLED -#define DfsdmClockSelection Dfsdm1ClockSelection -#define RCC_PERIPHCLK_DFSDM RCC_PERIPHCLK_DFSDM1 -#define RCC_DFSDMCLKSOURCE_PCLK RCC_DFSDM1CLKSOURCE_PCLK2 -#define RCC_DFSDMCLKSOURCE_SYSCLK RCC_DFSDM1CLKSOURCE_SYSCLK -#define __HAL_RCC_DFSDM_CONFIG __HAL_RCC_DFSDM1_CONFIG -#define __HAL_RCC_GET_DFSDM_SOURCE __HAL_RCC_GET_DFSDM1_SOURCE -#define RCC_DFSDM1CLKSOURCE_PCLK RCC_DFSDM1CLKSOURCE_PCLK2 -#define RCC_SWPMI1CLKSOURCE_PCLK RCC_SWPMI1CLKSOURCE_PCLK1 -#define RCC_LPTIM1CLKSOURCE_PCLK RCC_LPTIM1CLKSOURCE_PCLK1 -#define RCC_LPTIM2CLKSOURCE_PCLK RCC_LPTIM2CLKSOURCE_PCLK1 - -#define RCC_DFSDM1AUDIOCLKSOURCE_I2SAPB1 RCC_DFSDM1AUDIOCLKSOURCE_I2S1 -#define RCC_DFSDM1AUDIOCLKSOURCE_I2SAPB2 RCC_DFSDM1AUDIOCLKSOURCE_I2S2 -#define RCC_DFSDM2AUDIOCLKSOURCE_I2SAPB1 RCC_DFSDM2AUDIOCLKSOURCE_I2S1 -#define RCC_DFSDM2AUDIOCLKSOURCE_I2SAPB2 RCC_DFSDM2AUDIOCLKSOURCE_I2S2 -#define RCC_DFSDM1CLKSOURCE_APB2 RCC_DFSDM1CLKSOURCE_PCLK2 -#define RCC_DFSDM2CLKSOURCE_APB2 RCC_DFSDM2CLKSOURCE_PCLK2 -#define RCC_FMPI2C1CLKSOURCE_APB RCC_FMPI2C1CLKSOURCE_PCLK1 - -/** - * @} - */ - -/** @defgroup HAL_RNG_Aliased_Macros HAL RNG Aliased Macros maintained for legacy purpose - * @{ - */ -#define HAL_RNG_ReadyCallback(__HANDLE__) HAL_RNG_ReadyDataCallback((__HANDLE__), uint32_t random32bit) - -/** - * @} - */ - -/** @defgroup HAL_RTC_Aliased_Macros HAL RTC Aliased Macros maintained for legacy purpose - * @{ - */ -#if defined (STM32G0) || defined (STM32L5) || defined (STM32L412xx) || defined (STM32L422xx) || defined (STM32L4P5xx) || defined (STM32L4Q5xx) || defined (STM32G4) || defined (STM32WL) -#else -#define __HAL_RTC_CLEAR_FLAG __HAL_RTC_EXTI_CLEAR_FLAG -#endif -#define __HAL_RTC_DISABLE_IT __HAL_RTC_EXTI_DISABLE_IT -#define __HAL_RTC_ENABLE_IT __HAL_RTC_EXTI_ENABLE_IT - -#if defined (STM32F1) -#define __HAL_RTC_EXTI_CLEAR_FLAG(RTC_EXTI_LINE_ALARM_EVENT) __HAL_RTC_ALARM_EXTI_CLEAR_FLAG() - -#define __HAL_RTC_EXTI_ENABLE_IT(RTC_EXTI_LINE_ALARM_EVENT) __HAL_RTC_ALARM_EXTI_ENABLE_IT() - -#define __HAL_RTC_EXTI_DISABLE_IT(RTC_EXTI_LINE_ALARM_EVENT) __HAL_RTC_ALARM_EXTI_DISABLE_IT() - -#define __HAL_RTC_EXTI_GET_FLAG(RTC_EXTI_LINE_ALARM_EVENT) __HAL_RTC_ALARM_EXTI_GET_FLAG() - -#define __HAL_RTC_EXTI_GENERATE_SWIT(RTC_EXTI_LINE_ALARM_EVENT) __HAL_RTC_ALARM_EXTI_GENERATE_SWIT() -#else -#define __HAL_RTC_EXTI_CLEAR_FLAG(__EXTI_LINE__) (((__EXTI_LINE__) == RTC_EXTI_LINE_ALARM_EVENT) ? __HAL_RTC_ALARM_EXTI_CLEAR_FLAG() : \ - (((__EXTI_LINE__) == RTC_EXTI_LINE_WAKEUPTIMER_EVENT) ? __HAL_RTC_WAKEUPTIMER_EXTI_CLEAR_FLAG() : \ - __HAL_RTC_TAMPER_TIMESTAMP_EXTI_CLEAR_FLAG())) -#define __HAL_RTC_EXTI_ENABLE_IT(__EXTI_LINE__) (((__EXTI_LINE__) == RTC_EXTI_LINE_ALARM_EVENT) ? __HAL_RTC_ALARM_EXTI_ENABLE_IT() : \ - (((__EXTI_LINE__) == RTC_EXTI_LINE_WAKEUPTIMER_EVENT) ? __HAL_RTC_WAKEUPTIMER_EXTI_ENABLE_IT() : \ - __HAL_RTC_TAMPER_TIMESTAMP_EXTI_ENABLE_IT())) -#define __HAL_RTC_EXTI_DISABLE_IT(__EXTI_LINE__) (((__EXTI_LINE__) == RTC_EXTI_LINE_ALARM_EVENT) ? __HAL_RTC_ALARM_EXTI_DISABLE_IT() : \ - (((__EXTI_LINE__) == RTC_EXTI_LINE_WAKEUPTIMER_EVENT) ? __HAL_RTC_WAKEUPTIMER_EXTI_DISABLE_IT() : \ - __HAL_RTC_TAMPER_TIMESTAMP_EXTI_DISABLE_IT())) -#define __HAL_RTC_EXTI_GET_FLAG(__EXTI_LINE__) (((__EXTI_LINE__) == RTC_EXTI_LINE_ALARM_EVENT) ? __HAL_RTC_ALARM_EXTI_GET_FLAG() : \ - (((__EXTI_LINE__) == RTC_EXTI_LINE_WAKEUPTIMER_EVENT) ? __HAL_RTC_WAKEUPTIMER_EXTI_GET_FLAG() : \ - __HAL_RTC_TAMPER_TIMESTAMP_EXTI_GET_FLAG())) -#define __HAL_RTC_EXTI_GENERATE_SWIT(__EXTI_LINE__) (((__EXTI_LINE__) == RTC_EXTI_LINE_ALARM_EVENT) ? __HAL_RTC_ALARM_EXTI_GENERATE_SWIT() : \ - (((__EXTI_LINE__) == RTC_EXTI_LINE_WAKEUPTIMER_EVENT) ? __HAL_RTC_WAKEUPTIMER_EXTI_GENERATE_SWIT() : \ - __HAL_RTC_TAMPER_TIMESTAMP_EXTI_GENERATE_SWIT())) -#endif /* STM32F1 */ - -#define IS_ALARM IS_RTC_ALARM -#define IS_ALARM_MASK IS_RTC_ALARM_MASK -#define IS_TAMPER IS_RTC_TAMPER -#define IS_TAMPER_ERASE_MODE IS_RTC_TAMPER_ERASE_MODE -#define IS_TAMPER_FILTER IS_RTC_TAMPER_FILTER -#define IS_TAMPER_INTERRUPT IS_RTC_TAMPER_INTERRUPT -#define IS_TAMPER_MASKFLAG_STATE IS_RTC_TAMPER_MASKFLAG_STATE -#define IS_TAMPER_PRECHARGE_DURATION IS_RTC_TAMPER_PRECHARGE_DURATION -#define IS_TAMPER_PULLUP_STATE IS_RTC_TAMPER_PULLUP_STATE -#define IS_TAMPER_SAMPLING_FREQ IS_RTC_TAMPER_SAMPLING_FREQ -#define IS_TAMPER_TIMESTAMPONTAMPER_DETECTION IS_RTC_TAMPER_TIMESTAMPONTAMPER_DETECTION -#define IS_TAMPER_TRIGGER IS_RTC_TAMPER_TRIGGER -#define IS_WAKEUP_CLOCK IS_RTC_WAKEUP_CLOCK -#define IS_WAKEUP_COUNTER IS_RTC_WAKEUP_COUNTER - -#define __RTC_WRITEPROTECTION_ENABLE __HAL_RTC_WRITEPROTECTION_ENABLE -#define __RTC_WRITEPROTECTION_DISABLE __HAL_RTC_WRITEPROTECTION_DISABLE - -/** - * @} - */ - -/** @defgroup HAL_SD_Aliased_Macros HAL SD Aliased Macros maintained for legacy purpose - * @{ - */ - -#define SD_OCR_CID_CSD_OVERWRIETE SD_OCR_CID_CSD_OVERWRITE -#define SD_CMD_SD_APP_STAUS SD_CMD_SD_APP_STATUS - -#if defined(STM32F4) || defined(STM32F2) -#define SD_SDMMC_DISABLED SD_SDIO_DISABLED -#define SD_SDMMC_FUNCTION_BUSY SD_SDIO_FUNCTION_BUSY -#define SD_SDMMC_FUNCTION_FAILED SD_SDIO_FUNCTION_FAILED -#define SD_SDMMC_UNKNOWN_FUNCTION SD_SDIO_UNKNOWN_FUNCTION -#define SD_CMD_SDMMC_SEN_OP_COND SD_CMD_SDIO_SEN_OP_COND -#define SD_CMD_SDMMC_RW_DIRECT SD_CMD_SDIO_RW_DIRECT -#define SD_CMD_SDMMC_RW_EXTENDED SD_CMD_SDIO_RW_EXTENDED -#define __HAL_SD_SDMMC_ENABLE __HAL_SD_SDIO_ENABLE -#define __HAL_SD_SDMMC_DISABLE __HAL_SD_SDIO_DISABLE -#define __HAL_SD_SDMMC_DMA_ENABLE __HAL_SD_SDIO_DMA_ENABLE -#define __HAL_SD_SDMMC_DMA_DISABLE __HAL_SD_SDIO_DMA_DISABL -#define __HAL_SD_SDMMC_ENABLE_IT __HAL_SD_SDIO_ENABLE_IT -#define __HAL_SD_SDMMC_DISABLE_IT __HAL_SD_SDIO_DISABLE_IT -#define __HAL_SD_SDMMC_GET_FLAG __HAL_SD_SDIO_GET_FLAG -#define __HAL_SD_SDMMC_CLEAR_FLAG __HAL_SD_SDIO_CLEAR_FLAG -#define __HAL_SD_SDMMC_GET_IT __HAL_SD_SDIO_GET_IT -#define __HAL_SD_SDMMC_CLEAR_IT __HAL_SD_SDIO_CLEAR_IT -#define SDMMC_STATIC_FLAGS SDIO_STATIC_FLAGS -#define SDMMC_CMD0TIMEOUT SDIO_CMD0TIMEOUT -#define SD_SDMMC_SEND_IF_COND SD_SDIO_SEND_IF_COND -/* alias CMSIS */ -#define SDMMC1_IRQn SDIO_IRQn -#define SDMMC1_IRQHandler SDIO_IRQHandler -#endif - -#if defined(STM32F7) || defined(STM32L4) -#define SD_SDIO_DISABLED SD_SDMMC_DISABLED -#define SD_SDIO_FUNCTION_BUSY SD_SDMMC_FUNCTION_BUSY -#define SD_SDIO_FUNCTION_FAILED SD_SDMMC_FUNCTION_FAILED -#define SD_SDIO_UNKNOWN_FUNCTION SD_SDMMC_UNKNOWN_FUNCTION -#define SD_CMD_SDIO_SEN_OP_COND SD_CMD_SDMMC_SEN_OP_COND -#define SD_CMD_SDIO_RW_DIRECT SD_CMD_SDMMC_RW_DIRECT -#define SD_CMD_SDIO_RW_EXTENDED SD_CMD_SDMMC_RW_EXTENDED -#define __HAL_SD_SDIO_ENABLE __HAL_SD_SDMMC_ENABLE -#define __HAL_SD_SDIO_DISABLE __HAL_SD_SDMMC_DISABLE -#define __HAL_SD_SDIO_DMA_ENABLE __HAL_SD_SDMMC_DMA_ENABLE -#define __HAL_SD_SDIO_DMA_DISABL __HAL_SD_SDMMC_DMA_DISABLE -#define __HAL_SD_SDIO_ENABLE_IT __HAL_SD_SDMMC_ENABLE_IT -#define __HAL_SD_SDIO_DISABLE_IT __HAL_SD_SDMMC_DISABLE_IT -#define __HAL_SD_SDIO_GET_FLAG __HAL_SD_SDMMC_GET_FLAG -#define __HAL_SD_SDIO_CLEAR_FLAG __HAL_SD_SDMMC_CLEAR_FLAG -#define __HAL_SD_SDIO_GET_IT __HAL_SD_SDMMC_GET_IT -#define __HAL_SD_SDIO_CLEAR_IT __HAL_SD_SDMMC_CLEAR_IT -#define SDIO_STATIC_FLAGS SDMMC_STATIC_FLAGS -#define SDIO_CMD0TIMEOUT SDMMC_CMD0TIMEOUT -#define SD_SDIO_SEND_IF_COND SD_SDMMC_SEND_IF_COND -/* alias CMSIS for compatibilities */ -#define SDIO_IRQn SDMMC1_IRQn -#define SDIO_IRQHandler SDMMC1_IRQHandler -#endif - -#if defined(STM32F7) || defined(STM32F4) || defined(STM32F2) || defined(STM32L4) || defined(STM32H7) -#define HAL_SD_CardCIDTypedef HAL_SD_CardCIDTypeDef -#define HAL_SD_CardCSDTypedef HAL_SD_CardCSDTypeDef -#define HAL_SD_CardStatusTypedef HAL_SD_CardStatusTypeDef -#define HAL_SD_CardStateTypedef HAL_SD_CardStateTypeDef -#endif - -#if defined(STM32H7) || defined(STM32L5) -#define HAL_MMCEx_Read_DMADoubleBuffer0CpltCallback HAL_MMCEx_Read_DMADoubleBuf0CpltCallback -#define HAL_MMCEx_Read_DMADoubleBuffer1CpltCallback HAL_MMCEx_Read_DMADoubleBuf1CpltCallback -#define HAL_MMCEx_Write_DMADoubleBuffer0CpltCallback HAL_MMCEx_Write_DMADoubleBuf0CpltCallback -#define HAL_MMCEx_Write_DMADoubleBuffer1CpltCallback HAL_MMCEx_Write_DMADoubleBuf1CpltCallback -#define HAL_SDEx_Read_DMADoubleBuffer0CpltCallback HAL_SDEx_Read_DMADoubleBuf0CpltCallback -#define HAL_SDEx_Read_DMADoubleBuffer1CpltCallback HAL_SDEx_Read_DMADoubleBuf1CpltCallback -#define HAL_SDEx_Write_DMADoubleBuffer0CpltCallback HAL_SDEx_Write_DMADoubleBuf0CpltCallback -#define HAL_SDEx_Write_DMADoubleBuffer1CpltCallback HAL_SDEx_Write_DMADoubleBuf1CpltCallback -#define HAL_SD_DriveTransciver_1_8V_Callback HAL_SD_DriveTransceiver_1_8V_Callback -#endif -/** - * @} - */ - -/** @defgroup HAL_SMARTCARD_Aliased_Macros HAL SMARTCARD Aliased Macros maintained for legacy purpose - * @{ - */ - -#define __SMARTCARD_ENABLE_IT __HAL_SMARTCARD_ENABLE_IT -#define __SMARTCARD_DISABLE_IT __HAL_SMARTCARD_DISABLE_IT -#define __SMARTCARD_ENABLE __HAL_SMARTCARD_ENABLE -#define __SMARTCARD_DISABLE __HAL_SMARTCARD_DISABLE -#define __SMARTCARD_DMA_REQUEST_ENABLE __HAL_SMARTCARD_DMA_REQUEST_ENABLE -#define __SMARTCARD_DMA_REQUEST_DISABLE __HAL_SMARTCARD_DMA_REQUEST_DISABLE - -#define __HAL_SMARTCARD_GETCLOCKSOURCE SMARTCARD_GETCLOCKSOURCE -#define __SMARTCARD_GETCLOCKSOURCE SMARTCARD_GETCLOCKSOURCE - -#define IS_SMARTCARD_ONEBIT_SAMPLING IS_SMARTCARD_ONE_BIT_SAMPLE - -/** - * @} - */ - -/** @defgroup HAL_SMBUS_Aliased_Macros HAL SMBUS Aliased Macros maintained for legacy purpose - * @{ - */ -#define __HAL_SMBUS_RESET_CR1 SMBUS_RESET_CR1 -#define __HAL_SMBUS_RESET_CR2 SMBUS_RESET_CR2 -#define __HAL_SMBUS_GENERATE_START SMBUS_GENERATE_START -#define __HAL_SMBUS_GET_ADDR_MATCH SMBUS_GET_ADDR_MATCH -#define __HAL_SMBUS_GET_DIR SMBUS_GET_DIR -#define __HAL_SMBUS_GET_STOP_MODE SMBUS_GET_STOP_MODE -#define __HAL_SMBUS_GET_PEC_MODE SMBUS_GET_PEC_MODE -#define __HAL_SMBUS_GET_ALERT_ENABLED SMBUS_GET_ALERT_ENABLED -/** - * @} - */ - -/** @defgroup HAL_SPI_Aliased_Macros HAL SPI Aliased Macros maintained for legacy purpose - * @{ - */ - -#define __HAL_SPI_1LINE_TX SPI_1LINE_TX -#define __HAL_SPI_1LINE_RX SPI_1LINE_RX -#define __HAL_SPI_RESET_CRC SPI_RESET_CRC - -/** - * @} - */ - -/** @defgroup HAL_UART_Aliased_Macros HAL UART Aliased Macros maintained for legacy purpose - * @{ - */ - -#define __HAL_UART_GETCLOCKSOURCE UART_GETCLOCKSOURCE -#define __HAL_UART_MASK_COMPUTATION UART_MASK_COMPUTATION -#define __UART_GETCLOCKSOURCE UART_GETCLOCKSOURCE -#define __UART_MASK_COMPUTATION UART_MASK_COMPUTATION - -#define IS_UART_WAKEUPMETHODE IS_UART_WAKEUPMETHOD - -#define IS_UART_ONEBIT_SAMPLE IS_UART_ONE_BIT_SAMPLE -#define IS_UART_ONEBIT_SAMPLING IS_UART_ONE_BIT_SAMPLE - -/** - * @} - */ - - -/** @defgroup HAL_USART_Aliased_Macros HAL USART Aliased Macros maintained for legacy purpose - * @{ - */ - -#define __USART_ENABLE_IT __HAL_USART_ENABLE_IT -#define __USART_DISABLE_IT __HAL_USART_DISABLE_IT -#define __USART_ENABLE __HAL_USART_ENABLE -#define __USART_DISABLE __HAL_USART_DISABLE - -#define __HAL_USART_GETCLOCKSOURCE USART_GETCLOCKSOURCE -#define __USART_GETCLOCKSOURCE USART_GETCLOCKSOURCE - -/** - * @} - */ - -/** @defgroup HAL_USB_Aliased_Macros HAL USB Aliased Macros maintained for legacy purpose - * @{ - */ -#define USB_EXTI_LINE_WAKEUP USB_WAKEUP_EXTI_LINE - -#define USB_FS_EXTI_TRIGGER_RISING_EDGE USB_OTG_FS_WAKEUP_EXTI_RISING_EDGE -#define USB_FS_EXTI_TRIGGER_FALLING_EDGE USB_OTG_FS_WAKEUP_EXTI_FALLING_EDGE -#define USB_FS_EXTI_TRIGGER_BOTH_EDGE USB_OTG_FS_WAKEUP_EXTI_RISING_FALLING_EDGE -#define USB_FS_EXTI_LINE_WAKEUP USB_OTG_FS_WAKEUP_EXTI_LINE - -#define USB_HS_EXTI_TRIGGER_RISING_EDGE USB_OTG_HS_WAKEUP_EXTI_RISING_EDGE -#define USB_HS_EXTI_TRIGGER_FALLING_EDGE USB_OTG_HS_WAKEUP_EXTI_FALLING_EDGE -#define USB_HS_EXTI_TRIGGER_BOTH_EDGE USB_OTG_HS_WAKEUP_EXTI_RISING_FALLING_EDGE -#define USB_HS_EXTI_LINE_WAKEUP USB_OTG_HS_WAKEUP_EXTI_LINE - -#define __HAL_USB_EXTI_ENABLE_IT __HAL_USB_WAKEUP_EXTI_ENABLE_IT -#define __HAL_USB_EXTI_DISABLE_IT __HAL_USB_WAKEUP_EXTI_DISABLE_IT -#define __HAL_USB_EXTI_GET_FLAG __HAL_USB_WAKEUP_EXTI_GET_FLAG -#define __HAL_USB_EXTI_CLEAR_FLAG __HAL_USB_WAKEUP_EXTI_CLEAR_FLAG -#define __HAL_USB_EXTI_SET_RISING_EDGE_TRIGGER __HAL_USB_WAKEUP_EXTI_ENABLE_RISING_EDGE -#define __HAL_USB_EXTI_SET_FALLING_EDGE_TRIGGER __HAL_USB_WAKEUP_EXTI_ENABLE_FALLING_EDGE -#define __HAL_USB_EXTI_SET_FALLINGRISING_TRIGGER __HAL_USB_WAKEUP_EXTI_ENABLE_RISING_FALLING_EDGE - -#define __HAL_USB_FS_EXTI_ENABLE_IT __HAL_USB_OTG_FS_WAKEUP_EXTI_ENABLE_IT -#define __HAL_USB_FS_EXTI_DISABLE_IT __HAL_USB_OTG_FS_WAKEUP_EXTI_DISABLE_IT -#define __HAL_USB_FS_EXTI_GET_FLAG __HAL_USB_OTG_FS_WAKEUP_EXTI_GET_FLAG -#define __HAL_USB_FS_EXTI_CLEAR_FLAG __HAL_USB_OTG_FS_WAKEUP_EXTI_CLEAR_FLAG -#define __HAL_USB_FS_EXTI_SET_RISING_EGDE_TRIGGER __HAL_USB_OTG_FS_WAKEUP_EXTI_ENABLE_RISING_EDGE -#define __HAL_USB_FS_EXTI_SET_FALLING_EGDE_TRIGGER __HAL_USB_OTG_FS_WAKEUP_EXTI_ENABLE_FALLING_EDGE -#define __HAL_USB_FS_EXTI_SET_FALLINGRISING_TRIGGER __HAL_USB_OTG_FS_WAKEUP_EXTI_ENABLE_RISING_FALLING_EDGE -#define __HAL_USB_FS_EXTI_GENERATE_SWIT __HAL_USB_OTG_FS_WAKEUP_EXTI_GENERATE_SWIT - -#define __HAL_USB_HS_EXTI_ENABLE_IT __HAL_USB_OTG_HS_WAKEUP_EXTI_ENABLE_IT -#define __HAL_USB_HS_EXTI_DISABLE_IT __HAL_USB_OTG_HS_WAKEUP_EXTI_DISABLE_IT -#define __HAL_USB_HS_EXTI_GET_FLAG __HAL_USB_OTG_HS_WAKEUP_EXTI_GET_FLAG -#define __HAL_USB_HS_EXTI_CLEAR_FLAG __HAL_USB_OTG_HS_WAKEUP_EXTI_CLEAR_FLAG -#define __HAL_USB_HS_EXTI_SET_RISING_EGDE_TRIGGER __HAL_USB_OTG_HS_WAKEUP_EXTI_ENABLE_RISING_EDGE -#define __HAL_USB_HS_EXTI_SET_FALLING_EGDE_TRIGGER __HAL_USB_OTG_HS_WAKEUP_EXTI_ENABLE_FALLING_EDGE -#define __HAL_USB_HS_EXTI_SET_FALLINGRISING_TRIGGER __HAL_USB_OTG_HS_WAKEUP_EXTI_ENABLE_RISING_FALLING_EDGE -#define __HAL_USB_HS_EXTI_GENERATE_SWIT __HAL_USB_OTG_HS_WAKEUP_EXTI_GENERATE_SWIT - -#define HAL_PCD_ActiveRemoteWakeup HAL_PCD_ActivateRemoteWakeup -#define HAL_PCD_DeActiveRemoteWakeup HAL_PCD_DeActivateRemoteWakeup - -#define HAL_PCD_SetTxFiFo HAL_PCDEx_SetTxFiFo -#define HAL_PCD_SetRxFiFo HAL_PCDEx_SetRxFiFo -/** - * @} - */ - -/** @defgroup HAL_TIM_Aliased_Macros HAL TIM Aliased Macros maintained for legacy purpose - * @{ - */ -#define __HAL_TIM_SetICPrescalerValue TIM_SET_ICPRESCALERVALUE -#define __HAL_TIM_ResetICPrescalerValue TIM_RESET_ICPRESCALERVALUE - -#define TIM_GET_ITSTATUS __HAL_TIM_GET_IT_SOURCE -#define TIM_GET_CLEAR_IT __HAL_TIM_CLEAR_IT - -#define __HAL_TIM_GET_ITSTATUS __HAL_TIM_GET_IT_SOURCE - -#define __HAL_TIM_DIRECTION_STATUS __HAL_TIM_IS_TIM_COUNTING_DOWN -#define __HAL_TIM_PRESCALER __HAL_TIM_SET_PRESCALER -#define __HAL_TIM_SetCounter __HAL_TIM_SET_COUNTER -#define __HAL_TIM_GetCounter __HAL_TIM_GET_COUNTER -#define __HAL_TIM_SetAutoreload __HAL_TIM_SET_AUTORELOAD -#define __HAL_TIM_GetAutoreload __HAL_TIM_GET_AUTORELOAD -#define __HAL_TIM_SetClockDivision __HAL_TIM_SET_CLOCKDIVISION -#define __HAL_TIM_GetClockDivision __HAL_TIM_GET_CLOCKDIVISION -#define __HAL_TIM_SetICPrescaler __HAL_TIM_SET_ICPRESCALER -#define __HAL_TIM_GetICPrescaler __HAL_TIM_GET_ICPRESCALER -#define __HAL_TIM_SetCompare __HAL_TIM_SET_COMPARE -#define __HAL_TIM_GetCompare __HAL_TIM_GET_COMPARE - -#define TIM_BREAKINPUTSOURCE_DFSDM TIM_BREAKINPUTSOURCE_DFSDM1 -/** - * @} - */ - -/** @defgroup HAL_ETH_Aliased_Macros HAL ETH Aliased Macros maintained for legacy purpose - * @{ - */ - -#define __HAL_ETH_EXTI_ENABLE_IT __HAL_ETH_WAKEUP_EXTI_ENABLE_IT -#define __HAL_ETH_EXTI_DISABLE_IT __HAL_ETH_WAKEUP_EXTI_DISABLE_IT -#define __HAL_ETH_EXTI_GET_FLAG __HAL_ETH_WAKEUP_EXTI_GET_FLAG -#define __HAL_ETH_EXTI_CLEAR_FLAG __HAL_ETH_WAKEUP_EXTI_CLEAR_FLAG -#define __HAL_ETH_EXTI_SET_RISING_EGDE_TRIGGER __HAL_ETH_WAKEUP_EXTI_ENABLE_RISING_EDGE_TRIGGER -#define __HAL_ETH_EXTI_SET_FALLING_EGDE_TRIGGER __HAL_ETH_WAKEUP_EXTI_ENABLE_FALLING_EDGE_TRIGGER -#define __HAL_ETH_EXTI_SET_FALLINGRISING_TRIGGER __HAL_ETH_WAKEUP_EXTI_ENABLE_FALLINGRISING_TRIGGER - -#define ETH_PROMISCIOUSMODE_ENABLE ETH_PROMISCUOUS_MODE_ENABLE -#define ETH_PROMISCIOUSMODE_DISABLE ETH_PROMISCUOUS_MODE_DISABLE -#define IS_ETH_PROMISCIOUS_MODE IS_ETH_PROMISCUOUS_MODE -/** - * @} - */ - -/** @defgroup HAL_LTDC_Aliased_Macros HAL LTDC Aliased Macros maintained for legacy purpose - * @{ - */ -#define __HAL_LTDC_LAYER LTDC_LAYER -#define __HAL_LTDC_RELOAD_CONFIG __HAL_LTDC_RELOAD_IMMEDIATE_CONFIG -/** - * @} - */ - -/** @defgroup HAL_SAI_Aliased_Macros HAL SAI Aliased Macros maintained for legacy purpose - * @{ - */ -#define SAI_OUTPUTDRIVE_DISABLED SAI_OUTPUTDRIVE_DISABLE -#define SAI_OUTPUTDRIVE_ENABLED SAI_OUTPUTDRIVE_ENABLE -#define SAI_MASTERDIVIDER_ENABLED SAI_MASTERDIVIDER_ENABLE -#define SAI_MASTERDIVIDER_DISABLED SAI_MASTERDIVIDER_DISABLE -#define SAI_STREOMODE SAI_STEREOMODE -#define SAI_FIFOStatus_Empty SAI_FIFOSTATUS_EMPTY -#define SAI_FIFOStatus_Less1QuarterFull SAI_FIFOSTATUS_LESS1QUARTERFULL -#define SAI_FIFOStatus_1QuarterFull SAI_FIFOSTATUS_1QUARTERFULL -#define SAI_FIFOStatus_HalfFull SAI_FIFOSTATUS_HALFFULL -#define SAI_FIFOStatus_3QuartersFull SAI_FIFOSTATUS_3QUARTERFULL -#define SAI_FIFOStatus_Full SAI_FIFOSTATUS_FULL -#define IS_SAI_BLOCK_MONO_STREO_MODE IS_SAI_BLOCK_MONO_STEREO_MODE -#define SAI_SYNCHRONOUS_EXT SAI_SYNCHRONOUS_EXT_SAI1 -#define SAI_SYNCEXT_IN_ENABLE SAI_SYNCEXT_OUTBLOCKA_ENABLE -/** - * @} - */ - -/** @defgroup HAL_SPDIFRX_Aliased_Macros HAL SPDIFRX Aliased Macros maintained for legacy purpose - * @{ - */ -#if defined(STM32H7) -#define HAL_SPDIFRX_ReceiveControlFlow HAL_SPDIFRX_ReceiveCtrlFlow -#define HAL_SPDIFRX_ReceiveControlFlow_IT HAL_SPDIFRX_ReceiveCtrlFlow_IT -#define HAL_SPDIFRX_ReceiveControlFlow_DMA HAL_SPDIFRX_ReceiveCtrlFlow_DMA -#endif -/** - * @} - */ - -/** @defgroup HAL_HRTIM_Aliased_Functions HAL HRTIM Aliased Functions maintained for legacy purpose - * @{ - */ -#if defined (STM32H7) || defined (STM32G4) || defined (STM32F3) -#define HAL_HRTIM_WaveformCounterStart_IT HAL_HRTIM_WaveformCountStart_IT -#define HAL_HRTIM_WaveformCounterStart_DMA HAL_HRTIM_WaveformCountStart_DMA -#define HAL_HRTIM_WaveformCounterStart HAL_HRTIM_WaveformCountStart -#define HAL_HRTIM_WaveformCounterStop_IT HAL_HRTIM_WaveformCountStop_IT -#define HAL_HRTIM_WaveformCounterStop_DMA HAL_HRTIM_WaveformCountStop_DMA -#define HAL_HRTIM_WaveformCounterStop HAL_HRTIM_WaveformCountStop -#endif -/** - * @} - */ - -/** @defgroup HAL_QSPI_Aliased_Macros HAL QSPI Aliased Macros maintained for legacy purpose - * @{ - */ -#if defined (STM32L4) || defined (STM32F4) || defined (STM32F7) || defined(STM32H7) -#define HAL_QPSI_TIMEOUT_DEFAULT_VALUE HAL_QSPI_TIMEOUT_DEFAULT_VALUE -#endif /* STM32L4 || STM32F4 || STM32F7 */ -/** - * @} - */ - -/** @defgroup HAL_PPP_Aliased_Macros HAL PPP Aliased Macros maintained for legacy purpose - * @{ - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /* STM32_HAL_LEGACY */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ - +/** + ****************************************************************************** + * @file stm32_hal_legacy.h + * @author MCD Application Team + * @brief This file contains aliases definition for the STM32Cube HAL constants + * macros and functions maintained for legacy purpose. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2019 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef STM32_HAL_LEGACY +#define STM32_HAL_LEGACY + +#ifdef __cplusplus + extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +/* Exported types ------------------------------------------------------------*/ +/* Exported constants --------------------------------------------------------*/ + +/** @defgroup HAL_AES_Aliased_Defines HAL CRYP Aliased Defines maintained for legacy purpose + * @{ + */ +#define AES_FLAG_RDERR CRYP_FLAG_RDERR +#define AES_FLAG_WRERR CRYP_FLAG_WRERR +#define AES_CLEARFLAG_CCF CRYP_CLEARFLAG_CCF +#define AES_CLEARFLAG_RDERR CRYP_CLEARFLAG_RDERR +#define AES_CLEARFLAG_WRERR CRYP_CLEARFLAG_WRERR +/** + * @} + */ + +/** @defgroup HAL_ADC_Aliased_Defines HAL ADC Aliased Defines maintained for legacy purpose + * @{ + */ +#define ADC_RESOLUTION12b ADC_RESOLUTION_12B +#define ADC_RESOLUTION10b ADC_RESOLUTION_10B +#define ADC_RESOLUTION8b ADC_RESOLUTION_8B +#define ADC_RESOLUTION6b ADC_RESOLUTION_6B +#define OVR_DATA_OVERWRITTEN ADC_OVR_DATA_OVERWRITTEN +#define OVR_DATA_PRESERVED ADC_OVR_DATA_PRESERVED +#define EOC_SINGLE_CONV ADC_EOC_SINGLE_CONV +#define EOC_SEQ_CONV ADC_EOC_SEQ_CONV +#define EOC_SINGLE_SEQ_CONV ADC_EOC_SINGLE_SEQ_CONV +#define REGULAR_GROUP ADC_REGULAR_GROUP +#define INJECTED_GROUP ADC_INJECTED_GROUP +#define REGULAR_INJECTED_GROUP ADC_REGULAR_INJECTED_GROUP +#define AWD_EVENT ADC_AWD_EVENT +#define AWD1_EVENT ADC_AWD1_EVENT +#define AWD2_EVENT ADC_AWD2_EVENT +#define AWD3_EVENT ADC_AWD3_EVENT +#define OVR_EVENT ADC_OVR_EVENT +#define JQOVF_EVENT ADC_JQOVF_EVENT +#define ALL_CHANNELS ADC_ALL_CHANNELS +#define REGULAR_CHANNELS ADC_REGULAR_CHANNELS +#define INJECTED_CHANNELS ADC_INJECTED_CHANNELS +#define SYSCFG_FLAG_SENSOR_ADC ADC_FLAG_SENSOR +#define SYSCFG_FLAG_VREF_ADC ADC_FLAG_VREFINT +#define ADC_CLOCKPRESCALER_PCLK_DIV1 ADC_CLOCK_SYNC_PCLK_DIV1 +#define ADC_CLOCKPRESCALER_PCLK_DIV2 ADC_CLOCK_SYNC_PCLK_DIV2 +#define ADC_CLOCKPRESCALER_PCLK_DIV4 ADC_CLOCK_SYNC_PCLK_DIV4 +#define ADC_CLOCKPRESCALER_PCLK_DIV6 ADC_CLOCK_SYNC_PCLK_DIV6 +#define ADC_CLOCKPRESCALER_PCLK_DIV8 ADC_CLOCK_SYNC_PCLK_DIV8 +#define ADC_EXTERNALTRIG0_T6_TRGO ADC_EXTERNALTRIGCONV_T6_TRGO +#define ADC_EXTERNALTRIG1_T21_CC2 ADC_EXTERNALTRIGCONV_T21_CC2 +#define ADC_EXTERNALTRIG2_T2_TRGO ADC_EXTERNALTRIGCONV_T2_TRGO +#define ADC_EXTERNALTRIG3_T2_CC4 ADC_EXTERNALTRIGCONV_T2_CC4 +#define ADC_EXTERNALTRIG4_T22_TRGO ADC_EXTERNALTRIGCONV_T22_TRGO +#define ADC_EXTERNALTRIG7_EXT_IT11 ADC_EXTERNALTRIGCONV_EXT_IT11 +#define ADC_CLOCK_ASYNC ADC_CLOCK_ASYNC_DIV1 +#define ADC_EXTERNALTRIG_EDGE_NONE ADC_EXTERNALTRIGCONVEDGE_NONE +#define ADC_EXTERNALTRIG_EDGE_RISING ADC_EXTERNALTRIGCONVEDGE_RISING +#define ADC_EXTERNALTRIG_EDGE_FALLING ADC_EXTERNALTRIGCONVEDGE_FALLING +#define ADC_EXTERNALTRIG_EDGE_RISINGFALLING ADC_EXTERNALTRIGCONVEDGE_RISINGFALLING +#define ADC_SAMPLETIME_2CYCLE_5 ADC_SAMPLETIME_2CYCLES_5 + +#define HAL_ADC_STATE_BUSY_REG HAL_ADC_STATE_REG_BUSY +#define HAL_ADC_STATE_BUSY_INJ HAL_ADC_STATE_INJ_BUSY +#define HAL_ADC_STATE_EOC_REG HAL_ADC_STATE_REG_EOC +#define HAL_ADC_STATE_EOC_INJ HAL_ADC_STATE_INJ_EOC +#define HAL_ADC_STATE_ERROR HAL_ADC_STATE_ERROR_INTERNAL +#define HAL_ADC_STATE_BUSY HAL_ADC_STATE_BUSY_INTERNAL +#define HAL_ADC_STATE_AWD HAL_ADC_STATE_AWD1 + +#if defined(STM32H7) +#define ADC_CHANNEL_VBAT_DIV4 ADC_CHANNEL_VBAT +#endif /* STM32H7 */ +/** + * @} + */ + +/** @defgroup HAL_CEC_Aliased_Defines HAL CEC Aliased Defines maintained for legacy purpose + * @{ + */ + +#define __HAL_CEC_GET_IT __HAL_CEC_GET_FLAG + +/** + * @} + */ + +/** @defgroup HAL_COMP_Aliased_Defines HAL COMP Aliased Defines maintained for legacy purpose + * @{ + */ +#define COMP_WINDOWMODE_DISABLED COMP_WINDOWMODE_DISABLE +#define COMP_WINDOWMODE_ENABLED COMP_WINDOWMODE_ENABLE +#define COMP_EXTI_LINE_COMP1_EVENT COMP_EXTI_LINE_COMP1 +#define COMP_EXTI_LINE_COMP2_EVENT COMP_EXTI_LINE_COMP2 +#define COMP_EXTI_LINE_COMP3_EVENT COMP_EXTI_LINE_COMP3 +#define COMP_EXTI_LINE_COMP4_EVENT COMP_EXTI_LINE_COMP4 +#define COMP_EXTI_LINE_COMP5_EVENT COMP_EXTI_LINE_COMP5 +#define COMP_EXTI_LINE_COMP6_EVENT COMP_EXTI_LINE_COMP6 +#define COMP_EXTI_LINE_COMP7_EVENT COMP_EXTI_LINE_COMP7 +#if defined(STM32L0) +#define COMP_LPTIMCONNECTION_ENABLED ((uint32_t)0x00000003U) /*!< COMPX output generic naming: connected to LPTIM input 1 for COMP1, LPTIM input 2 for COMP2 */ +#endif +#define COMP_OUTPUT_COMP6TIM2OCREFCLR COMP_OUTPUT_COMP6_TIM2OCREFCLR +#if defined(STM32F373xC) || defined(STM32F378xx) +#define COMP_OUTPUT_TIM3IC1 COMP_OUTPUT_COMP1_TIM3IC1 +#define COMP_OUTPUT_TIM3OCREFCLR COMP_OUTPUT_COMP1_TIM3OCREFCLR +#endif /* STM32F373xC || STM32F378xx */ + +#if defined(STM32L0) || defined(STM32L4) +#define COMP_WINDOWMODE_ENABLE COMP_WINDOWMODE_COMP1_INPUT_PLUS_COMMON + +#define COMP_NONINVERTINGINPUT_IO1 COMP_INPUT_PLUS_IO1 +#define COMP_NONINVERTINGINPUT_IO2 COMP_INPUT_PLUS_IO2 +#define COMP_NONINVERTINGINPUT_IO3 COMP_INPUT_PLUS_IO3 +#define COMP_NONINVERTINGINPUT_IO4 COMP_INPUT_PLUS_IO4 +#define COMP_NONINVERTINGINPUT_IO5 COMP_INPUT_PLUS_IO5 +#define COMP_NONINVERTINGINPUT_IO6 COMP_INPUT_PLUS_IO6 + +#define COMP_INVERTINGINPUT_1_4VREFINT COMP_INPUT_MINUS_1_4VREFINT +#define COMP_INVERTINGINPUT_1_2VREFINT COMP_INPUT_MINUS_1_2VREFINT +#define COMP_INVERTINGINPUT_3_4VREFINT COMP_INPUT_MINUS_3_4VREFINT +#define COMP_INVERTINGINPUT_VREFINT COMP_INPUT_MINUS_VREFINT +#define COMP_INVERTINGINPUT_DAC1_CH1 COMP_INPUT_MINUS_DAC1_CH1 +#define COMP_INVERTINGINPUT_DAC1_CH2 COMP_INPUT_MINUS_DAC1_CH2 +#define COMP_INVERTINGINPUT_DAC1 COMP_INPUT_MINUS_DAC1_CH1 +#define COMP_INVERTINGINPUT_DAC2 COMP_INPUT_MINUS_DAC1_CH2 +#define COMP_INVERTINGINPUT_IO1 COMP_INPUT_MINUS_IO1 +#if defined(STM32L0) +/* Issue fixed on STM32L0 COMP driver: only 2 dedicated IO (IO1 and IO2), */ +/* IO2 was wrongly assigned to IO shared with DAC and IO3 was corresponding */ +/* to the second dedicated IO (only for COMP2). */ +#define COMP_INVERTINGINPUT_IO2 COMP_INPUT_MINUS_DAC1_CH2 +#define COMP_INVERTINGINPUT_IO3 COMP_INPUT_MINUS_IO2 +#else +#define COMP_INVERTINGINPUT_IO2 COMP_INPUT_MINUS_IO2 +#define COMP_INVERTINGINPUT_IO3 COMP_INPUT_MINUS_IO3 +#endif +#define COMP_INVERTINGINPUT_IO4 COMP_INPUT_MINUS_IO4 +#define COMP_INVERTINGINPUT_IO5 COMP_INPUT_MINUS_IO5 + +#define COMP_OUTPUTLEVEL_LOW COMP_OUTPUT_LEVEL_LOW +#define COMP_OUTPUTLEVEL_HIGH COMP_OUTPUT_LEVEL_HIGH + +/* Note: Literal "COMP_FLAG_LOCK" kept for legacy purpose. */ +/* To check COMP lock state, use macro "__HAL_COMP_IS_LOCKED()". */ +#if defined(COMP_CSR_LOCK) +#define COMP_FLAG_LOCK COMP_CSR_LOCK +#elif defined(COMP_CSR_COMP1LOCK) +#define COMP_FLAG_LOCK COMP_CSR_COMP1LOCK +#elif defined(COMP_CSR_COMPxLOCK) +#define COMP_FLAG_LOCK COMP_CSR_COMPxLOCK +#endif + +#if defined(STM32L4) +#define COMP_BLANKINGSRCE_TIM1OC5 COMP_BLANKINGSRC_TIM1_OC5_COMP1 +#define COMP_BLANKINGSRCE_TIM2OC3 COMP_BLANKINGSRC_TIM2_OC3_COMP1 +#define COMP_BLANKINGSRCE_TIM3OC3 COMP_BLANKINGSRC_TIM3_OC3_COMP1 +#define COMP_BLANKINGSRCE_TIM3OC4 COMP_BLANKINGSRC_TIM3_OC4_COMP2 +#define COMP_BLANKINGSRCE_TIM8OC5 COMP_BLANKINGSRC_TIM8_OC5_COMP2 +#define COMP_BLANKINGSRCE_TIM15OC1 COMP_BLANKINGSRC_TIM15_OC1_COMP2 +#define COMP_BLANKINGSRCE_NONE COMP_BLANKINGSRC_NONE +#endif + +#if defined(STM32L0) +#define COMP_MODE_HIGHSPEED COMP_POWERMODE_MEDIUMSPEED +#define COMP_MODE_LOWSPEED COMP_POWERMODE_ULTRALOWPOWER +#else +#define COMP_MODE_HIGHSPEED COMP_POWERMODE_HIGHSPEED +#define COMP_MODE_MEDIUMSPEED COMP_POWERMODE_MEDIUMSPEED +#define COMP_MODE_LOWPOWER COMP_POWERMODE_LOWPOWER +#define COMP_MODE_ULTRALOWPOWER COMP_POWERMODE_ULTRALOWPOWER +#endif + +#endif +/** + * @} + */ + +/** @defgroup HAL_CORTEX_Aliased_Defines HAL CORTEX Aliased Defines maintained for legacy purpose + * @{ + */ +#define __HAL_CORTEX_SYSTICKCLK_CONFIG HAL_SYSTICK_CLKSourceConfig +/** + * @} + */ + +/** @defgroup HAL_CRC_Aliased_Defines HAL CRC Aliased Defines maintained for legacy purpose + * @{ + */ + +#define CRC_OUTPUTDATA_INVERSION_DISABLED CRC_OUTPUTDATA_INVERSION_DISABLE +#define CRC_OUTPUTDATA_INVERSION_ENABLED CRC_OUTPUTDATA_INVERSION_ENABLE + +/** + * @} + */ + +/** @defgroup HAL_DAC_Aliased_Defines HAL DAC Aliased Defines maintained for legacy purpose + * @{ + */ + +#define DAC1_CHANNEL_1 DAC_CHANNEL_1 +#define DAC1_CHANNEL_2 DAC_CHANNEL_2 +#define DAC2_CHANNEL_1 DAC_CHANNEL_1 +#define DAC_WAVE_NONE 0x00000000U +#define DAC_WAVE_NOISE DAC_CR_WAVE1_0 +#define DAC_WAVE_TRIANGLE DAC_CR_WAVE1_1 +#define DAC_WAVEGENERATION_NONE DAC_WAVE_NONE +#define DAC_WAVEGENERATION_NOISE DAC_WAVE_NOISE +#define DAC_WAVEGENERATION_TRIANGLE DAC_WAVE_TRIANGLE + +#if defined(STM32G4) || defined(STM32H7) +#define DAC_CHIPCONNECT_DISABLE DAC_CHIPCONNECT_EXTERNAL +#define DAC_CHIPCONNECT_ENABLE DAC_CHIPCONNECT_INTERNAL +#endif + +#if defined(STM32L1) || defined(STM32L4) || defined(STM32G0) || defined(STM32L5) || defined(STM32H7) || defined(STM32F4) || defined(STM32G4) +#define HAL_DAC_MSP_INIT_CB_ID HAL_DAC_MSPINIT_CB_ID +#define HAL_DAC_MSP_DEINIT_CB_ID HAL_DAC_MSPDEINIT_CB_ID +#endif + +/** + * @} + */ + +/** @defgroup HAL_DMA_Aliased_Defines HAL DMA Aliased Defines maintained for legacy purpose + * @{ + */ +#define HAL_REMAPDMA_ADC_DMA_CH2 DMA_REMAP_ADC_DMA_CH2 +#define HAL_REMAPDMA_USART1_TX_DMA_CH4 DMA_REMAP_USART1_TX_DMA_CH4 +#define HAL_REMAPDMA_USART1_RX_DMA_CH5 DMA_REMAP_USART1_RX_DMA_CH5 +#define HAL_REMAPDMA_TIM16_DMA_CH4 DMA_REMAP_TIM16_DMA_CH4 +#define HAL_REMAPDMA_TIM17_DMA_CH2 DMA_REMAP_TIM17_DMA_CH2 +#define HAL_REMAPDMA_USART3_DMA_CH32 DMA_REMAP_USART3_DMA_CH32 +#define HAL_REMAPDMA_TIM16_DMA_CH6 DMA_REMAP_TIM16_DMA_CH6 +#define HAL_REMAPDMA_TIM17_DMA_CH7 DMA_REMAP_TIM17_DMA_CH7 +#define HAL_REMAPDMA_SPI2_DMA_CH67 DMA_REMAP_SPI2_DMA_CH67 +#define HAL_REMAPDMA_USART2_DMA_CH67 DMA_REMAP_USART2_DMA_CH67 +#define HAL_REMAPDMA_I2C1_DMA_CH76 DMA_REMAP_I2C1_DMA_CH76 +#define HAL_REMAPDMA_TIM1_DMA_CH6 DMA_REMAP_TIM1_DMA_CH6 +#define HAL_REMAPDMA_TIM2_DMA_CH7 DMA_REMAP_TIM2_DMA_CH7 +#define HAL_REMAPDMA_TIM3_DMA_CH6 DMA_REMAP_TIM3_DMA_CH6 + +#define IS_HAL_REMAPDMA IS_DMA_REMAP +#define __HAL_REMAPDMA_CHANNEL_ENABLE __HAL_DMA_REMAP_CHANNEL_ENABLE +#define __HAL_REMAPDMA_CHANNEL_DISABLE __HAL_DMA_REMAP_CHANNEL_DISABLE + +#if defined(STM32L4) + +#define HAL_DMAMUX1_REQUEST_GEN_EXTI0 HAL_DMAMUX1_REQ_GEN_EXTI0 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI1 HAL_DMAMUX1_REQ_GEN_EXTI1 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI2 HAL_DMAMUX1_REQ_GEN_EXTI2 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI3 HAL_DMAMUX1_REQ_GEN_EXTI3 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI4 HAL_DMAMUX1_REQ_GEN_EXTI4 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI5 HAL_DMAMUX1_REQ_GEN_EXTI5 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI6 HAL_DMAMUX1_REQ_GEN_EXTI6 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI7 HAL_DMAMUX1_REQ_GEN_EXTI7 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI8 HAL_DMAMUX1_REQ_GEN_EXTI8 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI9 HAL_DMAMUX1_REQ_GEN_EXTI9 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI10 HAL_DMAMUX1_REQ_GEN_EXTI10 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI11 HAL_DMAMUX1_REQ_GEN_EXTI11 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI12 HAL_DMAMUX1_REQ_GEN_EXTI12 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI13 HAL_DMAMUX1_REQ_GEN_EXTI13 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI14 HAL_DMAMUX1_REQ_GEN_EXTI14 +#define HAL_DMAMUX1_REQUEST_GEN_EXTI15 HAL_DMAMUX1_REQ_GEN_EXTI15 +#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH0_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH0_EVT +#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH1_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH1_EVT +#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH2_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH2_EVT +#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH3_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH3_EVT +#define HAL_DMAMUX1_REQUEST_GEN_LPTIM1_OUT HAL_DMAMUX1_REQ_GEN_LPTIM1_OUT +#define HAL_DMAMUX1_REQUEST_GEN_LPTIM2_OUT HAL_DMAMUX1_REQ_GEN_LPTIM2_OUT +#define HAL_DMAMUX1_REQUEST_GEN_DSI_TE HAL_DMAMUX1_REQ_GEN_DSI_TE +#define HAL_DMAMUX1_REQUEST_GEN_DSI_EOT HAL_DMAMUX1_REQ_GEN_DSI_EOT +#define HAL_DMAMUX1_REQUEST_GEN_DMA2D_EOT HAL_DMAMUX1_REQ_GEN_DMA2D_EOT +#define HAL_DMAMUX1_REQUEST_GEN_LTDC_IT HAL_DMAMUX1_REQ_GEN_LTDC_IT + +#define HAL_DMAMUX_REQUEST_GEN_NO_EVENT HAL_DMAMUX_REQ_GEN_NO_EVENT +#define HAL_DMAMUX_REQUEST_GEN_RISING HAL_DMAMUX_REQ_GEN_RISING +#define HAL_DMAMUX_REQUEST_GEN_FALLING HAL_DMAMUX_REQ_GEN_FALLING +#define HAL_DMAMUX_REQUEST_GEN_RISING_FALLING HAL_DMAMUX_REQ_GEN_RISING_FALLING + +#if defined(STM32L4R5xx) || defined(STM32L4R9xx) || defined(STM32L4R9xx) || defined(STM32L4S5xx) || defined(STM32L4S7xx) || defined(STM32L4S9xx) +#define DMA_REQUEST_DCMI_PSSI DMA_REQUEST_DCMI +#endif + +#endif /* STM32L4 */ + +#if defined(STM32G0) +#define DMA_REQUEST_DAC1_CHANNEL1 DMA_REQUEST_DAC1_CH1 +#define DMA_REQUEST_DAC1_CHANNEL2 DMA_REQUEST_DAC1_CH2 +#define DMA_REQUEST_TIM16_TRIG_COM DMA_REQUEST_TIM16_COM +#define DMA_REQUEST_TIM17_TRIG_COM DMA_REQUEST_TIM17_COM + +#define LL_DMAMUX_REQ_TIM16_TRIG_COM LL_DMAMUX_REQ_TIM16_COM +#define LL_DMAMUX_REQ_TIM17_TRIG_COM LL_DMAMUX_REQ_TIM17_COM +#endif + +#if defined(STM32H7) + +#define DMA_REQUEST_DAC1 DMA_REQUEST_DAC1_CH1 +#define DMA_REQUEST_DAC2 DMA_REQUEST_DAC1_CH2 + +#define BDMA_REQUEST_LP_UART1_RX BDMA_REQUEST_LPUART1_RX +#define BDMA_REQUEST_LP_UART1_TX BDMA_REQUEST_LPUART1_TX + +#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH0_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH0_EVT +#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH1_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH1_EVT +#define HAL_DMAMUX1_REQUEST_GEN_DMAMUX1_CH2_EVT HAL_DMAMUX1_REQ_GEN_DMAMUX1_CH2_EVT +#define HAL_DMAMUX1_REQUEST_GEN_LPTIM1_OUT HAL_DMAMUX1_REQ_GEN_LPTIM1_OUT +#define HAL_DMAMUX1_REQUEST_GEN_LPTIM2_OUT HAL_DMAMUX1_REQ_GEN_LPTIM2_OUT +#define HAL_DMAMUX1_REQUEST_GEN_LPTIM3_OUT HAL_DMAMUX1_REQ_GEN_LPTIM3_OUT +#define HAL_DMAMUX1_REQUEST_GEN_EXTI0 HAL_DMAMUX1_REQ_GEN_EXTI0 +#define HAL_DMAMUX1_REQUEST_GEN_TIM12_TRGO HAL_DMAMUX1_REQ_GEN_TIM12_TRGO + +#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH0_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH0_EVT +#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH1_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH1_EVT +#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH2_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH2_EVT +#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH3_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH3_EVT +#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH4_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH4_EVT +#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH5_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH5_EVT +#define HAL_DMAMUX2_REQUEST_GEN_DMAMUX2_CH6_EVT HAL_DMAMUX2_REQ_GEN_DMAMUX2_CH6_EVT +#define HAL_DMAMUX2_REQUEST_GEN_LPUART1_RX_WKUP HAL_DMAMUX2_REQ_GEN_LPUART1_RX_WKUP +#define HAL_DMAMUX2_REQUEST_GEN_LPUART1_TX_WKUP HAL_DMAMUX2_REQ_GEN_LPUART1_TX_WKUP +#define HAL_DMAMUX2_REQUEST_GEN_LPTIM2_WKUP HAL_DMAMUX2_REQ_GEN_LPTIM2_WKUP +#define HAL_DMAMUX2_REQUEST_GEN_LPTIM2_OUT HAL_DMAMUX2_REQ_GEN_LPTIM2_OUT +#define HAL_DMAMUX2_REQUEST_GEN_LPTIM3_WKUP HAL_DMAMUX2_REQ_GEN_LPTIM3_WKUP +#define HAL_DMAMUX2_REQUEST_GEN_LPTIM3_OUT HAL_DMAMUX2_REQ_GEN_LPTIM3_OUT +#define HAL_DMAMUX2_REQUEST_GEN_LPTIM4_WKUP HAL_DMAMUX2_REQ_GEN_LPTIM4_WKUP +#define HAL_DMAMUX2_REQUEST_GEN_LPTIM5_WKUP HAL_DMAMUX2_REQ_GEN_LPTIM5_WKUP +#define HAL_DMAMUX2_REQUEST_GEN_I2C4_WKUP HAL_DMAMUX2_REQ_GEN_I2C4_WKUP +#define HAL_DMAMUX2_REQUEST_GEN_SPI6_WKUP HAL_DMAMUX2_REQ_GEN_SPI6_WKUP +#define HAL_DMAMUX2_REQUEST_GEN_COMP1_OUT HAL_DMAMUX2_REQ_GEN_COMP1_OUT +#define HAL_DMAMUX2_REQUEST_GEN_COMP2_OUT HAL_DMAMUX2_REQ_GEN_COMP2_OUT +#define HAL_DMAMUX2_REQUEST_GEN_RTC_WKUP HAL_DMAMUX2_REQ_GEN_RTC_WKUP +#define HAL_DMAMUX2_REQUEST_GEN_EXTI0 HAL_DMAMUX2_REQ_GEN_EXTI0 +#define HAL_DMAMUX2_REQUEST_GEN_EXTI2 HAL_DMAMUX2_REQ_GEN_EXTI2 +#define HAL_DMAMUX2_REQUEST_GEN_I2C4_IT_EVT HAL_DMAMUX2_REQ_GEN_I2C4_IT_EVT +#define HAL_DMAMUX2_REQUEST_GEN_SPI6_IT HAL_DMAMUX2_REQ_GEN_SPI6_IT +#define HAL_DMAMUX2_REQUEST_GEN_LPUART1_TX_IT HAL_DMAMUX2_REQ_GEN_LPUART1_TX_IT +#define HAL_DMAMUX2_REQUEST_GEN_LPUART1_RX_IT HAL_DMAMUX2_REQ_GEN_LPUART1_RX_IT +#define HAL_DMAMUX2_REQUEST_GEN_ADC3_IT HAL_DMAMUX2_REQ_GEN_ADC3_IT +#define HAL_DMAMUX2_REQUEST_GEN_ADC3_AWD1_OUT HAL_DMAMUX2_REQ_GEN_ADC3_AWD1_OUT +#define HAL_DMAMUX2_REQUEST_GEN_BDMA_CH0_IT HAL_DMAMUX2_REQ_GEN_BDMA_CH0_IT +#define HAL_DMAMUX2_REQUEST_GEN_BDMA_CH1_IT HAL_DMAMUX2_REQ_GEN_BDMA_CH1_IT + +#define HAL_DMAMUX_REQUEST_GEN_NO_EVENT HAL_DMAMUX_REQ_GEN_NO_EVENT +#define HAL_DMAMUX_REQUEST_GEN_RISING HAL_DMAMUX_REQ_GEN_RISING +#define HAL_DMAMUX_REQUEST_GEN_FALLING HAL_DMAMUX_REQ_GEN_FALLING +#define HAL_DMAMUX_REQUEST_GEN_RISING_FALLING HAL_DMAMUX_REQ_GEN_RISING_FALLING + +#define DFSDM_FILTER_EXT_TRIG_LPTIM1 DFSDM_FILTER_EXT_TRIG_LPTIM1_OUT +#define DFSDM_FILTER_EXT_TRIG_LPTIM2 DFSDM_FILTER_EXT_TRIG_LPTIM2_OUT +#define DFSDM_FILTER_EXT_TRIG_LPTIM3 DFSDM_FILTER_EXT_TRIG_LPTIM3_OUT + +#define DAC_TRIGGER_LP1_OUT DAC_TRIGGER_LPTIM1_OUT +#define DAC_TRIGGER_LP2_OUT DAC_TRIGGER_LPTIM2_OUT + +#endif /* STM32H7 */ + +/** + * @} + */ + +/** @defgroup HAL_FLASH_Aliased_Defines HAL FLASH Aliased Defines maintained for legacy purpose + * @{ + */ + +#define TYPEPROGRAM_BYTE FLASH_TYPEPROGRAM_BYTE +#define TYPEPROGRAM_HALFWORD FLASH_TYPEPROGRAM_HALFWORD +#define TYPEPROGRAM_WORD FLASH_TYPEPROGRAM_WORD +#define TYPEPROGRAM_DOUBLEWORD FLASH_TYPEPROGRAM_DOUBLEWORD +#define TYPEERASE_SECTORS FLASH_TYPEERASE_SECTORS +#define TYPEERASE_PAGES FLASH_TYPEERASE_PAGES +#define TYPEERASE_PAGEERASE FLASH_TYPEERASE_PAGES +#define TYPEERASE_MASSERASE FLASH_TYPEERASE_MASSERASE +#define WRPSTATE_DISABLE OB_WRPSTATE_DISABLE +#define WRPSTATE_ENABLE OB_WRPSTATE_ENABLE +#define HAL_FLASH_TIMEOUT_VALUE FLASH_TIMEOUT_VALUE +#define OBEX_PCROP OPTIONBYTE_PCROP +#define OBEX_BOOTCONFIG OPTIONBYTE_BOOTCONFIG +#define PCROPSTATE_DISABLE OB_PCROP_STATE_DISABLE +#define PCROPSTATE_ENABLE OB_PCROP_STATE_ENABLE +#define TYPEERASEDATA_BYTE FLASH_TYPEERASEDATA_BYTE +#define TYPEERASEDATA_HALFWORD FLASH_TYPEERASEDATA_HALFWORD +#define TYPEERASEDATA_WORD FLASH_TYPEERASEDATA_WORD +#define TYPEPROGRAMDATA_BYTE FLASH_TYPEPROGRAMDATA_BYTE +#define TYPEPROGRAMDATA_HALFWORD FLASH_TYPEPROGRAMDATA_HALFWORD +#define TYPEPROGRAMDATA_WORD FLASH_TYPEPROGRAMDATA_WORD +#define TYPEPROGRAMDATA_FASTBYTE FLASH_TYPEPROGRAMDATA_FASTBYTE +#define TYPEPROGRAMDATA_FASTHALFWORD FLASH_TYPEPROGRAMDATA_FASTHALFWORD +#define TYPEPROGRAMDATA_FASTWORD FLASH_TYPEPROGRAMDATA_FASTWORD +#define PAGESIZE FLASH_PAGE_SIZE +#define TYPEPROGRAM_FASTBYTE FLASH_TYPEPROGRAM_BYTE +#define TYPEPROGRAM_FASTHALFWORD FLASH_TYPEPROGRAM_HALFWORD +#define TYPEPROGRAM_FASTWORD FLASH_TYPEPROGRAM_WORD +#define VOLTAGE_RANGE_1 FLASH_VOLTAGE_RANGE_1 +#define VOLTAGE_RANGE_2 FLASH_VOLTAGE_RANGE_2 +#define VOLTAGE_RANGE_3 FLASH_VOLTAGE_RANGE_3 +#define VOLTAGE_RANGE_4 FLASH_VOLTAGE_RANGE_4 +#define TYPEPROGRAM_FAST FLASH_TYPEPROGRAM_FAST +#define TYPEPROGRAM_FAST_AND_LAST FLASH_TYPEPROGRAM_FAST_AND_LAST +#define WRPAREA_BANK1_AREAA OB_WRPAREA_BANK1_AREAA +#define WRPAREA_BANK1_AREAB OB_WRPAREA_BANK1_AREAB +#define WRPAREA_BANK2_AREAA OB_WRPAREA_BANK2_AREAA +#define WRPAREA_BANK2_AREAB OB_WRPAREA_BANK2_AREAB +#define IWDG_STDBY_FREEZE OB_IWDG_STDBY_FREEZE +#define IWDG_STDBY_ACTIVE OB_IWDG_STDBY_RUN +#define IWDG_STOP_FREEZE OB_IWDG_STOP_FREEZE +#define IWDG_STOP_ACTIVE OB_IWDG_STOP_RUN +#define FLASH_ERROR_NONE HAL_FLASH_ERROR_NONE +#define FLASH_ERROR_RD HAL_FLASH_ERROR_RD +#define FLASH_ERROR_PG HAL_FLASH_ERROR_PROG +#define FLASH_ERROR_PGP HAL_FLASH_ERROR_PGS +#define FLASH_ERROR_WRP HAL_FLASH_ERROR_WRP +#define FLASH_ERROR_OPTV HAL_FLASH_ERROR_OPTV +#define FLASH_ERROR_OPTVUSR HAL_FLASH_ERROR_OPTVUSR +#define FLASH_ERROR_PROG HAL_FLASH_ERROR_PROG +#define FLASH_ERROR_OP HAL_FLASH_ERROR_OPERATION +#define FLASH_ERROR_PGA HAL_FLASH_ERROR_PGA +#define FLASH_ERROR_SIZE HAL_FLASH_ERROR_SIZE +#define FLASH_ERROR_SIZ HAL_FLASH_ERROR_SIZE +#define FLASH_ERROR_PGS HAL_FLASH_ERROR_PGS +#define FLASH_ERROR_MIS HAL_FLASH_ERROR_MIS +#define FLASH_ERROR_FAST HAL_FLASH_ERROR_FAST +#define FLASH_ERROR_FWWERR HAL_FLASH_ERROR_FWWERR +#define FLASH_ERROR_NOTZERO HAL_FLASH_ERROR_NOTZERO +#define FLASH_ERROR_OPERATION HAL_FLASH_ERROR_OPERATION +#define FLASH_ERROR_ERS HAL_FLASH_ERROR_ERS +#define OB_WDG_SW OB_IWDG_SW +#define OB_WDG_HW OB_IWDG_HW +#define OB_SDADC12_VDD_MONITOR_SET OB_SDACD_VDD_MONITOR_SET +#define OB_SDADC12_VDD_MONITOR_RESET OB_SDACD_VDD_MONITOR_RESET +#define OB_RAM_PARITY_CHECK_SET OB_SRAM_PARITY_SET +#define OB_RAM_PARITY_CHECK_RESET OB_SRAM_PARITY_RESET +#define IS_OB_SDADC12_VDD_MONITOR IS_OB_SDACD_VDD_MONITOR +#define OB_RDP_LEVEL0 OB_RDP_LEVEL_0 +#define OB_RDP_LEVEL1 OB_RDP_LEVEL_1 +#define OB_RDP_LEVEL2 OB_RDP_LEVEL_2 +#if defined(STM32G0) +#define OB_BOOT_LOCK_DISABLE OB_BOOT_ENTRY_FORCED_NONE +#define OB_BOOT_LOCK_ENABLE OB_BOOT_ENTRY_FORCED_FLASH +#else +#define OB_BOOT_ENTRY_FORCED_NONE OB_BOOT_LOCK_DISABLE +#define OB_BOOT_ENTRY_FORCED_FLASH OB_BOOT_LOCK_ENABLE +#endif +#if defined(STM32H7) +#define FLASH_FLAG_SNECCE_BANK1RR FLASH_FLAG_SNECCERR_BANK1 +#define FLASH_FLAG_DBECCE_BANK1RR FLASH_FLAG_DBECCERR_BANK1 +#define FLASH_FLAG_STRBER_BANK1R FLASH_FLAG_STRBERR_BANK1 +#define FLASH_FLAG_SNECCE_BANK2RR FLASH_FLAG_SNECCERR_BANK2 +#define FLASH_FLAG_DBECCE_BANK2RR FLASH_FLAG_DBECCERR_BANK2 +#define FLASH_FLAG_STRBER_BANK2R FLASH_FLAG_STRBERR_BANK2 +#define FLASH_FLAG_WDW FLASH_FLAG_WBNE +#define OB_WRP_SECTOR_All OB_WRP_SECTOR_ALL +#endif /* STM32H7 */ + +/** + * @} + */ + +/** @defgroup HAL_JPEG_Aliased_Macros HAL JPEG Aliased Macros maintained for legacy purpose + * @{ + */ + +#if defined(STM32H7) +#define __HAL_RCC_JPEG_CLK_ENABLE __HAL_RCC_JPGDECEN_CLK_ENABLE +#define __HAL_RCC_JPEG_CLK_DISABLE __HAL_RCC_JPGDECEN_CLK_DISABLE +#define __HAL_RCC_JPEG_FORCE_RESET __HAL_RCC_JPGDECRST_FORCE_RESET +#define __HAL_RCC_JPEG_RELEASE_RESET __HAL_RCC_JPGDECRST_RELEASE_RESET +#define __HAL_RCC_JPEG_CLK_SLEEP_ENABLE __HAL_RCC_JPGDEC_CLK_SLEEP_ENABLE +#define __HAL_RCC_JPEG_CLK_SLEEP_DISABLE __HAL_RCC_JPGDEC_CLK_SLEEP_DISABLE +#endif /* STM32H7 */ + +/** + * @} + */ + +/** @defgroup HAL_SYSCFG_Aliased_Defines HAL SYSCFG Aliased Defines maintained for legacy purpose + * @{ + */ + +#define HAL_SYSCFG_FASTMODEPLUS_I2C_PA9 I2C_FASTMODEPLUS_PA9 +#define HAL_SYSCFG_FASTMODEPLUS_I2C_PA10 I2C_FASTMODEPLUS_PA10 +#define HAL_SYSCFG_FASTMODEPLUS_I2C_PB6 I2C_FASTMODEPLUS_PB6 +#define HAL_SYSCFG_FASTMODEPLUS_I2C_PB7 I2C_FASTMODEPLUS_PB7 +#define HAL_SYSCFG_FASTMODEPLUS_I2C_PB8 I2C_FASTMODEPLUS_PB8 +#define HAL_SYSCFG_FASTMODEPLUS_I2C_PB9 I2C_FASTMODEPLUS_PB9 +#define HAL_SYSCFG_FASTMODEPLUS_I2C1 I2C_FASTMODEPLUS_I2C1 +#define HAL_SYSCFG_FASTMODEPLUS_I2C2 I2C_FASTMODEPLUS_I2C2 +#define HAL_SYSCFG_FASTMODEPLUS_I2C3 I2C_FASTMODEPLUS_I2C3 +#if defined(STM32G4) + +#define HAL_SYSCFG_EnableIOAnalogSwitchBooster HAL_SYSCFG_EnableIOSwitchBooster +#define HAL_SYSCFG_DisableIOAnalogSwitchBooster HAL_SYSCFG_DisableIOSwitchBooster +#define HAL_SYSCFG_EnableIOAnalogSwitchVDD HAL_SYSCFG_EnableIOSwitchVDD +#define HAL_SYSCFG_DisableIOAnalogSwitchVDD HAL_SYSCFG_DisableIOSwitchVDD +#endif /* STM32G4 */ +/** + * @} + */ + + +/** @defgroup LL_FMC_Aliased_Defines LL FMC Aliased Defines maintained for compatibility purpose + * @{ + */ +#if defined(STM32L4) || defined(STM32F7) || defined(STM32H7) || defined(STM32G4) +#define FMC_NAND_PCC_WAIT_FEATURE_DISABLE FMC_NAND_WAIT_FEATURE_DISABLE +#define FMC_NAND_PCC_WAIT_FEATURE_ENABLE FMC_NAND_WAIT_FEATURE_ENABLE +#define FMC_NAND_PCC_MEM_BUS_WIDTH_8 FMC_NAND_MEM_BUS_WIDTH_8 +#define FMC_NAND_PCC_MEM_BUS_WIDTH_16 FMC_NAND_MEM_BUS_WIDTH_16 +#elif defined(STM32F1) || defined(STM32F2) || defined(STM32F3) || defined(STM32F4) +#define FMC_NAND_WAIT_FEATURE_DISABLE FMC_NAND_PCC_WAIT_FEATURE_DISABLE +#define FMC_NAND_WAIT_FEATURE_ENABLE FMC_NAND_PCC_WAIT_FEATURE_ENABLE +#define FMC_NAND_MEM_BUS_WIDTH_8 FMC_NAND_PCC_MEM_BUS_WIDTH_8 +#define FMC_NAND_MEM_BUS_WIDTH_16 FMC_NAND_PCC_MEM_BUS_WIDTH_16 +#endif +/** + * @} + */ + +/** @defgroup LL_FSMC_Aliased_Defines LL FSMC Aliased Defines maintained for legacy purpose + * @{ + */ + +#define FSMC_NORSRAM_TYPEDEF FSMC_NORSRAM_TypeDef +#define FSMC_NORSRAM_EXTENDED_TYPEDEF FSMC_NORSRAM_EXTENDED_TypeDef +/** + * @} + */ + +/** @defgroup HAL_GPIO_Aliased_Macros HAL GPIO Aliased Macros maintained for legacy purpose + * @{ + */ +#define GET_GPIO_SOURCE GPIO_GET_INDEX +#define GET_GPIO_INDEX GPIO_GET_INDEX + +#if defined(STM32F4) +#define GPIO_AF12_SDMMC GPIO_AF12_SDIO +#define GPIO_AF12_SDMMC1 GPIO_AF12_SDIO +#endif + +#if defined(STM32F7) +#define GPIO_AF12_SDIO GPIO_AF12_SDMMC1 +#define GPIO_AF12_SDMMC GPIO_AF12_SDMMC1 +#endif + +#if defined(STM32L4) +#define GPIO_AF12_SDIO GPIO_AF12_SDMMC1 +#define GPIO_AF12_SDMMC GPIO_AF12_SDMMC1 +#endif + +#if defined(STM32H7) +#define GPIO_AF7_SDIO1 GPIO_AF7_SDMMC1 +#define GPIO_AF8_SDIO1 GPIO_AF8_SDMMC1 +#define GPIO_AF12_SDIO1 GPIO_AF12_SDMMC1 +#define GPIO_AF9_SDIO2 GPIO_AF9_SDMMC2 +#define GPIO_AF10_SDIO2 GPIO_AF10_SDMMC2 +#define GPIO_AF11_SDIO2 GPIO_AF11_SDMMC2 + +#if defined (STM32H743xx) || defined (STM32H753xx) || defined (STM32H750xx) || defined (STM32H742xx) || \ + defined (STM32H745xx) || defined (STM32H755xx) || defined (STM32H747xx) || defined (STM32H757xx) +#define GPIO_AF10_OTG2_HS GPIO_AF10_OTG2_FS +#define GPIO_AF10_OTG1_FS GPIO_AF10_OTG1_HS +#define GPIO_AF12_OTG2_FS GPIO_AF12_OTG1_FS +#endif /*STM32H743xx || STM32H753xx || STM32H750xx || STM32H742xx || STM32H745xx || STM32H755xx || STM32H747xx || STM32H757xx */ +#endif /* STM32H7 */ + +#define GPIO_AF0_LPTIM GPIO_AF0_LPTIM1 +#define GPIO_AF1_LPTIM GPIO_AF1_LPTIM1 +#define GPIO_AF2_LPTIM GPIO_AF2_LPTIM1 + +#if defined(STM32L0) || defined(STM32L4) || defined(STM32F4) || defined(STM32F2) || defined(STM32F7) || defined(STM32G4) || defined(STM32H7) +#define GPIO_SPEED_LOW GPIO_SPEED_FREQ_LOW +#define GPIO_SPEED_MEDIUM GPIO_SPEED_FREQ_MEDIUM +#define GPIO_SPEED_FAST GPIO_SPEED_FREQ_HIGH +#define GPIO_SPEED_HIGH GPIO_SPEED_FREQ_VERY_HIGH +#endif /* STM32L0 || STM32L4 || STM32F4 || STM32F2 || STM32F7 || STM32G4 || STM32H7*/ + +#if defined(STM32L1) + #define GPIO_SPEED_VERY_LOW GPIO_SPEED_FREQ_LOW + #define GPIO_SPEED_LOW GPIO_SPEED_FREQ_MEDIUM + #define GPIO_SPEED_MEDIUM GPIO_SPEED_FREQ_HIGH + #define GPIO_SPEED_HIGH GPIO_SPEED_FREQ_VERY_HIGH +#endif /* STM32L1 */ + +#if defined(STM32F0) || defined(STM32F3) || defined(STM32F1) + #define GPIO_SPEED_LOW GPIO_SPEED_FREQ_LOW + #define GPIO_SPEED_MEDIUM GPIO_SPEED_FREQ_MEDIUM + #define GPIO_SPEED_HIGH GPIO_SPEED_FREQ_HIGH +#endif /* STM32F0 || STM32F3 || STM32F1 */ + +#define GPIO_AF6_DFSDM GPIO_AF6_DFSDM1 +/** + * @} + */ + +/** @defgroup HAL_HRTIM_Aliased_Macros HAL HRTIM Aliased Macros maintained for legacy purpose + * @{ + */ +#define HRTIM_TIMDELAYEDPROTECTION_DISABLED HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DISABLED +#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDOUT1_EEV68 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDOUT1_EEV6 +#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDOUT2_EEV68 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDOUT2_EEV6 +#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDBOTH_EEV68 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDBOTH_EEV6 +#define HRTIM_TIMDELAYEDPROTECTION_BALANCED_EEV68 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_BALANCED_EEV6 +#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDOUT1_DEEV79 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDOUT1_DEEV7 +#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDOUT2_DEEV79 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDOUT2_DEEV7 +#define HRTIM_TIMDELAYEDPROTECTION_DELAYEDBOTH_EEV79 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_DELAYEDBOTH_EEV7 +#define HRTIM_TIMDELAYEDPROTECTION_BALANCED_EEV79 HRTIM_TIMER_A_B_C_DELAYEDPROTECTION_BALANCED_EEV7 + +#define __HAL_HRTIM_SetCounter __HAL_HRTIM_SETCOUNTER +#define __HAL_HRTIM_GetCounter __HAL_HRTIM_GETCOUNTER +#define __HAL_HRTIM_SetPeriod __HAL_HRTIM_SETPERIOD +#define __HAL_HRTIM_GetPeriod __HAL_HRTIM_GETPERIOD +#define __HAL_HRTIM_SetClockPrescaler __HAL_HRTIM_SETCLOCKPRESCALER +#define __HAL_HRTIM_GetClockPrescaler __HAL_HRTIM_GETCLOCKPRESCALER +#define __HAL_HRTIM_SetCompare __HAL_HRTIM_SETCOMPARE +#define __HAL_HRTIM_GetCompare __HAL_HRTIM_GETCOMPARE + +#if defined(STM32G4) +#define HAL_HRTIM_ExternalEventCounterConfig HAL_HRTIM_ExtEventCounterConfig +#define HAL_HRTIM_ExternalEventCounterEnable HAL_HRTIM_ExtEventCounterEnable +#define HAL_HRTIM_ExternalEventCounterDisable HAL_HRTIM_ExtEventCounterDisable +#define HAL_HRTIM_ExternalEventCounterReset HAL_HRTIM_ExtEventCounterReset +#define HRTIM_TIMEEVENT_A HRTIM_EVENTCOUNTER_A +#define HRTIM_TIMEEVENT_B HRTIM_EVENTCOUNTER_B +#define HRTIM_TIMEEVENTRESETMODE_UNCONDITIONAL HRTIM_EVENTCOUNTER_RSTMODE_UNCONDITIONAL +#define HRTIM_TIMEEVENTRESETMODE_CONDITIONAL HRTIM_EVENTCOUNTER_RSTMODE_CONDITIONAL +#endif /* STM32G4 */ + +#if defined(STM32H7) +#define HRTIM_OUTPUTSET_TIMAEV1_TIMBCMP1 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTSET_TIMAEV2_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTSET_TIMAEV3_TIMCCMP2 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTSET_TIMAEV4_TIMCCMP3 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTSET_TIMAEV5_TIMDCMP1 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTSET_TIMAEV6_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTSET_TIMAEV7_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTSET_TIMAEV8_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTSET_TIMAEV9_TIMFCMP4 HRTIM_OUTPUTSET_TIMEV_9 +#define HRTIM_OUTPUTSET_TIMBEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTSET_TIMBEV2_TIMACMP2 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTSET_TIMBEV3_TIMCCMP3 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTSET_TIMBEV4_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTSET_TIMBEV5_TIMDCMP3 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTSET_TIMBEV6_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTSET_TIMBEV7_TIMECMP1 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTSET_TIMBEV8_TIMECMP2 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTSET_TIMBEV9_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_9 +#define HRTIM_OUTPUTSET_TIMCEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTSET_TIMCEV2_TIMACMP2 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTSET_TIMCEV3_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTSET_TIMCEV4_TIMBCMP3 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTSET_TIMCEV5_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTSET_TIMCEV6_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTSET_TIMCEV7_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTSET_TIMCEV8_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTSET_TIMCEV9_TIMFCMP2 HRTIM_OUTPUTSET_TIMEV_9 +#define HRTIM_OUTPUTSET_TIMDEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTSET_TIMDEV2_TIMACMP4 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTSET_TIMDEV3_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTSET_TIMDEV4_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTSET_TIMDEV5_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTSET_TIMDEV6_TIMECMP1 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTSET_TIMDEV7_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTSET_TIMDEV8_TIMFCMP1 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTSET_TIMDEV9_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_9 +#define HRTIM_OUTPUTSET_TIMEEV1_TIMACMP4 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTSET_TIMEEV2_TIMBCMP3 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTSET_TIMEEV3_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTSET_TIMEEV4_TIMCCMP1 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTSET_TIMEEV5_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTSET_TIMEEV6_TIMDCMP1 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTSET_TIMEEV7_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTSET_TIMEEV8_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTSET_TIMEEV9_TIMFCMP4 HRTIM_OUTPUTSET_TIMEV_9 +#define HRTIM_OUTPUTSET_TIMFEV1_TIMACMP3 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTSET_TIMFEV2_TIMBCMP1 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTSET_TIMFEV3_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTSET_TIMFEV4_TIMCCMP1 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTSET_TIMFEV5_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTSET_TIMFEV6_TIMDCMP3 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTSET_TIMFEV7_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTSET_TIMFEV8_TIMECMP2 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTSET_TIMFEV9_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_9 + +#define HRTIM_OUTPUTRESET_TIMAEV1_TIMBCMP1 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTRESET_TIMAEV2_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTRESET_TIMAEV3_TIMCCMP2 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTRESET_TIMAEV4_TIMCCMP3 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTRESET_TIMAEV5_TIMDCMP1 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTRESET_TIMAEV6_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTRESET_TIMAEV7_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTRESET_TIMAEV8_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTRESET_TIMAEV9_TIMFCMP4 HRTIM_OUTPUTSET_TIMEV_9 +#define HRTIM_OUTPUTRESET_TIMBEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTRESET_TIMBEV2_TIMACMP2 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTRESET_TIMBEV3_TIMCCMP3 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTRESET_TIMBEV4_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTRESET_TIMBEV5_TIMDCMP3 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTRESET_TIMBEV6_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTRESET_TIMBEV7_TIMECMP1 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTRESET_TIMBEV8_TIMECMP2 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTRESET_TIMBEV9_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_9 +#define HRTIM_OUTPUTRESET_TIMCEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTRESET_TIMCEV2_TIMACMP2 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTRESET_TIMCEV3_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTRESET_TIMCEV4_TIMBCMP3 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTRESET_TIMCEV5_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTRESET_TIMCEV6_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTRESET_TIMCEV7_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTRESET_TIMCEV8_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTRESET_TIMCEV9_TIMFCMP2 HRTIM_OUTPUTSET_TIMEV_9 +#define HRTIM_OUTPUTRESET_TIMDEV1_TIMACMP1 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTRESET_TIMDEV2_TIMACMP4 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTRESET_TIMDEV3_TIMBCMP2 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTRESET_TIMDEV4_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTRESET_TIMDEV5_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTRESET_TIMDEV6_TIMECMP1 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTRESET_TIMDEV7_TIMECMP4 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTRESET_TIMDEV8_TIMFCMP1 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTRESET_TIMDEV9_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_9 +#define HRTIM_OUTPUTRESET_TIMEEV1_TIMACMP4 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTRESET_TIMEEV2_TIMBCMP3 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTRESET_TIMEEV3_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTRESET_TIMEEV4_TIMCCMP1 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTRESET_TIMEEV5_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTRESET_TIMEEV6_TIMDCMP1 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTRESET_TIMEEV7_TIMDCMP2 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTRESET_TIMEEV8_TIMFCMP3 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTRESET_TIMEEV9_TIMFCMP4 HRTIM_OUTPUTSET_TIMEV_9 +#define HRTIM_OUTPUTRESET_TIMFEV1_TIMACMP3 HRTIM_OUTPUTSET_TIMEV_1 +#define HRTIM_OUTPUTRESET_TIMFEV2_TIMBCMP1 HRTIM_OUTPUTSET_TIMEV_2 +#define HRTIM_OUTPUTRESET_TIMFEV3_TIMBCMP4 HRTIM_OUTPUTSET_TIMEV_3 +#define HRTIM_OUTPUTRESET_TIMFEV4_TIMCCMP1 HRTIM_OUTPUTSET_TIMEV_4 +#define HRTIM_OUTPUTRESET_TIMFEV5_TIMCCMP4 HRTIM_OUTPUTSET_TIMEV_5 +#define HRTIM_OUTPUTRESET_TIMFEV6_TIMDCMP3 HRTIM_OUTPUTSET_TIMEV_6 +#define HRTIM_OUTPUTRESET_TIMFEV7_TIMDCMP4 HRTIM_OUTPUTSET_TIMEV_7 +#define HRTIM_OUTPUTRESET_TIMFEV8_TIMECMP2 HRTIM_OUTPUTSET_TIMEV_8 +#define HRTIM_OUTPUTRESET_TIMFEV9_TIMECMP3 HRTIM_OUTPUTSET_TIMEV_9 +#endif /* STM32H7 */ + +#if defined(STM32F3) +/** @brief Constants defining available sources associated to external events. + */ +#define HRTIM_EVENTSRC_1 (0x00000000U) +#define HRTIM_EVENTSRC_2 (HRTIM_EECR1_EE1SRC_0) +#define HRTIM_EVENTSRC_3 (HRTIM_EECR1_EE1SRC_1) +#define HRTIM_EVENTSRC_4 (HRTIM_EECR1_EE1SRC_1 | HRTIM_EECR1_EE1SRC_0) + +/** @brief Constants defining the events that can be selected to configure the + * set/reset crossbar of a timer output + */ +#define HRTIM_OUTPUTSET_TIMEV_1 (HRTIM_SET1R_TIMEVNT1) +#define HRTIM_OUTPUTSET_TIMEV_2 (HRTIM_SET1R_TIMEVNT2) +#define HRTIM_OUTPUTSET_TIMEV_3 (HRTIM_SET1R_TIMEVNT3) +#define HRTIM_OUTPUTSET_TIMEV_4 (HRTIM_SET1R_TIMEVNT4) +#define HRTIM_OUTPUTSET_TIMEV_5 (HRTIM_SET1R_TIMEVNT5) +#define HRTIM_OUTPUTSET_TIMEV_6 (HRTIM_SET1R_TIMEVNT6) +#define HRTIM_OUTPUTSET_TIMEV_7 (HRTIM_SET1R_TIMEVNT7) +#define HRTIM_OUTPUTSET_TIMEV_8 (HRTIM_SET1R_TIMEVNT8) +#define HRTIM_OUTPUTSET_TIMEV_9 (HRTIM_SET1R_TIMEVNT9) + +#define HRTIM_OUTPUTRESET_TIMEV_1 (HRTIM_RST1R_TIMEVNT1) +#define HRTIM_OUTPUTRESET_TIMEV_2 (HRTIM_RST1R_TIMEVNT2) +#define HRTIM_OUTPUTRESET_TIMEV_3 (HRTIM_RST1R_TIMEVNT3) +#define HRTIM_OUTPUTRESET_TIMEV_4 (HRTIM_RST1R_TIMEVNT4) +#define HRTIM_OUTPUTRESET_TIMEV_5 (HRTIM_RST1R_TIMEVNT5) +#define HRTIM_OUTPUTRESET_TIMEV_6 (HRTIM_RST1R_TIMEVNT6) +#define HRTIM_OUTPUTRESET_TIMEV_7 (HRTIM_RST1R_TIMEVNT7) +#define HRTIM_OUTPUTRESET_TIMEV_8 (HRTIM_RST1R_TIMEVNT8) +#define HRTIM_OUTPUTRESET_TIMEV_9 (HRTIM_RST1R_TIMEVNT9) + +/** @brief Constants defining the event filtering applied to external events + * by a timer + */ +#define HRTIM_TIMEVENTFILTER_NONE (0x00000000U) +#define HRTIM_TIMEVENTFILTER_BLANKINGCMP1 (HRTIM_EEFR1_EE1FLTR_0) +#define HRTIM_TIMEVENTFILTER_BLANKINGCMP2 (HRTIM_EEFR1_EE1FLTR_1) +#define HRTIM_TIMEVENTFILTER_BLANKINGCMP3 (HRTIM_EEFR1_EE1FLTR_1 | HRTIM_EEFR1_EE1FLTR_0) +#define HRTIM_TIMEVENTFILTER_BLANKINGCMP4 (HRTIM_EEFR1_EE1FLTR_2) +#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR1 (HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_0) +#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR2 (HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_1) +#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR3 (HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_1 | HRTIM_EEFR1_EE1FLTR_0) +#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR4 (HRTIM_EEFR1_EE1FLTR_3) +#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR5 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_0) +#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR6 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_1) +#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR7 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_1 | HRTIM_EEFR1_EE1FLTR_0) +#define HRTIM_TIMEVENTFILTER_BLANKINGFLTR8 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_2) +#define HRTIM_TIMEVENTFILTER_WINDOWINGCMP2 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_0) +#define HRTIM_TIMEVENTFILTER_WINDOWINGCMP3 (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_1) +#define HRTIM_TIMEVENTFILTER_WINDOWINGTIM (HRTIM_EEFR1_EE1FLTR_3 | HRTIM_EEFR1_EE1FLTR_2 | HRTIM_EEFR1_EE1FLTR_1 | HRTIM_EEFR1_EE1FLTR_0) + +/** @brief Constants defining the DLL calibration periods (in micro seconds) + */ +#define HRTIM_CALIBRATIONRATE_7300 0x00000000U +#define HRTIM_CALIBRATIONRATE_910 (HRTIM_DLLCR_CALRTE_0) +#define HRTIM_CALIBRATIONRATE_114 (HRTIM_DLLCR_CALRTE_1) +#define HRTIM_CALIBRATIONRATE_14 (HRTIM_DLLCR_CALRTE_1 | HRTIM_DLLCR_CALRTE_0) + +#endif /* STM32F3 */ +/** + * @} + */ + +/** @defgroup HAL_I2C_Aliased_Defines HAL I2C Aliased Defines maintained for legacy purpose + * @{ + */ +#define I2C_DUALADDRESS_DISABLED I2C_DUALADDRESS_DISABLE +#define I2C_DUALADDRESS_ENABLED I2C_DUALADDRESS_ENABLE +#define I2C_GENERALCALL_DISABLED I2C_GENERALCALL_DISABLE +#define I2C_GENERALCALL_ENABLED I2C_GENERALCALL_ENABLE +#define I2C_NOSTRETCH_DISABLED I2C_NOSTRETCH_DISABLE +#define I2C_NOSTRETCH_ENABLED I2C_NOSTRETCH_ENABLE +#define I2C_ANALOGFILTER_ENABLED I2C_ANALOGFILTER_ENABLE +#define I2C_ANALOGFILTER_DISABLED I2C_ANALOGFILTER_DISABLE +#if defined(STM32F0) || defined(STM32F1) || defined(STM32F3) || defined(STM32G0) || defined(STM32L4) || defined(STM32L1) || defined(STM32F7) +#define HAL_I2C_STATE_MEM_BUSY_TX HAL_I2C_STATE_BUSY_TX +#define HAL_I2C_STATE_MEM_BUSY_RX HAL_I2C_STATE_BUSY_RX +#define HAL_I2C_STATE_MASTER_BUSY_TX HAL_I2C_STATE_BUSY_TX +#define HAL_I2C_STATE_MASTER_BUSY_RX HAL_I2C_STATE_BUSY_RX +#define HAL_I2C_STATE_SLAVE_BUSY_TX HAL_I2C_STATE_BUSY_TX +#define HAL_I2C_STATE_SLAVE_BUSY_RX HAL_I2C_STATE_BUSY_RX +#endif +/** + * @} + */ + +/** @defgroup HAL_IRDA_Aliased_Defines HAL IRDA Aliased Defines maintained for legacy purpose + * @{ + */ +#define IRDA_ONE_BIT_SAMPLE_DISABLED IRDA_ONE_BIT_SAMPLE_DISABLE +#define IRDA_ONE_BIT_SAMPLE_ENABLED IRDA_ONE_BIT_SAMPLE_ENABLE + +/** + * @} + */ + +/** @defgroup HAL_IWDG_Aliased_Defines HAL IWDG Aliased Defines maintained for legacy purpose + * @{ + */ +#define KR_KEY_RELOAD IWDG_KEY_RELOAD +#define KR_KEY_ENABLE IWDG_KEY_ENABLE +#define KR_KEY_EWA IWDG_KEY_WRITE_ACCESS_ENABLE +#define KR_KEY_DWA IWDG_KEY_WRITE_ACCESS_DISABLE +/** + * @} + */ + +/** @defgroup HAL_LPTIM_Aliased_Defines HAL LPTIM Aliased Defines maintained for legacy purpose + * @{ + */ + +#define LPTIM_CLOCKSAMPLETIME_DIRECTTRANSISTION LPTIM_CLOCKSAMPLETIME_DIRECTTRANSITION +#define LPTIM_CLOCKSAMPLETIME_2TRANSISTIONS LPTIM_CLOCKSAMPLETIME_2TRANSITIONS +#define LPTIM_CLOCKSAMPLETIME_4TRANSISTIONS LPTIM_CLOCKSAMPLETIME_4TRANSITIONS +#define LPTIM_CLOCKSAMPLETIME_8TRANSISTIONS LPTIM_CLOCKSAMPLETIME_8TRANSITIONS + +#define LPTIM_CLOCKPOLARITY_RISINGEDGE LPTIM_CLOCKPOLARITY_RISING +#define LPTIM_CLOCKPOLARITY_FALLINGEDGE LPTIM_CLOCKPOLARITY_FALLING +#define LPTIM_CLOCKPOLARITY_BOTHEDGES LPTIM_CLOCKPOLARITY_RISING_FALLING + +#define LPTIM_TRIGSAMPLETIME_DIRECTTRANSISTION LPTIM_TRIGSAMPLETIME_DIRECTTRANSITION +#define LPTIM_TRIGSAMPLETIME_2TRANSISTIONS LPTIM_TRIGSAMPLETIME_2TRANSITIONS +#define LPTIM_TRIGSAMPLETIME_4TRANSISTIONS LPTIM_TRIGSAMPLETIME_4TRANSITIONS +#define LPTIM_TRIGSAMPLETIME_8TRANSISTIONS LPTIM_TRIGSAMPLETIME_8TRANSITIONS + +/* The following 3 definition have also been present in a temporary version of lptim.h */ +/* They need to be renamed also to the right name, just in case */ +#define LPTIM_TRIGSAMPLETIME_2TRANSITION LPTIM_TRIGSAMPLETIME_2TRANSITIONS +#define LPTIM_TRIGSAMPLETIME_4TRANSITION LPTIM_TRIGSAMPLETIME_4TRANSITIONS +#define LPTIM_TRIGSAMPLETIME_8TRANSITION LPTIM_TRIGSAMPLETIME_8TRANSITIONS + +/** + * @} + */ + +/** @defgroup HAL_NAND_Aliased_Defines HAL NAND Aliased Defines maintained for legacy purpose + * @{ + */ +#define HAL_NAND_Read_Page HAL_NAND_Read_Page_8b +#define HAL_NAND_Write_Page HAL_NAND_Write_Page_8b +#define HAL_NAND_Read_SpareArea HAL_NAND_Read_SpareArea_8b +#define HAL_NAND_Write_SpareArea HAL_NAND_Write_SpareArea_8b + +#define NAND_AddressTypedef NAND_AddressTypeDef + +#define __ARRAY_ADDRESS ARRAY_ADDRESS +#define __ADDR_1st_CYCLE ADDR_1ST_CYCLE +#define __ADDR_2nd_CYCLE ADDR_2ND_CYCLE +#define __ADDR_3rd_CYCLE ADDR_3RD_CYCLE +#define __ADDR_4th_CYCLE ADDR_4TH_CYCLE +/** + * @} + */ + +/** @defgroup HAL_NOR_Aliased_Defines HAL NOR Aliased Defines maintained for legacy purpose + * @{ + */ +#define NOR_StatusTypedef HAL_NOR_StatusTypeDef +#define NOR_SUCCESS HAL_NOR_STATUS_SUCCESS +#define NOR_ONGOING HAL_NOR_STATUS_ONGOING +#define NOR_ERROR HAL_NOR_STATUS_ERROR +#define NOR_TIMEOUT HAL_NOR_STATUS_TIMEOUT + +#define __NOR_WRITE NOR_WRITE +#define __NOR_ADDR_SHIFT NOR_ADDR_SHIFT +/** + * @} + */ + +/** @defgroup HAL_OPAMP_Aliased_Defines HAL OPAMP Aliased Defines maintained for legacy purpose + * @{ + */ + +#define OPAMP_NONINVERTINGINPUT_VP0 OPAMP_NONINVERTINGINPUT_IO0 +#define OPAMP_NONINVERTINGINPUT_VP1 OPAMP_NONINVERTINGINPUT_IO1 +#define OPAMP_NONINVERTINGINPUT_VP2 OPAMP_NONINVERTINGINPUT_IO2 +#define OPAMP_NONINVERTINGINPUT_VP3 OPAMP_NONINVERTINGINPUT_IO3 + +#define OPAMP_SEC_NONINVERTINGINPUT_VP0 OPAMP_SEC_NONINVERTINGINPUT_IO0 +#define OPAMP_SEC_NONINVERTINGINPUT_VP1 OPAMP_SEC_NONINVERTINGINPUT_IO1 +#define OPAMP_SEC_NONINVERTINGINPUT_VP2 OPAMP_SEC_NONINVERTINGINPUT_IO2 +#define OPAMP_SEC_NONINVERTINGINPUT_VP3 OPAMP_SEC_NONINVERTINGINPUT_IO3 + +#define OPAMP_INVERTINGINPUT_VM0 OPAMP_INVERTINGINPUT_IO0 +#define OPAMP_INVERTINGINPUT_VM1 OPAMP_INVERTINGINPUT_IO1 + +#define IOPAMP_INVERTINGINPUT_VM0 OPAMP_INVERTINGINPUT_IO0 +#define IOPAMP_INVERTINGINPUT_VM1 OPAMP_INVERTINGINPUT_IO1 + +#define OPAMP_SEC_INVERTINGINPUT_VM0 OPAMP_SEC_INVERTINGINPUT_IO0 +#define OPAMP_SEC_INVERTINGINPUT_VM1 OPAMP_SEC_INVERTINGINPUT_IO1 + +#define OPAMP_INVERTINGINPUT_VINM OPAMP_SEC_INVERTINGINPUT_IO1 + +#define OPAMP_PGACONNECT_NO OPAMP_PGA_CONNECT_INVERTINGINPUT_NO +#define OPAMP_PGACONNECT_VM0 OPAMP_PGA_CONNECT_INVERTINGINPUT_IO0 +#define OPAMP_PGACONNECT_VM1 OPAMP_PGA_CONNECT_INVERTINGINPUT_IO1 + +#if defined(STM32L1) || defined(STM32L4) || defined(STM32L5) || defined(STM32H7) || defined(STM32G4) +#define HAL_OPAMP_MSP_INIT_CB_ID HAL_OPAMP_MSPINIT_CB_ID +#define HAL_OPAMP_MSP_DEINIT_CB_ID HAL_OPAMP_MSPDEINIT_CB_ID +#endif + + +/** + * @} + */ + +/** @defgroup HAL_I2S_Aliased_Defines HAL I2S Aliased Defines maintained for legacy purpose + * @{ + */ +#define I2S_STANDARD_PHILLIPS I2S_STANDARD_PHILIPS + +#if defined(STM32H7) + #define I2S_IT_TXE I2S_IT_TXP + #define I2S_IT_RXNE I2S_IT_RXP + + #define I2S_FLAG_TXE I2S_FLAG_TXP + #define I2S_FLAG_RXNE I2S_FLAG_RXP +#endif + +#if defined(STM32F7) + #define I2S_CLOCK_SYSCLK I2S_CLOCK_PLL +#endif +/** + * @} + */ + +/** @defgroup HAL_PCCARD_Aliased_Defines HAL PCCARD Aliased Defines maintained for legacy purpose + * @{ + */ + +/* Compact Flash-ATA registers description */ +#define CF_DATA ATA_DATA +#define CF_SECTOR_COUNT ATA_SECTOR_COUNT +#define CF_SECTOR_NUMBER ATA_SECTOR_NUMBER +#define CF_CYLINDER_LOW ATA_CYLINDER_LOW +#define CF_CYLINDER_HIGH ATA_CYLINDER_HIGH +#define CF_CARD_HEAD ATA_CARD_HEAD +#define CF_STATUS_CMD ATA_STATUS_CMD +#define CF_STATUS_CMD_ALTERNATE ATA_STATUS_CMD_ALTERNATE +#define CF_COMMON_DATA_AREA ATA_COMMON_DATA_AREA + +/* Compact Flash-ATA commands */ +#define CF_READ_SECTOR_CMD ATA_READ_SECTOR_CMD +#define CF_WRITE_SECTOR_CMD ATA_WRITE_SECTOR_CMD +#define CF_ERASE_SECTOR_CMD ATA_ERASE_SECTOR_CMD +#define CF_IDENTIFY_CMD ATA_IDENTIFY_CMD + +#define PCCARD_StatusTypedef HAL_PCCARD_StatusTypeDef +#define PCCARD_SUCCESS HAL_PCCARD_STATUS_SUCCESS +#define PCCARD_ONGOING HAL_PCCARD_STATUS_ONGOING +#define PCCARD_ERROR HAL_PCCARD_STATUS_ERROR +#define PCCARD_TIMEOUT HAL_PCCARD_STATUS_TIMEOUT +/** + * @} + */ + +/** @defgroup HAL_RTC_Aliased_Defines HAL RTC Aliased Defines maintained for legacy purpose + * @{ + */ + +#define FORMAT_BIN RTC_FORMAT_BIN +#define FORMAT_BCD RTC_FORMAT_BCD + +#define RTC_ALARMSUBSECONDMASK_None RTC_ALARMSUBSECONDMASK_NONE +#define RTC_TAMPERERASEBACKUP_DISABLED RTC_TAMPER_ERASE_BACKUP_DISABLE +#define RTC_TAMPERMASK_FLAG_DISABLED RTC_TAMPERMASK_FLAG_DISABLE +#define RTC_TAMPERMASK_FLAG_ENABLED RTC_TAMPERMASK_FLAG_ENABLE + +#define RTC_MASKTAMPERFLAG_DISABLED RTC_TAMPERMASK_FLAG_DISABLE +#define RTC_MASKTAMPERFLAG_ENABLED RTC_TAMPERMASK_FLAG_ENABLE +#define RTC_TAMPERERASEBACKUP_ENABLED RTC_TAMPER_ERASE_BACKUP_ENABLE +#define RTC_TAMPER1_2_INTERRUPT RTC_ALL_TAMPER_INTERRUPT +#define RTC_TAMPER1_2_3_INTERRUPT RTC_ALL_TAMPER_INTERRUPT + +#define RTC_TIMESTAMPPIN_PC13 RTC_TIMESTAMPPIN_DEFAULT +#define RTC_TIMESTAMPPIN_PA0 RTC_TIMESTAMPPIN_POS1 +#define RTC_TIMESTAMPPIN_PI8 RTC_TIMESTAMPPIN_POS1 +#define RTC_TIMESTAMPPIN_PC1 RTC_TIMESTAMPPIN_POS2 + +#define RTC_OUTPUT_REMAP_PC13 RTC_OUTPUT_REMAP_NONE +#define RTC_OUTPUT_REMAP_PB14 RTC_OUTPUT_REMAP_POS1 +#define RTC_OUTPUT_REMAP_PB2 RTC_OUTPUT_REMAP_POS1 + +#define RTC_TAMPERPIN_PC13 RTC_TAMPERPIN_DEFAULT +#define RTC_TAMPERPIN_PA0 RTC_TAMPERPIN_POS1 +#define RTC_TAMPERPIN_PI8 RTC_TAMPERPIN_POS1 + +#if defined(STM32H7) +#define RTC_TAMPCR_TAMPXE RTC_TAMPER_X +#define RTC_TAMPCR_TAMPXIE RTC_TAMPER_X_INTERRUPT + +#define RTC_TAMPER1_INTERRUPT RTC_IT_TAMP1 +#define RTC_TAMPER2_INTERRUPT RTC_IT_TAMP2 +#define RTC_TAMPER3_INTERRUPT RTC_IT_TAMP3 +#define RTC_ALL_TAMPER_INTERRUPT RTC_IT_TAMPALL +#endif /* STM32H7 */ + +/** + * @} + */ + + +/** @defgroup HAL_SMARTCARD_Aliased_Defines HAL SMARTCARD Aliased Defines maintained for legacy purpose + * @{ + */ +#define SMARTCARD_NACK_ENABLED SMARTCARD_NACK_ENABLE +#define SMARTCARD_NACK_DISABLED SMARTCARD_NACK_DISABLE + +#define SMARTCARD_ONEBIT_SAMPLING_DISABLED SMARTCARD_ONE_BIT_SAMPLE_DISABLE +#define SMARTCARD_ONEBIT_SAMPLING_ENABLED SMARTCARD_ONE_BIT_SAMPLE_ENABLE +#define SMARTCARD_ONEBIT_SAMPLING_DISABLE SMARTCARD_ONE_BIT_SAMPLE_DISABLE +#define SMARTCARD_ONEBIT_SAMPLING_ENABLE SMARTCARD_ONE_BIT_SAMPLE_ENABLE + +#define SMARTCARD_TIMEOUT_DISABLED SMARTCARD_TIMEOUT_DISABLE +#define SMARTCARD_TIMEOUT_ENABLED SMARTCARD_TIMEOUT_ENABLE + +#define SMARTCARD_LASTBIT_DISABLED SMARTCARD_LASTBIT_DISABLE +#define SMARTCARD_LASTBIT_ENABLED SMARTCARD_LASTBIT_ENABLE +/** + * @} + */ + + +/** @defgroup HAL_SMBUS_Aliased_Defines HAL SMBUS Aliased Defines maintained for legacy purpose + * @{ + */ +#define SMBUS_DUALADDRESS_DISABLED SMBUS_DUALADDRESS_DISABLE +#define SMBUS_DUALADDRESS_ENABLED SMBUS_DUALADDRESS_ENABLE +#define SMBUS_GENERALCALL_DISABLED SMBUS_GENERALCALL_DISABLE +#define SMBUS_GENERALCALL_ENABLED SMBUS_GENERALCALL_ENABLE +#define SMBUS_NOSTRETCH_DISABLED SMBUS_NOSTRETCH_DISABLE +#define SMBUS_NOSTRETCH_ENABLED SMBUS_NOSTRETCH_ENABLE +#define SMBUS_ANALOGFILTER_ENABLED SMBUS_ANALOGFILTER_ENABLE +#define SMBUS_ANALOGFILTER_DISABLED SMBUS_ANALOGFILTER_DISABLE +#define SMBUS_PEC_DISABLED SMBUS_PEC_DISABLE +#define SMBUS_PEC_ENABLED SMBUS_PEC_ENABLE +#define HAL_SMBUS_STATE_SLAVE_LISTEN HAL_SMBUS_STATE_LISTEN +/** + * @} + */ + +/** @defgroup HAL_SPI_Aliased_Defines HAL SPI Aliased Defines maintained for legacy purpose + * @{ + */ +#define SPI_TIMODE_DISABLED SPI_TIMODE_DISABLE +#define SPI_TIMODE_ENABLED SPI_TIMODE_ENABLE + +#define SPI_CRCCALCULATION_DISABLED SPI_CRCCALCULATION_DISABLE +#define SPI_CRCCALCULATION_ENABLED SPI_CRCCALCULATION_ENABLE + +#define SPI_NSS_PULSE_DISABLED SPI_NSS_PULSE_DISABLE +#define SPI_NSS_PULSE_ENABLED SPI_NSS_PULSE_ENABLE + +#if defined(STM32H7) + + #define SPI_FLAG_TXE SPI_FLAG_TXP + #define SPI_FLAG_RXNE SPI_FLAG_RXP + + #define SPI_IT_TXE SPI_IT_TXP + #define SPI_IT_RXNE SPI_IT_RXP + + #define SPI_FRLVL_EMPTY SPI_RX_FIFO_0PACKET + #define SPI_FRLVL_QUARTER_FULL SPI_RX_FIFO_1PACKET + #define SPI_FRLVL_HALF_FULL SPI_RX_FIFO_2PACKET + #define SPI_FRLVL_FULL SPI_RX_FIFO_3PACKET + +#endif /* STM32H7 */ + +/** + * @} + */ + +/** @defgroup HAL_TIM_Aliased_Defines HAL TIM Aliased Defines maintained for legacy purpose + * @{ + */ +#define CCER_CCxE_MASK TIM_CCER_CCxE_MASK +#define CCER_CCxNE_MASK TIM_CCER_CCxNE_MASK + +#define TIM_DMABase_CR1 TIM_DMABASE_CR1 +#define TIM_DMABase_CR2 TIM_DMABASE_CR2 +#define TIM_DMABase_SMCR TIM_DMABASE_SMCR +#define TIM_DMABase_DIER TIM_DMABASE_DIER +#define TIM_DMABase_SR TIM_DMABASE_SR +#define TIM_DMABase_EGR TIM_DMABASE_EGR +#define TIM_DMABase_CCMR1 TIM_DMABASE_CCMR1 +#define TIM_DMABase_CCMR2 TIM_DMABASE_CCMR2 +#define TIM_DMABase_CCER TIM_DMABASE_CCER +#define TIM_DMABase_CNT TIM_DMABASE_CNT +#define TIM_DMABase_PSC TIM_DMABASE_PSC +#define TIM_DMABase_ARR TIM_DMABASE_ARR +#define TIM_DMABase_RCR TIM_DMABASE_RCR +#define TIM_DMABase_CCR1 TIM_DMABASE_CCR1 +#define TIM_DMABase_CCR2 TIM_DMABASE_CCR2 +#define TIM_DMABase_CCR3 TIM_DMABASE_CCR3 +#define TIM_DMABase_CCR4 TIM_DMABASE_CCR4 +#define TIM_DMABase_BDTR TIM_DMABASE_BDTR +#define TIM_DMABase_DCR TIM_DMABASE_DCR +#define TIM_DMABase_DMAR TIM_DMABASE_DMAR +#define TIM_DMABase_OR1 TIM_DMABASE_OR1 +#define TIM_DMABase_CCMR3 TIM_DMABASE_CCMR3 +#define TIM_DMABase_CCR5 TIM_DMABASE_CCR5 +#define TIM_DMABase_CCR6 TIM_DMABASE_CCR6 +#define TIM_DMABase_OR2 TIM_DMABASE_OR2 +#define TIM_DMABase_OR3 TIM_DMABASE_OR3 +#define TIM_DMABase_OR TIM_DMABASE_OR + +#define TIM_EventSource_Update TIM_EVENTSOURCE_UPDATE +#define TIM_EventSource_CC1 TIM_EVENTSOURCE_CC1 +#define TIM_EventSource_CC2 TIM_EVENTSOURCE_CC2 +#define TIM_EventSource_CC3 TIM_EVENTSOURCE_CC3 +#define TIM_EventSource_CC4 TIM_EVENTSOURCE_CC4 +#define TIM_EventSource_COM TIM_EVENTSOURCE_COM +#define TIM_EventSource_Trigger TIM_EVENTSOURCE_TRIGGER +#define TIM_EventSource_Break TIM_EVENTSOURCE_BREAK +#define TIM_EventSource_Break2 TIM_EVENTSOURCE_BREAK2 + +#define TIM_DMABurstLength_1Transfer TIM_DMABURSTLENGTH_1TRANSFER +#define TIM_DMABurstLength_2Transfers TIM_DMABURSTLENGTH_2TRANSFERS +#define TIM_DMABurstLength_3Transfers TIM_DMABURSTLENGTH_3TRANSFERS +#define TIM_DMABurstLength_4Transfers TIM_DMABURSTLENGTH_4TRANSFERS +#define TIM_DMABurstLength_5Transfers TIM_DMABURSTLENGTH_5TRANSFERS +#define TIM_DMABurstLength_6Transfers TIM_DMABURSTLENGTH_6TRANSFERS +#define TIM_DMABurstLength_7Transfers TIM_DMABURSTLENGTH_7TRANSFERS +#define TIM_DMABurstLength_8Transfers TIM_DMABURSTLENGTH_8TRANSFERS +#define TIM_DMABurstLength_9Transfers TIM_DMABURSTLENGTH_9TRANSFERS +#define TIM_DMABurstLength_10Transfers TIM_DMABURSTLENGTH_10TRANSFERS +#define TIM_DMABurstLength_11Transfers TIM_DMABURSTLENGTH_11TRANSFERS +#define TIM_DMABurstLength_12Transfers TIM_DMABURSTLENGTH_12TRANSFERS +#define TIM_DMABurstLength_13Transfers TIM_DMABURSTLENGTH_13TRANSFERS +#define TIM_DMABurstLength_14Transfers TIM_DMABURSTLENGTH_14TRANSFERS +#define TIM_DMABurstLength_15Transfers TIM_DMABURSTLENGTH_15TRANSFERS +#define TIM_DMABurstLength_16Transfers TIM_DMABURSTLENGTH_16TRANSFERS +#define TIM_DMABurstLength_17Transfers TIM_DMABURSTLENGTH_17TRANSFERS +#define TIM_DMABurstLength_18Transfers TIM_DMABURSTLENGTH_18TRANSFERS + +#if defined(STM32L0) +#define TIM22_TI1_GPIO1 TIM22_TI1_GPIO +#define TIM22_TI1_GPIO2 TIM22_TI1_GPIO +#endif + +#if defined(STM32F3) +#define IS_TIM_HALL_INTERFACE_INSTANCE IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE +#endif + +#if defined(STM32H7) +#define TIM_TIM1_ETR_COMP1_OUT TIM_TIM1_ETR_COMP1 +#define TIM_TIM1_ETR_COMP2_OUT TIM_TIM1_ETR_COMP2 +#define TIM_TIM8_ETR_COMP1_OUT TIM_TIM8_ETR_COMP1 +#define TIM_TIM8_ETR_COMP2_OUT TIM_TIM8_ETR_COMP2 +#define TIM_TIM2_ETR_COMP1_OUT TIM_TIM2_ETR_COMP1 +#define TIM_TIM2_ETR_COMP2_OUT TIM_TIM2_ETR_COMP2 +#define TIM_TIM3_ETR_COMP1_OUT TIM_TIM3_ETR_COMP1 +#define TIM_TIM1_TI1_COMP1_OUT TIM_TIM1_TI1_COMP1 +#define TIM_TIM8_TI1_COMP2_OUT TIM_TIM8_TI1_COMP2 +#define TIM_TIM2_TI4_COMP1_OUT TIM_TIM2_TI4_COMP1 +#define TIM_TIM2_TI4_COMP2_OUT TIM_TIM2_TI4_COMP2 +#define TIM_TIM2_TI4_COMP1COMP2_OUT TIM_TIM2_TI4_COMP1_COMP2 +#define TIM_TIM3_TI1_COMP1_OUT TIM_TIM3_TI1_COMP1 +#define TIM_TIM3_TI1_COMP2_OUT TIM_TIM3_TI1_COMP2 +#define TIM_TIM3_TI1_COMP1COMP2_OUT TIM_TIM3_TI1_COMP1_COMP2 +#endif + +/** + * @} + */ + +/** @defgroup HAL_TSC_Aliased_Defines HAL TSC Aliased Defines maintained for legacy purpose + * @{ + */ +#define TSC_SYNC_POL_FALL TSC_SYNC_POLARITY_FALLING +#define TSC_SYNC_POL_RISE_HIGH TSC_SYNC_POLARITY_RISING +/** + * @} + */ + +/** @defgroup HAL_UART_Aliased_Defines HAL UART Aliased Defines maintained for legacy purpose + * @{ + */ +#define UART_ONEBIT_SAMPLING_DISABLED UART_ONE_BIT_SAMPLE_DISABLE +#define UART_ONEBIT_SAMPLING_ENABLED UART_ONE_BIT_SAMPLE_ENABLE +#define UART_ONE_BIT_SAMPLE_DISABLED UART_ONE_BIT_SAMPLE_DISABLE +#define UART_ONE_BIT_SAMPLE_ENABLED UART_ONE_BIT_SAMPLE_ENABLE + +#define __HAL_UART_ONEBIT_ENABLE __HAL_UART_ONE_BIT_SAMPLE_ENABLE +#define __HAL_UART_ONEBIT_DISABLE __HAL_UART_ONE_BIT_SAMPLE_DISABLE + +#define __DIV_SAMPLING16 UART_DIV_SAMPLING16 +#define __DIVMANT_SAMPLING16 UART_DIVMANT_SAMPLING16 +#define __DIVFRAQ_SAMPLING16 UART_DIVFRAQ_SAMPLING16 +#define __UART_BRR_SAMPLING16 UART_BRR_SAMPLING16 + +#define __DIV_SAMPLING8 UART_DIV_SAMPLING8 +#define __DIVMANT_SAMPLING8 UART_DIVMANT_SAMPLING8 +#define __DIVFRAQ_SAMPLING8 UART_DIVFRAQ_SAMPLING8 +#define __UART_BRR_SAMPLING8 UART_BRR_SAMPLING8 + +#define __DIV_LPUART UART_DIV_LPUART + +#define UART_WAKEUPMETHODE_IDLELINE UART_WAKEUPMETHOD_IDLELINE +#define UART_WAKEUPMETHODE_ADDRESSMARK UART_WAKEUPMETHOD_ADDRESSMARK + +/** + * @} + */ + + +/** @defgroup HAL_USART_Aliased_Defines HAL USART Aliased Defines maintained for legacy purpose + * @{ + */ + +#define USART_CLOCK_DISABLED USART_CLOCK_DISABLE +#define USART_CLOCK_ENABLED USART_CLOCK_ENABLE + +#define USARTNACK_ENABLED USART_NACK_ENABLE +#define USARTNACK_DISABLED USART_NACK_DISABLE +/** + * @} + */ + +/** @defgroup HAL_WWDG_Aliased_Defines HAL WWDG Aliased Defines maintained for legacy purpose + * @{ + */ +#define CFR_BASE WWDG_CFR_BASE + +/** + * @} + */ + +/** @defgroup HAL_CAN_Aliased_Defines HAL CAN Aliased Defines maintained for legacy purpose + * @{ + */ +#define CAN_FilterFIFO0 CAN_FILTER_FIFO0 +#define CAN_FilterFIFO1 CAN_FILTER_FIFO1 +#define CAN_IT_RQCP0 CAN_IT_TME +#define CAN_IT_RQCP1 CAN_IT_TME +#define CAN_IT_RQCP2 CAN_IT_TME +#define INAK_TIMEOUT CAN_TIMEOUT_VALUE +#define SLAK_TIMEOUT CAN_TIMEOUT_VALUE +#define CAN_TXSTATUS_FAILED ((uint8_t)0x00U) +#define CAN_TXSTATUS_OK ((uint8_t)0x01U) +#define CAN_TXSTATUS_PENDING ((uint8_t)0x02U) + +/** + * @} + */ + +/** @defgroup HAL_ETH_Aliased_Defines HAL ETH Aliased Defines maintained for legacy purpose + * @{ + */ + +#define VLAN_TAG ETH_VLAN_TAG +#define MIN_ETH_PAYLOAD ETH_MIN_ETH_PAYLOAD +#define MAX_ETH_PAYLOAD ETH_MAX_ETH_PAYLOAD +#define JUMBO_FRAME_PAYLOAD ETH_JUMBO_FRAME_PAYLOAD +#define MACMIIAR_CR_MASK ETH_MACMIIAR_CR_MASK +#define MACCR_CLEAR_MASK ETH_MACCR_CLEAR_MASK +#define MACFCR_CLEAR_MASK ETH_MACFCR_CLEAR_MASK +#define DMAOMR_CLEAR_MASK ETH_DMAOMR_CLEAR_MASK + +#define ETH_MMCCR 0x00000100U +#define ETH_MMCRIR 0x00000104U +#define ETH_MMCTIR 0x00000108U +#define ETH_MMCRIMR 0x0000010CU +#define ETH_MMCTIMR 0x00000110U +#define ETH_MMCTGFSCCR 0x0000014CU +#define ETH_MMCTGFMSCCR 0x00000150U +#define ETH_MMCTGFCR 0x00000168U +#define ETH_MMCRFCECR 0x00000194U +#define ETH_MMCRFAECR 0x00000198U +#define ETH_MMCRGUFCR 0x000001C4U + +#define ETH_MAC_TXFIFO_FULL 0x02000000U /* Tx FIFO full */ +#define ETH_MAC_TXFIFONOT_EMPTY 0x01000000U /* Tx FIFO not empty */ +#define ETH_MAC_TXFIFO_WRITE_ACTIVE 0x00400000U /* Tx FIFO write active */ +#define ETH_MAC_TXFIFO_IDLE 0x00000000U /* Tx FIFO read status: Idle */ +#define ETH_MAC_TXFIFO_READ 0x00100000U /* Tx FIFO read status: Read (transferring data to the MAC transmitter) */ +#define ETH_MAC_TXFIFO_WAITING 0x00200000U /* Tx FIFO read status: Waiting for TxStatus from MAC transmitter */ +#define ETH_MAC_TXFIFO_WRITING 0x00300000U /* Tx FIFO read status: Writing the received TxStatus or flushing the TxFIFO */ +#define ETH_MAC_TRANSMISSION_PAUSE 0x00080000U /* MAC transmitter in pause */ +#define ETH_MAC_TRANSMITFRAMECONTROLLER_IDLE 0x00000000U /* MAC transmit frame controller: Idle */ +#define ETH_MAC_TRANSMITFRAMECONTROLLER_WAITING 0x00020000U /* MAC transmit frame controller: Waiting for Status of previous frame or IFG/backoff period to be over */ +#define ETH_MAC_TRANSMITFRAMECONTROLLER_GENRATING_PCF 0x00040000U /* MAC transmit frame controller: Generating and transmitting a Pause control frame (in full duplex mode) */ +#define ETH_MAC_TRANSMITFRAMECONTROLLER_TRANSFERRING 0x00060000U /* MAC transmit frame controller: Transferring input frame for transmission */ +#define ETH_MAC_MII_TRANSMIT_ACTIVE 0x00010000U /* MAC MII transmit engine active */ +#define ETH_MAC_RXFIFO_EMPTY 0x00000000U /* Rx FIFO fill level: empty */ +#define ETH_MAC_RXFIFO_BELOW_THRESHOLD 0x00000100U /* Rx FIFO fill level: fill-level below flow-control de-activate threshold */ +#define ETH_MAC_RXFIFO_ABOVE_THRESHOLD 0x00000200U /* Rx FIFO fill level: fill-level above flow-control activate threshold */ +#define ETH_MAC_RXFIFO_FULL 0x00000300U /* Rx FIFO fill level: full */ +#if defined(STM32F1) +#else +#define ETH_MAC_READCONTROLLER_IDLE 0x00000000U /* Rx FIFO read controller IDLE state */ +#define ETH_MAC_READCONTROLLER_READING_DATA 0x00000020U /* Rx FIFO read controller Reading frame data */ +#define ETH_MAC_READCONTROLLER_READING_STATUS 0x00000040U /* Rx FIFO read controller Reading frame status (or time-stamp) */ +#endif +#define ETH_MAC_READCONTROLLER_FLUSHING 0x00000060U /* Rx FIFO read controller Flushing the frame data and status */ +#define ETH_MAC_RXFIFO_WRITE_ACTIVE 0x00000010U /* Rx FIFO write controller active */ +#define ETH_MAC_SMALL_FIFO_NOTACTIVE 0x00000000U /* MAC small FIFO read / write controllers not active */ +#define ETH_MAC_SMALL_FIFO_READ_ACTIVE 0x00000002U /* MAC small FIFO read controller active */ +#define ETH_MAC_SMALL_FIFO_WRITE_ACTIVE 0x00000004U /* MAC small FIFO write controller active */ +#define ETH_MAC_SMALL_FIFO_RW_ACTIVE 0x00000006U /* MAC small FIFO read / write controllers active */ +#define ETH_MAC_MII_RECEIVE_PROTOCOL_ACTIVE 0x00000001U /* MAC MII receive protocol engine active */ + +/** + * @} + */ + +/** @defgroup HAL_DCMI_Aliased_Defines HAL DCMI Aliased Defines maintained for legacy purpose + * @{ + */ +#define HAL_DCMI_ERROR_OVF HAL_DCMI_ERROR_OVR +#define DCMI_IT_OVF DCMI_IT_OVR +#define DCMI_FLAG_OVFRI DCMI_FLAG_OVRRI +#define DCMI_FLAG_OVFMI DCMI_FLAG_OVRMI + +#define HAL_DCMI_ConfigCROP HAL_DCMI_ConfigCrop +#define HAL_DCMI_EnableCROP HAL_DCMI_EnableCrop +#define HAL_DCMI_DisableCROP HAL_DCMI_DisableCrop + +/** + * @} + */ + +#if defined(STM32L4) || defined(STM32F7) || defined(STM32F427xx) || defined(STM32F437xx) \ + || defined(STM32F429xx) || defined(STM32F439xx) || defined(STM32F469xx) || defined(STM32F479xx) \ + || defined(STM32H7) +/** @defgroup HAL_DMA2D_Aliased_Defines HAL DMA2D Aliased Defines maintained for legacy purpose + * @{ + */ +#define DMA2D_ARGB8888 DMA2D_OUTPUT_ARGB8888 +#define DMA2D_RGB888 DMA2D_OUTPUT_RGB888 +#define DMA2D_RGB565 DMA2D_OUTPUT_RGB565 +#define DMA2D_ARGB1555 DMA2D_OUTPUT_ARGB1555 +#define DMA2D_ARGB4444 DMA2D_OUTPUT_ARGB4444 + +#define CM_ARGB8888 DMA2D_INPUT_ARGB8888 +#define CM_RGB888 DMA2D_INPUT_RGB888 +#define CM_RGB565 DMA2D_INPUT_RGB565 +#define CM_ARGB1555 DMA2D_INPUT_ARGB1555 +#define CM_ARGB4444 DMA2D_INPUT_ARGB4444 +#define CM_L8 DMA2D_INPUT_L8 +#define CM_AL44 DMA2D_INPUT_AL44 +#define CM_AL88 DMA2D_INPUT_AL88 +#define CM_L4 DMA2D_INPUT_L4 +#define CM_A8 DMA2D_INPUT_A8 +#define CM_A4 DMA2D_INPUT_A4 +/** + * @} + */ +#endif /* STM32L4 || STM32F7 || STM32F4 || STM32H7 */ + +/** @defgroup HAL_PPP_Aliased_Defines HAL PPP Aliased Defines maintained for legacy purpose + * @{ + */ + +/** + * @} + */ + +/* Exported functions --------------------------------------------------------*/ + +/** @defgroup HAL_CRYP_Aliased_Functions HAL CRYP Aliased Functions maintained for legacy purpose + * @{ + */ +#define HAL_CRYP_ComputationCpltCallback HAL_CRYPEx_ComputationCpltCallback +/** + * @} + */ + +/** @defgroup HAL_HASH_Aliased_Functions HAL HASH Aliased Functions maintained for legacy purpose + * @{ + */ +#define HAL_HASH_STATETypeDef HAL_HASH_StateTypeDef +#define HAL_HASHPhaseTypeDef HAL_HASH_PhaseTypeDef +#define HAL_HMAC_MD5_Finish HAL_HASH_MD5_Finish +#define HAL_HMAC_SHA1_Finish HAL_HASH_SHA1_Finish +#define HAL_HMAC_SHA224_Finish HAL_HASH_SHA224_Finish +#define HAL_HMAC_SHA256_Finish HAL_HASH_SHA256_Finish + +/*HASH Algorithm Selection*/ + +#define HASH_AlgoSelection_SHA1 HASH_ALGOSELECTION_SHA1 +#define HASH_AlgoSelection_SHA224 HASH_ALGOSELECTION_SHA224 +#define HASH_AlgoSelection_SHA256 HASH_ALGOSELECTION_SHA256 +#define HASH_AlgoSelection_MD5 HASH_ALGOSELECTION_MD5 + +#define HASH_AlgoMode_HASH HASH_ALGOMODE_HASH +#define HASH_AlgoMode_HMAC HASH_ALGOMODE_HMAC + +#define HASH_HMACKeyType_ShortKey HASH_HMAC_KEYTYPE_SHORTKEY +#define HASH_HMACKeyType_LongKey HASH_HMAC_KEYTYPE_LONGKEY + +#if defined(STM32L4) || defined(STM32L5) || defined(STM32F2) || defined(STM32F4) || defined(STM32F7) || defined(STM32H7) + +#define HAL_HASH_MD5_Accumulate HAL_HASH_MD5_Accmlt +#define HAL_HASH_MD5_Accumulate_End HAL_HASH_MD5_Accmlt_End +#define HAL_HASH_MD5_Accumulate_IT HAL_HASH_MD5_Accmlt_IT +#define HAL_HASH_MD5_Accumulate_End_IT HAL_HASH_MD5_Accmlt_End_IT + +#define HAL_HASH_SHA1_Accumulate HAL_HASH_SHA1_Accmlt +#define HAL_HASH_SHA1_Accumulate_End HAL_HASH_SHA1_Accmlt_End +#define HAL_HASH_SHA1_Accumulate_IT HAL_HASH_SHA1_Accmlt_IT +#define HAL_HASH_SHA1_Accumulate_End_IT HAL_HASH_SHA1_Accmlt_End_IT + +#define HAL_HASHEx_SHA224_Accumulate HAL_HASHEx_SHA224_Accmlt +#define HAL_HASHEx_SHA224_Accumulate_End HAL_HASHEx_SHA224_Accmlt_End +#define HAL_HASHEx_SHA224_Accumulate_IT HAL_HASHEx_SHA224_Accmlt_IT +#define HAL_HASHEx_SHA224_Accumulate_End_IT HAL_HASHEx_SHA224_Accmlt_End_IT + +#define HAL_HASHEx_SHA256_Accumulate HAL_HASHEx_SHA256_Accmlt +#define HAL_HASHEx_SHA256_Accumulate_End HAL_HASHEx_SHA256_Accmlt_End +#define HAL_HASHEx_SHA256_Accumulate_IT HAL_HASHEx_SHA256_Accmlt_IT +#define HAL_HASHEx_SHA256_Accumulate_End_IT HAL_HASHEx_SHA256_Accmlt_End_IT + +#endif /* STM32L4 || STM32L5 || STM32F2 || STM32F4 || STM32F7 || STM32H7 */ +/** + * @} + */ + +/** @defgroup HAL_Aliased_Functions HAL Generic Aliased Functions maintained for legacy purpose + * @{ + */ +#define HAL_EnableDBGSleepMode HAL_DBGMCU_EnableDBGSleepMode +#define HAL_DisableDBGSleepMode HAL_DBGMCU_DisableDBGSleepMode +#define HAL_EnableDBGStopMode HAL_DBGMCU_EnableDBGStopMode +#define HAL_DisableDBGStopMode HAL_DBGMCU_DisableDBGStopMode +#define HAL_EnableDBGStandbyMode HAL_DBGMCU_EnableDBGStandbyMode +#define HAL_DisableDBGStandbyMode HAL_DBGMCU_DisableDBGStandbyMode +#define HAL_DBG_LowPowerConfig(Periph, cmd) (((cmd)==ENABLE)? HAL_DBGMCU_DBG_EnableLowPowerConfig(Periph) : HAL_DBGMCU_DBG_DisableLowPowerConfig(Periph)) +#define HAL_VREFINT_OutputSelect HAL_SYSCFG_VREFINT_OutputSelect +#define HAL_Lock_Cmd(cmd) (((cmd)==ENABLE) ? HAL_SYSCFG_Enable_Lock_VREFINT() : HAL_SYSCFG_Disable_Lock_VREFINT()) +#if defined(STM32L0) +#else +#define HAL_VREFINT_Cmd(cmd) (((cmd)==ENABLE)? HAL_SYSCFG_EnableVREFINT() : HAL_SYSCFG_DisableVREFINT()) +#endif +#define HAL_ADC_EnableBuffer_Cmd(cmd) (((cmd)==ENABLE) ? HAL_ADCEx_EnableVREFINT() : HAL_ADCEx_DisableVREFINT()) +#define HAL_ADC_EnableBufferSensor_Cmd(cmd) (((cmd)==ENABLE) ? HAL_ADCEx_EnableVREFINTTempSensor() : HAL_ADCEx_DisableVREFINTTempSensor()) +#if defined(STM32H7A3xx) || defined(STM32H7B3xx) || defined(STM32H7B0xx) || defined(STM32H7A3xxQ) || defined(STM32H7B3xxQ) || defined(STM32H7B0xxQ) +#define HAL_EnableSRDomainDBGStopMode HAL_EnableDomain3DBGStopMode +#define HAL_DisableSRDomainDBGStopMode HAL_DisableDomain3DBGStopMode +#define HAL_EnableSRDomainDBGStandbyMode HAL_EnableDomain3DBGStandbyMode +#define HAL_DisableSRDomainDBGStandbyMode HAL_DisableDomain3DBGStandbyMode +#endif /* STM32H7A3xx || STM32H7B3xx || STM32H7B0xx || STM32H7A3xxQ || STM32H7B3xxQ || STM32H7B0xxQ */ + +/** + * @} + */ + +/** @defgroup HAL_FLASH_Aliased_Functions HAL FLASH Aliased Functions maintained for legacy purpose + * @{ + */ +#define FLASH_HalfPageProgram HAL_FLASHEx_HalfPageProgram +#define FLASH_EnableRunPowerDown HAL_FLASHEx_EnableRunPowerDown +#define FLASH_DisableRunPowerDown HAL_FLASHEx_DisableRunPowerDown +#define HAL_DATA_EEPROMEx_Unlock HAL_FLASHEx_DATAEEPROM_Unlock +#define HAL_DATA_EEPROMEx_Lock HAL_FLASHEx_DATAEEPROM_Lock +#define HAL_DATA_EEPROMEx_Erase HAL_FLASHEx_DATAEEPROM_Erase +#define HAL_DATA_EEPROMEx_Program HAL_FLASHEx_DATAEEPROM_Program + + /** + * @} + */ + +/** @defgroup HAL_I2C_Aliased_Functions HAL I2C Aliased Functions maintained for legacy purpose + * @{ + */ +#define HAL_I2CEx_AnalogFilter_Config HAL_I2CEx_ConfigAnalogFilter +#define HAL_I2CEx_DigitalFilter_Config HAL_I2CEx_ConfigDigitalFilter +#define HAL_FMPI2CEx_AnalogFilter_Config HAL_FMPI2CEx_ConfigAnalogFilter +#define HAL_FMPI2CEx_DigitalFilter_Config HAL_FMPI2CEx_ConfigDigitalFilter + +#define HAL_I2CFastModePlusConfig(SYSCFG_I2CFastModePlus, cmd) (((cmd)==ENABLE)? HAL_I2CEx_EnableFastModePlus(SYSCFG_I2CFastModePlus): HAL_I2CEx_DisableFastModePlus(SYSCFG_I2CFastModePlus)) + +#if defined(STM32H7) || defined(STM32WB) || defined(STM32G0) || defined(STM32F0) || defined(STM32F1) || defined(STM32F2) || defined(STM32F3) || defined(STM32F4) || defined(STM32F7) || defined(STM32L0) || defined(STM32L4) || defined(STM32L5) || defined(STM32G4) || defined(STM32L1) +#define HAL_I2C_Master_Sequential_Transmit_IT HAL_I2C_Master_Seq_Transmit_IT +#define HAL_I2C_Master_Sequential_Receive_IT HAL_I2C_Master_Seq_Receive_IT +#define HAL_I2C_Slave_Sequential_Transmit_IT HAL_I2C_Slave_Seq_Transmit_IT +#define HAL_I2C_Slave_Sequential_Receive_IT HAL_I2C_Slave_Seq_Receive_IT +#endif /* STM32H7 || STM32WB || STM32G0 || STM32F0 || STM32F1 || STM32F2 || STM32F3 || STM32F4 || STM32F7 || STM32L0 || STM32L4 || STM32L5 || STM32G4 || STM32L1 */ +#if defined(STM32H7) || defined(STM32WB) || defined(STM32G0) || defined(STM32F4) || defined(STM32F7) || defined(STM32L0) || defined(STM32L4) || defined(STM32L5) || defined(STM32G4)|| defined(STM32L1) +#define HAL_I2C_Master_Sequential_Transmit_DMA HAL_I2C_Master_Seq_Transmit_DMA +#define HAL_I2C_Master_Sequential_Receive_DMA HAL_I2C_Master_Seq_Receive_DMA +#define HAL_I2C_Slave_Sequential_Transmit_DMA HAL_I2C_Slave_Seq_Transmit_DMA +#define HAL_I2C_Slave_Sequential_Receive_DMA HAL_I2C_Slave_Seq_Receive_DMA +#endif /* STM32H7 || STM32WB || STM32G0 || STM32F4 || STM32F7 || STM32L0 || STM32L4 || STM32L5 || STM32G4 || STM32L1 */ + +#if defined(STM32F4) +#define HAL_FMPI2C_Master_Sequential_Transmit_IT HAL_FMPI2C_Master_Seq_Transmit_IT +#define HAL_FMPI2C_Master_Sequential_Receive_IT HAL_FMPI2C_Master_Seq_Receive_IT +#define HAL_FMPI2C_Slave_Sequential_Transmit_IT HAL_FMPI2C_Slave_Seq_Transmit_IT +#define HAL_FMPI2C_Slave_Sequential_Receive_IT HAL_FMPI2C_Slave_Seq_Receive_IT +#define HAL_FMPI2C_Master_Sequential_Transmit_DMA HAL_FMPI2C_Master_Seq_Transmit_DMA +#define HAL_FMPI2C_Master_Sequential_Receive_DMA HAL_FMPI2C_Master_Seq_Receive_DMA +#define HAL_FMPI2C_Slave_Sequential_Transmit_DMA HAL_FMPI2C_Slave_Seq_Transmit_DMA +#define HAL_FMPI2C_Slave_Sequential_Receive_DMA HAL_FMPI2C_Slave_Seq_Receive_DMA +#endif /* STM32F4 */ + /** + * @} + */ + +/** @defgroup HAL_PWR_Aliased HAL PWR Aliased maintained for legacy purpose + * @{ + */ + +#if defined(STM32G0) +#define HAL_PWR_ConfigPVD HAL_PWREx_ConfigPVD +#define HAL_PWR_EnablePVD HAL_PWREx_EnablePVD +#define HAL_PWR_DisablePVD HAL_PWREx_DisablePVD +#define HAL_PWR_PVD_IRQHandler HAL_PWREx_PVD_IRQHandler +#endif +#define HAL_PWR_PVDConfig HAL_PWR_ConfigPVD +#define HAL_PWR_DisableBkUpReg HAL_PWREx_DisableBkUpReg +#define HAL_PWR_DisableFlashPowerDown HAL_PWREx_DisableFlashPowerDown +#define HAL_PWR_DisableVddio2Monitor HAL_PWREx_DisableVddio2Monitor +#define HAL_PWR_EnableBkUpReg HAL_PWREx_EnableBkUpReg +#define HAL_PWR_EnableFlashPowerDown HAL_PWREx_EnableFlashPowerDown +#define HAL_PWR_EnableVddio2Monitor HAL_PWREx_EnableVddio2Monitor +#define HAL_PWR_PVD_PVM_IRQHandler HAL_PWREx_PVD_PVM_IRQHandler +#define HAL_PWR_PVDLevelConfig HAL_PWR_ConfigPVD +#define HAL_PWR_Vddio2Monitor_IRQHandler HAL_PWREx_Vddio2Monitor_IRQHandler +#define HAL_PWR_Vddio2MonitorCallback HAL_PWREx_Vddio2MonitorCallback +#define HAL_PWREx_ActivateOverDrive HAL_PWREx_EnableOverDrive +#define HAL_PWREx_DeactivateOverDrive HAL_PWREx_DisableOverDrive +#define HAL_PWREx_DisableSDADCAnalog HAL_PWREx_DisableSDADC +#define HAL_PWREx_EnableSDADCAnalog HAL_PWREx_EnableSDADC +#define HAL_PWREx_PVMConfig HAL_PWREx_ConfigPVM + +#define PWR_MODE_NORMAL PWR_PVD_MODE_NORMAL +#define PWR_MODE_IT_RISING PWR_PVD_MODE_IT_RISING +#define PWR_MODE_IT_FALLING PWR_PVD_MODE_IT_FALLING +#define PWR_MODE_IT_RISING_FALLING PWR_PVD_MODE_IT_RISING_FALLING +#define PWR_MODE_EVENT_RISING PWR_PVD_MODE_EVENT_RISING +#define PWR_MODE_EVENT_FALLING PWR_PVD_MODE_EVENT_FALLING +#define PWR_MODE_EVENT_RISING_FALLING PWR_PVD_MODE_EVENT_RISING_FALLING + +#define CR_OFFSET_BB PWR_CR_OFFSET_BB +#define CSR_OFFSET_BB PWR_CSR_OFFSET_BB +#define PMODE_BIT_NUMBER VOS_BIT_NUMBER +#define CR_PMODE_BB CR_VOS_BB + +#define DBP_BitNumber DBP_BIT_NUMBER +#define PVDE_BitNumber PVDE_BIT_NUMBER +#define PMODE_BitNumber PMODE_BIT_NUMBER +#define EWUP_BitNumber EWUP_BIT_NUMBER +#define FPDS_BitNumber FPDS_BIT_NUMBER +#define ODEN_BitNumber ODEN_BIT_NUMBER +#define ODSWEN_BitNumber ODSWEN_BIT_NUMBER +#define MRLVDS_BitNumber MRLVDS_BIT_NUMBER +#define LPLVDS_BitNumber LPLVDS_BIT_NUMBER +#define BRE_BitNumber BRE_BIT_NUMBER + +#define PWR_MODE_EVT PWR_PVD_MODE_NORMAL + + /** + * @} + */ + +/** @defgroup HAL_SMBUS_Aliased_Functions HAL SMBUS Aliased Functions maintained for legacy purpose + * @{ + */ +#define HAL_SMBUS_Slave_Listen_IT HAL_SMBUS_EnableListen_IT +#define HAL_SMBUS_SlaveAddrCallback HAL_SMBUS_AddrCallback +#define HAL_SMBUS_SlaveListenCpltCallback HAL_SMBUS_ListenCpltCallback +/** + * @} + */ + +/** @defgroup HAL_SPI_Aliased_Functions HAL SPI Aliased Functions maintained for legacy purpose + * @{ + */ +#define HAL_SPI_FlushRxFifo HAL_SPIEx_FlushRxFifo +/** + * @} + */ + +/** @defgroup HAL_TIM_Aliased_Functions HAL TIM Aliased Functions maintained for legacy purpose + * @{ + */ +#define HAL_TIM_DMADelayPulseCplt TIM_DMADelayPulseCplt +#define HAL_TIM_DMAError TIM_DMAError +#define HAL_TIM_DMACaptureCplt TIM_DMACaptureCplt +#define HAL_TIMEx_DMACommutationCplt TIMEx_DMACommutationCplt +#if defined(STM32H7) || defined(STM32G0) || defined(STM32F0) || defined(STM32F1) || defined(STM32F2) || defined(STM32F3) || defined(STM32F4) || defined(STM32F7) || defined(STM32L0) || defined(STM32L4) +#define HAL_TIM_SlaveConfigSynchronization HAL_TIM_SlaveConfigSynchro +#define HAL_TIM_SlaveConfigSynchronization_IT HAL_TIM_SlaveConfigSynchro_IT +#define HAL_TIMEx_CommutationCallback HAL_TIMEx_CommutCallback +#define HAL_TIMEx_ConfigCommutationEvent HAL_TIMEx_ConfigCommutEvent +#define HAL_TIMEx_ConfigCommutationEvent_IT HAL_TIMEx_ConfigCommutEvent_IT +#define HAL_TIMEx_ConfigCommutationEvent_DMA HAL_TIMEx_ConfigCommutEvent_DMA +#endif /* STM32H7 || STM32G0 || STM32F0 || STM32F1 || STM32F2 || STM32F3 || STM32F4 || STM32F7 || STM32L0 */ +/** + * @} + */ + +/** @defgroup HAL_UART_Aliased_Functions HAL UART Aliased Functions maintained for legacy purpose + * @{ + */ +#define HAL_UART_WakeupCallback HAL_UARTEx_WakeupCallback +/** + * @} + */ + +/** @defgroup HAL_LTDC_Aliased_Functions HAL LTDC Aliased Functions maintained for legacy purpose + * @{ + */ +#define HAL_LTDC_LineEvenCallback HAL_LTDC_LineEventCallback +#define HAL_LTDC_Relaod HAL_LTDC_Reload +#define HAL_LTDC_StructInitFromVideoConfig HAL_LTDCEx_StructInitFromVideoConfig +#define HAL_LTDC_StructInitFromAdaptedCommandConfig HAL_LTDCEx_StructInitFromAdaptedCommandConfig +/** + * @} + */ + + +/** @defgroup HAL_PPP_Aliased_Functions HAL PPP Aliased Functions maintained for legacy purpose + * @{ + */ + +/** + * @} + */ + +/* Exported macros ------------------------------------------------------------*/ + +/** @defgroup HAL_AES_Aliased_Macros HAL CRYP Aliased Macros maintained for legacy purpose + * @{ + */ +#define AES_IT_CC CRYP_IT_CC +#define AES_IT_ERR CRYP_IT_ERR +#define AES_FLAG_CCF CRYP_FLAG_CCF +/** + * @} + */ + +/** @defgroup HAL_Aliased_Macros HAL Generic Aliased Macros maintained for legacy purpose + * @{ + */ +#define __HAL_GET_BOOT_MODE __HAL_SYSCFG_GET_BOOT_MODE +#define __HAL_REMAPMEMORY_FLASH __HAL_SYSCFG_REMAPMEMORY_FLASH +#define __HAL_REMAPMEMORY_SYSTEMFLASH __HAL_SYSCFG_REMAPMEMORY_SYSTEMFLASH +#define __HAL_REMAPMEMORY_SRAM __HAL_SYSCFG_REMAPMEMORY_SRAM +#define __HAL_REMAPMEMORY_FMC __HAL_SYSCFG_REMAPMEMORY_FMC +#define __HAL_REMAPMEMORY_FMC_SDRAM __HAL_SYSCFG_REMAPMEMORY_FMC_SDRAM +#define __HAL_REMAPMEMORY_FSMC __HAL_SYSCFG_REMAPMEMORY_FSMC +#define __HAL_REMAPMEMORY_QUADSPI __HAL_SYSCFG_REMAPMEMORY_QUADSPI +#define __HAL_FMC_BANK __HAL_SYSCFG_FMC_BANK +#define __HAL_GET_FLAG __HAL_SYSCFG_GET_FLAG +#define __HAL_CLEAR_FLAG __HAL_SYSCFG_CLEAR_FLAG +#define __HAL_VREFINT_OUT_ENABLE __HAL_SYSCFG_VREFINT_OUT_ENABLE +#define __HAL_VREFINT_OUT_DISABLE __HAL_SYSCFG_VREFINT_OUT_DISABLE +#define __HAL_SYSCFG_SRAM2_WRP_ENABLE __HAL_SYSCFG_SRAM2_WRP_0_31_ENABLE + +#define SYSCFG_FLAG_VREF_READY SYSCFG_FLAG_VREFINT_READY +#define SYSCFG_FLAG_RC48 RCC_FLAG_HSI48 +#define IS_SYSCFG_FASTMODEPLUS_CONFIG IS_I2C_FASTMODEPLUS +#define UFB_MODE_BitNumber UFB_MODE_BIT_NUMBER +#define CMP_PD_BitNumber CMP_PD_BIT_NUMBER + +/** + * @} + */ + + +/** @defgroup HAL_ADC_Aliased_Macros HAL ADC Aliased Macros maintained for legacy purpose + * @{ + */ +#define __ADC_ENABLE __HAL_ADC_ENABLE +#define __ADC_DISABLE __HAL_ADC_DISABLE +#define __HAL_ADC_ENABLING_CONDITIONS ADC_ENABLING_CONDITIONS +#define __HAL_ADC_DISABLING_CONDITIONS ADC_DISABLING_CONDITIONS +#define __HAL_ADC_IS_ENABLED ADC_IS_ENABLE +#define __ADC_IS_ENABLED ADC_IS_ENABLE +#define __HAL_ADC_IS_SOFTWARE_START_REGULAR ADC_IS_SOFTWARE_START_REGULAR +#define __HAL_ADC_IS_SOFTWARE_START_INJECTED ADC_IS_SOFTWARE_START_INJECTED +#define __HAL_ADC_IS_CONVERSION_ONGOING_REGULAR_INJECTED ADC_IS_CONVERSION_ONGOING_REGULAR_INJECTED +#define __HAL_ADC_IS_CONVERSION_ONGOING_REGULAR ADC_IS_CONVERSION_ONGOING_REGULAR +#define __HAL_ADC_IS_CONVERSION_ONGOING_INJECTED ADC_IS_CONVERSION_ONGOING_INJECTED +#define __HAL_ADC_IS_CONVERSION_ONGOING ADC_IS_CONVERSION_ONGOING +#define __HAL_ADC_CLEAR_ERRORCODE ADC_CLEAR_ERRORCODE + +#define __HAL_ADC_GET_RESOLUTION ADC_GET_RESOLUTION +#define __HAL_ADC_JSQR_RK ADC_JSQR_RK +#define __HAL_ADC_CFGR_AWD1CH ADC_CFGR_AWD1CH_SHIFT +#define __HAL_ADC_CFGR_AWD23CR ADC_CFGR_AWD23CR +#define __HAL_ADC_CFGR_INJECT_AUTO_CONVERSION ADC_CFGR_INJECT_AUTO_CONVERSION +#define __HAL_ADC_CFGR_INJECT_CONTEXT_QUEUE ADC_CFGR_INJECT_CONTEXT_QUEUE +#define __HAL_ADC_CFGR_INJECT_DISCCONTINUOUS ADC_CFGR_INJECT_DISCCONTINUOUS +#define __HAL_ADC_CFGR_REG_DISCCONTINUOUS ADC_CFGR_REG_DISCCONTINUOUS +#define __HAL_ADC_CFGR_DISCONTINUOUS_NUM ADC_CFGR_DISCONTINUOUS_NUM +#define __HAL_ADC_CFGR_AUTOWAIT ADC_CFGR_AUTOWAIT +#define __HAL_ADC_CFGR_CONTINUOUS ADC_CFGR_CONTINUOUS +#define __HAL_ADC_CFGR_OVERRUN ADC_CFGR_OVERRUN +#define __HAL_ADC_CFGR_DMACONTREQ ADC_CFGR_DMACONTREQ +#define __HAL_ADC_CFGR_EXTSEL ADC_CFGR_EXTSEL_SET +#define __HAL_ADC_JSQR_JEXTSEL ADC_JSQR_JEXTSEL_SET +#define __HAL_ADC_OFR_CHANNEL ADC_OFR_CHANNEL +#define __HAL_ADC_DIFSEL_CHANNEL ADC_DIFSEL_CHANNEL +#define __HAL_ADC_CALFACT_DIFF_SET ADC_CALFACT_DIFF_SET +#define __HAL_ADC_CALFACT_DIFF_GET ADC_CALFACT_DIFF_GET +#define __HAL_ADC_TRX_HIGHTHRESHOLD ADC_TRX_HIGHTHRESHOLD + +#define __HAL_ADC_OFFSET_SHIFT_RESOLUTION ADC_OFFSET_SHIFT_RESOLUTION +#define __HAL_ADC_AWD1THRESHOLD_SHIFT_RESOLUTION ADC_AWD1THRESHOLD_SHIFT_RESOLUTION +#define __HAL_ADC_AWD23THRESHOLD_SHIFT_RESOLUTION ADC_AWD23THRESHOLD_SHIFT_RESOLUTION +#define __HAL_ADC_COMMON_REGISTER ADC_COMMON_REGISTER +#define __HAL_ADC_COMMON_CCR_MULTI ADC_COMMON_CCR_MULTI +#define __HAL_ADC_MULTIMODE_IS_ENABLED ADC_MULTIMODE_IS_ENABLE +#define __ADC_MULTIMODE_IS_ENABLED ADC_MULTIMODE_IS_ENABLE +#define __HAL_ADC_NONMULTIMODE_OR_MULTIMODEMASTER ADC_NONMULTIMODE_OR_MULTIMODEMASTER +#define __HAL_ADC_COMMON_ADC_OTHER ADC_COMMON_ADC_OTHER +#define __HAL_ADC_MULTI_SLAVE ADC_MULTI_SLAVE + +#define __HAL_ADC_SQR1_L ADC_SQR1_L_SHIFT +#define __HAL_ADC_JSQR_JL ADC_JSQR_JL_SHIFT +#define __HAL_ADC_JSQR_RK_JL ADC_JSQR_RK_JL +#define __HAL_ADC_CR1_DISCONTINUOUS_NUM ADC_CR1_DISCONTINUOUS_NUM +#define __HAL_ADC_CR1_SCAN ADC_CR1_SCAN_SET +#define __HAL_ADC_CONVCYCLES_MAX_RANGE ADC_CONVCYCLES_MAX_RANGE +#define __HAL_ADC_CLOCK_PRESCALER_RANGE ADC_CLOCK_PRESCALER_RANGE +#define __HAL_ADC_GET_CLOCK_PRESCALER ADC_GET_CLOCK_PRESCALER + +#define __HAL_ADC_SQR1 ADC_SQR1 +#define __HAL_ADC_SMPR1 ADC_SMPR1 +#define __HAL_ADC_SMPR2 ADC_SMPR2 +#define __HAL_ADC_SQR3_RK ADC_SQR3_RK +#define __HAL_ADC_SQR2_RK ADC_SQR2_RK +#define __HAL_ADC_SQR1_RK ADC_SQR1_RK +#define __HAL_ADC_CR2_CONTINUOUS ADC_CR2_CONTINUOUS +#define __HAL_ADC_CR1_DISCONTINUOUS ADC_CR1_DISCONTINUOUS +#define __HAL_ADC_CR1_SCANCONV ADC_CR1_SCANCONV +#define __HAL_ADC_CR2_EOCSelection ADC_CR2_EOCSelection +#define __HAL_ADC_CR2_DMAContReq ADC_CR2_DMAContReq +#define __HAL_ADC_JSQR ADC_JSQR + +#define __HAL_ADC_CHSELR_CHANNEL ADC_CHSELR_CHANNEL +#define __HAL_ADC_CFGR1_REG_DISCCONTINUOUS ADC_CFGR1_REG_DISCCONTINUOUS +#define __HAL_ADC_CFGR1_AUTOOFF ADC_CFGR1_AUTOOFF +#define __HAL_ADC_CFGR1_AUTOWAIT ADC_CFGR1_AUTOWAIT +#define __HAL_ADC_CFGR1_CONTINUOUS ADC_CFGR1_CONTINUOUS +#define __HAL_ADC_CFGR1_OVERRUN ADC_CFGR1_OVERRUN +#define __HAL_ADC_CFGR1_SCANDIR ADC_CFGR1_SCANDIR +#define __HAL_ADC_CFGR1_DMACONTREQ ADC_CFGR1_DMACONTREQ + +/** + * @} + */ + +/** @defgroup HAL_DAC_Aliased_Macros HAL DAC Aliased Macros maintained for legacy purpose + * @{ + */ +#define __HAL_DHR12R1_ALIGNEMENT DAC_DHR12R1_ALIGNMENT +#define __HAL_DHR12R2_ALIGNEMENT DAC_DHR12R2_ALIGNMENT +#define __HAL_DHR12RD_ALIGNEMENT DAC_DHR12RD_ALIGNMENT +#define IS_DAC_GENERATE_WAVE IS_DAC_WAVE + +/** + * @} + */ + +/** @defgroup HAL_DBGMCU_Aliased_Macros HAL DBGMCU Aliased Macros maintained for legacy purpose + * @{ + */ +#define __HAL_FREEZE_TIM1_DBGMCU __HAL_DBGMCU_FREEZE_TIM1 +#define __HAL_UNFREEZE_TIM1_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM1 +#define __HAL_FREEZE_TIM2_DBGMCU __HAL_DBGMCU_FREEZE_TIM2 +#define __HAL_UNFREEZE_TIM2_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM2 +#define __HAL_FREEZE_TIM3_DBGMCU __HAL_DBGMCU_FREEZE_TIM3 +#define __HAL_UNFREEZE_TIM3_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM3 +#define __HAL_FREEZE_TIM4_DBGMCU __HAL_DBGMCU_FREEZE_TIM4 +#define __HAL_UNFREEZE_TIM4_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM4 +#define __HAL_FREEZE_TIM5_DBGMCU __HAL_DBGMCU_FREEZE_TIM5 +#define __HAL_UNFREEZE_TIM5_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM5 +#define __HAL_FREEZE_TIM6_DBGMCU __HAL_DBGMCU_FREEZE_TIM6 +#define __HAL_UNFREEZE_TIM6_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM6 +#define __HAL_FREEZE_TIM7_DBGMCU __HAL_DBGMCU_FREEZE_TIM7 +#define __HAL_UNFREEZE_TIM7_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM7 +#define __HAL_FREEZE_TIM8_DBGMCU __HAL_DBGMCU_FREEZE_TIM8 +#define __HAL_UNFREEZE_TIM8_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM8 + +#define __HAL_FREEZE_TIM9_DBGMCU __HAL_DBGMCU_FREEZE_TIM9 +#define __HAL_UNFREEZE_TIM9_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM9 +#define __HAL_FREEZE_TIM10_DBGMCU __HAL_DBGMCU_FREEZE_TIM10 +#define __HAL_UNFREEZE_TIM10_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM10 +#define __HAL_FREEZE_TIM11_DBGMCU __HAL_DBGMCU_FREEZE_TIM11 +#define __HAL_UNFREEZE_TIM11_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM11 +#define __HAL_FREEZE_TIM12_DBGMCU __HAL_DBGMCU_FREEZE_TIM12 +#define __HAL_UNFREEZE_TIM12_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM12 +#define __HAL_FREEZE_TIM13_DBGMCU __HAL_DBGMCU_FREEZE_TIM13 +#define __HAL_UNFREEZE_TIM13_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM13 +#define __HAL_FREEZE_TIM14_DBGMCU __HAL_DBGMCU_FREEZE_TIM14 +#define __HAL_UNFREEZE_TIM14_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM14 +#define __HAL_FREEZE_CAN2_DBGMCU __HAL_DBGMCU_FREEZE_CAN2 +#define __HAL_UNFREEZE_CAN2_DBGMCU __HAL_DBGMCU_UNFREEZE_CAN2 + + +#define __HAL_FREEZE_TIM15_DBGMCU __HAL_DBGMCU_FREEZE_TIM15 +#define __HAL_UNFREEZE_TIM15_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM15 +#define __HAL_FREEZE_TIM16_DBGMCU __HAL_DBGMCU_FREEZE_TIM16 +#define __HAL_UNFREEZE_TIM16_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM16 +#define __HAL_FREEZE_TIM17_DBGMCU __HAL_DBGMCU_FREEZE_TIM17 +#define __HAL_UNFREEZE_TIM17_DBGMCU __HAL_DBGMCU_UNFREEZE_TIM17 +#define __HAL_FREEZE_RTC_DBGMCU __HAL_DBGMCU_FREEZE_RTC +#define __HAL_UNFREEZE_RTC_DBGMCU __HAL_DBGMCU_UNFREEZE_RTC +#if defined(STM32H7) + #define __HAL_FREEZE_WWDG_DBGMCU __HAL_DBGMCU_FREEZE_WWDG1 + #define __HAL_UNFREEZE_WWDG_DBGMCU __HAL_DBGMCU_UnFreeze_WWDG1 + #define __HAL_FREEZE_IWDG_DBGMCU __HAL_DBGMCU_FREEZE_IWDG1 + #define __HAL_UNFREEZE_IWDG_DBGMCU __HAL_DBGMCU_UnFreeze_IWDG1 +#else + #define __HAL_FREEZE_WWDG_DBGMCU __HAL_DBGMCU_FREEZE_WWDG + #define __HAL_UNFREEZE_WWDG_DBGMCU __HAL_DBGMCU_UNFREEZE_WWDG + #define __HAL_FREEZE_IWDG_DBGMCU __HAL_DBGMCU_FREEZE_IWDG + #define __HAL_UNFREEZE_IWDG_DBGMCU __HAL_DBGMCU_UNFREEZE_IWDG +#endif /* STM32H7 */ +#define __HAL_FREEZE_I2C1_TIMEOUT_DBGMCU __HAL_DBGMCU_FREEZE_I2C1_TIMEOUT +#define __HAL_UNFREEZE_I2C1_TIMEOUT_DBGMCU __HAL_DBGMCU_UNFREEZE_I2C1_TIMEOUT +#define __HAL_FREEZE_I2C2_TIMEOUT_DBGMCU __HAL_DBGMCU_FREEZE_I2C2_TIMEOUT +#define __HAL_UNFREEZE_I2C2_TIMEOUT_DBGMCU __HAL_DBGMCU_UNFREEZE_I2C2_TIMEOUT +#define __HAL_FREEZE_I2C3_TIMEOUT_DBGMCU __HAL_DBGMCU_FREEZE_I2C3_TIMEOUT +#define __HAL_UNFREEZE_I2C3_TIMEOUT_DBGMCU __HAL_DBGMCU_UNFREEZE_I2C3_TIMEOUT +#define __HAL_FREEZE_CAN1_DBGMCU __HAL_DBGMCU_FREEZE_CAN1 +#define __HAL_UNFREEZE_CAN1_DBGMCU __HAL_DBGMCU_UNFREEZE_CAN1 +#define __HAL_FREEZE_LPTIM1_DBGMCU __HAL_DBGMCU_FREEZE_LPTIM1 +#define __HAL_UNFREEZE_LPTIM1_DBGMCU __HAL_DBGMCU_UNFREEZE_LPTIM1 +#define __HAL_FREEZE_LPTIM2_DBGMCU __HAL_DBGMCU_FREEZE_LPTIM2 +#define __HAL_UNFREEZE_LPTIM2_DBGMCU __HAL_DBGMCU_UNFREEZE_LPTIM2 + +/** + * @} + */ + +/** @defgroup HAL_COMP_Aliased_Macros HAL COMP Aliased Macros maintained for legacy purpose + * @{ + */ +#if defined(STM32F3) +#define COMP_START __HAL_COMP_ENABLE +#define COMP_STOP __HAL_COMP_DISABLE +#define COMP_LOCK __HAL_COMP_LOCK + +#if defined(STM32F301x8) || defined(STM32F302x8) || defined(STM32F318xx) || defined(STM32F303x8) || defined(STM32F334x8) || defined(STM32F328xx) +#define __HAL_COMP_EXTI_RISING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_RISING_EDGE() : \ + __HAL_COMP_COMP6_EXTI_ENABLE_RISING_EDGE()) +#define __HAL_COMP_EXTI_RISING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_RISING_EDGE() : \ + __HAL_COMP_COMP6_EXTI_DISABLE_RISING_EDGE()) +#define __HAL_COMP_EXTI_FALLING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_FALLING_EDGE() : \ + __HAL_COMP_COMP6_EXTI_ENABLE_FALLING_EDGE()) +#define __HAL_COMP_EXTI_FALLING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_FALLING_EDGE() : \ + __HAL_COMP_COMP6_EXTI_DISABLE_FALLING_EDGE()) +#define __HAL_COMP_EXTI_ENABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_IT() : \ + __HAL_COMP_COMP6_EXTI_ENABLE_IT()) +#define __HAL_COMP_EXTI_DISABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_IT() : \ + __HAL_COMP_COMP6_EXTI_DISABLE_IT()) +#define __HAL_COMP_EXTI_GET_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_GET_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_GET_FLAG() : \ + __HAL_COMP_COMP6_EXTI_GET_FLAG()) +#define __HAL_COMP_EXTI_CLEAR_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_CLEAR_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_CLEAR_FLAG() : \ + __HAL_COMP_COMP6_EXTI_CLEAR_FLAG()) +# endif +# if defined(STM32F302xE) || defined(STM32F302xC) +#define __HAL_COMP_EXTI_RISING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_RISING_EDGE() : \ + __HAL_COMP_COMP6_EXTI_ENABLE_RISING_EDGE()) +#define __HAL_COMP_EXTI_RISING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_RISING_EDGE() : \ + __HAL_COMP_COMP6_EXTI_DISABLE_RISING_EDGE()) +#define __HAL_COMP_EXTI_FALLING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_FALLING_EDGE() : \ + __HAL_COMP_COMP6_EXTI_ENABLE_FALLING_EDGE()) +#define __HAL_COMP_EXTI_FALLING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_FALLING_EDGE() : \ + __HAL_COMP_COMP6_EXTI_DISABLE_FALLING_EDGE()) +#define __HAL_COMP_EXTI_ENABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_IT() : \ + __HAL_COMP_COMP6_EXTI_ENABLE_IT()) +#define __HAL_COMP_EXTI_DISABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_IT() : \ + __HAL_COMP_COMP6_EXTI_DISABLE_IT()) +#define __HAL_COMP_EXTI_GET_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_GET_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_GET_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_GET_FLAG() : \ + __HAL_COMP_COMP6_EXTI_GET_FLAG()) +#define __HAL_COMP_EXTI_CLEAR_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_CLEAR_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_CLEAR_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_CLEAR_FLAG() : \ + __HAL_COMP_COMP6_EXTI_CLEAR_FLAG()) +# endif +# if defined(STM32F303xE) || defined(STM32F398xx) || defined(STM32F303xC) || defined(STM32F358xx) +#define __HAL_COMP_EXTI_RISING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_ENABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_ENABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_ENABLE_RISING_EDGE() : \ + __HAL_COMP_COMP7_EXTI_ENABLE_RISING_EDGE()) +#define __HAL_COMP_EXTI_RISING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_DISABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_DISABLE_RISING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_DISABLE_RISING_EDGE() : \ + __HAL_COMP_COMP7_EXTI_DISABLE_RISING_EDGE()) +#define __HAL_COMP_EXTI_FALLING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_ENABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_ENABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_ENABLE_FALLING_EDGE() : \ + __HAL_COMP_COMP7_EXTI_ENABLE_FALLING_EDGE()) +#define __HAL_COMP_EXTI_FALLING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_DISABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_DISABLE_FALLING_EDGE() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_DISABLE_FALLING_EDGE() : \ + __HAL_COMP_COMP7_EXTI_DISABLE_FALLING_EDGE()) +#define __HAL_COMP_EXTI_ENABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_ENABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_ENABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_ENABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_ENABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_ENABLE_IT() : \ + __HAL_COMP_COMP7_EXTI_ENABLE_IT()) +#define __HAL_COMP_EXTI_DISABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_DISABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_DISABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_DISABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_DISABLE_IT() : \ + ((__EXTILINE__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_DISABLE_IT() : \ + __HAL_COMP_COMP7_EXTI_DISABLE_IT()) +#define __HAL_COMP_EXTI_GET_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_GET_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_GET_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_GET_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_GET_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_GET_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_GET_FLAG() : \ + __HAL_COMP_COMP7_EXTI_GET_FLAG()) +#define __HAL_COMP_EXTI_CLEAR_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_CLEAR_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP2) ? __HAL_COMP_COMP2_EXTI_CLEAR_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP3) ? __HAL_COMP_COMP3_EXTI_CLEAR_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP4) ? __HAL_COMP_COMP4_EXTI_CLEAR_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP5) ? __HAL_COMP_COMP5_EXTI_CLEAR_FLAG() : \ + ((__FLAG__) == COMP_EXTI_LINE_COMP6) ? __HAL_COMP_COMP6_EXTI_CLEAR_FLAG() : \ + __HAL_COMP_COMP7_EXTI_CLEAR_FLAG()) +# endif +# if defined(STM32F373xC) ||defined(STM32F378xx) +#define __HAL_COMP_EXTI_RISING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_RISING_EDGE() : \ + __HAL_COMP_COMP2_EXTI_ENABLE_RISING_EDGE()) +#define __HAL_COMP_EXTI_RISING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_RISING_EDGE() : \ + __HAL_COMP_COMP2_EXTI_DISABLE_RISING_EDGE()) +#define __HAL_COMP_EXTI_FALLING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_FALLING_EDGE() : \ + __HAL_COMP_COMP2_EXTI_ENABLE_FALLING_EDGE()) +#define __HAL_COMP_EXTI_FALLING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_FALLING_EDGE() : \ + __HAL_COMP_COMP2_EXTI_DISABLE_FALLING_EDGE()) +#define __HAL_COMP_EXTI_ENABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_IT() : \ + __HAL_COMP_COMP2_EXTI_ENABLE_IT()) +#define __HAL_COMP_EXTI_DISABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_IT() : \ + __HAL_COMP_COMP2_EXTI_DISABLE_IT()) +#define __HAL_COMP_EXTI_GET_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_GET_FLAG() : \ + __HAL_COMP_COMP2_EXTI_GET_FLAG()) +#define __HAL_COMP_EXTI_CLEAR_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_CLEAR_FLAG() : \ + __HAL_COMP_COMP2_EXTI_CLEAR_FLAG()) +# endif +#else +#define __HAL_COMP_EXTI_RISING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_RISING_EDGE() : \ + __HAL_COMP_COMP2_EXTI_ENABLE_RISING_EDGE()) +#define __HAL_COMP_EXTI_RISING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_RISING_EDGE() : \ + __HAL_COMP_COMP2_EXTI_DISABLE_RISING_EDGE()) +#define __HAL_COMP_EXTI_FALLING_IT_ENABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_FALLING_EDGE() : \ + __HAL_COMP_COMP2_EXTI_ENABLE_FALLING_EDGE()) +#define __HAL_COMP_EXTI_FALLING_IT_DISABLE(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_FALLING_EDGE() : \ + __HAL_COMP_COMP2_EXTI_DISABLE_FALLING_EDGE()) +#define __HAL_COMP_EXTI_ENABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_ENABLE_IT() : \ + __HAL_COMP_COMP2_EXTI_ENABLE_IT()) +#define __HAL_COMP_EXTI_DISABLE_IT(__EXTILINE__) (((__EXTILINE__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_DISABLE_IT() : \ + __HAL_COMP_COMP2_EXTI_DISABLE_IT()) +#define __HAL_COMP_EXTI_GET_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_GET_FLAG() : \ + __HAL_COMP_COMP2_EXTI_GET_FLAG()) +#define __HAL_COMP_EXTI_CLEAR_FLAG(__FLAG__) (((__FLAG__) == COMP_EXTI_LINE_COMP1) ? __HAL_COMP_COMP1_EXTI_CLEAR_FLAG() : \ + __HAL_COMP_COMP2_EXTI_CLEAR_FLAG()) +#endif + +#define __HAL_COMP_GET_EXTI_LINE COMP_GET_EXTI_LINE + +#if defined(STM32L0) || defined(STM32L4) +/* Note: On these STM32 families, the only argument of this macro */ +/* is COMP_FLAG_LOCK. */ +/* This macro is replaced by __HAL_COMP_IS_LOCKED with only HAL handle */ +/* argument. */ +#define __HAL_COMP_GET_FLAG(__HANDLE__, __FLAG__) (__HAL_COMP_IS_LOCKED(__HANDLE__)) +#endif +/** + * @} + */ + +#if defined(STM32L0) || defined(STM32L4) +/** @defgroup HAL_COMP_Aliased_Functions HAL COMP Aliased Functions maintained for legacy purpose + * @{ + */ +#define HAL_COMP_Start_IT HAL_COMP_Start /* Function considered as legacy as EXTI event or IT configuration is done into HAL_COMP_Init() */ +#define HAL_COMP_Stop_IT HAL_COMP_Stop /* Function considered as legacy as EXTI event or IT configuration is done into HAL_COMP_Init() */ +/** + * @} + */ +#endif + +/** @defgroup HAL_DAC_Aliased_Macros HAL DAC Aliased Macros maintained for legacy purpose + * @{ + */ + +#define IS_DAC_WAVE(WAVE) (((WAVE) == DAC_WAVE_NONE) || \ + ((WAVE) == DAC_WAVE_NOISE)|| \ + ((WAVE) == DAC_WAVE_TRIANGLE)) + +/** + * @} + */ + +/** @defgroup HAL_FLASH_Aliased_Macros HAL FLASH Aliased Macros maintained for legacy purpose + * @{ + */ + +#define IS_WRPAREA IS_OB_WRPAREA +#define IS_TYPEPROGRAM IS_FLASH_TYPEPROGRAM +#define IS_TYPEPROGRAMFLASH IS_FLASH_TYPEPROGRAM +#define IS_TYPEERASE IS_FLASH_TYPEERASE +#define IS_NBSECTORS IS_FLASH_NBSECTORS +#define IS_OB_WDG_SOURCE IS_OB_IWDG_SOURCE + +/** + * @} + */ + +/** @defgroup HAL_I2C_Aliased_Macros HAL I2C Aliased Macros maintained for legacy purpose + * @{ + */ + +#define __HAL_I2C_RESET_CR2 I2C_RESET_CR2 +#define __HAL_I2C_GENERATE_START I2C_GENERATE_START +#if defined(STM32F1) +#define __HAL_I2C_FREQ_RANGE I2C_FREQRANGE +#else +#define __HAL_I2C_FREQ_RANGE I2C_FREQ_RANGE +#endif /* STM32F1 */ +#define __HAL_I2C_RISE_TIME I2C_RISE_TIME +#define __HAL_I2C_SPEED_STANDARD I2C_SPEED_STANDARD +#define __HAL_I2C_SPEED_FAST I2C_SPEED_FAST +#define __HAL_I2C_SPEED I2C_SPEED +#define __HAL_I2C_7BIT_ADD_WRITE I2C_7BIT_ADD_WRITE +#define __HAL_I2C_7BIT_ADD_READ I2C_7BIT_ADD_READ +#define __HAL_I2C_10BIT_ADDRESS I2C_10BIT_ADDRESS +#define __HAL_I2C_10BIT_HEADER_WRITE I2C_10BIT_HEADER_WRITE +#define __HAL_I2C_10BIT_HEADER_READ I2C_10BIT_HEADER_READ +#define __HAL_I2C_MEM_ADD_MSB I2C_MEM_ADD_MSB +#define __HAL_I2C_MEM_ADD_LSB I2C_MEM_ADD_LSB +#define __HAL_I2C_FREQRANGE I2C_FREQRANGE +/** + * @} + */ + +/** @defgroup HAL_I2S_Aliased_Macros HAL I2S Aliased Macros maintained for legacy purpose + * @{ + */ + +#define IS_I2S_INSTANCE IS_I2S_ALL_INSTANCE +#define IS_I2S_INSTANCE_EXT IS_I2S_ALL_INSTANCE_EXT + +#if defined(STM32H7) + #define __HAL_I2S_CLEAR_FREFLAG __HAL_I2S_CLEAR_TIFREFLAG +#endif + +/** + * @} + */ + +/** @defgroup HAL_IRDA_Aliased_Macros HAL IRDA Aliased Macros maintained for legacy purpose + * @{ + */ + +#define __IRDA_DISABLE __HAL_IRDA_DISABLE +#define __IRDA_ENABLE __HAL_IRDA_ENABLE + +#define __HAL_IRDA_GETCLOCKSOURCE IRDA_GETCLOCKSOURCE +#define __HAL_IRDA_MASK_COMPUTATION IRDA_MASK_COMPUTATION +#define __IRDA_GETCLOCKSOURCE IRDA_GETCLOCKSOURCE +#define __IRDA_MASK_COMPUTATION IRDA_MASK_COMPUTATION + +#define IS_IRDA_ONEBIT_SAMPLE IS_IRDA_ONE_BIT_SAMPLE + + +/** + * @} + */ + + +/** @defgroup HAL_IWDG_Aliased_Macros HAL IWDG Aliased Macros maintained for legacy purpose + * @{ + */ +#define __HAL_IWDG_ENABLE_WRITE_ACCESS IWDG_ENABLE_WRITE_ACCESS +#define __HAL_IWDG_DISABLE_WRITE_ACCESS IWDG_DISABLE_WRITE_ACCESS +/** + * @} + */ + + +/** @defgroup HAL_LPTIM_Aliased_Macros HAL LPTIM Aliased Macros maintained for legacy purpose + * @{ + */ + +#define __HAL_LPTIM_ENABLE_INTERRUPT __HAL_LPTIM_ENABLE_IT +#define __HAL_LPTIM_DISABLE_INTERRUPT __HAL_LPTIM_DISABLE_IT +#define __HAL_LPTIM_GET_ITSTATUS __HAL_LPTIM_GET_IT_SOURCE + +/** + * @} + */ + + +/** @defgroup HAL_OPAMP_Aliased_Macros HAL OPAMP Aliased Macros maintained for legacy purpose + * @{ + */ +#define __OPAMP_CSR_OPAXPD OPAMP_CSR_OPAXPD +#define __OPAMP_CSR_S3SELX OPAMP_CSR_S3SELX +#define __OPAMP_CSR_S4SELX OPAMP_CSR_S4SELX +#define __OPAMP_CSR_S5SELX OPAMP_CSR_S5SELX +#define __OPAMP_CSR_S6SELX OPAMP_CSR_S6SELX +#define __OPAMP_CSR_OPAXCAL_L OPAMP_CSR_OPAXCAL_L +#define __OPAMP_CSR_OPAXCAL_H OPAMP_CSR_OPAXCAL_H +#define __OPAMP_CSR_OPAXLPM OPAMP_CSR_OPAXLPM +#define __OPAMP_CSR_ALL_SWITCHES OPAMP_CSR_ALL_SWITCHES +#define __OPAMP_CSR_ANAWSELX OPAMP_CSR_ANAWSELX +#define __OPAMP_CSR_OPAXCALOUT OPAMP_CSR_OPAXCALOUT +#define __OPAMP_OFFSET_TRIM_BITSPOSITION OPAMP_OFFSET_TRIM_BITSPOSITION +#define __OPAMP_OFFSET_TRIM_SET OPAMP_OFFSET_TRIM_SET + +/** + * @} + */ + + +/** @defgroup HAL_PWR_Aliased_Macros HAL PWR Aliased Macros maintained for legacy purpose + * @{ + */ +#define __HAL_PVD_EVENT_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_EVENT +#define __HAL_PVD_EVENT_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_EVENT +#define __HAL_PVD_EXTI_FALLINGTRIGGER_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE +#define __HAL_PVD_EXTI_FALLINGTRIGGER_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE +#define __HAL_PVD_EXTI_RISINGTRIGGER_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE +#define __HAL_PVD_EXTI_RISINGTRIGGER_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE +#define __HAL_PVM_EVENT_DISABLE __HAL_PWR_PVM_EVENT_DISABLE +#define __HAL_PVM_EVENT_ENABLE __HAL_PWR_PVM_EVENT_ENABLE +#define __HAL_PVM_EXTI_FALLINGTRIGGER_DISABLE __HAL_PWR_PVM_EXTI_FALLINGTRIGGER_DISABLE +#define __HAL_PVM_EXTI_FALLINGTRIGGER_ENABLE __HAL_PWR_PVM_EXTI_FALLINGTRIGGER_ENABLE +#define __HAL_PVM_EXTI_RISINGTRIGGER_DISABLE __HAL_PWR_PVM_EXTI_RISINGTRIGGER_DISABLE +#define __HAL_PVM_EXTI_RISINGTRIGGER_ENABLE __HAL_PWR_PVM_EXTI_RISINGTRIGGER_ENABLE +#define __HAL_PWR_INTERNALWAKEUP_DISABLE HAL_PWREx_DisableInternalWakeUpLine +#define __HAL_PWR_INTERNALWAKEUP_ENABLE HAL_PWREx_EnableInternalWakeUpLine +#define __HAL_PWR_PULL_UP_DOWN_CONFIG_DISABLE HAL_PWREx_DisablePullUpPullDownConfig +#define __HAL_PWR_PULL_UP_DOWN_CONFIG_ENABLE HAL_PWREx_EnablePullUpPullDownConfig +#define __HAL_PWR_PVD_EXTI_CLEAR_EGDE_TRIGGER() do { __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE();__HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE(); } while(0) +#define __HAL_PWR_PVD_EXTI_EVENT_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_EVENT +#define __HAL_PWR_PVD_EXTI_EVENT_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_EVENT +#define __HAL_PWR_PVD_EXTI_FALLINGTRIGGER_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE +#define __HAL_PWR_PVD_EXTI_FALLINGTRIGGER_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE +#define __HAL_PWR_PVD_EXTI_RISINGTRIGGER_DISABLE __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE +#define __HAL_PWR_PVD_EXTI_RISINGTRIGGER_ENABLE __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE +#define __HAL_PWR_PVD_EXTI_SET_FALLING_EGDE_TRIGGER __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE +#define __HAL_PWR_PVD_EXTI_SET_RISING_EDGE_TRIGGER __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE +#define __HAL_PWR_PVM_DISABLE() do { HAL_PWREx_DisablePVM1();HAL_PWREx_DisablePVM2();HAL_PWREx_DisablePVM3();HAL_PWREx_DisablePVM4(); } while(0) +#define __HAL_PWR_PVM_ENABLE() do { HAL_PWREx_EnablePVM1();HAL_PWREx_EnablePVM2();HAL_PWREx_EnablePVM3();HAL_PWREx_EnablePVM4(); } while(0) +#define __HAL_PWR_SRAM2CONTENT_PRESERVE_DISABLE HAL_PWREx_DisableSRAM2ContentRetention +#define __HAL_PWR_SRAM2CONTENT_PRESERVE_ENABLE HAL_PWREx_EnableSRAM2ContentRetention +#define __HAL_PWR_VDDIO2_DISABLE HAL_PWREx_DisableVddIO2 +#define __HAL_PWR_VDDIO2_ENABLE HAL_PWREx_EnableVddIO2 +#define __HAL_PWR_VDDIO2_EXTI_CLEAR_EGDE_TRIGGER __HAL_PWR_VDDIO2_EXTI_DISABLE_FALLING_EDGE +#define __HAL_PWR_VDDIO2_EXTI_SET_FALLING_EGDE_TRIGGER __HAL_PWR_VDDIO2_EXTI_ENABLE_FALLING_EDGE +#define __HAL_PWR_VDDUSB_DISABLE HAL_PWREx_DisableVddUSB +#define __HAL_PWR_VDDUSB_ENABLE HAL_PWREx_EnableVddUSB + +#if defined (STM32F4) +#define __HAL_PVD_EXTI_ENABLE_IT(PWR_EXTI_LINE_PVD) __HAL_PWR_PVD_EXTI_ENABLE_IT() +#define __HAL_PVD_EXTI_DISABLE_IT(PWR_EXTI_LINE_PVD) __HAL_PWR_PVD_EXTI_DISABLE_IT() +#define __HAL_PVD_EXTI_GET_FLAG(PWR_EXTI_LINE_PVD) __HAL_PWR_PVD_EXTI_GET_FLAG() +#define __HAL_PVD_EXTI_CLEAR_FLAG(PWR_EXTI_LINE_PVD) __HAL_PWR_PVD_EXTI_CLEAR_FLAG() +#define __HAL_PVD_EXTI_GENERATE_SWIT(PWR_EXTI_LINE_PVD) __HAL_PWR_PVD_EXTI_GENERATE_SWIT() +#else +#define __HAL_PVD_EXTI_CLEAR_FLAG __HAL_PWR_PVD_EXTI_CLEAR_FLAG +#define __HAL_PVD_EXTI_DISABLE_IT __HAL_PWR_PVD_EXTI_DISABLE_IT +#define __HAL_PVD_EXTI_ENABLE_IT __HAL_PWR_PVD_EXTI_ENABLE_IT +#define __HAL_PVD_EXTI_GENERATE_SWIT __HAL_PWR_PVD_EXTI_GENERATE_SWIT +#define __HAL_PVD_EXTI_GET_FLAG __HAL_PWR_PVD_EXTI_GET_FLAG +#endif /* STM32F4 */ +/** + * @} + */ + + +/** @defgroup HAL_RCC_Aliased HAL RCC Aliased maintained for legacy purpose + * @{ + */ + +#define RCC_StopWakeUpClock_MSI RCC_STOP_WAKEUPCLOCK_MSI +#define RCC_StopWakeUpClock_HSI RCC_STOP_WAKEUPCLOCK_HSI + +#define HAL_RCC_CCSCallback HAL_RCC_CSSCallback +#define HAL_RC48_EnableBuffer_Cmd(cmd) (((cmd)==ENABLE) ? HAL_RCCEx_EnableHSI48_VREFINT() : HAL_RCCEx_DisableHSI48_VREFINT()) + +#define __ADC_CLK_DISABLE __HAL_RCC_ADC_CLK_DISABLE +#define __ADC_CLK_ENABLE __HAL_RCC_ADC_CLK_ENABLE +#define __ADC_CLK_SLEEP_DISABLE __HAL_RCC_ADC_CLK_SLEEP_DISABLE +#define __ADC_CLK_SLEEP_ENABLE __HAL_RCC_ADC_CLK_SLEEP_ENABLE +#define __ADC_FORCE_RESET __HAL_RCC_ADC_FORCE_RESET +#define __ADC_RELEASE_RESET __HAL_RCC_ADC_RELEASE_RESET +#define __ADC1_CLK_DISABLE __HAL_RCC_ADC1_CLK_DISABLE +#define __ADC1_CLK_ENABLE __HAL_RCC_ADC1_CLK_ENABLE +#define __ADC1_FORCE_RESET __HAL_RCC_ADC1_FORCE_RESET +#define __ADC1_RELEASE_RESET __HAL_RCC_ADC1_RELEASE_RESET +#define __ADC1_CLK_SLEEP_ENABLE __HAL_RCC_ADC1_CLK_SLEEP_ENABLE +#define __ADC1_CLK_SLEEP_DISABLE __HAL_RCC_ADC1_CLK_SLEEP_DISABLE +#define __ADC2_CLK_DISABLE __HAL_RCC_ADC2_CLK_DISABLE +#define __ADC2_CLK_ENABLE __HAL_RCC_ADC2_CLK_ENABLE +#define __ADC2_FORCE_RESET __HAL_RCC_ADC2_FORCE_RESET +#define __ADC2_RELEASE_RESET __HAL_RCC_ADC2_RELEASE_RESET +#define __ADC3_CLK_DISABLE __HAL_RCC_ADC3_CLK_DISABLE +#define __ADC3_CLK_ENABLE __HAL_RCC_ADC3_CLK_ENABLE +#define __ADC3_FORCE_RESET __HAL_RCC_ADC3_FORCE_RESET +#define __ADC3_RELEASE_RESET __HAL_RCC_ADC3_RELEASE_RESET +#define __AES_CLK_DISABLE __HAL_RCC_AES_CLK_DISABLE +#define __AES_CLK_ENABLE __HAL_RCC_AES_CLK_ENABLE +#define __AES_CLK_SLEEP_DISABLE __HAL_RCC_AES_CLK_SLEEP_DISABLE +#define __AES_CLK_SLEEP_ENABLE __HAL_RCC_AES_CLK_SLEEP_ENABLE +#define __AES_FORCE_RESET __HAL_RCC_AES_FORCE_RESET +#define __AES_RELEASE_RESET __HAL_RCC_AES_RELEASE_RESET +#define __CRYP_CLK_SLEEP_ENABLE __HAL_RCC_CRYP_CLK_SLEEP_ENABLE +#define __CRYP_CLK_SLEEP_DISABLE __HAL_RCC_CRYP_CLK_SLEEP_DISABLE +#define __CRYP_CLK_ENABLE __HAL_RCC_CRYP_CLK_ENABLE +#define __CRYP_CLK_DISABLE __HAL_RCC_CRYP_CLK_DISABLE +#define __CRYP_FORCE_RESET __HAL_RCC_CRYP_FORCE_RESET +#define __CRYP_RELEASE_RESET __HAL_RCC_CRYP_RELEASE_RESET +#define __AFIO_CLK_DISABLE __HAL_RCC_AFIO_CLK_DISABLE +#define __AFIO_CLK_ENABLE __HAL_RCC_AFIO_CLK_ENABLE +#define __AFIO_FORCE_RESET __HAL_RCC_AFIO_FORCE_RESET +#define __AFIO_RELEASE_RESET __HAL_RCC_AFIO_RELEASE_RESET +#define __AHB_FORCE_RESET __HAL_RCC_AHB_FORCE_RESET +#define __AHB_RELEASE_RESET __HAL_RCC_AHB_RELEASE_RESET +#define __AHB1_FORCE_RESET __HAL_RCC_AHB1_FORCE_RESET +#define __AHB1_RELEASE_RESET __HAL_RCC_AHB1_RELEASE_RESET +#define __AHB2_FORCE_RESET __HAL_RCC_AHB2_FORCE_RESET +#define __AHB2_RELEASE_RESET __HAL_RCC_AHB2_RELEASE_RESET +#define __AHB3_FORCE_RESET __HAL_RCC_AHB3_FORCE_RESET +#define __AHB3_RELEASE_RESET __HAL_RCC_AHB3_RELEASE_RESET +#define __APB1_FORCE_RESET __HAL_RCC_APB1_FORCE_RESET +#define __APB1_RELEASE_RESET __HAL_RCC_APB1_RELEASE_RESET +#define __APB2_FORCE_RESET __HAL_RCC_APB2_FORCE_RESET +#define __APB2_RELEASE_RESET __HAL_RCC_APB2_RELEASE_RESET +#define __BKP_CLK_DISABLE __HAL_RCC_BKP_CLK_DISABLE +#define __BKP_CLK_ENABLE __HAL_RCC_BKP_CLK_ENABLE +#define __BKP_FORCE_RESET __HAL_RCC_BKP_FORCE_RESET +#define __BKP_RELEASE_RESET __HAL_RCC_BKP_RELEASE_RESET +#define __CAN1_CLK_DISABLE __HAL_RCC_CAN1_CLK_DISABLE +#define __CAN1_CLK_ENABLE __HAL_RCC_CAN1_CLK_ENABLE +#define __CAN1_CLK_SLEEP_DISABLE __HAL_RCC_CAN1_CLK_SLEEP_DISABLE +#define __CAN1_CLK_SLEEP_ENABLE __HAL_RCC_CAN1_CLK_SLEEP_ENABLE +#define __CAN1_FORCE_RESET __HAL_RCC_CAN1_FORCE_RESET +#define __CAN1_RELEASE_RESET __HAL_RCC_CAN1_RELEASE_RESET +#define __CAN_CLK_DISABLE __HAL_RCC_CAN1_CLK_DISABLE +#define __CAN_CLK_ENABLE __HAL_RCC_CAN1_CLK_ENABLE +#define __CAN_FORCE_RESET __HAL_RCC_CAN1_FORCE_RESET +#define __CAN_RELEASE_RESET __HAL_RCC_CAN1_RELEASE_RESET +#define __CAN2_CLK_DISABLE __HAL_RCC_CAN2_CLK_DISABLE +#define __CAN2_CLK_ENABLE __HAL_RCC_CAN2_CLK_ENABLE +#define __CAN2_FORCE_RESET __HAL_RCC_CAN2_FORCE_RESET +#define __CAN2_RELEASE_RESET __HAL_RCC_CAN2_RELEASE_RESET +#define __CEC_CLK_DISABLE __HAL_RCC_CEC_CLK_DISABLE +#define __CEC_CLK_ENABLE __HAL_RCC_CEC_CLK_ENABLE +#define __COMP_CLK_DISABLE __HAL_RCC_COMP_CLK_DISABLE +#define __COMP_CLK_ENABLE __HAL_RCC_COMP_CLK_ENABLE +#define __COMP_FORCE_RESET __HAL_RCC_COMP_FORCE_RESET +#define __COMP_RELEASE_RESET __HAL_RCC_COMP_RELEASE_RESET +#define __COMP_CLK_SLEEP_ENABLE __HAL_RCC_COMP_CLK_SLEEP_ENABLE +#define __COMP_CLK_SLEEP_DISABLE __HAL_RCC_COMP_CLK_SLEEP_DISABLE +#define __CEC_FORCE_RESET __HAL_RCC_CEC_FORCE_RESET +#define __CEC_RELEASE_RESET __HAL_RCC_CEC_RELEASE_RESET +#define __CRC_CLK_DISABLE __HAL_RCC_CRC_CLK_DISABLE +#define __CRC_CLK_ENABLE __HAL_RCC_CRC_CLK_ENABLE +#define __CRC_CLK_SLEEP_DISABLE __HAL_RCC_CRC_CLK_SLEEP_DISABLE +#define __CRC_CLK_SLEEP_ENABLE __HAL_RCC_CRC_CLK_SLEEP_ENABLE +#define __CRC_FORCE_RESET __HAL_RCC_CRC_FORCE_RESET +#define __CRC_RELEASE_RESET __HAL_RCC_CRC_RELEASE_RESET +#define __DAC_CLK_DISABLE __HAL_RCC_DAC_CLK_DISABLE +#define __DAC_CLK_ENABLE __HAL_RCC_DAC_CLK_ENABLE +#define __DAC_FORCE_RESET __HAL_RCC_DAC_FORCE_RESET +#define __DAC_RELEASE_RESET __HAL_RCC_DAC_RELEASE_RESET +#define __DAC1_CLK_DISABLE __HAL_RCC_DAC1_CLK_DISABLE +#define __DAC1_CLK_ENABLE __HAL_RCC_DAC1_CLK_ENABLE +#define __DAC1_CLK_SLEEP_DISABLE __HAL_RCC_DAC1_CLK_SLEEP_DISABLE +#define __DAC1_CLK_SLEEP_ENABLE __HAL_RCC_DAC1_CLK_SLEEP_ENABLE +#define __DAC1_FORCE_RESET __HAL_RCC_DAC1_FORCE_RESET +#define __DAC1_RELEASE_RESET __HAL_RCC_DAC1_RELEASE_RESET +#define __DBGMCU_CLK_ENABLE __HAL_RCC_DBGMCU_CLK_ENABLE +#define __DBGMCU_CLK_DISABLE __HAL_RCC_DBGMCU_CLK_DISABLE +#define __DBGMCU_FORCE_RESET __HAL_RCC_DBGMCU_FORCE_RESET +#define __DBGMCU_RELEASE_RESET __HAL_RCC_DBGMCU_RELEASE_RESET +#define __DFSDM_CLK_DISABLE __HAL_RCC_DFSDM_CLK_DISABLE +#define __DFSDM_CLK_ENABLE __HAL_RCC_DFSDM_CLK_ENABLE +#define __DFSDM_CLK_SLEEP_DISABLE __HAL_RCC_DFSDM_CLK_SLEEP_DISABLE +#define __DFSDM_CLK_SLEEP_ENABLE __HAL_RCC_DFSDM_CLK_SLEEP_ENABLE +#define __DFSDM_FORCE_RESET __HAL_RCC_DFSDM_FORCE_RESET +#define __DFSDM_RELEASE_RESET __HAL_RCC_DFSDM_RELEASE_RESET +#define __DMA1_CLK_DISABLE __HAL_RCC_DMA1_CLK_DISABLE +#define __DMA1_CLK_ENABLE __HAL_RCC_DMA1_CLK_ENABLE +#define __DMA1_CLK_SLEEP_DISABLE __HAL_RCC_DMA1_CLK_SLEEP_DISABLE +#define __DMA1_CLK_SLEEP_ENABLE __HAL_RCC_DMA1_CLK_SLEEP_ENABLE +#define __DMA1_FORCE_RESET __HAL_RCC_DMA1_FORCE_RESET +#define __DMA1_RELEASE_RESET __HAL_RCC_DMA1_RELEASE_RESET +#define __DMA2_CLK_DISABLE __HAL_RCC_DMA2_CLK_DISABLE +#define __DMA2_CLK_ENABLE __HAL_RCC_DMA2_CLK_ENABLE +#define __DMA2_CLK_SLEEP_DISABLE __HAL_RCC_DMA2_CLK_SLEEP_DISABLE +#define __DMA2_CLK_SLEEP_ENABLE __HAL_RCC_DMA2_CLK_SLEEP_ENABLE +#define __DMA2_FORCE_RESET __HAL_RCC_DMA2_FORCE_RESET +#define __DMA2_RELEASE_RESET __HAL_RCC_DMA2_RELEASE_RESET +#define __ETHMAC_CLK_DISABLE __HAL_RCC_ETHMAC_CLK_DISABLE +#define __ETHMAC_CLK_ENABLE __HAL_RCC_ETHMAC_CLK_ENABLE +#define __ETHMAC_FORCE_RESET __HAL_RCC_ETHMAC_FORCE_RESET +#define __ETHMAC_RELEASE_RESET __HAL_RCC_ETHMAC_RELEASE_RESET +#define __ETHMACRX_CLK_DISABLE __HAL_RCC_ETHMACRX_CLK_DISABLE +#define __ETHMACRX_CLK_ENABLE __HAL_RCC_ETHMACRX_CLK_ENABLE +#define __ETHMACTX_CLK_DISABLE __HAL_RCC_ETHMACTX_CLK_DISABLE +#define __ETHMACTX_CLK_ENABLE __HAL_RCC_ETHMACTX_CLK_ENABLE +#define __FIREWALL_CLK_DISABLE __HAL_RCC_FIREWALL_CLK_DISABLE +#define __FIREWALL_CLK_ENABLE __HAL_RCC_FIREWALL_CLK_ENABLE +#define __FLASH_CLK_DISABLE __HAL_RCC_FLASH_CLK_DISABLE +#define __FLASH_CLK_ENABLE __HAL_RCC_FLASH_CLK_ENABLE +#define __FLASH_CLK_SLEEP_DISABLE __HAL_RCC_FLASH_CLK_SLEEP_DISABLE +#define __FLASH_CLK_SLEEP_ENABLE __HAL_RCC_FLASH_CLK_SLEEP_ENABLE +#define __FLASH_FORCE_RESET __HAL_RCC_FLASH_FORCE_RESET +#define __FLASH_RELEASE_RESET __HAL_RCC_FLASH_RELEASE_RESET +#define __FLITF_CLK_DISABLE __HAL_RCC_FLITF_CLK_DISABLE +#define __FLITF_CLK_ENABLE __HAL_RCC_FLITF_CLK_ENABLE +#define __FLITF_FORCE_RESET __HAL_RCC_FLITF_FORCE_RESET +#define __FLITF_RELEASE_RESET __HAL_RCC_FLITF_RELEASE_RESET +#define __FLITF_CLK_SLEEP_ENABLE __HAL_RCC_FLITF_CLK_SLEEP_ENABLE +#define __FLITF_CLK_SLEEP_DISABLE __HAL_RCC_FLITF_CLK_SLEEP_DISABLE +#define __FMC_CLK_DISABLE __HAL_RCC_FMC_CLK_DISABLE +#define __FMC_CLK_ENABLE __HAL_RCC_FMC_CLK_ENABLE +#define __FMC_CLK_SLEEP_DISABLE __HAL_RCC_FMC_CLK_SLEEP_DISABLE +#define __FMC_CLK_SLEEP_ENABLE __HAL_RCC_FMC_CLK_SLEEP_ENABLE +#define __FMC_FORCE_RESET __HAL_RCC_FMC_FORCE_RESET +#define __FMC_RELEASE_RESET __HAL_RCC_FMC_RELEASE_RESET +#define __FSMC_CLK_DISABLE __HAL_RCC_FSMC_CLK_DISABLE +#define __FSMC_CLK_ENABLE __HAL_RCC_FSMC_CLK_ENABLE +#define __GPIOA_CLK_DISABLE __HAL_RCC_GPIOA_CLK_DISABLE +#define __GPIOA_CLK_ENABLE __HAL_RCC_GPIOA_CLK_ENABLE +#define __GPIOA_CLK_SLEEP_DISABLE __HAL_RCC_GPIOA_CLK_SLEEP_DISABLE +#define __GPIOA_CLK_SLEEP_ENABLE __HAL_RCC_GPIOA_CLK_SLEEP_ENABLE +#define __GPIOA_FORCE_RESET __HAL_RCC_GPIOA_FORCE_RESET +#define __GPIOA_RELEASE_RESET __HAL_RCC_GPIOA_RELEASE_RESET +#define __GPIOB_CLK_DISABLE __HAL_RCC_GPIOB_CLK_DISABLE +#define __GPIOB_CLK_ENABLE __HAL_RCC_GPIOB_CLK_ENABLE +#define __GPIOB_CLK_SLEEP_DISABLE __HAL_RCC_GPIOB_CLK_SLEEP_DISABLE +#define __GPIOB_CLK_SLEEP_ENABLE __HAL_RCC_GPIOB_CLK_SLEEP_ENABLE +#define __GPIOB_FORCE_RESET __HAL_RCC_GPIOB_FORCE_RESET +#define __GPIOB_RELEASE_RESET __HAL_RCC_GPIOB_RELEASE_RESET +#define __GPIOC_CLK_DISABLE __HAL_RCC_GPIOC_CLK_DISABLE +#define __GPIOC_CLK_ENABLE __HAL_RCC_GPIOC_CLK_ENABLE +#define __GPIOC_CLK_SLEEP_DISABLE __HAL_RCC_GPIOC_CLK_SLEEP_DISABLE +#define __GPIOC_CLK_SLEEP_ENABLE __HAL_RCC_GPIOC_CLK_SLEEP_ENABLE +#define __GPIOC_FORCE_RESET __HAL_RCC_GPIOC_FORCE_RESET +#define __GPIOC_RELEASE_RESET __HAL_RCC_GPIOC_RELEASE_RESET +#define __GPIOD_CLK_DISABLE __HAL_RCC_GPIOD_CLK_DISABLE +#define __GPIOD_CLK_ENABLE __HAL_RCC_GPIOD_CLK_ENABLE +#define __GPIOD_CLK_SLEEP_DISABLE __HAL_RCC_GPIOD_CLK_SLEEP_DISABLE +#define __GPIOD_CLK_SLEEP_ENABLE __HAL_RCC_GPIOD_CLK_SLEEP_ENABLE +#define __GPIOD_FORCE_RESET __HAL_RCC_GPIOD_FORCE_RESET +#define __GPIOD_RELEASE_RESET __HAL_RCC_GPIOD_RELEASE_RESET +#define __GPIOE_CLK_DISABLE __HAL_RCC_GPIOE_CLK_DISABLE +#define __GPIOE_CLK_ENABLE __HAL_RCC_GPIOE_CLK_ENABLE +#define __GPIOE_CLK_SLEEP_DISABLE __HAL_RCC_GPIOE_CLK_SLEEP_DISABLE +#define __GPIOE_CLK_SLEEP_ENABLE __HAL_RCC_GPIOE_CLK_SLEEP_ENABLE +#define __GPIOE_FORCE_RESET __HAL_RCC_GPIOE_FORCE_RESET +#define __GPIOE_RELEASE_RESET __HAL_RCC_GPIOE_RELEASE_RESET +#define __GPIOF_CLK_DISABLE __HAL_RCC_GPIOF_CLK_DISABLE +#define __GPIOF_CLK_ENABLE __HAL_RCC_GPIOF_CLK_ENABLE +#define __GPIOF_CLK_SLEEP_DISABLE __HAL_RCC_GPIOF_CLK_SLEEP_DISABLE +#define __GPIOF_CLK_SLEEP_ENABLE __HAL_RCC_GPIOF_CLK_SLEEP_ENABLE +#define __GPIOF_FORCE_RESET __HAL_RCC_GPIOF_FORCE_RESET +#define __GPIOF_RELEASE_RESET __HAL_RCC_GPIOF_RELEASE_RESET +#define __GPIOG_CLK_DISABLE __HAL_RCC_GPIOG_CLK_DISABLE +#define __GPIOG_CLK_ENABLE __HAL_RCC_GPIOG_CLK_ENABLE +#define __GPIOG_CLK_SLEEP_DISABLE __HAL_RCC_GPIOG_CLK_SLEEP_DISABLE +#define __GPIOG_CLK_SLEEP_ENABLE __HAL_RCC_GPIOG_CLK_SLEEP_ENABLE +#define __GPIOG_FORCE_RESET __HAL_RCC_GPIOG_FORCE_RESET +#define __GPIOG_RELEASE_RESET __HAL_RCC_GPIOG_RELEASE_RESET +#define __GPIOH_CLK_DISABLE __HAL_RCC_GPIOH_CLK_DISABLE +#define __GPIOH_CLK_ENABLE __HAL_RCC_GPIOH_CLK_ENABLE +#define __GPIOH_CLK_SLEEP_DISABLE __HAL_RCC_GPIOH_CLK_SLEEP_DISABLE +#define __GPIOH_CLK_SLEEP_ENABLE __HAL_RCC_GPIOH_CLK_SLEEP_ENABLE +#define __GPIOH_FORCE_RESET __HAL_RCC_GPIOH_FORCE_RESET +#define __GPIOH_RELEASE_RESET __HAL_RCC_GPIOH_RELEASE_RESET +#define __I2C1_CLK_DISABLE __HAL_RCC_I2C1_CLK_DISABLE +#define __I2C1_CLK_ENABLE __HAL_RCC_I2C1_CLK_ENABLE +#define __I2C1_CLK_SLEEP_DISABLE __HAL_RCC_I2C1_CLK_SLEEP_DISABLE +#define __I2C1_CLK_SLEEP_ENABLE __HAL_RCC_I2C1_CLK_SLEEP_ENABLE +#define __I2C1_FORCE_RESET __HAL_RCC_I2C1_FORCE_RESET +#define __I2C1_RELEASE_RESET __HAL_RCC_I2C1_RELEASE_RESET +#define __I2C2_CLK_DISABLE __HAL_RCC_I2C2_CLK_DISABLE +#define __I2C2_CLK_ENABLE __HAL_RCC_I2C2_CLK_ENABLE +#define __I2C2_CLK_SLEEP_DISABLE __HAL_RCC_I2C2_CLK_SLEEP_DISABLE +#define __I2C2_CLK_SLEEP_ENABLE __HAL_RCC_I2C2_CLK_SLEEP_ENABLE +#define __I2C2_FORCE_RESET __HAL_RCC_I2C2_FORCE_RESET +#define __I2C2_RELEASE_RESET __HAL_RCC_I2C2_RELEASE_RESET +#define __I2C3_CLK_DISABLE __HAL_RCC_I2C3_CLK_DISABLE +#define __I2C3_CLK_ENABLE __HAL_RCC_I2C3_CLK_ENABLE +#define __I2C3_CLK_SLEEP_DISABLE __HAL_RCC_I2C3_CLK_SLEEP_DISABLE +#define __I2C3_CLK_SLEEP_ENABLE __HAL_RCC_I2C3_CLK_SLEEP_ENABLE +#define __I2C3_FORCE_RESET __HAL_RCC_I2C3_FORCE_RESET +#define __I2C3_RELEASE_RESET __HAL_RCC_I2C3_RELEASE_RESET +#define __LCD_CLK_DISABLE __HAL_RCC_LCD_CLK_DISABLE +#define __LCD_CLK_ENABLE __HAL_RCC_LCD_CLK_ENABLE +#define __LCD_CLK_SLEEP_DISABLE __HAL_RCC_LCD_CLK_SLEEP_DISABLE +#define __LCD_CLK_SLEEP_ENABLE __HAL_RCC_LCD_CLK_SLEEP_ENABLE +#define __LCD_FORCE_RESET __HAL_RCC_LCD_FORCE_RESET +#define __LCD_RELEASE_RESET __HAL_RCC_LCD_RELEASE_RESET +#define __LPTIM1_CLK_DISABLE __HAL_RCC_LPTIM1_CLK_DISABLE +#define __LPTIM1_CLK_ENABLE __HAL_RCC_LPTIM1_CLK_ENABLE +#define __LPTIM1_CLK_SLEEP_DISABLE __HAL_RCC_LPTIM1_CLK_SLEEP_DISABLE +#define __LPTIM1_CLK_SLEEP_ENABLE __HAL_RCC_LPTIM1_CLK_SLEEP_ENABLE +#define __LPTIM1_FORCE_RESET __HAL_RCC_LPTIM1_FORCE_RESET +#define __LPTIM1_RELEASE_RESET __HAL_RCC_LPTIM1_RELEASE_RESET +#define __LPTIM2_CLK_DISABLE __HAL_RCC_LPTIM2_CLK_DISABLE +#define __LPTIM2_CLK_ENABLE __HAL_RCC_LPTIM2_CLK_ENABLE +#define __LPTIM2_CLK_SLEEP_DISABLE __HAL_RCC_LPTIM2_CLK_SLEEP_DISABLE +#define __LPTIM2_CLK_SLEEP_ENABLE __HAL_RCC_LPTIM2_CLK_SLEEP_ENABLE +#define __LPTIM2_FORCE_RESET __HAL_RCC_LPTIM2_FORCE_RESET +#define __LPTIM2_RELEASE_RESET __HAL_RCC_LPTIM2_RELEASE_RESET +#define __LPUART1_CLK_DISABLE __HAL_RCC_LPUART1_CLK_DISABLE +#define __LPUART1_CLK_ENABLE __HAL_RCC_LPUART1_CLK_ENABLE +#define __LPUART1_CLK_SLEEP_DISABLE __HAL_RCC_LPUART1_CLK_SLEEP_DISABLE +#define __LPUART1_CLK_SLEEP_ENABLE __HAL_RCC_LPUART1_CLK_SLEEP_ENABLE +#define __LPUART1_FORCE_RESET __HAL_RCC_LPUART1_FORCE_RESET +#define __LPUART1_RELEASE_RESET __HAL_RCC_LPUART1_RELEASE_RESET +#define __OPAMP_CLK_DISABLE __HAL_RCC_OPAMP_CLK_DISABLE +#define __OPAMP_CLK_ENABLE __HAL_RCC_OPAMP_CLK_ENABLE +#define __OPAMP_CLK_SLEEP_DISABLE __HAL_RCC_OPAMP_CLK_SLEEP_DISABLE +#define __OPAMP_CLK_SLEEP_ENABLE __HAL_RCC_OPAMP_CLK_SLEEP_ENABLE +#define __OPAMP_FORCE_RESET __HAL_RCC_OPAMP_FORCE_RESET +#define __OPAMP_RELEASE_RESET __HAL_RCC_OPAMP_RELEASE_RESET +#define __OTGFS_CLK_DISABLE __HAL_RCC_OTGFS_CLK_DISABLE +#define __OTGFS_CLK_ENABLE __HAL_RCC_OTGFS_CLK_ENABLE +#define __OTGFS_CLK_SLEEP_DISABLE __HAL_RCC_OTGFS_CLK_SLEEP_DISABLE +#define __OTGFS_CLK_SLEEP_ENABLE __HAL_RCC_OTGFS_CLK_SLEEP_ENABLE +#define __OTGFS_FORCE_RESET __HAL_RCC_OTGFS_FORCE_RESET +#define __OTGFS_RELEASE_RESET __HAL_RCC_OTGFS_RELEASE_RESET +#define __PWR_CLK_DISABLE __HAL_RCC_PWR_CLK_DISABLE +#define __PWR_CLK_ENABLE __HAL_RCC_PWR_CLK_ENABLE +#define __PWR_CLK_SLEEP_DISABLE __HAL_RCC_PWR_CLK_SLEEP_DISABLE +#define __PWR_CLK_SLEEP_ENABLE __HAL_RCC_PWR_CLK_SLEEP_ENABLE +#define __PWR_FORCE_RESET __HAL_RCC_PWR_FORCE_RESET +#define __PWR_RELEASE_RESET __HAL_RCC_PWR_RELEASE_RESET +#define __QSPI_CLK_DISABLE __HAL_RCC_QSPI_CLK_DISABLE +#define __QSPI_CLK_ENABLE __HAL_RCC_QSPI_CLK_ENABLE +#define __QSPI_CLK_SLEEP_DISABLE __HAL_RCC_QSPI_CLK_SLEEP_DISABLE +#define __QSPI_CLK_SLEEP_ENABLE __HAL_RCC_QSPI_CLK_SLEEP_ENABLE +#define __QSPI_FORCE_RESET __HAL_RCC_QSPI_FORCE_RESET +#define __QSPI_RELEASE_RESET __HAL_RCC_QSPI_RELEASE_RESET + +#if defined(STM32WB) +#define __HAL_RCC_QSPI_CLK_DISABLE __HAL_RCC_QUADSPI_CLK_DISABLE +#define __HAL_RCC_QSPI_CLK_ENABLE __HAL_RCC_QUADSPI_CLK_ENABLE +#define __HAL_RCC_QSPI_CLK_SLEEP_DISABLE __HAL_RCC_QUADSPI_CLK_SLEEP_DISABLE +#define __HAL_RCC_QSPI_CLK_SLEEP_ENABLE __HAL_RCC_QUADSPI_CLK_SLEEP_ENABLE +#define __HAL_RCC_QSPI_FORCE_RESET __HAL_RCC_QUADSPI_FORCE_RESET +#define __HAL_RCC_QSPI_RELEASE_RESET __HAL_RCC_QUADSPI_RELEASE_RESET +#define __HAL_RCC_QSPI_IS_CLK_ENABLED __HAL_RCC_QUADSPI_IS_CLK_ENABLED +#define __HAL_RCC_QSPI_IS_CLK_DISABLED __HAL_RCC_QUADSPI_IS_CLK_DISABLED +#define __HAL_RCC_QSPI_IS_CLK_SLEEP_ENABLED __HAL_RCC_QUADSPI_IS_CLK_SLEEP_ENABLED +#define __HAL_RCC_QSPI_IS_CLK_SLEEP_DISABLED __HAL_RCC_QUADSPI_IS_CLK_SLEEP_DISABLED +#define QSPI_IRQHandler QUADSPI_IRQHandler +#endif /* __HAL_RCC_QUADSPI_CLK_ENABLE */ + +#define __RNG_CLK_DISABLE __HAL_RCC_RNG_CLK_DISABLE +#define __RNG_CLK_ENABLE __HAL_RCC_RNG_CLK_ENABLE +#define __RNG_CLK_SLEEP_DISABLE __HAL_RCC_RNG_CLK_SLEEP_DISABLE +#define __RNG_CLK_SLEEP_ENABLE __HAL_RCC_RNG_CLK_SLEEP_ENABLE +#define __RNG_FORCE_RESET __HAL_RCC_RNG_FORCE_RESET +#define __RNG_RELEASE_RESET __HAL_RCC_RNG_RELEASE_RESET +#define __SAI1_CLK_DISABLE __HAL_RCC_SAI1_CLK_DISABLE +#define __SAI1_CLK_ENABLE __HAL_RCC_SAI1_CLK_ENABLE +#define __SAI1_CLK_SLEEP_DISABLE __HAL_RCC_SAI1_CLK_SLEEP_DISABLE +#define __SAI1_CLK_SLEEP_ENABLE __HAL_RCC_SAI1_CLK_SLEEP_ENABLE +#define __SAI1_FORCE_RESET __HAL_RCC_SAI1_FORCE_RESET +#define __SAI1_RELEASE_RESET __HAL_RCC_SAI1_RELEASE_RESET +#define __SAI2_CLK_DISABLE __HAL_RCC_SAI2_CLK_DISABLE +#define __SAI2_CLK_ENABLE __HAL_RCC_SAI2_CLK_ENABLE +#define __SAI2_CLK_SLEEP_DISABLE __HAL_RCC_SAI2_CLK_SLEEP_DISABLE +#define __SAI2_CLK_SLEEP_ENABLE __HAL_RCC_SAI2_CLK_SLEEP_ENABLE +#define __SAI2_FORCE_RESET __HAL_RCC_SAI2_FORCE_RESET +#define __SAI2_RELEASE_RESET __HAL_RCC_SAI2_RELEASE_RESET +#define __SDIO_CLK_DISABLE __HAL_RCC_SDIO_CLK_DISABLE +#define __SDIO_CLK_ENABLE __HAL_RCC_SDIO_CLK_ENABLE +#define __SDMMC_CLK_DISABLE __HAL_RCC_SDMMC_CLK_DISABLE +#define __SDMMC_CLK_ENABLE __HAL_RCC_SDMMC_CLK_ENABLE +#define __SDMMC_CLK_SLEEP_DISABLE __HAL_RCC_SDMMC_CLK_SLEEP_DISABLE +#define __SDMMC_CLK_SLEEP_ENABLE __HAL_RCC_SDMMC_CLK_SLEEP_ENABLE +#define __SDMMC_FORCE_RESET __HAL_RCC_SDMMC_FORCE_RESET +#define __SDMMC_RELEASE_RESET __HAL_RCC_SDMMC_RELEASE_RESET +#define __SPI1_CLK_DISABLE __HAL_RCC_SPI1_CLK_DISABLE +#define __SPI1_CLK_ENABLE __HAL_RCC_SPI1_CLK_ENABLE +#define __SPI1_CLK_SLEEP_DISABLE __HAL_RCC_SPI1_CLK_SLEEP_DISABLE +#define __SPI1_CLK_SLEEP_ENABLE __HAL_RCC_SPI1_CLK_SLEEP_ENABLE +#define __SPI1_FORCE_RESET __HAL_RCC_SPI1_FORCE_RESET +#define __SPI1_RELEASE_RESET __HAL_RCC_SPI1_RELEASE_RESET +#define __SPI2_CLK_DISABLE __HAL_RCC_SPI2_CLK_DISABLE +#define __SPI2_CLK_ENABLE __HAL_RCC_SPI2_CLK_ENABLE +#define __SPI2_CLK_SLEEP_DISABLE __HAL_RCC_SPI2_CLK_SLEEP_DISABLE +#define __SPI2_CLK_SLEEP_ENABLE __HAL_RCC_SPI2_CLK_SLEEP_ENABLE +#define __SPI2_FORCE_RESET __HAL_RCC_SPI2_FORCE_RESET +#define __SPI2_RELEASE_RESET __HAL_RCC_SPI2_RELEASE_RESET +#define __SPI3_CLK_DISABLE __HAL_RCC_SPI3_CLK_DISABLE +#define __SPI3_CLK_ENABLE __HAL_RCC_SPI3_CLK_ENABLE +#define __SPI3_CLK_SLEEP_DISABLE __HAL_RCC_SPI3_CLK_SLEEP_DISABLE +#define __SPI3_CLK_SLEEP_ENABLE __HAL_RCC_SPI3_CLK_SLEEP_ENABLE +#define __SPI3_FORCE_RESET __HAL_RCC_SPI3_FORCE_RESET +#define __SPI3_RELEASE_RESET __HAL_RCC_SPI3_RELEASE_RESET +#define __SRAM_CLK_DISABLE __HAL_RCC_SRAM_CLK_DISABLE +#define __SRAM_CLK_ENABLE __HAL_RCC_SRAM_CLK_ENABLE +#define __SRAM1_CLK_SLEEP_DISABLE __HAL_RCC_SRAM1_CLK_SLEEP_DISABLE +#define __SRAM1_CLK_SLEEP_ENABLE __HAL_RCC_SRAM1_CLK_SLEEP_ENABLE +#define __SRAM2_CLK_SLEEP_DISABLE __HAL_RCC_SRAM2_CLK_SLEEP_DISABLE +#define __SRAM2_CLK_SLEEP_ENABLE __HAL_RCC_SRAM2_CLK_SLEEP_ENABLE +#define __SWPMI1_CLK_DISABLE __HAL_RCC_SWPMI1_CLK_DISABLE +#define __SWPMI1_CLK_ENABLE __HAL_RCC_SWPMI1_CLK_ENABLE +#define __SWPMI1_CLK_SLEEP_DISABLE __HAL_RCC_SWPMI1_CLK_SLEEP_DISABLE +#define __SWPMI1_CLK_SLEEP_ENABLE __HAL_RCC_SWPMI1_CLK_SLEEP_ENABLE +#define __SWPMI1_FORCE_RESET __HAL_RCC_SWPMI1_FORCE_RESET +#define __SWPMI1_RELEASE_RESET __HAL_RCC_SWPMI1_RELEASE_RESET +#define __SYSCFG_CLK_DISABLE __HAL_RCC_SYSCFG_CLK_DISABLE +#define __SYSCFG_CLK_ENABLE __HAL_RCC_SYSCFG_CLK_ENABLE +#define __SYSCFG_CLK_SLEEP_DISABLE __HAL_RCC_SYSCFG_CLK_SLEEP_DISABLE +#define __SYSCFG_CLK_SLEEP_ENABLE __HAL_RCC_SYSCFG_CLK_SLEEP_ENABLE +#define __SYSCFG_FORCE_RESET __HAL_RCC_SYSCFG_FORCE_RESET +#define __SYSCFG_RELEASE_RESET __HAL_RCC_SYSCFG_RELEASE_RESET +#define __TIM1_CLK_DISABLE __HAL_RCC_TIM1_CLK_DISABLE +#define __TIM1_CLK_ENABLE __HAL_RCC_TIM1_CLK_ENABLE +#define __TIM1_CLK_SLEEP_DISABLE __HAL_RCC_TIM1_CLK_SLEEP_DISABLE +#define __TIM1_CLK_SLEEP_ENABLE __HAL_RCC_TIM1_CLK_SLEEP_ENABLE +#define __TIM1_FORCE_RESET __HAL_RCC_TIM1_FORCE_RESET +#define __TIM1_RELEASE_RESET __HAL_RCC_TIM1_RELEASE_RESET +#define __TIM10_CLK_DISABLE __HAL_RCC_TIM10_CLK_DISABLE +#define __TIM10_CLK_ENABLE __HAL_RCC_TIM10_CLK_ENABLE +#define __TIM10_FORCE_RESET __HAL_RCC_TIM10_FORCE_RESET +#define __TIM10_RELEASE_RESET __HAL_RCC_TIM10_RELEASE_RESET +#define __TIM11_CLK_DISABLE __HAL_RCC_TIM11_CLK_DISABLE +#define __TIM11_CLK_ENABLE __HAL_RCC_TIM11_CLK_ENABLE +#define __TIM11_FORCE_RESET __HAL_RCC_TIM11_FORCE_RESET +#define __TIM11_RELEASE_RESET __HAL_RCC_TIM11_RELEASE_RESET +#define __TIM12_CLK_DISABLE __HAL_RCC_TIM12_CLK_DISABLE +#define __TIM12_CLK_ENABLE __HAL_RCC_TIM12_CLK_ENABLE +#define __TIM12_FORCE_RESET __HAL_RCC_TIM12_FORCE_RESET +#define __TIM12_RELEASE_RESET __HAL_RCC_TIM12_RELEASE_RESET +#define __TIM13_CLK_DISABLE __HAL_RCC_TIM13_CLK_DISABLE +#define __TIM13_CLK_ENABLE __HAL_RCC_TIM13_CLK_ENABLE +#define __TIM13_FORCE_RESET __HAL_RCC_TIM13_FORCE_RESET +#define __TIM13_RELEASE_RESET __HAL_RCC_TIM13_RELEASE_RESET +#define __TIM14_CLK_DISABLE __HAL_RCC_TIM14_CLK_DISABLE +#define __TIM14_CLK_ENABLE __HAL_RCC_TIM14_CLK_ENABLE +#define __TIM14_FORCE_RESET __HAL_RCC_TIM14_FORCE_RESET +#define __TIM14_RELEASE_RESET __HAL_RCC_TIM14_RELEASE_RESET +#define __TIM15_CLK_DISABLE __HAL_RCC_TIM15_CLK_DISABLE +#define __TIM15_CLK_ENABLE __HAL_RCC_TIM15_CLK_ENABLE +#define __TIM15_CLK_SLEEP_DISABLE __HAL_RCC_TIM15_CLK_SLEEP_DISABLE +#define __TIM15_CLK_SLEEP_ENABLE __HAL_RCC_TIM15_CLK_SLEEP_ENABLE +#define __TIM15_FORCE_RESET __HAL_RCC_TIM15_FORCE_RESET +#define __TIM15_RELEASE_RESET __HAL_RCC_TIM15_RELEASE_RESET +#define __TIM16_CLK_DISABLE __HAL_RCC_TIM16_CLK_DISABLE +#define __TIM16_CLK_ENABLE __HAL_RCC_TIM16_CLK_ENABLE +#define __TIM16_CLK_SLEEP_DISABLE __HAL_RCC_TIM16_CLK_SLEEP_DISABLE +#define __TIM16_CLK_SLEEP_ENABLE __HAL_RCC_TIM16_CLK_SLEEP_ENABLE +#define __TIM16_FORCE_RESET __HAL_RCC_TIM16_FORCE_RESET +#define __TIM16_RELEASE_RESET __HAL_RCC_TIM16_RELEASE_RESET +#define __TIM17_CLK_DISABLE __HAL_RCC_TIM17_CLK_DISABLE +#define __TIM17_CLK_ENABLE __HAL_RCC_TIM17_CLK_ENABLE +#define __TIM17_CLK_SLEEP_DISABLE __HAL_RCC_TIM17_CLK_SLEEP_DISABLE +#define __TIM17_CLK_SLEEP_ENABLE __HAL_RCC_TIM17_CLK_SLEEP_ENABLE +#define __TIM17_FORCE_RESET __HAL_RCC_TIM17_FORCE_RESET +#define __TIM17_RELEASE_RESET __HAL_RCC_TIM17_RELEASE_RESET +#define __TIM2_CLK_DISABLE __HAL_RCC_TIM2_CLK_DISABLE +#define __TIM2_CLK_ENABLE __HAL_RCC_TIM2_CLK_ENABLE +#define __TIM2_CLK_SLEEP_DISABLE __HAL_RCC_TIM2_CLK_SLEEP_DISABLE +#define __TIM2_CLK_SLEEP_ENABLE __HAL_RCC_TIM2_CLK_SLEEP_ENABLE +#define __TIM2_FORCE_RESET __HAL_RCC_TIM2_FORCE_RESET +#define __TIM2_RELEASE_RESET __HAL_RCC_TIM2_RELEASE_RESET +#define __TIM3_CLK_DISABLE __HAL_RCC_TIM3_CLK_DISABLE +#define __TIM3_CLK_ENABLE __HAL_RCC_TIM3_CLK_ENABLE +#define __TIM3_CLK_SLEEP_DISABLE __HAL_RCC_TIM3_CLK_SLEEP_DISABLE +#define __TIM3_CLK_SLEEP_ENABLE __HAL_RCC_TIM3_CLK_SLEEP_ENABLE +#define __TIM3_FORCE_RESET __HAL_RCC_TIM3_FORCE_RESET +#define __TIM3_RELEASE_RESET __HAL_RCC_TIM3_RELEASE_RESET +#define __TIM4_CLK_DISABLE __HAL_RCC_TIM4_CLK_DISABLE +#define __TIM4_CLK_ENABLE __HAL_RCC_TIM4_CLK_ENABLE +#define __TIM4_CLK_SLEEP_DISABLE __HAL_RCC_TIM4_CLK_SLEEP_DISABLE +#define __TIM4_CLK_SLEEP_ENABLE __HAL_RCC_TIM4_CLK_SLEEP_ENABLE +#define __TIM4_FORCE_RESET __HAL_RCC_TIM4_FORCE_RESET +#define __TIM4_RELEASE_RESET __HAL_RCC_TIM4_RELEASE_RESET +#define __TIM5_CLK_DISABLE __HAL_RCC_TIM5_CLK_DISABLE +#define __TIM5_CLK_ENABLE __HAL_RCC_TIM5_CLK_ENABLE +#define __TIM5_CLK_SLEEP_DISABLE __HAL_RCC_TIM5_CLK_SLEEP_DISABLE +#define __TIM5_CLK_SLEEP_ENABLE __HAL_RCC_TIM5_CLK_SLEEP_ENABLE +#define __TIM5_FORCE_RESET __HAL_RCC_TIM5_FORCE_RESET +#define __TIM5_RELEASE_RESET __HAL_RCC_TIM5_RELEASE_RESET +#define __TIM6_CLK_DISABLE __HAL_RCC_TIM6_CLK_DISABLE +#define __TIM6_CLK_ENABLE __HAL_RCC_TIM6_CLK_ENABLE +#define __TIM6_CLK_SLEEP_DISABLE __HAL_RCC_TIM6_CLK_SLEEP_DISABLE +#define __TIM6_CLK_SLEEP_ENABLE __HAL_RCC_TIM6_CLK_SLEEP_ENABLE +#define __TIM6_FORCE_RESET __HAL_RCC_TIM6_FORCE_RESET +#define __TIM6_RELEASE_RESET __HAL_RCC_TIM6_RELEASE_RESET +#define __TIM7_CLK_DISABLE __HAL_RCC_TIM7_CLK_DISABLE +#define __TIM7_CLK_ENABLE __HAL_RCC_TIM7_CLK_ENABLE +#define __TIM7_CLK_SLEEP_DISABLE __HAL_RCC_TIM7_CLK_SLEEP_DISABLE +#define __TIM7_CLK_SLEEP_ENABLE __HAL_RCC_TIM7_CLK_SLEEP_ENABLE +#define __TIM7_FORCE_RESET __HAL_RCC_TIM7_FORCE_RESET +#define __TIM7_RELEASE_RESET __HAL_RCC_TIM7_RELEASE_RESET +#define __TIM8_CLK_DISABLE __HAL_RCC_TIM8_CLK_DISABLE +#define __TIM8_CLK_ENABLE __HAL_RCC_TIM8_CLK_ENABLE +#define __TIM8_CLK_SLEEP_DISABLE __HAL_RCC_TIM8_CLK_SLEEP_DISABLE +#define __TIM8_CLK_SLEEP_ENABLE __HAL_RCC_TIM8_CLK_SLEEP_ENABLE +#define __TIM8_FORCE_RESET __HAL_RCC_TIM8_FORCE_RESET +#define __TIM8_RELEASE_RESET __HAL_RCC_TIM8_RELEASE_RESET +#define __TIM9_CLK_DISABLE __HAL_RCC_TIM9_CLK_DISABLE +#define __TIM9_CLK_ENABLE __HAL_RCC_TIM9_CLK_ENABLE +#define __TIM9_FORCE_RESET __HAL_RCC_TIM9_FORCE_RESET +#define __TIM9_RELEASE_RESET __HAL_RCC_TIM9_RELEASE_RESET +#define __TSC_CLK_DISABLE __HAL_RCC_TSC_CLK_DISABLE +#define __TSC_CLK_ENABLE __HAL_RCC_TSC_CLK_ENABLE +#define __TSC_CLK_SLEEP_DISABLE __HAL_RCC_TSC_CLK_SLEEP_DISABLE +#define __TSC_CLK_SLEEP_ENABLE __HAL_RCC_TSC_CLK_SLEEP_ENABLE +#define __TSC_FORCE_RESET __HAL_RCC_TSC_FORCE_RESET +#define __TSC_RELEASE_RESET __HAL_RCC_TSC_RELEASE_RESET +#define __UART4_CLK_DISABLE __HAL_RCC_UART4_CLK_DISABLE +#define __UART4_CLK_ENABLE __HAL_RCC_UART4_CLK_ENABLE +#define __UART4_CLK_SLEEP_DISABLE __HAL_RCC_UART4_CLK_SLEEP_DISABLE +#define __UART4_CLK_SLEEP_ENABLE __HAL_RCC_UART4_CLK_SLEEP_ENABLE +#define __UART4_FORCE_RESET __HAL_RCC_UART4_FORCE_RESET +#define __UART4_RELEASE_RESET __HAL_RCC_UART4_RELEASE_RESET +#define __UART5_CLK_DISABLE __HAL_RCC_UART5_CLK_DISABLE +#define __UART5_CLK_ENABLE __HAL_RCC_UART5_CLK_ENABLE +#define __UART5_CLK_SLEEP_DISABLE __HAL_RCC_UART5_CLK_SLEEP_DISABLE +#define __UART5_CLK_SLEEP_ENABLE __HAL_RCC_UART5_CLK_SLEEP_ENABLE +#define __UART5_FORCE_RESET __HAL_RCC_UART5_FORCE_RESET +#define __UART5_RELEASE_RESET __HAL_RCC_UART5_RELEASE_RESET +#define __USART1_CLK_DISABLE __HAL_RCC_USART1_CLK_DISABLE +#define __USART1_CLK_ENABLE __HAL_RCC_USART1_CLK_ENABLE +#define __USART1_CLK_SLEEP_DISABLE __HAL_RCC_USART1_CLK_SLEEP_DISABLE +#define __USART1_CLK_SLEEP_ENABLE __HAL_RCC_USART1_CLK_SLEEP_ENABLE +#define __USART1_FORCE_RESET __HAL_RCC_USART1_FORCE_RESET +#define __USART1_RELEASE_RESET __HAL_RCC_USART1_RELEASE_RESET +#define __USART2_CLK_DISABLE __HAL_RCC_USART2_CLK_DISABLE +#define __USART2_CLK_ENABLE __HAL_RCC_USART2_CLK_ENABLE +#define __USART2_CLK_SLEEP_DISABLE __HAL_RCC_USART2_CLK_SLEEP_DISABLE +#define __USART2_CLK_SLEEP_ENABLE __HAL_RCC_USART2_CLK_SLEEP_ENABLE +#define __USART2_FORCE_RESET __HAL_RCC_USART2_FORCE_RESET +#define __USART2_RELEASE_RESET __HAL_RCC_USART2_RELEASE_RESET +#define __USART3_CLK_DISABLE __HAL_RCC_USART3_CLK_DISABLE +#define __USART3_CLK_ENABLE __HAL_RCC_USART3_CLK_ENABLE +#define __USART3_CLK_SLEEP_DISABLE __HAL_RCC_USART3_CLK_SLEEP_DISABLE +#define __USART3_CLK_SLEEP_ENABLE __HAL_RCC_USART3_CLK_SLEEP_ENABLE +#define __USART3_FORCE_RESET __HAL_RCC_USART3_FORCE_RESET +#define __USART3_RELEASE_RESET __HAL_RCC_USART3_RELEASE_RESET +#define __USART4_CLK_DISABLE __HAL_RCC_UART4_CLK_DISABLE +#define __USART4_CLK_ENABLE __HAL_RCC_UART4_CLK_ENABLE +#define __USART4_CLK_SLEEP_ENABLE __HAL_RCC_UART4_CLK_SLEEP_ENABLE +#define __USART4_CLK_SLEEP_DISABLE __HAL_RCC_UART4_CLK_SLEEP_DISABLE +#define __USART4_FORCE_RESET __HAL_RCC_UART4_FORCE_RESET +#define __USART4_RELEASE_RESET __HAL_RCC_UART4_RELEASE_RESET +#define __USART5_CLK_DISABLE __HAL_RCC_UART5_CLK_DISABLE +#define __USART5_CLK_ENABLE __HAL_RCC_UART5_CLK_ENABLE +#define __USART5_CLK_SLEEP_ENABLE __HAL_RCC_UART5_CLK_SLEEP_ENABLE +#define __USART5_CLK_SLEEP_DISABLE __HAL_RCC_UART5_CLK_SLEEP_DISABLE +#define __USART5_FORCE_RESET __HAL_RCC_UART5_FORCE_RESET +#define __USART5_RELEASE_RESET __HAL_RCC_UART5_RELEASE_RESET +#define __USART7_CLK_DISABLE __HAL_RCC_UART7_CLK_DISABLE +#define __USART7_CLK_ENABLE __HAL_RCC_UART7_CLK_ENABLE +#define __USART7_FORCE_RESET __HAL_RCC_UART7_FORCE_RESET +#define __USART7_RELEASE_RESET __HAL_RCC_UART7_RELEASE_RESET +#define __USART8_CLK_DISABLE __HAL_RCC_UART8_CLK_DISABLE +#define __USART8_CLK_ENABLE __HAL_RCC_UART8_CLK_ENABLE +#define __USART8_FORCE_RESET __HAL_RCC_UART8_FORCE_RESET +#define __USART8_RELEASE_RESET __HAL_RCC_UART8_RELEASE_RESET +#define __USB_CLK_DISABLE __HAL_RCC_USB_CLK_DISABLE +#define __USB_CLK_ENABLE __HAL_RCC_USB_CLK_ENABLE +#define __USB_FORCE_RESET __HAL_RCC_USB_FORCE_RESET +#define __USB_CLK_SLEEP_ENABLE __HAL_RCC_USB_CLK_SLEEP_ENABLE +#define __USB_CLK_SLEEP_DISABLE __HAL_RCC_USB_CLK_SLEEP_DISABLE +#define __USB_OTG_FS_CLK_DISABLE __HAL_RCC_USB_OTG_FS_CLK_DISABLE +#define __USB_OTG_FS_CLK_ENABLE __HAL_RCC_USB_OTG_FS_CLK_ENABLE +#define __USB_RELEASE_RESET __HAL_RCC_USB_RELEASE_RESET + +#if defined(STM32H7) +#define __HAL_RCC_WWDG_CLK_DISABLE __HAL_RCC_WWDG1_CLK_DISABLE +#define __HAL_RCC_WWDG_CLK_ENABLE __HAL_RCC_WWDG1_CLK_ENABLE +#define __HAL_RCC_WWDG_CLK_SLEEP_DISABLE __HAL_RCC_WWDG1_CLK_SLEEP_DISABLE +#define __HAL_RCC_WWDG_CLK_SLEEP_ENABLE __HAL_RCC_WWDG1_CLK_SLEEP_ENABLE + +#define __HAL_RCC_WWDG_FORCE_RESET ((void)0U) /* Not available on the STM32H7*/ +#define __HAL_RCC_WWDG_RELEASE_RESET ((void)0U) /* Not available on the STM32H7*/ + + +#define __HAL_RCC_WWDG_IS_CLK_ENABLED __HAL_RCC_WWDG1_IS_CLK_ENABLED +#define __HAL_RCC_WWDG_IS_CLK_DISABLED __HAL_RCC_WWDG1_IS_CLK_DISABLED +#endif + +#define __WWDG_CLK_DISABLE __HAL_RCC_WWDG_CLK_DISABLE +#define __WWDG_CLK_ENABLE __HAL_RCC_WWDG_CLK_ENABLE +#define __WWDG_CLK_SLEEP_DISABLE __HAL_RCC_WWDG_CLK_SLEEP_DISABLE +#define __WWDG_CLK_SLEEP_ENABLE __HAL_RCC_WWDG_CLK_SLEEP_ENABLE +#define __WWDG_FORCE_RESET __HAL_RCC_WWDG_FORCE_RESET +#define __WWDG_RELEASE_RESET __HAL_RCC_WWDG_RELEASE_RESET + +#define __TIM21_CLK_ENABLE __HAL_RCC_TIM21_CLK_ENABLE +#define __TIM21_CLK_DISABLE __HAL_RCC_TIM21_CLK_DISABLE +#define __TIM21_FORCE_RESET __HAL_RCC_TIM21_FORCE_RESET +#define __TIM21_RELEASE_RESET __HAL_RCC_TIM21_RELEASE_RESET +#define __TIM21_CLK_SLEEP_ENABLE __HAL_RCC_TIM21_CLK_SLEEP_ENABLE +#define __TIM21_CLK_SLEEP_DISABLE __HAL_RCC_TIM21_CLK_SLEEP_DISABLE +#define __TIM22_CLK_ENABLE __HAL_RCC_TIM22_CLK_ENABLE +#define __TIM22_CLK_DISABLE __HAL_RCC_TIM22_CLK_DISABLE +#define __TIM22_FORCE_RESET __HAL_RCC_TIM22_FORCE_RESET +#define __TIM22_RELEASE_RESET __HAL_RCC_TIM22_RELEASE_RESET +#define __TIM22_CLK_SLEEP_ENABLE __HAL_RCC_TIM22_CLK_SLEEP_ENABLE +#define __TIM22_CLK_SLEEP_DISABLE __HAL_RCC_TIM22_CLK_SLEEP_DISABLE +#define __CRS_CLK_DISABLE __HAL_RCC_CRS_CLK_DISABLE +#define __CRS_CLK_ENABLE __HAL_RCC_CRS_CLK_ENABLE +#define __CRS_CLK_SLEEP_DISABLE __HAL_RCC_CRS_CLK_SLEEP_DISABLE +#define __CRS_CLK_SLEEP_ENABLE __HAL_RCC_CRS_CLK_SLEEP_ENABLE +#define __CRS_FORCE_RESET __HAL_RCC_CRS_FORCE_RESET +#define __CRS_RELEASE_RESET __HAL_RCC_CRS_RELEASE_RESET +#define __RCC_BACKUPRESET_FORCE __HAL_RCC_BACKUPRESET_FORCE +#define __RCC_BACKUPRESET_RELEASE __HAL_RCC_BACKUPRESET_RELEASE + +#define __USB_OTG_FS_FORCE_RESET __HAL_RCC_USB_OTG_FS_FORCE_RESET +#define __USB_OTG_FS_RELEASE_RESET __HAL_RCC_USB_OTG_FS_RELEASE_RESET +#define __USB_OTG_FS_CLK_SLEEP_ENABLE __HAL_RCC_USB_OTG_FS_CLK_SLEEP_ENABLE +#define __USB_OTG_FS_CLK_SLEEP_DISABLE __HAL_RCC_USB_OTG_FS_CLK_SLEEP_DISABLE +#define __USB_OTG_HS_CLK_DISABLE __HAL_RCC_USB_OTG_HS_CLK_DISABLE +#define __USB_OTG_HS_CLK_ENABLE __HAL_RCC_USB_OTG_HS_CLK_ENABLE +#define __USB_OTG_HS_ULPI_CLK_ENABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_ENABLE +#define __USB_OTG_HS_ULPI_CLK_DISABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_DISABLE +#define __TIM9_CLK_SLEEP_ENABLE __HAL_RCC_TIM9_CLK_SLEEP_ENABLE +#define __TIM9_CLK_SLEEP_DISABLE __HAL_RCC_TIM9_CLK_SLEEP_DISABLE +#define __TIM10_CLK_SLEEP_ENABLE __HAL_RCC_TIM10_CLK_SLEEP_ENABLE +#define __TIM10_CLK_SLEEP_DISABLE __HAL_RCC_TIM10_CLK_SLEEP_DISABLE +#define __TIM11_CLK_SLEEP_ENABLE __HAL_RCC_TIM11_CLK_SLEEP_ENABLE +#define __TIM11_CLK_SLEEP_DISABLE __HAL_RCC_TIM11_CLK_SLEEP_DISABLE +#define __ETHMACPTP_CLK_SLEEP_ENABLE __HAL_RCC_ETHMACPTP_CLK_SLEEP_ENABLE +#define __ETHMACPTP_CLK_SLEEP_DISABLE __HAL_RCC_ETHMACPTP_CLK_SLEEP_DISABLE +#define __ETHMACPTP_CLK_ENABLE __HAL_RCC_ETHMACPTP_CLK_ENABLE +#define __ETHMACPTP_CLK_DISABLE __HAL_RCC_ETHMACPTP_CLK_DISABLE +#define __HASH_CLK_ENABLE __HAL_RCC_HASH_CLK_ENABLE +#define __HASH_FORCE_RESET __HAL_RCC_HASH_FORCE_RESET +#define __HASH_RELEASE_RESET __HAL_RCC_HASH_RELEASE_RESET +#define __HASH_CLK_SLEEP_ENABLE __HAL_RCC_HASH_CLK_SLEEP_ENABLE +#define __HASH_CLK_SLEEP_DISABLE __HAL_RCC_HASH_CLK_SLEEP_DISABLE +#define __HASH_CLK_DISABLE __HAL_RCC_HASH_CLK_DISABLE +#define __SPI5_CLK_ENABLE __HAL_RCC_SPI5_CLK_ENABLE +#define __SPI5_CLK_DISABLE __HAL_RCC_SPI5_CLK_DISABLE +#define __SPI5_FORCE_RESET __HAL_RCC_SPI5_FORCE_RESET +#define __SPI5_RELEASE_RESET __HAL_RCC_SPI5_RELEASE_RESET +#define __SPI5_CLK_SLEEP_ENABLE __HAL_RCC_SPI5_CLK_SLEEP_ENABLE +#define __SPI5_CLK_SLEEP_DISABLE __HAL_RCC_SPI5_CLK_SLEEP_DISABLE +#define __SPI6_CLK_ENABLE __HAL_RCC_SPI6_CLK_ENABLE +#define __SPI6_CLK_DISABLE __HAL_RCC_SPI6_CLK_DISABLE +#define __SPI6_FORCE_RESET __HAL_RCC_SPI6_FORCE_RESET +#define __SPI6_RELEASE_RESET __HAL_RCC_SPI6_RELEASE_RESET +#define __SPI6_CLK_SLEEP_ENABLE __HAL_RCC_SPI6_CLK_SLEEP_ENABLE +#define __SPI6_CLK_SLEEP_DISABLE __HAL_RCC_SPI6_CLK_SLEEP_DISABLE +#define __LTDC_CLK_ENABLE __HAL_RCC_LTDC_CLK_ENABLE +#define __LTDC_CLK_DISABLE __HAL_RCC_LTDC_CLK_DISABLE +#define __LTDC_FORCE_RESET __HAL_RCC_LTDC_FORCE_RESET +#define __LTDC_RELEASE_RESET __HAL_RCC_LTDC_RELEASE_RESET +#define __LTDC_CLK_SLEEP_ENABLE __HAL_RCC_LTDC_CLK_SLEEP_ENABLE +#define __ETHMAC_CLK_SLEEP_ENABLE __HAL_RCC_ETHMAC_CLK_SLEEP_ENABLE +#define __ETHMAC_CLK_SLEEP_DISABLE __HAL_RCC_ETHMAC_CLK_SLEEP_DISABLE +#define __ETHMACTX_CLK_SLEEP_ENABLE __HAL_RCC_ETHMACTX_CLK_SLEEP_ENABLE +#define __ETHMACTX_CLK_SLEEP_DISABLE __HAL_RCC_ETHMACTX_CLK_SLEEP_DISABLE +#define __ETHMACRX_CLK_SLEEP_ENABLE __HAL_RCC_ETHMACRX_CLK_SLEEP_ENABLE +#define __ETHMACRX_CLK_SLEEP_DISABLE __HAL_RCC_ETHMACRX_CLK_SLEEP_DISABLE +#define __TIM12_CLK_SLEEP_ENABLE __HAL_RCC_TIM12_CLK_SLEEP_ENABLE +#define __TIM12_CLK_SLEEP_DISABLE __HAL_RCC_TIM12_CLK_SLEEP_DISABLE +#define __TIM13_CLK_SLEEP_ENABLE __HAL_RCC_TIM13_CLK_SLEEP_ENABLE +#define __TIM13_CLK_SLEEP_DISABLE __HAL_RCC_TIM13_CLK_SLEEP_DISABLE +#define __TIM14_CLK_SLEEP_ENABLE __HAL_RCC_TIM14_CLK_SLEEP_ENABLE +#define __TIM14_CLK_SLEEP_DISABLE __HAL_RCC_TIM14_CLK_SLEEP_DISABLE +#define __BKPSRAM_CLK_ENABLE __HAL_RCC_BKPSRAM_CLK_ENABLE +#define __BKPSRAM_CLK_DISABLE __HAL_RCC_BKPSRAM_CLK_DISABLE +#define __BKPSRAM_CLK_SLEEP_ENABLE __HAL_RCC_BKPSRAM_CLK_SLEEP_ENABLE +#define __BKPSRAM_CLK_SLEEP_DISABLE __HAL_RCC_BKPSRAM_CLK_SLEEP_DISABLE +#define __CCMDATARAMEN_CLK_ENABLE __HAL_RCC_CCMDATARAMEN_CLK_ENABLE +#define __CCMDATARAMEN_CLK_DISABLE __HAL_RCC_CCMDATARAMEN_CLK_DISABLE +#define __USART6_CLK_ENABLE __HAL_RCC_USART6_CLK_ENABLE +#define __USART6_CLK_DISABLE __HAL_RCC_USART6_CLK_DISABLE +#define __USART6_FORCE_RESET __HAL_RCC_USART6_FORCE_RESET +#define __USART6_RELEASE_RESET __HAL_RCC_USART6_RELEASE_RESET +#define __USART6_CLK_SLEEP_ENABLE __HAL_RCC_USART6_CLK_SLEEP_ENABLE +#define __USART6_CLK_SLEEP_DISABLE __HAL_RCC_USART6_CLK_SLEEP_DISABLE +#define __SPI4_CLK_ENABLE __HAL_RCC_SPI4_CLK_ENABLE +#define __SPI4_CLK_DISABLE __HAL_RCC_SPI4_CLK_DISABLE +#define __SPI4_FORCE_RESET __HAL_RCC_SPI4_FORCE_RESET +#define __SPI4_RELEASE_RESET __HAL_RCC_SPI4_RELEASE_RESET +#define __SPI4_CLK_SLEEP_ENABLE __HAL_RCC_SPI4_CLK_SLEEP_ENABLE +#define __SPI4_CLK_SLEEP_DISABLE __HAL_RCC_SPI4_CLK_SLEEP_DISABLE +#define __GPIOI_CLK_ENABLE __HAL_RCC_GPIOI_CLK_ENABLE +#define __GPIOI_CLK_DISABLE __HAL_RCC_GPIOI_CLK_DISABLE +#define __GPIOI_FORCE_RESET __HAL_RCC_GPIOI_FORCE_RESET +#define __GPIOI_RELEASE_RESET __HAL_RCC_GPIOI_RELEASE_RESET +#define __GPIOI_CLK_SLEEP_ENABLE __HAL_RCC_GPIOI_CLK_SLEEP_ENABLE +#define __GPIOI_CLK_SLEEP_DISABLE __HAL_RCC_GPIOI_CLK_SLEEP_DISABLE +#define __GPIOJ_CLK_ENABLE __HAL_RCC_GPIOJ_CLK_ENABLE +#define __GPIOJ_CLK_DISABLE __HAL_RCC_GPIOJ_CLK_DISABLE +#define __GPIOJ_FORCE_RESET __HAL_RCC_GPIOJ_FORCE_RESET +#define __GPIOJ_RELEASE_RESET __HAL_RCC_GPIOJ_RELEASE_RESET +#define __GPIOJ_CLK_SLEEP_ENABLE __HAL_RCC_GPIOJ_CLK_SLEEP_ENABLE +#define __GPIOJ_CLK_SLEEP_DISABLE __HAL_RCC_GPIOJ_CLK_SLEEP_DISABLE +#define __GPIOK_CLK_ENABLE __HAL_RCC_GPIOK_CLK_ENABLE +#define __GPIOK_CLK_DISABLE __HAL_RCC_GPIOK_CLK_DISABLE +#define __GPIOK_RELEASE_RESET __HAL_RCC_GPIOK_RELEASE_RESET +#define __GPIOK_CLK_SLEEP_ENABLE __HAL_RCC_GPIOK_CLK_SLEEP_ENABLE +#define __GPIOK_CLK_SLEEP_DISABLE __HAL_RCC_GPIOK_CLK_SLEEP_DISABLE +#define __ETH_CLK_ENABLE __HAL_RCC_ETH_CLK_ENABLE +#define __ETH_CLK_DISABLE __HAL_RCC_ETH_CLK_DISABLE +#define __DCMI_CLK_ENABLE __HAL_RCC_DCMI_CLK_ENABLE +#define __DCMI_CLK_DISABLE __HAL_RCC_DCMI_CLK_DISABLE +#define __DCMI_FORCE_RESET __HAL_RCC_DCMI_FORCE_RESET +#define __DCMI_RELEASE_RESET __HAL_RCC_DCMI_RELEASE_RESET +#define __DCMI_CLK_SLEEP_ENABLE __HAL_RCC_DCMI_CLK_SLEEP_ENABLE +#define __DCMI_CLK_SLEEP_DISABLE __HAL_RCC_DCMI_CLK_SLEEP_DISABLE +#define __UART7_CLK_ENABLE __HAL_RCC_UART7_CLK_ENABLE +#define __UART7_CLK_DISABLE __HAL_RCC_UART7_CLK_DISABLE +#define __UART7_RELEASE_RESET __HAL_RCC_UART7_RELEASE_RESET +#define __UART7_FORCE_RESET __HAL_RCC_UART7_FORCE_RESET +#define __UART7_CLK_SLEEP_ENABLE __HAL_RCC_UART7_CLK_SLEEP_ENABLE +#define __UART7_CLK_SLEEP_DISABLE __HAL_RCC_UART7_CLK_SLEEP_DISABLE +#define __UART8_CLK_ENABLE __HAL_RCC_UART8_CLK_ENABLE +#define __UART8_CLK_DISABLE __HAL_RCC_UART8_CLK_DISABLE +#define __UART8_FORCE_RESET __HAL_RCC_UART8_FORCE_RESET +#define __UART8_RELEASE_RESET __HAL_RCC_UART8_RELEASE_RESET +#define __UART8_CLK_SLEEP_ENABLE __HAL_RCC_UART8_CLK_SLEEP_ENABLE +#define __UART8_CLK_SLEEP_DISABLE __HAL_RCC_UART8_CLK_SLEEP_DISABLE +#define __OTGHS_CLK_SLEEP_ENABLE __HAL_RCC_USB_OTG_HS_CLK_SLEEP_ENABLE +#define __OTGHS_CLK_SLEEP_DISABLE __HAL_RCC_USB_OTG_HS_CLK_SLEEP_DISABLE +#define __OTGHS_FORCE_RESET __HAL_RCC_USB_OTG_HS_FORCE_RESET +#define __OTGHS_RELEASE_RESET __HAL_RCC_USB_OTG_HS_RELEASE_RESET +#define __OTGHSULPI_CLK_SLEEP_ENABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_ENABLE +#define __OTGHSULPI_CLK_SLEEP_DISABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_DISABLE +#define __HAL_RCC_OTGHS_CLK_SLEEP_ENABLE __HAL_RCC_USB_OTG_HS_CLK_SLEEP_ENABLE +#define __HAL_RCC_OTGHS_CLK_SLEEP_DISABLE __HAL_RCC_USB_OTG_HS_CLK_SLEEP_DISABLE +#define __HAL_RCC_OTGHS_IS_CLK_SLEEP_ENABLED __HAL_RCC_USB_OTG_HS_IS_CLK_SLEEP_ENABLED +#define __HAL_RCC_OTGHS_IS_CLK_SLEEP_DISABLED __HAL_RCC_USB_OTG_HS_IS_CLK_SLEEP_DISABLED +#define __HAL_RCC_OTGHS_FORCE_RESET __HAL_RCC_USB_OTG_HS_FORCE_RESET +#define __HAL_RCC_OTGHS_RELEASE_RESET __HAL_RCC_USB_OTG_HS_RELEASE_RESET +#define __HAL_RCC_OTGHSULPI_CLK_SLEEP_ENABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_ENABLE +#define __HAL_RCC_OTGHSULPI_CLK_SLEEP_DISABLE __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_DISABLE +#define __HAL_RCC_OTGHSULPI_IS_CLK_SLEEP_ENABLED __HAL_RCC_USB_OTG_HS_ULPI_IS_CLK_SLEEP_ENABLED +#define __HAL_RCC_OTGHSULPI_IS_CLK_SLEEP_DISABLED __HAL_RCC_USB_OTG_HS_ULPI_IS_CLK_SLEEP_DISABLED +#define __SRAM3_CLK_SLEEP_ENABLE __HAL_RCC_SRAM3_CLK_SLEEP_ENABLE +#define __CAN2_CLK_SLEEP_ENABLE __HAL_RCC_CAN2_CLK_SLEEP_ENABLE +#define __CAN2_CLK_SLEEP_DISABLE __HAL_RCC_CAN2_CLK_SLEEP_DISABLE +#define __DAC_CLK_SLEEP_ENABLE __HAL_RCC_DAC_CLK_SLEEP_ENABLE +#define __DAC_CLK_SLEEP_DISABLE __HAL_RCC_DAC_CLK_SLEEP_DISABLE +#define __ADC2_CLK_SLEEP_ENABLE __HAL_RCC_ADC2_CLK_SLEEP_ENABLE +#define __ADC2_CLK_SLEEP_DISABLE __HAL_RCC_ADC2_CLK_SLEEP_DISABLE +#define __ADC3_CLK_SLEEP_ENABLE __HAL_RCC_ADC3_CLK_SLEEP_ENABLE +#define __ADC3_CLK_SLEEP_DISABLE __HAL_RCC_ADC3_CLK_SLEEP_DISABLE +#define __FSMC_FORCE_RESET __HAL_RCC_FSMC_FORCE_RESET +#define __FSMC_RELEASE_RESET __HAL_RCC_FSMC_RELEASE_RESET +#define __FSMC_CLK_SLEEP_ENABLE __HAL_RCC_FSMC_CLK_SLEEP_ENABLE +#define __FSMC_CLK_SLEEP_DISABLE __HAL_RCC_FSMC_CLK_SLEEP_DISABLE +#define __SDIO_FORCE_RESET __HAL_RCC_SDIO_FORCE_RESET +#define __SDIO_RELEASE_RESET __HAL_RCC_SDIO_RELEASE_RESET +#define __SDIO_CLK_SLEEP_DISABLE __HAL_RCC_SDIO_CLK_SLEEP_DISABLE +#define __SDIO_CLK_SLEEP_ENABLE __HAL_RCC_SDIO_CLK_SLEEP_ENABLE +#define __DMA2D_CLK_ENABLE __HAL_RCC_DMA2D_CLK_ENABLE +#define __DMA2D_CLK_DISABLE __HAL_RCC_DMA2D_CLK_DISABLE +#define __DMA2D_FORCE_RESET __HAL_RCC_DMA2D_FORCE_RESET +#define __DMA2D_RELEASE_RESET __HAL_RCC_DMA2D_RELEASE_RESET +#define __DMA2D_CLK_SLEEP_ENABLE __HAL_RCC_DMA2D_CLK_SLEEP_ENABLE +#define __DMA2D_CLK_SLEEP_DISABLE __HAL_RCC_DMA2D_CLK_SLEEP_DISABLE + +/* alias define maintained for legacy */ +#define __HAL_RCC_OTGFS_FORCE_RESET __HAL_RCC_USB_OTG_FS_FORCE_RESET +#define __HAL_RCC_OTGFS_RELEASE_RESET __HAL_RCC_USB_OTG_FS_RELEASE_RESET + +#define __ADC12_CLK_ENABLE __HAL_RCC_ADC12_CLK_ENABLE +#define __ADC12_CLK_DISABLE __HAL_RCC_ADC12_CLK_DISABLE +#define __ADC34_CLK_ENABLE __HAL_RCC_ADC34_CLK_ENABLE +#define __ADC34_CLK_DISABLE __HAL_RCC_ADC34_CLK_DISABLE +#define __DAC2_CLK_ENABLE __HAL_RCC_DAC2_CLK_ENABLE +#define __DAC2_CLK_DISABLE __HAL_RCC_DAC2_CLK_DISABLE +#define __TIM18_CLK_ENABLE __HAL_RCC_TIM18_CLK_ENABLE +#define __TIM18_CLK_DISABLE __HAL_RCC_TIM18_CLK_DISABLE +#define __TIM19_CLK_ENABLE __HAL_RCC_TIM19_CLK_ENABLE +#define __TIM19_CLK_DISABLE __HAL_RCC_TIM19_CLK_DISABLE +#define __TIM20_CLK_ENABLE __HAL_RCC_TIM20_CLK_ENABLE +#define __TIM20_CLK_DISABLE __HAL_RCC_TIM20_CLK_DISABLE +#define __HRTIM1_CLK_ENABLE __HAL_RCC_HRTIM1_CLK_ENABLE +#define __HRTIM1_CLK_DISABLE __HAL_RCC_HRTIM1_CLK_DISABLE +#define __SDADC1_CLK_ENABLE __HAL_RCC_SDADC1_CLK_ENABLE +#define __SDADC2_CLK_ENABLE __HAL_RCC_SDADC2_CLK_ENABLE +#define __SDADC3_CLK_ENABLE __HAL_RCC_SDADC3_CLK_ENABLE +#define __SDADC1_CLK_DISABLE __HAL_RCC_SDADC1_CLK_DISABLE +#define __SDADC2_CLK_DISABLE __HAL_RCC_SDADC2_CLK_DISABLE +#define __SDADC3_CLK_DISABLE __HAL_RCC_SDADC3_CLK_DISABLE + +#define __ADC12_FORCE_RESET __HAL_RCC_ADC12_FORCE_RESET +#define __ADC12_RELEASE_RESET __HAL_RCC_ADC12_RELEASE_RESET +#define __ADC34_FORCE_RESET __HAL_RCC_ADC34_FORCE_RESET +#define __ADC34_RELEASE_RESET __HAL_RCC_ADC34_RELEASE_RESET +#define __DAC2_FORCE_RESET __HAL_RCC_DAC2_FORCE_RESET +#define __DAC2_RELEASE_RESET __HAL_RCC_DAC2_RELEASE_RESET +#define __TIM18_FORCE_RESET __HAL_RCC_TIM18_FORCE_RESET +#define __TIM18_RELEASE_RESET __HAL_RCC_TIM18_RELEASE_RESET +#define __TIM19_FORCE_RESET __HAL_RCC_TIM19_FORCE_RESET +#define __TIM19_RELEASE_RESET __HAL_RCC_TIM19_RELEASE_RESET +#define __TIM20_FORCE_RESET __HAL_RCC_TIM20_FORCE_RESET +#define __TIM20_RELEASE_RESET __HAL_RCC_TIM20_RELEASE_RESET +#define __HRTIM1_FORCE_RESET __HAL_RCC_HRTIM1_FORCE_RESET +#define __HRTIM1_RELEASE_RESET __HAL_RCC_HRTIM1_RELEASE_RESET +#define __SDADC1_FORCE_RESET __HAL_RCC_SDADC1_FORCE_RESET +#define __SDADC2_FORCE_RESET __HAL_RCC_SDADC2_FORCE_RESET +#define __SDADC3_FORCE_RESET __HAL_RCC_SDADC3_FORCE_RESET +#define __SDADC1_RELEASE_RESET __HAL_RCC_SDADC1_RELEASE_RESET +#define __SDADC2_RELEASE_RESET __HAL_RCC_SDADC2_RELEASE_RESET +#define __SDADC3_RELEASE_RESET __HAL_RCC_SDADC3_RELEASE_RESET + +#define __ADC1_IS_CLK_ENABLED __HAL_RCC_ADC1_IS_CLK_ENABLED +#define __ADC1_IS_CLK_DISABLED __HAL_RCC_ADC1_IS_CLK_DISABLED +#define __ADC12_IS_CLK_ENABLED __HAL_RCC_ADC12_IS_CLK_ENABLED +#define __ADC12_IS_CLK_DISABLED __HAL_RCC_ADC12_IS_CLK_DISABLED +#define __ADC34_IS_CLK_ENABLED __HAL_RCC_ADC34_IS_CLK_ENABLED +#define __ADC34_IS_CLK_DISABLED __HAL_RCC_ADC34_IS_CLK_DISABLED +#define __CEC_IS_CLK_ENABLED __HAL_RCC_CEC_IS_CLK_ENABLED +#define __CEC_IS_CLK_DISABLED __HAL_RCC_CEC_IS_CLK_DISABLED +#define __CRC_IS_CLK_ENABLED __HAL_RCC_CRC_IS_CLK_ENABLED +#define __CRC_IS_CLK_DISABLED __HAL_RCC_CRC_IS_CLK_DISABLED +#define __DAC1_IS_CLK_ENABLED __HAL_RCC_DAC1_IS_CLK_ENABLED +#define __DAC1_IS_CLK_DISABLED __HAL_RCC_DAC1_IS_CLK_DISABLED +#define __DAC2_IS_CLK_ENABLED __HAL_RCC_DAC2_IS_CLK_ENABLED +#define __DAC2_IS_CLK_DISABLED __HAL_RCC_DAC2_IS_CLK_DISABLED +#define __DMA1_IS_CLK_ENABLED __HAL_RCC_DMA1_IS_CLK_ENABLED +#define __DMA1_IS_CLK_DISABLED __HAL_RCC_DMA1_IS_CLK_DISABLED +#define __DMA2_IS_CLK_ENABLED __HAL_RCC_DMA2_IS_CLK_ENABLED +#define __DMA2_IS_CLK_DISABLED __HAL_RCC_DMA2_IS_CLK_DISABLED +#define __FLITF_IS_CLK_ENABLED __HAL_RCC_FLITF_IS_CLK_ENABLED +#define __FLITF_IS_CLK_DISABLED __HAL_RCC_FLITF_IS_CLK_DISABLED +#define __FMC_IS_CLK_ENABLED __HAL_RCC_FMC_IS_CLK_ENABLED +#define __FMC_IS_CLK_DISABLED __HAL_RCC_FMC_IS_CLK_DISABLED +#define __GPIOA_IS_CLK_ENABLED __HAL_RCC_GPIOA_IS_CLK_ENABLED +#define __GPIOA_IS_CLK_DISABLED __HAL_RCC_GPIOA_IS_CLK_DISABLED +#define __GPIOB_IS_CLK_ENABLED __HAL_RCC_GPIOB_IS_CLK_ENABLED +#define __GPIOB_IS_CLK_DISABLED __HAL_RCC_GPIOB_IS_CLK_DISABLED +#define __GPIOC_IS_CLK_ENABLED __HAL_RCC_GPIOC_IS_CLK_ENABLED +#define __GPIOC_IS_CLK_DISABLED __HAL_RCC_GPIOC_IS_CLK_DISABLED +#define __GPIOD_IS_CLK_ENABLED __HAL_RCC_GPIOD_IS_CLK_ENABLED +#define __GPIOD_IS_CLK_DISABLED __HAL_RCC_GPIOD_IS_CLK_DISABLED +#define __GPIOE_IS_CLK_ENABLED __HAL_RCC_GPIOE_IS_CLK_ENABLED +#define __GPIOE_IS_CLK_DISABLED __HAL_RCC_GPIOE_IS_CLK_DISABLED +#define __GPIOF_IS_CLK_ENABLED __HAL_RCC_GPIOF_IS_CLK_ENABLED +#define __GPIOF_IS_CLK_DISABLED __HAL_RCC_GPIOF_IS_CLK_DISABLED +#define __GPIOG_IS_CLK_ENABLED __HAL_RCC_GPIOG_IS_CLK_ENABLED +#define __GPIOG_IS_CLK_DISABLED __HAL_RCC_GPIOG_IS_CLK_DISABLED +#define __GPIOH_IS_CLK_ENABLED __HAL_RCC_GPIOH_IS_CLK_ENABLED +#define __GPIOH_IS_CLK_DISABLED __HAL_RCC_GPIOH_IS_CLK_DISABLED +#define __HRTIM1_IS_CLK_ENABLED __HAL_RCC_HRTIM1_IS_CLK_ENABLED +#define __HRTIM1_IS_CLK_DISABLED __HAL_RCC_HRTIM1_IS_CLK_DISABLED +#define __I2C1_IS_CLK_ENABLED __HAL_RCC_I2C1_IS_CLK_ENABLED +#define __I2C1_IS_CLK_DISABLED __HAL_RCC_I2C1_IS_CLK_DISABLED +#define __I2C2_IS_CLK_ENABLED __HAL_RCC_I2C2_IS_CLK_ENABLED +#define __I2C2_IS_CLK_DISABLED __HAL_RCC_I2C2_IS_CLK_DISABLED +#define __I2C3_IS_CLK_ENABLED __HAL_RCC_I2C3_IS_CLK_ENABLED +#define __I2C3_IS_CLK_DISABLED __HAL_RCC_I2C3_IS_CLK_DISABLED +#define __PWR_IS_CLK_ENABLED __HAL_RCC_PWR_IS_CLK_ENABLED +#define __PWR_IS_CLK_DISABLED __HAL_RCC_PWR_IS_CLK_DISABLED +#define __SYSCFG_IS_CLK_ENABLED __HAL_RCC_SYSCFG_IS_CLK_ENABLED +#define __SYSCFG_IS_CLK_DISABLED __HAL_RCC_SYSCFG_IS_CLK_DISABLED +#define __SPI1_IS_CLK_ENABLED __HAL_RCC_SPI1_IS_CLK_ENABLED +#define __SPI1_IS_CLK_DISABLED __HAL_RCC_SPI1_IS_CLK_DISABLED +#define __SPI2_IS_CLK_ENABLED __HAL_RCC_SPI2_IS_CLK_ENABLED +#define __SPI2_IS_CLK_DISABLED __HAL_RCC_SPI2_IS_CLK_DISABLED +#define __SPI3_IS_CLK_ENABLED __HAL_RCC_SPI3_IS_CLK_ENABLED +#define __SPI3_IS_CLK_DISABLED __HAL_RCC_SPI3_IS_CLK_DISABLED +#define __SPI4_IS_CLK_ENABLED __HAL_RCC_SPI4_IS_CLK_ENABLED +#define __SPI4_IS_CLK_DISABLED __HAL_RCC_SPI4_IS_CLK_DISABLED +#define __SDADC1_IS_CLK_ENABLED __HAL_RCC_SDADC1_IS_CLK_ENABLED +#define __SDADC1_IS_CLK_DISABLED __HAL_RCC_SDADC1_IS_CLK_DISABLED +#define __SDADC2_IS_CLK_ENABLED __HAL_RCC_SDADC2_IS_CLK_ENABLED +#define __SDADC2_IS_CLK_DISABLED __HAL_RCC_SDADC2_IS_CLK_DISABLED +#define __SDADC3_IS_CLK_ENABLED __HAL_RCC_SDADC3_IS_CLK_ENABLED +#define __SDADC3_IS_CLK_DISABLED __HAL_RCC_SDADC3_IS_CLK_DISABLED +#define __SRAM_IS_CLK_ENABLED __HAL_RCC_SRAM_IS_CLK_ENABLED +#define __SRAM_IS_CLK_DISABLED __HAL_RCC_SRAM_IS_CLK_DISABLED +#define __TIM1_IS_CLK_ENABLED __HAL_RCC_TIM1_IS_CLK_ENABLED +#define __TIM1_IS_CLK_DISABLED __HAL_RCC_TIM1_IS_CLK_DISABLED +#define __TIM2_IS_CLK_ENABLED __HAL_RCC_TIM2_IS_CLK_ENABLED +#define __TIM2_IS_CLK_DISABLED __HAL_RCC_TIM2_IS_CLK_DISABLED +#define __TIM3_IS_CLK_ENABLED __HAL_RCC_TIM3_IS_CLK_ENABLED +#define __TIM3_IS_CLK_DISABLED __HAL_RCC_TIM3_IS_CLK_DISABLED +#define __TIM4_IS_CLK_ENABLED __HAL_RCC_TIM4_IS_CLK_ENABLED +#define __TIM4_IS_CLK_DISABLED __HAL_RCC_TIM4_IS_CLK_DISABLED +#define __TIM5_IS_CLK_ENABLED __HAL_RCC_TIM5_IS_CLK_ENABLED +#define __TIM5_IS_CLK_DISABLED __HAL_RCC_TIM5_IS_CLK_DISABLED +#define __TIM6_IS_CLK_ENABLED __HAL_RCC_TIM6_IS_CLK_ENABLED +#define __TIM6_IS_CLK_DISABLED __HAL_RCC_TIM6_IS_CLK_DISABLED +#define __TIM7_IS_CLK_ENABLED __HAL_RCC_TIM7_IS_CLK_ENABLED +#define __TIM7_IS_CLK_DISABLED __HAL_RCC_TIM7_IS_CLK_DISABLED +#define __TIM8_IS_CLK_ENABLED __HAL_RCC_TIM8_IS_CLK_ENABLED +#define __TIM8_IS_CLK_DISABLED __HAL_RCC_TIM8_IS_CLK_DISABLED +#define __TIM12_IS_CLK_ENABLED __HAL_RCC_TIM12_IS_CLK_ENABLED +#define __TIM12_IS_CLK_DISABLED __HAL_RCC_TIM12_IS_CLK_DISABLED +#define __TIM13_IS_CLK_ENABLED __HAL_RCC_TIM13_IS_CLK_ENABLED +#define __TIM13_IS_CLK_DISABLED __HAL_RCC_TIM13_IS_CLK_DISABLED +#define __TIM14_IS_CLK_ENABLED __HAL_RCC_TIM14_IS_CLK_ENABLED +#define __TIM14_IS_CLK_DISABLED __HAL_RCC_TIM14_IS_CLK_DISABLED +#define __TIM15_IS_CLK_ENABLED __HAL_RCC_TIM15_IS_CLK_ENABLED +#define __TIM15_IS_CLK_DISABLED __HAL_RCC_TIM15_IS_CLK_DISABLED +#define __TIM16_IS_CLK_ENABLED __HAL_RCC_TIM16_IS_CLK_ENABLED +#define __TIM16_IS_CLK_DISABLED __HAL_RCC_TIM16_IS_CLK_DISABLED +#define __TIM17_IS_CLK_ENABLED __HAL_RCC_TIM17_IS_CLK_ENABLED +#define __TIM17_IS_CLK_DISABLED __HAL_RCC_TIM17_IS_CLK_DISABLED +#define __TIM18_IS_CLK_ENABLED __HAL_RCC_TIM18_IS_CLK_ENABLED +#define __TIM18_IS_CLK_DISABLED __HAL_RCC_TIM18_IS_CLK_DISABLED +#define __TIM19_IS_CLK_ENABLED __HAL_RCC_TIM19_IS_CLK_ENABLED +#define __TIM19_IS_CLK_DISABLED __HAL_RCC_TIM19_IS_CLK_DISABLED +#define __TIM20_IS_CLK_ENABLED __HAL_RCC_TIM20_IS_CLK_ENABLED +#define __TIM20_IS_CLK_DISABLED __HAL_RCC_TIM20_IS_CLK_DISABLED +#define __TSC_IS_CLK_ENABLED __HAL_RCC_TSC_IS_CLK_ENABLED +#define __TSC_IS_CLK_DISABLED __HAL_RCC_TSC_IS_CLK_DISABLED +#define __UART4_IS_CLK_ENABLED __HAL_RCC_UART4_IS_CLK_ENABLED +#define __UART4_IS_CLK_DISABLED __HAL_RCC_UART4_IS_CLK_DISABLED +#define __UART5_IS_CLK_ENABLED __HAL_RCC_UART5_IS_CLK_ENABLED +#define __UART5_IS_CLK_DISABLED __HAL_RCC_UART5_IS_CLK_DISABLED +#define __USART1_IS_CLK_ENABLED __HAL_RCC_USART1_IS_CLK_ENABLED +#define __USART1_IS_CLK_DISABLED __HAL_RCC_USART1_IS_CLK_DISABLED +#define __USART2_IS_CLK_ENABLED __HAL_RCC_USART2_IS_CLK_ENABLED +#define __USART2_IS_CLK_DISABLED __HAL_RCC_USART2_IS_CLK_DISABLED +#define __USART3_IS_CLK_ENABLED __HAL_RCC_USART3_IS_CLK_ENABLED +#define __USART3_IS_CLK_DISABLED __HAL_RCC_USART3_IS_CLK_DISABLED +#define __USB_IS_CLK_ENABLED __HAL_RCC_USB_IS_CLK_ENABLED +#define __USB_IS_CLK_DISABLED __HAL_RCC_USB_IS_CLK_DISABLED +#define __WWDG_IS_CLK_ENABLED __HAL_RCC_WWDG_IS_CLK_ENABLED +#define __WWDG_IS_CLK_DISABLED __HAL_RCC_WWDG_IS_CLK_DISABLED + +#if defined(STM32L1) +#define __HAL_RCC_CRYP_CLK_DISABLE __HAL_RCC_AES_CLK_DISABLE +#define __HAL_RCC_CRYP_CLK_ENABLE __HAL_RCC_AES_CLK_ENABLE +#define __HAL_RCC_CRYP_CLK_SLEEP_DISABLE __HAL_RCC_AES_CLK_SLEEP_DISABLE +#define __HAL_RCC_CRYP_CLK_SLEEP_ENABLE __HAL_RCC_AES_CLK_SLEEP_ENABLE +#define __HAL_RCC_CRYP_FORCE_RESET __HAL_RCC_AES_FORCE_RESET +#define __HAL_RCC_CRYP_RELEASE_RESET __HAL_RCC_AES_RELEASE_RESET +#endif /* STM32L1 */ + +#if defined(STM32F4) +#define __HAL_RCC_SDMMC1_FORCE_RESET __HAL_RCC_SDIO_FORCE_RESET +#define __HAL_RCC_SDMMC1_RELEASE_RESET __HAL_RCC_SDIO_RELEASE_RESET +#define __HAL_RCC_SDMMC1_CLK_SLEEP_ENABLE __HAL_RCC_SDIO_CLK_SLEEP_ENABLE +#define __HAL_RCC_SDMMC1_CLK_SLEEP_DISABLE __HAL_RCC_SDIO_CLK_SLEEP_DISABLE +#define __HAL_RCC_SDMMC1_CLK_ENABLE __HAL_RCC_SDIO_CLK_ENABLE +#define __HAL_RCC_SDMMC1_CLK_DISABLE __HAL_RCC_SDIO_CLK_DISABLE +#define __HAL_RCC_SDMMC1_IS_CLK_ENABLED __HAL_RCC_SDIO_IS_CLK_ENABLED +#define __HAL_RCC_SDMMC1_IS_CLK_DISABLED __HAL_RCC_SDIO_IS_CLK_DISABLED +#define Sdmmc1ClockSelection SdioClockSelection +#define RCC_PERIPHCLK_SDMMC1 RCC_PERIPHCLK_SDIO +#define RCC_SDMMC1CLKSOURCE_CLK48 RCC_SDIOCLKSOURCE_CK48 +#define RCC_SDMMC1CLKSOURCE_SYSCLK RCC_SDIOCLKSOURCE_SYSCLK +#define __HAL_RCC_SDMMC1_CONFIG __HAL_RCC_SDIO_CONFIG +#define __HAL_RCC_GET_SDMMC1_SOURCE __HAL_RCC_GET_SDIO_SOURCE +#endif + +#if defined(STM32F7) || defined(STM32L4) +#define __HAL_RCC_SDIO_FORCE_RESET __HAL_RCC_SDMMC1_FORCE_RESET +#define __HAL_RCC_SDIO_RELEASE_RESET __HAL_RCC_SDMMC1_RELEASE_RESET +#define __HAL_RCC_SDIO_CLK_SLEEP_ENABLE __HAL_RCC_SDMMC1_CLK_SLEEP_ENABLE +#define __HAL_RCC_SDIO_CLK_SLEEP_DISABLE __HAL_RCC_SDMMC1_CLK_SLEEP_DISABLE +#define __HAL_RCC_SDIO_CLK_ENABLE __HAL_RCC_SDMMC1_CLK_ENABLE +#define __HAL_RCC_SDIO_CLK_DISABLE __HAL_RCC_SDMMC1_CLK_DISABLE +#define __HAL_RCC_SDIO_IS_CLK_ENABLED __HAL_RCC_SDMMC1_IS_CLK_ENABLED +#define __HAL_RCC_SDIO_IS_CLK_DISABLED __HAL_RCC_SDMMC1_IS_CLK_DISABLED +#define SdioClockSelection Sdmmc1ClockSelection +#define RCC_PERIPHCLK_SDIO RCC_PERIPHCLK_SDMMC1 +#define __HAL_RCC_SDIO_CONFIG __HAL_RCC_SDMMC1_CONFIG +#define __HAL_RCC_GET_SDIO_SOURCE __HAL_RCC_GET_SDMMC1_SOURCE +#endif + +#if defined(STM32F7) +#define RCC_SDIOCLKSOURCE_CLK48 RCC_SDMMC1CLKSOURCE_CLK48 +#define RCC_SDIOCLKSOURCE_SYSCLK RCC_SDMMC1CLKSOURCE_SYSCLK +#endif + +#if defined(STM32H7) +#define __HAL_RCC_USB_OTG_HS_CLK_ENABLE() __HAL_RCC_USB1_OTG_HS_CLK_ENABLE() +#define __HAL_RCC_USB_OTG_HS_ULPI_CLK_ENABLE() __HAL_RCC_USB1_OTG_HS_ULPI_CLK_ENABLE() +#define __HAL_RCC_USB_OTG_HS_CLK_DISABLE() __HAL_RCC_USB1_OTG_HS_CLK_DISABLE() +#define __HAL_RCC_USB_OTG_HS_ULPI_CLK_DISABLE() __HAL_RCC_USB1_OTG_HS_ULPI_CLK_DISABLE() +#define __HAL_RCC_USB_OTG_HS_FORCE_RESET() __HAL_RCC_USB1_OTG_HS_FORCE_RESET() +#define __HAL_RCC_USB_OTG_HS_RELEASE_RESET() __HAL_RCC_USB1_OTG_HS_RELEASE_RESET() +#define __HAL_RCC_USB_OTG_HS_CLK_SLEEP_ENABLE() __HAL_RCC_USB1_OTG_HS_CLK_SLEEP_ENABLE() +#define __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_ENABLE() __HAL_RCC_USB1_OTG_HS_ULPI_CLK_SLEEP_ENABLE() +#define __HAL_RCC_USB_OTG_HS_CLK_SLEEP_DISABLE() __HAL_RCC_USB1_OTG_HS_CLK_SLEEP_DISABLE() +#define __HAL_RCC_USB_OTG_HS_ULPI_CLK_SLEEP_DISABLE() __HAL_RCC_USB1_OTG_HS_ULPI_CLK_SLEEP_DISABLE() + +#define __HAL_RCC_USB_OTG_FS_CLK_ENABLE() __HAL_RCC_USB2_OTG_FS_CLK_ENABLE() +#define __HAL_RCC_USB_OTG_FS_ULPI_CLK_ENABLE() __HAL_RCC_USB2_OTG_FS_ULPI_CLK_ENABLE() +#define __HAL_RCC_USB_OTG_FS_CLK_DISABLE() __HAL_RCC_USB2_OTG_FS_CLK_DISABLE() +#define __HAL_RCC_USB_OTG_FS_ULPI_CLK_DISABLE() __HAL_RCC_USB2_OTG_FS_ULPI_CLK_DISABLE() +#define __HAL_RCC_USB_OTG_FS_FORCE_RESET() __HAL_RCC_USB2_OTG_FS_FORCE_RESET() +#define __HAL_RCC_USB_OTG_FS_RELEASE_RESET() __HAL_RCC_USB2_OTG_FS_RELEASE_RESET() +#define __HAL_RCC_USB_OTG_FS_CLK_SLEEP_ENABLE() __HAL_RCC_USB2_OTG_FS_CLK_SLEEP_ENABLE() +#define __HAL_RCC_USB_OTG_FS_ULPI_CLK_SLEEP_ENABLE() __HAL_RCC_USB2_OTG_FS_ULPI_CLK_SLEEP_ENABLE() +#define __HAL_RCC_USB_OTG_FS_CLK_SLEEP_DISABLE() __HAL_RCC_USB2_OTG_FS_CLK_SLEEP_DISABLE() +#define __HAL_RCC_USB_OTG_FS_ULPI_CLK_SLEEP_DISABLE() __HAL_RCC_USB2_OTG_FS_ULPI_CLK_SLEEP_DISABLE() +#endif + +#define __HAL_RCC_I2SCLK __HAL_RCC_I2S_CONFIG +#define __HAL_RCC_I2SCLK_CONFIG __HAL_RCC_I2S_CONFIG + +#define __RCC_PLLSRC RCC_GET_PLL_OSCSOURCE + +#define IS_RCC_MSIRANGE IS_RCC_MSI_CLOCK_RANGE +#define IS_RCC_RTCCLK_SOURCE IS_RCC_RTCCLKSOURCE +#define IS_RCC_SYSCLK_DIV IS_RCC_HCLK +#define IS_RCC_HCLK_DIV IS_RCC_PCLK +#define IS_RCC_PERIPHCLK IS_RCC_PERIPHCLOCK + +#define RCC_IT_HSI14 RCC_IT_HSI14RDY + +#define RCC_IT_CSSLSE RCC_IT_LSECSS +#define RCC_IT_CSSHSE RCC_IT_CSS + +#define RCC_PLLMUL_3 RCC_PLL_MUL3 +#define RCC_PLLMUL_4 RCC_PLL_MUL4 +#define RCC_PLLMUL_6 RCC_PLL_MUL6 +#define RCC_PLLMUL_8 RCC_PLL_MUL8 +#define RCC_PLLMUL_12 RCC_PLL_MUL12 +#define RCC_PLLMUL_16 RCC_PLL_MUL16 +#define RCC_PLLMUL_24 RCC_PLL_MUL24 +#define RCC_PLLMUL_32 RCC_PLL_MUL32 +#define RCC_PLLMUL_48 RCC_PLL_MUL48 + +#define RCC_PLLDIV_2 RCC_PLL_DIV2 +#define RCC_PLLDIV_3 RCC_PLL_DIV3 +#define RCC_PLLDIV_4 RCC_PLL_DIV4 + +#define IS_RCC_MCOSOURCE IS_RCC_MCO1SOURCE +#define __HAL_RCC_MCO_CONFIG __HAL_RCC_MCO1_CONFIG +#define RCC_MCO_NODIV RCC_MCODIV_1 +#define RCC_MCO_DIV1 RCC_MCODIV_1 +#define RCC_MCO_DIV2 RCC_MCODIV_2 +#define RCC_MCO_DIV4 RCC_MCODIV_4 +#define RCC_MCO_DIV8 RCC_MCODIV_8 +#define RCC_MCO_DIV16 RCC_MCODIV_16 +#define RCC_MCO_DIV32 RCC_MCODIV_32 +#define RCC_MCO_DIV64 RCC_MCODIV_64 +#define RCC_MCO_DIV128 RCC_MCODIV_128 +#define RCC_MCOSOURCE_NONE RCC_MCO1SOURCE_NOCLOCK +#define RCC_MCOSOURCE_LSI RCC_MCO1SOURCE_LSI +#define RCC_MCOSOURCE_LSE RCC_MCO1SOURCE_LSE +#define RCC_MCOSOURCE_SYSCLK RCC_MCO1SOURCE_SYSCLK +#define RCC_MCOSOURCE_HSI RCC_MCO1SOURCE_HSI +#define RCC_MCOSOURCE_HSI14 RCC_MCO1SOURCE_HSI14 +#define RCC_MCOSOURCE_HSI48 RCC_MCO1SOURCE_HSI48 +#define RCC_MCOSOURCE_HSE RCC_MCO1SOURCE_HSE +#define RCC_MCOSOURCE_PLLCLK_DIV1 RCC_MCO1SOURCE_PLLCLK +#define RCC_MCOSOURCE_PLLCLK_NODIV RCC_MCO1SOURCE_PLLCLK +#define RCC_MCOSOURCE_PLLCLK_DIV2 RCC_MCO1SOURCE_PLLCLK_DIV2 + +#if defined(STM32L4) || defined(STM32WB) || defined(STM32G0) || defined(STM32G4) || defined(STM32L5) || defined(STM32WL) +#define RCC_RTCCLKSOURCE_NO_CLK RCC_RTCCLKSOURCE_NONE +#else +#define RCC_RTCCLKSOURCE_NONE RCC_RTCCLKSOURCE_NO_CLK +#endif + +#define RCC_USBCLK_PLLSAI1 RCC_USBCLKSOURCE_PLLSAI1 +#define RCC_USBCLK_PLL RCC_USBCLKSOURCE_PLL +#define RCC_USBCLK_MSI RCC_USBCLKSOURCE_MSI +#define RCC_USBCLKSOURCE_PLLCLK RCC_USBCLKSOURCE_PLL +#define RCC_USBPLLCLK_DIV1 RCC_USBCLKSOURCE_PLL +#define RCC_USBPLLCLK_DIV1_5 RCC_USBCLKSOURCE_PLL_DIV1_5 +#define RCC_USBPLLCLK_DIV2 RCC_USBCLKSOURCE_PLL_DIV2 +#define RCC_USBPLLCLK_DIV3 RCC_USBCLKSOURCE_PLL_DIV3 + +#define HSION_BitNumber RCC_HSION_BIT_NUMBER +#define HSION_BITNUMBER RCC_HSION_BIT_NUMBER +#define HSEON_BitNumber RCC_HSEON_BIT_NUMBER +#define HSEON_BITNUMBER RCC_HSEON_BIT_NUMBER +#define MSION_BITNUMBER RCC_MSION_BIT_NUMBER +#define CSSON_BitNumber RCC_CSSON_BIT_NUMBER +#define CSSON_BITNUMBER RCC_CSSON_BIT_NUMBER +#define PLLON_BitNumber RCC_PLLON_BIT_NUMBER +#define PLLON_BITNUMBER RCC_PLLON_BIT_NUMBER +#define PLLI2SON_BitNumber RCC_PLLI2SON_BIT_NUMBER +#define I2SSRC_BitNumber RCC_I2SSRC_BIT_NUMBER +#define RTCEN_BitNumber RCC_RTCEN_BIT_NUMBER +#define RTCEN_BITNUMBER RCC_RTCEN_BIT_NUMBER +#define BDRST_BitNumber RCC_BDRST_BIT_NUMBER +#define BDRST_BITNUMBER RCC_BDRST_BIT_NUMBER +#define RTCRST_BITNUMBER RCC_RTCRST_BIT_NUMBER +#define LSION_BitNumber RCC_LSION_BIT_NUMBER +#define LSION_BITNUMBER RCC_LSION_BIT_NUMBER +#define LSEON_BitNumber RCC_LSEON_BIT_NUMBER +#define LSEON_BITNUMBER RCC_LSEON_BIT_NUMBER +#define LSEBYP_BITNUMBER RCC_LSEBYP_BIT_NUMBER +#define PLLSAION_BitNumber RCC_PLLSAION_BIT_NUMBER +#define TIMPRE_BitNumber RCC_TIMPRE_BIT_NUMBER +#define RMVF_BitNumber RCC_RMVF_BIT_NUMBER +#define RMVF_BITNUMBER RCC_RMVF_BIT_NUMBER +#define RCC_CR2_HSI14TRIM_BitNumber RCC_HSI14TRIM_BIT_NUMBER +#define CR_BYTE2_ADDRESS RCC_CR_BYTE2_ADDRESS +#define CIR_BYTE1_ADDRESS RCC_CIR_BYTE1_ADDRESS +#define CIR_BYTE2_ADDRESS RCC_CIR_BYTE2_ADDRESS +#define BDCR_BYTE0_ADDRESS RCC_BDCR_BYTE0_ADDRESS +#define DBP_TIMEOUT_VALUE RCC_DBP_TIMEOUT_VALUE +#define LSE_TIMEOUT_VALUE RCC_LSE_TIMEOUT_VALUE + +#define CR_HSION_BB RCC_CR_HSION_BB +#define CR_CSSON_BB RCC_CR_CSSON_BB +#define CR_PLLON_BB RCC_CR_PLLON_BB +#define CR_PLLI2SON_BB RCC_CR_PLLI2SON_BB +#define CR_MSION_BB RCC_CR_MSION_BB +#define CSR_LSION_BB RCC_CSR_LSION_BB +#define CSR_LSEON_BB RCC_CSR_LSEON_BB +#define CSR_LSEBYP_BB RCC_CSR_LSEBYP_BB +#define CSR_RTCEN_BB RCC_CSR_RTCEN_BB +#define CSR_RTCRST_BB RCC_CSR_RTCRST_BB +#define CFGR_I2SSRC_BB RCC_CFGR_I2SSRC_BB +#define BDCR_RTCEN_BB RCC_BDCR_RTCEN_BB +#define BDCR_BDRST_BB RCC_BDCR_BDRST_BB +#define CR_HSEON_BB RCC_CR_HSEON_BB +#define CSR_RMVF_BB RCC_CSR_RMVF_BB +#define CR_PLLSAION_BB RCC_CR_PLLSAION_BB +#define DCKCFGR_TIMPRE_BB RCC_DCKCFGR_TIMPRE_BB + +#define __HAL_RCC_CRS_ENABLE_FREQ_ERROR_COUNTER __HAL_RCC_CRS_FREQ_ERROR_COUNTER_ENABLE +#define __HAL_RCC_CRS_DISABLE_FREQ_ERROR_COUNTER __HAL_RCC_CRS_FREQ_ERROR_COUNTER_DISABLE +#define __HAL_RCC_CRS_ENABLE_AUTOMATIC_CALIB __HAL_RCC_CRS_AUTOMATIC_CALIB_ENABLE +#define __HAL_RCC_CRS_DISABLE_AUTOMATIC_CALIB __HAL_RCC_CRS_AUTOMATIC_CALIB_DISABLE +#define __HAL_RCC_CRS_CALCULATE_RELOADVALUE __HAL_RCC_CRS_RELOADVALUE_CALCULATE + +#define __HAL_RCC_GET_IT_SOURCE __HAL_RCC_GET_IT + +#define RCC_CRS_SYNCWARM RCC_CRS_SYNCWARN +#define RCC_CRS_TRIMOV RCC_CRS_TRIMOVF + +#define RCC_PERIPHCLK_CK48 RCC_PERIPHCLK_CLK48 +#define RCC_CK48CLKSOURCE_PLLQ RCC_CLK48CLKSOURCE_PLLQ +#define RCC_CK48CLKSOURCE_PLLSAIP RCC_CLK48CLKSOURCE_PLLSAIP +#define RCC_CK48CLKSOURCE_PLLI2SQ RCC_CLK48CLKSOURCE_PLLI2SQ +#define IS_RCC_CK48CLKSOURCE IS_RCC_CLK48CLKSOURCE +#define RCC_SDIOCLKSOURCE_CK48 RCC_SDIOCLKSOURCE_CLK48 + +#define __HAL_RCC_DFSDM_CLK_ENABLE __HAL_RCC_DFSDM1_CLK_ENABLE +#define __HAL_RCC_DFSDM_CLK_DISABLE __HAL_RCC_DFSDM1_CLK_DISABLE +#define __HAL_RCC_DFSDM_IS_CLK_ENABLED __HAL_RCC_DFSDM1_IS_CLK_ENABLED +#define __HAL_RCC_DFSDM_IS_CLK_DISABLED __HAL_RCC_DFSDM1_IS_CLK_DISABLED +#define __HAL_RCC_DFSDM_FORCE_RESET __HAL_RCC_DFSDM1_FORCE_RESET +#define __HAL_RCC_DFSDM_RELEASE_RESET __HAL_RCC_DFSDM1_RELEASE_RESET +#define __HAL_RCC_DFSDM_CLK_SLEEP_ENABLE __HAL_RCC_DFSDM1_CLK_SLEEP_ENABLE +#define __HAL_RCC_DFSDM_CLK_SLEEP_DISABLE __HAL_RCC_DFSDM1_CLK_SLEEP_DISABLE +#define __HAL_RCC_DFSDM_IS_CLK_SLEEP_ENABLED __HAL_RCC_DFSDM1_IS_CLK_SLEEP_ENABLED +#define __HAL_RCC_DFSDM_IS_CLK_SLEEP_DISABLED __HAL_RCC_DFSDM1_IS_CLK_SLEEP_DISABLED +#define DfsdmClockSelection Dfsdm1ClockSelection +#define RCC_PERIPHCLK_DFSDM RCC_PERIPHCLK_DFSDM1 +#define RCC_DFSDMCLKSOURCE_PCLK RCC_DFSDM1CLKSOURCE_PCLK2 +#define RCC_DFSDMCLKSOURCE_SYSCLK RCC_DFSDM1CLKSOURCE_SYSCLK +#define __HAL_RCC_DFSDM_CONFIG __HAL_RCC_DFSDM1_CONFIG +#define __HAL_RCC_GET_DFSDM_SOURCE __HAL_RCC_GET_DFSDM1_SOURCE +#define RCC_DFSDM1CLKSOURCE_PCLK RCC_DFSDM1CLKSOURCE_PCLK2 +#define RCC_SWPMI1CLKSOURCE_PCLK RCC_SWPMI1CLKSOURCE_PCLK1 +#define RCC_LPTIM1CLKSOURCE_PCLK RCC_LPTIM1CLKSOURCE_PCLK1 +#define RCC_LPTIM2CLKSOURCE_PCLK RCC_LPTIM2CLKSOURCE_PCLK1 + +#define RCC_DFSDM1AUDIOCLKSOURCE_I2SAPB1 RCC_DFSDM1AUDIOCLKSOURCE_I2S1 +#define RCC_DFSDM1AUDIOCLKSOURCE_I2SAPB2 RCC_DFSDM1AUDIOCLKSOURCE_I2S2 +#define RCC_DFSDM2AUDIOCLKSOURCE_I2SAPB1 RCC_DFSDM2AUDIOCLKSOURCE_I2S1 +#define RCC_DFSDM2AUDIOCLKSOURCE_I2SAPB2 RCC_DFSDM2AUDIOCLKSOURCE_I2S2 +#define RCC_DFSDM1CLKSOURCE_APB2 RCC_DFSDM1CLKSOURCE_PCLK2 +#define RCC_DFSDM2CLKSOURCE_APB2 RCC_DFSDM2CLKSOURCE_PCLK2 +#define RCC_FMPI2C1CLKSOURCE_APB RCC_FMPI2C1CLKSOURCE_PCLK1 + +/** + * @} + */ + +/** @defgroup HAL_RNG_Aliased_Macros HAL RNG Aliased Macros maintained for legacy purpose + * @{ + */ +#define HAL_RNG_ReadyCallback(__HANDLE__) HAL_RNG_ReadyDataCallback((__HANDLE__), uint32_t random32bit) + +/** + * @} + */ + +/** @defgroup HAL_RTC_Aliased_Macros HAL RTC Aliased Macros maintained for legacy purpose + * @{ + */ +#if defined (STM32G0) || defined (STM32L5) || defined (STM32L412xx) || defined (STM32L422xx) || defined (STM32L4P5xx) || defined (STM32L4Q5xx) || defined (STM32G4) || defined (STM32WL) +#else +#define __HAL_RTC_CLEAR_FLAG __HAL_RTC_EXTI_CLEAR_FLAG +#endif +#define __HAL_RTC_DISABLE_IT __HAL_RTC_EXTI_DISABLE_IT +#define __HAL_RTC_ENABLE_IT __HAL_RTC_EXTI_ENABLE_IT + +#if defined (STM32F1) +#define __HAL_RTC_EXTI_CLEAR_FLAG(RTC_EXTI_LINE_ALARM_EVENT) __HAL_RTC_ALARM_EXTI_CLEAR_FLAG() + +#define __HAL_RTC_EXTI_ENABLE_IT(RTC_EXTI_LINE_ALARM_EVENT) __HAL_RTC_ALARM_EXTI_ENABLE_IT() + +#define __HAL_RTC_EXTI_DISABLE_IT(RTC_EXTI_LINE_ALARM_EVENT) __HAL_RTC_ALARM_EXTI_DISABLE_IT() + +#define __HAL_RTC_EXTI_GET_FLAG(RTC_EXTI_LINE_ALARM_EVENT) __HAL_RTC_ALARM_EXTI_GET_FLAG() + +#define __HAL_RTC_EXTI_GENERATE_SWIT(RTC_EXTI_LINE_ALARM_EVENT) __HAL_RTC_ALARM_EXTI_GENERATE_SWIT() +#else +#define __HAL_RTC_EXTI_CLEAR_FLAG(__EXTI_LINE__) (((__EXTI_LINE__) == RTC_EXTI_LINE_ALARM_EVENT) ? __HAL_RTC_ALARM_EXTI_CLEAR_FLAG() : \ + (((__EXTI_LINE__) == RTC_EXTI_LINE_WAKEUPTIMER_EVENT) ? __HAL_RTC_WAKEUPTIMER_EXTI_CLEAR_FLAG() : \ + __HAL_RTC_TAMPER_TIMESTAMP_EXTI_CLEAR_FLAG())) +#define __HAL_RTC_EXTI_ENABLE_IT(__EXTI_LINE__) (((__EXTI_LINE__) == RTC_EXTI_LINE_ALARM_EVENT) ? __HAL_RTC_ALARM_EXTI_ENABLE_IT() : \ + (((__EXTI_LINE__) == RTC_EXTI_LINE_WAKEUPTIMER_EVENT) ? __HAL_RTC_WAKEUPTIMER_EXTI_ENABLE_IT() : \ + __HAL_RTC_TAMPER_TIMESTAMP_EXTI_ENABLE_IT())) +#define __HAL_RTC_EXTI_DISABLE_IT(__EXTI_LINE__) (((__EXTI_LINE__) == RTC_EXTI_LINE_ALARM_EVENT) ? __HAL_RTC_ALARM_EXTI_DISABLE_IT() : \ + (((__EXTI_LINE__) == RTC_EXTI_LINE_WAKEUPTIMER_EVENT) ? __HAL_RTC_WAKEUPTIMER_EXTI_DISABLE_IT() : \ + __HAL_RTC_TAMPER_TIMESTAMP_EXTI_DISABLE_IT())) +#define __HAL_RTC_EXTI_GET_FLAG(__EXTI_LINE__) (((__EXTI_LINE__) == RTC_EXTI_LINE_ALARM_EVENT) ? __HAL_RTC_ALARM_EXTI_GET_FLAG() : \ + (((__EXTI_LINE__) == RTC_EXTI_LINE_WAKEUPTIMER_EVENT) ? __HAL_RTC_WAKEUPTIMER_EXTI_GET_FLAG() : \ + __HAL_RTC_TAMPER_TIMESTAMP_EXTI_GET_FLAG())) +#define __HAL_RTC_EXTI_GENERATE_SWIT(__EXTI_LINE__) (((__EXTI_LINE__) == RTC_EXTI_LINE_ALARM_EVENT) ? __HAL_RTC_ALARM_EXTI_GENERATE_SWIT() : \ + (((__EXTI_LINE__) == RTC_EXTI_LINE_WAKEUPTIMER_EVENT) ? __HAL_RTC_WAKEUPTIMER_EXTI_GENERATE_SWIT() : \ + __HAL_RTC_TAMPER_TIMESTAMP_EXTI_GENERATE_SWIT())) +#endif /* STM32F1 */ + +#define IS_ALARM IS_RTC_ALARM +#define IS_ALARM_MASK IS_RTC_ALARM_MASK +#define IS_TAMPER IS_RTC_TAMPER +#define IS_TAMPER_ERASE_MODE IS_RTC_TAMPER_ERASE_MODE +#define IS_TAMPER_FILTER IS_RTC_TAMPER_FILTER +#define IS_TAMPER_INTERRUPT IS_RTC_TAMPER_INTERRUPT +#define IS_TAMPER_MASKFLAG_STATE IS_RTC_TAMPER_MASKFLAG_STATE +#define IS_TAMPER_PRECHARGE_DURATION IS_RTC_TAMPER_PRECHARGE_DURATION +#define IS_TAMPER_PULLUP_STATE IS_RTC_TAMPER_PULLUP_STATE +#define IS_TAMPER_SAMPLING_FREQ IS_RTC_TAMPER_SAMPLING_FREQ +#define IS_TAMPER_TIMESTAMPONTAMPER_DETECTION IS_RTC_TAMPER_TIMESTAMPONTAMPER_DETECTION +#define IS_TAMPER_TRIGGER IS_RTC_TAMPER_TRIGGER +#define IS_WAKEUP_CLOCK IS_RTC_WAKEUP_CLOCK +#define IS_WAKEUP_COUNTER IS_RTC_WAKEUP_COUNTER + +#define __RTC_WRITEPROTECTION_ENABLE __HAL_RTC_WRITEPROTECTION_ENABLE +#define __RTC_WRITEPROTECTION_DISABLE __HAL_RTC_WRITEPROTECTION_DISABLE + +/** + * @} + */ + +/** @defgroup HAL_SD_Aliased_Macros HAL SD Aliased Macros maintained for legacy purpose + * @{ + */ + +#define SD_OCR_CID_CSD_OVERWRIETE SD_OCR_CID_CSD_OVERWRITE +#define SD_CMD_SD_APP_STAUS SD_CMD_SD_APP_STATUS + +#if defined(STM32F4) || defined(STM32F2) +#define SD_SDMMC_DISABLED SD_SDIO_DISABLED +#define SD_SDMMC_FUNCTION_BUSY SD_SDIO_FUNCTION_BUSY +#define SD_SDMMC_FUNCTION_FAILED SD_SDIO_FUNCTION_FAILED +#define SD_SDMMC_UNKNOWN_FUNCTION SD_SDIO_UNKNOWN_FUNCTION +#define SD_CMD_SDMMC_SEN_OP_COND SD_CMD_SDIO_SEN_OP_COND +#define SD_CMD_SDMMC_RW_DIRECT SD_CMD_SDIO_RW_DIRECT +#define SD_CMD_SDMMC_RW_EXTENDED SD_CMD_SDIO_RW_EXTENDED +#define __HAL_SD_SDMMC_ENABLE __HAL_SD_SDIO_ENABLE +#define __HAL_SD_SDMMC_DISABLE __HAL_SD_SDIO_DISABLE +#define __HAL_SD_SDMMC_DMA_ENABLE __HAL_SD_SDIO_DMA_ENABLE +#define __HAL_SD_SDMMC_DMA_DISABLE __HAL_SD_SDIO_DMA_DISABL +#define __HAL_SD_SDMMC_ENABLE_IT __HAL_SD_SDIO_ENABLE_IT +#define __HAL_SD_SDMMC_DISABLE_IT __HAL_SD_SDIO_DISABLE_IT +#define __HAL_SD_SDMMC_GET_FLAG __HAL_SD_SDIO_GET_FLAG +#define __HAL_SD_SDMMC_CLEAR_FLAG __HAL_SD_SDIO_CLEAR_FLAG +#define __HAL_SD_SDMMC_GET_IT __HAL_SD_SDIO_GET_IT +#define __HAL_SD_SDMMC_CLEAR_IT __HAL_SD_SDIO_CLEAR_IT +#define SDMMC_STATIC_FLAGS SDIO_STATIC_FLAGS +#define SDMMC_CMD0TIMEOUT SDIO_CMD0TIMEOUT +#define SD_SDMMC_SEND_IF_COND SD_SDIO_SEND_IF_COND +/* alias CMSIS */ +#define SDMMC1_IRQn SDIO_IRQn +#define SDMMC1_IRQHandler SDIO_IRQHandler +#endif + +#if defined(STM32F7) || defined(STM32L4) +#define SD_SDIO_DISABLED SD_SDMMC_DISABLED +#define SD_SDIO_FUNCTION_BUSY SD_SDMMC_FUNCTION_BUSY +#define SD_SDIO_FUNCTION_FAILED SD_SDMMC_FUNCTION_FAILED +#define SD_SDIO_UNKNOWN_FUNCTION SD_SDMMC_UNKNOWN_FUNCTION +#define SD_CMD_SDIO_SEN_OP_COND SD_CMD_SDMMC_SEN_OP_COND +#define SD_CMD_SDIO_RW_DIRECT SD_CMD_SDMMC_RW_DIRECT +#define SD_CMD_SDIO_RW_EXTENDED SD_CMD_SDMMC_RW_EXTENDED +#define __HAL_SD_SDIO_ENABLE __HAL_SD_SDMMC_ENABLE +#define __HAL_SD_SDIO_DISABLE __HAL_SD_SDMMC_DISABLE +#define __HAL_SD_SDIO_DMA_ENABLE __HAL_SD_SDMMC_DMA_ENABLE +#define __HAL_SD_SDIO_DMA_DISABL __HAL_SD_SDMMC_DMA_DISABLE +#define __HAL_SD_SDIO_ENABLE_IT __HAL_SD_SDMMC_ENABLE_IT +#define __HAL_SD_SDIO_DISABLE_IT __HAL_SD_SDMMC_DISABLE_IT +#define __HAL_SD_SDIO_GET_FLAG __HAL_SD_SDMMC_GET_FLAG +#define __HAL_SD_SDIO_CLEAR_FLAG __HAL_SD_SDMMC_CLEAR_FLAG +#define __HAL_SD_SDIO_GET_IT __HAL_SD_SDMMC_GET_IT +#define __HAL_SD_SDIO_CLEAR_IT __HAL_SD_SDMMC_CLEAR_IT +#define SDIO_STATIC_FLAGS SDMMC_STATIC_FLAGS +#define SDIO_CMD0TIMEOUT SDMMC_CMD0TIMEOUT +#define SD_SDIO_SEND_IF_COND SD_SDMMC_SEND_IF_COND +/* alias CMSIS for compatibilities */ +#define SDIO_IRQn SDMMC1_IRQn +#define SDIO_IRQHandler SDMMC1_IRQHandler +#endif + +#if defined(STM32F7) || defined(STM32F4) || defined(STM32F2) || defined(STM32L4) || defined(STM32H7) +#define HAL_SD_CardCIDTypedef HAL_SD_CardCIDTypeDef +#define HAL_SD_CardCSDTypedef HAL_SD_CardCSDTypeDef +#define HAL_SD_CardStatusTypedef HAL_SD_CardStatusTypeDef +#define HAL_SD_CardStateTypedef HAL_SD_CardStateTypeDef +#endif + +#if defined(STM32H7) || defined(STM32L5) +#define HAL_MMCEx_Read_DMADoubleBuffer0CpltCallback HAL_MMCEx_Read_DMADoubleBuf0CpltCallback +#define HAL_MMCEx_Read_DMADoubleBuffer1CpltCallback HAL_MMCEx_Read_DMADoubleBuf1CpltCallback +#define HAL_MMCEx_Write_DMADoubleBuffer0CpltCallback HAL_MMCEx_Write_DMADoubleBuf0CpltCallback +#define HAL_MMCEx_Write_DMADoubleBuffer1CpltCallback HAL_MMCEx_Write_DMADoubleBuf1CpltCallback +#define HAL_SDEx_Read_DMADoubleBuffer0CpltCallback HAL_SDEx_Read_DMADoubleBuf0CpltCallback +#define HAL_SDEx_Read_DMADoubleBuffer1CpltCallback HAL_SDEx_Read_DMADoubleBuf1CpltCallback +#define HAL_SDEx_Write_DMADoubleBuffer0CpltCallback HAL_SDEx_Write_DMADoubleBuf0CpltCallback +#define HAL_SDEx_Write_DMADoubleBuffer1CpltCallback HAL_SDEx_Write_DMADoubleBuf1CpltCallback +#define HAL_SD_DriveTransciver_1_8V_Callback HAL_SD_DriveTransceiver_1_8V_Callback +#endif +/** + * @} + */ + +/** @defgroup HAL_SMARTCARD_Aliased_Macros HAL SMARTCARD Aliased Macros maintained for legacy purpose + * @{ + */ + +#define __SMARTCARD_ENABLE_IT __HAL_SMARTCARD_ENABLE_IT +#define __SMARTCARD_DISABLE_IT __HAL_SMARTCARD_DISABLE_IT +#define __SMARTCARD_ENABLE __HAL_SMARTCARD_ENABLE +#define __SMARTCARD_DISABLE __HAL_SMARTCARD_DISABLE +#define __SMARTCARD_DMA_REQUEST_ENABLE __HAL_SMARTCARD_DMA_REQUEST_ENABLE +#define __SMARTCARD_DMA_REQUEST_DISABLE __HAL_SMARTCARD_DMA_REQUEST_DISABLE + +#define __HAL_SMARTCARD_GETCLOCKSOURCE SMARTCARD_GETCLOCKSOURCE +#define __SMARTCARD_GETCLOCKSOURCE SMARTCARD_GETCLOCKSOURCE + +#define IS_SMARTCARD_ONEBIT_SAMPLING IS_SMARTCARD_ONE_BIT_SAMPLE + +/** + * @} + */ + +/** @defgroup HAL_SMBUS_Aliased_Macros HAL SMBUS Aliased Macros maintained for legacy purpose + * @{ + */ +#define __HAL_SMBUS_RESET_CR1 SMBUS_RESET_CR1 +#define __HAL_SMBUS_RESET_CR2 SMBUS_RESET_CR2 +#define __HAL_SMBUS_GENERATE_START SMBUS_GENERATE_START +#define __HAL_SMBUS_GET_ADDR_MATCH SMBUS_GET_ADDR_MATCH +#define __HAL_SMBUS_GET_DIR SMBUS_GET_DIR +#define __HAL_SMBUS_GET_STOP_MODE SMBUS_GET_STOP_MODE +#define __HAL_SMBUS_GET_PEC_MODE SMBUS_GET_PEC_MODE +#define __HAL_SMBUS_GET_ALERT_ENABLED SMBUS_GET_ALERT_ENABLED +/** + * @} + */ + +/** @defgroup HAL_SPI_Aliased_Macros HAL SPI Aliased Macros maintained for legacy purpose + * @{ + */ + +#define __HAL_SPI_1LINE_TX SPI_1LINE_TX +#define __HAL_SPI_1LINE_RX SPI_1LINE_RX +#define __HAL_SPI_RESET_CRC SPI_RESET_CRC + +/** + * @} + */ + +/** @defgroup HAL_UART_Aliased_Macros HAL UART Aliased Macros maintained for legacy purpose + * @{ + */ + +#define __HAL_UART_GETCLOCKSOURCE UART_GETCLOCKSOURCE +#define __HAL_UART_MASK_COMPUTATION UART_MASK_COMPUTATION +#define __UART_GETCLOCKSOURCE UART_GETCLOCKSOURCE +#define __UART_MASK_COMPUTATION UART_MASK_COMPUTATION + +#define IS_UART_WAKEUPMETHODE IS_UART_WAKEUPMETHOD + +#define IS_UART_ONEBIT_SAMPLE IS_UART_ONE_BIT_SAMPLE +#define IS_UART_ONEBIT_SAMPLING IS_UART_ONE_BIT_SAMPLE + +/** + * @} + */ + + +/** @defgroup HAL_USART_Aliased_Macros HAL USART Aliased Macros maintained for legacy purpose + * @{ + */ + +#define __USART_ENABLE_IT __HAL_USART_ENABLE_IT +#define __USART_DISABLE_IT __HAL_USART_DISABLE_IT +#define __USART_ENABLE __HAL_USART_ENABLE +#define __USART_DISABLE __HAL_USART_DISABLE + +#define __HAL_USART_GETCLOCKSOURCE USART_GETCLOCKSOURCE +#define __USART_GETCLOCKSOURCE USART_GETCLOCKSOURCE + +/** + * @} + */ + +/** @defgroup HAL_USB_Aliased_Macros HAL USB Aliased Macros maintained for legacy purpose + * @{ + */ +#define USB_EXTI_LINE_WAKEUP USB_WAKEUP_EXTI_LINE + +#define USB_FS_EXTI_TRIGGER_RISING_EDGE USB_OTG_FS_WAKEUP_EXTI_RISING_EDGE +#define USB_FS_EXTI_TRIGGER_FALLING_EDGE USB_OTG_FS_WAKEUP_EXTI_FALLING_EDGE +#define USB_FS_EXTI_TRIGGER_BOTH_EDGE USB_OTG_FS_WAKEUP_EXTI_RISING_FALLING_EDGE +#define USB_FS_EXTI_LINE_WAKEUP USB_OTG_FS_WAKEUP_EXTI_LINE + +#define USB_HS_EXTI_TRIGGER_RISING_EDGE USB_OTG_HS_WAKEUP_EXTI_RISING_EDGE +#define USB_HS_EXTI_TRIGGER_FALLING_EDGE USB_OTG_HS_WAKEUP_EXTI_FALLING_EDGE +#define USB_HS_EXTI_TRIGGER_BOTH_EDGE USB_OTG_HS_WAKEUP_EXTI_RISING_FALLING_EDGE +#define USB_HS_EXTI_LINE_WAKEUP USB_OTG_HS_WAKEUP_EXTI_LINE + +#define __HAL_USB_EXTI_ENABLE_IT __HAL_USB_WAKEUP_EXTI_ENABLE_IT +#define __HAL_USB_EXTI_DISABLE_IT __HAL_USB_WAKEUP_EXTI_DISABLE_IT +#define __HAL_USB_EXTI_GET_FLAG __HAL_USB_WAKEUP_EXTI_GET_FLAG +#define __HAL_USB_EXTI_CLEAR_FLAG __HAL_USB_WAKEUP_EXTI_CLEAR_FLAG +#define __HAL_USB_EXTI_SET_RISING_EDGE_TRIGGER __HAL_USB_WAKEUP_EXTI_ENABLE_RISING_EDGE +#define __HAL_USB_EXTI_SET_FALLING_EDGE_TRIGGER __HAL_USB_WAKEUP_EXTI_ENABLE_FALLING_EDGE +#define __HAL_USB_EXTI_SET_FALLINGRISING_TRIGGER __HAL_USB_WAKEUP_EXTI_ENABLE_RISING_FALLING_EDGE + +#define __HAL_USB_FS_EXTI_ENABLE_IT __HAL_USB_OTG_FS_WAKEUP_EXTI_ENABLE_IT +#define __HAL_USB_FS_EXTI_DISABLE_IT __HAL_USB_OTG_FS_WAKEUP_EXTI_DISABLE_IT +#define __HAL_USB_FS_EXTI_GET_FLAG __HAL_USB_OTG_FS_WAKEUP_EXTI_GET_FLAG +#define __HAL_USB_FS_EXTI_CLEAR_FLAG __HAL_USB_OTG_FS_WAKEUP_EXTI_CLEAR_FLAG +#define __HAL_USB_FS_EXTI_SET_RISING_EGDE_TRIGGER __HAL_USB_OTG_FS_WAKEUP_EXTI_ENABLE_RISING_EDGE +#define __HAL_USB_FS_EXTI_SET_FALLING_EGDE_TRIGGER __HAL_USB_OTG_FS_WAKEUP_EXTI_ENABLE_FALLING_EDGE +#define __HAL_USB_FS_EXTI_SET_FALLINGRISING_TRIGGER __HAL_USB_OTG_FS_WAKEUP_EXTI_ENABLE_RISING_FALLING_EDGE +#define __HAL_USB_FS_EXTI_GENERATE_SWIT __HAL_USB_OTG_FS_WAKEUP_EXTI_GENERATE_SWIT + +#define __HAL_USB_HS_EXTI_ENABLE_IT __HAL_USB_OTG_HS_WAKEUP_EXTI_ENABLE_IT +#define __HAL_USB_HS_EXTI_DISABLE_IT __HAL_USB_OTG_HS_WAKEUP_EXTI_DISABLE_IT +#define __HAL_USB_HS_EXTI_GET_FLAG __HAL_USB_OTG_HS_WAKEUP_EXTI_GET_FLAG +#define __HAL_USB_HS_EXTI_CLEAR_FLAG __HAL_USB_OTG_HS_WAKEUP_EXTI_CLEAR_FLAG +#define __HAL_USB_HS_EXTI_SET_RISING_EGDE_TRIGGER __HAL_USB_OTG_HS_WAKEUP_EXTI_ENABLE_RISING_EDGE +#define __HAL_USB_HS_EXTI_SET_FALLING_EGDE_TRIGGER __HAL_USB_OTG_HS_WAKEUP_EXTI_ENABLE_FALLING_EDGE +#define __HAL_USB_HS_EXTI_SET_FALLINGRISING_TRIGGER __HAL_USB_OTG_HS_WAKEUP_EXTI_ENABLE_RISING_FALLING_EDGE +#define __HAL_USB_HS_EXTI_GENERATE_SWIT __HAL_USB_OTG_HS_WAKEUP_EXTI_GENERATE_SWIT + +#define HAL_PCD_ActiveRemoteWakeup HAL_PCD_ActivateRemoteWakeup +#define HAL_PCD_DeActiveRemoteWakeup HAL_PCD_DeActivateRemoteWakeup + +#define HAL_PCD_SetTxFiFo HAL_PCDEx_SetTxFiFo +#define HAL_PCD_SetRxFiFo HAL_PCDEx_SetRxFiFo +/** + * @} + */ + +/** @defgroup HAL_TIM_Aliased_Macros HAL TIM Aliased Macros maintained for legacy purpose + * @{ + */ +#define __HAL_TIM_SetICPrescalerValue TIM_SET_ICPRESCALERVALUE +#define __HAL_TIM_ResetICPrescalerValue TIM_RESET_ICPRESCALERVALUE + +#define TIM_GET_ITSTATUS __HAL_TIM_GET_IT_SOURCE +#define TIM_GET_CLEAR_IT __HAL_TIM_CLEAR_IT + +#define __HAL_TIM_GET_ITSTATUS __HAL_TIM_GET_IT_SOURCE + +#define __HAL_TIM_DIRECTION_STATUS __HAL_TIM_IS_TIM_COUNTING_DOWN +#define __HAL_TIM_PRESCALER __HAL_TIM_SET_PRESCALER +#define __HAL_TIM_SetCounter __HAL_TIM_SET_COUNTER +#define __HAL_TIM_GetCounter __HAL_TIM_GET_COUNTER +#define __HAL_TIM_SetAutoreload __HAL_TIM_SET_AUTORELOAD +#define __HAL_TIM_GetAutoreload __HAL_TIM_GET_AUTORELOAD +#define __HAL_TIM_SetClockDivision __HAL_TIM_SET_CLOCKDIVISION +#define __HAL_TIM_GetClockDivision __HAL_TIM_GET_CLOCKDIVISION +#define __HAL_TIM_SetICPrescaler __HAL_TIM_SET_ICPRESCALER +#define __HAL_TIM_GetICPrescaler __HAL_TIM_GET_ICPRESCALER +#define __HAL_TIM_SetCompare __HAL_TIM_SET_COMPARE +#define __HAL_TIM_GetCompare __HAL_TIM_GET_COMPARE + +#define TIM_BREAKINPUTSOURCE_DFSDM TIM_BREAKINPUTSOURCE_DFSDM1 +/** + * @} + */ + +/** @defgroup HAL_ETH_Aliased_Macros HAL ETH Aliased Macros maintained for legacy purpose + * @{ + */ + +#define __HAL_ETH_EXTI_ENABLE_IT __HAL_ETH_WAKEUP_EXTI_ENABLE_IT +#define __HAL_ETH_EXTI_DISABLE_IT __HAL_ETH_WAKEUP_EXTI_DISABLE_IT +#define __HAL_ETH_EXTI_GET_FLAG __HAL_ETH_WAKEUP_EXTI_GET_FLAG +#define __HAL_ETH_EXTI_CLEAR_FLAG __HAL_ETH_WAKEUP_EXTI_CLEAR_FLAG +#define __HAL_ETH_EXTI_SET_RISING_EGDE_TRIGGER __HAL_ETH_WAKEUP_EXTI_ENABLE_RISING_EDGE_TRIGGER +#define __HAL_ETH_EXTI_SET_FALLING_EGDE_TRIGGER __HAL_ETH_WAKEUP_EXTI_ENABLE_FALLING_EDGE_TRIGGER +#define __HAL_ETH_EXTI_SET_FALLINGRISING_TRIGGER __HAL_ETH_WAKEUP_EXTI_ENABLE_FALLINGRISING_TRIGGER + +#define ETH_PROMISCIOUSMODE_ENABLE ETH_PROMISCUOUS_MODE_ENABLE +#define ETH_PROMISCIOUSMODE_DISABLE ETH_PROMISCUOUS_MODE_DISABLE +#define IS_ETH_PROMISCIOUS_MODE IS_ETH_PROMISCUOUS_MODE +/** + * @} + */ + +/** @defgroup HAL_LTDC_Aliased_Macros HAL LTDC Aliased Macros maintained for legacy purpose + * @{ + */ +#define __HAL_LTDC_LAYER LTDC_LAYER +#define __HAL_LTDC_RELOAD_CONFIG __HAL_LTDC_RELOAD_IMMEDIATE_CONFIG +/** + * @} + */ + +/** @defgroup HAL_SAI_Aliased_Macros HAL SAI Aliased Macros maintained for legacy purpose + * @{ + */ +#define SAI_OUTPUTDRIVE_DISABLED SAI_OUTPUTDRIVE_DISABLE +#define SAI_OUTPUTDRIVE_ENABLED SAI_OUTPUTDRIVE_ENABLE +#define SAI_MASTERDIVIDER_ENABLED SAI_MASTERDIVIDER_ENABLE +#define SAI_MASTERDIVIDER_DISABLED SAI_MASTERDIVIDER_DISABLE +#define SAI_STREOMODE SAI_STEREOMODE +#define SAI_FIFOStatus_Empty SAI_FIFOSTATUS_EMPTY +#define SAI_FIFOStatus_Less1QuarterFull SAI_FIFOSTATUS_LESS1QUARTERFULL +#define SAI_FIFOStatus_1QuarterFull SAI_FIFOSTATUS_1QUARTERFULL +#define SAI_FIFOStatus_HalfFull SAI_FIFOSTATUS_HALFFULL +#define SAI_FIFOStatus_3QuartersFull SAI_FIFOSTATUS_3QUARTERFULL +#define SAI_FIFOStatus_Full SAI_FIFOSTATUS_FULL +#define IS_SAI_BLOCK_MONO_STREO_MODE IS_SAI_BLOCK_MONO_STEREO_MODE +#define SAI_SYNCHRONOUS_EXT SAI_SYNCHRONOUS_EXT_SAI1 +#define SAI_SYNCEXT_IN_ENABLE SAI_SYNCEXT_OUTBLOCKA_ENABLE +/** + * @} + */ + +/** @defgroup HAL_SPDIFRX_Aliased_Macros HAL SPDIFRX Aliased Macros maintained for legacy purpose + * @{ + */ +#if defined(STM32H7) +#define HAL_SPDIFRX_ReceiveControlFlow HAL_SPDIFRX_ReceiveCtrlFlow +#define HAL_SPDIFRX_ReceiveControlFlow_IT HAL_SPDIFRX_ReceiveCtrlFlow_IT +#define HAL_SPDIFRX_ReceiveControlFlow_DMA HAL_SPDIFRX_ReceiveCtrlFlow_DMA +#endif +/** + * @} + */ + +/** @defgroup HAL_HRTIM_Aliased_Functions HAL HRTIM Aliased Functions maintained for legacy purpose + * @{ + */ +#if defined (STM32H7) || defined (STM32G4) || defined (STM32F3) +#define HAL_HRTIM_WaveformCounterStart_IT HAL_HRTIM_WaveformCountStart_IT +#define HAL_HRTIM_WaveformCounterStart_DMA HAL_HRTIM_WaveformCountStart_DMA +#define HAL_HRTIM_WaveformCounterStart HAL_HRTIM_WaveformCountStart +#define HAL_HRTIM_WaveformCounterStop_IT HAL_HRTIM_WaveformCountStop_IT +#define HAL_HRTIM_WaveformCounterStop_DMA HAL_HRTIM_WaveformCountStop_DMA +#define HAL_HRTIM_WaveformCounterStop HAL_HRTIM_WaveformCountStop +#endif +/** + * @} + */ + +/** @defgroup HAL_QSPI_Aliased_Macros HAL QSPI Aliased Macros maintained for legacy purpose + * @{ + */ +#if defined (STM32L4) || defined (STM32F4) || defined (STM32F7) || defined(STM32H7) +#define HAL_QPSI_TIMEOUT_DEFAULT_VALUE HAL_QSPI_TIMEOUT_DEFAULT_VALUE +#endif /* STM32L4 || STM32F4 || STM32F7 */ +/** + * @} + */ + +/** @defgroup HAL_PPP_Aliased_Macros HAL PPP Aliased Macros maintained for legacy purpose + * @{ + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /* STM32_HAL_LEGACY */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ + diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h similarity index 96% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h index 6228edb..35092c0 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h @@ -1,358 +1,358 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal.h - * @author MCD Application Team - * @brief This file contains all the functions prototypes for the HAL - * module driver. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2017 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_HAL_H -#define __STM32F1xx_HAL_H - -#ifdef __cplusplus -extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_conf.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup HAL - * @{ - */ - -/* Exported constants --------------------------------------------------------*/ - -/** @defgroup HAL_Exported_Constants HAL Exported Constants - * @{ - */ - -/** @defgroup HAL_TICK_FREQ Tick Frequency - * @{ - */ -typedef enum -{ - HAL_TICK_FREQ_10HZ = 100U, - HAL_TICK_FREQ_100HZ = 10U, - HAL_TICK_FREQ_1KHZ = 1U, - HAL_TICK_FREQ_DEFAULT = HAL_TICK_FREQ_1KHZ -} HAL_TickFreqTypeDef; -/** - * @} - */ -/* Exported types ------------------------------------------------------------*/ -extern __IO uint32_t uwTick; -extern uint32_t uwTickPrio; -extern HAL_TickFreqTypeDef uwTickFreq; - -/** - * @} - */ -/* Exported macro ------------------------------------------------------------*/ -/** @defgroup HAL_Exported_Macros HAL Exported Macros - * @{ - */ - -/** @defgroup DBGMCU_Freeze_Unfreeze Freeze Unfreeze Peripherals in Debug mode - * @brief Freeze/Unfreeze Peripherals in Debug mode - * Note: On devices STM32F10xx8 and STM32F10xxB, - * STM32F101xC/D/E and STM32F103xC/D/E, - * STM32F101xF/G and STM32F103xF/G - * STM32F10xx4 and STM32F10xx6 - * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in - * debug mode (not accessible by the user software in normal mode). - * Refer to errata sheet of these devices for more details. - * @{ - */ - -/* Peripherals on APB1 */ -/** - * @brief TIM2 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM2() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM2_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM2() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM2_STOP) - -/** - * @brief TIM3 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM3() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM3_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM3() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM3_STOP) - -#if defined (DBGMCU_CR_DBG_TIM4_STOP) -/** - * @brief TIM4 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM4() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM4_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM4() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM4_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM5_STOP) -/** - * @brief TIM5 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM5() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM5_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM5() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM5_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM6_STOP) -/** - * @brief TIM6 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM6() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM6_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM6() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM6_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM7_STOP) -/** - * @brief TIM7 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM7() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM7_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM7() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM7_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM12_STOP) -/** - * @brief TIM12 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM12() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM12_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM12() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM12_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM13_STOP) -/** - * @brief TIM13 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM13() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM13_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM13() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM13_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM14_STOP) -/** - * @brief TIM14 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM14() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM14_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM14() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM14_STOP) -#endif - -/** - * @brief WWDG Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_WWDG() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_WWDG_STOP) -#define __HAL_DBGMCU_UNFREEZE_WWDG() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_WWDG_STOP) - -/** - * @brief IWDG Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_IWDG() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_IWDG_STOP) -#define __HAL_DBGMCU_UNFREEZE_IWDG() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_IWDG_STOP) - -/** - * @brief I2C1 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_I2C1_TIMEOUT() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C1_SMBUS_TIMEOUT) -#define __HAL_DBGMCU_UNFREEZE_I2C1_TIMEOUT() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C1_SMBUS_TIMEOUT) - -#if defined (DBGMCU_CR_DBG_I2C2_SMBUS_TIMEOUT) -/** - * @brief I2C2 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_I2C2_TIMEOUT() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C2_SMBUS_TIMEOUT) -#define __HAL_DBGMCU_UNFREEZE_I2C2_TIMEOUT() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C2_SMBUS_TIMEOUT) -#endif - -#if defined (DBGMCU_CR_DBG_CAN1_STOP) -/** - * @brief CAN1 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_CAN1() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN1_STOP) -#define __HAL_DBGMCU_UNFREEZE_CAN1() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN1_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_CAN2_STOP) -/** - * @brief CAN2 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_CAN2() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN2_STOP) -#define __HAL_DBGMCU_UNFREEZE_CAN2() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN2_STOP) -#endif - -/* Peripherals on APB2 */ -#if defined (DBGMCU_CR_DBG_TIM1_STOP) -/** - * @brief TIM1 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM1() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM1_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM1() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM1_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM8_STOP) -/** - * @brief TIM8 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM8() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM8_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM8() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM8_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM9_STOP) -/** - * @brief TIM9 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM9() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM9_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM9() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM9_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM10_STOP) -/** - * @brief TIM10 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM10() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM10_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM10() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM10_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM11_STOP) -/** - * @brief TIM11 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM11() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM11_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM11() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM11_STOP) -#endif - - -#if defined (DBGMCU_CR_DBG_TIM15_STOP) -/** - * @brief TIM15 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM15() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM15_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM15() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM15_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM16_STOP) -/** - * @brief TIM16 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM16() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM16_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM16() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM16_STOP) -#endif - -#if defined (DBGMCU_CR_DBG_TIM17_STOP) -/** - * @brief TIM17 Peripherals Debug mode - */ -#define __HAL_DBGMCU_FREEZE_TIM17() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM17_STOP) -#define __HAL_DBGMCU_UNFREEZE_TIM17() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM17_STOP) -#endif - -/** - * @} - */ - -/** @defgroup HAL_Private_Macros HAL Private Macros - * @{ - */ -#define IS_TICKFREQ(FREQ) (((FREQ) == HAL_TICK_FREQ_10HZ) || \ - ((FREQ) == HAL_TICK_FREQ_100HZ) || \ - ((FREQ) == HAL_TICK_FREQ_1KHZ)) -/** - * @} - */ - -/* Exported functions --------------------------------------------------------*/ -/** @addtogroup HAL_Exported_Functions - * @{ - */ -/** @addtogroup HAL_Exported_Functions_Group1 - * @{ - */ -/* Initialization and de-initialization functions ******************************/ -HAL_StatusTypeDef HAL_Init(void); -HAL_StatusTypeDef HAL_DeInit(void); -void HAL_MspInit(void); -void HAL_MspDeInit(void); -HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority); -/** - * @} - */ - -/** @addtogroup HAL_Exported_Functions_Group2 - * @{ - */ -/* Peripheral Control functions ************************************************/ -void HAL_IncTick(void); -void HAL_Delay(uint32_t Delay); -uint32_t HAL_GetTick(void); -uint32_t HAL_GetTickPrio(void); -HAL_StatusTypeDef HAL_SetTickFreq(HAL_TickFreqTypeDef Freq); -HAL_TickFreqTypeDef HAL_GetTickFreq(void); -void HAL_SuspendTick(void); -void HAL_ResumeTick(void); -uint32_t HAL_GetHalVersion(void); -uint32_t HAL_GetREVID(void); -uint32_t HAL_GetDEVID(void); -uint32_t HAL_GetUIDw0(void); -uint32_t HAL_GetUIDw1(void); -uint32_t HAL_GetUIDw2(void); -void HAL_DBGMCU_EnableDBGSleepMode(void); -void HAL_DBGMCU_DisableDBGSleepMode(void); -void HAL_DBGMCU_EnableDBGStopMode(void); -void HAL_DBGMCU_DisableDBGStopMode(void); -void HAL_DBGMCU_EnableDBGStandbyMode(void); -void HAL_DBGMCU_DisableDBGStandbyMode(void); -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ -/* Private types -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/** @defgroup HAL_Private_Variables HAL Private Variables - * @{ - */ -/** - * @} - */ -/* Private constants ---------------------------------------------------------*/ -/** @defgroup HAL_Private_Constants HAL Private Constants - * @{ - */ -/** - * @} - */ -/* Private macros ------------------------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /* __STM32F1xx_HAL_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal.h + * @author MCD Application Team + * @brief This file contains all the functions prototypes for the HAL + * module driver. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2017 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_HAL_H +#define __STM32F1xx_HAL_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_conf.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup HAL + * @{ + */ + +/* Exported constants --------------------------------------------------------*/ + +/** @defgroup HAL_Exported_Constants HAL Exported Constants + * @{ + */ + +/** @defgroup HAL_TICK_FREQ Tick Frequency + * @{ + */ +typedef enum +{ + HAL_TICK_FREQ_10HZ = 100U, + HAL_TICK_FREQ_100HZ = 10U, + HAL_TICK_FREQ_1KHZ = 1U, + HAL_TICK_FREQ_DEFAULT = HAL_TICK_FREQ_1KHZ +} HAL_TickFreqTypeDef; +/** + * @} + */ +/* Exported types ------------------------------------------------------------*/ +extern __IO uint32_t uwTick; +extern uint32_t uwTickPrio; +extern HAL_TickFreqTypeDef uwTickFreq; + +/** + * @} + */ +/* Exported macro ------------------------------------------------------------*/ +/** @defgroup HAL_Exported_Macros HAL Exported Macros + * @{ + */ + +/** @defgroup DBGMCU_Freeze_Unfreeze Freeze Unfreeze Peripherals in Debug mode + * @brief Freeze/Unfreeze Peripherals in Debug mode + * Note: On devices STM32F10xx8 and STM32F10xxB, + * STM32F101xC/D/E and STM32F103xC/D/E, + * STM32F101xF/G and STM32F103xF/G + * STM32F10xx4 and STM32F10xx6 + * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in + * debug mode (not accessible by the user software in normal mode). + * Refer to errata sheet of these devices for more details. + * @{ + */ + +/* Peripherals on APB1 */ +/** + * @brief TIM2 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM2() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM2_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM2() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM2_STOP) + +/** + * @brief TIM3 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM3() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM3_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM3() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM3_STOP) + +#if defined (DBGMCU_CR_DBG_TIM4_STOP) +/** + * @brief TIM4 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM4() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM4_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM4() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM4_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM5_STOP) +/** + * @brief TIM5 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM5() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM5_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM5() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM5_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM6_STOP) +/** + * @brief TIM6 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM6() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM6_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM6() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM6_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM7_STOP) +/** + * @brief TIM7 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM7() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM7_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM7() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM7_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM12_STOP) +/** + * @brief TIM12 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM12() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM12_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM12() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM12_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM13_STOP) +/** + * @brief TIM13 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM13() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM13_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM13() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM13_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM14_STOP) +/** + * @brief TIM14 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM14() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM14_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM14() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM14_STOP) +#endif + +/** + * @brief WWDG Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_WWDG() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_WWDG_STOP) +#define __HAL_DBGMCU_UNFREEZE_WWDG() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_WWDG_STOP) + +/** + * @brief IWDG Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_IWDG() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_IWDG_STOP) +#define __HAL_DBGMCU_UNFREEZE_IWDG() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_IWDG_STOP) + +/** + * @brief I2C1 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_I2C1_TIMEOUT() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C1_SMBUS_TIMEOUT) +#define __HAL_DBGMCU_UNFREEZE_I2C1_TIMEOUT() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C1_SMBUS_TIMEOUT) + +#if defined (DBGMCU_CR_DBG_I2C2_SMBUS_TIMEOUT) +/** + * @brief I2C2 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_I2C2_TIMEOUT() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C2_SMBUS_TIMEOUT) +#define __HAL_DBGMCU_UNFREEZE_I2C2_TIMEOUT() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_I2C2_SMBUS_TIMEOUT) +#endif + +#if defined (DBGMCU_CR_DBG_CAN1_STOP) +/** + * @brief CAN1 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_CAN1() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN1_STOP) +#define __HAL_DBGMCU_UNFREEZE_CAN1() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN1_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_CAN2_STOP) +/** + * @brief CAN2 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_CAN2() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN2_STOP) +#define __HAL_DBGMCU_UNFREEZE_CAN2() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_CAN2_STOP) +#endif + +/* Peripherals on APB2 */ +#if defined (DBGMCU_CR_DBG_TIM1_STOP) +/** + * @brief TIM1 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM1() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM1_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM1() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM1_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM8_STOP) +/** + * @brief TIM8 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM8() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM8_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM8() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM8_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM9_STOP) +/** + * @brief TIM9 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM9() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM9_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM9() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM9_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM10_STOP) +/** + * @brief TIM10 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM10() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM10_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM10() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM10_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM11_STOP) +/** + * @brief TIM11 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM11() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM11_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM11() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM11_STOP) +#endif + + +#if defined (DBGMCU_CR_DBG_TIM15_STOP) +/** + * @brief TIM15 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM15() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM15_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM15() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM15_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM16_STOP) +/** + * @brief TIM16 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM16() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM16_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM16() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM16_STOP) +#endif + +#if defined (DBGMCU_CR_DBG_TIM17_STOP) +/** + * @brief TIM17 Peripherals Debug mode + */ +#define __HAL_DBGMCU_FREEZE_TIM17() SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM17_STOP) +#define __HAL_DBGMCU_UNFREEZE_TIM17() CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_TIM17_STOP) +#endif + +/** + * @} + */ + +/** @defgroup HAL_Private_Macros HAL Private Macros + * @{ + */ +#define IS_TICKFREQ(FREQ) (((FREQ) == HAL_TICK_FREQ_10HZ) || \ + ((FREQ) == HAL_TICK_FREQ_100HZ) || \ + ((FREQ) == HAL_TICK_FREQ_1KHZ)) +/** + * @} + */ + +/* Exported functions --------------------------------------------------------*/ +/** @addtogroup HAL_Exported_Functions + * @{ + */ +/** @addtogroup HAL_Exported_Functions_Group1 + * @{ + */ +/* Initialization and de-initialization functions ******************************/ +HAL_StatusTypeDef HAL_Init(void); +HAL_StatusTypeDef HAL_DeInit(void); +void HAL_MspInit(void); +void HAL_MspDeInit(void); +HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority); +/** + * @} + */ + +/** @addtogroup HAL_Exported_Functions_Group2 + * @{ + */ +/* Peripheral Control functions ************************************************/ +void HAL_IncTick(void); +void HAL_Delay(uint32_t Delay); +uint32_t HAL_GetTick(void); +uint32_t HAL_GetTickPrio(void); +HAL_StatusTypeDef HAL_SetTickFreq(HAL_TickFreqTypeDef Freq); +HAL_TickFreqTypeDef HAL_GetTickFreq(void); +void HAL_SuspendTick(void); +void HAL_ResumeTick(void); +uint32_t HAL_GetHalVersion(void); +uint32_t HAL_GetREVID(void); +uint32_t HAL_GetDEVID(void); +uint32_t HAL_GetUIDw0(void); +uint32_t HAL_GetUIDw1(void); +uint32_t HAL_GetUIDw2(void); +void HAL_DBGMCU_EnableDBGSleepMode(void); +void HAL_DBGMCU_DisableDBGSleepMode(void); +void HAL_DBGMCU_EnableDBGStopMode(void); +void HAL_DBGMCU_DisableDBGStopMode(void); +void HAL_DBGMCU_EnableDBGStandbyMode(void); +void HAL_DBGMCU_DisableDBGStandbyMode(void); +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ +/* Private types -------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ +/** @defgroup HAL_Private_Variables HAL Private Variables + * @{ + */ +/** + * @} + */ +/* Private constants ---------------------------------------------------------*/ +/** @defgroup HAL_Private_Constants HAL Private Constants + * @{ + */ +/** + * @} + */ +/* Private macros ------------------------------------------------------------*/ +/* Private functions ---------------------------------------------------------*/ +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F1xx_HAL_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h index ce96197..a365b02 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h @@ -1,410 +1,410 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_cortex.h - * @author MCD Application Team - * @brief Header file of CORTEX HAL module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2017 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_HAL_CORTEX_H -#define __STM32F1xx_HAL_CORTEX_H - -#ifdef __cplusplus - extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup CORTEX - * @{ - */ -/* Exported types ------------------------------------------------------------*/ -/** @defgroup CORTEX_Exported_Types Cortex Exported Types - * @{ - */ - -#if (__MPU_PRESENT == 1U) -/** @defgroup CORTEX_MPU_Region_Initialization_Structure_definition MPU Region Initialization Structure Definition - * @brief MPU Region initialization structure - * @{ - */ -typedef struct -{ - uint8_t Enable; /*!< Specifies the status of the region. - This parameter can be a value of @ref CORTEX_MPU_Region_Enable */ - uint8_t Number; /*!< Specifies the number of the region to protect. - This parameter can be a value of @ref CORTEX_MPU_Region_Number */ - uint32_t BaseAddress; /*!< Specifies the base address of the region to protect. */ - uint8_t Size; /*!< Specifies the size of the region to protect. - This parameter can be a value of @ref CORTEX_MPU_Region_Size */ - uint8_t SubRegionDisable; /*!< Specifies the number of the subregion protection to disable. - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF */ - uint8_t TypeExtField; /*!< Specifies the TEX field level. - This parameter can be a value of @ref CORTEX_MPU_TEX_Levels */ - uint8_t AccessPermission; /*!< Specifies the region access permission type. - This parameter can be a value of @ref CORTEX_MPU_Region_Permission_Attributes */ - uint8_t DisableExec; /*!< Specifies the instruction access status. - This parameter can be a value of @ref CORTEX_MPU_Instruction_Access */ - uint8_t IsShareable; /*!< Specifies the shareability status of the protected region. - This parameter can be a value of @ref CORTEX_MPU_Access_Shareable */ - uint8_t IsCacheable; /*!< Specifies the cacheable status of the region protected. - This parameter can be a value of @ref CORTEX_MPU_Access_Cacheable */ - uint8_t IsBufferable; /*!< Specifies the bufferable status of the protected region. - This parameter can be a value of @ref CORTEX_MPU_Access_Bufferable */ -}MPU_Region_InitTypeDef; -/** - * @} - */ -#endif /* __MPU_PRESENT */ - -/** - * @} - */ - -/* Exported constants --------------------------------------------------------*/ - -/** @defgroup CORTEX_Exported_Constants CORTEX Exported Constants - * @{ - */ - -/** @defgroup CORTEX_Preemption_Priority_Group CORTEX Preemption Priority Group - * @{ - */ -#define NVIC_PRIORITYGROUP_0 0x00000007U /*!< 0 bits for pre-emption priority - 4 bits for subpriority */ -#define NVIC_PRIORITYGROUP_1 0x00000006U /*!< 1 bits for pre-emption priority - 3 bits for subpriority */ -#define NVIC_PRIORITYGROUP_2 0x00000005U /*!< 2 bits for pre-emption priority - 2 bits for subpriority */ -#define NVIC_PRIORITYGROUP_3 0x00000004U /*!< 3 bits for pre-emption priority - 1 bits for subpriority */ -#define NVIC_PRIORITYGROUP_4 0x00000003U /*!< 4 bits for pre-emption priority - 0 bits for subpriority */ -/** - * @} - */ - -/** @defgroup CORTEX_SysTick_clock_source CORTEX _SysTick clock source - * @{ - */ -#define SYSTICK_CLKSOURCE_HCLK_DIV8 0x00000000U -#define SYSTICK_CLKSOURCE_HCLK 0x00000004U - -/** - * @} - */ - -#if (__MPU_PRESENT == 1) -/** @defgroup CORTEX_MPU_HFNMI_PRIVDEF_Control MPU HFNMI and PRIVILEGED Access control - * @{ - */ -#define MPU_HFNMI_PRIVDEF_NONE 0x00000000U -#define MPU_HARDFAULT_NMI MPU_CTRL_HFNMIENA_Msk -#define MPU_PRIVILEGED_DEFAULT MPU_CTRL_PRIVDEFENA_Msk -#define MPU_HFNMI_PRIVDEF (MPU_CTRL_HFNMIENA_Msk | MPU_CTRL_PRIVDEFENA_Msk) - -/** - * @} - */ - -/** @defgroup CORTEX_MPU_Region_Enable CORTEX MPU Region Enable - * @{ - */ -#define MPU_REGION_ENABLE ((uint8_t)0x01) -#define MPU_REGION_DISABLE ((uint8_t)0x00) -/** - * @} - */ - -/** @defgroup CORTEX_MPU_Instruction_Access CORTEX MPU Instruction Access - * @{ - */ -#define MPU_INSTRUCTION_ACCESS_ENABLE ((uint8_t)0x00) -#define MPU_INSTRUCTION_ACCESS_DISABLE ((uint8_t)0x01) -/** - * @} - */ - -/** @defgroup CORTEX_MPU_Access_Shareable CORTEX MPU Instruction Access Shareable - * @{ - */ -#define MPU_ACCESS_SHAREABLE ((uint8_t)0x01) -#define MPU_ACCESS_NOT_SHAREABLE ((uint8_t)0x00) -/** - * @} - */ - -/** @defgroup CORTEX_MPU_Access_Cacheable CORTEX MPU Instruction Access Cacheable - * @{ - */ -#define MPU_ACCESS_CACHEABLE ((uint8_t)0x01) -#define MPU_ACCESS_NOT_CACHEABLE ((uint8_t)0x00) -/** - * @} - */ - -/** @defgroup CORTEX_MPU_Access_Bufferable CORTEX MPU Instruction Access Bufferable - * @{ - */ -#define MPU_ACCESS_BUFFERABLE ((uint8_t)0x01) -#define MPU_ACCESS_NOT_BUFFERABLE ((uint8_t)0x00) -/** - * @} - */ - -/** @defgroup CORTEX_MPU_TEX_Levels MPU TEX Levels - * @{ - */ -#define MPU_TEX_LEVEL0 ((uint8_t)0x00) -#define MPU_TEX_LEVEL1 ((uint8_t)0x01) -#define MPU_TEX_LEVEL2 ((uint8_t)0x02) -/** - * @} - */ - -/** @defgroup CORTEX_MPU_Region_Size CORTEX MPU Region Size - * @{ - */ -#define MPU_REGION_SIZE_32B ((uint8_t)0x04) -#define MPU_REGION_SIZE_64B ((uint8_t)0x05) -#define MPU_REGION_SIZE_128B ((uint8_t)0x06) -#define MPU_REGION_SIZE_256B ((uint8_t)0x07) -#define MPU_REGION_SIZE_512B ((uint8_t)0x08) -#define MPU_REGION_SIZE_1KB ((uint8_t)0x09) -#define MPU_REGION_SIZE_2KB ((uint8_t)0x0A) -#define MPU_REGION_SIZE_4KB ((uint8_t)0x0B) -#define MPU_REGION_SIZE_8KB ((uint8_t)0x0C) -#define MPU_REGION_SIZE_16KB ((uint8_t)0x0D) -#define MPU_REGION_SIZE_32KB ((uint8_t)0x0E) -#define MPU_REGION_SIZE_64KB ((uint8_t)0x0F) -#define MPU_REGION_SIZE_128KB ((uint8_t)0x10) -#define MPU_REGION_SIZE_256KB ((uint8_t)0x11) -#define MPU_REGION_SIZE_512KB ((uint8_t)0x12) -#define MPU_REGION_SIZE_1MB ((uint8_t)0x13) -#define MPU_REGION_SIZE_2MB ((uint8_t)0x14) -#define MPU_REGION_SIZE_4MB ((uint8_t)0x15) -#define MPU_REGION_SIZE_8MB ((uint8_t)0x16) -#define MPU_REGION_SIZE_16MB ((uint8_t)0x17) -#define MPU_REGION_SIZE_32MB ((uint8_t)0x18) -#define MPU_REGION_SIZE_64MB ((uint8_t)0x19) -#define MPU_REGION_SIZE_128MB ((uint8_t)0x1A) -#define MPU_REGION_SIZE_256MB ((uint8_t)0x1B) -#define MPU_REGION_SIZE_512MB ((uint8_t)0x1C) -#define MPU_REGION_SIZE_1GB ((uint8_t)0x1D) -#define MPU_REGION_SIZE_2GB ((uint8_t)0x1E) -#define MPU_REGION_SIZE_4GB ((uint8_t)0x1F) -/** - * @} - */ - -/** @defgroup CORTEX_MPU_Region_Permission_Attributes CORTEX MPU Region Permission Attributes - * @{ - */ -#define MPU_REGION_NO_ACCESS ((uint8_t)0x00) -#define MPU_REGION_PRIV_RW ((uint8_t)0x01) -#define MPU_REGION_PRIV_RW_URO ((uint8_t)0x02) -#define MPU_REGION_FULL_ACCESS ((uint8_t)0x03) -#define MPU_REGION_PRIV_RO ((uint8_t)0x05) -#define MPU_REGION_PRIV_RO_URO ((uint8_t)0x06) -/** - * @} - */ - -/** @defgroup CORTEX_MPU_Region_Number CORTEX MPU Region Number - * @{ - */ -#define MPU_REGION_NUMBER0 ((uint8_t)0x00) -#define MPU_REGION_NUMBER1 ((uint8_t)0x01) -#define MPU_REGION_NUMBER2 ((uint8_t)0x02) -#define MPU_REGION_NUMBER3 ((uint8_t)0x03) -#define MPU_REGION_NUMBER4 ((uint8_t)0x04) -#define MPU_REGION_NUMBER5 ((uint8_t)0x05) -#define MPU_REGION_NUMBER6 ((uint8_t)0x06) -#define MPU_REGION_NUMBER7 ((uint8_t)0x07) -/** - * @} - */ -#endif /* __MPU_PRESENT */ - -/** - * @} - */ - - -/* Exported Macros -----------------------------------------------------------*/ - -/* Exported functions --------------------------------------------------------*/ -/** @addtogroup CORTEX_Exported_Functions - * @{ - */ - -/** @addtogroup CORTEX_Exported_Functions_Group1 - * @{ - */ -/* Initialization and de-initialization functions *****************************/ -void HAL_NVIC_SetPriorityGrouping(uint32_t PriorityGroup); -void HAL_NVIC_SetPriority(IRQn_Type IRQn, uint32_t PreemptPriority, uint32_t SubPriority); -void HAL_NVIC_EnableIRQ(IRQn_Type IRQn); -void HAL_NVIC_DisableIRQ(IRQn_Type IRQn); -void HAL_NVIC_SystemReset(void); -uint32_t HAL_SYSTICK_Config(uint32_t TicksNumb); -/** - * @} - */ - -/** @addtogroup CORTEX_Exported_Functions_Group2 - * @{ - */ -/* Peripheral Control functions ***********************************************/ -uint32_t HAL_NVIC_GetPriorityGrouping(void); -void HAL_NVIC_GetPriority(IRQn_Type IRQn, uint32_t PriorityGroup, uint32_t* pPreemptPriority, uint32_t* pSubPriority); -uint32_t HAL_NVIC_GetPendingIRQ(IRQn_Type IRQn); -void HAL_NVIC_SetPendingIRQ(IRQn_Type IRQn); -void HAL_NVIC_ClearPendingIRQ(IRQn_Type IRQn); -uint32_t HAL_NVIC_GetActive(IRQn_Type IRQn); -void HAL_SYSTICK_CLKSourceConfig(uint32_t CLKSource); -void HAL_SYSTICK_IRQHandler(void); -void HAL_SYSTICK_Callback(void); - -#if (__MPU_PRESENT == 1U) -void HAL_MPU_Enable(uint32_t MPU_Control); -void HAL_MPU_Disable(void); -void HAL_MPU_ConfigRegion(MPU_Region_InitTypeDef *MPU_Init); -#endif /* __MPU_PRESENT */ -/** - * @} - */ - -/** - * @} - */ - -/* Private types -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private constants ---------------------------------------------------------*/ -/* Private macros ------------------------------------------------------------*/ -/** @defgroup CORTEX_Private_Macros CORTEX Private Macros - * @{ - */ -#define IS_NVIC_PRIORITY_GROUP(GROUP) (((GROUP) == NVIC_PRIORITYGROUP_0) || \ - ((GROUP) == NVIC_PRIORITYGROUP_1) || \ - ((GROUP) == NVIC_PRIORITYGROUP_2) || \ - ((GROUP) == NVIC_PRIORITYGROUP_3) || \ - ((GROUP) == NVIC_PRIORITYGROUP_4)) - -#define IS_NVIC_PREEMPTION_PRIORITY(PRIORITY) ((PRIORITY) < 0x10U) - -#define IS_NVIC_SUB_PRIORITY(PRIORITY) ((PRIORITY) < 0x10U) - -#define IS_NVIC_DEVICE_IRQ(IRQ) ((IRQ) >= (IRQn_Type)0x00U) - -#define IS_SYSTICK_CLK_SOURCE(SOURCE) (((SOURCE) == SYSTICK_CLKSOURCE_HCLK) || \ - ((SOURCE) == SYSTICK_CLKSOURCE_HCLK_DIV8)) - -#if (__MPU_PRESENT == 1U) -#define IS_MPU_REGION_ENABLE(STATE) (((STATE) == MPU_REGION_ENABLE) || \ - ((STATE) == MPU_REGION_DISABLE)) - -#define IS_MPU_INSTRUCTION_ACCESS(STATE) (((STATE) == MPU_INSTRUCTION_ACCESS_ENABLE) || \ - ((STATE) == MPU_INSTRUCTION_ACCESS_DISABLE)) - -#define IS_MPU_ACCESS_SHAREABLE(STATE) (((STATE) == MPU_ACCESS_SHAREABLE) || \ - ((STATE) == MPU_ACCESS_NOT_SHAREABLE)) - -#define IS_MPU_ACCESS_CACHEABLE(STATE) (((STATE) == MPU_ACCESS_CACHEABLE) || \ - ((STATE) == MPU_ACCESS_NOT_CACHEABLE)) - -#define IS_MPU_ACCESS_BUFFERABLE(STATE) (((STATE) == MPU_ACCESS_BUFFERABLE) || \ - ((STATE) == MPU_ACCESS_NOT_BUFFERABLE)) - -#define IS_MPU_TEX_LEVEL(TYPE) (((TYPE) == MPU_TEX_LEVEL0) || \ - ((TYPE) == MPU_TEX_LEVEL1) || \ - ((TYPE) == MPU_TEX_LEVEL2)) - -#define IS_MPU_REGION_PERMISSION_ATTRIBUTE(TYPE) (((TYPE) == MPU_REGION_NO_ACCESS) || \ - ((TYPE) == MPU_REGION_PRIV_RW) || \ - ((TYPE) == MPU_REGION_PRIV_RW_URO) || \ - ((TYPE) == MPU_REGION_FULL_ACCESS) || \ - ((TYPE) == MPU_REGION_PRIV_RO) || \ - ((TYPE) == MPU_REGION_PRIV_RO_URO)) - -#define IS_MPU_REGION_NUMBER(NUMBER) (((NUMBER) == MPU_REGION_NUMBER0) || \ - ((NUMBER) == MPU_REGION_NUMBER1) || \ - ((NUMBER) == MPU_REGION_NUMBER2) || \ - ((NUMBER) == MPU_REGION_NUMBER3) || \ - ((NUMBER) == MPU_REGION_NUMBER4) || \ - ((NUMBER) == MPU_REGION_NUMBER5) || \ - ((NUMBER) == MPU_REGION_NUMBER6) || \ - ((NUMBER) == MPU_REGION_NUMBER7)) - -#define IS_MPU_REGION_SIZE(SIZE) (((SIZE) == MPU_REGION_SIZE_32B) || \ - ((SIZE) == MPU_REGION_SIZE_64B) || \ - ((SIZE) == MPU_REGION_SIZE_128B) || \ - ((SIZE) == MPU_REGION_SIZE_256B) || \ - ((SIZE) == MPU_REGION_SIZE_512B) || \ - ((SIZE) == MPU_REGION_SIZE_1KB) || \ - ((SIZE) == MPU_REGION_SIZE_2KB) || \ - ((SIZE) == MPU_REGION_SIZE_4KB) || \ - ((SIZE) == MPU_REGION_SIZE_8KB) || \ - ((SIZE) == MPU_REGION_SIZE_16KB) || \ - ((SIZE) == MPU_REGION_SIZE_32KB) || \ - ((SIZE) == MPU_REGION_SIZE_64KB) || \ - ((SIZE) == MPU_REGION_SIZE_128KB) || \ - ((SIZE) == MPU_REGION_SIZE_256KB) || \ - ((SIZE) == MPU_REGION_SIZE_512KB) || \ - ((SIZE) == MPU_REGION_SIZE_1MB) || \ - ((SIZE) == MPU_REGION_SIZE_2MB) || \ - ((SIZE) == MPU_REGION_SIZE_4MB) || \ - ((SIZE) == MPU_REGION_SIZE_8MB) || \ - ((SIZE) == MPU_REGION_SIZE_16MB) || \ - ((SIZE) == MPU_REGION_SIZE_32MB) || \ - ((SIZE) == MPU_REGION_SIZE_64MB) || \ - ((SIZE) == MPU_REGION_SIZE_128MB) || \ - ((SIZE) == MPU_REGION_SIZE_256MB) || \ - ((SIZE) == MPU_REGION_SIZE_512MB) || \ - ((SIZE) == MPU_REGION_SIZE_1GB) || \ - ((SIZE) == MPU_REGION_SIZE_2GB) || \ - ((SIZE) == MPU_REGION_SIZE_4GB)) - -#define IS_MPU_SUB_REGION_DISABLE(SUBREGION) ((SUBREGION) < (uint16_t)0x00FF) -#endif /* __MPU_PRESENT */ - -/** - * @} - */ - -/* Private functions ---------------------------------------------------------*/ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /* __STM32F1xx_HAL_CORTEX_H */ - - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_cortex.h + * @author MCD Application Team + * @brief Header file of CORTEX HAL module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2017 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_HAL_CORTEX_H +#define __STM32F1xx_HAL_CORTEX_H + +#ifdef __cplusplus + extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup CORTEX + * @{ + */ +/* Exported types ------------------------------------------------------------*/ +/** @defgroup CORTEX_Exported_Types Cortex Exported Types + * @{ + */ + +#if (__MPU_PRESENT == 1U) +/** @defgroup CORTEX_MPU_Region_Initialization_Structure_definition MPU Region Initialization Structure Definition + * @brief MPU Region initialization structure + * @{ + */ +typedef struct +{ + uint8_t Enable; /*!< Specifies the status of the region. + This parameter can be a value of @ref CORTEX_MPU_Region_Enable */ + uint8_t Number; /*!< Specifies the number of the region to protect. + This parameter can be a value of @ref CORTEX_MPU_Region_Number */ + uint32_t BaseAddress; /*!< Specifies the base address of the region to protect. */ + uint8_t Size; /*!< Specifies the size of the region to protect. + This parameter can be a value of @ref CORTEX_MPU_Region_Size */ + uint8_t SubRegionDisable; /*!< Specifies the number of the subregion protection to disable. + This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF */ + uint8_t TypeExtField; /*!< Specifies the TEX field level. + This parameter can be a value of @ref CORTEX_MPU_TEX_Levels */ + uint8_t AccessPermission; /*!< Specifies the region access permission type. + This parameter can be a value of @ref CORTEX_MPU_Region_Permission_Attributes */ + uint8_t DisableExec; /*!< Specifies the instruction access status. + This parameter can be a value of @ref CORTEX_MPU_Instruction_Access */ + uint8_t IsShareable; /*!< Specifies the shareability status of the protected region. + This parameter can be a value of @ref CORTEX_MPU_Access_Shareable */ + uint8_t IsCacheable; /*!< Specifies the cacheable status of the region protected. + This parameter can be a value of @ref CORTEX_MPU_Access_Cacheable */ + uint8_t IsBufferable; /*!< Specifies the bufferable status of the protected region. + This parameter can be a value of @ref CORTEX_MPU_Access_Bufferable */ +}MPU_Region_InitTypeDef; +/** + * @} + */ +#endif /* __MPU_PRESENT */ + +/** + * @} + */ + +/* Exported constants --------------------------------------------------------*/ + +/** @defgroup CORTEX_Exported_Constants CORTEX Exported Constants + * @{ + */ + +/** @defgroup CORTEX_Preemption_Priority_Group CORTEX Preemption Priority Group + * @{ + */ +#define NVIC_PRIORITYGROUP_0 0x00000007U /*!< 0 bits for pre-emption priority + 4 bits for subpriority */ +#define NVIC_PRIORITYGROUP_1 0x00000006U /*!< 1 bits for pre-emption priority + 3 bits for subpriority */ +#define NVIC_PRIORITYGROUP_2 0x00000005U /*!< 2 bits for pre-emption priority + 2 bits for subpriority */ +#define NVIC_PRIORITYGROUP_3 0x00000004U /*!< 3 bits for pre-emption priority + 1 bits for subpriority */ +#define NVIC_PRIORITYGROUP_4 0x00000003U /*!< 4 bits for pre-emption priority + 0 bits for subpriority */ +/** + * @} + */ + +/** @defgroup CORTEX_SysTick_clock_source CORTEX _SysTick clock source + * @{ + */ +#define SYSTICK_CLKSOURCE_HCLK_DIV8 0x00000000U +#define SYSTICK_CLKSOURCE_HCLK 0x00000004U + +/** + * @} + */ + +#if (__MPU_PRESENT == 1) +/** @defgroup CORTEX_MPU_HFNMI_PRIVDEF_Control MPU HFNMI and PRIVILEGED Access control + * @{ + */ +#define MPU_HFNMI_PRIVDEF_NONE 0x00000000U +#define MPU_HARDFAULT_NMI MPU_CTRL_HFNMIENA_Msk +#define MPU_PRIVILEGED_DEFAULT MPU_CTRL_PRIVDEFENA_Msk +#define MPU_HFNMI_PRIVDEF (MPU_CTRL_HFNMIENA_Msk | MPU_CTRL_PRIVDEFENA_Msk) + +/** + * @} + */ + +/** @defgroup CORTEX_MPU_Region_Enable CORTEX MPU Region Enable + * @{ + */ +#define MPU_REGION_ENABLE ((uint8_t)0x01) +#define MPU_REGION_DISABLE ((uint8_t)0x00) +/** + * @} + */ + +/** @defgroup CORTEX_MPU_Instruction_Access CORTEX MPU Instruction Access + * @{ + */ +#define MPU_INSTRUCTION_ACCESS_ENABLE ((uint8_t)0x00) +#define MPU_INSTRUCTION_ACCESS_DISABLE ((uint8_t)0x01) +/** + * @} + */ + +/** @defgroup CORTEX_MPU_Access_Shareable CORTEX MPU Instruction Access Shareable + * @{ + */ +#define MPU_ACCESS_SHAREABLE ((uint8_t)0x01) +#define MPU_ACCESS_NOT_SHAREABLE ((uint8_t)0x00) +/** + * @} + */ + +/** @defgroup CORTEX_MPU_Access_Cacheable CORTEX MPU Instruction Access Cacheable + * @{ + */ +#define MPU_ACCESS_CACHEABLE ((uint8_t)0x01) +#define MPU_ACCESS_NOT_CACHEABLE ((uint8_t)0x00) +/** + * @} + */ + +/** @defgroup CORTEX_MPU_Access_Bufferable CORTEX MPU Instruction Access Bufferable + * @{ + */ +#define MPU_ACCESS_BUFFERABLE ((uint8_t)0x01) +#define MPU_ACCESS_NOT_BUFFERABLE ((uint8_t)0x00) +/** + * @} + */ + +/** @defgroup CORTEX_MPU_TEX_Levels MPU TEX Levels + * @{ + */ +#define MPU_TEX_LEVEL0 ((uint8_t)0x00) +#define MPU_TEX_LEVEL1 ((uint8_t)0x01) +#define MPU_TEX_LEVEL2 ((uint8_t)0x02) +/** + * @} + */ + +/** @defgroup CORTEX_MPU_Region_Size CORTEX MPU Region Size + * @{ + */ +#define MPU_REGION_SIZE_32B ((uint8_t)0x04) +#define MPU_REGION_SIZE_64B ((uint8_t)0x05) +#define MPU_REGION_SIZE_128B ((uint8_t)0x06) +#define MPU_REGION_SIZE_256B ((uint8_t)0x07) +#define MPU_REGION_SIZE_512B ((uint8_t)0x08) +#define MPU_REGION_SIZE_1KB ((uint8_t)0x09) +#define MPU_REGION_SIZE_2KB ((uint8_t)0x0A) +#define MPU_REGION_SIZE_4KB ((uint8_t)0x0B) +#define MPU_REGION_SIZE_8KB ((uint8_t)0x0C) +#define MPU_REGION_SIZE_16KB ((uint8_t)0x0D) +#define MPU_REGION_SIZE_32KB ((uint8_t)0x0E) +#define MPU_REGION_SIZE_64KB ((uint8_t)0x0F) +#define MPU_REGION_SIZE_128KB ((uint8_t)0x10) +#define MPU_REGION_SIZE_256KB ((uint8_t)0x11) +#define MPU_REGION_SIZE_512KB ((uint8_t)0x12) +#define MPU_REGION_SIZE_1MB ((uint8_t)0x13) +#define MPU_REGION_SIZE_2MB ((uint8_t)0x14) +#define MPU_REGION_SIZE_4MB ((uint8_t)0x15) +#define MPU_REGION_SIZE_8MB ((uint8_t)0x16) +#define MPU_REGION_SIZE_16MB ((uint8_t)0x17) +#define MPU_REGION_SIZE_32MB ((uint8_t)0x18) +#define MPU_REGION_SIZE_64MB ((uint8_t)0x19) +#define MPU_REGION_SIZE_128MB ((uint8_t)0x1A) +#define MPU_REGION_SIZE_256MB ((uint8_t)0x1B) +#define MPU_REGION_SIZE_512MB ((uint8_t)0x1C) +#define MPU_REGION_SIZE_1GB ((uint8_t)0x1D) +#define MPU_REGION_SIZE_2GB ((uint8_t)0x1E) +#define MPU_REGION_SIZE_4GB ((uint8_t)0x1F) +/** + * @} + */ + +/** @defgroup CORTEX_MPU_Region_Permission_Attributes CORTEX MPU Region Permission Attributes + * @{ + */ +#define MPU_REGION_NO_ACCESS ((uint8_t)0x00) +#define MPU_REGION_PRIV_RW ((uint8_t)0x01) +#define MPU_REGION_PRIV_RW_URO ((uint8_t)0x02) +#define MPU_REGION_FULL_ACCESS ((uint8_t)0x03) +#define MPU_REGION_PRIV_RO ((uint8_t)0x05) +#define MPU_REGION_PRIV_RO_URO ((uint8_t)0x06) +/** + * @} + */ + +/** @defgroup CORTEX_MPU_Region_Number CORTEX MPU Region Number + * @{ + */ +#define MPU_REGION_NUMBER0 ((uint8_t)0x00) +#define MPU_REGION_NUMBER1 ((uint8_t)0x01) +#define MPU_REGION_NUMBER2 ((uint8_t)0x02) +#define MPU_REGION_NUMBER3 ((uint8_t)0x03) +#define MPU_REGION_NUMBER4 ((uint8_t)0x04) +#define MPU_REGION_NUMBER5 ((uint8_t)0x05) +#define MPU_REGION_NUMBER6 ((uint8_t)0x06) +#define MPU_REGION_NUMBER7 ((uint8_t)0x07) +/** + * @} + */ +#endif /* __MPU_PRESENT */ + +/** + * @} + */ + + +/* Exported Macros -----------------------------------------------------------*/ + +/* Exported functions --------------------------------------------------------*/ +/** @addtogroup CORTEX_Exported_Functions + * @{ + */ + +/** @addtogroup CORTEX_Exported_Functions_Group1 + * @{ + */ +/* Initialization and de-initialization functions *****************************/ +void HAL_NVIC_SetPriorityGrouping(uint32_t PriorityGroup); +void HAL_NVIC_SetPriority(IRQn_Type IRQn, uint32_t PreemptPriority, uint32_t SubPriority); +void HAL_NVIC_EnableIRQ(IRQn_Type IRQn); +void HAL_NVIC_DisableIRQ(IRQn_Type IRQn); +void HAL_NVIC_SystemReset(void); +uint32_t HAL_SYSTICK_Config(uint32_t TicksNumb); +/** + * @} + */ + +/** @addtogroup CORTEX_Exported_Functions_Group2 + * @{ + */ +/* Peripheral Control functions ***********************************************/ +uint32_t HAL_NVIC_GetPriorityGrouping(void); +void HAL_NVIC_GetPriority(IRQn_Type IRQn, uint32_t PriorityGroup, uint32_t* pPreemptPriority, uint32_t* pSubPriority); +uint32_t HAL_NVIC_GetPendingIRQ(IRQn_Type IRQn); +void HAL_NVIC_SetPendingIRQ(IRQn_Type IRQn); +void HAL_NVIC_ClearPendingIRQ(IRQn_Type IRQn); +uint32_t HAL_NVIC_GetActive(IRQn_Type IRQn); +void HAL_SYSTICK_CLKSourceConfig(uint32_t CLKSource); +void HAL_SYSTICK_IRQHandler(void); +void HAL_SYSTICK_Callback(void); + +#if (__MPU_PRESENT == 1U) +void HAL_MPU_Enable(uint32_t MPU_Control); +void HAL_MPU_Disable(void); +void HAL_MPU_ConfigRegion(MPU_Region_InitTypeDef *MPU_Init); +#endif /* __MPU_PRESENT */ +/** + * @} + */ + +/** + * @} + */ + +/* Private types -------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ +/* Private constants ---------------------------------------------------------*/ +/* Private macros ------------------------------------------------------------*/ +/** @defgroup CORTEX_Private_Macros CORTEX Private Macros + * @{ + */ +#define IS_NVIC_PRIORITY_GROUP(GROUP) (((GROUP) == NVIC_PRIORITYGROUP_0) || \ + ((GROUP) == NVIC_PRIORITYGROUP_1) || \ + ((GROUP) == NVIC_PRIORITYGROUP_2) || \ + ((GROUP) == NVIC_PRIORITYGROUP_3) || \ + ((GROUP) == NVIC_PRIORITYGROUP_4)) + +#define IS_NVIC_PREEMPTION_PRIORITY(PRIORITY) ((PRIORITY) < 0x10U) + +#define IS_NVIC_SUB_PRIORITY(PRIORITY) ((PRIORITY) < 0x10U) + +#define IS_NVIC_DEVICE_IRQ(IRQ) ((IRQ) >= (IRQn_Type)0x00U) + +#define IS_SYSTICK_CLK_SOURCE(SOURCE) (((SOURCE) == SYSTICK_CLKSOURCE_HCLK) || \ + ((SOURCE) == SYSTICK_CLKSOURCE_HCLK_DIV8)) + +#if (__MPU_PRESENT == 1U) +#define IS_MPU_REGION_ENABLE(STATE) (((STATE) == MPU_REGION_ENABLE) || \ + ((STATE) == MPU_REGION_DISABLE)) + +#define IS_MPU_INSTRUCTION_ACCESS(STATE) (((STATE) == MPU_INSTRUCTION_ACCESS_ENABLE) || \ + ((STATE) == MPU_INSTRUCTION_ACCESS_DISABLE)) + +#define IS_MPU_ACCESS_SHAREABLE(STATE) (((STATE) == MPU_ACCESS_SHAREABLE) || \ + ((STATE) == MPU_ACCESS_NOT_SHAREABLE)) + +#define IS_MPU_ACCESS_CACHEABLE(STATE) (((STATE) == MPU_ACCESS_CACHEABLE) || \ + ((STATE) == MPU_ACCESS_NOT_CACHEABLE)) + +#define IS_MPU_ACCESS_BUFFERABLE(STATE) (((STATE) == MPU_ACCESS_BUFFERABLE) || \ + ((STATE) == MPU_ACCESS_NOT_BUFFERABLE)) + +#define IS_MPU_TEX_LEVEL(TYPE) (((TYPE) == MPU_TEX_LEVEL0) || \ + ((TYPE) == MPU_TEX_LEVEL1) || \ + ((TYPE) == MPU_TEX_LEVEL2)) + +#define IS_MPU_REGION_PERMISSION_ATTRIBUTE(TYPE) (((TYPE) == MPU_REGION_NO_ACCESS) || \ + ((TYPE) == MPU_REGION_PRIV_RW) || \ + ((TYPE) == MPU_REGION_PRIV_RW_URO) || \ + ((TYPE) == MPU_REGION_FULL_ACCESS) || \ + ((TYPE) == MPU_REGION_PRIV_RO) || \ + ((TYPE) == MPU_REGION_PRIV_RO_URO)) + +#define IS_MPU_REGION_NUMBER(NUMBER) (((NUMBER) == MPU_REGION_NUMBER0) || \ + ((NUMBER) == MPU_REGION_NUMBER1) || \ + ((NUMBER) == MPU_REGION_NUMBER2) || \ + ((NUMBER) == MPU_REGION_NUMBER3) || \ + ((NUMBER) == MPU_REGION_NUMBER4) || \ + ((NUMBER) == MPU_REGION_NUMBER5) || \ + ((NUMBER) == MPU_REGION_NUMBER6) || \ + ((NUMBER) == MPU_REGION_NUMBER7)) + +#define IS_MPU_REGION_SIZE(SIZE) (((SIZE) == MPU_REGION_SIZE_32B) || \ + ((SIZE) == MPU_REGION_SIZE_64B) || \ + ((SIZE) == MPU_REGION_SIZE_128B) || \ + ((SIZE) == MPU_REGION_SIZE_256B) || \ + ((SIZE) == MPU_REGION_SIZE_512B) || \ + ((SIZE) == MPU_REGION_SIZE_1KB) || \ + ((SIZE) == MPU_REGION_SIZE_2KB) || \ + ((SIZE) == MPU_REGION_SIZE_4KB) || \ + ((SIZE) == MPU_REGION_SIZE_8KB) || \ + ((SIZE) == MPU_REGION_SIZE_16KB) || \ + ((SIZE) == MPU_REGION_SIZE_32KB) || \ + ((SIZE) == MPU_REGION_SIZE_64KB) || \ + ((SIZE) == MPU_REGION_SIZE_128KB) || \ + ((SIZE) == MPU_REGION_SIZE_256KB) || \ + ((SIZE) == MPU_REGION_SIZE_512KB) || \ + ((SIZE) == MPU_REGION_SIZE_1MB) || \ + ((SIZE) == MPU_REGION_SIZE_2MB) || \ + ((SIZE) == MPU_REGION_SIZE_4MB) || \ + ((SIZE) == MPU_REGION_SIZE_8MB) || \ + ((SIZE) == MPU_REGION_SIZE_16MB) || \ + ((SIZE) == MPU_REGION_SIZE_32MB) || \ + ((SIZE) == MPU_REGION_SIZE_64MB) || \ + ((SIZE) == MPU_REGION_SIZE_128MB) || \ + ((SIZE) == MPU_REGION_SIZE_256MB) || \ + ((SIZE) == MPU_REGION_SIZE_512MB) || \ + ((SIZE) == MPU_REGION_SIZE_1GB) || \ + ((SIZE) == MPU_REGION_SIZE_2GB) || \ + ((SIZE) == MPU_REGION_SIZE_4GB)) + +#define IS_MPU_SUB_REGION_DISABLE(SUBREGION) ((SUBREGION) < (uint16_t)0x00FF) +#endif /* __MPU_PRESENT */ + +/** + * @} + */ + +/* Private functions ---------------------------------------------------------*/ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F1xx_HAL_CORTEX_H */ + + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h index 6ff1109..155c017 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h @@ -1,210 +1,210 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_def.h - * @author MCD Application Team - * @brief This file contains HAL common defines, enumeration, macros and - * structures definitions. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2017 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_HAL_DEF -#define __STM32F1xx_HAL_DEF - -#ifdef __cplusplus -extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx.h" -#include "Legacy/stm32_hal_legacy.h" -#include - -/* Exported types ------------------------------------------------------------*/ - -/** - * @brief HAL Status structures definition - */ -typedef enum -{ - HAL_OK = 0x00U, - HAL_ERROR = 0x01U, - HAL_BUSY = 0x02U, - HAL_TIMEOUT = 0x03U -} HAL_StatusTypeDef; - -/** - * @brief HAL Lock structures definition - */ -typedef enum -{ - HAL_UNLOCKED = 0x00U, - HAL_LOCKED = 0x01U -} HAL_LockTypeDef; - -/* Exported macro ------------------------------------------------------------*/ -#define HAL_MAX_DELAY 0xFFFFFFFFU - -#define HAL_IS_BIT_SET(REG, BIT) (((REG) & (BIT)) != 0U) -#define HAL_IS_BIT_CLR(REG, BIT) (((REG) & (BIT)) == 0U) - -#define __HAL_LINKDMA(__HANDLE__, __PPP_DMA_FIELD__, __DMA_HANDLE__) \ - do{ \ - (__HANDLE__)->__PPP_DMA_FIELD__ = &(__DMA_HANDLE__); \ - (__DMA_HANDLE__).Parent = (__HANDLE__); \ - } while(0U) - -#define UNUSED(X) (void)X /* To avoid gcc/g++ warnings */ - -/** @brief Reset the Handle's State field. - * @param __HANDLE__ specifies the Peripheral Handle. - * @note This macro can be used for the following purpose: - * - When the Handle is declared as local variable; before passing it as parameter - * to HAL_PPP_Init() for the first time, it is mandatory to use this macro - * to set to 0 the Handle's "State" field. - * Otherwise, "State" field may have any random value and the first time the function - * HAL_PPP_Init() is called, the low level hardware initialization will be missed - * (i.e. HAL_PPP_MspInit() will not be executed). - * - When there is a need to reconfigure the low level hardware: instead of calling - * HAL_PPP_DeInit() then HAL_PPP_Init(), user can make a call to this macro then HAL_PPP_Init(). - * In this later function, when the Handle's "State" field is set to 0, it will execute the function - * HAL_PPP_MspInit() which will reconfigure the low level hardware. - * @retval None - */ -#define __HAL_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = 0U) - -#if (USE_RTOS == 1U) -/* Reserved for future use */ -#error "USE_RTOS should be 0 in the current HAL release" -#else -#define __HAL_LOCK(__HANDLE__) \ - do{ \ - if((__HANDLE__)->Lock == HAL_LOCKED) \ - { \ - return HAL_BUSY; \ - } \ - else \ - { \ - (__HANDLE__)->Lock = HAL_LOCKED; \ - } \ - }while (0U) - -#define __HAL_UNLOCK(__HANDLE__) \ - do{ \ - (__HANDLE__)->Lock = HAL_UNLOCKED; \ - }while (0U) -#endif /* USE_RTOS */ - -#if defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) /* ARM Compiler V6 */ -#ifndef __weak -#define __weak __attribute__((weak)) -#endif -#ifndef __packed -#define __packed __attribute__((packed)) -#endif -#elif defined ( __GNUC__ ) && !defined (__CC_ARM) /* GNU Compiler */ -#ifndef __weak -#define __weak __attribute__((weak)) -#endif /* __weak */ -#ifndef __packed -#define __packed __attribute__((__packed__)) -#endif /* __packed */ -#endif /* __GNUC__ */ - - -/* Macro to get variable aligned on 4-bytes, for __ICCARM__ the directive "#pragma data_alignment=4" must be used instead */ -#if defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) /* ARM Compiler V6 */ -#ifndef __ALIGN_BEGIN -#define __ALIGN_BEGIN -#endif -#ifndef __ALIGN_END -#define __ALIGN_END __attribute__ ((aligned (4))) -#endif -#elif defined ( __GNUC__ ) && !defined (__CC_ARM) /* GNU Compiler */ -#ifndef __ALIGN_END -#define __ALIGN_END __attribute__ ((aligned (4))) -#endif /* __ALIGN_END */ -#ifndef __ALIGN_BEGIN -#define __ALIGN_BEGIN -#endif /* __ALIGN_BEGIN */ -#else -#ifndef __ALIGN_END -#define __ALIGN_END -#endif /* __ALIGN_END */ -#ifndef __ALIGN_BEGIN -#if defined (__CC_ARM) /* ARM Compiler V5*/ -#define __ALIGN_BEGIN __align(4) -#elif defined (__ICCARM__) /* IAR Compiler */ -#define __ALIGN_BEGIN -#endif /* __CC_ARM */ -#endif /* __ALIGN_BEGIN */ -#endif /* __GNUC__ */ - - -/** - * @brief __RAM_FUNC definition - */ -#if defined ( __CC_ARM ) || (defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)) -/* ARM Compiler V4/V5 and V6 - -------------------------- - RAM functions are defined using the toolchain options. - Functions that are executed in RAM should reside in a separate source module. - Using the 'Options for File' dialog you can simply change the 'Code / Const' - area of a module to a memory space in physical RAM. - Available memory areas are declared in the 'Target' tab of the 'Options for Target' - dialog. -*/ -#define __RAM_FUNC - -#elif defined ( __ICCARM__ ) -/* ICCARM Compiler - --------------- - RAM functions are defined using a specific toolchain keyword "__ramfunc". -*/ -#define __RAM_FUNC __ramfunc - -#elif defined ( __GNUC__ ) -/* GNU Compiler - ------------ - RAM functions are defined using a specific toolchain attribute - "__attribute__((section(".RamFunc")))". -*/ -#define __RAM_FUNC __attribute__((section(".RamFunc"))) - -#endif - -/** - * @brief __NOINLINE definition - */ -#if defined ( __CC_ARM ) || (defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)) || defined ( __GNUC__ ) -/* ARM V4/V5 and V6 & GNU Compiler - ------------------------------- -*/ -#define __NOINLINE __attribute__ ( (noinline) ) - -#elif defined ( __ICCARM__ ) -/* ICCARM Compiler - --------------- -*/ -#define __NOINLINE _Pragma("optimize = no_inline") - -#endif - -#ifdef __cplusplus -} -#endif - -#endif /* ___STM32F1xx_HAL_DEF */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_def.h + * @author MCD Application Team + * @brief This file contains HAL common defines, enumeration, macros and + * structures definitions. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2017 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_HAL_DEF +#define __STM32F1xx_HAL_DEF + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx.h" +#include "Legacy/stm32_hal_legacy.h" +#include + +/* Exported types ------------------------------------------------------------*/ + +/** + * @brief HAL Status structures definition + */ +typedef enum +{ + HAL_OK = 0x00U, + HAL_ERROR = 0x01U, + HAL_BUSY = 0x02U, + HAL_TIMEOUT = 0x03U +} HAL_StatusTypeDef; + +/** + * @brief HAL Lock structures definition + */ +typedef enum +{ + HAL_UNLOCKED = 0x00U, + HAL_LOCKED = 0x01U +} HAL_LockTypeDef; + +/* Exported macro ------------------------------------------------------------*/ +#define HAL_MAX_DELAY 0xFFFFFFFFU + +#define HAL_IS_BIT_SET(REG, BIT) (((REG) & (BIT)) != 0U) +#define HAL_IS_BIT_CLR(REG, BIT) (((REG) & (BIT)) == 0U) + +#define __HAL_LINKDMA(__HANDLE__, __PPP_DMA_FIELD__, __DMA_HANDLE__) \ + do{ \ + (__HANDLE__)->__PPP_DMA_FIELD__ = &(__DMA_HANDLE__); \ + (__DMA_HANDLE__).Parent = (__HANDLE__); \ + } while(0U) + +#define UNUSED(X) (void)X /* To avoid gcc/g++ warnings */ + +/** @brief Reset the Handle's State field. + * @param __HANDLE__ specifies the Peripheral Handle. + * @note This macro can be used for the following purpose: + * - When the Handle is declared as local variable; before passing it as parameter + * to HAL_PPP_Init() for the first time, it is mandatory to use this macro + * to set to 0 the Handle's "State" field. + * Otherwise, "State" field may have any random value and the first time the function + * HAL_PPP_Init() is called, the low level hardware initialization will be missed + * (i.e. HAL_PPP_MspInit() will not be executed). + * - When there is a need to reconfigure the low level hardware: instead of calling + * HAL_PPP_DeInit() then HAL_PPP_Init(), user can make a call to this macro then HAL_PPP_Init(). + * In this later function, when the Handle's "State" field is set to 0, it will execute the function + * HAL_PPP_MspInit() which will reconfigure the low level hardware. + * @retval None + */ +#define __HAL_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = 0U) + +#if (USE_RTOS == 1U) +/* Reserved for future use */ +#error "USE_RTOS should be 0 in the current HAL release" +#else +#define __HAL_LOCK(__HANDLE__) \ + do{ \ + if((__HANDLE__)->Lock == HAL_LOCKED) \ + { \ + return HAL_BUSY; \ + } \ + else \ + { \ + (__HANDLE__)->Lock = HAL_LOCKED; \ + } \ + }while (0U) + +#define __HAL_UNLOCK(__HANDLE__) \ + do{ \ + (__HANDLE__)->Lock = HAL_UNLOCKED; \ + }while (0U) +#endif /* USE_RTOS */ + +#if defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) /* ARM Compiler V6 */ +#ifndef __weak +#define __weak __attribute__((weak)) +#endif +#ifndef __packed +#define __packed __attribute__((packed)) +#endif +#elif defined ( __GNUC__ ) && !defined (__CC_ARM) /* GNU Compiler */ +#ifndef __weak +#define __weak __attribute__((weak)) +#endif /* __weak */ +#ifndef __packed +#define __packed __attribute__((__packed__)) +#endif /* __packed */ +#endif /* __GNUC__ */ + + +/* Macro to get variable aligned on 4-bytes, for __ICCARM__ the directive "#pragma data_alignment=4" must be used instead */ +#if defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) /* ARM Compiler V6 */ +#ifndef __ALIGN_BEGIN +#define __ALIGN_BEGIN +#endif +#ifndef __ALIGN_END +#define __ALIGN_END __attribute__ ((aligned (4))) +#endif +#elif defined ( __GNUC__ ) && !defined (__CC_ARM) /* GNU Compiler */ +#ifndef __ALIGN_END +#define __ALIGN_END __attribute__ ((aligned (4))) +#endif /* __ALIGN_END */ +#ifndef __ALIGN_BEGIN +#define __ALIGN_BEGIN +#endif /* __ALIGN_BEGIN */ +#else +#ifndef __ALIGN_END +#define __ALIGN_END +#endif /* __ALIGN_END */ +#ifndef __ALIGN_BEGIN +#if defined (__CC_ARM) /* ARM Compiler V5*/ +#define __ALIGN_BEGIN __align(4) +#elif defined (__ICCARM__) /* IAR Compiler */ +#define __ALIGN_BEGIN +#endif /* __CC_ARM */ +#endif /* __ALIGN_BEGIN */ +#endif /* __GNUC__ */ + + +/** + * @brief __RAM_FUNC definition + */ +#if defined ( __CC_ARM ) || (defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)) +/* ARM Compiler V4/V5 and V6 + -------------------------- + RAM functions are defined using the toolchain options. + Functions that are executed in RAM should reside in a separate source module. + Using the 'Options for File' dialog you can simply change the 'Code / Const' + area of a module to a memory space in physical RAM. + Available memory areas are declared in the 'Target' tab of the 'Options for Target' + dialog. +*/ +#define __RAM_FUNC + +#elif defined ( __ICCARM__ ) +/* ICCARM Compiler + --------------- + RAM functions are defined using a specific toolchain keyword "__ramfunc". +*/ +#define __RAM_FUNC __ramfunc + +#elif defined ( __GNUC__ ) +/* GNU Compiler + ------------ + RAM functions are defined using a specific toolchain attribute + "__attribute__((section(".RamFunc")))". +*/ +#define __RAM_FUNC __attribute__((section(".RamFunc"))) + +#endif + +/** + * @brief __NOINLINE definition + */ +#if defined ( __CC_ARM ) || (defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)) || defined ( __GNUC__ ) +/* ARM V4/V5 and V6 & GNU Compiler + ------------------------------- +*/ +#define __NOINLINE __attribute__ ( (noinline) ) + +#elif defined ( __ICCARM__ ) +/* ICCARM Compiler + --------------- +*/ +#define __NOINLINE _Pragma("optimize = no_inline") + +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* ___STM32F1xx_HAL_DEF */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h index 7b2304d..9a407f4 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h @@ -1,457 +1,457 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_dma.h - * @author MCD Application Team - * @brief Header file of DMA HAL module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_HAL_DMA_H -#define __STM32F1xx_HAL_DMA_H - -#ifdef __cplusplus - extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup DMA - * @{ - */ - -/* Exported types ------------------------------------------------------------*/ - -/** @defgroup DMA_Exported_Types DMA Exported Types - * @{ - */ - -/** - * @brief DMA Configuration Structure definition - */ -typedef struct -{ - uint32_t Direction; /*!< Specifies if the data will be transferred from memory to peripheral, - from memory to memory or from peripheral to memory. - This parameter can be a value of @ref DMA_Data_transfer_direction */ - - uint32_t PeriphInc; /*!< Specifies whether the Peripheral address register should be incremented or not. - This parameter can be a value of @ref DMA_Peripheral_incremented_mode */ - - uint32_t MemInc; /*!< Specifies whether the memory address register should be incremented or not. - This parameter can be a value of @ref DMA_Memory_incremented_mode */ - - uint32_t PeriphDataAlignment; /*!< Specifies the Peripheral data width. - This parameter can be a value of @ref DMA_Peripheral_data_size */ - - uint32_t MemDataAlignment; /*!< Specifies the Memory data width. - This parameter can be a value of @ref DMA_Memory_data_size */ - - uint32_t Mode; /*!< Specifies the operation mode of the DMAy Channelx. - This parameter can be a value of @ref DMA_mode - @note The circular buffer mode cannot be used if the memory-to-memory - data transfer is configured on the selected Channel */ - - uint32_t Priority; /*!< Specifies the software priority for the DMAy Channelx. - This parameter can be a value of @ref DMA_Priority_level */ -} DMA_InitTypeDef; - -/** - * @brief HAL DMA State structures definition - */ -typedef enum -{ - HAL_DMA_STATE_RESET = 0x00U, /*!< DMA not yet initialized or disabled */ - HAL_DMA_STATE_READY = 0x01U, /*!< DMA initialized and ready for use */ - HAL_DMA_STATE_BUSY = 0x02U, /*!< DMA process is ongoing */ - HAL_DMA_STATE_TIMEOUT = 0x03U /*!< DMA timeout state */ -}HAL_DMA_StateTypeDef; - -/** - * @brief HAL DMA Error Code structure definition - */ -typedef enum -{ - HAL_DMA_FULL_TRANSFER = 0x00U, /*!< Full transfer */ - HAL_DMA_HALF_TRANSFER = 0x01U /*!< Half Transfer */ -}HAL_DMA_LevelCompleteTypeDef; - -/** - * @brief HAL DMA Callback ID structure definition - */ -typedef enum -{ - HAL_DMA_XFER_CPLT_CB_ID = 0x00U, /*!< Full transfer */ - HAL_DMA_XFER_HALFCPLT_CB_ID = 0x01U, /*!< Half transfer */ - HAL_DMA_XFER_ERROR_CB_ID = 0x02U, /*!< Error */ - HAL_DMA_XFER_ABORT_CB_ID = 0x03U, /*!< Abort */ - HAL_DMA_XFER_ALL_CB_ID = 0x04U /*!< All */ - -}HAL_DMA_CallbackIDTypeDef; - -/** - * @brief DMA handle Structure definition - */ -typedef struct __DMA_HandleTypeDef -{ - DMA_Channel_TypeDef *Instance; /*!< Register base address */ - - DMA_InitTypeDef Init; /*!< DMA communication parameters */ - - HAL_LockTypeDef Lock; /*!< DMA locking object */ - - HAL_DMA_StateTypeDef State; /*!< DMA transfer state */ - - void *Parent; /*!< Parent object state */ - - void (* XferCpltCallback)( struct __DMA_HandleTypeDef * hdma); /*!< DMA transfer complete callback */ - - void (* XferHalfCpltCallback)( struct __DMA_HandleTypeDef * hdma); /*!< DMA Half transfer complete callback */ - - void (* XferErrorCallback)( struct __DMA_HandleTypeDef * hdma); /*!< DMA transfer error callback */ - - void (* XferAbortCallback)( struct __DMA_HandleTypeDef * hdma); /*!< DMA transfer abort callback */ - - __IO uint32_t ErrorCode; /*!< DMA Error code */ - - DMA_TypeDef *DmaBaseAddress; /*!< DMA Channel Base Address */ - - uint32_t ChannelIndex; /*!< DMA Channel Index */ - -} DMA_HandleTypeDef; -/** - * @} - */ - -/* Exported constants --------------------------------------------------------*/ - -/** @defgroup DMA_Exported_Constants DMA Exported Constants - * @{ - */ - -/** @defgroup DMA_Error_Code DMA Error Code - * @{ - */ -#define HAL_DMA_ERROR_NONE 0x00000000U /*!< No error */ -#define HAL_DMA_ERROR_TE 0x00000001U /*!< Transfer error */ -#define HAL_DMA_ERROR_NO_XFER 0x00000004U /*!< no ongoing transfer */ -#define HAL_DMA_ERROR_TIMEOUT 0x00000020U /*!< Timeout error */ -#define HAL_DMA_ERROR_NOT_SUPPORTED 0x00000100U /*!< Not supported mode */ -/** - * @} - */ - -/** @defgroup DMA_Data_transfer_direction DMA Data transfer direction - * @{ - */ -#define DMA_PERIPH_TO_MEMORY 0x00000000U /*!< Peripheral to memory direction */ -#define DMA_MEMORY_TO_PERIPH ((uint32_t)DMA_CCR_DIR) /*!< Memory to peripheral direction */ -#define DMA_MEMORY_TO_MEMORY ((uint32_t)DMA_CCR_MEM2MEM) /*!< Memory to memory direction */ - -/** - * @} - */ - -/** @defgroup DMA_Peripheral_incremented_mode DMA Peripheral incremented mode - * @{ - */ -#define DMA_PINC_ENABLE ((uint32_t)DMA_CCR_PINC) /*!< Peripheral increment mode Enable */ -#define DMA_PINC_DISABLE 0x00000000U /*!< Peripheral increment mode Disable */ -/** - * @} - */ - -/** @defgroup DMA_Memory_incremented_mode DMA Memory incremented mode - * @{ - */ -#define DMA_MINC_ENABLE ((uint32_t)DMA_CCR_MINC) /*!< Memory increment mode Enable */ -#define DMA_MINC_DISABLE 0x00000000U /*!< Memory increment mode Disable */ -/** - * @} - */ - -/** @defgroup DMA_Peripheral_data_size DMA Peripheral data size - * @{ - */ -#define DMA_PDATAALIGN_BYTE 0x00000000U /*!< Peripheral data alignment: Byte */ -#define DMA_PDATAALIGN_HALFWORD ((uint32_t)DMA_CCR_PSIZE_0) /*!< Peripheral data alignment: HalfWord */ -#define DMA_PDATAALIGN_WORD ((uint32_t)DMA_CCR_PSIZE_1) /*!< Peripheral data alignment: Word */ -/** - * @} - */ - -/** @defgroup DMA_Memory_data_size DMA Memory data size - * @{ - */ -#define DMA_MDATAALIGN_BYTE 0x00000000U /*!< Memory data alignment: Byte */ -#define DMA_MDATAALIGN_HALFWORD ((uint32_t)DMA_CCR_MSIZE_0) /*!< Memory data alignment: HalfWord */ -#define DMA_MDATAALIGN_WORD ((uint32_t)DMA_CCR_MSIZE_1) /*!< Memory data alignment: Word */ -/** - * @} - */ - -/** @defgroup DMA_mode DMA mode - * @{ - */ -#define DMA_NORMAL 0x00000000U /*!< Normal mode */ -#define DMA_CIRCULAR ((uint32_t)DMA_CCR_CIRC) /*!< Circular mode */ -/** - * @} - */ - -/** @defgroup DMA_Priority_level DMA Priority level - * @{ - */ -#define DMA_PRIORITY_LOW 0x00000000U /*!< Priority level : Low */ -#define DMA_PRIORITY_MEDIUM ((uint32_t)DMA_CCR_PL_0) /*!< Priority level : Medium */ -#define DMA_PRIORITY_HIGH ((uint32_t)DMA_CCR_PL_1) /*!< Priority level : High */ -#define DMA_PRIORITY_VERY_HIGH ((uint32_t)DMA_CCR_PL) /*!< Priority level : Very_High */ -/** - * @} - */ - - -/** @defgroup DMA_interrupt_enable_definitions DMA interrupt enable definitions - * @{ - */ -#define DMA_IT_TC ((uint32_t)DMA_CCR_TCIE) -#define DMA_IT_HT ((uint32_t)DMA_CCR_HTIE) -#define DMA_IT_TE ((uint32_t)DMA_CCR_TEIE) -/** - * @} - */ - -/** @defgroup DMA_flag_definitions DMA flag definitions - * @{ - */ -#define DMA_FLAG_GL1 0x00000001U -#define DMA_FLAG_TC1 0x00000002U -#define DMA_FLAG_HT1 0x00000004U -#define DMA_FLAG_TE1 0x00000008U -#define DMA_FLAG_GL2 0x00000010U -#define DMA_FLAG_TC2 0x00000020U -#define DMA_FLAG_HT2 0x00000040U -#define DMA_FLAG_TE2 0x00000080U -#define DMA_FLAG_GL3 0x00000100U -#define DMA_FLAG_TC3 0x00000200U -#define DMA_FLAG_HT3 0x00000400U -#define DMA_FLAG_TE3 0x00000800U -#define DMA_FLAG_GL4 0x00001000U -#define DMA_FLAG_TC4 0x00002000U -#define DMA_FLAG_HT4 0x00004000U -#define DMA_FLAG_TE4 0x00008000U -#define DMA_FLAG_GL5 0x00010000U -#define DMA_FLAG_TC5 0x00020000U -#define DMA_FLAG_HT5 0x00040000U -#define DMA_FLAG_TE5 0x00080000U -#define DMA_FLAG_GL6 0x00100000U -#define DMA_FLAG_TC6 0x00200000U -#define DMA_FLAG_HT6 0x00400000U -#define DMA_FLAG_TE6 0x00800000U -#define DMA_FLAG_GL7 0x01000000U -#define DMA_FLAG_TC7 0x02000000U -#define DMA_FLAG_HT7 0x04000000U -#define DMA_FLAG_TE7 0x08000000U -/** - * @} - */ - -/** - * @} - */ - - -/* Exported macros -----------------------------------------------------------*/ -/** @defgroup DMA_Exported_Macros DMA Exported Macros - * @{ - */ - -/** @brief Reset DMA handle state. - * @param __HANDLE__: DMA handle - * @retval None - */ -#define __HAL_DMA_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_DMA_STATE_RESET) - -/** - * @brief Enable the specified DMA Channel. - * @param __HANDLE__: DMA handle - * @retval None - */ -#define __HAL_DMA_ENABLE(__HANDLE__) (SET_BIT((__HANDLE__)->Instance->CCR, DMA_CCR_EN)) - -/** - * @brief Disable the specified DMA Channel. - * @param __HANDLE__: DMA handle - * @retval None - */ -#define __HAL_DMA_DISABLE(__HANDLE__) (CLEAR_BIT((__HANDLE__)->Instance->CCR, DMA_CCR_EN)) - - -/* Interrupt & Flag management */ - -/** - * @brief Enables the specified DMA Channel interrupts. - * @param __HANDLE__: DMA handle - * @param __INTERRUPT__: specifies the DMA interrupt sources to be enabled or disabled. - * This parameter can be any combination of the following values: - * @arg DMA_IT_TC: Transfer complete interrupt mask - * @arg DMA_IT_HT: Half transfer complete interrupt mask - * @arg DMA_IT_TE: Transfer error interrupt mask - * @retval None - */ -#define __HAL_DMA_ENABLE_IT(__HANDLE__, __INTERRUPT__) (SET_BIT((__HANDLE__)->Instance->CCR, (__INTERRUPT__))) - -/** - * @brief Disable the specified DMA Channel interrupts. - * @param __HANDLE__: DMA handle - * @param __INTERRUPT__: specifies the DMA interrupt sources to be enabled or disabled. - * This parameter can be any combination of the following values: - * @arg DMA_IT_TC: Transfer complete interrupt mask - * @arg DMA_IT_HT: Half transfer complete interrupt mask - * @arg DMA_IT_TE: Transfer error interrupt mask - * @retval None - */ -#define __HAL_DMA_DISABLE_IT(__HANDLE__, __INTERRUPT__) (CLEAR_BIT((__HANDLE__)->Instance->CCR , (__INTERRUPT__))) - -/** - * @brief Check whether the specified DMA Channel interrupt is enabled or not. - * @param __HANDLE__: DMA handle - * @param __INTERRUPT__: specifies the DMA interrupt source to check. - * This parameter can be one of the following values: - * @arg DMA_IT_TC: Transfer complete interrupt mask - * @arg DMA_IT_HT: Half transfer complete interrupt mask - * @arg DMA_IT_TE: Transfer error interrupt mask - * @retval The state of DMA_IT (SET or RESET). - */ -#define __HAL_DMA_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) ((((__HANDLE__)->Instance->CCR & (__INTERRUPT__)) == (__INTERRUPT__)) ? SET : RESET) - -/** - * @brief Return the number of remaining data units in the current DMA Channel transfer. - * @param __HANDLE__: DMA handle - * @retval The number of remaining data units in the current DMA Channel transfer. - */ -#define __HAL_DMA_GET_COUNTER(__HANDLE__) ((__HANDLE__)->Instance->CNDTR) - -/** - * @} - */ - -/* Include DMA HAL Extension module */ -#include "stm32f1xx_hal_dma_ex.h" - -/* Exported functions --------------------------------------------------------*/ -/** @addtogroup DMA_Exported_Functions - * @{ - */ - -/** @addtogroup DMA_Exported_Functions_Group1 - * @{ - */ -/* Initialization and de-initialization functions *****************************/ -HAL_StatusTypeDef HAL_DMA_Init(DMA_HandleTypeDef *hdma); -HAL_StatusTypeDef HAL_DMA_DeInit (DMA_HandleTypeDef *hdma); -/** - * @} - */ - -/** @addtogroup DMA_Exported_Functions_Group2 - * @{ - */ -/* IO operation functions *****************************************************/ -HAL_StatusTypeDef HAL_DMA_Start (DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength); -HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength); -HAL_StatusTypeDef HAL_DMA_Abort(DMA_HandleTypeDef *hdma); -HAL_StatusTypeDef HAL_DMA_Abort_IT(DMA_HandleTypeDef *hdma); -HAL_StatusTypeDef HAL_DMA_PollForTransfer(DMA_HandleTypeDef *hdma, uint32_t CompleteLevel, uint32_t Timeout); -void HAL_DMA_IRQHandler(DMA_HandleTypeDef *hdma); -HAL_StatusTypeDef HAL_DMA_RegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef CallbackID, void (* pCallback)( DMA_HandleTypeDef * _hdma)); -HAL_StatusTypeDef HAL_DMA_UnRegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef CallbackID); - -/** - * @} - */ - -/** @addtogroup DMA_Exported_Functions_Group3 - * @{ - */ -/* Peripheral State and Error functions ***************************************/ -HAL_DMA_StateTypeDef HAL_DMA_GetState(DMA_HandleTypeDef *hdma); -uint32_t HAL_DMA_GetError(DMA_HandleTypeDef *hdma); -/** - * @} - */ - -/** - * @} - */ - -/* Private macros ------------------------------------------------------------*/ -/** @defgroup DMA_Private_Macros DMA Private Macros - * @{ - */ - -#define IS_DMA_DIRECTION(DIRECTION) (((DIRECTION) == DMA_PERIPH_TO_MEMORY ) || \ - ((DIRECTION) == DMA_MEMORY_TO_PERIPH) || \ - ((DIRECTION) == DMA_MEMORY_TO_MEMORY)) - -#define IS_DMA_BUFFER_SIZE(SIZE) (((SIZE) >= 0x1U) && ((SIZE) < 0x10000U)) - -#define IS_DMA_PERIPHERAL_INC_STATE(STATE) (((STATE) == DMA_PINC_ENABLE) || \ - ((STATE) == DMA_PINC_DISABLE)) - -#define IS_DMA_MEMORY_INC_STATE(STATE) (((STATE) == DMA_MINC_ENABLE) || \ - ((STATE) == DMA_MINC_DISABLE)) - -#define IS_DMA_PERIPHERAL_DATA_SIZE(SIZE) (((SIZE) == DMA_PDATAALIGN_BYTE) || \ - ((SIZE) == DMA_PDATAALIGN_HALFWORD) || \ - ((SIZE) == DMA_PDATAALIGN_WORD)) - -#define IS_DMA_MEMORY_DATA_SIZE(SIZE) (((SIZE) == DMA_MDATAALIGN_BYTE) || \ - ((SIZE) == DMA_MDATAALIGN_HALFWORD) || \ - ((SIZE) == DMA_MDATAALIGN_WORD )) - -#define IS_DMA_MODE(MODE) (((MODE) == DMA_NORMAL ) || \ - ((MODE) == DMA_CIRCULAR)) - -#define IS_DMA_PRIORITY(PRIORITY) (((PRIORITY) == DMA_PRIORITY_LOW ) || \ - ((PRIORITY) == DMA_PRIORITY_MEDIUM) || \ - ((PRIORITY) == DMA_PRIORITY_HIGH) || \ - ((PRIORITY) == DMA_PRIORITY_VERY_HIGH)) - -/** - * @} - */ - -/* Private functions ---------------------------------------------------------*/ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /* __STM32F1xx_HAL_DMA_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_dma.h + * @author MCD Application Team + * @brief Header file of DMA HAL module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_HAL_DMA_H +#define __STM32F1xx_HAL_DMA_H + +#ifdef __cplusplus + extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup DMA + * @{ + */ + +/* Exported types ------------------------------------------------------------*/ + +/** @defgroup DMA_Exported_Types DMA Exported Types + * @{ + */ + +/** + * @brief DMA Configuration Structure definition + */ +typedef struct +{ + uint32_t Direction; /*!< Specifies if the data will be transferred from memory to peripheral, + from memory to memory or from peripheral to memory. + This parameter can be a value of @ref DMA_Data_transfer_direction */ + + uint32_t PeriphInc; /*!< Specifies whether the Peripheral address register should be incremented or not. + This parameter can be a value of @ref DMA_Peripheral_incremented_mode */ + + uint32_t MemInc; /*!< Specifies whether the memory address register should be incremented or not. + This parameter can be a value of @ref DMA_Memory_incremented_mode */ + + uint32_t PeriphDataAlignment; /*!< Specifies the Peripheral data width. + This parameter can be a value of @ref DMA_Peripheral_data_size */ + + uint32_t MemDataAlignment; /*!< Specifies the Memory data width. + This parameter can be a value of @ref DMA_Memory_data_size */ + + uint32_t Mode; /*!< Specifies the operation mode of the DMAy Channelx. + This parameter can be a value of @ref DMA_mode + @note The circular buffer mode cannot be used if the memory-to-memory + data transfer is configured on the selected Channel */ + + uint32_t Priority; /*!< Specifies the software priority for the DMAy Channelx. + This parameter can be a value of @ref DMA_Priority_level */ +} DMA_InitTypeDef; + +/** + * @brief HAL DMA State structures definition + */ +typedef enum +{ + HAL_DMA_STATE_RESET = 0x00U, /*!< DMA not yet initialized or disabled */ + HAL_DMA_STATE_READY = 0x01U, /*!< DMA initialized and ready for use */ + HAL_DMA_STATE_BUSY = 0x02U, /*!< DMA process is ongoing */ + HAL_DMA_STATE_TIMEOUT = 0x03U /*!< DMA timeout state */ +}HAL_DMA_StateTypeDef; + +/** + * @brief HAL DMA Error Code structure definition + */ +typedef enum +{ + HAL_DMA_FULL_TRANSFER = 0x00U, /*!< Full transfer */ + HAL_DMA_HALF_TRANSFER = 0x01U /*!< Half Transfer */ +}HAL_DMA_LevelCompleteTypeDef; + +/** + * @brief HAL DMA Callback ID structure definition + */ +typedef enum +{ + HAL_DMA_XFER_CPLT_CB_ID = 0x00U, /*!< Full transfer */ + HAL_DMA_XFER_HALFCPLT_CB_ID = 0x01U, /*!< Half transfer */ + HAL_DMA_XFER_ERROR_CB_ID = 0x02U, /*!< Error */ + HAL_DMA_XFER_ABORT_CB_ID = 0x03U, /*!< Abort */ + HAL_DMA_XFER_ALL_CB_ID = 0x04U /*!< All */ + +}HAL_DMA_CallbackIDTypeDef; + +/** + * @brief DMA handle Structure definition + */ +typedef struct __DMA_HandleTypeDef +{ + DMA_Channel_TypeDef *Instance; /*!< Register base address */ + + DMA_InitTypeDef Init; /*!< DMA communication parameters */ + + HAL_LockTypeDef Lock; /*!< DMA locking object */ + + HAL_DMA_StateTypeDef State; /*!< DMA transfer state */ + + void *Parent; /*!< Parent object state */ + + void (* XferCpltCallback)( struct __DMA_HandleTypeDef * hdma); /*!< DMA transfer complete callback */ + + void (* XferHalfCpltCallback)( struct __DMA_HandleTypeDef * hdma); /*!< DMA Half transfer complete callback */ + + void (* XferErrorCallback)( struct __DMA_HandleTypeDef * hdma); /*!< DMA transfer error callback */ + + void (* XferAbortCallback)( struct __DMA_HandleTypeDef * hdma); /*!< DMA transfer abort callback */ + + __IO uint32_t ErrorCode; /*!< DMA Error code */ + + DMA_TypeDef *DmaBaseAddress; /*!< DMA Channel Base Address */ + + uint32_t ChannelIndex; /*!< DMA Channel Index */ + +} DMA_HandleTypeDef; +/** + * @} + */ + +/* Exported constants --------------------------------------------------------*/ + +/** @defgroup DMA_Exported_Constants DMA Exported Constants + * @{ + */ + +/** @defgroup DMA_Error_Code DMA Error Code + * @{ + */ +#define HAL_DMA_ERROR_NONE 0x00000000U /*!< No error */ +#define HAL_DMA_ERROR_TE 0x00000001U /*!< Transfer error */ +#define HAL_DMA_ERROR_NO_XFER 0x00000004U /*!< no ongoing transfer */ +#define HAL_DMA_ERROR_TIMEOUT 0x00000020U /*!< Timeout error */ +#define HAL_DMA_ERROR_NOT_SUPPORTED 0x00000100U /*!< Not supported mode */ +/** + * @} + */ + +/** @defgroup DMA_Data_transfer_direction DMA Data transfer direction + * @{ + */ +#define DMA_PERIPH_TO_MEMORY 0x00000000U /*!< Peripheral to memory direction */ +#define DMA_MEMORY_TO_PERIPH ((uint32_t)DMA_CCR_DIR) /*!< Memory to peripheral direction */ +#define DMA_MEMORY_TO_MEMORY ((uint32_t)DMA_CCR_MEM2MEM) /*!< Memory to memory direction */ + +/** + * @} + */ + +/** @defgroup DMA_Peripheral_incremented_mode DMA Peripheral incremented mode + * @{ + */ +#define DMA_PINC_ENABLE ((uint32_t)DMA_CCR_PINC) /*!< Peripheral increment mode Enable */ +#define DMA_PINC_DISABLE 0x00000000U /*!< Peripheral increment mode Disable */ +/** + * @} + */ + +/** @defgroup DMA_Memory_incremented_mode DMA Memory incremented mode + * @{ + */ +#define DMA_MINC_ENABLE ((uint32_t)DMA_CCR_MINC) /*!< Memory increment mode Enable */ +#define DMA_MINC_DISABLE 0x00000000U /*!< Memory increment mode Disable */ +/** + * @} + */ + +/** @defgroup DMA_Peripheral_data_size DMA Peripheral data size + * @{ + */ +#define DMA_PDATAALIGN_BYTE 0x00000000U /*!< Peripheral data alignment: Byte */ +#define DMA_PDATAALIGN_HALFWORD ((uint32_t)DMA_CCR_PSIZE_0) /*!< Peripheral data alignment: HalfWord */ +#define DMA_PDATAALIGN_WORD ((uint32_t)DMA_CCR_PSIZE_1) /*!< Peripheral data alignment: Word */ +/** + * @} + */ + +/** @defgroup DMA_Memory_data_size DMA Memory data size + * @{ + */ +#define DMA_MDATAALIGN_BYTE 0x00000000U /*!< Memory data alignment: Byte */ +#define DMA_MDATAALIGN_HALFWORD ((uint32_t)DMA_CCR_MSIZE_0) /*!< Memory data alignment: HalfWord */ +#define DMA_MDATAALIGN_WORD ((uint32_t)DMA_CCR_MSIZE_1) /*!< Memory data alignment: Word */ +/** + * @} + */ + +/** @defgroup DMA_mode DMA mode + * @{ + */ +#define DMA_NORMAL 0x00000000U /*!< Normal mode */ +#define DMA_CIRCULAR ((uint32_t)DMA_CCR_CIRC) /*!< Circular mode */ +/** + * @} + */ + +/** @defgroup DMA_Priority_level DMA Priority level + * @{ + */ +#define DMA_PRIORITY_LOW 0x00000000U /*!< Priority level : Low */ +#define DMA_PRIORITY_MEDIUM ((uint32_t)DMA_CCR_PL_0) /*!< Priority level : Medium */ +#define DMA_PRIORITY_HIGH ((uint32_t)DMA_CCR_PL_1) /*!< Priority level : High */ +#define DMA_PRIORITY_VERY_HIGH ((uint32_t)DMA_CCR_PL) /*!< Priority level : Very_High */ +/** + * @} + */ + + +/** @defgroup DMA_interrupt_enable_definitions DMA interrupt enable definitions + * @{ + */ +#define DMA_IT_TC ((uint32_t)DMA_CCR_TCIE) +#define DMA_IT_HT ((uint32_t)DMA_CCR_HTIE) +#define DMA_IT_TE ((uint32_t)DMA_CCR_TEIE) +/** + * @} + */ + +/** @defgroup DMA_flag_definitions DMA flag definitions + * @{ + */ +#define DMA_FLAG_GL1 0x00000001U +#define DMA_FLAG_TC1 0x00000002U +#define DMA_FLAG_HT1 0x00000004U +#define DMA_FLAG_TE1 0x00000008U +#define DMA_FLAG_GL2 0x00000010U +#define DMA_FLAG_TC2 0x00000020U +#define DMA_FLAG_HT2 0x00000040U +#define DMA_FLAG_TE2 0x00000080U +#define DMA_FLAG_GL3 0x00000100U +#define DMA_FLAG_TC3 0x00000200U +#define DMA_FLAG_HT3 0x00000400U +#define DMA_FLAG_TE3 0x00000800U +#define DMA_FLAG_GL4 0x00001000U +#define DMA_FLAG_TC4 0x00002000U +#define DMA_FLAG_HT4 0x00004000U +#define DMA_FLAG_TE4 0x00008000U +#define DMA_FLAG_GL5 0x00010000U +#define DMA_FLAG_TC5 0x00020000U +#define DMA_FLAG_HT5 0x00040000U +#define DMA_FLAG_TE5 0x00080000U +#define DMA_FLAG_GL6 0x00100000U +#define DMA_FLAG_TC6 0x00200000U +#define DMA_FLAG_HT6 0x00400000U +#define DMA_FLAG_TE6 0x00800000U +#define DMA_FLAG_GL7 0x01000000U +#define DMA_FLAG_TC7 0x02000000U +#define DMA_FLAG_HT7 0x04000000U +#define DMA_FLAG_TE7 0x08000000U +/** + * @} + */ + +/** + * @} + */ + + +/* Exported macros -----------------------------------------------------------*/ +/** @defgroup DMA_Exported_Macros DMA Exported Macros + * @{ + */ + +/** @brief Reset DMA handle state. + * @param __HANDLE__: DMA handle + * @retval None + */ +#define __HAL_DMA_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_DMA_STATE_RESET) + +/** + * @brief Enable the specified DMA Channel. + * @param __HANDLE__: DMA handle + * @retval None + */ +#define __HAL_DMA_ENABLE(__HANDLE__) (SET_BIT((__HANDLE__)->Instance->CCR, DMA_CCR_EN)) + +/** + * @brief Disable the specified DMA Channel. + * @param __HANDLE__: DMA handle + * @retval None + */ +#define __HAL_DMA_DISABLE(__HANDLE__) (CLEAR_BIT((__HANDLE__)->Instance->CCR, DMA_CCR_EN)) + + +/* Interrupt & Flag management */ + +/** + * @brief Enables the specified DMA Channel interrupts. + * @param __HANDLE__: DMA handle + * @param __INTERRUPT__: specifies the DMA interrupt sources to be enabled or disabled. + * This parameter can be any combination of the following values: + * @arg DMA_IT_TC: Transfer complete interrupt mask + * @arg DMA_IT_HT: Half transfer complete interrupt mask + * @arg DMA_IT_TE: Transfer error interrupt mask + * @retval None + */ +#define __HAL_DMA_ENABLE_IT(__HANDLE__, __INTERRUPT__) (SET_BIT((__HANDLE__)->Instance->CCR, (__INTERRUPT__))) + +/** + * @brief Disable the specified DMA Channel interrupts. + * @param __HANDLE__: DMA handle + * @param __INTERRUPT__: specifies the DMA interrupt sources to be enabled or disabled. + * This parameter can be any combination of the following values: + * @arg DMA_IT_TC: Transfer complete interrupt mask + * @arg DMA_IT_HT: Half transfer complete interrupt mask + * @arg DMA_IT_TE: Transfer error interrupt mask + * @retval None + */ +#define __HAL_DMA_DISABLE_IT(__HANDLE__, __INTERRUPT__) (CLEAR_BIT((__HANDLE__)->Instance->CCR , (__INTERRUPT__))) + +/** + * @brief Check whether the specified DMA Channel interrupt is enabled or not. + * @param __HANDLE__: DMA handle + * @param __INTERRUPT__: specifies the DMA interrupt source to check. + * This parameter can be one of the following values: + * @arg DMA_IT_TC: Transfer complete interrupt mask + * @arg DMA_IT_HT: Half transfer complete interrupt mask + * @arg DMA_IT_TE: Transfer error interrupt mask + * @retval The state of DMA_IT (SET or RESET). + */ +#define __HAL_DMA_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) ((((__HANDLE__)->Instance->CCR & (__INTERRUPT__)) == (__INTERRUPT__)) ? SET : RESET) + +/** + * @brief Return the number of remaining data units in the current DMA Channel transfer. + * @param __HANDLE__: DMA handle + * @retval The number of remaining data units in the current DMA Channel transfer. + */ +#define __HAL_DMA_GET_COUNTER(__HANDLE__) ((__HANDLE__)->Instance->CNDTR) + +/** + * @} + */ + +/* Include DMA HAL Extension module */ +#include "stm32f1xx_hal_dma_ex.h" + +/* Exported functions --------------------------------------------------------*/ +/** @addtogroup DMA_Exported_Functions + * @{ + */ + +/** @addtogroup DMA_Exported_Functions_Group1 + * @{ + */ +/* Initialization and de-initialization functions *****************************/ +HAL_StatusTypeDef HAL_DMA_Init(DMA_HandleTypeDef *hdma); +HAL_StatusTypeDef HAL_DMA_DeInit (DMA_HandleTypeDef *hdma); +/** + * @} + */ + +/** @addtogroup DMA_Exported_Functions_Group2 + * @{ + */ +/* IO operation functions *****************************************************/ +HAL_StatusTypeDef HAL_DMA_Start (DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength); +HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength); +HAL_StatusTypeDef HAL_DMA_Abort(DMA_HandleTypeDef *hdma); +HAL_StatusTypeDef HAL_DMA_Abort_IT(DMA_HandleTypeDef *hdma); +HAL_StatusTypeDef HAL_DMA_PollForTransfer(DMA_HandleTypeDef *hdma, uint32_t CompleteLevel, uint32_t Timeout); +void HAL_DMA_IRQHandler(DMA_HandleTypeDef *hdma); +HAL_StatusTypeDef HAL_DMA_RegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef CallbackID, void (* pCallback)( DMA_HandleTypeDef * _hdma)); +HAL_StatusTypeDef HAL_DMA_UnRegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef CallbackID); + +/** + * @} + */ + +/** @addtogroup DMA_Exported_Functions_Group3 + * @{ + */ +/* Peripheral State and Error functions ***************************************/ +HAL_DMA_StateTypeDef HAL_DMA_GetState(DMA_HandleTypeDef *hdma); +uint32_t HAL_DMA_GetError(DMA_HandleTypeDef *hdma); +/** + * @} + */ + +/** + * @} + */ + +/* Private macros ------------------------------------------------------------*/ +/** @defgroup DMA_Private_Macros DMA Private Macros + * @{ + */ + +#define IS_DMA_DIRECTION(DIRECTION) (((DIRECTION) == DMA_PERIPH_TO_MEMORY ) || \ + ((DIRECTION) == DMA_MEMORY_TO_PERIPH) || \ + ((DIRECTION) == DMA_MEMORY_TO_MEMORY)) + +#define IS_DMA_BUFFER_SIZE(SIZE) (((SIZE) >= 0x1U) && ((SIZE) < 0x10000U)) + +#define IS_DMA_PERIPHERAL_INC_STATE(STATE) (((STATE) == DMA_PINC_ENABLE) || \ + ((STATE) == DMA_PINC_DISABLE)) + +#define IS_DMA_MEMORY_INC_STATE(STATE) (((STATE) == DMA_MINC_ENABLE) || \ + ((STATE) == DMA_MINC_DISABLE)) + +#define IS_DMA_PERIPHERAL_DATA_SIZE(SIZE) (((SIZE) == DMA_PDATAALIGN_BYTE) || \ + ((SIZE) == DMA_PDATAALIGN_HALFWORD) || \ + ((SIZE) == DMA_PDATAALIGN_WORD)) + +#define IS_DMA_MEMORY_DATA_SIZE(SIZE) (((SIZE) == DMA_MDATAALIGN_BYTE) || \ + ((SIZE) == DMA_MDATAALIGN_HALFWORD) || \ + ((SIZE) == DMA_MDATAALIGN_WORD )) + +#define IS_DMA_MODE(MODE) (((MODE) == DMA_NORMAL ) || \ + ((MODE) == DMA_CIRCULAR)) + +#define IS_DMA_PRIORITY(PRIORITY) (((PRIORITY) == DMA_PRIORITY_LOW ) || \ + ((PRIORITY) == DMA_PRIORITY_MEDIUM) || \ + ((PRIORITY) == DMA_PRIORITY_HIGH) || \ + ((PRIORITY) == DMA_PRIORITY_VERY_HIGH)) + +/** + * @} + */ + +/* Private functions ---------------------------------------------------------*/ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F1xx_HAL_DMA_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h index d861f50..2de1a2d 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h @@ -1,277 +1,277 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_dma_ex.h - * @author MCD Application Team - * @brief Header file of DMA HAL extension module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_HAL_DMA_EX_H -#define __STM32F1xx_HAL_DMA_EX_H - -#ifdef __cplusplus - extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup DMAEx DMAEx - * @{ - */ - -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ -/* Exported macro ------------------------------------------------------------*/ -/** @defgroup DMAEx_Exported_Macros DMA Extended Exported Macros - * @{ - */ -/* Interrupt & Flag management */ -#if defined (STM32F100xE) || defined (STM32F101xE) || defined (STM32F101xG) || defined (STM32F103xE) || \ - defined (STM32F103xG) || defined (STM32F105xC) || defined (STM32F107xC) -/** @defgroup DMAEx_High_density_XL_density_Product_devices DMAEx High density and XL density product devices - * @{ - */ - -/** - * @brief Returns the current DMA Channel transfer complete flag. - * @param __HANDLE__: DMA handle - * @retval The specified transfer complete flag index. - */ -#define __HAL_DMA_GET_TC_FLAG_INDEX(__HANDLE__) \ -(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TC1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TC2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TC3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TC4 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TC5 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TC6 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel7))? DMA_FLAG_TC7 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel1))? DMA_FLAG_TC1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel2))? DMA_FLAG_TC2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel3))? DMA_FLAG_TC3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel4))? DMA_FLAG_TC4 :\ - DMA_FLAG_TC5) - -/** - * @brief Returns the current DMA Channel half transfer complete flag. - * @param __HANDLE__: DMA handle - * @retval The specified half transfer complete flag index. - */ -#define __HAL_DMA_GET_HT_FLAG_INDEX(__HANDLE__)\ -(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_HT1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_HT2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_HT3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_HT4 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_HT5 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_HT6 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel7))? DMA_FLAG_HT7 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel1))? DMA_FLAG_HT1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel2))? DMA_FLAG_HT2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel3))? DMA_FLAG_HT3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel4))? DMA_FLAG_HT4 :\ - DMA_FLAG_HT5) - -/** - * @brief Returns the current DMA Channel transfer error flag. - * @param __HANDLE__: DMA handle - * @retval The specified transfer error flag index. - */ -#define __HAL_DMA_GET_TE_FLAG_INDEX(__HANDLE__)\ -(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TE1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TE2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TE3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TE4 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TE5 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TE6 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel7))? DMA_FLAG_TE7 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel1))? DMA_FLAG_TE1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel2))? DMA_FLAG_TE2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel3))? DMA_FLAG_TE3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel4))? DMA_FLAG_TE4 :\ - DMA_FLAG_TE5) - -/** - * @brief Return the current DMA Channel Global interrupt flag. - * @param __HANDLE__: DMA handle - * @retval The specified transfer error flag index. - */ -#define __HAL_DMA_GET_GI_FLAG_INDEX(__HANDLE__)\ -(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_GL1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_GL2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_GL3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_GL4 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_GL5 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_GL6 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel7))? DMA_FLAG_GL7 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel1))? DMA_FLAG_GL1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel2))? DMA_FLAG_GL2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel3))? DMA_FLAG_GL3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel4))? DMA_FLAG_GL4 :\ - DMA_FLAG_GL5) - -/** - * @brief Get the DMA Channel pending flags. - * @param __HANDLE__: DMA handle - * @param __FLAG__: Get the specified flag. - * This parameter can be any combination of the following values: - * @arg DMA_FLAG_TCx: Transfer complete flag - * @arg DMA_FLAG_HTx: Half transfer complete flag - * @arg DMA_FLAG_TEx: Transfer error flag - * Where x can be 1_7 or 1_5 (depending on DMA1 or DMA2) to select the DMA Channel flag. - * @retval The state of FLAG (SET or RESET). - */ -#define __HAL_DMA_GET_FLAG(__HANDLE__, __FLAG__)\ -(((uint32_t)((__HANDLE__)->Instance) > (uint32_t)DMA1_Channel7)? (DMA2->ISR & (__FLAG__)) :\ - (DMA1->ISR & (__FLAG__))) - -/** - * @brief Clears the DMA Channel pending flags. - * @param __HANDLE__: DMA handle - * @param __FLAG__: specifies the flag to clear. - * This parameter can be any combination of the following values: - * @arg DMA_FLAG_TCx: Transfer complete flag - * @arg DMA_FLAG_HTx: Half transfer complete flag - * @arg DMA_FLAG_TEx: Transfer error flag - * Where x can be 1_7 or 1_5 (depending on DMA1 or DMA2) to select the DMA Channel flag. - * @retval None - */ -#define __HAL_DMA_CLEAR_FLAG(__HANDLE__, __FLAG__) \ -(((uint32_t)((__HANDLE__)->Instance) > (uint32_t)DMA1_Channel7)? (DMA2->IFCR = (__FLAG__)) :\ - (DMA1->IFCR = (__FLAG__))) - -/** - * @} - */ - -#else -/** @defgroup DMA_Low_density_Medium_density_Product_devices DMA Low density and Medium density product devices - * @{ - */ - -/** - * @brief Returns the current DMA Channel transfer complete flag. - * @param __HANDLE__: DMA handle - * @retval The specified transfer complete flag index. - */ -#define __HAL_DMA_GET_TC_FLAG_INDEX(__HANDLE__) \ -(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TC1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TC2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TC3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TC4 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TC5 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TC6 :\ - DMA_FLAG_TC7) - -/** - * @brief Return the current DMA Channel half transfer complete flag. - * @param __HANDLE__: DMA handle - * @retval The specified half transfer complete flag index. - */ -#define __HAL_DMA_GET_HT_FLAG_INDEX(__HANDLE__)\ -(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_HT1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_HT2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_HT3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_HT4 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_HT5 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_HT6 :\ - DMA_FLAG_HT7) - -/** - * @brief Return the current DMA Channel transfer error flag. - * @param __HANDLE__: DMA handle - * @retval The specified transfer error flag index. - */ -#define __HAL_DMA_GET_TE_FLAG_INDEX(__HANDLE__)\ -(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TE1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TE2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TE3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TE4 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TE5 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TE6 :\ - DMA_FLAG_TE7) - -/** - * @brief Return the current DMA Channel Global interrupt flag. - * @param __HANDLE__: DMA handle - * @retval The specified transfer error flag index. - */ -#define __HAL_DMA_GET_GI_FLAG_INDEX(__HANDLE__)\ -(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_GL1 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_GL2 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_GL3 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_GL4 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_GL5 :\ - ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_GL6 :\ - DMA_FLAG_GL7) - -/** - * @brief Get the DMA Channel pending flags. - * @param __HANDLE__: DMA handle - * @param __FLAG__: Get the specified flag. - * This parameter can be any combination of the following values: - * @arg DMA_FLAG_TCx: Transfer complete flag - * @arg DMA_FLAG_HTx: Half transfer complete flag - * @arg DMA_FLAG_TEx: Transfer error flag - * @arg DMA_FLAG_GLx: Global interrupt flag - * Where x can be 1_7 to select the DMA Channel flag. - * @retval The state of FLAG (SET or RESET). - */ - -#define __HAL_DMA_GET_FLAG(__HANDLE__, __FLAG__) (DMA1->ISR & (__FLAG__)) - -/** - * @brief Clear the DMA Channel pending flags. - * @param __HANDLE__: DMA handle - * @param __FLAG__: specifies the flag to clear. - * This parameter can be any combination of the following values: - * @arg DMA_FLAG_TCx: Transfer complete flag - * @arg DMA_FLAG_HTx: Half transfer complete flag - * @arg DMA_FLAG_TEx: Transfer error flag - * @arg DMA_FLAG_GLx: Global interrupt flag - * Where x can be 1_7 to select the DMA Channel flag. - * @retval None - */ -#define __HAL_DMA_CLEAR_FLAG(__HANDLE__, __FLAG__) (DMA1->IFCR = (__FLAG__)) - -/** - * @} - */ - -#endif - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif /* STM32F100xE || STM32F101xE || STM32F101xG || STM32F103xE || */ - /* STM32F103xG || STM32F105xC || STM32F107xC */ - -#endif /* __STM32F1xx_HAL_DMA_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_dma_ex.h + * @author MCD Application Team + * @brief Header file of DMA HAL extension module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_HAL_DMA_EX_H +#define __STM32F1xx_HAL_DMA_EX_H + +#ifdef __cplusplus + extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup DMAEx DMAEx + * @{ + */ + +/* Exported types ------------------------------------------------------------*/ +/* Exported constants --------------------------------------------------------*/ +/* Exported macro ------------------------------------------------------------*/ +/** @defgroup DMAEx_Exported_Macros DMA Extended Exported Macros + * @{ + */ +/* Interrupt & Flag management */ +#if defined (STM32F100xE) || defined (STM32F101xE) || defined (STM32F101xG) || defined (STM32F103xE) || \ + defined (STM32F103xG) || defined (STM32F105xC) || defined (STM32F107xC) +/** @defgroup DMAEx_High_density_XL_density_Product_devices DMAEx High density and XL density product devices + * @{ + */ + +/** + * @brief Returns the current DMA Channel transfer complete flag. + * @param __HANDLE__: DMA handle + * @retval The specified transfer complete flag index. + */ +#define __HAL_DMA_GET_TC_FLAG_INDEX(__HANDLE__) \ +(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TC1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TC2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TC3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TC4 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TC5 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TC6 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel7))? DMA_FLAG_TC7 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel1))? DMA_FLAG_TC1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel2))? DMA_FLAG_TC2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel3))? DMA_FLAG_TC3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel4))? DMA_FLAG_TC4 :\ + DMA_FLAG_TC5) + +/** + * @brief Returns the current DMA Channel half transfer complete flag. + * @param __HANDLE__: DMA handle + * @retval The specified half transfer complete flag index. + */ +#define __HAL_DMA_GET_HT_FLAG_INDEX(__HANDLE__)\ +(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_HT1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_HT2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_HT3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_HT4 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_HT5 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_HT6 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel7))? DMA_FLAG_HT7 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel1))? DMA_FLAG_HT1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel2))? DMA_FLAG_HT2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel3))? DMA_FLAG_HT3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel4))? DMA_FLAG_HT4 :\ + DMA_FLAG_HT5) + +/** + * @brief Returns the current DMA Channel transfer error flag. + * @param __HANDLE__: DMA handle + * @retval The specified transfer error flag index. + */ +#define __HAL_DMA_GET_TE_FLAG_INDEX(__HANDLE__)\ +(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TE1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TE2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TE3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TE4 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TE5 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TE6 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel7))? DMA_FLAG_TE7 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel1))? DMA_FLAG_TE1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel2))? DMA_FLAG_TE2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel3))? DMA_FLAG_TE3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel4))? DMA_FLAG_TE4 :\ + DMA_FLAG_TE5) + +/** + * @brief Return the current DMA Channel Global interrupt flag. + * @param __HANDLE__: DMA handle + * @retval The specified transfer error flag index. + */ +#define __HAL_DMA_GET_GI_FLAG_INDEX(__HANDLE__)\ +(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_GL1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_GL2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_GL3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_GL4 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_GL5 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_GL6 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel7))? DMA_FLAG_GL7 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel1))? DMA_FLAG_GL1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel2))? DMA_FLAG_GL2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel3))? DMA_FLAG_GL3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA2_Channel4))? DMA_FLAG_GL4 :\ + DMA_FLAG_GL5) + +/** + * @brief Get the DMA Channel pending flags. + * @param __HANDLE__: DMA handle + * @param __FLAG__: Get the specified flag. + * This parameter can be any combination of the following values: + * @arg DMA_FLAG_TCx: Transfer complete flag + * @arg DMA_FLAG_HTx: Half transfer complete flag + * @arg DMA_FLAG_TEx: Transfer error flag + * Where x can be 1_7 or 1_5 (depending on DMA1 or DMA2) to select the DMA Channel flag. + * @retval The state of FLAG (SET or RESET). + */ +#define __HAL_DMA_GET_FLAG(__HANDLE__, __FLAG__)\ +(((uint32_t)((__HANDLE__)->Instance) > (uint32_t)DMA1_Channel7)? (DMA2->ISR & (__FLAG__)) :\ + (DMA1->ISR & (__FLAG__))) + +/** + * @brief Clears the DMA Channel pending flags. + * @param __HANDLE__: DMA handle + * @param __FLAG__: specifies the flag to clear. + * This parameter can be any combination of the following values: + * @arg DMA_FLAG_TCx: Transfer complete flag + * @arg DMA_FLAG_HTx: Half transfer complete flag + * @arg DMA_FLAG_TEx: Transfer error flag + * Where x can be 1_7 or 1_5 (depending on DMA1 or DMA2) to select the DMA Channel flag. + * @retval None + */ +#define __HAL_DMA_CLEAR_FLAG(__HANDLE__, __FLAG__) \ +(((uint32_t)((__HANDLE__)->Instance) > (uint32_t)DMA1_Channel7)? (DMA2->IFCR = (__FLAG__)) :\ + (DMA1->IFCR = (__FLAG__))) + +/** + * @} + */ + +#else +/** @defgroup DMA_Low_density_Medium_density_Product_devices DMA Low density and Medium density product devices + * @{ + */ + +/** + * @brief Returns the current DMA Channel transfer complete flag. + * @param __HANDLE__: DMA handle + * @retval The specified transfer complete flag index. + */ +#define __HAL_DMA_GET_TC_FLAG_INDEX(__HANDLE__) \ +(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TC1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TC2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TC3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TC4 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TC5 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TC6 :\ + DMA_FLAG_TC7) + +/** + * @brief Return the current DMA Channel half transfer complete flag. + * @param __HANDLE__: DMA handle + * @retval The specified half transfer complete flag index. + */ +#define __HAL_DMA_GET_HT_FLAG_INDEX(__HANDLE__)\ +(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_HT1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_HT2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_HT3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_HT4 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_HT5 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_HT6 :\ + DMA_FLAG_HT7) + +/** + * @brief Return the current DMA Channel transfer error flag. + * @param __HANDLE__: DMA handle + * @retval The specified transfer error flag index. + */ +#define __HAL_DMA_GET_TE_FLAG_INDEX(__HANDLE__)\ +(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_TE1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_TE2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_TE3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_TE4 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_TE5 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_TE6 :\ + DMA_FLAG_TE7) + +/** + * @brief Return the current DMA Channel Global interrupt flag. + * @param __HANDLE__: DMA handle + * @retval The specified transfer error flag index. + */ +#define __HAL_DMA_GET_GI_FLAG_INDEX(__HANDLE__)\ +(((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel1))? DMA_FLAG_GL1 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel2))? DMA_FLAG_GL2 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel3))? DMA_FLAG_GL3 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel4))? DMA_FLAG_GL4 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel5))? DMA_FLAG_GL5 :\ + ((uint32_t)((__HANDLE__)->Instance) == ((uint32_t)DMA1_Channel6))? DMA_FLAG_GL6 :\ + DMA_FLAG_GL7) + +/** + * @brief Get the DMA Channel pending flags. + * @param __HANDLE__: DMA handle + * @param __FLAG__: Get the specified flag. + * This parameter can be any combination of the following values: + * @arg DMA_FLAG_TCx: Transfer complete flag + * @arg DMA_FLAG_HTx: Half transfer complete flag + * @arg DMA_FLAG_TEx: Transfer error flag + * @arg DMA_FLAG_GLx: Global interrupt flag + * Where x can be 1_7 to select the DMA Channel flag. + * @retval The state of FLAG (SET or RESET). + */ + +#define __HAL_DMA_GET_FLAG(__HANDLE__, __FLAG__) (DMA1->ISR & (__FLAG__)) + +/** + * @brief Clear the DMA Channel pending flags. + * @param __HANDLE__: DMA handle + * @param __FLAG__: specifies the flag to clear. + * This parameter can be any combination of the following values: + * @arg DMA_FLAG_TCx: Transfer complete flag + * @arg DMA_FLAG_HTx: Half transfer complete flag + * @arg DMA_FLAG_TEx: Transfer error flag + * @arg DMA_FLAG_GLx: Global interrupt flag + * Where x can be 1_7 to select the DMA Channel flag. + * @retval None + */ +#define __HAL_DMA_CLEAR_FLAG(__HANDLE__, __FLAG__) (DMA1->IFCR = (__FLAG__)) + +/** + * @} + */ + +#endif + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif /* STM32F100xE || STM32F101xE || STM32F101xG || STM32F103xE || */ + /* STM32F103xG || STM32F105xC || STM32F107xC */ + +#endif /* __STM32F1xx_HAL_DMA_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h index e42e8c0..3a79557 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h @@ -1,320 +1,320 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_exti.h - * @author MCD Application Team - * @brief Header file of EXTI HAL module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2019 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef STM32F1xx_HAL_EXTI_H -#define STM32F1xx_HAL_EXTI_H - -#ifdef __cplusplus -extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup EXTI EXTI - * @brief EXTI HAL module driver - * @{ - */ - -/* Exported types ------------------------------------------------------------*/ - -/** @defgroup EXTI_Exported_Types EXTI Exported Types - * @{ - */ - -/** - * @brief HAL EXTI common Callback ID enumeration definition - */ -typedef enum -{ - HAL_EXTI_COMMON_CB_ID = 0x00U -} EXTI_CallbackIDTypeDef; - -/** - * @brief EXTI Handle structure definition - */ -typedef struct -{ - uint32_t Line; /*!< Exti line number */ - void (* PendingCallback)(void); /*!< Exti pending callback */ -} EXTI_HandleTypeDef; - -/** - * @brief EXTI Configuration structure definition - */ -typedef struct -{ - uint32_t Line; /*!< The Exti line to be configured. This parameter - can be a value of @ref EXTI_Line */ - uint32_t Mode; /*!< The Exit Mode to be configured for a core. - This parameter can be a combination of @ref EXTI_Mode */ - uint32_t Trigger; /*!< The Exti Trigger to be configured. This parameter - can be a value of @ref EXTI_Trigger */ - uint32_t GPIOSel; /*!< The Exti GPIO multiplexer selection to be configured. - This parameter is only possible for line 0 to 15. It - can be a value of @ref EXTI_GPIOSel */ -} EXTI_ConfigTypeDef; - -/** - * @} - */ - -/* Exported constants --------------------------------------------------------*/ -/** @defgroup EXTI_Exported_Constants EXTI Exported Constants - * @{ - */ - -/** @defgroup EXTI_Line EXTI Line - * @{ - */ -#define EXTI_LINE_0 (EXTI_GPIO | 0x00u) /*!< External interrupt line 0 */ -#define EXTI_LINE_1 (EXTI_GPIO | 0x01u) /*!< External interrupt line 1 */ -#define EXTI_LINE_2 (EXTI_GPIO | 0x02u) /*!< External interrupt line 2 */ -#define EXTI_LINE_3 (EXTI_GPIO | 0x03u) /*!< External interrupt line 3 */ -#define EXTI_LINE_4 (EXTI_GPIO | 0x04u) /*!< External interrupt line 4 */ -#define EXTI_LINE_5 (EXTI_GPIO | 0x05u) /*!< External interrupt line 5 */ -#define EXTI_LINE_6 (EXTI_GPIO | 0x06u) /*!< External interrupt line 6 */ -#define EXTI_LINE_7 (EXTI_GPIO | 0x07u) /*!< External interrupt line 7 */ -#define EXTI_LINE_8 (EXTI_GPIO | 0x08u) /*!< External interrupt line 8 */ -#define EXTI_LINE_9 (EXTI_GPIO | 0x09u) /*!< External interrupt line 9 */ -#define EXTI_LINE_10 (EXTI_GPIO | 0x0Au) /*!< External interrupt line 10 */ -#define EXTI_LINE_11 (EXTI_GPIO | 0x0Bu) /*!< External interrupt line 11 */ -#define EXTI_LINE_12 (EXTI_GPIO | 0x0Cu) /*!< External interrupt line 12 */ -#define EXTI_LINE_13 (EXTI_GPIO | 0x0Du) /*!< External interrupt line 13 */ -#define EXTI_LINE_14 (EXTI_GPIO | 0x0Eu) /*!< External interrupt line 14 */ -#define EXTI_LINE_15 (EXTI_GPIO | 0x0Fu) /*!< External interrupt line 15 */ -#define EXTI_LINE_16 (EXTI_CONFIG | 0x10u) /*!< External interrupt line 16 Connected to the PVD Output */ -#define EXTI_LINE_17 (EXTI_CONFIG | 0x11u) /*!< External interrupt line 17 Connected to the RTC Alarm event */ -#if defined(EXTI_IMR_IM18) -#define EXTI_LINE_18 (EXTI_CONFIG | 0x12u) /*!< External interrupt line 18 Connected to the USB Wakeup from suspend event */ -#endif /* EXTI_IMR_IM18 */ -#if defined(EXTI_IMR_IM19) -#define EXTI_LINE_19 (EXTI_CONFIG | 0x13u) /*!< External interrupt line 19 Connected to the Ethernet Wakeup event */ -#endif /* EXTI_IMR_IM19 */ - -/** - * @} - */ - -/** @defgroup EXTI_Mode EXTI Mode - * @{ - */ -#define EXTI_MODE_NONE 0x00000000u -#define EXTI_MODE_INTERRUPT 0x00000001u -#define EXTI_MODE_EVENT 0x00000002u -/** - * @} - */ - -/** @defgroup EXTI_Trigger EXTI Trigger - * @{ - */ -#define EXTI_TRIGGER_NONE 0x00000000u -#define EXTI_TRIGGER_RISING 0x00000001u -#define EXTI_TRIGGER_FALLING 0x00000002u -#define EXTI_TRIGGER_RISING_FALLING (EXTI_TRIGGER_RISING | EXTI_TRIGGER_FALLING) -/** - * @} - */ - -/** @defgroup EXTI_GPIOSel EXTI GPIOSel - * @brief - * @{ - */ -#define EXTI_GPIOA 0x00000000u -#define EXTI_GPIOB 0x00000001u -#define EXTI_GPIOC 0x00000002u -#define EXTI_GPIOD 0x00000003u -#if defined (GPIOE) -#define EXTI_GPIOE 0x00000004u -#endif /* GPIOE */ -#if defined (GPIOF) -#define EXTI_GPIOF 0x00000005u -#endif /* GPIOF */ -#if defined (GPIOG) -#define EXTI_GPIOG 0x00000006u -#endif /* GPIOG */ -/** - * @} - */ - -/** - * @} - */ - -/* Exported macro ------------------------------------------------------------*/ -/** @defgroup EXTI_Exported_Macros EXTI Exported Macros - * @{ - */ - -/** - * @} - */ - -/* Private constants --------------------------------------------------------*/ -/** @defgroup EXTI_Private_Constants EXTI Private Constants - * @{ - */ -/** - * @brief EXTI Line property definition - */ -#define EXTI_PROPERTY_SHIFT 24u -#define EXTI_CONFIG (0x02uL << EXTI_PROPERTY_SHIFT) -#define EXTI_GPIO ((0x04uL << EXTI_PROPERTY_SHIFT) | EXTI_CONFIG) -#define EXTI_PROPERTY_MASK (EXTI_CONFIG | EXTI_GPIO) - -/** - * @brief EXTI bit usage - */ -#define EXTI_PIN_MASK 0x0000001Fu - -/** - * @brief EXTI Mask for interrupt & event mode - */ -#define EXTI_MODE_MASK (EXTI_MODE_EVENT | EXTI_MODE_INTERRUPT) - -/** - * @brief EXTI Mask for trigger possibilities - */ -#define EXTI_TRIGGER_MASK (EXTI_TRIGGER_RISING | EXTI_TRIGGER_FALLING) - -/** - * @brief EXTI Line number - */ -#if defined(EXTI_IMR_IM19) -#define EXTI_LINE_NB 20UL -#elif defined(EXTI_IMR_IM18) -#define EXTI_LINE_NB 19UL -#else /* EXTI_IMR_IM17 */ -#define EXTI_LINE_NB 18UL -#endif /* EXTI_IMR_IM19 */ -/** - * @} - */ - -/* Private macros ------------------------------------------------------------*/ -/** @defgroup EXTI_Private_Macros EXTI Private Macros - * @{ - */ -#define IS_EXTI_LINE(__EXTI_LINE__) ((((__EXTI_LINE__) & ~(EXTI_PROPERTY_MASK | EXTI_PIN_MASK)) == 0x00u) && \ - ((((__EXTI_LINE__) & EXTI_PROPERTY_MASK) == EXTI_CONFIG) || \ - (((__EXTI_LINE__) & EXTI_PROPERTY_MASK) == EXTI_GPIO)) && \ - (((__EXTI_LINE__) & EXTI_PIN_MASK) < EXTI_LINE_NB)) - -#define IS_EXTI_MODE(__EXTI_LINE__) ((((__EXTI_LINE__) & EXTI_MODE_MASK) != 0x00u) && \ - (((__EXTI_LINE__) & ~EXTI_MODE_MASK) == 0x00u)) - -#define IS_EXTI_TRIGGER(__EXTI_LINE__) (((__EXTI_LINE__) & ~EXTI_TRIGGER_MASK) == 0x00u) - -#define IS_EXTI_PENDING_EDGE(__EXTI_LINE__) ((__EXTI_LINE__) == EXTI_TRIGGER_RISING_FALLING) - -#define IS_EXTI_CONFIG_LINE(__EXTI_LINE__) (((__EXTI_LINE__) & EXTI_CONFIG) != 0x00u) - -#if defined (GPIOG) -#define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ - ((__PORT__) == EXTI_GPIOB) || \ - ((__PORT__) == EXTI_GPIOC) || \ - ((__PORT__) == EXTI_GPIOD) || \ - ((__PORT__) == EXTI_GPIOE) || \ - ((__PORT__) == EXTI_GPIOF) || \ - ((__PORT__) == EXTI_GPIOG)) -#elif defined (GPIOF) -#define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ - ((__PORT__) == EXTI_GPIOB) || \ - ((__PORT__) == EXTI_GPIOC) || \ - ((__PORT__) == EXTI_GPIOD) || \ - ((__PORT__) == EXTI_GPIOE) || \ - ((__PORT__) == EXTI_GPIOF)) -#elif defined (GPIOE) -#define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ - ((__PORT__) == EXTI_GPIOB) || \ - ((__PORT__) == EXTI_GPIOC) || \ - ((__PORT__) == EXTI_GPIOD) || \ - ((__PORT__) == EXTI_GPIOE)) -#else -#define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ - ((__PORT__) == EXTI_GPIOB) || \ - ((__PORT__) == EXTI_GPIOC) || \ - ((__PORT__) == EXTI_GPIOD)) -#endif /* GPIOG */ - -#define IS_EXTI_GPIO_PIN(__PIN__) ((__PIN__) < 16u) - -/** - * @} - */ - -/* Exported functions --------------------------------------------------------*/ -/** @defgroup EXTI_Exported_Functions EXTI Exported Functions - * @brief EXTI Exported Functions - * @{ - */ - -/** @defgroup EXTI_Exported_Functions_Group1 Configuration functions - * @brief Configuration functions - * @{ - */ -/* Configuration functions ****************************************************/ -HAL_StatusTypeDef HAL_EXTI_SetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig); -HAL_StatusTypeDef HAL_EXTI_GetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig); -HAL_StatusTypeDef HAL_EXTI_ClearConfigLine(EXTI_HandleTypeDef *hexti); -HAL_StatusTypeDef HAL_EXTI_RegisterCallback(EXTI_HandleTypeDef *hexti, EXTI_CallbackIDTypeDef CallbackID, void (*pPendingCbfn)(void)); -HAL_StatusTypeDef HAL_EXTI_GetHandle(EXTI_HandleTypeDef *hexti, uint32_t ExtiLine); -/** - * @} - */ - -/** @defgroup EXTI_Exported_Functions_Group2 IO operation functions - * @brief IO operation functions - * @{ - */ -/* IO operation functions *****************************************************/ -void HAL_EXTI_IRQHandler(EXTI_HandleTypeDef *hexti); -uint32_t HAL_EXTI_GetPending(EXTI_HandleTypeDef *hexti, uint32_t Edge); -void HAL_EXTI_ClearPending(EXTI_HandleTypeDef *hexti, uint32_t Edge); -void HAL_EXTI_GenerateSWI(EXTI_HandleTypeDef *hexti); - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /* STM32F1xx_HAL_EXTI_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_exti.h + * @author MCD Application Team + * @brief Header file of EXTI HAL module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2019 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef STM32F1xx_HAL_EXTI_H +#define STM32F1xx_HAL_EXTI_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup EXTI EXTI + * @brief EXTI HAL module driver + * @{ + */ + +/* Exported types ------------------------------------------------------------*/ + +/** @defgroup EXTI_Exported_Types EXTI Exported Types + * @{ + */ + +/** + * @brief HAL EXTI common Callback ID enumeration definition + */ +typedef enum +{ + HAL_EXTI_COMMON_CB_ID = 0x00U +} EXTI_CallbackIDTypeDef; + +/** + * @brief EXTI Handle structure definition + */ +typedef struct +{ + uint32_t Line; /*!< Exti line number */ + void (* PendingCallback)(void); /*!< Exti pending callback */ +} EXTI_HandleTypeDef; + +/** + * @brief EXTI Configuration structure definition + */ +typedef struct +{ + uint32_t Line; /*!< The Exti line to be configured. This parameter + can be a value of @ref EXTI_Line */ + uint32_t Mode; /*!< The Exit Mode to be configured for a core. + This parameter can be a combination of @ref EXTI_Mode */ + uint32_t Trigger; /*!< The Exti Trigger to be configured. This parameter + can be a value of @ref EXTI_Trigger */ + uint32_t GPIOSel; /*!< The Exti GPIO multiplexer selection to be configured. + This parameter is only possible for line 0 to 15. It + can be a value of @ref EXTI_GPIOSel */ +} EXTI_ConfigTypeDef; + +/** + * @} + */ + +/* Exported constants --------------------------------------------------------*/ +/** @defgroup EXTI_Exported_Constants EXTI Exported Constants + * @{ + */ + +/** @defgroup EXTI_Line EXTI Line + * @{ + */ +#define EXTI_LINE_0 (EXTI_GPIO | 0x00u) /*!< External interrupt line 0 */ +#define EXTI_LINE_1 (EXTI_GPIO | 0x01u) /*!< External interrupt line 1 */ +#define EXTI_LINE_2 (EXTI_GPIO | 0x02u) /*!< External interrupt line 2 */ +#define EXTI_LINE_3 (EXTI_GPIO | 0x03u) /*!< External interrupt line 3 */ +#define EXTI_LINE_4 (EXTI_GPIO | 0x04u) /*!< External interrupt line 4 */ +#define EXTI_LINE_5 (EXTI_GPIO | 0x05u) /*!< External interrupt line 5 */ +#define EXTI_LINE_6 (EXTI_GPIO | 0x06u) /*!< External interrupt line 6 */ +#define EXTI_LINE_7 (EXTI_GPIO | 0x07u) /*!< External interrupt line 7 */ +#define EXTI_LINE_8 (EXTI_GPIO | 0x08u) /*!< External interrupt line 8 */ +#define EXTI_LINE_9 (EXTI_GPIO | 0x09u) /*!< External interrupt line 9 */ +#define EXTI_LINE_10 (EXTI_GPIO | 0x0Au) /*!< External interrupt line 10 */ +#define EXTI_LINE_11 (EXTI_GPIO | 0x0Bu) /*!< External interrupt line 11 */ +#define EXTI_LINE_12 (EXTI_GPIO | 0x0Cu) /*!< External interrupt line 12 */ +#define EXTI_LINE_13 (EXTI_GPIO | 0x0Du) /*!< External interrupt line 13 */ +#define EXTI_LINE_14 (EXTI_GPIO | 0x0Eu) /*!< External interrupt line 14 */ +#define EXTI_LINE_15 (EXTI_GPIO | 0x0Fu) /*!< External interrupt line 15 */ +#define EXTI_LINE_16 (EXTI_CONFIG | 0x10u) /*!< External interrupt line 16 Connected to the PVD Output */ +#define EXTI_LINE_17 (EXTI_CONFIG | 0x11u) /*!< External interrupt line 17 Connected to the RTC Alarm event */ +#if defined(EXTI_IMR_IM18) +#define EXTI_LINE_18 (EXTI_CONFIG | 0x12u) /*!< External interrupt line 18 Connected to the USB Wakeup from suspend event */ +#endif /* EXTI_IMR_IM18 */ +#if defined(EXTI_IMR_IM19) +#define EXTI_LINE_19 (EXTI_CONFIG | 0x13u) /*!< External interrupt line 19 Connected to the Ethernet Wakeup event */ +#endif /* EXTI_IMR_IM19 */ + +/** + * @} + */ + +/** @defgroup EXTI_Mode EXTI Mode + * @{ + */ +#define EXTI_MODE_NONE 0x00000000u +#define EXTI_MODE_INTERRUPT 0x00000001u +#define EXTI_MODE_EVENT 0x00000002u +/** + * @} + */ + +/** @defgroup EXTI_Trigger EXTI Trigger + * @{ + */ +#define EXTI_TRIGGER_NONE 0x00000000u +#define EXTI_TRIGGER_RISING 0x00000001u +#define EXTI_TRIGGER_FALLING 0x00000002u +#define EXTI_TRIGGER_RISING_FALLING (EXTI_TRIGGER_RISING | EXTI_TRIGGER_FALLING) +/** + * @} + */ + +/** @defgroup EXTI_GPIOSel EXTI GPIOSel + * @brief + * @{ + */ +#define EXTI_GPIOA 0x00000000u +#define EXTI_GPIOB 0x00000001u +#define EXTI_GPIOC 0x00000002u +#define EXTI_GPIOD 0x00000003u +#if defined (GPIOE) +#define EXTI_GPIOE 0x00000004u +#endif /* GPIOE */ +#if defined (GPIOF) +#define EXTI_GPIOF 0x00000005u +#endif /* GPIOF */ +#if defined (GPIOG) +#define EXTI_GPIOG 0x00000006u +#endif /* GPIOG */ +/** + * @} + */ + +/** + * @} + */ + +/* Exported macro ------------------------------------------------------------*/ +/** @defgroup EXTI_Exported_Macros EXTI Exported Macros + * @{ + */ + +/** + * @} + */ + +/* Private constants --------------------------------------------------------*/ +/** @defgroup EXTI_Private_Constants EXTI Private Constants + * @{ + */ +/** + * @brief EXTI Line property definition + */ +#define EXTI_PROPERTY_SHIFT 24u +#define EXTI_CONFIG (0x02uL << EXTI_PROPERTY_SHIFT) +#define EXTI_GPIO ((0x04uL << EXTI_PROPERTY_SHIFT) | EXTI_CONFIG) +#define EXTI_PROPERTY_MASK (EXTI_CONFIG | EXTI_GPIO) + +/** + * @brief EXTI bit usage + */ +#define EXTI_PIN_MASK 0x0000001Fu + +/** + * @brief EXTI Mask for interrupt & event mode + */ +#define EXTI_MODE_MASK (EXTI_MODE_EVENT | EXTI_MODE_INTERRUPT) + +/** + * @brief EXTI Mask for trigger possibilities + */ +#define EXTI_TRIGGER_MASK (EXTI_TRIGGER_RISING | EXTI_TRIGGER_FALLING) + +/** + * @brief EXTI Line number + */ +#if defined(EXTI_IMR_IM19) +#define EXTI_LINE_NB 20UL +#elif defined(EXTI_IMR_IM18) +#define EXTI_LINE_NB 19UL +#else /* EXTI_IMR_IM17 */ +#define EXTI_LINE_NB 18UL +#endif /* EXTI_IMR_IM19 */ +/** + * @} + */ + +/* Private macros ------------------------------------------------------------*/ +/** @defgroup EXTI_Private_Macros EXTI Private Macros + * @{ + */ +#define IS_EXTI_LINE(__EXTI_LINE__) ((((__EXTI_LINE__) & ~(EXTI_PROPERTY_MASK | EXTI_PIN_MASK)) == 0x00u) && \ + ((((__EXTI_LINE__) & EXTI_PROPERTY_MASK) == EXTI_CONFIG) || \ + (((__EXTI_LINE__) & EXTI_PROPERTY_MASK) == EXTI_GPIO)) && \ + (((__EXTI_LINE__) & EXTI_PIN_MASK) < EXTI_LINE_NB)) + +#define IS_EXTI_MODE(__EXTI_LINE__) ((((__EXTI_LINE__) & EXTI_MODE_MASK) != 0x00u) && \ + (((__EXTI_LINE__) & ~EXTI_MODE_MASK) == 0x00u)) + +#define IS_EXTI_TRIGGER(__EXTI_LINE__) (((__EXTI_LINE__) & ~EXTI_TRIGGER_MASK) == 0x00u) + +#define IS_EXTI_PENDING_EDGE(__EXTI_LINE__) ((__EXTI_LINE__) == EXTI_TRIGGER_RISING_FALLING) + +#define IS_EXTI_CONFIG_LINE(__EXTI_LINE__) (((__EXTI_LINE__) & EXTI_CONFIG) != 0x00u) + +#if defined (GPIOG) +#define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ + ((__PORT__) == EXTI_GPIOB) || \ + ((__PORT__) == EXTI_GPIOC) || \ + ((__PORT__) == EXTI_GPIOD) || \ + ((__PORT__) == EXTI_GPIOE) || \ + ((__PORT__) == EXTI_GPIOF) || \ + ((__PORT__) == EXTI_GPIOG)) +#elif defined (GPIOF) +#define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ + ((__PORT__) == EXTI_GPIOB) || \ + ((__PORT__) == EXTI_GPIOC) || \ + ((__PORT__) == EXTI_GPIOD) || \ + ((__PORT__) == EXTI_GPIOE) || \ + ((__PORT__) == EXTI_GPIOF)) +#elif defined (GPIOE) +#define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ + ((__PORT__) == EXTI_GPIOB) || \ + ((__PORT__) == EXTI_GPIOC) || \ + ((__PORT__) == EXTI_GPIOD) || \ + ((__PORT__) == EXTI_GPIOE)) +#else +#define IS_EXTI_GPIO_PORT(__PORT__) (((__PORT__) == EXTI_GPIOA) || \ + ((__PORT__) == EXTI_GPIOB) || \ + ((__PORT__) == EXTI_GPIOC) || \ + ((__PORT__) == EXTI_GPIOD)) +#endif /* GPIOG */ + +#define IS_EXTI_GPIO_PIN(__PIN__) ((__PIN__) < 16u) + +/** + * @} + */ + +/* Exported functions --------------------------------------------------------*/ +/** @defgroup EXTI_Exported_Functions EXTI Exported Functions + * @brief EXTI Exported Functions + * @{ + */ + +/** @defgroup EXTI_Exported_Functions_Group1 Configuration functions + * @brief Configuration functions + * @{ + */ +/* Configuration functions ****************************************************/ +HAL_StatusTypeDef HAL_EXTI_SetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig); +HAL_StatusTypeDef HAL_EXTI_GetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig); +HAL_StatusTypeDef HAL_EXTI_ClearConfigLine(EXTI_HandleTypeDef *hexti); +HAL_StatusTypeDef HAL_EXTI_RegisterCallback(EXTI_HandleTypeDef *hexti, EXTI_CallbackIDTypeDef CallbackID, void (*pPendingCbfn)(void)); +HAL_StatusTypeDef HAL_EXTI_GetHandle(EXTI_HandleTypeDef *hexti, uint32_t ExtiLine); +/** + * @} + */ + +/** @defgroup EXTI_Exported_Functions_Group2 IO operation functions + * @brief IO operation functions + * @{ + */ +/* IO operation functions *****************************************************/ +void HAL_EXTI_IRQHandler(EXTI_HandleTypeDef *hexti); +uint32_t HAL_EXTI_GetPending(EXTI_HandleTypeDef *hexti, uint32_t Edge); +void HAL_EXTI_ClearPending(EXTI_HandleTypeDef *hexti, uint32_t Edge); +void HAL_EXTI_GenerateSWI(EXTI_HandleTypeDef *hexti); + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /* STM32F1xx_HAL_EXTI_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h similarity index 96% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h index 8cd21b1..52e480b 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h @@ -1,328 +1,328 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_flash.h - * @author MCD Application Team - * @brief Header file of Flash HAL module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_HAL_FLASH_H -#define __STM32F1xx_HAL_FLASH_H - -#ifdef __cplusplus - extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup FLASH - * @{ - */ - -/** @addtogroup FLASH_Private_Constants - * @{ - */ -#define FLASH_TIMEOUT_VALUE 50000U /* 50 s */ -/** - * @} - */ - -/** @addtogroup FLASH_Private_Macros - * @{ - */ - -#define IS_FLASH_TYPEPROGRAM(VALUE) (((VALUE) == FLASH_TYPEPROGRAM_HALFWORD) || \ - ((VALUE) == FLASH_TYPEPROGRAM_WORD) || \ - ((VALUE) == FLASH_TYPEPROGRAM_DOUBLEWORD)) - -#if defined(FLASH_ACR_LATENCY) -#define IS_FLASH_LATENCY(__LATENCY__) (((__LATENCY__) == FLASH_LATENCY_0) || \ - ((__LATENCY__) == FLASH_LATENCY_1) || \ - ((__LATENCY__) == FLASH_LATENCY_2)) - -#else -#define IS_FLASH_LATENCY(__LATENCY__) ((__LATENCY__) == FLASH_LATENCY_0) -#endif /* FLASH_ACR_LATENCY */ -/** - * @} - */ - -/* Exported types ------------------------------------------------------------*/ -/** @defgroup FLASH_Exported_Types FLASH Exported Types - * @{ - */ - -/** - * @brief FLASH Procedure structure definition - */ -typedef enum -{ - FLASH_PROC_NONE = 0U, - FLASH_PROC_PAGEERASE = 1U, - FLASH_PROC_MASSERASE = 2U, - FLASH_PROC_PROGRAMHALFWORD = 3U, - FLASH_PROC_PROGRAMWORD = 4U, - FLASH_PROC_PROGRAMDOUBLEWORD = 5U -} FLASH_ProcedureTypeDef; - -/** - * @brief FLASH handle Structure definition - */ -typedef struct -{ - __IO FLASH_ProcedureTypeDef ProcedureOnGoing; /*!< Internal variable to indicate which procedure is ongoing or not in IT context */ - - __IO uint32_t DataRemaining; /*!< Internal variable to save the remaining pages to erase or half-word to program in IT context */ - - __IO uint32_t Address; /*!< Internal variable to save address selected for program or erase */ - - __IO uint64_t Data; /*!< Internal variable to save data to be programmed */ - - HAL_LockTypeDef Lock; /*!< FLASH locking object */ - - __IO uint32_t ErrorCode; /*!< FLASH error code - This parameter can be a value of @ref FLASH_Error_Codes */ -} FLASH_ProcessTypeDef; - -/** - * @} - */ - -/* Exported constants --------------------------------------------------------*/ -/** @defgroup FLASH_Exported_Constants FLASH Exported Constants - * @{ - */ - -/** @defgroup FLASH_Error_Codes FLASH Error Codes - * @{ - */ - -#define HAL_FLASH_ERROR_NONE 0x00U /*!< No error */ -#define HAL_FLASH_ERROR_PROG 0x01U /*!< Programming error */ -#define HAL_FLASH_ERROR_WRP 0x02U /*!< Write protection error */ -#define HAL_FLASH_ERROR_OPTV 0x04U /*!< Option validity error */ - -/** - * @} - */ - -/** @defgroup FLASH_Type_Program FLASH Type Program - * @{ - */ -#define FLASH_TYPEPROGRAM_HALFWORD 0x01U /*!ACR |= FLASH_ACR_HLFCYA) - -/** - * @brief Disable the FLASH half cycle access. - * @note half cycle access can only be used with a low-frequency clock of less than - 8 MHz that can be obtained with the use of HSI or HSE but not of PLL. - * @retval None - */ -#define __HAL_FLASH_HALF_CYCLE_ACCESS_DISABLE() (FLASH->ACR &= (~FLASH_ACR_HLFCYA)) - -/** - * @} - */ - -#if defined(FLASH_ACR_LATENCY) -/** @defgroup FLASH_EM_Latency FLASH Latency - * @brief macros to handle FLASH Latency - * @{ - */ - -/** - * @brief Set the FLASH Latency. - * @param __LATENCY__ FLASH Latency - * The value of this parameter depend on device used within the same series - * @retval None - */ -#define __HAL_FLASH_SET_LATENCY(__LATENCY__) (FLASH->ACR = (FLASH->ACR&(~FLASH_ACR_LATENCY)) | (__LATENCY__)) - - -/** - * @brief Get the FLASH Latency. - * @retval FLASH Latency - * The value of this parameter depend on device used within the same series - */ -#define __HAL_FLASH_GET_LATENCY() (READ_BIT((FLASH->ACR), FLASH_ACR_LATENCY)) - -/** - * @} - */ - -#endif /* FLASH_ACR_LATENCY */ -/** @defgroup FLASH_Prefetch FLASH Prefetch - * @brief macros to handle FLASH Prefetch buffer - * @{ - */ -/** - * @brief Enable the FLASH prefetch buffer. - * @retval None - */ -#define __HAL_FLASH_PREFETCH_BUFFER_ENABLE() (FLASH->ACR |= FLASH_ACR_PRFTBE) - -/** - * @brief Disable the FLASH prefetch buffer. - * @retval None - */ -#define __HAL_FLASH_PREFETCH_BUFFER_DISABLE() (FLASH->ACR &= (~FLASH_ACR_PRFTBE)) - -/** - * @} - */ - -/** - * @} - */ - -/* Include FLASH HAL Extended module */ -#include "stm32f1xx_hal_flash_ex.h" - -/* Exported functions --------------------------------------------------------*/ -/** @addtogroup FLASH_Exported_Functions - * @{ - */ - -/** @addtogroup FLASH_Exported_Functions_Group1 - * @{ - */ -/* IO operation functions *****************************************************/ -HAL_StatusTypeDef HAL_FLASH_Program(uint32_t TypeProgram, uint32_t Address, uint64_t Data); -HAL_StatusTypeDef HAL_FLASH_Program_IT(uint32_t TypeProgram, uint32_t Address, uint64_t Data); - -/* FLASH IRQ handler function */ -void HAL_FLASH_IRQHandler(void); -/* Callbacks in non blocking modes */ -void HAL_FLASH_EndOfOperationCallback(uint32_t ReturnValue); -void HAL_FLASH_OperationErrorCallback(uint32_t ReturnValue); - -/** - * @} - */ - -/** @addtogroup FLASH_Exported_Functions_Group2 - * @{ - */ -/* Peripheral Control functions ***********************************************/ -HAL_StatusTypeDef HAL_FLASH_Unlock(void); -HAL_StatusTypeDef HAL_FLASH_Lock(void); -HAL_StatusTypeDef HAL_FLASH_OB_Unlock(void); -HAL_StatusTypeDef HAL_FLASH_OB_Lock(void); -void HAL_FLASH_OB_Launch(void); - -/** - * @} - */ - -/** @addtogroup FLASH_Exported_Functions_Group3 - * @{ - */ -/* Peripheral State and Error functions ***************************************/ -uint32_t HAL_FLASH_GetError(void); - -/** - * @} - */ - -/** - * @} - */ - -/* Private function -------------------------------------------------*/ -/** @addtogroup FLASH_Private_Functions - * @{ - */ -HAL_StatusTypeDef FLASH_WaitForLastOperation(uint32_t Timeout); -#if defined(FLASH_BANK2_END) -HAL_StatusTypeDef FLASH_WaitForLastOperationBank2(uint32_t Timeout); -#endif /* FLASH_BANK2_END */ - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /* __STM32F1xx_HAL_FLASH_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ - +/** + ****************************************************************************** + * @file stm32f1xx_hal_flash.h + * @author MCD Application Team + * @brief Header file of Flash HAL module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_HAL_FLASH_H +#define __STM32F1xx_HAL_FLASH_H + +#ifdef __cplusplus + extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup FLASH + * @{ + */ + +/** @addtogroup FLASH_Private_Constants + * @{ + */ +#define FLASH_TIMEOUT_VALUE 50000U /* 50 s */ +/** + * @} + */ + +/** @addtogroup FLASH_Private_Macros + * @{ + */ + +#define IS_FLASH_TYPEPROGRAM(VALUE) (((VALUE) == FLASH_TYPEPROGRAM_HALFWORD) || \ + ((VALUE) == FLASH_TYPEPROGRAM_WORD) || \ + ((VALUE) == FLASH_TYPEPROGRAM_DOUBLEWORD)) + +#if defined(FLASH_ACR_LATENCY) +#define IS_FLASH_LATENCY(__LATENCY__) (((__LATENCY__) == FLASH_LATENCY_0) || \ + ((__LATENCY__) == FLASH_LATENCY_1) || \ + ((__LATENCY__) == FLASH_LATENCY_2)) + +#else +#define IS_FLASH_LATENCY(__LATENCY__) ((__LATENCY__) == FLASH_LATENCY_0) +#endif /* FLASH_ACR_LATENCY */ +/** + * @} + */ + +/* Exported types ------------------------------------------------------------*/ +/** @defgroup FLASH_Exported_Types FLASH Exported Types + * @{ + */ + +/** + * @brief FLASH Procedure structure definition + */ +typedef enum +{ + FLASH_PROC_NONE = 0U, + FLASH_PROC_PAGEERASE = 1U, + FLASH_PROC_MASSERASE = 2U, + FLASH_PROC_PROGRAMHALFWORD = 3U, + FLASH_PROC_PROGRAMWORD = 4U, + FLASH_PROC_PROGRAMDOUBLEWORD = 5U +} FLASH_ProcedureTypeDef; + +/** + * @brief FLASH handle Structure definition + */ +typedef struct +{ + __IO FLASH_ProcedureTypeDef ProcedureOnGoing; /*!< Internal variable to indicate which procedure is ongoing or not in IT context */ + + __IO uint32_t DataRemaining; /*!< Internal variable to save the remaining pages to erase or half-word to program in IT context */ + + __IO uint32_t Address; /*!< Internal variable to save address selected for program or erase */ + + __IO uint64_t Data; /*!< Internal variable to save data to be programmed */ + + HAL_LockTypeDef Lock; /*!< FLASH locking object */ + + __IO uint32_t ErrorCode; /*!< FLASH error code + This parameter can be a value of @ref FLASH_Error_Codes */ +} FLASH_ProcessTypeDef; + +/** + * @} + */ + +/* Exported constants --------------------------------------------------------*/ +/** @defgroup FLASH_Exported_Constants FLASH Exported Constants + * @{ + */ + +/** @defgroup FLASH_Error_Codes FLASH Error Codes + * @{ + */ + +#define HAL_FLASH_ERROR_NONE 0x00U /*!< No error */ +#define HAL_FLASH_ERROR_PROG 0x01U /*!< Programming error */ +#define HAL_FLASH_ERROR_WRP 0x02U /*!< Write protection error */ +#define HAL_FLASH_ERROR_OPTV 0x04U /*!< Option validity error */ + +/** + * @} + */ + +/** @defgroup FLASH_Type_Program FLASH Type Program + * @{ + */ +#define FLASH_TYPEPROGRAM_HALFWORD 0x01U /*!ACR |= FLASH_ACR_HLFCYA) + +/** + * @brief Disable the FLASH half cycle access. + * @note half cycle access can only be used with a low-frequency clock of less than + 8 MHz that can be obtained with the use of HSI or HSE but not of PLL. + * @retval None + */ +#define __HAL_FLASH_HALF_CYCLE_ACCESS_DISABLE() (FLASH->ACR &= (~FLASH_ACR_HLFCYA)) + +/** + * @} + */ + +#if defined(FLASH_ACR_LATENCY) +/** @defgroup FLASH_EM_Latency FLASH Latency + * @brief macros to handle FLASH Latency + * @{ + */ + +/** + * @brief Set the FLASH Latency. + * @param __LATENCY__ FLASH Latency + * The value of this parameter depend on device used within the same series + * @retval None + */ +#define __HAL_FLASH_SET_LATENCY(__LATENCY__) (FLASH->ACR = (FLASH->ACR&(~FLASH_ACR_LATENCY)) | (__LATENCY__)) + + +/** + * @brief Get the FLASH Latency. + * @retval FLASH Latency + * The value of this parameter depend on device used within the same series + */ +#define __HAL_FLASH_GET_LATENCY() (READ_BIT((FLASH->ACR), FLASH_ACR_LATENCY)) + +/** + * @} + */ + +#endif /* FLASH_ACR_LATENCY */ +/** @defgroup FLASH_Prefetch FLASH Prefetch + * @brief macros to handle FLASH Prefetch buffer + * @{ + */ +/** + * @brief Enable the FLASH prefetch buffer. + * @retval None + */ +#define __HAL_FLASH_PREFETCH_BUFFER_ENABLE() (FLASH->ACR |= FLASH_ACR_PRFTBE) + +/** + * @brief Disable the FLASH prefetch buffer. + * @retval None + */ +#define __HAL_FLASH_PREFETCH_BUFFER_DISABLE() (FLASH->ACR &= (~FLASH_ACR_PRFTBE)) + +/** + * @} + */ + +/** + * @} + */ + +/* Include FLASH HAL Extended module */ +#include "stm32f1xx_hal_flash_ex.h" + +/* Exported functions --------------------------------------------------------*/ +/** @addtogroup FLASH_Exported_Functions + * @{ + */ + +/** @addtogroup FLASH_Exported_Functions_Group1 + * @{ + */ +/* IO operation functions *****************************************************/ +HAL_StatusTypeDef HAL_FLASH_Program(uint32_t TypeProgram, uint32_t Address, uint64_t Data); +HAL_StatusTypeDef HAL_FLASH_Program_IT(uint32_t TypeProgram, uint32_t Address, uint64_t Data); + +/* FLASH IRQ handler function */ +void HAL_FLASH_IRQHandler(void); +/* Callbacks in non blocking modes */ +void HAL_FLASH_EndOfOperationCallback(uint32_t ReturnValue); +void HAL_FLASH_OperationErrorCallback(uint32_t ReturnValue); + +/** + * @} + */ + +/** @addtogroup FLASH_Exported_Functions_Group2 + * @{ + */ +/* Peripheral Control functions ***********************************************/ +HAL_StatusTypeDef HAL_FLASH_Unlock(void); +HAL_StatusTypeDef HAL_FLASH_Lock(void); +HAL_StatusTypeDef HAL_FLASH_OB_Unlock(void); +HAL_StatusTypeDef HAL_FLASH_OB_Lock(void); +void HAL_FLASH_OB_Launch(void); + +/** + * @} + */ + +/** @addtogroup FLASH_Exported_Functions_Group3 + * @{ + */ +/* Peripheral State and Error functions ***************************************/ +uint32_t HAL_FLASH_GetError(void); + +/** + * @} + */ + +/** + * @} + */ + +/* Private function -------------------------------------------------*/ +/** @addtogroup FLASH_Private_Functions + * @{ + */ +HAL_StatusTypeDef FLASH_WaitForLastOperation(uint32_t Timeout); +#if defined(FLASH_BANK2_END) +HAL_StatusTypeDef FLASH_WaitForLastOperationBank2(uint32_t Timeout); +#endif /* FLASH_BANK2_END */ + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F1xx_HAL_FLASH_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ + diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h index 1dcaeed..0a5b24a 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h @@ -1,786 +1,786 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_flash_ex.h - * @author MCD Application Team - * @brief Header file of Flash HAL Extended module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_HAL_FLASH_EX_H -#define __STM32F1xx_HAL_FLASH_EX_H - -#ifdef __cplusplus - extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup FLASHEx - * @{ - */ - -/** @addtogroup FLASHEx_Private_Constants - * @{ - */ - -#define FLASH_SIZE_DATA_REGISTER 0x1FFFF7E0U -#define OBR_REG_INDEX 1U -#define SR_FLAG_MASK ((uint32_t)(FLASH_SR_BSY | FLASH_SR_PGERR | FLASH_SR_WRPRTERR | FLASH_SR_EOP)) - -/** - * @} - */ - -/** @addtogroup FLASHEx_Private_Macros - * @{ - */ - -#define IS_FLASH_TYPEERASE(VALUE) (((VALUE) == FLASH_TYPEERASE_PAGES) || ((VALUE) == FLASH_TYPEERASE_MASSERASE)) - -#define IS_OPTIONBYTE(VALUE) (((VALUE) <= (OPTIONBYTE_WRP | OPTIONBYTE_RDP | OPTIONBYTE_USER | OPTIONBYTE_DATA))) - -#define IS_WRPSTATE(VALUE) (((VALUE) == OB_WRPSTATE_DISABLE) || ((VALUE) == OB_WRPSTATE_ENABLE)) - -#define IS_OB_RDP_LEVEL(LEVEL) (((LEVEL) == OB_RDP_LEVEL_0) || ((LEVEL) == OB_RDP_LEVEL_1)) - -#define IS_OB_DATA_ADDRESS(ADDRESS) (((ADDRESS) == OB_DATA_ADDRESS_DATA0) || ((ADDRESS) == OB_DATA_ADDRESS_DATA1)) - -#define IS_OB_IWDG_SOURCE(SOURCE) (((SOURCE) == OB_IWDG_SW) || ((SOURCE) == OB_IWDG_HW)) - -#define IS_OB_STOP_SOURCE(SOURCE) (((SOURCE) == OB_STOP_NO_RST) || ((SOURCE) == OB_STOP_RST)) - -#define IS_OB_STDBY_SOURCE(SOURCE) (((SOURCE) == OB_STDBY_NO_RST) || ((SOURCE) == OB_STDBY_RST)) - -#if defined(FLASH_BANK2_END) -#define IS_OB_BOOT1(BOOT1) (((BOOT1) == OB_BOOT1_RESET) || ((BOOT1) == OB_BOOT1_SET)) -#endif /* FLASH_BANK2_END */ - -/* Low Density */ -#if (defined(STM32F101x6) || defined(STM32F102x6) || defined(STM32F103x6)) -#define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x20U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)- 1 <= 0x08007FFFU) : \ - ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)- 1 <= 0x08003FFFU)) -#endif /* STM32F101x6 || STM32F102x6 || STM32F103x6 */ - -/* Medium Density */ -#if (defined(STM32F100xB) || defined(STM32F101xB) || defined(STM32F102xB) || defined(STM32F103xB)) -#define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x80U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0801FFFFU) : \ - (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x40U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0800FFFFU) : \ - (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x20U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x08007FFFU) : \ - ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x08003FFFU)))) -#endif /* STM32F100xB || STM32F101xB || STM32F102xB || STM32F103xB*/ - -/* High Density */ -#if (defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F103xE)) -#define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x200U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0807FFFFU) : \ - (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x180U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0805FFFFU) : \ - ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0803FFFFU))) -#endif /* STM32F100xE || STM32F101xE || STM32F103xE */ - -/* XL Density */ -#if defined(FLASH_BANK2_END) -#define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x400U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x080FFFFFU) : \ - ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x080BFFFFU)) -#endif /* FLASH_BANK2_END */ - -/* Connectivity Line */ -#if (defined(STM32F105xC) || defined(STM32F107xC)) -#define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x100U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0803FFFFU) : \ - (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x80U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0801FFFFU) : \ - ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0800FFFFU))) -#endif /* STM32F105xC || STM32F107xC */ - -#define IS_OB_WRP(PAGE) (((PAGE) != 0x0000000U)) - -#if defined(FLASH_BANK2_END) -#define IS_FLASH_BANK(BANK) (((BANK) == FLASH_BANK_1) || \ - ((BANK) == FLASH_BANK_2) || \ - ((BANK) == FLASH_BANK_BOTH)) -#else -#define IS_FLASH_BANK(BANK) (((BANK) == FLASH_BANK_1)) -#endif /* FLASH_BANK2_END */ - -/* Low Density */ -#if (defined(STM32F101x6) || defined(STM32F102x6) || defined(STM32F103x6)) -#define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x20U) ? \ - ((ADDRESS) <= FLASH_BANK1_END) : ((ADDRESS) <= 0x08003FFFU))) - -#endif /* STM32F101x6 || STM32F102x6 || STM32F103x6 */ - -/* Medium Density */ -#if (defined(STM32F100xB) || defined(STM32F101xB) || defined(STM32F102xB) || defined(STM32F103xB)) -#define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x80U) ? \ - ((ADDRESS) <= FLASH_BANK1_END) : (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x40U) ? \ - ((ADDRESS) <= 0x0800FFFF) : (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x20U) ? \ - ((ADDRESS) <= 0x08007FFF) : ((ADDRESS) <= 0x08003FFFU))))) - -#endif /* STM32F100xB || STM32F101xB || STM32F102xB || STM32F103xB*/ - -/* High Density */ -#if (defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F103xE)) -#define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x200U) ? \ - ((ADDRESS) <= FLASH_BANK1_END) : (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x180U) ? \ - ((ADDRESS) <= 0x0805FFFFU) : ((ADDRESS) <= 0x0803FFFFU)))) - -#endif /* STM32F100xE || STM32F101xE || STM32F103xE */ - -/* XL Density */ -#if defined(FLASH_BANK2_END) -#define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x400U) ? \ - ((ADDRESS) <= FLASH_BANK2_END) : ((ADDRESS) <= 0x080BFFFFU))) - -#endif /* FLASH_BANK2_END */ - -/* Connectivity Line */ -#if (defined(STM32F105xC) || defined(STM32F107xC)) -#define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x100U) ? \ - ((ADDRESS) <= FLASH_BANK1_END) : (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x80U) ? \ - ((ADDRESS) <= 0x0801FFFFU) : ((ADDRESS) <= 0x0800FFFFU)))) - -#endif /* STM32F105xC || STM32F107xC */ - -/** - * @} - */ - -/* Exported types ------------------------------------------------------------*/ -/** @defgroup FLASHEx_Exported_Types FLASHEx Exported Types - * @{ - */ - -/** - * @brief FLASH Erase structure definition - */ -typedef struct -{ - uint32_t TypeErase; /*!< TypeErase: Mass erase or page erase. - This parameter can be a value of @ref FLASHEx_Type_Erase */ - - uint32_t Banks; /*!< Select banks to erase when Mass erase is enabled. - This parameter must be a value of @ref FLASHEx_Banks */ - - uint32_t PageAddress; /*!< PageAdress: Initial FLASH page address to erase when mass erase is disabled - This parameter must be a number between Min_Data = 0x08000000 and Max_Data = FLASH_BANKx_END - (x = 1 or 2 depending on devices)*/ - - uint32_t NbPages; /*!< NbPages: Number of pagess to be erased. - This parameter must be a value between Min_Data = 1 and Max_Data = (max number of pages - value of initial page)*/ - -} FLASH_EraseInitTypeDef; - -/** - * @brief FLASH Options bytes program structure definition - */ -typedef struct -{ - uint32_t OptionType; /*!< OptionType: Option byte to be configured. - This parameter can be a value of @ref FLASHEx_OB_Type */ - - uint32_t WRPState; /*!< WRPState: Write protection activation or deactivation. - This parameter can be a value of @ref FLASHEx_OB_WRP_State */ - - uint32_t WRPPage; /*!< WRPPage: specifies the page(s) to be write protected - This parameter can be a value of @ref FLASHEx_OB_Write_Protection */ - - uint32_t Banks; /*!< Select banks for WRP activation/deactivation of all sectors. - This parameter must be a value of @ref FLASHEx_Banks */ - - uint8_t RDPLevel; /*!< RDPLevel: Set the read protection level.. - This parameter can be a value of @ref FLASHEx_OB_Read_Protection */ - -#if defined(FLASH_BANK2_END) - uint8_t USERConfig; /*!< USERConfig: Program the FLASH User Option Byte: - IWDG / STOP / STDBY / BOOT1 - This parameter can be a combination of @ref FLASHEx_OB_IWatchdog, @ref FLASHEx_OB_nRST_STOP, - @ref FLASHEx_OB_nRST_STDBY, @ref FLASHEx_OB_BOOT1 */ -#else - uint8_t USERConfig; /*!< USERConfig: Program the FLASH User Option Byte: - IWDG / STOP / STDBY - This parameter can be a combination of @ref FLASHEx_OB_IWatchdog, @ref FLASHEx_OB_nRST_STOP, - @ref FLASHEx_OB_nRST_STDBY */ -#endif /* FLASH_BANK2_END */ - - uint32_t DATAAddress; /*!< DATAAddress: Address of the option byte DATA to be programmed - This parameter can be a value of @ref FLASHEx_OB_Data_Address */ - - uint8_t DATAData; /*!< DATAData: Data to be stored in the option byte DATA - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF */ -} FLASH_OBProgramInitTypeDef; - -/** - * @} - */ - -/* Exported constants --------------------------------------------------------*/ -/** @defgroup FLASHEx_Exported_Constants FLASHEx Exported Constants - * @{ - */ - -/** @defgroup FLASHEx_Constants FLASH Constants - * @{ - */ - -/** @defgroup FLASHEx_Page_Size Page Size - * @{ - */ -#if (defined(STM32F101x6) || defined(STM32F102x6) || defined(STM32F103x6) || defined(STM32F100xB) || defined(STM32F101xB) || defined(STM32F102xB) || defined(STM32F103xB)) -#define FLASH_PAGE_SIZE 0x400U -#endif /* STM32F101x6 || STM32F102x6 || STM32F103x6 */ - /* STM32F100xB || STM32F101xB || STM32F102xB || STM32F103xB */ - -#if (defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG) || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC)) -#define FLASH_PAGE_SIZE 0x800U -#endif /* STM32F100xB || STM32F101xB || STM32F102xB || STM32F103xB */ - /* STM32F101xG || STM32F103xG */ - /* STM32F105xC || STM32F107xC */ - -/** - * @} - */ - -/** @defgroup FLASHEx_Type_Erase Type Erase - * @{ - */ -#define FLASH_TYPEERASE_PAGES 0x00U /*!CR, ((__INTERRUPT__) & 0x0000FFFFU)); \ - /* Enable Bank2 IT */ \ - SET_BIT(FLASH->CR2, ((__INTERRUPT__) >> 16U)); \ - } while(0U) - -/** - * @brief Disable the specified FLASH interrupt. - * @param __INTERRUPT__ FLASH interrupt - * This parameter can be any combination of the following values: - * @arg @ref FLASH_IT_EOP_BANK1 End of FLASH Operation Interrupt on bank1 - * @arg @ref FLASH_IT_ERR_BANK1 Error Interrupt on bank1 - * @arg @ref FLASH_IT_EOP_BANK2 End of FLASH Operation Interrupt on bank2 - * @arg @ref FLASH_IT_ERR_BANK2 Error Interrupt on bank2 - * @retval none - */ -#define __HAL_FLASH_DISABLE_IT(__INTERRUPT__) do { \ - /* Disable Bank1 IT */ \ - CLEAR_BIT(FLASH->CR, ((__INTERRUPT__) & 0x0000FFFFU)); \ - /* Disable Bank2 IT */ \ - CLEAR_BIT(FLASH->CR2, ((__INTERRUPT__) >> 16U)); \ - } while(0U) - -/** - * @brief Get the specified FLASH flag status. - * @param __FLAG__ specifies the FLASH flag to check. - * This parameter can be one of the following values: - * @arg @ref FLASH_FLAG_EOP_BANK1 FLASH End of Operation flag on bank1 - * @arg @ref FLASH_FLAG_WRPERR_BANK1 FLASH Write protected error flag on bank1 - * @arg @ref FLASH_FLAG_PGERR_BANK1 FLASH Programming error flag on bank1 - * @arg @ref FLASH_FLAG_BSY_BANK1 FLASH Busy flag on bank1 - * @arg @ref FLASH_FLAG_EOP_BANK2 FLASH End of Operation flag on bank2 - * @arg @ref FLASH_FLAG_WRPERR_BANK2 FLASH Write protected error flag on bank2 - * @arg @ref FLASH_FLAG_PGERR_BANK2 FLASH Programming error flag on bank2 - * @arg @ref FLASH_FLAG_BSY_BANK2 FLASH Busy flag on bank2 - * @arg @ref FLASH_FLAG_OPTVERR Loaded OB and its complement do not match - * @retval The new state of __FLAG__ (SET or RESET). - */ -#define __HAL_FLASH_GET_FLAG(__FLAG__) (((__FLAG__) == FLASH_FLAG_OPTVERR) ? \ - (FLASH->OBR & FLASH_OBR_OPTERR) : \ - ((((__FLAG__) & SR_FLAG_MASK) != RESET)? \ - (FLASH->SR & ((__FLAG__) & SR_FLAG_MASK)) : \ - (FLASH->SR2 & ((__FLAG__) >> 16U)))) - -/** - * @brief Clear the specified FLASH flag. - * @param __FLAG__ specifies the FLASH flags to clear. - * This parameter can be any combination of the following values: - * @arg @ref FLASH_FLAG_EOP_BANK1 FLASH End of Operation flag on bank1 - * @arg @ref FLASH_FLAG_WRPERR_BANK1 FLASH Write protected error flag on bank1 - * @arg @ref FLASH_FLAG_PGERR_BANK1 FLASH Programming error flag on bank1 - * @arg @ref FLASH_FLAG_BSY_BANK1 FLASH Busy flag on bank1 - * @arg @ref FLASH_FLAG_EOP_BANK2 FLASH End of Operation flag on bank2 - * @arg @ref FLASH_FLAG_WRPERR_BANK2 FLASH Write protected error flag on bank2 - * @arg @ref FLASH_FLAG_PGERR_BANK2 FLASH Programming error flag on bank2 - * @arg @ref FLASH_FLAG_BSY_BANK2 FLASH Busy flag on bank2 - * @arg @ref FLASH_FLAG_OPTVERR Loaded OB and its complement do not match - * @retval none - */ -#define __HAL_FLASH_CLEAR_FLAG(__FLAG__) do { \ - /* Clear FLASH_FLAG_OPTVERR flag */ \ - if ((__FLAG__) == FLASH_FLAG_OPTVERR) \ - { \ - CLEAR_BIT(FLASH->OBR, FLASH_OBR_OPTERR); \ - } \ - else { \ - /* Clear Flag in Bank1 */ \ - if (((__FLAG__) & SR_FLAG_MASK) != RESET) \ - { \ - FLASH->SR = ((__FLAG__) & SR_FLAG_MASK); \ - } \ - /* Clear Flag in Bank2 */ \ - if (((__FLAG__) >> 16U) != RESET) \ - { \ - FLASH->SR2 = ((__FLAG__) >> 16U); \ - } \ - } \ - } while(0U) -#else -/** - * @brief Enable the specified FLASH interrupt. - * @param __INTERRUPT__ FLASH interrupt - * This parameter can be any combination of the following values: - * @arg @ref FLASH_IT_EOP End of FLASH Operation Interrupt - * @arg @ref FLASH_IT_ERR Error Interrupt - * @retval none - */ -#define __HAL_FLASH_ENABLE_IT(__INTERRUPT__) (FLASH->CR |= (__INTERRUPT__)) - -/** - * @brief Disable the specified FLASH interrupt. - * @param __INTERRUPT__ FLASH interrupt - * This parameter can be any combination of the following values: - * @arg @ref FLASH_IT_EOP End of FLASH Operation Interrupt - * @arg @ref FLASH_IT_ERR Error Interrupt - * @retval none - */ -#define __HAL_FLASH_DISABLE_IT(__INTERRUPT__) (FLASH->CR &= ~(__INTERRUPT__)) - -/** - * @brief Get the specified FLASH flag status. - * @param __FLAG__ specifies the FLASH flag to check. - * This parameter can be one of the following values: - * @arg @ref FLASH_FLAG_EOP FLASH End of Operation flag - * @arg @ref FLASH_FLAG_WRPERR FLASH Write protected error flag - * @arg @ref FLASH_FLAG_PGERR FLASH Programming error flag - * @arg @ref FLASH_FLAG_BSY FLASH Busy flag - * @arg @ref FLASH_FLAG_OPTVERR Loaded OB and its complement do not match - * @retval The new state of __FLAG__ (SET or RESET). - */ -#define __HAL_FLASH_GET_FLAG(__FLAG__) (((__FLAG__) == FLASH_FLAG_OPTVERR) ? \ - (FLASH->OBR & FLASH_OBR_OPTERR) : \ - (FLASH->SR & (__FLAG__))) -/** - * @brief Clear the specified FLASH flag. - * @param __FLAG__ specifies the FLASH flags to clear. - * This parameter can be any combination of the following values: - * @arg @ref FLASH_FLAG_EOP FLASH End of Operation flag - * @arg @ref FLASH_FLAG_WRPERR FLASH Write protected error flag - * @arg @ref FLASH_FLAG_PGERR FLASH Programming error flag - * @arg @ref FLASH_FLAG_OPTVERR Loaded OB and its complement do not match - * @retval none - */ -#define __HAL_FLASH_CLEAR_FLAG(__FLAG__) do { \ - /* Clear FLASH_FLAG_OPTVERR flag */ \ - if ((__FLAG__) == FLASH_FLAG_OPTVERR) \ - { \ - CLEAR_BIT(FLASH->OBR, FLASH_OBR_OPTERR); \ - } \ - else { \ - /* Clear Flag in Bank1 */ \ - FLASH->SR = (__FLAG__); \ - } \ - } while(0U) - -#endif - -/** - * @} - */ - -/** - * @} - */ - -/* Exported functions --------------------------------------------------------*/ -/** @addtogroup FLASHEx_Exported_Functions - * @{ - */ - -/** @addtogroup FLASHEx_Exported_Functions_Group1 - * @{ - */ -/* IO operation functions *****************************************************/ -HAL_StatusTypeDef HAL_FLASHEx_Erase(FLASH_EraseInitTypeDef *pEraseInit, uint32_t *PageError); -HAL_StatusTypeDef HAL_FLASHEx_Erase_IT(FLASH_EraseInitTypeDef *pEraseInit); - -/** - * @} - */ - -/** @addtogroup FLASHEx_Exported_Functions_Group2 - * @{ - */ -/* Peripheral Control functions ***********************************************/ -HAL_StatusTypeDef HAL_FLASHEx_OBErase(void); -HAL_StatusTypeDef HAL_FLASHEx_OBProgram(FLASH_OBProgramInitTypeDef *pOBInit); -void HAL_FLASHEx_OBGetConfig(FLASH_OBProgramInitTypeDef *pOBInit); -uint32_t HAL_FLASHEx_OBGetUserData(uint32_t DATAAdress); -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ -#ifdef __cplusplus -} -#endif - -#endif /* __STM32F1xx_HAL_FLASH_EX_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_flash_ex.h + * @author MCD Application Team + * @brief Header file of Flash HAL Extended module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_HAL_FLASH_EX_H +#define __STM32F1xx_HAL_FLASH_EX_H + +#ifdef __cplusplus + extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup FLASHEx + * @{ + */ + +/** @addtogroup FLASHEx_Private_Constants + * @{ + */ + +#define FLASH_SIZE_DATA_REGISTER 0x1FFFF7E0U +#define OBR_REG_INDEX 1U +#define SR_FLAG_MASK ((uint32_t)(FLASH_SR_BSY | FLASH_SR_PGERR | FLASH_SR_WRPRTERR | FLASH_SR_EOP)) + +/** + * @} + */ + +/** @addtogroup FLASHEx_Private_Macros + * @{ + */ + +#define IS_FLASH_TYPEERASE(VALUE) (((VALUE) == FLASH_TYPEERASE_PAGES) || ((VALUE) == FLASH_TYPEERASE_MASSERASE)) + +#define IS_OPTIONBYTE(VALUE) (((VALUE) <= (OPTIONBYTE_WRP | OPTIONBYTE_RDP | OPTIONBYTE_USER | OPTIONBYTE_DATA))) + +#define IS_WRPSTATE(VALUE) (((VALUE) == OB_WRPSTATE_DISABLE) || ((VALUE) == OB_WRPSTATE_ENABLE)) + +#define IS_OB_RDP_LEVEL(LEVEL) (((LEVEL) == OB_RDP_LEVEL_0) || ((LEVEL) == OB_RDP_LEVEL_1)) + +#define IS_OB_DATA_ADDRESS(ADDRESS) (((ADDRESS) == OB_DATA_ADDRESS_DATA0) || ((ADDRESS) == OB_DATA_ADDRESS_DATA1)) + +#define IS_OB_IWDG_SOURCE(SOURCE) (((SOURCE) == OB_IWDG_SW) || ((SOURCE) == OB_IWDG_HW)) + +#define IS_OB_STOP_SOURCE(SOURCE) (((SOURCE) == OB_STOP_NO_RST) || ((SOURCE) == OB_STOP_RST)) + +#define IS_OB_STDBY_SOURCE(SOURCE) (((SOURCE) == OB_STDBY_NO_RST) || ((SOURCE) == OB_STDBY_RST)) + +#if defined(FLASH_BANK2_END) +#define IS_OB_BOOT1(BOOT1) (((BOOT1) == OB_BOOT1_RESET) || ((BOOT1) == OB_BOOT1_SET)) +#endif /* FLASH_BANK2_END */ + +/* Low Density */ +#if (defined(STM32F101x6) || defined(STM32F102x6) || defined(STM32F103x6)) +#define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x20U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)- 1 <= 0x08007FFFU) : \ + ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)- 1 <= 0x08003FFFU)) +#endif /* STM32F101x6 || STM32F102x6 || STM32F103x6 */ + +/* Medium Density */ +#if (defined(STM32F100xB) || defined(STM32F101xB) || defined(STM32F102xB) || defined(STM32F103xB)) +#define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x80U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0801FFFFU) : \ + (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x40U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0800FFFFU) : \ + (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x20U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x08007FFFU) : \ + ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x08003FFFU)))) +#endif /* STM32F100xB || STM32F101xB || STM32F102xB || STM32F103xB*/ + +/* High Density */ +#if (defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F103xE)) +#define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x200U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0807FFFFU) : \ + (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x180U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0805FFFFU) : \ + ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0803FFFFU))) +#endif /* STM32F100xE || STM32F101xE || STM32F103xE */ + +/* XL Density */ +#if defined(FLASH_BANK2_END) +#define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x400U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x080FFFFFU) : \ + ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x080BFFFFU)) +#endif /* FLASH_BANK2_END */ + +/* Connectivity Line */ +#if (defined(STM32F105xC) || defined(STM32F107xC)) +#define IS_FLASH_NB_PAGES(ADDRESS,NBPAGES) (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x100U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0803FFFFU) : \ + (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x80U) ? ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0801FFFFU) : \ + ((ADDRESS)+((NBPAGES)*FLASH_PAGE_SIZE)-1 <= 0x0800FFFFU))) +#endif /* STM32F105xC || STM32F107xC */ + +#define IS_OB_WRP(PAGE) (((PAGE) != 0x0000000U)) + +#if defined(FLASH_BANK2_END) +#define IS_FLASH_BANK(BANK) (((BANK) == FLASH_BANK_1) || \ + ((BANK) == FLASH_BANK_2) || \ + ((BANK) == FLASH_BANK_BOTH)) +#else +#define IS_FLASH_BANK(BANK) (((BANK) == FLASH_BANK_1)) +#endif /* FLASH_BANK2_END */ + +/* Low Density */ +#if (defined(STM32F101x6) || defined(STM32F102x6) || defined(STM32F103x6)) +#define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x20U) ? \ + ((ADDRESS) <= FLASH_BANK1_END) : ((ADDRESS) <= 0x08003FFFU))) + +#endif /* STM32F101x6 || STM32F102x6 || STM32F103x6 */ + +/* Medium Density */ +#if (defined(STM32F100xB) || defined(STM32F101xB) || defined(STM32F102xB) || defined(STM32F103xB)) +#define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x80U) ? \ + ((ADDRESS) <= FLASH_BANK1_END) : (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x40U) ? \ + ((ADDRESS) <= 0x0800FFFF) : (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x20U) ? \ + ((ADDRESS) <= 0x08007FFF) : ((ADDRESS) <= 0x08003FFFU))))) + +#endif /* STM32F100xB || STM32F101xB || STM32F102xB || STM32F103xB*/ + +/* High Density */ +#if (defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F103xE)) +#define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x200U) ? \ + ((ADDRESS) <= FLASH_BANK1_END) : (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x180U) ? \ + ((ADDRESS) <= 0x0805FFFFU) : ((ADDRESS) <= 0x0803FFFFU)))) + +#endif /* STM32F100xE || STM32F101xE || STM32F103xE */ + +/* XL Density */ +#if defined(FLASH_BANK2_END) +#define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x400U) ? \ + ((ADDRESS) <= FLASH_BANK2_END) : ((ADDRESS) <= 0x080BFFFFU))) + +#endif /* FLASH_BANK2_END */ + +/* Connectivity Line */ +#if (defined(STM32F105xC) || defined(STM32F107xC)) +#define IS_FLASH_PROGRAM_ADDRESS(ADDRESS) (((ADDRESS) >= FLASH_BASE) && (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x100U) ? \ + ((ADDRESS) <= FLASH_BANK1_END) : (((*((uint16_t *)FLASH_SIZE_DATA_REGISTER)) == 0x80U) ? \ + ((ADDRESS) <= 0x0801FFFFU) : ((ADDRESS) <= 0x0800FFFFU)))) + +#endif /* STM32F105xC || STM32F107xC */ + +/** + * @} + */ + +/* Exported types ------------------------------------------------------------*/ +/** @defgroup FLASHEx_Exported_Types FLASHEx Exported Types + * @{ + */ + +/** + * @brief FLASH Erase structure definition + */ +typedef struct +{ + uint32_t TypeErase; /*!< TypeErase: Mass erase or page erase. + This parameter can be a value of @ref FLASHEx_Type_Erase */ + + uint32_t Banks; /*!< Select banks to erase when Mass erase is enabled. + This parameter must be a value of @ref FLASHEx_Banks */ + + uint32_t PageAddress; /*!< PageAdress: Initial FLASH page address to erase when mass erase is disabled + This parameter must be a number between Min_Data = 0x08000000 and Max_Data = FLASH_BANKx_END + (x = 1 or 2 depending on devices)*/ + + uint32_t NbPages; /*!< NbPages: Number of pagess to be erased. + This parameter must be a value between Min_Data = 1 and Max_Data = (max number of pages - value of initial page)*/ + +} FLASH_EraseInitTypeDef; + +/** + * @brief FLASH Options bytes program structure definition + */ +typedef struct +{ + uint32_t OptionType; /*!< OptionType: Option byte to be configured. + This parameter can be a value of @ref FLASHEx_OB_Type */ + + uint32_t WRPState; /*!< WRPState: Write protection activation or deactivation. + This parameter can be a value of @ref FLASHEx_OB_WRP_State */ + + uint32_t WRPPage; /*!< WRPPage: specifies the page(s) to be write protected + This parameter can be a value of @ref FLASHEx_OB_Write_Protection */ + + uint32_t Banks; /*!< Select banks for WRP activation/deactivation of all sectors. + This parameter must be a value of @ref FLASHEx_Banks */ + + uint8_t RDPLevel; /*!< RDPLevel: Set the read protection level.. + This parameter can be a value of @ref FLASHEx_OB_Read_Protection */ + +#if defined(FLASH_BANK2_END) + uint8_t USERConfig; /*!< USERConfig: Program the FLASH User Option Byte: + IWDG / STOP / STDBY / BOOT1 + This parameter can be a combination of @ref FLASHEx_OB_IWatchdog, @ref FLASHEx_OB_nRST_STOP, + @ref FLASHEx_OB_nRST_STDBY, @ref FLASHEx_OB_BOOT1 */ +#else + uint8_t USERConfig; /*!< USERConfig: Program the FLASH User Option Byte: + IWDG / STOP / STDBY + This parameter can be a combination of @ref FLASHEx_OB_IWatchdog, @ref FLASHEx_OB_nRST_STOP, + @ref FLASHEx_OB_nRST_STDBY */ +#endif /* FLASH_BANK2_END */ + + uint32_t DATAAddress; /*!< DATAAddress: Address of the option byte DATA to be programmed + This parameter can be a value of @ref FLASHEx_OB_Data_Address */ + + uint8_t DATAData; /*!< DATAData: Data to be stored in the option byte DATA + This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF */ +} FLASH_OBProgramInitTypeDef; + +/** + * @} + */ + +/* Exported constants --------------------------------------------------------*/ +/** @defgroup FLASHEx_Exported_Constants FLASHEx Exported Constants + * @{ + */ + +/** @defgroup FLASHEx_Constants FLASH Constants + * @{ + */ + +/** @defgroup FLASHEx_Page_Size Page Size + * @{ + */ +#if (defined(STM32F101x6) || defined(STM32F102x6) || defined(STM32F103x6) || defined(STM32F100xB) || defined(STM32F101xB) || defined(STM32F102xB) || defined(STM32F103xB)) +#define FLASH_PAGE_SIZE 0x400U +#endif /* STM32F101x6 || STM32F102x6 || STM32F103x6 */ + /* STM32F100xB || STM32F101xB || STM32F102xB || STM32F103xB */ + +#if (defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG) || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC)) +#define FLASH_PAGE_SIZE 0x800U +#endif /* STM32F100xB || STM32F101xB || STM32F102xB || STM32F103xB */ + /* STM32F101xG || STM32F103xG */ + /* STM32F105xC || STM32F107xC */ + +/** + * @} + */ + +/** @defgroup FLASHEx_Type_Erase Type Erase + * @{ + */ +#define FLASH_TYPEERASE_PAGES 0x00U /*!CR, ((__INTERRUPT__) & 0x0000FFFFU)); \ + /* Enable Bank2 IT */ \ + SET_BIT(FLASH->CR2, ((__INTERRUPT__) >> 16U)); \ + } while(0U) + +/** + * @brief Disable the specified FLASH interrupt. + * @param __INTERRUPT__ FLASH interrupt + * This parameter can be any combination of the following values: + * @arg @ref FLASH_IT_EOP_BANK1 End of FLASH Operation Interrupt on bank1 + * @arg @ref FLASH_IT_ERR_BANK1 Error Interrupt on bank1 + * @arg @ref FLASH_IT_EOP_BANK2 End of FLASH Operation Interrupt on bank2 + * @arg @ref FLASH_IT_ERR_BANK2 Error Interrupt on bank2 + * @retval none + */ +#define __HAL_FLASH_DISABLE_IT(__INTERRUPT__) do { \ + /* Disable Bank1 IT */ \ + CLEAR_BIT(FLASH->CR, ((__INTERRUPT__) & 0x0000FFFFU)); \ + /* Disable Bank2 IT */ \ + CLEAR_BIT(FLASH->CR2, ((__INTERRUPT__) >> 16U)); \ + } while(0U) + +/** + * @brief Get the specified FLASH flag status. + * @param __FLAG__ specifies the FLASH flag to check. + * This parameter can be one of the following values: + * @arg @ref FLASH_FLAG_EOP_BANK1 FLASH End of Operation flag on bank1 + * @arg @ref FLASH_FLAG_WRPERR_BANK1 FLASH Write protected error flag on bank1 + * @arg @ref FLASH_FLAG_PGERR_BANK1 FLASH Programming error flag on bank1 + * @arg @ref FLASH_FLAG_BSY_BANK1 FLASH Busy flag on bank1 + * @arg @ref FLASH_FLAG_EOP_BANK2 FLASH End of Operation flag on bank2 + * @arg @ref FLASH_FLAG_WRPERR_BANK2 FLASH Write protected error flag on bank2 + * @arg @ref FLASH_FLAG_PGERR_BANK2 FLASH Programming error flag on bank2 + * @arg @ref FLASH_FLAG_BSY_BANK2 FLASH Busy flag on bank2 + * @arg @ref FLASH_FLAG_OPTVERR Loaded OB and its complement do not match + * @retval The new state of __FLAG__ (SET or RESET). + */ +#define __HAL_FLASH_GET_FLAG(__FLAG__) (((__FLAG__) == FLASH_FLAG_OPTVERR) ? \ + (FLASH->OBR & FLASH_OBR_OPTERR) : \ + ((((__FLAG__) & SR_FLAG_MASK) != RESET)? \ + (FLASH->SR & ((__FLAG__) & SR_FLAG_MASK)) : \ + (FLASH->SR2 & ((__FLAG__) >> 16U)))) + +/** + * @brief Clear the specified FLASH flag. + * @param __FLAG__ specifies the FLASH flags to clear. + * This parameter can be any combination of the following values: + * @arg @ref FLASH_FLAG_EOP_BANK1 FLASH End of Operation flag on bank1 + * @arg @ref FLASH_FLAG_WRPERR_BANK1 FLASH Write protected error flag on bank1 + * @arg @ref FLASH_FLAG_PGERR_BANK1 FLASH Programming error flag on bank1 + * @arg @ref FLASH_FLAG_BSY_BANK1 FLASH Busy flag on bank1 + * @arg @ref FLASH_FLAG_EOP_BANK2 FLASH End of Operation flag on bank2 + * @arg @ref FLASH_FLAG_WRPERR_BANK2 FLASH Write protected error flag on bank2 + * @arg @ref FLASH_FLAG_PGERR_BANK2 FLASH Programming error flag on bank2 + * @arg @ref FLASH_FLAG_BSY_BANK2 FLASH Busy flag on bank2 + * @arg @ref FLASH_FLAG_OPTVERR Loaded OB and its complement do not match + * @retval none + */ +#define __HAL_FLASH_CLEAR_FLAG(__FLAG__) do { \ + /* Clear FLASH_FLAG_OPTVERR flag */ \ + if ((__FLAG__) == FLASH_FLAG_OPTVERR) \ + { \ + CLEAR_BIT(FLASH->OBR, FLASH_OBR_OPTERR); \ + } \ + else { \ + /* Clear Flag in Bank1 */ \ + if (((__FLAG__) & SR_FLAG_MASK) != RESET) \ + { \ + FLASH->SR = ((__FLAG__) & SR_FLAG_MASK); \ + } \ + /* Clear Flag in Bank2 */ \ + if (((__FLAG__) >> 16U) != RESET) \ + { \ + FLASH->SR2 = ((__FLAG__) >> 16U); \ + } \ + } \ + } while(0U) +#else +/** + * @brief Enable the specified FLASH interrupt. + * @param __INTERRUPT__ FLASH interrupt + * This parameter can be any combination of the following values: + * @arg @ref FLASH_IT_EOP End of FLASH Operation Interrupt + * @arg @ref FLASH_IT_ERR Error Interrupt + * @retval none + */ +#define __HAL_FLASH_ENABLE_IT(__INTERRUPT__) (FLASH->CR |= (__INTERRUPT__)) + +/** + * @brief Disable the specified FLASH interrupt. + * @param __INTERRUPT__ FLASH interrupt + * This parameter can be any combination of the following values: + * @arg @ref FLASH_IT_EOP End of FLASH Operation Interrupt + * @arg @ref FLASH_IT_ERR Error Interrupt + * @retval none + */ +#define __HAL_FLASH_DISABLE_IT(__INTERRUPT__) (FLASH->CR &= ~(__INTERRUPT__)) + +/** + * @brief Get the specified FLASH flag status. + * @param __FLAG__ specifies the FLASH flag to check. + * This parameter can be one of the following values: + * @arg @ref FLASH_FLAG_EOP FLASH End of Operation flag + * @arg @ref FLASH_FLAG_WRPERR FLASH Write protected error flag + * @arg @ref FLASH_FLAG_PGERR FLASH Programming error flag + * @arg @ref FLASH_FLAG_BSY FLASH Busy flag + * @arg @ref FLASH_FLAG_OPTVERR Loaded OB and its complement do not match + * @retval The new state of __FLAG__ (SET or RESET). + */ +#define __HAL_FLASH_GET_FLAG(__FLAG__) (((__FLAG__) == FLASH_FLAG_OPTVERR) ? \ + (FLASH->OBR & FLASH_OBR_OPTERR) : \ + (FLASH->SR & (__FLAG__))) +/** + * @brief Clear the specified FLASH flag. + * @param __FLAG__ specifies the FLASH flags to clear. + * This parameter can be any combination of the following values: + * @arg @ref FLASH_FLAG_EOP FLASH End of Operation flag + * @arg @ref FLASH_FLAG_WRPERR FLASH Write protected error flag + * @arg @ref FLASH_FLAG_PGERR FLASH Programming error flag + * @arg @ref FLASH_FLAG_OPTVERR Loaded OB and its complement do not match + * @retval none + */ +#define __HAL_FLASH_CLEAR_FLAG(__FLAG__) do { \ + /* Clear FLASH_FLAG_OPTVERR flag */ \ + if ((__FLAG__) == FLASH_FLAG_OPTVERR) \ + { \ + CLEAR_BIT(FLASH->OBR, FLASH_OBR_OPTERR); \ + } \ + else { \ + /* Clear Flag in Bank1 */ \ + FLASH->SR = (__FLAG__); \ + } \ + } while(0U) + +#endif + +/** + * @} + */ + +/** + * @} + */ + +/* Exported functions --------------------------------------------------------*/ +/** @addtogroup FLASHEx_Exported_Functions + * @{ + */ + +/** @addtogroup FLASHEx_Exported_Functions_Group1 + * @{ + */ +/* IO operation functions *****************************************************/ +HAL_StatusTypeDef HAL_FLASHEx_Erase(FLASH_EraseInitTypeDef *pEraseInit, uint32_t *PageError); +HAL_StatusTypeDef HAL_FLASHEx_Erase_IT(FLASH_EraseInitTypeDef *pEraseInit); + +/** + * @} + */ + +/** @addtogroup FLASHEx_Exported_Functions_Group2 + * @{ + */ +/* Peripheral Control functions ***********************************************/ +HAL_StatusTypeDef HAL_FLASHEx_OBErase(void); +HAL_StatusTypeDef HAL_FLASHEx_OBProgram(FLASH_OBProgramInitTypeDef *pOBInit); +void HAL_FLASHEx_OBGetConfig(FLASH_OBProgramInitTypeDef *pOBInit); +uint32_t HAL_FLASHEx_OBGetUserData(uint32_t DATAAdress); +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F1xx_HAL_FLASH_EX_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h index 2973944..a344f8f 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h @@ -1,308 +1,308 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_gpio.h - * @author MCD Application Team - * @brief Header file of GPIO HAL module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef STM32F1xx_HAL_GPIO_H -#define STM32F1xx_HAL_GPIO_H - -#ifdef __cplusplus -extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup GPIO - * @{ - */ - -/* Exported types ------------------------------------------------------------*/ -/** @defgroup GPIO_Exported_Types GPIO Exported Types - * @{ - */ - -/** - * @brief GPIO Init structure definition - */ -typedef struct -{ - uint32_t Pin; /*!< Specifies the GPIO pins to be configured. - This parameter can be any value of @ref GPIO_pins_define */ - - uint32_t Mode; /*!< Specifies the operating mode for the selected pins. - This parameter can be a value of @ref GPIO_mode_define */ - - uint32_t Pull; /*!< Specifies the Pull-up or Pull-Down activation for the selected pins. - This parameter can be a value of @ref GPIO_pull_define */ - - uint32_t Speed; /*!< Specifies the speed for the selected pins. - This parameter can be a value of @ref GPIO_speed_define */ -} GPIO_InitTypeDef; - -/** - * @brief GPIO Bit SET and Bit RESET enumeration - */ -typedef enum -{ - GPIO_PIN_RESET = 0u, - GPIO_PIN_SET -} GPIO_PinState; -/** - * @} - */ - -/* Exported constants --------------------------------------------------------*/ - -/** @defgroup GPIO_Exported_Constants GPIO Exported Constants - * @{ - */ - -/** @defgroup GPIO_pins_define GPIO pins define - * @{ - */ -#define GPIO_PIN_0 ((uint16_t)0x0001) /* Pin 0 selected */ -#define GPIO_PIN_1 ((uint16_t)0x0002) /* Pin 1 selected */ -#define GPIO_PIN_2 ((uint16_t)0x0004) /* Pin 2 selected */ -#define GPIO_PIN_3 ((uint16_t)0x0008) /* Pin 3 selected */ -#define GPIO_PIN_4 ((uint16_t)0x0010) /* Pin 4 selected */ -#define GPIO_PIN_5 ((uint16_t)0x0020) /* Pin 5 selected */ -#define GPIO_PIN_6 ((uint16_t)0x0040) /* Pin 6 selected */ -#define GPIO_PIN_7 ((uint16_t)0x0080) /* Pin 7 selected */ -#define GPIO_PIN_8 ((uint16_t)0x0100) /* Pin 8 selected */ -#define GPIO_PIN_9 ((uint16_t)0x0200) /* Pin 9 selected */ -#define GPIO_PIN_10 ((uint16_t)0x0400) /* Pin 10 selected */ -#define GPIO_PIN_11 ((uint16_t)0x0800) /* Pin 11 selected */ -#define GPIO_PIN_12 ((uint16_t)0x1000) /* Pin 12 selected */ -#define GPIO_PIN_13 ((uint16_t)0x2000) /* Pin 13 selected */ -#define GPIO_PIN_14 ((uint16_t)0x4000) /* Pin 14 selected */ -#define GPIO_PIN_15 ((uint16_t)0x8000) /* Pin 15 selected */ -#define GPIO_PIN_All ((uint16_t)0xFFFF) /* All pins selected */ - -#define GPIO_PIN_MASK 0x0000FFFFu /* PIN mask for assert test */ -/** - * @} - */ - -/** @defgroup GPIO_mode_define GPIO mode define - * @brief GPIO Configuration Mode - * Elements values convention: 0xX0yz00YZ - * - X : GPIO mode or EXTI Mode - * - y : External IT or Event trigger detection - * - z : IO configuration on External IT or Event - * - Y : Output type (Push Pull or Open Drain) - * - Z : IO Direction mode (Input, Output, Alternate or Analog) - * @{ - */ -#define GPIO_MODE_INPUT 0x00000000u /*!< Input Floating Mode */ -#define GPIO_MODE_OUTPUT_PP 0x00000001u /*!< Output Push Pull Mode */ -#define GPIO_MODE_OUTPUT_OD 0x00000011u /*!< Output Open Drain Mode */ -#define GPIO_MODE_AF_PP 0x00000002u /*!< Alternate Function Push Pull Mode */ -#define GPIO_MODE_AF_OD 0x00000012u /*!< Alternate Function Open Drain Mode */ -#define GPIO_MODE_AF_INPUT GPIO_MODE_INPUT /*!< Alternate Function Input Mode */ - -#define GPIO_MODE_ANALOG 0x00000003u /*!< Analog Mode */ - -#define GPIO_MODE_IT_RISING 0x10110000u /*!< External Interrupt Mode with Rising edge trigger detection */ -#define GPIO_MODE_IT_FALLING 0x10210000u /*!< External Interrupt Mode with Falling edge trigger detection */ -#define GPIO_MODE_IT_RISING_FALLING 0x10310000u /*!< External Interrupt Mode with Rising/Falling edge trigger detection */ - -#define GPIO_MODE_EVT_RISING 0x10120000u /*!< External Event Mode with Rising edge trigger detection */ -#define GPIO_MODE_EVT_FALLING 0x10220000u /*!< External Event Mode with Falling edge trigger detection */ -#define GPIO_MODE_EVT_RISING_FALLING 0x10320000u /*!< External Event Mode with Rising/Falling edge trigger detection */ - -/** - * @} - */ - -/** @defgroup GPIO_speed_define GPIO speed define - * @brief GPIO Output Maximum frequency - * @{ - */ -#define GPIO_SPEED_FREQ_LOW (GPIO_CRL_MODE0_1) /*!< Low speed */ -#define GPIO_SPEED_FREQ_MEDIUM (GPIO_CRL_MODE0_0) /*!< Medium speed */ -#define GPIO_SPEED_FREQ_HIGH (GPIO_CRL_MODE0) /*!< High speed */ - -/** - * @} - */ - -/** @defgroup GPIO_pull_define GPIO pull define - * @brief GPIO Pull-Up or Pull-Down Activation - * @{ - */ -#define GPIO_NOPULL 0x00000000u /*!< No Pull-up or Pull-down activation */ -#define GPIO_PULLUP 0x00000001u /*!< Pull-up activation */ -#define GPIO_PULLDOWN 0x00000002u /*!< Pull-down activation */ -/** - * @} - */ - -/** - * @} - */ - -/* Exported macro ------------------------------------------------------------*/ -/** @defgroup GPIO_Exported_Macros GPIO Exported Macros - * @{ - */ - -/** - * @brief Checks whether the specified EXTI line flag is set or not. - * @param __EXTI_LINE__: specifies the EXTI line flag to check. - * This parameter can be GPIO_PIN_x where x can be(0..15) - * @retval The new state of __EXTI_LINE__ (SET or RESET). - */ -#define __HAL_GPIO_EXTI_GET_FLAG(__EXTI_LINE__) (EXTI->PR & (__EXTI_LINE__)) - -/** - * @brief Clears the EXTI's line pending flags. - * @param __EXTI_LINE__: specifies the EXTI lines flags to clear. - * This parameter can be any combination of GPIO_PIN_x where x can be (0..15) - * @retval None - */ -#define __HAL_GPIO_EXTI_CLEAR_FLAG(__EXTI_LINE__) (EXTI->PR = (__EXTI_LINE__)) - -/** - * @brief Checks whether the specified EXTI line is asserted or not. - * @param __EXTI_LINE__: specifies the EXTI line to check. - * This parameter can be GPIO_PIN_x where x can be(0..15) - * @retval The new state of __EXTI_LINE__ (SET or RESET). - */ -#define __HAL_GPIO_EXTI_GET_IT(__EXTI_LINE__) (EXTI->PR & (__EXTI_LINE__)) - -/** - * @brief Clears the EXTI's line pending bits. - * @param __EXTI_LINE__: specifies the EXTI lines to clear. - * This parameter can be any combination of GPIO_PIN_x where x can be (0..15) - * @retval None - */ -#define __HAL_GPIO_EXTI_CLEAR_IT(__EXTI_LINE__) (EXTI->PR = (__EXTI_LINE__)) - -/** - * @brief Generates a Software interrupt on selected EXTI line. - * @param __EXTI_LINE__: specifies the EXTI line to check. - * This parameter can be GPIO_PIN_x where x can be(0..15) - * @retval None - */ -#define __HAL_GPIO_EXTI_GENERATE_SWIT(__EXTI_LINE__) (EXTI->SWIER |= (__EXTI_LINE__)) -/** - * @} - */ - -/* Include GPIO HAL Extension module */ -#include "stm32f1xx_hal_gpio_ex.h" - -/* Exported functions --------------------------------------------------------*/ -/** @addtogroup GPIO_Exported_Functions - * @{ - */ - -/** @addtogroup GPIO_Exported_Functions_Group1 - * @{ - */ -/* Initialization and de-initialization functions *****************************/ -void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init); -void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin); -/** - * @} - */ - -/** @addtogroup GPIO_Exported_Functions_Group2 - * @{ - */ -/* IO operation functions *****************************************************/ -GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); -void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState); -void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); -HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); -void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin); -void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin); - -/** - * @} - */ - -/** - * @} - */ -/* Private types -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private constants ---------------------------------------------------------*/ -/** @defgroup GPIO_Private_Constants GPIO Private Constants - * @{ - */ - -/** - * @} - */ - -/* Private macros ------------------------------------------------------------*/ -/** @defgroup GPIO_Private_Macros GPIO Private Macros - * @{ - */ -#define IS_GPIO_PIN_ACTION(ACTION) (((ACTION) == GPIO_PIN_RESET) || ((ACTION) == GPIO_PIN_SET)) -#define IS_GPIO_PIN(PIN) (((((uint32_t)PIN) & GPIO_PIN_MASK ) != 0x00u) && ((((uint32_t)PIN) & ~GPIO_PIN_MASK) == 0x00u)) -#define IS_GPIO_MODE(MODE) (((MODE) == GPIO_MODE_INPUT) ||\ - ((MODE) == GPIO_MODE_OUTPUT_PP) ||\ - ((MODE) == GPIO_MODE_OUTPUT_OD) ||\ - ((MODE) == GPIO_MODE_AF_PP) ||\ - ((MODE) == GPIO_MODE_AF_OD) ||\ - ((MODE) == GPIO_MODE_IT_RISING) ||\ - ((MODE) == GPIO_MODE_IT_FALLING) ||\ - ((MODE) == GPIO_MODE_IT_RISING_FALLING) ||\ - ((MODE) == GPIO_MODE_EVT_RISING) ||\ - ((MODE) == GPIO_MODE_EVT_FALLING) ||\ - ((MODE) == GPIO_MODE_EVT_RISING_FALLING) ||\ - ((MODE) == GPIO_MODE_ANALOG)) -#define IS_GPIO_SPEED(SPEED) (((SPEED) == GPIO_SPEED_FREQ_LOW) || \ - ((SPEED) == GPIO_SPEED_FREQ_MEDIUM) || ((SPEED) == GPIO_SPEED_FREQ_HIGH)) -#define IS_GPIO_PULL(PULL) (((PULL) == GPIO_NOPULL) || ((PULL) == GPIO_PULLUP) || \ - ((PULL) == GPIO_PULLDOWN)) -/** - * @} - */ - -/* Private functions ---------------------------------------------------------*/ -/** @defgroup GPIO_Private_Functions GPIO Private Functions - * @{ - */ - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /* STM32F1xx_HAL_GPIO_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_gpio.h + * @author MCD Application Team + * @brief Header file of GPIO HAL module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef STM32F1xx_HAL_GPIO_H +#define STM32F1xx_HAL_GPIO_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup GPIO + * @{ + */ + +/* Exported types ------------------------------------------------------------*/ +/** @defgroup GPIO_Exported_Types GPIO Exported Types + * @{ + */ + +/** + * @brief GPIO Init structure definition + */ +typedef struct +{ + uint32_t Pin; /*!< Specifies the GPIO pins to be configured. + This parameter can be any value of @ref GPIO_pins_define */ + + uint32_t Mode; /*!< Specifies the operating mode for the selected pins. + This parameter can be a value of @ref GPIO_mode_define */ + + uint32_t Pull; /*!< Specifies the Pull-up or Pull-Down activation for the selected pins. + This parameter can be a value of @ref GPIO_pull_define */ + + uint32_t Speed; /*!< Specifies the speed for the selected pins. + This parameter can be a value of @ref GPIO_speed_define */ +} GPIO_InitTypeDef; + +/** + * @brief GPIO Bit SET and Bit RESET enumeration + */ +typedef enum +{ + GPIO_PIN_RESET = 0u, + GPIO_PIN_SET +} GPIO_PinState; +/** + * @} + */ + +/* Exported constants --------------------------------------------------------*/ + +/** @defgroup GPIO_Exported_Constants GPIO Exported Constants + * @{ + */ + +/** @defgroup GPIO_pins_define GPIO pins define + * @{ + */ +#define GPIO_PIN_0 ((uint16_t)0x0001) /* Pin 0 selected */ +#define GPIO_PIN_1 ((uint16_t)0x0002) /* Pin 1 selected */ +#define GPIO_PIN_2 ((uint16_t)0x0004) /* Pin 2 selected */ +#define GPIO_PIN_3 ((uint16_t)0x0008) /* Pin 3 selected */ +#define GPIO_PIN_4 ((uint16_t)0x0010) /* Pin 4 selected */ +#define GPIO_PIN_5 ((uint16_t)0x0020) /* Pin 5 selected */ +#define GPIO_PIN_6 ((uint16_t)0x0040) /* Pin 6 selected */ +#define GPIO_PIN_7 ((uint16_t)0x0080) /* Pin 7 selected */ +#define GPIO_PIN_8 ((uint16_t)0x0100) /* Pin 8 selected */ +#define GPIO_PIN_9 ((uint16_t)0x0200) /* Pin 9 selected */ +#define GPIO_PIN_10 ((uint16_t)0x0400) /* Pin 10 selected */ +#define GPIO_PIN_11 ((uint16_t)0x0800) /* Pin 11 selected */ +#define GPIO_PIN_12 ((uint16_t)0x1000) /* Pin 12 selected */ +#define GPIO_PIN_13 ((uint16_t)0x2000) /* Pin 13 selected */ +#define GPIO_PIN_14 ((uint16_t)0x4000) /* Pin 14 selected */ +#define GPIO_PIN_15 ((uint16_t)0x8000) /* Pin 15 selected */ +#define GPIO_PIN_All ((uint16_t)0xFFFF) /* All pins selected */ + +#define GPIO_PIN_MASK 0x0000FFFFu /* PIN mask for assert test */ +/** + * @} + */ + +/** @defgroup GPIO_mode_define GPIO mode define + * @brief GPIO Configuration Mode + * Elements values convention: 0xX0yz00YZ + * - X : GPIO mode or EXTI Mode + * - y : External IT or Event trigger detection + * - z : IO configuration on External IT or Event + * - Y : Output type (Push Pull or Open Drain) + * - Z : IO Direction mode (Input, Output, Alternate or Analog) + * @{ + */ +#define GPIO_MODE_INPUT 0x00000000u /*!< Input Floating Mode */ +#define GPIO_MODE_OUTPUT_PP 0x00000001u /*!< Output Push Pull Mode */ +#define GPIO_MODE_OUTPUT_OD 0x00000011u /*!< Output Open Drain Mode */ +#define GPIO_MODE_AF_PP 0x00000002u /*!< Alternate Function Push Pull Mode */ +#define GPIO_MODE_AF_OD 0x00000012u /*!< Alternate Function Open Drain Mode */ +#define GPIO_MODE_AF_INPUT GPIO_MODE_INPUT /*!< Alternate Function Input Mode */ + +#define GPIO_MODE_ANALOG 0x00000003u /*!< Analog Mode */ + +#define GPIO_MODE_IT_RISING 0x10110000u /*!< External Interrupt Mode with Rising edge trigger detection */ +#define GPIO_MODE_IT_FALLING 0x10210000u /*!< External Interrupt Mode with Falling edge trigger detection */ +#define GPIO_MODE_IT_RISING_FALLING 0x10310000u /*!< External Interrupt Mode with Rising/Falling edge trigger detection */ + +#define GPIO_MODE_EVT_RISING 0x10120000u /*!< External Event Mode with Rising edge trigger detection */ +#define GPIO_MODE_EVT_FALLING 0x10220000u /*!< External Event Mode with Falling edge trigger detection */ +#define GPIO_MODE_EVT_RISING_FALLING 0x10320000u /*!< External Event Mode with Rising/Falling edge trigger detection */ + +/** + * @} + */ + +/** @defgroup GPIO_speed_define GPIO speed define + * @brief GPIO Output Maximum frequency + * @{ + */ +#define GPIO_SPEED_FREQ_LOW (GPIO_CRL_MODE0_1) /*!< Low speed */ +#define GPIO_SPEED_FREQ_MEDIUM (GPIO_CRL_MODE0_0) /*!< Medium speed */ +#define GPIO_SPEED_FREQ_HIGH (GPIO_CRL_MODE0) /*!< High speed */ + +/** + * @} + */ + +/** @defgroup GPIO_pull_define GPIO pull define + * @brief GPIO Pull-Up or Pull-Down Activation + * @{ + */ +#define GPIO_NOPULL 0x00000000u /*!< No Pull-up or Pull-down activation */ +#define GPIO_PULLUP 0x00000001u /*!< Pull-up activation */ +#define GPIO_PULLDOWN 0x00000002u /*!< Pull-down activation */ +/** + * @} + */ + +/** + * @} + */ + +/* Exported macro ------------------------------------------------------------*/ +/** @defgroup GPIO_Exported_Macros GPIO Exported Macros + * @{ + */ + +/** + * @brief Checks whether the specified EXTI line flag is set or not. + * @param __EXTI_LINE__: specifies the EXTI line flag to check. + * This parameter can be GPIO_PIN_x where x can be(0..15) + * @retval The new state of __EXTI_LINE__ (SET or RESET). + */ +#define __HAL_GPIO_EXTI_GET_FLAG(__EXTI_LINE__) (EXTI->PR & (__EXTI_LINE__)) + +/** + * @brief Clears the EXTI's line pending flags. + * @param __EXTI_LINE__: specifies the EXTI lines flags to clear. + * This parameter can be any combination of GPIO_PIN_x where x can be (0..15) + * @retval None + */ +#define __HAL_GPIO_EXTI_CLEAR_FLAG(__EXTI_LINE__) (EXTI->PR = (__EXTI_LINE__)) + +/** + * @brief Checks whether the specified EXTI line is asserted or not. + * @param __EXTI_LINE__: specifies the EXTI line to check. + * This parameter can be GPIO_PIN_x where x can be(0..15) + * @retval The new state of __EXTI_LINE__ (SET or RESET). + */ +#define __HAL_GPIO_EXTI_GET_IT(__EXTI_LINE__) (EXTI->PR & (__EXTI_LINE__)) + +/** + * @brief Clears the EXTI's line pending bits. + * @param __EXTI_LINE__: specifies the EXTI lines to clear. + * This parameter can be any combination of GPIO_PIN_x where x can be (0..15) + * @retval None + */ +#define __HAL_GPIO_EXTI_CLEAR_IT(__EXTI_LINE__) (EXTI->PR = (__EXTI_LINE__)) + +/** + * @brief Generates a Software interrupt on selected EXTI line. + * @param __EXTI_LINE__: specifies the EXTI line to check. + * This parameter can be GPIO_PIN_x where x can be(0..15) + * @retval None + */ +#define __HAL_GPIO_EXTI_GENERATE_SWIT(__EXTI_LINE__) (EXTI->SWIER |= (__EXTI_LINE__)) +/** + * @} + */ + +/* Include GPIO HAL Extension module */ +#include "stm32f1xx_hal_gpio_ex.h" + +/* Exported functions --------------------------------------------------------*/ +/** @addtogroup GPIO_Exported_Functions + * @{ + */ + +/** @addtogroup GPIO_Exported_Functions_Group1 + * @{ + */ +/* Initialization and de-initialization functions *****************************/ +void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init); +void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin); +/** + * @} + */ + +/** @addtogroup GPIO_Exported_Functions_Group2 + * @{ + */ +/* IO operation functions *****************************************************/ +GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); +void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState); +void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); +HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin); +void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin); +void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin); + +/** + * @} + */ + +/** + * @} + */ +/* Private types -------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ +/* Private constants ---------------------------------------------------------*/ +/** @defgroup GPIO_Private_Constants GPIO Private Constants + * @{ + */ + +/** + * @} + */ + +/* Private macros ------------------------------------------------------------*/ +/** @defgroup GPIO_Private_Macros GPIO Private Macros + * @{ + */ +#define IS_GPIO_PIN_ACTION(ACTION) (((ACTION) == GPIO_PIN_RESET) || ((ACTION) == GPIO_PIN_SET)) +#define IS_GPIO_PIN(PIN) (((((uint32_t)PIN) & GPIO_PIN_MASK ) != 0x00u) && ((((uint32_t)PIN) & ~GPIO_PIN_MASK) == 0x00u)) +#define IS_GPIO_MODE(MODE) (((MODE) == GPIO_MODE_INPUT) ||\ + ((MODE) == GPIO_MODE_OUTPUT_PP) ||\ + ((MODE) == GPIO_MODE_OUTPUT_OD) ||\ + ((MODE) == GPIO_MODE_AF_PP) ||\ + ((MODE) == GPIO_MODE_AF_OD) ||\ + ((MODE) == GPIO_MODE_IT_RISING) ||\ + ((MODE) == GPIO_MODE_IT_FALLING) ||\ + ((MODE) == GPIO_MODE_IT_RISING_FALLING) ||\ + ((MODE) == GPIO_MODE_EVT_RISING) ||\ + ((MODE) == GPIO_MODE_EVT_FALLING) ||\ + ((MODE) == GPIO_MODE_EVT_RISING_FALLING) ||\ + ((MODE) == GPIO_MODE_ANALOG)) +#define IS_GPIO_SPEED(SPEED) (((SPEED) == GPIO_SPEED_FREQ_LOW) || \ + ((SPEED) == GPIO_SPEED_FREQ_MEDIUM) || ((SPEED) == GPIO_SPEED_FREQ_HIGH)) +#define IS_GPIO_PULL(PULL) (((PULL) == GPIO_NOPULL) || ((PULL) == GPIO_PULLUP) || \ + ((PULL) == GPIO_PULLDOWN)) +/** + * @} + */ + +/* Private functions ---------------------------------------------------------*/ +/** @defgroup GPIO_Private_Functions GPIO Private Functions + * @{ + */ + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /* STM32F1xx_HAL_GPIO_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h index 56bcb85..5f6c3fd 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h @@ -1,894 +1,894 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_gpio_ex.h - * @author MCD Application Team - * @brief Header file of GPIO HAL Extension module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef STM32F1xx_HAL_GPIO_EX_H -#define STM32F1xx_HAL_GPIO_EX_H - -#ifdef __cplusplus -extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup GPIOEx GPIOEx - * @{ - */ -/* Exported types ------------------------------------------------------------*/ -/* Exported constants --------------------------------------------------------*/ - -/** @defgroup GPIOEx_Exported_Constants GPIOEx Exported Constants - * @{ - */ - -/** @defgroup GPIOEx_EVENTOUT EVENTOUT Cortex Configuration - * @brief This section propose definition to use the Cortex EVENTOUT signal. - * @{ - */ - -/** @defgroup GPIOEx_EVENTOUT_PIN EVENTOUT Pin - * @{ - */ - -#define AFIO_EVENTOUT_PIN_0 AFIO_EVCR_PIN_PX0 /*!< EVENTOUT on pin 0 */ -#define AFIO_EVENTOUT_PIN_1 AFIO_EVCR_PIN_PX1 /*!< EVENTOUT on pin 1 */ -#define AFIO_EVENTOUT_PIN_2 AFIO_EVCR_PIN_PX2 /*!< EVENTOUT on pin 2 */ -#define AFIO_EVENTOUT_PIN_3 AFIO_EVCR_PIN_PX3 /*!< EVENTOUT on pin 3 */ -#define AFIO_EVENTOUT_PIN_4 AFIO_EVCR_PIN_PX4 /*!< EVENTOUT on pin 4 */ -#define AFIO_EVENTOUT_PIN_5 AFIO_EVCR_PIN_PX5 /*!< EVENTOUT on pin 5 */ -#define AFIO_EVENTOUT_PIN_6 AFIO_EVCR_PIN_PX6 /*!< EVENTOUT on pin 6 */ -#define AFIO_EVENTOUT_PIN_7 AFIO_EVCR_PIN_PX7 /*!< EVENTOUT on pin 7 */ -#define AFIO_EVENTOUT_PIN_8 AFIO_EVCR_PIN_PX8 /*!< EVENTOUT on pin 8 */ -#define AFIO_EVENTOUT_PIN_9 AFIO_EVCR_PIN_PX9 /*!< EVENTOUT on pin 9 */ -#define AFIO_EVENTOUT_PIN_10 AFIO_EVCR_PIN_PX10 /*!< EVENTOUT on pin 10 */ -#define AFIO_EVENTOUT_PIN_11 AFIO_EVCR_PIN_PX11 /*!< EVENTOUT on pin 11 */ -#define AFIO_EVENTOUT_PIN_12 AFIO_EVCR_PIN_PX12 /*!< EVENTOUT on pin 12 */ -#define AFIO_EVENTOUT_PIN_13 AFIO_EVCR_PIN_PX13 /*!< EVENTOUT on pin 13 */ -#define AFIO_EVENTOUT_PIN_14 AFIO_EVCR_PIN_PX14 /*!< EVENTOUT on pin 14 */ -#define AFIO_EVENTOUT_PIN_15 AFIO_EVCR_PIN_PX15 /*!< EVENTOUT on pin 15 */ - -#define IS_AFIO_EVENTOUT_PIN(__PIN__) (((__PIN__) == AFIO_EVENTOUT_PIN_0) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_1) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_2) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_3) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_4) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_5) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_6) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_7) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_8) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_9) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_10) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_11) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_12) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_13) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_14) || \ - ((__PIN__) == AFIO_EVENTOUT_PIN_15)) -/** - * @} - */ - -/** @defgroup GPIOEx_EVENTOUT_PORT EVENTOUT Port - * @{ - */ - -#define AFIO_EVENTOUT_PORT_A AFIO_EVCR_PORT_PA /*!< EVENTOUT on port A */ -#define AFIO_EVENTOUT_PORT_B AFIO_EVCR_PORT_PB /*!< EVENTOUT on port B */ -#define AFIO_EVENTOUT_PORT_C AFIO_EVCR_PORT_PC /*!< EVENTOUT on port C */ -#define AFIO_EVENTOUT_PORT_D AFIO_EVCR_PORT_PD /*!< EVENTOUT on port D */ -#define AFIO_EVENTOUT_PORT_E AFIO_EVCR_PORT_PE /*!< EVENTOUT on port E */ - -#define IS_AFIO_EVENTOUT_PORT(__PORT__) (((__PORT__) == AFIO_EVENTOUT_PORT_A) || \ - ((__PORT__) == AFIO_EVENTOUT_PORT_B) || \ - ((__PORT__) == AFIO_EVENTOUT_PORT_C) || \ - ((__PORT__) == AFIO_EVENTOUT_PORT_D) || \ - ((__PORT__) == AFIO_EVENTOUT_PORT_E)) -/** - * @} - */ - -/** - * @} - */ - -/** @defgroup GPIOEx_AFIO_AF_REMAPPING Alternate Function Remapping - * @brief This section propose definition to remap the alternate function to some other port/pins. - * @{ - */ - -/** - * @brief Enable the remapping of SPI1 alternate function NSS, SCK, MISO and MOSI. - * @note ENABLE: Remap (NSS/PA15, SCK/PB3, MISO/PB4, MOSI/PB5) - * @retval None - */ -#define __HAL_AFIO_REMAP_SPI1_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_SPI1_REMAP) - -/** - * @brief Disable the remapping of SPI1 alternate function NSS, SCK, MISO and MOSI. - * @note DISABLE: No remap (NSS/PA4, SCK/PA5, MISO/PA6, MOSI/PA7) - * @retval None - */ -#define __HAL_AFIO_REMAP_SPI1_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_SPI1_REMAP) - -/** - * @brief Enable the remapping of I2C1 alternate function SCL and SDA. - * @note ENABLE: Remap (SCL/PB8, SDA/PB9) - * @retval None - */ -#define __HAL_AFIO_REMAP_I2C1_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_I2C1_REMAP) - -/** - * @brief Disable the remapping of I2C1 alternate function SCL and SDA. - * @note DISABLE: No remap (SCL/PB6, SDA/PB7) - * @retval None - */ -#define __HAL_AFIO_REMAP_I2C1_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_I2C1_REMAP) - -/** - * @brief Enable the remapping of USART1 alternate function TX and RX. - * @note ENABLE: Remap (TX/PB6, RX/PB7) - * @retval None - */ -#define __HAL_AFIO_REMAP_USART1_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_USART1_REMAP) - -/** - * @brief Disable the remapping of USART1 alternate function TX and RX. - * @note DISABLE: No remap (TX/PA9, RX/PA10) - * @retval None - */ -#define __HAL_AFIO_REMAP_USART1_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_USART1_REMAP) - -/** - * @brief Enable the remapping of USART2 alternate function CTS, RTS, CK, TX and RX. - * @note ENABLE: Remap (CTS/PD3, RTS/PD4, TX/PD5, RX/PD6, CK/PD7) - * @retval None - */ -#define __HAL_AFIO_REMAP_USART2_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_USART2_REMAP) - -/** - * @brief Disable the remapping of USART2 alternate function CTS, RTS, CK, TX and RX. - * @note DISABLE: No remap (CTS/PA0, RTS/PA1, TX/PA2, RX/PA3, CK/PA4) - * @retval None - */ -#define __HAL_AFIO_REMAP_USART2_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_USART2_REMAP) - -/** - * @brief Enable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX. - * @note ENABLE: Full remap (TX/PD8, RX/PD9, CK/PD10, CTS/PD11, RTS/PD12) - * @retval None - */ -#define __HAL_AFIO_REMAP_USART3_ENABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_USART3_REMAP_FULLREMAP, AFIO_MAPR_USART3_REMAP_FULLREMAP) - -/** - * @brief Enable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX. - * @note PARTIAL: Partial remap (TX/PC10, RX/PC11, CK/PC12, CTS/PB13, RTS/PB14) - * @retval None - */ -#define __HAL_AFIO_REMAP_USART3_PARTIAL() AFIO_REMAP_PARTIAL(AFIO_MAPR_USART3_REMAP_PARTIALREMAP, AFIO_MAPR_USART3_REMAP_FULLREMAP) - -/** - * @brief Disable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX. - * @note DISABLE: No remap (TX/PB10, RX/PB11, CK/PB12, CTS/PB13, RTS/PB14) - * @retval None - */ -#define __HAL_AFIO_REMAP_USART3_DISABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_USART3_REMAP_NOREMAP, AFIO_MAPR_USART3_REMAP_FULLREMAP) - -/** - * @brief Enable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) - * @note ENABLE: Full remap (ETR/PE7, CH1/PE9, CH2/PE11, CH3/PE13, CH4/PE14, BKIN/PE15, CH1N/PE8, CH2N/PE10, CH3N/PE12) - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM1_ENABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM1_REMAP_FULLREMAP, AFIO_MAPR_TIM1_REMAP_FULLREMAP) - -/** - * @brief Enable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) - * @note PARTIAL: Partial remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PA6, CH1N/PA7, CH2N/PB0, CH3N/PB1) - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM1_PARTIAL() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM1_REMAP_PARTIALREMAP, AFIO_MAPR_TIM1_REMAP_FULLREMAP) - -/** - * @brief Disable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) - * @note DISABLE: No remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PB12, CH1N/PB13, CH2N/PB14, CH3N/PB15) - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM1_DISABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM1_REMAP_NOREMAP, AFIO_MAPR_TIM1_REMAP_FULLREMAP) - -/** - * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) - * @note ENABLE: Full remap (CH1/ETR/PA15, CH2/PB3, CH3/PB10, CH4/PB11) - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM2_ENABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM2_REMAP_FULLREMAP, AFIO_MAPR_TIM2_REMAP_FULLREMAP) - -/** - * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) - * @note PARTIAL_2: Partial remap (CH1/ETR/PA0, CH2/PA1, CH3/PB10, CH4/PB11) - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM2_PARTIAL_2() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2, AFIO_MAPR_TIM2_REMAP_FULLREMAP) - -/** - * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) - * @note PARTIAL_1: Partial remap (CH1/ETR/PA15, CH2/PB3, CH3/PA2, CH4/PA3) - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM2_PARTIAL_1() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1, AFIO_MAPR_TIM2_REMAP_FULLREMAP) - -/** - * @brief Disable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) - * @note DISABLE: No remap (CH1/ETR/PA0, CH2/PA1, CH3/PA2, CH4/PA3) - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM2_DISABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM2_REMAP_NOREMAP, AFIO_MAPR_TIM2_REMAP_FULLREMAP) - -/** - * @brief Enable the remapping of TIM3 alternate function channels 1 to 4 - * @note ENABLE: Full remap (CH1/PC6, CH2/PC7, CH3/PC8, CH4/PC9) - * @note TIM3_ETR on PE0 is not re-mapped. - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM3_ENABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM3_REMAP_FULLREMAP, AFIO_MAPR_TIM3_REMAP_FULLREMAP) - -/** - * @brief Enable the remapping of TIM3 alternate function channels 1 to 4 - * @note PARTIAL: Partial remap (CH1/PB4, CH2/PB5, CH3/PB0, CH4/PB1) - * @note TIM3_ETR on PE0 is not re-mapped. - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM3_PARTIAL() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM3_REMAP_PARTIALREMAP, AFIO_MAPR_TIM3_REMAP_FULLREMAP) - -/** - * @brief Disable the remapping of TIM3 alternate function channels 1 to 4 - * @note DISABLE: No remap (CH1/PA6, CH2/PA7, CH3/PB0, CH4/PB1) - * @note TIM3_ETR on PE0 is not re-mapped. - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM3_DISABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM3_REMAP_NOREMAP, AFIO_MAPR_TIM3_REMAP_FULLREMAP) - -/** - * @brief Enable the remapping of TIM4 alternate function channels 1 to 4. - * @note ENABLE: Full remap (TIM4_CH1/PD12, TIM4_CH2/PD13, TIM4_CH3/PD14, TIM4_CH4/PD15) - * @note TIM4_ETR on PE0 is not re-mapped. - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM4_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_TIM4_REMAP) - -/** - * @brief Disable the remapping of TIM4 alternate function channels 1 to 4. - * @note DISABLE: No remap (TIM4_CH1/PB6, TIM4_CH2/PB7, TIM4_CH3/PB8, TIM4_CH4/PB9) - * @note TIM4_ETR on PE0 is not re-mapped. - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM4_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_TIM4_REMAP) - -#if defined(AFIO_MAPR_CAN_REMAP_REMAP1) - -/** - * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface. - * @note CASE 1: CAN_RX mapped to PA11, CAN_TX mapped to PA12 - * @retval None - */ -#define __HAL_AFIO_REMAP_CAN1_1() AFIO_REMAP_PARTIAL(AFIO_MAPR_CAN_REMAP_REMAP1, AFIO_MAPR_CAN_REMAP) - -/** - * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface. - * @note CASE 2: CAN_RX mapped to PB8, CAN_TX mapped to PB9 (not available on 36-pin package) - * @retval None - */ -#define __HAL_AFIO_REMAP_CAN1_2() AFIO_REMAP_PARTIAL(AFIO_MAPR_CAN_REMAP_REMAP2, AFIO_MAPR_CAN_REMAP) - -/** - * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface. - * @note CASE 3: CAN_RX mapped to PD0, CAN_TX mapped to PD1 - * @retval None - */ -#define __HAL_AFIO_REMAP_CAN1_3() AFIO_REMAP_PARTIAL(AFIO_MAPR_CAN_REMAP_REMAP3, AFIO_MAPR_CAN_REMAP) - -#endif - -/** - * @brief Enable the remapping of PD0 and PD1. When the HSE oscillator is not used - * (application running on internal 8 MHz RC) PD0 and PD1 can be mapped on OSC_IN and - * OSC_OUT. This is available only on 36, 48 and 64 pins packages (PD0 and PD1 are available - * on 100-pin and 144-pin packages, no need for remapping). - * @note ENABLE: PD0 remapped on OSC_IN, PD1 remapped on OSC_OUT. - * @retval None - */ -#define __HAL_AFIO_REMAP_PD01_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_PD01_REMAP) - -/** - * @brief Disable the remapping of PD0 and PD1. When the HSE oscillator is not used - * (application running on internal 8 MHz RC) PD0 and PD1 can be mapped on OSC_IN and - * OSC_OUT. This is available only on 36, 48 and 64 pins packages (PD0 and PD1 are available - * on 100-pin and 144-pin packages, no need for remapping). - * @note DISABLE: No remapping of PD0 and PD1 - * @retval None - */ -#define __HAL_AFIO_REMAP_PD01_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_PD01_REMAP) - -#if defined(AFIO_MAPR_TIM5CH4_IREMAP) -/** - * @brief Enable the remapping of TIM5CH4. - * @note ENABLE: LSI internal clock is connected to TIM5_CH4 input for calibration purpose. - * @note This function is available only in high density value line devices. - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM5CH4_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_TIM5CH4_IREMAP) - -/** - * @brief Disable the remapping of TIM5CH4. - * @note DISABLE: TIM5_CH4 is connected to PA3 - * @note This function is available only in high density value line devices. - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM5CH4_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_TIM5CH4_IREMAP) -#endif - -#if defined(AFIO_MAPR_ETH_REMAP) -/** - * @brief Enable the remapping of Ethernet MAC connections with the PHY. - * @note ENABLE: Remap (RX_DV-CRS_DV/PD8, RXD0/PD9, RXD1/PD10, RXD2/PD11, RXD3/PD12) - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_REMAP_ETH_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_ETH_REMAP) - -/** - * @brief Disable the remapping of Ethernet MAC connections with the PHY. - * @note DISABLE: No remap (RX_DV-CRS_DV/PA7, RXD0/PC4, RXD1/PC5, RXD2/PB0, RXD3/PB1) - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_REMAP_ETH_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_ETH_REMAP) -#endif - -#if defined(AFIO_MAPR_CAN2_REMAP) - -/** - * @brief Enable the remapping of CAN2 alternate function CAN2_RX and CAN2_TX. - * @note ENABLE: Remap (CAN2_RX/PB5, CAN2_TX/PB6) - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_REMAP_CAN2_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_CAN2_REMAP) - -/** - * @brief Disable the remapping of CAN2 alternate function CAN2_RX and CAN2_TX. - * @note DISABLE: No remap (CAN2_RX/PB12, CAN2_TX/PB13) - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_REMAP_CAN2_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_CAN2_REMAP) -#endif - -#if defined(AFIO_MAPR_MII_RMII_SEL) -/** - * @brief Configures the Ethernet MAC internally for use with an external MII or RMII PHY. - * @note ETH_RMII: Configure Ethernet MAC for connection with an RMII PHY - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_ETH_RMII() AFIO_REMAP_ENABLE(AFIO_MAPR_MII_RMII_SEL) - -/** - * @brief Configures the Ethernet MAC internally for use with an external MII or RMII PHY. - * @note ETH_MII: Configure Ethernet MAC for connection with an MII PHY - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_ETH_MII() AFIO_REMAP_DISABLE(AFIO_MAPR_MII_RMII_SEL) -#endif - -/** - * @brief Enable the remapping of ADC1_ETRGINJ (ADC 1 External trigger injected conversion). - * @note ENABLE: ADC1 External Event injected conversion is connected to TIM8 Channel4. - * @retval None - */ -#define __HAL_AFIO_REMAP_ADC1_ETRGINJ_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_ADC1_ETRGINJ_REMAP) - -/** - * @brief Disable the remapping of ADC1_ETRGINJ (ADC 1 External trigger injected conversion). - * @note DISABLE: ADC1 External trigger injected conversion is connected to EXTI15 - * @retval None - */ -#define __HAL_AFIO_REMAP_ADC1_ETRGINJ_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_ADC1_ETRGINJ_REMAP) - -/** - * @brief Enable the remapping of ADC1_ETRGREG (ADC 1 External trigger regular conversion). - * @note ENABLE: ADC1 External Event regular conversion is connected to TIM8 TRG0. - * @retval None - */ -#define __HAL_AFIO_REMAP_ADC1_ETRGREG_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_ADC1_ETRGREG_REMAP) - -/** - * @brief Disable the remapping of ADC1_ETRGREG (ADC 1 External trigger regular conversion). - * @note DISABLE: ADC1 External trigger regular conversion is connected to EXTI11 - * @retval None - */ -#define __HAL_AFIO_REMAP_ADC1_ETRGREG_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_ADC1_ETRGREG_REMAP) - -#if defined(AFIO_MAPR_ADC2_ETRGINJ_REMAP) - -/** - * @brief Enable the remapping of ADC2_ETRGREG (ADC 2 External trigger injected conversion). - * @note ENABLE: ADC2 External Event injected conversion is connected to TIM8 Channel4. - * @retval None - */ -#define __HAL_AFIO_REMAP_ADC2_ETRGINJ_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_ADC2_ETRGINJ_REMAP) - -/** - * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger injected conversion). - * @note DISABLE: ADC2 External trigger injected conversion is connected to EXTI15 - * @retval None - */ -#define __HAL_AFIO_REMAP_ADC2_ETRGINJ_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_ADC2_ETRGINJ_REMAP) -#endif - -#if defined (AFIO_MAPR_ADC2_ETRGREG_REMAP) - -/** - * @brief Enable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). - * @note ENABLE: ADC2 External Event regular conversion is connected to TIM8 TRG0. - * @retval None - */ -#define __HAL_AFIO_REMAP_ADC2_ETRGREG_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_ADC2_ETRGREG_REMAP) - -/** - * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). - * @note DISABLE: ADC2 External trigger regular conversion is connected to EXTI11 - * @retval None - */ -#define __HAL_AFIO_REMAP_ADC2_ETRGREG_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_ADC2_ETRGREG_REMAP) -#endif - -/** - * @brief Enable the Serial wire JTAG configuration - * @note ENABLE: Full SWJ (JTAG-DP + SW-DP): Reset State - * @retval None - */ -#define __HAL_AFIO_REMAP_SWJ_ENABLE() AFIO_DBGAFR_CONFIG(AFIO_MAPR_SWJ_CFG_RESET) - -/** - * @brief Enable the Serial wire JTAG configuration - * @note NONJTRST: Full SWJ (JTAG-DP + SW-DP) but without NJTRST - * @retval None - */ -#define __HAL_AFIO_REMAP_SWJ_NONJTRST() AFIO_DBGAFR_CONFIG(AFIO_MAPR_SWJ_CFG_NOJNTRST) - -/** - * @brief Enable the Serial wire JTAG configuration - * @note NOJTAG: JTAG-DP Disabled and SW-DP Enabled - * @retval None - */ - -#define __HAL_AFIO_REMAP_SWJ_NOJTAG() AFIO_DBGAFR_CONFIG(AFIO_MAPR_SWJ_CFG_JTAGDISABLE) - -/** - * @brief Disable the Serial wire JTAG configuration - * @note DISABLE: JTAG-DP Disabled and SW-DP Disabled - * @retval None - */ -#define __HAL_AFIO_REMAP_SWJ_DISABLE() AFIO_DBGAFR_CONFIG(AFIO_MAPR_SWJ_CFG_DISABLE) - -#if defined(AFIO_MAPR_SPI3_REMAP) - -/** - * @brief Enable the remapping of SPI3 alternate functions SPI3_NSS/I2S3_WS, SPI3_SCK/I2S3_CK, SPI3_MISO, SPI3_MOSI/I2S3_SD. - * @note ENABLE: Remap (SPI3_NSS-I2S3_WS/PA4, SPI3_SCK-I2S3_CK/PC10, SPI3_MISO/PC11, SPI3_MOSI-I2S3_SD/PC12) - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_REMAP_SPI3_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_SPI3_REMAP) - -/** - * @brief Disable the remapping of SPI3 alternate functions SPI3_NSS/I2S3_WS, SPI3_SCK/I2S3_CK, SPI3_MISO, SPI3_MOSI/I2S3_SD. - * @note DISABLE: No remap (SPI3_NSS-I2S3_WS/PA15, SPI3_SCK-I2S3_CK/PB3, SPI3_MISO/PB4, SPI3_MOSI-I2S3_SD/PB5). - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_REMAP_SPI3_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_SPI3_REMAP) -#endif - -#if defined(AFIO_MAPR_TIM2ITR1_IREMAP) - -/** - * @brief Control of TIM2_ITR1 internal mapping. - * @note TO_USB: Connect USB OTG SOF (Start of Frame) output to TIM2_ITR1 for calibration purposes. - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_TIM2ITR1_TO_USB() AFIO_REMAP_ENABLE(AFIO_MAPR_TIM2ITR1_IREMAP) - -/** - * @brief Control of TIM2_ITR1 internal mapping. - * @note TO_ETH: Connect TIM2_ITR1 internally to the Ethernet PTP output for calibration purposes. - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_TIM2ITR1_TO_ETH() AFIO_REMAP_DISABLE(AFIO_MAPR_TIM2ITR1_IREMAP) -#endif - -#if defined(AFIO_MAPR_PTP_PPS_REMAP) - -/** - * @brief Enable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). - * @note ENABLE: PTP_PPS is output on PB5 pin. - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_ETH_PTP_PPS_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_PTP_PPS_REMAP) - -/** - * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). - * @note DISABLE: PTP_PPS not output on PB5 pin. - * @note This bit is available only in connectivity line devices and is reserved otherwise. - * @retval None - */ -#define __HAL_AFIO_ETH_PTP_PPS_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_PTP_PPS_REMAP) -#endif - -#if defined(AFIO_MAPR2_TIM9_REMAP) - -/** - * @brief Enable the remapping of TIM9_CH1 and TIM9_CH2. - * @note ENABLE: Remap (TIM9_CH1 on PE5 and TIM9_CH2 on PE6). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM9_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM9_REMAP) - -/** - * @brief Disable the remapping of TIM9_CH1 and TIM9_CH2. - * @note DISABLE: No remap (TIM9_CH1 on PA2 and TIM9_CH2 on PA3). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM9_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM9_REMAP) -#endif - -#if defined(AFIO_MAPR2_TIM10_REMAP) - -/** - * @brief Enable the remapping of TIM10_CH1. - * @note ENABLE: Remap (TIM10_CH1 on PF6). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM10_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM10_REMAP) - -/** - * @brief Disable the remapping of TIM10_CH1. - * @note DISABLE: No remap (TIM10_CH1 on PB8). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM10_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM10_REMAP) -#endif - -#if defined(AFIO_MAPR2_TIM11_REMAP) -/** - * @brief Enable the remapping of TIM11_CH1. - * @note ENABLE: Remap (TIM11_CH1 on PF7). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM11_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM11_REMAP) - -/** - * @brief Disable the remapping of TIM11_CH1. - * @note DISABLE: No remap (TIM11_CH1 on PB9). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM11_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM11_REMAP) -#endif - -#if defined(AFIO_MAPR2_TIM13_REMAP) - -/** - * @brief Enable the remapping of TIM13_CH1. - * @note ENABLE: Remap STM32F100:(TIM13_CH1 on PF8). Others:(TIM13_CH1 on PB0). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM13_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM13_REMAP) - -/** - * @brief Disable the remapping of TIM13_CH1. - * @note DISABLE: No remap STM32F100:(TIM13_CH1 on PA6). Others:(TIM13_CH1 on PC8). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM13_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM13_REMAP) -#endif - -#if defined(AFIO_MAPR2_TIM14_REMAP) - -/** - * @brief Enable the remapping of TIM14_CH1. - * @note ENABLE: Remap STM32F100:(TIM14_CH1 on PB1). Others:(TIM14_CH1 on PF9). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM14_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM14_REMAP) - -/** - * @brief Disable the remapping of TIM14_CH1. - * @note DISABLE: No remap STM32F100:(TIM14_CH1 on PC9). Others:(TIM14_CH1 on PA7). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM14_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM14_REMAP) -#endif - -#if defined(AFIO_MAPR2_FSMC_NADV_REMAP) - -/** - * @brief Controls the use of the optional FSMC_NADV signal. - * @note DISCONNECTED: The NADV signal is not connected. The I/O pin can be used by another peripheral. - * @retval None - */ -#define __HAL_AFIO_FSMCNADV_DISCONNECTED() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_FSMC_NADV_REMAP) - -/** - * @brief Controls the use of the optional FSMC_NADV signal. - * @note CONNECTED: The NADV signal is connected to the output (default). - * @retval None - */ -#define __HAL_AFIO_FSMCNADV_CONNECTED() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_FSMC_NADV_REMAP) -#endif - -#if defined(AFIO_MAPR2_TIM15_REMAP) - -/** - * @brief Enable the remapping of TIM15_CH1 and TIM15_CH2. - * @note ENABLE: Remap (TIM15_CH1 on PB14 and TIM15_CH2 on PB15). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM15_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM15_REMAP) - -/** - * @brief Disable the remapping of TIM15_CH1 and TIM15_CH2. - * @note DISABLE: No remap (TIM15_CH1 on PA2 and TIM15_CH2 on PA3). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM15_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM15_REMAP) -#endif - -#if defined(AFIO_MAPR2_TIM16_REMAP) - -/** - * @brief Enable the remapping of TIM16_CH1. - * @note ENABLE: Remap (TIM16_CH1 on PA6). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM16_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM16_REMAP) - -/** - * @brief Disable the remapping of TIM16_CH1. - * @note DISABLE: No remap (TIM16_CH1 on PB8). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM16_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM16_REMAP) -#endif - -#if defined(AFIO_MAPR2_TIM17_REMAP) - -/** - * @brief Enable the remapping of TIM17_CH1. - * @note ENABLE: Remap (TIM17_CH1 on PA7). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM17_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM17_REMAP) - -/** - * @brief Disable the remapping of TIM17_CH1. - * @note DISABLE: No remap (TIM17_CH1 on PB9). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM17_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM17_REMAP) -#endif - -#if defined(AFIO_MAPR2_CEC_REMAP) - -/** - * @brief Enable the remapping of CEC. - * @note ENABLE: Remap (CEC on PB10). - * @retval None - */ -#define __HAL_AFIO_REMAP_CEC_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_CEC_REMAP) - -/** - * @brief Disable the remapping of CEC. - * @note DISABLE: No remap (CEC on PB8). - * @retval None - */ -#define __HAL_AFIO_REMAP_CEC_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_CEC_REMAP) -#endif - -#if defined(AFIO_MAPR2_TIM1_DMA_REMAP) - -/** - * @brief Controls the mapping of the TIM1_CH1 TIM1_CH2 DMA requests onto the DMA1 channels. - * @note ENABLE: Remap (TIM1_CH1 DMA request/DMA1 Channel6, TIM1_CH2 DMA request/DMA1 Channel6) - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM1DMA_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM1_DMA_REMAP) - -/** - * @brief Controls the mapping of the TIM1_CH1 TIM1_CH2 DMA requests onto the DMA1 channels. - * @note DISABLE: No remap (TIM1_CH1 DMA request/DMA1 Channel2, TIM1_CH2 DMA request/DMA1 Channel3). - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM1DMA_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM1_DMA_REMAP) -#endif - -#if defined(AFIO_MAPR2_TIM67_DAC_DMA_REMAP) - -/** - * @brief Controls the mapping of the TIM6_DAC1 and TIM7_DAC2 DMA requests onto the DMA1 channels. - * @note ENABLE: Remap (TIM6_DAC1 DMA request/DMA1 Channel3, TIM7_DAC2 DMA request/DMA1 Channel4) - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM67DACDMA_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM67_DAC_DMA_REMAP) - -/** - * @brief Controls the mapping of the TIM6_DAC1 and TIM7_DAC2 DMA requests onto the DMA1 channels. - * @note DISABLE: No remap (TIM6_DAC1 DMA request/DMA2 Channel3, TIM7_DAC2 DMA request/DMA2 Channel4) - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM67DACDMA_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM67_DAC_DMA_REMAP) -#endif - -#if defined(AFIO_MAPR2_TIM12_REMAP) - -/** - * @brief Enable the remapping of TIM12_CH1 and TIM12_CH2. - * @note ENABLE: Remap (TIM12_CH1 on PB12 and TIM12_CH2 on PB13). - * @note This bit is available only in high density value line devices. - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM12_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM12_REMAP) - -/** - * @brief Disable the remapping of TIM12_CH1 and TIM12_CH2. - * @note DISABLE: No remap (TIM12_CH1 on PC4 and TIM12_CH2 on PC5). - * @note This bit is available only in high density value line devices. - * @retval None - */ -#define __HAL_AFIO_REMAP_TIM12_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM12_REMAP) -#endif - -#if defined(AFIO_MAPR2_MISC_REMAP) - -/** - * @brief Miscellaneous features remapping. - * This bit is set and cleared by software. It controls miscellaneous features. - * The DMA2 channel 5 interrupt position in the vector table. - * The timer selection for DAC trigger 3 (TSEL[2:0] = 011, for more details refer to the DAC_CR register). - * @note ENABLE: DMA2 channel 5 interrupt is mapped separately at position 60 and TIM15 TRGO event is - * selected as DAC Trigger 3, TIM15 triggers TIM1/3. - * @note This bit is available only in high density value line devices. - * @retval None - */ -#define __HAL_AFIO_REMAP_MISC_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_MISC_REMAP) - -/** - * @brief Miscellaneous features remapping. - * This bit is set and cleared by software. It controls miscellaneous features. - * The DMA2 channel 5 interrupt position in the vector table. - * The timer selection for DAC trigger 3 (TSEL[2:0] = 011, for more details refer to the DAC_CR register). - * @note DISABLE: DMA2 channel 5 interrupt is mapped with DMA2 channel 4 at position 59, TIM5 TRGO - * event is selected as DAC Trigger 3, TIM5 triggers TIM1/3. - * @note This bit is available only in high density value line devices. - * @retval None - */ -#define __HAL_AFIO_REMAP_MISC_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_MISC_REMAP) -#endif - -/** - * @} - */ - -/** - * @} - */ - -/** @defgroup GPIOEx_Private_Macros GPIOEx Private Macros - * @{ - */ -#if defined(STM32F101x6) || defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6) -#define GPIO_GET_INDEX(__GPIOx__) (((__GPIOx__) == (GPIOA))? 0uL :\ - ((__GPIOx__) == (GPIOB))? 1uL :\ - ((__GPIOx__) == (GPIOC))? 2uL :3uL) -#elif defined(STM32F100xB) || defined(STM32F101xB) || defined(STM32F103xB) || defined(STM32F105xC) || defined(STM32F107xC) -#define GPIO_GET_INDEX(__GPIOx__) (((__GPIOx__) == (GPIOA))? 0uL :\ - ((__GPIOx__) == (GPIOB))? 1uL :\ - ((__GPIOx__) == (GPIOC))? 2uL :\ - ((__GPIOx__) == (GPIOD))? 3uL :4uL) -#elif defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE) || defined(STM32F103xG) -#define GPIO_GET_INDEX(__GPIOx__) (((__GPIOx__) == (GPIOA))? 0uL :\ - ((__GPIOx__) == (GPIOB))? 1uL :\ - ((__GPIOx__) == (GPIOC))? 2uL :\ - ((__GPIOx__) == (GPIOD))? 3uL :\ - ((__GPIOx__) == (GPIOE))? 4uL :\ - ((__GPIOx__) == (GPIOF))? 5uL :6uL) -#endif - -#define AFIO_REMAP_ENABLE(REMAP_PIN) do{ uint32_t tmpreg = AFIO->MAPR; \ - tmpreg |= AFIO_MAPR_SWJ_CFG; \ - tmpreg |= REMAP_PIN; \ - AFIO->MAPR = tmpreg; \ - }while(0u) - -#define AFIO_REMAP_DISABLE(REMAP_PIN) do{ uint32_t tmpreg = AFIO->MAPR; \ - tmpreg |= AFIO_MAPR_SWJ_CFG; \ - tmpreg &= ~REMAP_PIN; \ - AFIO->MAPR = tmpreg; \ - }while(0u) - -#define AFIO_REMAP_PARTIAL(REMAP_PIN, REMAP_PIN_MASK) do{ uint32_t tmpreg = AFIO->MAPR; \ - tmpreg &= ~REMAP_PIN_MASK; \ - tmpreg |= AFIO_MAPR_SWJ_CFG; \ - tmpreg |= REMAP_PIN; \ - AFIO->MAPR = tmpreg; \ - }while(0u) - -#define AFIO_DBGAFR_CONFIG(DBGAFR_SWJCFG) do{ uint32_t tmpreg = AFIO->MAPR; \ - tmpreg &= ~AFIO_MAPR_SWJ_CFG_Msk; \ - tmpreg |= DBGAFR_SWJCFG; \ - AFIO->MAPR = tmpreg; \ - }while(0u) - -/** - * @} - */ - -/* Exported macro ------------------------------------------------------------*/ -/* Exported functions --------------------------------------------------------*/ - -/** @addtogroup GPIOEx_Exported_Functions - * @{ - */ - -/** @addtogroup GPIOEx_Exported_Functions_Group1 - * @{ - */ -void HAL_GPIOEx_ConfigEventout(uint32_t GPIO_PortSource, uint32_t GPIO_PinSource); -void HAL_GPIOEx_EnableEventout(void); -void HAL_GPIOEx_DisableEventout(void); - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /* STM32F1xx_HAL_GPIO_EX_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_gpio_ex.h + * @author MCD Application Team + * @brief Header file of GPIO HAL Extension module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef STM32F1xx_HAL_GPIO_EX_H +#define STM32F1xx_HAL_GPIO_EX_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup GPIOEx GPIOEx + * @{ + */ +/* Exported types ------------------------------------------------------------*/ +/* Exported constants --------------------------------------------------------*/ + +/** @defgroup GPIOEx_Exported_Constants GPIOEx Exported Constants + * @{ + */ + +/** @defgroup GPIOEx_EVENTOUT EVENTOUT Cortex Configuration + * @brief This section propose definition to use the Cortex EVENTOUT signal. + * @{ + */ + +/** @defgroup GPIOEx_EVENTOUT_PIN EVENTOUT Pin + * @{ + */ + +#define AFIO_EVENTOUT_PIN_0 AFIO_EVCR_PIN_PX0 /*!< EVENTOUT on pin 0 */ +#define AFIO_EVENTOUT_PIN_1 AFIO_EVCR_PIN_PX1 /*!< EVENTOUT on pin 1 */ +#define AFIO_EVENTOUT_PIN_2 AFIO_EVCR_PIN_PX2 /*!< EVENTOUT on pin 2 */ +#define AFIO_EVENTOUT_PIN_3 AFIO_EVCR_PIN_PX3 /*!< EVENTOUT on pin 3 */ +#define AFIO_EVENTOUT_PIN_4 AFIO_EVCR_PIN_PX4 /*!< EVENTOUT on pin 4 */ +#define AFIO_EVENTOUT_PIN_5 AFIO_EVCR_PIN_PX5 /*!< EVENTOUT on pin 5 */ +#define AFIO_EVENTOUT_PIN_6 AFIO_EVCR_PIN_PX6 /*!< EVENTOUT on pin 6 */ +#define AFIO_EVENTOUT_PIN_7 AFIO_EVCR_PIN_PX7 /*!< EVENTOUT on pin 7 */ +#define AFIO_EVENTOUT_PIN_8 AFIO_EVCR_PIN_PX8 /*!< EVENTOUT on pin 8 */ +#define AFIO_EVENTOUT_PIN_9 AFIO_EVCR_PIN_PX9 /*!< EVENTOUT on pin 9 */ +#define AFIO_EVENTOUT_PIN_10 AFIO_EVCR_PIN_PX10 /*!< EVENTOUT on pin 10 */ +#define AFIO_EVENTOUT_PIN_11 AFIO_EVCR_PIN_PX11 /*!< EVENTOUT on pin 11 */ +#define AFIO_EVENTOUT_PIN_12 AFIO_EVCR_PIN_PX12 /*!< EVENTOUT on pin 12 */ +#define AFIO_EVENTOUT_PIN_13 AFIO_EVCR_PIN_PX13 /*!< EVENTOUT on pin 13 */ +#define AFIO_EVENTOUT_PIN_14 AFIO_EVCR_PIN_PX14 /*!< EVENTOUT on pin 14 */ +#define AFIO_EVENTOUT_PIN_15 AFIO_EVCR_PIN_PX15 /*!< EVENTOUT on pin 15 */ + +#define IS_AFIO_EVENTOUT_PIN(__PIN__) (((__PIN__) == AFIO_EVENTOUT_PIN_0) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_1) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_2) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_3) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_4) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_5) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_6) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_7) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_8) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_9) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_10) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_11) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_12) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_13) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_14) || \ + ((__PIN__) == AFIO_EVENTOUT_PIN_15)) +/** + * @} + */ + +/** @defgroup GPIOEx_EVENTOUT_PORT EVENTOUT Port + * @{ + */ + +#define AFIO_EVENTOUT_PORT_A AFIO_EVCR_PORT_PA /*!< EVENTOUT on port A */ +#define AFIO_EVENTOUT_PORT_B AFIO_EVCR_PORT_PB /*!< EVENTOUT on port B */ +#define AFIO_EVENTOUT_PORT_C AFIO_EVCR_PORT_PC /*!< EVENTOUT on port C */ +#define AFIO_EVENTOUT_PORT_D AFIO_EVCR_PORT_PD /*!< EVENTOUT on port D */ +#define AFIO_EVENTOUT_PORT_E AFIO_EVCR_PORT_PE /*!< EVENTOUT on port E */ + +#define IS_AFIO_EVENTOUT_PORT(__PORT__) (((__PORT__) == AFIO_EVENTOUT_PORT_A) || \ + ((__PORT__) == AFIO_EVENTOUT_PORT_B) || \ + ((__PORT__) == AFIO_EVENTOUT_PORT_C) || \ + ((__PORT__) == AFIO_EVENTOUT_PORT_D) || \ + ((__PORT__) == AFIO_EVENTOUT_PORT_E)) +/** + * @} + */ + +/** + * @} + */ + +/** @defgroup GPIOEx_AFIO_AF_REMAPPING Alternate Function Remapping + * @brief This section propose definition to remap the alternate function to some other port/pins. + * @{ + */ + +/** + * @brief Enable the remapping of SPI1 alternate function NSS, SCK, MISO and MOSI. + * @note ENABLE: Remap (NSS/PA15, SCK/PB3, MISO/PB4, MOSI/PB5) + * @retval None + */ +#define __HAL_AFIO_REMAP_SPI1_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_SPI1_REMAP) + +/** + * @brief Disable the remapping of SPI1 alternate function NSS, SCK, MISO and MOSI. + * @note DISABLE: No remap (NSS/PA4, SCK/PA5, MISO/PA6, MOSI/PA7) + * @retval None + */ +#define __HAL_AFIO_REMAP_SPI1_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_SPI1_REMAP) + +/** + * @brief Enable the remapping of I2C1 alternate function SCL and SDA. + * @note ENABLE: Remap (SCL/PB8, SDA/PB9) + * @retval None + */ +#define __HAL_AFIO_REMAP_I2C1_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_I2C1_REMAP) + +/** + * @brief Disable the remapping of I2C1 alternate function SCL and SDA. + * @note DISABLE: No remap (SCL/PB6, SDA/PB7) + * @retval None + */ +#define __HAL_AFIO_REMAP_I2C1_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_I2C1_REMAP) + +/** + * @brief Enable the remapping of USART1 alternate function TX and RX. + * @note ENABLE: Remap (TX/PB6, RX/PB7) + * @retval None + */ +#define __HAL_AFIO_REMAP_USART1_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_USART1_REMAP) + +/** + * @brief Disable the remapping of USART1 alternate function TX and RX. + * @note DISABLE: No remap (TX/PA9, RX/PA10) + * @retval None + */ +#define __HAL_AFIO_REMAP_USART1_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_USART1_REMAP) + +/** + * @brief Enable the remapping of USART2 alternate function CTS, RTS, CK, TX and RX. + * @note ENABLE: Remap (CTS/PD3, RTS/PD4, TX/PD5, RX/PD6, CK/PD7) + * @retval None + */ +#define __HAL_AFIO_REMAP_USART2_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_USART2_REMAP) + +/** + * @brief Disable the remapping of USART2 alternate function CTS, RTS, CK, TX and RX. + * @note DISABLE: No remap (CTS/PA0, RTS/PA1, TX/PA2, RX/PA3, CK/PA4) + * @retval None + */ +#define __HAL_AFIO_REMAP_USART2_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_USART2_REMAP) + +/** + * @brief Enable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX. + * @note ENABLE: Full remap (TX/PD8, RX/PD9, CK/PD10, CTS/PD11, RTS/PD12) + * @retval None + */ +#define __HAL_AFIO_REMAP_USART3_ENABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_USART3_REMAP_FULLREMAP, AFIO_MAPR_USART3_REMAP_FULLREMAP) + +/** + * @brief Enable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX. + * @note PARTIAL: Partial remap (TX/PC10, RX/PC11, CK/PC12, CTS/PB13, RTS/PB14) + * @retval None + */ +#define __HAL_AFIO_REMAP_USART3_PARTIAL() AFIO_REMAP_PARTIAL(AFIO_MAPR_USART3_REMAP_PARTIALREMAP, AFIO_MAPR_USART3_REMAP_FULLREMAP) + +/** + * @brief Disable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX. + * @note DISABLE: No remap (TX/PB10, RX/PB11, CK/PB12, CTS/PB13, RTS/PB14) + * @retval None + */ +#define __HAL_AFIO_REMAP_USART3_DISABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_USART3_REMAP_NOREMAP, AFIO_MAPR_USART3_REMAP_FULLREMAP) + +/** + * @brief Enable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) + * @note ENABLE: Full remap (ETR/PE7, CH1/PE9, CH2/PE11, CH3/PE13, CH4/PE14, BKIN/PE15, CH1N/PE8, CH2N/PE10, CH3N/PE12) + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM1_ENABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM1_REMAP_FULLREMAP, AFIO_MAPR_TIM1_REMAP_FULLREMAP) + +/** + * @brief Enable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) + * @note PARTIAL: Partial remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PA6, CH1N/PA7, CH2N/PB0, CH3N/PB1) + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM1_PARTIAL() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM1_REMAP_PARTIALREMAP, AFIO_MAPR_TIM1_REMAP_FULLREMAP) + +/** + * @brief Disable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) + * @note DISABLE: No remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PB12, CH1N/PB13, CH2N/PB14, CH3N/PB15) + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM1_DISABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM1_REMAP_NOREMAP, AFIO_MAPR_TIM1_REMAP_FULLREMAP) + +/** + * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) + * @note ENABLE: Full remap (CH1/ETR/PA15, CH2/PB3, CH3/PB10, CH4/PB11) + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM2_ENABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM2_REMAP_FULLREMAP, AFIO_MAPR_TIM2_REMAP_FULLREMAP) + +/** + * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) + * @note PARTIAL_2: Partial remap (CH1/ETR/PA0, CH2/PA1, CH3/PB10, CH4/PB11) + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM2_PARTIAL_2() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2, AFIO_MAPR_TIM2_REMAP_FULLREMAP) + +/** + * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) + * @note PARTIAL_1: Partial remap (CH1/ETR/PA15, CH2/PB3, CH3/PA2, CH4/PA3) + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM2_PARTIAL_1() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1, AFIO_MAPR_TIM2_REMAP_FULLREMAP) + +/** + * @brief Disable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) + * @note DISABLE: No remap (CH1/ETR/PA0, CH2/PA1, CH3/PA2, CH4/PA3) + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM2_DISABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM2_REMAP_NOREMAP, AFIO_MAPR_TIM2_REMAP_FULLREMAP) + +/** + * @brief Enable the remapping of TIM3 alternate function channels 1 to 4 + * @note ENABLE: Full remap (CH1/PC6, CH2/PC7, CH3/PC8, CH4/PC9) + * @note TIM3_ETR on PE0 is not re-mapped. + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM3_ENABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM3_REMAP_FULLREMAP, AFIO_MAPR_TIM3_REMAP_FULLREMAP) + +/** + * @brief Enable the remapping of TIM3 alternate function channels 1 to 4 + * @note PARTIAL: Partial remap (CH1/PB4, CH2/PB5, CH3/PB0, CH4/PB1) + * @note TIM3_ETR on PE0 is not re-mapped. + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM3_PARTIAL() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM3_REMAP_PARTIALREMAP, AFIO_MAPR_TIM3_REMAP_FULLREMAP) + +/** + * @brief Disable the remapping of TIM3 alternate function channels 1 to 4 + * @note DISABLE: No remap (CH1/PA6, CH2/PA7, CH3/PB0, CH4/PB1) + * @note TIM3_ETR on PE0 is not re-mapped. + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM3_DISABLE() AFIO_REMAP_PARTIAL(AFIO_MAPR_TIM3_REMAP_NOREMAP, AFIO_MAPR_TIM3_REMAP_FULLREMAP) + +/** + * @brief Enable the remapping of TIM4 alternate function channels 1 to 4. + * @note ENABLE: Full remap (TIM4_CH1/PD12, TIM4_CH2/PD13, TIM4_CH3/PD14, TIM4_CH4/PD15) + * @note TIM4_ETR on PE0 is not re-mapped. + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM4_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_TIM4_REMAP) + +/** + * @brief Disable the remapping of TIM4 alternate function channels 1 to 4. + * @note DISABLE: No remap (TIM4_CH1/PB6, TIM4_CH2/PB7, TIM4_CH3/PB8, TIM4_CH4/PB9) + * @note TIM4_ETR on PE0 is not re-mapped. + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM4_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_TIM4_REMAP) + +#if defined(AFIO_MAPR_CAN_REMAP_REMAP1) + +/** + * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface. + * @note CASE 1: CAN_RX mapped to PA11, CAN_TX mapped to PA12 + * @retval None + */ +#define __HAL_AFIO_REMAP_CAN1_1() AFIO_REMAP_PARTIAL(AFIO_MAPR_CAN_REMAP_REMAP1, AFIO_MAPR_CAN_REMAP) + +/** + * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface. + * @note CASE 2: CAN_RX mapped to PB8, CAN_TX mapped to PB9 (not available on 36-pin package) + * @retval None + */ +#define __HAL_AFIO_REMAP_CAN1_2() AFIO_REMAP_PARTIAL(AFIO_MAPR_CAN_REMAP_REMAP2, AFIO_MAPR_CAN_REMAP) + +/** + * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface. + * @note CASE 3: CAN_RX mapped to PD0, CAN_TX mapped to PD1 + * @retval None + */ +#define __HAL_AFIO_REMAP_CAN1_3() AFIO_REMAP_PARTIAL(AFIO_MAPR_CAN_REMAP_REMAP3, AFIO_MAPR_CAN_REMAP) + +#endif + +/** + * @brief Enable the remapping of PD0 and PD1. When the HSE oscillator is not used + * (application running on internal 8 MHz RC) PD0 and PD1 can be mapped on OSC_IN and + * OSC_OUT. This is available only on 36, 48 and 64 pins packages (PD0 and PD1 are available + * on 100-pin and 144-pin packages, no need for remapping). + * @note ENABLE: PD0 remapped on OSC_IN, PD1 remapped on OSC_OUT. + * @retval None + */ +#define __HAL_AFIO_REMAP_PD01_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_PD01_REMAP) + +/** + * @brief Disable the remapping of PD0 and PD1. When the HSE oscillator is not used + * (application running on internal 8 MHz RC) PD0 and PD1 can be mapped on OSC_IN and + * OSC_OUT. This is available only on 36, 48 and 64 pins packages (PD0 and PD1 are available + * on 100-pin and 144-pin packages, no need for remapping). + * @note DISABLE: No remapping of PD0 and PD1 + * @retval None + */ +#define __HAL_AFIO_REMAP_PD01_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_PD01_REMAP) + +#if defined(AFIO_MAPR_TIM5CH4_IREMAP) +/** + * @brief Enable the remapping of TIM5CH4. + * @note ENABLE: LSI internal clock is connected to TIM5_CH4 input for calibration purpose. + * @note This function is available only in high density value line devices. + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM5CH4_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_TIM5CH4_IREMAP) + +/** + * @brief Disable the remapping of TIM5CH4. + * @note DISABLE: TIM5_CH4 is connected to PA3 + * @note This function is available only in high density value line devices. + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM5CH4_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_TIM5CH4_IREMAP) +#endif + +#if defined(AFIO_MAPR_ETH_REMAP) +/** + * @brief Enable the remapping of Ethernet MAC connections with the PHY. + * @note ENABLE: Remap (RX_DV-CRS_DV/PD8, RXD0/PD9, RXD1/PD10, RXD2/PD11, RXD3/PD12) + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_REMAP_ETH_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_ETH_REMAP) + +/** + * @brief Disable the remapping of Ethernet MAC connections with the PHY. + * @note DISABLE: No remap (RX_DV-CRS_DV/PA7, RXD0/PC4, RXD1/PC5, RXD2/PB0, RXD3/PB1) + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_REMAP_ETH_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_ETH_REMAP) +#endif + +#if defined(AFIO_MAPR_CAN2_REMAP) + +/** + * @brief Enable the remapping of CAN2 alternate function CAN2_RX and CAN2_TX. + * @note ENABLE: Remap (CAN2_RX/PB5, CAN2_TX/PB6) + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_REMAP_CAN2_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_CAN2_REMAP) + +/** + * @brief Disable the remapping of CAN2 alternate function CAN2_RX and CAN2_TX. + * @note DISABLE: No remap (CAN2_RX/PB12, CAN2_TX/PB13) + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_REMAP_CAN2_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_CAN2_REMAP) +#endif + +#if defined(AFIO_MAPR_MII_RMII_SEL) +/** + * @brief Configures the Ethernet MAC internally for use with an external MII or RMII PHY. + * @note ETH_RMII: Configure Ethernet MAC for connection with an RMII PHY + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_ETH_RMII() AFIO_REMAP_ENABLE(AFIO_MAPR_MII_RMII_SEL) + +/** + * @brief Configures the Ethernet MAC internally for use with an external MII or RMII PHY. + * @note ETH_MII: Configure Ethernet MAC for connection with an MII PHY + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_ETH_MII() AFIO_REMAP_DISABLE(AFIO_MAPR_MII_RMII_SEL) +#endif + +/** + * @brief Enable the remapping of ADC1_ETRGINJ (ADC 1 External trigger injected conversion). + * @note ENABLE: ADC1 External Event injected conversion is connected to TIM8 Channel4. + * @retval None + */ +#define __HAL_AFIO_REMAP_ADC1_ETRGINJ_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_ADC1_ETRGINJ_REMAP) + +/** + * @brief Disable the remapping of ADC1_ETRGINJ (ADC 1 External trigger injected conversion). + * @note DISABLE: ADC1 External trigger injected conversion is connected to EXTI15 + * @retval None + */ +#define __HAL_AFIO_REMAP_ADC1_ETRGINJ_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_ADC1_ETRGINJ_REMAP) + +/** + * @brief Enable the remapping of ADC1_ETRGREG (ADC 1 External trigger regular conversion). + * @note ENABLE: ADC1 External Event regular conversion is connected to TIM8 TRG0. + * @retval None + */ +#define __HAL_AFIO_REMAP_ADC1_ETRGREG_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_ADC1_ETRGREG_REMAP) + +/** + * @brief Disable the remapping of ADC1_ETRGREG (ADC 1 External trigger regular conversion). + * @note DISABLE: ADC1 External trigger regular conversion is connected to EXTI11 + * @retval None + */ +#define __HAL_AFIO_REMAP_ADC1_ETRGREG_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_ADC1_ETRGREG_REMAP) + +#if defined(AFIO_MAPR_ADC2_ETRGINJ_REMAP) + +/** + * @brief Enable the remapping of ADC2_ETRGREG (ADC 2 External trigger injected conversion). + * @note ENABLE: ADC2 External Event injected conversion is connected to TIM8 Channel4. + * @retval None + */ +#define __HAL_AFIO_REMAP_ADC2_ETRGINJ_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_ADC2_ETRGINJ_REMAP) + +/** + * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger injected conversion). + * @note DISABLE: ADC2 External trigger injected conversion is connected to EXTI15 + * @retval None + */ +#define __HAL_AFIO_REMAP_ADC2_ETRGINJ_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_ADC2_ETRGINJ_REMAP) +#endif + +#if defined (AFIO_MAPR_ADC2_ETRGREG_REMAP) + +/** + * @brief Enable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). + * @note ENABLE: ADC2 External Event regular conversion is connected to TIM8 TRG0. + * @retval None + */ +#define __HAL_AFIO_REMAP_ADC2_ETRGREG_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_ADC2_ETRGREG_REMAP) + +/** + * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). + * @note DISABLE: ADC2 External trigger regular conversion is connected to EXTI11 + * @retval None + */ +#define __HAL_AFIO_REMAP_ADC2_ETRGREG_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_ADC2_ETRGREG_REMAP) +#endif + +/** + * @brief Enable the Serial wire JTAG configuration + * @note ENABLE: Full SWJ (JTAG-DP + SW-DP): Reset State + * @retval None + */ +#define __HAL_AFIO_REMAP_SWJ_ENABLE() AFIO_DBGAFR_CONFIG(AFIO_MAPR_SWJ_CFG_RESET) + +/** + * @brief Enable the Serial wire JTAG configuration + * @note NONJTRST: Full SWJ (JTAG-DP + SW-DP) but without NJTRST + * @retval None + */ +#define __HAL_AFIO_REMAP_SWJ_NONJTRST() AFIO_DBGAFR_CONFIG(AFIO_MAPR_SWJ_CFG_NOJNTRST) + +/** + * @brief Enable the Serial wire JTAG configuration + * @note NOJTAG: JTAG-DP Disabled and SW-DP Enabled + * @retval None + */ + +#define __HAL_AFIO_REMAP_SWJ_NOJTAG() AFIO_DBGAFR_CONFIG(AFIO_MAPR_SWJ_CFG_JTAGDISABLE) + +/** + * @brief Disable the Serial wire JTAG configuration + * @note DISABLE: JTAG-DP Disabled and SW-DP Disabled + * @retval None + */ +#define __HAL_AFIO_REMAP_SWJ_DISABLE() AFIO_DBGAFR_CONFIG(AFIO_MAPR_SWJ_CFG_DISABLE) + +#if defined(AFIO_MAPR_SPI3_REMAP) + +/** + * @brief Enable the remapping of SPI3 alternate functions SPI3_NSS/I2S3_WS, SPI3_SCK/I2S3_CK, SPI3_MISO, SPI3_MOSI/I2S3_SD. + * @note ENABLE: Remap (SPI3_NSS-I2S3_WS/PA4, SPI3_SCK-I2S3_CK/PC10, SPI3_MISO/PC11, SPI3_MOSI-I2S3_SD/PC12) + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_REMAP_SPI3_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_SPI3_REMAP) + +/** + * @brief Disable the remapping of SPI3 alternate functions SPI3_NSS/I2S3_WS, SPI3_SCK/I2S3_CK, SPI3_MISO, SPI3_MOSI/I2S3_SD. + * @note DISABLE: No remap (SPI3_NSS-I2S3_WS/PA15, SPI3_SCK-I2S3_CK/PB3, SPI3_MISO/PB4, SPI3_MOSI-I2S3_SD/PB5). + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_REMAP_SPI3_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_SPI3_REMAP) +#endif + +#if defined(AFIO_MAPR_TIM2ITR1_IREMAP) + +/** + * @brief Control of TIM2_ITR1 internal mapping. + * @note TO_USB: Connect USB OTG SOF (Start of Frame) output to TIM2_ITR1 for calibration purposes. + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_TIM2ITR1_TO_USB() AFIO_REMAP_ENABLE(AFIO_MAPR_TIM2ITR1_IREMAP) + +/** + * @brief Control of TIM2_ITR1 internal mapping. + * @note TO_ETH: Connect TIM2_ITR1 internally to the Ethernet PTP output for calibration purposes. + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_TIM2ITR1_TO_ETH() AFIO_REMAP_DISABLE(AFIO_MAPR_TIM2ITR1_IREMAP) +#endif + +#if defined(AFIO_MAPR_PTP_PPS_REMAP) + +/** + * @brief Enable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). + * @note ENABLE: PTP_PPS is output on PB5 pin. + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_ETH_PTP_PPS_ENABLE() AFIO_REMAP_ENABLE(AFIO_MAPR_PTP_PPS_REMAP) + +/** + * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). + * @note DISABLE: PTP_PPS not output on PB5 pin. + * @note This bit is available only in connectivity line devices and is reserved otherwise. + * @retval None + */ +#define __HAL_AFIO_ETH_PTP_PPS_DISABLE() AFIO_REMAP_DISABLE(AFIO_MAPR_PTP_PPS_REMAP) +#endif + +#if defined(AFIO_MAPR2_TIM9_REMAP) + +/** + * @brief Enable the remapping of TIM9_CH1 and TIM9_CH2. + * @note ENABLE: Remap (TIM9_CH1 on PE5 and TIM9_CH2 on PE6). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM9_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM9_REMAP) + +/** + * @brief Disable the remapping of TIM9_CH1 and TIM9_CH2. + * @note DISABLE: No remap (TIM9_CH1 on PA2 and TIM9_CH2 on PA3). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM9_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM9_REMAP) +#endif + +#if defined(AFIO_MAPR2_TIM10_REMAP) + +/** + * @brief Enable the remapping of TIM10_CH1. + * @note ENABLE: Remap (TIM10_CH1 on PF6). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM10_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM10_REMAP) + +/** + * @brief Disable the remapping of TIM10_CH1. + * @note DISABLE: No remap (TIM10_CH1 on PB8). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM10_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM10_REMAP) +#endif + +#if defined(AFIO_MAPR2_TIM11_REMAP) +/** + * @brief Enable the remapping of TIM11_CH1. + * @note ENABLE: Remap (TIM11_CH1 on PF7). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM11_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM11_REMAP) + +/** + * @brief Disable the remapping of TIM11_CH1. + * @note DISABLE: No remap (TIM11_CH1 on PB9). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM11_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM11_REMAP) +#endif + +#if defined(AFIO_MAPR2_TIM13_REMAP) + +/** + * @brief Enable the remapping of TIM13_CH1. + * @note ENABLE: Remap STM32F100:(TIM13_CH1 on PF8). Others:(TIM13_CH1 on PB0). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM13_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM13_REMAP) + +/** + * @brief Disable the remapping of TIM13_CH1. + * @note DISABLE: No remap STM32F100:(TIM13_CH1 on PA6). Others:(TIM13_CH1 on PC8). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM13_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM13_REMAP) +#endif + +#if defined(AFIO_MAPR2_TIM14_REMAP) + +/** + * @brief Enable the remapping of TIM14_CH1. + * @note ENABLE: Remap STM32F100:(TIM14_CH1 on PB1). Others:(TIM14_CH1 on PF9). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM14_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM14_REMAP) + +/** + * @brief Disable the remapping of TIM14_CH1. + * @note DISABLE: No remap STM32F100:(TIM14_CH1 on PC9). Others:(TIM14_CH1 on PA7). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM14_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM14_REMAP) +#endif + +#if defined(AFIO_MAPR2_FSMC_NADV_REMAP) + +/** + * @brief Controls the use of the optional FSMC_NADV signal. + * @note DISCONNECTED: The NADV signal is not connected. The I/O pin can be used by another peripheral. + * @retval None + */ +#define __HAL_AFIO_FSMCNADV_DISCONNECTED() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_FSMC_NADV_REMAP) + +/** + * @brief Controls the use of the optional FSMC_NADV signal. + * @note CONNECTED: The NADV signal is connected to the output (default). + * @retval None + */ +#define __HAL_AFIO_FSMCNADV_CONNECTED() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_FSMC_NADV_REMAP) +#endif + +#if defined(AFIO_MAPR2_TIM15_REMAP) + +/** + * @brief Enable the remapping of TIM15_CH1 and TIM15_CH2. + * @note ENABLE: Remap (TIM15_CH1 on PB14 and TIM15_CH2 on PB15). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM15_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM15_REMAP) + +/** + * @brief Disable the remapping of TIM15_CH1 and TIM15_CH2. + * @note DISABLE: No remap (TIM15_CH1 on PA2 and TIM15_CH2 on PA3). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM15_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM15_REMAP) +#endif + +#if defined(AFIO_MAPR2_TIM16_REMAP) + +/** + * @brief Enable the remapping of TIM16_CH1. + * @note ENABLE: Remap (TIM16_CH1 on PA6). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM16_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM16_REMAP) + +/** + * @brief Disable the remapping of TIM16_CH1. + * @note DISABLE: No remap (TIM16_CH1 on PB8). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM16_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM16_REMAP) +#endif + +#if defined(AFIO_MAPR2_TIM17_REMAP) + +/** + * @brief Enable the remapping of TIM17_CH1. + * @note ENABLE: Remap (TIM17_CH1 on PA7). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM17_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM17_REMAP) + +/** + * @brief Disable the remapping of TIM17_CH1. + * @note DISABLE: No remap (TIM17_CH1 on PB9). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM17_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM17_REMAP) +#endif + +#if defined(AFIO_MAPR2_CEC_REMAP) + +/** + * @brief Enable the remapping of CEC. + * @note ENABLE: Remap (CEC on PB10). + * @retval None + */ +#define __HAL_AFIO_REMAP_CEC_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_CEC_REMAP) + +/** + * @brief Disable the remapping of CEC. + * @note DISABLE: No remap (CEC on PB8). + * @retval None + */ +#define __HAL_AFIO_REMAP_CEC_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_CEC_REMAP) +#endif + +#if defined(AFIO_MAPR2_TIM1_DMA_REMAP) + +/** + * @brief Controls the mapping of the TIM1_CH1 TIM1_CH2 DMA requests onto the DMA1 channels. + * @note ENABLE: Remap (TIM1_CH1 DMA request/DMA1 Channel6, TIM1_CH2 DMA request/DMA1 Channel6) + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM1DMA_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM1_DMA_REMAP) + +/** + * @brief Controls the mapping of the TIM1_CH1 TIM1_CH2 DMA requests onto the DMA1 channels. + * @note DISABLE: No remap (TIM1_CH1 DMA request/DMA1 Channel2, TIM1_CH2 DMA request/DMA1 Channel3). + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM1DMA_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM1_DMA_REMAP) +#endif + +#if defined(AFIO_MAPR2_TIM67_DAC_DMA_REMAP) + +/** + * @brief Controls the mapping of the TIM6_DAC1 and TIM7_DAC2 DMA requests onto the DMA1 channels. + * @note ENABLE: Remap (TIM6_DAC1 DMA request/DMA1 Channel3, TIM7_DAC2 DMA request/DMA1 Channel4) + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM67DACDMA_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM67_DAC_DMA_REMAP) + +/** + * @brief Controls the mapping of the TIM6_DAC1 and TIM7_DAC2 DMA requests onto the DMA1 channels. + * @note DISABLE: No remap (TIM6_DAC1 DMA request/DMA2 Channel3, TIM7_DAC2 DMA request/DMA2 Channel4) + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM67DACDMA_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM67_DAC_DMA_REMAP) +#endif + +#if defined(AFIO_MAPR2_TIM12_REMAP) + +/** + * @brief Enable the remapping of TIM12_CH1 and TIM12_CH2. + * @note ENABLE: Remap (TIM12_CH1 on PB12 and TIM12_CH2 on PB13). + * @note This bit is available only in high density value line devices. + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM12_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM12_REMAP) + +/** + * @brief Disable the remapping of TIM12_CH1 and TIM12_CH2. + * @note DISABLE: No remap (TIM12_CH1 on PC4 and TIM12_CH2 on PC5). + * @note This bit is available only in high density value line devices. + * @retval None + */ +#define __HAL_AFIO_REMAP_TIM12_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_TIM12_REMAP) +#endif + +#if defined(AFIO_MAPR2_MISC_REMAP) + +/** + * @brief Miscellaneous features remapping. + * This bit is set and cleared by software. It controls miscellaneous features. + * The DMA2 channel 5 interrupt position in the vector table. + * The timer selection for DAC trigger 3 (TSEL[2:0] = 011, for more details refer to the DAC_CR register). + * @note ENABLE: DMA2 channel 5 interrupt is mapped separately at position 60 and TIM15 TRGO event is + * selected as DAC Trigger 3, TIM15 triggers TIM1/3. + * @note This bit is available only in high density value line devices. + * @retval None + */ +#define __HAL_AFIO_REMAP_MISC_ENABLE() SET_BIT(AFIO->MAPR2, AFIO_MAPR2_MISC_REMAP) + +/** + * @brief Miscellaneous features remapping. + * This bit is set and cleared by software. It controls miscellaneous features. + * The DMA2 channel 5 interrupt position in the vector table. + * The timer selection for DAC trigger 3 (TSEL[2:0] = 011, for more details refer to the DAC_CR register). + * @note DISABLE: DMA2 channel 5 interrupt is mapped with DMA2 channel 4 at position 59, TIM5 TRGO + * event is selected as DAC Trigger 3, TIM5 triggers TIM1/3. + * @note This bit is available only in high density value line devices. + * @retval None + */ +#define __HAL_AFIO_REMAP_MISC_DISABLE() CLEAR_BIT(AFIO->MAPR2, AFIO_MAPR2_MISC_REMAP) +#endif + +/** + * @} + */ + +/** + * @} + */ + +/** @defgroup GPIOEx_Private_Macros GPIOEx Private Macros + * @{ + */ +#if defined(STM32F101x6) || defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6) +#define GPIO_GET_INDEX(__GPIOx__) (((__GPIOx__) == (GPIOA))? 0uL :\ + ((__GPIOx__) == (GPIOB))? 1uL :\ + ((__GPIOx__) == (GPIOC))? 2uL :3uL) +#elif defined(STM32F100xB) || defined(STM32F101xB) || defined(STM32F103xB) || defined(STM32F105xC) || defined(STM32F107xC) +#define GPIO_GET_INDEX(__GPIOx__) (((__GPIOx__) == (GPIOA))? 0uL :\ + ((__GPIOx__) == (GPIOB))? 1uL :\ + ((__GPIOx__) == (GPIOC))? 2uL :\ + ((__GPIOx__) == (GPIOD))? 3uL :4uL) +#elif defined(STM32F100xE) || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE) || defined(STM32F103xG) +#define GPIO_GET_INDEX(__GPIOx__) (((__GPIOx__) == (GPIOA))? 0uL :\ + ((__GPIOx__) == (GPIOB))? 1uL :\ + ((__GPIOx__) == (GPIOC))? 2uL :\ + ((__GPIOx__) == (GPIOD))? 3uL :\ + ((__GPIOx__) == (GPIOE))? 4uL :\ + ((__GPIOx__) == (GPIOF))? 5uL :6uL) +#endif + +#define AFIO_REMAP_ENABLE(REMAP_PIN) do{ uint32_t tmpreg = AFIO->MAPR; \ + tmpreg |= AFIO_MAPR_SWJ_CFG; \ + tmpreg |= REMAP_PIN; \ + AFIO->MAPR = tmpreg; \ + }while(0u) + +#define AFIO_REMAP_DISABLE(REMAP_PIN) do{ uint32_t tmpreg = AFIO->MAPR; \ + tmpreg |= AFIO_MAPR_SWJ_CFG; \ + tmpreg &= ~REMAP_PIN; \ + AFIO->MAPR = tmpreg; \ + }while(0u) + +#define AFIO_REMAP_PARTIAL(REMAP_PIN, REMAP_PIN_MASK) do{ uint32_t tmpreg = AFIO->MAPR; \ + tmpreg &= ~REMAP_PIN_MASK; \ + tmpreg |= AFIO_MAPR_SWJ_CFG; \ + tmpreg |= REMAP_PIN; \ + AFIO->MAPR = tmpreg; \ + }while(0u) + +#define AFIO_DBGAFR_CONFIG(DBGAFR_SWJCFG) do{ uint32_t tmpreg = AFIO->MAPR; \ + tmpreg &= ~AFIO_MAPR_SWJ_CFG_Msk; \ + tmpreg |= DBGAFR_SWJCFG; \ + AFIO->MAPR = tmpreg; \ + }while(0u) + +/** + * @} + */ + +/* Exported macro ------------------------------------------------------------*/ +/* Exported functions --------------------------------------------------------*/ + +/** @addtogroup GPIOEx_Exported_Functions + * @{ + */ + +/** @addtogroup GPIOEx_Exported_Functions_Group1 + * @{ + */ +void HAL_GPIOEx_ConfigEventout(uint32_t GPIO_PortSource, uint32_t GPIO_PinSource); +void HAL_GPIOEx_EnableEventout(void); +void HAL_GPIOEx_DisableEventout(void); + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /* STM32F1xx_HAL_GPIO_EX_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h similarity index 96% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h index 2b1b4ed..9696c00 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h @@ -1,388 +1,388 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_pwr.h - * @author MCD Application Team - * @brief Header file of PWR HAL module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_HAL_PWR_H -#define __STM32F1xx_HAL_PWR_H - -#ifdef __cplusplus - extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup PWR - * @{ - */ - -/* Exported types ------------------------------------------------------------*/ - -/** @defgroup PWR_Exported_Types PWR Exported Types - * @{ - */ - -/** - * @brief PWR PVD configuration structure definition - */ -typedef struct -{ - uint32_t PVDLevel; /*!< PVDLevel: Specifies the PVD detection level. - This parameter can be a value of @ref PWR_PVD_detection_level */ - - uint32_t Mode; /*!< Mode: Specifies the operating mode for the selected pins. - This parameter can be a value of @ref PWR_PVD_Mode */ -}PWR_PVDTypeDef; - - -/** - * @} - */ - - -/* Internal constants --------------------------------------------------------*/ - -/** @addtogroup PWR_Private_Constants - * @{ - */ - -#define PWR_EXTI_LINE_PVD ((uint32_t)0x00010000) /*!< External interrupt line 16 Connected to the PVD EXTI Line */ - -/** - * @} - */ - - -/* Exported constants --------------------------------------------------------*/ - -/** @defgroup PWR_Exported_Constants PWR Exported Constants - * @{ - */ - -/** @defgroup PWR_PVD_detection_level PWR PVD detection level - * @{ - */ -#define PWR_PVDLEVEL_0 PWR_CR_PLS_2V2 -#define PWR_PVDLEVEL_1 PWR_CR_PLS_2V3 -#define PWR_PVDLEVEL_2 PWR_CR_PLS_2V4 -#define PWR_PVDLEVEL_3 PWR_CR_PLS_2V5 -#define PWR_PVDLEVEL_4 PWR_CR_PLS_2V6 -#define PWR_PVDLEVEL_5 PWR_CR_PLS_2V7 -#define PWR_PVDLEVEL_6 PWR_CR_PLS_2V8 -#define PWR_PVDLEVEL_7 PWR_CR_PLS_2V9 - -/** - * @} - */ - -/** @defgroup PWR_PVD_Mode PWR PVD Mode - * @{ - */ -#define PWR_PVD_MODE_NORMAL 0x00000000U /*!< basic mode is used */ -#define PWR_PVD_MODE_IT_RISING 0x00010001U /*!< External Interrupt Mode with Rising edge trigger detection */ -#define PWR_PVD_MODE_IT_FALLING 0x00010002U /*!< External Interrupt Mode with Falling edge trigger detection */ -#define PWR_PVD_MODE_IT_RISING_FALLING 0x00010003U /*!< External Interrupt Mode with Rising/Falling edge trigger detection */ -#define PWR_PVD_MODE_EVENT_RISING 0x00020001U /*!< Event Mode with Rising edge trigger detection */ -#define PWR_PVD_MODE_EVENT_FALLING 0x00020002U /*!< Event Mode with Falling edge trigger detection */ -#define PWR_PVD_MODE_EVENT_RISING_FALLING 0x00020003U /*!< Event Mode with Rising/Falling edge trigger detection */ - -/** - * @} - */ - - -/** @defgroup PWR_WakeUp_Pins PWR WakeUp Pins - * @{ - */ - -#define PWR_WAKEUP_PIN1 PWR_CSR_EWUP - -/** - * @} - */ - -/** @defgroup PWR_Regulator_state_in_SLEEP_STOP_mode PWR Regulator state in SLEEP/STOP mode - * @{ - */ -#define PWR_MAINREGULATOR_ON 0x00000000U -#define PWR_LOWPOWERREGULATOR_ON PWR_CR_LPDS - -/** - * @} - */ - -/** @defgroup PWR_SLEEP_mode_entry PWR SLEEP mode entry - * @{ - */ -#define PWR_SLEEPENTRY_WFI ((uint8_t)0x01) -#define PWR_SLEEPENTRY_WFE ((uint8_t)0x02) - -/** - * @} - */ - -/** @defgroup PWR_STOP_mode_entry PWR STOP mode entry - * @{ - */ -#define PWR_STOPENTRY_WFI ((uint8_t)0x01) -#define PWR_STOPENTRY_WFE ((uint8_t)0x02) - -/** - * @} - */ - -/** @defgroup PWR_Flag PWR Flag - * @{ - */ -#define PWR_FLAG_WU PWR_CSR_WUF -#define PWR_FLAG_SB PWR_CSR_SBF -#define PWR_FLAG_PVDO PWR_CSR_PVDO - - -/** - * @} - */ - -/** - * @} - */ - -/* Exported macro ------------------------------------------------------------*/ -/** @defgroup PWR_Exported_Macros PWR Exported Macros - * @{ - */ - -/** @brief Check PWR flag is set or not. - * @param __FLAG__: specifies the flag to check. - * This parameter can be one of the following values: - * @arg PWR_FLAG_WU: Wake Up flag. This flag indicates that a wakeup event - * was received from the WKUP pin or from the RTC alarm - * An additional wakeup event is detected if the WKUP pin is enabled - * (by setting the EWUP bit) when the WKUP pin level is already high. - * @arg PWR_FLAG_SB: StandBy flag. This flag indicates that the system was - * resumed from StandBy mode. - * @arg PWR_FLAG_PVDO: PVD Output. This flag is valid only if PVD is enabled - * by the HAL_PWR_EnablePVD() function. The PVD is stopped by Standby mode - * For this reason, this bit is equal to 0 after Standby or reset - * until the PVDE bit is set. - * @retval The new state of __FLAG__ (TRUE or FALSE). - */ -#define __HAL_PWR_GET_FLAG(__FLAG__) ((PWR->CSR & (__FLAG__)) == (__FLAG__)) - -/** @brief Clear the PWR's pending flags. - * @param __FLAG__: specifies the flag to clear. - * This parameter can be one of the following values: - * @arg PWR_FLAG_WU: Wake Up flag - * @arg PWR_FLAG_SB: StandBy flag - */ -#define __HAL_PWR_CLEAR_FLAG(__FLAG__) SET_BIT(PWR->CR, ((__FLAG__) << 2)) - -/** - * @brief Enable interrupt on PVD Exti Line 16. - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_ENABLE_IT() SET_BIT(EXTI->IMR, PWR_EXTI_LINE_PVD) - -/** - * @brief Disable interrupt on PVD Exti Line 16. - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_DISABLE_IT() CLEAR_BIT(EXTI->IMR, PWR_EXTI_LINE_PVD) - -/** - * @brief Enable event on PVD Exti Line 16. - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_ENABLE_EVENT() SET_BIT(EXTI->EMR, PWR_EXTI_LINE_PVD) - -/** - * @brief Disable event on PVD Exti Line 16. - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_DISABLE_EVENT() CLEAR_BIT(EXTI->EMR, PWR_EXTI_LINE_PVD) - - -/** - * @brief PVD EXTI line configuration: set falling edge trigger. - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE() SET_BIT(EXTI->FTSR, PWR_EXTI_LINE_PVD) - - -/** - * @brief Disable the PVD Extended Interrupt Falling Trigger. - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE() CLEAR_BIT(EXTI->FTSR, PWR_EXTI_LINE_PVD) - - -/** - * @brief PVD EXTI line configuration: set rising edge trigger. - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE() SET_BIT(EXTI->RTSR, PWR_EXTI_LINE_PVD) - -/** - * @brief Disable the PVD Extended Interrupt Rising Trigger. - * This parameter can be: - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE() CLEAR_BIT(EXTI->RTSR, PWR_EXTI_LINE_PVD) - -/** - * @brief PVD EXTI line configuration: set rising & falling edge trigger. - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_ENABLE_RISING_FALLING_EDGE() __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE();__HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE(); - -/** - * @brief Disable the PVD Extended Interrupt Rising & Falling Trigger. - * This parameter can be: - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_DISABLE_RISING_FALLING_EDGE() __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE();__HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE(); - - - -/** - * @brief Check whether the specified PVD EXTI interrupt flag is set or not. - * @retval EXTI PVD Line Status. - */ -#define __HAL_PWR_PVD_EXTI_GET_FLAG() (EXTI->PR & (PWR_EXTI_LINE_PVD)) - -/** - * @brief Clear the PVD EXTI flag. - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_CLEAR_FLAG() (EXTI->PR = (PWR_EXTI_LINE_PVD)) - -/** - * @brief Generate a Software interrupt on selected EXTI line. - * @retval None. - */ -#define __HAL_PWR_PVD_EXTI_GENERATE_SWIT() SET_BIT(EXTI->SWIER, PWR_EXTI_LINE_PVD) -/** - * @} - */ - -/* Private macro -------------------------------------------------------------*/ -/** @defgroup PWR_Private_Macros PWR Private Macros - * @{ - */ -#define IS_PWR_PVD_LEVEL(LEVEL) (((LEVEL) == PWR_PVDLEVEL_0) || ((LEVEL) == PWR_PVDLEVEL_1)|| \ - ((LEVEL) == PWR_PVDLEVEL_2) || ((LEVEL) == PWR_PVDLEVEL_3)|| \ - ((LEVEL) == PWR_PVDLEVEL_4) || ((LEVEL) == PWR_PVDLEVEL_5)|| \ - ((LEVEL) == PWR_PVDLEVEL_6) || ((LEVEL) == PWR_PVDLEVEL_7)) - - -#define IS_PWR_PVD_MODE(MODE) (((MODE) == PWR_PVD_MODE_IT_RISING)|| ((MODE) == PWR_PVD_MODE_IT_FALLING) || \ - ((MODE) == PWR_PVD_MODE_IT_RISING_FALLING) || ((MODE) == PWR_PVD_MODE_EVENT_RISING) || \ - ((MODE) == PWR_PVD_MODE_EVENT_FALLING) || ((MODE) == PWR_PVD_MODE_EVENT_RISING_FALLING) || \ - ((MODE) == PWR_PVD_MODE_NORMAL)) - -#define IS_PWR_WAKEUP_PIN(PIN) (((PIN) == PWR_WAKEUP_PIN1)) - -#define IS_PWR_REGULATOR(REGULATOR) (((REGULATOR) == PWR_MAINREGULATOR_ON) || \ - ((REGULATOR) == PWR_LOWPOWERREGULATOR_ON)) - -#define IS_PWR_SLEEP_ENTRY(ENTRY) (((ENTRY) == PWR_SLEEPENTRY_WFI) || ((ENTRY) == PWR_SLEEPENTRY_WFE)) - -#define IS_PWR_STOP_ENTRY(ENTRY) (((ENTRY) == PWR_STOPENTRY_WFI) || ((ENTRY) == PWR_STOPENTRY_WFE)) - -/** - * @} - */ - - - -/* Exported functions --------------------------------------------------------*/ - -/** @addtogroup PWR_Exported_Functions PWR Exported Functions - * @{ - */ - -/** @addtogroup PWR_Exported_Functions_Group1 Initialization and de-initialization functions - * @{ - */ - -/* Initialization and de-initialization functions *******************************/ -void HAL_PWR_DeInit(void); -void HAL_PWR_EnableBkUpAccess(void); -void HAL_PWR_DisableBkUpAccess(void); - -/** - * @} - */ - -/** @addtogroup PWR_Exported_Functions_Group2 Peripheral Control functions - * @{ - */ - -/* Peripheral Control functions ************************************************/ -void HAL_PWR_ConfigPVD(PWR_PVDTypeDef *sConfigPVD); -/* #define HAL_PWR_ConfigPVD 12*/ -void HAL_PWR_EnablePVD(void); -void HAL_PWR_DisablePVD(void); - -/* WakeUp pins configuration functions ****************************************/ -void HAL_PWR_EnableWakeUpPin(uint32_t WakeUpPinx); -void HAL_PWR_DisableWakeUpPin(uint32_t WakeUpPinx); - -/* Low Power modes configuration functions ************************************/ -void HAL_PWR_EnterSTOPMode(uint32_t Regulator, uint8_t STOPEntry); -void HAL_PWR_EnterSLEEPMode(uint32_t Regulator, uint8_t SLEEPEntry); -void HAL_PWR_EnterSTANDBYMode(void); - -void HAL_PWR_EnableSleepOnExit(void); -void HAL_PWR_DisableSleepOnExit(void); -void HAL_PWR_EnableSEVOnPend(void); -void HAL_PWR_DisableSEVOnPend(void); - - - -void HAL_PWR_PVD_IRQHandler(void); -void HAL_PWR_PVDCallback(void); -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - - -#endif /* __STM32F1xx_HAL_PWR_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_pwr.h + * @author MCD Application Team + * @brief Header file of PWR HAL module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_HAL_PWR_H +#define __STM32F1xx_HAL_PWR_H + +#ifdef __cplusplus + extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup PWR + * @{ + */ + +/* Exported types ------------------------------------------------------------*/ + +/** @defgroup PWR_Exported_Types PWR Exported Types + * @{ + */ + +/** + * @brief PWR PVD configuration structure definition + */ +typedef struct +{ + uint32_t PVDLevel; /*!< PVDLevel: Specifies the PVD detection level. + This parameter can be a value of @ref PWR_PVD_detection_level */ + + uint32_t Mode; /*!< Mode: Specifies the operating mode for the selected pins. + This parameter can be a value of @ref PWR_PVD_Mode */ +}PWR_PVDTypeDef; + + +/** + * @} + */ + + +/* Internal constants --------------------------------------------------------*/ + +/** @addtogroup PWR_Private_Constants + * @{ + */ + +#define PWR_EXTI_LINE_PVD ((uint32_t)0x00010000) /*!< External interrupt line 16 Connected to the PVD EXTI Line */ + +/** + * @} + */ + + +/* Exported constants --------------------------------------------------------*/ + +/** @defgroup PWR_Exported_Constants PWR Exported Constants + * @{ + */ + +/** @defgroup PWR_PVD_detection_level PWR PVD detection level + * @{ + */ +#define PWR_PVDLEVEL_0 PWR_CR_PLS_2V2 +#define PWR_PVDLEVEL_1 PWR_CR_PLS_2V3 +#define PWR_PVDLEVEL_2 PWR_CR_PLS_2V4 +#define PWR_PVDLEVEL_3 PWR_CR_PLS_2V5 +#define PWR_PVDLEVEL_4 PWR_CR_PLS_2V6 +#define PWR_PVDLEVEL_5 PWR_CR_PLS_2V7 +#define PWR_PVDLEVEL_6 PWR_CR_PLS_2V8 +#define PWR_PVDLEVEL_7 PWR_CR_PLS_2V9 + +/** + * @} + */ + +/** @defgroup PWR_PVD_Mode PWR PVD Mode + * @{ + */ +#define PWR_PVD_MODE_NORMAL 0x00000000U /*!< basic mode is used */ +#define PWR_PVD_MODE_IT_RISING 0x00010001U /*!< External Interrupt Mode with Rising edge trigger detection */ +#define PWR_PVD_MODE_IT_FALLING 0x00010002U /*!< External Interrupt Mode with Falling edge trigger detection */ +#define PWR_PVD_MODE_IT_RISING_FALLING 0x00010003U /*!< External Interrupt Mode with Rising/Falling edge trigger detection */ +#define PWR_PVD_MODE_EVENT_RISING 0x00020001U /*!< Event Mode with Rising edge trigger detection */ +#define PWR_PVD_MODE_EVENT_FALLING 0x00020002U /*!< Event Mode with Falling edge trigger detection */ +#define PWR_PVD_MODE_EVENT_RISING_FALLING 0x00020003U /*!< Event Mode with Rising/Falling edge trigger detection */ + +/** + * @} + */ + + +/** @defgroup PWR_WakeUp_Pins PWR WakeUp Pins + * @{ + */ + +#define PWR_WAKEUP_PIN1 PWR_CSR_EWUP + +/** + * @} + */ + +/** @defgroup PWR_Regulator_state_in_SLEEP_STOP_mode PWR Regulator state in SLEEP/STOP mode + * @{ + */ +#define PWR_MAINREGULATOR_ON 0x00000000U +#define PWR_LOWPOWERREGULATOR_ON PWR_CR_LPDS + +/** + * @} + */ + +/** @defgroup PWR_SLEEP_mode_entry PWR SLEEP mode entry + * @{ + */ +#define PWR_SLEEPENTRY_WFI ((uint8_t)0x01) +#define PWR_SLEEPENTRY_WFE ((uint8_t)0x02) + +/** + * @} + */ + +/** @defgroup PWR_STOP_mode_entry PWR STOP mode entry + * @{ + */ +#define PWR_STOPENTRY_WFI ((uint8_t)0x01) +#define PWR_STOPENTRY_WFE ((uint8_t)0x02) + +/** + * @} + */ + +/** @defgroup PWR_Flag PWR Flag + * @{ + */ +#define PWR_FLAG_WU PWR_CSR_WUF +#define PWR_FLAG_SB PWR_CSR_SBF +#define PWR_FLAG_PVDO PWR_CSR_PVDO + + +/** + * @} + */ + +/** + * @} + */ + +/* Exported macro ------------------------------------------------------------*/ +/** @defgroup PWR_Exported_Macros PWR Exported Macros + * @{ + */ + +/** @brief Check PWR flag is set or not. + * @param __FLAG__: specifies the flag to check. + * This parameter can be one of the following values: + * @arg PWR_FLAG_WU: Wake Up flag. This flag indicates that a wakeup event + * was received from the WKUP pin or from the RTC alarm + * An additional wakeup event is detected if the WKUP pin is enabled + * (by setting the EWUP bit) when the WKUP pin level is already high. + * @arg PWR_FLAG_SB: StandBy flag. This flag indicates that the system was + * resumed from StandBy mode. + * @arg PWR_FLAG_PVDO: PVD Output. This flag is valid only if PVD is enabled + * by the HAL_PWR_EnablePVD() function. The PVD is stopped by Standby mode + * For this reason, this bit is equal to 0 after Standby or reset + * until the PVDE bit is set. + * @retval The new state of __FLAG__ (TRUE or FALSE). + */ +#define __HAL_PWR_GET_FLAG(__FLAG__) ((PWR->CSR & (__FLAG__)) == (__FLAG__)) + +/** @brief Clear the PWR's pending flags. + * @param __FLAG__: specifies the flag to clear. + * This parameter can be one of the following values: + * @arg PWR_FLAG_WU: Wake Up flag + * @arg PWR_FLAG_SB: StandBy flag + */ +#define __HAL_PWR_CLEAR_FLAG(__FLAG__) SET_BIT(PWR->CR, ((__FLAG__) << 2)) + +/** + * @brief Enable interrupt on PVD Exti Line 16. + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_ENABLE_IT() SET_BIT(EXTI->IMR, PWR_EXTI_LINE_PVD) + +/** + * @brief Disable interrupt on PVD Exti Line 16. + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_DISABLE_IT() CLEAR_BIT(EXTI->IMR, PWR_EXTI_LINE_PVD) + +/** + * @brief Enable event on PVD Exti Line 16. + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_ENABLE_EVENT() SET_BIT(EXTI->EMR, PWR_EXTI_LINE_PVD) + +/** + * @brief Disable event on PVD Exti Line 16. + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_DISABLE_EVENT() CLEAR_BIT(EXTI->EMR, PWR_EXTI_LINE_PVD) + + +/** + * @brief PVD EXTI line configuration: set falling edge trigger. + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE() SET_BIT(EXTI->FTSR, PWR_EXTI_LINE_PVD) + + +/** + * @brief Disable the PVD Extended Interrupt Falling Trigger. + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE() CLEAR_BIT(EXTI->FTSR, PWR_EXTI_LINE_PVD) + + +/** + * @brief PVD EXTI line configuration: set rising edge trigger. + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE() SET_BIT(EXTI->RTSR, PWR_EXTI_LINE_PVD) + +/** + * @brief Disable the PVD Extended Interrupt Rising Trigger. + * This parameter can be: + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE() CLEAR_BIT(EXTI->RTSR, PWR_EXTI_LINE_PVD) + +/** + * @brief PVD EXTI line configuration: set rising & falling edge trigger. + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_ENABLE_RISING_FALLING_EDGE() __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE();__HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE(); + +/** + * @brief Disable the PVD Extended Interrupt Rising & Falling Trigger. + * This parameter can be: + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_DISABLE_RISING_FALLING_EDGE() __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE();__HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE(); + + + +/** + * @brief Check whether the specified PVD EXTI interrupt flag is set or not. + * @retval EXTI PVD Line Status. + */ +#define __HAL_PWR_PVD_EXTI_GET_FLAG() (EXTI->PR & (PWR_EXTI_LINE_PVD)) + +/** + * @brief Clear the PVD EXTI flag. + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_CLEAR_FLAG() (EXTI->PR = (PWR_EXTI_LINE_PVD)) + +/** + * @brief Generate a Software interrupt on selected EXTI line. + * @retval None. + */ +#define __HAL_PWR_PVD_EXTI_GENERATE_SWIT() SET_BIT(EXTI->SWIER, PWR_EXTI_LINE_PVD) +/** + * @} + */ + +/* Private macro -------------------------------------------------------------*/ +/** @defgroup PWR_Private_Macros PWR Private Macros + * @{ + */ +#define IS_PWR_PVD_LEVEL(LEVEL) (((LEVEL) == PWR_PVDLEVEL_0) || ((LEVEL) == PWR_PVDLEVEL_1)|| \ + ((LEVEL) == PWR_PVDLEVEL_2) || ((LEVEL) == PWR_PVDLEVEL_3)|| \ + ((LEVEL) == PWR_PVDLEVEL_4) || ((LEVEL) == PWR_PVDLEVEL_5)|| \ + ((LEVEL) == PWR_PVDLEVEL_6) || ((LEVEL) == PWR_PVDLEVEL_7)) + + +#define IS_PWR_PVD_MODE(MODE) (((MODE) == PWR_PVD_MODE_IT_RISING)|| ((MODE) == PWR_PVD_MODE_IT_FALLING) || \ + ((MODE) == PWR_PVD_MODE_IT_RISING_FALLING) || ((MODE) == PWR_PVD_MODE_EVENT_RISING) || \ + ((MODE) == PWR_PVD_MODE_EVENT_FALLING) || ((MODE) == PWR_PVD_MODE_EVENT_RISING_FALLING) || \ + ((MODE) == PWR_PVD_MODE_NORMAL)) + +#define IS_PWR_WAKEUP_PIN(PIN) (((PIN) == PWR_WAKEUP_PIN1)) + +#define IS_PWR_REGULATOR(REGULATOR) (((REGULATOR) == PWR_MAINREGULATOR_ON) || \ + ((REGULATOR) == PWR_LOWPOWERREGULATOR_ON)) + +#define IS_PWR_SLEEP_ENTRY(ENTRY) (((ENTRY) == PWR_SLEEPENTRY_WFI) || ((ENTRY) == PWR_SLEEPENTRY_WFE)) + +#define IS_PWR_STOP_ENTRY(ENTRY) (((ENTRY) == PWR_STOPENTRY_WFI) || ((ENTRY) == PWR_STOPENTRY_WFE)) + +/** + * @} + */ + + + +/* Exported functions --------------------------------------------------------*/ + +/** @addtogroup PWR_Exported_Functions PWR Exported Functions + * @{ + */ + +/** @addtogroup PWR_Exported_Functions_Group1 Initialization and de-initialization functions + * @{ + */ + +/* Initialization and de-initialization functions *******************************/ +void HAL_PWR_DeInit(void); +void HAL_PWR_EnableBkUpAccess(void); +void HAL_PWR_DisableBkUpAccess(void); + +/** + * @} + */ + +/** @addtogroup PWR_Exported_Functions_Group2 Peripheral Control functions + * @{ + */ + +/* Peripheral Control functions ************************************************/ +void HAL_PWR_ConfigPVD(PWR_PVDTypeDef *sConfigPVD); +/* #define HAL_PWR_ConfigPVD 12*/ +void HAL_PWR_EnablePVD(void); +void HAL_PWR_DisablePVD(void); + +/* WakeUp pins configuration functions ****************************************/ +void HAL_PWR_EnableWakeUpPin(uint32_t WakeUpPinx); +void HAL_PWR_DisableWakeUpPin(uint32_t WakeUpPinx); + +/* Low Power modes configuration functions ************************************/ +void HAL_PWR_EnterSTOPMode(uint32_t Regulator, uint8_t STOPEntry); +void HAL_PWR_EnterSLEEPMode(uint32_t Regulator, uint8_t SLEEPEntry); +void HAL_PWR_EnterSTANDBYMode(void); + +void HAL_PWR_EnableSleepOnExit(void); +void HAL_PWR_DisableSleepOnExit(void); +void HAL_PWR_EnableSEVOnPend(void); +void HAL_PWR_DisableSEVOnPend(void); + + + +void HAL_PWR_PVD_IRQHandler(void); +void HAL_PWR_PVDCallback(void); +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + + +#endif /* __STM32F1xx_HAL_PWR_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h index f0097cb..782e33a 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h @@ -1,1378 +1,1378 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_rcc.h - * @author MCD Application Team - * @brief Header file of RCC HAL module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_HAL_RCC_H -#define __STM32F1xx_HAL_RCC_H - -#ifdef __cplusplus -extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup RCC - * @{ - */ - -/* Exported types ------------------------------------------------------------*/ - -/** @defgroup RCC_Exported_Types RCC Exported Types - * @{ - */ - -/** - * @brief RCC PLL configuration structure definition - */ -typedef struct -{ - uint32_t PLLState; /*!< PLLState: The new state of the PLL. - This parameter can be a value of @ref RCC_PLL_Config */ - - uint32_t PLLSource; /*!< PLLSource: PLL entry clock source. - This parameter must be a value of @ref RCC_PLL_Clock_Source */ - - uint32_t PLLMUL; /*!< PLLMUL: Multiplication factor for PLL VCO input clock - This parameter must be a value of @ref RCCEx_PLL_Multiplication_Factor */ -} RCC_PLLInitTypeDef; - -/** - * @brief RCC System, AHB and APB busses clock configuration structure definition - */ -typedef struct -{ - uint32_t ClockType; /*!< The clock to be configured. - This parameter can be a value of @ref RCC_System_Clock_Type */ - - uint32_t SYSCLKSource; /*!< The clock source (SYSCLKS) used as system clock. - This parameter can be a value of @ref RCC_System_Clock_Source */ - - uint32_t AHBCLKDivider; /*!< The AHB clock (HCLK) divider. This clock is derived from the system clock (SYSCLK). - This parameter can be a value of @ref RCC_AHB_Clock_Source */ - - uint32_t APB1CLKDivider; /*!< The APB1 clock (PCLK1) divider. This clock is derived from the AHB clock (HCLK). - This parameter can be a value of @ref RCC_APB1_APB2_Clock_Source */ - - uint32_t APB2CLKDivider; /*!< The APB2 clock (PCLK2) divider. This clock is derived from the AHB clock (HCLK). - This parameter can be a value of @ref RCC_APB1_APB2_Clock_Source */ -} RCC_ClkInitTypeDef; - -/** - * @} - */ - -/* Exported constants --------------------------------------------------------*/ -/** @defgroup RCC_Exported_Constants RCC Exported Constants - * @{ - */ - -/** @defgroup RCC_PLL_Clock_Source PLL Clock Source - * @{ - */ - -#define RCC_PLLSOURCE_HSI_DIV2 0x00000000U /*!< HSI clock divided by 2 selected as PLL entry clock source */ -#define RCC_PLLSOURCE_HSE RCC_CFGR_PLLSRC /*!< HSE clock selected as PLL entry clock source */ - -/** - * @} - */ - -/** @defgroup RCC_Oscillator_Type Oscillator Type - * @{ - */ -#define RCC_OSCILLATORTYPE_NONE 0x00000000U -#define RCC_OSCILLATORTYPE_HSE 0x00000001U -#define RCC_OSCILLATORTYPE_HSI 0x00000002U -#define RCC_OSCILLATORTYPE_LSE 0x00000004U -#define RCC_OSCILLATORTYPE_LSI 0x00000008U -/** - * @} - */ - -/** @defgroup RCC_HSE_Config HSE Config - * @{ - */ -#define RCC_HSE_OFF 0x00000000U /*!< HSE clock deactivation */ -#define RCC_HSE_ON RCC_CR_HSEON /*!< HSE clock activation */ -#define RCC_HSE_BYPASS ((uint32_t)(RCC_CR_HSEBYP | RCC_CR_HSEON)) /*!< External clock source for HSE clock */ -/** - * @} - */ - -/** @defgroup RCC_LSE_Config LSE Config - * @{ - */ -#define RCC_LSE_OFF 0x00000000U /*!< LSE clock deactivation */ -#define RCC_LSE_ON RCC_BDCR_LSEON /*!< LSE clock activation */ -#define RCC_LSE_BYPASS ((uint32_t)(RCC_BDCR_LSEBYP | RCC_BDCR_LSEON)) /*!< External clock source for LSE clock */ - -/** - * @} - */ - -/** @defgroup RCC_HSI_Config HSI Config - * @{ - */ -#define RCC_HSI_OFF 0x00000000U /*!< HSI clock deactivation */ -#define RCC_HSI_ON RCC_CR_HSION /*!< HSI clock activation */ - -#define RCC_HSICALIBRATION_DEFAULT 0x10U /* Default HSI calibration trimming value */ - -/** - * @} - */ - -/** @defgroup RCC_LSI_Config LSI Config - * @{ - */ -#define RCC_LSI_OFF 0x00000000U /*!< LSI clock deactivation */ -#define RCC_LSI_ON RCC_CSR_LSION /*!< LSI clock activation */ - -/** - * @} - */ - -/** @defgroup RCC_PLL_Config PLL Config - * @{ - */ -#define RCC_PLL_NONE 0x00000000U /*!< PLL is not configured */ -#define RCC_PLL_OFF 0x00000001U /*!< PLL deactivation */ -#define RCC_PLL_ON 0x00000002U /*!< PLL activation */ - -/** - * @} - */ - -/** @defgroup RCC_System_Clock_Type System Clock Type - * @{ - */ -#define RCC_CLOCKTYPE_SYSCLK 0x00000001U /*!< SYSCLK to configure */ -#define RCC_CLOCKTYPE_HCLK 0x00000002U /*!< HCLK to configure */ -#define RCC_CLOCKTYPE_PCLK1 0x00000004U /*!< PCLK1 to configure */ -#define RCC_CLOCKTYPE_PCLK2 0x00000008U /*!< PCLK2 to configure */ - -/** - * @} - */ - -/** @defgroup RCC_System_Clock_Source System Clock Source - * @{ - */ -#define RCC_SYSCLKSOURCE_HSI RCC_CFGR_SW_HSI /*!< HSI selected as system clock */ -#define RCC_SYSCLKSOURCE_HSE RCC_CFGR_SW_HSE /*!< HSE selected as system clock */ -#define RCC_SYSCLKSOURCE_PLLCLK RCC_CFGR_SW_PLL /*!< PLL selected as system clock */ - -/** - * @} - */ - -/** @defgroup RCC_System_Clock_Source_Status System Clock Source Status - * @{ - */ -#define RCC_SYSCLKSOURCE_STATUS_HSI RCC_CFGR_SWS_HSI /*!< HSI used as system clock */ -#define RCC_SYSCLKSOURCE_STATUS_HSE RCC_CFGR_SWS_HSE /*!< HSE used as system clock */ -#define RCC_SYSCLKSOURCE_STATUS_PLLCLK RCC_CFGR_SWS_PLL /*!< PLL used as system clock */ - -/** - * @} - */ - -/** @defgroup RCC_AHB_Clock_Source AHB Clock Source - * @{ - */ -#define RCC_SYSCLK_DIV1 RCC_CFGR_HPRE_DIV1 /*!< SYSCLK not divided */ -#define RCC_SYSCLK_DIV2 RCC_CFGR_HPRE_DIV2 /*!< SYSCLK divided by 2 */ -#define RCC_SYSCLK_DIV4 RCC_CFGR_HPRE_DIV4 /*!< SYSCLK divided by 4 */ -#define RCC_SYSCLK_DIV8 RCC_CFGR_HPRE_DIV8 /*!< SYSCLK divided by 8 */ -#define RCC_SYSCLK_DIV16 RCC_CFGR_HPRE_DIV16 /*!< SYSCLK divided by 16 */ -#define RCC_SYSCLK_DIV64 RCC_CFGR_HPRE_DIV64 /*!< SYSCLK divided by 64 */ -#define RCC_SYSCLK_DIV128 RCC_CFGR_HPRE_DIV128 /*!< SYSCLK divided by 128 */ -#define RCC_SYSCLK_DIV256 RCC_CFGR_HPRE_DIV256 /*!< SYSCLK divided by 256 */ -#define RCC_SYSCLK_DIV512 RCC_CFGR_HPRE_DIV512 /*!< SYSCLK divided by 512 */ - -/** - * @} - */ - -/** @defgroup RCC_APB1_APB2_Clock_Source APB1 APB2 Clock Source - * @{ - */ -#define RCC_HCLK_DIV1 RCC_CFGR_PPRE1_DIV1 /*!< HCLK not divided */ -#define RCC_HCLK_DIV2 RCC_CFGR_PPRE1_DIV2 /*!< HCLK divided by 2 */ -#define RCC_HCLK_DIV4 RCC_CFGR_PPRE1_DIV4 /*!< HCLK divided by 4 */ -#define RCC_HCLK_DIV8 RCC_CFGR_PPRE1_DIV8 /*!< HCLK divided by 8 */ -#define RCC_HCLK_DIV16 RCC_CFGR_PPRE1_DIV16 /*!< HCLK divided by 16 */ - -/** - * @} - */ - -/** @defgroup RCC_RTC_Clock_Source RTC Clock Source - * @{ - */ -#define RCC_RTCCLKSOURCE_NO_CLK 0x00000000U /*!< No clock */ -#define RCC_RTCCLKSOURCE_LSE RCC_BDCR_RTCSEL_LSE /*!< LSE oscillator clock used as RTC clock */ -#define RCC_RTCCLKSOURCE_LSI RCC_BDCR_RTCSEL_LSI /*!< LSI oscillator clock used as RTC clock */ -#define RCC_RTCCLKSOURCE_HSE_DIV128 RCC_BDCR_RTCSEL_HSE /*!< HSE oscillator clock divided by 128 used as RTC clock */ -/** - * @} - */ - - -/** @defgroup RCC_MCO_Index MCO Index - * @{ - */ -#define RCC_MCO1 0x00000000U -#define RCC_MCO RCC_MCO1 /*!< MCO1 to be compliant with other families with 2 MCOs*/ - -/** - * @} - */ - -/** @defgroup RCC_MCOx_Clock_Prescaler MCO Clock Prescaler - * @{ - */ -#define RCC_MCODIV_1 0x00000000U - -/** - * @} - */ - -/** @defgroup RCC_Interrupt Interrupts - * @{ - */ -#define RCC_IT_LSIRDY ((uint8_t)RCC_CIR_LSIRDYF) /*!< LSI Ready Interrupt flag */ -#define RCC_IT_LSERDY ((uint8_t)RCC_CIR_LSERDYF) /*!< LSE Ready Interrupt flag */ -#define RCC_IT_HSIRDY ((uint8_t)RCC_CIR_HSIRDYF) /*!< HSI Ready Interrupt flag */ -#define RCC_IT_HSERDY ((uint8_t)RCC_CIR_HSERDYF) /*!< HSE Ready Interrupt flag */ -#define RCC_IT_PLLRDY ((uint8_t)RCC_CIR_PLLRDYF) /*!< PLL Ready Interrupt flag */ -#define RCC_IT_CSS ((uint8_t)RCC_CIR_CSSF) /*!< Clock Security System Interrupt flag */ -/** - * @} - */ - -/** @defgroup RCC_Flag Flags - * Elements values convention: XXXYYYYYb - * - YYYYY : Flag position in the register - * - XXX : Register index - * - 001: CR register - * - 010: BDCR register - * - 011: CSR register - * @{ - */ -/* Flags in the CR register */ -#define RCC_FLAG_HSIRDY ((uint8_t)((CR_REG_INDEX << 5U) | RCC_CR_HSIRDY_Pos)) /*!< Internal High Speed clock ready flag */ -#define RCC_FLAG_HSERDY ((uint8_t)((CR_REG_INDEX << 5U) | RCC_CR_HSERDY_Pos)) /*!< External High Speed clock ready flag */ -#define RCC_FLAG_PLLRDY ((uint8_t)((CR_REG_INDEX << 5U) | RCC_CR_PLLRDY_Pos)) /*!< PLL clock ready flag */ - -/* Flags in the CSR register */ -#define RCC_FLAG_LSIRDY ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_LSIRDY_Pos)) /*!< Internal Low Speed oscillator Ready */ -#define RCC_FLAG_PINRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_PINRSTF_Pos)) /*!< PIN reset flag */ -#define RCC_FLAG_PORRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_PORRSTF_Pos)) /*!< POR/PDR reset flag */ -#define RCC_FLAG_SFTRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_SFTRSTF_Pos)) /*!< Software Reset flag */ -#define RCC_FLAG_IWDGRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_IWDGRSTF_Pos)) /*!< Independent Watchdog reset flag */ -#define RCC_FLAG_WWDGRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_WWDGRSTF_Pos)) /*!< Window watchdog reset flag */ -#define RCC_FLAG_LPWRRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_LPWRRSTF_Pos)) /*!< Low-Power reset flag */ - -/* Flags in the BDCR register */ -#define RCC_FLAG_LSERDY ((uint8_t)((BDCR_REG_INDEX << 5U) | RCC_BDCR_LSERDY_Pos)) /*!< External Low Speed oscillator Ready */ - -/** - * @} - */ - -/** - * @} - */ - -/* Exported macro ------------------------------------------------------------*/ - -/** @defgroup RCC_Exported_Macros RCC Exported Macros - * @{ - */ - -/** @defgroup RCC_Peripheral_Clock_Enable_Disable Peripheral Clock Enable Disable - * @brief Enable or disable the AHB1 peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ -#define __HAL_RCC_DMA1_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->AHBENR, RCC_AHBENR_DMA1EN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_DMA1EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_SRAM_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->AHBENR, RCC_AHBENR_SRAMEN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_SRAMEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_FLITF_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->AHBENR, RCC_AHBENR_FLITFEN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_FLITFEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_CRC_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->AHBENR, RCC_AHBENR_CRCEN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_CRCEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_DMA1_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_DMA1EN)) -#define __HAL_RCC_SRAM_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_SRAMEN)) -#define __HAL_RCC_FLITF_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_FLITFEN)) -#define __HAL_RCC_CRC_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_CRCEN)) - -/** - * @} - */ - -/** @defgroup RCC_AHB_Peripheral_Clock_Enable_Disable_Status AHB Peripheral Clock Enable Disable Status - * @brief Get the enable or disable status of the AHB peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ - -#define __HAL_RCC_DMA1_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_DMA1EN)) != RESET) -#define __HAL_RCC_DMA1_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_DMA1EN)) == RESET) -#define __HAL_RCC_SRAM_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_SRAMEN)) != RESET) -#define __HAL_RCC_SRAM_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_SRAMEN)) == RESET) -#define __HAL_RCC_FLITF_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_FLITFEN)) != RESET) -#define __HAL_RCC_FLITF_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_FLITFEN)) == RESET) -#define __HAL_RCC_CRC_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_CRCEN)) != RESET) -#define __HAL_RCC_CRC_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_CRCEN)) == RESET) - -/** - * @} - */ - -/** @defgroup RCC_APB1_Clock_Enable_Disable APB1 Clock Enable Disable - * @brief Enable or disable the Low Speed APB (APB1) peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ -#define __HAL_RCC_TIM2_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM2EN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM2EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM3_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM3EN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM3EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_WWDG_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_WWDGEN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_WWDGEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_USART2_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_USART2EN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_USART2EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_I2C1_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_I2C1EN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_I2C1EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_BKP_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_BKPEN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_BKPEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_PWR_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_PWREN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_PWREN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM2_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM2EN)) -#define __HAL_RCC_TIM3_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM3EN)) -#define __HAL_RCC_WWDG_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_WWDGEN)) -#define __HAL_RCC_USART2_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_USART2EN)) -#define __HAL_RCC_I2C1_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_I2C1EN)) - -#define __HAL_RCC_BKP_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_BKPEN)) -#define __HAL_RCC_PWR_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_PWREN)) - -/** - * @} - */ - -/** @defgroup RCC_APB1_Peripheral_Clock_Enable_Disable_Status APB1 Peripheral Clock Enable Disable Status - * @brief Get the enable or disable status of the APB1 peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ - -#define __HAL_RCC_TIM2_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM2EN)) != RESET) -#define __HAL_RCC_TIM2_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM2EN)) == RESET) -#define __HAL_RCC_TIM3_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM3EN)) != RESET) -#define __HAL_RCC_TIM3_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM3EN)) == RESET) -#define __HAL_RCC_WWDG_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_WWDGEN)) != RESET) -#define __HAL_RCC_WWDG_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_WWDGEN)) == RESET) -#define __HAL_RCC_USART2_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USART2EN)) != RESET) -#define __HAL_RCC_USART2_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USART2EN)) == RESET) -#define __HAL_RCC_I2C1_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_I2C1EN)) != RESET) -#define __HAL_RCC_I2C1_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_I2C1EN)) == RESET) -#define __HAL_RCC_BKP_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_BKPEN)) != RESET) -#define __HAL_RCC_BKP_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_BKPEN)) == RESET) -#define __HAL_RCC_PWR_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_PWREN)) != RESET) -#define __HAL_RCC_PWR_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_PWREN)) == RESET) - -/** - * @} - */ - -/** @defgroup RCC_APB2_Clock_Enable_Disable APB2 Clock Enable Disable - * @brief Enable or disable the High Speed APB (APB2) peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ -#define __HAL_RCC_AFIO_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_AFIOEN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_AFIOEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_GPIOA_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPAEN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPAEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_GPIOB_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPBEN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPBEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_GPIOC_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPCEN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPCEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_GPIOD_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPDEN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPDEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_ADC1_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC1EN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC1EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM1_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM1EN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM1EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_SPI1_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_SPI1EN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_SPI1EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_USART1_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_USART1EN);\ - /* Delay after an RCC peripheral clock enabling */\ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_USART1EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_AFIO_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_AFIOEN)) -#define __HAL_RCC_GPIOA_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPAEN)) -#define __HAL_RCC_GPIOB_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPBEN)) -#define __HAL_RCC_GPIOC_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPCEN)) -#define __HAL_RCC_GPIOD_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPDEN)) -#define __HAL_RCC_ADC1_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_ADC1EN)) - -#define __HAL_RCC_TIM1_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM1EN)) -#define __HAL_RCC_SPI1_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_SPI1EN)) -#define __HAL_RCC_USART1_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_USART1EN)) - -/** - * @} - */ - -/** @defgroup RCC_APB2_Peripheral_Clock_Enable_Disable_Status APB2 Peripheral Clock Enable Disable Status - * @brief Get the enable or disable status of the APB2 peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ - -#define __HAL_RCC_AFIO_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_AFIOEN)) != RESET) -#define __HAL_RCC_AFIO_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_AFIOEN)) == RESET) -#define __HAL_RCC_GPIOA_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPAEN)) != RESET) -#define __HAL_RCC_GPIOA_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPAEN)) == RESET) -#define __HAL_RCC_GPIOB_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPBEN)) != RESET) -#define __HAL_RCC_GPIOB_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPBEN)) == RESET) -#define __HAL_RCC_GPIOC_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPCEN)) != RESET) -#define __HAL_RCC_GPIOC_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPCEN)) == RESET) -#define __HAL_RCC_GPIOD_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPDEN)) != RESET) -#define __HAL_RCC_GPIOD_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPDEN)) == RESET) -#define __HAL_RCC_ADC1_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC1EN)) != RESET) -#define __HAL_RCC_ADC1_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC1EN)) == RESET) -#define __HAL_RCC_TIM1_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM1EN)) != RESET) -#define __HAL_RCC_TIM1_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM1EN)) == RESET) -#define __HAL_RCC_SPI1_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_SPI1EN)) != RESET) -#define __HAL_RCC_SPI1_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_SPI1EN)) == RESET) -#define __HAL_RCC_USART1_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_USART1EN)) != RESET) -#define __HAL_RCC_USART1_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_USART1EN)) == RESET) - -/** - * @} - */ - -/** @defgroup RCC_APB1_Force_Release_Reset APB1 Force Release Reset - * @brief Force or release APB1 peripheral reset. - * @{ - */ -#define __HAL_RCC_APB1_FORCE_RESET() (RCC->APB2RSTR = 0xFFFFFFFFU) -#define __HAL_RCC_TIM2_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM2RST)) -#define __HAL_RCC_TIM3_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM3RST)) -#define __HAL_RCC_WWDG_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_WWDGRST)) -#define __HAL_RCC_USART2_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_USART2RST)) -#define __HAL_RCC_I2C1_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_I2C1RST)) - -#define __HAL_RCC_BKP_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_BKPRST)) -#define __HAL_RCC_PWR_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_PWRRST)) - -#define __HAL_RCC_APB1_RELEASE_RESET() (RCC->APB1RSTR = 0x00) -#define __HAL_RCC_TIM2_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM2RST)) -#define __HAL_RCC_TIM3_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM3RST)) -#define __HAL_RCC_WWDG_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_WWDGRST)) -#define __HAL_RCC_USART2_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_USART2RST)) -#define __HAL_RCC_I2C1_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_I2C1RST)) - -#define __HAL_RCC_BKP_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_BKPRST)) -#define __HAL_RCC_PWR_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_PWRRST)) - -/** - * @} - */ - -/** @defgroup RCC_APB2_Force_Release_Reset APB2 Force Release Reset - * @brief Force or release APB2 peripheral reset. - * @{ - */ -#define __HAL_RCC_APB2_FORCE_RESET() (RCC->APB2RSTR = 0xFFFFFFFFU) -#define __HAL_RCC_AFIO_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_AFIORST)) -#define __HAL_RCC_GPIOA_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPARST)) -#define __HAL_RCC_GPIOB_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPBRST)) -#define __HAL_RCC_GPIOC_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPCRST)) -#define __HAL_RCC_GPIOD_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPDRST)) -#define __HAL_RCC_ADC1_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_ADC1RST)) - -#define __HAL_RCC_TIM1_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM1RST)) -#define __HAL_RCC_SPI1_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_SPI1RST)) -#define __HAL_RCC_USART1_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_USART1RST)) - -#define __HAL_RCC_APB2_RELEASE_RESET() (RCC->APB2RSTR = 0x00) -#define __HAL_RCC_AFIO_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_AFIORST)) -#define __HAL_RCC_GPIOA_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPARST)) -#define __HAL_RCC_GPIOB_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPBRST)) -#define __HAL_RCC_GPIOC_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPCRST)) -#define __HAL_RCC_GPIOD_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPDRST)) -#define __HAL_RCC_ADC1_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_ADC1RST)) - -#define __HAL_RCC_TIM1_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM1RST)) -#define __HAL_RCC_SPI1_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_SPI1RST)) -#define __HAL_RCC_USART1_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_USART1RST)) - -/** - * @} - */ - -/** @defgroup RCC_HSI_Configuration HSI Configuration - * @{ - */ - -/** @brief Macros to enable or disable the Internal High Speed oscillator (HSI). - * @note The HSI is stopped by hardware when entering STOP and STANDBY modes. - * @note HSI can not be stopped if it is used as system clock source. In this case, - * you have to select another source of the system clock then stop the HSI. - * @note After enabling the HSI, the application software should wait on HSIRDY - * flag to be set indicating that HSI clock is stable and can be used as - * system clock source. - * @note When the HSI is stopped, HSIRDY flag goes low after 6 HSI oscillator - * clock cycles. - */ -#define __HAL_RCC_HSI_ENABLE() (*(__IO uint32_t *) RCC_CR_HSION_BB = ENABLE) -#define __HAL_RCC_HSI_DISABLE() (*(__IO uint32_t *) RCC_CR_HSION_BB = DISABLE) - -/** @brief Macro to adjust the Internal High Speed oscillator (HSI) calibration value. - * @note The calibration is used to compensate for the variations in voltage - * and temperature that influence the frequency of the internal HSI RC. - * @param _HSICALIBRATIONVALUE_ specifies the calibration trimming value. - * (default is RCC_HSICALIBRATION_DEFAULT). - * This parameter must be a number between 0 and 0x1F. - */ -#define __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(_HSICALIBRATIONVALUE_) \ - (MODIFY_REG(RCC->CR, RCC_CR_HSITRIM, (uint32_t)(_HSICALIBRATIONVALUE_) << RCC_CR_HSITRIM_Pos)) - -/** - * @} - */ - -/** @defgroup RCC_LSI_Configuration LSI Configuration - * @{ - */ - -/** @brief Macro to enable the Internal Low Speed oscillator (LSI). - * @note After enabling the LSI, the application software should wait on - * LSIRDY flag to be set indicating that LSI clock is stable and can - * be used to clock the IWDG and/or the RTC. - */ -#define __HAL_RCC_LSI_ENABLE() (*(__IO uint32_t *) RCC_CSR_LSION_BB = ENABLE) - -/** @brief Macro to disable the Internal Low Speed oscillator (LSI). - * @note LSI can not be disabled if the IWDG is running. - * @note When the LSI is stopped, LSIRDY flag goes low after 6 LSI oscillator - * clock cycles. - */ -#define __HAL_RCC_LSI_DISABLE() (*(__IO uint32_t *) RCC_CSR_LSION_BB = DISABLE) - -/** - * @} - */ - -/** @defgroup RCC_HSE_Configuration HSE Configuration - * @{ - */ - -/** - * @brief Macro to configure the External High Speed oscillator (HSE). - * @note Transition HSE Bypass to HSE On and HSE On to HSE Bypass are not - * supported by this macro. User should request a transition to HSE Off - * first and then HSE On or HSE Bypass. - * @note After enabling the HSE (RCC_HSE_ON or RCC_HSE_Bypass), the application - * software should wait on HSERDY flag to be set indicating that HSE clock - * is stable and can be used to clock the PLL and/or system clock. - * @note HSE state can not be changed if it is used directly or through the - * PLL as system clock. In this case, you have to select another source - * of the system clock then change the HSE state (ex. disable it). - * @note The HSE is stopped by hardware when entering STOP and STANDBY modes. - * @note This function reset the CSSON bit, so if the clock security system(CSS) - * was previously enabled you have to enable it again after calling this - * function. - * @param __STATE__ specifies the new state of the HSE. - * This parameter can be one of the following values: - * @arg @ref RCC_HSE_OFF turn OFF the HSE oscillator, HSERDY flag goes low after - * 6 HSE oscillator clock cycles. - * @arg @ref RCC_HSE_ON turn ON the HSE oscillator - * @arg @ref RCC_HSE_BYPASS HSE oscillator bypassed with external clock - */ -#define __HAL_RCC_HSE_CONFIG(__STATE__) \ - do{ \ - if ((__STATE__) == RCC_HSE_ON) \ - { \ - SET_BIT(RCC->CR, RCC_CR_HSEON); \ - } \ - else if ((__STATE__) == RCC_HSE_OFF) \ - { \ - CLEAR_BIT(RCC->CR, RCC_CR_HSEON); \ - CLEAR_BIT(RCC->CR, RCC_CR_HSEBYP); \ - } \ - else if ((__STATE__) == RCC_HSE_BYPASS) \ - { \ - SET_BIT(RCC->CR, RCC_CR_HSEBYP); \ - SET_BIT(RCC->CR, RCC_CR_HSEON); \ - } \ - else \ - { \ - CLEAR_BIT(RCC->CR, RCC_CR_HSEON); \ - CLEAR_BIT(RCC->CR, RCC_CR_HSEBYP); \ - } \ - }while(0U) - -/** - * @} - */ - -/** @defgroup RCC_LSE_Configuration LSE Configuration - * @{ - */ - -/** - * @brief Macro to configure the External Low Speed oscillator (LSE). - * @note Transitions LSE Bypass to LSE On and LSE On to LSE Bypass are not supported by this macro. - * @note As the LSE is in the Backup domain and write access is denied to - * this domain after reset, you have to enable write access using - * @ref HAL_PWR_EnableBkUpAccess() function before to configure the LSE - * (to be done once after reset). - * @note After enabling the LSE (RCC_LSE_ON or RCC_LSE_BYPASS), the application - * software should wait on LSERDY flag to be set indicating that LSE clock - * is stable and can be used to clock the RTC. - * @param __STATE__ specifies the new state of the LSE. - * This parameter can be one of the following values: - * @arg @ref RCC_LSE_OFF turn OFF the LSE oscillator, LSERDY flag goes low after - * 6 LSE oscillator clock cycles. - * @arg @ref RCC_LSE_ON turn ON the LSE oscillator. - * @arg @ref RCC_LSE_BYPASS LSE oscillator bypassed with external clock. - */ -#define __HAL_RCC_LSE_CONFIG(__STATE__) \ - do{ \ - if ((__STATE__) == RCC_LSE_ON) \ - { \ - SET_BIT(RCC->BDCR, RCC_BDCR_LSEON); \ - } \ - else if ((__STATE__) == RCC_LSE_OFF) \ - { \ - CLEAR_BIT(RCC->BDCR, RCC_BDCR_LSEON); \ - CLEAR_BIT(RCC->BDCR, RCC_BDCR_LSEBYP); \ - } \ - else if ((__STATE__) == RCC_LSE_BYPASS) \ - { \ - SET_BIT(RCC->BDCR, RCC_BDCR_LSEBYP); \ - SET_BIT(RCC->BDCR, RCC_BDCR_LSEON); \ - } \ - else \ - { \ - CLEAR_BIT(RCC->BDCR, RCC_BDCR_LSEON); \ - CLEAR_BIT(RCC->BDCR, RCC_BDCR_LSEBYP); \ - } \ - }while(0U) - -/** - * @} - */ - -/** @defgroup RCC_PLL_Configuration PLL Configuration - * @{ - */ - -/** @brief Macro to enable the main PLL. - * @note After enabling the main PLL, the application software should wait on - * PLLRDY flag to be set indicating that PLL clock is stable and can - * be used as system clock source. - * @note The main PLL is disabled by hardware when entering STOP and STANDBY modes. - */ -#define __HAL_RCC_PLL_ENABLE() (*(__IO uint32_t *) RCC_CR_PLLON_BB = ENABLE) - -/** @brief Macro to disable the main PLL. - * @note The main PLL can not be disabled if it is used as system clock source - */ -#define __HAL_RCC_PLL_DISABLE() (*(__IO uint32_t *) RCC_CR_PLLON_BB = DISABLE) - -/** @brief Macro to configure the main PLL clock source and multiplication factors. - * @note This function must be used only when the main PLL is disabled. - * - * @param __RCC_PLLSOURCE__ specifies the PLL entry clock source. - * This parameter can be one of the following values: - * @arg @ref RCC_PLLSOURCE_HSI_DIV2 HSI oscillator clock selected as PLL clock entry - * @arg @ref RCC_PLLSOURCE_HSE HSE oscillator clock selected as PLL clock entry - * @param __PLLMUL__ specifies the multiplication factor for PLL VCO output clock - * This parameter can be one of the following values: - * @arg @ref RCC_PLL_MUL4 PLLVCO = PLL clock entry x 4 - * @arg @ref RCC_PLL_MUL6 PLLVCO = PLL clock entry x 6 - @if STM32F105xC - * @arg @ref RCC_PLL_MUL6_5 PLLVCO = PLL clock entry x 6.5 - @elseif STM32F107xC - * @arg @ref RCC_PLL_MUL6_5 PLLVCO = PLL clock entry x 6.5 - @else - * @arg @ref RCC_PLL_MUL2 PLLVCO = PLL clock entry x 2 - * @arg @ref RCC_PLL_MUL3 PLLVCO = PLL clock entry x 3 - * @arg @ref RCC_PLL_MUL10 PLLVCO = PLL clock entry x 10 - * @arg @ref RCC_PLL_MUL11 PLLVCO = PLL clock entry x 11 - * @arg @ref RCC_PLL_MUL12 PLLVCO = PLL clock entry x 12 - * @arg @ref RCC_PLL_MUL13 PLLVCO = PLL clock entry x 13 - * @arg @ref RCC_PLL_MUL14 PLLVCO = PLL clock entry x 14 - * @arg @ref RCC_PLL_MUL15 PLLVCO = PLL clock entry x 15 - * @arg @ref RCC_PLL_MUL16 PLLVCO = PLL clock entry x 16 - @endif - * @arg @ref RCC_PLL_MUL8 PLLVCO = PLL clock entry x 8 - * @arg @ref RCC_PLL_MUL9 PLLVCO = PLL clock entry x 9 - * - */ -#define __HAL_RCC_PLL_CONFIG(__RCC_PLLSOURCE__, __PLLMUL__)\ - MODIFY_REG(RCC->CFGR, (RCC_CFGR_PLLSRC | RCC_CFGR_PLLMULL),((__RCC_PLLSOURCE__) | (__PLLMUL__) )) - -/** @brief Get oscillator clock selected as PLL input clock - * @retval The clock source used for PLL entry. The returned value can be one - * of the following: - * @arg @ref RCC_PLLSOURCE_HSI_DIV2 HSI oscillator clock selected as PLL input clock - * @arg @ref RCC_PLLSOURCE_HSE HSE oscillator clock selected as PLL input clock - */ -#define __HAL_RCC_GET_PLL_OSCSOURCE() ((uint32_t)(READ_BIT(RCC->CFGR, RCC_CFGR_PLLSRC))) - -/** - * @} - */ - -/** @defgroup RCC_Get_Clock_source Get Clock source - * @{ - */ - -/** - * @brief Macro to configure the system clock source. - * @param __SYSCLKSOURCE__ specifies the system clock source. - * This parameter can be one of the following values: - * @arg @ref RCC_SYSCLKSOURCE_HSI HSI oscillator is used as system clock source. - * @arg @ref RCC_SYSCLKSOURCE_HSE HSE oscillator is used as system clock source. - * @arg @ref RCC_SYSCLKSOURCE_PLLCLK PLL output is used as system clock source. - */ -#define __HAL_RCC_SYSCLK_CONFIG(__SYSCLKSOURCE__) \ - MODIFY_REG(RCC->CFGR, RCC_CFGR_SW, (__SYSCLKSOURCE__)) - -/** @brief Macro to get the clock source used as system clock. - * @retval The clock source used as system clock. The returned value can be one - * of the following: - * @arg @ref RCC_SYSCLKSOURCE_STATUS_HSI HSI used as system clock - * @arg @ref RCC_SYSCLKSOURCE_STATUS_HSE HSE used as system clock - * @arg @ref RCC_SYSCLKSOURCE_STATUS_PLLCLK PLL used as system clock - */ -#define __HAL_RCC_GET_SYSCLK_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR,RCC_CFGR_SWS))) - -/** - * @} - */ - -/** @defgroup RCCEx_MCOx_Clock_Config RCC Extended MCOx Clock Config - * @{ - */ - -#if defined(RCC_CFGR_MCO_3) -/** @brief Macro to configure the MCO clock. - * @param __MCOCLKSOURCE__ specifies the MCO clock source. - * This parameter can be one of the following values: - * @arg @ref RCC_MCO1SOURCE_NOCLOCK No clock selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_SYSCLK System clock (SYSCLK) selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_HSI HSI selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_HSE HSE selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_PLLCLK PLL clock divided by 2 selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_PLL2CLK PLL2 clock selected by 2 selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_PLL3CLK_DIV2 PLL3 clock divided by 2 selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_EXT_HSE XT1 external 3-25 MHz oscillator clock selected (for Ethernet) as MCO clock - * @arg @ref RCC_MCO1SOURCE_PLL3CLK PLL3 clock selected (for Ethernet) as MCO clock - * @param __MCODIV__ specifies the MCO clock prescaler. - * This parameter can be one of the following values: - * @arg @ref RCC_MCODIV_1 No division applied on MCO clock source - */ -#else -/** @brief Macro to configure the MCO clock. - * @param __MCOCLKSOURCE__ specifies the MCO clock source. - * This parameter can be one of the following values: - * @arg @ref RCC_MCO1SOURCE_NOCLOCK No clock selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_SYSCLK System clock (SYSCLK) selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_HSI HSI selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_HSE HSE selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_PLLCLK PLL clock divided by 2 selected as MCO clock - * @param __MCODIV__ specifies the MCO clock prescaler. - * This parameter can be one of the following values: - * @arg @ref RCC_MCODIV_1 No division applied on MCO clock source - */ -#endif - -#define __HAL_RCC_MCO1_CONFIG(__MCOCLKSOURCE__, __MCODIV__) \ - MODIFY_REG(RCC->CFGR, RCC_CFGR_MCO, (__MCOCLKSOURCE__)) - - -/** - * @} - */ - -/** @defgroup RCC_RTC_Clock_Configuration RCC RTC Clock Configuration -* @{ -*/ - -/** @brief Macro to configure the RTC clock (RTCCLK). - * @note As the RTC clock configuration bits are in the Backup domain and write - * access is denied to this domain after reset, you have to enable write - * access using the Power Backup Access macro before to configure - * the RTC clock source (to be done once after reset). - * @note Once the RTC clock is configured it can't be changed unless the - * Backup domain is reset using @ref __HAL_RCC_BACKUPRESET_FORCE() macro, or by - * a Power On Reset (POR). - * - * @param __RTC_CLKSOURCE__ specifies the RTC clock source. - * This parameter can be one of the following values: - * @arg @ref RCC_RTCCLKSOURCE_NO_CLK No clock selected as RTC clock - * @arg @ref RCC_RTCCLKSOURCE_LSE LSE selected as RTC clock - * @arg @ref RCC_RTCCLKSOURCE_LSI LSI selected as RTC clock - * @arg @ref RCC_RTCCLKSOURCE_HSE_DIV128 HSE divided by 128 selected as RTC clock - * @note If the LSE or LSI is used as RTC clock source, the RTC continues to - * work in STOP and STANDBY modes, and can be used as wakeup source. - * However, when the HSE clock is used as RTC clock source, the RTC - * cannot be used in STOP and STANDBY modes. - * @note The maximum input clock frequency for RTC is 1MHz (when using HSE as - * RTC clock source). - */ -#define __HAL_RCC_RTC_CONFIG(__RTC_CLKSOURCE__) MODIFY_REG(RCC->BDCR, RCC_BDCR_RTCSEL, (__RTC_CLKSOURCE__)) - -/** @brief Macro to get the RTC clock source. - * @retval The clock source can be one of the following values: - * @arg @ref RCC_RTCCLKSOURCE_NO_CLK No clock selected as RTC clock - * @arg @ref RCC_RTCCLKSOURCE_LSE LSE selected as RTC clock - * @arg @ref RCC_RTCCLKSOURCE_LSI LSI selected as RTC clock - * @arg @ref RCC_RTCCLKSOURCE_HSE_DIV128 HSE divided by 128 selected as RTC clock - */ -#define __HAL_RCC_GET_RTC_SOURCE() (READ_BIT(RCC->BDCR, RCC_BDCR_RTCSEL)) - -/** @brief Macro to enable the the RTC clock. - * @note These macros must be used only after the RTC clock source was selected. - */ -#define __HAL_RCC_RTC_ENABLE() (*(__IO uint32_t *) RCC_BDCR_RTCEN_BB = ENABLE) - -/** @brief Macro to disable the the RTC clock. - * @note These macros must be used only after the RTC clock source was selected. - */ -#define __HAL_RCC_RTC_DISABLE() (*(__IO uint32_t *) RCC_BDCR_RTCEN_BB = DISABLE) - -/** @brief Macro to force the Backup domain reset. - * @note This function resets the RTC peripheral (including the backup registers) - * and the RTC clock source selection in RCC_BDCR register. - */ -#define __HAL_RCC_BACKUPRESET_FORCE() (*(__IO uint32_t *) RCC_BDCR_BDRST_BB = ENABLE) - -/** @brief Macros to release the Backup domain reset. - */ -#define __HAL_RCC_BACKUPRESET_RELEASE() (*(__IO uint32_t *) RCC_BDCR_BDRST_BB = DISABLE) - -/** - * @} - */ - -/** @defgroup RCC_Flags_Interrupts_Management Flags Interrupts Management - * @brief macros to manage the specified RCC Flags and interrupts. - * @{ - */ - -/** @brief Enable RCC interrupt. - * @param __INTERRUPT__ specifies the RCC interrupt sources to be enabled. - * This parameter can be any combination of the following values: - * @arg @ref RCC_IT_LSIRDY LSI ready interrupt - * @arg @ref RCC_IT_LSERDY LSE ready interrupt - * @arg @ref RCC_IT_HSIRDY HSI ready interrupt - * @arg @ref RCC_IT_HSERDY HSE ready interrupt - * @arg @ref RCC_IT_PLLRDY main PLL ready interrupt - @if STM32F105xx - * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. - * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. - @elsif STM32F107xx - * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. - * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. - @endif - */ -#define __HAL_RCC_ENABLE_IT(__INTERRUPT__) (*(__IO uint8_t *) RCC_CIR_BYTE1_ADDRESS |= (__INTERRUPT__)) - -/** @brief Disable RCC interrupt. - * @param __INTERRUPT__ specifies the RCC interrupt sources to be disabled. - * This parameter can be any combination of the following values: - * @arg @ref RCC_IT_LSIRDY LSI ready interrupt - * @arg @ref RCC_IT_LSERDY LSE ready interrupt - * @arg @ref RCC_IT_HSIRDY HSI ready interrupt - * @arg @ref RCC_IT_HSERDY HSE ready interrupt - * @arg @ref RCC_IT_PLLRDY main PLL ready interrupt - @if STM32F105xx - * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. - * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. - @elsif STM32F107xx - * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. - * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. - @endif - */ -#define __HAL_RCC_DISABLE_IT(__INTERRUPT__) (*(__IO uint8_t *) RCC_CIR_BYTE1_ADDRESS &= (uint8_t)(~(__INTERRUPT__))) - -/** @brief Clear the RCC's interrupt pending bits. - * @param __INTERRUPT__ specifies the interrupt pending bit to clear. - * This parameter can be any combination of the following values: - * @arg @ref RCC_IT_LSIRDY LSI ready interrupt. - * @arg @ref RCC_IT_LSERDY LSE ready interrupt. - * @arg @ref RCC_IT_HSIRDY HSI ready interrupt. - * @arg @ref RCC_IT_HSERDY HSE ready interrupt. - * @arg @ref RCC_IT_PLLRDY Main PLL ready interrupt. - @if STM32F105xx - * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. - * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. - @elsif STM32F107xx - * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. - * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. - @endif - * @arg @ref RCC_IT_CSS Clock Security System interrupt - */ -#define __HAL_RCC_CLEAR_IT(__INTERRUPT__) (*(__IO uint8_t *) RCC_CIR_BYTE2_ADDRESS = (__INTERRUPT__)) - -/** @brief Check the RCC's interrupt has occurred or not. - * @param __INTERRUPT__ specifies the RCC interrupt source to check. - * This parameter can be one of the following values: - * @arg @ref RCC_IT_LSIRDY LSI ready interrupt. - * @arg @ref RCC_IT_LSERDY LSE ready interrupt. - * @arg @ref RCC_IT_HSIRDY HSI ready interrupt. - * @arg @ref RCC_IT_HSERDY HSE ready interrupt. - * @arg @ref RCC_IT_PLLRDY Main PLL ready interrupt. - @if STM32F105xx - * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. - * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. - @elsif STM32F107xx - * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. - * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. - @endif - * @arg @ref RCC_IT_CSS Clock Security System interrupt - * @retval The new state of __INTERRUPT__ (TRUE or FALSE). - */ -#define __HAL_RCC_GET_IT(__INTERRUPT__) ((RCC->CIR & (__INTERRUPT__)) == (__INTERRUPT__)) - -/** @brief Set RMVF bit to clear the reset flags. - * The reset flags are RCC_FLAG_PINRST, RCC_FLAG_PORRST, RCC_FLAG_SFTRST, - * RCC_FLAG_IWDGRST, RCC_FLAG_WWDGRST, RCC_FLAG_LPWRRST - */ -#define __HAL_RCC_CLEAR_RESET_FLAGS() (*(__IO uint32_t *)RCC_CSR_RMVF_BB = ENABLE) - -/** @brief Check RCC flag is set or not. - * @param __FLAG__ specifies the flag to check. - * This parameter can be one of the following values: - * @arg @ref RCC_FLAG_HSIRDY HSI oscillator clock ready. - * @arg @ref RCC_FLAG_HSERDY HSE oscillator clock ready. - * @arg @ref RCC_FLAG_PLLRDY Main PLL clock ready. - @if STM32F105xx - * @arg @ref RCC_FLAG_PLL2RDY Main PLL2 clock ready. - * @arg @ref RCC_FLAG_PLLI2SRDY Main PLLI2S clock ready. - @elsif STM32F107xx - * @arg @ref RCC_FLAG_PLL2RDY Main PLL2 clock ready. - * @arg @ref RCC_FLAG_PLLI2SRDY Main PLLI2S clock ready. - @endif - * @arg @ref RCC_FLAG_LSERDY LSE oscillator clock ready. - * @arg @ref RCC_FLAG_LSIRDY LSI oscillator clock ready. - * @arg @ref RCC_FLAG_PINRST Pin reset. - * @arg @ref RCC_FLAG_PORRST POR/PDR reset. - * @arg @ref RCC_FLAG_SFTRST Software reset. - * @arg @ref RCC_FLAG_IWDGRST Independent Watchdog reset. - * @arg @ref RCC_FLAG_WWDGRST Window Watchdog reset. - * @arg @ref RCC_FLAG_LPWRRST Low Power reset. - * @retval The new state of __FLAG__ (TRUE or FALSE). - */ -#define __HAL_RCC_GET_FLAG(__FLAG__) (((((__FLAG__) >> 5U) == CR_REG_INDEX)? RCC->CR : \ - ((((__FLAG__) >> 5U) == BDCR_REG_INDEX)? RCC->BDCR : \ - RCC->CSR)) & (1U << ((__FLAG__) & RCC_FLAG_MASK))) - -/** - * @} - */ - -/** - * @} - */ - -/* Include RCC HAL Extension module */ -#include "stm32f1xx_hal_rcc_ex.h" - -/* Exported functions --------------------------------------------------------*/ -/** @addtogroup RCC_Exported_Functions - * @{ - */ - -/** @addtogroup RCC_Exported_Functions_Group1 - * @{ - */ - -/* Initialization and de-initialization functions ******************************/ -HAL_StatusTypeDef HAL_RCC_DeInit(void); -HAL_StatusTypeDef HAL_RCC_OscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct); -HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency); - -/** - * @} - */ - -/** @addtogroup RCC_Exported_Functions_Group2 - * @{ - */ - -/* Peripheral Control functions ************************************************/ -void HAL_RCC_MCOConfig(uint32_t RCC_MCOx, uint32_t RCC_MCOSource, uint32_t RCC_MCODiv); -void HAL_RCC_EnableCSS(void); -void HAL_RCC_DisableCSS(void); -uint32_t HAL_RCC_GetSysClockFreq(void); -uint32_t HAL_RCC_GetHCLKFreq(void); -uint32_t HAL_RCC_GetPCLK1Freq(void); -uint32_t HAL_RCC_GetPCLK2Freq(void); -void HAL_RCC_GetOscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct); -void HAL_RCC_GetClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t *pFLatency); - -/* CSS NMI IRQ handler */ -void HAL_RCC_NMI_IRQHandler(void); - -/* User Callbacks in non blocking mode (IT mode) */ -void HAL_RCC_CSSCallback(void); - -/** - * @} - */ - -/** - * @} - */ - -/** @addtogroup RCC_Private_Constants - * @{ - */ - -/** @defgroup RCC_Timeout RCC Timeout - * @{ - */ - -/* Disable Backup domain write protection state change timeout */ -#define RCC_DBP_TIMEOUT_VALUE 100U /* 100 ms */ -/* LSE state change timeout */ -#define RCC_LSE_TIMEOUT_VALUE LSE_STARTUP_TIMEOUT -#define CLOCKSWITCH_TIMEOUT_VALUE 5000 /* 5 s */ -#define HSE_TIMEOUT_VALUE HSE_STARTUP_TIMEOUT -#define HSI_TIMEOUT_VALUE 2U /* 2 ms (minimum Tick + 1) */ -#define LSI_TIMEOUT_VALUE 2U /* 2 ms (minimum Tick + 1) */ -#define PLL_TIMEOUT_VALUE 2U /* 2 ms (minimum Tick + 1) */ - -/** - * @} - */ - -/** @defgroup RCC_Register_Offset Register offsets - * @{ - */ -#define RCC_OFFSET (RCC_BASE - PERIPH_BASE) -#define RCC_CR_OFFSET 0x00U -#define RCC_CFGR_OFFSET 0x04U -#define RCC_CIR_OFFSET 0x08U -#define RCC_BDCR_OFFSET 0x20U -#define RCC_CSR_OFFSET 0x24U - -/** - * @} - */ - -/** @defgroup RCC_BitAddress_AliasRegion BitAddress AliasRegion - * @brief RCC registers bit address in the alias region - * @{ - */ -#define RCC_CR_OFFSET_BB (RCC_OFFSET + RCC_CR_OFFSET) -#define RCC_CFGR_OFFSET_BB (RCC_OFFSET + RCC_CFGR_OFFSET) -#define RCC_CIR_OFFSET_BB (RCC_OFFSET + RCC_CIR_OFFSET) -#define RCC_BDCR_OFFSET_BB (RCC_OFFSET + RCC_BDCR_OFFSET) -#define RCC_CSR_OFFSET_BB (RCC_OFFSET + RCC_CSR_OFFSET) - -/* --- CR Register ---*/ -/* Alias word address of HSION bit */ -#define RCC_HSION_BIT_NUMBER RCC_CR_HSION_Pos -#define RCC_CR_HSION_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (RCC_HSION_BIT_NUMBER * 4U))) -/* Alias word address of HSEON bit */ -#define RCC_HSEON_BIT_NUMBER RCC_CR_HSEON_Pos -#define RCC_CR_HSEON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (RCC_HSEON_BIT_NUMBER * 4U))) -/* Alias word address of CSSON bit */ -#define RCC_CSSON_BIT_NUMBER RCC_CR_CSSON_Pos -#define RCC_CR_CSSON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (RCC_CSSON_BIT_NUMBER * 4U))) -/* Alias word address of PLLON bit */ -#define RCC_PLLON_BIT_NUMBER RCC_CR_PLLON_Pos -#define RCC_CR_PLLON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (RCC_PLLON_BIT_NUMBER * 4U))) - -/* --- CSR Register ---*/ -/* Alias word address of LSION bit */ -#define RCC_LSION_BIT_NUMBER RCC_CSR_LSION_Pos -#define RCC_CSR_LSION_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CSR_OFFSET_BB * 32U) + (RCC_LSION_BIT_NUMBER * 4U))) - -/* Alias word address of RMVF bit */ -#define RCC_RMVF_BIT_NUMBER RCC_CSR_RMVF_Pos -#define RCC_CSR_RMVF_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CSR_OFFSET_BB * 32U) + (RCC_RMVF_BIT_NUMBER * 4U))) - -/* --- BDCR Registers ---*/ -/* Alias word address of LSEON bit */ -#define RCC_LSEON_BIT_NUMBER RCC_BDCR_LSEON_Pos -#define RCC_BDCR_LSEON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_BDCR_OFFSET_BB * 32U) + (RCC_LSEON_BIT_NUMBER * 4U))) - -/* Alias word address of LSEON bit */ -#define RCC_LSEBYP_BIT_NUMBER RCC_BDCR_LSEBYP_Pos -#define RCC_BDCR_LSEBYP_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_BDCR_OFFSET_BB * 32U) + (RCC_LSEBYP_BIT_NUMBER * 4U))) - -/* Alias word address of RTCEN bit */ -#define RCC_RTCEN_BIT_NUMBER RCC_BDCR_RTCEN_Pos -#define RCC_BDCR_RTCEN_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_BDCR_OFFSET_BB * 32U) + (RCC_RTCEN_BIT_NUMBER * 4U))) - -/* Alias word address of BDRST bit */ -#define RCC_BDRST_BIT_NUMBER RCC_BDCR_BDRST_Pos -#define RCC_BDCR_BDRST_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_BDCR_OFFSET_BB * 32U) + (RCC_BDRST_BIT_NUMBER * 4U))) - -/** - * @} - */ - -/* CR register byte 2 (Bits[23:16]) base address */ -#define RCC_CR_BYTE2_ADDRESS ((uint32_t)(RCC_BASE + RCC_CR_OFFSET + 0x02U)) - -/* CIR register byte 1 (Bits[15:8]) base address */ -#define RCC_CIR_BYTE1_ADDRESS ((uint32_t)(RCC_BASE + RCC_CIR_OFFSET + 0x01U)) - -/* CIR register byte 2 (Bits[23:16]) base address */ -#define RCC_CIR_BYTE2_ADDRESS ((uint32_t)(RCC_BASE + RCC_CIR_OFFSET + 0x02U)) - -/* Defines used for Flags */ -#define CR_REG_INDEX ((uint8_t)1) -#define BDCR_REG_INDEX ((uint8_t)2) -#define CSR_REG_INDEX ((uint8_t)3) - -#define RCC_FLAG_MASK ((uint8_t)0x1F) - -/** - * @} - */ - -/** @addtogroup RCC_Private_Macros - * @{ - */ -/** @defgroup RCC_Alias_For_Legacy Alias define maintained for legacy - * @{ - */ -#define __HAL_RCC_SYSCFG_CLK_DISABLE __HAL_RCC_AFIO_CLK_DISABLE -#define __HAL_RCC_SYSCFG_CLK_ENABLE __HAL_RCC_AFIO_CLK_ENABLE -#define __HAL_RCC_SYSCFG_FORCE_RESET __HAL_RCC_AFIO_FORCE_RESET -#define __HAL_RCC_SYSCFG_RELEASE_RESET __HAL_RCC_AFIO_RELEASE_RESET -/** - * @} - */ - -#define IS_RCC_PLLSOURCE(__SOURCE__) (((__SOURCE__) == RCC_PLLSOURCE_HSI_DIV2) || \ - ((__SOURCE__) == RCC_PLLSOURCE_HSE)) -#define IS_RCC_OSCILLATORTYPE(__OSCILLATOR__) (((__OSCILLATOR__) == RCC_OSCILLATORTYPE_NONE) || \ - (((__OSCILLATOR__) & RCC_OSCILLATORTYPE_HSE) == RCC_OSCILLATORTYPE_HSE) || \ - (((__OSCILLATOR__) & RCC_OSCILLATORTYPE_HSI) == RCC_OSCILLATORTYPE_HSI) || \ - (((__OSCILLATOR__) & RCC_OSCILLATORTYPE_LSI) == RCC_OSCILLATORTYPE_LSI) || \ - (((__OSCILLATOR__) & RCC_OSCILLATORTYPE_LSE) == RCC_OSCILLATORTYPE_LSE)) -#define IS_RCC_HSE(__HSE__) (((__HSE__) == RCC_HSE_OFF) || ((__HSE__) == RCC_HSE_ON) || \ - ((__HSE__) == RCC_HSE_BYPASS)) -#define IS_RCC_LSE(__LSE__) (((__LSE__) == RCC_LSE_OFF) || ((__LSE__) == RCC_LSE_ON) || \ - ((__LSE__) == RCC_LSE_BYPASS)) -#define IS_RCC_HSI(__HSI__) (((__HSI__) == RCC_HSI_OFF) || ((__HSI__) == RCC_HSI_ON)) -#define IS_RCC_CALIBRATION_VALUE(__VALUE__) ((__VALUE__) <= 0x1FU) -#define IS_RCC_LSI(__LSI__) (((__LSI__) == RCC_LSI_OFF) || ((__LSI__) == RCC_LSI_ON)) -#define IS_RCC_PLL(__PLL__) (((__PLL__) == RCC_PLL_NONE) || ((__PLL__) == RCC_PLL_OFF) || \ - ((__PLL__) == RCC_PLL_ON)) - -#define IS_RCC_CLOCKTYPE(CLK) ((((CLK) & RCC_CLOCKTYPE_SYSCLK) == RCC_CLOCKTYPE_SYSCLK) || \ - (((CLK) & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK) || \ - (((CLK) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1) || \ - (((CLK) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2)) -#define IS_RCC_SYSCLKSOURCE(__SOURCE__) (((__SOURCE__) == RCC_SYSCLKSOURCE_HSI) || \ - ((__SOURCE__) == RCC_SYSCLKSOURCE_HSE) || \ - ((__SOURCE__) == RCC_SYSCLKSOURCE_PLLCLK)) -#define IS_RCC_SYSCLKSOURCE_STATUS(__SOURCE__) (((__SOURCE__) == RCC_SYSCLKSOURCE_STATUS_HSI) || \ - ((__SOURCE__) == RCC_SYSCLKSOURCE_STATUS_HSE) || \ - ((__SOURCE__) == RCC_SYSCLKSOURCE_STATUS_PLLCLK)) -#define IS_RCC_HCLK(__HCLK__) (((__HCLK__) == RCC_SYSCLK_DIV1) || ((__HCLK__) == RCC_SYSCLK_DIV2) || \ - ((__HCLK__) == RCC_SYSCLK_DIV4) || ((__HCLK__) == RCC_SYSCLK_DIV8) || \ - ((__HCLK__) == RCC_SYSCLK_DIV16) || ((__HCLK__) == RCC_SYSCLK_DIV64) || \ - ((__HCLK__) == RCC_SYSCLK_DIV128) || ((__HCLK__) == RCC_SYSCLK_DIV256) || \ - ((__HCLK__) == RCC_SYSCLK_DIV512)) -#define IS_RCC_PCLK(__PCLK__) (((__PCLK__) == RCC_HCLK_DIV1) || ((__PCLK__) == RCC_HCLK_DIV2) || \ - ((__PCLK__) == RCC_HCLK_DIV4) || ((__PCLK__) == RCC_HCLK_DIV8) || \ - ((__PCLK__) == RCC_HCLK_DIV16)) -#define IS_RCC_MCO(__MCO__) ((__MCO__) == RCC_MCO) -#define IS_RCC_MCODIV(__DIV__) (((__DIV__) == RCC_MCODIV_1)) -#define IS_RCC_RTCCLKSOURCE(__SOURCE__) (((__SOURCE__) == RCC_RTCCLKSOURCE_NO_CLK) || \ - ((__SOURCE__) == RCC_RTCCLKSOURCE_LSE) || \ - ((__SOURCE__) == RCC_RTCCLKSOURCE_LSI) || \ - ((__SOURCE__) == RCC_RTCCLKSOURCE_HSE_DIV128)) - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /* __STM32F1xx_HAL_RCC_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ - +/** + ****************************************************************************** + * @file stm32f1xx_hal_rcc.h + * @author MCD Application Team + * @brief Header file of RCC HAL module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_HAL_RCC_H +#define __STM32F1xx_HAL_RCC_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup RCC + * @{ + */ + +/* Exported types ------------------------------------------------------------*/ + +/** @defgroup RCC_Exported_Types RCC Exported Types + * @{ + */ + +/** + * @brief RCC PLL configuration structure definition + */ +typedef struct +{ + uint32_t PLLState; /*!< PLLState: The new state of the PLL. + This parameter can be a value of @ref RCC_PLL_Config */ + + uint32_t PLLSource; /*!< PLLSource: PLL entry clock source. + This parameter must be a value of @ref RCC_PLL_Clock_Source */ + + uint32_t PLLMUL; /*!< PLLMUL: Multiplication factor for PLL VCO input clock + This parameter must be a value of @ref RCCEx_PLL_Multiplication_Factor */ +} RCC_PLLInitTypeDef; + +/** + * @brief RCC System, AHB and APB busses clock configuration structure definition + */ +typedef struct +{ + uint32_t ClockType; /*!< The clock to be configured. + This parameter can be a value of @ref RCC_System_Clock_Type */ + + uint32_t SYSCLKSource; /*!< The clock source (SYSCLKS) used as system clock. + This parameter can be a value of @ref RCC_System_Clock_Source */ + + uint32_t AHBCLKDivider; /*!< The AHB clock (HCLK) divider. This clock is derived from the system clock (SYSCLK). + This parameter can be a value of @ref RCC_AHB_Clock_Source */ + + uint32_t APB1CLKDivider; /*!< The APB1 clock (PCLK1) divider. This clock is derived from the AHB clock (HCLK). + This parameter can be a value of @ref RCC_APB1_APB2_Clock_Source */ + + uint32_t APB2CLKDivider; /*!< The APB2 clock (PCLK2) divider. This clock is derived from the AHB clock (HCLK). + This parameter can be a value of @ref RCC_APB1_APB2_Clock_Source */ +} RCC_ClkInitTypeDef; + +/** + * @} + */ + +/* Exported constants --------------------------------------------------------*/ +/** @defgroup RCC_Exported_Constants RCC Exported Constants + * @{ + */ + +/** @defgroup RCC_PLL_Clock_Source PLL Clock Source + * @{ + */ + +#define RCC_PLLSOURCE_HSI_DIV2 0x00000000U /*!< HSI clock divided by 2 selected as PLL entry clock source */ +#define RCC_PLLSOURCE_HSE RCC_CFGR_PLLSRC /*!< HSE clock selected as PLL entry clock source */ + +/** + * @} + */ + +/** @defgroup RCC_Oscillator_Type Oscillator Type + * @{ + */ +#define RCC_OSCILLATORTYPE_NONE 0x00000000U +#define RCC_OSCILLATORTYPE_HSE 0x00000001U +#define RCC_OSCILLATORTYPE_HSI 0x00000002U +#define RCC_OSCILLATORTYPE_LSE 0x00000004U +#define RCC_OSCILLATORTYPE_LSI 0x00000008U +/** + * @} + */ + +/** @defgroup RCC_HSE_Config HSE Config + * @{ + */ +#define RCC_HSE_OFF 0x00000000U /*!< HSE clock deactivation */ +#define RCC_HSE_ON RCC_CR_HSEON /*!< HSE clock activation */ +#define RCC_HSE_BYPASS ((uint32_t)(RCC_CR_HSEBYP | RCC_CR_HSEON)) /*!< External clock source for HSE clock */ +/** + * @} + */ + +/** @defgroup RCC_LSE_Config LSE Config + * @{ + */ +#define RCC_LSE_OFF 0x00000000U /*!< LSE clock deactivation */ +#define RCC_LSE_ON RCC_BDCR_LSEON /*!< LSE clock activation */ +#define RCC_LSE_BYPASS ((uint32_t)(RCC_BDCR_LSEBYP | RCC_BDCR_LSEON)) /*!< External clock source for LSE clock */ + +/** + * @} + */ + +/** @defgroup RCC_HSI_Config HSI Config + * @{ + */ +#define RCC_HSI_OFF 0x00000000U /*!< HSI clock deactivation */ +#define RCC_HSI_ON RCC_CR_HSION /*!< HSI clock activation */ + +#define RCC_HSICALIBRATION_DEFAULT 0x10U /* Default HSI calibration trimming value */ + +/** + * @} + */ + +/** @defgroup RCC_LSI_Config LSI Config + * @{ + */ +#define RCC_LSI_OFF 0x00000000U /*!< LSI clock deactivation */ +#define RCC_LSI_ON RCC_CSR_LSION /*!< LSI clock activation */ + +/** + * @} + */ + +/** @defgroup RCC_PLL_Config PLL Config + * @{ + */ +#define RCC_PLL_NONE 0x00000000U /*!< PLL is not configured */ +#define RCC_PLL_OFF 0x00000001U /*!< PLL deactivation */ +#define RCC_PLL_ON 0x00000002U /*!< PLL activation */ + +/** + * @} + */ + +/** @defgroup RCC_System_Clock_Type System Clock Type + * @{ + */ +#define RCC_CLOCKTYPE_SYSCLK 0x00000001U /*!< SYSCLK to configure */ +#define RCC_CLOCKTYPE_HCLK 0x00000002U /*!< HCLK to configure */ +#define RCC_CLOCKTYPE_PCLK1 0x00000004U /*!< PCLK1 to configure */ +#define RCC_CLOCKTYPE_PCLK2 0x00000008U /*!< PCLK2 to configure */ + +/** + * @} + */ + +/** @defgroup RCC_System_Clock_Source System Clock Source + * @{ + */ +#define RCC_SYSCLKSOURCE_HSI RCC_CFGR_SW_HSI /*!< HSI selected as system clock */ +#define RCC_SYSCLKSOURCE_HSE RCC_CFGR_SW_HSE /*!< HSE selected as system clock */ +#define RCC_SYSCLKSOURCE_PLLCLK RCC_CFGR_SW_PLL /*!< PLL selected as system clock */ + +/** + * @} + */ + +/** @defgroup RCC_System_Clock_Source_Status System Clock Source Status + * @{ + */ +#define RCC_SYSCLKSOURCE_STATUS_HSI RCC_CFGR_SWS_HSI /*!< HSI used as system clock */ +#define RCC_SYSCLKSOURCE_STATUS_HSE RCC_CFGR_SWS_HSE /*!< HSE used as system clock */ +#define RCC_SYSCLKSOURCE_STATUS_PLLCLK RCC_CFGR_SWS_PLL /*!< PLL used as system clock */ + +/** + * @} + */ + +/** @defgroup RCC_AHB_Clock_Source AHB Clock Source + * @{ + */ +#define RCC_SYSCLK_DIV1 RCC_CFGR_HPRE_DIV1 /*!< SYSCLK not divided */ +#define RCC_SYSCLK_DIV2 RCC_CFGR_HPRE_DIV2 /*!< SYSCLK divided by 2 */ +#define RCC_SYSCLK_DIV4 RCC_CFGR_HPRE_DIV4 /*!< SYSCLK divided by 4 */ +#define RCC_SYSCLK_DIV8 RCC_CFGR_HPRE_DIV8 /*!< SYSCLK divided by 8 */ +#define RCC_SYSCLK_DIV16 RCC_CFGR_HPRE_DIV16 /*!< SYSCLK divided by 16 */ +#define RCC_SYSCLK_DIV64 RCC_CFGR_HPRE_DIV64 /*!< SYSCLK divided by 64 */ +#define RCC_SYSCLK_DIV128 RCC_CFGR_HPRE_DIV128 /*!< SYSCLK divided by 128 */ +#define RCC_SYSCLK_DIV256 RCC_CFGR_HPRE_DIV256 /*!< SYSCLK divided by 256 */ +#define RCC_SYSCLK_DIV512 RCC_CFGR_HPRE_DIV512 /*!< SYSCLK divided by 512 */ + +/** + * @} + */ + +/** @defgroup RCC_APB1_APB2_Clock_Source APB1 APB2 Clock Source + * @{ + */ +#define RCC_HCLK_DIV1 RCC_CFGR_PPRE1_DIV1 /*!< HCLK not divided */ +#define RCC_HCLK_DIV2 RCC_CFGR_PPRE1_DIV2 /*!< HCLK divided by 2 */ +#define RCC_HCLK_DIV4 RCC_CFGR_PPRE1_DIV4 /*!< HCLK divided by 4 */ +#define RCC_HCLK_DIV8 RCC_CFGR_PPRE1_DIV8 /*!< HCLK divided by 8 */ +#define RCC_HCLK_DIV16 RCC_CFGR_PPRE1_DIV16 /*!< HCLK divided by 16 */ + +/** + * @} + */ + +/** @defgroup RCC_RTC_Clock_Source RTC Clock Source + * @{ + */ +#define RCC_RTCCLKSOURCE_NO_CLK 0x00000000U /*!< No clock */ +#define RCC_RTCCLKSOURCE_LSE RCC_BDCR_RTCSEL_LSE /*!< LSE oscillator clock used as RTC clock */ +#define RCC_RTCCLKSOURCE_LSI RCC_BDCR_RTCSEL_LSI /*!< LSI oscillator clock used as RTC clock */ +#define RCC_RTCCLKSOURCE_HSE_DIV128 RCC_BDCR_RTCSEL_HSE /*!< HSE oscillator clock divided by 128 used as RTC clock */ +/** + * @} + */ + + +/** @defgroup RCC_MCO_Index MCO Index + * @{ + */ +#define RCC_MCO1 0x00000000U +#define RCC_MCO RCC_MCO1 /*!< MCO1 to be compliant with other families with 2 MCOs*/ + +/** + * @} + */ + +/** @defgroup RCC_MCOx_Clock_Prescaler MCO Clock Prescaler + * @{ + */ +#define RCC_MCODIV_1 0x00000000U + +/** + * @} + */ + +/** @defgroup RCC_Interrupt Interrupts + * @{ + */ +#define RCC_IT_LSIRDY ((uint8_t)RCC_CIR_LSIRDYF) /*!< LSI Ready Interrupt flag */ +#define RCC_IT_LSERDY ((uint8_t)RCC_CIR_LSERDYF) /*!< LSE Ready Interrupt flag */ +#define RCC_IT_HSIRDY ((uint8_t)RCC_CIR_HSIRDYF) /*!< HSI Ready Interrupt flag */ +#define RCC_IT_HSERDY ((uint8_t)RCC_CIR_HSERDYF) /*!< HSE Ready Interrupt flag */ +#define RCC_IT_PLLRDY ((uint8_t)RCC_CIR_PLLRDYF) /*!< PLL Ready Interrupt flag */ +#define RCC_IT_CSS ((uint8_t)RCC_CIR_CSSF) /*!< Clock Security System Interrupt flag */ +/** + * @} + */ + +/** @defgroup RCC_Flag Flags + * Elements values convention: XXXYYYYYb + * - YYYYY : Flag position in the register + * - XXX : Register index + * - 001: CR register + * - 010: BDCR register + * - 011: CSR register + * @{ + */ +/* Flags in the CR register */ +#define RCC_FLAG_HSIRDY ((uint8_t)((CR_REG_INDEX << 5U) | RCC_CR_HSIRDY_Pos)) /*!< Internal High Speed clock ready flag */ +#define RCC_FLAG_HSERDY ((uint8_t)((CR_REG_INDEX << 5U) | RCC_CR_HSERDY_Pos)) /*!< External High Speed clock ready flag */ +#define RCC_FLAG_PLLRDY ((uint8_t)((CR_REG_INDEX << 5U) | RCC_CR_PLLRDY_Pos)) /*!< PLL clock ready flag */ + +/* Flags in the CSR register */ +#define RCC_FLAG_LSIRDY ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_LSIRDY_Pos)) /*!< Internal Low Speed oscillator Ready */ +#define RCC_FLAG_PINRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_PINRSTF_Pos)) /*!< PIN reset flag */ +#define RCC_FLAG_PORRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_PORRSTF_Pos)) /*!< POR/PDR reset flag */ +#define RCC_FLAG_SFTRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_SFTRSTF_Pos)) /*!< Software Reset flag */ +#define RCC_FLAG_IWDGRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_IWDGRSTF_Pos)) /*!< Independent Watchdog reset flag */ +#define RCC_FLAG_WWDGRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_WWDGRSTF_Pos)) /*!< Window watchdog reset flag */ +#define RCC_FLAG_LPWRRST ((uint8_t)((CSR_REG_INDEX << 5U) | RCC_CSR_LPWRRSTF_Pos)) /*!< Low-Power reset flag */ + +/* Flags in the BDCR register */ +#define RCC_FLAG_LSERDY ((uint8_t)((BDCR_REG_INDEX << 5U) | RCC_BDCR_LSERDY_Pos)) /*!< External Low Speed oscillator Ready */ + +/** + * @} + */ + +/** + * @} + */ + +/* Exported macro ------------------------------------------------------------*/ + +/** @defgroup RCC_Exported_Macros RCC Exported Macros + * @{ + */ + +/** @defgroup RCC_Peripheral_Clock_Enable_Disable Peripheral Clock Enable Disable + * @brief Enable or disable the AHB1 peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ +#define __HAL_RCC_DMA1_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->AHBENR, RCC_AHBENR_DMA1EN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_DMA1EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_SRAM_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->AHBENR, RCC_AHBENR_SRAMEN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_SRAMEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_FLITF_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->AHBENR, RCC_AHBENR_FLITFEN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_FLITFEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_CRC_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->AHBENR, RCC_AHBENR_CRCEN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_CRCEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_DMA1_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_DMA1EN)) +#define __HAL_RCC_SRAM_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_SRAMEN)) +#define __HAL_RCC_FLITF_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_FLITFEN)) +#define __HAL_RCC_CRC_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_CRCEN)) + +/** + * @} + */ + +/** @defgroup RCC_AHB_Peripheral_Clock_Enable_Disable_Status AHB Peripheral Clock Enable Disable Status + * @brief Get the enable or disable status of the AHB peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ + +#define __HAL_RCC_DMA1_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_DMA1EN)) != RESET) +#define __HAL_RCC_DMA1_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_DMA1EN)) == RESET) +#define __HAL_RCC_SRAM_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_SRAMEN)) != RESET) +#define __HAL_RCC_SRAM_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_SRAMEN)) == RESET) +#define __HAL_RCC_FLITF_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_FLITFEN)) != RESET) +#define __HAL_RCC_FLITF_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_FLITFEN)) == RESET) +#define __HAL_RCC_CRC_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_CRCEN)) != RESET) +#define __HAL_RCC_CRC_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_CRCEN)) == RESET) + +/** + * @} + */ + +/** @defgroup RCC_APB1_Clock_Enable_Disable APB1 Clock Enable Disable + * @brief Enable or disable the Low Speed APB (APB1) peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ +#define __HAL_RCC_TIM2_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM2EN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM2EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM3_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM3EN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM3EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_WWDG_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_WWDGEN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_WWDGEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_USART2_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_USART2EN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_USART2EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_I2C1_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_I2C1EN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_I2C1EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_BKP_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_BKPEN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_BKPEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_PWR_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_PWREN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_PWREN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM2_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM2EN)) +#define __HAL_RCC_TIM3_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM3EN)) +#define __HAL_RCC_WWDG_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_WWDGEN)) +#define __HAL_RCC_USART2_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_USART2EN)) +#define __HAL_RCC_I2C1_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_I2C1EN)) + +#define __HAL_RCC_BKP_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_BKPEN)) +#define __HAL_RCC_PWR_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_PWREN)) + +/** + * @} + */ + +/** @defgroup RCC_APB1_Peripheral_Clock_Enable_Disable_Status APB1 Peripheral Clock Enable Disable Status + * @brief Get the enable or disable status of the APB1 peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ + +#define __HAL_RCC_TIM2_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM2EN)) != RESET) +#define __HAL_RCC_TIM2_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM2EN)) == RESET) +#define __HAL_RCC_TIM3_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM3EN)) != RESET) +#define __HAL_RCC_TIM3_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM3EN)) == RESET) +#define __HAL_RCC_WWDG_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_WWDGEN)) != RESET) +#define __HAL_RCC_WWDG_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_WWDGEN)) == RESET) +#define __HAL_RCC_USART2_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USART2EN)) != RESET) +#define __HAL_RCC_USART2_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USART2EN)) == RESET) +#define __HAL_RCC_I2C1_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_I2C1EN)) != RESET) +#define __HAL_RCC_I2C1_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_I2C1EN)) == RESET) +#define __HAL_RCC_BKP_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_BKPEN)) != RESET) +#define __HAL_RCC_BKP_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_BKPEN)) == RESET) +#define __HAL_RCC_PWR_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_PWREN)) != RESET) +#define __HAL_RCC_PWR_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_PWREN)) == RESET) + +/** + * @} + */ + +/** @defgroup RCC_APB2_Clock_Enable_Disable APB2 Clock Enable Disable + * @brief Enable or disable the High Speed APB (APB2) peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ +#define __HAL_RCC_AFIO_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_AFIOEN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_AFIOEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_GPIOA_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPAEN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPAEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_GPIOB_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPBEN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPBEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_GPIOC_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPCEN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPCEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_GPIOD_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPDEN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPDEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_ADC1_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC1EN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC1EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM1_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM1EN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM1EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_SPI1_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_SPI1EN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_SPI1EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_USART1_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_USART1EN);\ + /* Delay after an RCC peripheral clock enabling */\ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_USART1EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_AFIO_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_AFIOEN)) +#define __HAL_RCC_GPIOA_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPAEN)) +#define __HAL_RCC_GPIOB_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPBEN)) +#define __HAL_RCC_GPIOC_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPCEN)) +#define __HAL_RCC_GPIOD_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPDEN)) +#define __HAL_RCC_ADC1_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_ADC1EN)) + +#define __HAL_RCC_TIM1_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM1EN)) +#define __HAL_RCC_SPI1_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_SPI1EN)) +#define __HAL_RCC_USART1_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_USART1EN)) + +/** + * @} + */ + +/** @defgroup RCC_APB2_Peripheral_Clock_Enable_Disable_Status APB2 Peripheral Clock Enable Disable Status + * @brief Get the enable or disable status of the APB2 peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ + +#define __HAL_RCC_AFIO_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_AFIOEN)) != RESET) +#define __HAL_RCC_AFIO_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_AFIOEN)) == RESET) +#define __HAL_RCC_GPIOA_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPAEN)) != RESET) +#define __HAL_RCC_GPIOA_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPAEN)) == RESET) +#define __HAL_RCC_GPIOB_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPBEN)) != RESET) +#define __HAL_RCC_GPIOB_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPBEN)) == RESET) +#define __HAL_RCC_GPIOC_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPCEN)) != RESET) +#define __HAL_RCC_GPIOC_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPCEN)) == RESET) +#define __HAL_RCC_GPIOD_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPDEN)) != RESET) +#define __HAL_RCC_GPIOD_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPDEN)) == RESET) +#define __HAL_RCC_ADC1_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC1EN)) != RESET) +#define __HAL_RCC_ADC1_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC1EN)) == RESET) +#define __HAL_RCC_TIM1_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM1EN)) != RESET) +#define __HAL_RCC_TIM1_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM1EN)) == RESET) +#define __HAL_RCC_SPI1_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_SPI1EN)) != RESET) +#define __HAL_RCC_SPI1_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_SPI1EN)) == RESET) +#define __HAL_RCC_USART1_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_USART1EN)) != RESET) +#define __HAL_RCC_USART1_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_USART1EN)) == RESET) + +/** + * @} + */ + +/** @defgroup RCC_APB1_Force_Release_Reset APB1 Force Release Reset + * @brief Force or release APB1 peripheral reset. + * @{ + */ +#define __HAL_RCC_APB1_FORCE_RESET() (RCC->APB2RSTR = 0xFFFFFFFFU) +#define __HAL_RCC_TIM2_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM2RST)) +#define __HAL_RCC_TIM3_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM3RST)) +#define __HAL_RCC_WWDG_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_WWDGRST)) +#define __HAL_RCC_USART2_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_USART2RST)) +#define __HAL_RCC_I2C1_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_I2C1RST)) + +#define __HAL_RCC_BKP_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_BKPRST)) +#define __HAL_RCC_PWR_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_PWRRST)) + +#define __HAL_RCC_APB1_RELEASE_RESET() (RCC->APB1RSTR = 0x00) +#define __HAL_RCC_TIM2_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM2RST)) +#define __HAL_RCC_TIM3_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM3RST)) +#define __HAL_RCC_WWDG_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_WWDGRST)) +#define __HAL_RCC_USART2_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_USART2RST)) +#define __HAL_RCC_I2C1_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_I2C1RST)) + +#define __HAL_RCC_BKP_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_BKPRST)) +#define __HAL_RCC_PWR_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_PWRRST)) + +/** + * @} + */ + +/** @defgroup RCC_APB2_Force_Release_Reset APB2 Force Release Reset + * @brief Force or release APB2 peripheral reset. + * @{ + */ +#define __HAL_RCC_APB2_FORCE_RESET() (RCC->APB2RSTR = 0xFFFFFFFFU) +#define __HAL_RCC_AFIO_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_AFIORST)) +#define __HAL_RCC_GPIOA_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPARST)) +#define __HAL_RCC_GPIOB_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPBRST)) +#define __HAL_RCC_GPIOC_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPCRST)) +#define __HAL_RCC_GPIOD_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPDRST)) +#define __HAL_RCC_ADC1_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_ADC1RST)) + +#define __HAL_RCC_TIM1_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM1RST)) +#define __HAL_RCC_SPI1_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_SPI1RST)) +#define __HAL_RCC_USART1_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_USART1RST)) + +#define __HAL_RCC_APB2_RELEASE_RESET() (RCC->APB2RSTR = 0x00) +#define __HAL_RCC_AFIO_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_AFIORST)) +#define __HAL_RCC_GPIOA_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPARST)) +#define __HAL_RCC_GPIOB_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPBRST)) +#define __HAL_RCC_GPIOC_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPCRST)) +#define __HAL_RCC_GPIOD_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPDRST)) +#define __HAL_RCC_ADC1_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_ADC1RST)) + +#define __HAL_RCC_TIM1_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM1RST)) +#define __HAL_RCC_SPI1_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_SPI1RST)) +#define __HAL_RCC_USART1_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_USART1RST)) + +/** + * @} + */ + +/** @defgroup RCC_HSI_Configuration HSI Configuration + * @{ + */ + +/** @brief Macros to enable or disable the Internal High Speed oscillator (HSI). + * @note The HSI is stopped by hardware when entering STOP and STANDBY modes. + * @note HSI can not be stopped if it is used as system clock source. In this case, + * you have to select another source of the system clock then stop the HSI. + * @note After enabling the HSI, the application software should wait on HSIRDY + * flag to be set indicating that HSI clock is stable and can be used as + * system clock source. + * @note When the HSI is stopped, HSIRDY flag goes low after 6 HSI oscillator + * clock cycles. + */ +#define __HAL_RCC_HSI_ENABLE() (*(__IO uint32_t *) RCC_CR_HSION_BB = ENABLE) +#define __HAL_RCC_HSI_DISABLE() (*(__IO uint32_t *) RCC_CR_HSION_BB = DISABLE) + +/** @brief Macro to adjust the Internal High Speed oscillator (HSI) calibration value. + * @note The calibration is used to compensate for the variations in voltage + * and temperature that influence the frequency of the internal HSI RC. + * @param _HSICALIBRATIONVALUE_ specifies the calibration trimming value. + * (default is RCC_HSICALIBRATION_DEFAULT). + * This parameter must be a number between 0 and 0x1F. + */ +#define __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(_HSICALIBRATIONVALUE_) \ + (MODIFY_REG(RCC->CR, RCC_CR_HSITRIM, (uint32_t)(_HSICALIBRATIONVALUE_) << RCC_CR_HSITRIM_Pos)) + +/** + * @} + */ + +/** @defgroup RCC_LSI_Configuration LSI Configuration + * @{ + */ + +/** @brief Macro to enable the Internal Low Speed oscillator (LSI). + * @note After enabling the LSI, the application software should wait on + * LSIRDY flag to be set indicating that LSI clock is stable and can + * be used to clock the IWDG and/or the RTC. + */ +#define __HAL_RCC_LSI_ENABLE() (*(__IO uint32_t *) RCC_CSR_LSION_BB = ENABLE) + +/** @brief Macro to disable the Internal Low Speed oscillator (LSI). + * @note LSI can not be disabled if the IWDG is running. + * @note When the LSI is stopped, LSIRDY flag goes low after 6 LSI oscillator + * clock cycles. + */ +#define __HAL_RCC_LSI_DISABLE() (*(__IO uint32_t *) RCC_CSR_LSION_BB = DISABLE) + +/** + * @} + */ + +/** @defgroup RCC_HSE_Configuration HSE Configuration + * @{ + */ + +/** + * @brief Macro to configure the External High Speed oscillator (HSE). + * @note Transition HSE Bypass to HSE On and HSE On to HSE Bypass are not + * supported by this macro. User should request a transition to HSE Off + * first and then HSE On or HSE Bypass. + * @note After enabling the HSE (RCC_HSE_ON or RCC_HSE_Bypass), the application + * software should wait on HSERDY flag to be set indicating that HSE clock + * is stable and can be used to clock the PLL and/or system clock. + * @note HSE state can not be changed if it is used directly or through the + * PLL as system clock. In this case, you have to select another source + * of the system clock then change the HSE state (ex. disable it). + * @note The HSE is stopped by hardware when entering STOP and STANDBY modes. + * @note This function reset the CSSON bit, so if the clock security system(CSS) + * was previously enabled you have to enable it again after calling this + * function. + * @param __STATE__ specifies the new state of the HSE. + * This parameter can be one of the following values: + * @arg @ref RCC_HSE_OFF turn OFF the HSE oscillator, HSERDY flag goes low after + * 6 HSE oscillator clock cycles. + * @arg @ref RCC_HSE_ON turn ON the HSE oscillator + * @arg @ref RCC_HSE_BYPASS HSE oscillator bypassed with external clock + */ +#define __HAL_RCC_HSE_CONFIG(__STATE__) \ + do{ \ + if ((__STATE__) == RCC_HSE_ON) \ + { \ + SET_BIT(RCC->CR, RCC_CR_HSEON); \ + } \ + else if ((__STATE__) == RCC_HSE_OFF) \ + { \ + CLEAR_BIT(RCC->CR, RCC_CR_HSEON); \ + CLEAR_BIT(RCC->CR, RCC_CR_HSEBYP); \ + } \ + else if ((__STATE__) == RCC_HSE_BYPASS) \ + { \ + SET_BIT(RCC->CR, RCC_CR_HSEBYP); \ + SET_BIT(RCC->CR, RCC_CR_HSEON); \ + } \ + else \ + { \ + CLEAR_BIT(RCC->CR, RCC_CR_HSEON); \ + CLEAR_BIT(RCC->CR, RCC_CR_HSEBYP); \ + } \ + }while(0U) + +/** + * @} + */ + +/** @defgroup RCC_LSE_Configuration LSE Configuration + * @{ + */ + +/** + * @brief Macro to configure the External Low Speed oscillator (LSE). + * @note Transitions LSE Bypass to LSE On and LSE On to LSE Bypass are not supported by this macro. + * @note As the LSE is in the Backup domain and write access is denied to + * this domain after reset, you have to enable write access using + * @ref HAL_PWR_EnableBkUpAccess() function before to configure the LSE + * (to be done once after reset). + * @note After enabling the LSE (RCC_LSE_ON or RCC_LSE_BYPASS), the application + * software should wait on LSERDY flag to be set indicating that LSE clock + * is stable and can be used to clock the RTC. + * @param __STATE__ specifies the new state of the LSE. + * This parameter can be one of the following values: + * @arg @ref RCC_LSE_OFF turn OFF the LSE oscillator, LSERDY flag goes low after + * 6 LSE oscillator clock cycles. + * @arg @ref RCC_LSE_ON turn ON the LSE oscillator. + * @arg @ref RCC_LSE_BYPASS LSE oscillator bypassed with external clock. + */ +#define __HAL_RCC_LSE_CONFIG(__STATE__) \ + do{ \ + if ((__STATE__) == RCC_LSE_ON) \ + { \ + SET_BIT(RCC->BDCR, RCC_BDCR_LSEON); \ + } \ + else if ((__STATE__) == RCC_LSE_OFF) \ + { \ + CLEAR_BIT(RCC->BDCR, RCC_BDCR_LSEON); \ + CLEAR_BIT(RCC->BDCR, RCC_BDCR_LSEBYP); \ + } \ + else if ((__STATE__) == RCC_LSE_BYPASS) \ + { \ + SET_BIT(RCC->BDCR, RCC_BDCR_LSEBYP); \ + SET_BIT(RCC->BDCR, RCC_BDCR_LSEON); \ + } \ + else \ + { \ + CLEAR_BIT(RCC->BDCR, RCC_BDCR_LSEON); \ + CLEAR_BIT(RCC->BDCR, RCC_BDCR_LSEBYP); \ + } \ + }while(0U) + +/** + * @} + */ + +/** @defgroup RCC_PLL_Configuration PLL Configuration + * @{ + */ + +/** @brief Macro to enable the main PLL. + * @note After enabling the main PLL, the application software should wait on + * PLLRDY flag to be set indicating that PLL clock is stable and can + * be used as system clock source. + * @note The main PLL is disabled by hardware when entering STOP and STANDBY modes. + */ +#define __HAL_RCC_PLL_ENABLE() (*(__IO uint32_t *) RCC_CR_PLLON_BB = ENABLE) + +/** @brief Macro to disable the main PLL. + * @note The main PLL can not be disabled if it is used as system clock source + */ +#define __HAL_RCC_PLL_DISABLE() (*(__IO uint32_t *) RCC_CR_PLLON_BB = DISABLE) + +/** @brief Macro to configure the main PLL clock source and multiplication factors. + * @note This function must be used only when the main PLL is disabled. + * + * @param __RCC_PLLSOURCE__ specifies the PLL entry clock source. + * This parameter can be one of the following values: + * @arg @ref RCC_PLLSOURCE_HSI_DIV2 HSI oscillator clock selected as PLL clock entry + * @arg @ref RCC_PLLSOURCE_HSE HSE oscillator clock selected as PLL clock entry + * @param __PLLMUL__ specifies the multiplication factor for PLL VCO output clock + * This parameter can be one of the following values: + * @arg @ref RCC_PLL_MUL4 PLLVCO = PLL clock entry x 4 + * @arg @ref RCC_PLL_MUL6 PLLVCO = PLL clock entry x 6 + @if STM32F105xC + * @arg @ref RCC_PLL_MUL6_5 PLLVCO = PLL clock entry x 6.5 + @elseif STM32F107xC + * @arg @ref RCC_PLL_MUL6_5 PLLVCO = PLL clock entry x 6.5 + @else + * @arg @ref RCC_PLL_MUL2 PLLVCO = PLL clock entry x 2 + * @arg @ref RCC_PLL_MUL3 PLLVCO = PLL clock entry x 3 + * @arg @ref RCC_PLL_MUL10 PLLVCO = PLL clock entry x 10 + * @arg @ref RCC_PLL_MUL11 PLLVCO = PLL clock entry x 11 + * @arg @ref RCC_PLL_MUL12 PLLVCO = PLL clock entry x 12 + * @arg @ref RCC_PLL_MUL13 PLLVCO = PLL clock entry x 13 + * @arg @ref RCC_PLL_MUL14 PLLVCO = PLL clock entry x 14 + * @arg @ref RCC_PLL_MUL15 PLLVCO = PLL clock entry x 15 + * @arg @ref RCC_PLL_MUL16 PLLVCO = PLL clock entry x 16 + @endif + * @arg @ref RCC_PLL_MUL8 PLLVCO = PLL clock entry x 8 + * @arg @ref RCC_PLL_MUL9 PLLVCO = PLL clock entry x 9 + * + */ +#define __HAL_RCC_PLL_CONFIG(__RCC_PLLSOURCE__, __PLLMUL__)\ + MODIFY_REG(RCC->CFGR, (RCC_CFGR_PLLSRC | RCC_CFGR_PLLMULL),((__RCC_PLLSOURCE__) | (__PLLMUL__) )) + +/** @brief Get oscillator clock selected as PLL input clock + * @retval The clock source used for PLL entry. The returned value can be one + * of the following: + * @arg @ref RCC_PLLSOURCE_HSI_DIV2 HSI oscillator clock selected as PLL input clock + * @arg @ref RCC_PLLSOURCE_HSE HSE oscillator clock selected as PLL input clock + */ +#define __HAL_RCC_GET_PLL_OSCSOURCE() ((uint32_t)(READ_BIT(RCC->CFGR, RCC_CFGR_PLLSRC))) + +/** + * @} + */ + +/** @defgroup RCC_Get_Clock_source Get Clock source + * @{ + */ + +/** + * @brief Macro to configure the system clock source. + * @param __SYSCLKSOURCE__ specifies the system clock source. + * This parameter can be one of the following values: + * @arg @ref RCC_SYSCLKSOURCE_HSI HSI oscillator is used as system clock source. + * @arg @ref RCC_SYSCLKSOURCE_HSE HSE oscillator is used as system clock source. + * @arg @ref RCC_SYSCLKSOURCE_PLLCLK PLL output is used as system clock source. + */ +#define __HAL_RCC_SYSCLK_CONFIG(__SYSCLKSOURCE__) \ + MODIFY_REG(RCC->CFGR, RCC_CFGR_SW, (__SYSCLKSOURCE__)) + +/** @brief Macro to get the clock source used as system clock. + * @retval The clock source used as system clock. The returned value can be one + * of the following: + * @arg @ref RCC_SYSCLKSOURCE_STATUS_HSI HSI used as system clock + * @arg @ref RCC_SYSCLKSOURCE_STATUS_HSE HSE used as system clock + * @arg @ref RCC_SYSCLKSOURCE_STATUS_PLLCLK PLL used as system clock + */ +#define __HAL_RCC_GET_SYSCLK_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR,RCC_CFGR_SWS))) + +/** + * @} + */ + +/** @defgroup RCCEx_MCOx_Clock_Config RCC Extended MCOx Clock Config + * @{ + */ + +#if defined(RCC_CFGR_MCO_3) +/** @brief Macro to configure the MCO clock. + * @param __MCOCLKSOURCE__ specifies the MCO clock source. + * This parameter can be one of the following values: + * @arg @ref RCC_MCO1SOURCE_NOCLOCK No clock selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_SYSCLK System clock (SYSCLK) selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_HSI HSI selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_HSE HSE selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_PLLCLK PLL clock divided by 2 selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_PLL2CLK PLL2 clock selected by 2 selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_PLL3CLK_DIV2 PLL3 clock divided by 2 selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_EXT_HSE XT1 external 3-25 MHz oscillator clock selected (for Ethernet) as MCO clock + * @arg @ref RCC_MCO1SOURCE_PLL3CLK PLL3 clock selected (for Ethernet) as MCO clock + * @param __MCODIV__ specifies the MCO clock prescaler. + * This parameter can be one of the following values: + * @arg @ref RCC_MCODIV_1 No division applied on MCO clock source + */ +#else +/** @brief Macro to configure the MCO clock. + * @param __MCOCLKSOURCE__ specifies the MCO clock source. + * This parameter can be one of the following values: + * @arg @ref RCC_MCO1SOURCE_NOCLOCK No clock selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_SYSCLK System clock (SYSCLK) selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_HSI HSI selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_HSE HSE selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_PLLCLK PLL clock divided by 2 selected as MCO clock + * @param __MCODIV__ specifies the MCO clock prescaler. + * This parameter can be one of the following values: + * @arg @ref RCC_MCODIV_1 No division applied on MCO clock source + */ +#endif + +#define __HAL_RCC_MCO1_CONFIG(__MCOCLKSOURCE__, __MCODIV__) \ + MODIFY_REG(RCC->CFGR, RCC_CFGR_MCO, (__MCOCLKSOURCE__)) + + +/** + * @} + */ + +/** @defgroup RCC_RTC_Clock_Configuration RCC RTC Clock Configuration +* @{ +*/ + +/** @brief Macro to configure the RTC clock (RTCCLK). + * @note As the RTC clock configuration bits are in the Backup domain and write + * access is denied to this domain after reset, you have to enable write + * access using the Power Backup Access macro before to configure + * the RTC clock source (to be done once after reset). + * @note Once the RTC clock is configured it can't be changed unless the + * Backup domain is reset using @ref __HAL_RCC_BACKUPRESET_FORCE() macro, or by + * a Power On Reset (POR). + * + * @param __RTC_CLKSOURCE__ specifies the RTC clock source. + * This parameter can be one of the following values: + * @arg @ref RCC_RTCCLKSOURCE_NO_CLK No clock selected as RTC clock + * @arg @ref RCC_RTCCLKSOURCE_LSE LSE selected as RTC clock + * @arg @ref RCC_RTCCLKSOURCE_LSI LSI selected as RTC clock + * @arg @ref RCC_RTCCLKSOURCE_HSE_DIV128 HSE divided by 128 selected as RTC clock + * @note If the LSE or LSI is used as RTC clock source, the RTC continues to + * work in STOP and STANDBY modes, and can be used as wakeup source. + * However, when the HSE clock is used as RTC clock source, the RTC + * cannot be used in STOP and STANDBY modes. + * @note The maximum input clock frequency for RTC is 1MHz (when using HSE as + * RTC clock source). + */ +#define __HAL_RCC_RTC_CONFIG(__RTC_CLKSOURCE__) MODIFY_REG(RCC->BDCR, RCC_BDCR_RTCSEL, (__RTC_CLKSOURCE__)) + +/** @brief Macro to get the RTC clock source. + * @retval The clock source can be one of the following values: + * @arg @ref RCC_RTCCLKSOURCE_NO_CLK No clock selected as RTC clock + * @arg @ref RCC_RTCCLKSOURCE_LSE LSE selected as RTC clock + * @arg @ref RCC_RTCCLKSOURCE_LSI LSI selected as RTC clock + * @arg @ref RCC_RTCCLKSOURCE_HSE_DIV128 HSE divided by 128 selected as RTC clock + */ +#define __HAL_RCC_GET_RTC_SOURCE() (READ_BIT(RCC->BDCR, RCC_BDCR_RTCSEL)) + +/** @brief Macro to enable the the RTC clock. + * @note These macros must be used only after the RTC clock source was selected. + */ +#define __HAL_RCC_RTC_ENABLE() (*(__IO uint32_t *) RCC_BDCR_RTCEN_BB = ENABLE) + +/** @brief Macro to disable the the RTC clock. + * @note These macros must be used only after the RTC clock source was selected. + */ +#define __HAL_RCC_RTC_DISABLE() (*(__IO uint32_t *) RCC_BDCR_RTCEN_BB = DISABLE) + +/** @brief Macro to force the Backup domain reset. + * @note This function resets the RTC peripheral (including the backup registers) + * and the RTC clock source selection in RCC_BDCR register. + */ +#define __HAL_RCC_BACKUPRESET_FORCE() (*(__IO uint32_t *) RCC_BDCR_BDRST_BB = ENABLE) + +/** @brief Macros to release the Backup domain reset. + */ +#define __HAL_RCC_BACKUPRESET_RELEASE() (*(__IO uint32_t *) RCC_BDCR_BDRST_BB = DISABLE) + +/** + * @} + */ + +/** @defgroup RCC_Flags_Interrupts_Management Flags Interrupts Management + * @brief macros to manage the specified RCC Flags and interrupts. + * @{ + */ + +/** @brief Enable RCC interrupt. + * @param __INTERRUPT__ specifies the RCC interrupt sources to be enabled. + * This parameter can be any combination of the following values: + * @arg @ref RCC_IT_LSIRDY LSI ready interrupt + * @arg @ref RCC_IT_LSERDY LSE ready interrupt + * @arg @ref RCC_IT_HSIRDY HSI ready interrupt + * @arg @ref RCC_IT_HSERDY HSE ready interrupt + * @arg @ref RCC_IT_PLLRDY main PLL ready interrupt + @if STM32F105xx + * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. + * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. + @elsif STM32F107xx + * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. + * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. + @endif + */ +#define __HAL_RCC_ENABLE_IT(__INTERRUPT__) (*(__IO uint8_t *) RCC_CIR_BYTE1_ADDRESS |= (__INTERRUPT__)) + +/** @brief Disable RCC interrupt. + * @param __INTERRUPT__ specifies the RCC interrupt sources to be disabled. + * This parameter can be any combination of the following values: + * @arg @ref RCC_IT_LSIRDY LSI ready interrupt + * @arg @ref RCC_IT_LSERDY LSE ready interrupt + * @arg @ref RCC_IT_HSIRDY HSI ready interrupt + * @arg @ref RCC_IT_HSERDY HSE ready interrupt + * @arg @ref RCC_IT_PLLRDY main PLL ready interrupt + @if STM32F105xx + * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. + * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. + @elsif STM32F107xx + * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. + * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. + @endif + */ +#define __HAL_RCC_DISABLE_IT(__INTERRUPT__) (*(__IO uint8_t *) RCC_CIR_BYTE1_ADDRESS &= (uint8_t)(~(__INTERRUPT__))) + +/** @brief Clear the RCC's interrupt pending bits. + * @param __INTERRUPT__ specifies the interrupt pending bit to clear. + * This parameter can be any combination of the following values: + * @arg @ref RCC_IT_LSIRDY LSI ready interrupt. + * @arg @ref RCC_IT_LSERDY LSE ready interrupt. + * @arg @ref RCC_IT_HSIRDY HSI ready interrupt. + * @arg @ref RCC_IT_HSERDY HSE ready interrupt. + * @arg @ref RCC_IT_PLLRDY Main PLL ready interrupt. + @if STM32F105xx + * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. + * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. + @elsif STM32F107xx + * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. + * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. + @endif + * @arg @ref RCC_IT_CSS Clock Security System interrupt + */ +#define __HAL_RCC_CLEAR_IT(__INTERRUPT__) (*(__IO uint8_t *) RCC_CIR_BYTE2_ADDRESS = (__INTERRUPT__)) + +/** @brief Check the RCC's interrupt has occurred or not. + * @param __INTERRUPT__ specifies the RCC interrupt source to check. + * This parameter can be one of the following values: + * @arg @ref RCC_IT_LSIRDY LSI ready interrupt. + * @arg @ref RCC_IT_LSERDY LSE ready interrupt. + * @arg @ref RCC_IT_HSIRDY HSI ready interrupt. + * @arg @ref RCC_IT_HSERDY HSE ready interrupt. + * @arg @ref RCC_IT_PLLRDY Main PLL ready interrupt. + @if STM32F105xx + * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. + * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. + @elsif STM32F107xx + * @arg @ref RCC_IT_PLL2RDY Main PLL2 ready interrupt. + * @arg @ref RCC_IT_PLLI2S2RDY Main PLLI2S ready interrupt. + @endif + * @arg @ref RCC_IT_CSS Clock Security System interrupt + * @retval The new state of __INTERRUPT__ (TRUE or FALSE). + */ +#define __HAL_RCC_GET_IT(__INTERRUPT__) ((RCC->CIR & (__INTERRUPT__)) == (__INTERRUPT__)) + +/** @brief Set RMVF bit to clear the reset flags. + * The reset flags are RCC_FLAG_PINRST, RCC_FLAG_PORRST, RCC_FLAG_SFTRST, + * RCC_FLAG_IWDGRST, RCC_FLAG_WWDGRST, RCC_FLAG_LPWRRST + */ +#define __HAL_RCC_CLEAR_RESET_FLAGS() (*(__IO uint32_t *)RCC_CSR_RMVF_BB = ENABLE) + +/** @brief Check RCC flag is set or not. + * @param __FLAG__ specifies the flag to check. + * This parameter can be one of the following values: + * @arg @ref RCC_FLAG_HSIRDY HSI oscillator clock ready. + * @arg @ref RCC_FLAG_HSERDY HSE oscillator clock ready. + * @arg @ref RCC_FLAG_PLLRDY Main PLL clock ready. + @if STM32F105xx + * @arg @ref RCC_FLAG_PLL2RDY Main PLL2 clock ready. + * @arg @ref RCC_FLAG_PLLI2SRDY Main PLLI2S clock ready. + @elsif STM32F107xx + * @arg @ref RCC_FLAG_PLL2RDY Main PLL2 clock ready. + * @arg @ref RCC_FLAG_PLLI2SRDY Main PLLI2S clock ready. + @endif + * @arg @ref RCC_FLAG_LSERDY LSE oscillator clock ready. + * @arg @ref RCC_FLAG_LSIRDY LSI oscillator clock ready. + * @arg @ref RCC_FLAG_PINRST Pin reset. + * @arg @ref RCC_FLAG_PORRST POR/PDR reset. + * @arg @ref RCC_FLAG_SFTRST Software reset. + * @arg @ref RCC_FLAG_IWDGRST Independent Watchdog reset. + * @arg @ref RCC_FLAG_WWDGRST Window Watchdog reset. + * @arg @ref RCC_FLAG_LPWRRST Low Power reset. + * @retval The new state of __FLAG__ (TRUE or FALSE). + */ +#define __HAL_RCC_GET_FLAG(__FLAG__) (((((__FLAG__) >> 5U) == CR_REG_INDEX)? RCC->CR : \ + ((((__FLAG__) >> 5U) == BDCR_REG_INDEX)? RCC->BDCR : \ + RCC->CSR)) & (1U << ((__FLAG__) & RCC_FLAG_MASK))) + +/** + * @} + */ + +/** + * @} + */ + +/* Include RCC HAL Extension module */ +#include "stm32f1xx_hal_rcc_ex.h" + +/* Exported functions --------------------------------------------------------*/ +/** @addtogroup RCC_Exported_Functions + * @{ + */ + +/** @addtogroup RCC_Exported_Functions_Group1 + * @{ + */ + +/* Initialization and de-initialization functions ******************************/ +HAL_StatusTypeDef HAL_RCC_DeInit(void); +HAL_StatusTypeDef HAL_RCC_OscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct); +HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency); + +/** + * @} + */ + +/** @addtogroup RCC_Exported_Functions_Group2 + * @{ + */ + +/* Peripheral Control functions ************************************************/ +void HAL_RCC_MCOConfig(uint32_t RCC_MCOx, uint32_t RCC_MCOSource, uint32_t RCC_MCODiv); +void HAL_RCC_EnableCSS(void); +void HAL_RCC_DisableCSS(void); +uint32_t HAL_RCC_GetSysClockFreq(void); +uint32_t HAL_RCC_GetHCLKFreq(void); +uint32_t HAL_RCC_GetPCLK1Freq(void); +uint32_t HAL_RCC_GetPCLK2Freq(void); +void HAL_RCC_GetOscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct); +void HAL_RCC_GetClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t *pFLatency); + +/* CSS NMI IRQ handler */ +void HAL_RCC_NMI_IRQHandler(void); + +/* User Callbacks in non blocking mode (IT mode) */ +void HAL_RCC_CSSCallback(void); + +/** + * @} + */ + +/** + * @} + */ + +/** @addtogroup RCC_Private_Constants + * @{ + */ + +/** @defgroup RCC_Timeout RCC Timeout + * @{ + */ + +/* Disable Backup domain write protection state change timeout */ +#define RCC_DBP_TIMEOUT_VALUE 100U /* 100 ms */ +/* LSE state change timeout */ +#define RCC_LSE_TIMEOUT_VALUE LSE_STARTUP_TIMEOUT +#define CLOCKSWITCH_TIMEOUT_VALUE 5000 /* 5 s */ +#define HSE_TIMEOUT_VALUE HSE_STARTUP_TIMEOUT +#define HSI_TIMEOUT_VALUE 2U /* 2 ms (minimum Tick + 1) */ +#define LSI_TIMEOUT_VALUE 2U /* 2 ms (minimum Tick + 1) */ +#define PLL_TIMEOUT_VALUE 2U /* 2 ms (minimum Tick + 1) */ + +/** + * @} + */ + +/** @defgroup RCC_Register_Offset Register offsets + * @{ + */ +#define RCC_OFFSET (RCC_BASE - PERIPH_BASE) +#define RCC_CR_OFFSET 0x00U +#define RCC_CFGR_OFFSET 0x04U +#define RCC_CIR_OFFSET 0x08U +#define RCC_BDCR_OFFSET 0x20U +#define RCC_CSR_OFFSET 0x24U + +/** + * @} + */ + +/** @defgroup RCC_BitAddress_AliasRegion BitAddress AliasRegion + * @brief RCC registers bit address in the alias region + * @{ + */ +#define RCC_CR_OFFSET_BB (RCC_OFFSET + RCC_CR_OFFSET) +#define RCC_CFGR_OFFSET_BB (RCC_OFFSET + RCC_CFGR_OFFSET) +#define RCC_CIR_OFFSET_BB (RCC_OFFSET + RCC_CIR_OFFSET) +#define RCC_BDCR_OFFSET_BB (RCC_OFFSET + RCC_BDCR_OFFSET) +#define RCC_CSR_OFFSET_BB (RCC_OFFSET + RCC_CSR_OFFSET) + +/* --- CR Register ---*/ +/* Alias word address of HSION bit */ +#define RCC_HSION_BIT_NUMBER RCC_CR_HSION_Pos +#define RCC_CR_HSION_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (RCC_HSION_BIT_NUMBER * 4U))) +/* Alias word address of HSEON bit */ +#define RCC_HSEON_BIT_NUMBER RCC_CR_HSEON_Pos +#define RCC_CR_HSEON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (RCC_HSEON_BIT_NUMBER * 4U))) +/* Alias word address of CSSON bit */ +#define RCC_CSSON_BIT_NUMBER RCC_CR_CSSON_Pos +#define RCC_CR_CSSON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (RCC_CSSON_BIT_NUMBER * 4U))) +/* Alias word address of PLLON bit */ +#define RCC_PLLON_BIT_NUMBER RCC_CR_PLLON_Pos +#define RCC_CR_PLLON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (RCC_PLLON_BIT_NUMBER * 4U))) + +/* --- CSR Register ---*/ +/* Alias word address of LSION bit */ +#define RCC_LSION_BIT_NUMBER RCC_CSR_LSION_Pos +#define RCC_CSR_LSION_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CSR_OFFSET_BB * 32U) + (RCC_LSION_BIT_NUMBER * 4U))) + +/* Alias word address of RMVF bit */ +#define RCC_RMVF_BIT_NUMBER RCC_CSR_RMVF_Pos +#define RCC_CSR_RMVF_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CSR_OFFSET_BB * 32U) + (RCC_RMVF_BIT_NUMBER * 4U))) + +/* --- BDCR Registers ---*/ +/* Alias word address of LSEON bit */ +#define RCC_LSEON_BIT_NUMBER RCC_BDCR_LSEON_Pos +#define RCC_BDCR_LSEON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_BDCR_OFFSET_BB * 32U) + (RCC_LSEON_BIT_NUMBER * 4U))) + +/* Alias word address of LSEON bit */ +#define RCC_LSEBYP_BIT_NUMBER RCC_BDCR_LSEBYP_Pos +#define RCC_BDCR_LSEBYP_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_BDCR_OFFSET_BB * 32U) + (RCC_LSEBYP_BIT_NUMBER * 4U))) + +/* Alias word address of RTCEN bit */ +#define RCC_RTCEN_BIT_NUMBER RCC_BDCR_RTCEN_Pos +#define RCC_BDCR_RTCEN_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_BDCR_OFFSET_BB * 32U) + (RCC_RTCEN_BIT_NUMBER * 4U))) + +/* Alias word address of BDRST bit */ +#define RCC_BDRST_BIT_NUMBER RCC_BDCR_BDRST_Pos +#define RCC_BDCR_BDRST_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_BDCR_OFFSET_BB * 32U) + (RCC_BDRST_BIT_NUMBER * 4U))) + +/** + * @} + */ + +/* CR register byte 2 (Bits[23:16]) base address */ +#define RCC_CR_BYTE2_ADDRESS ((uint32_t)(RCC_BASE + RCC_CR_OFFSET + 0x02U)) + +/* CIR register byte 1 (Bits[15:8]) base address */ +#define RCC_CIR_BYTE1_ADDRESS ((uint32_t)(RCC_BASE + RCC_CIR_OFFSET + 0x01U)) + +/* CIR register byte 2 (Bits[23:16]) base address */ +#define RCC_CIR_BYTE2_ADDRESS ((uint32_t)(RCC_BASE + RCC_CIR_OFFSET + 0x02U)) + +/* Defines used for Flags */ +#define CR_REG_INDEX ((uint8_t)1) +#define BDCR_REG_INDEX ((uint8_t)2) +#define CSR_REG_INDEX ((uint8_t)3) + +#define RCC_FLAG_MASK ((uint8_t)0x1F) + +/** + * @} + */ + +/** @addtogroup RCC_Private_Macros + * @{ + */ +/** @defgroup RCC_Alias_For_Legacy Alias define maintained for legacy + * @{ + */ +#define __HAL_RCC_SYSCFG_CLK_DISABLE __HAL_RCC_AFIO_CLK_DISABLE +#define __HAL_RCC_SYSCFG_CLK_ENABLE __HAL_RCC_AFIO_CLK_ENABLE +#define __HAL_RCC_SYSCFG_FORCE_RESET __HAL_RCC_AFIO_FORCE_RESET +#define __HAL_RCC_SYSCFG_RELEASE_RESET __HAL_RCC_AFIO_RELEASE_RESET +/** + * @} + */ + +#define IS_RCC_PLLSOURCE(__SOURCE__) (((__SOURCE__) == RCC_PLLSOURCE_HSI_DIV2) || \ + ((__SOURCE__) == RCC_PLLSOURCE_HSE)) +#define IS_RCC_OSCILLATORTYPE(__OSCILLATOR__) (((__OSCILLATOR__) == RCC_OSCILLATORTYPE_NONE) || \ + (((__OSCILLATOR__) & RCC_OSCILLATORTYPE_HSE) == RCC_OSCILLATORTYPE_HSE) || \ + (((__OSCILLATOR__) & RCC_OSCILLATORTYPE_HSI) == RCC_OSCILLATORTYPE_HSI) || \ + (((__OSCILLATOR__) & RCC_OSCILLATORTYPE_LSI) == RCC_OSCILLATORTYPE_LSI) || \ + (((__OSCILLATOR__) & RCC_OSCILLATORTYPE_LSE) == RCC_OSCILLATORTYPE_LSE)) +#define IS_RCC_HSE(__HSE__) (((__HSE__) == RCC_HSE_OFF) || ((__HSE__) == RCC_HSE_ON) || \ + ((__HSE__) == RCC_HSE_BYPASS)) +#define IS_RCC_LSE(__LSE__) (((__LSE__) == RCC_LSE_OFF) || ((__LSE__) == RCC_LSE_ON) || \ + ((__LSE__) == RCC_LSE_BYPASS)) +#define IS_RCC_HSI(__HSI__) (((__HSI__) == RCC_HSI_OFF) || ((__HSI__) == RCC_HSI_ON)) +#define IS_RCC_CALIBRATION_VALUE(__VALUE__) ((__VALUE__) <= 0x1FU) +#define IS_RCC_LSI(__LSI__) (((__LSI__) == RCC_LSI_OFF) || ((__LSI__) == RCC_LSI_ON)) +#define IS_RCC_PLL(__PLL__) (((__PLL__) == RCC_PLL_NONE) || ((__PLL__) == RCC_PLL_OFF) || \ + ((__PLL__) == RCC_PLL_ON)) + +#define IS_RCC_CLOCKTYPE(CLK) ((((CLK) & RCC_CLOCKTYPE_SYSCLK) == RCC_CLOCKTYPE_SYSCLK) || \ + (((CLK) & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK) || \ + (((CLK) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1) || \ + (((CLK) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2)) +#define IS_RCC_SYSCLKSOURCE(__SOURCE__) (((__SOURCE__) == RCC_SYSCLKSOURCE_HSI) || \ + ((__SOURCE__) == RCC_SYSCLKSOURCE_HSE) || \ + ((__SOURCE__) == RCC_SYSCLKSOURCE_PLLCLK)) +#define IS_RCC_SYSCLKSOURCE_STATUS(__SOURCE__) (((__SOURCE__) == RCC_SYSCLKSOURCE_STATUS_HSI) || \ + ((__SOURCE__) == RCC_SYSCLKSOURCE_STATUS_HSE) || \ + ((__SOURCE__) == RCC_SYSCLKSOURCE_STATUS_PLLCLK)) +#define IS_RCC_HCLK(__HCLK__) (((__HCLK__) == RCC_SYSCLK_DIV1) || ((__HCLK__) == RCC_SYSCLK_DIV2) || \ + ((__HCLK__) == RCC_SYSCLK_DIV4) || ((__HCLK__) == RCC_SYSCLK_DIV8) || \ + ((__HCLK__) == RCC_SYSCLK_DIV16) || ((__HCLK__) == RCC_SYSCLK_DIV64) || \ + ((__HCLK__) == RCC_SYSCLK_DIV128) || ((__HCLK__) == RCC_SYSCLK_DIV256) || \ + ((__HCLK__) == RCC_SYSCLK_DIV512)) +#define IS_RCC_PCLK(__PCLK__) (((__PCLK__) == RCC_HCLK_DIV1) || ((__PCLK__) == RCC_HCLK_DIV2) || \ + ((__PCLK__) == RCC_HCLK_DIV4) || ((__PCLK__) == RCC_HCLK_DIV8) || \ + ((__PCLK__) == RCC_HCLK_DIV16)) +#define IS_RCC_MCO(__MCO__) ((__MCO__) == RCC_MCO) +#define IS_RCC_MCODIV(__DIV__) (((__DIV__) == RCC_MCODIV_1)) +#define IS_RCC_RTCCLKSOURCE(__SOURCE__) (((__SOURCE__) == RCC_RTCCLKSOURCE_NO_CLK) || \ + ((__SOURCE__) == RCC_RTCCLKSOURCE_LSE) || \ + ((__SOURCE__) == RCC_RTCCLKSOURCE_LSI) || \ + ((__SOURCE__) == RCC_RTCCLKSOURCE_HSE_DIV128)) + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F1xx_HAL_RCC_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ + diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h similarity index 98% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h index d0d0830..822ca9b 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h @@ -1,1908 +1,1908 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_rcc_ex.h - * @author MCD Application Team - * @brief Header file of RCC HAL Extension module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __STM32F1xx_HAL_RCC_EX_H -#define __STM32F1xx_HAL_RCC_EX_H - -#ifdef __cplusplus -extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup RCCEx - * @{ - */ - -/** @addtogroup RCCEx_Private_Constants - * @{ - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) - -/* Alias word address of PLLI2SON bit */ -#define PLLI2SON_BITNUMBER RCC_CR_PLL3ON_Pos -#define RCC_CR_PLLI2SON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (PLLI2SON_BITNUMBER * 4U))) -/* Alias word address of PLL2ON bit */ -#define PLL2ON_BITNUMBER RCC_CR_PLL2ON_Pos -#define RCC_CR_PLL2ON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (PLL2ON_BITNUMBER * 4U))) - -#define PLLI2S_TIMEOUT_VALUE 100U /* 100 ms */ -#define PLL2_TIMEOUT_VALUE 100U /* 100 ms */ - -#endif /* STM32F105xC || STM32F107xC */ - - -#define CR_REG_INDEX ((uint8_t)1) - -/** - * @} - */ - -/** @addtogroup RCCEx_Private_Macros - * @{ - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -#define IS_RCC_PREDIV1_SOURCE(__SOURCE__) (((__SOURCE__) == RCC_PREDIV1_SOURCE_HSE) || \ - ((__SOURCE__) == RCC_PREDIV1_SOURCE_PLL2)) -#endif /* STM32F105xC || STM32F107xC */ - -#if defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F100xB)\ - || defined(STM32F100xE) -#define IS_RCC_HSE_PREDIV(__DIV__) (((__DIV__) == RCC_HSE_PREDIV_DIV1) || ((__DIV__) == RCC_HSE_PREDIV_DIV2) || \ - ((__DIV__) == RCC_HSE_PREDIV_DIV3) || ((__DIV__) == RCC_HSE_PREDIV_DIV4) || \ - ((__DIV__) == RCC_HSE_PREDIV_DIV5) || ((__DIV__) == RCC_HSE_PREDIV_DIV6) || \ - ((__DIV__) == RCC_HSE_PREDIV_DIV7) || ((__DIV__) == RCC_HSE_PREDIV_DIV8) || \ - ((__DIV__) == RCC_HSE_PREDIV_DIV9) || ((__DIV__) == RCC_HSE_PREDIV_DIV10) || \ - ((__DIV__) == RCC_HSE_PREDIV_DIV11) || ((__DIV__) == RCC_HSE_PREDIV_DIV12) || \ - ((__DIV__) == RCC_HSE_PREDIV_DIV13) || ((__DIV__) == RCC_HSE_PREDIV_DIV14) || \ - ((__DIV__) == RCC_HSE_PREDIV_DIV15) || ((__DIV__) == RCC_HSE_PREDIV_DIV16)) - -#else -#define IS_RCC_HSE_PREDIV(__DIV__) (((__DIV__) == RCC_HSE_PREDIV_DIV1) || ((__DIV__) == RCC_HSE_PREDIV_DIV2)) -#endif /* STM32F105xC || STM32F107xC || STM32F100xB || STM32F100xE */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -#define IS_RCC_PLL_MUL(__MUL__) (((__MUL__) == RCC_PLL_MUL4) || ((__MUL__) == RCC_PLL_MUL5) || \ - ((__MUL__) == RCC_PLL_MUL6) || ((__MUL__) == RCC_PLL_MUL7) || \ - ((__MUL__) == RCC_PLL_MUL8) || ((__MUL__) == RCC_PLL_MUL9) || \ - ((__MUL__) == RCC_PLL_MUL6_5)) - -#define IS_RCC_MCO1SOURCE(__SOURCE__) (((__SOURCE__) == RCC_MCO1SOURCE_SYSCLK) || ((__SOURCE__) == RCC_MCO1SOURCE_HSI) \ - || ((__SOURCE__) == RCC_MCO1SOURCE_HSE) || ((__SOURCE__) == RCC_MCO1SOURCE_PLLCLK) \ - || ((__SOURCE__) == RCC_MCO1SOURCE_PLL2CLK) || ((__SOURCE__) == RCC_MCO1SOURCE_PLL3CLK) \ - || ((__SOURCE__) == RCC_MCO1SOURCE_PLL3CLK_DIV2) || ((__SOURCE__) == RCC_MCO1SOURCE_EXT_HSE) \ - || ((__SOURCE__) == RCC_MCO1SOURCE_NOCLOCK)) - -#else -#define IS_RCC_PLL_MUL(__MUL__) (((__MUL__) == RCC_PLL_MUL2) || ((__MUL__) == RCC_PLL_MUL3) || \ - ((__MUL__) == RCC_PLL_MUL4) || ((__MUL__) == RCC_PLL_MUL5) || \ - ((__MUL__) == RCC_PLL_MUL6) || ((__MUL__) == RCC_PLL_MUL7) || \ - ((__MUL__) == RCC_PLL_MUL8) || ((__MUL__) == RCC_PLL_MUL9) || \ - ((__MUL__) == RCC_PLL_MUL10) || ((__MUL__) == RCC_PLL_MUL11) || \ - ((__MUL__) == RCC_PLL_MUL12) || ((__MUL__) == RCC_PLL_MUL13) || \ - ((__MUL__) == RCC_PLL_MUL14) || ((__MUL__) == RCC_PLL_MUL15) || \ - ((__MUL__) == RCC_PLL_MUL16)) - -#define IS_RCC_MCO1SOURCE(__SOURCE__) (((__SOURCE__) == RCC_MCO1SOURCE_SYSCLK) || ((__SOURCE__) == RCC_MCO1SOURCE_HSI) \ - || ((__SOURCE__) == RCC_MCO1SOURCE_HSE) || ((__SOURCE__) == RCC_MCO1SOURCE_PLLCLK) \ - || ((__SOURCE__) == RCC_MCO1SOURCE_NOCLOCK)) - -#endif /* STM32F105xC || STM32F107xC*/ - -#define IS_RCC_ADCPLLCLK_DIV(__ADCCLK__) (((__ADCCLK__) == RCC_ADCPCLK2_DIV2) || ((__ADCCLK__) == RCC_ADCPCLK2_DIV4) || \ - ((__ADCCLK__) == RCC_ADCPCLK2_DIV6) || ((__ADCCLK__) == RCC_ADCPCLK2_DIV8)) - -#if defined(STM32F105xC) || defined(STM32F107xC) -#define IS_RCC_I2S2CLKSOURCE(__SOURCE__) (((__SOURCE__) == RCC_I2S2CLKSOURCE_SYSCLK) || ((__SOURCE__) == RCC_I2S2CLKSOURCE_PLLI2S_VCO)) - -#define IS_RCC_I2S3CLKSOURCE(__SOURCE__) (((__SOURCE__) == RCC_I2S3CLKSOURCE_SYSCLK) || ((__SOURCE__) == RCC_I2S3CLKSOURCE_PLLI2S_VCO)) - -#define IS_RCC_USBPLLCLK_DIV(__USBCLK__) (((__USBCLK__) == RCC_USBCLKSOURCE_PLL_DIV2) || ((__USBCLK__) == RCC_USBCLKSOURCE_PLL_DIV3)) - -#define IS_RCC_PLLI2S_MUL(__MUL__) (((__MUL__) == RCC_PLLI2S_MUL8) || ((__MUL__) == RCC_PLLI2S_MUL9) || \ - ((__MUL__) == RCC_PLLI2S_MUL10) || ((__MUL__) == RCC_PLLI2S_MUL11) || \ - ((__MUL__) == RCC_PLLI2S_MUL12) || ((__MUL__) == RCC_PLLI2S_MUL13) || \ - ((__MUL__) == RCC_PLLI2S_MUL14) || ((__MUL__) == RCC_PLLI2S_MUL16) || \ - ((__MUL__) == RCC_PLLI2S_MUL20)) - -#define IS_RCC_HSE_PREDIV2(__DIV__) (((__DIV__) == RCC_HSE_PREDIV2_DIV1) || ((__DIV__) == RCC_HSE_PREDIV2_DIV2) || \ - ((__DIV__) == RCC_HSE_PREDIV2_DIV3) || ((__DIV__) == RCC_HSE_PREDIV2_DIV4) || \ - ((__DIV__) == RCC_HSE_PREDIV2_DIV5) || ((__DIV__) == RCC_HSE_PREDIV2_DIV6) || \ - ((__DIV__) == RCC_HSE_PREDIV2_DIV7) || ((__DIV__) == RCC_HSE_PREDIV2_DIV8) || \ - ((__DIV__) == RCC_HSE_PREDIV2_DIV9) || ((__DIV__) == RCC_HSE_PREDIV2_DIV10) || \ - ((__DIV__) == RCC_HSE_PREDIV2_DIV11) || ((__DIV__) == RCC_HSE_PREDIV2_DIV12) || \ - ((__DIV__) == RCC_HSE_PREDIV2_DIV13) || ((__DIV__) == RCC_HSE_PREDIV2_DIV14) || \ - ((__DIV__) == RCC_HSE_PREDIV2_DIV15) || ((__DIV__) == RCC_HSE_PREDIV2_DIV16)) - -#define IS_RCC_PLL2(__PLL__) (((__PLL__) == RCC_PLL2_NONE) || ((__PLL__) == RCC_PLL2_OFF) || \ - ((__PLL__) == RCC_PLL2_ON)) - -#define IS_RCC_PLL2_MUL(__MUL__) (((__MUL__) == RCC_PLL2_MUL8) || ((__MUL__) == RCC_PLL2_MUL9) || \ - ((__MUL__) == RCC_PLL2_MUL10) || ((__MUL__) == RCC_PLL2_MUL11) || \ - ((__MUL__) == RCC_PLL2_MUL12) || ((__MUL__) == RCC_PLL2_MUL13) || \ - ((__MUL__) == RCC_PLL2_MUL14) || ((__MUL__) == RCC_PLL2_MUL16) || \ - ((__MUL__) == RCC_PLL2_MUL20)) - -#define IS_RCC_PERIPHCLOCK(__SELECTION__) \ - ((((__SELECTION__) & RCC_PERIPHCLK_RTC) == RCC_PERIPHCLK_RTC) || \ - (((__SELECTION__) & RCC_PERIPHCLK_ADC) == RCC_PERIPHCLK_ADC) || \ - (((__SELECTION__) & RCC_PERIPHCLK_I2S2) == RCC_PERIPHCLK_I2S2) || \ - (((__SELECTION__) & RCC_PERIPHCLK_I2S3) == RCC_PERIPHCLK_I2S3) || \ - (((__SELECTION__) & RCC_PERIPHCLK_USB) == RCC_PERIPHCLK_USB)) - -#elif defined(STM32F103xE) || defined(STM32F103xG) - -#define IS_RCC_I2S2CLKSOURCE(__SOURCE__) ((__SOURCE__) == RCC_I2S2CLKSOURCE_SYSCLK) - -#define IS_RCC_I2S3CLKSOURCE(__SOURCE__) ((__SOURCE__) == RCC_I2S3CLKSOURCE_SYSCLK) - -#define IS_RCC_PERIPHCLOCK(__SELECTION__) \ - ((((__SELECTION__) & RCC_PERIPHCLK_RTC) == RCC_PERIPHCLK_RTC) || \ - (((__SELECTION__) & RCC_PERIPHCLK_ADC) == RCC_PERIPHCLK_ADC) || \ - (((__SELECTION__) & RCC_PERIPHCLK_I2S2) == RCC_PERIPHCLK_I2S2) || \ - (((__SELECTION__) & RCC_PERIPHCLK_I2S3) == RCC_PERIPHCLK_I2S3) || \ - (((__SELECTION__) & RCC_PERIPHCLK_USB) == RCC_PERIPHCLK_USB)) - - -#elif defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) - -#define IS_RCC_PERIPHCLOCK(__SELECTION__) \ - ((((__SELECTION__) & RCC_PERIPHCLK_RTC) == RCC_PERIPHCLK_RTC) || \ - (((__SELECTION__) & RCC_PERIPHCLK_ADC) == RCC_PERIPHCLK_ADC) || \ - (((__SELECTION__) & RCC_PERIPHCLK_USB) == RCC_PERIPHCLK_USB)) - -#else - -#define IS_RCC_PERIPHCLOCK(__SELECTION__) \ - ((((__SELECTION__) & RCC_PERIPHCLK_RTC) == RCC_PERIPHCLK_RTC) || \ - (((__SELECTION__) & RCC_PERIPHCLK_ADC) == RCC_PERIPHCLK_ADC)) - -#endif /* STM32F105xC || STM32F107xC */ - -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) - -#define IS_RCC_USBPLLCLK_DIV(__USBCLK__) (((__USBCLK__) == RCC_USBCLKSOURCE_PLL) || ((__USBCLK__) == RCC_USBCLKSOURCE_PLL_DIV1_5)) - -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ - -/** - * @} - */ - -/* Exported types ------------------------------------------------------------*/ - -/** @defgroup RCCEx_Exported_Types RCCEx Exported Types - * @{ - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -/** - * @brief RCC PLL2 configuration structure definition - */ -typedef struct -{ - uint32_t PLL2State; /*!< The new state of the PLL2. - This parameter can be a value of @ref RCCEx_PLL2_Config */ - - uint32_t PLL2MUL; /*!< PLL2MUL: Multiplication factor for PLL2 VCO input clock - This parameter must be a value of @ref RCCEx_PLL2_Multiplication_Factor*/ - -#if defined(STM32F105xC) || defined(STM32F107xC) - uint32_t HSEPrediv2Value; /*!< The Prediv2 factor value. - This parameter can be a value of @ref RCCEx_Prediv2_Factor */ - -#endif /* STM32F105xC || STM32F107xC */ -} RCC_PLL2InitTypeDef; - -#endif /* STM32F105xC || STM32F107xC */ - -/** - * @brief RCC Internal/External Oscillator (HSE, HSI, LSE and LSI) configuration structure definition - */ -typedef struct -{ - uint32_t OscillatorType; /*!< The oscillators to be configured. - This parameter can be a value of @ref RCC_Oscillator_Type */ - -#if defined(STM32F105xC) || defined(STM32F107xC) - uint32_t Prediv1Source; /*!< The Prediv1 source value. - This parameter can be a value of @ref RCCEx_Prediv1_Source */ -#endif /* STM32F105xC || STM32F107xC */ - - uint32_t HSEState; /*!< The new state of the HSE. - This parameter can be a value of @ref RCC_HSE_Config */ - - uint32_t HSEPredivValue; /*!< The Prediv1 factor value (named PREDIV1 or PLLXTPRE in RM) - This parameter can be a value of @ref RCCEx_Prediv1_Factor */ - - uint32_t LSEState; /*!< The new state of the LSE. - This parameter can be a value of @ref RCC_LSE_Config */ - - uint32_t HSIState; /*!< The new state of the HSI. - This parameter can be a value of @ref RCC_HSI_Config */ - - uint32_t HSICalibrationValue; /*!< The HSI calibration trimming value (default is RCC_HSICALIBRATION_DEFAULT). - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F */ - - uint32_t LSIState; /*!< The new state of the LSI. - This parameter can be a value of @ref RCC_LSI_Config */ - - RCC_PLLInitTypeDef PLL; /*!< PLL structure parameters */ - -#if defined(STM32F105xC) || defined(STM32F107xC) - RCC_PLL2InitTypeDef PLL2; /*!< PLL2 structure parameters */ -#endif /* STM32F105xC || STM32F107xC */ -} RCC_OscInitTypeDef; - -#if defined(STM32F105xC) || defined(STM32F107xC) -/** - * @brief RCC PLLI2S configuration structure definition - */ -typedef struct -{ - uint32_t PLLI2SMUL; /*!< PLLI2SMUL: Multiplication factor for PLLI2S VCO input clock - This parameter must be a value of @ref RCCEx_PLLI2S_Multiplication_Factor*/ - -#if defined(STM32F105xC) || defined(STM32F107xC) - uint32_t HSEPrediv2Value; /*!< The Prediv2 factor value. - This parameter can be a value of @ref RCCEx_Prediv2_Factor */ - -#endif /* STM32F105xC || STM32F107xC */ -} RCC_PLLI2SInitTypeDef; -#endif /* STM32F105xC || STM32F107xC */ - -/** - * @brief RCC extended clocks structure definition - */ -typedef struct -{ - uint32_t PeriphClockSelection; /*!< The Extended Clock to be configured. - This parameter can be a value of @ref RCCEx_Periph_Clock_Selection */ - - uint32_t RTCClockSelection; /*!< specifies the RTC clock source. - This parameter can be a value of @ref RCC_RTC_Clock_Source */ - - uint32_t AdcClockSelection; /*!< ADC clock source - This parameter can be a value of @ref RCCEx_ADC_Prescaler */ - -#if defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC)\ - || defined(STM32F107xC) - uint32_t I2s2ClockSelection; /*!< I2S2 clock source - This parameter can be a value of @ref RCCEx_I2S2_Clock_Source */ - - uint32_t I2s3ClockSelection; /*!< I2S3 clock source - This parameter can be a value of @ref RCCEx_I2S3_Clock_Source */ - -#if defined(STM32F105xC) || defined(STM32F107xC) - RCC_PLLI2SInitTypeDef PLLI2S; /*!< PLL I2S structure parameters - This parameter will be used only when PLLI2S is selected as Clock Source I2S2 or I2S3 */ - -#endif /* STM32F105xC || STM32F107xC */ -#endif /* STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ - -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ - || defined(STM32F105xC) || defined(STM32F107xC) - uint32_t UsbClockSelection; /*!< USB clock source - This parameter can be a value of @ref RCCEx_USB_Prescaler */ - -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ -} RCC_PeriphCLKInitTypeDef; - -/** - * @} - */ - -/* Exported constants --------------------------------------------------------*/ - -/** @defgroup RCCEx_Exported_Constants RCCEx Exported Constants - * @{ - */ - -/** @defgroup RCCEx_Periph_Clock_Selection Periph Clock Selection - * @{ - */ -#define RCC_PERIPHCLK_RTC 0x00000001U -#define RCC_PERIPHCLK_ADC 0x00000002U -#if defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE)\ - || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC) -#define RCC_PERIPHCLK_I2S2 0x00000004U -#define RCC_PERIPHCLK_I2S3 0x00000008U -#endif /* STM32F101xE || STM32F101xG || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ - || defined(STM32F105xC) || defined(STM32F107xC) -#define RCC_PERIPHCLK_USB 0x00000010U -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ - -/** - * @} - */ - -/** @defgroup RCCEx_ADC_Prescaler ADC Prescaler - * @{ - */ -#define RCC_ADCPCLK2_DIV2 RCC_CFGR_ADCPRE_DIV2 -#define RCC_ADCPCLK2_DIV4 RCC_CFGR_ADCPRE_DIV4 -#define RCC_ADCPCLK2_DIV6 RCC_CFGR_ADCPRE_DIV6 -#define RCC_ADCPCLK2_DIV8 RCC_CFGR_ADCPRE_DIV8 - -/** - * @} - */ - -#if defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC)\ - || defined(STM32F107xC) -/** @defgroup RCCEx_I2S2_Clock_Source I2S2 Clock Source - * @{ - */ -#define RCC_I2S2CLKSOURCE_SYSCLK 0x00000000U -#if defined(STM32F105xC) || defined(STM32F107xC) -#define RCC_I2S2CLKSOURCE_PLLI2S_VCO RCC_CFGR2_I2S2SRC -#endif /* STM32F105xC || STM32F107xC */ - -/** - * @} - */ - -/** @defgroup RCCEx_I2S3_Clock_Source I2S3 Clock Source - * @{ - */ -#define RCC_I2S3CLKSOURCE_SYSCLK 0x00000000U -#if defined(STM32F105xC) || defined(STM32F107xC) -#define RCC_I2S3CLKSOURCE_PLLI2S_VCO RCC_CFGR2_I2S3SRC -#endif /* STM32F105xC || STM32F107xC */ - -/** - * @} - */ - -#endif /* STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ - -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) - -/** @defgroup RCCEx_USB_Prescaler USB Prescaler - * @{ - */ -#define RCC_USBCLKSOURCE_PLL RCC_CFGR_USBPRE -#define RCC_USBCLKSOURCE_PLL_DIV1_5 0x00000000U - -/** - * @} - */ - -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ - - -#if defined(STM32F105xC) || defined(STM32F107xC) -/** @defgroup RCCEx_USB_Prescaler USB Prescaler - * @{ - */ -#define RCC_USBCLKSOURCE_PLL_DIV2 RCC_CFGR_OTGFSPRE -#define RCC_USBCLKSOURCE_PLL_DIV3 0x00000000U - -/** - * @} - */ - -/** @defgroup RCCEx_PLLI2S_Multiplication_Factor PLLI2S Multiplication Factor - * @{ - */ - -#define RCC_PLLI2S_MUL8 RCC_CFGR2_PLL3MUL8 /*!< PLLI2S input clock * 8 */ -#define RCC_PLLI2S_MUL9 RCC_CFGR2_PLL3MUL9 /*!< PLLI2S input clock * 9 */ -#define RCC_PLLI2S_MUL10 RCC_CFGR2_PLL3MUL10 /*!< PLLI2S input clock * 10 */ -#define RCC_PLLI2S_MUL11 RCC_CFGR2_PLL3MUL11 /*!< PLLI2S input clock * 11 */ -#define RCC_PLLI2S_MUL12 RCC_CFGR2_PLL3MUL12 /*!< PLLI2S input clock * 12 */ -#define RCC_PLLI2S_MUL13 RCC_CFGR2_PLL3MUL13 /*!< PLLI2S input clock * 13 */ -#define RCC_PLLI2S_MUL14 RCC_CFGR2_PLL3MUL14 /*!< PLLI2S input clock * 14 */ -#define RCC_PLLI2S_MUL16 RCC_CFGR2_PLL3MUL16 /*!< PLLI2S input clock * 16 */ -#define RCC_PLLI2S_MUL20 RCC_CFGR2_PLL3MUL20 /*!< PLLI2S input clock * 20 */ - -/** - * @} - */ -#endif /* STM32F105xC || STM32F107xC */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -/** @defgroup RCCEx_Prediv1_Source Prediv1 Source - * @{ - */ - -#define RCC_PREDIV1_SOURCE_HSE RCC_CFGR2_PREDIV1SRC_HSE -#define RCC_PREDIV1_SOURCE_PLL2 RCC_CFGR2_PREDIV1SRC_PLL2 - -/** - * @} - */ -#endif /* STM32F105xC || STM32F107xC */ - -/** @defgroup RCCEx_Prediv1_Factor HSE Prediv1 Factor - * @{ - */ - -#define RCC_HSE_PREDIV_DIV1 0x00000000U - -#if defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F100xB)\ - || defined(STM32F100xE) -#define RCC_HSE_PREDIV_DIV2 RCC_CFGR2_PREDIV1_DIV2 -#define RCC_HSE_PREDIV_DIV3 RCC_CFGR2_PREDIV1_DIV3 -#define RCC_HSE_PREDIV_DIV4 RCC_CFGR2_PREDIV1_DIV4 -#define RCC_HSE_PREDIV_DIV5 RCC_CFGR2_PREDIV1_DIV5 -#define RCC_HSE_PREDIV_DIV6 RCC_CFGR2_PREDIV1_DIV6 -#define RCC_HSE_PREDIV_DIV7 RCC_CFGR2_PREDIV1_DIV7 -#define RCC_HSE_PREDIV_DIV8 RCC_CFGR2_PREDIV1_DIV8 -#define RCC_HSE_PREDIV_DIV9 RCC_CFGR2_PREDIV1_DIV9 -#define RCC_HSE_PREDIV_DIV10 RCC_CFGR2_PREDIV1_DIV10 -#define RCC_HSE_PREDIV_DIV11 RCC_CFGR2_PREDIV1_DIV11 -#define RCC_HSE_PREDIV_DIV12 RCC_CFGR2_PREDIV1_DIV12 -#define RCC_HSE_PREDIV_DIV13 RCC_CFGR2_PREDIV1_DIV13 -#define RCC_HSE_PREDIV_DIV14 RCC_CFGR2_PREDIV1_DIV14 -#define RCC_HSE_PREDIV_DIV15 RCC_CFGR2_PREDIV1_DIV15 -#define RCC_HSE_PREDIV_DIV16 RCC_CFGR2_PREDIV1_DIV16 -#else -#define RCC_HSE_PREDIV_DIV2 RCC_CFGR_PLLXTPRE -#endif /* STM32F105xC || STM32F107xC || STM32F100xB || STM32F100xE */ - -/** - * @} - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -/** @defgroup RCCEx_Prediv2_Factor HSE Prediv2 Factor - * @{ - */ - -#define RCC_HSE_PREDIV2_DIV1 RCC_CFGR2_PREDIV2_DIV1 /*!< PREDIV2 input clock not divided */ -#define RCC_HSE_PREDIV2_DIV2 RCC_CFGR2_PREDIV2_DIV2 /*!< PREDIV2 input clock divided by 2 */ -#define RCC_HSE_PREDIV2_DIV3 RCC_CFGR2_PREDIV2_DIV3 /*!< PREDIV2 input clock divided by 3 */ -#define RCC_HSE_PREDIV2_DIV4 RCC_CFGR2_PREDIV2_DIV4 /*!< PREDIV2 input clock divided by 4 */ -#define RCC_HSE_PREDIV2_DIV5 RCC_CFGR2_PREDIV2_DIV5 /*!< PREDIV2 input clock divided by 5 */ -#define RCC_HSE_PREDIV2_DIV6 RCC_CFGR2_PREDIV2_DIV6 /*!< PREDIV2 input clock divided by 6 */ -#define RCC_HSE_PREDIV2_DIV7 RCC_CFGR2_PREDIV2_DIV7 /*!< PREDIV2 input clock divided by 7 */ -#define RCC_HSE_PREDIV2_DIV8 RCC_CFGR2_PREDIV2_DIV8 /*!< PREDIV2 input clock divided by 8 */ -#define RCC_HSE_PREDIV2_DIV9 RCC_CFGR2_PREDIV2_DIV9 /*!< PREDIV2 input clock divided by 9 */ -#define RCC_HSE_PREDIV2_DIV10 RCC_CFGR2_PREDIV2_DIV10 /*!< PREDIV2 input clock divided by 10 */ -#define RCC_HSE_PREDIV2_DIV11 RCC_CFGR2_PREDIV2_DIV11 /*!< PREDIV2 input clock divided by 11 */ -#define RCC_HSE_PREDIV2_DIV12 RCC_CFGR2_PREDIV2_DIV12 /*!< PREDIV2 input clock divided by 12 */ -#define RCC_HSE_PREDIV2_DIV13 RCC_CFGR2_PREDIV2_DIV13 /*!< PREDIV2 input clock divided by 13 */ -#define RCC_HSE_PREDIV2_DIV14 RCC_CFGR2_PREDIV2_DIV14 /*!< PREDIV2 input clock divided by 14 */ -#define RCC_HSE_PREDIV2_DIV15 RCC_CFGR2_PREDIV2_DIV15 /*!< PREDIV2 input clock divided by 15 */ -#define RCC_HSE_PREDIV2_DIV16 RCC_CFGR2_PREDIV2_DIV16 /*!< PREDIV2 input clock divided by 16 */ - -/** - * @} - */ - -/** @defgroup RCCEx_PLL2_Config PLL Config - * @{ - */ -#define RCC_PLL2_NONE 0x00000000U -#define RCC_PLL2_OFF 0x00000001U -#define RCC_PLL2_ON 0x00000002U - -/** - * @} - */ - -/** @defgroup RCCEx_PLL2_Multiplication_Factor PLL2 Multiplication Factor - * @{ - */ - -#define RCC_PLL2_MUL8 RCC_CFGR2_PLL2MUL8 /*!< PLL2 input clock * 8 */ -#define RCC_PLL2_MUL9 RCC_CFGR2_PLL2MUL9 /*!< PLL2 input clock * 9 */ -#define RCC_PLL2_MUL10 RCC_CFGR2_PLL2MUL10 /*!< PLL2 input clock * 10 */ -#define RCC_PLL2_MUL11 RCC_CFGR2_PLL2MUL11 /*!< PLL2 input clock * 11 */ -#define RCC_PLL2_MUL12 RCC_CFGR2_PLL2MUL12 /*!< PLL2 input clock * 12 */ -#define RCC_PLL2_MUL13 RCC_CFGR2_PLL2MUL13 /*!< PLL2 input clock * 13 */ -#define RCC_PLL2_MUL14 RCC_CFGR2_PLL2MUL14 /*!< PLL2 input clock * 14 */ -#define RCC_PLL2_MUL16 RCC_CFGR2_PLL2MUL16 /*!< PLL2 input clock * 16 */ -#define RCC_PLL2_MUL20 RCC_CFGR2_PLL2MUL20 /*!< PLL2 input clock * 20 */ - -/** - * @} - */ - -#endif /* STM32F105xC || STM32F107xC */ - -/** @defgroup RCCEx_PLL_Multiplication_Factor PLL Multiplication Factor - * @{ - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -#else -#define RCC_PLL_MUL2 RCC_CFGR_PLLMULL2 -#define RCC_PLL_MUL3 RCC_CFGR_PLLMULL3 -#endif /* STM32F105xC || STM32F107xC */ -#define RCC_PLL_MUL4 RCC_CFGR_PLLMULL4 -#define RCC_PLL_MUL5 RCC_CFGR_PLLMULL5 -#define RCC_PLL_MUL6 RCC_CFGR_PLLMULL6 -#define RCC_PLL_MUL7 RCC_CFGR_PLLMULL7 -#define RCC_PLL_MUL8 RCC_CFGR_PLLMULL8 -#define RCC_PLL_MUL9 RCC_CFGR_PLLMULL9 -#if defined(STM32F105xC) || defined(STM32F107xC) -#define RCC_PLL_MUL6_5 RCC_CFGR_PLLMULL6_5 -#else -#define RCC_PLL_MUL10 RCC_CFGR_PLLMULL10 -#define RCC_PLL_MUL11 RCC_CFGR_PLLMULL11 -#define RCC_PLL_MUL12 RCC_CFGR_PLLMULL12 -#define RCC_PLL_MUL13 RCC_CFGR_PLLMULL13 -#define RCC_PLL_MUL14 RCC_CFGR_PLLMULL14 -#define RCC_PLL_MUL15 RCC_CFGR_PLLMULL15 -#define RCC_PLL_MUL16 RCC_CFGR_PLLMULL16 -#endif /* STM32F105xC || STM32F107xC */ - -/** - * @} - */ - -/** @defgroup RCCEx_MCO1_Clock_Source MCO1 Clock Source - * @{ - */ -#define RCC_MCO1SOURCE_NOCLOCK ((uint32_t)RCC_CFGR_MCO_NOCLOCK) -#define RCC_MCO1SOURCE_SYSCLK ((uint32_t)RCC_CFGR_MCO_SYSCLK) -#define RCC_MCO1SOURCE_HSI ((uint32_t)RCC_CFGR_MCO_HSI) -#define RCC_MCO1SOURCE_HSE ((uint32_t)RCC_CFGR_MCO_HSE) -#define RCC_MCO1SOURCE_PLLCLK ((uint32_t)RCC_CFGR_MCO_PLLCLK_DIV2) -#if defined(STM32F105xC) || defined(STM32F107xC) -#define RCC_MCO1SOURCE_PLL2CLK ((uint32_t)RCC_CFGR_MCO_PLL2CLK) -#define RCC_MCO1SOURCE_PLL3CLK_DIV2 ((uint32_t)RCC_CFGR_MCO_PLL3CLK_DIV2) -#define RCC_MCO1SOURCE_EXT_HSE ((uint32_t)RCC_CFGR_MCO_EXT_HSE) -#define RCC_MCO1SOURCE_PLL3CLK ((uint32_t)RCC_CFGR_MCO_PLL3CLK) -#endif /* STM32F105xC || STM32F107xC*/ -/** - * @} - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -/** @defgroup RCCEx_Interrupt RCCEx Interrupt - * @{ - */ -#define RCC_IT_PLL2RDY ((uint8_t)RCC_CIR_PLL2RDYF) -#define RCC_IT_PLLI2SRDY ((uint8_t)RCC_CIR_PLL3RDYF) -/** - * @} - */ - -/** @defgroup RCCEx_Flag RCCEx Flag - * Elements values convention: 0XXYYYYYb - * - YYYYY : Flag position in the register - * - XX : Register index - * - 01: CR register - * @{ - */ -/* Flags in the CR register */ -#define RCC_FLAG_PLL2RDY ((uint8_t)((CR_REG_INDEX << 5U) | RCC_CR_PLL2RDY_Pos)) -#define RCC_FLAG_PLLI2SRDY ((uint8_t)((CR_REG_INDEX << 5U) | RCC_CR_PLL3RDY_Pos)) -/** - * @} - */ -#endif /* STM32F105xC || STM32F107xC*/ - -/** - * @} - */ - -/* Exported macro ------------------------------------------------------------*/ -/** @defgroup RCCEx_Exported_Macros RCCEx Exported Macros - * @{ - */ - -/** @defgroup RCCEx_Peripheral_Clock_Enable_Disable Peripheral Clock Enable Disable - * @brief Enable or disable the AHB1 peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ - -#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ - || defined(STM32F103xG) || defined(STM32F105xC) || defined (STM32F107xC)\ - || defined (STM32F100xE) -#define __HAL_RCC_DMA2_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->AHBENR, RCC_AHBENR_DMA2EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_DMA2EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_DMA2_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_DMA2EN)) -#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG || STM32F105xC || STM32F107xC || STM32F100xE */ - -#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ - || defined(STM32F103xG) || defined (STM32F100xE) -#define __HAL_RCC_FSMC_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->AHBENR, RCC_AHBENR_FSMCEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_FSMCEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_FSMC_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_FSMCEN)) -#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG || STM32F100xE */ - -#if defined(STM32F103xE) || defined(STM32F103xG) -#define __HAL_RCC_SDIO_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->AHBENR, RCC_AHBENR_SDIOEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_SDIOEN);\ - UNUSED(tmpreg); \ - } while(0U) - - -#define __HAL_RCC_SDIO_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_SDIOEN)) -#endif /* STM32F103xE || STM32F103xG */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -#define __HAL_RCC_USB_OTG_FS_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->AHBENR, RCC_AHBENR_OTGFSEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_OTGFSEN);\ - UNUSED(tmpreg); \ - } while(0U) - - -#define __HAL_RCC_USB_OTG_FS_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_OTGFSEN)) -#endif /* STM32F105xC || STM32F107xC*/ - -#if defined(STM32F107xC) -#define __HAL_RCC_ETHMAC_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_ETHMACTX_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACTXEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACTXEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_ETHMACRX_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACRXEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACRXEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_ETHMAC_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_ETHMACEN)) -#define __HAL_RCC_ETHMACTX_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_ETHMACTXEN)) -#define __HAL_RCC_ETHMACRX_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_ETHMACRXEN)) - -/** - * @brief Enable ETHERNET clock. - */ -#define __HAL_RCC_ETH_CLK_ENABLE() do { \ - __HAL_RCC_ETHMAC_CLK_ENABLE(); \ - __HAL_RCC_ETHMACTX_CLK_ENABLE(); \ - __HAL_RCC_ETHMACRX_CLK_ENABLE(); \ - } while(0U) -/** - * @brief Disable ETHERNET clock. - */ -#define __HAL_RCC_ETH_CLK_DISABLE() do { \ - __HAL_RCC_ETHMACTX_CLK_DISABLE(); \ - __HAL_RCC_ETHMACRX_CLK_DISABLE(); \ - __HAL_RCC_ETHMAC_CLK_DISABLE(); \ - } while(0U) - -#endif /* STM32F107xC*/ - -/** - * @} - */ - -/** @defgroup RCCEx_AHB1_Peripheral_Clock_Enable_Disable_Status AHB1 Peripheral Clock Enable Disable Status - * @brief Get the enable or disable status of the AHB1 peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ - -#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ - || defined(STM32F103xG) || defined(STM32F105xC) || defined (STM32F107xC)\ - || defined (STM32F100xE) -#define __HAL_RCC_DMA2_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_DMA2EN)) != RESET) -#define __HAL_RCC_DMA2_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_DMA2EN)) == RESET) -#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG || STM32F105xC || STM32F107xC || STM32F100xE */ -#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ - || defined(STM32F103xG) || defined (STM32F100xE) -#define __HAL_RCC_FSMC_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_FSMCEN)) != RESET) -#define __HAL_RCC_FSMC_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_FSMCEN)) == RESET) -#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG || STM32F100xE */ -#if defined(STM32F103xE) || defined(STM32F103xG) -#define __HAL_RCC_SDIO_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_SDIOEN)) != RESET) -#define __HAL_RCC_SDIO_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_SDIOEN)) == RESET) -#endif /* STM32F103xE || STM32F103xG */ -#if defined(STM32F105xC) || defined(STM32F107xC) -#define __HAL_RCC_USB_OTG_FS_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_OTGFSEN)) != RESET) -#define __HAL_RCC_USB_OTG_FS_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_OTGFSEN)) == RESET) -#endif /* STM32F105xC || STM32F107xC*/ -#if defined(STM32F107xC) -#define __HAL_RCC_ETHMAC_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACEN)) != RESET) -#define __HAL_RCC_ETHMAC_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACEN)) == RESET) -#define __HAL_RCC_ETHMACTX_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACTXEN)) != RESET) -#define __HAL_RCC_ETHMACTX_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACTXEN)) == RESET) -#define __HAL_RCC_ETHMACRX_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACRXEN)) != RESET) -#define __HAL_RCC_ETHMACRX_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACRXEN)) == RESET) -#endif /* STM32F107xC*/ - -/** - * @} - */ - -/** @defgroup RCCEx_APB1_Clock_Enable_Disable APB1 Clock Enable Disable - * @brief Enable or disable the Low Speed APB (APB1) peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ - -#if defined(STM32F103x6) || defined(STM32F103xB) || defined(STM32F103xE)\ - || defined(STM32F103xG) || defined(STM32F105xC) ||defined(STM32F107xC) -#define __HAL_RCC_CAN1_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_CAN1EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_CAN1EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_CAN1_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_CAN1EN)) -#endif /* STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ - -#if defined(STM32F100xB) || defined(STM32F100xE) || defined(STM32F101xB)\ - || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F102xB)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ - || defined(STM32F105xC) || defined(STM32F107xC) -#define __HAL_RCC_TIM4_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM4EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM4EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_SPI2_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI2EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI2EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_USART3_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_USART3EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_USART3EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_I2C2_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_I2C2EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_I2C2EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM4_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM4EN)) -#define __HAL_RCC_SPI2_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_SPI2EN)) -#define __HAL_RCC_USART3_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_USART3EN)) -#define __HAL_RCC_I2C2_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_I2C2EN)) -#endif /* STM32F100xB || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ - -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) -#define __HAL_RCC_USB_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_USBEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_USBEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_USB_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_USBEN)) -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ - -#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ - || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC) -#define __HAL_RCC_TIM5_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM5EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM5EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM6_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM6EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM6EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM7_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM7EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM7EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_SPI3_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI3EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI3EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_UART4_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_UART4EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_UART4EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_UART5_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_UART5EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_UART5EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_DAC_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_DACEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_DACEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM5_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM5EN)) -#define __HAL_RCC_TIM6_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM6EN)) -#define __HAL_RCC_TIM7_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM7EN)) -#define __HAL_RCC_SPI3_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_SPI3EN)) -#define __HAL_RCC_UART4_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_UART4EN)) -#define __HAL_RCC_UART5_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_UART5EN)) -#define __HAL_RCC_DAC_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_DACEN)) -#endif /* STM32F101xE || STM32F103xE || STM32F101xG || (...) || STM32F105xC || STM32F107xC */ - -#if defined(STM32F100xB) || defined (STM32F100xE) -#define __HAL_RCC_TIM6_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM6EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM6EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM7_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM7EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM7EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_DAC_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_DACEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_DACEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_CEC_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_CECEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_CECEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM6_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM6EN)) -#define __HAL_RCC_TIM7_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM7EN)) -#define __HAL_RCC_DAC_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_DACEN)) -#define __HAL_RCC_CEC_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_CECEN)) -#endif /* STM32F100xB || STM32F100xE */ - -#ifdef STM32F100xE -#define __HAL_RCC_TIM5_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM5EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM5EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM12_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM12EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM12EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM13_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM13EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM13EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM14_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM14EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM14EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_SPI3_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI3EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI3EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_UART4_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_UART4EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_UART4EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_UART5_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_UART5EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_UART5EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM5_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM5EN)) -#define __HAL_RCC_TIM12_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM12EN)) -#define __HAL_RCC_TIM13_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM13EN)) -#define __HAL_RCC_TIM14_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM14EN)) -#define __HAL_RCC_SPI3_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_SPI3EN)) -#define __HAL_RCC_UART4_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_UART4EN)) -#define __HAL_RCC_UART5_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_UART5EN)) -#endif /* STM32F100xE */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -#define __HAL_RCC_CAN2_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_CAN2EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_CAN2EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_CAN2_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_CAN2EN)) -#endif /* STM32F105xC || STM32F107xC */ - -#if defined(STM32F101xG) || defined(STM32F103xG) -#define __HAL_RCC_TIM12_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM12EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM12EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM13_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM13EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM13EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM14_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM14EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM14EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM12_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM12EN)) -#define __HAL_RCC_TIM13_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM13EN)) -#define __HAL_RCC_TIM14_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM14EN)) -#endif /* STM32F101xG || STM32F103xG*/ - -/** - * @} - */ - -/** @defgroup RCCEx_APB1_Peripheral_Clock_Enable_Disable_Status APB1 Peripheral Clock Enable Disable Status - * @brief Get the enable or disable status of the APB1 peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ - -#if defined(STM32F103x6) || defined(STM32F103xB) || defined(STM32F103xE)\ - || defined(STM32F103xG) || defined(STM32F105xC) ||defined(STM32F107xC) -#define __HAL_RCC_CAN1_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CAN1EN)) != RESET) -#define __HAL_RCC_CAN1_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CAN1EN)) == RESET) -#endif /* STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ -#if defined(STM32F100xB) || defined(STM32F100xE) || defined(STM32F101xB)\ - || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F102xB)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ - || defined(STM32F105xC) || defined(STM32F107xC) -#define __HAL_RCC_TIM4_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM4EN)) != RESET) -#define __HAL_RCC_TIM4_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM4EN)) == RESET) -#define __HAL_RCC_SPI2_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI2EN)) != RESET) -#define __HAL_RCC_SPI2_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI2EN)) == RESET) -#define __HAL_RCC_USART3_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USART3EN)) != RESET) -#define __HAL_RCC_USART3_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USART3EN)) == RESET) -#define __HAL_RCC_I2C2_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_I2C2EN)) != RESET) -#define __HAL_RCC_I2C2_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_I2C2EN)) == RESET) -#endif /* STM32F100xB || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) -#define __HAL_RCC_USB_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USBEN)) != RESET) -#define __HAL_RCC_USB_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USBEN)) == RESET) -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ -#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ - || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC) -#define __HAL_RCC_TIM5_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM5EN)) != RESET) -#define __HAL_RCC_TIM5_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM5EN)) == RESET) -#define __HAL_RCC_TIM6_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM6EN)) != RESET) -#define __HAL_RCC_TIM6_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM6EN)) == RESET) -#define __HAL_RCC_TIM7_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM7EN)) != RESET) -#define __HAL_RCC_TIM7_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM7EN)) == RESET) -#define __HAL_RCC_SPI3_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI3EN)) != RESET) -#define __HAL_RCC_SPI3_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI3EN)) == RESET) -#define __HAL_RCC_UART4_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART4EN)) != RESET) -#define __HAL_RCC_UART4_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART4EN)) == RESET) -#define __HAL_RCC_UART5_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART5EN)) != RESET) -#define __HAL_RCC_UART5_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART5EN)) == RESET) -#define __HAL_RCC_DAC_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_DACEN)) != RESET) -#define __HAL_RCC_DAC_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_DACEN)) == RESET) -#endif /* STM32F101xE || STM32F103xE || STM32F101xG || (...) || STM32F105xC || STM32F107xC */ -#if defined(STM32F100xB) || defined (STM32F100xE) -#define __HAL_RCC_TIM6_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM6EN)) != RESET) -#define __HAL_RCC_TIM6_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM6EN)) == RESET) -#define __HAL_RCC_TIM7_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM7EN)) != RESET) -#define __HAL_RCC_TIM7_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM7EN)) == RESET) -#define __HAL_RCC_DAC_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_DACEN)) != RESET) -#define __HAL_RCC_DAC_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_DACEN)) == RESET) -#define __HAL_RCC_CEC_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CECEN)) != RESET) -#define __HAL_RCC_CEC_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CECEN)) == RESET) -#endif /* STM32F100xB || STM32F100xE */ -#ifdef STM32F100xE -#define __HAL_RCC_TIM5_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM5EN)) != RESET) -#define __HAL_RCC_TIM5_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM5EN)) == RESET) -#define __HAL_RCC_TIM12_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM12EN)) != RESET) -#define __HAL_RCC_TIM12_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM12EN)) == RESET) -#define __HAL_RCC_TIM13_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM13EN)) != RESET) -#define __HAL_RCC_TIM13_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM13EN)) == RESET) -#define __HAL_RCC_TIM14_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM14EN)) != RESET) -#define __HAL_RCC_TIM14_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM14EN)) == RESET) -#define __HAL_RCC_SPI3_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI3EN)) != RESET) -#define __HAL_RCC_SPI3_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI3EN)) == RESET) -#define __HAL_RCC_UART4_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART4EN)) != RESET) -#define __HAL_RCC_UART4_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART4EN)) == RESET) -#define __HAL_RCC_UART5_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART5EN)) != RESET) -#define __HAL_RCC_UART5_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART5EN)) == RESET) -#define __HAL_RCC_CAN2_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CAN2EN)) != RESET) -#define __HAL_RCC_CAN2_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CAN2EN)) == RESET) -#endif /* STM32F100xE */ -#if defined(STM32F105xC) || defined(STM32F107xC) -#define __HAL_RCC_TIM12_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM12EN)) != RESET) -#define __HAL_RCC_TIM12_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM12EN)) == RESET) -#endif /* STM32F105xC || STM32F107xC */ -#if defined(STM32F101xG) || defined(STM32F103xG) -#define __HAL_RCC_TIM13_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM13EN)) != RESET) -#define __HAL_RCC_TIM13_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM13EN)) == RESET) -#define __HAL_RCC_TIM14_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM14EN)) != RESET) -#define __HAL_RCC_TIM14_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM14EN)) == RESET) -#endif /* STM32F101xG || STM32F103xG*/ - -/** - * @} - */ - -/** @defgroup RCCEx_APB2_Clock_Enable_Disable APB2 Clock Enable Disable - * @brief Enable or disable the High Speed APB (APB2) peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ - -#if defined(STM32F101xG) || defined(STM32F103x6) || defined(STM32F103xB)\ - || defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F103xE)\ - || defined(STM32F103xG) -#define __HAL_RCC_ADC2_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC2EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC2EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_ADC2_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_ADC2EN)) -#endif /* STM32F101xG || STM32F103x6 || STM32F103xB || STM32F105xC || STM32F107xC || STM32F103xE || STM32F103xG */ - -#if defined(STM32F100xB) || defined(STM32F100xE) -#define __HAL_RCC_TIM15_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM15EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM15EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM16_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM16EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM16EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM17_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM17EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM17EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM15_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM15EN)) -#define __HAL_RCC_TIM16_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM16EN)) -#define __HAL_RCC_TIM17_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM17EN)) -#endif /* STM32F100xB || STM32F100xE */ - -#if defined(STM32F100xE) || defined(STM32F101xB) || defined(STM32F101xE)\ - || defined(STM32F101xG) || defined(STM32F100xB) || defined(STM32F103xB)\ - || defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC)\ - || defined(STM32F107xC) -#define __HAL_RCC_GPIOE_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPEEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPEEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_GPIOE_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPEEN)) -#endif /* STM32F101x6 || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ - -#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ - || defined(STM32F103xG) -#define __HAL_RCC_GPIOF_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPFEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPFEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_GPIOG_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPGEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPGEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_GPIOF_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPFEN)) -#define __HAL_RCC_GPIOG_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPGEN)) -#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG*/ - -#if defined(STM32F103xE) || defined(STM32F103xG) -#define __HAL_RCC_TIM8_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM8EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM8EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_ADC3_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC3EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC3EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM8_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM8EN)) -#define __HAL_RCC_ADC3_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_ADC3EN)) -#endif /* STM32F103xE || STM32F103xG */ - -#if defined(STM32F100xE) -#define __HAL_RCC_GPIOF_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPFEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPFEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_GPIOG_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPGEN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPGEN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_GPIOF_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPFEN)) -#define __HAL_RCC_GPIOG_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPGEN)) -#endif /* STM32F100xE */ - -#if defined(STM32F101xG) || defined(STM32F103xG) -#define __HAL_RCC_TIM9_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM9EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM9EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM10_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM10EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM10EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM11_CLK_ENABLE() do { \ - __IO uint32_t tmpreg; \ - SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM11EN);\ - /* Delay after an RCC peripheral clock enabling */ \ - tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM11EN);\ - UNUSED(tmpreg); \ - } while(0U) - -#define __HAL_RCC_TIM9_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM9EN)) -#define __HAL_RCC_TIM10_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM10EN)) -#define __HAL_RCC_TIM11_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM11EN)) -#endif /* STM32F101xG || STM32F103xG */ - -/** - * @} - */ - -/** @defgroup RCCEx_APB2_Peripheral_Clock_Enable_Disable_Status APB2 Peripheral Clock Enable Disable Status - * @brief Get the enable or disable status of the APB2 peripheral clock. - * @note After reset, the peripheral clock (used for registers read/write access) - * is disabled and the application software has to enable this clock before - * using it. - * @{ - */ - -#if defined(STM32F101xG) || defined(STM32F103x6) || defined(STM32F103xB)\ - || defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F103xE)\ - || defined(STM32F103xG) -#define __HAL_RCC_ADC2_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC2EN)) != RESET) -#define __HAL_RCC_ADC2_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC2EN)) == RESET) -#endif /* STM32F101xG || STM32F103x6 || STM32F103xB || STM32F105xC || STM32F107xC || STM32F103xE || STM32F103xG */ -#if defined(STM32F100xB) || defined(STM32F100xE) -#define __HAL_RCC_TIM15_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM15EN)) != RESET) -#define __HAL_RCC_TIM15_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM15EN)) == RESET) -#define __HAL_RCC_TIM16_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM16EN)) != RESET) -#define __HAL_RCC_TIM16_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM16EN)) == RESET) -#define __HAL_RCC_TIM17_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM17EN)) != RESET) -#define __HAL_RCC_TIM17_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM17EN)) == RESET) -#endif /* STM32F100xB || STM32F100xE */ -#if defined(STM32F100xE) || defined(STM32F101xB) || defined(STM32F101xE)\ - || defined(STM32F101xG) || defined(STM32F100xB) || defined(STM32F103xB)\ - || defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC)\ - || defined(STM32F107xC) -#define __HAL_RCC_GPIOE_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPEEN)) != RESET) -#define __HAL_RCC_GPIOE_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPEEN)) == RESET) -#endif /* STM32F101x6 || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ -#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ - || defined(STM32F103xG) -#define __HAL_RCC_GPIOF_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPFEN)) != RESET) -#define __HAL_RCC_GPIOF_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPFEN)) == RESET) -#define __HAL_RCC_GPIOG_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPGEN)) != RESET) -#define __HAL_RCC_GPIOG_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPGEN)) == RESET) -#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG*/ -#if defined(STM32F103xE) || defined(STM32F103xG) -#define __HAL_RCC_TIM8_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM8EN)) != RESET) -#define __HAL_RCC_TIM8_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM8EN)) == RESET) -#define __HAL_RCC_ADC3_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC3EN)) != RESET) -#define __HAL_RCC_ADC3_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC3EN)) == RESET) -#endif /* STM32F103xE || STM32F103xG */ -#if defined(STM32F100xE) -#define __HAL_RCC_GPIOF_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPFEN)) != RESET) -#define __HAL_RCC_GPIOF_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPFEN)) == RESET) -#define __HAL_RCC_GPIOG_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPGEN)) != RESET) -#define __HAL_RCC_GPIOG_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPGEN)) == RESET) -#endif /* STM32F100xE */ -#if defined(STM32F101xG) || defined(STM32F103xG) -#define __HAL_RCC_TIM9_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM9EN)) != RESET) -#define __HAL_RCC_TIM9_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM9EN)) == RESET) -#define __HAL_RCC_TIM10_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM10EN)) != RESET) -#define __HAL_RCC_TIM10_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM10EN)) == RESET) -#define __HAL_RCC_TIM11_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM11EN)) != RESET) -#define __HAL_RCC_TIM11_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM11EN)) == RESET) -#endif /* STM32F101xG || STM32F103xG */ - -/** - * @} - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -/** @defgroup RCCEx_Peripheral_Clock_Force_Release Peripheral Clock Force Release - * @brief Force or release AHB peripheral reset. - * @{ - */ -#define __HAL_RCC_AHB_FORCE_RESET() (RCC->AHBRSTR = 0xFFFFFFFFU) -#define __HAL_RCC_USB_OTG_FS_FORCE_RESET() (RCC->AHBRSTR |= (RCC_AHBRSTR_OTGFSRST)) -#if defined(STM32F107xC) -#define __HAL_RCC_ETHMAC_FORCE_RESET() (RCC->AHBRSTR |= (RCC_AHBRSTR_ETHMACRST)) -#endif /* STM32F107xC */ - -#define __HAL_RCC_AHB_RELEASE_RESET() (RCC->AHBRSTR = 0x00) -#define __HAL_RCC_USB_OTG_FS_RELEASE_RESET() (RCC->AHBRSTR &= ~(RCC_AHBRSTR_OTGFSRST)) -#if defined(STM32F107xC) -#define __HAL_RCC_ETHMAC_RELEASE_RESET() (RCC->AHBRSTR &= ~(RCC_AHBRSTR_ETHMACRST)) -#endif /* STM32F107xC */ - -/** - * @} - */ -#endif /* STM32F105xC || STM32F107xC */ - -/** @defgroup RCCEx_APB1_Force_Release_Reset APB1 Force Release Reset - * @brief Force or release APB1 peripheral reset. - * @{ - */ - -#if defined(STM32F103x6) || defined(STM32F103xB) || defined(STM32F103xE)\ - || defined(STM32F103xG) || defined(STM32F105xC) ||defined(STM32F107xC) -#define __HAL_RCC_CAN1_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_CAN1RST)) - -#define __HAL_RCC_CAN1_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_CAN1RST)) -#endif /* STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ - -#if defined(STM32F100xB) || defined(STM32F100xE) || defined(STM32F101xB)\ - || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F102xB)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ - || defined(STM32F105xC) || defined(STM32F107xC) -#define __HAL_RCC_TIM4_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM4RST)) -#define __HAL_RCC_SPI2_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_SPI2RST)) -#define __HAL_RCC_USART3_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_USART3RST)) -#define __HAL_RCC_I2C2_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_I2C2RST)) - -#define __HAL_RCC_TIM4_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM4RST)) -#define __HAL_RCC_SPI2_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_SPI2RST)) -#define __HAL_RCC_USART3_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_USART3RST)) -#define __HAL_RCC_I2C2_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_I2C2RST)) -#endif /* STM32F100xB || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ - -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) -#define __HAL_RCC_USB_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_USBRST)) -#define __HAL_RCC_USB_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_USBRST)) -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ - -#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ - || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC) -#define __HAL_RCC_TIM5_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM5RST)) -#define __HAL_RCC_TIM6_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM6RST)) -#define __HAL_RCC_TIM7_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM7RST)) -#define __HAL_RCC_SPI3_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_SPI3RST)) -#define __HAL_RCC_UART4_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_UART4RST)) -#define __HAL_RCC_UART5_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_UART5RST)) -#define __HAL_RCC_DAC_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_DACRST)) - -#define __HAL_RCC_TIM5_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM5RST)) -#define __HAL_RCC_TIM6_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM6RST)) -#define __HAL_RCC_TIM7_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM7RST)) -#define __HAL_RCC_SPI3_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_SPI3RST)) -#define __HAL_RCC_UART4_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_UART4RST)) -#define __HAL_RCC_UART5_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_UART5RST)) -#define __HAL_RCC_DAC_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_DACRST)) -#endif /* STM32F101xE || STM32F103xE || STM32F101xG || (...) || STM32F105xC || STM32F107xC */ - -#if defined(STM32F100xB) || defined (STM32F100xE) -#define __HAL_RCC_TIM6_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM6RST)) -#define __HAL_RCC_TIM7_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM7RST)) -#define __HAL_RCC_DAC_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_DACRST)) -#define __HAL_RCC_CEC_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_CECRST)) - -#define __HAL_RCC_TIM6_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM6RST)) -#define __HAL_RCC_TIM7_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM7RST)) -#define __HAL_RCC_DAC_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_DACRST)) -#define __HAL_RCC_CEC_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_CECRST)) -#endif /* STM32F100xB || STM32F100xE */ - -#if defined (STM32F100xE) -#define __HAL_RCC_TIM5_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM5RST)) -#define __HAL_RCC_TIM12_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM12RST)) -#define __HAL_RCC_TIM13_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM13RST)) -#define __HAL_RCC_TIM14_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM14RST)) -#define __HAL_RCC_SPI3_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_SPI3RST)) -#define __HAL_RCC_UART4_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_UART4RST)) -#define __HAL_RCC_UART5_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_UART5RST)) - -#define __HAL_RCC_TIM5_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM5RST)) -#define __HAL_RCC_TIM12_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM12RST)) -#define __HAL_RCC_TIM13_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM13RST)) -#define __HAL_RCC_TIM14_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM14RST)) -#define __HAL_RCC_SPI3_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_SPI3RST)) -#define __HAL_RCC_UART4_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_UART4RST)) -#define __HAL_RCC_UART5_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_UART5RST)) -#endif /* STM32F100xE */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -#define __HAL_RCC_CAN2_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_CAN2RST)) - -#define __HAL_RCC_CAN2_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_CAN2RST)) -#endif /* STM32F105xC || STM32F107xC */ - -#if defined(STM32F101xG) || defined(STM32F103xG) -#define __HAL_RCC_TIM12_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM12RST)) -#define __HAL_RCC_TIM13_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM13RST)) -#define __HAL_RCC_TIM14_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM14RST)) - -#define __HAL_RCC_TIM12_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM12RST)) -#define __HAL_RCC_TIM13_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM13RST)) -#define __HAL_RCC_TIM14_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM14RST)) -#endif /* STM32F101xG || STM32F103xG */ - -/** - * @} - */ - -/** @defgroup RCCEx_APB2_Force_Release_Reset APB2 Force Release Reset - * @brief Force or release APB2 peripheral reset. - * @{ - */ - -#if defined(STM32F101xG) || defined(STM32F103x6) || defined(STM32F103xB)\ - || defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F103xE)\ - || defined(STM32F103xG) -#define __HAL_RCC_ADC2_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_ADC2RST)) - -#define __HAL_RCC_ADC2_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_ADC2RST)) -#endif /* STM32F101xG || STM32F103x6 || STM32F103xB || STM32F105xC || STM32F107xC || STM32F103xE || STM32F103xG */ - -#if defined(STM32F100xB) || defined(STM32F100xE) -#define __HAL_RCC_TIM15_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM15RST)) -#define __HAL_RCC_TIM16_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM16RST)) -#define __HAL_RCC_TIM17_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM17RST)) - -#define __HAL_RCC_TIM15_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM15RST)) -#define __HAL_RCC_TIM16_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM16RST)) -#define __HAL_RCC_TIM17_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM17RST)) -#endif /* STM32F100xB || STM32F100xE */ - -#if defined(STM32F100xE) || defined(STM32F101xB) || defined(STM32F101xE)\ - || defined(STM32F101xG) || defined(STM32F100xB) || defined(STM32F103xB)\ - || defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC)\ - || defined(STM32F107xC) -#define __HAL_RCC_GPIOE_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPERST)) - -#define __HAL_RCC_GPIOE_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPERST)) -#endif /* STM32F101x6 || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ - -#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ - || defined(STM32F103xG) -#define __HAL_RCC_GPIOF_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPFRST)) -#define __HAL_RCC_GPIOG_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPGRST)) - -#define __HAL_RCC_GPIOF_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPFRST)) -#define __HAL_RCC_GPIOG_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPGRST)) -#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG*/ - -#if defined(STM32F103xE) || defined(STM32F103xG) -#define __HAL_RCC_TIM8_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM8RST)) -#define __HAL_RCC_ADC3_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_ADC3RST)) - -#define __HAL_RCC_TIM8_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM8RST)) -#define __HAL_RCC_ADC3_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_ADC3RST)) -#endif /* STM32F103xE || STM32F103xG */ - -#if defined(STM32F100xE) -#define __HAL_RCC_GPIOF_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPFRST)) -#define __HAL_RCC_GPIOG_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPGRST)) - -#define __HAL_RCC_GPIOF_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPFRST)) -#define __HAL_RCC_GPIOG_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPGRST)) -#endif /* STM32F100xE */ - -#if defined(STM32F101xG) || defined(STM32F103xG) -#define __HAL_RCC_TIM9_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM9RST)) -#define __HAL_RCC_TIM10_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM10RST)) -#define __HAL_RCC_TIM11_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM11RST)) - -#define __HAL_RCC_TIM9_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM9RST)) -#define __HAL_RCC_TIM10_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM10RST)) -#define __HAL_RCC_TIM11_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM11RST)) -#endif /* STM32F101xG || STM32F103xG*/ - -/** - * @} - */ - -/** @defgroup RCCEx_HSE_Configuration HSE Configuration - * @{ - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F100xB)\ - || defined(STM32F100xE) -/** - * @brief Macro to configure the External High Speed oscillator (HSE) Predivision factor for PLL. - * @note Predivision factor can not be changed if PLL is used as system clock - * In this case, you have to select another source of the system clock, disable the PLL and - * then change the HSE predivision factor. - * @param __HSE_PREDIV_VALUE__ specifies the division value applied to HSE. - * This parameter must be a number between RCC_HSE_PREDIV_DIV1 and RCC_HSE_PREDIV_DIV16. - */ -#define __HAL_RCC_HSE_PREDIV_CONFIG(__HSE_PREDIV_VALUE__) MODIFY_REG(RCC->CFGR2, RCC_CFGR2_PREDIV1, (uint32_t)(__HSE_PREDIV_VALUE__)) -#else -/** - * @brief Macro to configure the External High Speed oscillator (HSE) Predivision factor for PLL. - * @note Predivision factor can not be changed if PLL is used as system clock - * In this case, you have to select another source of the system clock, disable the PLL and - * then change the HSE predivision factor. - * @param __HSE_PREDIV_VALUE__ specifies the division value applied to HSE. - * This parameter must be a number between RCC_HSE_PREDIV_DIV1 and RCC_HSE_PREDIV_DIV2. - */ -#define __HAL_RCC_HSE_PREDIV_CONFIG(__HSE_PREDIV_VALUE__) \ - MODIFY_REG(RCC->CFGR,RCC_CFGR_PLLXTPRE, (uint32_t)(__HSE_PREDIV_VALUE__)) - -#endif /* STM32F105xC || STM32F107xC */ - -#if defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F100xB)\ - || defined(STM32F100xE) -/** - * @brief Macro to get prediv1 factor for PLL. - */ -#define __HAL_RCC_HSE_GET_PREDIV() READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1) - -#else -/** - * @brief Macro to get prediv1 factor for PLL. - */ -#define __HAL_RCC_HSE_GET_PREDIV() READ_BIT(RCC->CFGR, RCC_CFGR_PLLXTPRE) - -#endif /* STM32F105xC || STM32F107xC || STM32F100xB || STM32F100xE */ - -/** - * @} - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -/** @defgroup RCCEx_PLLI2S_Configuration PLLI2S Configuration - * @{ - */ - -/** @brief Macros to enable the main PLLI2S. - * @note After enabling the main PLLI2S, the application software should wait on - * PLLI2SRDY flag to be set indicating that PLLI2S clock is stable and can - * be used as system clock source. - * @note The main PLLI2S is disabled by hardware when entering STOP and STANDBY modes. - */ -#define __HAL_RCC_PLLI2S_ENABLE() (*(__IO uint32_t *) RCC_CR_PLLI2SON_BB = ENABLE) - -/** @brief Macros to disable the main PLLI2S. - * @note The main PLLI2S is disabled by hardware when entering STOP and STANDBY modes. - */ -#define __HAL_RCC_PLLI2S_DISABLE() (*(__IO uint32_t *) RCC_CR_PLLI2SON_BB = DISABLE) - -/** @brief macros to configure the main PLLI2S multiplication factor. - * @note This function must be used only when the main PLLI2S is disabled. - * - * @param __PLLI2SMUL__ specifies the multiplication factor for PLLI2S VCO output clock - * This parameter can be one of the following values: - * @arg @ref RCC_PLLI2S_MUL8 PLLI2SVCO = PLLI2S clock entry x 8 - * @arg @ref RCC_PLLI2S_MUL9 PLLI2SVCO = PLLI2S clock entry x 9 - * @arg @ref RCC_PLLI2S_MUL10 PLLI2SVCO = PLLI2S clock entry x 10 - * @arg @ref RCC_PLLI2S_MUL11 PLLI2SVCO = PLLI2S clock entry x 11 - * @arg @ref RCC_PLLI2S_MUL12 PLLI2SVCO = PLLI2S clock entry x 12 - * @arg @ref RCC_PLLI2S_MUL13 PLLI2SVCO = PLLI2S clock entry x 13 - * @arg @ref RCC_PLLI2S_MUL14 PLLI2SVCO = PLLI2S clock entry x 14 - * @arg @ref RCC_PLLI2S_MUL16 PLLI2SVCO = PLLI2S clock entry x 16 - * @arg @ref RCC_PLLI2S_MUL20 PLLI2SVCO = PLLI2S clock entry x 20 - * - */ -#define __HAL_RCC_PLLI2S_CONFIG(__PLLI2SMUL__)\ - MODIFY_REG(RCC->CFGR2, RCC_CFGR2_PLL3MUL,(__PLLI2SMUL__)) - -/** - * @} - */ - -#endif /* STM32F105xC || STM32F107xC */ - -/** @defgroup RCCEx_Peripheral_Configuration Peripheral Configuration - * @brief Macros to configure clock source of different peripherals. - * @{ - */ - -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) -/** @brief Macro to configure the USB clock. - * @param __USBCLKSOURCE__ specifies the USB clock source. - * This parameter can be one of the following values: - * @arg @ref RCC_USBCLKSOURCE_PLL PLL clock divided by 1 selected as USB clock - * @arg @ref RCC_USBCLKSOURCE_PLL_DIV1_5 PLL clock divided by 1.5 selected as USB clock - */ -#define __HAL_RCC_USB_CONFIG(__USBCLKSOURCE__) \ - MODIFY_REG(RCC->CFGR, RCC_CFGR_USBPRE, (uint32_t)(__USBCLKSOURCE__)) - -/** @brief Macro to get the USB clock (USBCLK). - * @retval The clock source can be one of the following values: - * @arg @ref RCC_USBCLKSOURCE_PLL PLL clock divided by 1 selected as USB clock - * @arg @ref RCC_USBCLKSOURCE_PLL_DIV1_5 PLL clock divided by 1.5 selected as USB clock - */ -#define __HAL_RCC_GET_USB_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR, RCC_CFGR_USBPRE))) - -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ - -#if defined(STM32F105xC) || defined(STM32F107xC) - -/** @brief Macro to configure the USB OTSclock. - * @param __USBCLKSOURCE__ specifies the USB clock source. - * This parameter can be one of the following values: - * @arg @ref RCC_USBCLKSOURCE_PLL_DIV2 PLL clock divided by 2 selected as USB OTG FS clock - * @arg @ref RCC_USBCLKSOURCE_PLL_DIV3 PLL clock divided by 3 selected as USB OTG FS clock - */ -#define __HAL_RCC_USB_CONFIG(__USBCLKSOURCE__) \ - MODIFY_REG(RCC->CFGR, RCC_CFGR_OTGFSPRE, (uint32_t)(__USBCLKSOURCE__)) - -/** @brief Macro to get the USB clock (USBCLK). - * @retval The clock source can be one of the following values: - * @arg @ref RCC_USBCLKSOURCE_PLL_DIV2 PLL clock divided by 2 selected as USB OTG FS clock - * @arg @ref RCC_USBCLKSOURCE_PLL_DIV3 PLL clock divided by 3 selected as USB OTG FS clock - */ -#define __HAL_RCC_GET_USB_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR, RCC_CFGR_OTGFSPRE))) - -#endif /* STM32F105xC || STM32F107xC */ - -/** @brief Macro to configure the ADCx clock (x=1 to 3 depending on devices). - * @param __ADCCLKSOURCE__ specifies the ADC clock source. - * This parameter can be one of the following values: - * @arg @ref RCC_ADCPCLK2_DIV2 PCLK2 clock divided by 2 selected as ADC clock - * @arg @ref RCC_ADCPCLK2_DIV4 PCLK2 clock divided by 4 selected as ADC clock - * @arg @ref RCC_ADCPCLK2_DIV6 PCLK2 clock divided by 6 selected as ADC clock - * @arg @ref RCC_ADCPCLK2_DIV8 PCLK2 clock divided by 8 selected as ADC clock - */ -#define __HAL_RCC_ADC_CONFIG(__ADCCLKSOURCE__) \ - MODIFY_REG(RCC->CFGR, RCC_CFGR_ADCPRE, (uint32_t)(__ADCCLKSOURCE__)) - -/** @brief Macro to get the ADC clock (ADCxCLK, x=1 to 3 depending on devices). - * @retval The clock source can be one of the following values: - * @arg @ref RCC_ADCPCLK2_DIV2 PCLK2 clock divided by 2 selected as ADC clock - * @arg @ref RCC_ADCPCLK2_DIV4 PCLK2 clock divided by 4 selected as ADC clock - * @arg @ref RCC_ADCPCLK2_DIV6 PCLK2 clock divided by 6 selected as ADC clock - * @arg @ref RCC_ADCPCLK2_DIV8 PCLK2 clock divided by 8 selected as ADC clock - */ -#define __HAL_RCC_GET_ADC_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR, RCC_CFGR_ADCPRE))) - -/** - * @} - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) - -/** @addtogroup RCCEx_HSE_Configuration - * @{ - */ - -/** - * @brief Macro to configure the PLL2 & PLLI2S Predivision factor. - * @note Predivision factor can not be changed if PLL2 is used indirectly as system clock - * In this case, you have to select another source of the system clock, disable the PLL2 and PLLI2S and - * then change the PREDIV2 factor. - * @param __HSE_PREDIV2_VALUE__ specifies the PREDIV2 value applied to PLL2 & PLLI2S. - * This parameter must be a number between RCC_HSE_PREDIV2_DIV1 and RCC_HSE_PREDIV2_DIV16. - */ -#define __HAL_RCC_HSE_PREDIV2_CONFIG(__HSE_PREDIV2_VALUE__) \ - MODIFY_REG(RCC->CFGR2, RCC_CFGR2_PREDIV2, (uint32_t)(__HSE_PREDIV2_VALUE__)) - -/** - * @brief Macro to get prediv2 factor for PLL2 & PLL3. - */ -#define __HAL_RCC_HSE_GET_PREDIV2() READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV2) - -/** - * @} - */ - -/** @addtogroup RCCEx_PLLI2S_Configuration - * @{ - */ - -/** @brief Macros to enable the main PLL2. - * @note After enabling the main PLL2, the application software should wait on - * PLL2RDY flag to be set indicating that PLL2 clock is stable and can - * be used as system clock source. - * @note The main PLL2 is disabled by hardware when entering STOP and STANDBY modes. - */ -#define __HAL_RCC_PLL2_ENABLE() (*(__IO uint32_t *) RCC_CR_PLL2ON_BB = ENABLE) - -/** @brief Macros to disable the main PLL2. - * @note The main PLL2 can not be disabled if it is used indirectly as system clock source - * @note The main PLL2 is disabled by hardware when entering STOP and STANDBY modes. - */ -#define __HAL_RCC_PLL2_DISABLE() (*(__IO uint32_t *) RCC_CR_PLL2ON_BB = DISABLE) - -/** @brief macros to configure the main PLL2 multiplication factor. - * @note This function must be used only when the main PLL2 is disabled. - * - * @param __PLL2MUL__ specifies the multiplication factor for PLL2 VCO output clock - * This parameter can be one of the following values: - * @arg @ref RCC_PLL2_MUL8 PLL2VCO = PLL2 clock entry x 8 - * @arg @ref RCC_PLL2_MUL9 PLL2VCO = PLL2 clock entry x 9 - * @arg @ref RCC_PLL2_MUL10 PLL2VCO = PLL2 clock entry x 10 - * @arg @ref RCC_PLL2_MUL11 PLL2VCO = PLL2 clock entry x 11 - * @arg @ref RCC_PLL2_MUL12 PLL2VCO = PLL2 clock entry x 12 - * @arg @ref RCC_PLL2_MUL13 PLL2VCO = PLL2 clock entry x 13 - * @arg @ref RCC_PLL2_MUL14 PLL2VCO = PLL2 clock entry x 14 - * @arg @ref RCC_PLL2_MUL16 PLL2VCO = PLL2 clock entry x 16 - * @arg @ref RCC_PLL2_MUL20 PLL2VCO = PLL2 clock entry x 20 - * - */ -#define __HAL_RCC_PLL2_CONFIG(__PLL2MUL__)\ - MODIFY_REG(RCC->CFGR2, RCC_CFGR2_PLL2MUL,(__PLL2MUL__)) - -/** - * @} - */ - -/** @defgroup RCCEx_I2S_Configuration I2S Configuration - * @brief Macros to configure clock source of I2S peripherals. - * @{ - */ - -/** @brief Macro to configure the I2S2 clock. - * @param __I2S2CLKSOURCE__ specifies the I2S2 clock source. - * This parameter can be one of the following values: - * @arg @ref RCC_I2S2CLKSOURCE_SYSCLK system clock selected as I2S3 clock entry - * @arg @ref RCC_I2S2CLKSOURCE_PLLI2S_VCO PLLI2S VCO clock selected as I2S3 clock entry - */ -#define __HAL_RCC_I2S2_CONFIG(__I2S2CLKSOURCE__) \ - MODIFY_REG(RCC->CFGR2, RCC_CFGR2_I2S2SRC, (uint32_t)(__I2S2CLKSOURCE__)) - -/** @brief Macro to get the I2S2 clock (I2S2CLK). - * @retval The clock source can be one of the following values: - * @arg @ref RCC_I2S2CLKSOURCE_SYSCLK system clock selected as I2S3 clock entry - * @arg @ref RCC_I2S2CLKSOURCE_PLLI2S_VCO PLLI2S VCO clock selected as I2S3 clock entry - */ -#define __HAL_RCC_GET_I2S2_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR2, RCC_CFGR2_I2S2SRC))) - -/** @brief Macro to configure the I2S3 clock. - * @param __I2S2CLKSOURCE__ specifies the I2S3 clock source. - * This parameter can be one of the following values: - * @arg @ref RCC_I2S3CLKSOURCE_SYSCLK system clock selected as I2S3 clock entry - * @arg @ref RCC_I2S3CLKSOURCE_PLLI2S_VCO PLLI2S VCO clock selected as I2S3 clock entry - */ -#define __HAL_RCC_I2S3_CONFIG(__I2S2CLKSOURCE__) \ - MODIFY_REG(RCC->CFGR2, RCC_CFGR2_I2S3SRC, (uint32_t)(__I2S2CLKSOURCE__)) - -/** @brief Macro to get the I2S3 clock (I2S3CLK). - * @retval The clock source can be one of the following values: - * @arg @ref RCC_I2S3CLKSOURCE_SYSCLK system clock selected as I2S3 clock entry - * @arg @ref RCC_I2S3CLKSOURCE_PLLI2S_VCO PLLI2S VCO clock selected as I2S3 clock entry - */ -#define __HAL_RCC_GET_I2S3_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR2, RCC_CFGR2_I2S3SRC))) - -/** - * @} - */ - -#endif /* STM32F105xC || STM32F107xC */ -/** - * @} - */ - -/* Exported functions --------------------------------------------------------*/ -/** @addtogroup RCCEx_Exported_Functions - * @{ - */ - -/** @addtogroup RCCEx_Exported_Functions_Group1 - * @{ - */ - -HAL_StatusTypeDef HAL_RCCEx_PeriphCLKConfig(RCC_PeriphCLKInitTypeDef *PeriphClkInit); -void HAL_RCCEx_GetPeriphCLKConfig(RCC_PeriphCLKInitTypeDef *PeriphClkInit); -uint32_t HAL_RCCEx_GetPeriphCLKFreq(uint32_t PeriphClk); - -/** - * @} - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -/** @addtogroup RCCEx_Exported_Functions_Group2 - * @{ - */ -HAL_StatusTypeDef HAL_RCCEx_EnablePLLI2S(RCC_PLLI2SInitTypeDef *PLLI2SInit); -HAL_StatusTypeDef HAL_RCCEx_DisablePLLI2S(void); - -/** - * @} - */ - -/** @addtogroup RCCEx_Exported_Functions_Group3 - * @{ - */ -HAL_StatusTypeDef HAL_RCCEx_EnablePLL2(RCC_PLL2InitTypeDef *PLL2Init); -HAL_StatusTypeDef HAL_RCCEx_DisablePLL2(void); - -/** - * @} - */ -#endif /* STM32F105xC || STM32F107xC */ - -/** - * @} - */ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /* __STM32F1xx_HAL_RCC_EX_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ - +/** + ****************************************************************************** + * @file stm32f1xx_hal_rcc_ex.h + * @author MCD Application Team + * @brief Header file of RCC HAL Extension module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __STM32F1xx_HAL_RCC_EX_H +#define __STM32F1xx_HAL_RCC_EX_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup RCCEx + * @{ + */ + +/** @addtogroup RCCEx_Private_Constants + * @{ + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) + +/* Alias word address of PLLI2SON bit */ +#define PLLI2SON_BITNUMBER RCC_CR_PLL3ON_Pos +#define RCC_CR_PLLI2SON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (PLLI2SON_BITNUMBER * 4U))) +/* Alias word address of PLL2ON bit */ +#define PLL2ON_BITNUMBER RCC_CR_PLL2ON_Pos +#define RCC_CR_PLL2ON_BB ((uint32_t)(PERIPH_BB_BASE + (RCC_CR_OFFSET_BB * 32U) + (PLL2ON_BITNUMBER * 4U))) + +#define PLLI2S_TIMEOUT_VALUE 100U /* 100 ms */ +#define PLL2_TIMEOUT_VALUE 100U /* 100 ms */ + +#endif /* STM32F105xC || STM32F107xC */ + + +#define CR_REG_INDEX ((uint8_t)1) + +/** + * @} + */ + +/** @addtogroup RCCEx_Private_Macros + * @{ + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +#define IS_RCC_PREDIV1_SOURCE(__SOURCE__) (((__SOURCE__) == RCC_PREDIV1_SOURCE_HSE) || \ + ((__SOURCE__) == RCC_PREDIV1_SOURCE_PLL2)) +#endif /* STM32F105xC || STM32F107xC */ + +#if defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F100xB)\ + || defined(STM32F100xE) +#define IS_RCC_HSE_PREDIV(__DIV__) (((__DIV__) == RCC_HSE_PREDIV_DIV1) || ((__DIV__) == RCC_HSE_PREDIV_DIV2) || \ + ((__DIV__) == RCC_HSE_PREDIV_DIV3) || ((__DIV__) == RCC_HSE_PREDIV_DIV4) || \ + ((__DIV__) == RCC_HSE_PREDIV_DIV5) || ((__DIV__) == RCC_HSE_PREDIV_DIV6) || \ + ((__DIV__) == RCC_HSE_PREDIV_DIV7) || ((__DIV__) == RCC_HSE_PREDIV_DIV8) || \ + ((__DIV__) == RCC_HSE_PREDIV_DIV9) || ((__DIV__) == RCC_HSE_PREDIV_DIV10) || \ + ((__DIV__) == RCC_HSE_PREDIV_DIV11) || ((__DIV__) == RCC_HSE_PREDIV_DIV12) || \ + ((__DIV__) == RCC_HSE_PREDIV_DIV13) || ((__DIV__) == RCC_HSE_PREDIV_DIV14) || \ + ((__DIV__) == RCC_HSE_PREDIV_DIV15) || ((__DIV__) == RCC_HSE_PREDIV_DIV16)) + +#else +#define IS_RCC_HSE_PREDIV(__DIV__) (((__DIV__) == RCC_HSE_PREDIV_DIV1) || ((__DIV__) == RCC_HSE_PREDIV_DIV2)) +#endif /* STM32F105xC || STM32F107xC || STM32F100xB || STM32F100xE */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +#define IS_RCC_PLL_MUL(__MUL__) (((__MUL__) == RCC_PLL_MUL4) || ((__MUL__) == RCC_PLL_MUL5) || \ + ((__MUL__) == RCC_PLL_MUL6) || ((__MUL__) == RCC_PLL_MUL7) || \ + ((__MUL__) == RCC_PLL_MUL8) || ((__MUL__) == RCC_PLL_MUL9) || \ + ((__MUL__) == RCC_PLL_MUL6_5)) + +#define IS_RCC_MCO1SOURCE(__SOURCE__) (((__SOURCE__) == RCC_MCO1SOURCE_SYSCLK) || ((__SOURCE__) == RCC_MCO1SOURCE_HSI) \ + || ((__SOURCE__) == RCC_MCO1SOURCE_HSE) || ((__SOURCE__) == RCC_MCO1SOURCE_PLLCLK) \ + || ((__SOURCE__) == RCC_MCO1SOURCE_PLL2CLK) || ((__SOURCE__) == RCC_MCO1SOURCE_PLL3CLK) \ + || ((__SOURCE__) == RCC_MCO1SOURCE_PLL3CLK_DIV2) || ((__SOURCE__) == RCC_MCO1SOURCE_EXT_HSE) \ + || ((__SOURCE__) == RCC_MCO1SOURCE_NOCLOCK)) + +#else +#define IS_RCC_PLL_MUL(__MUL__) (((__MUL__) == RCC_PLL_MUL2) || ((__MUL__) == RCC_PLL_MUL3) || \ + ((__MUL__) == RCC_PLL_MUL4) || ((__MUL__) == RCC_PLL_MUL5) || \ + ((__MUL__) == RCC_PLL_MUL6) || ((__MUL__) == RCC_PLL_MUL7) || \ + ((__MUL__) == RCC_PLL_MUL8) || ((__MUL__) == RCC_PLL_MUL9) || \ + ((__MUL__) == RCC_PLL_MUL10) || ((__MUL__) == RCC_PLL_MUL11) || \ + ((__MUL__) == RCC_PLL_MUL12) || ((__MUL__) == RCC_PLL_MUL13) || \ + ((__MUL__) == RCC_PLL_MUL14) || ((__MUL__) == RCC_PLL_MUL15) || \ + ((__MUL__) == RCC_PLL_MUL16)) + +#define IS_RCC_MCO1SOURCE(__SOURCE__) (((__SOURCE__) == RCC_MCO1SOURCE_SYSCLK) || ((__SOURCE__) == RCC_MCO1SOURCE_HSI) \ + || ((__SOURCE__) == RCC_MCO1SOURCE_HSE) || ((__SOURCE__) == RCC_MCO1SOURCE_PLLCLK) \ + || ((__SOURCE__) == RCC_MCO1SOURCE_NOCLOCK)) + +#endif /* STM32F105xC || STM32F107xC*/ + +#define IS_RCC_ADCPLLCLK_DIV(__ADCCLK__) (((__ADCCLK__) == RCC_ADCPCLK2_DIV2) || ((__ADCCLK__) == RCC_ADCPCLK2_DIV4) || \ + ((__ADCCLK__) == RCC_ADCPCLK2_DIV6) || ((__ADCCLK__) == RCC_ADCPCLK2_DIV8)) + +#if defined(STM32F105xC) || defined(STM32F107xC) +#define IS_RCC_I2S2CLKSOURCE(__SOURCE__) (((__SOURCE__) == RCC_I2S2CLKSOURCE_SYSCLK) || ((__SOURCE__) == RCC_I2S2CLKSOURCE_PLLI2S_VCO)) + +#define IS_RCC_I2S3CLKSOURCE(__SOURCE__) (((__SOURCE__) == RCC_I2S3CLKSOURCE_SYSCLK) || ((__SOURCE__) == RCC_I2S3CLKSOURCE_PLLI2S_VCO)) + +#define IS_RCC_USBPLLCLK_DIV(__USBCLK__) (((__USBCLK__) == RCC_USBCLKSOURCE_PLL_DIV2) || ((__USBCLK__) == RCC_USBCLKSOURCE_PLL_DIV3)) + +#define IS_RCC_PLLI2S_MUL(__MUL__) (((__MUL__) == RCC_PLLI2S_MUL8) || ((__MUL__) == RCC_PLLI2S_MUL9) || \ + ((__MUL__) == RCC_PLLI2S_MUL10) || ((__MUL__) == RCC_PLLI2S_MUL11) || \ + ((__MUL__) == RCC_PLLI2S_MUL12) || ((__MUL__) == RCC_PLLI2S_MUL13) || \ + ((__MUL__) == RCC_PLLI2S_MUL14) || ((__MUL__) == RCC_PLLI2S_MUL16) || \ + ((__MUL__) == RCC_PLLI2S_MUL20)) + +#define IS_RCC_HSE_PREDIV2(__DIV__) (((__DIV__) == RCC_HSE_PREDIV2_DIV1) || ((__DIV__) == RCC_HSE_PREDIV2_DIV2) || \ + ((__DIV__) == RCC_HSE_PREDIV2_DIV3) || ((__DIV__) == RCC_HSE_PREDIV2_DIV4) || \ + ((__DIV__) == RCC_HSE_PREDIV2_DIV5) || ((__DIV__) == RCC_HSE_PREDIV2_DIV6) || \ + ((__DIV__) == RCC_HSE_PREDIV2_DIV7) || ((__DIV__) == RCC_HSE_PREDIV2_DIV8) || \ + ((__DIV__) == RCC_HSE_PREDIV2_DIV9) || ((__DIV__) == RCC_HSE_PREDIV2_DIV10) || \ + ((__DIV__) == RCC_HSE_PREDIV2_DIV11) || ((__DIV__) == RCC_HSE_PREDIV2_DIV12) || \ + ((__DIV__) == RCC_HSE_PREDIV2_DIV13) || ((__DIV__) == RCC_HSE_PREDIV2_DIV14) || \ + ((__DIV__) == RCC_HSE_PREDIV2_DIV15) || ((__DIV__) == RCC_HSE_PREDIV2_DIV16)) + +#define IS_RCC_PLL2(__PLL__) (((__PLL__) == RCC_PLL2_NONE) || ((__PLL__) == RCC_PLL2_OFF) || \ + ((__PLL__) == RCC_PLL2_ON)) + +#define IS_RCC_PLL2_MUL(__MUL__) (((__MUL__) == RCC_PLL2_MUL8) || ((__MUL__) == RCC_PLL2_MUL9) || \ + ((__MUL__) == RCC_PLL2_MUL10) || ((__MUL__) == RCC_PLL2_MUL11) || \ + ((__MUL__) == RCC_PLL2_MUL12) || ((__MUL__) == RCC_PLL2_MUL13) || \ + ((__MUL__) == RCC_PLL2_MUL14) || ((__MUL__) == RCC_PLL2_MUL16) || \ + ((__MUL__) == RCC_PLL2_MUL20)) + +#define IS_RCC_PERIPHCLOCK(__SELECTION__) \ + ((((__SELECTION__) & RCC_PERIPHCLK_RTC) == RCC_PERIPHCLK_RTC) || \ + (((__SELECTION__) & RCC_PERIPHCLK_ADC) == RCC_PERIPHCLK_ADC) || \ + (((__SELECTION__) & RCC_PERIPHCLK_I2S2) == RCC_PERIPHCLK_I2S2) || \ + (((__SELECTION__) & RCC_PERIPHCLK_I2S3) == RCC_PERIPHCLK_I2S3) || \ + (((__SELECTION__) & RCC_PERIPHCLK_USB) == RCC_PERIPHCLK_USB)) + +#elif defined(STM32F103xE) || defined(STM32F103xG) + +#define IS_RCC_I2S2CLKSOURCE(__SOURCE__) ((__SOURCE__) == RCC_I2S2CLKSOURCE_SYSCLK) + +#define IS_RCC_I2S3CLKSOURCE(__SOURCE__) ((__SOURCE__) == RCC_I2S3CLKSOURCE_SYSCLK) + +#define IS_RCC_PERIPHCLOCK(__SELECTION__) \ + ((((__SELECTION__) & RCC_PERIPHCLK_RTC) == RCC_PERIPHCLK_RTC) || \ + (((__SELECTION__) & RCC_PERIPHCLK_ADC) == RCC_PERIPHCLK_ADC) || \ + (((__SELECTION__) & RCC_PERIPHCLK_I2S2) == RCC_PERIPHCLK_I2S2) || \ + (((__SELECTION__) & RCC_PERIPHCLK_I2S3) == RCC_PERIPHCLK_I2S3) || \ + (((__SELECTION__) & RCC_PERIPHCLK_USB) == RCC_PERIPHCLK_USB)) + + +#elif defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) + +#define IS_RCC_PERIPHCLOCK(__SELECTION__) \ + ((((__SELECTION__) & RCC_PERIPHCLK_RTC) == RCC_PERIPHCLK_RTC) || \ + (((__SELECTION__) & RCC_PERIPHCLK_ADC) == RCC_PERIPHCLK_ADC) || \ + (((__SELECTION__) & RCC_PERIPHCLK_USB) == RCC_PERIPHCLK_USB)) + +#else + +#define IS_RCC_PERIPHCLOCK(__SELECTION__) \ + ((((__SELECTION__) & RCC_PERIPHCLK_RTC) == RCC_PERIPHCLK_RTC) || \ + (((__SELECTION__) & RCC_PERIPHCLK_ADC) == RCC_PERIPHCLK_ADC)) + +#endif /* STM32F105xC || STM32F107xC */ + +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) + +#define IS_RCC_USBPLLCLK_DIV(__USBCLK__) (((__USBCLK__) == RCC_USBCLKSOURCE_PLL) || ((__USBCLK__) == RCC_USBCLKSOURCE_PLL_DIV1_5)) + +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ + +/** + * @} + */ + +/* Exported types ------------------------------------------------------------*/ + +/** @defgroup RCCEx_Exported_Types RCCEx Exported Types + * @{ + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +/** + * @brief RCC PLL2 configuration structure definition + */ +typedef struct +{ + uint32_t PLL2State; /*!< The new state of the PLL2. + This parameter can be a value of @ref RCCEx_PLL2_Config */ + + uint32_t PLL2MUL; /*!< PLL2MUL: Multiplication factor for PLL2 VCO input clock + This parameter must be a value of @ref RCCEx_PLL2_Multiplication_Factor*/ + +#if defined(STM32F105xC) || defined(STM32F107xC) + uint32_t HSEPrediv2Value; /*!< The Prediv2 factor value. + This parameter can be a value of @ref RCCEx_Prediv2_Factor */ + +#endif /* STM32F105xC || STM32F107xC */ +} RCC_PLL2InitTypeDef; + +#endif /* STM32F105xC || STM32F107xC */ + +/** + * @brief RCC Internal/External Oscillator (HSE, HSI, LSE and LSI) configuration structure definition + */ +typedef struct +{ + uint32_t OscillatorType; /*!< The oscillators to be configured. + This parameter can be a value of @ref RCC_Oscillator_Type */ + +#if defined(STM32F105xC) || defined(STM32F107xC) + uint32_t Prediv1Source; /*!< The Prediv1 source value. + This parameter can be a value of @ref RCCEx_Prediv1_Source */ +#endif /* STM32F105xC || STM32F107xC */ + + uint32_t HSEState; /*!< The new state of the HSE. + This parameter can be a value of @ref RCC_HSE_Config */ + + uint32_t HSEPredivValue; /*!< The Prediv1 factor value (named PREDIV1 or PLLXTPRE in RM) + This parameter can be a value of @ref RCCEx_Prediv1_Factor */ + + uint32_t LSEState; /*!< The new state of the LSE. + This parameter can be a value of @ref RCC_LSE_Config */ + + uint32_t HSIState; /*!< The new state of the HSI. + This parameter can be a value of @ref RCC_HSI_Config */ + + uint32_t HSICalibrationValue; /*!< The HSI calibration trimming value (default is RCC_HSICALIBRATION_DEFAULT). + This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F */ + + uint32_t LSIState; /*!< The new state of the LSI. + This parameter can be a value of @ref RCC_LSI_Config */ + + RCC_PLLInitTypeDef PLL; /*!< PLL structure parameters */ + +#if defined(STM32F105xC) || defined(STM32F107xC) + RCC_PLL2InitTypeDef PLL2; /*!< PLL2 structure parameters */ +#endif /* STM32F105xC || STM32F107xC */ +} RCC_OscInitTypeDef; + +#if defined(STM32F105xC) || defined(STM32F107xC) +/** + * @brief RCC PLLI2S configuration structure definition + */ +typedef struct +{ + uint32_t PLLI2SMUL; /*!< PLLI2SMUL: Multiplication factor for PLLI2S VCO input clock + This parameter must be a value of @ref RCCEx_PLLI2S_Multiplication_Factor*/ + +#if defined(STM32F105xC) || defined(STM32F107xC) + uint32_t HSEPrediv2Value; /*!< The Prediv2 factor value. + This parameter can be a value of @ref RCCEx_Prediv2_Factor */ + +#endif /* STM32F105xC || STM32F107xC */ +} RCC_PLLI2SInitTypeDef; +#endif /* STM32F105xC || STM32F107xC */ + +/** + * @brief RCC extended clocks structure definition + */ +typedef struct +{ + uint32_t PeriphClockSelection; /*!< The Extended Clock to be configured. + This parameter can be a value of @ref RCCEx_Periph_Clock_Selection */ + + uint32_t RTCClockSelection; /*!< specifies the RTC clock source. + This parameter can be a value of @ref RCC_RTC_Clock_Source */ + + uint32_t AdcClockSelection; /*!< ADC clock source + This parameter can be a value of @ref RCCEx_ADC_Prescaler */ + +#if defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC)\ + || defined(STM32F107xC) + uint32_t I2s2ClockSelection; /*!< I2S2 clock source + This parameter can be a value of @ref RCCEx_I2S2_Clock_Source */ + + uint32_t I2s3ClockSelection; /*!< I2S3 clock source + This parameter can be a value of @ref RCCEx_I2S3_Clock_Source */ + +#if defined(STM32F105xC) || defined(STM32F107xC) + RCC_PLLI2SInitTypeDef PLLI2S; /*!< PLL I2S structure parameters + This parameter will be used only when PLLI2S is selected as Clock Source I2S2 or I2S3 */ + +#endif /* STM32F105xC || STM32F107xC */ +#endif /* STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ + +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ + || defined(STM32F105xC) || defined(STM32F107xC) + uint32_t UsbClockSelection; /*!< USB clock source + This parameter can be a value of @ref RCCEx_USB_Prescaler */ + +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ +} RCC_PeriphCLKInitTypeDef; + +/** + * @} + */ + +/* Exported constants --------------------------------------------------------*/ + +/** @defgroup RCCEx_Exported_Constants RCCEx Exported Constants + * @{ + */ + +/** @defgroup RCCEx_Periph_Clock_Selection Periph Clock Selection + * @{ + */ +#define RCC_PERIPHCLK_RTC 0x00000001U +#define RCC_PERIPHCLK_ADC 0x00000002U +#if defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F103xE)\ + || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC) +#define RCC_PERIPHCLK_I2S2 0x00000004U +#define RCC_PERIPHCLK_I2S3 0x00000008U +#endif /* STM32F101xE || STM32F101xG || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ + || defined(STM32F105xC) || defined(STM32F107xC) +#define RCC_PERIPHCLK_USB 0x00000010U +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ + +/** + * @} + */ + +/** @defgroup RCCEx_ADC_Prescaler ADC Prescaler + * @{ + */ +#define RCC_ADCPCLK2_DIV2 RCC_CFGR_ADCPRE_DIV2 +#define RCC_ADCPCLK2_DIV4 RCC_CFGR_ADCPRE_DIV4 +#define RCC_ADCPCLK2_DIV6 RCC_CFGR_ADCPRE_DIV6 +#define RCC_ADCPCLK2_DIV8 RCC_CFGR_ADCPRE_DIV8 + +/** + * @} + */ + +#if defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC)\ + || defined(STM32F107xC) +/** @defgroup RCCEx_I2S2_Clock_Source I2S2 Clock Source + * @{ + */ +#define RCC_I2S2CLKSOURCE_SYSCLK 0x00000000U +#if defined(STM32F105xC) || defined(STM32F107xC) +#define RCC_I2S2CLKSOURCE_PLLI2S_VCO RCC_CFGR2_I2S2SRC +#endif /* STM32F105xC || STM32F107xC */ + +/** + * @} + */ + +/** @defgroup RCCEx_I2S3_Clock_Source I2S3 Clock Source + * @{ + */ +#define RCC_I2S3CLKSOURCE_SYSCLK 0x00000000U +#if defined(STM32F105xC) || defined(STM32F107xC) +#define RCC_I2S3CLKSOURCE_PLLI2S_VCO RCC_CFGR2_I2S3SRC +#endif /* STM32F105xC || STM32F107xC */ + +/** + * @} + */ + +#endif /* STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ + +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) + +/** @defgroup RCCEx_USB_Prescaler USB Prescaler + * @{ + */ +#define RCC_USBCLKSOURCE_PLL RCC_CFGR_USBPRE +#define RCC_USBCLKSOURCE_PLL_DIV1_5 0x00000000U + +/** + * @} + */ + +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ + + +#if defined(STM32F105xC) || defined(STM32F107xC) +/** @defgroup RCCEx_USB_Prescaler USB Prescaler + * @{ + */ +#define RCC_USBCLKSOURCE_PLL_DIV2 RCC_CFGR_OTGFSPRE +#define RCC_USBCLKSOURCE_PLL_DIV3 0x00000000U + +/** + * @} + */ + +/** @defgroup RCCEx_PLLI2S_Multiplication_Factor PLLI2S Multiplication Factor + * @{ + */ + +#define RCC_PLLI2S_MUL8 RCC_CFGR2_PLL3MUL8 /*!< PLLI2S input clock * 8 */ +#define RCC_PLLI2S_MUL9 RCC_CFGR2_PLL3MUL9 /*!< PLLI2S input clock * 9 */ +#define RCC_PLLI2S_MUL10 RCC_CFGR2_PLL3MUL10 /*!< PLLI2S input clock * 10 */ +#define RCC_PLLI2S_MUL11 RCC_CFGR2_PLL3MUL11 /*!< PLLI2S input clock * 11 */ +#define RCC_PLLI2S_MUL12 RCC_CFGR2_PLL3MUL12 /*!< PLLI2S input clock * 12 */ +#define RCC_PLLI2S_MUL13 RCC_CFGR2_PLL3MUL13 /*!< PLLI2S input clock * 13 */ +#define RCC_PLLI2S_MUL14 RCC_CFGR2_PLL3MUL14 /*!< PLLI2S input clock * 14 */ +#define RCC_PLLI2S_MUL16 RCC_CFGR2_PLL3MUL16 /*!< PLLI2S input clock * 16 */ +#define RCC_PLLI2S_MUL20 RCC_CFGR2_PLL3MUL20 /*!< PLLI2S input clock * 20 */ + +/** + * @} + */ +#endif /* STM32F105xC || STM32F107xC */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +/** @defgroup RCCEx_Prediv1_Source Prediv1 Source + * @{ + */ + +#define RCC_PREDIV1_SOURCE_HSE RCC_CFGR2_PREDIV1SRC_HSE +#define RCC_PREDIV1_SOURCE_PLL2 RCC_CFGR2_PREDIV1SRC_PLL2 + +/** + * @} + */ +#endif /* STM32F105xC || STM32F107xC */ + +/** @defgroup RCCEx_Prediv1_Factor HSE Prediv1 Factor + * @{ + */ + +#define RCC_HSE_PREDIV_DIV1 0x00000000U + +#if defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F100xB)\ + || defined(STM32F100xE) +#define RCC_HSE_PREDIV_DIV2 RCC_CFGR2_PREDIV1_DIV2 +#define RCC_HSE_PREDIV_DIV3 RCC_CFGR2_PREDIV1_DIV3 +#define RCC_HSE_PREDIV_DIV4 RCC_CFGR2_PREDIV1_DIV4 +#define RCC_HSE_PREDIV_DIV5 RCC_CFGR2_PREDIV1_DIV5 +#define RCC_HSE_PREDIV_DIV6 RCC_CFGR2_PREDIV1_DIV6 +#define RCC_HSE_PREDIV_DIV7 RCC_CFGR2_PREDIV1_DIV7 +#define RCC_HSE_PREDIV_DIV8 RCC_CFGR2_PREDIV1_DIV8 +#define RCC_HSE_PREDIV_DIV9 RCC_CFGR2_PREDIV1_DIV9 +#define RCC_HSE_PREDIV_DIV10 RCC_CFGR2_PREDIV1_DIV10 +#define RCC_HSE_PREDIV_DIV11 RCC_CFGR2_PREDIV1_DIV11 +#define RCC_HSE_PREDIV_DIV12 RCC_CFGR2_PREDIV1_DIV12 +#define RCC_HSE_PREDIV_DIV13 RCC_CFGR2_PREDIV1_DIV13 +#define RCC_HSE_PREDIV_DIV14 RCC_CFGR2_PREDIV1_DIV14 +#define RCC_HSE_PREDIV_DIV15 RCC_CFGR2_PREDIV1_DIV15 +#define RCC_HSE_PREDIV_DIV16 RCC_CFGR2_PREDIV1_DIV16 +#else +#define RCC_HSE_PREDIV_DIV2 RCC_CFGR_PLLXTPRE +#endif /* STM32F105xC || STM32F107xC || STM32F100xB || STM32F100xE */ + +/** + * @} + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +/** @defgroup RCCEx_Prediv2_Factor HSE Prediv2 Factor + * @{ + */ + +#define RCC_HSE_PREDIV2_DIV1 RCC_CFGR2_PREDIV2_DIV1 /*!< PREDIV2 input clock not divided */ +#define RCC_HSE_PREDIV2_DIV2 RCC_CFGR2_PREDIV2_DIV2 /*!< PREDIV2 input clock divided by 2 */ +#define RCC_HSE_PREDIV2_DIV3 RCC_CFGR2_PREDIV2_DIV3 /*!< PREDIV2 input clock divided by 3 */ +#define RCC_HSE_PREDIV2_DIV4 RCC_CFGR2_PREDIV2_DIV4 /*!< PREDIV2 input clock divided by 4 */ +#define RCC_HSE_PREDIV2_DIV5 RCC_CFGR2_PREDIV2_DIV5 /*!< PREDIV2 input clock divided by 5 */ +#define RCC_HSE_PREDIV2_DIV6 RCC_CFGR2_PREDIV2_DIV6 /*!< PREDIV2 input clock divided by 6 */ +#define RCC_HSE_PREDIV2_DIV7 RCC_CFGR2_PREDIV2_DIV7 /*!< PREDIV2 input clock divided by 7 */ +#define RCC_HSE_PREDIV2_DIV8 RCC_CFGR2_PREDIV2_DIV8 /*!< PREDIV2 input clock divided by 8 */ +#define RCC_HSE_PREDIV2_DIV9 RCC_CFGR2_PREDIV2_DIV9 /*!< PREDIV2 input clock divided by 9 */ +#define RCC_HSE_PREDIV2_DIV10 RCC_CFGR2_PREDIV2_DIV10 /*!< PREDIV2 input clock divided by 10 */ +#define RCC_HSE_PREDIV2_DIV11 RCC_CFGR2_PREDIV2_DIV11 /*!< PREDIV2 input clock divided by 11 */ +#define RCC_HSE_PREDIV2_DIV12 RCC_CFGR2_PREDIV2_DIV12 /*!< PREDIV2 input clock divided by 12 */ +#define RCC_HSE_PREDIV2_DIV13 RCC_CFGR2_PREDIV2_DIV13 /*!< PREDIV2 input clock divided by 13 */ +#define RCC_HSE_PREDIV2_DIV14 RCC_CFGR2_PREDIV2_DIV14 /*!< PREDIV2 input clock divided by 14 */ +#define RCC_HSE_PREDIV2_DIV15 RCC_CFGR2_PREDIV2_DIV15 /*!< PREDIV2 input clock divided by 15 */ +#define RCC_HSE_PREDIV2_DIV16 RCC_CFGR2_PREDIV2_DIV16 /*!< PREDIV2 input clock divided by 16 */ + +/** + * @} + */ + +/** @defgroup RCCEx_PLL2_Config PLL Config + * @{ + */ +#define RCC_PLL2_NONE 0x00000000U +#define RCC_PLL2_OFF 0x00000001U +#define RCC_PLL2_ON 0x00000002U + +/** + * @} + */ + +/** @defgroup RCCEx_PLL2_Multiplication_Factor PLL2 Multiplication Factor + * @{ + */ + +#define RCC_PLL2_MUL8 RCC_CFGR2_PLL2MUL8 /*!< PLL2 input clock * 8 */ +#define RCC_PLL2_MUL9 RCC_CFGR2_PLL2MUL9 /*!< PLL2 input clock * 9 */ +#define RCC_PLL2_MUL10 RCC_CFGR2_PLL2MUL10 /*!< PLL2 input clock * 10 */ +#define RCC_PLL2_MUL11 RCC_CFGR2_PLL2MUL11 /*!< PLL2 input clock * 11 */ +#define RCC_PLL2_MUL12 RCC_CFGR2_PLL2MUL12 /*!< PLL2 input clock * 12 */ +#define RCC_PLL2_MUL13 RCC_CFGR2_PLL2MUL13 /*!< PLL2 input clock * 13 */ +#define RCC_PLL2_MUL14 RCC_CFGR2_PLL2MUL14 /*!< PLL2 input clock * 14 */ +#define RCC_PLL2_MUL16 RCC_CFGR2_PLL2MUL16 /*!< PLL2 input clock * 16 */ +#define RCC_PLL2_MUL20 RCC_CFGR2_PLL2MUL20 /*!< PLL2 input clock * 20 */ + +/** + * @} + */ + +#endif /* STM32F105xC || STM32F107xC */ + +/** @defgroup RCCEx_PLL_Multiplication_Factor PLL Multiplication Factor + * @{ + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +#else +#define RCC_PLL_MUL2 RCC_CFGR_PLLMULL2 +#define RCC_PLL_MUL3 RCC_CFGR_PLLMULL3 +#endif /* STM32F105xC || STM32F107xC */ +#define RCC_PLL_MUL4 RCC_CFGR_PLLMULL4 +#define RCC_PLL_MUL5 RCC_CFGR_PLLMULL5 +#define RCC_PLL_MUL6 RCC_CFGR_PLLMULL6 +#define RCC_PLL_MUL7 RCC_CFGR_PLLMULL7 +#define RCC_PLL_MUL8 RCC_CFGR_PLLMULL8 +#define RCC_PLL_MUL9 RCC_CFGR_PLLMULL9 +#if defined(STM32F105xC) || defined(STM32F107xC) +#define RCC_PLL_MUL6_5 RCC_CFGR_PLLMULL6_5 +#else +#define RCC_PLL_MUL10 RCC_CFGR_PLLMULL10 +#define RCC_PLL_MUL11 RCC_CFGR_PLLMULL11 +#define RCC_PLL_MUL12 RCC_CFGR_PLLMULL12 +#define RCC_PLL_MUL13 RCC_CFGR_PLLMULL13 +#define RCC_PLL_MUL14 RCC_CFGR_PLLMULL14 +#define RCC_PLL_MUL15 RCC_CFGR_PLLMULL15 +#define RCC_PLL_MUL16 RCC_CFGR_PLLMULL16 +#endif /* STM32F105xC || STM32F107xC */ + +/** + * @} + */ + +/** @defgroup RCCEx_MCO1_Clock_Source MCO1 Clock Source + * @{ + */ +#define RCC_MCO1SOURCE_NOCLOCK ((uint32_t)RCC_CFGR_MCO_NOCLOCK) +#define RCC_MCO1SOURCE_SYSCLK ((uint32_t)RCC_CFGR_MCO_SYSCLK) +#define RCC_MCO1SOURCE_HSI ((uint32_t)RCC_CFGR_MCO_HSI) +#define RCC_MCO1SOURCE_HSE ((uint32_t)RCC_CFGR_MCO_HSE) +#define RCC_MCO1SOURCE_PLLCLK ((uint32_t)RCC_CFGR_MCO_PLLCLK_DIV2) +#if defined(STM32F105xC) || defined(STM32F107xC) +#define RCC_MCO1SOURCE_PLL2CLK ((uint32_t)RCC_CFGR_MCO_PLL2CLK) +#define RCC_MCO1SOURCE_PLL3CLK_DIV2 ((uint32_t)RCC_CFGR_MCO_PLL3CLK_DIV2) +#define RCC_MCO1SOURCE_EXT_HSE ((uint32_t)RCC_CFGR_MCO_EXT_HSE) +#define RCC_MCO1SOURCE_PLL3CLK ((uint32_t)RCC_CFGR_MCO_PLL3CLK) +#endif /* STM32F105xC || STM32F107xC*/ +/** + * @} + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +/** @defgroup RCCEx_Interrupt RCCEx Interrupt + * @{ + */ +#define RCC_IT_PLL2RDY ((uint8_t)RCC_CIR_PLL2RDYF) +#define RCC_IT_PLLI2SRDY ((uint8_t)RCC_CIR_PLL3RDYF) +/** + * @} + */ + +/** @defgroup RCCEx_Flag RCCEx Flag + * Elements values convention: 0XXYYYYYb + * - YYYYY : Flag position in the register + * - XX : Register index + * - 01: CR register + * @{ + */ +/* Flags in the CR register */ +#define RCC_FLAG_PLL2RDY ((uint8_t)((CR_REG_INDEX << 5U) | RCC_CR_PLL2RDY_Pos)) +#define RCC_FLAG_PLLI2SRDY ((uint8_t)((CR_REG_INDEX << 5U) | RCC_CR_PLL3RDY_Pos)) +/** + * @} + */ +#endif /* STM32F105xC || STM32F107xC*/ + +/** + * @} + */ + +/* Exported macro ------------------------------------------------------------*/ +/** @defgroup RCCEx_Exported_Macros RCCEx Exported Macros + * @{ + */ + +/** @defgroup RCCEx_Peripheral_Clock_Enable_Disable Peripheral Clock Enable Disable + * @brief Enable or disable the AHB1 peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ + +#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ + || defined(STM32F103xG) || defined(STM32F105xC) || defined (STM32F107xC)\ + || defined (STM32F100xE) +#define __HAL_RCC_DMA2_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->AHBENR, RCC_AHBENR_DMA2EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_DMA2EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_DMA2_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_DMA2EN)) +#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG || STM32F105xC || STM32F107xC || STM32F100xE */ + +#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ + || defined(STM32F103xG) || defined (STM32F100xE) +#define __HAL_RCC_FSMC_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->AHBENR, RCC_AHBENR_FSMCEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_FSMCEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_FSMC_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_FSMCEN)) +#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG || STM32F100xE */ + +#if defined(STM32F103xE) || defined(STM32F103xG) +#define __HAL_RCC_SDIO_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->AHBENR, RCC_AHBENR_SDIOEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_SDIOEN);\ + UNUSED(tmpreg); \ + } while(0U) + + +#define __HAL_RCC_SDIO_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_SDIOEN)) +#endif /* STM32F103xE || STM32F103xG */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +#define __HAL_RCC_USB_OTG_FS_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->AHBENR, RCC_AHBENR_OTGFSEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_OTGFSEN);\ + UNUSED(tmpreg); \ + } while(0U) + + +#define __HAL_RCC_USB_OTG_FS_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_OTGFSEN)) +#endif /* STM32F105xC || STM32F107xC*/ + +#if defined(STM32F107xC) +#define __HAL_RCC_ETHMAC_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_ETHMACTX_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACTXEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACTXEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_ETHMACRX_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACRXEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->AHBENR, RCC_AHBENR_ETHMACRXEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_ETHMAC_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_ETHMACEN)) +#define __HAL_RCC_ETHMACTX_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_ETHMACTXEN)) +#define __HAL_RCC_ETHMACRX_CLK_DISABLE() (RCC->AHBENR &= ~(RCC_AHBENR_ETHMACRXEN)) + +/** + * @brief Enable ETHERNET clock. + */ +#define __HAL_RCC_ETH_CLK_ENABLE() do { \ + __HAL_RCC_ETHMAC_CLK_ENABLE(); \ + __HAL_RCC_ETHMACTX_CLK_ENABLE(); \ + __HAL_RCC_ETHMACRX_CLK_ENABLE(); \ + } while(0U) +/** + * @brief Disable ETHERNET clock. + */ +#define __HAL_RCC_ETH_CLK_DISABLE() do { \ + __HAL_RCC_ETHMACTX_CLK_DISABLE(); \ + __HAL_RCC_ETHMACRX_CLK_DISABLE(); \ + __HAL_RCC_ETHMAC_CLK_DISABLE(); \ + } while(0U) + +#endif /* STM32F107xC*/ + +/** + * @} + */ + +/** @defgroup RCCEx_AHB1_Peripheral_Clock_Enable_Disable_Status AHB1 Peripheral Clock Enable Disable Status + * @brief Get the enable or disable status of the AHB1 peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ + +#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ + || defined(STM32F103xG) || defined(STM32F105xC) || defined (STM32F107xC)\ + || defined (STM32F100xE) +#define __HAL_RCC_DMA2_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_DMA2EN)) != RESET) +#define __HAL_RCC_DMA2_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_DMA2EN)) == RESET) +#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG || STM32F105xC || STM32F107xC || STM32F100xE */ +#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ + || defined(STM32F103xG) || defined (STM32F100xE) +#define __HAL_RCC_FSMC_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_FSMCEN)) != RESET) +#define __HAL_RCC_FSMC_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_FSMCEN)) == RESET) +#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG || STM32F100xE */ +#if defined(STM32F103xE) || defined(STM32F103xG) +#define __HAL_RCC_SDIO_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_SDIOEN)) != RESET) +#define __HAL_RCC_SDIO_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_SDIOEN)) == RESET) +#endif /* STM32F103xE || STM32F103xG */ +#if defined(STM32F105xC) || defined(STM32F107xC) +#define __HAL_RCC_USB_OTG_FS_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_OTGFSEN)) != RESET) +#define __HAL_RCC_USB_OTG_FS_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_OTGFSEN)) == RESET) +#endif /* STM32F105xC || STM32F107xC*/ +#if defined(STM32F107xC) +#define __HAL_RCC_ETHMAC_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACEN)) != RESET) +#define __HAL_RCC_ETHMAC_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACEN)) == RESET) +#define __HAL_RCC_ETHMACTX_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACTXEN)) != RESET) +#define __HAL_RCC_ETHMACTX_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACTXEN)) == RESET) +#define __HAL_RCC_ETHMACRX_IS_CLK_ENABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACRXEN)) != RESET) +#define __HAL_RCC_ETHMACRX_IS_CLK_DISABLED() ((RCC->AHBENR & (RCC_AHBENR_ETHMACRXEN)) == RESET) +#endif /* STM32F107xC*/ + +/** + * @} + */ + +/** @defgroup RCCEx_APB1_Clock_Enable_Disable APB1 Clock Enable Disable + * @brief Enable or disable the Low Speed APB (APB1) peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ + +#if defined(STM32F103x6) || defined(STM32F103xB) || defined(STM32F103xE)\ + || defined(STM32F103xG) || defined(STM32F105xC) ||defined(STM32F107xC) +#define __HAL_RCC_CAN1_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_CAN1EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_CAN1EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_CAN1_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_CAN1EN)) +#endif /* STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ + +#if defined(STM32F100xB) || defined(STM32F100xE) || defined(STM32F101xB)\ + || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F102xB)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ + || defined(STM32F105xC) || defined(STM32F107xC) +#define __HAL_RCC_TIM4_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM4EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM4EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_SPI2_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI2EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI2EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_USART3_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_USART3EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_USART3EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_I2C2_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_I2C2EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_I2C2EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM4_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM4EN)) +#define __HAL_RCC_SPI2_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_SPI2EN)) +#define __HAL_RCC_USART3_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_USART3EN)) +#define __HAL_RCC_I2C2_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_I2C2EN)) +#endif /* STM32F100xB || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ + +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) +#define __HAL_RCC_USB_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_USBEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_USBEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_USB_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_USBEN)) +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ + +#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ + || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC) +#define __HAL_RCC_TIM5_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM5EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM5EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM6_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM6EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM6EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM7_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM7EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM7EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_SPI3_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI3EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI3EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_UART4_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_UART4EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_UART4EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_UART5_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_UART5EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_UART5EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_DAC_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_DACEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_DACEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM5_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM5EN)) +#define __HAL_RCC_TIM6_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM6EN)) +#define __HAL_RCC_TIM7_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM7EN)) +#define __HAL_RCC_SPI3_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_SPI3EN)) +#define __HAL_RCC_UART4_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_UART4EN)) +#define __HAL_RCC_UART5_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_UART5EN)) +#define __HAL_RCC_DAC_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_DACEN)) +#endif /* STM32F101xE || STM32F103xE || STM32F101xG || (...) || STM32F105xC || STM32F107xC */ + +#if defined(STM32F100xB) || defined (STM32F100xE) +#define __HAL_RCC_TIM6_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM6EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM6EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM7_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM7EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM7EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_DAC_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_DACEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_DACEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_CEC_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_CECEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_CECEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM6_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM6EN)) +#define __HAL_RCC_TIM7_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM7EN)) +#define __HAL_RCC_DAC_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_DACEN)) +#define __HAL_RCC_CEC_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_CECEN)) +#endif /* STM32F100xB || STM32F100xE */ + +#ifdef STM32F100xE +#define __HAL_RCC_TIM5_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM5EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM5EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM12_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM12EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM12EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM13_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM13EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM13EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM14_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM14EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM14EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_SPI3_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI3EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_SPI3EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_UART4_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_UART4EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_UART4EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_UART5_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_UART5EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_UART5EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM5_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM5EN)) +#define __HAL_RCC_TIM12_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM12EN)) +#define __HAL_RCC_TIM13_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM13EN)) +#define __HAL_RCC_TIM14_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM14EN)) +#define __HAL_RCC_SPI3_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_SPI3EN)) +#define __HAL_RCC_UART4_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_UART4EN)) +#define __HAL_RCC_UART5_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_UART5EN)) +#endif /* STM32F100xE */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +#define __HAL_RCC_CAN2_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_CAN2EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_CAN2EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_CAN2_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_CAN2EN)) +#endif /* STM32F105xC || STM32F107xC */ + +#if defined(STM32F101xG) || defined(STM32F103xG) +#define __HAL_RCC_TIM12_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM12EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM12EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM13_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM13EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM13EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM14_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM14EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM14EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM12_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM12EN)) +#define __HAL_RCC_TIM13_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM13EN)) +#define __HAL_RCC_TIM14_CLK_DISABLE() (RCC->APB1ENR &= ~(RCC_APB1ENR_TIM14EN)) +#endif /* STM32F101xG || STM32F103xG*/ + +/** + * @} + */ + +/** @defgroup RCCEx_APB1_Peripheral_Clock_Enable_Disable_Status APB1 Peripheral Clock Enable Disable Status + * @brief Get the enable or disable status of the APB1 peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ + +#if defined(STM32F103x6) || defined(STM32F103xB) || defined(STM32F103xE)\ + || defined(STM32F103xG) || defined(STM32F105xC) ||defined(STM32F107xC) +#define __HAL_RCC_CAN1_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CAN1EN)) != RESET) +#define __HAL_RCC_CAN1_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CAN1EN)) == RESET) +#endif /* STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ +#if defined(STM32F100xB) || defined(STM32F100xE) || defined(STM32F101xB)\ + || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F102xB)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ + || defined(STM32F105xC) || defined(STM32F107xC) +#define __HAL_RCC_TIM4_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM4EN)) != RESET) +#define __HAL_RCC_TIM4_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM4EN)) == RESET) +#define __HAL_RCC_SPI2_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI2EN)) != RESET) +#define __HAL_RCC_SPI2_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI2EN)) == RESET) +#define __HAL_RCC_USART3_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USART3EN)) != RESET) +#define __HAL_RCC_USART3_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USART3EN)) == RESET) +#define __HAL_RCC_I2C2_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_I2C2EN)) != RESET) +#define __HAL_RCC_I2C2_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_I2C2EN)) == RESET) +#endif /* STM32F100xB || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) +#define __HAL_RCC_USB_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USBEN)) != RESET) +#define __HAL_RCC_USB_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_USBEN)) == RESET) +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ +#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ + || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC) +#define __HAL_RCC_TIM5_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM5EN)) != RESET) +#define __HAL_RCC_TIM5_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM5EN)) == RESET) +#define __HAL_RCC_TIM6_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM6EN)) != RESET) +#define __HAL_RCC_TIM6_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM6EN)) == RESET) +#define __HAL_RCC_TIM7_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM7EN)) != RESET) +#define __HAL_RCC_TIM7_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM7EN)) == RESET) +#define __HAL_RCC_SPI3_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI3EN)) != RESET) +#define __HAL_RCC_SPI3_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI3EN)) == RESET) +#define __HAL_RCC_UART4_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART4EN)) != RESET) +#define __HAL_RCC_UART4_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART4EN)) == RESET) +#define __HAL_RCC_UART5_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART5EN)) != RESET) +#define __HAL_RCC_UART5_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART5EN)) == RESET) +#define __HAL_RCC_DAC_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_DACEN)) != RESET) +#define __HAL_RCC_DAC_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_DACEN)) == RESET) +#endif /* STM32F101xE || STM32F103xE || STM32F101xG || (...) || STM32F105xC || STM32F107xC */ +#if defined(STM32F100xB) || defined (STM32F100xE) +#define __HAL_RCC_TIM6_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM6EN)) != RESET) +#define __HAL_RCC_TIM6_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM6EN)) == RESET) +#define __HAL_RCC_TIM7_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM7EN)) != RESET) +#define __HAL_RCC_TIM7_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM7EN)) == RESET) +#define __HAL_RCC_DAC_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_DACEN)) != RESET) +#define __HAL_RCC_DAC_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_DACEN)) == RESET) +#define __HAL_RCC_CEC_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CECEN)) != RESET) +#define __HAL_RCC_CEC_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CECEN)) == RESET) +#endif /* STM32F100xB || STM32F100xE */ +#ifdef STM32F100xE +#define __HAL_RCC_TIM5_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM5EN)) != RESET) +#define __HAL_RCC_TIM5_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM5EN)) == RESET) +#define __HAL_RCC_TIM12_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM12EN)) != RESET) +#define __HAL_RCC_TIM12_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM12EN)) == RESET) +#define __HAL_RCC_TIM13_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM13EN)) != RESET) +#define __HAL_RCC_TIM13_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM13EN)) == RESET) +#define __HAL_RCC_TIM14_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM14EN)) != RESET) +#define __HAL_RCC_TIM14_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM14EN)) == RESET) +#define __HAL_RCC_SPI3_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI3EN)) != RESET) +#define __HAL_RCC_SPI3_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_SPI3EN)) == RESET) +#define __HAL_RCC_UART4_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART4EN)) != RESET) +#define __HAL_RCC_UART4_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART4EN)) == RESET) +#define __HAL_RCC_UART5_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART5EN)) != RESET) +#define __HAL_RCC_UART5_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_UART5EN)) == RESET) +#define __HAL_RCC_CAN2_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CAN2EN)) != RESET) +#define __HAL_RCC_CAN2_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_CAN2EN)) == RESET) +#endif /* STM32F100xE */ +#if defined(STM32F105xC) || defined(STM32F107xC) +#define __HAL_RCC_TIM12_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM12EN)) != RESET) +#define __HAL_RCC_TIM12_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM12EN)) == RESET) +#endif /* STM32F105xC || STM32F107xC */ +#if defined(STM32F101xG) || defined(STM32F103xG) +#define __HAL_RCC_TIM13_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM13EN)) != RESET) +#define __HAL_RCC_TIM13_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM13EN)) == RESET) +#define __HAL_RCC_TIM14_IS_CLK_ENABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM14EN)) != RESET) +#define __HAL_RCC_TIM14_IS_CLK_DISABLED() ((RCC->APB1ENR & (RCC_APB1ENR_TIM14EN)) == RESET) +#endif /* STM32F101xG || STM32F103xG*/ + +/** + * @} + */ + +/** @defgroup RCCEx_APB2_Clock_Enable_Disable APB2 Clock Enable Disable + * @brief Enable or disable the High Speed APB (APB2) peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ + +#if defined(STM32F101xG) || defined(STM32F103x6) || defined(STM32F103xB)\ + || defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F103xE)\ + || defined(STM32F103xG) +#define __HAL_RCC_ADC2_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC2EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC2EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_ADC2_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_ADC2EN)) +#endif /* STM32F101xG || STM32F103x6 || STM32F103xB || STM32F105xC || STM32F107xC || STM32F103xE || STM32F103xG */ + +#if defined(STM32F100xB) || defined(STM32F100xE) +#define __HAL_RCC_TIM15_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM15EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM15EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM16_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM16EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM16EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM17_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM17EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM17EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM15_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM15EN)) +#define __HAL_RCC_TIM16_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM16EN)) +#define __HAL_RCC_TIM17_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM17EN)) +#endif /* STM32F100xB || STM32F100xE */ + +#if defined(STM32F100xE) || defined(STM32F101xB) || defined(STM32F101xE)\ + || defined(STM32F101xG) || defined(STM32F100xB) || defined(STM32F103xB)\ + || defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC)\ + || defined(STM32F107xC) +#define __HAL_RCC_GPIOE_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPEEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPEEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_GPIOE_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPEEN)) +#endif /* STM32F101x6 || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ + +#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ + || defined(STM32F103xG) +#define __HAL_RCC_GPIOF_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPFEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPFEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_GPIOG_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPGEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPGEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_GPIOF_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPFEN)) +#define __HAL_RCC_GPIOG_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPGEN)) +#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG*/ + +#if defined(STM32F103xE) || defined(STM32F103xG) +#define __HAL_RCC_TIM8_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM8EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM8EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_ADC3_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC3EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_ADC3EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM8_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM8EN)) +#define __HAL_RCC_ADC3_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_ADC3EN)) +#endif /* STM32F103xE || STM32F103xG */ + +#if defined(STM32F100xE) +#define __HAL_RCC_GPIOF_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPFEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPFEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_GPIOG_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPGEN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_IOPGEN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_GPIOF_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPFEN)) +#define __HAL_RCC_GPIOG_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_IOPGEN)) +#endif /* STM32F100xE */ + +#if defined(STM32F101xG) || defined(STM32F103xG) +#define __HAL_RCC_TIM9_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM9EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM9EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM10_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM10EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM10EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM11_CLK_ENABLE() do { \ + __IO uint32_t tmpreg; \ + SET_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM11EN);\ + /* Delay after an RCC peripheral clock enabling */ \ + tmpreg = READ_BIT(RCC->APB2ENR, RCC_APB2ENR_TIM11EN);\ + UNUSED(tmpreg); \ + } while(0U) + +#define __HAL_RCC_TIM9_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM9EN)) +#define __HAL_RCC_TIM10_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM10EN)) +#define __HAL_RCC_TIM11_CLK_DISABLE() (RCC->APB2ENR &= ~(RCC_APB2ENR_TIM11EN)) +#endif /* STM32F101xG || STM32F103xG */ + +/** + * @} + */ + +/** @defgroup RCCEx_APB2_Peripheral_Clock_Enable_Disable_Status APB2 Peripheral Clock Enable Disable Status + * @brief Get the enable or disable status of the APB2 peripheral clock. + * @note After reset, the peripheral clock (used for registers read/write access) + * is disabled and the application software has to enable this clock before + * using it. + * @{ + */ + +#if defined(STM32F101xG) || defined(STM32F103x6) || defined(STM32F103xB)\ + || defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F103xE)\ + || defined(STM32F103xG) +#define __HAL_RCC_ADC2_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC2EN)) != RESET) +#define __HAL_RCC_ADC2_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC2EN)) == RESET) +#endif /* STM32F101xG || STM32F103x6 || STM32F103xB || STM32F105xC || STM32F107xC || STM32F103xE || STM32F103xG */ +#if defined(STM32F100xB) || defined(STM32F100xE) +#define __HAL_RCC_TIM15_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM15EN)) != RESET) +#define __HAL_RCC_TIM15_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM15EN)) == RESET) +#define __HAL_RCC_TIM16_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM16EN)) != RESET) +#define __HAL_RCC_TIM16_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM16EN)) == RESET) +#define __HAL_RCC_TIM17_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM17EN)) != RESET) +#define __HAL_RCC_TIM17_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM17EN)) == RESET) +#endif /* STM32F100xB || STM32F100xE */ +#if defined(STM32F100xE) || defined(STM32F101xB) || defined(STM32F101xE)\ + || defined(STM32F101xG) || defined(STM32F100xB) || defined(STM32F103xB)\ + || defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC)\ + || defined(STM32F107xC) +#define __HAL_RCC_GPIOE_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPEEN)) != RESET) +#define __HAL_RCC_GPIOE_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPEEN)) == RESET) +#endif /* STM32F101x6 || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ +#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ + || defined(STM32F103xG) +#define __HAL_RCC_GPIOF_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPFEN)) != RESET) +#define __HAL_RCC_GPIOF_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPFEN)) == RESET) +#define __HAL_RCC_GPIOG_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPGEN)) != RESET) +#define __HAL_RCC_GPIOG_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPGEN)) == RESET) +#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG*/ +#if defined(STM32F103xE) || defined(STM32F103xG) +#define __HAL_RCC_TIM8_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM8EN)) != RESET) +#define __HAL_RCC_TIM8_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM8EN)) == RESET) +#define __HAL_RCC_ADC3_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC3EN)) != RESET) +#define __HAL_RCC_ADC3_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_ADC3EN)) == RESET) +#endif /* STM32F103xE || STM32F103xG */ +#if defined(STM32F100xE) +#define __HAL_RCC_GPIOF_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPFEN)) != RESET) +#define __HAL_RCC_GPIOF_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPFEN)) == RESET) +#define __HAL_RCC_GPIOG_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPGEN)) != RESET) +#define __HAL_RCC_GPIOG_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_IOPGEN)) == RESET) +#endif /* STM32F100xE */ +#if defined(STM32F101xG) || defined(STM32F103xG) +#define __HAL_RCC_TIM9_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM9EN)) != RESET) +#define __HAL_RCC_TIM9_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM9EN)) == RESET) +#define __HAL_RCC_TIM10_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM10EN)) != RESET) +#define __HAL_RCC_TIM10_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM10EN)) == RESET) +#define __HAL_RCC_TIM11_IS_CLK_ENABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM11EN)) != RESET) +#define __HAL_RCC_TIM11_IS_CLK_DISABLED() ((RCC->APB2ENR & (RCC_APB2ENR_TIM11EN)) == RESET) +#endif /* STM32F101xG || STM32F103xG */ + +/** + * @} + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +/** @defgroup RCCEx_Peripheral_Clock_Force_Release Peripheral Clock Force Release + * @brief Force or release AHB peripheral reset. + * @{ + */ +#define __HAL_RCC_AHB_FORCE_RESET() (RCC->AHBRSTR = 0xFFFFFFFFU) +#define __HAL_RCC_USB_OTG_FS_FORCE_RESET() (RCC->AHBRSTR |= (RCC_AHBRSTR_OTGFSRST)) +#if defined(STM32F107xC) +#define __HAL_RCC_ETHMAC_FORCE_RESET() (RCC->AHBRSTR |= (RCC_AHBRSTR_ETHMACRST)) +#endif /* STM32F107xC */ + +#define __HAL_RCC_AHB_RELEASE_RESET() (RCC->AHBRSTR = 0x00) +#define __HAL_RCC_USB_OTG_FS_RELEASE_RESET() (RCC->AHBRSTR &= ~(RCC_AHBRSTR_OTGFSRST)) +#if defined(STM32F107xC) +#define __HAL_RCC_ETHMAC_RELEASE_RESET() (RCC->AHBRSTR &= ~(RCC_AHBRSTR_ETHMACRST)) +#endif /* STM32F107xC */ + +/** + * @} + */ +#endif /* STM32F105xC || STM32F107xC */ + +/** @defgroup RCCEx_APB1_Force_Release_Reset APB1 Force Release Reset + * @brief Force or release APB1 peripheral reset. + * @{ + */ + +#if defined(STM32F103x6) || defined(STM32F103xB) || defined(STM32F103xE)\ + || defined(STM32F103xG) || defined(STM32F105xC) ||defined(STM32F107xC) +#define __HAL_RCC_CAN1_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_CAN1RST)) + +#define __HAL_RCC_CAN1_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_CAN1RST)) +#endif /* STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ + +#if defined(STM32F100xB) || defined(STM32F100xE) || defined(STM32F101xB)\ + || defined(STM32F101xE) || defined(STM32F101xG) || defined(STM32F102xB)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ + || defined(STM32F105xC) || defined(STM32F107xC) +#define __HAL_RCC_TIM4_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM4RST)) +#define __HAL_RCC_SPI2_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_SPI2RST)) +#define __HAL_RCC_USART3_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_USART3RST)) +#define __HAL_RCC_I2C2_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_I2C2RST)) + +#define __HAL_RCC_TIM4_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM4RST)) +#define __HAL_RCC_SPI2_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_SPI2RST)) +#define __HAL_RCC_USART3_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_USART3RST)) +#define __HAL_RCC_I2C2_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_I2C2RST)) +#endif /* STM32F100xB || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ + +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) +#define __HAL_RCC_USB_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_USBRST)) +#define __HAL_RCC_USB_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_USBRST)) +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ + +#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ + || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC) +#define __HAL_RCC_TIM5_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM5RST)) +#define __HAL_RCC_TIM6_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM6RST)) +#define __HAL_RCC_TIM7_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM7RST)) +#define __HAL_RCC_SPI3_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_SPI3RST)) +#define __HAL_RCC_UART4_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_UART4RST)) +#define __HAL_RCC_UART5_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_UART5RST)) +#define __HAL_RCC_DAC_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_DACRST)) + +#define __HAL_RCC_TIM5_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM5RST)) +#define __HAL_RCC_TIM6_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM6RST)) +#define __HAL_RCC_TIM7_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM7RST)) +#define __HAL_RCC_SPI3_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_SPI3RST)) +#define __HAL_RCC_UART4_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_UART4RST)) +#define __HAL_RCC_UART5_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_UART5RST)) +#define __HAL_RCC_DAC_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_DACRST)) +#endif /* STM32F101xE || STM32F103xE || STM32F101xG || (...) || STM32F105xC || STM32F107xC */ + +#if defined(STM32F100xB) || defined (STM32F100xE) +#define __HAL_RCC_TIM6_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM6RST)) +#define __HAL_RCC_TIM7_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM7RST)) +#define __HAL_RCC_DAC_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_DACRST)) +#define __HAL_RCC_CEC_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_CECRST)) + +#define __HAL_RCC_TIM6_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM6RST)) +#define __HAL_RCC_TIM7_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM7RST)) +#define __HAL_RCC_DAC_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_DACRST)) +#define __HAL_RCC_CEC_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_CECRST)) +#endif /* STM32F100xB || STM32F100xE */ + +#if defined (STM32F100xE) +#define __HAL_RCC_TIM5_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM5RST)) +#define __HAL_RCC_TIM12_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM12RST)) +#define __HAL_RCC_TIM13_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM13RST)) +#define __HAL_RCC_TIM14_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM14RST)) +#define __HAL_RCC_SPI3_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_SPI3RST)) +#define __HAL_RCC_UART4_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_UART4RST)) +#define __HAL_RCC_UART5_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_UART5RST)) + +#define __HAL_RCC_TIM5_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM5RST)) +#define __HAL_RCC_TIM12_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM12RST)) +#define __HAL_RCC_TIM13_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM13RST)) +#define __HAL_RCC_TIM14_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM14RST)) +#define __HAL_RCC_SPI3_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_SPI3RST)) +#define __HAL_RCC_UART4_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_UART4RST)) +#define __HAL_RCC_UART5_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_UART5RST)) +#endif /* STM32F100xE */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +#define __HAL_RCC_CAN2_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_CAN2RST)) + +#define __HAL_RCC_CAN2_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_CAN2RST)) +#endif /* STM32F105xC || STM32F107xC */ + +#if defined(STM32F101xG) || defined(STM32F103xG) +#define __HAL_RCC_TIM12_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM12RST)) +#define __HAL_RCC_TIM13_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM13RST)) +#define __HAL_RCC_TIM14_FORCE_RESET() (RCC->APB1RSTR |= (RCC_APB1RSTR_TIM14RST)) + +#define __HAL_RCC_TIM12_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM12RST)) +#define __HAL_RCC_TIM13_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM13RST)) +#define __HAL_RCC_TIM14_RELEASE_RESET() (RCC->APB1RSTR &= ~(RCC_APB1RSTR_TIM14RST)) +#endif /* STM32F101xG || STM32F103xG */ + +/** + * @} + */ + +/** @defgroup RCCEx_APB2_Force_Release_Reset APB2 Force Release Reset + * @brief Force or release APB2 peripheral reset. + * @{ + */ + +#if defined(STM32F101xG) || defined(STM32F103x6) || defined(STM32F103xB)\ + || defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F103xE)\ + || defined(STM32F103xG) +#define __HAL_RCC_ADC2_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_ADC2RST)) + +#define __HAL_RCC_ADC2_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_ADC2RST)) +#endif /* STM32F101xG || STM32F103x6 || STM32F103xB || STM32F105xC || STM32F107xC || STM32F103xE || STM32F103xG */ + +#if defined(STM32F100xB) || defined(STM32F100xE) +#define __HAL_RCC_TIM15_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM15RST)) +#define __HAL_RCC_TIM16_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM16RST)) +#define __HAL_RCC_TIM17_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM17RST)) + +#define __HAL_RCC_TIM15_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM15RST)) +#define __HAL_RCC_TIM16_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM16RST)) +#define __HAL_RCC_TIM17_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM17RST)) +#endif /* STM32F100xB || STM32F100xE */ + +#if defined(STM32F100xE) || defined(STM32F101xB) || defined(STM32F101xE)\ + || defined(STM32F101xG) || defined(STM32F100xB) || defined(STM32F103xB)\ + || defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC)\ + || defined(STM32F107xC) +#define __HAL_RCC_GPIOE_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPERST)) + +#define __HAL_RCC_GPIOE_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPERST)) +#endif /* STM32F101x6 || STM32F101xB || STM32F101xE || (...) || STM32F105xC || STM32F107xC */ + +#if defined(STM32F101xE) || defined(STM32F103xE) || defined(STM32F101xG)\ + || defined(STM32F103xG) +#define __HAL_RCC_GPIOF_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPFRST)) +#define __HAL_RCC_GPIOG_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPGRST)) + +#define __HAL_RCC_GPIOF_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPFRST)) +#define __HAL_RCC_GPIOG_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPGRST)) +#endif /* STM32F101xE || STM32F103xE || STM32F101xG || STM32F103xG*/ + +#if defined(STM32F103xE) || defined(STM32F103xG) +#define __HAL_RCC_TIM8_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM8RST)) +#define __HAL_RCC_ADC3_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_ADC3RST)) + +#define __HAL_RCC_TIM8_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM8RST)) +#define __HAL_RCC_ADC3_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_ADC3RST)) +#endif /* STM32F103xE || STM32F103xG */ + +#if defined(STM32F100xE) +#define __HAL_RCC_GPIOF_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPFRST)) +#define __HAL_RCC_GPIOG_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_IOPGRST)) + +#define __HAL_RCC_GPIOF_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPFRST)) +#define __HAL_RCC_GPIOG_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_IOPGRST)) +#endif /* STM32F100xE */ + +#if defined(STM32F101xG) || defined(STM32F103xG) +#define __HAL_RCC_TIM9_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM9RST)) +#define __HAL_RCC_TIM10_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM10RST)) +#define __HAL_RCC_TIM11_FORCE_RESET() (RCC->APB2RSTR |= (RCC_APB2RSTR_TIM11RST)) + +#define __HAL_RCC_TIM9_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM9RST)) +#define __HAL_RCC_TIM10_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM10RST)) +#define __HAL_RCC_TIM11_RELEASE_RESET() (RCC->APB2RSTR &= ~(RCC_APB2RSTR_TIM11RST)) +#endif /* STM32F101xG || STM32F103xG*/ + +/** + * @} + */ + +/** @defgroup RCCEx_HSE_Configuration HSE Configuration + * @{ + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F100xB)\ + || defined(STM32F100xE) +/** + * @brief Macro to configure the External High Speed oscillator (HSE) Predivision factor for PLL. + * @note Predivision factor can not be changed if PLL is used as system clock + * In this case, you have to select another source of the system clock, disable the PLL and + * then change the HSE predivision factor. + * @param __HSE_PREDIV_VALUE__ specifies the division value applied to HSE. + * This parameter must be a number between RCC_HSE_PREDIV_DIV1 and RCC_HSE_PREDIV_DIV16. + */ +#define __HAL_RCC_HSE_PREDIV_CONFIG(__HSE_PREDIV_VALUE__) MODIFY_REG(RCC->CFGR2, RCC_CFGR2_PREDIV1, (uint32_t)(__HSE_PREDIV_VALUE__)) +#else +/** + * @brief Macro to configure the External High Speed oscillator (HSE) Predivision factor for PLL. + * @note Predivision factor can not be changed if PLL is used as system clock + * In this case, you have to select another source of the system clock, disable the PLL and + * then change the HSE predivision factor. + * @param __HSE_PREDIV_VALUE__ specifies the division value applied to HSE. + * This parameter must be a number between RCC_HSE_PREDIV_DIV1 and RCC_HSE_PREDIV_DIV2. + */ +#define __HAL_RCC_HSE_PREDIV_CONFIG(__HSE_PREDIV_VALUE__) \ + MODIFY_REG(RCC->CFGR,RCC_CFGR_PLLXTPRE, (uint32_t)(__HSE_PREDIV_VALUE__)) + +#endif /* STM32F105xC || STM32F107xC */ + +#if defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F100xB)\ + || defined(STM32F100xE) +/** + * @brief Macro to get prediv1 factor for PLL. + */ +#define __HAL_RCC_HSE_GET_PREDIV() READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1) + +#else +/** + * @brief Macro to get prediv1 factor for PLL. + */ +#define __HAL_RCC_HSE_GET_PREDIV() READ_BIT(RCC->CFGR, RCC_CFGR_PLLXTPRE) + +#endif /* STM32F105xC || STM32F107xC || STM32F100xB || STM32F100xE */ + +/** + * @} + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +/** @defgroup RCCEx_PLLI2S_Configuration PLLI2S Configuration + * @{ + */ + +/** @brief Macros to enable the main PLLI2S. + * @note After enabling the main PLLI2S, the application software should wait on + * PLLI2SRDY flag to be set indicating that PLLI2S clock is stable and can + * be used as system clock source. + * @note The main PLLI2S is disabled by hardware when entering STOP and STANDBY modes. + */ +#define __HAL_RCC_PLLI2S_ENABLE() (*(__IO uint32_t *) RCC_CR_PLLI2SON_BB = ENABLE) + +/** @brief Macros to disable the main PLLI2S. + * @note The main PLLI2S is disabled by hardware when entering STOP and STANDBY modes. + */ +#define __HAL_RCC_PLLI2S_DISABLE() (*(__IO uint32_t *) RCC_CR_PLLI2SON_BB = DISABLE) + +/** @brief macros to configure the main PLLI2S multiplication factor. + * @note This function must be used only when the main PLLI2S is disabled. + * + * @param __PLLI2SMUL__ specifies the multiplication factor for PLLI2S VCO output clock + * This parameter can be one of the following values: + * @arg @ref RCC_PLLI2S_MUL8 PLLI2SVCO = PLLI2S clock entry x 8 + * @arg @ref RCC_PLLI2S_MUL9 PLLI2SVCO = PLLI2S clock entry x 9 + * @arg @ref RCC_PLLI2S_MUL10 PLLI2SVCO = PLLI2S clock entry x 10 + * @arg @ref RCC_PLLI2S_MUL11 PLLI2SVCO = PLLI2S clock entry x 11 + * @arg @ref RCC_PLLI2S_MUL12 PLLI2SVCO = PLLI2S clock entry x 12 + * @arg @ref RCC_PLLI2S_MUL13 PLLI2SVCO = PLLI2S clock entry x 13 + * @arg @ref RCC_PLLI2S_MUL14 PLLI2SVCO = PLLI2S clock entry x 14 + * @arg @ref RCC_PLLI2S_MUL16 PLLI2SVCO = PLLI2S clock entry x 16 + * @arg @ref RCC_PLLI2S_MUL20 PLLI2SVCO = PLLI2S clock entry x 20 + * + */ +#define __HAL_RCC_PLLI2S_CONFIG(__PLLI2SMUL__)\ + MODIFY_REG(RCC->CFGR2, RCC_CFGR2_PLL3MUL,(__PLLI2SMUL__)) + +/** + * @} + */ + +#endif /* STM32F105xC || STM32F107xC */ + +/** @defgroup RCCEx_Peripheral_Configuration Peripheral Configuration + * @brief Macros to configure clock source of different peripherals. + * @{ + */ + +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) +/** @brief Macro to configure the USB clock. + * @param __USBCLKSOURCE__ specifies the USB clock source. + * This parameter can be one of the following values: + * @arg @ref RCC_USBCLKSOURCE_PLL PLL clock divided by 1 selected as USB clock + * @arg @ref RCC_USBCLKSOURCE_PLL_DIV1_5 PLL clock divided by 1.5 selected as USB clock + */ +#define __HAL_RCC_USB_CONFIG(__USBCLKSOURCE__) \ + MODIFY_REG(RCC->CFGR, RCC_CFGR_USBPRE, (uint32_t)(__USBCLKSOURCE__)) + +/** @brief Macro to get the USB clock (USBCLK). + * @retval The clock source can be one of the following values: + * @arg @ref RCC_USBCLKSOURCE_PLL PLL clock divided by 1 selected as USB clock + * @arg @ref RCC_USBCLKSOURCE_PLL_DIV1_5 PLL clock divided by 1.5 selected as USB clock + */ +#define __HAL_RCC_GET_USB_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR, RCC_CFGR_USBPRE))) + +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ + +#if defined(STM32F105xC) || defined(STM32F107xC) + +/** @brief Macro to configure the USB OTSclock. + * @param __USBCLKSOURCE__ specifies the USB clock source. + * This parameter can be one of the following values: + * @arg @ref RCC_USBCLKSOURCE_PLL_DIV2 PLL clock divided by 2 selected as USB OTG FS clock + * @arg @ref RCC_USBCLKSOURCE_PLL_DIV3 PLL clock divided by 3 selected as USB OTG FS clock + */ +#define __HAL_RCC_USB_CONFIG(__USBCLKSOURCE__) \ + MODIFY_REG(RCC->CFGR, RCC_CFGR_OTGFSPRE, (uint32_t)(__USBCLKSOURCE__)) + +/** @brief Macro to get the USB clock (USBCLK). + * @retval The clock source can be one of the following values: + * @arg @ref RCC_USBCLKSOURCE_PLL_DIV2 PLL clock divided by 2 selected as USB OTG FS clock + * @arg @ref RCC_USBCLKSOURCE_PLL_DIV3 PLL clock divided by 3 selected as USB OTG FS clock + */ +#define __HAL_RCC_GET_USB_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR, RCC_CFGR_OTGFSPRE))) + +#endif /* STM32F105xC || STM32F107xC */ + +/** @brief Macro to configure the ADCx clock (x=1 to 3 depending on devices). + * @param __ADCCLKSOURCE__ specifies the ADC clock source. + * This parameter can be one of the following values: + * @arg @ref RCC_ADCPCLK2_DIV2 PCLK2 clock divided by 2 selected as ADC clock + * @arg @ref RCC_ADCPCLK2_DIV4 PCLK2 clock divided by 4 selected as ADC clock + * @arg @ref RCC_ADCPCLK2_DIV6 PCLK2 clock divided by 6 selected as ADC clock + * @arg @ref RCC_ADCPCLK2_DIV8 PCLK2 clock divided by 8 selected as ADC clock + */ +#define __HAL_RCC_ADC_CONFIG(__ADCCLKSOURCE__) \ + MODIFY_REG(RCC->CFGR, RCC_CFGR_ADCPRE, (uint32_t)(__ADCCLKSOURCE__)) + +/** @brief Macro to get the ADC clock (ADCxCLK, x=1 to 3 depending on devices). + * @retval The clock source can be one of the following values: + * @arg @ref RCC_ADCPCLK2_DIV2 PCLK2 clock divided by 2 selected as ADC clock + * @arg @ref RCC_ADCPCLK2_DIV4 PCLK2 clock divided by 4 selected as ADC clock + * @arg @ref RCC_ADCPCLK2_DIV6 PCLK2 clock divided by 6 selected as ADC clock + * @arg @ref RCC_ADCPCLK2_DIV8 PCLK2 clock divided by 8 selected as ADC clock + */ +#define __HAL_RCC_GET_ADC_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR, RCC_CFGR_ADCPRE))) + +/** + * @} + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) + +/** @addtogroup RCCEx_HSE_Configuration + * @{ + */ + +/** + * @brief Macro to configure the PLL2 & PLLI2S Predivision factor. + * @note Predivision factor can not be changed if PLL2 is used indirectly as system clock + * In this case, you have to select another source of the system clock, disable the PLL2 and PLLI2S and + * then change the PREDIV2 factor. + * @param __HSE_PREDIV2_VALUE__ specifies the PREDIV2 value applied to PLL2 & PLLI2S. + * This parameter must be a number between RCC_HSE_PREDIV2_DIV1 and RCC_HSE_PREDIV2_DIV16. + */ +#define __HAL_RCC_HSE_PREDIV2_CONFIG(__HSE_PREDIV2_VALUE__) \ + MODIFY_REG(RCC->CFGR2, RCC_CFGR2_PREDIV2, (uint32_t)(__HSE_PREDIV2_VALUE__)) + +/** + * @brief Macro to get prediv2 factor for PLL2 & PLL3. + */ +#define __HAL_RCC_HSE_GET_PREDIV2() READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV2) + +/** + * @} + */ + +/** @addtogroup RCCEx_PLLI2S_Configuration + * @{ + */ + +/** @brief Macros to enable the main PLL2. + * @note After enabling the main PLL2, the application software should wait on + * PLL2RDY flag to be set indicating that PLL2 clock is stable and can + * be used as system clock source. + * @note The main PLL2 is disabled by hardware when entering STOP and STANDBY modes. + */ +#define __HAL_RCC_PLL2_ENABLE() (*(__IO uint32_t *) RCC_CR_PLL2ON_BB = ENABLE) + +/** @brief Macros to disable the main PLL2. + * @note The main PLL2 can not be disabled if it is used indirectly as system clock source + * @note The main PLL2 is disabled by hardware when entering STOP and STANDBY modes. + */ +#define __HAL_RCC_PLL2_DISABLE() (*(__IO uint32_t *) RCC_CR_PLL2ON_BB = DISABLE) + +/** @brief macros to configure the main PLL2 multiplication factor. + * @note This function must be used only when the main PLL2 is disabled. + * + * @param __PLL2MUL__ specifies the multiplication factor for PLL2 VCO output clock + * This parameter can be one of the following values: + * @arg @ref RCC_PLL2_MUL8 PLL2VCO = PLL2 clock entry x 8 + * @arg @ref RCC_PLL2_MUL9 PLL2VCO = PLL2 clock entry x 9 + * @arg @ref RCC_PLL2_MUL10 PLL2VCO = PLL2 clock entry x 10 + * @arg @ref RCC_PLL2_MUL11 PLL2VCO = PLL2 clock entry x 11 + * @arg @ref RCC_PLL2_MUL12 PLL2VCO = PLL2 clock entry x 12 + * @arg @ref RCC_PLL2_MUL13 PLL2VCO = PLL2 clock entry x 13 + * @arg @ref RCC_PLL2_MUL14 PLL2VCO = PLL2 clock entry x 14 + * @arg @ref RCC_PLL2_MUL16 PLL2VCO = PLL2 clock entry x 16 + * @arg @ref RCC_PLL2_MUL20 PLL2VCO = PLL2 clock entry x 20 + * + */ +#define __HAL_RCC_PLL2_CONFIG(__PLL2MUL__)\ + MODIFY_REG(RCC->CFGR2, RCC_CFGR2_PLL2MUL,(__PLL2MUL__)) + +/** + * @} + */ + +/** @defgroup RCCEx_I2S_Configuration I2S Configuration + * @brief Macros to configure clock source of I2S peripherals. + * @{ + */ + +/** @brief Macro to configure the I2S2 clock. + * @param __I2S2CLKSOURCE__ specifies the I2S2 clock source. + * This parameter can be one of the following values: + * @arg @ref RCC_I2S2CLKSOURCE_SYSCLK system clock selected as I2S3 clock entry + * @arg @ref RCC_I2S2CLKSOURCE_PLLI2S_VCO PLLI2S VCO clock selected as I2S3 clock entry + */ +#define __HAL_RCC_I2S2_CONFIG(__I2S2CLKSOURCE__) \ + MODIFY_REG(RCC->CFGR2, RCC_CFGR2_I2S2SRC, (uint32_t)(__I2S2CLKSOURCE__)) + +/** @brief Macro to get the I2S2 clock (I2S2CLK). + * @retval The clock source can be one of the following values: + * @arg @ref RCC_I2S2CLKSOURCE_SYSCLK system clock selected as I2S3 clock entry + * @arg @ref RCC_I2S2CLKSOURCE_PLLI2S_VCO PLLI2S VCO clock selected as I2S3 clock entry + */ +#define __HAL_RCC_GET_I2S2_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR2, RCC_CFGR2_I2S2SRC))) + +/** @brief Macro to configure the I2S3 clock. + * @param __I2S2CLKSOURCE__ specifies the I2S3 clock source. + * This parameter can be one of the following values: + * @arg @ref RCC_I2S3CLKSOURCE_SYSCLK system clock selected as I2S3 clock entry + * @arg @ref RCC_I2S3CLKSOURCE_PLLI2S_VCO PLLI2S VCO clock selected as I2S3 clock entry + */ +#define __HAL_RCC_I2S3_CONFIG(__I2S2CLKSOURCE__) \ + MODIFY_REG(RCC->CFGR2, RCC_CFGR2_I2S3SRC, (uint32_t)(__I2S2CLKSOURCE__)) + +/** @brief Macro to get the I2S3 clock (I2S3CLK). + * @retval The clock source can be one of the following values: + * @arg @ref RCC_I2S3CLKSOURCE_SYSCLK system clock selected as I2S3 clock entry + * @arg @ref RCC_I2S3CLKSOURCE_PLLI2S_VCO PLLI2S VCO clock selected as I2S3 clock entry + */ +#define __HAL_RCC_GET_I2S3_SOURCE() ((uint32_t)(READ_BIT(RCC->CFGR2, RCC_CFGR2_I2S3SRC))) + +/** + * @} + */ + +#endif /* STM32F105xC || STM32F107xC */ +/** + * @} + */ + +/* Exported functions --------------------------------------------------------*/ +/** @addtogroup RCCEx_Exported_Functions + * @{ + */ + +/** @addtogroup RCCEx_Exported_Functions_Group1 + * @{ + */ + +HAL_StatusTypeDef HAL_RCCEx_PeriphCLKConfig(RCC_PeriphCLKInitTypeDef *PeriphClkInit); +void HAL_RCCEx_GetPeriphCLKConfig(RCC_PeriphCLKInitTypeDef *PeriphClkInit); +uint32_t HAL_RCCEx_GetPeriphCLKFreq(uint32_t PeriphClk); + +/** + * @} + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +/** @addtogroup RCCEx_Exported_Functions_Group2 + * @{ + */ +HAL_StatusTypeDef HAL_RCCEx_EnablePLLI2S(RCC_PLLI2SInitTypeDef *PLLI2SInit); +HAL_StatusTypeDef HAL_RCCEx_DisablePLLI2S(void); + +/** + * @} + */ + +/** @addtogroup RCCEx_Exported_Functions_Group3 + * @{ + */ +HAL_StatusTypeDef HAL_RCCEx_EnablePLL2(RCC_PLL2InitTypeDef *PLL2Init); +HAL_StatusTypeDef HAL_RCCEx_DisablePLL2(void); + +/** + * @} + */ +#endif /* STM32F105xC || STM32F107xC */ + +/** + * @} + */ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /* __STM32F1xx_HAL_RCC_EX_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ + diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h similarity index 98% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h index 999f62e..fb80276 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim.h @@ -1,2129 +1,2129 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_tim.h - * @author MCD Application Team - * @brief Header file of TIM HAL module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef STM32F1xx_HAL_TIM_H -#define STM32F1xx_HAL_TIM_H - -#ifdef __cplusplus -extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup TIM - * @{ - */ - -/* Exported types ------------------------------------------------------------*/ -/** @defgroup TIM_Exported_Types TIM Exported Types - * @{ - */ - -/** - * @brief TIM Time base Configuration Structure definition - */ -typedef struct -{ - uint32_t Prescaler; /*!< Specifies the prescaler value used to divide the TIM clock. - This parameter can be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF */ - - uint32_t CounterMode; /*!< Specifies the counter mode. - This parameter can be a value of @ref TIM_Counter_Mode */ - - uint32_t Period; /*!< Specifies the period value to be loaded into the active - Auto-Reload Register at the next update event. - This parameter can be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF. */ - - uint32_t ClockDivision; /*!< Specifies the clock division. - This parameter can be a value of @ref TIM_ClockDivision */ - - uint32_t RepetitionCounter; /*!< Specifies the repetition counter value. Each time the RCR downcounter - reaches zero, an update event is generated and counting restarts - from the RCR value (N). - This means in PWM mode that (N+1) corresponds to: - - the number of PWM periods in edge-aligned mode - - the number of half PWM period in center-aligned mode - GP timers: this parameter must be a number between Min_Data = 0x00 and - Max_Data = 0xFF. - Advanced timers: this parameter must be a number between Min_Data = 0x0000 and - Max_Data = 0xFFFF. */ - - uint32_t AutoReloadPreload; /*!< Specifies the auto-reload preload. - This parameter can be a value of @ref TIM_AutoReloadPreload */ -} TIM_Base_InitTypeDef; - -/** - * @brief TIM Output Compare Configuration Structure definition - */ -typedef struct -{ - uint32_t OCMode; /*!< Specifies the TIM mode. - This parameter can be a value of @ref TIM_Output_Compare_and_PWM_modes */ - - uint32_t Pulse; /*!< Specifies the pulse value to be loaded into the Capture Compare Register. - This parameter can be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF */ - - uint32_t OCPolarity; /*!< Specifies the output polarity. - This parameter can be a value of @ref TIM_Output_Compare_Polarity */ - - uint32_t OCNPolarity; /*!< Specifies the complementary output polarity. - This parameter can be a value of @ref TIM_Output_Compare_N_Polarity - @note This parameter is valid only for timer instances supporting break feature. */ - - uint32_t OCFastMode; /*!< Specifies the Fast mode state. - This parameter can be a value of @ref TIM_Output_Fast_State - @note This parameter is valid only in PWM1 and PWM2 mode. */ - - - uint32_t OCIdleState; /*!< Specifies the TIM Output Compare pin state during Idle state. - This parameter can be a value of @ref TIM_Output_Compare_Idle_State - @note This parameter is valid only for timer instances supporting break feature. */ - - uint32_t OCNIdleState; /*!< Specifies the TIM Output Compare pin state during Idle state. - This parameter can be a value of @ref TIM_Output_Compare_N_Idle_State - @note This parameter is valid only for timer instances supporting break feature. */ -} TIM_OC_InitTypeDef; - -/** - * @brief TIM One Pulse Mode Configuration Structure definition - */ -typedef struct -{ - uint32_t OCMode; /*!< Specifies the TIM mode. - This parameter can be a value of @ref TIM_Output_Compare_and_PWM_modes */ - - uint32_t Pulse; /*!< Specifies the pulse value to be loaded into the Capture Compare Register. - This parameter can be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF */ - - uint32_t OCPolarity; /*!< Specifies the output polarity. - This parameter can be a value of @ref TIM_Output_Compare_Polarity */ - - uint32_t OCNPolarity; /*!< Specifies the complementary output polarity. - This parameter can be a value of @ref TIM_Output_Compare_N_Polarity - @note This parameter is valid only for timer instances supporting break feature. */ - - uint32_t OCIdleState; /*!< Specifies the TIM Output Compare pin state during Idle state. - This parameter can be a value of @ref TIM_Output_Compare_Idle_State - @note This parameter is valid only for timer instances supporting break feature. */ - - uint32_t OCNIdleState; /*!< Specifies the TIM Output Compare pin state during Idle state. - This parameter can be a value of @ref TIM_Output_Compare_N_Idle_State - @note This parameter is valid only for timer instances supporting break feature. */ - - uint32_t ICPolarity; /*!< Specifies the active edge of the input signal. - This parameter can be a value of @ref TIM_Input_Capture_Polarity */ - - uint32_t ICSelection; /*!< Specifies the input. - This parameter can be a value of @ref TIM_Input_Capture_Selection */ - - uint32_t ICFilter; /*!< Specifies the input capture filter. - This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ -} TIM_OnePulse_InitTypeDef; - -/** - * @brief TIM Input Capture Configuration Structure definition - */ -typedef struct -{ - uint32_t ICPolarity; /*!< Specifies the active edge of the input signal. - This parameter can be a value of @ref TIM_Input_Capture_Polarity */ - - uint32_t ICSelection; /*!< Specifies the input. - This parameter can be a value of @ref TIM_Input_Capture_Selection */ - - uint32_t ICPrescaler; /*!< Specifies the Input Capture Prescaler. - This parameter can be a value of @ref TIM_Input_Capture_Prescaler */ - - uint32_t ICFilter; /*!< Specifies the input capture filter. - This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ -} TIM_IC_InitTypeDef; - -/** - * @brief TIM Encoder Configuration Structure definition - */ -typedef struct -{ - uint32_t EncoderMode; /*!< Specifies the active edge of the input signal. - This parameter can be a value of @ref TIM_Encoder_Mode */ - - uint32_t IC1Polarity; /*!< Specifies the active edge of the input signal. - This parameter can be a value of @ref TIM_Encoder_Input_Polarity */ - - uint32_t IC1Selection; /*!< Specifies the input. - This parameter can be a value of @ref TIM_Input_Capture_Selection */ - - uint32_t IC1Prescaler; /*!< Specifies the Input Capture Prescaler. - This parameter can be a value of @ref TIM_Input_Capture_Prescaler */ - - uint32_t IC1Filter; /*!< Specifies the input capture filter. - This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ - - uint32_t IC2Polarity; /*!< Specifies the active edge of the input signal. - This parameter can be a value of @ref TIM_Encoder_Input_Polarity */ - - uint32_t IC2Selection; /*!< Specifies the input. - This parameter can be a value of @ref TIM_Input_Capture_Selection */ - - uint32_t IC2Prescaler; /*!< Specifies the Input Capture Prescaler. - This parameter can be a value of @ref TIM_Input_Capture_Prescaler */ - - uint32_t IC2Filter; /*!< Specifies the input capture filter. - This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ -} TIM_Encoder_InitTypeDef; - -/** - * @brief Clock Configuration Handle Structure definition - */ -typedef struct -{ - uint32_t ClockSource; /*!< TIM clock sources - This parameter can be a value of @ref TIM_Clock_Source */ - uint32_t ClockPolarity; /*!< TIM clock polarity - This parameter can be a value of @ref TIM_Clock_Polarity */ - uint32_t ClockPrescaler; /*!< TIM clock prescaler - This parameter can be a value of @ref TIM_Clock_Prescaler */ - uint32_t ClockFilter; /*!< TIM clock filter - This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ -} TIM_ClockConfigTypeDef; - -/** - * @brief TIM Clear Input Configuration Handle Structure definition - */ -typedef struct -{ - uint32_t ClearInputState; /*!< TIM clear Input state - This parameter can be ENABLE or DISABLE */ - uint32_t ClearInputSource; /*!< TIM clear Input sources - This parameter can be a value of @ref TIM_ClearInput_Source */ - uint32_t ClearInputPolarity; /*!< TIM Clear Input polarity - This parameter can be a value of @ref TIM_ClearInput_Polarity */ - uint32_t ClearInputPrescaler; /*!< TIM Clear Input prescaler - This parameter must be 0: When OCRef clear feature is used with ETR source, - ETR prescaler must be off */ - uint32_t ClearInputFilter; /*!< TIM Clear Input filter - This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ -} TIM_ClearInputConfigTypeDef; - -/** - * @brief TIM Master configuration Structure definition - */ -typedef struct -{ - uint32_t MasterOutputTrigger; /*!< Trigger output (TRGO) selection - This parameter can be a value of @ref TIM_Master_Mode_Selection */ - uint32_t MasterSlaveMode; /*!< Master/slave mode selection - This parameter can be a value of @ref TIM_Master_Slave_Mode - @note When the Master/slave mode is enabled, the effect of - an event on the trigger input (TRGI) is delayed to allow a - perfect synchronization between the current timer and its - slaves (through TRGO). It is not mandatory in case of timer - synchronization mode. */ -} TIM_MasterConfigTypeDef; - -/** - * @brief TIM Slave configuration Structure definition - */ -typedef struct -{ - uint32_t SlaveMode; /*!< Slave mode selection - This parameter can be a value of @ref TIM_Slave_Mode */ - uint32_t InputTrigger; /*!< Input Trigger source - This parameter can be a value of @ref TIM_Trigger_Selection */ - uint32_t TriggerPolarity; /*!< Input Trigger polarity - This parameter can be a value of @ref TIM_Trigger_Polarity */ - uint32_t TriggerPrescaler; /*!< Input trigger prescaler - This parameter can be a value of @ref TIM_Trigger_Prescaler */ - uint32_t TriggerFilter; /*!< Input trigger filter - This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ - -} TIM_SlaveConfigTypeDef; - -/** - * @brief TIM Break input(s) and Dead time configuration Structure definition - * @note 2 break inputs can be configured (BKIN and BKIN2) with configurable - * filter and polarity. - */ -typedef struct -{ - uint32_t OffStateRunMode; /*!< TIM off state in run mode, This parameter can be a value of @ref TIM_OSSR_Off_State_Selection_for_Run_mode_state */ - - uint32_t OffStateIDLEMode; /*!< TIM off state in IDLE mode, This parameter can be a value of @ref TIM_OSSI_Off_State_Selection_for_Idle_mode_state */ - - uint32_t LockLevel; /*!< TIM Lock level, This parameter can be a value of @ref TIM_Lock_level */ - - uint32_t DeadTime; /*!< TIM dead Time, This parameter can be a number between Min_Data = 0x00 and Max_Data = 0xFF */ - - uint32_t BreakState; /*!< TIM Break State, This parameter can be a value of @ref TIM_Break_Input_enable_disable */ - - uint32_t BreakPolarity; /*!< TIM Break input polarity, This parameter can be a value of @ref TIM_Break_Polarity */ - - uint32_t BreakFilter; /*!< Specifies the break input filter.This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ - - uint32_t AutomaticOutput; /*!< TIM Automatic Output Enable state, This parameter can be a value of @ref TIM_AOE_Bit_Set_Reset */ - -} TIM_BreakDeadTimeConfigTypeDef; - -/** - * @brief HAL State structures definition - */ -typedef enum -{ - HAL_TIM_STATE_RESET = 0x00U, /*!< Peripheral not yet initialized or disabled */ - HAL_TIM_STATE_READY = 0x01U, /*!< Peripheral Initialized and ready for use */ - HAL_TIM_STATE_BUSY = 0x02U, /*!< An internal process is ongoing */ - HAL_TIM_STATE_TIMEOUT = 0x03U, /*!< Timeout state */ - HAL_TIM_STATE_ERROR = 0x04U /*!< Reception process is ongoing */ -} HAL_TIM_StateTypeDef; - -/** - * @brief TIM Channel States definition - */ -typedef enum -{ - HAL_TIM_CHANNEL_STATE_RESET = 0x00U, /*!< TIM Channel initial state */ - HAL_TIM_CHANNEL_STATE_READY = 0x01U, /*!< TIM Channel ready for use */ - HAL_TIM_CHANNEL_STATE_BUSY = 0x02U, /*!< An internal process is ongoing on the TIM channel */ -} HAL_TIM_ChannelStateTypeDef; - -/** - * @brief DMA Burst States definition - */ -typedef enum -{ - HAL_DMA_BURST_STATE_RESET = 0x00U, /*!< DMA Burst initial state */ - HAL_DMA_BURST_STATE_READY = 0x01U, /*!< DMA Burst ready for use */ - HAL_DMA_BURST_STATE_BUSY = 0x02U, /*!< Ongoing DMA Burst */ -} HAL_TIM_DMABurstStateTypeDef; - -/** - * @brief HAL Active channel structures definition - */ -typedef enum -{ - HAL_TIM_ACTIVE_CHANNEL_1 = 0x01U, /*!< The active channel is 1 */ - HAL_TIM_ACTIVE_CHANNEL_2 = 0x02U, /*!< The active channel is 2 */ - HAL_TIM_ACTIVE_CHANNEL_3 = 0x04U, /*!< The active channel is 3 */ - HAL_TIM_ACTIVE_CHANNEL_4 = 0x08U, /*!< The active channel is 4 */ - HAL_TIM_ACTIVE_CHANNEL_CLEARED = 0x00U /*!< All active channels cleared */ -} HAL_TIM_ActiveChannel; - -/** - * @brief TIM Time Base Handle Structure definition - */ -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) -typedef struct __TIM_HandleTypeDef -#else -typedef struct -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ -{ - TIM_TypeDef *Instance; /*!< Register base address */ - TIM_Base_InitTypeDef Init; /*!< TIM Time Base required parameters */ - HAL_TIM_ActiveChannel Channel; /*!< Active channel */ - DMA_HandleTypeDef *hdma[7]; /*!< DMA Handlers array - This array is accessed by a @ref DMA_Handle_index */ - HAL_LockTypeDef Lock; /*!< Locking object */ - __IO HAL_TIM_StateTypeDef State; /*!< TIM operation state */ - __IO HAL_TIM_ChannelStateTypeDef ChannelState[4]; /*!< TIM channel operation state */ - __IO HAL_TIM_ChannelStateTypeDef ChannelNState[4]; /*!< TIM complementary channel operation state */ - __IO HAL_TIM_DMABurstStateTypeDef DMABurstState; /*!< DMA burst operation state */ - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - void (* Base_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Base Msp Init Callback */ - void (* Base_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Base Msp DeInit Callback */ - void (* IC_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM IC Msp Init Callback */ - void (* IC_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM IC Msp DeInit Callback */ - void (* OC_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM OC Msp Init Callback */ - void (* OC_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM OC Msp DeInit Callback */ - void (* PWM_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM PWM Msp Init Callback */ - void (* PWM_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM PWM Msp DeInit Callback */ - void (* OnePulse_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM One Pulse Msp Init Callback */ - void (* OnePulse_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM One Pulse Msp DeInit Callback */ - void (* Encoder_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Encoder Msp Init Callback */ - void (* Encoder_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Encoder Msp DeInit Callback */ - void (* HallSensor_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Hall Sensor Msp Init Callback */ - void (* HallSensor_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Hall Sensor Msp DeInit Callback */ - void (* PeriodElapsedCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Period Elapsed Callback */ - void (* PeriodElapsedHalfCpltCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Period Elapsed half complete Callback */ - void (* TriggerCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Trigger Callback */ - void (* TriggerHalfCpltCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Trigger half complete Callback */ - void (* IC_CaptureCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Input Capture Callback */ - void (* IC_CaptureHalfCpltCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Input Capture half complete Callback */ - void (* OC_DelayElapsedCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Output Compare Delay Elapsed Callback */ - void (* PWM_PulseFinishedCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM PWM Pulse Finished Callback */ - void (* PWM_PulseFinishedHalfCpltCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM PWM Pulse Finished half complete Callback */ - void (* ErrorCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Error Callback */ - void (* CommutationCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Commutation Callback */ - void (* CommutationHalfCpltCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Commutation half complete Callback */ - void (* BreakCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Break Callback */ -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ -} TIM_HandleTypeDef; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) -/** - * @brief HAL TIM Callback ID enumeration definition - */ -typedef enum -{ - HAL_TIM_BASE_MSPINIT_CB_ID = 0x00U /*!< TIM Base MspInit Callback ID */ - , HAL_TIM_BASE_MSPDEINIT_CB_ID = 0x01U /*!< TIM Base MspDeInit Callback ID */ - , HAL_TIM_IC_MSPINIT_CB_ID = 0x02U /*!< TIM IC MspInit Callback ID */ - , HAL_TIM_IC_MSPDEINIT_CB_ID = 0x03U /*!< TIM IC MspDeInit Callback ID */ - , HAL_TIM_OC_MSPINIT_CB_ID = 0x04U /*!< TIM OC MspInit Callback ID */ - , HAL_TIM_OC_MSPDEINIT_CB_ID = 0x05U /*!< TIM OC MspDeInit Callback ID */ - , HAL_TIM_PWM_MSPINIT_CB_ID = 0x06U /*!< TIM PWM MspInit Callback ID */ - , HAL_TIM_PWM_MSPDEINIT_CB_ID = 0x07U /*!< TIM PWM MspDeInit Callback ID */ - , HAL_TIM_ONE_PULSE_MSPINIT_CB_ID = 0x08U /*!< TIM One Pulse MspInit Callback ID */ - , HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID = 0x09U /*!< TIM One Pulse MspDeInit Callback ID */ - , HAL_TIM_ENCODER_MSPINIT_CB_ID = 0x0AU /*!< TIM Encoder MspInit Callback ID */ - , HAL_TIM_ENCODER_MSPDEINIT_CB_ID = 0x0BU /*!< TIM Encoder MspDeInit Callback ID */ - , HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID = 0x0CU /*!< TIM Hall Sensor MspDeInit Callback ID */ - , HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID = 0x0DU /*!< TIM Hall Sensor MspDeInit Callback ID */ - , HAL_TIM_PERIOD_ELAPSED_CB_ID = 0x0EU /*!< TIM Period Elapsed Callback ID */ - , HAL_TIM_PERIOD_ELAPSED_HALF_CB_ID = 0x0FU /*!< TIM Period Elapsed half complete Callback ID */ - , HAL_TIM_TRIGGER_CB_ID = 0x10U /*!< TIM Trigger Callback ID */ - , HAL_TIM_TRIGGER_HALF_CB_ID = 0x11U /*!< TIM Trigger half complete Callback ID */ - - , HAL_TIM_IC_CAPTURE_CB_ID = 0x12U /*!< TIM Input Capture Callback ID */ - , HAL_TIM_IC_CAPTURE_HALF_CB_ID = 0x13U /*!< TIM Input Capture half complete Callback ID */ - , HAL_TIM_OC_DELAY_ELAPSED_CB_ID = 0x14U /*!< TIM Output Compare Delay Elapsed Callback ID */ - , HAL_TIM_PWM_PULSE_FINISHED_CB_ID = 0x15U /*!< TIM PWM Pulse Finished Callback ID */ - , HAL_TIM_PWM_PULSE_FINISHED_HALF_CB_ID = 0x16U /*!< TIM PWM Pulse Finished half complete Callback ID */ - , HAL_TIM_ERROR_CB_ID = 0x17U /*!< TIM Error Callback ID */ - , HAL_TIM_COMMUTATION_CB_ID = 0x18U /*!< TIM Commutation Callback ID */ - , HAL_TIM_COMMUTATION_HALF_CB_ID = 0x19U /*!< TIM Commutation half complete Callback ID */ - , HAL_TIM_BREAK_CB_ID = 0x1AU /*!< TIM Break Callback ID */ -} HAL_TIM_CallbackIDTypeDef; - -/** - * @brief HAL TIM Callback pointer definition - */ -typedef void (*pTIM_CallbackTypeDef)(TIM_HandleTypeDef *htim); /*!< pointer to the TIM callback function */ - -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - -/** - * @} - */ -/* End of exported types -----------------------------------------------------*/ - -/* Exported constants --------------------------------------------------------*/ -/** @defgroup TIM_Exported_Constants TIM Exported Constants - * @{ - */ - -/** @defgroup TIM_ClearInput_Source TIM Clear Input Source - * @{ - */ -#define TIM_CLEARINPUTSOURCE_NONE 0x00000000U /*!< OCREF_CLR is disabled */ -#define TIM_CLEARINPUTSOURCE_ETR 0x00000001U /*!< OCREF_CLR is connected to ETRF input */ -/** - * @} - */ - -/** @defgroup TIM_DMA_Base_address TIM DMA Base Address - * @{ - */ -#define TIM_DMABASE_CR1 0x00000000U -#define TIM_DMABASE_CR2 0x00000001U -#define TIM_DMABASE_SMCR 0x00000002U -#define TIM_DMABASE_DIER 0x00000003U -#define TIM_DMABASE_SR 0x00000004U -#define TIM_DMABASE_EGR 0x00000005U -#define TIM_DMABASE_CCMR1 0x00000006U -#define TIM_DMABASE_CCMR2 0x00000007U -#define TIM_DMABASE_CCER 0x00000008U -#define TIM_DMABASE_CNT 0x00000009U -#define TIM_DMABASE_PSC 0x0000000AU -#define TIM_DMABASE_ARR 0x0000000BU -#define TIM_DMABASE_RCR 0x0000000CU -#define TIM_DMABASE_CCR1 0x0000000DU -#define TIM_DMABASE_CCR2 0x0000000EU -#define TIM_DMABASE_CCR3 0x0000000FU -#define TIM_DMABASE_CCR4 0x00000010U -#define TIM_DMABASE_BDTR 0x00000011U -#define TIM_DMABASE_DCR 0x00000012U -#define TIM_DMABASE_DMAR 0x00000013U -/** - * @} - */ - -/** @defgroup TIM_Event_Source TIM Event Source - * @{ - */ -#define TIM_EVENTSOURCE_UPDATE TIM_EGR_UG /*!< Reinitialize the counter and generates an update of the registers */ -#define TIM_EVENTSOURCE_CC1 TIM_EGR_CC1G /*!< A capture/compare event is generated on channel 1 */ -#define TIM_EVENTSOURCE_CC2 TIM_EGR_CC2G /*!< A capture/compare event is generated on channel 2 */ -#define TIM_EVENTSOURCE_CC3 TIM_EGR_CC3G /*!< A capture/compare event is generated on channel 3 */ -#define TIM_EVENTSOURCE_CC4 TIM_EGR_CC4G /*!< A capture/compare event is generated on channel 4 */ -#define TIM_EVENTSOURCE_COM TIM_EGR_COMG /*!< A commutation event is generated */ -#define TIM_EVENTSOURCE_TRIGGER TIM_EGR_TG /*!< A trigger event is generated */ -#define TIM_EVENTSOURCE_BREAK TIM_EGR_BG /*!< A break event is generated */ -/** - * @} - */ - -/** @defgroup TIM_Input_Channel_Polarity TIM Input Channel polarity - * @{ - */ -#define TIM_INPUTCHANNELPOLARITY_RISING 0x00000000U /*!< Polarity for TIx source */ -#define TIM_INPUTCHANNELPOLARITY_FALLING TIM_CCER_CC1P /*!< Polarity for TIx source */ -#define TIM_INPUTCHANNELPOLARITY_BOTHEDGE (TIM_CCER_CC1P | TIM_CCER_CC1NP) /*!< Polarity for TIx source */ -/** - * @} - */ - -/** @defgroup TIM_ETR_Polarity TIM ETR Polarity - * @{ - */ -#define TIM_ETRPOLARITY_INVERTED TIM_SMCR_ETP /*!< Polarity for ETR source */ -#define TIM_ETRPOLARITY_NONINVERTED 0x00000000U /*!< Polarity for ETR source */ -/** - * @} - */ - -/** @defgroup TIM_ETR_Prescaler TIM ETR Prescaler - * @{ - */ -#define TIM_ETRPRESCALER_DIV1 0x00000000U /*!< No prescaler is used */ -#define TIM_ETRPRESCALER_DIV2 TIM_SMCR_ETPS_0 /*!< ETR input source is divided by 2 */ -#define TIM_ETRPRESCALER_DIV4 TIM_SMCR_ETPS_1 /*!< ETR input source is divided by 4 */ -#define TIM_ETRPRESCALER_DIV8 TIM_SMCR_ETPS /*!< ETR input source is divided by 8 */ -/** - * @} - */ - -/** @defgroup TIM_Counter_Mode TIM Counter Mode - * @{ - */ -#define TIM_COUNTERMODE_UP 0x00000000U /*!< Counter used as up-counter */ -#define TIM_COUNTERMODE_DOWN TIM_CR1_DIR /*!< Counter used as down-counter */ -#define TIM_COUNTERMODE_CENTERALIGNED1 TIM_CR1_CMS_0 /*!< Center-aligned mode 1 */ -#define TIM_COUNTERMODE_CENTERALIGNED2 TIM_CR1_CMS_1 /*!< Center-aligned mode 2 */ -#define TIM_COUNTERMODE_CENTERALIGNED3 TIM_CR1_CMS /*!< Center-aligned mode 3 */ -/** - * @} - */ - -/** @defgroup TIM_ClockDivision TIM Clock Division - * @{ - */ -#define TIM_CLOCKDIVISION_DIV1 0x00000000U /*!< Clock division: tDTS=tCK_INT */ -#define TIM_CLOCKDIVISION_DIV2 TIM_CR1_CKD_0 /*!< Clock division: tDTS=2*tCK_INT */ -#define TIM_CLOCKDIVISION_DIV4 TIM_CR1_CKD_1 /*!< Clock division: tDTS=4*tCK_INT */ -/** - * @} - */ - -/** @defgroup TIM_Output_Compare_State TIM Output Compare State - * @{ - */ -#define TIM_OUTPUTSTATE_DISABLE 0x00000000U /*!< Capture/Compare 1 output disabled */ -#define TIM_OUTPUTSTATE_ENABLE TIM_CCER_CC1E /*!< Capture/Compare 1 output enabled */ -/** - * @} - */ - -/** @defgroup TIM_AutoReloadPreload TIM Auto-Reload Preload - * @{ - */ -#define TIM_AUTORELOAD_PRELOAD_DISABLE 0x00000000U /*!< TIMx_ARR register is not buffered */ -#define TIM_AUTORELOAD_PRELOAD_ENABLE TIM_CR1_ARPE /*!< TIMx_ARR register is buffered */ - -/** - * @} - */ - -/** @defgroup TIM_Output_Fast_State TIM Output Fast State - * @{ - */ -#define TIM_OCFAST_DISABLE 0x00000000U /*!< Output Compare fast disable */ -#define TIM_OCFAST_ENABLE TIM_CCMR1_OC1FE /*!< Output Compare fast enable */ -/** - * @} - */ - -/** @defgroup TIM_Output_Compare_N_State TIM Complementary Output Compare State - * @{ - */ -#define TIM_OUTPUTNSTATE_DISABLE 0x00000000U /*!< OCxN is disabled */ -#define TIM_OUTPUTNSTATE_ENABLE TIM_CCER_CC1NE /*!< OCxN is enabled */ -/** - * @} - */ - -/** @defgroup TIM_Output_Compare_Polarity TIM Output Compare Polarity - * @{ - */ -#define TIM_OCPOLARITY_HIGH 0x00000000U /*!< Capture/Compare output polarity */ -#define TIM_OCPOLARITY_LOW TIM_CCER_CC1P /*!< Capture/Compare output polarity */ -/** - * @} - */ - -/** @defgroup TIM_Output_Compare_N_Polarity TIM Complementary Output Compare Polarity - * @{ - */ -#define TIM_OCNPOLARITY_HIGH 0x00000000U /*!< Capture/Compare complementary output polarity */ -#define TIM_OCNPOLARITY_LOW TIM_CCER_CC1NP /*!< Capture/Compare complementary output polarity */ -/** - * @} - */ - -/** @defgroup TIM_Output_Compare_Idle_State TIM Output Compare Idle State - * @{ - */ -#define TIM_OCIDLESTATE_SET TIM_CR2_OIS1 /*!< Output Idle state: OCx=1 when MOE=0 */ -#define TIM_OCIDLESTATE_RESET 0x00000000U /*!< Output Idle state: OCx=0 when MOE=0 */ -/** - * @} - */ - -/** @defgroup TIM_Output_Compare_N_Idle_State TIM Complementary Output Compare Idle State - * @{ - */ -#define TIM_OCNIDLESTATE_SET TIM_CR2_OIS1N /*!< Complementary output Idle state: OCxN=1 when MOE=0 */ -#define TIM_OCNIDLESTATE_RESET 0x00000000U /*!< Complementary output Idle state: OCxN=0 when MOE=0 */ -/** - * @} - */ - -/** @defgroup TIM_Input_Capture_Polarity TIM Input Capture Polarity - * @{ - */ -#define TIM_ICPOLARITY_RISING TIM_INPUTCHANNELPOLARITY_RISING /*!< Capture triggered by rising edge on timer input */ -#define TIM_ICPOLARITY_FALLING TIM_INPUTCHANNELPOLARITY_FALLING /*!< Capture triggered by falling edge on timer input */ -#define TIM_ICPOLARITY_BOTHEDGE TIM_INPUTCHANNELPOLARITY_BOTHEDGE /*!< Capture triggered by both rising and falling edges on timer input*/ -/** - * @} - */ - -/** @defgroup TIM_Encoder_Input_Polarity TIM Encoder Input Polarity - * @{ - */ -#define TIM_ENCODERINPUTPOLARITY_RISING TIM_INPUTCHANNELPOLARITY_RISING /*!< Encoder input with rising edge polarity */ -#define TIM_ENCODERINPUTPOLARITY_FALLING TIM_INPUTCHANNELPOLARITY_FALLING /*!< Encoder input with falling edge polarity */ -/** - * @} - */ - -/** @defgroup TIM_Input_Capture_Selection TIM Input Capture Selection - * @{ - */ -#define TIM_ICSELECTION_DIRECTTI TIM_CCMR1_CC1S_0 /*!< TIM Input 1, 2, 3 or 4 is selected to be connected to IC1, IC2, IC3 or IC4, respectively */ -#define TIM_ICSELECTION_INDIRECTTI TIM_CCMR1_CC1S_1 /*!< TIM Input 1, 2, 3 or 4 is selected to be connected to IC2, IC1, IC4 or IC3, respectively */ -#define TIM_ICSELECTION_TRC TIM_CCMR1_CC1S /*!< TIM Input 1, 2, 3 or 4 is selected to be connected to TRC */ -/** - * @} - */ - -/** @defgroup TIM_Input_Capture_Prescaler TIM Input Capture Prescaler - * @{ - */ -#define TIM_ICPSC_DIV1 0x00000000U /*!< Capture performed each time an edge is detected on the capture input */ -#define TIM_ICPSC_DIV2 TIM_CCMR1_IC1PSC_0 /*!< Capture performed once every 2 events */ -#define TIM_ICPSC_DIV4 TIM_CCMR1_IC1PSC_1 /*!< Capture performed once every 4 events */ -#define TIM_ICPSC_DIV8 TIM_CCMR1_IC1PSC /*!< Capture performed once every 8 events */ -/** - * @} - */ - -/** @defgroup TIM_One_Pulse_Mode TIM One Pulse Mode - * @{ - */ -#define TIM_OPMODE_SINGLE TIM_CR1_OPM /*!< Counter stops counting at the next update event */ -#define TIM_OPMODE_REPETITIVE 0x00000000U /*!< Counter is not stopped at update event */ -/** - * @} - */ - -/** @defgroup TIM_Encoder_Mode TIM Encoder Mode - * @{ - */ -#define TIM_ENCODERMODE_TI1 TIM_SMCR_SMS_0 /*!< Quadrature encoder mode 1, x2 mode, counts up/down on TI1FP1 edge depending on TI2FP2 level */ -#define TIM_ENCODERMODE_TI2 TIM_SMCR_SMS_1 /*!< Quadrature encoder mode 2, x2 mode, counts up/down on TI2FP2 edge depending on TI1FP1 level. */ -#define TIM_ENCODERMODE_TI12 (TIM_SMCR_SMS_1 | TIM_SMCR_SMS_0) /*!< Quadrature encoder mode 3, x4 mode, counts up/down on both TI1FP1 and TI2FP2 edges depending on the level of the other input. */ -/** - * @} - */ - -/** @defgroup TIM_Interrupt_definition TIM interrupt Definition - * @{ - */ -#define TIM_IT_UPDATE TIM_DIER_UIE /*!< Update interrupt */ -#define TIM_IT_CC1 TIM_DIER_CC1IE /*!< Capture/Compare 1 interrupt */ -#define TIM_IT_CC2 TIM_DIER_CC2IE /*!< Capture/Compare 2 interrupt */ -#define TIM_IT_CC3 TIM_DIER_CC3IE /*!< Capture/Compare 3 interrupt */ -#define TIM_IT_CC4 TIM_DIER_CC4IE /*!< Capture/Compare 4 interrupt */ -#define TIM_IT_COM TIM_DIER_COMIE /*!< Commutation interrupt */ -#define TIM_IT_TRIGGER TIM_DIER_TIE /*!< Trigger interrupt */ -#define TIM_IT_BREAK TIM_DIER_BIE /*!< Break interrupt */ -/** - * @} - */ - -/** @defgroup TIM_Commutation_Source TIM Commutation Source - * @{ - */ -#define TIM_COMMUTATION_TRGI TIM_CR2_CCUS /*!< When Capture/compare control bits are preloaded, they are updated by setting the COMG bit or when an rising edge occurs on trigger input */ -#define TIM_COMMUTATION_SOFTWARE 0x00000000U /*!< When Capture/compare control bits are preloaded, they are updated by setting the COMG bit */ -/** - * @} - */ - -/** @defgroup TIM_DMA_sources TIM DMA Sources - * @{ - */ -#define TIM_DMA_UPDATE TIM_DIER_UDE /*!< DMA request is triggered by the update event */ -#define TIM_DMA_CC1 TIM_DIER_CC1DE /*!< DMA request is triggered by the capture/compare macth 1 event */ -#define TIM_DMA_CC2 TIM_DIER_CC2DE /*!< DMA request is triggered by the capture/compare macth 2 event event */ -#define TIM_DMA_CC3 TIM_DIER_CC3DE /*!< DMA request is triggered by the capture/compare macth 3 event event */ -#define TIM_DMA_CC4 TIM_DIER_CC4DE /*!< DMA request is triggered by the capture/compare macth 4 event event */ -#define TIM_DMA_COM TIM_DIER_COMDE /*!< DMA request is triggered by the commutation event */ -#define TIM_DMA_TRIGGER TIM_DIER_TDE /*!< DMA request is triggered by the trigger event */ -/** - * @} - */ - -/** @defgroup TIM_Flag_definition TIM Flag Definition - * @{ - */ -#define TIM_FLAG_UPDATE TIM_SR_UIF /*!< Update interrupt flag */ -#define TIM_FLAG_CC1 TIM_SR_CC1IF /*!< Capture/Compare 1 interrupt flag */ -#define TIM_FLAG_CC2 TIM_SR_CC2IF /*!< Capture/Compare 2 interrupt flag */ -#define TIM_FLAG_CC3 TIM_SR_CC3IF /*!< Capture/Compare 3 interrupt flag */ -#define TIM_FLAG_CC4 TIM_SR_CC4IF /*!< Capture/Compare 4 interrupt flag */ -#define TIM_FLAG_COM TIM_SR_COMIF /*!< Commutation interrupt flag */ -#define TIM_FLAG_TRIGGER TIM_SR_TIF /*!< Trigger interrupt flag */ -#define TIM_FLAG_BREAK TIM_SR_BIF /*!< Break interrupt flag */ -#define TIM_FLAG_CC1OF TIM_SR_CC1OF /*!< Capture 1 overcapture flag */ -#define TIM_FLAG_CC2OF TIM_SR_CC2OF /*!< Capture 2 overcapture flag */ -#define TIM_FLAG_CC3OF TIM_SR_CC3OF /*!< Capture 3 overcapture flag */ -#define TIM_FLAG_CC4OF TIM_SR_CC4OF /*!< Capture 4 overcapture flag */ -/** - * @} - */ - -/** @defgroup TIM_Channel TIM Channel - * @{ - */ -#define TIM_CHANNEL_1 0x00000000U /*!< Capture/compare channel 1 identifier */ -#define TIM_CHANNEL_2 0x00000004U /*!< Capture/compare channel 2 identifier */ -#define TIM_CHANNEL_3 0x00000008U /*!< Capture/compare channel 3 identifier */ -#define TIM_CHANNEL_4 0x0000000CU /*!< Capture/compare channel 4 identifier */ -#define TIM_CHANNEL_ALL 0x0000003CU /*!< Global Capture/compare channel identifier */ -/** - * @} - */ - -/** @defgroup TIM_Clock_Source TIM Clock Source - * @{ - */ -#define TIM_CLOCKSOURCE_ETRMODE2 TIM_SMCR_ETPS_1 /*!< External clock source mode 2 */ -#define TIM_CLOCKSOURCE_INTERNAL TIM_SMCR_ETPS_0 /*!< Internal clock source */ -#define TIM_CLOCKSOURCE_ITR0 TIM_TS_ITR0 /*!< External clock source mode 1 (ITR0) */ -#define TIM_CLOCKSOURCE_ITR1 TIM_TS_ITR1 /*!< External clock source mode 1 (ITR1) */ -#define TIM_CLOCKSOURCE_ITR2 TIM_TS_ITR2 /*!< External clock source mode 1 (ITR2) */ -#define TIM_CLOCKSOURCE_ITR3 TIM_TS_ITR3 /*!< External clock source mode 1 (ITR3) */ -#define TIM_CLOCKSOURCE_TI1ED TIM_TS_TI1F_ED /*!< External clock source mode 1 (TTI1FP1 + edge detect.) */ -#define TIM_CLOCKSOURCE_TI1 TIM_TS_TI1FP1 /*!< External clock source mode 1 (TTI1FP1) */ -#define TIM_CLOCKSOURCE_TI2 TIM_TS_TI2FP2 /*!< External clock source mode 1 (TTI2FP2) */ -#define TIM_CLOCKSOURCE_ETRMODE1 TIM_TS_ETRF /*!< External clock source mode 1 (ETRF) */ -/** - * @} - */ - -/** @defgroup TIM_Clock_Polarity TIM Clock Polarity - * @{ - */ -#define TIM_CLOCKPOLARITY_INVERTED TIM_ETRPOLARITY_INVERTED /*!< Polarity for ETRx clock sources */ -#define TIM_CLOCKPOLARITY_NONINVERTED TIM_ETRPOLARITY_NONINVERTED /*!< Polarity for ETRx clock sources */ -#define TIM_CLOCKPOLARITY_RISING TIM_INPUTCHANNELPOLARITY_RISING /*!< Polarity for TIx clock sources */ -#define TIM_CLOCKPOLARITY_FALLING TIM_INPUTCHANNELPOLARITY_FALLING /*!< Polarity for TIx clock sources */ -#define TIM_CLOCKPOLARITY_BOTHEDGE TIM_INPUTCHANNELPOLARITY_BOTHEDGE /*!< Polarity for TIx clock sources */ -/** - * @} - */ - -/** @defgroup TIM_Clock_Prescaler TIM Clock Prescaler - * @{ - */ -#define TIM_CLOCKPRESCALER_DIV1 TIM_ETRPRESCALER_DIV1 /*!< No prescaler is used */ -#define TIM_CLOCKPRESCALER_DIV2 TIM_ETRPRESCALER_DIV2 /*!< Prescaler for External ETR Clock: Capture performed once every 2 events. */ -#define TIM_CLOCKPRESCALER_DIV4 TIM_ETRPRESCALER_DIV4 /*!< Prescaler for External ETR Clock: Capture performed once every 4 events. */ -#define TIM_CLOCKPRESCALER_DIV8 TIM_ETRPRESCALER_DIV8 /*!< Prescaler for External ETR Clock: Capture performed once every 8 events. */ -/** - * @} - */ - -/** @defgroup TIM_ClearInput_Polarity TIM Clear Input Polarity - * @{ - */ -#define TIM_CLEARINPUTPOLARITY_INVERTED TIM_ETRPOLARITY_INVERTED /*!< Polarity for ETRx pin */ -#define TIM_CLEARINPUTPOLARITY_NONINVERTED TIM_ETRPOLARITY_NONINVERTED /*!< Polarity for ETRx pin */ -/** - * @} - */ - -/** @defgroup TIM_ClearInput_Prescaler TIM Clear Input Prescaler - * @{ - */ -#define TIM_CLEARINPUTPRESCALER_DIV1 TIM_ETRPRESCALER_DIV1 /*!< No prescaler is used */ -#define TIM_CLEARINPUTPRESCALER_DIV2 TIM_ETRPRESCALER_DIV2 /*!< Prescaler for External ETR pin: Capture performed once every 2 events. */ -#define TIM_CLEARINPUTPRESCALER_DIV4 TIM_ETRPRESCALER_DIV4 /*!< Prescaler for External ETR pin: Capture performed once every 4 events. */ -#define TIM_CLEARINPUTPRESCALER_DIV8 TIM_ETRPRESCALER_DIV8 /*!< Prescaler for External ETR pin: Capture performed once every 8 events. */ -/** - * @} - */ - -/** @defgroup TIM_OSSR_Off_State_Selection_for_Run_mode_state TIM OSSR OffState Selection for Run mode state - * @{ - */ -#define TIM_OSSR_ENABLE TIM_BDTR_OSSR /*!< When inactive, OC/OCN outputs are enabled (still controlled by the timer) */ -#define TIM_OSSR_DISABLE 0x00000000U /*!< When inactive, OC/OCN outputs are disabled (not controlled any longer by the timer) */ -/** - * @} - */ - -/** @defgroup TIM_OSSI_Off_State_Selection_for_Idle_mode_state TIM OSSI OffState Selection for Idle mode state - * @{ - */ -#define TIM_OSSI_ENABLE TIM_BDTR_OSSI /*!< When inactive, OC/OCN outputs are enabled (still controlled by the timer) */ -#define TIM_OSSI_DISABLE 0x00000000U /*!< When inactive, OC/OCN outputs are disabled (not controlled any longer by the timer) */ -/** - * @} - */ -/** @defgroup TIM_Lock_level TIM Lock level - * @{ - */ -#define TIM_LOCKLEVEL_OFF 0x00000000U /*!< LOCK OFF */ -#define TIM_LOCKLEVEL_1 TIM_BDTR_LOCK_0 /*!< LOCK Level 1 */ -#define TIM_LOCKLEVEL_2 TIM_BDTR_LOCK_1 /*!< LOCK Level 2 */ -#define TIM_LOCKLEVEL_3 TIM_BDTR_LOCK /*!< LOCK Level 3 */ -/** - * @} - */ - -/** @defgroup TIM_Break_Input_enable_disable TIM Break Input Enable - * @{ - */ -#define TIM_BREAK_ENABLE TIM_BDTR_BKE /*!< Break input BRK is enabled */ -#define TIM_BREAK_DISABLE 0x00000000U /*!< Break input BRK is disabled */ -/** - * @} - */ - -/** @defgroup TIM_Break_Polarity TIM Break Input Polarity - * @{ - */ -#define TIM_BREAKPOLARITY_LOW 0x00000000U /*!< Break input BRK is active low */ -#define TIM_BREAKPOLARITY_HIGH TIM_BDTR_BKP /*!< Break input BRK is active high */ -/** - * @} - */ - -/** @defgroup TIM_AOE_Bit_Set_Reset TIM Automatic Output Enable - * @{ - */ -#define TIM_AUTOMATICOUTPUT_DISABLE 0x00000000U /*!< MOE can be set only by software */ -#define TIM_AUTOMATICOUTPUT_ENABLE TIM_BDTR_AOE /*!< MOE can be set by software or automatically at the next update event (if none of the break inputs BRK and BRK2 is active) */ -/** - * @} - */ - -/** @defgroup TIM_Master_Mode_Selection TIM Master Mode Selection - * @{ - */ -#define TIM_TRGO_RESET 0x00000000U /*!< TIMx_EGR.UG bit is used as trigger output (TRGO) */ -#define TIM_TRGO_ENABLE TIM_CR2_MMS_0 /*!< TIMx_CR1.CEN bit is used as trigger output (TRGO) */ -#define TIM_TRGO_UPDATE TIM_CR2_MMS_1 /*!< Update event is used as trigger output (TRGO) */ -#define TIM_TRGO_OC1 (TIM_CR2_MMS_1 | TIM_CR2_MMS_0) /*!< Capture or a compare match 1 is used as trigger output (TRGO) */ -#define TIM_TRGO_OC1REF TIM_CR2_MMS_2 /*!< OC1REF signal is used as trigger output (TRGO) */ -#define TIM_TRGO_OC2REF (TIM_CR2_MMS_2 | TIM_CR2_MMS_0) /*!< OC2REF signal is used as trigger output(TRGO) */ -#define TIM_TRGO_OC3REF (TIM_CR2_MMS_2 | TIM_CR2_MMS_1) /*!< OC3REF signal is used as trigger output(TRGO) */ -#define TIM_TRGO_OC4REF (TIM_CR2_MMS_2 | TIM_CR2_MMS_1 | TIM_CR2_MMS_0) /*!< OC4REF signal is used as trigger output(TRGO) */ -/** - * @} - */ - -/** @defgroup TIM_Master_Slave_Mode TIM Master/Slave Mode - * @{ - */ -#define TIM_MASTERSLAVEMODE_ENABLE TIM_SMCR_MSM /*!< No action */ -#define TIM_MASTERSLAVEMODE_DISABLE 0x00000000U /*!< Master/slave mode is selected */ -/** - * @} - */ - -/** @defgroup TIM_Slave_Mode TIM Slave mode - * @{ - */ -#define TIM_SLAVEMODE_DISABLE 0x00000000U /*!< Slave mode disabled */ -#define TIM_SLAVEMODE_RESET TIM_SMCR_SMS_2 /*!< Reset Mode */ -#define TIM_SLAVEMODE_GATED (TIM_SMCR_SMS_2 | TIM_SMCR_SMS_0) /*!< Gated Mode */ -#define TIM_SLAVEMODE_TRIGGER (TIM_SMCR_SMS_2 | TIM_SMCR_SMS_1) /*!< Trigger Mode */ -#define TIM_SLAVEMODE_EXTERNAL1 (TIM_SMCR_SMS_2 | TIM_SMCR_SMS_1 | TIM_SMCR_SMS_0) /*!< External Clock Mode 1 */ -/** - * @} - */ - -/** @defgroup TIM_Output_Compare_and_PWM_modes TIM Output Compare and PWM Modes - * @{ - */ -#define TIM_OCMODE_TIMING 0x00000000U /*!< Frozen */ -#define TIM_OCMODE_ACTIVE TIM_CCMR1_OC1M_0 /*!< Set channel to active level on match */ -#define TIM_OCMODE_INACTIVE TIM_CCMR1_OC1M_1 /*!< Set channel to inactive level on match */ -#define TIM_OCMODE_TOGGLE (TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_0) /*!< Toggle */ -#define TIM_OCMODE_PWM1 (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1) /*!< PWM mode 1 */ -#define TIM_OCMODE_PWM2 (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_0) /*!< PWM mode 2 */ -#define TIM_OCMODE_FORCED_ACTIVE (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_0) /*!< Force active level */ -#define TIM_OCMODE_FORCED_INACTIVE TIM_CCMR1_OC1M_2 /*!< Force inactive level */ -/** - * @} - */ - -/** @defgroup TIM_Trigger_Selection TIM Trigger Selection - * @{ - */ -#define TIM_TS_ITR0 0x00000000U /*!< Internal Trigger 0 (ITR0) */ -#define TIM_TS_ITR1 TIM_SMCR_TS_0 /*!< Internal Trigger 1 (ITR1) */ -#define TIM_TS_ITR2 TIM_SMCR_TS_1 /*!< Internal Trigger 2 (ITR2) */ -#define TIM_TS_ITR3 (TIM_SMCR_TS_0 | TIM_SMCR_TS_1) /*!< Internal Trigger 3 (ITR3) */ -#define TIM_TS_TI1F_ED TIM_SMCR_TS_2 /*!< TI1 Edge Detector (TI1F_ED) */ -#define TIM_TS_TI1FP1 (TIM_SMCR_TS_0 | TIM_SMCR_TS_2) /*!< Filtered Timer Input 1 (TI1FP1) */ -#define TIM_TS_TI2FP2 (TIM_SMCR_TS_1 | TIM_SMCR_TS_2) /*!< Filtered Timer Input 2 (TI2FP2) */ -#define TIM_TS_ETRF (TIM_SMCR_TS_0 | TIM_SMCR_TS_1 | TIM_SMCR_TS_2) /*!< Filtered External Trigger input (ETRF) */ -#define TIM_TS_NONE 0x0000FFFFU /*!< No trigger selected */ -/** - * @} - */ - -/** @defgroup TIM_Trigger_Polarity TIM Trigger Polarity - * @{ - */ -#define TIM_TRIGGERPOLARITY_INVERTED TIM_ETRPOLARITY_INVERTED /*!< Polarity for ETRx trigger sources */ -#define TIM_TRIGGERPOLARITY_NONINVERTED TIM_ETRPOLARITY_NONINVERTED /*!< Polarity for ETRx trigger sources */ -#define TIM_TRIGGERPOLARITY_RISING TIM_INPUTCHANNELPOLARITY_RISING /*!< Polarity for TIxFPx or TI1_ED trigger sources */ -#define TIM_TRIGGERPOLARITY_FALLING TIM_INPUTCHANNELPOLARITY_FALLING /*!< Polarity for TIxFPx or TI1_ED trigger sources */ -#define TIM_TRIGGERPOLARITY_BOTHEDGE TIM_INPUTCHANNELPOLARITY_BOTHEDGE /*!< Polarity for TIxFPx or TI1_ED trigger sources */ -/** - * @} - */ - -/** @defgroup TIM_Trigger_Prescaler TIM Trigger Prescaler - * @{ - */ -#define TIM_TRIGGERPRESCALER_DIV1 TIM_ETRPRESCALER_DIV1 /*!< No prescaler is used */ -#define TIM_TRIGGERPRESCALER_DIV2 TIM_ETRPRESCALER_DIV2 /*!< Prescaler for External ETR Trigger: Capture performed once every 2 events. */ -#define TIM_TRIGGERPRESCALER_DIV4 TIM_ETRPRESCALER_DIV4 /*!< Prescaler for External ETR Trigger: Capture performed once every 4 events. */ -#define TIM_TRIGGERPRESCALER_DIV8 TIM_ETRPRESCALER_DIV8 /*!< Prescaler for External ETR Trigger: Capture performed once every 8 events. */ -/** - * @} - */ - -/** @defgroup TIM_TI1_Selection TIM TI1 Input Selection - * @{ - */ -#define TIM_TI1SELECTION_CH1 0x00000000U /*!< The TIMx_CH1 pin is connected to TI1 input */ -#define TIM_TI1SELECTION_XORCOMBINATION TIM_CR2_TI1S /*!< The TIMx_CH1, CH2 and CH3 pins are connected to the TI1 input (XOR combination) */ -/** - * @} - */ - -/** @defgroup TIM_DMA_Burst_Length TIM DMA Burst Length - * @{ - */ -#define TIM_DMABURSTLENGTH_1TRANSFER 0x00000000U /*!< The transfer is done to 1 register starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_2TRANSFERS 0x00000100U /*!< The transfer is done to 2 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_3TRANSFERS 0x00000200U /*!< The transfer is done to 3 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_4TRANSFERS 0x00000300U /*!< The transfer is done to 4 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_5TRANSFERS 0x00000400U /*!< The transfer is done to 5 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_6TRANSFERS 0x00000500U /*!< The transfer is done to 6 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_7TRANSFERS 0x00000600U /*!< The transfer is done to 7 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_8TRANSFERS 0x00000700U /*!< The transfer is done to 8 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_9TRANSFERS 0x00000800U /*!< The transfer is done to 9 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_10TRANSFERS 0x00000900U /*!< The transfer is done to 10 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_11TRANSFERS 0x00000A00U /*!< The transfer is done to 11 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_12TRANSFERS 0x00000B00U /*!< The transfer is done to 12 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_13TRANSFERS 0x00000C00U /*!< The transfer is done to 13 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_14TRANSFERS 0x00000D00U /*!< The transfer is done to 14 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_15TRANSFERS 0x00000E00U /*!< The transfer is done to 15 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_16TRANSFERS 0x00000F00U /*!< The transfer is done to 16 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_17TRANSFERS 0x00001000U /*!< The transfer is done to 17 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -#define TIM_DMABURSTLENGTH_18TRANSFERS 0x00001100U /*!< The transfer is done to 18 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ -/** - * @} - */ - -/** @defgroup DMA_Handle_index TIM DMA Handle Index - * @{ - */ -#define TIM_DMA_ID_UPDATE ((uint16_t) 0x0000) /*!< Index of the DMA handle used for Update DMA requests */ -#define TIM_DMA_ID_CC1 ((uint16_t) 0x0001) /*!< Index of the DMA handle used for Capture/Compare 1 DMA requests */ -#define TIM_DMA_ID_CC2 ((uint16_t) 0x0002) /*!< Index of the DMA handle used for Capture/Compare 2 DMA requests */ -#define TIM_DMA_ID_CC3 ((uint16_t) 0x0003) /*!< Index of the DMA handle used for Capture/Compare 3 DMA requests */ -#define TIM_DMA_ID_CC4 ((uint16_t) 0x0004) /*!< Index of the DMA handle used for Capture/Compare 4 DMA requests */ -#define TIM_DMA_ID_COMMUTATION ((uint16_t) 0x0005) /*!< Index of the DMA handle used for Commutation DMA requests */ -#define TIM_DMA_ID_TRIGGER ((uint16_t) 0x0006) /*!< Index of the DMA handle used for Trigger DMA requests */ -/** - * @} - */ - -/** @defgroup Channel_CC_State TIM Capture/Compare Channel State - * @{ - */ -#define TIM_CCx_ENABLE 0x00000001U /*!< Input or output channel is enabled */ -#define TIM_CCx_DISABLE 0x00000000U /*!< Input or output channel is disabled */ -#define TIM_CCxN_ENABLE 0x00000004U /*!< Complementary output channel is enabled */ -#define TIM_CCxN_DISABLE 0x00000000U /*!< Complementary output channel is enabled */ -/** - * @} - */ - -/** - * @} - */ -/* End of exported constants -------------------------------------------------*/ - -/* Exported macros -----------------------------------------------------------*/ -/** @defgroup TIM_Exported_Macros TIM Exported Macros - * @{ - */ - -/** @brief Reset TIM handle state. - * @param __HANDLE__ TIM handle. - * @retval None - */ -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) -#define __HAL_TIM_RESET_HANDLE_STATE(__HANDLE__) do { \ - (__HANDLE__)->State = HAL_TIM_STATE_RESET; \ - (__HANDLE__)->ChannelState[0] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelState[1] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelState[2] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelState[3] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelNState[0] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelNState[1] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelNState[2] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelNState[3] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->DMABurstState = HAL_DMA_BURST_STATE_RESET; \ - (__HANDLE__)->Base_MspInitCallback = NULL; \ - (__HANDLE__)->Base_MspDeInitCallback = NULL; \ - (__HANDLE__)->IC_MspInitCallback = NULL; \ - (__HANDLE__)->IC_MspDeInitCallback = NULL; \ - (__HANDLE__)->OC_MspInitCallback = NULL; \ - (__HANDLE__)->OC_MspDeInitCallback = NULL; \ - (__HANDLE__)->PWM_MspInitCallback = NULL; \ - (__HANDLE__)->PWM_MspDeInitCallback = NULL; \ - (__HANDLE__)->OnePulse_MspInitCallback = NULL; \ - (__HANDLE__)->OnePulse_MspDeInitCallback = NULL; \ - (__HANDLE__)->Encoder_MspInitCallback = NULL; \ - (__HANDLE__)->Encoder_MspDeInitCallback = NULL; \ - (__HANDLE__)->HallSensor_MspInitCallback = NULL; \ - (__HANDLE__)->HallSensor_MspDeInitCallback = NULL; \ - } while(0) -#else -#define __HAL_TIM_RESET_HANDLE_STATE(__HANDLE__) do { \ - (__HANDLE__)->State = HAL_TIM_STATE_RESET; \ - (__HANDLE__)->ChannelState[0] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelState[1] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelState[2] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelState[3] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelNState[0] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelNState[1] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelNState[2] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->ChannelNState[3] = HAL_TIM_CHANNEL_STATE_RESET; \ - (__HANDLE__)->DMABurstState = HAL_DMA_BURST_STATE_RESET; \ - } while(0) -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - -/** - * @brief Enable the TIM peripheral. - * @param __HANDLE__ TIM handle - * @retval None - */ -#define __HAL_TIM_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1|=(TIM_CR1_CEN)) - -/** - * @brief Enable the TIM main Output. - * @param __HANDLE__ TIM handle - * @retval None - */ -#define __HAL_TIM_MOE_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->BDTR|=(TIM_BDTR_MOE)) - -/** - * @brief Disable the TIM peripheral. - * @param __HANDLE__ TIM handle - * @retval None - */ -#define __HAL_TIM_DISABLE(__HANDLE__) \ - do { \ - if (((__HANDLE__)->Instance->CCER & TIM_CCER_CCxE_MASK) == 0UL) \ - { \ - if(((__HANDLE__)->Instance->CCER & TIM_CCER_CCxNE_MASK) == 0UL) \ - { \ - (__HANDLE__)->Instance->CR1 &= ~(TIM_CR1_CEN); \ - } \ - } \ - } while(0) - -/** - * @brief Disable the TIM main Output. - * @param __HANDLE__ TIM handle - * @retval None - * @note The Main Output Enable of a timer instance is disabled only if all the CCx and CCxN channels have been - * disabled - */ -#define __HAL_TIM_MOE_DISABLE(__HANDLE__) \ - do { \ - if (((__HANDLE__)->Instance->CCER & TIM_CCER_CCxE_MASK) == 0UL) \ - { \ - if(((__HANDLE__)->Instance->CCER & TIM_CCER_CCxNE_MASK) == 0UL) \ - { \ - (__HANDLE__)->Instance->BDTR &= ~(TIM_BDTR_MOE); \ - } \ - } \ - } while(0) - -/** - * @brief Disable the TIM main Output. - * @param __HANDLE__ TIM handle - * @retval None - * @note The Main Output Enable of a timer instance is disabled unconditionally - */ -#define __HAL_TIM_MOE_DISABLE_UNCONDITIONALLY(__HANDLE__) (__HANDLE__)->Instance->BDTR &= ~(TIM_BDTR_MOE) - -/** @brief Enable the specified TIM interrupt. - * @param __HANDLE__ specifies the TIM Handle. - * @param __INTERRUPT__ specifies the TIM interrupt source to enable. - * This parameter can be one of the following values: - * @arg TIM_IT_UPDATE: Update interrupt - * @arg TIM_IT_CC1: Capture/Compare 1 interrupt - * @arg TIM_IT_CC2: Capture/Compare 2 interrupt - * @arg TIM_IT_CC3: Capture/Compare 3 interrupt - * @arg TIM_IT_CC4: Capture/Compare 4 interrupt - * @arg TIM_IT_COM: Commutation interrupt - * @arg TIM_IT_TRIGGER: Trigger interrupt - * @arg TIM_IT_BREAK: Break interrupt - * @retval None - */ -#define __HAL_TIM_ENABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->DIER |= (__INTERRUPT__)) - -/** @brief Disable the specified TIM interrupt. - * @param __HANDLE__ specifies the TIM Handle. - * @param __INTERRUPT__ specifies the TIM interrupt source to disable. - * This parameter can be one of the following values: - * @arg TIM_IT_UPDATE: Update interrupt - * @arg TIM_IT_CC1: Capture/Compare 1 interrupt - * @arg TIM_IT_CC2: Capture/Compare 2 interrupt - * @arg TIM_IT_CC3: Capture/Compare 3 interrupt - * @arg TIM_IT_CC4: Capture/Compare 4 interrupt - * @arg TIM_IT_COM: Commutation interrupt - * @arg TIM_IT_TRIGGER: Trigger interrupt - * @arg TIM_IT_BREAK: Break interrupt - * @retval None - */ -#define __HAL_TIM_DISABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->DIER &= ~(__INTERRUPT__)) - -/** @brief Enable the specified DMA request. - * @param __HANDLE__ specifies the TIM Handle. - * @param __DMA__ specifies the TIM DMA request to enable. - * This parameter can be one of the following values: - * @arg TIM_DMA_UPDATE: Update DMA request - * @arg TIM_DMA_CC1: Capture/Compare 1 DMA request - * @arg TIM_DMA_CC2: Capture/Compare 2 DMA request - * @arg TIM_DMA_CC3: Capture/Compare 3 DMA request - * @arg TIM_DMA_CC4: Capture/Compare 4 DMA request - * @arg TIM_DMA_COM: Commutation DMA request - * @arg TIM_DMA_TRIGGER: Trigger DMA request - * @retval None - */ -#define __HAL_TIM_ENABLE_DMA(__HANDLE__, __DMA__) ((__HANDLE__)->Instance->DIER |= (__DMA__)) - -/** @brief Disable the specified DMA request. - * @param __HANDLE__ specifies the TIM Handle. - * @param __DMA__ specifies the TIM DMA request to disable. - * This parameter can be one of the following values: - * @arg TIM_DMA_UPDATE: Update DMA request - * @arg TIM_DMA_CC1: Capture/Compare 1 DMA request - * @arg TIM_DMA_CC2: Capture/Compare 2 DMA request - * @arg TIM_DMA_CC3: Capture/Compare 3 DMA request - * @arg TIM_DMA_CC4: Capture/Compare 4 DMA request - * @arg TIM_DMA_COM: Commutation DMA request - * @arg TIM_DMA_TRIGGER: Trigger DMA request - * @retval None - */ -#define __HAL_TIM_DISABLE_DMA(__HANDLE__, __DMA__) ((__HANDLE__)->Instance->DIER &= ~(__DMA__)) - -/** @brief Check whether the specified TIM interrupt flag is set or not. - * @param __HANDLE__ specifies the TIM Handle. - * @param __FLAG__ specifies the TIM interrupt flag to check. - * This parameter can be one of the following values: - * @arg TIM_FLAG_UPDATE: Update interrupt flag - * @arg TIM_FLAG_CC1: Capture/Compare 1 interrupt flag - * @arg TIM_FLAG_CC2: Capture/Compare 2 interrupt flag - * @arg TIM_FLAG_CC3: Capture/Compare 3 interrupt flag - * @arg TIM_FLAG_CC4: Capture/Compare 4 interrupt flag - * @arg TIM_FLAG_COM: Commutation interrupt flag - * @arg TIM_FLAG_TRIGGER: Trigger interrupt flag - * @arg TIM_FLAG_BREAK: Break interrupt flag - * @arg TIM_FLAG_CC1OF: Capture/Compare 1 overcapture flag - * @arg TIM_FLAG_CC2OF: Capture/Compare 2 overcapture flag - * @arg TIM_FLAG_CC3OF: Capture/Compare 3 overcapture flag - * @arg TIM_FLAG_CC4OF: Capture/Compare 4 overcapture flag - * @retval The new state of __FLAG__ (TRUE or FALSE). - */ -#define __HAL_TIM_GET_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->SR &(__FLAG__)) == (__FLAG__)) - -/** @brief Clear the specified TIM interrupt flag. - * @param __HANDLE__ specifies the TIM Handle. - * @param __FLAG__ specifies the TIM interrupt flag to clear. - * This parameter can be one of the following values: - * @arg TIM_FLAG_UPDATE: Update interrupt flag - * @arg TIM_FLAG_CC1: Capture/Compare 1 interrupt flag - * @arg TIM_FLAG_CC2: Capture/Compare 2 interrupt flag - * @arg TIM_FLAG_CC3: Capture/Compare 3 interrupt flag - * @arg TIM_FLAG_CC4: Capture/Compare 4 interrupt flag - * @arg TIM_FLAG_COM: Commutation interrupt flag - * @arg TIM_FLAG_TRIGGER: Trigger interrupt flag - * @arg TIM_FLAG_BREAK: Break interrupt flag - * @arg TIM_FLAG_CC1OF: Capture/Compare 1 overcapture flag - * @arg TIM_FLAG_CC2OF: Capture/Compare 2 overcapture flag - * @arg TIM_FLAG_CC3OF: Capture/Compare 3 overcapture flag - * @arg TIM_FLAG_CC4OF: Capture/Compare 4 overcapture flag - * @retval The new state of __FLAG__ (TRUE or FALSE). - */ -#define __HAL_TIM_CLEAR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->SR = ~(__FLAG__)) - -/** - * @brief Check whether the specified TIM interrupt source is enabled or not. - * @param __HANDLE__ TIM handle - * @param __INTERRUPT__ specifies the TIM interrupt source to check. - * This parameter can be one of the following values: - * @arg TIM_IT_UPDATE: Update interrupt - * @arg TIM_IT_CC1: Capture/Compare 1 interrupt - * @arg TIM_IT_CC2: Capture/Compare 2 interrupt - * @arg TIM_IT_CC3: Capture/Compare 3 interrupt - * @arg TIM_IT_CC4: Capture/Compare 4 interrupt - * @arg TIM_IT_COM: Commutation interrupt - * @arg TIM_IT_TRIGGER: Trigger interrupt - * @arg TIM_IT_BREAK: Break interrupt - * @retval The state of TIM_IT (SET or RESET). - */ -#define __HAL_TIM_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) ((((__HANDLE__)->Instance->DIER & (__INTERRUPT__)) \ - == (__INTERRUPT__)) ? SET : RESET) - -/** @brief Clear the TIM interrupt pending bits. - * @param __HANDLE__ TIM handle - * @param __INTERRUPT__ specifies the interrupt pending bit to clear. - * This parameter can be one of the following values: - * @arg TIM_IT_UPDATE: Update interrupt - * @arg TIM_IT_CC1: Capture/Compare 1 interrupt - * @arg TIM_IT_CC2: Capture/Compare 2 interrupt - * @arg TIM_IT_CC3: Capture/Compare 3 interrupt - * @arg TIM_IT_CC4: Capture/Compare 4 interrupt - * @arg TIM_IT_COM: Commutation interrupt - * @arg TIM_IT_TRIGGER: Trigger interrupt - * @arg TIM_IT_BREAK: Break interrupt - * @retval None - */ -#define __HAL_TIM_CLEAR_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->SR = ~(__INTERRUPT__)) - -/** - * @brief Indicates whether or not the TIM Counter is used as downcounter. - * @param __HANDLE__ TIM handle. - * @retval False (Counter used as upcounter) or True (Counter used as downcounter) - * @note This macro is particularly useful to get the counting mode when the timer operates in Center-aligned mode - * or Encoder mode. - */ -#define __HAL_TIM_IS_TIM_COUNTING_DOWN(__HANDLE__) (((__HANDLE__)->Instance->CR1 &(TIM_CR1_DIR)) == (TIM_CR1_DIR)) - -/** - * @brief Set the TIM Prescaler on runtime. - * @param __HANDLE__ TIM handle. - * @param __PRESC__ specifies the Prescaler new value. - * @retval None - */ -#define __HAL_TIM_SET_PRESCALER(__HANDLE__, __PRESC__) ((__HANDLE__)->Instance->PSC = (__PRESC__)) - -/** - * @brief Set the TIM Counter Register value on runtime. - * @param __HANDLE__ TIM handle. - * @param __COUNTER__ specifies the Counter register new value. - * @retval None - */ -#define __HAL_TIM_SET_COUNTER(__HANDLE__, __COUNTER__) ((__HANDLE__)->Instance->CNT = (__COUNTER__)) - -/** - * @brief Get the TIM Counter Register value on runtime. - * @param __HANDLE__ TIM handle. - * @retval 16-bit or 32-bit value of the timer counter register (TIMx_CNT) - */ -#define __HAL_TIM_GET_COUNTER(__HANDLE__) ((__HANDLE__)->Instance->CNT) - -/** - * @brief Set the TIM Autoreload Register value on runtime without calling another time any Init function. - * @param __HANDLE__ TIM handle. - * @param __AUTORELOAD__ specifies the Counter register new value. - * @retval None - */ -#define __HAL_TIM_SET_AUTORELOAD(__HANDLE__, __AUTORELOAD__) \ - do{ \ - (__HANDLE__)->Instance->ARR = (__AUTORELOAD__); \ - (__HANDLE__)->Init.Period = (__AUTORELOAD__); \ - } while(0) - -/** - * @brief Get the TIM Autoreload Register value on runtime. - * @param __HANDLE__ TIM handle. - * @retval 16-bit or 32-bit value of the timer auto-reload register(TIMx_ARR) - */ -#define __HAL_TIM_GET_AUTORELOAD(__HANDLE__) ((__HANDLE__)->Instance->ARR) - -/** - * @brief Set the TIM Clock Division value on runtime without calling another time any Init function. - * @param __HANDLE__ TIM handle. - * @param __CKD__ specifies the clock division value. - * This parameter can be one of the following value: - * @arg TIM_CLOCKDIVISION_DIV1: tDTS=tCK_INT - * @arg TIM_CLOCKDIVISION_DIV2: tDTS=2*tCK_INT - * @arg TIM_CLOCKDIVISION_DIV4: tDTS=4*tCK_INT - * @retval None - */ -#define __HAL_TIM_SET_CLOCKDIVISION(__HANDLE__, __CKD__) \ - do{ \ - (__HANDLE__)->Instance->CR1 &= (~TIM_CR1_CKD); \ - (__HANDLE__)->Instance->CR1 |= (__CKD__); \ - (__HANDLE__)->Init.ClockDivision = (__CKD__); \ - } while(0) - -/** - * @brief Get the TIM Clock Division value on runtime. - * @param __HANDLE__ TIM handle. - * @retval The clock division can be one of the following values: - * @arg TIM_CLOCKDIVISION_DIV1: tDTS=tCK_INT - * @arg TIM_CLOCKDIVISION_DIV2: tDTS=2*tCK_INT - * @arg TIM_CLOCKDIVISION_DIV4: tDTS=4*tCK_INT - */ -#define __HAL_TIM_GET_CLOCKDIVISION(__HANDLE__) ((__HANDLE__)->Instance->CR1 & TIM_CR1_CKD) - -/** - * @brief Set the TIM Input Capture prescaler on runtime without calling another time HAL_TIM_IC_ConfigChannel() - * function. - * @param __HANDLE__ TIM handle. - * @param __CHANNEL__ TIM Channels to be configured. - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @param __ICPSC__ specifies the Input Capture4 prescaler new value. - * This parameter can be one of the following values: - * @arg TIM_ICPSC_DIV1: no prescaler - * @arg TIM_ICPSC_DIV2: capture is done once every 2 events - * @arg TIM_ICPSC_DIV4: capture is done once every 4 events - * @arg TIM_ICPSC_DIV8: capture is done once every 8 events - * @retval None - */ -#define __HAL_TIM_SET_ICPRESCALER(__HANDLE__, __CHANNEL__, __ICPSC__) \ - do{ \ - TIM_RESET_ICPRESCALERVALUE((__HANDLE__), (__CHANNEL__)); \ - TIM_SET_ICPRESCALERVALUE((__HANDLE__), (__CHANNEL__), (__ICPSC__)); \ - } while(0) - -/** - * @brief Get the TIM Input Capture prescaler on runtime. - * @param __HANDLE__ TIM handle. - * @param __CHANNEL__ TIM Channels to be configured. - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: get input capture 1 prescaler value - * @arg TIM_CHANNEL_2: get input capture 2 prescaler value - * @arg TIM_CHANNEL_3: get input capture 3 prescaler value - * @arg TIM_CHANNEL_4: get input capture 4 prescaler value - * @retval The input capture prescaler can be one of the following values: - * @arg TIM_ICPSC_DIV1: no prescaler - * @arg TIM_ICPSC_DIV2: capture is done once every 2 events - * @arg TIM_ICPSC_DIV4: capture is done once every 4 events - * @arg TIM_ICPSC_DIV8: capture is done once every 8 events - */ -#define __HAL_TIM_GET_ICPRESCALER(__HANDLE__, __CHANNEL__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 & TIM_CCMR1_IC1PSC) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? (((__HANDLE__)->Instance->CCMR1 & TIM_CCMR1_IC2PSC) >> 8U) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 & TIM_CCMR2_IC3PSC) :\ - (((__HANDLE__)->Instance->CCMR2 & TIM_CCMR2_IC4PSC)) >> 8U) - -/** - * @brief Set the TIM Capture Compare Register value on runtime without calling another time ConfigChannel function. - * @param __HANDLE__ TIM handle. - * @param __CHANNEL__ TIM Channels to be configured. - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @param __COMPARE__ specifies the Capture Compare register new value. - * @retval None - */ -#define __HAL_TIM_SET_COMPARE(__HANDLE__, __CHANNEL__, __COMPARE__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCR1 = (__COMPARE__)) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCR2 = (__COMPARE__)) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCR3 = (__COMPARE__)) :\ - ((__HANDLE__)->Instance->CCR4 = (__COMPARE__))) - -/** - * @brief Get the TIM Capture Compare Register value on runtime. - * @param __HANDLE__ TIM handle. - * @param __CHANNEL__ TIM Channel associated with the capture compare register - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: get capture/compare 1 register value - * @arg TIM_CHANNEL_2: get capture/compare 2 register value - * @arg TIM_CHANNEL_3: get capture/compare 3 register value - * @arg TIM_CHANNEL_4: get capture/compare 4 register value - * @retval 16-bit or 32-bit value of the capture/compare register (TIMx_CCRy) - */ -#define __HAL_TIM_GET_COMPARE(__HANDLE__, __CHANNEL__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCR1) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCR2) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCR3) :\ - ((__HANDLE__)->Instance->CCR4)) - -/** - * @brief Set the TIM Output compare preload. - * @param __HANDLE__ TIM handle. - * @param __CHANNEL__ TIM Channels to be configured. - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval None - */ -#define __HAL_TIM_ENABLE_OCxPRELOAD(__HANDLE__, __CHANNEL__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 |= TIM_CCMR1_OC1PE) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 |= TIM_CCMR1_OC2PE) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 |= TIM_CCMR2_OC3PE) :\ - ((__HANDLE__)->Instance->CCMR2 |= TIM_CCMR2_OC4PE)) - -/** - * @brief Reset the TIM Output compare preload. - * @param __HANDLE__ TIM handle. - * @param __CHANNEL__ TIM Channels to be configured. - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval None - */ -#define __HAL_TIM_DISABLE_OCxPRELOAD(__HANDLE__, __CHANNEL__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_OC1PE) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_OC2PE) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_OC3PE) :\ - ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_OC4PE)) - -/** - * @brief Enable fast mode for a given channel. - * @param __HANDLE__ TIM handle. - * @param __CHANNEL__ TIM Channels to be configured. - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @note When fast mode is enabled an active edge on the trigger input acts - * like a compare match on CCx output. Delay to sample the trigger - * input and to activate CCx output is reduced to 3 clock cycles. - * @note Fast mode acts only if the channel is configured in PWM1 or PWM2 mode. - * @retval None - */ -#define __HAL_TIM_ENABLE_OCxFAST(__HANDLE__, __CHANNEL__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 |= TIM_CCMR1_OC1FE) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 |= TIM_CCMR1_OC2FE) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 |= TIM_CCMR2_OC3FE) :\ - ((__HANDLE__)->Instance->CCMR2 |= TIM_CCMR2_OC4FE)) - -/** - * @brief Disable fast mode for a given channel. - * @param __HANDLE__ TIM handle. - * @param __CHANNEL__ TIM Channels to be configured. - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @note When fast mode is disabled CCx output behaves normally depending - * on counter and CCRx values even when the trigger is ON. The minimum - * delay to activate CCx output when an active edge occurs on the - * trigger input is 5 clock cycles. - * @retval None - */ -#define __HAL_TIM_DISABLE_OCxFAST(__HANDLE__, __CHANNEL__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_OC1FE) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_OC2FE) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_OC3FE) :\ - ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_OC4FE)) - -/** - * @brief Set the Update Request Source (URS) bit of the TIMx_CR1 register. - * @param __HANDLE__ TIM handle. - * @note When the URS bit of the TIMx_CR1 register is set, only counter - * overflow/underflow generates an update interrupt or DMA request (if - * enabled) - * @retval None - */ -#define __HAL_TIM_URS_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1|= TIM_CR1_URS) - -/** - * @brief Reset the Update Request Source (URS) bit of the TIMx_CR1 register. - * @param __HANDLE__ TIM handle. - * @note When the URS bit of the TIMx_CR1 register is reset, any of the - * following events generate an update interrupt or DMA request (if - * enabled): - * _ Counter overflow underflow - * _ Setting the UG bit - * _ Update generation through the slave mode controller - * @retval None - */ -#define __HAL_TIM_URS_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1&=~TIM_CR1_URS) - -/** - * @brief Set the TIM Capture x input polarity on runtime. - * @param __HANDLE__ TIM handle. - * @param __CHANNEL__ TIM Channels to be configured. - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @param __POLARITY__ Polarity for TIx source - * @arg TIM_INPUTCHANNELPOLARITY_RISING: Rising Edge - * @arg TIM_INPUTCHANNELPOLARITY_FALLING: Falling Edge - * @arg TIM_INPUTCHANNELPOLARITY_BOTHEDGE: Rising and Falling Edge - * @retval None - */ -#define __HAL_TIM_SET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__, __POLARITY__) \ - do{ \ - TIM_RESET_CAPTUREPOLARITY((__HANDLE__), (__CHANNEL__)); \ - TIM_SET_CAPTUREPOLARITY((__HANDLE__), (__CHANNEL__), (__POLARITY__)); \ - }while(0) - -/** - * @} - */ -/* End of exported macros ----------------------------------------------------*/ - -/* Private constants ---------------------------------------------------------*/ -/** @defgroup TIM_Private_Constants TIM Private Constants - * @{ - */ -/* The counter of a timer instance is disabled only if all the CCx and CCxN - channels have been disabled */ -#define TIM_CCER_CCxE_MASK ((uint32_t)(TIM_CCER_CC1E | TIM_CCER_CC2E | TIM_CCER_CC3E | TIM_CCER_CC4E)) -#define TIM_CCER_CCxNE_MASK ((uint32_t)(TIM_CCER_CC1NE | TIM_CCER_CC2NE | TIM_CCER_CC3NE)) -/** - * @} - */ -/* End of private constants --------------------------------------------------*/ - -/* Private macros ------------------------------------------------------------*/ -/** @defgroup TIM_Private_Macros TIM Private Macros - * @{ - */ -#define IS_TIM_CLEARINPUT_SOURCE(__MODE__) (((__MODE__) == TIM_CLEARINPUTSOURCE_NONE) || \ - ((__MODE__) == TIM_CLEARINPUTSOURCE_ETR)) - -#define IS_TIM_DMA_BASE(__BASE__) (((__BASE__) == TIM_DMABASE_CR1) || \ - ((__BASE__) == TIM_DMABASE_CR2) || \ - ((__BASE__) == TIM_DMABASE_SMCR) || \ - ((__BASE__) == TIM_DMABASE_DIER) || \ - ((__BASE__) == TIM_DMABASE_SR) || \ - ((__BASE__) == TIM_DMABASE_EGR) || \ - ((__BASE__) == TIM_DMABASE_CCMR1) || \ - ((__BASE__) == TIM_DMABASE_CCMR2) || \ - ((__BASE__) == TIM_DMABASE_CCER) || \ - ((__BASE__) == TIM_DMABASE_CNT) || \ - ((__BASE__) == TIM_DMABASE_PSC) || \ - ((__BASE__) == TIM_DMABASE_ARR) || \ - ((__BASE__) == TIM_DMABASE_RCR) || \ - ((__BASE__) == TIM_DMABASE_CCR1) || \ - ((__BASE__) == TIM_DMABASE_CCR2) || \ - ((__BASE__) == TIM_DMABASE_CCR3) || \ - ((__BASE__) == TIM_DMABASE_CCR4) || \ - ((__BASE__) == TIM_DMABASE_BDTR)) - -#define IS_TIM_EVENT_SOURCE(__SOURCE__) ((((__SOURCE__) & 0xFFFFFF00U) == 0x00000000U) && ((__SOURCE__) != 0x00000000U)) - -#define IS_TIM_COUNTER_MODE(__MODE__) (((__MODE__) == TIM_COUNTERMODE_UP) || \ - ((__MODE__) == TIM_COUNTERMODE_DOWN) || \ - ((__MODE__) == TIM_COUNTERMODE_CENTERALIGNED1) || \ - ((__MODE__) == TIM_COUNTERMODE_CENTERALIGNED2) || \ - ((__MODE__) == TIM_COUNTERMODE_CENTERALIGNED3)) - -#define IS_TIM_CLOCKDIVISION_DIV(__DIV__) (((__DIV__) == TIM_CLOCKDIVISION_DIV1) || \ - ((__DIV__) == TIM_CLOCKDIVISION_DIV2) || \ - ((__DIV__) == TIM_CLOCKDIVISION_DIV4)) - -#define IS_TIM_AUTORELOAD_PRELOAD(PRELOAD) (((PRELOAD) == TIM_AUTORELOAD_PRELOAD_DISABLE) || \ - ((PRELOAD) == TIM_AUTORELOAD_PRELOAD_ENABLE)) - -#define IS_TIM_FAST_STATE(__STATE__) (((__STATE__) == TIM_OCFAST_DISABLE) || \ - ((__STATE__) == TIM_OCFAST_ENABLE)) - -#define IS_TIM_OC_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_OCPOLARITY_HIGH) || \ - ((__POLARITY__) == TIM_OCPOLARITY_LOW)) - -#define IS_TIM_OCN_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_OCNPOLARITY_HIGH) || \ - ((__POLARITY__) == TIM_OCNPOLARITY_LOW)) - -#define IS_TIM_OCIDLE_STATE(__STATE__) (((__STATE__) == TIM_OCIDLESTATE_SET) || \ - ((__STATE__) == TIM_OCIDLESTATE_RESET)) - -#define IS_TIM_OCNIDLE_STATE(__STATE__) (((__STATE__) == TIM_OCNIDLESTATE_SET) || \ - ((__STATE__) == TIM_OCNIDLESTATE_RESET)) - -#define IS_TIM_ENCODERINPUT_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_ENCODERINPUTPOLARITY_RISING) || \ - ((__POLARITY__) == TIM_ENCODERINPUTPOLARITY_FALLING)) - -#define IS_TIM_IC_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_ICPOLARITY_RISING) || \ - ((__POLARITY__) == TIM_ICPOLARITY_FALLING) || \ - ((__POLARITY__) == TIM_ICPOLARITY_BOTHEDGE)) - -#define IS_TIM_IC_SELECTION(__SELECTION__) (((__SELECTION__) == TIM_ICSELECTION_DIRECTTI) || \ - ((__SELECTION__) == TIM_ICSELECTION_INDIRECTTI) || \ - ((__SELECTION__) == TIM_ICSELECTION_TRC)) - -#define IS_TIM_IC_PRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_ICPSC_DIV1) || \ - ((__PRESCALER__) == TIM_ICPSC_DIV2) || \ - ((__PRESCALER__) == TIM_ICPSC_DIV4) || \ - ((__PRESCALER__) == TIM_ICPSC_DIV8)) - -#define IS_TIM_OPM_MODE(__MODE__) (((__MODE__) == TIM_OPMODE_SINGLE) || \ - ((__MODE__) == TIM_OPMODE_REPETITIVE)) - -#define IS_TIM_ENCODER_MODE(__MODE__) (((__MODE__) == TIM_ENCODERMODE_TI1) || \ - ((__MODE__) == TIM_ENCODERMODE_TI2) || \ - ((__MODE__) == TIM_ENCODERMODE_TI12)) - -#define IS_TIM_DMA_SOURCE(__SOURCE__) ((((__SOURCE__) & 0xFFFF80FFU) == 0x00000000U) && ((__SOURCE__) != 0x00000000U)) - -#define IS_TIM_CHANNELS(__CHANNEL__) (((__CHANNEL__) == TIM_CHANNEL_1) || \ - ((__CHANNEL__) == TIM_CHANNEL_2) || \ - ((__CHANNEL__) == TIM_CHANNEL_3) || \ - ((__CHANNEL__) == TIM_CHANNEL_4) || \ - ((__CHANNEL__) == TIM_CHANNEL_ALL)) - -#define IS_TIM_OPM_CHANNELS(__CHANNEL__) (((__CHANNEL__) == TIM_CHANNEL_1) || \ - ((__CHANNEL__) == TIM_CHANNEL_2)) - -#define IS_TIM_COMPLEMENTARY_CHANNELS(__CHANNEL__) (((__CHANNEL__) == TIM_CHANNEL_1) || \ - ((__CHANNEL__) == TIM_CHANNEL_2) || \ - ((__CHANNEL__) == TIM_CHANNEL_3)) - -#define IS_TIM_CLOCKSOURCE(__CLOCK__) (((__CLOCK__) == TIM_CLOCKSOURCE_INTERNAL) || \ - ((__CLOCK__) == TIM_CLOCKSOURCE_ETRMODE2) || \ - ((__CLOCK__) == TIM_CLOCKSOURCE_ITR0) || \ - ((__CLOCK__) == TIM_CLOCKSOURCE_ITR1) || \ - ((__CLOCK__) == TIM_CLOCKSOURCE_ITR2) || \ - ((__CLOCK__) == TIM_CLOCKSOURCE_ITR3) || \ - ((__CLOCK__) == TIM_CLOCKSOURCE_TI1ED) || \ - ((__CLOCK__) == TIM_CLOCKSOURCE_TI1) || \ - ((__CLOCK__) == TIM_CLOCKSOURCE_TI2) || \ - ((__CLOCK__) == TIM_CLOCKSOURCE_ETRMODE1)) - -#define IS_TIM_CLOCKPOLARITY(__POLARITY__) (((__POLARITY__) == TIM_CLOCKPOLARITY_INVERTED) || \ - ((__POLARITY__) == TIM_CLOCKPOLARITY_NONINVERTED) || \ - ((__POLARITY__) == TIM_CLOCKPOLARITY_RISING) || \ - ((__POLARITY__) == TIM_CLOCKPOLARITY_FALLING) || \ - ((__POLARITY__) == TIM_CLOCKPOLARITY_BOTHEDGE)) - -#define IS_TIM_CLOCKPRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV1) || \ - ((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV2) || \ - ((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV4) || \ - ((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV8)) - -#define IS_TIM_CLOCKFILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) - -#define IS_TIM_CLEARINPUT_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_CLEARINPUTPOLARITY_INVERTED) || \ - ((__POLARITY__) == TIM_CLEARINPUTPOLARITY_NONINVERTED)) - -#define IS_TIM_CLEARINPUT_PRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV1) || \ - ((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV2) || \ - ((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV4) || \ - ((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV8)) - -#define IS_TIM_CLEARINPUT_FILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) - -#define IS_TIM_OSSR_STATE(__STATE__) (((__STATE__) == TIM_OSSR_ENABLE) || \ - ((__STATE__) == TIM_OSSR_DISABLE)) - -#define IS_TIM_OSSI_STATE(__STATE__) (((__STATE__) == TIM_OSSI_ENABLE) || \ - ((__STATE__) == TIM_OSSI_DISABLE)) - -#define IS_TIM_LOCK_LEVEL(__LEVEL__) (((__LEVEL__) == TIM_LOCKLEVEL_OFF) || \ - ((__LEVEL__) == TIM_LOCKLEVEL_1) || \ - ((__LEVEL__) == TIM_LOCKLEVEL_2) || \ - ((__LEVEL__) == TIM_LOCKLEVEL_3)) - -#define IS_TIM_BREAK_FILTER(__BRKFILTER__) ((__BRKFILTER__) <= 0xFUL) - - -#define IS_TIM_BREAK_STATE(__STATE__) (((__STATE__) == TIM_BREAK_ENABLE) || \ - ((__STATE__) == TIM_BREAK_DISABLE)) - -#define IS_TIM_BREAK_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_BREAKPOLARITY_LOW) || \ - ((__POLARITY__) == TIM_BREAKPOLARITY_HIGH)) - -#define IS_TIM_AUTOMATIC_OUTPUT_STATE(__STATE__) (((__STATE__) == TIM_AUTOMATICOUTPUT_ENABLE) || \ - ((__STATE__) == TIM_AUTOMATICOUTPUT_DISABLE)) - -#define IS_TIM_TRGO_SOURCE(__SOURCE__) (((__SOURCE__) == TIM_TRGO_RESET) || \ - ((__SOURCE__) == TIM_TRGO_ENABLE) || \ - ((__SOURCE__) == TIM_TRGO_UPDATE) || \ - ((__SOURCE__) == TIM_TRGO_OC1) || \ - ((__SOURCE__) == TIM_TRGO_OC1REF) || \ - ((__SOURCE__) == TIM_TRGO_OC2REF) || \ - ((__SOURCE__) == TIM_TRGO_OC3REF) || \ - ((__SOURCE__) == TIM_TRGO_OC4REF)) - -#define IS_TIM_MSM_STATE(__STATE__) (((__STATE__) == TIM_MASTERSLAVEMODE_ENABLE) || \ - ((__STATE__) == TIM_MASTERSLAVEMODE_DISABLE)) - -#define IS_TIM_SLAVE_MODE(__MODE__) (((__MODE__) == TIM_SLAVEMODE_DISABLE) || \ - ((__MODE__) == TIM_SLAVEMODE_RESET) || \ - ((__MODE__) == TIM_SLAVEMODE_GATED) || \ - ((__MODE__) == TIM_SLAVEMODE_TRIGGER) || \ - ((__MODE__) == TIM_SLAVEMODE_EXTERNAL1)) - -#define IS_TIM_PWM_MODE(__MODE__) (((__MODE__) == TIM_OCMODE_PWM1) || \ - ((__MODE__) == TIM_OCMODE_PWM2)) - -#define IS_TIM_OC_MODE(__MODE__) (((__MODE__) == TIM_OCMODE_TIMING) || \ - ((__MODE__) == TIM_OCMODE_ACTIVE) || \ - ((__MODE__) == TIM_OCMODE_INACTIVE) || \ - ((__MODE__) == TIM_OCMODE_TOGGLE) || \ - ((__MODE__) == TIM_OCMODE_FORCED_ACTIVE) || \ - ((__MODE__) == TIM_OCMODE_FORCED_INACTIVE)) - -#define IS_TIM_TRIGGER_SELECTION(__SELECTION__) (((__SELECTION__) == TIM_TS_ITR0) || \ - ((__SELECTION__) == TIM_TS_ITR1) || \ - ((__SELECTION__) == TIM_TS_ITR2) || \ - ((__SELECTION__) == TIM_TS_ITR3) || \ - ((__SELECTION__) == TIM_TS_TI1F_ED) || \ - ((__SELECTION__) == TIM_TS_TI1FP1) || \ - ((__SELECTION__) == TIM_TS_TI2FP2) || \ - ((__SELECTION__) == TIM_TS_ETRF)) - -#define IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(__SELECTION__) (((__SELECTION__) == TIM_TS_ITR0) || \ - ((__SELECTION__) == TIM_TS_ITR1) || \ - ((__SELECTION__) == TIM_TS_ITR2) || \ - ((__SELECTION__) == TIM_TS_ITR3) || \ - ((__SELECTION__) == TIM_TS_NONE)) - -#define IS_TIM_TRIGGERPOLARITY(__POLARITY__) (((__POLARITY__) == TIM_TRIGGERPOLARITY_INVERTED ) || \ - ((__POLARITY__) == TIM_TRIGGERPOLARITY_NONINVERTED) || \ - ((__POLARITY__) == TIM_TRIGGERPOLARITY_RISING ) || \ - ((__POLARITY__) == TIM_TRIGGERPOLARITY_FALLING ) || \ - ((__POLARITY__) == TIM_TRIGGERPOLARITY_BOTHEDGE )) - -#define IS_TIM_TRIGGERPRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV1) || \ - ((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV2) || \ - ((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV4) || \ - ((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV8)) - -#define IS_TIM_TRIGGERFILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) - -#define IS_TIM_TI1SELECTION(__TI1SELECTION__) (((__TI1SELECTION__) == TIM_TI1SELECTION_CH1) || \ - ((__TI1SELECTION__) == TIM_TI1SELECTION_XORCOMBINATION)) - -#define IS_TIM_DMA_LENGTH(__LENGTH__) (((__LENGTH__) == TIM_DMABURSTLENGTH_1TRANSFER) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_2TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_3TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_4TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_5TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_6TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_7TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_8TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_9TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_10TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_11TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_12TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_13TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_14TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_15TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_16TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_17TRANSFERS) || \ - ((__LENGTH__) == TIM_DMABURSTLENGTH_18TRANSFERS)) - -#define IS_TIM_DMA_DATA_LENGTH(LENGTH) (((LENGTH) >= 0x1U) && ((LENGTH) < 0x10000U)) - -#define IS_TIM_IC_FILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) - -#define IS_TIM_DEADTIME(__DEADTIME__) ((__DEADTIME__) <= 0xFFU) - -#define IS_TIM_SLAVEMODE_TRIGGER_ENABLED(__TRIGGER__) ((__TRIGGER__) == TIM_SLAVEMODE_TRIGGER) - -#define TIM_SET_ICPRESCALERVALUE(__HANDLE__, __CHANNEL__, __ICPSC__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 |= (__ICPSC__)) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 |= ((__ICPSC__) << 8U)) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 |= (__ICPSC__)) :\ - ((__HANDLE__)->Instance->CCMR2 |= ((__ICPSC__) << 8U))) - -#define TIM_RESET_ICPRESCALERVALUE(__HANDLE__, __CHANNEL__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_IC1PSC) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_IC2PSC) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_IC3PSC) :\ - ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_IC4PSC)) - -#define TIM_SET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__, __POLARITY__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCER |= (__POLARITY__)) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCER |= ((__POLARITY__) << 4U)) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCER |= ((__POLARITY__) << 8U)) :\ - ((__HANDLE__)->Instance->CCER |= (((__POLARITY__) << 12U)))) - -#define TIM_RESET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCER &= ~(TIM_CCER_CC1P | TIM_CCER_CC1NP)) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCER &= ~(TIM_CCER_CC2P | TIM_CCER_CC2NP)) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCER &= ~(TIM_CCER_CC3P)) :\ - ((__HANDLE__)->Instance->CCER &= ~(TIM_CCER_CC4P))) - -#define TIM_CHANNEL_STATE_GET(__HANDLE__, __CHANNEL__)\ - (((__CHANNEL__) == TIM_CHANNEL_1) ? (__HANDLE__)->ChannelState[0] :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? (__HANDLE__)->ChannelState[1] :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? (__HANDLE__)->ChannelState[2] :\ - (__HANDLE__)->ChannelState[3]) - -#define TIM_CHANNEL_STATE_SET(__HANDLE__, __CHANNEL__, __CHANNEL_STATE__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->ChannelState[0] = (__CHANNEL_STATE__)) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->ChannelState[1] = (__CHANNEL_STATE__)) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->ChannelState[2] = (__CHANNEL_STATE__)) :\ - ((__HANDLE__)->ChannelState[3] = (__CHANNEL_STATE__))) - -#define TIM_CHANNEL_STATE_SET_ALL(__HANDLE__, __CHANNEL_STATE__) do { \ - (__HANDLE__)->ChannelState[0] = (__CHANNEL_STATE__); \ - (__HANDLE__)->ChannelState[1] = (__CHANNEL_STATE__); \ - (__HANDLE__)->ChannelState[2] = (__CHANNEL_STATE__); \ - (__HANDLE__)->ChannelState[3] = (__CHANNEL_STATE__); \ - } while(0) - -#define TIM_CHANNEL_N_STATE_GET(__HANDLE__, __CHANNEL__)\ - (((__CHANNEL__) == TIM_CHANNEL_1) ? (__HANDLE__)->ChannelNState[0] :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? (__HANDLE__)->ChannelNState[1] :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? (__HANDLE__)->ChannelNState[2] :\ - (__HANDLE__)->ChannelNState[3]) - -#define TIM_CHANNEL_N_STATE_SET(__HANDLE__, __CHANNEL__, __CHANNEL_STATE__) \ - (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->ChannelNState[0] = (__CHANNEL_STATE__)) :\ - ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->ChannelNState[1] = (__CHANNEL_STATE__)) :\ - ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->ChannelNState[2] = (__CHANNEL_STATE__)) :\ - ((__HANDLE__)->ChannelNState[3] = (__CHANNEL_STATE__))) - -#define TIM_CHANNEL_N_STATE_SET_ALL(__HANDLE__, __CHANNEL_STATE__) do { \ - (__HANDLE__)->ChannelNState[0] = \ - (__CHANNEL_STATE__); \ - (__HANDLE__)->ChannelNState[1] = \ - (__CHANNEL_STATE__); \ - (__HANDLE__)->ChannelNState[2] = \ - (__CHANNEL_STATE__); \ - (__HANDLE__)->ChannelNState[3] = \ - (__CHANNEL_STATE__); \ - } while(0) - -/** - * @} - */ -/* End of private macros -----------------------------------------------------*/ - -/* Include TIM HAL Extended module */ -#include "stm32f1xx_hal_tim_ex.h" - -/* Exported functions --------------------------------------------------------*/ -/** @addtogroup TIM_Exported_Functions TIM Exported Functions - * @{ - */ - -/** @addtogroup TIM_Exported_Functions_Group1 TIM Time Base functions - * @brief Time Base functions - * @{ - */ -/* Time Base functions ********************************************************/ -HAL_StatusTypeDef HAL_TIM_Base_Init(TIM_HandleTypeDef *htim); -HAL_StatusTypeDef HAL_TIM_Base_DeInit(TIM_HandleTypeDef *htim); -void HAL_TIM_Base_MspInit(TIM_HandleTypeDef *htim); -void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef *htim); -/* Blocking mode: Polling */ -HAL_StatusTypeDef HAL_TIM_Base_Start(TIM_HandleTypeDef *htim); -HAL_StatusTypeDef HAL_TIM_Base_Stop(TIM_HandleTypeDef *htim); -/* Non-Blocking mode: Interrupt */ -HAL_StatusTypeDef HAL_TIM_Base_Start_IT(TIM_HandleTypeDef *htim); -HAL_StatusTypeDef HAL_TIM_Base_Stop_IT(TIM_HandleTypeDef *htim); -/* Non-Blocking mode: DMA */ -HAL_StatusTypeDef HAL_TIM_Base_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length); -HAL_StatusTypeDef HAL_TIM_Base_Stop_DMA(TIM_HandleTypeDef *htim); -/** - * @} - */ - -/** @addtogroup TIM_Exported_Functions_Group2 TIM Output Compare functions - * @brief TIM Output Compare functions - * @{ - */ -/* Timer Output Compare functions *********************************************/ -HAL_StatusTypeDef HAL_TIM_OC_Init(TIM_HandleTypeDef *htim); -HAL_StatusTypeDef HAL_TIM_OC_DeInit(TIM_HandleTypeDef *htim); -void HAL_TIM_OC_MspInit(TIM_HandleTypeDef *htim); -void HAL_TIM_OC_MspDeInit(TIM_HandleTypeDef *htim); -/* Blocking mode: Polling */ -HAL_StatusTypeDef HAL_TIM_OC_Start(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_OC_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); -/* Non-Blocking mode: Interrupt */ -HAL_StatusTypeDef HAL_TIM_OC_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_OC_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); -/* Non-Blocking mode: DMA */ -HAL_StatusTypeDef HAL_TIM_OC_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length); -HAL_StatusTypeDef HAL_TIM_OC_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); -/** - * @} - */ - -/** @addtogroup TIM_Exported_Functions_Group3 TIM PWM functions - * @brief TIM PWM functions - * @{ - */ -/* Timer PWM functions ********************************************************/ -HAL_StatusTypeDef HAL_TIM_PWM_Init(TIM_HandleTypeDef *htim); -HAL_StatusTypeDef HAL_TIM_PWM_DeInit(TIM_HandleTypeDef *htim); -void HAL_TIM_PWM_MspInit(TIM_HandleTypeDef *htim); -void HAL_TIM_PWM_MspDeInit(TIM_HandleTypeDef *htim); -/* Blocking mode: Polling */ -HAL_StatusTypeDef HAL_TIM_PWM_Start(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_PWM_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); -/* Non-Blocking mode: Interrupt */ -HAL_StatusTypeDef HAL_TIM_PWM_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_PWM_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); -/* Non-Blocking mode: DMA */ -HAL_StatusTypeDef HAL_TIM_PWM_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length); -HAL_StatusTypeDef HAL_TIM_PWM_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); -/** - * @} - */ - -/** @addtogroup TIM_Exported_Functions_Group4 TIM Input Capture functions - * @brief TIM Input Capture functions - * @{ - */ -/* Timer Input Capture functions **********************************************/ -HAL_StatusTypeDef HAL_TIM_IC_Init(TIM_HandleTypeDef *htim); -HAL_StatusTypeDef HAL_TIM_IC_DeInit(TIM_HandleTypeDef *htim); -void HAL_TIM_IC_MspInit(TIM_HandleTypeDef *htim); -void HAL_TIM_IC_MspDeInit(TIM_HandleTypeDef *htim); -/* Blocking mode: Polling */ -HAL_StatusTypeDef HAL_TIM_IC_Start(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_IC_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); -/* Non-Blocking mode: Interrupt */ -HAL_StatusTypeDef HAL_TIM_IC_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_IC_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); -/* Non-Blocking mode: DMA */ -HAL_StatusTypeDef HAL_TIM_IC_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length); -HAL_StatusTypeDef HAL_TIM_IC_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); -/** - * @} - */ - -/** @addtogroup TIM_Exported_Functions_Group5 TIM One Pulse functions - * @brief TIM One Pulse functions - * @{ - */ -/* Timer One Pulse functions **************************************************/ -HAL_StatusTypeDef HAL_TIM_OnePulse_Init(TIM_HandleTypeDef *htim, uint32_t OnePulseMode); -HAL_StatusTypeDef HAL_TIM_OnePulse_DeInit(TIM_HandleTypeDef *htim); -void HAL_TIM_OnePulse_MspInit(TIM_HandleTypeDef *htim); -void HAL_TIM_OnePulse_MspDeInit(TIM_HandleTypeDef *htim); -/* Blocking mode: Polling */ -HAL_StatusTypeDef HAL_TIM_OnePulse_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel); -HAL_StatusTypeDef HAL_TIM_OnePulse_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel); -/* Non-Blocking mode: Interrupt */ -HAL_StatusTypeDef HAL_TIM_OnePulse_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel); -HAL_StatusTypeDef HAL_TIM_OnePulse_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel); -/** - * @} - */ - -/** @addtogroup TIM_Exported_Functions_Group6 TIM Encoder functions - * @brief TIM Encoder functions - * @{ - */ -/* Timer Encoder functions ****************************************************/ -HAL_StatusTypeDef HAL_TIM_Encoder_Init(TIM_HandleTypeDef *htim, TIM_Encoder_InitTypeDef *sConfig); -HAL_StatusTypeDef HAL_TIM_Encoder_DeInit(TIM_HandleTypeDef *htim); -void HAL_TIM_Encoder_MspInit(TIM_HandleTypeDef *htim); -void HAL_TIM_Encoder_MspDeInit(TIM_HandleTypeDef *htim); -/* Blocking mode: Polling */ -HAL_StatusTypeDef HAL_TIM_Encoder_Start(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_Encoder_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); -/* Non-Blocking mode: Interrupt */ -HAL_StatusTypeDef HAL_TIM_Encoder_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_Encoder_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); -/* Non-Blocking mode: DMA */ -HAL_StatusTypeDef HAL_TIM_Encoder_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData1, - uint32_t *pData2, uint16_t Length); -HAL_StatusTypeDef HAL_TIM_Encoder_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); -/** - * @} - */ - -/** @addtogroup TIM_Exported_Functions_Group7 TIM IRQ handler management - * @brief IRQ handler management - * @{ - */ -/* Interrupt Handler functions ***********************************************/ -void HAL_TIM_IRQHandler(TIM_HandleTypeDef *htim); -/** - * @} - */ - -/** @defgroup TIM_Exported_Functions_Group8 TIM Peripheral Control functions - * @brief Peripheral Control functions - * @{ - */ -/* Control functions *********************************************************/ -HAL_StatusTypeDef HAL_TIM_OC_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OC_InitTypeDef *sConfig, uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_PWM_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OC_InitTypeDef *sConfig, uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_IC_ConfigChannel(TIM_HandleTypeDef *htim, TIM_IC_InitTypeDef *sConfig, uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_OnePulse_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OnePulse_InitTypeDef *sConfig, - uint32_t OutputChannel, uint32_t InputChannel); -HAL_StatusTypeDef HAL_TIM_ConfigOCrefClear(TIM_HandleTypeDef *htim, TIM_ClearInputConfigTypeDef *sClearInputConfig, - uint32_t Channel); -HAL_StatusTypeDef HAL_TIM_ConfigClockSource(TIM_HandleTypeDef *htim, TIM_ClockConfigTypeDef *sClockSourceConfig); -HAL_StatusTypeDef HAL_TIM_ConfigTI1Input(TIM_HandleTypeDef *htim, uint32_t TI1_Selection); -HAL_StatusTypeDef HAL_TIM_SlaveConfigSynchro(TIM_HandleTypeDef *htim, TIM_SlaveConfigTypeDef *sSlaveConfig); -HAL_StatusTypeDef HAL_TIM_SlaveConfigSynchro_IT(TIM_HandleTypeDef *htim, TIM_SlaveConfigTypeDef *sSlaveConfig); -HAL_StatusTypeDef HAL_TIM_DMABurst_WriteStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, - uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength); -HAL_StatusTypeDef HAL_TIM_DMABurst_MultiWriteStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, - uint32_t BurstRequestSrc, uint32_t *BurstBuffer, - uint32_t BurstLength, uint32_t DataLength); -HAL_StatusTypeDef HAL_TIM_DMABurst_WriteStop(TIM_HandleTypeDef *htim, uint32_t BurstRequestSrc); -HAL_StatusTypeDef HAL_TIM_DMABurst_ReadStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, - uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength); -HAL_StatusTypeDef HAL_TIM_DMABurst_MultiReadStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, - uint32_t BurstRequestSrc, uint32_t *BurstBuffer, - uint32_t BurstLength, uint32_t DataLength); -HAL_StatusTypeDef HAL_TIM_DMABurst_ReadStop(TIM_HandleTypeDef *htim, uint32_t BurstRequestSrc); -HAL_StatusTypeDef HAL_TIM_GenerateEvent(TIM_HandleTypeDef *htim, uint32_t EventSource); -uint32_t HAL_TIM_ReadCapturedValue(TIM_HandleTypeDef *htim, uint32_t Channel); -/** - * @} - */ - -/** @defgroup TIM_Exported_Functions_Group9 TIM Callbacks functions - * @brief TIM Callbacks functions - * @{ - */ -/* Callback in non blocking modes (Interrupt and DMA) *************************/ -void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim); -void HAL_TIM_PeriodElapsedHalfCpltCallback(TIM_HandleTypeDef *htim); -void HAL_TIM_OC_DelayElapsedCallback(TIM_HandleTypeDef *htim); -void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim); -void HAL_TIM_IC_CaptureHalfCpltCallback(TIM_HandleTypeDef *htim); -void HAL_TIM_PWM_PulseFinishedCallback(TIM_HandleTypeDef *htim); -void HAL_TIM_PWM_PulseFinishedHalfCpltCallback(TIM_HandleTypeDef *htim); -void HAL_TIM_TriggerCallback(TIM_HandleTypeDef *htim); -void HAL_TIM_TriggerHalfCpltCallback(TIM_HandleTypeDef *htim); -void HAL_TIM_ErrorCallback(TIM_HandleTypeDef *htim); - -/* Callbacks Register/UnRegister functions ***********************************/ -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) -HAL_StatusTypeDef HAL_TIM_RegisterCallback(TIM_HandleTypeDef *htim, HAL_TIM_CallbackIDTypeDef CallbackID, - pTIM_CallbackTypeDef pCallback); -HAL_StatusTypeDef HAL_TIM_UnRegisterCallback(TIM_HandleTypeDef *htim, HAL_TIM_CallbackIDTypeDef CallbackID); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - -/** - * @} - */ - -/** @defgroup TIM_Exported_Functions_Group10 TIM Peripheral State functions - * @brief Peripheral State functions - * @{ - */ -/* Peripheral State functions ************************************************/ -HAL_TIM_StateTypeDef HAL_TIM_Base_GetState(TIM_HandleTypeDef *htim); -HAL_TIM_StateTypeDef HAL_TIM_OC_GetState(TIM_HandleTypeDef *htim); -HAL_TIM_StateTypeDef HAL_TIM_PWM_GetState(TIM_HandleTypeDef *htim); -HAL_TIM_StateTypeDef HAL_TIM_IC_GetState(TIM_HandleTypeDef *htim); -HAL_TIM_StateTypeDef HAL_TIM_OnePulse_GetState(TIM_HandleTypeDef *htim); -HAL_TIM_StateTypeDef HAL_TIM_Encoder_GetState(TIM_HandleTypeDef *htim); - -/* Peripheral Channel state functions ************************************************/ -HAL_TIM_ActiveChannel HAL_TIM_GetActiveChannel(TIM_HandleTypeDef *htim); -HAL_TIM_ChannelStateTypeDef HAL_TIM_GetChannelState(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_TIM_DMABurstStateTypeDef HAL_TIM_DMABurstState(TIM_HandleTypeDef *htim); -/** - * @} - */ - -/** - * @} - */ -/* End of exported functions -------------------------------------------------*/ - -/* Private functions----------------------------------------------------------*/ -/** @defgroup TIM_Private_Functions TIM Private Functions - * @{ - */ -void TIM_Base_SetConfig(TIM_TypeDef *TIMx, TIM_Base_InitTypeDef *Structure); -void TIM_TI1_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, uint32_t TIM_ICFilter); -void TIM_OC2_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config); -void TIM_ETR_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ExtTRGPrescaler, - uint32_t TIM_ExtTRGPolarity, uint32_t ExtTRGFilter); - -void TIM_DMADelayPulseHalfCplt(DMA_HandleTypeDef *hdma); -void TIM_DMAError(DMA_HandleTypeDef *hdma); -void TIM_DMACaptureCplt(DMA_HandleTypeDef *hdma); -void TIM_DMACaptureHalfCplt(DMA_HandleTypeDef *hdma); -void TIM_CCxChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelState); - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) -void TIM_ResetCallback(TIM_HandleTypeDef *htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - -/** - * @} - */ -/* End of private functions --------------------------------------------------*/ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - -#endif /* STM32F1xx_HAL_TIM_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_tim.h + * @author MCD Application Team + * @brief Header file of TIM HAL module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef STM32F1xx_HAL_TIM_H +#define STM32F1xx_HAL_TIM_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup TIM + * @{ + */ + +/* Exported types ------------------------------------------------------------*/ +/** @defgroup TIM_Exported_Types TIM Exported Types + * @{ + */ + +/** + * @brief TIM Time base Configuration Structure definition + */ +typedef struct +{ + uint32_t Prescaler; /*!< Specifies the prescaler value used to divide the TIM clock. + This parameter can be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF */ + + uint32_t CounterMode; /*!< Specifies the counter mode. + This parameter can be a value of @ref TIM_Counter_Mode */ + + uint32_t Period; /*!< Specifies the period value to be loaded into the active + Auto-Reload Register at the next update event. + This parameter can be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF. */ + + uint32_t ClockDivision; /*!< Specifies the clock division. + This parameter can be a value of @ref TIM_ClockDivision */ + + uint32_t RepetitionCounter; /*!< Specifies the repetition counter value. Each time the RCR downcounter + reaches zero, an update event is generated and counting restarts + from the RCR value (N). + This means in PWM mode that (N+1) corresponds to: + - the number of PWM periods in edge-aligned mode + - the number of half PWM period in center-aligned mode + GP timers: this parameter must be a number between Min_Data = 0x00 and + Max_Data = 0xFF. + Advanced timers: this parameter must be a number between Min_Data = 0x0000 and + Max_Data = 0xFFFF. */ + + uint32_t AutoReloadPreload; /*!< Specifies the auto-reload preload. + This parameter can be a value of @ref TIM_AutoReloadPreload */ +} TIM_Base_InitTypeDef; + +/** + * @brief TIM Output Compare Configuration Structure definition + */ +typedef struct +{ + uint32_t OCMode; /*!< Specifies the TIM mode. + This parameter can be a value of @ref TIM_Output_Compare_and_PWM_modes */ + + uint32_t Pulse; /*!< Specifies the pulse value to be loaded into the Capture Compare Register. + This parameter can be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF */ + + uint32_t OCPolarity; /*!< Specifies the output polarity. + This parameter can be a value of @ref TIM_Output_Compare_Polarity */ + + uint32_t OCNPolarity; /*!< Specifies the complementary output polarity. + This parameter can be a value of @ref TIM_Output_Compare_N_Polarity + @note This parameter is valid only for timer instances supporting break feature. */ + + uint32_t OCFastMode; /*!< Specifies the Fast mode state. + This parameter can be a value of @ref TIM_Output_Fast_State + @note This parameter is valid only in PWM1 and PWM2 mode. */ + + + uint32_t OCIdleState; /*!< Specifies the TIM Output Compare pin state during Idle state. + This parameter can be a value of @ref TIM_Output_Compare_Idle_State + @note This parameter is valid only for timer instances supporting break feature. */ + + uint32_t OCNIdleState; /*!< Specifies the TIM Output Compare pin state during Idle state. + This parameter can be a value of @ref TIM_Output_Compare_N_Idle_State + @note This parameter is valid only for timer instances supporting break feature. */ +} TIM_OC_InitTypeDef; + +/** + * @brief TIM One Pulse Mode Configuration Structure definition + */ +typedef struct +{ + uint32_t OCMode; /*!< Specifies the TIM mode. + This parameter can be a value of @ref TIM_Output_Compare_and_PWM_modes */ + + uint32_t Pulse; /*!< Specifies the pulse value to be loaded into the Capture Compare Register. + This parameter can be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF */ + + uint32_t OCPolarity; /*!< Specifies the output polarity. + This parameter can be a value of @ref TIM_Output_Compare_Polarity */ + + uint32_t OCNPolarity; /*!< Specifies the complementary output polarity. + This parameter can be a value of @ref TIM_Output_Compare_N_Polarity + @note This parameter is valid only for timer instances supporting break feature. */ + + uint32_t OCIdleState; /*!< Specifies the TIM Output Compare pin state during Idle state. + This parameter can be a value of @ref TIM_Output_Compare_Idle_State + @note This parameter is valid only for timer instances supporting break feature. */ + + uint32_t OCNIdleState; /*!< Specifies the TIM Output Compare pin state during Idle state. + This parameter can be a value of @ref TIM_Output_Compare_N_Idle_State + @note This parameter is valid only for timer instances supporting break feature. */ + + uint32_t ICPolarity; /*!< Specifies the active edge of the input signal. + This parameter can be a value of @ref TIM_Input_Capture_Polarity */ + + uint32_t ICSelection; /*!< Specifies the input. + This parameter can be a value of @ref TIM_Input_Capture_Selection */ + + uint32_t ICFilter; /*!< Specifies the input capture filter. + This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ +} TIM_OnePulse_InitTypeDef; + +/** + * @brief TIM Input Capture Configuration Structure definition + */ +typedef struct +{ + uint32_t ICPolarity; /*!< Specifies the active edge of the input signal. + This parameter can be a value of @ref TIM_Input_Capture_Polarity */ + + uint32_t ICSelection; /*!< Specifies the input. + This parameter can be a value of @ref TIM_Input_Capture_Selection */ + + uint32_t ICPrescaler; /*!< Specifies the Input Capture Prescaler. + This parameter can be a value of @ref TIM_Input_Capture_Prescaler */ + + uint32_t ICFilter; /*!< Specifies the input capture filter. + This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ +} TIM_IC_InitTypeDef; + +/** + * @brief TIM Encoder Configuration Structure definition + */ +typedef struct +{ + uint32_t EncoderMode; /*!< Specifies the active edge of the input signal. + This parameter can be a value of @ref TIM_Encoder_Mode */ + + uint32_t IC1Polarity; /*!< Specifies the active edge of the input signal. + This parameter can be a value of @ref TIM_Encoder_Input_Polarity */ + + uint32_t IC1Selection; /*!< Specifies the input. + This parameter can be a value of @ref TIM_Input_Capture_Selection */ + + uint32_t IC1Prescaler; /*!< Specifies the Input Capture Prescaler. + This parameter can be a value of @ref TIM_Input_Capture_Prescaler */ + + uint32_t IC1Filter; /*!< Specifies the input capture filter. + This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ + + uint32_t IC2Polarity; /*!< Specifies the active edge of the input signal. + This parameter can be a value of @ref TIM_Encoder_Input_Polarity */ + + uint32_t IC2Selection; /*!< Specifies the input. + This parameter can be a value of @ref TIM_Input_Capture_Selection */ + + uint32_t IC2Prescaler; /*!< Specifies the Input Capture Prescaler. + This parameter can be a value of @ref TIM_Input_Capture_Prescaler */ + + uint32_t IC2Filter; /*!< Specifies the input capture filter. + This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ +} TIM_Encoder_InitTypeDef; + +/** + * @brief Clock Configuration Handle Structure definition + */ +typedef struct +{ + uint32_t ClockSource; /*!< TIM clock sources + This parameter can be a value of @ref TIM_Clock_Source */ + uint32_t ClockPolarity; /*!< TIM clock polarity + This parameter can be a value of @ref TIM_Clock_Polarity */ + uint32_t ClockPrescaler; /*!< TIM clock prescaler + This parameter can be a value of @ref TIM_Clock_Prescaler */ + uint32_t ClockFilter; /*!< TIM clock filter + This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ +} TIM_ClockConfigTypeDef; + +/** + * @brief TIM Clear Input Configuration Handle Structure definition + */ +typedef struct +{ + uint32_t ClearInputState; /*!< TIM clear Input state + This parameter can be ENABLE or DISABLE */ + uint32_t ClearInputSource; /*!< TIM clear Input sources + This parameter can be a value of @ref TIM_ClearInput_Source */ + uint32_t ClearInputPolarity; /*!< TIM Clear Input polarity + This parameter can be a value of @ref TIM_ClearInput_Polarity */ + uint32_t ClearInputPrescaler; /*!< TIM Clear Input prescaler + This parameter must be 0: When OCRef clear feature is used with ETR source, + ETR prescaler must be off */ + uint32_t ClearInputFilter; /*!< TIM Clear Input filter + This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ +} TIM_ClearInputConfigTypeDef; + +/** + * @brief TIM Master configuration Structure definition + */ +typedef struct +{ + uint32_t MasterOutputTrigger; /*!< Trigger output (TRGO) selection + This parameter can be a value of @ref TIM_Master_Mode_Selection */ + uint32_t MasterSlaveMode; /*!< Master/slave mode selection + This parameter can be a value of @ref TIM_Master_Slave_Mode + @note When the Master/slave mode is enabled, the effect of + an event on the trigger input (TRGI) is delayed to allow a + perfect synchronization between the current timer and its + slaves (through TRGO). It is not mandatory in case of timer + synchronization mode. */ +} TIM_MasterConfigTypeDef; + +/** + * @brief TIM Slave configuration Structure definition + */ +typedef struct +{ + uint32_t SlaveMode; /*!< Slave mode selection + This parameter can be a value of @ref TIM_Slave_Mode */ + uint32_t InputTrigger; /*!< Input Trigger source + This parameter can be a value of @ref TIM_Trigger_Selection */ + uint32_t TriggerPolarity; /*!< Input Trigger polarity + This parameter can be a value of @ref TIM_Trigger_Polarity */ + uint32_t TriggerPrescaler; /*!< Input trigger prescaler + This parameter can be a value of @ref TIM_Trigger_Prescaler */ + uint32_t TriggerFilter; /*!< Input trigger filter + This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ + +} TIM_SlaveConfigTypeDef; + +/** + * @brief TIM Break input(s) and Dead time configuration Structure definition + * @note 2 break inputs can be configured (BKIN and BKIN2) with configurable + * filter and polarity. + */ +typedef struct +{ + uint32_t OffStateRunMode; /*!< TIM off state in run mode, This parameter can be a value of @ref TIM_OSSR_Off_State_Selection_for_Run_mode_state */ + + uint32_t OffStateIDLEMode; /*!< TIM off state in IDLE mode, This parameter can be a value of @ref TIM_OSSI_Off_State_Selection_for_Idle_mode_state */ + + uint32_t LockLevel; /*!< TIM Lock level, This parameter can be a value of @ref TIM_Lock_level */ + + uint32_t DeadTime; /*!< TIM dead Time, This parameter can be a number between Min_Data = 0x00 and Max_Data = 0xFF */ + + uint32_t BreakState; /*!< TIM Break State, This parameter can be a value of @ref TIM_Break_Input_enable_disable */ + + uint32_t BreakPolarity; /*!< TIM Break input polarity, This parameter can be a value of @ref TIM_Break_Polarity */ + + uint32_t BreakFilter; /*!< Specifies the break input filter.This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ + + uint32_t AutomaticOutput; /*!< TIM Automatic Output Enable state, This parameter can be a value of @ref TIM_AOE_Bit_Set_Reset */ + +} TIM_BreakDeadTimeConfigTypeDef; + +/** + * @brief HAL State structures definition + */ +typedef enum +{ + HAL_TIM_STATE_RESET = 0x00U, /*!< Peripheral not yet initialized or disabled */ + HAL_TIM_STATE_READY = 0x01U, /*!< Peripheral Initialized and ready for use */ + HAL_TIM_STATE_BUSY = 0x02U, /*!< An internal process is ongoing */ + HAL_TIM_STATE_TIMEOUT = 0x03U, /*!< Timeout state */ + HAL_TIM_STATE_ERROR = 0x04U /*!< Reception process is ongoing */ +} HAL_TIM_StateTypeDef; + +/** + * @brief TIM Channel States definition + */ +typedef enum +{ + HAL_TIM_CHANNEL_STATE_RESET = 0x00U, /*!< TIM Channel initial state */ + HAL_TIM_CHANNEL_STATE_READY = 0x01U, /*!< TIM Channel ready for use */ + HAL_TIM_CHANNEL_STATE_BUSY = 0x02U, /*!< An internal process is ongoing on the TIM channel */ +} HAL_TIM_ChannelStateTypeDef; + +/** + * @brief DMA Burst States definition + */ +typedef enum +{ + HAL_DMA_BURST_STATE_RESET = 0x00U, /*!< DMA Burst initial state */ + HAL_DMA_BURST_STATE_READY = 0x01U, /*!< DMA Burst ready for use */ + HAL_DMA_BURST_STATE_BUSY = 0x02U, /*!< Ongoing DMA Burst */ +} HAL_TIM_DMABurstStateTypeDef; + +/** + * @brief HAL Active channel structures definition + */ +typedef enum +{ + HAL_TIM_ACTIVE_CHANNEL_1 = 0x01U, /*!< The active channel is 1 */ + HAL_TIM_ACTIVE_CHANNEL_2 = 0x02U, /*!< The active channel is 2 */ + HAL_TIM_ACTIVE_CHANNEL_3 = 0x04U, /*!< The active channel is 3 */ + HAL_TIM_ACTIVE_CHANNEL_4 = 0x08U, /*!< The active channel is 4 */ + HAL_TIM_ACTIVE_CHANNEL_CLEARED = 0x00U /*!< All active channels cleared */ +} HAL_TIM_ActiveChannel; + +/** + * @brief TIM Time Base Handle Structure definition + */ +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) +typedef struct __TIM_HandleTypeDef +#else +typedef struct +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ +{ + TIM_TypeDef *Instance; /*!< Register base address */ + TIM_Base_InitTypeDef Init; /*!< TIM Time Base required parameters */ + HAL_TIM_ActiveChannel Channel; /*!< Active channel */ + DMA_HandleTypeDef *hdma[7]; /*!< DMA Handlers array + This array is accessed by a @ref DMA_Handle_index */ + HAL_LockTypeDef Lock; /*!< Locking object */ + __IO HAL_TIM_StateTypeDef State; /*!< TIM operation state */ + __IO HAL_TIM_ChannelStateTypeDef ChannelState[4]; /*!< TIM channel operation state */ + __IO HAL_TIM_ChannelStateTypeDef ChannelNState[4]; /*!< TIM complementary channel operation state */ + __IO HAL_TIM_DMABurstStateTypeDef DMABurstState; /*!< DMA burst operation state */ + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + void (* Base_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Base Msp Init Callback */ + void (* Base_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Base Msp DeInit Callback */ + void (* IC_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM IC Msp Init Callback */ + void (* IC_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM IC Msp DeInit Callback */ + void (* OC_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM OC Msp Init Callback */ + void (* OC_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM OC Msp DeInit Callback */ + void (* PWM_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM PWM Msp Init Callback */ + void (* PWM_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM PWM Msp DeInit Callback */ + void (* OnePulse_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM One Pulse Msp Init Callback */ + void (* OnePulse_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM One Pulse Msp DeInit Callback */ + void (* Encoder_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Encoder Msp Init Callback */ + void (* Encoder_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Encoder Msp DeInit Callback */ + void (* HallSensor_MspInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Hall Sensor Msp Init Callback */ + void (* HallSensor_MspDeInitCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Hall Sensor Msp DeInit Callback */ + void (* PeriodElapsedCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Period Elapsed Callback */ + void (* PeriodElapsedHalfCpltCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Period Elapsed half complete Callback */ + void (* TriggerCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Trigger Callback */ + void (* TriggerHalfCpltCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Trigger half complete Callback */ + void (* IC_CaptureCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Input Capture Callback */ + void (* IC_CaptureHalfCpltCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Input Capture half complete Callback */ + void (* OC_DelayElapsedCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Output Compare Delay Elapsed Callback */ + void (* PWM_PulseFinishedCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM PWM Pulse Finished Callback */ + void (* PWM_PulseFinishedHalfCpltCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM PWM Pulse Finished half complete Callback */ + void (* ErrorCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Error Callback */ + void (* CommutationCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Commutation Callback */ + void (* CommutationHalfCpltCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Commutation half complete Callback */ + void (* BreakCallback)(struct __TIM_HandleTypeDef *htim); /*!< TIM Break Callback */ +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ +} TIM_HandleTypeDef; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) +/** + * @brief HAL TIM Callback ID enumeration definition + */ +typedef enum +{ + HAL_TIM_BASE_MSPINIT_CB_ID = 0x00U /*!< TIM Base MspInit Callback ID */ + , HAL_TIM_BASE_MSPDEINIT_CB_ID = 0x01U /*!< TIM Base MspDeInit Callback ID */ + , HAL_TIM_IC_MSPINIT_CB_ID = 0x02U /*!< TIM IC MspInit Callback ID */ + , HAL_TIM_IC_MSPDEINIT_CB_ID = 0x03U /*!< TIM IC MspDeInit Callback ID */ + , HAL_TIM_OC_MSPINIT_CB_ID = 0x04U /*!< TIM OC MspInit Callback ID */ + , HAL_TIM_OC_MSPDEINIT_CB_ID = 0x05U /*!< TIM OC MspDeInit Callback ID */ + , HAL_TIM_PWM_MSPINIT_CB_ID = 0x06U /*!< TIM PWM MspInit Callback ID */ + , HAL_TIM_PWM_MSPDEINIT_CB_ID = 0x07U /*!< TIM PWM MspDeInit Callback ID */ + , HAL_TIM_ONE_PULSE_MSPINIT_CB_ID = 0x08U /*!< TIM One Pulse MspInit Callback ID */ + , HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID = 0x09U /*!< TIM One Pulse MspDeInit Callback ID */ + , HAL_TIM_ENCODER_MSPINIT_CB_ID = 0x0AU /*!< TIM Encoder MspInit Callback ID */ + , HAL_TIM_ENCODER_MSPDEINIT_CB_ID = 0x0BU /*!< TIM Encoder MspDeInit Callback ID */ + , HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID = 0x0CU /*!< TIM Hall Sensor MspDeInit Callback ID */ + , HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID = 0x0DU /*!< TIM Hall Sensor MspDeInit Callback ID */ + , HAL_TIM_PERIOD_ELAPSED_CB_ID = 0x0EU /*!< TIM Period Elapsed Callback ID */ + , HAL_TIM_PERIOD_ELAPSED_HALF_CB_ID = 0x0FU /*!< TIM Period Elapsed half complete Callback ID */ + , HAL_TIM_TRIGGER_CB_ID = 0x10U /*!< TIM Trigger Callback ID */ + , HAL_TIM_TRIGGER_HALF_CB_ID = 0x11U /*!< TIM Trigger half complete Callback ID */ + + , HAL_TIM_IC_CAPTURE_CB_ID = 0x12U /*!< TIM Input Capture Callback ID */ + , HAL_TIM_IC_CAPTURE_HALF_CB_ID = 0x13U /*!< TIM Input Capture half complete Callback ID */ + , HAL_TIM_OC_DELAY_ELAPSED_CB_ID = 0x14U /*!< TIM Output Compare Delay Elapsed Callback ID */ + , HAL_TIM_PWM_PULSE_FINISHED_CB_ID = 0x15U /*!< TIM PWM Pulse Finished Callback ID */ + , HAL_TIM_PWM_PULSE_FINISHED_HALF_CB_ID = 0x16U /*!< TIM PWM Pulse Finished half complete Callback ID */ + , HAL_TIM_ERROR_CB_ID = 0x17U /*!< TIM Error Callback ID */ + , HAL_TIM_COMMUTATION_CB_ID = 0x18U /*!< TIM Commutation Callback ID */ + , HAL_TIM_COMMUTATION_HALF_CB_ID = 0x19U /*!< TIM Commutation half complete Callback ID */ + , HAL_TIM_BREAK_CB_ID = 0x1AU /*!< TIM Break Callback ID */ +} HAL_TIM_CallbackIDTypeDef; + +/** + * @brief HAL TIM Callback pointer definition + */ +typedef void (*pTIM_CallbackTypeDef)(TIM_HandleTypeDef *htim); /*!< pointer to the TIM callback function */ + +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + +/** + * @} + */ +/* End of exported types -----------------------------------------------------*/ + +/* Exported constants --------------------------------------------------------*/ +/** @defgroup TIM_Exported_Constants TIM Exported Constants + * @{ + */ + +/** @defgroup TIM_ClearInput_Source TIM Clear Input Source + * @{ + */ +#define TIM_CLEARINPUTSOURCE_NONE 0x00000000U /*!< OCREF_CLR is disabled */ +#define TIM_CLEARINPUTSOURCE_ETR 0x00000001U /*!< OCREF_CLR is connected to ETRF input */ +/** + * @} + */ + +/** @defgroup TIM_DMA_Base_address TIM DMA Base Address + * @{ + */ +#define TIM_DMABASE_CR1 0x00000000U +#define TIM_DMABASE_CR2 0x00000001U +#define TIM_DMABASE_SMCR 0x00000002U +#define TIM_DMABASE_DIER 0x00000003U +#define TIM_DMABASE_SR 0x00000004U +#define TIM_DMABASE_EGR 0x00000005U +#define TIM_DMABASE_CCMR1 0x00000006U +#define TIM_DMABASE_CCMR2 0x00000007U +#define TIM_DMABASE_CCER 0x00000008U +#define TIM_DMABASE_CNT 0x00000009U +#define TIM_DMABASE_PSC 0x0000000AU +#define TIM_DMABASE_ARR 0x0000000BU +#define TIM_DMABASE_RCR 0x0000000CU +#define TIM_DMABASE_CCR1 0x0000000DU +#define TIM_DMABASE_CCR2 0x0000000EU +#define TIM_DMABASE_CCR3 0x0000000FU +#define TIM_DMABASE_CCR4 0x00000010U +#define TIM_DMABASE_BDTR 0x00000011U +#define TIM_DMABASE_DCR 0x00000012U +#define TIM_DMABASE_DMAR 0x00000013U +/** + * @} + */ + +/** @defgroup TIM_Event_Source TIM Event Source + * @{ + */ +#define TIM_EVENTSOURCE_UPDATE TIM_EGR_UG /*!< Reinitialize the counter and generates an update of the registers */ +#define TIM_EVENTSOURCE_CC1 TIM_EGR_CC1G /*!< A capture/compare event is generated on channel 1 */ +#define TIM_EVENTSOURCE_CC2 TIM_EGR_CC2G /*!< A capture/compare event is generated on channel 2 */ +#define TIM_EVENTSOURCE_CC3 TIM_EGR_CC3G /*!< A capture/compare event is generated on channel 3 */ +#define TIM_EVENTSOURCE_CC4 TIM_EGR_CC4G /*!< A capture/compare event is generated on channel 4 */ +#define TIM_EVENTSOURCE_COM TIM_EGR_COMG /*!< A commutation event is generated */ +#define TIM_EVENTSOURCE_TRIGGER TIM_EGR_TG /*!< A trigger event is generated */ +#define TIM_EVENTSOURCE_BREAK TIM_EGR_BG /*!< A break event is generated */ +/** + * @} + */ + +/** @defgroup TIM_Input_Channel_Polarity TIM Input Channel polarity + * @{ + */ +#define TIM_INPUTCHANNELPOLARITY_RISING 0x00000000U /*!< Polarity for TIx source */ +#define TIM_INPUTCHANNELPOLARITY_FALLING TIM_CCER_CC1P /*!< Polarity for TIx source */ +#define TIM_INPUTCHANNELPOLARITY_BOTHEDGE (TIM_CCER_CC1P | TIM_CCER_CC1NP) /*!< Polarity for TIx source */ +/** + * @} + */ + +/** @defgroup TIM_ETR_Polarity TIM ETR Polarity + * @{ + */ +#define TIM_ETRPOLARITY_INVERTED TIM_SMCR_ETP /*!< Polarity for ETR source */ +#define TIM_ETRPOLARITY_NONINVERTED 0x00000000U /*!< Polarity for ETR source */ +/** + * @} + */ + +/** @defgroup TIM_ETR_Prescaler TIM ETR Prescaler + * @{ + */ +#define TIM_ETRPRESCALER_DIV1 0x00000000U /*!< No prescaler is used */ +#define TIM_ETRPRESCALER_DIV2 TIM_SMCR_ETPS_0 /*!< ETR input source is divided by 2 */ +#define TIM_ETRPRESCALER_DIV4 TIM_SMCR_ETPS_1 /*!< ETR input source is divided by 4 */ +#define TIM_ETRPRESCALER_DIV8 TIM_SMCR_ETPS /*!< ETR input source is divided by 8 */ +/** + * @} + */ + +/** @defgroup TIM_Counter_Mode TIM Counter Mode + * @{ + */ +#define TIM_COUNTERMODE_UP 0x00000000U /*!< Counter used as up-counter */ +#define TIM_COUNTERMODE_DOWN TIM_CR1_DIR /*!< Counter used as down-counter */ +#define TIM_COUNTERMODE_CENTERALIGNED1 TIM_CR1_CMS_0 /*!< Center-aligned mode 1 */ +#define TIM_COUNTERMODE_CENTERALIGNED2 TIM_CR1_CMS_1 /*!< Center-aligned mode 2 */ +#define TIM_COUNTERMODE_CENTERALIGNED3 TIM_CR1_CMS /*!< Center-aligned mode 3 */ +/** + * @} + */ + +/** @defgroup TIM_ClockDivision TIM Clock Division + * @{ + */ +#define TIM_CLOCKDIVISION_DIV1 0x00000000U /*!< Clock division: tDTS=tCK_INT */ +#define TIM_CLOCKDIVISION_DIV2 TIM_CR1_CKD_0 /*!< Clock division: tDTS=2*tCK_INT */ +#define TIM_CLOCKDIVISION_DIV4 TIM_CR1_CKD_1 /*!< Clock division: tDTS=4*tCK_INT */ +/** + * @} + */ + +/** @defgroup TIM_Output_Compare_State TIM Output Compare State + * @{ + */ +#define TIM_OUTPUTSTATE_DISABLE 0x00000000U /*!< Capture/Compare 1 output disabled */ +#define TIM_OUTPUTSTATE_ENABLE TIM_CCER_CC1E /*!< Capture/Compare 1 output enabled */ +/** + * @} + */ + +/** @defgroup TIM_AutoReloadPreload TIM Auto-Reload Preload + * @{ + */ +#define TIM_AUTORELOAD_PRELOAD_DISABLE 0x00000000U /*!< TIMx_ARR register is not buffered */ +#define TIM_AUTORELOAD_PRELOAD_ENABLE TIM_CR1_ARPE /*!< TIMx_ARR register is buffered */ + +/** + * @} + */ + +/** @defgroup TIM_Output_Fast_State TIM Output Fast State + * @{ + */ +#define TIM_OCFAST_DISABLE 0x00000000U /*!< Output Compare fast disable */ +#define TIM_OCFAST_ENABLE TIM_CCMR1_OC1FE /*!< Output Compare fast enable */ +/** + * @} + */ + +/** @defgroup TIM_Output_Compare_N_State TIM Complementary Output Compare State + * @{ + */ +#define TIM_OUTPUTNSTATE_DISABLE 0x00000000U /*!< OCxN is disabled */ +#define TIM_OUTPUTNSTATE_ENABLE TIM_CCER_CC1NE /*!< OCxN is enabled */ +/** + * @} + */ + +/** @defgroup TIM_Output_Compare_Polarity TIM Output Compare Polarity + * @{ + */ +#define TIM_OCPOLARITY_HIGH 0x00000000U /*!< Capture/Compare output polarity */ +#define TIM_OCPOLARITY_LOW TIM_CCER_CC1P /*!< Capture/Compare output polarity */ +/** + * @} + */ + +/** @defgroup TIM_Output_Compare_N_Polarity TIM Complementary Output Compare Polarity + * @{ + */ +#define TIM_OCNPOLARITY_HIGH 0x00000000U /*!< Capture/Compare complementary output polarity */ +#define TIM_OCNPOLARITY_LOW TIM_CCER_CC1NP /*!< Capture/Compare complementary output polarity */ +/** + * @} + */ + +/** @defgroup TIM_Output_Compare_Idle_State TIM Output Compare Idle State + * @{ + */ +#define TIM_OCIDLESTATE_SET TIM_CR2_OIS1 /*!< Output Idle state: OCx=1 when MOE=0 */ +#define TIM_OCIDLESTATE_RESET 0x00000000U /*!< Output Idle state: OCx=0 when MOE=0 */ +/** + * @} + */ + +/** @defgroup TIM_Output_Compare_N_Idle_State TIM Complementary Output Compare Idle State + * @{ + */ +#define TIM_OCNIDLESTATE_SET TIM_CR2_OIS1N /*!< Complementary output Idle state: OCxN=1 when MOE=0 */ +#define TIM_OCNIDLESTATE_RESET 0x00000000U /*!< Complementary output Idle state: OCxN=0 when MOE=0 */ +/** + * @} + */ + +/** @defgroup TIM_Input_Capture_Polarity TIM Input Capture Polarity + * @{ + */ +#define TIM_ICPOLARITY_RISING TIM_INPUTCHANNELPOLARITY_RISING /*!< Capture triggered by rising edge on timer input */ +#define TIM_ICPOLARITY_FALLING TIM_INPUTCHANNELPOLARITY_FALLING /*!< Capture triggered by falling edge on timer input */ +#define TIM_ICPOLARITY_BOTHEDGE TIM_INPUTCHANNELPOLARITY_BOTHEDGE /*!< Capture triggered by both rising and falling edges on timer input*/ +/** + * @} + */ + +/** @defgroup TIM_Encoder_Input_Polarity TIM Encoder Input Polarity + * @{ + */ +#define TIM_ENCODERINPUTPOLARITY_RISING TIM_INPUTCHANNELPOLARITY_RISING /*!< Encoder input with rising edge polarity */ +#define TIM_ENCODERINPUTPOLARITY_FALLING TIM_INPUTCHANNELPOLARITY_FALLING /*!< Encoder input with falling edge polarity */ +/** + * @} + */ + +/** @defgroup TIM_Input_Capture_Selection TIM Input Capture Selection + * @{ + */ +#define TIM_ICSELECTION_DIRECTTI TIM_CCMR1_CC1S_0 /*!< TIM Input 1, 2, 3 or 4 is selected to be connected to IC1, IC2, IC3 or IC4, respectively */ +#define TIM_ICSELECTION_INDIRECTTI TIM_CCMR1_CC1S_1 /*!< TIM Input 1, 2, 3 or 4 is selected to be connected to IC2, IC1, IC4 or IC3, respectively */ +#define TIM_ICSELECTION_TRC TIM_CCMR1_CC1S /*!< TIM Input 1, 2, 3 or 4 is selected to be connected to TRC */ +/** + * @} + */ + +/** @defgroup TIM_Input_Capture_Prescaler TIM Input Capture Prescaler + * @{ + */ +#define TIM_ICPSC_DIV1 0x00000000U /*!< Capture performed each time an edge is detected on the capture input */ +#define TIM_ICPSC_DIV2 TIM_CCMR1_IC1PSC_0 /*!< Capture performed once every 2 events */ +#define TIM_ICPSC_DIV4 TIM_CCMR1_IC1PSC_1 /*!< Capture performed once every 4 events */ +#define TIM_ICPSC_DIV8 TIM_CCMR1_IC1PSC /*!< Capture performed once every 8 events */ +/** + * @} + */ + +/** @defgroup TIM_One_Pulse_Mode TIM One Pulse Mode + * @{ + */ +#define TIM_OPMODE_SINGLE TIM_CR1_OPM /*!< Counter stops counting at the next update event */ +#define TIM_OPMODE_REPETITIVE 0x00000000U /*!< Counter is not stopped at update event */ +/** + * @} + */ + +/** @defgroup TIM_Encoder_Mode TIM Encoder Mode + * @{ + */ +#define TIM_ENCODERMODE_TI1 TIM_SMCR_SMS_0 /*!< Quadrature encoder mode 1, x2 mode, counts up/down on TI1FP1 edge depending on TI2FP2 level */ +#define TIM_ENCODERMODE_TI2 TIM_SMCR_SMS_1 /*!< Quadrature encoder mode 2, x2 mode, counts up/down on TI2FP2 edge depending on TI1FP1 level. */ +#define TIM_ENCODERMODE_TI12 (TIM_SMCR_SMS_1 | TIM_SMCR_SMS_0) /*!< Quadrature encoder mode 3, x4 mode, counts up/down on both TI1FP1 and TI2FP2 edges depending on the level of the other input. */ +/** + * @} + */ + +/** @defgroup TIM_Interrupt_definition TIM interrupt Definition + * @{ + */ +#define TIM_IT_UPDATE TIM_DIER_UIE /*!< Update interrupt */ +#define TIM_IT_CC1 TIM_DIER_CC1IE /*!< Capture/Compare 1 interrupt */ +#define TIM_IT_CC2 TIM_DIER_CC2IE /*!< Capture/Compare 2 interrupt */ +#define TIM_IT_CC3 TIM_DIER_CC3IE /*!< Capture/Compare 3 interrupt */ +#define TIM_IT_CC4 TIM_DIER_CC4IE /*!< Capture/Compare 4 interrupt */ +#define TIM_IT_COM TIM_DIER_COMIE /*!< Commutation interrupt */ +#define TIM_IT_TRIGGER TIM_DIER_TIE /*!< Trigger interrupt */ +#define TIM_IT_BREAK TIM_DIER_BIE /*!< Break interrupt */ +/** + * @} + */ + +/** @defgroup TIM_Commutation_Source TIM Commutation Source + * @{ + */ +#define TIM_COMMUTATION_TRGI TIM_CR2_CCUS /*!< When Capture/compare control bits are preloaded, they are updated by setting the COMG bit or when an rising edge occurs on trigger input */ +#define TIM_COMMUTATION_SOFTWARE 0x00000000U /*!< When Capture/compare control bits are preloaded, they are updated by setting the COMG bit */ +/** + * @} + */ + +/** @defgroup TIM_DMA_sources TIM DMA Sources + * @{ + */ +#define TIM_DMA_UPDATE TIM_DIER_UDE /*!< DMA request is triggered by the update event */ +#define TIM_DMA_CC1 TIM_DIER_CC1DE /*!< DMA request is triggered by the capture/compare macth 1 event */ +#define TIM_DMA_CC2 TIM_DIER_CC2DE /*!< DMA request is triggered by the capture/compare macth 2 event event */ +#define TIM_DMA_CC3 TIM_DIER_CC3DE /*!< DMA request is triggered by the capture/compare macth 3 event event */ +#define TIM_DMA_CC4 TIM_DIER_CC4DE /*!< DMA request is triggered by the capture/compare macth 4 event event */ +#define TIM_DMA_COM TIM_DIER_COMDE /*!< DMA request is triggered by the commutation event */ +#define TIM_DMA_TRIGGER TIM_DIER_TDE /*!< DMA request is triggered by the trigger event */ +/** + * @} + */ + +/** @defgroup TIM_Flag_definition TIM Flag Definition + * @{ + */ +#define TIM_FLAG_UPDATE TIM_SR_UIF /*!< Update interrupt flag */ +#define TIM_FLAG_CC1 TIM_SR_CC1IF /*!< Capture/Compare 1 interrupt flag */ +#define TIM_FLAG_CC2 TIM_SR_CC2IF /*!< Capture/Compare 2 interrupt flag */ +#define TIM_FLAG_CC3 TIM_SR_CC3IF /*!< Capture/Compare 3 interrupt flag */ +#define TIM_FLAG_CC4 TIM_SR_CC4IF /*!< Capture/Compare 4 interrupt flag */ +#define TIM_FLAG_COM TIM_SR_COMIF /*!< Commutation interrupt flag */ +#define TIM_FLAG_TRIGGER TIM_SR_TIF /*!< Trigger interrupt flag */ +#define TIM_FLAG_BREAK TIM_SR_BIF /*!< Break interrupt flag */ +#define TIM_FLAG_CC1OF TIM_SR_CC1OF /*!< Capture 1 overcapture flag */ +#define TIM_FLAG_CC2OF TIM_SR_CC2OF /*!< Capture 2 overcapture flag */ +#define TIM_FLAG_CC3OF TIM_SR_CC3OF /*!< Capture 3 overcapture flag */ +#define TIM_FLAG_CC4OF TIM_SR_CC4OF /*!< Capture 4 overcapture flag */ +/** + * @} + */ + +/** @defgroup TIM_Channel TIM Channel + * @{ + */ +#define TIM_CHANNEL_1 0x00000000U /*!< Capture/compare channel 1 identifier */ +#define TIM_CHANNEL_2 0x00000004U /*!< Capture/compare channel 2 identifier */ +#define TIM_CHANNEL_3 0x00000008U /*!< Capture/compare channel 3 identifier */ +#define TIM_CHANNEL_4 0x0000000CU /*!< Capture/compare channel 4 identifier */ +#define TIM_CHANNEL_ALL 0x0000003CU /*!< Global Capture/compare channel identifier */ +/** + * @} + */ + +/** @defgroup TIM_Clock_Source TIM Clock Source + * @{ + */ +#define TIM_CLOCKSOURCE_ETRMODE2 TIM_SMCR_ETPS_1 /*!< External clock source mode 2 */ +#define TIM_CLOCKSOURCE_INTERNAL TIM_SMCR_ETPS_0 /*!< Internal clock source */ +#define TIM_CLOCKSOURCE_ITR0 TIM_TS_ITR0 /*!< External clock source mode 1 (ITR0) */ +#define TIM_CLOCKSOURCE_ITR1 TIM_TS_ITR1 /*!< External clock source mode 1 (ITR1) */ +#define TIM_CLOCKSOURCE_ITR2 TIM_TS_ITR2 /*!< External clock source mode 1 (ITR2) */ +#define TIM_CLOCKSOURCE_ITR3 TIM_TS_ITR3 /*!< External clock source mode 1 (ITR3) */ +#define TIM_CLOCKSOURCE_TI1ED TIM_TS_TI1F_ED /*!< External clock source mode 1 (TTI1FP1 + edge detect.) */ +#define TIM_CLOCKSOURCE_TI1 TIM_TS_TI1FP1 /*!< External clock source mode 1 (TTI1FP1) */ +#define TIM_CLOCKSOURCE_TI2 TIM_TS_TI2FP2 /*!< External clock source mode 1 (TTI2FP2) */ +#define TIM_CLOCKSOURCE_ETRMODE1 TIM_TS_ETRF /*!< External clock source mode 1 (ETRF) */ +/** + * @} + */ + +/** @defgroup TIM_Clock_Polarity TIM Clock Polarity + * @{ + */ +#define TIM_CLOCKPOLARITY_INVERTED TIM_ETRPOLARITY_INVERTED /*!< Polarity for ETRx clock sources */ +#define TIM_CLOCKPOLARITY_NONINVERTED TIM_ETRPOLARITY_NONINVERTED /*!< Polarity for ETRx clock sources */ +#define TIM_CLOCKPOLARITY_RISING TIM_INPUTCHANNELPOLARITY_RISING /*!< Polarity for TIx clock sources */ +#define TIM_CLOCKPOLARITY_FALLING TIM_INPUTCHANNELPOLARITY_FALLING /*!< Polarity for TIx clock sources */ +#define TIM_CLOCKPOLARITY_BOTHEDGE TIM_INPUTCHANNELPOLARITY_BOTHEDGE /*!< Polarity for TIx clock sources */ +/** + * @} + */ + +/** @defgroup TIM_Clock_Prescaler TIM Clock Prescaler + * @{ + */ +#define TIM_CLOCKPRESCALER_DIV1 TIM_ETRPRESCALER_DIV1 /*!< No prescaler is used */ +#define TIM_CLOCKPRESCALER_DIV2 TIM_ETRPRESCALER_DIV2 /*!< Prescaler for External ETR Clock: Capture performed once every 2 events. */ +#define TIM_CLOCKPRESCALER_DIV4 TIM_ETRPRESCALER_DIV4 /*!< Prescaler for External ETR Clock: Capture performed once every 4 events. */ +#define TIM_CLOCKPRESCALER_DIV8 TIM_ETRPRESCALER_DIV8 /*!< Prescaler for External ETR Clock: Capture performed once every 8 events. */ +/** + * @} + */ + +/** @defgroup TIM_ClearInput_Polarity TIM Clear Input Polarity + * @{ + */ +#define TIM_CLEARINPUTPOLARITY_INVERTED TIM_ETRPOLARITY_INVERTED /*!< Polarity for ETRx pin */ +#define TIM_CLEARINPUTPOLARITY_NONINVERTED TIM_ETRPOLARITY_NONINVERTED /*!< Polarity for ETRx pin */ +/** + * @} + */ + +/** @defgroup TIM_ClearInput_Prescaler TIM Clear Input Prescaler + * @{ + */ +#define TIM_CLEARINPUTPRESCALER_DIV1 TIM_ETRPRESCALER_DIV1 /*!< No prescaler is used */ +#define TIM_CLEARINPUTPRESCALER_DIV2 TIM_ETRPRESCALER_DIV2 /*!< Prescaler for External ETR pin: Capture performed once every 2 events. */ +#define TIM_CLEARINPUTPRESCALER_DIV4 TIM_ETRPRESCALER_DIV4 /*!< Prescaler for External ETR pin: Capture performed once every 4 events. */ +#define TIM_CLEARINPUTPRESCALER_DIV8 TIM_ETRPRESCALER_DIV8 /*!< Prescaler for External ETR pin: Capture performed once every 8 events. */ +/** + * @} + */ + +/** @defgroup TIM_OSSR_Off_State_Selection_for_Run_mode_state TIM OSSR OffState Selection for Run mode state + * @{ + */ +#define TIM_OSSR_ENABLE TIM_BDTR_OSSR /*!< When inactive, OC/OCN outputs are enabled (still controlled by the timer) */ +#define TIM_OSSR_DISABLE 0x00000000U /*!< When inactive, OC/OCN outputs are disabled (not controlled any longer by the timer) */ +/** + * @} + */ + +/** @defgroup TIM_OSSI_Off_State_Selection_for_Idle_mode_state TIM OSSI OffState Selection for Idle mode state + * @{ + */ +#define TIM_OSSI_ENABLE TIM_BDTR_OSSI /*!< When inactive, OC/OCN outputs are enabled (still controlled by the timer) */ +#define TIM_OSSI_DISABLE 0x00000000U /*!< When inactive, OC/OCN outputs are disabled (not controlled any longer by the timer) */ +/** + * @} + */ +/** @defgroup TIM_Lock_level TIM Lock level + * @{ + */ +#define TIM_LOCKLEVEL_OFF 0x00000000U /*!< LOCK OFF */ +#define TIM_LOCKLEVEL_1 TIM_BDTR_LOCK_0 /*!< LOCK Level 1 */ +#define TIM_LOCKLEVEL_2 TIM_BDTR_LOCK_1 /*!< LOCK Level 2 */ +#define TIM_LOCKLEVEL_3 TIM_BDTR_LOCK /*!< LOCK Level 3 */ +/** + * @} + */ + +/** @defgroup TIM_Break_Input_enable_disable TIM Break Input Enable + * @{ + */ +#define TIM_BREAK_ENABLE TIM_BDTR_BKE /*!< Break input BRK is enabled */ +#define TIM_BREAK_DISABLE 0x00000000U /*!< Break input BRK is disabled */ +/** + * @} + */ + +/** @defgroup TIM_Break_Polarity TIM Break Input Polarity + * @{ + */ +#define TIM_BREAKPOLARITY_LOW 0x00000000U /*!< Break input BRK is active low */ +#define TIM_BREAKPOLARITY_HIGH TIM_BDTR_BKP /*!< Break input BRK is active high */ +/** + * @} + */ + +/** @defgroup TIM_AOE_Bit_Set_Reset TIM Automatic Output Enable + * @{ + */ +#define TIM_AUTOMATICOUTPUT_DISABLE 0x00000000U /*!< MOE can be set only by software */ +#define TIM_AUTOMATICOUTPUT_ENABLE TIM_BDTR_AOE /*!< MOE can be set by software or automatically at the next update event (if none of the break inputs BRK and BRK2 is active) */ +/** + * @} + */ + +/** @defgroup TIM_Master_Mode_Selection TIM Master Mode Selection + * @{ + */ +#define TIM_TRGO_RESET 0x00000000U /*!< TIMx_EGR.UG bit is used as trigger output (TRGO) */ +#define TIM_TRGO_ENABLE TIM_CR2_MMS_0 /*!< TIMx_CR1.CEN bit is used as trigger output (TRGO) */ +#define TIM_TRGO_UPDATE TIM_CR2_MMS_1 /*!< Update event is used as trigger output (TRGO) */ +#define TIM_TRGO_OC1 (TIM_CR2_MMS_1 | TIM_CR2_MMS_0) /*!< Capture or a compare match 1 is used as trigger output (TRGO) */ +#define TIM_TRGO_OC1REF TIM_CR2_MMS_2 /*!< OC1REF signal is used as trigger output (TRGO) */ +#define TIM_TRGO_OC2REF (TIM_CR2_MMS_2 | TIM_CR2_MMS_0) /*!< OC2REF signal is used as trigger output(TRGO) */ +#define TIM_TRGO_OC3REF (TIM_CR2_MMS_2 | TIM_CR2_MMS_1) /*!< OC3REF signal is used as trigger output(TRGO) */ +#define TIM_TRGO_OC4REF (TIM_CR2_MMS_2 | TIM_CR2_MMS_1 | TIM_CR2_MMS_0) /*!< OC4REF signal is used as trigger output(TRGO) */ +/** + * @} + */ + +/** @defgroup TIM_Master_Slave_Mode TIM Master/Slave Mode + * @{ + */ +#define TIM_MASTERSLAVEMODE_ENABLE TIM_SMCR_MSM /*!< No action */ +#define TIM_MASTERSLAVEMODE_DISABLE 0x00000000U /*!< Master/slave mode is selected */ +/** + * @} + */ + +/** @defgroup TIM_Slave_Mode TIM Slave mode + * @{ + */ +#define TIM_SLAVEMODE_DISABLE 0x00000000U /*!< Slave mode disabled */ +#define TIM_SLAVEMODE_RESET TIM_SMCR_SMS_2 /*!< Reset Mode */ +#define TIM_SLAVEMODE_GATED (TIM_SMCR_SMS_2 | TIM_SMCR_SMS_0) /*!< Gated Mode */ +#define TIM_SLAVEMODE_TRIGGER (TIM_SMCR_SMS_2 | TIM_SMCR_SMS_1) /*!< Trigger Mode */ +#define TIM_SLAVEMODE_EXTERNAL1 (TIM_SMCR_SMS_2 | TIM_SMCR_SMS_1 | TIM_SMCR_SMS_0) /*!< External Clock Mode 1 */ +/** + * @} + */ + +/** @defgroup TIM_Output_Compare_and_PWM_modes TIM Output Compare and PWM Modes + * @{ + */ +#define TIM_OCMODE_TIMING 0x00000000U /*!< Frozen */ +#define TIM_OCMODE_ACTIVE TIM_CCMR1_OC1M_0 /*!< Set channel to active level on match */ +#define TIM_OCMODE_INACTIVE TIM_CCMR1_OC1M_1 /*!< Set channel to inactive level on match */ +#define TIM_OCMODE_TOGGLE (TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_0) /*!< Toggle */ +#define TIM_OCMODE_PWM1 (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1) /*!< PWM mode 1 */ +#define TIM_OCMODE_PWM2 (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_0) /*!< PWM mode 2 */ +#define TIM_OCMODE_FORCED_ACTIVE (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_0) /*!< Force active level */ +#define TIM_OCMODE_FORCED_INACTIVE TIM_CCMR1_OC1M_2 /*!< Force inactive level */ +/** + * @} + */ + +/** @defgroup TIM_Trigger_Selection TIM Trigger Selection + * @{ + */ +#define TIM_TS_ITR0 0x00000000U /*!< Internal Trigger 0 (ITR0) */ +#define TIM_TS_ITR1 TIM_SMCR_TS_0 /*!< Internal Trigger 1 (ITR1) */ +#define TIM_TS_ITR2 TIM_SMCR_TS_1 /*!< Internal Trigger 2 (ITR2) */ +#define TIM_TS_ITR3 (TIM_SMCR_TS_0 | TIM_SMCR_TS_1) /*!< Internal Trigger 3 (ITR3) */ +#define TIM_TS_TI1F_ED TIM_SMCR_TS_2 /*!< TI1 Edge Detector (TI1F_ED) */ +#define TIM_TS_TI1FP1 (TIM_SMCR_TS_0 | TIM_SMCR_TS_2) /*!< Filtered Timer Input 1 (TI1FP1) */ +#define TIM_TS_TI2FP2 (TIM_SMCR_TS_1 | TIM_SMCR_TS_2) /*!< Filtered Timer Input 2 (TI2FP2) */ +#define TIM_TS_ETRF (TIM_SMCR_TS_0 | TIM_SMCR_TS_1 | TIM_SMCR_TS_2) /*!< Filtered External Trigger input (ETRF) */ +#define TIM_TS_NONE 0x0000FFFFU /*!< No trigger selected */ +/** + * @} + */ + +/** @defgroup TIM_Trigger_Polarity TIM Trigger Polarity + * @{ + */ +#define TIM_TRIGGERPOLARITY_INVERTED TIM_ETRPOLARITY_INVERTED /*!< Polarity for ETRx trigger sources */ +#define TIM_TRIGGERPOLARITY_NONINVERTED TIM_ETRPOLARITY_NONINVERTED /*!< Polarity for ETRx trigger sources */ +#define TIM_TRIGGERPOLARITY_RISING TIM_INPUTCHANNELPOLARITY_RISING /*!< Polarity for TIxFPx or TI1_ED trigger sources */ +#define TIM_TRIGGERPOLARITY_FALLING TIM_INPUTCHANNELPOLARITY_FALLING /*!< Polarity for TIxFPx or TI1_ED trigger sources */ +#define TIM_TRIGGERPOLARITY_BOTHEDGE TIM_INPUTCHANNELPOLARITY_BOTHEDGE /*!< Polarity for TIxFPx or TI1_ED trigger sources */ +/** + * @} + */ + +/** @defgroup TIM_Trigger_Prescaler TIM Trigger Prescaler + * @{ + */ +#define TIM_TRIGGERPRESCALER_DIV1 TIM_ETRPRESCALER_DIV1 /*!< No prescaler is used */ +#define TIM_TRIGGERPRESCALER_DIV2 TIM_ETRPRESCALER_DIV2 /*!< Prescaler for External ETR Trigger: Capture performed once every 2 events. */ +#define TIM_TRIGGERPRESCALER_DIV4 TIM_ETRPRESCALER_DIV4 /*!< Prescaler for External ETR Trigger: Capture performed once every 4 events. */ +#define TIM_TRIGGERPRESCALER_DIV8 TIM_ETRPRESCALER_DIV8 /*!< Prescaler for External ETR Trigger: Capture performed once every 8 events. */ +/** + * @} + */ + +/** @defgroup TIM_TI1_Selection TIM TI1 Input Selection + * @{ + */ +#define TIM_TI1SELECTION_CH1 0x00000000U /*!< The TIMx_CH1 pin is connected to TI1 input */ +#define TIM_TI1SELECTION_XORCOMBINATION TIM_CR2_TI1S /*!< The TIMx_CH1, CH2 and CH3 pins are connected to the TI1 input (XOR combination) */ +/** + * @} + */ + +/** @defgroup TIM_DMA_Burst_Length TIM DMA Burst Length + * @{ + */ +#define TIM_DMABURSTLENGTH_1TRANSFER 0x00000000U /*!< The transfer is done to 1 register starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_2TRANSFERS 0x00000100U /*!< The transfer is done to 2 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_3TRANSFERS 0x00000200U /*!< The transfer is done to 3 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_4TRANSFERS 0x00000300U /*!< The transfer is done to 4 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_5TRANSFERS 0x00000400U /*!< The transfer is done to 5 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_6TRANSFERS 0x00000500U /*!< The transfer is done to 6 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_7TRANSFERS 0x00000600U /*!< The transfer is done to 7 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_8TRANSFERS 0x00000700U /*!< The transfer is done to 8 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_9TRANSFERS 0x00000800U /*!< The transfer is done to 9 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_10TRANSFERS 0x00000900U /*!< The transfer is done to 10 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_11TRANSFERS 0x00000A00U /*!< The transfer is done to 11 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_12TRANSFERS 0x00000B00U /*!< The transfer is done to 12 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_13TRANSFERS 0x00000C00U /*!< The transfer is done to 13 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_14TRANSFERS 0x00000D00U /*!< The transfer is done to 14 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_15TRANSFERS 0x00000E00U /*!< The transfer is done to 15 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_16TRANSFERS 0x00000F00U /*!< The transfer is done to 16 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_17TRANSFERS 0x00001000U /*!< The transfer is done to 17 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +#define TIM_DMABURSTLENGTH_18TRANSFERS 0x00001100U /*!< The transfer is done to 18 registers starting from TIMx_CR1 + TIMx_DCR.DBA */ +/** + * @} + */ + +/** @defgroup DMA_Handle_index TIM DMA Handle Index + * @{ + */ +#define TIM_DMA_ID_UPDATE ((uint16_t) 0x0000) /*!< Index of the DMA handle used for Update DMA requests */ +#define TIM_DMA_ID_CC1 ((uint16_t) 0x0001) /*!< Index of the DMA handle used for Capture/Compare 1 DMA requests */ +#define TIM_DMA_ID_CC2 ((uint16_t) 0x0002) /*!< Index of the DMA handle used for Capture/Compare 2 DMA requests */ +#define TIM_DMA_ID_CC3 ((uint16_t) 0x0003) /*!< Index of the DMA handle used for Capture/Compare 3 DMA requests */ +#define TIM_DMA_ID_CC4 ((uint16_t) 0x0004) /*!< Index of the DMA handle used for Capture/Compare 4 DMA requests */ +#define TIM_DMA_ID_COMMUTATION ((uint16_t) 0x0005) /*!< Index of the DMA handle used for Commutation DMA requests */ +#define TIM_DMA_ID_TRIGGER ((uint16_t) 0x0006) /*!< Index of the DMA handle used for Trigger DMA requests */ +/** + * @} + */ + +/** @defgroup Channel_CC_State TIM Capture/Compare Channel State + * @{ + */ +#define TIM_CCx_ENABLE 0x00000001U /*!< Input or output channel is enabled */ +#define TIM_CCx_DISABLE 0x00000000U /*!< Input or output channel is disabled */ +#define TIM_CCxN_ENABLE 0x00000004U /*!< Complementary output channel is enabled */ +#define TIM_CCxN_DISABLE 0x00000000U /*!< Complementary output channel is enabled */ +/** + * @} + */ + +/** + * @} + */ +/* End of exported constants -------------------------------------------------*/ + +/* Exported macros -----------------------------------------------------------*/ +/** @defgroup TIM_Exported_Macros TIM Exported Macros + * @{ + */ + +/** @brief Reset TIM handle state. + * @param __HANDLE__ TIM handle. + * @retval None + */ +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) +#define __HAL_TIM_RESET_HANDLE_STATE(__HANDLE__) do { \ + (__HANDLE__)->State = HAL_TIM_STATE_RESET; \ + (__HANDLE__)->ChannelState[0] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelState[1] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelState[2] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelState[3] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelNState[0] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelNState[1] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelNState[2] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelNState[3] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->DMABurstState = HAL_DMA_BURST_STATE_RESET; \ + (__HANDLE__)->Base_MspInitCallback = NULL; \ + (__HANDLE__)->Base_MspDeInitCallback = NULL; \ + (__HANDLE__)->IC_MspInitCallback = NULL; \ + (__HANDLE__)->IC_MspDeInitCallback = NULL; \ + (__HANDLE__)->OC_MspInitCallback = NULL; \ + (__HANDLE__)->OC_MspDeInitCallback = NULL; \ + (__HANDLE__)->PWM_MspInitCallback = NULL; \ + (__HANDLE__)->PWM_MspDeInitCallback = NULL; \ + (__HANDLE__)->OnePulse_MspInitCallback = NULL; \ + (__HANDLE__)->OnePulse_MspDeInitCallback = NULL; \ + (__HANDLE__)->Encoder_MspInitCallback = NULL; \ + (__HANDLE__)->Encoder_MspDeInitCallback = NULL; \ + (__HANDLE__)->HallSensor_MspInitCallback = NULL; \ + (__HANDLE__)->HallSensor_MspDeInitCallback = NULL; \ + } while(0) +#else +#define __HAL_TIM_RESET_HANDLE_STATE(__HANDLE__) do { \ + (__HANDLE__)->State = HAL_TIM_STATE_RESET; \ + (__HANDLE__)->ChannelState[0] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelState[1] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelState[2] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelState[3] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelNState[0] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelNState[1] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelNState[2] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->ChannelNState[3] = HAL_TIM_CHANNEL_STATE_RESET; \ + (__HANDLE__)->DMABurstState = HAL_DMA_BURST_STATE_RESET; \ + } while(0) +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + +/** + * @brief Enable the TIM peripheral. + * @param __HANDLE__ TIM handle + * @retval None + */ +#define __HAL_TIM_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1|=(TIM_CR1_CEN)) + +/** + * @brief Enable the TIM main Output. + * @param __HANDLE__ TIM handle + * @retval None + */ +#define __HAL_TIM_MOE_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->BDTR|=(TIM_BDTR_MOE)) + +/** + * @brief Disable the TIM peripheral. + * @param __HANDLE__ TIM handle + * @retval None + */ +#define __HAL_TIM_DISABLE(__HANDLE__) \ + do { \ + if (((__HANDLE__)->Instance->CCER & TIM_CCER_CCxE_MASK) == 0UL) \ + { \ + if(((__HANDLE__)->Instance->CCER & TIM_CCER_CCxNE_MASK) == 0UL) \ + { \ + (__HANDLE__)->Instance->CR1 &= ~(TIM_CR1_CEN); \ + } \ + } \ + } while(0) + +/** + * @brief Disable the TIM main Output. + * @param __HANDLE__ TIM handle + * @retval None + * @note The Main Output Enable of a timer instance is disabled only if all the CCx and CCxN channels have been + * disabled + */ +#define __HAL_TIM_MOE_DISABLE(__HANDLE__) \ + do { \ + if (((__HANDLE__)->Instance->CCER & TIM_CCER_CCxE_MASK) == 0UL) \ + { \ + if(((__HANDLE__)->Instance->CCER & TIM_CCER_CCxNE_MASK) == 0UL) \ + { \ + (__HANDLE__)->Instance->BDTR &= ~(TIM_BDTR_MOE); \ + } \ + } \ + } while(0) + +/** + * @brief Disable the TIM main Output. + * @param __HANDLE__ TIM handle + * @retval None + * @note The Main Output Enable of a timer instance is disabled unconditionally + */ +#define __HAL_TIM_MOE_DISABLE_UNCONDITIONALLY(__HANDLE__) (__HANDLE__)->Instance->BDTR &= ~(TIM_BDTR_MOE) + +/** @brief Enable the specified TIM interrupt. + * @param __HANDLE__ specifies the TIM Handle. + * @param __INTERRUPT__ specifies the TIM interrupt source to enable. + * This parameter can be one of the following values: + * @arg TIM_IT_UPDATE: Update interrupt + * @arg TIM_IT_CC1: Capture/Compare 1 interrupt + * @arg TIM_IT_CC2: Capture/Compare 2 interrupt + * @arg TIM_IT_CC3: Capture/Compare 3 interrupt + * @arg TIM_IT_CC4: Capture/Compare 4 interrupt + * @arg TIM_IT_COM: Commutation interrupt + * @arg TIM_IT_TRIGGER: Trigger interrupt + * @arg TIM_IT_BREAK: Break interrupt + * @retval None + */ +#define __HAL_TIM_ENABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->DIER |= (__INTERRUPT__)) + +/** @brief Disable the specified TIM interrupt. + * @param __HANDLE__ specifies the TIM Handle. + * @param __INTERRUPT__ specifies the TIM interrupt source to disable. + * This parameter can be one of the following values: + * @arg TIM_IT_UPDATE: Update interrupt + * @arg TIM_IT_CC1: Capture/Compare 1 interrupt + * @arg TIM_IT_CC2: Capture/Compare 2 interrupt + * @arg TIM_IT_CC3: Capture/Compare 3 interrupt + * @arg TIM_IT_CC4: Capture/Compare 4 interrupt + * @arg TIM_IT_COM: Commutation interrupt + * @arg TIM_IT_TRIGGER: Trigger interrupt + * @arg TIM_IT_BREAK: Break interrupt + * @retval None + */ +#define __HAL_TIM_DISABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->DIER &= ~(__INTERRUPT__)) + +/** @brief Enable the specified DMA request. + * @param __HANDLE__ specifies the TIM Handle. + * @param __DMA__ specifies the TIM DMA request to enable. + * This parameter can be one of the following values: + * @arg TIM_DMA_UPDATE: Update DMA request + * @arg TIM_DMA_CC1: Capture/Compare 1 DMA request + * @arg TIM_DMA_CC2: Capture/Compare 2 DMA request + * @arg TIM_DMA_CC3: Capture/Compare 3 DMA request + * @arg TIM_DMA_CC4: Capture/Compare 4 DMA request + * @arg TIM_DMA_COM: Commutation DMA request + * @arg TIM_DMA_TRIGGER: Trigger DMA request + * @retval None + */ +#define __HAL_TIM_ENABLE_DMA(__HANDLE__, __DMA__) ((__HANDLE__)->Instance->DIER |= (__DMA__)) + +/** @brief Disable the specified DMA request. + * @param __HANDLE__ specifies the TIM Handle. + * @param __DMA__ specifies the TIM DMA request to disable. + * This parameter can be one of the following values: + * @arg TIM_DMA_UPDATE: Update DMA request + * @arg TIM_DMA_CC1: Capture/Compare 1 DMA request + * @arg TIM_DMA_CC2: Capture/Compare 2 DMA request + * @arg TIM_DMA_CC3: Capture/Compare 3 DMA request + * @arg TIM_DMA_CC4: Capture/Compare 4 DMA request + * @arg TIM_DMA_COM: Commutation DMA request + * @arg TIM_DMA_TRIGGER: Trigger DMA request + * @retval None + */ +#define __HAL_TIM_DISABLE_DMA(__HANDLE__, __DMA__) ((__HANDLE__)->Instance->DIER &= ~(__DMA__)) + +/** @brief Check whether the specified TIM interrupt flag is set or not. + * @param __HANDLE__ specifies the TIM Handle. + * @param __FLAG__ specifies the TIM interrupt flag to check. + * This parameter can be one of the following values: + * @arg TIM_FLAG_UPDATE: Update interrupt flag + * @arg TIM_FLAG_CC1: Capture/Compare 1 interrupt flag + * @arg TIM_FLAG_CC2: Capture/Compare 2 interrupt flag + * @arg TIM_FLAG_CC3: Capture/Compare 3 interrupt flag + * @arg TIM_FLAG_CC4: Capture/Compare 4 interrupt flag + * @arg TIM_FLAG_COM: Commutation interrupt flag + * @arg TIM_FLAG_TRIGGER: Trigger interrupt flag + * @arg TIM_FLAG_BREAK: Break interrupt flag + * @arg TIM_FLAG_CC1OF: Capture/Compare 1 overcapture flag + * @arg TIM_FLAG_CC2OF: Capture/Compare 2 overcapture flag + * @arg TIM_FLAG_CC3OF: Capture/Compare 3 overcapture flag + * @arg TIM_FLAG_CC4OF: Capture/Compare 4 overcapture flag + * @retval The new state of __FLAG__ (TRUE or FALSE). + */ +#define __HAL_TIM_GET_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->SR &(__FLAG__)) == (__FLAG__)) + +/** @brief Clear the specified TIM interrupt flag. + * @param __HANDLE__ specifies the TIM Handle. + * @param __FLAG__ specifies the TIM interrupt flag to clear. + * This parameter can be one of the following values: + * @arg TIM_FLAG_UPDATE: Update interrupt flag + * @arg TIM_FLAG_CC1: Capture/Compare 1 interrupt flag + * @arg TIM_FLAG_CC2: Capture/Compare 2 interrupt flag + * @arg TIM_FLAG_CC3: Capture/Compare 3 interrupt flag + * @arg TIM_FLAG_CC4: Capture/Compare 4 interrupt flag + * @arg TIM_FLAG_COM: Commutation interrupt flag + * @arg TIM_FLAG_TRIGGER: Trigger interrupt flag + * @arg TIM_FLAG_BREAK: Break interrupt flag + * @arg TIM_FLAG_CC1OF: Capture/Compare 1 overcapture flag + * @arg TIM_FLAG_CC2OF: Capture/Compare 2 overcapture flag + * @arg TIM_FLAG_CC3OF: Capture/Compare 3 overcapture flag + * @arg TIM_FLAG_CC4OF: Capture/Compare 4 overcapture flag + * @retval The new state of __FLAG__ (TRUE or FALSE). + */ +#define __HAL_TIM_CLEAR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->SR = ~(__FLAG__)) + +/** + * @brief Check whether the specified TIM interrupt source is enabled or not. + * @param __HANDLE__ TIM handle + * @param __INTERRUPT__ specifies the TIM interrupt source to check. + * This parameter can be one of the following values: + * @arg TIM_IT_UPDATE: Update interrupt + * @arg TIM_IT_CC1: Capture/Compare 1 interrupt + * @arg TIM_IT_CC2: Capture/Compare 2 interrupt + * @arg TIM_IT_CC3: Capture/Compare 3 interrupt + * @arg TIM_IT_CC4: Capture/Compare 4 interrupt + * @arg TIM_IT_COM: Commutation interrupt + * @arg TIM_IT_TRIGGER: Trigger interrupt + * @arg TIM_IT_BREAK: Break interrupt + * @retval The state of TIM_IT (SET or RESET). + */ +#define __HAL_TIM_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) ((((__HANDLE__)->Instance->DIER & (__INTERRUPT__)) \ + == (__INTERRUPT__)) ? SET : RESET) + +/** @brief Clear the TIM interrupt pending bits. + * @param __HANDLE__ TIM handle + * @param __INTERRUPT__ specifies the interrupt pending bit to clear. + * This parameter can be one of the following values: + * @arg TIM_IT_UPDATE: Update interrupt + * @arg TIM_IT_CC1: Capture/Compare 1 interrupt + * @arg TIM_IT_CC2: Capture/Compare 2 interrupt + * @arg TIM_IT_CC3: Capture/Compare 3 interrupt + * @arg TIM_IT_CC4: Capture/Compare 4 interrupt + * @arg TIM_IT_COM: Commutation interrupt + * @arg TIM_IT_TRIGGER: Trigger interrupt + * @arg TIM_IT_BREAK: Break interrupt + * @retval None + */ +#define __HAL_TIM_CLEAR_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->SR = ~(__INTERRUPT__)) + +/** + * @brief Indicates whether or not the TIM Counter is used as downcounter. + * @param __HANDLE__ TIM handle. + * @retval False (Counter used as upcounter) or True (Counter used as downcounter) + * @note This macro is particularly useful to get the counting mode when the timer operates in Center-aligned mode + * or Encoder mode. + */ +#define __HAL_TIM_IS_TIM_COUNTING_DOWN(__HANDLE__) (((__HANDLE__)->Instance->CR1 &(TIM_CR1_DIR)) == (TIM_CR1_DIR)) + +/** + * @brief Set the TIM Prescaler on runtime. + * @param __HANDLE__ TIM handle. + * @param __PRESC__ specifies the Prescaler new value. + * @retval None + */ +#define __HAL_TIM_SET_PRESCALER(__HANDLE__, __PRESC__) ((__HANDLE__)->Instance->PSC = (__PRESC__)) + +/** + * @brief Set the TIM Counter Register value on runtime. + * @param __HANDLE__ TIM handle. + * @param __COUNTER__ specifies the Counter register new value. + * @retval None + */ +#define __HAL_TIM_SET_COUNTER(__HANDLE__, __COUNTER__) ((__HANDLE__)->Instance->CNT = (__COUNTER__)) + +/** + * @brief Get the TIM Counter Register value on runtime. + * @param __HANDLE__ TIM handle. + * @retval 16-bit or 32-bit value of the timer counter register (TIMx_CNT) + */ +#define __HAL_TIM_GET_COUNTER(__HANDLE__) ((__HANDLE__)->Instance->CNT) + +/** + * @brief Set the TIM Autoreload Register value on runtime without calling another time any Init function. + * @param __HANDLE__ TIM handle. + * @param __AUTORELOAD__ specifies the Counter register new value. + * @retval None + */ +#define __HAL_TIM_SET_AUTORELOAD(__HANDLE__, __AUTORELOAD__) \ + do{ \ + (__HANDLE__)->Instance->ARR = (__AUTORELOAD__); \ + (__HANDLE__)->Init.Period = (__AUTORELOAD__); \ + } while(0) + +/** + * @brief Get the TIM Autoreload Register value on runtime. + * @param __HANDLE__ TIM handle. + * @retval 16-bit or 32-bit value of the timer auto-reload register(TIMx_ARR) + */ +#define __HAL_TIM_GET_AUTORELOAD(__HANDLE__) ((__HANDLE__)->Instance->ARR) + +/** + * @brief Set the TIM Clock Division value on runtime without calling another time any Init function. + * @param __HANDLE__ TIM handle. + * @param __CKD__ specifies the clock division value. + * This parameter can be one of the following value: + * @arg TIM_CLOCKDIVISION_DIV1: tDTS=tCK_INT + * @arg TIM_CLOCKDIVISION_DIV2: tDTS=2*tCK_INT + * @arg TIM_CLOCKDIVISION_DIV4: tDTS=4*tCK_INT + * @retval None + */ +#define __HAL_TIM_SET_CLOCKDIVISION(__HANDLE__, __CKD__) \ + do{ \ + (__HANDLE__)->Instance->CR1 &= (~TIM_CR1_CKD); \ + (__HANDLE__)->Instance->CR1 |= (__CKD__); \ + (__HANDLE__)->Init.ClockDivision = (__CKD__); \ + } while(0) + +/** + * @brief Get the TIM Clock Division value on runtime. + * @param __HANDLE__ TIM handle. + * @retval The clock division can be one of the following values: + * @arg TIM_CLOCKDIVISION_DIV1: tDTS=tCK_INT + * @arg TIM_CLOCKDIVISION_DIV2: tDTS=2*tCK_INT + * @arg TIM_CLOCKDIVISION_DIV4: tDTS=4*tCK_INT + */ +#define __HAL_TIM_GET_CLOCKDIVISION(__HANDLE__) ((__HANDLE__)->Instance->CR1 & TIM_CR1_CKD) + +/** + * @brief Set the TIM Input Capture prescaler on runtime without calling another time HAL_TIM_IC_ConfigChannel() + * function. + * @param __HANDLE__ TIM handle. + * @param __CHANNEL__ TIM Channels to be configured. + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @param __ICPSC__ specifies the Input Capture4 prescaler new value. + * This parameter can be one of the following values: + * @arg TIM_ICPSC_DIV1: no prescaler + * @arg TIM_ICPSC_DIV2: capture is done once every 2 events + * @arg TIM_ICPSC_DIV4: capture is done once every 4 events + * @arg TIM_ICPSC_DIV8: capture is done once every 8 events + * @retval None + */ +#define __HAL_TIM_SET_ICPRESCALER(__HANDLE__, __CHANNEL__, __ICPSC__) \ + do{ \ + TIM_RESET_ICPRESCALERVALUE((__HANDLE__), (__CHANNEL__)); \ + TIM_SET_ICPRESCALERVALUE((__HANDLE__), (__CHANNEL__), (__ICPSC__)); \ + } while(0) + +/** + * @brief Get the TIM Input Capture prescaler on runtime. + * @param __HANDLE__ TIM handle. + * @param __CHANNEL__ TIM Channels to be configured. + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: get input capture 1 prescaler value + * @arg TIM_CHANNEL_2: get input capture 2 prescaler value + * @arg TIM_CHANNEL_3: get input capture 3 prescaler value + * @arg TIM_CHANNEL_4: get input capture 4 prescaler value + * @retval The input capture prescaler can be one of the following values: + * @arg TIM_ICPSC_DIV1: no prescaler + * @arg TIM_ICPSC_DIV2: capture is done once every 2 events + * @arg TIM_ICPSC_DIV4: capture is done once every 4 events + * @arg TIM_ICPSC_DIV8: capture is done once every 8 events + */ +#define __HAL_TIM_GET_ICPRESCALER(__HANDLE__, __CHANNEL__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 & TIM_CCMR1_IC1PSC) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? (((__HANDLE__)->Instance->CCMR1 & TIM_CCMR1_IC2PSC) >> 8U) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 & TIM_CCMR2_IC3PSC) :\ + (((__HANDLE__)->Instance->CCMR2 & TIM_CCMR2_IC4PSC)) >> 8U) + +/** + * @brief Set the TIM Capture Compare Register value on runtime without calling another time ConfigChannel function. + * @param __HANDLE__ TIM handle. + * @param __CHANNEL__ TIM Channels to be configured. + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @param __COMPARE__ specifies the Capture Compare register new value. + * @retval None + */ +#define __HAL_TIM_SET_COMPARE(__HANDLE__, __CHANNEL__, __COMPARE__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCR1 = (__COMPARE__)) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCR2 = (__COMPARE__)) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCR3 = (__COMPARE__)) :\ + ((__HANDLE__)->Instance->CCR4 = (__COMPARE__))) + +/** + * @brief Get the TIM Capture Compare Register value on runtime. + * @param __HANDLE__ TIM handle. + * @param __CHANNEL__ TIM Channel associated with the capture compare register + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: get capture/compare 1 register value + * @arg TIM_CHANNEL_2: get capture/compare 2 register value + * @arg TIM_CHANNEL_3: get capture/compare 3 register value + * @arg TIM_CHANNEL_4: get capture/compare 4 register value + * @retval 16-bit or 32-bit value of the capture/compare register (TIMx_CCRy) + */ +#define __HAL_TIM_GET_COMPARE(__HANDLE__, __CHANNEL__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCR1) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCR2) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCR3) :\ + ((__HANDLE__)->Instance->CCR4)) + +/** + * @brief Set the TIM Output compare preload. + * @param __HANDLE__ TIM handle. + * @param __CHANNEL__ TIM Channels to be configured. + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval None + */ +#define __HAL_TIM_ENABLE_OCxPRELOAD(__HANDLE__, __CHANNEL__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 |= TIM_CCMR1_OC1PE) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 |= TIM_CCMR1_OC2PE) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 |= TIM_CCMR2_OC3PE) :\ + ((__HANDLE__)->Instance->CCMR2 |= TIM_CCMR2_OC4PE)) + +/** + * @brief Reset the TIM Output compare preload. + * @param __HANDLE__ TIM handle. + * @param __CHANNEL__ TIM Channels to be configured. + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval None + */ +#define __HAL_TIM_DISABLE_OCxPRELOAD(__HANDLE__, __CHANNEL__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_OC1PE) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_OC2PE) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_OC3PE) :\ + ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_OC4PE)) + +/** + * @brief Enable fast mode for a given channel. + * @param __HANDLE__ TIM handle. + * @param __CHANNEL__ TIM Channels to be configured. + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @note When fast mode is enabled an active edge on the trigger input acts + * like a compare match on CCx output. Delay to sample the trigger + * input and to activate CCx output is reduced to 3 clock cycles. + * @note Fast mode acts only if the channel is configured in PWM1 or PWM2 mode. + * @retval None + */ +#define __HAL_TIM_ENABLE_OCxFAST(__HANDLE__, __CHANNEL__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 |= TIM_CCMR1_OC1FE) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 |= TIM_CCMR1_OC2FE) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 |= TIM_CCMR2_OC3FE) :\ + ((__HANDLE__)->Instance->CCMR2 |= TIM_CCMR2_OC4FE)) + +/** + * @brief Disable fast mode for a given channel. + * @param __HANDLE__ TIM handle. + * @param __CHANNEL__ TIM Channels to be configured. + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @note When fast mode is disabled CCx output behaves normally depending + * on counter and CCRx values even when the trigger is ON. The minimum + * delay to activate CCx output when an active edge occurs on the + * trigger input is 5 clock cycles. + * @retval None + */ +#define __HAL_TIM_DISABLE_OCxFAST(__HANDLE__, __CHANNEL__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_OC1FE) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_OC2FE) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_OC3FE) :\ + ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_OC4FE)) + +/** + * @brief Set the Update Request Source (URS) bit of the TIMx_CR1 register. + * @param __HANDLE__ TIM handle. + * @note When the URS bit of the TIMx_CR1 register is set, only counter + * overflow/underflow generates an update interrupt or DMA request (if + * enabled) + * @retval None + */ +#define __HAL_TIM_URS_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1|= TIM_CR1_URS) + +/** + * @brief Reset the Update Request Source (URS) bit of the TIMx_CR1 register. + * @param __HANDLE__ TIM handle. + * @note When the URS bit of the TIMx_CR1 register is reset, any of the + * following events generate an update interrupt or DMA request (if + * enabled): + * _ Counter overflow underflow + * _ Setting the UG bit + * _ Update generation through the slave mode controller + * @retval None + */ +#define __HAL_TIM_URS_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1&=~TIM_CR1_URS) + +/** + * @brief Set the TIM Capture x input polarity on runtime. + * @param __HANDLE__ TIM handle. + * @param __CHANNEL__ TIM Channels to be configured. + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @param __POLARITY__ Polarity for TIx source + * @arg TIM_INPUTCHANNELPOLARITY_RISING: Rising Edge + * @arg TIM_INPUTCHANNELPOLARITY_FALLING: Falling Edge + * @arg TIM_INPUTCHANNELPOLARITY_BOTHEDGE: Rising and Falling Edge + * @retval None + */ +#define __HAL_TIM_SET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__, __POLARITY__) \ + do{ \ + TIM_RESET_CAPTUREPOLARITY((__HANDLE__), (__CHANNEL__)); \ + TIM_SET_CAPTUREPOLARITY((__HANDLE__), (__CHANNEL__), (__POLARITY__)); \ + }while(0) + +/** + * @} + */ +/* End of exported macros ----------------------------------------------------*/ + +/* Private constants ---------------------------------------------------------*/ +/** @defgroup TIM_Private_Constants TIM Private Constants + * @{ + */ +/* The counter of a timer instance is disabled only if all the CCx and CCxN + channels have been disabled */ +#define TIM_CCER_CCxE_MASK ((uint32_t)(TIM_CCER_CC1E | TIM_CCER_CC2E | TIM_CCER_CC3E | TIM_CCER_CC4E)) +#define TIM_CCER_CCxNE_MASK ((uint32_t)(TIM_CCER_CC1NE | TIM_CCER_CC2NE | TIM_CCER_CC3NE)) +/** + * @} + */ +/* End of private constants --------------------------------------------------*/ + +/* Private macros ------------------------------------------------------------*/ +/** @defgroup TIM_Private_Macros TIM Private Macros + * @{ + */ +#define IS_TIM_CLEARINPUT_SOURCE(__MODE__) (((__MODE__) == TIM_CLEARINPUTSOURCE_NONE) || \ + ((__MODE__) == TIM_CLEARINPUTSOURCE_ETR)) + +#define IS_TIM_DMA_BASE(__BASE__) (((__BASE__) == TIM_DMABASE_CR1) || \ + ((__BASE__) == TIM_DMABASE_CR2) || \ + ((__BASE__) == TIM_DMABASE_SMCR) || \ + ((__BASE__) == TIM_DMABASE_DIER) || \ + ((__BASE__) == TIM_DMABASE_SR) || \ + ((__BASE__) == TIM_DMABASE_EGR) || \ + ((__BASE__) == TIM_DMABASE_CCMR1) || \ + ((__BASE__) == TIM_DMABASE_CCMR2) || \ + ((__BASE__) == TIM_DMABASE_CCER) || \ + ((__BASE__) == TIM_DMABASE_CNT) || \ + ((__BASE__) == TIM_DMABASE_PSC) || \ + ((__BASE__) == TIM_DMABASE_ARR) || \ + ((__BASE__) == TIM_DMABASE_RCR) || \ + ((__BASE__) == TIM_DMABASE_CCR1) || \ + ((__BASE__) == TIM_DMABASE_CCR2) || \ + ((__BASE__) == TIM_DMABASE_CCR3) || \ + ((__BASE__) == TIM_DMABASE_CCR4) || \ + ((__BASE__) == TIM_DMABASE_BDTR)) + +#define IS_TIM_EVENT_SOURCE(__SOURCE__) ((((__SOURCE__) & 0xFFFFFF00U) == 0x00000000U) && ((__SOURCE__) != 0x00000000U)) + +#define IS_TIM_COUNTER_MODE(__MODE__) (((__MODE__) == TIM_COUNTERMODE_UP) || \ + ((__MODE__) == TIM_COUNTERMODE_DOWN) || \ + ((__MODE__) == TIM_COUNTERMODE_CENTERALIGNED1) || \ + ((__MODE__) == TIM_COUNTERMODE_CENTERALIGNED2) || \ + ((__MODE__) == TIM_COUNTERMODE_CENTERALIGNED3)) + +#define IS_TIM_CLOCKDIVISION_DIV(__DIV__) (((__DIV__) == TIM_CLOCKDIVISION_DIV1) || \ + ((__DIV__) == TIM_CLOCKDIVISION_DIV2) || \ + ((__DIV__) == TIM_CLOCKDIVISION_DIV4)) + +#define IS_TIM_AUTORELOAD_PRELOAD(PRELOAD) (((PRELOAD) == TIM_AUTORELOAD_PRELOAD_DISABLE) || \ + ((PRELOAD) == TIM_AUTORELOAD_PRELOAD_ENABLE)) + +#define IS_TIM_FAST_STATE(__STATE__) (((__STATE__) == TIM_OCFAST_DISABLE) || \ + ((__STATE__) == TIM_OCFAST_ENABLE)) + +#define IS_TIM_OC_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_OCPOLARITY_HIGH) || \ + ((__POLARITY__) == TIM_OCPOLARITY_LOW)) + +#define IS_TIM_OCN_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_OCNPOLARITY_HIGH) || \ + ((__POLARITY__) == TIM_OCNPOLARITY_LOW)) + +#define IS_TIM_OCIDLE_STATE(__STATE__) (((__STATE__) == TIM_OCIDLESTATE_SET) || \ + ((__STATE__) == TIM_OCIDLESTATE_RESET)) + +#define IS_TIM_OCNIDLE_STATE(__STATE__) (((__STATE__) == TIM_OCNIDLESTATE_SET) || \ + ((__STATE__) == TIM_OCNIDLESTATE_RESET)) + +#define IS_TIM_ENCODERINPUT_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_ENCODERINPUTPOLARITY_RISING) || \ + ((__POLARITY__) == TIM_ENCODERINPUTPOLARITY_FALLING)) + +#define IS_TIM_IC_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_ICPOLARITY_RISING) || \ + ((__POLARITY__) == TIM_ICPOLARITY_FALLING) || \ + ((__POLARITY__) == TIM_ICPOLARITY_BOTHEDGE)) + +#define IS_TIM_IC_SELECTION(__SELECTION__) (((__SELECTION__) == TIM_ICSELECTION_DIRECTTI) || \ + ((__SELECTION__) == TIM_ICSELECTION_INDIRECTTI) || \ + ((__SELECTION__) == TIM_ICSELECTION_TRC)) + +#define IS_TIM_IC_PRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_ICPSC_DIV1) || \ + ((__PRESCALER__) == TIM_ICPSC_DIV2) || \ + ((__PRESCALER__) == TIM_ICPSC_DIV4) || \ + ((__PRESCALER__) == TIM_ICPSC_DIV8)) + +#define IS_TIM_OPM_MODE(__MODE__) (((__MODE__) == TIM_OPMODE_SINGLE) || \ + ((__MODE__) == TIM_OPMODE_REPETITIVE)) + +#define IS_TIM_ENCODER_MODE(__MODE__) (((__MODE__) == TIM_ENCODERMODE_TI1) || \ + ((__MODE__) == TIM_ENCODERMODE_TI2) || \ + ((__MODE__) == TIM_ENCODERMODE_TI12)) + +#define IS_TIM_DMA_SOURCE(__SOURCE__) ((((__SOURCE__) & 0xFFFF80FFU) == 0x00000000U) && ((__SOURCE__) != 0x00000000U)) + +#define IS_TIM_CHANNELS(__CHANNEL__) (((__CHANNEL__) == TIM_CHANNEL_1) || \ + ((__CHANNEL__) == TIM_CHANNEL_2) || \ + ((__CHANNEL__) == TIM_CHANNEL_3) || \ + ((__CHANNEL__) == TIM_CHANNEL_4) || \ + ((__CHANNEL__) == TIM_CHANNEL_ALL)) + +#define IS_TIM_OPM_CHANNELS(__CHANNEL__) (((__CHANNEL__) == TIM_CHANNEL_1) || \ + ((__CHANNEL__) == TIM_CHANNEL_2)) + +#define IS_TIM_COMPLEMENTARY_CHANNELS(__CHANNEL__) (((__CHANNEL__) == TIM_CHANNEL_1) || \ + ((__CHANNEL__) == TIM_CHANNEL_2) || \ + ((__CHANNEL__) == TIM_CHANNEL_3)) + +#define IS_TIM_CLOCKSOURCE(__CLOCK__) (((__CLOCK__) == TIM_CLOCKSOURCE_INTERNAL) || \ + ((__CLOCK__) == TIM_CLOCKSOURCE_ETRMODE2) || \ + ((__CLOCK__) == TIM_CLOCKSOURCE_ITR0) || \ + ((__CLOCK__) == TIM_CLOCKSOURCE_ITR1) || \ + ((__CLOCK__) == TIM_CLOCKSOURCE_ITR2) || \ + ((__CLOCK__) == TIM_CLOCKSOURCE_ITR3) || \ + ((__CLOCK__) == TIM_CLOCKSOURCE_TI1ED) || \ + ((__CLOCK__) == TIM_CLOCKSOURCE_TI1) || \ + ((__CLOCK__) == TIM_CLOCKSOURCE_TI2) || \ + ((__CLOCK__) == TIM_CLOCKSOURCE_ETRMODE1)) + +#define IS_TIM_CLOCKPOLARITY(__POLARITY__) (((__POLARITY__) == TIM_CLOCKPOLARITY_INVERTED) || \ + ((__POLARITY__) == TIM_CLOCKPOLARITY_NONINVERTED) || \ + ((__POLARITY__) == TIM_CLOCKPOLARITY_RISING) || \ + ((__POLARITY__) == TIM_CLOCKPOLARITY_FALLING) || \ + ((__POLARITY__) == TIM_CLOCKPOLARITY_BOTHEDGE)) + +#define IS_TIM_CLOCKPRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV1) || \ + ((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV2) || \ + ((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV4) || \ + ((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV8)) + +#define IS_TIM_CLOCKFILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) + +#define IS_TIM_CLEARINPUT_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_CLEARINPUTPOLARITY_INVERTED) || \ + ((__POLARITY__) == TIM_CLEARINPUTPOLARITY_NONINVERTED)) + +#define IS_TIM_CLEARINPUT_PRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV1) || \ + ((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV2) || \ + ((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV4) || \ + ((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV8)) + +#define IS_TIM_CLEARINPUT_FILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) + +#define IS_TIM_OSSR_STATE(__STATE__) (((__STATE__) == TIM_OSSR_ENABLE) || \ + ((__STATE__) == TIM_OSSR_DISABLE)) + +#define IS_TIM_OSSI_STATE(__STATE__) (((__STATE__) == TIM_OSSI_ENABLE) || \ + ((__STATE__) == TIM_OSSI_DISABLE)) + +#define IS_TIM_LOCK_LEVEL(__LEVEL__) (((__LEVEL__) == TIM_LOCKLEVEL_OFF) || \ + ((__LEVEL__) == TIM_LOCKLEVEL_1) || \ + ((__LEVEL__) == TIM_LOCKLEVEL_2) || \ + ((__LEVEL__) == TIM_LOCKLEVEL_3)) + +#define IS_TIM_BREAK_FILTER(__BRKFILTER__) ((__BRKFILTER__) <= 0xFUL) + + +#define IS_TIM_BREAK_STATE(__STATE__) (((__STATE__) == TIM_BREAK_ENABLE) || \ + ((__STATE__) == TIM_BREAK_DISABLE)) + +#define IS_TIM_BREAK_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_BREAKPOLARITY_LOW) || \ + ((__POLARITY__) == TIM_BREAKPOLARITY_HIGH)) + +#define IS_TIM_AUTOMATIC_OUTPUT_STATE(__STATE__) (((__STATE__) == TIM_AUTOMATICOUTPUT_ENABLE) || \ + ((__STATE__) == TIM_AUTOMATICOUTPUT_DISABLE)) + +#define IS_TIM_TRGO_SOURCE(__SOURCE__) (((__SOURCE__) == TIM_TRGO_RESET) || \ + ((__SOURCE__) == TIM_TRGO_ENABLE) || \ + ((__SOURCE__) == TIM_TRGO_UPDATE) || \ + ((__SOURCE__) == TIM_TRGO_OC1) || \ + ((__SOURCE__) == TIM_TRGO_OC1REF) || \ + ((__SOURCE__) == TIM_TRGO_OC2REF) || \ + ((__SOURCE__) == TIM_TRGO_OC3REF) || \ + ((__SOURCE__) == TIM_TRGO_OC4REF)) + +#define IS_TIM_MSM_STATE(__STATE__) (((__STATE__) == TIM_MASTERSLAVEMODE_ENABLE) || \ + ((__STATE__) == TIM_MASTERSLAVEMODE_DISABLE)) + +#define IS_TIM_SLAVE_MODE(__MODE__) (((__MODE__) == TIM_SLAVEMODE_DISABLE) || \ + ((__MODE__) == TIM_SLAVEMODE_RESET) || \ + ((__MODE__) == TIM_SLAVEMODE_GATED) || \ + ((__MODE__) == TIM_SLAVEMODE_TRIGGER) || \ + ((__MODE__) == TIM_SLAVEMODE_EXTERNAL1)) + +#define IS_TIM_PWM_MODE(__MODE__) (((__MODE__) == TIM_OCMODE_PWM1) || \ + ((__MODE__) == TIM_OCMODE_PWM2)) + +#define IS_TIM_OC_MODE(__MODE__) (((__MODE__) == TIM_OCMODE_TIMING) || \ + ((__MODE__) == TIM_OCMODE_ACTIVE) || \ + ((__MODE__) == TIM_OCMODE_INACTIVE) || \ + ((__MODE__) == TIM_OCMODE_TOGGLE) || \ + ((__MODE__) == TIM_OCMODE_FORCED_ACTIVE) || \ + ((__MODE__) == TIM_OCMODE_FORCED_INACTIVE)) + +#define IS_TIM_TRIGGER_SELECTION(__SELECTION__) (((__SELECTION__) == TIM_TS_ITR0) || \ + ((__SELECTION__) == TIM_TS_ITR1) || \ + ((__SELECTION__) == TIM_TS_ITR2) || \ + ((__SELECTION__) == TIM_TS_ITR3) || \ + ((__SELECTION__) == TIM_TS_TI1F_ED) || \ + ((__SELECTION__) == TIM_TS_TI1FP1) || \ + ((__SELECTION__) == TIM_TS_TI2FP2) || \ + ((__SELECTION__) == TIM_TS_ETRF)) + +#define IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(__SELECTION__) (((__SELECTION__) == TIM_TS_ITR0) || \ + ((__SELECTION__) == TIM_TS_ITR1) || \ + ((__SELECTION__) == TIM_TS_ITR2) || \ + ((__SELECTION__) == TIM_TS_ITR3) || \ + ((__SELECTION__) == TIM_TS_NONE)) + +#define IS_TIM_TRIGGERPOLARITY(__POLARITY__) (((__POLARITY__) == TIM_TRIGGERPOLARITY_INVERTED ) || \ + ((__POLARITY__) == TIM_TRIGGERPOLARITY_NONINVERTED) || \ + ((__POLARITY__) == TIM_TRIGGERPOLARITY_RISING ) || \ + ((__POLARITY__) == TIM_TRIGGERPOLARITY_FALLING ) || \ + ((__POLARITY__) == TIM_TRIGGERPOLARITY_BOTHEDGE )) + +#define IS_TIM_TRIGGERPRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV1) || \ + ((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV2) || \ + ((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV4) || \ + ((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV8)) + +#define IS_TIM_TRIGGERFILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) + +#define IS_TIM_TI1SELECTION(__TI1SELECTION__) (((__TI1SELECTION__) == TIM_TI1SELECTION_CH1) || \ + ((__TI1SELECTION__) == TIM_TI1SELECTION_XORCOMBINATION)) + +#define IS_TIM_DMA_LENGTH(__LENGTH__) (((__LENGTH__) == TIM_DMABURSTLENGTH_1TRANSFER) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_2TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_3TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_4TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_5TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_6TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_7TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_8TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_9TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_10TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_11TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_12TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_13TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_14TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_15TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_16TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_17TRANSFERS) || \ + ((__LENGTH__) == TIM_DMABURSTLENGTH_18TRANSFERS)) + +#define IS_TIM_DMA_DATA_LENGTH(LENGTH) (((LENGTH) >= 0x1U) && ((LENGTH) < 0x10000U)) + +#define IS_TIM_IC_FILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) + +#define IS_TIM_DEADTIME(__DEADTIME__) ((__DEADTIME__) <= 0xFFU) + +#define IS_TIM_SLAVEMODE_TRIGGER_ENABLED(__TRIGGER__) ((__TRIGGER__) == TIM_SLAVEMODE_TRIGGER) + +#define TIM_SET_ICPRESCALERVALUE(__HANDLE__, __CHANNEL__, __ICPSC__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 |= (__ICPSC__)) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 |= ((__ICPSC__) << 8U)) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 |= (__ICPSC__)) :\ + ((__HANDLE__)->Instance->CCMR2 |= ((__ICPSC__) << 8U))) + +#define TIM_RESET_ICPRESCALERVALUE(__HANDLE__, __CHANNEL__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_IC1PSC) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 &= ~TIM_CCMR1_IC2PSC) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_IC3PSC) :\ + ((__HANDLE__)->Instance->CCMR2 &= ~TIM_CCMR2_IC4PSC)) + +#define TIM_SET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__, __POLARITY__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCER |= (__POLARITY__)) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCER |= ((__POLARITY__) << 4U)) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCER |= ((__POLARITY__) << 8U)) :\ + ((__HANDLE__)->Instance->CCER |= (((__POLARITY__) << 12U)))) + +#define TIM_RESET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCER &= ~(TIM_CCER_CC1P | TIM_CCER_CC1NP)) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCER &= ~(TIM_CCER_CC2P | TIM_CCER_CC2NP)) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCER &= ~(TIM_CCER_CC3P)) :\ + ((__HANDLE__)->Instance->CCER &= ~(TIM_CCER_CC4P))) + +#define TIM_CHANNEL_STATE_GET(__HANDLE__, __CHANNEL__)\ + (((__CHANNEL__) == TIM_CHANNEL_1) ? (__HANDLE__)->ChannelState[0] :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? (__HANDLE__)->ChannelState[1] :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? (__HANDLE__)->ChannelState[2] :\ + (__HANDLE__)->ChannelState[3]) + +#define TIM_CHANNEL_STATE_SET(__HANDLE__, __CHANNEL__, __CHANNEL_STATE__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->ChannelState[0] = (__CHANNEL_STATE__)) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->ChannelState[1] = (__CHANNEL_STATE__)) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->ChannelState[2] = (__CHANNEL_STATE__)) :\ + ((__HANDLE__)->ChannelState[3] = (__CHANNEL_STATE__))) + +#define TIM_CHANNEL_STATE_SET_ALL(__HANDLE__, __CHANNEL_STATE__) do { \ + (__HANDLE__)->ChannelState[0] = (__CHANNEL_STATE__); \ + (__HANDLE__)->ChannelState[1] = (__CHANNEL_STATE__); \ + (__HANDLE__)->ChannelState[2] = (__CHANNEL_STATE__); \ + (__HANDLE__)->ChannelState[3] = (__CHANNEL_STATE__); \ + } while(0) + +#define TIM_CHANNEL_N_STATE_GET(__HANDLE__, __CHANNEL__)\ + (((__CHANNEL__) == TIM_CHANNEL_1) ? (__HANDLE__)->ChannelNState[0] :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? (__HANDLE__)->ChannelNState[1] :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? (__HANDLE__)->ChannelNState[2] :\ + (__HANDLE__)->ChannelNState[3]) + +#define TIM_CHANNEL_N_STATE_SET(__HANDLE__, __CHANNEL__, __CHANNEL_STATE__) \ + (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->ChannelNState[0] = (__CHANNEL_STATE__)) :\ + ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->ChannelNState[1] = (__CHANNEL_STATE__)) :\ + ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->ChannelNState[2] = (__CHANNEL_STATE__)) :\ + ((__HANDLE__)->ChannelNState[3] = (__CHANNEL_STATE__))) + +#define TIM_CHANNEL_N_STATE_SET_ALL(__HANDLE__, __CHANNEL_STATE__) do { \ + (__HANDLE__)->ChannelNState[0] = \ + (__CHANNEL_STATE__); \ + (__HANDLE__)->ChannelNState[1] = \ + (__CHANNEL_STATE__); \ + (__HANDLE__)->ChannelNState[2] = \ + (__CHANNEL_STATE__); \ + (__HANDLE__)->ChannelNState[3] = \ + (__CHANNEL_STATE__); \ + } while(0) + +/** + * @} + */ +/* End of private macros -----------------------------------------------------*/ + +/* Include TIM HAL Extended module */ +#include "stm32f1xx_hal_tim_ex.h" + +/* Exported functions --------------------------------------------------------*/ +/** @addtogroup TIM_Exported_Functions TIM Exported Functions + * @{ + */ + +/** @addtogroup TIM_Exported_Functions_Group1 TIM Time Base functions + * @brief Time Base functions + * @{ + */ +/* Time Base functions ********************************************************/ +HAL_StatusTypeDef HAL_TIM_Base_Init(TIM_HandleTypeDef *htim); +HAL_StatusTypeDef HAL_TIM_Base_DeInit(TIM_HandleTypeDef *htim); +void HAL_TIM_Base_MspInit(TIM_HandleTypeDef *htim); +void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef *htim); +/* Blocking mode: Polling */ +HAL_StatusTypeDef HAL_TIM_Base_Start(TIM_HandleTypeDef *htim); +HAL_StatusTypeDef HAL_TIM_Base_Stop(TIM_HandleTypeDef *htim); +/* Non-Blocking mode: Interrupt */ +HAL_StatusTypeDef HAL_TIM_Base_Start_IT(TIM_HandleTypeDef *htim); +HAL_StatusTypeDef HAL_TIM_Base_Stop_IT(TIM_HandleTypeDef *htim); +/* Non-Blocking mode: DMA */ +HAL_StatusTypeDef HAL_TIM_Base_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length); +HAL_StatusTypeDef HAL_TIM_Base_Stop_DMA(TIM_HandleTypeDef *htim); +/** + * @} + */ + +/** @addtogroup TIM_Exported_Functions_Group2 TIM Output Compare functions + * @brief TIM Output Compare functions + * @{ + */ +/* Timer Output Compare functions *********************************************/ +HAL_StatusTypeDef HAL_TIM_OC_Init(TIM_HandleTypeDef *htim); +HAL_StatusTypeDef HAL_TIM_OC_DeInit(TIM_HandleTypeDef *htim); +void HAL_TIM_OC_MspInit(TIM_HandleTypeDef *htim); +void HAL_TIM_OC_MspDeInit(TIM_HandleTypeDef *htim); +/* Blocking mode: Polling */ +HAL_StatusTypeDef HAL_TIM_OC_Start(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_OC_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); +/* Non-Blocking mode: Interrupt */ +HAL_StatusTypeDef HAL_TIM_OC_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_OC_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); +/* Non-Blocking mode: DMA */ +HAL_StatusTypeDef HAL_TIM_OC_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length); +HAL_StatusTypeDef HAL_TIM_OC_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); +/** + * @} + */ + +/** @addtogroup TIM_Exported_Functions_Group3 TIM PWM functions + * @brief TIM PWM functions + * @{ + */ +/* Timer PWM functions ********************************************************/ +HAL_StatusTypeDef HAL_TIM_PWM_Init(TIM_HandleTypeDef *htim); +HAL_StatusTypeDef HAL_TIM_PWM_DeInit(TIM_HandleTypeDef *htim); +void HAL_TIM_PWM_MspInit(TIM_HandleTypeDef *htim); +void HAL_TIM_PWM_MspDeInit(TIM_HandleTypeDef *htim); +/* Blocking mode: Polling */ +HAL_StatusTypeDef HAL_TIM_PWM_Start(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_PWM_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); +/* Non-Blocking mode: Interrupt */ +HAL_StatusTypeDef HAL_TIM_PWM_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_PWM_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); +/* Non-Blocking mode: DMA */ +HAL_StatusTypeDef HAL_TIM_PWM_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length); +HAL_StatusTypeDef HAL_TIM_PWM_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); +/** + * @} + */ + +/** @addtogroup TIM_Exported_Functions_Group4 TIM Input Capture functions + * @brief TIM Input Capture functions + * @{ + */ +/* Timer Input Capture functions **********************************************/ +HAL_StatusTypeDef HAL_TIM_IC_Init(TIM_HandleTypeDef *htim); +HAL_StatusTypeDef HAL_TIM_IC_DeInit(TIM_HandleTypeDef *htim); +void HAL_TIM_IC_MspInit(TIM_HandleTypeDef *htim); +void HAL_TIM_IC_MspDeInit(TIM_HandleTypeDef *htim); +/* Blocking mode: Polling */ +HAL_StatusTypeDef HAL_TIM_IC_Start(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_IC_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); +/* Non-Blocking mode: Interrupt */ +HAL_StatusTypeDef HAL_TIM_IC_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_IC_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); +/* Non-Blocking mode: DMA */ +HAL_StatusTypeDef HAL_TIM_IC_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length); +HAL_StatusTypeDef HAL_TIM_IC_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); +/** + * @} + */ + +/** @addtogroup TIM_Exported_Functions_Group5 TIM One Pulse functions + * @brief TIM One Pulse functions + * @{ + */ +/* Timer One Pulse functions **************************************************/ +HAL_StatusTypeDef HAL_TIM_OnePulse_Init(TIM_HandleTypeDef *htim, uint32_t OnePulseMode); +HAL_StatusTypeDef HAL_TIM_OnePulse_DeInit(TIM_HandleTypeDef *htim); +void HAL_TIM_OnePulse_MspInit(TIM_HandleTypeDef *htim); +void HAL_TIM_OnePulse_MspDeInit(TIM_HandleTypeDef *htim); +/* Blocking mode: Polling */ +HAL_StatusTypeDef HAL_TIM_OnePulse_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel); +HAL_StatusTypeDef HAL_TIM_OnePulse_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel); +/* Non-Blocking mode: Interrupt */ +HAL_StatusTypeDef HAL_TIM_OnePulse_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel); +HAL_StatusTypeDef HAL_TIM_OnePulse_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel); +/** + * @} + */ + +/** @addtogroup TIM_Exported_Functions_Group6 TIM Encoder functions + * @brief TIM Encoder functions + * @{ + */ +/* Timer Encoder functions ****************************************************/ +HAL_StatusTypeDef HAL_TIM_Encoder_Init(TIM_HandleTypeDef *htim, TIM_Encoder_InitTypeDef *sConfig); +HAL_StatusTypeDef HAL_TIM_Encoder_DeInit(TIM_HandleTypeDef *htim); +void HAL_TIM_Encoder_MspInit(TIM_HandleTypeDef *htim); +void HAL_TIM_Encoder_MspDeInit(TIM_HandleTypeDef *htim); +/* Blocking mode: Polling */ +HAL_StatusTypeDef HAL_TIM_Encoder_Start(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_Encoder_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); +/* Non-Blocking mode: Interrupt */ +HAL_StatusTypeDef HAL_TIM_Encoder_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_Encoder_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); +/* Non-Blocking mode: DMA */ +HAL_StatusTypeDef HAL_TIM_Encoder_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData1, + uint32_t *pData2, uint16_t Length); +HAL_StatusTypeDef HAL_TIM_Encoder_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); +/** + * @} + */ + +/** @addtogroup TIM_Exported_Functions_Group7 TIM IRQ handler management + * @brief IRQ handler management + * @{ + */ +/* Interrupt Handler functions ***********************************************/ +void HAL_TIM_IRQHandler(TIM_HandleTypeDef *htim); +/** + * @} + */ + +/** @defgroup TIM_Exported_Functions_Group8 TIM Peripheral Control functions + * @brief Peripheral Control functions + * @{ + */ +/* Control functions *********************************************************/ +HAL_StatusTypeDef HAL_TIM_OC_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OC_InitTypeDef *sConfig, uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_PWM_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OC_InitTypeDef *sConfig, uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_IC_ConfigChannel(TIM_HandleTypeDef *htim, TIM_IC_InitTypeDef *sConfig, uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_OnePulse_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OnePulse_InitTypeDef *sConfig, + uint32_t OutputChannel, uint32_t InputChannel); +HAL_StatusTypeDef HAL_TIM_ConfigOCrefClear(TIM_HandleTypeDef *htim, TIM_ClearInputConfigTypeDef *sClearInputConfig, + uint32_t Channel); +HAL_StatusTypeDef HAL_TIM_ConfigClockSource(TIM_HandleTypeDef *htim, TIM_ClockConfigTypeDef *sClockSourceConfig); +HAL_StatusTypeDef HAL_TIM_ConfigTI1Input(TIM_HandleTypeDef *htim, uint32_t TI1_Selection); +HAL_StatusTypeDef HAL_TIM_SlaveConfigSynchro(TIM_HandleTypeDef *htim, TIM_SlaveConfigTypeDef *sSlaveConfig); +HAL_StatusTypeDef HAL_TIM_SlaveConfigSynchro_IT(TIM_HandleTypeDef *htim, TIM_SlaveConfigTypeDef *sSlaveConfig); +HAL_StatusTypeDef HAL_TIM_DMABurst_WriteStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, + uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength); +HAL_StatusTypeDef HAL_TIM_DMABurst_MultiWriteStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, + uint32_t BurstRequestSrc, uint32_t *BurstBuffer, + uint32_t BurstLength, uint32_t DataLength); +HAL_StatusTypeDef HAL_TIM_DMABurst_WriteStop(TIM_HandleTypeDef *htim, uint32_t BurstRequestSrc); +HAL_StatusTypeDef HAL_TIM_DMABurst_ReadStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, + uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength); +HAL_StatusTypeDef HAL_TIM_DMABurst_MultiReadStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, + uint32_t BurstRequestSrc, uint32_t *BurstBuffer, + uint32_t BurstLength, uint32_t DataLength); +HAL_StatusTypeDef HAL_TIM_DMABurst_ReadStop(TIM_HandleTypeDef *htim, uint32_t BurstRequestSrc); +HAL_StatusTypeDef HAL_TIM_GenerateEvent(TIM_HandleTypeDef *htim, uint32_t EventSource); +uint32_t HAL_TIM_ReadCapturedValue(TIM_HandleTypeDef *htim, uint32_t Channel); +/** + * @} + */ + +/** @defgroup TIM_Exported_Functions_Group9 TIM Callbacks functions + * @brief TIM Callbacks functions + * @{ + */ +/* Callback in non blocking modes (Interrupt and DMA) *************************/ +void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim); +void HAL_TIM_PeriodElapsedHalfCpltCallback(TIM_HandleTypeDef *htim); +void HAL_TIM_OC_DelayElapsedCallback(TIM_HandleTypeDef *htim); +void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim); +void HAL_TIM_IC_CaptureHalfCpltCallback(TIM_HandleTypeDef *htim); +void HAL_TIM_PWM_PulseFinishedCallback(TIM_HandleTypeDef *htim); +void HAL_TIM_PWM_PulseFinishedHalfCpltCallback(TIM_HandleTypeDef *htim); +void HAL_TIM_TriggerCallback(TIM_HandleTypeDef *htim); +void HAL_TIM_TriggerHalfCpltCallback(TIM_HandleTypeDef *htim); +void HAL_TIM_ErrorCallback(TIM_HandleTypeDef *htim); + +/* Callbacks Register/UnRegister functions ***********************************/ +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) +HAL_StatusTypeDef HAL_TIM_RegisterCallback(TIM_HandleTypeDef *htim, HAL_TIM_CallbackIDTypeDef CallbackID, + pTIM_CallbackTypeDef pCallback); +HAL_StatusTypeDef HAL_TIM_UnRegisterCallback(TIM_HandleTypeDef *htim, HAL_TIM_CallbackIDTypeDef CallbackID); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + +/** + * @} + */ + +/** @defgroup TIM_Exported_Functions_Group10 TIM Peripheral State functions + * @brief Peripheral State functions + * @{ + */ +/* Peripheral State functions ************************************************/ +HAL_TIM_StateTypeDef HAL_TIM_Base_GetState(TIM_HandleTypeDef *htim); +HAL_TIM_StateTypeDef HAL_TIM_OC_GetState(TIM_HandleTypeDef *htim); +HAL_TIM_StateTypeDef HAL_TIM_PWM_GetState(TIM_HandleTypeDef *htim); +HAL_TIM_StateTypeDef HAL_TIM_IC_GetState(TIM_HandleTypeDef *htim); +HAL_TIM_StateTypeDef HAL_TIM_OnePulse_GetState(TIM_HandleTypeDef *htim); +HAL_TIM_StateTypeDef HAL_TIM_Encoder_GetState(TIM_HandleTypeDef *htim); + +/* Peripheral Channel state functions ************************************************/ +HAL_TIM_ActiveChannel HAL_TIM_GetActiveChannel(TIM_HandleTypeDef *htim); +HAL_TIM_ChannelStateTypeDef HAL_TIM_GetChannelState(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_TIM_DMABurstStateTypeDef HAL_TIM_DMABurstState(TIM_HandleTypeDef *htim); +/** + * @} + */ + +/** + * @} + */ +/* End of exported functions -------------------------------------------------*/ + +/* Private functions----------------------------------------------------------*/ +/** @defgroup TIM_Private_Functions TIM Private Functions + * @{ + */ +void TIM_Base_SetConfig(TIM_TypeDef *TIMx, TIM_Base_InitTypeDef *Structure); +void TIM_TI1_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, uint32_t TIM_ICFilter); +void TIM_OC2_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config); +void TIM_ETR_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ExtTRGPrescaler, + uint32_t TIM_ExtTRGPolarity, uint32_t ExtTRGFilter); + +void TIM_DMADelayPulseHalfCplt(DMA_HandleTypeDef *hdma); +void TIM_DMAError(DMA_HandleTypeDef *hdma); +void TIM_DMACaptureCplt(DMA_HandleTypeDef *hdma); +void TIM_DMACaptureHalfCplt(DMA_HandleTypeDef *hdma); +void TIM_CCxChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelState); + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) +void TIM_ResetCallback(TIM_HandleTypeDef *htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + +/** + * @} + */ +/* End of private functions --------------------------------------------------*/ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif /* STM32F1xx_HAL_TIM_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h index 6f1b5e5..1979d73 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_tim_ex.h @@ -1,262 +1,262 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_tim_ex.h - * @author MCD Application Team - * @brief Header file of TIM HAL Extended module. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef STM32F1xx_HAL_TIM_EX_H -#define STM32F1xx_HAL_TIM_EX_H - -#ifdef __cplusplus -extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal_def.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup TIMEx - * @{ - */ - -/* Exported types ------------------------------------------------------------*/ -/** @defgroup TIMEx_Exported_Types TIM Extended Exported Types - * @{ - */ - -/** - * @brief TIM Hall sensor Configuration Structure definition - */ - -typedef struct -{ - uint32_t IC1Polarity; /*!< Specifies the active edge of the input signal. - This parameter can be a value of @ref TIM_Input_Capture_Polarity */ - - uint32_t IC1Prescaler; /*!< Specifies the Input Capture Prescaler. - This parameter can be a value of @ref TIM_Input_Capture_Prescaler */ - - uint32_t IC1Filter; /*!< Specifies the input capture filter. - This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ - - uint32_t Commutation_Delay; /*!< Specifies the pulse value to be loaded into the Capture Compare Register. - This parameter can be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF */ -} TIM_HallSensor_InitTypeDef; -/** - * @} - */ -/* End of exported types -----------------------------------------------------*/ - -/* Exported constants --------------------------------------------------------*/ -/** @defgroup TIMEx_Exported_Constants TIM Extended Exported Constants - * @{ - */ - -/** @defgroup TIMEx_Remap TIM Extended Remapping - * @{ - */ -/** - * @} - */ - -/** - * @} - */ -/* End of exported constants -------------------------------------------------*/ - -/* Exported macro ------------------------------------------------------------*/ -/** @defgroup TIMEx_Exported_Macros TIM Extended Exported Macros - * @{ - */ - -/** - * @} - */ -/* End of exported macro -----------------------------------------------------*/ - -/* Private macro -------------------------------------------------------------*/ -/** @defgroup TIMEx_Private_Macros TIM Extended Private Macros - * @{ - */ - -/** - * @} - */ -/* End of private macro ------------------------------------------------------*/ - -/* Exported functions --------------------------------------------------------*/ -/** @addtogroup TIMEx_Exported_Functions TIM Extended Exported Functions - * @{ - */ - -/** @addtogroup TIMEx_Exported_Functions_Group1 Extended Timer Hall Sensor functions - * @brief Timer Hall Sensor functions - * @{ - */ -/* Timer Hall Sensor functions **********************************************/ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Init(TIM_HandleTypeDef *htim, TIM_HallSensor_InitTypeDef *sConfig); -HAL_StatusTypeDef HAL_TIMEx_HallSensor_DeInit(TIM_HandleTypeDef *htim); - -void HAL_TIMEx_HallSensor_MspInit(TIM_HandleTypeDef *htim); -void HAL_TIMEx_HallSensor_MspDeInit(TIM_HandleTypeDef *htim); - -/* Blocking mode: Polling */ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start(TIM_HandleTypeDef *htim); -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop(TIM_HandleTypeDef *htim); -/* Non-Blocking mode: Interrupt */ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_IT(TIM_HandleTypeDef *htim); -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_IT(TIM_HandleTypeDef *htim); -/* Non-Blocking mode: DMA */ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length); -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_DMA(TIM_HandleTypeDef *htim); -/** - * @} - */ - -/** @addtogroup TIMEx_Exported_Functions_Group2 Extended Timer Complementary Output Compare functions - * @brief Timer Complementary Output Compare functions - * @{ - */ -/* Timer Complementary Output Compare functions *****************************/ -/* Blocking mode: Polling */ -HAL_StatusTypeDef HAL_TIMEx_OCN_Start(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIMEx_OCN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); - -/* Non-Blocking mode: Interrupt */ -HAL_StatusTypeDef HAL_TIMEx_OCN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); - -/* Non-Blocking mode: DMA */ -HAL_StatusTypeDef HAL_TIMEx_OCN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length); -HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); -/** - * @} - */ - -/** @addtogroup TIMEx_Exported_Functions_Group3 Extended Timer Complementary PWM functions - * @brief Timer Complementary PWM functions - * @{ - */ -/* Timer Complementary PWM functions ****************************************/ -/* Blocking mode: Polling */ -HAL_StatusTypeDef HAL_TIMEx_PWMN_Start(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); - -/* Non-Blocking mode: Interrupt */ -HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); -HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); -/* Non-Blocking mode: DMA */ -HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length); -HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); -/** - * @} - */ - -/** @addtogroup TIMEx_Exported_Functions_Group4 Extended Timer Complementary One Pulse functions - * @brief Timer Complementary One Pulse functions - * @{ - */ -/* Timer Complementary One Pulse functions **********************************/ -/* Blocking mode: Polling */ -HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel); -HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel); - -/* Non-Blocking mode: Interrupt */ -HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel); -HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel); -/** - * @} - */ - -/** @addtogroup TIMEx_Exported_Functions_Group5 Extended Peripheral Control functions - * @brief Peripheral Control functions - * @{ - */ -/* Extended Control functions ************************************************/ -HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent(TIM_HandleTypeDef *htim, uint32_t InputTrigger, - uint32_t CommutationSource); -HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_IT(TIM_HandleTypeDef *htim, uint32_t InputTrigger, - uint32_t CommutationSource); -HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_DMA(TIM_HandleTypeDef *htim, uint32_t InputTrigger, - uint32_t CommutationSource); -HAL_StatusTypeDef HAL_TIMEx_MasterConfigSynchronization(TIM_HandleTypeDef *htim, - TIM_MasterConfigTypeDef *sMasterConfig); -HAL_StatusTypeDef HAL_TIMEx_ConfigBreakDeadTime(TIM_HandleTypeDef *htim, - TIM_BreakDeadTimeConfigTypeDef *sBreakDeadTimeConfig); -HAL_StatusTypeDef HAL_TIMEx_RemapConfig(TIM_HandleTypeDef *htim, uint32_t Remap); -/** - * @} - */ - -/** @addtogroup TIMEx_Exported_Functions_Group6 Extended Callbacks functions - * @brief Extended Callbacks functions - * @{ - */ -/* Extended Callback **********************************************************/ -void HAL_TIMEx_CommutCallback(TIM_HandleTypeDef *htim); -void HAL_TIMEx_CommutHalfCpltCallback(TIM_HandleTypeDef *htim); -void HAL_TIMEx_BreakCallback(TIM_HandleTypeDef *htim); -/** - * @} - */ - -/** @addtogroup TIMEx_Exported_Functions_Group7 Extended Peripheral State functions - * @brief Extended Peripheral State functions - * @{ - */ -/* Extended Peripheral State functions ***************************************/ -HAL_TIM_StateTypeDef HAL_TIMEx_HallSensor_GetState(TIM_HandleTypeDef *htim); -HAL_TIM_ChannelStateTypeDef HAL_TIMEx_GetChannelNState(TIM_HandleTypeDef *htim, uint32_t ChannelN); -/** - * @} - */ - -/** - * @} - */ -/* End of exported functions -------------------------------------------------*/ - -/* Private functions----------------------------------------------------------*/ -/** @addtogroup TIMEx_Private_Functions TIMEx Private Functions - * @{ - */ -void TIMEx_DMACommutationCplt(DMA_HandleTypeDef *hdma); -void TIMEx_DMACommutationHalfCplt(DMA_HandleTypeDef *hdma); -/** - * @} - */ -/* End of private functions --------------------------------------------------*/ - -/** - * @} - */ - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif - - -#endif /* STM32F1xx_HAL_TIM_EX_H */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_tim_ex.h + * @author MCD Application Team + * @brief Header file of TIM HAL Extended module. + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef STM32F1xx_HAL_TIM_EX_H +#define STM32F1xx_HAL_TIM_EX_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal_def.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup TIMEx + * @{ + */ + +/* Exported types ------------------------------------------------------------*/ +/** @defgroup TIMEx_Exported_Types TIM Extended Exported Types + * @{ + */ + +/** + * @brief TIM Hall sensor Configuration Structure definition + */ + +typedef struct +{ + uint32_t IC1Polarity; /*!< Specifies the active edge of the input signal. + This parameter can be a value of @ref TIM_Input_Capture_Polarity */ + + uint32_t IC1Prescaler; /*!< Specifies the Input Capture Prescaler. + This parameter can be a value of @ref TIM_Input_Capture_Prescaler */ + + uint32_t IC1Filter; /*!< Specifies the input capture filter. + This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */ + + uint32_t Commutation_Delay; /*!< Specifies the pulse value to be loaded into the Capture Compare Register. + This parameter can be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF */ +} TIM_HallSensor_InitTypeDef; +/** + * @} + */ +/* End of exported types -----------------------------------------------------*/ + +/* Exported constants --------------------------------------------------------*/ +/** @defgroup TIMEx_Exported_Constants TIM Extended Exported Constants + * @{ + */ + +/** @defgroup TIMEx_Remap TIM Extended Remapping + * @{ + */ +/** + * @} + */ + +/** + * @} + */ +/* End of exported constants -------------------------------------------------*/ + +/* Exported macro ------------------------------------------------------------*/ +/** @defgroup TIMEx_Exported_Macros TIM Extended Exported Macros + * @{ + */ + +/** + * @} + */ +/* End of exported macro -----------------------------------------------------*/ + +/* Private macro -------------------------------------------------------------*/ +/** @defgroup TIMEx_Private_Macros TIM Extended Private Macros + * @{ + */ + +/** + * @} + */ +/* End of private macro ------------------------------------------------------*/ + +/* Exported functions --------------------------------------------------------*/ +/** @addtogroup TIMEx_Exported_Functions TIM Extended Exported Functions + * @{ + */ + +/** @addtogroup TIMEx_Exported_Functions_Group1 Extended Timer Hall Sensor functions + * @brief Timer Hall Sensor functions + * @{ + */ +/* Timer Hall Sensor functions **********************************************/ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Init(TIM_HandleTypeDef *htim, TIM_HallSensor_InitTypeDef *sConfig); +HAL_StatusTypeDef HAL_TIMEx_HallSensor_DeInit(TIM_HandleTypeDef *htim); + +void HAL_TIMEx_HallSensor_MspInit(TIM_HandleTypeDef *htim); +void HAL_TIMEx_HallSensor_MspDeInit(TIM_HandleTypeDef *htim); + +/* Blocking mode: Polling */ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start(TIM_HandleTypeDef *htim); +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop(TIM_HandleTypeDef *htim); +/* Non-Blocking mode: Interrupt */ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_IT(TIM_HandleTypeDef *htim); +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_IT(TIM_HandleTypeDef *htim); +/* Non-Blocking mode: DMA */ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length); +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_DMA(TIM_HandleTypeDef *htim); +/** + * @} + */ + +/** @addtogroup TIMEx_Exported_Functions_Group2 Extended Timer Complementary Output Compare functions + * @brief Timer Complementary Output Compare functions + * @{ + */ +/* Timer Complementary Output Compare functions *****************************/ +/* Blocking mode: Polling */ +HAL_StatusTypeDef HAL_TIMEx_OCN_Start(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIMEx_OCN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); + +/* Non-Blocking mode: Interrupt */ +HAL_StatusTypeDef HAL_TIMEx_OCN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); + +/* Non-Blocking mode: DMA */ +HAL_StatusTypeDef HAL_TIMEx_OCN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length); +HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); +/** + * @} + */ + +/** @addtogroup TIMEx_Exported_Functions_Group3 Extended Timer Complementary PWM functions + * @brief Timer Complementary PWM functions + * @{ + */ +/* Timer Complementary PWM functions ****************************************/ +/* Blocking mode: Polling */ +HAL_StatusTypeDef HAL_TIMEx_PWMN_Start(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel); + +/* Non-Blocking mode: Interrupt */ +HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel); +HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel); +/* Non-Blocking mode: DMA */ +HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length); +HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel); +/** + * @} + */ + +/** @addtogroup TIMEx_Exported_Functions_Group4 Extended Timer Complementary One Pulse functions + * @brief Timer Complementary One Pulse functions + * @{ + */ +/* Timer Complementary One Pulse functions **********************************/ +/* Blocking mode: Polling */ +HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel); +HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel); + +/* Non-Blocking mode: Interrupt */ +HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel); +HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel); +/** + * @} + */ + +/** @addtogroup TIMEx_Exported_Functions_Group5 Extended Peripheral Control functions + * @brief Peripheral Control functions + * @{ + */ +/* Extended Control functions ************************************************/ +HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent(TIM_HandleTypeDef *htim, uint32_t InputTrigger, + uint32_t CommutationSource); +HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_IT(TIM_HandleTypeDef *htim, uint32_t InputTrigger, + uint32_t CommutationSource); +HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_DMA(TIM_HandleTypeDef *htim, uint32_t InputTrigger, + uint32_t CommutationSource); +HAL_StatusTypeDef HAL_TIMEx_MasterConfigSynchronization(TIM_HandleTypeDef *htim, + TIM_MasterConfigTypeDef *sMasterConfig); +HAL_StatusTypeDef HAL_TIMEx_ConfigBreakDeadTime(TIM_HandleTypeDef *htim, + TIM_BreakDeadTimeConfigTypeDef *sBreakDeadTimeConfig); +HAL_StatusTypeDef HAL_TIMEx_RemapConfig(TIM_HandleTypeDef *htim, uint32_t Remap); +/** + * @} + */ + +/** @addtogroup TIMEx_Exported_Functions_Group6 Extended Callbacks functions + * @brief Extended Callbacks functions + * @{ + */ +/* Extended Callback **********************************************************/ +void HAL_TIMEx_CommutCallback(TIM_HandleTypeDef *htim); +void HAL_TIMEx_CommutHalfCpltCallback(TIM_HandleTypeDef *htim); +void HAL_TIMEx_BreakCallback(TIM_HandleTypeDef *htim); +/** + * @} + */ + +/** @addtogroup TIMEx_Exported_Functions_Group7 Extended Peripheral State functions + * @brief Extended Peripheral State functions + * @{ + */ +/* Extended Peripheral State functions ***************************************/ +HAL_TIM_StateTypeDef HAL_TIMEx_HallSensor_GetState(TIM_HandleTypeDef *htim); +HAL_TIM_ChannelStateTypeDef HAL_TIMEx_GetChannelNState(TIM_HandleTypeDef *htim, uint32_t ChannelN); +/** + * @} + */ + +/** + * @} + */ +/* End of exported functions -------------------------------------------------*/ + +/* Private functions----------------------------------------------------------*/ +/** @addtogroup TIMEx_Private_Functions TIMEx Private Functions + * @{ + */ +void TIMEx_DMACommutationCplt(DMA_HandleTypeDef *hdma); +void TIMEx_DMACommutationHalfCplt(DMA_HandleTypeDef *hdma); +/** + * @} + */ +/* End of private functions --------------------------------------------------*/ + +/** + * @} + */ + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + + +#endif /* STM32F1xx_HAL_TIM_EX_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/License.md b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/License.md similarity index 100% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/License.md rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/License.md diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c index f4824ab..3c9544b 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c @@ -1,606 +1,606 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal.c - * @author MCD Application Team - * @brief HAL module driver. - * This is the common part of the HAL initialization - * - @verbatim - ============================================================================== - ##### How to use this driver ##### - ============================================================================== - [..] - The common HAL driver contains a set of generic and common APIs that can be - used by the PPP peripheral drivers and the user to start using the HAL. - [..] - The HAL contains two APIs' categories: - (+) Common HAL APIs - (+) Services HAL APIs - - @endverbatim - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup HAL HAL - * @brief HAL module driver. - * @{ - */ - -#ifdef HAL_MODULE_ENABLED - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ - -/** @defgroup HAL_Private_Constants HAL Private Constants - * @{ - */ -/** - * @brief STM32F1xx HAL Driver version number V1.1.8 - */ -#define __STM32F1xx_HAL_VERSION_MAIN (0x01U) /*!< [31:24] main version */ -#define __STM32F1xx_HAL_VERSION_SUB1 (0x01U) /*!< [23:16] sub1 version */ -#define __STM32F1xx_HAL_VERSION_SUB2 (0x08U) /*!< [15:8] sub2 version */ -#define __STM32F1xx_HAL_VERSION_RC (0x00U) /*!< [7:0] release candidate */ -#define __STM32F1xx_HAL_VERSION ((__STM32F1xx_HAL_VERSION_MAIN << 24)\ - |(__STM32F1xx_HAL_VERSION_SUB1 << 16)\ - |(__STM32F1xx_HAL_VERSION_SUB2 << 8 )\ - |(__STM32F1xx_HAL_VERSION_RC)) - -#define IDCODE_DEVID_MASK 0x00000FFFU - -/** - * @} - */ - -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ - -/** @defgroup HAL_Private_Variables HAL Private Variables - * @{ - */ -__IO uint32_t uwTick; -uint32_t uwTickPrio = (1UL << __NVIC_PRIO_BITS); /* Invalid PRIO */ -HAL_TickFreqTypeDef uwTickFreq = HAL_TICK_FREQ_DEFAULT; /* 1KHz */ -/** - * @} - */ -/* Private function prototypes -----------------------------------------------*/ -/* Exported functions ---------------------------------------------------------*/ - -/** @defgroup HAL_Exported_Functions HAL Exported Functions - * @{ - */ - -/** @defgroup HAL_Exported_Functions_Group1 Initialization and de-initialization Functions - * @brief Initialization and de-initialization functions - * -@verbatim - =============================================================================== - ##### Initialization and de-initialization functions ##### - =============================================================================== - [..] This section provides functions allowing to: - (+) Initializes the Flash interface, the NVIC allocation and initial clock - configuration. It initializes the systick also when timeout is needed - and the backup domain when enabled. - (+) de-Initializes common part of the HAL. - (+) Configure The time base source to have 1ms time base with a dedicated - Tick interrupt priority. - (++) SysTick timer is used by default as source of time base, but user - can eventually implement his proper time base source (a general purpose - timer for example or other time source), keeping in mind that Time base - duration should be kept 1ms since PPP_TIMEOUT_VALUEs are defined and - handled in milliseconds basis. - (++) Time base configuration function (HAL_InitTick ()) is called automatically - at the beginning of the program after reset by HAL_Init() or at any time - when clock is configured, by HAL_RCC_ClockConfig(). - (++) Source of time base is configured to generate interrupts at regular - time intervals. Care must be taken if HAL_Delay() is called from a - peripheral ISR process, the Tick interrupt line must have higher priority - (numerically lower) than the peripheral interrupt. Otherwise the caller - ISR process will be blocked. - (++) functions affecting time base configurations are declared as __weak - to make override possible in case of other implementations in user file. -@endverbatim - * @{ - */ - -/** - * @brief This function is used to initialize the HAL Library; it must be the first - * instruction to be executed in the main program (before to call any other - * HAL function), it performs the following: - * Configure the Flash prefetch. - * Configures the SysTick to generate an interrupt each 1 millisecond, - * which is clocked by the HSI (at this stage, the clock is not yet - * configured and thus the system is running from the internal HSI at 16 MHz). - * Set NVIC Group Priority to 4. - * Calls the HAL_MspInit() callback function defined in user file - * "stm32f1xx_hal_msp.c" to do the global low level hardware initialization - * - * @note SysTick is used as time base for the HAL_Delay() function, the application - * need to ensure that the SysTick time base is always set to 1 millisecond - * to have correct HAL operation. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_Init(void) -{ - /* Configure Flash prefetch */ -#if (PREFETCH_ENABLE != 0) -#if defined(STM32F101x6) || defined(STM32F101xB) || defined(STM32F101xE) || defined(STM32F101xG) || \ - defined(STM32F102x6) || defined(STM32F102xB) || \ - defined(STM32F103x6) || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) || \ - defined(STM32F105xC) || defined(STM32F107xC) - - /* Prefetch buffer is not available on value line devices */ - __HAL_FLASH_PREFETCH_BUFFER_ENABLE(); -#endif -#endif /* PREFETCH_ENABLE */ - - /* Set Interrupt Group Priority */ - HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4); - - /* Use systick as time base source and configure 1ms tick (default clock after Reset is HSI) */ - HAL_InitTick(TICK_INT_PRIORITY); - - /* Init the low level hardware */ - HAL_MspInit(); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief This function de-Initializes common part of the HAL and stops the systick. - * of time base. - * @note This function is optional. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_DeInit(void) -{ - /* Reset of all peripherals */ - __HAL_RCC_APB1_FORCE_RESET(); - __HAL_RCC_APB1_RELEASE_RESET(); - - __HAL_RCC_APB2_FORCE_RESET(); - __HAL_RCC_APB2_RELEASE_RESET(); - -#if defined(STM32F105xC) || defined(STM32F107xC) - __HAL_RCC_AHB_FORCE_RESET(); - __HAL_RCC_AHB_RELEASE_RESET(); -#endif - - /* De-Init the low level hardware */ - HAL_MspDeInit(); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Initialize the MSP. - * @retval None - */ -__weak void HAL_MspInit(void) -{ - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_MspInit could be implemented in the user file - */ -} - -/** - * @brief DeInitializes the MSP. - * @retval None - */ -__weak void HAL_MspDeInit(void) -{ - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_MspDeInit could be implemented in the user file - */ -} - -/** - * @brief This function configures the source of the time base. - * The time source is configured to have 1ms time base with a dedicated - * Tick interrupt priority. - * @note This function is called automatically at the beginning of program after - * reset by HAL_Init() or at any time when clock is reconfigured by HAL_RCC_ClockConfig(). - * @note In the default implementation, SysTick timer is the source of time base. - * It is used to generate interrupts at regular time intervals. - * Care must be taken if HAL_Delay() is called from a peripheral ISR process, - * The SysTick interrupt must have higher priority (numerically lower) - * than the peripheral interrupt. Otherwise the caller ISR process will be blocked. - * The function is declared as __weak to be overwritten in case of other - * implementation in user file. - * @param TickPriority Tick interrupt priority. - * @retval HAL status - */ -__weak HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority) -{ - /* Configure the SysTick to have interrupt in 1ms time basis*/ - if (HAL_SYSTICK_Config(SystemCoreClock / (1000U / uwTickFreq)) > 0U) - { - return HAL_ERROR; - } - - /* Configure the SysTick IRQ priority */ - if (TickPriority < (1UL << __NVIC_PRIO_BITS)) - { - HAL_NVIC_SetPriority(SysTick_IRQn, TickPriority, 0U); - uwTickPrio = TickPriority; - } - else - { - return HAL_ERROR; - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup HAL_Exported_Functions_Group2 HAL Control functions - * @brief HAL Control functions - * -@verbatim - =============================================================================== - ##### HAL Control functions ##### - =============================================================================== - [..] This section provides functions allowing to: - (+) Provide a tick value in millisecond - (+) Provide a blocking delay in millisecond - (+) Suspend the time base source interrupt - (+) Resume the time base source interrupt - (+) Get the HAL API driver version - (+) Get the device identifier - (+) Get the device revision identifier - (+) Enable/Disable Debug module during SLEEP mode - (+) Enable/Disable Debug module during STOP mode - (+) Enable/Disable Debug module during STANDBY mode - -@endverbatim - * @{ - */ - -/** - * @brief This function is called to increment a global variable "uwTick" - * used as application time base. - * @note In the default implementation, this variable is incremented each 1ms - * in SysTick ISR. - * @note This function is declared as __weak to be overwritten in case of other - * implementations in user file. - * @retval None - */ -__weak void HAL_IncTick(void) -{ - uwTick += uwTickFreq; -} - -/** - * @brief Provides a tick value in millisecond. - * @note This function is declared as __weak to be overwritten in case of other - * implementations in user file. - * @retval tick value - */ -__weak uint32_t HAL_GetTick(void) -{ - return uwTick; -} - -/** - * @brief This function returns a tick priority. - * @retval tick priority - */ -uint32_t HAL_GetTickPrio(void) -{ - return uwTickPrio; -} - -/** - * @brief Set new tick Freq. - * @retval status - */ -HAL_StatusTypeDef HAL_SetTickFreq(HAL_TickFreqTypeDef Freq) -{ - HAL_StatusTypeDef status = HAL_OK; - HAL_TickFreqTypeDef prevTickFreq; - - assert_param(IS_TICKFREQ(Freq)); - - if (uwTickFreq != Freq) - { - /* Back up uwTickFreq frequency */ - prevTickFreq = uwTickFreq; - - /* Update uwTickFreq global variable used by HAL_InitTick() */ - uwTickFreq = Freq; - - /* Apply the new tick Freq */ - status = HAL_InitTick(uwTickPrio); - - if (status != HAL_OK) - { - /* Restore previous tick frequency */ - uwTickFreq = prevTickFreq; - } - } - - return status; -} - -/** - * @brief Return tick frequency. - * @retval tick period in Hz - */ -HAL_TickFreqTypeDef HAL_GetTickFreq(void) -{ - return uwTickFreq; -} - -/** - * @brief This function provides minimum delay (in milliseconds) based - * on variable incremented. - * @note In the default implementation , SysTick timer is the source of time base. - * It is used to generate interrupts at regular time intervals where uwTick - * is incremented. - * @note This function is declared as __weak to be overwritten in case of other - * implementations in user file. - * @param Delay specifies the delay time length, in milliseconds. - * @retval None - */ -__weak void HAL_Delay(uint32_t Delay) -{ - uint32_t tickstart = HAL_GetTick(); - uint32_t wait = Delay; - - /* Add a freq to guarantee minimum wait */ - if (wait < HAL_MAX_DELAY) - { - wait += (uint32_t)(uwTickFreq); - } - - while ((HAL_GetTick() - tickstart) < wait) - { - } -} - -/** - * @brief Suspend Tick increment. - * @note In the default implementation , SysTick timer is the source of time base. It is - * used to generate interrupts at regular time intervals. Once HAL_SuspendTick() - * is called, the SysTick interrupt will be disabled and so Tick increment - * is suspended. - * @note This function is declared as __weak to be overwritten in case of other - * implementations in user file. - * @retval None - */ -__weak void HAL_SuspendTick(void) -{ - /* Disable SysTick Interrupt */ - CLEAR_BIT(SysTick->CTRL, SysTick_CTRL_TICKINT_Msk); -} - -/** - * @brief Resume Tick increment. - * @note In the default implementation , SysTick timer is the source of time base. It is - * used to generate interrupts at regular time intervals. Once HAL_ResumeTick() - * is called, the SysTick interrupt will be enabled and so Tick increment - * is resumed. - * @note This function is declared as __weak to be overwritten in case of other - * implementations in user file. - * @retval None - */ -__weak void HAL_ResumeTick(void) -{ - /* Enable SysTick Interrupt */ - SET_BIT(SysTick->CTRL, SysTick_CTRL_TICKINT_Msk); -} - -/** - * @brief Returns the HAL revision - * @retval version 0xXYZR (8bits for each decimal, R for RC) - */ -uint32_t HAL_GetHalVersion(void) -{ - return __STM32F1xx_HAL_VERSION; -} - -/** - * @brief Returns the device revision identifier. - * Note: On devices STM32F10xx8 and STM32F10xxB, - * STM32F101xC/D/E and STM32F103xC/D/E, - * STM32F101xF/G and STM32F103xF/G - * STM32F10xx4 and STM32F10xx6 - * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in - * debug mode (not accessible by the user software in normal mode). - * Refer to errata sheet of these devices for more details. - * @retval Device revision identifier - */ -uint32_t HAL_GetREVID(void) -{ - return ((DBGMCU->IDCODE) >> DBGMCU_IDCODE_REV_ID_Pos); -} - -/** - * @brief Returns the device identifier. - * Note: On devices STM32F10xx8 and STM32F10xxB, - * STM32F101xC/D/E and STM32F103xC/D/E, - * STM32F101xF/G and STM32F103xF/G - * STM32F10xx4 and STM32F10xx6 - * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in - * debug mode (not accessible by the user software in normal mode). - * Refer to errata sheet of these devices for more details. - * @retval Device identifier - */ -uint32_t HAL_GetDEVID(void) -{ - return ((DBGMCU->IDCODE) & IDCODE_DEVID_MASK); -} - -/** - * @brief Returns first word of the unique device identifier (UID based on 96 bits) - * @retval Device identifier - */ -uint32_t HAL_GetUIDw0(void) -{ - return(READ_REG(*((uint32_t *)UID_BASE))); -} - -/** - * @brief Returns second word of the unique device identifier (UID based on 96 bits) - * @retval Device identifier - */ -uint32_t HAL_GetUIDw1(void) -{ - return(READ_REG(*((uint32_t *)(UID_BASE + 4U)))); -} - -/** - * @brief Returns third word of the unique device identifier (UID based on 96 bits) - * @retval Device identifier - */ -uint32_t HAL_GetUIDw2(void) -{ - return(READ_REG(*((uint32_t *)(UID_BASE + 8U)))); -} - -/** - * @brief Enable the Debug Module during SLEEP mode - * @retval None - */ -void HAL_DBGMCU_EnableDBGSleepMode(void) -{ - SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); -} - -/** - * @brief Disable the Debug Module during SLEEP mode - * Note: On devices STM32F10xx8 and STM32F10xxB, - * STM32F101xC/D/E and STM32F103xC/D/E, - * STM32F101xF/G and STM32F103xF/G - * STM32F10xx4 and STM32F10xx6 - * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in - * debug mode (not accessible by the user software in normal mode). - * Refer to errata sheet of these devices for more details. - * @retval None - */ -void HAL_DBGMCU_DisableDBGSleepMode(void) -{ - CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); -} - -/** - * @brief Enable the Debug Module during STOP mode - * Note: On devices STM32F10xx8 and STM32F10xxB, - * STM32F101xC/D/E and STM32F103xC/D/E, - * STM32F101xF/G and STM32F103xF/G - * STM32F10xx4 and STM32F10xx6 - * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in - * debug mode (not accessible by the user software in normal mode). - * Refer to errata sheet of these devices for more details. - * Note: On all STM32F1 devices: - * If the system tick timer interrupt is enabled during the Stop mode - * debug (DBG_STOP bit set in the DBGMCU_CR register ), it will wakeup - * the system from Stop mode. - * Workaround: To debug the Stop mode, disable the system tick timer - * interrupt. - * Refer to errata sheet of these devices for more details. - * Note: On all STM32F1 devices: - * If the system tick timer interrupt is enabled during the Stop mode - * debug (DBG_STOP bit set in the DBGMCU_CR register ), it will wakeup - * the system from Stop mode. - * Workaround: To debug the Stop mode, disable the system tick timer - * interrupt. - * Refer to errata sheet of these devices for more details. - * @retval None - */ -void HAL_DBGMCU_EnableDBGStopMode(void) -{ - SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); -} - -/** - * @brief Disable the Debug Module during STOP mode - * Note: On devices STM32F10xx8 and STM32F10xxB, - * STM32F101xC/D/E and STM32F103xC/D/E, - * STM32F101xF/G and STM32F103xF/G - * STM32F10xx4 and STM32F10xx6 - * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in - * debug mode (not accessible by the user software in normal mode). - * Refer to errata sheet of these devices for more details. - * @retval None - */ -void HAL_DBGMCU_DisableDBGStopMode(void) -{ - CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); -} - -/** - * @brief Enable the Debug Module during STANDBY mode - * Note: On devices STM32F10xx8 and STM32F10xxB, - * STM32F101xC/D/E and STM32F103xC/D/E, - * STM32F101xF/G and STM32F103xF/G - * STM32F10xx4 and STM32F10xx6 - * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in - * debug mode (not accessible by the user software in normal mode). - * Refer to errata sheet of these devices for more details. - * @retval None - */ -void HAL_DBGMCU_EnableDBGStandbyMode(void) -{ - SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); -} - -/** - * @brief Disable the Debug Module during STANDBY mode - * Note: On devices STM32F10xx8 and STM32F10xxB, - * STM32F101xC/D/E and STM32F103xC/D/E, - * STM32F101xF/G and STM32F103xF/G - * STM32F10xx4 and STM32F10xx6 - * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in - * debug mode (not accessible by the user software in normal mode). - * Refer to errata sheet of these devices for more details. - * @retval None - */ -void HAL_DBGMCU_DisableDBGStandbyMode(void) -{ - CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); -} - -/** - * @} - */ - -/** - * @} - */ - -#endif /* HAL_MODULE_ENABLED */ -/** - * @} - */ - -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal.c + * @author MCD Application Team + * @brief HAL module driver. + * This is the common part of the HAL initialization + * + @verbatim + ============================================================================== + ##### How to use this driver ##### + ============================================================================== + [..] + The common HAL driver contains a set of generic and common APIs that can be + used by the PPP peripheral drivers and the user to start using the HAL. + [..] + The HAL contains two APIs' categories: + (+) Common HAL APIs + (+) Services HAL APIs + + @endverbatim + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup HAL HAL + * @brief HAL module driver. + * @{ + */ + +#ifdef HAL_MODULE_ENABLED + +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ + +/** @defgroup HAL_Private_Constants HAL Private Constants + * @{ + */ +/** + * @brief STM32F1xx HAL Driver version number V1.1.8 + */ +#define __STM32F1xx_HAL_VERSION_MAIN (0x01U) /*!< [31:24] main version */ +#define __STM32F1xx_HAL_VERSION_SUB1 (0x01U) /*!< [23:16] sub1 version */ +#define __STM32F1xx_HAL_VERSION_SUB2 (0x08U) /*!< [15:8] sub2 version */ +#define __STM32F1xx_HAL_VERSION_RC (0x00U) /*!< [7:0] release candidate */ +#define __STM32F1xx_HAL_VERSION ((__STM32F1xx_HAL_VERSION_MAIN << 24)\ + |(__STM32F1xx_HAL_VERSION_SUB1 << 16)\ + |(__STM32F1xx_HAL_VERSION_SUB2 << 8 )\ + |(__STM32F1xx_HAL_VERSION_RC)) + +#define IDCODE_DEVID_MASK 0x00000FFFU + +/** + * @} + */ + +/* Private macro -------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ + +/** @defgroup HAL_Private_Variables HAL Private Variables + * @{ + */ +__IO uint32_t uwTick; +uint32_t uwTickPrio = (1UL << __NVIC_PRIO_BITS); /* Invalid PRIO */ +HAL_TickFreqTypeDef uwTickFreq = HAL_TICK_FREQ_DEFAULT; /* 1KHz */ +/** + * @} + */ +/* Private function prototypes -----------------------------------------------*/ +/* Exported functions ---------------------------------------------------------*/ + +/** @defgroup HAL_Exported_Functions HAL Exported Functions + * @{ + */ + +/** @defgroup HAL_Exported_Functions_Group1 Initialization and de-initialization Functions + * @brief Initialization and de-initialization functions + * +@verbatim + =============================================================================== + ##### Initialization and de-initialization functions ##### + =============================================================================== + [..] This section provides functions allowing to: + (+) Initializes the Flash interface, the NVIC allocation and initial clock + configuration. It initializes the systick also when timeout is needed + and the backup domain when enabled. + (+) de-Initializes common part of the HAL. + (+) Configure The time base source to have 1ms time base with a dedicated + Tick interrupt priority. + (++) SysTick timer is used by default as source of time base, but user + can eventually implement his proper time base source (a general purpose + timer for example or other time source), keeping in mind that Time base + duration should be kept 1ms since PPP_TIMEOUT_VALUEs are defined and + handled in milliseconds basis. + (++) Time base configuration function (HAL_InitTick ()) is called automatically + at the beginning of the program after reset by HAL_Init() or at any time + when clock is configured, by HAL_RCC_ClockConfig(). + (++) Source of time base is configured to generate interrupts at regular + time intervals. Care must be taken if HAL_Delay() is called from a + peripheral ISR process, the Tick interrupt line must have higher priority + (numerically lower) than the peripheral interrupt. Otherwise the caller + ISR process will be blocked. + (++) functions affecting time base configurations are declared as __weak + to make override possible in case of other implementations in user file. +@endverbatim + * @{ + */ + +/** + * @brief This function is used to initialize the HAL Library; it must be the first + * instruction to be executed in the main program (before to call any other + * HAL function), it performs the following: + * Configure the Flash prefetch. + * Configures the SysTick to generate an interrupt each 1 millisecond, + * which is clocked by the HSI (at this stage, the clock is not yet + * configured and thus the system is running from the internal HSI at 16 MHz). + * Set NVIC Group Priority to 4. + * Calls the HAL_MspInit() callback function defined in user file + * "stm32f1xx_hal_msp.c" to do the global low level hardware initialization + * + * @note SysTick is used as time base for the HAL_Delay() function, the application + * need to ensure that the SysTick time base is always set to 1 millisecond + * to have correct HAL operation. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_Init(void) +{ + /* Configure Flash prefetch */ +#if (PREFETCH_ENABLE != 0) +#if defined(STM32F101x6) || defined(STM32F101xB) || defined(STM32F101xE) || defined(STM32F101xG) || \ + defined(STM32F102x6) || defined(STM32F102xB) || \ + defined(STM32F103x6) || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) || \ + defined(STM32F105xC) || defined(STM32F107xC) + + /* Prefetch buffer is not available on value line devices */ + __HAL_FLASH_PREFETCH_BUFFER_ENABLE(); +#endif +#endif /* PREFETCH_ENABLE */ + + /* Set Interrupt Group Priority */ + HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4); + + /* Use systick as time base source and configure 1ms tick (default clock after Reset is HSI) */ + HAL_InitTick(TICK_INT_PRIORITY); + + /* Init the low level hardware */ + HAL_MspInit(); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief This function de-Initializes common part of the HAL and stops the systick. + * of time base. + * @note This function is optional. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_DeInit(void) +{ + /* Reset of all peripherals */ + __HAL_RCC_APB1_FORCE_RESET(); + __HAL_RCC_APB1_RELEASE_RESET(); + + __HAL_RCC_APB2_FORCE_RESET(); + __HAL_RCC_APB2_RELEASE_RESET(); + +#if defined(STM32F105xC) || defined(STM32F107xC) + __HAL_RCC_AHB_FORCE_RESET(); + __HAL_RCC_AHB_RELEASE_RESET(); +#endif + + /* De-Init the low level hardware */ + HAL_MspDeInit(); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Initialize the MSP. + * @retval None + */ +__weak void HAL_MspInit(void) +{ + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_MspInit could be implemented in the user file + */ +} + +/** + * @brief DeInitializes the MSP. + * @retval None + */ +__weak void HAL_MspDeInit(void) +{ + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_MspDeInit could be implemented in the user file + */ +} + +/** + * @brief This function configures the source of the time base. + * The time source is configured to have 1ms time base with a dedicated + * Tick interrupt priority. + * @note This function is called automatically at the beginning of program after + * reset by HAL_Init() or at any time when clock is reconfigured by HAL_RCC_ClockConfig(). + * @note In the default implementation, SysTick timer is the source of time base. + * It is used to generate interrupts at regular time intervals. + * Care must be taken if HAL_Delay() is called from a peripheral ISR process, + * The SysTick interrupt must have higher priority (numerically lower) + * than the peripheral interrupt. Otherwise the caller ISR process will be blocked. + * The function is declared as __weak to be overwritten in case of other + * implementation in user file. + * @param TickPriority Tick interrupt priority. + * @retval HAL status + */ +__weak HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority) +{ + /* Configure the SysTick to have interrupt in 1ms time basis*/ + if (HAL_SYSTICK_Config(SystemCoreClock / (1000U / uwTickFreq)) > 0U) + { + return HAL_ERROR; + } + + /* Configure the SysTick IRQ priority */ + if (TickPriority < (1UL << __NVIC_PRIO_BITS)) + { + HAL_NVIC_SetPriority(SysTick_IRQn, TickPriority, 0U); + uwTickPrio = TickPriority; + } + else + { + return HAL_ERROR; + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup HAL_Exported_Functions_Group2 HAL Control functions + * @brief HAL Control functions + * +@verbatim + =============================================================================== + ##### HAL Control functions ##### + =============================================================================== + [..] This section provides functions allowing to: + (+) Provide a tick value in millisecond + (+) Provide a blocking delay in millisecond + (+) Suspend the time base source interrupt + (+) Resume the time base source interrupt + (+) Get the HAL API driver version + (+) Get the device identifier + (+) Get the device revision identifier + (+) Enable/Disable Debug module during SLEEP mode + (+) Enable/Disable Debug module during STOP mode + (+) Enable/Disable Debug module during STANDBY mode + +@endverbatim + * @{ + */ + +/** + * @brief This function is called to increment a global variable "uwTick" + * used as application time base. + * @note In the default implementation, this variable is incremented each 1ms + * in SysTick ISR. + * @note This function is declared as __weak to be overwritten in case of other + * implementations in user file. + * @retval None + */ +__weak void HAL_IncTick(void) +{ + uwTick += uwTickFreq; +} + +/** + * @brief Provides a tick value in millisecond. + * @note This function is declared as __weak to be overwritten in case of other + * implementations in user file. + * @retval tick value + */ +__weak uint32_t HAL_GetTick(void) +{ + return uwTick; +} + +/** + * @brief This function returns a tick priority. + * @retval tick priority + */ +uint32_t HAL_GetTickPrio(void) +{ + return uwTickPrio; +} + +/** + * @brief Set new tick Freq. + * @retval status + */ +HAL_StatusTypeDef HAL_SetTickFreq(HAL_TickFreqTypeDef Freq) +{ + HAL_StatusTypeDef status = HAL_OK; + HAL_TickFreqTypeDef prevTickFreq; + + assert_param(IS_TICKFREQ(Freq)); + + if (uwTickFreq != Freq) + { + /* Back up uwTickFreq frequency */ + prevTickFreq = uwTickFreq; + + /* Update uwTickFreq global variable used by HAL_InitTick() */ + uwTickFreq = Freq; + + /* Apply the new tick Freq */ + status = HAL_InitTick(uwTickPrio); + + if (status != HAL_OK) + { + /* Restore previous tick frequency */ + uwTickFreq = prevTickFreq; + } + } + + return status; +} + +/** + * @brief Return tick frequency. + * @retval tick period in Hz + */ +HAL_TickFreqTypeDef HAL_GetTickFreq(void) +{ + return uwTickFreq; +} + +/** + * @brief This function provides minimum delay (in milliseconds) based + * on variable incremented. + * @note In the default implementation , SysTick timer is the source of time base. + * It is used to generate interrupts at regular time intervals where uwTick + * is incremented. + * @note This function is declared as __weak to be overwritten in case of other + * implementations in user file. + * @param Delay specifies the delay time length, in milliseconds. + * @retval None + */ +__weak void HAL_Delay(uint32_t Delay) +{ + uint32_t tickstart = HAL_GetTick(); + uint32_t wait = Delay; + + /* Add a freq to guarantee minimum wait */ + if (wait < HAL_MAX_DELAY) + { + wait += (uint32_t)(uwTickFreq); + } + + while ((HAL_GetTick() - tickstart) < wait) + { + } +} + +/** + * @brief Suspend Tick increment. + * @note In the default implementation , SysTick timer is the source of time base. It is + * used to generate interrupts at regular time intervals. Once HAL_SuspendTick() + * is called, the SysTick interrupt will be disabled and so Tick increment + * is suspended. + * @note This function is declared as __weak to be overwritten in case of other + * implementations in user file. + * @retval None + */ +__weak void HAL_SuspendTick(void) +{ + /* Disable SysTick Interrupt */ + CLEAR_BIT(SysTick->CTRL, SysTick_CTRL_TICKINT_Msk); +} + +/** + * @brief Resume Tick increment. + * @note In the default implementation , SysTick timer is the source of time base. It is + * used to generate interrupts at regular time intervals. Once HAL_ResumeTick() + * is called, the SysTick interrupt will be enabled and so Tick increment + * is resumed. + * @note This function is declared as __weak to be overwritten in case of other + * implementations in user file. + * @retval None + */ +__weak void HAL_ResumeTick(void) +{ + /* Enable SysTick Interrupt */ + SET_BIT(SysTick->CTRL, SysTick_CTRL_TICKINT_Msk); +} + +/** + * @brief Returns the HAL revision + * @retval version 0xXYZR (8bits for each decimal, R for RC) + */ +uint32_t HAL_GetHalVersion(void) +{ + return __STM32F1xx_HAL_VERSION; +} + +/** + * @brief Returns the device revision identifier. + * Note: On devices STM32F10xx8 and STM32F10xxB, + * STM32F101xC/D/E and STM32F103xC/D/E, + * STM32F101xF/G and STM32F103xF/G + * STM32F10xx4 and STM32F10xx6 + * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in + * debug mode (not accessible by the user software in normal mode). + * Refer to errata sheet of these devices for more details. + * @retval Device revision identifier + */ +uint32_t HAL_GetREVID(void) +{ + return ((DBGMCU->IDCODE) >> DBGMCU_IDCODE_REV_ID_Pos); +} + +/** + * @brief Returns the device identifier. + * Note: On devices STM32F10xx8 and STM32F10xxB, + * STM32F101xC/D/E and STM32F103xC/D/E, + * STM32F101xF/G and STM32F103xF/G + * STM32F10xx4 and STM32F10xx6 + * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in + * debug mode (not accessible by the user software in normal mode). + * Refer to errata sheet of these devices for more details. + * @retval Device identifier + */ +uint32_t HAL_GetDEVID(void) +{ + return ((DBGMCU->IDCODE) & IDCODE_DEVID_MASK); +} + +/** + * @brief Returns first word of the unique device identifier (UID based on 96 bits) + * @retval Device identifier + */ +uint32_t HAL_GetUIDw0(void) +{ + return(READ_REG(*((uint32_t *)UID_BASE))); +} + +/** + * @brief Returns second word of the unique device identifier (UID based on 96 bits) + * @retval Device identifier + */ +uint32_t HAL_GetUIDw1(void) +{ + return(READ_REG(*((uint32_t *)(UID_BASE + 4U)))); +} + +/** + * @brief Returns third word of the unique device identifier (UID based on 96 bits) + * @retval Device identifier + */ +uint32_t HAL_GetUIDw2(void) +{ + return(READ_REG(*((uint32_t *)(UID_BASE + 8U)))); +} + +/** + * @brief Enable the Debug Module during SLEEP mode + * @retval None + */ +void HAL_DBGMCU_EnableDBGSleepMode(void) +{ + SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); +} + +/** + * @brief Disable the Debug Module during SLEEP mode + * Note: On devices STM32F10xx8 and STM32F10xxB, + * STM32F101xC/D/E and STM32F103xC/D/E, + * STM32F101xF/G and STM32F103xF/G + * STM32F10xx4 and STM32F10xx6 + * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in + * debug mode (not accessible by the user software in normal mode). + * Refer to errata sheet of these devices for more details. + * @retval None + */ +void HAL_DBGMCU_DisableDBGSleepMode(void) +{ + CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_SLEEP); +} + +/** + * @brief Enable the Debug Module during STOP mode + * Note: On devices STM32F10xx8 and STM32F10xxB, + * STM32F101xC/D/E and STM32F103xC/D/E, + * STM32F101xF/G and STM32F103xF/G + * STM32F10xx4 and STM32F10xx6 + * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in + * debug mode (not accessible by the user software in normal mode). + * Refer to errata sheet of these devices for more details. + * Note: On all STM32F1 devices: + * If the system tick timer interrupt is enabled during the Stop mode + * debug (DBG_STOP bit set in the DBGMCU_CR register ), it will wakeup + * the system from Stop mode. + * Workaround: To debug the Stop mode, disable the system tick timer + * interrupt. + * Refer to errata sheet of these devices for more details. + * Note: On all STM32F1 devices: + * If the system tick timer interrupt is enabled during the Stop mode + * debug (DBG_STOP bit set in the DBGMCU_CR register ), it will wakeup + * the system from Stop mode. + * Workaround: To debug the Stop mode, disable the system tick timer + * interrupt. + * Refer to errata sheet of these devices for more details. + * @retval None + */ +void HAL_DBGMCU_EnableDBGStopMode(void) +{ + SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); +} + +/** + * @brief Disable the Debug Module during STOP mode + * Note: On devices STM32F10xx8 and STM32F10xxB, + * STM32F101xC/D/E and STM32F103xC/D/E, + * STM32F101xF/G and STM32F103xF/G + * STM32F10xx4 and STM32F10xx6 + * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in + * debug mode (not accessible by the user software in normal mode). + * Refer to errata sheet of these devices for more details. + * @retval None + */ +void HAL_DBGMCU_DisableDBGStopMode(void) +{ + CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STOP); +} + +/** + * @brief Enable the Debug Module during STANDBY mode + * Note: On devices STM32F10xx8 and STM32F10xxB, + * STM32F101xC/D/E and STM32F103xC/D/E, + * STM32F101xF/G and STM32F103xF/G + * STM32F10xx4 and STM32F10xx6 + * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in + * debug mode (not accessible by the user software in normal mode). + * Refer to errata sheet of these devices for more details. + * @retval None + */ +void HAL_DBGMCU_EnableDBGStandbyMode(void) +{ + SET_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); +} + +/** + * @brief Disable the Debug Module during STANDBY mode + * Note: On devices STM32F10xx8 and STM32F10xxB, + * STM32F101xC/D/E and STM32F103xC/D/E, + * STM32F101xF/G and STM32F103xF/G + * STM32F10xx4 and STM32F10xx6 + * Debug registers DBGMCU_IDCODE and DBGMCU_CR are accessible only in + * debug mode (not accessible by the user software in normal mode). + * Refer to errata sheet of these devices for more details. + * @retval None + */ +void HAL_DBGMCU_DisableDBGStandbyMode(void) +{ + CLEAR_BIT(DBGMCU->CR, DBGMCU_CR_DBG_STANDBY); +} + +/** + * @} + */ + +/** + * @} + */ + +#endif /* HAL_MODULE_ENABLED */ +/** + * @} + */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c index a89150a..e66ccee 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c @@ -1,505 +1,505 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_cortex.c - * @author MCD Application Team - * @brief CORTEX HAL module driver. - * This file provides firmware functions to manage the following - * functionalities of the CORTEX: - * + Initialization and de-initialization functions - * + Peripheral Control functions - * - @verbatim - ============================================================================== - ##### How to use this driver ##### - ============================================================================== - - [..] - *** How to configure Interrupts using CORTEX HAL driver *** - =========================================================== - [..] - This section provides functions allowing to configure the NVIC interrupts (IRQ). - The Cortex-M3 exceptions are managed by CMSIS functions. - - (#) Configure the NVIC Priority Grouping using HAL_NVIC_SetPriorityGrouping() - function according to the following table. - (#) Configure the priority of the selected IRQ Channels using HAL_NVIC_SetPriority(). - (#) Enable the selected IRQ Channels using HAL_NVIC_EnableIRQ(). - (#) please refer to programming manual for details in how to configure priority. - - -@- When the NVIC_PRIORITYGROUP_0 is selected, IRQ preemption is no more possible. - The pending IRQ priority will be managed only by the sub priority. - - -@- IRQ priority order (sorted by highest to lowest priority): - (+@) Lowest preemption priority - (+@) Lowest sub priority - (+@) Lowest hardware priority (IRQ number) - - [..] - *** How to configure Systick using CORTEX HAL driver *** - ======================================================== - [..] - Setup SysTick Timer for time base. - - (+) The HAL_SYSTICK_Config()function calls the SysTick_Config() function which - is a CMSIS function that: - (++) Configures the SysTick Reload register with value passed as function parameter. - (++) Configures the SysTick IRQ priority to the lowest value 0x0F. - (++) Resets the SysTick Counter register. - (++) Configures the SysTick Counter clock source to be Core Clock Source (HCLK). - (++) Enables the SysTick Interrupt. - (++) Starts the SysTick Counter. - - (+) You can change the SysTick Clock source to be HCLK_Div8 by calling the macro - __HAL_CORTEX_SYSTICKCLK_CONFIG(SYSTICK_CLKSOURCE_HCLK_DIV8) just after the - HAL_SYSTICK_Config() function call. The __HAL_CORTEX_SYSTICKCLK_CONFIG() macro is defined - inside the stm32f1xx_hal_cortex.h file. - - (+) You can change the SysTick IRQ priority by calling the - HAL_NVIC_SetPriority(SysTick_IRQn,...) function just after the HAL_SYSTICK_Config() function - call. The HAL_NVIC_SetPriority() call the NVIC_SetPriority() function which is a CMSIS function. - - (+) To adjust the SysTick time base, use the following formula: - - Reload Value = SysTick Counter Clock (Hz) x Desired Time base (s) - (++) Reload Value is the parameter to be passed for HAL_SYSTICK_Config() function - (++) Reload Value should not exceed 0xFFFFFF - - @endverbatim - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2017 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup CORTEX CORTEX - * @brief CORTEX HAL module driver - * @{ - */ - -#ifdef HAL_CORTEX_MODULE_ENABLED - -/* Private types -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private constants ---------------------------------------------------------*/ -/* Private macros ------------------------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ -/* Exported functions --------------------------------------------------------*/ - -/** @defgroup CORTEX_Exported_Functions CORTEX Exported Functions - * @{ - */ - - -/** @defgroup CORTEX_Exported_Functions_Group1 Initialization and de-initialization functions - * @brief Initialization and Configuration functions - * -@verbatim - ============================================================================== - ##### Initialization and de-initialization functions ##### - ============================================================================== - [..] - This section provides the CORTEX HAL driver functions allowing to configure Interrupts - Systick functionalities - -@endverbatim - * @{ - */ - - -/** - * @brief Sets the priority grouping field (preemption priority and subpriority) - * using the required unlock sequence. - * @param PriorityGroup: The priority grouping bits length. - * This parameter can be one of the following values: - * @arg NVIC_PRIORITYGROUP_0: 0 bits for preemption priority - * 4 bits for subpriority - * @arg NVIC_PRIORITYGROUP_1: 1 bits for preemption priority - * 3 bits for subpriority - * @arg NVIC_PRIORITYGROUP_2: 2 bits for preemption priority - * 2 bits for subpriority - * @arg NVIC_PRIORITYGROUP_3: 3 bits for preemption priority - * 1 bits for subpriority - * @arg NVIC_PRIORITYGROUP_4: 4 bits for preemption priority - * 0 bits for subpriority - * @note When the NVIC_PriorityGroup_0 is selected, IRQ preemption is no more possible. - * The pending IRQ priority will be managed only by the subpriority. - * @retval None - */ -void HAL_NVIC_SetPriorityGrouping(uint32_t PriorityGroup) -{ - /* Check the parameters */ - assert_param(IS_NVIC_PRIORITY_GROUP(PriorityGroup)); - - /* Set the PRIGROUP[10:8] bits according to the PriorityGroup parameter value */ - NVIC_SetPriorityGrouping(PriorityGroup); -} - -/** - * @brief Sets the priority of an interrupt. - * @param IRQn: External interrupt number. - * This parameter can be an enumerator of IRQn_Type enumeration - * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xx.h)) - * @param PreemptPriority: The preemption priority for the IRQn channel. - * This parameter can be a value between 0 and 15 - * A lower priority value indicates a higher priority - * @param SubPriority: the subpriority level for the IRQ channel. - * This parameter can be a value between 0 and 15 - * A lower priority value indicates a higher priority. - * @retval None - */ -void HAL_NVIC_SetPriority(IRQn_Type IRQn, uint32_t PreemptPriority, uint32_t SubPriority) -{ - uint32_t prioritygroup = 0x00U; - - /* Check the parameters */ - assert_param(IS_NVIC_SUB_PRIORITY(SubPriority)); - assert_param(IS_NVIC_PREEMPTION_PRIORITY(PreemptPriority)); - - prioritygroup = NVIC_GetPriorityGrouping(); - - NVIC_SetPriority(IRQn, NVIC_EncodePriority(prioritygroup, PreemptPriority, SubPriority)); -} - -/** - * @brief Enables a device specific interrupt in the NVIC interrupt controller. - * @note To configure interrupts priority correctly, the NVIC_PriorityGroupConfig() - * function should be called before. - * @param IRQn External interrupt number. - * This parameter can be an enumerator of IRQn_Type enumeration - * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) - * @retval None - */ -void HAL_NVIC_EnableIRQ(IRQn_Type IRQn) -{ - /* Check the parameters */ - assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); - - /* Enable interrupt */ - NVIC_EnableIRQ(IRQn); -} - -/** - * @brief Disables a device specific interrupt in the NVIC interrupt controller. - * @param IRQn External interrupt number. - * This parameter can be an enumerator of IRQn_Type enumeration - * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) - * @retval None - */ -void HAL_NVIC_DisableIRQ(IRQn_Type IRQn) -{ - /* Check the parameters */ - assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); - - /* Disable interrupt */ - NVIC_DisableIRQ(IRQn); -} - -/** - * @brief Initiates a system reset request to reset the MCU. - * @retval None - */ -void HAL_NVIC_SystemReset(void) -{ - /* System Reset */ - NVIC_SystemReset(); -} - -/** - * @brief Initializes the System Timer and its interrupt, and starts the System Tick Timer. - * Counter is in free running mode to generate periodic interrupts. - * @param TicksNumb: Specifies the ticks Number of ticks between two interrupts. - * @retval status: - 0 Function succeeded. - * - 1 Function failed. - */ -uint32_t HAL_SYSTICK_Config(uint32_t TicksNumb) -{ - return SysTick_Config(TicksNumb); -} -/** - * @} - */ - -/** @defgroup CORTEX_Exported_Functions_Group2 Peripheral Control functions - * @brief Cortex control functions - * -@verbatim - ============================================================================== - ##### Peripheral Control functions ##### - ============================================================================== - [..] - This subsection provides a set of functions allowing to control the CORTEX - (NVIC, SYSTICK, MPU) functionalities. - - -@endverbatim - * @{ - */ - -#if (__MPU_PRESENT == 1U) -/** - * @brief Disables the MPU - * @retval None - */ -void HAL_MPU_Disable(void) -{ - /* Make sure outstanding transfers are done */ - __DMB(); - - /* Disable fault exceptions */ - SCB->SHCSR &= ~SCB_SHCSR_MEMFAULTENA_Msk; - - /* Disable the MPU and clear the control register*/ - MPU->CTRL = 0U; -} - -/** - * @brief Enable the MPU. - * @param MPU_Control: Specifies the control mode of the MPU during hard fault, - * NMI, FAULTMASK and privileged access to the default memory - * This parameter can be one of the following values: - * @arg MPU_HFNMI_PRIVDEF_NONE - * @arg MPU_HARDFAULT_NMI - * @arg MPU_PRIVILEGED_DEFAULT - * @arg MPU_HFNMI_PRIVDEF - * @retval None - */ -void HAL_MPU_Enable(uint32_t MPU_Control) -{ - /* Enable the MPU */ - MPU->CTRL = MPU_Control | MPU_CTRL_ENABLE_Msk; - - /* Enable fault exceptions */ - SCB->SHCSR |= SCB_SHCSR_MEMFAULTENA_Msk; - - /* Ensure MPU setting take effects */ - __DSB(); - __ISB(); -} - -/** - * @brief Initializes and configures the Region and the memory to be protected. - * @param MPU_Init: Pointer to a MPU_Region_InitTypeDef structure that contains - * the initialization and configuration information. - * @retval None - */ -void HAL_MPU_ConfigRegion(MPU_Region_InitTypeDef *MPU_Init) -{ - /* Check the parameters */ - assert_param(IS_MPU_REGION_NUMBER(MPU_Init->Number)); - assert_param(IS_MPU_REGION_ENABLE(MPU_Init->Enable)); - - /* Set the Region number */ - MPU->RNR = MPU_Init->Number; - - if ((MPU_Init->Enable) != RESET) - { - /* Check the parameters */ - assert_param(IS_MPU_INSTRUCTION_ACCESS(MPU_Init->DisableExec)); - assert_param(IS_MPU_REGION_PERMISSION_ATTRIBUTE(MPU_Init->AccessPermission)); - assert_param(IS_MPU_TEX_LEVEL(MPU_Init->TypeExtField)); - assert_param(IS_MPU_ACCESS_SHAREABLE(MPU_Init->IsShareable)); - assert_param(IS_MPU_ACCESS_CACHEABLE(MPU_Init->IsCacheable)); - assert_param(IS_MPU_ACCESS_BUFFERABLE(MPU_Init->IsBufferable)); - assert_param(IS_MPU_SUB_REGION_DISABLE(MPU_Init->SubRegionDisable)); - assert_param(IS_MPU_REGION_SIZE(MPU_Init->Size)); - - MPU->RBAR = MPU_Init->BaseAddress; - MPU->RASR = ((uint32_t)MPU_Init->DisableExec << MPU_RASR_XN_Pos) | - ((uint32_t)MPU_Init->AccessPermission << MPU_RASR_AP_Pos) | - ((uint32_t)MPU_Init->TypeExtField << MPU_RASR_TEX_Pos) | - ((uint32_t)MPU_Init->IsShareable << MPU_RASR_S_Pos) | - ((uint32_t)MPU_Init->IsCacheable << MPU_RASR_C_Pos) | - ((uint32_t)MPU_Init->IsBufferable << MPU_RASR_B_Pos) | - ((uint32_t)MPU_Init->SubRegionDisable << MPU_RASR_SRD_Pos) | - ((uint32_t)MPU_Init->Size << MPU_RASR_SIZE_Pos) | - ((uint32_t)MPU_Init->Enable << MPU_RASR_ENABLE_Pos); - } - else - { - MPU->RBAR = 0x00U; - MPU->RASR = 0x00U; - } -} -#endif /* __MPU_PRESENT */ - -/** - * @brief Gets the priority grouping field from the NVIC Interrupt Controller. - * @retval Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field) - */ -uint32_t HAL_NVIC_GetPriorityGrouping(void) -{ - /* Get the PRIGROUP[10:8] field value */ - return NVIC_GetPriorityGrouping(); -} - -/** - * @brief Gets the priority of an interrupt. - * @param IRQn: External interrupt number. - * This parameter can be an enumerator of IRQn_Type enumeration - * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) - * @param PriorityGroup: the priority grouping bits length. - * This parameter can be one of the following values: - * @arg NVIC_PRIORITYGROUP_0: 0 bits for preemption priority - * 4 bits for subpriority - * @arg NVIC_PRIORITYGROUP_1: 1 bits for preemption priority - * 3 bits for subpriority - * @arg NVIC_PRIORITYGROUP_2: 2 bits for preemption priority - * 2 bits for subpriority - * @arg NVIC_PRIORITYGROUP_3: 3 bits for preemption priority - * 1 bits for subpriority - * @arg NVIC_PRIORITYGROUP_4: 4 bits for preemption priority - * 0 bits for subpriority - * @param pPreemptPriority: Pointer on the Preemptive priority value (starting from 0). - * @param pSubPriority: Pointer on the Subpriority value (starting from 0). - * @retval None - */ -void HAL_NVIC_GetPriority(IRQn_Type IRQn, uint32_t PriorityGroup, uint32_t *pPreemptPriority, uint32_t *pSubPriority) -{ - /* Check the parameters */ - assert_param(IS_NVIC_PRIORITY_GROUP(PriorityGroup)); - /* Get priority for Cortex-M system or device specific interrupts */ - NVIC_DecodePriority(NVIC_GetPriority(IRQn), PriorityGroup, pPreemptPriority, pSubPriority); -} - -/** - * @brief Sets Pending bit of an external interrupt. - * @param IRQn External interrupt number - * This parameter can be an enumerator of IRQn_Type enumeration - * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) - * @retval None - */ -void HAL_NVIC_SetPendingIRQ(IRQn_Type IRQn) -{ - /* Check the parameters */ - assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); - - /* Set interrupt pending */ - NVIC_SetPendingIRQ(IRQn); -} - -/** - * @brief Gets Pending Interrupt (reads the pending register in the NVIC - * and returns the pending bit for the specified interrupt). - * @param IRQn External interrupt number. - * This parameter can be an enumerator of IRQn_Type enumeration - * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) - * @retval status: - 0 Interrupt status is not pending. - * - 1 Interrupt status is pending. - */ -uint32_t HAL_NVIC_GetPendingIRQ(IRQn_Type IRQn) -{ - /* Check the parameters */ - assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); - - /* Return 1 if pending else 0 */ - return NVIC_GetPendingIRQ(IRQn); -} - -/** - * @brief Clears the pending bit of an external interrupt. - * @param IRQn External interrupt number. - * This parameter can be an enumerator of IRQn_Type enumeration - * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) - * @retval None - */ -void HAL_NVIC_ClearPendingIRQ(IRQn_Type IRQn) -{ - /* Check the parameters */ - assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); - - /* Clear pending interrupt */ - NVIC_ClearPendingIRQ(IRQn); -} - -/** - * @brief Gets active interrupt ( reads the active register in NVIC and returns the active bit). - * @param IRQn External interrupt number - * This parameter can be an enumerator of IRQn_Type enumeration - * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) - * @retval status: - 0 Interrupt status is not pending. - * - 1 Interrupt status is pending. - */ -uint32_t HAL_NVIC_GetActive(IRQn_Type IRQn) -{ - /* Check the parameters */ - assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); - - /* Return 1 if active else 0 */ - return NVIC_GetActive(IRQn); -} - -/** - * @brief Configures the SysTick clock source. - * @param CLKSource: specifies the SysTick clock source. - * This parameter can be one of the following values: - * @arg SYSTICK_CLKSOURCE_HCLK_DIV8: AHB clock divided by 8 selected as SysTick clock source. - * @arg SYSTICK_CLKSOURCE_HCLK: AHB clock selected as SysTick clock source. - * @retval None - */ -void HAL_SYSTICK_CLKSourceConfig(uint32_t CLKSource) -{ - /* Check the parameters */ - assert_param(IS_SYSTICK_CLK_SOURCE(CLKSource)); - if (CLKSource == SYSTICK_CLKSOURCE_HCLK) - { - SysTick->CTRL |= SYSTICK_CLKSOURCE_HCLK; - } - else - { - SysTick->CTRL &= ~SYSTICK_CLKSOURCE_HCLK; - } -} - -/** - * @brief This function handles SYSTICK interrupt request. - * @retval None - */ -void HAL_SYSTICK_IRQHandler(void) -{ - HAL_SYSTICK_Callback(); -} - -/** - * @brief SYSTICK callback. - * @retval None - */ -__weak void HAL_SYSTICK_Callback(void) -{ - /* NOTE : This function Should not be modified, when the callback is needed, - the HAL_SYSTICK_Callback could be implemented in the user file - */ -} - -/** - * @} - */ - -/** - * @} - */ - -#endif /* HAL_CORTEX_MODULE_ENABLED */ -/** - * @} - */ - -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_cortex.c + * @author MCD Application Team + * @brief CORTEX HAL module driver. + * This file provides firmware functions to manage the following + * functionalities of the CORTEX: + * + Initialization and de-initialization functions + * + Peripheral Control functions + * + @verbatim + ============================================================================== + ##### How to use this driver ##### + ============================================================================== + + [..] + *** How to configure Interrupts using CORTEX HAL driver *** + =========================================================== + [..] + This section provides functions allowing to configure the NVIC interrupts (IRQ). + The Cortex-M3 exceptions are managed by CMSIS functions. + + (#) Configure the NVIC Priority Grouping using HAL_NVIC_SetPriorityGrouping() + function according to the following table. + (#) Configure the priority of the selected IRQ Channels using HAL_NVIC_SetPriority(). + (#) Enable the selected IRQ Channels using HAL_NVIC_EnableIRQ(). + (#) please refer to programming manual for details in how to configure priority. + + -@- When the NVIC_PRIORITYGROUP_0 is selected, IRQ preemption is no more possible. + The pending IRQ priority will be managed only by the sub priority. + + -@- IRQ priority order (sorted by highest to lowest priority): + (+@) Lowest preemption priority + (+@) Lowest sub priority + (+@) Lowest hardware priority (IRQ number) + + [..] + *** How to configure Systick using CORTEX HAL driver *** + ======================================================== + [..] + Setup SysTick Timer for time base. + + (+) The HAL_SYSTICK_Config()function calls the SysTick_Config() function which + is a CMSIS function that: + (++) Configures the SysTick Reload register with value passed as function parameter. + (++) Configures the SysTick IRQ priority to the lowest value 0x0F. + (++) Resets the SysTick Counter register. + (++) Configures the SysTick Counter clock source to be Core Clock Source (HCLK). + (++) Enables the SysTick Interrupt. + (++) Starts the SysTick Counter. + + (+) You can change the SysTick Clock source to be HCLK_Div8 by calling the macro + __HAL_CORTEX_SYSTICKCLK_CONFIG(SYSTICK_CLKSOURCE_HCLK_DIV8) just after the + HAL_SYSTICK_Config() function call. The __HAL_CORTEX_SYSTICKCLK_CONFIG() macro is defined + inside the stm32f1xx_hal_cortex.h file. + + (+) You can change the SysTick IRQ priority by calling the + HAL_NVIC_SetPriority(SysTick_IRQn,...) function just after the HAL_SYSTICK_Config() function + call. The HAL_NVIC_SetPriority() call the NVIC_SetPriority() function which is a CMSIS function. + + (+) To adjust the SysTick time base, use the following formula: + + Reload Value = SysTick Counter Clock (Hz) x Desired Time base (s) + (++) Reload Value is the parameter to be passed for HAL_SYSTICK_Config() function + (++) Reload Value should not exceed 0xFFFFFF + + @endverbatim + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2017 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup CORTEX CORTEX + * @brief CORTEX HAL module driver + * @{ + */ + +#ifdef HAL_CORTEX_MODULE_ENABLED + +/* Private types -------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ +/* Private constants ---------------------------------------------------------*/ +/* Private macros ------------------------------------------------------------*/ +/* Private functions ---------------------------------------------------------*/ +/* Exported functions --------------------------------------------------------*/ + +/** @defgroup CORTEX_Exported_Functions CORTEX Exported Functions + * @{ + */ + + +/** @defgroup CORTEX_Exported_Functions_Group1 Initialization and de-initialization functions + * @brief Initialization and Configuration functions + * +@verbatim + ============================================================================== + ##### Initialization and de-initialization functions ##### + ============================================================================== + [..] + This section provides the CORTEX HAL driver functions allowing to configure Interrupts + Systick functionalities + +@endverbatim + * @{ + */ + + +/** + * @brief Sets the priority grouping field (preemption priority and subpriority) + * using the required unlock sequence. + * @param PriorityGroup: The priority grouping bits length. + * This parameter can be one of the following values: + * @arg NVIC_PRIORITYGROUP_0: 0 bits for preemption priority + * 4 bits for subpriority + * @arg NVIC_PRIORITYGROUP_1: 1 bits for preemption priority + * 3 bits for subpriority + * @arg NVIC_PRIORITYGROUP_2: 2 bits for preemption priority + * 2 bits for subpriority + * @arg NVIC_PRIORITYGROUP_3: 3 bits for preemption priority + * 1 bits for subpriority + * @arg NVIC_PRIORITYGROUP_4: 4 bits for preemption priority + * 0 bits for subpriority + * @note When the NVIC_PriorityGroup_0 is selected, IRQ preemption is no more possible. + * The pending IRQ priority will be managed only by the subpriority. + * @retval None + */ +void HAL_NVIC_SetPriorityGrouping(uint32_t PriorityGroup) +{ + /* Check the parameters */ + assert_param(IS_NVIC_PRIORITY_GROUP(PriorityGroup)); + + /* Set the PRIGROUP[10:8] bits according to the PriorityGroup parameter value */ + NVIC_SetPriorityGrouping(PriorityGroup); +} + +/** + * @brief Sets the priority of an interrupt. + * @param IRQn: External interrupt number. + * This parameter can be an enumerator of IRQn_Type enumeration + * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xx.h)) + * @param PreemptPriority: The preemption priority for the IRQn channel. + * This parameter can be a value between 0 and 15 + * A lower priority value indicates a higher priority + * @param SubPriority: the subpriority level for the IRQ channel. + * This parameter can be a value between 0 and 15 + * A lower priority value indicates a higher priority. + * @retval None + */ +void HAL_NVIC_SetPriority(IRQn_Type IRQn, uint32_t PreemptPriority, uint32_t SubPriority) +{ + uint32_t prioritygroup = 0x00U; + + /* Check the parameters */ + assert_param(IS_NVIC_SUB_PRIORITY(SubPriority)); + assert_param(IS_NVIC_PREEMPTION_PRIORITY(PreemptPriority)); + + prioritygroup = NVIC_GetPriorityGrouping(); + + NVIC_SetPriority(IRQn, NVIC_EncodePriority(prioritygroup, PreemptPriority, SubPriority)); +} + +/** + * @brief Enables a device specific interrupt in the NVIC interrupt controller. + * @note To configure interrupts priority correctly, the NVIC_PriorityGroupConfig() + * function should be called before. + * @param IRQn External interrupt number. + * This parameter can be an enumerator of IRQn_Type enumeration + * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) + * @retval None + */ +void HAL_NVIC_EnableIRQ(IRQn_Type IRQn) +{ + /* Check the parameters */ + assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); + + /* Enable interrupt */ + NVIC_EnableIRQ(IRQn); +} + +/** + * @brief Disables a device specific interrupt in the NVIC interrupt controller. + * @param IRQn External interrupt number. + * This parameter can be an enumerator of IRQn_Type enumeration + * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) + * @retval None + */ +void HAL_NVIC_DisableIRQ(IRQn_Type IRQn) +{ + /* Check the parameters */ + assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); + + /* Disable interrupt */ + NVIC_DisableIRQ(IRQn); +} + +/** + * @brief Initiates a system reset request to reset the MCU. + * @retval None + */ +void HAL_NVIC_SystemReset(void) +{ + /* System Reset */ + NVIC_SystemReset(); +} + +/** + * @brief Initializes the System Timer and its interrupt, and starts the System Tick Timer. + * Counter is in free running mode to generate periodic interrupts. + * @param TicksNumb: Specifies the ticks Number of ticks between two interrupts. + * @retval status: - 0 Function succeeded. + * - 1 Function failed. + */ +uint32_t HAL_SYSTICK_Config(uint32_t TicksNumb) +{ + return SysTick_Config(TicksNumb); +} +/** + * @} + */ + +/** @defgroup CORTEX_Exported_Functions_Group2 Peripheral Control functions + * @brief Cortex control functions + * +@verbatim + ============================================================================== + ##### Peripheral Control functions ##### + ============================================================================== + [..] + This subsection provides a set of functions allowing to control the CORTEX + (NVIC, SYSTICK, MPU) functionalities. + + +@endverbatim + * @{ + */ + +#if (__MPU_PRESENT == 1U) +/** + * @brief Disables the MPU + * @retval None + */ +void HAL_MPU_Disable(void) +{ + /* Make sure outstanding transfers are done */ + __DMB(); + + /* Disable fault exceptions */ + SCB->SHCSR &= ~SCB_SHCSR_MEMFAULTENA_Msk; + + /* Disable the MPU and clear the control register*/ + MPU->CTRL = 0U; +} + +/** + * @brief Enable the MPU. + * @param MPU_Control: Specifies the control mode of the MPU during hard fault, + * NMI, FAULTMASK and privileged access to the default memory + * This parameter can be one of the following values: + * @arg MPU_HFNMI_PRIVDEF_NONE + * @arg MPU_HARDFAULT_NMI + * @arg MPU_PRIVILEGED_DEFAULT + * @arg MPU_HFNMI_PRIVDEF + * @retval None + */ +void HAL_MPU_Enable(uint32_t MPU_Control) +{ + /* Enable the MPU */ + MPU->CTRL = MPU_Control | MPU_CTRL_ENABLE_Msk; + + /* Enable fault exceptions */ + SCB->SHCSR |= SCB_SHCSR_MEMFAULTENA_Msk; + + /* Ensure MPU setting take effects */ + __DSB(); + __ISB(); +} + +/** + * @brief Initializes and configures the Region and the memory to be protected. + * @param MPU_Init: Pointer to a MPU_Region_InitTypeDef structure that contains + * the initialization and configuration information. + * @retval None + */ +void HAL_MPU_ConfigRegion(MPU_Region_InitTypeDef *MPU_Init) +{ + /* Check the parameters */ + assert_param(IS_MPU_REGION_NUMBER(MPU_Init->Number)); + assert_param(IS_MPU_REGION_ENABLE(MPU_Init->Enable)); + + /* Set the Region number */ + MPU->RNR = MPU_Init->Number; + + if ((MPU_Init->Enable) != RESET) + { + /* Check the parameters */ + assert_param(IS_MPU_INSTRUCTION_ACCESS(MPU_Init->DisableExec)); + assert_param(IS_MPU_REGION_PERMISSION_ATTRIBUTE(MPU_Init->AccessPermission)); + assert_param(IS_MPU_TEX_LEVEL(MPU_Init->TypeExtField)); + assert_param(IS_MPU_ACCESS_SHAREABLE(MPU_Init->IsShareable)); + assert_param(IS_MPU_ACCESS_CACHEABLE(MPU_Init->IsCacheable)); + assert_param(IS_MPU_ACCESS_BUFFERABLE(MPU_Init->IsBufferable)); + assert_param(IS_MPU_SUB_REGION_DISABLE(MPU_Init->SubRegionDisable)); + assert_param(IS_MPU_REGION_SIZE(MPU_Init->Size)); + + MPU->RBAR = MPU_Init->BaseAddress; + MPU->RASR = ((uint32_t)MPU_Init->DisableExec << MPU_RASR_XN_Pos) | + ((uint32_t)MPU_Init->AccessPermission << MPU_RASR_AP_Pos) | + ((uint32_t)MPU_Init->TypeExtField << MPU_RASR_TEX_Pos) | + ((uint32_t)MPU_Init->IsShareable << MPU_RASR_S_Pos) | + ((uint32_t)MPU_Init->IsCacheable << MPU_RASR_C_Pos) | + ((uint32_t)MPU_Init->IsBufferable << MPU_RASR_B_Pos) | + ((uint32_t)MPU_Init->SubRegionDisable << MPU_RASR_SRD_Pos) | + ((uint32_t)MPU_Init->Size << MPU_RASR_SIZE_Pos) | + ((uint32_t)MPU_Init->Enable << MPU_RASR_ENABLE_Pos); + } + else + { + MPU->RBAR = 0x00U; + MPU->RASR = 0x00U; + } +} +#endif /* __MPU_PRESENT */ + +/** + * @brief Gets the priority grouping field from the NVIC Interrupt Controller. + * @retval Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field) + */ +uint32_t HAL_NVIC_GetPriorityGrouping(void) +{ + /* Get the PRIGROUP[10:8] field value */ + return NVIC_GetPriorityGrouping(); +} + +/** + * @brief Gets the priority of an interrupt. + * @param IRQn: External interrupt number. + * This parameter can be an enumerator of IRQn_Type enumeration + * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) + * @param PriorityGroup: the priority grouping bits length. + * This parameter can be one of the following values: + * @arg NVIC_PRIORITYGROUP_0: 0 bits for preemption priority + * 4 bits for subpriority + * @arg NVIC_PRIORITYGROUP_1: 1 bits for preemption priority + * 3 bits for subpriority + * @arg NVIC_PRIORITYGROUP_2: 2 bits for preemption priority + * 2 bits for subpriority + * @arg NVIC_PRIORITYGROUP_3: 3 bits for preemption priority + * 1 bits for subpriority + * @arg NVIC_PRIORITYGROUP_4: 4 bits for preemption priority + * 0 bits for subpriority + * @param pPreemptPriority: Pointer on the Preemptive priority value (starting from 0). + * @param pSubPriority: Pointer on the Subpriority value (starting from 0). + * @retval None + */ +void HAL_NVIC_GetPriority(IRQn_Type IRQn, uint32_t PriorityGroup, uint32_t *pPreemptPriority, uint32_t *pSubPriority) +{ + /* Check the parameters */ + assert_param(IS_NVIC_PRIORITY_GROUP(PriorityGroup)); + /* Get priority for Cortex-M system or device specific interrupts */ + NVIC_DecodePriority(NVIC_GetPriority(IRQn), PriorityGroup, pPreemptPriority, pSubPriority); +} + +/** + * @brief Sets Pending bit of an external interrupt. + * @param IRQn External interrupt number + * This parameter can be an enumerator of IRQn_Type enumeration + * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) + * @retval None + */ +void HAL_NVIC_SetPendingIRQ(IRQn_Type IRQn) +{ + /* Check the parameters */ + assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); + + /* Set interrupt pending */ + NVIC_SetPendingIRQ(IRQn); +} + +/** + * @brief Gets Pending Interrupt (reads the pending register in the NVIC + * and returns the pending bit for the specified interrupt). + * @param IRQn External interrupt number. + * This parameter can be an enumerator of IRQn_Type enumeration + * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) + * @retval status: - 0 Interrupt status is not pending. + * - 1 Interrupt status is pending. + */ +uint32_t HAL_NVIC_GetPendingIRQ(IRQn_Type IRQn) +{ + /* Check the parameters */ + assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); + + /* Return 1 if pending else 0 */ + return NVIC_GetPendingIRQ(IRQn); +} + +/** + * @brief Clears the pending bit of an external interrupt. + * @param IRQn External interrupt number. + * This parameter can be an enumerator of IRQn_Type enumeration + * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) + * @retval None + */ +void HAL_NVIC_ClearPendingIRQ(IRQn_Type IRQn) +{ + /* Check the parameters */ + assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); + + /* Clear pending interrupt */ + NVIC_ClearPendingIRQ(IRQn); +} + +/** + * @brief Gets active interrupt ( reads the active register in NVIC and returns the active bit). + * @param IRQn External interrupt number + * This parameter can be an enumerator of IRQn_Type enumeration + * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSIS device file (stm32f10xxx.h)) + * @retval status: - 0 Interrupt status is not pending. + * - 1 Interrupt status is pending. + */ +uint32_t HAL_NVIC_GetActive(IRQn_Type IRQn) +{ + /* Check the parameters */ + assert_param(IS_NVIC_DEVICE_IRQ(IRQn)); + + /* Return 1 if active else 0 */ + return NVIC_GetActive(IRQn); +} + +/** + * @brief Configures the SysTick clock source. + * @param CLKSource: specifies the SysTick clock source. + * This parameter can be one of the following values: + * @arg SYSTICK_CLKSOURCE_HCLK_DIV8: AHB clock divided by 8 selected as SysTick clock source. + * @arg SYSTICK_CLKSOURCE_HCLK: AHB clock selected as SysTick clock source. + * @retval None + */ +void HAL_SYSTICK_CLKSourceConfig(uint32_t CLKSource) +{ + /* Check the parameters */ + assert_param(IS_SYSTICK_CLK_SOURCE(CLKSource)); + if (CLKSource == SYSTICK_CLKSOURCE_HCLK) + { + SysTick->CTRL |= SYSTICK_CLKSOURCE_HCLK; + } + else + { + SysTick->CTRL &= ~SYSTICK_CLKSOURCE_HCLK; + } +} + +/** + * @brief This function handles SYSTICK interrupt request. + * @retval None + */ +void HAL_SYSTICK_IRQHandler(void) +{ + HAL_SYSTICK_Callback(); +} + +/** + * @brief SYSTICK callback. + * @retval None + */ +__weak void HAL_SYSTICK_Callback(void) +{ + /* NOTE : This function Should not be modified, when the callback is needed, + the HAL_SYSTICK_Callback could be implemented in the user file + */ +} + +/** + * @} + */ + +/** + * @} + */ + +#endif /* HAL_CORTEX_MODULE_ENABLED */ +/** + * @} + */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c similarity index 96% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c index c9bc061..62a1d28 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c @@ -1,899 +1,899 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_dma.c - * @author MCD Application Team - * @brief DMA HAL module driver. - * This file provides firmware functions to manage the following - * functionalities of the Direct Memory Access (DMA) peripheral: - * + Initialization and de-initialization functions - * + IO operation functions - * + Peripheral State and errors functions - @verbatim - ============================================================================== - ##### How to use this driver ##### - ============================================================================== - [..] - (#) Enable and configure the peripheral to be connected to the DMA Channel - (except for internal SRAM / FLASH memories: no initialization is - necessary). Please refer to the Reference manual for connection between peripherals - and DMA requests. - - (#) For a given Channel, program the required configuration through the following parameters: - Channel request, Transfer Direction, Source and Destination data formats, - Circular or Normal mode, Channel Priority level, Source and Destination Increment mode - using HAL_DMA_Init() function. - - (#) Use HAL_DMA_GetState() function to return the DMA state and HAL_DMA_GetError() in case of error - detection. - - (#) Use HAL_DMA_Abort() function to abort the current transfer - - -@- In Memory-to-Memory transfer mode, Circular mode is not allowed. - *** Polling mode IO operation *** - ================================= - [..] - (+) Use HAL_DMA_Start() to start DMA transfer after the configuration of Source - address and destination address and the Length of data to be transferred - (+) Use HAL_DMA_PollForTransfer() to poll for the end of current transfer, in this - case a fixed Timeout can be configured by User depending from his application. - - *** Interrupt mode IO operation *** - =================================== - [..] - (+) Configure the DMA interrupt priority using HAL_NVIC_SetPriority() - (+) Enable the DMA IRQ handler using HAL_NVIC_EnableIRQ() - (+) Use HAL_DMA_Start_IT() to start DMA transfer after the configuration of - Source address and destination address and the Length of data to be transferred. - In this case the DMA interrupt is configured - (+) Use HAL_DMA_IRQHandler() called under DMA_IRQHandler() Interrupt subroutine - (+) At the end of data transfer HAL_DMA_IRQHandler() function is executed and user can - add his own function by customization of function pointer XferCpltCallback and - XferErrorCallback (i.e. a member of DMA handle structure). - - *** DMA HAL driver macros list *** - ============================================= - [..] - Below the list of most used macros in DMA HAL driver. - - (+) __HAL_DMA_ENABLE: Enable the specified DMA Channel. - (+) __HAL_DMA_DISABLE: Disable the specified DMA Channel. - (+) __HAL_DMA_GET_FLAG: Get the DMA Channel pending flags. - (+) __HAL_DMA_CLEAR_FLAG: Clear the DMA Channel pending flags. - (+) __HAL_DMA_ENABLE_IT: Enable the specified DMA Channel interrupts. - (+) __HAL_DMA_DISABLE_IT: Disable the specified DMA Channel interrupts. - (+) __HAL_DMA_GET_IT_SOURCE: Check whether the specified DMA Channel interrupt has occurred or not. - - [..] - (@) You can refer to the DMA HAL driver header file for more useful macros - - @endverbatim - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup DMA DMA - * @brief DMA HAL module driver - * @{ - */ - -#ifdef HAL_DMA_MODULE_ENABLED - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/** @defgroup DMA_Private_Functions DMA Private Functions - * @{ - */ -static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength); -/** - * @} - */ - -/* Exported functions ---------------------------------------------------------*/ - -/** @defgroup DMA_Exported_Functions DMA Exported Functions - * @{ - */ - -/** @defgroup DMA_Exported_Functions_Group1 Initialization and de-initialization functions - * @brief Initialization and de-initialization functions - * -@verbatim - =============================================================================== - ##### Initialization and de-initialization functions ##### - =============================================================================== - [..] - This section provides functions allowing to initialize the DMA Channel source - and destination addresses, incrementation and data sizes, transfer direction, - circular/normal mode selection, memory-to-memory mode selection and Channel priority value. - [..] - The HAL_DMA_Init() function follows the DMA configuration procedures as described in - reference manual. - -@endverbatim - * @{ - */ - -/** - * @brief Initialize the DMA according to the specified - * parameters in the DMA_InitTypeDef and initialize the associated handle. - * @param hdma: Pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_DMA_Init(DMA_HandleTypeDef *hdma) -{ - uint32_t tmp = 0U; - - /* Check the DMA handle allocation */ - if(hdma == NULL) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_DMA_ALL_INSTANCE(hdma->Instance)); - assert_param(IS_DMA_DIRECTION(hdma->Init.Direction)); - assert_param(IS_DMA_PERIPHERAL_INC_STATE(hdma->Init.PeriphInc)); - assert_param(IS_DMA_MEMORY_INC_STATE(hdma->Init.MemInc)); - assert_param(IS_DMA_PERIPHERAL_DATA_SIZE(hdma->Init.PeriphDataAlignment)); - assert_param(IS_DMA_MEMORY_DATA_SIZE(hdma->Init.MemDataAlignment)); - assert_param(IS_DMA_MODE(hdma->Init.Mode)); - assert_param(IS_DMA_PRIORITY(hdma->Init.Priority)); - -#if defined (DMA2) - /* calculation of the channel index */ - if ((uint32_t)(hdma->Instance) < (uint32_t)(DMA2_Channel1)) - { - /* DMA1 */ - hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Channel2 - (uint32_t)DMA1_Channel1)) << 2; - hdma->DmaBaseAddress = DMA1; - } - else - { - /* DMA2 */ - hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA2_Channel1) / ((uint32_t)DMA2_Channel2 - (uint32_t)DMA2_Channel1)) << 2; - hdma->DmaBaseAddress = DMA2; - } -#else - /* DMA1 */ - hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Channel2 - (uint32_t)DMA1_Channel1)) << 2; - hdma->DmaBaseAddress = DMA1; -#endif /* DMA2 */ - - /* Change DMA peripheral state */ - hdma->State = HAL_DMA_STATE_BUSY; - - /* Get the CR register value */ - tmp = hdma->Instance->CCR; - - /* Clear PL, MSIZE, PSIZE, MINC, PINC, CIRC and DIR bits */ - tmp &= ((uint32_t)~(DMA_CCR_PL | DMA_CCR_MSIZE | DMA_CCR_PSIZE | \ - DMA_CCR_MINC | DMA_CCR_PINC | DMA_CCR_CIRC | \ - DMA_CCR_DIR)); - - /* Prepare the DMA Channel configuration */ - tmp |= hdma->Init.Direction | - hdma->Init.PeriphInc | hdma->Init.MemInc | - hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | - hdma->Init.Mode | hdma->Init.Priority; - - /* Write to DMA Channel CR register */ - hdma->Instance->CCR = tmp; - - /* Initialise the error code */ - hdma->ErrorCode = HAL_DMA_ERROR_NONE; - - /* Initialize the DMA state*/ - hdma->State = HAL_DMA_STATE_READY; - /* Allocate lock resource and initialize it */ - hdma->Lock = HAL_UNLOCKED; - - return HAL_OK; -} - -/** - * @brief DeInitialize the DMA peripheral. - * @param hdma: pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_DMA_DeInit(DMA_HandleTypeDef *hdma) -{ - /* Check the DMA handle allocation */ - if(hdma == NULL) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_DMA_ALL_INSTANCE(hdma->Instance)); - - /* Disable the selected DMA Channelx */ - __HAL_DMA_DISABLE(hdma); - - /* Reset DMA Channel control register */ - hdma->Instance->CCR = 0U; - - /* Reset DMA Channel Number of Data to Transfer register */ - hdma->Instance->CNDTR = 0U; - - /* Reset DMA Channel peripheral address register */ - hdma->Instance->CPAR = 0U; - - /* Reset DMA Channel memory address register */ - hdma->Instance->CMAR = 0U; - -#if defined (DMA2) - /* calculation of the channel index */ - if ((uint32_t)(hdma->Instance) < (uint32_t)(DMA2_Channel1)) - { - /* DMA1 */ - hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Channel2 - (uint32_t)DMA1_Channel1)) << 2; - hdma->DmaBaseAddress = DMA1; - } - else - { - /* DMA2 */ - hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA2_Channel1) / ((uint32_t)DMA2_Channel2 - (uint32_t)DMA2_Channel1)) << 2; - hdma->DmaBaseAddress = DMA2; - } -#else - /* DMA1 */ - hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Channel2 - (uint32_t)DMA1_Channel1)) << 2; - hdma->DmaBaseAddress = DMA1; -#endif /* DMA2 */ - - /* Clear all flags */ - hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << (hdma->ChannelIndex)); - - /* Clean all callbacks */ - hdma->XferCpltCallback = NULL; - hdma->XferHalfCpltCallback = NULL; - hdma->XferErrorCallback = NULL; - hdma->XferAbortCallback = NULL; - - /* Reset the error code */ - hdma->ErrorCode = HAL_DMA_ERROR_NONE; - - /* Reset the DMA state */ - hdma->State = HAL_DMA_STATE_RESET; - - /* Release Lock */ - __HAL_UNLOCK(hdma); - - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup DMA_Exported_Functions_Group2 Input and Output operation functions - * @brief Input and Output operation functions - * -@verbatim - =============================================================================== - ##### IO operation functions ##### - =============================================================================== - [..] This section provides functions allowing to: - (+) Configure the source, destination address and data length and Start DMA transfer - (+) Configure the source, destination address and data length and - Start DMA transfer with interrupt - (+) Abort DMA transfer - (+) Poll for transfer complete - (+) Handle DMA interrupt request - -@endverbatim - * @{ - */ - -/** - * @brief Start the DMA Transfer. - * @param hdma: pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @param SrcAddress: The source memory Buffer address - * @param DstAddress: The destination memory Buffer address - * @param DataLength: The length of data to be transferred from source to destination - * @retval HAL status - */ -HAL_StatusTypeDef HAL_DMA_Start(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength) -{ - HAL_StatusTypeDef status = HAL_OK; - - /* Check the parameters */ - assert_param(IS_DMA_BUFFER_SIZE(DataLength)); - - /* Process locked */ - __HAL_LOCK(hdma); - - if(HAL_DMA_STATE_READY == hdma->State) - { - /* Change DMA peripheral state */ - hdma->State = HAL_DMA_STATE_BUSY; - hdma->ErrorCode = HAL_DMA_ERROR_NONE; - - /* Disable the peripheral */ - __HAL_DMA_DISABLE(hdma); - - /* Configure the source, destination address and the data length & clear flags*/ - DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength); - - /* Enable the Peripheral */ - __HAL_DMA_ENABLE(hdma); - } - else - { - /* Process Unlocked */ - __HAL_UNLOCK(hdma); - status = HAL_BUSY; - } - return status; -} - -/** - * @brief Start the DMA Transfer with interrupt enabled. - * @param hdma: pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @param SrcAddress: The source memory Buffer address - * @param DstAddress: The destination memory Buffer address - * @param DataLength: The length of data to be transferred from source to destination - * @retval HAL status - */ -HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength) -{ - HAL_StatusTypeDef status = HAL_OK; - - /* Check the parameters */ - assert_param(IS_DMA_BUFFER_SIZE(DataLength)); - - /* Process locked */ - __HAL_LOCK(hdma); - - if(HAL_DMA_STATE_READY == hdma->State) - { - /* Change DMA peripheral state */ - hdma->State = HAL_DMA_STATE_BUSY; - hdma->ErrorCode = HAL_DMA_ERROR_NONE; - - /* Disable the peripheral */ - __HAL_DMA_DISABLE(hdma); - - /* Configure the source, destination address and the data length & clear flags*/ - DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength); - - /* Enable the transfer complete interrupt */ - /* Enable the transfer Error interrupt */ - if(NULL != hdma->XferHalfCpltCallback) - { - /* Enable the Half transfer complete interrupt as well */ - __HAL_DMA_ENABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); - } - else - { - __HAL_DMA_DISABLE_IT(hdma, DMA_IT_HT); - __HAL_DMA_ENABLE_IT(hdma, (DMA_IT_TC | DMA_IT_TE)); - } - /* Enable the Peripheral */ - __HAL_DMA_ENABLE(hdma); - } - else - { - /* Process Unlocked */ - __HAL_UNLOCK(hdma); - - /* Remain BUSY */ - status = HAL_BUSY; - } - return status; -} - -/** - * @brief Abort the DMA Transfer. - * @param hdma: pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_DMA_Abort(DMA_HandleTypeDef *hdma) -{ - HAL_StatusTypeDef status = HAL_OK; - - if(hdma->State != HAL_DMA_STATE_BUSY) - { - /* no transfer ongoing */ - hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; - - /* Process Unlocked */ - __HAL_UNLOCK(hdma); - - return HAL_ERROR; - } - else - - { - /* Disable DMA IT */ - __HAL_DMA_DISABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); - - /* Disable the channel */ - __HAL_DMA_DISABLE(hdma); - - /* Clear all flags */ - hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); - } - /* Change the DMA state */ - hdma->State = HAL_DMA_STATE_READY; - - /* Process Unlocked */ - __HAL_UNLOCK(hdma); - - return status; -} - -/** - * @brief Aborts the DMA Transfer in Interrupt mode. - * @param hdma : pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_DMA_Abort_IT(DMA_HandleTypeDef *hdma) -{ - HAL_StatusTypeDef status = HAL_OK; - - if(HAL_DMA_STATE_BUSY != hdma->State) - { - /* no transfer ongoing */ - hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; - - status = HAL_ERROR; - } - else - { - /* Disable DMA IT */ - __HAL_DMA_DISABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); - - /* Disable the channel */ - __HAL_DMA_DISABLE(hdma); - - /* Clear all flags */ - __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_GI_FLAG_INDEX(hdma)); - - /* Change the DMA state */ - hdma->State = HAL_DMA_STATE_READY; - - /* Process Unlocked */ - __HAL_UNLOCK(hdma); - - /* Call User Abort callback */ - if(hdma->XferAbortCallback != NULL) - { - hdma->XferAbortCallback(hdma); - } - } - return status; -} - -/** - * @brief Polling for transfer complete. - * @param hdma: pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @param CompleteLevel: Specifies the DMA level complete. - * @param Timeout: Timeout duration. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_DMA_PollForTransfer(DMA_HandleTypeDef *hdma, uint32_t CompleteLevel, uint32_t Timeout) -{ - uint32_t temp; - uint32_t tickstart = 0U; - - if(HAL_DMA_STATE_BUSY != hdma->State) - { - /* no transfer ongoing */ - hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; - __HAL_UNLOCK(hdma); - return HAL_ERROR; - } - - /* Polling mode not supported in circular mode */ - if (RESET != (hdma->Instance->CCR & DMA_CCR_CIRC)) - { - hdma->ErrorCode = HAL_DMA_ERROR_NOT_SUPPORTED; - return HAL_ERROR; - } - - /* Get the level transfer complete flag */ - if(CompleteLevel == HAL_DMA_FULL_TRANSFER) - { - /* Transfer Complete flag */ - temp = __HAL_DMA_GET_TC_FLAG_INDEX(hdma); - } - else - { - /* Half Transfer Complete flag */ - temp = __HAL_DMA_GET_HT_FLAG_INDEX(hdma); - } - - /* Get tick */ - tickstart = HAL_GetTick(); - - while(__HAL_DMA_GET_FLAG(hdma, temp) == RESET) - { - if((__HAL_DMA_GET_FLAG(hdma, __HAL_DMA_GET_TE_FLAG_INDEX(hdma)) != RESET)) - { - /* When a DMA transfer error occurs */ - /* A hardware clear of its EN bits is performed */ - /* Clear all flags */ - hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); - - /* Update error code */ - SET_BIT(hdma->ErrorCode, HAL_DMA_ERROR_TE); - - /* Change the DMA state */ - hdma->State= HAL_DMA_STATE_READY; - - /* Process Unlocked */ - __HAL_UNLOCK(hdma); - - return HAL_ERROR; - } - /* Check for the Timeout */ - if(Timeout != HAL_MAX_DELAY) - { - if((Timeout == 0U) || ((HAL_GetTick() - tickstart) > Timeout)) - { - /* Update error code */ - SET_BIT(hdma->ErrorCode, HAL_DMA_ERROR_TIMEOUT); - - /* Change the DMA state */ - hdma->State = HAL_DMA_STATE_READY; - - /* Process Unlocked */ - __HAL_UNLOCK(hdma); - - return HAL_ERROR; - } - } - } - - if(CompleteLevel == HAL_DMA_FULL_TRANSFER) - { - /* Clear the transfer complete flag */ - __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_TC_FLAG_INDEX(hdma)); - - /* The selected Channelx EN bit is cleared (DMA is disabled and - all transfers are complete) */ - hdma->State = HAL_DMA_STATE_READY; - } - else - { - /* Clear the half transfer complete flag */ - __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_HT_FLAG_INDEX(hdma)); - } - - /* Process unlocked */ - __HAL_UNLOCK(hdma); - - return HAL_OK; -} - -/** - * @brief Handles DMA interrupt request. - * @param hdma: pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @retval None - */ -void HAL_DMA_IRQHandler(DMA_HandleTypeDef *hdma) -{ - uint32_t flag_it = hdma->DmaBaseAddress->ISR; - uint32_t source_it = hdma->Instance->CCR; - - /* Half Transfer Complete Interrupt management ******************************/ - if (((flag_it & (DMA_FLAG_HT1 << hdma->ChannelIndex)) != RESET) && ((source_it & DMA_IT_HT) != RESET)) - { - /* Disable the half transfer interrupt if the DMA mode is not CIRCULAR */ - if((hdma->Instance->CCR & DMA_CCR_CIRC) == 0U) - { - /* Disable the half transfer interrupt */ - __HAL_DMA_DISABLE_IT(hdma, DMA_IT_HT); - } - /* Clear the half transfer complete flag */ - __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_HT_FLAG_INDEX(hdma)); - - /* DMA peripheral state is not updated in Half Transfer */ - /* but in Transfer Complete case */ - - if(hdma->XferHalfCpltCallback != NULL) - { - /* Half transfer callback */ - hdma->XferHalfCpltCallback(hdma); - } - } - - /* Transfer Complete Interrupt management ***********************************/ - else if (((flag_it & (DMA_FLAG_TC1 << hdma->ChannelIndex)) != RESET) && ((source_it & DMA_IT_TC) != RESET)) - { - if((hdma->Instance->CCR & DMA_CCR_CIRC) == 0U) - { - /* Disable the transfer complete and error interrupt */ - __HAL_DMA_DISABLE_IT(hdma, DMA_IT_TE | DMA_IT_TC); - - /* Change the DMA state */ - hdma->State = HAL_DMA_STATE_READY; - } - /* Clear the transfer complete flag */ - __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_TC_FLAG_INDEX(hdma)); - - /* Process Unlocked */ - __HAL_UNLOCK(hdma); - - if(hdma->XferCpltCallback != NULL) - { - /* Transfer complete callback */ - hdma->XferCpltCallback(hdma); - } - } - - /* Transfer Error Interrupt management **************************************/ - else if (( RESET != (flag_it & (DMA_FLAG_TE1 << hdma->ChannelIndex))) && (RESET != (source_it & DMA_IT_TE))) - { - /* When a DMA transfer error occurs */ - /* A hardware clear of its EN bits is performed */ - /* Disable ALL DMA IT */ - __HAL_DMA_DISABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); - - /* Clear all flags */ - hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); - - /* Update error code */ - hdma->ErrorCode = HAL_DMA_ERROR_TE; - - /* Change the DMA state */ - hdma->State = HAL_DMA_STATE_READY; - - /* Process Unlocked */ - __HAL_UNLOCK(hdma); - - if (hdma->XferErrorCallback != NULL) - { - /* Transfer error callback */ - hdma->XferErrorCallback(hdma); - } - } - return; -} - -/** - * @brief Register callbacks - * @param hdma: pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @param CallbackID: User Callback identifer - * a HAL_DMA_CallbackIDTypeDef ENUM as parameter. - * @param pCallback: pointer to private callbacsk function which has pointer to - * a DMA_HandleTypeDef structure as parameter. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_DMA_RegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef CallbackID, void (* pCallback)( DMA_HandleTypeDef * _hdma)) -{ - HAL_StatusTypeDef status = HAL_OK; - - /* Process locked */ - __HAL_LOCK(hdma); - - if(HAL_DMA_STATE_READY == hdma->State) - { - switch (CallbackID) - { - case HAL_DMA_XFER_CPLT_CB_ID: - hdma->XferCpltCallback = pCallback; - break; - - case HAL_DMA_XFER_HALFCPLT_CB_ID: - hdma->XferHalfCpltCallback = pCallback; - break; - - case HAL_DMA_XFER_ERROR_CB_ID: - hdma->XferErrorCallback = pCallback; - break; - - case HAL_DMA_XFER_ABORT_CB_ID: - hdma->XferAbortCallback = pCallback; - break; - - default: - status = HAL_ERROR; - break; - } - } - else - { - status = HAL_ERROR; - } - - /* Release Lock */ - __HAL_UNLOCK(hdma); - - return status; -} - -/** - * @brief UnRegister callbacks - * @param hdma: pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @param CallbackID: User Callback identifer - * a HAL_DMA_CallbackIDTypeDef ENUM as parameter. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_DMA_UnRegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef CallbackID) -{ - HAL_StatusTypeDef status = HAL_OK; - - /* Process locked */ - __HAL_LOCK(hdma); - - if(HAL_DMA_STATE_READY == hdma->State) - { - switch (CallbackID) - { - case HAL_DMA_XFER_CPLT_CB_ID: - hdma->XferCpltCallback = NULL; - break; - - case HAL_DMA_XFER_HALFCPLT_CB_ID: - hdma->XferHalfCpltCallback = NULL; - break; - - case HAL_DMA_XFER_ERROR_CB_ID: - hdma->XferErrorCallback = NULL; - break; - - case HAL_DMA_XFER_ABORT_CB_ID: - hdma->XferAbortCallback = NULL; - break; - - case HAL_DMA_XFER_ALL_CB_ID: - hdma->XferCpltCallback = NULL; - hdma->XferHalfCpltCallback = NULL; - hdma->XferErrorCallback = NULL; - hdma->XferAbortCallback = NULL; - break; - - default: - status = HAL_ERROR; - break; - } - } - else - { - status = HAL_ERROR; - } - - /* Release Lock */ - __HAL_UNLOCK(hdma); - - return status; -} - -/** - * @} - */ - -/** @defgroup DMA_Exported_Functions_Group3 Peripheral State and Errors functions - * @brief Peripheral State and Errors functions - * -@verbatim - =============================================================================== - ##### Peripheral State and Errors functions ##### - =============================================================================== - [..] - This subsection provides functions allowing to - (+) Check the DMA state - (+) Get error code - -@endverbatim - * @{ - */ - -/** - * @brief Return the DMA hande state. - * @param hdma: pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @retval HAL state - */ -HAL_DMA_StateTypeDef HAL_DMA_GetState(DMA_HandleTypeDef *hdma) -{ - /* Return DMA handle state */ - return hdma->State; -} - -/** - * @brief Return the DMA error code. - * @param hdma : pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @retval DMA Error Code - */ -uint32_t HAL_DMA_GetError(DMA_HandleTypeDef *hdma) -{ - return hdma->ErrorCode; -} - -/** - * @} - */ - -/** - * @} - */ - -/** @addtogroup DMA_Private_Functions - * @{ - */ - -/** - * @brief Sets the DMA Transfer parameter. - * @param hdma: pointer to a DMA_HandleTypeDef structure that contains - * the configuration information for the specified DMA Channel. - * @param SrcAddress: The source memory Buffer address - * @param DstAddress: The destination memory Buffer address - * @param DataLength: The length of data to be transferred from source to destination - * @retval HAL status - */ -static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength) -{ - /* Clear all flags */ - hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); - - /* Configure DMA Channel data length */ - hdma->Instance->CNDTR = DataLength; - - /* Memory to Peripheral */ - if((hdma->Init.Direction) == DMA_MEMORY_TO_PERIPH) - { - /* Configure DMA Channel destination address */ - hdma->Instance->CPAR = DstAddress; - - /* Configure DMA Channel source address */ - hdma->Instance->CMAR = SrcAddress; - } - /* Peripheral to Memory */ - else - { - /* Configure DMA Channel source address */ - hdma->Instance->CPAR = SrcAddress; - - /* Configure DMA Channel destination address */ - hdma->Instance->CMAR = DstAddress; - } -} - -/** - * @} - */ - -#endif /* HAL_DMA_MODULE_ENABLED */ -/** - * @} - */ - -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_dma.c + * @author MCD Application Team + * @brief DMA HAL module driver. + * This file provides firmware functions to manage the following + * functionalities of the Direct Memory Access (DMA) peripheral: + * + Initialization and de-initialization functions + * + IO operation functions + * + Peripheral State and errors functions + @verbatim + ============================================================================== + ##### How to use this driver ##### + ============================================================================== + [..] + (#) Enable and configure the peripheral to be connected to the DMA Channel + (except for internal SRAM / FLASH memories: no initialization is + necessary). Please refer to the Reference manual for connection between peripherals + and DMA requests. + + (#) For a given Channel, program the required configuration through the following parameters: + Channel request, Transfer Direction, Source and Destination data formats, + Circular or Normal mode, Channel Priority level, Source and Destination Increment mode + using HAL_DMA_Init() function. + + (#) Use HAL_DMA_GetState() function to return the DMA state and HAL_DMA_GetError() in case of error + detection. + + (#) Use HAL_DMA_Abort() function to abort the current transfer + + -@- In Memory-to-Memory transfer mode, Circular mode is not allowed. + *** Polling mode IO operation *** + ================================= + [..] + (+) Use HAL_DMA_Start() to start DMA transfer after the configuration of Source + address and destination address and the Length of data to be transferred + (+) Use HAL_DMA_PollForTransfer() to poll for the end of current transfer, in this + case a fixed Timeout can be configured by User depending from his application. + + *** Interrupt mode IO operation *** + =================================== + [..] + (+) Configure the DMA interrupt priority using HAL_NVIC_SetPriority() + (+) Enable the DMA IRQ handler using HAL_NVIC_EnableIRQ() + (+) Use HAL_DMA_Start_IT() to start DMA transfer after the configuration of + Source address and destination address and the Length of data to be transferred. + In this case the DMA interrupt is configured + (+) Use HAL_DMA_IRQHandler() called under DMA_IRQHandler() Interrupt subroutine + (+) At the end of data transfer HAL_DMA_IRQHandler() function is executed and user can + add his own function by customization of function pointer XferCpltCallback and + XferErrorCallback (i.e. a member of DMA handle structure). + + *** DMA HAL driver macros list *** + ============================================= + [..] + Below the list of most used macros in DMA HAL driver. + + (+) __HAL_DMA_ENABLE: Enable the specified DMA Channel. + (+) __HAL_DMA_DISABLE: Disable the specified DMA Channel. + (+) __HAL_DMA_GET_FLAG: Get the DMA Channel pending flags. + (+) __HAL_DMA_CLEAR_FLAG: Clear the DMA Channel pending flags. + (+) __HAL_DMA_ENABLE_IT: Enable the specified DMA Channel interrupts. + (+) __HAL_DMA_DISABLE_IT: Disable the specified DMA Channel interrupts. + (+) __HAL_DMA_GET_IT_SOURCE: Check whether the specified DMA Channel interrupt has occurred or not. + + [..] + (@) You can refer to the DMA HAL driver header file for more useful macros + + @endverbatim + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup DMA DMA + * @brief DMA HAL module driver + * @{ + */ + +#ifdef HAL_DMA_MODULE_ENABLED + +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ +/* Private macro -------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ +/* Private function prototypes -----------------------------------------------*/ +/** @defgroup DMA_Private_Functions DMA Private Functions + * @{ + */ +static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength); +/** + * @} + */ + +/* Exported functions ---------------------------------------------------------*/ + +/** @defgroup DMA_Exported_Functions DMA Exported Functions + * @{ + */ + +/** @defgroup DMA_Exported_Functions_Group1 Initialization and de-initialization functions + * @brief Initialization and de-initialization functions + * +@verbatim + =============================================================================== + ##### Initialization and de-initialization functions ##### + =============================================================================== + [..] + This section provides functions allowing to initialize the DMA Channel source + and destination addresses, incrementation and data sizes, transfer direction, + circular/normal mode selection, memory-to-memory mode selection and Channel priority value. + [..] + The HAL_DMA_Init() function follows the DMA configuration procedures as described in + reference manual. + +@endverbatim + * @{ + */ + +/** + * @brief Initialize the DMA according to the specified + * parameters in the DMA_InitTypeDef and initialize the associated handle. + * @param hdma: Pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_DMA_Init(DMA_HandleTypeDef *hdma) +{ + uint32_t tmp = 0U; + + /* Check the DMA handle allocation */ + if(hdma == NULL) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_DMA_ALL_INSTANCE(hdma->Instance)); + assert_param(IS_DMA_DIRECTION(hdma->Init.Direction)); + assert_param(IS_DMA_PERIPHERAL_INC_STATE(hdma->Init.PeriphInc)); + assert_param(IS_DMA_MEMORY_INC_STATE(hdma->Init.MemInc)); + assert_param(IS_DMA_PERIPHERAL_DATA_SIZE(hdma->Init.PeriphDataAlignment)); + assert_param(IS_DMA_MEMORY_DATA_SIZE(hdma->Init.MemDataAlignment)); + assert_param(IS_DMA_MODE(hdma->Init.Mode)); + assert_param(IS_DMA_PRIORITY(hdma->Init.Priority)); + +#if defined (DMA2) + /* calculation of the channel index */ + if ((uint32_t)(hdma->Instance) < (uint32_t)(DMA2_Channel1)) + { + /* DMA1 */ + hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Channel2 - (uint32_t)DMA1_Channel1)) << 2; + hdma->DmaBaseAddress = DMA1; + } + else + { + /* DMA2 */ + hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA2_Channel1) / ((uint32_t)DMA2_Channel2 - (uint32_t)DMA2_Channel1)) << 2; + hdma->DmaBaseAddress = DMA2; + } +#else + /* DMA1 */ + hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Channel2 - (uint32_t)DMA1_Channel1)) << 2; + hdma->DmaBaseAddress = DMA1; +#endif /* DMA2 */ + + /* Change DMA peripheral state */ + hdma->State = HAL_DMA_STATE_BUSY; + + /* Get the CR register value */ + tmp = hdma->Instance->CCR; + + /* Clear PL, MSIZE, PSIZE, MINC, PINC, CIRC and DIR bits */ + tmp &= ((uint32_t)~(DMA_CCR_PL | DMA_CCR_MSIZE | DMA_CCR_PSIZE | \ + DMA_CCR_MINC | DMA_CCR_PINC | DMA_CCR_CIRC | \ + DMA_CCR_DIR)); + + /* Prepare the DMA Channel configuration */ + tmp |= hdma->Init.Direction | + hdma->Init.PeriphInc | hdma->Init.MemInc | + hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | + hdma->Init.Mode | hdma->Init.Priority; + + /* Write to DMA Channel CR register */ + hdma->Instance->CCR = tmp; + + /* Initialise the error code */ + hdma->ErrorCode = HAL_DMA_ERROR_NONE; + + /* Initialize the DMA state*/ + hdma->State = HAL_DMA_STATE_READY; + /* Allocate lock resource and initialize it */ + hdma->Lock = HAL_UNLOCKED; + + return HAL_OK; +} + +/** + * @brief DeInitialize the DMA peripheral. + * @param hdma: pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_DMA_DeInit(DMA_HandleTypeDef *hdma) +{ + /* Check the DMA handle allocation */ + if(hdma == NULL) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_DMA_ALL_INSTANCE(hdma->Instance)); + + /* Disable the selected DMA Channelx */ + __HAL_DMA_DISABLE(hdma); + + /* Reset DMA Channel control register */ + hdma->Instance->CCR = 0U; + + /* Reset DMA Channel Number of Data to Transfer register */ + hdma->Instance->CNDTR = 0U; + + /* Reset DMA Channel peripheral address register */ + hdma->Instance->CPAR = 0U; + + /* Reset DMA Channel memory address register */ + hdma->Instance->CMAR = 0U; + +#if defined (DMA2) + /* calculation of the channel index */ + if ((uint32_t)(hdma->Instance) < (uint32_t)(DMA2_Channel1)) + { + /* DMA1 */ + hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Channel2 - (uint32_t)DMA1_Channel1)) << 2; + hdma->DmaBaseAddress = DMA1; + } + else + { + /* DMA2 */ + hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA2_Channel1) / ((uint32_t)DMA2_Channel2 - (uint32_t)DMA2_Channel1)) << 2; + hdma->DmaBaseAddress = DMA2; + } +#else + /* DMA1 */ + hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Channel2 - (uint32_t)DMA1_Channel1)) << 2; + hdma->DmaBaseAddress = DMA1; +#endif /* DMA2 */ + + /* Clear all flags */ + hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << (hdma->ChannelIndex)); + + /* Clean all callbacks */ + hdma->XferCpltCallback = NULL; + hdma->XferHalfCpltCallback = NULL; + hdma->XferErrorCallback = NULL; + hdma->XferAbortCallback = NULL; + + /* Reset the error code */ + hdma->ErrorCode = HAL_DMA_ERROR_NONE; + + /* Reset the DMA state */ + hdma->State = HAL_DMA_STATE_RESET; + + /* Release Lock */ + __HAL_UNLOCK(hdma); + + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup DMA_Exported_Functions_Group2 Input and Output operation functions + * @brief Input and Output operation functions + * +@verbatim + =============================================================================== + ##### IO operation functions ##### + =============================================================================== + [..] This section provides functions allowing to: + (+) Configure the source, destination address and data length and Start DMA transfer + (+) Configure the source, destination address and data length and + Start DMA transfer with interrupt + (+) Abort DMA transfer + (+) Poll for transfer complete + (+) Handle DMA interrupt request + +@endverbatim + * @{ + */ + +/** + * @brief Start the DMA Transfer. + * @param hdma: pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @param SrcAddress: The source memory Buffer address + * @param DstAddress: The destination memory Buffer address + * @param DataLength: The length of data to be transferred from source to destination + * @retval HAL status + */ +HAL_StatusTypeDef HAL_DMA_Start(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength) +{ + HAL_StatusTypeDef status = HAL_OK; + + /* Check the parameters */ + assert_param(IS_DMA_BUFFER_SIZE(DataLength)); + + /* Process locked */ + __HAL_LOCK(hdma); + + if(HAL_DMA_STATE_READY == hdma->State) + { + /* Change DMA peripheral state */ + hdma->State = HAL_DMA_STATE_BUSY; + hdma->ErrorCode = HAL_DMA_ERROR_NONE; + + /* Disable the peripheral */ + __HAL_DMA_DISABLE(hdma); + + /* Configure the source, destination address and the data length & clear flags*/ + DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength); + + /* Enable the Peripheral */ + __HAL_DMA_ENABLE(hdma); + } + else + { + /* Process Unlocked */ + __HAL_UNLOCK(hdma); + status = HAL_BUSY; + } + return status; +} + +/** + * @brief Start the DMA Transfer with interrupt enabled. + * @param hdma: pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @param SrcAddress: The source memory Buffer address + * @param DstAddress: The destination memory Buffer address + * @param DataLength: The length of data to be transferred from source to destination + * @retval HAL status + */ +HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength) +{ + HAL_StatusTypeDef status = HAL_OK; + + /* Check the parameters */ + assert_param(IS_DMA_BUFFER_SIZE(DataLength)); + + /* Process locked */ + __HAL_LOCK(hdma); + + if(HAL_DMA_STATE_READY == hdma->State) + { + /* Change DMA peripheral state */ + hdma->State = HAL_DMA_STATE_BUSY; + hdma->ErrorCode = HAL_DMA_ERROR_NONE; + + /* Disable the peripheral */ + __HAL_DMA_DISABLE(hdma); + + /* Configure the source, destination address and the data length & clear flags*/ + DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength); + + /* Enable the transfer complete interrupt */ + /* Enable the transfer Error interrupt */ + if(NULL != hdma->XferHalfCpltCallback) + { + /* Enable the Half transfer complete interrupt as well */ + __HAL_DMA_ENABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); + } + else + { + __HAL_DMA_DISABLE_IT(hdma, DMA_IT_HT); + __HAL_DMA_ENABLE_IT(hdma, (DMA_IT_TC | DMA_IT_TE)); + } + /* Enable the Peripheral */ + __HAL_DMA_ENABLE(hdma); + } + else + { + /* Process Unlocked */ + __HAL_UNLOCK(hdma); + + /* Remain BUSY */ + status = HAL_BUSY; + } + return status; +} + +/** + * @brief Abort the DMA Transfer. + * @param hdma: pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_DMA_Abort(DMA_HandleTypeDef *hdma) +{ + HAL_StatusTypeDef status = HAL_OK; + + if(hdma->State != HAL_DMA_STATE_BUSY) + { + /* no transfer ongoing */ + hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; + + /* Process Unlocked */ + __HAL_UNLOCK(hdma); + + return HAL_ERROR; + } + else + + { + /* Disable DMA IT */ + __HAL_DMA_DISABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); + + /* Disable the channel */ + __HAL_DMA_DISABLE(hdma); + + /* Clear all flags */ + hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); + } + /* Change the DMA state */ + hdma->State = HAL_DMA_STATE_READY; + + /* Process Unlocked */ + __HAL_UNLOCK(hdma); + + return status; +} + +/** + * @brief Aborts the DMA Transfer in Interrupt mode. + * @param hdma : pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_DMA_Abort_IT(DMA_HandleTypeDef *hdma) +{ + HAL_StatusTypeDef status = HAL_OK; + + if(HAL_DMA_STATE_BUSY != hdma->State) + { + /* no transfer ongoing */ + hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; + + status = HAL_ERROR; + } + else + { + /* Disable DMA IT */ + __HAL_DMA_DISABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); + + /* Disable the channel */ + __HAL_DMA_DISABLE(hdma); + + /* Clear all flags */ + __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_GI_FLAG_INDEX(hdma)); + + /* Change the DMA state */ + hdma->State = HAL_DMA_STATE_READY; + + /* Process Unlocked */ + __HAL_UNLOCK(hdma); + + /* Call User Abort callback */ + if(hdma->XferAbortCallback != NULL) + { + hdma->XferAbortCallback(hdma); + } + } + return status; +} + +/** + * @brief Polling for transfer complete. + * @param hdma: pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @param CompleteLevel: Specifies the DMA level complete. + * @param Timeout: Timeout duration. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_DMA_PollForTransfer(DMA_HandleTypeDef *hdma, uint32_t CompleteLevel, uint32_t Timeout) +{ + uint32_t temp; + uint32_t tickstart = 0U; + + if(HAL_DMA_STATE_BUSY != hdma->State) + { + /* no transfer ongoing */ + hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; + __HAL_UNLOCK(hdma); + return HAL_ERROR; + } + + /* Polling mode not supported in circular mode */ + if (RESET != (hdma->Instance->CCR & DMA_CCR_CIRC)) + { + hdma->ErrorCode = HAL_DMA_ERROR_NOT_SUPPORTED; + return HAL_ERROR; + } + + /* Get the level transfer complete flag */ + if(CompleteLevel == HAL_DMA_FULL_TRANSFER) + { + /* Transfer Complete flag */ + temp = __HAL_DMA_GET_TC_FLAG_INDEX(hdma); + } + else + { + /* Half Transfer Complete flag */ + temp = __HAL_DMA_GET_HT_FLAG_INDEX(hdma); + } + + /* Get tick */ + tickstart = HAL_GetTick(); + + while(__HAL_DMA_GET_FLAG(hdma, temp) == RESET) + { + if((__HAL_DMA_GET_FLAG(hdma, __HAL_DMA_GET_TE_FLAG_INDEX(hdma)) != RESET)) + { + /* When a DMA transfer error occurs */ + /* A hardware clear of its EN bits is performed */ + /* Clear all flags */ + hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); + + /* Update error code */ + SET_BIT(hdma->ErrorCode, HAL_DMA_ERROR_TE); + + /* Change the DMA state */ + hdma->State= HAL_DMA_STATE_READY; + + /* Process Unlocked */ + __HAL_UNLOCK(hdma); + + return HAL_ERROR; + } + /* Check for the Timeout */ + if(Timeout != HAL_MAX_DELAY) + { + if((Timeout == 0U) || ((HAL_GetTick() - tickstart) > Timeout)) + { + /* Update error code */ + SET_BIT(hdma->ErrorCode, HAL_DMA_ERROR_TIMEOUT); + + /* Change the DMA state */ + hdma->State = HAL_DMA_STATE_READY; + + /* Process Unlocked */ + __HAL_UNLOCK(hdma); + + return HAL_ERROR; + } + } + } + + if(CompleteLevel == HAL_DMA_FULL_TRANSFER) + { + /* Clear the transfer complete flag */ + __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_TC_FLAG_INDEX(hdma)); + + /* The selected Channelx EN bit is cleared (DMA is disabled and + all transfers are complete) */ + hdma->State = HAL_DMA_STATE_READY; + } + else + { + /* Clear the half transfer complete flag */ + __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_HT_FLAG_INDEX(hdma)); + } + + /* Process unlocked */ + __HAL_UNLOCK(hdma); + + return HAL_OK; +} + +/** + * @brief Handles DMA interrupt request. + * @param hdma: pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @retval None + */ +void HAL_DMA_IRQHandler(DMA_HandleTypeDef *hdma) +{ + uint32_t flag_it = hdma->DmaBaseAddress->ISR; + uint32_t source_it = hdma->Instance->CCR; + + /* Half Transfer Complete Interrupt management ******************************/ + if (((flag_it & (DMA_FLAG_HT1 << hdma->ChannelIndex)) != RESET) && ((source_it & DMA_IT_HT) != RESET)) + { + /* Disable the half transfer interrupt if the DMA mode is not CIRCULAR */ + if((hdma->Instance->CCR & DMA_CCR_CIRC) == 0U) + { + /* Disable the half transfer interrupt */ + __HAL_DMA_DISABLE_IT(hdma, DMA_IT_HT); + } + /* Clear the half transfer complete flag */ + __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_HT_FLAG_INDEX(hdma)); + + /* DMA peripheral state is not updated in Half Transfer */ + /* but in Transfer Complete case */ + + if(hdma->XferHalfCpltCallback != NULL) + { + /* Half transfer callback */ + hdma->XferHalfCpltCallback(hdma); + } + } + + /* Transfer Complete Interrupt management ***********************************/ + else if (((flag_it & (DMA_FLAG_TC1 << hdma->ChannelIndex)) != RESET) && ((source_it & DMA_IT_TC) != RESET)) + { + if((hdma->Instance->CCR & DMA_CCR_CIRC) == 0U) + { + /* Disable the transfer complete and error interrupt */ + __HAL_DMA_DISABLE_IT(hdma, DMA_IT_TE | DMA_IT_TC); + + /* Change the DMA state */ + hdma->State = HAL_DMA_STATE_READY; + } + /* Clear the transfer complete flag */ + __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_TC_FLAG_INDEX(hdma)); + + /* Process Unlocked */ + __HAL_UNLOCK(hdma); + + if(hdma->XferCpltCallback != NULL) + { + /* Transfer complete callback */ + hdma->XferCpltCallback(hdma); + } + } + + /* Transfer Error Interrupt management **************************************/ + else if (( RESET != (flag_it & (DMA_FLAG_TE1 << hdma->ChannelIndex))) && (RESET != (source_it & DMA_IT_TE))) + { + /* When a DMA transfer error occurs */ + /* A hardware clear of its EN bits is performed */ + /* Disable ALL DMA IT */ + __HAL_DMA_DISABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); + + /* Clear all flags */ + hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); + + /* Update error code */ + hdma->ErrorCode = HAL_DMA_ERROR_TE; + + /* Change the DMA state */ + hdma->State = HAL_DMA_STATE_READY; + + /* Process Unlocked */ + __HAL_UNLOCK(hdma); + + if (hdma->XferErrorCallback != NULL) + { + /* Transfer error callback */ + hdma->XferErrorCallback(hdma); + } + } + return; +} + +/** + * @brief Register callbacks + * @param hdma: pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @param CallbackID: User Callback identifer + * a HAL_DMA_CallbackIDTypeDef ENUM as parameter. + * @param pCallback: pointer to private callbacsk function which has pointer to + * a DMA_HandleTypeDef structure as parameter. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_DMA_RegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef CallbackID, void (* pCallback)( DMA_HandleTypeDef * _hdma)) +{ + HAL_StatusTypeDef status = HAL_OK; + + /* Process locked */ + __HAL_LOCK(hdma); + + if(HAL_DMA_STATE_READY == hdma->State) + { + switch (CallbackID) + { + case HAL_DMA_XFER_CPLT_CB_ID: + hdma->XferCpltCallback = pCallback; + break; + + case HAL_DMA_XFER_HALFCPLT_CB_ID: + hdma->XferHalfCpltCallback = pCallback; + break; + + case HAL_DMA_XFER_ERROR_CB_ID: + hdma->XferErrorCallback = pCallback; + break; + + case HAL_DMA_XFER_ABORT_CB_ID: + hdma->XferAbortCallback = pCallback; + break; + + default: + status = HAL_ERROR; + break; + } + } + else + { + status = HAL_ERROR; + } + + /* Release Lock */ + __HAL_UNLOCK(hdma); + + return status; +} + +/** + * @brief UnRegister callbacks + * @param hdma: pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @param CallbackID: User Callback identifer + * a HAL_DMA_CallbackIDTypeDef ENUM as parameter. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_DMA_UnRegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef CallbackID) +{ + HAL_StatusTypeDef status = HAL_OK; + + /* Process locked */ + __HAL_LOCK(hdma); + + if(HAL_DMA_STATE_READY == hdma->State) + { + switch (CallbackID) + { + case HAL_DMA_XFER_CPLT_CB_ID: + hdma->XferCpltCallback = NULL; + break; + + case HAL_DMA_XFER_HALFCPLT_CB_ID: + hdma->XferHalfCpltCallback = NULL; + break; + + case HAL_DMA_XFER_ERROR_CB_ID: + hdma->XferErrorCallback = NULL; + break; + + case HAL_DMA_XFER_ABORT_CB_ID: + hdma->XferAbortCallback = NULL; + break; + + case HAL_DMA_XFER_ALL_CB_ID: + hdma->XferCpltCallback = NULL; + hdma->XferHalfCpltCallback = NULL; + hdma->XferErrorCallback = NULL; + hdma->XferAbortCallback = NULL; + break; + + default: + status = HAL_ERROR; + break; + } + } + else + { + status = HAL_ERROR; + } + + /* Release Lock */ + __HAL_UNLOCK(hdma); + + return status; +} + +/** + * @} + */ + +/** @defgroup DMA_Exported_Functions_Group3 Peripheral State and Errors functions + * @brief Peripheral State and Errors functions + * +@verbatim + =============================================================================== + ##### Peripheral State and Errors functions ##### + =============================================================================== + [..] + This subsection provides functions allowing to + (+) Check the DMA state + (+) Get error code + +@endverbatim + * @{ + */ + +/** + * @brief Return the DMA hande state. + * @param hdma: pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @retval HAL state + */ +HAL_DMA_StateTypeDef HAL_DMA_GetState(DMA_HandleTypeDef *hdma) +{ + /* Return DMA handle state */ + return hdma->State; +} + +/** + * @brief Return the DMA error code. + * @param hdma : pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @retval DMA Error Code + */ +uint32_t HAL_DMA_GetError(DMA_HandleTypeDef *hdma) +{ + return hdma->ErrorCode; +} + +/** + * @} + */ + +/** + * @} + */ + +/** @addtogroup DMA_Private_Functions + * @{ + */ + +/** + * @brief Sets the DMA Transfer parameter. + * @param hdma: pointer to a DMA_HandleTypeDef structure that contains + * the configuration information for the specified DMA Channel. + * @param SrcAddress: The source memory Buffer address + * @param DstAddress: The destination memory Buffer address + * @param DataLength: The length of data to be transferred from source to destination + * @retval HAL status + */ +static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32_t DataLength) +{ + /* Clear all flags */ + hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); + + /* Configure DMA Channel data length */ + hdma->Instance->CNDTR = DataLength; + + /* Memory to Peripheral */ + if((hdma->Init.Direction) == DMA_MEMORY_TO_PERIPH) + { + /* Configure DMA Channel destination address */ + hdma->Instance->CPAR = DstAddress; + + /* Configure DMA Channel source address */ + hdma->Instance->CMAR = SrcAddress; + } + /* Peripheral to Memory */ + else + { + /* Configure DMA Channel source address */ + hdma->Instance->CPAR = SrcAddress; + + /* Configure DMA Channel destination address */ + hdma->Instance->CMAR = DstAddress; + } +} + +/** + * @} + */ + +#endif /* HAL_DMA_MODULE_ENABLED */ +/** + * @} + */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c similarity index 96% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c index 60030e8..8af23a2 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c @@ -1,555 +1,555 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_exti.c - * @author MCD Application Team - * @brief EXTI HAL module driver. - * This file provides firmware functions to manage the following - * functionalities of the Extended Interrupts and events controller (EXTI) peripheral: - * + Initialization and de-initialization functions - * + IO operation functions - * - @verbatim - ============================================================================== - ##### EXTI Peripheral features ##### - ============================================================================== - [..] - (+) Each Exti line can be configured within this driver. - - (+) Exti line can be configured in 3 different modes - (++) Interrupt - (++) Event - (++) Both of them - - (+) Configurable Exti lines can be configured with 3 different triggers - (++) Rising - (++) Falling - (++) Both of them - - (+) When set in interrupt mode, configurable Exti lines have two different - interrupts pending registers which allow to distinguish which transition - occurs: - (++) Rising edge pending interrupt - (++) Falling - - (+) Exti lines 0 to 15 are linked to gpio pin number 0 to 15. Gpio port can - be selected through multiplexer. - - ##### How to use this driver ##### - ============================================================================== - [..] - - (#) Configure the EXTI line using HAL_EXTI_SetConfigLine(). - (++) Choose the interrupt line number by setting "Line" member from - EXTI_ConfigTypeDef structure. - (++) Configure the interrupt and/or event mode using "Mode" member from - EXTI_ConfigTypeDef structure. - (++) For configurable lines, configure rising and/or falling trigger - "Trigger" member from EXTI_ConfigTypeDef structure. - (++) For Exti lines linked to gpio, choose gpio port using "GPIOSel" - member from GPIO_InitTypeDef structure. - - (#) Get current Exti configuration of a dedicated line using - HAL_EXTI_GetConfigLine(). - (++) Provide exiting handle as parameter. - (++) Provide pointer on EXTI_ConfigTypeDef structure as second parameter. - - (#) Clear Exti configuration of a dedicated line using HAL_EXTI_GetConfigLine(). - (++) Provide exiting handle as parameter. - - (#) Register callback to treat Exti interrupts using HAL_EXTI_RegisterCallback(). - (++) Provide exiting handle as first parameter. - (++) Provide which callback will be registered using one value from - EXTI_CallbackIDTypeDef. - (++) Provide callback function pointer. - - (#) Get interrupt pending bit using HAL_EXTI_GetPending(). - - (#) Clear interrupt pending bit using HAL_EXTI_GetPending(). - - (#) Generate software interrupt using HAL_EXTI_GenerateSWI(). - - @endverbatim - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2019 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @addtogroup EXTI - * @{ - */ -/** MISRA C:2012 deviation rule has been granted for following rule: - * Rule-18.1_b - Medium: Array `EXTICR' 1st subscript interval [0,7] may be out - * of bounds [0,3] in following API : - * HAL_EXTI_SetConfigLine - * HAL_EXTI_GetConfigLine - * HAL_EXTI_ClearConfigLine - */ - -#ifdef HAL_EXTI_MODULE_ENABLED - -/* Private typedef -----------------------------------------------------------*/ -/* Private defines -----------------------------------------------------------*/ -/** @defgroup EXTI_Private_Constants EXTI Private Constants - * @{ - */ - -/** - * @} - */ - -/* Private macros ------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Exported functions --------------------------------------------------------*/ - -/** @addtogroup EXTI_Exported_Functions - * @{ - */ - -/** @addtogroup EXTI_Exported_Functions_Group1 - * @brief Configuration functions - * -@verbatim - =============================================================================== - ##### Configuration functions ##### - =============================================================================== - -@endverbatim - * @{ - */ - -/** - * @brief Set configuration of a dedicated Exti line. - * @param hexti Exti handle. - * @param pExtiConfig Pointer on EXTI configuration to be set. - * @retval HAL Status. - */ -HAL_StatusTypeDef HAL_EXTI_SetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig) -{ - uint32_t regval; - uint32_t linepos; - uint32_t maskline; - - /* Check null pointer */ - if ((hexti == NULL) || (pExtiConfig == NULL)) - { - return HAL_ERROR; - } - - /* Check parameters */ - assert_param(IS_EXTI_LINE(pExtiConfig->Line)); - assert_param(IS_EXTI_MODE(pExtiConfig->Mode)); - - /* Assign line number to handle */ - hexti->Line = pExtiConfig->Line; - - /* Compute line mask */ - linepos = (pExtiConfig->Line & EXTI_PIN_MASK); - maskline = (1uL << linepos); - - /* Configure triggers for configurable lines */ - if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u) - { - assert_param(IS_EXTI_TRIGGER(pExtiConfig->Trigger)); - - /* Configure rising trigger */ - /* Mask or set line */ - if ((pExtiConfig->Trigger & EXTI_TRIGGER_RISING) != 0x00u) - { - EXTI->RTSR |= maskline; - } - else - { - EXTI->RTSR &= ~maskline; - } - - /* Configure falling trigger */ - /* Mask or set line */ - if ((pExtiConfig->Trigger & EXTI_TRIGGER_FALLING) != 0x00u) - { - EXTI->FTSR |= maskline; - } - else - { - EXTI->FTSR &= ~maskline; - } - - - /* Configure gpio port selection in case of gpio exti line */ - if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO) - { - assert_param(IS_EXTI_GPIO_PORT(pExtiConfig->GPIOSel)); - assert_param(IS_EXTI_GPIO_PIN(linepos)); - - regval = AFIO->EXTICR[linepos >> 2u]; - regval &= ~(AFIO_EXTICR1_EXTI0 << (AFIO_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); - regval |= (pExtiConfig->GPIOSel << (AFIO_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); - AFIO->EXTICR[linepos >> 2u] = regval; - } - } - - /* Configure interrupt mode : read current mode */ - /* Mask or set line */ - if ((pExtiConfig->Mode & EXTI_MODE_INTERRUPT) != 0x00u) - { - EXTI->IMR |= maskline; - } - else - { - EXTI->IMR &= ~maskline; - } - - /* Configure event mode : read current mode */ - /* Mask or set line */ - if ((pExtiConfig->Mode & EXTI_MODE_EVENT) != 0x00u) - { - EXTI->EMR |= maskline; - } - else - { - EXTI->EMR &= ~maskline; - } - - return HAL_OK; -} - -/** - * @brief Get configuration of a dedicated Exti line. - * @param hexti Exti handle. - * @param pExtiConfig Pointer on structure to store Exti configuration. - * @retval HAL Status. - */ -HAL_StatusTypeDef HAL_EXTI_GetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig) -{ - uint32_t regval; - uint32_t linepos; - uint32_t maskline; - - /* Check null pointer */ - if ((hexti == NULL) || (pExtiConfig == NULL)) - { - return HAL_ERROR; - } - - /* Check the parameter */ - assert_param(IS_EXTI_LINE(hexti->Line)); - - /* Store handle line number to configuration structure */ - pExtiConfig->Line = hexti->Line; - - /* Compute line mask */ - linepos = (pExtiConfig->Line & EXTI_PIN_MASK); - maskline = (1uL << linepos); - - /* 1] Get core mode : interrupt */ - - /* Check if selected line is enable */ - if ((EXTI->IMR & maskline) != 0x00u) - { - pExtiConfig->Mode = EXTI_MODE_INTERRUPT; - } - else - { - pExtiConfig->Mode = EXTI_MODE_NONE; - } - - /* Get event mode */ - /* Check if selected line is enable */ - if ((EXTI->EMR & maskline) != 0x00u) - { - pExtiConfig->Mode |= EXTI_MODE_EVENT; - } - - /* Get default Trigger and GPIOSel configuration */ - pExtiConfig->Trigger = EXTI_TRIGGER_NONE; - pExtiConfig->GPIOSel = 0x00u; - - /* 2] Get trigger for configurable lines : rising */ - if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u) - { - /* Check if configuration of selected line is enable */ - if ((EXTI->RTSR & maskline) != 0x00u) - { - pExtiConfig->Trigger = EXTI_TRIGGER_RISING; - } - - /* Get falling configuration */ - /* Check if configuration of selected line is enable */ - if ((EXTI->FTSR & maskline) != 0x00u) - { - pExtiConfig->Trigger |= EXTI_TRIGGER_FALLING; - } - - /* Get Gpio port selection for gpio lines */ - if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO) - { - assert_param(IS_EXTI_GPIO_PIN(linepos)); - - regval = AFIO->EXTICR[linepos >> 2u]; - pExtiConfig->GPIOSel = ((regval << (AFIO_EXTICR1_EXTI1_Pos * (3uL - (linepos & 0x03u)))) >> 24); - } - } - - return HAL_OK; -} - -/** - * @brief Clear whole configuration of a dedicated Exti line. - * @param hexti Exti handle. - * @retval HAL Status. - */ -HAL_StatusTypeDef HAL_EXTI_ClearConfigLine(EXTI_HandleTypeDef *hexti) -{ - uint32_t regval; - uint32_t linepos; - uint32_t maskline; - - /* Check null pointer */ - if (hexti == NULL) - { - return HAL_ERROR; - } - - /* Check the parameter */ - assert_param(IS_EXTI_LINE(hexti->Line)); - - /* compute line mask */ - linepos = (hexti->Line & EXTI_PIN_MASK); - maskline = (1uL << linepos); - - /* 1] Clear interrupt mode */ - EXTI->IMR = (EXTI->IMR & ~maskline); - - /* 2] Clear event mode */ - EXTI->EMR = (EXTI->EMR & ~maskline); - - /* 3] Clear triggers in case of configurable lines */ - if ((hexti->Line & EXTI_CONFIG) != 0x00u) - { - EXTI->RTSR = (EXTI->RTSR & ~maskline); - EXTI->FTSR = (EXTI->FTSR & ~maskline); - - /* Get Gpio port selection for gpio lines */ - if ((hexti->Line & EXTI_GPIO) == EXTI_GPIO) - { - assert_param(IS_EXTI_GPIO_PIN(linepos)); - - regval = AFIO->EXTICR[linepos >> 2u]; - regval &= ~(AFIO_EXTICR1_EXTI0 << (AFIO_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); - AFIO->EXTICR[linepos >> 2u] = regval; - } - } - - return HAL_OK; -} - -/** - * @brief Register callback for a dedicated Exti line. - * @param hexti Exti handle. - * @param CallbackID User callback identifier. - * This parameter can be one of @arg @ref EXTI_CallbackIDTypeDef values. - * @param pPendingCbfn function pointer to be stored as callback. - * @retval HAL Status. - */ -HAL_StatusTypeDef HAL_EXTI_RegisterCallback(EXTI_HandleTypeDef *hexti, EXTI_CallbackIDTypeDef CallbackID, void (*pPendingCbfn)(void)) -{ - HAL_StatusTypeDef status = HAL_OK; - - switch (CallbackID) - { - case HAL_EXTI_COMMON_CB_ID: - hexti->PendingCallback = pPendingCbfn; - break; - - default: - status = HAL_ERROR; - break; - } - - return status; -} - -/** - * @brief Store line number as handle private field. - * @param hexti Exti handle. - * @param ExtiLine Exti line number. - * This parameter can be from 0 to @ref EXTI_LINE_NB. - * @retval HAL Status. - */ -HAL_StatusTypeDef HAL_EXTI_GetHandle(EXTI_HandleTypeDef *hexti, uint32_t ExtiLine) -{ - /* Check the parameters */ - assert_param(IS_EXTI_LINE(ExtiLine)); - - /* Check null pointer */ - if (hexti == NULL) - { - return HAL_ERROR; - } - else - { - /* Store line number as handle private field */ - hexti->Line = ExtiLine; - - return HAL_OK; - } -} - -/** - * @} - */ - -/** @addtogroup EXTI_Exported_Functions_Group2 - * @brief EXTI IO functions. - * -@verbatim - =============================================================================== - ##### IO operation functions ##### - =============================================================================== - -@endverbatim - * @{ - */ - -/** - * @brief Handle EXTI interrupt request. - * @param hexti Exti handle. - * @retval none. - */ -void HAL_EXTI_IRQHandler(EXTI_HandleTypeDef *hexti) -{ - uint32_t regval; - uint32_t maskline; - - /* Compute line mask */ - maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); - - /* Get pending bit */ - regval = (EXTI->PR & maskline); - if (regval != 0x00u) - { - /* Clear pending bit */ - EXTI->PR = maskline; - - /* Call callback */ - if (hexti->PendingCallback != NULL) - { - hexti->PendingCallback(); - } - } -} - -/** - * @brief Get interrupt pending bit of a dedicated line. - * @param hexti Exti handle. - * @param Edge Specify which pending edge as to be checked. - * This parameter can be one of the following values: - * @arg @ref EXTI_TRIGGER_RISING_FALLING - * This parameter is kept for compatibility with other series. - * @retval 1 if interrupt is pending else 0. - */ -uint32_t HAL_EXTI_GetPending(EXTI_HandleTypeDef *hexti, uint32_t Edge) -{ - uint32_t regval; - uint32_t maskline; - uint32_t linepos; - - /* Check parameters */ - assert_param(IS_EXTI_LINE(hexti->Line)); - assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); - assert_param(IS_EXTI_PENDING_EDGE(Edge)); - - /* Prevent unused argument compilation warning */ - UNUSED(Edge); - - /* Compute line mask */ - linepos = (hexti->Line & EXTI_PIN_MASK); - maskline = (1uL << linepos); - - /* return 1 if bit is set else 0 */ - regval = ((EXTI->PR & maskline) >> linepos); - return regval; -} - -/** - * @brief Clear interrupt pending bit of a dedicated line. - * @param hexti Exti handle. - * @param Edge Specify which pending edge as to be clear. - * This parameter can be one of the following values: - * @arg @ref EXTI_TRIGGER_RISING_FALLING - * This parameter is kept for compatibility with other series. - * @retval None. - */ -void HAL_EXTI_ClearPending(EXTI_HandleTypeDef *hexti, uint32_t Edge) -{ - uint32_t maskline; - - /* Check parameters */ - assert_param(IS_EXTI_LINE(hexti->Line)); - assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); - assert_param(IS_EXTI_PENDING_EDGE(Edge)); - - /* Prevent unused argument compilation warning */ - UNUSED(Edge); - - /* Compute line mask */ - maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); - - /* Clear Pending bit */ - EXTI->PR = maskline; -} - -/** - * @brief Generate a software interrupt for a dedicated line. - * @param hexti Exti handle. - * @retval None. - */ -void HAL_EXTI_GenerateSWI(EXTI_HandleTypeDef *hexti) -{ - uint32_t maskline; - - /* Check parameters */ - assert_param(IS_EXTI_LINE(hexti->Line)); - assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); - - /* Compute line mask */ - maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); - - /* Generate Software interrupt */ - EXTI->SWIER = maskline; -} - -/** - * @} - */ - -/** - * @} - */ - -#endif /* HAL_EXTI_MODULE_ENABLED */ -/** - * @} - */ - -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_exti.c + * @author MCD Application Team + * @brief EXTI HAL module driver. + * This file provides firmware functions to manage the following + * functionalities of the Extended Interrupts and events controller (EXTI) peripheral: + * + Initialization and de-initialization functions + * + IO operation functions + * + @verbatim + ============================================================================== + ##### EXTI Peripheral features ##### + ============================================================================== + [..] + (+) Each Exti line can be configured within this driver. + + (+) Exti line can be configured in 3 different modes + (++) Interrupt + (++) Event + (++) Both of them + + (+) Configurable Exti lines can be configured with 3 different triggers + (++) Rising + (++) Falling + (++) Both of them + + (+) When set in interrupt mode, configurable Exti lines have two different + interrupts pending registers which allow to distinguish which transition + occurs: + (++) Rising edge pending interrupt + (++) Falling + + (+) Exti lines 0 to 15 are linked to gpio pin number 0 to 15. Gpio port can + be selected through multiplexer. + + ##### How to use this driver ##### + ============================================================================== + [..] + + (#) Configure the EXTI line using HAL_EXTI_SetConfigLine(). + (++) Choose the interrupt line number by setting "Line" member from + EXTI_ConfigTypeDef structure. + (++) Configure the interrupt and/or event mode using "Mode" member from + EXTI_ConfigTypeDef structure. + (++) For configurable lines, configure rising and/or falling trigger + "Trigger" member from EXTI_ConfigTypeDef structure. + (++) For Exti lines linked to gpio, choose gpio port using "GPIOSel" + member from GPIO_InitTypeDef structure. + + (#) Get current Exti configuration of a dedicated line using + HAL_EXTI_GetConfigLine(). + (++) Provide exiting handle as parameter. + (++) Provide pointer on EXTI_ConfigTypeDef structure as second parameter. + + (#) Clear Exti configuration of a dedicated line using HAL_EXTI_GetConfigLine(). + (++) Provide exiting handle as parameter. + + (#) Register callback to treat Exti interrupts using HAL_EXTI_RegisterCallback(). + (++) Provide exiting handle as first parameter. + (++) Provide which callback will be registered using one value from + EXTI_CallbackIDTypeDef. + (++) Provide callback function pointer. + + (#) Get interrupt pending bit using HAL_EXTI_GetPending(). + + (#) Clear interrupt pending bit using HAL_EXTI_GetPending(). + + (#) Generate software interrupt using HAL_EXTI_GenerateSWI(). + + @endverbatim + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2019 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @addtogroup EXTI + * @{ + */ +/** MISRA C:2012 deviation rule has been granted for following rule: + * Rule-18.1_b - Medium: Array `EXTICR' 1st subscript interval [0,7] may be out + * of bounds [0,3] in following API : + * HAL_EXTI_SetConfigLine + * HAL_EXTI_GetConfigLine + * HAL_EXTI_ClearConfigLine + */ + +#ifdef HAL_EXTI_MODULE_ENABLED + +/* Private typedef -----------------------------------------------------------*/ +/* Private defines -----------------------------------------------------------*/ +/** @defgroup EXTI_Private_Constants EXTI Private Constants + * @{ + */ + +/** + * @} + */ + +/* Private macros ------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ +/* Private function prototypes -----------------------------------------------*/ +/* Exported functions --------------------------------------------------------*/ + +/** @addtogroup EXTI_Exported_Functions + * @{ + */ + +/** @addtogroup EXTI_Exported_Functions_Group1 + * @brief Configuration functions + * +@verbatim + =============================================================================== + ##### Configuration functions ##### + =============================================================================== + +@endverbatim + * @{ + */ + +/** + * @brief Set configuration of a dedicated Exti line. + * @param hexti Exti handle. + * @param pExtiConfig Pointer on EXTI configuration to be set. + * @retval HAL Status. + */ +HAL_StatusTypeDef HAL_EXTI_SetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig) +{ + uint32_t regval; + uint32_t linepos; + uint32_t maskline; + + /* Check null pointer */ + if ((hexti == NULL) || (pExtiConfig == NULL)) + { + return HAL_ERROR; + } + + /* Check parameters */ + assert_param(IS_EXTI_LINE(pExtiConfig->Line)); + assert_param(IS_EXTI_MODE(pExtiConfig->Mode)); + + /* Assign line number to handle */ + hexti->Line = pExtiConfig->Line; + + /* Compute line mask */ + linepos = (pExtiConfig->Line & EXTI_PIN_MASK); + maskline = (1uL << linepos); + + /* Configure triggers for configurable lines */ + if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u) + { + assert_param(IS_EXTI_TRIGGER(pExtiConfig->Trigger)); + + /* Configure rising trigger */ + /* Mask or set line */ + if ((pExtiConfig->Trigger & EXTI_TRIGGER_RISING) != 0x00u) + { + EXTI->RTSR |= maskline; + } + else + { + EXTI->RTSR &= ~maskline; + } + + /* Configure falling trigger */ + /* Mask or set line */ + if ((pExtiConfig->Trigger & EXTI_TRIGGER_FALLING) != 0x00u) + { + EXTI->FTSR |= maskline; + } + else + { + EXTI->FTSR &= ~maskline; + } + + + /* Configure gpio port selection in case of gpio exti line */ + if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO) + { + assert_param(IS_EXTI_GPIO_PORT(pExtiConfig->GPIOSel)); + assert_param(IS_EXTI_GPIO_PIN(linepos)); + + regval = AFIO->EXTICR[linepos >> 2u]; + regval &= ~(AFIO_EXTICR1_EXTI0 << (AFIO_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); + regval |= (pExtiConfig->GPIOSel << (AFIO_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); + AFIO->EXTICR[linepos >> 2u] = regval; + } + } + + /* Configure interrupt mode : read current mode */ + /* Mask or set line */ + if ((pExtiConfig->Mode & EXTI_MODE_INTERRUPT) != 0x00u) + { + EXTI->IMR |= maskline; + } + else + { + EXTI->IMR &= ~maskline; + } + + /* Configure event mode : read current mode */ + /* Mask or set line */ + if ((pExtiConfig->Mode & EXTI_MODE_EVENT) != 0x00u) + { + EXTI->EMR |= maskline; + } + else + { + EXTI->EMR &= ~maskline; + } + + return HAL_OK; +} + +/** + * @brief Get configuration of a dedicated Exti line. + * @param hexti Exti handle. + * @param pExtiConfig Pointer on structure to store Exti configuration. + * @retval HAL Status. + */ +HAL_StatusTypeDef HAL_EXTI_GetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig) +{ + uint32_t regval; + uint32_t linepos; + uint32_t maskline; + + /* Check null pointer */ + if ((hexti == NULL) || (pExtiConfig == NULL)) + { + return HAL_ERROR; + } + + /* Check the parameter */ + assert_param(IS_EXTI_LINE(hexti->Line)); + + /* Store handle line number to configuration structure */ + pExtiConfig->Line = hexti->Line; + + /* Compute line mask */ + linepos = (pExtiConfig->Line & EXTI_PIN_MASK); + maskline = (1uL << linepos); + + /* 1] Get core mode : interrupt */ + + /* Check if selected line is enable */ + if ((EXTI->IMR & maskline) != 0x00u) + { + pExtiConfig->Mode = EXTI_MODE_INTERRUPT; + } + else + { + pExtiConfig->Mode = EXTI_MODE_NONE; + } + + /* Get event mode */ + /* Check if selected line is enable */ + if ((EXTI->EMR & maskline) != 0x00u) + { + pExtiConfig->Mode |= EXTI_MODE_EVENT; + } + + /* Get default Trigger and GPIOSel configuration */ + pExtiConfig->Trigger = EXTI_TRIGGER_NONE; + pExtiConfig->GPIOSel = 0x00u; + + /* 2] Get trigger for configurable lines : rising */ + if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u) + { + /* Check if configuration of selected line is enable */ + if ((EXTI->RTSR & maskline) != 0x00u) + { + pExtiConfig->Trigger = EXTI_TRIGGER_RISING; + } + + /* Get falling configuration */ + /* Check if configuration of selected line is enable */ + if ((EXTI->FTSR & maskline) != 0x00u) + { + pExtiConfig->Trigger |= EXTI_TRIGGER_FALLING; + } + + /* Get Gpio port selection for gpio lines */ + if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO) + { + assert_param(IS_EXTI_GPIO_PIN(linepos)); + + regval = AFIO->EXTICR[linepos >> 2u]; + pExtiConfig->GPIOSel = ((regval << (AFIO_EXTICR1_EXTI1_Pos * (3uL - (linepos & 0x03u)))) >> 24); + } + } + + return HAL_OK; +} + +/** + * @brief Clear whole configuration of a dedicated Exti line. + * @param hexti Exti handle. + * @retval HAL Status. + */ +HAL_StatusTypeDef HAL_EXTI_ClearConfigLine(EXTI_HandleTypeDef *hexti) +{ + uint32_t regval; + uint32_t linepos; + uint32_t maskline; + + /* Check null pointer */ + if (hexti == NULL) + { + return HAL_ERROR; + } + + /* Check the parameter */ + assert_param(IS_EXTI_LINE(hexti->Line)); + + /* compute line mask */ + linepos = (hexti->Line & EXTI_PIN_MASK); + maskline = (1uL << linepos); + + /* 1] Clear interrupt mode */ + EXTI->IMR = (EXTI->IMR & ~maskline); + + /* 2] Clear event mode */ + EXTI->EMR = (EXTI->EMR & ~maskline); + + /* 3] Clear triggers in case of configurable lines */ + if ((hexti->Line & EXTI_CONFIG) != 0x00u) + { + EXTI->RTSR = (EXTI->RTSR & ~maskline); + EXTI->FTSR = (EXTI->FTSR & ~maskline); + + /* Get Gpio port selection for gpio lines */ + if ((hexti->Line & EXTI_GPIO) == EXTI_GPIO) + { + assert_param(IS_EXTI_GPIO_PIN(linepos)); + + regval = AFIO->EXTICR[linepos >> 2u]; + regval &= ~(AFIO_EXTICR1_EXTI0 << (AFIO_EXTICR1_EXTI1_Pos * (linepos & 0x03u))); + AFIO->EXTICR[linepos >> 2u] = regval; + } + } + + return HAL_OK; +} + +/** + * @brief Register callback for a dedicated Exti line. + * @param hexti Exti handle. + * @param CallbackID User callback identifier. + * This parameter can be one of @arg @ref EXTI_CallbackIDTypeDef values. + * @param pPendingCbfn function pointer to be stored as callback. + * @retval HAL Status. + */ +HAL_StatusTypeDef HAL_EXTI_RegisterCallback(EXTI_HandleTypeDef *hexti, EXTI_CallbackIDTypeDef CallbackID, void (*pPendingCbfn)(void)) +{ + HAL_StatusTypeDef status = HAL_OK; + + switch (CallbackID) + { + case HAL_EXTI_COMMON_CB_ID: + hexti->PendingCallback = pPendingCbfn; + break; + + default: + status = HAL_ERROR; + break; + } + + return status; +} + +/** + * @brief Store line number as handle private field. + * @param hexti Exti handle. + * @param ExtiLine Exti line number. + * This parameter can be from 0 to @ref EXTI_LINE_NB. + * @retval HAL Status. + */ +HAL_StatusTypeDef HAL_EXTI_GetHandle(EXTI_HandleTypeDef *hexti, uint32_t ExtiLine) +{ + /* Check the parameters */ + assert_param(IS_EXTI_LINE(ExtiLine)); + + /* Check null pointer */ + if (hexti == NULL) + { + return HAL_ERROR; + } + else + { + /* Store line number as handle private field */ + hexti->Line = ExtiLine; + + return HAL_OK; + } +} + +/** + * @} + */ + +/** @addtogroup EXTI_Exported_Functions_Group2 + * @brief EXTI IO functions. + * +@verbatim + =============================================================================== + ##### IO operation functions ##### + =============================================================================== + +@endverbatim + * @{ + */ + +/** + * @brief Handle EXTI interrupt request. + * @param hexti Exti handle. + * @retval none. + */ +void HAL_EXTI_IRQHandler(EXTI_HandleTypeDef *hexti) +{ + uint32_t regval; + uint32_t maskline; + + /* Compute line mask */ + maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); + + /* Get pending bit */ + regval = (EXTI->PR & maskline); + if (regval != 0x00u) + { + /* Clear pending bit */ + EXTI->PR = maskline; + + /* Call callback */ + if (hexti->PendingCallback != NULL) + { + hexti->PendingCallback(); + } + } +} + +/** + * @brief Get interrupt pending bit of a dedicated line. + * @param hexti Exti handle. + * @param Edge Specify which pending edge as to be checked. + * This parameter can be one of the following values: + * @arg @ref EXTI_TRIGGER_RISING_FALLING + * This parameter is kept for compatibility with other series. + * @retval 1 if interrupt is pending else 0. + */ +uint32_t HAL_EXTI_GetPending(EXTI_HandleTypeDef *hexti, uint32_t Edge) +{ + uint32_t regval; + uint32_t maskline; + uint32_t linepos; + + /* Check parameters */ + assert_param(IS_EXTI_LINE(hexti->Line)); + assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); + assert_param(IS_EXTI_PENDING_EDGE(Edge)); + + /* Prevent unused argument compilation warning */ + UNUSED(Edge); + + /* Compute line mask */ + linepos = (hexti->Line & EXTI_PIN_MASK); + maskline = (1uL << linepos); + + /* return 1 if bit is set else 0 */ + regval = ((EXTI->PR & maskline) >> linepos); + return regval; +} + +/** + * @brief Clear interrupt pending bit of a dedicated line. + * @param hexti Exti handle. + * @param Edge Specify which pending edge as to be clear. + * This parameter can be one of the following values: + * @arg @ref EXTI_TRIGGER_RISING_FALLING + * This parameter is kept for compatibility with other series. + * @retval None. + */ +void HAL_EXTI_ClearPending(EXTI_HandleTypeDef *hexti, uint32_t Edge) +{ + uint32_t maskline; + + /* Check parameters */ + assert_param(IS_EXTI_LINE(hexti->Line)); + assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); + assert_param(IS_EXTI_PENDING_EDGE(Edge)); + + /* Prevent unused argument compilation warning */ + UNUSED(Edge); + + /* Compute line mask */ + maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); + + /* Clear Pending bit */ + EXTI->PR = maskline; +} + +/** + * @brief Generate a software interrupt for a dedicated line. + * @param hexti Exti handle. + * @retval None. + */ +void HAL_EXTI_GenerateSWI(EXTI_HandleTypeDef *hexti) +{ + uint32_t maskline; + + /* Check parameters */ + assert_param(IS_EXTI_LINE(hexti->Line)); + assert_param(IS_EXTI_CONFIG_LINE(hexti->Line)); + + /* Compute line mask */ + maskline = (1uL << (hexti->Line & EXTI_PIN_MASK)); + + /* Generate Software interrupt */ + EXTI->SWIER = maskline; +} + +/** + * @} + */ + +/** + * @} + */ + +#endif /* HAL_EXTI_MODULE_ENABLED */ +/** + * @} + */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c similarity index 96% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c index 50abf92..2a628e8 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c @@ -1,967 +1,967 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_flash.c - * @author MCD Application Team - * @brief FLASH HAL module driver. - * This file provides firmware functions to manage the following - * functionalities of the internal FLASH memory: - * + Program operations functions - * + Memory Control functions - * + Peripheral State functions - * - @verbatim - ============================================================================== - ##### FLASH peripheral features ##### - ============================================================================== - [..] The Flash memory interface manages CPU AHB I-Code and D-Code accesses - to the Flash memory. It implements the erase and program Flash memory operations - and the read and write protection mechanisms. - - [..] The Flash memory interface accelerates code execution with a system of instruction - prefetch. - - [..] The FLASH main features are: - (+) Flash memory read operations - (+) Flash memory program/erase operations - (+) Read / write protections - (+) Prefetch on I-Code - (+) Option Bytes programming - - - ##### How to use this driver ##### - ============================================================================== - [..] - This driver provides functions and macros to configure and program the FLASH - memory of all STM32F1xx devices. - - (#) FLASH Memory I/O Programming functions: this group includes all needed - functions to erase and program the main memory: - (++) Lock and Unlock the FLASH interface - (++) Erase function: Erase page, erase all pages - (++) Program functions: half word, word and doubleword - (#) FLASH Option Bytes Programming functions: this group includes all needed - functions to manage the Option Bytes: - (++) Lock and Unlock the Option Bytes - (++) Set/Reset the write protection - (++) Set the Read protection Level - (++) Program the user Option Bytes - (++) Launch the Option Bytes loader - (++) Erase Option Bytes - (++) Program the data Option Bytes - (++) Get the Write protection. - (++) Get the user option bytes. - - (#) Interrupts and flags management functions : this group - includes all needed functions to: - (++) Handle FLASH interrupts - (++) Wait for last FLASH operation according to its status - (++) Get error flag status - - [..] In addition to these function, this driver includes a set of macros allowing - to handle the following operations: - - (+) Set/Get the latency - (+) Enable/Disable the prefetch buffer - (+) Enable/Disable the half cycle access - (+) Enable/Disable the FLASH interrupts - (+) Monitor the FLASH flags status - - @endverbatim - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -#ifdef HAL_FLASH_MODULE_ENABLED - -/** @defgroup FLASH FLASH - * @brief FLASH HAL module driver - * @{ - */ - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/** @defgroup FLASH_Private_Constants FLASH Private Constants - * @{ - */ -/** - * @} - */ - -/* Private macro ---------------------------- ---------------------------------*/ -/** @defgroup FLASH_Private_Macros FLASH Private Macros - * @{ - */ - -/** - * @} - */ - -/* Private variables ---------------------------------------------------------*/ -/** @defgroup FLASH_Private_Variables FLASH Private Variables - * @{ - */ -/* Variables used for Erase pages under interruption*/ -FLASH_ProcessTypeDef pFlash; -/** - * @} - */ - -/* Private function prototypes -----------------------------------------------*/ -/** @defgroup FLASH_Private_Functions FLASH Private Functions - * @{ - */ -static void FLASH_Program_HalfWord(uint32_t Address, uint16_t Data); -static void FLASH_SetErrorCode(void); -extern void FLASH_PageErase(uint32_t PageAddress); -/** - * @} - */ - -/* Exported functions ---------------------------------------------------------*/ -/** @defgroup FLASH_Exported_Functions FLASH Exported Functions - * @{ - */ - -/** @defgroup FLASH_Exported_Functions_Group1 Programming operation functions - * @brief Programming operation functions - * -@verbatim -@endverbatim - * @{ - */ - -/** - * @brief Program halfword, word or double word at a specified address - * @note The function HAL_FLASH_Unlock() should be called before to unlock the FLASH interface - * The function HAL_FLASH_Lock() should be called after to lock the FLASH interface - * - * @note If an erase and a program operations are requested simultaneously, - * the erase operation is performed before the program one. - * - * @note FLASH should be previously erased before new programmation (only exception to this - * is when 0x0000 is programmed) - * - * @param TypeProgram: Indicate the way to program at a specified address. - * This parameter can be a value of @ref FLASH_Type_Program - * @param Address: Specifies the address to be programmed. - * @param Data: Specifies the data to be programmed - * - * @retval HAL_StatusTypeDef HAL Status - */ -HAL_StatusTypeDef HAL_FLASH_Program(uint32_t TypeProgram, uint32_t Address, uint64_t Data) -{ - HAL_StatusTypeDef status = HAL_ERROR; - uint8_t index = 0; - uint8_t nbiterations = 0; - - /* Process Locked */ - __HAL_LOCK(&pFlash); - - /* Check the parameters */ - assert_param(IS_FLASH_TYPEPROGRAM(TypeProgram)); - assert_param(IS_FLASH_PROGRAM_ADDRESS(Address)); - -#if defined(FLASH_BANK2_END) - if(Address <= FLASH_BANK1_END) - { -#endif /* FLASH_BANK2_END */ - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation(FLASH_TIMEOUT_VALUE); -#if defined(FLASH_BANK2_END) - } - else - { - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperationBank2(FLASH_TIMEOUT_VALUE); - } -#endif /* FLASH_BANK2_END */ - - if(status == HAL_OK) - { - if(TypeProgram == FLASH_TYPEPROGRAM_HALFWORD) - { - /* Program halfword (16-bit) at a specified address. */ - nbiterations = 1U; - } - else if(TypeProgram == FLASH_TYPEPROGRAM_WORD) - { - /* Program word (32-bit = 2*16-bit) at a specified address. */ - nbiterations = 2U; - } - else - { - /* Program double word (64-bit = 4*16-bit) at a specified address. */ - nbiterations = 4U; - } - - for (index = 0U; index < nbiterations; index++) - { - FLASH_Program_HalfWord((Address + (2U*index)), (uint16_t)(Data >> (16U*index))); - -#if defined(FLASH_BANK2_END) - if(Address <= FLASH_BANK1_END) - { -#endif /* FLASH_BANK2_END */ - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation(FLASH_TIMEOUT_VALUE); - - /* If the program operation is completed, disable the PG Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_PG); -#if defined(FLASH_BANK2_END) - } - else - { - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperationBank2(FLASH_TIMEOUT_VALUE); - - /* If the program operation is completed, disable the PG Bit */ - CLEAR_BIT(FLASH->CR2, FLASH_CR2_PG); - } -#endif /* FLASH_BANK2_END */ - /* In case of error, stop programation procedure */ - if (status != HAL_OK) - { - break; - } - } - } - - /* Process Unlocked */ - __HAL_UNLOCK(&pFlash); - - return status; -} - -/** - * @brief Program halfword, word or double word at a specified address with interrupt enabled. - * @note The function HAL_FLASH_Unlock() should be called before to unlock the FLASH interface - * The function HAL_FLASH_Lock() should be called after to lock the FLASH interface - * - * @note If an erase and a program operations are requested simultaneously, - * the erase operation is performed before the program one. - * - * @param TypeProgram: Indicate the way to program at a specified address. - * This parameter can be a value of @ref FLASH_Type_Program - * @param Address: Specifies the address to be programmed. - * @param Data: Specifies the data to be programmed - * - * @retval HAL_StatusTypeDef HAL Status - */ -HAL_StatusTypeDef HAL_FLASH_Program_IT(uint32_t TypeProgram, uint32_t Address, uint64_t Data) -{ - HAL_StatusTypeDef status = HAL_OK; - - /* Process Locked */ - __HAL_LOCK(&pFlash); - - /* Check the parameters */ - assert_param(IS_FLASH_TYPEPROGRAM(TypeProgram)); - assert_param(IS_FLASH_PROGRAM_ADDRESS(Address)); - -#if defined(FLASH_BANK2_END) - /* If procedure already ongoing, reject the next one */ - if (pFlash.ProcedureOnGoing != FLASH_PROC_NONE) - { - return HAL_ERROR; - } - - if(Address <= FLASH_BANK1_END) - { - /* Enable End of FLASH Operation and Error source interrupts */ - __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP_BANK1 | FLASH_IT_ERR_BANK1); - - }else - { - /* Enable End of FLASH Operation and Error source interrupts */ - __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP_BANK2 | FLASH_IT_ERR_BANK2); - } -#else - /* Enable End of FLASH Operation and Error source interrupts */ - __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP | FLASH_IT_ERR); -#endif /* FLASH_BANK2_END */ - - pFlash.Address = Address; - pFlash.Data = Data; - - if(TypeProgram == FLASH_TYPEPROGRAM_HALFWORD) - { - pFlash.ProcedureOnGoing = FLASH_PROC_PROGRAMHALFWORD; - /* Program halfword (16-bit) at a specified address. */ - pFlash.DataRemaining = 1U; - } - else if(TypeProgram == FLASH_TYPEPROGRAM_WORD) - { - pFlash.ProcedureOnGoing = FLASH_PROC_PROGRAMWORD; - /* Program word (32-bit : 2*16-bit) at a specified address. */ - pFlash.DataRemaining = 2U; - } - else - { - pFlash.ProcedureOnGoing = FLASH_PROC_PROGRAMDOUBLEWORD; - /* Program double word (64-bit : 4*16-bit) at a specified address. */ - pFlash.DataRemaining = 4U; - } - - /* Program halfword (16-bit) at a specified address. */ - FLASH_Program_HalfWord(Address, (uint16_t)Data); - - return status; -} - -/** - * @brief This function handles FLASH interrupt request. - * @retval None - */ -void HAL_FLASH_IRQHandler(void) -{ - uint32_t addresstmp = 0U; - - /* Check FLASH operation error flags */ -#if defined(FLASH_BANK2_END) - if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR_BANK1) || __HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR_BANK1) || \ - (__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR_BANK2) || __HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR_BANK2))) -#else - if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR) ||__HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR)) -#endif /* FLASH_BANK2_END */ - { - /* Return the faulty address */ - addresstmp = pFlash.Address; - /* Reset address */ - pFlash.Address = 0xFFFFFFFFU; - - /* Save the Error code */ - FLASH_SetErrorCode(); - - /* FLASH error interrupt user callback */ - HAL_FLASH_OperationErrorCallback(addresstmp); - - /* Stop the procedure ongoing */ - pFlash.ProcedureOnGoing = FLASH_PROC_NONE; - } - - /* Check FLASH End of Operation flag */ -#if defined(FLASH_BANK2_END) - if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_EOP_BANK1)) - { - /* Clear FLASH End of Operation pending bit */ - __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP_BANK1); -#else - if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_EOP)) - { - /* Clear FLASH End of Operation pending bit */ - __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP); -#endif /* FLASH_BANK2_END */ - - /* Process can continue only if no error detected */ - if(pFlash.ProcedureOnGoing != FLASH_PROC_NONE) - { - if(pFlash.ProcedureOnGoing == FLASH_PROC_PAGEERASE) - { - /* Nb of pages to erased can be decreased */ - pFlash.DataRemaining--; - - /* Check if there are still pages to erase */ - if(pFlash.DataRemaining != 0U) - { - addresstmp = pFlash.Address; - /*Indicate user which sector has been erased */ - HAL_FLASH_EndOfOperationCallback(addresstmp); - - /*Increment sector number*/ - addresstmp = pFlash.Address + FLASH_PAGE_SIZE; - pFlash.Address = addresstmp; - - /* If the erase operation is completed, disable the PER Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_PER); - - FLASH_PageErase(addresstmp); - } - else - { - /* No more pages to Erase, user callback can be called. */ - /* Reset Sector and stop Erase pages procedure */ - pFlash.Address = addresstmp = 0xFFFFFFFFU; - pFlash.ProcedureOnGoing = FLASH_PROC_NONE; - /* FLASH EOP interrupt user callback */ - HAL_FLASH_EndOfOperationCallback(addresstmp); - } - } - else if(pFlash.ProcedureOnGoing == FLASH_PROC_MASSERASE) - { - /* Operation is completed, disable the MER Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_MER); - -#if defined(FLASH_BANK2_END) - /* Stop Mass Erase procedure if no pending mass erase on other bank */ - if (HAL_IS_BIT_CLR(FLASH->CR2, FLASH_CR2_MER)) - { -#endif /* FLASH_BANK2_END */ - /* MassErase ended. Return the selected bank */ - /* FLASH EOP interrupt user callback */ - HAL_FLASH_EndOfOperationCallback(0U); - - /* Stop Mass Erase procedure*/ - pFlash.ProcedureOnGoing = FLASH_PROC_NONE; - } -#if defined(FLASH_BANK2_END) - } -#endif /* FLASH_BANK2_END */ - else - { - /* Nb of 16-bit data to program can be decreased */ - pFlash.DataRemaining--; - - /* Check if there are still 16-bit data to program */ - if(pFlash.DataRemaining != 0U) - { - /* Increment address to 16-bit */ - pFlash.Address += 2U; - addresstmp = pFlash.Address; - - /* Shift to have next 16-bit data */ - pFlash.Data = (pFlash.Data >> 16U); - - /* Operation is completed, disable the PG Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_PG); - - /*Program halfword (16-bit) at a specified address.*/ - FLASH_Program_HalfWord(addresstmp, (uint16_t)pFlash.Data); - } - else - { - /* Program ended. Return the selected address */ - /* FLASH EOP interrupt user callback */ - if (pFlash.ProcedureOnGoing == FLASH_PROC_PROGRAMHALFWORD) - { - HAL_FLASH_EndOfOperationCallback(pFlash.Address); - } - else if (pFlash.ProcedureOnGoing == FLASH_PROC_PROGRAMWORD) - { - HAL_FLASH_EndOfOperationCallback(pFlash.Address - 2U); - } - else - { - HAL_FLASH_EndOfOperationCallback(pFlash.Address - 6U); - } - - /* Reset Address and stop Program procedure */ - pFlash.Address = 0xFFFFFFFFU; - pFlash.ProcedureOnGoing = FLASH_PROC_NONE; - } - } - } - } - -#if defined(FLASH_BANK2_END) - /* Check FLASH End of Operation flag */ - if(__HAL_FLASH_GET_FLAG( FLASH_FLAG_EOP_BANK2)) - { - /* Clear FLASH End of Operation pending bit */ - __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP_BANK2); - - /* Process can continue only if no error detected */ - if(pFlash.ProcedureOnGoing != FLASH_PROC_NONE) - { - if(pFlash.ProcedureOnGoing == FLASH_PROC_PAGEERASE) - { - /* Nb of pages to erased can be decreased */ - pFlash.DataRemaining--; - - /* Check if there are still pages to erase*/ - if(pFlash.DataRemaining != 0U) - { - /* Indicate user which page address has been erased*/ - HAL_FLASH_EndOfOperationCallback(pFlash.Address); - - /* Increment page address to next page */ - pFlash.Address += FLASH_PAGE_SIZE; - addresstmp = pFlash.Address; - - /* Operation is completed, disable the PER Bit */ - CLEAR_BIT(FLASH->CR2, FLASH_CR2_PER); - - FLASH_PageErase(addresstmp); - } - else - { - /*No more pages to Erase*/ - - /*Reset Address and stop Erase pages procedure*/ - pFlash.Address = 0xFFFFFFFFU; - pFlash.ProcedureOnGoing = FLASH_PROC_NONE; - - /* FLASH EOP interrupt user callback */ - HAL_FLASH_EndOfOperationCallback(pFlash.Address); - } - } - else if(pFlash.ProcedureOnGoing == FLASH_PROC_MASSERASE) - { - /* Operation is completed, disable the MER Bit */ - CLEAR_BIT(FLASH->CR2, FLASH_CR2_MER); - - if (HAL_IS_BIT_CLR(FLASH->CR, FLASH_CR_MER)) - { - /* MassErase ended. Return the selected bank*/ - /* FLASH EOP interrupt user callback */ - HAL_FLASH_EndOfOperationCallback(0U); - - pFlash.ProcedureOnGoing = FLASH_PROC_NONE; - } - } - else - { - /* Nb of 16-bit data to program can be decreased */ - pFlash.DataRemaining--; - - /* Check if there are still 16-bit data to program */ - if(pFlash.DataRemaining != 0U) - { - /* Increment address to 16-bit */ - pFlash.Address += 2U; - addresstmp = pFlash.Address; - - /* Shift to have next 16-bit data */ - pFlash.Data = (pFlash.Data >> 16U); - - /* Operation is completed, disable the PG Bit */ - CLEAR_BIT(FLASH->CR2, FLASH_CR2_PG); - - /*Program halfword (16-bit) at a specified address.*/ - FLASH_Program_HalfWord(addresstmp, (uint16_t)pFlash.Data); - } - else - { - /*Program ended. Return the selected address*/ - /* FLASH EOP interrupt user callback */ - if (pFlash.ProcedureOnGoing == FLASH_PROC_PROGRAMHALFWORD) - { - HAL_FLASH_EndOfOperationCallback(pFlash.Address); - } - else if (pFlash.ProcedureOnGoing == FLASH_PROC_PROGRAMWORD) - { - HAL_FLASH_EndOfOperationCallback(pFlash.Address-2U); - } - else - { - HAL_FLASH_EndOfOperationCallback(pFlash.Address-6U); - } - - /* Reset Address and stop Program procedure*/ - pFlash.Address = 0xFFFFFFFFU; - pFlash.ProcedureOnGoing = FLASH_PROC_NONE; - } - } - } - } -#endif - - if(pFlash.ProcedureOnGoing == FLASH_PROC_NONE) - { -#if defined(FLASH_BANK2_END) - /* Operation is completed, disable the PG, PER and MER Bits for both bank */ - CLEAR_BIT(FLASH->CR, (FLASH_CR_PG | FLASH_CR_PER | FLASH_CR_MER)); - CLEAR_BIT(FLASH->CR2, (FLASH_CR2_PG | FLASH_CR2_PER | FLASH_CR2_MER)); - - /* Disable End of FLASH Operation and Error source interrupts for both banks */ - __HAL_FLASH_DISABLE_IT(FLASH_IT_EOP_BANK1 | FLASH_IT_ERR_BANK1 | FLASH_IT_EOP_BANK2 | FLASH_IT_ERR_BANK2); -#else - /* Operation is completed, disable the PG, PER and MER Bits */ - CLEAR_BIT(FLASH->CR, (FLASH_CR_PG | FLASH_CR_PER | FLASH_CR_MER)); - - /* Disable End of FLASH Operation and Error source interrupts */ - __HAL_FLASH_DISABLE_IT(FLASH_IT_EOP | FLASH_IT_ERR); -#endif /* FLASH_BANK2_END */ - - /* Process Unlocked */ - __HAL_UNLOCK(&pFlash); - } -} - -/** - * @brief FLASH end of operation interrupt callback - * @param ReturnValue: The value saved in this parameter depends on the ongoing procedure - * - Mass Erase: No return value expected - * - Pages Erase: Address of the page which has been erased - * (if 0xFFFFFFFF, it means that all the selected pages have been erased) - * - Program: Address which was selected for data program - * @retval none - */ -__weak void HAL_FLASH_EndOfOperationCallback(uint32_t ReturnValue) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(ReturnValue); - - /* NOTE : This function Should not be modified, when the callback is needed, - the HAL_FLASH_EndOfOperationCallback could be implemented in the user file - */ -} - -/** - * @brief FLASH operation error interrupt callback - * @param ReturnValue: The value saved in this parameter depends on the ongoing procedure - * - Mass Erase: No return value expected - * - Pages Erase: Address of the page which returned an error - * - Program: Address which was selected for data program - * @retval none - */ -__weak void HAL_FLASH_OperationErrorCallback(uint32_t ReturnValue) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(ReturnValue); - - /* NOTE : This function Should not be modified, when the callback is needed, - the HAL_FLASH_OperationErrorCallback could be implemented in the user file - */ -} - -/** - * @} - */ - -/** @defgroup FLASH_Exported_Functions_Group2 Peripheral Control functions - * @brief management functions - * -@verbatim - =============================================================================== - ##### Peripheral Control functions ##### - =============================================================================== - [..] - This subsection provides a set of functions allowing to control the FLASH - memory operations. - -@endverbatim - * @{ - */ - -/** - * @brief Unlock the FLASH control register access - * @retval HAL Status - */ -HAL_StatusTypeDef HAL_FLASH_Unlock(void) -{ - HAL_StatusTypeDef status = HAL_OK; - - if(READ_BIT(FLASH->CR, FLASH_CR_LOCK) != RESET) - { - /* Authorize the FLASH Registers access */ - WRITE_REG(FLASH->KEYR, FLASH_KEY1); - WRITE_REG(FLASH->KEYR, FLASH_KEY2); - - /* Verify Flash is unlocked */ - if(READ_BIT(FLASH->CR, FLASH_CR_LOCK) != RESET) - { - status = HAL_ERROR; - } - } -#if defined(FLASH_BANK2_END) - if(READ_BIT(FLASH->CR2, FLASH_CR2_LOCK) != RESET) - { - /* Authorize the FLASH BANK2 Registers access */ - WRITE_REG(FLASH->KEYR2, FLASH_KEY1); - WRITE_REG(FLASH->KEYR2, FLASH_KEY2); - - /* Verify Flash BANK2 is unlocked */ - if(READ_BIT(FLASH->CR2, FLASH_CR2_LOCK) != RESET) - { - status = HAL_ERROR; - } - } -#endif /* FLASH_BANK2_END */ - - return status; -} - -/** - * @brief Locks the FLASH control register access - * @retval HAL Status - */ -HAL_StatusTypeDef HAL_FLASH_Lock(void) -{ - /* Set the LOCK Bit to lock the FLASH Registers access */ - SET_BIT(FLASH->CR, FLASH_CR_LOCK); - -#if defined(FLASH_BANK2_END) - /* Set the LOCK Bit to lock the FLASH BANK2 Registers access */ - SET_BIT(FLASH->CR2, FLASH_CR2_LOCK); - -#endif /* FLASH_BANK2_END */ - return HAL_OK; -} - -/** - * @brief Unlock the FLASH Option Control Registers access. - * @retval HAL Status - */ -HAL_StatusTypeDef HAL_FLASH_OB_Unlock(void) -{ - if (HAL_IS_BIT_CLR(FLASH->CR, FLASH_CR_OPTWRE)) - { - /* Authorizes the Option Byte register programming */ - WRITE_REG(FLASH->OPTKEYR, FLASH_OPTKEY1); - WRITE_REG(FLASH->OPTKEYR, FLASH_OPTKEY2); - } - else - { - return HAL_ERROR; - } - - return HAL_OK; -} - -/** - * @brief Lock the FLASH Option Control Registers access. - * @retval HAL Status - */ -HAL_StatusTypeDef HAL_FLASH_OB_Lock(void) -{ - /* Clear the OPTWRE Bit to lock the FLASH Option Byte Registers access */ - CLEAR_BIT(FLASH->CR, FLASH_CR_OPTWRE); - - return HAL_OK; -} - -/** - * @brief Launch the option byte loading. - * @note This function will reset automatically the MCU. - * @retval None - */ -void HAL_FLASH_OB_Launch(void) -{ - /* Initiates a system reset request to launch the option byte loading */ - HAL_NVIC_SystemReset(); -} - -/** - * @} - */ - -/** @defgroup FLASH_Exported_Functions_Group3 Peripheral errors functions - * @brief Peripheral errors functions - * -@verbatim - =============================================================================== - ##### Peripheral Errors functions ##### - =============================================================================== - [..] - This subsection permit to get in run-time errors of the FLASH peripheral. - -@endverbatim - * @{ - */ - -/** - * @brief Get the specific FLASH error flag. - * @retval FLASH_ErrorCode The returned value can be: - * @ref FLASH_Error_Codes - */ -uint32_t HAL_FLASH_GetError(void) -{ - return pFlash.ErrorCode; -} - -/** - * @} - */ - -/** - * @} - */ - -/** @addtogroup FLASH_Private_Functions - * @{ - */ - -/** - * @brief Program a half-word (16-bit) at a specified address. - * @param Address specify the address to be programmed. - * @param Data specify the data to be programmed. - * @retval None - */ -static void FLASH_Program_HalfWord(uint32_t Address, uint16_t Data) -{ - /* Clean the error context */ - pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; - -#if defined(FLASH_BANK2_END) - if(Address <= FLASH_BANK1_END) - { -#endif /* FLASH_BANK2_END */ - /* Proceed to program the new data */ - SET_BIT(FLASH->CR, FLASH_CR_PG); -#if defined(FLASH_BANK2_END) - } - else - { - /* Proceed to program the new data */ - SET_BIT(FLASH->CR2, FLASH_CR2_PG); - } -#endif /* FLASH_BANK2_END */ - - /* Write data in the address */ - *(__IO uint16_t*)Address = Data; -} - -/** - * @brief Wait for a FLASH operation to complete. - * @param Timeout maximum flash operation timeout - * @retval HAL Status - */ -HAL_StatusTypeDef FLASH_WaitForLastOperation(uint32_t Timeout) -{ - /* Wait for the FLASH operation to complete by polling on BUSY flag to be reset. - Even if the FLASH operation fails, the BUSY flag will be reset and an error - flag will be set */ - - uint32_t tickstart = HAL_GetTick(); - - while(__HAL_FLASH_GET_FLAG(FLASH_FLAG_BSY)) - { - if (Timeout != HAL_MAX_DELAY) - { - if((Timeout == 0U) || ((HAL_GetTick()-tickstart) > Timeout)) - { - return HAL_TIMEOUT; - } - } - } - - /* Check FLASH End of Operation flag */ - if (__HAL_FLASH_GET_FLAG(FLASH_FLAG_EOP)) - { - /* Clear FLASH End of Operation pending bit */ - __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP); - } - - if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR) || - __HAL_FLASH_GET_FLAG(FLASH_FLAG_OPTVERR) || - __HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR)) - { - /*Save the error code*/ - FLASH_SetErrorCode(); - return HAL_ERROR; - } - - /* There is no error flag set */ - return HAL_OK; -} - -#if defined(FLASH_BANK2_END) -/** - * @brief Wait for a FLASH BANK2 operation to complete. - * @param Timeout maximum flash operation timeout - * @retval HAL_StatusTypeDef HAL Status - */ -HAL_StatusTypeDef FLASH_WaitForLastOperationBank2(uint32_t Timeout) -{ - /* Wait for the FLASH BANK2 operation to complete by polling on BUSY flag to be reset. - Even if the FLASH BANK2 operation fails, the BUSY flag will be reset and an error - flag will be set */ - - uint32_t tickstart = HAL_GetTick(); - - while(__HAL_FLASH_GET_FLAG(FLASH_FLAG_BSY_BANK2)) - { - if (Timeout != HAL_MAX_DELAY) - { - if((Timeout == 0U) || ((HAL_GetTick()-tickstart) > Timeout)) - { - return HAL_TIMEOUT; - } - } - } - - /* Check FLASH End of Operation flag */ - if (__HAL_FLASH_GET_FLAG(FLASH_FLAG_EOP_BANK2)) - { - /* Clear FLASH End of Operation pending bit */ - __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP_BANK2); - } - - if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR_BANK2) || __HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR_BANK2)) - { - /*Save the error code*/ - FLASH_SetErrorCode(); - return HAL_ERROR; - } - - /* If there is an error flag set */ - return HAL_OK; - -} -#endif /* FLASH_BANK2_END */ - -/** - * @brief Set the specific FLASH error flag. - * @retval None - */ -static void FLASH_SetErrorCode(void) -{ - uint32_t flags = 0U; - -#if defined(FLASH_BANK2_END) - if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR) || __HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR_BANK2)) -#else - if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR)) -#endif /* FLASH_BANK2_END */ - { - pFlash.ErrorCode |= HAL_FLASH_ERROR_WRP; -#if defined(FLASH_BANK2_END) - flags |= FLASH_FLAG_WRPERR | FLASH_FLAG_WRPERR_BANK2; -#else - flags |= FLASH_FLAG_WRPERR; -#endif /* FLASH_BANK2_END */ - } -#if defined(FLASH_BANK2_END) - if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR) || __HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR_BANK2)) -#else - if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR)) -#endif /* FLASH_BANK2_END */ - { - pFlash.ErrorCode |= HAL_FLASH_ERROR_PROG; -#if defined(FLASH_BANK2_END) - flags |= FLASH_FLAG_PGERR | FLASH_FLAG_PGERR_BANK2; -#else - flags |= FLASH_FLAG_PGERR; -#endif /* FLASH_BANK2_END */ - } - if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_OPTVERR)) - { - pFlash.ErrorCode |= HAL_FLASH_ERROR_OPTV; - __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_OPTVERR); - } - - /* Clear FLASH error pending bits */ - __HAL_FLASH_CLEAR_FLAG(flags); -} -/** - * @} - */ - -/** - * @} - */ - -#endif /* HAL_FLASH_MODULE_ENABLED */ - -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_flash.c + * @author MCD Application Team + * @brief FLASH HAL module driver. + * This file provides firmware functions to manage the following + * functionalities of the internal FLASH memory: + * + Program operations functions + * + Memory Control functions + * + Peripheral State functions + * + @verbatim + ============================================================================== + ##### FLASH peripheral features ##### + ============================================================================== + [..] The Flash memory interface manages CPU AHB I-Code and D-Code accesses + to the Flash memory. It implements the erase and program Flash memory operations + and the read and write protection mechanisms. + + [..] The Flash memory interface accelerates code execution with a system of instruction + prefetch. + + [..] The FLASH main features are: + (+) Flash memory read operations + (+) Flash memory program/erase operations + (+) Read / write protections + (+) Prefetch on I-Code + (+) Option Bytes programming + + + ##### How to use this driver ##### + ============================================================================== + [..] + This driver provides functions and macros to configure and program the FLASH + memory of all STM32F1xx devices. + + (#) FLASH Memory I/O Programming functions: this group includes all needed + functions to erase and program the main memory: + (++) Lock and Unlock the FLASH interface + (++) Erase function: Erase page, erase all pages + (++) Program functions: half word, word and doubleword + (#) FLASH Option Bytes Programming functions: this group includes all needed + functions to manage the Option Bytes: + (++) Lock and Unlock the Option Bytes + (++) Set/Reset the write protection + (++) Set the Read protection Level + (++) Program the user Option Bytes + (++) Launch the Option Bytes loader + (++) Erase Option Bytes + (++) Program the data Option Bytes + (++) Get the Write protection. + (++) Get the user option bytes. + + (#) Interrupts and flags management functions : this group + includes all needed functions to: + (++) Handle FLASH interrupts + (++) Wait for last FLASH operation according to its status + (++) Get error flag status + + [..] In addition to these function, this driver includes a set of macros allowing + to handle the following operations: + + (+) Set/Get the latency + (+) Enable/Disable the prefetch buffer + (+) Enable/Disable the half cycle access + (+) Enable/Disable the FLASH interrupts + (+) Monitor the FLASH flags status + + @endverbatim + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +#ifdef HAL_FLASH_MODULE_ENABLED + +/** @defgroup FLASH FLASH + * @brief FLASH HAL module driver + * @{ + */ + +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ +/** @defgroup FLASH_Private_Constants FLASH Private Constants + * @{ + */ +/** + * @} + */ + +/* Private macro ---------------------------- ---------------------------------*/ +/** @defgroup FLASH_Private_Macros FLASH Private Macros + * @{ + */ + +/** + * @} + */ + +/* Private variables ---------------------------------------------------------*/ +/** @defgroup FLASH_Private_Variables FLASH Private Variables + * @{ + */ +/* Variables used for Erase pages under interruption*/ +FLASH_ProcessTypeDef pFlash; +/** + * @} + */ + +/* Private function prototypes -----------------------------------------------*/ +/** @defgroup FLASH_Private_Functions FLASH Private Functions + * @{ + */ +static void FLASH_Program_HalfWord(uint32_t Address, uint16_t Data); +static void FLASH_SetErrorCode(void); +extern void FLASH_PageErase(uint32_t PageAddress); +/** + * @} + */ + +/* Exported functions ---------------------------------------------------------*/ +/** @defgroup FLASH_Exported_Functions FLASH Exported Functions + * @{ + */ + +/** @defgroup FLASH_Exported_Functions_Group1 Programming operation functions + * @brief Programming operation functions + * +@verbatim +@endverbatim + * @{ + */ + +/** + * @brief Program halfword, word or double word at a specified address + * @note The function HAL_FLASH_Unlock() should be called before to unlock the FLASH interface + * The function HAL_FLASH_Lock() should be called after to lock the FLASH interface + * + * @note If an erase and a program operations are requested simultaneously, + * the erase operation is performed before the program one. + * + * @note FLASH should be previously erased before new programmation (only exception to this + * is when 0x0000 is programmed) + * + * @param TypeProgram: Indicate the way to program at a specified address. + * This parameter can be a value of @ref FLASH_Type_Program + * @param Address: Specifies the address to be programmed. + * @param Data: Specifies the data to be programmed + * + * @retval HAL_StatusTypeDef HAL Status + */ +HAL_StatusTypeDef HAL_FLASH_Program(uint32_t TypeProgram, uint32_t Address, uint64_t Data) +{ + HAL_StatusTypeDef status = HAL_ERROR; + uint8_t index = 0; + uint8_t nbiterations = 0; + + /* Process Locked */ + __HAL_LOCK(&pFlash); + + /* Check the parameters */ + assert_param(IS_FLASH_TYPEPROGRAM(TypeProgram)); + assert_param(IS_FLASH_PROGRAM_ADDRESS(Address)); + +#if defined(FLASH_BANK2_END) + if(Address <= FLASH_BANK1_END) + { +#endif /* FLASH_BANK2_END */ + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation(FLASH_TIMEOUT_VALUE); +#if defined(FLASH_BANK2_END) + } + else + { + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperationBank2(FLASH_TIMEOUT_VALUE); + } +#endif /* FLASH_BANK2_END */ + + if(status == HAL_OK) + { + if(TypeProgram == FLASH_TYPEPROGRAM_HALFWORD) + { + /* Program halfword (16-bit) at a specified address. */ + nbiterations = 1U; + } + else if(TypeProgram == FLASH_TYPEPROGRAM_WORD) + { + /* Program word (32-bit = 2*16-bit) at a specified address. */ + nbiterations = 2U; + } + else + { + /* Program double word (64-bit = 4*16-bit) at a specified address. */ + nbiterations = 4U; + } + + for (index = 0U; index < nbiterations; index++) + { + FLASH_Program_HalfWord((Address + (2U*index)), (uint16_t)(Data >> (16U*index))); + +#if defined(FLASH_BANK2_END) + if(Address <= FLASH_BANK1_END) + { +#endif /* FLASH_BANK2_END */ + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation(FLASH_TIMEOUT_VALUE); + + /* If the program operation is completed, disable the PG Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_PG); +#if defined(FLASH_BANK2_END) + } + else + { + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperationBank2(FLASH_TIMEOUT_VALUE); + + /* If the program operation is completed, disable the PG Bit */ + CLEAR_BIT(FLASH->CR2, FLASH_CR2_PG); + } +#endif /* FLASH_BANK2_END */ + /* In case of error, stop programation procedure */ + if (status != HAL_OK) + { + break; + } + } + } + + /* Process Unlocked */ + __HAL_UNLOCK(&pFlash); + + return status; +} + +/** + * @brief Program halfword, word or double word at a specified address with interrupt enabled. + * @note The function HAL_FLASH_Unlock() should be called before to unlock the FLASH interface + * The function HAL_FLASH_Lock() should be called after to lock the FLASH interface + * + * @note If an erase and a program operations are requested simultaneously, + * the erase operation is performed before the program one. + * + * @param TypeProgram: Indicate the way to program at a specified address. + * This parameter can be a value of @ref FLASH_Type_Program + * @param Address: Specifies the address to be programmed. + * @param Data: Specifies the data to be programmed + * + * @retval HAL_StatusTypeDef HAL Status + */ +HAL_StatusTypeDef HAL_FLASH_Program_IT(uint32_t TypeProgram, uint32_t Address, uint64_t Data) +{ + HAL_StatusTypeDef status = HAL_OK; + + /* Process Locked */ + __HAL_LOCK(&pFlash); + + /* Check the parameters */ + assert_param(IS_FLASH_TYPEPROGRAM(TypeProgram)); + assert_param(IS_FLASH_PROGRAM_ADDRESS(Address)); + +#if defined(FLASH_BANK2_END) + /* If procedure already ongoing, reject the next one */ + if (pFlash.ProcedureOnGoing != FLASH_PROC_NONE) + { + return HAL_ERROR; + } + + if(Address <= FLASH_BANK1_END) + { + /* Enable End of FLASH Operation and Error source interrupts */ + __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP_BANK1 | FLASH_IT_ERR_BANK1); + + }else + { + /* Enable End of FLASH Operation and Error source interrupts */ + __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP_BANK2 | FLASH_IT_ERR_BANK2); + } +#else + /* Enable End of FLASH Operation and Error source interrupts */ + __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP | FLASH_IT_ERR); +#endif /* FLASH_BANK2_END */ + + pFlash.Address = Address; + pFlash.Data = Data; + + if(TypeProgram == FLASH_TYPEPROGRAM_HALFWORD) + { + pFlash.ProcedureOnGoing = FLASH_PROC_PROGRAMHALFWORD; + /* Program halfword (16-bit) at a specified address. */ + pFlash.DataRemaining = 1U; + } + else if(TypeProgram == FLASH_TYPEPROGRAM_WORD) + { + pFlash.ProcedureOnGoing = FLASH_PROC_PROGRAMWORD; + /* Program word (32-bit : 2*16-bit) at a specified address. */ + pFlash.DataRemaining = 2U; + } + else + { + pFlash.ProcedureOnGoing = FLASH_PROC_PROGRAMDOUBLEWORD; + /* Program double word (64-bit : 4*16-bit) at a specified address. */ + pFlash.DataRemaining = 4U; + } + + /* Program halfword (16-bit) at a specified address. */ + FLASH_Program_HalfWord(Address, (uint16_t)Data); + + return status; +} + +/** + * @brief This function handles FLASH interrupt request. + * @retval None + */ +void HAL_FLASH_IRQHandler(void) +{ + uint32_t addresstmp = 0U; + + /* Check FLASH operation error flags */ +#if defined(FLASH_BANK2_END) + if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR_BANK1) || __HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR_BANK1) || \ + (__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR_BANK2) || __HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR_BANK2))) +#else + if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR) ||__HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR)) +#endif /* FLASH_BANK2_END */ + { + /* Return the faulty address */ + addresstmp = pFlash.Address; + /* Reset address */ + pFlash.Address = 0xFFFFFFFFU; + + /* Save the Error code */ + FLASH_SetErrorCode(); + + /* FLASH error interrupt user callback */ + HAL_FLASH_OperationErrorCallback(addresstmp); + + /* Stop the procedure ongoing */ + pFlash.ProcedureOnGoing = FLASH_PROC_NONE; + } + + /* Check FLASH End of Operation flag */ +#if defined(FLASH_BANK2_END) + if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_EOP_BANK1)) + { + /* Clear FLASH End of Operation pending bit */ + __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP_BANK1); +#else + if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_EOP)) + { + /* Clear FLASH End of Operation pending bit */ + __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP); +#endif /* FLASH_BANK2_END */ + + /* Process can continue only if no error detected */ + if(pFlash.ProcedureOnGoing != FLASH_PROC_NONE) + { + if(pFlash.ProcedureOnGoing == FLASH_PROC_PAGEERASE) + { + /* Nb of pages to erased can be decreased */ + pFlash.DataRemaining--; + + /* Check if there are still pages to erase */ + if(pFlash.DataRemaining != 0U) + { + addresstmp = pFlash.Address; + /*Indicate user which sector has been erased */ + HAL_FLASH_EndOfOperationCallback(addresstmp); + + /*Increment sector number*/ + addresstmp = pFlash.Address + FLASH_PAGE_SIZE; + pFlash.Address = addresstmp; + + /* If the erase operation is completed, disable the PER Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_PER); + + FLASH_PageErase(addresstmp); + } + else + { + /* No more pages to Erase, user callback can be called. */ + /* Reset Sector and stop Erase pages procedure */ + pFlash.Address = addresstmp = 0xFFFFFFFFU; + pFlash.ProcedureOnGoing = FLASH_PROC_NONE; + /* FLASH EOP interrupt user callback */ + HAL_FLASH_EndOfOperationCallback(addresstmp); + } + } + else if(pFlash.ProcedureOnGoing == FLASH_PROC_MASSERASE) + { + /* Operation is completed, disable the MER Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_MER); + +#if defined(FLASH_BANK2_END) + /* Stop Mass Erase procedure if no pending mass erase on other bank */ + if (HAL_IS_BIT_CLR(FLASH->CR2, FLASH_CR2_MER)) + { +#endif /* FLASH_BANK2_END */ + /* MassErase ended. Return the selected bank */ + /* FLASH EOP interrupt user callback */ + HAL_FLASH_EndOfOperationCallback(0U); + + /* Stop Mass Erase procedure*/ + pFlash.ProcedureOnGoing = FLASH_PROC_NONE; + } +#if defined(FLASH_BANK2_END) + } +#endif /* FLASH_BANK2_END */ + else + { + /* Nb of 16-bit data to program can be decreased */ + pFlash.DataRemaining--; + + /* Check if there are still 16-bit data to program */ + if(pFlash.DataRemaining != 0U) + { + /* Increment address to 16-bit */ + pFlash.Address += 2U; + addresstmp = pFlash.Address; + + /* Shift to have next 16-bit data */ + pFlash.Data = (pFlash.Data >> 16U); + + /* Operation is completed, disable the PG Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_PG); + + /*Program halfword (16-bit) at a specified address.*/ + FLASH_Program_HalfWord(addresstmp, (uint16_t)pFlash.Data); + } + else + { + /* Program ended. Return the selected address */ + /* FLASH EOP interrupt user callback */ + if (pFlash.ProcedureOnGoing == FLASH_PROC_PROGRAMHALFWORD) + { + HAL_FLASH_EndOfOperationCallback(pFlash.Address); + } + else if (pFlash.ProcedureOnGoing == FLASH_PROC_PROGRAMWORD) + { + HAL_FLASH_EndOfOperationCallback(pFlash.Address - 2U); + } + else + { + HAL_FLASH_EndOfOperationCallback(pFlash.Address - 6U); + } + + /* Reset Address and stop Program procedure */ + pFlash.Address = 0xFFFFFFFFU; + pFlash.ProcedureOnGoing = FLASH_PROC_NONE; + } + } + } + } + +#if defined(FLASH_BANK2_END) + /* Check FLASH End of Operation flag */ + if(__HAL_FLASH_GET_FLAG( FLASH_FLAG_EOP_BANK2)) + { + /* Clear FLASH End of Operation pending bit */ + __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP_BANK2); + + /* Process can continue only if no error detected */ + if(pFlash.ProcedureOnGoing != FLASH_PROC_NONE) + { + if(pFlash.ProcedureOnGoing == FLASH_PROC_PAGEERASE) + { + /* Nb of pages to erased can be decreased */ + pFlash.DataRemaining--; + + /* Check if there are still pages to erase*/ + if(pFlash.DataRemaining != 0U) + { + /* Indicate user which page address has been erased*/ + HAL_FLASH_EndOfOperationCallback(pFlash.Address); + + /* Increment page address to next page */ + pFlash.Address += FLASH_PAGE_SIZE; + addresstmp = pFlash.Address; + + /* Operation is completed, disable the PER Bit */ + CLEAR_BIT(FLASH->CR2, FLASH_CR2_PER); + + FLASH_PageErase(addresstmp); + } + else + { + /*No more pages to Erase*/ + + /*Reset Address and stop Erase pages procedure*/ + pFlash.Address = 0xFFFFFFFFU; + pFlash.ProcedureOnGoing = FLASH_PROC_NONE; + + /* FLASH EOP interrupt user callback */ + HAL_FLASH_EndOfOperationCallback(pFlash.Address); + } + } + else if(pFlash.ProcedureOnGoing == FLASH_PROC_MASSERASE) + { + /* Operation is completed, disable the MER Bit */ + CLEAR_BIT(FLASH->CR2, FLASH_CR2_MER); + + if (HAL_IS_BIT_CLR(FLASH->CR, FLASH_CR_MER)) + { + /* MassErase ended. Return the selected bank*/ + /* FLASH EOP interrupt user callback */ + HAL_FLASH_EndOfOperationCallback(0U); + + pFlash.ProcedureOnGoing = FLASH_PROC_NONE; + } + } + else + { + /* Nb of 16-bit data to program can be decreased */ + pFlash.DataRemaining--; + + /* Check if there are still 16-bit data to program */ + if(pFlash.DataRemaining != 0U) + { + /* Increment address to 16-bit */ + pFlash.Address += 2U; + addresstmp = pFlash.Address; + + /* Shift to have next 16-bit data */ + pFlash.Data = (pFlash.Data >> 16U); + + /* Operation is completed, disable the PG Bit */ + CLEAR_BIT(FLASH->CR2, FLASH_CR2_PG); + + /*Program halfword (16-bit) at a specified address.*/ + FLASH_Program_HalfWord(addresstmp, (uint16_t)pFlash.Data); + } + else + { + /*Program ended. Return the selected address*/ + /* FLASH EOP interrupt user callback */ + if (pFlash.ProcedureOnGoing == FLASH_PROC_PROGRAMHALFWORD) + { + HAL_FLASH_EndOfOperationCallback(pFlash.Address); + } + else if (pFlash.ProcedureOnGoing == FLASH_PROC_PROGRAMWORD) + { + HAL_FLASH_EndOfOperationCallback(pFlash.Address-2U); + } + else + { + HAL_FLASH_EndOfOperationCallback(pFlash.Address-6U); + } + + /* Reset Address and stop Program procedure*/ + pFlash.Address = 0xFFFFFFFFU; + pFlash.ProcedureOnGoing = FLASH_PROC_NONE; + } + } + } + } +#endif + + if(pFlash.ProcedureOnGoing == FLASH_PROC_NONE) + { +#if defined(FLASH_BANK2_END) + /* Operation is completed, disable the PG, PER and MER Bits for both bank */ + CLEAR_BIT(FLASH->CR, (FLASH_CR_PG | FLASH_CR_PER | FLASH_CR_MER)); + CLEAR_BIT(FLASH->CR2, (FLASH_CR2_PG | FLASH_CR2_PER | FLASH_CR2_MER)); + + /* Disable End of FLASH Operation and Error source interrupts for both banks */ + __HAL_FLASH_DISABLE_IT(FLASH_IT_EOP_BANK1 | FLASH_IT_ERR_BANK1 | FLASH_IT_EOP_BANK2 | FLASH_IT_ERR_BANK2); +#else + /* Operation is completed, disable the PG, PER and MER Bits */ + CLEAR_BIT(FLASH->CR, (FLASH_CR_PG | FLASH_CR_PER | FLASH_CR_MER)); + + /* Disable End of FLASH Operation and Error source interrupts */ + __HAL_FLASH_DISABLE_IT(FLASH_IT_EOP | FLASH_IT_ERR); +#endif /* FLASH_BANK2_END */ + + /* Process Unlocked */ + __HAL_UNLOCK(&pFlash); + } +} + +/** + * @brief FLASH end of operation interrupt callback + * @param ReturnValue: The value saved in this parameter depends on the ongoing procedure + * - Mass Erase: No return value expected + * - Pages Erase: Address of the page which has been erased + * (if 0xFFFFFFFF, it means that all the selected pages have been erased) + * - Program: Address which was selected for data program + * @retval none + */ +__weak void HAL_FLASH_EndOfOperationCallback(uint32_t ReturnValue) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(ReturnValue); + + /* NOTE : This function Should not be modified, when the callback is needed, + the HAL_FLASH_EndOfOperationCallback could be implemented in the user file + */ +} + +/** + * @brief FLASH operation error interrupt callback + * @param ReturnValue: The value saved in this parameter depends on the ongoing procedure + * - Mass Erase: No return value expected + * - Pages Erase: Address of the page which returned an error + * - Program: Address which was selected for data program + * @retval none + */ +__weak void HAL_FLASH_OperationErrorCallback(uint32_t ReturnValue) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(ReturnValue); + + /* NOTE : This function Should not be modified, when the callback is needed, + the HAL_FLASH_OperationErrorCallback could be implemented in the user file + */ +} + +/** + * @} + */ + +/** @defgroup FLASH_Exported_Functions_Group2 Peripheral Control functions + * @brief management functions + * +@verbatim + =============================================================================== + ##### Peripheral Control functions ##### + =============================================================================== + [..] + This subsection provides a set of functions allowing to control the FLASH + memory operations. + +@endverbatim + * @{ + */ + +/** + * @brief Unlock the FLASH control register access + * @retval HAL Status + */ +HAL_StatusTypeDef HAL_FLASH_Unlock(void) +{ + HAL_StatusTypeDef status = HAL_OK; + + if(READ_BIT(FLASH->CR, FLASH_CR_LOCK) != RESET) + { + /* Authorize the FLASH Registers access */ + WRITE_REG(FLASH->KEYR, FLASH_KEY1); + WRITE_REG(FLASH->KEYR, FLASH_KEY2); + + /* Verify Flash is unlocked */ + if(READ_BIT(FLASH->CR, FLASH_CR_LOCK) != RESET) + { + status = HAL_ERROR; + } + } +#if defined(FLASH_BANK2_END) + if(READ_BIT(FLASH->CR2, FLASH_CR2_LOCK) != RESET) + { + /* Authorize the FLASH BANK2 Registers access */ + WRITE_REG(FLASH->KEYR2, FLASH_KEY1); + WRITE_REG(FLASH->KEYR2, FLASH_KEY2); + + /* Verify Flash BANK2 is unlocked */ + if(READ_BIT(FLASH->CR2, FLASH_CR2_LOCK) != RESET) + { + status = HAL_ERROR; + } + } +#endif /* FLASH_BANK2_END */ + + return status; +} + +/** + * @brief Locks the FLASH control register access + * @retval HAL Status + */ +HAL_StatusTypeDef HAL_FLASH_Lock(void) +{ + /* Set the LOCK Bit to lock the FLASH Registers access */ + SET_BIT(FLASH->CR, FLASH_CR_LOCK); + +#if defined(FLASH_BANK2_END) + /* Set the LOCK Bit to lock the FLASH BANK2 Registers access */ + SET_BIT(FLASH->CR2, FLASH_CR2_LOCK); + +#endif /* FLASH_BANK2_END */ + return HAL_OK; +} + +/** + * @brief Unlock the FLASH Option Control Registers access. + * @retval HAL Status + */ +HAL_StatusTypeDef HAL_FLASH_OB_Unlock(void) +{ + if (HAL_IS_BIT_CLR(FLASH->CR, FLASH_CR_OPTWRE)) + { + /* Authorizes the Option Byte register programming */ + WRITE_REG(FLASH->OPTKEYR, FLASH_OPTKEY1); + WRITE_REG(FLASH->OPTKEYR, FLASH_OPTKEY2); + } + else + { + return HAL_ERROR; + } + + return HAL_OK; +} + +/** + * @brief Lock the FLASH Option Control Registers access. + * @retval HAL Status + */ +HAL_StatusTypeDef HAL_FLASH_OB_Lock(void) +{ + /* Clear the OPTWRE Bit to lock the FLASH Option Byte Registers access */ + CLEAR_BIT(FLASH->CR, FLASH_CR_OPTWRE); + + return HAL_OK; +} + +/** + * @brief Launch the option byte loading. + * @note This function will reset automatically the MCU. + * @retval None + */ +void HAL_FLASH_OB_Launch(void) +{ + /* Initiates a system reset request to launch the option byte loading */ + HAL_NVIC_SystemReset(); +} + +/** + * @} + */ + +/** @defgroup FLASH_Exported_Functions_Group3 Peripheral errors functions + * @brief Peripheral errors functions + * +@verbatim + =============================================================================== + ##### Peripheral Errors functions ##### + =============================================================================== + [..] + This subsection permit to get in run-time errors of the FLASH peripheral. + +@endverbatim + * @{ + */ + +/** + * @brief Get the specific FLASH error flag. + * @retval FLASH_ErrorCode The returned value can be: + * @ref FLASH_Error_Codes + */ +uint32_t HAL_FLASH_GetError(void) +{ + return pFlash.ErrorCode; +} + +/** + * @} + */ + +/** + * @} + */ + +/** @addtogroup FLASH_Private_Functions + * @{ + */ + +/** + * @brief Program a half-word (16-bit) at a specified address. + * @param Address specify the address to be programmed. + * @param Data specify the data to be programmed. + * @retval None + */ +static void FLASH_Program_HalfWord(uint32_t Address, uint16_t Data) +{ + /* Clean the error context */ + pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; + +#if defined(FLASH_BANK2_END) + if(Address <= FLASH_BANK1_END) + { +#endif /* FLASH_BANK2_END */ + /* Proceed to program the new data */ + SET_BIT(FLASH->CR, FLASH_CR_PG); +#if defined(FLASH_BANK2_END) + } + else + { + /* Proceed to program the new data */ + SET_BIT(FLASH->CR2, FLASH_CR2_PG); + } +#endif /* FLASH_BANK2_END */ + + /* Write data in the address */ + *(__IO uint16_t*)Address = Data; +} + +/** + * @brief Wait for a FLASH operation to complete. + * @param Timeout maximum flash operation timeout + * @retval HAL Status + */ +HAL_StatusTypeDef FLASH_WaitForLastOperation(uint32_t Timeout) +{ + /* Wait for the FLASH operation to complete by polling on BUSY flag to be reset. + Even if the FLASH operation fails, the BUSY flag will be reset and an error + flag will be set */ + + uint32_t tickstart = HAL_GetTick(); + + while(__HAL_FLASH_GET_FLAG(FLASH_FLAG_BSY)) + { + if (Timeout != HAL_MAX_DELAY) + { + if((Timeout == 0U) || ((HAL_GetTick()-tickstart) > Timeout)) + { + return HAL_TIMEOUT; + } + } + } + + /* Check FLASH End of Operation flag */ + if (__HAL_FLASH_GET_FLAG(FLASH_FLAG_EOP)) + { + /* Clear FLASH End of Operation pending bit */ + __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP); + } + + if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR) || + __HAL_FLASH_GET_FLAG(FLASH_FLAG_OPTVERR) || + __HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR)) + { + /*Save the error code*/ + FLASH_SetErrorCode(); + return HAL_ERROR; + } + + /* There is no error flag set */ + return HAL_OK; +} + +#if defined(FLASH_BANK2_END) +/** + * @brief Wait for a FLASH BANK2 operation to complete. + * @param Timeout maximum flash operation timeout + * @retval HAL_StatusTypeDef HAL Status + */ +HAL_StatusTypeDef FLASH_WaitForLastOperationBank2(uint32_t Timeout) +{ + /* Wait for the FLASH BANK2 operation to complete by polling on BUSY flag to be reset. + Even if the FLASH BANK2 operation fails, the BUSY flag will be reset and an error + flag will be set */ + + uint32_t tickstart = HAL_GetTick(); + + while(__HAL_FLASH_GET_FLAG(FLASH_FLAG_BSY_BANK2)) + { + if (Timeout != HAL_MAX_DELAY) + { + if((Timeout == 0U) || ((HAL_GetTick()-tickstart) > Timeout)) + { + return HAL_TIMEOUT; + } + } + } + + /* Check FLASH End of Operation flag */ + if (__HAL_FLASH_GET_FLAG(FLASH_FLAG_EOP_BANK2)) + { + /* Clear FLASH End of Operation pending bit */ + __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP_BANK2); + } + + if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR_BANK2) || __HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR_BANK2)) + { + /*Save the error code*/ + FLASH_SetErrorCode(); + return HAL_ERROR; + } + + /* If there is an error flag set */ + return HAL_OK; + +} +#endif /* FLASH_BANK2_END */ + +/** + * @brief Set the specific FLASH error flag. + * @retval None + */ +static void FLASH_SetErrorCode(void) +{ + uint32_t flags = 0U; + +#if defined(FLASH_BANK2_END) + if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR) || __HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR_BANK2)) +#else + if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_WRPERR)) +#endif /* FLASH_BANK2_END */ + { + pFlash.ErrorCode |= HAL_FLASH_ERROR_WRP; +#if defined(FLASH_BANK2_END) + flags |= FLASH_FLAG_WRPERR | FLASH_FLAG_WRPERR_BANK2; +#else + flags |= FLASH_FLAG_WRPERR; +#endif /* FLASH_BANK2_END */ + } +#if defined(FLASH_BANK2_END) + if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR) || __HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR_BANK2)) +#else + if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_PGERR)) +#endif /* FLASH_BANK2_END */ + { + pFlash.ErrorCode |= HAL_FLASH_ERROR_PROG; +#if defined(FLASH_BANK2_END) + flags |= FLASH_FLAG_PGERR | FLASH_FLAG_PGERR_BANK2; +#else + flags |= FLASH_FLAG_PGERR; +#endif /* FLASH_BANK2_END */ + } + if(__HAL_FLASH_GET_FLAG(FLASH_FLAG_OPTVERR)) + { + pFlash.ErrorCode |= HAL_FLASH_ERROR_OPTV; + __HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_OPTVERR); + } + + /* Clear FLASH error pending bits */ + __HAL_FLASH_CLEAR_FLAG(flags); +} +/** + * @} + */ + +/** + * @} + */ + +#endif /* HAL_FLASH_MODULE_ENABLED */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c similarity index 96% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c index ebd6f8b..27b07b8 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c @@ -1,1127 +1,1127 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_flash_ex.c - * @author MCD Application Team - * @brief Extended FLASH HAL module driver. - * - * This file provides firmware functions to manage the following - * functionalities of the FLASH peripheral: - * + Extended Initialization/de-initialization functions - * + Extended I/O operation functions - * + Extended Peripheral Control functions - * - @verbatim - ============================================================================== - ##### Flash peripheral extended features ##### - ============================================================================== - - ##### How to use this driver ##### - ============================================================================== - [..] This driver provides functions to configure and program the FLASH memory - of all STM32F1xxx devices. It includes - - (++) Set/Reset the write protection - (++) Program the user Option Bytes - (++) Get the Read protection Level - - @endverbatim - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ -#ifdef HAL_FLASH_MODULE_ENABLED - -/** @addtogroup FLASH - * @{ - */ -/** @addtogroup FLASH_Private_Variables - * @{ - */ -/* Variables used for Erase pages under interruption*/ -extern FLASH_ProcessTypeDef pFlash; -/** - * @} - */ - -/** - * @} - */ - -/** @defgroup FLASHEx FLASHEx - * @brief FLASH HAL Extension module driver - * @{ - */ - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/** @defgroup FLASHEx_Private_Constants FLASHEx Private Constants - * @{ - */ -#define FLASH_POSITION_IWDGSW_BIT FLASH_OBR_IWDG_SW_Pos -#define FLASH_POSITION_OB_USERDATA0_BIT FLASH_OBR_DATA0_Pos -#define FLASH_POSITION_OB_USERDATA1_BIT FLASH_OBR_DATA1_Pos -/** - * @} - */ - -/* Private macro -------------------------------------------------------------*/ -/** @defgroup FLASHEx_Private_Macros FLASHEx Private Macros - * @{ - */ -/** - * @} - */ - -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/** @defgroup FLASHEx_Private_Functions FLASHEx Private Functions - * @{ - */ -/* Erase operations */ -static void FLASH_MassErase(uint32_t Banks); -void FLASH_PageErase(uint32_t PageAddress); - -/* Option bytes control */ -static HAL_StatusTypeDef FLASH_OB_EnableWRP(uint32_t WriteProtectPage); -static HAL_StatusTypeDef FLASH_OB_DisableWRP(uint32_t WriteProtectPage); -static HAL_StatusTypeDef FLASH_OB_RDP_LevelConfig(uint8_t ReadProtectLevel); -static HAL_StatusTypeDef FLASH_OB_UserConfig(uint8_t UserConfig); -static HAL_StatusTypeDef FLASH_OB_ProgramData(uint32_t Address, uint8_t Data); -static uint32_t FLASH_OB_GetWRP(void); -static uint32_t FLASH_OB_GetRDP(void); -static uint8_t FLASH_OB_GetUser(void); - -/** - * @} - */ - -/* Exported functions ---------------------------------------------------------*/ -/** @defgroup FLASHEx_Exported_Functions FLASHEx Exported Functions - * @{ - */ - -/** @defgroup FLASHEx_Exported_Functions_Group1 FLASHEx Memory Erasing functions - * @brief FLASH Memory Erasing functions - * -@verbatim - ============================================================================== - ##### FLASH Erasing Programming functions ##### - ============================================================================== - - [..] The FLASH Memory Erasing functions, includes the following functions: - (+) @ref HAL_FLASHEx_Erase: return only when erase has been done - (+) @ref HAL_FLASHEx_Erase_IT: end of erase is done when @ref HAL_FLASH_EndOfOperationCallback - is called with parameter 0xFFFFFFFF - - [..] Any operation of erase should follow these steps: - (#) Call the @ref HAL_FLASH_Unlock() function to enable the flash control register and - program memory access. - (#) Call the desired function to erase page. - (#) Call the @ref HAL_FLASH_Lock() to disable the flash program memory access - (recommended to protect the FLASH memory against possible unwanted operation). - -@endverbatim - * @{ - */ - - -/** - * @brief Perform a mass erase or erase the specified FLASH memory pages - * @note To correctly run this function, the @ref HAL_FLASH_Unlock() function - * must be called before. - * Call the @ref HAL_FLASH_Lock() to disable the flash memory access - * (recommended to protect the FLASH memory against possible unwanted operation) - * @param[in] pEraseInit pointer to an FLASH_EraseInitTypeDef structure that - * contains the configuration information for the erasing. - * - * @param[out] PageError pointer to variable that - * contains the configuration information on faulty page in case of error - * (0xFFFFFFFF means that all the pages have been correctly erased) - * - * @retval HAL_StatusTypeDef HAL Status - */ -HAL_StatusTypeDef HAL_FLASHEx_Erase(FLASH_EraseInitTypeDef *pEraseInit, uint32_t *PageError) -{ - HAL_StatusTypeDef status = HAL_ERROR; - uint32_t address = 0U; - - /* Process Locked */ - __HAL_LOCK(&pFlash); - - /* Check the parameters */ - assert_param(IS_FLASH_TYPEERASE(pEraseInit->TypeErase)); - - if (pEraseInit->TypeErase == FLASH_TYPEERASE_MASSERASE) - { -#if defined(FLASH_BANK2_END) - if (pEraseInit->Banks == FLASH_BANK_BOTH) - { - /* Mass Erase requested for Bank1 and Bank2 */ - /* Wait for last operation to be completed */ - if ((FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) && \ - (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK)) - { - /*Mass erase to be done*/ - FLASH_MassErase(FLASH_BANK_BOTH); - - /* Wait for last operation to be completed */ - if ((FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) && \ - (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK)) - { - status = HAL_OK; - } - - /* If the erase operation is completed, disable the MER Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_MER); - CLEAR_BIT(FLASH->CR2, FLASH_CR2_MER); - } - } - else if (pEraseInit->Banks == FLASH_BANK_2) - { - /* Mass Erase requested for Bank2 */ - /* Wait for last operation to be completed */ - if (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) - { - /*Mass erase to be done*/ - FLASH_MassErase(FLASH_BANK_2); - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE); - - /* If the erase operation is completed, disable the MER Bit */ - CLEAR_BIT(FLASH->CR2, FLASH_CR2_MER); - } - } - else -#endif /* FLASH_BANK2_END */ - { - /* Mass Erase requested for Bank1 */ - /* Wait for last operation to be completed */ - if (FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) - { - /*Mass erase to be done*/ - FLASH_MassErase(FLASH_BANK_1); - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - /* If the erase operation is completed, disable the MER Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_MER); - } - } - } - else - { - /* Page Erase is requested */ - /* Check the parameters */ - assert_param(IS_FLASH_PROGRAM_ADDRESS(pEraseInit->PageAddress)); - assert_param(IS_FLASH_NB_PAGES(pEraseInit->PageAddress, pEraseInit->NbPages)); - -#if defined(FLASH_BANK2_END) - /* Page Erase requested on address located on bank2 */ - if(pEraseInit->PageAddress > FLASH_BANK1_END) - { - /* Wait for last operation to be completed */ - if (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) - { - /*Initialization of PageError variable*/ - *PageError = 0xFFFFFFFFU; - - /* Erase by page by page to be done*/ - for(address = pEraseInit->PageAddress; - address < (pEraseInit->PageAddress + (pEraseInit->NbPages)*FLASH_PAGE_SIZE); - address += FLASH_PAGE_SIZE) - { - FLASH_PageErase(address); - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE); - - /* If the erase operation is completed, disable the PER Bit */ - CLEAR_BIT(FLASH->CR2, FLASH_CR2_PER); - - if (status != HAL_OK) - { - /* In case of error, stop erase procedure and return the faulty address */ - *PageError = address; - break; - } - } - } - } - else -#endif /* FLASH_BANK2_END */ - { - /* Page Erase requested on address located on bank1 */ - /* Wait for last operation to be completed */ - if (FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) - { - /*Initialization of PageError variable*/ - *PageError = 0xFFFFFFFFU; - - /* Erase page by page to be done*/ - for(address = pEraseInit->PageAddress; - address < ((pEraseInit->NbPages * FLASH_PAGE_SIZE) + pEraseInit->PageAddress); - address += FLASH_PAGE_SIZE) - { - FLASH_PageErase(address); - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - /* If the erase operation is completed, disable the PER Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_PER); - - if (status != HAL_OK) - { - /* In case of error, stop erase procedure and return the faulty address */ - *PageError = address; - break; - } - } - } - } - } - - /* Process Unlocked */ - __HAL_UNLOCK(&pFlash); - - return status; -} - -/** - * @brief Perform a mass erase or erase the specified FLASH memory pages with interrupt enabled - * @note To correctly run this function, the @ref HAL_FLASH_Unlock() function - * must be called before. - * Call the @ref HAL_FLASH_Lock() to disable the flash memory access - * (recommended to protect the FLASH memory against possible unwanted operation) - * @param pEraseInit pointer to an FLASH_EraseInitTypeDef structure that - * contains the configuration information for the erasing. - * - * @retval HAL_StatusTypeDef HAL Status - */ -HAL_StatusTypeDef HAL_FLASHEx_Erase_IT(FLASH_EraseInitTypeDef *pEraseInit) -{ - HAL_StatusTypeDef status = HAL_OK; - - /* Process Locked */ - __HAL_LOCK(&pFlash); - - /* If procedure already ongoing, reject the next one */ - if (pFlash.ProcedureOnGoing != FLASH_PROC_NONE) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_FLASH_TYPEERASE(pEraseInit->TypeErase)); - - /* Enable End of FLASH Operation and Error source interrupts */ - __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP | FLASH_IT_ERR); - -#if defined(FLASH_BANK2_END) - /* Enable End of FLASH Operation and Error source interrupts */ - __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP_BANK2 | FLASH_IT_ERR_BANK2); - -#endif - if (pEraseInit->TypeErase == FLASH_TYPEERASE_MASSERASE) - { - /*Mass erase to be done*/ - pFlash.ProcedureOnGoing = FLASH_PROC_MASSERASE; - FLASH_MassErase(pEraseInit->Banks); - } - else - { - /* Erase by page to be done*/ - - /* Check the parameters */ - assert_param(IS_FLASH_PROGRAM_ADDRESS(pEraseInit->PageAddress)); - assert_param(IS_FLASH_NB_PAGES(pEraseInit->PageAddress, pEraseInit->NbPages)); - - pFlash.ProcedureOnGoing = FLASH_PROC_PAGEERASE; - pFlash.DataRemaining = pEraseInit->NbPages; - pFlash.Address = pEraseInit->PageAddress; - - /*Erase 1st page and wait for IT*/ - FLASH_PageErase(pEraseInit->PageAddress); - } - - return status; -} - -/** - * @} - */ - -/** @defgroup FLASHEx_Exported_Functions_Group2 Option Bytes Programming functions - * @brief Option Bytes Programming functions - * -@verbatim - ============================================================================== - ##### Option Bytes Programming functions ##### - ============================================================================== - [..] - This subsection provides a set of functions allowing to control the FLASH - option bytes operations. - -@endverbatim - * @{ - */ - -/** - * @brief Erases the FLASH option bytes. - * @note This functions erases all option bytes except the Read protection (RDP). - * The function @ref HAL_FLASH_Unlock() should be called before to unlock the FLASH interface - * The function @ref HAL_FLASH_OB_Unlock() should be called before to unlock the options bytes - * The function @ref HAL_FLASH_OB_Launch() should be called after to force the reload of the options bytes - * (system reset will occur) - * @retval HAL status - */ - -HAL_StatusTypeDef HAL_FLASHEx_OBErase(void) -{ - uint8_t rdptmp = OB_RDP_LEVEL_0; - HAL_StatusTypeDef status = HAL_ERROR; - - /* Get the actual read protection Option Byte value */ - rdptmp = FLASH_OB_GetRDP(); - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - if(status == HAL_OK) - { - /* Clean the error context */ - pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; - - /* If the previous operation is completed, proceed to erase the option bytes */ - SET_BIT(FLASH->CR, FLASH_CR_OPTER); - SET_BIT(FLASH->CR, FLASH_CR_STRT); - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - /* If the erase operation is completed, disable the OPTER Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_OPTER); - - if(status == HAL_OK) - { - /* Restore the last read protection Option Byte value */ - status = FLASH_OB_RDP_LevelConfig(rdptmp); - } - } - - /* Return the erase status */ - return status; -} - -/** - * @brief Program option bytes - * @note The function @ref HAL_FLASH_Unlock() should be called before to unlock the FLASH interface - * The function @ref HAL_FLASH_OB_Unlock() should be called before to unlock the options bytes - * The function @ref HAL_FLASH_OB_Launch() should be called after to force the reload of the options bytes - * (system reset will occur) - * - * @param pOBInit pointer to an FLASH_OBInitStruct structure that - * contains the configuration information for the programming. - * - * @retval HAL_StatusTypeDef HAL Status - */ -HAL_StatusTypeDef HAL_FLASHEx_OBProgram(FLASH_OBProgramInitTypeDef *pOBInit) -{ - HAL_StatusTypeDef status = HAL_ERROR; - - /* Process Locked */ - __HAL_LOCK(&pFlash); - - /* Check the parameters */ - assert_param(IS_OPTIONBYTE(pOBInit->OptionType)); - - /* Write protection configuration */ - if((pOBInit->OptionType & OPTIONBYTE_WRP) == OPTIONBYTE_WRP) - { - assert_param(IS_WRPSTATE(pOBInit->WRPState)); - if (pOBInit->WRPState == OB_WRPSTATE_ENABLE) - { - /* Enable of Write protection on the selected page */ - status = FLASH_OB_EnableWRP(pOBInit->WRPPage); - } - else - { - /* Disable of Write protection on the selected page */ - status = FLASH_OB_DisableWRP(pOBInit->WRPPage); - } - if (status != HAL_OK) - { - /* Process Unlocked */ - __HAL_UNLOCK(&pFlash); - return status; - } - } - - /* Read protection configuration */ - if((pOBInit->OptionType & OPTIONBYTE_RDP) == OPTIONBYTE_RDP) - { - status = FLASH_OB_RDP_LevelConfig(pOBInit->RDPLevel); - if (status != HAL_OK) - { - /* Process Unlocked */ - __HAL_UNLOCK(&pFlash); - return status; - } - } - - /* USER configuration */ - if((pOBInit->OptionType & OPTIONBYTE_USER) == OPTIONBYTE_USER) - { - status = FLASH_OB_UserConfig(pOBInit->USERConfig); - if (status != HAL_OK) - { - /* Process Unlocked */ - __HAL_UNLOCK(&pFlash); - return status; - } - } - - /* DATA configuration*/ - if((pOBInit->OptionType & OPTIONBYTE_DATA) == OPTIONBYTE_DATA) - { - status = FLASH_OB_ProgramData(pOBInit->DATAAddress, pOBInit->DATAData); - if (status != HAL_OK) - { - /* Process Unlocked */ - __HAL_UNLOCK(&pFlash); - return status; - } - } - - /* Process Unlocked */ - __HAL_UNLOCK(&pFlash); - - return status; -} - -/** - * @brief Get the Option byte configuration - * @param pOBInit pointer to an FLASH_OBInitStruct structure that - * contains the configuration information for the programming. - * - * @retval None - */ -void HAL_FLASHEx_OBGetConfig(FLASH_OBProgramInitTypeDef *pOBInit) -{ - pOBInit->OptionType = OPTIONBYTE_WRP | OPTIONBYTE_RDP | OPTIONBYTE_USER; - - /*Get WRP*/ - pOBInit->WRPPage = FLASH_OB_GetWRP(); - - /*Get RDP Level*/ - pOBInit->RDPLevel = FLASH_OB_GetRDP(); - - /*Get USER*/ - pOBInit->USERConfig = FLASH_OB_GetUser(); -} - -/** - * @brief Get the Option byte user data - * @param DATAAdress Address of the option byte DATA - * This parameter can be one of the following values: - * @arg @ref OB_DATA_ADDRESS_DATA0 - * @arg @ref OB_DATA_ADDRESS_DATA1 - * @retval Value programmed in USER data - */ -uint32_t HAL_FLASHEx_OBGetUserData(uint32_t DATAAdress) -{ - uint32_t value = 0; - - if (DATAAdress == OB_DATA_ADDRESS_DATA0) - { - /* Get value programmed in OB USER Data0 */ - value = READ_BIT(FLASH->OBR, FLASH_OBR_DATA0) >> FLASH_POSITION_OB_USERDATA0_BIT; - } - else - { - /* Get value programmed in OB USER Data1 */ - value = READ_BIT(FLASH->OBR, FLASH_OBR_DATA1) >> FLASH_POSITION_OB_USERDATA1_BIT; - } - - return value; -} - -/** - * @} - */ - -/** - * @} - */ - -/** @addtogroup FLASHEx_Private_Functions - * @{ - */ - -/** - * @brief Full erase of FLASH memory Bank - * @param Banks Banks to be erased - * This parameter can be one of the following values: - * @arg @ref FLASH_BANK_1 Bank1 to be erased - @if STM32F101xG - * @arg @ref FLASH_BANK_2 Bank2 to be erased - * @arg @ref FLASH_BANK_BOTH Bank1 and Bank2 to be erased - @endif - @if STM32F103xG - * @arg @ref FLASH_BANK_2 Bank2 to be erased - * @arg @ref FLASH_BANK_BOTH Bank1 and Bank2 to be erased - @endif - * - * @retval None - */ -static void FLASH_MassErase(uint32_t Banks) -{ - /* Check the parameters */ - assert_param(IS_FLASH_BANK(Banks)); - - /* Clean the error context */ - pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; - -#if defined(FLASH_BANK2_END) - if(Banks == FLASH_BANK_BOTH) - { - /* bank1 & bank2 will be erased*/ - SET_BIT(FLASH->CR, FLASH_CR_MER); - SET_BIT(FLASH->CR2, FLASH_CR2_MER); - SET_BIT(FLASH->CR, FLASH_CR_STRT); - SET_BIT(FLASH->CR2, FLASH_CR2_STRT); - } - else if(Banks == FLASH_BANK_2) - { - /*Only bank2 will be erased*/ - SET_BIT(FLASH->CR2, FLASH_CR2_MER); - SET_BIT(FLASH->CR2, FLASH_CR2_STRT); - } - else - { -#endif /* FLASH_BANK2_END */ -#if !defined(FLASH_BANK2_END) - /* Prevent unused argument(s) compilation warning */ - UNUSED(Banks); -#endif /* FLASH_BANK2_END */ - /* Only bank1 will be erased*/ - SET_BIT(FLASH->CR, FLASH_CR_MER); - SET_BIT(FLASH->CR, FLASH_CR_STRT); -#if defined(FLASH_BANK2_END) - } -#endif /* FLASH_BANK2_END */ -} - -/** - * @brief Enable the write protection of the desired pages - * @note An option byte erase is done automatically in this function. - * @note When the memory read protection level is selected (RDP level = 1), - * it is not possible to program or erase the flash page i if - * debug features are connected or boot code is executed in RAM, even if nWRPi = 1 - * - * @param WriteProtectPage specifies the page(s) to be write protected. - * The value of this parameter depend on device used within the same series - * @retval HAL status - */ -static HAL_StatusTypeDef FLASH_OB_EnableWRP(uint32_t WriteProtectPage) -{ - HAL_StatusTypeDef status = HAL_OK; - uint16_t WRP0_Data = 0xFFFF; -#if defined(FLASH_WRP1_WRP1) - uint16_t WRP1_Data = 0xFFFF; -#endif /* FLASH_WRP1_WRP1 */ -#if defined(FLASH_WRP2_WRP2) - uint16_t WRP2_Data = 0xFFFF; -#endif /* FLASH_WRP2_WRP2 */ -#if defined(FLASH_WRP3_WRP3) - uint16_t WRP3_Data = 0xFFFF; -#endif /* FLASH_WRP3_WRP3 */ - - /* Check the parameters */ - assert_param(IS_OB_WRP(WriteProtectPage)); - - /* Get current write protected pages and the new pages to be protected ******/ - WriteProtectPage = (uint32_t)(~((~FLASH_OB_GetWRP()) | WriteProtectPage)); - -#if defined(OB_WRP_PAGES0TO15MASK) - WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO15MASK); -#elif defined(OB_WRP_PAGES0TO31MASK) - WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO31MASK); -#endif /* OB_WRP_PAGES0TO31MASK */ - -#if defined(OB_WRP_PAGES16TO31MASK) - WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES16TO31MASK) >> 8U); -#elif defined(OB_WRP_PAGES32TO63MASK) - WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO63MASK) >> 8U); -#endif /* OB_WRP_PAGES32TO63MASK */ - -#if defined(OB_WRP_PAGES64TO95MASK) - WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES64TO95MASK) >> 16U); -#endif /* OB_WRP_PAGES64TO95MASK */ -#if defined(OB_WRP_PAGES32TO47MASK) - WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO47MASK) >> 16U); -#endif /* OB_WRP_PAGES32TO47MASK */ - -#if defined(OB_WRP_PAGES96TO127MASK) - WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES96TO127MASK) >> 24U); -#elif defined(OB_WRP_PAGES48TO255MASK) - WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO255MASK) >> 24U); -#elif defined(OB_WRP_PAGES48TO511MASK) - WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO511MASK) >> 24U); -#elif defined(OB_WRP_PAGES48TO127MASK) - WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO127MASK) >> 24U); -#endif /* OB_WRP_PAGES96TO127MASK */ - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - if(status == HAL_OK) - { - /* Clean the error context */ - pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; - - /* To be able to write again option byte, need to perform a option byte erase */ - status = HAL_FLASHEx_OBErase(); - if (status == HAL_OK) - { - /* Enable write protection */ - SET_BIT(FLASH->CR, FLASH_CR_OPTPG); - -#if defined(FLASH_WRP0_WRP0) - if(WRP0_Data != 0xFFU) - { - OB->WRP0 &= WRP0_Data; - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - } -#endif /* FLASH_WRP0_WRP0 */ - -#if defined(FLASH_WRP1_WRP1) - if((status == HAL_OK) && (WRP1_Data != 0xFFU)) - { - OB->WRP1 &= WRP1_Data; - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - } -#endif /* FLASH_WRP1_WRP1 */ - -#if defined(FLASH_WRP2_WRP2) - if((status == HAL_OK) && (WRP2_Data != 0xFFU)) - { - OB->WRP2 &= WRP2_Data; - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - } -#endif /* FLASH_WRP2_WRP2 */ - -#if defined(FLASH_WRP3_WRP3) - if((status == HAL_OK) && (WRP3_Data != 0xFFU)) - { - OB->WRP3 &= WRP3_Data; - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - } -#endif /* FLASH_WRP3_WRP3 */ - - /* if the program operation is completed, disable the OPTPG Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG); - } - } - - return status; -} - -/** - * @brief Disable the write protection of the desired pages - * @note An option byte erase is done automatically in this function. - * @note When the memory read protection level is selected (RDP level = 1), - * it is not possible to program or erase the flash page i if - * debug features are connected or boot code is executed in RAM, even if nWRPi = 1 - * - * @param WriteProtectPage specifies the page(s) to be write unprotected. - * The value of this parameter depend on device used within the same series - * @retval HAL status - */ -static HAL_StatusTypeDef FLASH_OB_DisableWRP(uint32_t WriteProtectPage) -{ - HAL_StatusTypeDef status = HAL_OK; - uint16_t WRP0_Data = 0xFFFF; -#if defined(FLASH_WRP1_WRP1) - uint16_t WRP1_Data = 0xFFFF; -#endif /* FLASH_WRP1_WRP1 */ -#if defined(FLASH_WRP2_WRP2) - uint16_t WRP2_Data = 0xFFFF; -#endif /* FLASH_WRP2_WRP2 */ -#if defined(FLASH_WRP3_WRP3) - uint16_t WRP3_Data = 0xFFFF; -#endif /* FLASH_WRP3_WRP3 */ - - /* Check the parameters */ - assert_param(IS_OB_WRP(WriteProtectPage)); - - /* Get current write protected pages and the new pages to be unprotected ******/ - WriteProtectPage = (FLASH_OB_GetWRP() | WriteProtectPage); - -#if defined(OB_WRP_PAGES0TO15MASK) - WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO15MASK); -#elif defined(OB_WRP_PAGES0TO31MASK) - WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO31MASK); -#endif /* OB_WRP_PAGES0TO31MASK */ - -#if defined(OB_WRP_PAGES16TO31MASK) - WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES16TO31MASK) >> 8U); -#elif defined(OB_WRP_PAGES32TO63MASK) - WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO63MASK) >> 8U); -#endif /* OB_WRP_PAGES32TO63MASK */ - -#if defined(OB_WRP_PAGES64TO95MASK) - WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES64TO95MASK) >> 16U); -#endif /* OB_WRP_PAGES64TO95MASK */ -#if defined(OB_WRP_PAGES32TO47MASK) - WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO47MASK) >> 16U); -#endif /* OB_WRP_PAGES32TO47MASK */ - -#if defined(OB_WRP_PAGES96TO127MASK) - WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES96TO127MASK) >> 24U); -#elif defined(OB_WRP_PAGES48TO255MASK) - WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO255MASK) >> 24U); -#elif defined(OB_WRP_PAGES48TO511MASK) - WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO511MASK) >> 24U); -#elif defined(OB_WRP_PAGES48TO127MASK) - WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO127MASK) >> 24U); -#endif /* OB_WRP_PAGES96TO127MASK */ - - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - if(status == HAL_OK) - { - /* Clean the error context */ - pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; - - /* To be able to write again option byte, need to perform a option byte erase */ - status = HAL_FLASHEx_OBErase(); - if (status == HAL_OK) - { - SET_BIT(FLASH->CR, FLASH_CR_OPTPG); - -#if defined(FLASH_WRP0_WRP0) - if(WRP0_Data != 0xFFU) - { - OB->WRP0 |= WRP0_Data; - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - } -#endif /* FLASH_WRP0_WRP0 */ - -#if defined(FLASH_WRP1_WRP1) - if((status == HAL_OK) && (WRP1_Data != 0xFFU)) - { - OB->WRP1 |= WRP1_Data; - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - } -#endif /* FLASH_WRP1_WRP1 */ - -#if defined(FLASH_WRP2_WRP2) - if((status == HAL_OK) && (WRP2_Data != 0xFFU)) - { - OB->WRP2 |= WRP2_Data; - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - } -#endif /* FLASH_WRP2_WRP2 */ - -#if defined(FLASH_WRP3_WRP3) - if((status == HAL_OK) && (WRP3_Data != 0xFFU)) - { - OB->WRP3 |= WRP3_Data; - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - } -#endif /* FLASH_WRP3_WRP3 */ - - /* if the program operation is completed, disable the OPTPG Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG); - } - } - return status; -} - -/** - * @brief Set the read protection level. - * @param ReadProtectLevel specifies the read protection level. - * This parameter can be one of the following values: - * @arg @ref OB_RDP_LEVEL_0 No protection - * @arg @ref OB_RDP_LEVEL_1 Read protection of the memory - * @retval HAL status - */ -static HAL_StatusTypeDef FLASH_OB_RDP_LevelConfig(uint8_t ReadProtectLevel) -{ - HAL_StatusTypeDef status = HAL_OK; - - /* Check the parameters */ - assert_param(IS_OB_RDP_LEVEL(ReadProtectLevel)); - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - if(status == HAL_OK) - { - /* Clean the error context */ - pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; - - /* If the previous operation is completed, proceed to erase the option bytes */ - SET_BIT(FLASH->CR, FLASH_CR_OPTER); - SET_BIT(FLASH->CR, FLASH_CR_STRT); - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - /* If the erase operation is completed, disable the OPTER Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_OPTER); - - if(status == HAL_OK) - { - /* Enable the Option Bytes Programming operation */ - SET_BIT(FLASH->CR, FLASH_CR_OPTPG); - - WRITE_REG(OB->RDP, ReadProtectLevel); - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - /* if the program operation is completed, disable the OPTPG Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG); - } - } - - return status; -} - -/** - * @brief Program the FLASH User Option Byte. - * @note Programming of the OB should be performed only after an erase (otherwise PGERR occurs) - * @param UserConfig The FLASH User Option Bytes values FLASH_OBR_IWDG_SW(Bit2), - * FLASH_OBR_nRST_STOP(Bit3),FLASH_OBR_nRST_STDBY(Bit4). - * And BFBF2(Bit5) for STM32F101xG and STM32F103xG . - * @retval HAL status - */ -static HAL_StatusTypeDef FLASH_OB_UserConfig(uint8_t UserConfig) -{ - HAL_StatusTypeDef status = HAL_OK; - - /* Check the parameters */ - assert_param(IS_OB_IWDG_SOURCE((UserConfig&OB_IWDG_SW))); - assert_param(IS_OB_STOP_SOURCE((UserConfig&OB_STOP_NO_RST))); - assert_param(IS_OB_STDBY_SOURCE((UserConfig&OB_STDBY_NO_RST))); -#if defined(FLASH_BANK2_END) - assert_param(IS_OB_BOOT1((UserConfig&OB_BOOT1_SET))); -#endif /* FLASH_BANK2_END */ - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - if(status == HAL_OK) - { - /* Clean the error context */ - pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; - - /* Enable the Option Bytes Programming operation */ - SET_BIT(FLASH->CR, FLASH_CR_OPTPG); - -#if defined(FLASH_BANK2_END) - OB->USER = (UserConfig | 0xF0U); -#else - OB->USER = (UserConfig | 0x88U); -#endif /* FLASH_BANK2_END */ - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - /* if the program operation is completed, disable the OPTPG Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG); - } - - return status; -} - -/** - * @brief Programs a half word at a specified Option Byte Data address. - * @note The function @ref HAL_FLASH_Unlock() should be called before to unlock the FLASH interface - * The function @ref HAL_FLASH_OB_Unlock() should be called before to unlock the options bytes - * The function @ref HAL_FLASH_OB_Launch() should be called after to force the reload of the options bytes - * (system reset will occur) - * Programming of the OB should be performed only after an erase (otherwise PGERR occurs) - * @param Address specifies the address to be programmed. - * This parameter can be 0x1FFFF804 or 0x1FFFF806. - * @param Data specifies the data to be programmed. - * @retval HAL status - */ -static HAL_StatusTypeDef FLASH_OB_ProgramData(uint32_t Address, uint8_t Data) -{ - HAL_StatusTypeDef status = HAL_ERROR; - - /* Check the parameters */ - assert_param(IS_OB_DATA_ADDRESS(Address)); - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - if(status == HAL_OK) - { - /* Clean the error context */ - pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; - - /* Enables the Option Bytes Programming operation */ - SET_BIT(FLASH->CR, FLASH_CR_OPTPG); - *(__IO uint16_t*)Address = Data; - - /* Wait for last operation to be completed */ - status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); - - /* If the program operation is completed, disable the OPTPG Bit */ - CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG); - } - /* Return the Option Byte Data Program Status */ - return status; -} - -/** - * @brief Return the FLASH Write Protection Option Bytes value. - * @retval The FLASH Write Protection Option Bytes value - */ -static uint32_t FLASH_OB_GetWRP(void) -{ - /* Return the FLASH write protection Register value */ - return (uint32_t)(READ_REG(FLASH->WRPR)); -} - -/** - * @brief Returns the FLASH Read Protection level. - * @retval FLASH RDP level - * This parameter can be one of the following values: - * @arg @ref OB_RDP_LEVEL_0 No protection - * @arg @ref OB_RDP_LEVEL_1 Read protection of the memory - */ -static uint32_t FLASH_OB_GetRDP(void) -{ - uint32_t readstatus = OB_RDP_LEVEL_0; - uint32_t tmp_reg = 0U; - - /* Read RDP level bits */ - tmp_reg = READ_BIT(FLASH->OBR, FLASH_OBR_RDPRT); - - if (tmp_reg == FLASH_OBR_RDPRT) - { - readstatus = OB_RDP_LEVEL_1; - } - else - { - readstatus = OB_RDP_LEVEL_0; - } - - return readstatus; -} - -/** - * @brief Return the FLASH User Option Byte value. - * @retval The FLASH User Option Bytes values: FLASH_OBR_IWDG_SW(Bit2), - * FLASH_OBR_nRST_STOP(Bit3),FLASH_OBR_nRST_STDBY(Bit4). - * And FLASH_OBR_BFB2(Bit5) for STM32F101xG and STM32F103xG . - */ -static uint8_t FLASH_OB_GetUser(void) -{ - /* Return the User Option Byte */ - return (uint8_t)((READ_REG(FLASH->OBR) & FLASH_OBR_USER) >> FLASH_POSITION_IWDGSW_BIT); -} - -/** - * @} - */ - -/** - * @} - */ - -/** @addtogroup FLASH - * @{ - */ - -/** @addtogroup FLASH_Private_Functions - * @{ - */ - -/** - * @brief Erase the specified FLASH memory page - * @param PageAddress FLASH page to erase - * The value of this parameter depend on device used within the same series - * - * @retval None - */ -void FLASH_PageErase(uint32_t PageAddress) -{ - /* Clean the error context */ - pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; - -#if defined(FLASH_BANK2_END) - if(PageAddress > FLASH_BANK1_END) - { - /* Proceed to erase the page */ - SET_BIT(FLASH->CR2, FLASH_CR2_PER); - WRITE_REG(FLASH->AR2, PageAddress); - SET_BIT(FLASH->CR2, FLASH_CR2_STRT); - } - else - { -#endif /* FLASH_BANK2_END */ - /* Proceed to erase the page */ - SET_BIT(FLASH->CR, FLASH_CR_PER); - WRITE_REG(FLASH->AR, PageAddress); - SET_BIT(FLASH->CR, FLASH_CR_STRT); -#if defined(FLASH_BANK2_END) - } -#endif /* FLASH_BANK2_END */ -} - -/** - * @} - */ - -/** - * @} - */ - -#endif /* HAL_FLASH_MODULE_ENABLED */ -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_flash_ex.c + * @author MCD Application Team + * @brief Extended FLASH HAL module driver. + * + * This file provides firmware functions to manage the following + * functionalities of the FLASH peripheral: + * + Extended Initialization/de-initialization functions + * + Extended I/O operation functions + * + Extended Peripheral Control functions + * + @verbatim + ============================================================================== + ##### Flash peripheral extended features ##### + ============================================================================== + + ##### How to use this driver ##### + ============================================================================== + [..] This driver provides functions to configure and program the FLASH memory + of all STM32F1xxx devices. It includes + + (++) Set/Reset the write protection + (++) Program the user Option Bytes + (++) Get the Read protection Level + + @endverbatim + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ +#ifdef HAL_FLASH_MODULE_ENABLED + +/** @addtogroup FLASH + * @{ + */ +/** @addtogroup FLASH_Private_Variables + * @{ + */ +/* Variables used for Erase pages under interruption*/ +extern FLASH_ProcessTypeDef pFlash; +/** + * @} + */ + +/** + * @} + */ + +/** @defgroup FLASHEx FLASHEx + * @brief FLASH HAL Extension module driver + * @{ + */ + +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ +/** @defgroup FLASHEx_Private_Constants FLASHEx Private Constants + * @{ + */ +#define FLASH_POSITION_IWDGSW_BIT FLASH_OBR_IWDG_SW_Pos +#define FLASH_POSITION_OB_USERDATA0_BIT FLASH_OBR_DATA0_Pos +#define FLASH_POSITION_OB_USERDATA1_BIT FLASH_OBR_DATA1_Pos +/** + * @} + */ + +/* Private macro -------------------------------------------------------------*/ +/** @defgroup FLASHEx_Private_Macros FLASHEx Private Macros + * @{ + */ +/** + * @} + */ + +/* Private variables ---------------------------------------------------------*/ +/* Private function prototypes -----------------------------------------------*/ +/** @defgroup FLASHEx_Private_Functions FLASHEx Private Functions + * @{ + */ +/* Erase operations */ +static void FLASH_MassErase(uint32_t Banks); +void FLASH_PageErase(uint32_t PageAddress); + +/* Option bytes control */ +static HAL_StatusTypeDef FLASH_OB_EnableWRP(uint32_t WriteProtectPage); +static HAL_StatusTypeDef FLASH_OB_DisableWRP(uint32_t WriteProtectPage); +static HAL_StatusTypeDef FLASH_OB_RDP_LevelConfig(uint8_t ReadProtectLevel); +static HAL_StatusTypeDef FLASH_OB_UserConfig(uint8_t UserConfig); +static HAL_StatusTypeDef FLASH_OB_ProgramData(uint32_t Address, uint8_t Data); +static uint32_t FLASH_OB_GetWRP(void); +static uint32_t FLASH_OB_GetRDP(void); +static uint8_t FLASH_OB_GetUser(void); + +/** + * @} + */ + +/* Exported functions ---------------------------------------------------------*/ +/** @defgroup FLASHEx_Exported_Functions FLASHEx Exported Functions + * @{ + */ + +/** @defgroup FLASHEx_Exported_Functions_Group1 FLASHEx Memory Erasing functions + * @brief FLASH Memory Erasing functions + * +@verbatim + ============================================================================== + ##### FLASH Erasing Programming functions ##### + ============================================================================== + + [..] The FLASH Memory Erasing functions, includes the following functions: + (+) @ref HAL_FLASHEx_Erase: return only when erase has been done + (+) @ref HAL_FLASHEx_Erase_IT: end of erase is done when @ref HAL_FLASH_EndOfOperationCallback + is called with parameter 0xFFFFFFFF + + [..] Any operation of erase should follow these steps: + (#) Call the @ref HAL_FLASH_Unlock() function to enable the flash control register and + program memory access. + (#) Call the desired function to erase page. + (#) Call the @ref HAL_FLASH_Lock() to disable the flash program memory access + (recommended to protect the FLASH memory against possible unwanted operation). + +@endverbatim + * @{ + */ + + +/** + * @brief Perform a mass erase or erase the specified FLASH memory pages + * @note To correctly run this function, the @ref HAL_FLASH_Unlock() function + * must be called before. + * Call the @ref HAL_FLASH_Lock() to disable the flash memory access + * (recommended to protect the FLASH memory against possible unwanted operation) + * @param[in] pEraseInit pointer to an FLASH_EraseInitTypeDef structure that + * contains the configuration information for the erasing. + * + * @param[out] PageError pointer to variable that + * contains the configuration information on faulty page in case of error + * (0xFFFFFFFF means that all the pages have been correctly erased) + * + * @retval HAL_StatusTypeDef HAL Status + */ +HAL_StatusTypeDef HAL_FLASHEx_Erase(FLASH_EraseInitTypeDef *pEraseInit, uint32_t *PageError) +{ + HAL_StatusTypeDef status = HAL_ERROR; + uint32_t address = 0U; + + /* Process Locked */ + __HAL_LOCK(&pFlash); + + /* Check the parameters */ + assert_param(IS_FLASH_TYPEERASE(pEraseInit->TypeErase)); + + if (pEraseInit->TypeErase == FLASH_TYPEERASE_MASSERASE) + { +#if defined(FLASH_BANK2_END) + if (pEraseInit->Banks == FLASH_BANK_BOTH) + { + /* Mass Erase requested for Bank1 and Bank2 */ + /* Wait for last operation to be completed */ + if ((FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) && \ + (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK)) + { + /*Mass erase to be done*/ + FLASH_MassErase(FLASH_BANK_BOTH); + + /* Wait for last operation to be completed */ + if ((FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) && \ + (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK)) + { + status = HAL_OK; + } + + /* If the erase operation is completed, disable the MER Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_MER); + CLEAR_BIT(FLASH->CR2, FLASH_CR2_MER); + } + } + else if (pEraseInit->Banks == FLASH_BANK_2) + { + /* Mass Erase requested for Bank2 */ + /* Wait for last operation to be completed */ + if (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) + { + /*Mass erase to be done*/ + FLASH_MassErase(FLASH_BANK_2); + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE); + + /* If the erase operation is completed, disable the MER Bit */ + CLEAR_BIT(FLASH->CR2, FLASH_CR2_MER); + } + } + else +#endif /* FLASH_BANK2_END */ + { + /* Mass Erase requested for Bank1 */ + /* Wait for last operation to be completed */ + if (FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) + { + /*Mass erase to be done*/ + FLASH_MassErase(FLASH_BANK_1); + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + /* If the erase operation is completed, disable the MER Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_MER); + } + } + } + else + { + /* Page Erase is requested */ + /* Check the parameters */ + assert_param(IS_FLASH_PROGRAM_ADDRESS(pEraseInit->PageAddress)); + assert_param(IS_FLASH_NB_PAGES(pEraseInit->PageAddress, pEraseInit->NbPages)); + +#if defined(FLASH_BANK2_END) + /* Page Erase requested on address located on bank2 */ + if(pEraseInit->PageAddress > FLASH_BANK1_END) + { + /* Wait for last operation to be completed */ + if (FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) + { + /*Initialization of PageError variable*/ + *PageError = 0xFFFFFFFFU; + + /* Erase by page by page to be done*/ + for(address = pEraseInit->PageAddress; + address < (pEraseInit->PageAddress + (pEraseInit->NbPages)*FLASH_PAGE_SIZE); + address += FLASH_PAGE_SIZE) + { + FLASH_PageErase(address); + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperationBank2((uint32_t)FLASH_TIMEOUT_VALUE); + + /* If the erase operation is completed, disable the PER Bit */ + CLEAR_BIT(FLASH->CR2, FLASH_CR2_PER); + + if (status != HAL_OK) + { + /* In case of error, stop erase procedure and return the faulty address */ + *PageError = address; + break; + } + } + } + } + else +#endif /* FLASH_BANK2_END */ + { + /* Page Erase requested on address located on bank1 */ + /* Wait for last operation to be completed */ + if (FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE) == HAL_OK) + { + /*Initialization of PageError variable*/ + *PageError = 0xFFFFFFFFU; + + /* Erase page by page to be done*/ + for(address = pEraseInit->PageAddress; + address < ((pEraseInit->NbPages * FLASH_PAGE_SIZE) + pEraseInit->PageAddress); + address += FLASH_PAGE_SIZE) + { + FLASH_PageErase(address); + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + /* If the erase operation is completed, disable the PER Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_PER); + + if (status != HAL_OK) + { + /* In case of error, stop erase procedure and return the faulty address */ + *PageError = address; + break; + } + } + } + } + } + + /* Process Unlocked */ + __HAL_UNLOCK(&pFlash); + + return status; +} + +/** + * @brief Perform a mass erase or erase the specified FLASH memory pages with interrupt enabled + * @note To correctly run this function, the @ref HAL_FLASH_Unlock() function + * must be called before. + * Call the @ref HAL_FLASH_Lock() to disable the flash memory access + * (recommended to protect the FLASH memory against possible unwanted operation) + * @param pEraseInit pointer to an FLASH_EraseInitTypeDef structure that + * contains the configuration information for the erasing. + * + * @retval HAL_StatusTypeDef HAL Status + */ +HAL_StatusTypeDef HAL_FLASHEx_Erase_IT(FLASH_EraseInitTypeDef *pEraseInit) +{ + HAL_StatusTypeDef status = HAL_OK; + + /* Process Locked */ + __HAL_LOCK(&pFlash); + + /* If procedure already ongoing, reject the next one */ + if (pFlash.ProcedureOnGoing != FLASH_PROC_NONE) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_FLASH_TYPEERASE(pEraseInit->TypeErase)); + + /* Enable End of FLASH Operation and Error source interrupts */ + __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP | FLASH_IT_ERR); + +#if defined(FLASH_BANK2_END) + /* Enable End of FLASH Operation and Error source interrupts */ + __HAL_FLASH_ENABLE_IT(FLASH_IT_EOP_BANK2 | FLASH_IT_ERR_BANK2); + +#endif + if (pEraseInit->TypeErase == FLASH_TYPEERASE_MASSERASE) + { + /*Mass erase to be done*/ + pFlash.ProcedureOnGoing = FLASH_PROC_MASSERASE; + FLASH_MassErase(pEraseInit->Banks); + } + else + { + /* Erase by page to be done*/ + + /* Check the parameters */ + assert_param(IS_FLASH_PROGRAM_ADDRESS(pEraseInit->PageAddress)); + assert_param(IS_FLASH_NB_PAGES(pEraseInit->PageAddress, pEraseInit->NbPages)); + + pFlash.ProcedureOnGoing = FLASH_PROC_PAGEERASE; + pFlash.DataRemaining = pEraseInit->NbPages; + pFlash.Address = pEraseInit->PageAddress; + + /*Erase 1st page and wait for IT*/ + FLASH_PageErase(pEraseInit->PageAddress); + } + + return status; +} + +/** + * @} + */ + +/** @defgroup FLASHEx_Exported_Functions_Group2 Option Bytes Programming functions + * @brief Option Bytes Programming functions + * +@verbatim + ============================================================================== + ##### Option Bytes Programming functions ##### + ============================================================================== + [..] + This subsection provides a set of functions allowing to control the FLASH + option bytes operations. + +@endverbatim + * @{ + */ + +/** + * @brief Erases the FLASH option bytes. + * @note This functions erases all option bytes except the Read protection (RDP). + * The function @ref HAL_FLASH_Unlock() should be called before to unlock the FLASH interface + * The function @ref HAL_FLASH_OB_Unlock() should be called before to unlock the options bytes + * The function @ref HAL_FLASH_OB_Launch() should be called after to force the reload of the options bytes + * (system reset will occur) + * @retval HAL status + */ + +HAL_StatusTypeDef HAL_FLASHEx_OBErase(void) +{ + uint8_t rdptmp = OB_RDP_LEVEL_0; + HAL_StatusTypeDef status = HAL_ERROR; + + /* Get the actual read protection Option Byte value */ + rdptmp = FLASH_OB_GetRDP(); + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + if(status == HAL_OK) + { + /* Clean the error context */ + pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; + + /* If the previous operation is completed, proceed to erase the option bytes */ + SET_BIT(FLASH->CR, FLASH_CR_OPTER); + SET_BIT(FLASH->CR, FLASH_CR_STRT); + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + /* If the erase operation is completed, disable the OPTER Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_OPTER); + + if(status == HAL_OK) + { + /* Restore the last read protection Option Byte value */ + status = FLASH_OB_RDP_LevelConfig(rdptmp); + } + } + + /* Return the erase status */ + return status; +} + +/** + * @brief Program option bytes + * @note The function @ref HAL_FLASH_Unlock() should be called before to unlock the FLASH interface + * The function @ref HAL_FLASH_OB_Unlock() should be called before to unlock the options bytes + * The function @ref HAL_FLASH_OB_Launch() should be called after to force the reload of the options bytes + * (system reset will occur) + * + * @param pOBInit pointer to an FLASH_OBInitStruct structure that + * contains the configuration information for the programming. + * + * @retval HAL_StatusTypeDef HAL Status + */ +HAL_StatusTypeDef HAL_FLASHEx_OBProgram(FLASH_OBProgramInitTypeDef *pOBInit) +{ + HAL_StatusTypeDef status = HAL_ERROR; + + /* Process Locked */ + __HAL_LOCK(&pFlash); + + /* Check the parameters */ + assert_param(IS_OPTIONBYTE(pOBInit->OptionType)); + + /* Write protection configuration */ + if((pOBInit->OptionType & OPTIONBYTE_WRP) == OPTIONBYTE_WRP) + { + assert_param(IS_WRPSTATE(pOBInit->WRPState)); + if (pOBInit->WRPState == OB_WRPSTATE_ENABLE) + { + /* Enable of Write protection on the selected page */ + status = FLASH_OB_EnableWRP(pOBInit->WRPPage); + } + else + { + /* Disable of Write protection on the selected page */ + status = FLASH_OB_DisableWRP(pOBInit->WRPPage); + } + if (status != HAL_OK) + { + /* Process Unlocked */ + __HAL_UNLOCK(&pFlash); + return status; + } + } + + /* Read protection configuration */ + if((pOBInit->OptionType & OPTIONBYTE_RDP) == OPTIONBYTE_RDP) + { + status = FLASH_OB_RDP_LevelConfig(pOBInit->RDPLevel); + if (status != HAL_OK) + { + /* Process Unlocked */ + __HAL_UNLOCK(&pFlash); + return status; + } + } + + /* USER configuration */ + if((pOBInit->OptionType & OPTIONBYTE_USER) == OPTIONBYTE_USER) + { + status = FLASH_OB_UserConfig(pOBInit->USERConfig); + if (status != HAL_OK) + { + /* Process Unlocked */ + __HAL_UNLOCK(&pFlash); + return status; + } + } + + /* DATA configuration*/ + if((pOBInit->OptionType & OPTIONBYTE_DATA) == OPTIONBYTE_DATA) + { + status = FLASH_OB_ProgramData(pOBInit->DATAAddress, pOBInit->DATAData); + if (status != HAL_OK) + { + /* Process Unlocked */ + __HAL_UNLOCK(&pFlash); + return status; + } + } + + /* Process Unlocked */ + __HAL_UNLOCK(&pFlash); + + return status; +} + +/** + * @brief Get the Option byte configuration + * @param pOBInit pointer to an FLASH_OBInitStruct structure that + * contains the configuration information for the programming. + * + * @retval None + */ +void HAL_FLASHEx_OBGetConfig(FLASH_OBProgramInitTypeDef *pOBInit) +{ + pOBInit->OptionType = OPTIONBYTE_WRP | OPTIONBYTE_RDP | OPTIONBYTE_USER; + + /*Get WRP*/ + pOBInit->WRPPage = FLASH_OB_GetWRP(); + + /*Get RDP Level*/ + pOBInit->RDPLevel = FLASH_OB_GetRDP(); + + /*Get USER*/ + pOBInit->USERConfig = FLASH_OB_GetUser(); +} + +/** + * @brief Get the Option byte user data + * @param DATAAdress Address of the option byte DATA + * This parameter can be one of the following values: + * @arg @ref OB_DATA_ADDRESS_DATA0 + * @arg @ref OB_DATA_ADDRESS_DATA1 + * @retval Value programmed in USER data + */ +uint32_t HAL_FLASHEx_OBGetUserData(uint32_t DATAAdress) +{ + uint32_t value = 0; + + if (DATAAdress == OB_DATA_ADDRESS_DATA0) + { + /* Get value programmed in OB USER Data0 */ + value = READ_BIT(FLASH->OBR, FLASH_OBR_DATA0) >> FLASH_POSITION_OB_USERDATA0_BIT; + } + else + { + /* Get value programmed in OB USER Data1 */ + value = READ_BIT(FLASH->OBR, FLASH_OBR_DATA1) >> FLASH_POSITION_OB_USERDATA1_BIT; + } + + return value; +} + +/** + * @} + */ + +/** + * @} + */ + +/** @addtogroup FLASHEx_Private_Functions + * @{ + */ + +/** + * @brief Full erase of FLASH memory Bank + * @param Banks Banks to be erased + * This parameter can be one of the following values: + * @arg @ref FLASH_BANK_1 Bank1 to be erased + @if STM32F101xG + * @arg @ref FLASH_BANK_2 Bank2 to be erased + * @arg @ref FLASH_BANK_BOTH Bank1 and Bank2 to be erased + @endif + @if STM32F103xG + * @arg @ref FLASH_BANK_2 Bank2 to be erased + * @arg @ref FLASH_BANK_BOTH Bank1 and Bank2 to be erased + @endif + * + * @retval None + */ +static void FLASH_MassErase(uint32_t Banks) +{ + /* Check the parameters */ + assert_param(IS_FLASH_BANK(Banks)); + + /* Clean the error context */ + pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; + +#if defined(FLASH_BANK2_END) + if(Banks == FLASH_BANK_BOTH) + { + /* bank1 & bank2 will be erased*/ + SET_BIT(FLASH->CR, FLASH_CR_MER); + SET_BIT(FLASH->CR2, FLASH_CR2_MER); + SET_BIT(FLASH->CR, FLASH_CR_STRT); + SET_BIT(FLASH->CR2, FLASH_CR2_STRT); + } + else if(Banks == FLASH_BANK_2) + { + /*Only bank2 will be erased*/ + SET_BIT(FLASH->CR2, FLASH_CR2_MER); + SET_BIT(FLASH->CR2, FLASH_CR2_STRT); + } + else + { +#endif /* FLASH_BANK2_END */ +#if !defined(FLASH_BANK2_END) + /* Prevent unused argument(s) compilation warning */ + UNUSED(Banks); +#endif /* FLASH_BANK2_END */ + /* Only bank1 will be erased*/ + SET_BIT(FLASH->CR, FLASH_CR_MER); + SET_BIT(FLASH->CR, FLASH_CR_STRT); +#if defined(FLASH_BANK2_END) + } +#endif /* FLASH_BANK2_END */ +} + +/** + * @brief Enable the write protection of the desired pages + * @note An option byte erase is done automatically in this function. + * @note When the memory read protection level is selected (RDP level = 1), + * it is not possible to program or erase the flash page i if + * debug features are connected or boot code is executed in RAM, even if nWRPi = 1 + * + * @param WriteProtectPage specifies the page(s) to be write protected. + * The value of this parameter depend on device used within the same series + * @retval HAL status + */ +static HAL_StatusTypeDef FLASH_OB_EnableWRP(uint32_t WriteProtectPage) +{ + HAL_StatusTypeDef status = HAL_OK; + uint16_t WRP0_Data = 0xFFFF; +#if defined(FLASH_WRP1_WRP1) + uint16_t WRP1_Data = 0xFFFF; +#endif /* FLASH_WRP1_WRP1 */ +#if defined(FLASH_WRP2_WRP2) + uint16_t WRP2_Data = 0xFFFF; +#endif /* FLASH_WRP2_WRP2 */ +#if defined(FLASH_WRP3_WRP3) + uint16_t WRP3_Data = 0xFFFF; +#endif /* FLASH_WRP3_WRP3 */ + + /* Check the parameters */ + assert_param(IS_OB_WRP(WriteProtectPage)); + + /* Get current write protected pages and the new pages to be protected ******/ + WriteProtectPage = (uint32_t)(~((~FLASH_OB_GetWRP()) | WriteProtectPage)); + +#if defined(OB_WRP_PAGES0TO15MASK) + WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO15MASK); +#elif defined(OB_WRP_PAGES0TO31MASK) + WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO31MASK); +#endif /* OB_WRP_PAGES0TO31MASK */ + +#if defined(OB_WRP_PAGES16TO31MASK) + WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES16TO31MASK) >> 8U); +#elif defined(OB_WRP_PAGES32TO63MASK) + WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO63MASK) >> 8U); +#endif /* OB_WRP_PAGES32TO63MASK */ + +#if defined(OB_WRP_PAGES64TO95MASK) + WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES64TO95MASK) >> 16U); +#endif /* OB_WRP_PAGES64TO95MASK */ +#if defined(OB_WRP_PAGES32TO47MASK) + WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO47MASK) >> 16U); +#endif /* OB_WRP_PAGES32TO47MASK */ + +#if defined(OB_WRP_PAGES96TO127MASK) + WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES96TO127MASK) >> 24U); +#elif defined(OB_WRP_PAGES48TO255MASK) + WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO255MASK) >> 24U); +#elif defined(OB_WRP_PAGES48TO511MASK) + WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO511MASK) >> 24U); +#elif defined(OB_WRP_PAGES48TO127MASK) + WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO127MASK) >> 24U); +#endif /* OB_WRP_PAGES96TO127MASK */ + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + if(status == HAL_OK) + { + /* Clean the error context */ + pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; + + /* To be able to write again option byte, need to perform a option byte erase */ + status = HAL_FLASHEx_OBErase(); + if (status == HAL_OK) + { + /* Enable write protection */ + SET_BIT(FLASH->CR, FLASH_CR_OPTPG); + +#if defined(FLASH_WRP0_WRP0) + if(WRP0_Data != 0xFFU) + { + OB->WRP0 &= WRP0_Data; + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + } +#endif /* FLASH_WRP0_WRP0 */ + +#if defined(FLASH_WRP1_WRP1) + if((status == HAL_OK) && (WRP1_Data != 0xFFU)) + { + OB->WRP1 &= WRP1_Data; + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + } +#endif /* FLASH_WRP1_WRP1 */ + +#if defined(FLASH_WRP2_WRP2) + if((status == HAL_OK) && (WRP2_Data != 0xFFU)) + { + OB->WRP2 &= WRP2_Data; + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + } +#endif /* FLASH_WRP2_WRP2 */ + +#if defined(FLASH_WRP3_WRP3) + if((status == HAL_OK) && (WRP3_Data != 0xFFU)) + { + OB->WRP3 &= WRP3_Data; + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + } +#endif /* FLASH_WRP3_WRP3 */ + + /* if the program operation is completed, disable the OPTPG Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG); + } + } + + return status; +} + +/** + * @brief Disable the write protection of the desired pages + * @note An option byte erase is done automatically in this function. + * @note When the memory read protection level is selected (RDP level = 1), + * it is not possible to program or erase the flash page i if + * debug features are connected or boot code is executed in RAM, even if nWRPi = 1 + * + * @param WriteProtectPage specifies the page(s) to be write unprotected. + * The value of this parameter depend on device used within the same series + * @retval HAL status + */ +static HAL_StatusTypeDef FLASH_OB_DisableWRP(uint32_t WriteProtectPage) +{ + HAL_StatusTypeDef status = HAL_OK; + uint16_t WRP0_Data = 0xFFFF; +#if defined(FLASH_WRP1_WRP1) + uint16_t WRP1_Data = 0xFFFF; +#endif /* FLASH_WRP1_WRP1 */ +#if defined(FLASH_WRP2_WRP2) + uint16_t WRP2_Data = 0xFFFF; +#endif /* FLASH_WRP2_WRP2 */ +#if defined(FLASH_WRP3_WRP3) + uint16_t WRP3_Data = 0xFFFF; +#endif /* FLASH_WRP3_WRP3 */ + + /* Check the parameters */ + assert_param(IS_OB_WRP(WriteProtectPage)); + + /* Get current write protected pages and the new pages to be unprotected ******/ + WriteProtectPage = (FLASH_OB_GetWRP() | WriteProtectPage); + +#if defined(OB_WRP_PAGES0TO15MASK) + WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO15MASK); +#elif defined(OB_WRP_PAGES0TO31MASK) + WRP0_Data = (uint16_t)(WriteProtectPage & OB_WRP_PAGES0TO31MASK); +#endif /* OB_WRP_PAGES0TO31MASK */ + +#if defined(OB_WRP_PAGES16TO31MASK) + WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES16TO31MASK) >> 8U); +#elif defined(OB_WRP_PAGES32TO63MASK) + WRP1_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO63MASK) >> 8U); +#endif /* OB_WRP_PAGES32TO63MASK */ + +#if defined(OB_WRP_PAGES64TO95MASK) + WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES64TO95MASK) >> 16U); +#endif /* OB_WRP_PAGES64TO95MASK */ +#if defined(OB_WRP_PAGES32TO47MASK) + WRP2_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES32TO47MASK) >> 16U); +#endif /* OB_WRP_PAGES32TO47MASK */ + +#if defined(OB_WRP_PAGES96TO127MASK) + WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES96TO127MASK) >> 24U); +#elif defined(OB_WRP_PAGES48TO255MASK) + WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO255MASK) >> 24U); +#elif defined(OB_WRP_PAGES48TO511MASK) + WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO511MASK) >> 24U); +#elif defined(OB_WRP_PAGES48TO127MASK) + WRP3_Data = (uint16_t)((WriteProtectPage & OB_WRP_PAGES48TO127MASK) >> 24U); +#endif /* OB_WRP_PAGES96TO127MASK */ + + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + if(status == HAL_OK) + { + /* Clean the error context */ + pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; + + /* To be able to write again option byte, need to perform a option byte erase */ + status = HAL_FLASHEx_OBErase(); + if (status == HAL_OK) + { + SET_BIT(FLASH->CR, FLASH_CR_OPTPG); + +#if defined(FLASH_WRP0_WRP0) + if(WRP0_Data != 0xFFU) + { + OB->WRP0 |= WRP0_Data; + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + } +#endif /* FLASH_WRP0_WRP0 */ + +#if defined(FLASH_WRP1_WRP1) + if((status == HAL_OK) && (WRP1_Data != 0xFFU)) + { + OB->WRP1 |= WRP1_Data; + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + } +#endif /* FLASH_WRP1_WRP1 */ + +#if defined(FLASH_WRP2_WRP2) + if((status == HAL_OK) && (WRP2_Data != 0xFFU)) + { + OB->WRP2 |= WRP2_Data; + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + } +#endif /* FLASH_WRP2_WRP2 */ + +#if defined(FLASH_WRP3_WRP3) + if((status == HAL_OK) && (WRP3_Data != 0xFFU)) + { + OB->WRP3 |= WRP3_Data; + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + } +#endif /* FLASH_WRP3_WRP3 */ + + /* if the program operation is completed, disable the OPTPG Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG); + } + } + return status; +} + +/** + * @brief Set the read protection level. + * @param ReadProtectLevel specifies the read protection level. + * This parameter can be one of the following values: + * @arg @ref OB_RDP_LEVEL_0 No protection + * @arg @ref OB_RDP_LEVEL_1 Read protection of the memory + * @retval HAL status + */ +static HAL_StatusTypeDef FLASH_OB_RDP_LevelConfig(uint8_t ReadProtectLevel) +{ + HAL_StatusTypeDef status = HAL_OK; + + /* Check the parameters */ + assert_param(IS_OB_RDP_LEVEL(ReadProtectLevel)); + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + if(status == HAL_OK) + { + /* Clean the error context */ + pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; + + /* If the previous operation is completed, proceed to erase the option bytes */ + SET_BIT(FLASH->CR, FLASH_CR_OPTER); + SET_BIT(FLASH->CR, FLASH_CR_STRT); + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + /* If the erase operation is completed, disable the OPTER Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_OPTER); + + if(status == HAL_OK) + { + /* Enable the Option Bytes Programming operation */ + SET_BIT(FLASH->CR, FLASH_CR_OPTPG); + + WRITE_REG(OB->RDP, ReadProtectLevel); + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + /* if the program operation is completed, disable the OPTPG Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG); + } + } + + return status; +} + +/** + * @brief Program the FLASH User Option Byte. + * @note Programming of the OB should be performed only after an erase (otherwise PGERR occurs) + * @param UserConfig The FLASH User Option Bytes values FLASH_OBR_IWDG_SW(Bit2), + * FLASH_OBR_nRST_STOP(Bit3),FLASH_OBR_nRST_STDBY(Bit4). + * And BFBF2(Bit5) for STM32F101xG and STM32F103xG . + * @retval HAL status + */ +static HAL_StatusTypeDef FLASH_OB_UserConfig(uint8_t UserConfig) +{ + HAL_StatusTypeDef status = HAL_OK; + + /* Check the parameters */ + assert_param(IS_OB_IWDG_SOURCE((UserConfig&OB_IWDG_SW))); + assert_param(IS_OB_STOP_SOURCE((UserConfig&OB_STOP_NO_RST))); + assert_param(IS_OB_STDBY_SOURCE((UserConfig&OB_STDBY_NO_RST))); +#if defined(FLASH_BANK2_END) + assert_param(IS_OB_BOOT1((UserConfig&OB_BOOT1_SET))); +#endif /* FLASH_BANK2_END */ + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + if(status == HAL_OK) + { + /* Clean the error context */ + pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; + + /* Enable the Option Bytes Programming operation */ + SET_BIT(FLASH->CR, FLASH_CR_OPTPG); + +#if defined(FLASH_BANK2_END) + OB->USER = (UserConfig | 0xF0U); +#else + OB->USER = (UserConfig | 0x88U); +#endif /* FLASH_BANK2_END */ + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + /* if the program operation is completed, disable the OPTPG Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG); + } + + return status; +} + +/** + * @brief Programs a half word at a specified Option Byte Data address. + * @note The function @ref HAL_FLASH_Unlock() should be called before to unlock the FLASH interface + * The function @ref HAL_FLASH_OB_Unlock() should be called before to unlock the options bytes + * The function @ref HAL_FLASH_OB_Launch() should be called after to force the reload of the options bytes + * (system reset will occur) + * Programming of the OB should be performed only after an erase (otherwise PGERR occurs) + * @param Address specifies the address to be programmed. + * This parameter can be 0x1FFFF804 or 0x1FFFF806. + * @param Data specifies the data to be programmed. + * @retval HAL status + */ +static HAL_StatusTypeDef FLASH_OB_ProgramData(uint32_t Address, uint8_t Data) +{ + HAL_StatusTypeDef status = HAL_ERROR; + + /* Check the parameters */ + assert_param(IS_OB_DATA_ADDRESS(Address)); + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + if(status == HAL_OK) + { + /* Clean the error context */ + pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; + + /* Enables the Option Bytes Programming operation */ + SET_BIT(FLASH->CR, FLASH_CR_OPTPG); + *(__IO uint16_t*)Address = Data; + + /* Wait for last operation to be completed */ + status = FLASH_WaitForLastOperation((uint32_t)FLASH_TIMEOUT_VALUE); + + /* If the program operation is completed, disable the OPTPG Bit */ + CLEAR_BIT(FLASH->CR, FLASH_CR_OPTPG); + } + /* Return the Option Byte Data Program Status */ + return status; +} + +/** + * @brief Return the FLASH Write Protection Option Bytes value. + * @retval The FLASH Write Protection Option Bytes value + */ +static uint32_t FLASH_OB_GetWRP(void) +{ + /* Return the FLASH write protection Register value */ + return (uint32_t)(READ_REG(FLASH->WRPR)); +} + +/** + * @brief Returns the FLASH Read Protection level. + * @retval FLASH RDP level + * This parameter can be one of the following values: + * @arg @ref OB_RDP_LEVEL_0 No protection + * @arg @ref OB_RDP_LEVEL_1 Read protection of the memory + */ +static uint32_t FLASH_OB_GetRDP(void) +{ + uint32_t readstatus = OB_RDP_LEVEL_0; + uint32_t tmp_reg = 0U; + + /* Read RDP level bits */ + tmp_reg = READ_BIT(FLASH->OBR, FLASH_OBR_RDPRT); + + if (tmp_reg == FLASH_OBR_RDPRT) + { + readstatus = OB_RDP_LEVEL_1; + } + else + { + readstatus = OB_RDP_LEVEL_0; + } + + return readstatus; +} + +/** + * @brief Return the FLASH User Option Byte value. + * @retval The FLASH User Option Bytes values: FLASH_OBR_IWDG_SW(Bit2), + * FLASH_OBR_nRST_STOP(Bit3),FLASH_OBR_nRST_STDBY(Bit4). + * And FLASH_OBR_BFB2(Bit5) for STM32F101xG and STM32F103xG . + */ +static uint8_t FLASH_OB_GetUser(void) +{ + /* Return the User Option Byte */ + return (uint8_t)((READ_REG(FLASH->OBR) & FLASH_OBR_USER) >> FLASH_POSITION_IWDGSW_BIT); +} + +/** + * @} + */ + +/** + * @} + */ + +/** @addtogroup FLASH + * @{ + */ + +/** @addtogroup FLASH_Private_Functions + * @{ + */ + +/** + * @brief Erase the specified FLASH memory page + * @param PageAddress FLASH page to erase + * The value of this parameter depend on device used within the same series + * + * @retval None + */ +void FLASH_PageErase(uint32_t PageAddress) +{ + /* Clean the error context */ + pFlash.ErrorCode = HAL_FLASH_ERROR_NONE; + +#if defined(FLASH_BANK2_END) + if(PageAddress > FLASH_BANK1_END) + { + /* Proceed to erase the page */ + SET_BIT(FLASH->CR2, FLASH_CR2_PER); + WRITE_REG(FLASH->AR2, PageAddress); + SET_BIT(FLASH->CR2, FLASH_CR2_STRT); + } + else + { +#endif /* FLASH_BANK2_END */ + /* Proceed to erase the page */ + SET_BIT(FLASH->CR, FLASH_CR_PER); + WRITE_REG(FLASH->AR, PageAddress); + SET_BIT(FLASH->CR, FLASH_CR_STRT); +#if defined(FLASH_BANK2_END) + } +#endif /* FLASH_BANK2_END */ +} + +/** + * @} + */ + +/** + * @} + */ + +#endif /* HAL_FLASH_MODULE_ENABLED */ +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c index cd3563a..6ba68a9 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c @@ -1,587 +1,587 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_gpio.c - * @author MCD Application Team - * @brief GPIO HAL module driver. - * This file provides firmware functions to manage the following - * functionalities of the General Purpose Input/Output (GPIO) peripheral: - * + Initialization and de-initialization functions - * + IO operation functions - * - @verbatim - ============================================================================== - ##### GPIO Peripheral features ##### - ============================================================================== - [..] - Subject to the specific hardware characteristics of each I/O port listed in the datasheet, each - port bit of the General Purpose IO (GPIO) Ports, can be individually configured by software - in several modes: - (+) Input mode - (+) Analog mode - (+) Output mode - (+) Alternate function mode - (+) External interrupt/event lines - - [..] - During and just after reset, the alternate functions and external interrupt - lines are not active and the I/O ports are configured in input floating mode. - - [..] - All GPIO pins have weak internal pull-up and pull-down resistors, which can be - activated or not. - - [..] - In Output or Alternate mode, each IO can be configured on open-drain or push-pull - type and the IO speed can be selected depending on the VDD value. - - [..] - All ports have external interrupt/event capability. To use external interrupt - lines, the port must be configured in input mode. All available GPIO pins are - connected to the 16 external interrupt/event lines from EXTI0 to EXTI15. - - [..] - The external interrupt/event controller consists of up to 20 edge detectors in connectivity - line devices, or 19 edge detectors in other devices for generating event/interrupt requests. - Each input line can be independently configured to select the type (event or interrupt) and - the corresponding trigger event (rising or falling or both). Each line can also masked - independently. A pending register maintains the status line of the interrupt requests - - ##### How to use this driver ##### - ============================================================================== - [..] - (#) Enable the GPIO APB2 clock using the following function : __HAL_RCC_GPIOx_CLK_ENABLE(). - - (#) Configure the GPIO pin(s) using HAL_GPIO_Init(). - (++) Configure the IO mode using "Mode" member from GPIO_InitTypeDef structure - (++) Activate Pull-up, Pull-down resistor using "Pull" member from GPIO_InitTypeDef - structure. - (++) In case of Output or alternate function mode selection: the speed is - configured through "Speed" member from GPIO_InitTypeDef structure - (++) Analog mode is required when a pin is to be used as ADC channel - or DAC output. - (++) In case of external interrupt/event selection the "Mode" member from - GPIO_InitTypeDef structure select the type (interrupt or event) and - the corresponding trigger event (rising or falling or both). - - (#) In case of external interrupt/event mode selection, configure NVIC IRQ priority - mapped to the EXTI line using HAL_NVIC_SetPriority() and enable it using - HAL_NVIC_EnableIRQ(). - - (#) To get the level of a pin configured in input mode use HAL_GPIO_ReadPin(). - - (#) To set/reset the level of a pin configured in output mode use - HAL_GPIO_WritePin()/HAL_GPIO_TogglePin(). - - (#) To lock pin configuration until next reset use HAL_GPIO_LockPin(). - - (#) During and just after reset, the alternate functions are not - active and the GPIO pins are configured in input floating mode (except JTAG - pins). - - (#) The LSE oscillator pins OSC32_IN and OSC32_OUT can be used as general purpose - (PC14 and PC15, respectively) when the LSE oscillator is off. The LSE has - priority over the GPIO function. - - (#) The HSE oscillator pins OSC_IN/OSC_OUT can be used as - general purpose PD0 and PD1, respectively, when the HSE oscillator is off. - The HSE has priority over the GPIO function. - - @endverbatim - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup GPIO GPIO - * @brief GPIO HAL module driver - * @{ - */ - -#ifdef HAL_GPIO_MODULE_ENABLED - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/** @addtogroup GPIO_Private_Constants GPIO Private Constants - * @{ - */ -#define GPIO_MODE 0x00000003u -#define EXTI_MODE 0x10000000u -#define GPIO_MODE_IT 0x00010000u -#define GPIO_MODE_EVT 0x00020000u -#define RISING_EDGE 0x00100000u -#define FALLING_EDGE 0x00200000u -#define GPIO_OUTPUT_TYPE 0x00000010u - -#define GPIO_NUMBER 16u - -/* Definitions for bit manipulation of CRL and CRH register */ -#define GPIO_CR_MODE_INPUT 0x00000000u /*!< 00: Input mode (reset state) */ -#define GPIO_CR_CNF_ANALOG 0x00000000u /*!< 00: Analog mode */ -#define GPIO_CR_CNF_INPUT_FLOATING 0x00000004u /*!< 01: Floating input (reset state) */ -#define GPIO_CR_CNF_INPUT_PU_PD 0x00000008u /*!< 10: Input with pull-up / pull-down */ -#define GPIO_CR_CNF_GP_OUTPUT_PP 0x00000000u /*!< 00: General purpose output push-pull */ -#define GPIO_CR_CNF_GP_OUTPUT_OD 0x00000004u /*!< 01: General purpose output Open-drain */ -#define GPIO_CR_CNF_AF_OUTPUT_PP 0x00000008u /*!< 10: Alternate function output Push-pull */ -#define GPIO_CR_CNF_AF_OUTPUT_OD 0x0000000Cu /*!< 11: Alternate function output Open-drain */ - -/** - * @} - */ -/* Private macro -------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ -/* Exported functions --------------------------------------------------------*/ -/** @defgroup GPIO_Exported_Functions GPIO Exported Functions - * @{ - */ - -/** @defgroup GPIO_Exported_Functions_Group1 Initialization and de-initialization functions - * @brief Initialization and Configuration functions - * -@verbatim - =============================================================================== - ##### Initialization and de-initialization functions ##### - =============================================================================== - [..] - This section provides functions allowing to initialize and de-initialize the GPIOs - to be ready for use. - -@endverbatim - * @{ - */ - - -/** - * @brief Initializes the GPIOx peripheral according to the specified parameters in the GPIO_Init. - * @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral - * @param GPIO_Init: pointer to a GPIO_InitTypeDef structure that contains - * the configuration information for the specified GPIO peripheral. - * @retval None - */ -void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init) -{ - uint32_t position = 0x00u; - uint32_t ioposition; - uint32_t iocurrent; - uint32_t temp; - uint32_t config = 0x00u; - __IO uint32_t *configregister; /* Store the address of CRL or CRH register based on pin number */ - uint32_t registeroffset; /* offset used during computation of CNF and MODE bits placement inside CRL or CRH register */ - - /* Check the parameters */ - assert_param(IS_GPIO_ALL_INSTANCE(GPIOx)); - assert_param(IS_GPIO_PIN(GPIO_Init->Pin)); - assert_param(IS_GPIO_MODE(GPIO_Init->Mode)); - - /* Configure the port pins */ - while (((GPIO_Init->Pin) >> position) != 0x00u) - { - /* Get the IO position */ - ioposition = (0x01uL << position); - - /* Get the current IO position */ - iocurrent = (uint32_t)(GPIO_Init->Pin) & ioposition; - - if (iocurrent == ioposition) - { - /* Check the Alternate function parameters */ - assert_param(IS_GPIO_AF_INSTANCE(GPIOx)); - - /* Based on the required mode, filling config variable with MODEy[1:0] and CNFy[3:2] corresponding bits */ - switch (GPIO_Init->Mode) - { - /* If we are configuring the pin in OUTPUT push-pull mode */ - case GPIO_MODE_OUTPUT_PP: - /* Check the GPIO speed parameter */ - assert_param(IS_GPIO_SPEED(GPIO_Init->Speed)); - config = GPIO_Init->Speed + GPIO_CR_CNF_GP_OUTPUT_PP; - break; - - /* If we are configuring the pin in OUTPUT open-drain mode */ - case GPIO_MODE_OUTPUT_OD: - /* Check the GPIO speed parameter */ - assert_param(IS_GPIO_SPEED(GPIO_Init->Speed)); - config = GPIO_Init->Speed + GPIO_CR_CNF_GP_OUTPUT_OD; - break; - - /* If we are configuring the pin in ALTERNATE FUNCTION push-pull mode */ - case GPIO_MODE_AF_PP: - /* Check the GPIO speed parameter */ - assert_param(IS_GPIO_SPEED(GPIO_Init->Speed)); - config = GPIO_Init->Speed + GPIO_CR_CNF_AF_OUTPUT_PP; - break; - - /* If we are configuring the pin in ALTERNATE FUNCTION open-drain mode */ - case GPIO_MODE_AF_OD: - /* Check the GPIO speed parameter */ - assert_param(IS_GPIO_SPEED(GPIO_Init->Speed)); - config = GPIO_Init->Speed + GPIO_CR_CNF_AF_OUTPUT_OD; - break; - - /* If we are configuring the pin in INPUT (also applicable to EVENT and IT mode) */ - case GPIO_MODE_INPUT: - case GPIO_MODE_IT_RISING: - case GPIO_MODE_IT_FALLING: - case GPIO_MODE_IT_RISING_FALLING: - case GPIO_MODE_EVT_RISING: - case GPIO_MODE_EVT_FALLING: - case GPIO_MODE_EVT_RISING_FALLING: - /* Check the GPIO pull parameter */ - assert_param(IS_GPIO_PULL(GPIO_Init->Pull)); - if (GPIO_Init->Pull == GPIO_NOPULL) - { - config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_INPUT_FLOATING; - } - else if (GPIO_Init->Pull == GPIO_PULLUP) - { - config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_INPUT_PU_PD; - - /* Set the corresponding ODR bit */ - GPIOx->BSRR = ioposition; - } - else /* GPIO_PULLDOWN */ - { - config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_INPUT_PU_PD; - - /* Reset the corresponding ODR bit */ - GPIOx->BRR = ioposition; - } - break; - - /* If we are configuring the pin in INPUT analog mode */ - case GPIO_MODE_ANALOG: - config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_ANALOG; - break; - - /* Parameters are checked with assert_param */ - default: - break; - } - - /* Check if the current bit belongs to first half or last half of the pin count number - in order to address CRH or CRL register*/ - configregister = (iocurrent < GPIO_PIN_8) ? &GPIOx->CRL : &GPIOx->CRH; - registeroffset = (iocurrent < GPIO_PIN_8) ? (position << 2u) : ((position - 8u) << 2u); - - /* Apply the new configuration of the pin to the register */ - MODIFY_REG((*configregister), ((GPIO_CRL_MODE0 | GPIO_CRL_CNF0) << registeroffset), (config << registeroffset)); - - /*--------------------- EXTI Mode Configuration ------------------------*/ - /* Configure the External Interrupt or event for the current IO */ - if ((GPIO_Init->Mode & EXTI_MODE) == EXTI_MODE) - { - /* Enable AFIO Clock */ - __HAL_RCC_AFIO_CLK_ENABLE(); - temp = AFIO->EXTICR[position >> 2u]; - CLEAR_BIT(temp, (0x0Fu) << (4u * (position & 0x03u))); - SET_BIT(temp, (GPIO_GET_INDEX(GPIOx)) << (4u * (position & 0x03u))); - AFIO->EXTICR[position >> 2u] = temp; - - - /* Configure the interrupt mask */ - if ((GPIO_Init->Mode & GPIO_MODE_IT) == GPIO_MODE_IT) - { - SET_BIT(EXTI->IMR, iocurrent); - } - else - { - CLEAR_BIT(EXTI->IMR, iocurrent); - } - - /* Configure the event mask */ - if ((GPIO_Init->Mode & GPIO_MODE_EVT) == GPIO_MODE_EVT) - { - SET_BIT(EXTI->EMR, iocurrent); - } - else - { - CLEAR_BIT(EXTI->EMR, iocurrent); - } - - /* Enable or disable the rising trigger */ - if ((GPIO_Init->Mode & RISING_EDGE) == RISING_EDGE) - { - SET_BIT(EXTI->RTSR, iocurrent); - } - else - { - CLEAR_BIT(EXTI->RTSR, iocurrent); - } - - /* Enable or disable the falling trigger */ - if ((GPIO_Init->Mode & FALLING_EDGE) == FALLING_EDGE) - { - SET_BIT(EXTI->FTSR, iocurrent); - } - else - { - CLEAR_BIT(EXTI->FTSR, iocurrent); - } - } - } - - position++; - } -} - -/** - * @brief De-initializes the GPIOx peripheral registers to their default reset values. - * @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral - * @param GPIO_Pin: specifies the port bit to be written. - * This parameter can be one of GPIO_PIN_x where x can be (0..15). - * @retval None - */ -void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin) -{ - uint32_t position = 0x00u; - uint32_t iocurrent; - uint32_t tmp; - __IO uint32_t *configregister; /* Store the address of CRL or CRH register based on pin number */ - uint32_t registeroffset; - - /* Check the parameters */ - assert_param(IS_GPIO_ALL_INSTANCE(GPIOx)); - assert_param(IS_GPIO_PIN(GPIO_Pin)); - - /* Configure the port pins */ - while ((GPIO_Pin >> position) != 0u) - { - /* Get current io position */ - iocurrent = (GPIO_Pin) & (1uL << position); - - if (iocurrent) - { - /*------------------------- EXTI Mode Configuration --------------------*/ - /* Clear the External Interrupt or Event for the current IO */ - - tmp = AFIO->EXTICR[position >> 2u]; - tmp &= 0x0FuL << (4u * (position & 0x03u)); - if (tmp == (GPIO_GET_INDEX(GPIOx) << (4u * (position & 0x03u)))) - { - tmp = 0x0FuL << (4u * (position & 0x03u)); - CLEAR_BIT(AFIO->EXTICR[position >> 2u], tmp); - - /* Clear EXTI line configuration */ - CLEAR_BIT(EXTI->IMR, (uint32_t)iocurrent); - CLEAR_BIT(EXTI->EMR, (uint32_t)iocurrent); - - /* Clear Rising Falling edge configuration */ - CLEAR_BIT(EXTI->RTSR, (uint32_t)iocurrent); - CLEAR_BIT(EXTI->FTSR, (uint32_t)iocurrent); - } - /*------------------------- GPIO Mode Configuration --------------------*/ - /* Check if the current bit belongs to first half or last half of the pin count number - in order to address CRH or CRL register */ - configregister = (iocurrent < GPIO_PIN_8) ? &GPIOx->CRL : &GPIOx->CRH; - registeroffset = (iocurrent < GPIO_PIN_8) ? (position << 2u) : ((position - 8u) << 2u); - - /* CRL/CRH default value is floating input(0x04) shifted to correct position */ - MODIFY_REG(*configregister, ((GPIO_CRL_MODE0 | GPIO_CRL_CNF0) << registeroffset), GPIO_CRL_CNF0_0 << registeroffset); - - /* ODR default value is 0 */ - CLEAR_BIT(GPIOx->ODR, iocurrent); - } - - position++; - } -} - -/** - * @} - */ - -/** @defgroup GPIO_Exported_Functions_Group2 IO operation functions - * @brief GPIO Read and Write - * -@verbatim - =============================================================================== - ##### IO operation functions ##### - =============================================================================== - [..] - This subsection provides a set of functions allowing to manage the GPIOs. - -@endverbatim - * @{ - */ - -/** - * @brief Reads the specified input port pin. - * @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral - * @param GPIO_Pin: specifies the port bit to read. - * This parameter can be GPIO_PIN_x where x can be (0..15). - * @retval The input port pin value. - */ -GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin) -{ - GPIO_PinState bitstatus; - - /* Check the parameters */ - assert_param(IS_GPIO_PIN(GPIO_Pin)); - - if ((GPIOx->IDR & GPIO_Pin) != (uint32_t)GPIO_PIN_RESET) - { - bitstatus = GPIO_PIN_SET; - } - else - { - bitstatus = GPIO_PIN_RESET; - } - return bitstatus; -} - -/** - * @brief Sets or clears the selected data port bit. - * - * @note This function uses GPIOx_BSRR register to allow atomic read/modify - * accesses. In this way, there is no risk of an IRQ occurring between - * the read and the modify access. - * - * @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral - * @param GPIO_Pin: specifies the port bit to be written. - * This parameter can be one of GPIO_PIN_x where x can be (0..15). - * @param PinState: specifies the value to be written to the selected bit. - * This parameter can be one of the GPIO_PinState enum values: - * @arg GPIO_PIN_RESET: to clear the port pin - * @arg GPIO_PIN_SET: to set the port pin - * @retval None - */ -void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState) -{ - /* Check the parameters */ - assert_param(IS_GPIO_PIN(GPIO_Pin)); - assert_param(IS_GPIO_PIN_ACTION(PinState)); - - if (PinState != GPIO_PIN_RESET) - { - GPIOx->BSRR = GPIO_Pin; - } - else - { - GPIOx->BSRR = (uint32_t)GPIO_Pin << 16u; - } -} - -/** - * @brief Toggles the specified GPIO pin - * @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral - * @param GPIO_Pin: Specifies the pins to be toggled. - * @retval None - */ -void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin) -{ - uint32_t odr; - - /* Check the parameters */ - assert_param(IS_GPIO_PIN(GPIO_Pin)); - - /* get current Ouput Data Register value */ - odr = GPIOx->ODR; - - /* Set selected pins that were at low level, and reset ones that were high */ - GPIOx->BSRR = ((odr & GPIO_Pin) << GPIO_NUMBER) | (~odr & GPIO_Pin); -} - -/** -* @brief Locks GPIO Pins configuration registers. -* @note The locking mechanism allows the IO configuration to be frozen. When the LOCK sequence -* has been applied on a port bit, it is no longer possible to modify the value of the port bit until -* the next reset. -* @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral -* @param GPIO_Pin: specifies the port bit to be locked. -* This parameter can be any combination of GPIO_Pin_x where x can be (0..15). -* @retval None -*/ -HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin) -{ - __IO uint32_t tmp = GPIO_LCKR_LCKK; - - /* Check the parameters */ - assert_param(IS_GPIO_LOCK_INSTANCE(GPIOx)); - assert_param(IS_GPIO_PIN(GPIO_Pin)); - - /* Apply lock key write sequence */ - SET_BIT(tmp, GPIO_Pin); - /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */ - GPIOx->LCKR = tmp; - /* Reset LCKx bit(s): LCKK='0' + LCK[15-0] */ - GPIOx->LCKR = GPIO_Pin; - /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */ - GPIOx->LCKR = tmp; - /* Read LCKK register. This read is mandatory to complete key lock sequence */ - tmp = GPIOx->LCKR; - - /* read again in order to confirm lock is active */ - if ((uint32_t)(GPIOx->LCKR & GPIO_LCKR_LCKK)) - { - return HAL_OK; - } - else - { - return HAL_ERROR; - } -} - -/** - * @brief This function handles EXTI interrupt request. - * @param GPIO_Pin: Specifies the pins connected EXTI line - * @retval None - */ -void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin) -{ - /* EXTI line interrupt detected */ - if (__HAL_GPIO_EXTI_GET_IT(GPIO_Pin) != 0x00u) - { - __HAL_GPIO_EXTI_CLEAR_IT(GPIO_Pin); - HAL_GPIO_EXTI_Callback(GPIO_Pin); - } -} - -/** - * @brief EXTI line detection callbacks. - * @param GPIO_Pin: Specifies the pins connected EXTI line - * @retval None - */ -__weak void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(GPIO_Pin); - /* NOTE: This function Should not be modified, when the callback is needed, - the HAL_GPIO_EXTI_Callback could be implemented in the user file - */ -} - -/** - * @} - */ - -/** - * @} - */ - -#endif /* HAL_GPIO_MODULE_ENABLED */ -/** - * @} - */ - -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_gpio.c + * @author MCD Application Team + * @brief GPIO HAL module driver. + * This file provides firmware functions to manage the following + * functionalities of the General Purpose Input/Output (GPIO) peripheral: + * + Initialization and de-initialization functions + * + IO operation functions + * + @verbatim + ============================================================================== + ##### GPIO Peripheral features ##### + ============================================================================== + [..] + Subject to the specific hardware characteristics of each I/O port listed in the datasheet, each + port bit of the General Purpose IO (GPIO) Ports, can be individually configured by software + in several modes: + (+) Input mode + (+) Analog mode + (+) Output mode + (+) Alternate function mode + (+) External interrupt/event lines + + [..] + During and just after reset, the alternate functions and external interrupt + lines are not active and the I/O ports are configured in input floating mode. + + [..] + All GPIO pins have weak internal pull-up and pull-down resistors, which can be + activated or not. + + [..] + In Output or Alternate mode, each IO can be configured on open-drain or push-pull + type and the IO speed can be selected depending on the VDD value. + + [..] + All ports have external interrupt/event capability. To use external interrupt + lines, the port must be configured in input mode. All available GPIO pins are + connected to the 16 external interrupt/event lines from EXTI0 to EXTI15. + + [..] + The external interrupt/event controller consists of up to 20 edge detectors in connectivity + line devices, or 19 edge detectors in other devices for generating event/interrupt requests. + Each input line can be independently configured to select the type (event or interrupt) and + the corresponding trigger event (rising or falling or both). Each line can also masked + independently. A pending register maintains the status line of the interrupt requests + + ##### How to use this driver ##### + ============================================================================== + [..] + (#) Enable the GPIO APB2 clock using the following function : __HAL_RCC_GPIOx_CLK_ENABLE(). + + (#) Configure the GPIO pin(s) using HAL_GPIO_Init(). + (++) Configure the IO mode using "Mode" member from GPIO_InitTypeDef structure + (++) Activate Pull-up, Pull-down resistor using "Pull" member from GPIO_InitTypeDef + structure. + (++) In case of Output or alternate function mode selection: the speed is + configured through "Speed" member from GPIO_InitTypeDef structure + (++) Analog mode is required when a pin is to be used as ADC channel + or DAC output. + (++) In case of external interrupt/event selection the "Mode" member from + GPIO_InitTypeDef structure select the type (interrupt or event) and + the corresponding trigger event (rising or falling or both). + + (#) In case of external interrupt/event mode selection, configure NVIC IRQ priority + mapped to the EXTI line using HAL_NVIC_SetPriority() and enable it using + HAL_NVIC_EnableIRQ(). + + (#) To get the level of a pin configured in input mode use HAL_GPIO_ReadPin(). + + (#) To set/reset the level of a pin configured in output mode use + HAL_GPIO_WritePin()/HAL_GPIO_TogglePin(). + + (#) To lock pin configuration until next reset use HAL_GPIO_LockPin(). + + (#) During and just after reset, the alternate functions are not + active and the GPIO pins are configured in input floating mode (except JTAG + pins). + + (#) The LSE oscillator pins OSC32_IN and OSC32_OUT can be used as general purpose + (PC14 and PC15, respectively) when the LSE oscillator is off. The LSE has + priority over the GPIO function. + + (#) The HSE oscillator pins OSC_IN/OSC_OUT can be used as + general purpose PD0 and PD1, respectively, when the HSE oscillator is off. + The HSE has priority over the GPIO function. + + @endverbatim + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup GPIO GPIO + * @brief GPIO HAL module driver + * @{ + */ + +#ifdef HAL_GPIO_MODULE_ENABLED + +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ +/** @addtogroup GPIO_Private_Constants GPIO Private Constants + * @{ + */ +#define GPIO_MODE 0x00000003u +#define EXTI_MODE 0x10000000u +#define GPIO_MODE_IT 0x00010000u +#define GPIO_MODE_EVT 0x00020000u +#define RISING_EDGE 0x00100000u +#define FALLING_EDGE 0x00200000u +#define GPIO_OUTPUT_TYPE 0x00000010u + +#define GPIO_NUMBER 16u + +/* Definitions for bit manipulation of CRL and CRH register */ +#define GPIO_CR_MODE_INPUT 0x00000000u /*!< 00: Input mode (reset state) */ +#define GPIO_CR_CNF_ANALOG 0x00000000u /*!< 00: Analog mode */ +#define GPIO_CR_CNF_INPUT_FLOATING 0x00000004u /*!< 01: Floating input (reset state) */ +#define GPIO_CR_CNF_INPUT_PU_PD 0x00000008u /*!< 10: Input with pull-up / pull-down */ +#define GPIO_CR_CNF_GP_OUTPUT_PP 0x00000000u /*!< 00: General purpose output push-pull */ +#define GPIO_CR_CNF_GP_OUTPUT_OD 0x00000004u /*!< 01: General purpose output Open-drain */ +#define GPIO_CR_CNF_AF_OUTPUT_PP 0x00000008u /*!< 10: Alternate function output Push-pull */ +#define GPIO_CR_CNF_AF_OUTPUT_OD 0x0000000Cu /*!< 11: Alternate function output Open-drain */ + +/** + * @} + */ +/* Private macro -------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ +/* Private function prototypes -----------------------------------------------*/ +/* Private functions ---------------------------------------------------------*/ +/* Exported functions --------------------------------------------------------*/ +/** @defgroup GPIO_Exported_Functions GPIO Exported Functions + * @{ + */ + +/** @defgroup GPIO_Exported_Functions_Group1 Initialization and de-initialization functions + * @brief Initialization and Configuration functions + * +@verbatim + =============================================================================== + ##### Initialization and de-initialization functions ##### + =============================================================================== + [..] + This section provides functions allowing to initialize and de-initialize the GPIOs + to be ready for use. + +@endverbatim + * @{ + */ + + +/** + * @brief Initializes the GPIOx peripheral according to the specified parameters in the GPIO_Init. + * @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral + * @param GPIO_Init: pointer to a GPIO_InitTypeDef structure that contains + * the configuration information for the specified GPIO peripheral. + * @retval None + */ +void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init) +{ + uint32_t position = 0x00u; + uint32_t ioposition; + uint32_t iocurrent; + uint32_t temp; + uint32_t config = 0x00u; + __IO uint32_t *configregister; /* Store the address of CRL or CRH register based on pin number */ + uint32_t registeroffset; /* offset used during computation of CNF and MODE bits placement inside CRL or CRH register */ + + /* Check the parameters */ + assert_param(IS_GPIO_ALL_INSTANCE(GPIOx)); + assert_param(IS_GPIO_PIN(GPIO_Init->Pin)); + assert_param(IS_GPIO_MODE(GPIO_Init->Mode)); + + /* Configure the port pins */ + while (((GPIO_Init->Pin) >> position) != 0x00u) + { + /* Get the IO position */ + ioposition = (0x01uL << position); + + /* Get the current IO position */ + iocurrent = (uint32_t)(GPIO_Init->Pin) & ioposition; + + if (iocurrent == ioposition) + { + /* Check the Alternate function parameters */ + assert_param(IS_GPIO_AF_INSTANCE(GPIOx)); + + /* Based on the required mode, filling config variable with MODEy[1:0] and CNFy[3:2] corresponding bits */ + switch (GPIO_Init->Mode) + { + /* If we are configuring the pin in OUTPUT push-pull mode */ + case GPIO_MODE_OUTPUT_PP: + /* Check the GPIO speed parameter */ + assert_param(IS_GPIO_SPEED(GPIO_Init->Speed)); + config = GPIO_Init->Speed + GPIO_CR_CNF_GP_OUTPUT_PP; + break; + + /* If we are configuring the pin in OUTPUT open-drain mode */ + case GPIO_MODE_OUTPUT_OD: + /* Check the GPIO speed parameter */ + assert_param(IS_GPIO_SPEED(GPIO_Init->Speed)); + config = GPIO_Init->Speed + GPIO_CR_CNF_GP_OUTPUT_OD; + break; + + /* If we are configuring the pin in ALTERNATE FUNCTION push-pull mode */ + case GPIO_MODE_AF_PP: + /* Check the GPIO speed parameter */ + assert_param(IS_GPIO_SPEED(GPIO_Init->Speed)); + config = GPIO_Init->Speed + GPIO_CR_CNF_AF_OUTPUT_PP; + break; + + /* If we are configuring the pin in ALTERNATE FUNCTION open-drain mode */ + case GPIO_MODE_AF_OD: + /* Check the GPIO speed parameter */ + assert_param(IS_GPIO_SPEED(GPIO_Init->Speed)); + config = GPIO_Init->Speed + GPIO_CR_CNF_AF_OUTPUT_OD; + break; + + /* If we are configuring the pin in INPUT (also applicable to EVENT and IT mode) */ + case GPIO_MODE_INPUT: + case GPIO_MODE_IT_RISING: + case GPIO_MODE_IT_FALLING: + case GPIO_MODE_IT_RISING_FALLING: + case GPIO_MODE_EVT_RISING: + case GPIO_MODE_EVT_FALLING: + case GPIO_MODE_EVT_RISING_FALLING: + /* Check the GPIO pull parameter */ + assert_param(IS_GPIO_PULL(GPIO_Init->Pull)); + if (GPIO_Init->Pull == GPIO_NOPULL) + { + config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_INPUT_FLOATING; + } + else if (GPIO_Init->Pull == GPIO_PULLUP) + { + config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_INPUT_PU_PD; + + /* Set the corresponding ODR bit */ + GPIOx->BSRR = ioposition; + } + else /* GPIO_PULLDOWN */ + { + config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_INPUT_PU_PD; + + /* Reset the corresponding ODR bit */ + GPIOx->BRR = ioposition; + } + break; + + /* If we are configuring the pin in INPUT analog mode */ + case GPIO_MODE_ANALOG: + config = GPIO_CR_MODE_INPUT + GPIO_CR_CNF_ANALOG; + break; + + /* Parameters are checked with assert_param */ + default: + break; + } + + /* Check if the current bit belongs to first half or last half of the pin count number + in order to address CRH or CRL register*/ + configregister = (iocurrent < GPIO_PIN_8) ? &GPIOx->CRL : &GPIOx->CRH; + registeroffset = (iocurrent < GPIO_PIN_8) ? (position << 2u) : ((position - 8u) << 2u); + + /* Apply the new configuration of the pin to the register */ + MODIFY_REG((*configregister), ((GPIO_CRL_MODE0 | GPIO_CRL_CNF0) << registeroffset), (config << registeroffset)); + + /*--------------------- EXTI Mode Configuration ------------------------*/ + /* Configure the External Interrupt or event for the current IO */ + if ((GPIO_Init->Mode & EXTI_MODE) == EXTI_MODE) + { + /* Enable AFIO Clock */ + __HAL_RCC_AFIO_CLK_ENABLE(); + temp = AFIO->EXTICR[position >> 2u]; + CLEAR_BIT(temp, (0x0Fu) << (4u * (position & 0x03u))); + SET_BIT(temp, (GPIO_GET_INDEX(GPIOx)) << (4u * (position & 0x03u))); + AFIO->EXTICR[position >> 2u] = temp; + + + /* Configure the interrupt mask */ + if ((GPIO_Init->Mode & GPIO_MODE_IT) == GPIO_MODE_IT) + { + SET_BIT(EXTI->IMR, iocurrent); + } + else + { + CLEAR_BIT(EXTI->IMR, iocurrent); + } + + /* Configure the event mask */ + if ((GPIO_Init->Mode & GPIO_MODE_EVT) == GPIO_MODE_EVT) + { + SET_BIT(EXTI->EMR, iocurrent); + } + else + { + CLEAR_BIT(EXTI->EMR, iocurrent); + } + + /* Enable or disable the rising trigger */ + if ((GPIO_Init->Mode & RISING_EDGE) == RISING_EDGE) + { + SET_BIT(EXTI->RTSR, iocurrent); + } + else + { + CLEAR_BIT(EXTI->RTSR, iocurrent); + } + + /* Enable or disable the falling trigger */ + if ((GPIO_Init->Mode & FALLING_EDGE) == FALLING_EDGE) + { + SET_BIT(EXTI->FTSR, iocurrent); + } + else + { + CLEAR_BIT(EXTI->FTSR, iocurrent); + } + } + } + + position++; + } +} + +/** + * @brief De-initializes the GPIOx peripheral registers to their default reset values. + * @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral + * @param GPIO_Pin: specifies the port bit to be written. + * This parameter can be one of GPIO_PIN_x where x can be (0..15). + * @retval None + */ +void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin) +{ + uint32_t position = 0x00u; + uint32_t iocurrent; + uint32_t tmp; + __IO uint32_t *configregister; /* Store the address of CRL or CRH register based on pin number */ + uint32_t registeroffset; + + /* Check the parameters */ + assert_param(IS_GPIO_ALL_INSTANCE(GPIOx)); + assert_param(IS_GPIO_PIN(GPIO_Pin)); + + /* Configure the port pins */ + while ((GPIO_Pin >> position) != 0u) + { + /* Get current io position */ + iocurrent = (GPIO_Pin) & (1uL << position); + + if (iocurrent) + { + /*------------------------- EXTI Mode Configuration --------------------*/ + /* Clear the External Interrupt or Event for the current IO */ + + tmp = AFIO->EXTICR[position >> 2u]; + tmp &= 0x0FuL << (4u * (position & 0x03u)); + if (tmp == (GPIO_GET_INDEX(GPIOx) << (4u * (position & 0x03u)))) + { + tmp = 0x0FuL << (4u * (position & 0x03u)); + CLEAR_BIT(AFIO->EXTICR[position >> 2u], tmp); + + /* Clear EXTI line configuration */ + CLEAR_BIT(EXTI->IMR, (uint32_t)iocurrent); + CLEAR_BIT(EXTI->EMR, (uint32_t)iocurrent); + + /* Clear Rising Falling edge configuration */ + CLEAR_BIT(EXTI->RTSR, (uint32_t)iocurrent); + CLEAR_BIT(EXTI->FTSR, (uint32_t)iocurrent); + } + /*------------------------- GPIO Mode Configuration --------------------*/ + /* Check if the current bit belongs to first half or last half of the pin count number + in order to address CRH or CRL register */ + configregister = (iocurrent < GPIO_PIN_8) ? &GPIOx->CRL : &GPIOx->CRH; + registeroffset = (iocurrent < GPIO_PIN_8) ? (position << 2u) : ((position - 8u) << 2u); + + /* CRL/CRH default value is floating input(0x04) shifted to correct position */ + MODIFY_REG(*configregister, ((GPIO_CRL_MODE0 | GPIO_CRL_CNF0) << registeroffset), GPIO_CRL_CNF0_0 << registeroffset); + + /* ODR default value is 0 */ + CLEAR_BIT(GPIOx->ODR, iocurrent); + } + + position++; + } +} + +/** + * @} + */ + +/** @defgroup GPIO_Exported_Functions_Group2 IO operation functions + * @brief GPIO Read and Write + * +@verbatim + =============================================================================== + ##### IO operation functions ##### + =============================================================================== + [..] + This subsection provides a set of functions allowing to manage the GPIOs. + +@endverbatim + * @{ + */ + +/** + * @brief Reads the specified input port pin. + * @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral + * @param GPIO_Pin: specifies the port bit to read. + * This parameter can be GPIO_PIN_x where x can be (0..15). + * @retval The input port pin value. + */ +GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin) +{ + GPIO_PinState bitstatus; + + /* Check the parameters */ + assert_param(IS_GPIO_PIN(GPIO_Pin)); + + if ((GPIOx->IDR & GPIO_Pin) != (uint32_t)GPIO_PIN_RESET) + { + bitstatus = GPIO_PIN_SET; + } + else + { + bitstatus = GPIO_PIN_RESET; + } + return bitstatus; +} + +/** + * @brief Sets or clears the selected data port bit. + * + * @note This function uses GPIOx_BSRR register to allow atomic read/modify + * accesses. In this way, there is no risk of an IRQ occurring between + * the read and the modify access. + * + * @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral + * @param GPIO_Pin: specifies the port bit to be written. + * This parameter can be one of GPIO_PIN_x where x can be (0..15). + * @param PinState: specifies the value to be written to the selected bit. + * This parameter can be one of the GPIO_PinState enum values: + * @arg GPIO_PIN_RESET: to clear the port pin + * @arg GPIO_PIN_SET: to set the port pin + * @retval None + */ +void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState) +{ + /* Check the parameters */ + assert_param(IS_GPIO_PIN(GPIO_Pin)); + assert_param(IS_GPIO_PIN_ACTION(PinState)); + + if (PinState != GPIO_PIN_RESET) + { + GPIOx->BSRR = GPIO_Pin; + } + else + { + GPIOx->BSRR = (uint32_t)GPIO_Pin << 16u; + } +} + +/** + * @brief Toggles the specified GPIO pin + * @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral + * @param GPIO_Pin: Specifies the pins to be toggled. + * @retval None + */ +void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin) +{ + uint32_t odr; + + /* Check the parameters */ + assert_param(IS_GPIO_PIN(GPIO_Pin)); + + /* get current Ouput Data Register value */ + odr = GPIOx->ODR; + + /* Set selected pins that were at low level, and reset ones that were high */ + GPIOx->BSRR = ((odr & GPIO_Pin) << GPIO_NUMBER) | (~odr & GPIO_Pin); +} + +/** +* @brief Locks GPIO Pins configuration registers. +* @note The locking mechanism allows the IO configuration to be frozen. When the LOCK sequence +* has been applied on a port bit, it is no longer possible to modify the value of the port bit until +* the next reset. +* @param GPIOx: where x can be (A..G depending on device used) to select the GPIO peripheral +* @param GPIO_Pin: specifies the port bit to be locked. +* This parameter can be any combination of GPIO_Pin_x where x can be (0..15). +* @retval None +*/ +HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin) +{ + __IO uint32_t tmp = GPIO_LCKR_LCKK; + + /* Check the parameters */ + assert_param(IS_GPIO_LOCK_INSTANCE(GPIOx)); + assert_param(IS_GPIO_PIN(GPIO_Pin)); + + /* Apply lock key write sequence */ + SET_BIT(tmp, GPIO_Pin); + /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */ + GPIOx->LCKR = tmp; + /* Reset LCKx bit(s): LCKK='0' + LCK[15-0] */ + GPIOx->LCKR = GPIO_Pin; + /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */ + GPIOx->LCKR = tmp; + /* Read LCKK register. This read is mandatory to complete key lock sequence */ + tmp = GPIOx->LCKR; + + /* read again in order to confirm lock is active */ + if ((uint32_t)(GPIOx->LCKR & GPIO_LCKR_LCKK)) + { + return HAL_OK; + } + else + { + return HAL_ERROR; + } +} + +/** + * @brief This function handles EXTI interrupt request. + * @param GPIO_Pin: Specifies the pins connected EXTI line + * @retval None + */ +void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin) +{ + /* EXTI line interrupt detected */ + if (__HAL_GPIO_EXTI_GET_IT(GPIO_Pin) != 0x00u) + { + __HAL_GPIO_EXTI_CLEAR_IT(GPIO_Pin); + HAL_GPIO_EXTI_Callback(GPIO_Pin); + } +} + +/** + * @brief EXTI line detection callbacks. + * @param GPIO_Pin: Specifies the pins connected EXTI line + * @retval None + */ +__weak void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(GPIO_Pin); + /* NOTE: This function Should not be modified, when the callback is needed, + the HAL_GPIO_EXTI_Callback could be implemented in the user file + */ +} + +/** + * @} + */ + +/** + * @} + */ + +#endif /* HAL_GPIO_MODULE_ENABLED */ +/** + * @} + */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c index c2d810c..e6dea5b 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c @@ -1,127 +1,127 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_gpio_ex.c - * @author MCD Application Team - * @brief GPIO Extension HAL module driver. - * This file provides firmware functions to manage the following - * functionalities of the General Purpose Input/Output (GPIO) extension peripheral. - * + Extended features functions - * - @verbatim - ============================================================================== - ##### GPIO Peripheral extension features ##### - ============================================================================== - [..] GPIO module on STM32F1 family, manage also the AFIO register: - (+) Possibility to use the EVENTOUT Cortex feature - - ##### How to use this driver ##### - ============================================================================== - [..] This driver provides functions to use EVENTOUT Cortex feature - (#) Configure EVENTOUT Cortex feature using the function HAL_GPIOEx_ConfigEventout() - (#) Activate EVENTOUT Cortex feature using the HAL_GPIOEx_EnableEventout() - (#) Deactivate EVENTOUT Cortex feature using the HAL_GPIOEx_DisableEventout() - - @endverbatim - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup GPIOEx GPIOEx - * @brief GPIO HAL module driver - * @{ - */ - -#ifdef HAL_GPIO_MODULE_ENABLED - -/** @defgroup GPIOEx_Exported_Functions GPIOEx Exported Functions - * @{ - */ - -/** @defgroup GPIOEx_Exported_Functions_Group1 Extended features functions - * @brief Extended features functions - * -@verbatim - ============================================================================== - ##### Extended features functions ##### - ============================================================================== - [..] This section provides functions allowing to: - (+) Configure EVENTOUT Cortex feature using the function HAL_GPIOEx_ConfigEventout() - (+) Activate EVENTOUT Cortex feature using the HAL_GPIOEx_EnableEventout() - (+) Deactivate EVENTOUT Cortex feature using the HAL_GPIOEx_DisableEventout() - -@endverbatim - * @{ - */ - -/** - * @brief Configures the port and pin on which the EVENTOUT Cortex signal will be connected. - * @param GPIO_PortSource Select the port used to output the Cortex EVENTOUT signal. - * This parameter can be a value of @ref GPIOEx_EVENTOUT_PORT. - * @param GPIO_PinSource Select the pin used to output the Cortex EVENTOUT signal. - * This parameter can be a value of @ref GPIOEx_EVENTOUT_PIN. - * @retval None - */ -void HAL_GPIOEx_ConfigEventout(uint32_t GPIO_PortSource, uint32_t GPIO_PinSource) -{ - /* Verify the parameters */ - assert_param(IS_AFIO_EVENTOUT_PORT(GPIO_PortSource)); - assert_param(IS_AFIO_EVENTOUT_PIN(GPIO_PinSource)); - - /* Apply the new configuration */ - MODIFY_REG(AFIO->EVCR, (AFIO_EVCR_PORT) | (AFIO_EVCR_PIN), (GPIO_PortSource) | (GPIO_PinSource)); -} - -/** - * @brief Enables the Event Output. - * @retval None - */ -void HAL_GPIOEx_EnableEventout(void) -{ - SET_BIT(AFIO->EVCR, AFIO_EVCR_EVOE); -} - -/** - * @brief Disables the Event Output. - * @retval None - */ -void HAL_GPIOEx_DisableEventout(void) -{ - CLEAR_BIT(AFIO->EVCR, AFIO_EVCR_EVOE); -} - -/** - * @} - */ - -/** - * @} - */ - -#endif /* HAL_GPIO_MODULE_ENABLED */ - -/** - * @} - */ - -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_gpio_ex.c + * @author MCD Application Team + * @brief GPIO Extension HAL module driver. + * This file provides firmware functions to manage the following + * functionalities of the General Purpose Input/Output (GPIO) extension peripheral. + * + Extended features functions + * + @verbatim + ============================================================================== + ##### GPIO Peripheral extension features ##### + ============================================================================== + [..] GPIO module on STM32F1 family, manage also the AFIO register: + (+) Possibility to use the EVENTOUT Cortex feature + + ##### How to use this driver ##### + ============================================================================== + [..] This driver provides functions to use EVENTOUT Cortex feature + (#) Configure EVENTOUT Cortex feature using the function HAL_GPIOEx_ConfigEventout() + (#) Activate EVENTOUT Cortex feature using the HAL_GPIOEx_EnableEventout() + (#) Deactivate EVENTOUT Cortex feature using the HAL_GPIOEx_DisableEventout() + + @endverbatim + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup GPIOEx GPIOEx + * @brief GPIO HAL module driver + * @{ + */ + +#ifdef HAL_GPIO_MODULE_ENABLED + +/** @defgroup GPIOEx_Exported_Functions GPIOEx Exported Functions + * @{ + */ + +/** @defgroup GPIOEx_Exported_Functions_Group1 Extended features functions + * @brief Extended features functions + * +@verbatim + ============================================================================== + ##### Extended features functions ##### + ============================================================================== + [..] This section provides functions allowing to: + (+) Configure EVENTOUT Cortex feature using the function HAL_GPIOEx_ConfigEventout() + (+) Activate EVENTOUT Cortex feature using the HAL_GPIOEx_EnableEventout() + (+) Deactivate EVENTOUT Cortex feature using the HAL_GPIOEx_DisableEventout() + +@endverbatim + * @{ + */ + +/** + * @brief Configures the port and pin on which the EVENTOUT Cortex signal will be connected. + * @param GPIO_PortSource Select the port used to output the Cortex EVENTOUT signal. + * This parameter can be a value of @ref GPIOEx_EVENTOUT_PORT. + * @param GPIO_PinSource Select the pin used to output the Cortex EVENTOUT signal. + * This parameter can be a value of @ref GPIOEx_EVENTOUT_PIN. + * @retval None + */ +void HAL_GPIOEx_ConfigEventout(uint32_t GPIO_PortSource, uint32_t GPIO_PinSource) +{ + /* Verify the parameters */ + assert_param(IS_AFIO_EVENTOUT_PORT(GPIO_PortSource)); + assert_param(IS_AFIO_EVENTOUT_PIN(GPIO_PinSource)); + + /* Apply the new configuration */ + MODIFY_REG(AFIO->EVCR, (AFIO_EVCR_PORT) | (AFIO_EVCR_PIN), (GPIO_PortSource) | (GPIO_PinSource)); +} + +/** + * @brief Enables the Event Output. + * @retval None + */ +void HAL_GPIOEx_EnableEventout(void) +{ + SET_BIT(AFIO->EVCR, AFIO_EVCR_EVOE); +} + +/** + * @brief Disables the Event Output. + * @retval None + */ +void HAL_GPIOEx_DisableEventout(void) +{ + CLEAR_BIT(AFIO->EVCR, AFIO_EVCR_EVOE); +} + +/** + * @} + */ + +/** + * @} + */ + +#endif /* HAL_GPIO_MODULE_ENABLED */ + +/** + * @} + */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c index c757976..a9bf56b 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c @@ -1,621 +1,621 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_pwr.c - * @author MCD Application Team - * @brief PWR HAL module driver. - * - * This file provides firmware functions to manage the following - * functionalities of the Power Controller (PWR) peripheral: - * + Initialization/de-initialization functions - * + Peripheral Control functions - * - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup PWR PWR - * @brief PWR HAL module driver - * @{ - */ - -#ifdef HAL_PWR_MODULE_ENABLED - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ - -/** @defgroup PWR_Private_Constants PWR Private Constants - * @{ - */ - -/** @defgroup PWR_PVD_Mode_Mask PWR PVD Mode Mask - * @{ - */ -#define PVD_MODE_IT 0x00010000U -#define PVD_MODE_EVT 0x00020000U -#define PVD_RISING_EDGE 0x00000001U -#define PVD_FALLING_EDGE 0x00000002U -/** - * @} - */ - - -/** @defgroup PWR_register_alias_address PWR Register alias address - * @{ - */ -/* ------------- PWR registers bit address in the alias region ---------------*/ -#define PWR_OFFSET (PWR_BASE - PERIPH_BASE) -#define PWR_CR_OFFSET 0x00U -#define PWR_CSR_OFFSET 0x04U -#define PWR_CR_OFFSET_BB (PWR_OFFSET + PWR_CR_OFFSET) -#define PWR_CSR_OFFSET_BB (PWR_OFFSET + PWR_CSR_OFFSET) -/** - * @} - */ - -/** @defgroup PWR_CR_register_alias PWR CR Register alias address - * @{ - */ -/* --- CR Register ---*/ -/* Alias word address of LPSDSR bit */ -#define LPSDSR_BIT_NUMBER PWR_CR_LPDS_Pos -#define CR_LPSDSR_BB ((uint32_t)(PERIPH_BB_BASE + (PWR_CR_OFFSET_BB * 32U) + (LPSDSR_BIT_NUMBER * 4U))) - -/* Alias word address of DBP bit */ -#define DBP_BIT_NUMBER PWR_CR_DBP_Pos -#define CR_DBP_BB ((uint32_t)(PERIPH_BB_BASE + (PWR_CR_OFFSET_BB * 32U) + (DBP_BIT_NUMBER * 4U))) - -/* Alias word address of PVDE bit */ -#define PVDE_BIT_NUMBER PWR_CR_PVDE_Pos -#define CR_PVDE_BB ((uint32_t)(PERIPH_BB_BASE + (PWR_CR_OFFSET_BB * 32U) + (PVDE_BIT_NUMBER * 4U))) - -/** - * @} - */ - -/** @defgroup PWR_CSR_register_alias PWR CSR Register alias address - * @{ - */ - -/* --- CSR Register ---*/ -/* Alias word address of EWUP1 bit */ -#define CSR_EWUP_BB(VAL) ((uint32_t)(PERIPH_BB_BASE + (PWR_CSR_OFFSET_BB * 32U) + (POSITION_VAL(VAL) * 4U))) -/** - * @} - */ - -/** - * @} - */ - -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/** @defgroup PWR_Private_Functions PWR Private Functions - * brief WFE cortex command overloaded for HAL_PWR_EnterSTOPMode usage only (see Workaround section) - * @{ - */ -static void PWR_OverloadWfe(void); - -/* Private functions ---------------------------------------------------------*/ -__NOINLINE -static void PWR_OverloadWfe(void) -{ - __asm volatile( "wfe" ); - __asm volatile( "nop" ); -} - -/** - * @} - */ - - -/** @defgroup PWR_Exported_Functions PWR Exported Functions - * @{ - */ - -/** @defgroup PWR_Exported_Functions_Group1 Initialization and de-initialization functions - * @brief Initialization and de-initialization functions - * -@verbatim - =============================================================================== - ##### Initialization and de-initialization functions ##### - =============================================================================== - [..] - After reset, the backup domain (RTC registers, RTC backup data - registers) is protected against possible unwanted - write accesses. - To enable access to the RTC Domain and RTC registers, proceed as follows: - (+) Enable the Power Controller (PWR) APB1 interface clock using the - __HAL_RCC_PWR_CLK_ENABLE() macro. - (+) Enable access to RTC domain using the HAL_PWR_EnableBkUpAccess() function. - -@endverbatim - * @{ - */ - -/** - * @brief Deinitializes the PWR peripheral registers to their default reset values. - * @retval None - */ -void HAL_PWR_DeInit(void) -{ - __HAL_RCC_PWR_FORCE_RESET(); - __HAL_RCC_PWR_RELEASE_RESET(); -} - -/** - * @brief Enables access to the backup domain (RTC registers, RTC - * backup data registers ). - * @note If the HSE divided by 128 is used as the RTC clock, the - * Backup Domain Access should be kept enabled. - * @retval None - */ -void HAL_PWR_EnableBkUpAccess(void) -{ - /* Enable access to RTC and backup registers */ - *(__IO uint32_t *) CR_DBP_BB = (uint32_t)ENABLE; -} - -/** - * @brief Disables access to the backup domain (RTC registers, RTC - * backup data registers). - * @note If the HSE divided by 128 is used as the RTC clock, the - * Backup Domain Access should be kept enabled. - * @retval None - */ -void HAL_PWR_DisableBkUpAccess(void) -{ - /* Disable access to RTC and backup registers */ - *(__IO uint32_t *) CR_DBP_BB = (uint32_t)DISABLE; -} - -/** - * @} - */ - -/** @defgroup PWR_Exported_Functions_Group2 Peripheral Control functions - * @brief Low Power modes configuration functions - * -@verbatim - =============================================================================== - ##### Peripheral Control functions ##### - =============================================================================== - - *** PVD configuration *** - ========================= - [..] - (+) The PVD is used to monitor the VDD power supply by comparing it to a - threshold selected by the PVD Level (PLS[2:0] bits in the PWR_CR). - - (+) A PVDO flag is available to indicate if VDD/VDDA is higher or lower - than the PVD threshold. This event is internally connected to the EXTI - line16 and can generate an interrupt if enabled. This is done through - __HAL_PVD_EXTI_ENABLE_IT() macro. - (+) The PVD is stopped in Standby mode. - - *** WakeUp pin configuration *** - ================================ - [..] - (+) WakeUp pin is used to wake up the system from Standby mode. This pin is - forced in input pull-down configuration and is active on rising edges. - (+) There is one WakeUp pin: - WakeUp Pin 1 on PA.00. - - [..] - - *** Low Power modes configuration *** - ===================================== - [..] - The device features 3 low-power modes: - (+) Sleep mode: CPU clock off, all peripherals including Cortex-M3 core peripherals like - NVIC, SysTick, etc. are kept running - (+) Stop mode: All clocks are stopped - (+) Standby mode: 1.8V domain powered off - - - *** Sleep mode *** - ================== - [..] - (+) Entry: - The Sleep mode is entered by using the HAL_PWR_EnterSLEEPMode(PWR_MAINREGULATOR_ON, PWR_SLEEPENTRY_WFx) - functions with - (++) PWR_SLEEPENTRY_WFI: enter SLEEP mode with WFI instruction - (++) PWR_SLEEPENTRY_WFE: enter SLEEP mode with WFE instruction - - (+) Exit: - (++) WFI entry mode, Any peripheral interrupt acknowledged by the nested vectored interrupt - controller (NVIC) can wake up the device from Sleep mode. - (++) WFE entry mode, Any wakeup event can wake up the device from Sleep mode. - (+++) Any peripheral interrupt w/o NVIC configuration & SEVONPEND bit set in the Cortex (HAL_PWR_EnableSEVOnPend) - (+++) Any EXTI Line (Internal or External) configured in Event mode - - *** Stop mode *** - ================= - [..] - The Stop mode is based on the Cortex-M3 deepsleep mode combined with peripheral - clock gating. The voltage regulator can be configured either in normal or low-power mode. - In Stop mode, all clocks in the 1.8 V domain are stopped, the PLL, the HSI and the HSE RC - oscillators are disabled. SRAM and register contents are preserved. - In Stop mode, all I/O pins keep the same state as in Run mode. - - (+) Entry: - The Stop mode is entered using the HAL_PWR_EnterSTOPMode(PWR_REGULATOR_VALUE, PWR_SLEEPENTRY_WFx ) - function with: - (++) PWR_REGULATOR_VALUE= PWR_MAINREGULATOR_ON: Main regulator ON. - (++) PWR_REGULATOR_VALUE= PWR_LOWPOWERREGULATOR_ON: Low Power regulator ON. - (++) PWR_SLEEPENTRY_WFx= PWR_SLEEPENTRY_WFI: enter STOP mode with WFI instruction - (++) PWR_SLEEPENTRY_WFx= PWR_SLEEPENTRY_WFE: enter STOP mode with WFE instruction - (+) Exit: - (++) WFI entry mode, Any EXTI Line (Internal or External) configured in Interrupt mode with NVIC configured - (++) WFE entry mode, Any EXTI Line (Internal or External) configured in Event mode. - - *** Standby mode *** - ==================== - [..] - The Standby mode allows to achieve the lowest power consumption. It is based on the - Cortex-M3 deepsleep mode, with the voltage regulator disabled. The 1.8 V domain is - consequently powered off. The PLL, the HSI oscillator and the HSE oscillator are also - switched off. SRAM and register contents are lost except for registers in the Backup domain - and Standby circuitry - - (+) Entry: - (++) The Standby mode is entered using the HAL_PWR_EnterSTANDBYMode() function. - (+) Exit: - (++) WKUP pin rising edge, RTC alarm event rising edge, external Reset in - NRSTpin, IWDG Reset - - *** Auto-wakeup (AWU) from low-power mode *** - ============================================= - [..] - - (+) The MCU can be woken up from low-power mode by an RTC Alarm event, - without depending on an external interrupt (Auto-wakeup mode). - - (+) RTC auto-wakeup (AWU) from the Stop and Standby modes - - (++) To wake up from the Stop mode with an RTC alarm event, it is necessary to - configure the RTC to generate the RTC alarm using the HAL_RTC_SetAlarm_IT() function. - - *** PWR Workarounds linked to Silicon Limitation *** - ==================================================== - [..] - Below the list of all silicon limitations known on STM32F1xx prouct. - - (#)Workarounds Implemented inside PWR HAL Driver - (##)Debugging Stop mode with WFE entry - overloaded the WFE by an internal function - -@endverbatim - * @{ - */ - -/** - * @brief Configures the voltage threshold detected by the Power Voltage Detector(PVD). - * @param sConfigPVD: pointer to an PWR_PVDTypeDef structure that contains the configuration - * information for the PVD. - * @note Refer to the electrical characteristics of your device datasheet for - * more details about the voltage threshold corresponding to each - * detection level. - * @retval None - */ -void HAL_PWR_ConfigPVD(PWR_PVDTypeDef *sConfigPVD) -{ - /* Check the parameters */ - assert_param(IS_PWR_PVD_LEVEL(sConfigPVD->PVDLevel)); - assert_param(IS_PWR_PVD_MODE(sConfigPVD->Mode)); - - /* Set PLS[7:5] bits according to PVDLevel value */ - MODIFY_REG(PWR->CR, PWR_CR_PLS, sConfigPVD->PVDLevel); - - /* Clear any previous config. Keep it clear if no event or IT mode is selected */ - __HAL_PWR_PVD_EXTI_DISABLE_EVENT(); - __HAL_PWR_PVD_EXTI_DISABLE_IT(); - __HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE(); - __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE(); - - /* Configure interrupt mode */ - if((sConfigPVD->Mode & PVD_MODE_IT) == PVD_MODE_IT) - { - __HAL_PWR_PVD_EXTI_ENABLE_IT(); - } - - /* Configure event mode */ - if((sConfigPVD->Mode & PVD_MODE_EVT) == PVD_MODE_EVT) - { - __HAL_PWR_PVD_EXTI_ENABLE_EVENT(); - } - - /* Configure the edge */ - if((sConfigPVD->Mode & PVD_RISING_EDGE) == PVD_RISING_EDGE) - { - __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE(); - } - - if((sConfigPVD->Mode & PVD_FALLING_EDGE) == PVD_FALLING_EDGE) - { - __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE(); - } -} - -/** - * @brief Enables the Power Voltage Detector(PVD). - * @retval None - */ -void HAL_PWR_EnablePVD(void) -{ - /* Enable the power voltage detector */ - *(__IO uint32_t *) CR_PVDE_BB = (uint32_t)ENABLE; -} - -/** - * @brief Disables the Power Voltage Detector(PVD). - * @retval None - */ -void HAL_PWR_DisablePVD(void) -{ - /* Disable the power voltage detector */ - *(__IO uint32_t *) CR_PVDE_BB = (uint32_t)DISABLE; -} - -/** - * @brief Enables the WakeUp PINx functionality. - * @param WakeUpPinx: Specifies the Power Wake-Up pin to enable. - * This parameter can be one of the following values: - * @arg PWR_WAKEUP_PIN1 - * @retval None - */ -void HAL_PWR_EnableWakeUpPin(uint32_t WakeUpPinx) -{ - /* Check the parameter */ - assert_param(IS_PWR_WAKEUP_PIN(WakeUpPinx)); - /* Enable the EWUPx pin */ - *(__IO uint32_t *) CSR_EWUP_BB(WakeUpPinx) = (uint32_t)ENABLE; -} - -/** - * @brief Disables the WakeUp PINx functionality. - * @param WakeUpPinx: Specifies the Power Wake-Up pin to disable. - * This parameter can be one of the following values: - * @arg PWR_WAKEUP_PIN1 - * @retval None - */ -void HAL_PWR_DisableWakeUpPin(uint32_t WakeUpPinx) -{ - /* Check the parameter */ - assert_param(IS_PWR_WAKEUP_PIN(WakeUpPinx)); - /* Disable the EWUPx pin */ - *(__IO uint32_t *) CSR_EWUP_BB(WakeUpPinx) = (uint32_t)DISABLE; -} - -/** - * @brief Enters Sleep mode. - * @note In Sleep mode, all I/O pins keep the same state as in Run mode. - * @param Regulator: Regulator state as no effect in SLEEP mode - allows to support portability from legacy software - * @param SLEEPEntry: Specifies if SLEEP mode is entered with WFI or WFE instruction. - * When WFI entry is used, tick interrupt have to be disabled if not desired as - * the interrupt wake up source. - * This parameter can be one of the following values: - * @arg PWR_SLEEPENTRY_WFI: enter SLEEP mode with WFI instruction - * @arg PWR_SLEEPENTRY_WFE: enter SLEEP mode with WFE instruction - * @retval None - */ -void HAL_PWR_EnterSLEEPMode(uint32_t Regulator, uint8_t SLEEPEntry) -{ - /* Check the parameters */ - /* No check on Regulator because parameter not used in SLEEP mode */ - /* Prevent unused argument(s) compilation warning */ - UNUSED(Regulator); - - assert_param(IS_PWR_SLEEP_ENTRY(SLEEPEntry)); - - /* Clear SLEEPDEEP bit of Cortex System Control Register */ - CLEAR_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPDEEP_Msk)); - - /* Select SLEEP mode entry -------------------------------------------------*/ - if(SLEEPEntry == PWR_SLEEPENTRY_WFI) - { - /* Request Wait For Interrupt */ - __WFI(); - } - else - { - /* Request Wait For Event */ - __SEV(); - __WFE(); - __WFE(); - } -} - -/** - * @brief Enters Stop mode. - * @note In Stop mode, all I/O pins keep the same state as in Run mode. - * @note When exiting Stop mode by using an interrupt or a wakeup event, - * HSI RC oscillator is selected as system clock. - * @note When the voltage regulator operates in low power mode, an additional - * startup delay is incurred when waking up from Stop mode. - * By keeping the internal regulator ON during Stop mode, the consumption - * is higher although the startup time is reduced. - * @param Regulator: Specifies the regulator state in Stop mode. - * This parameter can be one of the following values: - * @arg PWR_MAINREGULATOR_ON: Stop mode with regulator ON - * @arg PWR_LOWPOWERREGULATOR_ON: Stop mode with low power regulator ON - * @param STOPEntry: Specifies if Stop mode in entered with WFI or WFE instruction. - * This parameter can be one of the following values: - * @arg PWR_STOPENTRY_WFI: Enter Stop mode with WFI instruction - * @arg PWR_STOPENTRY_WFE: Enter Stop mode with WFE instruction - * @retval None - */ -void HAL_PWR_EnterSTOPMode(uint32_t Regulator, uint8_t STOPEntry) -{ - /* Check the parameters */ - assert_param(IS_PWR_REGULATOR(Regulator)); - assert_param(IS_PWR_STOP_ENTRY(STOPEntry)); - - /* Clear PDDS bit in PWR register to specify entering in STOP mode when CPU enter in Deepsleep */ - CLEAR_BIT(PWR->CR, PWR_CR_PDDS); - - /* Select the voltage regulator mode by setting LPDS bit in PWR register according to Regulator parameter value */ - MODIFY_REG(PWR->CR, PWR_CR_LPDS, Regulator); - - /* Set SLEEPDEEP bit of Cortex System Control Register */ - SET_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPDEEP_Msk)); - - /* Select Stop mode entry --------------------------------------------------*/ - if(STOPEntry == PWR_STOPENTRY_WFI) - { - /* Request Wait For Interrupt */ - __WFI(); - } - else - { - /* Request Wait For Event */ - __SEV(); - PWR_OverloadWfe(); /* WFE redefine locally */ - PWR_OverloadWfe(); /* WFE redefine locally */ - } - /* Reset SLEEPDEEP bit of Cortex System Control Register */ - CLEAR_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPDEEP_Msk)); -} - -/** - * @brief Enters Standby mode. - * @note In Standby mode, all I/O pins are high impedance except for: - * - Reset pad (still available) - * - TAMPER pin if configured for tamper or calibration out. - * - WKUP pin (PA0) if enabled. - * @retval None - */ -void HAL_PWR_EnterSTANDBYMode(void) -{ - /* Select Standby mode */ - SET_BIT(PWR->CR, PWR_CR_PDDS); - - /* Set SLEEPDEEP bit of Cortex System Control Register */ - SET_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPDEEP_Msk)); - - /* This option is used to ensure that store operations are completed */ -#if defined ( __CC_ARM) - __force_stores(); -#endif - /* Request Wait For Interrupt */ - __WFI(); -} - - -/** - * @brief Indicates Sleep-On-Exit when returning from Handler mode to Thread mode. - * @note Set SLEEPONEXIT bit of SCR register. When this bit is set, the processor - * re-enters SLEEP mode when an interruption handling is over. - * Setting this bit is useful when the processor is expected to run only on - * interruptions handling. - * @retval None - */ -void HAL_PWR_EnableSleepOnExit(void) -{ - /* Set SLEEPONEXIT bit of Cortex System Control Register */ - SET_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPONEXIT_Msk)); -} - - -/** - * @brief Disables Sleep-On-Exit feature when returning from Handler mode to Thread mode. - * @note Clears SLEEPONEXIT bit of SCR register. When this bit is set, the processor - * re-enters SLEEP mode when an interruption handling is over. - * @retval None - */ -void HAL_PWR_DisableSleepOnExit(void) -{ - /* Clear SLEEPONEXIT bit of Cortex System Control Register */ - CLEAR_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPONEXIT_Msk)); -} - - -/** - * @brief Enables CORTEX M3 SEVONPEND bit. - * @note Sets SEVONPEND bit of SCR register. When this bit is set, this causes - * WFE to wake up when an interrupt moves from inactive to pended. - * @retval None - */ -void HAL_PWR_EnableSEVOnPend(void) -{ - /* Set SEVONPEND bit of Cortex System Control Register */ - SET_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SEVONPEND_Msk)); -} - - -/** - * @brief Disables CORTEX M3 SEVONPEND bit. - * @note Clears SEVONPEND bit of SCR register. When this bit is set, this causes - * WFE to wake up when an interrupt moves from inactive to pended. - * @retval None - */ -void HAL_PWR_DisableSEVOnPend(void) -{ - /* Clear SEVONPEND bit of Cortex System Control Register */ - CLEAR_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SEVONPEND_Msk)); -} - - - -/** - * @brief This function handles the PWR PVD interrupt request. - * @note This API should be called under the PVD_IRQHandler(). - * @retval None - */ -void HAL_PWR_PVD_IRQHandler(void) -{ - /* Check PWR exti flag */ - if(__HAL_PWR_PVD_EXTI_GET_FLAG() != RESET) - { - /* PWR PVD interrupt user callback */ - HAL_PWR_PVDCallback(); - - /* Clear PWR Exti pending bit */ - __HAL_PWR_PVD_EXTI_CLEAR_FLAG(); - } -} - -/** - * @brief PWR PVD interrupt callback - * @retval None - */ -__weak void HAL_PWR_PVDCallback(void) -{ - /* NOTE : This function Should not be modified, when the callback is needed, - the HAL_PWR_PVDCallback could be implemented in the user file - */ -} - -/** - * @} - */ - -/** - * @} - */ - -#endif /* HAL_PWR_MODULE_ENABLED */ -/** - * @} - */ - -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_pwr.c + * @author MCD Application Team + * @brief PWR HAL module driver. + * + * This file provides firmware functions to manage the following + * functionalities of the Power Controller (PWR) peripheral: + * + Initialization/de-initialization functions + * + Peripheral Control functions + * + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup PWR PWR + * @brief PWR HAL module driver + * @{ + */ + +#ifdef HAL_PWR_MODULE_ENABLED + +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ + +/** @defgroup PWR_Private_Constants PWR Private Constants + * @{ + */ + +/** @defgroup PWR_PVD_Mode_Mask PWR PVD Mode Mask + * @{ + */ +#define PVD_MODE_IT 0x00010000U +#define PVD_MODE_EVT 0x00020000U +#define PVD_RISING_EDGE 0x00000001U +#define PVD_FALLING_EDGE 0x00000002U +/** + * @} + */ + + +/** @defgroup PWR_register_alias_address PWR Register alias address + * @{ + */ +/* ------------- PWR registers bit address in the alias region ---------------*/ +#define PWR_OFFSET (PWR_BASE - PERIPH_BASE) +#define PWR_CR_OFFSET 0x00U +#define PWR_CSR_OFFSET 0x04U +#define PWR_CR_OFFSET_BB (PWR_OFFSET + PWR_CR_OFFSET) +#define PWR_CSR_OFFSET_BB (PWR_OFFSET + PWR_CSR_OFFSET) +/** + * @} + */ + +/** @defgroup PWR_CR_register_alias PWR CR Register alias address + * @{ + */ +/* --- CR Register ---*/ +/* Alias word address of LPSDSR bit */ +#define LPSDSR_BIT_NUMBER PWR_CR_LPDS_Pos +#define CR_LPSDSR_BB ((uint32_t)(PERIPH_BB_BASE + (PWR_CR_OFFSET_BB * 32U) + (LPSDSR_BIT_NUMBER * 4U))) + +/* Alias word address of DBP bit */ +#define DBP_BIT_NUMBER PWR_CR_DBP_Pos +#define CR_DBP_BB ((uint32_t)(PERIPH_BB_BASE + (PWR_CR_OFFSET_BB * 32U) + (DBP_BIT_NUMBER * 4U))) + +/* Alias word address of PVDE bit */ +#define PVDE_BIT_NUMBER PWR_CR_PVDE_Pos +#define CR_PVDE_BB ((uint32_t)(PERIPH_BB_BASE + (PWR_CR_OFFSET_BB * 32U) + (PVDE_BIT_NUMBER * 4U))) + +/** + * @} + */ + +/** @defgroup PWR_CSR_register_alias PWR CSR Register alias address + * @{ + */ + +/* --- CSR Register ---*/ +/* Alias word address of EWUP1 bit */ +#define CSR_EWUP_BB(VAL) ((uint32_t)(PERIPH_BB_BASE + (PWR_CSR_OFFSET_BB * 32U) + (POSITION_VAL(VAL) * 4U))) +/** + * @} + */ + +/** + * @} + */ + +/* Private variables ---------------------------------------------------------*/ +/* Private function prototypes -----------------------------------------------*/ +/** @defgroup PWR_Private_Functions PWR Private Functions + * brief WFE cortex command overloaded for HAL_PWR_EnterSTOPMode usage only (see Workaround section) + * @{ + */ +static void PWR_OverloadWfe(void); + +/* Private functions ---------------------------------------------------------*/ +__NOINLINE +static void PWR_OverloadWfe(void) +{ + __asm volatile( "wfe" ); + __asm volatile( "nop" ); +} + +/** + * @} + */ + + +/** @defgroup PWR_Exported_Functions PWR Exported Functions + * @{ + */ + +/** @defgroup PWR_Exported_Functions_Group1 Initialization and de-initialization functions + * @brief Initialization and de-initialization functions + * +@verbatim + =============================================================================== + ##### Initialization and de-initialization functions ##### + =============================================================================== + [..] + After reset, the backup domain (RTC registers, RTC backup data + registers) is protected against possible unwanted + write accesses. + To enable access to the RTC Domain and RTC registers, proceed as follows: + (+) Enable the Power Controller (PWR) APB1 interface clock using the + __HAL_RCC_PWR_CLK_ENABLE() macro. + (+) Enable access to RTC domain using the HAL_PWR_EnableBkUpAccess() function. + +@endverbatim + * @{ + */ + +/** + * @brief Deinitializes the PWR peripheral registers to their default reset values. + * @retval None + */ +void HAL_PWR_DeInit(void) +{ + __HAL_RCC_PWR_FORCE_RESET(); + __HAL_RCC_PWR_RELEASE_RESET(); +} + +/** + * @brief Enables access to the backup domain (RTC registers, RTC + * backup data registers ). + * @note If the HSE divided by 128 is used as the RTC clock, the + * Backup Domain Access should be kept enabled. + * @retval None + */ +void HAL_PWR_EnableBkUpAccess(void) +{ + /* Enable access to RTC and backup registers */ + *(__IO uint32_t *) CR_DBP_BB = (uint32_t)ENABLE; +} + +/** + * @brief Disables access to the backup domain (RTC registers, RTC + * backup data registers). + * @note If the HSE divided by 128 is used as the RTC clock, the + * Backup Domain Access should be kept enabled. + * @retval None + */ +void HAL_PWR_DisableBkUpAccess(void) +{ + /* Disable access to RTC and backup registers */ + *(__IO uint32_t *) CR_DBP_BB = (uint32_t)DISABLE; +} + +/** + * @} + */ + +/** @defgroup PWR_Exported_Functions_Group2 Peripheral Control functions + * @brief Low Power modes configuration functions + * +@verbatim + =============================================================================== + ##### Peripheral Control functions ##### + =============================================================================== + + *** PVD configuration *** + ========================= + [..] + (+) The PVD is used to monitor the VDD power supply by comparing it to a + threshold selected by the PVD Level (PLS[2:0] bits in the PWR_CR). + + (+) A PVDO flag is available to indicate if VDD/VDDA is higher or lower + than the PVD threshold. This event is internally connected to the EXTI + line16 and can generate an interrupt if enabled. This is done through + __HAL_PVD_EXTI_ENABLE_IT() macro. + (+) The PVD is stopped in Standby mode. + + *** WakeUp pin configuration *** + ================================ + [..] + (+) WakeUp pin is used to wake up the system from Standby mode. This pin is + forced in input pull-down configuration and is active on rising edges. + (+) There is one WakeUp pin: + WakeUp Pin 1 on PA.00. + + [..] + + *** Low Power modes configuration *** + ===================================== + [..] + The device features 3 low-power modes: + (+) Sleep mode: CPU clock off, all peripherals including Cortex-M3 core peripherals like + NVIC, SysTick, etc. are kept running + (+) Stop mode: All clocks are stopped + (+) Standby mode: 1.8V domain powered off + + + *** Sleep mode *** + ================== + [..] + (+) Entry: + The Sleep mode is entered by using the HAL_PWR_EnterSLEEPMode(PWR_MAINREGULATOR_ON, PWR_SLEEPENTRY_WFx) + functions with + (++) PWR_SLEEPENTRY_WFI: enter SLEEP mode with WFI instruction + (++) PWR_SLEEPENTRY_WFE: enter SLEEP mode with WFE instruction + + (+) Exit: + (++) WFI entry mode, Any peripheral interrupt acknowledged by the nested vectored interrupt + controller (NVIC) can wake up the device from Sleep mode. + (++) WFE entry mode, Any wakeup event can wake up the device from Sleep mode. + (+++) Any peripheral interrupt w/o NVIC configuration & SEVONPEND bit set in the Cortex (HAL_PWR_EnableSEVOnPend) + (+++) Any EXTI Line (Internal or External) configured in Event mode + + *** Stop mode *** + ================= + [..] + The Stop mode is based on the Cortex-M3 deepsleep mode combined with peripheral + clock gating. The voltage regulator can be configured either in normal or low-power mode. + In Stop mode, all clocks in the 1.8 V domain are stopped, the PLL, the HSI and the HSE RC + oscillators are disabled. SRAM and register contents are preserved. + In Stop mode, all I/O pins keep the same state as in Run mode. + + (+) Entry: + The Stop mode is entered using the HAL_PWR_EnterSTOPMode(PWR_REGULATOR_VALUE, PWR_SLEEPENTRY_WFx ) + function with: + (++) PWR_REGULATOR_VALUE= PWR_MAINREGULATOR_ON: Main regulator ON. + (++) PWR_REGULATOR_VALUE= PWR_LOWPOWERREGULATOR_ON: Low Power regulator ON. + (++) PWR_SLEEPENTRY_WFx= PWR_SLEEPENTRY_WFI: enter STOP mode with WFI instruction + (++) PWR_SLEEPENTRY_WFx= PWR_SLEEPENTRY_WFE: enter STOP mode with WFE instruction + (+) Exit: + (++) WFI entry mode, Any EXTI Line (Internal or External) configured in Interrupt mode with NVIC configured + (++) WFE entry mode, Any EXTI Line (Internal or External) configured in Event mode. + + *** Standby mode *** + ==================== + [..] + The Standby mode allows to achieve the lowest power consumption. It is based on the + Cortex-M3 deepsleep mode, with the voltage regulator disabled. The 1.8 V domain is + consequently powered off. The PLL, the HSI oscillator and the HSE oscillator are also + switched off. SRAM and register contents are lost except for registers in the Backup domain + and Standby circuitry + + (+) Entry: + (++) The Standby mode is entered using the HAL_PWR_EnterSTANDBYMode() function. + (+) Exit: + (++) WKUP pin rising edge, RTC alarm event rising edge, external Reset in + NRSTpin, IWDG Reset + + *** Auto-wakeup (AWU) from low-power mode *** + ============================================= + [..] + + (+) The MCU can be woken up from low-power mode by an RTC Alarm event, + without depending on an external interrupt (Auto-wakeup mode). + + (+) RTC auto-wakeup (AWU) from the Stop and Standby modes + + (++) To wake up from the Stop mode with an RTC alarm event, it is necessary to + configure the RTC to generate the RTC alarm using the HAL_RTC_SetAlarm_IT() function. + + *** PWR Workarounds linked to Silicon Limitation *** + ==================================================== + [..] + Below the list of all silicon limitations known on STM32F1xx prouct. + + (#)Workarounds Implemented inside PWR HAL Driver + (##)Debugging Stop mode with WFE entry - overloaded the WFE by an internal function + +@endverbatim + * @{ + */ + +/** + * @brief Configures the voltage threshold detected by the Power Voltage Detector(PVD). + * @param sConfigPVD: pointer to an PWR_PVDTypeDef structure that contains the configuration + * information for the PVD. + * @note Refer to the electrical characteristics of your device datasheet for + * more details about the voltage threshold corresponding to each + * detection level. + * @retval None + */ +void HAL_PWR_ConfigPVD(PWR_PVDTypeDef *sConfigPVD) +{ + /* Check the parameters */ + assert_param(IS_PWR_PVD_LEVEL(sConfigPVD->PVDLevel)); + assert_param(IS_PWR_PVD_MODE(sConfigPVD->Mode)); + + /* Set PLS[7:5] bits according to PVDLevel value */ + MODIFY_REG(PWR->CR, PWR_CR_PLS, sConfigPVD->PVDLevel); + + /* Clear any previous config. Keep it clear if no event or IT mode is selected */ + __HAL_PWR_PVD_EXTI_DISABLE_EVENT(); + __HAL_PWR_PVD_EXTI_DISABLE_IT(); + __HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE(); + __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE(); + + /* Configure interrupt mode */ + if((sConfigPVD->Mode & PVD_MODE_IT) == PVD_MODE_IT) + { + __HAL_PWR_PVD_EXTI_ENABLE_IT(); + } + + /* Configure event mode */ + if((sConfigPVD->Mode & PVD_MODE_EVT) == PVD_MODE_EVT) + { + __HAL_PWR_PVD_EXTI_ENABLE_EVENT(); + } + + /* Configure the edge */ + if((sConfigPVD->Mode & PVD_RISING_EDGE) == PVD_RISING_EDGE) + { + __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE(); + } + + if((sConfigPVD->Mode & PVD_FALLING_EDGE) == PVD_FALLING_EDGE) + { + __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE(); + } +} + +/** + * @brief Enables the Power Voltage Detector(PVD). + * @retval None + */ +void HAL_PWR_EnablePVD(void) +{ + /* Enable the power voltage detector */ + *(__IO uint32_t *) CR_PVDE_BB = (uint32_t)ENABLE; +} + +/** + * @brief Disables the Power Voltage Detector(PVD). + * @retval None + */ +void HAL_PWR_DisablePVD(void) +{ + /* Disable the power voltage detector */ + *(__IO uint32_t *) CR_PVDE_BB = (uint32_t)DISABLE; +} + +/** + * @brief Enables the WakeUp PINx functionality. + * @param WakeUpPinx: Specifies the Power Wake-Up pin to enable. + * This parameter can be one of the following values: + * @arg PWR_WAKEUP_PIN1 + * @retval None + */ +void HAL_PWR_EnableWakeUpPin(uint32_t WakeUpPinx) +{ + /* Check the parameter */ + assert_param(IS_PWR_WAKEUP_PIN(WakeUpPinx)); + /* Enable the EWUPx pin */ + *(__IO uint32_t *) CSR_EWUP_BB(WakeUpPinx) = (uint32_t)ENABLE; +} + +/** + * @brief Disables the WakeUp PINx functionality. + * @param WakeUpPinx: Specifies the Power Wake-Up pin to disable. + * This parameter can be one of the following values: + * @arg PWR_WAKEUP_PIN1 + * @retval None + */ +void HAL_PWR_DisableWakeUpPin(uint32_t WakeUpPinx) +{ + /* Check the parameter */ + assert_param(IS_PWR_WAKEUP_PIN(WakeUpPinx)); + /* Disable the EWUPx pin */ + *(__IO uint32_t *) CSR_EWUP_BB(WakeUpPinx) = (uint32_t)DISABLE; +} + +/** + * @brief Enters Sleep mode. + * @note In Sleep mode, all I/O pins keep the same state as in Run mode. + * @param Regulator: Regulator state as no effect in SLEEP mode - allows to support portability from legacy software + * @param SLEEPEntry: Specifies if SLEEP mode is entered with WFI or WFE instruction. + * When WFI entry is used, tick interrupt have to be disabled if not desired as + * the interrupt wake up source. + * This parameter can be one of the following values: + * @arg PWR_SLEEPENTRY_WFI: enter SLEEP mode with WFI instruction + * @arg PWR_SLEEPENTRY_WFE: enter SLEEP mode with WFE instruction + * @retval None + */ +void HAL_PWR_EnterSLEEPMode(uint32_t Regulator, uint8_t SLEEPEntry) +{ + /* Check the parameters */ + /* No check on Regulator because parameter not used in SLEEP mode */ + /* Prevent unused argument(s) compilation warning */ + UNUSED(Regulator); + + assert_param(IS_PWR_SLEEP_ENTRY(SLEEPEntry)); + + /* Clear SLEEPDEEP bit of Cortex System Control Register */ + CLEAR_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPDEEP_Msk)); + + /* Select SLEEP mode entry -------------------------------------------------*/ + if(SLEEPEntry == PWR_SLEEPENTRY_WFI) + { + /* Request Wait For Interrupt */ + __WFI(); + } + else + { + /* Request Wait For Event */ + __SEV(); + __WFE(); + __WFE(); + } +} + +/** + * @brief Enters Stop mode. + * @note In Stop mode, all I/O pins keep the same state as in Run mode. + * @note When exiting Stop mode by using an interrupt or a wakeup event, + * HSI RC oscillator is selected as system clock. + * @note When the voltage regulator operates in low power mode, an additional + * startup delay is incurred when waking up from Stop mode. + * By keeping the internal regulator ON during Stop mode, the consumption + * is higher although the startup time is reduced. + * @param Regulator: Specifies the regulator state in Stop mode. + * This parameter can be one of the following values: + * @arg PWR_MAINREGULATOR_ON: Stop mode with regulator ON + * @arg PWR_LOWPOWERREGULATOR_ON: Stop mode with low power regulator ON + * @param STOPEntry: Specifies if Stop mode in entered with WFI or WFE instruction. + * This parameter can be one of the following values: + * @arg PWR_STOPENTRY_WFI: Enter Stop mode with WFI instruction + * @arg PWR_STOPENTRY_WFE: Enter Stop mode with WFE instruction + * @retval None + */ +void HAL_PWR_EnterSTOPMode(uint32_t Regulator, uint8_t STOPEntry) +{ + /* Check the parameters */ + assert_param(IS_PWR_REGULATOR(Regulator)); + assert_param(IS_PWR_STOP_ENTRY(STOPEntry)); + + /* Clear PDDS bit in PWR register to specify entering in STOP mode when CPU enter in Deepsleep */ + CLEAR_BIT(PWR->CR, PWR_CR_PDDS); + + /* Select the voltage regulator mode by setting LPDS bit in PWR register according to Regulator parameter value */ + MODIFY_REG(PWR->CR, PWR_CR_LPDS, Regulator); + + /* Set SLEEPDEEP bit of Cortex System Control Register */ + SET_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPDEEP_Msk)); + + /* Select Stop mode entry --------------------------------------------------*/ + if(STOPEntry == PWR_STOPENTRY_WFI) + { + /* Request Wait For Interrupt */ + __WFI(); + } + else + { + /* Request Wait For Event */ + __SEV(); + PWR_OverloadWfe(); /* WFE redefine locally */ + PWR_OverloadWfe(); /* WFE redefine locally */ + } + /* Reset SLEEPDEEP bit of Cortex System Control Register */ + CLEAR_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPDEEP_Msk)); +} + +/** + * @brief Enters Standby mode. + * @note In Standby mode, all I/O pins are high impedance except for: + * - Reset pad (still available) + * - TAMPER pin if configured for tamper or calibration out. + * - WKUP pin (PA0) if enabled. + * @retval None + */ +void HAL_PWR_EnterSTANDBYMode(void) +{ + /* Select Standby mode */ + SET_BIT(PWR->CR, PWR_CR_PDDS); + + /* Set SLEEPDEEP bit of Cortex System Control Register */ + SET_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPDEEP_Msk)); + + /* This option is used to ensure that store operations are completed */ +#if defined ( __CC_ARM) + __force_stores(); +#endif + /* Request Wait For Interrupt */ + __WFI(); +} + + +/** + * @brief Indicates Sleep-On-Exit when returning from Handler mode to Thread mode. + * @note Set SLEEPONEXIT bit of SCR register. When this bit is set, the processor + * re-enters SLEEP mode when an interruption handling is over. + * Setting this bit is useful when the processor is expected to run only on + * interruptions handling. + * @retval None + */ +void HAL_PWR_EnableSleepOnExit(void) +{ + /* Set SLEEPONEXIT bit of Cortex System Control Register */ + SET_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPONEXIT_Msk)); +} + + +/** + * @brief Disables Sleep-On-Exit feature when returning from Handler mode to Thread mode. + * @note Clears SLEEPONEXIT bit of SCR register. When this bit is set, the processor + * re-enters SLEEP mode when an interruption handling is over. + * @retval None + */ +void HAL_PWR_DisableSleepOnExit(void) +{ + /* Clear SLEEPONEXIT bit of Cortex System Control Register */ + CLEAR_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPONEXIT_Msk)); +} + + +/** + * @brief Enables CORTEX M3 SEVONPEND bit. + * @note Sets SEVONPEND bit of SCR register. When this bit is set, this causes + * WFE to wake up when an interrupt moves from inactive to pended. + * @retval None + */ +void HAL_PWR_EnableSEVOnPend(void) +{ + /* Set SEVONPEND bit of Cortex System Control Register */ + SET_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SEVONPEND_Msk)); +} + + +/** + * @brief Disables CORTEX M3 SEVONPEND bit. + * @note Clears SEVONPEND bit of SCR register. When this bit is set, this causes + * WFE to wake up when an interrupt moves from inactive to pended. + * @retval None + */ +void HAL_PWR_DisableSEVOnPend(void) +{ + /* Clear SEVONPEND bit of Cortex System Control Register */ + CLEAR_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SEVONPEND_Msk)); +} + + + +/** + * @brief This function handles the PWR PVD interrupt request. + * @note This API should be called under the PVD_IRQHandler(). + * @retval None + */ +void HAL_PWR_PVD_IRQHandler(void) +{ + /* Check PWR exti flag */ + if(__HAL_PWR_PVD_EXTI_GET_FLAG() != RESET) + { + /* PWR PVD interrupt user callback */ + HAL_PWR_PVDCallback(); + + /* Clear PWR Exti pending bit */ + __HAL_PWR_PVD_EXTI_CLEAR_FLAG(); + } +} + +/** + * @brief PWR PVD interrupt callback + * @retval None + */ +__weak void HAL_PWR_PVDCallback(void) +{ + /* NOTE : This function Should not be modified, when the callback is needed, + the HAL_PWR_PVDCallback could be implemented in the user file + */ +} + +/** + * @} + */ + +/** + * @} + */ + +#endif /* HAL_PWR_MODULE_ENABLED */ +/** + * @} + */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c index 95b5568..fb3c5be 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c @@ -1,1403 +1,1403 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_rcc.c - * @author MCD Application Team - * @brief RCC HAL module driver. - * This file provides firmware functions to manage the following - * functionalities of the Reset and Clock Control (RCC) peripheral: - * + Initialization and de-initialization functions - * + Peripheral Control functions - * - @verbatim - ============================================================================== - ##### RCC specific features ##### - ============================================================================== - [..] - After reset the device is running from Internal High Speed oscillator - (HSI 8MHz) with Flash 0 wait state, Flash prefetch buffer is enabled, - and all peripherals are off except internal SRAM, Flash and JTAG. - (+) There is no prescaler on High speed (AHB) and Low speed (APB) buses; - all peripherals mapped on these buses are running at HSI speed. - (+) The clock for all peripherals is switched off, except the SRAM and FLASH. - (+) All GPIOs are in input floating state, except the JTAG pins which - are assigned to be used for debug purpose. - [..] Once the device started from reset, the user application has to: - (+) Configure the clock source to be used to drive the System clock - (if the application needs higher frequency/performance) - (+) Configure the System clock frequency and Flash settings - (+) Configure the AHB and APB buses prescalers - (+) Enable the clock for the peripheral(s) to be used - (+) Configure the clock source(s) for peripherals whose clocks are not - derived from the System clock (I2S, RTC, ADC, USB OTG FS) - - ##### RCC Limitations ##### - ============================================================================== - [..] - A delay between an RCC peripheral clock enable and the effective peripheral - enabling should be taken into account in order to manage the peripheral read/write - from/to registers. - (+) This delay depends on the peripheral mapping. - (++) AHB & APB peripherals, 1 dummy read is necessary - - [..] - Workarounds: - (#) For AHB & APB peripherals, a dummy read to the peripheral register has been - inserted in each __HAL_RCC_PPP_CLK_ENABLE() macro. - - @endverbatim - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup RCC RCC -* @brief RCC HAL module driver - * @{ - */ - -#ifdef HAL_RCC_MODULE_ENABLED - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/** @defgroup RCC_Private_Constants RCC Private Constants - * @{ - */ -/** - * @} - */ -/* Private macro -------------------------------------------------------------*/ -/** @defgroup RCC_Private_Macros RCC Private Macros - * @{ - */ - -#define MCO1_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE() -#define MCO1_GPIO_PORT GPIOA -#define MCO1_PIN GPIO_PIN_8 - -/** - * @} - */ - -/* Private variables ---------------------------------------------------------*/ -/** @defgroup RCC_Private_Variables RCC Private Variables - * @{ - */ -/** - * @} - */ - -/* Private function prototypes -----------------------------------------------*/ -static void RCC_Delay(uint32_t mdelay); - -/* Exported functions --------------------------------------------------------*/ - -/** @defgroup RCC_Exported_Functions RCC Exported Functions - * @{ - */ - -/** @defgroup RCC_Exported_Functions_Group1 Initialization and de-initialization functions - * @brief Initialization and Configuration functions - * - @verbatim - =============================================================================== - ##### Initialization and de-initialization functions ##### - =============================================================================== - [..] - This section provides functions allowing to configure the internal/external oscillators - (HSE, HSI, LSE, LSI, PLL, CSS and MCO) and the System buses clocks (SYSCLK, AHB, APB1 - and APB2). - - [..] Internal/external clock and PLL configuration - (#) HSI (high-speed internal), 8 MHz factory-trimmed RC used directly or through - the PLL as System clock source. - (#) LSI (low-speed internal), ~40 KHz low consumption RC used as IWDG and/or RTC - clock source. - - (#) HSE (high-speed external), 4 to 24 MHz (STM32F100xx) or 4 to 16 MHz (STM32F101x/STM32F102x/STM32F103x) or 3 to 25 MHz (STM32F105x/STM32F107x) crystal oscillator used directly or - through the PLL as System clock source. Can be used also as RTC clock source. - - (#) LSE (low-speed external), 32 KHz oscillator used as RTC clock source. - - (#) PLL (clocked by HSI or HSE), featuring different output clocks: - (++) The first output is used to generate the high speed system clock (up to 72 MHz for STM32F10xxx or up to 24 MHz for STM32F100xx) - (++) The second output is used to generate the clock for the USB OTG FS (48 MHz) - - (#) CSS (Clock security system), once enable using the macro __HAL_RCC_CSS_ENABLE() - and if a HSE clock failure occurs(HSE used directly or through PLL as System - clock source), the System clocks automatically switched to HSI and an interrupt - is generated if enabled. The interrupt is linked to the Cortex-M3 NMI - (Non-Maskable Interrupt) exception vector. - - (#) MCO1 (microcontroller clock output), used to output SYSCLK, HSI, - HSE or PLL clock (divided by 2) on PA8 pin + PLL2CLK, PLL3CLK/2, PLL3CLK and XTI for STM32F105x/STM32F107x - - [..] System, AHB and APB buses clocks configuration - (#) Several clock sources can be used to drive the System clock (SYSCLK): HSI, - HSE and PLL. - The AHB clock (HCLK) is derived from System clock through configurable - prescaler and used to clock the CPU, memory and peripherals mapped - on AHB bus (DMA, GPIO...). APB1 (PCLK1) and APB2 (PCLK2) clocks are derived - from AHB clock through configurable prescalers and used to clock - the peripherals mapped on these buses. You can use - "@ref HAL_RCC_GetSysClockFreq()" function to retrieve the frequencies of these clocks. - - -@- All the peripheral clocks are derived from the System clock (SYSCLK) except: - (+@) RTC: RTC clock can be derived either from the LSI, LSE or HSE clock - divided by 128. - (+@) USB OTG FS and RTC: USB OTG FS require a frequency equal to 48 MHz - to work correctly. This clock is derived of the main PLL through PLL Multiplier. - (+@) I2S interface on STM32F105x/STM32F107x can be derived from PLL3CLK - (+@) IWDG clock which is always the LSI clock. - - (#) For STM32F10xxx, the maximum frequency of the SYSCLK and HCLK/PCLK2 is 72 MHz, PCLK1 36 MHz. - For STM32F100xx, the maximum frequency of the SYSCLK and HCLK/PCLK1/PCLK2 is 24 MHz. - Depending on the SYSCLK frequency, the flash latency should be adapted accordingly. - @endverbatim - * @{ - */ - -/* - Additional consideration on the SYSCLK based on Latency settings: - +-----------------------------------------------+ - | Latency | SYSCLK clock frequency (MHz) | - |---------------|-------------------------------| - |0WS(1CPU cycle)| 0 < SYSCLK <= 24 | - |---------------|-------------------------------| - |1WS(2CPU cycle)| 24 < SYSCLK <= 48 | - |---------------|-------------------------------| - |2WS(3CPU cycle)| 48 < SYSCLK <= 72 | - +-----------------------------------------------+ - */ - -/** - * @brief Resets the RCC clock configuration to the default reset state. - * @note The default reset state of the clock configuration is given below: - * - HSI ON and used as system clock source - * - HSE, PLL, PLL2 and PLL3 are OFF - * - AHB, APB1 and APB2 prescaler set to 1. - * - CSS and MCO1 OFF - * - All interrupts disabled - * - All flags are cleared - * @note This function does not modify the configuration of the - * - Peripheral clocks - * - LSI, LSE and RTC clocks - * @retval HAL_StatusTypeDef - */ -HAL_StatusTypeDef HAL_RCC_DeInit(void) -{ - uint32_t tickstart; - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Set HSION bit */ - SET_BIT(RCC->CR, RCC_CR_HSION); - - /* Wait till HSI is ready */ - while (READ_BIT(RCC->CR, RCC_CR_HSIRDY) == RESET) - { - if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - - /* Set HSITRIM bits to the reset value */ - MODIFY_REG(RCC->CR, RCC_CR_HSITRIM, (0x10U << RCC_CR_HSITRIM_Pos)); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Reset CFGR register */ - CLEAR_REG(RCC->CFGR); - - /* Wait till clock switch is ready */ - while (READ_BIT(RCC->CFGR, RCC_CFGR_SWS) != RESET) - { - if ((HAL_GetTick() - tickstart) > CLOCKSWITCH_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - - /* Update the SystemCoreClock global variable */ - SystemCoreClock = HSI_VALUE; - - /* Adapt Systick interrupt period */ - if (HAL_InitTick(uwTickPrio) != HAL_OK) - { - return HAL_ERROR; - } - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Second step is to clear PLLON bit */ - CLEAR_BIT(RCC->CR, RCC_CR_PLLON); - - /* Wait till PLL is disabled */ - while (READ_BIT(RCC->CR, RCC_CR_PLLRDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - - /* Ensure to reset PLLSRC and PLLMUL bits */ - CLEAR_REG(RCC->CFGR); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Reset HSEON & CSSON bits */ - CLEAR_BIT(RCC->CR, RCC_CR_HSEON | RCC_CR_CSSON); - - /* Wait till HSE is disabled */ - while (READ_BIT(RCC->CR, RCC_CR_HSERDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - - /* Reset HSEBYP bit */ - CLEAR_BIT(RCC->CR, RCC_CR_HSEBYP); - -#if defined(RCC_PLL2_SUPPORT) - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Clear PLL2ON bit */ - CLEAR_BIT(RCC->CR, RCC_CR_PLL2ON); - - /* Wait till PLL2 is disabled */ - while (READ_BIT(RCC->CR, RCC_CR_PLL2RDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } -#endif /* RCC_PLL2_SUPPORT */ - -#if defined(RCC_PLLI2S_SUPPORT) - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Clear PLL3ON bit */ - CLEAR_BIT(RCC->CR, RCC_CR_PLL3ON); - - /* Wait till PLL3 is disabled */ - while (READ_BIT(RCC->CR, RCC_CR_PLL3RDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > PLLI2S_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } -#endif /* RCC_PLLI2S_SUPPORT */ - -#if defined(RCC_CFGR2_PREDIV1) - /* Reset CFGR2 register */ - CLEAR_REG(RCC->CFGR2); -#endif /* RCC_CFGR2_PREDIV1 */ - - /* Reset all CSR flags */ - SET_BIT(RCC->CSR, RCC_CSR_RMVF); - - /* Disable all interrupts */ - CLEAR_REG(RCC->CIR); - - return HAL_OK; -} - -/** - * @brief Initializes the RCC Oscillators according to the specified parameters in the - * RCC_OscInitTypeDef. - * @param RCC_OscInitStruct pointer to an RCC_OscInitTypeDef structure that - * contains the configuration information for the RCC Oscillators. - * @note The PLL is not disabled when used as system clock. - * @note The PLL is not disabled when USB OTG FS clock is enabled (specific to devices with USB FS) - * @note Transitions LSE Bypass to LSE On and LSE On to LSE Bypass are not - * supported by this macro. User should request a transition to LSE Off - * first and then LSE On or LSE Bypass. - * @note Transition HSE Bypass to HSE On and HSE On to HSE Bypass are not - * supported by this macro. User should request a transition to HSE Off - * first and then HSE On or HSE Bypass. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_RCC_OscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct) -{ - uint32_t tickstart; - uint32_t pll_config; - - /* Check Null pointer */ - if (RCC_OscInitStruct == NULL) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_RCC_OSCILLATORTYPE(RCC_OscInitStruct->OscillatorType)); - - /*------------------------------- HSE Configuration ------------------------*/ - if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSE) == RCC_OSCILLATORTYPE_HSE) - { - /* Check the parameters */ - assert_param(IS_RCC_HSE(RCC_OscInitStruct->HSEState)); - - /* When the HSE is used as system clock or clock source for PLL in these cases it is not allowed to be disabled */ - if ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_HSE) - || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSE))) - { - if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) && (RCC_OscInitStruct->HSEState == RCC_HSE_OFF)) - { - return HAL_ERROR; - } - } - else - { - /* Set the new HSE configuration ---------------------------------------*/ - __HAL_RCC_HSE_CONFIG(RCC_OscInitStruct->HSEState); - - - /* Check the HSE State */ - if (RCC_OscInitStruct->HSEState != RCC_HSE_OFF) - { - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till HSE is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET) - { - if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - else - { - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till HSE is disabled */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - } - } - /*----------------------------- HSI Configuration --------------------------*/ - if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSI) == RCC_OSCILLATORTYPE_HSI) - { - /* Check the parameters */ - assert_param(IS_RCC_HSI(RCC_OscInitStruct->HSIState)); - assert_param(IS_RCC_CALIBRATION_VALUE(RCC_OscInitStruct->HSICalibrationValue)); - - /* Check if HSI is used as system clock or as PLL source when PLL is selected as system clock */ - if ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_HSI) - || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSI_DIV2))) - { - /* When HSI is used as system clock it will not disabled */ - if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) && (RCC_OscInitStruct->HSIState != RCC_HSI_ON)) - { - return HAL_ERROR; - } - /* Otherwise, just the calibration is allowed */ - else - { - /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/ - __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->HSICalibrationValue); - } - } - else - { - /* Check the HSI State */ - if (RCC_OscInitStruct->HSIState != RCC_HSI_OFF) - { - /* Enable the Internal High Speed oscillator (HSI). */ - __HAL_RCC_HSI_ENABLE(); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till HSI is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET) - { - if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - - /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/ - __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->HSICalibrationValue); - } - else - { - /* Disable the Internal High Speed oscillator (HSI). */ - __HAL_RCC_HSI_DISABLE(); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till HSI is disabled */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - } - } - /*------------------------------ LSI Configuration -------------------------*/ - if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSI) == RCC_OSCILLATORTYPE_LSI) - { - /* Check the parameters */ - assert_param(IS_RCC_LSI(RCC_OscInitStruct->LSIState)); - - /* Check the LSI State */ - if (RCC_OscInitStruct->LSIState != RCC_LSI_OFF) - { - /* Enable the Internal Low Speed oscillator (LSI). */ - __HAL_RCC_LSI_ENABLE(); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till LSI is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) == RESET) - { - if ((HAL_GetTick() - tickstart) > LSI_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - /* To have a fully stabilized clock in the specified range, a software delay of 1ms - should be added.*/ - RCC_Delay(1); - } - else - { - /* Disable the Internal Low Speed oscillator (LSI). */ - __HAL_RCC_LSI_DISABLE(); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till LSI is disabled */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > LSI_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - } - /*------------------------------ LSE Configuration -------------------------*/ - if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSE) == RCC_OSCILLATORTYPE_LSE) - { - FlagStatus pwrclkchanged = RESET; - - /* Check the parameters */ - assert_param(IS_RCC_LSE(RCC_OscInitStruct->LSEState)); - - /* Update LSE configuration in Backup Domain control register */ - /* Requires to enable write access to Backup Domain of necessary */ - if (__HAL_RCC_PWR_IS_CLK_DISABLED()) - { - __HAL_RCC_PWR_CLK_ENABLE(); - pwrclkchanged = SET; - } - - if (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) - { - /* Enable write access to Backup domain */ - SET_BIT(PWR->CR, PWR_CR_DBP); - - /* Wait for Backup domain Write protection disable */ - tickstart = HAL_GetTick(); - - while (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) - { - if ((HAL_GetTick() - tickstart) > RCC_DBP_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - - /* Set the new LSE configuration -----------------------------------------*/ - __HAL_RCC_LSE_CONFIG(RCC_OscInitStruct->LSEState); - /* Check the LSE State */ - if (RCC_OscInitStruct->LSEState != RCC_LSE_OFF) - { - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till LSE is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) == RESET) - { - if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - else - { - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till LSE is disabled */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - - /* Require to disable power clock if necessary */ - if (pwrclkchanged == SET) - { - __HAL_RCC_PWR_CLK_DISABLE(); - } - } - -#if defined(RCC_CR_PLL2ON) - /*-------------------------------- PLL2 Configuration -----------------------*/ - /* Check the parameters */ - assert_param(IS_RCC_PLL2(RCC_OscInitStruct->PLL2.PLL2State)); - if ((RCC_OscInitStruct->PLL2.PLL2State) != RCC_PLL2_NONE) - { - /* This bit can not be cleared if the PLL2 clock is used indirectly as system - clock (i.e. it is used as PLL clock entry that is used as system clock). */ - if ((__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSE) && \ - (__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && \ - ((READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC)) == RCC_CFGR2_PREDIV1SRC_PLL2)) - { - return HAL_ERROR; - } - else - { - if ((RCC_OscInitStruct->PLL2.PLL2State) == RCC_PLL2_ON) - { - /* Check the parameters */ - assert_param(IS_RCC_PLL2_MUL(RCC_OscInitStruct->PLL2.PLL2MUL)); - assert_param(IS_RCC_HSE_PREDIV2(RCC_OscInitStruct->PLL2.HSEPrediv2Value)); - - /* Prediv2 can be written only when the PLLI2S is disabled. */ - /* Return an error only if new value is different from the programmed value */ - if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL3ON) && \ - (__HAL_RCC_HSE_GET_PREDIV2() != RCC_OscInitStruct->PLL2.HSEPrediv2Value)) - { - return HAL_ERROR; - } - - /* Disable the main PLL2. */ - __HAL_RCC_PLL2_DISABLE(); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till PLL2 is disabled */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - - /* Configure the HSE prediv2 factor --------------------------------*/ - __HAL_RCC_HSE_PREDIV2_CONFIG(RCC_OscInitStruct->PLL2.HSEPrediv2Value); - - /* Configure the main PLL2 multiplication factors. */ - __HAL_RCC_PLL2_CONFIG(RCC_OscInitStruct->PLL2.PLL2MUL); - - /* Enable the main PLL2. */ - __HAL_RCC_PLL2_ENABLE(); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till PLL2 is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) == RESET) - { - if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - else - { - /* Set PREDIV1 source to HSE */ - CLEAR_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC); - - /* Disable the main PLL2. */ - __HAL_RCC_PLL2_DISABLE(); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till PLL2 is disabled */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - } - } - -#endif /* RCC_CR_PLL2ON */ - /*-------------------------------- PLL Configuration -----------------------*/ - /* Check the parameters */ - assert_param(IS_RCC_PLL(RCC_OscInitStruct->PLL.PLLState)); - if ((RCC_OscInitStruct->PLL.PLLState) != RCC_PLL_NONE) - { - /* Check if the PLL is used as system clock or not */ - if (__HAL_RCC_GET_SYSCLK_SOURCE() != RCC_SYSCLKSOURCE_STATUS_PLLCLK) - { - if ((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_ON) - { - /* Check the parameters */ - assert_param(IS_RCC_PLLSOURCE(RCC_OscInitStruct->PLL.PLLSource)); - assert_param(IS_RCC_PLL_MUL(RCC_OscInitStruct->PLL.PLLMUL)); - - /* Disable the main PLL. */ - __HAL_RCC_PLL_DISABLE(); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till PLL is disabled */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - - /* Configure the HSE prediv factor --------------------------------*/ - /* It can be written only when the PLL is disabled. Not used in PLL source is different than HSE */ - if (RCC_OscInitStruct->PLL.PLLSource == RCC_PLLSOURCE_HSE) - { - /* Check the parameter */ - assert_param(IS_RCC_HSE_PREDIV(RCC_OscInitStruct->HSEPredivValue)); -#if defined(RCC_CFGR2_PREDIV1SRC) - assert_param(IS_RCC_PREDIV1_SOURCE(RCC_OscInitStruct->Prediv1Source)); - - /* Set PREDIV1 source */ - SET_BIT(RCC->CFGR2, RCC_OscInitStruct->Prediv1Source); -#endif /* RCC_CFGR2_PREDIV1SRC */ - - /* Set PREDIV1 Value */ - __HAL_RCC_HSE_PREDIV_CONFIG(RCC_OscInitStruct->HSEPredivValue); - } - - /* Configure the main PLL clock source and multiplication factors. */ - __HAL_RCC_PLL_CONFIG(RCC_OscInitStruct->PLL.PLLSource, - RCC_OscInitStruct->PLL.PLLMUL); - /* Enable the main PLL. */ - __HAL_RCC_PLL_ENABLE(); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till PLL is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET) - { - if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - else - { - /* Disable the main PLL. */ - __HAL_RCC_PLL_DISABLE(); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till PLL is disabled */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - } - else - { - /* Check if there is a request to disable the PLL used as System clock source */ - if ((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_OFF) - { - return HAL_ERROR; - } - else - { - /* Do not return HAL_ERROR if request repeats the current configuration */ - pll_config = RCC->CFGR; - if ((READ_BIT(pll_config, RCC_CFGR_PLLSRC) != RCC_OscInitStruct->PLL.PLLSource) || - (READ_BIT(pll_config, RCC_CFGR_PLLMULL) != RCC_OscInitStruct->PLL.PLLMUL)) - { - return HAL_ERROR; - } - } - } - } - - return HAL_OK; -} - -/** - * @brief Initializes the CPU, AHB and APB buses clocks according to the specified - * parameters in the RCC_ClkInitStruct. - * @param RCC_ClkInitStruct pointer to an RCC_OscInitTypeDef structure that - * contains the configuration information for the RCC peripheral. - * @param FLatency FLASH Latency - * The value of this parameter depend on device used within the same series - * @note The SystemCoreClock CMSIS variable is used to store System Clock Frequency - * and updated by @ref HAL_RCC_GetHCLKFreq() function called within this function - * - * @note The HSI is used (enabled by hardware) as system clock source after - * start-up from Reset, wake-up from STOP and STANDBY mode, or in case - * of failure of the HSE used directly or indirectly as system clock - * (if the Clock Security System CSS is enabled). - * - * @note A switch from one clock source to another occurs only if the target - * clock source is ready (clock stable after start-up delay or PLL locked). - * If a clock source which is not yet ready is selected, the switch will - * occur when the clock source will be ready. - * You can use @ref HAL_RCC_GetClockConfig() function to know which clock is - * currently used as system clock source. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency) -{ - uint32_t tickstart; - - /* Check Null pointer */ - if (RCC_ClkInitStruct == NULL) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_RCC_CLOCKTYPE(RCC_ClkInitStruct->ClockType)); - assert_param(IS_FLASH_LATENCY(FLatency)); - - /* To correctly read data from FLASH memory, the number of wait states (LATENCY) - must be correctly programmed according to the frequency of the CPU clock - (HCLK) of the device. */ - -#if defined(FLASH_ACR_LATENCY) - /* Increasing the number of wait states because of higher CPU frequency */ - if (FLatency > __HAL_FLASH_GET_LATENCY()) - { - /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */ - __HAL_FLASH_SET_LATENCY(FLatency); - - /* Check that the new number of wait states is taken into account to access the Flash - memory by reading the FLASH_ACR register */ - if (__HAL_FLASH_GET_LATENCY() != FLatency) - { - return HAL_ERROR; - } -} - -#endif /* FLASH_ACR_LATENCY */ -/*-------------------------- HCLK Configuration --------------------------*/ -if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK) - { - /* Set the highest APBx dividers in order to ensure that we do not go through - a non-spec phase whatever we decrease or increase HCLK. */ - if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1) - { - MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE1, RCC_HCLK_DIV16); - } - - if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2) - { - MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE2, (RCC_HCLK_DIV16 << 3)); - } - - /* Set the new HCLK clock divider */ - assert_param(IS_RCC_HCLK(RCC_ClkInitStruct->AHBCLKDivider)); - MODIFY_REG(RCC->CFGR, RCC_CFGR_HPRE, RCC_ClkInitStruct->AHBCLKDivider); - } - - /*------------------------- SYSCLK Configuration ---------------------------*/ - if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_SYSCLK) == RCC_CLOCKTYPE_SYSCLK) - { - assert_param(IS_RCC_SYSCLKSOURCE(RCC_ClkInitStruct->SYSCLKSource)); - - /* HSE is selected as System Clock Source */ - if (RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_HSE) - { - /* Check the HSE ready flag */ - if (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET) - { - return HAL_ERROR; - } - } - /* PLL is selected as System Clock Source */ - else if (RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_PLLCLK) - { - /* Check the PLL ready flag */ - if (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET) - { - return HAL_ERROR; - } - } - /* HSI is selected as System Clock Source */ - else - { - /* Check the HSI ready flag */ - if (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET) - { - return HAL_ERROR; - } - } - __HAL_RCC_SYSCLK_CONFIG(RCC_ClkInitStruct->SYSCLKSource); - - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - while (__HAL_RCC_GET_SYSCLK_SOURCE() != (RCC_ClkInitStruct->SYSCLKSource << RCC_CFGR_SWS_Pos)) - { - if ((HAL_GetTick() - tickstart) > CLOCKSWITCH_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - -#if defined(FLASH_ACR_LATENCY) - /* Decreasing the number of wait states because of lower CPU frequency */ - if (FLatency < __HAL_FLASH_GET_LATENCY()) - { - /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */ - __HAL_FLASH_SET_LATENCY(FLatency); - - /* Check that the new number of wait states is taken into account to access the Flash - memory by reading the FLASH_ACR register */ - if (__HAL_FLASH_GET_LATENCY() != FLatency) - { - return HAL_ERROR; - } -} -#endif /* FLASH_ACR_LATENCY */ - -/*-------------------------- PCLK1 Configuration ---------------------------*/ -if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1) - { - assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB1CLKDivider)); - MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE1, RCC_ClkInitStruct->APB1CLKDivider); - } - - /*-------------------------- PCLK2 Configuration ---------------------------*/ - if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2) - { - assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB2CLKDivider)); - MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE2, ((RCC_ClkInitStruct->APB2CLKDivider) << 3)); - } - - /* Update the SystemCoreClock global variable */ - SystemCoreClock = HAL_RCC_GetSysClockFreq() >> AHBPrescTable[(RCC->CFGR & RCC_CFGR_HPRE) >> RCC_CFGR_HPRE_Pos]; - - /* Configure the source of time base considering new system clocks settings*/ - HAL_InitTick(uwTickPrio); - - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup RCC_Exported_Functions_Group2 Peripheral Control functions - * @brief RCC clocks control functions - * - @verbatim - =============================================================================== - ##### Peripheral Control functions ##### - =============================================================================== - [..] - This subsection provides a set of functions allowing to control the RCC Clocks - frequencies. - - @endverbatim - * @{ - */ - -/** - * @brief Selects the clock source to output on MCO pin. - * @note MCO pin should be configured in alternate function mode. - * @param RCC_MCOx specifies the output direction for the clock source. - * This parameter can be one of the following values: - * @arg @ref RCC_MCO1 Clock source to output on MCO1 pin(PA8). - * @param RCC_MCOSource specifies the clock source to output. - * This parameter can be one of the following values: - * @arg @ref RCC_MCO1SOURCE_NOCLOCK No clock selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_SYSCLK System clock selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_HSI HSI selected as MCO clock - * @arg @ref RCC_MCO1SOURCE_HSE HSE selected as MCO clock - @if STM32F105xC - * @arg @ref RCC_MCO1SOURCE_PLLCLK PLL clock divided by 2 selected as MCO source - * @arg @ref RCC_MCO1SOURCE_PLL2CLK PLL2 clock selected as MCO source - * @arg @ref RCC_MCO1SOURCE_PLL3CLK_DIV2 PLL3 clock divided by 2 selected as MCO source - * @arg @ref RCC_MCO1SOURCE_EXT_HSE XT1 external 3-25 MHz oscillator clock selected as MCO source - * @arg @ref RCC_MCO1SOURCE_PLL3CLK PLL3 clock selected as MCO source - @endif - @if STM32F107xC - * @arg @ref RCC_MCO1SOURCE_PLLCLK PLL clock divided by 2 selected as MCO source - * @arg @ref RCC_MCO1SOURCE_PLL2CLK PLL2 clock selected as MCO source - * @arg @ref RCC_MCO1SOURCE_PLL3CLK_DIV2 PLL3 clock divided by 2 selected as MCO source - * @arg @ref RCC_MCO1SOURCE_EXT_HSE XT1 external 3-25 MHz oscillator clock selected as MCO source - * @arg @ref RCC_MCO1SOURCE_PLL3CLK PLL3 clock selected as MCO source - @endif - * @param RCC_MCODiv specifies the MCO DIV. - * This parameter can be one of the following values: - * @arg @ref RCC_MCODIV_1 no division applied to MCO clock - * @retval None - */ -void HAL_RCC_MCOConfig(uint32_t RCC_MCOx, uint32_t RCC_MCOSource, uint32_t RCC_MCODiv) -{ - GPIO_InitTypeDef gpio = {0U}; - - /* Check the parameters */ - assert_param(IS_RCC_MCO(RCC_MCOx)); - assert_param(IS_RCC_MCODIV(RCC_MCODiv)); - assert_param(IS_RCC_MCO1SOURCE(RCC_MCOSource)); - - /* Prevent unused argument(s) compilation warning */ - UNUSED(RCC_MCOx); - UNUSED(RCC_MCODiv); - - /* Configure the MCO1 pin in alternate function mode */ - gpio.Mode = GPIO_MODE_AF_PP; - gpio.Speed = GPIO_SPEED_FREQ_HIGH; - gpio.Pull = GPIO_NOPULL; - gpio.Pin = MCO1_PIN; - - /* MCO1 Clock Enable */ - MCO1_CLK_ENABLE(); - - HAL_GPIO_Init(MCO1_GPIO_PORT, &gpio); - - /* Configure the MCO clock source */ - __HAL_RCC_MCO1_CONFIG(RCC_MCOSource, RCC_MCODiv); -} - -/** - * @brief Enables the Clock Security System. - * @note If a failure is detected on the HSE oscillator clock, this oscillator - * is automatically disabled and an interrupt is generated to inform the - * software about the failure (Clock Security System Interrupt, CSSI), - * allowing the MCU to perform rescue operations. The CSSI is linked to - * the Cortex-M3 NMI (Non-Maskable Interrupt) exception vector. - * @retval None - */ -void HAL_RCC_EnableCSS(void) -{ - *(__IO uint32_t *) RCC_CR_CSSON_BB = (uint32_t)ENABLE; -} - -/** - * @brief Disables the Clock Security System. - * @retval None - */ -void HAL_RCC_DisableCSS(void) -{ - *(__IO uint32_t *) RCC_CR_CSSON_BB = (uint32_t)DISABLE; -} - -/** - * @brief Returns the SYSCLK frequency - * @note The system frequency computed by this function is not the real - * frequency in the chip. It is calculated based on the predefined - * constant and the selected clock source: - * @note If SYSCLK source is HSI, function returns values based on HSI_VALUE(*) - * @note If SYSCLK source is HSE, function returns a value based on HSE_VALUE - * divided by PREDIV factor(**) - * @note If SYSCLK source is PLL, function returns a value based on HSE_VALUE - * divided by PREDIV factor(**) or HSI_VALUE(*) multiplied by the PLL factor. - * @note (*) HSI_VALUE is a constant defined in stm32f1xx_hal_conf.h file (default value - * 8 MHz) but the real value may vary depending on the variations - * in voltage and temperature. - * @note (**) HSE_VALUE is a constant defined in stm32f1xx_hal_conf.h file (default value - * 8 MHz), user has to ensure that HSE_VALUE is same as the real - * frequency of the crystal used. Otherwise, this function may - * have wrong result. - * - * @note The result of this function could be not correct when using fractional - * value for HSE crystal. - * - * @note This function can be used by the user application to compute the - * baud-rate for the communication peripherals or configure other parameters. - * - * @note Each time SYSCLK changes, this function must be called to update the - * right SYSCLK value. Otherwise, any configuration based on this function will be incorrect. - * - * @retval SYSCLK frequency - */ -uint32_t HAL_RCC_GetSysClockFreq(void) -{ -#if defined(RCC_CFGR2_PREDIV1SRC) - const uint8_t aPLLMULFactorTable[14] = {0, 0, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 0, 13}; - const uint8_t aPredivFactorTable[16] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; -#else - const uint8_t aPLLMULFactorTable[16] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 16}; -#if defined(RCC_CFGR2_PREDIV1) - const uint8_t aPredivFactorTable[16] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; -#else - const uint8_t aPredivFactorTable[2] = {1, 2}; -#endif /*RCC_CFGR2_PREDIV1*/ - -#endif - uint32_t tmpreg = 0U, prediv = 0U, pllclk = 0U, pllmul = 0U; - uint32_t sysclockfreq = 0U; -#if defined(RCC_CFGR2_PREDIV1SRC) - uint32_t prediv2 = 0U, pll2mul = 0U; -#endif /*RCC_CFGR2_PREDIV1SRC*/ - - tmpreg = RCC->CFGR; - - /* Get SYSCLK source -------------------------------------------------------*/ - switch (tmpreg & RCC_CFGR_SWS) - { - case RCC_SYSCLKSOURCE_STATUS_HSE: /* HSE used as system clock */ - { - sysclockfreq = HSE_VALUE; - break; - } - case RCC_SYSCLKSOURCE_STATUS_PLLCLK: /* PLL used as system clock */ - { - pllmul = aPLLMULFactorTable[(uint32_t)(tmpreg & RCC_CFGR_PLLMULL) >> RCC_CFGR_PLLMULL_Pos]; - if ((tmpreg & RCC_CFGR_PLLSRC) != RCC_PLLSOURCE_HSI_DIV2) - { -#if defined(RCC_CFGR2_PREDIV1) - prediv = aPredivFactorTable[(uint32_t)(RCC->CFGR2 & RCC_CFGR2_PREDIV1) >> RCC_CFGR2_PREDIV1_Pos]; -#else - prediv = aPredivFactorTable[(uint32_t)(RCC->CFGR & RCC_CFGR_PLLXTPRE) >> RCC_CFGR_PLLXTPRE_Pos]; -#endif /*RCC_CFGR2_PREDIV1*/ -#if defined(RCC_CFGR2_PREDIV1SRC) - - if (HAL_IS_BIT_SET(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC)) - { - /* PLL2 selected as Prediv1 source */ - /* PLLCLK = PLL2CLK / PREDIV1 * PLLMUL with PLL2CLK = HSE/PREDIV2 * PLL2MUL */ - prediv2 = ((RCC->CFGR2 & RCC_CFGR2_PREDIV2) >> RCC_CFGR2_PREDIV2_Pos) + 1; - pll2mul = ((RCC->CFGR2 & RCC_CFGR2_PLL2MUL) >> RCC_CFGR2_PLL2MUL_Pos) + 2; - pllclk = (uint32_t)(((uint64_t)HSE_VALUE * (uint64_t)pll2mul * (uint64_t)pllmul) / ((uint64_t)prediv2 * (uint64_t)prediv)); - } - else - { - /* HSE used as PLL clock source : PLLCLK = HSE/PREDIV1 * PLLMUL */ - pllclk = (uint32_t)((HSE_VALUE * pllmul) / prediv); - } - - /* If PLLMUL was set to 13 means that it was to cover the case PLLMUL 6.5 (avoid using float) */ - /* In this case need to divide pllclk by 2 */ - if (pllmul == aPLLMULFactorTable[(uint32_t)(RCC_CFGR_PLLMULL6_5) >> RCC_CFGR_PLLMULL_Pos]) - { - pllclk = pllclk / 2; - } -#else - /* HSE used as PLL clock source : PLLCLK = HSE/PREDIV1 * PLLMUL */ - pllclk = (uint32_t)((HSE_VALUE * pllmul) / prediv); -#endif /*RCC_CFGR2_PREDIV1SRC*/ - } - else - { - /* HSI used as PLL clock source : PLLCLK = HSI/2 * PLLMUL */ - pllclk = (uint32_t)((HSI_VALUE >> 1) * pllmul); - } - sysclockfreq = pllclk; - break; - } - case RCC_SYSCLKSOURCE_STATUS_HSI: /* HSI used as system clock source */ - default: /* HSI used as system clock */ - { - sysclockfreq = HSI_VALUE; - break; - } - } - return sysclockfreq; -} - -/** - * @brief Returns the HCLK frequency - * @note Each time HCLK changes, this function must be called to update the - * right HCLK value. Otherwise, any configuration based on this function will be incorrect. - * - * @note The SystemCoreClock CMSIS variable is used to store System Clock Frequency - * and updated within this function - * @retval HCLK frequency - */ -uint32_t HAL_RCC_GetHCLKFreq(void) -{ - return SystemCoreClock; -} - -/** - * @brief Returns the PCLK1 frequency - * @note Each time PCLK1 changes, this function must be called to update the - * right PCLK1 value. Otherwise, any configuration based on this function will be incorrect. - * @retval PCLK1 frequency - */ -uint32_t HAL_RCC_GetPCLK1Freq(void) -{ - /* Get HCLK source and Compute PCLK1 frequency ---------------------------*/ - return (HAL_RCC_GetHCLKFreq() >> APBPrescTable[(RCC->CFGR & RCC_CFGR_PPRE1) >> RCC_CFGR_PPRE1_Pos]); -} - -/** - * @brief Returns the PCLK2 frequency - * @note Each time PCLK2 changes, this function must be called to update the - * right PCLK2 value. Otherwise, any configuration based on this function will be incorrect. - * @retval PCLK2 frequency - */ -uint32_t HAL_RCC_GetPCLK2Freq(void) -{ - /* Get HCLK source and Compute PCLK2 frequency ---------------------------*/ - return (HAL_RCC_GetHCLKFreq() >> APBPrescTable[(RCC->CFGR & RCC_CFGR_PPRE2) >> RCC_CFGR_PPRE2_Pos]); -} - -/** - * @brief Configures the RCC_OscInitStruct according to the internal - * RCC configuration registers. - * @param RCC_OscInitStruct pointer to an RCC_OscInitTypeDef structure that - * will be configured. - * @retval None - */ -void HAL_RCC_GetOscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct) -{ - /* Check the parameters */ - assert_param(RCC_OscInitStruct != NULL); - - /* Set all possible values for the Oscillator type parameter ---------------*/ - RCC_OscInitStruct->OscillatorType = RCC_OSCILLATORTYPE_HSE | RCC_OSCILLATORTYPE_HSI \ - | RCC_OSCILLATORTYPE_LSE | RCC_OSCILLATORTYPE_LSI; - -#if defined(RCC_CFGR2_PREDIV1SRC) - /* Get the Prediv1 source --------------------------------------------------*/ - RCC_OscInitStruct->Prediv1Source = READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC); -#endif /* RCC_CFGR2_PREDIV1SRC */ - - /* Get the HSE configuration -----------------------------------------------*/ - if ((RCC->CR & RCC_CR_HSEBYP) == RCC_CR_HSEBYP) - { - RCC_OscInitStruct->HSEState = RCC_HSE_BYPASS; - } - else if ((RCC->CR & RCC_CR_HSEON) == RCC_CR_HSEON) - { - RCC_OscInitStruct->HSEState = RCC_HSE_ON; - } - else - { - RCC_OscInitStruct->HSEState = RCC_HSE_OFF; - } - RCC_OscInitStruct->HSEPredivValue = __HAL_RCC_HSE_GET_PREDIV(); - - /* Get the HSI configuration -----------------------------------------------*/ - if ((RCC->CR & RCC_CR_HSION) == RCC_CR_HSION) - { - RCC_OscInitStruct->HSIState = RCC_HSI_ON; - } - else - { - RCC_OscInitStruct->HSIState = RCC_HSI_OFF; - } - - RCC_OscInitStruct->HSICalibrationValue = (uint32_t)((RCC->CR & RCC_CR_HSITRIM) >> RCC_CR_HSITRIM_Pos); - - /* Get the LSE configuration -----------------------------------------------*/ - if ((RCC->BDCR & RCC_BDCR_LSEBYP) == RCC_BDCR_LSEBYP) - { - RCC_OscInitStruct->LSEState = RCC_LSE_BYPASS; - } - else if ((RCC->BDCR & RCC_BDCR_LSEON) == RCC_BDCR_LSEON) - { - RCC_OscInitStruct->LSEState = RCC_LSE_ON; - } - else - { - RCC_OscInitStruct->LSEState = RCC_LSE_OFF; - } - - /* Get the LSI configuration -----------------------------------------------*/ - if ((RCC->CSR & RCC_CSR_LSION) == RCC_CSR_LSION) - { - RCC_OscInitStruct->LSIState = RCC_LSI_ON; - } - else - { - RCC_OscInitStruct->LSIState = RCC_LSI_OFF; - } - - - /* Get the PLL configuration -----------------------------------------------*/ - if ((RCC->CR & RCC_CR_PLLON) == RCC_CR_PLLON) - { - RCC_OscInitStruct->PLL.PLLState = RCC_PLL_ON; - } - else - { - RCC_OscInitStruct->PLL.PLLState = RCC_PLL_OFF; - } - RCC_OscInitStruct->PLL.PLLSource = (uint32_t)(RCC->CFGR & RCC_CFGR_PLLSRC); - RCC_OscInitStruct->PLL.PLLMUL = (uint32_t)(RCC->CFGR & RCC_CFGR_PLLMULL); -#if defined(RCC_CR_PLL2ON) - /* Get the PLL2 configuration -----------------------------------------------*/ - if ((RCC->CR & RCC_CR_PLL2ON) == RCC_CR_PLL2ON) - { - RCC_OscInitStruct->PLL2.PLL2State = RCC_PLL2_ON; - } - else - { - RCC_OscInitStruct->PLL2.PLL2State = RCC_PLL2_OFF; - } - RCC_OscInitStruct->PLL2.HSEPrediv2Value = __HAL_RCC_HSE_GET_PREDIV2(); - RCC_OscInitStruct->PLL2.PLL2MUL = (uint32_t)(RCC->CFGR2 & RCC_CFGR2_PLL2MUL); -#endif /* RCC_CR_PLL2ON */ -} - -/** - * @brief Get the RCC_ClkInitStruct according to the internal - * RCC configuration registers. - * @param RCC_ClkInitStruct pointer to an RCC_ClkInitTypeDef structure that - * contains the current clock configuration. - * @param pFLatency Pointer on the Flash Latency. - * @retval None - */ -void HAL_RCC_GetClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t *pFLatency) -{ - /* Check the parameters */ - assert_param(RCC_ClkInitStruct != NULL); - assert_param(pFLatency != NULL); - - /* Set all possible values for the Clock type parameter --------------------*/ - RCC_ClkInitStruct->ClockType = RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2; - - /* Get the SYSCLK configuration --------------------------------------------*/ - RCC_ClkInitStruct->SYSCLKSource = (uint32_t)(RCC->CFGR & RCC_CFGR_SW); - - /* Get the HCLK configuration ----------------------------------------------*/ - RCC_ClkInitStruct->AHBCLKDivider = (uint32_t)(RCC->CFGR & RCC_CFGR_HPRE); - - /* Get the APB1 configuration ----------------------------------------------*/ - RCC_ClkInitStruct->APB1CLKDivider = (uint32_t)(RCC->CFGR & RCC_CFGR_PPRE1); - - /* Get the APB2 configuration ----------------------------------------------*/ - RCC_ClkInitStruct->APB2CLKDivider = (uint32_t)((RCC->CFGR & RCC_CFGR_PPRE2) >> 3); - -#if defined(FLASH_ACR_LATENCY) - /* Get the Flash Wait State (Latency) configuration ------------------------*/ - *pFLatency = (uint32_t)(FLASH->ACR & FLASH_ACR_LATENCY); -#else - /* For VALUE lines devices, only LATENCY_0 can be set*/ - *pFLatency = (uint32_t)FLASH_LATENCY_0; -#endif -} - -/** - * @brief This function handles the RCC CSS interrupt request. - * @note This API should be called under the NMI_Handler(). - * @retval None - */ -void HAL_RCC_NMI_IRQHandler(void) -{ - /* Check RCC CSSF flag */ - if (__HAL_RCC_GET_IT(RCC_IT_CSS)) - { - /* RCC Clock Security System interrupt user callback */ - HAL_RCC_CSSCallback(); - - /* Clear RCC CSS pending bit */ - __HAL_RCC_CLEAR_IT(RCC_IT_CSS); - } -} - -/** - * @brief This function provides delay (in milliseconds) based on CPU cycles method. - * @param mdelay: specifies the delay time length, in milliseconds. - * @retval None - */ -static void RCC_Delay(uint32_t mdelay) -{ - __IO uint32_t Delay = mdelay * (SystemCoreClock / 8U / 1000U); - do - { - __NOP(); - } - while (Delay --); -} - -/** - * @brief RCC Clock Security System interrupt callback - * @retval none - */ -__weak void HAL_RCC_CSSCallback(void) -{ - /* NOTE : This function Should not be modified, when the callback is needed, - the HAL_RCC_CSSCallback could be implemented in the user file - */ -} - -/** - * @} - */ - -/** - * @} - */ - -#endif /* HAL_RCC_MODULE_ENABLED */ -/** - * @} - */ - -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_rcc.c + * @author MCD Application Team + * @brief RCC HAL module driver. + * This file provides firmware functions to manage the following + * functionalities of the Reset and Clock Control (RCC) peripheral: + * + Initialization and de-initialization functions + * + Peripheral Control functions + * + @verbatim + ============================================================================== + ##### RCC specific features ##### + ============================================================================== + [..] + After reset the device is running from Internal High Speed oscillator + (HSI 8MHz) with Flash 0 wait state, Flash prefetch buffer is enabled, + and all peripherals are off except internal SRAM, Flash and JTAG. + (+) There is no prescaler on High speed (AHB) and Low speed (APB) buses; + all peripherals mapped on these buses are running at HSI speed. + (+) The clock for all peripherals is switched off, except the SRAM and FLASH. + (+) All GPIOs are in input floating state, except the JTAG pins which + are assigned to be used for debug purpose. + [..] Once the device started from reset, the user application has to: + (+) Configure the clock source to be used to drive the System clock + (if the application needs higher frequency/performance) + (+) Configure the System clock frequency and Flash settings + (+) Configure the AHB and APB buses prescalers + (+) Enable the clock for the peripheral(s) to be used + (+) Configure the clock source(s) for peripherals whose clocks are not + derived from the System clock (I2S, RTC, ADC, USB OTG FS) + + ##### RCC Limitations ##### + ============================================================================== + [..] + A delay between an RCC peripheral clock enable and the effective peripheral + enabling should be taken into account in order to manage the peripheral read/write + from/to registers. + (+) This delay depends on the peripheral mapping. + (++) AHB & APB peripherals, 1 dummy read is necessary + + [..] + Workarounds: + (#) For AHB & APB peripherals, a dummy read to the peripheral register has been + inserted in each __HAL_RCC_PPP_CLK_ENABLE() macro. + + @endverbatim + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup RCC RCC +* @brief RCC HAL module driver + * @{ + */ + +#ifdef HAL_RCC_MODULE_ENABLED + +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ +/** @defgroup RCC_Private_Constants RCC Private Constants + * @{ + */ +/** + * @} + */ +/* Private macro -------------------------------------------------------------*/ +/** @defgroup RCC_Private_Macros RCC Private Macros + * @{ + */ + +#define MCO1_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE() +#define MCO1_GPIO_PORT GPIOA +#define MCO1_PIN GPIO_PIN_8 + +/** + * @} + */ + +/* Private variables ---------------------------------------------------------*/ +/** @defgroup RCC_Private_Variables RCC Private Variables + * @{ + */ +/** + * @} + */ + +/* Private function prototypes -----------------------------------------------*/ +static void RCC_Delay(uint32_t mdelay); + +/* Exported functions --------------------------------------------------------*/ + +/** @defgroup RCC_Exported_Functions RCC Exported Functions + * @{ + */ + +/** @defgroup RCC_Exported_Functions_Group1 Initialization and de-initialization functions + * @brief Initialization and Configuration functions + * + @verbatim + =============================================================================== + ##### Initialization and de-initialization functions ##### + =============================================================================== + [..] + This section provides functions allowing to configure the internal/external oscillators + (HSE, HSI, LSE, LSI, PLL, CSS and MCO) and the System buses clocks (SYSCLK, AHB, APB1 + and APB2). + + [..] Internal/external clock and PLL configuration + (#) HSI (high-speed internal), 8 MHz factory-trimmed RC used directly or through + the PLL as System clock source. + (#) LSI (low-speed internal), ~40 KHz low consumption RC used as IWDG and/or RTC + clock source. + + (#) HSE (high-speed external), 4 to 24 MHz (STM32F100xx) or 4 to 16 MHz (STM32F101x/STM32F102x/STM32F103x) or 3 to 25 MHz (STM32F105x/STM32F107x) crystal oscillator used directly or + through the PLL as System clock source. Can be used also as RTC clock source. + + (#) LSE (low-speed external), 32 KHz oscillator used as RTC clock source. + + (#) PLL (clocked by HSI or HSE), featuring different output clocks: + (++) The first output is used to generate the high speed system clock (up to 72 MHz for STM32F10xxx or up to 24 MHz for STM32F100xx) + (++) The second output is used to generate the clock for the USB OTG FS (48 MHz) + + (#) CSS (Clock security system), once enable using the macro __HAL_RCC_CSS_ENABLE() + and if a HSE clock failure occurs(HSE used directly or through PLL as System + clock source), the System clocks automatically switched to HSI and an interrupt + is generated if enabled. The interrupt is linked to the Cortex-M3 NMI + (Non-Maskable Interrupt) exception vector. + + (#) MCO1 (microcontroller clock output), used to output SYSCLK, HSI, + HSE or PLL clock (divided by 2) on PA8 pin + PLL2CLK, PLL3CLK/2, PLL3CLK and XTI for STM32F105x/STM32F107x + + [..] System, AHB and APB buses clocks configuration + (#) Several clock sources can be used to drive the System clock (SYSCLK): HSI, + HSE and PLL. + The AHB clock (HCLK) is derived from System clock through configurable + prescaler and used to clock the CPU, memory and peripherals mapped + on AHB bus (DMA, GPIO...). APB1 (PCLK1) and APB2 (PCLK2) clocks are derived + from AHB clock through configurable prescalers and used to clock + the peripherals mapped on these buses. You can use + "@ref HAL_RCC_GetSysClockFreq()" function to retrieve the frequencies of these clocks. + + -@- All the peripheral clocks are derived from the System clock (SYSCLK) except: + (+@) RTC: RTC clock can be derived either from the LSI, LSE or HSE clock + divided by 128. + (+@) USB OTG FS and RTC: USB OTG FS require a frequency equal to 48 MHz + to work correctly. This clock is derived of the main PLL through PLL Multiplier. + (+@) I2S interface on STM32F105x/STM32F107x can be derived from PLL3CLK + (+@) IWDG clock which is always the LSI clock. + + (#) For STM32F10xxx, the maximum frequency of the SYSCLK and HCLK/PCLK2 is 72 MHz, PCLK1 36 MHz. + For STM32F100xx, the maximum frequency of the SYSCLK and HCLK/PCLK1/PCLK2 is 24 MHz. + Depending on the SYSCLK frequency, the flash latency should be adapted accordingly. + @endverbatim + * @{ + */ + +/* + Additional consideration on the SYSCLK based on Latency settings: + +-----------------------------------------------+ + | Latency | SYSCLK clock frequency (MHz) | + |---------------|-------------------------------| + |0WS(1CPU cycle)| 0 < SYSCLK <= 24 | + |---------------|-------------------------------| + |1WS(2CPU cycle)| 24 < SYSCLK <= 48 | + |---------------|-------------------------------| + |2WS(3CPU cycle)| 48 < SYSCLK <= 72 | + +-----------------------------------------------+ + */ + +/** + * @brief Resets the RCC clock configuration to the default reset state. + * @note The default reset state of the clock configuration is given below: + * - HSI ON and used as system clock source + * - HSE, PLL, PLL2 and PLL3 are OFF + * - AHB, APB1 and APB2 prescaler set to 1. + * - CSS and MCO1 OFF + * - All interrupts disabled + * - All flags are cleared + * @note This function does not modify the configuration of the + * - Peripheral clocks + * - LSI, LSE and RTC clocks + * @retval HAL_StatusTypeDef + */ +HAL_StatusTypeDef HAL_RCC_DeInit(void) +{ + uint32_t tickstart; + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Set HSION bit */ + SET_BIT(RCC->CR, RCC_CR_HSION); + + /* Wait till HSI is ready */ + while (READ_BIT(RCC->CR, RCC_CR_HSIRDY) == RESET) + { + if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + + /* Set HSITRIM bits to the reset value */ + MODIFY_REG(RCC->CR, RCC_CR_HSITRIM, (0x10U << RCC_CR_HSITRIM_Pos)); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Reset CFGR register */ + CLEAR_REG(RCC->CFGR); + + /* Wait till clock switch is ready */ + while (READ_BIT(RCC->CFGR, RCC_CFGR_SWS) != RESET) + { + if ((HAL_GetTick() - tickstart) > CLOCKSWITCH_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + + /* Update the SystemCoreClock global variable */ + SystemCoreClock = HSI_VALUE; + + /* Adapt Systick interrupt period */ + if (HAL_InitTick(uwTickPrio) != HAL_OK) + { + return HAL_ERROR; + } + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Second step is to clear PLLON bit */ + CLEAR_BIT(RCC->CR, RCC_CR_PLLON); + + /* Wait till PLL is disabled */ + while (READ_BIT(RCC->CR, RCC_CR_PLLRDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + + /* Ensure to reset PLLSRC and PLLMUL bits */ + CLEAR_REG(RCC->CFGR); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Reset HSEON & CSSON bits */ + CLEAR_BIT(RCC->CR, RCC_CR_HSEON | RCC_CR_CSSON); + + /* Wait till HSE is disabled */ + while (READ_BIT(RCC->CR, RCC_CR_HSERDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + + /* Reset HSEBYP bit */ + CLEAR_BIT(RCC->CR, RCC_CR_HSEBYP); + +#if defined(RCC_PLL2_SUPPORT) + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Clear PLL2ON bit */ + CLEAR_BIT(RCC->CR, RCC_CR_PLL2ON); + + /* Wait till PLL2 is disabled */ + while (READ_BIT(RCC->CR, RCC_CR_PLL2RDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } +#endif /* RCC_PLL2_SUPPORT */ + +#if defined(RCC_PLLI2S_SUPPORT) + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Clear PLL3ON bit */ + CLEAR_BIT(RCC->CR, RCC_CR_PLL3ON); + + /* Wait till PLL3 is disabled */ + while (READ_BIT(RCC->CR, RCC_CR_PLL3RDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > PLLI2S_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } +#endif /* RCC_PLLI2S_SUPPORT */ + +#if defined(RCC_CFGR2_PREDIV1) + /* Reset CFGR2 register */ + CLEAR_REG(RCC->CFGR2); +#endif /* RCC_CFGR2_PREDIV1 */ + + /* Reset all CSR flags */ + SET_BIT(RCC->CSR, RCC_CSR_RMVF); + + /* Disable all interrupts */ + CLEAR_REG(RCC->CIR); + + return HAL_OK; +} + +/** + * @brief Initializes the RCC Oscillators according to the specified parameters in the + * RCC_OscInitTypeDef. + * @param RCC_OscInitStruct pointer to an RCC_OscInitTypeDef structure that + * contains the configuration information for the RCC Oscillators. + * @note The PLL is not disabled when used as system clock. + * @note The PLL is not disabled when USB OTG FS clock is enabled (specific to devices with USB FS) + * @note Transitions LSE Bypass to LSE On and LSE On to LSE Bypass are not + * supported by this macro. User should request a transition to LSE Off + * first and then LSE On or LSE Bypass. + * @note Transition HSE Bypass to HSE On and HSE On to HSE Bypass are not + * supported by this macro. User should request a transition to HSE Off + * first and then HSE On or HSE Bypass. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_RCC_OscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct) +{ + uint32_t tickstart; + uint32_t pll_config; + + /* Check Null pointer */ + if (RCC_OscInitStruct == NULL) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_RCC_OSCILLATORTYPE(RCC_OscInitStruct->OscillatorType)); + + /*------------------------------- HSE Configuration ------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSE) == RCC_OSCILLATORTYPE_HSE) + { + /* Check the parameters */ + assert_param(IS_RCC_HSE(RCC_OscInitStruct->HSEState)); + + /* When the HSE is used as system clock or clock source for PLL in these cases it is not allowed to be disabled */ + if ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_HSE) + || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSE))) + { + if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) && (RCC_OscInitStruct->HSEState == RCC_HSE_OFF)) + { + return HAL_ERROR; + } + } + else + { + /* Set the new HSE configuration ---------------------------------------*/ + __HAL_RCC_HSE_CONFIG(RCC_OscInitStruct->HSEState); + + + /* Check the HSE State */ + if (RCC_OscInitStruct->HSEState != RCC_HSE_OFF) + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till HSE is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET) + { + if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + else + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till HSE is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > HSE_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + } + } + /*----------------------------- HSI Configuration --------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_HSI) == RCC_OSCILLATORTYPE_HSI) + { + /* Check the parameters */ + assert_param(IS_RCC_HSI(RCC_OscInitStruct->HSIState)); + assert_param(IS_RCC_CALIBRATION_VALUE(RCC_OscInitStruct->HSICalibrationValue)); + + /* Check if HSI is used as system clock or as PLL source when PLL is selected as system clock */ + if ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_HSI) + || ((__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && (__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSI_DIV2))) + { + /* When HSI is used as system clock it will not disabled */ + if ((__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) && (RCC_OscInitStruct->HSIState != RCC_HSI_ON)) + { + return HAL_ERROR; + } + /* Otherwise, just the calibration is allowed */ + else + { + /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/ + __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->HSICalibrationValue); + } + } + else + { + /* Check the HSI State */ + if (RCC_OscInitStruct->HSIState != RCC_HSI_OFF) + { + /* Enable the Internal High Speed oscillator (HSI). */ + __HAL_RCC_HSI_ENABLE(); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till HSI is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET) + { + if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + + /* Adjusts the Internal High Speed oscillator (HSI) calibration value.*/ + __HAL_RCC_HSI_CALIBRATIONVALUE_ADJUST(RCC_OscInitStruct->HSICalibrationValue); + } + else + { + /* Disable the Internal High Speed oscillator (HSI). */ + __HAL_RCC_HSI_DISABLE(); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till HSI is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > HSI_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + } + } + /*------------------------------ LSI Configuration -------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSI) == RCC_OSCILLATORTYPE_LSI) + { + /* Check the parameters */ + assert_param(IS_RCC_LSI(RCC_OscInitStruct->LSIState)); + + /* Check the LSI State */ + if (RCC_OscInitStruct->LSIState != RCC_LSI_OFF) + { + /* Enable the Internal Low Speed oscillator (LSI). */ + __HAL_RCC_LSI_ENABLE(); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till LSI is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) == RESET) + { + if ((HAL_GetTick() - tickstart) > LSI_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + /* To have a fully stabilized clock in the specified range, a software delay of 1ms + should be added.*/ + RCC_Delay(1); + } + else + { + /* Disable the Internal Low Speed oscillator (LSI). */ + __HAL_RCC_LSI_DISABLE(); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till LSI is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSIRDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > LSI_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + } + /*------------------------------ LSE Configuration -------------------------*/ + if (((RCC_OscInitStruct->OscillatorType) & RCC_OSCILLATORTYPE_LSE) == RCC_OSCILLATORTYPE_LSE) + { + FlagStatus pwrclkchanged = RESET; + + /* Check the parameters */ + assert_param(IS_RCC_LSE(RCC_OscInitStruct->LSEState)); + + /* Update LSE configuration in Backup Domain control register */ + /* Requires to enable write access to Backup Domain of necessary */ + if (__HAL_RCC_PWR_IS_CLK_DISABLED()) + { + __HAL_RCC_PWR_CLK_ENABLE(); + pwrclkchanged = SET; + } + + if (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) + { + /* Enable write access to Backup domain */ + SET_BIT(PWR->CR, PWR_CR_DBP); + + /* Wait for Backup domain Write protection disable */ + tickstart = HAL_GetTick(); + + while (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) + { + if ((HAL_GetTick() - tickstart) > RCC_DBP_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + + /* Set the new LSE configuration -----------------------------------------*/ + __HAL_RCC_LSE_CONFIG(RCC_OscInitStruct->LSEState); + /* Check the LSE State */ + if (RCC_OscInitStruct->LSEState != RCC_LSE_OFF) + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till LSE is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) == RESET) + { + if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + else + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till LSE is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + + /* Require to disable power clock if necessary */ + if (pwrclkchanged == SET) + { + __HAL_RCC_PWR_CLK_DISABLE(); + } + } + +#if defined(RCC_CR_PLL2ON) + /*-------------------------------- PLL2 Configuration -----------------------*/ + /* Check the parameters */ + assert_param(IS_RCC_PLL2(RCC_OscInitStruct->PLL2.PLL2State)); + if ((RCC_OscInitStruct->PLL2.PLL2State) != RCC_PLL2_NONE) + { + /* This bit can not be cleared if the PLL2 clock is used indirectly as system + clock (i.e. it is used as PLL clock entry that is used as system clock). */ + if ((__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSE) && \ + (__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && \ + ((READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC)) == RCC_CFGR2_PREDIV1SRC_PLL2)) + { + return HAL_ERROR; + } + else + { + if ((RCC_OscInitStruct->PLL2.PLL2State) == RCC_PLL2_ON) + { + /* Check the parameters */ + assert_param(IS_RCC_PLL2_MUL(RCC_OscInitStruct->PLL2.PLL2MUL)); + assert_param(IS_RCC_HSE_PREDIV2(RCC_OscInitStruct->PLL2.HSEPrediv2Value)); + + /* Prediv2 can be written only when the PLLI2S is disabled. */ + /* Return an error only if new value is different from the programmed value */ + if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL3ON) && \ + (__HAL_RCC_HSE_GET_PREDIV2() != RCC_OscInitStruct->PLL2.HSEPrediv2Value)) + { + return HAL_ERROR; + } + + /* Disable the main PLL2. */ + __HAL_RCC_PLL2_DISABLE(); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till PLL2 is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + + /* Configure the HSE prediv2 factor --------------------------------*/ + __HAL_RCC_HSE_PREDIV2_CONFIG(RCC_OscInitStruct->PLL2.HSEPrediv2Value); + + /* Configure the main PLL2 multiplication factors. */ + __HAL_RCC_PLL2_CONFIG(RCC_OscInitStruct->PLL2.PLL2MUL); + + /* Enable the main PLL2. */ + __HAL_RCC_PLL2_ENABLE(); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till PLL2 is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) == RESET) + { + if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + else + { + /* Set PREDIV1 source to HSE */ + CLEAR_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC); + + /* Disable the main PLL2. */ + __HAL_RCC_PLL2_DISABLE(); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till PLL2 is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + } + } + +#endif /* RCC_CR_PLL2ON */ + /*-------------------------------- PLL Configuration -----------------------*/ + /* Check the parameters */ + assert_param(IS_RCC_PLL(RCC_OscInitStruct->PLL.PLLState)); + if ((RCC_OscInitStruct->PLL.PLLState) != RCC_PLL_NONE) + { + /* Check if the PLL is used as system clock or not */ + if (__HAL_RCC_GET_SYSCLK_SOURCE() != RCC_SYSCLKSOURCE_STATUS_PLLCLK) + { + if ((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_ON) + { + /* Check the parameters */ + assert_param(IS_RCC_PLLSOURCE(RCC_OscInitStruct->PLL.PLLSource)); + assert_param(IS_RCC_PLL_MUL(RCC_OscInitStruct->PLL.PLLMUL)); + + /* Disable the main PLL. */ + __HAL_RCC_PLL_DISABLE(); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till PLL is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + + /* Configure the HSE prediv factor --------------------------------*/ + /* It can be written only when the PLL is disabled. Not used in PLL source is different than HSE */ + if (RCC_OscInitStruct->PLL.PLLSource == RCC_PLLSOURCE_HSE) + { + /* Check the parameter */ + assert_param(IS_RCC_HSE_PREDIV(RCC_OscInitStruct->HSEPredivValue)); +#if defined(RCC_CFGR2_PREDIV1SRC) + assert_param(IS_RCC_PREDIV1_SOURCE(RCC_OscInitStruct->Prediv1Source)); + + /* Set PREDIV1 source */ + SET_BIT(RCC->CFGR2, RCC_OscInitStruct->Prediv1Source); +#endif /* RCC_CFGR2_PREDIV1SRC */ + + /* Set PREDIV1 Value */ + __HAL_RCC_HSE_PREDIV_CONFIG(RCC_OscInitStruct->HSEPredivValue); + } + + /* Configure the main PLL clock source and multiplication factors. */ + __HAL_RCC_PLL_CONFIG(RCC_OscInitStruct->PLL.PLLSource, + RCC_OscInitStruct->PLL.PLLMUL); + /* Enable the main PLL. */ + __HAL_RCC_PLL_ENABLE(); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till PLL is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET) + { + if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + else + { + /* Disable the main PLL. */ + __HAL_RCC_PLL_DISABLE(); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till PLL is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > PLL_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + } + else + { + /* Check if there is a request to disable the PLL used as System clock source */ + if ((RCC_OscInitStruct->PLL.PLLState) == RCC_PLL_OFF) + { + return HAL_ERROR; + } + else + { + /* Do not return HAL_ERROR if request repeats the current configuration */ + pll_config = RCC->CFGR; + if ((READ_BIT(pll_config, RCC_CFGR_PLLSRC) != RCC_OscInitStruct->PLL.PLLSource) || + (READ_BIT(pll_config, RCC_CFGR_PLLMULL) != RCC_OscInitStruct->PLL.PLLMUL)) + { + return HAL_ERROR; + } + } + } + } + + return HAL_OK; +} + +/** + * @brief Initializes the CPU, AHB and APB buses clocks according to the specified + * parameters in the RCC_ClkInitStruct. + * @param RCC_ClkInitStruct pointer to an RCC_OscInitTypeDef structure that + * contains the configuration information for the RCC peripheral. + * @param FLatency FLASH Latency + * The value of this parameter depend on device used within the same series + * @note The SystemCoreClock CMSIS variable is used to store System Clock Frequency + * and updated by @ref HAL_RCC_GetHCLKFreq() function called within this function + * + * @note The HSI is used (enabled by hardware) as system clock source after + * start-up from Reset, wake-up from STOP and STANDBY mode, or in case + * of failure of the HSE used directly or indirectly as system clock + * (if the Clock Security System CSS is enabled). + * + * @note A switch from one clock source to another occurs only if the target + * clock source is ready (clock stable after start-up delay or PLL locked). + * If a clock source which is not yet ready is selected, the switch will + * occur when the clock source will be ready. + * You can use @ref HAL_RCC_GetClockConfig() function to know which clock is + * currently used as system clock source. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency) +{ + uint32_t tickstart; + + /* Check Null pointer */ + if (RCC_ClkInitStruct == NULL) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_RCC_CLOCKTYPE(RCC_ClkInitStruct->ClockType)); + assert_param(IS_FLASH_LATENCY(FLatency)); + + /* To correctly read data from FLASH memory, the number of wait states (LATENCY) + must be correctly programmed according to the frequency of the CPU clock + (HCLK) of the device. */ + +#if defined(FLASH_ACR_LATENCY) + /* Increasing the number of wait states because of higher CPU frequency */ + if (FLatency > __HAL_FLASH_GET_LATENCY()) + { + /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */ + __HAL_FLASH_SET_LATENCY(FLatency); + + /* Check that the new number of wait states is taken into account to access the Flash + memory by reading the FLASH_ACR register */ + if (__HAL_FLASH_GET_LATENCY() != FLatency) + { + return HAL_ERROR; + } +} + +#endif /* FLASH_ACR_LATENCY */ +/*-------------------------- HCLK Configuration --------------------------*/ +if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK) + { + /* Set the highest APBx dividers in order to ensure that we do not go through + a non-spec phase whatever we decrease or increase HCLK. */ + if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1) + { + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE1, RCC_HCLK_DIV16); + } + + if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2) + { + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE2, (RCC_HCLK_DIV16 << 3)); + } + + /* Set the new HCLK clock divider */ + assert_param(IS_RCC_HCLK(RCC_ClkInitStruct->AHBCLKDivider)); + MODIFY_REG(RCC->CFGR, RCC_CFGR_HPRE, RCC_ClkInitStruct->AHBCLKDivider); + } + + /*------------------------- SYSCLK Configuration ---------------------------*/ + if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_SYSCLK) == RCC_CLOCKTYPE_SYSCLK) + { + assert_param(IS_RCC_SYSCLKSOURCE(RCC_ClkInitStruct->SYSCLKSource)); + + /* HSE is selected as System Clock Source */ + if (RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_HSE) + { + /* Check the HSE ready flag */ + if (__HAL_RCC_GET_FLAG(RCC_FLAG_HSERDY) == RESET) + { + return HAL_ERROR; + } + } + /* PLL is selected as System Clock Source */ + else if (RCC_ClkInitStruct->SYSCLKSource == RCC_SYSCLKSOURCE_PLLCLK) + { + /* Check the PLL ready flag */ + if (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY) == RESET) + { + return HAL_ERROR; + } + } + /* HSI is selected as System Clock Source */ + else + { + /* Check the HSI ready flag */ + if (__HAL_RCC_GET_FLAG(RCC_FLAG_HSIRDY) == RESET) + { + return HAL_ERROR; + } + } + __HAL_RCC_SYSCLK_CONFIG(RCC_ClkInitStruct->SYSCLKSource); + + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + while (__HAL_RCC_GET_SYSCLK_SOURCE() != (RCC_ClkInitStruct->SYSCLKSource << RCC_CFGR_SWS_Pos)) + { + if ((HAL_GetTick() - tickstart) > CLOCKSWITCH_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + +#if defined(FLASH_ACR_LATENCY) + /* Decreasing the number of wait states because of lower CPU frequency */ + if (FLatency < __HAL_FLASH_GET_LATENCY()) + { + /* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */ + __HAL_FLASH_SET_LATENCY(FLatency); + + /* Check that the new number of wait states is taken into account to access the Flash + memory by reading the FLASH_ACR register */ + if (__HAL_FLASH_GET_LATENCY() != FLatency) + { + return HAL_ERROR; + } +} +#endif /* FLASH_ACR_LATENCY */ + +/*-------------------------- PCLK1 Configuration ---------------------------*/ +if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1) + { + assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB1CLKDivider)); + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE1, RCC_ClkInitStruct->APB1CLKDivider); + } + + /*-------------------------- PCLK2 Configuration ---------------------------*/ + if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2) + { + assert_param(IS_RCC_PCLK(RCC_ClkInitStruct->APB2CLKDivider)); + MODIFY_REG(RCC->CFGR, RCC_CFGR_PPRE2, ((RCC_ClkInitStruct->APB2CLKDivider) << 3)); + } + + /* Update the SystemCoreClock global variable */ + SystemCoreClock = HAL_RCC_GetSysClockFreq() >> AHBPrescTable[(RCC->CFGR & RCC_CFGR_HPRE) >> RCC_CFGR_HPRE_Pos]; + + /* Configure the source of time base considering new system clocks settings*/ + HAL_InitTick(uwTickPrio); + + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup RCC_Exported_Functions_Group2 Peripheral Control functions + * @brief RCC clocks control functions + * + @verbatim + =============================================================================== + ##### Peripheral Control functions ##### + =============================================================================== + [..] + This subsection provides a set of functions allowing to control the RCC Clocks + frequencies. + + @endverbatim + * @{ + */ + +/** + * @brief Selects the clock source to output on MCO pin. + * @note MCO pin should be configured in alternate function mode. + * @param RCC_MCOx specifies the output direction for the clock source. + * This parameter can be one of the following values: + * @arg @ref RCC_MCO1 Clock source to output on MCO1 pin(PA8). + * @param RCC_MCOSource specifies the clock source to output. + * This parameter can be one of the following values: + * @arg @ref RCC_MCO1SOURCE_NOCLOCK No clock selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_SYSCLK System clock selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_HSI HSI selected as MCO clock + * @arg @ref RCC_MCO1SOURCE_HSE HSE selected as MCO clock + @if STM32F105xC + * @arg @ref RCC_MCO1SOURCE_PLLCLK PLL clock divided by 2 selected as MCO source + * @arg @ref RCC_MCO1SOURCE_PLL2CLK PLL2 clock selected as MCO source + * @arg @ref RCC_MCO1SOURCE_PLL3CLK_DIV2 PLL3 clock divided by 2 selected as MCO source + * @arg @ref RCC_MCO1SOURCE_EXT_HSE XT1 external 3-25 MHz oscillator clock selected as MCO source + * @arg @ref RCC_MCO1SOURCE_PLL3CLK PLL3 clock selected as MCO source + @endif + @if STM32F107xC + * @arg @ref RCC_MCO1SOURCE_PLLCLK PLL clock divided by 2 selected as MCO source + * @arg @ref RCC_MCO1SOURCE_PLL2CLK PLL2 clock selected as MCO source + * @arg @ref RCC_MCO1SOURCE_PLL3CLK_DIV2 PLL3 clock divided by 2 selected as MCO source + * @arg @ref RCC_MCO1SOURCE_EXT_HSE XT1 external 3-25 MHz oscillator clock selected as MCO source + * @arg @ref RCC_MCO1SOURCE_PLL3CLK PLL3 clock selected as MCO source + @endif + * @param RCC_MCODiv specifies the MCO DIV. + * This parameter can be one of the following values: + * @arg @ref RCC_MCODIV_1 no division applied to MCO clock + * @retval None + */ +void HAL_RCC_MCOConfig(uint32_t RCC_MCOx, uint32_t RCC_MCOSource, uint32_t RCC_MCODiv) +{ + GPIO_InitTypeDef gpio = {0U}; + + /* Check the parameters */ + assert_param(IS_RCC_MCO(RCC_MCOx)); + assert_param(IS_RCC_MCODIV(RCC_MCODiv)); + assert_param(IS_RCC_MCO1SOURCE(RCC_MCOSource)); + + /* Prevent unused argument(s) compilation warning */ + UNUSED(RCC_MCOx); + UNUSED(RCC_MCODiv); + + /* Configure the MCO1 pin in alternate function mode */ + gpio.Mode = GPIO_MODE_AF_PP; + gpio.Speed = GPIO_SPEED_FREQ_HIGH; + gpio.Pull = GPIO_NOPULL; + gpio.Pin = MCO1_PIN; + + /* MCO1 Clock Enable */ + MCO1_CLK_ENABLE(); + + HAL_GPIO_Init(MCO1_GPIO_PORT, &gpio); + + /* Configure the MCO clock source */ + __HAL_RCC_MCO1_CONFIG(RCC_MCOSource, RCC_MCODiv); +} + +/** + * @brief Enables the Clock Security System. + * @note If a failure is detected on the HSE oscillator clock, this oscillator + * is automatically disabled and an interrupt is generated to inform the + * software about the failure (Clock Security System Interrupt, CSSI), + * allowing the MCU to perform rescue operations. The CSSI is linked to + * the Cortex-M3 NMI (Non-Maskable Interrupt) exception vector. + * @retval None + */ +void HAL_RCC_EnableCSS(void) +{ + *(__IO uint32_t *) RCC_CR_CSSON_BB = (uint32_t)ENABLE; +} + +/** + * @brief Disables the Clock Security System. + * @retval None + */ +void HAL_RCC_DisableCSS(void) +{ + *(__IO uint32_t *) RCC_CR_CSSON_BB = (uint32_t)DISABLE; +} + +/** + * @brief Returns the SYSCLK frequency + * @note The system frequency computed by this function is not the real + * frequency in the chip. It is calculated based on the predefined + * constant and the selected clock source: + * @note If SYSCLK source is HSI, function returns values based on HSI_VALUE(*) + * @note If SYSCLK source is HSE, function returns a value based on HSE_VALUE + * divided by PREDIV factor(**) + * @note If SYSCLK source is PLL, function returns a value based on HSE_VALUE + * divided by PREDIV factor(**) or HSI_VALUE(*) multiplied by the PLL factor. + * @note (*) HSI_VALUE is a constant defined in stm32f1xx_hal_conf.h file (default value + * 8 MHz) but the real value may vary depending on the variations + * in voltage and temperature. + * @note (**) HSE_VALUE is a constant defined in stm32f1xx_hal_conf.h file (default value + * 8 MHz), user has to ensure that HSE_VALUE is same as the real + * frequency of the crystal used. Otherwise, this function may + * have wrong result. + * + * @note The result of this function could be not correct when using fractional + * value for HSE crystal. + * + * @note This function can be used by the user application to compute the + * baud-rate for the communication peripherals or configure other parameters. + * + * @note Each time SYSCLK changes, this function must be called to update the + * right SYSCLK value. Otherwise, any configuration based on this function will be incorrect. + * + * @retval SYSCLK frequency + */ +uint32_t HAL_RCC_GetSysClockFreq(void) +{ +#if defined(RCC_CFGR2_PREDIV1SRC) + const uint8_t aPLLMULFactorTable[14] = {0, 0, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 0, 13}; + const uint8_t aPredivFactorTable[16] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; +#else + const uint8_t aPLLMULFactorTable[16] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 16}; +#if defined(RCC_CFGR2_PREDIV1) + const uint8_t aPredivFactorTable[16] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; +#else + const uint8_t aPredivFactorTable[2] = {1, 2}; +#endif /*RCC_CFGR2_PREDIV1*/ + +#endif + uint32_t tmpreg = 0U, prediv = 0U, pllclk = 0U, pllmul = 0U; + uint32_t sysclockfreq = 0U; +#if defined(RCC_CFGR2_PREDIV1SRC) + uint32_t prediv2 = 0U, pll2mul = 0U; +#endif /*RCC_CFGR2_PREDIV1SRC*/ + + tmpreg = RCC->CFGR; + + /* Get SYSCLK source -------------------------------------------------------*/ + switch (tmpreg & RCC_CFGR_SWS) + { + case RCC_SYSCLKSOURCE_STATUS_HSE: /* HSE used as system clock */ + { + sysclockfreq = HSE_VALUE; + break; + } + case RCC_SYSCLKSOURCE_STATUS_PLLCLK: /* PLL used as system clock */ + { + pllmul = aPLLMULFactorTable[(uint32_t)(tmpreg & RCC_CFGR_PLLMULL) >> RCC_CFGR_PLLMULL_Pos]; + if ((tmpreg & RCC_CFGR_PLLSRC) != RCC_PLLSOURCE_HSI_DIV2) + { +#if defined(RCC_CFGR2_PREDIV1) + prediv = aPredivFactorTable[(uint32_t)(RCC->CFGR2 & RCC_CFGR2_PREDIV1) >> RCC_CFGR2_PREDIV1_Pos]; +#else + prediv = aPredivFactorTable[(uint32_t)(RCC->CFGR & RCC_CFGR_PLLXTPRE) >> RCC_CFGR_PLLXTPRE_Pos]; +#endif /*RCC_CFGR2_PREDIV1*/ +#if defined(RCC_CFGR2_PREDIV1SRC) + + if (HAL_IS_BIT_SET(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC)) + { + /* PLL2 selected as Prediv1 source */ + /* PLLCLK = PLL2CLK / PREDIV1 * PLLMUL with PLL2CLK = HSE/PREDIV2 * PLL2MUL */ + prediv2 = ((RCC->CFGR2 & RCC_CFGR2_PREDIV2) >> RCC_CFGR2_PREDIV2_Pos) + 1; + pll2mul = ((RCC->CFGR2 & RCC_CFGR2_PLL2MUL) >> RCC_CFGR2_PLL2MUL_Pos) + 2; + pllclk = (uint32_t)(((uint64_t)HSE_VALUE * (uint64_t)pll2mul * (uint64_t)pllmul) / ((uint64_t)prediv2 * (uint64_t)prediv)); + } + else + { + /* HSE used as PLL clock source : PLLCLK = HSE/PREDIV1 * PLLMUL */ + pllclk = (uint32_t)((HSE_VALUE * pllmul) / prediv); + } + + /* If PLLMUL was set to 13 means that it was to cover the case PLLMUL 6.5 (avoid using float) */ + /* In this case need to divide pllclk by 2 */ + if (pllmul == aPLLMULFactorTable[(uint32_t)(RCC_CFGR_PLLMULL6_5) >> RCC_CFGR_PLLMULL_Pos]) + { + pllclk = pllclk / 2; + } +#else + /* HSE used as PLL clock source : PLLCLK = HSE/PREDIV1 * PLLMUL */ + pllclk = (uint32_t)((HSE_VALUE * pllmul) / prediv); +#endif /*RCC_CFGR2_PREDIV1SRC*/ + } + else + { + /* HSI used as PLL clock source : PLLCLK = HSI/2 * PLLMUL */ + pllclk = (uint32_t)((HSI_VALUE >> 1) * pllmul); + } + sysclockfreq = pllclk; + break; + } + case RCC_SYSCLKSOURCE_STATUS_HSI: /* HSI used as system clock source */ + default: /* HSI used as system clock */ + { + sysclockfreq = HSI_VALUE; + break; + } + } + return sysclockfreq; +} + +/** + * @brief Returns the HCLK frequency + * @note Each time HCLK changes, this function must be called to update the + * right HCLK value. Otherwise, any configuration based on this function will be incorrect. + * + * @note The SystemCoreClock CMSIS variable is used to store System Clock Frequency + * and updated within this function + * @retval HCLK frequency + */ +uint32_t HAL_RCC_GetHCLKFreq(void) +{ + return SystemCoreClock; +} + +/** + * @brief Returns the PCLK1 frequency + * @note Each time PCLK1 changes, this function must be called to update the + * right PCLK1 value. Otherwise, any configuration based on this function will be incorrect. + * @retval PCLK1 frequency + */ +uint32_t HAL_RCC_GetPCLK1Freq(void) +{ + /* Get HCLK source and Compute PCLK1 frequency ---------------------------*/ + return (HAL_RCC_GetHCLKFreq() >> APBPrescTable[(RCC->CFGR & RCC_CFGR_PPRE1) >> RCC_CFGR_PPRE1_Pos]); +} + +/** + * @brief Returns the PCLK2 frequency + * @note Each time PCLK2 changes, this function must be called to update the + * right PCLK2 value. Otherwise, any configuration based on this function will be incorrect. + * @retval PCLK2 frequency + */ +uint32_t HAL_RCC_GetPCLK2Freq(void) +{ + /* Get HCLK source and Compute PCLK2 frequency ---------------------------*/ + return (HAL_RCC_GetHCLKFreq() >> APBPrescTable[(RCC->CFGR & RCC_CFGR_PPRE2) >> RCC_CFGR_PPRE2_Pos]); +} + +/** + * @brief Configures the RCC_OscInitStruct according to the internal + * RCC configuration registers. + * @param RCC_OscInitStruct pointer to an RCC_OscInitTypeDef structure that + * will be configured. + * @retval None + */ +void HAL_RCC_GetOscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct) +{ + /* Check the parameters */ + assert_param(RCC_OscInitStruct != NULL); + + /* Set all possible values for the Oscillator type parameter ---------------*/ + RCC_OscInitStruct->OscillatorType = RCC_OSCILLATORTYPE_HSE | RCC_OSCILLATORTYPE_HSI \ + | RCC_OSCILLATORTYPE_LSE | RCC_OSCILLATORTYPE_LSI; + +#if defined(RCC_CFGR2_PREDIV1SRC) + /* Get the Prediv1 source --------------------------------------------------*/ + RCC_OscInitStruct->Prediv1Source = READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC); +#endif /* RCC_CFGR2_PREDIV1SRC */ + + /* Get the HSE configuration -----------------------------------------------*/ + if ((RCC->CR & RCC_CR_HSEBYP) == RCC_CR_HSEBYP) + { + RCC_OscInitStruct->HSEState = RCC_HSE_BYPASS; + } + else if ((RCC->CR & RCC_CR_HSEON) == RCC_CR_HSEON) + { + RCC_OscInitStruct->HSEState = RCC_HSE_ON; + } + else + { + RCC_OscInitStruct->HSEState = RCC_HSE_OFF; + } + RCC_OscInitStruct->HSEPredivValue = __HAL_RCC_HSE_GET_PREDIV(); + + /* Get the HSI configuration -----------------------------------------------*/ + if ((RCC->CR & RCC_CR_HSION) == RCC_CR_HSION) + { + RCC_OscInitStruct->HSIState = RCC_HSI_ON; + } + else + { + RCC_OscInitStruct->HSIState = RCC_HSI_OFF; + } + + RCC_OscInitStruct->HSICalibrationValue = (uint32_t)((RCC->CR & RCC_CR_HSITRIM) >> RCC_CR_HSITRIM_Pos); + + /* Get the LSE configuration -----------------------------------------------*/ + if ((RCC->BDCR & RCC_BDCR_LSEBYP) == RCC_BDCR_LSEBYP) + { + RCC_OscInitStruct->LSEState = RCC_LSE_BYPASS; + } + else if ((RCC->BDCR & RCC_BDCR_LSEON) == RCC_BDCR_LSEON) + { + RCC_OscInitStruct->LSEState = RCC_LSE_ON; + } + else + { + RCC_OscInitStruct->LSEState = RCC_LSE_OFF; + } + + /* Get the LSI configuration -----------------------------------------------*/ + if ((RCC->CSR & RCC_CSR_LSION) == RCC_CSR_LSION) + { + RCC_OscInitStruct->LSIState = RCC_LSI_ON; + } + else + { + RCC_OscInitStruct->LSIState = RCC_LSI_OFF; + } + + + /* Get the PLL configuration -----------------------------------------------*/ + if ((RCC->CR & RCC_CR_PLLON) == RCC_CR_PLLON) + { + RCC_OscInitStruct->PLL.PLLState = RCC_PLL_ON; + } + else + { + RCC_OscInitStruct->PLL.PLLState = RCC_PLL_OFF; + } + RCC_OscInitStruct->PLL.PLLSource = (uint32_t)(RCC->CFGR & RCC_CFGR_PLLSRC); + RCC_OscInitStruct->PLL.PLLMUL = (uint32_t)(RCC->CFGR & RCC_CFGR_PLLMULL); +#if defined(RCC_CR_PLL2ON) + /* Get the PLL2 configuration -----------------------------------------------*/ + if ((RCC->CR & RCC_CR_PLL2ON) == RCC_CR_PLL2ON) + { + RCC_OscInitStruct->PLL2.PLL2State = RCC_PLL2_ON; + } + else + { + RCC_OscInitStruct->PLL2.PLL2State = RCC_PLL2_OFF; + } + RCC_OscInitStruct->PLL2.HSEPrediv2Value = __HAL_RCC_HSE_GET_PREDIV2(); + RCC_OscInitStruct->PLL2.PLL2MUL = (uint32_t)(RCC->CFGR2 & RCC_CFGR2_PLL2MUL); +#endif /* RCC_CR_PLL2ON */ +} + +/** + * @brief Get the RCC_ClkInitStruct according to the internal + * RCC configuration registers. + * @param RCC_ClkInitStruct pointer to an RCC_ClkInitTypeDef structure that + * contains the current clock configuration. + * @param pFLatency Pointer on the Flash Latency. + * @retval None + */ +void HAL_RCC_GetClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t *pFLatency) +{ + /* Check the parameters */ + assert_param(RCC_ClkInitStruct != NULL); + assert_param(pFLatency != NULL); + + /* Set all possible values for the Clock type parameter --------------------*/ + RCC_ClkInitStruct->ClockType = RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2; + + /* Get the SYSCLK configuration --------------------------------------------*/ + RCC_ClkInitStruct->SYSCLKSource = (uint32_t)(RCC->CFGR & RCC_CFGR_SW); + + /* Get the HCLK configuration ----------------------------------------------*/ + RCC_ClkInitStruct->AHBCLKDivider = (uint32_t)(RCC->CFGR & RCC_CFGR_HPRE); + + /* Get the APB1 configuration ----------------------------------------------*/ + RCC_ClkInitStruct->APB1CLKDivider = (uint32_t)(RCC->CFGR & RCC_CFGR_PPRE1); + + /* Get the APB2 configuration ----------------------------------------------*/ + RCC_ClkInitStruct->APB2CLKDivider = (uint32_t)((RCC->CFGR & RCC_CFGR_PPRE2) >> 3); + +#if defined(FLASH_ACR_LATENCY) + /* Get the Flash Wait State (Latency) configuration ------------------------*/ + *pFLatency = (uint32_t)(FLASH->ACR & FLASH_ACR_LATENCY); +#else + /* For VALUE lines devices, only LATENCY_0 can be set*/ + *pFLatency = (uint32_t)FLASH_LATENCY_0; +#endif +} + +/** + * @brief This function handles the RCC CSS interrupt request. + * @note This API should be called under the NMI_Handler(). + * @retval None + */ +void HAL_RCC_NMI_IRQHandler(void) +{ + /* Check RCC CSSF flag */ + if (__HAL_RCC_GET_IT(RCC_IT_CSS)) + { + /* RCC Clock Security System interrupt user callback */ + HAL_RCC_CSSCallback(); + + /* Clear RCC CSS pending bit */ + __HAL_RCC_CLEAR_IT(RCC_IT_CSS); + } +} + +/** + * @brief This function provides delay (in milliseconds) based on CPU cycles method. + * @param mdelay: specifies the delay time length, in milliseconds. + * @retval None + */ +static void RCC_Delay(uint32_t mdelay) +{ + __IO uint32_t Delay = mdelay * (SystemCoreClock / 8U / 1000U); + do + { + __NOP(); + } + while (Delay --); +} + +/** + * @brief RCC Clock Security System interrupt callback + * @retval none + */ +__weak void HAL_RCC_CSSCallback(void) +{ + /* NOTE : This function Should not be modified, when the callback is needed, + the HAL_RCC_CSSCallback could be implemented in the user file + */ +} + +/** + * @} + */ + +/** + * @} + */ + +#endif /* HAL_RCC_MODULE_ENABLED */ +/** + * @} + */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c index e6e1b4d..a5be9af 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c @@ -1,863 +1,863 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_rcc_ex.c - * @author MCD Application Team - * @brief Extended RCC HAL module driver. - * This file provides firmware functions to manage the following - * functionalities RCC extension peripheral: - * + Extended Peripheral Control functions - * - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -#ifdef HAL_RCC_MODULE_ENABLED - -/** @defgroup RCCEx RCCEx - * @brief RCC Extension HAL module driver. - * @{ - */ - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/** @defgroup RCCEx_Private_Constants RCCEx Private Constants - * @{ - */ -/** - * @} - */ - -/* Private macro -------------------------------------------------------------*/ -/** @defgroup RCCEx_Private_Macros RCCEx Private Macros - * @{ - */ -/** - * @} - */ - -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/* Private functions ---------------------------------------------------------*/ - -/** @defgroup RCCEx_Exported_Functions RCCEx Exported Functions - * @{ - */ - -/** @defgroup RCCEx_Exported_Functions_Group1 Peripheral Control functions - * @brief Extended Peripheral Control functions - * -@verbatim - =============================================================================== - ##### Extended Peripheral Control functions ##### - =============================================================================== - [..] - This subsection provides a set of functions allowing to control the RCC Clocks - frequencies. - [..] - (@) Important note: Care must be taken when HAL_RCCEx_PeriphCLKConfig() is used to - select the RTC clock source; in this case the Backup domain will be reset in - order to modify the RTC Clock source, as consequence RTC registers (including - the backup registers) are set to their reset values. - -@endverbatim - * @{ - */ - -/** - * @brief Initializes the RCC extended peripherals clocks according to the specified parameters in the - * RCC_PeriphCLKInitTypeDef. - * @param PeriphClkInit pointer to an RCC_PeriphCLKInitTypeDef structure that - * contains the configuration information for the Extended Peripherals clocks(RTC clock). - * - * @note Care must be taken when HAL_RCCEx_PeriphCLKConfig() is used to select - * the RTC clock source; in this case the Backup domain will be reset in - * order to modify the RTC Clock source, as consequence RTC registers (including - * the backup registers) are set to their reset values. - * - * @note In case of STM32F105xC or STM32F107xC devices, PLLI2S will be enabled if requested on - * one of 2 I2S interfaces. When PLLI2S is enabled, you need to call HAL_RCCEx_DisablePLLI2S to - * manually disable it. - * - * @retval HAL status - */ -HAL_StatusTypeDef HAL_RCCEx_PeriphCLKConfig(RCC_PeriphCLKInitTypeDef *PeriphClkInit) -{ - uint32_t tickstart = 0U, temp_reg = 0U; -#if defined(STM32F105xC) || defined(STM32F107xC) - uint32_t pllactive = 0U; -#endif /* STM32F105xC || STM32F107xC */ - - /* Check the parameters */ - assert_param(IS_RCC_PERIPHCLOCK(PeriphClkInit->PeriphClockSelection)); - - /*------------------------------- RTC/LCD Configuration ------------------------*/ - if ((((PeriphClkInit->PeriphClockSelection) & RCC_PERIPHCLK_RTC) == RCC_PERIPHCLK_RTC)) - { - FlagStatus pwrclkchanged = RESET; - - /* check for RTC Parameters used to output RTCCLK */ - assert_param(IS_RCC_RTCCLKSOURCE(PeriphClkInit->RTCClockSelection)); - - /* As soon as function is called to change RTC clock source, activation of the - power domain is done. */ - /* Requires to enable write access to Backup Domain of necessary */ - if (__HAL_RCC_PWR_IS_CLK_DISABLED()) - { - __HAL_RCC_PWR_CLK_ENABLE(); - pwrclkchanged = SET; - } - - if (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) - { - /* Enable write access to Backup domain */ - SET_BIT(PWR->CR, PWR_CR_DBP); - - /* Wait for Backup domain Write protection disable */ - tickstart = HAL_GetTick(); - - while (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) - { - if ((HAL_GetTick() - tickstart) > RCC_DBP_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - - /* Reset the Backup domain only if the RTC Clock source selection is modified from reset value */ - temp_reg = (RCC->BDCR & RCC_BDCR_RTCSEL); - if ((temp_reg != 0x00000000U) && (temp_reg != (PeriphClkInit->RTCClockSelection & RCC_BDCR_RTCSEL))) - { - /* Store the content of BDCR register before the reset of Backup Domain */ - temp_reg = (RCC->BDCR & ~(RCC_BDCR_RTCSEL)); - /* RTC Clock selection can be changed only if the Backup Domain is reset */ - __HAL_RCC_BACKUPRESET_FORCE(); - __HAL_RCC_BACKUPRESET_RELEASE(); - /* Restore the Content of BDCR register */ - RCC->BDCR = temp_reg; - - /* Wait for LSERDY if LSE was enabled */ - if (HAL_IS_BIT_SET(temp_reg, RCC_BDCR_LSEON)) - { - /* Get Start Tick */ - tickstart = HAL_GetTick(); - - /* Wait till LSE is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) == RESET) - { - if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - } - __HAL_RCC_RTC_CONFIG(PeriphClkInit->RTCClockSelection); - - /* Require to disable power clock if necessary */ - if (pwrclkchanged == SET) - { - __HAL_RCC_PWR_CLK_DISABLE(); - } - } - - /*------------------------------ ADC clock Configuration ------------------*/ - if (((PeriphClkInit->PeriphClockSelection) & RCC_PERIPHCLK_ADC) == RCC_PERIPHCLK_ADC) - { - /* Check the parameters */ - assert_param(IS_RCC_ADCPLLCLK_DIV(PeriphClkInit->AdcClockSelection)); - - /* Configure the ADC clock source */ - __HAL_RCC_ADC_CONFIG(PeriphClkInit->AdcClockSelection); - } - -#if defined(STM32F105xC) || defined(STM32F107xC) - /*------------------------------ I2S2 Configuration ------------------------*/ - if (((PeriphClkInit->PeriphClockSelection) & RCC_PERIPHCLK_I2S2) == RCC_PERIPHCLK_I2S2) - { - /* Check the parameters */ - assert_param(IS_RCC_I2S2CLKSOURCE(PeriphClkInit->I2s2ClockSelection)); - - /* Configure the I2S2 clock source */ - __HAL_RCC_I2S2_CONFIG(PeriphClkInit->I2s2ClockSelection); - } - - /*------------------------------ I2S3 Configuration ------------------------*/ - if (((PeriphClkInit->PeriphClockSelection) & RCC_PERIPHCLK_I2S3) == RCC_PERIPHCLK_I2S3) - { - /* Check the parameters */ - assert_param(IS_RCC_I2S3CLKSOURCE(PeriphClkInit->I2s3ClockSelection)); - - /* Configure the I2S3 clock source */ - __HAL_RCC_I2S3_CONFIG(PeriphClkInit->I2s3ClockSelection); - } - - /*------------------------------ PLL I2S Configuration ----------------------*/ - /* Check that PLLI2S need to be enabled */ - if (HAL_IS_BIT_SET(RCC->CFGR2, RCC_CFGR2_I2S2SRC) || HAL_IS_BIT_SET(RCC->CFGR2, RCC_CFGR2_I2S3SRC)) - { - /* Update flag to indicate that PLL I2S should be active */ - pllactive = 1; - } - - /* Check if PLL I2S need to be enabled */ - if (pllactive == 1) - { - /* Enable PLL I2S only if not active */ - if (HAL_IS_BIT_CLR(RCC->CR, RCC_CR_PLL3ON)) - { - /* Check the parameters */ - assert_param(IS_RCC_PLLI2S_MUL(PeriphClkInit->PLLI2S.PLLI2SMUL)); - assert_param(IS_RCC_HSE_PREDIV2(PeriphClkInit->PLLI2S.HSEPrediv2Value)); - - /* Prediv2 can be written only when the PLL2 is disabled. */ - /* Return an error only if new value is different from the programmed value */ - if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL2ON) && \ - (__HAL_RCC_HSE_GET_PREDIV2() != PeriphClkInit->PLLI2S.HSEPrediv2Value)) - { - return HAL_ERROR; - } - - /* Configure the HSE prediv2 factor --------------------------------*/ - __HAL_RCC_HSE_PREDIV2_CONFIG(PeriphClkInit->PLLI2S.HSEPrediv2Value); - - /* Configure the main PLLI2S multiplication factors. */ - __HAL_RCC_PLLI2S_CONFIG(PeriphClkInit->PLLI2S.PLLI2SMUL); - - /* Enable the main PLLI2S. */ - __HAL_RCC_PLLI2S_ENABLE(); - - /* Get Start Tick*/ - tickstart = HAL_GetTick(); - - /* Wait till PLLI2S is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLI2SRDY) == RESET) - { - if ((HAL_GetTick() - tickstart) > PLLI2S_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - else - { - /* Return an error only if user wants to change the PLLI2SMUL whereas PLLI2S is active */ - if (READ_BIT(RCC->CFGR2, RCC_CFGR2_PLL3MUL) != PeriphClkInit->PLLI2S.PLLI2SMUL) - { - return HAL_ERROR; - } - } - } -#endif /* STM32F105xC || STM32F107xC */ - -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ - || defined(STM32F105xC) || defined(STM32F107xC) - /*------------------------------ USB clock Configuration ------------------*/ - if (((PeriphClkInit->PeriphClockSelection) & RCC_PERIPHCLK_USB) == RCC_PERIPHCLK_USB) - { - /* Check the parameters */ - assert_param(IS_RCC_USBPLLCLK_DIV(PeriphClkInit->UsbClockSelection)); - - /* Configure the USB clock source */ - __HAL_RCC_USB_CONFIG(PeriphClkInit->UsbClockSelection); - } -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ - - return HAL_OK; -} - -/** - * @brief Get the PeriphClkInit according to the internal - * RCC configuration registers. - * @param PeriphClkInit pointer to an RCC_PeriphCLKInitTypeDef structure that - * returns the configuration information for the Extended Peripherals clocks(RTC, I2S, ADC clocks). - * @retval None - */ -void HAL_RCCEx_GetPeriphCLKConfig(RCC_PeriphCLKInitTypeDef *PeriphClkInit) -{ - uint32_t srcclk = 0U; - - /* Set all possible values for the extended clock type parameter------------*/ - PeriphClkInit->PeriphClockSelection = RCC_PERIPHCLK_RTC; - - /* Get the RTC configuration -----------------------------------------------*/ - srcclk = __HAL_RCC_GET_RTC_SOURCE(); - /* Source clock is LSE or LSI*/ - PeriphClkInit->RTCClockSelection = srcclk; - - /* Get the ADC clock configuration -----------------------------------------*/ - PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_ADC; - PeriphClkInit->AdcClockSelection = __HAL_RCC_GET_ADC_SOURCE(); - -#if defined(STM32F105xC) || defined(STM32F107xC) - /* Get the I2S2 clock configuration -----------------------------------------*/ - PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_I2S2; - PeriphClkInit->I2s2ClockSelection = __HAL_RCC_GET_I2S2_SOURCE(); - - /* Get the I2S3 clock configuration -----------------------------------------*/ - PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_I2S3; - PeriphClkInit->I2s3ClockSelection = __HAL_RCC_GET_I2S3_SOURCE(); - -#endif /* STM32F105xC || STM32F107xC */ - -#if defined(STM32F103xE) || defined(STM32F103xG) - /* Get the I2S2 clock configuration -----------------------------------------*/ - PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_I2S2; - PeriphClkInit->I2s2ClockSelection = RCC_I2S2CLKSOURCE_SYSCLK; - - /* Get the I2S3 clock configuration -----------------------------------------*/ - PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_I2S3; - PeriphClkInit->I2s3ClockSelection = RCC_I2S3CLKSOURCE_SYSCLK; - -#endif /* STM32F103xE || STM32F103xG */ - -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ - || defined(STM32F105xC) || defined(STM32F107xC) - /* Get the USB clock configuration -----------------------------------------*/ - PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_USB; - PeriphClkInit->UsbClockSelection = __HAL_RCC_GET_USB_SOURCE(); -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ -} - -/** - * @brief Returns the peripheral clock frequency - * @note Returns 0 if peripheral clock is unknown - * @param PeriphClk Peripheral clock identifier - * This parameter can be one of the following values: - * @arg @ref RCC_PERIPHCLK_RTC RTC peripheral clock - * @arg @ref RCC_PERIPHCLK_ADC ADC peripheral clock - @if STM32F103xE - * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - @endif - @if STM32F103xG - * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock - @endif - @if STM32F105xC - * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock - * @arg @ref RCC_PERIPHCLK_USB USB peripheral clock - @endif - @if STM32F107xC - * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock - * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock - * @arg @ref RCC_PERIPHCLK_USB USB peripheral clock - @endif - @if STM32F102xx - * @arg @ref RCC_PERIPHCLK_USB USB peripheral clock - @endif - @if STM32F103xx - * @arg @ref RCC_PERIPHCLK_USB USB peripheral clock - @endif - * @retval Frequency in Hz (0: means that no available frequency for the peripheral) - */ -uint32_t HAL_RCCEx_GetPeriphCLKFreq(uint32_t PeriphClk) -{ -#if defined(STM32F105xC) || defined(STM32F107xC) - const uint8_t aPLLMULFactorTable[14] = {0, 0, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 0, 13}; - const uint8_t aPredivFactorTable[16] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; - - uint32_t prediv1 = 0U, pllclk = 0U, pllmul = 0U; - uint32_t pll2mul = 0U, pll3mul = 0U, prediv2 = 0U; -#endif /* STM32F105xC || STM32F107xC */ -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6) || \ - defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) - const uint8_t aPLLMULFactorTable[16] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 16}; - const uint8_t aPredivFactorTable[2] = {1, 2}; - - uint32_t prediv1 = 0U, pllclk = 0U, pllmul = 0U; -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ - uint32_t temp_reg = 0U, frequency = 0U; - - /* Check the parameters */ - assert_param(IS_RCC_PERIPHCLOCK(PeriphClk)); - - switch (PeriphClk) - { -#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ - || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ - || defined(STM32F105xC) || defined(STM32F107xC) - case RCC_PERIPHCLK_USB: - { - /* Get RCC configuration ------------------------------------------------------*/ - temp_reg = RCC->CFGR; - - /* Check if PLL is enabled */ - if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLLON)) - { - pllmul = aPLLMULFactorTable[(uint32_t)(temp_reg & RCC_CFGR_PLLMULL) >> RCC_CFGR_PLLMULL_Pos]; - if ((temp_reg & RCC_CFGR_PLLSRC) != RCC_PLLSOURCE_HSI_DIV2) - { -#if defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F100xB)\ - || defined(STM32F100xE) - prediv1 = aPredivFactorTable[(uint32_t)(RCC->CFGR2 & RCC_CFGR2_PREDIV1) >> RCC_CFGR2_PREDIV1_Pos]; -#else - prediv1 = aPredivFactorTable[(uint32_t)(RCC->CFGR & RCC_CFGR_PLLXTPRE) >> RCC_CFGR_PLLXTPRE_Pos]; -#endif /* STM32F105xC || STM32F107xC || STM32F100xB || STM32F100xE */ - -#if defined(STM32F105xC) || defined(STM32F107xC) - if (HAL_IS_BIT_SET(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC)) - { - /* PLL2 selected as Prediv1 source */ - /* PLLCLK = PLL2CLK / PREDIV1 * PLLMUL with PLL2CLK = HSE/PREDIV2 * PLL2MUL */ - prediv2 = ((RCC->CFGR2 & RCC_CFGR2_PREDIV2) >> RCC_CFGR2_PREDIV2_Pos) + 1; - pll2mul = ((RCC->CFGR2 & RCC_CFGR2_PLL2MUL) >> RCC_CFGR2_PLL2MUL_Pos) + 2; - pllclk = (uint32_t)((((HSE_VALUE / prediv2) * pll2mul) / prediv1) * pllmul); - } - else - { - /* HSE used as PLL clock source : PLLCLK = HSE/PREDIV1 * PLLMUL */ - pllclk = (uint32_t)((HSE_VALUE / prediv1) * pllmul); - } - - /* If PLLMUL was set to 13 means that it was to cover the case PLLMUL 6.5 (avoid using float) */ - /* In this case need to divide pllclk by 2 */ - if (pllmul == aPLLMULFactorTable[(uint32_t)(RCC_CFGR_PLLMULL6_5) >> RCC_CFGR_PLLMULL_Pos]) - { - pllclk = pllclk / 2; - } -#else - if ((temp_reg & RCC_CFGR_PLLSRC) != RCC_PLLSOURCE_HSI_DIV2) - { - /* HSE used as PLL clock source : PLLCLK = HSE/PREDIV1 * PLLMUL */ - pllclk = (uint32_t)((HSE_VALUE / prediv1) * pllmul); - } -#endif /* STM32F105xC || STM32F107xC */ - } - else - { - /* HSI used as PLL clock source : PLLCLK = HSI/2 * PLLMUL */ - pllclk = (uint32_t)((HSI_VALUE >> 1) * pllmul); - } - - /* Calcul of the USB frequency*/ -#if defined(STM32F105xC) || defined(STM32F107xC) - /* USBCLK = PLLVCO = (2 x PLLCLK) / USB prescaler */ - if (__HAL_RCC_GET_USB_SOURCE() == RCC_USBCLKSOURCE_PLL_DIV2) - { - /* Prescaler of 2 selected for USB */ - frequency = pllclk; - } - else - { - /* Prescaler of 3 selected for USB */ - frequency = (2 * pllclk) / 3; - } -#else - /* USBCLK = PLLCLK / USB prescaler */ - if (__HAL_RCC_GET_USB_SOURCE() == RCC_USBCLKSOURCE_PLL) - { - /* No prescaler selected for USB */ - frequency = pllclk; - } - else - { - /* Prescaler of 1.5 selected for USB */ - frequency = (pllclk * 2) / 3; - } -#endif - } - break; - } -#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ -#if defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC) - case RCC_PERIPHCLK_I2S2: - { -#if defined(STM32F103xE) || defined(STM32F103xG) - /* SYSCLK used as source clock for I2S2 */ - frequency = HAL_RCC_GetSysClockFreq(); -#else - if (__HAL_RCC_GET_I2S2_SOURCE() == RCC_I2S2CLKSOURCE_SYSCLK) - { - /* SYSCLK used as source clock for I2S2 */ - frequency = HAL_RCC_GetSysClockFreq(); - } - else - { - /* Check if PLLI2S is enabled */ - if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL3ON)) - { - /* PLLI2SVCO = 2 * PLLI2SCLK = 2 * (HSE/PREDIV2 * PLL3MUL) */ - prediv2 = ((RCC->CFGR2 & RCC_CFGR2_PREDIV2) >> RCC_CFGR2_PREDIV2_Pos) + 1; - pll3mul = ((RCC->CFGR2 & RCC_CFGR2_PLL3MUL) >> RCC_CFGR2_PLL3MUL_Pos) + 2; - frequency = (uint32_t)(2 * ((HSE_VALUE / prediv2) * pll3mul)); - } - } -#endif /* STM32F103xE || STM32F103xG */ - break; - } - case RCC_PERIPHCLK_I2S3: - { -#if defined(STM32F103xE) || defined(STM32F103xG) - /* SYSCLK used as source clock for I2S3 */ - frequency = HAL_RCC_GetSysClockFreq(); -#else - if (__HAL_RCC_GET_I2S3_SOURCE() == RCC_I2S3CLKSOURCE_SYSCLK) - { - /* SYSCLK used as source clock for I2S3 */ - frequency = HAL_RCC_GetSysClockFreq(); - } - else - { - /* Check if PLLI2S is enabled */ - if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL3ON)) - { - /* PLLI2SVCO = 2 * PLLI2SCLK = 2 * (HSE/PREDIV2 * PLL3MUL) */ - prediv2 = ((RCC->CFGR2 & RCC_CFGR2_PREDIV2) >> RCC_CFGR2_PREDIV2_Pos) + 1; - pll3mul = ((RCC->CFGR2 & RCC_CFGR2_PLL3MUL) >> RCC_CFGR2_PLL3MUL_Pos) + 2; - frequency = (uint32_t)(2 * ((HSE_VALUE / prediv2) * pll3mul)); - } - } -#endif /* STM32F103xE || STM32F103xG */ - break; - } -#endif /* STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ - case RCC_PERIPHCLK_RTC: - { - /* Get RCC BDCR configuration ------------------------------------------------------*/ - temp_reg = RCC->BDCR; - - /* Check if LSE is ready if RTC clock selection is LSE */ - if (((temp_reg & RCC_BDCR_RTCSEL) == RCC_RTCCLKSOURCE_LSE) && (HAL_IS_BIT_SET(temp_reg, RCC_BDCR_LSERDY))) - { - frequency = LSE_VALUE; - } - /* Check if LSI is ready if RTC clock selection is LSI */ - else if (((temp_reg & RCC_BDCR_RTCSEL) == RCC_RTCCLKSOURCE_LSI) && (HAL_IS_BIT_SET(RCC->CSR, RCC_CSR_LSIRDY))) - { - frequency = LSI_VALUE; - } - else if (((temp_reg & RCC_BDCR_RTCSEL) == RCC_RTCCLKSOURCE_HSE_DIV128) && (HAL_IS_BIT_SET(RCC->CR, RCC_CR_HSERDY))) - { - frequency = HSE_VALUE / 128U; - } - /* Clock not enabled for RTC*/ - else - { - /* nothing to do: frequency already initialized to 0U */ - } - break; - } - case RCC_PERIPHCLK_ADC: - { - frequency = HAL_RCC_GetPCLK2Freq() / (((__HAL_RCC_GET_ADC_SOURCE() >> RCC_CFGR_ADCPRE_Pos) + 1) * 2); - break; - } - default: - { - break; - } - } - return (frequency); -} - -/** - * @} - */ - -#if defined(STM32F105xC) || defined(STM32F107xC) -/** @defgroup RCCEx_Exported_Functions_Group2 PLLI2S Management function - * @brief PLLI2S Management functions - * -@verbatim - =============================================================================== - ##### Extended PLLI2S Management functions ##### - =============================================================================== - [..] - This subsection provides a set of functions allowing to control the PLLI2S - activation or deactivation -@endverbatim - * @{ - */ - -/** - * @brief Enable PLLI2S - * @param PLLI2SInit pointer to an RCC_PLLI2SInitTypeDef structure that - * contains the configuration information for the PLLI2S - * @note The PLLI2S configuration not modified if used by I2S2 or I2S3 Interface. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_RCCEx_EnablePLLI2S(RCC_PLLI2SInitTypeDef *PLLI2SInit) -{ - uint32_t tickstart = 0U; - - /* Check that PLL I2S has not been already enabled by I2S2 or I2S3*/ - if (HAL_IS_BIT_CLR(RCC->CFGR2, RCC_CFGR2_I2S2SRC) && HAL_IS_BIT_CLR(RCC->CFGR2, RCC_CFGR2_I2S3SRC)) - { - /* Check the parameters */ - assert_param(IS_RCC_PLLI2S_MUL(PLLI2SInit->PLLI2SMUL)); - assert_param(IS_RCC_HSE_PREDIV2(PLLI2SInit->HSEPrediv2Value)); - - /* Prediv2 can be written only when the PLL2 is disabled. */ - /* Return an error only if new value is different from the programmed value */ - if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL2ON) && \ - (__HAL_RCC_HSE_GET_PREDIV2() != PLLI2SInit->HSEPrediv2Value)) - { - return HAL_ERROR; - } - - /* Disable the main PLLI2S. */ - __HAL_RCC_PLLI2S_DISABLE(); - - /* Get Start Tick*/ - tickstart = HAL_GetTick(); - - /* Wait till PLLI2S is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLI2SRDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > PLLI2S_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - - /* Configure the HSE prediv2 factor --------------------------------*/ - __HAL_RCC_HSE_PREDIV2_CONFIG(PLLI2SInit->HSEPrediv2Value); - - - /* Configure the main PLLI2S multiplication factors. */ - __HAL_RCC_PLLI2S_CONFIG(PLLI2SInit->PLLI2SMUL); - - /* Enable the main PLLI2S. */ - __HAL_RCC_PLLI2S_ENABLE(); - - /* Get Start Tick*/ - tickstart = HAL_GetTick(); - - /* Wait till PLLI2S is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLI2SRDY) == RESET) - { - if ((HAL_GetTick() - tickstart) > PLLI2S_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - else - { - /* PLLI2S cannot be modified as already used by I2S2 or I2S3 */ - return HAL_ERROR; - } - - return HAL_OK; -} - -/** - * @brief Disable PLLI2S - * @note PLLI2S is not disabled if used by I2S2 or I2S3 Interface. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_RCCEx_DisablePLLI2S(void) -{ - uint32_t tickstart = 0U; - - /* Disable PLL I2S as not requested by I2S2 or I2S3*/ - if (HAL_IS_BIT_CLR(RCC->CFGR2, RCC_CFGR2_I2S2SRC) && HAL_IS_BIT_CLR(RCC->CFGR2, RCC_CFGR2_I2S3SRC)) - { - /* Disable the main PLLI2S. */ - __HAL_RCC_PLLI2S_DISABLE(); - - /* Get Start Tick*/ - tickstart = HAL_GetTick(); - - /* Wait till PLLI2S is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLI2SRDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > PLLI2S_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - else - { - /* PLLI2S is currently used by I2S2 or I2S3. Cannot be disabled.*/ - return HAL_ERROR; - } - - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup RCCEx_Exported_Functions_Group3 PLL2 Management function - * @brief PLL2 Management functions - * -@verbatim - =============================================================================== - ##### Extended PLL2 Management functions ##### - =============================================================================== - [..] - This subsection provides a set of functions allowing to control the PLL2 - activation or deactivation -@endverbatim - * @{ - */ - -/** - * @brief Enable PLL2 - * @param PLL2Init pointer to an RCC_PLL2InitTypeDef structure that - * contains the configuration information for the PLL2 - * @note The PLL2 configuration not modified if used indirectly as system clock. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_RCCEx_EnablePLL2(RCC_PLL2InitTypeDef *PLL2Init) -{ - uint32_t tickstart = 0U; - - /* This bit can not be cleared if the PLL2 clock is used indirectly as system - clock (i.e. it is used as PLL clock entry that is used as system clock). */ - if ((__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSE) && \ - (__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && \ - ((READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC)) == RCC_CFGR2_PREDIV1SRC_PLL2)) - { - return HAL_ERROR; - } - else - { - /* Check the parameters */ - assert_param(IS_RCC_PLL2_MUL(PLL2Init->PLL2MUL)); - assert_param(IS_RCC_HSE_PREDIV2(PLL2Init->HSEPrediv2Value)); - - /* Prediv2 can be written only when the PLLI2S is disabled. */ - /* Return an error only if new value is different from the programmed value */ - if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL3ON) && \ - (__HAL_RCC_HSE_GET_PREDIV2() != PLL2Init->HSEPrediv2Value)) - { - return HAL_ERROR; - } - - /* Disable the main PLL2. */ - __HAL_RCC_PLL2_DISABLE(); - - /* Get Start Tick*/ - tickstart = HAL_GetTick(); - - /* Wait till PLL2 is disabled */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - - /* Configure the HSE prediv2 factor --------------------------------*/ - __HAL_RCC_HSE_PREDIV2_CONFIG(PLL2Init->HSEPrediv2Value); - - /* Configure the main PLL2 multiplication factors. */ - __HAL_RCC_PLL2_CONFIG(PLL2Init->PLL2MUL); - - /* Enable the main PLL2. */ - __HAL_RCC_PLL2_ENABLE(); - - /* Get Start Tick*/ - tickstart = HAL_GetTick(); - - /* Wait till PLL2 is ready */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) == RESET) - { - if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - - return HAL_OK; -} - -/** - * @brief Disable PLL2 - * @note PLL2 is not disabled if used indirectly as system clock. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_RCCEx_DisablePLL2(void) -{ - uint32_t tickstart = 0U; - - /* This bit can not be cleared if the PLL2 clock is used indirectly as system - clock (i.e. it is used as PLL clock entry that is used as system clock). */ - if ((__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSE) && \ - (__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && \ - ((READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC)) == RCC_CFGR2_PREDIV1SRC_PLL2)) - { - return HAL_ERROR; - } - else - { - /* Disable the main PLL2. */ - __HAL_RCC_PLL2_DISABLE(); - - /* Get Start Tick*/ - tickstart = HAL_GetTick(); - - /* Wait till PLL2 is disabled */ - while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) != RESET) - { - if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) - { - return HAL_TIMEOUT; - } - } - } - - return HAL_OK; -} - -/** - * @} - */ -#endif /* STM32F105xC || STM32F107xC */ - -/** - * @} - */ - -/** - * @} - */ - -#endif /* HAL_RCC_MODULE_ENABLED */ - -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ - +/** + ****************************************************************************** + * @file stm32f1xx_hal_rcc_ex.c + * @author MCD Application Team + * @brief Extended RCC HAL module driver. + * This file provides firmware functions to manage the following + * functionalities RCC extension peripheral: + * + Extended Peripheral Control functions + * + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +#ifdef HAL_RCC_MODULE_ENABLED + +/** @defgroup RCCEx RCCEx + * @brief RCC Extension HAL module driver. + * @{ + */ + +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ +/** @defgroup RCCEx_Private_Constants RCCEx Private Constants + * @{ + */ +/** + * @} + */ + +/* Private macro -------------------------------------------------------------*/ +/** @defgroup RCCEx_Private_Macros RCCEx Private Macros + * @{ + */ +/** + * @} + */ + +/* Private variables ---------------------------------------------------------*/ +/* Private function prototypes -----------------------------------------------*/ +/* Private functions ---------------------------------------------------------*/ + +/** @defgroup RCCEx_Exported_Functions RCCEx Exported Functions + * @{ + */ + +/** @defgroup RCCEx_Exported_Functions_Group1 Peripheral Control functions + * @brief Extended Peripheral Control functions + * +@verbatim + =============================================================================== + ##### Extended Peripheral Control functions ##### + =============================================================================== + [..] + This subsection provides a set of functions allowing to control the RCC Clocks + frequencies. + [..] + (@) Important note: Care must be taken when HAL_RCCEx_PeriphCLKConfig() is used to + select the RTC clock source; in this case the Backup domain will be reset in + order to modify the RTC Clock source, as consequence RTC registers (including + the backup registers) are set to their reset values. + +@endverbatim + * @{ + */ + +/** + * @brief Initializes the RCC extended peripherals clocks according to the specified parameters in the + * RCC_PeriphCLKInitTypeDef. + * @param PeriphClkInit pointer to an RCC_PeriphCLKInitTypeDef structure that + * contains the configuration information for the Extended Peripherals clocks(RTC clock). + * + * @note Care must be taken when HAL_RCCEx_PeriphCLKConfig() is used to select + * the RTC clock source; in this case the Backup domain will be reset in + * order to modify the RTC Clock source, as consequence RTC registers (including + * the backup registers) are set to their reset values. + * + * @note In case of STM32F105xC or STM32F107xC devices, PLLI2S will be enabled if requested on + * one of 2 I2S interfaces. When PLLI2S is enabled, you need to call HAL_RCCEx_DisablePLLI2S to + * manually disable it. + * + * @retval HAL status + */ +HAL_StatusTypeDef HAL_RCCEx_PeriphCLKConfig(RCC_PeriphCLKInitTypeDef *PeriphClkInit) +{ + uint32_t tickstart = 0U, temp_reg = 0U; +#if defined(STM32F105xC) || defined(STM32F107xC) + uint32_t pllactive = 0U; +#endif /* STM32F105xC || STM32F107xC */ + + /* Check the parameters */ + assert_param(IS_RCC_PERIPHCLOCK(PeriphClkInit->PeriphClockSelection)); + + /*------------------------------- RTC/LCD Configuration ------------------------*/ + if ((((PeriphClkInit->PeriphClockSelection) & RCC_PERIPHCLK_RTC) == RCC_PERIPHCLK_RTC)) + { + FlagStatus pwrclkchanged = RESET; + + /* check for RTC Parameters used to output RTCCLK */ + assert_param(IS_RCC_RTCCLKSOURCE(PeriphClkInit->RTCClockSelection)); + + /* As soon as function is called to change RTC clock source, activation of the + power domain is done. */ + /* Requires to enable write access to Backup Domain of necessary */ + if (__HAL_RCC_PWR_IS_CLK_DISABLED()) + { + __HAL_RCC_PWR_CLK_ENABLE(); + pwrclkchanged = SET; + } + + if (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) + { + /* Enable write access to Backup domain */ + SET_BIT(PWR->CR, PWR_CR_DBP); + + /* Wait for Backup domain Write protection disable */ + tickstart = HAL_GetTick(); + + while (HAL_IS_BIT_CLR(PWR->CR, PWR_CR_DBP)) + { + if ((HAL_GetTick() - tickstart) > RCC_DBP_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + + /* Reset the Backup domain only if the RTC Clock source selection is modified from reset value */ + temp_reg = (RCC->BDCR & RCC_BDCR_RTCSEL); + if ((temp_reg != 0x00000000U) && (temp_reg != (PeriphClkInit->RTCClockSelection & RCC_BDCR_RTCSEL))) + { + /* Store the content of BDCR register before the reset of Backup Domain */ + temp_reg = (RCC->BDCR & ~(RCC_BDCR_RTCSEL)); + /* RTC Clock selection can be changed only if the Backup Domain is reset */ + __HAL_RCC_BACKUPRESET_FORCE(); + __HAL_RCC_BACKUPRESET_RELEASE(); + /* Restore the Content of BDCR register */ + RCC->BDCR = temp_reg; + + /* Wait for LSERDY if LSE was enabled */ + if (HAL_IS_BIT_SET(temp_reg, RCC_BDCR_LSEON)) + { + /* Get Start Tick */ + tickstart = HAL_GetTick(); + + /* Wait till LSE is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_LSERDY) == RESET) + { + if ((HAL_GetTick() - tickstart) > RCC_LSE_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + } + __HAL_RCC_RTC_CONFIG(PeriphClkInit->RTCClockSelection); + + /* Require to disable power clock if necessary */ + if (pwrclkchanged == SET) + { + __HAL_RCC_PWR_CLK_DISABLE(); + } + } + + /*------------------------------ ADC clock Configuration ------------------*/ + if (((PeriphClkInit->PeriphClockSelection) & RCC_PERIPHCLK_ADC) == RCC_PERIPHCLK_ADC) + { + /* Check the parameters */ + assert_param(IS_RCC_ADCPLLCLK_DIV(PeriphClkInit->AdcClockSelection)); + + /* Configure the ADC clock source */ + __HAL_RCC_ADC_CONFIG(PeriphClkInit->AdcClockSelection); + } + +#if defined(STM32F105xC) || defined(STM32F107xC) + /*------------------------------ I2S2 Configuration ------------------------*/ + if (((PeriphClkInit->PeriphClockSelection) & RCC_PERIPHCLK_I2S2) == RCC_PERIPHCLK_I2S2) + { + /* Check the parameters */ + assert_param(IS_RCC_I2S2CLKSOURCE(PeriphClkInit->I2s2ClockSelection)); + + /* Configure the I2S2 clock source */ + __HAL_RCC_I2S2_CONFIG(PeriphClkInit->I2s2ClockSelection); + } + + /*------------------------------ I2S3 Configuration ------------------------*/ + if (((PeriphClkInit->PeriphClockSelection) & RCC_PERIPHCLK_I2S3) == RCC_PERIPHCLK_I2S3) + { + /* Check the parameters */ + assert_param(IS_RCC_I2S3CLKSOURCE(PeriphClkInit->I2s3ClockSelection)); + + /* Configure the I2S3 clock source */ + __HAL_RCC_I2S3_CONFIG(PeriphClkInit->I2s3ClockSelection); + } + + /*------------------------------ PLL I2S Configuration ----------------------*/ + /* Check that PLLI2S need to be enabled */ + if (HAL_IS_BIT_SET(RCC->CFGR2, RCC_CFGR2_I2S2SRC) || HAL_IS_BIT_SET(RCC->CFGR2, RCC_CFGR2_I2S3SRC)) + { + /* Update flag to indicate that PLL I2S should be active */ + pllactive = 1; + } + + /* Check if PLL I2S need to be enabled */ + if (pllactive == 1) + { + /* Enable PLL I2S only if not active */ + if (HAL_IS_BIT_CLR(RCC->CR, RCC_CR_PLL3ON)) + { + /* Check the parameters */ + assert_param(IS_RCC_PLLI2S_MUL(PeriphClkInit->PLLI2S.PLLI2SMUL)); + assert_param(IS_RCC_HSE_PREDIV2(PeriphClkInit->PLLI2S.HSEPrediv2Value)); + + /* Prediv2 can be written only when the PLL2 is disabled. */ + /* Return an error only if new value is different from the programmed value */ + if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL2ON) && \ + (__HAL_RCC_HSE_GET_PREDIV2() != PeriphClkInit->PLLI2S.HSEPrediv2Value)) + { + return HAL_ERROR; + } + + /* Configure the HSE prediv2 factor --------------------------------*/ + __HAL_RCC_HSE_PREDIV2_CONFIG(PeriphClkInit->PLLI2S.HSEPrediv2Value); + + /* Configure the main PLLI2S multiplication factors. */ + __HAL_RCC_PLLI2S_CONFIG(PeriphClkInit->PLLI2S.PLLI2SMUL); + + /* Enable the main PLLI2S. */ + __HAL_RCC_PLLI2S_ENABLE(); + + /* Get Start Tick*/ + tickstart = HAL_GetTick(); + + /* Wait till PLLI2S is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLI2SRDY) == RESET) + { + if ((HAL_GetTick() - tickstart) > PLLI2S_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + else + { + /* Return an error only if user wants to change the PLLI2SMUL whereas PLLI2S is active */ + if (READ_BIT(RCC->CFGR2, RCC_CFGR2_PLL3MUL) != PeriphClkInit->PLLI2S.PLLI2SMUL) + { + return HAL_ERROR; + } + } + } +#endif /* STM32F105xC || STM32F107xC */ + +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ + || defined(STM32F105xC) || defined(STM32F107xC) + /*------------------------------ USB clock Configuration ------------------*/ + if (((PeriphClkInit->PeriphClockSelection) & RCC_PERIPHCLK_USB) == RCC_PERIPHCLK_USB) + { + /* Check the parameters */ + assert_param(IS_RCC_USBPLLCLK_DIV(PeriphClkInit->UsbClockSelection)); + + /* Configure the USB clock source */ + __HAL_RCC_USB_CONFIG(PeriphClkInit->UsbClockSelection); + } +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ + + return HAL_OK; +} + +/** + * @brief Get the PeriphClkInit according to the internal + * RCC configuration registers. + * @param PeriphClkInit pointer to an RCC_PeriphCLKInitTypeDef structure that + * returns the configuration information for the Extended Peripherals clocks(RTC, I2S, ADC clocks). + * @retval None + */ +void HAL_RCCEx_GetPeriphCLKConfig(RCC_PeriphCLKInitTypeDef *PeriphClkInit) +{ + uint32_t srcclk = 0U; + + /* Set all possible values for the extended clock type parameter------------*/ + PeriphClkInit->PeriphClockSelection = RCC_PERIPHCLK_RTC; + + /* Get the RTC configuration -----------------------------------------------*/ + srcclk = __HAL_RCC_GET_RTC_SOURCE(); + /* Source clock is LSE or LSI*/ + PeriphClkInit->RTCClockSelection = srcclk; + + /* Get the ADC clock configuration -----------------------------------------*/ + PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_ADC; + PeriphClkInit->AdcClockSelection = __HAL_RCC_GET_ADC_SOURCE(); + +#if defined(STM32F105xC) || defined(STM32F107xC) + /* Get the I2S2 clock configuration -----------------------------------------*/ + PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_I2S2; + PeriphClkInit->I2s2ClockSelection = __HAL_RCC_GET_I2S2_SOURCE(); + + /* Get the I2S3 clock configuration -----------------------------------------*/ + PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_I2S3; + PeriphClkInit->I2s3ClockSelection = __HAL_RCC_GET_I2S3_SOURCE(); + +#endif /* STM32F105xC || STM32F107xC */ + +#if defined(STM32F103xE) || defined(STM32F103xG) + /* Get the I2S2 clock configuration -----------------------------------------*/ + PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_I2S2; + PeriphClkInit->I2s2ClockSelection = RCC_I2S2CLKSOURCE_SYSCLK; + + /* Get the I2S3 clock configuration -----------------------------------------*/ + PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_I2S3; + PeriphClkInit->I2s3ClockSelection = RCC_I2S3CLKSOURCE_SYSCLK; + +#endif /* STM32F103xE || STM32F103xG */ + +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ + || defined(STM32F105xC) || defined(STM32F107xC) + /* Get the USB clock configuration -----------------------------------------*/ + PeriphClkInit->PeriphClockSelection |= RCC_PERIPHCLK_USB; + PeriphClkInit->UsbClockSelection = __HAL_RCC_GET_USB_SOURCE(); +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ +} + +/** + * @brief Returns the peripheral clock frequency + * @note Returns 0 if peripheral clock is unknown + * @param PeriphClk Peripheral clock identifier + * This parameter can be one of the following values: + * @arg @ref RCC_PERIPHCLK_RTC RTC peripheral clock + * @arg @ref RCC_PERIPHCLK_ADC ADC peripheral clock + @if STM32F103xE + * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + @endif + @if STM32F103xG + * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock + @endif + @if STM32F105xC + * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock + * @arg @ref RCC_PERIPHCLK_USB USB peripheral clock + @endif + @if STM32F107xC + * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S3 I2S3 peripheral clock + * @arg @ref RCC_PERIPHCLK_I2S2 I2S2 peripheral clock + * @arg @ref RCC_PERIPHCLK_USB USB peripheral clock + @endif + @if STM32F102xx + * @arg @ref RCC_PERIPHCLK_USB USB peripheral clock + @endif + @if STM32F103xx + * @arg @ref RCC_PERIPHCLK_USB USB peripheral clock + @endif + * @retval Frequency in Hz (0: means that no available frequency for the peripheral) + */ +uint32_t HAL_RCCEx_GetPeriphCLKFreq(uint32_t PeriphClk) +{ +#if defined(STM32F105xC) || defined(STM32F107xC) + const uint8_t aPLLMULFactorTable[14] = {0, 0, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 0, 13}; + const uint8_t aPredivFactorTable[16] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}; + + uint32_t prediv1 = 0U, pllclk = 0U, pllmul = 0U; + uint32_t pll2mul = 0U, pll3mul = 0U, prediv2 = 0U; +#endif /* STM32F105xC || STM32F107xC */ +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6) || \ + defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG) + const uint8_t aPLLMULFactorTable[16] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 16}; + const uint8_t aPredivFactorTable[2] = {1, 2}; + + uint32_t prediv1 = 0U, pllclk = 0U, pllmul = 0U; +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG */ + uint32_t temp_reg = 0U, frequency = 0U; + + /* Check the parameters */ + assert_param(IS_RCC_PERIPHCLOCK(PeriphClk)); + + switch (PeriphClk) + { +#if defined(STM32F102x6) || defined(STM32F102xB) || defined(STM32F103x6)\ + || defined(STM32F103xB) || defined(STM32F103xE) || defined(STM32F103xG)\ + || defined(STM32F105xC) || defined(STM32F107xC) + case RCC_PERIPHCLK_USB: + { + /* Get RCC configuration ------------------------------------------------------*/ + temp_reg = RCC->CFGR; + + /* Check if PLL is enabled */ + if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLLON)) + { + pllmul = aPLLMULFactorTable[(uint32_t)(temp_reg & RCC_CFGR_PLLMULL) >> RCC_CFGR_PLLMULL_Pos]; + if ((temp_reg & RCC_CFGR_PLLSRC) != RCC_PLLSOURCE_HSI_DIV2) + { +#if defined(STM32F105xC) || defined(STM32F107xC) || defined(STM32F100xB)\ + || defined(STM32F100xE) + prediv1 = aPredivFactorTable[(uint32_t)(RCC->CFGR2 & RCC_CFGR2_PREDIV1) >> RCC_CFGR2_PREDIV1_Pos]; +#else + prediv1 = aPredivFactorTable[(uint32_t)(RCC->CFGR & RCC_CFGR_PLLXTPRE) >> RCC_CFGR_PLLXTPRE_Pos]; +#endif /* STM32F105xC || STM32F107xC || STM32F100xB || STM32F100xE */ + +#if defined(STM32F105xC) || defined(STM32F107xC) + if (HAL_IS_BIT_SET(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC)) + { + /* PLL2 selected as Prediv1 source */ + /* PLLCLK = PLL2CLK / PREDIV1 * PLLMUL with PLL2CLK = HSE/PREDIV2 * PLL2MUL */ + prediv2 = ((RCC->CFGR2 & RCC_CFGR2_PREDIV2) >> RCC_CFGR2_PREDIV2_Pos) + 1; + pll2mul = ((RCC->CFGR2 & RCC_CFGR2_PLL2MUL) >> RCC_CFGR2_PLL2MUL_Pos) + 2; + pllclk = (uint32_t)((((HSE_VALUE / prediv2) * pll2mul) / prediv1) * pllmul); + } + else + { + /* HSE used as PLL clock source : PLLCLK = HSE/PREDIV1 * PLLMUL */ + pllclk = (uint32_t)((HSE_VALUE / prediv1) * pllmul); + } + + /* If PLLMUL was set to 13 means that it was to cover the case PLLMUL 6.5 (avoid using float) */ + /* In this case need to divide pllclk by 2 */ + if (pllmul == aPLLMULFactorTable[(uint32_t)(RCC_CFGR_PLLMULL6_5) >> RCC_CFGR_PLLMULL_Pos]) + { + pllclk = pllclk / 2; + } +#else + if ((temp_reg & RCC_CFGR_PLLSRC) != RCC_PLLSOURCE_HSI_DIV2) + { + /* HSE used as PLL clock source : PLLCLK = HSE/PREDIV1 * PLLMUL */ + pllclk = (uint32_t)((HSE_VALUE / prediv1) * pllmul); + } +#endif /* STM32F105xC || STM32F107xC */ + } + else + { + /* HSI used as PLL clock source : PLLCLK = HSI/2 * PLLMUL */ + pllclk = (uint32_t)((HSI_VALUE >> 1) * pllmul); + } + + /* Calcul of the USB frequency*/ +#if defined(STM32F105xC) || defined(STM32F107xC) + /* USBCLK = PLLVCO = (2 x PLLCLK) / USB prescaler */ + if (__HAL_RCC_GET_USB_SOURCE() == RCC_USBCLKSOURCE_PLL_DIV2) + { + /* Prescaler of 2 selected for USB */ + frequency = pllclk; + } + else + { + /* Prescaler of 3 selected for USB */ + frequency = (2 * pllclk) / 3; + } +#else + /* USBCLK = PLLCLK / USB prescaler */ + if (__HAL_RCC_GET_USB_SOURCE() == RCC_USBCLKSOURCE_PLL) + { + /* No prescaler selected for USB */ + frequency = pllclk; + } + else + { + /* Prescaler of 1.5 selected for USB */ + frequency = (pllclk * 2) / 3; + } +#endif + } + break; + } +#endif /* STM32F102x6 || STM32F102xB || STM32F103x6 || STM32F103xB || STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ +#if defined(STM32F103xE) || defined(STM32F103xG) || defined(STM32F105xC) || defined(STM32F107xC) + case RCC_PERIPHCLK_I2S2: + { +#if defined(STM32F103xE) || defined(STM32F103xG) + /* SYSCLK used as source clock for I2S2 */ + frequency = HAL_RCC_GetSysClockFreq(); +#else + if (__HAL_RCC_GET_I2S2_SOURCE() == RCC_I2S2CLKSOURCE_SYSCLK) + { + /* SYSCLK used as source clock for I2S2 */ + frequency = HAL_RCC_GetSysClockFreq(); + } + else + { + /* Check if PLLI2S is enabled */ + if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL3ON)) + { + /* PLLI2SVCO = 2 * PLLI2SCLK = 2 * (HSE/PREDIV2 * PLL3MUL) */ + prediv2 = ((RCC->CFGR2 & RCC_CFGR2_PREDIV2) >> RCC_CFGR2_PREDIV2_Pos) + 1; + pll3mul = ((RCC->CFGR2 & RCC_CFGR2_PLL3MUL) >> RCC_CFGR2_PLL3MUL_Pos) + 2; + frequency = (uint32_t)(2 * ((HSE_VALUE / prediv2) * pll3mul)); + } + } +#endif /* STM32F103xE || STM32F103xG */ + break; + } + case RCC_PERIPHCLK_I2S3: + { +#if defined(STM32F103xE) || defined(STM32F103xG) + /* SYSCLK used as source clock for I2S3 */ + frequency = HAL_RCC_GetSysClockFreq(); +#else + if (__HAL_RCC_GET_I2S3_SOURCE() == RCC_I2S3CLKSOURCE_SYSCLK) + { + /* SYSCLK used as source clock for I2S3 */ + frequency = HAL_RCC_GetSysClockFreq(); + } + else + { + /* Check if PLLI2S is enabled */ + if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL3ON)) + { + /* PLLI2SVCO = 2 * PLLI2SCLK = 2 * (HSE/PREDIV2 * PLL3MUL) */ + prediv2 = ((RCC->CFGR2 & RCC_CFGR2_PREDIV2) >> RCC_CFGR2_PREDIV2_Pos) + 1; + pll3mul = ((RCC->CFGR2 & RCC_CFGR2_PLL3MUL) >> RCC_CFGR2_PLL3MUL_Pos) + 2; + frequency = (uint32_t)(2 * ((HSE_VALUE / prediv2) * pll3mul)); + } + } +#endif /* STM32F103xE || STM32F103xG */ + break; + } +#endif /* STM32F103xE || STM32F103xG || STM32F105xC || STM32F107xC */ + case RCC_PERIPHCLK_RTC: + { + /* Get RCC BDCR configuration ------------------------------------------------------*/ + temp_reg = RCC->BDCR; + + /* Check if LSE is ready if RTC clock selection is LSE */ + if (((temp_reg & RCC_BDCR_RTCSEL) == RCC_RTCCLKSOURCE_LSE) && (HAL_IS_BIT_SET(temp_reg, RCC_BDCR_LSERDY))) + { + frequency = LSE_VALUE; + } + /* Check if LSI is ready if RTC clock selection is LSI */ + else if (((temp_reg & RCC_BDCR_RTCSEL) == RCC_RTCCLKSOURCE_LSI) && (HAL_IS_BIT_SET(RCC->CSR, RCC_CSR_LSIRDY))) + { + frequency = LSI_VALUE; + } + else if (((temp_reg & RCC_BDCR_RTCSEL) == RCC_RTCCLKSOURCE_HSE_DIV128) && (HAL_IS_BIT_SET(RCC->CR, RCC_CR_HSERDY))) + { + frequency = HSE_VALUE / 128U; + } + /* Clock not enabled for RTC*/ + else + { + /* nothing to do: frequency already initialized to 0U */ + } + break; + } + case RCC_PERIPHCLK_ADC: + { + frequency = HAL_RCC_GetPCLK2Freq() / (((__HAL_RCC_GET_ADC_SOURCE() >> RCC_CFGR_ADCPRE_Pos) + 1) * 2); + break; + } + default: + { + break; + } + } + return (frequency); +} + +/** + * @} + */ + +#if defined(STM32F105xC) || defined(STM32F107xC) +/** @defgroup RCCEx_Exported_Functions_Group2 PLLI2S Management function + * @brief PLLI2S Management functions + * +@verbatim + =============================================================================== + ##### Extended PLLI2S Management functions ##### + =============================================================================== + [..] + This subsection provides a set of functions allowing to control the PLLI2S + activation or deactivation +@endverbatim + * @{ + */ + +/** + * @brief Enable PLLI2S + * @param PLLI2SInit pointer to an RCC_PLLI2SInitTypeDef structure that + * contains the configuration information for the PLLI2S + * @note The PLLI2S configuration not modified if used by I2S2 or I2S3 Interface. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_RCCEx_EnablePLLI2S(RCC_PLLI2SInitTypeDef *PLLI2SInit) +{ + uint32_t tickstart = 0U; + + /* Check that PLL I2S has not been already enabled by I2S2 or I2S3*/ + if (HAL_IS_BIT_CLR(RCC->CFGR2, RCC_CFGR2_I2S2SRC) && HAL_IS_BIT_CLR(RCC->CFGR2, RCC_CFGR2_I2S3SRC)) + { + /* Check the parameters */ + assert_param(IS_RCC_PLLI2S_MUL(PLLI2SInit->PLLI2SMUL)); + assert_param(IS_RCC_HSE_PREDIV2(PLLI2SInit->HSEPrediv2Value)); + + /* Prediv2 can be written only when the PLL2 is disabled. */ + /* Return an error only if new value is different from the programmed value */ + if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL2ON) && \ + (__HAL_RCC_HSE_GET_PREDIV2() != PLLI2SInit->HSEPrediv2Value)) + { + return HAL_ERROR; + } + + /* Disable the main PLLI2S. */ + __HAL_RCC_PLLI2S_DISABLE(); + + /* Get Start Tick*/ + tickstart = HAL_GetTick(); + + /* Wait till PLLI2S is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLI2SRDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > PLLI2S_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + + /* Configure the HSE prediv2 factor --------------------------------*/ + __HAL_RCC_HSE_PREDIV2_CONFIG(PLLI2SInit->HSEPrediv2Value); + + + /* Configure the main PLLI2S multiplication factors. */ + __HAL_RCC_PLLI2S_CONFIG(PLLI2SInit->PLLI2SMUL); + + /* Enable the main PLLI2S. */ + __HAL_RCC_PLLI2S_ENABLE(); + + /* Get Start Tick*/ + tickstart = HAL_GetTick(); + + /* Wait till PLLI2S is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLI2SRDY) == RESET) + { + if ((HAL_GetTick() - tickstart) > PLLI2S_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + else + { + /* PLLI2S cannot be modified as already used by I2S2 or I2S3 */ + return HAL_ERROR; + } + + return HAL_OK; +} + +/** + * @brief Disable PLLI2S + * @note PLLI2S is not disabled if used by I2S2 or I2S3 Interface. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_RCCEx_DisablePLLI2S(void) +{ + uint32_t tickstart = 0U; + + /* Disable PLL I2S as not requested by I2S2 or I2S3*/ + if (HAL_IS_BIT_CLR(RCC->CFGR2, RCC_CFGR2_I2S2SRC) && HAL_IS_BIT_CLR(RCC->CFGR2, RCC_CFGR2_I2S3SRC)) + { + /* Disable the main PLLI2S. */ + __HAL_RCC_PLLI2S_DISABLE(); + + /* Get Start Tick*/ + tickstart = HAL_GetTick(); + + /* Wait till PLLI2S is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLLI2SRDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > PLLI2S_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + else + { + /* PLLI2S is currently used by I2S2 or I2S3. Cannot be disabled.*/ + return HAL_ERROR; + } + + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup RCCEx_Exported_Functions_Group3 PLL2 Management function + * @brief PLL2 Management functions + * +@verbatim + =============================================================================== + ##### Extended PLL2 Management functions ##### + =============================================================================== + [..] + This subsection provides a set of functions allowing to control the PLL2 + activation or deactivation +@endverbatim + * @{ + */ + +/** + * @brief Enable PLL2 + * @param PLL2Init pointer to an RCC_PLL2InitTypeDef structure that + * contains the configuration information for the PLL2 + * @note The PLL2 configuration not modified if used indirectly as system clock. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_RCCEx_EnablePLL2(RCC_PLL2InitTypeDef *PLL2Init) +{ + uint32_t tickstart = 0U; + + /* This bit can not be cleared if the PLL2 clock is used indirectly as system + clock (i.e. it is used as PLL clock entry that is used as system clock). */ + if ((__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSE) && \ + (__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && \ + ((READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC)) == RCC_CFGR2_PREDIV1SRC_PLL2)) + { + return HAL_ERROR; + } + else + { + /* Check the parameters */ + assert_param(IS_RCC_PLL2_MUL(PLL2Init->PLL2MUL)); + assert_param(IS_RCC_HSE_PREDIV2(PLL2Init->HSEPrediv2Value)); + + /* Prediv2 can be written only when the PLLI2S is disabled. */ + /* Return an error only if new value is different from the programmed value */ + if (HAL_IS_BIT_SET(RCC->CR, RCC_CR_PLL3ON) && \ + (__HAL_RCC_HSE_GET_PREDIV2() != PLL2Init->HSEPrediv2Value)) + { + return HAL_ERROR; + } + + /* Disable the main PLL2. */ + __HAL_RCC_PLL2_DISABLE(); + + /* Get Start Tick*/ + tickstart = HAL_GetTick(); + + /* Wait till PLL2 is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + + /* Configure the HSE prediv2 factor --------------------------------*/ + __HAL_RCC_HSE_PREDIV2_CONFIG(PLL2Init->HSEPrediv2Value); + + /* Configure the main PLL2 multiplication factors. */ + __HAL_RCC_PLL2_CONFIG(PLL2Init->PLL2MUL); + + /* Enable the main PLL2. */ + __HAL_RCC_PLL2_ENABLE(); + + /* Get Start Tick*/ + tickstart = HAL_GetTick(); + + /* Wait till PLL2 is ready */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) == RESET) + { + if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + + return HAL_OK; +} + +/** + * @brief Disable PLL2 + * @note PLL2 is not disabled if used indirectly as system clock. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_RCCEx_DisablePLL2(void) +{ + uint32_t tickstart = 0U; + + /* This bit can not be cleared if the PLL2 clock is used indirectly as system + clock (i.e. it is used as PLL clock entry that is used as system clock). */ + if ((__HAL_RCC_GET_PLL_OSCSOURCE() == RCC_PLLSOURCE_HSE) && \ + (__HAL_RCC_GET_SYSCLK_SOURCE() == RCC_SYSCLKSOURCE_STATUS_PLLCLK) && \ + ((READ_BIT(RCC->CFGR2, RCC_CFGR2_PREDIV1SRC)) == RCC_CFGR2_PREDIV1SRC_PLL2)) + { + return HAL_ERROR; + } + else + { + /* Disable the main PLL2. */ + __HAL_RCC_PLL2_DISABLE(); + + /* Get Start Tick*/ + tickstart = HAL_GetTick(); + + /* Wait till PLL2 is disabled */ + while (__HAL_RCC_GET_FLAG(RCC_FLAG_PLL2RDY) != RESET) + { + if ((HAL_GetTick() - tickstart) > PLL2_TIMEOUT_VALUE) + { + return HAL_TIMEOUT; + } + } + } + + return HAL_OK; +} + +/** + * @} + */ +#endif /* STM32F105xC || STM32F107xC */ + +/** + * @} + */ + +/** + * @} + */ + +#endif /* HAL_RCC_MODULE_ENABLED */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ + diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c similarity index 96% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c index b32c0bd..edf4a72 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c @@ -1,7483 +1,7483 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_tim.c - * @author MCD Application Team - * @brief TIM HAL module driver. - * This file provides firmware functions to manage the following - * functionalities of the Timer (TIM) peripheral: - * + TIM Time Base Initialization - * + TIM Time Base Start - * + TIM Time Base Start Interruption - * + TIM Time Base Start DMA - * + TIM Output Compare/PWM Initialization - * + TIM Output Compare/PWM Channel Configuration - * + TIM Output Compare/PWM Start - * + TIM Output Compare/PWM Start Interruption - * + TIM Output Compare/PWM Start DMA - * + TIM Input Capture Initialization - * + TIM Input Capture Channel Configuration - * + TIM Input Capture Start - * + TIM Input Capture Start Interruption - * + TIM Input Capture Start DMA - * + TIM One Pulse Initialization - * + TIM One Pulse Channel Configuration - * + TIM One Pulse Start - * + TIM Encoder Interface Initialization - * + TIM Encoder Interface Start - * + TIM Encoder Interface Start Interruption - * + TIM Encoder Interface Start DMA - * + Commutation Event configuration with Interruption and DMA - * + TIM OCRef clear configuration - * + TIM External Clock configuration - @verbatim - ============================================================================== - ##### TIMER Generic features ##### - ============================================================================== - [..] The Timer features include: - (#) 16-bit up, down, up/down auto-reload counter. - (#) 16-bit programmable prescaler allowing dividing (also on the fly) the - counter clock frequency either by any factor between 1 and 65536. - (#) Up to 4 independent channels for: - (++) Input Capture - (++) Output Compare - (++) PWM generation (Edge and Center-aligned Mode) - (++) One-pulse mode output - (#) Synchronization circuit to control the timer with external signals and to interconnect - several timers together. - (#) Supports incremental encoder for positioning purposes - - ##### How to use this driver ##### - ============================================================================== - [..] - (#) Initialize the TIM low level resources by implementing the following functions - depending on the selected feature: - (++) Time Base : HAL_TIM_Base_MspInit() - (++) Input Capture : HAL_TIM_IC_MspInit() - (++) Output Compare : HAL_TIM_OC_MspInit() - (++) PWM generation : HAL_TIM_PWM_MspInit() - (++) One-pulse mode output : HAL_TIM_OnePulse_MspInit() - (++) Encoder mode output : HAL_TIM_Encoder_MspInit() - - (#) Initialize the TIM low level resources : - (##) Enable the TIM interface clock using __HAL_RCC_TIMx_CLK_ENABLE(); - (##) TIM pins configuration - (+++) Enable the clock for the TIM GPIOs using the following function: - __HAL_RCC_GPIOx_CLK_ENABLE(); - (+++) Configure these TIM pins in Alternate function mode using HAL_GPIO_Init(); - - (#) The external Clock can be configured, if needed (the default clock is the - internal clock from the APBx), using the following function: - HAL_TIM_ConfigClockSource, the clock configuration should be done before - any start function. - - (#) Configure the TIM in the desired functioning mode using one of the - Initialization function of this driver: - (++) HAL_TIM_Base_Init: to use the Timer to generate a simple time base - (++) HAL_TIM_OC_Init and HAL_TIM_OC_ConfigChannel: to use the Timer to generate an - Output Compare signal. - (++) HAL_TIM_PWM_Init and HAL_TIM_PWM_ConfigChannel: to use the Timer to generate a - PWM signal. - (++) HAL_TIM_IC_Init and HAL_TIM_IC_ConfigChannel: to use the Timer to measure an - external signal. - (++) HAL_TIM_OnePulse_Init and HAL_TIM_OnePulse_ConfigChannel: to use the Timer - in One Pulse Mode. - (++) HAL_TIM_Encoder_Init: to use the Timer Encoder Interface. - - (#) Activate the TIM peripheral using one of the start functions depending from the feature used: - (++) Time Base : HAL_TIM_Base_Start(), HAL_TIM_Base_Start_DMA(), HAL_TIM_Base_Start_IT() - (++) Input Capture : HAL_TIM_IC_Start(), HAL_TIM_IC_Start_DMA(), HAL_TIM_IC_Start_IT() - (++) Output Compare : HAL_TIM_OC_Start(), HAL_TIM_OC_Start_DMA(), HAL_TIM_OC_Start_IT() - (++) PWM generation : HAL_TIM_PWM_Start(), HAL_TIM_PWM_Start_DMA(), HAL_TIM_PWM_Start_IT() - (++) One-pulse mode output : HAL_TIM_OnePulse_Start(), HAL_TIM_OnePulse_Start_IT() - (++) Encoder mode output : HAL_TIM_Encoder_Start(), HAL_TIM_Encoder_Start_DMA(), HAL_TIM_Encoder_Start_IT(). - - (#) The DMA Burst is managed with the two following functions: - HAL_TIM_DMABurst_WriteStart() - HAL_TIM_DMABurst_ReadStart() - - *** Callback registration *** - ============================================= - - [..] - The compilation define USE_HAL_TIM_REGISTER_CALLBACKS when set to 1 - allows the user to configure dynamically the driver callbacks. - - [..] - Use Function @ref HAL_TIM_RegisterCallback() to register a callback. - @ref HAL_TIM_RegisterCallback() takes as parameters the HAL peripheral handle, - the Callback ID and a pointer to the user callback function. - - [..] - Use function @ref HAL_TIM_UnRegisterCallback() to reset a callback to the default - weak function. - @ref HAL_TIM_UnRegisterCallback takes as parameters the HAL peripheral handle, - and the Callback ID. - - [..] - These functions allow to register/unregister following callbacks: - (+) Base_MspInitCallback : TIM Base Msp Init Callback. - (+) Base_MspDeInitCallback : TIM Base Msp DeInit Callback. - (+) IC_MspInitCallback : TIM IC Msp Init Callback. - (+) IC_MspDeInitCallback : TIM IC Msp DeInit Callback. - (+) OC_MspInitCallback : TIM OC Msp Init Callback. - (+) OC_MspDeInitCallback : TIM OC Msp DeInit Callback. - (+) PWM_MspInitCallback : TIM PWM Msp Init Callback. - (+) PWM_MspDeInitCallback : TIM PWM Msp DeInit Callback. - (+) OnePulse_MspInitCallback : TIM One Pulse Msp Init Callback. - (+) OnePulse_MspDeInitCallback : TIM One Pulse Msp DeInit Callback. - (+) Encoder_MspInitCallback : TIM Encoder Msp Init Callback. - (+) Encoder_MspDeInitCallback : TIM Encoder Msp DeInit Callback. - (+) HallSensor_MspInitCallback : TIM Hall Sensor Msp Init Callback. - (+) HallSensor_MspDeInitCallback : TIM Hall Sensor Msp DeInit Callback. - (+) PeriodElapsedCallback : TIM Period Elapsed Callback. - (+) PeriodElapsedHalfCpltCallback : TIM Period Elapsed half complete Callback. - (+) TriggerCallback : TIM Trigger Callback. - (+) TriggerHalfCpltCallback : TIM Trigger half complete Callback. - (+) IC_CaptureCallback : TIM Input Capture Callback. - (+) IC_CaptureHalfCpltCallback : TIM Input Capture half complete Callback. - (+) OC_DelayElapsedCallback : TIM Output Compare Delay Elapsed Callback. - (+) PWM_PulseFinishedCallback : TIM PWM Pulse Finished Callback. - (+) PWM_PulseFinishedHalfCpltCallback : TIM PWM Pulse Finished half complete Callback. - (+) ErrorCallback : TIM Error Callback. - (+) CommutationCallback : TIM Commutation Callback. - (+) CommutationHalfCpltCallback : TIM Commutation half complete Callback. - (+) BreakCallback : TIM Break Callback. - - [..] -By default, after the Init and when the state is HAL_TIM_STATE_RESET -all interrupt callbacks are set to the corresponding weak functions: - examples @ref HAL_TIM_TriggerCallback(), @ref HAL_TIM_ErrorCallback(). - - [..] - Exception done for MspInit and MspDeInit functions that are reset to the legacy weak - functionalities in the Init / DeInit only when these callbacks are null - (not registered beforehand). If not, MspInit or MspDeInit are not null, the Init / DeInit - keep and use the user MspInit / MspDeInit callbacks(registered beforehand) - - [..] - Callbacks can be registered / unregistered in HAL_TIM_STATE_READY state only. - Exception done MspInit / MspDeInit that can be registered / unregistered - in HAL_TIM_STATE_READY or HAL_TIM_STATE_RESET state, - thus registered(user) MspInit / DeInit callbacks can be used during the Init / DeInit. - In that case first register the MspInit/MspDeInit user callbacks - using @ref HAL_TIM_RegisterCallback() before calling DeInit or Init function. - - [..] - When The compilation define USE_HAL_TIM_REGISTER_CALLBACKS is set to 0 or - not defined, the callback registration feature is not available and all callbacks - are set to the corresponding weak functions. - - @endverbatim - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup TIM TIM - * @brief TIM HAL module driver - * @{ - */ - -#ifdef HAL_TIM_MODULE_ENABLED - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/* Private macros ------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -/** @addtogroup TIM_Private_Functions - * @{ - */ -static void TIM_OC1_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config); -static void TIM_OC3_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config); -static void TIM_OC4_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config); -static void TIM_TI1_ConfigInputStage(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICFilter); -static void TIM_TI2_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, - uint32_t TIM_ICFilter); -static void TIM_TI2_ConfigInputStage(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICFilter); -static void TIM_TI3_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, - uint32_t TIM_ICFilter); -static void TIM_TI4_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, - uint32_t TIM_ICFilter); -static void TIM_ITRx_SetConfig(TIM_TypeDef *TIMx, uint32_t InputTriggerSource); -static void TIM_DMAPeriodElapsedCplt(DMA_HandleTypeDef *hdma); -static void TIM_DMAPeriodElapsedHalfCplt(DMA_HandleTypeDef *hdma); -static void TIM_DMADelayPulseCplt(DMA_HandleTypeDef *hdma); -static void TIM_DMATriggerCplt(DMA_HandleTypeDef *hdma); -static void TIM_DMATriggerHalfCplt(DMA_HandleTypeDef *hdma); -static HAL_StatusTypeDef TIM_SlaveTimer_SetConfig(TIM_HandleTypeDef *htim, - TIM_SlaveConfigTypeDef *sSlaveConfig); -/** - * @} - */ -/* Exported functions --------------------------------------------------------*/ - -/** @defgroup TIM_Exported_Functions TIM Exported Functions - * @{ - */ - -/** @defgroup TIM_Exported_Functions_Group1 TIM Time Base functions - * @brief Time Base functions - * -@verbatim - ============================================================================== - ##### Time Base functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Initialize and configure the TIM base. - (+) De-initialize the TIM base. - (+) Start the Time Base. - (+) Stop the Time Base. - (+) Start the Time Base and enable interrupt. - (+) Stop the Time Base and disable interrupt. - (+) Start the Time Base and enable DMA transfer. - (+) Stop the Time Base and disable DMA transfer. - -@endverbatim - * @{ - */ -/** - * @brief Initializes the TIM Time base Unit according to the specified - * parameters in the TIM_HandleTypeDef and initialize the associated handle. - * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) - * requires a timer reset to avoid unexpected direction - * due to DIR bit readonly in center aligned mode. - * Ex: call @ref HAL_TIM_Base_DeInit() before HAL_TIM_Base_Init() - * @param htim TIM Base handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Base_Init(TIM_HandleTypeDef *htim) -{ - /* Check the TIM handle allocation */ - if (htim == NULL) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); - assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); - assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); - - if (htim->State == HAL_TIM_STATE_RESET) - { - /* Allocate lock resource and initialize it */ - htim->Lock = HAL_UNLOCKED; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - /* Reset interrupt callbacks to legacy weak callbacks */ - TIM_ResetCallback(htim); - - if (htim->Base_MspInitCallback == NULL) - { - htim->Base_MspInitCallback = HAL_TIM_Base_MspInit; - } - /* Init the low level hardware : GPIO, CLOCK, NVIC */ - htim->Base_MspInitCallback(htim); -#else - /* Init the low level hardware : GPIO, CLOCK, NVIC */ - HAL_TIM_Base_MspInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_BUSY; - - /* Set the Time Base configuration */ - TIM_Base_SetConfig(htim->Instance, &htim->Init); - - /* Initialize the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_READY; - - /* Initialize the TIM channels state */ - TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); - - /* Initialize the TIM state*/ - htim->State = HAL_TIM_STATE_READY; - - return HAL_OK; -} - -/** - * @brief DeInitializes the TIM Base peripheral - * @param htim TIM Base handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Base_DeInit(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - - htim->State = HAL_TIM_STATE_BUSY; - - /* Disable the TIM Peripheral Clock */ - __HAL_TIM_DISABLE(htim); - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - if (htim->Base_MspDeInitCallback == NULL) - { - htim->Base_MspDeInitCallback = HAL_TIM_Base_MspDeInit; - } - /* DeInit the low level hardware */ - htim->Base_MspDeInitCallback(htim); -#else - /* DeInit the low level hardware: GPIO, CLOCK, NVIC */ - HAL_TIM_Base_MspDeInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - /* Change the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; - - /* Change the TIM channels state */ - TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); - - /* Change TIM state */ - htim->State = HAL_TIM_STATE_RESET; - - /* Release Lock */ - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Initializes the TIM Base MSP. - * @param htim TIM Base handle - * @retval None - */ -__weak void HAL_TIM_Base_MspInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_Base_MspInit could be implemented in the user file - */ -} - -/** - * @brief DeInitializes TIM Base MSP. - * @param htim TIM Base handle - * @retval None - */ -__weak void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_Base_MspDeInit could be implemented in the user file - */ -} - - -/** - * @brief Starts the TIM Base generation. - * @param htim TIM Base handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Base_Start(TIM_HandleTypeDef *htim) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - - /* Check the TIM state */ - if (htim->State != HAL_TIM_STATE_READY) - { - return HAL_ERROR; - } - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_BUSY; - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Base generation. - * @param htim TIM Base handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Base_Stop(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_READY; - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Base generation in interrupt mode. - * @param htim TIM Base handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Base_Start_IT(TIM_HandleTypeDef *htim) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - - /* Check the TIM state */ - if (htim->State != HAL_TIM_STATE_READY) - { - return HAL_ERROR; - } - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_BUSY; - - /* Enable the TIM Update interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_UPDATE); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Base generation in interrupt mode. - * @param htim TIM Base handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Base_Stop_IT(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - - /* Disable the TIM Update interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_UPDATE); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_READY; - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Base generation in DMA mode. - * @param htim TIM Base handle - * @param pData The source Buffer address. - * @param Length The length of data to be transferred from memory to peripheral. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Base_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_DMA_INSTANCE(htim->Instance)); - - /* Set the TIM state */ - if (htim->State == HAL_TIM_STATE_BUSY) - { - return HAL_BUSY; - } - else if (htim->State == HAL_TIM_STATE_READY) - { - if ((pData == NULL) && (Length > 0U)) - { - return HAL_ERROR; - } - else - { - htim->State = HAL_TIM_STATE_BUSY; - } - } - else - { - return HAL_ERROR; - } - - /* Set the DMA Period elapsed callbacks */ - htim->hdma[TIM_DMA_ID_UPDATE]->XferCpltCallback = TIM_DMAPeriodElapsedCplt; - htim->hdma[TIM_DMA_ID_UPDATE]->XferHalfCpltCallback = TIM_DMAPeriodElapsedHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_UPDATE]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_UPDATE], (uint32_t)pData, (uint32_t)&htim->Instance->ARR, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - - /* Enable the TIM Update DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_UPDATE); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Base generation in DMA mode. - * @param htim TIM Base handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Base_Stop_DMA(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_DMA_INSTANCE(htim->Instance)); - - /* Disable the TIM Update DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_UPDATE); - - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_UPDATE]); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_READY; - - /* Return function status */ - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup TIM_Exported_Functions_Group2 TIM Output Compare functions - * @brief TIM Output Compare functions - * -@verbatim - ============================================================================== - ##### TIM Output Compare functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Initialize and configure the TIM Output Compare. - (+) De-initialize the TIM Output Compare. - (+) Start the TIM Output Compare. - (+) Stop the TIM Output Compare. - (+) Start the TIM Output Compare and enable interrupt. - (+) Stop the TIM Output Compare and disable interrupt. - (+) Start the TIM Output Compare and enable DMA transfer. - (+) Stop the TIM Output Compare and disable DMA transfer. - -@endverbatim - * @{ - */ -/** - * @brief Initializes the TIM Output Compare according to the specified - * parameters in the TIM_HandleTypeDef and initializes the associated handle. - * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) - * requires a timer reset to avoid unexpected direction - * due to DIR bit readonly in center aligned mode. - * Ex: call @ref HAL_TIM_OC_DeInit() before HAL_TIM_OC_Init() - * @param htim TIM Output Compare handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OC_Init(TIM_HandleTypeDef *htim) -{ - /* Check the TIM handle allocation */ - if (htim == NULL) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); - assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); - assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); - - if (htim->State == HAL_TIM_STATE_RESET) - { - /* Allocate lock resource and initialize it */ - htim->Lock = HAL_UNLOCKED; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - /* Reset interrupt callbacks to legacy weak callbacks */ - TIM_ResetCallback(htim); - - if (htim->OC_MspInitCallback == NULL) - { - htim->OC_MspInitCallback = HAL_TIM_OC_MspInit; - } - /* Init the low level hardware : GPIO, CLOCK, NVIC */ - htim->OC_MspInitCallback(htim); -#else - /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ - HAL_TIM_OC_MspInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_BUSY; - - /* Init the base time for the Output Compare */ - TIM_Base_SetConfig(htim->Instance, &htim->Init); - - /* Initialize the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_READY; - - /* Initialize the TIM channels state */ - TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); - - /* Initialize the TIM state*/ - htim->State = HAL_TIM_STATE_READY; - - return HAL_OK; -} - -/** - * @brief DeInitializes the TIM peripheral - * @param htim TIM Output Compare handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OC_DeInit(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - - htim->State = HAL_TIM_STATE_BUSY; - - /* Disable the TIM Peripheral Clock */ - __HAL_TIM_DISABLE(htim); - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - if (htim->OC_MspDeInitCallback == NULL) - { - htim->OC_MspDeInitCallback = HAL_TIM_OC_MspDeInit; - } - /* DeInit the low level hardware */ - htim->OC_MspDeInitCallback(htim); -#else - /* DeInit the low level hardware: GPIO, CLOCK, NVIC and DMA */ - HAL_TIM_OC_MspDeInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - /* Change the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; - - /* Change the TIM channels state */ - TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); - - /* Change TIM state */ - htim->State = HAL_TIM_STATE_RESET; - - /* Release Lock */ - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Initializes the TIM Output Compare MSP. - * @param htim TIM Output Compare handle - * @retval None - */ -__weak void HAL_TIM_OC_MspInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_OC_MspInit could be implemented in the user file - */ -} - -/** - * @brief DeInitializes TIM Output Compare MSP. - * @param htim TIM Output Compare handle - * @retval None - */ -__weak void HAL_TIM_OC_MspDeInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_OC_MspDeInit could be implemented in the user file - */ -} - -/** - * @brief Starts the TIM Output Compare signal generation. - * @param htim TIM Output Compare handle - * @param Channel TIM Channel to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OC_Start(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - /* Check the TIM channel state */ - if (TIM_CHANNEL_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) - { - return HAL_ERROR; - } - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - - /* Enable the Output compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Enable the main output */ - __HAL_TIM_MOE_ENABLE(htim); - } - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Output Compare signal generation. - * @param htim TIM Output Compare handle - * @param Channel TIM Channel to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OC_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - /* Disable the Output compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Output Compare signal generation in interrupt mode. - * @param htim TIM Output Compare handle - * @param Channel TIM Channel to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OC_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - /* Check the TIM channel state */ - if (TIM_CHANNEL_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) - { - return HAL_ERROR; - } - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Enable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Enable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Enable the TIM Capture/Compare 3 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); - break; - } - - case TIM_CHANNEL_4: - { - /* Enable the TIM Capture/Compare 4 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC4); - break; - } - - default: - break; - } - - /* Enable the Output compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Enable the main output */ - __HAL_TIM_MOE_ENABLE(htim); - } - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Output Compare signal generation in interrupt mode. - * @param htim TIM Output Compare handle - * @param Channel TIM Channel to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OC_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Disable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Disable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Disable the TIM Capture/Compare 3 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); - break; - } - - case TIM_CHANNEL_4: - { - /* Disable the TIM Capture/Compare 4 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC4); - break; - } - - default: - break; - } - - /* Disable the Output compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Output Compare signal generation in DMA mode. - * @param htim TIM Output Compare handle - * @param Channel TIM Channel to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @param pData The source Buffer address. - * @param Length The length of data to be transferred from memory to TIM peripheral - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OC_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - /* Set the TIM channel state */ - if (TIM_CHANNEL_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_BUSY) - { - return HAL_BUSY; - } - else if (TIM_CHANNEL_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_READY) - { - if ((pData == NULL) && (Length > 0U)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else - { - return HAL_ERROR; - } - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)pData, (uint32_t)&htim->Instance->CCR1, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - - /* Enable the TIM Capture/Compare 1 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)pData, (uint32_t)&htim->Instance->CCR2, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - - /* Enable the TIM Capture/Compare 2 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)pData, (uint32_t)&htim->Instance->CCR3, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Capture/Compare 3 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); - break; - } - - case TIM_CHANNEL_4: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC4]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC4]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC4]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC4], (uint32_t)pData, (uint32_t)&htim->Instance->CCR4, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Capture/Compare 4 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC4); - break; - } - - default: - break; - } - - /* Enable the Output compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Enable the main output */ - __HAL_TIM_MOE_ENABLE(htim); - } - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Output Compare signal generation in DMA mode. - * @param htim TIM Output Compare handle - * @param Channel TIM Channel to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OC_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Disable the TIM Capture/Compare 1 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); - break; - } - - case TIM_CHANNEL_2: - { - /* Disable the TIM Capture/Compare 2 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); - break; - } - - case TIM_CHANNEL_3: - { - /* Disable the TIM Capture/Compare 3 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); - break; - } - - case TIM_CHANNEL_4: - { - /* Disable the TIM Capture/Compare 4 interrupt */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC4); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC4]); - break; - } - - default: - break; - } - - /* Disable the Output compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup TIM_Exported_Functions_Group3 TIM PWM functions - * @brief TIM PWM functions - * -@verbatim - ============================================================================== - ##### TIM PWM functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Initialize and configure the TIM PWM. - (+) De-initialize the TIM PWM. - (+) Start the TIM PWM. - (+) Stop the TIM PWM. - (+) Start the TIM PWM and enable interrupt. - (+) Stop the TIM PWM and disable interrupt. - (+) Start the TIM PWM and enable DMA transfer. - (+) Stop the TIM PWM and disable DMA transfer. - -@endverbatim - * @{ - */ -/** - * @brief Initializes the TIM PWM Time Base according to the specified - * parameters in the TIM_HandleTypeDef and initializes the associated handle. - * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) - * requires a timer reset to avoid unexpected direction - * due to DIR bit readonly in center aligned mode. - * Ex: call @ref HAL_TIM_PWM_DeInit() before HAL_TIM_PWM_Init() - * @param htim TIM PWM handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_PWM_Init(TIM_HandleTypeDef *htim) -{ - /* Check the TIM handle allocation */ - if (htim == NULL) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); - assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); - assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); - - if (htim->State == HAL_TIM_STATE_RESET) - { - /* Allocate lock resource and initialize it */ - htim->Lock = HAL_UNLOCKED; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - /* Reset interrupt callbacks to legacy weak callbacks */ - TIM_ResetCallback(htim); - - if (htim->PWM_MspInitCallback == NULL) - { - htim->PWM_MspInitCallback = HAL_TIM_PWM_MspInit; - } - /* Init the low level hardware : GPIO, CLOCK, NVIC */ - htim->PWM_MspInitCallback(htim); -#else - /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ - HAL_TIM_PWM_MspInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_BUSY; - - /* Init the base time for the PWM */ - TIM_Base_SetConfig(htim->Instance, &htim->Init); - - /* Initialize the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_READY; - - /* Initialize the TIM channels state */ - TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); - - /* Initialize the TIM state*/ - htim->State = HAL_TIM_STATE_READY; - - return HAL_OK; -} - -/** - * @brief DeInitializes the TIM peripheral - * @param htim TIM PWM handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_PWM_DeInit(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - - htim->State = HAL_TIM_STATE_BUSY; - - /* Disable the TIM Peripheral Clock */ - __HAL_TIM_DISABLE(htim); - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - if (htim->PWM_MspDeInitCallback == NULL) - { - htim->PWM_MspDeInitCallback = HAL_TIM_PWM_MspDeInit; - } - /* DeInit the low level hardware */ - htim->PWM_MspDeInitCallback(htim); -#else - /* DeInit the low level hardware: GPIO, CLOCK, NVIC and DMA */ - HAL_TIM_PWM_MspDeInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - /* Change the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; - - /* Change the TIM channels state */ - TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); - - /* Change TIM state */ - htim->State = HAL_TIM_STATE_RESET; - - /* Release Lock */ - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Initializes the TIM PWM MSP. - * @param htim TIM PWM handle - * @retval None - */ -__weak void HAL_TIM_PWM_MspInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_PWM_MspInit could be implemented in the user file - */ -} - -/** - * @brief DeInitializes TIM PWM MSP. - * @param htim TIM PWM handle - * @retval None - */ -__weak void HAL_TIM_PWM_MspDeInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_PWM_MspDeInit could be implemented in the user file - */ -} - -/** - * @brief Starts the PWM signal generation. - * @param htim TIM handle - * @param Channel TIM Channels to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_PWM_Start(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - /* Check the TIM channel state */ - if (TIM_CHANNEL_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) - { - return HAL_ERROR; - } - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - - /* Enable the Capture compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Enable the main output */ - __HAL_TIM_MOE_ENABLE(htim); - } - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the PWM signal generation. - * @param htim TIM PWM handle - * @param Channel TIM Channels to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_PWM_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - /* Disable the Capture compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the PWM signal generation in interrupt mode. - * @param htim TIM PWM handle - * @param Channel TIM Channel to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_PWM_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpsmcr; - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - /* Check the TIM channel state */ - if (TIM_CHANNEL_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) - { - return HAL_ERROR; - } - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Enable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Enable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Enable the TIM Capture/Compare 3 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); - break; - } - - case TIM_CHANNEL_4: - { - /* Enable the TIM Capture/Compare 4 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC4); - break; - } - - default: - break; - } - - /* Enable the Capture compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Enable the main output */ - __HAL_TIM_MOE_ENABLE(htim); - } - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the PWM signal generation in interrupt mode. - * @param htim TIM PWM handle - * @param Channel TIM Channels to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_PWM_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Disable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Disable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Disable the TIM Capture/Compare 3 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); - break; - } - - case TIM_CHANNEL_4: - { - /* Disable the TIM Capture/Compare 4 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC4); - break; - } - - default: - break; - } - - /* Disable the Capture compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM PWM signal generation in DMA mode. - * @param htim TIM PWM handle - * @param Channel TIM Channels to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @param pData The source Buffer address. - * @param Length The length of data to be transferred from memory to TIM peripheral - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_PWM_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - /* Set the TIM channel state */ - if (TIM_CHANNEL_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_BUSY) - { - return HAL_BUSY; - } - else if (TIM_CHANNEL_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_READY) - { - if ((pData == NULL) && (Length > 0U)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else - { - return HAL_ERROR; - } - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)pData, (uint32_t)&htim->Instance->CCR1, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - - /* Enable the TIM Capture/Compare 1 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)pData, (uint32_t)&htim->Instance->CCR2, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Capture/Compare 2 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)pData, (uint32_t)&htim->Instance->CCR3, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Output Capture/Compare 3 request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); - break; - } - - case TIM_CHANNEL_4: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC4]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC4]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC4]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC4], (uint32_t)pData, (uint32_t)&htim->Instance->CCR4, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Capture/Compare 4 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC4); - break; - } - - default: - break; - } - - /* Enable the Capture compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Enable the main output */ - __HAL_TIM_MOE_ENABLE(htim); - } - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM PWM signal generation in DMA mode. - * @param htim TIM PWM handle - * @param Channel TIM Channels to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_PWM_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Disable the TIM Capture/Compare 1 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); - break; - } - - case TIM_CHANNEL_2: - { - /* Disable the TIM Capture/Compare 2 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); - break; - } - - case TIM_CHANNEL_3: - { - /* Disable the TIM Capture/Compare 3 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); - break; - } - - case TIM_CHANNEL_4: - { - /* Disable the TIM Capture/Compare 4 interrupt */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC4); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC4]); - break; - } - - default: - break; - } - - /* Disable the Capture compare channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup TIM_Exported_Functions_Group4 TIM Input Capture functions - * @brief TIM Input Capture functions - * -@verbatim - ============================================================================== - ##### TIM Input Capture functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Initialize and configure the TIM Input Capture. - (+) De-initialize the TIM Input Capture. - (+) Start the TIM Input Capture. - (+) Stop the TIM Input Capture. - (+) Start the TIM Input Capture and enable interrupt. - (+) Stop the TIM Input Capture and disable interrupt. - (+) Start the TIM Input Capture and enable DMA transfer. - (+) Stop the TIM Input Capture and disable DMA transfer. - -@endverbatim - * @{ - */ -/** - * @brief Initializes the TIM Input Capture Time base according to the specified - * parameters in the TIM_HandleTypeDef and initializes the associated handle. - * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) - * requires a timer reset to avoid unexpected direction - * due to DIR bit readonly in center aligned mode. - * Ex: call @ref HAL_TIM_IC_DeInit() before HAL_TIM_IC_Init() - * @param htim TIM Input Capture handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_IC_Init(TIM_HandleTypeDef *htim) -{ - /* Check the TIM handle allocation */ - if (htim == NULL) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); - assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); - assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); - - if (htim->State == HAL_TIM_STATE_RESET) - { - /* Allocate lock resource and initialize it */ - htim->Lock = HAL_UNLOCKED; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - /* Reset interrupt callbacks to legacy weak callbacks */ - TIM_ResetCallback(htim); - - if (htim->IC_MspInitCallback == NULL) - { - htim->IC_MspInitCallback = HAL_TIM_IC_MspInit; - } - /* Init the low level hardware : GPIO, CLOCK, NVIC */ - htim->IC_MspInitCallback(htim); -#else - /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ - HAL_TIM_IC_MspInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_BUSY; - - /* Init the base time for the input capture */ - TIM_Base_SetConfig(htim->Instance, &htim->Init); - - /* Initialize the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_READY; - - /* Initialize the TIM channels state */ - TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); - - /* Initialize the TIM state*/ - htim->State = HAL_TIM_STATE_READY; - - return HAL_OK; -} - -/** - * @brief DeInitializes the TIM peripheral - * @param htim TIM Input Capture handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_IC_DeInit(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - - htim->State = HAL_TIM_STATE_BUSY; - - /* Disable the TIM Peripheral Clock */ - __HAL_TIM_DISABLE(htim); - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - if (htim->IC_MspDeInitCallback == NULL) - { - htim->IC_MspDeInitCallback = HAL_TIM_IC_MspDeInit; - } - /* DeInit the low level hardware */ - htim->IC_MspDeInitCallback(htim); -#else - /* DeInit the low level hardware: GPIO, CLOCK, NVIC and DMA */ - HAL_TIM_IC_MspDeInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - /* Change the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; - - /* Change the TIM channels state */ - TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); - - /* Change TIM state */ - htim->State = HAL_TIM_STATE_RESET; - - /* Release Lock */ - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Initializes the TIM Input Capture MSP. - * @param htim TIM Input Capture handle - * @retval None - */ -__weak void HAL_TIM_IC_MspInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_IC_MspInit could be implemented in the user file - */ -} - -/** - * @brief DeInitializes TIM Input Capture MSP. - * @param htim TIM handle - * @retval None - */ -__weak void HAL_TIM_IC_MspDeInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_IC_MspDeInit could be implemented in the user file - */ -} - -/** - * @brief Starts the TIM Input Capture measurement. - * @param htim TIM Input Capture handle - * @param Channel TIM Channels to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_IC_Start(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpsmcr; - HAL_TIM_ChannelStateTypeDef channel_state = TIM_CHANNEL_STATE_GET(htim, Channel); - HAL_TIM_ChannelStateTypeDef complementary_channel_state = TIM_CHANNEL_N_STATE_GET(htim, Channel); - - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - /* Check the TIM channel state */ - if ((channel_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - - /* Enable the Input Capture channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Input Capture measurement. - * @param htim TIM Input Capture handle - * @param Channel TIM Channels to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_IC_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - /* Disable the Input Capture channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Input Capture measurement in interrupt mode. - * @param htim TIM Input Capture handle - * @param Channel TIM Channels to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_IC_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpsmcr; - HAL_TIM_ChannelStateTypeDef channel_state = TIM_CHANNEL_STATE_GET(htim, Channel); - HAL_TIM_ChannelStateTypeDef complementary_channel_state = TIM_CHANNEL_N_STATE_GET(htim, Channel); - - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - /* Check the TIM channel state */ - if ((channel_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Enable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Enable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Enable the TIM Capture/Compare 3 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); - break; - } - - case TIM_CHANNEL_4: - { - /* Enable the TIM Capture/Compare 4 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC4); - break; - } - - default: - break; - } - /* Enable the Input Capture channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Input Capture measurement in interrupt mode. - * @param htim TIM Input Capture handle - * @param Channel TIM Channels to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_IC_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Disable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Disable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Disable the TIM Capture/Compare 3 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); - break; - } - - case TIM_CHANNEL_4: - { - /* Disable the TIM Capture/Compare 4 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC4); - break; - } - - default: - break; - } - - /* Disable the Input Capture channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Input Capture measurement in DMA mode. - * @param htim TIM Input Capture handle - * @param Channel TIM Channels to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @param pData The destination Buffer address. - * @param Length The length of data to be transferred from TIM peripheral to memory. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_IC_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length) -{ - uint32_t tmpsmcr; - HAL_TIM_ChannelStateTypeDef channel_state = TIM_CHANNEL_STATE_GET(htim, Channel); - HAL_TIM_ChannelStateTypeDef complementary_channel_state = TIM_CHANNEL_N_STATE_GET(htim, Channel); - - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - assert_param(IS_TIM_DMA_CC_INSTANCE(htim->Instance)); - - /* Set the TIM channel state */ - if ((channel_state == HAL_TIM_CHANNEL_STATE_BUSY) - || (complementary_channel_state == HAL_TIM_CHANNEL_STATE_BUSY)) - { - return HAL_BUSY; - } - else if ((channel_state == HAL_TIM_CHANNEL_STATE_READY) - && (complementary_channel_state == HAL_TIM_CHANNEL_STATE_READY)) - { - if ((pData == NULL) && (Length > 0U)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else - { - return HAL_ERROR; - } - - /* Enable the Input Capture channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)&htim->Instance->CCR1, (uint32_t)pData, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Capture/Compare 1 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)&htim->Instance->CCR2, (uint32_t)pData, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Capture/Compare 2 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)&htim->Instance->CCR3, (uint32_t)pData, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Capture/Compare 3 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); - break; - } - - case TIM_CHANNEL_4: - { - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC4]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC4]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC4]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC4], (uint32_t)&htim->Instance->CCR4, (uint32_t)pData, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Capture/Compare 4 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC4); - break; - } - - default: - break; - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Input Capture measurement in DMA mode. - * @param htim TIM Input Capture handle - * @param Channel TIM Channels to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_IC_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - assert_param(IS_TIM_DMA_CC_INSTANCE(htim->Instance)); - - /* Disable the Input Capture channel */ - TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Disable the TIM Capture/Compare 1 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); - break; - } - - case TIM_CHANNEL_2: - { - /* Disable the TIM Capture/Compare 2 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); - break; - } - - case TIM_CHANNEL_3: - { - /* Disable the TIM Capture/Compare 3 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); - break; - } - - case TIM_CHANNEL_4: - { - /* Disable the TIM Capture/Compare 4 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC4); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC4]); - break; - } - - default: - break; - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} -/** - * @} - */ - -/** @defgroup TIM_Exported_Functions_Group5 TIM One Pulse functions - * @brief TIM One Pulse functions - * -@verbatim - ============================================================================== - ##### TIM One Pulse functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Initialize and configure the TIM One Pulse. - (+) De-initialize the TIM One Pulse. - (+) Start the TIM One Pulse. - (+) Stop the TIM One Pulse. - (+) Start the TIM One Pulse and enable interrupt. - (+) Stop the TIM One Pulse and disable interrupt. - (+) Start the TIM One Pulse and enable DMA transfer. - (+) Stop the TIM One Pulse and disable DMA transfer. - -@endverbatim - * @{ - */ -/** - * @brief Initializes the TIM One Pulse Time Base according to the specified - * parameters in the TIM_HandleTypeDef and initializes the associated handle. - * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) - * requires a timer reset to avoid unexpected direction - * due to DIR bit readonly in center aligned mode. - * Ex: call @ref HAL_TIM_OnePulse_DeInit() before HAL_TIM_OnePulse_Init() - * @note When the timer instance is initialized in One Pulse mode, timer - * channels 1 and channel 2 are reserved and cannot be used for other - * purpose. - * @param htim TIM One Pulse handle - * @param OnePulseMode Select the One pulse mode. - * This parameter can be one of the following values: - * @arg TIM_OPMODE_SINGLE: Only one pulse will be generated. - * @arg TIM_OPMODE_REPETITIVE: Repetitive pulses will be generated. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OnePulse_Init(TIM_HandleTypeDef *htim, uint32_t OnePulseMode) -{ - /* Check the TIM handle allocation */ - if (htim == NULL) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); - assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); - assert_param(IS_TIM_OPM_MODE(OnePulseMode)); - assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); - - if (htim->State == HAL_TIM_STATE_RESET) - { - /* Allocate lock resource and initialize it */ - htim->Lock = HAL_UNLOCKED; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - /* Reset interrupt callbacks to legacy weak callbacks */ - TIM_ResetCallback(htim); - - if (htim->OnePulse_MspInitCallback == NULL) - { - htim->OnePulse_MspInitCallback = HAL_TIM_OnePulse_MspInit; - } - /* Init the low level hardware : GPIO, CLOCK, NVIC */ - htim->OnePulse_MspInitCallback(htim); -#else - /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ - HAL_TIM_OnePulse_MspInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_BUSY; - - /* Configure the Time base in the One Pulse Mode */ - TIM_Base_SetConfig(htim->Instance, &htim->Init); - - /* Reset the OPM Bit */ - htim->Instance->CR1 &= ~TIM_CR1_OPM; - - /* Configure the OPM Mode */ - htim->Instance->CR1 |= OnePulseMode; - - /* Initialize the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_READY; - - /* Initialize the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - - /* Initialize the TIM state*/ - htim->State = HAL_TIM_STATE_READY; - - return HAL_OK; -} - -/** - * @brief DeInitializes the TIM One Pulse - * @param htim TIM One Pulse handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OnePulse_DeInit(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - - htim->State = HAL_TIM_STATE_BUSY; - - /* Disable the TIM Peripheral Clock */ - __HAL_TIM_DISABLE(htim); - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - if (htim->OnePulse_MspDeInitCallback == NULL) - { - htim->OnePulse_MspDeInitCallback = HAL_TIM_OnePulse_MspDeInit; - } - /* DeInit the low level hardware */ - htim->OnePulse_MspDeInitCallback(htim); -#else - /* DeInit the low level hardware: GPIO, CLOCK, NVIC */ - HAL_TIM_OnePulse_MspDeInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - /* Change the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); - - /* Change TIM state */ - htim->State = HAL_TIM_STATE_RESET; - - /* Release Lock */ - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Initializes the TIM One Pulse MSP. - * @param htim TIM One Pulse handle - * @retval None - */ -__weak void HAL_TIM_OnePulse_MspInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_OnePulse_MspInit could be implemented in the user file - */ -} - -/** - * @brief DeInitializes TIM One Pulse MSP. - * @param htim TIM One Pulse handle - * @retval None - */ -__weak void HAL_TIM_OnePulse_MspDeInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_OnePulse_MspDeInit could be implemented in the user file - */ -} - -/** - * @brief Starts the TIM One Pulse signal generation. - * @note Though OutputChannel parameter is deprecated and ignored by the function - * it has been kept to avoid HAL_TIM API compatibility break. - * @note The pulse output channel is determined when calling - * @ref HAL_TIM_OnePulse_ConfigChannel(). - * @param htim TIM One Pulse handle - * @param OutputChannel See note above - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OnePulse_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel) -{ - HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); - HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); - - /* Prevent unused argument(s) compilation warning */ - UNUSED(OutputChannel); - - /* Check the TIM channels state */ - if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - - /* Enable the Capture compare and the Input Capture channels - (in the OPM Mode the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) - if TIM_CHANNEL_1 is used as output, the TIM_CHANNEL_2 will be used as input and - if TIM_CHANNEL_1 is used as input, the TIM_CHANNEL_2 will be used as output - whatever the combination, the TIM_CHANNEL_1 and TIM_CHANNEL_2 should be enabled together - - No need to enable the counter, it's enabled automatically by hardware - (the counter starts in response to a stimulus and generate a pulse */ - - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Enable the main output */ - __HAL_TIM_MOE_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM One Pulse signal generation. - * @note Though OutputChannel parameter is deprecated and ignored by the function - * it has been kept to avoid HAL_TIM API compatibility break. - * @note The pulse output channel is determined when calling - * @ref HAL_TIM_OnePulse_ConfigChannel(). - * @param htim TIM One Pulse handle - * @param OutputChannel See note above - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OnePulse_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(OutputChannel); - - /* Disable the Capture compare and the Input Capture channels - (in the OPM Mode the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) - if TIM_CHANNEL_1 is used as output, the TIM_CHANNEL_2 will be used as input and - if TIM_CHANNEL_1 is used as input, the TIM_CHANNEL_2 will be used as output - whatever the combination, the TIM_CHANNEL_1 and TIM_CHANNEL_2 should be disabled together */ - - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM One Pulse signal generation in interrupt mode. - * @note Though OutputChannel parameter is deprecated and ignored by the function - * it has been kept to avoid HAL_TIM API compatibility break. - * @note The pulse output channel is determined when calling - * @ref HAL_TIM_OnePulse_ConfigChannel(). - * @param htim TIM One Pulse handle - * @param OutputChannel See note above - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OnePulse_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel) -{ - HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); - HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); - - /* Prevent unused argument(s) compilation warning */ - UNUSED(OutputChannel); - - /* Check the TIM channels state */ - if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - - /* Enable the Capture compare and the Input Capture channels - (in the OPM Mode the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) - if TIM_CHANNEL_1 is used as output, the TIM_CHANNEL_2 will be used as input and - if TIM_CHANNEL_1 is used as input, the TIM_CHANNEL_2 will be used as output - whatever the combination, the TIM_CHANNEL_1 and TIM_CHANNEL_2 should be enabled together - - No need to enable the counter, it's enabled automatically by hardware - (the counter starts in response to a stimulus and generate a pulse */ - - /* Enable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); - - /* Enable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); - - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Enable the main output */ - __HAL_TIM_MOE_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM One Pulse signal generation in interrupt mode. - * @note Though OutputChannel parameter is deprecated and ignored by the function - * it has been kept to avoid HAL_TIM API compatibility break. - * @note The pulse output channel is determined when calling - * @ref HAL_TIM_OnePulse_ConfigChannel(). - * @param htim TIM One Pulse handle - * @param OutputChannel See note above - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OnePulse_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(OutputChannel); - - /* Disable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); - - /* Disable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); - - /* Disable the Capture compare and the Input Capture channels - (in the OPM Mode the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) - if TIM_CHANNEL_1 is used as output, the TIM_CHANNEL_2 will be used as input and - if TIM_CHANNEL_1 is used as input, the TIM_CHANNEL_2 will be used as output - whatever the combination, the TIM_CHANNEL_1 and TIM_CHANNEL_2 should be disabled together */ - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); - - if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) - { - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup TIM_Exported_Functions_Group6 TIM Encoder functions - * @brief TIM Encoder functions - * -@verbatim - ============================================================================== - ##### TIM Encoder functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Initialize and configure the TIM Encoder. - (+) De-initialize the TIM Encoder. - (+) Start the TIM Encoder. - (+) Stop the TIM Encoder. - (+) Start the TIM Encoder and enable interrupt. - (+) Stop the TIM Encoder and disable interrupt. - (+) Start the TIM Encoder and enable DMA transfer. - (+) Stop the TIM Encoder and disable DMA transfer. - -@endverbatim - * @{ - */ -/** - * @brief Initializes the TIM Encoder Interface and initialize the associated handle. - * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) - * requires a timer reset to avoid unexpected direction - * due to DIR bit readonly in center aligned mode. - * Ex: call @ref HAL_TIM_Encoder_DeInit() before HAL_TIM_Encoder_Init() - * @note Encoder mode and External clock mode 2 are not compatible and must not be selected together - * Ex: A call for @ref HAL_TIM_Encoder_Init will erase the settings of @ref HAL_TIM_ConfigClockSource - * using TIM_CLOCKSOURCE_ETRMODE2 and vice versa - * @note When the timer instance is initialized in Encoder mode, timer - * channels 1 and channel 2 are reserved and cannot be used for other - * purpose. - * @param htim TIM Encoder Interface handle - * @param sConfig TIM Encoder Interface configuration structure - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Encoder_Init(TIM_HandleTypeDef *htim, TIM_Encoder_InitTypeDef *sConfig) -{ - uint32_t tmpsmcr; - uint32_t tmpccmr1; - uint32_t tmpccer; - - /* Check the TIM handle allocation */ - if (htim == NULL) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); - assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); - assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); - assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); - assert_param(IS_TIM_ENCODER_MODE(sConfig->EncoderMode)); - assert_param(IS_TIM_IC_SELECTION(sConfig->IC1Selection)); - assert_param(IS_TIM_IC_SELECTION(sConfig->IC2Selection)); - assert_param(IS_TIM_ENCODERINPUT_POLARITY(sConfig->IC1Polarity)); - assert_param(IS_TIM_ENCODERINPUT_POLARITY(sConfig->IC2Polarity)); - assert_param(IS_TIM_IC_PRESCALER(sConfig->IC1Prescaler)); - assert_param(IS_TIM_IC_PRESCALER(sConfig->IC2Prescaler)); - assert_param(IS_TIM_IC_FILTER(sConfig->IC1Filter)); - assert_param(IS_TIM_IC_FILTER(sConfig->IC2Filter)); - - if (htim->State == HAL_TIM_STATE_RESET) - { - /* Allocate lock resource and initialize it */ - htim->Lock = HAL_UNLOCKED; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - /* Reset interrupt callbacks to legacy weak callbacks */ - TIM_ResetCallback(htim); - - if (htim->Encoder_MspInitCallback == NULL) - { - htim->Encoder_MspInitCallback = HAL_TIM_Encoder_MspInit; - } - /* Init the low level hardware : GPIO, CLOCK, NVIC */ - htim->Encoder_MspInitCallback(htim); -#else - /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ - HAL_TIM_Encoder_MspInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_BUSY; - - /* Reset the SMS and ECE bits */ - htim->Instance->SMCR &= ~(TIM_SMCR_SMS | TIM_SMCR_ECE); - - /* Configure the Time base in the Encoder Mode */ - TIM_Base_SetConfig(htim->Instance, &htim->Init); - - /* Get the TIMx SMCR register value */ - tmpsmcr = htim->Instance->SMCR; - - /* Get the TIMx CCMR1 register value */ - tmpccmr1 = htim->Instance->CCMR1; - - /* Get the TIMx CCER register value */ - tmpccer = htim->Instance->CCER; - - /* Set the encoder Mode */ - tmpsmcr |= sConfig->EncoderMode; - - /* Select the Capture Compare 1 and the Capture Compare 2 as input */ - tmpccmr1 &= ~(TIM_CCMR1_CC1S | TIM_CCMR1_CC2S); - tmpccmr1 |= (sConfig->IC1Selection | (sConfig->IC2Selection << 8U)); - - /* Set the Capture Compare 1 and the Capture Compare 2 prescalers and filters */ - tmpccmr1 &= ~(TIM_CCMR1_IC1PSC | TIM_CCMR1_IC2PSC); - tmpccmr1 &= ~(TIM_CCMR1_IC1F | TIM_CCMR1_IC2F); - tmpccmr1 |= sConfig->IC1Prescaler | (sConfig->IC2Prescaler << 8U); - tmpccmr1 |= (sConfig->IC1Filter << 4U) | (sConfig->IC2Filter << 12U); - - /* Set the TI1 and the TI2 Polarities */ - tmpccer &= ~(TIM_CCER_CC1P | TIM_CCER_CC2P); - tmpccer |= sConfig->IC1Polarity | (sConfig->IC2Polarity << 4U); - - /* Write to TIMx SMCR */ - htim->Instance->SMCR = tmpsmcr; - - /* Write to TIMx CCMR1 */ - htim->Instance->CCMR1 = tmpccmr1; - - /* Write to TIMx CCER */ - htim->Instance->CCER = tmpccer; - - /* Initialize the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_READY; - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - - /* Initialize the TIM state*/ - htim->State = HAL_TIM_STATE_READY; - - return HAL_OK; -} - - -/** - * @brief DeInitializes the TIM Encoder interface - * @param htim TIM Encoder Interface handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Encoder_DeInit(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - - htim->State = HAL_TIM_STATE_BUSY; - - /* Disable the TIM Peripheral Clock */ - __HAL_TIM_DISABLE(htim); - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - if (htim->Encoder_MspDeInitCallback == NULL) - { - htim->Encoder_MspDeInitCallback = HAL_TIM_Encoder_MspDeInit; - } - /* DeInit the low level hardware */ - htim->Encoder_MspDeInitCallback(htim); -#else - /* DeInit the low level hardware: GPIO, CLOCK, NVIC */ - HAL_TIM_Encoder_MspDeInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - /* Change the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); - - /* Change TIM state */ - htim->State = HAL_TIM_STATE_RESET; - - /* Release Lock */ - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Initializes the TIM Encoder Interface MSP. - * @param htim TIM Encoder Interface handle - * @retval None - */ -__weak void HAL_TIM_Encoder_MspInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_Encoder_MspInit could be implemented in the user file - */ -} - -/** - * @brief DeInitializes TIM Encoder Interface MSP. - * @param htim TIM Encoder Interface handle - * @retval None - */ -__weak void HAL_TIM_Encoder_MspDeInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_Encoder_MspDeInit could be implemented in the user file - */ -} - -/** - * @brief Starts the TIM Encoder Interface. - * @param htim TIM Encoder Interface handle - * @param Channel TIM Channels to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Encoder_Start(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); - HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); - - /* Check the parameters */ - assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); - - /* Set the TIM channel(s) state */ - if (Channel == TIM_CHANNEL_1) - { - if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else if (Channel == TIM_CHANNEL_2) - { - if ((channel_2_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else - { - if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - - /* Enable the encoder interface channels */ - switch (Channel) - { - case TIM_CHANNEL_1: - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); - break; - } - - case TIM_CHANNEL_2: - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); - break; - } - - default : - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); - break; - } - } - /* Enable the Peripheral */ - __HAL_TIM_ENABLE(htim); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Encoder Interface. - * @param htim TIM Encoder Interface handle - * @param Channel TIM Channels to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Encoder_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); - - /* Disable the Input Capture channels 1 and 2 - (in the EncoderInterface the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) */ - switch (Channel) - { - case TIM_CHANNEL_1: - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); - break; - } - - case TIM_CHANNEL_2: - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); - break; - } - - default : - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); - break; - } - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel(s) state */ - if ((Channel == TIM_CHANNEL_1) || (Channel == TIM_CHANNEL_2)) - { - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Encoder Interface in interrupt mode. - * @param htim TIM Encoder Interface handle - * @param Channel TIM Channels to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Encoder_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); - HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); - - /* Check the parameters */ - assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); - - /* Set the TIM channel(s) state */ - if (Channel == TIM_CHANNEL_1) - { - if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else if (Channel == TIM_CHANNEL_2) - { - if ((channel_2_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else - { - if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - - /* Enable the encoder interface channels */ - /* Enable the capture compare Interrupts 1 and/or 2 */ - switch (Channel) - { - case TIM_CHANNEL_1: - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); - break; - } - - case TIM_CHANNEL_2: - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); - break; - } - - default : - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); - break; - } - } - - /* Enable the Peripheral */ - __HAL_TIM_ENABLE(htim); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Encoder Interface in interrupt mode. - * @param htim TIM Encoder Interface handle - * @param Channel TIM Channels to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Encoder_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); - - /* Disable the Input Capture channels 1 and 2 - (in the EncoderInterface the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) */ - if (Channel == TIM_CHANNEL_1) - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); - - /* Disable the capture compare Interrupts 1 */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); - } - else if (Channel == TIM_CHANNEL_2) - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); - - /* Disable the capture compare Interrupts 2 */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); - } - else - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); - - /* Disable the capture compare Interrupts 1 and 2 */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel(s) state */ - if ((Channel == TIM_CHANNEL_1) || (Channel == TIM_CHANNEL_2)) - { - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Encoder Interface in DMA mode. - * @param htim TIM Encoder Interface handle - * @param Channel TIM Channels to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected - * @param pData1 The destination Buffer address for IC1. - * @param pData2 The destination Buffer address for IC2. - * @param Length The length of data to be transferred from TIM peripheral to memory. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Encoder_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData1, - uint32_t *pData2, uint16_t Length) -{ - HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); - HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); - - /* Check the parameters */ - assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); - - /* Set the TIM channel(s) state */ - if (Channel == TIM_CHANNEL_1) - { - if ((channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY) - || (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY)) - { - return HAL_BUSY; - } - else if ((channel_1_state == HAL_TIM_CHANNEL_STATE_READY) - && (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_READY)) - { - if ((pData1 == NULL) && (Length > 0U)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else - { - return HAL_ERROR; - } - } - else if (Channel == TIM_CHANNEL_2) - { - if ((channel_2_state == HAL_TIM_CHANNEL_STATE_BUSY) - || (complementary_channel_2_state == HAL_TIM_CHANNEL_STATE_BUSY)) - { - return HAL_BUSY; - } - else if ((channel_2_state == HAL_TIM_CHANNEL_STATE_READY) - && (complementary_channel_2_state == HAL_TIM_CHANNEL_STATE_READY)) - { - if ((pData2 == NULL) && (Length > 0U)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else - { - return HAL_ERROR; - } - } - else - { - if ((channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY) - || (channel_2_state == HAL_TIM_CHANNEL_STATE_BUSY) - || (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY) - || (complementary_channel_2_state == HAL_TIM_CHANNEL_STATE_BUSY)) - { - return HAL_BUSY; - } - else if ((channel_1_state == HAL_TIM_CHANNEL_STATE_READY) - && (channel_2_state == HAL_TIM_CHANNEL_STATE_READY) - && (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_READY) - && (complementary_channel_2_state == HAL_TIM_CHANNEL_STATE_READY)) - { - if ((((pData1 == NULL) || (pData2 == NULL))) && (Length > 0U)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else - { - return HAL_ERROR; - } - } - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)&htim->Instance->CCR1, (uint32_t)pData1, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Input Capture DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); - - /* Enable the Peripheral */ - __HAL_TIM_ENABLE(htim); - - /* Enable the Capture compare channel */ - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); - break; - } - - case TIM_CHANNEL_2: - { - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError; - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)&htim->Instance->CCR2, (uint32_t)pData2, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Input Capture DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); - - /* Enable the Peripheral */ - __HAL_TIM_ENABLE(htim); - - /* Enable the Capture compare channel */ - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); - break; - } - - case TIM_CHANNEL_ALL: - { - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)&htim->Instance->CCR1, (uint32_t)pData1, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)&htim->Instance->CCR2, (uint32_t)pData2, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the Peripheral */ - __HAL_TIM_ENABLE(htim); - - /* Enable the Capture compare channel */ - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); - - /* Enable the TIM Input Capture DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); - /* Enable the TIM Input Capture DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); - break; - } - - default: - break; - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Encoder Interface in DMA mode. - * @param htim TIM Encoder Interface handle - * @param Channel TIM Channels to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_Encoder_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); - - /* Disable the Input Capture channels 1 and 2 - (in the EncoderInterface the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) */ - if (Channel == TIM_CHANNEL_1) - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); - - /* Disable the capture compare DMA Request 1 */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); - } - else if (Channel == TIM_CHANNEL_2) - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); - - /* Disable the capture compare DMA Request 2 */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); - } - else - { - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); - - /* Disable the capture compare DMA Request 1 and 2 */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); - } - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel(s) state */ - if ((Channel == TIM_CHANNEL_1) || (Channel == TIM_CHANNEL_2)) - { - TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @} - */ -/** @defgroup TIM_Exported_Functions_Group7 TIM IRQ handler management - * @brief TIM IRQ handler management - * -@verbatim - ============================================================================== - ##### IRQ handler management ##### - ============================================================================== - [..] - This section provides Timer IRQ handler function. - -@endverbatim - * @{ - */ -/** - * @brief This function handles TIM interrupts requests. - * @param htim TIM handle - * @retval None - */ -void HAL_TIM_IRQHandler(TIM_HandleTypeDef *htim) -{ - /* Capture compare 1 event */ - if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC1) != RESET) - { - if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC1) != RESET) - { - { - __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC1); - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; - - /* Input capture event */ - if ((htim->Instance->CCMR1 & TIM_CCMR1_CC1S) != 0x00U) - { -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->IC_CaptureCallback(htim); -#else - HAL_TIM_IC_CaptureCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - /* Output compare event */ - else - { -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->OC_DelayElapsedCallback(htim); - htim->PWM_PulseFinishedCallback(htim); -#else - HAL_TIM_OC_DelayElapsedCallback(htim); - HAL_TIM_PWM_PulseFinishedCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; - } - } - } - /* Capture compare 2 event */ - if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC2) != RESET) - { - if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC2) != RESET) - { - __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC2); - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; - /* Input capture event */ - if ((htim->Instance->CCMR1 & TIM_CCMR1_CC2S) != 0x00U) - { -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->IC_CaptureCallback(htim); -#else - HAL_TIM_IC_CaptureCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - /* Output compare event */ - else - { -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->OC_DelayElapsedCallback(htim); - htim->PWM_PulseFinishedCallback(htim); -#else - HAL_TIM_OC_DelayElapsedCallback(htim); - HAL_TIM_PWM_PulseFinishedCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; - } - } - /* Capture compare 3 event */ - if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC3) != RESET) - { - if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC3) != RESET) - { - __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC3); - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; - /* Input capture event */ - if ((htim->Instance->CCMR2 & TIM_CCMR2_CC3S) != 0x00U) - { -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->IC_CaptureCallback(htim); -#else - HAL_TIM_IC_CaptureCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - /* Output compare event */ - else - { -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->OC_DelayElapsedCallback(htim); - htim->PWM_PulseFinishedCallback(htim); -#else - HAL_TIM_OC_DelayElapsedCallback(htim); - HAL_TIM_PWM_PulseFinishedCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; - } - } - /* Capture compare 4 event */ - if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC4) != RESET) - { - if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC4) != RESET) - { - __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC4); - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; - /* Input capture event */ - if ((htim->Instance->CCMR2 & TIM_CCMR2_CC4S) != 0x00U) - { -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->IC_CaptureCallback(htim); -#else - HAL_TIM_IC_CaptureCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - /* Output compare event */ - else - { -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->OC_DelayElapsedCallback(htim); - htim->PWM_PulseFinishedCallback(htim); -#else - HAL_TIM_OC_DelayElapsedCallback(htim); - HAL_TIM_PWM_PulseFinishedCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; - } - } - /* TIM Update event */ - if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_UPDATE) != RESET) - { - if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_UPDATE) != RESET) - { - __HAL_TIM_CLEAR_IT(htim, TIM_IT_UPDATE); -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->PeriodElapsedCallback(htim); -#else - HAL_TIM_PeriodElapsedCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - } - /* TIM Break input event */ - if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_BREAK) != RESET) - { - if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_BREAK) != RESET) - { - __HAL_TIM_CLEAR_IT(htim, TIM_IT_BREAK); -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->BreakCallback(htim); -#else - HAL_TIMEx_BreakCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - } - /* TIM Trigger detection event */ - if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_TRIGGER) != RESET) - { - if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_TRIGGER) != RESET) - { - __HAL_TIM_CLEAR_IT(htim, TIM_IT_TRIGGER); -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->TriggerCallback(htim); -#else - HAL_TIM_TriggerCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - } - /* TIM commutation event */ - if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_COM) != RESET) - { - if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_COM) != RESET) - { - __HAL_TIM_CLEAR_IT(htim, TIM_FLAG_COM); -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->CommutationCallback(htim); -#else - HAL_TIMEx_CommutCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - } -} - -/** - * @} - */ - -/** @defgroup TIM_Exported_Functions_Group8 TIM Peripheral Control functions - * @brief TIM Peripheral Control functions - * -@verbatim - ============================================================================== - ##### Peripheral Control functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Configure The Input Output channels for OC, PWM, IC or One Pulse mode. - (+) Configure External Clock source. - (+) Configure Complementary channels, break features and dead time. - (+) Configure Master and the Slave synchronization. - (+) Configure the DMA Burst Mode. - -@endverbatim - * @{ - */ - -/** - * @brief Initializes the TIM Output Compare Channels according to the specified - * parameters in the TIM_OC_InitTypeDef. - * @param htim TIM Output Compare handle - * @param sConfig TIM Output Compare configuration structure - * @param Channel TIM Channels to configure - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OC_ConfigChannel(TIM_HandleTypeDef *htim, - TIM_OC_InitTypeDef *sConfig, - uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CHANNELS(Channel)); - assert_param(IS_TIM_OC_MODE(sConfig->OCMode)); - assert_param(IS_TIM_OC_POLARITY(sConfig->OCPolarity)); - - /* Process Locked */ - __HAL_LOCK(htim); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Check the parameters */ - assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); - - /* Configure the TIM Channel 1 in Output Compare */ - TIM_OC1_SetConfig(htim->Instance, sConfig); - break; - } - - case TIM_CHANNEL_2: - { - /* Check the parameters */ - assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); - - /* Configure the TIM Channel 2 in Output Compare */ - TIM_OC2_SetConfig(htim->Instance, sConfig); - break; - } - - case TIM_CHANNEL_3: - { - /* Check the parameters */ - assert_param(IS_TIM_CC3_INSTANCE(htim->Instance)); - - /* Configure the TIM Channel 3 in Output Compare */ - TIM_OC3_SetConfig(htim->Instance, sConfig); - break; - } - - case TIM_CHANNEL_4: - { - /* Check the parameters */ - assert_param(IS_TIM_CC4_INSTANCE(htim->Instance)); - - /* Configure the TIM Channel 4 in Output Compare */ - TIM_OC4_SetConfig(htim->Instance, sConfig); - break; - } - - default: - break; - } - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Initializes the TIM Input Capture Channels according to the specified - * parameters in the TIM_IC_InitTypeDef. - * @param htim TIM IC handle - * @param sConfig TIM Input Capture configuration structure - * @param Channel TIM Channel to configure - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_IC_ConfigChannel(TIM_HandleTypeDef *htim, TIM_IC_InitTypeDef *sConfig, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); - assert_param(IS_TIM_IC_POLARITY(sConfig->ICPolarity)); - assert_param(IS_TIM_IC_SELECTION(sConfig->ICSelection)); - assert_param(IS_TIM_IC_PRESCALER(sConfig->ICPrescaler)); - assert_param(IS_TIM_IC_FILTER(sConfig->ICFilter)); - - /* Process Locked */ - __HAL_LOCK(htim); - - if (Channel == TIM_CHANNEL_1) - { - /* TI1 Configuration */ - TIM_TI1_SetConfig(htim->Instance, - sConfig->ICPolarity, - sConfig->ICSelection, - sConfig->ICFilter); - - /* Reset the IC1PSC Bits */ - htim->Instance->CCMR1 &= ~TIM_CCMR1_IC1PSC; - - /* Set the IC1PSC value */ - htim->Instance->CCMR1 |= sConfig->ICPrescaler; - } - else if (Channel == TIM_CHANNEL_2) - { - /* TI2 Configuration */ - assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); - - TIM_TI2_SetConfig(htim->Instance, - sConfig->ICPolarity, - sConfig->ICSelection, - sConfig->ICFilter); - - /* Reset the IC2PSC Bits */ - htim->Instance->CCMR1 &= ~TIM_CCMR1_IC2PSC; - - /* Set the IC2PSC value */ - htim->Instance->CCMR1 |= (sConfig->ICPrescaler << 8U); - } - else if (Channel == TIM_CHANNEL_3) - { - /* TI3 Configuration */ - assert_param(IS_TIM_CC3_INSTANCE(htim->Instance)); - - TIM_TI3_SetConfig(htim->Instance, - sConfig->ICPolarity, - sConfig->ICSelection, - sConfig->ICFilter); - - /* Reset the IC3PSC Bits */ - htim->Instance->CCMR2 &= ~TIM_CCMR2_IC3PSC; - - /* Set the IC3PSC value */ - htim->Instance->CCMR2 |= sConfig->ICPrescaler; - } - else - { - /* TI4 Configuration */ - assert_param(IS_TIM_CC4_INSTANCE(htim->Instance)); - - TIM_TI4_SetConfig(htim->Instance, - sConfig->ICPolarity, - sConfig->ICSelection, - sConfig->ICFilter); - - /* Reset the IC4PSC Bits */ - htim->Instance->CCMR2 &= ~TIM_CCMR2_IC4PSC; - - /* Set the IC4PSC value */ - htim->Instance->CCMR2 |= (sConfig->ICPrescaler << 8U); - } - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Initializes the TIM PWM channels according to the specified - * parameters in the TIM_OC_InitTypeDef. - * @param htim TIM PWM handle - * @param sConfig TIM PWM configuration structure - * @param Channel TIM Channels to be configured - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_PWM_ConfigChannel(TIM_HandleTypeDef *htim, - TIM_OC_InitTypeDef *sConfig, - uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CHANNELS(Channel)); - assert_param(IS_TIM_PWM_MODE(sConfig->OCMode)); - assert_param(IS_TIM_OC_POLARITY(sConfig->OCPolarity)); - assert_param(IS_TIM_FAST_STATE(sConfig->OCFastMode)); - - /* Process Locked */ - __HAL_LOCK(htim); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Check the parameters */ - assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); - - /* Configure the Channel 1 in PWM mode */ - TIM_OC1_SetConfig(htim->Instance, sConfig); - - /* Set the Preload enable bit for channel1 */ - htim->Instance->CCMR1 |= TIM_CCMR1_OC1PE; - - /* Configure the Output Fast mode */ - htim->Instance->CCMR1 &= ~TIM_CCMR1_OC1FE; - htim->Instance->CCMR1 |= sConfig->OCFastMode; - break; - } - - case TIM_CHANNEL_2: - { - /* Check the parameters */ - assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); - - /* Configure the Channel 2 in PWM mode */ - TIM_OC2_SetConfig(htim->Instance, sConfig); - - /* Set the Preload enable bit for channel2 */ - htim->Instance->CCMR1 |= TIM_CCMR1_OC2PE; - - /* Configure the Output Fast mode */ - htim->Instance->CCMR1 &= ~TIM_CCMR1_OC2FE; - htim->Instance->CCMR1 |= sConfig->OCFastMode << 8U; - break; - } - - case TIM_CHANNEL_3: - { - /* Check the parameters */ - assert_param(IS_TIM_CC3_INSTANCE(htim->Instance)); - - /* Configure the Channel 3 in PWM mode */ - TIM_OC3_SetConfig(htim->Instance, sConfig); - - /* Set the Preload enable bit for channel3 */ - htim->Instance->CCMR2 |= TIM_CCMR2_OC3PE; - - /* Configure the Output Fast mode */ - htim->Instance->CCMR2 &= ~TIM_CCMR2_OC3FE; - htim->Instance->CCMR2 |= sConfig->OCFastMode; - break; - } - - case TIM_CHANNEL_4: - { - /* Check the parameters */ - assert_param(IS_TIM_CC4_INSTANCE(htim->Instance)); - - /* Configure the Channel 4 in PWM mode */ - TIM_OC4_SetConfig(htim->Instance, sConfig); - - /* Set the Preload enable bit for channel4 */ - htim->Instance->CCMR2 |= TIM_CCMR2_OC4PE; - - /* Configure the Output Fast mode */ - htim->Instance->CCMR2 &= ~TIM_CCMR2_OC4FE; - htim->Instance->CCMR2 |= sConfig->OCFastMode << 8U; - break; - } - - default: - break; - } - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Initializes the TIM One Pulse Channels according to the specified - * parameters in the TIM_OnePulse_InitTypeDef. - * @param htim TIM One Pulse handle - * @param sConfig TIM One Pulse configuration structure - * @param OutputChannel TIM output channel to configure - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @param InputChannel TIM input Channel to configure - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @note To output a waveform with a minimum delay user can enable the fast - * mode by calling the @ref __HAL_TIM_ENABLE_OCxFAST macro. Then CCx - * output is forced in response to the edge detection on TIx input, - * without taking in account the comparison. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_OnePulse_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OnePulse_InitTypeDef *sConfig, - uint32_t OutputChannel, uint32_t InputChannel) -{ - TIM_OC_InitTypeDef temp1; - - /* Check the parameters */ - assert_param(IS_TIM_OPM_CHANNELS(OutputChannel)); - assert_param(IS_TIM_OPM_CHANNELS(InputChannel)); - - if (OutputChannel != InputChannel) - { - /* Process Locked */ - __HAL_LOCK(htim); - - htim->State = HAL_TIM_STATE_BUSY; - - /* Extract the Output compare configuration from sConfig structure */ - temp1.OCMode = sConfig->OCMode; - temp1.Pulse = sConfig->Pulse; - temp1.OCPolarity = sConfig->OCPolarity; - temp1.OCNPolarity = sConfig->OCNPolarity; - temp1.OCIdleState = sConfig->OCIdleState; - temp1.OCNIdleState = sConfig->OCNIdleState; - - switch (OutputChannel) - { - case TIM_CHANNEL_1: - { - assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); - - TIM_OC1_SetConfig(htim->Instance, &temp1); - break; - } - case TIM_CHANNEL_2: - { - assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); - - TIM_OC2_SetConfig(htim->Instance, &temp1); - break; - } - default: - break; - } - - switch (InputChannel) - { - case TIM_CHANNEL_1: - { - assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); - - TIM_TI1_SetConfig(htim->Instance, sConfig->ICPolarity, - sConfig->ICSelection, sConfig->ICFilter); - - /* Reset the IC1PSC Bits */ - htim->Instance->CCMR1 &= ~TIM_CCMR1_IC1PSC; - - /* Select the Trigger source */ - htim->Instance->SMCR &= ~TIM_SMCR_TS; - htim->Instance->SMCR |= TIM_TS_TI1FP1; - - /* Select the Slave Mode */ - htim->Instance->SMCR &= ~TIM_SMCR_SMS; - htim->Instance->SMCR |= TIM_SLAVEMODE_TRIGGER; - break; - } - case TIM_CHANNEL_2: - { - assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); - - TIM_TI2_SetConfig(htim->Instance, sConfig->ICPolarity, - sConfig->ICSelection, sConfig->ICFilter); - - /* Reset the IC2PSC Bits */ - htim->Instance->CCMR1 &= ~TIM_CCMR1_IC2PSC; - - /* Select the Trigger source */ - htim->Instance->SMCR &= ~TIM_SMCR_TS; - htim->Instance->SMCR |= TIM_TS_TI2FP2; - - /* Select the Slave Mode */ - htim->Instance->SMCR &= ~TIM_SMCR_SMS; - htim->Instance->SMCR |= TIM_SLAVEMODE_TRIGGER; - break; - } - - default: - break; - } - - htim->State = HAL_TIM_STATE_READY; - - __HAL_UNLOCK(htim); - - return HAL_OK; - } - else - { - return HAL_ERROR; - } -} - -/** - * @brief Configure the DMA Burst to transfer Data from the memory to the TIM peripheral - * @param htim TIM handle - * @param BurstBaseAddress TIM Base address from where the DMA will start the Data write - * This parameter can be one of the following values: - * @arg TIM_DMABASE_CR1 - * @arg TIM_DMABASE_CR2 - * @arg TIM_DMABASE_SMCR - * @arg TIM_DMABASE_DIER - * @arg TIM_DMABASE_SR - * @arg TIM_DMABASE_EGR - * @arg TIM_DMABASE_CCMR1 - * @arg TIM_DMABASE_CCMR2 - * @arg TIM_DMABASE_CCER - * @arg TIM_DMABASE_CNT - * @arg TIM_DMABASE_PSC - * @arg TIM_DMABASE_ARR - * @arg TIM_DMABASE_RCR - * @arg TIM_DMABASE_CCR1 - * @arg TIM_DMABASE_CCR2 - * @arg TIM_DMABASE_CCR3 - * @arg TIM_DMABASE_CCR4 - * @arg TIM_DMABASE_BDTR - * @param BurstRequestSrc TIM DMA Request sources - * This parameter can be one of the following values: - * @arg TIM_DMA_UPDATE: TIM update Interrupt source - * @arg TIM_DMA_CC1: TIM Capture Compare 1 DMA source - * @arg TIM_DMA_CC2: TIM Capture Compare 2 DMA source - * @arg TIM_DMA_CC3: TIM Capture Compare 3 DMA source - * @arg TIM_DMA_CC4: TIM Capture Compare 4 DMA source - * @arg TIM_DMA_COM: TIM Commutation DMA source - * @arg TIM_DMA_TRIGGER: TIM Trigger DMA source - * @param BurstBuffer The Buffer address. - * @param BurstLength DMA Burst length. This parameter can be one value - * between: TIM_DMABURSTLENGTH_1TRANSFER and TIM_DMABURSTLENGTH_18TRANSFERS. - * @note This function should be used only when BurstLength is equal to DMA data transfer length. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_DMABurst_WriteStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, - uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength) -{ - return HAL_TIM_DMABurst_MultiWriteStart(htim, BurstBaseAddress, BurstRequestSrc, BurstBuffer, BurstLength, - ((BurstLength) >> 8U) + 1U); -} - -/** - * @brief Configure the DMA Burst to transfer multiple Data from the memory to the TIM peripheral - * @param htim TIM handle - * @param BurstBaseAddress TIM Base address from where the DMA will start the Data write - * This parameter can be one of the following values: - * @arg TIM_DMABASE_CR1 - * @arg TIM_DMABASE_CR2 - * @arg TIM_DMABASE_SMCR - * @arg TIM_DMABASE_DIER - * @arg TIM_DMABASE_SR - * @arg TIM_DMABASE_EGR - * @arg TIM_DMABASE_CCMR1 - * @arg TIM_DMABASE_CCMR2 - * @arg TIM_DMABASE_CCER - * @arg TIM_DMABASE_CNT - * @arg TIM_DMABASE_PSC - * @arg TIM_DMABASE_ARR - * @arg TIM_DMABASE_RCR - * @arg TIM_DMABASE_CCR1 - * @arg TIM_DMABASE_CCR2 - * @arg TIM_DMABASE_CCR3 - * @arg TIM_DMABASE_CCR4 - * @arg TIM_DMABASE_BDTR - * @param BurstRequestSrc TIM DMA Request sources - * This parameter can be one of the following values: - * @arg TIM_DMA_UPDATE: TIM update Interrupt source - * @arg TIM_DMA_CC1: TIM Capture Compare 1 DMA source - * @arg TIM_DMA_CC2: TIM Capture Compare 2 DMA source - * @arg TIM_DMA_CC3: TIM Capture Compare 3 DMA source - * @arg TIM_DMA_CC4: TIM Capture Compare 4 DMA source - * @arg TIM_DMA_COM: TIM Commutation DMA source - * @arg TIM_DMA_TRIGGER: TIM Trigger DMA source - * @param BurstBuffer The Buffer address. - * @param BurstLength DMA Burst length. This parameter can be one value - * between: TIM_DMABURSTLENGTH_1TRANSFER and TIM_DMABURSTLENGTH_18TRANSFERS. - * @param DataLength Data length. This parameter can be one value - * between 1 and 0xFFFF. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_DMABurst_MultiWriteStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, - uint32_t BurstRequestSrc, uint32_t *BurstBuffer, - uint32_t BurstLength, uint32_t DataLength) -{ - /* Check the parameters */ - assert_param(IS_TIM_DMABURST_INSTANCE(htim->Instance)); - assert_param(IS_TIM_DMA_BASE(BurstBaseAddress)); - assert_param(IS_TIM_DMA_SOURCE(BurstRequestSrc)); - assert_param(IS_TIM_DMA_LENGTH(BurstLength)); - assert_param(IS_TIM_DMA_DATA_LENGTH(DataLength)); - - if (htim->DMABurstState == HAL_DMA_BURST_STATE_BUSY) - { - return HAL_BUSY; - } - else if (htim->DMABurstState == HAL_DMA_BURST_STATE_READY) - { - if ((BurstBuffer == NULL) && (BurstLength > 0U)) - { - return HAL_ERROR; - } - else - { - htim->DMABurstState = HAL_DMA_BURST_STATE_BUSY; - } - } - else - { - /* nothing to do */ - } - switch (BurstRequestSrc) - { - case TIM_DMA_UPDATE: - { - /* Set the DMA Period elapsed callbacks */ - htim->hdma[TIM_DMA_ID_UPDATE]->XferCpltCallback = TIM_DMAPeriodElapsedCplt; - htim->hdma[TIM_DMA_ID_UPDATE]->XferHalfCpltCallback = TIM_DMAPeriodElapsedHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_UPDATE]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_UPDATE], (uint32_t)BurstBuffer, - (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_CC1: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)BurstBuffer, - (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_CC2: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)BurstBuffer, - (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_CC3: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)BurstBuffer, - (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_CC4: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC4]->XferCpltCallback = TIM_DMADelayPulseCplt; - htim->hdma[TIM_DMA_ID_CC4]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC4]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC4], (uint32_t)BurstBuffer, - (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_COM: - { - /* Set the DMA commutation callbacks */ - htim->hdma[TIM_DMA_ID_COMMUTATION]->XferCpltCallback = TIMEx_DMACommutationCplt; - htim->hdma[TIM_DMA_ID_COMMUTATION]->XferHalfCpltCallback = TIMEx_DMACommutationHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_COMMUTATION]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_COMMUTATION], (uint32_t)BurstBuffer, - (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_TRIGGER: - { - /* Set the DMA trigger callbacks */ - htim->hdma[TIM_DMA_ID_TRIGGER]->XferCpltCallback = TIM_DMATriggerCplt; - htim->hdma[TIM_DMA_ID_TRIGGER]->XferHalfCpltCallback = TIM_DMATriggerHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_TRIGGER]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_TRIGGER], (uint32_t)BurstBuffer, - (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - default: - break; - } - - /* Configure the DMA Burst Mode */ - htim->Instance->DCR = (BurstBaseAddress | BurstLength); - /* Enable the TIM DMA Request */ - __HAL_TIM_ENABLE_DMA(htim, BurstRequestSrc); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM DMA Burst mode - * @param htim TIM handle - * @param BurstRequestSrc TIM DMA Request sources to disable - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_DMABurst_WriteStop(TIM_HandleTypeDef *htim, uint32_t BurstRequestSrc) -{ - /* Check the parameters */ - assert_param(IS_TIM_DMA_SOURCE(BurstRequestSrc)); - - /* Abort the DMA transfer (at least disable the DMA channel) */ - switch (BurstRequestSrc) - { - case TIM_DMA_UPDATE: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_UPDATE]); - break; - } - case TIM_DMA_CC1: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); - break; - } - case TIM_DMA_CC2: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); - break; - } - case TIM_DMA_CC3: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); - break; - } - case TIM_DMA_CC4: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC4]); - break; - } - case TIM_DMA_COM: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_COMMUTATION]); - break; - } - case TIM_DMA_TRIGGER: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_TRIGGER]); - break; - } - default: - break; - } - - /* Disable the TIM Update DMA request */ - __HAL_TIM_DISABLE_DMA(htim, BurstRequestSrc); - - /* Change the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_READY; - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Configure the DMA Burst to transfer Data from the TIM peripheral to the memory - * @param htim TIM handle - * @param BurstBaseAddress TIM Base address from where the DMA will start the Data read - * This parameter can be one of the following values: - * @arg TIM_DMABASE_CR1 - * @arg TIM_DMABASE_CR2 - * @arg TIM_DMABASE_SMCR - * @arg TIM_DMABASE_DIER - * @arg TIM_DMABASE_SR - * @arg TIM_DMABASE_EGR - * @arg TIM_DMABASE_CCMR1 - * @arg TIM_DMABASE_CCMR2 - * @arg TIM_DMABASE_CCER - * @arg TIM_DMABASE_CNT - * @arg TIM_DMABASE_PSC - * @arg TIM_DMABASE_ARR - * @arg TIM_DMABASE_RCR - * @arg TIM_DMABASE_CCR1 - * @arg TIM_DMABASE_CCR2 - * @arg TIM_DMABASE_CCR3 - * @arg TIM_DMABASE_CCR4 - * @arg TIM_DMABASE_BDTR - * @param BurstRequestSrc TIM DMA Request sources - * This parameter can be one of the following values: - * @arg TIM_DMA_UPDATE: TIM update Interrupt source - * @arg TIM_DMA_CC1: TIM Capture Compare 1 DMA source - * @arg TIM_DMA_CC2: TIM Capture Compare 2 DMA source - * @arg TIM_DMA_CC3: TIM Capture Compare 3 DMA source - * @arg TIM_DMA_CC4: TIM Capture Compare 4 DMA source - * @arg TIM_DMA_COM: TIM Commutation DMA source - * @arg TIM_DMA_TRIGGER: TIM Trigger DMA source - * @param BurstBuffer The Buffer address. - * @param BurstLength DMA Burst length. This parameter can be one value - * between: TIM_DMABURSTLENGTH_1TRANSFER and TIM_DMABURSTLENGTH_18TRANSFERS. - * @note This function should be used only when BurstLength is equal to DMA data transfer length. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_DMABurst_ReadStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, - uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength) -{ - return HAL_TIM_DMABurst_MultiReadStart(htim, BurstBaseAddress, BurstRequestSrc, BurstBuffer, BurstLength, - ((BurstLength) >> 8U) + 1U); -} - -/** - * @brief Configure the DMA Burst to transfer Data from the TIM peripheral to the memory - * @param htim TIM handle - * @param BurstBaseAddress TIM Base address from where the DMA will start the Data read - * This parameter can be one of the following values: - * @arg TIM_DMABASE_CR1 - * @arg TIM_DMABASE_CR2 - * @arg TIM_DMABASE_SMCR - * @arg TIM_DMABASE_DIER - * @arg TIM_DMABASE_SR - * @arg TIM_DMABASE_EGR - * @arg TIM_DMABASE_CCMR1 - * @arg TIM_DMABASE_CCMR2 - * @arg TIM_DMABASE_CCER - * @arg TIM_DMABASE_CNT - * @arg TIM_DMABASE_PSC - * @arg TIM_DMABASE_ARR - * @arg TIM_DMABASE_RCR - * @arg TIM_DMABASE_CCR1 - * @arg TIM_DMABASE_CCR2 - * @arg TIM_DMABASE_CCR3 - * @arg TIM_DMABASE_CCR4 - * @arg TIM_DMABASE_BDTR - * @param BurstRequestSrc TIM DMA Request sources - * This parameter can be one of the following values: - * @arg TIM_DMA_UPDATE: TIM update Interrupt source - * @arg TIM_DMA_CC1: TIM Capture Compare 1 DMA source - * @arg TIM_DMA_CC2: TIM Capture Compare 2 DMA source - * @arg TIM_DMA_CC3: TIM Capture Compare 3 DMA source - * @arg TIM_DMA_CC4: TIM Capture Compare 4 DMA source - * @arg TIM_DMA_COM: TIM Commutation DMA source - * @arg TIM_DMA_TRIGGER: TIM Trigger DMA source - * @param BurstBuffer The Buffer address. - * @param BurstLength DMA Burst length. This parameter can be one value - * between: TIM_DMABURSTLENGTH_1TRANSFER and TIM_DMABURSTLENGTH_18TRANSFERS. - * @param DataLength Data length. This parameter can be one value - * between 1 and 0xFFFF. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_DMABurst_MultiReadStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, - uint32_t BurstRequestSrc, uint32_t *BurstBuffer, - uint32_t BurstLength, uint32_t DataLength) -{ - /* Check the parameters */ - assert_param(IS_TIM_DMABURST_INSTANCE(htim->Instance)); - assert_param(IS_TIM_DMA_BASE(BurstBaseAddress)); - assert_param(IS_TIM_DMA_SOURCE(BurstRequestSrc)); - assert_param(IS_TIM_DMA_LENGTH(BurstLength)); - assert_param(IS_TIM_DMA_DATA_LENGTH(DataLength)); - - if (htim->DMABurstState == HAL_DMA_BURST_STATE_BUSY) - { - return HAL_BUSY; - } - else if (htim->DMABurstState == HAL_DMA_BURST_STATE_READY) - { - if ((BurstBuffer == NULL) && (BurstLength > 0U)) - { - return HAL_ERROR; - } - else - { - htim->DMABurstState = HAL_DMA_BURST_STATE_BUSY; - } - } - else - { - /* nothing to do */ - } - switch (BurstRequestSrc) - { - case TIM_DMA_UPDATE: - { - /* Set the DMA Period elapsed callbacks */ - htim->hdma[TIM_DMA_ID_UPDATE]->XferCpltCallback = TIM_DMAPeriodElapsedCplt; - htim->hdma[TIM_DMA_ID_UPDATE]->XferHalfCpltCallback = TIM_DMAPeriodElapsedHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_UPDATE]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_UPDATE], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, - DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_CC1: - { - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, - DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_CC2: - { - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, - DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_CC3: - { - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, - DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_CC4: - { - /* Set the DMA capture callbacks */ - htim->hdma[TIM_DMA_ID_CC4]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC4]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC4]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC4], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, - DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_COM: - { - /* Set the DMA commutation callbacks */ - htim->hdma[TIM_DMA_ID_COMMUTATION]->XferCpltCallback = TIMEx_DMACommutationCplt; - htim->hdma[TIM_DMA_ID_COMMUTATION]->XferHalfCpltCallback = TIMEx_DMACommutationHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_COMMUTATION]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_COMMUTATION], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, - DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - case TIM_DMA_TRIGGER: - { - /* Set the DMA trigger callbacks */ - htim->hdma[TIM_DMA_ID_TRIGGER]->XferCpltCallback = TIM_DMATriggerCplt; - htim->hdma[TIM_DMA_ID_TRIGGER]->XferHalfCpltCallback = TIM_DMATriggerHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_TRIGGER]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_TRIGGER], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, - DataLength) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - break; - } - default: - break; - } - - /* Configure the DMA Burst Mode */ - htim->Instance->DCR = (BurstBaseAddress | BurstLength); - - /* Enable the TIM DMA Request */ - __HAL_TIM_ENABLE_DMA(htim, BurstRequestSrc); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stop the DMA burst reading - * @param htim TIM handle - * @param BurstRequestSrc TIM DMA Request sources to disable. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_DMABurst_ReadStop(TIM_HandleTypeDef *htim, uint32_t BurstRequestSrc) -{ - /* Check the parameters */ - assert_param(IS_TIM_DMA_SOURCE(BurstRequestSrc)); - - /* Abort the DMA transfer (at least disable the DMA channel) */ - switch (BurstRequestSrc) - { - case TIM_DMA_UPDATE: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_UPDATE]); - break; - } - case TIM_DMA_CC1: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); - break; - } - case TIM_DMA_CC2: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); - break; - } - case TIM_DMA_CC3: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); - break; - } - case TIM_DMA_CC4: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC4]); - break; - } - case TIM_DMA_COM: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_COMMUTATION]); - break; - } - case TIM_DMA_TRIGGER: - { - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_TRIGGER]); - break; - } - default: - break; - } - - /* Disable the TIM Update DMA request */ - __HAL_TIM_DISABLE_DMA(htim, BurstRequestSrc); - - /* Change the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_READY; - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Generate a software event - * @param htim TIM handle - * @param EventSource specifies the event source. - * This parameter can be one of the following values: - * @arg TIM_EVENTSOURCE_UPDATE: Timer update Event source - * @arg TIM_EVENTSOURCE_CC1: Timer Capture Compare 1 Event source - * @arg TIM_EVENTSOURCE_CC2: Timer Capture Compare 2 Event source - * @arg TIM_EVENTSOURCE_CC3: Timer Capture Compare 3 Event source - * @arg TIM_EVENTSOURCE_CC4: Timer Capture Compare 4 Event source - * @arg TIM_EVENTSOURCE_COM: Timer COM event source - * @arg TIM_EVENTSOURCE_TRIGGER: Timer Trigger Event source - * @arg TIM_EVENTSOURCE_BREAK: Timer Break event source - * @note Basic timers can only generate an update event. - * @note TIM_EVENTSOURCE_COM is relevant only with advanced timer instances. - * @note TIM_EVENTSOURCE_BREAK are relevant only for timer instances - * supporting a break input. - * @retval HAL status - */ - -HAL_StatusTypeDef HAL_TIM_GenerateEvent(TIM_HandleTypeDef *htim, uint32_t EventSource) -{ - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - assert_param(IS_TIM_EVENT_SOURCE(EventSource)); - - /* Process Locked */ - __HAL_LOCK(htim); - - /* Change the TIM state */ - htim->State = HAL_TIM_STATE_BUSY; - - /* Set the event sources */ - htim->Instance->EGR = EventSource; - - /* Change the TIM state */ - htim->State = HAL_TIM_STATE_READY; - - __HAL_UNLOCK(htim); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Configures the OCRef clear feature - * @param htim TIM handle - * @param sClearInputConfig pointer to a TIM_ClearInputConfigTypeDef structure that - * contains the OCREF clear feature and parameters for the TIM peripheral. - * @param Channel specifies the TIM Channel - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 - * @arg TIM_CHANNEL_2: TIM Channel 2 - * @arg TIM_CHANNEL_3: TIM Channel 3 - * @arg TIM_CHANNEL_4: TIM Channel 4 - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_ConfigOCrefClear(TIM_HandleTypeDef *htim, - TIM_ClearInputConfigTypeDef *sClearInputConfig, - uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_OCXREF_CLEAR_INSTANCE(htim->Instance)); - assert_param(IS_TIM_CLEARINPUT_SOURCE(sClearInputConfig->ClearInputSource)); - - /* Process Locked */ - __HAL_LOCK(htim); - - htim->State = HAL_TIM_STATE_BUSY; - - switch (sClearInputConfig->ClearInputSource) - { - case TIM_CLEARINPUTSOURCE_NONE: - { - /* Clear the OCREF clear selection bit and the the ETR Bits */ - CLEAR_BIT(htim->Instance->SMCR, (TIM_SMCR_ETF | TIM_SMCR_ETPS | TIM_SMCR_ECE | TIM_SMCR_ETP)); - break; - } - - case TIM_CLEARINPUTSOURCE_ETR: - { - /* Check the parameters */ - assert_param(IS_TIM_CLEARINPUT_POLARITY(sClearInputConfig->ClearInputPolarity)); - assert_param(IS_TIM_CLEARINPUT_PRESCALER(sClearInputConfig->ClearInputPrescaler)); - assert_param(IS_TIM_CLEARINPUT_FILTER(sClearInputConfig->ClearInputFilter)); - - /* When OCRef clear feature is used with ETR source, ETR prescaler must be off */ - if (sClearInputConfig->ClearInputPrescaler != TIM_CLEARINPUTPRESCALER_DIV1) - { - htim->State = HAL_TIM_STATE_READY; - __HAL_UNLOCK(htim); - return HAL_ERROR; - } - - TIM_ETR_SetConfig(htim->Instance, - sClearInputConfig->ClearInputPrescaler, - sClearInputConfig->ClearInputPolarity, - sClearInputConfig->ClearInputFilter); - break; - } - - default: - break; - } - - switch (Channel) - { - case TIM_CHANNEL_1: - { - if (sClearInputConfig->ClearInputState != (uint32_t)DISABLE) - { - /* Enable the OCREF clear feature for Channel 1 */ - SET_BIT(htim->Instance->CCMR1, TIM_CCMR1_OC1CE); - } - else - { - /* Disable the OCREF clear feature for Channel 1 */ - CLEAR_BIT(htim->Instance->CCMR1, TIM_CCMR1_OC1CE); - } - break; - } - case TIM_CHANNEL_2: - { - if (sClearInputConfig->ClearInputState != (uint32_t)DISABLE) - { - /* Enable the OCREF clear feature for Channel 2 */ - SET_BIT(htim->Instance->CCMR1, TIM_CCMR1_OC2CE); - } - else - { - /* Disable the OCREF clear feature for Channel 2 */ - CLEAR_BIT(htim->Instance->CCMR1, TIM_CCMR1_OC2CE); - } - break; - } - case TIM_CHANNEL_3: - { - if (sClearInputConfig->ClearInputState != (uint32_t)DISABLE) - { - /* Enable the OCREF clear feature for Channel 3 */ - SET_BIT(htim->Instance->CCMR2, TIM_CCMR2_OC3CE); - } - else - { - /* Disable the OCREF clear feature for Channel 3 */ - CLEAR_BIT(htim->Instance->CCMR2, TIM_CCMR2_OC3CE); - } - break; - } - case TIM_CHANNEL_4: - { - if (sClearInputConfig->ClearInputState != (uint32_t)DISABLE) - { - /* Enable the OCREF clear feature for Channel 4 */ - SET_BIT(htim->Instance->CCMR2, TIM_CCMR2_OC4CE); - } - else - { - /* Disable the OCREF clear feature for Channel 4 */ - CLEAR_BIT(htim->Instance->CCMR2, TIM_CCMR2_OC4CE); - } - break; - } - default: - break; - } - - htim->State = HAL_TIM_STATE_READY; - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Configures the clock source to be used - * @param htim TIM handle - * @param sClockSourceConfig pointer to a TIM_ClockConfigTypeDef structure that - * contains the clock source information for the TIM peripheral. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_ConfigClockSource(TIM_HandleTypeDef *htim, TIM_ClockConfigTypeDef *sClockSourceConfig) -{ - uint32_t tmpsmcr; - - /* Process Locked */ - __HAL_LOCK(htim); - - htim->State = HAL_TIM_STATE_BUSY; - - /* Check the parameters */ - assert_param(IS_TIM_CLOCKSOURCE(sClockSourceConfig->ClockSource)); - - /* Reset the SMS, TS, ECE, ETPS and ETRF bits */ - tmpsmcr = htim->Instance->SMCR; - tmpsmcr &= ~(TIM_SMCR_SMS | TIM_SMCR_TS); - tmpsmcr &= ~(TIM_SMCR_ETF | TIM_SMCR_ETPS | TIM_SMCR_ECE | TIM_SMCR_ETP); - htim->Instance->SMCR = tmpsmcr; - - switch (sClockSourceConfig->ClockSource) - { - case TIM_CLOCKSOURCE_INTERNAL: - { - assert_param(IS_TIM_INSTANCE(htim->Instance)); - break; - } - - case TIM_CLOCKSOURCE_ETRMODE1: - { - /* Check whether or not the timer instance supports external trigger input mode 1 (ETRF)*/ - assert_param(IS_TIM_CLOCKSOURCE_ETRMODE1_INSTANCE(htim->Instance)); - - /* Check ETR input conditioning related parameters */ - assert_param(IS_TIM_CLOCKPRESCALER(sClockSourceConfig->ClockPrescaler)); - assert_param(IS_TIM_CLOCKPOLARITY(sClockSourceConfig->ClockPolarity)); - assert_param(IS_TIM_CLOCKFILTER(sClockSourceConfig->ClockFilter)); - - /* Configure the ETR Clock source */ - TIM_ETR_SetConfig(htim->Instance, - sClockSourceConfig->ClockPrescaler, - sClockSourceConfig->ClockPolarity, - sClockSourceConfig->ClockFilter); - - /* Select the External clock mode1 and the ETRF trigger */ - tmpsmcr = htim->Instance->SMCR; - tmpsmcr |= (TIM_SLAVEMODE_EXTERNAL1 | TIM_CLOCKSOURCE_ETRMODE1); - /* Write to TIMx SMCR */ - htim->Instance->SMCR = tmpsmcr; - break; - } - - case TIM_CLOCKSOURCE_ETRMODE2: - { - /* Check whether or not the timer instance supports external trigger input mode 2 (ETRF)*/ - assert_param(IS_TIM_CLOCKSOURCE_ETRMODE2_INSTANCE(htim->Instance)); - - /* Check ETR input conditioning related parameters */ - assert_param(IS_TIM_CLOCKPRESCALER(sClockSourceConfig->ClockPrescaler)); - assert_param(IS_TIM_CLOCKPOLARITY(sClockSourceConfig->ClockPolarity)); - assert_param(IS_TIM_CLOCKFILTER(sClockSourceConfig->ClockFilter)); - - /* Configure the ETR Clock source */ - TIM_ETR_SetConfig(htim->Instance, - sClockSourceConfig->ClockPrescaler, - sClockSourceConfig->ClockPolarity, - sClockSourceConfig->ClockFilter); - /* Enable the External clock mode2 */ - htim->Instance->SMCR |= TIM_SMCR_ECE; - break; - } - - case TIM_CLOCKSOURCE_TI1: - { - /* Check whether or not the timer instance supports external clock mode 1 */ - assert_param(IS_TIM_CLOCKSOURCE_TIX_INSTANCE(htim->Instance)); - - /* Check TI1 input conditioning related parameters */ - assert_param(IS_TIM_CLOCKPOLARITY(sClockSourceConfig->ClockPolarity)); - assert_param(IS_TIM_CLOCKFILTER(sClockSourceConfig->ClockFilter)); - - TIM_TI1_ConfigInputStage(htim->Instance, - sClockSourceConfig->ClockPolarity, - sClockSourceConfig->ClockFilter); - TIM_ITRx_SetConfig(htim->Instance, TIM_CLOCKSOURCE_TI1); - break; - } - - case TIM_CLOCKSOURCE_TI2: - { - /* Check whether or not the timer instance supports external clock mode 1 (ETRF)*/ - assert_param(IS_TIM_CLOCKSOURCE_TIX_INSTANCE(htim->Instance)); - - /* Check TI2 input conditioning related parameters */ - assert_param(IS_TIM_CLOCKPOLARITY(sClockSourceConfig->ClockPolarity)); - assert_param(IS_TIM_CLOCKFILTER(sClockSourceConfig->ClockFilter)); - - TIM_TI2_ConfigInputStage(htim->Instance, - sClockSourceConfig->ClockPolarity, - sClockSourceConfig->ClockFilter); - TIM_ITRx_SetConfig(htim->Instance, TIM_CLOCKSOURCE_TI2); - break; - } - - case TIM_CLOCKSOURCE_TI1ED: - { - /* Check whether or not the timer instance supports external clock mode 1 */ - assert_param(IS_TIM_CLOCKSOURCE_TIX_INSTANCE(htim->Instance)); - - /* Check TI1 input conditioning related parameters */ - assert_param(IS_TIM_CLOCKPOLARITY(sClockSourceConfig->ClockPolarity)); - assert_param(IS_TIM_CLOCKFILTER(sClockSourceConfig->ClockFilter)); - - TIM_TI1_ConfigInputStage(htim->Instance, - sClockSourceConfig->ClockPolarity, - sClockSourceConfig->ClockFilter); - TIM_ITRx_SetConfig(htim->Instance, TIM_CLOCKSOURCE_TI1ED); - break; - } - - case TIM_CLOCKSOURCE_ITR0: - case TIM_CLOCKSOURCE_ITR1: - case TIM_CLOCKSOURCE_ITR2: - case TIM_CLOCKSOURCE_ITR3: - { - /* Check whether or not the timer instance supports internal trigger input */ - assert_param(IS_TIM_CLOCKSOURCE_ITRX_INSTANCE(htim->Instance)); - - TIM_ITRx_SetConfig(htim->Instance, sClockSourceConfig->ClockSource); - break; - } - - default: - break; - } - htim->State = HAL_TIM_STATE_READY; - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Selects the signal connected to the TI1 input: direct from CH1_input - * or a XOR combination between CH1_input, CH2_input & CH3_input - * @param htim TIM handle. - * @param TI1_Selection Indicate whether or not channel 1 is connected to the - * output of a XOR gate. - * This parameter can be one of the following values: - * @arg TIM_TI1SELECTION_CH1: The TIMx_CH1 pin is connected to TI1 input - * @arg TIM_TI1SELECTION_XORCOMBINATION: The TIMx_CH1, CH2 and CH3 - * pins are connected to the TI1 input (XOR combination) - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_ConfigTI1Input(TIM_HandleTypeDef *htim, uint32_t TI1_Selection) -{ - uint32_t tmpcr2; - - /* Check the parameters */ - assert_param(IS_TIM_XOR_INSTANCE(htim->Instance)); - assert_param(IS_TIM_TI1SELECTION(TI1_Selection)); - - /* Get the TIMx CR2 register value */ - tmpcr2 = htim->Instance->CR2; - - /* Reset the TI1 selection */ - tmpcr2 &= ~TIM_CR2_TI1S; - - /* Set the TI1 selection */ - tmpcr2 |= TI1_Selection; - - /* Write to TIMxCR2 */ - htim->Instance->CR2 = tmpcr2; - - return HAL_OK; -} - -/** - * @brief Configures the TIM in Slave mode - * @param htim TIM handle. - * @param sSlaveConfig pointer to a TIM_SlaveConfigTypeDef structure that - * contains the selected trigger (internal trigger input, filtered - * timer input or external trigger input) and the Slave mode - * (Disable, Reset, Gated, Trigger, External clock mode 1). - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_SlaveConfigSynchro(TIM_HandleTypeDef *htim, TIM_SlaveConfigTypeDef *sSlaveConfig) -{ - /* Check the parameters */ - assert_param(IS_TIM_SLAVE_INSTANCE(htim->Instance)); - assert_param(IS_TIM_SLAVE_MODE(sSlaveConfig->SlaveMode)); - assert_param(IS_TIM_TRIGGER_SELECTION(sSlaveConfig->InputTrigger)); - - __HAL_LOCK(htim); - - htim->State = HAL_TIM_STATE_BUSY; - - if (TIM_SlaveTimer_SetConfig(htim, sSlaveConfig) != HAL_OK) - { - htim->State = HAL_TIM_STATE_READY; - __HAL_UNLOCK(htim); - return HAL_ERROR; - } - - /* Disable Trigger Interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_TRIGGER); - - /* Disable Trigger DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_TRIGGER); - - htim->State = HAL_TIM_STATE_READY; - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Configures the TIM in Slave mode in interrupt mode - * @param htim TIM handle. - * @param sSlaveConfig pointer to a TIM_SlaveConfigTypeDef structure that - * contains the selected trigger (internal trigger input, filtered - * timer input or external trigger input) and the Slave mode - * (Disable, Reset, Gated, Trigger, External clock mode 1). - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIM_SlaveConfigSynchro_IT(TIM_HandleTypeDef *htim, - TIM_SlaveConfigTypeDef *sSlaveConfig) -{ - /* Check the parameters */ - assert_param(IS_TIM_SLAVE_INSTANCE(htim->Instance)); - assert_param(IS_TIM_SLAVE_MODE(sSlaveConfig->SlaveMode)); - assert_param(IS_TIM_TRIGGER_SELECTION(sSlaveConfig->InputTrigger)); - - __HAL_LOCK(htim); - - htim->State = HAL_TIM_STATE_BUSY; - - if (TIM_SlaveTimer_SetConfig(htim, sSlaveConfig) != HAL_OK) - { - htim->State = HAL_TIM_STATE_READY; - __HAL_UNLOCK(htim); - return HAL_ERROR; - } - - /* Enable Trigger Interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_TRIGGER); - - /* Disable Trigger DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_TRIGGER); - - htim->State = HAL_TIM_STATE_READY; - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Read the captured value from Capture Compare unit - * @param htim TIM handle. - * @param Channel TIM Channels to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @arg TIM_CHANNEL_4: TIM Channel 4 selected - * @retval Captured value - */ -uint32_t HAL_TIM_ReadCapturedValue(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpreg = 0U; - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Check the parameters */ - assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); - - /* Return the capture 1 value */ - tmpreg = htim->Instance->CCR1; - - break; - } - case TIM_CHANNEL_2: - { - /* Check the parameters */ - assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); - - /* Return the capture 2 value */ - tmpreg = htim->Instance->CCR2; - - break; - } - - case TIM_CHANNEL_3: - { - /* Check the parameters */ - assert_param(IS_TIM_CC3_INSTANCE(htim->Instance)); - - /* Return the capture 3 value */ - tmpreg = htim->Instance->CCR3; - - break; - } - - case TIM_CHANNEL_4: - { - /* Check the parameters */ - assert_param(IS_TIM_CC4_INSTANCE(htim->Instance)); - - /* Return the capture 4 value */ - tmpreg = htim->Instance->CCR4; - - break; - } - - default: - break; - } - - return tmpreg; -} - -/** - * @} - */ - -/** @defgroup TIM_Exported_Functions_Group9 TIM Callbacks functions - * @brief TIM Callbacks functions - * -@verbatim - ============================================================================== - ##### TIM Callbacks functions ##### - ============================================================================== - [..] - This section provides TIM callback functions: - (+) TIM Period elapsed callback - (+) TIM Output Compare callback - (+) TIM Input capture callback - (+) TIM Trigger callback - (+) TIM Error callback - -@endverbatim - * @{ - */ - -/** - * @brief Period elapsed callback in non-blocking mode - * @param htim TIM handle - * @retval None - */ -__weak void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_PeriodElapsedCallback could be implemented in the user file - */ -} - -/** - * @brief Period elapsed half complete callback in non-blocking mode - * @param htim TIM handle - * @retval None - */ -__weak void HAL_TIM_PeriodElapsedHalfCpltCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_PeriodElapsedHalfCpltCallback could be implemented in the user file - */ -} - -/** - * @brief Output Compare callback in non-blocking mode - * @param htim TIM OC handle - * @retval None - */ -__weak void HAL_TIM_OC_DelayElapsedCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_OC_DelayElapsedCallback could be implemented in the user file - */ -} - -/** - * @brief Input Capture callback in non-blocking mode - * @param htim TIM IC handle - * @retval None - */ -__weak void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_IC_CaptureCallback could be implemented in the user file - */ -} - -/** - * @brief Input Capture half complete callback in non-blocking mode - * @param htim TIM IC handle - * @retval None - */ -__weak void HAL_TIM_IC_CaptureHalfCpltCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_IC_CaptureHalfCpltCallback could be implemented in the user file - */ -} - -/** - * @brief PWM Pulse finished callback in non-blocking mode - * @param htim TIM handle - * @retval None - */ -__weak void HAL_TIM_PWM_PulseFinishedCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_PWM_PulseFinishedCallback could be implemented in the user file - */ -} - -/** - * @brief PWM Pulse finished half complete callback in non-blocking mode - * @param htim TIM handle - * @retval None - */ -__weak void HAL_TIM_PWM_PulseFinishedHalfCpltCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_PWM_PulseFinishedHalfCpltCallback could be implemented in the user file - */ -} - -/** - * @brief Hall Trigger detection callback in non-blocking mode - * @param htim TIM handle - * @retval None - */ -__weak void HAL_TIM_TriggerCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_TriggerCallback could be implemented in the user file - */ -} - -/** - * @brief Hall Trigger detection half complete callback in non-blocking mode - * @param htim TIM handle - * @retval None - */ -__weak void HAL_TIM_TriggerHalfCpltCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_TriggerHalfCpltCallback could be implemented in the user file - */ -} - -/** - * @brief Timer error callback in non-blocking mode - * @param htim TIM handle - * @retval None - */ -__weak void HAL_TIM_ErrorCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIM_ErrorCallback could be implemented in the user file - */ -} - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) -/** - * @brief Register a User TIM callback to be used instead of the weak predefined callback - * @param htim tim handle - * @param CallbackID ID of the callback to be registered - * This parameter can be one of the following values: - * @arg @ref HAL_TIM_BASE_MSPINIT_CB_ID Base MspInit Callback ID - * @arg @ref HAL_TIM_BASE_MSPDEINIT_CB_ID Base MspDeInit Callback ID - * @arg @ref HAL_TIM_IC_MSPINIT_CB_ID IC MspInit Callback ID - * @arg @ref HAL_TIM_IC_MSPDEINIT_CB_ID IC MspDeInit Callback ID - * @arg @ref HAL_TIM_OC_MSPINIT_CB_ID OC MspInit Callback ID - * @arg @ref HAL_TIM_OC_MSPDEINIT_CB_ID OC MspDeInit Callback ID - * @arg @ref HAL_TIM_PWM_MSPINIT_CB_ID PWM MspInit Callback ID - * @arg @ref HAL_TIM_PWM_MSPDEINIT_CB_ID PWM MspDeInit Callback ID - * @arg @ref HAL_TIM_ONE_PULSE_MSPINIT_CB_ID One Pulse MspInit Callback ID - * @arg @ref HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID One Pulse MspDeInit Callback ID - * @arg @ref HAL_TIM_ENCODER_MSPINIT_CB_ID Encoder MspInit Callback ID - * @arg @ref HAL_TIM_ENCODER_MSPDEINIT_CB_ID Encoder MspDeInit Callback ID - * @arg @ref HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID Hall Sensor MspInit Callback ID - * @arg @ref HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID Hall Sensor MspDeInit Callback ID - * @arg @ref HAL_TIM_PERIOD_ELAPSED_CB_ID Period Elapsed Callback ID - * @arg @ref HAL_TIM_PERIOD_ELAPSED_HALF_CB_ID Period Elapsed half complete Callback ID - * @arg @ref HAL_TIM_TRIGGER_CB_ID Trigger Callback ID - * @arg @ref HAL_TIM_TRIGGER_HALF_CB_ID Trigger half complete Callback ID - * @arg @ref HAL_TIM_IC_CAPTURE_CB_ID Input Capture Callback ID - * @arg @ref HAL_TIM_IC_CAPTURE_HALF_CB_ID Input Capture half complete Callback ID - * @arg @ref HAL_TIM_OC_DELAY_ELAPSED_CB_ID Output Compare Delay Elapsed Callback ID - * @arg @ref HAL_TIM_PWM_PULSE_FINISHED_CB_ID PWM Pulse Finished Callback ID - * @arg @ref HAL_TIM_PWM_PULSE_FINISHED_HALF_CB_ID PWM Pulse Finished half complete Callback ID - * @arg @ref HAL_TIM_ERROR_CB_ID Error Callback ID - * @arg @ref HAL_TIM_COMMUTATION_CB_ID Commutation Callback ID - * @arg @ref HAL_TIM_COMMUTATION_HALF_CB_ID Commutation half complete Callback ID - * @arg @ref HAL_TIM_BREAK_CB_ID Break Callback ID - * @param pCallback pointer to the callback function - * @retval status - */ -HAL_StatusTypeDef HAL_TIM_RegisterCallback(TIM_HandleTypeDef *htim, HAL_TIM_CallbackIDTypeDef CallbackID, - pTIM_CallbackTypeDef pCallback) -{ - HAL_StatusTypeDef status = HAL_OK; - - if (pCallback == NULL) - { - return HAL_ERROR; - } - /* Process locked */ - __HAL_LOCK(htim); - - if (htim->State == HAL_TIM_STATE_READY) - { - switch (CallbackID) - { - case HAL_TIM_BASE_MSPINIT_CB_ID : - htim->Base_MspInitCallback = pCallback; - break; - - case HAL_TIM_BASE_MSPDEINIT_CB_ID : - htim->Base_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_IC_MSPINIT_CB_ID : - htim->IC_MspInitCallback = pCallback; - break; - - case HAL_TIM_IC_MSPDEINIT_CB_ID : - htim->IC_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_OC_MSPINIT_CB_ID : - htim->OC_MspInitCallback = pCallback; - break; - - case HAL_TIM_OC_MSPDEINIT_CB_ID : - htim->OC_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_PWM_MSPINIT_CB_ID : - htim->PWM_MspInitCallback = pCallback; - break; - - case HAL_TIM_PWM_MSPDEINIT_CB_ID : - htim->PWM_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_ONE_PULSE_MSPINIT_CB_ID : - htim->OnePulse_MspInitCallback = pCallback; - break; - - case HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID : - htim->OnePulse_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_ENCODER_MSPINIT_CB_ID : - htim->Encoder_MspInitCallback = pCallback; - break; - - case HAL_TIM_ENCODER_MSPDEINIT_CB_ID : - htim->Encoder_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID : - htim->HallSensor_MspInitCallback = pCallback; - break; - - case HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID : - htim->HallSensor_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_PERIOD_ELAPSED_CB_ID : - htim->PeriodElapsedCallback = pCallback; - break; - - case HAL_TIM_PERIOD_ELAPSED_HALF_CB_ID : - htim->PeriodElapsedHalfCpltCallback = pCallback; - break; - - case HAL_TIM_TRIGGER_CB_ID : - htim->TriggerCallback = pCallback; - break; - - case HAL_TIM_TRIGGER_HALF_CB_ID : - htim->TriggerHalfCpltCallback = pCallback; - break; - - case HAL_TIM_IC_CAPTURE_CB_ID : - htim->IC_CaptureCallback = pCallback; - break; - - case HAL_TIM_IC_CAPTURE_HALF_CB_ID : - htim->IC_CaptureHalfCpltCallback = pCallback; - break; - - case HAL_TIM_OC_DELAY_ELAPSED_CB_ID : - htim->OC_DelayElapsedCallback = pCallback; - break; - - case HAL_TIM_PWM_PULSE_FINISHED_CB_ID : - htim->PWM_PulseFinishedCallback = pCallback; - break; - - case HAL_TIM_PWM_PULSE_FINISHED_HALF_CB_ID : - htim->PWM_PulseFinishedHalfCpltCallback = pCallback; - break; - - case HAL_TIM_ERROR_CB_ID : - htim->ErrorCallback = pCallback; - break; - - case HAL_TIM_COMMUTATION_CB_ID : - htim->CommutationCallback = pCallback; - break; - - case HAL_TIM_COMMUTATION_HALF_CB_ID : - htim->CommutationHalfCpltCallback = pCallback; - break; - - case HAL_TIM_BREAK_CB_ID : - htim->BreakCallback = pCallback; - break; - - default : - /* Return error status */ - status = HAL_ERROR; - break; - } - } - else if (htim->State == HAL_TIM_STATE_RESET) - { - switch (CallbackID) - { - case HAL_TIM_BASE_MSPINIT_CB_ID : - htim->Base_MspInitCallback = pCallback; - break; - - case HAL_TIM_BASE_MSPDEINIT_CB_ID : - htim->Base_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_IC_MSPINIT_CB_ID : - htim->IC_MspInitCallback = pCallback; - break; - - case HAL_TIM_IC_MSPDEINIT_CB_ID : - htim->IC_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_OC_MSPINIT_CB_ID : - htim->OC_MspInitCallback = pCallback; - break; - - case HAL_TIM_OC_MSPDEINIT_CB_ID : - htim->OC_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_PWM_MSPINIT_CB_ID : - htim->PWM_MspInitCallback = pCallback; - break; - - case HAL_TIM_PWM_MSPDEINIT_CB_ID : - htim->PWM_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_ONE_PULSE_MSPINIT_CB_ID : - htim->OnePulse_MspInitCallback = pCallback; - break; - - case HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID : - htim->OnePulse_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_ENCODER_MSPINIT_CB_ID : - htim->Encoder_MspInitCallback = pCallback; - break; - - case HAL_TIM_ENCODER_MSPDEINIT_CB_ID : - htim->Encoder_MspDeInitCallback = pCallback; - break; - - case HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID : - htim->HallSensor_MspInitCallback = pCallback; - break; - - case HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID : - htim->HallSensor_MspDeInitCallback = pCallback; - break; - - default : - /* Return error status */ - status = HAL_ERROR; - break; - } - } - else - { - /* Return error status */ - status = HAL_ERROR; - } - - /* Release Lock */ - __HAL_UNLOCK(htim); - - return status; -} - -/** - * @brief Unregister a TIM callback - * TIM callback is redirected to the weak predefined callback - * @param htim tim handle - * @param CallbackID ID of the callback to be unregistered - * This parameter can be one of the following values: - * @arg @ref HAL_TIM_BASE_MSPINIT_CB_ID Base MspInit Callback ID - * @arg @ref HAL_TIM_BASE_MSPDEINIT_CB_ID Base MspDeInit Callback ID - * @arg @ref HAL_TIM_IC_MSPINIT_CB_ID IC MspInit Callback ID - * @arg @ref HAL_TIM_IC_MSPDEINIT_CB_ID IC MspDeInit Callback ID - * @arg @ref HAL_TIM_OC_MSPINIT_CB_ID OC MspInit Callback ID - * @arg @ref HAL_TIM_OC_MSPDEINIT_CB_ID OC MspDeInit Callback ID - * @arg @ref HAL_TIM_PWM_MSPINIT_CB_ID PWM MspInit Callback ID - * @arg @ref HAL_TIM_PWM_MSPDEINIT_CB_ID PWM MspDeInit Callback ID - * @arg @ref HAL_TIM_ONE_PULSE_MSPINIT_CB_ID One Pulse MspInit Callback ID - * @arg @ref HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID One Pulse MspDeInit Callback ID - * @arg @ref HAL_TIM_ENCODER_MSPINIT_CB_ID Encoder MspInit Callback ID - * @arg @ref HAL_TIM_ENCODER_MSPDEINIT_CB_ID Encoder MspDeInit Callback ID - * @arg @ref HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID Hall Sensor MspInit Callback ID - * @arg @ref HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID Hall Sensor MspDeInit Callback ID - * @arg @ref HAL_TIM_PERIOD_ELAPSED_CB_ID Period Elapsed Callback ID - * @arg @ref HAL_TIM_PERIOD_ELAPSED_HALF_CB_ID Period Elapsed half complete Callback ID - * @arg @ref HAL_TIM_TRIGGER_CB_ID Trigger Callback ID - * @arg @ref HAL_TIM_TRIGGER_HALF_CB_ID Trigger half complete Callback ID - * @arg @ref HAL_TIM_IC_CAPTURE_CB_ID Input Capture Callback ID - * @arg @ref HAL_TIM_IC_CAPTURE_HALF_CB_ID Input Capture half complete Callback ID - * @arg @ref HAL_TIM_OC_DELAY_ELAPSED_CB_ID Output Compare Delay Elapsed Callback ID - * @arg @ref HAL_TIM_PWM_PULSE_FINISHED_CB_ID PWM Pulse Finished Callback ID - * @arg @ref HAL_TIM_PWM_PULSE_FINISHED_HALF_CB_ID PWM Pulse Finished half complete Callback ID - * @arg @ref HAL_TIM_ERROR_CB_ID Error Callback ID - * @arg @ref HAL_TIM_COMMUTATION_CB_ID Commutation Callback ID - * @arg @ref HAL_TIM_COMMUTATION_HALF_CB_ID Commutation half complete Callback ID - * @arg @ref HAL_TIM_BREAK_CB_ID Break Callback ID - * @retval status - */ -HAL_StatusTypeDef HAL_TIM_UnRegisterCallback(TIM_HandleTypeDef *htim, HAL_TIM_CallbackIDTypeDef CallbackID) -{ - HAL_StatusTypeDef status = HAL_OK; - - /* Process locked */ - __HAL_LOCK(htim); - - if (htim->State == HAL_TIM_STATE_READY) - { - switch (CallbackID) - { - case HAL_TIM_BASE_MSPINIT_CB_ID : - /* Legacy weak Base MspInit Callback */ - htim->Base_MspInitCallback = HAL_TIM_Base_MspInit; - break; - - case HAL_TIM_BASE_MSPDEINIT_CB_ID : - /* Legacy weak Base Msp DeInit Callback */ - htim->Base_MspDeInitCallback = HAL_TIM_Base_MspDeInit; - break; - - case HAL_TIM_IC_MSPINIT_CB_ID : - /* Legacy weak IC Msp Init Callback */ - htim->IC_MspInitCallback = HAL_TIM_IC_MspInit; - break; - - case HAL_TIM_IC_MSPDEINIT_CB_ID : - /* Legacy weak IC Msp DeInit Callback */ - htim->IC_MspDeInitCallback = HAL_TIM_IC_MspDeInit; - break; - - case HAL_TIM_OC_MSPINIT_CB_ID : - /* Legacy weak OC Msp Init Callback */ - htim->OC_MspInitCallback = HAL_TIM_OC_MspInit; - break; - - case HAL_TIM_OC_MSPDEINIT_CB_ID : - /* Legacy weak OC Msp DeInit Callback */ - htim->OC_MspDeInitCallback = HAL_TIM_OC_MspDeInit; - break; - - case HAL_TIM_PWM_MSPINIT_CB_ID : - /* Legacy weak PWM Msp Init Callback */ - htim->PWM_MspInitCallback = HAL_TIM_PWM_MspInit; - break; - - case HAL_TIM_PWM_MSPDEINIT_CB_ID : - /* Legacy weak PWM Msp DeInit Callback */ - htim->PWM_MspDeInitCallback = HAL_TIM_PWM_MspDeInit; - break; - - case HAL_TIM_ONE_PULSE_MSPINIT_CB_ID : - /* Legacy weak One Pulse Msp Init Callback */ - htim->OnePulse_MspInitCallback = HAL_TIM_OnePulse_MspInit; - break; - - case HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID : - /* Legacy weak One Pulse Msp DeInit Callback */ - htim->OnePulse_MspDeInitCallback = HAL_TIM_OnePulse_MspDeInit; - break; - - case HAL_TIM_ENCODER_MSPINIT_CB_ID : - /* Legacy weak Encoder Msp Init Callback */ - htim->Encoder_MspInitCallback = HAL_TIM_Encoder_MspInit; - break; - - case HAL_TIM_ENCODER_MSPDEINIT_CB_ID : - /* Legacy weak Encoder Msp DeInit Callback */ - htim->Encoder_MspDeInitCallback = HAL_TIM_Encoder_MspDeInit; - break; - - case HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID : - /* Legacy weak Hall Sensor Msp Init Callback */ - htim->HallSensor_MspInitCallback = HAL_TIMEx_HallSensor_MspInit; - break; - - case HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID : - /* Legacy weak Hall Sensor Msp DeInit Callback */ - htim->HallSensor_MspDeInitCallback = HAL_TIMEx_HallSensor_MspDeInit; - break; - - case HAL_TIM_PERIOD_ELAPSED_CB_ID : - /* Legacy weak Period Elapsed Callback */ - htim->PeriodElapsedCallback = HAL_TIM_PeriodElapsedCallback; - break; - - case HAL_TIM_PERIOD_ELAPSED_HALF_CB_ID : - /* Legacy weak Period Elapsed half complete Callback */ - htim->PeriodElapsedHalfCpltCallback = HAL_TIM_PeriodElapsedHalfCpltCallback; - break; - - case HAL_TIM_TRIGGER_CB_ID : - /* Legacy weak Trigger Callback */ - htim->TriggerCallback = HAL_TIM_TriggerCallback; - break; - - case HAL_TIM_TRIGGER_HALF_CB_ID : - /* Legacy weak Trigger half complete Callback */ - htim->TriggerHalfCpltCallback = HAL_TIM_TriggerHalfCpltCallback; - break; - - case HAL_TIM_IC_CAPTURE_CB_ID : - /* Legacy weak IC Capture Callback */ - htim->IC_CaptureCallback = HAL_TIM_IC_CaptureCallback; - break; - - case HAL_TIM_IC_CAPTURE_HALF_CB_ID : - /* Legacy weak IC Capture half complete Callback */ - htim->IC_CaptureHalfCpltCallback = HAL_TIM_IC_CaptureHalfCpltCallback; - break; - - case HAL_TIM_OC_DELAY_ELAPSED_CB_ID : - /* Legacy weak OC Delay Elapsed Callback */ - htim->OC_DelayElapsedCallback = HAL_TIM_OC_DelayElapsedCallback; - break; - - case HAL_TIM_PWM_PULSE_FINISHED_CB_ID : - /* Legacy weak PWM Pulse Finished Callback */ - htim->PWM_PulseFinishedCallback = HAL_TIM_PWM_PulseFinishedCallback; - break; - - case HAL_TIM_PWM_PULSE_FINISHED_HALF_CB_ID : - /* Legacy weak PWM Pulse Finished half complete Callback */ - htim->PWM_PulseFinishedHalfCpltCallback = HAL_TIM_PWM_PulseFinishedHalfCpltCallback; - break; - - case HAL_TIM_ERROR_CB_ID : - /* Legacy weak Error Callback */ - htim->ErrorCallback = HAL_TIM_ErrorCallback; - break; - - case HAL_TIM_COMMUTATION_CB_ID : - /* Legacy weak Commutation Callback */ - htim->CommutationCallback = HAL_TIMEx_CommutCallback; - break; - - case HAL_TIM_COMMUTATION_HALF_CB_ID : - /* Legacy weak Commutation half complete Callback */ - htim->CommutationHalfCpltCallback = HAL_TIMEx_CommutHalfCpltCallback; - break; - - case HAL_TIM_BREAK_CB_ID : - /* Legacy weak Break Callback */ - htim->BreakCallback = HAL_TIMEx_BreakCallback; - break; - - default : - /* Return error status */ - status = HAL_ERROR; - break; - } - } - else if (htim->State == HAL_TIM_STATE_RESET) - { - switch (CallbackID) - { - case HAL_TIM_BASE_MSPINIT_CB_ID : - /* Legacy weak Base MspInit Callback */ - htim->Base_MspInitCallback = HAL_TIM_Base_MspInit; - break; - - case HAL_TIM_BASE_MSPDEINIT_CB_ID : - /* Legacy weak Base Msp DeInit Callback */ - htim->Base_MspDeInitCallback = HAL_TIM_Base_MspDeInit; - break; - - case HAL_TIM_IC_MSPINIT_CB_ID : - /* Legacy weak IC Msp Init Callback */ - htim->IC_MspInitCallback = HAL_TIM_IC_MspInit; - break; - - case HAL_TIM_IC_MSPDEINIT_CB_ID : - /* Legacy weak IC Msp DeInit Callback */ - htim->IC_MspDeInitCallback = HAL_TIM_IC_MspDeInit; - break; - - case HAL_TIM_OC_MSPINIT_CB_ID : - /* Legacy weak OC Msp Init Callback */ - htim->OC_MspInitCallback = HAL_TIM_OC_MspInit; - break; - - case HAL_TIM_OC_MSPDEINIT_CB_ID : - /* Legacy weak OC Msp DeInit Callback */ - htim->OC_MspDeInitCallback = HAL_TIM_OC_MspDeInit; - break; - - case HAL_TIM_PWM_MSPINIT_CB_ID : - /* Legacy weak PWM Msp Init Callback */ - htim->PWM_MspInitCallback = HAL_TIM_PWM_MspInit; - break; - - case HAL_TIM_PWM_MSPDEINIT_CB_ID : - /* Legacy weak PWM Msp DeInit Callback */ - htim->PWM_MspDeInitCallback = HAL_TIM_PWM_MspDeInit; - break; - - case HAL_TIM_ONE_PULSE_MSPINIT_CB_ID : - /* Legacy weak One Pulse Msp Init Callback */ - htim->OnePulse_MspInitCallback = HAL_TIM_OnePulse_MspInit; - break; - - case HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID : - /* Legacy weak One Pulse Msp DeInit Callback */ - htim->OnePulse_MspDeInitCallback = HAL_TIM_OnePulse_MspDeInit; - break; - - case HAL_TIM_ENCODER_MSPINIT_CB_ID : - /* Legacy weak Encoder Msp Init Callback */ - htim->Encoder_MspInitCallback = HAL_TIM_Encoder_MspInit; - break; - - case HAL_TIM_ENCODER_MSPDEINIT_CB_ID : - /* Legacy weak Encoder Msp DeInit Callback */ - htim->Encoder_MspDeInitCallback = HAL_TIM_Encoder_MspDeInit; - break; - - case HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID : - /* Legacy weak Hall Sensor Msp Init Callback */ - htim->HallSensor_MspInitCallback = HAL_TIMEx_HallSensor_MspInit; - break; - - case HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID : - /* Legacy weak Hall Sensor Msp DeInit Callback */ - htim->HallSensor_MspDeInitCallback = HAL_TIMEx_HallSensor_MspDeInit; - break; - - default : - /* Return error status */ - status = HAL_ERROR; - break; - } - } - else - { - /* Return error status */ - status = HAL_ERROR; - } - - /* Release Lock */ - __HAL_UNLOCK(htim); - - return status; -} -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - -/** - * @} - */ - -/** @defgroup TIM_Exported_Functions_Group10 TIM Peripheral State functions - * @brief TIM Peripheral State functions - * -@verbatim - ============================================================================== - ##### Peripheral State functions ##### - ============================================================================== - [..] - This subsection permits to get in run-time the status of the peripheral - and the data flow. - -@endverbatim - * @{ - */ - -/** - * @brief Return the TIM Base handle state. - * @param htim TIM Base handle - * @retval HAL state - */ -HAL_TIM_StateTypeDef HAL_TIM_Base_GetState(TIM_HandleTypeDef *htim) -{ - return htim->State; -} - -/** - * @brief Return the TIM OC handle state. - * @param htim TIM Output Compare handle - * @retval HAL state - */ -HAL_TIM_StateTypeDef HAL_TIM_OC_GetState(TIM_HandleTypeDef *htim) -{ - return htim->State; -} - -/** - * @brief Return the TIM PWM handle state. - * @param htim TIM handle - * @retval HAL state - */ -HAL_TIM_StateTypeDef HAL_TIM_PWM_GetState(TIM_HandleTypeDef *htim) -{ - return htim->State; -} - -/** - * @brief Return the TIM Input Capture handle state. - * @param htim TIM IC handle - * @retval HAL state - */ -HAL_TIM_StateTypeDef HAL_TIM_IC_GetState(TIM_HandleTypeDef *htim) -{ - return htim->State; -} - -/** - * @brief Return the TIM One Pulse Mode handle state. - * @param htim TIM OPM handle - * @retval HAL state - */ -HAL_TIM_StateTypeDef HAL_TIM_OnePulse_GetState(TIM_HandleTypeDef *htim) -{ - return htim->State; -} - -/** - * @brief Return the TIM Encoder Mode handle state. - * @param htim TIM Encoder Interface handle - * @retval HAL state - */ -HAL_TIM_StateTypeDef HAL_TIM_Encoder_GetState(TIM_HandleTypeDef *htim) -{ - return htim->State; -} - -/** - * @brief Return the TIM Encoder Mode handle state. - * @param htim TIM handle - * @retval Active channel - */ -HAL_TIM_ActiveChannel HAL_TIM_GetActiveChannel(TIM_HandleTypeDef *htim) -{ - return htim->Channel; -} - -/** - * @brief Return actual state of the TIM channel. - * @param htim TIM handle - * @param Channel TIM Channel - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 - * @arg TIM_CHANNEL_2: TIM Channel 2 - * @arg TIM_CHANNEL_3: TIM Channel 3 - * @arg TIM_CHANNEL_4: TIM Channel 4 - * @arg TIM_CHANNEL_5: TIM Channel 5 - * @arg TIM_CHANNEL_6: TIM Channel 6 - * @retval TIM Channel state - */ -HAL_TIM_ChannelStateTypeDef HAL_TIM_GetChannelState(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - HAL_TIM_ChannelStateTypeDef channel_state; - - /* Check the parameters */ - assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); - - channel_state = TIM_CHANNEL_STATE_GET(htim, Channel); - - return channel_state; -} - -/** - * @brief Return actual state of a DMA burst operation. - * @param htim TIM handle - * @retval DMA burst state - */ -HAL_TIM_DMABurstStateTypeDef HAL_TIM_DMABurstState(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_DMABURST_INSTANCE(htim->Instance)); - - return htim->DMABurstState; -} - -/** - * @} - */ - -/** - * @} - */ - -/** @defgroup TIM_Private_Functions TIM Private Functions - * @{ - */ - -/** - * @brief TIM DMA error callback - * @param hdma pointer to DMA handle. - * @retval None - */ -void TIM_DMAError(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - - if (hdma == htim->hdma[TIM_DMA_ID_CC1]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_4, HAL_TIM_CHANNEL_STATE_READY); - } - else - { - htim->State = HAL_TIM_STATE_READY; - } - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->ErrorCallback(htim); -#else - HAL_TIM_ErrorCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; -} - -/** - * @brief TIM DMA Delay Pulse complete callback. - * @param hdma pointer to DMA handle. - * @retval None - */ -static void TIM_DMADelayPulseCplt(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - - if (hdma == htim->hdma[TIM_DMA_ID_CC1]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - } - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - } - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); - } - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_4, HAL_TIM_CHANNEL_STATE_READY); - } - } - else - { - /* nothing to do */ - } - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->PWM_PulseFinishedCallback(htim); -#else - HAL_TIM_PWM_PulseFinishedCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; -} - -/** - * @brief TIM DMA Delay Pulse half complete callback. - * @param hdma pointer to DMA handle. - * @retval None - */ -void TIM_DMADelayPulseHalfCplt(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - - if (hdma == htim->hdma[TIM_DMA_ID_CC1]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; - } - else - { - /* nothing to do */ - } - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->PWM_PulseFinishedHalfCpltCallback(htim); -#else - HAL_TIM_PWM_PulseFinishedHalfCpltCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; -} - -/** - * @brief TIM DMA Capture complete callback. - * @param hdma pointer to DMA handle. - * @retval None - */ -void TIM_DMACaptureCplt(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - - if (hdma == htim->hdma[TIM_DMA_ID_CC1]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - } - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - } - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); - } - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_4, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_4, HAL_TIM_CHANNEL_STATE_READY); - } - } - else - { - /* nothing to do */ - } - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->IC_CaptureCallback(htim); -#else - HAL_TIM_IC_CaptureCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; -} - -/** - * @brief TIM DMA Capture half complete callback. - * @param hdma pointer to DMA handle. - * @retval None - */ -void TIM_DMACaptureHalfCplt(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - - if (hdma == htim->hdma[TIM_DMA_ID_CC1]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; - } - else - { - /* nothing to do */ - } - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->IC_CaptureHalfCpltCallback(htim); -#else - HAL_TIM_IC_CaptureHalfCpltCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; -} - -/** - * @brief TIM DMA Period Elapse complete callback. - * @param hdma pointer to DMA handle. - * @retval None - */ -static void TIM_DMAPeriodElapsedCplt(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - - if (htim->hdma[TIM_DMA_ID_UPDATE]->Init.Mode == DMA_NORMAL) - { - htim->State = HAL_TIM_STATE_READY; - } - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->PeriodElapsedCallback(htim); -#else - HAL_TIM_PeriodElapsedCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ -} - -/** - * @brief TIM DMA Period Elapse half complete callback. - * @param hdma pointer to DMA handle. - * @retval None - */ -static void TIM_DMAPeriodElapsedHalfCplt(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->PeriodElapsedHalfCpltCallback(htim); -#else - HAL_TIM_PeriodElapsedHalfCpltCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ -} - -/** - * @brief TIM DMA Trigger callback. - * @param hdma pointer to DMA handle. - * @retval None - */ -static void TIM_DMATriggerCplt(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - - if (htim->hdma[TIM_DMA_ID_TRIGGER]->Init.Mode == DMA_NORMAL) - { - htim->State = HAL_TIM_STATE_READY; - } - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->TriggerCallback(htim); -#else - HAL_TIM_TriggerCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ -} - -/** - * @brief TIM DMA Trigger half complete callback. - * @param hdma pointer to DMA handle. - * @retval None - */ -static void TIM_DMATriggerHalfCplt(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->TriggerHalfCpltCallback(htim); -#else - HAL_TIM_TriggerHalfCpltCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ -} - -/** - * @brief Time Base configuration - * @param TIMx TIM peripheral - * @param Structure TIM Base configuration structure - * @retval None - */ -void TIM_Base_SetConfig(TIM_TypeDef *TIMx, TIM_Base_InitTypeDef *Structure) -{ - uint32_t tmpcr1; - tmpcr1 = TIMx->CR1; - - /* Set TIM Time Base Unit parameters ---------------------------------------*/ - if (IS_TIM_COUNTER_MODE_SELECT_INSTANCE(TIMx)) - { - /* Select the Counter Mode */ - tmpcr1 &= ~(TIM_CR1_DIR | TIM_CR1_CMS); - tmpcr1 |= Structure->CounterMode; - } - - if (IS_TIM_CLOCK_DIVISION_INSTANCE(TIMx)) - { - /* Set the clock division */ - tmpcr1 &= ~TIM_CR1_CKD; - tmpcr1 |= (uint32_t)Structure->ClockDivision; - } - - /* Set the auto-reload preload */ - MODIFY_REG(tmpcr1, TIM_CR1_ARPE, Structure->AutoReloadPreload); - - TIMx->CR1 = tmpcr1; - - /* Set the Autoreload value */ - TIMx->ARR = (uint32_t)Structure->Period ; - - /* Set the Prescaler value */ - TIMx->PSC = Structure->Prescaler; - - if (IS_TIM_REPETITION_COUNTER_INSTANCE(TIMx)) - { - /* Set the Repetition Counter value */ - TIMx->RCR = Structure->RepetitionCounter; - } - - /* Generate an update event to reload the Prescaler - and the repetition counter (only for advanced timer) value immediately */ - TIMx->EGR = TIM_EGR_UG; -} - -/** - * @brief Timer Output Compare 1 configuration - * @param TIMx to select the TIM peripheral - * @param OC_Config The output configuration structure - * @retval None - */ -static void TIM_OC1_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config) -{ - uint32_t tmpccmrx; - uint32_t tmpccer; - uint32_t tmpcr2; - - /* Disable the Channel 1: Reset the CC1E Bit */ - TIMx->CCER &= ~TIM_CCER_CC1E; - - /* Get the TIMx CCER register value */ - tmpccer = TIMx->CCER; - /* Get the TIMx CR2 register value */ - tmpcr2 = TIMx->CR2; - - /* Get the TIMx CCMR1 register value */ - tmpccmrx = TIMx->CCMR1; - - /* Reset the Output Compare Mode Bits */ - tmpccmrx &= ~TIM_CCMR1_OC1M; - tmpccmrx &= ~TIM_CCMR1_CC1S; - /* Select the Output Compare Mode */ - tmpccmrx |= OC_Config->OCMode; - - /* Reset the Output Polarity level */ - tmpccer &= ~TIM_CCER_CC1P; - /* Set the Output Compare Polarity */ - tmpccer |= OC_Config->OCPolarity; - - if (IS_TIM_CCXN_INSTANCE(TIMx, TIM_CHANNEL_1)) - { - /* Check parameters */ - assert_param(IS_TIM_OCN_POLARITY(OC_Config->OCNPolarity)); - - /* Reset the Output N Polarity level */ - tmpccer &= ~TIM_CCER_CC1NP; - /* Set the Output N Polarity */ - tmpccer |= OC_Config->OCNPolarity; - /* Reset the Output N State */ - tmpccer &= ~TIM_CCER_CC1NE; - } - - if (IS_TIM_BREAK_INSTANCE(TIMx)) - { - /* Check parameters */ - assert_param(IS_TIM_OCNIDLE_STATE(OC_Config->OCNIdleState)); - assert_param(IS_TIM_OCIDLE_STATE(OC_Config->OCIdleState)); - - /* Reset the Output Compare and Output Compare N IDLE State */ - tmpcr2 &= ~TIM_CR2_OIS1; - tmpcr2 &= ~TIM_CR2_OIS1N; - /* Set the Output Idle state */ - tmpcr2 |= OC_Config->OCIdleState; - /* Set the Output N Idle state */ - tmpcr2 |= OC_Config->OCNIdleState; - } - - /* Write to TIMx CR2 */ - TIMx->CR2 = tmpcr2; - - /* Write to TIMx CCMR1 */ - TIMx->CCMR1 = tmpccmrx; - - /* Set the Capture Compare Register value */ - TIMx->CCR1 = OC_Config->Pulse; - - /* Write to TIMx CCER */ - TIMx->CCER = tmpccer; -} - -/** - * @brief Timer Output Compare 2 configuration - * @param TIMx to select the TIM peripheral - * @param OC_Config The output configuration structure - * @retval None - */ -void TIM_OC2_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config) -{ - uint32_t tmpccmrx; - uint32_t tmpccer; - uint32_t tmpcr2; - - /* Disable the Channel 2: Reset the CC2E Bit */ - TIMx->CCER &= ~TIM_CCER_CC2E; - - /* Get the TIMx CCER register value */ - tmpccer = TIMx->CCER; - /* Get the TIMx CR2 register value */ - tmpcr2 = TIMx->CR2; - - /* Get the TIMx CCMR1 register value */ - tmpccmrx = TIMx->CCMR1; - - /* Reset the Output Compare mode and Capture/Compare selection Bits */ - tmpccmrx &= ~TIM_CCMR1_OC2M; - tmpccmrx &= ~TIM_CCMR1_CC2S; - - /* Select the Output Compare Mode */ - tmpccmrx |= (OC_Config->OCMode << 8U); - - /* Reset the Output Polarity level */ - tmpccer &= ~TIM_CCER_CC2P; - /* Set the Output Compare Polarity */ - tmpccer |= (OC_Config->OCPolarity << 4U); - - if (IS_TIM_CCXN_INSTANCE(TIMx, TIM_CHANNEL_2)) - { - assert_param(IS_TIM_OCN_POLARITY(OC_Config->OCNPolarity)); - - /* Reset the Output N Polarity level */ - tmpccer &= ~TIM_CCER_CC2NP; - /* Set the Output N Polarity */ - tmpccer |= (OC_Config->OCNPolarity << 4U); - /* Reset the Output N State */ - tmpccer &= ~TIM_CCER_CC2NE; - - } - - if (IS_TIM_BREAK_INSTANCE(TIMx)) - { - /* Check parameters */ - assert_param(IS_TIM_OCNIDLE_STATE(OC_Config->OCNIdleState)); - assert_param(IS_TIM_OCIDLE_STATE(OC_Config->OCIdleState)); - - /* Reset the Output Compare and Output Compare N IDLE State */ - tmpcr2 &= ~TIM_CR2_OIS2; - tmpcr2 &= ~TIM_CR2_OIS2N; - /* Set the Output Idle state */ - tmpcr2 |= (OC_Config->OCIdleState << 2U); - /* Set the Output N Idle state */ - tmpcr2 |= (OC_Config->OCNIdleState << 2U); - } - - /* Write to TIMx CR2 */ - TIMx->CR2 = tmpcr2; - - /* Write to TIMx CCMR1 */ - TIMx->CCMR1 = tmpccmrx; - - /* Set the Capture Compare Register value */ - TIMx->CCR2 = OC_Config->Pulse; - - /* Write to TIMx CCER */ - TIMx->CCER = tmpccer; -} - -/** - * @brief Timer Output Compare 3 configuration - * @param TIMx to select the TIM peripheral - * @param OC_Config The output configuration structure - * @retval None - */ -static void TIM_OC3_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config) -{ - uint32_t tmpccmrx; - uint32_t tmpccer; - uint32_t tmpcr2; - - /* Disable the Channel 3: Reset the CC2E Bit */ - TIMx->CCER &= ~TIM_CCER_CC3E; - - /* Get the TIMx CCER register value */ - tmpccer = TIMx->CCER; - /* Get the TIMx CR2 register value */ - tmpcr2 = TIMx->CR2; - - /* Get the TIMx CCMR2 register value */ - tmpccmrx = TIMx->CCMR2; - - /* Reset the Output Compare mode and Capture/Compare selection Bits */ - tmpccmrx &= ~TIM_CCMR2_OC3M; - tmpccmrx &= ~TIM_CCMR2_CC3S; - /* Select the Output Compare Mode */ - tmpccmrx |= OC_Config->OCMode; - - /* Reset the Output Polarity level */ - tmpccer &= ~TIM_CCER_CC3P; - /* Set the Output Compare Polarity */ - tmpccer |= (OC_Config->OCPolarity << 8U); - - if (IS_TIM_CCXN_INSTANCE(TIMx, TIM_CHANNEL_3)) - { - assert_param(IS_TIM_OCN_POLARITY(OC_Config->OCNPolarity)); - - /* Reset the Output N Polarity level */ - tmpccer &= ~TIM_CCER_CC3NP; - /* Set the Output N Polarity */ - tmpccer |= (OC_Config->OCNPolarity << 8U); - /* Reset the Output N State */ - tmpccer &= ~TIM_CCER_CC3NE; - } - - if (IS_TIM_BREAK_INSTANCE(TIMx)) - { - /* Check parameters */ - assert_param(IS_TIM_OCNIDLE_STATE(OC_Config->OCNIdleState)); - assert_param(IS_TIM_OCIDLE_STATE(OC_Config->OCIdleState)); - - /* Reset the Output Compare and Output Compare N IDLE State */ - tmpcr2 &= ~TIM_CR2_OIS3; - tmpcr2 &= ~TIM_CR2_OIS3N; - /* Set the Output Idle state */ - tmpcr2 |= (OC_Config->OCIdleState << 4U); - /* Set the Output N Idle state */ - tmpcr2 |= (OC_Config->OCNIdleState << 4U); - } - - /* Write to TIMx CR2 */ - TIMx->CR2 = tmpcr2; - - /* Write to TIMx CCMR2 */ - TIMx->CCMR2 = tmpccmrx; - - /* Set the Capture Compare Register value */ - TIMx->CCR3 = OC_Config->Pulse; - - /* Write to TIMx CCER */ - TIMx->CCER = tmpccer; -} - -/** - * @brief Timer Output Compare 4 configuration - * @param TIMx to select the TIM peripheral - * @param OC_Config The output configuration structure - * @retval None - */ -static void TIM_OC4_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config) -{ - uint32_t tmpccmrx; - uint32_t tmpccer; - uint32_t tmpcr2; - - /* Disable the Channel 4: Reset the CC4E Bit */ - TIMx->CCER &= ~TIM_CCER_CC4E; - - /* Get the TIMx CCER register value */ - tmpccer = TIMx->CCER; - /* Get the TIMx CR2 register value */ - tmpcr2 = TIMx->CR2; - - /* Get the TIMx CCMR2 register value */ - tmpccmrx = TIMx->CCMR2; - - /* Reset the Output Compare mode and Capture/Compare selection Bits */ - tmpccmrx &= ~TIM_CCMR2_OC4M; - tmpccmrx &= ~TIM_CCMR2_CC4S; - - /* Select the Output Compare Mode */ - tmpccmrx |= (OC_Config->OCMode << 8U); - - /* Reset the Output Polarity level */ - tmpccer &= ~TIM_CCER_CC4P; - /* Set the Output Compare Polarity */ - tmpccer |= (OC_Config->OCPolarity << 12U); - - if (IS_TIM_BREAK_INSTANCE(TIMx)) - { - /* Check parameters */ - assert_param(IS_TIM_OCIDLE_STATE(OC_Config->OCIdleState)); - - /* Reset the Output Compare IDLE State */ - tmpcr2 &= ~TIM_CR2_OIS4; - - /* Set the Output Idle state */ - tmpcr2 |= (OC_Config->OCIdleState << 6U); - } - - /* Write to TIMx CR2 */ - TIMx->CR2 = tmpcr2; - - /* Write to TIMx CCMR2 */ - TIMx->CCMR2 = tmpccmrx; - - /* Set the Capture Compare Register value */ - TIMx->CCR4 = OC_Config->Pulse; - - /* Write to TIMx CCER */ - TIMx->CCER = tmpccer; -} - -/** - * @brief Slave Timer configuration function - * @param htim TIM handle - * @param sSlaveConfig Slave timer configuration - * @retval None - */ -static HAL_StatusTypeDef TIM_SlaveTimer_SetConfig(TIM_HandleTypeDef *htim, - TIM_SlaveConfigTypeDef *sSlaveConfig) -{ - uint32_t tmpsmcr; - uint32_t tmpccmr1; - uint32_t tmpccer; - - /* Get the TIMx SMCR register value */ - tmpsmcr = htim->Instance->SMCR; - - /* Reset the Trigger Selection Bits */ - tmpsmcr &= ~TIM_SMCR_TS; - /* Set the Input Trigger source */ - tmpsmcr |= sSlaveConfig->InputTrigger; - - /* Reset the slave mode Bits */ - tmpsmcr &= ~TIM_SMCR_SMS; - /* Set the slave mode */ - tmpsmcr |= sSlaveConfig->SlaveMode; - - /* Write to TIMx SMCR */ - htim->Instance->SMCR = tmpsmcr; - - /* Configure the trigger prescaler, filter, and polarity */ - switch (sSlaveConfig->InputTrigger) - { - case TIM_TS_ETRF: - { - /* Check the parameters */ - assert_param(IS_TIM_CLOCKSOURCE_ETRMODE1_INSTANCE(htim->Instance)); - assert_param(IS_TIM_TRIGGERPRESCALER(sSlaveConfig->TriggerPrescaler)); - assert_param(IS_TIM_TRIGGERPOLARITY(sSlaveConfig->TriggerPolarity)); - assert_param(IS_TIM_TRIGGERFILTER(sSlaveConfig->TriggerFilter)); - /* Configure the ETR Trigger source */ - TIM_ETR_SetConfig(htim->Instance, - sSlaveConfig->TriggerPrescaler, - sSlaveConfig->TriggerPolarity, - sSlaveConfig->TriggerFilter); - break; - } - - case TIM_TS_TI1F_ED: - { - /* Check the parameters */ - assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); - assert_param(IS_TIM_TRIGGERFILTER(sSlaveConfig->TriggerFilter)); - - if (sSlaveConfig->SlaveMode == TIM_SLAVEMODE_GATED) - { - return HAL_ERROR; - } - - /* Disable the Channel 1: Reset the CC1E Bit */ - tmpccer = htim->Instance->CCER; - htim->Instance->CCER &= ~TIM_CCER_CC1E; - tmpccmr1 = htim->Instance->CCMR1; - - /* Set the filter */ - tmpccmr1 &= ~TIM_CCMR1_IC1F; - tmpccmr1 |= ((sSlaveConfig->TriggerFilter) << 4U); - - /* Write to TIMx CCMR1 and CCER registers */ - htim->Instance->CCMR1 = tmpccmr1; - htim->Instance->CCER = tmpccer; - break; - } - - case TIM_TS_TI1FP1: - { - /* Check the parameters */ - assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); - assert_param(IS_TIM_TRIGGERPOLARITY(sSlaveConfig->TriggerPolarity)); - assert_param(IS_TIM_TRIGGERFILTER(sSlaveConfig->TriggerFilter)); - - /* Configure TI1 Filter and Polarity */ - TIM_TI1_ConfigInputStage(htim->Instance, - sSlaveConfig->TriggerPolarity, - sSlaveConfig->TriggerFilter); - break; - } - - case TIM_TS_TI2FP2: - { - /* Check the parameters */ - assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); - assert_param(IS_TIM_TRIGGERPOLARITY(sSlaveConfig->TriggerPolarity)); - assert_param(IS_TIM_TRIGGERFILTER(sSlaveConfig->TriggerFilter)); - - /* Configure TI2 Filter and Polarity */ - TIM_TI2_ConfigInputStage(htim->Instance, - sSlaveConfig->TriggerPolarity, - sSlaveConfig->TriggerFilter); - break; - } - - case TIM_TS_ITR0: - case TIM_TS_ITR1: - case TIM_TS_ITR2: - case TIM_TS_ITR3: - { - /* Check the parameter */ - assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); - break; - } - - default: - break; - } - return HAL_OK; -} - -/** - * @brief Configure the TI1 as Input. - * @param TIMx to select the TIM peripheral. - * @param TIM_ICPolarity The Input Polarity. - * This parameter can be one of the following values: - * @arg TIM_ICPOLARITY_RISING - * @arg TIM_ICPOLARITY_FALLING - * @arg TIM_ICPOLARITY_BOTHEDGE - * @param TIM_ICSelection specifies the input to be used. - * This parameter can be one of the following values: - * @arg TIM_ICSELECTION_DIRECTTI: TIM Input 1 is selected to be connected to IC1. - * @arg TIM_ICSELECTION_INDIRECTTI: TIM Input 1 is selected to be connected to IC2. - * @arg TIM_ICSELECTION_TRC: TIM Input 1 is selected to be connected to TRC. - * @param TIM_ICFilter Specifies the Input Capture Filter. - * This parameter must be a value between 0x00 and 0x0F. - * @retval None - * @note TIM_ICFilter and TIM_ICPolarity are not used in INDIRECT mode as TI2FP1 - * (on channel2 path) is used as the input signal. Therefore CCMR1 must be - * protected against un-initialized filter and polarity values. - */ -void TIM_TI1_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, - uint32_t TIM_ICFilter) -{ - uint32_t tmpccmr1; - uint32_t tmpccer; - - /* Disable the Channel 1: Reset the CC1E Bit */ - TIMx->CCER &= ~TIM_CCER_CC1E; - tmpccmr1 = TIMx->CCMR1; - tmpccer = TIMx->CCER; - - /* Select the Input */ - if (IS_TIM_CC2_INSTANCE(TIMx) != RESET) - { - tmpccmr1 &= ~TIM_CCMR1_CC1S; - tmpccmr1 |= TIM_ICSelection; - } - else - { - tmpccmr1 |= TIM_CCMR1_CC1S_0; - } - - /* Set the filter */ - tmpccmr1 &= ~TIM_CCMR1_IC1F; - tmpccmr1 |= ((TIM_ICFilter << 4U) & TIM_CCMR1_IC1F); - - /* Select the Polarity and set the CC1E Bit */ - tmpccer &= ~(TIM_CCER_CC1P | TIM_CCER_CC1NP); - tmpccer |= (TIM_ICPolarity & (TIM_CCER_CC1P | TIM_CCER_CC1NP)); - - /* Write to TIMx CCMR1 and CCER registers */ - TIMx->CCMR1 = tmpccmr1; - TIMx->CCER = tmpccer; -} - -/** - * @brief Configure the Polarity and Filter for TI1. - * @param TIMx to select the TIM peripheral. - * @param TIM_ICPolarity The Input Polarity. - * This parameter can be one of the following values: - * @arg TIM_ICPOLARITY_RISING - * @arg TIM_ICPOLARITY_FALLING - * @arg TIM_ICPOLARITY_BOTHEDGE - * @param TIM_ICFilter Specifies the Input Capture Filter. - * This parameter must be a value between 0x00 and 0x0F. - * @retval None - */ -static void TIM_TI1_ConfigInputStage(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICFilter) -{ - uint32_t tmpccmr1; - uint32_t tmpccer; - - /* Disable the Channel 1: Reset the CC1E Bit */ - tmpccer = TIMx->CCER; - TIMx->CCER &= ~TIM_CCER_CC1E; - tmpccmr1 = TIMx->CCMR1; - - /* Set the filter */ - tmpccmr1 &= ~TIM_CCMR1_IC1F; - tmpccmr1 |= (TIM_ICFilter << 4U); - - /* Select the Polarity and set the CC1E Bit */ - tmpccer &= ~(TIM_CCER_CC1P | TIM_CCER_CC1NP); - tmpccer |= TIM_ICPolarity; - - /* Write to TIMx CCMR1 and CCER registers */ - TIMx->CCMR1 = tmpccmr1; - TIMx->CCER = tmpccer; -} - -/** - * @brief Configure the TI2 as Input. - * @param TIMx to select the TIM peripheral - * @param TIM_ICPolarity The Input Polarity. - * This parameter can be one of the following values: - * @arg TIM_ICPOLARITY_RISING - * @arg TIM_ICPOLARITY_FALLING - * @arg TIM_ICPOLARITY_BOTHEDGE - * @param TIM_ICSelection specifies the input to be used. - * This parameter can be one of the following values: - * @arg TIM_ICSELECTION_DIRECTTI: TIM Input 2 is selected to be connected to IC2. - * @arg TIM_ICSELECTION_INDIRECTTI: TIM Input 2 is selected to be connected to IC1. - * @arg TIM_ICSELECTION_TRC: TIM Input 2 is selected to be connected to TRC. - * @param TIM_ICFilter Specifies the Input Capture Filter. - * This parameter must be a value between 0x00 and 0x0F. - * @retval None - * @note TIM_ICFilter and TIM_ICPolarity are not used in INDIRECT mode as TI1FP2 - * (on channel1 path) is used as the input signal. Therefore CCMR1 must be - * protected against un-initialized filter and polarity values. - */ -static void TIM_TI2_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, - uint32_t TIM_ICFilter) -{ - uint32_t tmpccmr1; - uint32_t tmpccer; - - /* Disable the Channel 2: Reset the CC2E Bit */ - TIMx->CCER &= ~TIM_CCER_CC2E; - tmpccmr1 = TIMx->CCMR1; - tmpccer = TIMx->CCER; - - /* Select the Input */ - tmpccmr1 &= ~TIM_CCMR1_CC2S; - tmpccmr1 |= (TIM_ICSelection << 8U); - - /* Set the filter */ - tmpccmr1 &= ~TIM_CCMR1_IC2F; - tmpccmr1 |= ((TIM_ICFilter << 12U) & TIM_CCMR1_IC2F); - - /* Select the Polarity and set the CC2E Bit */ - tmpccer &= ~(TIM_CCER_CC2P | TIM_CCER_CC2NP); - tmpccer |= ((TIM_ICPolarity << 4U) & (TIM_CCER_CC2P | TIM_CCER_CC2NP)); - - /* Write to TIMx CCMR1 and CCER registers */ - TIMx->CCMR1 = tmpccmr1 ; - TIMx->CCER = tmpccer; -} - -/** - * @brief Configure the Polarity and Filter for TI2. - * @param TIMx to select the TIM peripheral. - * @param TIM_ICPolarity The Input Polarity. - * This parameter can be one of the following values: - * @arg TIM_ICPOLARITY_RISING - * @arg TIM_ICPOLARITY_FALLING - * @arg TIM_ICPOLARITY_BOTHEDGE - * @param TIM_ICFilter Specifies the Input Capture Filter. - * This parameter must be a value between 0x00 and 0x0F. - * @retval None - */ -static void TIM_TI2_ConfigInputStage(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICFilter) -{ - uint32_t tmpccmr1; - uint32_t tmpccer; - - /* Disable the Channel 2: Reset the CC2E Bit */ - TIMx->CCER &= ~TIM_CCER_CC2E; - tmpccmr1 = TIMx->CCMR1; - tmpccer = TIMx->CCER; - - /* Set the filter */ - tmpccmr1 &= ~TIM_CCMR1_IC2F; - tmpccmr1 |= (TIM_ICFilter << 12U); - - /* Select the Polarity and set the CC2E Bit */ - tmpccer &= ~(TIM_CCER_CC2P | TIM_CCER_CC2NP); - tmpccer |= (TIM_ICPolarity << 4U); - - /* Write to TIMx CCMR1 and CCER registers */ - TIMx->CCMR1 = tmpccmr1 ; - TIMx->CCER = tmpccer; -} - -/** - * @brief Configure the TI3 as Input. - * @param TIMx to select the TIM peripheral - * @param TIM_ICPolarity The Input Polarity. - * This parameter can be one of the following values: - * @arg TIM_ICPOLARITY_RISING - * @arg TIM_ICPOLARITY_FALLING - * @param TIM_ICSelection specifies the input to be used. - * This parameter can be one of the following values: - * @arg TIM_ICSELECTION_DIRECTTI: TIM Input 3 is selected to be connected to IC3. - * @arg TIM_ICSELECTION_INDIRECTTI: TIM Input 3 is selected to be connected to IC4. - * @arg TIM_ICSELECTION_TRC: TIM Input 3 is selected to be connected to TRC. - * @param TIM_ICFilter Specifies the Input Capture Filter. - * This parameter must be a value between 0x00 and 0x0F. - * @retval None - * @note TIM_ICFilter and TIM_ICPolarity are not used in INDIRECT mode as TI3FP4 - * (on channel1 path) is used as the input signal. Therefore CCMR2 must be - * protected against un-initialized filter and polarity values. - */ -static void TIM_TI3_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, - uint32_t TIM_ICFilter) -{ - uint32_t tmpccmr2; - uint32_t tmpccer; - - /* Disable the Channel 3: Reset the CC3E Bit */ - TIMx->CCER &= ~TIM_CCER_CC3E; - tmpccmr2 = TIMx->CCMR2; - tmpccer = TIMx->CCER; - - /* Select the Input */ - tmpccmr2 &= ~TIM_CCMR2_CC3S; - tmpccmr2 |= TIM_ICSelection; - - /* Set the filter */ - tmpccmr2 &= ~TIM_CCMR2_IC3F; - tmpccmr2 |= ((TIM_ICFilter << 4U) & TIM_CCMR2_IC3F); - - /* Select the Polarity and set the CC3E Bit */ - tmpccer &= ~(TIM_CCER_CC3P); - tmpccer |= ((TIM_ICPolarity << 8U) & TIM_CCER_CC3P); - - /* Write to TIMx CCMR2 and CCER registers */ - TIMx->CCMR2 = tmpccmr2; - TIMx->CCER = tmpccer; -} - -/** - * @brief Configure the TI4 as Input. - * @param TIMx to select the TIM peripheral - * @param TIM_ICPolarity The Input Polarity. - * This parameter can be one of the following values: - * @arg TIM_ICPOLARITY_RISING - * @arg TIM_ICPOLARITY_FALLING - * @param TIM_ICSelection specifies the input to be used. - * This parameter can be one of the following values: - * @arg TIM_ICSELECTION_DIRECTTI: TIM Input 4 is selected to be connected to IC4. - * @arg TIM_ICSELECTION_INDIRECTTI: TIM Input 4 is selected to be connected to IC3. - * @arg TIM_ICSELECTION_TRC: TIM Input 4 is selected to be connected to TRC. - * @param TIM_ICFilter Specifies the Input Capture Filter. - * This parameter must be a value between 0x00 and 0x0F. - * @note TIM_ICFilter and TIM_ICPolarity are not used in INDIRECT mode as TI4FP3 - * (on channel1 path) is used as the input signal. Therefore CCMR2 must be - * protected against un-initialized filter and polarity values. - * @retval None - */ -static void TIM_TI4_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, - uint32_t TIM_ICFilter) -{ - uint32_t tmpccmr2; - uint32_t tmpccer; - - /* Disable the Channel 4: Reset the CC4E Bit */ - TIMx->CCER &= ~TIM_CCER_CC4E; - tmpccmr2 = TIMx->CCMR2; - tmpccer = TIMx->CCER; - - /* Select the Input */ - tmpccmr2 &= ~TIM_CCMR2_CC4S; - tmpccmr2 |= (TIM_ICSelection << 8U); - - /* Set the filter */ - tmpccmr2 &= ~TIM_CCMR2_IC4F; - tmpccmr2 |= ((TIM_ICFilter << 12U) & TIM_CCMR2_IC4F); - - /* Select the Polarity and set the CC4E Bit */ - tmpccer &= ~(TIM_CCER_CC4P); - tmpccer |= ((TIM_ICPolarity << 12U) & TIM_CCER_CC4P); - - /* Write to TIMx CCMR2 and CCER registers */ - TIMx->CCMR2 = tmpccmr2; - TIMx->CCER = tmpccer ; -} - -/** - * @brief Selects the Input Trigger source - * @param TIMx to select the TIM peripheral - * @param InputTriggerSource The Input Trigger source. - * This parameter can be one of the following values: - * @arg TIM_TS_ITR0: Internal Trigger 0 - * @arg TIM_TS_ITR1: Internal Trigger 1 - * @arg TIM_TS_ITR2: Internal Trigger 2 - * @arg TIM_TS_ITR3: Internal Trigger 3 - * @arg TIM_TS_TI1F_ED: TI1 Edge Detector - * @arg TIM_TS_TI1FP1: Filtered Timer Input 1 - * @arg TIM_TS_TI2FP2: Filtered Timer Input 2 - * @arg TIM_TS_ETRF: External Trigger input - * @retval None - */ -static void TIM_ITRx_SetConfig(TIM_TypeDef *TIMx, uint32_t InputTriggerSource) -{ - uint32_t tmpsmcr; - - /* Get the TIMx SMCR register value */ - tmpsmcr = TIMx->SMCR; - /* Reset the TS Bits */ - tmpsmcr &= ~TIM_SMCR_TS; - /* Set the Input Trigger source and the slave mode*/ - tmpsmcr |= (InputTriggerSource | TIM_SLAVEMODE_EXTERNAL1); - /* Write to TIMx SMCR */ - TIMx->SMCR = tmpsmcr; -} -/** - * @brief Configures the TIMx External Trigger (ETR). - * @param TIMx to select the TIM peripheral - * @param TIM_ExtTRGPrescaler The external Trigger Prescaler. - * This parameter can be one of the following values: - * @arg TIM_ETRPRESCALER_DIV1: ETRP Prescaler OFF. - * @arg TIM_ETRPRESCALER_DIV2: ETRP frequency divided by 2. - * @arg TIM_ETRPRESCALER_DIV4: ETRP frequency divided by 4. - * @arg TIM_ETRPRESCALER_DIV8: ETRP frequency divided by 8. - * @param TIM_ExtTRGPolarity The external Trigger Polarity. - * This parameter can be one of the following values: - * @arg TIM_ETRPOLARITY_INVERTED: active low or falling edge active. - * @arg TIM_ETRPOLARITY_NONINVERTED: active high or rising edge active. - * @param ExtTRGFilter External Trigger Filter. - * This parameter must be a value between 0x00 and 0x0F - * @retval None - */ -void TIM_ETR_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ExtTRGPrescaler, - uint32_t TIM_ExtTRGPolarity, uint32_t ExtTRGFilter) -{ - uint32_t tmpsmcr; - - tmpsmcr = TIMx->SMCR; - - /* Reset the ETR Bits */ - tmpsmcr &= ~(TIM_SMCR_ETF | TIM_SMCR_ETPS | TIM_SMCR_ECE | TIM_SMCR_ETP); - - /* Set the Prescaler, the Filter value and the Polarity */ - tmpsmcr |= (uint32_t)(TIM_ExtTRGPrescaler | (TIM_ExtTRGPolarity | (ExtTRGFilter << 8U))); - - /* Write to TIMx SMCR */ - TIMx->SMCR = tmpsmcr; -} - -/** - * @brief Enables or disables the TIM Capture Compare Channel x. - * @param TIMx to select the TIM peripheral - * @param Channel specifies the TIM Channel - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 - * @arg TIM_CHANNEL_2: TIM Channel 2 - * @arg TIM_CHANNEL_3: TIM Channel 3 - * @arg TIM_CHANNEL_4: TIM Channel 4 - * @param ChannelState specifies the TIM Channel CCxE bit new state. - * This parameter can be: TIM_CCx_ENABLE or TIM_CCx_DISABLE. - * @retval None - */ -void TIM_CCxChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelState) -{ - uint32_t tmp; - - /* Check the parameters */ - assert_param(IS_TIM_CC1_INSTANCE(TIMx)); - assert_param(IS_TIM_CHANNELS(Channel)); - - tmp = TIM_CCER_CC1E << (Channel & 0x1FU); /* 0x1FU = 31 bits max shift */ - - /* Reset the CCxE Bit */ - TIMx->CCER &= ~tmp; - - /* Set or reset the CCxE Bit */ - TIMx->CCER |= (uint32_t)(ChannelState << (Channel & 0x1FU)); /* 0x1FU = 31 bits max shift */ -} - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) -/** - * @brief Reset interrupt callbacks to the legacy weak callbacks. - * @param htim pointer to a TIM_HandleTypeDef structure that contains - * the configuration information for TIM module. - * @retval None - */ -void TIM_ResetCallback(TIM_HandleTypeDef *htim) -{ - /* Reset the TIM callback to the legacy weak callbacks */ - htim->PeriodElapsedCallback = HAL_TIM_PeriodElapsedCallback; - htim->PeriodElapsedHalfCpltCallback = HAL_TIM_PeriodElapsedHalfCpltCallback; - htim->TriggerCallback = HAL_TIM_TriggerCallback; - htim->TriggerHalfCpltCallback = HAL_TIM_TriggerHalfCpltCallback; - htim->IC_CaptureCallback = HAL_TIM_IC_CaptureCallback; - htim->IC_CaptureHalfCpltCallback = HAL_TIM_IC_CaptureHalfCpltCallback; - htim->OC_DelayElapsedCallback = HAL_TIM_OC_DelayElapsedCallback; - htim->PWM_PulseFinishedCallback = HAL_TIM_PWM_PulseFinishedCallback; - htim->PWM_PulseFinishedHalfCpltCallback = HAL_TIM_PWM_PulseFinishedHalfCpltCallback; - htim->ErrorCallback = HAL_TIM_ErrorCallback; - htim->CommutationCallback = HAL_TIMEx_CommutCallback; - htim->CommutationHalfCpltCallback = HAL_TIMEx_CommutHalfCpltCallback; - htim->BreakCallback = HAL_TIMEx_BreakCallback; -} -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - -/** - * @} - */ - -#endif /* HAL_TIM_MODULE_ENABLED */ -/** - * @} - */ - -/** - * @} - */ -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_tim.c + * @author MCD Application Team + * @brief TIM HAL module driver. + * This file provides firmware functions to manage the following + * functionalities of the Timer (TIM) peripheral: + * + TIM Time Base Initialization + * + TIM Time Base Start + * + TIM Time Base Start Interruption + * + TIM Time Base Start DMA + * + TIM Output Compare/PWM Initialization + * + TIM Output Compare/PWM Channel Configuration + * + TIM Output Compare/PWM Start + * + TIM Output Compare/PWM Start Interruption + * + TIM Output Compare/PWM Start DMA + * + TIM Input Capture Initialization + * + TIM Input Capture Channel Configuration + * + TIM Input Capture Start + * + TIM Input Capture Start Interruption + * + TIM Input Capture Start DMA + * + TIM One Pulse Initialization + * + TIM One Pulse Channel Configuration + * + TIM One Pulse Start + * + TIM Encoder Interface Initialization + * + TIM Encoder Interface Start + * + TIM Encoder Interface Start Interruption + * + TIM Encoder Interface Start DMA + * + Commutation Event configuration with Interruption and DMA + * + TIM OCRef clear configuration + * + TIM External Clock configuration + @verbatim + ============================================================================== + ##### TIMER Generic features ##### + ============================================================================== + [..] The Timer features include: + (#) 16-bit up, down, up/down auto-reload counter. + (#) 16-bit programmable prescaler allowing dividing (also on the fly) the + counter clock frequency either by any factor between 1 and 65536. + (#) Up to 4 independent channels for: + (++) Input Capture + (++) Output Compare + (++) PWM generation (Edge and Center-aligned Mode) + (++) One-pulse mode output + (#) Synchronization circuit to control the timer with external signals and to interconnect + several timers together. + (#) Supports incremental encoder for positioning purposes + + ##### How to use this driver ##### + ============================================================================== + [..] + (#) Initialize the TIM low level resources by implementing the following functions + depending on the selected feature: + (++) Time Base : HAL_TIM_Base_MspInit() + (++) Input Capture : HAL_TIM_IC_MspInit() + (++) Output Compare : HAL_TIM_OC_MspInit() + (++) PWM generation : HAL_TIM_PWM_MspInit() + (++) One-pulse mode output : HAL_TIM_OnePulse_MspInit() + (++) Encoder mode output : HAL_TIM_Encoder_MspInit() + + (#) Initialize the TIM low level resources : + (##) Enable the TIM interface clock using __HAL_RCC_TIMx_CLK_ENABLE(); + (##) TIM pins configuration + (+++) Enable the clock for the TIM GPIOs using the following function: + __HAL_RCC_GPIOx_CLK_ENABLE(); + (+++) Configure these TIM pins in Alternate function mode using HAL_GPIO_Init(); + + (#) The external Clock can be configured, if needed (the default clock is the + internal clock from the APBx), using the following function: + HAL_TIM_ConfigClockSource, the clock configuration should be done before + any start function. + + (#) Configure the TIM in the desired functioning mode using one of the + Initialization function of this driver: + (++) HAL_TIM_Base_Init: to use the Timer to generate a simple time base + (++) HAL_TIM_OC_Init and HAL_TIM_OC_ConfigChannel: to use the Timer to generate an + Output Compare signal. + (++) HAL_TIM_PWM_Init and HAL_TIM_PWM_ConfigChannel: to use the Timer to generate a + PWM signal. + (++) HAL_TIM_IC_Init and HAL_TIM_IC_ConfigChannel: to use the Timer to measure an + external signal. + (++) HAL_TIM_OnePulse_Init and HAL_TIM_OnePulse_ConfigChannel: to use the Timer + in One Pulse Mode. + (++) HAL_TIM_Encoder_Init: to use the Timer Encoder Interface. + + (#) Activate the TIM peripheral using one of the start functions depending from the feature used: + (++) Time Base : HAL_TIM_Base_Start(), HAL_TIM_Base_Start_DMA(), HAL_TIM_Base_Start_IT() + (++) Input Capture : HAL_TIM_IC_Start(), HAL_TIM_IC_Start_DMA(), HAL_TIM_IC_Start_IT() + (++) Output Compare : HAL_TIM_OC_Start(), HAL_TIM_OC_Start_DMA(), HAL_TIM_OC_Start_IT() + (++) PWM generation : HAL_TIM_PWM_Start(), HAL_TIM_PWM_Start_DMA(), HAL_TIM_PWM_Start_IT() + (++) One-pulse mode output : HAL_TIM_OnePulse_Start(), HAL_TIM_OnePulse_Start_IT() + (++) Encoder mode output : HAL_TIM_Encoder_Start(), HAL_TIM_Encoder_Start_DMA(), HAL_TIM_Encoder_Start_IT(). + + (#) The DMA Burst is managed with the two following functions: + HAL_TIM_DMABurst_WriteStart() + HAL_TIM_DMABurst_ReadStart() + + *** Callback registration *** + ============================================= + + [..] + The compilation define USE_HAL_TIM_REGISTER_CALLBACKS when set to 1 + allows the user to configure dynamically the driver callbacks. + + [..] + Use Function @ref HAL_TIM_RegisterCallback() to register a callback. + @ref HAL_TIM_RegisterCallback() takes as parameters the HAL peripheral handle, + the Callback ID and a pointer to the user callback function. + + [..] + Use function @ref HAL_TIM_UnRegisterCallback() to reset a callback to the default + weak function. + @ref HAL_TIM_UnRegisterCallback takes as parameters the HAL peripheral handle, + and the Callback ID. + + [..] + These functions allow to register/unregister following callbacks: + (+) Base_MspInitCallback : TIM Base Msp Init Callback. + (+) Base_MspDeInitCallback : TIM Base Msp DeInit Callback. + (+) IC_MspInitCallback : TIM IC Msp Init Callback. + (+) IC_MspDeInitCallback : TIM IC Msp DeInit Callback. + (+) OC_MspInitCallback : TIM OC Msp Init Callback. + (+) OC_MspDeInitCallback : TIM OC Msp DeInit Callback. + (+) PWM_MspInitCallback : TIM PWM Msp Init Callback. + (+) PWM_MspDeInitCallback : TIM PWM Msp DeInit Callback. + (+) OnePulse_MspInitCallback : TIM One Pulse Msp Init Callback. + (+) OnePulse_MspDeInitCallback : TIM One Pulse Msp DeInit Callback. + (+) Encoder_MspInitCallback : TIM Encoder Msp Init Callback. + (+) Encoder_MspDeInitCallback : TIM Encoder Msp DeInit Callback. + (+) HallSensor_MspInitCallback : TIM Hall Sensor Msp Init Callback. + (+) HallSensor_MspDeInitCallback : TIM Hall Sensor Msp DeInit Callback. + (+) PeriodElapsedCallback : TIM Period Elapsed Callback. + (+) PeriodElapsedHalfCpltCallback : TIM Period Elapsed half complete Callback. + (+) TriggerCallback : TIM Trigger Callback. + (+) TriggerHalfCpltCallback : TIM Trigger half complete Callback. + (+) IC_CaptureCallback : TIM Input Capture Callback. + (+) IC_CaptureHalfCpltCallback : TIM Input Capture half complete Callback. + (+) OC_DelayElapsedCallback : TIM Output Compare Delay Elapsed Callback. + (+) PWM_PulseFinishedCallback : TIM PWM Pulse Finished Callback. + (+) PWM_PulseFinishedHalfCpltCallback : TIM PWM Pulse Finished half complete Callback. + (+) ErrorCallback : TIM Error Callback. + (+) CommutationCallback : TIM Commutation Callback. + (+) CommutationHalfCpltCallback : TIM Commutation half complete Callback. + (+) BreakCallback : TIM Break Callback. + + [..] +By default, after the Init and when the state is HAL_TIM_STATE_RESET +all interrupt callbacks are set to the corresponding weak functions: + examples @ref HAL_TIM_TriggerCallback(), @ref HAL_TIM_ErrorCallback(). + + [..] + Exception done for MspInit and MspDeInit functions that are reset to the legacy weak + functionalities in the Init / DeInit only when these callbacks are null + (not registered beforehand). If not, MspInit or MspDeInit are not null, the Init / DeInit + keep and use the user MspInit / MspDeInit callbacks(registered beforehand) + + [..] + Callbacks can be registered / unregistered in HAL_TIM_STATE_READY state only. + Exception done MspInit / MspDeInit that can be registered / unregistered + in HAL_TIM_STATE_READY or HAL_TIM_STATE_RESET state, + thus registered(user) MspInit / DeInit callbacks can be used during the Init / DeInit. + In that case first register the MspInit/MspDeInit user callbacks + using @ref HAL_TIM_RegisterCallback() before calling DeInit or Init function. + + [..] + When The compilation define USE_HAL_TIM_REGISTER_CALLBACKS is set to 0 or + not defined, the callback registration feature is not available and all callbacks + are set to the corresponding weak functions. + + @endverbatim + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup TIM TIM + * @brief TIM HAL module driver + * @{ + */ + +#ifdef HAL_TIM_MODULE_ENABLED + +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ +/* Private macros ------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ +/* Private function prototypes -----------------------------------------------*/ +/** @addtogroup TIM_Private_Functions + * @{ + */ +static void TIM_OC1_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config); +static void TIM_OC3_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config); +static void TIM_OC4_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config); +static void TIM_TI1_ConfigInputStage(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICFilter); +static void TIM_TI2_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, + uint32_t TIM_ICFilter); +static void TIM_TI2_ConfigInputStage(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICFilter); +static void TIM_TI3_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, + uint32_t TIM_ICFilter); +static void TIM_TI4_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, + uint32_t TIM_ICFilter); +static void TIM_ITRx_SetConfig(TIM_TypeDef *TIMx, uint32_t InputTriggerSource); +static void TIM_DMAPeriodElapsedCplt(DMA_HandleTypeDef *hdma); +static void TIM_DMAPeriodElapsedHalfCplt(DMA_HandleTypeDef *hdma); +static void TIM_DMADelayPulseCplt(DMA_HandleTypeDef *hdma); +static void TIM_DMATriggerCplt(DMA_HandleTypeDef *hdma); +static void TIM_DMATriggerHalfCplt(DMA_HandleTypeDef *hdma); +static HAL_StatusTypeDef TIM_SlaveTimer_SetConfig(TIM_HandleTypeDef *htim, + TIM_SlaveConfigTypeDef *sSlaveConfig); +/** + * @} + */ +/* Exported functions --------------------------------------------------------*/ + +/** @defgroup TIM_Exported_Functions TIM Exported Functions + * @{ + */ + +/** @defgroup TIM_Exported_Functions_Group1 TIM Time Base functions + * @brief Time Base functions + * +@verbatim + ============================================================================== + ##### Time Base functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Initialize and configure the TIM base. + (+) De-initialize the TIM base. + (+) Start the Time Base. + (+) Stop the Time Base. + (+) Start the Time Base and enable interrupt. + (+) Stop the Time Base and disable interrupt. + (+) Start the Time Base and enable DMA transfer. + (+) Stop the Time Base and disable DMA transfer. + +@endverbatim + * @{ + */ +/** + * @brief Initializes the TIM Time base Unit according to the specified + * parameters in the TIM_HandleTypeDef and initialize the associated handle. + * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) + * requires a timer reset to avoid unexpected direction + * due to DIR bit readonly in center aligned mode. + * Ex: call @ref HAL_TIM_Base_DeInit() before HAL_TIM_Base_Init() + * @param htim TIM Base handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Base_Init(TIM_HandleTypeDef *htim) +{ + /* Check the TIM handle allocation */ + if (htim == NULL) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); + assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); + assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); + + if (htim->State == HAL_TIM_STATE_RESET) + { + /* Allocate lock resource and initialize it */ + htim->Lock = HAL_UNLOCKED; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + /* Reset interrupt callbacks to legacy weak callbacks */ + TIM_ResetCallback(htim); + + if (htim->Base_MspInitCallback == NULL) + { + htim->Base_MspInitCallback = HAL_TIM_Base_MspInit; + } + /* Init the low level hardware : GPIO, CLOCK, NVIC */ + htim->Base_MspInitCallback(htim); +#else + /* Init the low level hardware : GPIO, CLOCK, NVIC */ + HAL_TIM_Base_MspInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_BUSY; + + /* Set the Time Base configuration */ + TIM_Base_SetConfig(htim->Instance, &htim->Init); + + /* Initialize the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_READY; + + /* Initialize the TIM channels state */ + TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); + + /* Initialize the TIM state*/ + htim->State = HAL_TIM_STATE_READY; + + return HAL_OK; +} + +/** + * @brief DeInitializes the TIM Base peripheral + * @param htim TIM Base handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Base_DeInit(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + + htim->State = HAL_TIM_STATE_BUSY; + + /* Disable the TIM Peripheral Clock */ + __HAL_TIM_DISABLE(htim); + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + if (htim->Base_MspDeInitCallback == NULL) + { + htim->Base_MspDeInitCallback = HAL_TIM_Base_MspDeInit; + } + /* DeInit the low level hardware */ + htim->Base_MspDeInitCallback(htim); +#else + /* DeInit the low level hardware: GPIO, CLOCK, NVIC */ + HAL_TIM_Base_MspDeInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + /* Change the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; + + /* Change the TIM channels state */ + TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); + + /* Change TIM state */ + htim->State = HAL_TIM_STATE_RESET; + + /* Release Lock */ + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Initializes the TIM Base MSP. + * @param htim TIM Base handle + * @retval None + */ +__weak void HAL_TIM_Base_MspInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_Base_MspInit could be implemented in the user file + */ +} + +/** + * @brief DeInitializes TIM Base MSP. + * @param htim TIM Base handle + * @retval None + */ +__weak void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_Base_MspDeInit could be implemented in the user file + */ +} + + +/** + * @brief Starts the TIM Base generation. + * @param htim TIM Base handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Base_Start(TIM_HandleTypeDef *htim) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + + /* Check the TIM state */ + if (htim->State != HAL_TIM_STATE_READY) + { + return HAL_ERROR; + } + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_BUSY; + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Base generation. + * @param htim TIM Base handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Base_Stop(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_READY; + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Base generation in interrupt mode. + * @param htim TIM Base handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Base_Start_IT(TIM_HandleTypeDef *htim) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + + /* Check the TIM state */ + if (htim->State != HAL_TIM_STATE_READY) + { + return HAL_ERROR; + } + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_BUSY; + + /* Enable the TIM Update interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_UPDATE); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Base generation in interrupt mode. + * @param htim TIM Base handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Base_Stop_IT(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + + /* Disable the TIM Update interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_UPDATE); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_READY; + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Base generation in DMA mode. + * @param htim TIM Base handle + * @param pData The source Buffer address. + * @param Length The length of data to be transferred from memory to peripheral. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Base_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_DMA_INSTANCE(htim->Instance)); + + /* Set the TIM state */ + if (htim->State == HAL_TIM_STATE_BUSY) + { + return HAL_BUSY; + } + else if (htim->State == HAL_TIM_STATE_READY) + { + if ((pData == NULL) && (Length > 0U)) + { + return HAL_ERROR; + } + else + { + htim->State = HAL_TIM_STATE_BUSY; + } + } + else + { + return HAL_ERROR; + } + + /* Set the DMA Period elapsed callbacks */ + htim->hdma[TIM_DMA_ID_UPDATE]->XferCpltCallback = TIM_DMAPeriodElapsedCplt; + htim->hdma[TIM_DMA_ID_UPDATE]->XferHalfCpltCallback = TIM_DMAPeriodElapsedHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_UPDATE]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_UPDATE], (uint32_t)pData, (uint32_t)&htim->Instance->ARR, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + + /* Enable the TIM Update DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_UPDATE); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Base generation in DMA mode. + * @param htim TIM Base handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Base_Stop_DMA(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_DMA_INSTANCE(htim->Instance)); + + /* Disable the TIM Update DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_UPDATE); + + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_UPDATE]); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_READY; + + /* Return function status */ + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup TIM_Exported_Functions_Group2 TIM Output Compare functions + * @brief TIM Output Compare functions + * +@verbatim + ============================================================================== + ##### TIM Output Compare functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Initialize and configure the TIM Output Compare. + (+) De-initialize the TIM Output Compare. + (+) Start the TIM Output Compare. + (+) Stop the TIM Output Compare. + (+) Start the TIM Output Compare and enable interrupt. + (+) Stop the TIM Output Compare and disable interrupt. + (+) Start the TIM Output Compare and enable DMA transfer. + (+) Stop the TIM Output Compare and disable DMA transfer. + +@endverbatim + * @{ + */ +/** + * @brief Initializes the TIM Output Compare according to the specified + * parameters in the TIM_HandleTypeDef and initializes the associated handle. + * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) + * requires a timer reset to avoid unexpected direction + * due to DIR bit readonly in center aligned mode. + * Ex: call @ref HAL_TIM_OC_DeInit() before HAL_TIM_OC_Init() + * @param htim TIM Output Compare handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OC_Init(TIM_HandleTypeDef *htim) +{ + /* Check the TIM handle allocation */ + if (htim == NULL) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); + assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); + assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); + + if (htim->State == HAL_TIM_STATE_RESET) + { + /* Allocate lock resource and initialize it */ + htim->Lock = HAL_UNLOCKED; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + /* Reset interrupt callbacks to legacy weak callbacks */ + TIM_ResetCallback(htim); + + if (htim->OC_MspInitCallback == NULL) + { + htim->OC_MspInitCallback = HAL_TIM_OC_MspInit; + } + /* Init the low level hardware : GPIO, CLOCK, NVIC */ + htim->OC_MspInitCallback(htim); +#else + /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ + HAL_TIM_OC_MspInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_BUSY; + + /* Init the base time for the Output Compare */ + TIM_Base_SetConfig(htim->Instance, &htim->Init); + + /* Initialize the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_READY; + + /* Initialize the TIM channels state */ + TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); + + /* Initialize the TIM state*/ + htim->State = HAL_TIM_STATE_READY; + + return HAL_OK; +} + +/** + * @brief DeInitializes the TIM peripheral + * @param htim TIM Output Compare handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OC_DeInit(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + + htim->State = HAL_TIM_STATE_BUSY; + + /* Disable the TIM Peripheral Clock */ + __HAL_TIM_DISABLE(htim); + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + if (htim->OC_MspDeInitCallback == NULL) + { + htim->OC_MspDeInitCallback = HAL_TIM_OC_MspDeInit; + } + /* DeInit the low level hardware */ + htim->OC_MspDeInitCallback(htim); +#else + /* DeInit the low level hardware: GPIO, CLOCK, NVIC and DMA */ + HAL_TIM_OC_MspDeInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + /* Change the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; + + /* Change the TIM channels state */ + TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); + + /* Change TIM state */ + htim->State = HAL_TIM_STATE_RESET; + + /* Release Lock */ + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Initializes the TIM Output Compare MSP. + * @param htim TIM Output Compare handle + * @retval None + */ +__weak void HAL_TIM_OC_MspInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_OC_MspInit could be implemented in the user file + */ +} + +/** + * @brief DeInitializes TIM Output Compare MSP. + * @param htim TIM Output Compare handle + * @retval None + */ +__weak void HAL_TIM_OC_MspDeInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_OC_MspDeInit could be implemented in the user file + */ +} + +/** + * @brief Starts the TIM Output Compare signal generation. + * @param htim TIM Output Compare handle + * @param Channel TIM Channel to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OC_Start(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + /* Check the TIM channel state */ + if (TIM_CHANNEL_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) + { + return HAL_ERROR; + } + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + + /* Enable the Output compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Enable the main output */ + __HAL_TIM_MOE_ENABLE(htim); + } + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Output Compare signal generation. + * @param htim TIM Output Compare handle + * @param Channel TIM Channel to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OC_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + /* Disable the Output compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Output Compare signal generation in interrupt mode. + * @param htim TIM Output Compare handle + * @param Channel TIM Channel to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OC_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + /* Check the TIM channel state */ + if (TIM_CHANNEL_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) + { + return HAL_ERROR; + } + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Enable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Enable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Enable the TIM Capture/Compare 3 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); + break; + } + + case TIM_CHANNEL_4: + { + /* Enable the TIM Capture/Compare 4 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC4); + break; + } + + default: + break; + } + + /* Enable the Output compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Enable the main output */ + __HAL_TIM_MOE_ENABLE(htim); + } + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Output Compare signal generation in interrupt mode. + * @param htim TIM Output Compare handle + * @param Channel TIM Channel to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OC_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Disable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Disable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Disable the TIM Capture/Compare 3 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); + break; + } + + case TIM_CHANNEL_4: + { + /* Disable the TIM Capture/Compare 4 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC4); + break; + } + + default: + break; + } + + /* Disable the Output compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Output Compare signal generation in DMA mode. + * @param htim TIM Output Compare handle + * @param Channel TIM Channel to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @param pData The source Buffer address. + * @param Length The length of data to be transferred from memory to TIM peripheral + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OC_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + /* Set the TIM channel state */ + if (TIM_CHANNEL_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_BUSY) + { + return HAL_BUSY; + } + else if (TIM_CHANNEL_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_READY) + { + if ((pData == NULL) && (Length > 0U)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else + { + return HAL_ERROR; + } + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)pData, (uint32_t)&htim->Instance->CCR1, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + + /* Enable the TIM Capture/Compare 1 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)pData, (uint32_t)&htim->Instance->CCR2, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + + /* Enable the TIM Capture/Compare 2 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)pData, (uint32_t)&htim->Instance->CCR3, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Capture/Compare 3 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); + break; + } + + case TIM_CHANNEL_4: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC4]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC4]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC4]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC4], (uint32_t)pData, (uint32_t)&htim->Instance->CCR4, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Capture/Compare 4 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC4); + break; + } + + default: + break; + } + + /* Enable the Output compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Enable the main output */ + __HAL_TIM_MOE_ENABLE(htim); + } + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Output Compare signal generation in DMA mode. + * @param htim TIM Output Compare handle + * @param Channel TIM Channel to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OC_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Disable the TIM Capture/Compare 1 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); + break; + } + + case TIM_CHANNEL_2: + { + /* Disable the TIM Capture/Compare 2 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); + break; + } + + case TIM_CHANNEL_3: + { + /* Disable the TIM Capture/Compare 3 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); + break; + } + + case TIM_CHANNEL_4: + { + /* Disable the TIM Capture/Compare 4 interrupt */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC4); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC4]); + break; + } + + default: + break; + } + + /* Disable the Output compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup TIM_Exported_Functions_Group3 TIM PWM functions + * @brief TIM PWM functions + * +@verbatim + ============================================================================== + ##### TIM PWM functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Initialize and configure the TIM PWM. + (+) De-initialize the TIM PWM. + (+) Start the TIM PWM. + (+) Stop the TIM PWM. + (+) Start the TIM PWM and enable interrupt. + (+) Stop the TIM PWM and disable interrupt. + (+) Start the TIM PWM and enable DMA transfer. + (+) Stop the TIM PWM and disable DMA transfer. + +@endverbatim + * @{ + */ +/** + * @brief Initializes the TIM PWM Time Base according to the specified + * parameters in the TIM_HandleTypeDef and initializes the associated handle. + * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) + * requires a timer reset to avoid unexpected direction + * due to DIR bit readonly in center aligned mode. + * Ex: call @ref HAL_TIM_PWM_DeInit() before HAL_TIM_PWM_Init() + * @param htim TIM PWM handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_PWM_Init(TIM_HandleTypeDef *htim) +{ + /* Check the TIM handle allocation */ + if (htim == NULL) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); + assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); + assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); + + if (htim->State == HAL_TIM_STATE_RESET) + { + /* Allocate lock resource and initialize it */ + htim->Lock = HAL_UNLOCKED; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + /* Reset interrupt callbacks to legacy weak callbacks */ + TIM_ResetCallback(htim); + + if (htim->PWM_MspInitCallback == NULL) + { + htim->PWM_MspInitCallback = HAL_TIM_PWM_MspInit; + } + /* Init the low level hardware : GPIO, CLOCK, NVIC */ + htim->PWM_MspInitCallback(htim); +#else + /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ + HAL_TIM_PWM_MspInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_BUSY; + + /* Init the base time for the PWM */ + TIM_Base_SetConfig(htim->Instance, &htim->Init); + + /* Initialize the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_READY; + + /* Initialize the TIM channels state */ + TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); + + /* Initialize the TIM state*/ + htim->State = HAL_TIM_STATE_READY; + + return HAL_OK; +} + +/** + * @brief DeInitializes the TIM peripheral + * @param htim TIM PWM handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_PWM_DeInit(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + + htim->State = HAL_TIM_STATE_BUSY; + + /* Disable the TIM Peripheral Clock */ + __HAL_TIM_DISABLE(htim); + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + if (htim->PWM_MspDeInitCallback == NULL) + { + htim->PWM_MspDeInitCallback = HAL_TIM_PWM_MspDeInit; + } + /* DeInit the low level hardware */ + htim->PWM_MspDeInitCallback(htim); +#else + /* DeInit the low level hardware: GPIO, CLOCK, NVIC and DMA */ + HAL_TIM_PWM_MspDeInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + /* Change the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; + + /* Change the TIM channels state */ + TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); + + /* Change TIM state */ + htim->State = HAL_TIM_STATE_RESET; + + /* Release Lock */ + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Initializes the TIM PWM MSP. + * @param htim TIM PWM handle + * @retval None + */ +__weak void HAL_TIM_PWM_MspInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_PWM_MspInit could be implemented in the user file + */ +} + +/** + * @brief DeInitializes TIM PWM MSP. + * @param htim TIM PWM handle + * @retval None + */ +__weak void HAL_TIM_PWM_MspDeInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_PWM_MspDeInit could be implemented in the user file + */ +} + +/** + * @brief Starts the PWM signal generation. + * @param htim TIM handle + * @param Channel TIM Channels to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_PWM_Start(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + /* Check the TIM channel state */ + if (TIM_CHANNEL_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) + { + return HAL_ERROR; + } + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + + /* Enable the Capture compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Enable the main output */ + __HAL_TIM_MOE_ENABLE(htim); + } + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the PWM signal generation. + * @param htim TIM PWM handle + * @param Channel TIM Channels to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_PWM_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + /* Disable the Capture compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the PWM signal generation in interrupt mode. + * @param htim TIM PWM handle + * @param Channel TIM Channel to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_PWM_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpsmcr; + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + /* Check the TIM channel state */ + if (TIM_CHANNEL_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) + { + return HAL_ERROR; + } + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Enable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Enable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Enable the TIM Capture/Compare 3 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); + break; + } + + case TIM_CHANNEL_4: + { + /* Enable the TIM Capture/Compare 4 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC4); + break; + } + + default: + break; + } + + /* Enable the Capture compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Enable the main output */ + __HAL_TIM_MOE_ENABLE(htim); + } + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the PWM signal generation in interrupt mode. + * @param htim TIM PWM handle + * @param Channel TIM Channels to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_PWM_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Disable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Disable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Disable the TIM Capture/Compare 3 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); + break; + } + + case TIM_CHANNEL_4: + { + /* Disable the TIM Capture/Compare 4 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC4); + break; + } + + default: + break; + } + + /* Disable the Capture compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM PWM signal generation in DMA mode. + * @param htim TIM PWM handle + * @param Channel TIM Channels to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @param pData The source Buffer address. + * @param Length The length of data to be transferred from memory to TIM peripheral + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_PWM_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + /* Set the TIM channel state */ + if (TIM_CHANNEL_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_BUSY) + { + return HAL_BUSY; + } + else if (TIM_CHANNEL_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_READY) + { + if ((pData == NULL) && (Length > 0U)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else + { + return HAL_ERROR; + } + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)pData, (uint32_t)&htim->Instance->CCR1, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + + /* Enable the TIM Capture/Compare 1 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)pData, (uint32_t)&htim->Instance->CCR2, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Capture/Compare 2 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)pData, (uint32_t)&htim->Instance->CCR3, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Output Capture/Compare 3 request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); + break; + } + + case TIM_CHANNEL_4: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC4]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC4]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC4]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC4], (uint32_t)pData, (uint32_t)&htim->Instance->CCR4, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Capture/Compare 4 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC4); + break; + } + + default: + break; + } + + /* Enable the Capture compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Enable the main output */ + __HAL_TIM_MOE_ENABLE(htim); + } + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM PWM signal generation in DMA mode. + * @param htim TIM PWM handle + * @param Channel TIM Channels to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_PWM_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Disable the TIM Capture/Compare 1 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); + break; + } + + case TIM_CHANNEL_2: + { + /* Disable the TIM Capture/Compare 2 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); + break; + } + + case TIM_CHANNEL_3: + { + /* Disable the TIM Capture/Compare 3 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); + break; + } + + case TIM_CHANNEL_4: + { + /* Disable the TIM Capture/Compare 4 interrupt */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC4); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC4]); + break; + } + + default: + break; + } + + /* Disable the Capture compare channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup TIM_Exported_Functions_Group4 TIM Input Capture functions + * @brief TIM Input Capture functions + * +@verbatim + ============================================================================== + ##### TIM Input Capture functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Initialize and configure the TIM Input Capture. + (+) De-initialize the TIM Input Capture. + (+) Start the TIM Input Capture. + (+) Stop the TIM Input Capture. + (+) Start the TIM Input Capture and enable interrupt. + (+) Stop the TIM Input Capture and disable interrupt. + (+) Start the TIM Input Capture and enable DMA transfer. + (+) Stop the TIM Input Capture and disable DMA transfer. + +@endverbatim + * @{ + */ +/** + * @brief Initializes the TIM Input Capture Time base according to the specified + * parameters in the TIM_HandleTypeDef and initializes the associated handle. + * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) + * requires a timer reset to avoid unexpected direction + * due to DIR bit readonly in center aligned mode. + * Ex: call @ref HAL_TIM_IC_DeInit() before HAL_TIM_IC_Init() + * @param htim TIM Input Capture handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_IC_Init(TIM_HandleTypeDef *htim) +{ + /* Check the TIM handle allocation */ + if (htim == NULL) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); + assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); + assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); + + if (htim->State == HAL_TIM_STATE_RESET) + { + /* Allocate lock resource and initialize it */ + htim->Lock = HAL_UNLOCKED; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + /* Reset interrupt callbacks to legacy weak callbacks */ + TIM_ResetCallback(htim); + + if (htim->IC_MspInitCallback == NULL) + { + htim->IC_MspInitCallback = HAL_TIM_IC_MspInit; + } + /* Init the low level hardware : GPIO, CLOCK, NVIC */ + htim->IC_MspInitCallback(htim); +#else + /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ + HAL_TIM_IC_MspInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_BUSY; + + /* Init the base time for the input capture */ + TIM_Base_SetConfig(htim->Instance, &htim->Init); + + /* Initialize the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_READY; + + /* Initialize the TIM channels state */ + TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_READY); + + /* Initialize the TIM state*/ + htim->State = HAL_TIM_STATE_READY; + + return HAL_OK; +} + +/** + * @brief DeInitializes the TIM peripheral + * @param htim TIM Input Capture handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_IC_DeInit(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + + htim->State = HAL_TIM_STATE_BUSY; + + /* Disable the TIM Peripheral Clock */ + __HAL_TIM_DISABLE(htim); + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + if (htim->IC_MspDeInitCallback == NULL) + { + htim->IC_MspDeInitCallback = HAL_TIM_IC_MspDeInit; + } + /* DeInit the low level hardware */ + htim->IC_MspDeInitCallback(htim); +#else + /* DeInit the low level hardware: GPIO, CLOCK, NVIC and DMA */ + HAL_TIM_IC_MspDeInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + /* Change the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; + + /* Change the TIM channels state */ + TIM_CHANNEL_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_N_STATE_SET_ALL(htim, HAL_TIM_CHANNEL_STATE_RESET); + + /* Change TIM state */ + htim->State = HAL_TIM_STATE_RESET; + + /* Release Lock */ + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Initializes the TIM Input Capture MSP. + * @param htim TIM Input Capture handle + * @retval None + */ +__weak void HAL_TIM_IC_MspInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_IC_MspInit could be implemented in the user file + */ +} + +/** + * @brief DeInitializes TIM Input Capture MSP. + * @param htim TIM handle + * @retval None + */ +__weak void HAL_TIM_IC_MspDeInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_IC_MspDeInit could be implemented in the user file + */ +} + +/** + * @brief Starts the TIM Input Capture measurement. + * @param htim TIM Input Capture handle + * @param Channel TIM Channels to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_IC_Start(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpsmcr; + HAL_TIM_ChannelStateTypeDef channel_state = TIM_CHANNEL_STATE_GET(htim, Channel); + HAL_TIM_ChannelStateTypeDef complementary_channel_state = TIM_CHANNEL_N_STATE_GET(htim, Channel); + + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + /* Check the TIM channel state */ + if ((channel_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + + /* Enable the Input Capture channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Input Capture measurement. + * @param htim TIM Input Capture handle + * @param Channel TIM Channels to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_IC_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + /* Disable the Input Capture channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Input Capture measurement in interrupt mode. + * @param htim TIM Input Capture handle + * @param Channel TIM Channels to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_IC_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpsmcr; + HAL_TIM_ChannelStateTypeDef channel_state = TIM_CHANNEL_STATE_GET(htim, Channel); + HAL_TIM_ChannelStateTypeDef complementary_channel_state = TIM_CHANNEL_N_STATE_GET(htim, Channel); + + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + /* Check the TIM channel state */ + if ((channel_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Enable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Enable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Enable the TIM Capture/Compare 3 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); + break; + } + + case TIM_CHANNEL_4: + { + /* Enable the TIM Capture/Compare 4 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC4); + break; + } + + default: + break; + } + /* Enable the Input Capture channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Input Capture measurement in interrupt mode. + * @param htim TIM Input Capture handle + * @param Channel TIM Channels to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_IC_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Disable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Disable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Disable the TIM Capture/Compare 3 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); + break; + } + + case TIM_CHANNEL_4: + { + /* Disable the TIM Capture/Compare 4 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC4); + break; + } + + default: + break; + } + + /* Disable the Input Capture channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Input Capture measurement in DMA mode. + * @param htim TIM Input Capture handle + * @param Channel TIM Channels to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @param pData The destination Buffer address. + * @param Length The length of data to be transferred from TIM peripheral to memory. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_IC_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length) +{ + uint32_t tmpsmcr; + HAL_TIM_ChannelStateTypeDef channel_state = TIM_CHANNEL_STATE_GET(htim, Channel); + HAL_TIM_ChannelStateTypeDef complementary_channel_state = TIM_CHANNEL_N_STATE_GET(htim, Channel); + + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + assert_param(IS_TIM_DMA_CC_INSTANCE(htim->Instance)); + + /* Set the TIM channel state */ + if ((channel_state == HAL_TIM_CHANNEL_STATE_BUSY) + || (complementary_channel_state == HAL_TIM_CHANNEL_STATE_BUSY)) + { + return HAL_BUSY; + } + else if ((channel_state == HAL_TIM_CHANNEL_STATE_READY) + && (complementary_channel_state == HAL_TIM_CHANNEL_STATE_READY)) + { + if ((pData == NULL) && (Length > 0U)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else + { + return HAL_ERROR; + } + + /* Enable the Input Capture channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_ENABLE); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)&htim->Instance->CCR1, (uint32_t)pData, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Capture/Compare 1 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)&htim->Instance->CCR2, (uint32_t)pData, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Capture/Compare 2 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)&htim->Instance->CCR3, (uint32_t)pData, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Capture/Compare 3 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); + break; + } + + case TIM_CHANNEL_4: + { + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC4]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC4]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC4]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC4], (uint32_t)&htim->Instance->CCR4, (uint32_t)pData, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Capture/Compare 4 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC4); + break; + } + + default: + break; + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Input Capture measurement in DMA mode. + * @param htim TIM Input Capture handle + * @param Channel TIM Channels to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_IC_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + assert_param(IS_TIM_DMA_CC_INSTANCE(htim->Instance)); + + /* Disable the Input Capture channel */ + TIM_CCxChannelCmd(htim->Instance, Channel, TIM_CCx_DISABLE); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Disable the TIM Capture/Compare 1 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); + break; + } + + case TIM_CHANNEL_2: + { + /* Disable the TIM Capture/Compare 2 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); + break; + } + + case TIM_CHANNEL_3: + { + /* Disable the TIM Capture/Compare 3 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); + break; + } + + case TIM_CHANNEL_4: + { + /* Disable the TIM Capture/Compare 4 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC4); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC4]); + break; + } + + default: + break; + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} +/** + * @} + */ + +/** @defgroup TIM_Exported_Functions_Group5 TIM One Pulse functions + * @brief TIM One Pulse functions + * +@verbatim + ============================================================================== + ##### TIM One Pulse functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Initialize and configure the TIM One Pulse. + (+) De-initialize the TIM One Pulse. + (+) Start the TIM One Pulse. + (+) Stop the TIM One Pulse. + (+) Start the TIM One Pulse and enable interrupt. + (+) Stop the TIM One Pulse and disable interrupt. + (+) Start the TIM One Pulse and enable DMA transfer. + (+) Stop the TIM One Pulse and disable DMA transfer. + +@endverbatim + * @{ + */ +/** + * @brief Initializes the TIM One Pulse Time Base according to the specified + * parameters in the TIM_HandleTypeDef and initializes the associated handle. + * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) + * requires a timer reset to avoid unexpected direction + * due to DIR bit readonly in center aligned mode. + * Ex: call @ref HAL_TIM_OnePulse_DeInit() before HAL_TIM_OnePulse_Init() + * @note When the timer instance is initialized in One Pulse mode, timer + * channels 1 and channel 2 are reserved and cannot be used for other + * purpose. + * @param htim TIM One Pulse handle + * @param OnePulseMode Select the One pulse mode. + * This parameter can be one of the following values: + * @arg TIM_OPMODE_SINGLE: Only one pulse will be generated. + * @arg TIM_OPMODE_REPETITIVE: Repetitive pulses will be generated. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OnePulse_Init(TIM_HandleTypeDef *htim, uint32_t OnePulseMode) +{ + /* Check the TIM handle allocation */ + if (htim == NULL) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); + assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); + assert_param(IS_TIM_OPM_MODE(OnePulseMode)); + assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); + + if (htim->State == HAL_TIM_STATE_RESET) + { + /* Allocate lock resource and initialize it */ + htim->Lock = HAL_UNLOCKED; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + /* Reset interrupt callbacks to legacy weak callbacks */ + TIM_ResetCallback(htim); + + if (htim->OnePulse_MspInitCallback == NULL) + { + htim->OnePulse_MspInitCallback = HAL_TIM_OnePulse_MspInit; + } + /* Init the low level hardware : GPIO, CLOCK, NVIC */ + htim->OnePulse_MspInitCallback(htim); +#else + /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ + HAL_TIM_OnePulse_MspInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_BUSY; + + /* Configure the Time base in the One Pulse Mode */ + TIM_Base_SetConfig(htim->Instance, &htim->Init); + + /* Reset the OPM Bit */ + htim->Instance->CR1 &= ~TIM_CR1_OPM; + + /* Configure the OPM Mode */ + htim->Instance->CR1 |= OnePulseMode; + + /* Initialize the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_READY; + + /* Initialize the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + + /* Initialize the TIM state*/ + htim->State = HAL_TIM_STATE_READY; + + return HAL_OK; +} + +/** + * @brief DeInitializes the TIM One Pulse + * @param htim TIM One Pulse handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OnePulse_DeInit(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + + htim->State = HAL_TIM_STATE_BUSY; + + /* Disable the TIM Peripheral Clock */ + __HAL_TIM_DISABLE(htim); + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + if (htim->OnePulse_MspDeInitCallback == NULL) + { + htim->OnePulse_MspDeInitCallback = HAL_TIM_OnePulse_MspDeInit; + } + /* DeInit the low level hardware */ + htim->OnePulse_MspDeInitCallback(htim); +#else + /* DeInit the low level hardware: GPIO, CLOCK, NVIC */ + HAL_TIM_OnePulse_MspDeInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + /* Change the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); + + /* Change TIM state */ + htim->State = HAL_TIM_STATE_RESET; + + /* Release Lock */ + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Initializes the TIM One Pulse MSP. + * @param htim TIM One Pulse handle + * @retval None + */ +__weak void HAL_TIM_OnePulse_MspInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_OnePulse_MspInit could be implemented in the user file + */ +} + +/** + * @brief DeInitializes TIM One Pulse MSP. + * @param htim TIM One Pulse handle + * @retval None + */ +__weak void HAL_TIM_OnePulse_MspDeInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_OnePulse_MspDeInit could be implemented in the user file + */ +} + +/** + * @brief Starts the TIM One Pulse signal generation. + * @note Though OutputChannel parameter is deprecated and ignored by the function + * it has been kept to avoid HAL_TIM API compatibility break. + * @note The pulse output channel is determined when calling + * @ref HAL_TIM_OnePulse_ConfigChannel(). + * @param htim TIM One Pulse handle + * @param OutputChannel See note above + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OnePulse_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel) +{ + HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); + HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); + + /* Prevent unused argument(s) compilation warning */ + UNUSED(OutputChannel); + + /* Check the TIM channels state */ + if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + + /* Enable the Capture compare and the Input Capture channels + (in the OPM Mode the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) + if TIM_CHANNEL_1 is used as output, the TIM_CHANNEL_2 will be used as input and + if TIM_CHANNEL_1 is used as input, the TIM_CHANNEL_2 will be used as output + whatever the combination, the TIM_CHANNEL_1 and TIM_CHANNEL_2 should be enabled together + + No need to enable the counter, it's enabled automatically by hardware + (the counter starts in response to a stimulus and generate a pulse */ + + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Enable the main output */ + __HAL_TIM_MOE_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM One Pulse signal generation. + * @note Though OutputChannel parameter is deprecated and ignored by the function + * it has been kept to avoid HAL_TIM API compatibility break. + * @note The pulse output channel is determined when calling + * @ref HAL_TIM_OnePulse_ConfigChannel(). + * @param htim TIM One Pulse handle + * @param OutputChannel See note above + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OnePulse_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(OutputChannel); + + /* Disable the Capture compare and the Input Capture channels + (in the OPM Mode the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) + if TIM_CHANNEL_1 is used as output, the TIM_CHANNEL_2 will be used as input and + if TIM_CHANNEL_1 is used as input, the TIM_CHANNEL_2 will be used as output + whatever the combination, the TIM_CHANNEL_1 and TIM_CHANNEL_2 should be disabled together */ + + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM One Pulse signal generation in interrupt mode. + * @note Though OutputChannel parameter is deprecated and ignored by the function + * it has been kept to avoid HAL_TIM API compatibility break. + * @note The pulse output channel is determined when calling + * @ref HAL_TIM_OnePulse_ConfigChannel(). + * @param htim TIM One Pulse handle + * @param OutputChannel See note above + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OnePulse_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel) +{ + HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); + HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); + + /* Prevent unused argument(s) compilation warning */ + UNUSED(OutputChannel); + + /* Check the TIM channels state */ + if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + + /* Enable the Capture compare and the Input Capture channels + (in the OPM Mode the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) + if TIM_CHANNEL_1 is used as output, the TIM_CHANNEL_2 will be used as input and + if TIM_CHANNEL_1 is used as input, the TIM_CHANNEL_2 will be used as output + whatever the combination, the TIM_CHANNEL_1 and TIM_CHANNEL_2 should be enabled together + + No need to enable the counter, it's enabled automatically by hardware + (the counter starts in response to a stimulus and generate a pulse */ + + /* Enable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); + + /* Enable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); + + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Enable the main output */ + __HAL_TIM_MOE_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM One Pulse signal generation in interrupt mode. + * @note Though OutputChannel parameter is deprecated and ignored by the function + * it has been kept to avoid HAL_TIM API compatibility break. + * @note The pulse output channel is determined when calling + * @ref HAL_TIM_OnePulse_ConfigChannel(). + * @param htim TIM One Pulse handle + * @param OutputChannel See note above + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OnePulse_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(OutputChannel); + + /* Disable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); + + /* Disable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); + + /* Disable the Capture compare and the Input Capture channels + (in the OPM Mode the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) + if TIM_CHANNEL_1 is used as output, the TIM_CHANNEL_2 will be used as input and + if TIM_CHANNEL_1 is used as input, the TIM_CHANNEL_2 will be used as output + whatever the combination, the TIM_CHANNEL_1 and TIM_CHANNEL_2 should be disabled together */ + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); + + if (IS_TIM_BREAK_INSTANCE(htim->Instance) != RESET) + { + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup TIM_Exported_Functions_Group6 TIM Encoder functions + * @brief TIM Encoder functions + * +@verbatim + ============================================================================== + ##### TIM Encoder functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Initialize and configure the TIM Encoder. + (+) De-initialize the TIM Encoder. + (+) Start the TIM Encoder. + (+) Stop the TIM Encoder. + (+) Start the TIM Encoder and enable interrupt. + (+) Stop the TIM Encoder and disable interrupt. + (+) Start the TIM Encoder and enable DMA transfer. + (+) Stop the TIM Encoder and disable DMA transfer. + +@endverbatim + * @{ + */ +/** + * @brief Initializes the TIM Encoder Interface and initialize the associated handle. + * @note Switching from Center Aligned counter mode to Edge counter mode (or reverse) + * requires a timer reset to avoid unexpected direction + * due to DIR bit readonly in center aligned mode. + * Ex: call @ref HAL_TIM_Encoder_DeInit() before HAL_TIM_Encoder_Init() + * @note Encoder mode and External clock mode 2 are not compatible and must not be selected together + * Ex: A call for @ref HAL_TIM_Encoder_Init will erase the settings of @ref HAL_TIM_ConfigClockSource + * using TIM_CLOCKSOURCE_ETRMODE2 and vice versa + * @note When the timer instance is initialized in Encoder mode, timer + * channels 1 and channel 2 are reserved and cannot be used for other + * purpose. + * @param htim TIM Encoder Interface handle + * @param sConfig TIM Encoder Interface configuration structure + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Encoder_Init(TIM_HandleTypeDef *htim, TIM_Encoder_InitTypeDef *sConfig) +{ + uint32_t tmpsmcr; + uint32_t tmpccmr1; + uint32_t tmpccer; + + /* Check the TIM handle allocation */ + if (htim == NULL) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); + assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); + assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); + assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); + assert_param(IS_TIM_ENCODER_MODE(sConfig->EncoderMode)); + assert_param(IS_TIM_IC_SELECTION(sConfig->IC1Selection)); + assert_param(IS_TIM_IC_SELECTION(sConfig->IC2Selection)); + assert_param(IS_TIM_ENCODERINPUT_POLARITY(sConfig->IC1Polarity)); + assert_param(IS_TIM_ENCODERINPUT_POLARITY(sConfig->IC2Polarity)); + assert_param(IS_TIM_IC_PRESCALER(sConfig->IC1Prescaler)); + assert_param(IS_TIM_IC_PRESCALER(sConfig->IC2Prescaler)); + assert_param(IS_TIM_IC_FILTER(sConfig->IC1Filter)); + assert_param(IS_TIM_IC_FILTER(sConfig->IC2Filter)); + + if (htim->State == HAL_TIM_STATE_RESET) + { + /* Allocate lock resource and initialize it */ + htim->Lock = HAL_UNLOCKED; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + /* Reset interrupt callbacks to legacy weak callbacks */ + TIM_ResetCallback(htim); + + if (htim->Encoder_MspInitCallback == NULL) + { + htim->Encoder_MspInitCallback = HAL_TIM_Encoder_MspInit; + } + /* Init the low level hardware : GPIO, CLOCK, NVIC */ + htim->Encoder_MspInitCallback(htim); +#else + /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ + HAL_TIM_Encoder_MspInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_BUSY; + + /* Reset the SMS and ECE bits */ + htim->Instance->SMCR &= ~(TIM_SMCR_SMS | TIM_SMCR_ECE); + + /* Configure the Time base in the Encoder Mode */ + TIM_Base_SetConfig(htim->Instance, &htim->Init); + + /* Get the TIMx SMCR register value */ + tmpsmcr = htim->Instance->SMCR; + + /* Get the TIMx CCMR1 register value */ + tmpccmr1 = htim->Instance->CCMR1; + + /* Get the TIMx CCER register value */ + tmpccer = htim->Instance->CCER; + + /* Set the encoder Mode */ + tmpsmcr |= sConfig->EncoderMode; + + /* Select the Capture Compare 1 and the Capture Compare 2 as input */ + tmpccmr1 &= ~(TIM_CCMR1_CC1S | TIM_CCMR1_CC2S); + tmpccmr1 |= (sConfig->IC1Selection | (sConfig->IC2Selection << 8U)); + + /* Set the Capture Compare 1 and the Capture Compare 2 prescalers and filters */ + tmpccmr1 &= ~(TIM_CCMR1_IC1PSC | TIM_CCMR1_IC2PSC); + tmpccmr1 &= ~(TIM_CCMR1_IC1F | TIM_CCMR1_IC2F); + tmpccmr1 |= sConfig->IC1Prescaler | (sConfig->IC2Prescaler << 8U); + tmpccmr1 |= (sConfig->IC1Filter << 4U) | (sConfig->IC2Filter << 12U); + + /* Set the TI1 and the TI2 Polarities */ + tmpccer &= ~(TIM_CCER_CC1P | TIM_CCER_CC2P); + tmpccer |= sConfig->IC1Polarity | (sConfig->IC2Polarity << 4U); + + /* Write to TIMx SMCR */ + htim->Instance->SMCR = tmpsmcr; + + /* Write to TIMx CCMR1 */ + htim->Instance->CCMR1 = tmpccmr1; + + /* Write to TIMx CCER */ + htim->Instance->CCER = tmpccer; + + /* Initialize the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_READY; + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + + /* Initialize the TIM state*/ + htim->State = HAL_TIM_STATE_READY; + + return HAL_OK; +} + + +/** + * @brief DeInitializes the TIM Encoder interface + * @param htim TIM Encoder Interface handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Encoder_DeInit(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + + htim->State = HAL_TIM_STATE_BUSY; + + /* Disable the TIM Peripheral Clock */ + __HAL_TIM_DISABLE(htim); + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + if (htim->Encoder_MspDeInitCallback == NULL) + { + htim->Encoder_MspDeInitCallback = HAL_TIM_Encoder_MspDeInit; + } + /* DeInit the low level hardware */ + htim->Encoder_MspDeInitCallback(htim); +#else + /* DeInit the low level hardware: GPIO, CLOCK, NVIC */ + HAL_TIM_Encoder_MspDeInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + /* Change the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); + + /* Change TIM state */ + htim->State = HAL_TIM_STATE_RESET; + + /* Release Lock */ + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Initializes the TIM Encoder Interface MSP. + * @param htim TIM Encoder Interface handle + * @retval None + */ +__weak void HAL_TIM_Encoder_MspInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_Encoder_MspInit could be implemented in the user file + */ +} + +/** + * @brief DeInitializes TIM Encoder Interface MSP. + * @param htim TIM Encoder Interface handle + * @retval None + */ +__weak void HAL_TIM_Encoder_MspDeInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_Encoder_MspDeInit could be implemented in the user file + */ +} + +/** + * @brief Starts the TIM Encoder Interface. + * @param htim TIM Encoder Interface handle + * @param Channel TIM Channels to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Encoder_Start(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); + HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); + + /* Check the parameters */ + assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); + + /* Set the TIM channel(s) state */ + if (Channel == TIM_CHANNEL_1) + { + if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else if (Channel == TIM_CHANNEL_2) + { + if ((channel_2_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else + { + if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + + /* Enable the encoder interface channels */ + switch (Channel) + { + case TIM_CHANNEL_1: + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); + break; + } + + case TIM_CHANNEL_2: + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); + break; + } + + default : + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); + break; + } + } + /* Enable the Peripheral */ + __HAL_TIM_ENABLE(htim); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Encoder Interface. + * @param htim TIM Encoder Interface handle + * @param Channel TIM Channels to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Encoder_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); + + /* Disable the Input Capture channels 1 and 2 + (in the EncoderInterface the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) */ + switch (Channel) + { + case TIM_CHANNEL_1: + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); + break; + } + + case TIM_CHANNEL_2: + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); + break; + } + + default : + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); + break; + } + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel(s) state */ + if ((Channel == TIM_CHANNEL_1) || (Channel == TIM_CHANNEL_2)) + { + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Encoder Interface in interrupt mode. + * @param htim TIM Encoder Interface handle + * @param Channel TIM Channels to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Encoder_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); + HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); + + /* Check the parameters */ + assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); + + /* Set the TIM channel(s) state */ + if (Channel == TIM_CHANNEL_1) + { + if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else if (Channel == TIM_CHANNEL_2) + { + if ((channel_2_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else + { + if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + + /* Enable the encoder interface channels */ + /* Enable the capture compare Interrupts 1 and/or 2 */ + switch (Channel) + { + case TIM_CHANNEL_1: + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); + break; + } + + case TIM_CHANNEL_2: + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); + break; + } + + default : + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); + break; + } + } + + /* Enable the Peripheral */ + __HAL_TIM_ENABLE(htim); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Encoder Interface in interrupt mode. + * @param htim TIM Encoder Interface handle + * @param Channel TIM Channels to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Encoder_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); + + /* Disable the Input Capture channels 1 and 2 + (in the EncoderInterface the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) */ + if (Channel == TIM_CHANNEL_1) + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); + + /* Disable the capture compare Interrupts 1 */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); + } + else if (Channel == TIM_CHANNEL_2) + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); + + /* Disable the capture compare Interrupts 2 */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); + } + else + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); + + /* Disable the capture compare Interrupts 1 and 2 */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel(s) state */ + if ((Channel == TIM_CHANNEL_1) || (Channel == TIM_CHANNEL_2)) + { + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Encoder Interface in DMA mode. + * @param htim TIM Encoder Interface handle + * @param Channel TIM Channels to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected + * @param pData1 The destination Buffer address for IC1. + * @param pData2 The destination Buffer address for IC2. + * @param Length The length of data to be transferred from TIM peripheral to memory. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Encoder_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData1, + uint32_t *pData2, uint16_t Length) +{ + HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); + HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); + + /* Check the parameters */ + assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); + + /* Set the TIM channel(s) state */ + if (Channel == TIM_CHANNEL_1) + { + if ((channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY) + || (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY)) + { + return HAL_BUSY; + } + else if ((channel_1_state == HAL_TIM_CHANNEL_STATE_READY) + && (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_READY)) + { + if ((pData1 == NULL) && (Length > 0U)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else + { + return HAL_ERROR; + } + } + else if (Channel == TIM_CHANNEL_2) + { + if ((channel_2_state == HAL_TIM_CHANNEL_STATE_BUSY) + || (complementary_channel_2_state == HAL_TIM_CHANNEL_STATE_BUSY)) + { + return HAL_BUSY; + } + else if ((channel_2_state == HAL_TIM_CHANNEL_STATE_READY) + && (complementary_channel_2_state == HAL_TIM_CHANNEL_STATE_READY)) + { + if ((pData2 == NULL) && (Length > 0U)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else + { + return HAL_ERROR; + } + } + else + { + if ((channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY) + || (channel_2_state == HAL_TIM_CHANNEL_STATE_BUSY) + || (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY) + || (complementary_channel_2_state == HAL_TIM_CHANNEL_STATE_BUSY)) + { + return HAL_BUSY; + } + else if ((channel_1_state == HAL_TIM_CHANNEL_STATE_READY) + && (channel_2_state == HAL_TIM_CHANNEL_STATE_READY) + && (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_READY) + && (complementary_channel_2_state == HAL_TIM_CHANNEL_STATE_READY)) + { + if ((((pData1 == NULL) || (pData2 == NULL))) && (Length > 0U)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else + { + return HAL_ERROR; + } + } + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)&htim->Instance->CCR1, (uint32_t)pData1, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Input Capture DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); + + /* Enable the Peripheral */ + __HAL_TIM_ENABLE(htim); + + /* Enable the Capture compare channel */ + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); + break; + } + + case TIM_CHANNEL_2: + { + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError; + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)&htim->Instance->CCR2, (uint32_t)pData2, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Input Capture DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); + + /* Enable the Peripheral */ + __HAL_TIM_ENABLE(htim); + + /* Enable the Capture compare channel */ + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); + break; + } + + case TIM_CHANNEL_ALL: + { + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)&htim->Instance->CCR1, (uint32_t)pData1, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)&htim->Instance->CCR2, (uint32_t)pData2, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the Peripheral */ + __HAL_TIM_ENABLE(htim); + + /* Enable the Capture compare channel */ + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_ENABLE); + + /* Enable the TIM Input Capture DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); + /* Enable the TIM Input Capture DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); + break; + } + + default: + break; + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Encoder Interface in DMA mode. + * @param htim TIM Encoder Interface handle + * @param Channel TIM Channels to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_ALL: TIM Channel 1 and TIM Channel 2 are selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_Encoder_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_ENCODER_INTERFACE_INSTANCE(htim->Instance)); + + /* Disable the Input Capture channels 1 and 2 + (in the EncoderInterface the two possible channels that can be used are TIM_CHANNEL_1 and TIM_CHANNEL_2) */ + if (Channel == TIM_CHANNEL_1) + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); + + /* Disable the capture compare DMA Request 1 */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); + } + else if (Channel == TIM_CHANNEL_2) + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); + + /* Disable the capture compare DMA Request 2 */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); + } + else + { + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_2, TIM_CCx_DISABLE); + + /* Disable the capture compare DMA Request 1 and 2 */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); + } + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel(s) state */ + if ((Channel == TIM_CHANNEL_1) || (Channel == TIM_CHANNEL_2)) + { + TIM_CHANNEL_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @} + */ +/** @defgroup TIM_Exported_Functions_Group7 TIM IRQ handler management + * @brief TIM IRQ handler management + * +@verbatim + ============================================================================== + ##### IRQ handler management ##### + ============================================================================== + [..] + This section provides Timer IRQ handler function. + +@endverbatim + * @{ + */ +/** + * @brief This function handles TIM interrupts requests. + * @param htim TIM handle + * @retval None + */ +void HAL_TIM_IRQHandler(TIM_HandleTypeDef *htim) +{ + /* Capture compare 1 event */ + if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC1) != RESET) + { + if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC1) != RESET) + { + { + __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC1); + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; + + /* Input capture event */ + if ((htim->Instance->CCMR1 & TIM_CCMR1_CC1S) != 0x00U) + { +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->IC_CaptureCallback(htim); +#else + HAL_TIM_IC_CaptureCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + /* Output compare event */ + else + { +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->OC_DelayElapsedCallback(htim); + htim->PWM_PulseFinishedCallback(htim); +#else + HAL_TIM_OC_DelayElapsedCallback(htim); + HAL_TIM_PWM_PulseFinishedCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; + } + } + } + /* Capture compare 2 event */ + if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC2) != RESET) + { + if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC2) != RESET) + { + __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC2); + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; + /* Input capture event */ + if ((htim->Instance->CCMR1 & TIM_CCMR1_CC2S) != 0x00U) + { +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->IC_CaptureCallback(htim); +#else + HAL_TIM_IC_CaptureCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + /* Output compare event */ + else + { +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->OC_DelayElapsedCallback(htim); + htim->PWM_PulseFinishedCallback(htim); +#else + HAL_TIM_OC_DelayElapsedCallback(htim); + HAL_TIM_PWM_PulseFinishedCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; + } + } + /* Capture compare 3 event */ + if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC3) != RESET) + { + if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC3) != RESET) + { + __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC3); + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; + /* Input capture event */ + if ((htim->Instance->CCMR2 & TIM_CCMR2_CC3S) != 0x00U) + { +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->IC_CaptureCallback(htim); +#else + HAL_TIM_IC_CaptureCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + /* Output compare event */ + else + { +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->OC_DelayElapsedCallback(htim); + htim->PWM_PulseFinishedCallback(htim); +#else + HAL_TIM_OC_DelayElapsedCallback(htim); + HAL_TIM_PWM_PulseFinishedCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; + } + } + /* Capture compare 4 event */ + if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC4) != RESET) + { + if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_CC4) != RESET) + { + __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC4); + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; + /* Input capture event */ + if ((htim->Instance->CCMR2 & TIM_CCMR2_CC4S) != 0x00U) + { +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->IC_CaptureCallback(htim); +#else + HAL_TIM_IC_CaptureCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + /* Output compare event */ + else + { +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->OC_DelayElapsedCallback(htim); + htim->PWM_PulseFinishedCallback(htim); +#else + HAL_TIM_OC_DelayElapsedCallback(htim); + HAL_TIM_PWM_PulseFinishedCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; + } + } + /* TIM Update event */ + if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_UPDATE) != RESET) + { + if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_UPDATE) != RESET) + { + __HAL_TIM_CLEAR_IT(htim, TIM_IT_UPDATE); +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->PeriodElapsedCallback(htim); +#else + HAL_TIM_PeriodElapsedCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + } + /* TIM Break input event */ + if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_BREAK) != RESET) + { + if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_BREAK) != RESET) + { + __HAL_TIM_CLEAR_IT(htim, TIM_IT_BREAK); +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->BreakCallback(htim); +#else + HAL_TIMEx_BreakCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + } + /* TIM Trigger detection event */ + if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_TRIGGER) != RESET) + { + if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_TRIGGER) != RESET) + { + __HAL_TIM_CLEAR_IT(htim, TIM_IT_TRIGGER); +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->TriggerCallback(htim); +#else + HAL_TIM_TriggerCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + } + /* TIM commutation event */ + if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_COM) != RESET) + { + if (__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_COM) != RESET) + { + __HAL_TIM_CLEAR_IT(htim, TIM_FLAG_COM); +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->CommutationCallback(htim); +#else + HAL_TIMEx_CommutCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + } +} + +/** + * @} + */ + +/** @defgroup TIM_Exported_Functions_Group8 TIM Peripheral Control functions + * @brief TIM Peripheral Control functions + * +@verbatim + ============================================================================== + ##### Peripheral Control functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Configure The Input Output channels for OC, PWM, IC or One Pulse mode. + (+) Configure External Clock source. + (+) Configure Complementary channels, break features and dead time. + (+) Configure Master and the Slave synchronization. + (+) Configure the DMA Burst Mode. + +@endverbatim + * @{ + */ + +/** + * @brief Initializes the TIM Output Compare Channels according to the specified + * parameters in the TIM_OC_InitTypeDef. + * @param htim TIM Output Compare handle + * @param sConfig TIM Output Compare configuration structure + * @param Channel TIM Channels to configure + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OC_ConfigChannel(TIM_HandleTypeDef *htim, + TIM_OC_InitTypeDef *sConfig, + uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CHANNELS(Channel)); + assert_param(IS_TIM_OC_MODE(sConfig->OCMode)); + assert_param(IS_TIM_OC_POLARITY(sConfig->OCPolarity)); + + /* Process Locked */ + __HAL_LOCK(htim); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Check the parameters */ + assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); + + /* Configure the TIM Channel 1 in Output Compare */ + TIM_OC1_SetConfig(htim->Instance, sConfig); + break; + } + + case TIM_CHANNEL_2: + { + /* Check the parameters */ + assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); + + /* Configure the TIM Channel 2 in Output Compare */ + TIM_OC2_SetConfig(htim->Instance, sConfig); + break; + } + + case TIM_CHANNEL_3: + { + /* Check the parameters */ + assert_param(IS_TIM_CC3_INSTANCE(htim->Instance)); + + /* Configure the TIM Channel 3 in Output Compare */ + TIM_OC3_SetConfig(htim->Instance, sConfig); + break; + } + + case TIM_CHANNEL_4: + { + /* Check the parameters */ + assert_param(IS_TIM_CC4_INSTANCE(htim->Instance)); + + /* Configure the TIM Channel 4 in Output Compare */ + TIM_OC4_SetConfig(htim->Instance, sConfig); + break; + } + + default: + break; + } + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Initializes the TIM Input Capture Channels according to the specified + * parameters in the TIM_IC_InitTypeDef. + * @param htim TIM IC handle + * @param sConfig TIM Input Capture configuration structure + * @param Channel TIM Channel to configure + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_IC_ConfigChannel(TIM_HandleTypeDef *htim, TIM_IC_InitTypeDef *sConfig, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); + assert_param(IS_TIM_IC_POLARITY(sConfig->ICPolarity)); + assert_param(IS_TIM_IC_SELECTION(sConfig->ICSelection)); + assert_param(IS_TIM_IC_PRESCALER(sConfig->ICPrescaler)); + assert_param(IS_TIM_IC_FILTER(sConfig->ICFilter)); + + /* Process Locked */ + __HAL_LOCK(htim); + + if (Channel == TIM_CHANNEL_1) + { + /* TI1 Configuration */ + TIM_TI1_SetConfig(htim->Instance, + sConfig->ICPolarity, + sConfig->ICSelection, + sConfig->ICFilter); + + /* Reset the IC1PSC Bits */ + htim->Instance->CCMR1 &= ~TIM_CCMR1_IC1PSC; + + /* Set the IC1PSC value */ + htim->Instance->CCMR1 |= sConfig->ICPrescaler; + } + else if (Channel == TIM_CHANNEL_2) + { + /* TI2 Configuration */ + assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); + + TIM_TI2_SetConfig(htim->Instance, + sConfig->ICPolarity, + sConfig->ICSelection, + sConfig->ICFilter); + + /* Reset the IC2PSC Bits */ + htim->Instance->CCMR1 &= ~TIM_CCMR1_IC2PSC; + + /* Set the IC2PSC value */ + htim->Instance->CCMR1 |= (sConfig->ICPrescaler << 8U); + } + else if (Channel == TIM_CHANNEL_3) + { + /* TI3 Configuration */ + assert_param(IS_TIM_CC3_INSTANCE(htim->Instance)); + + TIM_TI3_SetConfig(htim->Instance, + sConfig->ICPolarity, + sConfig->ICSelection, + sConfig->ICFilter); + + /* Reset the IC3PSC Bits */ + htim->Instance->CCMR2 &= ~TIM_CCMR2_IC3PSC; + + /* Set the IC3PSC value */ + htim->Instance->CCMR2 |= sConfig->ICPrescaler; + } + else + { + /* TI4 Configuration */ + assert_param(IS_TIM_CC4_INSTANCE(htim->Instance)); + + TIM_TI4_SetConfig(htim->Instance, + sConfig->ICPolarity, + sConfig->ICSelection, + sConfig->ICFilter); + + /* Reset the IC4PSC Bits */ + htim->Instance->CCMR2 &= ~TIM_CCMR2_IC4PSC; + + /* Set the IC4PSC value */ + htim->Instance->CCMR2 |= (sConfig->ICPrescaler << 8U); + } + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Initializes the TIM PWM channels according to the specified + * parameters in the TIM_OC_InitTypeDef. + * @param htim TIM PWM handle + * @param sConfig TIM PWM configuration structure + * @param Channel TIM Channels to be configured + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_PWM_ConfigChannel(TIM_HandleTypeDef *htim, + TIM_OC_InitTypeDef *sConfig, + uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CHANNELS(Channel)); + assert_param(IS_TIM_PWM_MODE(sConfig->OCMode)); + assert_param(IS_TIM_OC_POLARITY(sConfig->OCPolarity)); + assert_param(IS_TIM_FAST_STATE(sConfig->OCFastMode)); + + /* Process Locked */ + __HAL_LOCK(htim); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Check the parameters */ + assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); + + /* Configure the Channel 1 in PWM mode */ + TIM_OC1_SetConfig(htim->Instance, sConfig); + + /* Set the Preload enable bit for channel1 */ + htim->Instance->CCMR1 |= TIM_CCMR1_OC1PE; + + /* Configure the Output Fast mode */ + htim->Instance->CCMR1 &= ~TIM_CCMR1_OC1FE; + htim->Instance->CCMR1 |= sConfig->OCFastMode; + break; + } + + case TIM_CHANNEL_2: + { + /* Check the parameters */ + assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); + + /* Configure the Channel 2 in PWM mode */ + TIM_OC2_SetConfig(htim->Instance, sConfig); + + /* Set the Preload enable bit for channel2 */ + htim->Instance->CCMR1 |= TIM_CCMR1_OC2PE; + + /* Configure the Output Fast mode */ + htim->Instance->CCMR1 &= ~TIM_CCMR1_OC2FE; + htim->Instance->CCMR1 |= sConfig->OCFastMode << 8U; + break; + } + + case TIM_CHANNEL_3: + { + /* Check the parameters */ + assert_param(IS_TIM_CC3_INSTANCE(htim->Instance)); + + /* Configure the Channel 3 in PWM mode */ + TIM_OC3_SetConfig(htim->Instance, sConfig); + + /* Set the Preload enable bit for channel3 */ + htim->Instance->CCMR2 |= TIM_CCMR2_OC3PE; + + /* Configure the Output Fast mode */ + htim->Instance->CCMR2 &= ~TIM_CCMR2_OC3FE; + htim->Instance->CCMR2 |= sConfig->OCFastMode; + break; + } + + case TIM_CHANNEL_4: + { + /* Check the parameters */ + assert_param(IS_TIM_CC4_INSTANCE(htim->Instance)); + + /* Configure the Channel 4 in PWM mode */ + TIM_OC4_SetConfig(htim->Instance, sConfig); + + /* Set the Preload enable bit for channel4 */ + htim->Instance->CCMR2 |= TIM_CCMR2_OC4PE; + + /* Configure the Output Fast mode */ + htim->Instance->CCMR2 &= ~TIM_CCMR2_OC4FE; + htim->Instance->CCMR2 |= sConfig->OCFastMode << 8U; + break; + } + + default: + break; + } + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Initializes the TIM One Pulse Channels according to the specified + * parameters in the TIM_OnePulse_InitTypeDef. + * @param htim TIM One Pulse handle + * @param sConfig TIM One Pulse configuration structure + * @param OutputChannel TIM output channel to configure + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @param InputChannel TIM input Channel to configure + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @note To output a waveform with a minimum delay user can enable the fast + * mode by calling the @ref __HAL_TIM_ENABLE_OCxFAST macro. Then CCx + * output is forced in response to the edge detection on TIx input, + * without taking in account the comparison. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_OnePulse_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OnePulse_InitTypeDef *sConfig, + uint32_t OutputChannel, uint32_t InputChannel) +{ + TIM_OC_InitTypeDef temp1; + + /* Check the parameters */ + assert_param(IS_TIM_OPM_CHANNELS(OutputChannel)); + assert_param(IS_TIM_OPM_CHANNELS(InputChannel)); + + if (OutputChannel != InputChannel) + { + /* Process Locked */ + __HAL_LOCK(htim); + + htim->State = HAL_TIM_STATE_BUSY; + + /* Extract the Output compare configuration from sConfig structure */ + temp1.OCMode = sConfig->OCMode; + temp1.Pulse = sConfig->Pulse; + temp1.OCPolarity = sConfig->OCPolarity; + temp1.OCNPolarity = sConfig->OCNPolarity; + temp1.OCIdleState = sConfig->OCIdleState; + temp1.OCNIdleState = sConfig->OCNIdleState; + + switch (OutputChannel) + { + case TIM_CHANNEL_1: + { + assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); + + TIM_OC1_SetConfig(htim->Instance, &temp1); + break; + } + case TIM_CHANNEL_2: + { + assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); + + TIM_OC2_SetConfig(htim->Instance, &temp1); + break; + } + default: + break; + } + + switch (InputChannel) + { + case TIM_CHANNEL_1: + { + assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); + + TIM_TI1_SetConfig(htim->Instance, sConfig->ICPolarity, + sConfig->ICSelection, sConfig->ICFilter); + + /* Reset the IC1PSC Bits */ + htim->Instance->CCMR1 &= ~TIM_CCMR1_IC1PSC; + + /* Select the Trigger source */ + htim->Instance->SMCR &= ~TIM_SMCR_TS; + htim->Instance->SMCR |= TIM_TS_TI1FP1; + + /* Select the Slave Mode */ + htim->Instance->SMCR &= ~TIM_SMCR_SMS; + htim->Instance->SMCR |= TIM_SLAVEMODE_TRIGGER; + break; + } + case TIM_CHANNEL_2: + { + assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); + + TIM_TI2_SetConfig(htim->Instance, sConfig->ICPolarity, + sConfig->ICSelection, sConfig->ICFilter); + + /* Reset the IC2PSC Bits */ + htim->Instance->CCMR1 &= ~TIM_CCMR1_IC2PSC; + + /* Select the Trigger source */ + htim->Instance->SMCR &= ~TIM_SMCR_TS; + htim->Instance->SMCR |= TIM_TS_TI2FP2; + + /* Select the Slave Mode */ + htim->Instance->SMCR &= ~TIM_SMCR_SMS; + htim->Instance->SMCR |= TIM_SLAVEMODE_TRIGGER; + break; + } + + default: + break; + } + + htim->State = HAL_TIM_STATE_READY; + + __HAL_UNLOCK(htim); + + return HAL_OK; + } + else + { + return HAL_ERROR; + } +} + +/** + * @brief Configure the DMA Burst to transfer Data from the memory to the TIM peripheral + * @param htim TIM handle + * @param BurstBaseAddress TIM Base address from where the DMA will start the Data write + * This parameter can be one of the following values: + * @arg TIM_DMABASE_CR1 + * @arg TIM_DMABASE_CR2 + * @arg TIM_DMABASE_SMCR + * @arg TIM_DMABASE_DIER + * @arg TIM_DMABASE_SR + * @arg TIM_DMABASE_EGR + * @arg TIM_DMABASE_CCMR1 + * @arg TIM_DMABASE_CCMR2 + * @arg TIM_DMABASE_CCER + * @arg TIM_DMABASE_CNT + * @arg TIM_DMABASE_PSC + * @arg TIM_DMABASE_ARR + * @arg TIM_DMABASE_RCR + * @arg TIM_DMABASE_CCR1 + * @arg TIM_DMABASE_CCR2 + * @arg TIM_DMABASE_CCR3 + * @arg TIM_DMABASE_CCR4 + * @arg TIM_DMABASE_BDTR + * @param BurstRequestSrc TIM DMA Request sources + * This parameter can be one of the following values: + * @arg TIM_DMA_UPDATE: TIM update Interrupt source + * @arg TIM_DMA_CC1: TIM Capture Compare 1 DMA source + * @arg TIM_DMA_CC2: TIM Capture Compare 2 DMA source + * @arg TIM_DMA_CC3: TIM Capture Compare 3 DMA source + * @arg TIM_DMA_CC4: TIM Capture Compare 4 DMA source + * @arg TIM_DMA_COM: TIM Commutation DMA source + * @arg TIM_DMA_TRIGGER: TIM Trigger DMA source + * @param BurstBuffer The Buffer address. + * @param BurstLength DMA Burst length. This parameter can be one value + * between: TIM_DMABURSTLENGTH_1TRANSFER and TIM_DMABURSTLENGTH_18TRANSFERS. + * @note This function should be used only when BurstLength is equal to DMA data transfer length. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_DMABurst_WriteStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, + uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength) +{ + return HAL_TIM_DMABurst_MultiWriteStart(htim, BurstBaseAddress, BurstRequestSrc, BurstBuffer, BurstLength, + ((BurstLength) >> 8U) + 1U); +} + +/** + * @brief Configure the DMA Burst to transfer multiple Data from the memory to the TIM peripheral + * @param htim TIM handle + * @param BurstBaseAddress TIM Base address from where the DMA will start the Data write + * This parameter can be one of the following values: + * @arg TIM_DMABASE_CR1 + * @arg TIM_DMABASE_CR2 + * @arg TIM_DMABASE_SMCR + * @arg TIM_DMABASE_DIER + * @arg TIM_DMABASE_SR + * @arg TIM_DMABASE_EGR + * @arg TIM_DMABASE_CCMR1 + * @arg TIM_DMABASE_CCMR2 + * @arg TIM_DMABASE_CCER + * @arg TIM_DMABASE_CNT + * @arg TIM_DMABASE_PSC + * @arg TIM_DMABASE_ARR + * @arg TIM_DMABASE_RCR + * @arg TIM_DMABASE_CCR1 + * @arg TIM_DMABASE_CCR2 + * @arg TIM_DMABASE_CCR3 + * @arg TIM_DMABASE_CCR4 + * @arg TIM_DMABASE_BDTR + * @param BurstRequestSrc TIM DMA Request sources + * This parameter can be one of the following values: + * @arg TIM_DMA_UPDATE: TIM update Interrupt source + * @arg TIM_DMA_CC1: TIM Capture Compare 1 DMA source + * @arg TIM_DMA_CC2: TIM Capture Compare 2 DMA source + * @arg TIM_DMA_CC3: TIM Capture Compare 3 DMA source + * @arg TIM_DMA_CC4: TIM Capture Compare 4 DMA source + * @arg TIM_DMA_COM: TIM Commutation DMA source + * @arg TIM_DMA_TRIGGER: TIM Trigger DMA source + * @param BurstBuffer The Buffer address. + * @param BurstLength DMA Burst length. This parameter can be one value + * between: TIM_DMABURSTLENGTH_1TRANSFER and TIM_DMABURSTLENGTH_18TRANSFERS. + * @param DataLength Data length. This parameter can be one value + * between 1 and 0xFFFF. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_DMABurst_MultiWriteStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, + uint32_t BurstRequestSrc, uint32_t *BurstBuffer, + uint32_t BurstLength, uint32_t DataLength) +{ + /* Check the parameters */ + assert_param(IS_TIM_DMABURST_INSTANCE(htim->Instance)); + assert_param(IS_TIM_DMA_BASE(BurstBaseAddress)); + assert_param(IS_TIM_DMA_SOURCE(BurstRequestSrc)); + assert_param(IS_TIM_DMA_LENGTH(BurstLength)); + assert_param(IS_TIM_DMA_DATA_LENGTH(DataLength)); + + if (htim->DMABurstState == HAL_DMA_BURST_STATE_BUSY) + { + return HAL_BUSY; + } + else if (htim->DMABurstState == HAL_DMA_BURST_STATE_READY) + { + if ((BurstBuffer == NULL) && (BurstLength > 0U)) + { + return HAL_ERROR; + } + else + { + htim->DMABurstState = HAL_DMA_BURST_STATE_BUSY; + } + } + else + { + /* nothing to do */ + } + switch (BurstRequestSrc) + { + case TIM_DMA_UPDATE: + { + /* Set the DMA Period elapsed callbacks */ + htim->hdma[TIM_DMA_ID_UPDATE]->XferCpltCallback = TIM_DMAPeriodElapsedCplt; + htim->hdma[TIM_DMA_ID_UPDATE]->XferHalfCpltCallback = TIM_DMAPeriodElapsedHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_UPDATE]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_UPDATE], (uint32_t)BurstBuffer, + (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_CC1: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)BurstBuffer, + (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_CC2: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)BurstBuffer, + (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_CC3: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)BurstBuffer, + (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_CC4: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC4]->XferCpltCallback = TIM_DMADelayPulseCplt; + htim->hdma[TIM_DMA_ID_CC4]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC4]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC4], (uint32_t)BurstBuffer, + (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_COM: + { + /* Set the DMA commutation callbacks */ + htim->hdma[TIM_DMA_ID_COMMUTATION]->XferCpltCallback = TIMEx_DMACommutationCplt; + htim->hdma[TIM_DMA_ID_COMMUTATION]->XferHalfCpltCallback = TIMEx_DMACommutationHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_COMMUTATION]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_COMMUTATION], (uint32_t)BurstBuffer, + (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_TRIGGER: + { + /* Set the DMA trigger callbacks */ + htim->hdma[TIM_DMA_ID_TRIGGER]->XferCpltCallback = TIM_DMATriggerCplt; + htim->hdma[TIM_DMA_ID_TRIGGER]->XferHalfCpltCallback = TIM_DMATriggerHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_TRIGGER]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_TRIGGER], (uint32_t)BurstBuffer, + (uint32_t)&htim->Instance->DMAR, DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + default: + break; + } + + /* Configure the DMA Burst Mode */ + htim->Instance->DCR = (BurstBaseAddress | BurstLength); + /* Enable the TIM DMA Request */ + __HAL_TIM_ENABLE_DMA(htim, BurstRequestSrc); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM DMA Burst mode + * @param htim TIM handle + * @param BurstRequestSrc TIM DMA Request sources to disable + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_DMABurst_WriteStop(TIM_HandleTypeDef *htim, uint32_t BurstRequestSrc) +{ + /* Check the parameters */ + assert_param(IS_TIM_DMA_SOURCE(BurstRequestSrc)); + + /* Abort the DMA transfer (at least disable the DMA channel) */ + switch (BurstRequestSrc) + { + case TIM_DMA_UPDATE: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_UPDATE]); + break; + } + case TIM_DMA_CC1: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); + break; + } + case TIM_DMA_CC2: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); + break; + } + case TIM_DMA_CC3: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); + break; + } + case TIM_DMA_CC4: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC4]); + break; + } + case TIM_DMA_COM: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_COMMUTATION]); + break; + } + case TIM_DMA_TRIGGER: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_TRIGGER]); + break; + } + default: + break; + } + + /* Disable the TIM Update DMA request */ + __HAL_TIM_DISABLE_DMA(htim, BurstRequestSrc); + + /* Change the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_READY; + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Configure the DMA Burst to transfer Data from the TIM peripheral to the memory + * @param htim TIM handle + * @param BurstBaseAddress TIM Base address from where the DMA will start the Data read + * This parameter can be one of the following values: + * @arg TIM_DMABASE_CR1 + * @arg TIM_DMABASE_CR2 + * @arg TIM_DMABASE_SMCR + * @arg TIM_DMABASE_DIER + * @arg TIM_DMABASE_SR + * @arg TIM_DMABASE_EGR + * @arg TIM_DMABASE_CCMR1 + * @arg TIM_DMABASE_CCMR2 + * @arg TIM_DMABASE_CCER + * @arg TIM_DMABASE_CNT + * @arg TIM_DMABASE_PSC + * @arg TIM_DMABASE_ARR + * @arg TIM_DMABASE_RCR + * @arg TIM_DMABASE_CCR1 + * @arg TIM_DMABASE_CCR2 + * @arg TIM_DMABASE_CCR3 + * @arg TIM_DMABASE_CCR4 + * @arg TIM_DMABASE_BDTR + * @param BurstRequestSrc TIM DMA Request sources + * This parameter can be one of the following values: + * @arg TIM_DMA_UPDATE: TIM update Interrupt source + * @arg TIM_DMA_CC1: TIM Capture Compare 1 DMA source + * @arg TIM_DMA_CC2: TIM Capture Compare 2 DMA source + * @arg TIM_DMA_CC3: TIM Capture Compare 3 DMA source + * @arg TIM_DMA_CC4: TIM Capture Compare 4 DMA source + * @arg TIM_DMA_COM: TIM Commutation DMA source + * @arg TIM_DMA_TRIGGER: TIM Trigger DMA source + * @param BurstBuffer The Buffer address. + * @param BurstLength DMA Burst length. This parameter can be one value + * between: TIM_DMABURSTLENGTH_1TRANSFER and TIM_DMABURSTLENGTH_18TRANSFERS. + * @note This function should be used only when BurstLength is equal to DMA data transfer length. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_DMABurst_ReadStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, + uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength) +{ + return HAL_TIM_DMABurst_MultiReadStart(htim, BurstBaseAddress, BurstRequestSrc, BurstBuffer, BurstLength, + ((BurstLength) >> 8U) + 1U); +} + +/** + * @brief Configure the DMA Burst to transfer Data from the TIM peripheral to the memory + * @param htim TIM handle + * @param BurstBaseAddress TIM Base address from where the DMA will start the Data read + * This parameter can be one of the following values: + * @arg TIM_DMABASE_CR1 + * @arg TIM_DMABASE_CR2 + * @arg TIM_DMABASE_SMCR + * @arg TIM_DMABASE_DIER + * @arg TIM_DMABASE_SR + * @arg TIM_DMABASE_EGR + * @arg TIM_DMABASE_CCMR1 + * @arg TIM_DMABASE_CCMR2 + * @arg TIM_DMABASE_CCER + * @arg TIM_DMABASE_CNT + * @arg TIM_DMABASE_PSC + * @arg TIM_DMABASE_ARR + * @arg TIM_DMABASE_RCR + * @arg TIM_DMABASE_CCR1 + * @arg TIM_DMABASE_CCR2 + * @arg TIM_DMABASE_CCR3 + * @arg TIM_DMABASE_CCR4 + * @arg TIM_DMABASE_BDTR + * @param BurstRequestSrc TIM DMA Request sources + * This parameter can be one of the following values: + * @arg TIM_DMA_UPDATE: TIM update Interrupt source + * @arg TIM_DMA_CC1: TIM Capture Compare 1 DMA source + * @arg TIM_DMA_CC2: TIM Capture Compare 2 DMA source + * @arg TIM_DMA_CC3: TIM Capture Compare 3 DMA source + * @arg TIM_DMA_CC4: TIM Capture Compare 4 DMA source + * @arg TIM_DMA_COM: TIM Commutation DMA source + * @arg TIM_DMA_TRIGGER: TIM Trigger DMA source + * @param BurstBuffer The Buffer address. + * @param BurstLength DMA Burst length. This parameter can be one value + * between: TIM_DMABURSTLENGTH_1TRANSFER and TIM_DMABURSTLENGTH_18TRANSFERS. + * @param DataLength Data length. This parameter can be one value + * between 1 and 0xFFFF. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_DMABurst_MultiReadStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, + uint32_t BurstRequestSrc, uint32_t *BurstBuffer, + uint32_t BurstLength, uint32_t DataLength) +{ + /* Check the parameters */ + assert_param(IS_TIM_DMABURST_INSTANCE(htim->Instance)); + assert_param(IS_TIM_DMA_BASE(BurstBaseAddress)); + assert_param(IS_TIM_DMA_SOURCE(BurstRequestSrc)); + assert_param(IS_TIM_DMA_LENGTH(BurstLength)); + assert_param(IS_TIM_DMA_DATA_LENGTH(DataLength)); + + if (htim->DMABurstState == HAL_DMA_BURST_STATE_BUSY) + { + return HAL_BUSY; + } + else if (htim->DMABurstState == HAL_DMA_BURST_STATE_READY) + { + if ((BurstBuffer == NULL) && (BurstLength > 0U)) + { + return HAL_ERROR; + } + else + { + htim->DMABurstState = HAL_DMA_BURST_STATE_BUSY; + } + } + else + { + /* nothing to do */ + } + switch (BurstRequestSrc) + { + case TIM_DMA_UPDATE: + { + /* Set the DMA Period elapsed callbacks */ + htim->hdma[TIM_DMA_ID_UPDATE]->XferCpltCallback = TIM_DMAPeriodElapsedCplt; + htim->hdma[TIM_DMA_ID_UPDATE]->XferHalfCpltCallback = TIM_DMAPeriodElapsedHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_UPDATE]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_UPDATE], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, + DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_CC1: + { + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, + DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_CC2: + { + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, + DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_CC3: + { + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, + DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_CC4: + { + /* Set the DMA capture callbacks */ + htim->hdma[TIM_DMA_ID_CC4]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC4]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC4]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC4], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, + DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_COM: + { + /* Set the DMA commutation callbacks */ + htim->hdma[TIM_DMA_ID_COMMUTATION]->XferCpltCallback = TIMEx_DMACommutationCplt; + htim->hdma[TIM_DMA_ID_COMMUTATION]->XferHalfCpltCallback = TIMEx_DMACommutationHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_COMMUTATION]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_COMMUTATION], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, + DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + case TIM_DMA_TRIGGER: + { + /* Set the DMA trigger callbacks */ + htim->hdma[TIM_DMA_ID_TRIGGER]->XferCpltCallback = TIM_DMATriggerCplt; + htim->hdma[TIM_DMA_ID_TRIGGER]->XferHalfCpltCallback = TIM_DMATriggerHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_TRIGGER]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_TRIGGER], (uint32_t)&htim->Instance->DMAR, (uint32_t)BurstBuffer, + DataLength) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + break; + } + default: + break; + } + + /* Configure the DMA Burst Mode */ + htim->Instance->DCR = (BurstBaseAddress | BurstLength); + + /* Enable the TIM DMA Request */ + __HAL_TIM_ENABLE_DMA(htim, BurstRequestSrc); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stop the DMA burst reading + * @param htim TIM handle + * @param BurstRequestSrc TIM DMA Request sources to disable. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_DMABurst_ReadStop(TIM_HandleTypeDef *htim, uint32_t BurstRequestSrc) +{ + /* Check the parameters */ + assert_param(IS_TIM_DMA_SOURCE(BurstRequestSrc)); + + /* Abort the DMA transfer (at least disable the DMA channel) */ + switch (BurstRequestSrc) + { + case TIM_DMA_UPDATE: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_UPDATE]); + break; + } + case TIM_DMA_CC1: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); + break; + } + case TIM_DMA_CC2: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); + break; + } + case TIM_DMA_CC3: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); + break; + } + case TIM_DMA_CC4: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC4]); + break; + } + case TIM_DMA_COM: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_COMMUTATION]); + break; + } + case TIM_DMA_TRIGGER: + { + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_TRIGGER]); + break; + } + default: + break; + } + + /* Disable the TIM Update DMA request */ + __HAL_TIM_DISABLE_DMA(htim, BurstRequestSrc); + + /* Change the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_READY; + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Generate a software event + * @param htim TIM handle + * @param EventSource specifies the event source. + * This parameter can be one of the following values: + * @arg TIM_EVENTSOURCE_UPDATE: Timer update Event source + * @arg TIM_EVENTSOURCE_CC1: Timer Capture Compare 1 Event source + * @arg TIM_EVENTSOURCE_CC2: Timer Capture Compare 2 Event source + * @arg TIM_EVENTSOURCE_CC3: Timer Capture Compare 3 Event source + * @arg TIM_EVENTSOURCE_CC4: Timer Capture Compare 4 Event source + * @arg TIM_EVENTSOURCE_COM: Timer COM event source + * @arg TIM_EVENTSOURCE_TRIGGER: Timer Trigger Event source + * @arg TIM_EVENTSOURCE_BREAK: Timer Break event source + * @note Basic timers can only generate an update event. + * @note TIM_EVENTSOURCE_COM is relevant only with advanced timer instances. + * @note TIM_EVENTSOURCE_BREAK are relevant only for timer instances + * supporting a break input. + * @retval HAL status + */ + +HAL_StatusTypeDef HAL_TIM_GenerateEvent(TIM_HandleTypeDef *htim, uint32_t EventSource) +{ + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + assert_param(IS_TIM_EVENT_SOURCE(EventSource)); + + /* Process Locked */ + __HAL_LOCK(htim); + + /* Change the TIM state */ + htim->State = HAL_TIM_STATE_BUSY; + + /* Set the event sources */ + htim->Instance->EGR = EventSource; + + /* Change the TIM state */ + htim->State = HAL_TIM_STATE_READY; + + __HAL_UNLOCK(htim); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Configures the OCRef clear feature + * @param htim TIM handle + * @param sClearInputConfig pointer to a TIM_ClearInputConfigTypeDef structure that + * contains the OCREF clear feature and parameters for the TIM peripheral. + * @param Channel specifies the TIM Channel + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 + * @arg TIM_CHANNEL_2: TIM Channel 2 + * @arg TIM_CHANNEL_3: TIM Channel 3 + * @arg TIM_CHANNEL_4: TIM Channel 4 + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_ConfigOCrefClear(TIM_HandleTypeDef *htim, + TIM_ClearInputConfigTypeDef *sClearInputConfig, + uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_OCXREF_CLEAR_INSTANCE(htim->Instance)); + assert_param(IS_TIM_CLEARINPUT_SOURCE(sClearInputConfig->ClearInputSource)); + + /* Process Locked */ + __HAL_LOCK(htim); + + htim->State = HAL_TIM_STATE_BUSY; + + switch (sClearInputConfig->ClearInputSource) + { + case TIM_CLEARINPUTSOURCE_NONE: + { + /* Clear the OCREF clear selection bit and the the ETR Bits */ + CLEAR_BIT(htim->Instance->SMCR, (TIM_SMCR_ETF | TIM_SMCR_ETPS | TIM_SMCR_ECE | TIM_SMCR_ETP)); + break; + } + + case TIM_CLEARINPUTSOURCE_ETR: + { + /* Check the parameters */ + assert_param(IS_TIM_CLEARINPUT_POLARITY(sClearInputConfig->ClearInputPolarity)); + assert_param(IS_TIM_CLEARINPUT_PRESCALER(sClearInputConfig->ClearInputPrescaler)); + assert_param(IS_TIM_CLEARINPUT_FILTER(sClearInputConfig->ClearInputFilter)); + + /* When OCRef clear feature is used with ETR source, ETR prescaler must be off */ + if (sClearInputConfig->ClearInputPrescaler != TIM_CLEARINPUTPRESCALER_DIV1) + { + htim->State = HAL_TIM_STATE_READY; + __HAL_UNLOCK(htim); + return HAL_ERROR; + } + + TIM_ETR_SetConfig(htim->Instance, + sClearInputConfig->ClearInputPrescaler, + sClearInputConfig->ClearInputPolarity, + sClearInputConfig->ClearInputFilter); + break; + } + + default: + break; + } + + switch (Channel) + { + case TIM_CHANNEL_1: + { + if (sClearInputConfig->ClearInputState != (uint32_t)DISABLE) + { + /* Enable the OCREF clear feature for Channel 1 */ + SET_BIT(htim->Instance->CCMR1, TIM_CCMR1_OC1CE); + } + else + { + /* Disable the OCREF clear feature for Channel 1 */ + CLEAR_BIT(htim->Instance->CCMR1, TIM_CCMR1_OC1CE); + } + break; + } + case TIM_CHANNEL_2: + { + if (sClearInputConfig->ClearInputState != (uint32_t)DISABLE) + { + /* Enable the OCREF clear feature for Channel 2 */ + SET_BIT(htim->Instance->CCMR1, TIM_CCMR1_OC2CE); + } + else + { + /* Disable the OCREF clear feature for Channel 2 */ + CLEAR_BIT(htim->Instance->CCMR1, TIM_CCMR1_OC2CE); + } + break; + } + case TIM_CHANNEL_3: + { + if (sClearInputConfig->ClearInputState != (uint32_t)DISABLE) + { + /* Enable the OCREF clear feature for Channel 3 */ + SET_BIT(htim->Instance->CCMR2, TIM_CCMR2_OC3CE); + } + else + { + /* Disable the OCREF clear feature for Channel 3 */ + CLEAR_BIT(htim->Instance->CCMR2, TIM_CCMR2_OC3CE); + } + break; + } + case TIM_CHANNEL_4: + { + if (sClearInputConfig->ClearInputState != (uint32_t)DISABLE) + { + /* Enable the OCREF clear feature for Channel 4 */ + SET_BIT(htim->Instance->CCMR2, TIM_CCMR2_OC4CE); + } + else + { + /* Disable the OCREF clear feature for Channel 4 */ + CLEAR_BIT(htim->Instance->CCMR2, TIM_CCMR2_OC4CE); + } + break; + } + default: + break; + } + + htim->State = HAL_TIM_STATE_READY; + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Configures the clock source to be used + * @param htim TIM handle + * @param sClockSourceConfig pointer to a TIM_ClockConfigTypeDef structure that + * contains the clock source information for the TIM peripheral. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_ConfigClockSource(TIM_HandleTypeDef *htim, TIM_ClockConfigTypeDef *sClockSourceConfig) +{ + uint32_t tmpsmcr; + + /* Process Locked */ + __HAL_LOCK(htim); + + htim->State = HAL_TIM_STATE_BUSY; + + /* Check the parameters */ + assert_param(IS_TIM_CLOCKSOURCE(sClockSourceConfig->ClockSource)); + + /* Reset the SMS, TS, ECE, ETPS and ETRF bits */ + tmpsmcr = htim->Instance->SMCR; + tmpsmcr &= ~(TIM_SMCR_SMS | TIM_SMCR_TS); + tmpsmcr &= ~(TIM_SMCR_ETF | TIM_SMCR_ETPS | TIM_SMCR_ECE | TIM_SMCR_ETP); + htim->Instance->SMCR = tmpsmcr; + + switch (sClockSourceConfig->ClockSource) + { + case TIM_CLOCKSOURCE_INTERNAL: + { + assert_param(IS_TIM_INSTANCE(htim->Instance)); + break; + } + + case TIM_CLOCKSOURCE_ETRMODE1: + { + /* Check whether or not the timer instance supports external trigger input mode 1 (ETRF)*/ + assert_param(IS_TIM_CLOCKSOURCE_ETRMODE1_INSTANCE(htim->Instance)); + + /* Check ETR input conditioning related parameters */ + assert_param(IS_TIM_CLOCKPRESCALER(sClockSourceConfig->ClockPrescaler)); + assert_param(IS_TIM_CLOCKPOLARITY(sClockSourceConfig->ClockPolarity)); + assert_param(IS_TIM_CLOCKFILTER(sClockSourceConfig->ClockFilter)); + + /* Configure the ETR Clock source */ + TIM_ETR_SetConfig(htim->Instance, + sClockSourceConfig->ClockPrescaler, + sClockSourceConfig->ClockPolarity, + sClockSourceConfig->ClockFilter); + + /* Select the External clock mode1 and the ETRF trigger */ + tmpsmcr = htim->Instance->SMCR; + tmpsmcr |= (TIM_SLAVEMODE_EXTERNAL1 | TIM_CLOCKSOURCE_ETRMODE1); + /* Write to TIMx SMCR */ + htim->Instance->SMCR = tmpsmcr; + break; + } + + case TIM_CLOCKSOURCE_ETRMODE2: + { + /* Check whether or not the timer instance supports external trigger input mode 2 (ETRF)*/ + assert_param(IS_TIM_CLOCKSOURCE_ETRMODE2_INSTANCE(htim->Instance)); + + /* Check ETR input conditioning related parameters */ + assert_param(IS_TIM_CLOCKPRESCALER(sClockSourceConfig->ClockPrescaler)); + assert_param(IS_TIM_CLOCKPOLARITY(sClockSourceConfig->ClockPolarity)); + assert_param(IS_TIM_CLOCKFILTER(sClockSourceConfig->ClockFilter)); + + /* Configure the ETR Clock source */ + TIM_ETR_SetConfig(htim->Instance, + sClockSourceConfig->ClockPrescaler, + sClockSourceConfig->ClockPolarity, + sClockSourceConfig->ClockFilter); + /* Enable the External clock mode2 */ + htim->Instance->SMCR |= TIM_SMCR_ECE; + break; + } + + case TIM_CLOCKSOURCE_TI1: + { + /* Check whether or not the timer instance supports external clock mode 1 */ + assert_param(IS_TIM_CLOCKSOURCE_TIX_INSTANCE(htim->Instance)); + + /* Check TI1 input conditioning related parameters */ + assert_param(IS_TIM_CLOCKPOLARITY(sClockSourceConfig->ClockPolarity)); + assert_param(IS_TIM_CLOCKFILTER(sClockSourceConfig->ClockFilter)); + + TIM_TI1_ConfigInputStage(htim->Instance, + sClockSourceConfig->ClockPolarity, + sClockSourceConfig->ClockFilter); + TIM_ITRx_SetConfig(htim->Instance, TIM_CLOCKSOURCE_TI1); + break; + } + + case TIM_CLOCKSOURCE_TI2: + { + /* Check whether or not the timer instance supports external clock mode 1 (ETRF)*/ + assert_param(IS_TIM_CLOCKSOURCE_TIX_INSTANCE(htim->Instance)); + + /* Check TI2 input conditioning related parameters */ + assert_param(IS_TIM_CLOCKPOLARITY(sClockSourceConfig->ClockPolarity)); + assert_param(IS_TIM_CLOCKFILTER(sClockSourceConfig->ClockFilter)); + + TIM_TI2_ConfigInputStage(htim->Instance, + sClockSourceConfig->ClockPolarity, + sClockSourceConfig->ClockFilter); + TIM_ITRx_SetConfig(htim->Instance, TIM_CLOCKSOURCE_TI2); + break; + } + + case TIM_CLOCKSOURCE_TI1ED: + { + /* Check whether or not the timer instance supports external clock mode 1 */ + assert_param(IS_TIM_CLOCKSOURCE_TIX_INSTANCE(htim->Instance)); + + /* Check TI1 input conditioning related parameters */ + assert_param(IS_TIM_CLOCKPOLARITY(sClockSourceConfig->ClockPolarity)); + assert_param(IS_TIM_CLOCKFILTER(sClockSourceConfig->ClockFilter)); + + TIM_TI1_ConfigInputStage(htim->Instance, + sClockSourceConfig->ClockPolarity, + sClockSourceConfig->ClockFilter); + TIM_ITRx_SetConfig(htim->Instance, TIM_CLOCKSOURCE_TI1ED); + break; + } + + case TIM_CLOCKSOURCE_ITR0: + case TIM_CLOCKSOURCE_ITR1: + case TIM_CLOCKSOURCE_ITR2: + case TIM_CLOCKSOURCE_ITR3: + { + /* Check whether or not the timer instance supports internal trigger input */ + assert_param(IS_TIM_CLOCKSOURCE_ITRX_INSTANCE(htim->Instance)); + + TIM_ITRx_SetConfig(htim->Instance, sClockSourceConfig->ClockSource); + break; + } + + default: + break; + } + htim->State = HAL_TIM_STATE_READY; + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Selects the signal connected to the TI1 input: direct from CH1_input + * or a XOR combination between CH1_input, CH2_input & CH3_input + * @param htim TIM handle. + * @param TI1_Selection Indicate whether or not channel 1 is connected to the + * output of a XOR gate. + * This parameter can be one of the following values: + * @arg TIM_TI1SELECTION_CH1: The TIMx_CH1 pin is connected to TI1 input + * @arg TIM_TI1SELECTION_XORCOMBINATION: The TIMx_CH1, CH2 and CH3 + * pins are connected to the TI1 input (XOR combination) + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_ConfigTI1Input(TIM_HandleTypeDef *htim, uint32_t TI1_Selection) +{ + uint32_t tmpcr2; + + /* Check the parameters */ + assert_param(IS_TIM_XOR_INSTANCE(htim->Instance)); + assert_param(IS_TIM_TI1SELECTION(TI1_Selection)); + + /* Get the TIMx CR2 register value */ + tmpcr2 = htim->Instance->CR2; + + /* Reset the TI1 selection */ + tmpcr2 &= ~TIM_CR2_TI1S; + + /* Set the TI1 selection */ + tmpcr2 |= TI1_Selection; + + /* Write to TIMxCR2 */ + htim->Instance->CR2 = tmpcr2; + + return HAL_OK; +} + +/** + * @brief Configures the TIM in Slave mode + * @param htim TIM handle. + * @param sSlaveConfig pointer to a TIM_SlaveConfigTypeDef structure that + * contains the selected trigger (internal trigger input, filtered + * timer input or external trigger input) and the Slave mode + * (Disable, Reset, Gated, Trigger, External clock mode 1). + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_SlaveConfigSynchro(TIM_HandleTypeDef *htim, TIM_SlaveConfigTypeDef *sSlaveConfig) +{ + /* Check the parameters */ + assert_param(IS_TIM_SLAVE_INSTANCE(htim->Instance)); + assert_param(IS_TIM_SLAVE_MODE(sSlaveConfig->SlaveMode)); + assert_param(IS_TIM_TRIGGER_SELECTION(sSlaveConfig->InputTrigger)); + + __HAL_LOCK(htim); + + htim->State = HAL_TIM_STATE_BUSY; + + if (TIM_SlaveTimer_SetConfig(htim, sSlaveConfig) != HAL_OK) + { + htim->State = HAL_TIM_STATE_READY; + __HAL_UNLOCK(htim); + return HAL_ERROR; + } + + /* Disable Trigger Interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_TRIGGER); + + /* Disable Trigger DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_TRIGGER); + + htim->State = HAL_TIM_STATE_READY; + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Configures the TIM in Slave mode in interrupt mode + * @param htim TIM handle. + * @param sSlaveConfig pointer to a TIM_SlaveConfigTypeDef structure that + * contains the selected trigger (internal trigger input, filtered + * timer input or external trigger input) and the Slave mode + * (Disable, Reset, Gated, Trigger, External clock mode 1). + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIM_SlaveConfigSynchro_IT(TIM_HandleTypeDef *htim, + TIM_SlaveConfigTypeDef *sSlaveConfig) +{ + /* Check the parameters */ + assert_param(IS_TIM_SLAVE_INSTANCE(htim->Instance)); + assert_param(IS_TIM_SLAVE_MODE(sSlaveConfig->SlaveMode)); + assert_param(IS_TIM_TRIGGER_SELECTION(sSlaveConfig->InputTrigger)); + + __HAL_LOCK(htim); + + htim->State = HAL_TIM_STATE_BUSY; + + if (TIM_SlaveTimer_SetConfig(htim, sSlaveConfig) != HAL_OK) + { + htim->State = HAL_TIM_STATE_READY; + __HAL_UNLOCK(htim); + return HAL_ERROR; + } + + /* Enable Trigger Interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_TRIGGER); + + /* Disable Trigger DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_TRIGGER); + + htim->State = HAL_TIM_STATE_READY; + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Read the captured value from Capture Compare unit + * @param htim TIM handle. + * @param Channel TIM Channels to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @arg TIM_CHANNEL_4: TIM Channel 4 selected + * @retval Captured value + */ +uint32_t HAL_TIM_ReadCapturedValue(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpreg = 0U; + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Check the parameters */ + assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); + + /* Return the capture 1 value */ + tmpreg = htim->Instance->CCR1; + + break; + } + case TIM_CHANNEL_2: + { + /* Check the parameters */ + assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); + + /* Return the capture 2 value */ + tmpreg = htim->Instance->CCR2; + + break; + } + + case TIM_CHANNEL_3: + { + /* Check the parameters */ + assert_param(IS_TIM_CC3_INSTANCE(htim->Instance)); + + /* Return the capture 3 value */ + tmpreg = htim->Instance->CCR3; + + break; + } + + case TIM_CHANNEL_4: + { + /* Check the parameters */ + assert_param(IS_TIM_CC4_INSTANCE(htim->Instance)); + + /* Return the capture 4 value */ + tmpreg = htim->Instance->CCR4; + + break; + } + + default: + break; + } + + return tmpreg; +} + +/** + * @} + */ + +/** @defgroup TIM_Exported_Functions_Group9 TIM Callbacks functions + * @brief TIM Callbacks functions + * +@verbatim + ============================================================================== + ##### TIM Callbacks functions ##### + ============================================================================== + [..] + This section provides TIM callback functions: + (+) TIM Period elapsed callback + (+) TIM Output Compare callback + (+) TIM Input capture callback + (+) TIM Trigger callback + (+) TIM Error callback + +@endverbatim + * @{ + */ + +/** + * @brief Period elapsed callback in non-blocking mode + * @param htim TIM handle + * @retval None + */ +__weak void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_PeriodElapsedCallback could be implemented in the user file + */ +} + +/** + * @brief Period elapsed half complete callback in non-blocking mode + * @param htim TIM handle + * @retval None + */ +__weak void HAL_TIM_PeriodElapsedHalfCpltCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_PeriodElapsedHalfCpltCallback could be implemented in the user file + */ +} + +/** + * @brief Output Compare callback in non-blocking mode + * @param htim TIM OC handle + * @retval None + */ +__weak void HAL_TIM_OC_DelayElapsedCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_OC_DelayElapsedCallback could be implemented in the user file + */ +} + +/** + * @brief Input Capture callback in non-blocking mode + * @param htim TIM IC handle + * @retval None + */ +__weak void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_IC_CaptureCallback could be implemented in the user file + */ +} + +/** + * @brief Input Capture half complete callback in non-blocking mode + * @param htim TIM IC handle + * @retval None + */ +__weak void HAL_TIM_IC_CaptureHalfCpltCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_IC_CaptureHalfCpltCallback could be implemented in the user file + */ +} + +/** + * @brief PWM Pulse finished callback in non-blocking mode + * @param htim TIM handle + * @retval None + */ +__weak void HAL_TIM_PWM_PulseFinishedCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_PWM_PulseFinishedCallback could be implemented in the user file + */ +} + +/** + * @brief PWM Pulse finished half complete callback in non-blocking mode + * @param htim TIM handle + * @retval None + */ +__weak void HAL_TIM_PWM_PulseFinishedHalfCpltCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_PWM_PulseFinishedHalfCpltCallback could be implemented in the user file + */ +} + +/** + * @brief Hall Trigger detection callback in non-blocking mode + * @param htim TIM handle + * @retval None + */ +__weak void HAL_TIM_TriggerCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_TriggerCallback could be implemented in the user file + */ +} + +/** + * @brief Hall Trigger detection half complete callback in non-blocking mode + * @param htim TIM handle + * @retval None + */ +__weak void HAL_TIM_TriggerHalfCpltCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_TriggerHalfCpltCallback could be implemented in the user file + */ +} + +/** + * @brief Timer error callback in non-blocking mode + * @param htim TIM handle + * @retval None + */ +__weak void HAL_TIM_ErrorCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIM_ErrorCallback could be implemented in the user file + */ +} + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) +/** + * @brief Register a User TIM callback to be used instead of the weak predefined callback + * @param htim tim handle + * @param CallbackID ID of the callback to be registered + * This parameter can be one of the following values: + * @arg @ref HAL_TIM_BASE_MSPINIT_CB_ID Base MspInit Callback ID + * @arg @ref HAL_TIM_BASE_MSPDEINIT_CB_ID Base MspDeInit Callback ID + * @arg @ref HAL_TIM_IC_MSPINIT_CB_ID IC MspInit Callback ID + * @arg @ref HAL_TIM_IC_MSPDEINIT_CB_ID IC MspDeInit Callback ID + * @arg @ref HAL_TIM_OC_MSPINIT_CB_ID OC MspInit Callback ID + * @arg @ref HAL_TIM_OC_MSPDEINIT_CB_ID OC MspDeInit Callback ID + * @arg @ref HAL_TIM_PWM_MSPINIT_CB_ID PWM MspInit Callback ID + * @arg @ref HAL_TIM_PWM_MSPDEINIT_CB_ID PWM MspDeInit Callback ID + * @arg @ref HAL_TIM_ONE_PULSE_MSPINIT_CB_ID One Pulse MspInit Callback ID + * @arg @ref HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID One Pulse MspDeInit Callback ID + * @arg @ref HAL_TIM_ENCODER_MSPINIT_CB_ID Encoder MspInit Callback ID + * @arg @ref HAL_TIM_ENCODER_MSPDEINIT_CB_ID Encoder MspDeInit Callback ID + * @arg @ref HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID Hall Sensor MspInit Callback ID + * @arg @ref HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID Hall Sensor MspDeInit Callback ID + * @arg @ref HAL_TIM_PERIOD_ELAPSED_CB_ID Period Elapsed Callback ID + * @arg @ref HAL_TIM_PERIOD_ELAPSED_HALF_CB_ID Period Elapsed half complete Callback ID + * @arg @ref HAL_TIM_TRIGGER_CB_ID Trigger Callback ID + * @arg @ref HAL_TIM_TRIGGER_HALF_CB_ID Trigger half complete Callback ID + * @arg @ref HAL_TIM_IC_CAPTURE_CB_ID Input Capture Callback ID + * @arg @ref HAL_TIM_IC_CAPTURE_HALF_CB_ID Input Capture half complete Callback ID + * @arg @ref HAL_TIM_OC_DELAY_ELAPSED_CB_ID Output Compare Delay Elapsed Callback ID + * @arg @ref HAL_TIM_PWM_PULSE_FINISHED_CB_ID PWM Pulse Finished Callback ID + * @arg @ref HAL_TIM_PWM_PULSE_FINISHED_HALF_CB_ID PWM Pulse Finished half complete Callback ID + * @arg @ref HAL_TIM_ERROR_CB_ID Error Callback ID + * @arg @ref HAL_TIM_COMMUTATION_CB_ID Commutation Callback ID + * @arg @ref HAL_TIM_COMMUTATION_HALF_CB_ID Commutation half complete Callback ID + * @arg @ref HAL_TIM_BREAK_CB_ID Break Callback ID + * @param pCallback pointer to the callback function + * @retval status + */ +HAL_StatusTypeDef HAL_TIM_RegisterCallback(TIM_HandleTypeDef *htim, HAL_TIM_CallbackIDTypeDef CallbackID, + pTIM_CallbackTypeDef pCallback) +{ + HAL_StatusTypeDef status = HAL_OK; + + if (pCallback == NULL) + { + return HAL_ERROR; + } + /* Process locked */ + __HAL_LOCK(htim); + + if (htim->State == HAL_TIM_STATE_READY) + { + switch (CallbackID) + { + case HAL_TIM_BASE_MSPINIT_CB_ID : + htim->Base_MspInitCallback = pCallback; + break; + + case HAL_TIM_BASE_MSPDEINIT_CB_ID : + htim->Base_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_IC_MSPINIT_CB_ID : + htim->IC_MspInitCallback = pCallback; + break; + + case HAL_TIM_IC_MSPDEINIT_CB_ID : + htim->IC_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_OC_MSPINIT_CB_ID : + htim->OC_MspInitCallback = pCallback; + break; + + case HAL_TIM_OC_MSPDEINIT_CB_ID : + htim->OC_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_PWM_MSPINIT_CB_ID : + htim->PWM_MspInitCallback = pCallback; + break; + + case HAL_TIM_PWM_MSPDEINIT_CB_ID : + htim->PWM_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_ONE_PULSE_MSPINIT_CB_ID : + htim->OnePulse_MspInitCallback = pCallback; + break; + + case HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID : + htim->OnePulse_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_ENCODER_MSPINIT_CB_ID : + htim->Encoder_MspInitCallback = pCallback; + break; + + case HAL_TIM_ENCODER_MSPDEINIT_CB_ID : + htim->Encoder_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID : + htim->HallSensor_MspInitCallback = pCallback; + break; + + case HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID : + htim->HallSensor_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_PERIOD_ELAPSED_CB_ID : + htim->PeriodElapsedCallback = pCallback; + break; + + case HAL_TIM_PERIOD_ELAPSED_HALF_CB_ID : + htim->PeriodElapsedHalfCpltCallback = pCallback; + break; + + case HAL_TIM_TRIGGER_CB_ID : + htim->TriggerCallback = pCallback; + break; + + case HAL_TIM_TRIGGER_HALF_CB_ID : + htim->TriggerHalfCpltCallback = pCallback; + break; + + case HAL_TIM_IC_CAPTURE_CB_ID : + htim->IC_CaptureCallback = pCallback; + break; + + case HAL_TIM_IC_CAPTURE_HALF_CB_ID : + htim->IC_CaptureHalfCpltCallback = pCallback; + break; + + case HAL_TIM_OC_DELAY_ELAPSED_CB_ID : + htim->OC_DelayElapsedCallback = pCallback; + break; + + case HAL_TIM_PWM_PULSE_FINISHED_CB_ID : + htim->PWM_PulseFinishedCallback = pCallback; + break; + + case HAL_TIM_PWM_PULSE_FINISHED_HALF_CB_ID : + htim->PWM_PulseFinishedHalfCpltCallback = pCallback; + break; + + case HAL_TIM_ERROR_CB_ID : + htim->ErrorCallback = pCallback; + break; + + case HAL_TIM_COMMUTATION_CB_ID : + htim->CommutationCallback = pCallback; + break; + + case HAL_TIM_COMMUTATION_HALF_CB_ID : + htim->CommutationHalfCpltCallback = pCallback; + break; + + case HAL_TIM_BREAK_CB_ID : + htim->BreakCallback = pCallback; + break; + + default : + /* Return error status */ + status = HAL_ERROR; + break; + } + } + else if (htim->State == HAL_TIM_STATE_RESET) + { + switch (CallbackID) + { + case HAL_TIM_BASE_MSPINIT_CB_ID : + htim->Base_MspInitCallback = pCallback; + break; + + case HAL_TIM_BASE_MSPDEINIT_CB_ID : + htim->Base_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_IC_MSPINIT_CB_ID : + htim->IC_MspInitCallback = pCallback; + break; + + case HAL_TIM_IC_MSPDEINIT_CB_ID : + htim->IC_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_OC_MSPINIT_CB_ID : + htim->OC_MspInitCallback = pCallback; + break; + + case HAL_TIM_OC_MSPDEINIT_CB_ID : + htim->OC_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_PWM_MSPINIT_CB_ID : + htim->PWM_MspInitCallback = pCallback; + break; + + case HAL_TIM_PWM_MSPDEINIT_CB_ID : + htim->PWM_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_ONE_PULSE_MSPINIT_CB_ID : + htim->OnePulse_MspInitCallback = pCallback; + break; + + case HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID : + htim->OnePulse_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_ENCODER_MSPINIT_CB_ID : + htim->Encoder_MspInitCallback = pCallback; + break; + + case HAL_TIM_ENCODER_MSPDEINIT_CB_ID : + htim->Encoder_MspDeInitCallback = pCallback; + break; + + case HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID : + htim->HallSensor_MspInitCallback = pCallback; + break; + + case HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID : + htim->HallSensor_MspDeInitCallback = pCallback; + break; + + default : + /* Return error status */ + status = HAL_ERROR; + break; + } + } + else + { + /* Return error status */ + status = HAL_ERROR; + } + + /* Release Lock */ + __HAL_UNLOCK(htim); + + return status; +} + +/** + * @brief Unregister a TIM callback + * TIM callback is redirected to the weak predefined callback + * @param htim tim handle + * @param CallbackID ID of the callback to be unregistered + * This parameter can be one of the following values: + * @arg @ref HAL_TIM_BASE_MSPINIT_CB_ID Base MspInit Callback ID + * @arg @ref HAL_TIM_BASE_MSPDEINIT_CB_ID Base MspDeInit Callback ID + * @arg @ref HAL_TIM_IC_MSPINIT_CB_ID IC MspInit Callback ID + * @arg @ref HAL_TIM_IC_MSPDEINIT_CB_ID IC MspDeInit Callback ID + * @arg @ref HAL_TIM_OC_MSPINIT_CB_ID OC MspInit Callback ID + * @arg @ref HAL_TIM_OC_MSPDEINIT_CB_ID OC MspDeInit Callback ID + * @arg @ref HAL_TIM_PWM_MSPINIT_CB_ID PWM MspInit Callback ID + * @arg @ref HAL_TIM_PWM_MSPDEINIT_CB_ID PWM MspDeInit Callback ID + * @arg @ref HAL_TIM_ONE_PULSE_MSPINIT_CB_ID One Pulse MspInit Callback ID + * @arg @ref HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID One Pulse MspDeInit Callback ID + * @arg @ref HAL_TIM_ENCODER_MSPINIT_CB_ID Encoder MspInit Callback ID + * @arg @ref HAL_TIM_ENCODER_MSPDEINIT_CB_ID Encoder MspDeInit Callback ID + * @arg @ref HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID Hall Sensor MspInit Callback ID + * @arg @ref HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID Hall Sensor MspDeInit Callback ID + * @arg @ref HAL_TIM_PERIOD_ELAPSED_CB_ID Period Elapsed Callback ID + * @arg @ref HAL_TIM_PERIOD_ELAPSED_HALF_CB_ID Period Elapsed half complete Callback ID + * @arg @ref HAL_TIM_TRIGGER_CB_ID Trigger Callback ID + * @arg @ref HAL_TIM_TRIGGER_HALF_CB_ID Trigger half complete Callback ID + * @arg @ref HAL_TIM_IC_CAPTURE_CB_ID Input Capture Callback ID + * @arg @ref HAL_TIM_IC_CAPTURE_HALF_CB_ID Input Capture half complete Callback ID + * @arg @ref HAL_TIM_OC_DELAY_ELAPSED_CB_ID Output Compare Delay Elapsed Callback ID + * @arg @ref HAL_TIM_PWM_PULSE_FINISHED_CB_ID PWM Pulse Finished Callback ID + * @arg @ref HAL_TIM_PWM_PULSE_FINISHED_HALF_CB_ID PWM Pulse Finished half complete Callback ID + * @arg @ref HAL_TIM_ERROR_CB_ID Error Callback ID + * @arg @ref HAL_TIM_COMMUTATION_CB_ID Commutation Callback ID + * @arg @ref HAL_TIM_COMMUTATION_HALF_CB_ID Commutation half complete Callback ID + * @arg @ref HAL_TIM_BREAK_CB_ID Break Callback ID + * @retval status + */ +HAL_StatusTypeDef HAL_TIM_UnRegisterCallback(TIM_HandleTypeDef *htim, HAL_TIM_CallbackIDTypeDef CallbackID) +{ + HAL_StatusTypeDef status = HAL_OK; + + /* Process locked */ + __HAL_LOCK(htim); + + if (htim->State == HAL_TIM_STATE_READY) + { + switch (CallbackID) + { + case HAL_TIM_BASE_MSPINIT_CB_ID : + /* Legacy weak Base MspInit Callback */ + htim->Base_MspInitCallback = HAL_TIM_Base_MspInit; + break; + + case HAL_TIM_BASE_MSPDEINIT_CB_ID : + /* Legacy weak Base Msp DeInit Callback */ + htim->Base_MspDeInitCallback = HAL_TIM_Base_MspDeInit; + break; + + case HAL_TIM_IC_MSPINIT_CB_ID : + /* Legacy weak IC Msp Init Callback */ + htim->IC_MspInitCallback = HAL_TIM_IC_MspInit; + break; + + case HAL_TIM_IC_MSPDEINIT_CB_ID : + /* Legacy weak IC Msp DeInit Callback */ + htim->IC_MspDeInitCallback = HAL_TIM_IC_MspDeInit; + break; + + case HAL_TIM_OC_MSPINIT_CB_ID : + /* Legacy weak OC Msp Init Callback */ + htim->OC_MspInitCallback = HAL_TIM_OC_MspInit; + break; + + case HAL_TIM_OC_MSPDEINIT_CB_ID : + /* Legacy weak OC Msp DeInit Callback */ + htim->OC_MspDeInitCallback = HAL_TIM_OC_MspDeInit; + break; + + case HAL_TIM_PWM_MSPINIT_CB_ID : + /* Legacy weak PWM Msp Init Callback */ + htim->PWM_MspInitCallback = HAL_TIM_PWM_MspInit; + break; + + case HAL_TIM_PWM_MSPDEINIT_CB_ID : + /* Legacy weak PWM Msp DeInit Callback */ + htim->PWM_MspDeInitCallback = HAL_TIM_PWM_MspDeInit; + break; + + case HAL_TIM_ONE_PULSE_MSPINIT_CB_ID : + /* Legacy weak One Pulse Msp Init Callback */ + htim->OnePulse_MspInitCallback = HAL_TIM_OnePulse_MspInit; + break; + + case HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID : + /* Legacy weak One Pulse Msp DeInit Callback */ + htim->OnePulse_MspDeInitCallback = HAL_TIM_OnePulse_MspDeInit; + break; + + case HAL_TIM_ENCODER_MSPINIT_CB_ID : + /* Legacy weak Encoder Msp Init Callback */ + htim->Encoder_MspInitCallback = HAL_TIM_Encoder_MspInit; + break; + + case HAL_TIM_ENCODER_MSPDEINIT_CB_ID : + /* Legacy weak Encoder Msp DeInit Callback */ + htim->Encoder_MspDeInitCallback = HAL_TIM_Encoder_MspDeInit; + break; + + case HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID : + /* Legacy weak Hall Sensor Msp Init Callback */ + htim->HallSensor_MspInitCallback = HAL_TIMEx_HallSensor_MspInit; + break; + + case HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID : + /* Legacy weak Hall Sensor Msp DeInit Callback */ + htim->HallSensor_MspDeInitCallback = HAL_TIMEx_HallSensor_MspDeInit; + break; + + case HAL_TIM_PERIOD_ELAPSED_CB_ID : + /* Legacy weak Period Elapsed Callback */ + htim->PeriodElapsedCallback = HAL_TIM_PeriodElapsedCallback; + break; + + case HAL_TIM_PERIOD_ELAPSED_HALF_CB_ID : + /* Legacy weak Period Elapsed half complete Callback */ + htim->PeriodElapsedHalfCpltCallback = HAL_TIM_PeriodElapsedHalfCpltCallback; + break; + + case HAL_TIM_TRIGGER_CB_ID : + /* Legacy weak Trigger Callback */ + htim->TriggerCallback = HAL_TIM_TriggerCallback; + break; + + case HAL_TIM_TRIGGER_HALF_CB_ID : + /* Legacy weak Trigger half complete Callback */ + htim->TriggerHalfCpltCallback = HAL_TIM_TriggerHalfCpltCallback; + break; + + case HAL_TIM_IC_CAPTURE_CB_ID : + /* Legacy weak IC Capture Callback */ + htim->IC_CaptureCallback = HAL_TIM_IC_CaptureCallback; + break; + + case HAL_TIM_IC_CAPTURE_HALF_CB_ID : + /* Legacy weak IC Capture half complete Callback */ + htim->IC_CaptureHalfCpltCallback = HAL_TIM_IC_CaptureHalfCpltCallback; + break; + + case HAL_TIM_OC_DELAY_ELAPSED_CB_ID : + /* Legacy weak OC Delay Elapsed Callback */ + htim->OC_DelayElapsedCallback = HAL_TIM_OC_DelayElapsedCallback; + break; + + case HAL_TIM_PWM_PULSE_FINISHED_CB_ID : + /* Legacy weak PWM Pulse Finished Callback */ + htim->PWM_PulseFinishedCallback = HAL_TIM_PWM_PulseFinishedCallback; + break; + + case HAL_TIM_PWM_PULSE_FINISHED_HALF_CB_ID : + /* Legacy weak PWM Pulse Finished half complete Callback */ + htim->PWM_PulseFinishedHalfCpltCallback = HAL_TIM_PWM_PulseFinishedHalfCpltCallback; + break; + + case HAL_TIM_ERROR_CB_ID : + /* Legacy weak Error Callback */ + htim->ErrorCallback = HAL_TIM_ErrorCallback; + break; + + case HAL_TIM_COMMUTATION_CB_ID : + /* Legacy weak Commutation Callback */ + htim->CommutationCallback = HAL_TIMEx_CommutCallback; + break; + + case HAL_TIM_COMMUTATION_HALF_CB_ID : + /* Legacy weak Commutation half complete Callback */ + htim->CommutationHalfCpltCallback = HAL_TIMEx_CommutHalfCpltCallback; + break; + + case HAL_TIM_BREAK_CB_ID : + /* Legacy weak Break Callback */ + htim->BreakCallback = HAL_TIMEx_BreakCallback; + break; + + default : + /* Return error status */ + status = HAL_ERROR; + break; + } + } + else if (htim->State == HAL_TIM_STATE_RESET) + { + switch (CallbackID) + { + case HAL_TIM_BASE_MSPINIT_CB_ID : + /* Legacy weak Base MspInit Callback */ + htim->Base_MspInitCallback = HAL_TIM_Base_MspInit; + break; + + case HAL_TIM_BASE_MSPDEINIT_CB_ID : + /* Legacy weak Base Msp DeInit Callback */ + htim->Base_MspDeInitCallback = HAL_TIM_Base_MspDeInit; + break; + + case HAL_TIM_IC_MSPINIT_CB_ID : + /* Legacy weak IC Msp Init Callback */ + htim->IC_MspInitCallback = HAL_TIM_IC_MspInit; + break; + + case HAL_TIM_IC_MSPDEINIT_CB_ID : + /* Legacy weak IC Msp DeInit Callback */ + htim->IC_MspDeInitCallback = HAL_TIM_IC_MspDeInit; + break; + + case HAL_TIM_OC_MSPINIT_CB_ID : + /* Legacy weak OC Msp Init Callback */ + htim->OC_MspInitCallback = HAL_TIM_OC_MspInit; + break; + + case HAL_TIM_OC_MSPDEINIT_CB_ID : + /* Legacy weak OC Msp DeInit Callback */ + htim->OC_MspDeInitCallback = HAL_TIM_OC_MspDeInit; + break; + + case HAL_TIM_PWM_MSPINIT_CB_ID : + /* Legacy weak PWM Msp Init Callback */ + htim->PWM_MspInitCallback = HAL_TIM_PWM_MspInit; + break; + + case HAL_TIM_PWM_MSPDEINIT_CB_ID : + /* Legacy weak PWM Msp DeInit Callback */ + htim->PWM_MspDeInitCallback = HAL_TIM_PWM_MspDeInit; + break; + + case HAL_TIM_ONE_PULSE_MSPINIT_CB_ID : + /* Legacy weak One Pulse Msp Init Callback */ + htim->OnePulse_MspInitCallback = HAL_TIM_OnePulse_MspInit; + break; + + case HAL_TIM_ONE_PULSE_MSPDEINIT_CB_ID : + /* Legacy weak One Pulse Msp DeInit Callback */ + htim->OnePulse_MspDeInitCallback = HAL_TIM_OnePulse_MspDeInit; + break; + + case HAL_TIM_ENCODER_MSPINIT_CB_ID : + /* Legacy weak Encoder Msp Init Callback */ + htim->Encoder_MspInitCallback = HAL_TIM_Encoder_MspInit; + break; + + case HAL_TIM_ENCODER_MSPDEINIT_CB_ID : + /* Legacy weak Encoder Msp DeInit Callback */ + htim->Encoder_MspDeInitCallback = HAL_TIM_Encoder_MspDeInit; + break; + + case HAL_TIM_HALL_SENSOR_MSPINIT_CB_ID : + /* Legacy weak Hall Sensor Msp Init Callback */ + htim->HallSensor_MspInitCallback = HAL_TIMEx_HallSensor_MspInit; + break; + + case HAL_TIM_HALL_SENSOR_MSPDEINIT_CB_ID : + /* Legacy weak Hall Sensor Msp DeInit Callback */ + htim->HallSensor_MspDeInitCallback = HAL_TIMEx_HallSensor_MspDeInit; + break; + + default : + /* Return error status */ + status = HAL_ERROR; + break; + } + } + else + { + /* Return error status */ + status = HAL_ERROR; + } + + /* Release Lock */ + __HAL_UNLOCK(htim); + + return status; +} +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + +/** + * @} + */ + +/** @defgroup TIM_Exported_Functions_Group10 TIM Peripheral State functions + * @brief TIM Peripheral State functions + * +@verbatim + ============================================================================== + ##### Peripheral State functions ##### + ============================================================================== + [..] + This subsection permits to get in run-time the status of the peripheral + and the data flow. + +@endverbatim + * @{ + */ + +/** + * @brief Return the TIM Base handle state. + * @param htim TIM Base handle + * @retval HAL state + */ +HAL_TIM_StateTypeDef HAL_TIM_Base_GetState(TIM_HandleTypeDef *htim) +{ + return htim->State; +} + +/** + * @brief Return the TIM OC handle state. + * @param htim TIM Output Compare handle + * @retval HAL state + */ +HAL_TIM_StateTypeDef HAL_TIM_OC_GetState(TIM_HandleTypeDef *htim) +{ + return htim->State; +} + +/** + * @brief Return the TIM PWM handle state. + * @param htim TIM handle + * @retval HAL state + */ +HAL_TIM_StateTypeDef HAL_TIM_PWM_GetState(TIM_HandleTypeDef *htim) +{ + return htim->State; +} + +/** + * @brief Return the TIM Input Capture handle state. + * @param htim TIM IC handle + * @retval HAL state + */ +HAL_TIM_StateTypeDef HAL_TIM_IC_GetState(TIM_HandleTypeDef *htim) +{ + return htim->State; +} + +/** + * @brief Return the TIM One Pulse Mode handle state. + * @param htim TIM OPM handle + * @retval HAL state + */ +HAL_TIM_StateTypeDef HAL_TIM_OnePulse_GetState(TIM_HandleTypeDef *htim) +{ + return htim->State; +} + +/** + * @brief Return the TIM Encoder Mode handle state. + * @param htim TIM Encoder Interface handle + * @retval HAL state + */ +HAL_TIM_StateTypeDef HAL_TIM_Encoder_GetState(TIM_HandleTypeDef *htim) +{ + return htim->State; +} + +/** + * @brief Return the TIM Encoder Mode handle state. + * @param htim TIM handle + * @retval Active channel + */ +HAL_TIM_ActiveChannel HAL_TIM_GetActiveChannel(TIM_HandleTypeDef *htim) +{ + return htim->Channel; +} + +/** + * @brief Return actual state of the TIM channel. + * @param htim TIM handle + * @param Channel TIM Channel + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 + * @arg TIM_CHANNEL_2: TIM Channel 2 + * @arg TIM_CHANNEL_3: TIM Channel 3 + * @arg TIM_CHANNEL_4: TIM Channel 4 + * @arg TIM_CHANNEL_5: TIM Channel 5 + * @arg TIM_CHANNEL_6: TIM Channel 6 + * @retval TIM Channel state + */ +HAL_TIM_ChannelStateTypeDef HAL_TIM_GetChannelState(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + HAL_TIM_ChannelStateTypeDef channel_state; + + /* Check the parameters */ + assert_param(IS_TIM_CCX_INSTANCE(htim->Instance, Channel)); + + channel_state = TIM_CHANNEL_STATE_GET(htim, Channel); + + return channel_state; +} + +/** + * @brief Return actual state of a DMA burst operation. + * @param htim TIM handle + * @retval DMA burst state + */ +HAL_TIM_DMABurstStateTypeDef HAL_TIM_DMABurstState(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_DMABURST_INSTANCE(htim->Instance)); + + return htim->DMABurstState; +} + +/** + * @} + */ + +/** + * @} + */ + +/** @defgroup TIM_Private_Functions TIM Private Functions + * @{ + */ + +/** + * @brief TIM DMA error callback + * @param hdma pointer to DMA handle. + * @retval None + */ +void TIM_DMAError(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + + if (hdma == htim->hdma[TIM_DMA_ID_CC1]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_4, HAL_TIM_CHANNEL_STATE_READY); + } + else + { + htim->State = HAL_TIM_STATE_READY; + } + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->ErrorCallback(htim); +#else + HAL_TIM_ErrorCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; +} + +/** + * @brief TIM DMA Delay Pulse complete callback. + * @param hdma pointer to DMA handle. + * @retval None + */ +static void TIM_DMADelayPulseCplt(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + + if (hdma == htim->hdma[TIM_DMA_ID_CC1]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + } + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + } + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); + } + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_4, HAL_TIM_CHANNEL_STATE_READY); + } + } + else + { + /* nothing to do */ + } + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->PWM_PulseFinishedCallback(htim); +#else + HAL_TIM_PWM_PulseFinishedCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; +} + +/** + * @brief TIM DMA Delay Pulse half complete callback. + * @param hdma pointer to DMA handle. + * @retval None + */ +void TIM_DMADelayPulseHalfCplt(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + + if (hdma == htim->hdma[TIM_DMA_ID_CC1]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; + } + else + { + /* nothing to do */ + } + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->PWM_PulseFinishedHalfCpltCallback(htim); +#else + HAL_TIM_PWM_PulseFinishedHalfCpltCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; +} + +/** + * @brief TIM DMA Capture complete callback. + * @param hdma pointer to DMA handle. + * @retval None + */ +void TIM_DMACaptureCplt(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + + if (hdma == htim->hdma[TIM_DMA_ID_CC1]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + } + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + } + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); + } + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_4, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_4, HAL_TIM_CHANNEL_STATE_READY); + } + } + else + { + /* nothing to do */ + } + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->IC_CaptureCallback(htim); +#else + HAL_TIM_IC_CaptureCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; +} + +/** + * @brief TIM DMA Capture half complete callback. + * @param hdma pointer to DMA handle. + * @retval None + */ +void TIM_DMACaptureHalfCplt(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + + if (hdma == htim->hdma[TIM_DMA_ID_CC1]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; + } + else + { + /* nothing to do */ + } + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->IC_CaptureHalfCpltCallback(htim); +#else + HAL_TIM_IC_CaptureHalfCpltCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; +} + +/** + * @brief TIM DMA Period Elapse complete callback. + * @param hdma pointer to DMA handle. + * @retval None + */ +static void TIM_DMAPeriodElapsedCplt(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + + if (htim->hdma[TIM_DMA_ID_UPDATE]->Init.Mode == DMA_NORMAL) + { + htim->State = HAL_TIM_STATE_READY; + } + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->PeriodElapsedCallback(htim); +#else + HAL_TIM_PeriodElapsedCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ +} + +/** + * @brief TIM DMA Period Elapse half complete callback. + * @param hdma pointer to DMA handle. + * @retval None + */ +static void TIM_DMAPeriodElapsedHalfCplt(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->PeriodElapsedHalfCpltCallback(htim); +#else + HAL_TIM_PeriodElapsedHalfCpltCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ +} + +/** + * @brief TIM DMA Trigger callback. + * @param hdma pointer to DMA handle. + * @retval None + */ +static void TIM_DMATriggerCplt(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + + if (htim->hdma[TIM_DMA_ID_TRIGGER]->Init.Mode == DMA_NORMAL) + { + htim->State = HAL_TIM_STATE_READY; + } + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->TriggerCallback(htim); +#else + HAL_TIM_TriggerCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ +} + +/** + * @brief TIM DMA Trigger half complete callback. + * @param hdma pointer to DMA handle. + * @retval None + */ +static void TIM_DMATriggerHalfCplt(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->TriggerHalfCpltCallback(htim); +#else + HAL_TIM_TriggerHalfCpltCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ +} + +/** + * @brief Time Base configuration + * @param TIMx TIM peripheral + * @param Structure TIM Base configuration structure + * @retval None + */ +void TIM_Base_SetConfig(TIM_TypeDef *TIMx, TIM_Base_InitTypeDef *Structure) +{ + uint32_t tmpcr1; + tmpcr1 = TIMx->CR1; + + /* Set TIM Time Base Unit parameters ---------------------------------------*/ + if (IS_TIM_COUNTER_MODE_SELECT_INSTANCE(TIMx)) + { + /* Select the Counter Mode */ + tmpcr1 &= ~(TIM_CR1_DIR | TIM_CR1_CMS); + tmpcr1 |= Structure->CounterMode; + } + + if (IS_TIM_CLOCK_DIVISION_INSTANCE(TIMx)) + { + /* Set the clock division */ + tmpcr1 &= ~TIM_CR1_CKD; + tmpcr1 |= (uint32_t)Structure->ClockDivision; + } + + /* Set the auto-reload preload */ + MODIFY_REG(tmpcr1, TIM_CR1_ARPE, Structure->AutoReloadPreload); + + TIMx->CR1 = tmpcr1; + + /* Set the Autoreload value */ + TIMx->ARR = (uint32_t)Structure->Period ; + + /* Set the Prescaler value */ + TIMx->PSC = Structure->Prescaler; + + if (IS_TIM_REPETITION_COUNTER_INSTANCE(TIMx)) + { + /* Set the Repetition Counter value */ + TIMx->RCR = Structure->RepetitionCounter; + } + + /* Generate an update event to reload the Prescaler + and the repetition counter (only for advanced timer) value immediately */ + TIMx->EGR = TIM_EGR_UG; +} + +/** + * @brief Timer Output Compare 1 configuration + * @param TIMx to select the TIM peripheral + * @param OC_Config The output configuration structure + * @retval None + */ +static void TIM_OC1_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config) +{ + uint32_t tmpccmrx; + uint32_t tmpccer; + uint32_t tmpcr2; + + /* Disable the Channel 1: Reset the CC1E Bit */ + TIMx->CCER &= ~TIM_CCER_CC1E; + + /* Get the TIMx CCER register value */ + tmpccer = TIMx->CCER; + /* Get the TIMx CR2 register value */ + tmpcr2 = TIMx->CR2; + + /* Get the TIMx CCMR1 register value */ + tmpccmrx = TIMx->CCMR1; + + /* Reset the Output Compare Mode Bits */ + tmpccmrx &= ~TIM_CCMR1_OC1M; + tmpccmrx &= ~TIM_CCMR1_CC1S; + /* Select the Output Compare Mode */ + tmpccmrx |= OC_Config->OCMode; + + /* Reset the Output Polarity level */ + tmpccer &= ~TIM_CCER_CC1P; + /* Set the Output Compare Polarity */ + tmpccer |= OC_Config->OCPolarity; + + if (IS_TIM_CCXN_INSTANCE(TIMx, TIM_CHANNEL_1)) + { + /* Check parameters */ + assert_param(IS_TIM_OCN_POLARITY(OC_Config->OCNPolarity)); + + /* Reset the Output N Polarity level */ + tmpccer &= ~TIM_CCER_CC1NP; + /* Set the Output N Polarity */ + tmpccer |= OC_Config->OCNPolarity; + /* Reset the Output N State */ + tmpccer &= ~TIM_CCER_CC1NE; + } + + if (IS_TIM_BREAK_INSTANCE(TIMx)) + { + /* Check parameters */ + assert_param(IS_TIM_OCNIDLE_STATE(OC_Config->OCNIdleState)); + assert_param(IS_TIM_OCIDLE_STATE(OC_Config->OCIdleState)); + + /* Reset the Output Compare and Output Compare N IDLE State */ + tmpcr2 &= ~TIM_CR2_OIS1; + tmpcr2 &= ~TIM_CR2_OIS1N; + /* Set the Output Idle state */ + tmpcr2 |= OC_Config->OCIdleState; + /* Set the Output N Idle state */ + tmpcr2 |= OC_Config->OCNIdleState; + } + + /* Write to TIMx CR2 */ + TIMx->CR2 = tmpcr2; + + /* Write to TIMx CCMR1 */ + TIMx->CCMR1 = tmpccmrx; + + /* Set the Capture Compare Register value */ + TIMx->CCR1 = OC_Config->Pulse; + + /* Write to TIMx CCER */ + TIMx->CCER = tmpccer; +} + +/** + * @brief Timer Output Compare 2 configuration + * @param TIMx to select the TIM peripheral + * @param OC_Config The output configuration structure + * @retval None + */ +void TIM_OC2_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config) +{ + uint32_t tmpccmrx; + uint32_t tmpccer; + uint32_t tmpcr2; + + /* Disable the Channel 2: Reset the CC2E Bit */ + TIMx->CCER &= ~TIM_CCER_CC2E; + + /* Get the TIMx CCER register value */ + tmpccer = TIMx->CCER; + /* Get the TIMx CR2 register value */ + tmpcr2 = TIMx->CR2; + + /* Get the TIMx CCMR1 register value */ + tmpccmrx = TIMx->CCMR1; + + /* Reset the Output Compare mode and Capture/Compare selection Bits */ + tmpccmrx &= ~TIM_CCMR1_OC2M; + tmpccmrx &= ~TIM_CCMR1_CC2S; + + /* Select the Output Compare Mode */ + tmpccmrx |= (OC_Config->OCMode << 8U); + + /* Reset the Output Polarity level */ + tmpccer &= ~TIM_CCER_CC2P; + /* Set the Output Compare Polarity */ + tmpccer |= (OC_Config->OCPolarity << 4U); + + if (IS_TIM_CCXN_INSTANCE(TIMx, TIM_CHANNEL_2)) + { + assert_param(IS_TIM_OCN_POLARITY(OC_Config->OCNPolarity)); + + /* Reset the Output N Polarity level */ + tmpccer &= ~TIM_CCER_CC2NP; + /* Set the Output N Polarity */ + tmpccer |= (OC_Config->OCNPolarity << 4U); + /* Reset the Output N State */ + tmpccer &= ~TIM_CCER_CC2NE; + + } + + if (IS_TIM_BREAK_INSTANCE(TIMx)) + { + /* Check parameters */ + assert_param(IS_TIM_OCNIDLE_STATE(OC_Config->OCNIdleState)); + assert_param(IS_TIM_OCIDLE_STATE(OC_Config->OCIdleState)); + + /* Reset the Output Compare and Output Compare N IDLE State */ + tmpcr2 &= ~TIM_CR2_OIS2; + tmpcr2 &= ~TIM_CR2_OIS2N; + /* Set the Output Idle state */ + tmpcr2 |= (OC_Config->OCIdleState << 2U); + /* Set the Output N Idle state */ + tmpcr2 |= (OC_Config->OCNIdleState << 2U); + } + + /* Write to TIMx CR2 */ + TIMx->CR2 = tmpcr2; + + /* Write to TIMx CCMR1 */ + TIMx->CCMR1 = tmpccmrx; + + /* Set the Capture Compare Register value */ + TIMx->CCR2 = OC_Config->Pulse; + + /* Write to TIMx CCER */ + TIMx->CCER = tmpccer; +} + +/** + * @brief Timer Output Compare 3 configuration + * @param TIMx to select the TIM peripheral + * @param OC_Config The output configuration structure + * @retval None + */ +static void TIM_OC3_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config) +{ + uint32_t tmpccmrx; + uint32_t tmpccer; + uint32_t tmpcr2; + + /* Disable the Channel 3: Reset the CC2E Bit */ + TIMx->CCER &= ~TIM_CCER_CC3E; + + /* Get the TIMx CCER register value */ + tmpccer = TIMx->CCER; + /* Get the TIMx CR2 register value */ + tmpcr2 = TIMx->CR2; + + /* Get the TIMx CCMR2 register value */ + tmpccmrx = TIMx->CCMR2; + + /* Reset the Output Compare mode and Capture/Compare selection Bits */ + tmpccmrx &= ~TIM_CCMR2_OC3M; + tmpccmrx &= ~TIM_CCMR2_CC3S; + /* Select the Output Compare Mode */ + tmpccmrx |= OC_Config->OCMode; + + /* Reset the Output Polarity level */ + tmpccer &= ~TIM_CCER_CC3P; + /* Set the Output Compare Polarity */ + tmpccer |= (OC_Config->OCPolarity << 8U); + + if (IS_TIM_CCXN_INSTANCE(TIMx, TIM_CHANNEL_3)) + { + assert_param(IS_TIM_OCN_POLARITY(OC_Config->OCNPolarity)); + + /* Reset the Output N Polarity level */ + tmpccer &= ~TIM_CCER_CC3NP; + /* Set the Output N Polarity */ + tmpccer |= (OC_Config->OCNPolarity << 8U); + /* Reset the Output N State */ + tmpccer &= ~TIM_CCER_CC3NE; + } + + if (IS_TIM_BREAK_INSTANCE(TIMx)) + { + /* Check parameters */ + assert_param(IS_TIM_OCNIDLE_STATE(OC_Config->OCNIdleState)); + assert_param(IS_TIM_OCIDLE_STATE(OC_Config->OCIdleState)); + + /* Reset the Output Compare and Output Compare N IDLE State */ + tmpcr2 &= ~TIM_CR2_OIS3; + tmpcr2 &= ~TIM_CR2_OIS3N; + /* Set the Output Idle state */ + tmpcr2 |= (OC_Config->OCIdleState << 4U); + /* Set the Output N Idle state */ + tmpcr2 |= (OC_Config->OCNIdleState << 4U); + } + + /* Write to TIMx CR2 */ + TIMx->CR2 = tmpcr2; + + /* Write to TIMx CCMR2 */ + TIMx->CCMR2 = tmpccmrx; + + /* Set the Capture Compare Register value */ + TIMx->CCR3 = OC_Config->Pulse; + + /* Write to TIMx CCER */ + TIMx->CCER = tmpccer; +} + +/** + * @brief Timer Output Compare 4 configuration + * @param TIMx to select the TIM peripheral + * @param OC_Config The output configuration structure + * @retval None + */ +static void TIM_OC4_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config) +{ + uint32_t tmpccmrx; + uint32_t tmpccer; + uint32_t tmpcr2; + + /* Disable the Channel 4: Reset the CC4E Bit */ + TIMx->CCER &= ~TIM_CCER_CC4E; + + /* Get the TIMx CCER register value */ + tmpccer = TIMx->CCER; + /* Get the TIMx CR2 register value */ + tmpcr2 = TIMx->CR2; + + /* Get the TIMx CCMR2 register value */ + tmpccmrx = TIMx->CCMR2; + + /* Reset the Output Compare mode and Capture/Compare selection Bits */ + tmpccmrx &= ~TIM_CCMR2_OC4M; + tmpccmrx &= ~TIM_CCMR2_CC4S; + + /* Select the Output Compare Mode */ + tmpccmrx |= (OC_Config->OCMode << 8U); + + /* Reset the Output Polarity level */ + tmpccer &= ~TIM_CCER_CC4P; + /* Set the Output Compare Polarity */ + tmpccer |= (OC_Config->OCPolarity << 12U); + + if (IS_TIM_BREAK_INSTANCE(TIMx)) + { + /* Check parameters */ + assert_param(IS_TIM_OCIDLE_STATE(OC_Config->OCIdleState)); + + /* Reset the Output Compare IDLE State */ + tmpcr2 &= ~TIM_CR2_OIS4; + + /* Set the Output Idle state */ + tmpcr2 |= (OC_Config->OCIdleState << 6U); + } + + /* Write to TIMx CR2 */ + TIMx->CR2 = tmpcr2; + + /* Write to TIMx CCMR2 */ + TIMx->CCMR2 = tmpccmrx; + + /* Set the Capture Compare Register value */ + TIMx->CCR4 = OC_Config->Pulse; + + /* Write to TIMx CCER */ + TIMx->CCER = tmpccer; +} + +/** + * @brief Slave Timer configuration function + * @param htim TIM handle + * @param sSlaveConfig Slave timer configuration + * @retval None + */ +static HAL_StatusTypeDef TIM_SlaveTimer_SetConfig(TIM_HandleTypeDef *htim, + TIM_SlaveConfigTypeDef *sSlaveConfig) +{ + uint32_t tmpsmcr; + uint32_t tmpccmr1; + uint32_t tmpccer; + + /* Get the TIMx SMCR register value */ + tmpsmcr = htim->Instance->SMCR; + + /* Reset the Trigger Selection Bits */ + tmpsmcr &= ~TIM_SMCR_TS; + /* Set the Input Trigger source */ + tmpsmcr |= sSlaveConfig->InputTrigger; + + /* Reset the slave mode Bits */ + tmpsmcr &= ~TIM_SMCR_SMS; + /* Set the slave mode */ + tmpsmcr |= sSlaveConfig->SlaveMode; + + /* Write to TIMx SMCR */ + htim->Instance->SMCR = tmpsmcr; + + /* Configure the trigger prescaler, filter, and polarity */ + switch (sSlaveConfig->InputTrigger) + { + case TIM_TS_ETRF: + { + /* Check the parameters */ + assert_param(IS_TIM_CLOCKSOURCE_ETRMODE1_INSTANCE(htim->Instance)); + assert_param(IS_TIM_TRIGGERPRESCALER(sSlaveConfig->TriggerPrescaler)); + assert_param(IS_TIM_TRIGGERPOLARITY(sSlaveConfig->TriggerPolarity)); + assert_param(IS_TIM_TRIGGERFILTER(sSlaveConfig->TriggerFilter)); + /* Configure the ETR Trigger source */ + TIM_ETR_SetConfig(htim->Instance, + sSlaveConfig->TriggerPrescaler, + sSlaveConfig->TriggerPolarity, + sSlaveConfig->TriggerFilter); + break; + } + + case TIM_TS_TI1F_ED: + { + /* Check the parameters */ + assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); + assert_param(IS_TIM_TRIGGERFILTER(sSlaveConfig->TriggerFilter)); + + if (sSlaveConfig->SlaveMode == TIM_SLAVEMODE_GATED) + { + return HAL_ERROR; + } + + /* Disable the Channel 1: Reset the CC1E Bit */ + tmpccer = htim->Instance->CCER; + htim->Instance->CCER &= ~TIM_CCER_CC1E; + tmpccmr1 = htim->Instance->CCMR1; + + /* Set the filter */ + tmpccmr1 &= ~TIM_CCMR1_IC1F; + tmpccmr1 |= ((sSlaveConfig->TriggerFilter) << 4U); + + /* Write to TIMx CCMR1 and CCER registers */ + htim->Instance->CCMR1 = tmpccmr1; + htim->Instance->CCER = tmpccer; + break; + } + + case TIM_TS_TI1FP1: + { + /* Check the parameters */ + assert_param(IS_TIM_CC1_INSTANCE(htim->Instance)); + assert_param(IS_TIM_TRIGGERPOLARITY(sSlaveConfig->TriggerPolarity)); + assert_param(IS_TIM_TRIGGERFILTER(sSlaveConfig->TriggerFilter)); + + /* Configure TI1 Filter and Polarity */ + TIM_TI1_ConfigInputStage(htim->Instance, + sSlaveConfig->TriggerPolarity, + sSlaveConfig->TriggerFilter); + break; + } + + case TIM_TS_TI2FP2: + { + /* Check the parameters */ + assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); + assert_param(IS_TIM_TRIGGERPOLARITY(sSlaveConfig->TriggerPolarity)); + assert_param(IS_TIM_TRIGGERFILTER(sSlaveConfig->TriggerFilter)); + + /* Configure TI2 Filter and Polarity */ + TIM_TI2_ConfigInputStage(htim->Instance, + sSlaveConfig->TriggerPolarity, + sSlaveConfig->TriggerFilter); + break; + } + + case TIM_TS_ITR0: + case TIM_TS_ITR1: + case TIM_TS_ITR2: + case TIM_TS_ITR3: + { + /* Check the parameter */ + assert_param(IS_TIM_CC2_INSTANCE(htim->Instance)); + break; + } + + default: + break; + } + return HAL_OK; +} + +/** + * @brief Configure the TI1 as Input. + * @param TIMx to select the TIM peripheral. + * @param TIM_ICPolarity The Input Polarity. + * This parameter can be one of the following values: + * @arg TIM_ICPOLARITY_RISING + * @arg TIM_ICPOLARITY_FALLING + * @arg TIM_ICPOLARITY_BOTHEDGE + * @param TIM_ICSelection specifies the input to be used. + * This parameter can be one of the following values: + * @arg TIM_ICSELECTION_DIRECTTI: TIM Input 1 is selected to be connected to IC1. + * @arg TIM_ICSELECTION_INDIRECTTI: TIM Input 1 is selected to be connected to IC2. + * @arg TIM_ICSELECTION_TRC: TIM Input 1 is selected to be connected to TRC. + * @param TIM_ICFilter Specifies the Input Capture Filter. + * This parameter must be a value between 0x00 and 0x0F. + * @retval None + * @note TIM_ICFilter and TIM_ICPolarity are not used in INDIRECT mode as TI2FP1 + * (on channel2 path) is used as the input signal. Therefore CCMR1 must be + * protected against un-initialized filter and polarity values. + */ +void TIM_TI1_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, + uint32_t TIM_ICFilter) +{ + uint32_t tmpccmr1; + uint32_t tmpccer; + + /* Disable the Channel 1: Reset the CC1E Bit */ + TIMx->CCER &= ~TIM_CCER_CC1E; + tmpccmr1 = TIMx->CCMR1; + tmpccer = TIMx->CCER; + + /* Select the Input */ + if (IS_TIM_CC2_INSTANCE(TIMx) != RESET) + { + tmpccmr1 &= ~TIM_CCMR1_CC1S; + tmpccmr1 |= TIM_ICSelection; + } + else + { + tmpccmr1 |= TIM_CCMR1_CC1S_0; + } + + /* Set the filter */ + tmpccmr1 &= ~TIM_CCMR1_IC1F; + tmpccmr1 |= ((TIM_ICFilter << 4U) & TIM_CCMR1_IC1F); + + /* Select the Polarity and set the CC1E Bit */ + tmpccer &= ~(TIM_CCER_CC1P | TIM_CCER_CC1NP); + tmpccer |= (TIM_ICPolarity & (TIM_CCER_CC1P | TIM_CCER_CC1NP)); + + /* Write to TIMx CCMR1 and CCER registers */ + TIMx->CCMR1 = tmpccmr1; + TIMx->CCER = tmpccer; +} + +/** + * @brief Configure the Polarity and Filter for TI1. + * @param TIMx to select the TIM peripheral. + * @param TIM_ICPolarity The Input Polarity. + * This parameter can be one of the following values: + * @arg TIM_ICPOLARITY_RISING + * @arg TIM_ICPOLARITY_FALLING + * @arg TIM_ICPOLARITY_BOTHEDGE + * @param TIM_ICFilter Specifies the Input Capture Filter. + * This parameter must be a value between 0x00 and 0x0F. + * @retval None + */ +static void TIM_TI1_ConfigInputStage(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICFilter) +{ + uint32_t tmpccmr1; + uint32_t tmpccer; + + /* Disable the Channel 1: Reset the CC1E Bit */ + tmpccer = TIMx->CCER; + TIMx->CCER &= ~TIM_CCER_CC1E; + tmpccmr1 = TIMx->CCMR1; + + /* Set the filter */ + tmpccmr1 &= ~TIM_CCMR1_IC1F; + tmpccmr1 |= (TIM_ICFilter << 4U); + + /* Select the Polarity and set the CC1E Bit */ + tmpccer &= ~(TIM_CCER_CC1P | TIM_CCER_CC1NP); + tmpccer |= TIM_ICPolarity; + + /* Write to TIMx CCMR1 and CCER registers */ + TIMx->CCMR1 = tmpccmr1; + TIMx->CCER = tmpccer; +} + +/** + * @brief Configure the TI2 as Input. + * @param TIMx to select the TIM peripheral + * @param TIM_ICPolarity The Input Polarity. + * This parameter can be one of the following values: + * @arg TIM_ICPOLARITY_RISING + * @arg TIM_ICPOLARITY_FALLING + * @arg TIM_ICPOLARITY_BOTHEDGE + * @param TIM_ICSelection specifies the input to be used. + * This parameter can be one of the following values: + * @arg TIM_ICSELECTION_DIRECTTI: TIM Input 2 is selected to be connected to IC2. + * @arg TIM_ICSELECTION_INDIRECTTI: TIM Input 2 is selected to be connected to IC1. + * @arg TIM_ICSELECTION_TRC: TIM Input 2 is selected to be connected to TRC. + * @param TIM_ICFilter Specifies the Input Capture Filter. + * This parameter must be a value between 0x00 and 0x0F. + * @retval None + * @note TIM_ICFilter and TIM_ICPolarity are not used in INDIRECT mode as TI1FP2 + * (on channel1 path) is used as the input signal. Therefore CCMR1 must be + * protected against un-initialized filter and polarity values. + */ +static void TIM_TI2_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, + uint32_t TIM_ICFilter) +{ + uint32_t tmpccmr1; + uint32_t tmpccer; + + /* Disable the Channel 2: Reset the CC2E Bit */ + TIMx->CCER &= ~TIM_CCER_CC2E; + tmpccmr1 = TIMx->CCMR1; + tmpccer = TIMx->CCER; + + /* Select the Input */ + tmpccmr1 &= ~TIM_CCMR1_CC2S; + tmpccmr1 |= (TIM_ICSelection << 8U); + + /* Set the filter */ + tmpccmr1 &= ~TIM_CCMR1_IC2F; + tmpccmr1 |= ((TIM_ICFilter << 12U) & TIM_CCMR1_IC2F); + + /* Select the Polarity and set the CC2E Bit */ + tmpccer &= ~(TIM_CCER_CC2P | TIM_CCER_CC2NP); + tmpccer |= ((TIM_ICPolarity << 4U) & (TIM_CCER_CC2P | TIM_CCER_CC2NP)); + + /* Write to TIMx CCMR1 and CCER registers */ + TIMx->CCMR1 = tmpccmr1 ; + TIMx->CCER = tmpccer; +} + +/** + * @brief Configure the Polarity and Filter for TI2. + * @param TIMx to select the TIM peripheral. + * @param TIM_ICPolarity The Input Polarity. + * This parameter can be one of the following values: + * @arg TIM_ICPOLARITY_RISING + * @arg TIM_ICPOLARITY_FALLING + * @arg TIM_ICPOLARITY_BOTHEDGE + * @param TIM_ICFilter Specifies the Input Capture Filter. + * This parameter must be a value between 0x00 and 0x0F. + * @retval None + */ +static void TIM_TI2_ConfigInputStage(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICFilter) +{ + uint32_t tmpccmr1; + uint32_t tmpccer; + + /* Disable the Channel 2: Reset the CC2E Bit */ + TIMx->CCER &= ~TIM_CCER_CC2E; + tmpccmr1 = TIMx->CCMR1; + tmpccer = TIMx->CCER; + + /* Set the filter */ + tmpccmr1 &= ~TIM_CCMR1_IC2F; + tmpccmr1 |= (TIM_ICFilter << 12U); + + /* Select the Polarity and set the CC2E Bit */ + tmpccer &= ~(TIM_CCER_CC2P | TIM_CCER_CC2NP); + tmpccer |= (TIM_ICPolarity << 4U); + + /* Write to TIMx CCMR1 and CCER registers */ + TIMx->CCMR1 = tmpccmr1 ; + TIMx->CCER = tmpccer; +} + +/** + * @brief Configure the TI3 as Input. + * @param TIMx to select the TIM peripheral + * @param TIM_ICPolarity The Input Polarity. + * This parameter can be one of the following values: + * @arg TIM_ICPOLARITY_RISING + * @arg TIM_ICPOLARITY_FALLING + * @param TIM_ICSelection specifies the input to be used. + * This parameter can be one of the following values: + * @arg TIM_ICSELECTION_DIRECTTI: TIM Input 3 is selected to be connected to IC3. + * @arg TIM_ICSELECTION_INDIRECTTI: TIM Input 3 is selected to be connected to IC4. + * @arg TIM_ICSELECTION_TRC: TIM Input 3 is selected to be connected to TRC. + * @param TIM_ICFilter Specifies the Input Capture Filter. + * This parameter must be a value between 0x00 and 0x0F. + * @retval None + * @note TIM_ICFilter and TIM_ICPolarity are not used in INDIRECT mode as TI3FP4 + * (on channel1 path) is used as the input signal. Therefore CCMR2 must be + * protected against un-initialized filter and polarity values. + */ +static void TIM_TI3_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, + uint32_t TIM_ICFilter) +{ + uint32_t tmpccmr2; + uint32_t tmpccer; + + /* Disable the Channel 3: Reset the CC3E Bit */ + TIMx->CCER &= ~TIM_CCER_CC3E; + tmpccmr2 = TIMx->CCMR2; + tmpccer = TIMx->CCER; + + /* Select the Input */ + tmpccmr2 &= ~TIM_CCMR2_CC3S; + tmpccmr2 |= TIM_ICSelection; + + /* Set the filter */ + tmpccmr2 &= ~TIM_CCMR2_IC3F; + tmpccmr2 |= ((TIM_ICFilter << 4U) & TIM_CCMR2_IC3F); + + /* Select the Polarity and set the CC3E Bit */ + tmpccer &= ~(TIM_CCER_CC3P); + tmpccer |= ((TIM_ICPolarity << 8U) & TIM_CCER_CC3P); + + /* Write to TIMx CCMR2 and CCER registers */ + TIMx->CCMR2 = tmpccmr2; + TIMx->CCER = tmpccer; +} + +/** + * @brief Configure the TI4 as Input. + * @param TIMx to select the TIM peripheral + * @param TIM_ICPolarity The Input Polarity. + * This parameter can be one of the following values: + * @arg TIM_ICPOLARITY_RISING + * @arg TIM_ICPOLARITY_FALLING + * @param TIM_ICSelection specifies the input to be used. + * This parameter can be one of the following values: + * @arg TIM_ICSELECTION_DIRECTTI: TIM Input 4 is selected to be connected to IC4. + * @arg TIM_ICSELECTION_INDIRECTTI: TIM Input 4 is selected to be connected to IC3. + * @arg TIM_ICSELECTION_TRC: TIM Input 4 is selected to be connected to TRC. + * @param TIM_ICFilter Specifies the Input Capture Filter. + * This parameter must be a value between 0x00 and 0x0F. + * @note TIM_ICFilter and TIM_ICPolarity are not used in INDIRECT mode as TI4FP3 + * (on channel1 path) is used as the input signal. Therefore CCMR2 must be + * protected against un-initialized filter and polarity values. + * @retval None + */ +static void TIM_TI4_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, + uint32_t TIM_ICFilter) +{ + uint32_t tmpccmr2; + uint32_t tmpccer; + + /* Disable the Channel 4: Reset the CC4E Bit */ + TIMx->CCER &= ~TIM_CCER_CC4E; + tmpccmr2 = TIMx->CCMR2; + tmpccer = TIMx->CCER; + + /* Select the Input */ + tmpccmr2 &= ~TIM_CCMR2_CC4S; + tmpccmr2 |= (TIM_ICSelection << 8U); + + /* Set the filter */ + tmpccmr2 &= ~TIM_CCMR2_IC4F; + tmpccmr2 |= ((TIM_ICFilter << 12U) & TIM_CCMR2_IC4F); + + /* Select the Polarity and set the CC4E Bit */ + tmpccer &= ~(TIM_CCER_CC4P); + tmpccer |= ((TIM_ICPolarity << 12U) & TIM_CCER_CC4P); + + /* Write to TIMx CCMR2 and CCER registers */ + TIMx->CCMR2 = tmpccmr2; + TIMx->CCER = tmpccer ; +} + +/** + * @brief Selects the Input Trigger source + * @param TIMx to select the TIM peripheral + * @param InputTriggerSource The Input Trigger source. + * This parameter can be one of the following values: + * @arg TIM_TS_ITR0: Internal Trigger 0 + * @arg TIM_TS_ITR1: Internal Trigger 1 + * @arg TIM_TS_ITR2: Internal Trigger 2 + * @arg TIM_TS_ITR3: Internal Trigger 3 + * @arg TIM_TS_TI1F_ED: TI1 Edge Detector + * @arg TIM_TS_TI1FP1: Filtered Timer Input 1 + * @arg TIM_TS_TI2FP2: Filtered Timer Input 2 + * @arg TIM_TS_ETRF: External Trigger input + * @retval None + */ +static void TIM_ITRx_SetConfig(TIM_TypeDef *TIMx, uint32_t InputTriggerSource) +{ + uint32_t tmpsmcr; + + /* Get the TIMx SMCR register value */ + tmpsmcr = TIMx->SMCR; + /* Reset the TS Bits */ + tmpsmcr &= ~TIM_SMCR_TS; + /* Set the Input Trigger source and the slave mode*/ + tmpsmcr |= (InputTriggerSource | TIM_SLAVEMODE_EXTERNAL1); + /* Write to TIMx SMCR */ + TIMx->SMCR = tmpsmcr; +} +/** + * @brief Configures the TIMx External Trigger (ETR). + * @param TIMx to select the TIM peripheral + * @param TIM_ExtTRGPrescaler The external Trigger Prescaler. + * This parameter can be one of the following values: + * @arg TIM_ETRPRESCALER_DIV1: ETRP Prescaler OFF. + * @arg TIM_ETRPRESCALER_DIV2: ETRP frequency divided by 2. + * @arg TIM_ETRPRESCALER_DIV4: ETRP frequency divided by 4. + * @arg TIM_ETRPRESCALER_DIV8: ETRP frequency divided by 8. + * @param TIM_ExtTRGPolarity The external Trigger Polarity. + * This parameter can be one of the following values: + * @arg TIM_ETRPOLARITY_INVERTED: active low or falling edge active. + * @arg TIM_ETRPOLARITY_NONINVERTED: active high or rising edge active. + * @param ExtTRGFilter External Trigger Filter. + * This parameter must be a value between 0x00 and 0x0F + * @retval None + */ +void TIM_ETR_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ExtTRGPrescaler, + uint32_t TIM_ExtTRGPolarity, uint32_t ExtTRGFilter) +{ + uint32_t tmpsmcr; + + tmpsmcr = TIMx->SMCR; + + /* Reset the ETR Bits */ + tmpsmcr &= ~(TIM_SMCR_ETF | TIM_SMCR_ETPS | TIM_SMCR_ECE | TIM_SMCR_ETP); + + /* Set the Prescaler, the Filter value and the Polarity */ + tmpsmcr |= (uint32_t)(TIM_ExtTRGPrescaler | (TIM_ExtTRGPolarity | (ExtTRGFilter << 8U))); + + /* Write to TIMx SMCR */ + TIMx->SMCR = tmpsmcr; +} + +/** + * @brief Enables or disables the TIM Capture Compare Channel x. + * @param TIMx to select the TIM peripheral + * @param Channel specifies the TIM Channel + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 + * @arg TIM_CHANNEL_2: TIM Channel 2 + * @arg TIM_CHANNEL_3: TIM Channel 3 + * @arg TIM_CHANNEL_4: TIM Channel 4 + * @param ChannelState specifies the TIM Channel CCxE bit new state. + * This parameter can be: TIM_CCx_ENABLE or TIM_CCx_DISABLE. + * @retval None + */ +void TIM_CCxChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelState) +{ + uint32_t tmp; + + /* Check the parameters */ + assert_param(IS_TIM_CC1_INSTANCE(TIMx)); + assert_param(IS_TIM_CHANNELS(Channel)); + + tmp = TIM_CCER_CC1E << (Channel & 0x1FU); /* 0x1FU = 31 bits max shift */ + + /* Reset the CCxE Bit */ + TIMx->CCER &= ~tmp; + + /* Set or reset the CCxE Bit */ + TIMx->CCER |= (uint32_t)(ChannelState << (Channel & 0x1FU)); /* 0x1FU = 31 bits max shift */ +} + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) +/** + * @brief Reset interrupt callbacks to the legacy weak callbacks. + * @param htim pointer to a TIM_HandleTypeDef structure that contains + * the configuration information for TIM module. + * @retval None + */ +void TIM_ResetCallback(TIM_HandleTypeDef *htim) +{ + /* Reset the TIM callback to the legacy weak callbacks */ + htim->PeriodElapsedCallback = HAL_TIM_PeriodElapsedCallback; + htim->PeriodElapsedHalfCpltCallback = HAL_TIM_PeriodElapsedHalfCpltCallback; + htim->TriggerCallback = HAL_TIM_TriggerCallback; + htim->TriggerHalfCpltCallback = HAL_TIM_TriggerHalfCpltCallback; + htim->IC_CaptureCallback = HAL_TIM_IC_CaptureCallback; + htim->IC_CaptureHalfCpltCallback = HAL_TIM_IC_CaptureHalfCpltCallback; + htim->OC_DelayElapsedCallback = HAL_TIM_OC_DelayElapsedCallback; + htim->PWM_PulseFinishedCallback = HAL_TIM_PWM_PulseFinishedCallback; + htim->PWM_PulseFinishedHalfCpltCallback = HAL_TIM_PWM_PulseFinishedHalfCpltCallback; + htim->ErrorCallback = HAL_TIM_ErrorCallback; + htim->CommutationCallback = HAL_TIMEx_CommutCallback; + htim->CommutationHalfCpltCallback = HAL_TIMEx_CommutHalfCpltCallback; + htim->BreakCallback = HAL_TIMEx_BreakCallback; +} +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + +/** + * @} + */ + +#endif /* HAL_TIM_MODULE_ENABLED */ +/** + * @} + */ + +/** + * @} + */ +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c similarity index 97% rename from stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c rename to f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c index f15cbbb..79e46aa 100644 --- a/stm32f103/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c +++ b/f103c8t6_HAL/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c @@ -1,2335 +1,2335 @@ -/** - ****************************************************************************** - * @file stm32f1xx_hal_tim_ex.c - * @author MCD Application Team - * @brief TIM HAL module driver. - * This file provides firmware functions to manage the following - * functionalities of the Timer Extended peripheral: - * + Time Hall Sensor Interface Initialization - * + Time Hall Sensor Interface Start - * + Time Complementary signal break and dead time configuration - * + Time Master and Slave synchronization configuration - * + Timer remapping capabilities configuration - @verbatim - ============================================================================== - ##### TIMER Extended features ##### - ============================================================================== - [..] - The Timer Extended features include: - (#) Complementary outputs with programmable dead-time for : - (++) Output Compare - (++) PWM generation (Edge and Center-aligned Mode) - (++) One-pulse mode output - (#) Synchronization circuit to control the timer with external signals and to - interconnect several timers together. - (#) Break input to put the timer output signals in reset state or in a known state. - (#) Supports incremental (quadrature) encoder and hall-sensor circuitry for - positioning purposes - - ##### How to use this driver ##### - ============================================================================== - [..] - (#) Initialize the TIM low level resources by implementing the following functions - depending on the selected feature: - (++) Hall Sensor output : HAL_TIMEx_HallSensor_MspInit() - - (#) Initialize the TIM low level resources : - (##) Enable the TIM interface clock using __HAL_RCC_TIMx_CLK_ENABLE(); - (##) TIM pins configuration - (+++) Enable the clock for the TIM GPIOs using the following function: - __HAL_RCC_GPIOx_CLK_ENABLE(); - (+++) Configure these TIM pins in Alternate function mode using HAL_GPIO_Init(); - - (#) The external Clock can be configured, if needed (the default clock is the - internal clock from the APBx), using the following function: - HAL_TIM_ConfigClockSource, the clock configuration should be done before - any start function. - - (#) Configure the TIM in the desired functioning mode using one of the - initialization function of this driver: - (++) HAL_TIMEx_HallSensor_Init() and HAL_TIMEx_ConfigCommutEvent(): to use the - Timer Hall Sensor Interface and the commutation event with the corresponding - Interrupt and DMA request if needed (Note that One Timer is used to interface - with the Hall sensor Interface and another Timer should be used to use - the commutation event). - - (#) Activate the TIM peripheral using one of the start functions: - (++) Complementary Output Compare : HAL_TIMEx_OCN_Start(), HAL_TIMEx_OCN_Start_DMA(), - HAL_TIMEx_OCN_Start_IT() - (++) Complementary PWM generation : HAL_TIMEx_PWMN_Start(), HAL_TIMEx_PWMN_Start_DMA(), - HAL_TIMEx_PWMN_Start_IT() - (++) Complementary One-pulse mode output : HAL_TIMEx_OnePulseN_Start(), HAL_TIMEx_OnePulseN_Start_IT() - (++) Hall Sensor output : HAL_TIMEx_HallSensor_Start(), HAL_TIMEx_HallSensor_Start_DMA(), - HAL_TIMEx_HallSensor_Start_IT(). - - @endverbatim - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2016 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "stm32f1xx_hal.h" - -/** @addtogroup STM32F1xx_HAL_Driver - * @{ - */ - -/** @defgroup TIMEx TIMEx - * @brief TIM Extended HAL module driver - * @{ - */ - -#ifdef HAL_TIM_MODULE_ENABLED - -/* Private typedef -----------------------------------------------------------*/ -/* Private define ------------------------------------------------------------*/ -/* Private macros ------------------------------------------------------------*/ -/* Private variables ---------------------------------------------------------*/ -/* Private function prototypes -----------------------------------------------*/ -static void TIM_DMADelayPulseNCplt(DMA_HandleTypeDef *hdma); -static void TIM_DMAErrorCCxN(DMA_HandleTypeDef *hdma); -static void TIM_CCxNChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelNState); - -/* Exported functions --------------------------------------------------------*/ -/** @defgroup TIMEx_Exported_Functions TIM Extended Exported Functions - * @{ - */ - -/** @defgroup TIMEx_Exported_Functions_Group1 Extended Timer Hall Sensor functions - * @brief Timer Hall Sensor functions - * -@verbatim - ============================================================================== - ##### Timer Hall Sensor functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Initialize and configure TIM HAL Sensor. - (+) De-initialize TIM HAL Sensor. - (+) Start the Hall Sensor Interface. - (+) Stop the Hall Sensor Interface. - (+) Start the Hall Sensor Interface and enable interrupts. - (+) Stop the Hall Sensor Interface and disable interrupts. - (+) Start the Hall Sensor Interface and enable DMA transfers. - (+) Stop the Hall Sensor Interface and disable DMA transfers. - -@endverbatim - * @{ - */ -/** - * @brief Initializes the TIM Hall Sensor Interface and initialize the associated handle. - * @note When the timer instance is initialized in Hall Sensor Interface mode, - * timer channels 1 and channel 2 are reserved and cannot be used for - * other purpose. - * @param htim TIM Hall Sensor Interface handle - * @param sConfig TIM Hall Sensor configuration structure - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Init(TIM_HandleTypeDef *htim, TIM_HallSensor_InitTypeDef *sConfig) -{ - TIM_OC_InitTypeDef OC_Config; - - /* Check the TIM handle allocation */ - if (htim == NULL) - { - return HAL_ERROR; - } - - /* Check the parameters */ - assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); - assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); - assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); - assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); - assert_param(IS_TIM_IC_POLARITY(sConfig->IC1Polarity)); - assert_param(IS_TIM_IC_PRESCALER(sConfig->IC1Prescaler)); - assert_param(IS_TIM_IC_FILTER(sConfig->IC1Filter)); - - if (htim->State == HAL_TIM_STATE_RESET) - { - /* Allocate lock resource and initialize it */ - htim->Lock = HAL_UNLOCKED; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - /* Reset interrupt callbacks to legacy week callbacks */ - TIM_ResetCallback(htim); - - if (htim->HallSensor_MspInitCallback == NULL) - { - htim->HallSensor_MspInitCallback = HAL_TIMEx_HallSensor_MspInit; - } - /* Init the low level hardware : GPIO, CLOCK, NVIC */ - htim->HallSensor_MspInitCallback(htim); -#else - /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ - HAL_TIMEx_HallSensor_MspInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - } - - /* Set the TIM state */ - htim->State = HAL_TIM_STATE_BUSY; - - /* Configure the Time base in the Encoder Mode */ - TIM_Base_SetConfig(htim->Instance, &htim->Init); - - /* Configure the Channel 1 as Input Channel to interface with the three Outputs of the Hall sensor */ - TIM_TI1_SetConfig(htim->Instance, sConfig->IC1Polarity, TIM_ICSELECTION_TRC, sConfig->IC1Filter); - - /* Reset the IC1PSC Bits */ - htim->Instance->CCMR1 &= ~TIM_CCMR1_IC1PSC; - /* Set the IC1PSC value */ - htim->Instance->CCMR1 |= sConfig->IC1Prescaler; - - /* Enable the Hall sensor interface (XOR function of the three inputs) */ - htim->Instance->CR2 |= TIM_CR2_TI1S; - - /* Select the TIM_TS_TI1F_ED signal as Input trigger for the TIM */ - htim->Instance->SMCR &= ~TIM_SMCR_TS; - htim->Instance->SMCR |= TIM_TS_TI1F_ED; - - /* Use the TIM_TS_TI1F_ED signal to reset the TIM counter each edge detection */ - htim->Instance->SMCR &= ~TIM_SMCR_SMS; - htim->Instance->SMCR |= TIM_SLAVEMODE_RESET; - - /* Program channel 2 in PWM 2 mode with the desired Commutation_Delay*/ - OC_Config.OCFastMode = TIM_OCFAST_DISABLE; - OC_Config.OCIdleState = TIM_OCIDLESTATE_RESET; - OC_Config.OCMode = TIM_OCMODE_PWM2; - OC_Config.OCNIdleState = TIM_OCNIDLESTATE_RESET; - OC_Config.OCNPolarity = TIM_OCNPOLARITY_HIGH; - OC_Config.OCPolarity = TIM_OCPOLARITY_HIGH; - OC_Config.Pulse = sConfig->Commutation_Delay; - - TIM_OC2_SetConfig(htim->Instance, &OC_Config); - - /* Select OC2REF as trigger output on TRGO: write the MMS bits in the TIMx_CR2 - register to 101 */ - htim->Instance->CR2 &= ~TIM_CR2_MMS; - htim->Instance->CR2 |= TIM_TRGO_OC2REF; - - /* Initialize the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_READY; - - /* Initialize the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - - /* Initialize the TIM state*/ - htim->State = HAL_TIM_STATE_READY; - - return HAL_OK; -} - -/** - * @brief DeInitializes the TIM Hall Sensor interface - * @param htim TIM Hall Sensor Interface handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_DeInit(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_INSTANCE(htim->Instance)); - - htim->State = HAL_TIM_STATE_BUSY; - - /* Disable the TIM Peripheral Clock */ - __HAL_TIM_DISABLE(htim); - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - if (htim->HallSensor_MspDeInitCallback == NULL) - { - htim->HallSensor_MspDeInitCallback = HAL_TIMEx_HallSensor_MspDeInit; - } - /* DeInit the low level hardware */ - htim->HallSensor_MspDeInitCallback(htim); -#else - /* DeInit the low level hardware: GPIO, CLOCK, NVIC */ - HAL_TIMEx_HallSensor_MspDeInit(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - /* Change the DMA burst operation state */ - htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; - - /* Change the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); - - /* Change TIM state */ - htim->State = HAL_TIM_STATE_RESET; - - /* Release Lock */ - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Initializes the TIM Hall Sensor MSP. - * @param htim TIM Hall Sensor Interface handle - * @retval None - */ -__weak void HAL_TIMEx_HallSensor_MspInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIMEx_HallSensor_MspInit could be implemented in the user file - */ -} - -/** - * @brief DeInitializes TIM Hall Sensor MSP. - * @param htim TIM Hall Sensor Interface handle - * @retval None - */ -__weak void HAL_TIMEx_HallSensor_MspDeInit(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIMEx_HallSensor_MspDeInit could be implemented in the user file - */ -} - -/** - * @brief Starts the TIM Hall Sensor Interface. - * @param htim TIM Hall Sensor Interface handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start(TIM_HandleTypeDef *htim) -{ - uint32_t tmpsmcr; - HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); - HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); - - /* Check the parameters */ - assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); - - /* Check the TIM channels state */ - if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - - /* Enable the Input Capture channel 1 - (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, - TIM_CHANNEL_2 and TIM_CHANNEL_3) */ - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Hall sensor Interface. - * @param htim TIM Hall Sensor Interface handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); - - /* Disable the Input Capture channels 1, 2 and 3 - (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, - TIM_CHANNEL_2 and TIM_CHANNEL_3) */ - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Hall Sensor Interface in interrupt mode. - * @param htim TIM Hall Sensor Interface handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_IT(TIM_HandleTypeDef *htim) -{ - uint32_t tmpsmcr; - HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); - HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); - - /* Check the parameters */ - assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); - - /* Check the TIM channels state */ - if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - - /* Enable the capture compare Interrupts 1 event */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); - - /* Enable the Input Capture channel 1 - (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, - TIM_CHANNEL_2 and TIM_CHANNEL_3) */ - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Hall Sensor Interface in interrupt mode. - * @param htim TIM Hall Sensor Interface handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_IT(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); - - /* Disable the Input Capture channel 1 - (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, - TIM_CHANNEL_2 and TIM_CHANNEL_3) */ - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); - - /* Disable the capture compare Interrupts event */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Hall Sensor Interface in DMA mode. - * @param htim TIM Hall Sensor Interface handle - * @param pData The destination Buffer address. - * @param Length The length of data to be transferred from TIM peripheral to memory. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length) -{ - uint32_t tmpsmcr; - HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); - - /* Check the parameters */ - assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); - - /* Set the TIM channel state */ - if ((channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY) - || (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY)) - { - return HAL_BUSY; - } - else if ((channel_1_state == HAL_TIM_CHANNEL_STATE_READY) - && (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_READY)) - { - if ((pData == NULL) && (Length > 0U)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else - { - return HAL_ERROR; - } - - /* Enable the Input Capture channel 1 - (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, - TIM_CHANNEL_2 and TIM_CHANNEL_3) */ - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); - - /* Set the DMA Input Capture 1 Callbacks */ - htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMACaptureCplt; - htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; - - /* Enable the DMA channel for Capture 1*/ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)&htim->Instance->CCR1, (uint32_t)pData, Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the capture compare 1 Interrupt */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Hall Sensor Interface in DMA mode. - * @param htim TIM Hall Sensor Interface handle - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_DMA(TIM_HandleTypeDef *htim) -{ - /* Check the parameters */ - assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); - - /* Disable the Input Capture channel 1 - (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, - TIM_CHANNEL_2 and TIM_CHANNEL_3) */ - TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); - - - /* Disable the capture compare Interrupts 1 event */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); - - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channel state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup TIMEx_Exported_Functions_Group2 Extended Timer Complementary Output Compare functions - * @brief Timer Complementary Output Compare functions - * -@verbatim - ============================================================================== - ##### Timer Complementary Output Compare functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Start the Complementary Output Compare/PWM. - (+) Stop the Complementary Output Compare/PWM. - (+) Start the Complementary Output Compare/PWM and enable interrupts. - (+) Stop the Complementary Output Compare/PWM and disable interrupts. - (+) Start the Complementary Output Compare/PWM and enable DMA transfers. - (+) Stop the Complementary Output Compare/PWM and disable DMA transfers. - -@endverbatim - * @{ - */ - -/** - * @brief Starts the TIM Output Compare signal generation on the complementary - * output. - * @param htim TIM Output Compare handle - * @param Channel TIM Channel to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_OCN_Start(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - /* Check the TIM complementary channel state */ - if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) - { - return HAL_ERROR; - } - - /* Set the TIM complementary channel state */ - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - - /* Enable the Capture compare channel N */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); - - /* Enable the Main Output */ - __HAL_TIM_MOE_ENABLE(htim); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Output Compare signal generation on the complementary - * output. - * @param htim TIM handle - * @param Channel TIM Channel to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_OCN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - /* Disable the Capture compare channel N */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); - - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM complementary channel state */ - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Output Compare signal generation in interrupt mode - * on the complementary output. - * @param htim TIM OC handle - * @param Channel TIM Channel to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_OCN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - /* Check the TIM complementary channel state */ - if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) - { - return HAL_ERROR; - } - - /* Set the TIM complementary channel state */ - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Enable the TIM Output Compare interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Enable the TIM Output Compare interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Enable the TIM Output Compare interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); - break; - } - - - default: - break; - } - - /* Enable the TIM Break interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_BREAK); - - /* Enable the Capture compare channel N */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); - - /* Enable the Main Output */ - __HAL_TIM_MOE_ENABLE(htim); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Output Compare signal generation in interrupt mode - * on the complementary output. - * @param htim TIM Output Compare handle - * @param Channel TIM Channel to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpccer; - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Disable the TIM Output Compare interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Disable the TIM Output Compare interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Disable the TIM Output Compare interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); - break; - } - - default: - break; - } - - /* Disable the Capture compare channel N */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); - - /* Disable the TIM Break interrupt (only if no more channel is active) */ - tmpccer = htim->Instance->CCER; - if ((tmpccer & (TIM_CCER_CC1NE | TIM_CCER_CC2NE | TIM_CCER_CC3NE)) == (uint32_t)RESET) - { - __HAL_TIM_DISABLE_IT(htim, TIM_IT_BREAK); - } - - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM complementary channel state */ - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM Output Compare signal generation in DMA mode - * on the complementary output. - * @param htim TIM Output Compare handle - * @param Channel TIM Channel to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @param pData The source Buffer address. - * @param Length The length of data to be transferred from memory to TIM peripheral - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_OCN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - /* Set the TIM complementary channel state */ - if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_BUSY) - { - return HAL_BUSY; - } - else if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_READY) - { - if ((pData == NULL) && (Length > 0U)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else - { - return HAL_ERROR; - } - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseNCplt; - htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAErrorCCxN ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)pData, (uint32_t)&htim->Instance->CCR1, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Output Compare DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseNCplt; - htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAErrorCCxN ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)pData, (uint32_t)&htim->Instance->CCR2, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Output Compare DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseNCplt; - htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAErrorCCxN ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)pData, (uint32_t)&htim->Instance->CCR3, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Output Compare DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); - break; - } - - default: - break; - } - - /* Enable the Capture compare channel N */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); - - /* Enable the Main Output */ - __HAL_TIM_MOE_ENABLE(htim); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM Output Compare signal generation in DMA mode - * on the complementary output. - * @param htim TIM Output Compare handle - * @param Channel TIM Channel to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Disable the TIM Output Compare DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); - break; - } - - case TIM_CHANNEL_2: - { - /* Disable the TIM Output Compare DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); - break; - } - - case TIM_CHANNEL_3: - { - /* Disable the TIM Output Compare DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); - break; - } - - default: - break; - } - - /* Disable the Capture compare channel N */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); - - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM complementary channel state */ - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup TIMEx_Exported_Functions_Group3 Extended Timer Complementary PWM functions - * @brief Timer Complementary PWM functions - * -@verbatim - ============================================================================== - ##### Timer Complementary PWM functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Start the Complementary PWM. - (+) Stop the Complementary PWM. - (+) Start the Complementary PWM and enable interrupts. - (+) Stop the Complementary PWM and disable interrupts. - (+) Start the Complementary PWM and enable DMA transfers. - (+) Stop the Complementary PWM and disable DMA transfers. - (+) Start the Complementary Input Capture measurement. - (+) Stop the Complementary Input Capture. - (+) Start the Complementary Input Capture and enable interrupts. - (+) Stop the Complementary Input Capture and disable interrupts. - (+) Start the Complementary Input Capture and enable DMA transfers. - (+) Stop the Complementary Input Capture and disable DMA transfers. - (+) Start the Complementary One Pulse generation. - (+) Stop the Complementary One Pulse. - (+) Start the Complementary One Pulse and enable interrupts. - (+) Stop the Complementary One Pulse and disable interrupts. - -@endverbatim - * @{ - */ - -/** - * @brief Starts the PWM signal generation on the complementary output. - * @param htim TIM handle - * @param Channel TIM Channel to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_PWMN_Start(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - /* Check the TIM complementary channel state */ - if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) - { - return HAL_ERROR; - } - - /* Set the TIM complementary channel state */ - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - - /* Enable the complementary PWM output */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); - - /* Enable the Main Output */ - __HAL_TIM_MOE_ENABLE(htim); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the PWM signal generation on the complementary output. - * @param htim TIM handle - * @param Channel TIM Channel to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - /* Disable the complementary PWM output */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); - - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM complementary channel state */ - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the PWM signal generation in interrupt mode on the - * complementary output. - * @param htim TIM handle - * @param Channel TIM Channel to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - /* Check the TIM complementary channel state */ - if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) - { - return HAL_ERROR; - } - - /* Set the TIM complementary channel state */ - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Enable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Enable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Enable the TIM Capture/Compare 3 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); - break; - } - - default: - break; - } - - /* Enable the TIM Break interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_BREAK); - - /* Enable the complementary PWM output */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); - - /* Enable the Main Output */ - __HAL_TIM_MOE_ENABLE(htim); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the PWM signal generation in interrupt mode on the - * complementary output. - * @param htim TIM handle - * @param Channel TIM Channel to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - uint32_t tmpccer; - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Disable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Disable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Disable the TIM Capture/Compare 3 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); - break; - } - - default: - break; - } - - /* Disable the complementary PWM output */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); - - /* Disable the TIM Break interrupt (only if no more channel is active) */ - tmpccer = htim->Instance->CCER; - if ((tmpccer & (TIM_CCER_CC1NE | TIM_CCER_CC2NE | TIM_CCER_CC3NE)) == (uint32_t)RESET) - { - __HAL_TIM_DISABLE_IT(htim, TIM_IT_BREAK); - } - - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM complementary channel state */ - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM PWM signal generation in DMA mode on the - * complementary output - * @param htim TIM handle - * @param Channel TIM Channel to be enabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @param pData The source Buffer address. - * @param Length The length of data to be transferred from memory to TIM peripheral - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length) -{ - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - /* Set the TIM complementary channel state */ - if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_BUSY) - { - return HAL_BUSY; - } - else if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_READY) - { - if ((pData == NULL) && (Length > 0U)) - { - return HAL_ERROR; - } - else - { - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); - } - } - else - { - return HAL_ERROR; - } - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseNCplt; - htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAErrorCCxN ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)pData, (uint32_t)&htim->Instance->CCR1, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Capture/Compare 1 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); - break; - } - - case TIM_CHANNEL_2: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseNCplt; - htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAErrorCCxN ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)pData, (uint32_t)&htim->Instance->CCR2, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Capture/Compare 2 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); - break; - } - - case TIM_CHANNEL_3: - { - /* Set the DMA compare callbacks */ - htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseNCplt; - htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; - - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAErrorCCxN ; - - /* Enable the DMA channel */ - if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)pData, (uint32_t)&htim->Instance->CCR3, - Length) != HAL_OK) - { - /* Return error status */ - return HAL_ERROR; - } - /* Enable the TIM Capture/Compare 3 DMA request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); - break; - } - - default: - break; - } - - /* Enable the complementary PWM output */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); - - /* Enable the Main Output */ - __HAL_TIM_MOE_ENABLE(htim); - - /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; - if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) - { - __HAL_TIM_ENABLE(htim); - } - } - else - { - __HAL_TIM_ENABLE(htim); - } - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM PWM signal generation in DMA mode on the complementary - * output - * @param htim TIM handle - * @param Channel TIM Channel to be disabled - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @arg TIM_CHANNEL_3: TIM Channel 3 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) -{ - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); - - switch (Channel) - { - case TIM_CHANNEL_1: - { - /* Disable the TIM Capture/Compare 1 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); - break; - } - - case TIM_CHANNEL_2: - { - /* Disable the TIM Capture/Compare 2 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); - break; - } - - case TIM_CHANNEL_3: - { - /* Disable the TIM Capture/Compare 3 DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); - (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); - break; - } - - default: - break; - } - - /* Disable the complementary PWM output */ - TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); - - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM complementary channel state */ - TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup TIMEx_Exported_Functions_Group4 Extended Timer Complementary One Pulse functions - * @brief Timer Complementary One Pulse functions - * -@verbatim - ============================================================================== - ##### Timer Complementary One Pulse functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Start the Complementary One Pulse generation. - (+) Stop the Complementary One Pulse. - (+) Start the Complementary One Pulse and enable interrupts. - (+) Stop the Complementary One Pulse and disable interrupts. - -@endverbatim - * @{ - */ - -/** - * @brief Starts the TIM One Pulse signal generation on the complementary - * output. - * @note OutputChannel must match the pulse output channel chosen when calling - * @ref HAL_TIM_OnePulse_ConfigChannel(). - * @param htim TIM One Pulse handle - * @param OutputChannel pulse output channel to enable - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel) -{ - uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; - HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); - HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); - - /* Check the TIM channels state */ - if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - - /* Enable the complementary One Pulse output channel and the Input Capture channel */ - TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_ENABLE); - TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_ENABLE); - - /* Enable the Main Output */ - __HAL_TIM_MOE_ENABLE(htim); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM One Pulse signal generation on the complementary - * output. - * @note OutputChannel must match the pulse output channel chosen when calling - * @ref HAL_TIM_OnePulse_ConfigChannel(). - * @param htim TIM One Pulse handle - * @param OutputChannel pulse output channel to disable - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel) -{ - uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); - - /* Disable the complementary One Pulse output channel and the Input Capture channel */ - TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_DISABLE); - TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_DISABLE); - - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Starts the TIM One Pulse signal generation in interrupt mode on the - * complementary channel. - * @note OutputChannel must match the pulse output channel chosen when calling - * @ref HAL_TIM_OnePulse_ConfigChannel(). - * @param htim TIM One Pulse handle - * @param OutputChannel pulse output channel to enable - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel) -{ - uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; - HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); - HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); - HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); - - /* Check the TIM channels state */ - if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) - || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) - { - return HAL_ERROR; - } - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); - - /* Enable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); - - /* Enable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); - - /* Enable the complementary One Pulse output channel and the Input Capture channel */ - TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_ENABLE); - TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_ENABLE); - - /* Enable the Main Output */ - __HAL_TIM_MOE_ENABLE(htim); - - /* Return function status */ - return HAL_OK; -} - -/** - * @brief Stops the TIM One Pulse signal generation in interrupt mode on the - * complementary channel. - * @note OutputChannel must match the pulse output channel chosen when calling - * @ref HAL_TIM_OnePulse_ConfigChannel(). - * @param htim TIM One Pulse handle - * @param OutputChannel pulse output channel to disable - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 selected - * @arg TIM_CHANNEL_2: TIM Channel 2 selected - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel) -{ - uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); - - /* Disable the TIM Capture/Compare 1 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); - - /* Disable the TIM Capture/Compare 2 interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); - - /* Disable the complementary One Pulse output channel and the Input Capture channel */ - TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_DISABLE); - TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_DISABLE); - - /* Disable the Main Output */ - __HAL_TIM_MOE_DISABLE(htim); - - /* Disable the Peripheral */ - __HAL_TIM_DISABLE(htim); - - /* Set the TIM channels state */ - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - - /* Return function status */ - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup TIMEx_Exported_Functions_Group5 Extended Peripheral Control functions - * @brief Peripheral Control functions - * -@verbatim - ============================================================================== - ##### Peripheral Control functions ##### - ============================================================================== - [..] - This section provides functions allowing to: - (+) Configure the commutation event in case of use of the Hall sensor interface. - (+) Configure Output channels for OC and PWM mode. - - (+) Configure Complementary channels, break features and dead time. - (+) Configure Master synchronization. - (+) Configure timer remapping capabilities. - -@endverbatim - * @{ - */ - -/** - * @brief Configure the TIM commutation event sequence. - * @note This function is mandatory to use the commutation event in order to - * update the configuration at each commutation detection on the TRGI input of the Timer, - * the typical use of this feature is with the use of another Timer(interface Timer) - * configured in Hall sensor interface, this interface Timer will generate the - * commutation at its TRGO output (connected to Timer used in this function) each time - * the TI1 of the Interface Timer detect a commutation at its input TI1. - * @param htim TIM handle - * @param InputTrigger the Internal trigger corresponding to the Timer Interfacing with the Hall sensor - * This parameter can be one of the following values: - * @arg TIM_TS_ITR0: Internal trigger 0 selected - * @arg TIM_TS_ITR1: Internal trigger 1 selected - * @arg TIM_TS_ITR2: Internal trigger 2 selected - * @arg TIM_TS_ITR3: Internal trigger 3 selected - * @arg TIM_TS_NONE: No trigger is needed - * @param CommutationSource the Commutation Event source - * This parameter can be one of the following values: - * @arg TIM_COMMUTATION_TRGI: Commutation source is the TRGI of the Interface Timer - * @arg TIM_COMMUTATION_SOFTWARE: Commutation source is set by software using the COMG bit - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent(TIM_HandleTypeDef *htim, uint32_t InputTrigger, - uint32_t CommutationSource) -{ - /* Check the parameters */ - assert_param(IS_TIM_COMMUTATION_EVENT_INSTANCE(htim->Instance)); - assert_param(IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(InputTrigger)); - - __HAL_LOCK(htim); - - if ((InputTrigger == TIM_TS_ITR0) || (InputTrigger == TIM_TS_ITR1) || - (InputTrigger == TIM_TS_ITR2) || (InputTrigger == TIM_TS_ITR3)) - { - /* Select the Input trigger */ - htim->Instance->SMCR &= ~TIM_SMCR_TS; - htim->Instance->SMCR |= InputTrigger; - } - - /* Select the Capture Compare preload feature */ - htim->Instance->CR2 |= TIM_CR2_CCPC; - /* Select the Commutation event source */ - htim->Instance->CR2 &= ~TIM_CR2_CCUS; - htim->Instance->CR2 |= CommutationSource; - - /* Disable Commutation Interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_COM); - - /* Disable Commutation DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_COM); - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Configure the TIM commutation event sequence with interrupt. - * @note This function is mandatory to use the commutation event in order to - * update the configuration at each commutation detection on the TRGI input of the Timer, - * the typical use of this feature is with the use of another Timer(interface Timer) - * configured in Hall sensor interface, this interface Timer will generate the - * commutation at its TRGO output (connected to Timer used in this function) each time - * the TI1 of the Interface Timer detect a commutation at its input TI1. - * @param htim TIM handle - * @param InputTrigger the Internal trigger corresponding to the Timer Interfacing with the Hall sensor - * This parameter can be one of the following values: - * @arg TIM_TS_ITR0: Internal trigger 0 selected - * @arg TIM_TS_ITR1: Internal trigger 1 selected - * @arg TIM_TS_ITR2: Internal trigger 2 selected - * @arg TIM_TS_ITR3: Internal trigger 3 selected - * @arg TIM_TS_NONE: No trigger is needed - * @param CommutationSource the Commutation Event source - * This parameter can be one of the following values: - * @arg TIM_COMMUTATION_TRGI: Commutation source is the TRGI of the Interface Timer - * @arg TIM_COMMUTATION_SOFTWARE: Commutation source is set by software using the COMG bit - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_IT(TIM_HandleTypeDef *htim, uint32_t InputTrigger, - uint32_t CommutationSource) -{ - /* Check the parameters */ - assert_param(IS_TIM_COMMUTATION_EVENT_INSTANCE(htim->Instance)); - assert_param(IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(InputTrigger)); - - __HAL_LOCK(htim); - - if ((InputTrigger == TIM_TS_ITR0) || (InputTrigger == TIM_TS_ITR1) || - (InputTrigger == TIM_TS_ITR2) || (InputTrigger == TIM_TS_ITR3)) - { - /* Select the Input trigger */ - htim->Instance->SMCR &= ~TIM_SMCR_TS; - htim->Instance->SMCR |= InputTrigger; - } - - /* Select the Capture Compare preload feature */ - htim->Instance->CR2 |= TIM_CR2_CCPC; - /* Select the Commutation event source */ - htim->Instance->CR2 &= ~TIM_CR2_CCUS; - htim->Instance->CR2 |= CommutationSource; - - /* Disable Commutation DMA request */ - __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_COM); - - /* Enable the Commutation Interrupt */ - __HAL_TIM_ENABLE_IT(htim, TIM_IT_COM); - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Configure the TIM commutation event sequence with DMA. - * @note This function is mandatory to use the commutation event in order to - * update the configuration at each commutation detection on the TRGI input of the Timer, - * the typical use of this feature is with the use of another Timer(interface Timer) - * configured in Hall sensor interface, this interface Timer will generate the - * commutation at its TRGO output (connected to Timer used in this function) each time - * the TI1 of the Interface Timer detect a commutation at its input TI1. - * @note The user should configure the DMA in his own software, in This function only the COMDE bit is set - * @param htim TIM handle - * @param InputTrigger the Internal trigger corresponding to the Timer Interfacing with the Hall sensor - * This parameter can be one of the following values: - * @arg TIM_TS_ITR0: Internal trigger 0 selected - * @arg TIM_TS_ITR1: Internal trigger 1 selected - * @arg TIM_TS_ITR2: Internal trigger 2 selected - * @arg TIM_TS_ITR3: Internal trigger 3 selected - * @arg TIM_TS_NONE: No trigger is needed - * @param CommutationSource the Commutation Event source - * This parameter can be one of the following values: - * @arg TIM_COMMUTATION_TRGI: Commutation source is the TRGI of the Interface Timer - * @arg TIM_COMMUTATION_SOFTWARE: Commutation source is set by software using the COMG bit - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_DMA(TIM_HandleTypeDef *htim, uint32_t InputTrigger, - uint32_t CommutationSource) -{ - /* Check the parameters */ - assert_param(IS_TIM_COMMUTATION_EVENT_INSTANCE(htim->Instance)); - assert_param(IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(InputTrigger)); - - __HAL_LOCK(htim); - - if ((InputTrigger == TIM_TS_ITR0) || (InputTrigger == TIM_TS_ITR1) || - (InputTrigger == TIM_TS_ITR2) || (InputTrigger == TIM_TS_ITR3)) - { - /* Select the Input trigger */ - htim->Instance->SMCR &= ~TIM_SMCR_TS; - htim->Instance->SMCR |= InputTrigger; - } - - /* Select the Capture Compare preload feature */ - htim->Instance->CR2 |= TIM_CR2_CCPC; - /* Select the Commutation event source */ - htim->Instance->CR2 &= ~TIM_CR2_CCUS; - htim->Instance->CR2 |= CommutationSource; - - /* Enable the Commutation DMA Request */ - /* Set the DMA Commutation Callback */ - htim->hdma[TIM_DMA_ID_COMMUTATION]->XferCpltCallback = TIMEx_DMACommutationCplt; - htim->hdma[TIM_DMA_ID_COMMUTATION]->XferHalfCpltCallback = TIMEx_DMACommutationHalfCplt; - /* Set the DMA error callback */ - htim->hdma[TIM_DMA_ID_COMMUTATION]->XferErrorCallback = TIM_DMAError; - - /* Disable Commutation Interrupt */ - __HAL_TIM_DISABLE_IT(htim, TIM_IT_COM); - - /* Enable the Commutation DMA Request */ - __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_COM); - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Configures the TIM in master mode. - * @param htim TIM handle. - * @param sMasterConfig pointer to a TIM_MasterConfigTypeDef structure that - * contains the selected trigger output (TRGO) and the Master/Slave - * mode. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_MasterConfigSynchronization(TIM_HandleTypeDef *htim, - TIM_MasterConfigTypeDef *sMasterConfig) -{ - uint32_t tmpcr2; - uint32_t tmpsmcr; - - /* Check the parameters */ - assert_param(IS_TIM_MASTER_INSTANCE(htim->Instance)); - assert_param(IS_TIM_TRGO_SOURCE(sMasterConfig->MasterOutputTrigger)); - assert_param(IS_TIM_MSM_STATE(sMasterConfig->MasterSlaveMode)); - - /* Check input state */ - __HAL_LOCK(htim); - - /* Change the handler state */ - htim->State = HAL_TIM_STATE_BUSY; - - /* Get the TIMx CR2 register value */ - tmpcr2 = htim->Instance->CR2; - - /* Get the TIMx SMCR register value */ - tmpsmcr = htim->Instance->SMCR; - - /* Reset the MMS Bits */ - tmpcr2 &= ~TIM_CR2_MMS; - /* Select the TRGO source */ - tmpcr2 |= sMasterConfig->MasterOutputTrigger; - - /* Update TIMx CR2 */ - htim->Instance->CR2 = tmpcr2; - - if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) - { - /* Reset the MSM Bit */ - tmpsmcr &= ~TIM_SMCR_MSM; - /* Set master mode */ - tmpsmcr |= sMasterConfig->MasterSlaveMode; - - /* Update TIMx SMCR */ - htim->Instance->SMCR = tmpsmcr; - } - - /* Change the htim state */ - htim->State = HAL_TIM_STATE_READY; - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Configures the Break feature, dead time, Lock level, OSSI/OSSR State - * and the AOE(automatic output enable). - * @param htim TIM handle - * @param sBreakDeadTimeConfig pointer to a TIM_ConfigBreakDeadConfigTypeDef structure that - * contains the BDTR Register configuration information for the TIM peripheral. - * @note Interrupts can be generated when an active level is detected on the - * break input, the break 2 input or the system break input. Break - * interrupt can be enabled by calling the @ref __HAL_TIM_ENABLE_IT macro. - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_ConfigBreakDeadTime(TIM_HandleTypeDef *htim, - TIM_BreakDeadTimeConfigTypeDef *sBreakDeadTimeConfig) -{ - /* Keep this variable initialized to 0 as it is used to configure BDTR register */ - uint32_t tmpbdtr = 0U; - - /* Check the parameters */ - assert_param(IS_TIM_BREAK_INSTANCE(htim->Instance)); - assert_param(IS_TIM_OSSR_STATE(sBreakDeadTimeConfig->OffStateRunMode)); - assert_param(IS_TIM_OSSI_STATE(sBreakDeadTimeConfig->OffStateIDLEMode)); - assert_param(IS_TIM_LOCK_LEVEL(sBreakDeadTimeConfig->LockLevel)); - assert_param(IS_TIM_DEADTIME(sBreakDeadTimeConfig->DeadTime)); - assert_param(IS_TIM_BREAK_STATE(sBreakDeadTimeConfig->BreakState)); - assert_param(IS_TIM_BREAK_POLARITY(sBreakDeadTimeConfig->BreakPolarity)); - assert_param(IS_TIM_AUTOMATIC_OUTPUT_STATE(sBreakDeadTimeConfig->AutomaticOutput)); - - /* Check input state */ - __HAL_LOCK(htim); - - /* Set the Lock level, the Break enable Bit and the Polarity, the OSSR State, - the OSSI State, the dead time value and the Automatic Output Enable Bit */ - - /* Set the BDTR bits */ - MODIFY_REG(tmpbdtr, TIM_BDTR_DTG, sBreakDeadTimeConfig->DeadTime); - MODIFY_REG(tmpbdtr, TIM_BDTR_LOCK, sBreakDeadTimeConfig->LockLevel); - MODIFY_REG(tmpbdtr, TIM_BDTR_OSSI, sBreakDeadTimeConfig->OffStateIDLEMode); - MODIFY_REG(tmpbdtr, TIM_BDTR_OSSR, sBreakDeadTimeConfig->OffStateRunMode); - MODIFY_REG(tmpbdtr, TIM_BDTR_BKE, sBreakDeadTimeConfig->BreakState); - MODIFY_REG(tmpbdtr, TIM_BDTR_BKP, sBreakDeadTimeConfig->BreakPolarity); - MODIFY_REG(tmpbdtr, TIM_BDTR_AOE, sBreakDeadTimeConfig->AutomaticOutput); - - - /* Set TIMx_BDTR */ - htim->Instance->BDTR = tmpbdtr; - - __HAL_UNLOCK(htim); - - return HAL_OK; -} - -/** - * @brief Configures the TIMx Remapping input capabilities. - * @param htim TIM handle. - * @param Remap specifies the TIM remapping source. - * - * @retval HAL status - */ -HAL_StatusTypeDef HAL_TIMEx_RemapConfig(TIM_HandleTypeDef *htim, uint32_t Remap) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - UNUSED(Remap); - - return HAL_OK; -} - -/** - * @} - */ - -/** @defgroup TIMEx_Exported_Functions_Group6 Extended Callbacks functions - * @brief Extended Callbacks functions - * -@verbatim - ============================================================================== - ##### Extended Callbacks functions ##### - ============================================================================== - [..] - This section provides Extended TIM callback functions: - (+) Timer Commutation callback - (+) Timer Break callback - -@endverbatim - * @{ - */ - -/** - * @brief Hall commutation changed callback in non-blocking mode - * @param htim TIM handle - * @retval None - */ -__weak void HAL_TIMEx_CommutCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIMEx_CommutCallback could be implemented in the user file - */ -} -/** - * @brief Hall commutation changed half complete callback in non-blocking mode - * @param htim TIM handle - * @retval None - */ -__weak void HAL_TIMEx_CommutHalfCpltCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIMEx_CommutHalfCpltCallback could be implemented in the user file - */ -} - -/** - * @brief Hall Break detection callback in non-blocking mode - * @param htim TIM handle - * @retval None - */ -__weak void HAL_TIMEx_BreakCallback(TIM_HandleTypeDef *htim) -{ - /* Prevent unused argument(s) compilation warning */ - UNUSED(htim); - - /* NOTE : This function should not be modified, when the callback is needed, - the HAL_TIMEx_BreakCallback could be implemented in the user file - */ -} -/** - * @} - */ - -/** @defgroup TIMEx_Exported_Functions_Group7 Extended Peripheral State functions - * @brief Extended Peripheral State functions - * -@verbatim - ============================================================================== - ##### Extended Peripheral State functions ##### - ============================================================================== - [..] - This subsection permits to get in run-time the status of the peripheral - and the data flow. - -@endverbatim - * @{ - */ - -/** - * @brief Return the TIM Hall Sensor interface handle state. - * @param htim TIM Hall Sensor handle - * @retval HAL state - */ -HAL_TIM_StateTypeDef HAL_TIMEx_HallSensor_GetState(TIM_HandleTypeDef *htim) -{ - return htim->State; -} - -/** - * @brief Return actual state of the TIM complementary channel. - * @param htim TIM handle - * @param ChannelN TIM Complementary channel - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 - * @arg TIM_CHANNEL_2: TIM Channel 2 - * @arg TIM_CHANNEL_3: TIM Channel 3 - * @retval TIM Complementary channel state - */ -HAL_TIM_ChannelStateTypeDef HAL_TIMEx_GetChannelNState(TIM_HandleTypeDef *htim, uint32_t ChannelN) -{ - HAL_TIM_ChannelStateTypeDef channel_state; - - /* Check the parameters */ - assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, ChannelN)); - - channel_state = TIM_CHANNEL_N_STATE_GET(htim, ChannelN); - - return channel_state; -} -/** - * @} - */ - -/** - * @} - */ - -/* Private functions ---------------------------------------------------------*/ -/** @defgroup TIMEx_Private_Functions TIMEx Private Functions - * @{ - */ - -/** - * @brief TIM DMA Commutation callback. - * @param hdma pointer to DMA handle. - * @retval None - */ -void TIMEx_DMACommutationCplt(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - - /* Change the htim state */ - htim->State = HAL_TIM_STATE_READY; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->CommutationCallback(htim); -#else - HAL_TIMEx_CommutCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ -} - -/** - * @brief TIM DMA Commutation half complete callback. - * @param hdma pointer to DMA handle. - * @retval None - */ -void TIMEx_DMACommutationHalfCplt(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - - /* Change the htim state */ - htim->State = HAL_TIM_STATE_READY; - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->CommutationHalfCpltCallback(htim); -#else - HAL_TIMEx_CommutHalfCpltCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ -} - - -/** - * @brief TIM DMA Delay Pulse complete callback (complementary channel). - * @param hdma pointer to DMA handle. - * @retval None - */ -static void TIM_DMADelayPulseNCplt(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - - if (hdma == htim->hdma[TIM_DMA_ID_CC1]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - } - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - } - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); - } - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; - - if (hdma->Init.Mode == DMA_NORMAL) - { - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_4, HAL_TIM_CHANNEL_STATE_READY); - } - } - else - { - /* nothing to do */ - } - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->PWM_PulseFinishedCallback(htim); -#else - HAL_TIM_PWM_PulseFinishedCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; -} - -/** - * @brief TIM DMA error callback (complementary channel) - * @param hdma pointer to DMA handle. - * @retval None - */ -static void TIM_DMAErrorCCxN(DMA_HandleTypeDef *hdma) -{ - TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; - - if (hdma == htim->hdma[TIM_DMA_ID_CC1]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); - } - else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) - { - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; - TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); - } - else - { - /* nothing to do */ - } - -#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) - htim->ErrorCallback(htim); -#else - HAL_TIM_ErrorCallback(htim); -#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ - - htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; -} - -/** - * @brief Enables or disables the TIM Capture Compare Channel xN. - * @param TIMx to select the TIM peripheral - * @param Channel specifies the TIM Channel - * This parameter can be one of the following values: - * @arg TIM_CHANNEL_1: TIM Channel 1 - * @arg TIM_CHANNEL_2: TIM Channel 2 - * @arg TIM_CHANNEL_3: TIM Channel 3 - * @param ChannelNState specifies the TIM Channel CCxNE bit new state. - * This parameter can be: TIM_CCxN_ENABLE or TIM_CCxN_Disable. - * @retval None - */ -static void TIM_CCxNChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelNState) -{ - uint32_t tmp; - - tmp = TIM_CCER_CC1NE << (Channel & 0x1FU); /* 0x1FU = 31 bits max shift */ - - /* Reset the CCxNE Bit */ - TIMx->CCER &= ~tmp; - - /* Set or reset the CCxNE Bit */ - TIMx->CCER |= (uint32_t)(ChannelNState << (Channel & 0x1FU)); /* 0x1FU = 31 bits max shift */ -} -/** - * @} - */ - -#endif /* HAL_TIM_MODULE_ENABLED */ -/** - * @} - */ - -/** - * @} - */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ +/** + ****************************************************************************** + * @file stm32f1xx_hal_tim_ex.c + * @author MCD Application Team + * @brief TIM HAL module driver. + * This file provides firmware functions to manage the following + * functionalities of the Timer Extended peripheral: + * + Time Hall Sensor Interface Initialization + * + Time Hall Sensor Interface Start + * + Time Complementary signal break and dead time configuration + * + Time Master and Slave synchronization configuration + * + Timer remapping capabilities configuration + @verbatim + ============================================================================== + ##### TIMER Extended features ##### + ============================================================================== + [..] + The Timer Extended features include: + (#) Complementary outputs with programmable dead-time for : + (++) Output Compare + (++) PWM generation (Edge and Center-aligned Mode) + (++) One-pulse mode output + (#) Synchronization circuit to control the timer with external signals and to + interconnect several timers together. + (#) Break input to put the timer output signals in reset state or in a known state. + (#) Supports incremental (quadrature) encoder and hall-sensor circuitry for + positioning purposes + + ##### How to use this driver ##### + ============================================================================== + [..] + (#) Initialize the TIM low level resources by implementing the following functions + depending on the selected feature: + (++) Hall Sensor output : HAL_TIMEx_HallSensor_MspInit() + + (#) Initialize the TIM low level resources : + (##) Enable the TIM interface clock using __HAL_RCC_TIMx_CLK_ENABLE(); + (##) TIM pins configuration + (+++) Enable the clock for the TIM GPIOs using the following function: + __HAL_RCC_GPIOx_CLK_ENABLE(); + (+++) Configure these TIM pins in Alternate function mode using HAL_GPIO_Init(); + + (#) The external Clock can be configured, if needed (the default clock is the + internal clock from the APBx), using the following function: + HAL_TIM_ConfigClockSource, the clock configuration should be done before + any start function. + + (#) Configure the TIM in the desired functioning mode using one of the + initialization function of this driver: + (++) HAL_TIMEx_HallSensor_Init() and HAL_TIMEx_ConfigCommutEvent(): to use the + Timer Hall Sensor Interface and the commutation event with the corresponding + Interrupt and DMA request if needed (Note that One Timer is used to interface + with the Hall sensor Interface and another Timer should be used to use + the commutation event). + + (#) Activate the TIM peripheral using one of the start functions: + (++) Complementary Output Compare : HAL_TIMEx_OCN_Start(), HAL_TIMEx_OCN_Start_DMA(), + HAL_TIMEx_OCN_Start_IT() + (++) Complementary PWM generation : HAL_TIMEx_PWMN_Start(), HAL_TIMEx_PWMN_Start_DMA(), + HAL_TIMEx_PWMN_Start_IT() + (++) Complementary One-pulse mode output : HAL_TIMEx_OnePulseN_Start(), HAL_TIMEx_OnePulseN_Start_IT() + (++) Hall Sensor output : HAL_TIMEx_HallSensor_Start(), HAL_TIMEx_HallSensor_Start_DMA(), + HAL_TIMEx_HallSensor_Start_IT(). + + @endverbatim + ****************************************************************************** + * @attention + * + *

    © Copyright (c) 2016 STMicroelectronics. + * All rights reserved.

    + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "stm32f1xx_hal.h" + +/** @addtogroup STM32F1xx_HAL_Driver + * @{ + */ + +/** @defgroup TIMEx TIMEx + * @brief TIM Extended HAL module driver + * @{ + */ + +#ifdef HAL_TIM_MODULE_ENABLED + +/* Private typedef -----------------------------------------------------------*/ +/* Private define ------------------------------------------------------------*/ +/* Private macros ------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ +/* Private function prototypes -----------------------------------------------*/ +static void TIM_DMADelayPulseNCplt(DMA_HandleTypeDef *hdma); +static void TIM_DMAErrorCCxN(DMA_HandleTypeDef *hdma); +static void TIM_CCxNChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelNState); + +/* Exported functions --------------------------------------------------------*/ +/** @defgroup TIMEx_Exported_Functions TIM Extended Exported Functions + * @{ + */ + +/** @defgroup TIMEx_Exported_Functions_Group1 Extended Timer Hall Sensor functions + * @brief Timer Hall Sensor functions + * +@verbatim + ============================================================================== + ##### Timer Hall Sensor functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Initialize and configure TIM HAL Sensor. + (+) De-initialize TIM HAL Sensor. + (+) Start the Hall Sensor Interface. + (+) Stop the Hall Sensor Interface. + (+) Start the Hall Sensor Interface and enable interrupts. + (+) Stop the Hall Sensor Interface and disable interrupts. + (+) Start the Hall Sensor Interface and enable DMA transfers. + (+) Stop the Hall Sensor Interface and disable DMA transfers. + +@endverbatim + * @{ + */ +/** + * @brief Initializes the TIM Hall Sensor Interface and initialize the associated handle. + * @note When the timer instance is initialized in Hall Sensor Interface mode, + * timer channels 1 and channel 2 are reserved and cannot be used for + * other purpose. + * @param htim TIM Hall Sensor Interface handle + * @param sConfig TIM Hall Sensor configuration structure + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Init(TIM_HandleTypeDef *htim, TIM_HallSensor_InitTypeDef *sConfig) +{ + TIM_OC_InitTypeDef OC_Config; + + /* Check the TIM handle allocation */ + if (htim == NULL) + { + return HAL_ERROR; + } + + /* Check the parameters */ + assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); + assert_param(IS_TIM_COUNTER_MODE(htim->Init.CounterMode)); + assert_param(IS_TIM_CLOCKDIVISION_DIV(htim->Init.ClockDivision)); + assert_param(IS_TIM_AUTORELOAD_PRELOAD(htim->Init.AutoReloadPreload)); + assert_param(IS_TIM_IC_POLARITY(sConfig->IC1Polarity)); + assert_param(IS_TIM_IC_PRESCALER(sConfig->IC1Prescaler)); + assert_param(IS_TIM_IC_FILTER(sConfig->IC1Filter)); + + if (htim->State == HAL_TIM_STATE_RESET) + { + /* Allocate lock resource and initialize it */ + htim->Lock = HAL_UNLOCKED; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + /* Reset interrupt callbacks to legacy week callbacks */ + TIM_ResetCallback(htim); + + if (htim->HallSensor_MspInitCallback == NULL) + { + htim->HallSensor_MspInitCallback = HAL_TIMEx_HallSensor_MspInit; + } + /* Init the low level hardware : GPIO, CLOCK, NVIC */ + htim->HallSensor_MspInitCallback(htim); +#else + /* Init the low level hardware : GPIO, CLOCK, NVIC and DMA */ + HAL_TIMEx_HallSensor_MspInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + } + + /* Set the TIM state */ + htim->State = HAL_TIM_STATE_BUSY; + + /* Configure the Time base in the Encoder Mode */ + TIM_Base_SetConfig(htim->Instance, &htim->Init); + + /* Configure the Channel 1 as Input Channel to interface with the three Outputs of the Hall sensor */ + TIM_TI1_SetConfig(htim->Instance, sConfig->IC1Polarity, TIM_ICSELECTION_TRC, sConfig->IC1Filter); + + /* Reset the IC1PSC Bits */ + htim->Instance->CCMR1 &= ~TIM_CCMR1_IC1PSC; + /* Set the IC1PSC value */ + htim->Instance->CCMR1 |= sConfig->IC1Prescaler; + + /* Enable the Hall sensor interface (XOR function of the three inputs) */ + htim->Instance->CR2 |= TIM_CR2_TI1S; + + /* Select the TIM_TS_TI1F_ED signal as Input trigger for the TIM */ + htim->Instance->SMCR &= ~TIM_SMCR_TS; + htim->Instance->SMCR |= TIM_TS_TI1F_ED; + + /* Use the TIM_TS_TI1F_ED signal to reset the TIM counter each edge detection */ + htim->Instance->SMCR &= ~TIM_SMCR_SMS; + htim->Instance->SMCR |= TIM_SLAVEMODE_RESET; + + /* Program channel 2 in PWM 2 mode with the desired Commutation_Delay*/ + OC_Config.OCFastMode = TIM_OCFAST_DISABLE; + OC_Config.OCIdleState = TIM_OCIDLESTATE_RESET; + OC_Config.OCMode = TIM_OCMODE_PWM2; + OC_Config.OCNIdleState = TIM_OCNIDLESTATE_RESET; + OC_Config.OCNPolarity = TIM_OCNPOLARITY_HIGH; + OC_Config.OCPolarity = TIM_OCPOLARITY_HIGH; + OC_Config.Pulse = sConfig->Commutation_Delay; + + TIM_OC2_SetConfig(htim->Instance, &OC_Config); + + /* Select OC2REF as trigger output on TRGO: write the MMS bits in the TIMx_CR2 + register to 101 */ + htim->Instance->CR2 &= ~TIM_CR2_MMS; + htim->Instance->CR2 |= TIM_TRGO_OC2REF; + + /* Initialize the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_READY; + + /* Initialize the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + + /* Initialize the TIM state*/ + htim->State = HAL_TIM_STATE_READY; + + return HAL_OK; +} + +/** + * @brief DeInitializes the TIM Hall Sensor interface + * @param htim TIM Hall Sensor Interface handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_DeInit(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_INSTANCE(htim->Instance)); + + htim->State = HAL_TIM_STATE_BUSY; + + /* Disable the TIM Peripheral Clock */ + __HAL_TIM_DISABLE(htim); + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + if (htim->HallSensor_MspDeInitCallback == NULL) + { + htim->HallSensor_MspDeInitCallback = HAL_TIMEx_HallSensor_MspDeInit; + } + /* DeInit the low level hardware */ + htim->HallSensor_MspDeInitCallback(htim); +#else + /* DeInit the low level hardware: GPIO, CLOCK, NVIC */ + HAL_TIMEx_HallSensor_MspDeInit(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + /* Change the DMA burst operation state */ + htim->DMABurstState = HAL_DMA_BURST_STATE_RESET; + + /* Change the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_RESET); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_RESET); + + /* Change TIM state */ + htim->State = HAL_TIM_STATE_RESET; + + /* Release Lock */ + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Initializes the TIM Hall Sensor MSP. + * @param htim TIM Hall Sensor Interface handle + * @retval None + */ +__weak void HAL_TIMEx_HallSensor_MspInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIMEx_HallSensor_MspInit could be implemented in the user file + */ +} + +/** + * @brief DeInitializes TIM Hall Sensor MSP. + * @param htim TIM Hall Sensor Interface handle + * @retval None + */ +__weak void HAL_TIMEx_HallSensor_MspDeInit(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIMEx_HallSensor_MspDeInit could be implemented in the user file + */ +} + +/** + * @brief Starts the TIM Hall Sensor Interface. + * @param htim TIM Hall Sensor Interface handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start(TIM_HandleTypeDef *htim) +{ + uint32_t tmpsmcr; + HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); + HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); + + /* Check the parameters */ + assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); + + /* Check the TIM channels state */ + if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + + /* Enable the Input Capture channel 1 + (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, + TIM_CHANNEL_2 and TIM_CHANNEL_3) */ + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Hall sensor Interface. + * @param htim TIM Hall Sensor Interface handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); + + /* Disable the Input Capture channels 1, 2 and 3 + (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, + TIM_CHANNEL_2 and TIM_CHANNEL_3) */ + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Hall Sensor Interface in interrupt mode. + * @param htim TIM Hall Sensor Interface handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_IT(TIM_HandleTypeDef *htim) +{ + uint32_t tmpsmcr; + HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); + HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); + + /* Check the parameters */ + assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); + + /* Check the TIM channels state */ + if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + + /* Enable the capture compare Interrupts 1 event */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); + + /* Enable the Input Capture channel 1 + (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, + TIM_CHANNEL_2 and TIM_CHANNEL_3) */ + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Hall Sensor Interface in interrupt mode. + * @param htim TIM Hall Sensor Interface handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_IT(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); + + /* Disable the Input Capture channel 1 + (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, + TIM_CHANNEL_2 and TIM_CHANNEL_3) */ + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); + + /* Disable the capture compare Interrupts event */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Hall Sensor Interface in DMA mode. + * @param htim TIM Hall Sensor Interface handle + * @param pData The destination Buffer address. + * @param Length The length of data to be transferred from TIM peripheral to memory. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length) +{ + uint32_t tmpsmcr; + HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); + + /* Check the parameters */ + assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); + + /* Set the TIM channel state */ + if ((channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY) + || (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_BUSY)) + { + return HAL_BUSY; + } + else if ((channel_1_state == HAL_TIM_CHANNEL_STATE_READY) + && (complementary_channel_1_state == HAL_TIM_CHANNEL_STATE_READY)) + { + if ((pData == NULL) && (Length > 0U)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else + { + return HAL_ERROR; + } + + /* Enable the Input Capture channel 1 + (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, + TIM_CHANNEL_2 and TIM_CHANNEL_3) */ + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_ENABLE); + + /* Set the DMA Input Capture 1 Callbacks */ + htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMACaptureCplt; + htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMACaptureHalfCplt; + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAError ; + + /* Enable the DMA channel for Capture 1*/ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)&htim->Instance->CCR1, (uint32_t)pData, Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the capture compare 1 Interrupt */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Hall Sensor Interface in DMA mode. + * @param htim TIM Hall Sensor Interface handle + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_DMA(TIM_HandleTypeDef *htim) +{ + /* Check the parameters */ + assert_param(IS_TIM_HALL_SENSOR_INTERFACE_INSTANCE(htim->Instance)); + + /* Disable the Input Capture channel 1 + (in the Hall Sensor Interface the three possible channels that can be used are TIM_CHANNEL_1, + TIM_CHANNEL_2 and TIM_CHANNEL_3) */ + TIM_CCxChannelCmd(htim->Instance, TIM_CHANNEL_1, TIM_CCx_DISABLE); + + + /* Disable the capture compare Interrupts 1 event */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); + + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channel state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup TIMEx_Exported_Functions_Group2 Extended Timer Complementary Output Compare functions + * @brief Timer Complementary Output Compare functions + * +@verbatim + ============================================================================== + ##### Timer Complementary Output Compare functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Start the Complementary Output Compare/PWM. + (+) Stop the Complementary Output Compare/PWM. + (+) Start the Complementary Output Compare/PWM and enable interrupts. + (+) Stop the Complementary Output Compare/PWM and disable interrupts. + (+) Start the Complementary Output Compare/PWM and enable DMA transfers. + (+) Stop the Complementary Output Compare/PWM and disable DMA transfers. + +@endverbatim + * @{ + */ + +/** + * @brief Starts the TIM Output Compare signal generation on the complementary + * output. + * @param htim TIM Output Compare handle + * @param Channel TIM Channel to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_OCN_Start(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + /* Check the TIM complementary channel state */ + if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) + { + return HAL_ERROR; + } + + /* Set the TIM complementary channel state */ + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + + /* Enable the Capture compare channel N */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); + + /* Enable the Main Output */ + __HAL_TIM_MOE_ENABLE(htim); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Output Compare signal generation on the complementary + * output. + * @param htim TIM handle + * @param Channel TIM Channel to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_OCN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + /* Disable the Capture compare channel N */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); + + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM complementary channel state */ + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Output Compare signal generation in interrupt mode + * on the complementary output. + * @param htim TIM OC handle + * @param Channel TIM Channel to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_OCN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + /* Check the TIM complementary channel state */ + if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) + { + return HAL_ERROR; + } + + /* Set the TIM complementary channel state */ + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Enable the TIM Output Compare interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Enable the TIM Output Compare interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Enable the TIM Output Compare interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); + break; + } + + + default: + break; + } + + /* Enable the TIM Break interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_BREAK); + + /* Enable the Capture compare channel N */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); + + /* Enable the Main Output */ + __HAL_TIM_MOE_ENABLE(htim); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Output Compare signal generation in interrupt mode + * on the complementary output. + * @param htim TIM Output Compare handle + * @param Channel TIM Channel to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpccer; + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Disable the TIM Output Compare interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Disable the TIM Output Compare interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Disable the TIM Output Compare interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); + break; + } + + default: + break; + } + + /* Disable the Capture compare channel N */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); + + /* Disable the TIM Break interrupt (only if no more channel is active) */ + tmpccer = htim->Instance->CCER; + if ((tmpccer & (TIM_CCER_CC1NE | TIM_CCER_CC2NE | TIM_CCER_CC3NE)) == (uint32_t)RESET) + { + __HAL_TIM_DISABLE_IT(htim, TIM_IT_BREAK); + } + + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM complementary channel state */ + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM Output Compare signal generation in DMA mode + * on the complementary output. + * @param htim TIM Output Compare handle + * @param Channel TIM Channel to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @param pData The source Buffer address. + * @param Length The length of data to be transferred from memory to TIM peripheral + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_OCN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + /* Set the TIM complementary channel state */ + if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_BUSY) + { + return HAL_BUSY; + } + else if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_READY) + { + if ((pData == NULL) && (Length > 0U)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else + { + return HAL_ERROR; + } + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseNCplt; + htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAErrorCCxN ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)pData, (uint32_t)&htim->Instance->CCR1, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Output Compare DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseNCplt; + htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAErrorCCxN ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)pData, (uint32_t)&htim->Instance->CCR2, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Output Compare DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseNCplt; + htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAErrorCCxN ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)pData, (uint32_t)&htim->Instance->CCR3, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Output Compare DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); + break; + } + + default: + break; + } + + /* Enable the Capture compare channel N */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); + + /* Enable the Main Output */ + __HAL_TIM_MOE_ENABLE(htim); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM Output Compare signal generation in DMA mode + * on the complementary output. + * @param htim TIM Output Compare handle + * @param Channel TIM Channel to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Disable the TIM Output Compare DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); + break; + } + + case TIM_CHANNEL_2: + { + /* Disable the TIM Output Compare DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); + break; + } + + case TIM_CHANNEL_3: + { + /* Disable the TIM Output Compare DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); + break; + } + + default: + break; + } + + /* Disable the Capture compare channel N */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); + + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM complementary channel state */ + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup TIMEx_Exported_Functions_Group3 Extended Timer Complementary PWM functions + * @brief Timer Complementary PWM functions + * +@verbatim + ============================================================================== + ##### Timer Complementary PWM functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Start the Complementary PWM. + (+) Stop the Complementary PWM. + (+) Start the Complementary PWM and enable interrupts. + (+) Stop the Complementary PWM and disable interrupts. + (+) Start the Complementary PWM and enable DMA transfers. + (+) Stop the Complementary PWM and disable DMA transfers. + (+) Start the Complementary Input Capture measurement. + (+) Stop the Complementary Input Capture. + (+) Start the Complementary Input Capture and enable interrupts. + (+) Stop the Complementary Input Capture and disable interrupts. + (+) Start the Complementary Input Capture and enable DMA transfers. + (+) Stop the Complementary Input Capture and disable DMA transfers. + (+) Start the Complementary One Pulse generation. + (+) Stop the Complementary One Pulse. + (+) Start the Complementary One Pulse and enable interrupts. + (+) Stop the Complementary One Pulse and disable interrupts. + +@endverbatim + * @{ + */ + +/** + * @brief Starts the PWM signal generation on the complementary output. + * @param htim TIM handle + * @param Channel TIM Channel to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_PWMN_Start(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + /* Check the TIM complementary channel state */ + if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) + { + return HAL_ERROR; + } + + /* Set the TIM complementary channel state */ + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + + /* Enable the complementary PWM output */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); + + /* Enable the Main Output */ + __HAL_TIM_MOE_ENABLE(htim); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the PWM signal generation on the complementary output. + * @param htim TIM handle + * @param Channel TIM Channel to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + /* Disable the complementary PWM output */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); + + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM complementary channel state */ + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the PWM signal generation in interrupt mode on the + * complementary output. + * @param htim TIM handle + * @param Channel TIM Channel to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + /* Check the TIM complementary channel state */ + if (TIM_CHANNEL_N_STATE_GET(htim, Channel) != HAL_TIM_CHANNEL_STATE_READY) + { + return HAL_ERROR; + } + + /* Set the TIM complementary channel state */ + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Enable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Enable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Enable the TIM Capture/Compare 3 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC3); + break; + } + + default: + break; + } + + /* Enable the TIM Break interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_BREAK); + + /* Enable the complementary PWM output */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); + + /* Enable the Main Output */ + __HAL_TIM_MOE_ENABLE(htim); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the PWM signal generation in interrupt mode on the + * complementary output. + * @param htim TIM handle + * @param Channel TIM Channel to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + uint32_t tmpccer; + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Disable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Disable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Disable the TIM Capture/Compare 3 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC3); + break; + } + + default: + break; + } + + /* Disable the complementary PWM output */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); + + /* Disable the TIM Break interrupt (only if no more channel is active) */ + tmpccer = htim->Instance->CCER; + if ((tmpccer & (TIM_CCER_CC1NE | TIM_CCER_CC2NE | TIM_CCER_CC3NE)) == (uint32_t)RESET) + { + __HAL_TIM_DISABLE_IT(htim, TIM_IT_BREAK); + } + + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM complementary channel state */ + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM PWM signal generation in DMA mode on the + * complementary output + * @param htim TIM handle + * @param Channel TIM Channel to be enabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @param pData The source Buffer address. + * @param Length The length of data to be transferred from memory to TIM peripheral + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length) +{ + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + /* Set the TIM complementary channel state */ + if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_BUSY) + { + return HAL_BUSY; + } + else if (TIM_CHANNEL_N_STATE_GET(htim, Channel) == HAL_TIM_CHANNEL_STATE_READY) + { + if ((pData == NULL) && (Length > 0U)) + { + return HAL_ERROR; + } + else + { + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_BUSY); + } + } + else + { + return HAL_ERROR; + } + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC1]->XferCpltCallback = TIM_DMADelayPulseNCplt; + htim->hdma[TIM_DMA_ID_CC1]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC1]->XferErrorCallback = TIM_DMAErrorCCxN ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC1], (uint32_t)pData, (uint32_t)&htim->Instance->CCR1, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Capture/Compare 1 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC1); + break; + } + + case TIM_CHANNEL_2: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC2]->XferCpltCallback = TIM_DMADelayPulseNCplt; + htim->hdma[TIM_DMA_ID_CC2]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC2]->XferErrorCallback = TIM_DMAErrorCCxN ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC2], (uint32_t)pData, (uint32_t)&htim->Instance->CCR2, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Capture/Compare 2 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC2); + break; + } + + case TIM_CHANNEL_3: + { + /* Set the DMA compare callbacks */ + htim->hdma[TIM_DMA_ID_CC3]->XferCpltCallback = TIM_DMADelayPulseNCplt; + htim->hdma[TIM_DMA_ID_CC3]->XferHalfCpltCallback = TIM_DMADelayPulseHalfCplt; + + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_CC3]->XferErrorCallback = TIM_DMAErrorCCxN ; + + /* Enable the DMA channel */ + if (HAL_DMA_Start_IT(htim->hdma[TIM_DMA_ID_CC3], (uint32_t)pData, (uint32_t)&htim->Instance->CCR3, + Length) != HAL_OK) + { + /* Return error status */ + return HAL_ERROR; + } + /* Enable the TIM Capture/Compare 3 DMA request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_CC3); + break; + } + + default: + break; + } + + /* Enable the complementary PWM output */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_ENABLE); + + /* Enable the Main Output */ + __HAL_TIM_MOE_ENABLE(htim); + + /* Enable the Peripheral, except in trigger mode where enable is automatically done with trigger */ + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + tmpsmcr = htim->Instance->SMCR & TIM_SMCR_SMS; + if (!IS_TIM_SLAVEMODE_TRIGGER_ENABLED(tmpsmcr)) + { + __HAL_TIM_ENABLE(htim); + } + } + else + { + __HAL_TIM_ENABLE(htim); + } + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM PWM signal generation in DMA mode on the complementary + * output + * @param htim TIM handle + * @param Channel TIM Channel to be disabled + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @arg TIM_CHANNEL_3: TIM Channel 3 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel) +{ + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, Channel)); + + switch (Channel) + { + case TIM_CHANNEL_1: + { + /* Disable the TIM Capture/Compare 1 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC1); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC1]); + break; + } + + case TIM_CHANNEL_2: + { + /* Disable the TIM Capture/Compare 2 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC2); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC2]); + break; + } + + case TIM_CHANNEL_3: + { + /* Disable the TIM Capture/Compare 3 DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_CC3); + (void)HAL_DMA_Abort_IT(htim->hdma[TIM_DMA_ID_CC3]); + break; + } + + default: + break; + } + + /* Disable the complementary PWM output */ + TIM_CCxNChannelCmd(htim->Instance, Channel, TIM_CCxN_DISABLE); + + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM complementary channel state */ + TIM_CHANNEL_N_STATE_SET(htim, Channel, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup TIMEx_Exported_Functions_Group4 Extended Timer Complementary One Pulse functions + * @brief Timer Complementary One Pulse functions + * +@verbatim + ============================================================================== + ##### Timer Complementary One Pulse functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Start the Complementary One Pulse generation. + (+) Stop the Complementary One Pulse. + (+) Start the Complementary One Pulse and enable interrupts. + (+) Stop the Complementary One Pulse and disable interrupts. + +@endverbatim + * @{ + */ + +/** + * @brief Starts the TIM One Pulse signal generation on the complementary + * output. + * @note OutputChannel must match the pulse output channel chosen when calling + * @ref HAL_TIM_OnePulse_ConfigChannel(). + * @param htim TIM One Pulse handle + * @param OutputChannel pulse output channel to enable + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel) +{ + uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; + HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); + HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); + + /* Check the TIM channels state */ + if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + + /* Enable the complementary One Pulse output channel and the Input Capture channel */ + TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_ENABLE); + TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_ENABLE); + + /* Enable the Main Output */ + __HAL_TIM_MOE_ENABLE(htim); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM One Pulse signal generation on the complementary + * output. + * @note OutputChannel must match the pulse output channel chosen when calling + * @ref HAL_TIM_OnePulse_ConfigChannel(). + * @param htim TIM One Pulse handle + * @param OutputChannel pulse output channel to disable + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel) +{ + uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); + + /* Disable the complementary One Pulse output channel and the Input Capture channel */ + TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_DISABLE); + TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_DISABLE); + + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Starts the TIM One Pulse signal generation in interrupt mode on the + * complementary channel. + * @note OutputChannel must match the pulse output channel chosen when calling + * @ref HAL_TIM_OnePulse_ConfigChannel(). + * @param htim TIM One Pulse handle + * @param OutputChannel pulse output channel to enable + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel) +{ + uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; + HAL_TIM_ChannelStateTypeDef channel_1_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef channel_2_state = TIM_CHANNEL_STATE_GET(htim, TIM_CHANNEL_2); + HAL_TIM_ChannelStateTypeDef complementary_channel_1_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_1); + HAL_TIM_ChannelStateTypeDef complementary_channel_2_state = TIM_CHANNEL_N_STATE_GET(htim, TIM_CHANNEL_2); + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); + + /* Check the TIM channels state */ + if ((channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (channel_2_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_1_state != HAL_TIM_CHANNEL_STATE_READY) + || (complementary_channel_2_state != HAL_TIM_CHANNEL_STATE_READY)) + { + return HAL_ERROR; + } + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_BUSY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_BUSY); + + /* Enable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC1); + + /* Enable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_CC2); + + /* Enable the complementary One Pulse output channel and the Input Capture channel */ + TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_ENABLE); + TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_ENABLE); + + /* Enable the Main Output */ + __HAL_TIM_MOE_ENABLE(htim); + + /* Return function status */ + return HAL_OK; +} + +/** + * @brief Stops the TIM One Pulse signal generation in interrupt mode on the + * complementary channel. + * @note OutputChannel must match the pulse output channel chosen when calling + * @ref HAL_TIM_OnePulse_ConfigChannel(). + * @param htim TIM One Pulse handle + * @param OutputChannel pulse output channel to disable + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 selected + * @arg TIM_CHANNEL_2: TIM Channel 2 selected + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel) +{ + uint32_t input_channel = (OutputChannel == TIM_CHANNEL_1) ? TIM_CHANNEL_2 : TIM_CHANNEL_1; + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, OutputChannel)); + + /* Disable the TIM Capture/Compare 1 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC1); + + /* Disable the TIM Capture/Compare 2 interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_CC2); + + /* Disable the complementary One Pulse output channel and the Input Capture channel */ + TIM_CCxNChannelCmd(htim->Instance, OutputChannel, TIM_CCxN_DISABLE); + TIM_CCxChannelCmd(htim->Instance, input_channel, TIM_CCx_DISABLE); + + /* Disable the Main Output */ + __HAL_TIM_MOE_DISABLE(htim); + + /* Disable the Peripheral */ + __HAL_TIM_DISABLE(htim); + + /* Set the TIM channels state */ + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + + /* Return function status */ + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup TIMEx_Exported_Functions_Group5 Extended Peripheral Control functions + * @brief Peripheral Control functions + * +@verbatim + ============================================================================== + ##### Peripheral Control functions ##### + ============================================================================== + [..] + This section provides functions allowing to: + (+) Configure the commutation event in case of use of the Hall sensor interface. + (+) Configure Output channels for OC and PWM mode. + + (+) Configure Complementary channels, break features and dead time. + (+) Configure Master synchronization. + (+) Configure timer remapping capabilities. + +@endverbatim + * @{ + */ + +/** + * @brief Configure the TIM commutation event sequence. + * @note This function is mandatory to use the commutation event in order to + * update the configuration at each commutation detection on the TRGI input of the Timer, + * the typical use of this feature is with the use of another Timer(interface Timer) + * configured in Hall sensor interface, this interface Timer will generate the + * commutation at its TRGO output (connected to Timer used in this function) each time + * the TI1 of the Interface Timer detect a commutation at its input TI1. + * @param htim TIM handle + * @param InputTrigger the Internal trigger corresponding to the Timer Interfacing with the Hall sensor + * This parameter can be one of the following values: + * @arg TIM_TS_ITR0: Internal trigger 0 selected + * @arg TIM_TS_ITR1: Internal trigger 1 selected + * @arg TIM_TS_ITR2: Internal trigger 2 selected + * @arg TIM_TS_ITR3: Internal trigger 3 selected + * @arg TIM_TS_NONE: No trigger is needed + * @param CommutationSource the Commutation Event source + * This parameter can be one of the following values: + * @arg TIM_COMMUTATION_TRGI: Commutation source is the TRGI of the Interface Timer + * @arg TIM_COMMUTATION_SOFTWARE: Commutation source is set by software using the COMG bit + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent(TIM_HandleTypeDef *htim, uint32_t InputTrigger, + uint32_t CommutationSource) +{ + /* Check the parameters */ + assert_param(IS_TIM_COMMUTATION_EVENT_INSTANCE(htim->Instance)); + assert_param(IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(InputTrigger)); + + __HAL_LOCK(htim); + + if ((InputTrigger == TIM_TS_ITR0) || (InputTrigger == TIM_TS_ITR1) || + (InputTrigger == TIM_TS_ITR2) || (InputTrigger == TIM_TS_ITR3)) + { + /* Select the Input trigger */ + htim->Instance->SMCR &= ~TIM_SMCR_TS; + htim->Instance->SMCR |= InputTrigger; + } + + /* Select the Capture Compare preload feature */ + htim->Instance->CR2 |= TIM_CR2_CCPC; + /* Select the Commutation event source */ + htim->Instance->CR2 &= ~TIM_CR2_CCUS; + htim->Instance->CR2 |= CommutationSource; + + /* Disable Commutation Interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_COM); + + /* Disable Commutation DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_COM); + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Configure the TIM commutation event sequence with interrupt. + * @note This function is mandatory to use the commutation event in order to + * update the configuration at each commutation detection on the TRGI input of the Timer, + * the typical use of this feature is with the use of another Timer(interface Timer) + * configured in Hall sensor interface, this interface Timer will generate the + * commutation at its TRGO output (connected to Timer used in this function) each time + * the TI1 of the Interface Timer detect a commutation at its input TI1. + * @param htim TIM handle + * @param InputTrigger the Internal trigger corresponding to the Timer Interfacing with the Hall sensor + * This parameter can be one of the following values: + * @arg TIM_TS_ITR0: Internal trigger 0 selected + * @arg TIM_TS_ITR1: Internal trigger 1 selected + * @arg TIM_TS_ITR2: Internal trigger 2 selected + * @arg TIM_TS_ITR3: Internal trigger 3 selected + * @arg TIM_TS_NONE: No trigger is needed + * @param CommutationSource the Commutation Event source + * This parameter can be one of the following values: + * @arg TIM_COMMUTATION_TRGI: Commutation source is the TRGI of the Interface Timer + * @arg TIM_COMMUTATION_SOFTWARE: Commutation source is set by software using the COMG bit + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_IT(TIM_HandleTypeDef *htim, uint32_t InputTrigger, + uint32_t CommutationSource) +{ + /* Check the parameters */ + assert_param(IS_TIM_COMMUTATION_EVENT_INSTANCE(htim->Instance)); + assert_param(IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(InputTrigger)); + + __HAL_LOCK(htim); + + if ((InputTrigger == TIM_TS_ITR0) || (InputTrigger == TIM_TS_ITR1) || + (InputTrigger == TIM_TS_ITR2) || (InputTrigger == TIM_TS_ITR3)) + { + /* Select the Input trigger */ + htim->Instance->SMCR &= ~TIM_SMCR_TS; + htim->Instance->SMCR |= InputTrigger; + } + + /* Select the Capture Compare preload feature */ + htim->Instance->CR2 |= TIM_CR2_CCPC; + /* Select the Commutation event source */ + htim->Instance->CR2 &= ~TIM_CR2_CCUS; + htim->Instance->CR2 |= CommutationSource; + + /* Disable Commutation DMA request */ + __HAL_TIM_DISABLE_DMA(htim, TIM_DMA_COM); + + /* Enable the Commutation Interrupt */ + __HAL_TIM_ENABLE_IT(htim, TIM_IT_COM); + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Configure the TIM commutation event sequence with DMA. + * @note This function is mandatory to use the commutation event in order to + * update the configuration at each commutation detection on the TRGI input of the Timer, + * the typical use of this feature is with the use of another Timer(interface Timer) + * configured in Hall sensor interface, this interface Timer will generate the + * commutation at its TRGO output (connected to Timer used in this function) each time + * the TI1 of the Interface Timer detect a commutation at its input TI1. + * @note The user should configure the DMA in his own software, in This function only the COMDE bit is set + * @param htim TIM handle + * @param InputTrigger the Internal trigger corresponding to the Timer Interfacing with the Hall sensor + * This parameter can be one of the following values: + * @arg TIM_TS_ITR0: Internal trigger 0 selected + * @arg TIM_TS_ITR1: Internal trigger 1 selected + * @arg TIM_TS_ITR2: Internal trigger 2 selected + * @arg TIM_TS_ITR3: Internal trigger 3 selected + * @arg TIM_TS_NONE: No trigger is needed + * @param CommutationSource the Commutation Event source + * This parameter can be one of the following values: + * @arg TIM_COMMUTATION_TRGI: Commutation source is the TRGI of the Interface Timer + * @arg TIM_COMMUTATION_SOFTWARE: Commutation source is set by software using the COMG bit + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_ConfigCommutEvent_DMA(TIM_HandleTypeDef *htim, uint32_t InputTrigger, + uint32_t CommutationSource) +{ + /* Check the parameters */ + assert_param(IS_TIM_COMMUTATION_EVENT_INSTANCE(htim->Instance)); + assert_param(IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(InputTrigger)); + + __HAL_LOCK(htim); + + if ((InputTrigger == TIM_TS_ITR0) || (InputTrigger == TIM_TS_ITR1) || + (InputTrigger == TIM_TS_ITR2) || (InputTrigger == TIM_TS_ITR3)) + { + /* Select the Input trigger */ + htim->Instance->SMCR &= ~TIM_SMCR_TS; + htim->Instance->SMCR |= InputTrigger; + } + + /* Select the Capture Compare preload feature */ + htim->Instance->CR2 |= TIM_CR2_CCPC; + /* Select the Commutation event source */ + htim->Instance->CR2 &= ~TIM_CR2_CCUS; + htim->Instance->CR2 |= CommutationSource; + + /* Enable the Commutation DMA Request */ + /* Set the DMA Commutation Callback */ + htim->hdma[TIM_DMA_ID_COMMUTATION]->XferCpltCallback = TIMEx_DMACommutationCplt; + htim->hdma[TIM_DMA_ID_COMMUTATION]->XferHalfCpltCallback = TIMEx_DMACommutationHalfCplt; + /* Set the DMA error callback */ + htim->hdma[TIM_DMA_ID_COMMUTATION]->XferErrorCallback = TIM_DMAError; + + /* Disable Commutation Interrupt */ + __HAL_TIM_DISABLE_IT(htim, TIM_IT_COM); + + /* Enable the Commutation DMA Request */ + __HAL_TIM_ENABLE_DMA(htim, TIM_DMA_COM); + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Configures the TIM in master mode. + * @param htim TIM handle. + * @param sMasterConfig pointer to a TIM_MasterConfigTypeDef structure that + * contains the selected trigger output (TRGO) and the Master/Slave + * mode. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_MasterConfigSynchronization(TIM_HandleTypeDef *htim, + TIM_MasterConfigTypeDef *sMasterConfig) +{ + uint32_t tmpcr2; + uint32_t tmpsmcr; + + /* Check the parameters */ + assert_param(IS_TIM_MASTER_INSTANCE(htim->Instance)); + assert_param(IS_TIM_TRGO_SOURCE(sMasterConfig->MasterOutputTrigger)); + assert_param(IS_TIM_MSM_STATE(sMasterConfig->MasterSlaveMode)); + + /* Check input state */ + __HAL_LOCK(htim); + + /* Change the handler state */ + htim->State = HAL_TIM_STATE_BUSY; + + /* Get the TIMx CR2 register value */ + tmpcr2 = htim->Instance->CR2; + + /* Get the TIMx SMCR register value */ + tmpsmcr = htim->Instance->SMCR; + + /* Reset the MMS Bits */ + tmpcr2 &= ~TIM_CR2_MMS; + /* Select the TRGO source */ + tmpcr2 |= sMasterConfig->MasterOutputTrigger; + + /* Update TIMx CR2 */ + htim->Instance->CR2 = tmpcr2; + + if (IS_TIM_SLAVE_INSTANCE(htim->Instance)) + { + /* Reset the MSM Bit */ + tmpsmcr &= ~TIM_SMCR_MSM; + /* Set master mode */ + tmpsmcr |= sMasterConfig->MasterSlaveMode; + + /* Update TIMx SMCR */ + htim->Instance->SMCR = tmpsmcr; + } + + /* Change the htim state */ + htim->State = HAL_TIM_STATE_READY; + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Configures the Break feature, dead time, Lock level, OSSI/OSSR State + * and the AOE(automatic output enable). + * @param htim TIM handle + * @param sBreakDeadTimeConfig pointer to a TIM_ConfigBreakDeadConfigTypeDef structure that + * contains the BDTR Register configuration information for the TIM peripheral. + * @note Interrupts can be generated when an active level is detected on the + * break input, the break 2 input or the system break input. Break + * interrupt can be enabled by calling the @ref __HAL_TIM_ENABLE_IT macro. + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_ConfigBreakDeadTime(TIM_HandleTypeDef *htim, + TIM_BreakDeadTimeConfigTypeDef *sBreakDeadTimeConfig) +{ + /* Keep this variable initialized to 0 as it is used to configure BDTR register */ + uint32_t tmpbdtr = 0U; + + /* Check the parameters */ + assert_param(IS_TIM_BREAK_INSTANCE(htim->Instance)); + assert_param(IS_TIM_OSSR_STATE(sBreakDeadTimeConfig->OffStateRunMode)); + assert_param(IS_TIM_OSSI_STATE(sBreakDeadTimeConfig->OffStateIDLEMode)); + assert_param(IS_TIM_LOCK_LEVEL(sBreakDeadTimeConfig->LockLevel)); + assert_param(IS_TIM_DEADTIME(sBreakDeadTimeConfig->DeadTime)); + assert_param(IS_TIM_BREAK_STATE(sBreakDeadTimeConfig->BreakState)); + assert_param(IS_TIM_BREAK_POLARITY(sBreakDeadTimeConfig->BreakPolarity)); + assert_param(IS_TIM_AUTOMATIC_OUTPUT_STATE(sBreakDeadTimeConfig->AutomaticOutput)); + + /* Check input state */ + __HAL_LOCK(htim); + + /* Set the Lock level, the Break enable Bit and the Polarity, the OSSR State, + the OSSI State, the dead time value and the Automatic Output Enable Bit */ + + /* Set the BDTR bits */ + MODIFY_REG(tmpbdtr, TIM_BDTR_DTG, sBreakDeadTimeConfig->DeadTime); + MODIFY_REG(tmpbdtr, TIM_BDTR_LOCK, sBreakDeadTimeConfig->LockLevel); + MODIFY_REG(tmpbdtr, TIM_BDTR_OSSI, sBreakDeadTimeConfig->OffStateIDLEMode); + MODIFY_REG(tmpbdtr, TIM_BDTR_OSSR, sBreakDeadTimeConfig->OffStateRunMode); + MODIFY_REG(tmpbdtr, TIM_BDTR_BKE, sBreakDeadTimeConfig->BreakState); + MODIFY_REG(tmpbdtr, TIM_BDTR_BKP, sBreakDeadTimeConfig->BreakPolarity); + MODIFY_REG(tmpbdtr, TIM_BDTR_AOE, sBreakDeadTimeConfig->AutomaticOutput); + + + /* Set TIMx_BDTR */ + htim->Instance->BDTR = tmpbdtr; + + __HAL_UNLOCK(htim); + + return HAL_OK; +} + +/** + * @brief Configures the TIMx Remapping input capabilities. + * @param htim TIM handle. + * @param Remap specifies the TIM remapping source. + * + * @retval HAL status + */ +HAL_StatusTypeDef HAL_TIMEx_RemapConfig(TIM_HandleTypeDef *htim, uint32_t Remap) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + UNUSED(Remap); + + return HAL_OK; +} + +/** + * @} + */ + +/** @defgroup TIMEx_Exported_Functions_Group6 Extended Callbacks functions + * @brief Extended Callbacks functions + * +@verbatim + ============================================================================== + ##### Extended Callbacks functions ##### + ============================================================================== + [..] + This section provides Extended TIM callback functions: + (+) Timer Commutation callback + (+) Timer Break callback + +@endverbatim + * @{ + */ + +/** + * @brief Hall commutation changed callback in non-blocking mode + * @param htim TIM handle + * @retval None + */ +__weak void HAL_TIMEx_CommutCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIMEx_CommutCallback could be implemented in the user file + */ +} +/** + * @brief Hall commutation changed half complete callback in non-blocking mode + * @param htim TIM handle + * @retval None + */ +__weak void HAL_TIMEx_CommutHalfCpltCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIMEx_CommutHalfCpltCallback could be implemented in the user file + */ +} + +/** + * @brief Hall Break detection callback in non-blocking mode + * @param htim TIM handle + * @retval None + */ +__weak void HAL_TIMEx_BreakCallback(TIM_HandleTypeDef *htim) +{ + /* Prevent unused argument(s) compilation warning */ + UNUSED(htim); + + /* NOTE : This function should not be modified, when the callback is needed, + the HAL_TIMEx_BreakCallback could be implemented in the user file + */ +} +/** + * @} + */ + +/** @defgroup TIMEx_Exported_Functions_Group7 Extended Peripheral State functions + * @brief Extended Peripheral State functions + * +@verbatim + ============================================================================== + ##### Extended Peripheral State functions ##### + ============================================================================== + [..] + This subsection permits to get in run-time the status of the peripheral + and the data flow. + +@endverbatim + * @{ + */ + +/** + * @brief Return the TIM Hall Sensor interface handle state. + * @param htim TIM Hall Sensor handle + * @retval HAL state + */ +HAL_TIM_StateTypeDef HAL_TIMEx_HallSensor_GetState(TIM_HandleTypeDef *htim) +{ + return htim->State; +} + +/** + * @brief Return actual state of the TIM complementary channel. + * @param htim TIM handle + * @param ChannelN TIM Complementary channel + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 + * @arg TIM_CHANNEL_2: TIM Channel 2 + * @arg TIM_CHANNEL_3: TIM Channel 3 + * @retval TIM Complementary channel state + */ +HAL_TIM_ChannelStateTypeDef HAL_TIMEx_GetChannelNState(TIM_HandleTypeDef *htim, uint32_t ChannelN) +{ + HAL_TIM_ChannelStateTypeDef channel_state; + + /* Check the parameters */ + assert_param(IS_TIM_CCXN_INSTANCE(htim->Instance, ChannelN)); + + channel_state = TIM_CHANNEL_N_STATE_GET(htim, ChannelN); + + return channel_state; +} +/** + * @} + */ + +/** + * @} + */ + +/* Private functions ---------------------------------------------------------*/ +/** @defgroup TIMEx_Private_Functions TIMEx Private Functions + * @{ + */ + +/** + * @brief TIM DMA Commutation callback. + * @param hdma pointer to DMA handle. + * @retval None + */ +void TIMEx_DMACommutationCplt(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + + /* Change the htim state */ + htim->State = HAL_TIM_STATE_READY; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->CommutationCallback(htim); +#else + HAL_TIMEx_CommutCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ +} + +/** + * @brief TIM DMA Commutation half complete callback. + * @param hdma pointer to DMA handle. + * @retval None + */ +void TIMEx_DMACommutationHalfCplt(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + + /* Change the htim state */ + htim->State = HAL_TIM_STATE_READY; + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->CommutationHalfCpltCallback(htim); +#else + HAL_TIMEx_CommutHalfCpltCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ +} + + +/** + * @brief TIM DMA Delay Pulse complete callback (complementary channel). + * @param hdma pointer to DMA handle. + * @retval None + */ +static void TIM_DMADelayPulseNCplt(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + + if (hdma == htim->hdma[TIM_DMA_ID_CC1]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + } + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + } + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); + } + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC4]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_4; + + if (hdma->Init.Mode == DMA_NORMAL) + { + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_4, HAL_TIM_CHANNEL_STATE_READY); + } + } + else + { + /* nothing to do */ + } + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->PWM_PulseFinishedCallback(htim); +#else + HAL_TIM_PWM_PulseFinishedCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; +} + +/** + * @brief TIM DMA error callback (complementary channel) + * @param hdma pointer to DMA handle. + * @retval None + */ +static void TIM_DMAErrorCCxN(DMA_HandleTypeDef *hdma) +{ + TIM_HandleTypeDef *htim = (TIM_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent; + + if (hdma == htim->hdma[TIM_DMA_ID_CC1]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_1; + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_1, HAL_TIM_CHANNEL_STATE_READY); + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC2]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_2; + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_2, HAL_TIM_CHANNEL_STATE_READY); + } + else if (hdma == htim->hdma[TIM_DMA_ID_CC3]) + { + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_3; + TIM_CHANNEL_N_STATE_SET(htim, TIM_CHANNEL_3, HAL_TIM_CHANNEL_STATE_READY); + } + else + { + /* nothing to do */ + } + +#if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) + htim->ErrorCallback(htim); +#else + HAL_TIM_ErrorCallback(htim); +#endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ + + htim->Channel = HAL_TIM_ACTIVE_CHANNEL_CLEARED; +} + +/** + * @brief Enables or disables the TIM Capture Compare Channel xN. + * @param TIMx to select the TIM peripheral + * @param Channel specifies the TIM Channel + * This parameter can be one of the following values: + * @arg TIM_CHANNEL_1: TIM Channel 1 + * @arg TIM_CHANNEL_2: TIM Channel 2 + * @arg TIM_CHANNEL_3: TIM Channel 3 + * @param ChannelNState specifies the TIM Channel CCxNE bit new state. + * This parameter can be: TIM_CCxN_ENABLE or TIM_CCxN_Disable. + * @retval None + */ +static void TIM_CCxNChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelNState) +{ + uint32_t tmp; + + tmp = TIM_CCER_CC1NE << (Channel & 0x1FU); /* 0x1FU = 31 bits max shift */ + + /* Reset the CCxNE Bit */ + TIMx->CCER &= ~tmp; + + /* Set or reset the CCxNE Bit */ + TIMx->CCER |= (uint32_t)(ChannelNState << (Channel & 0x1FU)); /* 0x1FU = 31 bits max shift */ +} +/** + * @} + */ + +#endif /* HAL_TIM_MODULE_ENABLED */ +/** + * @} + */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/STM32F103C8TX_FLASH.ld b/f103c8t6_HAL/STM32F103C8TX_FLASH.ld similarity index 90% rename from stm32f103/STM32F103C8TX_FLASH.ld rename to f103c8t6_HAL/STM32F103C8TX_FLASH.ld index 672d5aa..e71e7e4 100644 --- a/stm32f103/STM32F103C8TX_FLASH.ld +++ b/f103c8t6_HAL/STM32F103C8TX_FLASH.ld @@ -22,13 +22,12 @@ ****************************************************************************** ** @attention ** -**

    © Copyright (c) 2022 STMicroelectronics. -** All rights reserved.

    +** Copyright (c) 2022 STMicroelectronics. +** All rights reserved. ** -** This software component is licensed by ST under BSD 3-Clause license, -** the "License"; You may not use this file except in compliance with the -** License. You may obtain a copy of the License at: -** opensource.org/licenses/BSD-3-Clause +** This software is licensed under terms that can be found in the LICENSE file +** in the root directory of this software component. +** If no LICENSE file comes with this software, it is provided AS-IS. ** ****************************************************************************** */ @@ -39,8 +38,8 @@ ENTRY(Reset_Handler) /* Highest address of the user mode stack */ _estack = ORIGIN(RAM) + LENGTH(RAM); /* end of "RAM" Ram type memory */ -_Min_Heap_Size = 0x200 ; /* required amount of heap */ -_Min_Stack_Size = 0x400 ; /* required amount of stack */ +_Min_Heap_Size = 0x200; /* required amount of heap */ +_Min_Stack_Size = 0x400; /* required amount of stack */ /* Memories definition */ MEMORY diff --git a/f103c8t6_HAL/f103c8t6_HAL.ioc b/f103c8t6_HAL/f103c8t6_HAL.ioc new file mode 100644 index 0000000..51fc516 --- /dev/null +++ b/f103c8t6_HAL/f103c8t6_HAL.ioc @@ -0,0 +1,95 @@ +#MicroXplorer Configuration settings - do not modify +File.Version=6 +GPIO.groupedBy= +KeepUserPlacement=false +Mcu.CPN=STM32F103C8T6 +Mcu.Family=STM32F1 +Mcu.IP0=NVIC +Mcu.IP1=RCC +Mcu.IP2=SYS +Mcu.IPNb=3 +Mcu.Name=STM32F103C(8-B)Tx +Mcu.Package=LQFP48 +Mcu.Pin0=PD0-OSC_IN +Mcu.Pin1=PD1-OSC_OUT +Mcu.Pin2=PA13 +Mcu.Pin3=PA14 +Mcu.Pin4=VP_SYS_VS_Systick +Mcu.PinsNb=5 +Mcu.ThirdPartyNb=0 +Mcu.UserConstants= +Mcu.UserName=STM32F103C8Tx +MxCube.Version=6.5.0 +MxDb.Version=DB.6.0.50 +NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +NVIC.ForceEnableDMAVector=true +NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4 +NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +NVIC.SysTick_IRQn=true\:15\:0\:false\:false\:true\:false\:true\:true +NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +PA13.Mode=Serial_Wire +PA13.Signal=SYS_JTMS-SWDIO +PA14.Mode=Serial_Wire +PA14.Signal=SYS_JTCK-SWCLK +PD0-OSC_IN.Mode=HSE-External-Oscillator +PD0-OSC_IN.Signal=RCC_OSC_IN +PD1-OSC_OUT.Mode=HSE-External-Oscillator +PD1-OSC_OUT.Signal=RCC_OSC_OUT +PinOutPanel.RotationAngle=0 +ProjectManager.AskForMigrate=true +ProjectManager.BackupPrevious=false +ProjectManager.CompilerOptimize=6 +ProjectManager.ComputerToolchain=false +ProjectManager.CoupleFile=false +ProjectManager.CustomerFirmwarePackage= +ProjectManager.DefaultFWLocation=true +ProjectManager.DeletePrevious=true +ProjectManager.DeviceId=STM32F103C8Tx +ProjectManager.FirmwarePackage=STM32Cube FW_F1 V1.8.4 +ProjectManager.FreePins=false +ProjectManager.HalAssertFull=false +ProjectManager.HeapSize=0x200 +ProjectManager.KeepUserCode=true +ProjectManager.LastFirmware=true +ProjectManager.LibraryCopy=1 +ProjectManager.MainLocation=Core/Src +ProjectManager.NoMain=false +ProjectManager.PreviousToolchain=STM32CubeIDE +ProjectManager.ProjectBuild=false +ProjectManager.ProjectFileName=f103c8t6_HAL.ioc +ProjectManager.ProjectName=f103c8t6_HAL +ProjectManager.RegisterCallBack= +ProjectManager.StackSize=0x400 +ProjectManager.TargetToolchain=STM32CubeIDE +ProjectManager.ToolChainLocation= +ProjectManager.UnderRoot=true +ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true +RCC.ADCFreqValue=36000000 +RCC.AHBFreq_Value=72000000 +RCC.APB1CLKDivider=RCC_HCLK_DIV2 +RCC.APB1Freq_Value=36000000 +RCC.APB1TimFreq_Value=72000000 +RCC.APB2Freq_Value=72000000 +RCC.APB2TimFreq_Value=72000000 +RCC.FCLKCortexFreq_Value=72000000 +RCC.FamilyName=M +RCC.HCLKFreq_Value=72000000 +RCC.IPParameters=ADCFreqValue,AHBFreq_Value,APB1CLKDivider,APB1Freq_Value,APB1TimFreq_Value,APB2Freq_Value,APB2TimFreq_Value,FCLKCortexFreq_Value,FamilyName,HCLKFreq_Value,MCOFreq_Value,PLLCLKFreq_Value,PLLMCOFreq_Value,PLLMUL,PLLSourceVirtual,SYSCLKFreq_VALUE,SYSCLKSource,TimSysFreq_Value,USBFreq_Value,VCOOutput2Freq_Value +RCC.MCOFreq_Value=72000000 +RCC.PLLCLKFreq_Value=72000000 +RCC.PLLMCOFreq_Value=36000000 +RCC.PLLMUL=RCC_PLL_MUL9 +RCC.PLLSourceVirtual=RCC_PLLSOURCE_HSE +RCC.SYSCLKFreq_VALUE=72000000 +RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK +RCC.TimSysFreq_Value=72000000 +RCC.USBFreq_Value=72000000 +RCC.VCOOutput2Freq_Value=8000000 +VP_SYS_VS_Systick.Mode=SysTick +VP_SYS_VS_Systick.Signal=SYS_VS_Systick +board=custom diff --git a/f103c8t6_HAL/f103c8t6_HAL.launch b/f103c8t6_HAL/f103c8t6_HAL.launch new file mode 100644 index 0000000..629b89f --- /dev/null +++ b/f103c8t6_HAL/f103c8t6_HAL.launch @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/stm32F030F4_code/.settings/language.settings.xml b/stm32F030F4_code/.settings/language.settings.xml index a8e7137..6156d88 100644 --- a/stm32F030F4_code/.settings/language.settings.xml +++ b/stm32F030F4_code/.settings/language.settings.xml @@ -6,7 +6,7 @@ - + @@ -18,7 +18,7 @@ - + diff --git a/stm32f103/.cproject b/stm32f103/.cproject deleted file mode 100644 index 089be7f..0000000 --- a/stm32f103/.cproject +++ /dev/null @@ -1,183 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/stm32f103/.mxproject b/stm32f103/.mxproject deleted file mode 100644 index d1fa385..0000000 --- a/stm32f103/.mxproject +++ /dev/null @@ -1,37 +0,0 @@ -[PreviousLibFiles] -LibFiles=Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pcd.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pcd_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_usb.h;Drivers\STM32F1xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_def.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio_ex.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_exti.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_adc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_adc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_i2c.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_uart.h;Middlewares\ST\STM32_USB_Device_Library\Core\Inc\usbd_core.h;Middlewares\ST\STM32_USB_Device_Library\Core\Inc\usbd_ctlreq.h;Middlewares\ST\STM32_USB_Device_Library\Core\Inc\usbd_def.h;Middlewares\ST\STM32_USB_Device_Library\Core\Inc\usbd_ioreq.h;Middlewares\ST\STM32_USB_Device_Library\Class\DFU\Inc\usbd_dfu.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pcd.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pcd_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_usb.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_i2c.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_uart.c;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_core.c;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_ctlreq.c;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_ioreq.c;Middlewares\ST\STM32_USB_Device_Library\Class\DFU\Src\usbd_dfu.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pcd.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pcd_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_usb.h;Drivers\STM32F1xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_def.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio_ex.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_exti.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_adc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_adc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_i2c.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_uart.h;Middlewares\ST\STM32_USB_Device_Library\Core\Inc\usbd_core.h;Middlewares\ST\STM32_USB_Device_Library\Core\Inc\usbd_ctlreq.h;Middlewares\ST\STM32_USB_Device_Library\Core\Inc\usbd_def.h;Middlewares\ST\STM32_USB_Device_Library\Core\Inc\usbd_ioreq.h;Middlewares\ST\STM32_USB_Device_Library\Class\DFU\Inc\usbd_dfu.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f103xb.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f1xx.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\system_stm32f1xx.h;Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;Drivers\CMSIS\Include\cmsis_armcc.h;Drivers\CMSIS\Include\cmsis_armclang.h;Drivers\CMSIS\Include\cmsis_compiler.h;Drivers\CMSIS\Include\cmsis_gcc.h;Drivers\CMSIS\Include\cmsis_iccarm.h;Drivers\CMSIS\Include\cmsis_version.h;Drivers\CMSIS\Include\core_armv8mbl.h;Drivers\CMSIS\Include\core_armv8mml.h;Drivers\CMSIS\Include\core_cm0.h;Drivers\CMSIS\Include\core_cm0plus.h;Drivers\CMSIS\Include\core_cm1.h;Drivers\CMSIS\Include\core_cm23.h;Drivers\CMSIS\Include\core_cm3.h;Drivers\CMSIS\Include\core_cm33.h;Drivers\CMSIS\Include\core_cm4.h;Drivers\CMSIS\Include\core_cm7.h;Drivers\CMSIS\Include\core_sc000.h;Drivers\CMSIS\Include\core_sc300.h;Drivers\CMSIS\Include\mpu_armv7.h;Drivers\CMSIS\Include\mpu_armv8.h;Drivers\CMSIS\Include\tz_context.h; - -[PreviousUsedCubeIDEFiles] -SourceFiles=Core\Src\main.c;USB_DEVICE\App\usb_device.c;USB_DEVICE\Target\usbd_conf.c;USB_DEVICE\App\usbd_desc.c;USB_DEVICE\App\usbd_dfu_if.c;Core\Src\stm32f1xx_it.c;Core\Src\stm32f1xx_hal_msp.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pcd.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pcd_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_usb.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_i2c.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_uart.c;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_core.c;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_ctlreq.c;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_ioreq.c;Middlewares\ST\STM32_USB_Device_Library\Class\DFU\Src\usbd_dfu.c;Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;Core\Src\system_stm32f1xx.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pcd.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pcd_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_usb.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_i2c.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_uart.c;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_core.c;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_ctlreq.c;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_ioreq.c;Middlewares\ST\STM32_USB_Device_Library\Class\DFU\Src\usbd_dfu.c;Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;Core\Src\system_stm32f1xx.c;;;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_core.c;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_ctlreq.c;Middlewares\ST\STM32_USB_Device_Library\Core\Src\usbd_ioreq.c;Middlewares\ST\STM32_USB_Device_Library\Class\DFU\Src\usbd_dfu.c; -HeaderPath=Drivers\STM32F1xx_HAL_Driver\Inc;Drivers\STM32F1xx_HAL_Driver\Inc\Legacy;Middlewares\ST\STM32_USB_Device_Library\Core\Inc;Middlewares\ST\STM32_USB_Device_Library\Class\DFU\Inc;Drivers\CMSIS\Device\ST\STM32F1xx\Include;Drivers\CMSIS\Include;USB_DEVICE\App;USB_DEVICE\Target;Core\Inc; -CDefines=USE_HAL_DRIVER;STM32F103xB;USE_HAL_DRIVER;USE_HAL_DRIVER; - -[PreviousGenFiles] -AdvancedFolderStructure=true -HeaderFileListSize=7 -HeaderFiles#0=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/App/usb_device.h -HeaderFiles#1=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/Target/usbd_conf.h -HeaderFiles#2=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/App/usbd_desc.h -HeaderFiles#3=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/App/usbd_dfu_if.h -HeaderFiles#4=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/Core/Inc/stm32f1xx_it.h -HeaderFiles#5=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/Core/Inc/stm32f1xx_hal_conf.h -HeaderFiles#6=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/Core/Inc/main.h -HeaderFolderListSize=3 -HeaderPath#0=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/App -HeaderPath#1=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/Target -HeaderPath#2=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/Core/Inc -HeaderFiles=; -SourceFileListSize=7 -SourceFiles#0=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/App/usb_device.c -SourceFiles#1=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/Target/usbd_conf.c -SourceFiles#2=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/App/usbd_desc.c -SourceFiles#3=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/App/usbd_dfu_if.c -SourceFiles#4=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/Core/Src/stm32f1xx_it.c -SourceFiles#5=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/Core/Src/stm32f1xx_hal_msp.c -SourceFiles#6=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/Core/Src/main.c -SourceFolderListSize=3 -SourcePath#0=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/App -SourcePath#1=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/USB_DEVICE/Target -SourcePath#2=C:/Users/wuwen/Desktop/morse_code_trainer/stm32f103/Core/Src -SourceFiles=; - diff --git a/stm32f103/.settings/stm32cubeide.project.prefs b/stm32f103/.settings/stm32cubeide.project.prefs deleted file mode 100644 index 2189ba2..0000000 --- a/stm32f103/.settings/stm32cubeide.project.prefs +++ /dev/null @@ -1,4 +0,0 @@ -66BE74F758C12D739921AEA421D593D3=2 -8DF89ED150041C4CBC7CB9A9CAA90856=4CBCD6EFBBBD79974032F72B2CAF2868 -DC22A860405A8BF2F2C095E5B6529F12=4CBCD6EFBBBD79974032F72B2CAF2868 -eclipse.preferences.version=1 diff --git a/stm32f103/Core/Src/stm32f1xx_hal_msp.c b/stm32f103/Core/Src/stm32f1xx_hal_msp.c deleted file mode 100644 index 77e56a1..0000000 --- a/stm32f103/Core/Src/stm32f1xx_hal_msp.c +++ /dev/null @@ -1,281 +0,0 @@ -/* USER CODE BEGIN Header */ -/** - ****************************************************************************** - * @file stm32f1xx_hal_msp.c - * @brief This file provides code for the MSP Initialization - * and de-Initialization codes. - ****************************************************************************** - * @attention - * - *

    © Copyright (c) 2022 STMicroelectronics. - * All rights reserved.

    - * - * This software component is licensed by ST under BSD 3-Clause license, - * the "License"; You may not use this file except in compliance with the - * License. You may obtain a copy of the License at: - * opensource.org/licenses/BSD-3-Clause - * - ****************************************************************************** - */ -/* USER CODE END Header */ - -/* Includes ------------------------------------------------------------------*/ -#include "main.h" -/* USER CODE BEGIN Includes */ - -/* USER CODE END Includes */ - -/* Private typedef -----------------------------------------------------------*/ -/* USER CODE BEGIN TD */ - -/* USER CODE END TD */ - -/* Private define ------------------------------------------------------------*/ -/* USER CODE BEGIN Define */ - -/* USER CODE END Define */ - -/* Private macro -------------------------------------------------------------*/ -/* USER CODE BEGIN Macro */ - -/* USER CODE END Macro */ - -/* Private variables ---------------------------------------------------------*/ -/* USER CODE BEGIN PV */ - -/* USER CODE END PV */ - -/* Private function prototypes -----------------------------------------------*/ -/* USER CODE BEGIN PFP */ - -/* USER CODE END PFP */ - -/* External functions --------------------------------------------------------*/ -/* USER CODE BEGIN ExternalFunctions */ - -/* USER CODE END ExternalFunctions */ - -/* USER CODE BEGIN 0 */ - -/* USER CODE END 0 */ -/** - * Initializes the Global MSP. - */ -void HAL_MspInit(void) -{ - /* USER CODE BEGIN MspInit 0 */ - - /* USER CODE END MspInit 0 */ - - __HAL_RCC_AFIO_CLK_ENABLE(); - __HAL_RCC_PWR_CLK_ENABLE(); - - /* System interrupt init*/ - - /** NOJTAG: JTAG-DP Disabled and SW-DP Enabled - */ - __HAL_AFIO_REMAP_SWJ_NOJTAG(); - - /* USER CODE BEGIN MspInit 1 */ - - /* USER CODE END MspInit 1 */ -} - -/** -* @brief ADC MSP Initialization -* This function configures the hardware resources used in this example -* @param hadc: ADC handle pointer -* @retval None -*/ -void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc) -{ - GPIO_InitTypeDef GPIO_InitStruct = {0}; - if(hadc->Instance==ADC1) - { - /* USER CODE BEGIN ADC1_MspInit 0 */ - - /* USER CODE END ADC1_MspInit 0 */ - /* Peripheral clock enable */ - __HAL_RCC_ADC1_CLK_ENABLE(); - - __HAL_RCC_GPIOA_CLK_ENABLE(); - /**ADC1 GPIO Configuration - PA0-WKUP ------> ADC1_IN0 - */ - GPIO_InitStruct.Pin = GPIO_PIN_0; - GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; - HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); - - /* USER CODE BEGIN ADC1_MspInit 1 */ - - /* USER CODE END ADC1_MspInit 1 */ - } - -} - -/** -* @brief ADC MSP De-Initialization -* This function freeze the hardware resources used in this example -* @param hadc: ADC handle pointer -* @retval None -*/ -void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc) -{ - if(hadc->Instance==ADC1) - { - /* USER CODE BEGIN ADC1_MspDeInit 0 */ - - /* USER CODE END ADC1_MspDeInit 0 */ - /* Peripheral clock disable */ - __HAL_RCC_ADC1_CLK_DISABLE(); - - /**ADC1 GPIO Configuration - PA0-WKUP ------> ADC1_IN0 - */ - HAL_GPIO_DeInit(GPIOA, GPIO_PIN_0); - - /* USER CODE BEGIN ADC1_MspDeInit 1 */ - - /* USER CODE END ADC1_MspDeInit 1 */ - } - -} - -/** -* @brief I2C MSP Initialization -* This function configures the hardware resources used in this example -* @param hi2c: I2C handle pointer -* @retval None -*/ -void HAL_I2C_MspInit(I2C_HandleTypeDef* hi2c) -{ - GPIO_InitTypeDef GPIO_InitStruct = {0}; - if(hi2c->Instance==I2C1) - { - /* USER CODE BEGIN I2C1_MspInit 0 */ - - /* USER CODE END I2C1_MspInit 0 */ - - __HAL_RCC_GPIOB_CLK_ENABLE(); - /**I2C1 GPIO Configuration - PB6 ------> I2C1_SCL - PB7 ------> I2C1_SDA - */ - GPIO_InitStruct.Pin = GPIO_PIN_6|GPIO_PIN_7; - GPIO_InitStruct.Mode = GPIO_MODE_AF_OD; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; - HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); - - /* Peripheral clock enable */ - __HAL_RCC_I2C1_CLK_ENABLE(); - /* USER CODE BEGIN I2C1_MspInit 1 */ - - /* USER CODE END I2C1_MspInit 1 */ - } - -} - -/** -* @brief I2C MSP De-Initialization -* This function freeze the hardware resources used in this example -* @param hi2c: I2C handle pointer -* @retval None -*/ -void HAL_I2C_MspDeInit(I2C_HandleTypeDef* hi2c) -{ - if(hi2c->Instance==I2C1) - { - /* USER CODE BEGIN I2C1_MspDeInit 0 */ - - /* USER CODE END I2C1_MspDeInit 0 */ - /* Peripheral clock disable */ - __HAL_RCC_I2C1_CLK_DISABLE(); - - /**I2C1 GPIO Configuration - PB6 ------> I2C1_SCL - PB7 ------> I2C1_SDA - */ - HAL_GPIO_DeInit(GPIOB, GPIO_PIN_6); - - HAL_GPIO_DeInit(GPIOB, GPIO_PIN_7); - - /* USER CODE BEGIN I2C1_MspDeInit 1 */ - - /* USER CODE END I2C1_MspDeInit 1 */ - } - -} - -/** -* @brief UART MSP Initialization -* This function configures the hardware resources used in this example -* @param huart: UART handle pointer -* @retval None -*/ -void HAL_UART_MspInit(UART_HandleTypeDef* huart) -{ - GPIO_InitTypeDef GPIO_InitStruct = {0}; - if(huart->Instance==USART1) - { - /* USER CODE BEGIN USART1_MspInit 0 */ - - /* USER CODE END USART1_MspInit 0 */ - /* Peripheral clock enable */ - __HAL_RCC_USART1_CLK_ENABLE(); - - __HAL_RCC_GPIOA_CLK_ENABLE(); - /**USART1 GPIO Configuration - PA9 ------> USART1_TX - PA10 ------> USART1_RX - */ - GPIO_InitStruct.Pin = GPIO_PIN_9; - GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; - HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); - - GPIO_InitStruct.Pin = GPIO_PIN_10; - GPIO_InitStruct.Mode = GPIO_MODE_INPUT; - GPIO_InitStruct.Pull = GPIO_NOPULL; - HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); - - /* USER CODE BEGIN USART1_MspInit 1 */ - - /* USER CODE END USART1_MspInit 1 */ - } - -} - -/** -* @brief UART MSP De-Initialization -* This function freeze the hardware resources used in this example -* @param huart: UART handle pointer -* @retval None -*/ -void HAL_UART_MspDeInit(UART_HandleTypeDef* huart) -{ - if(huart->Instance==USART1) - { - /* USER CODE BEGIN USART1_MspDeInit 0 */ - - /* USER CODE END USART1_MspDeInit 0 */ - /* Peripheral clock disable */ - __HAL_RCC_USART1_CLK_DISABLE(); - - /**USART1 GPIO Configuration - PA9 ------> USART1_TX - PA10 ------> USART1_RX - */ - HAL_GPIO_DeInit(GPIOA, GPIO_PIN_9|GPIO_PIN_10); - - /* USER CODE BEGIN USART1_MspDeInit 1 */ - - /* USER CODE END USART1_MspDeInit 1 */ - } - -} - -/* USER CODE BEGIN 1 */ - -/* USER CODE END 1 */ - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/stm32f103/Debug/Core/Src/main.d b/stm32f103/Debug/Core/Src/main.d deleted file mode 100644 index f1c250e..0000000 --- a/stm32f103/Debug/Core/Src/main.d +++ /dev/null @@ -1,99 +0,0 @@ -Core/Src/main.o: ../Core/Src/main.c ../Core/Inc/main.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h \ - ../Core/Inc/stm32f1xx_hal_conf.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h \ - ../Drivers/CMSIS/Include/core_cm3.h \ - ../Drivers/CMSIS/Include/cmsis_version.h \ - ../Drivers/CMSIS/Include/cmsis_compiler.h \ - ../Drivers/CMSIS/Include/cmsis_gcc.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h \ - ../USB_DEVICE/App/usb_device.h \ - ../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h \ - ../USB_DEVICE/Target/usbd_conf.h - -../Core/Inc/main.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: - -../Core/Inc/stm32f1xx_hal_conf.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h: - -../Drivers/CMSIS/Include/core_cm3.h: - -../Drivers/CMSIS/Include/cmsis_version.h: - -../Drivers/CMSIS/Include/cmsis_compiler.h: - -../Drivers/CMSIS/Include/cmsis_gcc.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: - -../USB_DEVICE/App/usb_device.h: - -../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h: - -../USB_DEVICE/Target/usbd_conf.h: diff --git a/stm32f103/Debug/Core/Src/main.o b/stm32f103/Debug/Core/Src/main.o deleted file mode 100644 index a827a33c7ffc013cb3b8e6129573eec7ac45afa9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 802464 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 diff --git a/stm32f103/Debug/Core/Src/main.su b/stm32f103/Debug/Core/Src/main.su deleted file mode 100644 index 66831d2..0000000 --- a/stm32f103/Debug/Core/Src/main.su +++ /dev/null @@ -1,7 +0,0 @@ -main.c:73:5:main 8 static -main.c:120:6:SystemClock_Config 88 static -main.c:167:13:MX_ADC1_Init 24 static -main.c:212:13:MX_I2C1_Init 8 static -main.c:246:13:MX_USART1_UART_Init 8 static -main.c:279:13:MX_GPIO_Init 40 static -main.c:305:6:Error_Handler 4 static,ignoring_inline_asm diff --git a/stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.o b/stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.o deleted file mode 100644 index 6143f99c82b2fd2ef2c8d5ef98e1296a7797431e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 761404 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
    Z6QOM1EQ*$ zvue5osmPOJcdxE2i8Lr4o5Nqc3)&JM_c#^gRJx zbC|WO=bMxSNbx6XYopXOFURakI^qNv)jG7KOCj}ZY67BnQQ@^b{{~j^`K&j*O6iAC zwl|k&U_)=^o-brLNy|lBeeztxu@~Di*IO$+pOk>H^n9|6jJyTRD<)Yk@8FT4wJFje z!qiJ27>2yU!JLH%KHrbsjHdt|-^}`J844(}v7s^Biei7UvZfsr<88Cow-Y!B(yra} zGf)H$lwCBre5|T&KELi2zkQmp7}fN+EG}NY0kSP;L2%Hqba1!{rWY58#|$432jOoo zGF7;P@~Q^oct#cf83MKzy8)#SrGS;hfJ&z znI-!~H#IcLYy+5<6$nhb#cdx7Ir_{dw2C{(jLU}+4nbw`HH%$2VJ(QQJF z9%gX1MTxu^jM8@K=!9<|0%GMGs6*0>I}G1H52=&)t1X*z52fi!t7f4dQTZ)eS|;HF zqY8VVt*wBiZu`}G4Ub|jDseKiKlA zNAg9q$+_t>U-plRgAGEd1T(06ZaSm3dv(D^bav5uH9w|6fXJcw23us&EIQXhIDV=H zR^$q`o%J?=9#z|5XesrIZIB@)?MqfmKfEykpoD%PfP%PX!0>KX$e;!rG5@6yk$*!Y z;C+&NO?cKIOM%PZ>COjxhiA*@d&B!{^y_;M<>T|KhXRkp(ZR3njk$qVw7=^^A#rT3 z5n4FQwi?zG94c#b zUciKNv8TUUPXC4FDLW*ur5)ftKFF{;j}v{Lt9mZF2wv0+W~3k})Y+297@1wx+``Fx z1YWMsKLh?5DwJw^bvaUt6GMra*G48#O)mO0;assWVrW&FO^loma0AO5vp)BtS7Dk)L6J4Idylo zx>xz)4zkfiH^~o>`C8>oCv;a|!Xbc@4@1^Rd#@k&UibdxUwRi8xXLYAespn`n;<*O zp1G(9MdXO-e=I7Heqdab?yUw8?6Nwb;Q6RukZyau9e@CmG$vJdJv$XhpQ(*z#)={y ziicQ)az8-I?08 z$2#ek&|9rhq3zQLDnZ`dekTK3eHCtjv^J14x4h&agw5#v2XYT1js% z9H7ljlC=5AJT|rk*4Q*&JFu0#AA4T&i~xQ)5Ia;2t&GKv*bSsNhP4KcYj9gjEmXz)vKJ*~-Gu8tiP6$zVF=QRq0l4g z4@xl%q9QJMaL592m40Iu69m^?Y{nkgNpd%?QIieG@{`AgHqE6z5UK4>p_}}AJlR0| zl`=P;W_k}b1`kJA%?4%38bq9pc)?c}wH8=-h4tDtpvqU5v*`@h3m~>c8m4jefnX-Flc2+&e4aLM; zRyiAr(e=moKhEF3xfRNFMQIBt)->utQgl0moz0UiioF$O=_m?W_Nf??rY>C{;7p4g z5}ic5lVV~I9Ua?QH3TRffh)Gb{BJL+GzOf0$^^KqnQA)v8OMvH3)=3~UE>aV`a$rI zl&>RMfAr3j{HFtVBv?M4>ptdbJ#sZb%I)Hze5LlZI&E+!D7TPRUxAB(i~_7F=Dp2p zn7#+U?+p=h5Fk6VJmx?ss8j_on4YAKH{PsYn<-6R&`M`5VE*Ob+m7)fCt==k`lWB@ z4&xD9ze61jtHQee+uiH$@893O{lBWj3aX$T*WC-yNAmE8DA-PqUR@ONp}dDx2Iqbt zRmpxKL?n?7-+n1Y;Z+btha=r)(FVqf`jFlU>kYh!{07oPlo(FYCa8X^#@?79w;d#(+`X&(-zo|Dd=M+jjX~WNg>;<7iX-1qvah=X zSb6ST4bYUw7(F}?!5V?*2VoU=j|D4w#KmkosP55Y@_~ZqQcZv3qydn>&UE43=QqLB zos1==JFqzQa|?hv3S*{lSKAM%saX?chA84;>eD3Y#|8BwyW`Y+kFtGGcnE7M4=Q^b z*p4d{xzVw;9SYCLdVDo350Qjm)pR1#;2ol_V!E_fEs!g-$iq+eT9^5oPtt1>%%+fK z&%D}%k1+@Js}Pz4)!QCmxM(miLSQv#v)&2h`5=vm8EfMMugRiKMls1Opc(-2hl`ILmx^bUxez)x; zB6~)&=qATuu{|PVx>0N}YAUeuhnrXY-4LX%(?)#y`<0*q&?5uKxX`9(* zAEq*TSruo8!F{t`x>Ih?wucMZBpkA}kQ|(b^knl9LCj0N_i9+Iu+#_AEs6S5nP9n` zaWk-;<&s3yHI4sJHFqSFBy-4;+>Iou`GSyR!%ga9GFdj=beWKlAq0jxuNfHq)b4~5&R`EM^Lve&zot-Dv&w@F`?)8ukP+{ z-$7d36QZ(a;a^$xa$h{oq6FebtXLHQysMMmZC_?OyZ%A1ZfXsHR+3Z)Jf+MR2SHI% z$gLqCvKqkmEimqaDh9mFE~8}!RLrRSaabjpv3VFULNKtV8l@{TIyY>B**8LW4$odl z1;jC+FJYAldPo)i10C#rc1$}}v;orFLQU=7-JL3GdY3Apl8`O7+-9rmD`zacrIph(Ia}#V8!f?0R-~R=3riY!s-bA6jCZg;wLO@cdR*RJ;wzk;iOokrE9YdBq-FZ3uu<`*MnwzJWJLW~ zGVUBv=z)db!N$qWoSp!2A#7ZvwIU6%QZObo+8XqU(l$g_sXLFVP&L2FA$clXlCL6W zw3c>E2QDH;OE1F#nN3+mO};EoMB$0&pMas{zmI#i5!rzrE{_ot%^z^n_Ir@j0ZB;z zv6pUzb`FY*y?6jfnI@lj7TFoZU_iZ9CrcF2pkX! z6;UrT|IYQx2cu^FoB9-I{fisqhB6zh<(`Ruu_@$@QeX0gVHEf9AyK-!gU~X(*qPN2 zI<$HLjH(Ar3$WdO{QlDq-ww<|A?d$d;-{@8eu_6xTq09JPSis(y=nsu6i^%)N_Oo) zWor_pLES-axm^M5941WzUEQ!IO&x;cnPThi=wV*)*o9|EMN^6%3DZs)9zk^HanhaC zE5UpMrMjRxlC}U0hBo=x<<$bEaiL5%4y+U8`zyx{gP}B*%D=_=tFl9R$O|nFhSJ-k zn?m9y_PPA-yVu?Y;!4Uc#kWwU>vIZmF9q;>&@5jte*57S%Iu!Kd;jgLceA^Xn9HJL z&Yf(-Va&_wW;_Q8v}hPMw99p>JRr*0hxi03wR{ij+vIu32grxUV>I-{@`9h8WGj=< zimko>OAroYr&Sc^0$bG?(NJL`RmcDqV$UN8RdZydv~0>VWLK_yOQ=OEK$=AD9~T-t zO>VR_ypVGdZ7}JT4MFV_5xHz>IcKm$ z;jsoVf0P@cIv<~4xx1eeV;H=lp;9%8rBC7~44U|#Cqt_sI7-NrX23_>mxyj(9`%m$ zDsGTc)_s2Igpl9!7F}d<;LTqI+&l0RnfYz2J%Ra^(v5F8H!h{b(z$z)=YC|j#BVp zY1+axf^ZpeYnXkTNy#+QJA%p=^jM-N?1s_aFI>-}Wy~l`5UfAme|qh<1VfO8!9Z^| zuHWSbZ|Ld91qM%63Mn;2bI{PUnlUFIqUCrW(umi9b^(bDiWSK)~Vvje`^&6|RFf)Cdgw^Z0; z4yU2jq>d5Y)hBN!SNl6Pjh3d6hgck)TT7g+`&F)#$-u%lnX?e=eQ@u)KrX0A<$xO4 zu=TXBQ;(h0LPPVj*n>>jX_(m`?$aq@=LH^USif0g)}YkLKz9BF;Ty>xj_o2%Tv~{ zS)laK;_~zx_#w(;Upbl_&%%=*Q3?nt(qlYe!JN6R2V>2Td`FRdKc;H@VBadIkR3rH z%*`*;x6}7>O~IAPFZr6yW>_A2n!jji^+b}~0drmZU#?encgPxcceHdj90sxf!UaP9 zgQ;c15BK!GePC+pb`B?dtT+u#8An{FR4S^CwjnQELAOoj(3iRDs_CXx!}69keKwS} zxCE`CC9$qEs!`huH!Hq3D^VY+lxQOa+u@bH?AZ~~L@l!d;o^sgb2Oxc78tu;?^Kqe zA{bnLLT0Y87eP`8u)a&AYGnB&!c_&FNK%X z`ptln8m7k)S(P}cs_lh@(u)-WaNvJ>DMe;(Vg|fUFja(zouAw+>DRP>YzN0Sa8(Cd zZMqTO&Xh%ui($c z=6td$lo6=#p>bY0Jy3w#M4H*ltC_<%hHEKv(wT8j~Rs*UH_t8MDd9g0Si z6>RD`7elDl$aI%!XqlOyNsqZ!h8ql;PG=V5lBC`(Lvf&vvk-hoUw)Cz`^7aWGp zK~^3^Jk{o?SN`JeOlnS`1a zj|Nclr~oRk0u56}fn>2g+Hm9WSQ(fM9#3IGHN@W~m|g=}6B`$^;$FAxlCHTcuHmz+ zORXQOL!N0scg)qgJz_QVZ(;mLB%ONi*%}n z-k1<#K`*n1Qt8BZ;qEyU4VRmHTXj$XeXX<~ndu|BI>tibqLw#9gfVhV#*hnCCh*80 zdpJCW#*^vx9QmdcQzBsl6`7FGqinC{vvRgfHS6x$pQKqiK(^`dBN8imIl)WI}1YQY;4bDDYQ;9)OL=1$U7f=ib1! zSZ5#KWI@5*&V%p?a$Ug|D+S~4Gam+RO7HiNO+yOx1s72vRgB2$AsdMp7^z(T(Rd8h zDv7UMjx4e)ij%_OhpLq|(b%c9EcR0$NIwQl%LFSwUs4WVp6p8ms4p(o;ny4r&*e>r z%~Fr7=)9*+3!XqI*^ZMV;obQ7s7gNLXVRh`#m4IIal!a&}yc&$k$Rfc8pF!Z8)d1dmH{nlD?b`%?a`n9VYl_^G(5Z-wiA>z~~ zAE_Y{Nu~lzEm9Pvl?)(_nf9pg4+};$Xs_>*WRWnjGx6PJ@L7QL(I6V&%}6?O7B{v$ zLmv@1zqV<>=c+kCkJ%vZP{o~>3+Vi2^z56Ro%hPimh;V2(!#uAU^bIMQozwun(rP{ z7eYNqG7kCh8$i7|QeYD-B|5a$S352o5w5&=Hmj^k;=bnKam^zFc&O}MLLj^HjF zbCiAF_xs02@u18an44;17fP|G1nUcQ0>YQa<>S=UCQ}bvHdj4+BSZa$rb}@7Y;6&K zJ3~XKOQ=|o<#=s)B208;Xs_LCjE^W6>hywepk@h4mm_sjca(&fK*kOa3??rSV+e$K zF(I1VJ`F3Raf?_c*AT9I2%W{&$z2PWb%s!qaLn=PPCZ3wmzp?0>MY$K-NRfff0C_2UFZDG7^)nJG61pm0S-k7$~ zIX-hc&`@Z{DIAr~#&VbLVbCU<%NS--Oxg{oE7-^(TsD}o9U&f*ad?B7Lu6HPjVgZL zdV!=dJi7&d zYOhEfe|hrlia1X=#H+BMh)^ltAXU9W)eB|jQ7|RrRE!n@@0uQ$Zz3OLYHBzvLxQBKTb4Gw zMVXmI$;9ETCu`s~1i0dl+-3DZ6ZN_i6(^Vucgjz2|Mva;+mC-cyMO=b$G3=6M*JKK z7BY+7vH^O;Vr5LF1D1G$g!~#16P*~IY(Vvvv_hH_El0QyuEra9B4HguWHPI3=mNNp zEdLOMc=8;$;3OS+++CAJ)d2Q%a%NWzLMXa`QA(8-GS5cNszM9)_zBHIjYrFiy?i`S zQh~*lUYqoa$~+QAeBjyk>_T~PElklIK#H@-0`Pr5^VsrguJ#wr9%8!%w5SAsmZ8I zpDbU(b(FnQOWU`Sew#c+1DIZf+K)mQX>-*wtHactt`#eHt?=~e#PTYfnSR)J8~W+w-w)ghEy6H;7EKsXw3WJXq%dn;)lHOt9SDk{1q~VN|&mq9GX_PRr7< zXlM%42nH0sH5UF7x0PD?dVP=5nN$u6j_jX~h>x@akrgA6c{3zSdK7c^qAueCL)Gk+wrF5H*7|B1&epFfuusB)7twD z2>Plf*Sp(St)g6o3MX)vZ?6)P)(d`X*!8I5sLh>Pnq`p>Y}LhV?Kbe_tm6J~O^sN2 zv|q^%(Z_Y-iUKzx)a*eV@4goY{TRl|50Jbo&*M<)Tr^=7melxrhr3w1L#&Qji4zOUSRs+BeLJQ)f}X?bb(by z-PvM!8Y&735tK}4%yIY<$+j#tT-q9!Kxi7Z0Aw#JTRGyN|xz>`fLk5BXxZ)k)*9^9RON1DLo zZ{nP!)T_K@@)J0t_4`lvuUQw^$^xq@qq7RQW`oUM+s?I=ge3!g((q{5$cS&+;XEyv zs0qwXH*&xVPJm^qqo~I)7*b*G$uhMySvosFdGP-e7QD{8=NcL^7{M&nL26i*gJ6_k zGJ@w_9x4MIvE`v%u+u`5NXjImL%=(fNk$ku3Q`U$g?|I&^I}Xe+(DRx0q!Cbnr*WO zMi=-IG!{5pT zDwzVyYrcy6NaT6{@#eeRdta;6jt(6zhoD%_Ms9%*fdBAURx4s#{|#hY^ogY1JHS!4 zeg`zud#XC|)ynVIWjFoRBAj zf244*A27hVel>)T>yH{<(!@|pO_Q)K8HMJT8|Y^O@Ev3++ReRJZq5vAq4wtnda zRKOJMtw&~uX}f~xVFi7xjEK7KgRja&GKFPHRXZ2SNUST6GS=lj0T)wc?I96pP=Pwi z-54PRZ9}~yH13R!@7Q|#ViK``Q6aI+KmZ*EDR6LXW9YJ@P1=C=BO$!WYPMA22+Xic zAaHPX+9)XoH8xnVB}-UHwTqslp!_eTkhZcx*z-witO605RF|zfMX?0a+T;(JEY~yE zzGOsZfBEIGe{u1(u)Id4c+~v}T9q;fgE`iKoZVIyCvJM=O?6sg3RS0xu3hzr*|MLl zwHbt5i)ijaq*&ZfSWesWD2G-y3kQY;N+(c77-|^zvq)Bzfa|M8FFoyjX|YI1#ypk$ zSm{_uIkd{?*+FFa#gc{=UKn^vt{i>E#i*vTpDP*wXc6ifdsK8$~PttS_*u zFcn*btuq~|tw9Mjv9Q8)eYJMWTB^&|0P3M0h_j1L!$%(1Je;ez;8hhMb&E% z8}7sWRd}emk!jxLC4}lg=E)sCLyutNQknSj-h-~VQ-3aC8f+Xv^J+V}9_#ez6Xa)t zE6NsK_;?<6iVEic=}DS-KTCfTb71k$)-&*P8zg>$=72$vUC07eQ0xvo9=Jgts~k;J z6qd2Cjg(D&+a<1ma`&J<9bbSrrN3TZAp_iMwqTLLz4$?@n1BC=h)l3YeRFJpdd|;n zg?189a~7WQkP$a)DC@L9plQx&xuM@B<7jCEYPl_Ps*}bCNUu?6bBh|d`94~Dm=-C^ zZ$9p>5+rW5wasd$DXd6tbTFHNBVbbx*AboOl*Wx&3*DxtsfBJ|9#`fLdcMh}zLnd8 zF}D!|mRw|f%0-kiP;olb~XQOH~M3JwiC2~-^g<-xNX~$ovc-W@^+1IV4*iCkti1x3M#AQ4mD1B zXo3uHCI~D^L|HA{=M6JD$|B;0a2mj~OO)ut@0*hdSpfVVc?tm>ww+jgwcylxXOb`)`}$(%TM z*JE&V;>}1ZaMzpe51&V{%gd> zy0s@v7y1+_krdOl`g;2unqv2WEo;+1@rpec78#m*l1TnHyOT17B|bLipY~ z=mjDmBt`K46Zd(O+?cQGBxq?(iPhxzDv&lz!85p<1k6&^(~HY`ytv^PvI;)yEQL*Z zOrk<5TWpYLTpvu`st%ZY?0X`HXz3M-Hb5E+Rkzdhca4Wu=K z%6GGZYy2JfxR-Wl$neIVmrApH$2&+9qp30sQ`Jco^}*LKCnFDE(eE_#Ox*usw6tu% zXl&+)eNy%$MC&MUXKaBxnhnY_hQ8%JW)|TYNFu+iB!RtFuVt%`h(FSdAXaC2f*_qz zQA8XVYzM&ZrxRBeOp5HI1RH{1G<$W^gygK>YHGkhNOb;`RZ9$lr{m6YqhUQCU&6A$cT#o-*BH&> z%WOOB;0Y2?+b8YLb9mIpX@)3O@E_oxn><10Mg-K8#Ql{SdRllFOVx&BTh)o=-Nf1o zTWiHTXY2_)hpgeG%U!{;LW`zb9Km60azk2r1#T`hszzkY=FxfJ0_5M>;xZ#pO}rJj z%jH?)?T&_M?e+?+k| zva5nDJHe>3t%qYsd#h9k1fwZM4rMU3zOC9{o7`nCxu^m=xAMxGiOmzc6n z2c+XVRX7~AlG(W(e>1y*wY+gSQxwPcu91ZAT zM`m&$zZVgVwx4zL7wfCZ%MG@ha1?V2;hTt{so+Z9&-7A*7qskS>9?E6*wL>wOk@xB zv<)6|duVpJ04*NYl|UR|V0x}5JdMuRR~KX)%e1I*axzCx1nFr}cXqdPW)#2h+_#6B zRv_xE!>>(=-4KYonVnpyF)&`@!7d327A}hI&nl@9xeHq~HCzsqL|eJQ@QKhW6@FV5!SDH~6k1*)!Cu+W(>Q5# zC(CIYi-XqyYCet6VBic?0~Ewcd9MZZ-AH;gLSbPBR3tyaxIhLC`_5CCHEf*9VTMA~ zmsfD8UQLkvZtsUz|KF1z-rf-lIbchzDm)z!*63GInglg&x4p06-Nzdwidc_5-rM$) zYo027d!gMC(_N+kz;aGcU?RY#5z<6Fl_KMrXySCGzVp4pT1@uMuSo~##5UbO+#KHx!BfjbzVxPgjOS%K71mS>cu!}2ZUq9QjybtbV?GS3qcOjQfxGQTdFT-$d zv*1BeLrY!WQq+Xv0eXi>r0Gh$Ca+KP#cFyn7cGm1aI6@ih!8k3X*V_1L*%cFICkQ> zJpX2Ua+vyRd#A> zLS@YI49jNlj&#f1d75r#@7#xnS~~2tz@N0X=O90}be>8u7zQsJ@mN)=c6M^~>*m6p z-5j0&n%m#FZ*@GhnAA^eUlI`d-2mB~ij81%RYB7qn_jF@m7A&cR zygiAqa80Zs8g zWd77x5!wMZmFO-3zhi1YKwir?i0xt-04Rg%n z$wtAU%&?n5#m}$@`%i5JOtSBHIw~btey{0(DpfMyS;af)BeH2H!}4R?tF?386D)P# zj4v2lg$i4)7mzmADURE|l8vDDModsWjO4)>vdL73I2u~?%Wv-&-=RLpYZUSR2_AfJ z-{09BSq+SV4h@_XDDh>9?k?;GS|oEb^_YHdXcUkP5bUy1fx9}Mq;(yq z4*Im+4kvBkBgQIB?(g5xGy z6LUo+A-6H5F;=WgqFI!$vtuwL#R%1vRTjdSifi~(hAj;tAaT!n|l|EAoW~ zLen>^gmwewW+kuo;+s_^WXKL^B@!zTq*DO}%)8JHc2>$pB@P*FZOyVrT@XVD zW>RrAPYReY-F$f7MN1!{18=@~p1a2z85(%Cr@qn3a2tQY#})njnRb&|j`@A0iQy?- za3^MFbxlS%A#QHm*<^Y$yFl6#v$-)X9*sU}KXSSlHkDS&ni^&$06eV)0C`6}0*%9i zN$GOpFt#jl7>B#Y^MO^|BB|ecc3v>*GExDX?c(xmL4iqiFE$uA*Yx2ohNeO?sfVd| z)nTXK{_W%K>-V3KP=RL?QP|SOFo7w|iu0u}$beFPl0BfEzA54p;`BOux2v1>ZfIKc z@Ij^CYk<_Z5roF`;MZ_kA^x0BsGGQm1Xo_60B(%cf6FhAh8M_rMg5nh zWrn}|p}E#6gFBm=9PPSrfa&z{%Rn0;WiFjiW)*hSr|d_Z2U;f-RG)rumgT9ZH@Qn_ zCv%cudXMdpt0D*qnODse+%uTlh3hWFQK-KG?1+u&4w3g{JAZZe@$H8XuQ-Ly;f1(LgxBikUxZ-cW(-Ynjtk$&*kSh2?mopV zse>6%^!aW@0mENF;-W5vQH265e#5UN+g+a2c9-aa-EMZ7a9D6dv>~{#QfpJi$;T!L zVn#@RZ!oQbm?0WXpvp4#)*Jee0xP(F06my*voCLxs8U@vnR0pz*}P|M-be4_9Lx{*Rvshl1*f2mj+I9yXqM_&cpD&PVQK*v-1g$@xn%LFYnpiy@-;g$g-nkvVk&Ui=d)`=~yGE$dqjxhKRsS zB(fF_KOV{_eswtlo`3c663%&%C(-BfLb1G} z$+sUz@7}-u>-gf!PhCv{pT#*#;morx4u(6t}M{_uu#{g+0x?(BbI$hcVlsh{Q zR7jvuK7nH{?TbD>Zrdh^b_Xq z14+GMwqkOcph|VNZ!)PX(kzaS+y(fmRCRW%8s2715qD7nB_Ff=qbJVRTD!F5L3+{B ze$$l7LZ}+Segq3+M6*h;uWzJCI_Y)>f<+kxZ;<49$qrhnswO;+FSP4Gd>9{!fFSt; z*nN2Uk8i(&qdzaYV!##<3gF#NF9pzEgdHfSU@ROhePxjmj=qEyduaPLxEDL-;oL|Y zr`ccIs42tr44{_j8r7jID@w8I9nePwS7!1YoH0{$feSO;ee_B#t!e4IlSn6+x|dN2 z2b;yyV8vN>!SF{E^mLz4YJSAeD-?=(#wJi_8Xc@I*+v2rjS7_O2{rXpu}!ZRtFaqv z$YHmEC5G+9TH*2PGfcT+yaVO5V8l5ZJt=xa--!)J&Qah{kN(a+OxjFFYgo}P=)XRB ziqrND|47e=aKJm@cR-EVCnxBj<*LG(XBy@qW1OYWc>(7BLMM2wpQv&&n*yy!V-8In zvV%1_{~D%w;R%rg!qKnOJTlIdFTxxxr%Ey-Q3j#~^N$DngX6*Q;OJ<0d^k8h zKDzzG@OT=TN*%u>n~bY#wOtb|zt)8wM^4ewYjul94!Q9sbOTc-%$=c^38uGbl_K`N z*}nnI!*ajLp2pyfJSf*^_@HuyTerS?R{m(^`=X4d3w){Rvs`ME5C%WSl-hm~Gq}Qz zzC1aFUo_H$yzpwMT6$PT>wfJHeyg21#|-Y^kyE3D;yem*yW-r`f9|-{Nz~-Glp&(x zW$gDUQf>ToAofoddl$q{K@`4*s}vbK=q#!IE%>@UizmS;0j)6ElJ15WF0>0-29_nt zNXd5UVU0e&(bDv44rynZUBby}Y7BO6r#_INeR$y`f-C)eDKqO{e+ns_Pew=Q-wKS5Papz{&9$*Kwt0lruR zu$j}-Le(ogV8`ApjHqrw6`Azlcnz|YLd%5U?%{w2cFiRfm`s0}oF)rYm|?;>vE*O` z3dJU;86{@RL+dZM6KpRhQCOKTf&P)1wY;EtsuEg}NWY}s-Do}hnDGf2$6HO({^0o0 zyZ6ZR{O0{9NZ~dL*KCF@KH+1-?A>ui38qg?1Pj_?I5BspO_D(=0wSC9*8u9Nwmy#7 zBK|3wngH$88MwvC4TM-ut@5X&%bT0ki(b{zZ7mKApI!wQ8t=xd>K`PUMY?vk~M0OYK-)!XiqH-N}Vg{H=hv10p~fdR4m}5S4Xz zcoZ3&DvuYYhP^^=S88S;s>5r?JYoF0_hkW#3sgqC9DU;)VsRxc*3=Fm1Su_+4AS|u zBiY8#utCuFp({;!>Ta5xQ&JKTqGEYztf*~c#STYcMsdp>rz_+Nv{)fq&dp zXZD;7sMncQzg%bbzk9pN%$_&O%+@z{mYLPDFf#5$-5Z)^!|N=Kty&y5%`|6fnhnb~ zO#l^0Gm+PX5wf+YRKwIAM2YBLahb>kwfbgHf29rdUtpx8i>_?1r!)7}+udX0JOB&k z!AZp2RHLEKEk&S11ZE#TbJm=x_dO=tOQ947emj2_MIsMC>L7ZJHqH^I+H^}hU3NP= zh@J2RtaM9&;M|x)p20>3+ks2$bV=86D!f89kc*e&_4YIwgyTYK4aQj>l%woYPjqxJ z-0vouCJ(JWmS7qh=FEJDy8XY~KuJB|59FeYe<6qYspodo8{9pm(;l2)@%C`>fb|9l zpU!x+B)T!Cx@Hd#PBFMCM?GeXA?HiZrQ3bC1$#u~$NlU2=;^yxAHJ6geEk0BJE2BE zC%<&VH6Bzv=mU#E7uDmp=ce|tro)9CpCwEZoTLyhg-TE^rtSaoo&N_0;{82zE2v5W z6)rUwEIZB0XSUOVE!ovclM2F;%rb}4&h+-+W7cUj-#kGBI$6r`N|6j*CH>e17u`E>g>Wq-5m_;d*;Vd<1PQ*?st>= zY*uC25gZiTP~`rjN_1r;B+0V z1&|~fkGQF@^Hs9x<$*~U*1VX!v;?Kf@G%;CF;=p+pjE=Y;}O=M-wBO72sh9)8%n!T zH9@$dKROK9J)%p>yE?k%Y{U8C9o=$9<_EhSgBD^RtWP$3DB9P5fk7jaa$01tt^FW|oNvG=e0PkR3fL(#tuzJTfN zi$C9gK_Ln^(h~Q@3@yFoN$(4T=ovjd1)UI-6^eH_#-KWECsXe=LcwLx-~*I{h^qMl zNyat{|5Yjo2xle|^cmp)wHfUO&Nxjbusp2>*LzAPrRmpH!_-~qH&i7q2uTGb+tcY{ zu`zsA8ldu3r#B`?NyFbXdLd~LB}<8BW=3^#ar+9k!=I2vY5@=B@%`JMZrj8pfy7rt zatyd%X=4^`oj*xZ&hn&GY4mKO(Sy-(=0=8E%hj+8LlCD_%I(3))fmZjl9L69IPt1p zyQ@S0(f4l$ukF!hbqZ&LXlazBYe&!!TXOr{qVEN0Bu<(9Oa~zFbyIiiKw=~^NC3f` zK>{u&iL-E-)>B4BOE+_^C92;nzSgd^?3y0`net8;8&xV;ByTj~;&OnGSg#se$ujC_ zJDI8wl>~HIy9u(~WCR&}i~N)pi?T&9RAd^n}FtJl7p9fiVJ=4wyR6%@y2_0cNt_G`^moC zqZ+)S&mx{S*HSv(B^Jur&L&jzX3Jo*s^zGIwuU602b?xZR%h$y2uEw`ZCc-^(_(UD z@B_w2RT{DR$!2u!g@EB|n7#I|5RCdYwh*69?^J~vX8-+wYShKng8c^Zf;d{E(#W}n~OtgYIE4zOsA6ba&CYFUC~ls zw0U(CrIRn{$pg2$Z;l_l@YKQi#aBV}X{bO8^412H)WQxgc%LeGFkjV|bfJL4tw57$ ziZ#bX7_}&?98_7XP}>X#BePPt=UR zkgFuCk$0VF-un7E4x9i1Y`y%3u!kUAG~05ewLnib+Sg7ee~4&3ES@1Pb?kD@5F zTwR>=Pu?W#JB5qWl=*k#r#@Hw42;>8EjvV2WU7XfqN(cWP2pwMWMbsgt51NDuqC57-gjr$JmoOk!p?I11G zQJY1?h|UJt$Whyt1x=6)h5M@v$<%t}w2F?&J1KI4=}pO#2qufsX0ckk{it4+nyiU0{GpoD-G=*=k-l=DLl{~wrkiV& z948w@SBT5!__!R=wgapfh6r^(6fsDxeDKUnJ!o>>I`IjnAvqGD=rc&hB5UQxInQVZ zA&HWfX1U6_EIqwuZIcRMSti4xt>>D%=0+og#WOWW!o zzF65mA$ZJ%U{WhDMV#SMX<*B030$h`i~_iKRa5m=!}6qAyj!QiB|z%Tj9=?36bnJZ zR_EDj+@cLijahkU#tMfEb}6|GV4tY(Kdj3zcI*ih^oTEoE3*6HpRg}Pw@Ao z5GVmTK!(ZkhEK4sh;8tbf#ws4^v&LHKmIY*_+|Qw`i3IU7I7<<9W$}HT3z-UF%PJy z4AaubPxnweLoqG>DuQqit2oyN$UprOalZ7^te@N4>+RjWe|z`t?cMETSaOU$1-HMv zN!pppmS4j4cv5dU(Mh~MMLNF!Vu*A5Vm^2#Bv#d#^O{k`(X@~@q5fUUpt+L-aSWa| zvobvzC35qhYg?jaTNzvOIi<_z^2K%PpCwFg*#fS?nAG_c0x6o{tgxWM3Z}+EO`WQx z*8m@jwz+YR3xxfnOW{yZTz)JQkSX3gA1ky)T>L)p5aqGox zzG-)K(gV1TC%~tRvui4^#tYQNw!FD?vLg>s8cPx>Lv4rk*#%rEgSO!Uvhn8jb6vne zWe3bVXO$>piq@-6wjxt6-qjNPCa*C`3VMC3k%*=_%qV;q6r ze_{gtQIG$yw--PB*^Op@WVXlN5@vxhYLtSY|I0BP?QD5%WCT3k+BoFPjLj4K;=*d&xBv?W@?w@iD+qHi9EE;0OC75kRr`P zDZV9G8urwa$8~zzCz!g6;F$He4{@(|JNCO9a$xuW}}*mvCtseCa` z%GUni)1z<{J2l@i6y;;76a05|K|+vx%Z7L#34>< z2!bHx(V3c`jBnq)`Wrm-KHQFeeD^Upz51%=MRD}Ci$2ew_yn9nda@WJ#{^Z(C`Iu* zM+af?u`lzfMSral1yl|vSDtmxI}#jMl)L!Sl3wBh7{h$KF0u&}|DTXd)5CSm8VO!bSR)`gz8?n76;hCho5nDVtSv3K2&RX^umkGO{lYx2= z-8$xAbS_a2lPR2Mm&>co_T_vZd_)Iew%8YA)pb z2`v2au|xmQ^hi|?jnpw0qfcxZ!2a9!+KI0e+nP=nludDqkS7gCDsFSA1Rh+UruREt z4zfpxO*O?ua5I)A{;7DoqOI>KT$ImQ7l97f8`L+1PF!Q9Q$`#Cx^e-pz+FWrJ)Gn1 zl06M{0eWT%ieO(nj*DOGoDN3v0+taF8yprmD>JaL25I0bL9tZ|Ao$yqY&Oj^HbXHf zy}GGkXd|1sx7_&r4(6POd+33_01f=!9$4b_S`DdO>`I=7waPBqX_C$y#i0%ZOEY3uYh)I>Dw8bV-}fv&sw|kwA%odKWN4SMB>@6~TV54^Y5bGJ&7M`o6Hu|)ZLDuV z9@#R`vurjR_-BhuIo6RI9X&)c)+sJ&6L6Gs;4U!D`KKW6SJ`xKbVh)0&{sF%hOQFk zM46)slWOCF+JcZKS5xOXN?+72ux5-3kdxEZ3&%}zP0~!e6H}98s9{=8rU4{Jzd_byEpHWXPND9 z?PcSx;J4#=6}+z_{G8Um=%c}u(!ufZX7SAGS(14J$uX7v7J77SbE){rO9Bg=Gy_dA&YC{2p9S8mA;XgMKaaIopISOG~B(!q2j zwl$X%$MB@{K?r*kd`;y1LzYKJhEcLhf@vj+w!R``A{xk&v}^V-39-R3hnCsv|{uTagdMGr2+Od#n=McIOHiuL~6A-ilQ#BymeyCgxpQGK&-Q6K9 zfu5&5@$7E011n`?=LF+GS!ZQZndT?~}6NnO)6aT4i8OtRlR?o?j z565;?0oFuug@MFIqv2vIsWuu~Vex;SG;ZJIm}m*kBm`?r8{KD^B?0Wv9`rbhptZVGC${83e4Fnl^wMbagFwd%xe9d#6{;I&{S@(Aj9hORu}+1y*@L z=c}3keEa2TxbmQ3l4QD6ar~gYO^)9#=}DR!FVqK=Tu(v+m?xodY%8KM+%Kl_5Sulf zArVXn6HNl*zNnEv3ba8IQ)MKy$Ji@&tX2a0S;S`^>^O`~kY)^g=xDuWjHeJ0qaO5D z&o|SF01`~^#8Q9+Dn{EfpX}K`(yqr(=tH6tZU5_y$7pxJ2@Ir+BP2a2N(~FlrS$kRy%=w9mwnu0dd;} zwlk_ZrXD6MVj!TV(rTUy&9-V)S}jorR2xd#OK|{RwWB~!hr@EW8GBBgICb(~aP7LB zXVT@h&P7kK#s^9kEJ$~yWzxs}x%Ur|oRGbF2ck>5&qS4K)>ti^6y-XT8UdTYU1$(re-E!98%j%iHN29CI{qB9af74&~55JCo z>+|PYH9v8tR$GtmAR%H8*$=6`Rr7v?kbbLoUtk-1C^7~C>Dv9SscH;Pj}A~ClRH%=@?Tna5=`Ae z!-3Rll|Z@{Dgkbh8K^KktK7Cobgbp&d7dCgj}r$MpevBx1N|kAt9aKIQ`~@boXY)< zBPoJpb7N64o&J~s(jc0Qd^rCyY*AvMduE_BHlcrFghmbKl?9uhSb+3=+sgwHsBSBS z8%zN7Ss9%}9!EeFJopfTz%)nBqbbg4*sEIF4aI&;0p1NSe2xREI-q8%>MV6y(bi+= z27@F5aDt3~VhOp1kCQHv`J&7n2pfP6-K{S*kv0U2XbH|Bc4Y3KqZY_)amCydQ2@MG zfUW?tYA3cQTocaBHOtj>bL#GWVSS=(t(+73K5yuC#7;se`%HiYP8}(b=&=|qOQF~4 z>Smk6^#HKtq7X$=3s^IMv{&5gX$HI@D5;pDa{HeP+wJIJ*{xt^B@*y6mJ&g&`%?6~ z%9XgWxsjcuQ%Y;8ltfu=enE3|r|Fvfny#3si!|8PN%}lTEG`480xuO4^btNqy0_xD zX286Tk%MYSS`Qo?5>3b*MN5N;JqRYTortUf)Z>X07_#ry6$A@A?-XaaI*Hamwm!NY{Jj_1z;bjk zkLs6S@vNqhW4I6(2iPK&N?>~CpVZIphCwsJod5ryzkmDgc5nYvAeCCbS1N6V62ju| z8et{6)Bq@#(|pZ;VFm&lg&F91tw!mX81khv0)yUhuYD<|UnsDrw;A=8Q-{+AbDg=f zf6^P&*=><_r#G~0f*MtBx)E0(Eg6jpFA)Z_-JD*KOSI$X3{(rKTcna$l4dpCPfCco z3S}zVkj_rylhqg&a=FxRQJj4(h;pFlm{aIHxfsC{o@v*a-^{ww)gxZ^ogy7?H}#gxSxRSz8YJK7xjXHPV!jn3iR}@`aX;FymE=vYj z!3VO`IJ6psaz@~x^!0G`Oh(F9)0hKSLQxRb|ms#pz>Lngh_Co}@807ZN?sGq#!}$U-hk_STw(&?h9A25FR@lL&(QznLV1kNeFj zGSW>CCCDfyg*oZ*8PG|vaHbJra1`Ln>JKj=#b=9t8KG1U@ZZ>yGvLFDUyh5J-g{=LQ7Cjd=1mo^Yfx^i6VxPG+)N|5}=-3=(Ty$x>)87O_M|AeFDRr^|hAZ#^KS5 zx&TKxyHw5I2}DGQ+M<;BQ04Zn22nvYig2qqTP+|E^F7rSv9YkCnxYootk9?8G~r5E zUvcRXZ#&;*RL#YgV1#uEy9W+FtXdS)q=U~TCka57MlmP;3!SEsXqE14so&^V*6sBQrgE= z9DI&Md)=Mdnv7lz)04Qy6lG6V7fmnY3Z%|K4Txep^}g<8jDbd;HEPT(bWKB4HVqkp zwlmrjq3by+C&LubkmQ|nmYi?fnW>s|Eo*~CMOX&Xp!Ote!S%zFb)Lrkh-D+-h z!5(-^(Q{ zm#59|q{n6!C@8uc+0Z8^STPGms$8$`;;S17sE}Tbu=)6Raq*4e5;A{9M2iAg;D8fV z0$dx{ZD-8DJOWEr6h2nb(mL=HxfyU!Am}x|r~&k~z%G$lWNJ9%*tVj5B;sc~CMCi2 z1g@{5CMTO^JAf)f^7x&x+~u7}j41tMgE#i5l;DQNm;k?!Ab{d_xVoJM`;VXh-ioRY@l;ihHCUXqs=>#(B&cMxRgfua$HVB|!a zZN8ClgO~)!aQf=QM{E#E_m6vt^=hrZ99PK?n1#5tSix7G1Z0}``dkx zRc+8BaZ;g;s6cv?PKc1=Lq19grh7z~EiWXjI#o-bsmGa(qAF&>ubQKN8&bN#&I2mp zDq?aIm#{-4lmOpKg;H@P=T1-rAD$7BeGm6Slppk5JTrYJUFbt6rCG)FkFQQHFa!nB zO0;1T17Q$^D8nmhGD3=IB!Lmx(VlgOyW)*d!{Ni3pN=6g%o-z)ZhpZo$RnDxpl<;p zLRz=UXfk_=V1U(PvluNvI7b__lZFNPs*-Afs1tMqbMG81%eO-^GxxBvk*0r@GQSu_ zE86Nq=|E`dd?Vj)55BT@BI)@)gacwCrxS{Eme|F$E#TS@#%m)4z2*9jHCDE0AT-Pp zb(y2dUi{!<=ihK?VOK}Wg{|65tYnQe;LXZXi78|m#FhY_oy!F@JrhLZ$CzCg+lFh* z{0 zDY=k{fCZ-m4(K6LjgzlRYP`~?vkfdI1{00o=;~T}N(`BScXqO%v?T{G-kb?Y!sW!6 zb-M}d2*$1RU!-BGcPgfNYMjN;Im~EjqUFUjKK({1OpsU4P#rS`JeD)_LA4*6S_>f> z+bT|PdBmTCQ{VnO#q#M*;tP2z@B)MnS?yjt zfDkX_TXryP;%sGwOswGZ?C#C&FOU3291Io##*;y3Hj8C}dy?!A8!(c%6;^b_umF8| zDglU>cnDl9={9mIB}dVAD-FWJhl~w(=1cig$EWZj1L|2YlI!H+$`mB6t0oczGgRlY z;i4s`NDkhi5CgwOEXu)QV@}XK1v_G2N7VpM*amDEBp#`}S653&Vu*)gdD6yp`L&p5 z2b{<{=($qm3Z%WJV`2hqDa>jUP!J|Jl2Uk6X+d?KdEzHIetoTL`u1~J!_Sk|H^rpz z+a09W8fOgdw+x|b=ew)2olH?ZnU*Aujm(32dKg=ro!PVHbX+?1R~>u^#g@Ff^i2tz zIf#V@#u=$z2r%KEZ9&rPC%t+*>K02?>N_N12dT6>6)v8|&J`|>=Ssk92B~#e~`eFdHnJ3`+Yz%f}+dDq2RI*J|MN%U| zT`S#E)Ow(46|9v0;>kFuX!gkG3WzCaUOKL@#Q#zjZ9eXwHV~wn9x@PUcOlOZ6t8e= zPu`#@NBsc=Z`1_n>9FyJ7O^;eAgXE(q_?s;(8)m;2yzeL4aYNXskN9;@xAr+V&?E% z(?%r^ihpV5__%+1=F&|M%^W8{nc$~Lt8WvOo0_6Rly?0zCaOzq&C7XG-S^NZHHCr| zTJmeuJAmhw^9z!w6P09;lEa-oc>F~bR?opt3&*TNN~%EGHR;*To29+!c>vmQ-Ili? z%4uX;iip<|lDbNf4lPgVnpT+`cvn{^J)xk_iYtu7up-EIMKcU_CsOZ%_;PbbqS|8L zwt!X@bBg18@?i=w{64EWsL%R5)fLY`;W|Me%;9bUk{Oe#6N<9ob^7?E~jI z!l`!2z2I4$?;%k0P=Jh6Fafzc?wGQ)pAR;UL6_OUrYN0X_=M9=rmO1Fo$B6k!RN0! zdy8!NVWNyQfsJVw4-U}>bBquv(jUnQv#a9}6gmPDG3pjrlP|RDVCfFQ(&fw?=DK&X zTQ3Jjw48eFr0@lDOYe$X(Qn;Km7f>gqR?G5 znUg@mHiSByvLRIW4@NFjdoCJxs*9GMN)*CTKy6_!NyXSR&zDz~k)Vy#ySf+;?@1M& z81v`mrzgnBQPW={EV7#!-F%p3WIYWBhxrt z_A{=)Aq^901`}vEO|S2o2KNlGlP>%OY^sxq1wJ7)_Qu1Qm&TCL%tz*WrN6z_6+JX5 zQYkPOF3f7?9v)fbwG^Tyc;czSn-om-v3-v#*`2@Qe3E_y?LZcHzGyiIpAE)xC^uE+ zcCW6Ac;Gcj08}QCNGoE8c>$Fz0|mvRgYeh47MySnjCy0L@H?;)S=quA_jK|SF1-3H zB%p~Qlt!BuEKCe@+;(!c+`Q!7DQlayndz~+3(_Z;QwcIBB)_|o<95PLu^1Z7;CL`Z zhLlP-!$eHU37idZHC$yBRqj;ew_tmg4HFLc&2*UNhthNy(1!;|-=>kf=JdE^5B9ZK zZbYJ}>PqU+oc4RrW$1aX>~u?NS=7Tqi_;*Q(UJ^FmME*B2dwgnoZpoMbVMz!o|#Sm z6SV*tny(i;pdzkRdk>UNjU*dF#RwFgO<&TpzyhBbnrcO7BB&LvE^_{B-pV6_r3$EV z_oPV-Cde%70v=dyd(eax?TpNF2iQ?R7~f`rx97WUh6Fh#iWf;CT^%P@cLy3@EqE~k zZfSh2u88ac14Jakf%&^fYSLq~tZ0M014}5_O7V%`VdA|5HDDo#2?2=*bYfhA)Y-`1 z;@ommI9a7|MmL({m0k; z{@I19{oID8&icsb^5{>!cW*HV=^DKq`)}bT$yA&8=YOMnJnQje<`w?VUxh9`*&U>e z<0GOUGq&^(nCwaXC<@8G@KVxsHZyKT>^D#N5~oIOwRK?Hy68WkWg}bd>;4XO_}eXI#nZ*=U)^mQBhT=0j6G5Qy3M60`x-a^-^!(jIJHG&1Fi4YycFOXs3c(XRA8=0j>^;l9G4r>Tas zM@9FCP6U=LD09n_oi&F;BHx0U5)4bmESqIEPVFAQo+fbW$<@-7mpdoH)ZMs>G1QPy zB6?s$EKmu{&xT`7A*V-6(;=eh32aOiSzWQ|wD(u`svT;5Ke)*p-t6hT!J9F)vIWIp zT_whIwt#B5yaidHk=mZzk&%V)B;CAl)!!myTP9oMSr57)hRGNpFCX7jy08aC#Q&n! zg^H_GyDYR==U>qsJaE%Px&uRb8HXItpa_Pu3+!OZX1^0+tJOC*m1ZcuFQO+Tik6T- zlNYs*nwr7}P|HMS5xQTfBr&0@eH^ym%ccWTh~M;aSGDjUrRAoK`gOhq<%5Fl#bf{Q zVd1O|cRe%3Jj!|)8Z;F^hC;O>>_eRTLq*h!KKi=xtNT}H?@{n1Y5x$l*_@V8{t2Yp zY}t4{Rt*|kUNrkHtfEPAE^BU9>lVEpWt%S4yrWf5tV(%fuwq`o%WGmpOY6D3e7S{g z?J2?`ZOb^bSJ{r@1L$me+^br8h^|m|F=90U>yVo20m*N5cJ;ubb%FP2xfmc?;_HzT zI7@S=1gE$aJK=OWsTE4a`NIl`vZn}DoW^tkVfr<9KPV4s*YR$*sz+yf$oe3lfZPW9 zNq`$#F8X#B7(_^R=BQ{%{;1N&uNU-;ntS5E>Y6>+ zj)%5!(usujXj2E6V0xj5MC7?}|BloYvV?&Y>dK?#AHGGHAzaG*h%oS4oPIV|ft_Ram8 zDTxvMM8RPA7LtLjof+x-&Rj-IuN4Mz+9U<$AZlAA9!<6!R?yOH82ME2wW@)ehTR#2 z3xdJbIaD(s9x?^n)06+5xi=l!ym&*SYwafxv?|6B4@C0Z2Xr6Z9i%%_&<0TheUu{) zqOu(;7TZx?#w?&YfGMw2_0fVEcNZy!?8Bm!=Uu|qHAF&~*1;h{n48|XJXUf9ZfpU& zQ22bfF}_Ocn65<*2aWn@_n<3~w3k}S0cO-=8W?*hs?Y`KCx#iSGFN7%Sgzou1=8N2 zt>Oylurfzm?DZzd@s4ER{A`2_`0|gkPoYoCcVI!v629L((l9Go079=}tY5PoD}H?>4UpC75A279SzS5D%)|9{!T;r5#CA+mg`Xb6j zLUgj-NNI3`Z0yiyuU>c%>KtjJ5TUP>QTnZMa~|k`t;l2rQsH(*HuoYMy-`4>mZAzC zo~1hUa$C2Y8 zuxi&z2QgO(rVpsk?1!ATAn|J2xdi+CLq@`XKxdd>IMI=7+dUkuUj>Hy7ISegmtXBd zN8JDT54@%0DJW*}&=XYaVE5f1&sHM)!7iSS{=q)>n6T>X?uuBQufCFfzWUDmps)9} zN>mV;i_^*E?&}FC-9;&RJH~4NTAyXBkBN$rdqbp&YEv2x7Ko)|?Vm0Fhm+hEkF#I% z*=D1pCgT~@r`x1dpx`anOiRL2XY~&CccWa1Yfb#Ne!~%G&>2T%DtW+!?h-J~X|m}u zT7lBukXE+ky&R^u^%eb>X@1+Tp0^yek^8&caenG3jE~!HvV<1{Nu}H+MQMW2G=Lfn zAGJyT*S)$a3OJg;6FA$F@Qz&I#|=!5330BL++2Au=c)zt@8*A4X6^8#WUMJm4byl* zFCY&hr^izxVv8FjF5Qu`u;>`^uONKBo9v3TY2E!OTb=^TIjL6vH|QQpV&y4yP@2ps zRE6@VivxhM-@ahH4h4Drku^-uDTIpT^XCUmB%GxCxDH7zS!!v;OxUr?nG1v#Fv{h8 zvALuR@w(Rqt?7-eNl1T9?YR~u1M`Pl1V&*>u}Lbw&+`*O+hfsUJfXKeOQJXI&n=4{ ze{lQrMJRC%*`uuxYQb{Kzr!Ns-=WRC%lb|JNh3=zn|VLO$v`dBN=5aR8mJpG55|~U zry+Fh#o-MNDu@OJ|_gBF`75w<6z1bjkL+U5#apdF5IuT=K-ZAFW{z<^UOF}98&);v ze&DHwSx7&nZ$lGi4^c|xOeluECh4&C(1!82bscudsz)Kmuw#nQV0hoIWEKJ5!fy>0 z8U`Q06|J`e`j21k#&>TM&0(qM!>hJE84(o@(tzn5H=2SP01-yFGsMsd|6GP`Lv<53 z4g<0dD6^&?v6IOHRi!=ZZhC?t#s+kMdNm7_kNaw%`fKyL(cQiO+~)p-xQz@la0co= zRog&!kUHFsd*&*IU&0upqaH7jY(;qX5FB5&!tD;OU{~#8Lmd)oRHH>W-JuQ>myU@! z8Km#CH%nA4EM+FgmdTkfVM)%pnbneQ4XP=XBeqCPBM0Fl>Vk7Fk72SwCk+pf1{JI? zG)ai@dAe+AlV45<8}f zU>Ue-=zyjcAOD^5U{3L@lj|kQNKwLPJfSgUP3Qt_ zl2(E&Pbj^hPnxx(loPZwh}j92zucEU25Ki}EMg8()|-eQ}X1J3e%6%NcKJF^e( z?%kac6Yr@lz)qQ)S^r>gXu4&x)9dG?A;F-4MTt6PIK4n@9KDM(Z?ZIq<{ZkM%>}9n zKcJoL?jXl?9nH`VPtOqYk5f8c=5I^qbI~QQv|AjL#21QbFl8Q2Y>sV|OIvOL&^@;O z0C3TD8!Ma$t0I_Iv^={3w;dxGAL8-Ffj&2@#QyuxN=W_=EUk!Jj(xDEwlX&=vp-Qu z)|BdNm>y`R1Q|wmW&CBHDp(o}teaGm77=KuU`yIyA}V7juzSIjxy+g`Xka3|u2O3b ztcK|wwS0O|gajWTdxdewRPwu`%+?k)U-hVHX4+LI$hr>cxD1_5sb%P2D%Q^QjKwBRO9zpuN!e_GWj020(hFJ&0&8o`M4R?3zi|v&@~Z=@iuw zv{<)1y7demPlDyyHfIm9H3MML)eqk|3&TJ6RoAo8)FcX11_AQdNEj2bX8j7c>`F`r7 zKTY}2eMr2ajhu==6&abHAk{-L z1(taURJsTR(FB%}x;1;&0;gGL1hymr%oKl!pKe~%$Z*!XZF8}Nk#4B-k2U!!V2t1tHOL#ml^%F?{H4;quM3i5m}Vr*=hG>e2nm6YF-fc^3NE{@~PRE&SFUX~S>bRmzrek_C8#vdL&Jv6+b~+VpLl3ayi!*F^XbuVvf@i-{qHPja;7X?wqPHY=QXK0!|q}q~8 zyfT#}=lDIy5lEteY_u>ZJQ<*5;*sVb@&x`fc_5NZ9wuits>f~1%dmYSF0W;M#`sH! zF}q$jLCkHTX?D~hH8h1{Z0M|0>L0e0N+u;cV{)97>74H3*~YgNU`-}=D-*~tVi}5P z2sQ8=Kn}6Rib*>R0>8K7IyMRu`Fonz=RDuHo1UYP$9;8D@&wa+$q*oM(*^Y%kj17n ziMpn*3sl-3hHiVv-b9qg5G!Yg7wY}F0oei#>!YsfYHL;Y#@A6Yyj@L@N^P@c29;_- z>9~nvfo-@^ecIp6tY2*3FTOHE2oq++be1t+(9YoEGgIXBYB`&99S{XjbI6g3qpiG1 z=9FizCBP*53>;+Ep$0~f+PAvs$;zO!T+J3Vv?&j74z@fvK%pfm-w`Oe?fqe37;TQe z&T@J~p9Rd)cTccAFarq4!7O>~ozKi5%}fssa>7zIxT0F3|PREs$N~bs@FIt9l3e9 z9fbn9QJ~o_6>reEj8mY4VHlF3qAnnAT`o#ktFLZD{_yjQtI^GN20k9-YBjmVPej@A ztRP!%Q{LH06YeC`irx(^SlO(3gWIFhIc`FXzJ)6(6T7WqG)rnr)MrM$;@ak+$R|>>)+B+;d z6Jow+)Tr947pzU2v`4b~5B@k9937ktPmfOV&)}ecc=vdCa5_bTAe^RHN-CVsq4;2K z2Al=WRDN|XKjMe8#L-(j6W5WMQT|@d>%$$_4>45bv;V6wd7(nldf7E!3{U9lfFXy`B{;;vq!C>jUB5l-@m|x{!wH#aetRhH4Y~`Y zYfSi*JfCTs%rK2oB#I7-u)CJY4dgUPBFcBDkXSe8W;MnN79RKS;^xt|(+O5!; znbB~vUf28j?9Cfg53chxF%qr!-Ij6Nx3Av+DHm$erSn&x?;^w+I;Q(a*vY^Bsh44Y z@c3&1jXpg7%lQTwr6%4DPvsMmSG&FN(SGp^aB?JyEQ(XcgZw!8<@(Fdk9yzrz=z`R z5}HU0ynKWh?lfjTeg9YcHdOGzhGytDqr|-&l$Uc*$ea~)z$8Osz!{aQ%OFsMxxOM5 z#C86~-8G`6>2?-FPBJb7E3cLG= zR84@PR6UV96PwzSQ;_<|7vu#=XwVwpGjFHTPPA>DxpE zLDl9sb3r>@v#Q-Dwi=u5dDFyJ0Q3wl*sh7Mm2tuv514_L!SFD#%SHr(f{5ReZNa|D z=mF43cPaG_>4A&%q6dX|Z}(UUfkMS;>^HfE?FS`;Z(hg*%P3qGYio zXjuU3OZI+OsD#1E)!PNqaQbyNrtBIf43;)|tB_14n!PDbk(0B#8g_Y|M}-eu97@$C zz1~6^&fndG#QcbYzI?P_!ksPqE7xK@Bd2tz=Yt2ryYrkVwA{Hs8EMk!Y^wLN$Zk4~;3>P$nB6(@q2 zZxTM=dg=xyukO*)LPx0&tTSlj`AdYXe9d`XhQbp?l%`P*T?BbmCT*fHyic8@0@ zLojJ>ZdQE=Jv6Gul0t)852Xp!P}28%CZHSz8fmRgM(OK4=dg>f(Mt0ulXJ`WUaxgl zZxD3bOf8lfRUEf?Y^)DMk4v1<(L)2c!!&3ki05F^BT^9teX!YM*3<~73!9>nhFI7_xND!oEqfGGYy2^oM7sng&?bS2>rgD$WVXOk^@=( zRC<-F1RMyK=?h0Rh2E5i#}ZIav`&LdLDy%uJgPc zaFhQDP=U21_>iiM4Ff_Zd;A5IaJ7+wU0nzZx=Aa(O+~&DC~E_87n#DGmNyC(4}Q)j z&3!BP%6l5TYdMjwWbkQ~cZ-c9Sr9vBB*8Q#>GXru^WhZu-~w}^KQ>Mny7hq)MZV4} z$`cD#V9w0NFGmb*u7^P<)f%35*wn;{PU;yTb=F%gB!H~GdxYwOA_H*x4R~xLI>45I zYN@_XB&5qI8#;X5JGDpw;@+tP3qDxi-QV85zW?~C=T!~T1%Es@#B9K{_vjJF2QEP3 zLouKWElbYC=F%C-hwGle^ds}e2o5h)1^aw?@Ihx6M`#cDNx@EkJi1&xKHy)ZT>Z!A z&AZqCPLImjIXttjk=P8kW#6fy%t^gM#EQwX0NdN#$VlHq9y;{Uf^gT0%Bo>L(3le{ ztus0KSC0!k?Vmm^;+}^N3+^&H`pp;5L$k(1RWyT&Oz@hCiDu~6p zniMWN&(DxIJv?+2DQ?o#G+oi&n2Ucn53fSKiz7ECyIwXUJWg!G;k*tHl9uB7V7 zO|6iKC%7=$s5+ei6Rd%?I+p*dXxmO>!N+|CZy&hnA;dMo37ETjfm*=$3bV5sO)3mi zpq~i0n60UT{hG;2ecfcG8H5cR6L?j5s95zgi-p?XfAjInkMHju_5XPCM)Y$p&8 zN24K1J5?M|1yX0d)5O+JE52*6-2(WJILThH1)N6YmY78B|UXE2wy)d9{b! zLHsS=sVvyayqh0mOr_cBEyAOZ6|7qJl+I)KT;q%+OPoG7P z38vX~KDoYt$PX~j%IRdaw$0(*dYwTL38slF9mP(LH;a=erudMjSU87+PDvXB*47q{ zVbaS#0BlYM`?LLpmwoJ;T2Y9^RI zjUym}!_)O@dD4md4pMh6o&prso2SVf>*oC?%$~34NQtH<{Et$H6U$76t^K`tLym(G0ojSSJ@0BK1E(uUyWH!iVuvExcc62R(GtRGhg#U#E~^GP zIKcG%71#KrinVQk)Ex^prcWWHnB+B5Ww$;!)s#Tn13Lg6XpM#z?KH|Oa9X6=Jq|e< zf);8ab5M#HWbH7&q@Jd~gKl7h&DHY#XhQV~njkyuK!NK+zlN!MhZkWHO^2i}JhSZ# z-Yi^y%qTuor1TU@EKt`6Y)?T?r(lR)*mE2LuXjmi9*Ka=Tif&XiJ7T<2iaI+GQbw0rb*QjiU^G( zFADM{R$N{KXmgoKy!+{azSI#IzBNn>Y{z4;4x8Bl1PB;&>KAcF6DXFeK=rT9->*u1^~XV&bZu1uuqOc5?h+4QNV1(297ne2|l@!ND(TR1w;S zV2s|5>-xMzPTekdj#_^(3WrgOd=40DEXg$D89KS94AcOHwkh7AvA_+WZisCpf*YZK zo@zsCIvp?PV_?e|?kZJ;JsH9T(bFom27S1pFEeLHiU>D$RMEY96E;7q#0Tl_s8AdE ze&f>`kkai@)rQbx!-SRGGHsv7vP=G4&+l8>I6uC9`}ywvcgiOxBM}Ev2 zyta}*;`t`pfnNd@vvRU1stZ;L9ub%4U3z99?kV-m5`O}BYsy)H{2N5R;P1gR1jSEf z(o~_a@|Xh=E$lxfBbVt1%w_%TGLNJn`sXe&TWCiN|txdCyQ@zI3Jt7j3Se66wKElMv z4|ZJzMGUSjD#F+s@IKh|P4i3*6ShhseMW)w88)|+F$bkKCV|wO;@f0-z#PHHh;YLj z^{YHx-6RTX5JAc`yz8v7m;qS0>n&8n^d38!Tp$lEbTmZ{7vuGFx|k&Yt+>!|-g3L$ zAoxU=;e%)}O<_e!i}R-iv#*F_*R2OhTjVa2ezXi!5S`Wj$TFZz&18g}dXq6F6JA9z zpwa&8N4?j*|M5S1tfV9|>lqE33cMPo86piuL>a>C@aM2sH#I}znhWL)=8D_xX2^P9 z3o>nF?`r1GU^y+q72GZ@!w6p4lUm8@_~8gtz62(uBj^u3dMkh%yE+?mpXCim;Dfxu znqTYq;4pnHzlF--AE4J}=?0BQ6<1MrEYgcWjWwOU0PVM@hp&)(^rU8*96nIKQ}#He z?{WXsY!4{#0XuP6e4V6XrR03TIci8>0J%=-J0MhXKZj}z7U)ZGM3yZW1-vKEZYFE^ zP}skei}G*8^72-@L-r>RL`c1>9*9$d^aEqPb>-@e5I_a@!}azSN;#%@Ti-xii1c>8 zJx!qM_H#@yeTMKcyjW!yDva|Dpl(Pfz7z;`X5YGYCs#ULecT&cPA^6g+>^T0z!_h} zsd1YJr0wGDYu0+nNv4WU&3LVLr57W-Ad`#PdU)OAsZU1?wS-U?*EhWpvOz!j5cfURUd5HGg_a9%~KYsP&yFY*a`1T$b z?tg+SD*k=->Ge;4e)Z|+zn?t*x%c>Q=({-RJ^py``To`Ge}DYt^Q*tz0ae54Zj}pbl8MyV{W!vg>nsAGn=7C@gdm*v zVEci8J*+fe&~vqBuIzF7B3gnID-;$6$9~ji_FZlHF5MKdUX5gkAS*@7!~$6Y6^mzP zroyea8RsjBr-BO;J>Aa1@V9eR6f6Y3d z#!W-n#ZYStQLw#cTfQ^S*tIQ^df+C7Eeo^IVt&Kg;io@JBakm_PtUUgvF(Woo}=_c zB~DD12%(0C7r8QOPN4zRI%u8UX5j?GlO>T^>DFF>uvTGRcy6R#wQPomIhQCi7#>O#t(=-cCpjanYH{b)R0LbF9o@LLWh%;Fc zQxr_E`Ma?V;l5v0$_$TPm%o>#YB9mo>1A=kVelOtMEfM{FV?^l%sK=qo*J5ZOZW*x zUcFQ`Oe#L_X9(dA17 z4uWdhY!^}feFeLb3s|EJu|6xuyK^`Mk>O}$o@rj)LpE4hKcIQN@zjU7F(yRnRt2M3 zE<}PfAC{`$7^WSn0#F60!pV)49VFOtaLBzDZ*c_(&%uD`CBjGZE^m4B)G&3|!KMtB zNa@L{1DY0c@FE&jQZJGy*r&Q22%8||$ZV6CV|2kV6k7%`pBnQTJcoTfc?}*82X4^_ z+gxe92m)G~DEpfSO_crM!`7DeSLnAHm1t=PC$N4q(i9}k0aKT7N?egp*cEX#_mY0$ z(VkUrfmgqo$q<;QQ>}g3P`8n<#89_!QS=}yg{H`DKP?vHpK-rZmP>cmwTzc~+JkN^ z58d;S7mMmh$+e1>@wNFiyL!-EdXV`#9 zgfaU0&Hn43-$*RrzkmL-eH=6*JYzg>hN;Z`9$>-0mB8`4&#&OUlb~Ts0WARo)9IV( z%uUknk&)DXXi%PFr`Q5%TN@M66cH+rujYJi3C<_W^=wY6k7KRBe0)5d&sRo1%uB#B z>fr>UfK5pn&bsRjf=VH0Gs?7a3H2SFL9v4eP6UR?D_|sikm~zbCfz(JJJW+A25cdlYLyHOMP0|69!UiUG)oZ#Ft=_AVNdZ zfxF^nvJd^pja8rVUy#Dhfkp5TN?lg(?&I4SOpok98&hCV-+aE9hP5P1!LCMgKb2?+ zk;>(Bo5Ub3t67y(n3DKdk5Z~|+gCXI0bwc3SGrDD6CuUGbEIu8&@l-e57^g=K3YkQ z+<0r_SDOq%f~mW<1Vg7F6hcNcRPEEEWOxnViuK&Ca>Yz=fa%ku3azAASU85zWp)=C zZv#b z3hGQ}bEejHUY;@0uy$;_V0$W7tk?}ywwnBPLOg9=GXh{Z)k(Djq*c(GH~Es%>$kIm zZk1}=>K0>7=!CPQZt?%267V)Ib0ukt8bX}_>EYMZe$iJ6o$eaobUBvBQapMqlo|00mq8A~m9l1TXKt>ERz8=E7eq$0T2r9yn_&9*+Ia%p{~-p9${hfL z@uPZ22bR|wF@_`xkMOW^=Dc&yh%?WS@<~Owz6NCmCkWsj15PkoEi5nf!Dr(rlgLwt z3QG*WNJ|c`(pFJwh{bB-iyBQ$Rtlm*h!rZVkt3}K(9uDoh;0CJ29EZ}f85`_{`dvi z1^n(1rhKzBd+8DSZd1|@JcVbpG`398*UwR933>W{*qmL2=3VQf#1wYm4rzr%O);=h z^%z=Uo5hUaS@Bi44T0}+wJ`X6PA=W2={x4X!FoB|9K|ewQx_PN%Q>=6C~7?zUbs4~ zDHsX+5=>*y90or)c_k;?r^PySyYwYkUV^Yz`DRK@ErJ%wgD2d&6)nLP*Nx>xh*~-| z#s$p-!D&LNu;g~=mOjeBfmTPH%Pps3IaAm&rN@;{@fPK9 zVp5E=mMCj6H&d}`USX+wI(aFJo&LqAnn*yrW7M-;ZAfD9BXGWu;#yrga0j1SrZTJ% z3qak%%AYowX3#El8d+H~8=(l67RuMD0n(GWA`?<{NKN`2anYumJQf1&(u@#gI(n36 zCx$Ee36^CI+$Kv%5N49j(>((YvO+r|Y4pbFF$XXq~2bp)Fep(&WCX+C@Z-Ur7-R~Q}jzhzXE@hAJ1j=Hd- z&uYC+xMXh7JYeS*(MCb@&_pCsIvkcLT?qC;%(Ltme!E;RIJ6!@9Fd0`k8_p=OU7u}cw;oz%?2m%hlx z)0QcAL;1^d>hWKws_Drguz9BfNB<=L>G5AE@Av)#8N(ZoXQv{%f%rgX_Th{_P>-uu z3g%+4%YW#g$jYzdj%!C9*A6?bF>tK;yg|n``ZP8B9pGA0b(!flwus}0*3-{a?SvpO zVza|n)*1=l=#3-6D}HDyqah2Cz+i>;z`mGHmyb_xE?HKZn8)$Zw8M<1|D^lr zj2b_=pO(zRpdMWf(wGX`V;W2>hqHuctdqHAC#%x|Ejc?SU?~nIV?VGJ@ov-t4zKyC zTdthaL`y3#RPj=PexFozHe;q~Ayd^YT^DefS;y4+A+U8kF^_=M)Vm~LK3^e&eGYWd z`#oJzr)DIf(lHjEj~&Uu?H*M@_v+3CS;VH-*d%aIafJy{zb2A~SSH0jHh-4p+JzcK@z71QWpAoCNt(l9wgGaM*#o zB+Wo_%0A@BQABWp+JvTWz=II|uo}NCI64gh6*LS0=1GWQxcc+ zq(T#OeST&4=_-(KK1s(Z7DxcGXwg236TB^;$sGfM%Bf{&MrxBFJ~P&>B8T@ z3d(1#N&kzpH^!+)PEc=Yyrg?nA8gjN%z?A2+v;N&%a1g#tzvR3kY+Z5)ZukHLs@Wq z4CBpmd2H4SCeqgK&X}b zz{)}wr;>7#)+))iUX*cm(5I$?mBn$KK>9#pM6P?9G&Hekn&5GJiq+2XM)l=JToBObdVKzp4=>iOR&zxkjg`1fy)^PLUxTYQbh#r()^6Oz$a{%hS8qf>y<$bmWeKdq0r+*n9Z2`oK3g z50_6!2C+p8Dp&@a_*9~dCWrzj61j0;c;VBN<9E4CC0L)%5kbw6%9+{m4AQDx2na;d zC#P_HWBZ-PdqayDQ#fCrPiGXzbzd%LXKMC-w}V>(YDmHd+pv8|JD1T=&qSd(E0O|&^j2I?tUY37m^zrAPzucqt<;M?`zu$eh zmocT?K`@ z;0|M36<`z_i4n#Oq2iyxp8J&c{I(i<| z4P)LIk%|X{l7aMSw}p#W-Z`dfYydSHT{C;bu!{-x($9dYJ9&}OHNzV5r&qN!BgS#j zwNmzYjFrjBJG3C+Mb2&5=Ce$ECx)duIWCziMJ8~Ksu<=-Cf)(Wm?>T_*9vNr^yrBOa)9|F6{xid)X|xuM(SrBgDPB5jq5}u(2GjTk&lNnsZ0Ht&cGV#@^!*u(?bxlUZ%#9kfV?uIrn zY-IGabB#ujAxkJEy1uwrgV+=mwE9Sl()YwD(5`d&tiCO*GD+!QU=H70f{a~opB@}) zLPB@y>7Q`c>}~tp2bwASL38|Xq0h(HnoldruqfZbMzl^Z6YUWBem~VvN=5)qX#D)5t!bfn4=!%0U zD55i?9UT(FP929`dX1K5MElX$hC!#Go?v<$4-9a_UWfyiEJ-ro9to8x_tn(83DuME z?OQRC3I)o`2d5p4$GDZr*p%Xb3M#8wc?>KMgu*`R6)`W?0%}q`zlg_$Y>WK_A(iuK7|2ky)S$=x=@zcBef8gnn>nARWhjO#eu*dC# z#uiqeAxMAhDAIW-Ju1_0wWqrDR*;6_`1(k>jKn>|jSe3|`m?;f=@q{xA2L!PL@gY0$}}W}v>+wjKOT zhYGP9<`6r-VAO<^`0}}@B9+@iCh*`1MBu${jccBwrTd9Rm;n^NV6iE@7%aHy)p2T6 z7Ewoc-p~X|)P*8%vKYDQ3aa`A^4*j?^FRv*7n=vjY|+Qpn;E@eZ|K`vlo^!B`E}E9fDIgtZmza7Fy&BT4F{EbQzT+%0<0jTtXsZ>6NkjKGEBa( za}}7%$s!t`@8*AYrR%_!JU9NQ*az$WpjS8Zhe~MYavK+^zf!OTvu3zp{7xqyA0T~z zBM#BEP`Sz((PR@R&jnhjXjVbFu~#e(qma0Z?k$+_5mS%vumUGw9^@J#!gM`yy-c(; zG3Lck8g$#E<`LS_!$=m7sL7Q}*LGeVn`Xkf5#0T7Q8({UAjRbh*R~+_BRXfH@{Cb6 zzdYGUEihS`{s@ki!*H~0oLbZLsd#vA-y-k}>tIS#w2uOLN;*L$)#U7aCUvbA*jUa^ z&M!b3Iq9m#)pjfexnUIz{ueTGK4_crPxByl8AxOCObrlf>ZVpwSnnz867_VQRSna4 zIm4=jbhW-Rs>bQji4iIjy&BYxI#s@KHNFHQQB8TM0Tk^#0@u4XeO5Gr1k(ue85yZR z5s5!});J_981~EaDO2{se+y2dfB*O%sOw%FkM8V}=2L39^~W!tUL)7w!jdpcv*C40a1CD|6+>B}^Q2QX zlsu2IQV=)0NVO|^sSzS)f#D;}ghBfVHVMZ+|Lu-{3PUM8`#PYZl%ASlkzqsC6lmTO zOy4fWA03^Pt^=Q#eLz}ge-l(OK2AoQ4bq!UEmk<2iCG3#(sWXZ`zV-QMlC^k7Mdp6 zop6AyW@{vmjnW0i1u!r75L^HvBwBjOteec>wAk7_Yh;x#UD496BEaVcC*v+Qp$RgI z=1OmfQerlEx^mKKC_X!1J!?{o8m5<$7)_R7(Jixvt2I+Q?S^b0Dp&@&23tU1`z#P+ zQ=VYj*qUHC;Emc?44hLA*kg**@xaUtdq=Ql6yWK-FePrpz-})dzdQ zXXP7u4Zo?^;Wza<`lepT-_+~mn|hsoQ?DoA)T@8+E%Vin`mYbpeLt$fKHMv6!#>>W z@SDbU^i92vAHkE!HUx4e&{38)zH-yHfZ9W%bA6N0cZeeiSll4-1+>uiE^Tn6%Mu`F z2;2)|8j@}e%+E1Sv*~Vcf=SbJKqC!MeuS|nm8+e48iQy@_|zMs2qiTgoNg8_9@&ZJcAXD7Ygoy z<`~If3(vlR0_35fg1o%$J=jNG(kwzm7!7qsnDv&*OgcEQbOF+!)=i&Vasoz}TgPe> zWb&BVhzEx42c^O*AQ@fU6=;W4VbLc5>IRg>6dOYyJrHz!K7F#_e148PTx;fdFgC|k zLLA(nlgTMN7;d<7s;TO*B{yspmv8$D2gMSn5gv}p%z2G@89pGqsI4!?9OhhxofW@{ z-YE)MjxAsk7;^7;uk#UEyMtlL%4q1k^N7 z0WzMYebqQo-crc9&O|#KWSR(yEyDq2bkj5Seg1<1GPYjakJoq#-C@rbs_N*cejMf# zR(Q(YZpUL1%wP@3&EjrYup=Jx%^Sdr4VDXH)r_R6Z(1d@oY_hFr;{ubB$KF+b%$=T z1kZhBO3x885=@>q zJ##9MI+GM7>p5|Yat0tq2nt5uls%zRH*nBC(~_AK1KMXzrxQ&HdE$t(+fqRQ)MQnBNa#=rm?wGkPBGRiqoM(_v$FfSs^poRLv&d7c?g5v1}xI zo71IEa*<#foOxu`?p~0q;G%W8y+nSRr+5EgAnbPj@x$Nn8=e;q*dmTaJOi8qFYw#w zRLXJaItRtv87G0WBML9n7~cZ>z({(aHYg2%#iVpVi&JDVIz*sBMpv~p+nk@(cmvO( z>D5e#l3Id`b9c>h^DM4m8YYp7e0dqw{a=aa2F0_48+cejH7wYBANEq4r6KmxS+Dr5 zF*mg%o@9#3$||(4wkYtK-2OaY=cpUXN09(HA~%5gT0U(Co&7l^C}gBTl>@|qCQ`&3 zUE5%MSGRp9!SqPst1)GfVIW#*y+UKviO;Uh^5ai5JcHWmU}hC$BSl$e3(V4{D2=J zQiyG-=m`TgAeV0{h=xrT|V>?k{#^tf91j7I9kYN z|NWz_9?H?i0$5f|@xZQ%<{t%{r{KwaGCQ#r1*xh5-A{k z|M#z5`B0cEzjf{U|Lo$W>ggd~i?2Q)kDUW+8f=zp$Qzv!aioH4bA<$8xYFBCk{&Os z6k$!ZNlp_elL-)$A0~@+h- zCybXeQ7+n|ooT#_IBt)Nmf)nwBlrNq1Ph0Mb0^;)@OWbapj$X+Z8zt0cnGpLk1&WY z_|F{wnqAUIWCvmk&neo)s7zJfk6}eqJt!Z53ml&>KzCSYCTWYEY z&u}4!{M+jq>rv1FnP9^d>w`OLNxPD^gp9Ait}V zo&XC8a|IN$g|j*4u?gbojj)CxloCb8?V8bbJxlPtre~oHfRNslSvV<-xST@fLURw) zYF|nyB7OBFC30|_HUR5gPQH{}HxrlXAnPT2!0SZu9vXWDhaO?H zLQSBe_51z*v|Ed6KR6ivgPGv+{n^B@d9i>#rJL3oOoJ+wg+rKLhACkjtMF+t7&AY4 zelgXgL__Nh{?V0PSk9LFU=!M$MT>F-8(c-3=c{^!j)xf#XO>F}`+loH#SBXW6pkvFL-_UI4IN58et4yK5s8yy?;CXf{6cg9a0r?LSZ&|Zq21ITfKmRjk*Wg z*{~v}>fnUw8~La^3g?!QincBIGP)|?WyE|TEx(`LgDz~&Fd=~G*lM;|&5&{r$=_dU zg)oy*FYi&NJ1+Q{X2bN&g)r#^fJ_5m_HdN^p59!Kr~sC_`IZsS=@f8E$D9LQz4Qnz zf4Cxh_2m%uj#MlPy3R{Em*GdA!r&)h=LJ83LQ>9Ocw1Ao-NJ)taM1gMYv(;JQKyw5 z!89s<>uM?m1JaxaN0OruGAwnU!d+xKyQZGClEF1?38wBwwa%4|5-IrixJ!^y9L^qf z92Qq*mclAMTX$~j8>JrsZw7IA-FR~a(u?_`HKkG%{5Z10Xa@uPsv2ayxv6qI5H$D< z8tQ4UwJxW@C|UIRQ`6i;Ls0jYoQ+un4iCEp1+xV$(vILuppAYg?MO!tJ0V?J2#p1X z@4jr*c8n*td=ZLtTS1F@eY$$+^R;m14$#dcCs^t(J|D`wu6>zd>P~#M6u@IDN$W8+ zfV$!OBg%H)-M{|n3dQl9=#qyBZ^+PX7X@WH{ULL|l4^Q>d+402+#bbcEg|xVBUMac zB`;X721IL;_K8l))beMM3{tjOBc(Yifiq6>Y&Dj6QD4#y3B(y8vSL$KOn1Ax000(VpEWF^1j z&+;+I`%}yF3sy*^9p$WE#7XJAtMULh;F@w{nvtMvHfHvbno>4^x}iMEI+B$&h=njQ zWWT1hpaIn5A%9+;SEkN_2sS}R27;kULC~dqoPjp_%*q<_L2h@}G0O2ymi@#ecKCY~ zKs`|(F~p&S6>BO8YM8o8s$VlOq=PciK>Bj*KZ4&S}$?S}f^Diadc8a#1)X^AQ*Zn~J#^!b`7n8yh zHYqHtIt0zKmL06Y5eim53t^aS-J~s zpK10%Y|nbLXbKWc!z+bdIL5$xlr&8LMTnSBOsBVGg88@3mlSJEz%m}LI^rVvn|xA;MTu(m(P!_FudBY zSyBgbylTETx5x7Ks=xo}PaT&B-Is^mmk)8d_y6>M{Rv*#`v>NuQ^sOmFJwH*+Xrac z)=CUgWkhPec~H@#Mp}JwNvS0yF+3nuxm;VwQ)b>B%?V`C6FQVZPq|-x#N)VxM-gM- zFOSP3zPhek+~);s%KH7?-7ge6M0%WW=>Yq(NOplXyW-j^EeqrwsFX@I3$IWGZVGK! zcTs$Bqr}@Bs~5QoZpgpo%*@9h?gC z^w^zOz5}|4SEq8ch%SlDOsr4)2S=$R8WK>CHf;KEmqR53+mcjqiQ-rtO1L*xEq(Fy z3X#CfjgA72tctsRJ{w~jp7s&|sm+_f5`~S-!Ev*SaLrfs7Jn~!4R;@5#^yvt*3a2X z<{eWzln~9H2~>se6jSFUx}(Q?gkIr7>PDR9e2q+Hx5sG{j^f-mr_)Z~g8=F6M1eJS zBnxAh9O?~yT*IB}gx>-GQKi9c!1T0WNF*U(+S{{HX1?MOsA$UOBXr3RklPO9t{~}eTQ3k!!$g7poFunfi)h7^6IB)d_U`Ak; zv-0xC{llYJ7~?{ZD^9;+P~}1F8V6%uWb5ngo9df=Q7SsSW;zAs-fO`y7%vDwG-@GG z3uZbC2p1@a*{_OY_LV#V^eSt$nTf_WGxZZ7y6$$ZWW{Cehz6*M^yaPWp)!1d#nCU5 zLeXM8x&L^8(DETW?POK3Q8XtI-8!6Vlp)4Rs_Q=ruT<_v)+P_Vy>_En#-a{nv_v+v zRu;eNyUQC+R5(A8zW`rq;e191DG#%hvo6!+-Xf6rMdq)qdYG2FuD)hy>iHj=a;HX| zV0m^+*&vDaoJA=Du!9z`A0XS{1~q_DVD{1x$*WK8=%jVVGMu9nDmLw8)#K{&0;?GE zf{oSnVIBe)EzOa}JCFoh*(;?pQ0Awr1vKxA)$Za!MF)K^u|_xn{ZewCw%0zreH7{yl+ooSZvGW@q2YdJ+s$f^Fyh(NlDQJ4Muidc3p^OfaMdU>8qFQ~m zJl)J>ndEFY1Qq;nbkIkMoSUlDj&8d1p*B}y4m{SOZ?hk|iN5d#4%4vHSgeB|FyS^r zv?;-QS(~Y*<#`Ghe?-uE9G$z8`)uvtv5hu{FS$QpE1z=h_$b)wVcV&hFdEJ(P|kAX z7QbAy)rY#RjoAX7>1k*qJ>tr#7 zLlgoT$BP@tbcj_x^{@jNpWwdDw2h|mOKr_mWKguB5GnonZCs1L;kkuo`h&e53L@PADOyK-^@===Zk#9 zzUDaC=%iV2HTD3;+LKO`mqFB51jj?<54#yfc(F;5$=M8c6M4j89GE-?w>ccoMQ=l= z0pAt-778Y!0->iS0u^onHB6%!<+O|wPR%WqTTdZU>5*Weg+nqSV^-a+T#dT3gPx5W zN~SR=z6oIspbZ9xfF}WT*21)TmJ6CIYw43ck{$kuz?gi{Kw`xutuh^b=97`OlmFIc z(&R^0RuiA1l{Oov;q3X%m2QrPpw;|&ZP1u%vz1}Jo<*LL1H(6r1Qw^K7W}~MxN4=h zP2JV7Q`?_ld3szm>27^}F1ZE#@gOW5p*<#$x;&2v+}&XJGFX7#j|mk<=07;wCJe(mQaVrEsT1gQ`Ux^PUs zv+@~rwFNV3#3^PxZy2iGq1H0UCG8=tf;hHXd1>0%+V6OI4<0o0RFE?71XqHf%?MC#lw^Dr2$kElzw1H`__H3RcVM>;*9Y&mo&aI$`}y+u$Vc#s|p4yOm6!xS4W z=SEkqSWjvC2O}5>UZ}i4JzyrDH*GPAw@vW8Mxl!d^J)QPALe{b1uGu+q7sk^wv}Q`Pqqj9A>a)SMo{C1e9B2v zNIQVftk*IpnPZ#|Ys-#Chm`S9T%-a!2>7!`!gUW6XQhs<23%gu#Y1p&40mSu0Vx z0oGo#cZYCZa}qU7-C+vfs)lb5gq;7CYeW?jgOp7llh@9!hb9jOPRJLh#v^c-t0^3m zW)^q=74`rc?4k*c_F-THT{T<{^X%qq3|YvRtV0Fk9qgP4OXFcF!|fA~=@4l7)`w9n zCoZJwIdK8WO5CjoD66s`J?frJy21jSN_d}d! zF2rdhF$HB1y>Ry@w?YhpI?{Ro+DK-%K4D2Z3!vT#1U}rVP~JYtZkO2yhmXuYdZ%la zoi-|ZhS!5hDmAF(b-hauu=oupf!@#*+F?J0z~3FGU=TehNZVpOo4&;Pd!YipBWj1P z)=$3&4Wo|8&9UKS-23~h_kS`AEqgha zUw=G1Sz>|Bptp!&#dGl7?{_^**)5?tNjK7jYnlXvXhxBMdcj&?eLV=VnR;f|phBn_ zzaKy3L!TQ6fK$iFG1G=bUYRyz7~3rAwz4YCb!lAAtlJWc%2VItVm+(jDVQnZZ^{nP zNHJf*^m*a~DM*qs9R#8BrZ5F6CWs?bvh>^D@nInwPO+tp0}T1)7$d@7v&2LEg{qn%{Bq9Vlz=CYb;y?x=U~I-MxR{4*`?g}rcTTmKQSK= zb7Q-^e|T~RFLX36U6Ou!r+U~DYr zBiSNu!|fL8VDTHRYw!#C@cI7Lhu3%5Z+IqrGwj_aRk-UEd1`Ufp4AX1Pb+Sv4cC_{ zgaLQ}pWz~&U|*NXC1M-9g9v0Q)S}1vV)#hl5_uOK%`t&u`E0Vhp_!mSKZfW$K0hV&iT#RBQK-KT}uZC=eE+$^4*Kwvbdx>~JXTxUun@!zesCI=kpotTq9RT`(xO2{})k3Kq=roPoC2wlA4;KYr0)b{zS3j_^IuK1${X}`LA$AA`_O!>xVBU47JLvmK;12psG6Vtx1;h?3 zN*m~u)zj4sY+47@Cv?sWgYd-d!=lO(%T?$jj6NLG)8M@&HLW-oV_~BWgl5A~!PVI6{e&*%iblR;I6S-PKEv zNH}-3Dg+fMc+a3u*y$tO0qsz^Fl^NDjw%_=sVz+>F%OVoh_gxZKq2E4e3QAPfNj#_ z+*QiG%c7;})Q2T!xF^O~rS@d?#QguwRuAuiGek~M=YhB%O+U!+EL{1aSb|S;x4Cx+f%xD1hUPCnI zm>V62gh{Hwk&1e`dJx)ff0&fnL z(sJ^&>QyaG6PS$o95q}6sXSdWg3sRZ|>f{`*8OLWlS|hdv9Up(p6KP6$)%3 zVv1GiWAl~Gy!kvb$aCmNOYp>8txUMZj!7RMG{d!JmedA%FHo}IP;*s&Lf9f`R@Zz= zlk;kuL{9N!El43b%zr6%&zBM71#J1(PUBi5ND43M*C|5vSh3Xm^Z$?iexuXbG*xy;-spRaq zM@yKGTYBOyN6i`_MreGqd8uSbTOgHrw$Leqm-T8$@}u?IMR^8uhz!B^4Oep^UMg9^ zNoy88E=Ex_wy-W`cM3QOR?NA%Il3zq%HxUkfJ}a~gn9|&L2wrJQufdq>Y4Fs0kOuX zZV3{uO-S#`rG?`qtgs$#xsM(4+xI_Ce!2egGbs~QlH7iezLS4Z)m42Tec#*n?!g(G z@}ko~7a)Co*P-Lw8xL6tI-b)fau21Z9|-1A-22^6KmE?;evLzk#V`mj95l3238uGe zU&~Ajto8bDQ5)eTyK@axeI{}1vEyvb;Mo;$J+t!T$r)_I_76hlG_1@ockiiS`I4?aOn!Y8UpD5pTPj@@hu#R$Y3!<-`Kb6*BE zu>t-I96+m=QmQa2)Q|Xwx_)Cfb1+nA^U0VjkDwE_VyPxYk@-vZSxz39uNguTIkQk7 zELcn(GvHp}a8yHswwy4&bGf@?vcQ9J2SPu4<$+MmzVx`{b9CrDSaE7ck3I57Fk9n) zaa8tGtCmg@c;KM$lh!soa##oo_~9e~3vmI)WdrtYrH_S~uT<$uqid_hfF1NiM^M7z z*zZRMS1|#7W0>t0J$-^gbJhfgqG4ph7y#!ry`gbQ0*u50iO_lB;|5Tu%!yTSfS6fZ z*v!Kivr|PA*qLra0xLd+qx~iH8Ph2~z>X<$(1Ke^DpU=&-poR^TunFUS~(`>n@(V+ zM%d)D)%fa#W<{knCYz;P;G>~0%e;h4UN9!N&cg3_#Vlnwoq=##IwsXSf4P|q;utgI z8YK91j6x4$r3E2mev1l-GLmn#P#B5l#`R8{6|P71gJ%CjphK*S70`0C1H-~#DPDmn zbb84)AbWI@FoaFT+sZ3`V#4Zr4#%PT0JOu@K?y4ubFsMItQPaoR4KGLJY1l4g5j)w zPz}?QgzC_qjPO4RgA7K{=SRm;yUp1Vtjf4^g6Psnoc-COep^_ z#>vOeY9#JM<9hba11-VyKz`EYs}FD9S6Qg=HDD#MWf~Kp6D+~>fQ+}C=1POYjRIox zPzHDwAGDxPKXXh-H(s0i8_lU){5Ti3V@6%tx&&&BN+NKfdCr4!@i)bxmes|BopT{) z7_5U43`+;(9F4pV22GrEAw$fvBqWzLjsLM^l~ZqUlEt7SEE-gXF`5Xjf#PL#hNx7; z7@nPBX}P+-m!9FB$l&BVDY*fJnX!{waucMqjy@JsR{L1Ip|J?V7Sql1GY~Ir1fC&u zc!I|Bxh~kpn+E}OQ+b)hT891C^+|FaBkCHV1YLs3?HV~igt<3~IxViQZh+WKCZ?di zZd%nOF>w2$dK=V$tQJnHs-+LoYPiFOvu)7S#55QqIY@kNgD2G*N~0f~!Z0bND-n&m zW3nuOLPZH;7~Aukl-kr^P(svI+iP(H*BFaQ%3kAr_^%xN#vRW8Zc6!J4LqpHR3SVN zSU*}t-139tPWLKEBWQHfGc=2lqbE~4ZA^;&hqLAvR-pV07tFhb0JEIA43Nfi(4G-i z7)MOB{-Y}vP}Cd^+BT*pNDRA)yG(FG+G8!9RZMNWS>N*TZ_F$=MhVp?G1;V&kxvlb zfan#tMIZtD^6{`gXFBpVR4^FWE>lt$SfdD~70XF&kzh2LQ_h^o+bl+ai>A#4aefXW zrl7@;&C8q2o(B^c4;x5GIc@~uUJ4nBZ$q&Y?sk2rm-X3u@%HZ1`rZG1Cs{+%$_a&y z^eam-_4Ty*=%T)P;pG=Xs|qVA_m+QwH*^c}W`Y_wh;!*SX$+hPzVX`9ooc%b)Y{raRDRTuosvIpY=%M=XCw}+AT>MA8G0)ZAq^WZ@ioI$9ks@C_wry(tkv{%i_L0 z3Eu9SK7dGDI*uQa|NZc+xB6coC5zs3edK@_z^2_V@ul|0wUElq$FYrit_v-z2^Xb)x&p*Gr#~}g_p+=_? z>T1}W;LWwdeCpy1Lx)8a(Ht&*XMwUMVQM^v)3zkt#4KRGT9y$`F6o0m4hBaDC&SaD zQ~WbH=pWvpQtatmp?aWU$SAY%yvI6Yo#pTd5f5pNmPQi{yi(?(fN^NSPd4lSxmX8S(}#G98EyU7d3g08m8|2pvna6c&i%O zG50c5baRewNOI0mH&{@6TR~~TqZZfGRC6Yn1_d)+=_R~hHat^|xI|`(DZk0BG?qd@ zyROq2rvb5D>y$C%4H-?Pi9bH<{qFty--%uMVf}2i#h+pAr^h28gB%Y-iWOk>bo+yG z9Jy)l^$F~xLybJA zQ?SfQmEppCHfG$LNx;OT?@e9fY2(+c5o5?iPr$peI39;utbPU3xDs{`j2rgjhh)=3 z5Fy^Hql?e)ABoLJCbKZjtE7Smmc+r(D%Z?<5J$1upqMR1 zHW?V_JGuhdG?^!YMY76qV;@hS$nIc2-0`4@b+x)N+bG4ltDDyb`f9)a(CW~9wPO?y z`fA5RuWa+xjz>q|`0A5yec~W$dQ}Z? z+hdFpPc9Fim8NwvTF>Z|52X||>vKjGR0Q9J<}54rJ)ElY)pW&T=3^7@5Y|<0o)R1g ztaIuceK^_otV@GW!1*q~Xcr*tZk6VZkD>#=t&Dg&C5WK~k_;q_6)Cq80)PHDmaq)- zx&Qf>Pj`QVt%9WI=1;xUF7L|`43Gb^UiH7J*WgdRn`>5V+qXy7F+b@DE#K*%>K7U_tQ85XFT=l=33?i^^V2RjZM& zL!8syk#PpmtE+RbTVLa+plfCA2G>fs5($COO_SNMGY!3&(_B#sJ>$zYxXd7&CRmnq zvlA}@uB3m;h;o z+%$0RLFfC7+O!28z{1U6ipGqbo6s$vM$r3!F03gl3QrDt1(~rHo?LQMzggElM7f7E zdHXHDA*Y|aPd3RF0LzTl73ysVVk0=nFiX5&A^Pd6pMkDZik4P!{g2O^cd!4Q$>`=_ zlSatb2ks9XGK!RlIJwV|SM71->VQi^Pt#pG?l#b#mi)ur1u3;BtCPZCe0|FT+;n~A zP)^99TKZ&Qmn%>*d(eQOFD=Or5x`Ekj(>b|75&fLUfFIHmWP_qdxpP6+C>KT;4B3Z z1PP9z%!i>KKhGIr({b4dudPZ&c)={Wogo~6l_jn40hY-@HU}zmQ&#aV9;yqDsY23S zjA^!+lsTJcYvxz(`4sQ&p&cywWQ>HwRir8Rc7hb7Quv85%mQ1@npIMRey<=6Hl6i} zh2$^Px`)kUEp+O@%sO@1-`vT@e}} zbtln+4y2vnhn_IHj&6HIMt6j|LgGMVs+mFOO%JC^>?}MYp$CO~6zEn&MDR@FR8w}f ztoOHX-n{!bxcZ0`ZXZ8MuK^f}E_XnU)xa5^cdDOSR2?9c_f~Z z3n5;Q*_aADPIi(3a}Fljysy>MFQ^8mdG2siGGQ}0e)rq(2xHsdl=Y!tQx!PW1fi@dnrJZ9tTm{f3Jb$jZn?E6Etai7|sw}FGY?%f&U}ZLF(pnK#HzIg2fgxWaW)j*( z@pR%qN*Ij>aAVNEB-!W2O)(UH9t49P1se+6JVdf!C(Y>8tD9*rPt6q2Ns zn{o2wa;l6XP=y=+40<@hs`GyuB4WB-Vo8%85=_$1IHm2>_$QdY(~fNDi!UbYAzY7# zay=$Z2fCFyOuQS?O*T<}3u@yQLv7Bc6)jub!oQj`0I8+00z+@j(C}<%>cjj2jfVTB zm=UvxP7&!Y+QJ9!LNePXgpDVf@O0jBYcXpRoHWc)uRQMBz`f=wJaSf6)iP6#kgzAx%zFNwI z&Ek+AghUUkNG_Ue>_B%VP_hudMt<~;H6eV5plq> zV&-2$?ZgWQT9vAL6A>a|+wz6O(mfVo)$J*jU|LE^XlF=0Eu~|xZuTuf#>08Ju*vLf z%ZV&K#~}>s4;#u zNL%8|r_cBEyAOZ6|7rVVLzfkJ^?gpgZ?LHI$@K+l!aUi)>2QsRhjmq-jZp^fiBj50 zd08|s=Py69Wl#CdMF^ZOnm*1wgQZ^jWl=z z*7OkC$U|Ht!P$g@?rMT(eQ1P}Q;#)-jXc0&%Op=uw?_^A7>a<@&f_ct({fHdi(RS5 zghqTgnD&4BP12773Q;V(=aVAu&0!IreTM=#-sDv=^XWY5{W5TDBF{Gl$$Wz9s} z;I>c0cDT?*E5pl>!6@ts2X&Mo))Bt`@*@$B{iQg7*1$=-9cPX;)> zDrm+M$LmV*0F~}!1hSTWsF{|0JdM-Z&K~BV0hx-ab8M`Rr|6>BG3@E(lG5Y_Vksm; zQs1W^B}9ByK8c#4nL4Q4*@m);Q7qyQaS8@csAkT^5EO0O*-nl!PDYi(ja50MM}^L1 zi<*R(Y(->Da~p&Xz}7rKt3CH$PN#%J&^nkWOjyWb>x!~;OtCD&L;Po*l7 z-lsx_$&fK7><Dh??c z#jZ26ZL(fOQ$3i76H}a*%Y>Vrp$-XFC%jPiV+3Duirdjc?-zb8v8GTO^-^OsH2a2E zCpb2~H(I)}n#Zfk0?+_y4yAq-Zr3>=6DBO-4%RXNfU1QBpan}H+X)`DWed&qCn94p zSokLYELOz@BH#TorrV^uzyssRQ&T{ZPOP5VYb+?z{Mr%VK|#_O4@9{zPtPD^C#aW9 z#g}#X52=65dL41Vh))AciK7lt_~Qu@SznR0XM*tkHy^+J`2OzE;UAwI9vmMXA0C|^ z_6LW@M|8^`972aij*-O$Ca9t?M%pY^y3yppusGYiY?~$BCQB4-As?7tOIBhKJ)C4K ztkn4SoCrf@RU_L#Z~N=&?r*nD<{Q7@!^6QToyPTexq#%-HghA*kWDC6=2Wu(NjK@G zyKX{ujr0y?4o!8^;K^FG!O*2POUym0eSR{%UV{r5FzT131wrpn!wUiZ;S)o4(X2>b z-PF2&{BRFH|J5D;A`z&&OyG=Z=YAtgKn7AEBQiWL#Rp;ggkcUVPb*%+Dbv?HC-wEJ zoZB7{#rN$3#2E{$ggX1WhA)`TF7VB2QF!$e#m$CC28fnXBrMDEVWmRRCbe^*w=@6r zp_d)4m6YICF8>NlW`bR)!1iB1>bJ_$(R>|Vmgg?J=`o#PqZg&h)&;Nl$)QA zK_VkV_@hWLT-e`Ow53ikJm6i*FznkOYIJRv?(DaIG7~eXQ&&%?3sD=+O1ot&!e)nm zX}4v;kccKbu0Zmc;w^?m1sk18;W-yg0Z;F@Y@|)Lz5=yoxs!n}4ZtPG=Qi;Mo99={ zgE8_wdF}uUGu7gnG9R9^F3pw-f&|N>^w3Lp(2bUGL60-)(JtK)+Q6>YB$!@fT#B-d z44NTdHB8;P;14VMPF&HK7hZHTxhUHaIwlE8*$%$qrj>K+A)|%d(dj^@tTs}swyy3; z2|SwOcsS_g-$=|0%7cv5aCcqlj|=Omoo6a*dW5W$7~t{haQg#=`^-z*UOrA4 z3jOHK7xdIDsNz@GVc5|@Q=TX@W0W0jJcCOGQfHp1;x8{iz2F5V`aoG3NnHF)Fooiv zR1}wVWjNR@j)yuuP5(We^1S6oiic~2lc7KcqPJ5~=k886G#awu>55YoB(}_&YFC(T zKD`A;Km6Zs;06`J8(=djxTH_^M4wF?ZyT&q+mQW*GZ-k>`Pt~{jTj|Re6u7vrQ89n9jH7`F#M^^Cz%?V$%^I}S#KR>8&{12 zy6wKeS$(&QTJG>1En#IPq)a3E5MzfS`B^-_p^cl4QngtH@=3v)WJ$2dqkhd*#N!>5 zm%?aWr#U}B>THz;56g3-m{2?(K7YlTBJ{8rKQi)Wt>Dx*u6bg}*yMiJrlzLGrmj?1 z3e~gI(o_m~YBos=Dwnsu&y&Xs+dSC=ZTnR!T_pT|fmCGYGvpjwt*J=pAM}SnDGNXa zKY~|SoomFL;ySFq94aOVsRaB1zOx*Y^5AWHmMr#}(Y`T#k})7nJfVFGWpUqnT2xAT?bfyp^FN|7ak=6hw-`fu^#e`NA8+yG}Sccuxq!w z21LVzBQ6Ys1#b89`T|n1Qcl^O8*o!+obzIFDogbMtRu|PZr+4_v-DQp;DFN#k+0Ga zYzrVYYdzu`rZHzNHZc$s5K`N&7{whu_!4`qEA@JMk2eH$J;vyA%|dkbplVoNZ~KNq ziM!oGvy4j3IA$KuI_>OZn=mC-?%snfFz%xCIo+|WEg1WgAKomkW=K!RO20Y|A)cVn zUOp`mh{f87u4CcvSX@+Hh*(WHDtLWiEw62T%vY&)3(-EKT6YImYZs>Fqn@$o_rA$dsT!Wo30|G5|^m#adWpo-Chfn$_?YAd=vVAllLDMkYUS${^#;b(y z&fS-MSt0d!F-SmN?2&etIsxi-m$PdKu2nd61=5G7E3OCD6L>f#c?)~;koF=W2w7eo zHC8mEjT-E&&Ep_30wB%jyYd2dQwTRsy|jRO6ieNcr2v~%e;Qs4B~$|Hk+x`r zT-@D{K7N4`>XWaeE<#(U?J-&9v?@$2ylEBYNLf_^Y|n@027WbLg#F-G4||Wg`!UW^ zJGbPO4E;YzKCD{M1n3Cc=Q*ahS^I&w*+!4;DU2T;Nw~95|CpT|jZDYeXdOk zUr^dIJF1b_+N&1f-wBeL23e(yTYfqm;j6qF&M9#sEDeM&owFUN=u=~~$U_EdHEL`8 z+4*9%aaP+f|Ju^_c)sxdwWRmb-sp-FC(MQGg9U}?qdg@_Ars{@oP)9>ykx4n;2N)e zgW3AUJ3(S&&Klb(q>Jq3uYpQp4Vk1Jmn_{JO)3HyrV>>%p=} z3aBG;fQ&6zB|bqC#0O#Y68cMpG&N{sX;Ot5o7>P=x4;^T25KAA2kMOkWpV5cJo+3b z%D{*K`Th(Y0cD%kSG9qTFJL%vNO)Wj_3dn>w@*zXsZ`J$Gb1LDgG{HD|JFTzJYpJg zprmpMKAcjo^I*LM5JE-f22YG|L1glApN$AJq&`)efb_$sh@o62h*1DY(DXyo#q%z^ zg4>dk>*2>CVw`di^f<{^C!W{@>sjP0Icev!@l1~U_5N*vb(2=!JsRA{Ct8|GQHjXT z+c)Z&n(9G=GA8;GXiVZpZ1%{|)Zj#-3&T}~6}RCako&i~L{{1dx*YnE^gx%>uXpJm zf4$G~H@pgo_`d$2!O=Io?Wj+Gf+RMos7NZ71ZBNn$h*TiJkMwvtqcz~CZh73jj{cO z*`tvxG~{0|BHU1=+YP2k7dC~$*LcWi<EAf%fDiGinhH1{5DJBt&s9U`?4`o_%-3U!lC4KWkiYf{hkBGeW|0B#*KA_ zUeGs!g~{U*+Lm)j8Hf+;QZrySRhzAJ^Bp?8!r1~%j+NNzy$&yE+s?;;p z_1kBywf8=c%miik^xSBLEg^HCe4Vq;em}ZKiY%cGielx;ERljwLbIbYsZN`I^ta93 z&E0L$K$cAylDqle>v+bqxEIX#{N@KpSGH;Ve4mYQ{K*etpa)^?!H4JG?%sc6H&;5K zV>mm>w(m0dZFfPfihuhL^@BG&-$F6BkGlxN)O$&Kr2Y`3kyk&Yi3wdV)e#`%Xai-k zZQ`D%57Nx`65JY+0;$zv3&k0huCUMmJg~7E5?6cfBL0lVq#b*2)(( zpU@|1+RUsxNbIzDgIR*5`B}>jIlGwK{x=Ic#IpOcu)DyLaLQC^tc|mHc6r`z231TB z-!#taU9c0SSRlQ2$I?}ZA!kVUf&C-JEq;QFYAAtq+u!7r&0YBFg#%fx}g zX46*tMei3cYLqCb4UsUdwyOYG@16(vD59m+gytF_=qJC%f8bj<0!VA4Ts^U%{|KOt zBdsxB$aL=0@Op%hHeK~ozK!EYKA~%!3wHU65%*W7b?_V2=HZdbd+L*!`AilXb1DVI zEwZQX*l2La0DW$A$9S=T!gwz~yr`VGyeb%_Us~pLWacA{ z;71rv6A@4eP!DPv5D9aBU$!+#!|bu_4uG}3u!qHwCKpNt6z_H@Dzp%_O`&LM{%ord z&#-M8C{TPPQy)okcy~oWHBLhj)OoQUMFqjdY$3gAO6hcNq;+(rn?_oPBo~mA%gGj< z^=Q4eIIUzdqagrdQp+Hf%>)K55Y}T94gVl-Q$#Y~X#SuM&nt;+(F0^S$W1_$33xi8 zt@HF00eP;yiU(GSCu3M$re)#@pPkwp=uN!40artKujC1a?IA1TA_c9X;3Su2dC~jp z`?oiDZ{FVGXoKQTk{Mg3wgyDmt>xWe8>wtjDqLmd-1qg3huyJbfC7Xk=&m~HF;rN; z5v}wQN!+B*SBP^pyu$3R$*zqj1C=8i3;9B#)Fi}wx{Nb({2tib)-*`3A-1)G{{sDHaRRM6g<+Iq&0ITi zbFG|^cnCQk#Lxk{0ykK34 zJ4(hyUa(WRD{XVAK5Kew7NA=g78{6I6tRfWSdvei*{ou>;N?HG_A z7`;|4f! zCaRC)tR+zXEYn*C9<>xldV7;?FMzVZLR>)t@9LtLkL?T$NiaPmLYD4h*C_B**4_ZC zGw!vS>|tKq$=0rb0oI)y8{$i_^Zc={c|@3uu_23+vG|O$l3)}<1?hYR6B_~&;xSx4 zyJK;z3Cu!?D(8(BWAti9el5OsIht4$YdxlbkX_q&ixl*xrr3B~iQLM{%G6Y7DXtVv zP@8Mi0BUlaxgpns;k7GBz7PuiBx4MCVl~N`_KafAft*Udw^NMd)PDB2GQr&sG$*#( z?M#uxFW38O&XPxC`^T|YLg&K=m)8h`LD9v#+n?9BA8%pg+%-?xgH5M4*Q-lTdZb75 z*$erBUZ}ysOWCgha(telvN6(vcQ3By2ran8wqmVK`!2h&dwkrhYgyfzO}PuH+yMpX zO{{ll=MX(Kr}B+9%Znv4IEJJkE(@TFqPKCRtE`#!20|i=y&*~u=`$!u zI=@^o$a>Z9-3Om9>yNH_L&hpgUyJE*>q9Xgq%f2>_%8(GQ7~b1vS&J%7(X(ijHtPY zWjI>g1tNoT`yCC#v3_5)pT*Go1z!9j9#e9m0NIYAm8~dx`IJWpAwrTPCF>FdP5U}Q zq527KJ+5u@=M#XY3NBzBKrGhRE_Upu-?ZH{fW>y!teA@jrWOxaW?Ku+HY7j%*Q5<4 zM0Y}bz11v)taLhEOBPD!C_v#PURr5-bL8~)`p3#Ul&hKjeVuPmyo8>SifAQ3DD zRL7}yP!5~!77W|E)JgEn$?heJuc0^8FL=k%hua%e+E|d8wg9`6Z#(4Tp^GOXa!CgU zbEx8Zn!#2jI(o1dXUuac$4mil91BN@TD0hFFQ$8~JqGi&e|LNPJ*eYi;hWy~PBKbh zR{D|6^ec@My2MI=0o$gK(~P1ZD;FLC35u-fvKb+D!z9bT=R)DV2c8OrpD^j_6S1-^ zl-Tr3)G&R{76CAGEa54P)u_n4Wg(8&rVvog!`vW_NCurwvYKGJS?p4cZ$7*M)CDp} z<6V)rHF@paB>Yb@q^Pi9p~`b#M%qHs_#1=rt9VpLxG;EU6MCA`(EReE5QiF2%0jl| zbGbN6dWKo3*Ky7;I-u#hIVyExjpK-}@T61`R3rINmN#yu|1TbzX) zQ?hkmL2Q(hDy*W~L+%00uPe`9>wD;(O9{ZV#&N@xwl}-15d?A1I=K}7bj+6(LYk|3 z;FuFfqK9Ez;?C%Hjpz=BYzWr|KEm8WGRQZGHf4&RDQyKUpzyflorl3Yt3a7>bwP|8 zvZ83pVhL}XNnRP8_lG5`!wIQZgv~YXwOnnVPhX>5ng8oLGd+0xV`fCVZw!fl?X4ls zdT{xX3;7CYaG`buBoPIiZ{35}2J9^C?t$?>2Kdr(HQm5tF4cG9T(J$2;hXv+%=TmQ zb$|PUE|*ZfaP~M^2MjVEke(*jF}GDUM3;vT!fFiCpgShr@CUo8fmo41x=f-;5uGqB zLbnzR#w(bjCVVo&JxFY(v@9f;y^TC~yg7AyNB|aG*b!!Jw(REanJ-sRydR43c%XH* z<1_@9>xBdBh&E5N7OgSFEeUBbA7n`}pOX9SE6RElc z*yMQODsWPni_)QPDfBeq%6bkqd2@p4Z8bauK4brJq}!1=Oxz?hlrZk`k|m&dr>4!) zF)ZqN$^=3Sv%+sSolWGQo_mEV56iBjvLh%PFY#2&xQx{;7;GoJw!qmOnt6R=_vNQW z)wH81v}##&sTED6K)&j)(C>cn{PAJ@f=}JM3DGU!-T@&p*qQN_I_#3OT7)T2R|Qxz z+roVsW$y9m*#@yed1*{HYFQi|UnKu&-5ye-L`2a~H}BrvzGdJNwMaiKYUx#@Jd#QH z=&4AR(VpK8ZvYHZ2!rq`Wvr+!$Yl~r7Tf^k5Am3SrZqqxl3;0gZYkK}#k`^f>l$rn zJ{unn)${0+qJw>#dr7Lz`FzGyzn)H;G8a(>h4mWK>2dF5=9+@#6{=C)R}zD+>9Q{= zs-4NOS1Vn9N-vzTbvzz!s%V!6NW&vg77T4Whc|N!F8=FkR+=2==^Ihw(wdPlhca?e z+K?fvN7SHL1im{Dz6CRdKovdK+y047bQJhFF{#ij_=8f}x9tTUyBwddmzT?{WYT3d zFT=LzP*uroD5E5N%Ro(5mPC*Ws`dmfivZe#5T!ouB-HS=tzYk6&gQ@xhCiJk-iC$? zXyKup?Iv|rv~B@KLo)XZ&_qNAc#!j9QH2v~v4iwRF6W(sRjEGuOH$E-#JAzPjHphV z*9>OLP?~|0+B04Q(A}tUBP>V12;&CDvEJ4wfQ(ne;1_=6yoL`V&sCns z)q|9 zd?AcJx4+N?5|Ynh@=}{XY-V;G>OFn>;74VWRHi{sgGePFWo;8F!qbq)fZ(dSpElo} z@fDC?5P<+qH6@g5{XI0@jp~x}_!pJI1N-5z>7bF_&E%Yte0i`*o~hw31p4T4X)`T# z&Jf=MXrcaG%L3gzsfD_yx$S1LeCa!Qm_z2Ipg`w=`2pIph?%^;jys_O86HcdqffYo zW==;VM&`nGaG7N_1FB71@O^WcI;m3@6?IWm)<#I@<@(Ps5#t9pB7zHTSG&gBbTDd< zB$z!0h7hMRVJ0NMBJH#8t1Gxo*2^g5;F?8hu($JI63I{t?Cwb?U|iWv+X~EtW2VPDf#YGWrDM%hOpeFs$q?*FS0Up*a%GPPq+CNCHAMq}alZG21`%i&|_q9};E=I4X z6L>w4+CII0a`NkXt2M3y?X%kH))L~`AD-#Y^cl;i#{^*?j{CE!LS_S$vDPQr8DSi0 zHYMm4_Qy6SA?!3q z^WD(vzOxCYoyS}kWy>SDsSsA{KqzB+S>#4{3W?m&02eexNEY^vLqoE3sIS%tS15(| zs`%)OEjMLJ=)*ANQ4m`=tWRGTT?YWCznf=ucPx_lyK?khoHL^-d_sO4dHwmYO53ll zf+KXE^5K8w1rV|R{&%cY`M`UgU}@CuzgL_ZFPP-IVXZV05@?7+O$L5^aew;?^?~wo2N=tBco0iX+{| z-q<{uO@30t^p-?C%Hu4lV@6?V5%np5ztD5A%vRaSWK@VRDr$~Ym1Qr=3is}Q{^i5% zkAF=48}Ohc;5>?FNVwtcAl(%8nHfExrVqd3qN__dYbFQwxUy0?=8Cj`16^(X3f*zb z1AUO^Qi2dHuv6z7v6Ry!dXlfxVdjlLJu7;~Z!6k85oTJl76@ za=RTzjx15QxQPU=xFOA$zBrmC%6jNs(mvH#9Fi*Z1U3cKm547o)3EZW0R?wJuBFRP z-yp?ZhVL36?Z*Q&_ciXA{`>n6WQbZD$SIt)yldx zADHc33T^xZoo$UvjT@XU-#eCqI1FwVqxEx;WPJ%;PE5`eUgjpno_J$8j>^1-<)RA# z(uX_4E7FpzRj1XcPp#B6(YxN;_wRn}eR}ut&5!SHzgIYFA;~2JY2VG!6--Z)oNFyx zngqB4X)s?FL{bgjdVYYwDh8fI`pmuEaFCn2=?g95#r?g0pxq;==Qh*8&Aps*H_%&_ z9NsM*%yrW6O`m3}aZxkU2>x{$ARn1YVqOZ6KP6Uh&&yH*+nJ&dusKjk4B`^Sg7NhK zzZO5iw6LXHnJzU2nm3U1jf7-BcA8UMwbI%z{`sR zY>zxxzBL}Aj?uq3tq@e_8aI5{`+u85jOpfQ%I;#x#jpy>C1w&+uj`~ycL=wz=s0N~ zl86fRttqveR;YK!=*hmATkCA%e`vSc*zv&(3DL>|D|ya*f+`bE*J?qVTg?Ypqvs8E9fl;`-_qa!sHTLbyleByf#!=pcZeWqA3K1352r2{E z;6BbqK3O=r#WsP&Rw*NMHob`1ZMrM%C0OA6ix(gO63pC5V6Pd8-f^VQFgJQvs>IN@ zL>o3=4od~y^dcr=mf~VQtLND69K(N%y}Md2UaNr*f2T7V=VhW{)0kfXgC-V%|J0Vl zow6KQC{UW90BH_*hQ4dGS!*VwR3Hr|6P~dX$@asWALs8HH*Z39301bq8vR3U@0hiW zhzX)W(;Z}X~Jz22p;62<$ZRT1MnVA(X7y753 zv_S6N%h7gxKEV$XM@U+Bp@=9{%ingv{PLUW__tlc z*t6eo6_QSV!)tN$zvJ$HiOHGJ6Gdi$!;#0MCSf8WPTt)LDIbw#P{Kd}y<$&v1+k+& zpm5!8*GQm}CU3!^EBAd9mSI(WQ}6B^0at_si<{nSE6JDk+A zewh3aAKBv#ZulEM^*{Vm z{w=2#8DhBV=~AB(@l5)rj}*n&g-7%cYu76`Y?k6TB2~;qGj}$mTDr2%nsuPI%VJX= z0Y8?jhGjOLFYqcS+@TVVc8c$AzhwcJ`VA8UB4Kt%C$iTt`i6xePCR~ki8zaQ^n2^+ zIkqC5)01s#hHy>HPTiH@WJfVd6+!IG(RAvl{bqqe+@Z>Hi60^ZaUg%5z_dN-@m4|8 z=h6@Ka$25C)QJfn=EU`-@|?*RtmHYqoW({$alaX!EcG9KsQc)m1E2_~raP?AUKcVQ+RLb-fI06XjA8GkF@c8quqjnX{ z4AO%o61r>2HE9V5HV;C2ZQ4Rku0a0wc<2B)!Ri8($XNF(e^MJ580ira&WbWh`aZ^! z2KViA!lhjI52+S%1Ht?TcH_US3UfqknPUQW0TfHB$3T;=s#<|@U?TlHGvR8_fx|Qj zWp>b@&J~KvZ03UO^v!y`G-0>O=d~w2-&C4GSc<1J_C75Qgcx(zi zk9r!4_RMF~XB4$by}AcV#;qr?A|eWM3!MZh4RFmfooX1m+{ZV;x(31+ zddQYqeoJ=l9smiNEQA>a*AtYBzu>tNBM)6cufn;+lY-MpQ>d5g|C zJ5-PU;mwa0?5IFfjIeXnI9sR)u_Ggvwa5fF9i*+`o+d5O{TFB<`EK%wnF1%yuBirv zfeK6tV^V2xtdGhv{&qcL=Xxe-;g%NkhkemxOFJsz;7CAf|5M>#W(ii~LFKIqG&6$~ zIL18{xQa1`rP!U~hD?1`lBf|~Js;uUSb56B_t;1};l*lfUVg(q&ai5IgAnr6vWez& zac=XqJu@qcA87irf`vwJ26p{Q1Rbx&l_7b76}K*75)6!>$DwAJJ-)3D78AhpQL2gssh{E<3`RoRBo!m5zolspIm(WWpX=z_vX&9N66E*DQiTUtNxmu=j2LNcdsO+g&2B zbah2zk4HtwVbVNnIO$~(6Wb~MCMO6k$vt1X7wZO z)?SSZSZ=stU3FVCWjGf3fo>{a#-1hSR2S0+bg(v|NG*eF+uDR4JRTlCja+3QRVxp} zteLt`OCZB68*MU(ycDaU>jBk zI3t}`C2?139O=u1Jziol-Lb}Dkr>%z%#bf5=xkQ8LEQ%8632QBKaFs9+N`-v!&42@ z%bFu=i@+ODJ{XmQha-%yk6Cx zb#u-Dpk{;C>1s&wMAv%S8Cka~p~5QD$8kxJY~LWRX|}++NSo4a9=-BF=z}aRMq8)) zCqyJa2iukxK;cPR0U0I=8i;?jxb-RBPE?h45p+3as9mNgC%(BoPR8EE4|J&!50jQ) zyu`ah9%Oip6mU>(s@qZK5)tbEaY9(=_W<@&rH00B=)tP!>1Vpp9C2-Hq-2Qfgqb3G?--d|ro!}WqlT$ybq z5P@=LQ7;pK7EA_Pv><@&g1^0&cc^K!A7qfp+~q8hDDUiW4Sf z?6=>7t|B6%vhHF_#aoaNny8a@_iqS8<~yY@WWAu5#JDdE`JRjJ3q#KKBPMz@g~}#W zlP$4OQU!#z8Z#@92213_GKT%MwCyxux`0zC?V5c{QK<#{f4iKcZIP5MQ-ithY_j7P zcv08@?$)>eBUxwjDfha7tiG&m|4p5(q$D=ww$XE_7dI3Vfc2eb(1VNY%u$)ZCBVlz<9m)Q^ZP0jsdC>p(f3xveA~EXZ?K!rYVX&~iTwMFc zY0(L!e?nv`{Q$^Z^f1LvE@1k~R)@CwxMzgyO_!+TwMGOb`tMrn(TN0^)@dcT!}7UU zP291YO!z54phkFO3&3wE#qP{Rwdu_qt=XL;BMl8f3eOfM)40je_=_Ki8iV0)*C6Nb z5LbCEtc$2{+3_a`otsvM(ZtKJ1qjnTN&s`u)scx~ab!<{-W(vYr#=fODLBL0#e6_lH)kRc;hw{7sunTfKBPkG4W@yp@iGqL&3O2vIVg(X$<;F?OCuJrx&$P*R3+CgW?Lm5u zuV86mW$tPUGMZ)gu2}t)z;O=*G`bT>PgCd!SE*LJ?-)FC=YWiBc6nzwK!Eb#G8wMW z(e-i(rs3g(+iq4cMSgel_Es+#YDy%CU~KPz#4@lYm5Fey^H*U!4W{KkP^o&G;IQk=`$SWTRQ~j*T?AqOX#%V4h?PpyGEZvqdW-qjKQ2H8#X% zAaOTF?A2|si&2W%w*t$5xkS0(vh&L`V*L?;Z{VcAWyR6A@oLd2Lw zX$ntoO^14SO^wlVG-c?R^aRt?NS5)60d72tBi+te1+QwxJA zzK&Is?vtFm2iQ7~h@{9u1#{6tsECN(+e7CDem)7xCf{`inFJ`mZxOcFq=y00;8fHe zy;Y{yD8t^IkB$NPDMpBW#r!}M3}40iVmF(jFEu1+n3GtX1uD}kBnkm95`RMlelNSv zv^|vVV~gWp(h)Rub1 z%1G~Qt<0L#X;Tl7=EOcsxBQYOiw2>V+}YA(g>J^PIu(fk>4^zp=#Wh>SQi4abWXSW z``yXPqeQbC<17?H@C)MRDI7j{MiI*G0lS?Tm|%J>-Nlfy<eDC95 z(tle6Qke4qk<3FhmB8&_vd7x$d)#%H3g%OggK#{h}l+CfA1CB+3*$ z2vE%f&Cw^jp3#|8Fa2D% zhn#f1ghR9}jKSDUU(f(@tuHQ5V1l?uh3ajH3yg_@u`3Wf^LZU+baP7DDb*#IZU}?PU*Ej{^wA1}>XByE zD9d3~hO?xqbsEk*dJZA7-2A6vBT_LXWe-E)hCdqSOmIPA3AsVvdE0oCRMSwJDjd9oQ5 zMz#dfdhW5(6E%wO+BZtKD7HX6YO{00OdAwq^>NKxv{ zf0tRB%&hb>WgSrDaP9?qdZYzUs}=ENdU|yRMOR3HDju@?Otc92%XMxOc0s$2_R#t! z=mFzINLtZyXVxnZ@;)>5cu*y&YnmnX#5DEeAj__EVs`V##yNoI)MX6%GPZBLqvK{RcN@F>%AKjBdsQZVr8 zYBNV)dul$@$Nl5UL_6Ecvd+gxvnuLPavd}_EC)fwI$7P+GZc-uML~)0dxklFcDiLm z^l~D*in5(8gbCYm9wtw?Skd^9nJ^$7jAKYP21m~trbh=($q3rX*nm?GOc$W8CX5b@ z@OPgW&0bbD1W%s5oxfXsc>g1pD@c=@<`H3t3Xx+|vHU=*DoKO3$;dm)w#fl)ld?sY z`T0IO#BIu*B}f};^8#;;8l}f|sDq@k1kwlb78H`9JK*hLPRhafbSb1cV_U)UlaK~d z!*sWT#=2zp^<8`AFi=s}chkTXZz2IUQlE2VEfP%kzlSMWN!V~Rd8(Ig=%3#J<@a?5ww@I4JI>%@nbzT;ccT42TB~H&Ys(c_6^d?t138&YfE4&AsT9W z>xPQ!=80L(O!?nfr2{@^x;hj;!UcGR5QPobqg`Gc=?junhW0n5i1yUW7KDMU?+OGx z)p737xDv=BGTo{e8nGlluXm?>65-8FnpeX#TwBzlcp9N7G_uOP<9q@}xZuP?5L=6> z)z{Ot#aoZhr>Ix}ZHPS?$;a4OmxnHM#@UCIR&WrY-^oR&BUMYWevS7I_!lNLp!}T2 z67wq}fx1i+D9`J2qs>@0UqsZ>X2lYkCHbf!dA9D;3=>Sl#a3a8L1G9JQb$`WQRg(z zeFxoRba|P2o|vmQDLE{v-+_>h=V;Elu3kSC$ID>dwPd45ED@gfPYu%O5)T_j=qCm`SM=E$h6h;Ku`bZ-Aj;;ZC@C1Yu^20InRb=hWXeX#v(N zFz^_d36;00wv`YK)z)yGw^O=GFbxk`gfZNjCkWss!uGjA((A}!zkcN)X+SVXN(k7X zUBkI`!1J=0k@IRQwzhK1#=|{2QycgIHB=#4K$E3m^#Uz@kQP35{6+>Vn>wsV z2z|lqjy*|5g$JvAkyeJDCdh~cV44K2c_i&QLGgk!r`GWHfbv?AA&8=kmK%Buqreq9 z;PO4GCJs;z(V3BJM(z_<=Ma%-uOeRfiYe8tDBQ}9v{Pb5Q4E1#Rw04V&(BaMaSkOTVFUN%^&|--KTfB4$SXi4?m6UU5*Oz$ zv!AjDR()REzZTCr%Kh+^Mn<9>TN_xF#N(lHehP!kW`JioL{Qm=j0?+p?CvYGGFyF~ zQhpcm!6L46xm zdTq5GGEi%p#pPc9>GMGxMBLA6yPnKvGZfC*^^S~>f(lAps)(~VY(NZQz;ic5Nm{mW z#yrSL&bV0Da)v*aRsb$F9OD|QhA!+5k4_m;-i2^)Gg3OwtDzu6ywz$vfn+*GKVE12 z=cv4om=p4T=ruGltng_yeD_l1bB{wJ zg0;!2IBgSHG!z^J?LI&4BHf3F{V_?mCvgwbsSG#ygdnr&0sOdIBTw`gNYO>bjy-yA2{G3q zElb$!nKnpV2x4qowmCV*xM#YdqnA!o0QU?G#1$K zQ10H}kHR_HxkJEY=|^kN0Qj{! z>OC&@6-(n)z%|@oyknnxR#b}e4BWRa=jd1HWsz{PZ=7}!)_wyID$M4q?MusDF*%R{@2g=f49Tj7r{%%&EO@Sc)$=F>LjbtYxdjiNk6I2;XakW zf*Xn=F=gULjJ`Ho4O0S1Q4oOT5BO1oC$3W%@UqbVoHuvAg1YDM%c#LQSYr z=*bW8*+u-87H@npcZ28>5&o@HYyT?RC1mCTwHd3ZN;=|nSR-z)pWlCCDCQ<@kBUk) zZf0JzqHK6X`JMB@jCWAO%Wav@`RH$BE}?fIikgC!*2%gnJ(t-{MaG(aMloH?n>8w; zAE@{H-QU)?KVILw^&C)L_RsC>P{Mc10_at$DA%C8*TVzd&F%rbW`kfD5YW$}D0uko z^q0#|KR@jKo|-VA;N$qc0&-Z4(L=mrdaL*X`K%87bN|@;x1JZ#bzWt5z3x4mU_xPS zqj@Kt(|bo{~hs z1Ia(Ek0tTD2!_Ct54HMwb<+*_aaAp{I4xR8W^S>&%kg04 zI~#3W&F~V%SdkA%^JTrLXn8{Rqtc;{ z$9tp5G3H=A{tRUe_1ASF;tPvYj<>dV3j-qOhvjbTW=H8%o*!-H(C9kTlQK}Vq6;is zwR4{YNP{WqiA|5zi={E}K6j{gCkk@zQ;r)Tn!9|`FdN`!9cHeg8xmrHFdD6Y6z3D8 zW>Y&R+32Kio6^2!c4jgC;5rQyI#}v6k6HX^TjBXaBg!5Qx?>LbFtgnh-i)Emjvr zpuC?kG|P1j`AqK0xH;ElTYzkCZZuo!mmoPfz*R6Zo5#;^cF?>D-^=kCFx`fPRYfPTeGu)2j(kb%gLJ2l z^zH_|@}O7&l<;2ywe)ZC2J z+Vh@F=<#TAq=^^Yy&I9qO%v~_g;Kas4j)!HjmnG}6P630rlvrRqg6@xj?4~ECaxHZ zNSX+%21DohK4r;In*^F|B;P{4p%x?l8mT0G(Q0`Six}qus<%Qs_c{epwk78_P!FUP zDY?@S<|Y$L^Q0!yzPhO5h8MzHhb%PMEl!z@)U_2^2HT)|Q!R<9cu0WM1fYtXi-BPY z@=}E9Q18IK3+?mqaQ!Em{v4m9b6O{a+QNBLo56%<3hE$W=HKKB zNN1o>g5`Cvtx=eUZDQ~n48wOmmk=I<-A_=FJrx%I8um)#TebZ(!oPZ~&S#=7_S0X1Ovr6_h<78`M_S8eyRQ|R z8Z??uXsBfcG7Ck&9+|sTk#k+}*e7L>WA9+djn9`>;f|Hu535EvAtdbY|y!c8&gh z54HZ`kWbc#V;uGVA3KXLI;R=Ac;AA0H$l#wBYZdU-4N4=OF6n%JC+8sGcbJbV=_L6 zo3<>Gm^0##_$TWCCtSOQL^U>;vqP6)!o{uVGNU9(sKLr1Ly;^@0oESSYGrYsJ$15U z`*q+ZXmz2~_G2J`$d$))C?lQsFL={IA-jUl{2$fi`P@r9A;&XgUa z)-C5_P5y~ctsz1LN~xu8P`qgkAa<82hs3H8T+004AI1vj{9{6KIlyo(%N}l9!glaD z6-we^r=hqvdgaDwnQ80{E6a#^xT&`^>6(yari~)VpJ*QDC+Fu8Bo9*%8b*jwm)K4j zfZ?)p~ciN4Nsc;avc!? z5Poprn^Zzpx7D->asj+=akOiTu~N}7#?@le0Er%0_6RU%g7#Cdr<2usxkVdmmE{;M z7_KzgO{dpSPI_r1zJ0U@gPs%sR=Q)n=5%t##6F!Y9!BAS*)BQzhT zm<>6PbhXE$B)P-Yt{PUL0whY-J~29>*gT*69Sq9VnlwXnkedozghwh#B1|TE{{hyA zZ$JGAgjoh`z6$i7fl4=!$hM)tD$M_GpBIXraZ&`G$ZY}5E&OO~@r4^BW$PYyop zmw|}=cDN)0o;=1nSv`#YhME{ht=)?h6+8WPqMv4Kij9zgN6_jY-|lh`JhrkFAX81?{vxwAQ8O%QSC&sE#eK~YPbI(DX>qCU*~ zr~N?aWXgn9Xvx`{gFg%ghetV?<2JDnN!*)J7QOz<0c=21SO2_YxcdJxx0z|csZg5miSIVNqXs`K`#7JG!4l}_x} zG^p@Z!LrfKph~zUcFN#LfZpCHpID0{9HnKrtS=zCC=`e9hFr6&DWVRmCAn`1?vQIY zCP(PuXV1b+|FA#`z1DY%i{Nt`Rh_FR^7Xq1sEoFUT|nHMpnNG3{Ql#EFMj!+(HFlu z^umTSCgT5A;6)K`g3qO>i(sV#doHXj9)O{i%yk4t7{j};DZxq_=tmSqH+VM8$vT|7@J@?57Sa*go;=x3hqmo4 zJGs-v9U#4`-kt$uQ?wy4`P9S721eBE$bD{ppchnT+v*CAlg;*mTE7n|pgKqizHX||q7k?8%EAyqQ};FoRL1sdhPI%im09X0j41Kbcc$lvw; zaS*q~;oo})aqkrI1n~nz4P{|)AKdrRzI#3F{g*!>M6}+hQB=XgNS^)SS^Z}^JUK#v z1!JPHl$@@?954mY6Di6hVvkvdSKY9eikuy5b+mzPgBD&P!|H+9lI|x9iiJLm$0#t_ zjC*(lODGKz%1Y@9fKX1=K^kR&5ny>{#)t@seej5s*awe@iG6THPIyd3>)mkc|FrLh z&-zdMZb$za-tFOoU$&o5KmG8->h43Sc_pe*RfNlDh5Ci44Y{>CvaONz<8#%C1SLUR zFj{p8r$13e6bn7NHBR)X*kh5%?ygxg=pk?bWu$08shS$))4B4J(MyzPagtkw;YUY>J->PP{oC6QGB?$gW*t)Us>1WeX+<&}pKp_9?J8~N zN}%2qbwT-MmlKA7ug>Q%r>r*6w;E@0GIKO=yNacS6kxp36&628>z>+~o~@S%&Mu=} z`BJhXpjzD+7E@7CD1`7NV~J|fyN2b(wg?2PqYVctiLoO=VbitvG(!PFO%rTi<#%g5 zTbBe#k1my|Nbpq6g|!9GWHvr$Jq}<4bQJLmxQy%tO@Hc?H3FnZ72FpNX>e-T3ae6d z`K;z#FKb$3)mvGw1c_?1eQpWH<;H3O_2@ERP65jnWxG(g{Co>T13W+PzrWRo!T6(D ziGbFa!=e8%JgkT4DY8~l7gzH{pvw+@GhVxq&8$j96a}S#w{DPF$hkCY_4N~z1LYaq zyoM_v0b~M(Ms->g@9aO>-dDX7;8eb|n8!|If=#g-ZcYD%!+vGvOt;%uEI$`5+czPV zlqbNR^JN;vLvZPT=@mECxz?>8qKZUgkP+Un8}a$rS5R0Nt;`qQU2IPA6%03H*-Ke%DcV^ESqOPZCd+wml+23psG*UDkxCuHU();f z>)r_~aq(@Xr*7VV`taQ?-h9~8xohkqk7K|&!#1zjj@S}mRyxezWd0ntS&UgE1Zq4AXJF#C z=ZJ~e^<2*|+^M|CLN_xz432u$k>0jgXK5d90H-y~^!5f`VfOzI5zTHJmUgq&@5i{# z(P93Reqp|2*#9~_$~>#j3{>p{RR>WvSgsgNiM!t;S5~$Zv`Ydh0|RBAE7R~;A6Ukk`RLgRmZ%o@goUi0(gKx&R#7p~jMfNoud9^g z)4GW_m{xb`{^8Mf**{c1g9=#CoZf7yc~7@Zg1j6L!d(Zucl_I}V)=wVJglmdE7T7# zjHhdI#=cuwFtWoe5NU&LR#Uj{6f1K+KRfRoR0N&&UQ+T@ykS^LO--2QKr2qtG~W!G zOuvR{xRzoA?<1ObxFs@<^lgN1*&UH>tMzTng)NweE6ZMleR zSe_|2WMY4buyHOpsp0U~S^7MP65-QmT4HOM?oFP})8zil9As#%yDZQVRjk^!RZl*P z`kZYw>nKpU7Pm6*nt76@P}LJe{k!INtYLbgY#_zwFVgv_kQ98*~6gM>;ShGU^1C)bHd=1*QALD%`38vacg`%O&;(Cmtn@QvXF3pJ}*J5sGEBJv=0zVt@$Z zpqFrE>#yj411C@p5Q8wvk_{|z+;uYH0S(iW+YuPvUvJm9Kfk}beR=bj+fTn(=28aU z+*M%iSQsFcG6ctn*8~6f)B6v1J=Ov@kwc0XyPY&V%3rMGij9KhgkT2(skBd5@DNxH zeH&KYTrJO!(^8?8ASgIBS*M-~w9|rwJ-ei6h9Ar(DDr>fFx_-!du-rW4oD02aXEI+ z_rF&fY5?=@Pf-yaQbK}hc;3l$a=NmvCyNKG=o~n#(Mkwxv}ddOOq898b2NbBH^%O4 zM)N_Vo*du0=&a4kL)r9z!miLGtpLH+)G!mB* z?lBi0+&rE^Vqy*)Z1h{?`oLb&qrswivf!28d%KreV|3%j^xMw&@D9&;p!9AWnRN)y z7qju}WD#*gQVXorvZ+vUe-~%V`u}dN!b!H%|*D8HuSIxgNkl@mm|- zLSgcNILSI(ph0mpiKJmMW1y^(b-CQ^yNtnfqW~C%JaoLo)~q;Dr>o!jQt9ds9jh5k zqwSf2db6}M8I%BrS-oMJP`iZkI;r<7I+ zYQ_K+1f%&Gn+w;#vg9as@4oImb^y79iwG|AF+|TqDLsZG)!)rU=@?XeJ`-^~-W%=g zvt|L6fV-7W3Wdo5VxgJ{)&v^PHeYDd+daTO-9OUf3gSrQlOiK-y+&m0Dpd@MB9IkK z-{73n!h)0V=HnYcT|hEv#?25WNgf%~A4Y=+gh@IUW+EgpGWBrAxO|J)5o|C1)30#2vs35&(-^HcLY()v0~IcV9@e9F}sZL9+zYR~C{P!U3U@ zBXAS|OFHHXD`fd%Y4)Kw(B~GHnot)(l96~fGj#E(@&jGUFM(n)p!sK@c%F1*aQ4Sr zK_pmLs-lRnoz}~9!ij*}SF=^GJSdg}4}sfU(3vfbZTw7%aUnKqZsS{4=Fyhz{T=ZG z)%N5i*ukKcKoUqvW2+gH4_voYgwqnFYc)1b#r8jJAImf8CAZ9D-M(7C;F(6qZieZL zed1IiuSuF~n60jJg~GO*BGQ6m7)-;R>obzulu&W0VNhC3jMm&>?UW}UZD6#dpdMSM zJXP?N6y^NJ=`gJ>But{9Z!4Nqbe;FkYerzy zFkcmz42K|E2$jPYv)q$|$HS)&b9Vvkm+fg02+2de0arPdp-mXmsG2$85WS$ABRC~J z7B)pGi1mDR-mF{$D-^2Z@m+QyJktyFfh|Uwpc2kl{0% zqw1m?4Eki$L~vQBq+cEAZ<$>D7gUNEqBFbXwtkHu0jV4{96R?J_AqVsHHxdyBW!vw;^^v`wjrSmQKhU-0t#V4*?mvCKEz;}3e-tqMtlL?MjZi|gWx{cA zgxZ4Ib?#Wev7X0sRzz%3+dfNxzM5()t?XBe)g0Aeosh~_>|6$1U4{8zlBc!?{fH?G zV`OHYgIP0<91%2S2_@;7P-s-CQ~10*XmJ(@DqwuoF+4+gsuwdkiIPR zpi0eJ@LS)gRrerKD{S1L<+BXbr^;kc+2AzGa{W(kvo^geA)?W}>ZF!^+e+bsOmF(AD{A>p2WQ3lqC^fFohce&02B{_j8 zO<1Nm(bUG}<7ah&4ZRVoQ*iy_65wPFlTA=wp{J}V1(lA~_Ut#84h<%((h&6rJdrOt ze02$nIi|CaV^f4ms-@m;n_i63i<;E{egDA3__y2r^9j8y7*DD>yRTmOiLq67Z$SBw z!`-Bpf9fXMSW%7x54Qr1hU?j&UE9?QOLq;BnTwdpbiDo(dGSU0xg1`cb8i%Q3vT=- z+#8_@$VW#K?|S0Q8sMB5j#dE8rG1LjC4H+E9l#8;0fWvYmpP9ff4y2;pkN7e!2}^A zqto>ZmnoQ}l!8t?OwD>Bw$9q86rr8g>zs{{e)(x~b9Xahi>RLwGi@V1mdGuL;z>q9 zm@rRnh-yJ=q(&_-EQOv73n2mf@^{)mw_Baxy!~Ny^W!bs8GX3-APg(KmteMmxZ>>9E181lm$T&#vFH#RRArpY5&mmWqYh6&IyBUcg8i@9 z$`c$5RjW(2owz_Df-c@Zga%MV$pf?^K=%K4Uld^nU54_w?&AFqv(KccfSh_dyzWk>3K3JWhN&d z)E>Jgv4!0|0M5&@f*`+cDu~!WeAFIEG6B;&TYWux6g-d^rC})@L*-JM^>DBYe-e7i z>SNp#*%XlGXYZkSd&)DVfly%%1g)wb#3WVmJH9$_JsIu#XVcjt#;#v5c-dXm*p;NH&md zHE=U~^;bE>OrU1NdnBYmO74Y-jpI^sbK@nPJ!fX5BE1`9Q}JImb5Z^R zwuAUFZ?;)X=`S`-zn2w;?g9R>=ApirZ!-7wU>}^*SFq#yXpsW?q%^u~4_tc$dD-ICS0 ztrN^&n41=^RqkA_ZQHg{0Ch>VVST}sm`wo0b~TJqwda#Ol_z1{ABe<9t?S6k)SK2+ z;-ptS$VSL$4wDHwWIoubQxOVqkV;0UBB&XpyoL8b6w8H;Mw-UPsyhs7vxXiUkUXar zJQ)&F9EpO6KYJ;AkEix}fKRmj#F8#HhFJ`NgW*}mv{I^Ws^Z$TWRj2Ony;EnWAZr=?5LB7vj@crI$lDQFV>(N44=v1 zw?PrQW5$ihhX*r_{}8=KgWYsOUrPy@;xY9fs29Z{YmtD?7=0r~%MpD5mUIO(B517t zf`;B0g97kp(~al4>>mYdBU0E{c+-NcxY;)sr`kODY`De6x`CHtp(*Ka*(jyq5Sm_| zjX~O?q>E9umdm*d{2*A=W`n9UHEF6q8Gn-hz8)=_kzg7gAq0q3xq>OzUI>1)Lg7x~ zpH-qrKAX|f)d@tecRV)(^LuXkP{=pqPWqK#dANDATRbhH8!8Dns3d;dngIN{LQ-Fiuk^sbP8IO$>82ox%}W zmRvB)4Z>8aBRwR~|6*~0{N*Y>s|73{L_f@+NvDLku8=vEVl7HaM0;X4+CaUt*}&%r zrU#oXSzz$s0h~?(rgz#-w!qTuSu+-Z@04L0POTlUbhO82$=9u5#v7c)G}pp6E9V38 zZGL}tg*Pcn&W}Rk`qnZsB7wn z&=|11ET&Z$azaEZlp#o!i}@LH2&YIc_gE3{!r~F>airI78Bg#`uss+GX|y(088#G~ ze?OO3s=7jBYTK6WY@jEF2~?kk;KCZzRJ@@M_V`(zkv4#uQWKtFDUTMx{Hf_Fh=U0O;1BQ%a<`F1!~)52 zeNqwI21w7@?Owv<3qnh;pw-}XyXY&pt7ogn{o}QpZ^{7TLQQkKL_`<+UBkzOZv$S^6qcchR+!`SMjXd_=odCW;sqQccE~E z?dZT}k^kt#56lHn1s1I0>RuKOTQK8jZu>1Qdt%1yWw=;b^my}xURhIFICs5}MR`W! zm?fpkeNb|!4&i%%l#4&(?=_1=^AuJhr#4k}a`S1e0jWtUpg%=BUj-TSImH&-Ge|ek zLU;ix4+M%My{+IdT1c($6oxX;uwp`~H>W*u=bqX*cpR-aZ5C81mmt{x@N;-yu_`9Q zHe!X`UL5i3B+SGR78c!Y&PRjeC%f63cW*xaB=eH?R&^T4uwh4xZd_=BK++)ZKrI9x zI|Zq(rn83WqqX+3MfXjmu-|zG-7ez%ERF;>0tsPO(e|xp(Lj`ddKh;TZKL1dscckU zRwZe|(gj79#Zli>eolOLJ*%s6ig!AMECwVrm1}i20uj1IggNTIMBWQd(l?>AjpP_6 zz}Q#8^a0D(b9j4x*6#h>3Syw*_uYJsVv$IZvTY3Yy=; z#fatwn#BauaFdjaQi`rc7iZFZM6haM*)G?m(>Lm?BzthZMUHy9*f)$2(MiK>ueiw7 zY(Q<>#dfrN#*yA!atdt>$VPK(gMQ)ju?HO)a+4Q(t>QR;zEPpVv@PU{)-F%1T0lC~ zb!5*)CxAnA0@$y*u}sBpQ{8xlt8NgL5x$=#JNJ2kJJE9v#xEb3#lte7%*t!gSz?kT z%L+b{=|KesH!s!kv2m3dDx&B$OWvGT>@&iBQ?E+Nq#AEc(|Ez}dqV_XvP~hyA{5W& zeUexNFbsuYyN(^)LeXs1d<$m7H5;ZUWH!l|M3Dp&qHC?(w&71$D@JIEq89$ztch)p{WUooF#_4wrK{JDL+$B~rcp1Uv0 zW#QT`uhs~9i7>%@=rMrha3$zjL$mV2?vZd;sP);GM#5SJZjMEhBN)s8@k-lGi5ezC zP-56_OvAz&CG`#FKkP}@?JC926h8xYb5eBSkm&sDSgE2~r>_ujuKmw7D~ttFD(CPW z!C5bv24E9c;EBJ-=}YA57=df?-CE;ZsTCO%zR1QjSzVM7K!?sZ)3MN!Tf~-++~bKA zsI7VqA-lIg_of4)0y*CKD={Hp*E@K8_^Q8pdj35AML@eJ7O@pENiqNN4M7x@d6x46 z8PKeudpt&+@Ioj~36zDsceS>HFFZheM>M&*_wrGwDGaRDb zR)kkjU~`^`$}r6NXAmn)hfPM=KgJAL6+rPJIC*N2*TJhe6#)RvF&om9H)MV?YPx`4aWN8^?MH zV_Sq+$R-1SNku^0QfR$w)rd#3{ywbt?9bQU(ertyt{e#-7SLi*Zn{C zpkm(N?RedPq_^Z!tfnaGxVN)M<^<@VYoki!_Uf z$opKF7CCEdx;7Pxwb!Tet=*xCt82!m9h8B3R|_gW*;O>bw3rOiNW&lq z3B3SE!KQ?0*Rn_*&fwwnIvy4vAzAL}oB|!TSeFZ#>)?3A185zXVOj0BGZR|fTp-umqzm8 zB`k53QHDynx4|S(iy*m&Cn!_F82Y0pfsTaG})LRd=@t~D4!>KQTntJ!Sp6pd; zIIj(;eVFG6)s>F4k_nH%I@H5w^h0+L9W&+JEjBdR@V@dYqdy5U>S&kUovP^Hp+{sq9WwxrSJNhOx=tG| z`KU`+dRfu9$kg-qbmE_AVt{o~#C*_ufF>mDZMYquPd8p(r+M0TtgTD%i#XE!`eK6V zzR2|je3~j)o*h$elWm2*eKV~HV@5N?ud~6X5s!4(*Q+F3h^=)#)XSK)9#P!NGCgdj znI1OQ0SW499T*wIHQ*nsQXuI;MIBiiaZJw_Mr|Cy`bkNoo7%3h z+vs-@_Lj`pPxd=FC9-fMOqKA)8^Is|RhM2^AmZt0{Cq>-EFn38&g@&oaq(r}6pE4= zGkV!5!B1-skXJFs`ZeuHwVBH;Nd>3ybx5-kc;3}fj9P_NjokG=-tFWAfR!D&3Vk?i zbXa4wrT!<3mVjh3xq=2RuPqUuQ5-VlrlK_MB)~tjizNF3IJ#olc|)N7PHXnDeIzpC#ThH9qyi*!TQK*hcOK5o8d0J+RuoY6 z0E^>PB+xi~;a7|}w(69omkh;%l-d1|6IvWe8mPG_r}ALNEfr;2HNDipSW;Ea8}K>2puTvR9U1cfcjFB z;+gAYUYI0~w1`_M{G+iDEQ)U7Iudc|*YxH>yG{zOa%{2C;==0nG-XyVJ+6nc#1N)u z8mbIBeNYLeS4`hDL0z^s66uQw%HLyd0@t9k4Mt+WlNFdji+Cx2BZ?^*mF-BgfHde4 zqD1!Zk1nu%r$?~&^oR&&=PY#0Y1>=`Y6U6{Qhv4@T>={v-SaWpKB<{fv$G5$uk}$RZjMks#B}BMjhZ zrW)~I7-Mi^bJ08a>eI)YyWT$?KI;7w%r*Zs_zHEazxvaMuNX*z3t3e7t2vJJm`A;@ z45EAVbQcUl>|qqL_OP=g;5)4`W|4sU2(m2no;*WAe$~YXWuDzrLpQ)eF1idB%a_6} z|1ESC-Z&bd_As84LbXOyBr)yD>}Uk`ja186P@1w%8&YQ zf2wZ-1Ma_d+-30F?lRzA_zm0?DEZR;4RnF}$E)^(h@n*-tdF;^9@d?I3L0ouE0|iU z%))#&F|7Q0yDEbrWaMp$BFG~^O+A) za29##K;9&SBg&j;U)5IT7D3y7X|}A;AUjLnDs69xmdSY-Co}tjBN%B-k%Qz5L~`GN=&^7wA$X6xGO6|< z$M8WVIFoeOkiB4lk~@KCD_Lw2M1bGdOH`IWHEmIr;3L;l-4e`#_x{}jL<-JM{Zsrv zpTg(Mjejxil4}!4@8vZyyjovzWRr{bws^?JQBSiMN9i$MIk7uo+r2&7`tDRxgjLRy zN{70kRK-HomE8xGz(F#&0yG#Rmf4(z2P|_Xf~3+3tH~kUD!HGi8dHE~n4j9I3?jF) zHd@K0P<$$#G_qc8Ry&zufNT<_TEMM%Pc5Ge)g{vZ$Lp|JJDsUZe+Ez&?4VJu)$eE5 z`|8;rhJWby28^{kIy~tee7Jpkd-L)3;a9e5HuJ7X`GI3OpIi2%uK6voea{F^Q)GLrkP^gMB+h~8tJH12BD}kyKg7| zWqn%TTg+L=cs6N$i@igr!i!zaKfQip(*&bCC72@hokDv2w@2yl2zZr( zb2^|b#Eh+qps!hp!YxbTo)Nef2s%8vM}h8y6Z4^UvvQGsfz#nP?)DRGEW5Yw-~C8y zeApvx(`wmaK&2a3^Y7-2EO*o5vjxS+zxV*1hdINf0z77iG){;Mo5koFZD8tSyQ7;Y zN*5OAxp0Rcbr!X249FYQ3-=nS_XD9~A^5r70-skz6X^quAT}!j9xgHn zr?65gxKybWOoH?U^~gf%1_alODT2PX>*azixmuN;I0+ObEM0CfoiQ;jQWzf+O0`wc zh+$zzQx@^(0u|;MBb^E8o83E_8$oMkvbKR0D)&lGC3Gk$Q)fA4r&GcO?SFbZjPfGG z9}Q8^eT=kzdZ54MZ}(py1{%yEwy&Kabikc#g&f$ox(!t?H@+%dI*iU>G+N$$5$|(0 zyVyY14~e~hj6K*TR+#O-DQjTveaEJL-FV{Q{*K-pfva3Lv4Ay3LOg%q+ZQ=-@R&}< zxwi+A3L>wY_)(T*R^^5?Kw5M|1PLV2NpT9qi1kuhp;wMSiHEla=yqaj7JTZVn~X9n zFrhGW>MT}676nf|N{7Or%WLqMv)jAryPI#{-h!I;cDvR&#htn)HeMN%`q7tK% zzAWaiLod8$exPh!*WXfoo-&e+#HfBzLG?`xRN0gx1Z?yZsz8{Xrr2?Bv5h*`N=VOfiWIAeBcRlkfO+j7t;lus5_o6>roqC=(|Fhm1Tq2bRjgYT@6EPSI@AbsF6H1cSaK4azu z=;w_AG95F2*QUFr_vtw$OjKpfCWl?w5sZ^c!SF+;Oi7r3)gNMQ*_qU-r%7u4KO7zQ z2hUE9o*WGaM<@NK{oBV!$Fm32r%4;E8eUmC9+Cwdw-=*9N&9;lXPY2f6id~o;(=K% zDIK;g{8=yDss_EAYe=_f7)XnD@+iv{XJt0U&`$F!&a;R%ryJU#6}HLYU@qa}*cW@X9>F1r9XgrLP=lHdrArtdV4Bh= zc*m~N5wG)b@5(Rcmf3WeKh?Q$=eH(Uo;f!)x*IQ!bi2&wyod%PLGXC8JiUy)OGtom zl;Dv?two6gL17nUTk5XRyHbTJOaOYGywnJuBq!-9%?dW*uU9WkoiKJKw*jr@0b%q9|1aOJFyu$_fd+rN;)Aa`4v zmKnAV;!>VERt)Hr;k6|VnpfBzbe#U?%LPb-<m+ZxZ)h<9xrJJMjj84f?<%92`;@u> zWY%}D6QsxXNiZYuCguepybVUvjuD%y)1J$ju5S!v&JOLv_CC!PCIdj|osTXNqibv6 z47v+mt{NvgLgp-J+!LySvv_l|pIlsOed@ zGHQOW5G)rasNDjcL9S2A)gmf1&U{R8okx3;9wQB;cJ-A*=3>?H;3dwH<09wT$gh z+&$c6<8yQwVI*#SvgJQ~X1ZS?ohrFSZcEq_th5Gx$naI3&{Tl&dhhb@(~t zSV|uy*s+FN)LymQ17E>3k;JTHs^IB|bE$T=SUpTnw0t&%`7FjLB(5@L#zfH24F(Tn zi?=}!#_vC%WBs?EeuNIprjpkP&c9@0p+wVXVVQ7Ke~Ex0j)7gTus8BlJsfv3SAU5f!F zMDOWb-a^QF)sdbeq-Ju#>SBbA=e2)C$wZ+U{=wKERHZCSeKlcePUJvzVsdPmaC_DlA3PUqWP(CuZ1b)pd+X+^IF(nA!S+oIa2!vj^`cPKz;2(BL zZhH;uMCNjsz(?a^E<8P)s%|gC$DfGE4>1U4FqSYNhQwlqbgwf8ZTxYo11wIv@Ti=9?*rw=yf0> zO*$q}Fm$aExrXBW@R-x0#@d^t-uI{%t7)_2l!qPCdjB|kR(LE@=UIp z5Y{jR9X|XQi~^16GkBbFyQDWXEqM_O4OQ+C!|xCNi~r=O2=~_0DfLcTRxAj;XMk3? zIx1)Y+xajeeHKS`nB`G6vq13Cdh*(9&{6Qooy_QuWYBC{^1UE1rp;yzQTNRqQY5~; z{UCE{oJ_TeY{4uuO_^v6<+pw`;p;iv!PrDTwjoWvI2|E~Ap+>>Q#SFaGN(ewZ*1*8 zo!*?LYf%ub(@msg7s2GymB*6n$8QWJM{#3|BmZ@=+x7^y?Yk#*8_Jl&B}KPlxjCI| zbO*Npe}Zw~Xn84`L$A_eI&Kj#(xVI$fe?ub$9HFCwhT-ctgXU3B8r2-(luu)6mM9- z?V7d}az0w4C#{JgkPeMhn#B&m+%?|Jy5>U>)B`*uG zo)NZd+&-t+H>}qND_`l}07uu>GwrljFRdN)SoX+ia_X_kubPDoJR#`+&?$o@m|lnb z#hTMvXqw`h+yveG>g`uPC%B)C`kik70;qe^nNO0k-ZTY+5~87oS034Il9gwnNM6y? z#i3PWKm8KUry~ohh${RKjIEe|Mh2TKI^>gvNg-VF>Bmu90sgw= ztc8sLR5FQmXpUM>yu1$-HXy z7m=oCTcprTU+AGEniP7vOOAsIjYE8cq3G_RSN6)KiB&|{cBus{w0vp}pb*a1U%dGC z4n+Zex%qJGORtl#pRjHPoNEQw7uAEcO3~N~UM%@OXS3q_nqIqxwdA$5bQ5i}#|WjV zu`>P$ihD@R8w|JS5be&P45IAxe8xED&2n)i&-t$y^I(jk0(zM1O2Zca6ip=q1(KN} zl`LAcUluaHZ48Kc2SB7p_?ID)`1#PjlqV>EdI(`dd4MhUxv7JABS;p3g=Dh)lRZy- zWe)JQ;m$tYONKh2Aj7nQ({KisW87G6Kuz|OP0ez`5Va8T!i*bq{`<6C)Ls??S+}8r z;Q}b%=IHPZQ4DW_q{44sVZ*R&F8+~)qdbxKwD%e5(t>9Rruj+aTdGGWg+u#eb6OAa zS(Un&akqHy2E>RE6%Q1lBd$mZv1D_(=3$Nwc`a8fwW%5Im#Hy3O(?D*?<19ml#&w4 zO`4c+cO|jfwpZPzf!AUjA+w5@UA(^gQ3=EiNg|bl;kr^s$KOJdlod2YLOCwgE z$CZWQ!Ree!?Qx{58QY6EO>`d|&zDyltyf@80lNas%4s>!DCkgc>P{Q_Yzo?bu1*M0 zdRbZ98^%+lvwf_@s#nYBW|>Y$dM8p4kKFJ!o#8a7Aex=xfwH=7S;^72u?vuUhUjvk z6>9?zsk?a14*N|-J=N@p%?r}HT6%#jSz76A0rNzmisvhvc7(8)HUaBF<#S8N`bY)V zqLnfBJdzu}MVX85-hcA=+5yTtI+n;<-M!-^GnsJYw9y534+)GTJ+2J4jP=c!&CO^L zH`VgGKH_fuIP&{}ilyD)S51ly+XXh`xiuPVV!lMK0NK()y_uOr)RfOOIRVmOk(2QH zD9i-{BkeC%CZ(wc6fep;DNS%-x2%-|-%S=uOk%)|q4#YGWrUO|s(AojB$Mhr!EfCI zl+dS*iHJk_!YKCXgf$CwTp4IH_B$08C(i(CwkRXEg+z8lZHqblQY7B=VFAl&7D>hd zkiy%*vp|@7;ivj+onU&zdV(}z{EugwcyE};-As><5@bPzyjqEjN*(9*nPG125e4Ev z7)d(FVt2VpE{<@pLw#H+W6;xK4}yqRv@urIBfKOVD#I;Ze4*`lil+b&jXY7R+Z){m zW)+4j)t6#P|7SC6(VJ6c#0VjmNZbOwwLb%=ex}m)T{ns&y}Jm2*|^ip2DvBM z2v9k#WVoG_)VP?33KNY~Q4w}Ub_aZ7HlHE_-(svim@wH?X_jKuw1^=rf(g3<3!O(q zWmJ9?vBST?7)S!WyqMW(sBL_56?<& zFOz&M0lTydY?^2xZsPrV9WNxN-xDcfHr#s#=(Tce2E#nZi?!jt_BsTI|4rT7Hn(wP zX`=cm*x85hxoK#G*Nw>?1uAO(vgU;q^5{csVo&2}qVmb|jmt=^g4-+rIxIp<`a ztSZpPF7V`zMS_L5*PA&*RPO_>iuqW|35$8zy0v~)tlY={=56vh@f0p z!hyC^f|>~TSKPIE_woIA_q*-;*FXFKeKwh7Wjl1?-*bof+|?d1Ov7$ZU(1LbnirByATgx@Ii=(_whDX))QJs6Yah{Yf92ev^8gdar=@9wqd5?X zF`+3|ej-EwHWx@jDgJahrBP)f2jOn-Na8Iv(s|_scpx@H1W4zpDvMqAeYl6=5~6yG zZh#v`i$Wb)5$T(YhUWx^S3M-%^|ARSL`!o38sB6#fNLlW@)Z?@w(9OJGy%ldeQcGx zXoxy?^unD^F72zUIoK)MFvC`WdW`68EIo2FBm}jN$fV7h8ES>J?NmoWn?cQN1=guF zx4l7TJ3u}fse{d$r;ykO?RnONEY$o31ZKX(T_+A zbCK2n==FyGp+=`V-Lb#7w2ng>l_nu&(X&`S%7W9NSEdkH!#2h+%pQJn$D1&nnAK}i zk~27Z#Ewwb!UZj7^!z}6Fu9Ik%#lIW15*YU#GJ7uOZ$N}a@CaKOhb)YHWNy&e1{b0 zL>iEtu4dS;5YR9+UXMbRh{7bV0Tq zU4C>eM6~oYo)T~i=O5qy{Nd{U?GGRRygS`K6c2D(!vWF(b(I6Ys)*u31LiRoh%Z|H z9h`#_k&J;H51OW%9{xS1rg4`UTfT|7QG+{Ta`Dkz`(@R6hJ(My8h2u@Sun6sil;3#X)g3$U8q69{+4fiOzWd8=`s4Qp-~ISK zm3aF1kAJki{CMAM{6=ww_z|B__uGpPc^$duBhDKRnJDQWc0bc&R8s;tEh)MU6Q z_aJGPu-ES)A*LXPCoP^ZLPSP2^p#zCqJ?QNmCGg$foK4Ry7BiK?BL(Q_%jBc&0nsV zO7ipZsFa({r#g9X zP4##et2hnyQuQ@E8KmgBgN-HVth zu9L{8CrnzGkLGqb@5LiHXTFtfZznzr8>drUJ+gh{r@b?Z=mY1hWh> zJ^CGPci?~LC93sU)P{H|tZ|GZX{Wght()0n1nqQ1z#wi;u6{QRZY^er>gSiQS3E4A z@0QVL<}wYGW3^d#)#>1NC@_sOox;<>g5f;6nYDMth{qSIdaM+Wuwa5ZKpoaIi1)yH zu{%ye;=nJH(Cx^9d@4KTFLmG=v>K0aUL|ERF;jA7PvzLcG#a9R(K!iHjdI9B7`PE2 zO?lcN?ynR`a^Y@}ovRvQjjQY0_(un3;V1Gi$!l$18xn`C$}tie!_8SrW*F`3we_tz z@m);B$`5B|EHHhd9V9XkIvr%of>FCf_F&hlxh%wP*&5X6?BWJLpba1BySY5y7{Ti9 zV25=tD=2IlSgUi?T9`gepJVp7-cq+Pb(ge~LT=&(P8UF#dOdVsPc|>=d-t^%=ulpG zc7-rU1j#{sTHXNVZJzIL-o3rotA=2RG_;dkbzOKC4C9e*sPL{6aVxc{O{X0maR*hz zZpc(fe@?ZM_-9sy;XPGg`ZPVzrBcIj-q0w7TPn*pQH>I$ofy2n**!@}(UE`)=m=hc z`3MggcVUJ5WNwnjIt=sFmM{+&A9Mt()oBxkwGe%?Uy78WIclo|vMqT*E!!4h zFPh^K4I24^3}qW~3>(NbxW)9R&7+DvtZTF{Udbl%Qm7qM4I4jnwxUt4YTk(@FFg5J zS0U2E>@y_xxN?yXNLFHXhZ&6`k+h8Pw}3N?1j)NIY=nzBihp2#J7yUbDDstqG3ob6 zv?F3?41Z_Z(Lx?%s$1=O*^qaWx*zX$6MF<>|6m$hMdV-DNs#pn$m}J!y8hQ!SluF? z)upRr*TNQ9om&re9Axqftadk{b>c2j(bCEaFP7M3xGl67=IimPkU~vHQY=5=Xv!7M zV7(V7l?cncSs<3trzI+V`)^MR><%wu94*ttVCJNYaSUg)hcf}=-Y^TEBQg`r0|+8q@hV<$keh%OS?c<++b>8ZwQ*c!Eu4hscm?aEPH!Hl<*D?GaD5t0%1DBPv9vl8-%bhWd<%^?-Vp2!;- zWJq7jJD0w=MT!K}cOirB)Vx4ZtD_v!r=bc60Xc01p41*(Z{Suw37(ukMtpDYs)or~ z2oGL(aZ&@ax12;EpIMSI_*+^1Z@c^hnPCVl9;+)US-+IJ6c{Y=t1`Q{*kn2-#@u2 zb-rJC3d&J~>FedR3%f1~4=Gr{@p>~;*Ny*W2UM|Fc$?JncevfOU+niFIeLXlar7U6=?4AYRCQHX4HRkdF`P zi}?&W{~*9HbJQH-nbS}c(U|tY_|Hgy09G{p%)gskVL>b1a5&(|34Py}Uye@6wKkx` z3xHhcFuk$w6dG{&-9@XNuJbG#Jpkz);9VJ@tlgt!@|0&sCbL9K(@;?ZO^ReLF$Ll= zO+;l*k!WK0A(#(>A^(d!OI? zJF%{MC~XFut)SX)hC6=_%3u^;EqxYGfo|B&Pf3zWxH^ynTuCMmiqCs`upGSvGPn<| zOR8#Pm&*aj*6sk6-C7H!6`3h(4l-Ex*vTa00`5gym_O9=#oJ+j?tXs#zwUP*c7J9~ zX<)bGVW++hB-5QpSkH$NyY@{vrAHkXc*kpK-jo#3a{_9-e!YA&LcqlE=71O)*62-g zy;#74c6PHt;h3=SiGeWL%g30LtsFaHtf{MyjfZhFUwlGdhX83v9R>B|=nGR(!y=Qd z{_4icJyb>?miVYry$5MxJY*_e!a)|shsFn7?Dh_^-K5muJ{LD%L753fEzesiY*?(K z`EpI%!z4WuA>p4!2x63b{5XXp(y|@4p1siL`$Mhpa0KhkNld2bV7^N+AfAk1D zC{6VcwKhlWiF*=7OYohFFYe=8Xj^VziLE2ZJk>N$nGr*DAs;hkmv zprQIa0wcf_>QD(}j@za_0e#|^n_Fyf8%hv7$|=8nT$qsiiu=f3&#iAGl8O$6I+iJ|+pniiL1)8F$VuTsFoEAU?dW zJA-zkxIRD0M?{K57XsBuGmjB*LDuute7jJff@CvrvcDX{h#QgRjN9hI^?BuRX2Mxu zdLc0eg%wupS}b8gv~*hSB`p>oyq#?iAv|4fV-uwZSD1YXSaAkA&TlTKlGUS;S00}C z!m!9ifVyg15Y{`U42jEfp_UJc*$fz_q8)<{ei_qw&i!`K>dc6p}lihN9 zeBEcUrq^Hx1k$*`=rYS7hPqt!^jjUEZh(UMtnarFGlpdz0z2;0zO_N?__8p4x`uo< zoy6SS4Ax(NALYUd1%|ADKi%Jdk9Yj^>bt+(e~+=e`tafX>u*1PxZmw44A^x@Wxj8X zsq48q@rmvZW_r!W39jo3VbT#+@*ESYsi~rbk+a}g>^yd%x`l+9xiaoqWAL@4)nN48bq{%fNA*n^#_k7D7?eUMkkHL|u>;tLkC2K~tSp};YJ^DRl>dbrN zfuA0K{-r$=rzpd|o&SUckB>*cAHj(oFeoJP8#!k^4=S(a{(2U!DGCfetklq*&7nCP zihF7Sk8q;gDdXH|N^Og?C7SwbzU=FijbkrB%^k0S+oc!r3DbqrTh)<#hSYgBk2I@? z2E!y3(41)@dHKIq1)Szv=}f5AVE)_L?bai*>Cr1s^9H2Xl*dU`*SdSQid@}`uk9(| z5}=OUt-NWAkWk@-OsC_lib2CM{MCv)7qnP|r2+<^c`CTOm;&ZWD2Yp}Ue|kgZa^@Q z%!XXrbS=T z+kJVD3D8$Qw8`51?8C}C)%#A-N5E*(SKBD!4c(F!!&VG6+{*ue>OUB)Gic# zd2?HWGvrbFjHmTVR@B|jCU^*gcOc4+2E;=fkG`0PMd8eH+)hDTR-Xz<0U$DLMh|sS z4=g69U#H;y!`a6VILmL|y&~UIu45utMjS{4F>5+T+XX4=%f)QO=_@U*k8MRRG}v31 zOreE<69h}QLz)N+zxx#z`kq+TivrV9@Yu~))TX--T^2mJ2jud!I0c&+3M@w7jk6lm zXcm!7?|_jP1}He@F*xrgYikl>+1JHqki4)VqpSl1SM9=MzS?NUrU;-EBTc^7ilr}> z*P{qaw{J1)dU$(9OY?2t3bqfvcY|6o_ser{BwJSzcAA$>_onp)k-3SwF~0zRBxJU} zf)Fp)Ug=sx1Ds)+UfU7OyY!ZSb?{FIsyp;e9-LP6czKT$n7X?Jc{FjZVpw#90!)%i zsUhUfuoK!Rd|Id@G@1lT1VLsIsVkFY5EpexbWMGAn`?`L+Iirp$rYW8Y4O}=-^ZgG z#EC576EVLejwUGUBW`dUZlE3u5m_#?wE@!xo-kN85Z94F{Xby5NjF>nqdnJ;Lss!) zGxk8q($u%u6lxlfLSwo92JWR(KR|BO?f}E@)(a}Qhf@SPjCFEt|CXDA$BH6In;gEyrKKg^Z+J#(3{UdDsN}*ys0aXf6sI9uP71$MU(+COgo&IP_Pz=I)#Agr`Hc-AFjb< z6|(PYYEp@@i#Z+xW`fA}c|$$)MC^U?hReH~uxpMHgFJ&j&IY?2Qde#K4unQwp;Ica zXyxPK;gdD{tL2(e$R=C4OCCP3*z`I+dE898!`MJOh4A(V$Bi*jZDWP4W1q@I2yP4Zqpl7e9?y46B({CFK^{D6pRqKKUJ~VbpqFd2#~>X|%5UZ!9)4H{V#D@K z0B(GamK`DKWH<|#MN?G$t3-Cf;m!z+PNL>pU{KG3=6f*X_#cCoxBx z&2a_T)*98Ia!#uB)Rvp+YlUM2w*Y0h$@;qRI4JfU&Vp zD-H>WUbLF7mn-r#)hiwr99G!o4E+(B4lYvDMH=p-i zPx{@{!}f@~^|{3^S{ei0@)p>P=g4Gt2&Zjrm5Dx9c0&`n^lE6!Lwo4$_ABH}r|;1( z$M5}cqE0^@3Q<~%F`o?jCl^@l4ke9nE=SQL+5xNGO}dC&j?vO5!1NZ$+SkYfSX>g8!oc~FC+;Ujq0Gw5!9((5bdWYiC zyV>2@NCE*H@=WT~c@kkpyohH5gsE#pQjII)dI_K4XXJ#TgAZx=60;Ub|4q>wN&l%= z_cVju57oT|R`-m>b2Ong#+wGyh2zup=xacFl=yZKQaH2~uNh~f8jv~%+5xMAv=@eT zB1@lYqa$agT_rIVd0W%exlA5nXlP&Svphm*P?{>R^6KJ}0iTxV$~{I80{nr&Z!>*M zoe>mqkpDm&uiB7&RETb%o4_6szk2Y+yhTm71{)_Cwm{ASbzXCa&@C$MdDK$h4B zNir6fi2r~hgNbFR2!jUZsoptX9Y5r%SAd!u7r`u1Ft|FT-GF5_bNK92H^x~V8G+jChI$+yb_ELGA;P25jT+r^ei>U3ngN!pw_sOY zo-e2FH>4)a2TdDMPDrpGhX5%LI_Nn=G_x9li}i!yhy_-=+t)zrp_TSpy__1(3I#JT zR~nsyZL$W25<~SW$&jj>(YmE>cqlSY{rT0~xA$)l+4gVJ+UW7y`B*N4|Hu<3ohMHI z;U^w-o_O>RKM{I>=BtnY;U_-nJn_jt{KS*a6Ho9&ZURwCee_s7 zp7wr+M>pTTU;b(O?(JXi-~asj-CMeY(en&u>;)`n(`R#}rJ?T_u1g!@09=yMMbmS> zb=MAhEdtZi`^F+(>=?M~4Si5U`z%bD)X&HAf^5~#d-|CES?Av4bnyHkCNBG3IybYs z+|odRn5IUuG`^<5v=HPb+&`=?V_9d|#=86j6Y!AK$@AFIrdhV(45!gXtFENsra_K1 zKpKmEthu>I`blr;VYd7yd(4Mi`3C0n3+^diFK)!|ny>1GIz(raji;}rK#kiOoc93L zky~1>h&zjx-m(7l@=y2gr>q>I{S>M8EM}#&)Hj@Fw=b1?om?S<4>;@06HHl06XodL zXFXc=lU#yv1Da*9lapr(SfuA!6N6G6faQ%~Z?aG6c(gHkOz{XM`aWx*D^T-e7Wett zS_esW?%-UG)KU_A>&2vkMzzt4v2c@>eN)>eh#o%jYP;Ba-Qw_Z%QG`bCT*HDC+>bh zHNV9agJFryZP|}F%}PUj4GNYU8isAAFumZMge+$&jUKpe6x%vY(N`i!R&=`cESf~7 z(4xZ0M(GuY!|R5?k6;uPW5s5ASF&uf6CV7Ke$yvU#oNtd183hLa20H|}`x-fe zku)M-kXiyf7KAT4m5(ScplL14D%5Ot8!i+EaCxF_7S2W@l?)ZFy3sZm*P$C8EpsoqA`4N|lnzqFjt@({*Ix3E_NOs{E zw7FE~GgJXiL}Uxp7PZ)duyjSM+_znT$VT0YX!t&qaE7T@EyIWQq7^&r^^i)$eSYh7 z+Zu#3Fy_jRlDiMOaw1w9i79Dv(8-BeBInha{X{Pdzad5*^F66;PpY0>o*pNM__{Zk ztA>R6Rvw?m&FO5vlg0^a=<1+sskaGYIEL z7r~H2@A4T61IqmBy-oz(_DVuvg+SMP-hq%3uexDKBe&M` zu=k;Mq>PIjyZfVZgGxY|*iP)*#c)nqm=r)vNi|b4IQ_~91(W^!0K%z~&fc8EEY0nL zA3Q_p`eQ{>a$5n{$ZjZP0}_O8<(AJ!W9U50yL7$+b3&;|K~OaEKrX^1THOA_TD16z zGt<{9e&z1=n#1du5ei7t*|nb$2j~Ec$@i@6VBjv-T0;8P!sZH-fQ1)%OS3>F7+tD8 z&o!|gztJdSajbFA%M8&#h}NuZDR7z9zpYI@U#QqqX?8`t7N!SkUwP`~Fg8#r!Raco zyWRMT4zNB5C|Dj76(d_yBQrsrbF@%fjevomxp0+@b>blOzhNt*NkM%C#qt!_>-)8`i+oj%zPD zUM0QYI6LWHYTV)KTqQc2`n#oQC+fy9LxQ$Kxc3a=mXs+LA&wpt^W376i#71 zxbD&>bkTNjgBF;&?{>=-TrVCX)x#Yg*=3~NgE!EP>NHd3u((0#=G}|c;pidwVtHtr zjZ6(BkHX-<1(p1*=F0Y(*_b-$et5UJe{=uc2Phd)FzIaa%Bv3O~6ZOYYX@)dX`_qPk!%`=99gduWiU*U=p$iK)LRCQIE+o+z_h37zVm%nzpm6v5A}J1DD!*1Bogb zKP~l(r;?>)RCva;z0j*Z)niyEeslF4+!*J+w8|rN3w5zxJi}{e@aYLux2(IT_?k+? zjhLR2Jlm98%*ALsasbkJYU9D!*w`6#w>!I9Ka)=)esF-?@@>-eriTVamXk~e^JVB^ z@-w63BF-ZG#&QmgV0Up@_tKbjjx;HaDT#)pj29q7>A9*ldwu`otM9*mfB!QhnL?=o zZ~rO-AM6X7W+ufFGi}r4hlK3#{Q3){;>H_)f&FQvPoA-!)nMfl4bp8n?j{+nvbqsK z3>1XJA9Lz7hilyFplRX0p0BX^bO<4#lzBBsO3skcTo0&+i8V1U*!dK1XpD*FcMl_a zln`Mu#W+>WdN()7i{;f82{S2M;qS5g0(P$Y${B)znl0lSOOjwcT#ob((bAB(sM8jQZpRp_9v+XKvmq)~BVnZP` z{%Gg(bLK0X=n13!qaxtsT6 zSQ8i{x{N;_eLgB(JJDW{#?6^LcmMqe%mOsUkk)yup=y4D=ICGTvRR)ObOl#!tfE>$ zwLs&c-198O>{)Qs1-#Ok?B?(j9OV=lnyzbVP3SP)&Fb<@8>@3o>d&ebLrRv8o(xy& z^ct&UY>2xSX<>}R2jiy$RGAuM8y7oKg38~r{8#pR0Zai6;;N<(c{D{3|D9d;~& zIx>I9D|EV|Fbx@c$DCG2Ft*s**hhs=Vzjh6#3>eB4~DD!aGHE-1+I`vY`B}vk%b1C z3+k^hUU9{Tj8`1}p6d?<2i353#If7w26BQ8put^W*C`!wQ7?4rS#9hFq^W!S@u1{o zYMTf+;L=SP$;QvCdMNd2U~RB@&o)cvP#A8Wo>Q}rB=pDehXH8<3W7r<|5da&rsjkmfg?`cY+jda&43qHx_e_z82EUJ*IppaZ|6 zo2CZg>J{e|qNTaiBcSBrGrFpo7Uo~T3ECII(u0BHa&}&B;B5u0F=@b4d4dEbHsvr<<>(E99HOw;!jo(BY;mz2O^!cm3NIj1 zu3ygjQq}pcfP8&|fi6M={1{50jgmwrW*Tu($Yx<;4$^m=e*+iCqQzup)%IRk>&_V> zW?9xxC)?%e6Pq@bEY5+K@O}<|P3b~tRDto<)I5IdW@+OOfo<>G-b@OHvZo|E_N!ag z1aJsMZ)V*sr9d2r^@7zI>DTp+HR>eeD89fcaBQ5&R05V8Sng0V`|yz|K;1wIY5fw$ z0j?qAvU*ZjuSa>2e85Wtc4=t`a}Oz~X%1Hi+)7EBqj8^IWhSje+mR4O$$ zdsHCMfw2S$jnSvztHt#b+s!6bJZYFGV02_uN*oY{s`YlcA+|9~2b`4q-&jHVI1Zj7 zCMs$;2500TEdq2FL#X8T8u2OBCV+e*ptNF#OgdM@ZrVUy5PI_{l*DEV%R9fkp5FRR zo&zj*hz~7l@^g^*U=*8+S^%l*&8S88KY1EUZNIVXDX8%fns&ozUFDzFBS4y*M93;v zb>63l^mn=evU`%wWPUzq2>7h*Fb z)buz46ohlr$Sq(5BWwdkG&Ya#akLyQjZ|<~62>k{r_n2#S@x<=S5sV@XNqW312N9b!rlOW4kvV$kwr?Nlp~^{!zMH*Za5QZuBm-m zU~(!S9dQ~`pOHbWX|SPhWYn>19%T1-_2cNjl!9G6Pg`K1%{K@qzd5s+^?B{W^nP0h z6Q+Hg+|*|=F<_>k>UhRjC_Yn1lleo*=WXs(MR^R`WeUN`?&^GY16|V$cf_YBAec5`i$g%!nHigy(U;6^yUAt4BMRU)i2f|<I zMVYYt^Aa8+NOXh)`}Hm2`wskHVTJM=pTV0<-ykKDzj3%ntC85#wW=)kbg0@5)~Pe? z#-6Ufp#%IE?%CFh+IWaEwRvGSZsiFl&fCC4Q~yV`88@X zyU!G54XNj5Cf02UwiAB6oRX6J;J`zn{MISRV(54bIdqKV6uo-dVW@Xu1z%5=%E}eK ze~m<)t5-kVOIzHzwtM<*o~T9<%pFEESgFeCp2_KohNy`)twdj8Y>J3RVN7nytEinX z;Xomk0c*yOCO|2u%*5DR|-@1k)_8c?Lvr58~wq~my!o?aKNr{Q|Iie8*W(g|yn>EbXE zSku*V#1{x;TLa&8VGb>B^zlY{R0!x{6EcZBY(f%ghQ-J(sC6YnvIp?@{>}cyjU!of zsKeY)wSX81vGowq&F_WPeU2t9fWQ~_P3dVRhC8^jGkbmaiyI$S{hJ(SA>hH^{D08W zclgOQZy;rO1FUm&lsRkT>@q-KWcy?F0udmY>5v+zj`nFxoB2~lOBVH$ zPib;h*1Qg?G@%a1i?RH)x^h~>yzXew)5l~;8R*3XlZUKtgS=OPsXI>}IU<(p75f{F zaxiMO&oWQpyT@~u!F2$pEb>T3ZTLLXYfipJ;Maei7$o9 zTIyq{bd~eP5vj#fV_ej+;@O=woG{uo;X@NbHuUJBQn?=AFyv~mq;_VKL2v%$;2|OF>;u0$f-NE ztdz2vxcb-dK|#9DVaVFE%CE# z$%EZf6+G18-xw8wSa_M29xKfLp;y8R`2X@NA3s9M4yN#h;_n+~5*=9_aC5DZDIIaR z6lsV2dI-?prtf7Esq~FH!Y^mW#RBf)=2zN4~G6K*Gr!21o`TL%fTSOdH41Q`|IP| zpI`s*7CHK1rx!}E&X6|g)j1V>JsgRKkz2qtc+Id&C$6@PR)gGRB%1i*Dl!2nb*2|k zaa`X*Wu&SMT8dyM`(V9KK0Dac+iBK-n12qX5eB)GQp1y{x5(KN%2w2`oh~R-7piHV ziT3SeM}zBFE;e1;L<7=DsO;V#>F;cZVlGtap5qtlNAZ$5^2E0E;N8;H#BdPdA4dt| zK?geTp!aGd2p1lski-}ow{`<}p}Hj_3$Kpu$l|ob>})n&aU&cW3DIM8IGnb%8Byhx z?OO`2V#a!KN}x|JZGAS06VV88(=F-_xE|l5BF#x8{MVwT`*`BOJS!IJ$owwBgJx}- zgX&0)$hsGvH}ou{XcQ?S0f4YzV=S)c48I-H0S@#_JIE9Zjd8VZF9&K!`~YrHJQSY(2am>jll4R^NQAA~8s`1h*3c{v?c|;_w?g=C^ zg$s%gl9@q1@?gbibF~3dSCsq?=q?qG2ce0sqjI$=G72F3Z|HY z5c1Va_X{Bz)#(>YJ;t_Ci&z_&5zPJkqv1on9CiV(#ts23?lj7TB`uO)y?y`shs9e_B>1^NwWuLtbl^MX)LE3s95EW$HtbUBvipvyy*nMkv21UL<6nBh z(_iW^M)oJ^^6Utk=O@msi*2Tw50(7Uq~l-OQVvn_?0f1uQZp1DIUbFc=2HAOD;OzE zATvmuC>v9PX{1~*;vXf-hjfFS2AgkK0EB0y0{yBmEp`hR1SUts9cT??iR0x6Mj%PC zxFMC#ZNIDo)E3gNGS}?MAe&QQwY!tP#%G_SCN8(B2j-T%#`%XkuWen|OoZ(?nwmlD zVMitTs0Zm?zg*s2A%!jWte6`$b)(VNqvAzvoRwr>8akAFeRKB}!z`L81u@+XRNvR< z#W9+K;rdLhGwkYACWvV}H(%Y^P!#!}s>^>KJ%Sh1rl3 zM{t7r<+NP7T7(M{%z_jt2!tg+iBo?IX&RXdU{G0c9*O6~L=3_88t!q@W{5c`I}DL~ z1)log^P@v#R^uYn$ef3q`o8*l`Qjqwu1Rf82dD1p{CSrJ<7XF8ndb{nR%0K~x)KMd zc6Rp{=e@~#^E|B9i={H9T`lh_Ds~;HJhb4#;m0WSVx;f^((@~`Ih{`WiKZ<#r9eKF z2#Q3+`GvV;jh{eZiChkHEt#EPDa8qnP9^a+$!@nt1DGJ}_P=PXM|YqI*z4mpkAd7f z&p@#&sB0OW8oU75Gu=Q<1~%0sY^uVLMn9Wsbi-OJxkRcedkc?veN^O(5E!55CKN4! z>sp$U$WgI3gbs*r&u6qk3{^-n2p(fc&*ka2?CNi=BJ{-Fc@S)Td58*MT(b8AhCMaflS@MTi^rlC{oYQT!9Uo^(rHd@-=P;=E0!?tzCACm>3B`RF@me}1$>II)J^n2LcKHMSeFp9TY<7QW{>P`FvM*D5A zOXXP3L0gD8*l!_#qV0OEg2>xTvU6km92W#XJMA#$Z!jwz!X1PUPVkGZwaJW7MQV#`j zFHoykN=+5T7itE_vCX|%7B=h{O`che(TK~Wd*oY~mOz(0U!kvnEIz`X)meNfRaHX$ zIA^wHG!qp}SvUq0IvwG*1fq!%hHqFsi@T zc9N)Xk4(N?x=-?2r(V3YAaWeAamFmLhaaz`=N^Ec6F%M#pAtUV51$c!MELPXWCI`v zA>I5lD4$)BgFjG^?Z*BYUPNo`;~OM6FlF?PI$;RIhT!l^qqn<44#q5Dmo1{&gwhQecvue9`oVZv*wNk{}>p^BzH+xLzOl zs{Le|>cRaKAYWxsW@tG^Qb-&P zeNP{5dR({LIOZ*-QJ5|dkp*Q=F{28gCE;+8cA&PaX`qtkB{AS~D!|)Aw4rbqVG&?r z$l37R9GP-!UDAk{_?Fsr0&GeK6ZZs2V`MU6MXk0MbzPQZlS-v+@wnKIESGK zI#$M%UCmz#Z73kb^RM^zn+K2t*w(cuB(WgmJ)nM+&D4H58gS)D)lUv~)&ucTkx|MG zhpy2W^yn!t-7DUT;d~g1nFlPkZ(@sUQg_l-+BAaGYiydOtzE8Xnt|oS4J;ODA`{E_ z@FQj)8iPm*ul+kZ2nC2@8P`C?fe-EMa<3JThAt${QUbw8V&w=YK?^@|0XqdNWsaMzlLT+-g5n5~eH_FH z30t=M1Spy?3s4-@C|cOt2XjT>Fd=DNg7Mq|6Idw|ED@_zMl)5cZh9##n$L}Amhcf& z&35=@#uOtDIB6L$uU4RdZP(JeG3hvDC8R$9HOhu{+1!Eo9vLU%Ev<_qBzLYDSZL=@ zrHn}lfndS&-EXcY@JGeXINqcextxUQwi11)3L2##ps18jE{_6BRr6oEdMf$7&!TV0 zVvyH%Gr>UL;X5$=1#JUL+hcnSDLY`LBiS@eo};F*&wAiT(^{u}PM7K}(~=tf!WwqJ zR*ZVhuiKr8Py%yTlV!Br2sRSPvA;nvfvDk{otO=14p)c`doVZg12;XSnBbPdQH6EN zcMmooOjK*+4G*c(++yr-k)IGhOeGNl5l{lYR{Oy|g|<>+qw1r`#E530%p`b#9xk2+Xng&l7}ScF|W zY4v%X?rjFRXhmtE8DeLNV>o?4YuGrhbB$&_f5i(zH;zjpdh%V7lq<(X@5w}u?)y^F z_j030DthJ^g9Y+pc1!XM`_#36By5zjU4SM)TXX-{$SaoPMV=sBUSrhg#EJ#;k313jgw$HUVg3`KMnTOz=4ksVoQE39{ z4S2dYHZze{sK!RLvPL>mxY4bW4uI<#S@@4yNBM!$0EW z*tipqjCOC_XlV@M^s4&W-8IVv6kp(!V2(hMhgp*j$XyP>oILlW*hC*qQQkgNCCoh$ zC3K)36DctIhS&-z$AU_Ju?>Svb3p==2~meS^z z0*sgICDP3C_F+&2E@Klyoo3O!G~PzAa`(E{&A50^hi)$?8(H;nd=$tCG_3tcmFs$x z*xiZE{yseg?ilJpg3@){*LRa$0$ql~Ql=AzTxuoWiPs;LArN;U`7m_V)b3@w76+Md zb_>&L%Axtl6b#0{j7&LA{D7A>Ag~Fp0S}q3eSQzDSLmET)3#c7t#uhv_m-b@w*g11 zES-ETAUV<~SA8JIaQa{_Jo{q`i3`)W!F1IQQw(N-)fan^&K?go=U83gAoLj?^PT6n zFg+iMuYI^o6GI91N%q5i18B^oYKv%?Vd)!@dJInfJLXv!78s(#F+Pad1J#> z{t6tRvEikqxlVk3b?|wB&(EEDa~dUweTu=JV@c%Zaq<5C{`Tkl_vat~gc@p@SNQDP z+3WYtOsl%JwJ}G)=U&L#>m2mi2iD}cfAjOb)x|D%Qg8R$N?_Y*C{6`B|As33pg7)W zdYF37lnITjsvYlYJ5R$JEzO9i6qrAz!|qyETUeUnLm}f~OKeoWlek)toT?rjewstU zC0_4}E|2&$2Gr0E?>|3r1MwTYv?h#)JREf3a*)28j&`0j71O`@@a`v8=aSc;FGnBh zIXRR#v+~=oy`;tJWpIK=IY< z`&Zw0LaxgtMqCr83gxLbOGS8{^F7>2Lxb&Sv7X=2O`yul3Cj;ajrVbbPb4ucP3=_E zxSr^dM*4c>0~-pW2j7`H;EOEZaJ3JCxU+CL^lBI+ll^UIi?OLg@Z$F6`fI*3QL+~1 zpQ&A;#2rXDAb)<+UdZDr>4lsZwl_Ziate{#_la`|>?m?iehV_?@JzLUI5Vk+59l`N z(trNxQTaEGxz8X{ROT84cW8J$ieTlW)h$GmN>Wx+e;-#XYbdpkP0tPS+5E+$WE~hP z;*+RIJ-%)%=^ap7Kasy@cTkyb*NFEAatvSjY5*lo`1i7?FwKNzv@v`_^Yqy$^cv8T zf<=N-rQ7@UhktqYw~IIL{x<#ahW>f&4Q*v7@eQU#n>cq8EggxnDS6f6N zcjYJ#)NyZhwkE(%lMO4D4`x;Q{|>?Y)EYI2z+-Qf0j_7y#{B?qu`G-#hEG|uQVl@s zlu1~4)jJJC$UeVQ^8g}7-(C0ok|IPhtNCpmx@}c%fMze@T@+D~ac}`~vVYzaPy;ay zC^ZnOediisGkW^z-WM%51a=LNvDl2U^#{_qLWyZ0t1K>4wcn>!?UxqD(Jyt_*xHyA zR5G?Tlj-8B(!X=B(8cf&*suJ+?i{$PIX5>SOF`O0#GLpH0*)iDIPi<$yK!J+LI8SbN~K?|o8 zY6^wdVvF*(*UJ$LseRH7Pt@nS)DED&N&FSc2VKoM#@&-A({JEhvUwsS>lkF$>yT|M z8ZB+}1hdZY_6X_o7rIg17|w7P%PUm1DmG(GsNo4OC27+^B|wax76HU4wN2maq!Pz_ zv?@JVZPlmKKiMCgj%@CnZC1GAh0iK8(c22T z(r+&m?x;5K5px5pGwWLR=21)MrDg^-O9f`fF6+GAX{{*1eOq|E%%FFTN93T^u^vYZ zM-lzHh(>cU#bqmG(XY-*86ZXUu}M2Mh)d(|}c|HSPC=CSCYkYIDdM(KQukNFA-G z5h&h?F3f0!3QXN82m()#5HGI4laFwLdZXr|t%f^Acs8ME=@W_5=o^4y3Haqjc8dc4 zIP7O!ANn#`sSR1BifdEW8k@&C7Pd)%Ua#t%yF1`8NDHVd#kChFX^W50!18W|lb`_W z7?ED{)ntFf-cw&?XLb^4HObjMkPtz%*E6)I z-`q;D?Nia{uL~VZu-vYXsX04f{&p#r!}JIdE~HAl?>6@zrf=ST_ZRuAzIube09$5< z&bN{>*k8huIT1dS#X?l!NXRP?{RBV)BSIF%MH1pTJIO zGRt)Yi7KTxyI_{(qu1E4+p<#Zy z0@6?u`72>(i-orGWj*1h2g49!`z~fzUQ;e{Nj-2G0u|uvucs)9$?=z#zKC;l_6*_; z2;0Gfr$o?g`kqwS?Lhj{WKF|Tt)|O=h=`(@(k4!I-eHD9O~;w48=sLSR}>( z%OK`V-ezE3)Zo6hXnwky`KE<#>+7c`*N0O}1JMjP%Y|e?U3`!s>Kcb5LeM%}vIo{p zhSaKN4ticY7BN9x)gA1on)S%7sD&HT`Dyra*?HCTv>cY~i4q%_ONU4#;0 z01X64UnLVO6VO2CWzNlw|MTp2`;COa5=d11o&WnES)Pgn4uL)g`#LLeb{<66qnbGuG=lN%KlE7SO%P{EU)zgKus@D~9Nk2# z%(6&!XzqwSP>HB|^Hr#3S_@~Y!0HM-p?IMES3G^eZX(G{7BYk`FfN1WVaCA2raVPH zbX+m#P;v|A@&4}ZpI-mamWrF&HCBp)6DA8+H6ez64UQs~G{l%$I*&dfuXY&uFGB~( z9GH$;vNuDfB%+=k8PQXzbbxh=j4yMaK5uBoDPTl>JH=u~L(poVnO$zr8}(!dq*n!g zw+JcFC!+=)FojcN2hC7x(#2^N&F9yL=nV~`mgT;F{T9Z`&HvKkfaN4IsycGW6+%xE z`$9{Oi;6f|fK@$*^Y9^(+OFqkvu_NsW42KR>h5ZB4xV;RH?h$_9sSGEza0Kksr`ZE zeOs6){LIH*j9fVmtuyUe%LXmq1?ICwNo@ibC9Bfl^t@is*E=tcpm-@Ts9l(kdJMW_ zFf)S<27kB>$&Kh~#wS_PR)noK9)+zu8lD^Fw{aJ3s($rI|H47Wqrmj_vSNLa#V996 zTvVLI21J7opHEBLpp7RkDm@H(jzz7h#)WQ$Q3aU|LgtxpIL}nE(8NtQL2!s4w$(BNfhCToF1h|<9mp0&So#pQ2%1~D?SR{ z@lkn_-D}OK)$kp>o}lTJauC`gkTS{Q?KMdz3_?Q0va_PGe3$?V4v|&NTUvQ?`%;~N z*HLm6-3qr);hgY?D_W}Y;n>~bw55phWJdLbzwP7?b}3813K#bLo3G&NzPLv9pvFT- zvrB=>dm^6gKYG_n(Hl?A;bx?0+3uDYq8btK+%sOvTY`(tONiMs8|5qN2exE2-RzDg za;DV;MV^LHSKkn zzztgZx?PEGElnW5h}c-yPJe&ax)&1>x3!J}yAEPy1MdNs{xNVV;f z+iV9+gUGq2XUkjUxKPGvleLC{)wTq-R)x;+q!H45Dn=3cTy|&QeTVwlwmrga9TlGv zNbe3D1JZDJTWOJ~Wi^>ip8i87v$0cyUtuzXG|G_g9m){+%;C^h@MRo{2Brn^sAM-%#0U6plf1*A05FazV%pn5&=gPc*X=SAd67OMjCv2xPIVg6#egs%5b%`!e>E#sOc z!P02}g+Lp&97+G>4NW`CHe$@%2#n@tNhsEoI}manK*Om|`R1_bcRfE1Uz)(`j+{Z{ zl=wG>!8j%Hd6B&eqIuRfbYZ<04`)9NR|1{?_|R}5TfNkXMq+`IIF()g(#FBKO{U6l z3RXfW)MR26%I^rz?_ByF)=GU!VOS=D2ZFVWkO^yIcpCmbLbb$%?o>rJ&;Fg?5%pzt z8}&}=WpTTncJsI0%9(~X%-*`^r7_IWf4A33jeA2^ZlikGV5nvUlV{u12F%Mp+3#Bi zkk**pv47!Zuy6-GZWToPC~?#Vo-7}K-pzmf>BHYg<)Wnpo?oxF-x$Y*3NK)XW&Ojy z{H>vAQ<+y+m+5UlX|sv9iR@p-&A?7kSUZ3jVyADk-+~eEgfSh`*A=P@_b-*6u%J^_ zEUe0GHBQ&7n6P?*l6Bx*B6=!Z92$bjlmBqXh#P5Z=RGAm%=G%EGj#J$+owArja^bB zDiLnIK#KUcc5!lsM->f?)U=S`3fz30Dj@R>R85|k$ zhDXw6xvYtz@{21MKS1)4tC06~^MPUG!}_;RupWRK(hqfP_*QP#i2mEa%EE)CqeyL8 zgcX&b&+lqrLZP%JviW@g*F3f&e{AW^`US80n;EN0+8Jy`Uo1FghDsb6&+8ca_Evf zEoB92JVs%}u_94=K?Ft?IzZjPhg@?sSmd;O^=#KIWos}ep^4~(=u`$89&s+_ObFoD z*4*nbyacg;GarbB`|_ds!F+m!?L8YwGGfZJ-B+ps=D3WNzw9fx%@VwP1&$@Q`|PU7 z8_9rHVd`!i4!#;kZ4Je4l)_6_bhewSa)z)2_1YuOfa8($38iSivB~2$LLNq}J95|D zfE3=qB>-+|hoATX_yf7ZL(L;x%V=%1^j>?oQrGD(3>x!XY_=8}SX?XR7^wRw-O%jF zS|gpcZ$O#^Vq1LhEv*HO@-+d<|zI-6gNHsvO-Lz1e^@}~q)Aa=^sxADWP)}G^+m&fR8l#XBnO1~w=WKuZ zdRdh@mK)woHcDlZsmvM)HuOL>aJ=#FBWJ60(i{PuMaAkOb;uch0DFPQ;~T>ubr3&f zDyj`gI_L)DkV?>YuSd;-?)9TR{f|REFUC&@l=cC%Q1z;^ew{fK=k^PCXvTc9;fTci z9ZgH?*CBV~BcqIk@}w`Y$VMqbCoI0X-ZXg-xrhazS+GD4aHqz_59nsNb9!(iu_^Ya zpz(?~YB?>>xL7kIJT0}HQ8+?-&Rn5rAqY>XLUt_D!gEJ?Llaf1w_x8h_aNLEkrf%g zK2J`D~dra%REr34PhP5GQ2Y9XP)%ka^wpAqH# zVfWLk_pg3Dxc~GMLc0$R{`&6q_m8=(H0-uw70A1monF2CM%G-A8@;l4%hUK|p-mi#({J$iD1;N+LlZem?K5WSVG8d8W3?4^KcP8kNH^`zFM{K#jJ zua|i2Xw_FDlBHb zlH=HU$_`LN=QVk|QW9(Fb^}sp$;VY~YO40y7Wxv)21*8MCadJsehU^Zl2;olz9W&+ z;o+I@PD%iZha7Q&OH20>pVoxDAQqf$SO_N~7b!7s0{L`U=+I4YPuG z>>SqsRWrna0@FBd_f!K>pwzl9g7&8j1VUA4^?;S0@Lo4Yn z1zo#V3oAob=E3dsS|g4|eVB13kv=$D{z0S;rI5H|`I0f-6xCjVya2Ot*Ar|93m|UU zEWOU{aaraod8;W+tTA1j2x5lNyjvI>Tp0>+r+ty1TRsP0I}*xvDFg$D@7nxkgSaXc z#exWiT8pUkNw>5AJlP}$c>`gjEC3st;B+j^HV3WA1LRE7Q5Sn_VJY->pOBQvHg)#un3)T#cGmf_gvZ7oJc0(j|BKE=A8=f1T1$YXKr_Ur#rndQL zRx2#>X2MQYxC=G)HjT#p{<3!huY=@Ka|WTqJzJ$4;E2G2oPT`(^M|YZw?BON^X_E( z{?*%`kvHjQjhE0{NFJU#>O=_&F5pp2tbAqlwmNZzN2qP_Txf#i6yMZi3-rMSR%g;P zT?XqGIWj?+OO^6k^ci^|_LM5OoM#4i?F~O1)kp0gU*T9^+y70EIwXrAYH)a%?ok$_ znDM3S>5f$2(Q34t|2+)hBm@(wcIRT z?kvm-Sx>bwO#9&b!t%slu^<|Spr|@GKAgZ8*SWT)GDjR{XT%1(Xx4^sUR!HPD5z$4 z5l6~osgdmk%cG+SVy`cYxjA35xCw+0;U0=9=#j;gcD~g$yHGd_0*|E1&BZlM8%4qm zB!6I%XG@rOeV_OzccJ=P4KV6~=42b>R8@XD%9@Q1%B9=QWgAw=jSi`(Ew0sW@ko0ZRizzJTn@B7|ozna-wj2`&@9g^YcOfE3sQ zq?Z=A?6}NLVc2o-T2}Pc$b?YG*a@y@vijh5gH)d#);X?gmQ8(N*#tVP(ty-iBuhsl zx}F-XOaOHRKaOzNqJvsrwK= zj7BWsDUA()fG(~PcPN7h7K$p6u{!de<_W_q?CS?MsOFrQsQM^9&5JmGQvPA}Q34@pdCK zKD~t2X8IgzDPFU$d;R9a{d-oIUg0 z-O6l=NpEP&BnGPZoDK_aNo5AEUVhLO4^X!biJ0gs+z5)@k*|Q*Q56OzK1RJ6+uo%% zL_{(~H{!4s1RlR=&H*7?@?Nl74}I~}N@eK`2QSAIHX zBu_rTCV?lQM&$=o+p$CvTT6>k823&-5X4VVVoznaYg4qi*o18kYg3Qq){%#$^bZz4 zDAA^SQN2w{#VLdXFT73Krh2q;6)VtE$5sR@a~IM4U`-%8!*92ha5y^!RAweP@$7oQ z8H?-csBd8|ql?Wg9QJX|V$2Ow6!ne2&l&O#P!HnqgBK*!ETXE&RSkV)*!<{DWFJna zoYnebd%o#>Ll3N{^2j+b!}6w8A@?apFy>KfoV{DEY%b{m_^o0CJkJ@fA<4ypL)2y9M{;xIs{nbsmRE@ zU2r(dn2#}LVFrp#i;G61pqptB=!VQl0d=!n!EL%c2!8Rxh!*|rY52*Rngk^lyp7g$ z387(6nTplOAr}7uR{u9AWBnZ^gK7+9JSZ|t{_oM>{`~sQz1#ye3qdGDSI878!V&Jf zWOc1Tv`7Gi^EQ$aAbb_4zpkO-J=K5~qxyjF2T@U3ef< z^HnBYvgjKe0y2Yss*1vrXNcGNpYDGNb>8&dN4Qbx`x5@|@(z8t9-zx&m67IJ4X!>| zE1b;Zj}SZtG%686QY+iJJp`R3!be7nsIg(7ICcHU$MRU5uULpW8<_I5>q$SbnC%#!*Kn zwy?{h)W&brKs6}i@y^i!H)3?B{tDG-GP>@7G)%)q>z#^)w;$Dj)R|5X*`hqE7rer& zye(vdWePQ>IA<|t4i3JfzUL`R%Xd#1{ILD4=G}kTric8oyk3BmIUH=`H}BfM z^cMB;kgrsN5WYa$%e^MT9!!f4ta-UJ%_C&u$Zc?Na6ZG~DZ+p2*(;dcqw|GAzMHR+ zL#>trlQTa=qAfm>bHGfDJR)+3*xY?Zb$`ShbavGKep(5l8#e{R6&;jvx&9`h-_X8P zX~Nm1l1X$9X9Iq890_Xh8gHnm*0|k7@;Doz8)OE+8kkOr+q(z7mdvXjkH?MoM zY<_V^xu44j_M?yKB-i)>YK&HreO$p@g&(7Y{Cp*vNuQRzF%@T&y)iBDh_{$Grg&0p zQAU0vq4V1I8Dtx&Ca$MA2&szM30T$O#+i?*i^f`*7RU{)i0}IUz^saw6KCQ4$@lAq zjPlKkq4FkQBCiw_g^G%cawg0*1&j!3=k9iu5*Jys8d11q=`V|VR$W%O0ck$!x={x# zjA}|?`kWDOKqUoVP^REvVQPziq7uc@S(`m?HibgvF-Df22142tlg!&dCYZbpic{{) zw!z?b9CEzC20Z6E1}diTMGYOop17%1D3qsqL2ElTkC$snWOnRLg{0GM!f#WH0y=c) zzLpm|3$TYm?x`3?aeBtCh}{g`N*k_*B9Y{&Ne)%j()BBCC(XXG^>UPdTixYl!{kw# zor9Nh%P$fp+|HS7%;kKi&Mw$ROLL*G@)Ql(U@8trCWLWj=&Je$znHcMRGW^OnnkZ0 zs_CV&dRSr|0!t(_>126b(r{3(N5a^(f+Z)s5#jsoU^JDf9u9r}$ZWoZGJ|V!yJ>3T z{Efky_wPS_WUJ*ubhbE6os8&Hv?<*Vs)n7OCV zlb%qh#ysk}M7aU!9ilqsU^VX7l>`rpgmhm^Y9)nPY`{|OULd_XJcvdUYCC`mR3dTv8PA+s%QzWl~_P(z<(j( zW4VixZvpulG|N7=TVY^1*kYrc+0RyBMfpp8(JWNd#uLWmKGzin-n3 z+&CGk@ftgXA%?nw>q?EFl^I%0Cl`%^rUTM5>@ZMg!MOg=XgL)nUI2)Sxz|6x`u5E| z`iu`A|6%Al3QG-MKiYHs7}u-%%2&$#NnL?K>#CMS8Y(E_!3UD(D|!t_qr+v~D^TBQ zUnor=%eAhr&$8yP)=8GtU{hZty`_CT7$Tc?+;a1D;)-;W({AAUxQLTLOn37 zxum4SKe*QnFO;puaWb~U6kK4MC?_A3E7E_RA%Yc29$p}A<>Qfa@d^jgWr%!YigaTW z1KPEX=p7dRrKM_gXvGnZ8Tsw-$HVcH=i7bymVA4ic8!i}hlZ+b|eq zGy~dKr@WkQ%8>PRheSEBTsO1N?SwnC19|5X(0sBp)$usDdrh1Tsn>AyBV7)Rk z;Stk;+Gn}}is+|{pUbBRrtaEM%->D~JecMtK9J+KRqNSiaqKLC>ybRZI9eKdAm<6Q z_+9AR+wh)8h%=d`q8|KuE8q=f?9dt}phl?4ar;17kO4coBE}pc2NvZJJ6>+g&O~x2 z)~Z1PZqUU{Rx=Ix$eNc8##3@$a=W0eHN3o<9#loRXNGsEth+KbH~Q(Jg14S4VrcLI zs*4@Gq6f^;;;aqk>kK{P&>T2BAOXaMUL=VDDmTnCCKIBwY1zcDmUrg;Y)!@P;hHJH zjR&3#mir`k>@%%(48P6EsBLO55kJU)A}<-Pn=AJcpnkX!-9eT*KSj~7og93#^Ofw>~ZbB|1%o#Tf*HVH2b7Un>l zH`yu92Uaz)8BDttA(NHS5NhwHtFYbSApZpFjx0f*g{$@)VTU^;4jx96DCnX6<_EMe z^NZ9$FLl8R`kb#Jq{tu#TeEahEhzWqcB(R4U}Z3wE{KV6CMEz;@h}6DMewlir(|#M zR@cbum(;+)Re+%NfjUkM16}V85G6#z8fKBCg#M`9`J$3uo6 z(`-wMfDL;7>gRi&<`dBbUZ6V(FAP{jIY(wu>sdA7$I-v0-H-H`^rb(030l44kv^Op z`vI#Jd1!(iD8<7Z(x}0++sPlFm|<~qvA9`mzp1#vNOaw9wmCH?0n#ivON!NiV({7K z_KKxFOX?h#P0|+QOjCu3h~MG9wiR4X%sQe!e|+`+gHHWw4PPye_8N(3Z?A`>+tt+$ z{ycf(3}XV@R9aqhvDknSu|Flw-n8LZFA;Nn)X(|)Um~Gb< zl%Ri5HL(mol(*VoGXc$%Zpgr>zCx z>4LRjhyBw|YXWGTI)>zj;axkM+aWAXJ*r8=Q>}uyo5s`WIwd3kEskRkdkXr31}$Ek z$b^^7EV}4Nkk|=h`0e>qd6V+g)%>YiT@TUBdMRBu)y%|Q45Fnk;hAFK7?vIILul3SN-sH>qon_-O4JG;;W2E zf58h#ohu>&@1B$*2fwG2{Bjf~v(fJ#+sZ{cobz*77aUOq%FsD$3M1O%H8G^9#v{PJ z-%%R@*?+6R!w^N&DU3K+-(xf4wBOU3dTK9y8qU<_8U653DQ@hZc>HPj%_NdWJ15N( z+~{xSSA(fzLU9}E{hfh8R7|+~dYX6F-jE?KRskdidCAO~txZSnKFN?n>!g`)NDJv! z91HMRH$stAmPJON--k)TtvcXn(es3}>~;PRC!9BEtRu4&scGaGc$Ru-$RSuW{%o zMrT>xZKbX@7)MjHp~0I7Gw9(Jpn^*1oSRbZ^P`Nb;rj!q-j3;{81CvFT3GFl!AY_n zW?lH!_WHSjdpt$d(F1mSlNyNTg&ld0^*p4)@(!X3IX()QY8<29aSvlMc za<`ZvmT@;in2MC6jZ^0p>NbufnGw&l9-V|`G}CD3i1cd8)>g7tA*PbtX1AMOZ{TFX zp+6gy4JmHM#$0T0CSdxCd!w$mXWGql&@r>T3}6HYUoj^W(s+3G`mB0=%AkA|HIqs* z$G~HcJofs)FS&Q}pVj9KLS_`Qg|^5Y>Y4dv%r8HKQY4{9p{T#oy#4*V(Z7%I3+R!| z_>1^Vcu9N*{A(FfWq+;BOl5h^gfAo#LVIB1AL(~rG;S=&ud&^I|U-iPjZ zv|TCbD}a0(C<>MvI@U?*ao;r@?gzxC+)1NZ$$VMM#d*8BT@m>pk}a=Eai{c}ECluLP$p})C>0U94;-d8-}Ca6t4%@d}jOpKXcUEl2u zEtTzXtSrl2%atlJu{03PSz1<;h9P4=u&Sw#ZrAyWY|z~$>Hu{^RWMy_y_%FOn4XxT zwm3GAA8>kZ3<;v=4Zmb5KW-4Kk6f(NXCYHYl=e;_)oUV(IbK^k;(4D<#>BGlEq0a379K!RFV z!iR6Vy@4iSc3}5r%7Q&<#w8%a&Gjh#))sO(r}enAt%O)LW5)*jXpzaJNI$9|H=G%! zUMVLL_lpof=#`k8By^L5uMl$2iJz~IA&s%jH!vU`Y}z*-{90DEuzkTKcEK7@S;mfA z(h>FdhfnQ$_I2_nh;f111BY^*v>t3~%D{fyoLwz0Z&2Nit}S2-?x6jeAH4eh`}d!L z@WUZgIS47;pk(&P?>>ySO;3ot>cM|`(_;jJ{}qAPxDR)S%xlc`9=llqYS21tGEYOp zZ1EXZXhIPh_dVuL!h@E+0@LJ$MiKrx z)r*#L2dNjP2+1jdQSdg>H>gc7=eu1kH%zx{z=jG8gMB3^-9~i+-Ncpkp$q!`=m@m- z@#tSwp;)R1^!3j%mVDyj{L#{s&py6-bB5!KdSG;BapGbc>|uo*SQ7GKrW-QH95*rM zZHz^rX#&bZB10dC-8u2S5v{a2^yJ~(-7cm#Ht7;?)oyXyXa(q-oOqt+#5tbi+MLg- z#Vjbsj-7F=EogyvnYTKh!^Jhn@XgiP3uHD!G#l`~1l|hstJs6mVzU-Z7`mhOXL~K; zLUHyCPxIV{NN9N9)OLWfM`s5@F=~{Ds%2vizj%;2>_DB4jWJBnLeepxS2r3PnM+{3 zU+6bn5s%HNU7CKZ|NQFb-RrmCz4`e4{qF7krw<2UcIbK3y}sKC5>{{=s;^H6Etv+X z@3#}=rW=hY+12f`f1P=6(u;fW>k`;!*VPfq7}Je!P8ap1)Wlh~%fnA|a=-Y)+?LQ% zRF8&Vk>F2QC9;=9f6F981UZ<1T=yK|$TR2#nWJH-;8%(z*Ire;8{E7Gfp+kXF-N6l z9ieFH(;6!4ncKYN+E})u!2VKoIH8hllSquUV4T7nVj<=-+QS9v4EytvsR=-Akqz-2 zsYo^~7-PHlff}HAXEHaVKgS1@qYSa#w4^f`DcT!fME0bU%Dpw$R^_*_Lx zJH&=dBr#~T0G8$CL78){6#d(TCxS z<&jOiQE00JidX=;kGf@>NxBc+xP9>X(c!6C-euN5XEf3dhMTO;kA$_zVF{Lk+J4TS z`Xk;-0?|42`%u)8Iy+F$DN_qDjIB7AhPt~c`Y^z1i%nK=%gbKb3r^2XVdW=C=z+G+ zJKZ)f=7@<|Q<(c7NS0T`gHxIp8c`7V6lENu@F@_Kr){W zPKO_k4yYh_7%Z`r2(xSX2%~onQfD1rPfnTD#k%f1x|>a-r6o$}w6Uq_`ZXx(#rgGk zP?1-G8US!R*TsTPBR67m(IQc^%=$$SnSEhu$nY};F2%#4;-^Wjs)i!O_p9yMrLS;j zf*$Ux0dusnXTzNx{uwDdE(B{D!r;@hI>rgHt>yZzWFkanr?k7J&mNsxXA4Z|DsnWZ z0n!+>?5_9m2svs|-6;xMyypifvnk6af;2zdF-t#wkU3A+RVm)mKZSoDXYKdwRqo&p zB-f2xTsseb;O`R%0h8r)J-?Vtzs*cL}_`)Xiy30NcH z3rDZCLp&zgVu~CsS&nZ>@@fmy!-509TQA`BQeKS+Q7o3wfBoWyAxrnE@)qdI87I^~>21x+ow$yU+@eTOGsXK?Y=_V=5_$wOe8u zom0@!p#&wE9;nH1GrCK2(Gs4i2huo5)9fa<^?X@(=!r<fY5$>I+N*D0D?CMq`IN z!yfEXNAH;_9eaxQapTd*F}ppxg5Euz=bNbut&cLhU8u&TSxr^R4NW(y)*YOTV6Tm6 zGWT^bLD3)MjXF1&-=6Uym0*d32^8N2asDPzZcbrZ*O zMNd63OwUvs+UqN1Y4K{&P6Nn{Bt5%1jX~Si#ADa1nkc1x74O|M+-vnpvUw?NU^qbH zCWKqJ)D{TO6E^{5i(GS2%o!DO4K}u9qks+!3cf3;S3d2)b^nRH_m4k*L>%zzcW>u^ zy?^_Gt~A4a0t}W#JkGG(&;?=6s941ZT%FHGxuIzw5|Otr;%e64?CvhYVeP5oI>&T& z1VUBmhV|f_Fbzmn&?J8#>tvz$R7VVyBIP}uLZn9Xpm8`~k6kFYTC@lT55$8V!0(0* zOsL74p2-3i$!L+Us(MdvkqP5!MRXZ6lu7fJFX%1Og@8!FVX(8>8KT9OV3m^kBtork zQGuOKkxu#>+ECWm9_zVfC->hPfSwwuklaPSG|NPUa(}1}mGdR$-XD^2s4bxg1`^jx z!Vmw{oH$EUJ-E0!*|IT6FNB0+9KCbu_kYk}4=Uk9qo!5h7alg@ z$Oj`UnLN*?UsHKCN)>$}QoP)iIBgt2*Uhxo^>C7PsQJ0S_c-7W!ZYfNh$Xn~CWKh8 zmXEL`a)o{O#BluJfM^=y$j~F{n65!tH0c4;%)6r0r`Ywc7W!;^kD=G|YmamC$|mK6 zPIk-b@pU<$*3{S&j_7*-HXscJ`tmgrrw%5u=|G57VQAV;&(^arXI8JqAyDw*mBDm} zBf9@vQdlNqI=g`fowf>)rtM+325Ea?Gl3sHH_vI)2qAc&L8YTAqVf~FV2m6K0hxJE z=8HZMckpma!Rx_Ht>GddIfyCbWzDkdN7T3Vp96-bR|0SFf^yHt0FD?75nO(%Hl z*0tC*(JZHcdQ;XqQ#~;$@@FGgLjlj?7iY@ro)-LR)jTZ?APAnEyM_slk|h&4Vd18;z!6ZHIElOp0MPE9pF3 zz|HqU@>KjWXtXp?Z`?M3D|Z%BJz}%NK7(Pw$vtwZs{^Ofl5DqNqP@-6RYR(=Ih){o zeza_3)Bp~{M^Hv~YhCqlmip9l51$l6N3cb<{F}yH zVD&w*5k2r=Ld&fBhL6&4KwX0BS=ezY2nN|th0(&+C(h%M5&(hcIfE<3+3XvSJ>Z&p zY6R}yl50xC_XSr}RRh&acRSQbV=c#r2+6)KGywv|ACT2y;@;W)pI|KKMJW?e9s{NQ zkam~pUm<&vyKz# zYP*H&WyXRtz5`5M4)0)7Be&s1t;%xFh|93&@Gpeus7fAM<~+_T|rQT-TcXQ!q7EDJrr32!NZ$Nv23FBrK4C0FaX2 zFDTifZB=N>qa}9U%X@$OeBXD@xl4D0Qffw((71hWci+Ct*%wbR07A8xtwZlddohwi zzn}-AJFSa?w~U3x<_Fw>;p6o z6u(`#hDVU)c@(QE4LlafJEFAOw&N(a}JtpuMiqYcKr#!OJh7h#az(&(6=1f=;=xl8b)*Sw%!9XyRsTqp}W7^CEV z5|Wc6yIkzuJz_dJngr8lQqlo#G_=w|TIXJ9Pr@7P#32t7}ypOVRp0L(6?4fi53g+Y^qT;BRtE5vnc4e?$$jqX(!ICV5!l`d$`ZTd-I^>8d^Tj5~`f<$_^6 zb6hCI7lToNqCb?XXDJL<;z_=ypa@x4ML!$~ccO&^(+r6zVu1V{C=P4GX({Hl1=da5 z?QIzo|Q+IFJ_w2C*z6ilo@dNhyM`Z??l2skfhtGKLgoV^J(_|8=5 zZS;0vM>lA0Z((%A`bs?**ZNjdE!3WeqRFz-hPTV1?I%yn;UZ|Xw6_aXY<~6-;76sR zEMHZBa+Q)P*XO1Oz-+_47W;fX_CngGsB15FcL(ROaLij?*EXZncT?J%zJHAh!S5by zHOP|Y8K(c<@yXXHfQQaixYMft zzvzNpM40*`yPjDv8mwrw^O*zsknV)Shm0Xso$qXx@!I>nt)lWv+M?xgaNghb$fkq= zQ*woxmXF}aPPi;TH`h!KH5mu$qeM}-g=aluGs#fwu&PIwevW#O$o$ttb~Q{NYua{5 z_rN1O_;jbx1RTkPi1?nWr5&X!uA3|Q64ExtgiCea zB$ozytO6s6E-^oFg9}`vXP!;1ae0pGdrZm-4iRa;uT)-!LCWW^HWN>6unX)H&hJAV z0y5^?IVe=4?Y&Z!af^M3ny!`VfEz6JGl*O7td^_hD|{0SAwCU*hTp@c`kxM`-Nn|ERPM3?x z8fEb|i#}XE;ih8>U@SK$W{m}95)O{HU{5NLc8z!hiLo4u3A*|_aGFa!R8rVnFR)8F zr;X=!bkNgBQ>fvncu@_4XxZGD!pv<7G*ya)E5j`hll1cxpGA%dLb?+5)0vCeP3ZZm ze`MI(E>Pz)qGN*1gPCHQ>K4sI zfHV(6R)s4-%Rtc4p_o9OK*TO>;m|o=ytu~FArn>P7A(-cId(0P>Eh;B{vE&j?ZF&L zu-*_6;np`s1?p{YVB>dHfGZmZB=0smZX0tt#qEfxq2duPIQs_dGNNhUGHfWQ=Mi+@ zXHGixTNuI4m7FMqm#9W@hYGwOygdXBPf2a+edeRq6j6x<6_YUtrqLSi-Oh;@&Ms8{ zGaA;PJ{HPvA6vga{p6p>RTbL|T%K*f)efMRuU+QBZUQWJf$NPT3Me)8t$dA(CBv3f zGPF~y96P`hIkl8)PRSRRu>W+oZn+C=%MIN!30I*qFQnqrH0729{D+@k zzsFR~LB)#`(#xl(0kKz{^&u3&dehqBIur#|-=d37PLqz$s4Kn@$XN1=T$|SKKE40p zZhQ0V8&pLwO9iw2Iw8GTf<$_;R~PEaO0& z6)}n}UMyh~WFKNGfPpjj(bChzyyqYpEF!%9NsVZ3g!&k)=;(|w-y)=iDYAs+rFSck z8&Z`TP_u3}giiVrp!5*g>Rv9MnMj{n8m_0a|I>lUVMLJ(>!^HE$_&zTg=@?-9?2o4 zXzGJ2lR(WZJd4p#>b!_+$jQKjyPTD%BF!K@u;K^H%jrEr%FH`z-v0e>PM)3|KOOdm zho{GbVgKml?oZHNPltow^u8NjsD{aB`i`ub0 zGEYA!kclT}P-FZZ=Xvq>yZ7VwZ~uPRqGbtUThkcJrYzte zMse9i0lwn$3N9DxO9pkY^U5+vznb+`jNWd&q ze0TSCNV??EaClJzq4=$_+uFKQ+o64%d${z?@lrU!6TtYcAR}SAJP`d3Z`{xZ!Y|+B zS;}ZHDGCM3+u3&zk)Je>RC-DE$)es+NnLHf|HsF>ADGHhJrE;h#wtV8F3=PjAp1_r zgg23G(LEwNjfe@RA@QUniywp;#`tiy3fZBvOa2~XlU-_{wY=26_+=_SHMwWg1E`yU zc`Oz+HT%Xspq4B+1i0HbrCuHA0-DAideSyW(jVGhb|wb)Y@2Tq#4P+^DAdfQ94mz8 z38h4BWo?W3Xn{2tqi(4XZIxAfkB1oKO=^sv-hO<2KUE!fca7F@Hn6d{AUzkO%(;<`TX8!dG$(C0cc8H^I*k;MAab%x8F zU1xaFU1xaCR^v;s8$?Ft!&J2OjDi>N{60{yIWM64FJuO!)Hs`(u-9i;oOx*AUFV

    SigK>eM}PrjN0=1?j<6eqHvnLF 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 H(}Vv2ZA~F! diff --git a/stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.su b/stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.su deleted file mode 100644 index c40c653..0000000 --- a/stm32f103/Debug/Core/Src/stm32f1xx_hal_msp.su +++ /dev/null @@ -1,7 +0,0 @@ -stm32f1xx_hal_msp.c:64:6:HAL_MspInit 24 static -stm32f1xx_hal_msp.c:90:6:HAL_ADC_MspInit 40 static -stm32f1xx_hal_msp.c:122:6:HAL_ADC_MspDeInit 16 static -stm32f1xx_hal_msp.c:150:6:HAL_I2C_MspInit 40 static -stm32f1xx_hal_msp.c:184:6:HAL_I2C_MspDeInit 16 static -stm32f1xx_hal_msp.c:215:6:HAL_UART_MspInit 40 static -stm32f1xx_hal_msp.c:254:6:HAL_UART_MspDeInit 16 static diff --git a/stm32f103/Debug/Core/Src/stm32f1xx_it.o b/stm32f103/Debug/Core/Src/stm32f1xx_it.o deleted file mode 100644 index f2aa276b385eba98ada4eb0b5a76d21368dc5e88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 757044 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

    dXCS>`iP& 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

    V|<;4cFen{-&huDKdVugAAyRru9G+658HH+LV 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¥mxcTHWG}H9fP&OBC6`7r+|GEe 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 diff --git a/stm32f103/Debug/Core/Src/stm32f1xx_it.su b/stm32f103/Debug/Core/Src/stm32f1xx_it.su deleted file mode 100644 index 63f4bde..0000000 --- a/stm32f103/Debug/Core/Src/stm32f1xx_it.su +++ /dev/null @@ -1,10 +0,0 @@ -stm32f1xx_it.c:70:6:NMI_Handler 4 static -stm32f1xx_it.c:85:6:HardFault_Handler 4 static -stm32f1xx_it.c:100:6:MemManage_Handler 4 static -stm32f1xx_it.c:115:6:BusFault_Handler 4 static -stm32f1xx_it.c:130:6:UsageFault_Handler 4 static -stm32f1xx_it.c:145:6:SVC_Handler 4 static -stm32f1xx_it.c:158:6:DebugMon_Handler 4 static -stm32f1xx_it.c:171:6:PendSV_Handler 4 static -stm32f1xx_it.c:184:6:SysTick_Handler 8 static -stm32f1xx_it.c:205:6:USB_LP_CAN1_RX0_IRQHandler 8 static diff --git a/stm32f103/Debug/Core/Src/syscalls.o b/stm32f103/Debug/Core/Src/syscalls.o deleted file mode 100644 index dce20ca22f1f4b7923a95f0902f0f7b6b92e0c5f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 81388 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

    {< zx=Tev&E*Tx2&qWyfzUH|EnwCeZm9zgpDfCdc6CEqCbJb_dBBmh8EjYyN{}&2p0(0Z zR%ydEq-1inLdDqxE2B$wZ^b&8H0vxAoS9#*IQ5$ZL#jTCN+~*GY(=RN$a^@RJNIbhIfU>S}`P zhLY>%nQ6^T`rlZp0={RuI@Ixm8!!aW9_>p*{itsjEqy^^(onpnj!Ji81r{Id@CRlCL0UQa zqS)L=P_&{PJ;;$?7uWTA zu2m~zwS}rR4oloA2~k&V4HtnsnXLp<_h3!v2CjJmKW;lm35C;eWZ;LFG;V@SEv*{# zk>Uw9sKRhz_3J#{WyGbL#BFACoE00$Rpa3v5vmP*gxsiLG>}r5O4Uo0+(Fd$)bSfp zrmWfJnw@ez(WaAzY)REx&_O<$%d#HG~kP+=#5|A0pwNal9}tlL=gr7nY)Fr-+Lp z0Rq8HGXfdmkJBBFW$p+|Ulw`CKtUqGm>YY*#36M8d(vGHCa=x;BBf2x1qI3#*qoV7 z)HAJI>-Tih+(NMDOAr!uy%@<`iYw?*2nQC7AU#?9{Ob2e#qOCR;~G*$LP>5PmN|oD z~y(mA|=b*v*J zY+Q^?bdg-s^LXs>0WDt4+O-a3H; zVhDpXc|(+>BFxAQzA*72m+P7j@z;{O<5GvIT~%ISxWgLE!|juBuYOco+pDf1Q+(8F zJONWX1;RRG5S8q~8_4LmzFy(egt)xpiXJRGXm00F_TIk#_71-w>;aA82bfZ{9Q>2a z1Z|dndu?=vr*%~|yx5!oX>y=dho`{J)W-9N9ocALJ#H1f-5rAesaSGO=GL{swyk_ro@)|}M8g;qQHtGe-qy`&pKII(%-4HBc zbL=Hc=tECLu-0%Dmu&(I@4Z3L?u)Z7(tUW?M>%^>OhHr3=6bVAd6$awT6P-)>K$4) z;KUVJGboq}N_`+b7PJFa!ekhNR$NGuS6t|)I!(v>&dt@l0{Nob3Pg@CZ)vX-Rotdb z%X$M(9603IUSlC?R@v4`0+N;tX2wG)cUnqs>@7Xj_A#~maE#^^acE{hs$rTUoq*xi zQLymZ<|#>l5HIB!@B_N3aVigQJ*iGh&=`w)N0NfT2+z}!>*Xj-3!D137V!mMKX3#l z1Eg{QrJR;2-4(3ETO({VO-O`BW{y1)bO|x5B~@4;6Pc=r(Fihb`?)zsn(hGQ1+Xkf zeRoZXmcH3o6xWH^Xp{Lqe1FRAO+Hex5R`>TkniIo+mFibU|ks!ZAD<9)Pm9rm@gR{ zAiG2K&Gc|79_S%ge-9a|x)|n*|2GF*)T%a6ku4kt;?10A@?zfCtaankAn1WKW1|eLZh| zWB5AhNPskltMPcW#(5#X4W?uM?(R>@hR^~`?*3%^)ATmbzSpOO_Gg0W;kE%hrylSH zaS+CuV}i-0IiFs3kn9t}2IR&U@WVQB`5st>4gdhoS1YUVG zQ!rcG=!_Ln=r{NpxaRo7Z!;|{YFvQR47Rkzvl2s?leXwnv91s%pY+Qc;i`*4~l01eOU?^ zss>cNDAFN*GyU=E^AC@EzopC!C?*`gS3nMPS9**wrcuQg$QX9upZmMszxO2__Ua#=+ALHTm`iu-N3pA4bVRq$u4Re%6AFdm1t5!Kn`6t(6z~-%bB| z_kMi)?%g-AQfmWLkoy1`FG6<$`gNaFnsl)#8KigkHP2Cc+|@t9bVI@5x{?RyZpiRgO%@W)Oj@(O=NLpkwz$LBY7Xsw+zyoMMd2Q#JEhVGq^OCI#DKOGlGgI zPbO#0JBz8HdXL+Zlt!0RPLHxzFRtNWR<$&6NZ$yw*fffbq)WNzj|RJ(K@|Sll76ML z5E;F4s1kr>m$b&j%b#|un@h`LXGfy0*#$uICqVkLgi!h*w$dbHDoAK{XA@-470ZMR zBlySgf;3H~r5>;MI+J6}!Fc==OqWQ-t{dU1SX^?vwY^)Y8kt2NuK~B!88zDm+Ji!r z>x_`fKuwQ!g}K0XZkPb6Gg&;H*Q51fX$N+nTUFZ>DLnU#bJGA(L*}!GY3bIC6@`=F zZG_&a5+qNeN@d2$*>iok=lT&iaDE51TDV==CmU_8xAD;C^YGsOaTX~suA_%$30YiM zu<0tp6@I;5tS$?`d%t4%mUA5Po!p-BaIVX?0PD$|2AnVWr!Iqxs)xYB!cM*dH^PD* zH%Gx%9dnhE?FB@l=J!g7Ud0_}OZ^J82Mz3Q=%vkwXvjNgK7`|P#0E@{A%#^c4D2KL z)1kOu$>!-Jz2ZTyY!oZ-YK^FK{b|gQO@9Xa+}9;kJ3RBcJD5(>l^xXpujL@QUcy`eTmD)hPkdgAq*an}tScK}LrqOU4r;BpG zY1n4WhBFd);lXZk#yF*}U6r94sTRal_-<7|aye)1LYw0$2~$&J;5LL5%0yhyHB0O3 z5qgDlNPlS8jwN#HWiH3XI#2;@SmEM!?V@3PB^WP1UdRFN%N?+;3MhjG=k0p0HGnpOpi__rsX8CS-ieY5!X`Qj!B-hr z6JjtOMl&*c7CiV4WrW4AmCB00~daujNS z^fc~`ZZ8ex^LBHBsg`0Nwfr=`#+9a{M)DAtmVrz8swP(~O(+hIdv#MiGP>aHgTg|E zqu~EjUOqk!WBzq{`O-}f<>i9{etQ8|8(6P1fom&q_IJ`6QncQUmZ8<40g~82&du28 zCCtUJ;nk->XBQ_o^f~2#TC}zX5PQp@Kw`}ZmRbJqFH7mf6;@n!Fr3QAzpHG3?(Qf; zW*DcFbRFclMz3ARTU>z;gY6dApgNn9i_3dByL(rXA0=vrR>zOjaB7F?163EUsMaj8 zna42wl?b+}l@0^vBjR)NcJc#^{s|uXZ0DN{J9Zqok^Oo3^q;e_Gi|OOZT3zl2V7*5 z`4sw7TxV}`E69P<;Yn7_?E%c0pytz?>14HDZc#s4i8MwFR*;_Trqi2er@hn@-#*&mJOxwp z;4P29uY`uf6F2h;#Jn|ZDgn_RW3H(2_-J3YD1nOEv~$6d1%itt-f^|)V?(E2eP}fF zl{V3)-s-z(Xf!xQ}e7_y+6L-@0pHBt*|HfBn+^uiti3M0ObWd`{X1Bf24;MXR-CEBAek z(6;ix1K*>i8>veTPcc;xscCKttd)gjZH>dWCaUEnC#Hu+Ot(QyQ(LdL1$P6qt0o>W zQCp9a^b9&r2xn|{26;Xdy8WE^IVWQswVJ1Js5fc;hW@|kvU=@jFeNj|yEsf5(k>^2 z=P&;66~FaC+)JkVfKXXBAiCPPoki~?nF*#TCTFmD2}RZBrCVYX8U!i!Q?@G4IViGz zQ%cS>P&9<`^`L@AMvUdRBq%vXa`5F~aCmg|?C|LM;P`OZANKE__Mb5UN`Xod?&4>J zaTS7_PX}_cR4q-9*yPBm!7EKAVS+i5Ne=De{Axf9Otj6FW9~$0K4^w$rAFqs(-)%Z zQ4!dFQ$bZySO7I(({Qtx=yF9jRgdb)7c>hz#Iy)RFw!0rUnfs@@l2+=bhPE`_I>7k z13FSqoTfR!G!9~(v~nmBP{p=Z0Cm;frn+$~SD(1tqGa`hUHxx0f>Tf6rGWR?k1iXvj}Ki&u7$M5KR@QXbV ztowha|3Tq(fzPFH5`1B6#NP%`4}>JwPz*uW9BQCSVH7?q9snB&0a8=%*IxC|$>!J8Fuh&7BtjEK z#zF4Eo`Q($aiq+l%R`KXtZhYGeaxZ=W&zex=>HjKGrywF?gqIV_5$b2L)+^X{o85a z4UmSa(bFM!iqZhaPnvsfe_-UxTF*+5kwk@xt*%iv=4M2X_au@{N0cb@#E`x64arMO-3o;?0Hj1NOud zDcvtOFP?x*D9+GyFA-DF`zt+*q>jNa+p-H(lYMG5w4@IdGbf7AQtK|B`C zfAkLG*~#$-j0T7r(yrh+crSGUIEltky(>pb~T~<^Xg&_ zoyTeeajJ0@7xOWOBd$8f;^?;n(UqLu5S`-8z7BH8SlfBg0ipEvC3+70%byCmS6;iacchqs1sFg5e0G4qUT z=)55)j{+Iv<(zf~hY-Z6W8HBsQ6sdvc(WT_Z(;5~UuyZ0#wH9#N!2xgs>@F&%59Yb zm`OPx+9Oc~CT@EH_l8~1#Sp_XXxa2S8GZE>Q#TAee{{5b5oW++X&yz0cQnheH)!1S`scC&{AR7 zeNwRc=%uiYm=5v`v0DfHBjL<`U}I$<5?we&uypY=)UVPgs1t7JjFCA^I^&WB-P1** zFjO8ROnch0_|`CWFDMF(iyDMdq;OKhey^+CT||knRy0+zHB8TTI|T}s>HxPb)RUp2 zzGmCX()U+ZL8?EQ*Jz9Ma!q!rhUtY_DT?9KS3Sl5nXhD2&Z`BpH${1jA>MbI7C;S1BHwb}d?Id(WVS6?;npn}4Pl;Km|Ixfe?+y3~FJWiapC~5- z+fMe*0uzdgZ!`r)sSoh&`Jz6Lvq~-W#uj~yB|K>-@Us1%iZT6Em|i7Z|^HG z20%X=8h*FnPuwN_)1Ny!=+$(S-73r9vk?x z2BiD?TsiB>mCpCSXXa@D^X^Yh47IT88=0sVIcM@trZv;WcD-3=tdh9l1U32yhK%ZL zW^%(dcf#~*)PDl5>z1=EH5&QZIO?KAH8c4X*qXkHCMv*)m$6kvsu`c_!j|RaO;T7B z;&)o~AAEAwz5LV2ObRo{)ImxYmo@`OMArkT=(h-TfnKCX)kX7SaTab~eNC%cFCTq= zMQbfhynADKlmNMNJ8_xU?_x0|AY4ke)m{pOTAPLx|u_Z{!jYnU0Khl9b?-4A$6#zP+@QKMlH)!Kt|1?oE= zEe`Tw>%C1BMR5m;q)&>&xPoJ|E!4var*q=+SHK)#oBCN|JL>f_+)@Z@pM(~mu}JuAEw+0+O^ zQ8J(^C1Fe>p`-)#HZ5n$`H9>I>-p-UnW_Z}B_xjHScRXc+muuwCqYJQsC@}Nj@opT zzUQ+`BvA3irxF=)H?ui%4!S;||L79(%g4W8-oC&6{_Y2;bd6h|+R-U1W_pR1X0sgw4Q#&tWL~vL;i@7wH6s8~tgLDA3Xf7~eJpHDQqw2;^k$B_bUIVZcuJiFqu4|QdwaSZ!$P!`)Q)eGd zrDGCK!13y01SOfU&6`4G3N~9v4b!!pt4D_lQ!TD6H+_o(Wy~|=tPQ~%VfRLwj=f&$SoRq2%cz%INpG;r(Aon6u z4g}a38-TB`py$SP7Hn$rKuHJ{qX$0#F_g=N13Dwmx6bV8Mr_%&SmecAcQd zr*?v}#=&HbLw(ZAKW$-vG;$EOE1`dk6pb|M9{uFN7 z*L2e6YV9SCZ6NMAe{C5@=2x@j4j$xS5tLV(Qy&)Qke`FWbuPsGrIhTEDePafx+P90 zL_(I#1rfqRhL__$bk~p+t^f{ym zH{>?Rj-A&56aEEth%_S_S>#GUEI23_^~|yS0hyVbPj^}N1al16I~dQ=9YfUxHjH$& zakEm0J|n^O5>13V6noQG@J`g)5) zJVZd8IU`ghg4S_1KQBbU(6?SKzeYxBNX61%hBZiK{|=IINS4o{^%Uo#Yc1mreWR@& zjxA`*eV{29+RO|%!p0^K79c%@{2jIxN>acH#8GrW!?>RA5pd2vN6Tl>%gV^Ov_~^Z zY+=0%fb+7fsI+LxeQpoj!!??VznP=TJaM!MxF;~uo{|#=9Z*~|h(XwhP-ayhQ`W6S z1g1b+*Ygdb*rzUg7A@{}OF*e&D>46v zRBu%h>YxgSX@D{^7{vyC==hQZ%iY~*?12x_(&~}{TCEpIU%Ot2_lbs}jvK_h!eYRj zE!3*4UjwPaD%o%>*|WY@iS1GAs8yV@>hnB1k`K_?I6Ivf&F&Z`=pwKy>I_~ z`>_heD~(qLLP9r&hd`9$s|!xdb&Z%{x7?7Xjj?g~FH4vx$N(s>GnahIzT8RO9sD!R zynH#|u!~ek2(o+z|svrn@eple4di29n;AJ6beOTA;8-Y(ctoezLs1sSzgL7kh6;>6MBH> zHA+T|mU;L9$ISIq{DuEYu2rdz`O0|!%KlzZ4Z=>xT#!6QW_oo# zM)yd6Vg##Y@9hFViqmDYL57z4e5*hiO_K4v?(JyI{b7#YmY16N4%d-uC|7MjNa0mb zn&oX-&PK}PwN-%X7t<1g|)Uaey zBth4Fpt^NHEf^P$VS#n3=3Z7bbwG0v#N`^)u4K#gy|TfIpXO#0C(hH@P~?hLps`{TI6smm>mIrk~G)CH!J4@K4<=XRy^;{ zjMIQf>*nd;pmWQ=eCx25tc+MZATl)n(hCbJV4AO!Ui*?3JfQ%sWJAhbhlQf2wvu6* zFcYVHKBNWngVNcCuD$Q)pd`UU-{`)7kaA0T%`}kOLU1Odf_5NmPml2lkkamZ_dopj@$P$Y=bY82U%@)MPC3F* zN9&*U%?SjHvzCGVkx^1EP9-qi_PgT2c#FLbA+H``{+Zh-bmcQ>dS*=$SGew7oWbpq zo@CsKyOEC&XmT=qW%Loz(y&`f5WEv-AUp-B zXtr}RbRjnXel4$5b%*-YIx5@d5Qk`yp1j&Zg2rDZ?1fm@<8PT^Eq(+Xt?S)!Al^U5 zhU?I^YhJ1T0>vY@)Oc?wK7595UD?r_X|gzAX@c7xz11XVzQxKsyPFp@WKCsZ zkoAlb7T`A*I#0}U%CWPx*l5f7;|y9T|8RaMPgE148H z;vfDL7E`Q>@w0^F5xO#A5WeLk%)}68+}v$0MuX#LyV=|KZ$JH6DkSZ#>N1c)g&DeW zp$P&>17idk5$D($NOd)xHB4jF+DoV0H~GST=NWWeh@WTC65I$RI9pQ;G~Y#zDFO8| z?k4Iuzs6fxg1bx)(uC;-lcHAVBao6S*xryvCBjQ^k(L5oZN#83&cwzBr3J|Q3)pa5 zGr`dn;50sv0;KTRYUlfJeXQlK+s8Un>ZxFlNc=4DyGYId$+>P|!> z!5R-)GM2}qQh;QAi}d;?wJD0n^!!*Jpb`g)iR((P)dU$;Dfd*dGppTa=x)BEqxJX# z=OR*EU0h$DA*ZnuObQ{c=%cEZjM@bmwaN7C`h0rhqLJ$<+faSE9%W>%())HgDKMZN~jiOWEZpk6u`xYN>^ z%x!!V2+?%8au)&UgwdE!v8?9I2jYSGq{i8lo6>1f*HIXDwH{|Y63$*+8v0md1pN*@ zpO{A@N2}QE10Iw(sAQ2cqpJjd^K_4+2kTqSfm^`htEH(_kHSf>rXIY#0Oob_l}IjW zqVD!UD*GUPfp4)NvF%(+ZGjt8&nijHV2?JUHJXM?F0=T6&97fZ1N&j;q;#+FH5*=H{+wCDf4AkFYM+ z6X+KP1jP4m$kjw_SVcR3z7d;3_blX!8Y0guh(0xSAJ5Vv*Zm=K-S3yPnCIcw$yvO^ z<*dwr!Dv7VisOfdYMjq%n^!4)wJaSK?HI=J(dXugGz9X#*}PJrz{Xu!kRt}TPrKuT zd6fHVn(j5$)-|!D?mEjo9I;7uYM4+(bL(0>4_Jv-T2`e8o^F5=_5S4Xnqdj^q7;{_ z`N->JUb`tBmJmHby07v0njtc*(0KTo@e`}3r`H!R3<=%YqU5FAWv-k|uE_Fw4bPD9 zo6Ajioh!R54$X>Il{a?xg#KUUt$wa2R6#%yaKqF^Nr(aA+_b&ic#v;5Cca>el5BLi z+hPy7;8aOXCRG`*+m#P>A;g#dvZGHPpwriIw$^^-niZ0`B(^#H4Pen0s{ydl5SXhU zu$mINI(pz55Qrj7Lr{4 z;~R;nEd?r{1D4KonR{$Ho$!LkP4R_=M%LKd5tprFMezv_RO7Z)S0CM8oFiUz!VVQ< zO$u!u>Nkb&LN>@VMuj2q^ah1KuX!N$k1+$5jg}0|OVl8QxCI7)23m>*UI%3gZ5uWS z)eGf5Ixxv0mrIEP@ygBUB~%yzE#06}A5z77wG=|b|B7TI_VK0xRgP|#5P?&2jy_c0M(SJxCp%5SkcF;sBkl}S<1y^e=GM$*NlOkBfRMUM=znZ`QbbtH) z+dFuq~iM#GU(I~kTt0@v5?yW;nnVeis&_|O6qrU1=`EPvlc*tK3%b03f z*Qhoft+Yt9@ILHxTFO8@P{>{B?{tty4gu^;<`CfVt4-o2M>w$72WA7PN1J!<>8_#) zCaq+UdKw0S`F4LWVd!*~FK7Vl1w{{hbINRPxPq6{E~vGc>ZOYvst}60g8i8>3Z$lz~W*aiZXBQ{CTi=}= z%R4Fz^2BC+mMC`k=DUr6z9(LVK%YpHfcws>Z6S&OFl~}g0?79IdIiVL>|zK5wo9ca z?r*HAx4L2DK`SDKQ(piz^Eyhq#+M|BpU7LG%Xhe(@H_S3r$b zSoktC&qM~s?3wA$A7Y6-lO?23R+hMPN~agT?i>UAQ>> z&tm<>Z75qJ^XxHOA{JFT>kRR$kDzqDM1cNqzz959rNlkUT*D>^jRKduKqZZGcTMP( zD#xMXvc8i8i0n|LIN~|V3+ffh&;2eq+`CNsB)K6%=Su3`l&XdHM%d+&ZE{>n#`A2y zmC{9sYsAk`gTV(uT>z1qrc_|u*=YP?Ljx-zIdaYPUPZh3GT88wK-Lm>_-XA9<<5ip ztEpcq_NAc0+2RQCbx5-kc-~b{i&6+Q#Go>}{-^t${Pmz@XA@QzHTA6tg-rvJoBGmZ z--pT{BB^$Gp);20-#~ePd1VT>U_?ugGv(1Gf@1Kg;}1Xl@EO6INXs|=@!fq7d#)3J z&%mOXaM_yY2BZ-Gn_*_A*@r+ufV-GR8q*`&?5U~2ib;4idNI9TdBR3cA5vVRW&=*( zcKjUbF{5{N=;xi&RjD5POuQ($qX-2^j@h5zyK6SHHR+VIWP8f9SF}^|Jrkx2D`L2? zRhRT>Jd!M;heZH6^F`A>K8_NdQLb&op%OH{Jfku+{}MXX=aGkD>TIgRFh#6n2urB# zNLE7hNaz5nKvhFpqL%+NI>)qn*r~5l?&GGHKci-H8`xl)))}sx?S8Pz2 zZagfhc`^HKpiMsbDC$%TTLx#BO!r@6Db|@1?#!fOU=C6w>pN!zm>>QN#SJcOE_(-GeExKM-}{%tC%u1xYUf`D zUmy?k7r+1b1wBDbiu_NnpaK6-5d#2vP{2?e76#YO~3UV zsxM7?7zwGFlSQ|46K9~tfc(*_Tl)~(yQhaQSmkWy8LOi%W2FAFrLB58s7gKEC`#3) z08jp=#2{V;IMR#vcC0aV!*Vq73!5&HimSv?3Xz5v`rA@Wr z#oAb1#z;>ut2m8QJKW4%K1fbfJTeC|Fc}=);Nm$V8kg?2+#>K2iZjrf9bIg;q?o)09TZn}VxvMLc#p z(wgp|q6S2-g~h3F=F%j+2fM--mEcUdT?qELcdHE#jz`+sv$Gy>?q-Qx>t`nCNeg`B z5~gc`nF8Lwdmw($KgAnq-^nB3a@xg_CXmMEIVe2QUD2}1Mg3Mx(WUv0%%Y{&7&(wT z%@XX{YFt_v?MfQX%#A@^t^eTpLve_9A z7%;DqD&k@_IfO+fm*iAQ2hbKXjXO0$rJF2oHflH2QfEZ2+U$28o&mDS7PW;%@_~Fh z8LC?(;g8p$*LLR9b*l}aZrDL)TyI$RXxIDV`Io~l`@I3(@s18pdj}uy-re1Px_kVE zt*)(#i%QbWW_OfY;+Tqdi`PjbP)#t3ID{LxRH2VqW$izcR zAH0T-qvg_5{gcZPlo324=VyMDMK4Cz7tpv1CmQmY;`}(rC(bLw=qI2rISK0w!jUdBD(H9N#; zB7|bI7~P21~Dr<3kN3MU<9!l z&7aflLy(V*PK-EO4-n#ja8G_(Qt&^A604DIpOHz8ODFA1v8O2)7RyF2 zYSJ2)`t3`HJ61oDWm@K7gNLhNvj^^SX2hJ^ z=pOOnk?&V{ydXK+WSpyK5R1SIyVib=+DKJ!M+2l)wv`tL0$~-G5XZpO`7JjsN0@YI zw>s!?I>*fU)!jqs$*85bW2jJb>MB-4s)ooS5>27R)eR1n^Sk@$``d5c-GO}ecDvTK zQbZdsdxcB}p8(E$yob0J`qGR9>_O$`j9lgP{cQXJfq~SE+u5zLE_pikWkiL zBKN}mohEctJR|2j+e5OYS0U_?k9c1vO>t>v_4C3KsM2Am?YfuOi7_GbEi4GvNVFQu zX==+oo%BAlrEqfS1ray8R;mHi4Te%tAQM5%2h|rhK;26jx*p{f$~I}wC6AJ@?Q43kKEQcbKQE#sIHx;>h#HQ?{;5I!?IzTP zPdoi-_#Y#X-L2ik@hD;*Exk)pCm_%Y4Hk@wjSdeBcN?Q!ZC0 z)nqn6dXVP8v{HM-N#d-|E5ioqb!PKv;fTUknlQLN(J7_~unKPhGE@numy;?^5EI5+ zQkS>?`@=^jfa8;hlzv-xpFDQcM|X}rK)JK0ckA4q36{G%uj#&g(bA{dVJi}X{ETj< zmH+>S@xQ-?NKyLT{`RrDVu9C}NaqjT%kO*6Re+Yfq~q54aBW zhF+y|;2A|tF15JB-q3xMjgP59S_6lSJo#BGX@bePzaE{T1R>UxhX7OpwJr&A>cDIt z@-2mR`Et7J%OwOMw)9B0|IAfeXV@XFWBCk&atc8N9_g3Putq1XUnnF|+zuhAwmnE6 zxC}~fZK?vUghI1DQ|`a&R46(~drbM)rn^O8^_~(Y3cF_Izphw|%0+(YlqvD)ulqx+ zEz5N}^)#NW|K-tPfAIYD=-JV5aCF)~>EAs)I-Wg}`2`HEC8sMhvxBp+$cU2m_cG3c zq6|uqbST)Iuur|DOu>lC!YY&?np&{Y!~z;XLq}SaU`MvWxGK#lx^`+{ah*A;xgHSw z#AyN_P}|E{L{r@368tvy*yq|nF_okFnu<+eAW}|{TTc`P)Hrh^?QZsUbg2i&2*0ej z&u1cR_JpWwL&|y$nuqH~hMVdZD|;vOwIOtL&_hupbF_x7pG6%}djmg5J*&^zylghN zMhW7<_Q4Xw1BTykW>DA}F%W-{x8CqG>yQj_0I?+RQ+e^SB@f=GJ!B2hfgIJB>@1H~ zK^HYMruO8bI$r|9SO6mbjV?)^QCGVQ>tqE!$`T-5aA#4>x3VAF4YI4mEEXusUk8aw z#~sW!q>tc}{iqo_S~Q?q54?0YJ;xo(%X2v_MMIyfJB&OFJ+}Dew3Q|Q~fmV{MH1^Gv``Fx8y}jkIUzr=ewZK z2VT!3PlK_sL?)kTC3wV8Yf+*hC{%u|)hza9*Q@;IN)f6M_Vqp+T_+C`AbptoHSNh- zCby;%28xeVOM|`CvJJG)50@F2k5f~hSRsq=F4{fvQKAE|90zv!cOPhct{9-mClziI z*qus{Lc(t$vvCU81Cc(bh)x0(oG1e67u~iu_$U+wZj|E}78^s06Chs!`o~eK?VaG0 zCEHBq=L}doeq?f{>osb-c4O+8KcJJR*A_KsMrF6zbqy{+>MUz6{gmwZN0RM2d%Ay) z_E~9fHhFQp$Mi_rRKa|y3&O1hf^c=kIyXN@)4lTpRK2?gQEUu7lQj5lU;;PUzKFvK zXBESQ;MfNJXh)CD^;ysPPM1Fh(p-l$Vzhu73gZdD1kXoTtSK)9ajM+~FITNp{+JTd zo#lYD7&(uloZp%)8h`AVTBvNIDiMO$1qYqEPzT{fLbxub7;!sb*N%*>c#tWUwGz~C zfkGTNr@f-NnBF|Ivpu5jI}fc4)R*fZ^H}m`iMSf3?#5c=5@+Bn*s%9n*4=gRPy=Nm z!_mT^Mo7gjAHX6;V;A-!bE)pp8#h2k=3Fn_9Hw?jf@zq(v5S=K&{&e_sjqwK`biTl z?Rd#X*|1=e&9PY#3M)g!kZ51=h>EgBu+=BmQ@6Ty_t9954x4K%y%XhV4`Uc8R@cRr zmGHTVfrW9~yc1S;@4wsJm_3OKF{l_U-v)k2A68z_$NNM|)#@>^QuCrDvsB)@C3Z3M zj&G+|+I?Ms*7yP)l=;Re7fLuKxwmaJAlh~G$eTxrQ>zFV$UEFWKPP))zJUi+fZI5b z7vg8e(a}SJ7((fbZMg05&29TF6qGFy!3dQuQv(jp+WL4d2zeF5uMP69{cW(fWJ*e~ zV-TmzhT1)y6-*OJEIX!To__e7+A(BxH@(rK+~5GT7$g0+5{=nef|_a2gCMlL4SF>G z@bOOd+8`RUQsWIA?ynebD30}cC@fsLUm{>|X*jiQ2S?iPPIGhyYOLDQFCh*>E{3>n zDlBVdtal5;&}l+y<{svhHt=jV(Gpy#&z6e`m3TA%m#7Amu-U-dV1ce#l@g+H`eD!A zH*iNy<78ll#jS?^3>a8lja^a|QnvfN>5PHG3VVJ2x4i}K5n+@)%s z++>ENfxD}27q6c{>P%TIVnbmlz%}^s24N20x_p`4p>ac~$-J4@qypJj)h5%|&s)kF zql}tq6F03C0}Onos~|&W)(ZTZS*R1#2xBr5zO$$rR2T5Ru=OEt>%l+mmRv%bR>bXk zktvn}S9I{}SK8Drw5Aik(NA9$Gmg|?O~XnBQfK-}n$Ke+XUA}Gjfm+2$K0Vz3bkY| zQO;1&Hvig5VL535^?lP7j5u(Cmk3p6iL*1f0H&|;1l6&_8O=b=qvhxUaafGr1U6FL zW6T9T+Zv8-$g2-SIkjy}f%yWrrbz8BO9{A%e#2{y32lJhKt zrVKubkN<#PAT)itkkhS~M289~&yJz43JRhV{=t9qpCOWEr*zzLc78d&21hJKp&H1L zI-OEx#o6(Qd<9=d%+IW;nwd9ckqN{-uP1Lj2^~41TttkvN|uvIOTHI`(`mC=gYA8L zk3flU?mmjijf*++qUe!@oMEsp<yk^X1tHz6)*v5zArxQl)AI z!{6B7eVV>G4aebj6NgZiZM(p@i_G?g zFKLIlcEj_pL`zhh8hT{jB4=6$ok-v=e9fmTcQx0KU+HO%9L45l{>xmu?G-=c*$u(0 zWUE`Q-keU>n1jiHKXJgLwY<`d(Bib1wu_>0wlYivLKBE1oU#~>vii_$0MiX?%i2z3 zgx^53orzPtr-0i%ZC2!Bv_|b$<3+$Ca(UqitrQ*f$C8M9EL3S55Fo;rAg7CP6aih_ zo6)iWYfPb=#^ZAceM4_;Fm?AKJ?ORQa(SkVHuOd)@jzZOxjKlksG8~xY#^xE(8*>c zn1;jMU{znu-^?pGOJ3}K@$L(s6Fg7q{7!>^0n{@kwXihErg`?45Op=gaJTMW)ym8h zD|sSWSCJoI80`Xid0qF|p;4%2GIx+K+J+C7vr{z9Kn)c+iFPVC(vu`i!NJB0O6X=< zXahh>5?6=p7s&5|o0ITDMcaNYVGCG^=Wg&*(%~eBuxLeW9mlyER?M<-rIoIn8$Nvh zpok6&kTd}L44&TbC6?ovyQSms4!3lBV#V|t&ufG_C7I4OBK<_9`lAEN{km{de$E(U zK2eIQ!jAAr1WQjQiq(v_GLYzeB$A1W#~^3O=_+Dli)U*8a2$%3(5Mi5P`HC;=5wYe z3BpDym27CRohh}nJ5M@mj1w2mugF%TXgX!km9us_upw_f*uxRb^x{!0-y&27 zCpD3b)Q{XtcM5P2oN@4B(Ei*%_M~1pRq&vfyy(m;p=CHTd{02(mMygo)w_Gd_y2hN z@y=IS7oizp3JO@zu)1-4i@-qz1u4E@&*K2+Y*q)jrq}LaZg(v$Z9&^?7D7U3tc<^c zd>i8I2E*+Ic(e^7sx}pGhjmifNu4L2>%#42*4c#0`j2be|A_(qVNvBEZo0m zdx=d46r`RyZEC~tI6F}f8X?OT_66_1aP_4JpdV=`<$Cst#l}-B7;bctUU7DKVe!dv9(}d!l*jM01QfRpG3=?w3i8Z#J z<;6if;~MYbuIlBA34X2-jp2b36fd)7v(h`o%R8bIv7v_(R^)(& z;sjhi!UQpH5((_+QWlG}-j!0yYc(Jl+hl`3y1Q7B)8nn^YN6K*))q%0+ z5tr}{a!`Ex;j{bC4v^Hb;C{g7bYh8A(uD`x%ud*d(u|f~S2|P1`ew}LW;C}MhxzMm zecf#D;)mE?>W`cvg~{p*tFnQiMNUQVypsWOG}z#Oi+^x)8qt5okdQ5xeAjQaARn^E!K;WG72?!z(5#-YNUEkJXLoG z#o}pW!lO{OEi!kyV6{1Yu?8j`c8VoYt?7v0qBCXDW(5~7x;PwuDPm^&&|>8XiNxLj zNWN|00UV5)@JoF%JSHuyCx`^b|9H1C@izP1&9v=|l~E0akT%ed!$!F0x;``XrahuS zG=$-#`pjjQbLygn#!lIEA#y?1hE50ES+g>*Guk#hn&)s#Sjba%6l)upr4lYnU$P>N zm(A!xhc?k0yuYT#5f(_q+8X=3!@9s2GIv0U$=$oWqX#jQyb08-d;HOemknqNxq(^? z{&K2wE@y@j{38)S1>$M{4V;vj6xw%jCR$oK?Pk+FrJu@Xt;Vz#7Xoz%4$w@sC6Pbm>U*Y-J}lmMG4eal9kSvv=sW^YY;fb^J zBOUilIdTq-s?9)r&c051gv}1(r!10Jx`*j1wex4VFI6%|85?62rAtwM(?km$4PN`! z@j^ONx#kJ;;Y+JXX0ZF_oM%ea2Rdk2*>QqCnd8OUa9?{FTmVlBs;@3@k@o51Zgcl< zpYPt^zrB68Ti< z9gp{CcQp4X<;#NTVPreGP*{*fU}&@w3SWXveD&gbZg&;YU1Bpr17%Fh1sp_Ze%Qf5 zOEO!Es2*6DpOwM;S0}VXn%WmGBKu(<_R`d}fzW`5FNIoH76=6GRTpp?NX}`pM7_*0 zb;4zI(L9n&aY=w=XZESo+i|mOL?n=XQb=BI@SQHp zb$3Z0B!AoSK()3CVJ(sbb@Oq4aArOZg^F_ByMolMBOqzBX8Ku?f19VMV$-RX%|MM) zJKwzXI(hH_sk32-8{!n?`k<-KdSG5R(;LXqmZ0meAKoE><-0p%>iTr|*Dp*P6)N;0 z$xc~QH2`|Oog~nqQ3NhI@C^-t6hN@dE1Ia;F+o9p3E?pPC= zYBOks=Wn$1BXx)0|~(78iFxLdQ_MAI~T;10TQt*4Omquvlwb9><1KR`3`B# z$v!}&mV<|v4Q<3hI7l-Y3J)bE-Id{vUr9j~Q>ahBA4<=m~r zQ29DSjxmso5K&8QPFEsq_?GK^Fa zmNaVuQ~&>OMP2`F!YrIEPB-bIBC;34f8|-1F?QOtmQ|pH_KOeS{$)4*;k$!xfB25N zJ^lOp-y1GJ?)||scA9i(vDG`>aPoyEx373kCT1dL;4I>#T%yfK5I;VK?jY)U3IOoPe%I%$Y=>!n*wX9xcdhMh6q z%t}EVJnavTA3ypU?#N4))rE0XTg&N@yB0pV=A;Ww z5&?>ohG~y9O)(VH_#uI~c~K~s(Bc{;ap&h(Q;(s^*Ei>Nh3fG1n1Zo_UxR%LnPYA> z82yz#L)Z`vy@*~82a;n~LEff{5VEP>4!$tna^ z=ZZ~tzmwZbFg+(~Ln(C;JlU@hO1nq!VBzK=Yd^zu&Lj`!2;eK-LK9-ee!O1wwdg1K!On=;>Ddj z#|~7WrG7Lf-U3gh3$+n)K_+u#^Fq#ixX@iq7wTGHvXNOHvBJ8NpFpJ+m}_huCb^lu z)H9kFeNJ>b>Oi2f6?RhO9mR36)A7Ipb9Q*FRM@_Tg*Vy&dfF?jvn!ssr%6o0vUc`n z6)W$uPZOFE&*S-e!iEU$1KJd>cUKHVO(uoxcUNAgY6PY_riCJP5gC8+uj5OkKHI_;l_V#>jeQiE;vw_%cQv)`& zQVFI{wB3_zH)NfHnL0;qU)Q1aa<|fu)8@Y72H#~Buja^`o^Q-r_EfMPx0hYh-U!mu z*jY79A0`|y(^+e&YnZw>!(QSAPO@=mw0h{imi(NQ_3kFo(ILHXv_Qlm;?*GHEU!Sf zHZOKpAKu^TRb4Oy{TUI=+ABN@Y7*LKGV2b$VIYnov707o3B$wpKa0Vdyf|w-XdyL) zt?FSmgl?QlFnyZ3yX0sj%^P}{2uNnj29Xh>^ZI6YT+l#}H>QboAsPWB@EO^bsbw9) z++TVeM?&+`0gPz&OX5q>LgKH~(-AZ>f8|@sP9gN9v}FLCew9LI5`iSkeByBpyEZD|JG06}s+qY0oNV2c2{)!iVe{o!^{ z5-c-@CUq&&rgvxeZ@=I7opUlzR#ih%cw?5f$j&-hRayBs??(Y^-h;pDCvBqi00jm9 zul-_SO=J!5Zs_3QLw$)QQAlq#V>ce)3J<;@yXsE~+xQf^VI0IV< z9=OFcoz0_)DX?pZFV4e8OelVisW6QnIyTWLS2gcK`JNrDtGZ}m_8F44Tn)$vbeR;G z&ZLIqC%|C>-YAmvUYfCzJVb`BX zOHp98yUV@q(-bYOtWaKw7>27tdttsAKh}A#*+RgchrnC?_cB=T#YrVDGItb6Uvx@| z!ruOyIKFg26j10)FmuwHIP$W1JkA7+cE1p$JJ7?hm8a?-l<*6zPMFDP;ZznaO_&Fe zfz-m7*e-4Zst*g}R(El=S{0}p=ws}LSkjBy1Z91(Snu(F7FaH5ehnnw8k0L9dn&`F zWZB=oL_Im=H4bJSVDOhTziKo-6`9aEZV|d0kD8X|gKP$=MBm~stHod5d^}+CPhfo9 z7MVCa3!|rCVZ}0=B10CY3W1)maS$H%RwBppI48x>X_bqG2jU3XnhR#YTBj#lmiy_UDAlwOVo&R!LV~K86*X9*)=Lp=udwHL=Wv3 zOlY(DD{8hNy(`2~d{fQGIlKQF>2f?zv={T5%RWEzvd^H(6(V0q>;z`|Kx&V=DbJvpu&~Fx)kl>F7lW5h zh<&E}twiR^($v5tWKh|-gpV8Mi}`V$mTZDZuE1ArnUv#phjhVbLPtJ3B4Dm`s5-q(0*NPcCU~@_yKPT~>_T;-(l&O5T^Wn*=Rrr30M$o?$Ale)XxUl7Du*Fr zY#B?lUcQ3#GZJ$l za*GtXL@6j+bzmGil)@;7?n%h}A>O8qz?0X5>kZt>XTf&!$B6IkUDYr-3*mSR=S-?P z)>jBhApTolJW*i8A_H)-#8U5Gl@M4*wY+UBo?n7t3S6c%kxh$TF+<+d+-^AHD?}Ug zHokUS1I)frj{O+qla;3FvOaeT=?88s_`vD)3@It0oVY( zv1YnL=*d)qoE1-9O;Im|-=Bme&VPpLCBVDuCG`CVa8DnoL%<|=yRGT{{I@3CD>SWc zE>W!PQuh0{Xp=)sZ(-R)UDvK6=;Q<~?G+Rj9mXO&^hlMnhn{@?I-e?(1cj%;^r2uq zaI`ji)a;SZm!t4zQm!qrsqgF#NKdf`yLBV`has$oR1z5-E+EuSv6D^I9--U@_Jm7-rn$i%I=XrcgkI839sRwa{ z8JXq~wwzp=z{N}g#!W^}0Wg;7Xa3#XiXwES8{>iyr2BC6)mNj(OJ+U4_jlqt^-$UY zI9oxW;e>Ya97Mo~xmx-xo&w#ln?ELxTVlk42jIdnxmOrI(1SJJC0@bWwkesRjngd$ zz|WMsvSrsF_9mh4<#b)n`cUoIxet@*PwjLx#ubOG+w`6J{l2O;%#%t3TZ1V}^bXp$!~30Eq0aFBV$Bbd@99Asg9=x@NV?p`9wnnW3l=JMuis3zw#oTiipr&v1k<(dnJ zd2c32`%Bgz1Nqw6Ssg%Li)VJ;<*3B;E`w^50NH$WvcV{~6F0$A_Xp|0^KHq%^Q5;j zPlEipt7xF~*k1UCZE-QxQ!6&&8Pq;@{;={S&o0_{bhUM=6^w3=(3~On6fD7z!xq#G z?`$GF7awG;#o6g@_4E;OjO60Q0!S1bs}UbWm^cCez9BWL7jzh<`*W}G2plL)^$=1p z2k41A?nFy)D};E6MWMa8fh7)(xZCn9U^Co;$CR;%1jup=l#OPn7P8S7q#%lP+P>Tt z`eXhGMYuJ-LdpuCgc73a(jjRS5R3LFcxDT{A05%=YI1!&r`6B?Vt8knA7(HDCtw7a zu^iHTX0C1O6VUg~_8eYA&Gcl{*8`fI44bi1jam}^Vz-fyJP0#X1EHT7%@G>)e;ie- zelUd(jSc4)D;HghrqKL!?0Z4*sHElIpc~u9a7X+f9p z@u7K`qqr5Fb;89Xm_RpUi8BWIo1PZmE9cpa*j(e&1Wf0#t@4cFjIq6Npp=LBaFu6v z#2T*FML)_}OH2$uEb;)joax4UQ@K@az)Euo5%g3$@n(sS_*%8TM={3subUMH;wM#N>>%-1Lxp`ZYXUcV~v5H})OnC9Ho zZ};dcCLT#eEI|Q<3006PV2+HX{YwS8?Pj}U2uzo|*uselSD1YX*l)%C++0p2ibq2a z<44X@7~6C@7WCABeI1b|#EO;4};?AMehSRjoHOfZxBVW_KhPtDZ<>IUeI&-=~?F=N;c zLttMBp?n*(4nM2Gr)$VGv0I*BS(-grRJa?hzy3bSH4X~QH?66l#_r@BEp3XiyafE$3OZ$ z+NV^02eKA2j3Gb*9Y25Z-TWt{N+jwHse1H#NaC4eXTOJEer3>b#WPtUoq`a2<>sh!aih4`-2*UjwsuXS&=36;Qs0(2>+S%>SBe6@c zZUfS5%HyQVyHC@rd-1hB4P64%k-ITBZ4pudoDd-TtiVCT5B=4eoEmgrgId)AsQ5IW z3hplEZg~`1j&V0}pIleV^02oo4`?u< z!FEmXlKhGLM>eB-DFb)!Yl(>q`phSdrVdkn9;$$B531`*N&U3><~IU9n? z+BERsE~w_KjgD=K5J<7z4)8c7;L3nPWz{@Yd9|*y1uAnd|IWR4N3cB+Q)AZVoU_zyL{HueLI#6E_Y)A-! z!=$wbqo~Xsd@^xXV^|`EE=__?srKUzuoJ40d|s$-G(rXP1i8lw-?xH9T$F4fVyC{k z%@t2U0zLNA#E{O#w0g!iHOW|YA~y)bbSpQvwST5Q;s)xe8)(`h<&S)6YXepiJYlfl zAE(b9X1o1Q4qQJC0mjcwh(V>PZ?P%VG$3cjYV++L{-1t=+!WpchC{B`JaE^ih=UlL z9!4A7j2V$4BwBi{5dK9@L&sWIA%sB}8J`;(&#u#516 z8Acfa^Bqd`$dyQjtI(}~QH@qd=zTHF}K3s#z+UVqFPCQzS_!ux#Keo>s>Y*oM?~`F%y}St%=@?<7a276$VySv%iSC5kojZG4$h=F4ZhRRM9v!6Rt@Fr?#V~Q= zUAJp1al|-Io8t;F+fG=>&Kf1X-dsU?zR)T4;k#|m`#?_lxUP<#M*wQ*B6kce2++(x z7fq&T`HPMH*t9TWlrW1|tC#ko^>njZ)5cKUYX zm(DLI{Mg+6=yen9*RLv^@W;`cKjBpG|K|7n4%C3WV`Q>ZPFo^`|2fK;M|y1gA4mTS z|NGmYk=5r2u{vUfu+826X{WdPB|7O=hBC0_#587lk_vqy%`i+gjYny{s!8QACI0tS z8ZJ9MCME-mB6dFSyPimVpoi@dcLsFhU$is^I`b{D88495?ik+O+A0%$tW1z3tF!{+ zR6q$IGMKm9uaFC#zDK_tzxP9kI{kF|MC;8yH5v3$F0k4inj2a8ISQ$$>VZSXeTUWV zCSHWEYqazUu;N7q_6?Fk7K_~Qb*ay-xSJj0?bSJMx`OP5DI$B2fp*!}!9AH=c`5^( zYeGx$CyW3@EMNYyA2T3x9yl_t8cS0X7EtjO_2(GaOOqUuY)8&6O zI7dM4PL=j}$)0vzC4KCf=bJssKJRBQ&rKp=LrzYeQcNPuh&A!lfUuyANUCvVTrY{t zX-}Qe&+k69pSFI29dSE-M@15BNe}=*9IxTRLL!2j>0>U&*oquk#v#~fw{P$6e!71D z!`;0L*{ar*UdCfD;x~gX_^sh!Ie}r6ueA&`NO!TkMED2v70dub9T*fXPxQ|D`t&~E zz5>(?xS(Z;e!;sTfd(|{Auavq$y}UDiA>xd_-;su{55@M)m{W@uN#7Ktk)GAw7m>Q_yrb9qf@L+RrWeo^Z7>quEG}gKpL|^#RC-#x1yRlmQ=EIFBHrTeVB43b4~zVP zTDiy=Jw}eFz2CuEbjUH5gPaF~=K+!fJ=S32Uc!bpeKvQJ0xxLST^iwwrx1kX+Y7c3kt0l)kKj2 z(p!St!k!&gT;ijXQq$gN> z{qKAO&05b*w}>tNDI9i`ym*TW#aU#s++7b4A_boP20H{8`Wl&hksu;pkfs3)733+p zoR260plK}{04Kj7?wtTtmyjLjqt3JiP-#UXvhaZGC#q|#tBg1;1yeqz{|o33eH83> z2zM0ZZ4m;GJKn~q`(ifJKiXua%cR3o9vg`Wn3iehSC|w1hdcUM}8>swsY%W}%eWGG+p$veJ6AiEM zE)reb>{kn9@`IiH0{%xRCM?Gzf$S;elmQG4BEFQHFycN3iW^msVNCPZ$L?h=D3%NC z*L$6a1HqeMSa;V;Y=#|L^BXh$7hhRquy9n_Tq^Swr30K=$d0Ei=vsJp){9oT54ql9 z`Sb!5(eQmHkqc9+I)eA@H7hjO>mhZ9y8+kfv^fs{V9b>r75Djb#X__+5>v3`*poA} zBF^iBM190;@Cyg*;>r2b{cBxX7A=>4&`(u&BA1xuSTmx?hk zFO>G0GuDVvI*cPoocbMzA2>o4XO#BfNPnAYiQ0q`_`)uNAzj|(GnDW9kN?2o^WHEv z#bd0`)qH_2VPEF@h;20`t|2g3msK|yl?+y+5H3d_|MJs^yC45pJl%1tg~Y-c`U@>I zEot9i_Wiuun|$?a}@BqHa`6tJkoMLpZixfITJ;sTN2d5Z{%I7ZsERj zJKKyHuL2nnKefMwuUsKK=)O^4`h2Lkp0B&nNh7zs^YHhfcEpU^AG?2}a(!C%JKKqU z8yC*Wq=8Az!@N^7C3DlSj9@U?&yOH`DoO0k1x(D`F8IMSl&(KifF-w8gkKp0@_TkG zw;)?6G#j?6^EH?eT8$JNMS~5@I=Dn0_CKse>#bNaeXRmtUfy1Fcu5<@xh^10XV(@+ z9H0X%?%tE6gLAvwXbI^&3;QY5`xbTNEzJT|UG$muw9~|b{6?dY#Y@IrD>Fm`Azx(0 zMN!+(3e?u7o-fqwSu?xxTnp0!wXZw@au^P%df;@GkltD@Dsgao+ z&be7{N4X&=ElUhx!Ms2uM9pOW!jXJ>Yt-Hg;doe#XC*vyx?pndI2aAbW z39!S-6_)`G36PgJtWT+Z)?RWvLn^^>c514DPL#w5DxcYu#VrLjQQw7`5wroqL1z%N zRG?-C(}-9NT7LKM^tT_Lh!O6=b(glDOR|I8vcS}RzemMSWH7&nKo56#V3(0m5B@wi zDxXXZ!}10dmG>{!$D{k;%hj=MHnKL5FAAFj*LHlR&6VvnRH*19jYWa!BS=KH*zSxj za~X#Ac5SWVyyQ|$ZTn^b-I*{k`ml670JYJ%YGTl1vcNPtZe$&a>2zURIa)ByV1>`$ z{`h`-_xA4lk8j?;Lye>J$)huvD+#%}T!D*3s4&eP2C20e5P36wv5ab>_r(^Oij&BM zzAXz2TriQXPiOAy7U`2_7sYMRkGSGjK*RyiM`wxb^p_;EQv{610den07s;IU1mWYh zXcsiZWG*#u*+zlAyZtC30jhhtD?~n{DuaZ{{N0|EanK@HVEVc^%hFDDk#+~D8#t*| zt=*bSgMUjJPvhWI>_f(q&exNmHLr4{tP=DF$o@Yavder)QbD*Di|CM{>o`Q$Ybd(2 zlD!M7Q{bv}r$W)HM>zWhb_Y;kdR*n0w38q%_|D8o)(Ry5>*#-%>@#GyafAGHo4{jd z2qyH6G>3A6g*?HT^Mw{6{Pb z{T@x1+v}l0Ndbrb#N-)zm^{VkdWf?K&##t4068n>!(J#jSYT^O=-18p0SeDV5t#}%(S234HB)g zq!D2Zyn_=T6X}G83)|_Sxv-Om9jB8AVWdo^K~j2#jN5uZJxu(FvA)inctc}M+&$88 zaRbm1gjkY^!>LBrMIz`ItE(LnU{Z|2-(z>->s6b+5oCZ2|m`R;ZtT$D08C29{*4Y}GL zHx$VkfdFaE?19kB`Udbv)(d*A<~DpYooN$C%oA+Zl61X9HdOt(~j?%Rgxi#4R_akr!Py$02Oq(RM$dAw*{j*&*JMxkq+^R}d zv?!?4XN;3OjHUQH3u;=xnVjivjz7b{O+|mwbxo~F8m6XMU!H4Yb*@SCSruSN%FOu#`fHA& zzrqZ~1s*a(aeN1^-xtDDBhC?mZXXo52-^MzRe>cZPNbx}&>?3vuNzRJ?rFz^sQCi3 zfxUOWT{&05+@#4zwB{R0PK)MDK1;fQ{uU?Z9q3^)7bbQ$r8A|DwUQ7dO4=3V8;~~T zUil}P$L3ac3Va+7?Wl4sJy>i55vcAPG=px{lhg#>#gn!{TYW|6NDabOB2Ma~Rne6@ zm~_=CdVGQT7jS|O#f|h}V3?c*m-BU7dumJ+4imD@qf~ zJHqEU{3oTqp!ox4S5wXSvCEZjhQPKbjFu*)K-p6g>-uFOYX&#Ogg3!AZsP>vK!g?S z#Vjbn?Xy9FVI0L5U;|yGP0q>*SZ*kO{=-Mc1#RI8OBl9!1vNg`kkL^7jw(4(?rD0I z7s>Ow1U{FRcCauz%?oolDd3Lclzh8Qg}9*$R~1Unl!k%;Ixr=njNM4|sSRk_@kh3s zO(=NO@IJuMNRQ+g&|Emc{_j>>VjHtbz-hSujTNMiMgBZ33H0kNg(v*Q78q7DV>5DTXM5>)0H zBarw^$skMsO1^FT@_daGF$V22CEjFzbuqhw#G0F0?jq@;;?SA-VNGdgL#u8F-yp6p z1}f;jcZWCC<(P+UJaU)KwIq1jp{NDhS5nKn&LcAzbgmci_(0tY+; zg@0!LbM{jYy53y9m~E4TVO%I)I*y`9ts#cMY;nj)!;!mXqv?_!!0;uk!OddHjK*jI z6?!-m4C7u~hvXm1208>ndu2O_oR0Zvi08qb6yZBh00J|a84Per*Fuh6NDzb*o`aBy zo0g`bT?&_oCv+&op61r}Dw1&CI>LY4+4e6yTUs!y{&23y`j?Mmz87B1PDr@+z_I&s zHidEpU;6_7SNq32bLJpNpMb$WT2+^uP}3E6xG4oG26_feMrcuBW#>DIdt_V|G%>lRGKrtoJ4N*?rrWiI zkftoeo7;#AIxK(it(lqCqPWM%EQtWgwJ+oVrj+E%0Y*r zW-7x2P4mm;47r?9R*5Mz6{BFPm_x?KLtR8cr&H`LgwUD$MQIrtf_qr&+z5^p=TeNT zr%@;kI)U{%@6TOguQv_%yZDv;roXZuitEWk?U&v=$9cxaCBju$#{#plg3ku>2;snf zbBnmTBmY-eq5Q^YR6T*zJO0Mu9<3(fK-a2jIMAVLC0HKLv=Rrp{)P_lEs#}TPwGvE z^jC+bBwWBZa$z=xJOVZsma%6r+%!Ns#1>{lr}PwM<0+lE62Bs$Q$xXnV77GF>ABuW z0m$89;4DynYt!fC)Z;P4%P}%N^a@mm&D>=WP!h6pRum8^zV7zx*FWA#hugWffAXCn zIh%q;J8`@*iiRk*=mb0f!ZuvlPz}{>QDvZO+hoiVE? z9qE%y4uLg&Qhw{LS=6CxPb{e;cReLZL+YZHHH|sEHW%lS%fT9D;y7Rgw{+DQ@ht+` zCc)P&%*(`$GTtbU3JE-HHYRc#&uCJC)O>vfpTwCgCl+;r3c%jyy3n|Jp->rEeV-kl zo52qCgCa5^yT`%41axvTVKD;^t#1iWt2f-i^`6;vyI*|xxT@mhM;Ko=9kJVSb_3R8EUQ!-7=#VQUt z8s!MpI-F&m!j#VwnZb1crZ@6XL~oQQvS=C=)sIaB5iP+DJ1C1J|8gF%w9_+8=A49< zo!KY!F;vOQcjAO>{1bON;Aa+y#%XdM_D0WRTgcn=iSFFujWj~yTWDb~8Q%JGwV9C_ zgw25uEpDtu-1Kwb0csRlKLsA4B9E)Ms!NlWF&u2Hp)uI05=m{26*xb&OS~9cUw*ar zEMFPc*g;Hv3}yUVRVuuPZdggD zVh<$e@C!NFJS%|Z{wg`ySRaXqCZhV_#W?ymiodXqW2iSXNR9kIb~B|WkdV8yJ3~=M7wrAgWC-Ji&N5CP~oIS zbweiPXr%8I*$5s#;b)=S)YeOdL?WS|nOD_Y2#^!W2Z55fXdcUAy{Qr%KkI^j=O z@@Kdj8;7{))DAiTsFPlxr8Gw@4-PX&EGD*PsqaP^<^$mR^kC?(0=wk3&X8RmI3CRQ z+xPE&w7)*R`}xg}?~qX+#&@Cm>f>mWPD6(wFcG-%Fmel+2Co@*Nyjyt(Q1$zab<8r z(xEG9@&ekC>sx4>R9!(^FqllF!kM;Uy-!{_*weddR-Tv#4ka5#td!!wP{1M0O6X%z zUUs^qI9}+iIUL%z)4Mvjk=1hBHD5F!jfDE}Ezk=$%*4H_xj?`$eyW@F7&oaVCDHZ|*=pXja@_Nn? z+#xOFKtG(vpvAbe*l&KVd4ul!T>iph z;4AyyWRK)340X~(A=m3Z*TrO;4tgj|8bvV+=Q~z@^>C5|>+2UZr`j9liWQkaq9wSt zFFugR0dEE>=do<;rQiMi=S&OWpYyUn*p z2)^EYD+QhZa>c#+=+ge>V(F@~d%6h!K&?yj4;+mPod~@{2KmTi57D-31H8xAH!K90 zKh;aJ8=yS05=zTms&!DVc>#nFu_;3#$b9|E{ZB}Xg+j!akFjmkBI*Zv1(uk9GNh`P z!!F@P*dhJJokrfUZ^q^t4qK-JFa}9+foU#?Gc5?8stxS^ilV^M7~U~%y~uh# zuPsau3tbrU8`q!Ogc@TQD&0w-G;N!5M>65{?!%iOm+!Py;ZFnAriO^oQHjk#7A3Yf zux;3-)L!=;Q+szhghSfF4yV8LgeSk$VT`O#Lb!H>%|R6B)@4FD#}t#m$)w|k+L9l! z1KCB@849y)o;a3`mgZ7SJj)p=grMv2U}H)!jg$*U{G&Yh5Rs7eVEZj=e(^&1ri*KDN>!?_RBgzZ6WO{^WdHg@=66(yE`dt{P{U*;&PjM zU~UP0oPT)z+SYZINZ6>OsTs5$c2rIbZSu$lVcxu2-CQ9-E%vN9BsF!TQQi~7ofEiO~G(|PT0AAbt)6Yq@3HYmCYAf=_t&nS#}** zWbjznMhZ$2tuiT0*mHih-E}n?d}4*!*c0P$*4DY^$^=gl&Q9b`ar|!~nl$SU2cq@RzPJ^ zBU6nHvRL{xv!29;YwvUIJ~g5E#}aV!uQ$t;@}MEta>cu@O_kdh{6hT9gocgeJV1KB z=sWa9RAWr~IioEBr9kS=gK>HH@!9LQFYZ44jKE5;REU>E2>OC`dtjk_ge#HUK^`o# zi!0?o!O5xYmrbp^4WI!;5N-p%=qrHkzz}d3h}S#>Ztpw;<*lF!X5ebD0^rVc1GOR4 zt!a5*zW(>S+n>zS+Xg3mY1FhSb2qFAlOv|;wzu$z=SLyWh@0_+aNdaDKVK(sU2M}k zIb!yP4iL%I#f+wrp%O_3!DH-r8r7Y|mQh4`NN_i+>A>lrY$u3@qIp;$@CN^laXgv? z107(!;bKFpU=weyEp7VFiASGCOJ8NvUYrKxS1`oRH$9TXcy&e3*miuJDG?K>p$V-6 zj4Q%jo<7Hgn?z$A5CGVftK6Y2o z1XIHY_K%i*og4+S6Cw01t&5(XY&)n+yBm;ZQ#2r436qkRJUJH`tULs=rloQ4;7O`_ z4AwpoqQsL!N(kXS)5IMj>{(sZhf-T5N`P}_+qpX*;>Tx6Hh zf^2fc#yQi(9)G%$R^8%F)H~o8gpUuyr-V-q!)Jt_5PtdzDFw)V$P(}js%}?G!Eq@F zd}D*N>PsjF=e|%81s((0kUfunAgIAAcK?w78 zu-wE6R9AbrvytfpEE^wcZ@1kR$u@W_9+eE%JvM%xZXJ)9l@bt5h`S_qI)Du|_fPY9uI; z2Mym$ibFDp7iH58Ma~h<_Lx>T{AkU?*^^p_4ZSpF-pSj?{T0=XNC?adYHaH%bY11;|%jR2zDgLynt+aPgv0 zXMdw`cPw;OWR>6l%rqzX1H4dFt6=D%Nqx1Rr3g*CV4^L#hxvB3xE|@Xr5V$JMAXC4 zy}K5Y&)T5U(2k)rArBvXMqW2q!C_}|nL>Dz!&Xo|HA{zPXSjp0>coWSS5xHgqXS`? zB%CC(3DF&Wx|%N*PDOc|Vjhu%jU~Zw#rrZC9IfaNTlpW@#m(MSG~ho+5O#o~WLvZ} zhr%|7GE&kR1zE!^P(IX5vTzMhg=V@pO_kKQ<9OGXqVb`0&GeK)BglWV! z2*GVd*;Ev`!uL^fw+p*KCpHU*HA_lPOOPCePIR1qM~2k>1{^Hu144*a! z+qzQpi=vQZKJZ&6TKnaXaCW$AGO>F7&Uzp|D)Lgf0n)V{gAPOmrhCO)S+wEAY#$bF zI58wE?}pKC=#8uJ{i2J3$j@blsGW50O^ZGs;d$T*Pzg?alJ6_4#&(4vIez6AF@;wGZOKrO9{UgJDz*FmC%X$ab==F2kn-5)JI&gey{LZSI4 zN0I15^{9d8ml5!Ma`}cS;!pW6Jx-M|-)GS`WHIb(yP0I5vHA`S_e9%((gfKaLk^HO z;3!QVQGFNuU|Nf~&*=lcV@gw_UsyvRGs;!vYsI+N+`J9U7cdOJ+?STE!DtEu+25eF zKpb<;Y|IAoA+Hg|c5hzedv3Z=fRMV zn>h9sqB$u#kE`wN{YsJA!6y@T7pTz?hyyFY4a>Q}c+lXOt!y5vi+!(#f|HD3(_Ji;K=~M>#V75fJG}yYunRa7c+FiECRbx+th)P z0EZI^#D}fr8rx{r6Iwhf^yqO(YfsM1+yH)6UVC&ul-RzPi9HhAGnW~*?P7LI0uB?` zwNC@=oic=gY7{I-Nq6F50!lNIBV!&RFy@ixT{xal)Nu5qEk%V`AcSBmgsv)7>t1*l zi)gmA4~O_0JfQ{YA+aS8nA)qA*TU4DL>+~NOc28sORc(p#_o0D&dQ}(dwBXi zAGOMJ>a=QdfB>q;>G*geQSp;VF%|q5E3k+oetc=^!8#<*PoGpqndX%9<=QkaS3{r& z$es#47NWCnAj8i`Yy$K0%6L!z$t?osraO7v?nlS39xv8kK7O{z6viYFuwVnVM0vG- z^cI}vVmpo0Zlzg!I7w;h6qEKBr-D#n5m{6~H`|VRT(}o!#A2SE8Z+ZYZub?Amc}4@ zTQ%YCOj<6W?gOU;bA*F8%*k{>?hpxH=DFwJCN44E+s-R|H}M)+@AQp+sD7x<<(isYk=Hkej-r zRhCY+N659bJyyrhF&tc&C(!7N+iCyXEH1z$C<^-(2pV9oau}z>J@;HkEF6ZT}>qyzlAr6xJ!{wF)z?q*W2v zZ;V%gl}}drFEFzvQIwYEI*BaRtLYw*C3h+>2rFq+QTADcq=6-obIanx-QDfacONc3 z{pnA4A2J{F#doteA6za_!ES3~jzDX?Ha8R~DiYqy+rrW$cW-~bvr^yXPO2b(TUBpI zzBld+t@CfF!Vik$jpALw9;RtDy$F0iFdZ&-Ysb3=(o@t%OEV%03NDrT!Hb>Kxxp5e zruf*ldAGlbgaxP@e6T9^bo_Y^U7h&QEBbk2;0#5g@8R-4JzECx8$8k`j4(YObXIea zK7-W66UyR?wjbZCWUyQ%{R{h0PlTeRqK%ulB}mbAJzNRvK{>Yb7poh1Ke&Ta1q}`dG7Ib<2BF$rS%ngeD)IB;oSyV z8Gt+^fPjeFLocCA`k!UdVTCGy9Fqwp+ZUs%k-(GY&>wYszxnu2&;GV}`~Gj!k8kOw z*xt|<}My{2U152WMBVD^qz+rduvVBN&DsPTz+Lan5$Ip4Q`^l17md}6kbWD6dH zq&J3!uuvC(I3u<1FRbn@263*VP%+VHKDS zGb`TRxvps94HtS8(Qv8e3e@9x@`&y&x@b5IKkVfUpr*Y%XK~hKc01Jh^zs?8yj21$MSB4%b)`77=di_^>>I<%0@zdSjaU8!2xiyeY~ zcNY*jAd+B)Mod;L3P?{b_`ux)o$~sTnauez5=nEybW>`h_iHj^FSawd&kT0MtRTYP zH2HOGaD-lec?OT2tBp?^-$rT;2a@U?0IFP)$kM9Wx|_N=bj~7Pt^^J>c}#4Nn$BCxhM=XF$I`LK{K457SyYt;!tI!xWAEuB6R%g>x z++!CnbU1jRRlZ=gMbM0F>?&RkHAxKq3avwEGA^Aex0Olu& zW7uK|ZJz?G12)3qnE}0_hq*=0ioW&488Oru<}5bP0yBT~tjHn67jPK@Rp6U%rl=Ci zF_xAF!8tmA27w0K{%W~H6?&V%L>tIxP)+L$cL?Qv`Ux>!qyx9}WJo5txoVo6n+vo+ zydbVk-g4k+)ZkXOyamUfJXM(KQlFUc9!@#FgQ4pBM!TZ8Z6LQ&7iBn?CWz)I&O?OP zbr!V;)=h@@syYtJT{{UeCtZCV47!@=$W*Dd8q;}e__CIUGgUojiyL|NCCgxqjH_W* zY#OWMtT7JTtii@mAl0HIxz05f`nLMtwsxLl&GA;WG`1cagQaw?g3dx(WM^-K!79!2 zamWixOgc!x1EjB#!It@YpvW@k?8bk4cDwsl(qV~&D*oF4@~^Ddg+I55R5~ipVfgLM z?0kdV`0+&53M-D@aP9tYFjdwYXyrfDSt-i%Ai5smBQx(H*6Q{jdMq+Th{>d{@M0UB zkmDT3FwrWrEUF&rILcm+^A4&|&9oNI^n2Bnd4ff z@wIe*eMGkHIMRrQ-z!szdex!qUXh812&PAR^z&S5csmsT-Jy0f{A15g|QFkH+^9rJT=RoTF^W z>{omgy5pnrBs*X4(`rh2Xwspxj4(FPE6LvNHAyI}WrvV!!)0Vz^kmEq$ylUN^Olyk zC{Do8C|8Vbg>R}5OL*ZG9o6`F>`r*vH^gf)ka}|Dmfsxg;=2ShhiHHUMb`U3vFI!# zVk5fw8Xo-1>)WecMyR+JrlZHxrO;Og8Uzz#y-$;^tE=p z=?)6&l#-<4aN6cDf%O8qGV54kt%@0dv@>z!IPCE34I3d8C#i@UW}{Y7!+tHE#I>Su zQE`K5nj(o&8?qiwH}uzEZmvw(cT^SK#?c?}@hd=|K^(x718VOsNGd`v<1`8Vy5zX9 zt#hXgTh)yrx1EGZTTQojZ|}aR<-)gDdl77dTkDxudH9h!+Qx+%?~~NlEli)v(v!Ov+zt1T1VA(bD}&h_s)h1ls-@#&^Uyz(_rQa&`tEH5wztJD~U~n4dW@Cs~E6 zwIo|0(c*kFedbtGNORbY&6OyMw`vYVb;s%ocInjQPMR4yyEFIaL1%X$-R3oR?%?7y z%lg`SHO*+qx9yVKYzIt($eFxnt6QY?P(E*W(oJc;E3n$4!0oD{9G)~nvQ&j$B8AQV z{QK|ke*W3EN4VFcv{nM?-GO63OkUnr>c#Vt3}TZf|B#7o?9?DVamW%!6B~q7d^h}2 zk%^>ew((i8T6IdpJA2c;jGiUvx2HMjKpyBbt@@qUn)60oMz<(rxj+QL6a1R}-y8KV zKOlqbVS#A@C`TgBk2<)Sv~tWqX36{r0@-b{rxKYc4V3Gnos&ggsHC9wW8})koO3!5 z3bNz*%Sbyk4cIa--DAttyJU5&%0u5i*n?r(!&(5V8(8(WfF@P=9UXot1gC%|-b4*P z)lXGn2KH^*F@su(ir;%L59L{Y8U&fJWU|J9l zw(fj@?>31+jJ587@%h`WN?QYOe+!S-7jsm#O#uSL=iR_cEe2CiP7SKp6F@sIQu&7-`=E0gnpIGt})Jn{K zPc>BY?BDqvQLR_E@r{PgkfBg7*qOBRi5 zNPaxOUhlp&8#IdKfajGF5dZSGhN7KgZd+Z;e*;Q8N(@Y7H8Yk4W(hC?_9B28{HJfU z--1bvMU4t94-m1gP^-Crsq}c^ z`#VOUNL!)s33*;tBCtpZxAwGsVrAehvbkhN0LthLx-IotIRzD3uQz<4tEyFiN87eY zd#ARqN_)OJtyICQB*~Z9eg{K=pldP|L9fID!Hv!+md(yDS1z@?M6zn}QfH-Q1dOO; z?FBmZay&X73gvgs4fPeMh`-P8!ne(D7LW6@HpxKGgEd%AC(~23AoYlAG+8y zq$FL|(6s7ifp>$5H}ncY%|bGq^s&JFJHd_hCpb}Nz)Pu>coIyWf|Fn8DadZWLfT@S*m!NYdW zQd;UEuvS_j7K#(Vd;t{$U*G_^W?%))K=-V7p_*nMXGvSz#f}!on(y}Lh({Uf4`@fDh;a;NS4D8~{(it6rtZc? z;j588Z-ZkQwGGo1VS=XkpP~0a)b@yTPy{5!LQ&ywZSuIiki!!D0l9r{KsXt901vq1 z&-?)Vfq>#>`iKED${a1d*B-9ie)*~lkoMTntI%T6&4xYM|Ncf>@sxkD9lOg$PCF$k}=)cMfOuBN8AHa9u75T=nk{!hl zYB^E^au&M5Vx=;}wUb?sx)9y#CkOhUh6O+jq);wR5NIJUa%CYqb0`k*7w*uE`DEja zG4n~&s_SQJ;wSrxftOviGp--@$ekg}>cIXAh~}C0NGZ~&j440zx#WJ45)>5enQPe?|LWPJ2l8xiVVO7t zy>sFa=Y--uX4|MIg=fN0t-m{`FcWsIJv4C42LoI$taM3&Fn?S-S{Q3oexSlM-^} zW-vafOAi91QNj)~yGF%JTZ(Qes2)tdGbK!DJQOB$Mk5Zy3z4P9L%utZ3e-@f14V_$ zb6ETTdbhdz%lnUaEZ_3!C$YB7D<;tEj|~u#4*YmL%V9SAr3rL9^67rv)Wb-ZHRT9s zU;_KfWG1B8fdB~vUUCfF$GyWHY+}sOaL{-XAWe$Ul+;9!DRrhyP2>_LhJoZ#;ID`9 zRtI7)HgOt0`glC5Jr(xD+^8ZhJX)F-t)#mnbZufStPEMn7I1$7QZO9zlAPT_` zQd~YqGf0%};spkdSe^OJ7ExPZGUppapCH!aKRs6o*Mx(-0f8wCz=kF`9ScJnP?X%0 zHYfGb>T>ojcFe;Z{{)JGUcnGkzl-iHv#Z<;St4j5>da+}D1=U`sZm-|rd2Y}HAK6> znf4o`tmMK$V|+A zWfjdjk&P#)3G!U1gd`W=&|@9+!39=l($jwidq-O)yMi(mZF?=vjT{pP3d&o4HG{kA zh98b=0bNKItBql@ui}04Jj8fK4)#&emW4U)^h-Wnv#k{<*(TY`$ack*u{n@2oSNDmi^FYoG7}Q*d7|Yh} z(|;>{72Fnh|63;(oZo%o&|B-K>5TkD&(OCud#U>nKa55!;fak6fH*R)5qBtq6qbrw zki|Qax8@1ME9~nBHmK&Dn5eo(-O~%Ye9jB|Gu;|@Hpf7^FN3>c2F_LojyH1d35|_GMPMi{OIn>lP3!ldlt8afq;84 z&dYua(@VpoN6R^j%@cToAOy;kPaTko4T7OX!l^xj`9@}WdIicheGb(XuNm@q^Y-K2 z2NolAZcrIF8KgV>vx*7$-WJ7ZS!n0dlFG2c{wqpu~=_64M6X2k6NxnHGf#8-d z_p2A4Sblu0BhN+u1uthPhSjTty*~!paG9fAI~%z6XyDrEz_pWsYs>`DeaCp<8c|pl zDlEKTrzjI9r(vA`TE|SAQXH0P9L(dbL(WRQXYTsY-8Mpaa%6?}n;Y=Uuhtt_a*x=p zZb;C2$X$A$+m!}&2?eJ2>Gp{8DGD$rCLN$|kiL@NIYm5DZfMIS2CDe94hwFH4+K~5 z!kY#k{so2xD2}x}C3rN59R>~hQ_J+&_CEgXQX+{{0@fw5ki^FDO1wa&ajU_bR) z8ke~xIV(r`krPZB7pdQQbY1||~D(E?m#DYzg`p!1qegtRjR9}pbU#{Thr)+txWe6E*gX<-kB?~&|t@E98jM@*NEFGvJ zc2(kDPREP|%12aKKLhJtaK^5LC|7r?nscO+TLcjpl);@eaQ_P1BjKO4>spX)xn_9UU3>=pT?$Nt;$x|Z*uyxoSuy3{`osGlVHMTG_2sz6 z9@Zhi8c#(==FEb_S;l;dF$*(LFj_7eoq=wqS)dzqBO}+%Y7L+4@*p_f3nN-sxmODy zel{6NOm-XZ=`ujWfHHBb5j-sZJR zp$()rTzF5=29Sdo5;ijTiEam5)D;qAiK31h{~sOq!a0k~8?#d5mSW zxwq8U5UnF=!_m>j49BwQ5L$m?!R#J>q50R{ynrO;c5dVf!B6nPDEf62Kj<1$fBy>> zLv9eMgqy+wmTX>3~(kz5a5 zWh5h~JS}p6O2+i;v8hO??6GN~QM|=GHl=gM7GwZAa!PM(My%c>n$_0A%|)MDl>h4T(+$YCR--UhPN{hmyVsI z{ogisKfZYV_K)Qk6jh~S;eFMXoo3^`4BQtPXT}$*Z@{f^EXX6TGC+3GJIZDf!+Q7- zp@)z;P~s;BGWvg6vw=^E8(6cU{~YM)M@PTqIg`$Fyb@6w4`%1S@x%?o&q?F?b8Opod*2;EFZ>;_aM>H2E=96?9Z=Si<9RAYX4-Ip{Vy+Z^h z9C9Fhi5nE=Y#{0j6Xh1Jx%(GL01v;T(FD1*f)SH0Y;aaxkt}5BQxM^6(9CIW6f|a} ziW2Ae7=#U^Zw6)FR@oVwD*mAX_D*OX6Qfv|NwS)Q|cX82c zTtTpdmOV2EJFf7HbMTTfBT!ik+m&&a_AqlIz)onTM?I~; zd;RvmDI=nYOzy9v+9dZzij~@PU=sGG|4PHMvaQzh5dzjoDP+eU?Q>&Il zDkaA)HHIo^tC^xgu@X zIig&VY=U;dPjit{=~2s&(R`$JTl&RxQ}kpkQ)b<>t^*eEC?_$Yv_$W zB0vfE7-K&1EWX%&B2rpAQ^?8i!NQznX2LxNwB5`i2DQ(0TNTky7d4kp5lr2+p_n$F z8+GM(3sxxgyQaBRoh(t?p?M$~BG)9BA0)2Nr$p#?1mx`7b@ztbh%w{U@C2dZhG*7oY1G zJe)lzBQ0xbYA+Fwkab(jwT5GMRbK+s4>#gG$aM!uot0_wWbz8$hFj!TAhA_`SIv^A z)pJ?Rbivr53lBXRBy|Pmj~DNBAascwR|2_8%H23|c24he^CY}5VweLl=VZG$AK2N6 z9bqmw-vPD0i`mq=sV{7Ih#V+TiFz^`9xZF%0o&bhhs5N=loItubmshk7Jh%3I%wWp z!h*`@8*s03LV)=?3ttY(y}6yLSQpqE%;?rOp$KeZ77#}d`yg2fk1>COkKMjpUnAMz z0YE>YMDIpprKUembo9iXbFH|!CFhX@KQ-b-1_d!KVi)riPbh?Y^IzYXQ zGI&@)2D2a}pl%Qvq7%Z)=eO%_6m18n8}wG+?%FHhUC8cc>7Uy25c5l36l~Co*FWF! zG@prX@&Y|nc)@0(v6FI+%+A)cb;32Ie@zp{f|bA&C|+j{_~YZrsUNUfVCem)chJR+ zOunv_g=mjMNg;RQCuUgQES5Jg6;<3|q`Yo7+nkz{0BM%0ni;yoXWQE=))p;h@V*U< zGfgccLWzg_8UlBDGOLkfkp^D?7kef5>a+_^2n!dCOtaBl2>D}q19p__bB1BrpN@`)xY)JHhPMYWhGq&E<4JH3Tc*S+yVC^$q z7bCF^I0E4i$caK<#GCE)a?9ERp#0EPn1TSFnI!(@SU`nw@W=?JAwo674T-3b(b1RD zKv=++BSePCy+b@07}vZgMRLYmM$=sJr zGP>volo$kK`0XiQc~d9lt5(+|L$hK_*G;!GakqqMX|gy51bM^ddk@2jx99;ro@m+S z2>?Am&EB2q?*dbIK7@Kcc<5QRTK({K>j%)a-O4JGA5cM*{(={f zI#)CW2_UIf?#YORjyM!;MkG5+Vjqy14o`+{iw;1#ZtT?QC^t0M_Hs=dsj)H6h$nEw zOh9%gEAX&$(FhA05mx`yY((wXww9#YOCRo{%$mjV#xBP2rw!Spo<{j6?H2s@Z{}Ae z#h)1-#eq4mF%aZgiWQ&=JjHF-5RsWKMh9dtdBrTDt;uLgI+g51e4UwRNJr_%T&=>3$6OEyEp(9@XUR#sLZ29T?ym zJB}i_F`_nR697UrF^;BYBOTE}pD{biF1zs+^c7CE1Nc$K5oMs3M2~g}v#Z-^VYNF3 zN45WO6}$@64dMf&|I$fsQmljsQCxOX7u~$SB--C?W=r@Z>_(bc>3FV@>J&ZTVn`X< zj3{npdAXc{TiA~f7c;wi`}*(l`D{H+uTaQRI#?}#>t;$=MmCKekf={aJ*As%bpt9p zRWk7G_tWbwoHqCY&qifiO0Q=lFNQwj*-N1{8C2@3dv4)OD;+<}YXO#a@E&tADvjG| zug|*Irwq#1QuC=Cyo`7DfM+k0{E9m$|5<;@*k=YmTSScsi)!K$_Eu)Kad(ELX@1sU3kbBJyhs-J{+0V zyxe#c?6VP&WP-GLqKy6<;vMr$fBDt&T_jqE!1OBv9!LK+g1Cu#aEb!x>|mesT;h9+ z%m#3JEw#TT)q&1hO|+K25-}B!9V0ri$O>tJuQ(m>zw`p)@ehzErU5pLKfiwW?(QuR z6zif&ujG|KrQ(QynQX)JOy01Y5R)IcXY32_(lJtT03bShrSEng3y?_Uq z?A&8GhSVPi*}1lxo}h1XEIq6MFbwXRPG1yc2SHV|+|Wr+!jikk;k@4?ZRJiH&04mp zS})Jr)w7HE2u|Yj7ZjKfkK+D8CL0eU@&eNvH0B&m{Rn(`#4;@6d7-b3Dl&2ozpq&9qp<5Wf@iFG$ z#WPQ|36r!ZrNXq7i7~scE8D%HrLr9kJkHYJa^Z@+F%3j>mX_6oXo%+btZM3`+jYJo zxpjAsb%45|s%aNHubbsst4F5&Ek4xbhoQ1f8JZc-LuJLPEs0;<${E8c(8?F|$Vvm?8=QYi`8X4%4oZm&xm zDt>DV$<1}TfNJk#RDbVJ#HmQtsyI6w2j+JvhYb5nXdhy*1m7gHn`C^2xPH#*e0>TD zjMdD6+_c~66;Fg!OU4#fFBrovSR1OWP{)bsgq!F1iLsQ2I{6dCra%#b^R`KP5H>X% zU^Z^fua=iLDC$RV888bk;RZfGdi}!>AHD#YhdZefBvPV5#qdwxe;nZ++5UR=2s|h+UtO-YaG6ALL28C)kCf;_6g<+dkkDVq^vfI;pu;73 zg?=+@MLi_kv{_-^cb|nzVdQmQU}s>X$^DfncY6VbKmfe1c@fPslsT{`%M6#N>PCJ}pDnsk2eh+oGG)THwQ zR){3n!~(C6y5HVjFhRx?3m|bJUH3iaF2+N~R~Wvq&=-~%w(1<=2UNH(`KysIVT$JR z62{v|x}ZqCobUIwlro*R0UIiw3}%&}bQ@I&bTU_Ji7x2(qZ5$PhogU1^<}9W(APi5 z81RYb42V`*6w_f3tK`64@PkeNV_q3Xvs|yi0;@7ugy#2JI5U)$VueUx2>jV@o+_lU%3s!L{%Q#r$#q;f!1S1Mf1&cRq(J zO~+#FxU2IQ$hUTje3ZLal65Q0uVO=T8>9BtrdY|N{%LzH;#6@E4QcZbhcswJK$0}7 z{Hce&EL7gAduC*anrCAIpWe#^cA!qw#uz5PjYQ4o)h*6O^AcF^7cLH0$5XS2m!_Zb zKfnHY|K{EIZ$JHTw|{r{`Qs6o8oD=iukZJQ7!&mkR($)-<3Tg1LF)VMIJspN8;K~dcyenr|rt!d;- ziT;+mhS+j2-?{EN!TD$W45~H2aKWz>>#e=2&^Y*#4FV038v~A#)H*`Z(jqn_*K@^r z5xKEUOC8Slv>|cgwhHGfB@4Ic0y!^`LC5IOF;>VbhQh__92@r%1wCngLGs26WJTGs z0FG_zd&-?+Fv*CG{v0?El@i)^v#9o9Cht@H3RbTmBUBG$uw9|MwSzW_WP&yB+a#@r zVImjKY*IsV)1(S+^-l-I^#JJ&Mit#nLJml#;m0|W2c%MCk$TKgHJ)&-Ncb%?ZwZ-6 zXp{IET#yRV^AR^l!$wmJ-mg{pHY{Ma%eSZutY2_dMxqM1ieR(1b_esFzzgtp=Z+V~ zB7_PyT8=CDEyOf~rVpTMPBfH3*D5Q}?MPSlQZTEBy1((;C`&M(#{ zo&tUtzFeKyQ81bhiCROS(9zXx>&!`h?B?~OFHepio9$nY1s9BtqH!o21tJ$O(sP1I zq0NAsNc|E2CF$t`RstycNben}=ahK|7zSM&Zo~iG%!2Md8HA6DMptCg3|uJ$r{`wW zY5Tm>?{qOoCASSFzyFRLe?{PUOd~}jH{x((!IKsia@biuc)lt5pfjyvrywSa;~M6Z7sZvhODNm?>K7Yod%@NS{=`&nbpj??%ckcWTRD)gsVne22yG+-FFRgytud? z52B9>)Br#jxE}B)mM4aS2qRwFE}A_%OTSNh2=A%sD#H^R_*N%G-f`6k5kbLU@6IpX z+oLl<_xII+3$BI3Jv>8F!e5B!G^4?rXnl&4VOz>kYcen*5mnmN(u0p4TW5=!DA?Us zO>-I`jX}%q%Au6$QUs0uRh#EWkq#HZqF?M;i~v8#=BMiqiE}MmRd@z+)_%`k~b60cvuy>R%Q zzc_m`DxE=P&-Y+-;0pLlcjehj20ot;@?}7dL!N66(xj3{rXil9PHc-4x12Swx&$l* z@zl{O?HmtD%b4%SkCluogVLL6q%GfSEeHH^vx2j#;y6s8Jx=OcQ#cHIIR!`~Gn_>+ z`NeFe6Mw_}%aQ|d6&A1gJH})n`5K@?s0+B1ZeGpS@!1Jo6p)@>XoP66j$!g$1G3RE zmHfpzGo9z@=!lCUOb^sVxe?yw!f5g4r2IAZ)6~Dou|8kc9eSdvudTv)!hbDH1KQaJPlXI{<1wZDWFZAb9zosJXhNc^R>>dtG zu=Yl%n|n%_lxp4{Dmk^+*GL=_wX*Sk&qI@x@#c^Qn$^UG*Q=T+WvLZ^ z-ZT4a^-BJHseWKxK&mN(eYez>N}vL=MSlO`Zg%(GryqgS7@Tqq-nQhgfHqA^VBCf? zI(`4{Pj7ylzW>W#KEVs(&HH!rzuvw3NJkv~i9f-q;)0$`L^7qd}r zXc~w_#4986XY=j;^OlL3d!Zg-&_cmN4-$XX4Dnz|So{E!CUkf;{DSMh!a`}SZBE1N3K70$=PKQ22 zw04rEk}qtcyZRQD1?toprE8)MWrNk;%q=&%|JDHX)JW6hzV@YACL*-{L)Ej4)`S8x z%F>!shu5XmOTvTyvH5$Jre4B5rGqN{k#t1JsH&}2FXM`oN|B3MAww1x)@WgAN@H#i zdV3e~`b^SYYU{n&kD|G|S5Vv)=VY8^ZJ6-bX;-EJ*|B0EfTOi0oq@UG%w z5X~Um2qG7htP1~y@^NAGuzR(9geABu+_)#L55t;qvSc(-eZ{e{MrMny!J{tp-9X%J-sgH)0(CZv{iruZ4bMdNZSjW3GC&C zIa!+$2vG=Dk;|4pC$HuwcEK1q76PL0fh-$+AnuUzf@t2OqFP6Hseu8>(NNyQgeupY zda!A$`$YN;|h2lg7u=wt}y z|0U?uVEn)4!G!2Wy9v7?sBy{7?)X!ALnkHwvu2CpMz{NKcB7boeFVzz;krLG>)`IGOz5 z1#FCmFj^P^#d%m>A@DrsaGyAzed}QgJUO0*0bD{&VWpS)u_B(KU8_R%()}J)+*pC~ zK0q* z!DeQ3Lq;@Es^^DoZmEMlNG?BZmJBX`^N3sZOQOvajATxv_&PrbY_D6$zHn;>kzL;ry9^CSnLUC5^y znl*Z`?om~OzKK@$ZM+#X72KusDe&^J*A~=31J`x&;U|S3 zt6U-rBP`PJn?m$u#2SJ}{`9xq8@L=R6=N?Tt;Z2^xrXD>tm^|>hC{JWt$zCL(lMNa zEFq+rQ#lJ+yBwp1k(H!IGxJvC@h~!?LWK^d0wP-yH;rpxB`TI|Vha17zB)j4)(pKv zw=sZe3ryYZ&D>OOr`SGQF5m_-->$B1m4Evlm`*kl#K5g&ce&HTmsXttPhOMt;Wh{N zGG5R&HEfx&z8=ncPbv&65n*ED1?U2zm|zrgF;`_ybZmz~Fo=+|qc8y5BuM&f{;JJ{ ziS?oHC!HpJZha3|U3coDDJDUHx8!W2$U*(8ljG{S$RAsp>QSvxdk~f%-hYCg@!{m3 zCX+|Uk58UFdV+tDj_DM&D~_L(qK_t%4QjnzsB;GkaW!(yg3?tDq7nIJ9Y6g9I||0V z#Y|A`7EzDh(&(791O)UMtquG!>RwQ<0lvg1F7$T;%uT7J8Pbo23=>!h^LKZbL9V30 ze1{v^2opsLzT#Tf%Vf%S*C!Lmz9*kiA9th~Ktc++T~v85DX}ZCp1m0IX@dyOS&*h|uFePx73EgSh|<|GJW~5Dlm|S2w`x zw=29KqV>`KhSjK>%Sz*KK1>IJv}1&gS=0zmprmdae!C|zVJ>o9Uh-A+siqw&UDptJ z-6mx@0TOw&`9`z0i7Ib@;STm?!49~br*xPySb(iuuQssacJ;emXk9TER;tn{ zb7k&|!JMoh%7(pZTJC*h0_o8_6Wec~(L_XenvHb1Ox~Poa3}1zI69)M06T(RQ?%p@ zSneSINhufC##Toyl#Qo7E9>~wrpglyxZoEpZODW?&7&RDInC;+dR6_&*h!MxUYPWa z*@m|(G26@wY@4%&W4*LPhdVf*gR|Llg0{(~mYGu2;=^lH4u1d67KvP8T@1Q;_~Mb# zG;WVxKZsfsF^=+<#={#+B0_v$AW>9Iqdz5`Tp#{&{VzWG21W1CxrsH}jQ<-wqEnEk zKXT}qi8WvqtAo#+(53Sr6kc46ZyJ1Ow{+Ko&wa&^U&@C>0*tfY#srwqj@5_U4Bz8& zlzXi3AUsf%DcQ8|xvo{A*G&r)o2uzCqzI$JA#(b4@mCAe_nBH7Vl+?(PhZI>XueYj zo)JQbmQI2RAt2p~t<-H|9!P^2i7kl>eEI>qaX&JgN3eARRTs0SaH8Vl z4BDTKKvBWX;+I};Pb21m>SDRVWz&i!3%MuegNYpQ2Nd8Iw>Rdae|7U5RNN|pJaw+d zeX-rf5UsMTyV(^44*Eyg!l$mJt2oGR^7&~dkyA0-y0xLk&BtmWbSsnrqqh2Aqe6jD~ zcUuvX3<0SU@Ro~j)90Sht#kPb*B>x53|LO&7r$1BGGmx8zTM3|^T8poPdL91r3o0o zxW5AR?6kcX%Bb10SeQiAm~HSWPeSQu5Vz-9ZCTA%I3F11ik59(81Zl<$*0-f2nXw4 zvPn1py2d*TzUt3q&Sta|--IWrvbD0ATiz;Ye&94oKgHd%4HAQ;R0C2{A}=};!d%X` zDATuFjp4%yKO9pDW4SpoTP!F;J~`gRIyE5enkp1?EG9PV?}_sR$_N<>otqVQDd)8F z+@kTR9rSd@eaYRjM1HYlb7LMs&V4d)R_tXCx;!o7)YJc;wJ&XM10O;!Y6U{jUb|@Po3eBN8jw zpLCZ!=r4`VtKS~(olc|&J$jnLLUkBvpNh4DdSX3H#Xe6p7Y$F zK2^QZXjp%GRVaHtUAg&RfBLc50AksJt8=R4Y6n1QlSj7Pm$?IY0gl|*&+eA1rFJdT zz)el5sc+@xagk`)l8A^|ModFNzyi=}n(HYKA-x5G^a8uZ6`0WDQaznRF!c=I? zHQQF#`f-}_w?Ew8yy?CE@zousY7TayI3c}!dKwUW#c3Y`8SFK!9j=)wp!yb@J|mY& zBN$ChA3kO)-=y{Xk9V(cwpTyDLCpmTQA#N6gz{<$66l!F1P>qf9kPsvcazTUnCALOiH!c)!`R54|cU|2hZ<>~YuAz-E_ zHP`(9pHH5g96uTMhlh`k2gCl+$<3G0YEOrQ-}GLOdu?Y@Pk=Nlp2XA)0dOp#vPM(u zUc!!-qNUkNTX6lN_Ck*YmL;|Fqa=5DJ=hUR=b|N;#z*1}@&%8?Q>aUR!P#B>a&tGn zd;5!JGB=pftpthD^N2P1djBv3rB|FY!{7QGLjUyb?b{DOiYCefs<@~$szem0iW#T0 zG<~sHja?r-WXT~);|c&(VkdatML^fo0=l4!)d(Cf^vZ@Nwo}-v*~ZQ;`V?sn>}D_HFLJ(l@tC;RH|V z;=6)OLn8JauCt+agcH37pOo=hQb-Dvx3ljcB0u6BCF|WlB2d9_sJ6<&AyQpBy$I^0RQ)<1gisGK-1VmAKT_W`a|2x&agmv zX7f$rmjxLNg&M$=HHFYTp_GoTpl&fAEwBb-)Gd|3t&(r=5l?`;F`w4kAKu=-dN);# zc=u!0aW=5AvsEWL5_qDoUNK7(rM%ZCB?VeAAZ~z2O>KX(rZ4Z_zPEX?bwgOQ&PBA; zwLqWi%uq0-hes0YOUD>4b9Rj3MR$zh^H$??uogr{hMtSIo>A}up0S6Xn!ZBZL|7MU z2%lN5C6X$<;q2qxhx_@>?GN`qZu=*jyH~d#zQ4KqAbyG9D{NjX>_#v%qE08PweiaC zW$DbdyIJNfLX2B^$9BCk-q`uVc%RMg08Brg=#B!JXaV665caCn)U0SFoI&)tz*J-} zmlcA8uo;9l0AP1I%8!u@qxhX4<*FJBqyc+ldVF`g6%u|(VZ#|9RykcoB@`axm=}6- zEmp%c6%f_gc4Udg_mrbR!(=D&1r0B=3lL!-uyq^3#V!;@EmK&4J43@tWN5{4w!6wl z%ikm~9Op|8ev71Dq3M#$P|c85!9rYzZpDd~o+y(NT(=P(b+L45L)j#PAwq?v5$iwN z!toFs=qMylx!QlJ>>yNvh~4{}pZMLQca5BTm3BzHo$qURT=#wLOg|ipl?~dCc(kgI zusD&U2a+DSdx6_$!7=<#rH3wXfZ4rB5>3Osj6CdHQ9(V!=M zsZvsA#38LB{H&PZVKPQaHh9;R@?W@LYwsAkz@E{h2MvXnXU!Egp_+KZb#Nnd^Qt4i zd_iX~o!g6*XVAA}Yo5*N8G%kp7qJ#lueF2Vj9sU`F8s7bk09eJvIJ*8FgwldB4Mw99Qt;I=`j;9CjfRx+bV9^ z>Wo26u;!=>587f5i!6qvdq8nn1GaNRioCwLpN*ng^4;~TcOOlQM5QJGIDhawnyk!h zV2Eu7wzo*B)60jDN23AV6Vnbg=Ip7;#!T?i$@Z~$9_0K$daiZvp)Try^N-sG1p;tk zCcnB9uIXLPU?p5ZLCHCnhpR0Y$gnuKj??L(mTn*8G?ATIEIpjYe%s3D(8DO4eTi6& z4ZXGWVAua-lrnDh)5_YHXeCXkz*~{vEfs((AWKN6v(x#$E=3yPa7ILV7s@1G+3Gi; z(4Wo)H{Y^QlQ{_#78B~`DYJL8%n#J+V>khGsdfQ0(~R>%&Nbxb=M1NoCJJiV${m1e zgQz1!hp-A*_zIA1WDz)H=e2UCopH>?a}fyMiIcEr?HAMRr1c^+@f zVLcjxT9!Ch=6Hxs3O%ud!&x!L)V=&+W0e5fya;4Z{Ry3CM@!_Ms}EQMsLdbOP~HYs zq#ZXn&~I>AWXRN2?qP4gVd>sIQKVR41MXD^hfU9hz`urhkOw?4IEr zRxMFD)jd>UbIt!Ow|xr7lM$3<@C2}ehOB}C5#`{|W?`9p{p4sobxH`M5BvK(O{leVk62}qIp3j+_P zcQ^mfK8)`A)ILH$DVZ^SR{_&V^;Gi!=zEfZXldC5cdjH^PJ+B(hj^+bl;70jw#dSE zKRD1};Tc2EJ;;-meYa@q(an6J!@)j^cEb&-$_+XkFdHc9RWlW+O@gBcSJp|EU7o*G zZprc0ay~&Sp@V~{zvHPq2DlWevZn~#*gkcZ+%#x@uoc@|D;boBh-ZoA7<7)nKuBFM zV~{Va(?8)DA*jU5#s1u3>I&;#XxND9sH8~gB_juu^T1Na&eZ#rawKx~$@E(Etj zDhK2-foj3B((w1%7ckUFof|3xH6~4tyA`=MELt|->#Y$!Ry2j*31TKM=}1Q`7*2Ke z8$NZdo+!uE`}e=G>CzpYy&_ZI!@VMF-ow3ypY=w%eSLadN1xS;&S9T^*2!n}di+_v zo_toX{%219=gofq^QOQ5dGp`@yanhV$!U&QZ~N}%)rWh;QEcDbeE*h4`@VQRrb&?Q z?TPr<+|>4U{7O%NO8ZL8qBBi?s`%xkihPFB?Ct8Ovjc|$27q>(pqn7E8>xob`RwU= zmtc)ttf;94_2lRrsovn*JDHwd!Iy=k4k@&(vIh=6NZ8B@lSV_ID;ktCdo{gpn^1j3 zsiXnR3CEuX`t0bS8|6hd`$xFovAHD&AUrx*LOyGGm1{Lz4$HXAuA07LM?TvG)SI2s zLKp)TP9Nz8=>||Ym{03b@@~biygQ8Mcd=lIz~RObA*>BqE>ooJEed6Y;H&)4P_0u5 z;^GDU=Pf*d#woN8jmo-(x>G-pU>ZHmf#b&C$X`A>Btb#}2`+oxXKQfVl!2~0cVz}@b~t03WK4B)qSB~!shS3^?wLS4uYKs2 z?JiYQn7zAIO#v-bO++o^SbLPLBQa|7Jd`sD?FD31L9Cd)i@FUIBHYYGsGAoxn~8cS zbnISa;&+46J3^*lNIP$71|Eh{w%ZIm472RoHi1QzxM1cD9b2Oq$3`c(WpnC+4APSD z>v>G1s7OBmGPNY6Fe*-}jZ>g120~S^AP&@HRsv&@+%B9hJF#;HYIqEQz!F5hd>B^` z;PgH40&woF;pJPRr5T9XwHzG{(=L{B2s9i9A*_N$Aejai+fDVWz#mz?DkxCyy>v*k z+Q|7?E;gdy3TJw-*2n|5JXC4KhD*iK*vr{q28n7g^W!)avG>TOo*RqoFj_h&mwue@-758MWl%-ahXm53KJ*A=* zffr|!m1t;OVlW1-$;ZEcKoW3{#46D4GQUcV>&>0Wh(Hu$1U)EzmcP5mL}d6xg#*OG z{r&Gfia$m{1j30rIG8eBD(!&WN8}$wv}_N-_T;NWKp7L0;F*h|mt+T(7FQ#fjskZy z6M6tMyP1{ZwTO`EWGcIV;v*rydp;-T6=qB4L#Q}KGV8oknOe~M!pLRlpy>`3_&asQ(Zs~GS+Sc|i2QPao1~GXN+#=OC znu(|gpmzYZCHtK5svgee4ZR|(SD((NCxv#E&HPoy+INQf2S}^O12uxr*W5h9w6%+N zexRKiACNZ$HAB~A2YKgLRxlAHQgb*B!AvrmFGkNSAE((k%;=&qt3o9_OU(bDvnTy~_fbf()K zF12yZExTI|Ofb!a;SKKD6p{7cjodOP?Cvse38t5mAqnSdN6klD#IZ^e#1vU)5SWuTrJyE%EM-1n$7W^2aq9 z`(m_!2_AyAPy$+%xci2++@n98#!}!*FwLLFV}!L67X?V2VcLYF4^{6WAwdZ%5lSl2 z^c%{~MnCiXa`oM(`hh(9`k7Sp^yVH(ZhwAtcjKhdFQdGiSv1f)0#%GkdOx1r8sH04 zCKBur%;cNs26G`J&;}x^zG3rd8+)jgd=Dg!l%+9#^;I~onwRhotdNZlKSj=KsR zQ#x@JOd_^ea$v=08TNHhUUm1zaB3{)Oi3-C{sDHI!o9l80pEvW=ienl?L*%kRuCpK zqqi{LgCXD~a)*`C%mOI0h4!9nRhnD1hUG!Kil}5E#67tQq-k`kVfitBG$Gj9a7gb( zX-Vy5Upof_8|GJ}SPxUh(A9gDslt#A@0ZX+_l3fzqzpHc^H$CO%AL#Z!%uB})sc}s zj~o07^bLf#*LhW=RwY*ICgi9J4;ME=$(@dy3TqGUZ+G@-f;2g#veFM9R%vQ|mbjdb zr@|E2YqWJHl!=hRLkK>W9v443&oKCKlxrLoWCCIqAa_4X?R=z6D66nA_XM-io~@R> z;&*uuPhsmGaFEnzMj%(T@_kU$@Wv__K|9B4{K49(7C+T8Nu7Q4j33#1rZ{gp#tzY} zlF!#XLHN2trVc|=V+-KN;zDG)$DQhd)i0BatLr)^t zKln~aFkgXz_zW-PmwV)9@+&P-L<=gGg6xu#C)UW@HdD^4NYXfG2?+hMIJ3@T%{+uN zs$`Lr1g<@kizS4A(gkM*y5L%gl3eu4hE~FDozQ71!$?YzpJP7cyu5ez@x%1h$9MPU z>%?P!3U%S)>2x+{ajY~kyCB&t?Nxk)mh3n2GE7x8pS#zgSuC8R^M(xVfR)l%Al# zfd^b{`atjIfTLUBB!F3lRZ5j|Dl`%forY9Iblq;1+;m*9N^MP}$gztxogS$PX7iXm z2^FnyjhO}&gRhn70AsnLWEwWc1LhMC$SKKmnyuP|sbTLhZTb`p4a*x+be~o+42~oU z0{(}zS4OR;0)4W$pQ}j9mBPWoc{x7DcEP~DM*G_I zEq*k-k>|qt7s27%?TUV+Dcr$PSuqKnaQ{^8!E_8IHRxR+7_$NXe~E)~3C}dFCS6H+ zjsCagb$gO;E03(8>pJI!7Ood#+X0w8{GLq|cxU0apmytbH#a|Dynkb{xlaDt&^^4| zD=vZrO)#p9B{rEAXdF+xI1`7+44I$qX@fTQJ@V;BD^Ir1zMpqxf;ZM9SLuk&;Apo6 zHUxxC!*ithb*)Tl+I$1?gek9y(MXdrOb;|V$Q;ZTepc_uCRDdXc)pHkD#=F`_fqgs! zpeI*zl$vFMvh6SnaYHMfL(N%E-u3qV;Nt!5+xz!-^8W=;@u?rY{8a`UlP1AknF4$V zxS=k#VNN69L4x!g-@xR;4mgWyXgS3%qX}o~{8Nz3gM)9Yz3Unv+v}Ow${in54o$3f z976*Wz4Qd$Wp1iS7sP^y>HsmJyzEp~PDnmRW2SbRP^BaYMfBhwF-~q3n4KR$$2)pxK|zU;v2l@oirCO9#J(HP zR#N+L58}6Acq^(4(3Z6A9h*jwnZUL9z}-6Rv~DEd;mgHlHCjG1xty`=M#BcQ`tgZ{ z^jJc)zLXqscyWs1^9T=-B4anoZo26isjL{!l@|Mu{#`h&Of+D>E2bH?D@2mvq!fCJ zUZ&!0V0qxcNb3vbrkOXsSA;3^j<$gMAZ}uQh%_Hawsguswt5meyXa{1#cwUMq4iTN{P}!3dU@*7P`;pEX^|}) z3P(iKg9F9SH_KbUnf|K+X&`2%neITa+yoV@w7BJnC{X^KdAhi)f%?~X>qvsj4A#Us zZxa#7^F@(Wx#N*JK+y&YLHqn8{jdFi@|TF8V5^hZKREw~Ykqh3_;iwa*F=|vj zVq)G;^qnGkB=)IcH3;CV?XCW5KC*SnMfrhmOzIpnWl-4rPP)P6^Xd~7X))^I@g9Ck zqouv7)GyQ+Pwy|^->&c9|E#xzV-pEMkSPOAi&@WpNo9vL>A}4h(oxcPF+=_O8Z~L{ zc};a#2J2}B(yZdD`Kih9sC}DS`Xbql6jcSgf74^B0n9Hl+ao*%ZB1yF$g;&^DGf?Z z(pq3W%&t0@yZU&$eE%ylG9go74sy$EZV9)Q3a<%a|AIHsWMrUTMPx4lh98B+fS(J0 zjm{6nHkpJ|UB`BUa|?XEmm6RuoQ4)x*#*|fR;-=Va5&~6TZ8ukyBTidnmxK|*v92r zfsK_CpU7wmiJGyXlc&f>N_+KF_zdN)&h>UU-=rJIPdyQx9hQOTkBOFc05OS0R?g?} z9hg_yC0anuB?n6DsH`vPhcEa^sv^|gO;6wo$t!!-N{L^AQs?O!Gm7kYRZfj~0a7#~ zeFO%iA3MiUchjRa*D{|xZdp$re}v1;XtiKy@g}SxWbbv6C@o#x8&A%zo-*WtY)wP} z4{XCBor8jhO?jcYl<7qX5uQ1Nh*oyGKpi-+U za2dPHUd}KlU@?g)gYM0avr$6q1e(^VvQHLy96g2$@tD7zL@F2m7p7oGS(4-fXO>=5 z_8DU0U64+N%9{35J*t3eYCi3&e72xh+aImfo$j(PFwJ|vq(cSE1Mi0#5!SH0hJGeH zMS%oU_t4<0wy7TOvsMA}lig~Vv?XM$AsgY&y^P=$W9y_e=_JkcK4^J3y85frjUd4^ zfSPro))nUJ2Jd25vG<^fYS^S5+wq1r&~_{I&7HWJsJsM;i;|a^By9*WO(7zGwke;oEm$pmTAi>BtbRBfBpDb(`c%fb z=%SC!A0oeUp&*DkMn+Bf+X2A0c^3KY2&IwN;T$c#u@eG>+nFxDzMnzjUFqW6y}HuH zH+m^uys(Z7q>+3oHFdspA`xzjz_RNId=7@(Swlx{X6=t4NQv6YlU$)&Y&RaXBu*+9| zK`o$m0XMQ7K34e*k*X|uzN$$j>yS;g zXK-8nM>EX6vx|lZ+yZqRmISU*(D>C&Jsx_=ITB2uDwCVOzvXh5|1G~B4zA|UjE0y6 zpvit~Ap@irOJm{D?k=~3ML}Nt<-x^ry+yP*1ZewZ4>m^K3zK+511$6}DKUoYt;vvb zUBDZqxEO`a-~tRc$Vtyr-UyswZvl1dH)HIoZ>Y^T+?AR>Ii`8J*urJ5$b{o-%;}`# zVv!2Rl@{1X)YNZNZf`!W;QL*H(dy;<>eriB|HM09-QVB6{qE!a&33!L&ufkWiRV18 zIx_RyrsrI6JWAYw><23?c53N!L_{GILV!9-o_A~%A4?-kUwr23TNyK>fm3<9zTl`n z{G=t*NuSP;;{>Db?Q1czuFQ5ZtbEPQTC8W$M;|Vi9;-K;KxESzo_(piE|)+U@!h1Wc4BkHL%&x4rt4D?l9 zqv#Xt)Uz>oxoz*UV*>ekP^IxLJZXHF1kTZPRvq-HYOuYkrIpm{%a}b&{a#*Czl1lA zs5W!uw*9V@+dN|_qRKPaR@D+bXZPb?6S3OLWm&^4`zCFeW>q3cd08VfYzt;#je_CE zR?wZtn)TQlj&;(OV@2zz>qaNdqExQXC&QQ+#^C+K$nTL74hxO>k-i2ydDwk z&FhEMZ9<}FaU-0*rif61@_M^>X{S?hg85D(*0Q`=ZcE1(Qq_UF(~i0t(9K@j3rb1R zFDkCEvd77Y3N%W6r78DB`m<0Co}SG=C$=)uc+o#u_kTK(SD^=_67c7nH^SBh#*>ic zT$wm&?u5y5h|e^;OL96+_J5DvQK>BO57=Ae9Y*`FAN5}M{`ddx(S2H2$+<%b_{Hqk zu)M{C736HQJ6zI=PHqU3K3o|jq{<%Lc&KQFDR53J5e^#n(N!qNjnsFjMLFG z*e|Xw>6`xX7G)AKofQlC^Q+hYym|9g@6|h%ZP;hnqkWl0m4q8mv@~KrY&_=ONnTAb zv)Gw13gypE{>%|T-IyqeZA~xs9R;WBP2ZTl^ zDAhj3@$|Irjf=KL`=;Fs<({{+a6IO$JF)x`LE>TMjf>mzstku1r@7BDdDL&<6_C8OJaVRtOpQ>_U09BM#H7Z7;*i#mDiI^?7BOfMj7u@g zii2!^$yz@LYYTVkK76Y<%EyIPE`ih=D*aSNBx>p( zalf&wq90WiUMf~hB)-NSDF{R6X-nya5M z0ZuOH$B1sNqM8NKW&aJ1+y zv}lp9|NdJpkKnS$nIW(l^3E_$b$NZ24>z#{;{Z?3R?oY%oEfI&W%t#1!xMQi%XHdT z6*-rmcUPw}NP5IH1-#&rRpw5WS|-c&43T$Gh_YJC!QtWY!Qqp^(E)0_^>4oJAFEgk zN|$JpLKldf0Zc6=m*O0H*8$IOH!Z}#InQW`43#9MTRL)L6yi}%a&dvE5~YsSyuhu{ zh?lA2Dr1%iASm%JNg0Tv0d+cPJ`2HAc}wHQo)*W;M5@ZZ-}8X#;5*z2CwwPVR2Y;v zd6SjgN9BamRA0DupNwSbP}}k_A{sS+S_2u*Wg26$B`NWZH}w(3N+bHHU9F!+RI`&* zGN?xJx;mw$m1EB2TV(jv#-=Y5TY9?lVnzLO;3l)XI5Xx(n6iL*{~)2?0n9qX<$6@{ zznPzOpoSt6Vs?w;(rzKMfUTuDM)*>CL&GE^BmrwPNs$%wJvWnu8!*2`CS+tsM2H`9 zQn)h!9bsbAxoj0)Q>m#p*dDjtlX%CHs;0=jG_PLw#D^POnv^sIBJzSes2XQu(jt4l zr48qH4W(j-=PFvoE+N_n-(PwS!875rbB{sq zlar5GLyvnf``CjwJ(PdU))OKlGKw~tnHr{vEQpQS+o0=B&hySybobHi#?>Blc~{F% ze>tNg>B#=!GNnD~gxqJ{J-^Jxg>6K|Lf%AfrtpI)Jy{prl&@qNVK#vYnG%*5$o>G2 z6rQy;+_5!x^uWF3)A?E@3Vk5h+!Bd4JLs@7e+-VN7lerXF~{11Ij6cQAB(oOp)Ekx zxSv`NjDA(13m1p1_kj$a6f)=rWl<_{4 z5@#fs9%u8XcbQ#d{o)%u^c&Qd#yQe;Alp+^V#ga%guAFt!k$c;$G*M`oDp<&jK`oy zOVgDcZ+`ntD@VNwavBQ{M}n~?d(!}F+!PAoWlU-K8fi?CTynNqfQ_DPBrlFn;jz#F zI36<%N9=8HX>5K3sR8MnIa8H*9)5ExhEC^Td#k?~mgz!-k~Z5pyvoNfoeyOqJzlqT zWh&JeBD1eYr=`U`eGs9mk0uS1?gbf4$~ZbT^$C1ORKT?Sxux4J&RXKJ`$}tn+yb> zZW-L?Tl_S#cKBsY7y2{bog z7~bQD__JuFt6C9m-ti|w*7~e`5GBZ{8l@kXpK9_`AMJd&O|!W-bvzPGgVauTwLzyi zo?z8CN$%oj=!Z{i+t<48rY9s`@8Swk+s~*!#r57kudfw~8ToJA3J6In`IiM36KB#H z9`kMCrvT@IKcuTqLJh%WHo+PV3ZzQ^X=VOo5%mZoEmV0yYb2>Cd8r*p7m>Zz^v-;6 z^z|*p96h8I+_R)ZhNO!+!bk;aau0fTU#(j)L|^#;(?cM03U7#=R19q9BM+=_1g9X| zC)*f5!!$WUB6ZH(qs>E=Q;!-Mb1hS*1bWyn=@n?yWWG2Z?~!YfQVK@}bZc4=aag%EqbBY)Rc{qY@7An2 zzwMk=w6weV_Q@|dxA*J!AMak@KsPmzb{&Sc%ZD4mF!vCR{ip=(ykiO=%xQw$NcrLjhjTybM7+uf!nmum{F|3x+(G2FfETcrIZTewp4^u z2nnhsH|^2HfRvs1A0B1+l;kK}@pVz@9QetF`{-%7kJ6c11PmIKMN&FDdMp4wQY&Vr z8Unq(*Dlj1xsA$(kv+6G5Fj^YDJMNL5zCXxJG%+fJ9WlP2pBXcvxccVF*;;5EG|;& z!>b};d+b*1#^GR#Y*Wnm)f2xsEJEE)4KZ-JBU%Y@tx!EpHLOgM%T4uwJ<53cB?{oJ zPA|m9!7$#P*YodxbAMGuGWY(3(BJ+2FLHuxl+?1Pi4jrG5o};ovYM=r4I4%)>a;zq zl^hpdgs9g1(937gFJF2r>mPjZVb_CcokqTG{Acm8fAE>yf{MW{2W!tHgJ{oe!{i4B z6aXZkr8f8Q3eN{aEmIYrpdXG;+stR(Ep0HVzvt_XvnAZW1xv;vfd`D6EqSu9z8k;2 z`|8)x`;WKxt}=T2J(iJ|ZHe&7|H@(8;_UL1^r)hoAdrwhOR?HF?>^k%?)r()#nw-R zDUzf5#Iydhiv6ZxCPIFap*4JbYM`b^r#q@h6zXjXM{7{>i?!D@P3G|uqDNdW<`D8> z+dRF*-$UQ}jjJFgP>Bv0X}?p$*xdnlPFEBRvPl7BS$^F=S^*@7*GBYF&j=TBVi(xb zm;Ufw)c20tOC9KysG^Ht-%-OBauZ()1uhJ$sZ=g9o`Qr*5@Qhc*?x8beLI~^7or%UVnZ>5tGz^_@McA?a2VO574$1X^AfsA$_GOx4ipWR zo;ArDXmW4=YYT0SOIpaUdn^cMicY$`K$KprP>t~d=XVTB<%fZ>5m3iT|I+M&+dsVh zj~kRuLv7B2=vFE^n{a-eY&$c=Y+TQvV@zL{oCQ?`;m8ao&NrB}E>7sl4xSV&PzADq zn2o|zT*wPXu9USVS(0MASrl3jc(AW6NsxU%lVB-88d*#bCT(sb_6zittB)BC#x}f0 z+VD_a+Mx_HY8cOwYl}-L3E`FkZh{pnZ9=bQDlB{!H23`k%s1E>tSF;#noy;jt-w0! zC`o%&U^87zV|2xd*0K4{1k)>9hkW4AryahH$J^{IrnkcM-XmG|mlMRUtrTTIk2-7W zxDrD^mO-*F+gOR}6abA8=!NnPsY(0&O%M*{t?2?36tZC))S8YE+Pv_agWOn|?_H~h zdF@IR#LF6OtQVESI|M{SS7BzJErCnuAH}5svIxXCzB-*ll96sn&KTC#OVo$CyrAH* zy6l!31*)FMc7qaqsdBAyrVwC4ikoSZmZ0`5lg-xM*ef=mscmimHUIi_GkEr0SsN{l zS{VS7J57p9aO@qn?`Y=P^wZ)-{b&g;=^BO&q@h|&)7tq_YXI{YofP&oU~lMgS-K_l zqQl@*ZY37z+RQGm7FSmId>7Efs$jK}vZ{;K((!~aNq;fWj040bU2MPm{r=`Pxl0a) z=P^8icJ#_$_Mc&XCiPlAUT08V3YdHLk#nh$Dx#m-B=#Cjz8MY83EU;PvX;_h@ zRywPYWGKqd&*1#N&bCA6CDMj0o|sfKMPNl%?It#>Tea){k#QbnLFgFu)N!l7f_ew1 zizKOZV_(jZi4Pp^K**_e)rgYq%8DrIka|G?sGakm8~Y3X|fja1M& zXati^`q82t#mqj`Zv>wHl(9&C?Y8b>bMD(K)=T~3g~*yVfnzgWA59tS)99Mn48{PZ z@ha0Z6jRP^T!MVcO|cnv2ybZy`MqnP(=JEa24wGpVmz#3j>3pXFrU6S?B(CvL!Usd z0QX|KGcbFm=!&S6UdvUCw}i8+B?yAip_@>4f#oTKJ#)s&Zi`i4>R`5!SdneP}7+Dsw$T4 zyvM^}TBq(C=nR$4dr%_5riY_2H5)fuUZh7?^+Ybt*%-&_Y>dg)`N+-GLxRycy?n}a zkGwZS^2fPrMN{dk1Das!?hHSkg9tICZ0g1xB#P|_vKoVUMy9|SvL9AG>JA1k(H)$? zcH_HY6W{fFZnVN9RIL?g0Wx@+5nje@@nRYU(Rrn@_piq}7s<=oX&!xDQl$GSlH0<% zK}*J?INtJ))@3Yeq1UE^DRtmn=lR*Vsq|<7^O8A5>8?kWfx1B-37X2Ijy~k-G%U2KvYBFBK^gayU;p!iE8zBX8}6~8n?v!y{$EU$mahE?k|EV;{|l;AY1Q(rUw+ACiC_4epvo(& z4(4w307rrJDzTz{IoK$~wmpNNcw+%t;9|NEKEUaM*1%^hU(lrKh#PJkq*{5}_u`eL zE+WQfdI(5(Nl8L=(HhaoryCUfRt`mJ2@p6z-NEGBB|_gfRQWvWnW6wq=zumT7(K%2 zn4q=_nK#-QprRq8W@pQ3B{smxL$s9e5_5*zb0Jq@9t(Gg=%A_5N1N`yFc^c>K(71o z)$Q%gJC;@w`(n)^j-~450WEr-8yt5O6E>=CzTuHFa1Q;z<>)1LYUwJ)1L&?_mjA## zzaE=PDY-Cq9Kr-kUrBa(c6s{DYc#aA=*~C2x*V}KQvQJlX13hL|HNchY*$6#GLg6!SiZK*@nZQ5a&_2WP;Nl8Q?M`NK;>AVPPi>l5y}lKDnEB$d6;dJ zI2++1!x5RJ3BYTwZ*JebzuUTd`sn@b_iumTY-s`95zQ4`(b7~yH!>M9=N!Crwlts( z9}mZ4qhn6LtI{i$cUh%m!4H5ijGu0hA}X_jY;XG*5e_J@_Re|e0^4hyuWz~qX%-Sp zE88H!Es~6lzK2|tvV0*Qdf~~uevvGTF2ts15u~S=XR{D83e=FiSUm>d;J0@9^P-QQ zN|Y-zyZmm_FX7nKDtho6I1<#z9+=ONaW_RfqhpV5a5Z?ee4!~LAf?I!zW)uV?dHeb zLIU=239+R!eM+}4aDwH@b?ceSC(-iZa_5?WvcrY8y90;=CYU-G;1)N56MJbjBbyV3 zU}}6_b@z`>HDiKl)Y#6%A>dmW)t~|``%oURA$4u~4TY_DOzEJCQtAWb=Xkns74B!> zgD|Tvr0}4(Sl0i>zbycFERO~Qs zF1!m*2RJ~}x3_OU{HOp;iR0B}85EFLE1TyZfq9HwzDnMOiQf(q&DWOTJaqpWj-{z- z50E;CR6#d|In7rlfmqW|ZaBw4jzbU->7bq9w$__xmC{~UH((#;bAcgANg1}ickge1 zKsE~3Mj#ZjJk#dQ-yC{EDH^+IVKN+>wI?+-_V^sR?gz)(XT*^$nC%naCgyK+WtLu} zp9gK!k(v{N(L7yHH~TKOm=suHh(%IPge_A z9!m+BXGEbtlf}rzUp2o$8%K!z>@3X3VYx}AS}ey$VTji!AT{P_y>@}oQYms@NaCOz z>ze_nqh|~nA!RIB?jYwv_#wiJaWJ2WX%t8hM=~iAYHgy z7wwcZN_up#^T9}ffW-hN;L`JRG#hh>F;tw`%vmjY+FpTOattnvSC~Of0YH9>mEZ*1 zySc#K%5eGn&o}U?>G8MffA|)2<+yJ#Sr0*JL+8}@6nha}O7{|#0Er)BBcfq^5B=iF zM40;yv_Hr-4sndvisRCRYA^EOh4&B@%SB4N^0FTeLuZ(}`pI^35>OAew_zY~c-MgV zuRpzURb$sPY@bQ>RSdiW>EY5U6uk7~Uh9e;nh!gx5hYXxB>aNez68_zB>!HH!GqzC4VuKsRvp151Lh8K z?K=USPspmdFayfrWP60p5=Ah|wun4@Bz!=WB|AA&GSz{Iydlg02U#fa)PM-Ar1VKE z?&e$f=pcU5OdG*4SB>T-OE7(7k@`5Y5??Mxh|I<~3-5^sy6G{%N0#y1@lmAzuFwIj z?&$2gV@(IJE3@683Y_`cmGh;DZ{d_L?c>qe+(WFU5O7+x77X|C#h`A+;wrz{p`RrU ztzhU+!J?D}ic``AX{i_M(F`dq;5#nL-U|7W5IrzU`3~M6II*Kcsnu64lsF5P zW!pz?(aX!pTmn)0?E+ENa~tx^!@VNA)x*6a#pT1jnDCOD&N8whED1qvtiENasRLqL z>Y?fcNbO6j;e%b86hKK<;R>O!tsF|JY$+lK9%E!tfDvNEgzI47z2^0x6YqOYfpYzv zrEsM{v^s~xJjIPM89m276Zcleuy<-%s}Ob}>Rf*kPW5lT`+awP$_%g6R!xESZ!tX; z(3jRuK%{>{%mXewRgeUuBcg$0Y#nt0tlBjQo*b!l`Rl*Ki3YWztPdS(&_z8^!pM6- zZiRDsdL#~{P1kWYQlu3DcH3MG2h+Ys*OKVN6O}%NG?!J?)NSW?JE$d?=8o^10-dhD zMQo+sB{#IhhDB%}_;+7d$7}&hKCZ?NO54 zjRf{GAK3}_uXlq*c&?Md^Bd{qFk3UlY!>^H{WC+NJB}l#r&UwEqLWNN&JE>#4RC${#$rQ<0-vxVlyNN&u8t=Xz6RV+vhT+?Oy9n zxKKMCHx0d?{qyQ)SV4Ov5;XSxR$n(NTBa~f%GOF_o=G7NkEX#6lyPWoWprm#voi85 zQ``HkXIHZ0CR6B?|l*ovsn?P?N>=&!5TFvnXc4T&r5c-j@so z1a#mE_{z_cA;4v^3S{dF6vk9x1OA=D3A~Vl__4IR;cK{hrhYK~x+C*#aU8SzkMYZX zmW+&ADE0c#6kgHN_w&%0ShO{K=3-MIGSi&6#)odXM8LUF0iVGMZ`lC7kU_bGu1I%7 zitJjT4KVOgj-fnAU03YaK$2m|@Fh3?NT$1owP6@$M+d`CCK=10uD4G`inf@swcS1u z38n?iNYM0~&cs&}UkVG{p|0cX>@Y-;$nTo+(DnN~H~d#T6fyw{Wm<3?Z*UzWgT-Ma9-3OpL&t}uTz1@< zewA{WC+n#Ea+AU>wEPXI<}#FsNc@m2p9PMh3RR%IQtn>m2bOv&qI+(s$qS2ADOj5d zq-T(>@u@TNe^8~jsa^@quU+?Hxm%B%rA=)70FQ!@o-7)rt}DUvQ_R>{JS3ETP|2MY zJ`J1}BL3Nix+M5d+v(1iJ(Z_nQV$JDgQ%U;6+|M%Z4e$C7_2!M81#0W!_ib)E4b{A zF5ou8?CmZd%qhq$T>S4!-UKj+fQG8zw-{BhK67Tb%R|v| z_RV-wZALiA0MB!M;O69aIHKH)6+nv=$97$jNg~25N6k#DMZJb0cSs}=-qlH;A_hiz zH9`l!zIwvHj5Fdqb#(Fn)^tD=2+4xe@TEi zJTTmbMFZX{-G;3MYz1|sqlY+PSrF0k6y1Ep50n?<>K}q>5W`w|qz2>Qop@o-pt zw%4=u3^D^sMUsT1vR9o|;|D|{T)6aL{!>J#1 z{uNvP>%UvC&O07T@W%88z=e}4xg++7#bmn5Is!CJ43Xj)d2-ff)>0Mwagh$l6ZZ@g=PnW!cu2C6NCLtiCrptbONNX)v#7S8SYV7EqU|Kcc8II3V)T(wQ zbUolnC+5uu#EirO%}alhG9~VLMmJ(pau-kXtEz+Wsrx~`I_}ri&$=I|x#NCbHRF>= zCmaT^pvefnRJh(fxL|UH`GOSjfaX_GXQU1=>Wmo@c~#PLXtKZnT#hDH!Kb*WL7;OV zlvv$8V$~B!LtU$LlbRXD9f)75Sr1?%hJ(%*FG4qy#2*u|c6gxLqr^;kev!%}TN0q5 zNbE}Z^(1#~ZHPqoRryMjqF(^wPOue{=ZdV#n4g$a&QngeoB-wnp!dKB{GxK$&O;C= zVG_~_Y(gl#^kP}|69rygoGz|cP>(r9wsxLP*B|<=7_;~Y%q5PR+~VtF(S&Lcy6CJ2 z!;y{(1!4r$<1v_yr`YxG9SvNI^%|+d{G{iSp{ET^DwGoWC79kBT(7EP6xu&n4fDr& zgj=VenP7UHC304Vd)Opq*AwO@EH19DF2#FpC+6?pH?A^TdZm~F8B2(3ENIGBBzaxA zuRxPT2sb5|24vb8C=Z58S{Pmv5>^m%4MIB|UoGbo9KnMFx?V7?4(QcA{H2&|EbDGY zedG+*ICv(^omJkgr|#QojXZ0IQ&S^L27ASeVLx)QJHyzzWA*y86h^oUZBbYGo*UMW`Pkg?_S;gWa5ovPe`WJ&uRrD4MUL- zN7uQ*$a_H-3;ApP?$s|hr*Gcejb6Qb_Z{jPNqK3o^0LHUWU5k$8|0z)*I6o#L!+h^ z22tpg%!Iwe27~zkfz7$p)5KC#Hg9XrtXgRyv)f*5Il6&R%7*tTL?ZjE?<7(!cy0?| zz+F{rSiWj=ik$_j3zffn#8VQ2jMX2QVo-r%=m1JiAB;*KKCTe3*48CuS637oJHzY+ zBLfr<;+Db?f&M7jMd`7}J*qbAOZIJHZ*7HE_A-XSM7O~DT0Inca%K^US0$noK;_F9 zG>Ci>i;?l`sf*GgB(B2C0-IHAr`S3lpUvT8kGN38f6K}K@Xt>U4~~zH504%n_6LW@ zM~644YkN4iIkn{7h02v^Z-VUr;>EF(+Iqxx3DL32_KXoyr$CPa6CPNlNNtANfV^Tx zy?nXKcm}r^2oL{N+Wh_`yNK?TLW>leTNv7fU7EQru$>f7o*Q3MlCA*hQw-TVw$G@L z=1%a$q?0_!Jd4+F-n@N3xOjj27Fi0bvkWK<5uI=wjH{Uo6_<%27OoQKjOZlkN-kFJ zPG)*L(@1Nuo)OIN8UzxG0PbM~ZWund+za9vCrdc?NA0oF&_i~l0%~TGs%@ zIXp%o?}p~2m8Z@9T<99^N7{syhyeDM5Qc4ne%=J7a;F8Q;0M&j_Z@{(b4E7$Rp08vd$snhr5ied#XQHbS+@k8T`T^ z!o#6gnNRe@u5J)5Y)cW_KM44#8@$8#pPK4%d5sX<CGy)a^s3i! zjR6u2Iuy4>HVkpZjAuL;92(Q+iB6y~DJ*>ZJ?)LibkY&||L?lT0rWp9AyRye|7)y z!*=-mYe4a@(itpWMQ3>L;B^bJbx2`Srz`WCH(MLo;Zf>N`95^=PVx^UXL5 z#?ev{t;&wcQ!+Q{q>aI*zC?T+Z}>Bpw|4Zk!hIN$Emuo$Zb1B`i)1XHRun@`oQc^* z@0a)QaLnG_^j^P5l54YnfTnCv`?9EX&z3%yGn9&!UR2hw21pwN+CY_hdy(~mFKlZ$ zC*)eFXz3j!lR5DDpfDdZ6Nl3x7L-U~8;p4{Up+7aZ0I@8C|OyrBoovo`T*ur8*H1S zfz;F^?fmjfKg&lz;x&>g6{?+H=Bx}87qCz0F-(`$i1q1q`Zkv)!1P_lcK{DZ&JSFT zs5ZIm7s%?>tV+b zbi~YJ1fzyVCfz9sB9A(PdEkiJs*#*Q`b6pnFGyxg5%XfP8kd-Z;G8fF$wno%A{PmC z^-vVzNVVL8{GyiKO?h=`Qwio!89N#1?4z;8mw@S0<;qf`Z^Cp#C^DM%Bu$ma@OLId zNH9GnAIRD0kk#UFwPF*JjYj}Ei|Z90S7#KZ2(mL&i`}rgxDL%KHS49&TF`%8rs)xe z#|}k%18+M~bxl?SsPD-qhfi)fFjQj64kzGA!wFcg!3V9Un+L2m0o5o9J*veHk^d@U z2FgVWR^HbIJ@J*rDObvi!s0;=jziM?QWaS#8uGjg@#zF06LXF&JY`F-ph`$ZMXq6G zrQ=MhDgw48yuvy=`ApB}7RBsom5+yeu#@z@v>F;ZNz6Q3GeYT*5v1p6dQ-3&1yFfq zr`WR^9+r8KDi*pzeecYZ(md}MP4(syv%4upOCPTlFdvV;)NxJTCBZaEL&G5Y@IHlp zFna`8TaU~~X)!t+HA7{aP(4<=KUnl8|K9-W2HRLE9<-`&n;pCnB4=}}uQX?f3U6vo zJvh>J^Wr+hB6+|hNPplM*fA(VA&nSQj8QP9H@;ITQi9aMLDtcTxS?(LqxMEIU#hh{ zxLh{&iA`4m>f`w}*zc?7qor}OXlyQA2WWT-Sj5hjI8Sr@ix1&PX#5pZR1M!CKKiug z7Z?Tx0AD;DJ(~x!R5k-{YFHX`MBEhWd7E4E=_fqGw5-zgM*K;2#onh}r>o6DPjB$d zrw2B_rkLr@%9~&s3rRex#ewtT`vRAG9;OaJvIapZT6njaY#8usK| zvDh{LCH{SCi%3gtHumsMhFtYGok8aSALy8-G&?6?FbF81V*F6(#EYIMUR53pxl`I8 zD;9p8;frcqsj&q}or~(dZ*R{&e!u>YxW!3gM+aX@s_1qZZCfxuGM*d_+mwF3=Fnv< zjGukyXFB>x1p|}z@@g|)!R8-3Xe?2$17JHP)LSK!=k5raS398Na7rky)fhjfrPL}V z{GaCCVgL=ff@~xk-Mq^tmP_f(?AjBtgs7%Q^If%4W0kk&5c| z&}~S8v4yeiWyq+QGRrWQ{n$p&4n3}BvYIUwItUzm_*hkvW&_qY0J<2gfdm`-oNA^< z2YqQlP5bW3L^e`;-4q>1Mq0d~MTsec^ZUgTevzf&qY2Yngtc9d*eQA>SnlrnuTB;$ z!SZUk&st%7)k{s=(h97rVR}j}A0Rk@@S<-_)*u(7|L+F1u3*48CtUg7imMFmaGfnwg$dX!!(8Ux7 z)YhC^mL~_>86C&7l?GQ`Nt&(m&1~wW{~-9Om5;=8@RsZ6C$+bd4n#mSMopb(mxk1{ zlHw3QlwO(_{L^Xa!Kc$nqDRj!s6cRuCg*>93yFf{LSZD*csg@uXbLR}miACCwcD!y z7(~ZP^xEp0Z_pZFh*}kSqa+UIgez3z{UI%8VJ5+Fvj0#-`dI2^$Rl`2|IMW#I5Bo)I4I7q*3>J-xq%m{`I zE=A;FW2>8ZnG%m&`2sS-Evxc46T#$9WT?i786Nl2FMVZkoCdA+XaF^Cxk-u}snBn6 zS>3er-QaG+NRA|aoby%Rsr_wA{aj>XT|dY9Q1FiH%psV=%>rD?G%+dOP6q;WmC_Xw z6>K+f%|c-Tyr^yS7brHe4E3eygWmyW9ZC#n+}g}=0_mgErfkFyRbGU)Oqng*SrWnM&TlfbN+%~vH4p!7%1u>#r!&nwce^{4vP()L+|;6IJCk}- zzr%ll>|LE=QY*Ebi2LDR*Hsi(^j%_pJapouSG5Eec5oFzwf8E3rja5vR3r3lguA0> zRRT6Z1wPEj90inEfyTm;zGW@D^1tQR!~Xo4?Fb{H?uFqE4aWB@V;P-K3yo?8(P(%@ z-bt|ZG|I?mPa06>;Z$E{Q1Gi!&|O{$!KDee>694{<74zjwNX6jIMkUaZn)dQ9aNFJ zFbcA)?P-OZ><7#`1kw5L6!m&~3O=Yn!0IEWri|cF*9a6&R2r+11Gw|Ij}q#rNxF94 z*1|@b+)%M$vDcHkjVlAjji?se>-DQ#K*a9AFFy_G@TM@f9#3g%r4{Gq{su2YHnGMR zXpIY~9;rPXnHih>X9K7kcyLe@oj(5hTXAn365Z?Cei&P2RN7&$kq>xju1N@}A^gWY z73!BPH+JXGX!CN=xk;c-Nr}q~wrsWI+5t9iP9@NujE`o_Hx{l+bFY9C(76sB+jn;X< zR-PWSZFOfAOt9kRMKE8Jr;4yYQcx2y8RF_r7RE#7c3u#3+(@(K?5qYIp!|MQZn^O2 z4Lzzr^sdN)Ro@j^;#oMIRJDVjjTQD+l@PtjSdpV`5*mqy4MAm)dRp~8)lr1YM5Guv zJ`}^FT{e+(C3*$0uas$RcnPABfhtS*bHYqwk5o3e3wm0&iUbcPBZJW zOm|w>4Agr_$K;>xmIiXM5iuP2g_43Vv55`j^vsk+Uv=W-!-_Zx&18^Xq-(C^Z|;X0 zX5WuvTV)=8l8Mk0cS2c%MMAi{BZFvZ$5>>qrNC}$ZTY?mCM(h66vquZ;X*;p*;(Je z|M|tMf8JdEJYsbUdLoDkRHjQyx@vB~0I1F^?cIhm8%1UrzL#rLf5DKK+^<>o6~Z;k zS`5Gc9;cl9BZl{Qo2Eh)C~fahJ#kj1)AIe_gr-H8YblsB_qkwk7JZhk_iMnwbR>yL zcxCz2o~#C7aU>vc+nQiuF*c#`gi1kM)?mIQ`?@6knD-Xg-2af*Sfq&w!r_y#MWhC0 z>Iu^LiBfuAkTUIU(Zvv>=}wwdP=_Qynh=nx3ph8QjmC=m%*}!$(g<rX})2>vtSQn(iR^$T399nf)Iho9@4Ysn>dmO%4Ou*Rc3;nq&Ko<&Q~)Y3-2 z5nI@32~H^pwC3#N-G}@6&Fv5OKW_VvH+QdYKYS1GuB7$2g6(`hxqP}gCm4YP>nRLH zd&DzU7}_vY>s|!LHlJ~T?yVGcOa?C66nT}l{XK*ZKrWJY+fR5-zLtDch3T=UhLY0E zs!(vd4M>^xKxtbq;3-W~h6(KTfs`ZiZ!=7Bf1B+Pn85&@2DBzf#MPMK#Z;>tjkL5= z&%ssND=GqdMCJu#OqmBNh?bh3Rx2Lir;|1G&YMO5fZCe_SKp|#Y|3WIXb%%6()RxflE#9NNqzDE8q_omXeHscV^ z1{~f^|3amEDWKoBC3L%_CFet6j1M{mmvd~S%LN^<92B{aVMqcj6m*$!nk&Y zOJsGQj0oIKyOVGvn7VHn`G@_4R6WI_)<K>Q4x&ItHRX%V z(}@v!93tr-69dnX0F1T_sZw3be+X+NPi$^#D^fs!l(AXjE9=Q9AwDD5$A7IExD#Ie`w%1r>7do&`*=68kRgBzXD2fgmBoHPMaXCg}`EJQql$yY<6 z-1?GM*^W-@bS8J0>TvR^^zp0F;p4~_`SE*j8r#uNZ}wmR^hTLN`0wBTX1IuXX8n+) zpalplxcz!HnIbd*2j%}1J;rZ8y!!6lO`}WRBved1#1zWz78oJXjMcMDa#qi5KlLAD zGAU)#DvU|(Ram46bu#CBz7r>f3!!Xc5lU19D3;1=({B~Pv}{;)IJ`EOSYP50+YaP4 z(f4$|-k9w$wY07c2`56Taj!X2@qsCrg(<-0K_KQAhZ4L9lUQJKkR%=v(5m)VUXnW5 zO8uGqMOrWO-h$bMuUu{~uV@Al5f3M4(p@)@D#4l&Wo1+(2~{FEjqD4w#Cw!7+GRsM|Xn`$7WMz6pDQKDOHu&O})>nHmUeZYTL{ve_ZJvv_b_e ztrFZ^h}rNE&OLdMwD>_P1)^@AN3w>iRfMt813`k_efc=~l`> z%*q?9bz_Rvj5_dTFi8CoK7eo6eK(NIQ9Bo#0$`fTYi=->PEi0v7zk2tV^b5HLs6vvu>2kb;$HAtZ7KH() zkf*8R#82DtIM!xL|4UA*vg-lJ@fUA~cwqN)s4xjUs>`KnseJ9+9YN6vDdv6#6WH}^ z;Yks*Ur3}3k5v6gdxoXt7?E3xP6K8rHiC-<6-;KuzhLJzEp^}@vMVwVtT{QqFtss2M92O zgQKC49o~W69o%wF7i;D+QcwqqlsDA*eX}A=mM3H;AmqTpRtCG+K`VfH`P{Fm=jSak zVnBW*DBx3HkVDwOY2&a`9QPsp2QHgVq~_qZ#;Z(lhO~2ym^`$(`7GI7+4ML&gJ*Hv zsnloma6_*E1$w-I4>5jeHe$2Xjh9 zqE;SUPnJ~TURXagXZ*yhJ`g|K)Enrc9i?!_(MF(37oXJ(@JM-!IQ0=t>Yi_6NbOM( zEZ)td+A4fQSvrf=UNI(+LjsjCilt?Z`#o8_W(h#Ni%CN&9VgdP?GY^27p z3F8(rX%Opy$RD>cSVKHcFfA8LGt-%x0SgThLh(t7?}Lbx7jWQ_kJIl`FE&xm>i_nN zXX;w>$y8A^`p9mAG)1Pl`a84FYuf($$>u3740 zBD;1sZ8n}6%X?e6%c|aIc9@koS=a#)pVhvkS=H7>a?Sx_5{J`@C1`;3atc%2>7byj zlq%t>XzP&$>!FA^55P3ymfTd~;ZVA%T3*pzdKsRM3TEhLh><`m4234yH$Z{`4`ns8i}dtGb*9Q+RVAw`!2UL(;^HyII~tHg+WDm^ z%+94Ap(f}5YGsC#*>KoVhQi1KuacDH-GGiZ5NBacn2muWwmqZ^NpmxU^Qq%998FyY z>O@MdBz`;BUxEDd{JE#2=T|d?ZPHjjMeYcu)C22a>0b7~9-f4HFQNz=3uUN30sZ0F zmtbQ+`H2hd9F`f>yTFFf#nPNYCR6zmQ+W+O>f6FfKz;Ke#H+?Y_>HYDJ{+9KYD*Mr z*#zxj&?yP4GEwXsTWbm&T~QX{)aga2WZJOv7i1vB<`-)Z?V1-Wl`KpqStj_0=*F%t zEk!!*uZ&pMzUZHjZ#IwGVkwHxZ^5d~+-d6q%g2o_JA!Wx6A%ZXHl)XR(n82lka%*k zUe~&eBB;Iadx@@X-xnX6*dTwE`KGVOpq(}HDL%0Sib+8{P}-nwk12O(7ua^F*ZXNo z%3?VZO#99iIg_U>Y0vGWfBr_`YHS*m@yLwz{w}ib@xO}#Jm*l6HH?e zNs*rNu+Ui^3jY@T%;;Rat#da>7y%SneXc880$GKRtotOo$E^7z;zTW23{V*}6}v(1 zrgar-K-PuF7R;XOHNYnjNlz$gzIp$z-rMgnZN)VgH+jPX^=1B*lK$W^U;llyvV{EL zNYDcv{?hx;-p#uYHxE8%I^~0GxX|vINwVWn5B2~B`>eO2A8KTNV&wKP+L9g`kAK?# z*wFv;*B_C{MoMrYbqhTnG&gz;(f5X|C%vPP$E8O}8=xE&9wqTF3*5E)5bqpX+e zyi?sbdGQpsSH3v4v_VDI=!lP<43~DQ5+d0e^4q{HK~~7Pdz9gW%_5Pa9RSu7NA4cT z)_1R7-<*B?0A++T3n#A0?&zVfsmKqp2MwxS7d3KzOJx&kXc{xDm|!~doX@ADmo8ir z`9Z6LO2PZTJp#f@zs2!1UFFUeIEA0#C^v=t6Fzl%kUXje^t3wgns8u2O+#7rp2L~!nXI=(Fbvu zqi+*4irl=I51PA{=nw3hk1r5P^r}+z0{c<3&3R1sfqrA)#9pNr*CF=DZYM6};tL} zZmzinqi8z#gyZ1=Ta1o}qE#uFQogm8b+XJvIe6@uD0_z}d^di9)OJ^wRwjeCwrjE$ z$?4wD^R8Y6iZZoaRq+-~BF}cX&qexQI?Ng$USp->>b#V!LZzkSM`lsI&H~xU7 zAQ^7rv)Y0{2h^4t>tva$@KRGFitd=@B4n&+*%z^}tyqfr$xDGV$(tMP0)-EMl?sLW_X4ZKJd8u$%I zQLd!|04(!uy#^Me(L4_NCrH| za7o788x9S}>=f@$5oue{qx}BKg-0yd>yui=e6n^V+d`Hr)tGH=lN|5Uo!+JqhwJlJ zCJ$5+lj+60v0|RrsL&H07~Zg*ZU!xghE%rWv~hLZt#{x5rQn%=Lx3v!Y!AX*V(EON zJW@Pk3k|G7EYq_Z_ebi@UGU*2?mzql{OA+#<4?d(J^_FH3HXyw!26$^z)#I!|5H=g z|I{4zKQ)Q{Pt9WgQ`6YTJi1d+MBZ3Z2A#^dWRW&7j8s=$o*=@5elg`4?*IAZ$;t7P zVSjk|_;@hvAD!HMIXrkgMJSyxxd%NaS+XRI38r&I4i3&IbJz$stI_gVQ!&_v`|*?d zp{OA@1?KFTRwB_Q#Pz@xWwCmRpt1|gDKst3x(&H4!}Jb)iA5$z<ax|oS5?C_N6gyVyt3MJh%Rw+|X10>pcHGaOGnJ9RG zo#pkKp=@rGpcbs$V8~xyY&VOF6`Y!ev&D3$2fo2HV~Jx>*pe7A{Q}TfSFtf5;HOil z#TJ*-+0%V*A)+4qkLkK11S6N6I6G&k~9;*YqVVW=pnsU z;%+haCdlL9fB=xtd*kL-iXl21bROlDnG_MNwELO$40}GiS0Rzvb4hHt+5yru!4>yF zuDC*QsilV+%5w{);8VBi=;+3vER4J196iN>MJfqV8vm_lCI%hVD#Kb3@|V<^XRGIi zY*S13aU;?^jr*C4p>*A9fOHmc&bT+q(rQ?0pPFzj$W1pGl-MG~u%nv7|7+ylO z0k-{v5z_6PHs<6W*I-}_;OcdYw7|^3iOIFY`$2Fq!=0t}&JH0q@9Yp_^Ue+@!0(yel4{?M5!}uDS}jQn%70X=ZEH=V z4zd~9D{4%iHquUd%rz51#c>X(7KAv_eAZyjiytE8(MVUdIknm?a-jL)4kaNIXB>)LH!5xFHGwenDf10wO@hZu%`) zG&>R*v(uWb4U~%K=S7a%RJwXnof zK7H2M)?N0(wBUrYXp%@Ka?CkqXanA58Bz$*IZ!%}gYtK<4yg5Br2UX|U7wdotp|5x zw>#5|7<-}0&**JUJcN|tVA}ufH?bqyV&||KaSbCF#6#y4`=NC*rK{%_@`fI!vTtC~ zpq{=2qo!{YD?`j|(e&w;knI@^4`-{TO+qqX{R;;wP6eNXhG>k{~D(5wiDs-8C0?@ffqpC!foL? z?k%D_3gyGTA@st>C;@}xVH!miHRX-=^ha`! z@E4!~4jInZGI4$OJq!zginx9=QVu-9G$o{d?%q88Fq|J8oW-#&aC{tkBS+N0`1fq} z+57ry_77I56b}(yY+{0o@Sd$H@quX*S*WaQ0=%KsBb4ew6x=A>l+;RaILwLTcZ-(n zH99(xl@a@*(bm1%c(@hD@byy*Kp{JA&HQxJ;10xgA%>ief+XFMX|S1ksfKBXR}|Ul zP-J^>XJzEoW`;bJmA{$*cOrMP(16KPJ&TuAV;!V&m{f$0cJl?z&v^NG`1lY@b^cOJ z8~kfYF5&r7FlLH(H8NYGoy@?uS&CrZ*S~+*yhUz1*;YiKB@6N!8IMOyJ{n=$BM-)< zXU|{3q&V;5AQ_{bj~oBQjs2h2_tbMn3Bq_HlC?1Qp|$# zGIZj5B=~MbPVi97QLGRUsm_WP_?Ka0lTm!&w}Aq@9==I!?JVgn{Cb(Y!)w zM|b8RVAL0^CzoqH8&4Cl({SwC9y24+cDO+ZF{)Uyx62lmX3ws(hp8SMxW`JR;4e%E zlNw|!@eI@m#JR;JZE{Q!TRJDMFo@V&#=BrxIrdfoFmBqjUDS6DFIsvG@dY)P!0X{& zQs{3@RXPX-t~b+-a4Qm`aW~g!2`;qnw49mKE+*sI)kSY#*CSyjN;guJ#Qqu_Y`4N4 z?ZThsa>p8hbH6&BL%E#7pGiOBTA$pBFrnF0A27G-Xc=xYdS^#i?OkUQENH&~nd3OcVHb@CG zj*EmD$Kr!wpvMkVpgSlI#E67rL65{#h7YoEAkrxM5=Ep%PJCm<(~7p{rb(V)f>5TX zh(QWdX@iOt-Si2Zj=H7^19iZ{rz!dCUwb<{=@HxQtGl0|>SJkc7xJ>bQsM9?=T^u( z*dG5>>D%dhS%7f`0mz507I}o3sVvdG6}Fw~YEIKLDvO|>{Id8z0uG^(7XYwD};_fuGPzh$NK?b(DGA~xq3*ZE@Jm1@9c z&Qji$*nxP5BT5Udplqe`1m)qnG!?Zm~^1(@G9}IAO-38j+E-6bsg34v<3|O=k^%Pe4s_g`(BGe{&DyB6W+EDVQ8a}jh zaDN-#V#i~b#K(qt=Fo)1)YMD4A84^)Ccr^b=M>_*c7c+#e<_xnolSv;5G|Y*MrL8o zM8HVf+K8jZLV1rm>wqNN=Q1*dSU{4mL*I6*iIyf>zr(2A|b2 z52^(UyJ*3bdR)VhGm}lPUaxHWY6~~j`55bO zv}>=+VkUGToU&O{jrI~CG$l&QwkYCq0d38GekjHd>*oCMJDw5UWu`XgU#Z2 zSfK3blw?C^-a`~TbAGgZYg{4e4zl?``XTWI)64v|`>)=-xs$^F_50fo_q`AIcOPHh z_cmo8MA7UU^q2Q<->{{d5Xt$A@v5Sx#JpI8f&33f=O?0EMrX^*HcJGG_IX*cq$$Vh%EtuM%m z_K!*BK378u;=_eTE*++d;7TJA2OTIH)Z@?RuQms57XZXD8?2Ap>9m zw9g}cW?BK}TrmV3t%OD(D^h@qZG>HH9X2{)Rm}i$sHOV#&eX?A;Kit;2jfWyZu-1?&kjE z-K{RNI&jMA@GpAf6@lD#cX2a&nwvXzBUZyyNOZwHavc(XZ;$q5y%>zTs2egJBx$P& zZ^^FqWuy2TSrKTe?KOs1VFaq1ng`SG0eyHKP{%RGMVY#H*i!e7Kl-Chf$n0bH}u$a zv?=t%#|hs6nU4z5B=dmOFqJ_L*+b4x4g26AD}LMqGaQ-I?t%WluF{qCl7^=Bpsa-$E%}OwTJrjYd%&o;(?AyI8_8ascn^3phVLXoEP^X#Hur@BlXDx zI`M9h4{QCBX)TdwnA~Ttykd$dXG*2U8bQ`vU7(=eS(PJhKd7+tL|+=m$KJ+>v;P-J z&;G48_ zm;ghHIj+pw5WL_o;1ll|l$w}cV@@zVRHs@YjZmZ6(LM?<+*%FkEq#X`6nbzwGtm;9 z3=@RzCFE|`44uIu*}l413eQ z6_?wT+=DfSGgQ?N&I8z!4P^U}g2^>!IfV^%Xly0a!Z9@+SnN}bvyzs^y5|C4No5|y zkav_|tzXtrf{a5KR%_(UNGz3I7g!&vkB@*IxP+FjWKCFpC67D}C;S()-DFzLINj`{ z+hb{kzl}N}NhqXKy^M*aVQ{0~qO1(@bwcze9I3-rgEkN#Bg?pDkqvhv` z^C^KEV2ZX~A`E193EYRvRLPc0)?Kp(oCnwX|FierVRlv3!~Y?n_uk7Tv z?9=WY;QRCauf4YO(x5eywXKs4^(zCdI`EShQKK4bHKIU! zRxMI}{c2;PJ61+rC|5@%LM^`bOTC#x#Ui)nCNpY_Tj_~Xv&p?TUPTxhm?Jl@GbZQ9 zMSBtXrZR^xXdaWLJ{PM6>ALIA#_?XSG(j?KHaB7M!!r-=l;Lw}*+^NPN91Q@T-P$s zBCBwjfAR*>>Y7!AWju>33RKxV+c&?=5LJy6rVl&E4E3&_knZY0dAuwG_*lYK3s<#{ zWUk4+bVXQHy)>wKf!QY6FW(&cLLc_|Qt|9*Ekin^`Y5x+nkOG*k)5Y!+d9wp+@t=N zma2G=_Vy%y)E6_;#>b~c1}fq+HP8By)W{#G-1Jwv;k=h2le|x8JgP>X>sTCb}-0Ns-SzYiL$iof~f0 zEDMgTz2``}$OHY-BN>Ri;Q0xTNw)8$dZ8usx@5^8qO9<4X07+H<5;V*ds}6n&(u3c z6}k)M3+tQeB{i3~B@1bM0BAO8$q5VVj>}eRx-o`pP4Z5MrTdKLe0N$pUQUG_Q)+3) z%4`28nYgGP!KzMaR@?g}%~iQ9PMq_3Q8Ul#wMsA^B=esO!cf;I#}!R{;-@0VN>`|v z@uEJlj-Ir3mTc20&ZSdnnhdiPO(nBUK%_p3?S&v-j>QnMRo#+X8(Pq%kv`k0c39f* z-mdxD+S{uo4@q2^;F@e{bvnp29HK8YuMfTbd3z|8<>QFKVBQrpda1NxW@W4eFx-GV zS!5DH_U2Rx*2zrkRFh#A-HMVo6l+YVHd8?sJ*@0)fS>GhszH?+Q|X^3qnEBdFQ3vwGCg>imIHPbf@IU$@&ozmQrB3>oa{GYi-GlX0ln;@Wi!i2~!;=mEtp>@rjc9#=+hOR4X=> z;(Np>$;ytH$mwPHbHD$w4@??>IEJEqwxTVEt6 z3#sDP(I!6Rav9ZE#d4|}U&$b;B~>X`k7EyHDTF)Y)LDt3FtQpZESx((GyscD`Gi3h zS@!cyPqH&s!P0p_eSZH3>trUl}>K_jhSWGd_t|W0jeG zgm<+2jkd4ww!m6l*e#v@uIiB62iY6x(>RZQk}=wc8f+2GK%HAZCu%kpOi9U3#f*iy z$kMMBrE$36KxPJ8#EpPh__>BpmNdA^S2N(O@FIk?&$xGcN#)+!CPK5D*syerp2HOx(Wzk&AKv(r9ratu!KjH`E zOGYPKEEV5Z(zxG`=6-h)+w2yA!EZ;4$S!Hz85+zp7@^!ADyP}o1V&}>s z)lggkoZd~=>HD1LfV%39yi4Gy{bxAZ+ahY~K6P|#Wy}U=q6-%HpIv==irauGlHDUY zGa8(uB7`+lxNcVbqH5LPyKdHkI?XzZ_Xhe~-5hEp+f~9&!@$BscQ1b2vbKJ2Z#&|% zW7H>S!w6d+?w1lqosUNA0nSe?kyX8wtvYf4F@vqTBWgtqUn)wHKATiNsy&R^q{K%? zZfY!U%4J9FEH^TWx|VK`CDm5Uh9_xlqVBO`)+XjHOUGC#YZJMIenxc-APbG#o5doi zUAI(|R;Xvz;OrU)s|Ec}DLDQVJHws8emSz&Fg4tJi=JzddQOKV*0<;sJNHFyY^%pi zbUDiDqcI29*&3&5X_=(D(5ofFe0J^|OgXoRlti|V56jBkZ=Y4%vT|uiO4T!i18c6NZI>y_;{7bT{!-;t z8xiPXyS=4_Osy-k>X&V{I2sx++p-aHf7BN{B$;5Kxzm|Oy5WDNIa~Dz@kuMcWq7wJ z*HFCq-dQxWm5gMsZsR{OBa7El5(SK3TkhfLHC3!CS*%j@_@)*-tDi#av> zXLpJv^-9^vYhmfw^86KDOO}=8BJrs$HQE~Nb>#yEUeym4hDBctH(u6l$keFj(3%=N zWm9o`Da;jOv746+E8F(Um0X+RYjDZF(s-IKO?78gw+*v8(G`+df3TQy9l{}5wiWHP zmE0Lrr`~OpD#@D9PnzP1AS>A3J~~w_v?CM-#ZrX@cNt3zw5u*3J2jHj9sNTc_CMv! z>?p$7#EMvCl;p}Yt374uncc;;-Z5QeG}GD~&K4GmPV-{cP_4OWJI4xZC=0Z^YB$v{ z?9MxjY#D>-#$rz6>7G@rLh@=F5`HM1 zp)Pq9i%i>bT}N74565;~_lL~vKepp~%yUYys^^q=1baQN0L*nuiI8%J<5wvbp~6;z z>^0m6)c%_)l)QzCU&|(|qpgNVd80eJC7UEM-WCOZx0q6CO{~`4>Myjrb-voSX`59U z!RiTdgf}D$*XOs3g+oKVOgg&H=JI^FPp9me=_|hYgp_UO^Imq~D5#GS?YFeb(t5dA zyX>kHzmU#sEt#mDy{2P)`I^>=ai?&uIOWt#w3&@stINnsZS01+23q85nBO|L7<}UC zu8uO>2sKNK#Szn9jbuS;-Xt3aNu8zot4>kC%5Fs|)s-k3sdjx2+45}kg}jl2%gbh? zVrx&W{+mSIElX1?g2_2*N!eQL%ec&fWZ%qJ6|#0CtOuxB5M`tOS9@Fb&eJC$DP3Le z8t!xT}^lWwT^pDI?a+>3%Ny(;uvqVr31 z(LxIZ*F)3i)`tz~N%~dnaprVSaZjTOB6E+u18#U| zKP_#o4$%Uy#;I|DiWC~*+A{CKdpka~`Lq(XxcSd`u zOc2ZIRl_Z-YeQ|@QMs}kmT5Nwm+;(_NC_#Mg?C9TA0^7_7#mg9#D!rN-4%T`)R3vW zaNQxDwN#*;kZ$_Y{maU5J58Han{H2SXprz$K3SxyH?HV9r0*;d>_qjSVRjI12+^Kt z6r&Q0jQ@>_S!NwjwJ+$6kFQjuIGgv6n8S_O=T8T@N{&xVrEMcs&6E0>-G-zI1wia_ z7Fu=Y!6|qB@<}h*1D>F6NZdm8La6_=0`07nq<=1@SLQXf%+Qk(r9&)+KWK-{iYal9 zUB(sZ-htN6E@{YQIC_}O3X74uA0W%VF>VWDi>+;jHMP1@o0S#C*vg8EFy9k)zAsWW z1-)d#>>Eo?eGfxJacz*&w!{*&{>zgze4bv`BBZk|5RxgKu3 zsZQ#NblG)GPh_jG<(!n7$aez<+og*T4kk>ZoWvX%i9)|$dO@N?665?K?Ze8pvGy66 z{6dxKCA)&_u1ZlfZKEqa;kXo~C!N*2_Eue^B3U z=eiY}PB^BmBIE8lt44^@($6!p4l)!iJ=3*+L&YG?S}G}GT30wlOuQ!-s|l({Kwmgt zY-6M@lmEi;zN-;jc8!AVxox>=^Z4TB-OESIL$kY^TctZ9PKTPiX7$<{Ry`!oB&O72 z4LmTvMJBJhrEQS0qOJ$8HM@iGzg+vwLSvz=je5c__LDou-C2kOKT{}$8yM>1AoKHW z`lFSrS4^x*t)KBmf77+xCr>w%zw|NJ&%=B;rh;{8(BIZ4{w-o_OX3OS11)*k_sr~ei8SX$1#vK*^6T9%&akEHwxGY-=phzpcXE}385}t4FljFOX1P{R zvyOHmm3G)NlxBEcE9+KnG3^k^7AGvkrt1oI8C7*%^hVrJ#7)wPN2co953}F5ZV4v; z-W_gwFlMr%-`cd89d}q` znt$|gQw;eU9I)GHEFBAr4V81`WIyByb-;#~LGuqV*c!GVksMwk>NJu$+!eGT(A4)v z1G*?DQI({^TqcM$+PO)0Cv$FaeS2bgBX4;lt*4HT+SAG~*!zvER8XaZOc$xiWBpe?4?Get{iah$_IIUZ#1sRqcpq;jBL7V^dgyOMSis%>wn2^(4ayDY;L zqAnq^=8XOGSdil-yR6I`X^|0s>rz|jhAOTB^FL*dh+tG4PRExI?d^SwD)tRhu+7v9 zKQh+D=m2nGXUyb5J0Rvfv{P0xSf=ougGedut7umNX~vJjETuS<6U$AtM6k=4qYwQM zrVkbq4d=Tfl)}%Ud9QVDn^T{--!3JjuQ#A0ss&7uM%xTJXP$X&>FSg z^SiTZO*`FA6%ATylh>g&?S1{_#S2Q~2e_TFhvll)LP+mZE~zb&uGE*+WAa@32<}4S z{*|p@WH>INlFj9JpJXhl2Ss%-U7m5@t7dmy|vT9`%%dVDJ7`3tqp_lB+)@JF{xL5;5!%eI3 zF$iN8+7=S{nxTInswL#NUCGXIlOLj+sM1P>VfJ8}U9F}zPu$eh$+N0P2@7Gku|>6e zxw=T3W_6^Q_7B$~o_^d}p&~HpK+YmWcM?6fwy&|7E>Y1*x1(1omtN~RN!P0w=qHd$ zM|x=;=7NvkmO46=GLL=jQXYD{MFls1nVJ@vuE{zEKYG>4@ z8lfJ|$ZeU)LY(n~bwb2g*FGK3$O8Bt1=l7SF6gRo7C`%2Opdf3nv*_=CmeD)?%0tRx6S|$kNlg!G6tcH8n|W z#jRCg&SOQ@&a4kgWr=3%8o3-`YJZoL-MS9(Y9`S$HKOlIblbvpAZfGvu(I-tfaWlP5wc?}*gw;{?<3U{K!>BLn+H}}n6dlb~ zTZ@pACP`~Kw0*vdmHLitlJoxk%Y4yi6FbF z^q;jHsaBvy|1%3K_e1*5KFDS{%=>50AZAsGIH8fRXmVCh+Gh_iw zyKLdpDf>&>Ccf405WB8ZIG9QC|L~LnaoG1>PkG09;rqU0ENkB1%X6xQ^t(P=ES=nF z)K8;D`I4%H8q%iUte5YXhgWkt-Ums+bwfZbHJZbN* zv^=qE1hTW5bYXjD$tp5kn`X5|>X`K3B=ei4qIsHZ7<1o<5ouLTR2XIt6Iuysb&y$N^cA~W+%`Kl zG3~1K#C}Bis)jeoD3Y48u+u!9MJ5529q>uxxU}~stjYIuSVjQ*FiKSfXm*SX^a^<6@aSv}#MNvE5`tSgTdlZ&IyQ`Xcl_ zrG$q<*N!uImCYXHS!CBZ`8tFBb{k3H*yyFApjU+Hqq>!Fa;b0)r!`SSgQ5*-EhcOU zt%RhPyhRnA+Zs$}tRzW9T^TMIc3M+W5LWqOVVEUjteE>1)vjdc+}hl>*12Y7ENcJVex=r?}V#uuOP~Yd4%}2u?xBRwe(btV!!Mhk=RA8yz2p5C6$ zo(0kilUlvAM?JbM=*wp&3+wF7+lX5}%&x?aSiG>Utg_rz+e-XJ%3_O{3dWU0)B1};Gu&{*a?tFs-VPty$dMh7dQSB@Bi34w$TL=?6x7u~&wJo&qyHMJ0w)}Rk zUnIkbR$ayn^9TC6E&oKKJ+oQF>4dQP6o|KZRusImfkgdmJumqLQmZk6>zyrBcOa?- zROj<81zp>O+bslp650Dr>O;|O%GMJT6DyYtubwCm4b{}FD2*Ij9-WaXjW1cetUOwi zQ$qzAIqNV;cefr;jc8&EO^#V_-dNCu*pSIO?^zNmHC-5j1Y-P%@$6^?bzO-*gT z~qUTuip(K3Pv(MNVBAF+uY(KYL~jFSyu(qZ=SwpTU7 zM0@Y}0ef}zGSb%H=zOZWmvY5Mi&KAjRe7Sb)pm6$$+{V-x>lEM*2Up#+^;1=(qp34whD7JKk_A^&IUX983BTGXrf_!^pQv4=_M0nqo4izXfE?u7 zJ9U)T+|#^JKFuPU!1y88m2@*`Oo|}bRjjik-J>3HfY2B(5H;2hk|Dd(P8MSOE$WfT zcrrPLcVW@nIaBR?Smxt{xiHM4i*1N0kaR;&QCCP}$qaz5T@QCKw;VhmW8aPe>CMVX zZm!%FT{Tgd-KKsV(h2X)-d$+)XslPs``V2;8`r@OONH46MNTcPA@#d@Ocu%RVYL{p zdvgi3S~4VhAnXwEx8o%~w(8a_W9V2wXAxOl%!=8h!*7kqaw!`-xQ?)2^2?dFB-eFy z!u4!%Eenrn+l*S*&R2lVGSRN~`8}Nk|nzx!6aCe z1Bs?M8D?*)$u3ot_zaZ)3RY|*F}k1|3*~Vo;RjFx!Xqh1ce>eLn{hs(n&@#Q4eEqOhU}I=M|7b)1!J6Z> z7M(61pn0G>bNur0(!`SSa;9e5@UbfEj4lA z;lI9OF?Ge_e|^Qe)D`Rg>nql$u2?Tu)cS%C)sRrwkW*#+`VJ%1cqA*7T257U(%jNN z&sD9VWJS)Z9h(*D7|gm#h&hsM*b7$OQdQ4NtO}!gv?{?hBe8AFBl8**sS*}G8M{;E zsr0FRY>+_d(1KnGj$nATh~_m{=Rc0OVrXf&8fgB%aXL|79pPOsH^!xT6|<9 zorF|T_R!u__MC-@4)kPgp{$S-Z#>TGCputPP_@0f1`|KQ?XBX)Q$|#_>P&16b*x#j z>eC;OGP4+3$cSF|vv*lb2YOZ~hy_xge3N9e7Y}jQkXFlWt}3e+2HLf=Dl2JRriyR9 zI%L5zbc}^t@w8d{q^+n}dBkl+#oMqvqIfPmaiZKjGGdP@>ql@QBmTmr)0>UE5YI2j zOBTm!M-s?c?1)0LQ%43mKRU3WRkn}RqLi2IY0ZXMEUe=;#G1)v(T7^RYg1a0J1WC1 zIl?s-YF5M|i)0E`i(#i~RU`dG>Bi}QoD>;-C4<8=T&-o}wWtE~YjczH9HQjb&XRbG zFaw5a6C|1>QY^GoNYPfugNcrU1!$(!)j@7Wo!Ext8|T|@4X!N7?6#cN*)HRD=e3^g zs=K;+duGL!c;vhSuYZx-D^#D3;Ss7m3$Z7%Ws9H%~Blgi$Yy)c* zrBIl_=Xcqo>bQ>Hf|>QZ*$iugY`b~!pemzp*~Y0o(oTl!_QM5zvZ%|HDv9E%U0bJ+ zPX@bzu5(t~pL1$zFGUGQSBGg9n|IUCt-Gv=e*yUbnHt?X+dd*~bWBZBY1rN!`aqS( zk2_V&<%@&8xxDU5tBXwZFWm4~3-pjqAyjV>FJnIpH=4?hstn! z7hk+uyF<-9lg9Cos4Td_0Q)l{L?4s|ef}fqz}$U2r~Ans?uw2(o zl-u05Yr4caRTWQDxx}^`zIT_`8Gom))^UM(5OO{EE_(3(U|`#cc8eeU?tY*1bLtyX zN|`L$lET$8aG1-6+J|z!Fhn!i)jO-BQ*EZgUeTmMQtQfmh>Y8-^~+NsI;R~QQREX{ zy>ys;k)Xw_uFQs_ePin@GHoxr^&~}$ zF=Rcjq49EQ)r2$;@&1>~2(F6q`2fjI)jBb*pwWZcgFqcy5o{?Sg}kM=S5_d%EXiT+ zP204R9GIVaOi7Lif7 z>^v)8_4@|;>_N3_*U`}y&XrJQ#byJl_R!p#_-qzeE>+`jXVH|Z!E9%DlS_POJ=-L? zO!J3kvPsrBRtuK1tjxq0M^>r2q!U;rhAXwMyytNjqWsuc3!n5C#Za_kmLz@5dtN50VygwaN-@0zRkoBK>}+N;-Q;806TD-5d(h~v zmVnxOjy+UdnK7BOb9bI}1^mpU8)&0JMX+?#FDIRI-OypEUv{<|l1en3Lu~PrwXTbU zvcY!)?R+bCc!;c2m`0QJqOYz<|G3shpTlj7A;n&2&C&-{hwpL)4?`jMl0A)^xDsDS zK0j!QaSc=yWNGZGi%`>>{7$LB*a_hzgB%kZMC~kw4!1=M?KdvUIaq~7R?#`?R)o!=j z(y4B>K5dutILXLiQG+It{PoQ&5%qz*9r#hz}v)aXMOT*R8^JmY+kVcH|x|?O|cQqDJJ&{RKer34<-2pFIxNDo$ zjx=kgrLoSFZjIucC(F=3?xN8gD!XImq%rDBh30UfnlRB_N>0t2KE?NF(27=9qK1L? z6-?QwyJ(x9GU;&M3Nw9DUzmM2-eqBR9b;*4t7XmJ$u!Dtdu?a`B&EY;4BxZzrfh1u zL=B)lE*lBPhUJMMd)Ba-70;^ixwH6jvX;29mo%02?V_pDb?h?E%}Msvk+i85XiMU= z8#0d82tB(0!I134>KCHx?lU=a(dBz_GT@VKwxWtw%2J|p9j|0nL7do7!ZgNuh7QVI zzlOD|u}NtbI3=p?OmstA;*td;9o=u4<#`sjZt!D>XS#_q!b{OCuBF=UQ(b>o-jjiEr4|*3u=j z@&lcs%aQMwua)h4i^ckEu_<3ClaYm7d1kKO=`5lZC2m+9lX+hmLr7((en9#cYMWIf zYelE+w{luWewYrkrA@k6)*p+TZ^?%mibCwc^pM+YyAa=ayI|8Kt_pQspB(GdbD@JJ zH{sw-pS%?NBG$^eG3&s>IdtLWlh|=d_h#AbQ>>~xI%n0`A?prkOxOF6R?g>3E!Q1l zl<6n1y|3rW{i-#lt{;)ulh0zeyN#Q5Ra^wgdw0iui!$9& z(AQqhz%!v03+o+bWkcl#-Sf(D%RpAKG0IHOu&5&4rVBC}E0m(g2<<3PIE9s{d%nc- zGuIr2P8KsM*)B?@B6@ZE6t3(`#91}EB-f5vhd>r)Ni8bcZ(ZvXoy1|yWwBFzJH%{z z)xH3edE$2>ELG}1QWTuB19HNIQVU!x$fCPf!FV$3+b9&6w)#spgo`!5VFy861o<>q z&4hg-nUru#=fZ}Tkw7}sZf$9zRz2mvQ%LscWwpE+gT{OG>G_SQ49h!KKf!M4 z8y=ZMlkGoc#?L9gofzc}SE0n35o_GlMz2GS^yEBD_Dr<%q)ybHrWvOX%0A}e>ql2@ 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 YqJT`K*nCx`?v9I*KWLrenqcGp0Xu;q^Z)<= diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.d b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.d deleted file mode 100644 index ef843f2..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.d +++ /dev/null @@ -1,89 +0,0 @@ -Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.o: \ - ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.c \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h \ - ../Core/Inc/stm32f1xx_hal_conf.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h \ - ../Drivers/CMSIS/Include/core_cm3.h \ - ../Drivers/CMSIS/Include/cmsis_version.h \ - ../Drivers/CMSIS/Include/cmsis_compiler.h \ - ../Drivers/CMSIS/Include/cmsis_gcc.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: - -../Core/Inc/stm32f1xx_hal_conf.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h: - -../Drivers/CMSIS/Include/core_cm3.h: - -../Drivers/CMSIS/Include/cmsis_version.h: - -../Drivers/CMSIS/Include/cmsis_compiler.h: - -../Drivers/CMSIS/Include/cmsis_gcc.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.o deleted file mode 100644 index 014001ca35ed7ae9426d5c460f0af4cfae225048..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 772296 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互o@mu&&olQ|7IR`5?< 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 F{{yaD=Nte4 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.su b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.su deleted file mode 100644 index 5cab5c4..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.su +++ /dev/null @@ -1,27 +0,0 @@ -stm32f1xx_hal_adc.c:421:19:HAL_ADC_Init 32 static -stm32f1xx_hal_adc.c:639:19:HAL_ADC_DeInit 24 static -stm32f1xx_hal_adc.c:787:13:HAL_ADC_MspInit 16 static -stm32f1xx_hal_adc.c:801:13:HAL_ADC_MspDeInit 16 static -stm32f1xx_hal_adc.c:1046:19:HAL_ADC_Start 24 static -stm32f1xx_hal_adc.c:1159:19:HAL_ADC_Stop 24 static -stm32f1xx_hal_adc.c:1203:19:HAL_ADC_PollForConversion 40 static -stm32f1xx_hal_adc.c:1342:19:HAL_ADC_PollForEvent 32 static -stm32f1xx_hal_adc.c:1395:19:HAL_ADC_Start_IT 24 static -stm32f1xx_hal_adc.c:1506:19:HAL_ADC_Stop_IT 24 static -stm32f1xx_hal_adc.c:1563:19:HAL_ADC_Start_DMA 32 static -stm32f1xx_hal_adc.c:1704:19:HAL_ADC_Stop_DMA 24 static -stm32f1xx_hal_adc.c:1772:10:HAL_ADC_GetValue 16 static -stm32f1xx_hal_adc.c:1789:6:HAL_ADC_IRQHandler 16 static -stm32f1xx_hal_adc.c:1916:13:HAL_ADC_ConvCpltCallback 16 static -stm32f1xx_hal_adc.c:1930:13:HAL_ADC_ConvHalfCpltCallback 16 static -stm32f1xx_hal_adc.c:1944:13:HAL_ADC_LevelOutOfWindowCallback 16 static -stm32f1xx_hal_adc.c:1959:13:HAL_ADC_ErrorCallback 16 static -stm32f1xx_hal_adc.c:2007:19:HAL_ADC_ConfigChannel 24 static -stm32f1xx_hal_adc.c:2117:19:HAL_ADC_AnalogWDGConfig 16 static -stm32f1xx_hal_adc.c:2204:10:HAL_ADC_GetState 16 static -stm32f1xx_hal_adc.c:2215:10:HAL_ADC_GetError 16 static -stm32f1xx_hal_adc.c:2239:19:ADC_Enable 24 static -stm32f1xx_hal_adc.c:2298:19:ADC_ConversionStop_Disable 24 static -stm32f1xx_hal_adc.c:2340:6:ADC_DMAConvCplt 24 static -stm32f1xx_hal_adc.c:2387:6:ADC_DMAHalfConvCplt 24 static -stm32f1xx_hal_adc.c:2405:6:ADC_DMAError 24 static diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.d b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.d deleted file mode 100644 index bd38e65..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.d +++ /dev/null @@ -1,89 +0,0 @@ -Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.o: \ - ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.c \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h \ - ../Core/Inc/stm32f1xx_hal_conf.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h \ - ../Drivers/CMSIS/Include/core_cm3.h \ - ../Drivers/CMSIS/Include/cmsis_version.h \ - ../Drivers/CMSIS/Include/cmsis_compiler.h \ - ../Drivers/CMSIS/Include/cmsis_gcc.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: - -../Core/Inc/stm32f1xx_hal_conf.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h: - -../Drivers/CMSIS/Include/core_cm3.h: - -../Drivers/CMSIS/Include/cmsis_version.h: - -../Drivers/CMSIS/Include/cmsis_compiler.h: - -../Drivers/CMSIS/Include/cmsis_gcc.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.o deleted file mode 100644 index d628d86fe097a80bf9cc424f3d5d460b32604a5b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 765996 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%0DDW-E4N5BBFUj^z~2=0dLEI&S42 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 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o deleted file mode 100644 index 8a55f760b527e3c94c932669264f8f8591621027..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 762980 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 cv1zg58+{o?R%ftNdwMdX) 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
  • iom5xyqO7nXsl%!gkhVg}^cR=X&L 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

    *>6{*|7fU;+``n@0 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

    d_Xne>**ky6eD3b-)i#9?cKxr!>9W< zw=gUXWEzK;>}ul~Ot@xIDXFi|kwszTvF@d(gZGe3N9Wr#)C~3|oo%WtL|+BsaSP_G z*J7_KBTz>B`5eZex%o%jJ<Jf=cszkB) zrT%hMY4oQpGC5fIPA9JK>N2B}*%^fIe#M^W;8nHE3fhw?!7Pm#{ONuR0*b509 z3}B5%&+brB>h8_$H-81oWiDU!D_KkV6mBYPXlC`XvSU_l>~#F?^%~CwP!^#QhVO)D zc{Y7TyR20N9<9DM0Y`>CSWPbR%xuWraT^3v3#-zPM6bL)1W*c5-nJ}sRTP`FZYsVt zO#5fS7Nt439RY!33Pq}=K0ToW0hK86f4G$qTy95%#_OU=6Y%Ye;Ly_u4rQpcI2;Tq zi)2y`U4jN%1NfU-<1UrP??s<3eUf{i>@{-y^#*$6rtDCpXC-cWT*Y2DVS1(xq3HsH z=3>?`O()5R%7%SHrFg_lBz6E171%f&Y*8SIWvP0l;nnnH#N+r6Qh|>`o-5|$7c&dS zz*UwQC2F`rl@-NgnG%?XngI`$sRK*&jYB^yNq}&bcbB;Q>t8&ARY}0TKOk#%Z||#I zD;iy->~4~7RC5DJkETwO6$(Sc&qb5BXM|FW!-J3zns0jb9OmaMPXqm(H$LdPG5ysj zJ&pfaYU%I1C(%~vtL4kuJt=kCJ=-uvhOyeUYYi4KUNMi5#pS%>9rTA2>9#~$PfL3* z%lUl0aao5rU&wiEqPNeK(^Am;`up*_`>%f;efV_u;MS&hKVTbq*|rFu{Lh^6EO9a4 zNw<2M+wI{mzn9XSZ{L5s#joo-!i-zrk)FGbEbPX;{f+$`p>55U`bdWC-v9Q7Mlp>@KVI$)A|MC-LIK;0AY z%jt^RM)o-1U6$YU4_S{(A+XFs?5=Im1-6RbAj9+Zb^wcQFl7u8i?eT%jHe)aDnpD! z3*_~dJcX$HCY@^lwLl1%Q)UtCb)u{q2wtyH223i7cojO|L@T`yUZ)_QUJ=Wn5BpX+`NF0r7|Y{fj3Kc!OOorM!Hv1Uh^FKGBwr&A$4ej zTN={NDNBaoP0e;f&OwF!Tg3V$&K6wAJ3I!Fwh$CZfH?3{+@$eAHo0E9el?Uq2!+`> zqf|RQ7hI)et35feS5cdKmNU#wK;c1o#nM+#Q7GuU>1?_XcL?zwHT=;-JUAGhtlSm8 z1{6s%3$~$oyWBhFFGDF191jkmHQ63`c5m++OEQg12+iI0zUi?KmaJ;B!9W*Ztk8t; z5@&S`uGBLaGb3QN>zsn0e|+~Jx9Av#K9vPit}J=B;Cz31cV@`gxS7EenZ7QC3aa-1 zq4`x@t}u09lG3x%2kI|J41$PMf$T-hm0^}J)WD+D$`*_4#IW5geBsHX5Wl`wUb=rj z3qC1T8O1)3uxvpi_7`|5cONSXAz6ZN#Ei7zVd1m`7~aD|Xrx zYDDO2^%5D?+V>MM|G>^$#RW|gg)Qc61<_JRNk*=Ma_J)9v2{WR{sa2h+eEl6zhb>A zGVL>x*M2!cD%wg(0}PO}q0XPmw?c?)WeXJmeJ7h^ATWunp#A(N2&e3hs5qm}hf~6| zrZvk}`FdJbVU z1~9*)^Rb>@*ay0u5jw3dtly0PJ0~i!(bQ&kb-lQ@{@&zET|m>LLQYENt1dZ7=MCB; z!@s};_K|9Ix&8hh54Ue98uDcr920>(J7(oC@&sD@A|L3B#JnQg%=2rN6V1g*^;>tu zt5p^eqhBl+$}EIhjVO0m1p5?>t_iYN2zP6zY?p!B9da)UQHtUfFH0k#jZTJ(r-d{@ zE)ZU#zS%=cFOheGNDY{SN3dd|A1(S%%-utSM$qZcIf*pae%9SI%|mr__ES92LqQnH zXy#d8Mz_^wFkVn5uChKtvE)SK668y6rq1w8_(&_r?}eX_%&4W2G$2ntDrLhuzbGqs z1h?tSgI@l7d*BPm9Uv~2n1R(Z%NEQ#R_wnO2F9O6?5b7Hfg7TmQFeh9Ap@LIhqA@0 zF9R{hC@2VnAS!*rh^%nuQxx?r2fh}+zWMR>eIXs1s^Jvf2b#*?Mvd`i;oTaRiC-xm zK}=@K4bNV7(WpCMInFp9=HR+y-9Trkv=6~*1fL#`!qj}*9C@=DUDX}AIcH-WtFti{ zTjwJW(+p`f7mV&H%N!;FOOX6=9#YXX1M7e$n5Nqa<9(3ug<3}4w1afNoe)-25HD2} zG^2=V@=NsugO}tE!Cz&lWKHjeO?ubwxf=_&Pz@501t`#IMR*yj#f#}Z>0zjB`2O`c z=VEzw=4g)Q(bpvPg@r0O9Z>UeQFpP@y2yeJnWUyL4e_PLj!T0x*P0XM>j5Bb=8BdVo-zqpM-G8c}q!)0X2bk00Z%K$+u`mPU|sp=rUpQm9%n zAs;C-{})bWFdt}oKfb=ZyM525K@wo6wjN(1aLKa z1xzi2rg$Vh2+Rr`cnsKyS&dRKW5=;fu=JG_pl4U7&y5C<1n?-J3dw<0Aqh;9u_C2` z6>#0jwEDHF^>!<+`vr_Qg+Mb7;*JgK zgxdxcx!N!=@^kn4G@IE+xnSWr!ERi$1;Ar(P*?54{nmrgM<4Efc=tE1mNvjc(%gm> zBP}&M&5u~%P4#EtLmQq9$76e>bM&fVh=)#RVQ_rDK@F&SyzS$Sa6m!FcdkPh*dFVW zelv7PtB_#Y*#=W?F=^n&6O?U~BMXJUiSN1+&!as)vYlN=ON&w+1?shCq^GeuMgr?7^JCfh@A=Z`fpgVygF4GzlM| z0LS^lt+ZeK8{|>_zMmk&YZU3*U-%SMR{y9#+Zp<0`o$rPS&)x54y%X1&_^|=eeQD&NG79b38hM@pe5Zx5*=Z2I{Q%!PmJOcHo$lq$jb z)%|PuF0}QPcCP?wa_AXD)TW=)L&ZQGW*TznCpY3_pxGfEhVI9+Kz&%S z1x6}WUD)>Cf4KV_%1yX^0=bUmnYOt8=Bp=?qIVZBOnzW<=%k_EJw8W4{2{USnR{d# zW_aRgVj)M@=D0Qfx&NpA>s9WDpwFJ%Kvqi$?Y^+7#C|zNFDX70E<0f=1zZ@}^iDfh zvU>u4$<3g&l{HCTvq-CENYv*eq6S|#1EQ+)l}_RLY61Ucsdn=iD$i)L7`e`^;kOv$ zlu~4#g~K`gKdHHi)d?wF_gW=Hp^w&U*HWzaXF5>qdA- zT)7>=zr(iG_sV>cp~@H(wb+P1B%H*+q$$STQ#7#{A6S`C%Nt4_uN8-|2^EI(I7f&P z4cJ8`yz;UiIrG5m5cCsJH@2tYMG#Q07vg{Y?v1N?PYtzXVk=%;+Z`a?T-J+1LOVab?ceeqNLsFstEG^-R5}N^$>T>x_7|rQ7p59EY zA-T4T>_(y=JLDADjPx2_-5aFCW@1cUoA$+--gYs2&{Ny znr;J%V`aIW;zW(^>cGPxkI8O@7V!YdWEmVZL$i>(ibQjUsKy`d<1yJHN31Iks8+Sw zOc?UzrcKAPbHCkT=_T*2V3<#pqtqdabI=5dTrSq58ERc1E?p9V+9j3t4=LXR^SSTP z89?~qnH%Zc|izwt*raSXdu*##XAC7$irE-wgNSnb8<*XAZX?5vi+#CrE6 z`}#=Mb%TXVkuumYwuR>~i3{vbwuhpl?7J;RD*f$>R5f!OdeGyuqU_bsgdWyGfgVko7Wp~N|NGnOp`Q1h4m$493$X}qehBB-K~jHxmzBKV%a zWO;;!9)dA2@-4~bXa_-P13|#KwRQrcE)=u_TsT*L1rsY`fMaYEbpgWI4H%x{ zsdf3Azakt5-Ii<)Lvt`iGtdOcXF%UYjCr~x4x}yDkycaAjkF_R{Z{YZ^K(gT5Rl4n zLpt87ZsCUc-LY#4rnTeqrXZ)Q?~t9TXDLE030jdh2npTyReHC{`WGhfAtXwSSdj`a zC^PB+(NNk$ch#ARwJAkppx&iKW@o|*FwLD2qkRENIgh_Ux`=81rKZ-))i|3ZHQ&cV zJ6O=+ygXfvE|3DhU@v8^?*N{+tnnKQEckjS+`rx(9TC88BAoah<0WS53Z8YjnNy6=Bz-m)FyX zx#r(muzV{EA1-#d0%-?K)TBc)H3@Q@a(TRCf__-j;mVa+Q)rSFqV5{Xo1`UVR(*#c zY22k3;c!L-5dbaxjFE5u3%THub*Hu0op6zM#&jBaKl}Uj&+wkg&P6BTZ}oNKqGfH< zWTdSu?M2}N_tDyclKnfv|2z)Wypuf3v=V>kHJEHO&;fspxGav=EbRv_C~kTBK|8}Q#LEH#Cu!;huE z4qwCFGXsOk*BvEsi{nT!yJLp2QA^WaADE#mM*4mp8dHn5M$cSr3PNVK5jW#7VwVIs zcQD{RxZo|{p?5goSL98g52Nyjfj7W0NIixcA8llTuR$ck0peS3@{wGAk6Y33njI62 zKAG;T$UH0NB@{EUwmZ5a!Sp#m_QT2Q0}$~)yTScQM|Pk;Ki z@%_7BZtp+-TP=jy)qh*xzxlV14?hhDKlCA;{rLL*_V%}jcYk_gyc5Vdd1<*W1%D*N zAesuKhm-yBb!HS3VX1F3#}b;~cVH|bc}D!}{49&q$V%$u$DEcfCsRxg^B#|OaLp({dTn!8$ zx^C(HLQkZ-Ac<%}p;W|c^m@1|cXdXb$@M}s~&b{|D1k&0x3dVJU<2y+LAHIe!kqYU?`p2$8i0YXZ>5&p>LKq(_`F1lS&V&!>C39)6Sfi}i-ci}Lo{Xj{G9=Q^?D{Cnj9Va` zfQtj=ksc^dE@)mC(z#5^!s4E1xPCOnl2A}f+`Rv+^!OAiMGIz?@R6l6Sy4V(qW7!S z!B3aG3$C#(vsNK@rRL~xtk_K`HF?eEOh9K%F zV9>nu2T{2A&2vUPn-#sdlV4Q_hR^*TN44Yky81=G2OaPDJ+D4BqbdE~h-AD*A(aq? zGY8$L*B1T}a#Q=8>^^nR!U~BstK2$FWsoSYMw6=5R9w_cU~(T^T+=;U)=O8z9;|bd zhMC0eO8~278M1yzck{)|F#gaLt^G9(ZbxXW-AdA#*FLF&$4Mf+5E`%&0Y@paTnIs) zsHITPt^5~&_$6LI3S&{+8S4{k%5}Cp}of z0f}8NFHaXYt6pQASJMrY{!_fO7&6upM@0nIT529|t}!%#CnM=8yAayiVOV!E`&TC#~B0aC*#c zCM=&=TwGmWS%~e#QWN?nk;X`mlrSJ~3=z-ryKF~NIGBeUG+BfrDoyH^x*W6})`_9& zDn{T1C3og~gV9dM*UR|?$8mq3(Hj)1Jdlf((z0=A)JIuky$8>P#o5B6H$Ff0pj#W{ zRdbYZ^N?x)L?IAzOH&idG9XXO3Lmtiw<^8GS@h(@o_(;7^km{t_&c3L-=*sn)ZKhMCz= zVM;h&;K~E@)cQbAl9~!ll@?!ZS=4+eD(&bxF^a+#th>;BuIPlaKN^*HhY;OU=>?neTp94!;H`72;fH=D$>mr!GG|lX9xR7 zherp8CkOq(!O`KtExO_!%xw{^MtEVD4k|G|LxJ>;04AYMXrG_uoUq(W}6XrDve zDPjqE#XNucGK#t7ifV|RfdcSfrDO09a-QgyRP!Ll7&`BV-WVL$MOB~t(&-nEz@JbcLQ=ip0an3W=d1Cj^|y5?KS`Z7#h* z6e%j8Rwh|^+oe%eCI#dwD&_O|TVYg}tdYL0@<_cr#$lt3pvw|XTq#s(#g^4hOvJRt zn2@*2oKJ-%PU~XQWT(IppnMAtC+n0a5=_%=ao}0z@uS(v&qn2^FTnPU_1ao$6d96; zPqk}Rf@BIK>tLaySvs&>c0lVavr=%Eu9>O&==+1MJUJR~zzrpA1{s|x7t(_a@rcX+&oq8gfu zRvsYN;2BEpr_^+a$RYMoaeVq22}+xbVMqbglEJ1nw|MaA#pIH4vb8i;UGJ8Gc}JaI zl_j3ELlH{c-0KEVH%i=*g(HUDjMG5&T=IeSg!p=9%%-?ttL34LB^k;a#|k(&`kB9u zD~CH1K?{ew@))_?$|XAvb`Y>=?bi()iDr0c#<3P z*6X3L(j3WRm{2dW=?Hs;@rr_+7Q#eMD35k1^H6uujoqak?)@~>jH??Y=Pp;X#cH;B zrEq=({lQvb|AV<%w{RDu^UxUS2Es^>oT#&qj1HAu~$!&w(nC6HCU!BObXvY&nBn!h>eY#tI`1SUF{NdL-DIWr+Xp9mp zHtxRvq18oj=RX3h^;BcLK_mQKkgkXbHX15T;VZ_%77AQAGNubz`s(^0cW-{Yhv@Ym zuOHZBcJ~x)FH?n74krSkfvc?kSN@OPo{O1b9xi4&R-3KDk=h4(OG`SZBWiIqf5l4$ zg=qk_n_3Xhd@KX)jcQV(G7eS<(ocJzPs2fBVsn7P+K+O`dWvl>`Xy8&y|$N-d^9pz zRV3Rp9Fc@Lovy^N0_byj{#Ze3{qXwX)5q=b#i!Tz5AXy}KfQmi!zrLVqyUnRPgbzd z&2t~m}Up~CYL3)4Nd-DM`uFb^&uCYO5%c6}vM_LdrSL#T5Svi~Ont%iK%DEthoM4iqE30{LXliQX@qzbw+>%!pklWSd}S2GbgJ zG-9CpxFDo@a=3zrt2gfvK>>6x(T}xPX1eGGTPS zk+9Pp*KJWtfa$wT@L(vhmjl7o=xEDm&glff3&`S{0afAEqy{XcdUTwM&MMtMwA*bmQDD;CHvYTMnJR<|{kS`E3#(Y|wz-Yvca zQlDB_mil-TrXPeEqUq7e2XHnzV2?Okt<3n1Dp&0zwY;9vW;`PD+i)I?cw&23mp5U% zq_MhGI17%h%k<{Km)BvtZct)BZ*Ev>0QH?&iQt`EF#(kxu_JJI(g@tuWAH)i>E;nf zNI-3SayWqH`%t1P;{3IO9*h&hc^V2mvc*v4EeaM{aVCt|xgC;3XxYYp{i_yn$p-XE=}hK>dc$=0GxIyD68 zK3d+CAV!T*k<=+)tcHg}1gweet&o8)Ha~0R4hGL|T*A7_NL|@jiLj0;> zdP$?J;P{9bg}E*}*=?*_=A*P29l%One|QtB+Y0+b=x$2%4WNEt2J)1pS#_?>LD@)a zv$fTiSbRZ62(_jZa1gBJwsA=riaBE8A2SLE(Le_dDn%$F#sXsz$m48>q&-dW*c_W^ zT-oTb$3FX@STFc2(T3$}*|}T^sE_B@0N+1wmz(-XYz>AroqSyH-d@+O$xg*+Rndg!U)&QTfZ-LG8(HJ{G2SIZsI8BNfW z?bYNZ`_>{KM;(DLs2i6k5Wz|wOkujCcFRPy!V%?oD;?9txq)e%GRZwz(%2+th!ejX zwD`!hu=FEk`g?AhNats!u6&XaSN)sLpxb93nV6O|`}^@SNCKdpy6OR)ginPB-JN~~#PP zv%zny?eUNc-e@k5Kn<3FZ;X%{q}XPF0slVckW+ zP^a)=n@_^7@R>5;Wdz#M$2(Xc6h^dAL>5)^f^KDLR3Ugzmv|o*(T3D~3d`HYB@Brp zty&Qr>j;wE-=(z~Nj%?`e3Hj?(qN-o0U9dhu?Lx?c{)h75PuvHi2|HI)6B1h?x~FkV@z>CZO@6aJUKvTOdQWvdb#RKvV2`^W>aq+ z2t`pNuD=nO7m!@mFOKVgAsvW-=pD6mUW*!9(n^L!{Gnphyx^ZsUk^TA*+C4xf(-|ClfVopJmA_VveyA&SUv-`@W4?(X(&NRH+Qa^=AXT3MG(cd-CTrxj30 zUD|0S{94#Mmp*~?Rhjb;Nh$#maIk(u>Xf$($|zHpWZpn^(@|4#5zDKXELr`QO?h01 zU=DTyYG+WC}=-`t_ylS-{Al`3x9Z*(vy2hg&_ z|AK9}A;`jJdWL|>_ zbOmkuupV=CVq)hTOGx^T4e-kUEx#G|=g$pGj2(OIh7a^Ij^xaRbcrvFvlT>d!z&6? zLf%)SeT}f&fO0jbzBYqG@{I=a3SbC%PgGLp)ubVRM;}zkz>fo=m z!cm206H)5`Wq-hdL=d9@Pv^)zRVG0N0)H5>04BU-+?<$ZzwEpQ`6#gvlzQLbuwvWm?}2RbFU^>}jADD60r`&-)9Tajhj;{vK% z3WuZqV^flC0QCbcU5eeBtSUK>uf#aJc1*`s^_O&-ys6&?iaGCq^mMSoz?FQ@=&J%ryDUsl;Eb;cr9Ey?`F zjgt1}sT;&zHl3mf*36u$VfndU!X{GXu(`+#vQ#;~7lT?S%kX88TkCCInrv0|F*jLv zmB9on9$sYTHBHcw!$)3h$|~2*12#+=&12!N-pqnP(rUS2T!HfQ&8+5Xs1NKIv|Jd7 z5O5Qkq#rIPjr@>|V~71wB}7j$q2_R#)K8LOBTyNnnXIdWbPzUQMEFG%+&enRmIS1# zmbtt5RT-yZI8;~?Ew}*$2j$`GEcXhchZ}Fp6+oIx*oNz8T3OeMx{JqVpngC;rpR>n zaZnzP)Zw5n)H!^MO#z|IXihXnsgoujRLoIiCWG`KU32$B^J8k5eLs$ERp0noW{MBX>P=Vh|%?jFs)PLfdV*gU_pA@=q;Jaok{yE==QGo%O?qpI^TI`|b75Blf^x z%!9;9Rlc;ks}>IofSS|Nb#64X(V3RHc#&rObnh$XujF~nzOzu%**s(T!w)#+#E*Er zlWkfGwX!tap`qhU1q6en8csK%Y10*P3gOJ7JJ=LPpJkD#HDF-;H8BbAai7K$WX!vw z%9Cm;iY3g1?G(ldp{&7tOZIe0mNuU)u!Rz$da_s(%a9}b16lfOYUdLa{S&A3Dk5d& z+hU3lMzg{+xu6b7fV3cBRhI~fJ{ygd#F>YMM5H%lays63Tb8^t^@KLOnw1`zS*lp2 zqsEMWJ5suTQYz{o-R6dOY9=0JntJ5h+PYg>4Ka_pFHdBzeF=mMu}QG&vc}&Y!UG0o zw<}VIA>j?tPx^Wuv3BmTOTLJbf;&&JhL`>WBio(9$^p`fCxM`CjRn>pkMJV+pQ)*m z2vFm{ptZt)j_Zl@pv8`Szs)dZ`)#&EkPrhvV{FsxCP-Y^q~*m_=n#X115+>U zRk}zjPJ2ix2mDU;1}cbNlhIu(p7ry|8m8{eqQ6gr(Y{-Z)XX*&$z*~_G6;&m!m|Sr zAk~fGap>>Uk9~n)06bc+uAqSS<>0ndrgJD_$tz4VGlhzZHtmw!6`(qPlruT$#K3iw z(Ae2%kv{<$h1M^s2<>i2(yKtCLTzaPeG}rj6ak?#WKvT;*n+W`)5ljNqh!6|87hs@ zeIh#Nj)em_KzU;GP^d^v0_w%{O@1>Vzh|mYyFUuQ%qdOe5_pe~>a{ zSUFrl2_^<3vtJ@2i^Zib88u3gP*q?()R2X@Heca_1&Xg-nU_D&uV}T9Air0<%jCKrsf0P%?;D0AR$o{3F-WJF2f%G z(Ydid+)%yb1Pjk*5l=T*@0x-mHf0p|XQpY2E0(5j6!s*2vD^OK10JJ-RB-pdg}Al# zGv$BV`S5yAZpe>OTF=#Z0~^a2O+g*o+)~CTXP8ip6lo0u3Jbdwf2UhTEQ7HN4{XTL zIE#*Xvg!p*RV7*N8;h=HCW0@6BkK3CaQ;FpTty7X<{;p#VY@0-BC!b%t%>g*`u|K- zsAlNvlSZ>&Xf*pW2U%SKD6hc4(PmZGC{YQrsFKp#vghi}>-T?7f1$7d%|tROU5%HB zPuR5Um@xkoIy3E<_|q^Rr_>zpf6jGKcHIC4{o=_;_O##gRblpjS~p%5#`)fP@Pd*V z7!0CJ`Wf6@H?xITK+G{BQA9k7_x}-n3ynuma-A-2W~dpiEpA37bqB_T`r?iozOzM> zPCU*(RknAtU^BB=Uy@+j!;tkL^+?!D4W=momKTM!Azs1=&K5W|uYj3FP6vT>bHmyZ zqM=b8$CY!Ut~KryKP^@E51;Pe+*-n*9aIlgO+re^#}Z6W(wF&h>I}3g5o7f2qcVb0fOR7 zdKfkc)HtY2y#4KQqDa$;>%7iuzF;QwnVbIh z5W0>|_VOB0yR3;1<#nV~DlQ^hF2S*Fl>sKp^^CPrw-gKH&0d9vz!KCBt0PiU(5NoO zPt5we1j?r3u8VdcA^=C*N#iR%tC<9HU{gK5&2va&RPY|#sBXnI^2c3BBu`S=B`R`y zwy`P%FRqsmAU5C8_?p-T_(h}}L5(?ERoTpZWAC%)VF8q<_&+QliaDX@p8K^>1;-ZEH4CR{WOWp3JOHmg9s5f5a8gqP?)4cpb?C8^P7wV3buea1irKeS|*|9+qo%96mY(kvJFHacJ0baY{7`bY<-TCR8=kS zWkI78Zn*VmT?UaHM7wDlNSDRzE|-bf5pPAWBQ&>DQ_4Wyh}szuBSN}Rqv?9NBxe~1 z)lgt=Far6I-KjM&2}*P)7ss`9a?>$r@KMl|8vxn5k0+DCcpg3FQ~}EE+4N$1bs5E; z(2+;y+P!?uZ>eGW6rLvfk=dWnPZQ;W22bj%fJI0Bic)Gr|2Y;+e{37OCp(*h+2(wuKqK84Oe=K?HY`r3ZLG+e*fWb(|7NY`n~m5)YSyLR!*}I0gtpWt5Kp5K|0;xtya&3uI?qouY;?pH4d+d-LjA{lpN=|n8w3W1S&!f$_P}e+PTaA!2?sljH(RrCb^7O zjPw#Z(mK&+NUQ3wB_x=>E7L;L?+c4p@e=~MDj9i6n`~IG;X7@u=Dj8yt5`g#V2+^u_#FONeJqGj}k+>z=omTuBWNiO0q~W z;hkGuCg<#APxR4${=&mkS5=wMQIlmJW~Y={5;7M~67Gkvt`wB+p@E5+mzsEj=^eyU zWK=vb_F{hu39&_h@)NDwD#!Crom z*aM0#Bu$X%+z7$SFG}-*knr}yKYQgs|3kWgmx6&^$c92dK8otf zZ_)5*7~ z8Aa7xtOs39OUwuL&Bqr6C1zDcbV2=ShUPk^-+_PQ#Yw%&u&M*#$L^>q6xxfRsygbP zOJJtjTG-t+OM8z;mt}WAGv%}?wHHpwrFT#UG0Kud4lsK?bd}$}{(kZ^O8mMCyV3lGFNE;eEorr2 zR80q;i3A*YBp~-0_8rfYRIsa+lq?O$gA*?^**iery75cYt-HRmCKPmx-B7ehQSg4A zcg-qDl$qwLhP4n9dA1{-Eei88g4N{knkpSt=cVGS@EwY`C!0f3)$4-XTmVM*o1*T* zSI+l|o|sJi0diR!9ILQRHp`+W8%KgCZ^N%X?p3{ll2M)pPQODmCLJ~=-fz3P>Mw^hA>6>Q?h zb*WkMd8Yl{OMh);O9kIwPPqP&!sJF#*~Pnrg!CL3+Tg-fC(7Q+3kF3nOw zG*_C^ft1Jgd54@+f$W96`G-d|#7N7cZ3@0#Bsu6s8C)>CbUno)4GxTg>{Q-Qks@1g zoBaIAr6&m3>Bkd8MHE(P9pkBPM9Uv3rn(uC69?s+IX~s7J+|?SA+?Vr~Nt`>HY;)4dw-sHwRN zKK#t@4?Y7w{0#i)Gw|cjz)wB{fA$%8|FaADxfSexZVCIJTf_e67P0@iRqTIm8T(jA zkMD^@7ptbAQyG^mu?5cU>Z)rCl>J~mOeKQ*e>#44eDrMCA0C_>4Tk;0q)s?K z2!>94J2VWsV>bWz`F4E!1GEkUNEeV7ef(lOGevJ7nC0!2VM=bZpcbq|Fq9rI(9M!i z1*cWvY%$##$8IpKSds{oB_w57e*uV11Ywq#0tS9Mh0$wqHJzRB`3MQ@kZ;VA6^RVF zT_b<@&0m>$mU=k;0rB3to$}El{~ZEVn(;4Wq}!wH=6{w5YPW%6X1yR`_HtX!r?B29 z9i~G%b634dbRH@YMHricsRW%2)C#$kLjmf1`pOXA>0%3BNYUK*)lQ4m=9fNasNQ2fRJh#7eI$-n|L(Ms7HZDE+c=za}MqVJ<@| zxnw4=$0*?@D~Dkpa<~$TfxVDwgsUAOEfa!J_Z6TjT9Zb)sZk$y1qwcO_lXWxyp$y{ zyD5M)g=jW~(F{ctMD+b{-80F`Xu23?`A~IaH#}RtD5ASL((fc0!W)aLFP=I3!kP3FP`e$RxE+sng=-+L zxLyp>POWCxNaQSzZ6{+SxWoxo=DL0T_8-x&s>1zh#`yKa>olvJ_I2*^3>)Ix4`|o^ z{kw-`43PD^lZ_h#4kFFtezkzrX0k!)?w}iHm4&7+tL#M95a?(rUY?D?=Vzy*=je?> zV*ot;h^=WBnJVlK&^;U*)zL~d#t?j1Gm%6S18n$%H)Jq2ow>=v)sQ6&K)qXlPz=4R zMjC1Z$QtmZ>Ud(H)7iXkw=

    ^`v8zc6;iEj3$fIt0b7dMVE{wb$5JDFikh4z}*8)~`PalRbOm{@#X3CSKJw8A28@>+4b zCRDc!aibXyUHq1frIz`B`XY+2V2 zw=~ZS&n4W{EONN$ofB-@Z&TfTVuOJczpjQ(dVsSx_R?r)k-<2~q3BVWmB| z`<#{^IS&xPo)7@vcnZ&qTf6_aY#=Hd6bmE%| zeg^AoYtM+o44{5Ov~c_L7A?36Tfv?Y^e6z)>LfSlVUdc%3_-9O34OpPyR>Pu{_ooU>@CRT3kr`pnd%VjR|Auk*FyGcshS&cYmMIbS3y-5gK58fvXK}0x z8Xt$=^=Q!z6mydlnfD5Y+*u*@R_Y8@fQ<0NUqg=(}f_eLpldn!Gh(T%K zltcd}hK!WS_Ri-!om-znBB-%;GvkKJ0LJV5i<*dhyVn#P^6vZ!0@U93l+>B4DP7{OK6-Z zm&MXApMK>|P4932k7bu=qZWvzFPN0+0{Avux16P$4Fr=7+M*x`gR6`XZQw||(lZR6 zC<0yF%J?0X4y*<(cnl&A=0zM?Pp;OuH}2LW*6DTZ+7s6Op-*pv4!URz$=R+~ShYF3 z&KdSI2R>o*Pmn|tE7O2NCGLT)d*D}Cq)pBQ;z;MjEeMg=$}AJSR!(eH+KIc|42$|M z-Ni_^A-(X-hzRQ_jJakv9fUR4hv|n?uN>#Wr7;p*(v$OX77)9fjAz%Ey*-zz!Xk@c zI^ow~f4dd!X!p|W+9OEq*Qaw>no~M3`A1yqQ!)`HG+*ZeUvHF8RYUnhycZ#e&W*9vOGB)M0rzV zmN%EX8%)(8{36-$cR3Wp1yI6mM}+bNYFQ@Ost*m#o?LTmaj*DWd!N)EmE*6~nc$li zK&+*4#nQu7L~XSerP(EbjMPA%o8|rO$2S`mr70=);3}$}i-2RO*Abmsg0lAu<7SvP zt$S<@=*tU4R)7Vc+~0q=4==6;NSMAO8;2q?hxR!GL4GyDLFU7Zx<-Y4#A>DhXXgAG z;k6pHf(aK=VTq%nu*8uBVR+AhW=bUo+kqaD2rZULQe}kyiV&itpl?ygIJw@7rA8NH ztxc0hA?{Mej3WIfbd3fpE2ilaxEysa5$4E1hEGfKzy4Qm=Oo=?yM2BC6AXZTVtr@A z`SHc7l70MBff4jg&NkEC2~k~OH35A)UxF9eS0L%#_OFKNg$*<9>O2_x9c0-?X-?X&<5~(m;Fsq%<;I;T1XKrU*`O;uuJ+=?Rz@#ZBVLJ`)Iq zdwD5uXd-#KrTlkFCs>vkZk z!R^E9x9Pj-2bJ!?6=Vpn<63q2c!IN6Ug7w5N$aL)RaBEjJ9-i9lA&dUSdJoO)iR7a zS1dqU1Jm{)KU*D_EKl3mkxPpK4U$@PJ3zPt+MuX*%2={RiUdTh^;x)_a8XFdKu>gh zNAH8mqEW+q--vrIRk1JGK=n5(bA1cCzeT%2x7hQZWfjoEfKq{qr}4e@C>AhaLrL~a zn5@wB%^%BG!lYCS%_e`id$_%OSl#kpba6M*W6qU-*U+(svM7rOGz$nsS9-NRr?jaLHs%A?fe~^7V4Kum*n?~b)uyqnQQ9W2 zruucl^{^ndr5MHMdimTziC5JEHC^QmU~$TbX~KgllB81jkfzjQ2v$<~ zn73rVQJ_jK^+6`CFTg!_2t-evKubxrp#Gh3F?71iLGUIl1yoZivh)(F@6rNAEqyPa zDcM&5OO7b~8q#c(lz_SbUdmjU*H2#feNKH_=ZJjBC##p`Z2)=4Nfr|(& zd(I`R#y|+A2&my>n1kQ9;VtiIUfY54}w} z2a&gX2L0v3ySE(aN63o&#l%eUNzznooQ?{7F~{Ob#zD)=_M&Fds0g;sVzdKl(uxK! z6E-&kb$XQ&Ow&b$%>f?W3}U1O!uzL&15nM?6x6l?B>=6|4p=Yy4e(3pPeCEEf1gwl zay6u2E8J+*oMG7o{)r@86vpYg=uPdO?bf&n(w%9o^NPUyfI@^UA)1N}0C}Q00Tn7! z%`aDC8bJNP>~?1;?n;qWqTI>8il|=CU9x7S8MJJlcHPdJvKdtOqhP~C(d4yjyYvd6 zeI7V578!-q;3Bs0ffyw+0yS>{uT4SGbqq|PP0bNFMY>qdcwNfw)gTC8e}AgO@CBtV ze-FJ#1ukI`+p|afzm&Q}Wb@;tFO80}X>+A}TcHFx3yZYoIr_x(;8i2r;4da9^ZL); z{q4i2`#W7^6WvrF;hzi}X#KkQF=tv(Ij|A@)oenHvORR85dYpDK9N6uxtcAgPM)t8 z=<67|Jq{T(0U{-h*r>O4(7^5rl+atH?#7$*t;*t~m7Vlr&P@=_mHLOXiwxK@wzary zw}fHPT6|yKZ9Z@>`pU+_gs^ z=(g#YQ+G!M6FwTIL|QwOW&^gv5&=0`4uvnBzM54>ZyWN0-5_BSTq1Qls$_IDl4!2I z85+wR9zG+nTh1rn^_U!jw4)(d6DlQbdq>8D+!E6n*qLD3HV=%qB*sd~m%0F(R|#^> z6ar2WqF|waY#dKj8I_YZm*x)xHrcAd7SG7oT;Z3t(E=?8H^VZ08=V{b&Pz?J_HbB7 zAUO+MzFjet1>&YjyFT*$vIsReO<>ov?V`<9yiz9pXDuvv1}q4Q6pp z{Qoik_>F@ES|m zhit^ChUMv~PAmo*<;Y?v?0_`}S>Nis-fI81MD8feI7qh_`NIMj z8O%9cHU>r_2EZ5IYY{c+yxuv%bW@#Ur4PdXWrz7NLTzjNp^x+(x>1<5jT**CaEeP% zrkBvC-QsfwFJt@aVvQ5GLh*aZ|NMWvlCils*66sofdI_w^up`8zM?yvcUpY+-c>Sg zQzH+-7{N`|yuL*a*W~pv!;xFWaxoa%#yCpEgzwZ0O0iEdxk}a-o1U9fC0lo}KmMWw zYyYxw5sVo&uG-ROj$fJLy1?2ieSBo(AjGqjBb%`NNFI5*`S@R~c2i_EhjVj|ejZyZ zifz7Sl-q=Es)w->GyG=^!m|HJlZrnfSEX6_3isxsL{m-birv{!6xro@fIvgQO9)MEAB^s z1zU>4m&ie5p59i7VG);k(+V~bAWgOs#p=!$eugZQ61z(f^*Q@LP2-v0LRuAr}ID&JxQnZO!Ux2&;!Tp!j_1ykdN+A$#U7|poYpTVg6z${8^ zY1t3)7J?Au*V@EHK_{&2I~)Yv6GW4NXOk6Ho~B-uCmsx7^gUn5-c*8EDJwxuM)oo+ zrGuq~m=H})%hv@}q80)CnW1cQr%YYM4-w6b z!xqR#vo3h*Vt!5Tt52&hVJ;j=yKU#?<7vf#N%wAiXPmvi`2_wM^9;jC>zR ziiF&~j7UWZj>Tntl1Ncq-!1GMwh0Ukw#Y)u=4dI43=|huxUsxbKT0s60Njee$6fLS zU=0(J-QV5R1=n?CR78Ad1c&jrD(1!T+AhK9!%&OTZEYqk>B zqP6}jrd^I3H08;(2#vED>RC5E7-B_hKdYRiKVI7*7J^a1KC&o=#GH_2JmR%R%aNII zHh0z!TJV<$v^VlwAGhkpUADB<7s;VQia0E^X$ZMoiE4}@)wLV%NZ-3IQ7IRXV-IA> z&T^c@S+SrXvKjzP9yc+tq>5NZ1wj^BykzJG^|FX~ed!zO#jM_(JO(oyEoOELpSMb4 zlBKsMVPIM-BiY7|7VU6SbVR`?GkI2-MeS(A>LO}e>$cyC#?$J;Zt3)CMf)2*$lfS0 z!k2lqI$38g25+vR5;K2SS!#wEQy8%A*c+zrHGQ5~;86cqkThcEq*A;O$e!VCtvayO zIV7CgD(6&$P>VOP7Q!iN_L)lv~gjJrJ!NtOOKvgz7Yee>Tmyx);z08?t%VFwN?-3(< zK)z&nvc*#Iw|BLO>>)4x(BIhJA{JSut*z3uhRY3R<-5hUEDVoYqD0C?rot6WR}?aq z8(g`e+K4JpllzA{eVHV&rDD-WIT^$-vaL?kzU}IA*JTZ@E<~3qjwoB&^%S?`Pbj-b za^@v0-a@b!(waoqd&`(^e7kt)jENQ_XuxGrYG+5in}K9;o5=Avos(nTv*27gZdqHu zx3|3T*)i-xvvq;FH1bR9!p=gq_1GpRmW-<2$5vvvKg|EC?uA+mvk~7}4N8(en^Zok zeT!IhL`O1iGAU}}WJl~QHh5y z6gMK(VIuMVU~)EDn@?kCl+gQ-6l}7t@Pr;zOQK# zY&nj1jvF~*SF$>S2?gl}7HcG2;`wf)r8L`D*0{v>Qh32~DWXkvMSF)nC~Q2ig^F87 zIdjNJjYn5qs=Q)7cs*>lx3rLnX=S-M{+cjWJn_sZ*eVL~57ZtxB$=SIw%M5sy5ag@ zW3b{8qLV&;lj!lH6hmR=dsE@eP&|^ox{cSw2&-sys!tycl1J4sv^JC0ff6;rTBgq`$VH-4Lu&HW)#l0vinpR4EC>s~7=Es- z+fY)f8b8ZM_-v-)_EL~5#F8~58CG_CwQOp+lp0*JuQZ;f15=$>(G9GuPIQGNvY}+o z?cUYdEvuNqJ)hzmO6p{_)Dv!moEb93GtnR`*xqh9Q7m-K9t1^Fg+*v3u1q1>>pQiN z)Eyn&P4<^^W|jxRY}}w&WR&nY;8_c$4b52uYwnX*maR0zT zwnP?achzpHU+kQ*PHP}V-bm~yGHOf_d^xYncCQi!+clj6H{#nbI#DtxFp{vY&X5vO zta=IpNv(tpt}h^A?Or@Wm_!r(q`KzN;9J{VP~rg+f%X8_X$Y2&$&_ULfEW_1<6}PQ zlqtHVPW?xUJ)>^;U=4!S!_BQFrK4@Xg5Z#C;yAj*rlYmEhpwk3Wr}$ciAJ#3^9sE5 zcqtK5&TvvHwT)OJ+ceLbK2SDxLDP)c3+e}EI0f>cQw}Hz zw_Q<_WEq*M1zUGZXPsOP<5uTJf-Er7)nSqWWK0~7BZjknBj=H-c9yMeq)t9g}(aPGiOTAD6-L{#?@73zZu*5 zsWRs#jrIhodCVX$x}+@(vh<4d;exsRSQjolYVW8SNb-d#^*dz8OfRcaU*r@WP`@Bt z?%{H^CaliT*!+#od&>{^O@q~wMWeWf)O3=m#IPLZIvWKngfhw*U#2~AECj}qo}ta*xRkb*FauAj;`B$;4E9=*9lpq-Fx8*L~;|mXU2kk#cA3*OheJ-S!XM?xBBjI3%j#{g49a1 zGXs(#s}x_Es8oAtx>}-0h{W&*?U0!X#m=$IINQXw&idvSX~|@~I#s55#fIFEpk<2_ zw_C2o)<(nHT3y*}n%DZVIqRajXBrgd-V(1hMW^tBF#E=mQ-8Eba){RSw#jkVU^T{m|9ua-&(*#1BaYqm`BG zw_^XTirvO&Peuk!8m(35fV*XFNasL)pdil1wd)%gDb>r4(z@NO^TFUYp0rC#o^xH` zXj}c;i+<#sgdWNF1G*Zej}VMDOro4by#I*Huny_vh>}Tc->nxcJDggp%xo6APA}ON zn0QAW=}J#9a78OhZ#ARcRo7~HON{m@fode?oHZJ5pG}h^wq!z%IxFIc5vXYcbXAF; zZ5l#hKoq;MwR&|OY7~qyA%eY~*Mz1^qkCqJ^4`^2>r90m4I5b^hN;0Y*^R$lFMdjl(pbegyc`45O6hu%dTOtJ-4mXter7!_W0R-h3>KAYwM*uBA$9`TgJ56;!iy! z&m^|WVs6_xu})^U#!D3-gGn)lUv62{$rD)u|%MqU>D&AjCQmMc(4P6d<_n`^mASl8p=%}qeEvgk8*yH?1wz7j@@w5XG`q6>Vvi< zlP%M3|+KeK?x$^pKlwIS;bFWwBh6v0Rc=X@^Jc zX~h`EyImWs%Sr}Cdl@xuDB~W?+2%=Q)ZJhjmcW!Zjpc7N$lgjVdv&E^XQQl-jSBWu z+Bqn;1EVHmXh!d{3i(2fORO1VlQ-73c*!m+6G~cC#9O)466(R+HC+CuOdb)8Zo?`6 zM2S%(>jz=>I@Yx45N~pG#CAbD9_D4UStbYd*#m8MsIB%@v#WSC!-rvZX%3}jp_Ayc z+-1y^Ml+fzipAE#IlBlXds|I&&1v=H8l2w5{dOrKeY{Rp$xV_@pyh7A5d>Z@Gbr6` z8MYNIX9pNbZN0xME7D;5AEMeSa@6jrZGbL4mnBdQbrZ!Ug>0i2b!j`Qr(ycsQ48v4 z&!07*Ti?j4!(i{5?gctx_Zx_64Lj1U#@0l%KJs+q_w? zYAu8GI^~j)r;x|iM@TN~7LTbsM7S|C8%hV)lGKuG@l>0!uW975MsHKsRa@86D32FB zk3N0kVMmtwOE_b^iMDHMbgCiTK~;v~5-QnTmN2zT#*+F^R0bpE86)rPQ^@J~cnw>E zDa$a?7m~U0!{O)d1JS;fsCy*u$ll2Ix2z zt8~s>%=%o`OBl7eF^bf;dfe9x9i3qcH?K+bGW)lo8;N^)LmoTk6M%XzHw&-8o(kE!aIqATL;aNDKOE^Nq0l- zt=p`}BwemtNAI?_99GFNr{w$#xflzFyml=9FvUUY90XU)*1y&7PhADzt;?Yavm zG$m7#YC|AK6>5Ogpqijo&BzTULxs5YdbSQ*tZwb|BG_|aJLBBD3~pjJb-Wajgn-jv$J5VttTB4!?S>wS6uJn7-fTWVcX5{Cr9Dl2Xxg z#X4!h!j7cX(AB$&?W@RyOsqg0RZJS$C@D7^Ih z44!F@1llQD3)YE`k1?WnwED@_s#1wXRb7L^wMG+jHnT`*ZXHt{TC@d+Y{+6AzraEy zP=x3`gCKhj=>cm=(D8h!{xRbz_d|NWKFExl%+FpE3|S@-@APw5mVbienMUyT>M@2|$P2Kx6rry48&=Cei8 z$&DWU3|N>|sSK#&Z05}R>Au0rkX2Q&7HQ&K)fEXOtH$hj+NAeTUy`nHI!jZrTj4j2 znCZomb!4a-8x+xQppPl}(3Jq`5eEulQ4N+RRmNW3qq|*aMCGF=>w=EjhPGDg)khDA zrSr&=ZFQe)v3+&RYh5dEHk#rb(d|}lMwRU<(nArIRkOKgKn^P6CfCu8D7W;!ItQo)ZBL<(Cp#O{DaN^?WKJdkLZC&^klZ>ADEXy4hH ze@Hj7rOs_tW40Eq`H1c5lPPMf6OSUPDc)Ypw^(Q4IK2eig4Z7X@Lr`57Re4fh zYLCBeYFDFHFySI;QdZX*dC8Q2tQ>t%}94SHOdKB`;oCiyB@r)h0p zcb6zi>Sg=*i2Y$u3;N}6x=tk+ShJg!r~o8MWE>qV4t9!E(G;=w2R4}@nK2IH)N5fst!RXW5b!nGaO=4`A)G0>L zG7)8u9vt+BG?M={U^DgM;x5I?trB|)1S>Go!kAKS$c^lpTc!KfD!z%;*_B4+iddGq zDke+Y2%A~`i&0j!|sd~X+Ifg?=eyK4YLVFx&T#;GUskC<(wg)S`df>r|7snqS;g> zof~|cw$hKbN2UM3iFg3SZA5A@sfpWC6utVka;rs4onP+O{JAoY`pyztAS`2 z(Tv|Fv+!C6Cv#Ig%sztGbL;lJdVZwQjRjd`*J5hRKzkSOfc_r)&5S6BeQR#rP^o;~ zOEJ^$-K%-gUdq=VI&qY&f#YF83DFJbx;lf%^z!vqKE$HhH)|K))G`YYBy@T{Mh5X_ zl5MS>_Y)Z%ivC;11`|8m$6NjhMSEs5e3jZ<3}(fIBiaN7-4P9lRmBktCD%$wgX*T- zi+j-20;(P~Ed^b}fafU$dlK2sOsYQ7Lds?e0|RrX_skzCba$7Q&dK-gQRo|0lAkes z+N?rfXusNsyexf@s%w71=9io; zkOavO>Hmr!dNrjER6N>j(&DRTU(?Za6Ec^fvrzGZn+y%ggtsh?sK#BzCmI*gyN;7( zS@tm-+rtCoAlJ01uejRQ+R5^1rqJ3&54oP5o9klw0>Q3gSZ_I$9t~txqOH zbFX2Pe5jE*5}G&0$Lbo}UL`0)+D*;`Wj;E#a+cN-W{Dxz8>TzbJt{>lAxSB^dR;Ca z?9y#HxKoCr>RH<5PnUtc?fKXSb)Aq*_;_d};h9eHwVM|$U4l|!);pmmM{7vE`R-7W z!VHe@+H_1!LHEcundRl})vy%6)s2_<*s4~uj3M=(%{sC`m_@H~kJlQJ6;C#0G9|7i^sV(%VBvde9PAcdDp#+KEE?|WXtE*poL;hI zx6gvnu8h@VO>sQT-c*xaswi=rCx5b5Y(p`;pc|TG7>9Vt!d=rR21wG8h%9dK3lxgf z`_@7-Gz^T)Es>MeISoXk_^LKfhvTWc-Sm|MeBKi7RIR*H_FX zu9*8@U$G)_#fty+6)O{0tduK8K2%jqe?m@`q3W*;Mx&9eP-;2Vee-JTIwrWPHIS^x zS+!#mB28W8t`cH;q&(;aYa3S75}JiuHpr#LbInL(XYSAt2EC?)1y9Cy9~mlrY9AXU zP&%}rSwjwUEx3oSoe0X^VEvHO z1G`Rzq>}XFWE`%Fzd?$rWRUpU6Bi`ib<+o0=g;hsb=rP!S!py!GI{ zDaDvIq07?5QH8$btE3|*4mqDqzGc!XU)s0mELz+qdc0*+Hpg7ZAuRLttF7CZXL z5%m|M?`cI|y;aSg)jxfjxp}aQW1i-!HE*k?na^^n+*tQ$u#BlyyWg;ZP;r#e(djB2 zRRm~RmJyQf)g2UMcJy{B;9i7fHwfW-x_OD>Ho8HWeLCu3ZA-J*yx`N{*}S-9b8izU zCcS7kw1VGWXKp>k>a@LH>*ityEw-<;J4FE+`E6m^>RIo4d)ozBMai}%xR<8QE;@<| z!tAwFBWkUL?O84^LgmxSu0f5y!%{Bmzr2S5YdLYH{38&*1>tQ~2m z6!ud19q_Zl{DnJNEPumXSTB#GkQcsjsO^xbKl)A;1A)@FnZbvvc(7lvXS4Mhw zL2chEHWW>wYjllHPDY=htF3S;2NvQwTj#>Vsg6KXX?In`xERnw}i zs63@Kb=@UdX^_lYgeV4E+Qu|Bt7%fukr^^bt|5g_(z{q!IuYWOfx#dk6LXPa#Xk~e zpGfy((LRf~n{Tu&S-fCn&Qv(kjW52qS1uS2izm-GSBQOTxhX}f>zTxs9b)1l_tef( zx9qGtZ$Mg(XqU<54Cx)H^0Fi**{NDdM)f0lP#b-;p@V`g1*Fv1wYBLiSXakX_ofZb zbXhg}7G!-2S9C4!$u7QW?G?oqO6cS0j7jJAll^@u7ts*AW#bg}y)K(u$RJoYEv*$D zPiMP5sP@L1ni_(s3VQpIVP4Trm0L7k?w5@hjl-QqQK^=t&Esoa;yW|b8p&mvKSD!| zLA{`2!E%-rqUh?u!4@7`AdAFs#n@E<85}No$v&sGA<}4z&ykG!9pP)Dtxks8`z7lv z83xI5Nm?t5xb%-LA1?{jk;Q^tEola6^1Xv;S$U)8TDED8KbAegug13r4ex3Rs2$!R zoZ=1T-rJogeFHx+=*GqrRJz{gl`Fxl(#^6e}b<-wGN& z7Nhz~D^E$Im6#4sW7xdhW^RH?BD)=Q#JEC63eqtf+zg4*dC*sks$TSM-1ZJqdFa$v z@_;JhUEbm)s4Bc<@8tHO5}!jpS82I(?OqsUU&>W8u7~Ed8^I;^XDXP&k*1)H4y(3;GT@#pJ*19qykxnak5@@~$=<~&TPhRkib%$moGVrU zaczcE4Vc$YaXaR^;K9~J74x;}YH^+)88S?%(j=09?W42lmJXM~ZbVR2QQ?Ck**)0r z^MB<>RSUj4^3pkOZy{r9G1+}foaI@|?L5Yr=;|n2#u+Rko;Y@#HI=RGz*+$MBwn&_6VYxZX4fv=icL%D7v1t3c=&`wGOh z%PfnPA$xQot64Ld64`AQ?W~)0EayrPy*+PCriMut;H)bHqq^usr4O=a4VrfGdm1%9 zjvgl?inDl0XIXSE3N2k+Ei+OSJ?tvs zAtLb&TN>&_Z6MpAipod6U#3j9tj*;r%X2lE3YmY*rVFFfl}@!0t{-t@`-sf@%0Nb{ zMs?27FqtJ8K%DAmb zwn2+Dzd?6G{Py@XSM`W}BI&To7qq#HcsD;8YPYsDQA3`_@#J4;)suBu(vJ!<@*U;3 z7@LKoh~zX#Scc^ti=SY(^bL2awmp)!&NAeX2cqIHOp&KyF62NI6E~J z?L4UywU=X^p)T3GTm0zgx`|@`u(#P-4B^F9iug(ig16e*w!m~{$bIdg5Ja1CA7pQn zEEay&F{9(RFpoyP&0uGr2(+t3bozq_rGZkPAS%bu-)Oez5{F2*G-S>=s-dGTFJ)LMTh~Okrd1Cd(S38QFW~I*Wb77`!f)*A4Rp>3VW^uV z495>vr@3*JmLlm-*Vku;-h@ko?4hkjVHv+PWARdv2;?h_Z=Wa=ebNNAc8OCi-D;va zBmZL=UxFMpp_h+gd-_bV`3g5yN|$GHmYdXZU}wv?V5O-le68f6Rzf+fWjN@+d?RPeDEb;J7?IJRo*4iq$W9@x zvJhea{pE>Xz&V$Dr;}N>Q>%Ji*Mk*Qu2cOu}tKUqERBR=?3X(uh#XV z20zHhI>z-K&|=Z-NhNc3 zNE?Drs?yQrWfdLv$2D%U`DnTHZPlf)HPsQ>9?KOHxxdWPC#(Hd#Bh}tT8%Ai1->a!Zsw(ryZ z-R0~t<|!gPtn>)A79UrRAnn?0+3&WwTj{EQhrVvlX-X#{aFA&y{+MH#eA zoT|RT7P>^&kNY;jl0P~MW?_>{3VljbFS|BT4ZrK9NtC566Wb;_r>jE;OTN>lc}$n~ zZ)NYzSdmYJ*>`s>THt=1E?OYlhifm)>YF}mnokp_e|POfvS$@(H0W2k{UgMFA!g+g z`G$H*GC10~cFW?V{3pFyL<(voj=h!6!f%f9s&6H27 zdr|tuu3{)5&EZgMp(eGL|H?Wk-CAC{FtQ$Lhypk`Q0F(**_^j$amJS7v|XB|+KNbH zX|8K*&4KI=QiQ#_EyouktVW81WS%cS6ODk14$gXm%E;~RNJ!2u{0o9 z4cTx;OQ6IJ)-Gmc7fG}AN(N|8m9Ru7Al}W2>#?*WgeigBh|vr7uJ%=#fX3dzOF?*K z<7r>_%ZNkU0yDVLkJdFln^Ct^rge~hquIWRqeC}`lVyP9l!qDmGMQj?rDQp4IK07y z7wrk0BDl(DYjSx**>#zW?!(E>4HG}dfw1L8irQ+9)aNja*!NN4CR7V zqN><)Pvh3ms?(pSZmpzrui4Z4Mq0;emM-fYGh=p7eunsIls=1|7su;~}xTj+}*j7UZ8$;Frnr_KpYFpbkR_v)HVQ4LM0zrnzGG4Fk6rag) zkq>2F&3|RKt!OxHh!l;cMk$usp4e}@raZg)92Q3kW5h5+d)2N5i5%1qo%Rc*hVV^V zDNgr;=|^X6kSW^h2*L)HXABM9*jKiSu%?F%cEU~E(1auc?P69A>vg3`eY%z14+GI< zu3*zMQ$gsyWmQfEQEW@Is#Lvf#Mw4pozZGpls#k`W&cL`kvtgG>sH9H2J&Uj?Kq~Y zdFjkY6!lJ06}_wYU8gluba{<;fM&hs*cc$@_&YfU(E6=&g7mjrV)~EBVM{o>zZ+4f zi>mm8FpKU=;#ko_$N*5BUKPaaRbNT$Xk(Xd+Sk?))}qqqn-UIHB^xq`jUTtK6e=;i zBC@q@dr>+J8WsFXME9Voowa4bT_vu0V5yr7X>1?E&sp+}+ZgC|ztZGRsuM^TCo3>_ZAR+dw-V2$R!WY)Y%#To{{{EHDku%G& zIN|4WHM*2JIV282)OaoOSz|4N8fB@mq;!osM4hDZ1M_SuZ1a5)X^-tvL0IIjG$ciH zjV}P!8hHi2-dLvKd`09%S3C!A8&xm6RGRuyBS=Llqbw#qHCv0nEc7Mbh9St>7Gw`< zsV_!-ol{%uCyUOpBypgX^5ND@wN>=Xr7XSCLpi2YcLGZ)l`UMg%_eJ|M= zQju!k&235Pst?UqrTWJP+wO-9wJn;~FS0G?7%>JB4-br`hl(Qo+@{HG9Sy$`O`~Wt zWgpL*?u&{%A=~3JYpmwlP0g)pt!<5Id!=+kWRbWQUdt$E$gfS48T@#EqF(VS*7vf? zuenaVv#V*oTuXNtky55Rz1nTPJ%D=%FS!(ptgNoIv6f$F?c7#`rQO;vuicDy9EXS$ z=2&Op;4M$RWDii({v~TVAGK5b4dY~9PsiKN)1u^7)j!&CzlOZHzZ>@y(!&ZKv!f|3 zt+k9qinRujKs&*@!QKs+?@_p|{-n{7SO!@P%7eAuOGiphYFtOR zY+%O}YKhHPhq5V+v;i<1=Xlb)_Ld;~`qp#OernFwpl*&)6&M;8tWu{}W$`7|gX6AN zA$Eut5j1}`h*H!gW%DWFT*A>#HcDjZTORV6i^;Vo$!p^pd9rbQI5^FQH zG>D~y)bbWd^S{i+JHLe@=)8Q!wuF|wvL@F~YAn@1*4Vip+Sm~kRVo(?Y?htJOyfK_ zP*%0osy{Ai*=*#R_2Vx;FeTB**Movx+F^drjGoODMQZR&(GCz!yUZxTSM09W?rrwz zr@NiF{Ec)_zhUmjvxYoobJ($rZ_ zyGnzrMDkVf2y$k7m-r@b68kFKvQT}&xqmJ%xT%jJ#>G}`hYd>Tz2nz(Pu6*~oz%O7 zozkP43(Fm9V$<9aOthHVO>{B3c+7H)trFKd#_eF$T%T4|bF>i~6lkATkID^fzcM+a z#LK#0naK2!-R_FADOPwd%f`V#sYn(N!t6d_r7tJ`ip}d#8$s(?QWT`Z2=vHicOY5c zyeGuf$*~~$q*^J57EKxPO(5^7`!*Jx=`9-5*96u%wCY1Thpx((-gdKWWh5&~#&);0 ziZ65VAQ;(yXli|A{~;OGxsgc3Z=o+z*4Gqk?5?))%`&`eYwesU%WTp<-)S8b8w6_W z*d*&sn#coMYgk7T%kD(Q6AQABGSsS=_}3gN7T;A;vMORdKDeM2k6@iuZEeL*yY5Iv zt)hco8Fy*LKep2pgpv{c7WQ&Pe@h!gxDMwTLCHrR9O`E@iv`wAZLjSV|MsqO^iu@h z&O6#$3_ZJ@#8dW--!J@Z1SIjkYN8Ck8a!Ywr^JsnI*r+nnLym{pC$d~0DQq@E zb8E%)&Ti3&bjn1LtQTTa*+h_CsdJxsUDJE_P;aSXf@ogrT?um<4XviVadNPr3VWA$ zm|aar52kI9X~aM^t#gW&%zA(6j?sG)LnJppJIOhim5_8SDB8d~)lzkd!dUyQ}Ai{PiDZJC+v;vU(fL~bF;U8)%@%-MR7tnEfz z6=Fvr8x`t)dQ?fMjt2$14C!4mj3#sem-mJ3yCUKNiclRxu`ihqB$?c*f#SLXALef4wW#Ih>07FOaS!2s zd)217gwSV{H?#4E6-+N!ez9DR6%5;bdC9`9*t!a>!upP|)HEX=)v(^oNx zhG0oFWA?0RC7b0?nwh6BpX(^aF4wsbdq`LPTkT)`OA{1{jE)yuEjqyNli2fxM#@1d zd%G09TQu0N8f%-pCI$73)4aqR^WTmiKCBy?#!Lq_-)qK`EvhA+QxS!QF*16wIqF0| zFYndL?VnO1*4y#*eO1)&?ht!wV$IXo`-U*wml`+v`L~6WHBM_|z!=o182 zB^64^V)h0c3zLty!FWU7$a&lyYP?ZALdtufP=|K~S^cQV>NTy*q52tLS4N#C)ul$c zRgmhGu4q<`1lw0NR{(Coi8Kbm@J0%fC>dqg(>=MlLHe+=U^U}D2f5YHhDmQtx}a_{ zth;-+{5;Wg_0E{zS16TL=4t^PIV9c_^T$`*x)SNP zG`W!)J^d@Sy@Xl9Bs&R%d^Hq_U?*A)z+k@Um@o(nqsv#d4x(xB=+wBXY;3$pM9Pa+ zW{J>nUankK`|%NG+%>JMr!wyIMUBM$ZNus4!QFRv>p?M4LW?hDbr9HKMp;h#;18u* z+VwN2D?DpK8%1jDcD-9sG|TKlXUVTcu^8M&tygBrA8et#NHLZRXWU?a@Z%2(lic3e zrF%_^lGpXBOurCG>|(*DEz@qQF7Vgd>sLJh5W&8=IhmH>yO>~Vw_TR~%IYImQ%X74 z)O99MGDr*tvpU-%3tQyh{Fto)b+K)l<~}NuchS6Lm-K6|(bhP{w5Ek*mT0vbdF>*h zRzABL#!5w^vs>I=7kIf(EjDT8-S#Iao33OggTqqhOTQeEIZnA!Vm!~9lwTRv$79In z)EAc3N6vm>c~#UqE(3xTKI#C4LaSWH&L5kkc31)T7rO%0~!m1>0ZRdXx5x4>WjZ zpG3T{o?=Bd`b{r|Y2c?LX{-a$VuTH)WUHe663YN;6{N};8MuixXYH)~jM>wgYJ=C24n*V7NV&8L`b+fIeEHD2*7P-QNtg6q#Ho?{;K5=;lzP00m%$^-n=Q=RO(=i%NQ#+`pwEHa9S#kq;BsI7|(;4b>#L^MPj@NmHB5KbtG8>Nt3eaDR zDieOcGoH6xi9X5TTRWB1@46(0TB2#y((4xOi5jERv>2giAJ7eJGCIPP(jkk0ViVxW zQ2SC^nB-~VJF|(KC9D4f;}A=8o3ql3sMfq=igYKVf<1ur+;o7e>qg@Djs)0kqa`98 zD<2V0Ma)nZRSpDUcDZP4exCWslxwD3tAWBUKj-m(+d9 zS05sh-9&F}os68SuYzBeuz?gFx0~)QTLa08PH{)mCBv4WW8!*_@j$zWe&Ik*n~`Q` zlCF`{-f>3f7PS;<&T6ZlBF?s?$JHn;iC<$@>VMcAb|^@WmUCp=N1LHe9?uMMJUhg3 z@$Ku3Z={WzEUm2CY}!wI-^gB@>ZMDvwXQXv)2DlD46z^ag4R0SOm!aHaQID&<*B80 zlsz{#<#btk$>zYi*~iEO?Q@8orPyiKi7CkV&T+DRZxC11?O_DBL#^(3S(qVPA5ZTu z_1hAc$O_I%=?t^ChnRy&bJa2~BikX^Gmi{+FdkLnpVW*z>`HDAWPeuncbpd4AVj}) zVuKHv*YT~R%q9oE<|Lxo%F^$53Yxg9R<&x8olE=_gNp2mFw*ufF_ocor0UuuE@(}X zoGDt%y2cKtS$FCoh8Cqxl5Urp*hDswcGfOpDWe5u^fo%B6qwIQ(pxdIc_wUPgFyL) z2L>12GIF|H%UkRmfC0^X)q9#31a)LFVPdn`l(b4mM}1jX{VJpU`uah(r?DU_Rjx%A z@2q0sSlc;H%BZZ?lm%MaJt%tA)u^s>j7A8-a`|A_R^wx?t;FKe^?cNbrM^>Ur{ytZ z2&lF?{^`V%W5!QtYe%WGK}xm6mThqA^|vgVnA{<6+*ndPq^mJy=Dy-ma#EppVD?-Y z-o_8OmvDMtUIM{h!s`aat}Z%si;R+;av%|IqptY&5PHlsm5of2L85phBiJsdin zH?J(CY)(^+lG|mDG%R$I$Nb!FU}>l+ptF9_VO(-1IE-w?MrWCA!dlh@%O%x_pu|>l z#d^4b34uh($iV;ixKGijxKFVLB(Q(1j7?1@!|bUdO*Bh9Wyt$0qts|5Y6BT$52Zs( z2Dw5sJ}rZ`y74U7^%BLX(=C(@rjPtn%Nvew&$<@Uub1}=q|8b~duN@_$Ak_H&;t#* zt;TOUDd7Tcca5+o;kHrmx=<@py0B!jsM6ae+mggUk)#!4kpN$lsD8mOuE)B}>9&J` zyIw9GxLr=Jej(Jpf@A^fAg86;OH&-3jY)?%I37xIHz>?Kn(sdP=>w-G$+-CgE%qJF zqSq5eY>-c64Ycco#Y64UQnC<3wrLpCIB|ok%2bpxkrr1x8R=rxlx54(C3;Xsr?RWf+=9AzER0O0QcKDIzsSE~sp0!Cv((b5 z4Mq0Lci^Q(Aoy7^>b#nAt z(RVEmZ6Y}FB~ z4O@NK8pGCEWPSMrgZ@R2EtLA=muQ3$DgCP9zY(cTLqUFxNNtvoN2OMY9T}BcUF3$~ zCi<}9zY(d?iTI-}{s%#n(ZMhMF(Or#h+k&$?+jv<1;1SU%@grAPlT5z!u5-U|3;+J ziSV?0pCC#)_@zHaq%w*48H>MF5KD7o_-{lin~0ya_+ct#!^rY$L@JkvpR@R-L9ATx zOMi?=RV3u9gj}7Fw@Aq0lWV|;)QO4klN0hb334 zR7*l`O~~yDxg#NWCFDs7c}hawAtCRSkatPQyC&qGgxr^q`xEkR33>N~JR>2`O2~5( z^4x?xkdXIE$a^Q`eG~Hj3HiW;d~iZOG$9|JkdI8rMfo3>B6Vv_UMTfZOkOy(K~Q&Tz#^$hF?rF{Nilh`)Ppg3@zhr_d5P49!=pD?GPP4o zUMh7`OkO(ma7!fap$?K** zi^(OavPGlkua}w;lh;pO7n3(geHfEBOl`DS^!$xdJu!LX)CDnllhi+Aa%uErsh>_s z$fqadSmu!Uv5zZq>|==(OMH=Ii6?R_F+`5NoXD|<6?yT*^DL2&mrTe@CFG?O@-hi| z*@V1YLS8;0uaJ;eOvo!GeW?XAb7kda)s_9(nnGo@tUXEhlvh;t_f^#N z^ym63dkTfVY@uM$;#cXF+2*p{$};J)>RffEP?aeZvYCo}K35P!jOs$VSDcIH`zo{j zRq>PMoNSE@c&dAPs`HiU-s+l6PgQTWs;|1HrZ-oUSD&QW^5{9`*}Z%8tm?8tZ%t)Y zUq!yJrZ1bRtm*A3ud1#t6ngsd<+o>f>dV|q{bUScjTj*#TcTv@u%pDUy# z2`a1lt9vSI`s9w~Fw#S$d%{P z<<;_j*$VfN;^u7L{5g6?d0DQyC*R-GQ(2v@DX-|w^+_UDR957xEAsMgnaZ3yW8Q%H zFB))X^k#DX`E0&F+tZt_DzB`p%=GkBRMceiHRV->>Rg)SR@6A>A=6lmM)#>uSp6dRZ>OT2s`Km&HwcI_^YtQCx zHLbT-&dF4YPuhw?PEx6|rYbF&uOM+V*}k;c^z>KsWU_;9BfE{1_2+U`xpYQ8NnV~Q z*H`F~d@Elz*WaJ6s_4s;2A1>5LKRgqt`^^THTis1t}5G`ugUfls%t9y3w<^6g(~w^ z8TWaDtggvjnJKHO>?xO|mE2jA?ak);ditvR%X_LTdVBiH`{Z%MdszvaQJ9wR-A7+7 zTUL|q$yfALFb^smzq;(*;=~C5c*75EnjL0_EFEPLdO(Xryzw-u{ZdzFzre zl6Cs>l2tPmHGRG5d}VKSReyM|phUZKE2_%U)qUmZ-a=a6uTaz9laoi4OfRXK&R10B zVrfEcFxS38jpW;Og*ZZI@Hc}I$dnF(D<_o!+ zp1#V8-n3k^nhGwSYVOv#@|v>Ve7{t2z5RtM(OcD|E3y@pS!paPvQ@olsV1^To?B{( z0iRi%JO?_MYgO;;%9UD-b_tZRZpR> zqC8Vs*&}t66yKimLd_882Ctp%m!>1#Q(aZllar^fsHw_TOX=^E_NTw9FYW5}_-psi z$j{r&rFlhfAzvfaM7q3CnN3&p$XjG`J-I4*p}zi1d9nAlvxD3BNjp^2n@RU)^3v$$ zGm`OpGrdv|OEuP$$rsCO(=+zwnX#2pR-^t znI)H%=BG+-DPJy|$(2jJkgJscvwi(p`IbdK*!=ulZEmD&SM*oa)MO-oRLSYt%6z`2 zy1!hKDR zeR8f;9A#CNRoQHxG$2|$q@_*wXyqwotSViVt;*CS?kk-eIkCE0>fCb4$K{pMwJ7ve zmP>+XC6Nj>z0&5(XYMl#I%oP4+e%IK>2^52!&-2-UevI2BU`Tp0WvQ=eV#1w3cL#j zA#$a$`B{B43gJCNx7^_|iH3v1@R;3g(9to4S%tZxGZv#A>E79BWVm#Jb<{9ix~|&W zS8A_aslD&v(goID@NntsYHxP9bb+;RsNt$zQ*H~J;CQIo91Y(U7T`Rn+6oOn1fB$S z6sE_ofVacP;0y2@xQg_ZHU3zrIsldX;KA@Lcm=!#s!l-TKLb@Kpz?4T?kQJ>Yr^&5 zCa?^Sg>A48?g@{C=fSJsZSW!ZH~10!9DWObf+J-3sn548ToY~rvv5nL43)M=-U03j z_fg8w>uBV&;Z^W1_^47c#|y~sz^~y#3%Tc632p>OD`n`o6>sU^| zSG$rSuwF-A->xT@vg=v77QyZ#*VWOvUf=E~*Voaq-ls$pX0c7M5_m2+Xa9+&&d zXwYcSBNy39W#M*8d5#7s*}>`ydyb8`uUy>jw{a>Z|5>`IwqMgnwcf*JD7>9gZoWOo zRokoK-EcQJM>#T;Qf=t)O;f4;m7AqfM=0f?PgKg(gw-QusnmHY%XKbS%1y6P%1hnC z@w=5$nLVV;q*70D{CQB9;1FS(!?GtCWZTNhyi4u+|$jsnn9nEu`L1 zZkbB0qm;zjP`Py~Ri@lVzN=Cy&sybnsni%{Z7MZES(i%fsH{)9daNOpnyqqUDz&$= zDU~`*IVP1lK{+;+viePG_DfZk_q|3biFq6H-O6#P)WgV+D_i8b_4y^fWDTQl2UI(w z$5o4>+yF|_o9w@zB#FuLs>WIcZ-2ls&o!6V>t@D%9V%L|Y%gIB{FU@U*h{e64-7~xOB=iw{x z4frnn7=8i2gFnL&!(Dz_94-rgt9>3#yezDN+rmaT4o-lR;m)uZPKUGMe7GMx1Re!X zfTzK8;6?BXcrCmM-U080I@h4(@NxJId=b71--7SMPvBSZ2lxwIc!ay|l5lyrDqI_G z07t^jVFk2)hCE*_@)$TCcEYK!8y4Um(DzFgARhn^gU7&=;2H2dcnQ1`UI%Z1zCUw6 zvh{1^xt~OS7QO^uhi}6V;b-t0_#+&)kW0@+;nHwLxH?=H`hL=8$Z1#ww}$nw8MeWR za7UPj)1dEP%|o_+)`qFnLC8nIvo4_|?A zz<1%t@C*1I{27jrhD!7Q;&55GGF%g`2RDJEVHVcFZDAuE2PeSEaA(*Hr^DHBKJ@*@ zLy(VxC&1I7?@wNYd>P0qz0!gbUyS@Gy7`JPDow&x4o1E8%re=O*<% z?}GQkN8yw3S@;rs9li}eggUpW*ZT(k2!}1|jxP$AhAYC=;ks}mxEV~tD!4VQht04J zPJ}zcJe&q+!g+8Xcn~}S9tTf>XTb~LW$4KUzkuJt zpWz4@P+0kg%fgl6ns7b12^^I0lY~olxg2_55yFfP26_;R1L7JPaNKPl9K_^WY`$N_ZW-1>ObkhmXQ1;j{21 z_&R(Weh5E<-@qT?uqE94Eee;0E5g;`x^N@78BD_}xHYVY&9Dtlgge4KoCasYd2kH>zl|pgPUVpb3_0zJ@&oix!Z2DaJ-d=B);dl+) z4vvAX(Ch1VLhgmT!#$ztdFA?EPj@88Pk^Vx^Pt!Jdi~su9KQqJ2Oouhg4 zp?}Z+zg)R`<^SvD>MhFG2k%Swv4&Q+v!!M!NTZ`eZwL^=- zW#GziE$H>tn&qA|TknlH<--BLH{5A5AaQGtbdW%DE&*1gL>u`J{I0|Or7SQX3$0E1E zNpNS_2faRcF7iI`V0aWf5qdrF`N)^SYv4`rPU!W&e@1=^z5ri^|AJoc`#JJ=@V{{3 zMO`{A1--s^4dnG;Dcl@ZLa*m-KpqD>;8eIP^!nXd$n)X;@Gy8R^m^U1kuQROfV%cZ z^UbZ$>vJDMejNS{z6AdXy&m`9$X~(#z+vbc7lU4Zy9)B!a6`Bm%s{WV-41ySY=sly zPSERXcSqh6?hOxuM?$ZsJstTxcqzOZ-Uz*Z_CDlC;a}nNP}d-7x_Z6r2gsknZ{g2y zp~YQ%uaDI=A$tDmumo-b%b?f8ZiQSAw}%tp6zKJ@{m3)n0Nf8A3ccR-WaP8ph42da zN9gsfe?oo`{sle*{|>#L^&RAo;g|3Sm_je<^{dMuuMF3M8^BGW*Q-_|Zws5?c-RHK zKD7sVI-CO+zyqPzqaKfZ8ax+X0--PeOPvJN4CpbbBWtwl6 zfXlQI2z{Qmaq;s!*)0s?g9&N2Al`?g@?eS;YsjJcmcc|UJGxAcfkkXWAJJC zB76X*w+pSAuK8_2EcZ4y)icuo1SvPPhZi!`P;?*Q{~H#i&a1rLCS!{gwo@EmwCyb@jyZ-e*1hv5_OS@<%11HK18fnUQP z;c&)zi^JvMs?h8NB_D2tJPKyv7O)n2d*?P}Z}+@2vbTTU19>j=_Fo4h9|cc@XTbBJ zxBD`CLV3QMIDRL*AO0D7d#@LeUxojIAHvU}xAXch^1_VwmVzt7HK4b@E=ArPR>G}e z1N3%X9mrGRu5cQh1-(7j{>X>HW8o?AZ0PN{{(yWPycOOJy?wX0-|}|eFA@Gv_%8f6 z^mbeSK_15VZZWtlTm^c2tqqYkgBe%@w}akJs}*@7+zIx=-J!S7+8g;GcqBXlo({cT z)}_c-!yDlp@IL76vHptuJp2cI3w{8-9oDzVKSOVizT`r#URnWq`>PV0ZxJ4upfGRs{!Qw;Gysscrx^MRu>{)0sjbZfq#PDzUnW?&%nRK*P*wI_jXlZ za{LFVhQHeGEee-`-kxeL8p|3*dq92zWg7c2nmf zUjn^7{td{tLvJtj2=bHgIrs{E6M8$TPm#ZYKfw`<@0NhxK58{&Z`Z#u@@SZY-Y%*R zxf!;@$#56w?V)BM&x8BIL*UWS+d-X)d;z>1UJGxA-u~$UWnlxEDMC9uB=-)2Ybkz>DFP z@OtR&neIV;7(M}?g)c*I$MhcZC-7_dBh)n>THY3i%fVIQI#7LFXuMI-+bwN@Tnop- zHaH1-d!;_)J>Xop4?GxpJEaqm&w%H{%iuN8+b7+Ld_Vj%d*Z{}D4(RQVc14~BXTkY!f9UOwjzvBNo((U8e}LZJ z=vL&r;Y09o_&4b7jQ)xIF8nwA3jPOr`=Z4d=Pe6YfosDJp|>l_AlJa{;278ny*<%R z$h~lPxF_5jdOM;ckxzi9!}H*!@M?G?yaV0`ABBH~&%=Mfx8MixGx#n187{>5Zb`TT zTpgCcO<)Ep-06ZKX2Tz6Pz>DFP@OpR~yazrEpMcN8m*E@m zJ@^Uy8vY1}FH8FmmxHUqb>K#D6wJacU@aUA+u$U)Gwg$Vz`1ZAcrZK)o(Ru?=flh3 zHSi{QC%hm289oJHfUm-T!4Ki*@H_ZlxbSi=otAu;2+?1@K$&?dUC)f*jhkL@k;X&|7cmg~fo(C_5SHm0O9q>N*DEupY9{vNq z1wVkF!EfQua3L|w)b?#jxB^@qmcUJ58LWU?!FsqooB*f5ZrBfJ!U4D+JQN-SPlji~ z3*i;;kMI`wC-@-z3w#Ft9lj3Vfgi&!;SVq+21?fc!)4&ga4on2+!Ur^HQW|9!SS#Q z?g)F}bT|htfCs`O;PLP@crLsIUIlM}x5InkBk)Q19DD`73EzjG!f)VDaD*tbHJz4# z%fr>+x^QDS8s^}ZunsoEb~qXC0t;{koCo)XhrpxZN$^Z~0lXYu3vY&Z!3W@D@M-uW zd=0)0KZ0Mt@8K_Sk(FIKEe%(KYr^&6NLUW5;5M)kw!luf1I)wS;B2@TJOCaJkAtVe zbKu4BN_aiI4c-GEhEKp};mhz1_#XTOehq(w!&h>o8X=Be)wnj6np``3jYN^grCFj;D6!5tGaYr z3a$v(fa}3hxH+tZTf+u84tBt)a921D&Vuvd{_rq(EIb9C4KIR!fY-rW;oa~d_&EF< zdgP!&Y zdpH43f!(kl&V&PSKX@oS2A&Mhf)~Oo;2+^F@K5kT_!syL{5yOdz5_poU&0@tx>L3G zA1(t|hHJqM;HEGQtKqh=366(da7Wk!r^7jL0Xz^M0gs2L!E@my@G5u%ydB;PAAwK8 z=in>wP53_i6n+DLf+J)C+uDD)JX{T~3pa+NVGeEy>tHi%hm+whumESkd2nBN2s|2| z1kZ#Qz{}ya@Md@yd;mTMpN22O*WlamBlrdU9{vIsS<9u<(r_iXCR`tmgypabZUY-( z3+#kDz&zXy&W3xz1K{ECICv^N2VM-XgxAB{;63nR_yl|wz6{@h@4-*t*YHO;Toy)X zK3W_u2Umsbz>VN2n1x%wS~wQA!AWpu*a!E3bKySlV0aWf5uO3hhnK-?;7#yOct89z zd_*eKm{0DpsegHp%-@>2a zLM1MpmV_(7)nN(T1eU=HxD~92+rtTP3hajca3&mp`@uuuG4Nz~7Q7H%0sjbZfq#Mz z!oR?0;NRiv@E!Ou{1W~EQ|r0(SrjeeQTpq3l*M%Fy(J%+M zgmthPw!_JA7g&HZ;5@i5JOmyMPl9K{3*hDOT6iy-ZUJlISl9+9!JT0r+yl;q`@nF_*wDZCoq2=9RR z!AId=;q&kx@GbZO{0x2ze})Tf;?ikJxB^@qmcUJ58LWU?!FsqooB*f5ZrBfJ!U4D+ zJQN-SPlji~3*i;;kMI`wC-@-z3w#Ft9lj3Vfgi&!;SVrX>e6RXxC~qwt_3%Mo5D1# zhTFm>I39Mv9bpfg4(GrH@IZJ3JRY6~&xM!3tKbdrc6cv*1U?C$gRj6h;rsAY_znCC zju`3EX$iPITn(-ZH-@8O4sHqSU^8roli@C~0B68?a9?-`JQ|(^&x9Ai%i*=~W_TBT z06qqvhA+a`;M?#c_yznP{sI@-)TPtXa3#1VTpx~v<**8F0~=ur?1VeOJlqY=hI_#S z;NkE%cq%*xUJS2<*TdW3J@8@p1bi004Bvq7!B61V@JFaVimm;J%fVIQI&dR63TELJ zuojMmZEzCY8TP?F;9R&5JQyAYPlRW{^WkOi8h8`D6W$O144;B8z*phF;D_*Y_#ON& zTzHgAr={SEa1FQ~EQOoHO1L#_fa72XoC3$ycOOJ zAA*m=zrmN_KjFLZ-|#E=A2@8ZOP|HyvTzl+Hrxz~yX-T*OTpgCcO<)(Xf{xFTEwt_Mru=CBfO4IAJ%*a4@)UEwr1 z3(kl8!^7aQ@DzA9ya@gQUI%Z5cf*I^@H}`ayc*sJ?|}EgN8w-L^Y9<= zE%*Wa41NoLh6`1==Ux)709S`4a1&StE8teJ9&QgOz$vgB_QRQQ0PY75g~z~?;aTuP zcm@0;yaoOVJ_!E;pMigeufuoX$M8$|158!A^jQ=x16PJ?!42T1Fb%8Wwy+6~hh1<- z*aN4-IdB0y5FP=Kho`}F;U(}Ycmup0-U}arPr~QmEAUPDKKvAZ1Al@es$4oP0hfoX z!FA!ra5T)pEnyvOhV5`N+yxfk3^)(&3lD)u!;|2d@B(-_ycXUJ?}87&$KccOMfe(g z8-4`8fZxMk;3Cy7otB0x!8PIfa3m~;Rd5^F2wPw$+yUm{Zg4i-3myOuhsVKF;W_YP zcqP0Z-Ujc155p(mv+!m327C{G0>6eoLfsq4+JCqlTotYZH-e*J7H$D+;aJ!PC&8Uz zAKU}Zh5NvR;Zg8Jcm_NlUIwp$H^DpM{qWE5Dfj|>75)o;2tSA4!T-XAw{YpS6kHLm z0oQ}2aC2A*w}uUH9PEHo;jVBRoCW8@{o!HoSa=FN8(swe0I!3$!n@%^@NxJz_!9gl zd>8&3eg*#nhi&Q7XEC@eTm`NTH-wwP46K3M!7;EEPJ}zbUbs8l6YdQUf=9v=;OX!@ zcqzOZ-U#o2_rXWuU*YrcAMh>s0sIVp3x9?SZROHwNw@-B9hSgNU>U4{Tfus`J)8ii zz;4(NXTkxvA3PKu15bu$!3*IP@Q?5o_$T-v{0n>r{vEy!-+>>)FX0a`wY5v1Md31V zWw;jH0B#D?uo`X)o8WlZ1$Tr!a5|g=7r+DI5%73;8ax+X0 z--PeOPvJN4CpcmomrhH-<>6{@UAQqE4RdfySO=S7JDd!6fdx1N&V&2HL*UWyBzPvg z0A3ESg*U^y-~;e6_%wVGz6RfhAHgr+_wX0E$hIz>mWC_AHR1YjBrJzja2wbNTVN;L z0p{Uua5mfv9sm!A$H7zKIq+h5CA=Qq2Je9n!zbXg@MZW0d=GvCzlJ};;oG_NSsX40 zSB2}qjo>Jlg{vtlC81t@iWV_#-nF7 zH*qKT^C(aA5^wMxpYRnw@H;~m3Umt3XpFxBSeYg#&%UFcM=jK9eymvoJRcvINVs8tbwNTeA~; zasY>O9H(*)7jqRiatHVE2v6}Muk$V+^CjQ&8$%QcbPC6)jLk$$$qdZSyez`fti+mZ zz~*enuI$6X9L0&8!TDUqwcNtpJjmlb%PYLa2Ykji{KWtL!`Agi9X{df^n59^eHCUg`*p^+`n}ax#6F8moxRh(SnY(y^$9RU9d6W0~l&|@bKNzZb zpi=}!XIv&>YGz_i=4UaMWfj(DBerA*c4t2hCD$~NrGUL42~9M5T-%OzaRP29=-Jj&C& z#2dWFCw#>Z{LYXi1D(P%8sjiAQ!yiRFdvJu3@fu18?pu4vm5(z2uE`gXL13Ta~-#G z4-fGK&+#g6^C6$}Ek848sX(7FjKr9X&ty!?EX>V%7aye98Cx#t@|gox(9HV>1y`G6S=KQTy|K%dZz$QX>rq)fxi%*6sM&T_2EI&92V z?8qMM&tV+PDV)tkT*(dG&b>U$lf1xdyu(L)!FT-1;AI1y!ZHeDF(FehJ+m!epYk<7@&`ke3v`OW=#0xGOwCNp z$^0zFvaG_|Y{ZuA!0znFp&Y}>oW+G)!S&q6U-=t<=Xw6YKlvB`=0E(xVC4gSeqv<) z%mhr%bj-?MScoNAfz?@$P1%N>*^2`?g5x=jbGd}8xrsZupGSF`mw1Es_=Kh}EGA?Mre`+hVPTeHMb=<_He*|MVQ&uN zNKW8%&f`+9;b!jQ0UqNSUgk~S=TpAsNB&@_s)0@s7@cvMgsGW{IhmiuSe8{-n~m6# z9oU`yIFw^JnX|Z%E4ZH9_$zx^x_$UA3-~5MP7_3^L&rgiZpP7KknT}cc3k$I% zE3i82u_@cIGkb9$M{qo+aW0o|H8*i5_wy)E^Ad0H9-r_PKkz$4Ru6Ov&uEOp#7xDE z%)xvt$}+6XT5QM`Y|n1&%OM=iNu0?AT+Vge$~`>96FkSOyv>Jv&bR!`pfv)0!Y~qJ zGCq?rEweB;3$g^uvl{EN30t!hdvXAWa~!8~4i|G3H*yE}@d!`xBCqoo07|XH>YqJqsvID!bABS=bCvz4T zas}6O8-L|*{GI3d2mj<>{G0#q3xm}S^!bUA`7;wRInyyKe_aE{|t&f#LN;zsV^J|5vIUgUM&XhviV z#$!^ZVP@uH0TyRDR%IPFW-E4N5BBFUj^z~2<|3}-25#qG9_C42;5FXiBfj7}er51R zflgr=g|V2BDVUzwn1_W~iWOOd_1TPV*@eA1h$A_H(>aezxrUp$iwAg&XLy-6d7n@D znjiUtp&AD|MPPKsWfG=lCgx;*7GqgfVQn^IOLky)_Tx~F;bhL@LayL?ZsV`~jlc6e z|KOkei+}SUeqpdCfj&PmGJj?QCTBWk54B0f$DLkVw4ihsKGcpJBu_(*1GHbCRTd+O5u`h>kG$(N; z7jQY(aVz)m5Kr(Nuktn@@;Tq~GlMn@^a;aAjLG;+#FjT8RrwEMB zxJ<&-%*33`&tfdgDy+>$Y{?Gn&VC%qF`UdTaj^-rJhmZJz@A#F$I|Mp~WfaC@LZ)DPW@8=}W+_%=4c2Ef zwq+Og<{*yb1WxBXF6A0-<}M!KF`nUN-sF8g$#1;@;Cm@^ZbK<@-P0)fB1#LItBXt#K`=a37DMe zn3cb<5KFQGtFs=PvJE@47YA|#$8#FzatT*+6L)eykMcAx@doel319I8zcXa#K&SAG z#yCvORLsa6%*UcE!^*71hHSz1?8d$v!qJ?>nOwl-T*s~4!$Um5bG*vie8}f~%g+qj zCD11fBQYl9Ga1t|3v;s|ORzkvu`ZjiH9N5<2XHvYaVqCS8@Zl zb1x6`Brot9@9+^{@EyN0c=tf3u#Cc3Ovn^W&uq-Y!Ysv#tik$h#igZWsL zWmuWD*pMyQp554&LpYj~IFk#woa?xidw7T^c#cmRER-5BQ94_=!RK z2Kt0%M8;q|CS@9CW-b6qZpKiwT*6>6wjrSeT_)ku_MK&DfS**qehmk`p+c^SG32xS6|nfX8@- zmwA)-`IN8ukv|x!f1pzYMrT|mVQOY#PUdGZmSq*zW+S#_2X<#a4&@k5<}5Dc3a;li z{>tC@JJ0hE{>i`iH~--m1{)CQ^AjWUXC`2BrejwA!a^*`3ark0Y|1w5%w8PG5ggBH zoXaI#%}w0N{XELkyu=&4$0vNn5B$!M0|TAHGaBPCF;g)kb1)x^vJ5M;78|k!+p`<{ zatKFr5@&J&mvbGrat{yj1kdp*Z}TCa^DRF!=%7HKFpR{QjL&3D%Ph>zf-J%Etj4-* z!q)7>o*cm89LK4g!^K?1joiU~Ji=4F$m_hz$9&26{KgQ21D(P#Dq}MdQ!)dyGcSv< zG%K+t8?ZUsu`Byo+kU*c%jK~;_$D~Zd z%*@3CEY5PQ$~tV!R_w?g?9X8w%PE}AMO?`Z+|Io`%#*ypYrMlpe8G48%HTr-ox(B- zV=*C9Fg>#|4-2ytE3yXbvl-j63wv`AM{)wEa~_v+4L5Ta5AYbz@G@`mKA-Y6Kk^4d z4GVON!03$2Buvdr%*p&L#mZ!eGM#eSTtO{>%hS&UDPmUs#AGS%KAAk4@Qzo!N^6IfCOkjdQt#tGS6gxt~XQ znwNNk_xOab_<`RUazvn0ct&F!CT1#TWDe$IQI=t4)?!1pV0(6BUk>4DPU1{1;Bv0x zR_@^;p5QrNyMhxri&df!n#4hk240c#U`Xh%fk#Um1K%pi@{zVJs$O3Z`c^=3!x$ zVnx`3noNBrC8w>#-@@urqscAV+XKr*STqa5Xn^C-?IxPxBIQ@E)J=6+iGh zLyix03eRYa!^BL*jLgA&EXp#h%vx;77HrRM?8_k>%}Jce1zgT`+{!&X#1lNntGvyJ ze9pK0%%BqjeZnvjV=_LIF)gz&Hw&@^%d;BmvI$$W6MJ$1hjSdKat;@B6*qDR_wfi% z@glGDE+6wH-}4(oObm1i$Eb|WL`=yH%+9=pLNg*`FdmaK4Kp(r3$QrLu`27ZFG0@hgK*4s;63D2&B~Ou_Wb#yl*{Qmn`ttj}g_%P#EA zK^(~moX&Y%$~D}~T|B^JJj2Vp$@_fD*ZjyI3^gUtDFUN2E|V}dGchOgvlz>=3Tv|w zTe1VYvmb|Y3@39I7jgyHa~prLj$65hhj@bLc$K&Lkk9#+pBZ#|pidY^ zVob(oGNxq~=4L^bV0l(!T{dBBc4AKs;Bb!PRLT& zh#7%S;TV;%nTRQwf!UdtMOd1ZSd$IdobA|^eK?q-IFU0rpUb$GTezDCd7Ni?g}3;C z&-jL)7-VLkPiRJD48~(preS90VgVLsIaXyIHfAe!WDoY|FplLE&gLSnzIz?b~#$^(wW+vujeima{R$*;6VoP>lclP5@j^Sj^ z;zF+AdT!&d{Eff!JpbUI{EL6{AAVu5Ie|VuF*1K<0w!lVX5}v|#FDJQ>a546Y{Sm% z#ep2b@tnrFT*B4d#GTyFqdd(^yuo{X!dLvj?+iIN&?!8lF%A!^UjIj_kqy9LBMn!r5HJmE6GX+{?o}$qT&3JAA|!e8;a0 zzA(@!ETb?M6EX$UGaK`;FiWu_Yp_0>u`Ro>HwSSfCvZCFaVghuGk5U-kMRsI^Cs`} zDPQv=e=yXdK&J?d&bUm%)Xc=3%+F#h%POqRMr_Fr?9P51$}ybGSzO2!T+eO%mA~~ z&g23v=Q?iX9vO|%pUIe(S(uvzS%T$Rjdj_Ct=Wk^ zIe^1Cj#D{@i@Ay$xr6(7gr|6s*LjzZ`I7JXjUko=I)!6Y#%3a>WCmtuUKU|#R$@&y zU~{%(SN7pxj^ael;CwFQT5jQP9^`SJ&42iX z!Bz$O{KUxonF*Mj>6n$junGa}#%RKacV>FYyNN z@d;n?1HUum>OiOPjK(-j%v8+C9L&d}EW^sI#fEIb_Uy*K9Kz9@#F<>ca4}bL zBX@8gkMI;P@;dMGF<FNkNm+<8v>moFgoKh2~#r@b22}R zu`H{wHXE@eJFq+ZaVW=dGG}oiS8zSI@mK!F-+7*Y@K655zxfZpFxbXGpPv|+KQjT7 zGaa+?7ZzekR$z73V^g+aXZGSij^KDs<6JJ`YHs3A?&ndS<|W?XJwD+pe&Bb8+!W{( zp3xYGiJ6KSnS=RQlx0|%wb+m?*q+_kmqR$3lQ@$LxSZ>_m3w%ICwPumd7BUUoNxJ= zK{p5bgkdDcWPB!LT4rHx7Gw#QXEoMk6Sih2_T&H#=QvK~94_W6ZsZQ`;}M?XMPBD! zKITil=QoDf66h3;Q5lj#UgI4;;tRgxR|ek}=oFSw7>fy+g6Wx!d03dGSdleYpUv2oUD%t0IFb`M zo%6VqYq*)ac!0-vhL?Gh_xY5s`H?>uYI~ql1V(3ECShu3Vov5~F_vW&)@CENWCwO< zKMv&>PUb8wkUImN!ZRA3V5`*H|Ja}sBA0heKXn2gV4 zOv^0H&4Mh!@~pNCL6Fh+p#PAa4<)4B4=p zxsAW_H~!A^{DXh;FaFJc_=Umt1^WEN$o!cJn4IaDmA|kMOR@s1vmTqW4Lh?J2XX|* za~kJz30HFycXB_E@-#2;2Ji6+U-1LKGvxk2r|^u%I84k`%*Y(f$D%C5%B;nPY{B;I z#=acF(VWDYT)^dA$F1DMLp;HAyvo~r$me{^&kTAX&?gKdF(%_P8PhTgbF&~zuso}= zE}O75JFzDRa5%?tD(7%9S8*eEa37EG6fg2R@A5HU@;$#X#KAzPaE!{>OvIGT!0gP+ zA}q~HtjPv!&UWm|J{-(ZoX8oR&t+W8E!@q6JkGPc!dra6XMDp?400&YCp0562IDa) z(=ao0u>gy+9ILVp8?zNVvIqNf7{_u7XLAu(as#(>FAwu1FYp@g@DX3|9ltX8Z-Gu> z8HKT!kSUm+*_elgS&9`|gZ0^rZP|srIfx@UfzvsUOSy)dxr+yQjAwY6H+i2=`I;a3 zgP{%wIz?b~#$^(wW+vujeima{R$*;6VoP>lclP5@j^Sj^;zF+AdT!&d{Eff!JpbUI z{EL6{AAVu5BY{3YF*1K<0w!lVX5}v|#FDJQ>a546Y{Sm%#ep2b@tnrFT*B4d#GTyF zqdd(^yuo{X!dLvj?+ke~&?!8lF%A z!^UjIj_kqy9LBMn!r5HJmE6GX+{?o}$qT&3JAA|!e8;a0{(GQPSVmziCS(exXEx?x zVU}V=)?j@$V_SA%Zw}%}PT+LT<5I5SX71tv9^)Ba=1tz`Q@-X${$Qw+fld(^opG6j zshNp6nV-d2mQ`4rjo6YM*q!}2lw&xVv$&8exSreiD}UqfJkLM)C;#H#{D)r{>{Ou7 zPmIi;nSjZej#>E&3$Y|CusZ9pDci6!dvPE~a6G4RE|+jMH*qKT^C(aA5^wMxpYRnw z@H<1E4s;67XpFxBSeYX99h~FcM=jK9eymvoJRcvINVs8tbwNTeA~;asY>O9H(*)7jqRiatHVE z2v6}Muk$V+^CjQ&8$+B8bPC6)jLk$$$qdZSyez`fti+mZz~*enuI$6X9L0&8!TDUq zwcNtpJjmlb%PYLa2Ykji{KO#V0)0X=B4aQflQIo6GZzc6ILomr>##9fu_Jr1KZkKF zr*JkGaV0l!JNNQ1Px1n<@eUvH1>f;2gP#v{3d<;r#e_`3^vuRQEX-1@$QrEAW^BtY z?9D+O$qAg!d0fgh+{|4(z+*ha%e=|^e9G7S$R7-KAyhjI)ja~2nJ1=n*Mf8}rdo#*)n|Kwl%oB!|&gIx^t`H7MFGZQd5(=jW5 zVIh`e1y*N0Hf0-jW-kup2#)78&gBxW<|gjsejep%Ug8bj;}gE(2YzSBOMy<|8I5t6 zn5meNIhc<{S%#Haiw)U=?b(feIfSD*i8Hx?%ejtQxrc{%g6DXZxA~CI`Ies<^m3q2 z7)D}D#%D67WftaUL6%^7R%2Z@VQY3`PY&R4j^k9$;bN}hM(*G~9^olot6GdQ2ixRzVEn+JKEXL*IU z_<+y&hMySZYM@VOMq~`eV^XGJX69l67H2tDWgRwVD|TcL_UAB;#|4-2ytE3yXbvl-j63wv`AM{)wEa~_v+ z4L5Ta5AYbz@G@`mKA-Y6Kk^4dT?=%I!03$2Buvdr%*p&L#mZ!eG|}eSTtO{>%hS&UDPmUs#AGS%KAAk4@Qz zo!N^6IfCOkjdQt#tGS6gxt~XQnwNNk_xOab_<`RU@4DPU1{1;Bv0xR_@^;p5QrNe znh_a;@tBlpn3=g)fW=vkRau9P*@_+6gZ(*-V>yMhxri&df!n#4hk240c#U`Xh%fk# zUm5(*K&P;b!dOhm6im--%)`Pg#fq%K`fSFw?84q0#F3o9>72)N6LT^@i?J-Lur?d9B|ES?`*A48a585xR1mM1(HWOX zn3|cGllfVUWm$!_*@!I}lHnMIKQlg)^8dD<(KtKvunq3$097n3arLDY{V99$1d!}fgHi{oW{9a!qwcwo!rl(Jk3kI!Fznd zSNy>53>hrYFFd0$4ihsKGcpJBu_(*1GHbCRTd+O5u`h>kG$(N;7jQY(aVz)m5Kr(N zuktn@@;Tq~GlK>X^a;aAjLG;+#&42iX!NLUk{KUxo znF*Mj>6n$junGa}#%RKacV>FYyNN@d;n?1HUum zPk~P18I5t6n5meNIhc<{S%#Haiw)U=?b(feIfSD*i8Hx?%ejtQxrc{%g6DXZxA~CI z`IesB4aQflQIo6GZzc6ILomr>##9fu_Jr1KZkKF zr*JkGaV0l!JNNQ1Px1n<@eUvH1>f;2gGUH-3d<;r#e_`3^vuRQEX-1@$QrEAW^BtY z?9D+O$qAg!d0fgh+{|4(z+*ha%e=|^e9G7S$R7+9G0-Ujqcbj(Ff}tVC-buy%d!e< zvk_ae1G}>yhjI)ja~2nJ1=n*Mf8}rdo#*)n|Kwl%oB!|&gGCDT`H7MFGZQd5(=jW5 zVIh`e1y*N0Hf0-jW-kup2#)78&gBxW<|gjsejep%Ug8bj;}gE(2YzSB$bnAb8I5t6 zn5meNIhc<{S%#Haiw)U=?b(feIfSD*i8Hx?%ejtQxrc{%g6DXZxA~CI`Ies<^xp-# z|IKS*7>O|%pUIe(S(uvzS%T$Rjdj_Ct=Wk^Ie^1Cj#D{@i@Ay$xr6(7gr|6s*LjzZ z`I7JXjUl22I)!6Y#%3a>WCmtuUKU|#R$@&yU~{%(SN7pxj^ael;CwFQT5jQP9^`SJ ztQ5cH}nS$w=jd@s@rC5^W@1j}XEBy#71m}Wwqyr( zXFm?*7*6IaF60WX=QjSz-}pPv^AG;XzxX%*;THyr8R+v9BlBk_U~;BoR{p|5EXfM2 z&U$RhHtft^9LNzI&uN^?C0xx-+{yhs%G12W8@$ISe8ms^&XE6Jc>3SpTX;re942Ne zW@HZLV^Nl2W!7RtwqSd9V_y#8XinlxF5q&m<5uqBA)eqlUgd2*4v$=>Xxq;icmxpFNkNm+<@dBM9FgoKh2~#r@b22}Ru`H{wHXE@eJFq+ZaVW=d zGG}oiS8zSI@mK!F-+7*Y@K655zxfZpFxbC8r1;6bkNJ}C`HdkG1v-Ue zRK{i^rep?YXI>UzX;xxQHehqMV^{X!V2m?wFG*La7I z_=4~FmBEt)I)!Bv#$rOIV0va_9u{UPR%8v^{*h5wuT|C|3AnLjfDlQSK&@)s6jNmgKW)?-t)VQ2Q@K#t&e zPUBoI;c9N;PVVPXp5`Uq;5|O!D}La2hD;vl6rRx-hl!br8JUCmSd?X0nYGxEE!dvj z*q1{%nv*z_3%H!?xRrZ&h$ncCS9zNc`J8Y0nL$$o`h;O5#$$9a}lc#9ACjBogfK~e?!gl0s>U_2&e z8fIoL7GQCfV^!8+W42;P_F#Vw<5*7NY%bzTZs2zA|$<5vbx9q1I6 zQ5cH}nS$w=jd@s@rC5^W@1j}XEBy#71m}Wwqyr(XFm?*7*6IaF60WX=QjSz-}pPv^AG;X zzxX%*;THx=8|d>BBlBk_U~;BoR{p|5EXfM2&U$RhHtft^9LNzI&uN^?C0xx-+{yhs z%G12W8@$ISe8ms^&XDN>ox(F3<1jH(F(Y#@AB(aKE3+0GvIX0-8~btyM{^Qqasiif z9k+515Ag)g@hWfgA)oUtKQn0hK%X#-#F&iFWK7E}%*}!bT*Zyt!F@c!Q@qIQyvxUY$@l!m5E%lU!Z9jiGZ9lV1G6(Pi?B2+u_ha^Ioq)- z`*1KvaUy4MK9_MVw{SNP@;J}(3UBcNpYaVpF-XQhpU{lR7>viHOvB8~#R4qOa;(Za zY|K{d$R6y^VI0dToXtgC$qn4jy*$j5yufR`!$*9}jLRfU z%}mV6{4B<@tisxC#Fp&9?(D~*9K*?+#f4nK_1wl^`5S-ddH%sa`4|7@Km5XASpt22 zVr2fz1We9!%*tO_h$UHp)me{C*@m6jivu}=<2j9UxrD2^i95NUM|ql;c!T%&gs=F4 z-x)G%pi_88V;m-CDrRI3=3`NoVP)20L$+Xhc4J=-;b>0cOfKMZuH#nj;US*jIbP*$ zKIC)0moreGO->3g)9u{UPR%8v8!qm*f|GVEezi}~^Wfj)u|J~=?(zpZvpZ3$gKOgyTKm2={ z?LYrrmi*6uPv8FY-|6l@v-AJ${`&uVdxdPjBrC8w>#-@@urqscAV+XKr*STqa5Xn^ zC-?IxPxBIQ@E)J=6+iGhL)uT_`G5C?$1zUKRLsa6{J;CbiyD_j;EBEjaPw*VC@-`pxIp6X#g9ZzH4#O}KV=_LIF)gz&Hw&@^%d;Bm zvI$$W6MJ$1hjSdKat;@B6*qDR_wfi%@glGDE+6wH-}4(o1P^oy$Eb|WL`=yH%+9G0@hgM>djS96 zb*Zq7!dOhm6im--%)`Pg#fq%K`fSFw?84q0#F3o9>72)!^UjIj_kqy9LBMn!r5HJmE6GX+{?o}$qT&3JAA|! ze8;a0?zkJ4QT~7JoeOkS#TmzE2}+g?7!fK8Di6!U${IDGm7oa^Nn}9?V0b3kWp5s^ z*}!H)LBJjF_-@SMK`=7aU=gytE_huLD49fSE^ul^SFcTaI4hHkU(O>~s2wGqWtO9Qb z?*^BEOTmZ1AAqaCpMuYTzXUgfzX4wZe-G{j{{p@beh3}|KLyW4zuOM%2zCK`fPKLX z@H+5Da2V(V$AXhUKUfA8yX*a-dyY=z_J2GhX{ z!ArrfgI9vrf;WIUU@mwocpEqs41zPj2>5w_@6PG=chVkod z$0-#&5B#dsYs-8m-tV31d?(p{_H1o0wKxwR0at*l!8PEs;0xf3;H%*4;4W|)!+Gz#oD?2EVNS?Q5vNOTf#)Z-Cc;-vqP4;ovB6JU9iM22KZOfpfq+ z!NuSM;4<)W@CooKa4q;ec&5ia+4EVhlg@FIR+2FiWTC$Rn$xE6dK+yuS??f~Be-vZwO z4}u?nAAu*p)|d}?zz*O=U^lQg=mqn zcF_sbiV9cPhM1~UUy7}$kQgXVJLR_*>HC?KZ|pe+rN^$blz$&SPP86- zu1uN6-ix61alD<%qr6pfE291YF&c@pOqQb7oT%~!{ZYU22CAx*mp6EGb9_a^CXCA~ z8f!&|REA5+OMT^G%b7UblsF`0`6K$z=3AxZRZ%N4#2*R;{L^M6@XqyzgQ1f$&C4GX zPlzP=$Y?7ZEDx7DQ(|S&qz$*iR>U8*#unr$Z^R0DgI1urw5U8>Qc3j^TlNP65o@+R z)gSSPOD(Fc<`0~_rNTcgLLSYMP^=E)o>c$JJFT*!!U|LUH)~2F{tDXXocxhqe>55? z4^&4vpVCNW^-MaFNr#u{*z@xO37NFOs}~x(PPj z7=w<_3CWkAhv~}4l_0vY1|2^m6Wut2Zi!7d-k@7%)7@s!)!TFh2HhH)j_XLbzuX7N ze(-%Hoo{{X*ON4LC5cy ziJ#w~<7bkh3m9}6Hr+IXj^{Aq7c}VjT_4d|1|9e1qAM}zifuZ+f2XUzkWI(eA)St& zrAof#2HirNZn{BNYtzjz=$6}bA%pHoo36s3TW8bp^K{+*Zno(v4LW{SCiTL7lFo0p zO*hM+J7CjA3_2d8NxoGE-Eo^PYS5+9m`wbtZ8{z{kcHwo1P6W>(H>;AJ8fhgJ-Uen zr;gJ&^ro0f@l?7iN#o4dCnl7}^~@oUqFq-^#z$f)@&81}=Zam&&ww^3&@FQ4(rFxc zjZG)}yV{}ScanQ0(D6MLd%k6)%eCpGe7haGwWP~VpgZc&9U)yt0v*58V$Zi59YC&A z36d|rW6L@TKGI!9QG%rPr3D(+HkE1lez)S^W#e%~e~RqK$CcmRkk8Pnnn#U_=NA%W zafCxRmBzcpA|i^8-~F)X+wp)~jiz+Y_j-zwZ=u6)Bl)pTg7{5x_yx(YmPG7#14Z$h z>F{fJo>Du-gmkjV{inTrjpVnMwy|GUB0n^sed$UqZ%YD%ll-7t^{!iWqkUmNo`;`Q zKIrDsiOSE@CFuONG`iIi(y?DQMV((gy;R~AGosGV_pv*69N2HL!S6Nl>yd=tLh|cF zI`$iC@Z;}vOvZ1G&F^M|Ux!PT`YxqQ(Cu#n`PGw%%g5)jw*JVE$GH-8e$iv@Si5Jx zTPW)MJ|w>sF(I8SHnqQ2@thjSFM|@<&u8#!yi6&+K1dJTc1obx57qOqr7ZUmT zGn87fKMB9IwrVXME%uZ7LL$FU(_M&+{ew*l8EkWlu&gW5ebp2(&AVr;DV5Cd&`%Dsaeuwit>LBUZuY{t`?-2cw!FDkr zoh&-*uVK7L@mP`l$_#$%$GB8SF){essFC=O&+wxuNnI!x&CpMQaWGLT! znn>|jRDxJL_cv=YwLcPZ`N9-+_4gz48z3g6lSQXrkohGZfm$IF1+VV9NdYZ21GG9pKx0U?pv}_7eROkMt(T~<;lZy9uHbve3 zoOJ$^%R$SPE1HAi_ZPs z5cH@cl*oSb4Sw@zz`BIeCFuOt(2xDqlZgH9pr|WfN|8(DB+(!EO34rB?_CDJp?;V8 zb`pMv%ROp8{O&RMZKs#C`R|$}$fC3Uc7#0YF4W&bgI}8EQgf3ipD*lDJ5j#H2ERq6 zE@esKh`RE1oz>jm^YPOikN3$hFNyNikY63jcfY~!T6($t-XzL*IsF)99qG8e)Y$y) zrX7-fVw?5k_cTvj5F~8@E!gKX8^|x0H0;OYW7%JRhn_z}!;Dx6(#7|U@u^sgr*V3n zLpNZXTk*I`0&6&~hEBHEkd7>y0_V$NC2g~puXVMjY5w*grAztvT9Fd(Vq>3EJKU;Y zd@1(7STk*hNoA0(wyjbR)Ao9b?3YfF^CZ8fuz8nT?MYC7e6QWETSn#EDw$E5EdCGm CdFQSG diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o deleted file mode 100644 index acbeb1233c4427755c1d84ebfe7ef3dd3bdae7e2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 760308 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

    SxPd}^fjIjWaRcr{noSd!conUD(P&m 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�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 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o deleted file mode 100644 index 1c058f9daa9e3a368f31fec2b77521e9eb982580..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 758956 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

    )MvUU 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%0DS@r3#{t4*kL(Vi{ z^qmhXJfX{DZqW>i?&EpH2D5Mm-erF5d=6KdKFipji}RPrns$SHlG|4jgEP#p@ywXh>H=HtOD~M`JrO(iN9*6HdCZjL#lr85>Y1fqe`U z-$oMX^Xm3xqmTty?-%9{&&4CNf2XD&$iKb$xO;p5-MdfU-|g=2etkFq3q)_F=Jnl9 z5M#MsV8u5tPCE^n2FdTYo}lz4h*JDwaxUXEtqJK%r(I= zCM<esTE92PN4A-h2lUHyVfGICWQ5-;+` z8Z!|(*=Xsb?K_BNI&C39)0|7_h^|yMpxKdZ=M&4|zCk&H>*e+Q8gzaO7o_<$y_R3D zhMwWQ8$MqSZMPe}w_>4iG^Ed}TgaJ3{Lqc$2VV{kPtAfa_ka-top!JXl~#htql*Na zU}tDV;OwbCLb)VojbJu_{*ScYfqG7wT7Y50#rZYd-^?HAo{&NGs6=r6CM~}@{PHs9 z^j!BEZJ&3#kj|!v!C6yA{O`!*mqe3OS}iIG6XzFeS}12BrJa;#t2lQ}kj<|d8l4ZO z7eqd&xS^ruD5*Gln4mSq*!SL_|<%h(NhPhvlh`4YnDoC zU3c-pjkVFz3JUJJmf-fu1nBw|DE4f0)$c?k8K?n(L~wt?#aKQXme;YmXqIlFLl>u? zwNT$PQ+|f;GcYe64#NTsf!TNwfy3Wy&oA77+L)ln`)a@m>%zsJI>KU=Z)9|Y>(J^5 z2gv5ak!)d@L{_R|^Gl1~JGIUhCz0^HGqIY}0BHF#4(>p*_{bx+^H>c2J^_6jEXV8VY`j=ovicHA zfh2*SnClKMO{R{ z^9rBG5}F@n*1}N8OP{Mxi2a1kIjR)AJGeH%N*uv$?qOkqs6WOVd2TSjEt6q!Ql9NS zC}lL93(iS3S?=uw(}(HN5CRrcAb{!asQ;%5bPvo~Bx}b9S!=4jzCzNNC@_upd(xFc zyKk;)pjlNUc)qHMQp#F!>MeHxt!+w)FI^JM705eWFWz#~{teg^bs!Zg-&$2VLg-$XVkYgoNSo{E!C9}T#)DV3UZ zeB}kbMXD3ve0UwQU0~@FqP3G$RXDyDbXVV^dOwXKoOD{Wp{%jm>!~G5_um?To*Fru z-1$B=(?mGm)9vR)_buZMRT{WpxaBH$iYY2w(3OU0kUHSbIHun zT9v?{!1vC?8t#+TSreBcl(a=tOM}zh?p5Rbq$CITnK&Q6psuS|RO|(LdbLYY;5bjN z%BipG;iS?qD2VA@unbHK(R9L%o8^L%RpGxdTF;CgHm|0SuxxjU8}|%${Jel@8so^& zt?7u4N2R3E0v0oGn%#j1G}eJ9!llqRniGXQm*mQRXU&6)YuCg(R3lM zKpF~k?QnuE6fT8O*nkj6!lbnwpRXrj6V0xXT_D@crXK_=i5I%p5*5tnbDn7Cc{;y_ z8=j!Rfp#$6?xgKC3nLT{rKy7ua$rTbZ28Mf*8IdK7_wc)b2LJ*7^7@LrGO*GT#K*X%F zti$H$nk0N3;)aX#de(vYnZM|HXRHK%ahA+4-YtYeceCxVLVm-*WR_z7q(^#(2dq$$ zYVgu*TC>2cj_+04Qk8M`>@`%zDIu8uThOV_h=0w43DK3F)3CNf$@2|5`7Dn}a3266 zd20O_mzo-=CvF?SRXKC%9kJPA+rhBlDIaOw)qzuK`Mzr~6(*Y(Sv{(;In{TzJzBOg za@dDqDQF^_1-A;Gtmuo=Er*rk@aCGVp)hnQS7IvI$h%_pS&k#lntD>$vQ6?eqJm>JoIG?=s00y2MPrSh0 zo03*(_bbeF51;_R~MTnh*woIAVcA%9xIfGdK>hApuh7Z z+zn|qGsS!j*IPpi3f&A6cRHs%rm6-_eS(cEYG|edAJ1%p_0%ocr^)ms2Z7>H$oPa` z0KhzJsR$T*GP=-4w4ZuYVoSWx}Hpo=pHceAq5h>VzPQD_UB0# zE2lBX5>+K_j4OCf=U(7UVy{gIBhzeD<9du{H^H`veEfwTko7H*z!7OP;GcyEOseL! zcsEZz{jz-vKW1fdY(=oO7)7pUcL1ApeL|aZm<4DPD1Ji#bSEUsB`Ka&PD$3*I%+12 z+7#L~vwu~d6+NRh)bo%4S1@BHSgnd>otWmnrN$1B_JUq&SRX2n4pg3C>TYl5u5v5K z=5juRyUBF3T-+!}_aiWAt?1eTmHt|uX80kQvw1Pi2lC3m*=2jN)jmnB1fO}%n^LK6 zGxjL=hT;(wZ)g0o2f#KZAyN4R(=?C@jX+!wBn4B1%gQR8A}r7ig7Jm!0+c9V>I7df znZBx1ZsM^(RdVI@l_;}0Mr1&A$?NB*r_;wJ!E$$3{Y75d)YPnIgV+v4>-+bgpu>DR z`0HSBe0VxMJ3hldNbYomA{mEgVf%BTuv4R+V0wSZ`&8LQEagB7JoDvZ4ipgIOQlD_ zk6!bF#@NBr_M`Gvq1#>! z2aubGzoL9@Po;yAzG6Th>ntl43h)dpR?Jp$a8#j7OLZZ{w|zy6Kg!p6B3##&hXM&` zmotwjs!qdqHtzs11|?PNsSGOZfkg6AHzZe4^N4fzsTd|AJIYV>4D9INgh`C zy}|V#Fod-F=^x5KW7$}dj=<>9$C#wb4O}pI- zsiGbU6YuU|qYI|NWyC%MDP-&bOS)SAAJ*QrxsB^u6Xs9BTT_*y5<5izyhxLYr$}5# zSRerbASInIC|ROoRb3HJhE*@siCF>Hobp?!onZ# zY&FO`<{76aiLVmbQ4-{+j5!evPAz>zp`Ljxgegj|(Or`sw@>{w#AKCTHf+Ju#tewvs&|`Eb6uw}Ltm=Gcvj*7SZ*8TLU(yyWkApMmZtXL* z3D|^76vTW4sdd5wMN!@23O=rDRt7e648^9ZdUPq#sH}(#fKB{W!}NWo5{C#5)WNe( z7Y2Q^d0-)ur)p^v>58i{O6Gwyh|%AYtAL28_2GZGf3O<4@z=i^+GWR6clPUso;?a3 zJqjH^3PtW`KY+(L$Mjz589IulK2_fn7Luk`xB=9B`T;9+h+ykF$~Tr;#(`>+GZnzN z2a3DZuj058^FZw}TcCq!)C%jm=lO$q9q>I$dDH7F3mBMRJqH!H(jw2Ct8rIvSDr^J zE$e1HhnztdEL-@Ztv=4g{q~#GybS*aE9c)#(T>aCN@mY_Ej`|H2a`8^ew(aTIlUrv z#=Mawnp~YXqov5#C6JbaSA?)vuddv01|a|};9?utSc1+xg`lt`fbPU9BF;20kT_l; z#d|Wj;CEfIF_1mbfeS;U=blxKG@!UV$Mrp?aRDcXB;S`RR>O3yXRkLCPhzkO>=VxK zLq!2H(AznPQlss?Q0B~*#X=#X25cqPbAzRR25}Rc)qd4{nO-WQ=%Qu20*WC}9`KuP zS3<~F^O8-vdB#-^Q}8f<&bt-S#5eixtx}3x-YBRd;qFKe!_CDCiMfib0n!^HIXSYo zoKMy$qqkY~;e83$7}L^Xxj8XwEGW}$aJ&UaQh~H<#1=@z%Fv9Kr)u73LlU5VaR>>r!yX--KX>?xw_IU5I^pGJO z9yU@CocrwKTzOMMgfa61yHdA8nFf)4Bj%8?c`$oOQ`Mn)2$1GM$f&T#x3u&f9f}Fm z2}20{7EY4m#mg%!9g;{z>c9e>o3qpsIV-Mz;otGcU+>I01M3Y@4X$!yRHWYa1~z_| z$6e7kAo;f0aRZgxvbfzaHB|Z`glgY_U6w5EOUC^Kbv%OJ`P50He(S{BxsfM>@Xi{< z%e@-#ez5D19X#u_>DZCgJ}Z}?-Z2Kiv`NFgn>o+@>AC8GM#K8k(LpKf>1WM<{pn}_ zM6RkhVc_aqmZaJN)UdUSHrP#o#V&B=%)qTbsi|+}Yh2P8wgio#NnXm913ZwEM7bt| zHv@Yi>5ibjC4l1KIj~c&+Xc4ehF+J1sZdvIwyntY(=_Gp|8{r#uJ`t*H}{yTIjD4T zLVEf1G$8hh(>~-Jm{3|fT!*57>RWWt$z@Wc8TG^$0@+F=k-O0P3j2csivvT=RR@qXMtSn8|zxJ#(4bbicNy z#JpH{q=Z8FY~Xjd^JrP?4w{aZP>ESwTE!ZrfabZ0q^$#;oYc}}0jIOzcd?y|Rd$I??ZkU@H`P_NmdBZnhft3Eg^$-~T@ zvltDfLhJ2Y*g#Iyce|Y%xcrffA zo!tHj%HZj6@SEQ2v90ZN<_VBy1;tW%tgBkinp&Ikz)R86Y^5!@epx$)M*_)`TKVG3 zLtPJcMAErv38wLpc!PYwN$?a}h=1VhF8*cEgE}TNh^yOkTb~W#ib$=-2Dr{3Zn&1!@ z(N{3S^4)dhNOYgW zPGenyX-GUN$+8B)grPK?twIjy?2^C7SYnp|Xq7HCDSnxHOHJs6RrH7v#VFk(nNXZ^+`!D z6%2^$^;1*Z-z?e7`}ZI1jN7^)7+L2cTIyP$&vj-f7-hpFiS?zg3YR(is_>%ws_=QM z@da25A|qoPi?*Io@B*Hdht89}Lfk}T2Be@kotj|RXVjT_Lf~CzpYK0C%x~}h_VClT zf3mrMbNA`T+xt)AoCvqy_M@K>16Yj@y5;< z#`|oZ2OzKw@+G1iZoefS&{8;u=#zoD$POnf1ngip2yXzu?sQ%sBjZK!TQjUjIrG`7 zq?EDkV;UPV2-FR%q8VrREf>7XL@)P-jhL`yT$S{!D zx{b%;7m8w($yMJSlwo}_yy8gP-Pfb#Z<3FUGbRVWMY66?b&0#EW=KJ zG*RXM3T(Thljf=1;~?R7F37?vTOc`6V}+3FF!3JJQ)>V7mo{f=SxQ3nAfgMu;77Db zq+)OfOvXy1&J_uCL!s0U#m5Y!d4v;>6{NKQN&6tf81UNG2g%J<0Aqx^U2qai6H~m$ z!fC+GG%GeBv;dv}bfu6ZYGk4+E@1*lxJV6f=noq*IdutEKGJsv?Mluo$Ux3}l#m$J z@}wUlyGdnFo~}^Y=NEOt4UxJ+-U(K;w3*|z!1`eQph6)RW81;eB%}zU;VKDbMl4c0 z!U<{u9m-^kyln7V5rg8%48mnvd&|%X_LLSSh-^POYPhV}glb_77alq*iL4>b3;LXN zt}j=f;@*z6nbp!Qfo@9wtrk$PjeSKy3Zd;af7bx&hA@30lZMSB&D_s>x1+mWT;(L5>~&iE&J{Au zJ`kg7Y=_k0tNFr}ccg!F)F-Ae0(#5hD0-UV)MyD_Xtohr$E?5HgK!?IHgIR$sBdQ> zv1-(XvuiPjMJmJ6EMHvKfb3k6Vy|x>W}~Qre1G%i!)H@7QR@i+&L=#6CM&Zm7~-3O zFD^3W^ztF)(P%*TROT3Z&e^&0+*pX=Q?WwG*nu2f>)vBs)C2edV;vL-!lj-3>Q1<( zcQu1`ZiVyDInVAIW{Wj_TR~QADYcTu?74pcw%lUrAu#saRz8OdMnUW=#8+(SC8g68 zhyIa%I#~84T1k^Sh^+z#1Em&_CB)a+>3m<8nvQ*_ze1tq8@r(ig@Sc1xb5iBqdAEb z787dcDKi|*T0PLakKv-rrP>A1OfxnMiPw;6pR<@+nkeXPD>FRx3X%ATj#w42u+iHI zF^#=zn!TaN62Y_Xw~QG#gQFsg-vu@=K7tqbK773UTaW5=X~GuM)#3Jgb3*k`r?Aau zneK86>Bn1^8_?t{=`Qh9L=Dew(8aauCzL;mGiVqK8ox<-1oKr59GV+2=w{WGs@|QV ztBb;{?1v;BM6&i%_ZuRH0l~uZJS$>qs}Ik&(m0Pd=3yQUK`lF+D|kGTCPj$YS>dc0 zujH3YBPJaN6-42kJQ_EY7DP zH`PJ;JJv^@@-(}v2rz6(sD}>klRDizn3kdoOxA>3T6v^o_q^^feTdenPN52sYguNw z?K3-`jG$LTf;lTd$m$jlW)A*r#+b>s&yL1Zr-@J>(US{rY)%@bqYO>6M*Z*V#c0_@ zwK6PqpL%|47g(aDff`i~PqMD}2TYISezN%7#Ry7^#( zb0&@BX4|XyDkL_oM^iFgmi5%|vUcd5`I7xi92 za+Fz|ncUW|uV9dZ-S`w31rA%NVsyHMVAMC{WO8{`Edl;*@K1P@V0Cw}S)dC(wVIH7 zN*+#=P{8zAI!LB8?t4CgXlacFcV;G8WP&P@Z%HscZi}334}$}J85~)_u~7=O%)Lch zj|K**a*YlL`>4nbuca!l=y1SHq9{hqG@^UUi`U9OIle}^0VEMRIEZ39o}FWWOQC8z zN6^Lg+_)u~g3@VMxNfbZPzE9%FzJKX6a0m=4Kvd<^F8*1@h^_QTLqRRwfC4?mF2*N*ZSRr5%@AhN{#9dp#C@&e)3`WgP`6_A+n=HP4Ya znz1uhekZ4_MHk%QDHiA_1!A&U(mD~$5Gf)s$^@DTOEkmZYiBjVG>fP0+&CGiF==w# zEy;Cg(X#not8lfIB}FzFgh5`>zm2FdeBJCfT-}VEvVf`gMD3;CzyFQRmG0>51uyWg z=oKmP9)H&GtDbfERlSbBs@L&X^*Z^gUQfTO*R!wc)&I)L|GL@lf8F%=zi$5fU$+4L zBM|Scu-o>-?VC>z2yfWFyZ!M!jsAV{g-LbyOl)p$YWq4KZJ8VsN+R!NXIj6Uev$c5 zD!^U+bavp7z?jZ%6Lu3M9wZekyO^C{bjjT)SB3&w&~A<{kmL<6x0C7VHGE-6|Bw~S zwGNRHyVXLEqZj@Wv>_5V%kIgOl1ZSBb z&$Yb2jh{5REh9I(YL=}XX>AiQe`QqHO&{qNZl}MN<;}I9=6iaSyioBgZx`bXx)`;H zwBS%{%a{u!DMQPKQLGS@J&mhkpItVgpS!v7)7piWJMg>7yHlT#V0v+mPCfnf&%4ow zzt8R(B(JN7ZcPN1)ee2eX`tbh%SGYR#6bU@C&fHYvUfGc=(_x!tsoH2MBj+A;~IuhN)Z zE!&vv3Z%{=*)&^ErgC#0*>8PbA#x6+G?uB%@lLxIchN_WR?Y)uH1zxj5>h-FL+uAq z^Wq}(bq76=rnwW!^>nVar1K0yLJb;Z+z^Rpp)7`#k%|`p=!X;JzxkBVOQ3d`Ga|Mz zs_dJZEH|1Dqya53O9QC!rL=XAXR8|{$=%7b-<{-6x0yiTmc7z|XK|%ZcVKu(EBy*4 zdW3nNtiWJXcZS41laT`9;7~mp9g;$!>I9d)?z1(xZOTB`ox3svH9MTKO|s5<5V2CF zb*ZKXt{$3vg=#A7=-sNRfEKDLq875SJ<8vaBQ?1)$~%Sj2Xd~E%9x>xiV^snZDyj} z&5N4NM9vdBcDFP!z+ts>buY!orfGK=w%u-P@-VEsYuf}C3*r))H*{=`VjLTt;Fir< z2{K4a!msBs8IrR|KL9c{rU#N%8>c{33>dCpHZBtmD@jp`e}je>XE(#|E*QVxNJ!@z`9ut*`(_+q<#b%~OTGcX=r zp+vtGcJye0l1FZNtUQSgm+Gan#R6_J3@){6)J>vTd%|FSA0Fl0=e!J*DMGO3Q7nu+U z*Z_qN5VQ8(cRk8OMnUW@Vu~qKqLSg~J|h1hqGfvswkls80?Htp1lM5@=R&v34l12t zI;q^zOy2>_>}Ff)(nW;qyj6Y#iI0Rp?>U>uaWh+P(?gbXJDqMRf>GGk_AUo6`z`eh zFN0g8N0nwG3IpgJKyAsMXS}M1U3o*V$V%Ar+4Q8)!LpgZ%2@kO)*wJyJsy)0oXF

    je7H~uOWkka2hyg({R*anrF8Pby)3!j4Da3){k2AF#kWEsIR^#EY4egmF$&C)) z&=9o}cA=p%znZ+9&(2^c8OoQ8G}G*3311V<#wB}ASoK|M7Qd=DI3rV~;w|y+jwJ2C z!E*35YvAQ*ffzan)`%r*~S%gW+=zfg%;4nLdFQbkHPzDO^J=dxFKaS<@k$?*iv6XtR~5oY z-*uF$q=}jiVA}es8Y8P8H~2LO9td%-^D1lPXy9-fJX@)w#o2C&PR233DIQv}r>hMVgt<%AG&mGMwB?HY9#IAke-|f3)%!d0h=n)6^S+YIhZp zamf?UwRml~zQAx9h60(nU=)(ha8~FHXXZXwXS8S{!-vtp) z7V`0;KgDn2ZrHbIb9YZhGk7@H=M5Vm774r|oXTH-Bd-emO8=HXY1?^t-@r9hrZ6`j zRV8WN;A77>YiyAhd;_zvNDiV|zl7<534_)VX7xaJbxKcAu)-tGI(;B?bLG)3@GQVA z!*ZpHIThltL?P~)GZ0~R;+GtLT=+_DO`}M*i$0y4Rf5?(X0JmcsCjenzGXSMsvXdVWrqrK2&Z|Wy+Eo9%2b{*5O;WFRmxoaPoT$ z>ZOa}47OfOl9wJE#R$w`;2+>_6^b&&`(1-r;H_Sszcz4>%q-ZQ$wFF4YfZfAdvFM( zhRCC^G*VTiZ{YFd4y$op1@g0iRTEot?M!G9BWn*I#K%N4f32xr`~-L-L#=-ic)s1P z=z^LeDcUrq6CTG+GJ{qgr%esL3zT3s!2hps9tB+89eo@}4}h+-gzZahUU%E8X$q8z)nz=mhAX?Tt_zpkK3O`Gq+ zs@FtZrNz%BLL+d@v}}=W^^R;pHHL^xxFoNSE5?_JFv<&>8{0gq^><({Mx7uVu~iLh zmJ39QgigS0(N}6B1ll@Ax**5tZ++f^Pyo z{c-{mtZJm;%axuMm{p%N|U+j{?T zaQX4>{lmw5`4I!C*w;^9?J9%QM)WKMz60E57uztWD6pN2;|E(gtS{^k4b5m~p}}_5 z{&fwI?dVK7<=2mih3ZxNim`>pPBNqO)L2T(V%XA*kVx+6g}il)wCYH!8WC3=Am)3Q ziOH({$X{s8G*1(1g9M>;9c&%O$)z;{yDQP+jviV7P|ne4u$XE-qoMhXeKMY{q_N?i z!EfKa*#7QVer(D-x(#cwfNOO)sR~KX!B>mTYP5WA0y5*;MTPLh%?8!EQ-4ZpI9E7e za8-mKN0B5Obu!&Rj0{$c(n{>fA&sXHk(i6jephTOEKG=BthEURfo%ih7v0P+L;}^>>cyRyF8s!{(Vz4{7j2-%ghPm~ zAIk}LA0!j7vzcf$8TAOJ$q2u-qK0u#u_71q>FD*TOCb4zdZqQWASav#tsR5|e!khq z`pv9g6-Xau#*}Hv6&5SPO;Eu~yI78M0#VL+oQumEsDC||u&tK}1~7PZ=Y5SyCp#8Z zQRPKPx{dM)6hrp;M_O9@0TnH!T!O7)VgKObKU_b%v&WaaJjX*QZ+i5yMHaaH<-B7* zxG(oaFDO!+sc>Q6Z={og8Hw zw_h+TH#hKPNe^>4F;lapgWeBzbnPe_h@F4UuqvNxzVeEd__5bm#)Py4tZJ40EM3 z$I0{>Kkeg~tDQ>5Cx6icNQqf{wDSQ7Gl@4tpJn&EJoyCor(AB8Az0?18C128ghv;B z(sYeibX3%Yla3S1z`Wr;a!9oSE1F;HmlyZQeIhaj!N2x{^J||Sey*(^dM9@j{mbZO zr^7%$ZvIB;Q}~8XCgbD;o?6hNA{Kzkg(p2EwoP{+(YJPJ^*jo;S7TI*dcrifU+6nU z&PeQ2!)g$LSKB-N)qG?dk_*!V-rEWPFypEEXx4S$vLu&(rA1R$DQ2OInxdg zm~`X#+|$e1Sr~YbeYCW|L=AH_2u^v@vF8H}L zbRun{`N!#pKkg*e`swbbM{A~JPk7ogCp`TOua(hi!D!x1m!K;rd`0)hle6n{ zh7pkGh@jhnZ5L!%P`s{*owlEuPmaz}0mT$y)~&6IojoWvad4MngG&=%kz3K@q7eAlr3%*>v$0C( zZ63b>eo-ODY_IpcOr@L$lOflUrQA@#(z=5FN-Zdn$*ZMQ;C+lg6;h)Ynz^ek`xICuvK@UO~AKgN>y5t6Q= zpZJa*>;4LnDGeF?jd@X)cPassXR#YL4hu##{EDS(g^ZQe3Zal6Az&ZIDqw3q6d1tp zGaqbDKy#@V{Wr4xp=Ofz;gF;aC#ESfGE_Qr%9gvV;S@Z<2kF!5Bx-QO3wwPMP%)%0 zWr2$>TKxPWa?KVBf(&Aq#gwKU0DPM#Oy7=BL3kbh#bW9@AwamZD~bjKhJu0h>+XeU z>^^(-8D;lauK{~K?LF3OHNv#nc?y%bAFpWYeCb3YgcZSBHxXeR+_Lj+{uncVM*wfM z^bo#ARc{wJvxzI;(h+suv1F4ptYB>1iG$h}3uvA}qCYx%*0X$}+`5+NDU1OrgeS-T z+HMzHtesLAsw>x;7Err@8(AI@FUOHIRlX5Pn9D%lHCE8D-qJnWOngNbxYPky$|%f8 zRXsdk)ufUq$d=50LBL;1;OGAT_|d2%5LLsmDV)x!xku8q%%(vIiR%?KL>O zp#c`kk(8Li^}S>#xoF^xQfP@HPjCSS59EpGDR0D{u(yD^_4_e))%Vnb8}3R?pBz(* zTyEiYRwSSCHRg2E_piu4;~E9*Bl$I^eA|3n!8W*dq1DUx)vvd2{*HINd3d;g|HJ2p z+wFFLpVu4%63=aiT9i6RE|@ z22SPa`jVsi^s|;sCw)3YjuDKyx39&>iY(j3Fp@O6=3+gIKKgJ;KvuZ@se7it{(H8P zFCyN*wvFog+LLU>P;~&AEnMA4r!BRuZa{;iI(2t7tm=y!hIE#oleG!|P2n{Ue2CH^ z&GR5;Jp+AJ*Qjp<`|fNEUT)ia>X<-|57aljLJB+IB_4=tQ&n})qpHC=Hus@xCH49; z?9I}#msiv;p_U`+v|RISzsYbUhY6ms#5#CZ*{Xtp<)WEC?KKgrtz4Ehl1CgQ4^w+e z1Sv0TWQK~tEUZyi+t>>Fw^*|td&ARAs%%t@7t&52*yyBLls**7UKruRh`Jv?q-V?x zC>n9LB4)gKJ%YrW*CQ&tdHoQ_xHyVU5upO*^>zo%PQTm)^PNVlWvQy%B8M-e9s=c= zaezCZo4qtuO7qY!s-Upi#>q(PE%1D$3G_tDtcLj|IPZ>AE+Kutq zo5^fCOxQ^+EjaJrFw{g5#(q#BI@?OuP)$RrPida$8kW1eCtTlST~ae|O0pC4=`PYOeQs%&UQC1TD`f~29LPKe47 zgU^DAo{!B!M-SX9oDCkyD$wlsclz*CJ4QCT0nf@tHtzu&(5ruXK9N-69!a?rla0yDyWCR!S? zA2uHI?!2oem|6HqSZwlVCkNk%L2gWx#I~ke_l|7)Q>`~H+7|7bJ};De-qOPHn6nnd@+ZVuhY2<=Zp*8(>S3JbcE*HE z%Ne*%I+|4%7i&+HV=;b^0ZC5|N_|&A^49X;lQOt7q9u1>Ir0&c8V8C)T0^Qtn6aCy zphYk)#q1&uviT)z{Q|5lyp8+tN#ZDrqV^f2-caeMT4=|Io5k^oDF$VHbh{hgd=2Dk zE6%*NWUNNe>;u6BJ__;PMpbsuYjgoi3#Hb7Osc$YH6%}+=jsc`RE$CS;z7r?;Z`Di zjxNaza;wSd=^Dy@Jf^3dX&K>T{OiSZ^O9-oVAOyQr~7V6O5X`hyW1UjdaD={xr2Lk}qm+@(GfnFU=3OU}Gwf=E6RJXAjm?F#=Q%@Vq!>3`z`eY0HXUc2bNj zu3VVKuX^Nlk{6n}eh?8TS-fy5YAA#}WSLqKSV)wR0?JAWTOWV^86{}r@cr=#`*<}3 zI|R^;b=d_uvJwQ$6E3$_dIEOV`hupF8%cFcN3*FLB&a|TQjc(~M0))6G=Q3MYy}(& zWOq1w?cVGA<^^D$BJyW{(gWU4z2HA}oLLWk+mW{u-PZ<`@Y5AEwZLmKHUgSrrtSJLG_y_Oe@?Q(c9ZjkR=I|z$>q*G(u zb<0rM2~Ri-eDbKjj!o9`Y8Ft#rI*C%j5rpGEy))t(!?jPyGNQt>a{^KREEA;M4^P) z4NV;%z4F{ahlUugN|3FCPKPKFJ81^|z?=QFGMMuz+2pdmUNTy!muRcHbk(GiIJR`d69ZI?=>m7!;ab`GchHNd2 z)m+|O=krXg$ym74v(<~H8l;A4d3k9y-tZ7!&N6BCRYgAI7u`jo43Zu(O|cHd(G`h(7b0DF=s##|MYc21f@dwbsA=wtuXWDJUSaf&GAfa)`8NLME?zA6vQu zp5JbYhk-Mj(Go5wsYtg#$sd+ZtSuBp>}Wo$2Fmff z-Bj=?>eO<-)V%57-`h#l$KBaHj`IKhN}%q2P3vLMb2Us z6}a(QcjGje+g8dF-2H=uRR^%v443Os#nxsv(SaI@D1(_Jj!ScdwEec0=I`K3=?x8& z{Eg(K%_IdH(BIoE5pI`!g`~mA8;HO*WNYx;xb$xcY~>vcIn_S&x>0UPFx*fCinKOi3l_VO zyAJBqEzS!9Z4Gzq-yJ;) z%Bwt^k3?Qu9?oV5ooJ?C!5Q{q43U22ShJCHk(=VNXlonV0%VOFL^EI5YK5u}#p>!h zm?Jp*#eI$iiU&K~R+WtE#Y;wpt`>6($w{WrSV40R88i)>THOTG;|%HQU1ptFzx*B# z{T}t6agKBy82J>H(eXwU#V(40uqSiQv9Ip}=LlUDTfQ6oHBrA?j;jPdB_~th4M(k~GX>5K3sr~4j zIa8B(QbLf2HIllmmIvEA{l&0M45YXK4bEC(w);sw)Gv*m@?mR3U{?CueryKYB<^Wi zYzEGq!SuIZ+O`rbZ4Yu#p54q0JrXW6j#%YW8e(Qn|J($Sh7AV z2}H#&szvF;<;0Lo*JnE)ZqID)O&yN}(;&5zU1iWIiYHk0O%lNP8T#Q9+xBm+yXgsu zA-udsr1Nv?PI0}r&+BWsIYu%Vw*W%qO1@>m>cp9JuE_ja_$k1-U?S<}lTbr&qD`BfRN*-zl(nDmAHN7(*9DRNE(sHF7y`vO$v!oEKLJxK5 zkE*`p9`yCTUbljKzVQL3hd}tur&tlCnb|zBLJXXOY@2Lz6&a?=~Y#TeF6xjg|74AdG}j2Kq#Q0XJ9^ zt{XWh`ZzHmLsQRH!_?iy4p+^MO@HTenZ%yXPP*N&CZ`szW~ZMKc6|HckGPM@y{V}ltgAZPRDqK|3*5&o zm=k65f2wpydE3wD&?U{yyyDiC7BHNshH!SM6B1CbNc2;= zlBHkOFW)NdDh!Q&dPs?}`%OWh0n`mNdqQu89FeYdGNlvwpHkaYOmq_j{6)qQay@pS z;bxQE!bopo8}z2NV@&cql2Z)v7t~`6dkg0oRNI-|A#>H;+uLuy1FdCrVfI(TUDBoU zEnG8b*i0v6>CG&w+3EQE>owjBp!7v042A&MooCb6)Y@9+;gRQB#)RMw=u|H8&aCF$ z@ff&TYty8ggpS;ziX8(VaGMqyGKw`=H^t%_rsXk*lu}vTmWpr+Awjj|rahV$kns}# z!=ntJk{pE_zAh>S0!LrCj-H0=C>^Oqz@TPXB!zPb5me_Iz(;Bo!<2%**Y^Tp`Xskc z*)Xzq_67pvrYw!5cO_zZQh8=KVS1;|mTXUF)zyPflZHUQj--DP{YVYg}BG4 zl1syj5TcqNdi5O2=_?OR{hbd!?0PV**+_AXe-`ZeJDgXj@Ai#Zen zu!Wvp;qReu{l-;@o8UzU44dDny6oX-F zz5c*!xjSFw-ySVJtI3XeRDT()YkbaL4of^`YBG$}lqRGcl+?e6Ct#v%L4_iJog-<} z!+^oVftOq+feyUM_0q+sp)^5A0M8z!RN>L-N?BX2$)OFUuUC>wnoh;+oY_7ouUJ6s zDe~C8n$D&RQHS8(Q7hnDCKORHyjhVg90ugXY&)r;dAZzn<%1!U2Z{%C(VAorG`qL| zt%beDB{=SGd*Ak0fJ^E$DPJIJFIK32c!{$*237Kn&$tPw>pHvO_D}Es^A@GbP$07) z%9RSwCOnDyGsJV;%%FozUzZ#SRb$|&SMn7m&5Kidwu5H{i&TMZARZj*<_1-NZG%ifcXYHZxt0ZP86z^vlUoN9VKbE3e2U89AoQ* z4*UjM;M+*J&A(#4Dm3jql1+a(L7>`7Aq8}wv!>1;k34wwO)HkD0O&hegaZN%NkRMl zO%P7moeBSn0NF6;X$`Zz?MCEB!D*`u_pa!}M0KU?;bo0hn;#268FGh2n1CAfYzgE* zXDH4!PJdvs@%8B(qKlMCa>KB;UZOrspaqSN)jhW)CD83WwHuUOOZ8xty@UXhN?4W^ zcC(}wsNKjMrh!#7ys2Jp0Cj^t-OQkU*Um;uqgI-{H?Y^ z6?{_CPId7~I&Y93=^O?kaDYIh%k2;Ue7Jo}){ukYp$@m79li1wd3ddTkvH^3B3==T z=Fzu`nC9f9Jh3~x*(!yH;V-5oWjXX1VS#oMNW+SRtx{5j7(&^7eg;qXbv70{Bak*^ z@x-KyDWWK{E;sQ=-MZY;^6dz*`yGZX{S{O+IH4nrq|f?tj`Vl55eqrBt{RoGU1^3E zWOSr%MB4~zj;o1uPlbv>M|2%7$o;Ma`V4oR?NZJ(K{kZ2vv%@!8K~7E^`S^;K zrIxmhPKL9m1vfz|5ayx2=|f8MkXM{Ym7jw~Ff*ecExM1HoremIz|&u{4ymu*)?J*< z9eHzXRJ;)R%O>z*rk|r}U!9q8Rcr=hfKqXlxfr}Jzna^)1o@Pkvu+q3yrmiB_rkzO zV$||zXh8NpDWJnD%qV7f1bgYr!(RTqJ@g6WShyEU76`Lvnym;yX*-GWmhfz~Tt2We zbQ8)hu>5DRXUSd>r#JTncW9!9V{~t* zEANe5=FJ4ZH7p~)l05>O%s2<0y=;L|6~eOZql!#wX)#H(2X#KZfsRwDDuMzDc0HVm zsoA&L^7=Nqs)uu(&c--lXJgE}j!JH(9ujaa=mu2gVC20SlE2g4Dw+ykoz(KHf;&=9E0 zqIT(Gl(n|zohRfw?ZW~#u+*tce`-zb(cEK!9!)b?6Y5(JYqUE( zP8*ocDjb6^;SEuq1oX~&C-)hqiVbW8j@SJ8VE>nQOoHedwQqjCI{WbP?cYDSYHdHa z|C%&qti;#uU{-Vo;?6`s>c5R)T$jpTrdA|THtl?W9< zYs4v^ZWfoQ91=PKgiugZFnP5^5d4P9oF}dpKoi=X4a#zla9$=TJ3`KmR)^7QL@v%w zn-fxOiIc|&E#W0D4R2`Qt8M3r=#Y<;Spo|4G3XG4zMtOQ-Q9j*og(oz)+{1gs$L%2 zqDge~_U@RjCPDN2ZYf%j`W z9i{#98D#mezo5#19;e`K#(~_iK%H<~pdzRnx<-EPzEZr}M>&t-!NU=wqzS-lZ*K42 zeZ1eg*ZSz=-H-48#@W&WxLca5v!bP`X0`hfv(Le22b$8!x5KBy@mO_N!2y62jL$bn z29^0hwzqw}5eE=>dgpg`fsJ4~Q{Qv~(pM&!RxYt2Hu;&|x3)e2IU{AWI^@@;8`dwA z9nmG&3Z$o(XRnYjTIM#$tnT`M@LRi9c=Bs)R-lrXjm+!(B^;Vs7S^O5*uR<<6qFvA zhmi3zMO)t)n}8VB71$o)plB;B2n7TrPkAI9paI1_*o{xSC4>gVmd=zZ-JZV*mM7Qk zUM`$O%l933rb#C|9A>*a0Qtjnp9&Y?4mWrcJ86C*ZN0-SGi3ahxw)A^X+$AfW2^-GWfBQN(e7Nu){I>8VJRRTwP2bxI)@xFL}L6ojZr3ZSkq5# zxWYiPLtGH)oSopd%A04Ei9fo!5o3Y1gIP!w4!6AzAMgH#yc4d9K+t1(rp=eCKWTWY#xOPU7r9q@X>nhA|hEjW3wbXP;&Ln0MyaTkTN_hcaZLe3?RzK z4X&iTNi8j#7RR)-F6?_lP}@Wh7~F4*hDKTyJ@nUETd<0le{fV>ZGM3!U=GQI+7X*9 ztF_LWb3iCLz!uggOq#wLAiu@PJviCTCGJ-G%76ZH3kR4Uf2;C_?;{q1t{tYvJlcMRJj^uDtB$ z!7L#=xaNX%Qq_Er%kf2K`-qN#-Q_S%%9)wJzcQP>-F^JrLtcX+W zX2iGf>i!@dHnRmK!%eBI36N$a3pEge%kRmm*o(8eD4g1qnR7unmpnW5c?qWXNu<3R zgYCi}8#L*WtvaGd1`H%|Z94&+Pl%tnBmxT2Wc!2867}{JR}p_`c?yW7WawtTr8*pu zH-y^%z>Z?6_CL^C(Q3PSr+++!+Z|q1pe6<)M1{>on+#eq4rpEvu zSvqgWN7f)d(s&FVz-*4rt}E7b0HHFK4N9Y#V_Z33itQFo`ICJ-I-7roRr3K(tJZ?? zJiZv@f-So8`yEPHlFbT+{*)zl2nJ1%mU^)s&5*AG&fy~FDzj9oCM0PL%rd@%-3LzW z=uoO^lBhK*)!zB44yERJK-B_j71EaxON!3AAp8o(1-sfkN1kyRgd?I{FRUQVm8a1ZWVDy zh+1RaD??2k5ZhA9`^i1$#=x@l0P^A^3F+|L! z4xZgBJP$hYzGn|8*UwoB*8@bWb4W}=+!&M5bL=zj+$v1HQ*m1LP}oN<$_TIdcR&1d zchSZSuQX9jf+Nn|^-@yBxa}GUU1c_Pj*~oZ0e2{HtIH^Y=9m>`2TbMwGDqr9%o;}x zFesyiKkG}HH&c4|;m5Hwfy9|9S0A;&c!j-oH9Npfkt`s!^iZv>2^F1gRRKy5o4Vgl zl_A9K!pA%Cx0s#^=u2xSAaXk)r~wzw6$QcYhiKp!TSr|0t9Ao|C$DE+{`NaK&A>Wg zeds`gF6x2eLEZzRDm=l{BXJ;Yx{fuQvOA;|0e0J54hPe|htHDe!)=sKfwYNLwZm=a zcYBy6nC6b}o5IkrdWGOgy-R*%i4BX`J@D_ot`eDzPq{F55ROZUFIhs@OWy$aENKnh ziq@?|%0P{!+{{jd<&)ViXn=Ig1uR=2=xUk zD|3DaFp6biz2y?n3HPse8$`I7lfiQalwJ)p)d%$os&@i<@Gc?qxoACmLFwKz6GCHfwTg8 zI2eqgxKJ&4b#%~;H6E_4j5UTPY7xnRXeVw7RV!b?l^IXzh0~fLLAWVve@4rf|Ank$ zNiow}>rS{(J3TKAy`TO4`WF~BrJ|z!?zj57QPDC#X|ga^O7bFYfSXV4KpBVThC}xj zHNzp#G8Me9U|(e%i7ke#n@5i6JwnbuK3e|qq-ut(i2B@ACb5VPw+jApyoI8S2xYLo zEYRqE$xuK*2d;o)`z-1HT^6fAwyr>7%mX&yUpieEau7e3rZjvFSI^WB#$R`&we4lG zF1z~}zwBqp$f(6iuMbVf6)k-~4~?Zm-x@x1u_+LlX--_pL%&)g;9P}(&)|f&%z9p> zfM1apL0q=mPGqVAZGg>=at!4`s<&dl29gZhg)ey+FEEP76=2;R3_qDe_J{5&;+$Nkz9YeWL{>VPx~TOb zl6}AOTFUuC)-ixgoxT2#$;t~T`94jwFN5`HAvC$4^jn3z`k%43&?h)6mN$c0cuP>; z2cZV-{h2QYs@lePFC{byVY`npBjEn|{-FIkeDUS^wmU7u~ zXKq!>WuA?r^21GL?NIDDpqfh}BI-$zttuHi3mla|d8OQk$`35{R7CgOQj?b!YElrs z3Z!R{uJNfe@_*2tx2awU&95C8u20sAQmK_-xw{z>-BXxMf3P?Z2F?n91b#m;{A@#| z5geoK80X8Lkke462ZyFX)L!Qb_mGA*kedw*mKqEU3OY{KXe#v-d~rvY@QO#}W_vN4 zhKSaEm?hVvPJ2><=}WnR-93Y80+}(2|4bZINy8P2Q4xHFp_*i5wb^=9Jq)0H!K*Ou`RZ)sz$o&!dfp>M% z_hpGUG@z`J3Hu$V6ER8!L&*GNV7Gy$vU5gp%_6LKIcRVm<)4AcP&%`QhepSPLLYXz z(^k&Y-hl3r9%BZ}+?yx^$T>iGE0FZ{y6KT#!!#>q^0J6EP(H;z9sH(nwa_AwTsy5N z&+t&86Xh}WE^;W*d*|)UoS})Kdl8Xi>)cu3HB!N92A+3SmMNH z5vJMAKd-xBZba=4@$ehu;JcZvXQ)0yC0>f$ci>V8lhg7YAYs86O)JGP7A1R z5nZ8+Kcy$30j1LZTpW+k?;Ekip7`q2a8metX1G%M|Cipw&%fM*wWrF_Sz>IeZ@)X; zeaB--;g}KuSa(uojl|}$m`vA#M}VeDHqvDyx6axuWhzNOE>Z}2GN2|)q3KGnJn62% ztT9_Egqo;nxe|_!%`6zobI4dAZ7vZ2!=f>p6l!3^#aap5WG$5@ii&&lS0Ui#KtinF1X5>O1DiWB zpFd!GBo=61`h!qk-1D3v6{a^Yp5#|mH{nb7;|zD)ud82mKM;J!{k&@SEYV{e?(2Ef z#Fg)=r?)%Q8t%ldgm+MK z^VWtSvD8$kQda&2AnwEfNyzZrynZ0wqjB0)kD5 zd`o(ms@EIWh33f&-8(Eb_(agmoLfE36$NTbRKUqnE3HlT z=ZjrL35~Ki+)^Pr*Iy*w)-EA7@G!ZyqA7bBBVZO=V10^2G^om%^@9<@ zP;#9oA`w6(#}_n+a*~aa>HXZjv67dVmFo1Vad98hkg+m7%{ec~*fKtY=r%!kD8j(y zPJj64XNL#JN5_XpPY?Tp!{ejFThy{WoZBQ?X7551OVl;t$wA>^=b$`ryM*Xy7_TUW z4AP%K=>W?f*qumehI)X!Vz$0~xyp0~Zy5*x|6Q5_{~&XT?v$R3RF`}9AOy;wxX!9# z>vVzbXn4}x_>z+R1W2D^2-}^>GCC6iw{ySKG6xc z!MOIh(0rLFVSy=eu!td&66JE`US_7wGexxq>zTm(u0h}x+HT1b4g6_$A$bH{7HeYS9(D?{ z9k$eYA|fU=Mu)syW^O7}beb3ACOa990Od!xds!zxkznd>lLK2ak013>el{x0d;zw1 ztk+fuqX<`ozp7oUq7{={VTV(pA5_IJt(%;N?Vy0=FEe+H&S?mcI+r^wzR6EX1yX1F zCcZqqnZQ{H?kx(8l9N?jR~qd&coNKf7rL{AIrmUVXqKafjt`Lsl@2l=Z>1dHefkAX zQ9zCzVia;QYED{tfZU^ne&2pdO@@eoUT+o0r=K@Lsf@85QUEn&P`1s@c{?g7IcJ=d zFpXK)*fKD$sN<_L^^#U7T#K7)-2m!Ai8@l-Gwddu2D0~(4y-5KuV+SViVHSd?z~u{ zp}cU+OoOAJDet&4u`?>OFtIC06Sv61jtJD`iAJi~k@K-oG3@B!3mRy>Yo>uN9m(s9 zMb^(&&q-3AA^PCO9X-KO0}PkgGHVLS`UKY}+oPk=>(P9IV<{CK(t5a`*t(~RVn*ZD zwSZY?a0r74{LWA8>IUZDb{7#3^r_W3(T4GmHAI=$O>J8fJw#CD zV#5%tUdJ`%90^{E`fseqnRLYT|GVyS01ZvbdK91Q z9zhA2M94HgI%jxG-i~z~5+6^@Iz-yjm!MOtjgbyFq{44VPf0O6Q<&m}rG3|=X0dC` z4P*8BZu#-o+xzjyU+*M}XiFt;j1nxO4*LOgA={y)ETA<3%`iY484ipAZim|fk%sVK zquSEMzoMySrd58Rer4aN!7zjmaE+E8epUKlvy(D|n9J(6)+lG7cScLY_C$}5dPXbPW4ni)=|b=?K3FdbkUp1(jd`Bd z4{shmf7%XTe13EPaC`r0`uW2LokRg;NCl8seX>Ge_gu%$Gl8)z;Q4w+T^lr#-%m#N zyL}YPY+*cWLK)Iw!O%C5c$u*ijGo$F%<{gzTodc#zt+$k*~j?a4dyzU>fuZ-cDqSx z)cmUSV)Ay(O*&dba7lfM$2g+!NiJ{g=xderFeFY8_N0Q0#F zF3b;lYU+`8Liwd%W&W2ej6_I<;-y$GU!OuL^94-<2HD$h#OriBZkt;YVEQhjEA$oi zR2+Jcg=f%Rb2@<&1A@3_*o&}kQs6bd;o964$ue9|_pCM%WPStYs>tAl%8Ps3m*9u6 zhpN086f+MyhM*&6CK@b~My5ofRIT$cBOnLPq^%;x8Kh67Lhh1;#55@{7prlJ8wk!x zzL4=#GG=)8@Zc~Muj`_g-EC)e?NLe5U~wGLclOcP;!D88sm^36em7ydA+!!n15Q3+ zv(X_7x!G({_oi8NEkNbLEr3U~84-x^Hk=2;j#%E+rULo9mGpKz(PH8TjOuZ$KqB?C{K;G(2q{qWOggN*AWR)v)G?>q|=3UaMAxO{B^ri?f3W#!*P61&x zJZ#&bJuELphgxoJ!+ZInDZX5yb?>2Q>EpEm=04GvGOWpNB$x(i&j%HUODME+*`{u7 zJu)Aq#prO||Ym_9rOX;$TBv)47^)@*L|mF7-RAwtb5IT$!? zxhhW27n6HYa6F~cN=F9=Sx3VlhKJp`*&D@tsk-stYT4K) zHeCs*kLTB5zpq}5md1RdvALW$qO!v@G=yZ#q9yH$58+2>{1ul&%9OuPxrcr9Y0WP& z3=9B%b2xf74`%CYM#0puH0B6{DU{E^2|*2N48sg{M`g89WH7ovDoYTyR*+fuKzP$;UtuvxQ!0J^i;X+ zGLyDoe#AU!8MZb3c+G{%co@eO&d_x9lS;)3kB(Qcvd4}aOPcEd*v<)cRmtVK$zSW> zO5AV*D6Z8MBBrI(SSNas*2x1KAqJV`R9)r~af<{!o5EymCJ4L2cS;?X zHxTrL3KD@3R2JI~5(p^|B@7WJ)x4lbS)5cb-qR(y#X-Ux-~$FX0pA9teIHS-MHR!d{AVLcg(I*G2!- zIkFb++MX?#zFO&&=cmuT3^#dFa>~gga!^U04UpzR1ljX_BeJUGxf`IoV zTwR>wN2okDs~nTO?2+_p4A5anQL%-6>~%=0m^Vugmfgoj&ksF9X0nr>MeeJ$ zVZ0Qy?6DVv&|kSDvf1T$=a{}{qtP&Y&n*2=>}pQn;wm@=)Q(zE_VBz{)IMv9clK~2 z#t?em%>wr&BdSl4DJKeW{!CM{76PaiA~Z6^DYZ4{Piq*q~E&O%%)zY z57MGqoPRqKFTkFzU!2%^2qz&Oh=6E}nmW%54N++&^&x&JF*Gmur_+3cPp4l)j}BK* zgy0fQ%K!EjQvS&6!RVwhg7B>E*y{*PAiSZObp~}89T4|g z0V~yP%tf$5rJ`0}mB|k`NyQ}s4*GAKIz=Y~GfLkj#y7UQ$)qWThy__pmP|j(0y)k} zFpU$rsxhK}$G!ARUs)WdL2Er4KwAy!N5zs<=vPjQc3IuD^WC6s!$`g#ew_1F->Lm= z%G6w>NnO9d`A{H^>&CHt;6wygWtun@Z|j5jFw9lTHAqyj-N1bcB>@0y+w=vBjVwca zY2x5_AZiSn4@9oC_jdy6qtm8r!~#{$d%HU637m2B_l2`9>V!7hX~|5bE!P@8({|jXAIv5jmsp~|V0RD9aM{z~p zC35N!3n#s*CAhGI>lLcKR{=DQl)Ir%VRbK*^YZ*izy>IMhxwSJmJw^mSWM9?mXIs| zEx#T1=g)0N7!h?Z3vXyJzGoSg=*(K^RV#=_!z*$qf<>oM07iS#fU^0f$}oe1X^qh0|no|+pipSlL|CSzbwOPHI(cJj5`F;U+)x^c6##p zuRy@+Bj%NiFi%$_H2t289KegdeUwnXOd`2BDR-w!{xZQ0xv0k#$6jxN8^I(dPt>n+ zDG|E^zdVOvI=m@9t;bWET4}|(xxdF)kQc1+1zO_*sz+)MM_R=u|JeZQ1|A&LFDHAW zzZLh!A<-kQ?Od@{8u}ep8@XN=2AwQ7H8ch>Ple7V3y&R&1?OX(bQ)9ZF+M<=Q&-!& z;$7K-?7Y|B;mj_vJ_p)pg8K-89 zQw_`SHJ_V7M7v>e5yNBAZX6fgPbbSTLy*R5w9W&zGVYj#t2;knf)y_>g6o>v;|Rke z1vNR7lj_bC#zW?|_O3=|4%lh7oSm&e`TeF5a|zNLb_`n92Uzc2`z4-*(@Fh2_}N%t ze^m+5n~W7X+9siqXxI=`2B{}=-XL&;B}o(1-%Q8D+FWe5`W=~=@`H;JLf?RAw{|0_x zjwfGY6C23snf;6Y$`r$smnP*W5DD{FoYM-;ZNkr44?TiO@55Hd*&!gI$jt z8AMAv#!~88{^~a0!S_`#nU)r(IBrlR7g}x3&idiwFE8Kx{r38o5lctVA3;o@a#mW# zRP)>gK+z+#dK=Dc)OKamTto^#+5aOWO>)0xLAckz-Z)dUL* zZ3(p}?3CKF2J*ytlyS(}$$QB2CQh4bKb&+OHKbfP{Ral%CF~n%P zlO`3^AqkKs1f=Q`&dX<`vBE8Lv*3s{LdKV4yxTGzoe33GztyDl*px}dEFCv`^xHno z{imgP4b*KGbjN0*K_*{EWUS4*1;B9UQDWtZ?6ofealvm0Dp}^=+efs~z_e{ekS{pA zAu2Lo&%;{owzgzOC^5Lx1S=WoHyGOPbSn;!W;{tGZAB_}{mBRe!9No&#StJmet~PX z13IoJ%9E?WC8w4^^IZNCtnp}1IBIm0TeS2{Ep22Dv4xG6;FN+uYtBC3e|nhT-u><2 zr)~e~=Kjsyryt?Pm9!q$Fu2brSLd4xg5m4Gp2E7c#{*eKe+@&w?iE^W^BD)|K1)$# zWZzp-C@HP7B5Fi6q)bCFp##_@+@DFxFoC^3 zka7gvZH6h_ZnGT%GZ>)L>ed8_xEd3@m}-@yk(PGq*|bWdMMXf5$h?4zDHA{i(Na^9 zA&N7;ogr3bkN#IH9_jPR8hYr>qJKbb&Vj3QRP{CGsbs*0376@TqdvC*VIv%O=4mY8 zdlxJ27yN%bnV-I%jFARz%Nh2IwdU%br_VBej%%XGFP z>+Yz_ayXeJiO56wK?#%gjD}loXB|RENxbE#?SbSEE0_(pA>pjRtKCp1Ii^xzziUhE zc1c@+JCjy^b0CBTi5iBh1>Le76j_Z87V=r`m~_lNBH>)S#3i)4Peu&xi`_{`5=`B< zjMl?`LK2>0QR}0%vxC-5g4q0dOEE?am0@{oCc-vZD&eyLsWVv(WEY3o1(ZHzc;WHr zAJEc#0dqYzn1(L1efx3{Rm#lSS+FDtCV-jTM0uKLjjMvKj+?R8TFJeHp>Qs>^MZyLxf!*oy$_T4XIXL z>wgFnB~NT_YAaG;03O^d@s%~(RYH77Hqe?Gt*#06O_r9GlS?J^S6;{{&}eCQ>dgep zd&K49QppIcCl2-s{2JW)Dpxg7-a%#nxY~#|)sAwXF3T~1^~I!|G_6OyYS~-h78$vL zfPV2DYGs?l*iJc_jfhR|rOy%qw-C*yVy6P-&K~-jTwFRbObJUC;p9Vvlh^CYO#m4j zb|8y1$1JU=UjQAX?|I$10%;&bmP|#6I0TcohC;dZC9Sf}Ve51zpPK4$@~RB1tI^@p z$OHNLM{pk7(a-Pp-~Rkg2|M`Tzy8&55i`j8AxXgs5MXfo&1y1*;ERLuKZ_pY_n+SU z@Zq-6C2tZcDjs7JWrqulkZ8v0c_ull=eD2vPcfO4x@jfGq}JQ133W2(dp_}cv5BY@ z3O_{I$Rb{-2uLiI*{1I*fN9yV>PRHjTw;BRL)4Y0L?ztk>y6nGQ%md08&Z%8lXuH) zK+G-!r3?_-HfaEtn(t+GTbb`}~S#3lZxFP?bO{?#5AN zCo=-9yody0?$5z_O;+H9;5#{;o=lQnfP;{jSR&S9nM{N%fsWb+9j?u$$S9Qfa4fCr zr<-b@S2ck`Lq(t_NCDV~v~EG=FfW#CQjEKdM12>?yrHML{@LUpL~bHNoFC6=*ykUe z8~fq<=p{Rt12yw#x?Xx$7aXxE{j9&xOJt`axj9j?aL59Xz z^qnW=UEowDbJe;r?`b9?_%hg*eh&%f9du8ytZ*cAU~tw@QI(R9$b>t;#CH$8R&~-4xlHR=e@R#%pk^a;MNpo~HUcz}` z(@reHfKZ6WR9E7s?RcD0vx@&ECnnkT0HofFH-odc`#Dr-_n*{dNwwpA?cB3K;RY$< zeFkgR&1~Vh3bTtx$87$d6ZgbV z$>m-9*9`U5mn4|hFnB$1J!1A!`DHSIS8B?Ba$ur2Jy$UOV#g`pb z=ch!kuvKV6`TbeA7q{7z>UGghOSsNxt*L;;H#cKA4y~(urg@BKv0IHx5G6m6JYC50h?$Fh)F~XLB=^-Rnf*Av6rxO*8nnG{D%od>Lrx3 zbK4ej*0?WHLV7-~PNbJ$npfMt3@wvqoiR;dew22H1q@!IbTbrNiqk`i0^j(emRO!HsvH2RuOcoK-#8hbWzJm1eviX!*(y(DpL1n#a~L4_?C z_b{u54e+fN{JF`UfnRX@Dcpfv?Q2M9I>jdK}Z2 zKemkB9roafw7rB*dwMz)aUh_Y5|_nt5(=9a?i2%2`3}*nYzUPF`w@{7ChH@{2xNqUkb*3N zkdzm2t~=r_P%Y|z`w?4N?1Xo$`5&JkRPC3WTAI}gLmsQWf zX2DOwggHj_RCN{uor?dJ&Xzc>-Axn7qhUE<3m?`gW^I(cSS1)1#<@rjUtQ9yYKJPG zdo~(QE4H8k(#t6paYKWOvi7LNq@t}y7VL*&+dP!gXjt+ch1)^tJ8C&LcPU4BU@Dkl zl_5rwlU_wjgV2%Ii9SPARE@l9n7%9HLKFTAb#8$tUHC76E}YXr)EO&(Rh1#C0Q=jB zaf`nCfSQ!v_;zB!zWt#CWu;FcSE~k*LR2{_hQiIR>wouhm>3ax4sbj~qy7+K#9zlV! z`oCDqCTI_XP6JXNqKvw!)5}nFm>sl*O===+3l<3-aNb#YGqj3d}IgGEzpq(}HDL%0Sib+9`PTHVu6e)LT7ua^F zm(yv=yy7epO#9ANGLv%_iRbpwfBwqDQ)fLs@LV`acphB4k~_J(2PR@( zis=caF=X}Qp?M8R`*>(bi3(fHrm{DPg-tEN%TIE(Ng%6mTy;l5cVjh2L7b=sYwaoX zqyj3)-L$S^4am9>HG!vd4Fxl^C_oEL!n=?E>b?IF(^gz_k&`zpP`>3~DdP?v^X+$| zm8G)>p+ygL_)G768z$;X+SmcEOHEJ=y~l?5o~}ekeitg^}CCXwZ3V zJpO6_&xZbAzy5?AGg4;@sap{7pt;d&m^PX5fpB6tPzL3+EyLrb1-Ikj#u3Q|k=fIA z!+NRCI~8}6m*+5m^2Mp84Jxum?|ASY@H3}6A<~*5^$hFcedjvo3NjwO*FVh>t1yDn0(QB8XiTt41K_TA#-<|;BrQhOsn*M8N3!K8qm%Z1f$a5EtZhDa1oCZ`aA4D{5 zWcY!rmitJVBjMHQ^AKL(zGA{0Cxv!xP;Ds14U>gd*22V~t?hIl2>j>%%m_|m#v1wx zYkKszdCL z-JVs*dKZpWwdXyj!1TB^v%9O8)*i1ev*rM2%A!+BFYJ;t=O8CxBoPN6V9I>RD!+a6 z!{is_;rqt5|DSI$DMkGl_}xFSe$4(KjPic_-DG*NLfY8QKp)!3d))uf!0iN(KU9n`!$hU)p4|EV8GuC3rHbT%!OJEblZ+ zXnQ(S(FND!NZVm)&T6j`&Ih(+1;XAyF51L#wMBvss8ko3CDH68%wg6D2+g8L(XuaM z1z9l{^U3+?=yk7T!7Y6S^kEa%!AmI1SM>xv({1`yJOIr9oYR7(H(kSV`7pnvp3+uI zsM)+KkF5B4abK|E8e?m+aoV3HPZuD~duHjL6)c@mOzI?ruN93~r)85>e%I^Ax1+NjJ@Lw&r678>{sKTfWt{PQi_Y`q2+T~Qqj&72(=F_{gz2JJ49ROAXS%vn=acuti%kB8~M_^fA6y^&;{$L+ z703qUMLpaxB3k(f1_w}tL};M&QGgP_w!b+n92$n%DdwLd47Q+4`Tdhi4=1qKC-sUs zNbN|Ug}hZN<=WgPIb^ImVND}Q*5|Fv@24~))602d#XM6{p&ayVMYhw;egzScx^<8w zkxTQj-3Qlnbv2n&0L{N4NELmy2VotFz704uv5J38&uYLUJLWF<@C)}JegS^;1^Dq7 z;3r>zKm7vy*%#pbFHYc>X0ZRIDeQk~4*Or4#Qv9NvHzuM>|-9?O(?=*EMtOBWn8i_ z7}(pZt1ed%;X%)slKuAoeDdt%_}Q>OJbZdQ81|1&ZvQkqcsfO#n=rXYBqo`%B#Q~A zb3{%K?j&=V1UIYE@_AE1*oOP@6A>!vs!f48d#0U8bO}K>UUiL78(L|_ZPK{}(>wGf z7B9k6&zOCK4WCXL(sEvC z_9n=K&~U(!GiKvvRf-up4s`eAl$n$et+e5patw=`U8#^o?1khpT>j zu+-8+;h%GUFN>SEMu=X{A;(EF{7v$F`Eu5?nkAQ+nOLdH2sKZdL95s>k@v z!<*Er?DkEr6%7^UyN^E)2S2=jNE!&~;yZZ*qv|H>TR`~L0;;0P28q7|8M)tzD}^V* zKM?$Yf6SMk<;CY`r=#bnlR^yy91Y;w)67m)C_5m~_-<7BD`##vAqAmHh&I5se}Ita zC{9~)Qmff{NDPVrDC`Rm(xw;PNKGw(Au4)8=HrQmPA5iCUAM;>t&D8c(Mqd5b?r%~ z!Y9G>Ed_?M47|nH*D!TAmWkWTRD4D63Z%|Fd$7-(Z@-@`Mv@5;-of9clB{~i9G0t$J37X^e8ZAk_tP8=K=9*B(8JCgq*yyL&(WH zJA|CPvqQ+qJ3EA&ytBgz5Ps&rq^-BJMZLY2P~w5I5!G7STD7RtZPxXQJcs8$9qO8C znc|EOwg%OL5J{S|8kpetA=(~|bX7Zst0#}&F5IqFH?^B*EcJ$N6*Ov}H61V;K#eVN zA)~9QCv^0puQf!SdA7v&!$%#JX6D8oQ4sJ8zTxdK04=-Cx8T{DpgmZwjmfob&pIfL zOEN{QUjWG=GChBj+mMJuGf>0irSHeUEZ@`eq_xjY4Y49QMb0pP7z~9kvXZubk-_rZ zx!Xyb9UEUj#NYsuBTty*`F2!tN?<+AcI@?4)1xPLsdJ#@8VBX?Fe9Vjd69%e;&gppBGDb(josi(FJbJ3DqEtr zHSv&IhJ$JUx8KB{Xp3FIM8q}3>BQV#Ev(s0If51|y$^G(vJEGb}E5o@$l@Mr^pa8U7c#n`8$5lMz%d12ik zZgAZ2!K!<3iLTeJ*spJdDa^*NhXB3#*;Hgj+NgCEaV(=fTeZ=`KNR6G^1k^({ckX$MD9UwsdK|DhPJ-we-#XPB#m*)QCe2LZDoQJlruE)ad3d}9i!m+|k}>a+Lt z*Q_3_1Sv)$y4b`7E8#s`Q{n^DF0+tV*AI9@OGqe{geaU*I4P->;Bc3tWK~&dbbcaH zA~r{(t$Vfma4S6Y*5?*wLPpz~`RS&&9f-fG*@#~m-JzDJGhwQxXWngZdiV_o3P?= z!()Y~oGGSE3QIFzV-v?5c~#&v;|Wy9yTpnmA?aP@o0Nbr{Q$@WRz&|$NZ25v7)IX- zT$NEFkV)%Mjs1E81d2q=!UZO2^(^jDjdjq=VWO9gd-Da&&v^NC_!Q|9mKU$Zxxu@Z zrv-j51$QPpyV2Sb_edxZYHjls!NITp`DybW>E>in5s?N0ww#BI$Rj!*jj-*JisH(X z*(>!R=?NT%E+Kj{;2nPb`lZSlVIYeCa>B4FMmg2S1(OSa5MP~=BZKt7E=T@NbX`R% z%c0qo*jn|6w#s%O3lU-tHOJ#tv0rXuA@?61MWb}QV` zuDMw*cdQZE_v_O+RL&`kne-#B^~s_L6PhLU5hJUPmf17=N#VfLn>@3;x!hf+ss`bX zq|o1Gt_)j13AYu|mLE{uG7eYeY^eX_oMVZ5#c!>Bl7E!Yzm{u)Zki*rrpCojcZLzR z)m)VNmjKca1gXxJ_qU(kZkRcz#MpzY$g(a3j;4kqJhcR7?-$xk{FI1oRc32IU(tyq z1(@*3{r$)Luo0_)sO~$GYDgq=h@mqeYvkyM&uDVAX6&&cUdx9onD#=- zesNr6zc>~%4BI@mnd03+b|6qBM2l$>XBlqDLWD?f=t~qlPEJZ=A=*V-bJL_z@cLB7 zr3ga`p`$^{if;M@PRCkAE^3W1RtJ21nv(zZzj`}6=@HxQoBN-k3G8#%o4A)vnF@SA zxmZ=akAEt51TCMl&2)EQRu?!iMwVGV=L}#*9x~M0-Y?q`Sv5?97qW5Xw#U0DS}1f@ zeIN|7(T%p2z_k-neJQpCq>L1#G;j1;otCXWd+FGTeXEaM2ouBUv*Ew{Q0gEPb!(%I(SxS$jjI&OES>Odk4t(1rFkI$wc^M@K`rN zLRev39-1+(ETWP@dN%nKDGF{MR=-W(Pd~~yj4OyqUdOfSnDMM;>%Ia2?2_h9Ua?D7 z(RwY^T#~N5^vhAW##&5M=ZpnN<1_((2o@4rmgEJK+P;l68ITt#Gq)X)JD?5RY3GR< zWF#_xD_Ea}l?fNMz35Pi8t|yNP$@BLn6DdW*ZC(FG8<6&SZgg?(1R`N6S|U~&n%Oa z7CMs(RJ@Jj)~lE@ffXoOrD3u{l{nXcYQa&L^Ec1tW}QFYJ>1?stZw-ib=?igm_23S zOjEQp)nc>cprW(TC_$F4sjnj7PvNWZij~H zC^8^gd17lEDs00IJPr+rmQ3DKkkPJ}z&`FgrKay1a-B?9&`ennb?Q|NoqVM}*vJfs z1X_qffI3pYum)N6sYPQ6q_j+)Ki($ROYwQikZ5T%oVu*NwW%-K>cfXhZWETPs|69u z5yP44MEU?lr=LT-l5>Owud`Xa&y#cs52B(y?^Qng$kLL>aN-GV?tgh+=lCDxMZ04UeE5^R;I)RHLc^- z?0E*qywkJ~D(8_(v_oK2kFH!*22i_4z9}_-2ky7N0E^raHhQWmTJod?_V0v?bg#jg z0^v=VnW)B8B;F-d*h3Q(>HR&Mr?^}JEC{18Wk`lm@B=atcmj3pyuNZ9f5y-+B)xSy zG&MoxvULU}+KPIr6MWTn0;>>;0-cL1jfOUqJgJ6{?Ht_ShMOc(@Y{iXfcEvVVTn03 zQ7|?2QsajPVwQ7S2C~jF;bAsJdq|erD60vw*;tb|S&t$NCN=Y^@k=gxMk~XOhj8a0 zZ}=2B5y;hisliI&f#*mu%K8sOyhk4)|n^5~q;~0IA-bkOY zL9C_RW{fT?*drf6t)mlrpVhj)AbAs}wi8{*v5F88s``SYEnZoH0_~1qc4n&CPhBJW zt`*9j^5^kUTR4}_$B@L0DosvJFEScUdwy_>OJdxh|MeoZg@%VBq7*8CLLUQ00X+9b38yahU%w=R(m*;#4f0jta~#C!$G4 zLCecFQ1=3lqe$(y&SL1+o4BF@%!thuKAnc71XFimVY7Kh4TWfFf-wG6<^V#t3W(ZL zAS0nA_W|i;l>>e$ttUub_8*hVDXxa-wYICd(8zMbL=XIluwJC%>AL6z@Sg3KtqIbT zsh9Hv#r%MRg)AZJiUk0AqT&GR?UZHAg_s6VH<*U*47p~>vWk^^dZ3)H*K_BrFIULF zG&-DiJb zoY-;La5^!@`}%?LhVCIkAnwF~J8;K0Kb-2^d_|JZ--B9GYEG!h_U#q_H%U6-O#OJ$ zPTQO;2we%}mc^mrVmwD7n;y(fPTye7?WaMb_p`$s7Jfrvmq0-U3tD z-Nnu9X@2b3xL6HS6wwFw$Tda$y*=8KwSKvpEhu@OuNEj583I4fBZLO-Uuw3I46GTb zQGx1{a9yTnN5dA~%}LOjl)kQEWx{292=s$iF#PI%!>j|dyI(#(h?D^n+u4CUNM{1r zQtW6_MaF-oCTsN3Q!7TT6QKncCw48Im4XJ=6uRVC`!YuSRah)^$A*Am?XkB;Q?p|D&6sCf3#`JU9|Lu9-D9g1$}rl;iI8Zq|!5qJ)lX%)&QAt(&8xXT*fd`Q%lP5h#dl0-_lsanrVUY&+~8zQwNgfjy=fOW74Fjbay5Z+uPl@L!>j1bO^{KARrDBqAUpAR;0nBBCH7A}S*Py?1?erh7Z^d%pi#Z@u-hl&|-xbIv`d zP7S+u?b@X#(nzt)&C91FqHHFarPXsoZro!jKsIN9^4q7bEuxD$RTzoyR+f~DJ2xJYMSZj5ocaP0X5^4 zPA>L!$@X>4vEXktzJo?x+Se(AdbXRS*7NsCOE}DF8V*4#iMxyVtw`}|mhN|-wD>cL z3KzbQ>}+C!=7pQ6sF(MlpD;IT#!nXND=5$2M~a#r3sEM$noqXU5=NlHex@NDrkQ?` z)f(N})*`Ow7SYRx^Qy}hG*WGam0B9&h*@52&=Z_uziTf+$fs~BIpPx#q=lzv@o=Jd z3`8p(Vycm)*X?cMd!$i7yP8bP?UbtRpDJ@q(A=q}Lz3Oznm@?^*9?XW#hff9Qd|MZ zctRs3TXuV&AkA)S_1M-ZigC^QY3p#T?WulZ}-} zd-|ou^+}+9x3tQYc81ao+%uP})hQ-G7hb+0vxvs3K6 ztn(y}H?M25Dq$`QW7DYNOr@YP(Pv8frnpye%9EL9-09(dS%D$kcYk_CG}*piXnB-w zTMS@vGn||MH9K9kWcyb3@_vPmxO_%k#gb{^PimFd=@6ylc2b{p^Ule0>~jBUt;Kfz zkwpKLfvf$PMvazfH1)@Fuwj<}Q#7gIESr{MeM+@-(L<%3GG#^zs`E0MO`{?MFwoeYLp*8x+s_zIRU4?#Y7j{8gChJWnvI0~l#%3$RZZzV&;^!+Y zTrz z8;U9UQPEyRzNyR%3|PctY0t$WK~#0!M>wkGN;e}TYK#9BJv`%}4jEaOmJXLS8bofo z8}~`>N`aGARp#TS4P^WW#I#@z4_5H(T(O$UR@LN;_j9RwPLMzB%QD!rYFrf5{_`7h^E-7TE;D>EHI%&iRtOH za-TTn!iI@m%xpUH{bvr&>@2zwht0JRncByQL`&{hHM!qK?{V))lTy8B3=-|pw6KIh zv3)>U8vy7))*AR8Y2cInP}st|RJ&Qc*tf=OZFCH1{%7%N3mp~e&Skoph3j5&&fcZl zd}h6VEt;4p&~XEpYFd5{V1nt3>L*xRD&?!KPx4$1(GspXmlKop%pPkMqe&V$EJ$@q zI>Bb5(?1mjQgoxH=;KQBq|LPyn+^#hohUc)G|SOMHrq5r;-lEk2NJVboDN%>bSqqB7CJ)Lv4`?pt%AChxrnrouP)yX95`o*@`tZ^NB`f~PAD$B=F*;O>u zR&U`_o2nMhVE^xUm5C+Un_EfdCQ18iJk3tGs^p!*8e;a6M3S8zwEi~6k1L_-H>EyP z`p+hTr8krw*U$6o?E+D9PCil2yTkbDfpl0CswK-+Zji4Et#~K7u~ojoa;UF$mJHL> z2h7cbMr7aQs*9y;z~=WZkC^by4_M7lhq~@O;$MIFVu@X%cBEI?LpWHIwL(?w7)7e&AL8OI*JuBkN?jc85gg zQ%8{K1b1D-Kut~IXJVaBUcq&E(`^aLM61PUy6-jI!tw-ic+R@)qu>vuXXgTM% zgYMQ{&TOr%uaXm`R0-f{lO%Gxw3@6U&9xhFiSpl^Xq2m;6Mjn82PLkuFXEGelhr+8 z{_MGdpI5|hD@d}FB^HQmA1G!((GsWHH?nqf{!E;Nw3@}rT{ z+_tE1U3~Q7mEs>n`(sJciCNH2S?w+RsP}a1$W~{##N)+nJX{m}WkcJDB%@nB6D49m z9BkUUdioZo8RS-;NuVY<(_QlcPIQ;}Y+>&jS*}yr&$Wk%mNibXmKtcLIWakNNz8H= zNe+sWn4Yb%vy80KCeY<%Y!)5srC%@+GYQ8|bSdHNyiT{4x_D?tc+o8E>7Sx zsOIKa8V{(}ZtEHF=nz{J-K&gLwdXKJs@8)yx7iC@%?xCZ~?_Ec(LfA@3Y-U z?BpsVUupAV`#ZYvupYHciPVc+(N#=W6>?S@T&B`CL@l_<%~st^lw`5xV%1JLnZ$Uq zr&;XIy&AgM6%B1J#F#7LI6Hgw61M|VDEsfMCKiH~I!_pz_pz2bSlB9YN~K{5MSJC- z1D92@{e3NN(vyXDBFE3^pC41tf@|ft6>a_A-Y>)#$54l6D+gP^?U(t5%0h!_Y;zN9 zSk>@kD?;3Vn4MPR53LwZEnZm-YLY&iG(Kwni};&FM>1|UE9!t{N9-y$k_lBo?KxYM zs-oV^1&r5_5OGfu3u&ceqJ$@jw0!y*b#=Z>m$WsBw@;gHcqY9@_soG=H4fGa`ah-O z_)F{xcL6)u$X2|xa3AdSY_qg;I)pG?phMix7r3#g9y8IEC}&W{OIw4aI8%v41`5|H zrQ`V%OY_CKcOVgxBDC_@4m+&-c7OY#;?{jj$7co?Daql|pYVvT|IzZSD+;rIMPb&8 zc>ItRVb-pTO-BCGPb`ZvbWcSowxY#_y02LfY*~;G5ga)Zwh^MSnNhQ<))*#QrLdf4 zug^x8*Zo75Ce6&YBUO2UT4fw`v-^9=4yiypXwYWk$lA&6y>k zfyT^+pa!A?R=Fa1M=bxL)b1R{ezNtdrkSyGyKNSkAmQ6;4gXPqJ6H@tU}Z zRc%i7>7z;Vs5*w$ZqgJeF%!&hn%yR^;~$x1@p5K+=?-ylULkvI%`Y8Up1Ztr@zS!~ zBsw>x4p{>|u6|%}tNOu$wD60uZHi>NmNzy1Syw~kY8q}Y1*Jm#Y;#gzWoul!%t|RO zxQqX7wlB4HRo&3b+C*1LBD-%E+-_$5gR+_`+yg7V`=-v8+o)2qHJ6(($74xWvAtKb zzJfj%A6E6GASse7EQU*4W?&w5<=B~hr0wV%Y`6b%LvwuyrUNU^vU^J@jYWB|)>Br5 z*{`_XJ7QZ5r%IcG>ArlySxU^)sU;ikr^x$Awn#a$^;4Q?zp84gUv!-_r8SW3gSuxG zM~<9&a|B<`8?}?kc2B2Y)`$9Kbf%^vF_N*a&5#-q{|+vngG6#G;UVlRNZ7hpKOxK_ z^?H$eIjtx7);1ZHcz{HrJ%A|IN9rA;@rC zEYj(k8Mc2zaL6{boRPNqaINl<&?bedp-rME*z0+NUA9YVgp_AOvFi7aB-v}Y52*T^ z8i3p+UQM`+9&~|Brkxor5 z9Xz{_XCSV)EWuE&q+8?iAkD!zm%()WwzbENLJv}B36 zXcHnTT2`9f+$|rexM{F(#HFOP?dTlPp4Xh3wWznRShl2Tq_ljzJkqjk$r4eSB0F;G zxw<&+eb08|vpJ%_N@S^m8(T$J;`IkfmR}L&F7Psl>2~2!dq;h4(>|?54OKhK9w{(3 z4bUfhj#_`lG=Ru%%F(YsXK1DML~}gw$kM5Lb;*i%F;!1-Pp=s$laf9CZX9ZV+H>}{ zw8$>NvWu()m5@jlrkQcbY{ouCYL&KY^%D$2D$?Y9=en0D9_g@atD0_=K)ZL_d&+ff zK{Jta<(0U!79}e7&XSk;_sJH2N>~YSK&onU3exO!*C?p-hRogtD-6;95{Y&}vNuht ztd;3@nfBB+1)tcpAQqB*qLZrraD_IK{AD@8F4S-t<{RNgC2i>jaWt`$3Aa%((X3;% zws}3#A)AU+bPM)TecYN%a?Kx~*nRlWIH#Z4?LHc_DMU&W`;W$weT(WQH`3PTVf{1p zEOm@V9dS$2^MOg#s=D)Bl0mN2Ynj?qr*4!pF+D`i@CWUXc{atavD>)H+tc6D(J6hS zjBppq#IU%w`!Tm{4deD3wzIW2vEEzPWSgzFWmdtITK7y9Y3?nFw^Mb}FG#a*EG6{= zj5Z~RLBfC&$?VER-<+!Fg3MgyRb$IE;BcU=k8^jBq_BYY_Gu&;udZptS=TtIdLoOM zWx`^h&6P%T1d1QxT&L;&PeW|$a4ztxYLPv;b;Dj4J;H6>sqLVaIj1y7JMs5l#3a`w zEKgoR7-$paAsC;SL_LYbEt05beWEvsSxOxAO>dSxVkx?2_`o{qlmTZe4?SYcfaz*a zFx174ivF8Z1=w|G-e;qCL10XY#g~ny+h^14(A~)@9iJn9t7bpYRWg2l3TtA0n?z5gss+hJF&bAZP@gglj^%E$Mb7gJ2R3Z5f z`4b;;hspNbw(hiPY|*l=Wh3RmSzS#nqK-(6p{CB6J+_!t56Lr$d$o87_s?yX`LHgj zr!xE$pZ`p)xgG@n$+peNH{@GeX(#;JKp84V16Ne+R;Wt`E!el2q*kn2KE5)shQ>Pr zPSeGUiA@W2ZB6o+)97$1j#zcwptY~HS0Y(NR+zXZGoEPKqYq|U0ShderLUHyYd%D? z+t|)x73Fgk!M*!r129qD=Jiz@S40x+mt5muJ_pW0OuCESnM{Kx4_krK0`L5xbiEcc z84{b*t>1FS&Y%+OG)SnBR5hQWjkrOIi{LE*nBtWzk!VkD1>1+fO%Br%iFSeAgdboS zA}tz@-;Z% z^3O$qXw8@x*&p`9+Cf@RVk_bYT7teLlJkIb5)hKngyGmduvftu& zL*l&y0@2Ec*o~xm%5K#5-=5Bez6$89g)6F+r&w{dvcl+=9SOZ;cecJwXXV9lkRCv4 zuB*^eAZ2+4RvOzT-nR^W{b4I1f7_kx8aMAE5vQwE(ICwpOpB{^_!gy`c07Jn)l-5> z$flptd&jS`=WyMe_Uy}6YGBHE#JF~e{o}3*Oo>%a2!BaT?3xvkNj5R^iF(o_jZ2Ts z0*Z=ONa-h#Mn|-{b_>eK-?aQ9kW`S~AzJPSB18_xPYqnGBq(HD%$C)bNT29V8Q9Is(mVOBQd%@N2DBC4G|R zCt6ot?I~5wDK5p%wI<93!l|~(%z~8#QW4SUtz6V5D!r* ze_yYei&T>^$!fJ;ANqu23Q;qV8k^MNlM)-W9@URK1zakJ8gCfPg_=maZC%vfRJCyr z6N7h^;Za3!V$B0x5@*4P=H*=bq}@;8w&eyIev}hfZm6GD7Q#gPEp5`8C1A-+8IYMR z%QcbGB1P?773tbMiT9g1Fm!a!YzQ6Tf;3z@skMAXf+THToa(wQ_%m zDyt=41@ncn@SNQPI9SEb3EXqVDBIs5dy%O3)S+!H?(YwHg)CiZ>r?m6HJ%^2uk&Rw zXW;+gCH)dn?}J{l#`A*rUE^8S+kTMeRNvfU<}fpgB^$iZE>>}(uM1*@PYm4y9j{jcGG@a% zXChjGn4LP*+~iiJXX~SlrTD1I&BZpL18iB7V0w&iQOqYn`WOqn(~w~_IMAU3qy>F* z()yf%#E*&YGJ)?;BE>3TTW>-1UW>>POu-Vt`mx4Gz-mVQf6^7oW%1LnV@`K6~;PlJADHtu;kg5y@%{{X7vJE}CM$ zfFDXnYl}9FeQon(1)O(Ii5;}>?3_NNcj|0*JL1&n)G1ym(cOh|Rb6mmy9?#yI$4rw z@yxX|+(V>1}ZbL_WN zRh58P5?NU0{H)p1-NDQ(8MJCu&5|^0s%1AX9B9jVml)SzB#*}CO=U|4d6q#&mi9A} z!I8m4l`dK4+oN6*`lxOVo7^f`eQ90P;D8t>S_(0*LaQOk#cE+g=XUXuVYg(7SW|+f zzRuVw*1UMhwC@w7ML(GhfmsXfYIfFH<62v0o4>hOfplXTiRGfdUUAfw6C5|AlY#nW zf+d4uhzKH4$!pf=EKYbNu{>Wa^S&lEwf1xetMfHC^nfg3nU+2{Eg>0XQG?AOx~&;( z*wZg=(=rid*`f|KcF=p+NZrzeeKqWidvMlzr7eRHtTM`@n~`n8z4$u1Wv0DbVlC^e zfu718@kMoaM6f&hX~bCr9qnka*>Ez?iaPds$;LI*hv-T6C4;t2HiBaWtJX?y^^WddiG(_@HIRUf+(H`DSf`l`m1?E2@N9??yTdcAs zR=Y(4K*|b>i1EXfF0;m0k6aubriU7hH5Yy|(B5ONY<*@Eil`U$Z8GO>hD+yKC}S+0 zXNX!YBbG`vy1Bu$Ss(o8#9WEgt}jCk+F>}IcAExy{>pZ_lGa9lKrClqEf8H z!W``ug9gX+a6+}n%z%6fDR|Os2YtLu7)flJa5N*bC93a%`Yvdnvqs+qP6$7;^U#P) zsYr{gneGM*1s(UF{ZL~V|l~J6ddqm69x$ zk)~@^+2)I^CzrrV8dP6&Yl*9`&e?&}rtYTs@@W>(+eHsKtbjft-6syF+rR^5?4nepD&-K9n{p6Li zGTC?pZ#|JUQZ`I*g8{$JHx|pAhp{a_8>>AgDfUjT0c?^fZgtA)a>vMrs*g<-QBq~7x`x4M z^dzg4T2FPyzozECIj(69B&%}P?AQcH`#{DuLQHpL0xekku&SQWECsVcF0HuhMk1Sw zhmI}SOeHONGT#Z(=+pYxAc5MU70o)Da65_E(sx^|9@%=tR57{0_8qYcd*(`Lf9Hf6 zE(7p>ei>V#t%{K3k!UoUCy`bzl3>ql)!wGJrN`-Vov^Mcr!`dVGNR6z!Vnn4BAT?F z?gz-cdmu(zN>f+SjVvy7M zo}WZF8EjrW-o0wckSw9r7w1?IF4(=bGe|@X;qum%+i!~3Yr>$WnWGjYDS)cB6LF1uLRK)cMs{R+!m*@sGz@1HB?#P;tExC z1JprFmhoaFUG!DlB;qcdvNSmA!YP4)Lk@cR$PkX^Z4LMc~n-&kH}7hTF7NB zh7RVm|Ewq-mFbop!O{nH^I`2nJO`_tVV7$AA|8UGyXk+pDD<(4CkI!!rpg9sVXNg= z;l}4N#E7jLlEj5De}QTfAetpoEp(h9Ra*@JG3~$-v{34z9T#RpTrqMDb8RC9H@cAc zyK-4an+%d%NO?Am?(FOll{H*>k@Z%)z6EZx&PY>>J*ruVl9zI zuj=n?nmtiuE0<=sHa*ij@mCnNs?Spd!j?^AT4}yb}Ar{l$XNW;d&QXGTqBL{ok8=f}N{dw2ih_LBi(9 z-x8vur&kZ!{e0uyFBa3t-K4z=*dRNntH5WJ8Yj*l>*g2l<`t~B zu4Oz#;6XLgy15sQ->}+oEr(uO-0v?SEk#$xXLHvzOKM<&h%|GC9DfhS7)a~ zgz$s1BF=v#9XGp=hp#L11!C*Rs2VmwR$;lXo0qm(XxGVz`Jzhnr)+F53$KUebne|* zlU0Scs6I>0ve4OUi^YP2u8;<8I-kMfAvwd0^bXDa3td4}yRJHmN)3}PZ!n#gj>!U6 zh$XSJXJ&hcx-$g|&4fvE51GG^{H~@_CsLgCFc=KvVo^A>HPC2gZq_`f59#)lR^3HH z>bKdpGhVPyWHujB=c}&rKXI94vL9G4y> zsyexn;o2-;Fp%t0Z6u=x6+Nh(KjzblWXl1m_02s!1M(pT`WCu3ZFRoOIt5@!rdznG zYo$}RG0y5hF1AuaA5N!O`VXD&f0ud@O|hSBTcB~?WdjcxHOsE861%>)ztPJ3rG#DP>wdLa&inqiwxUm1Mcf zDp7Q~p`SmAv}K~dRXM{|bk_jni0R}d`<&WU=*kuedy>=8Cwxu%-eju1U$V`TrM7Zh zvexP%+ZM#uo2SF)td{Ir$>jDIvK{k4M-%(h#vjX`V2$V7gNDCq8K{cy1abE!iXiT; z6E(okB)Ty&7Ec7rN2@kYrJ>^tJV(49mv&Xlo#ZSdc7))KQM0DiqNLwUOqtg+Y=V1V zQ(M&a#_bIxJ{U4i5Ou7w^AX#0#kX_M;c`j~r`xzfnhc#GOCC^ry(>|?1Pz3jEGOI~ zl>{^LWl3wB>+QlM`#vr|0;_KP8z&MY7X%XuR_byt7y=Qn#p3L@7Ru&|%=AbH(1V() zeV+`s=Zjv{H%Ry`r|;yj-gwF0#hF^_62^*1ahCQ;oCV^xjFdIF7EV;+nVFyi5x415 zag}yhoi3y#1BM0lnnm)jcSb(j+2?ZDjR&flDST3-kO$kG{#OB7wYqDBFr5nbjx=Tz zlYPY`REzc3E)<=Ku4OWp(O|9d+*z}&gLM7xd{zBgduDnMMRUrEm1AoVrGJr4Li=ZS z2Bss4o+wAm^k)TuB>-q5Ub1iGlmc}o&6s~_L~qlrPF(C`+d6514wI6{EM{Y<#RYzI zfdMh5sl_Ml&FJElDeR@y&8tD8eY3bVGafJA0(GMfd!G!~|FU{k2JF%GuIBV)wr00S zwsV4#y5x$HSL(b!oBA)&>Np!`m0IU~KkbUhthoeKjfQ#)I(i>y)uPZ#KFiv4F=y!- zbkWDMQbu&RZMKK1jvdwKEOa-StVQhd3Z%G^h(ANvq)W|nh68_BahjKBnsE@b__6&U z%$BTIScx*T0A5j%>1q}o#X5;}_=C3WD3%x>MQYPpF^c3MjfqVXxd>{3PicoZ8;H>% zjCkf03(bJ(-lNr);)=~iPL;SHJ-yRX%a^TO9Bz5UIA7)EvZWXQ0RKTc*mwd6oFvT8B54oMQ^U-az^EQ*>bYs6K zjkUZ^^~zFr!q|6ig2KB>c`5RptfzE?=>GYKGKBCkZsZ#^$rhgCaNXW9v&K#}bwtk; z=*kVNwO!EFCUW+~v)*lP=j!$@r%6`mknsf98JRVh zNg?;Qy{YAp$+AgeRIpUZYO$z=A-dEGB(Zn;X3BeaMUF=Y!OU7QiJ(Q%y3k_vk(Jyq zni8~FX6Hg%#RJXRPuv;K_cLZt3tA&)aRX}$!-L9nD^1oCGVD!G&U8twv+tPJvjWMo z#;y~+&MZ4Ltrq{l65R8}7K*t}Du~3GPRNmRrwe86Q@9pEPMld295bat)?`WBDu#1i z21NTL7janKDk7Kq-ig`ys`>Mm?S-5WN zVxl7o(|aRE>#z>XJ66BIe$sbGGW{l-e2M|X+0C68mJQdSL^>Di^3{p2UA_3s@Zp@? zRJ7})fmCJ4RHOmf$XufL=z@-F;kOSuP(1V{&WZ$D36c*u(6;<^HN<`Gpb|tasXocx zCRr`~Ok_^Sa$y;bhN@u!KqArZ7P0eJ4p0L_KS?x>VR+Mg)wLIqbm`TcXH{!ohqyWyhv7z0*-WlrucA>0`#Wa`%TCq!Yc&rO zQ)Ijwhb@dJ`lu9AS zEj4S&-m}G~rlS5|p4nC%wAjwub$ZhRQ)!XoksNo{PO-hoF`1gzQKn>^>9Nv|$adW| z4z^a)|0xR=B4^0PB;B%#;dt5aJUBUVhPL8sKBK3#)f*q`t-tYRTzMd^zCr9uDGRz; zK%#_HJtgv*Zs?x%CSEUEi)3x0ercW3REiem;~6H7+WD?A)bZm2!kcJO(T}FSWI6S9 z5B{JW>&Vw@qt#BcCzZn4Cw&M3t!iduYKwjLAJ@6bW~&)dbTz`Ub=48s9?Mk{vt-NX ztX6@1S}b3zZ?Aqn9Y5yXNH(GVNJ1LVI#uBIv1=-cD4(uy=;l>rzw7J%a*n*9~*Bejg1Y7 zGq+u*CrGpj2`^jil!`UuH1(~vN+!CP-1h$RsKT?YXzYC@VQBPtVJADU%;G?~|~MhA)Z;;L54 zC)7lQdNXTSRF#ou7L`R7FHKP4Did{XQ$yBypBCqtDKX)t8)_;> z)DMeW6GX5{2mN9ExD_~>Z<`HuTel<{uqr25c0^QTnE?+Z3DTQ!nzl64vWc^F7?fQ+#LH*EK zzqV?EaHe(Q1|Lj7I)8&)Rb3-UtEknu9J&#&>_=f85WDz_LtRA-L;*^$b zH(M+QqAOg%&T3|O(9O~6o#CO{zG?NT7TN8yr%OZJx&=hdJ%@^^p<*nsh7;X`s)5#45)Y(ZC!z6mG`wPWk8PG1IwDEGDvhiQWah3g zH%$xVW!3^Q8~O>!Y@K~E^;VaNFK#>)HnrrHw*=`xP5U%;kr2;TABfCL;R|b*=Eo({ zey>4Aa$^@eC;WV_MVC4!ha^6U4(}qLHP$2O%2xGt69uWS*PS0YYSUm_D2`+)2+|_I zN=H(Ck|;>D3tY>iKP=O6z9I6WtDcp6Q??!P9h?8Ic!tR#&Vs}g@4s=r+-OKv5K+HNxHp*i-V}Z3G-OXuf zyE~oxpmzJxe4_(+$*z!QRrNWy3#MyKw3OB8e{8_*{*b}6ou;jg>;yVfoI@o11mo$6 zP7&R=eSS}0>-(Ihr)Z~TrNX=PiaZ~PRmd|4*g(JbNJ)n#AqrF)l1ozu-_?PtBGfO`lpxg3iu&91ZYmS3pt z{6)jMZ{^DC=<(6;1Sf^%*LghTP>Z}|4^Y(~#@T%`-ttrRobc{$-q9_CrhJoW_BQqrSQkMlmxm9^zpZB$ z!%uWtuOiWIL>B78TmKoHM^Wgimhkd7rN(K7{ehXbU+uIaTA}nM#B4d$N`v1$H)mEg zpXu7hNpCI9Q{WFM8E%1Wg8+@9j*O?rmn>gVUbMePOc@jh#MlJ%bZaX8nsU9JnELkT z5(y>q;igrtoaiIV)FE-~CJ0Ke86Sye7dR4I;3Xz4a!D%%#EgPdODQN8lVxL$y?B zTCjE<#mUZ>Tn~=BrhTC+g>JOp7s_HmF zTG$rg?v`g_BoM<2>E=fxQ-bz0n4WRN@=|z}^LmmoZoDYjwLzLahUx?@UE<&+lmnud zX-^_5qzo5TD<_{pyfU{*3*8f+G?FRL5WnB^1i#6=@?&_1BW6u|9x5OOd9x*V# zNI)pR5k`(J#_{vh zgRwaj1W^fCpXcnxu_XDV+9-z(OgV{IAn&RBLsp%_t$Jp($q}26%Lv!xiwfN#F=Axd z$gIJhZi!efF$*KR5-n_r>`Ej9H#fY9L`w8k$`nX(xgO~0>W~p!Pj~-ZSxb}kZdBJB{nbYZR(dO_O5aC za{)dmSJZPb9A(I>_!I2ytrAEpruE(rwF1#vHMzp-)2bCK$2-eQ7mXh=m@N#fC@oz% zDjQ-3)orenZND3NVW6+6yI*F9`%}{XOG}{MH28?6_nD@WHn4P^G9<3P5JP@Bo<==T zRmP3DbtoH?thTc!Z(fG*_V7BJ-qIqXy^p=|;xXCfxxJ&k2X|_>XvGfjBl>-`*NE+B zE=_o#a5@L}<7Hz4Jyn#>U=drhtL9p`BSECBbXb69ed5?qF=EDur`adc+q>l-qIroy zSkGofL?X#f?>~0sz~bQ}H3+MC6IuXzSB;!yLfc~Ra2za+imW{d)9h|KL@+ynOacZb zW}OkVywu+poeLFB+=$%l>O2>>R#LLDq-ZbB^mf{cX4JA|W_tMu`t_sLvcl`G`U$SB z@h)uDr?D7Cn;sDJ*|#mOHOl9xY3#57~IL>Y|+VS@^*ee#-agdthu z+IDAU&=I`_lwk&IEg2i zaN5g-dy;7{S=BA=h`5;c=s3n2uC(jWwfa<~xmR$OCagXPmPKRBmM%)~TVS|vLB4#c zqZYeT=Tht;T^nyreDyC)QsiW8wSGY1#o!}_{>DKrd#@7xwP>>4HP!)n8wiFKXETZS z*zbRS_^@sO8gu;9a<2tX_PdtzoN*_tjFBOV%{V8NxyZ*+{ZzhK#Q(#69agL`2=J2S z4!JMuh&$Rkef%|9|6-z@5oz(lVSlt843FCRuB_NqE~_vnR`VXk;T&SP9b#>I)KwWNRtbx>cboxS(-mW6qzN#(mcZ*1* zGYG~oQjx?wC}W$!`5mpIsLImQ9L<;w$%5T@kSz0T;3q>5iI*l-ZBP_ujqchTi4K|3 z7+^<~R*KDQcx=^3xklEJtCMf!kVIG1gHhF#m}5>)wXu|Y6z7E+(}$~?V95tvg5;dB zs-9)p5oz|bYv>Xr%}zHZIjWl{jc`>?unVo3U|3&ubQq+Cr^}}|&Cz?v*-E5mkZG%qF6+5y_9`vWzbc&t9%7Quz<=PF|$0%Z+nx*k3u| zuSk=U+cuzkQA(feRIlWM`)bK%H&caGgSBWAx5fqkoM7MFf>29s5-&?t;ANGsEIV?| zsWb*w*UallhKs?lRwq+rA&dN56>}`0!M07(+(%_HE?SoCmVT)Tu4BCH!y6I|WGC8bezV^!znb4FwB}Vp%u!B_w`0+F3 zbLtDrvLolVRmGNAH9giTxgJlS#xl>lC$Rf!AX;&=e0NotwI2u+MzuPqlG5JUAx=w? z5*7}GEaXpQ<(CTqWEX^M2^n7!C(%pxBW4?NmP4Ca^j1Xq2w|&W`%e>qOo}=msB$Nt z#Cc&m#R6jy)7s4Znr*unE0NT|yw+!LAr$|(7FP`9 zS{0Jd?VK;ghd?G4l1oVSXz=4Y=x-OLE7|*L9))T4R+^P&GngwITTr&h_*jyitcp;F zcziYuNJ!s~R+jJU>AoQmD|oy7-@b~O!Q~g#6QgfVORqelwiT8cdT+O`E*AtPjQnhn zWIwBqjXOuRzBxz=PWH|{kw!C;VS$R7eBtWngm-0I1ztnGoEC{@-MLh(IvR_vQ?`_L zW^?BYYT5>qy)hjf?;7)6%!Gb7GPVrj3#!M~8hc*tRzE<$8+(RyObW^i0Ty%BayLw~ zjBpA$3LC3sSX1g}C0*kCtSGhW>N1qtieL{_p{B8If$Rz|xh^I&zXfcf$i|ZFd8;ZW zVvBEU88AbgQ(&s+WArr5?Vy=bTdufb$q(Q_j?FVP`iQv`>yNj7h9U;g@MJa`3rwMF zI#s6rKHz!YF(vvWl|Sw5Rv+k=cx8#rRco(XmnY_pelvB1qJ2O&xXI}-RBA`iYf;6M zsrIF`GRf1#cVd&MN>)+=-w(@ko4wMTsQtWefvA&F!5%;~H|ru~X-K?PizL|3Mr%Yi zRzD(h`pi{UwIBp(b~}4ojL1F$N+1SV6NEQTc6Rz6k;L$per2P#Q-`wMG}3g@yGh%Z zeDw)VvLDeOHYKB=Hm=|=%h*5)kK2!0bhnNci9RzR%i99Q#A%N4MEec>!htb2C*96G zT?VJxaZYC$b>dn}R!_?UiLE6XSDW-Cei>Pf|HEdpLqSTkTqD~&+FW(=cy5B@`3a6o z>|f_wBYoU_>1B1npZ#g?tKQAp$ce#IgK|l+*0tr!M|AIv3HBde-QBF4r>z=TrR6C*$h}W1DSTBeGYM|6sOE)8Pj$3&z9|agLB339-iQKq}3fR%VV3xGb`P zh<@wD1|Ty3<9kP$S5}WsuVR~HEPB7Q;>07gYCHwm*~CvasK~Af(`1QX2rlrm{kxiqW-;4OnXoZ<^kWMZIjx>_>R*h`N2?y99 zQNH1c!A| zHcC)dabRrfpDlG%7G%mAEL9Jx9(66MQ;upUXSN1}(r zr z0hfDpG~B?MKu*cY!2g59P0>?{n_?YE;NDmlo4-t^*;7TjXjXB`karEE)aXgH1~SN= z$cC0oa+RnnD}%P?F4p9FiE7mE*1`sJO#Z3m4ZC{tu7{KtbRyU2r`P@|8ij;FQP_Mc zx7~Q(I3%&%H$qLq?Vsmup;o1I70GwA%M| zh+R(%u|YYJWzJ3si>KP7rDWBGY~wJqdv1DQ*|M>f=}~E2Z6Yt-I3t(IWo8_eo3U#7 zi1_Z;swj0LE1`FCqGC1H=4-QQJt*61$gVdl${NwJJT0|RDwTRq{!L0vK7NypHcss! zvj4Z^y@I1X=|3v3?$ImN8&r3_1|L1;py)!0%PTp95dCn&5 z$@|8hZ7VsMchEChqxWi>E{UabX=rh3(p33#?fMyAsdYA3w`={$TdcL!q^&1yJ7v2` z+fUkI(k|;vl`O0H7d^IC>W%lJCrn9Ai;Af!seKaiz6p7HYMa=R>8b5S{$y~>r9Tpp zHT{ao{(wt=G9qjGT2dz5KYiKo-;`8s;`eIp_dXW9lz#p2-;~sTiSzdh6XmZdsZ1hW zzfSmXN-CR3&xVQe*OXK)k*=jB{5K_)Po(GVdBeBLhbPNlQ&Ppm`Nc$fT|#b1$c+hk z|Ac&CLOv%UpPP^mPRLCOxg{aDCFGe2xg#OZPRLyexhEmdNyz;Pd2T|UpO6LW3EqtrPudE?Z5F?o~J+cA05RP7YK zkN>w>YB(lup89f3-Xir_Ox`lJ;adJ$Zs$VC1znxR#F?pBNtucAm)ax-hovK|odi`#xv6wtHbz@B4 zJ@raV-Xpc=deQ6mObx~4y;7IOH&4i0B;+j< zvT8cvzbUD$LqYzUlIRVmq_$0@ZH|-U+!TwS|0gEp@6#Z;_gwN+YYjyoKmX8D!Orwh(=& z30XCrEkyt6M^?>c3(G&ZK*SQ+tf0Rxc^kW@;PiM)Qs3x&~P*k{!wv>qbY4jYFe_(Ym2>c_d#h+iCH; z49lEw?Gd%PY;8lKAy=-?mCN~Du~aIQ#a*JIoE?^spQVwy{AhjrV!0;YD8rJ5p`nIS zU3R#kF*j5{oUb2gXlxuVG?p|{Xg(9YCX+vANUv(BEe|)=)sGZQBaI{ZTwUYvP^P}2 zp1eXXV7gNPV`PX)M;)Tw%17FOBAhhO_mV zy1KgD&``11m@hSE>dOsvFY?bwe4+S}C24 z`QdzFWN4&*G&9st93C3UjL74LzhyOSth}f+e5}4&zP2$tR4NV?3x!f)I5$+z)#Wm! zY+05xNv1ZICAN;%K>4;(lH>xZ8rec&c(gb&GA!Rriq1$$ifXRdI5M0q)eSe)kA}Y$ z)M$5YvA#CjFp|j*m$UkQ<;KyWf;_4eddbafsaRi#CJT6s6*5V>vS{^|U-%-%!YmmLwPQjdhuvREoMPFKx}3{q$(5E-!_w zpTjuy*9qf$-_(k_*YjZ!2_Lyb9Y*~nFg@%T@hFty7XkLsC zrCh0gR3E}O0*Pybw-%#NNg5kz39`ddj)zO-LgUa#U2!-o_iUhni|3mA=|ZNlcDOVu zP2BKkxn8VGjoD(pSeKX1qL{BA&Pp?pukzf|N{su$B5g+@TVIeiPjY^wQJTkMv94Yk z3;7OG(R`(dK6+`y+KPN_y_}yfl!kMS_4PyLkzyuSS2rYWlT_cKOu2D_YlGL$k4o2( z9crj=94g4u7aQvf4O06@r2iSMAIZ9QJ^tFGW2KcxxI8ZomrIS(Ok^|Vx_q`cByW)` z3>E6-g+@kmnQHHCR|h{oBK=U~a4tKVD@mtY%1OZ=&J9aDEX~+Zu2ik8Eza4S=W0vV zTGurc>&rQ*q0;Y-X63rVXjbZcrlHygU%q+;g{6>}?x$XUQodY1SI9`aP^gpt=SN2K z@-3@;uvMiM+TBRqE{@hWHs+*!)XU}hx>BjJVKgJzm6P9=7G@}M@z~hls+HPh>!tPi zQbVJ3P7RIa5y|L$S#ob!deh=aR=!}h+Od3iM6Q*Fqqe@TKA#_v4n(Vm^t9O_Z9Jup z)o1JT^|{8x?}~CG7dA9Vo12kxoT(GlqC8TUkqpmECY2k9rO%hoJYs%sW)tpMx_CU4 zTFY^{uUs0DC@A3x^H(e$FUO7yEL*f_EPkj{W{YFzn14bT6+670CHQcO&L%fmh8Ld_ zy-oRP_*wXQcmcc^ehFRyuZCZPUxznC9e?ZnzXQJqe*o`?KZ0rD2G{6FT&@%KTSp|5 zMQzrRgi=QYO4aNqi~6k^_GJ0bp2~DeG+vjUg$KiSs1_!@UM)Y$kHRsi78O0NmJa3V zP%RNEUka~)x4^sLPvG%fG@z;;k$4{88_&2)xdgqDC~vv;76d^CG@(};Cb+Jcq4oeJ_?_Ne};d9|AIOs z*88ptw}iXGePKO3SSiE2Zsb9@NGZd`qmj>m=PRX9eFgcO@EQ1mQiiF2LDnI;KF@A& znoPb=mAdqDeL`JL%13+?yi z_X;Wt?K$Lk4^UYs#mm|a``z979eIDdzua^$O&57TSg+iZ_mIRxIX({#!Xw~vr3}xH zR?5R2ubd|JLn+fJpHuFeN?H3V5AEBPtM&MdRO))A4AO5^%5&VQl!v)jDKGaZ$DdGU zQ>kZ^GH8EUnV0gal$ZazvY1N!TPf28YiqkAFSDUiGG%LJV=A?a@JGS^~zbP)NROjDmzlC`;Z?}N@o8Q`RDLg@VD>}@OAii_%2*)virRap>I#OM^3}N zVJ$2|DXR9oYBAI2mLh1BqGeP|ksg<#WRy>B^yNoBfyt7!#wI9PVR9GjhrWOE<*Ll_ zBjHhSH9P^H3eSY+zzd--XICO$3vYzJyxoC(H+%p-3?GM2!{^|O@D=zvd<(t5_x;LE8G+A3$w5u9tc}t2ke1!p_NzpP9@|;a0y%qkA)|})8JX~TxjK4?spmT zRq#4^6O5H_IsYDxKL{U%Przs3^YA73C-??@8~SoSWwI+z>%&dq)^JC-8}#LU267%Y z!h@mLGiD>tf%DIB6}HpI)!q7}@K0 z+ar5DZ%<^e?`4s_-gh8!3+#YBa4tLymZ0f{Q&XuW$SdKo@FaK|JPV!+FM^lBtKfC; zCU_gX6W#+Kgpa}}pw~a2M}7(Z3BCc}hVQ~D(otzYv_9MvZVh*YUVq&ic?QhGMtCr6 zgR|irI3FGkhoRSdmm!<}E6;Tt^2zWFcs4vAUIH(N*T5U#E%0_|db8aBKIDhsWAG{X zEPMgJ3}1t9!hgc|;M$`2YQAm=H;3E8o#F0q8r%;S;r_4*&V*gCAA0?L5V;JGghxTI z*PnoVDm)XO1HHa~De{%@T6iP$Ot5--Q2! z@4>a#r~bpu;kIyRxI3H%_k%^aKh$|w{Z2Ds7u5MzJ-!eQ!ZJJ(9tCwiR?j~Ho(j)| z=fDf$rSM94ExZxl3h#h-!w2BQ@NxJwd=9<{UxBZ~x8OT)(gyCi*M%FyE#dZXSGXtK z7iM8SJP@|P4%h?d!oy$*E`m$oN_Z?h37!Veg6G1EpmY=V9sW-pAD+nbod!P(&xc=x zSHiEso8Y(MUGRSB$AdpZHamor$KN2o4F3%MIMD17a^4iiFB`zk;daoE|Mo(j0Sj<{ z*bM!+uNQef{3tBLG3dv8pFlntej1(wzX1I>?`q^5;5XqN@CVS3?|y>(6!i9s7m@!6 z{kZNQ$nU{*CcE;rG29CJ@!VA8|J8E%L9hE?Jx@Jrs3XDOkI}l?IdD)GPwmF z3g^HD(A!5wk(a=6cpN+ho(Vtbd+g5n)1cWE1;jedveC-Y)qh^0V-_(Cm_ue{UoI2mVj<%YTpm-TC(4K8KiCtvnnETj6Zj z2fcmoW5|o(Qn(5p4^M@kf#<@D;pOnF(A)FAg?uNx7d`}k3cVfg*T^rySK*uRU(nm{ z)}wve6mA1|hGtKe@9ph&IgU5NL*Pu<4ZXeYBgn(>!AMjb^^Whhvw@ZHw z`6l>nco)1MdVBQGke`9SfiFYvU*PS~|K|7qx_`hW*gWf*83-X@O`)%ZrKLov9 zcouRGoCgnwBhcG}S0En?KMBu(pM%~G{3Yb8;Pvnp_#No&zduBN6g~-`g};T~?)w+y zx8Z-_+UvS}+6a1k?+(bj!5X+9tb^Xp+lo9J_Q8elW6;}omm;r%$HP z{3_J-MOtpY1-(7@UgU@1PvO(>*U;N>UqyZs{tHgR-nbt0_S@&oV@_yp8-R+_KgF8c@M z*WuscyKt@b-T50rUH78bZx40di^_Y$TIlVt2Ozh=L*X2_0DAkYu7lD0ErH|kICu*5 zc2`{&qvu})zYMQ|Ux(h_`d#FE;E&*A@aNFmS$~K8C-_(RPng0k>FukVAa4zKg1f_g zptq|wARi3dVHX^L-kv&yycjNrtKo^z+fhG@d_Mdlyb^v5-UPo5?}GQkhvCoQGw?U? zW%y_K7W_AyA_iOiP8-0@;dXFWxEGuO3vhqf3_D;ioDV+=%Ww>?gr9&X!%xF=;1}R! z@M?Gi{3g5u{s2A*e*&L^zk)BqKf*WQKj3?C9T~7`K5Y!Qf;+;ga2m|OdUz0QgPpJ+ zei)YE5pWqi8lC_@14U7&P>E+64ma7QRvZ0XbB2emi$bN+{62_6BL!K2{`@Kf+Ccpkh2UIDL#-+;Hl z@4@@vkKyC+7w~!bd-xjs8+->&X8gB4+zf6D%}-G>X;0+oFb_Wjo8T6Pn@$bO9;SZtr_j(ffS?K*4UqSv0^nPCd zL0)^ZD<>PlE#VH(`*+nK?+5GPfv^>Nzpg&yh45o=5nKwrKiBcdr^3&`bK%9%`*D30 z`9}CHcqhCUdjGATB0mj(4PSzrCn1hY*5a|81 zx{>F?r2qTJIqv4t^MVZ6X9v_v(WoZeG&Oe_%(PF{5JIdQuiZ241Wfnfxm&?PwLOeZ$ZBv zVG85B4WRdr+75YFxEGuO3()&TH6wSxUN|3q6ncNCG31r-6YymCY3Ti+zJPog^y?pP zK>jB5{!c$Zeh~fyJ_UaTz2DOxk>7y-fbYR|80UF^r>&58gj3-(n1SBU=^*4b*a`dL zhoSdxIs$naJQ|(=KLx#C(|O33z$@Uj@Eg$kGkp*FKKNt!IQ#|leoVhdehvN&z5^#S zzFQw|2DgQ~K#k*}?fP`+{gyt2+yrOA9ykwrf29%RBjE~oEc_(&eoCK1z7T#1UInj* z-aqL($aljZ!bjng(EBC*7WozU7x*^(5A^;>8!_J767B$ZgEi3mA=M!t2wUN7*ayA; z(Z`S%!KH8&JRW+#qt76p3onM3!>>Z`Z}ctXJK??XA^211{fvH%{1SW>z6t*Yy?@bq zjPo{y+rXXS9?<(0<&YcUA#f(_hTfm(Bgn(>9!*}6YjPEvtTfpsM8tx5iVG$kxTi~H^4qN~S;V4`J$Ki4C z6nG~5JiG{g8D0aw4sV6uh4;W8!N=gw;dAhJ@K5ls@Sji@q-i^|F5Coe4R?aO!+l^D zHo${nJM4l3@Gv+87sKUnH9QfX20shWhhKzO!mq)b;J4vj@P7C({26=({sz7b{|w)P z|Atc--);amhugtj;a+eCEWrI?Gwgu9a6bGfEWj7@SE@s z_yhPL{0V#t{tCVb{|MiJ|A6nobvAM3X=At*+!0QN(_jYH!-HTO?1cUB!>|O8fXm>~ z@C5iNcosYlUIMRx*TQeW+u--$eelQdarg`PJp4U;4gL+j19h#Z*0=THW^h}$3)~Y< zhk5uR*aT<69ykvk4oBdTa0NUTeiEJmKL;;_UxHV`>)|c%JMeD!L-;6s54xR$fgrA2O!7syW;Md`;@VoFH_#^lj{5gCM z{to^L{uTZcro=(X`hU0y+#2o#cZd7HENp-W!*rKugBe&44}xv56ZXRo!xB6KE`vwI6X2)dS@1k~3A_Sc3%>zxgWrSq!5_oN z;VI1e5UN8pig1w0mh5}pA+ z2QP$Qf>*)o;Vtkx@NW1+_$Yi5J_~;fUx9ytZ^Qqg; za5n6N3*pD$BDfT;g2%&C;b-8v@M3s5{3^T=ehc0S?}ZP+pTei%ui;DZRrn_S7o4=6 z%b)e&rf?g$Gu#923v;j$9s*~=Za5cy1P;TG!=vCa@FaLTJR4pBFNI%$*TI|N?eP2X z0r&`f0{#-d0RI4Ahku9f!nI^UhV}n&3%ET@!@XfGEW!g|3p^CgfeYXu9ED5ZI6MxX z0?&k>hZn&w!)xHz;jQqy@E-Uh_!#^-d=CB&{t5mS{u64*SnL1cCU9%G6Wkr{1GBIJ z9t_)I7aV|x!6CR9E{Ch(iSRV|S$IDDBD@lQ4c-L54ex^Y!-wI|;4|?gr9&X!%xF=;1}R!@M?Gi{3g5u z{s2A*e*&L^zk)BqKf*WQKj3?Cot<1hZ49@9JHn}O8qC0Yco1xZova2Y%r zo&Y}u&w}T{OW+moTKElk8~h%;5B?ZF4u1ikhrfrf!N0+GpvHXDa)?T~70!lza3TB{Tm+ZGRq%LtD*OyQ7hVi6hhK#^ z!f(Ml;l1!7_*3{a{55+tXJUAR`-<hZn&w!)xHz;jQqy@E-Uh_!#^-d=CB& z{t5mS{u8ElbNRC_+yrh7cY?daeP9+gz=L5s?1BUEFgOGk!{u-_JQ1D-KMT)?UxZh} zufdz(x8Ysze)ur_8GHu*2EGjc4BvwPhEt@?w*DV(4!485!oA=OSb+P(X4nCH;e7Z} zScYS8CHw?D8Gag`1HS+-gIB{F;5XqN@CWcg_!IaP{1to={t>+J6GX=At* z+!0QN(_jYH!-HTO?1cUB!>|O8fXm>~@C5iNcosYlUIMRx*TQeW+u--$eelQdarg`P zJp4U;4gL+j11Im{@@IXx8Qd1`0{4W|VIF=6Ho;l22hM|s!x4BSTmg@TpM+WAA!U0F^NDez4A zd3X{0GQ0+U9o`DR3-5tHf{($U!{^}d;Gf`M;Xh%j#^ukta1*#S+zIXu_kmg101t-k zunP{r!{88H441>z@I-hT{46{lei2>?zXorD--dU=`{BdzXYd*L8~8H(GkgpF8%~+# z@@WIOIouBJ3ipCDU;*wAn_&m+h4bM@p=={*`oFb5mqA#f(_hI8RZ;4u6+ zJPIBIPlBhzv*88sQuq~k9lROd4!;i{fRDf@;4k3|@DK2H_;>g&T&vdQ(}r*hxIIk6 zy3*aCeg-hT#JPw`$&xD_c7r`&XYv9-6t?;|>9{3~p82mYW4*m}Q z3H}xS6KVi>ZI9N4o4~E%PH=a)56r>_cra{-U2p&%28ZBcxE!vAC&JU%4>yC`!d>8=a5~Jx55Xol3--Wy@NhT+kAy4WvG9}d4EQ;C zA^Z}&3SJLyf!~35!ym#&;gj%L_*?i2{0n>={s*p|clopt+!F2pcY`%>KUfD3gspHk z?1Ky8$KWEk6t05D!&BjB;JNT(cscwkyb*p2-U;u855b?pr{S;ROYl|rCj1wiRB-vT z9^4de19ygdzNVy@yw?%;kN<5^zeZ9d`)zT+1L$r|Vrnh_X{ahaH@n336;k40IU zl~|Jv*qrUym3=svqd1W>IG@Y7mRq=+hj@|~c%Aq7gs=F4-x)kxpwsV+#F&iFWK7G< z%*BE%&T_2EI&92V?8qMM&tV+PDV)tkT*(dG&V4+}GrY`Oe8}f~%g_A9P}u{W!ZRx4 zFcDKS1G6zNi?9?cvIgt38QZc8dvg#+assDw9+z?rH**&c@&wQG8t?KS{>%UPjsN#9 zqW`!4^AE=0pG?X${EInRfPb?rtFSg3u_ZgOJNt1c$8a)daUoZ5J-2Z$kMJ}v@g^Ve z8Q<^|e==mwK&Nnw!q`m66im;o%)`Pg$qKB_dTh!z?95&q$PpaRX`IU?T+L0~$pbvj zbG*tse9V`8&#w%cE6^tlBQiSUF$q&M6LT;>i?IwVvlbh&1>3V5`*H|Ja}sBA0heFhuS^r?8C7SWLj=OvfzD%|a}}@~p$#14d4#8Vi8uLx&-jL)_>&G9X{quzUNm4Egt9-h7lQ^@tB0E znTa`=pT$^)m061o*@ErajeR+UqdAE)xq!>Lj$65hhk1$@d4u=)l&|@bKNzA!pi@{z zW-KOPa;9Sz=4K(5V0l(!T{dBBc4AKs;Bb!PRL$CSzh67KH>|$;}-@g z8R!$55g3henV6}Vk=dD#MOm7aSd$IdobA|^eK?q-IFU0rpUb$GTezEtc#;=*o%i^J zulRxA8N5`W)9;MLn2gV4Ov}v7#eyu(a;(ZaY|K{d$R6y^VI0dToXtgC$qn4jeLTuD zyv$pC$me{^&-}$ur30P9Gb-aS5mPb)voSA=uoNq@2J5pK+p-ILa}Y;z0;h8xmvRj^ za~BWt1kdvt@A4o1%m4U|!O8^s{Kh{RgMTt9)9^3mWC8xovaG_|Y{ZuA!0znFp&Y}> zoW+G)!S&q6y*$Fxyu_P)z-N5JPyES{WdohUF$!ZdAyY6tvoa40vm`69I_t41+psfx zaUe%#_-3vlDxA0EcrNr*aM#a}_so2lw+B&+-ay^ATV09ltP0g+QOsjKFA&%fw8@ zjLgn_EXvZX#F}it=4{8V?8Ctv#fhB3`CP`e+``>F#FM%7M&e8ms^&fpaToqlH| z#$3WxiI|cZn2mW^gr!)KHCUg`*p^+`n}ax#6F8moxRh(SnY(z9CwQLMc$fe1 zU;f8$3|2YN=QsYr82pn-nTCHcCkyazmSq*zW+S#_2X<#a4&@k5<}5Dc3a;li?&T4l z<|W?b13u#$e&SDttP0c zOfKMZuH#nj;bETQMc&|jKILnES8@Zlb03fL3@`H*AM!ch@-u%iRLwxA@QlhhOvIGT zz--LRA}qyzvn;EyHXE@eJFq+ZaVW=dGG}oiS8zSIaW9YXG%xWcAMhF9@DqPB zWbHtwaE!v(Ovn^W&#cVD!Ys)Otj>CD$~NrGUL42~9M5T-%OzaRP29-?JkE2x$~%0_ zmweB!3|c49Ck!JpI^!`3Q!^8DFh7g23@fu18?pu4vm5(z2uE`gXL13Ta~-#G4-fMc zFY*TO^C@5RBY!YN-9V?XjLcX}z~oHFEX>V9EWz@u#=306*6hTd9Khim$Elpd#azXW z+`;`k#gQZLXaG$Sw?<1#T*F(b1xAB(ayE3qaUusPeYEBkOTM{y!& za6XrDEw^wt5Ah@~@H+4D319I8zcYCKK&Rgsi7^?U$(WXznTrKkoaI=Rb=a7#*pWTh zpTjtoQ#hN8xRM*Vo%?u{XLy;n_>j-}mY?~Hp&A4_g=bX8VIrnv24-Vk7GWt?WDVA5 zGqzxazT|s;WzfcfK4BP< z(HW0Pn3|cGgZWvEWmuWD*pMyQp554&LpYj~IFk#woa?xidw7_qc#$`FpHKOkANhkJ znglw9Wn{);0w!lVW?^m?VhNUKHP&Slwq_^xtS&22-fX&&CUD=0&If@fGgY&tJYq^EHd59-@ zf!BGDPxy)-_?^L<1v>rCNQ}w&Ovbd#%v>zU;w;Citi#4^#g6R3{v5`!oWj{$#FgB@ z?cB$sJj2Vp#fN;(xBSds4Anf)DLkVx4ihmYGcX(TvItADB5SZdo3Smsur~*BBqwk> z=W!|5a5H!DAW!f-ukkMb;lKQk-x#b#pwDmogE9CglQIqeVony|-z>{2tj$Jj$qww! zejLg%oXlBV$Q4}AZQRQvJk3kI$p?JKH~hq(4B0Z!DIB9PHWM-h(=#jcurN!q0;{tg zo3af%vlj<)1jln4=W+>Ga}#&+0FUz=uksEb^CjQ&D}%NQ^a;a=jLvvW!qm*f9L&#R zEW^sI#fEIb_Uy*K9Kz9@#F<>c#f!Yb`+UmR{Ky{+(K^s6EF&`(6EHc` zF$;6E5KFK;tFbPdur)ieCkJpi$8jp>a4}bLBX@8=kMS(8@HQXu1>f-tgR}|s3C#$M z#<)z(RLsci%*UcE%}T7v25ioD?8-hI%u$@k8Jy2$T+1!o%|krN3%t&Ie8N}!!0!y+ zHqhyJMq*6HXELT`X69l+7H2tDWgRwVD|TcL_UAB;^6LFZhmM7^HKcPiRJ9G{$9Orea2BXFe8X zX;xxQHehqMV^{X!V2a2v748Z}I`3 z@eM!mCqs4*bPC5PjLn2h!Su|^JS@zTtibB5$EIw<&g{j39KrFN#<^U=)!f9LJiy~T z$E&=<$9&26{K}v`0)4_TBBL`NlQ1j; zEBEj)Pw^se@IIgNH9ztPL-Y)E3d_ih#RN>wbj-rsEW{El&uXm8CTz`4?8yNf&T*W| zIb6(D+{hi=&tp8xE4WW@&d2(9-r_PKkz$)_YQRWosk%m@tKTinVGp*ki}V!Rau9P z*@_+6gZ(*-V>yMhxri&df!n!{M|p;qd5aJEoNxJ=zZj}dpi_88WgI4AN@id-=4BC< zVnx7Xuz`t3RRal#i*peOCo&7kJV>p?!xR5Kjp4+&WM|hf-c#{wKjBogfKN+%Lpi?+T zVQeO33Z`dP=3!x$WCd1dJvL<p zALtW?5gDEFn1rdBi8+{`#aM=wS&I$Xg6-LjeK~}qIf*m5fXlg#Te*jad5RZ#gZKHA zulbQb7-B%6Q&>i3EGA%brehZ7W+9efc~)axHeqXaVowg>aE{|t&f#LN;zsV^ejejl zUg2#%;tRgx7X}#^=o6X|7>#k6n5meN*_n?;S(=qtlMUFM?bwxlIGCe2kux}-%ea$4f#vI~22 z5Jz$Xr*j^cat$|g7Z36T&+{7Z@*n=o|M-o;h6MWj#y=Q?e=;f4@Gs_M0shUhtisxC z#Fp&9?(D~*9K*?+#f4nK_1wn2Ji^nw#G8D;XMDp?{K=3*1D(P#3S%=NQ!qWVG7k&0 zBrC8w>#-@@urqscAV+XKr*STqa5Xn^ClByA&+#hn@G)QVJ-;&Out1+MjL7JW$0SV6 zOw7UjEXFdd%vx;77HrRM?8_k>%}Jce1zgT`+{!&X%u~F`8@$h_e9e#i!4Sg(ox(CQ zV=)1fGaa)qHw&=@%d;BmvI$$W6MJ$1hjSdKat;@B6*qDR_wyLf@(OSB5nu2fzc9#% zK%dZzz-Wxi#7xDE%+7o)%F?XFnry)4Y{#zb!@(TIiJZatT*kHB!reT?lf1y|yvHYe z#Si?>;3ET_erF`cWPB!LT4rW07G!ajV^!8+W42;P_F#Vw<5*7NY%bzTZs2zA<58aB zW!~aLKIdD0<}ZdC73dV6Q5lDcn35Tojd@vwrC5N_&HagJfH~zsG{F6zUhJP_93-E82Wfj(DBerA*c4t2hee-r#*ce<^gAOl zCgU?1(=s!2u^@}H9ILVp8?zNVvIqNf7{_u7XLAu(as#(>ACK}3FY^{3@;Tq~Gk-DE z#6YL;jLJAn#FWgyY|P6dEX9hf!TM~*w(P>*9K?~F!0DXFrCh_!+{J@D!SlSvyZnd$ z@;`oKut|YFzwr;o;Gay&H2jM>S%81DEUU0K8?hxjusi#4D93OzXK^7{a6PwiFOTpv zFYzWH@EPCm6Mr(~bT*Zyt!TmhOv%JFFe8d-g$1e;rEzl=4BQP4{GBHyzBeOFfi?TE;u_ha^ zIoq)-`*1KvaUy4MK9_MVw{SNP@gy(sI`8obU-1LKGx+pCr{5WgF&Ur9n3kEDiv?Mn z>vBBo>p zW@BC!VJTK*4c2Efwq+Og<{*yb1WxBXF6A0-<}M!O37+RQ-sM01m;dn_gUt-|`Hg=t z2LEJIrr}@A$pZYFWm$!_*@!LKf!*1ULpg?%Ig1Oqg6p}BdwGPXd5JgqfY11bpZJp@ zX9YTiV-&__LZ)DPW@R20W=U3Hb=G53wqa-X;y{kzcuwP7F5zl!;!Ymmah~H<-r-}u zT)(Aj}LVHlCo8IMVrnwgk``B{u*SedohkS*Ar-Po5yIGU3$sJBc$lYn zkvDjsPx+c3`GX!^UjIj_kqy z9LBMn!r5HJmE6GX+{dFl!^^zIhkVYr{LEhrH9ycPJfkuW6EP(-FdOr-2uradYp_0> zu`Ro>HwSSfCvZCFaVghuGk5VIPw+gi@h<=2zxj=4(!f;9Lh1A%voH>6nOwl-T*s~4!^1qqi@d@6e9G7S$R7-` zIM699BQq8gFgepP3v;s&ORzkvu`ZjiH9N5<2XHvYaVqCXE|179X4hwc4QCs=P-`t6wc-%uH*)8 z=RO|g8D8csKIC)0@If2tT zk4w3Ro4Jbzd4lJ8jd%GE|K)%D#$d|>eSYH~jKM#dlxg@EbFu*cW?5EYZ8l;{c3^k* z<4}&_WX|G3uHbrZ<6a)&X`fPg;|mnSe^CQ zlx^6Vy*Q8~IG)oumrJ;so4At)c%0{Wm3R13 z8CGU3He?I7XE*lc5RT>~&g23v=Q?iX9vNx~WOblVXhvW( z#${rrVn$|XJ{DzZR$@&yU~{%(SN7pxj^ael;CwFQT5jQP9^y$};C0^P6TadHerNDC zflj|O5@RwxlQAtbGZzc8ILomr>##9fu_Jr1KZkKFr*JkGaV0l!JNNM@&+syD@gbk{ zEkE-YL#+*T3eTvF!$eHU49v#7EW%Q($QrEAW^BtY?9D+O$qAg!d0fgh+{|4($P+xz zYrM;U_%HwCHwIf5=<^%@U=04rq)fxVn3DzgH_NgLYqJqsvID!bABS=bCvz4Tas}6O z8~5@EPxBIQ@&TXm4L|WGL#_{W3dbmn&4f(B^vudUEXNV4s`mRkr zK%d|E2V?M0CS@A_#hfg_zgd=5SeuR5k{#Hc{Wz3kIGMA!kSn;J+qjoUc$$}ZlMnce zZ}^En8FE{oQ#eLpY$jw1re{{>VPTeJ1y*N0Hf0-jW-kup2#)78&gBxW<|gjs0UqZ$ zUgaG==1ackR|ef4=o5w!8J+Q%gsGW{IhdctSca8Ziw)U=?b(feIfSD*i8Hx?%ejtQ zxrc{&iWhl<_xY5s`H?>uVn?7;SVm?nCSY==V;1ISA(miyR%2Z@VQY3`PY&R4j^k9$ z;bN}hM(*H#9^+YF;cY(R3%=tQ2H6?t6Pghijd7WnshE-3nU6(Tnw40S4cMIR*p+=a zn4>t6GdQ2ixRzVEn}>Lk7kHib_=KIB#1p55OKNy35GAYyW zFXm(c{>`$i!rE-amh8ap?8l)T!^xb*g2OBFg>#}4-2y-E3i82u_@cIGkb9$M{qo+aW0o|H8*i55AZn8@hb1|F<HQ@qFn2!ZI>rF#(e^9kVbu3$X;tvl{EN30t!hdvXAWa~!8~4i|G3H*yE}^BB+a z3UBifU+^8jFvx*GpU{lJXpGCmOvQ}M&U`G&(yYXqY{2Gh$FA(d!5qbjoWc2A#4DPU1{1;Bv0xR_@_pp5jH`;C(*jYkuSphBy}J6qb=0 ziwT&V>6nGNS%@WAp4C{FP1u^9*pmY|oZ~o^bGVqRxRE=!pT~HXS9qI`_=4~Fg+Y!7 z`h;c#Mq^wiW-4Z6cIIPImS!c^WCJ#5J9cFs4(2FMmJwD+p ze&BZoKN0BkJ0meB<1-o4GBb0rAd9mctFjIovlTnC2m5mv$8rj1a}if^1GjS@kMayJ z^A;cSIp6X#e=*d_K&SAG$~a8Kl+3_v%*!Gy#fq%K`fSFw?84q0#F3o9>72)i?IwVvlbh& z1>3V5`*H|Ja}sBA0heFvQtFr?8C7SWLj=OvfzD%|a}} z@~p$#14d4#8V zi8uLx&-jL)_>&_(u^Z~TKX z_$QMx4gX?J7U173%POqRMr_Fr?9P51$}ybGSzO2!T+eOX%OgC^OT5Vke8xBY#Ged# zGtemy!-$N|cud07%)}hb&tfdY%B;nPY{B;I#=acF(VWDYT)^dA$F1DM!#u@{ zyutf?%GdnJ9}ICj&?zh@e7083G@lg2#m(KOw3fw$n4C=qAblytjPv!&UWm|J{-(ZoX8oR z&t+W8E!@pRJjn~Z&U<{qSNy>541PDz>32qAOvYz2re$X4VnG&XIaXyIHfAe!WDoY| zFplLE&gLSn8C>zTyXdXYl_m z%>UQvcSd4N#%D67WoG7LK^A8@R%IPFW-E4N5BBFUj^z~2<|3}-25#p*9_1Nc<}E(t zbH3$g{$i-mfllEWm2sGeDVc%Un3qLZiWOOd_1TPV*@eA1h$A_H(>aezxrUp$iwAjv z=Xs5H`49i)fBeQ^VFG=A;~$K{Kbe$i_!o1s0RLuLR$*;6VoP>lclP5@j^Sj^;zF+A zdT!%h9^q+T;!Qr_Grr*`{$$AC0-eG!3S%=NQ!qWVG7k&0BrC8w>#-@@urqscAV+XK zr*STqa5Xn^ClByA&+#hn@G)QVJ-;&O?}0vH7?IH#k4c!CnV5t5S&U^^nYGxEE!dvj z*q1{%nv*z_3%H!?xRrZ&n5TG=H+Y{<`I;a3gCYKRL-T+0c34JcEGA%brehZ7W+9ef zc~)axHeqXaVowg>aE{|t&f#LN;zsV^ejejlUg2#%;tRgx7X}Fz=o6X|7>#k6n5meN z*_n?;S(=qtlMUFM?bwxlIGCe2kux}-%ea$4f#vI~225Jz$Xr*j^cat$|g7Z36T&+{7Z@*n=o z|M-o;A_n^W#y=Q?e=;f4@Gs_M0shUhtisxC#Fp&9?(D~*9K*?+#f4nK_1wn2Ji^nw z#G8D;XMDp?{K=4i1UiLd6vk#kreJzzWgZr0NmgKW)?-t)VQ2Q@K#t&ePUBoI;c9N; zP9ETKp5s;C;bXq!dwylm|83Cy-?|ot5gDEFn1rdBi8+{`#aM=wS&I$Xg6-LjeK~}q zIf*m5fXlg#Te*jad5RZ#gZKHAulbQb7$S0@Q&>i3EGA%brehZ7W+9efc~)axHeqXa zVowg>aE{|t&f#LN;zsV^ejejlUg2#%;tRgx7Y2zE=o6X|7>#k6n5meN*_n?;S(=qt zlMUFM?bwxlIGCe2kux}-%eaP5?*RV)t^bU~n2gV4Ov}v7#eyu( za;(ZaY|K{d$R6y^VI0dToXtgC$qn4jeLTuDyv$pC$me{^&-}$uaRZ&gGb-aS5mPb) zvoSA=uoNq@2J5pK+p-ILa}Y;z0;h8xmvRj^a~BWt1kdvt@A4o1%m4U|!T$Fk#sB?| ze&ZjE!9SUlY4{g&vH<^PSyo|fHeyS5V0ZT8P>$hb&f-F@;CgQ3ULN6TUgAwY;4{AA zC;nu}KLee@F$!ZdAyY6tvoa40vm`69I_t41+psfxaUe%#_-3vlDxA0EcrNr*aM# za}_so2lw+B&+-ay^ATV09ltP0!a$$UjKFA&%fw8@jLgn_EXvZX#F}it=4{8V?8Ctv z#fhB3`CP`e+``>F#FM%7M&e8ms^&fx!>v;W`v&q$2P_)NyM%*^jI_GgI*Kjj;@gPs|Jg@OC|KY#$Y{?Gn&VC%qF`UdXs7Ov2R6#2n1eVl2bTti^_G!S?LNz8u2QoWz-2z~x-Wt=z-IJjIK=!TWs5 z*ZjyI43Rw0DJ&y1785Wz(=iKkvk*(LJgc!To3J%Iu_p&`ILC1+=WsDsaU*wdKacS& zukbb>@de-U3xlKx^a;%fjK;W3%v8+C?99iaEX_)+$p&oBcI?VN9L!Oi$Qhi^Wn9ZG z+|5Hg$qT&BdwjxI{J`%Fo-)wscSd4N#%D67WoG7LK^A8@R%IPFW-E4N5BBFUj^z~2 z<|3}-25#p*9_1Nc<}E(tbH3$g{$i+9fllEWm2sGeDVc%Un3qLZiWOOd_1TPV*@eA1 zh$A_H(>aezxrUp$iwAjv=Xs5H`49i)fBeQ^sRMm};~$K{Kbe$i_!o1s0RLuLR$*;6 zVoP>lclP5@j^Sj^;zF+AdT!%h9^q+T;!Qr_Grr*`{$$8BfllEVg|V5CDVUyFnTLg0 zk`-8;_1Khc*qOaJkRv#r(>Rw)xSE@|lLvU5=XjNO_?R#Go?jU>ZJMVy0q7W@kPYWocGoO*UY2wqsZJ;b4y9M9$!RF5_Bm;cgz{NnYS}-s2O# z;s<_b@C<=YzcUhJGCq?rEi*G03$i%Nu`27ZFxApYtt0^A|&940H<5sEorzOvwz)#=I=TQmn`ttj}iuUwd}~XVu&WaQxgBHQl6C zq%6~dY$K^eQPZLsm8P^Q)!do6%}mXbnQ0@8B`u;T6_QHGo`gb#kUd*=vS;tL7RCEK z=l-5Lt~tlZi#MP7e?F)0J?A|0od5Zs?SIa>(_kTv!L#rJya+GDD{ukcfVbgYct1XZ zPvZ0VD!zjs;TQNV{)ClU#@Z(VYvbOyKOTsO0$1d0%`{1dV zj@ej%qj3VBk5lndoQv1s^>`~T$NTVMd;-_uEBH2kh@ay(_#=i|#oDJj?ty#Ze%K5T z!mzT`) zQ?M8I$03-7Be4j_V<}F;OYm}>hu7jwcn7Y)2k|j{24BKA@ICwlH{lQXGgf6g)kOQf z@P>>x#^!h=wn6)S@GgvZ$3A!}rlb8Hcmd<1aRQ!?Q}I%qi`U@wcq=Z)`|x3W0@vXy z_%?ospW`?9BZex)_QUG92kwRYVKY1oTjH_U5xe2Z*bh&`OdNry<2XDAFT{&+7G8ym z@J3vU_uvEgC_arZ;_LV>Zp5$fd)$UqD#zL>jCWTaB2L4ZcqJ~xC3rjDjjM1CK7}vfYq$YF#xL<6r-4j#drpui<5CW&c>^8G2V>Ja3!wB z$MIQw8Q;YB@l*T{ZpL45H_p4eV?AtyP4EzGfydwp*cE%=DL4otn1h8l2G7C^a5uK& z?pO~SVH31|p4_gx`}Z+;0(Qk7cnS`}2!z*wB-hj8^U3fn}f=}Y} z_$t1GAK@4HE&ha+*nSCE8~4Wj@jyHrkH+IL8B?$q_QxTZg(I;D|LXsD=Z~K6Y=7|U z_b1bS-O$c^wqKme^kEo9>yMw#xSjuO|2UuNQ*b(3zx*o37ozPaw=%vQ@56`j30#M- z;M@2ievaSZj~HS*RmVN>-_ouX_dBuk-p=0dl=nQltL`r|I1c9Ee7p{C!8`F@d{2I5Q!|_%PYhiud7n|atcobT@*CbzEY>17qIof%z4dcgS7wnFG(9U=1 zjAvs3j>ZXS=eenjUy5__8oVC=sq@=jwBLT%3=hMWcr13rZg?{G!_zPmN8sr=4$r|0 z@nW2XSK%VO5trgUxU<{6yvMU$C*%7~w%jn=uMX~w`(abGJb!e*v*lFm*Rk_=d9T~M z`hNWY`}d>xG`@(hWRIktaQ!&+D$_r<1oC?17vu>+on zJ+Uti#th8GQ8*UQ#)&u$XX2H(5SQTXcsH)XHTV?1fUn^O{20H)?{F(tt`cjf8dwJ# z-~o6L9)Yc}9d^Q0Ov3><6r)&i9*nj7AH9FsRnLRAz5nX#>(2J;{%rkP(=TX;$@qKs z+v&tr^gmH&}@4*M~QG6O-#Mkj%+=yS{_qYwKa6b^nJ#imQ#Dg&jTVs2)_OCd< zRGeS*{qe4TU;20N&wuv$Q^k9`*m1Y3zqfma^XW_Y2EK=%;3oV5f5xgjzo?0Iu^~3b z=6EEw!Q-(D+Hp|c>+0Y2y@~a5z*LgTMXHN((dm{T?%_Cjsyuw1smeqDRcd|5*`&(D zSoi}9WjSv$e}gK^ zbFZs1-+g~5%WbaPN5&l8T~v zNjfnpCAr72ZfU8#hNTwdO31ILb%~ZWwNEsXm6lr&A3UHawsADPw$jSK~`S0D1K4y?9P$Ayo^ZZ$k@tcMKeZc56dkWUMTD7evV{h z6h+5)=SGSm1=&&7J{I)bDfyAiBFUk3iiPCm7DO$lw5OAlS(u+6Es)0A5i`6fk}pBY zeR?KEN=k}yGe(!_a5!d(EiVC8G6VdkE+}uKCYuow>W)| z?iZ&yEbiohxPhLyUIB5sPg}mUfH-Xgi|ZW_r|-5bPT!09t;b|f+$jNZ+84HbeFNea zc;fm6#NFbF>mLxO$FMDTKtS9YPn@>7-}q#pT3mWSTnkTJBp^=jJuF{FKwOF^E;Asm zuO}`mATHe#7Y&HZ^TZ7gh|_nVwjTN%&#(P1@WknL$uDk(CoVT2Zk{J@L_pjUPu$3W zxaFR>ynwjXp1AygIDN-u?V|71{nqzYPh4R@+y|aGJ;(Xw)4r80_w<0ct)94|fVk?? zm$H1tp14NxSyDLK_t&D|A@mj-Z7dTtPF}gVB|c8)X*pPi>N5OZTnmYbUv72#A(^M` zqUCTIq}$|lltD|P{4tWbqF�p2q3&y2#+or++I-_h~DZPtS4QxLLB|Nfsp9`f8hd z;~thct+N%2n<5juabHVZOA8V$Zc$uZvuci`*HbGNw@M~>^OZ=Pce%D6D<#g`E-R#6 zv>mivj+VjNMbGcve2XPtJ(*_3maETVG|tKji3`bK#pZ313Et(d*6ktNO_$q723xLv zx6yt^bF8f8I2%0^>|>+2xP`SHN3UyEEKa{0>0R!?PZFFI3DV^rD}yappAFg1XpSwC zPvflEJpHbYH{SxuS1Li8Pv3u7zK(JElBKiN&KgbPET3Kny!jG8O>p%4wwmwwvhtB* zg7n+x)sO(nZ}JhBCVzY9TIlCx&`FBL-JiB z^R4*RuT=6akRV;(R2ls0*P*fFX#drUU%tej6P$Dj(tL7@=9_PZ?`xF_~lElRKrP>AkAm}`?Bh{S@KC0w->*BrIN3?L}@+y-`vV_(vW8YT0iUGmz7U12J<(RBj27i zoTak0G@teF%gQ&uZphL8k`=%DrPK{O<0MG)S^vJQeBpW_C#RKV^KZY^lCOFDSU&6D zmzA$rI@%>xDM@P|gHc}Un9C^I#m_3z8tzPa+H&SjQFV(nvmz70cn z)X)0&W#wx$AmsL0t%82}Hm1w|CqY_2>))4^uao3!V@U$)S34rdhs0?@G^0gWiay*BdZ~K*Ig|}bNM+fA~k$iGkZZB5V`0cSm@^zFbUEi@X z_^t0^$*1Q>D}MPlOTHWl(tP7(@XPm;}(+4`2qPx443-ZN=lr4jBmejMPa8@X6pJ*49ItLcE}lDj{0pb z4m<0p-=u(i&E(7BdcL*dSHHDmcAW30NU-1bm?HU7%Td3!W958L{Voc~_kujo(e}0C zSHE@RC7%Ro`&}%9)vvewfc=c-=$9XI^zU<8v3Wh^gZF+W=Zqc4?{o>aeEK_P`ZFy^ zP&78=tRJ9f##qsLI^@K~r97A5^d&~IxY5Mfta%dGLuXQSxmxtQ``-F3k@}U&bY0(> zGFbi2leo%`duf)bat|th b3C;~Vkz)DeHt|<+&E=17USTt3o_+i;0)C{M diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o deleted file mode 100644 index 0fe92ee6c0ea3e4945f58aa51ebf37771f188889..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 752308 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%0A}ce^eNrUOAWvNsOHq*j(k)5Q(h^RL6Q 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%0Duh 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 f<&748> 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

    3RA;#mjm$Kl;T;mKw4@Paj9rH_ zp0=CMA{MsML33ee4LeR}4U$KiOoQaq4b?tr0rfC(Aja%EJK_zEvEb*63L!ir%nwfG zvEEITe7Bfykob}^6aMbI1772*FPE$G%rr0!U7qNP^>F#nJ48!EB40WlU4xgmqEGZh zR7$Gq;)nOYD5Ldq1zjut%Ht#%6d!Uq4+2EPTd0#wyl{XQy?t>z zg9;N_hEq~Q7NZ2uKGWfihDK}?AE};%ed^3lLEj;qA#K}PwQ5fK15|7PXk&c?_#^WL zy;l1#JS&}2rDpDd*%vjp8It~;2o_igWt(0kkL~_xhs*Y1%ds2XydOi5!2i&@`w8l7 zq^^xK7VdS|Xu4K0&khFLv3i$20n0tFly5xEvwPs^-fb$cmUd3uKzY z=bM>tkY5A(a7zBgbxp0w7N*fzUY=`XHLgi%nRR8z&(hGI;Yyxf$4n&>*1{Mg-{xJ6 zJ18uMN^%7G9>k+%Y5Mr#=RLKt|Ez z@y!5Wq?9!TDw34jrBi7(lS%{1wP=d(*#p@%0-LK73isL5Oh8| zIzN{QIAUx#Mo0x$>*Tw>iw|+}p>%UEyJFTuR;HG!mZ&N&4m%d{7bP3VD~uVU%nVU^ z%LG?LSWj$i?4yEsL`$nfoMN%^;H%OPXIIV=A@1&Gb7a9v>-jlcNx#4vg;91|qd595 zD;2Kqi{r^r=m<-<&kf`R&3%Qtz?BpKa#5!`^(@hK1Jcwy{&*0TU*JBl8PC@XXEUf> zESyMldXd7b(R{%`i3nhT7Zn!KT5>N5)4TY>d$l+JCqn3%oaEmFjv z=nXxwR_w#*lPSzo>{SIM4%X`xY*iPTnTPLyU9yQyBZ48mImG@@4x|?>b|@bzm5OzI zhJyneSU_y$n5YH0Kw(maXVv;@Hr@0F$DcHXQ%HiVSL3!Ybg@k!U!OoziSviYL5fyU z2FQXrMsN|5P1xrly!GNWJP(udkr`6!d*%LxfGW#=em2-F&Q5IFRKT~4d4yAPggi=x zLDLDWtEQdtV>d1~eizvGgb~+5FOc?>B))d7$DG{_f#FpwjoT}MI1n(k;VCxRVudgv z9K|~@Ng)gx=fJ&H0MiZ0slWTkxU4NaVadc+ub|228Zx-a-;qTr3PM$n^dh-tr|9R@ z(hlYxlI!3Ez6!V_`6l14i<;a}hpV)tXHi2T03Dc=WX5hJ`b_w0c70;I*`$P%iWvfi zM#?0|fZ`FH)fDNj)SM1h{6_*!RdoQ^*!CX5T&@eMza5`z#l+^ z@0?G;kQ5t8oKFElZytqIRail87nj$gTffOuf0Z5LLz8y<0wi0fgCd&fI5I`?q85N6 zk{h4M&KC~A(ze6aWQ7QsLs64%7_F(Zt3aBZf{B3Fx3fn0zYbbg~sPTGLD-AV8 zoSoS4A~sE)V8m4v(4Ui2dB(WV$U~n1`I-=$S&T-<5jP;5Ta4V|IAEr!<2W=n5210i z9IgB%uD;`iCKDJSO_cGk!##L~qi?~Xnr2)nf}|-ZO47x@qpQ-{y|`Kghk2HUI&%+$ zwJdfF;OFoSXHivT>?!gyh_O+*EqR*gmp(U>eyRo?KN{{HldsHKtDy~KTrXML5KLS- z*!zD{R}=3$MsO@|lu7m;;pT+4|-A z5*xn{5*4vo^NaBul4{x1Vk$7dAX@(-__+qNs1N6g9De#Z=62!5(r*aY4jhTk#v>?I@U?gFrrMryEzKQ{;(uo! ztty5F`~Z=gcjNRis2BNF|8Iy&o}i^h08Xj+;aZm(>f0g_Fq|QHO6((X>|vBBMS<5l zU&k=P($05Ec4EvFG%#g7WYRdTcM){2NNm>*LTIwUY;GgsTP!>LY2>R?5>0|A(-EBH zcW9x-mN>@^UK*7>6}qDiP3C64wlBI3sJZ3&DG$v0Q z+*tlnD_wlIWR+3~Ou7P9b=~KhP`Pm-GXnT{pB*Q6ogMNAMKD6?{swCjkjQYrDh3={ z+tS?_d%J@xHA^4sc17W%tY?$^D+D>jz5hEcbVr|E!v-2hUI*nVz$2X3@ognQUt~LJ zd54$~OCJnOh$J08TJmcxm^ef*3InhM;X;@F;6v@(sV~Vuy_|ANnO#r%L3g1+%}7|l zXp}6qOB$rBH7&VIv8Nlrv|@PFkv+;!vf|-@n`H9zWIbx2%Gu{WwKY!}y_mL?PjyZ+ z%JNn_RGLt4DW@__-Fbe=LNO_;_~mG%Q<{rz zrU0-o=<{5b;5-0R7I_$=H_{Vn+T~e3Gqpps1UIaq{E__2Il|N~o?%wlL8#UlMyHRV z9#$R{LoTV;UaBD)Cs#%3ds{BvLN}&Fbf*??6eA?|h3fT^p{*|$t1*`mh6X+~xvwVS z)A2zAm}kp06yZRlwKM-2J5?g2)v*E#rFM!5W9#d`EIp4`39F18rUY_vnOar~X<5tT zJB|cHbKuDiJC9(3<x=1B*P$(Ks-)<8h8LHjV2{_j%Xj5Fug&+12}Olh4?=h1I(5@ z%{_y_z7GG!*bjuL%e?eN(eL|S39H`!;a5I6Kqd{Q%Z1|aHM4m3_`7k{wQ-Y+7bF?VeUoH~{uOkto+1Pd@RR-Z>EYwspB|7xA9i=4^z6fE zlb(G_MacTy$Sq(Ryk^+t8`oz>EAQXP{Nw_J6y!>aJcUl=`W9(5RZc-$Fqljv!Wq?I zy-z+k*wdRj4WcendSNh1DgiurdW%#lp@l`|$I*;Jc%qu-UTEJ=@9E$=7PEEJHc^2z z5-PjbNVq%R!Vi$T-V6L%+a+_%iEZgV>8YuS;UFks(6<$~6eb&QAHhZky;mbaJZ~Qr zAo@_z)ps?ax}`)GUZmWS#aYuE%b(ViXU$bh4-03-^|~qHln`|-iJ?b+I@y%>weLar ziW#rMIkZrD=Up%u$-2Zl7{M(_g6nM&t5Fv-@w$EG zQV-`yFuQ(1bE*|H7p%zp5iP;Bk@0~%72{Kw8EMHwJoBg&#v$2rz#tm1H+Sd1Td-W}Bj}LAvI}4no+b)P#`n z;&A*rB(>igQl0!EW?W}C})i9(&y1To#``del7h1Vj-qR+FLbUj*R z0GYZTv*BRJJU{32^`@x=;e#^FhFowUr(3CQqGmQ1B$yL-j>7roRnxi6XO}mJ%BUzp zO=p%u8=_z~RIXFi#t3z091-+?KBxQ5!uP#r8G8ytQ;JVN3&u2l{U+UK13 z?Tf|Tw8)lIv^AHU;rYe$CTGamNuabGQ_q;g{Za^RT9W|f&hFIXG6Y2x9-HNAwonE( zWNXeC+jYG1G=nROKR@()WGw=u=Zn`6OFbG5+F7S9^`$`S4vBCyf*E4U>OioKo?vn# z^MqVv#usztQo#w!yoF7&J1n39gb@x4zv-ob?!Y8)REXC+0S#z8!^({@I5wCN@P)d8 z8X4;Gf&vSX8sVPz*mBNo}6f1k?L95nd_91-@u$B8a}I@c$NtX<0j2 z_^iC((}jNf{S3N0Q0_6;1u(*%$F^|^OjD_`NxpfNQ(?ZU@$jn{pt!kCMQ|yMlshE$ zV2~8E1cYD{Et>&TY0`BU`ePFy7+$`DgjlsS4jxY- z{WH3P?XZ+-LF0gGk64uXdUHJ-O#7cdOWVvLOb{y8J6K(VJk%NG>{50D^G8y7UNI`$ z?JI;XGVw3!1@@3R!0U)3QWH^a%5iwJ*dRGFvVm8aULOLXj9LV@4J(VGrivmIl^6Xu z4Bku&8&;bt*{#NCBxuk?3^lCW_GCjV`<8HQc8%}KoK+AAoJQO9NwoW?5*zVxzdNl_ zx@lihBUb&wT+gxQqsiR{!{uxin4zPC=E+yY-4xTr*2<;?&9~6-5SfPgjL%8*NiFb3 zhisfPOYPC8xfK2u=c3*LzaYH78$Kd@up2%md`S55CzxW%g2+g51ueV_jPRriy5A|m zuCT>#kf6b|@)Ber#&-zEA@ceSlz0!He6y!x{m5?)lEU{-N6zZI({Ql*(M$+ovJ8%$ zIDt#rS(_WcwDF;lck^))jDykQQ7OT?$Hvdot>Y0NnIf|ZaUaP>2k@!pPYX}Gq!yx8 zkJAi+d9=Pr5`k0w5>mXK#1lwsPxzXg+^g_4b9?7qU{4^`3J*ASE3LJK`im;BZ0hZ^ z1W(ANUzW_Sh|n^mAf}*V{6PM*#0d!a!~>{}mmlswe!qG1-Mf1msF9$8JZSi4?d+0e zyds=#NMe$3wg=a`P0D=c-LsTRixu5QWqB&MPiKc>K}bQ&bDXECund-Eovg|MJ$Z`` z4b$OQNE?yNg0Aa_k8i4YVBWLz9?qBiY#5pI&x6T==-fUpCkucLi;QX1WekPYxL0)% z^J)%e(W5p=pVlI8Nx@wlH1+3T3sc0fS2lE1yOK{^BI!o@XEunQ*pl6#n}7t`yWUYnXR4akGt9cH|#A>~=? zG%eaOlp^KH!DnQXgMl6H`>B}PH9OrMjG-qcJfDw{bC4d5X_9b~%v?qP z_|alAojMhj=PF+YeIio7u^t(2^1h5pM=ScnjQ=Ngaf>|dzxdw~gdLfv7Z)wfp|Fji z47Xxi7Cb19V5dkQYDms$A(3<^+|<5q!E)3~KN%wrm`?;>q&dBn$)^Ho2Wmv&!@&b_ zNFV(|%_R2H!qYU-FZsKe`6H~vTH;agE zmjre8v+Np4UzqJG6zUV;9x_hcJuS0m0nl9Jny<8H*YQS&33xMJE+FZ(jiFAGa1!htJuC_WJTPDlO#%HZCZ08C^G@yb{__ER9N5AuUOq;n;6{XCH2LtY~Ff zOMG`lMM^Rs_$}+P{qjdRJDe4vSiN>RFZ6=W59c&^42BW1Z~N79rgus#MVCdAG*T+<3{ z)d5Yas`X27-#u<3+8fl;y682|lQw-fYM6$gjcRT-$eLcY^f;pzWuXhxjurGFJNv*X z%?NmTa{0^=;$HbLl>$oG@3ZKeE_oVgyP0HA?!fSzv<)atknJ%fBZ0Yq`^+$T89z=` z-vl3was~Mbeb6_|rfT#HYv_bCeXSVxoKKiCSAzKhh9#Q&(y~O@NFd1m4y6U1Us77- z@Pt9a{=K=F_uRBkX~8XnqY5*a?;dPG*uqvwaUNo&IS3iGCqJP>=dqe+Rs4Jn(VQfm z$9#ReUn!D1_+-K`12q~VgJ2xEVKo`p6e>KKn070=CCwO?aXOkHNtmO%{xd8j79UiV zx&9Z(^&f@0$O=2&g0u*ed|?;hbvpVPU}_z+9UPc8UZAv54SCvdcg)|AxM%}<8&W!( zI!+Sra9)8HvGH8%8_j%vlLH7Q2KX)I+$T$CUJGB8bRXS!W!?A3U?aHqLuB1&$~A22 z>G+o99Tu`{pCsrgWjz5+NjT8G&^1a`7b*jJP7ud);@KdM1{6dbd1=E@T^8sfm<}Pc z4ArhkoDH%)BN4wPqu9m$APbD;#X*VPHVfn~8`?xx=OP%fqroRnusi^dg4Jq`%?!I4 zs<9DAt&p4*-igaXqrgRue1XF{uA&C%A+aS8N82j#SHskuBp+3eOiaTTD_VK~^xdVy zy{uC+_wX!%K5Eqf)mhf$U{|;X4ST+SG>{GaF5l z%=v6-dYO3_=m2S5q2)p_`3)reNsmq7WnSrT>G-)uoZkqC2QI|h-qEYG>GJEdt5sV* z0fW|2u#{KxN4q5(l^aA|QZx5(mZvI)jO~y;7DB;ARFVPB96;vI;qIpqI(m9+td2Qm zM6J(gX$+#jSx@d>u;~JdPH;*vM>u$$*}j?}_v8ep^V}1I6PHv4gWDXM@YX24QkY(}~~j#^c$-q+eDvi!*_`LvSZ|Ppw{ecVhzb9rV%4sz3a)@NF8Y zBN`pMzPhdr!SkKc%-dIy*{vT1Vh2TV`%&q-9wnxHV9UBon}R#KdQfNA471RLlBomt zfMCrs*NI`RTz+`qWgKPS#2v`-43#={l5*{H%Nz$;m`-Y#_LUsaho&a63HI41;=xNR z5SSTG-7rg@_48X`y+Q{N`oZO@X>Tkcd6zp1aa(t^($dMS2$7X$#q4C-hYt*M5!xS9 zn@mkB2;*BlOd+ZS%P;nzsvQn}&R6@v5ME|pKGf29-FSWt)APYm%Zr?0PcS0iTyCxo z?H~Ez#7`KKQa8J{eHszvd-^=3J zv_~2#JLv^-m%s_UMT`+#j&Qm=oF*FZG_tUq21@s}f%Jj3lpoCW!~Om3$NLW#pML!D z{zJ*VeD&SINUIB1VrsPoTdO_c^EQC_W9m#G3AmGlW~5BPq^*T}@pgMtHjo7!Z5Z=?Lc_ zeFn*pXS>B0tsme2a{c}Xi*NTYY(qU;i!z>8zUj~cPEVvwyxP~ z@{%qRSszf)hYqN*V{YJz^pmNnt!f(OQ$2EzO1a$uUu2o0vpo#_1{im2JQyYBOzXI& z?a8JNA+k|ILO%m>Cw-OeuxErh5L0`oC=^WpnHC+UsRSrvNTGTAs+ScJc+vz)rDpH9kAJ@U`}E!WzmFc@ z(ZjL6p|0d5j>Hs<;o}!A%|zO?#03(xHZyE*VFuE}bkvosai7lGWbRR6!wYpX%*=AM z?t=NLHgXXm=-x^LT#c{#;0%#9zy&&m`fCxn?(oX1R;mJMok|)9_P1`P*MuXqd&NnS zBQe{2+K$}TEJsSS7jgC|RU`N03=(h~9~3|h#5BNEny5^nlVLOZ`sv>lH`xW2c|I6* z$~gW&dY5$OjCpExn0M!lDLSleZLDxc;ZI)8Ub!ILD|FI4qU9)lV0U(0)tsB3lO>~V zNeG17}m5!vlWrI)q4b|=Ld-iE=3oh5BQiTcETco>>c8U(J zsnGkKmVpFob{}{OlSI>jxh9{tqxV1m{OR!x>-db`ynFZEoA3Wau^}Zi066wkhH~En zpKh<;JUqVr`087WPIf{ZM z+ciGS2{Dv;sJ>~#%2B{3Pa(`pa~S-+cvtKqV(a4_3YiwHayF^hW>XruqU-b7kM;-8 zFU_vw^%7USWE=_JE>V707wKTvP(gE*R0=im?M9Etpp1qt{-kv4HB6IfTTOL6l{@#M zfvwtb-6s6UU^*4jGYu?LseCfz;F=*%EfOs)x8ZysMJ7})8-fanMEsn23MP&HQU4QW z4R&!>0&UH(7S*fybgHWo%nnAWRd+i;QnTAfc>Ga!k?0K6_6JWf!u1UKduR@ud_5eF z=L+w*+aTn4a{*BTq6X%q$Bf8AqjcMX!`tn(BQmp(2eC7cOH5Y_eU#=?uOZyo4YPts ze^boou>n^szdi+*Jzx2>aij6L!&@Y~0)V=v6t*;B*1n~rpU46*VU)L@CHKv3D&!0m zC!jV3Hx)Dp*s<5=7rm-gEcY?s^hN=lsrRJqh61dIHt|?9(?A=p+bBby&lp~Hhl+O3 zC-5QyUei9!b^p!@i96I+*_j=9nmXmo+LOFO)X}r)7r(ic;C(#uj_n?T)OSu2NC-9^D%OIl?~09E1CM+xnR&Y;in*38DP%IIG9ZnY-bnE zD_HBB+YwOEGl>ZF%7fbpis$(*Riufg$MAGF?Mtw{R;JwUmxq9xO|=jfYed3m`edPW zR-MSiEQ@`K>NvKz#SJixH}ha{Q^KL2!=FuONVcFwSQiRIaxPENDQa zIgd>BwFQtGSmQDpa68Y2Gz#BUO`-E?am=BCHtn!n;J~ejIpbEg>vGy`*&SB$K1WtMh?QWCO!{ypK^W1-9A}NO*%n@5i~~|TO7d!4W6f|Y zC2niyIo%v@MN4CAu`5_g=N{+*q(yedH5jSXOdp37v&5vGlsZ8ADw%4TG6;$&^IWf- zvd6cZ*Q3`6gGk{`$qD;^{wu42k)|R1=rBEpk+(PF^A!^9#}ieFEO~FkU;BT+NSSY- zaeh~4B|j&mHtL@Uj*sC1~)xPegk$((J4 z4M@X74etwQ`nl|%JfK8i`X=r#z8xGUQu>r~MGeui5ie6WG#VklJ+7G76ZuMW!+-zq z#~-(sML``YP>hW5wLj&>Na@$`nyfP{E_o5Hy=r#+RFmN@v&r=~aQ!Ep7`W z$q0alaRF1=K{ISxD9AKKb42zbdP9TACC;zkKETAd{{OT%;4(SIS+NaK!X~{`ZR4WC zVrJk@FW}L9gsjD@$@%!T;d0D2if+A}&o02muIPK#`)|WP5C44h-%<`DzWcEF5eNHk z_a8p8hPT`TIjDy4qV7WRC_NhALzHqpzM~y>`~@F{?)a#3lHJA4r`3=e zT%@35jMy~LE6LdPHAx%{e?lC!vzUp_8P6Yy+PtOZB^NK12pAgWkI}7gI2B?E=eeYP z>L2ypcTW3;cufXQPsUtNerK1o1T0Hp&%gN=PWH3w+xe#Qy3y>?7u z(~7v`O0?`i!Ai~N$RRO3A-N|SV^?5bw|;IDCX z;a(dSJDiRkiOIP8k~?p%KAe=)V1Y(RQ&dNlhw}_w>SwFDDdi5cs@nMTey1MO6#xMG z4B|KqcPOr#AgS`a!qXr$RaExyZ@ec1K(bl$>JiI0Johp z`*Qaqg#wJHG)|`2EHzA@%CjY}S;p+tTdM-8vv_W-4gFKjdR2?}Cd{#!G^4DkyWpx4 zqDK+EnIHNLI(5WI`nx?qq6OAX8o!5d^vZ_bt_!aA3QZ1pGGtuHiX5-?5C#il7GP}P z=#~EnnTx=+UBhaQs0CP;`%h0#;g&`hTQLo&=}H9#Q6~N`DiDw#kW6vD8eKV21+GAp zP$xlm?TMnNsni)E$Gs);q=X7A(>NR#m;TJS66|(tiF{2^a*1N-I zJ7Bh^MQZTz;uZmhN)T?cSD80F0}s-fh5<`;>F}f;va%|W5@~C;=ih&S|M8=3k8p=a z*82jacLzEG6?u7^$(9H!wBhp!cGP4$cq-{>eWKvWKKKO}<$>%PT??3XMpSp-2}e;G zq^lcdnrDM?>e%qb9>Hh9MAfJ`?|e=3GJ2*E-j>Rw0Xfjvt%jagtn)@*MmG|a0)c3U zXA(9;y*Kh*en2|;!UWR-P=G|#-hf<{)N$~61K$uv0#N8GIV+KiQa`!E*;!cRf+{r7 zevDkJ=&F@II)$55L6oj5VXt?N;zB$b9P5({9mnOivJ7y3$tNZthzzSK%IVXXndT-JrbZA1Y2LSRrPTkZDhYr`pk37b%@i6uzCBY{BU(jTx; z>XVB2%I5v6VWF^r+bN>q?-TS)OukRORQ2pX_#IITSh@eHgi)LpN?CdC(rAR258~byK^qT>HUp?>B(7F6@rY3;%-} z-;VcbrXGRWOaZi^ui$RSjVq;fr9fb+Q zc>;t<-W5ww(iyVFvEjNOMok$lH|-PIJg4RPg4R^nou=MNI4j0iN_A*C+4l<^#jV zhxKol0Nw#L%pSVg@O~7_u!hNn2TMnhm@z_%QrPJL{AM`)T&yahP+ZQN)r{zF>+ptN zp*>;7kM2~C3FhAkerxXnbi&2dt;QQ@pY!ec?PlSp-Z(ii2{&$R z@ z=98wqvwPEaf%OuF5y%%F55i`|yMRW9d$Jv`)@fKmb4 z#_{A8)spaSg~THq4UpYo@_Sac(DTX`DXCf_mqU}9XsR+$<1qv-ZV)NiIn#x{q5;$m ze8@FN1F5dq9D25^cpNqLxjdYNDhd-~Ng8N4oVf_0vW5KG9Ni8hN5)e0JaSh#)ODDQ z=BVyG?rC>@i+riuZ;e&6Hj z1t3kXyZ5z9-1%|k5X?cNvIJHXTwTq`=tK90K3Pz=2<)>KXfr;^i56K|2Pt;1XES(X z;nT(VDqln6qG(Ynsn(Rhi6#nQu}jSGjb&&VzHu#crjx}Ib8ZWj4#YW;GRUE8_){}~ zu`T7mWpNcA7k;4Sj2`;x=JE5|yrl*(1j5hOPSc-EZ*0@mG4FJUqIFN}dpN$-w4(xKkFk~X;dn#C*|mL$yD4Qk{u8R?4FzGYK$ZB(agH6TVP0IY85(AN2M@kK2vEtLhfJBwgw=l(qgELG=2X8(iCi-#v z%bO2xem=ba{0jo14-fzL{_PJ>NUv#YttA+cdZ9u((DEBu!a?psbjH>W?pgJAJloe! zhLLcaVh|H{=jIaS$+AGzR+sMRfqUUuSEAfrM#l|^-cJS&nMONyRX{YmG!AI#sj5gn z%A*^8=v<^L*FiDdGZG@V6H>4zK7+l>9Ky~l#eGamkS_1c#jdRTd6fYfqNhysA0unbE^7wHTq>M0QccD7`d zb564X)X;fNE~XTP>Qi5V)LBAlR!Ew1JGX^q#K?h)F@=5cTd;6aoUf^Bj+978N9Vpz zDHpJoido}ROZO5D=e)h3ZJce`eZ-aHZKypCXMRQj4cTB}f23AVi#!`P>)<9xA5DI)^#^Z}+SFpWi>;zkKr__n&?dUz|X1 z9xEV(A!rm`_g)&yiV1Yohq8Nb4gsCDjYW&R*5>AtO%`Snw{q)qvQGP2z@2J01^(2r-d1jCmbJ7<9Ds4#C}s z-?Svvury>PB;1UyHR5RGhZ&C*S%sq|xO4L+Om@3b6&yb72EYMu$@=wI(Ay9JWXr?# zD2CR&KHSm&m`*W}{nuuT^^D%ZR#XsuDHnLMWH7Jgp|v^XloH2;;@qOp;D(SG2H6J9 zVGNrd&S;aHH3Fc(yG~XR=1`CFzdWA@*OBXV1BG!~G&Zy-#ZfX;1O3aMoHRwBG*1^B z<}XIYDE$*?DXCmIm30^0ndVVBhs)dtHAJ1IhJ-%khDn)1=?b5%$0vuqV)2->$lS?% zoskc!c_H}?*iJzHHf#-BZiH`BCoV2N=d;2GIUGuKg-5~X*T2$v54*hp+n{p}2Zf%d zEY~H+GRf|rGL$#dW=U_pzD7JwBNjGswu!`ts*S=AN5tJL)p`2iqlPPXp*v5|^h2Z9 z@pmPjyDvsd8>b-9gC&nDG(;lT1F#Kf2Ol>GW9JoHes8b#w!|k~tSO z^)`*h9RN$;16~JtrS1-*j^{s?4uT^Bs=4^|;p5}{{^6&`ziv-AAKpBCL~f&x8ZV)@ zkas*U)Twd=OyNIF3NW{#VU57SA?j;97b0=r!xjso4~FIh-)F*TqS}((f=#5wkX=FH zk|sP?;NC!!-(5G}5}Fy@^+)`0lxnqqe1&6uP1LJ;8ZYdGkoXXa?jOh=V8k9ap{YlLOTEDLw41nVsu((-JJ|3i4Xn&_>uU7wZ|$>Eaei zaglgc8^a`N-xrpue$J|H6uqK!UjJwSr(EX{tLh+en4RhC>{1-)f^P$^tV=-&b>##r zren!%eF2Xq7>jCdE*31X0zpT(hawSrlp;|*-&RhwK;6#nz~3lyj&V&dr69V7Ll7{@ z)dKcg-zWabO{l(B1B_y)Wxfk?#VYn4wb^=y>C)}`vW^?%Mu!AeR|sp%VO?-DNsAa$O-93#~Uk4AJo zGl8K1s3UlPM8hUUS^w0|iKpl*6~^`jL`5pw1kqk63o{j&dJyy^_GNVoF(-=H2C%B< z0-Q*DcimqcTl1PHRh(}ZFOwV`$4}`N4dUNI@qs6+BPQH-(r<-?doQCiZrOD<+2nP1 z`ciyy<@5#Zx9ftSD+=?!tmiHiAgpBnTs1zu_m{u);8LksF&``JyJYBNxLEPH_UzKD zs`*6JOdvN03@VSCCk!EL_G!PBegtk_-2c{r#lAP6*!9-DX&NIR>KXdBYA-b(QV~nI zOk)Eee2Z(u9m;5enZgTXjgD-o<%HoC_VpbbRC7*Dl%0_F^n!%Jd0~HMDdW!O7)bYJ z3|FY0c@?5wtC1nYA#iclxck)k6a=hkHmX3r)sb9$I1t@J8ihai&rXh?9S={Ao(=|s zr)MYkUk{&7QFmF~76t8KzWd>ax9;8yT~;Obp?3p_xLKDa|EVz9evo)SD7#Ez^|F!3=;-UMl{WXlB9C+IB}C0JR1 zi5IBcoK1xm?5AM`$Vpx#&RIFik9=`5To>25g4)sY5Q8YgRKV~Ilik8}oYMbZtX>#0 zNG-jrU_ya0T(Qa9D3mYi4umwL7&I+;s~ z<_Bv6;TW#BHMi`0-#}?*g4Zsc7v%@)_-c$E~gF{-k$KeMaHcUIW6Z(~6pUumN@t*(XBd#Rt7)2;5BLG0wQxTQ>ZaZIqOB^<{q3| zecMyimUE#p_~8UtRlZ+s-?MJV?J^qha$@DfXg-GraQx<7n^)eVy573-fM;)zwzaYa z6F&-+d%3kt&=8p;2g2du#Tdse=>}@oW5Mhmej&JZ%+JjoBrLasBlQM;g1<#!ti$+0 zhnf8Qe_}7lO`<4srVs$gSsP3ZXO8(Bd9dWqv3~h2Ep8F1(AbB&`)U1%r`(ne2X+wW z#p-o|@k6DPMHJ`IQfAT#yd^kQA(u#v@0_PTBdSnt){%0~M(F%|2Ur8s*>Zz@r*n3K zsrwe5W^g1OZ6Nl<6xM(D&1>t)+Cc3JY;>_+^x449ejxh@C)7C%EVK1^GJQ!! z0hb8eOdIz}5b`5cS-B)ExkfrmOGa3EzLbZi__WeZRFOxeo2Z2%@fLFv6^n~a%Rq1> zVP4rDLcR;>GOkB(r79|~or3cX=AP-Qnux82Y4Y82jfk)R3-(*QoLCGeQZ8yY5PcX8)3rJeWvs9{NNoU~Boj$QZC5zuA=f!z2XvNONzn>;n+3-D5&AsML>Zeb83 zeboS+G`mO`Eq;eHb>NlYcV8M)#omyMUV++cI>f%p z${VPVj$QPQvYy1So;*Q-Afyiz$%%pV{$Cb7;8WrT7CmS`2O9g{;qQ6Qpz$0Gk^?Ws zgW1_Pp17g=ImLLs>^T|_XIe|RYo?h1&zA`NxJ^uyJFeQBS5GkCNm6pY*7MgoDVMvH zJ!81)PP9C-ohb!}INa={ES57eL-HwIorF4hY*VBI^jxH6ev*>Yy60-`Q;Q5XB=&oawV0u(bRp`(4ThCZkeSqXv!MYLQL0?+4{6dzl zQWi4w?GdqY(9z++kZrjEf|>#cjOE9iMkQ!@h=fJ`LtZhM~|KED0w z;r@pn1CI(@bPj2FYGd_C&=L#tQ&YW8X*E+TBlXzRJ$+TQ1lLN;ATr?p&<)^=l6r6k z{UDSp_Oa<|LuvRYVk8@)SAXr){3Mu`L=4piD)y2&;Kc|j^JEILNgzGm@^-Ubj1!aI z?|-s4nhm0|3i2~I;|)Bo!iO@o@}!u5W4I(nE5pOqZ=X&Aq}em~nBR0cdg*#^bI+7ey}+0r3^CLc zTvBOIT(>-!R=Sx6$Op-DPhAD$`9lrn1k^#)=Dq#+=DTl~rANbYcl+?7vy&a2}VzYM`n{E%*}f>WCY6}`g(*R)iX?kxG0CgI~`hbuhL zv8OHL;VB)E3%g$h(zhy069)+c?{qcmm2Fs=N(^Ha`k?1z;8i6J=F=T=W5;scEWU*; z0mkOGW+FftFJQlkDtQ{+)Km{rZ!>|gCT5zMaFl64?K9nKMfB4|&FNDFQ+I7B=4~hL z?aW~lAa&=osu%|i1zCxPReB8d!8zLAQ+p{`x22qHxNffMD*(1=U_WR!_7V(YT8p+Grb#dY z-pQE4>d=uA5`apuLw5@uGr@(W0&NR%}#PE8c%C?)_CzwB8{MC+tDRN~6 z$YlX{3dQ+4-scobcw*KtPnrv|W}GwXWccqa+0!BxG&3zC6V03)wu2nxpFlIEW!T$c z>Fe%L2m)BKC<>x;>4!MU1hb+;UgsBF<`zsEo670%v+6iI_6;tgEeYA zyS?s`ih)|;K~(OP?xSy8OzUY*9c#WH%Gs$@5~-zk7l-GlJV_=w6ibsSEDWC&W!}+A zJFI{iH}6`8l)eDeOuTN>57s_20rfCX!a`@noAvc<&7A%q_)t-pUI4C{r1@#5Lvyk7 z6bPoLLLMp@DC_ZCI=$uv66!r1OAszS1hUVH{ zu4yBIHDfUX3LMuGQ2LW4c$l|ndxdETtAA{!q55lU15)m#4|fS>$>MW;mtOeOu%8J# zmCjE}EjaEo7Ia@IXe;tFl@;&|^R5^o51nicNPzN+$vA6E(TJp{Fb~nZX;vAMMmjQQ zqbDZoGjvqY?k;-Cl=R0iRJbikxBaPo-`9V!NZHEd#K?>CSx?ODVb1_MWED$PXk$j! zJdE!qzo3H6linYDpz?si28`cJaG3~fgvy#0k>abF)B|4*BXhE;z`XKz`|w)jmK_?f z5A5VQhgd_jx;(eRUVt9L;-I5kU(y~-sZuR}YX8NjHy;>q@af&VW*XK03*u@7RMU@0 zo7n})_Leut*g`d^?WQt9%5?x!0yC?fO<;-z^5b)#7VLrTbUz0CmhKKoeQM%$<$;9l z4p!+JM^Z^YG%Ge{^QsGtL_eCEjpB%QI*r*;c9D&*ptEq1x}P6q3bYcKU+z+8Q>CHT zCRpx{!AXef=4BI5H;50Axm8-=!N@o|{yuBpa->k+nxFKwMnpmlJu91fnJz$5i z{5YWAVO)7R8zXvh+e2WC^sbeY=^UjXcX^l+R-&0o@kgX5-cng$Yh{26J*6Z*+wJIj z4KEE2{i>HXq<9@0bF%Ci1D;Bo$(Javw$fBYE@H?c!wfSxC;;Ys)Ypo&L=%HlcyUG zgK;*}QP>=9o+xPlj!?&ProaBn>>)CoL;Cr`SjXPK^&mT<0-FK=XhSUauFrW{NPCSk z2=I3WpNcvc07ygwg|#YVHDx7AN+3Hx>FE~p>JRZc-Tn{IrnE+0+NLR6)G$3Z$ui0D z!@{hkM&IT2(FWQ+G$TZJ^_K+GYk3ICgq^{QBmdaRgw@^jgc8;6!d^V7(ztkb53*Jh z)DZL8RYRw=5OG|j#aZ1WBbA*rnx$-*d$S zC79lzF_%%$C*YnV1YsJ_3&m@cW-(WNtB!&V3d9Z1rd`Y00X_Km*Y_VD3u6fO3m>4Q ziNe}ovTP}w%XS>-GNGk7R_0`AXKrDo#>bd97SF3mWh2i?g=t9>V@6unjC(^%Wg8YN z%cN`aw~Ayh6-0AZEUSsW5UBU8YSBlx>$pU|=;jhNfVv^8kER>1OXcdL6I0bDohkE| zK);G|)u}RB0n@{5Rz;pG_Q!ID+#uK=>10P&AyQBa&SWAjK(#!TUt6Mtl5r|ZNCcJK zx(&Z_1M;J-oVGDgaN`p-NQ|r)=*ORb`EdW!H^h$FOOU=XNR)1lg5HQ)+u!u;7EqMh zwQ&DUw>MB5j1TSJOkpGzn;8l^ll659AH{ENp80A3+a$yp9y6{ zc$K(XNZKaP&Jm8!Ih`zzAvdwcH;^0F($r>L&s<+uQrM_!&^F4pjGL@7S1 zXvZhYPa*0X*-}WPFU*{V83I{NIVbcR*%L60LUb|IU3pKSulaD=L7{&bH0c_u2{WD*)f*a=ExO4gk-sbqs1l2~E9t{~Tv}#& zd5$TrRWMB=HQ12b^}RiQ9WPL&%?Z%i4aB2|L!+hXYF^Y3jbNJq;I&7$>)Q)v!5Cq= zBp4LeeMh?YaHr8P!8FyOM}&({V!h;wMlyy8oyY+gZzG|Dvh)(=h;x}@`eOsuRhSrT zDM7_;R1?sDT=^rKpg;D8Ai7U_|DwvqQYoOXe~z)*15XSPtzrpHPu;C{11~}b%yc~F za6!i~s=$f9Tx290;FmQoG|yPx)o@W`4i)>I}pJN0IZQxzz(@tc;m8SnP_UHWk4u?L)s4wUAq%kHFU%cYjK^l|PE9|Me|__D`}X1ccb|T^-#*-bemn#VM9-z> z_3c&=W4T^nH>_Wrby_bClHYH~$*ngUQDJYl%l>ud_(=!w&aW%LKD(}SP$HUUP<3%p zUn<*bVh5RD0t*O9z0E302v)3Cc7gbUM1+R@x-u#X(wT!%kRcEQV`fkm0#*xtzBqVo zVg=B_f2U|tAY2TC>i)3YjQtgCmMZ#B^Sxd;17TYv~^n64Yg1yQjGQZTXWidI-UzV?SjRL;< z1@~m6setQ8B&juKB2=u=(ns5HiDf!X8$i>XOQ?LVRidETk!yn&x0V@F1d8G9Y)N|6*0t|yK&adJAX6iuqinJYN zng>@`(#)Hg6;97huhI5-r#tC%f_NMhs~OGz9ZCF>XmUm)L?vP3{9;WDT`MHE)ADTj zzT<~BK{mf;Rdha>E)SVH1a95(Z zw4~fyx_%8(JiWN?cVdVP)Bu3{xgPK%mZyc~YOF4ry;^wA<>Y5Aoc7F=l;PkEl&TXV zr?+fDi0I&NH|Ljb25n5x{=OP8M=N{_KYA+vOh%!e3Bo+hWN-jl9^+)#mI`x|4TuIr zWSS~=wY1&6GwW=@5D9@hcd9uJkj9{8cQsOx%F;ckpcH(5xP@w%c2C5Bezj$-0{kG0 zUtCuSdrLY`BPaz8p7NgZ;b}=757s zj#g>SctUc;gg#m_(@!I5YJCW6m>w3a`^(h=`2ZB2 z5!)&&c1<PV_3MG;X8FqC6cjbP2+hwIuzFg(*rdbE)uy+7%kphsEI`&Tv2S!VKN++ zmvx7pXynEUh!^;;hG_u&M%nJ9u{1uqG3?GRdGwx8$+4#*0l4uPDm=bDpF@ow&-2aH zgyu(?RWCH{Qq&eT&<#yjn%gZLlwi$`2sZbGF!9qL>65&4n|DR>h<>JH2mG3I=XXYXQv=Eq_Vu**><*}SGDwLqhe4# zTp)N0HslE9mW#OELH)ZJ2P%saK`~X=!YC zIokJiQN?)y?7H)@-q6blO_502qN$bOQ+IN4meM#lb8k2wy`UbeR}=--iBHkqLIff& z^>sa*gc`;I@x61_lWF0aPPoxTE-1Mb{tMmX)JS6UYWfIEVwV_lPfW+p4~V8Qjto7J zj_D&*3L7n8G4t-g?o;e~S_`1Iy~hCV$+d?}d7YMYLXmuHbbOu8r!_V90!K7`fh&-P z0zEpsSqo)KA@DUI#E~h)CuD)-#n=T>)Ptp$W!|Rq8+gWPO90o|UUl1%wh=ZBILQn1 zmo}9SVg#&8mo0Odh?<|$1Y?Ala7ej3@?^AuxPymSI$e)zs(sc2QpPiR50jrkzjD57Pc!h4*sRc1uwO-=ym5?21#Q#IqNT^v zm?MqwW@5GWoup9@<3z?0*N6u=GSBvg8-A1ehX4c46J+ z<=QZ}Nmhm4PcMP$4&-%~#J3?WUZzv8;d+^I&aC7I=B*6sU{fQv;Y6*?bk5_MO|YK2 z0e3W>+;I@+HzOo&!Y=?|S+$G;j1jrG)c&)ddK1MDaUEWzp!gkn1$>O>Bmkj8BFxa3 zDRl|TLC~|%YGjv!th_|rNrcQ?3DbBBqFg9@IbBmfe3ghm=>l7QIUXA=J)~zv3g~&o z6!Ory&!{Tbz~#^7hrg<|4Yoa4MrS_Y=V7l+cmRhCxQ!!(wP7DAZh~!-`1pOIsL5lU zOXOKZb_=*pArdm;{=oTu`upZBJcgBQu@y*uGZlP)G$?(WLFNFSS;n$>Kp z+JYAS@ct9DkWU7G9t=*7&W2AR|hNO^BLN`4t^*VcgSO>X zucP3OFrAD{g84BqO4AZrnwQDPZLWudY5!>W8D(~RngL{?7|=aBi-LuUI|GXqwN)M* zSLoC-RtPa}UeQ<&KT*$T>-zA}4*^ed<`FGCS)I>m8V~={AVts>xCCXd>J07=kOr1W z50sya8&HSa1^rZSuMf93EM;9?Ru+HrZrTZ?l_Pv1MAPsD3h{ayXaz|UQ<3BHjIW|^ zHoX&y>ly;D+oa3}z%8#=I6KeXBG=6c2A!a(R1mvl%?Ek722S zJ4r{&U*vJ^dsGZNdSLTll7|)kFK9yxrjMSw-+*VRiI&Ea#gx-RWKrTFyVtR8=Rr>} zeYUt82DGD~x}4_{`2v}YD@Su$GM zBn5Ic&v{7Vqf)b#uc|-UM+t}P3lr!upYWp{3M-5s2n!r5&(Tiaw) zK~1r3`r!=<6u*D4MI!H+7lTeBzIbG3DJ@35%ZX@sYUv{itx2giGrgVmJ=Zns0-L#lVpCN;x^!!J9Rv>017y=` z;`(rA?$Ou2(CW3(_dYX-h5xB4PzP{=@x))yNIh zP);4s-H)#uda)Ne+6x`;g(AhXA3&t;hcI=!>=`DKykPFRUB7h9%w^m3v@6=TVY@Kbbc_f11>3XdV6EB0P~yY zpz>BQe(hdd_R< z%$7TtyyElQWW~zqm6p_)JF-lZo6BY(6#2dc(o*n>5ccZTjeE|(yPsuQYy%t1(3y_V z9ckP@RYacYTp+Q$LMHcQal!Ap4r3sDpaU1CM$bKY8fidrd5-G`OveIF54pUrRf2|D zSub91CZ29!7uYA9--p5hWU#k$5T!=jd!cxlEsI4tMAh3$Ex-+y`WeJ6Y*x`#^A#Qe zh7h7Jbb~^Y`H!C5Ut9i*L-JISkmnk@pKbH}j!Ag7+p2WbVtulvO{wJty;K@jh z=jLjK1Y1RXztoAyL5?gemy_YqNCIv($fjIml+XjVl*vufJ%Hu2G4X(PUYn@U6No#(*0+HCjX>N<_M%p zmLlC{5BjFjdG&dJ@02DR6JrR6(?e2&bD!OpD@RF)IA(QVSL$Xc^B^(*h`C^F9?VSA zRF!BR0;G8mGAhjRE#-YjhhhSC!VrbDMX`hN;^hsN4#}V{!wSm@LYL$&wM2G_+h6$i z`2F7>%r^sH4N(rxa%0q)-u4DIewWu>Q8+N4KR(XwR!)bw-7qzBwMF5B-3Bi0ONR6W zbv%Jy`rJvQe(S{Bxf#%rL3n2k;^j^a7$?|ucqDjoX;Zy3v$Up&$|63MV7kPPiKD?1MGMNSIk8WG+MEQcgJg8J6Md>|Zs zr~bGLY}*3*W3sG;T3oAQC8nRIrLnBv-~aW^2Tau*)Vw%Jy?n|V5PQXWAMy|^Fs+lI z!&5-@ExPDrH7V?j0$aenL>GA#t>1t8@csSv_Lm<}2SGB7lKeVByvN)uH5{^ zBAm4r!98EyG-~*qp4S@On%}b?75F#COeTF8f#Ieb^1yJdT2Z8mzSKrv+)UKbLDSI^ zJ~4}yKiD!t^L#}P*MUx0YH6o z2cZrI`#Cyiu(m#~Fdde#yv&{}!403v*r%!V-RUaIhyLHh^WGEF~@6aL&Xa|9)z(O9Z z8t2Pi1&I}4y+;U~X+q84zW?X5XJ@C+hW+93)6>DQe{y#JCn%$*!@+00*TY`hS>Aw{aY#zKpz*tl~c=vTkz2xSoA{gPZ>9;*f##47fJGO6g zPnEtoN(xtaf)?KuWI9ZC27}Py4;#urc*c7~Nf~D)J)uB(JNphIQY0=?(p+giS>_uW zsq5``|9HIrp6Soj1JOxllrjd>g_}YFWZy~o@HTQKy31lRjXPS?aweFD#FLUNdk}0G zWy9GjSc5UDmkQTbiLwuf zCqVX8p5dprk8j>hRoUG=lXaX8Z0zv(ZPDofb*Mc%SFf0*iPF<+%t@~mjEUO~Qd8UC zEa}S+Z{ORz*t#K3S-T=y>RO=Bb!Ider-Plr^`#38mpQw@@S?lG@Oi886<7`;BSX(c zThAzX1W(vQ-%DR1ZXz-XQgED4O)%^;Ak922@UDwbA3i?L?;n18{Oh)Vw)ybp;p30@ zA3lnsBKQ{D*vhdH%!H=X$!cx5-#sXuO?MZ{yjh5Q!M53EA)`P#*?eWZvGaxTKAYzO z#0Nal-33IxM1sO=xWofm3g;Ys1QXutW7~ZiA2A5jEv%w!3D0p%2c5PSt6`b}$ogzMw#4dtqEO&r@)P-jhL`yT$TpDp zx{cT37mAvd$WL|1-aP^sbRF zuTn2*ANh86Uv%HjE)75)Ra#~{G)TKMNA#zRU@ZGQgJ&P*+H^imIEx$rgKqklc?ZgrR>2poM==T3fFwIW!9*f2SE7L67fUpF( z8PGjL&aIK5s%)jDoE1yhmAykt$HiHEtkkit==Y zzCXXH6CR&0Eb7$Cb^B)Zj@JU^gYSd>g)EHii9C6{yUI10v5It-@W7ftu`(GWUmILz zN~tm2u(`paT8F2c30}VDAM&!`2nW7aOG>!(*t4){0aJ89%xwO~Asw<m4jsZ*-NZf7DX_n{ct{N8~qVwTL!;tf!a}5$q6Gg5<+Va(W;krGNw>hd58Gc5B7m9Dh-Z6bIcNu(-sx8_XSn3;AxT+d;;VWCrVUfhJwAvS!H6S}VB*^Rg z$Jr=qA%D1g^X`*rm#7p404ER*Lz9)69SpV2!1fk7a(ej~a`QK!2P$?9HR$Y88Ez(c z>16vo|WN zKj~YA)5JZ$SbBhr{kE0Q!Guv3`vy@N8#-C(!688H>8A~5U!s*Xp#pCm29^cVEFeor zr?d0RfQ+lS6&xlu&p|$eX9kuq?}?LoGjs2QZgv7eF)3 z$StH?LqdJdaB69ypsuZ~^i&%}$|L%5Rlvf8ZzseQ`mV6?h8{~4&g$Q?b=(b3iu`?7 zRGPz61Q!q9y?^*gbsVMWT1;2R+i%Us)jyqn27H!9^lc&Bc+0W^n)oE0CZ3A0;@KU# zxKjO$;ze-=4P!ykHz|)`zN&#kF$4bFjK0#)yU%rXQJ9teke-7`)_&@KL&UHzSkRv5 zLriV;;l@=y=JCcH)T1G&<%M(ojmO`lxDq=noE2k5-Gv`!S;?Hui@@(xnb7-nv_!VK z`b;%|+V6G-?VvfYQ#w?k;0)|hJD%e}J%@zFIWc6VIx2t1`pD6qR(X{IhN%fv(czp@ z=ZyzjQgneun{XwTe}dfVo}e8T579c6{!uw{EsK=`O6AFct;UlP)MiL6XJrUk!~(L) z(Vxu*Gx_@2$$08C5!xX-df|=DNu%(Sp=s8r-d(*IExV{zhNbRPPgL#lNVK#Cj4Fqt zS=ajmrpE~pDx7yQf=;3_;3ibJB+6$I%y%1_sR8LBG}Nk?Nujve_A1T^DNXCqlx&sd zJ9R(pG3IW8iX)BwY3mE7q4>v|Vj5YloQZNxwP*c0h^ntxM5PF44!8B|8`z;>Rz3$t zfj<|D6+!DWKrS5ZViUWovIlT~gZsi>g4Nx@W`Q35R9Zs3DS0?eLIKlfX$a%TSeiV6Vr*&l%dWqqw6W#a;%^pkg^vMl&?Ws_f)swdjHy!1j=~ z(~SzmWV57UJ(wXv|H~Gje*)sY6?WUcyMOcX5z!IbAMSsA z%L?Cp*+!FQ?wQ!!+$`}Z9SACwY(h!oz3fcum(wpYA4&qatDnve{16xk+HJXRg2aQQ zx@1?g%d0NA8!1^)Ckx8U(G}9WktLa)-@;Xf^bcvXTo2)4&7Ic71k(^jd{TO^rW0)w zs#`+8LI)%8t8g@G;M0x{x=~(hvwshlKQ_1I6NFeNOUQFA=WydEO{UAp&90h$V@E>U z1k7I;>SYwAgIQpK;lU5qp6V$>o~gF~$iUoMcO{4E;>!9q~> z1g?shcG-k(@aE-DV-{NfKWksw+(vd~$)AGhiEvQmlA8dyY22;}5DSG8NI(FnrN1Cl zC6=wQimH()SGnEYzkSX*_ujW;CMY>(Dr^cb@5{`WZ@K$&Yz&E8v^(_)38ok4;MUQn zzu%4D|8;)XSfZ{Tx;0T$7B%!4r~QRfE)Rq&69fHso)mL5$xb09FOp#X3d`+D(WpDM zr`FfpCtW!7hF-^MQruo2@}Yam&}1put_e`FHB&S+b(XzK&CrBq+tAh8>r0w0-F)FS zMAx%6=C%Uqi$$Sngr3gi^gOoT`kF$*97qc+!zl)O_2ZQQ$h`anqSU$ z*gmMzY-+OH1U}Hz7CQe1P~%H!>>kcuH$l?7vnT&_(mUN|$Ib0@r8&-`RL}PybO(WFGTpKj~3Qbg4#k)080WCC9#3bZcdla`L8ESG^l&=X53S?9vgfU$g^&luN zxSfkoH!o^76ZKBm*PYMA?}iOdUIy7RS=xq&VX5u54G+UsyRl7Rks&UCc|*t62*jz8 z1#a1#!ytpSVfpnuCPOk3=?6fjwe;-y)y63>6T^=ySkMA8@ReX#B(w`(&2IkQ9W>nG zpTVqHg2;~#)9Vp@$_HN5&HH+BmuP7QD2vk!Zpk_thF>h@5Lh=XM(Ag8L#E)xcKhmD zBu_8EXLuN{nQ*nh5h@xWg6+HSdK7<*f(V2Yb#ydiid6FV+(%>=M6_%V!8GNoLqHjFli-0TW12|Sb}P8M)|RGuRkTxU(zzX{bXMt2$6XEhz9 zo|6BrU+`~T_Wt(aJaI22l6a18974DcG1>nas`ny3ISaBsG$OFqGMN+#KMIJZW~Jq0GLX zzFf>NV8Iy5iHqdTELRD&5+lYXdrjEeU7i(d$#uu6W61yzje@dJ&M^R{#P2sAqDr<~ zV$wZn*nw5$fNSQwtML*sa*&L5$kC$6+&4VruKnqJmCSO2X@!IajZ}7GmjJ0V)SU3` zq0(GD9E2gLRV5Tj$(epbec9+|o?fny`%*s;JYQy$b1rZ1k*D^THy>}E*!g9YlQY8w zdPl^H(LL{{HSr)91Ni)xIRZOGE$M~bLN4@zB_!(U8-9*f-dW%^bx-G!$Use^wv+1c zj>p4|QB~v2Rmn)dWJY@my-HYFkKn%U`njR&=PKia;Uw-hnS2E5Yiyh_spUkp!{`NditEshqvsvKKPT~Rdt zjn&-xtm8)g1f4(V1mlJ%`P^|EVz+<;TsHHHR3J?!@wDtd$F%e2NNJl_ZUDz@VfO1a z+B!u_OUSq*#5YTqi=TV~j6NLY2FD9Iewg3KJ(N;AA3{f}PAgKu2&SODSg(5AQU1HU zhv&8;3EFuky2iW zyuRiM0@w|5Y#8>MF!Y`b%p79VHDA?38Q}YOKf?dxJ+%Ff-S8mz_1VrQH?0Q++PCSC zR{kQdoS|u&c|%a`t|H_uxzf2_t_{~07%sz5AO#nsKWPEyg%)sb{%^*#K|vrM&1a|z zunL&oz=d)RtWo@EXxLIyJt^F(+MbmdVn+u|F=s#Lb3jhPu7nO{2b*})&sOpg5h|31 zo@1_m^n=i5z5*lh1zyN6$3Zq%A9p@2kxC0HUWF`^k}Gy?rkre8EarzG4#{`7VfXvXGD0>nVN{cf&wMqq(~xn#IDILvPpsu}EMc;raO-j?-0* zUansTrETZocLUcwd7PukYqY&@@v)cN4YtU0n?c{jO_&~-FlZyvs~X6@PU#5>CV0Tx zrVoT}zBsxCt^t^3n4VMh4?v zbm*=LIZc5^$Fp)O>Jho_Fg4SJUE#RF$~4!UMQ zeNCC-C%_wdF08*tAutGGw_DSPGzB}fX-p?Pj+0seoD^KcDcG^{4w zNO_IEx8-$vl5eZR*YFR2_*Vtoe*E;Wbp{{1`mdXhKmO~d`=5t{pZZAc^Ora8cYprn z-G|-nZ-4kv(@oRY%ZcqC%shV2rwZ7!uwBr@&HLNiU#>p9wU}N{KGBAfKlKWWAh%O| z(bWnY)Cw|Are3LupT~rlU+!riY*IiZ;f+>aC||ho+%BQ}y_<`&p+6gC{s zpw`CKHK}Q9RoM8NNUya2xio3Sky)B8YOUVQO{m5YVF_0_IGLvtQI!ic_pP~A>+it) zi#kCzVk;KdtP+Uo37vrXvahs7$ghdw zXk~P$Qp>rx-hCKceYksf|KX#Yhyhew>nE>;mBDEvdWHet0dB#IZRkL40A9oKgXJ8y zn6jbe%~B=9Qiq z<7&AOTl$v=dLjEAL#{fKw?^ny2Z+h!Wty^*K~hssm@H~aos%Gx;e&a^IJpUojPFa= zxTlAf3iNqA9xP{?`Dke7V@FNqYw3l!yYO2uycLxNs0rNlPEE7OT>e^CV00{n<-JTk z#MjI1dc1mOVmPDQMeFdy?H1*`Q-6wbIDt5d@Mwg)N0F)O)koA1ivFV0s=e(W11Tj(f##t*GJV z5mw~sVm5v~aychoP_ML}77K;bptZw!;pdxOt>4TYR)I7SGs4VD-m{k(D{g`cW)ePm zD!8HUR;$uW!t@}<;F zu+=#1A3gnd*Z1!2@#QYh@DQ?D9<6Ml26i}R&WrYgn{!{4as zQ;j+O#;~oMUkS9~Bj4Z8@EpcwlnJU*CsEl7?ib7s&aFCK(d8Uo&D4}(o!xbrv?gTC zQ(#$GeOWm;GDc^Rwgwd_V3n{Bp$(HGRcdJmGSb7W6*%;WmW0r!P>*jt&cmDz!bsiQ z{kp#WGeYD3n0_IBTZ$GzvC$=Rd$of_7}-j9kF(hge%i+|H$0V=a7y3}-Cm zUtT;QM~YAx#QWNhKp@%6rPV|4q^McZM93*r$fSAX2Y)clxXOkm*X8(1r7XZ%pb9 zGsaPn`(6scxmVo4cK>S&v@&j0LWlpWHf zhqGNF2qm2r^T%&qpq{Kfuc^|?U_H%=gYo?~C7LRJYO+dd-=>znC>x_;zi)aTHGug= zW|)NMAHV)krLD3kuv|$eQWLKhSPzq;H+&GvmDJ~ibAyn3p?q!t^(5kQi4z<%<{IuO zVt1Y%i`6lCqq>gW0v{B(WUsbBI@s(jPOuBCEwb)#1LhgpfL{WO7~b8Q9C}pPzT{GX z^^~5SxMl{~m=T@ROOQdDl`rAile;>n+TkOUZk$|tnmIcQ1COhZmKKFU8`dU12fxB}Lqh$!5FZ5Jd}PynxqqPCx@D4~1O z)fK2#uqHruPR3n%(YY%VEYFQ+ZwaDr44l#YaB>hMq!faY)Yg~SUd~t|pcn}TgYK=0 zon1mo9;(ta7C9C@PzsTdU8;4RF&nD{;pXuRQ2x$T7OZK~)T0WhZuzo9@Wqm@WB+Us z>~xn+fhoHCC2A@75jZ5&+q;J4Z}St?$&n|Rx`)DC6+`uKN8A-4KiSQ4$34wbv>K?{ zqFHeh7_g)pG;8>v4g7&I!u|3y~@982ni@QDmINsD^v7 z8%mA~Mm2*pAH_>T!9PX>Ka5|%)_kb62&6Q8u(=5>q;mA%$nJ+4O*WW1%^4PsIz0|E z36FTlm-4hl7Y)xy17B_IvckaOMdLbi2*dEDV0AZM!~DlU<(w@P198ZRoGD5>09*FOJqCMd=Os+& zete>-^P>}om{mk)y^wE$pLH>1Mt}SZ!@wP&MrrGmnYRQ1I3RZS{seztr*TxDK{QtzT6 z0(U@X1E~PsNYJ6xO+6l(z6CNmpkR^Pj$g%+$G@w`!@kPF`+r<$1`C4R^{b<+)nxDOZm6?xPmQk?Ln)T@2g*L-~1KtcyoXM@!b!f?{9az!$V%fQ4Xv~dn7b!$ewST zo^!$RC{qS<2duT&sin`6hyo25q?eQA?8Zj%u{22Z#YZArSlPg-9Br;Rs!u;_$#l|Z zb0ihPsC$Q6j9kFXb}tZ*rV3Zw zkus`nbp#9>B=0Y$-mXwpxpD2_@cis#T{2K(6~7&&M4IQJ0rXYfpxzPe!Se}twO#Mr zF@YQp>X{Pl0GVra}x}tswwVY6Aj$%^;s6ctW z-J!G7k2k@5rx9yeZYsCJ;R~r}Kow_4T@C2=AngU^b?6tqeyqN6HkSGdJRL>%(8Qcc zd6imP7w*PfW~OlM);4uxt9#Z&OE<=6v(nKpVJEfngBfh1kYYb55RGl6_1Xm0G?e<1 z=83Lhxx0JL^*!1pH8le5Lb4P%O`GWgj9Jvkg60p`q?e$F#tUfx+t+|X#b@$ZCnXDz z;PvQY@ihU8lqqmzbGjAk6 z-()NI02q~^1pk1&Mc!e2_~WDAkG=o-KYR38*5jQ!lmK5)zZ#aec(8(;ZFUC&Dwfxz zVit+ccUV9|=a~qQI;#el$tBSAVI6p!Ene>-vtdUM3z{yFYtt{FiE7<9fZxo-wOK&2 z0HP{=7)^?iTP##;Rfi(Kn8WccTrgLFb;tE|cko#-(ej~L=;)!hLKy_7wmpVLq4WkA zcVQZAQrqqUO%QtPw15=AL#2;WLDS9CcuHwEAcd_m0<%&EUELwK9o21sL)3hMI z>PHqUYVcjJjPs$$;%r&N-#a$4lcPPIv_oM;7>%F7cyMz~cks`5s1Vp|uzH?)!QBAa zc0i~f%n^`epxasZ#_QK0KdF5Hghq!Ul?BG}^wjB%i?&7krmqX-owu}bJm#$Ju=)!k zt;56`7kA}VS?w@Rb2VcIrqvu=C!Ncxi_48?#<3_r$bh6LN2NY1AbD$fuu2);8S#?) zupIe_X^jKLA#EU4BGA~)QP3h7mtuAg2ig3RwSEpx7v9Nz_#ttW=g$3CAoYgIKGjA$ zJ>D))&rI+_V%K(gI=QxSXwBx{(V{{a;qVE z>O480^L5eE;&NB5Mfe~)dY{RGC3LHWBi-tZ2OXV>tLQh0E_!;Nfg)% z)pHA19Lc~%TLa3{2$qAMF|{m`FQ(y3ioP{TDfE~5IplRhsQeD&WeC7rRj!a11 zC2c6ZYo$p8s2Rsrz@b2Xhl|(l?S5!he)9y8|NEmJ@P6tArx8YCS+=$4TXrCnI>?3V z#a!Jm>^o9*zjz?kdU%F%GgRZ_qEm}9d;j^-GIES2`2!XlsO)EIZ&vYB_n6AlBPJnnB|leIjV1=Miq1u>cv$3n3s`65N8_~do>NRvpt zHb{ob){9UUbh3om4PpQlPGR~xhRL}D4$U@Pm7r*JE5-h8I6R5iNi*OF-t425L7Y#? zCYR04iqS>AL|c`>9K-1yQV*53to&Mmwh)mm!evK?stcEQjbE&MF{H8zYZyuumJ1#Z zm?^oBGL>MWEd?_x8-CM+cKi|CGX;XbQ5_@xO%KKhY=%PXnQ~%81Ov?#Mjkj8eoP_8 zwc|_w^G~_%0B{wbg_QkRD;woEiW&vCtDuEt9d5P zzN$!I{Jgv9lR?rWX70b|+Cn9TVOm-$3anTcRx?#ZnXWc-#IHds%Bm?) zM<}M&zkS?4RZ$d_2-(7-V8O8P{X-#nI~=jeJK%XdrivIi`xz}^2cZ@xI^ESKGB7{T zbZ(W^N|X*Hcb`ZM4AFo(!5e}BOu3Fcj>Y25u#?5wrV6?}4^|Ea!+l}0gADv!Kys7M zR>@{mzA#Nag{$$&F_sRhEu=+!Y5u7OGWS#__a*<4(!_XE6HN3orYG3V<}%`copzEF zHPY7ADb2P#Y^JY}4_8~3E=6qV>CRadHM)V3%)rt!m|I)QBHjI?gl7k^-waoqamDBw zA)`;X12q)UiVGPiPD=xY^#8V&=HcLsus1YJay*ipw$l`DKws`ki~b6EgONHAp>fFf z;OTMc(GvK}g{W{|O3h*)+g?gcVo5%IXE~FoZST8S(~7u9Z9|_`e(dxi^3~nJx3po} z?qLK>bE-Q_c}S-Anl?9(uI!cEIc-Vk{?U@N95B~GzFz$1lc zZ4LKuR(pEjUNYp|198WK`5V=`SH5)n8xM>-SwvLr8Kvu6o z4)cYrR;cPwtgfzu6QT*c-Vnuu9d4^iuJq|khK;V53yY*lcF$Nr^8^_*t(aQf1k>Ye z{`4+0MQmPvkB5GbBF;ERx(;MJLRoaY5f!nEQXlNe6m#tB%3o*yT<_ws+tJc=B@Y?I zF>>XoKtTpz;o)$FZ89|tpvFz<55Bx(O!o^U{X{Cp`F06@dAgNgI2pk;p#kvC4b~W$ zAYyNOOJnmRNO(Oaa@pun}yy~Nqk_EXw%HT3J^$C23r?bK-(;Ewy8JsmD1&M(DBn;}8Mo(d| zwIMJo{arscgKZLb8!a{i=gwgI+b<1S36{18sgfr%Gpmjy$&4e``4l<1D-niG1|l+d zjD_=4Gm88cepwU7-9>q4^Ah~D@xG=n$s&)}BTA>%nHM{K5{gm}J(3e>j=jLB@k9Js zG}2YA2siKK3n5^A)(L1->}u{n9RfFB`WDoFbuB=rbe&+;$R$&8u=?TC*LF#+yXgsu zqr196u=6vjLvg)#$m<(L9&d$JLWOHMeFBQ+IBll*$B=9}Eo8Cx#^00oRQj z6y27XlcA})s$uHxa)WEzCZ>|}xlD3PXD8imxRFx}@3GNmL=WG-|M2E*uec8F@aP7V zXu4RACJMoqjtNHv)M+-&ZoM#CYer3QZEDggklw9XbFSL?r)X(+b5zs6-QL}AK79W8 z<1JK811ZbpSnqLCxMqGTscO)v`DNs`o~5^Y;CvLYVYR4PlZZx?!M~@lEds!*Jk?h3Qml1>2UDBThuMVx6X?-jOnq@v4O}@X`;JpAA>Cp^^?}V*+K6_0~t>qgY zdxmAq818`9SXAsr=NMEK-?nGBd*AeU8c-DVa!P&IrMA%O<#)cnI4b=1qBSbBSLNiXeY6E`n zYU8y<8x9c$(IZ|g7tjyD{yDnF-(%nUjjND4p-mky6h8DyEe&CJ2i!SZQ`*QD2aIL) zxPQXjU~-COtYdesj4rU{3kMorY<2@^Y=bDH3GbXE<77P0(SsYJC0rmoxcDjf;WzPI z1E>jt3!P$(m^&0H-hl9Wg)m@TQFyS>94B1qb@e(K@dQgdeCDYRJqj~g8n3x~;@c2+ z&Pq5i=P)Re*#&sTPSN>(xN@?vC5V>Iq6^^i!awGad?HZIssMc8H}+K(Asr& z!R?>k{l_ipk)aA^L6j>^o=tet1Q?rawr!k8Sq?fzJxeeRn~DY}bfl5=Q(rBR zypE<~A*a?=qcXNDD=MRHsIpmI-fZ2Kl|P^N|>}B$5W?;FE$ltgejWgvT(OzC7;b-@9XIN!43;4IBf*gIIi`%xTk zIY8?&olEkaq4ef{TwF|=8Vl2iCtzMOrzqW3n=(*0XxTwidDO9IkkyeAt%_P;;JDJP zUzaXM1v~rPE8y}qxci!n*D$?MhX^T3`>>l0EZZr=BCM%BntLqKqiGy#LiJE_-uv_1 zU;!JzbU@(&d<9R4@+5F0C1sO42UD*G-T}vJ@oaGT%UfnMbT!(yzg}Ow|M25qKe;~b zFt_0z8>%)G-Ru9+G-K)7?;!k9JN7@I8I_VO-}?LCGdbZm{w8SV%4&VNn^LnJ)rkyw zz{ENsob4H0!y8M|0&4>8Dk26bYCyXNU#$@BzNH4|QO|S%XhNm4MZxVc&dU__NXX97)G%I; z$-3ETbLxpLarO{(CA`F?;r3ieTClDZGF5cY)aav4{a+ZBL3|+T{pHQw-R*l8FcL#! z%_4NA>Lp(aSA)4xa!(OnqvPfq9vKxEPyt+zUt_11PE$O-?gVBj58Mar++0$UGh@fG zOtAEoWT5BQqi2Q#uqAa$keB4x@{+_(lCmPDqAB2dl1cR&6YE__CrPC0mB@-&TE)pm zLtBfEeY2bEF)I+|A9!G9)Xma~*tGg%v_9dZ;Y@cXMLf*z045{>p2Ka*D6ibI%z>G- z>ZhWShWBgZ97X){8RYY@zo5T>@}^*DCV||sK%H<~pdxx33PyhJVV`O<`zU8DJWAM= zYc>IR?Tg#Hw;w+4+!=lR;qIq*f97my0o*0cby(5TRI`r#m}%scf&Hy%*-oAg%&*A!ouaMpj7>re>{@N?5w(1wDK#LA${s612h?`+dAHbr zeOy9p=}g1Y?G>D0d2-zt<`PS^e7M}XCbH~trtR(k;(!UJ76!P*t>DC7nx9DEgdv!w zURQ02ZD&)_Q40MDrcq-%V{4IvV|;^ZpBzG+z=kxk={Iz;-Z5o>DoT(Kkdota=~~*a zz6X(2|J*Hz`5H$+_gB6JncDx^kzq2Jx9a4d8ylm@{>iby!*l=GtPTw<>~(xDczLb^ zzCKq~IL$;8#Rs$loSMi%6-YOE`?(^eQyr9Gc|S*@5VugJW^q8l+d@|8*=e;K=*A4U zMn8}KaCEaiNcs5n+0z%`)l!JNn@nC!Gu$>2iCrZMfE$?gu-=1)iDa=nCc zv6P8aP{18~q%BNRm^6JgKz@t99CL>ZmbhDa zEdTz?ExclS{HrZc7&1-5~ zOZu;3;9Bkg>ETi>6zuc4h31r3^w501S)V6iFUb99st5RCAmM^{_ua|WZ9rUzVXYq^ zL6>5@rDqwZm}6r+8ksD8vO5={hg^P^!zp$%VqbXmaF7n08HkcKr({(Eq#4OV4}|3M zd$NA^=>jfxL`~hh*PoYNa~PkP8sn{-ez4dq#A`O;V(!v3C2)Ju!%MG?zvNprEVwe+|=D zbYu^{UXBrN4TV0~~pa~MXTyDm5q^5w= zxX86?BbCYtNyY;+i0@(Of%Q5%l**bUOpQwoO}?sQr*$>aCvbY2fk{ZDrdTZnb524N zTu?q{{5z9z$|#}QdS5lcb0@cg>WPEhe}r?2YpyRGAzHE!=M4 z7!;Mu9J9jkfX)MOlBqxOW~iY7gF0IHv%aLI6l=Qb!+m3AB8QU;R}i(pX))IGBis~O z08%R>BNH1sy{Q6}9!3`c9ZmO-P+=A~2cPai2x4n0AP_j0)=ogAaY8HuE?g@3fl&|9 zz%jOtx&UVE1qhy;opt%~ckq=#!6oZMzZrB<57Ytj9uP+10G=L+18LKBs@as~A*~2V zzon=5;8`LYc#F~(kXEs(thnv`ZpX3&)7m`dWbAAV~d}VRmNMJ$NJK_HIZiNW%a%15n=+l{D zuJYkomP=;N4DlVw`Q`Mqii=ltl5rv2P=0tLOau&TMJL7fuV7wU7t*Kgd~t)UdL_PG z6|cf4di?Tc77o$;tqIGIGT+`p+^9fW0b@03ElhQSd`~$)-qArf)_AzGGu9aT!zYsw zHW1##Eg|gb6+D>nlwSC%84`qdvi4`ReEFZtK9*E3t+noi3$@eX($M?GUvGYaX;Vrl zTJV0WueS+J;;<__n6}>MR3W(sq74T=DC+)tkZUwS+1qx%zuL1wk z*Se5&_^~vm;cK{hreHAsx+8;aaU98Jcl0naYBAKCW7A?qOW)5!V`9&QP9~D@!Ujs>ob;6h2_#@fl z9#(N-m>nGqKbh<+&pgY$r7dP`ZMW+~f@uLW4{u6KXW}cpWhpFhhq~gjv#X8D`L<5| zMS}VJtqwAEOPgb4@qXonk@JPDGXPP#c>V9wwO2m!U709d2J6v6Uvf9;w<>V;KjSz- zKj4g4UV8KHFF|^iW;N8>ovdmG`gcJwfMi9c25t*o9Z*S=;XFpqf$&~xT+?31gGFqS za`h1Zmv~YrHg)NDc1D<$l_g|QmWDnSza1TYe&k_mIpET7`0seA?(lFm-rzbz#)QMp zJ2W+uM~DwgDeSZ}X)2{KPkT_g(Izu?DC!$f&1EPBk#s5Y%1YMo$mn=bXun2#ZQnfY4d?->FJ`bzs)_o2oCCzL0!iO&ng^(cX;#dHWnpQc zb15pVm<V=xzDY?Xp$AlJtv`L}b_M2C3z3#8I}G2hHl zh61G@xqDL?FH>CQrcMic%nav6cwMwI+&yO^!o&Cg%WB9&lbrpKE{MAyHKxdTHb5Go zUYCj@CQK8P$H5d(|0u~!+{CVyH=2m0|LSaS($kw~(x}wg?@#r%|Bi?9yfM82kn6O{ z@rXTQ@s+OHj$lg@SEQguBArdBs<8(q?W{me&Oy}HvjTM}DQg6l3Y8|JSx&fPU9;we zMjV0@D44VPK%{8Qr-g18F|Jl(HW@j!Ne{*|CGrvKX9RmBL&hWEvd_tZ3`j$gJMcHJ zYtuPv$#mWx%eQ$jjFC{_2Ryw0q%_<(xg$1c!7TqgB4MU$vN5|v8)gi(W zk@B!}$0k_b;wfmcW&pJP6HMK~j&XdJpH{UXfzH6qPR*4MNF7N6nwNej3>Wu2V|auq z!;2^RRn3^rO-Fz|VyC4_Y`f1C%rb&9A7rpH+pXJxd9?PC67$`pmg#r4g#xv@^o z{l9Mv+a}qz=|NcqYu3Rj#cgcWkvro;BYRuH{jjeI(l; zwKOrIOttZ-%%VYccq^M)oJ9`~?AZrPmJk+1H!BfqN3B0+)Hyt_SR6(?nO04yy!eOTUleZC$7pU^U46feL znSr`A)YMQXbVWd zT~+i~zN%Mnvw)C7+wUIkp1ipalObUW1w#iAXL#RDE1CJU!l_y=m!@5JQ7G#SSr@zs zur}yb3N*BVhaI&Q8QIGi0khZw>r*6&LI2%Rg>2FbU`GWq(OHl$%j>S06ykT+lPrxf zOUO?@QAAx#E+CCf5!Q+DZF$5W|KZ8;(do(Q@yYpde{g(ya(s)rv&RdYFw41Js8V@q zr&wzc8;+gS(F3ka2*yIn$K5F%ixQ(j34ICHCbFO*T^X;Ku`XXmaL>yV14Ad=2IK1ELYZY^gTlnk8UBC{RSz&Ml z(S;__*vw8&BtZFn?k?8JXe5}r+f2f8%mGjz8Y@o z%9&c%0%o1TXbd7OJU_9k8)OLEi$qh<;7O{pHlT}pM3uv#& zFlt_nwS|ysXFNCc6q{TV*1{XW4dUj@aB%$sfwrsle7T-)U(5R+K7!Cn*nd!K>k)2| zbow1Fy+Rw@9W82Uw}fa}Nk(XRfcCI|3?>$G!MpqG&p-cg`%(M4xDK_PVe11#FM#%3 zkDsoW*T`!_J#nw&n$nO2n@0W((Za~_)jt{>o58~qoIo{F7y%DWc^er{IwJo6v+i*O zt|=u#iqCa#AbAIuYO0-q0v5fSd-e<@MqXBI#MemWV?rNByF5d zlVxZd^tn8L%m%f&e{=u&({A|u^P7+Nw;w;vKEHpj!zrLFu>caAPuDQ%EOZh*Ul_9m zU2f*o;@Ls4-|f>`<`m=c6BY?KyaCm5vIFCLH(2>-s)w`G z*zLybQm3qHTf*#}CL?ZKe#W7*MvdC{oXsK9|##>WyAihOGujOAp1KO18bsD!!Mt zd7LwHg;KQi4idr~zXCLr`K4dwKOo5)>5>YSPA_v>hHDGh7gQXkrD_E5bo0sP#RQnX%Qy?V7JKdv zT#bUX^zNKZ;RS)Ht~vH1%%c>qwQFA9n0F(&h@07g6*8KR)&|V=lEEI87Y}wX!6IP~ zRf#qz)E;*XK}XDtKd?_|WKx5g(gn-;asuDeR(WHda|7uUsp`8TAu%1z%jJ4f;s%0q zDlp^)r{cV6!x1i-4HsCrfDdj zu=)6y1>J16GG#ZkTUCG5^m>S!5rK$z1D!JLh~-^hy$B^J{Z&c3??Ry`^gMPZHL(r`$cU#cA|r9z%}VKQxLWIWChfFri_3aWop5#$9dpmc~y zB|#wihp$&>C!gs>EzzD14`9RS{oV>-=x8wOYt6f)Q$vuRqv=fnW0WxES)Jm?YIs;y zKzmq=3SoMgjr1xEyx1^?gNGTot{od*P6Lf$S&d+~k#}_0P_=C4w9%JmXu*`#Fm*R% zjAz2_6bi&_;tQvadaRC2u;NWVzX8+@rk+oso>jHl?AeXjI9m{X ziFuw>*i#EZwg;|au9+9_A&)1f_Mz_0&L7b|YHY}*#!`rd8T@ z+8f1u!D5O+E7z;e=}N$~W;i74=i`-etY~bnTuEri4XDQsq?k`j4Hh55k6;QkXP>)< zZ%mVqKCSr`hJgXVTMy?|f~XrCn~^p(ER8urZ3_Lp%`N%yGoE{zN|~EkTuODt-ltrq z>+O+gnLV@Vk=4wWD!@-EF_&8)T&3KV!z4=usAn72Nu4h4C;=HdyTu^l?wGpoJW3)(Y2L-*7nwgL|%k z`(_|1dL~4$C#1T&L;gA?q3Rd18gx>S)!;Cp|BwKj)GN%lI45*t>vdi9PhB84;=b+K zg6XT3sd+Ja=2gAP$dbKIewc$wTy20f4>G`-z)o${lOoy&vi8uw{GD$phvt^D^ zp;f~|RLI}!_0V}pv9W{o?sZ7Em@>;RmL1u~&yGC+XS$xR6k`be{PDTUB+UmbU;rF4 z*Z^t9@pq|&>Ze8reW@`kqP~6iWg@Ry(6DaVw-o&IVC$H>x>(uCNol7ukj~uZrYZ8$)&}Cfb8N2BGhA z&u23P^3Dmp;Kt)&c)?lzqS)1(z~yx?38+Z5q^#nJv!ow?u!q}0hR_Rdm$)xkZGDPN znNfiAXPQ#B5LmSkp}{E*sI57-EKd%$GdfP@YYnctlJsFuxAU172ZVH~mhhCe{d4f5 zo9Ab>yHW+w7&UdCZ5pE0TIxppP`YVe@K2`&2%oMHBf5S;ae_;qtGK)G|4+FPFc;DTsG z2*s|ZB2yl2l8QkD9Hieibqan4W|V$RJa24u6Kqq45{v4Xu9)AJWp`}4(QQL_?pxDT={Ff#Xeg|UFpeaG9 zOnZMPkUlzX%0}=}!cLIO;wGyGpRR~Nc2k;a0UUa>G;`QPgCu)la_ zJHm*lyLEU&gYiAfFi7XqLJwO(G#Xx!yAxu?8f9g)Ck-gGajG{nDEQSV>@MGi;L?QK zbjpl}@iBU%+9;lc96D1}D%|hk4ys6n8wFn$_q57P_5;Qsg6K^+Lj9heq7Nz%u=<#Z zDPi&A>f^Y8Ol{YNSC+|T4}|(xxdHDkXVe@3dT-rTtM|m?cvDF*yKMOK;59JOKx4$b;Z4LNc7ih z`)BNwdTEc9M^50SktZRbhO!_&s8H8rxv@j1Ff%^ZNvAh7Ra$CS^SjPvAf*To0w_5? zlR80vp_53P!35NN=t1UsR%sV?#-bol;?#==C7H{^J-B;W42q0XGuo<#<@cHg&>+I= zu(7hAZk}T81mXsNS4gD)+(M#&Y|6ONd@; ze96f!Nsz?JhOIJ4J(*tz@g%H}2)~L*ymxw>l>vx#ErWk?SLuLa8>&zSQcKDyWDfT_ z+P#A4nFsGZmbgyJ)a-i$2RdR%^h(h;5=6UWh)mrwF-sS(Dl?lQJygCe)wMFKEje%$MX) zm!vH7-U6GCAW|HQPBB+F+&U2RzoCFVMe;w9P0uD$X231F7?w0eN|Pk&kOW8*0=jht z*XfJ#L{Xr*S+GYMA*0(d-rWk`JM+=P8$9<^!_{>4)HF-QES)xb^xGcQ{qqA+9h0?z z$Ibli*sKO==r->bm&2V$@s%gC*S-YAg<(TA%Upklz^(&Ry%n*?VE2Y7`h2qpCpx#e zC38ZF&YeJ1xhV{XcVeCZY1oN7Xe(5)>(9m*2>vrkQ|ti}@fWyOJD}sb4nNm77n(~R zF@ffrV2ww6!tth?-lC;vYH1^Hi7jlj1gA&@T66LF*5&24rk8y}sN&B^Y4|n;EQ32SM$a-qQA2=-IsB_F*nJ>n&H>r+efggV z&}2uz;C7h81-H8)P>2CEP9;by2GazU;-Z_z;1B4gF=;h2Z@rvpzZlz%$VH$?!w;SV ztTcmEr1*q95eT9(8dMN{2i?BbL{o#ri;<*=>*B@wjM0*S72g-06d+(ID67dy@5YRJGh$x@WtC~ zYWnV(UMAfo`f;!D9n1D)VkY(gIur`3w1_kuggc8QIx^!eCvC?kf0(;=>42Ec38xI+ z_@>sOF29uf@7jXDUDA^CA@mb4zeU)fxa+T%^agWKzk-FBSNlVqa!*Lc*RI&_4<(f1 zUg4c2D8aOub__qnenRq~Vo}ZR7w2Ga2dx>^)tkk$mVS)`$*_#>OcHJ~V;XjV)R{~Q zvYf+u10Eq|rr~kuAJJC*6b661T0@uNzkNB#v9z=aBbUU)rK2obvR;21_up4i;fR-~u_d1br8+iHfbg!qtbpfwv?UBh=$X1Cm-Tq>cv z@{&}Jdrijd+D%B_itW-MXJ zB0hd-RHoQ%+yo$wFeh2)JZ5Q4aS#-gF7Ndws6ZMBktGu*BK*N5wV_aMeMzfq3}NeZ zCa;|8aPsPbZTaK#$X5CJC-5x0@y~A$fBgBaGLZ1!KmEyY5%b*oAxSY35Pfj_i}iE{ zkr@Z&e-%9@?>@cx;r(r+OWq{ZcRa*i%A6M%A<>NWvrKZ<&ul;S&oP;l*V{FBG5bxZ zlR4k>oj57nA7yHb$fY8Xveb#EBN#!LY1y#qNPyK`Vtt82)RlOb+RV{nvo(`sYH3}0 zLyC=Iig7s}h)u?!^HN>7Kb6y{w-gZ-6WJxOUfQ$}E}6;r#-)AP4E>5`3nBO($Kp0t z<&H1{tm*_LzgUAya9Ri{mCNRAb~a5K1r9<2W{FsXxCPAI{vF*pY8!NTRGSK|lP|%=YQ(?R{Nv#AbBw{z5l(@v)jfQYf7C#jYuID|fUCR3X#?c5CNn z>U;Zb=fmW`fvf$amF9Cj*+L03L1|ClZLUh=n=?#XjTmVI4GUAp6u;A>T+i#{G(E4` z;`JGE7JcW5!w;OQl(SklW@oiMEy5hB6++)o@DAN19CHBxIR{9}B6DDHHc)PPIEG|W zkqLL7iSHizeF8X zK2=NQYv&FMigHL{{c{+_Ud)%CV=;S*M7HtB^8b5OA2b?4&ULnYF-LN7EpgNHsN4A^ z#20sA;+V~2bm{>BDFwdk4Vxj#`jQ0G8V0Wiu1CyXDicixu)L@}9qc7k=B$-d(+ch` zY10YP!)@1&;qi?8J1)JG`?T_#qNk-y|Kan;A8##G&9l=`qM=KZ@vP(arD6Nhpna*3OygNc zyTq@Cj!OZ|i{SoB zJwG*x69Nh&SpcK>k|u~PoH33o6?GrtcVML1RC)$(PQ1#cTFA7B&_kPB$g;?lO^>=W zc$Rsc)_g@zDw6uU6Cg^R?9~lCbD2CJ!s}QuR-8oEW`Y^qQVdL2n>n+w?#LF%_Pq`h zf;k(WR7a%5prx%M%kN?+n}WM8+JOis8!acbv-qrLbjY!Fbssj59*tI}Oc5O3%_Mpt zxig8RNlNTQK~C>BQUwRa%?b>}_7%0WiEMygL>v;tn2U84$IKCXwLEts2nPa8Aksyl za-JK$kbB3ymJ(j`L3iS{1k+x$9m=3J`QRB}1pdYn4xr$|OH`4D?rQmx*l4?6E)M-) zF*)fsc2y%s0bPcCQ$5fNM*J^#LRNz>cfymH{s7xDF*V;WOi&_I^Sy*^Yy|GEec_5N z822y>nByc>>CJnY(ddNR-g+>>gHTR*tq}`|*j=p>vE#lKb_n;|PDv>PwVssDxG}ub2PCMZfkqi|+a*T2XAZz^bIvwuZL&~uNgxibR z)7kaa{L=JwDBYuT?PkE{x709w3QrU1Bnuh(X(C_Hphfgr7w!}TVcHSs<5mG{2$cng5#bdk&SO16DJbhG5+i6u zc>(9TBPau9tNyni0YUl4BrcCj;*+TgDBjCHa=nq^B$u$RvTO7_R z%HII#<&=E5p+P8F=2VhU(bgji4nqNO9;9hBEP0v2C!zE*wY;GF^dCGh70j^85F>&1 z#bvH&X%ITnI?)#ho$AmfB$&P{<3f|~3yp1oC(XEAs&ifbrYouQPX4MYc~t@Sw-MuZ zzoP+hEbKB#MAb#JnD1JV;M6qyZRBPa8Q@i1k}TR~Bpwat5M%*K^EQX?sG}?#&A^Z- z@tS01XVEK=f1W2a9gUyg%n_wY^ZE=aA(&zh9D-$WIea`k3pH8<4K^0aFnj{~!?7=+ zX9s~NE;KAqWcr|$L`@=oJr{Ek)^ei%K{pzbnJ|L$qOEmzGkRR#8SSYwi1I zWP#1;wV3YW^INcL!*<$@z`gOIOvTJSvhb|vR>cNR3W>X0s#HOZ};N>T|_9GCIM?8evpgXmi+aM0xl7;=0B~#%QIt5GxJ`@qaN%5D)m)wLqF8J{KClXVUddH3!nD?ZRr2?>tB$eMp|hh zZi^-!G&gz;(<555RT%IuuBWw^Yw;C4Ky8-lV&{C{L2jixprUqz8*`tlNX%&H|g z_l|<{z+b@YoLYg%lZM1KQ2UeJ8C{PS%S)8hgH0fjn>_$l|3*?Ch{+${{CIou`4c04 z%>(+(Rm&Yc^feqyB0t0)G){J1OkY;nSBMmfQ=DPN1k=Ul>0&m1?Q$}a9~3mG`g{1> zBOtu=TU<@kf$d_6Q}`9`YcnLy3r{yaNPbQOYKV`#z8ly~6GPyutXzE#KAANyUakVY>&t7<=dPJyXoYle1T zFReZ0g(Bw;aHb41rG&yRIqwdV97b|;@ByZihdlDzw?9mOL1MpeU5Wqs7L!txub~N@ zH-t!4S+|PR)LppGFlIz7PyzH>cHtQT!Zy!5wgb zEk<`ht}}Ev9`7iRS4$X)9D^x|)nKDd^rLr z3S=@E2%F2C;TVcH-L8s^YitRgEFw3k`UJB%Z3^0yj)c14dgYF1p|X(z^8_Jpg0Lfy z05|bjZDzj%YD*n#NdsS)DIv0xM9aR2MQSyY#q@GCe%&h>Z*$RuNnz>=bg|?4s-7Uq z<_7sHCIGg3&S}BOn-<};e3)NSPw640Xx+Xl530C$@mwar!JZ`zdw4VVQ;^PU;G zCj}!X;+(OxBJ%1~Zt@5Onx<1Ag@M&}J(#ZIwjcjbVAaFn#rmLCf7<6PoV|XdHO1prU~(@>3)5 zz;)+U2MuNwPDj?CI%+CtShAE_$}7K4daCQGvRXZrHE&_3SX%RwUfIwN0D}Ru)FJtd z?caa7o!tHe+{%l>cVQ)V#GgGZkD;;(zR!Th)wU?avFM1q{OFvI&C^Tqw^K`-WIhCi z9;r!Yn@T08w8Ay!0{)~(Wd`(K>EFU?^8 zOHQE$&0_yc)7Zy6x{psp!&ue?oyxdm(JwHTS65w{Ai{$NF(nA@|KaS( z+3AyEe|UU;IvDm(&TfA{JUX8tyiF*;qY{%OS(3#B(>Wsl249c`JgK+q@#wGf=HuT<6$7NsJeP8P!XJ7VP)T%b z?mRWfhYuyJh}Cq}_Z%KzHAub63mK={$U5CK0;C6ru=D2AEkuf|_0ZghJ$;6*_zFdQ zO3xN7ntCPJzVX#uL}5>&qfR(J2#QeBO=FZY z@IR*MieQG`{m;LAL=ksjYUqt0f5-5&R4MXz@cGu`6tor*^I*7AkN-pryS>UD{>S1m zc&0rZYBAUKd=3qMl5sk?H#gTC$LH<>k!-QaxQY?VK+TYALFA;)(dXcz;*$0adx8m# zI0&9Y`1}{PIChZ6hkUDnjTmSDmvtP2@Ogpag50~AFtQ&={}25qgQF*d^Cu@KM`!2# z!O898vl+=KOeZ6#7jprlDdoGkT2wB=GvQNmnSyg+f3Xud$o8bRFHQl}^pwZjG9?5a zki!RFBE12v1MThI1j#1s_-lsHVG1Fu1yb~r6J1@L%Hmf6a1pQ20UMUQQZMuAZJ-|_ zH|>;+wcSOHgb%jVwtSTqhN{=lXvi6|z@y;_YN&G{`vgW0F>zF4)=-eiU_tV4ELLej725}k0h1Egt!BkGZyRE29&OAj^dKuyJB587;xZPA~)4?VGoMk4jn9-miL0-rT=Qy~=Li=33IwF~0rq^KkIP zyZfXpkg~j!j2i(CB+cV~y@Xb0xLsEk5o z0j&M-uW2TeD)bVNJzQv3EiL5|g9BnsL=sL6u zf}z*cNKGvONdw+g9ZxiLI-A$+aYpkZ*>tqhYR_EJ(IjyiN`mQI3Jhhra+{2y;j0K$ zHtvSo%d~Mt?+TR20}LpayYHvVvBWooQSf)EkE&x0_`EXlDlr1z#(#lCWE=J=jkq_% zJ<&=N>gpjcHsbmrkU23S)0`h73<9>bTrIg+O{8orKCgu2nez?hIY^?VL2w^$fRs>I zi+hvTipMpfdStL0O_%86zRoVX8I%w#=-D29Mhk{B;^}(f8-eWGyWY@Q0Qxg};36K} zJ7h?Q*}Aw=4}9YUnt+u;ld z-&hsWHYwfhY*GELB@`#GTQiGNobkcVpjr?jN%I&3zZyS8 z+oO@LYR7Q(5re$*r@M8i0n#Ltr4K~k#L5|Lr&NC)#39Va@S#in+a7d6b#L zB(zSZ5cOO<-q6ETOAS2Rnr2;?^Z9M!ZHTTdW<328TW|rRzy;GPg#51Oo1{}2J;1Oc zrf09<(FOwHpnT|>F-A#wku0@xlX`*pyh+1Js_wxhy4kd1tiBbdFeAJk0`!(dnDO;2 zZPYq=SfLND^rz-W#sfI9rwxE_9Dx;+$-RH#1PuI#N*i&03sPgJHUaSr=P}$nD2<_1 z<|UZAbH6FEXOPae^bB9j0O}TQ3)esIP=Kq@6&xBukE{@_I&y;^CaE~gU<9j{wh!oJ zmo#m99H|Aspp^2od`>p2=@bs4kiU7_h~svs4{TTYYjU%FEmL(0j;XGI;*zt;*9MRN zx31904>pK72w7s3u2J^%M{->77oY)_8LrPVKYjH*^u34rwth3b0-j)+5>kKaem00n z4PoLUj&*_Kp+yx59gFb7@f?y1s))XUpy&?H+bP_Lk(8Pl<&ekoW(wSil*vK^CS>(2v`~#rkjh~q zm5z4v1`O4D*pOk_zlQrDPY>9R<1K(yTf_dNk{nPdxa>2>& zA^Hs5Yq^IQ^hQiR9%I`h+rzb|otJb?QUa%*D@dJ;DTiOZeyO}gm~rA?P8c@DIA^nX z%J_Zo%GV<@V-OtJ<;1^%>2V5dt@}e;Wjl}scMMG|2+c#*fll}V-iwOloMA4d z;w=1<7G86!jI8UeXEuxctf0IMT=)suu^VveuQzx$o+e_a;n=kU=KrBxZwrSi zl!jz)mn|$Uon2=SCX!0P1D5{;Z8z33HON?^8_M#5W?_=HIUN|%QEj@<#f~rj5^>F@J zrm?H(WPWqiJJj`f6sjdsl*IlT9PM_(9qnqG<#NXwfpfnZEud{qk;0@Oajj48L<2N? z=L4ot9WBF6hVP((OFta7wnLMKj1*4Ybb^G3A~gA|3MOiR@_|#>Rv($lbo@9o;30tQ zW}i7LH7ifz22S3jnAMA`{dJ^j5bj7C{(bhuQ1h2?TMX^?0fj8%YgKNBT2D?lR<~FD z*0Lw5M_Ko4X(mXf`4?+eT&@iMfxfMpi&E%n!TLKp5v zQ^OI8S^=r|3*BaDHm!7Q4d}}VL@Iy@pML!K;bRza)j-Vj9Vs~EkOhR#IdJjoG0rew zW{CCCf#srwD`)b5Zsw^KOxqykmN+ePOPq=ihVdLbOwr_^I1nQejs-muQyJdD!hyr^ z4^He&PWfWd(M4Nx(+S8NN9=ZQKK=~-U!S|aGv@s4>AGTjd^ci8&@?&U&i2Pdb%9kt6u8yXzvqa2=DQ&; zt?m61WXQfE`Ipx)4PJQ0RoWhgGB9sA(_{64E672I=E~bz0@q2Xqe4DF#Yi7YqeidQ zY1Qg;kdB==xBA$HJYh-%4tG84ga1U#XRm76t{_}iw;8+;90Qh$l?=?E@4D}#h>5L( zXQ7HTBc32~fffOspS*dxUN!xv8YKZzD|xL`90rZBOA2XajfJd18JRNef^IHWy)A!bNQ_ zdVHd=JIW$ds*4)t>&Cfs)`^A222?rLy2=*xXovcNHg>(QO!--8O8B}2D&EF%>s8EF zzzT~jr7&Hiiks^_wY;dC`J3lTv(6vx?r-nz*SGwOV(o@x%!)E_ekod-YH?WdAkooj zln6`L)K|ghBLvsIV)^jh#gu6nwofsxr^`iGJip7FrMxS#1Cado_L6kl|#efM&LUC_S$V=VU4M!A534B+x=|0F;pWg*C_u zPpu5=6s2YIyzVx!UMkPCbwo>};nZcFtxbK=Rv&FOIv5Mf)g^t1<%r=-Ya&&E0>dvM zS;-~B;>Ou5-nYe!AO)82AWF_zE5T6)KDB;R$yZF(KmmJAc$i_ahm9+dm4nxLjlya6mu8F!lYLFF=1 zNp*-<>e1J#%CBkn$RnlZ@4)@m7hs1w!A4J|JxiXn!2X?Zk#5?>f$%!2@{)L$P<@vs zC^GAp*@OkKD2c*=A@N1g2}lCqiOse1`pO*q8AE?6!L8Hds0k{Utut28R@Bou;j4C2 z*n&{G=Tcm0G_;}Q>NI?4=ivS}yv1+FE&^GqHnZ_~tAia@3VT%w*Im;MbRy0ON z^;$P1-&7+cckiG9F(|t zIM^;vhXpd8&8U;oX?D+l&m<8o-x@cFbw#!t2reXx;8&So_3+Kxw;!cz|MA1!r~BTg z`;VW0yzgzxJ_t@ZH0a+xynD-*ZbEqE-;B)^og_}h8tACN=yE2SWE8Z#Yy&m5MTM|+ z7DKJx#1#!-Mr^L@=`!i{|vrJ*({;^Ie3Uei8TgC)h1&jFR1**mnVUld{ zjwy1w{-gKt_Wtw7J6&W|+>|KcAM_7s-Cf+wp5{G{-H6pN?GN2)Ph9=O-@B6o8Qxdx z`I6$~<$8%ijUmP3kU+D*2XJLSMfl{?AB?3*C!8^$7p!j`@& z#btXWRDf2q`}*US@&5C>Uq0V!p8?t0@qoxjF9BFe?DRzfJbQJckDglbVx2fE7&W)M zXPQVdR}f%&My=W-W z?00jNnK?OmLS(mEOkedF1%mjZAxIO_BJFyoh9z7R)9JyPU|Kf!fVXHxm$viDP%%=1 zTrvfN6Ua`}Kp#I=f~TmAG)dblGkRe+*{ng~P8Zmm&X-!yVp|Sg49hrf6m{%7Ej6jy z{a$?o$s*wV?V3I-U^k81^_H(!sPILs`U*wmE~-Rphe45@Kl;6Ke>6Lq zL7M%)=^^#xBc>(bnCvNVPr+up0KNUDhcsp2*~AHGlcP|G8k`xkOq_jAG(_IiWpRPD zyTcXAXQoOA1~L|4O-^Kc+Prjy85l3GM$o5ncQPHr!(7?3B6Zej|CotiTWV<_=|T?= zrSqOHdan+>r(VitV?#|fEO$p@Vv*CxL>5i$73gLV44o?9UyZa&7FhBa)zNR_4|*6G zH;{w$cp*bffFZ>kx@B$bPni9E;yp!C6YFct38shYR4Zx_+AurXC*fgRYZJYt@6dxn zoo%==T7r{#LQ37$4WwVw|6IVZ*uJ{l;QXzTa}v@3|BoRV(ThWl(wtkc!@N$zyWZ0+#V zu4|Pv-=$u?1Z(}Wsu5%w8n0UKX0~1_=DNUID}8)~<-oJEHN4Lk)3V$1QLZ(efs(KldFvD&}-z)n^a#j2Umz8>%d}{I2U2saT7QRnTTE%Nu zK%?d7i3=)$8ej@&T_L<2iv&0eSZs~y7+)DIHsJGao>!$V40^n zqqSbHKKd18DGpyk2aSFjtu}@^TINM7$V7nD*|HO>a$8s(G9Sd1h9?CG%5gLkDxp%PyglGUUHF2+{PG7r|6{e>6(*yTXK)7aTQv$gfxtd4-l^Hq6z`$wH8(%w_aqk;yC>4j!~tk+ zujr8H#q=8P%iSa?0W~!4 zj-2^9vZjg;r*tXgi5l}Q0+3OwLG`eDpHJ#zT8d(F@~RC4VvJFNi$xg>uMbSK#6p+- zU~Itxfpe`@O=NLG+rGz8(A`1U7zA#*#+*~-i=4!R0hGU&OEG69h^ey@)VO2MyHXlj zT6-2u$*3GI@DZg6?3_7rB{zeK2==nI3=zTo91NO}io@h+I+V7VS>P;6sy*tVnQ{G!tnx$SaurgGRd zsi;8ua_wY)NK?~U!_-|zDLk*vE44)fr0xmbOVqBpKYA$9JBk0v+zLJ&>`PeG`MA`? z%;6*q!to>&@x6Q!y1*s%JQj-u^FUqusJN^}4(Xh{Cp?Et3>uzmuGf>Nkf`XNWj4y9 z9cY@Kk0?DB#lH*ny4-WAMfx7woeqytuA{sb^&iV?bd2Pv=y#Jn4vH^tf;3iGbA7D% z;*bW4W8>eAZ4-`+Vls=%`Xr&PIz?P)NNm~YIc$!H7Vyy$Ea^wCedKEPPFX6!v}s_F z#17uadjQr@KH2l#z+F&i-@bC1@AUmJT3C6@*h#QUP#4ijqcnJ&o^O|Dt`?C=B)D1E zXf=(y_T>p^N67p}OJ`Dqbv2wxN3n{1+i@*psT)+BkjraYEPWEkN_;6Q0^WVJh8JPk z@I8M6mqU;AL1G)8Jb8G|H{(`JU<0TxiW17#tna1h*Eq!cARRdmWx(K8rLL*isU{mi zz`5XH3(G=x9}P&;?h!kUyDCuXOxJ;z&u)?rR^d~XK#bG%Df*P%W zq%TT7`mo4dAQT@?aYot@1z_lv8|L!%US-`U@Ba4g6MT0Z{|E%Kr#zQPP=MOw%WDdu zv_8Qb#Y*lTreBgmixvb?_H?#m3+I>V)pGs1=V=kzJw3}2dfGi-(a~;+Y4IE}$VgW2 zCe2v}YHExb#|e}c4Z32#rBbpL;Iy5fGnU5AP%lxS&17Zac12^vF;u$Ts-r<_Q@Dm} zIAGw~)@W&uxtjQ7k3S#v#1+g3NHw(xWt5SJ)NZebwS_tgsVe_}7QZNJ(SvjSLKTdv zGgQMunj%~#_yXrul@0S%O-gYt1}Anf?I;Yi8|>UT+9;K+%`&5=TeArKlWwAH6P)R_ zi=4{~sEAk0+MB5|^sdNdxmfWQD-4v|HY9UQ@l2oI&<7EdFeDuE-_;69KC7mBBm$1O z)y;Zrwo8wHL%Z&?d08=Z>0Vsd*5(EXpN-g#nd=^WHk~=29?^H1SvVJuchiU}rH)8} z8urKWJM}b<#oXZ}*xPiHI5r?3YU&DKkW%(BGgRpuWkvzsWwK9Z9!WVTP3DphOI{vK z0LAivd@lqg<%6OW)$sBF=HoIlULJOi=?I=UQr2|g9!(Cl4SsQBAYj5v z27-$tQEoC=kzZGO2*vM6O!Voo`2ic)MI;hXhe9*$RW6^{WJgOw6Vf@t5uIIha)$xR z#KXO)YM&}|q%1I=v+6*3T^u|w>-Cxon6&xt5psh)e~M&1?{5`pffPck;u1E&W;8cv zLlf}ZZe-mZN&`{UlD>ih&6R7xO=T-m-ASJw&RrR2_VNMc=qtNsrl(?{pjdc0dN#%9 z#E>bJgNnif*$XSr;e7lNrKeuL`Rnb?FN=3~xA@-Dj6`Rt?b0@YE9p8HEWz@Mc`7Vt zxv3r0s(adJN8Hg$y8=G218i6ng~gMMrUVAJ#M;uAk>l;Gb0wT;hond?er!d)HakQ* z<0pP)apPE!PfDO-Ry;)s_kP_6ajavcQgI< zbJpdyQ1tSRQU_}Zdm>s(Z!zj!=p(aLbCfJ|!(-E}$O~!Q&t(Q%UPuD!tz=Up7J4A2 zHMO*$_C@f(7|;zPtz786n_xZD_{$>wUujfn0gH(>oPiV3g`N`7XRG188wVsGuI>(b zif+OjPdu8|T6Uwx02)9IKukjlF@yQCz5o|w=0^4KQyioD=uW%x8&ODDP_I^^y0;JEd1tkAQ1yFc{ zr08~6al5jGCCF-$1m9gUX>eg8CZ@kM(_dbVZ|GM>n$_;0ZG~iVJH&e5OyNy%b_xTZ zEt~E6mkhr^nMs(GA#u$&^q4KZqEwmYYsyIsnU;fm%NTwZc-RyrV#)_S{%(Hv?*0!? zf1SPm@ay>gy{VL2xBOQxS7xEJG9)khw(S<13p~x;UM-V^FYzP8QCMKeymcQiTkIqd z715}E1Dr*D(;O<+(KaHJqXSflj&_4X#=7+m^9s4Wy9^ssxTf&m9)&idIa^@gISPF| zUiECVcuQ**r~=^+2@g1CsX%@{XAqNLGEBYOak~p_xXyG{!%hQ!g6SnWA`lx;VS^Cr z?Cko$x_jtm!`@`5H>ZHMTAD{ zp(!@QAO}PNi!DVU`3-Z&&OUzldGz+pFZZ`^#~*(F8Jtg1Z<2i(fA+=R;zQwrq?Ap^ zCL)!=ZW*NcDtNSH*RNQ#d{y7b4TOCmHUAogGowv4KiUV*V0w7C@e174E{d2`LmN1K zooa&6*~JFQd4kz-xiP6xKQ)}yc#KlED20m53`hqdKFTjCrB6VBiHL>H_J|BE82X!s zTw@pXG9l`OYp;`1tGH7Bd~HiJvQ^oRs&B?zQrLTFTB1wd>+adpsUb=*b>~tA4H=|Z zJ?GXMK;6)!eN6_l4cBd?tFoy#67*NuxA%4Gd~u6+XucU8bR%<4K>f8wT$?CY?;IW+ z>g+iyTBc-5RMQvBQov$Un+t{vX4EK>R20kK1R0j|CANj9Dy=wQE(6i1lQ%}*PgY{H z(hwA{^CFuSI1sC}ckWc`x;!yk2fs13hZTn!CIzWRWG+Ks;BmZR+N7s-kmN_bqDNfR zCAkz;_vkTpxR;ypd;v-a>GU-W!|*;22^v*Wtf;Pflc}MYHmh?5 z+hUX1K)5i>58J8jR(asmmkxYmDDK`p$Enz@S*C_l`sV)4{Vnp5ll4swO=A?EW>s3t z(_pnLi6@DAj0G-f`J_@LF_gJbBq_2P_cZiK!6$5|;31NPS01NpN+osB^Oeva@#T!fRvoDyc@Q{H-Ni%f{(o zd9Jqqap5p3Z2;p@!rHV)Vc=c#U{S>jXc#VF87~|9x+F&*mSwlTjRb7h7gAxDut#(i zO=7ai-^S&C13|jF5h4eyEQKFAV$Pa=EIR?R4A64su!O)NS`$sO-s+R;H@DT+vg zKZdr)J!3GoNT7^QNYS7dW#n)fR?yiY&t(`6J@ha&HJ?rDaMqIIM9FZ(h$~D}Q?hym zCg|?q3dI{lk>d#APf`dNMzHOg!5X(BJV)>U{Nd`u+uPmKtI-(j3KIE@7MDwfjq(!4 z1ixmu=5B5-VBNaHIfXC@*ZZSC$n_xo=}#XI&xezV^hC zaA4vZJkH?)v>ZWVkpkIjA}S#eZH|rP*=y9o0-b)b?h-Ewpx$K2L53J}5d*ncT^iNn z)}dI*e|1?KiW}bip%_x-b_wLZv=A#(U8X}!>qcf+I+bD0t(dH08M2Y(s6J#3phm8Z z9Vup;(pm$k8}tx=flEWt(uWCd?yJc9k6VySk6r}emKUS(_y%t4mZcKOsr7u(w8E)6 zVN4|+aJB)9djv{A%f`ZlpA zkR)&&!XJRKG8Iy3z%)l%I49rzy>+=P$!t&-?UI3ZNmHeruWGc;L++85BVn7fStXb8 z#6%q%nECMm8KD9UH89ETx9?uU|ChbH4v*pr8^6Cmy@k443YAbG%}T7)LIi>&AqiGX zH_3+5VnqsdcXxMpcXxMpcXw~!`@YZj%+5>}+UI?KfBdfZdV5{vle06sJ9}p4%<&W6 zWWP##0qYpY);bwk8xGh}Y388NB90o3`7ZbFQsKJL%fg;qtP{tm7$35al?ElfRb)bQ zNhNfWbNAr#e@f#Ko2mP7m4B(A)4P9?>dXYeHv2jDXwf3zgoaSx1-)EsBF+YB9Moek z_L+iwZM9FDUBaUme14mKG%qD(h?LZIxsS1~G-W2RMIPAx52^Yp@Tz^MJ_B^n zx(uGG9X3uTvyhee!n58E?x>wIYw*098FQ!4(baKeyrQ4suBd&UmgxN&q?*DGw6{vt znmhxVY)7rTD%!YxUR`rbZu0o-)S+(uXZ=)rGDxmdJ~DI^a@cwZ?t^41RTeyzzc`5e z+Rm&=9ekF=mV6dRHHf8ALx(kFi(zeAfhdO;9FHD->|h5L`;U+uj?}r0vxQf~O%3@) zSf!Riw#sEL!=0Mt!jkk)suTvwF@}D#k0Gna^FPA|Z^{5p>Jz!Rr3pcs(R|x|5VUh8 z)j@LY$nwheZ`0^W`l@EJv`xWXsy%nH%hj$GO0z7s=R@|%_N>xYZRyrWiY|AqCG_;{ zvNDP^G-~nGrwlEv`BXywwokJ6xKtpT;DYoX6 z9{?JDdh68_*~q0J`9|&NoS&t^E}!5+=&{+}7EPw8?T@6E^Fm|VW64T8%QFuRC!mrj z_DDnJkmqX><+uGyO6Jnl1*BuaXZ+WsObWtT= zabT%iFq5F%{4LE^{i8Vv3)x+*@6Y$xrfNg0b+qzGyJK?22B}Bk*IkBMZVs)Cp>UR8 z*w?KSUte7?anElIeybFBdd%pnaiC+%Y#N{ODVIJ)I#s!XgDOVKO_&a4C~nb(Tw2BMD)F?V6%VcQ)&hAQSgg=6kdSFIkbr zGJZi1k)R?(zcbim$00djy%V%NU#$OF=PCDx)d2>VK%nWV=A&w(BD?-Wm_9$ zxex6QHL|Y8{rw-`A){C7TC~6BLiZ1SuB$4r-o5|Bx3tRib^rA(3*9gHy$jvT9?<{g zIJL9#zaCpCo?PkCw~*y8RT2ZzIBQw6e7b*NNyix9>9*&k8rsOE8tKQ=B)Ny0qGXw? zv$QI9yZNm~%<9GBX=J`?tjCV_1$vlr9lAR}a>T*BBT_Y3tkr}0SG1|zRrlzE*eR*< z(KqXWj_TT`M$6TQUyz>81BIl+=I{Sz4U$8VDy;^s%5p=^ zlNDCZl{-HeW90@?Nr|N4l4Z{%``b8N2A}Dfu!|t} znxvF++gbNVt&N;t(e0kTuI;68?NzYN4u+Otw-RJ@Fjj0+!DEk?3gW+wl7YWmWnhP% zo=}D}yv4qOE-ekUHIh(E74&!+e&_qSL|(M>?D~($qjdDJ9?f@=b%9a^d-Fthk=T@p zWNg~9d_RMpnfC?m81Rk>(St z1PkqB-=+C#nfFR25S9i!_g%@vIKpogQDFb@o{fK$(t3qq>ezML<-u$ zNMl#iDpiTmE7Q(Tuq}MbY%~}{vE7}WbX9?_cAd_mEpw+g&zP5+RXbyzn|mrKeomRK zv!RE#yDNuYp}u37=9#rmjg_NXrI)m{RN0{iFZ!N1a{cRuK{_Ff`zVHX71@s-6s;TPxS4KBib73$r2~?t$pE|d--7t zxn`-}x1B7ugY-w%bfQSC)t#EB)@-?~+!O;X;5Mx8cgd~>R3LE9RdQueHs8XHM6SP)h|qRwuR*sGcaj?~sBlVE;*~iFFdnw zxH2H039|d#HzC^Z7$*yoSu-U0f{Hq6skbTYT=zolcOVl+g-iRP`cSLp%$M-}Us5X9 zv`vR5X!@qLL_KOYrLJ&Fx8|^@ACUZ%#)MYL%J)f*WMI*H);do;sXvf-4XM?OhDzdg zvV0SpYd`j({DtO<<7t|Ce8{$I$`tFLA+2k29%xRKo|<<1(lgwz-5Lb#L-cNFlD2zI znB!Mdbeo+7Upubr{_6WfPvXcX+u7Au>EnWjU^tWdpO&|7NlCS`f5cnnRocAWkD`Bo zpU%w(?ML|}MVp)A$#QgCaEIthc5SV}&Xf)GtNa$*)y`S7%!Ms&2SG$9=h8JH`s`%A zY^yo2TgN6;AJ^JE#;zZ!M3(}F2JM)wJFO(~(hXOp3kW}#f;@_Dh@{V`Gx~BzmTM@7$k#*7}J*=yhEOd6xoLN&k=FZ8rw-*=B%y#aa>l$2? zojPUm^jueQQad0>M|11I;!kmr8>$?6&2rrKbEWrlYyQV;$iC5?QMm|ZzMb&XD@brG z1I>&sQVlJqLM}W>%Y%orG)u{Vc9*NrVvB@rqxM+P9uN8;T4;|4cF3P(*RLbga3gie zx`g3^3K{Wj_M>f~X9|(_yTdQoPj@p9R=P<{-H&p&jowZzx!Jin4K=m`N>&EUNb}6x zoV7~1p6{|r{*X+u%zLjLw1bKveU=iD+8&_sXf+zr0-|kK(Hl3uHMl3VsH54-P=&hg zTh}c0G?My_lEGa3sQe3DLGF2{v(Z&IR!@*qGm%GN_$8O!b1h^vdJwQrvHM<%xs5VY zL1p-cD7K866zF}uq+Ex(Gq2=3O-4)jy0`t5;2yGyyx^V>w^O?Q+bN4fjX$^iw=RAu zl^GJ1Qp2x<%!B2>?Fw#{@~O^b?XFMFez{v$yB>_F)d?5k5ij{w$&2`{p@^pu#;0yR zXz>!<71rk`KXar#NPVZ^1?`l-z?myI8L5XO&t$9D^5gBN(Z7JnbbN@Dt*sJvVMzLC zZIuiwW~gj*hHc%EaZ*;;b2)WC)|Yp-*U9bbvO2*)ws0K`hiOZ4TGr05pH(dl>Dn>B zv1U@_ce&&-ywxJYH#NJdi{&NPSwC6|m09JYFX+z#%Hb+ zS>)2}ISsocuD&s+;C7cra~aYL)Q2qE?X=JpSPJlwM{#tU{Zfr~Nup$8KKUnYw{1R{ z|3Ft>Nl`fQA=~aAebQ}7G7_O76Y>ZaVH$vv7DgQtQovQdj*#q+k}T{RUQC?}x0bxhH&Gp1(eOqrT1D(>I0 z^UOI#{Rg4??0@}<<*`pJ zmro3xsESCXO1>BPLQ1INo$RL6`&1X>s~*-e)+Mb$$Zk1HcB~ntzOB?HLNuzB2DxB; zh865T&2TW1M@tgiVyF+g@d(h;Udx#8ww|>T< zr9r|yjpf-$W1aQ*VwAS~+h?t9l(yZ?);2B=5*rC8?Sb-aC6UuiV;2pA-bc383Xd$@17-&7m)HBNC+YC#Wc)#y1$1qQl+n3iANbHPjL0$UTU;L^y^`YpMx z;?qCzlAGztKbbVim*-o!?Je4qd;wDu)LB<@DHK~aHJlBSac1#;$N4;xZOmVOL~Xo^ z*iJ{VEx)@T7E{Fe(i_7~vEuTX+(*=wb04|hAX*(H0|aH5n@oY@dg$a|aA#5~26R3y znOL{3W^{Fnl#XAxpa70Fmgrd=#{Q!-jhq5pG>&87NOdf-YI++g!& zn-@tJB}y_f!&@vGwA+tccvMCqwAN|nR7T9W3opDZ zX}fKfqGD*f-Hz4@AMNugBZI?zK4l7DIYcRD?lvb^-Pvh}DdRwxD@G>a)@4+~^Kz%g zr{p%E7mh@t>wzP+k_}oC(ALt{@inrvqWpj&S)pF`l>wL1Q##xiSZ@RwyrJbdeRTG? zf_iSZ=m^G2Xg47SOGIO^&>r?ytIM!~sQM3Y%6H<5ZVuidKS;`5Rz7oo>O1`)+-Tc_ z+?QH?Ak#uvhlE0n7A_&SY5}?ZGUIlRSEE1kTm zb#(Qp1x;+_w%JEp7Ss3o?@^&1-^$VW#7geP9+UG$hP@O@tn^K>aWB>+CY=)Xc6V)J zZh5rP;U|vF)+1jp{i=hUEK?s*pW;Jy1-KL|Wo7A9zDQ@KPuH%YH-^r?<-V34`k_~J zCK4O=HQrr}6jgc2BEr6e4sb3BBw&YNSF9XBQ$uTpZmlj5+A33Vw6yZG>VGt0=2)ODL(HH9uhDFOGR$sQCeum#)fXKCfDJ&YsfmA8||sL;Hy} zdg-;KE0M{J0d^1Q`qAzZcfTN1|IxEY`j}weQaOBAW^`-nB~zKUresQ&X4O$4`d_f> zt=_rq+BQ%)>1Qq^cCgr!da?RCogtMZ%En33rl7g8o~^PyH@Y9?YDPmD$>5>UD4jg& zrCQTsK?bOWD}nQ4P3Xd|t%dP+mY|}l%smBqZnxj!?p-M{jtQ#VX|WA&v0b^bGz-fb zhAzu*4aDyEFapn?BrS2flSf}%S{nQ`bS@+7_OJwu&vi9}?sM%?B-2e5m^&&NS+v4u z^-|j0?&_g6!*6o}O}9FU(aknEEqKvgq`@PB(_phHxhfrbxD0EZgTNqiT|wa2!&R5B=Uq#|>8SPB~2W~WFi zd^PJMbLZFDYBN4y_ng%hNr|EG=w$i8=(cF|jB+=zk1f}vX}Lri(PislTUYvKmo`MpNWH~fsZ`DLHTot1)YTkj0*B+ZK2IQ_E*3_g8Zfz}-+%K(l zeXF(cz&6<^Qg`dx)hTNbCpB{w8Ofmsr;RhMBPaOp<-Q1Sv9GL~sQL7^aV=8bmi1Vx zr8=p#*$&jr_EW3tn7JS8(y&m8vS8lKje0LFWww@r`|!q9TH1&mTGv{~L|H&J+aV}Z0xvVR5k2qyq3W`uIdfv&isSyg?8NDZn?nv&9qQ#hME zd*fT}_r=pJDRIf`618?OvOYm%e0x#8=Cjadmr7cXIXT}!3$Xm6hH6%zjUJXA!9w@9 z1I>S{MWE)J7cgtzf@Umt?~`nR&%wB2ICZ52EFSgD`C_5wecF@xWsFLP`DR%%ghlSU zBV_NlSC|AcTs3OD(a&4rvVP`52P=?H*?_T+5@s z#;sK$iHEkb#b3}me|K&1BY1}Rko_jt&?S>1`Ku~loXT&qGv(qVs2Pr)?byc98-hj& zyZ&qz@?a)yskQd22_;iye?jUk|zB8M4 zj3U+17!5l0g^OLT0WJM4BsGpVXoFmg`2kEdM6QgxTJ$5278Lgv}>!g`fYL4XmrAlNq z-b|*vG*gu-lcvseGB+ey?rKQ#16*9$J{0EnNZs z!MSz9NQw<|O6+wx8`ZLQr&RdXHw-Vfmn;jSdrF2_ewD6S<*#yS>8O{k`@VVHPa)lN z`Dsl7bhwM`z2G)-Ya5r_N+vNXSVW0#aIs(&$TT6jzwMXWAz4_~LktIOtHiEU!o}xn zm5GJqcaI6ZPQlg^LE5-zo6xJz9+nH3qFTNoyd_ARtZIxLD*e^SqT0E0-A5yJa6!65 zn{QCVLXn{7cDsP=<46nRZ9Ze<{<8B}qIC#yn4>C?nQc2Yi6l`Mp0c_E#iDvxbTkWeYp0v+U-59Q4*MTS<+gi`B}N8B}r~KPPaST!A%f;jQdUYYvQ+sZ{SR6`7M8qhNr`!pMPwleOjn# zpl6{pXd7S?iDQ03)O5ii7NPC(Aanh&YFiqlhqdG)G*_rY5v0C(OmkVm$`>|q?r3tB zVx_FDqfK=(q+MsM(kVj1O95G4z;ywXvRfpSKgTZJpw5{^Zcy^AD2 zT~m`<@QPx($qw2lHTr&ej79H?*hbF6nC5ZPUMP>C#x|KXOdBd2Qu06D^@|9HyYS1& zuqA;fTC;~MD3hzLg7D-x=CyZ_p;mmWeVoM!i<Y3J7P*rkKeon>MtG2&O47H>sZUUJ_A~4H#<_fI9ucy z!lYTnLrP1^TI?T}+Q~|)rINSRIg#yA9SYlFxtm13Uv8jyvLD?Ri5Gje7v7%-zg-)? zLd7D4?2l}SOg$BP*^Wq-muj)$oS~A6_P6$JnFY4W9V*AF52jGHRroDEHri~omO|QE zgt~OSynDD!Ws!ebn~!yq?d_)Fo-s`p>6Bh^Gp5(foI0l_J9TP@bp5vX=?*djhRkGJ zXqO)2*h%VZZJTvsDI*cFO=C9Kaq1>3a{P@|Pak)A}Mi0HYIq5y58@wj$(ZLraPxMnNm6zW2n zesHbyuaL*zg2rBrZ!TTPxGZ|uxoTav3b0(8nx0uMM}|Nx;6{{uPHdyLbLy;kzI%-8 z-zl@p%j2oKEcDQ{Id*KAgZ@<%JSU^C+l5H7ZY`s35g2_r^r$SbgGEy)%Pg(oK}eQW zE_FF@Nxo&}W_gg%3CW5zdMC=h!O-rsERbp4%iaohDh_!(mlbg zG3f*LTkUMq5KZ?99}2dIR@3&+fTVjSSQi34X>DWDDV;ydY9A#3Xx;5(Mn>0`lP2fv zDiKrUX;Q%`&m{Q)-+#jg?Fd|jaD~6XgJdtCqRTIoi-;S*Z|5SX{8>0}7i_e%=Q|w8 z1ENvRN6-O*a1b5!6zPJ|s#?M4j>e7U?J-Y(@vbwbbPco&)^r_SI(+Jkj_g#KP*U

    0G#I${2s8_S*zT>?PEhX0TZ!4>YJ2F#)n_qk~8La;yg^mTL3>t6o&92pxz6#Vd zSkDA)NYF8p(pjKYCV!3wIZ-w}`$AgX3U23FBDY3;o!plCT(Q6HGv(NIa%7qDVYqbA z(A>3ql7wE=6P@&9vlcLkYPrs2=9?j1uY**<+()pj$Nfy-Mpp)wH7)Fs!~lx?YID?x z#5UT8*?m}}gIj8nG6ppobQf2!I-6BR=wfXZt}3D^zi?ZAQ=&#z3~d^tv*x-P9;ETL zNHS_YUJTNE%cZ%RLqGnAUYuHOFPZvKg}n=DRlR#4gd3bfNnvcG{nAjLKQe=P=ylsq z(>Lh_CEY>hrC+XrmG7! z)#g)Cd8|&%7g^;pq%a$O-Of_JGQ(F$Ha3lv%7-4MgN5wq4peJtZOYcRBKLS;be$A! zY{A8RcO-ezN+Ro~TXXM_isDSdrW>>R1F1;#jgiT6J7e10T_%}vC9Hf>OI-Q7AuYP; z(@Z-`NcUJjU78Q&f3QBxd`U&p?}cQVTxrJk$)7%#qRTxeFG_!ATj*PPkQ8np3O3psT*{+gEKPAfA@V_shxm-v`ULk)=7;u6Qu63DE2}l_n-Uee)JGs zh$P}9CR~MqB@B(jiX^ojZ8iOpR%<>&CaH004Iz7nB&3?Bb8Bb1wux#vrKANoKkDvI|SAa@~e;HWVFifVA*U!iQXpg$8q%Tbaub?RMQv^LM*lNj{$*y-*jhQ~ru|Sz_Oj)raf=3ig9> zbwAo)@n8Bn^Yg4pm-=Gs>1D6`Ve8hq8&6&H8-v4asZYw&T1qH|#&?D`+8Znz%#Z*# z1V-}uZcRdY=t%2jO>yVIqRyfL1BynEre0KX88UCZ%t&EpRd0Xp9I0^}TjlB^WA~KX zV&6!j8ogL-jBcx|_$w;bOTs-U?34s0H7O6edhGvDRMT!QQY`cDut2P|=64B|*6fD_ z9oI@D4ZQJfL4?;c0E4Ss4&G7;|GX&JNUXC7+Xn=QdZKW{UyqIU7GhgR_4+)Z z>vWXw%_b)<+?&mEJTBYV8r15xO0(!N3EK7RuQaRrDRklJ#2;*Qr!lCqk@QPavY^YL zoEw{qH<)8m@+xzR=1iM8D>r$l&b8GpeH4SGJ#}EzU`ti~fOY*isTmx~TV$RJ>$dhE z-!!gKp18He?(1yciTtWq?vm1TBQ1^0tG9q2Xd3aM+4sVGg{vu2RyQa!4bj&%f9J@L z4&6D4Q7!GVk{(T|Mb>Ve4_oDtJ`Sv}b2LqI&s#QG#9Piu^Qjr1g1WXwt=Q0Q!N7QO zRkpvxdhohSOu1$$?YTL9B*&_&4~>v+f-bA-LkT~PkafJXJ6Q#N=Vt zIU$;BPt%UVjLL3FG5%2-rY~Oj~!nq z-I7`wcZgOiqZ{h-#mW?Gn9~7J2N=l^BWaKgij`Dikb&_bi?be28p|RieNXx5vxe&= zR4vHf_JGl=O5)V@pmvD{ZwOsig?Es5Hn+(n%JtIEDmMPcopsj)vVd~2rOf#UN`AtS zh1ES-=FygXZx5Dq5BEj0t3$imG_(W_E>`U(bul^?&8`?5n67DzTZ*fpCaG1<;fGj{ zjdp7FRrvy2cun46xnK?J!fO&Hk1UmQ?M*eZx>x?Y>@p4tN(CO zc3ab!1}!!liGJ2@T#LQHm+1M?heKq+bVjyEOBDTps zsdcy6ZBsgT)>&JnE22%W@9r>HqoK*P@1z_ItfJdMbenyemLBx-*XG2aYFYyp&HDY4 z9V7Q99g-o)2_4Ag zC++rG5t(#K6D--PWhfR<^BajKH+rCOU4h@`zR1_2mTK<=W}$F@`>IWwg+h-}ewmdw z?8fu~yI$-nr#B4ilKGHr4?V35pE~!n_8stKBmhGJ8uSRA={K2}iX`~Aw4Ntn(w(RGsi1IgMsPtlO)UkYC=;UbD zRnAzbCy6^djB?>o>O&Sg?rUU_OnpP$Xg}|p5857~6fa*R5Kag4uiF0ZTCsPzsG?G` zP(K7-%SRvk2IUR;MQ&E$1(i1n?~w2lTId{mIT;11(duhjX+!lbzV04%HK{H(N-crZ zdGPcHg&u@GHrrXXnFZXy6L}Z}#T&Viq>@pJJ?#@3Y9$XV16NZdWAcCstu;i5$lEbH zTWY#Gr_Sxl70Uo~?Fk%uNhWO67sDA+rZIE5Q!7EaZ*g5!Be~#$^|<`R{J5=xd)Y4y zrRd3pr1rASc8_NgdQAOLU3zi9kZTa2htXc-qccZhhUzU`Oh~5&R`$ZG8 z*jATAY8uxlU7LG!CXLR9>(VJ#LlIk$&wX&dIl5=|eF1w=2`zIv>zstO);Y`7KKPds zqnq_K=XcY!};uuhHHs)8!xfMEM|BqI_`574~}`evfT( zwb!-jqL}iyb-Aim?TZkK>_VF@vnZv}aKSrz%W2Ljwu7B>o9tSO@6r`hv+XkcS4JVZ zlv3_&&v8{H0w$+Z1bVggZ_<9|};!d^nO)G7;e}a3{wXwuE=kGFq_sc8N#wni^E6+1F zWg*4-=pJ%9^#{u+B-gi#DTyl~AaX!%Zz@Z^#cVq*Te&i#}vuqQwd73$5wV*B#19$fpXn z5VqAo*`|yx*aTDa1$gTPNL(^KTuW>`WB-<==B)JnF z3_7Gzk6+?L`5zK4M#-~5R$BMb=`QzB&chYI+)fsk;dDU?eNtm*wHH3Aa4!Y1s-t{r zhjDziUS#Bo|8`CI3U=+B z(K5ECSq@Rt3X2T=Y&YI670h!O`r2TVeXU*r^zbP3Yz{UBJNy1Vp+qwjVL|RO{(}qe zlmAqfSm0;KnbS*Rm@c_0bvZf@-e_6d+Etdj4x^Uapfxy>{iefBfwi{%g2p-*>bQkI zdG)dSAD+9BVw&gR;X6 zRrW->&1%J&U%NJT$woHW@fOUONDX{lO`BEExeQFZafE|F8(zKdI$B#t6JG8;RHhf1UBlkzBC7%|`f|UcoHv72n)5=ecLd7xz zPxVlP8I$7=yV%D3NBZH9zRyrTY(F=Ybn)Plv@ibC7qF9kiGHzVGBR3y75rrp8-((& z+n3s`aSb&xElrz@d-G3H>HeV;2u3&Bcjy@o>S5*)o&F4GCS&NuRmn;=hF?Xzir z+V2f53aYbp$z`o$&S!S%avlpj;$#otv>$gD6PrC zoO80H^_3;x?<#1bv%_ky7FjICH!*0Cg%}3fk||bYC>g0?&7oOuEhJZ_n>5wcth?$V ziWbE#B-t+QViQ{J+Vysko-%sF4B0}Pl!ERv67_Z)SvwPbVuOux4)+c|bZF@9@>#ye z&R%q&nXC1lHXDLYXfbwNgY+qBl#GtfX<_NBwkg!~=zAL3WOtQ&BFkj2(!;U3b(Gwr zGHO!>YH9YM;Hxf0b(v%OM-#BCyyp~GV+paNO*=~6l2W?PqucZx0F?t-DlkH}uM zg7`KfdDdtx3K16MkAreKZCWw~Ag!7DaMH#lRVD|B44KToYQIp2q zla)jk^vLHV+{z7p;tac`bYRH@sY-8}U_%vyiXGRWH7CduvS`k1uHe8~%{xa+aa9h%QR`sM>yO(ONbav-)xOM}$w zNkwdMoyb^dmkHBEA-~lQEg=IjWMzoqjpK^iX3Us6yQo`IR~yn+R5c`3nkpT#OKQm6 znO)gAxe^V^J&}|tc~X+aswzpBB#ZP#DV@qfIy_xeXTN3o zCf1j*|8KDTQQdEmLwZ&BTdunA;*I?lsqWji`jLLReJ#Hef4lwqEw($HIrk!iUGgm9g-qvG8WG@D{P~RBNARKvFT#r&s#e&FA`oS zadRZRZsPk$xG0faJpBIk5;G#<{)uZN;Q@&+BjNQE#Y=?Wzd<4w32&GDihj%TS@c^UN#n9E*4%s7G5D1UNIJ4DHdKi7G5P5UNsiZKUsA{pV-s1PhySO{%gj< z;oOM6f9=@zbzhL?q_m{6 zygOZ$E3cFx0?Cfjvhwb(vZ{{mOm}%lF4vXLCUFJ-RX|bWJPItd3ma%qpYkdovkXZ z$W>;NL?3TRrAxZX(xsV-YaP`c}aI?ro1!TnXIZz zmUeYic2`w)$w|vr6+f$u(Z0@TjcXrBqQspv*Xjv{Ju~c4Fk(7%sC;O(-T}kPB z(OuS&O8590SsbFIJCmu%BvW!qvT{tBu3U#)w{m7P-QCHGvaT#~U>84^P+5f(e`G4N zs%*9*Q<3h>R;4>~l~v{4xvnZXL*?0ulsi4arLNIko+_y-?mGb#zs9 zmv&T^b#`=>cFE!9zsqj2skzD7&fWBqM=}dLxQst@AY%*8T-7S$? zm6MrP^bVABD_4@dL2iv?Ceztn*45Q1=S(i0uB=?Dsj{lB&SbW{v$CQ)|6RdN?cQ5f zQIf3eDou9glKT5{RoxvKIaImmB{q}UvWiS3PDl`D**U0^>o!>?$J)_ZmP}`}*~(

    8mrsg!%9yQ)eq$Xq&?>gwz+?ap=Ns*>f&E=g0; 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 LpuLJP0Am6G8!#lK diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.d b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.d deleted file mode 100644 index 4e1882c..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.d +++ /dev/null @@ -1,89 +0,0 @@ -Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.o: \ - ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h \ - ../Core/Inc/stm32f1xx_hal_conf.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h \ - ../Drivers/CMSIS/Include/core_cm3.h \ - ../Drivers/CMSIS/Include/cmsis_version.h \ - ../Drivers/CMSIS/Include/cmsis_compiler.h \ - ../Drivers/CMSIS/Include/cmsis_gcc.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: - -../Core/Inc/stm32f1xx_hal_conf.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h: - -../Drivers/CMSIS/Include/core_cm3.h: - -../Drivers/CMSIS/Include/cmsis_version.h: - -../Drivers/CMSIS/Include/cmsis_compiler.h: - -../Drivers/CMSIS/Include/cmsis_gcc.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.o deleted file mode 100644 index 6f03ab9e4321f29bd1c8fc9dbe9883a3ae4a6c6f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 833820 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�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 F{|~_v=1Bkm diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.su b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.su deleted file mode 100644 index 77037a9..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.su +++ /dev/null @@ -1,81 +0,0 @@ -stm32f1xx_hal_i2c.c:453:19:HAL_I2C_Init 24 static -stm32f1xx_hal_i2c.c:568:19:HAL_I2C_DeInit 16 static -stm32f1xx_hal_i2c.c:614:13:HAL_I2C_MspInit 16 static -stm32f1xx_hal_i2c.c:630:13:HAL_I2C_MspDeInit 16 static -stm32f1xx_hal_i2c.c:1050:19:HAL_I2C_Master_Transmit 40 static -stm32f1xx_hal_i2c.c:1171:19:HAL_I2C_Master_Receive 56 static,ignoring_inline_asm -stm32f1xx_hal_i2c.c:1462:19:HAL_I2C_Slave_Transmit 48 static -stm32f1xx_hal_i2c.c:1592:19:HAL_I2C_Slave_Receive 48 static -stm32f1xx_hal_i2c.c:1713:19:HAL_I2C_Master_Transmit_IT 32 static -stm32f1xx_hal_i2c.c:1793:19:HAL_I2C_Master_Receive_IT 32 static -stm32f1xx_hal_i2c.c:1876:19:HAL_I2C_Slave_Transmit_IT 24 static -stm32f1xx_hal_i2c.c:1938:19:HAL_I2C_Slave_Receive_IT 24 static -stm32f1xx_hal_i2c.c:2002:19:HAL_I2C_Master_Transmit_DMA 32 static -stm32f1xx_hal_i2c.c:2158:19:HAL_I2C_Master_Receive_DMA 32 static -stm32f1xx_hal_i2c.c:2312:19:HAL_I2C_Slave_Transmit_DMA 32 static -stm32f1xx_hal_i2c.c:2424:19:HAL_I2C_Slave_Receive_DMA 32 static -stm32f1xx_hal_i2c.c:2541:19:HAL_I2C_Mem_Write 40 static -stm32f1xx_hal_i2c.c:2664:19:HAL_I2C_Mem_Read 56 static,ignoring_inline_asm -stm32f1xx_hal_i2c.c:2960:19:HAL_I2C_Mem_Write_IT 32 static -stm32f1xx_hal_i2c.c:3048:19:HAL_I2C_Mem_Read_IT 32 static -stm32f1xx_hal_i2c.c:3142:19:HAL_I2C_Mem_Write_DMA 48 static -stm32f1xx_hal_i2c.c:3321:19:HAL_I2C_Mem_Read_DMA 56 static -stm32f1xx_hal_i2c.c:3514:19:HAL_I2C_IsDeviceReady 48 static -stm32f1xx_hal_i2c.c:3650:19:HAL_I2C_Master_Seq_Transmit_IT 32 static -stm32f1xx_hal_i2c.c:3748:19:HAL_I2C_Master_Seq_Transmit_DMA 40 static -stm32f1xx_hal_i2c.c:3931:19:HAL_I2C_Master_Seq_Receive_IT 40 static -stm32f1xx_hal_i2c.c:4055:19:HAL_I2C_Master_Seq_Receive_DMA 40 static -stm32f1xx_hal_i2c.c:4273:19:HAL_I2C_Slave_Seq_Transmit_IT 32 static -stm32f1xx_hal_i2c.c:4339:19:HAL_I2C_Slave_Seq_Transmit_DMA 32 static -stm32f1xx_hal_i2c.c:4513:19:HAL_I2C_Slave_Seq_Receive_IT 32 static -stm32f1xx_hal_i2c.c:4579:19:HAL_I2C_Slave_Seq_Receive_DMA 32 static -stm32f1xx_hal_i2c.c:4749:19:HAL_I2C_EnableListen_IT 16 static -stm32f1xx_hal_i2c.c:4782:19:HAL_I2C_DisableListen_IT 24 static -stm32f1xx_hal_i2c.c:4817:19:HAL_I2C_Master_Abort_IT 24 static -stm32f1xx_hal_i2c.c:4876:6:HAL_I2C_EV_IRQHandler 40 static -stm32f1xx_hal_i2c.c:5045:6:HAL_I2C_ER_IRQHandler 48 static -stm32f1xx_hal_i2c.c:5128:13:HAL_I2C_MasterTxCpltCallback 16 static -stm32f1xx_hal_i2c.c:5144:13:HAL_I2C_MasterRxCpltCallback 16 static -stm32f1xx_hal_i2c.c:5159:13:HAL_I2C_SlaveTxCpltCallback 16 static -stm32f1xx_hal_i2c.c:5175:13:HAL_I2C_SlaveRxCpltCallback 16 static -stm32f1xx_hal_i2c.c:5193:13:HAL_I2C_AddrCallback 16 static -stm32f1xx_hal_i2c.c:5211:13:HAL_I2C_ListenCpltCallback 16 static -stm32f1xx_hal_i2c.c:5227:13:HAL_I2C_MemTxCpltCallback 16 static -stm32f1xx_hal_i2c.c:5243:13:HAL_I2C_MemRxCpltCallback 16 static -stm32f1xx_hal_i2c.c:5259:13:HAL_I2C_ErrorCallback 16 static -stm32f1xx_hal_i2c.c:5275:13:HAL_I2C_AbortCpltCallback 16 static -stm32f1xx_hal_i2c.c:5310:22:HAL_I2C_GetState 16 static -stm32f1xx_hal_i2c.c:5322:21:HAL_I2C_GetMode 16 static -stm32f1xx_hal_i2c.c:5333:10:HAL_I2C_GetError 16 static -stm32f1xx_hal_i2c.c:5356:13:I2C_MasterTransmit_TXE 24 static -stm32f1xx_hal_i2c.c:5450:13:I2C_MasterTransmit_BTF 24 static -stm32f1xx_hal_i2c.c:5529:13:I2C_MemoryTransmit_TXE_BTF 24 static -stm32f1xx_hal_i2c.c:5615:13:I2C_MasterReceive_RXNE 24 static -stm32f1xx_hal_i2c.c:5723:13:I2C_MasterReceive_BTF 24 static -stm32f1xx_hal_i2c.c:5849:13:I2C_Master_SB 16 static -stm32f1xx_hal_i2c.c:5910:13:I2C_Master_ADD10 16 static -stm32f1xx_hal_i2c.c:5929:13:I2C_Master_ADDR 72 static -stm32f1xx_hal_i2c.c:6077:13:I2C_SlaveTransmit_TXE 24 static -stm32f1xx_hal_i2c.c:6118:13:I2C_SlaveTransmit_BTF 16 static -stm32f1xx_hal_i2c.c:6139:13:I2C_SlaveReceive_RXNE 24 static -stm32f1xx_hal_i2c.c:6180:13:I2C_SlaveReceive_BTF 16 static -stm32f1xx_hal_i2c.c:6202:13:I2C_Slave_ADDR 24 static -stm32f1xx_hal_i2c.c:6253:13:I2C_Slave_STOPF 24 static -stm32f1xx_hal_i2c.c:6422:13:I2C_Slave_AF 24 static -stm32f1xx_hal_i2c.c:6488:13:I2C_ITError 24 static -stm32f1xx_hal_i2c.c:6654:26:I2C_MasterRequestWrite 40 static -stm32f1xx_hal_i2c.c:6724:26:I2C_MasterRequestRead 40 static -stm32f1xx_hal_i2c.c:6824:26:I2C_RequestMemoryWrite 40 static -stm32f1xx_hal_i2c.c:6904:26:I2C_RequestMemoryRead 40 static -stm32f1xx_hal_i2c.c:7013:13:I2C_DMAXferCplt 32 static -stm32f1xx_hal_i2c.c:7151:13:I2C_DMAError 24 static -stm32f1xx_hal_i2c.c:7186:13:I2C_DMAAbort 32 static -stm32f1xx_hal_i2c.c:7289:26:I2C_WaitOnFlagUntilTimeout 24 static -stm32f1xx_hal_i2c.c:7323:26:I2C_WaitOnMasterAddressFlagUntilTimeout 24 static -stm32f1xx_hal_i2c.c:7374:26:I2C_WaitOnTXEFlagUntilTimeout 24 static -stm32f1xx_hal_i2c.c:7412:26:I2C_WaitOnBTFFlagUntilTimeout 24 static -stm32f1xx_hal_i2c.c:7450:26:I2C_WaitOnSTOPFlagUntilTimeout 24 static -stm32f1xx_hal_i2c.c:7483:26:I2C_WaitOnSTOPRequestThroughIT 24 static -stm32f1xx_hal_i2c.c:7512:26:I2C_WaitOnRXNEFlagUntilTimeout 24 static -stm32f1xx_hal_i2c.c:7557:26:I2C_IsAcknowledgeFailed 16 static -stm32f1xx_hal_i2c.c:7582:13:I2C_ConvertOtherXferOptions 16 static diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.d b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.d deleted file mode 100644 index 31d54df..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.d +++ /dev/null @@ -1,89 +0,0 @@ -Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.o: \ - ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.c \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h \ - ../Core/Inc/stm32f1xx_hal_conf.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h \ - ../Drivers/CMSIS/Include/core_cm3.h \ - ../Drivers/CMSIS/Include/cmsis_version.h \ - ../Drivers/CMSIS/Include/cmsis_compiler.h \ - ../Drivers/CMSIS/Include/cmsis_gcc.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: - -../Core/Inc/stm32f1xx_hal_conf.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h: - -../Drivers/CMSIS/Include/core_cm3.h: - -../Drivers/CMSIS/Include/cmsis_version.h: - -../Drivers/CMSIS/Include/cmsis_compiler.h: - -../Drivers/CMSIS/Include/cmsis_gcc.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.o deleted file mode 100644 index dfa2f17a2207e480b0528cc3deae2ecb5f8c7878..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 782032 zcmeFZcUTo?*FHM4r_bKAi=ZHgy(QS9F&1o5g2tX$VoB^q)L3Fy5=Dxl*bo&3u{TsK z*aa1P@7NpmuGmp5=Uy{=117%T_nvcp=fAVB%URFr>**Co{m?joWm(4cW0}%S4#qH> zkDG}le5(tTX7)4tbbcS;eesWE`{7@IXZlaT0nYS5z(LORV89{H^iaTI&h&7=5zcfF z;9t)4-+&{X=}~~e&h%)&5NA3RFwB__2OQ%}j|GfyrpEz}ccvo&Cpgm+0Vg@rlL4nV z(@}s^o#|-6Y0mU?z!}bT4B$*>dKO@;GaUyw+nJ6Boa0Q-1)S$h&j(!KOfLjn2-kXo#_pL8=dJ*fSaA^Er45{ z>14nZ{L9!7xkg+)tW!`R=Ph9v-7qiw!OsyeLGe1u^z6fYj6RKuW%wL(4_0J#g4(c zcOX;5&}NEd4Q!mA6*N4sT>-a%IL6KY5@YsfE3rkr`u~&qF379@yP&L~nMuO~b7a4( zWD4*K{--QgiGhW8u$v=Um1vzlr`7lZt&UF13Sui|4SW|A6xcp6wr=8Siqt>-b8YT< zPq%;j;a;tW-aox_&wGDSHf7+yqvBp|{~|S2r+yyUhSOA@|95IYLk&=!7B3tW$o``? znPQ#+?p3x0WNZuG5VD5J)hhBr>z{Q`b<3V$i%IFO)R)V($uMgF&Fgq-S zr}VG?1xmK3=*(pmS+qe@v3&4Gu`SEh(%2#{FF9?`Xq&nG{g<|w|H@W`vjklJxB%`Y zQ*YfXrkUyFKVu;^Y8 z|68}Np-YyGKBGs`0#S7Qw>0zfm!yLs9o(^`({>$KTp7HHr0bv^P`o*G*-6jI<7c_~ zq7MdnXZqF22n$9}8R|g&c?Wt0WQ~ery!^99<%yV@)Si)^6=u!;#WLN?WQ{`a8k#jq z@_lgObMJLC*#8ifi_YvYH2f>XB~h6(zOOO9e7VFa7JGWus1bpA0v!SGMonc@e^(rp zGTm#q1?NQa@L!R*%Hf~ZnJzh{oKtRfv&%E5+;Y{}K$OoY>%Z!k8DQA@l1?ymf=B(k zmV=!-%#Ol(FT;H4>}PzVW-o(_w(FeJ-h~cb9nzV_1|*;rzro&qWD5@ zry4Bnz%_3&`uLXHQkXv8 z$N`Q3uK*7A%mIGEZUM>t(TWGeyyYq|zSfIb!?+BI%b6`l1iJZWb;?4X+x54m>s*s- z&ZC*g#b>}bbT1}l1$yom=x3#>k>UpYa^6b;P9SCeG2Kh zG4kyB*$hY}Vbo6UH3|1>*FYNAvuDQ*Ux+hTZGS0BYVDZI5wlkpSIpEJ{$IqLtM-hT zja3kPfi2cJ{lBSCOZvNE|FIRKt;T-V7IW8VfiJc&qvbNbGR9A@K&(Vwl^K{n!0udu z=JX_2ZRfN;(zKa!;;-{x#s9zdB=n5`oQMCpm*j4h#v1FNV~2Nk85m`)T%=qZW#Gy+ z4;j~r;6IN_IWio^9p{=Xd(?F4=i)i%5vmc|0pxC(ll0N)(G9Xm>w&EBtcjPBP`cdM z%(4|?@Q?AWlhJu})vNrVL|js_m)GkR%jnN#jn?xquHS=t_4++%Q7e(O=>(j~mochdy_ci7dRW)j%LwN5 z7I~ety#lC3(~gwdgsXlYpuK+1%dXk*&pFj6y6Oye3jcE~L~HBi9mMz+b*=~h*EYsw zjmersZF?*t$f?JyNz}&vLit?6jE&K8qF2E1UPi0J3SvyZbR#Nw8)oE%dSkj#CSkdG z=uHzoFO5{AH1z!D*2kK=9^+f&i@oCuebyQI*SXrC*El2Y!g_S;GXLA$%eic{bJ{>_ z?wK`-#sXtxFw*VN9%%&NPrRE%Z7a5}c#86nKfov(LH9homvb$K5i1yNYUBy3^Uv2- z#<-BXHROzEe$Em!T8fvy-vn1H)Y}p2g!8qa|6RiB3bE^T6o5KH2@Yg@zyD(0f3XBZ zgL=jG%!))VE*Pm(UVxoVsCUdm&b;ERCRYwU!D|N{W0cfONl&AcP@}G#qa1Rz7~;^# z9+%{earDz`HIe43s?HT1?S?ZuZRz9|kQJO2VYGsgv}S~kQG>}?Ke|Tlcb|{kTu^9o zU~JDI%EM_Rb;=76c}S+Yv~zMG)mJfnP309pmU7yw(TDv){USqOGA;Z<$)`&Or5^ct zyES?-BFw0RIxVC}=#r-1oYMocLO!>Y^^ftu*#jbtewT%QmmJu(XL6v|xS&X*-;w@5 zb5G;(|M}c!g=Xow2mCDeS^snHzgV6||4;shrR0BD%E`TqGIZs=oip!2k)8p@?lXA9 zg3nuqUhYiB{?T759cthIES;s9O)F5F*aR3`SGwRzf2oDk$=DK{97y|>l6u~fyL{%Q z7v`ic$!I-ZY% zCd}o@%YPFnIejz7Ub4O>W3fIP6OtU*POo<_f22Am2VTs^E&}uFg*;*OR!$T2>rNEE zKGZI}y5vRqc=uv_rIXZdh)4T?;)NB^jTG?>x|g$tS{ZHTv)WBYjV3#5m(qHh>FU=< zU(NK+wVLUTmZRgjS`KLS)BXC?@^zf|>(gFN?&jCWwT?;tgRPX@E%^`UItG#zA=zFr zWQ;WoWc*w*pS4Ixdm|szB0Y>2*)0oYo81cjKr85m{81}FT5pkv8M}9A=JZytaejS_ zb?Axfx%EktM(Qt(RsZOXD0!o2ez`a93C`X2vwqL*C95yaCVn@fq%=jD{CjfWoH9-B zi&m@SIb}+;&wFD~kK9&+`eCQu!>~$evg+5vub-}R_Q9abHLsF ziE3CdaOy?-Gs7yJ!@r#92=fYd(Q+a*=wI%i$%u#|&_^IWI`q#TS$cFt{b&EIlfjS9 z%GGN=pP`m!2K=i}1$?njrKe~2Q9a*Z?(a)88~@8*<1gCF>7(mW!~b9O(cFF0=&w`` zL1-^jdqz*q>P|FQ-DUMbdqO{_vZXZDT5@-zrzZEwskh`lXjM9%Q)fi;&(%|dpy%qT zL4DXtLEVGUQ)tIQlI8WDYRDKp6*7J`H-8Pf}$^4Z74ioc%{8SZL-6JzrAtO2Hpl~eu@8Iwtv+1tc$mro;IEq`m` zn51b%AzZM8z?hnN_9PN7v~K|t^AkwT^3(mUiI?(@W*L(#R9Q(tvW*cKo)>!d9Ynk# zD+GocxnE*9PqzvX7wG;}q!0JaIruB?-jJwtqse_&2!t|jzY$>{5#oPl8LommT}KP& z@R5AVB8v^A{HK7(Cw>$ep^}3b3f-7GaDA=PRj!Q@=@MLiJ6XbAw+GR6fr>5xi4lvE zz~J@*BUJVvx9 z+zrgGmCJ-=UIWXcg-i!8pMkk+*GSL9!18Ins=$bz2Ii^VCtiL7^V0Y^(DO2|0@@4W zd7B(RAbSP1Ha;RF7BF~qv=7AdF|fK?omTK((7^mP=>m9#3@pGB&=jRt*uWZS4&oIt zu!h>m8PF?gV2w3z;uSNnrdqXuEF%^-u;y9`;*~J4pBaS;nZnZBj2#UDX{$H@IV)-6 zwxeQ9G9S{MWo!~l9Yre5hC{+$?z9Qt=xPGP+WW!2$^PRlv|BV(4+xdzIzY&!Qi)wj zDlrvBd_Ojm@xp=|{D^0y@3<&19DE+0x`I<&zQ~>-@mT$phFf9zx>6tA+I{sq6C>ZW zPzz<;$Mq2y`L2%e?mZfz6+hGw**!)C=dq4h+-ul@Wax<9z36z3k)P{`yZh#`;Jnlk zPxmIJ!FjDC1sJY_9~`~mC|7EV3@pp2lrv*EREu1+|wM8|EMFZHf=Awv#gGp zw3oZznWXZsIt?Z97Bde@N-CWeZ84Nwmz+|mDVRi#kwF?(mMs_pwEZX*I zu#(Ts37c`eIfLGSnF0q>#jB5hR_QcJWp+vzsSf%46J}wsw&UO#SE;l z*5){DmM}aNXRM3dp;!t%5hd-c2c;rA7&*5eu20qW{1+2ydTT`qHQo3bMkRaS5h8|L z?*0gtQL1tcAS#f&OS=Y}NZJK|p)gC}%i7D}YqD3u7wzQG1{0%v&taHkxK`*a%5Mc4 zA`e_tBcwYNpepCOw??{S0jhv}k4#FSG6A8u7Yg7QrFQ{JGwzMbLF5nby%6Eu%eo7U z(#M+~l@xbx7Yoin@2LjvJTdyRfr`Zt*gndK-Z?eJzpe06pvpS94pJm45iV-xr~)lZLmY$xx`Sz>3eq#7 zlK5As;xI8=lwo{MfL0Fw9{k(PyioF- zTNjDR6h&?p7Zoy!DZC(CW3o%*2{innu`^r4$>O5cBU`I5rqXLDi{grPrJ_&CT+}jW zX@X#6Ytg8JXCWR2@dA2jW{Ykfh1j~F`e~(6O3mq5`{SYg}+?OofI&G(xg9oGdOX1*ORR z5T@ETvXm{@*vL}0V1t6e5DX(hy`HlLDUN~-(PNquPwylj70&3I!Ds_{cp7^0@H7bJ z;desF^AiRQ)=hEf?H2?uv>3`&KaeOPm4 zx`bTE$h5yV4Tz=WJVvIw8JR3C>%*NXYDj_I`6PxdExQ@{>RUh`FH6f_2HwjU9!twb zU4?XPJ_f|EWHYTAOi_J&z6C6fe>*5{y~1kA`dDI$YRdRjMXm~hdnKFORW=)@nlnCu zPHt8eqW01h0QW4xy+1zMX{DG(yaO;2@Ph7o{m%DVkFooBEYSfIA$`pLZ zGfY(|7>+KvOm$+IqTYX@d4)@PXhlIkFZ^R?zkv;777LfYGwN&*Q>@^A@B$?_*Nj&{ zmn~*>$p%V4WXmqviW=$gPuXVKvK^#)*|Ou!m<{Xa$hOn%MrO;_m#R2r^DkPC5b8@m z7!^H`Ddv+G@fXX{U8d`v&DJd@IXl`PhHf#bfuY-5Z-XTyXB$NJOjs7NnPPVKQgu^B zY_9BOil3Xx6hAZdPRud&ya~@>xsh#ZjBaW|wy87!Fm)!|RQ{SVh~kXcj@FqpJm@Qf zGh$Dg>oGp)QJ>3kRkZh4D3ODrN__g2!#{TRfoxX?#Y&$Q-a+yE?85VIgD{upgh`7G zc6KGZE62;lYKE?}@Rp19orPzFxm;}fS(wYkz}#W3%n7sDvkc) z>)7ckQgqg_QBMyQ1#68X4{=mN7beVEzS} zDC~}64TImydqDR=4BJ`EM=jhGHBc|?F1cLq7U8-{j_ZcH>&gySfi-az*r5DN>Z2^1 zxC#s{^?MKWh-x{yb#>j&*}B!l8reOfWOnk~0sAoA(v0LmltM@(cre=9Ki?W&tD4Jxh*tx zHKyYBpHa4Hx%HZ4>!k_bJM9~KX+pDXy&tdLY~nd19yVNTePTP{9Z zZbPp4pR7T7EXggmH(PFrkUg3eKYA4v6q8%-akgBH@NIT^2tJ4}BDY*#H&=N?2s!2Z z(@_-2a6`^0wC0u0aEsDBe{`z~z6JvM*XI_IHU~kN`wajMtG-4zh_R>(H z1&qUnY+y(sK%u%heIX!{b9b87<0I2~ozAlf`Jf==820!~0m}`~a;z)3Qu%*$bFg{D zI-WD?<|pgr75g&R8E)~J z3mYV!i#HW9XqjwL7cIe5%t&$@OvRn4lco~R)NPX@7bAr+d%~*Utv>{4d1jLz9YjEks zOx#HFZ&CRIQwgX40+YIrxHWzyE<1wgUA%FB#<107e3Pou*TT|wNIjCDhXYxGIq(Zn z4pgOd^aZjIu*QUMt*?pxv>RF5|Bm) zNwP>M;*KgrF?@B0DC!?1c@PKr0^|9L(!b+KOJJIOL*LbYB&lqreAPWi^7FB-6qp@1 ziL&tqai=5`#iu5vquog>U<^@~Z6W!p31qp>N0L7|j3_BM!55eZ7*pZvIei;-pzq1U zM4y2}J(R;W%C*}%()!k)(t~jDjvOTtWfIPf1*X129xD|mn>VsZX2lbdu>@1P>)&K; z!cda&p*u?^9vui})tbtreKXP;{TJSqRuJW<7?Phqhv@URk@t|vMBlNMWYXIc_w9Z9KGI8j07u>@?ZJSFzxhQ3~593KX5ZDFv~ZPO^;Lx;v#S@22#i1mdlWuw$y+z@&39WGueb0N7Mkzb!M@;j^(d2EBrFoBucmg4V`pJX2W zLEH;bq&x36$(X|^{iY{*>8j_tN+qJ#t4rQHn&~^ZAX&Inn`G|pCCb}6lpe5yblcq| zN^Kkyq2!B`?zEkhzW$6n-WgBnUu|TeW($%ZfGHk*Y6Qi0_7QPMv?PjKG}(NM8B$<+ z*CzP}Uy)2_9PSFtth!|FfNo*89__C4sZ-Mp137fWxDj6WVJ2#nvKl&(9Q43sy zd3YvSYlRzQ)TusNYJZZ<;=lDW(fjr0QY61+AIY@dMClQ}7DdX>1|<>>n?gDe*hCGRf>Qo3JDO5eeO1zMmU;o=n}IrtU%s;09z*yF|Kqf1~u}j+EXoi?j}ur`U%6Le^gUlh)&^M49uLWICQA3(vkI z`bB*`pu`jXBUYzq33#o5c4ea4|7#pk#{W(Be{V_j`M5t9m}_B_yW$s1fDss|5Ns_&~Z-pOeh8K#J-(daKAx*JqYDV=1XNvzX-2bDWR-$i@iDa|VVdDNY0W&3&&q3d)Rut9ShZOnv(z^Xl zBr~lKrEg$t5t(r{NM>~;ee2I9JDt{3JU#RlECrg;x>@KJ0m&S{0>&8tAae67KdtFQ&< zLPC{1_xnJy!MOlXew;&nwc#8do*L=$jhABCEi|c@1PiTarl3UH#kGN_ zu2*pnD)c%u8WskPI{=ws`xC(pVTZ;dE1~Rne*uKC52)#f5#o6JVwJW80t7TXHFDE7`9xSPsW z+6`hfJ7g5xPGje{hq38w^&bIdurr3jN(|ed2Hcr!(HLN}*j^)`7t1PzVKa^mI1b)y z_ELXXiD&o!1+aqMNj6uqm21LgBI|t=##XV*TR?p^Tj2^6*09iUQDjKJzgmRd*bvd zkdTh{g|xi>Z%~x*9kfe?Y>`_usg?e#3L17OTk$I531i2hm534SK@Axg$3|npB#vhT zRES5iA&bzd=djC$!`NK5Xc36KVcqd?NBF>AplLqb)C~Pq7;o~VW$<*`a0y#73;Yz;O-1&PvAZhBjQEm0^(Tf8%AWf8Fbvww)sO|>g)@=K zGJP?&ie)dY!$?%_5Q@%Jp59`L75bu@#cv`TgI>{#X7NgoYQw{~f44=9mG9MrweKdh zgS9FTZ~`t=ZS)CYRMW806{>fv1Ml^0Wx#D{#=V8`b2S=af3wpp5_oVHGV?s=9BG}v2VLO_guo^~U*a~MLv4Bl{3&V-*p)DY8WM9@n(3@F3_ARU){8m951^7hxK?6IN!J#!v^2G5!1u zdNWNYXkE9&bo2m>Ej8VtedIFJ_q#ycXsVhHkxizCMF2LNQfT+I&-B<6lKV{o&*12| z>1kyU&zYvv3BncAUaGIFrW3W`_J*l`2prupEm{lgp=lQ0MF_7=pFRN#<}T5qDV%H5 z1qu^5z8fSbax*^^h=&`{fj{MO;86u*F>SJ^*Vu3m)qUNnG0|;O*o#Er;GN zZcU=IFBL9u5A(WU}z1;#l`oF;AO`(3(C{P;DN3^Wa`EZ~?Ceg=BFCEe2D>yzVIXZDM{3 zXpdN(a(76qK`s82xNk7zFNkZ_K=O!`m<4+;q$Q@6sio}s zC!i;=L+~zKSk4}%=_rx4;>Zk5vQ-^Kv6>zC6p~liZml7Cm2F=TlId(k8+g~*9bvG3 zlU;TUo^P?o{)EUK_Se}U-es#$zqrp%hyn2d+pGi>vedC=FEk~`fwm(15g*J3pR+ z=ZaqdaXH6P^{(VP%mS9kRiq`-YA$*MtgPYI(IHb3_Y>`U)^YW=0o%Z7r@`CEZKbW* zW^Pm=1hIunc!?Y(b2H9EGKK3z^HC~SmG)sfxwiAc+s*mVz_f>(IRPSvxu>+pKf>Lo zE%z~QXE-E}bAOJ8v6I|yK5%r3yM@joq;VEH_dCO7^+JH>xN6H_>^xU*B}6WA>sCPI z5*Pd)B3HOxuK=!cp>#BPog489*bVNxA;4~NOMZafZLR}l>@GL4`_jOt5Wpe!^Kzzq- z4?yW=aaXE9@*`Ko4dH&`-uuGXXue+wh=lOR4*?6~PvBHm2VPT@CwfaxfH0&Uo%`L3J5o5r`L@plG);1;aJ@ay)# z(JbEU35cNQbe@d_J04k4B;oe6QBPKJg=J!e+3Lu?v!M!pIuHW(#)@ z1Dhu-7y^;`LJS>&FBI;cft5u<_rVZZBDmAcw^SH01-u=NwH0d@;V z$lqQe?JfN66QXEAbwIdG3zLIFa1At#BSJMgc{nQcrbCkxf|cf#lfsy`D1tQM(N@?z zBY3VxEa!xWv`9KH_)mbyMIoF{l`aV>w9T0;#?=8fMXXE5qS0dBN5H0ux2FJ`AwGTq zD=}h=t^l*d-tka~6-~56o-J-)4)5`zg)%l*^qB%|p7`}%fCb{*P9QE6yU}KPv6!zO zY%URp(h~9f4Qz#YlorD)#qCjuY_-^?EljTw4>v;o)``EtpdC5ub=3)&R>8 z8`BBLGx0JVFuo9v|AcT~iUX>G_*y*I4B(CU!2{vG6-4eY&mkZwvohzFYh z`y}=o1)ITAC=Jvhl7C@%50y>@f*3AsYYi)7q<(b379rgq0Jr0$r@w#~DW#o++X>Rq z)o?pWlBudDOH*hLh?45u1(+)RP4zxaDt8%Rx^&SOk}=X`TENbfdUu3EtTc8dti(yH zWnl4A&k}GnM>4fUWb>qNaMU5pmkQ5-zeUpi^}rTO-_rr~GAZFP6cVHgu>dQj&`SV` z(v~Dhu93QqgNL=!yR#_I_0q&C02`#k4D>cjMd=K2ixfr&hbhtp>e}0+A-e!}Nayg! zHA1SCd<&Ahq{ehQyjvl6<`|SdlArEN;D>3p} zIwGGXe?uqhv2yjD@E0#np}sjsE*J!CzWiMoNG_1elIcbAp?a{nSiVK8%cb(6axlG2 z-bX8l@_GKxB=4X9aAomCwBcZ=L+@5@74)f^_(`N#0ry zV6)tsrq8YN5jx>YmcJbj;&yr0dw?Bsj~W0w>;vD=tF)kZh&}?_oKScFRZQX|xSGCNF#qa6+C#+t8Ep^l(^7lO6A%cSg3-?%4+MUiS#;ZT1ArF!2 ztTJ#rQI*y~VUqfAE<~oND*pReAxd4m0K{o(9MoZ9d=SM@vtk@@Nz4>($&)_#qs7pX!A@D{66>B4HMdX?@hmZ_yqgScF+ zGZX47)KYZVn5eFw3~ZJ9paZO|QIr1!SgUsD5a&AeYdYLouhy##;zm_m58@`ZLw#7; zqQ>MjzydCO%Dzj8I)fav9l=|l>1aVPqvH;+&dXMJmd+IkT zMDDA}kKp}*+V~W}L$z%a5Fe@6EdY@iMR)O~ zXuGzX4<3c+_VcG{Kt8}9p}qV;{?h|U9_AM$LF5QOvKmB=@-Mf8c#N;yA0o&3#%bW4 z;Fp;Z-AO)OK_I92s&qnenxB~kku-k(Vkn&9pO*r5mTyxEv7F<3ZiM7{z9RmX8EdAv z!r)!xBWVwDiI1Xr?lONr1;Jn8MH<$x@&##$ca2|F8S3f$23pu$=Xd@N?>G3)R46z3 zhl!B9#doX;;$436T!4H0oO0mZ=f|9a=?DA^YOxRb)3ic-#Gj!y`j{7~l%DXvm_dBX z*FO&{8GHp=ay{qA(O&lj@B0S4mwfYQz+Ul@G*-Oj>A^deRnLw<@&g}S7a&47QWF7= z6MD=5HeLwp4G<|<{Xm=`Z0>JtLX0=C8G=9U7Gnf%I;_kTp3!CPETM6EV6lQvJa}=!8)|v8g*jp1 z#S2HNsm>AB7ez_T6_VeAI8PX~436dt9dAN%fiSKXz(S!a9o#MwLIS{BEWD*P+7jWH z+R$4n%%&EyOc?nZA_>A3YJkgy;oVULD}-qmps-S?IUc-3;lX#1TqP8uE7R4&TH3Fz z5vq-a$aX=co$@K694!=23x$S(mnQU%hNE-BYf?BbG^W$63wZnhk;}r@+d;e{c+;`! zRbk2on7%92qCM_C;ox83-4_~DxjYb76o<$|p(33uKN3dJ4*RiCSOxY(*q07RPlfX@ zAd(@3_k`(ZLict6&xOYvh%W>_72u`d842Pm!HtKbHv&uR;Y{Hqt@gjtXNz5ErimAyZG*xb@im<;%@x~@ z1aY4D9EZKad~szj#Iitak_E6(Y_6}h#2d6WPZaCYdH*WWD-R^sip%KADoLzOM_lW~ zUEe}sqqu%H;@l)wn*xQ+;#1?ir;-~KQpD=b)dMP$3gIURxR z6_rs?-zT2v4s5?TKM?*7iB|?e;jsAH7gmmlZ^}dAxcL2RfD_{KmI&gcc)t$x(!^Rl zfSnP`&>(kK+_nhdg1C4;)Gvzhv{|_%`jm#q6>(h$5YxrS)c>xFoqK_JLrkFdc~gAo z3EnMnEbSp~i%)5=z9Yu(2XA=@q;^Z`&JxFd%1UFZ3ZAq zeDpnd@5NNQmi!sI9h@CPvS?Kor5L+wXiu_`p_93LZra5;Dt&p_Cp~|@)!c* zMCn(W5hqE#SHk9GDU2qSDN<&8fGDZn01&52o#q3JmfC&*m?q7s0fp&O6>1tYq!kU} zC`KCb7d0?xa3HW*QbSsj#7aZg0*jNTet?zPQo~ko8!wej2XT(n^%JnUQXTxa4Z=Jr zmCl^!OT%gZyFmIQ8epOHir&U7k`xKpV#%FO9+pT6^c-lZRI4U<%cSzu4HKk3?%*w# zUf_>;h1Jp_x(Zq&ji-LJR*I)H=_Kir19@L3DLde3gY>vO^fpRf--EYFI`s_LRw?NU zc*#=DDFoi?Ux?W z8Q}q`eHug#O4DiBJ|yvU!FX6Q*MgO!(u9|gJSMfESdL5QX@_<~`uPolI4SKN1L7%Z z2yNw0OU)0!SekU8GxW|#EpYWAoR?11;nD?ZdR|ocMXBOFNM4fa90qn->P&Asu1G)8 zF8Z2u%NsV+rTY>Tu1lk6EWaWBN$aVb(ro;%7s4H>{SV;Xl{yrHm3z`wTEpCzCQ-wD zAXW7N@1fM6mc@^yGx;I%L<&d&@2OPqXL!hv9r3WJ?mTX!$l3@-%rzM}X<_6gtkIAwQ+luNb-eCYYWnCvHZ#v*b`ZMvRqHXcUf< z54QzxwtQBEUcCHuJ9wWXSEYlsxpJ!nxSb~-rr~$Ke2`Aa7s%iJ1S<>WE%c&nkvuaW z6c)?zvEVI{KhX)-Qn^Md)R)PVI>J$cT#;S~ESCq-q4o;7%4F!Rl>ZKb=|s7k8+fba z!W*EsTFy&j$Qn6{j%n7)NpvimB-g(KY@J-0PU68O?Un}* zgQGq2;=%xX<%+ey+b1`{O&)e=$7pgpAe-KUcS!c3HRxfv3iX^L^7=P0c2ur92iP&W zBP|k7%A;OE;gsw#62#MTyHx;b@(WsWoRPos26k4?Y!7fwoKmt2vL+(sU*%6DjPye5Ya2bM0EJPUu<6v&ye)tH z0lB>+&#wq$cjc4{Fnv!hPOGQ;a(h}CKafw-G3i6O-z`W!l6^9u_gGG#=R{9rYf;4c zRKB_m3K?>Fs>WyXz6T&am;a^lBk=xGUi$&6J}v z0p7}a+JN{@_PGhYEScF2h4*r|(!f5*U(sIYqg<{sBtOXwdLx!#Z9}gnxXeG1-f|#bfp~q^|6;Ik2&QQ99!BLD-vkPLGsU%t< zGD|5o1g2w^jdZLKr#!C;$=OPLHDK{d2?6SJ6dYlr=P336hNF4P6*`EWuVm31lLZQg z8*^cy@}~eRi6T-ca{q6D-O8dPAns8%sj#wF>9Pe1`;E$Y$`4D5dDJ=TT*n4@%;gq85ae6G}9_5Im`LdkK+K%HMRRby`_S^Iw{B zGZMTr$}?L1o>T6A4fXTNL#m?-N~=o{xu~qB{(ec}9pGJ7CejdlMcMHR*i~i!eCSVbyfO;yu}Af#yZb}NWX zQ%}2kDjjmLe%!Op4I%psqtx~6(09LDI zo*=+A>TDVZ*Q!0I0VJvG4#U_wb^KpYU$1&8AZ}1oJ3@VOnj78wYz zPkr$ey!~oHH(&?UtsS6nP`xl79uBD{I+QxBYSbx@sF}5Z9aWFg+WVMlrfaR^YAl_7 zpH$C;AhJ`cNHu+0-BT3cl3KqP6fUbtbU%1SZA6Q6GrB+D?LG zmO7Iru=nc8`yhT$YZr&3kLu);(EFr1XxS8O-gXMHj5Z&d173*vBelU$^FmrBgqd5? zX=%9m*-WU9G4Cx04`a=#%Ya3gqiLudXTCvJ#+y6R*cxe`+!MSB<|oSmCYooyMr4!B zzn+EOWOEE%H%u|_rlXH2bCL>ds<~l9s7ITV=>&F;`OsG&&NX|{k>)&e|0?jlz-$`^ zk%eaFTZk+&kJ$;4#b!6UgIHpYb_2G|yoF};1an?m$t^d}XpJ1LFh5!eD=W>(bhxz2 zJb}i#)#i7lp|{5T`$S-C&E@VuGRfSO)+p=E4SIvO!F+82z(#Y_UU=VRX51jT*_>)a z9=4hr%!R*X^MtjqnPOHtKyRCQb^sK%n`5g%GSw_oA@4Nzp^e`z^RG`Kx!YW4Ac%X+ zk2FZ`GcUObu;2WVE(#8qv%Us6XdXzfj}Mt!)57J5xy?I>95p}mf`?<~19a+e-2C_| zjGZv&D}ty`nY+@UbJ~1847@Zmdk5gG*;4`UoVgzzAD=gG?g^0#=C<+RT{Iu2x1pEK z?>S&s%q8iNv=qBZh()X(>7p zk`pYY3PF9MB~3q(u(WysY_g^L1BgUfYDWN@YB^pOlF^n3THQ~xOe~3zrdx!4;Kf+F zM}jxgQlBE5Wl;wq53!cHwC{+sJi+5HA>J}C8N4|bPkO*U*HZ5az&y(cx|*AB@uq@Y zXsK`#l8Y?cmmrdo!Ffw%0lv-WzGQb&Rd>%!}JA9CtAf`wA`mAb;;7L zE3hk;i|-+M)l%aCY+kbj((~|i%cF`gcHJ_A=7*b>TeMBOWjRQPu(vILG(fT5u{`_= zHt$;6(vs@FMW!3i2bN=Wu=~(bfli_xSw{Z`D~~PhT0kX^2t^yXJrFjDzryZnGYP{Bvsv}YxQwGK+Xy=~-Ow`;*08G*j(!-z0TANMq zFhz?nLoZ6JM8!H)YdQ$LXsv7y#4=4gtwLeCw#O49Gqly`fW>Hc+!4e~ttRbrW@%sd zgI=r_OLJqKW<3EgTPvZ!biB5U&gAB3Z$qIzSG(p1^#xi?FccPQ^Xb@UkyeJzkQQqz z>3(U6)-MmhQtcI8nJm+ew}hhvtpg1Z%e5EzVS0u36J7qT)cj~8ov2waB8XMm9AALd zTK5&;tCL} zh-}f076Wgq_Ba?IS!+mt?3AJ%ra54n_We;PY}b_az;lJ)!mBPVEdmVcVq@ z?guNowHvga*rTog2!*|xj{t0+R+lz0`?X&(fF00YPlM@$+Ml~%?2xu46X38m_$(BT zXcg#i`lzct)uzxigvL$u&bIMZMm;$p=E)kYt8K7UDxi@ zfOJE<`WjYlYD3gcKiWB#93GN z2R7RpOGg;-)}gfVn`7M>2AgxODYKD>dDg@9hi3Dw=V>5YVCCtWY@u~J-8(I^PNE)}UE*jrBC0V6C+dsR=B}x`b{c)>(VoU}e44dImvkvfiUp)Xmm%MG(Xm>uNfy z+-e=#5yq0OTWG70VlA=)BHOG3e?&;zt)uAZe~0yVx^_*qHllUGPV3PEFulvVTm`n< z`d4vad#np-L9o|)?i~E>vo5m$+ixvPdy)gzK6DFp(0YcpEr+bO%kXg6x@j%+j#$O9 z5IJgHwGMj6tcU5m?zr{AbAS`puUf&wN$X?UvYoPy?Et;g)&jJ7O|weJ5$+jlmzJ=3 z*7{^NtemrUrv3DJt3+o{7pw{$1zxn?r9aoWWbJB&kqde5^R%h0vm1nX*onfY?JA(AkvfCDQ8L{lK<(&$!*H)Ys z`TK08UqNKQZ6}=p9m2Uh_O*~01J+Cs!S;#H zBQM&PHi3srwh>ji3YB`qGjk-8PdBMX%fZ=w9ZAEhQKtH*M-L5O3Mm(iQe? zTO*3>j_rmIqP}Zedl%R}TP<3p-?ycw!q@}b66(GWZR5j1d}MpF6ULs{MwSBcsV#jW zh#9u;j)VBZ_Df-am$ssGP4>!G^m~ZBww?G0kvFygnlLkM1D3+WTU#%>)_G@ZNgX!J zmO_UJ?`>9^G(Om_(goK?Te%tF1=~H=Kz+2mR2N_&_PuoK9%`>{N4Q~j$20gFYyaao zOh?$K)&MrnK9lZ`#@jDHhC-x$XbgxG>xd0 zD(kuS5;UUBvnSJa`h0sSTAwYjhc*CMY;X1sK`gQNqcU4+KS2+4m)Vz5J4>*Srn{x( z_GNTby~5s`RtYQZTS~%MqWx+YD6F!-C=Z1-_9CqT*4hKVfa}g~(C+ zAESUBvqzK%cHF*!{t)VfJ&8_APuVT{UdDcxMus$d4?4s-VVLX_C`%1a@D@A5{zB5drbo|-M;@T`|)#vg}9bgy+58 zgWgPiu&-#3s6X1hMnmtDy#}4X1Uo|L&EjZB1sV=R9Da=eLLD4+nJ~vvs+Dj@nWs<~ z2H z=3uJh@(jch?TDh)#WcqQTF6g#Ecb!w8IIpt0E=-vq%xc77%>3~vmBS`mL}G*jcyp@ z9JgtSGuzQ|1wg!`ES-4Hajd4(`nirav_zff2UirMPt%~j-r>6y#0`#!L|EDEsMHuyZ*j;kA+psGOqT@74$DY@ z6vuh`>*{TeO0+uM?&#!!;CDEd{st`7@!|li>~!R(r@XrycN1Y{x1%^6KJ0OX{RHoO z9Z!3LxX-bJ{uXJ!<9SnH2OQs8Vfvus`a@Vb9|V!&0CJ|X2I=k zM=(8qzT;T79K^ehI9ku&a|F??$$iJfQn2#Cp`;;}hyNEx*B#eo_5Dq=)NfgS_TGcf z9$L1vq1n!sEwj|NGfOkG5@aZQ%MejenabV*0)h%M1QZ!A1ZBz+5M=${=l9onopaCo zoclbV=ehTc`@kZ6VS#sLQ6mnS&Aq>L~zxD(^E51_f9@y@5G5isX9b_D#l+>N^ zdGQImQO>|kFiq*NB)fW=+DXoFl<8@ z3uGL90VIgAZXBkA8BTN@;t+%T41^(!-e7Ry3_DHfFk{_wAQ6l(I`MLZaf70uNQT}H zV@DZ#shD$&A*VCnQH<>rbwx9ZM6hz4@e*x=Cm5eo_24AKjSAi|jDP73k7ay%47fPP zQOXM98FRPdekL$3y$278jJ2yEJjM9>A7~~s^mjl~7%96zQW+xJ*wYyDR{=<8#H8RB zWH3e+z*r_DL4-@mVnn_GcsAowD1{M&hVjB_68#<6vCT~x%6_~ zVmx1oi@wb;o&jlPY^VJ14&(7um~Lad?+;-+V+)0mrTc}^#TO|eZEBl%re>1N!d z9IuD5l|s#4hWkcv_ZgW~d+KAPo`On0V`&9&1B^>72nQMe3x>)NV-J1W^?>moJ?z7b z-!_aGW8hzV9UCd?&amhCzvWPBVV`3z{>GWwhKo zGMl%7b7F3!4QxNN`3Vqbri&i_T$l%_Tjt74UjojJSxb@Q0p=1O$U){~p_rLF^PUaF zgE^`M&Xc){o@+0rgo0pi=4({P^kM2L0`zC@qCGr-nVyST2QuBL-4(>_WWz%+Q?M4e zL(J8mLM4Q`ou0E$X3IAqVayl41U#I1c>`1qGw=99C4w1A+r&|(KjoCin19jp62+{q z0*Pk6vKF}G%)h9Yb%Hs08}O6N19avjhPjmim00HDw?X2VKYR<7c;;Uk7)xN*|9?`! zTzeKaPce5N$Az6{*0(|>iCJ(FR+5>{w9BM0Q-1`P%4A6~`3z5Kf(`inK@yCW-Zf3e~6`y8RrUNJ#*e1;I1&wC_%0=*L((C z1Jgc;30`A{y??`~)wVEtNzc^+i>OQGq`dgKlj50<_Y z_so-Z|9$xLVtLUX;LR$hD9DHPE;UGeS&sCW`msc`q4=}t?{v-$U@fIAE0DF1B99=} z^2-1Ov+mL^bBM)Q1Y8JfFO@JtS%19`62^Lsz8eW=h2DkcVb+Ch(2QU$nE`i%we~zn zBx}WA&^*f8^gFKT80(n~xQ${-X)KyGNx$E5)|e3F1gn1w$Vryz6$72^H`g|hodvBi}Yux@>wNY zpi;m}r|xkfD=-gM&a&#MxLL${ay=Xsvwr&@Y?iQAIAZJ^YX>DwrL32!$Xv$qeFQ7# zSryJ0yTJN33}Y8rzq4ShoMo88SOu%H7u+S*8x)sUv%aBNv4*uT8-UBKHxFa1mQ_q^ zK^<#XE3UnsRj~ysS6ENdt-H$7?!j0CYxzUW^BOCe9)?C%@(FlvVvX=2Y-Y`_f@TZr zEER07vzjQty1^3C3wx6lUjg_nR<9nKw^={6fV8q6dj)_yEIq|UZLA%X%e1pLZU*iy zYnu_|9&24LNC!(z5mF~hN@!rH_JxRXbkUdqhFOlZKa8-Neun8$R%8RnLzZVVY>u%qeg%A- zRpJHmh;@b*oe9=!w4+b56w%ORb~OE(PV9U0;AlU4Knc#7 zU2cRw7xpBb<#%O|Gy~_x4xy7k?(A;bxjfkZRCDxXFW3rz7u$z&SZ{W9C^UW8%V>f3 zWq@+RLLfPBd z7z<+$K7p}t_SicZJIs!zf=wh_O2vnx?9ZsldW;=Rn{X6+kk@4)fuVFfYokf{`B6~LdRHxV?DmkBKe?ggP z68mG?i<8-N1sF?VYbcaXWygF5cpCd)FKni>KNyB)275LIE}3i*{Uwns_Mb~Imdy^$ z1TKf2v;$+g?0NWrV{RV%%yV#ih8;lfbUr&ng0TYj2}(u^+2tL$l(XzZHQL$`-U7`DLaJ^D`o6=DL6ULUb_U`1@_2?09<6}&<70V?9yA{D%jd~ z;4ZP9e+O5|-a^4i6?+$zoU7R-|A5r6!@>Z+%pRmVUoHE(9Dq9ZiuW+HdNz;Z&nxVz zYN%XgzcT@N1H1VKF1m@mUWLnSW=A{)%@+2+I5e-brL=e4U zZuV9xqW7@>{SkBNV@HR8^s_HeK0Ux5_XA*%op27^5c?W6-XE~jKf;9#v*V~|I>O#t ziph_%e=5WkJ!Jnc9b}CCTrjBQDaHt&QY`71A zJ7>Bb#ymKCKLzpRG<8A6ixWZbgEyy!0h|vfDjxt}&L?*v^y7F_z~j#me+)nXr`ZA$ z$Z4U-F^IFF8#aSE56zg_AITgyPUbC;XpR#_;>S5`0p@aoV?GF#lN_Ho;9@vm z&^jN_`D_xx1kN!!!kozYiaK|vIJ2YxoaV&NU@VFAa0X+^oPU=9kiuC?pO~j|vY*5} z(>U{baee8WASZAc9QUWeWpZ3!2g%~hsRGI7t8_5aNa%u ze}x=h3dqlLe(i?8B97=Vj1_a7Q!t4V&O8e5&T*a#2Up7Z@-S4&I4*R|?mTDW4Uh|* zt$F}1a=xP6shpF37yc?ZEn6{miSy((aFv|XUBFdw>ZZX}bNo&LP{Sz-g4@fS%@i)z za?&q@)Nv}7!CyUR`Y9N@!uhfqxT~BiRK089tagCPHO?Yhj2k(^4osq9bux z+!bX|$>v7U4awnt)(kF}J4`dn?|MDblmtJ+vDZ zaVy^gSIk|$4S*7Eo+nh!akKveSIYg2?tB^du>wr#JojnZnajCLDLSm+`c=cq2^Zy z_eaVYI=Oovz)BZ4trNm-uJ0(g9&YdRAidm+zX5Qc`|vi#`nWSxmG0*{(pERXeU`e; zgWP2m&>Z5>^@-4XC`khh@$R@`~wS_nOOx8{R*@IPDy`nfc~>Z5Ji&Wu1ampb)1&|%!~2yk|DSW)^SH1B_+!K3@iS9C2ORo+%XG3wW%rV62dLcQwY&^4_2t zSrP9y+E9vlKi!0|g!d2al;?PFP_$jjvpxrvGF~hlhC0t1cLR5U_sZ`8T;%cVK+1V$ z%1J7COAcb}67LKx7nQv4yD`Bk-fB7vSIyf%S5(96uz_6WwbQB9THb~*0P1)*UBK1z zcDsPP!po&y?J6&I9JdwHHOfZXRXsA18^TS4{DeqM4ga09%I z9ta0{Z&15yi04a1rw6>=IZzqq#Zg^qgtvqZl~LYrw1qt6z2ynhW4v##Ky#euOTtII z{Rz;V;3ZL5ILRBKQ%O_2eMc}h%?qaubB0$$iWmP`TExBiwNzpC z<8Rvv6@Px$2AB@uGe3hckbiX-RD$?k2@nSJuTsWvh(DV$#Ss2I>Q;yHA5wlB#@~7# zW8wVy&TxB}-|`y9BKS3GXddCe`U2(|$)D#8n@9PPbXM#b-!}=kD87IRm1zDEM~ofk zpQO6t3BH`VG$;8HpFuN*&!S*9mLEhxemwsyZNdqBZW)y z+$H|k)DEiTFQQKGH9nVGKFxd$t=BF5ss(^w=a+thu^apg^m*$|zN!Q&xA?7b%2(_Lxx@F$#U$GJ8MFtq^IzQya+iN96679#;si(s|JFOeb@G?fFWtlc?rRw9 zA0`DGJ@f0NGK*dXt z|0`6y1*?|8k&oa53KD$i`H8I8!++Nbo0pHWMr`bOCor;7HZ; zP=OmIs9^#(Hn?!XKB_Ao7U;?$j1a_-zaxU5VgQH~yhlfzjtMd^fJ6yOj2Md+gg*n# z@CsdYion_g zl~h4BZBl81x2PbME;vT{Lxx~m8*rI|J+uR52^^E5nJsuo`9qH2D>~woEBJ|Cr#wL@ ztwd)8?>+@wzTg)L#tH;X%0uE8tRR zt4{DEo!P4w^lin=t_T*>J9bsD!V{(&1P-5pToZIt<+4%mYUtjC=g6a-SAYe?`B zRV0Q5lXMbxM9>}wW21sub3h&nB-CLX6Rdj()8m5IWFQlQTS2fnDcDU3@suE^9^ACR z{6CNx!P>t8a1?$|JM4a84E_AhLIuTTqA1ow zXrg+Lr_fUXp_lOV&)~d;nL8ZBHq5lz(!@|$5K{G<=LpSn>aPejUjtb|}VVYyYlV8AQlyJ2j zBwF|~RT7U2|Ct5vCxj(bT!|5yDWr-OuJ{pF;)LUuU?pDoH0_%S!h9Vx6NR1@T*_&o zD?PhO!o-CbOBSA>$)^a_TVN$s`0XqR(}YjZ){`OJPUW{u;U*byS;F<30$G@*E|?ID{QC$ph)OL2LMZin-{~_IbqU2 z7%LT?E5yvogyYl)Ixox_1-T%czYg$nVaigdR0x@6uz5-N`eAUDLLVOhs)UCrK&}=p zQ(_XAg~#bG)e6th+fgShBMML3xO;Z@<4uQ7>h!nd8lH40y)7_3S7<2smb z7M9!x*CLepz{+*uGk=4-C0xn|;I{C;?Xc1+jHbg-?Ls?s!0!rozYDkbgomgC(j{!6 zif6ZQfVT1;;o7$$>=XX*DKz_q8*anOfbiu+a1Vrxcc3yX{ECRySwSa0CD@qD1QP zxrtO002~nQxCG6EqTg1*io2+YGH(yjLfXeXMHznq?j_<;Qs^yOOFxdUsFd=4KT+Rx zIPw?Gr$i+{#7+YjD4Ip*vw}pO2K;`(qVW;{4v9XZpDI-3N*hC%=&KIE!$sCb;0}v^ zqe^~+=<#}3IU`c+A|-3BvB2;`pF`mD`u7=3NL`^RMGoX z{7V;Ipe!px6ht>NQ=~P4%M!gqz4B~PuLs=bi01qYW4WSFs6w76TJaRPd{O%*XcmZW z{eJ{6YN18-tY|5%Sw$kw+axM=2d-H}|HNxye**l5 zNJ*uEo1*WsFxD!nSr21(L~^R8wTay6H)bBud!nz&QHMxJJ-1F#FLh12 zMUVc1W{*fhy|Z4CGX?VZMf`m*)+ef7gRy>5cQmXFh@PW>Zct>SI^P3PBJCE#qH+3c zZA7$!GO$q*hul6C#U{bZn8-E@!f{d2>i|3wZJ;G@QY06^(Ud5X9;s>3B}$BDL~H4E zn4|bgC3vH26;*->| zjTVP&fTQE$$X$S+5GUkd?4;P|DcFn=zfP6CSaFyb!Z>mHm(WZQTb~C>6!&ez*eUVg zEs)dVpdJX5#OxqgNfwX33V4cm{YMa{ilZnxOc%%e1ujGEN~MoX@jR+{W{L0Z1<4lo zY{JZP#3yzDo+~c$z|8W*-{xX0Upz$LO%#Y%QU9n=oVf-nXT^mKj1`IF&O-B?IFv$; zQnBSBG|R-Fgn(QWFQezITpUkXPlb5Q3}KZxgfh2k@yGEnRwIs~?W|60mcdHB`0r+@ zToKRegYcTTObV4oap)6p)Fj?Ri$JsZ2U@IJ!~su%yDt7U4&<)5=51)+6aPSqPKWqc zI-cGsexLGyF7eeN0J_C{_ki?>f26-9)GId9Q+{6@N(Hb!@yr0Yelc?w00ZKQLm-3V z_bI>{65rkrl?UR5QJBPt_&d52qvBFJ5%N%6{6FBv#EULs^5f#S)4@%Mzjzxelj1vV zfKQ1XDO{crFQ%W$QPNC%fRjYj0^xqiH;+TpSrU2*V{Vc|ls+DiytM|V4@wqx;x4&M z?ojCGA*rW(<|!Hc32-mTQOdHsB^eJud?Y_oSKUuCDF){+X{UmIfFxlTaDkFFRUko< zA8A($mXtN)8bTy8BUC~q^C#dhOp=LO+1zl6*96F6NoqDOB|@@s5;l)WdhS9cQZlg; z@S~DI%HNMk-unWRkCN|oQ<9IyKu$}(Jr2`JlDFtLN|n4wAI+sn)>0LGX35xT;94Xf=-}_Vgi8l>Zb<$!z{*Vt`#*5EB)OD2-`(~@; zo-;J>NQ#W$+9b7+7;BgOhwyOjU5W2z0PacdIe>IXo>&EyPDvU)&|MOzW8k_aJLqNZ zk$hpqBzh&aRHnEuvFE{GpM>)=NWbLga=-^9H^+e+l#J5rG$e_nn!p3efDguoB`;8G zaYWKu2AiXj>tDgjLrL}_m>!c1e2yuNOCsr%*CR>SG&Cn9%V+_dlsHj+cS>@TV#R66 z)+&%0$)+55aFm{-I<%8CxEqt$FYOxy=PcF!3}Y_Rja0aHm45C7&4W_kK?vQYL){=A z(r>6(xN!JLwMkN!M?}l>DVd$Dk4*jiTaopmg&! zj0H*K={#SsG`1C&a!5K&fBiT_y6pp8U#Jv+>j|%n^wL7$!lj?msjI`%!dEdCAswK< zx^P6g<~w+glrE+p?x-}S9Gb_ZTjoI}O1gs!c(n9W3NDXJPf)UaLi(lS)GG`4m|tNYDHMl|*SQ<)TT_o%3KiS^8oEjHO6%q#Lh{^u~OU zH0gV;&`g)s4NJJUX@nRx4;e3K`H`WlloBAuTlC}15}!%k$V7WmbTIBbY1$k0m2(n zK6RaMN`Lwnrf*BPwSjAuroRU6j`Rs?-Ly&1egt8=G`SBp?@8A^4Pl40zX8+jlt$WM ztV_C&Ht%k!Dh*tZG@g!F+?V>%U!3TZYN>_RFWn`A%>k+632=i_e|oZpq-&^ZG%P(m z4VxoUkI!LqR60D2OL-){l@6N|(j)&tI4PY^jlU`B4$9o7rOU{)qih4U#hqjuGhlkZ zEax7KIm>dl0_P&LCqU>b`|Sj9Zn8O_fIBD)ptQ_gc7^IT9hca1~mB>Scln#D41I~<*pjZp+xDqEm{%`#b)0>W~cWjSya zvSMlrT$0^<4}eP9l9w=6C3B(g>S|<<(N_(ZWtY;SQY-840I8F8Qa!m|=JXKU71=A@ z@OM=<_8H*UWM`>H)+md;57SMu2X{f5Wfm70YmvP|6TBhwUjW=q*_*3?yCpmM5>#%> z;;8o9Dr@KBhTM_uEr#1RS;I#l_heV~u-PFSVgb-8tE3FGOV-~6K(}l$b&q>w@6Up; zSC)7XD)(heDRu6X&CrpYe%U5E-!mZ7{0QNo%!!hbA(=a6&<|vH+Q1FV`mC7Qi0rvR zXpYL}NFjVE6Xj!`W3tu3@IEfvTaB?tvM2q(P00MB0GO1$L?@4?WUDE&nU)n!!RCxC zEdgVWa-RtJbCSDKKDJ-(?FeJe@+b-k%wfB@4lNB%dlg|O*Ex-5;Cg>wyPAj{wTwDQT0dlwN&?e zA@Z1A&NhwowX+)mtqTi5viQwqAJR=OGRjxN+cy9YR;(-ocS!L$Epj1> zTskfusu=wqZo?FI%4owCwUxjfQ8ZH^7^z5Gh_R!J`BrE~E4Iks;kaTkrK=|tfplym zR^b~2l{m%ZJ5Y&N?9}6TIHmY%1l(zbw02NRdq)@M6W!Ut)qKit^`xyQHYAgRoL@ zrU0Z$fmIC;m|_jZD76Z|V!-PZ11%8ND`a8-t|(rkAo!|cDZL$yie&Q8q%aL&tXZM# z#{_RE-lxjKO@#-ARJRm+wn2DXvH1c>tKxM^ckU?m&_mm!aPt7^Rm7^{@4h038VG%g zMjN<(#k(s2A5awj36(*`wv%u>q);z}@PXn{2D}d|wo*9qP{IEYV`GW~hkzSbxKZ2q zk)ng5!wJQBJA{*pg>NVh;EY1i1DlS@b4k#2Qtqc9(M73^htO5|9~Hdal$UBi z4k+7#Kn^OMN72h0@{5w`CxQmA=%=icqG~6LM6! zwetN6H38(jKwMsQcp2X`Ry*?;*~E^>XoJ(JP2XB($N`Q zhO(Sey-ekr8{o2(LqEV+wz97o#&VQD&<)8|Zlc^GUuoP8n+3|xDREz+F=ssZP|W{A?pGtV!AO0?2ixz8=Dx%KBrN*)3%? z6)y=g`jx&6_#0H_u^=2$&In=pf%3v2$gnas9Pkn4$r+GQ zCF^TU;-OM(hUOz>BpvOZQ2tSbtDRJ?-3ZguO0UPj%_!Srq2j38vKlxiRo=%iwqLdO z9ROTZPtm~;S5e8EVbX;}#d)%xT zRW>bov8uj7z~fZ=V&Ne{wUR1PiK>BluyRVZoem$LRt?FanWP$g9V#iR#}`4Es*2wT z%`{abmC@2w?q>nWP~D@>NT$lm87f(-cn-$0Rpv$rb5!0`F3M9$LSf~Ms-PcSzRE}m zc!8?+2mpnuv1ka3RNM;qD^@M0hGB`y5&|ows==2q`7+g$`QXm0{K)D-jqY7Nwt}3mCY(oe|W#HI!qDZ4OQmf5Z+Xs*bURSRA19ha$Cjz z7%Hu*ZS>>ZQOT)k)}|^B#aO#)p+Ah>Qwivy?N9~XgRoO|_&9`Js``ZxcB{~?!sD%K z`Vb!Ot2WT;)~CAv7-lx0QkTHyplbdZ0ESe;Q2-vO+&e&qRe>`Y8&$2Rj>AJ$9>u$3 zswN|5llGUdYppv4VM=xcny6ZByH1)dYK{C`1 zvtct+t-6GHW~nPb0GF-)f>P2Pbub+V%vJZR!R4v{7Q@3Cwf;?5$yY!90~{5qFZ>JP zS#=CmIf~T1RFW-Lzd#MV67@3r!AsQvpMWb<-=Ylqym~DgRikQ?e#(GcELZ&O3_wpyBn>9(qm@iB=z>b^XTwW-;Z z=d`O&#ly;7^;iOM_tgJ1LZw6f0lgNT>Wh^ScB_+UN9a-a(r28#>Wmu@-d7u4;jd5q zEv+^K>YG&f98^EC3u8m-m#Dfmtd95>Rz}ntz5zF?{+`y5hw9%{5RR$WiD2`Q`WI>u zPN=8%ftys9F9w-X^XL{#tDER3){OcZz4rSxkJC{CXU)Q5sJLi+--U{srn3>`fM)b# zOyZ#CBWm)vYdWYW<)QhD8aZB?oz$lG))<-4^wF%60q(2GISt~cdEOI3e+}~$Z~>bC z4FVphS@-~eAdPk##tv!HXb}j}d_l#4P|a?tPKIfw_u?*vYn%e%C_=OTGtBIW#z6UP zq~^sX&^)Gj>qiKqG%r01K(ywWb{IRZ*|!IP6PlCMdW+F~Kz~&tR?|8O%{Wahb$;SC zxi_JbpmBQ+fJDuqIfw3%2 zEQQiJnul&6xte)vFta?(dz2rY(L`9_Jzt~R3}J!hNHJ6jH9RWOoYl;y__IiJWd(#K z8sQT#eNHpA5TsP|PassvG>b38%6ZN9+i-MI!=;e8TqB@*WQAs!g7r#`?}va_X|z=J ztJd7w3C$YKPv=1{Yo=%ks?$tzFo}ANn;NseqDiHK_f<_Z)jS$B({xhinkJpfVJ({b zH=%i5^XCl+Z)h|luyRvlehr$pG-K3JxvjZ$1vXnX3(COV(JV6q(5AWi2By@m>7df; zT}=Qj>Gw1*^5LjM^RWwrofCv330=!rA`?pZJuQAucN}uK* zDh>2&qG=Bp(0omg;-JR59%DnA7ic$ppqWoca)vdzbP#Mr<1h@ssHT*H*@v38`@oH9 zzUTyQTw~abu}2#2AcPZ|Z+?StQuDwMnp2w8C79B*hC@r&jOM@3q2j20fzm)H?XSyW z+C{tP|Ep=*x(xuhX`lZJ(>I*H%#kn4q2P0xnUzgu<9pS}mO? zI;|a|us%uqt`1|#+V)ClrfB!l%bco}ut3tZTWI^t)Moq&(^=X?6>!;FEgi4S(f+&* zBv?U^ia724b7z+KYTb;E6? zc5NDj)!NY2uu`LaGZWlpZ8Rl!_1aq$a$M1FqL}@v)<&C6llG-+Fx{*@)B}|kZ3~^q zx~X*-hp}7QQd)O!YaOXI)uz3&4_v!;u>@1Ps||PuT&MQYkGS?O?fX9P*R5Uk3as4M zPTU2cPx~bm|N6DF??Giqn@7de2imrC;D)sx6r()U)>85_rY-S?a9sORJ#drSR!RV- zwDKv;WmIGqEWyTejC=jh?krGqhVhv8I=`8XV< z6ED6F5r2aOIJi*FIMCr!`a}0Y4nfuM5aRIlC$Jgn@EuiE!W{DGUPn0iQyPE7p^?_e zNQd94qY~w?>phTYhmVg#^SHyj1~`gwP`?SAu@1dS(2R5Npw7W*hX$&&r8s0i4q>{( zuJh2$a(LDaj&dCuXr;|}@IMdDvkns4ok|?m&9k$pocF$oQ zm0`LZwj^S#+u?WGoq8Ppp{{J7!#axc`W^BpsvK}|J_x`AhZD6R!wzq&Aslg-+6R>} zhxaJt7Ido8RFzpcZC4@5$eYu##e%%-y#d6l2qYA5w&g~1Rxa-#a z0V^K5Zy!O^Q}?m~oVQNm1I|Y`6%I{bT>~BB_tUxg0N}6V^nwe}xq3h)P`Ahv!XVuX z`@kL2RZ@5tqFY06YN&3`0&s_QwG{9~=#nxaJfcgdW$mbLn;ce-=_;tO6s6lGgfLoH zN=1a@x^Jk6enRJ44RTVqi;hCZ=swvBE>0KxF}Qf$NFX#5bcg6gIIWxeKUhi9T`j{T zl68~xlBDXEJ_VAdD_@FhNY@3@iJlDI_8%e4)J0NGnWf91VpXjrNqtl@Ix=o8<`mAo#T&NW3cF?OV7(bxs>VFy$ASt-NrQl zT+r>Ji@vDir-GF0YOi2s6*?6i5UAAM$p%-Yn=%1VtrOBdR;#O?3uASxSrb z%2iz_HQO3=oaZriP4`wQ#u|0}!w@#Vtm}OhQ)vIqyLI0faJ4--+OFT(_Fq zGmmtNcVTlvm+}TCKdFoO3o28(KdJsQty@fi;Ee813gjL2izx5kuV1Ujn6v)z$1pP& zeWnk{0sXfWB^=bxXMuCq8!7$p)PHde#7qA^HA}tquQmbhqv!nsO<#Q?eGluWU;6`8 z{Plm3l>q%3dP0KqYvSN9Sbsej)?qAKf1UbAC-l$E11?staf3>{zIz!|67=tlz(bmvZN^iR>-k*#Nc3NA;VPw`T&zVBD4_VYei8ML+Vo#hweYUqdmO@h`sF`Br9;2|d06SxFA9X| zE`1g~gWY;z4@j^6>PK+fuU9w%KB#}O81Nx|?HrH?`sh~xAJ)$a1#U#In}bP=>I>*p z=a_!=%NU!`*F}R&>3eDAo7M~IBiR}K`Cp*vXkckz)5*|96`uVD4_ZH6469bc^Z~NAiRVH546ix>9%$G{&qT1{E6S1& z89wpGScoC2l!+H%Sc-(O0 zTd15cyk3AwoHTqxF;R@ci9*dd!#pk~k!ZM1JIQIo?JQ^}8Iu2oO0vO3<(m|P`6T9& zYB)FvK$>AQrK=f+>;?$44Tr?QW&j!t%y*&EXz-!-#T~=!vzT?8A&fHp zc0=!X@P60uAPp+_4Bt|Tw8PL&;bf;FjZ&{JL;QbG={CGY75N@Rv;e|h!`O>3cHeMA z56wQq%!^RzH~4IVl>x)k6lV<@-XfJDLlIRc9~jt~7#lV;+=7)6!_Kz>7&X*WcKy)s zODyE0zK?mj886NQIbi&T7S4mlL^_t~ZoEKGfrqhyaxPC}G9>_B#v{4F zc^lX6g)txFNm@~SjfM1wIQ@*@)8ze)g%s%o7=6-!3p937t1rlSs0cQLjRHzk4jES@ zLKtE^OGk%7jr8l+GcKd*Pn1#V0bI0k zO$}6z8`si7jT6R7I^=iKs4fMGF+NR?RIE|B94c|fy_BKE8{?OPOE8u$z^oIE@j3`k z88;*WaN5YN03gZe8v{ql#(iI7E-A+N0+3YW6rI{hGyby&@N{EEG;kTl-Bd)#G@kh$ z#T`^p zHMYG4w?)Q;{{c{Jyz2+ICC0mSI`f<{WG{rJ#sW5MmKj~C(|g{SvjN-%<2NDDyl5=F z4b5_6GTp2SV<8psE*Y0h!cnD>|1yMC#*%eVsW#rCSn9H|f{Hn{#!Cu#uQMi7&Q)*x zl!B-$#w4m%Ts3a|6T$}LYHw&>Gb*>@q8p9#Ddlc5K1TkUjcG@~wHU`KJ-%VwM1Pm+ zrt!mv(7a{z{SoB0@e7J4T8&=*;O-cojRk2l775^}-MEST-8ByG0sNk^b}wvp7~i0i zIi1GP`M~uUJt(K_HL8N4dEfY5C`g}i6gJ&WzaD_5hiL)T z#63-kRQvTZJ--gb+f?}zRD4Y9sKM-OGE&6pXF3oB;%_RWL$(2?C7YocX!_-ISP3#k zQ8_c%^e*iPhfE=%&7^>^pF~jVW!oT&V`$*=s`Jb63hY@Ve+a1Ibu>#nj2|q z-3aceNtg}pnCSqek5Q&Dx;@dRI7(EGo6LVe<%DU^7FaoH`k3d;+&| zriOi(OT0;H0WQJx5k>HcrXv*8oHG4W0F~1w9z7aKrU5$1m2BFx5>`@7JTYvhn;L2H z$S^sz!DgoE1%J5BGQGSM!feyA43HetG_4G|rZ_qbm1laq5x6rZ?IxHmFg51@S7<7H z3Yuq4O&Nd}nS`e>mtvEP7jPveOF2lX$xi89ndwtnd(NA#P{et`RD25LqUrJ5uu^X7 zcY)1H(yuiz$#6|Ldk=Dx%*oU0Q(KbJL_h z1}nErPtq=W+qCp7NUKRn&&wUt+>fByW-4+8*KXQN=kD*C78n7zXR@t<+ip_^ohRxs zEs#K^*Yv~35Z*WOL{RB7NuB}MZ?d$*?SRR1A2bI|FVW$hA(QZFa1Tr$5MbE!*y|9E zn0E1i8#Oso^7GJiUIv?ErX{fuPME?~P?c6{F3+QSf}+e1jsL z6XqzYiJvqlQ)NBIY@uv0)_nYRXvUc%pMgre`5!7wB$zin4bzF{6HXXAWwt6IJZ(18 zxu+!a1hoN^&2k@@PB915O-?swUIEE4&-DPwG_R(;ILjPB)%tAn_NSnkV}A4#+~%6w zr~sB{&iof+XUuNZ5Ehz;gW>P2dF2_HE;8fm2)qGi8zuZD=5X3f&zZmV2B6d&+7D7@ zUPTGjdGov9K;?qjfemueJS!2xa&smHmzCzXS3-6n zg-77M!@S@KjCGoQDe&wu|62-SuQ`Km)_wC6tq}H^%gIr{c^@?w2Fybzzzv#xY1bYy zcT9tOVBWA5WYlb@vwjcFnZ%8myE{O}%_X!KKQae7ftxV*Wy0U2`OGdDn=)S;f^gb= zn*#Y6^Ej>Ej+T<|G3I3X^Gk3pmKj%EpR2_}Kb)K878OhnSQb%(tmTu0gtccxn$r1EFV$TA<(kY1%M#SN>`9z%SSmF zJ7iglyF z#$znnQnMSv;}$C|RwpcLX>UAfiE@F57|YdB7>l*^WMWEjmUQY0C0Z8k!PqHWCWNOg z8T|kxS&FvH`MriEDtVU}fr_V8Rw zc^iazmR34~aK>_oYHRtHJyee@u>7?aZVN4gOpKki{BRF|BFn#2%`Ud+0>PD7qVsVn z=PY42AuP3&P#ST;Vt)zTMav>e{K_q(lep*#i~kgCUb4KVfl8(20zE`kmf?L6R$Epc zg|QmT3IhO_En!{&)LQP*qFQJ9#)Ro!wS+H#%?3;F`@mhZG-X4x(c(wpWRs@zixRd6sB)jmVb${+m_Eu;GxxW(-SIpEU^@dwOO=lpwe!6gK7|WEuK{W zyk}{r;H1N{={^9Rmdy14bXg|0V65BH-3rYf%bLaD`Ya#sz?AwenY14bSYF+Qc@A2F z=U{Be;<5#%A6TMS0WfT_Qm`;$8E=Ac)RII$>O;#b%K#s<)b~O-Zb{CB%9JJY0ff_* zPbmhQv9KsE1Q-XAM1Ct;d<>)Z0#SRbQ)|7vtdDwd6I!J_dh`Iwuto1Rl z5@}5ggw3PY-|4&0W7aY$gi%%%J%iEKFU|vS-1;f4>?f@I`Iy;B>vj`JjCCVb>tn6C z9|0a`#oyh-R$y%sLzrOAqJ<^VTJatnowDxHV(hea%d;?+Wc{N9#*(d`S3y#&Ptd!W zYJHJ1sSIoO@0fL_HJ<@tmUYb=5N2CFsDqPZO``BF*E)xep5$5Qje$F3Wfp-6)VwR%$pq{#X(16;B7b2m(>#QMf=aObQIhcUBKt7{nGWmerwz@4}D zmO*&I`V@VfdC~ed#op!ChCMJ{VO5m@cggx6?Rb^ehkw9Wm38@5kZSAn?;thS(-Xj5 zww5o2O0D&3GXQngWy>L~wAKaD406M|eF20wt?{(q-m=D>0sOXgKG|%uE_ei$cI%}dp>o$c zO^wZa)}P;ou*3St_t5OLrqY|*Wv#Mfy4_YcIttQbZB*j=daWE8$bGBtB;bA4M5=@J zTNTd&H((vF0vWVMPy=DedX6%i2i8;bVQknsMs?^BYdTd&My&^^9QM$)F6?B7}wyr!4V>4C-9d2>7U2}s6C!3k74*PBE zC_Q$zNkss-*u<2sy4se=aSPmRTn)w!*fvlganRQ63!%F$Arzd4?VDQ|^R(S4hfOcr z9Qs(q+xEyAoR2M$k^^5Gms-OCHb1IW2HHC5xJQs}ntGAJHUs_jnM1Z&buboUySN%E zp|%fFz=heIT5+?&ZL3o-!NazlAs`X98R~N#vAI*+8fiP$4!}{{X{z!cvwcs?Q)TK{ZtJB~_Jl3;Cdf(KU*k}TvAvuIl~|iVj|s-v_MF66yp2nXRe~*>cGyIl zhz_%zvVHL%=5pHh4{ex9w!$Akl5M+|z-@}{Zz{K^+BQ+>kY?jj$e(VzMWITD?bl_n zl4;u?j&ci|fsJ((T%m0Z z^?{0QPt$5zV%zct;OA^lQo2)WOQ+&dna%4j0M6SCpMbkyb6N>w7j5U}f-AS}lLJs; z`;AWTU$U)!5o49MHJ^a1vhAQkJ0XQ+15aPnOa*Ky(@LLH$KB8>TSXQ z|JT!Pg`2=#wF&6cv<92)d2rWk!Bg&iAa`t=DII9D%?pL;b{mV1?ccS%pA5}=wqaVt zJ8akKcki^-QkA32mP^rZx9uP$KRvcD8==x`TTWk0-?x3lft5a64OOZ7ZO`5XH(*P@ z0F^IboMl=k=t$m5w{c*w0ad6KlV*5t?!KU#RsKZ{J1xbb>vR9;rmTE4{F%?1SF| zciNutKWHY|Jy&Ba*&g))xD@;S6!=TE&vk@mn!VsTjHTOOH~`Zb_LCVH%e3E%1ynmMw3kyW`mCKtKU|Uh zPwEO4+vk1^%@TVvHAK(ZU#7xYseRQ5=2>QU`~oWH?F*@dalwA^2FOMG8hW71?PnFh zRoDY)OTJ{kLQ7tyeVqrmDtps7W?gNc8G_9k`yl-rz{~apl(E;^C+K0Qvlq}c)Y}v3 z^}S+mFM-Xg_QO;ZZLmKx3e(r@Z&CQ#XfKX|W|O`CC{&v5f31W{i~XG_kn8sI1@Lgg z{vy?MZrW=g$a(?_9l&;A(2 zm-@X&1!qk}y?_E#c+>$T5NdVJsRLwRwZJ(Ri;{r2c>xaa}< zY-$7y+HF)lAF|J<%E<%!*iLZ6_N`|hXVeabG#0GYPO)I&I9PooZi|;mUII+BGSjlmGR@M; z^zOa)MaoRm%7&>~rrFLMARt3P5ZQYV87dnTP=?A@h71v8$PiG5C`0(Y&-eA~j}GTK z=Y7ue`P|RvdCqw5m1#+FfgAJ94#?b@lZQb(m@iSW{}i*}MNGnzX+ck<7xOhrwoWtG ztAO)njz>e~4AXQ2gFZ|FbpU*sezX<%F$X^d=g<6}zAzZTtiA&-kog&v%7T~*E6gRB z`GCIG9Kw9|LvW$Y*MElFFyxJvZPznHfe^+Y}~lJl;6w z#(zN0G27Fia-Qi{iAh{w4y*t!jpyDVlbN-PTwcV zVIHKVIhXnUcbH2abND!97n$EY1>h3%BRZv*&$M|9S6jf$dJPjSWI9vP_cHSeo z4?hAaV(L~xvzWP+W?jO3g?6=4X3PM{Rp$5#n7+o0r#{zp<}7V|Wz3H$N-t-YQ_Nn$ zQlm6_jN) zFrWPcv%bZgrZ>EinMh5LCZ^+2;F_8H$^d9#YL|oDX1d5gTA3_b&+afe6a=?1_bvdS zo%!Mu4Blm?(_A{350=40CvzF?YF*6lZo@+l)Ba0n_A*EGJhtU!_2}Rurk8jp9nI_{L2c)#+b1)6D*x7<|f{rnPm3IS_>F zn`LgGGlI6P+tDC)EDu`2j;2Y7d4?WT;#ne_>k zI$c=$ivYN?_ER0~BrB1EFE^I8H5|FK^8SO&gEgB3z$wmc)HZKgEv46Bl2XdhMseT=@W(1if_v4*Mi@6WOc2Oxm;vKm|$I`@Lf)`m=Pr}$GR{8{t<+Jz{n-;L%q^f2itMwbmF0+E^`wv%GU*=)3 zh*dyU>0;K|SpZ5{=2ZZcvRr8gy3X=E2M=Ye6Gxy@&iZK)1}j*>)QhZSP2YvAilwIF zLp4iu5nK(ciJplYtl?K+>?UiLlGj?+kPciO%aaOx^{fOwCegs!atz*Yv0`q*bR(;B z6;zs7pHpF}ne_#AKU!E@7eeJWYqk@(R+g9v4|iC~IZ$b1%^U>R&g$L`?k?+gKS&45 zoXU%xtWgRUx>#3uxXf-=>#yMMv05nh?qNwA;HZ~%i<+K&EXljz`dLoY)w|Ei?FD>* z)$R#0$eMW{HiuX`a`b@J`WeVW)_=6%4zt{BVRMA_;RxWPtR_l@##rS6u=$9!hRTxT ztYBKK9AjHIv3JqhbDSMSbs~HA2xXBD?0Ma=>Btthf;++f{bi^)v0rKj=gfZfIJ~>C z|E8;TWxuC@=1F#s6a2Zcmr%mt&NibM(}UeZ2hUEie=tDBlYNpNMKAU%$Kd@m`$KBk zd9$;tfjh%~>;Kj{O34E#ukp5lrbU`zJnRN$i_(z$LS1euXTB?M_XlRQ3%@G|#b(l)s;6Z=p5o z0{gr9@SesVtAZ?@y@+Zo8SGrDKxVS*!ZD>R_67Q+v)TDS!FvvS-a2r(>@``?%ws>M z4CNyGc}u`Av5#AT#Y1v;8o#7;Vl$rrQp+(1g$ zIew6pvh!$ySK0i0s9a;u-vxiy+0Sf+N*SB&2w6G%?o$j_up6oPP{}?-H?oR-<_e}% z%?`H$sbS|*&UJ(R2@_Usvae>sbS*oFa_u^Hpf6~2~r8`uL>pSZ;q(Tm>5zG4AK zP3&*zoIo>sHN_Jx?B3PTyv`m-BKkRkZuV0u7T;q(R}7UNwrLwwdfCC081=D#KM&1*_7@Czzt7&%0d9cp z`35ux+21B&5<~1r+BYAt@6oS9K4e>nF*wY=Ovh42*lqOPfl;L?$*q^2X zFwS;kK=zo;83Ol&oleoy1iK^|9wyoIRk*Mz_HHKtrrD(vn9@^r%@)|4VXxf*W3%jI zjo@rKRg}uwar!9gI?lOFHF0~6qaBPnaE?)P){&D$(aZ^s+7E+HoKD(IojDKZV9P74+E130{KaDkj8sssmdoTz{j%*m#9LI~%XUf@DGZ+r(5 z#_4FlrG#@*D6o#;xUB;h$x&RyB%(O4^aB^o$@~T+hO_Dg0Ae|3kHAVC=g(6x9nYD3 zjKKuXH@4R9^{$gRpRI;UGUp93;3=E|I!Ths`IG|ra~xd+aOXM8)?%I) zIOl2KOyjsxqa&RY%Y`h1bBaRZOwQ|nfMjt(+F&}HQ}#W$9L_;Xt8+Onv{>bF7%m_e zIpcCzxx_iP9**)kXXuD;0Y@nTSIGIh1+vSWzbGlZ!nsV9y&_Hja0aO% zTFPns0FJJ5LTh028fQuX?mB0Pjv$nA=JjK+ob!MQD;1oLE#N9SyQ1KziW5X>bv37v zcJvxfEA5*%IDgYGW8CD_G{So=Cu$P1I*ui!SM?lTH~cklr1VRuw>YnT1g?=IrCMGS z=NeVonmK1_w`k!kSr6_u$DiKYR?ctRpmK*3P3J1xI5Nst+Bq&1@Z9CR;RMpb30Vu$ z$$5DVRJu6pK8ERT&S?p7_c%94!1Zv3XbAd?*NEUZj%?!N%QG-us32A^^^(mZE4h5v%ga@JC%#+DmPzqn+_js0JB zglkDFkv%uu1;l}Si#{qx?p6Wja)O((9kX`g-l2TcnY)8_Cl_wua>!h{Qab;6l6yHA zb8+KZ9)Qf9dz$W`2luZoaHqI$Q(EoGb)*>Di(5Mda+(rRyRJXK%MaNnW5%7^=f zJ7m6G7A;nO+^27W_;c4$Zz+K5`5gd(+$B`}3*!1wS{=+i5d&NZ_a^O|q1+R%V=iIb ztc4)q+;ZACBe>t%0~g6Piv%Ew>qcesXs$pHKn!;)rCzaIOUfAHxIO1U;<^14q9$;C zJK;8w8}bUsS#HxM3?^~aNx&s@%dDW8!hP-;kW}vFD{yp<`x&Lx=eYq3;Qa!(oc7H$ z?gytp(z)>$abX$UntlK>xqA$_^I2SY#T&=HISrdR+%5A#a=D%J;V6%L|0P(t$bE}8 z(@WfS>6k=5*RLFa0`3>|uorTl*$KCoxi%u0zQR4=4?q$3i@D&6xks#FrGz{198^lV zQxptcKIW%u@`&@y$ z$+aoRTxz-R?FFEYTSA9->bZNIVY-2vN5z#}+^tj$Z{)s6&66f>995;8xufNnd<(aR zmc!fJ<@AF9t=!)zk-o#VrQE)ayZ$`@+PRIiAl>DLP#dCy>q1X!CwGR91axsf83gI( z8fihg$F-zrw1>NiE~S_I%NCG6Zaftt`?=OsI=;_!bOK<2+eX3jAUCNWfFbVESHV5t zR*1ko+?0K>Ft@rn!HFgL}$dM``s8_j7m5WtQ9O1x;Jt&uK7b$Ma{w%5mN= zR7tewIeiTk2VMt7a*n(J!&oOs!k&N=h8P)W#zH}_e{TzU7YQGAm3=~fUo z-kw3o+3E3`PfTgG zFK>YA<$k<$+C}|&8x8{(z-y%PejxAHivR@iEQt%|?V+O*A-pxTtA+A*8z2kg{k{hz zoHzGAj79LuX@Zfw9NI;rc(wF>nP^@IrPVRKMMF@D<;785DvmeZ3PhJoh1} z6!7d!;0k#aO>lde_Z=M_y23MKgDc|2yaeyXybaWFD&f6BR!VtB5mc`7gw)Hr#_L=N zmFv6#s#%rs>d%8K=Z#YDtb(_LYF3rJ_xj+WidWYLTs7}X9VSu3bIt+a25)0F25<5l z=>4nZt)R5Jj(2u1NImZ`?JEsD#$N#3;!V52W+N|1g==r(eM4z=GfzW{RSVCV7XRD4 zA3|ZQm8V<{%{x4wS7D`%*S8N`JFoH=$nNqMd<3q8S4RPPC(n}>t1ezCJyPAgaRIn{ zyeUc!dUyfUBkJWjQ~c7$yR#RL`gxmngS*d5)qxw}-FpElgS;uKTn_R06huAXEvLZc zAup3&r(s?s<*6gQsh>bbc{{W)J;r;V(&|UNBXneCoX4k%^<&;IlvY3CCDKbd!4qBw zH_3~p7;}o3whR8Ic|Y6%?kUemY4r?m>pb9Qc_J#O*z$M%3l%&5UV811^XDc&X3u}$ z9RLS@&@Nn{F$Jso>H$sg%}%#F``6NB#j z-;06s;5R(N;3U<~#{ZJmkZ}HPdT%56M;G84BKhyq z%N)fIdju|;|0>0bG5l3)Kw|kZUjY!uf7}GO@%;Qe_)FmbR|?aKd^&2zzg1_M? zlfUp;sATb3)cDKhud>2tl*9K}1X(WsDW!9H{1HdY>>|JVYiM5LuTaBEKHqmW92M|i zqpYBipO*^wWxj}l{44yf1sE*iH{^jU=I=EDSHkz9P`Z@=8a4i|^4oi$a*ZENZ{u}- zZy87#|KI=MsGR?S8l-}MU=;wBe76iZs^ULdiot5W`WWCf{O_ntafAPB0S0gK6K}y$ zEq{ipVs-p?>0_+t&wdPe1OEjUxLbT5%7_~IPPCOb@q4K3+RXnW7j9el{A_Ty`CqMt zW-C9`0#@$u6R4Ql#{ctO47T&%Tnv@F{1>)?>)?Ma0@ulpp%15v|0DICy7@m*jB<}J z*@L@Exr^7mE)KE&tIk1IXk|G5+1 zAM%sl02$`LMG4~wf5`!mQU0G4Lyz(OssVq@KkN?gPxxQV!qEhOD^)8d`9D$?ImNel z8Qe6#LjWsJ`FZq3(HVa2T98>j&d1>$6PQ!1Xeang4%5d4^X3C!FR-8u#X+!=A{|FT z{5q(d5G-E_4^D!IyP)DMn5Me0i{SNnP;nJ3Is}_11@04Y9_5d`dmu~b3a-vFEwoZ!RJdBMY%p?N_t@H|MG;Q4M0rVAohU@jSgH}}C& zreH7}gIR+0)Og4iJf#9djzGr&mn+ysO}acm6A#=)f$A~HC4rGn#pet1s^O?Wpc{hs zLIIanqRWC+v>0Cz{7egHk>D%pViXI?=#XEDV1$Z>rGl7E(7Y;GNT{)I1Agj|AR3LB<6i(cy^40@-d@c_JvM10@pzgAKSz!B)zdrv%~j3nkNn z(H2bbsUTw^Y|aQ)Z@?AJ3U)4p%vQLP7ArfUn;3473pb^}roHgkJ`e|?-6^Oz3fIva za6&jhhm4$r#UX$@3(x)w&PDj?n{ebRoL7m#lfs3x#JUOBlwi(ZPggz>rAM`3jL@eA1Ab=UjU33s+I7NAl&o>Dv3hfPq@Cb!e2MSN|NwD ziZPRgTFR1Bgf$U>rwT`3gY2A8K&k9`A>Rh%g0O(nq%@&@4FKsv(Ki^(5Z)_m#JC7l&7rq@2 zD-FVhv>II)t;-66qA4I0{*p(B?OA-NL0tsN54y(u&z5j5r2(ukh_a`0Ep{ z<3pui*q#oR`@*e(;0A;aJ%A4i$LcURBn+S)*aKlQMNbcf|NIX4uyFhgu6;zvq9t}z zI7?B}89Hu=* zi=-f4BK~^FPK#=#Al{-NI#h8+^yW)2<|F#H4}-oUvrrH}(Od6ep8lfgaaaiu%_KoH zP}EQe5+ZV>_%l>==LNV86IJFzGhDQE9d1a3XrVLUks_`&WKp6omViWy;;D)gBigwF z7ac45Z3csJB8xbk+!Tf(H<(Ir;DDUm?%RuCk*~FMIZbIS(d1l&WB`+LS11j zN2D%;>0Hql&*P)Y6RD}veNnWu4Y*69={%_9iyGoV3Ph)A11l7*qRC$tJww~|711lS z3KxkSAHim^==OQYN<_O~2cT5cPPNgiqIh~Au8A@z^1m+1q+3@es-&g4T=aJ*NQEfv zE%>VxSj?%h)2an+I}Rbl(J7t7yp%0PcuNUBR`94pPUx zU9|QF$X(GgDLizDyy>0p6m4t91yOu%axcFUKckRXek05gpub@}WQEVH5D>@P$+?NEscP#k&O8RFiGwLU_7_)Cl_Nl$F98V@N9BVAiPydc@4;d| zWuGD9XB+_!6@L~D5+=S&TS2&Z2NljD#5?I>j}$AWp&2C(sevq7oKCx8jCklf%q&*y zM(c9l5%4oJ0lIn{S-#Fwckb3>f{05)%mU;GcVt`#SL2(C`NpC0{saYHv8HHbA7 z_uLXc$_Hr_KcVlyHHnp!a5Rg5uf<@C_$3)MZ;Rg>gOyhCv)xd+Bi@(-?ylIAfhl!} zf7}m1r}*Dx;JU<)_d&YFtXH9VPaHxaK#zD=HQe@!e@_M1C$4!7ru)T8>M7nAZ*Bp6 zK>Yq$*c=r9X@jdB5?^^4Rvw7or|Wwt?xtSIu=oID5&JS`Y`x!#`l!QR1HrD<>qMbOYxkiKUW|v*b`b zWG<3oicwr8YokC;O1@8mF*iw|25@&t)bp5&hh)J8kW&(AF$O&)+o`7NC7Ij=_-V;; z%Fetc+*{zzNF3fFQ}K5s+ZX zSy~4}BztF|5-O>rBs)y9y$Hs_C2sWjMMz$t@F!BTl(zXOiJ0PoXo*)mjKxR}QWrQ@ z;CnVB<-6)k|hVJPm&_}oVp*WlB@LE zpOgG~4TI+;W*#6HBvF-+rAdlYVJux@`2)FFv^ zA6%#82MPqcB`+v_#sBJMmP)qu+m-k$g_yX_}QR zparSE{`OKT~qFOa^=gRD?$`y9B-(rl`3U6GE^T3#fLpiV`x^cf24 zOQgackW%UM6eV1h4yM50HR(qln8bByE$x40(#BH2%cZtwa19mGZ@-1CQrdqQ#;T+) z5r9`q-*^!!HPTtyH*ZLh2Q@-JYlMYOx6x6gz8M#ooBXzw9K%2CP3heFDNot|pm4@#H zphMbc1zD#w=yhmzNoT2{)-65xAN<{ua_qtNNS)Kc^-A}N!SzWG)AwcirEaG&cwg$N zfw2K;Vgk59Y4c9GBgqlj!!cQG3W7WZ%&_2q#&v5h~8I?iWE^WH|>gC07}j zioPdheF|v0$-2cL?y_5p;oU=a^D&H_lBHGw?kQ_L2bq`b7CmmKWq}m)dCT@*133c^ z(Dae5q#(mrwvW!u_{r3C2+m*jF_k_7WL{MD3zU_ef%hO8n_i$`nIlEwA+nA1X@<(4 z!GF(&$=><|fNCC|gKj?pIkj4tqAENdwR zS0WQo*`QSB>ILstWwm@5yC$354%v0tR%&0A$$p|@PPuFqeOsqOR@)7(QWiwz%qrRE zuHdR={mL{I4t|-7jPr8`FG%9R5tGcxG|ZE!pTRnHB_G%m-#OTc`Un1 zhv%Ni4p9g|#%GqP9c4VaZ(qgINoe8bNG z*vZW)9X~FQr&C_`@_b789pvdH;2h;<6bqk_FU^4!C;8FMkU7hX=vOmbxbd_Iu z88%PKXO?5oP5uL=)$a1R98BIr?wSqwDY+kYWj*EP6yABs7jDO_Ps_ih0Lxom@xSVb z{Plyt`N+Sf$kA7Rkm_!J@<#eXfxq0FI)wr9-v1yAl&=kd%^>*$4crFHU;Y{M43Ybt zh0Rd;B|2^uCV$`zS-9Mt7S0HH*Nc!v%FXC=kCJbs-x7+J?>qu4G4eZf3u5J7eee(` zU!}p6;^j#cdnd^IpFky19{M4;vvO;y>nF*5sO*|7H@*PP6!~f@Go{M8E8*{)oJDE% zdHH@?tS-piSpcNTO$Pu-my2@YJwu*C?{ua-{RT*ud|^IRvgMiILM2D86~SMw{G*pJ z>pc0bgD`ec{`a>~xg`IGVupPAQwMMb^5}BN3gzXOK`zUe@L}wVyl)+FMe+=K&Wh!+ zpJ1>={@yC6l*%h#hKH;2!z%&5Ca?7ZS1uRR*C#6ETj+psrQC{Qw<@_T1f*Ji_$X9r zE$cAkQ3w$}Rai%32%cf77|&Cb|84 zfH%u?DVA!H``JKtTYi$F^j7&TT7vG#9~}VKCYMkw)h>UT3JiDUFU)~vhy3~Nz;()l zr~uX_Um6Bkx4g#*n)l?5-vHhtXY2y$m4A=}S)V+cntT0n4K;l4%bz>~d_bN`f#;yS zipn=b@@~4<59B{kTK!P|>2AP><(9>;IU>K`1Kg-Qm-fvu`4LL1AIWp+SlGDyqjgYu zERP(6qbKqyYR^o_zm0{lNqOm)P??e&WWY_!zs?5tRKBeQvKjeb6m8GSmlQ*0t7y%D zTRX-2+Za5qxJUb@z2YzxvK$na3g8?SUyng{LcyT(FHQ=#2N-l#Y)i(Vi{i>gXu2v6 z1;G1BMfP&c#Z9q`jvTowH~}CY3VZr@a84->90JZ$@%j*OUW&c6l$=&%Qd;e;c%Q1T zXB6#}+4v|5DXsQZyhQn}pCX>hKK_a#%2xsu-FJZtRJ{ErxFE%%zu_TRvGV~`LKK!% ziw#x0dl$Gc#X~I7&xR|kDQJsOoL7QGDi+a?x<)C!*a1MaLP>dQjAExJjKwOh(l=e= z6q_jLidTqF1CXGYrLVXoDjLinOICPN)|#RSpu3x@xJ0?=IYkcjKF=$TP+oOG@!SJU zDNXT9Cb)D(iyuga;u1x%nTqo_pqZsedLJ{(R&0I%S&m{Gm0@xf6<+B1JmYtcn#57r>P$ehmay zs_0k-m8%K?ZOPXZcJIU3bw$i4n01+AcP_Ycg^c=t6^b#6ASxA`DM_nR{MUrRYQ=Xi zL#0MB%?03w;>J`}nOt3*w`y*6tDYhM!W{aX_CuFx3UsEBgRWZ07+#SV-f5T>*f?*9nyCUQu$X&(sNvL!v%%(s( z6_O>e(xrHoYKPs5uj$#nr#M5UogT%tbdX-fYBpqj3Y%bDbid-epD}n}v7FNC0fm8z zT!V@wt#CA?*zSh8JW$-H`t?J_k3;YU5GP<}L~sGyDEkwQ*08&|w? z2{s=qj!S@hqPR*`=?TRSssTWzTUC`u?onpOPy32fRb zS5Y8ur#$o~29GPX=78HPt*MaZplmAvz)|_v5pXAzmmMH;QvP!goU`&nKge8^%Ul6> zRlY@ys*}o{F>vIje7h4fJEff358|mb&?!AH78HA*Ro2t9o22wk#{`p=byT)XQ3g^Hld3#y0y(FY(=vKq8OVgc3(7&- z(bJTUO3W->`I;K=4CMhzt234D6bxl4{U)H2t*q_=AV=9owfkJ`IBHQcSAg7BZlnr9tFnTsVt14+bU30-8B_*byYkgXxZ1nQ(pSKBD37qgbt>Cw z74A|F&=H_+WhB+|?kTrZkl&+>q~3L}618x=amsosb@nUm=-Ium%oxSsfbu&^@duUT z)chJ!`Ypo8IIK*l1~;Od*9S7H3|<7&V@esNh>w&vCqc%Q4`@k$tb9m0`V-|m%A_Wg zC#Z=vsa*32gHy_?w=nr><(Vjur^=sNVP!_SzZYay`8@@*wki!R5O%70MgWehmfnQS zUNuGE_jOQhp$eU&N-2QsgzBUUR-9CGsUPmFvW|fx7uEA0VuG%!&)vYCRE^W(@1|;5 z3eH`%I{-Kj)sq7-c1mSVd!wi7&CQs+m&#!TrcbNfgCX-)?V=UsjH+)f;6AFWD&Txo z-*~~1pK2fN2>z;oUT^`b5A(nUs$9MVJV>>Z4qpYU0!qP!s5}V}s&b}|beQT1AA{j4 zi?skmsOr9jEK=3H2BxD_H}ipuR{b>$S&YhudM~jm$48h;oGMfZ&3M(9RA5L@h4{c& zqG~-=O3$jk@C7_cRrfx)WK}CYktr%$G2p4HmnnEYr{Ymoa9;KDW56${)-S~*(p2tr z+AducNG*d5)mrLFWvVP`q0UmhMlX7{s&x=tjw;(1vRu{OKj0`&b@M0y7gf%oAeU6V zzk=kee$E4+K=s!~Xcnq0ioso0<7TH9TeWEw z=F+N~tOR#Q)y#&mHkFA^akr}`s1I~k)fEku4pq}Q20K+dpTbI)>g)oLZdE}WjNMbM z-GnLis6P1{fL_(DY8dNN`MrTl=~o?m3*^2^NQuLMYAzFiLDkC|0ESc#sS)=;RaFfS z4^@-&b)sQa(;whQR1L!*qpI2+P#IG#re8dJq?(|ea$I$eGO)+0F8USbC#oT;{Z6RX zQm`cb_#&8QYzf}2&jYy;d@eR?H4*r_)y1$SJ1=sg&- zS0`0K#X-H8nzN4TSLpEE33dEm;GERqWdJyk z+||EO(a=L}qLVVG)IL;o@Kk@^1%Q{jfU?Nb>et_frnma&X~55@1CK-Iqb|4x;;Y{G zJ1*K!ZSfjp{^}~)dIHoxe~Q6Cbs^R6gVcGn1O=-_3|I+K|8N2xLep(ZdQVN@eBZo z>h~%^&Z_syL&@@0wfq&BzNU7gDCoNS z4sAiiM_%GKSJ_gAPrsRv!DmePA$r4FJfs9N1cD|C%oP9@SC>S&6BZmPX0S*}$- zdI&(B+U_G5t5>t%f~-NE_Y45H)Yc-HZd9jig{(=vmR9{{b&4J;EovdHySLS!TZ3y= zI|M*>N1bv4xHfewb&uQC@5cguSABq%k`A?+7OPHm(|G{8)Us_*=~gGvmmBV>f1m}v zM;$<6VXxY47{>b4)vti-SC`YbXYQ-F(_%HC{*8)2gX$=H@rKlo>ApNrS5n&fQ2iF2 z`yEyf{V$GG-?RgKRBe$4l`-{UI)(U1olURBxcZMGczCR~NPx-{_4n<7PpGpfrI}Q7 z2O*nM7d(V)T5XjD*;DmD)9^l{7D}KptL~s#+iE`i1u{F0w>3N**Kk^KVfGri8Xg=p ze{ToCQB%wScS5t2HXA3+$z;HtHH)dN?4tQS9FANyu6cl;)L3W%chlTA0_U#zx-u*ZV@;y&3?*(PHTc_r}Wm;zXM}uG($6(lAmS)y(In`HoXr4nr2!D z12tbzSvg4aIX$1jnwmo(A)4q342EhJEQU&$CW}&qaE-DPBtpZadRC<7>;)K$(tL0Y zGmF;j3678uLbJo6Udd77W7vT#we+!@|4X&zCsoUb`di&cT9#Sf+nHIua4 zU)KD07`Q8%pZ0+((!8@8vSQ8BmGDra$$E&vQq77ys9e<)(~5abv)3G^uWKBK;kHa; zPYXo3COioqDm2HufUDGWQCwc7S^pjGe6?nh7ULRC(nlaSG;#X@zp43|lC4^eTRjHr zG-;GS)N48x!%BnZ!CSC$OLP4I;EkF$X%lYJ^wEpntSLPTc#B5f50%@R463)bYBFhm zxT9&LOKH=TzYajVrbPsmyBe3Z80^s0QsmgFu^R-uOY%I!aP5UNgVD8!w+GRYn zFTDxQQyZ}nnqJy1l+v8m9zBJd?5$lwAI=%=Z-pQ}+9E1(`)Y?o;QX}lo|vw`_A@#l z7ohdB#bBWJM_MC;wCBuVELa;!rT-8uk2;f~T8C6{VOk3@NVxWkHvx#yejE=jQd>t& zkSJ|CRc)iS;q(y2Xy;R{D^?qE2qaGXGL=Zfs?zJGB+Ei`p;GWAKtTog&A4?e(LuS)i?@pQI_&y4{29vQ|Uy zX0i4aN2ru&_sqeilxl0c;o+(_U=W(uw61jI=(={0Ix1z_OW#7XT>Cv0rz^DEHbJFQ z`{FFDRB3Y(L8`UCyaZCCouuPrH?)_Z1-YqRL#uGDcKRXiZk={pIpFo$nLFSbv?j87 zOWV~2w~gAVub|na&7d}Qvv$2LWGz}%25jEZwq3^6wrO2=Le{QroPw-VJ3~8Vm-Y)< zp}V!BqcGj8{oWfYecE|zf$P`4OSREK?Y2}54r$kY4DNw;D{b?`S{ChpBii6KfRAcN zu459@+N{rjd#Y`x^HMWf0p&Tf+Eu?n(^eN<3lDZWJ#}o4>;9t8!CuD_0`8!TrX|l& zx0*t#6S{GK$eeTuosc=}>~jEc(V2%p#Z?zh<*AdpqNDKVrt7ETio5Pk2LK+rgS17S z(gkONcH;Zd zh|&d7y)|0*HMI|8bnAD+ZM?3O@|6VL>X#u))Ri`aoYl?Vg3TnIIsx!x-Iw%er06QB z`IV}hrWE6x?t7}6UeHC`LnTdjXbQM=UHBwfz1NlVQNhk>P+oL3p{<}&7fWepm9Cl=xoX`c zb^K~{0_q#y&^?KO%1zz=O_0^<_-}%%)0NMKtX}u80JsKSYbFM7>5lJ*%|_j2YH2m; zR?xp3)~w5?Rzr&}ITw?-tqcBNGfL+b43#@NB|YA4y80IZZ`WQ_<>c0zBl z9^RewT?5c`)@%QS6&Jmj+B2^Duv*AY>aDmi=BA%VMKyQ*%^1i$^h}!BDg8&u;5_x~ z>HM{qK7b;f)B65Hn3=c!*Z~Zl(O*o0O&>k41%tl&V~4@{>0hVN)?Z(@2wZ@^h%&xF z{r+;mgY>`KVrIemm4Q$R(Z_W_B~)MNgSmw1etah_Op6#AxM%wo=S+x`b9_JC`GTQWHMEM z-VNlO{_Qc4^ZFi&1TN^;--g>XeOUplr0bh$-ObQ{PFqN(KKx@0X6ZLmK#;A!K<%y^ z{eIeIa`mZ8fxDz1p_e3IzqIEGzR;Lf^1Xr)mq42yx?@KrGmi`qtxNX$G zO1+6D{U4<;)~tU$4udUvbw0S;dTk-5+p6#T8h|_cZYtBa>4lVJx9bn3!QWl|fAryW z=>J^?l}>%i_rP`OUCJ=nt$#=f>OH-jYJffZmz6Nqt6xT^GyC)(e+EbW`gN3A-q%m` z!`Ogc{4J(CsQ;K6jYIn5)Zu@if0qT#hx%H7*c{a_{{Uo6pG<-EBYhv$0H5eHJ_cYy z??k@?IjQ%fV?|T?SPI&v_4U+iwoH@r_dP=Vnys(2O}Z1!MgR}Ak^ zXj^0`5n!;`proy}#NfUixKhJB%BQaxvZ37=HtrJ%*j{K(p6S5raF}XGpt(!G1%k2grTH$^{?;2Im_9 z3>qSa0e@%+r`>+oaA_w7M-0E}F|$!a{cji?GkEL)d1Tmf8OFv9y>=jv4S|$UJuxJ; z!q|l2EcN&%4WH6_J#BdO1-w5s@F^#mG3@&b#+;0uv`RS}&t8Je#Ta%Dckra~DAlao zjHA?|a5t9ITkK)vQQ7B|(dQm;p2iLHAoDUxsTOQOM}fw;Cdh(}<~EQ88-KQdEW|iB5pxMQnp1Bn!Z<>$ z{Yc}{BDjq*I?`quZQS=3;4#K)RUolO&moXFqYotq@y7gv;1Z0o0ca)~cThLtta0)s z3?>_`y+KlpYiMswHNL+HZqFIZu0rL!@!pppX~wxFP)RpdT>{B4eh>?iX>_LrFv}R{ zhbd(n^JzoLF;-m0%yNwxvS(CAhzQNpV+$RD2wy}RF z23w8$m*5uMG0t;@l{TZJ9JqF4T@F<48oPS|=rEQ9!b+!cb_+kPuU^8&pC~i44fXOma$o!cEzM>$U z$)mLGzHCcQycY3GEDDKO(4@WPU(NPsf%h5IVPXo zP{}o2&ILTrRQC#IcG0wrmYGW?E2<&on=)d-6`1D608nW9{%?@Wrr*k7<%(&5R{bK= z{3n=Mv57}1aEa-Mb1+tFs-^e+s%arTwAW0Iv?^XV@u+T7VfvLGzDm<{6l7JVYDy|< zO+{4ktTQ<^V6fhl-Gade(|Q&(Z<)3~gsjo@lmCJr4Wx^3drL$lR1vK;fgW4h}C z4{fGr7Q=hHDPkVx(rG$OX-k*MpBky%roFWH-!qMbgY=lnDe&wy{r)1zeN*Qp3=WtI zX-gh7{k8$7hfLqmM)bfGb_q5gntrDxZ`5@5Jpjf`Xa3iQFwLP_!njEl0P@)6@;y|Z zm>MYLm@;jqjD6Z<-37o?(+KS{Gp2jA9L}2JF5?<(tzC5B?5)$O|L0)6ftqHH)-AN8 zpRhjGk3lEvll3s>Y#mJD$Utwf}vncv??V9W27S z-WFW6b(=Y4vDQbZGZJt86{U!0tp(I-NU>g*f=Q%V?>h>Wi`Mf-fh)3JMCoybZNQCf{4xmlb7JGs9N3)Mc#$3{2b;J;$Xsmn^qhIvSkn;%Z<~p?LHuo`6f=a_ z=$`{F(kA2s493|s`~aItHa&Ez<-E<+!!$FS6GOOzSvJ25z~$MjrcmXgP4#^Ki{(`NA+Xx7?n=>%72^ETM2;f;8Cd`wymX**s6rb)(I}r+_!vRML*#Y!gZgXNygk1E$+%6Mh?-?KX#ggzT=( z_iRkQ!{+>lxb{w)?`ga4viap2RJv^nUIFf&O=S&?_1Iin4b5Jgd(`#nvypxZc)!i2 z4rt!DQB`9S12$VMKn88TqKf>G%_O?V&rtOw((F$&kPBwzw3Mcsy-E>OrdfMFNVZw{ zH!zrMR#69)i)N`BsN|b{L0zgsvv-tGDK-mRi7T!&yLcOe4Q2@i;M&ZBDck5ZJ35Ie z51TD9`+sLkMt_98mAs?ST@^-s$#+{qFtYkHODMi4S%$wqe&+{B*IUpYu;C6L=9u4G zV1)IHJN&WjsBy`u?}H}yNG`6Ex0xPH{z0m(2<|3AQ^=$+K(vDTSmL&F{4IH{99U^1 z1)dasJoBu)&j#a)uc(Z#{7!}cs|w$Tj`{$t{+hvskZS)q2z{LseJeztD#qW2-{(Td z7)9UkH&t%L-`0s#W!(5uH7wY?x)PtsCzh0`eL76V=S{P}V*IlLs*!F!mjeCIIkZ1- zd6~kNtu53f*_N~%sO?;;YkoN|0I09FQC9Hv0qPs=XnzHNfAerYQ2U}*;{ShY=vU+Z z>QX@e@A*{M_-FY%jQ^Wnf|(qezYurqzhB-3_V6BCSUd7Ib%5;5R0{#9F%wYi-emRy zwX&PdJ}ZIsF0+3cLAuS>t^~PfmJk6GJ!TsyeCjo;+6S|JW?#+4V85A^&e`2JYkUc^ z0WEC6%yVjLO-In6Mm-(vS>EVTnU z!;qRm(}y8cg7`9ezXtJR{QDSl@n?MM0YCtwiFV;YMuHBqAV$!?Ai)fV4yHpGTX#V- zl(CN%`Y=Wg2b$rG35tIr7*@ehiDZoKz+e>PT`D0*GtP%%o-vFy)T)nVG%v?=;~38^ zfh?X8{VMN2^tcJmJ1F2^mI}Tg}!~Qv3$~0qVGHgC&{P;O+&M@TE;-6(arh`_t=08!9 z%+CA*?eoXYO@{%uH-AdU6dcSM^aci+FSrJkAoG760S`7er+_KMJS!d~&b*!qH}U4< z{m?vT?pp+M-n^+09&VcFs9>em{547(>&(~E>D+Gfh5fjOd*(57A?q>E+JV7-bC-E= zJ7Qim3!9_n!e79RncLB8_{jWuPmpo*&qp!%*xXDG(@)IxJ25z6?nOniN%MSKm#59I z4#D(O^W@(#IAgwtzL+&@o_HBJ+h?6lKxX%B-63cme|D_`#Qs_7uds5(;!TQ2iYz)h zVY=92mfqA7i{g5ylv=zL4eqLiH|yaM}nf6BZY!-7;yBP0#L> zMeQf>K5OB@1>DwBZH+-Y%e{xexmpJO1#;4IGxY`BER*KKio4~~&oGHomakKV$jfpu zb=OZ@F8&%ey)An`g7-6)9U~w!H!IrGnzGPj%YhY`M2h9^g|L}wIZSPZbCz{6V$a$7EPK zQtq5(*-7zFwx#_M4CY$?OgmMcWh^Z-mn`FEA#dGT|QE0!;Fp;=^^O*PA6 z%W5_J)moO)mfmOSM!9Ui<*Rfs=)Psubr>74qT6 z1Mgl|`Ls}y8$+HtnP+^zf)&A$SYZzZO3c7fGKS{bfc`3Awt_5Y*py#u1Ux_)8KIdcYPm>HQ~7$X{Mq6k=G zMFBxkP(o1?jbp=-s4;e9q7+dS5Wy~D7Yj{M1QY=U3syuy0mX{gd$0Gm23w-J_rBj> z_j}$qvu5?R_t|Ifwb$N*R?1)C_OMlVntP5|UC4yLqgMUty2vrBrrm%Yx4K6;+zG3f zU7=8972pNlNh>=#@F=!gQ47JBTiLV#sIUtD0lf28Wq%@;N~;;saCFhCA{ec`WTl`@ z`U|T%bZ6zIRnAEmdu^560N{;PZ(8c!TCL%s{?4jy5{N;fcC=~-i+T+L2oVjZ`$(ap zML$DwrYK}G{Dp~>lt0Z9jisN6&K3=&1Ke=YD0-T6L>FHJn=3jo2MQ6Q>S0ii6!n`8 zVwC9WMG)tS+FQa(wCGhcD9jgGoq|Y===*WNVnt)AeG5dMG(9a8jo1O=BGKq>5Lqm$ z-wV8@qMVMvmWf_dmcLvyD+gGdXrMK)6(S?;W#dHyCn3Oh=h5iP(QCcuU1csCc+c{M)zCTP{9E zy&EUap~1I898A^ec=6Wb04v3bbnLZBe3=ekHjDS2h58n8z6)$7iU(vsFG(CqSwgb- zjvqu)#Fvs0b*gyDK$zYpPNobgO*}@5UfM2B^o7C>@jY5F)5Uw~wb&_+R|3lr_m~7; zrg&p1jAeN)3zhxw8iju zRGhsUlE=h@4#C)I@v*1yS0X-4xp1l2zBg>15pUfDy|dyRdS%MQ+4LKba&gymfGgtC z3V66GZrm4=Rbn08D7hvUUxws$ar!)9H^iazh;NEr>7vdu>vBr**I2iu;l0*cK-1bf zYlmr2SZ`hB0&Iizx=R2F)}!d4WQ%oF0n`(%J5iY<$@&GI5hh#bau7+i9vlcOTdjYk zLQ0x-BN41@w>}sOg;UlS|AxqE>*ni$l~~7Y2d~t+jJD-xtgG&Vch-8=6<}r7`#V#M ztV2^^rNVk#I^0%TZ*zg(Me8Rs0WMijrupo?bs+6*A6N^tkbG#ppUPB^tPK}{J+>CT zfUzgmcPtR+Q|lJTfxWZ7K|iYvlBBysGFZYP+AWhOr z0Mpwghp2|JL(+uahjfWd2DdvUA=JAWl8yslB~!9v9YB_3bQ?(SlB}RfE?ZJw7vb)a z6yU^)&yjSYBjQ}iRyqXBlN^r%aj&Ev{dwGdl1i!`6-ai_)tvnj7aBbWBoiCJ(LqVk zCJQZ<^ zB}!UhPfM&40M1J;?*gclc+*Ma1&MJGuxiPL&2W29G9efW_a*)3gZDtP(jRd?lx(Ej z=CLG}9@P`cqjV6TN`9wvxo47PgW>PFBv%Xd7n0!4;Dtz2v!F0nnpuf(Bcyfcd^A$J z%odVS(jD|CQC3T>qTpza^c|gkt(8{NP~0MI{t|kL(m^!gCP^!)ewr*jNqI<$)b$~F zsnVy^JzJ&9KS10jRqugFn$(^u<=dsd(Shm?>5Z z0qM{?CY5Xi@wn7^42UPB4N?G#q-UFgcT!rP4$_OIM!Gk3N*dG$Scz0d%UP*3#S7q! zv;(a&XQfM{;IB+teGlHtrE$|>vqCzY((H56Ycz45mmW9*E0xlNv_-rit)K$-MX6sN zc$cJh)xa)G2hcgv73p2NAA415q-?E9s-Z*gYtljI0ji~OM?t(U^^8TI-IQiDgri&1 z*Q)_;OG8&e<|fx>HPIgP=$Qq^v>=$&-z42T5D zeqM{xo~fmOWeyVz{hu4MgV1W{iRN z2wB83@FHcejsc63J*CRRJQ+{B&uH18&5)cgo6#K}Vq{^IdBn>4QuoBkc5a2<3Yl06 zk$73dTF_f5D_;(AGUo}1C0RD?7C?&3 zeLECVWm+E?+bUC1VPc!?g!vYZY}$M{+AdR;L4AiTo9=d}%XZO0&`w!rIvmWDjTj1I zmTZy$*e=<00O>=zcsj>^Vofp|<7PTA9O z+3u5&JRu8diXcj5p`$@OBdg;F?5ykusvnif`lNwaA?w!_#B;K?qu}VgOh{=(r7Wiy z#xBTO(kpXO=1+6oC7IP;NM4o=r9+!5vOl-N`&Aj60IW*3yhHh6pSq-{oThp|MPFxr}A*zA1` zW0^KB>2^exjSH>zyKGYFaqPA+#KKs%&6$_bJ7CkFGM$4qBTj->XtO31R*u;y=;Zde z%?!H3b;2fa1Qd#F4$T90(&hpkD-_$bt`CJ%Hj^$u;j~Rv7hokeVU)p_+AJl1XKWr& z`R1(6tXyE1Y&rGXX-&Ov)1Mmsz~&I0vplltY6B~eZ6*XjQl+Kq?g zbDO3UVKY>|j&@Qr*{ATOXi zWUG7_?YXwe*HH$TCRf*n-gfzB`YYo*@?CcU4#Fk5Rn$8JV>1=p5)i`_N!4i4ECrhm z;%vn)ZDBK9;ZBps97O?@9_K1<)6WPa6o=^;DpGNFCPbnX6*SoADV!Q3z-UF2=D_AF ztZ7<{QMk~H7psV(d}4v3g6gdc6@$}2T%?#s+wsK;zj(y5L@~e#*iyxDT5OgnM$ZCR zuCVn3FHZ4*s=X@|Yr8-sUQrc_09Psk>6ZH{g8f!P}^~ya4K(6!&Ozuvzh%+-^}w7lW9n*i7e~Ns4ZCr7l@v zp8>rTg((OvN>!Yvyl1OoFx5u4DgLBvJ5AAo=7Q~tR#VWh9SVP%9Mcu|=YlyWQiiGEBuuzex`GlGYX9k3TG8vTcbnD6ecQtlq(wl0$zne@)8Q?6n)&Fa9(k% z1+Yp*Y9H_}C|>;ya8c2(93Czy9DN~jS@D|6Fjo`}2Y`1~(PlY#RSFSplddU>i($H2 z@u(^MU03w-fWI4xx0G$)RQ!4v3bz!($%yl|VjmS0?0%GvdMa23zU(60xVQ6Z3vM?N zRM&&vT4n9VFuhJ$w+GbMD^omyZ9psl2};-BLENZxcmiybQr;OIxmhXb0rf3PPns$d zl?Bnjl9WGFEjC%Xy%HW$lqUngOI2Q>zplGgxr}N^+m!W1z|xe)88Eh8`4bf)cPOv^ z0$#duP8_W4R37LIkfF5pMo(laH&D?&ODSKEF4(1<-x|E#$|1BD%~pOl6=07twIx7~ zGPN^o<|;Qlgt0tj-?1R>Rd!tjy?x4#9YM@jj;8W=fs*Ns$o4B;uE5v<9q8mRXX1Qu}rD8f$4H(CDqR= zl#M*0eoh(o3dHluKq?kjDqGOm*#+g1BIsRI&OZg>CFRx5z%DBr(hPk?si)Qcsxp2Y zh*iqc0yw&+bftX0TG{Fpz;)#jszBaQUfKxkrm`>XOm8WTl>oPu+#|$!N4aV#tlU+O zvxnq8_cjld-qRr&thzyqTZpRo20VnS>?sSHsoGByZkWo0CbC(o%XAbu zTlJLo)8VRWsteCiDJV;rt5PIGJwi3L2zrsKRRQ0w4q^mjX?tNPQraz!2n(8h+m1w26jhvG8yW3Rk|O6-BT^5!pnVC6dm6` zQ2o9adJk3SPebI9DuXUeJyzMpLF9>Q4sCOvstipb@=V2l50U4pHcDVGR4O{ceyNIY z4lA!zw{pOHt?Cqv*1l1d429lX6;D4Uf2SHk3vH0PQEh-=b<{85g{a3CLN8QZL5^ms zi!K5SQ~yoBvzn!jp-V%v)z$RJBEr>Chk(sd&!hU;Ty_7~01@h~ZDBf6y=D;HMyazD zAkI@CtBv+Wt0$Mj%6xSjn#*IW%>b>(u!(Ah}-MYz9O&sN1aomZ0uTHSvw=9ZG;r>R0r_ZdNbu0EI1T z0Y#mtURn$+NnJsktz`8<%575AGj;+?Rj;QTU0c;r<Oj*FaqpSH&_PVZuO)|@Q|&Jv4iP7>ajf3 zbJVvsfS9YU*8{{n^-0<>>{ZXEe%YsLo{k9aW!B1$In*XCONHxccxu=$%mOX}v8{*X;w5 zlj_Sf^A)QLUxIf^9Z4_xY4!Ata8#ncPGhN5J&vaBGwQ0wkUXnSpy}|s`YmlgZm37o zS?f);Wh#ib)c(gnysf_83gC|VWD>wV^^hRgysxf9>D>c$e4?%@fWlMtx08T9Q~$9Q;JJECJ3QML>cv#*e5vj@7O}iiA9x4swff+FxP7DE zLrLjdbxv!Tey7f_02ZVvqMBT=rcNU$glHPmm5!O3dh||*X>OMQo23!b>D+A1P#r|V zHT9^XG)E(^LJ)H`WmN2l(2S=UAdZX=&HSH+hU83o52d0;5BrY($OtaY*#O0cLV-aqg zX5(@gTcH`<6sF@f{iwpaQe$xnV3lS{2^3aq$`hfmMiX`wV67&cysy)+I$-NH&tw1_ zH1)rQzXZ*-rQmJUtZ)UkN%Qh0LfWi39sw&`G}Dj5L!!pLD?pOwVnc`|YeHz}oubL3 zc|KLM;wG@Ing@=svQ4wG5r}CTN9ywJnmDT0?a;(821wW3kfG5#H7V4e8JgFpp^&Nh zhVC9@X&%wLxl6N?_V&9q=juWvTho=wT6;7GAw1-0Ufl)A)oi*AVxDI01%SPpzV{)y zPqUPsSiVM824e-9*A381`!xf~p>RMmf%ZTLHO>n_Jf!JG_n8VccTI3~STmg_mLnSL zzkwaqT%u8MOf!)-=f^dxd|>m0W(8#zMVhI-VC6Vqd_dw_}_;@x#mh^5GypD=Ye=mQ$*g+Yi`gkvQl$p zIlu+Y(JXklsIjE0f0s0QuR*-5`GfMhD;l1nzN&djb8D4mCherIX*}sfrCL*;-m2@G zKKDeXbLt+`YQy*rvPnyBw;x;}%kdzzM1e7LU}aR=am<_Z1o z;-Ti(+i1}vjn4!~KGsAufR!hj!0rG~HCG%l3Z7|3Uk3JEBWn%G7n)8~UwWz8;t2Iu z8r582uQfC4!^0a*yL$j{HE---?49N`)#rn>MsgIaok96vh&C|*yijd*A=)rgTcw0Z zm^O9;^k!+dKZCK^+Ila+3)hzJMVxcAwJ9x}t6dWV$q4Pcx!^@=2OD54O8epxi1W06 z(&<&Sc8~+q=W87+;UPvlEeIm9S{u5mv_R__2oDRj)3gAKw8{G+xmfFT1Ynsq<21l> zt;7+$71}XZp%AYvzXmHSweM(tS)~o5lxnp$lqQxnTG>Seu~vJTvb=TLbLSzsUYj%u zdK+He$T3#h(yKr8kEIH>)BlD$LPP}-IiYM)#{@Q1Y%XfPbncBXXlsCFz}XE~-F zLc5UT+HKb$c|z+!<&+}rtHZEzQu}%^c*WXqDlnYVPQD84w6-yo+e@@lX-8YC-SYxL zoYB_$4so8j}GvvwFeSm?7Fr)C9F5J-*f}< zrq+vgt+%voo`ZN>+kGrV?r4Lr0^HR~>ABz2R@0@Q``R}&&K_u|MxZ|*YWuARc%-!x zBZ$Y^KWR7kMEjDanWx%$&p>>pt)$ArbFGH{!ukvC#&d|}rM9gAlCQMwX*2R#+hq;h zzR?z(2l1`;n~qR;r)?1rM?tz!swf5P78ZgSqT7=Lkx-q9QoorxDJ9lnx=9lOX6bxf z0A}mj7lRkB+uZ=z99?!xc$lj@x(^;AbQ98nMe4i;K_p7|fJ*A~bfX6$q-fo0+9J-^ z#nPE+jIL{2xQ*4>E`q`W-BmiwSg4Dn1MNk+#$7>NtWzC_7X%AH_RSwSfLwBi%q;Px(HTQ>bS*-WtDDa1>COI38~h+MmM-VtgO|w9S((c zx*r;VxL)V^I}|qPSjxH*bVVJYuu*q{X6Q}2Ia2uBteaE^j<)E6Ga#9$8%^h_NxIlR zP*2vSPz5qY7nKk7RNcx~z_#krVj#IqS1}EGX*$(FVB2+Ks+jH2)uxAfh3=zexY^ zAtV>;gZzLk(O;t$E!B6>QeW$D(@9gDzC{NptkBP14-fHrWT(%&qG-fDd|4cayO zUw#L1tv>2!NUqcWM$dh{K7JOOvO#Z4zdcXT7gL72Q6K#mOmEWL(}r=gzReZ*+oJDG z7gQ7VLtcZJqz~#3)5-c6+BBu;r+C9ks{U3uu&w$zeo)`0kJ$`jn*KKZQhU2T-VMYZ z`VBjvm!)rVA6T}&4rR@I^e%J+lcO)BY$jLlJPo`&y)V51d-cueRDGX5z7@RZ>)SpC zwqNf}d&&d)#@(TQP`^cj01xRaX@M@(pQSC-Vg31e;2qKbZUf>`{YVq^j_H4(O2%=0 z4$X=u^y3zxDMk7YZ9qJ!&$j?5*0WSgIHlh=8`x?6R}>cHkT{mW`#)%p|;;JUuF8m4dPL$`x>Q*TX@xAd#B0dDJ? z({|^M{vKt&clGH@A#zVIru)M8^|_4^!~?yf4R{ara>5?z%W1d!Snody#3%Y*v?+Y5 zpM3{bp6eO9OZ7q@cK}vi>U-BhQ(o!2{{io>^_uP=zSSqv&Bh>uhW_crV8b=KUJ`1U z_#M<|8s;{HLYQIMD0rAC94#`WQfXkZVR(BeEHV5< z=Q&Fa1_mX82K99CstgUj0q>e2|0F=QA#@F_+%UAKbIO~BQkvu* z8+5e&cw+D}0^4spqc%Joux&`|=0V#m%1sa1I#I?_XzNDBvBS10bQ9>P?GoDY9kX>^ z2b(8s&-+5*tgVk6Seb1Y<#pw@jTZo`usst=O|hLs+v@YSj{;z&(zZoM1aZN3iWRWy zwvjYP-mv{`DXiSIeNAh}W81!Sq5j17nKQss+tG;-d1jlC1?+`w5uFjevhBVN*lXL# zzrxsTV)3{gzUY0R61z?x4e-U`u z#sVsC?lJaJA+lWKy)!VDXLMVLSPmIS&<3Z_=>HVh5u@E}U`LJRbdBP;(ZvX2k#QLV zD<_S)bn&{_IG7g2Q^r&(L7g@}qfLE@@#Y>Vlp0^sS%1|CieuM|^+p0z8x=nz!0X0$jS=+?;{w{f+%%5N1-NA#We0`Z#zB<7 z+%?Wy4iEQ?z1M_Cf>H-U^ zJ%CD`vuc;pZ#8Gv_RK^Z!fO{i1vaO)(*k&(Tf46w3K6xt{Q=3y+5y=RiK_jMCgXXv z4`a|;Py*KIDD99NzoobOyW3P-4P`<`1I%Qa4}rBX=Ak=zVsz%Q$hhi33}*~WAwP%F zT!-Xb=J0b6BN#UkXCaJZ+S$W>I@5|uUptw*v}4R*R=Iy8ss`+3I^BhpeT+A4h4UF3`d3{Fm^XAK z@(43=tEGjon(6uikz=_U=lsoz&YE1Y>wHz*>Qmd*ef%w89$?_;KnXKHMl^4daU zpgm2ABcI)b-mhZ1X!l#^BG?<{dmCD#2R+31iH#_WoV0KWD3kl?@Hyk}{jI09%pXHROk}#! zFNurgLdo>4916yq}=#M4YmN)t<%?j=yKWYUgE#6{W8v)#AoSmS4hcR{qc9-dD4S&y=ze1t@oGGQPSTK8@ z=9IZ?c7IrjU~MviMY0hTL=;<2hiLQI{v#n7&CWOlk(KQ3U<9#>9efN{Rcut-+_0E zy+Mgn1zTwWw^!KqmB6mD-_WJFDmIBWbl2Es*P-y3ZF2&=CoJy>(@)v!v^{^up0b3M z=j`H!z+SNJIzsOy+h!JsuUMaN0Kz#3DvZqMdL=+)Dfd7LE33KCT8L#6*P#!?22JrH@ZmzJhmm5i&^?h7jyb$=Qlif-X3%EP65IMj-{S84J=w8uK{8vgaS=d{pe=3aas_(I zqVohZmOCj=c20u%|btH+=fR7b!{u^>YT$y0&`k6`Sypb;fGB?6BDh^$oL zIEgw$z~sToSwSy4lP(jK(*CSm(5oLLD+D7RQili*EClbo;MWzvDh1!uPT+!o>j%jj zf=QRbyD8{K!QT?dDuCSB{?}6aOV1P%0!1YjgEI3Wo zt|x+wTwqTHX>_CEnV`@EBF_a!ED`lf!7$30UI}X3!b%ulR{-KH{uc{iv-vYgP!Gqy zg^R~Hhu?4>l5_bPXF-hMk4=U5D1JU&_?X8h1c4XLD>^_uhTk0mVl4lhUW5hw#JKvPKlS|=7*O>P3-2CGxo zz{|8cQ4X6&t#;6>R&2#ihs|47^Uq=_rqx(8jm|;aO(n+xXQ@0Bm_RArm^<_{-8=*J~weGuru7kG&qhIBvHb;QZR!a#%h5R4U;v3!=r$$6`ZRB-a3K68Q6M3 zr@L^pL2!U}`kMvD8vt7bwdf=!Q4mQ}W0Js{GKXZr+2#N#f?_>Ds=$&3$P(nx9pqht z%@fdu-GUL6_hbu>(Tuf6&^Z#kD4_>!CKn0ao1q(52p3KOSTB6H2fQTVZ-W7L2qU&b zAzQe8F?f4~Su+4~g!lghF<1D2=F0+MTXQj7c=t6NZMSOE8Li!6l|~8VE~`JiAhO$P z-B38nwrcPR$&~u2r`e!1AovJYajR$|z;rZ&mUuhzG3h(Lx<9ntl(w zC8C+$z_LZJEy%6t8#=n#Ar@&NnJ%`YKlPd~E}@NkfjGJjK&W+SZ5Ru)K1;tiinN}4 z8d#KdomGfso^>%5bE2&yieW6qI*ZEmvDV(SHCbSNn^x3?)(t%&xy;%!1=w=y5PM)Z zt;cbQ<+k;FN<-gRucKA^o%Qs-P~R&#`v#IHC6n&~i;)_Bgvc`K_IT)JNu8(?l`nO~ z3u+#SX(ER95IaQQQKdg!G@2@+J4M?b0c42gGO(K|YC?O6EK#gC4DJ&(T?AgfD2Z+= z6o`JHSoe#T4+ZalXkc3?927nN2_h#&^+y9M7R6K9Ni3irSEY!%=Rkd{_`)P8Y!ijkN7TiL7w;zCxHFps2&LSkl4N)rVGWF3n6k?yk!cOc=Md%L{)b` z5v3jeNpu_MmmkWGEcP=KF=w}KO!+rr}((#L+Og_;c@>7P+ z0DWpg0JNt4z6ZYkE?EHX^uAOxnemeLl)=ob#>en!ujq?w=$yfYQOI>?F|FgTa0Nkdx3z;a-t zR`~qOiY|YIGPx|w&1J%*@DRhiqhsTx%%wTttzuqMSu270kq$PKncY(XI0VrbT)7I$>)1BtzO6Dz<{;Qbf?cw@1W9tfqM@;Zg@Ln;;;{ih1 zQSCsCVBh=*Yyo?cUb;ATer<%bo;^-edLmnE4v1-NG96~*uz@R~aEMI_0&ywF(>l3| zJGdLcCvZcYfhBX*RL?5qGF0$>p0jNRVik9CCyd?ZV*5gJtFUul^uQkBzEv=mFN~wa zuTVIhD!N6&>EqvzV*Ck&L|6)EYrll<9Cj-mfGuL%9Dvvo_WWLp_Yby~1~&U0oePuw zo6_mZFZr}R9FQD|7)>{eKp)tF>g|JizW{x363q=m9OprD=(z-Z4~+dDCWk$o0Lt(_ zR2LahLK)G>5wyVmx{vOD|JIi__M;vK!NQo)93-cm{~eNlMOWbS@AkhzGK^XJ7CkqM z=@ATUHseHzR5&Be0T#npHHTm;|UIFR+)wXsO_r${3;%Y6g@20KPJrW?02GW7$BPQ+{^d2)li`vLRokYdl8!y^Ng%*@Bq%EnCQ;1K98{-4G_)zH4Uos znJNan1&kA&G%jQ=HG!i=%qW`umomQJ!PRo+^bPRhm}Dy3u3#L=$|}Z31Se~lC+DEB zmf1K3ybVlvCG--QH^*u9 zg4wbOAV#toe*%kQ{l5oT#CD)x`z&VnZ9ovK*;7%3gTM!#%?IAWB=F=-g@@U z81Oc*cOHY6z+O8D;zo8l{ZWfeZ2xBfn_1&Sh-_hfDWy(iT{R#kv8FJ9WHxyT{H3rz z?LoMy?01>Kwz3bYy0wi>{{vt#?rc^?Y1JO~ge!+Ik@=!yGme_DATu-{w4*hBUuWu2G@ zR)Y7M&8JCkCO3;NJ%@4Yr@_iB?%>}Lna8ooAVzb)^BCRpxmBBh#c-Oxpcl&>z5=(K zxLY1@w3!n`0BqqFRfCww-KLwLN!*DOASQFWeuJ?TZpDw_rE&{fA&3m_ln+F9bK`r% zW-d2*8{Fn|f`f?VAeS;8B1gFFW>7!D4UGg=#I4u`g_B(0D*(lutqivp-kJ)J)qFjwe?P!oVMvAu$Iga&jPP43HZ2r(qD*UvP(KoF zUoNZ~4G+n}?)M?GQy5I?;X&a~!Qh<`=25BZlrW|puyWx`8ZVcHE6>2nO`+;I_dZ1^ z3;-dPX%qnV0_MB!u(y!;@d3hF#5{fjU-3+uD@0Z@FEc^h!Z4kIB{FdvVK#}m=s*E5 zf3|?H6efHZKq{l93hi!YVLjM9!c4sY;u*%-1;)-Y1NK0@jCnEyBIS(p5b!FPo2ihz z#>naAsb*qmihRaISwJL+yk4)Y|BW1^=xwytZZP<&^AAT4X2IhMs|DxB(qqn?_hct zt5*XYWSh}Vg+uHyN|*}S(0GU(W{W5bIl@k*n?mPUN2FU=gU-?!ZY6sy9Uy{>q$F}9 z_k0H&rEy&e6mYH!pG6hQ9=Hfqt8VJ3*OvoVt3_W;#!r+|3JKru;Pr^k62{ z86boi>kL{bGnx(#qL_DOFguUAa}eUuOha0wb}~NqAeqAi#3IxpX2yI-o@H{MPykFH zD%ad$w3|N+o;(wzzR#yY)AT32Pkgf+D&7AeZ4G+c5}In-d(c@&$88&7w$o|4cHq+c z7s$J%(Vac_PMbmTJ3JZRM^B-R{e(xgpc}*-rB&b&;~ogwOm-D5&0%b}yWlNkXDwZ)Eno))Lvla6q#@!zz;^u`#G|Y#2H+U$M|Fhb>?kq72^Lc{P53EvsCklI@hiHt znC%q+)2G-zBLPmc%@Pn<3A-l)L6ov*D0e->4z34dXW8H8L9dM6Y6K`}cTshxg1!F= z;2gVyp5=LVUT5f4vOQ>HcY%HP1B_i{jcs7%65Ewt)XS_*5EQPkD}@**F`N%o8E1s8K3>hYY6rj}f;H(dzL2N3UZGw7EWv4WBPz*``=YXG)T@RVldMS|O9hh9@>DH%&et-`C2yb7_fD$iCiYKE>z!6VwZM= zu^p_@7RJ)qoa^B2VNZS!g&cM{4buZ`w?7f;K~`u4c7k;vD@E+Z`5>NUE$rd1jP=<9 zE0V+|x1^YYkq#`j70d&0tu-uJ)_Vn!VRn8TF%0?cK4>L9RysXq+T3z=Cz z!c08VkamJA8BYiBRxv+QcAUeM_JPO&W~>t6C=>q>VHPvKRL3~W{6&*xB~$AgNLDcl z%5QEniFp8zm^bNY%1dT%EzV>fWyMb5ZDU=B!@~|Xz!TU`w#5I#HfY6ug!-6SNClWD%sV*k(ULFN!Vn2AId@Hw1Ap`$7x7CG3KQATDKlQ%!a?8$wl* zHLT7D*jiRcWsG&~R64{+WII!}Dv6yj5(>%ecT`tPXZNl%$9U5XdO2((I%Fb% zm<_bTGcIPeRFgQxem?-b^K3#-fJ)YfGSv(0kOxq|$U1d`$R&0NU4OgGc7F^HSJLmYWT|SL_Lz`roh% z6A{^4w()pivpBc!U}ZM9W(}})++S_MOX22HwSOOXjh3Nu&W2X8%Uqx>i1)b%FUT}E z>LMHk2@cV1*>C}43v9XI30=cT5yPZuJBhn6v`9&=Yh9R_?CWHP#|0u3*LUAq&*}L3T4lM z9TGOF3s5LrUl$&Z3YV{i=^|mtBSdym*dEmxzF4^GHq=XmC-@HouVftPce%1Apx@)( z(S64I+@Bqx`haUo$Cod-kVdfgk_-1l{I9r@E{NkbmrW%G{1M305D62+cYyj_K{2fr z5dslS?=gbWNaD@Y!y0A{J;u$9EfplTFjX`@6PaTxAzj6sr>m*gnAoGhs+oHwFn^QT zNH=uuFfLRxzsnrOI)eRlZ(D%-j5G_951GmUU~9RRwA>_d#~pzsa|w%~kit!w3oEId zu?V~j?$HUj&E)JT!OY@9w?c9kS3-wnySd+JQ<2R*T@2nHt{d&ga=4v+AaZ~^{|Jpc z$XU~Da-Umr*4!z5;O~NzeV?07V*VCu(FuHHv|eRc~>3OH}ccz z8q`i4`9U&+XJ0@hm-nW-@_GC*d)Pe0JM;waBwsiiRxa{RJD`4p-?bRv89(+pK&Wuo z1BfgZ?pOn`K{zEIV53l14c->vbSh$}3#VC^d#?rjIXM9Yh%P}pJVL6c6FWyW-12Q2S= z3uDEWJ~Z{7vb;Aw_UE2GSYjSOb_MHtLv*0_OqhzSUSl|p96Hvo}r11ymiV^M(PEDqos%e<0FEg1aI z!omXoG4}S&yNnw-DRA8Q=6?R(Eu1_Yr%W+*bMZ3OP@DUW8)7k}UH|bD@c*M*I1QON zIB?|9K$D|=8+(U;kou1uHF5aJG2{CW`F*tg_zC#`_u}@Dw;w%ZqJ7|$34!Cr3>r1z z_uog2w;w)cVl(r%X2X6T*UT(!-?o{PgOfwEKb)FP96NN-gh2brBgeFGGCA2h;QzpK zbZFJW(XmC#*8R; zxA^R7xOw||`Zf2gY15aCE`gIq4hh6F`}EkpCj8ZB3ZrDu?e}qkr1Sr7M~xaexc~4W zL;m%g+uFCVcl_|Q|KAP%tAq3N2l-#mrny((@IgbST3DE0iedCZjufMAC{1P|6UWONH)n0zpV$5d23E=&kMWr zHjX^c>ALf^I`bT7-JRF<<1IVz!ct!Dz)O1Yc22y=o)>%boIS6!Uy#6z675~j=Sj@k$+BLl91h`4_c?G^O9n3JKrRu~mGXe@OlldmmMe=P4_{?pe!8?Eld%YDd0S557(hbLTkoOkGxh zEa6i>Kc#;5qJFOB$Q!(QOLJdK9MH#TL##24fcNM z+1Ct!p*#;B#)`=GlNC|FPv5Qk@p6)|Gs|Nb)vJ-WCScF=EqKWu@?;78!>Bs_HKTk# zUX=aGF8>Q}+4)0D-+$}GGui(d2^C^IE_8km*6JTm_PUrE^RI{f;!9Gv^%p~8$(N*r zFG=ZNk_x^gowoiWh^jA1Prg)~DfuF<1j*ONrT71ANM`+qk*|!#{~p)J$jESdyzk!- z^SHq~Vx95xY5B^T4BrF^e7s_w{w75;hw5AOXxW|6GTzgZ16lSz)ypUWW0}<6n<(gAK!r ze0X_1GKiH5>y?!kulR)*V~%afORVbh24`M}w?W&SH`?=BOyjP+!kd?L=bIvSOvMce z*z-=#d|f0K9r(KTeC>|BgcJ4U6+L(x%<9N3I`Bp;jWA>Dz&n|rhf{Ojx>@I&{P*6x z90X_HSZx+iIPfz28r$|CY}a<6z*_d;rOkNTPP`pf1AAWT%G>nhJ9H;;sWSy3wCX_J zX+?`9*Bu}HN_2$OjmPGnWe%O>#k9e89$qE5W6RVa^Tzt#f!gg-fk zoXnZ8?M0sD;p7DEkir17s3vW&y2g`bW9jLsv|FF>uYGbq_vg7 z3~E))YrQBL($4uG={S>)c*>ViR8bUDDGFmJbc!8s?PZPwNumQ@nVL9iMgl#3mTg3t zrL?=ys%CwlG4L7Dl~;~5k8_YYOkGybKVo>&Y&{L3n1Xc^`C60tdYGCpJ{)*kOmvgz z`Qp2=V}D8wK@z#Z3L_-HoYgRV3e3aMJVY!*fQx9b2q^?Hp%U{@-Gy(M;SEBo$&_3g zmwcsJoz30*e{7b+hqj_wzkX~8n#F#r`-uMEw~MdUpPFSv%X%V6#vJ+or#bg%F zi`mAi56{%irKicGm9LY@!}SNd&k>XN_}?tL`gry-_3GkF|2eiIl3inmDUJbNb{#s{ z{fp`I`}ign9$qef-Ap~)e{%dF+_F{c9~>N=TGZ%##y88GJ+?KwcWPVX{{vuc)b+1unjXv~C>EGJq+t=jk<>&dc`-kw~xAm(cpIYGP=C30d-X&K)6d_<-@UQ}c1; z)6d1#%e{%+Uw?t|UIKLYo@R0ri*CODp57+>*Tvn-A^9 znB3ia|IpU%qolj9$;E{Bn*I+eHP7D7*URMA)1zh0!~TGo8|K-kOIK45UwYVfpM8Jd zXvE~$+T`Zd15d}?2s@LxUhC`TM)CfWXJH-&Kh*SLOB4FluCY_gfF>57bZD@-n9y-# zvZnoA8dG<{U^8bIA6F;$p1yVs?Fcu$M@^o+d|cdnHfds4x1*h}yPvy%lNwL0%$`~} z)_7{+2v05^80j>=+oelS9q_ z0?aP_yL5BJz;y9<`QgJz^6;p61*ol`v(2N3O4;7Mx&(N+e`uWDhfwL&bZYUz%KP#7 z*_#U9mjkhtomt|;NHo8?7G1p2gC1_aCO3a~Pmfmb8`l<%1IN+iHe%42F@d96W9ay~ z+ckFS=IZ0_>*>?22LB#ytZ89uw*W7CG=4swPXBr$pFQNSaLq09^+3mXc>BEXeCk?H zCpVKD9tj3G-e~jFZv(RVZTI!}^ELVUJ37?7{ASeO*U{nq&~WSJ?PGpi7#Hp?Fzn^h zwXw+zOeXW&^a;U>^GV#xv!^>=dc@JhuG9Ol&0I6>3zJRk+WlL|=}Vy|79U2Rub;m! z4ZkkfKS7;mC2umsd-+j`A%{zJUr+j23XL%;ojBP6wuY~)7SU!E)7PXKA3cS zWA>m4xaNH`dAN9?+q#lYJ34_KA32f%<=IhiH!yelBW^(D$3p2<238O{L z3RUwYo$w^hZMTfcz<|9 z-%rDzPnz9aKc6$rm|4X0HTW0H z{BUTPVV-fFIBxs|ufQ?GCyX$)@EaRczec)9oN>fa4qUzeVK9`3$= zW>?+2__i>0rzzDufesE8uRjp;WIz*=$=k)R2bQXdsP(roO=yA)%ELT? zcEOtC>yC-b&z)WocYnLjp4}JBnnCB`Li4AGOUtjc666oek6lhLxtp6~*Y^+3JO(|y z{Bd5{#l2@Qq$b{;J!v@Fw?vlKwoS{{En7IXY~%QYV_>tEtvp&d{cF`|VfW8f#Jn(B zn0$KqdGeSnQm-EF2iI+)2VYvTQYeG2z|W@TQ= z?HW5$AJG)o#l5$u8*)(uP}A_5JoBsBzz5c+*uC74p5f!)Z8Zn~iTNq^njjrNrYxT) z8y|UQ@sHV%6JSIk*4&{^?`J@#niUBDXT%T9#QU1Gm)Dca+jXS zIFKVZ{_w?|FnmHV1ws@Ff;s*EH{Iz!=q>((-V%!m7Iu@jx0|o0?}wr8=+H9Y{fup% zetg}%U3^T)h#WtxVNGi0r5eWjb?q&eO{jf)76%N0o$Qvt<3?9pmMzFd(MPvuG(KFdgMB*PZWi-XNEo}} z>1=vd;CgmyK>a3c4Y$AVc333QF3gn#>?hw<34b6EOQWhcoIe>(ujch-D*Q=nr z^{cfykiM6@i}ry}jTDNUI#Cnp358OeCx2fJ z)BB1eb|kq1WEcQEEYb5d7=+1s7|()$Q^?tqfa+-_f`B&59z?lpdbxpc1FA%3sCV%7 z4x}MnIlTsZ^mVUq6nVTn0YkC@!vgUt7NnF(3UGd@&qPv+m4r3H)IBY#2y3loI3&?H zHX)ou<8%Z%c?>>Uh#8xaO;8v$h4sXJZiXkKHm0F4{RD(?vMD|ZoP+e@C){)r8}%!2 zUQFx0ei}U``8A$AU(b5QZ|!Q${;`OYvu)lGbPE=k#2VBQ=jMF6-at_WJUKf9&%N$J zV&!&}mVgh!!8+Kj`HQqnl0F#h>I!g%b}%~`*>u9(>=nR=|H}zkdB?vO*OEGp%sU4= zS&hd~6-xUxIy;{aw~o}UQNoRzbgtCZY0=8lV{)cXk2eH$%GZa$M)n2DE?zE#oQ@7! z5e`$+Kqcc2Sm~8`qWTiI`*;O@{6X#PCCTriXY9P#4Zhphjd*`a44Yjvf*qFe5}R!S z!N5?WPm;(_17y<_yr~Ptsi~=e_TzLlh7R-e@_8SMgYoHE&y*s~%Z7zapWI0u0;F-i zT+B95s_YB}LQK>GSb++2i%a=A1CQlDoubOHE%ghnjE`+C+Ve zGgW~!@W4T*SEJ#DG0=yuk*Yzy^W*dd-Wo10UkWRg7o>|D4vFuEN0(6TiNKL@tpv4x za|<`2X=*37ecT%14Ncr`cLk;$CA z^=Li-8)pK(H0!iCXe0A`C%_z1pTtB(@QYS8z?QOm&@%28ree| z8ID2JtNv@ zMvzTzdHCS$`4TgNznT%C8B7XWoD&Q|w1)4(FPT$tQWnd`WB2val)--WLI@tq_CiZnaPKjcIL+4i?T+uKzoUC?NC%yc8cT#GF93?=VI4O}~ zaap6#C|$7$J!{=mj{?mkP17hQqNGi{m)nm2LK`*WM>S^>>kYsGlP6O$#2q-*i*H(9x)#Wxy-eXv-PU#bV&0BUF& zg9}BD1!ex)(GPj|_V(t}9ZYj~^xX#S_zqfX-SGqy2P@P`;|(=TFDND7;lHSR9)d%l zwT{wWVXcEkgKtl)KR2S@?1XU;W>?2_wtRv1c-$?uxc zR|G_?Z*h^|T$%{(Y4C!`$t*lw7D$riOPe+2!!p@BP2+OkA{B=IP~Vyd2{X%;8idgjiuS zYuj|t)EqW|dAF~xrr3Y_8+Q8Yl8=t`kUB6OWD3X0q;w80ezTgMpO05Q3+z`?abwf- z9WX-09pcKk;N#V5fjOU_@{^!gW9-Q2_S?@t>_!(-DUoeAgIxcKOG0j?X;N2xYJ%xY zNt8$`5Ah9PgMAZ(VAO!-<8~sMrywg>TWp6pcJ*R-G_MRN4N!iF$x0PI5&sMo#SCJAo^jj36a;xZ6g$mNC3>D-kv@}q9a}b@Hmju%X zYbCEuBH^AO*R& zL>oVrz!$z0;uB0CpzUo0py@PIfz;WS976zx@J&Jza0$)-ZuI8U&9`rFr>hq@6pbq- zIW1il>d_VSvFwzG89YGat2E98Q+F^vSOe4fLOvoNlv;tAw9Q<8bxrJ{X0SaDY{sOu z35`?My82+%NpCmQWAnTRFD0OE5LP~0uU5OWbwO{5f{2d|Rh+J7i;VsTTVWDz6a!;z z$OWVx1Lz?%5c8NCR4!8kZEatcmq7PR9IfRw_;!p33@{dzFP2VbeP++>1MT*W7>$=t zfV!wz0zIl1k?cSP)(47+^n->NdK}dxqzM)Jr&R?C=yNEMr{@>>@G#K}mPd7nN@=KYUp!%Dcp+r+ods9C3=kOuROHunA zY@z(XjEqOwE^oGw!wNk+r4Nvnf#Y6nhI!bR3p#hCJ;Q08ZeWMUPCVT}T`_uPatw7^ z+VI>f#6T?6_TmN5>6D^e|AaDRf47CWAm1t=jEkFh-yvd5 z7Ayktr3b$*K_p&kDqvQz4ee*AlL{u7zSj<-F(HNia5)@ND@SjQ(b;war-sb|7XQ~r z-;O_Ae*Wpvx1%>7AN?|X|M}hB!`^rAd;isI+;ON|bk9ThVc2c@g**AL-~8}T%{zgW z@Uq`@=l|RL6Q3G_67%qz zF+=CKcdK7D7dHE*11^l9u*@3@lD3X5s(oNn5MHvIoG*{?#N~*039z2c?-DDq8V|=ynHp$U9i6U56#Elv=~8yV7Zzwa zBOW=e-~eU&r*;c;@{1llD8Sd=_3nQ9@bUJCKP4X|971>j%7x{TP=@^uca}f-4LwR0 zrz5#7eess$yVV-6fLcVwwSYzooq*fX(0;U!rkSJ2Qdn4`xSctqSRC0z1~VM zJA<&lomj^mfvK@6RzP%f3QxkJpx?sd4SRfJ4m-PO zawNBD`qsF{k%I9AMCk+o{=D!nflv4DoQ?vTG+D*B*CVJMOr4)Nze= zL^t-QchEnqd5yF+bV{V6zQn_b=x%G?V-LZ79huL># z9S{xKv_xPC&R`lU8!_M|+}6+D+<}IF3wDC*gqP|fcn^5~oQ+on+lWa4>G(gw-dJOp zw;X+2gQg=~1oAa3+{WMc-gF-Zr>g|q<c2C_FNSWyqh<@r3UFmmR8n`N-*!%^nwsDgPwv)t?>~IF{f?K5 z4-|H+JCt)05{=)~#RW?}9T7gO(Q@~WfAEmr0p%>vYB7QTf75DiaIpK>ar0Az@HAPK z7C5a8HEw-q-1-w2w30hd_HpYUl|F9$!jH}AXzp6T#5<7M!bb$>X*h(d_Oz7Do)yxU z31nxh=fySY`{h|O#E0z>|KV8TP<@g%pmSNUXK)z?NpuXAW4#A-OMvo2!h5zSc(n4i z3XP}ONNy>~0$B&o^U)7Ov7dBPg>W&(%VY4A5MC6Iz}qVq{sO2Gfz2PlHM1MJH9-xu z)-+FK(Vs{U9(=U;>~`lsV5e}!qaz-Sq2SA*1!W))-8p)LwrTNl@ny^6<-#$aIdbh0 z$`UY!a=8UEU5!`c7ckuabo1z^HxGLlVZO|ZJzUk(>F*D<=qjy5!Et9;UfCn@_ubmE z1k2rzt-Eg~5r@edR=w`UXo4!tKL{@0(WkNbl7O#P<6n2rScnI6sJ?;Q`+HaO^_%a82__Zn=#`;MlepT zOQB8-sjSt1FoFns9FQ^G`4uz;JOl0&w832Q2RY&fPRMd9t+r0z1)#p1q4T$8ji_^u z@_}<|>}L6k^%OdXmxD_A1mzSc#l`M)MjjUP0{1yAE)OT>A9M$Q4rThvO`ZM%Ulg`U zUR}{Sqp}Pm+)L!>Y&x3KzSL`8&=bw>HQ38;V3r0AsLf3o6k1R8V4s zGz7y*7`|{4aIH;<%>7Qne2F1BX{qT%0VPYdGsc2B_X<87#JLj2}(OQp+*PM|Hpj0Rnk*>EhOiCM!M=)@h? z?;c|P)|(M+;y6Tz^VrZP4s>iXh!|D|XDJeNOUJs!Wv}z95rHX&zJ^Nbl?NpCPq_E9 zk$KFSeFsHxrVu~lg22ZnD5aQY+FG}z_CDc@=c+rXj9caJ!Ejh-UHpY7@gt! zpMLsGhsF2r#y{V}DFvrTO7M241jllUHKg95{pKbJz2zWra@_ms?c1+P9>bh5LF`Hq zfh1VEJzxoswdrMTUcRV9f&EqlUAB#K9njc}pvU3VX!ikE_I#rP*5TNgx|#o)J4!XV zL!t2m(>m&OI%ad)6D@s(JlSycuVBd0Dig8TP%M$a`t}YB_2K5@t&h+zk2j2;h9j;J z%?PIfM2sTO&VTzP&6Yf6#)0jNg5KLl8yOzr7~gYPwwl!742qS2>1!2rl^q>vBqUn& zh<$T#ga_MdcR{t5zL)CNg8W7JxzR}|bMVdw!V}=O=BGd_(!&B%KRtkr2ix!wJmj_` zI;KarqKo&TQOmnM{5M#F@y>GM>+dQd`YMvkDe%l0q(ZQzW?3}N4lRx_712Fb*aL=W zAVQj>SJ=fzQ!$uoEo-daJ7uUMs)5QQ=nL^+N;$sl@bP4v@HZ5XOVZ^*b z0Nyb@-!fiDfEM`O@%efT6CSW0CYbZEnGQfm;lmtzkkKba_(_Iq)Mo9KFk_C6K+bSD z$t-@pstu;8o`Y4LoXtB8vk9ih8)ti%)CBeZX+m`iT}tT}wHf<4rzXc%*bJMY*z{H& zmec(s7YvTL)R_^RoegJ@C`?B+*s-Zw&1Iof5Ig#CwK9DCvhLWdLX3(b*MLU2X$E6YA;zXZH9A~Qg^9dONO z%uM1{V3DTMgJ6>}HTVH+ph<%13vA}i8y|8Iu7RJVWODP}cSs}q=>g5h=QOfkj+P5> zGo^(csOI-Lj~;|!z4!Yb1=EL(kPl7b_uY_pn3KZlVP>Gd- zDI(1SdqbVgQE^O*6WoFUCD^bJxyJk|{zxBFT}>Y^Md?P~W{eXu&kY zw;v97KYjR=ha`6>4M@KnS93Tu7vAWnhn4J|!x0qWvo;r3 z0rfH5=w%)cQ)AiQE!^!6eeaf+^g-^7giO@YTEbAHD)H1bRM!?e^eTb}3q#9%iVbL7PdGXx7pcH818- z8)M{L6?s$6D7u?P42#N#*{D-`w$3gZxp4dvT<~adb?M3joQ1*X2kXCo+Pr!Fw;gQf zyWw`Vf^&HAJDHl}7{{y9ZVgILnBGAwTKFbBF}k|mJ+82?dPNGEL#P9?iva9)^W`B_ z6q44j#-|K7slwcTxxM)tfLc}$P;f0xv^0U_agYdPXTAVJ=i-bbm6V5-q^52%Zs|B{ z2}@N;3z)WNmCt3faB5vKce^ zrf^2H1qN?VgWH}s?+n$`u^LFYx0-8Npm0~i9&gTlox0ip=@C2(jifkK7*8+186(+4 z=6~3ag#8;tA;LGp5HU@=b9k1R*Gm(B4Qp^3F`lGwS2+pc)-7@kQrSHu24KV0-5^V~ zT+qo6LPn$d+6`@-M31Gx6y{%eIaUhK(YnS}VUgd42+3UArAIS<9ha<|UrKnzGkuz;dh@)5PrD&- zeG6RnxT1TknF*+om~01XUgc;6(&pOm8$qU^qO8GoLd=5WCS-4D%)C`h4Ki=td|)k& z;fJ?(rcbIaWmyr))Z82{nN*))lG&iN09K691Q{G5TRtt=lR ziHs+h?FO7&_`J~ZYtRl)P7q%&+Ly*l_J7(GDurfr0)3SN= z)v=wcXz5|JX~LdK!lWN24iKx@zLhwHC8%1u(<}%a1~5lGp%qBOm@VhK+2I5I)3<*H z_Rmox2p8Yp2p#QxF<6vyRt~U9m}{5@#LwNp31y5AWE2#bOh`T3B^XFe1dfZK86dnV zYL1=N&M)dGywKzcWr=$qH@SDaplK{bMmJ1Xh$pV)z7eVcmVqg*3`;dGs<$BwJ>Nn( z)>q$zRv+xP0GQfS1Q>%mnM}_QbjdXI=*n1RNAz}XxeJ-iv9a1lMjfQdRe%*V+soT` zsNwTN5p`8vv^6V310ji|1XPwo4zZhfB(yi&l7Va7`zQ%v;f=(7V0#a130MCGme)*C z#2TFtkhT)77UDRj=r{YzTh`p30BOC103+@e3~$M!H(|O#Bk+7XzT;)VBdY?3Niif{`6K`kpDT-5}b!09s{<&XnW^I zE<~-zk6o+zuZmiSlC)x5386W$_TyCM4mH2qBH^-9)9@w*faMTw4qyBM~> z`qIQZiUDf|XBQWJ+nAE69~v|L@b^4P8hJjHDyX_!o>^l&3d^fwB1|vmA!&|xi_3E; zUoBL$6Y>C3y;$@$42eFD&?XcRy*h1FW`U*GeM`x08DYh|IMeLLJWn?hEzO0txI1!{ zwqMh6fg?{^o;EYgp>*^Bu3<)Wq(RHcLymC~wC8E>s~>;-3cpXs`y7%R5OKRQwk=_7 zV`|%%PlJ;>sg!nyTuq4$`i05D)L^^Ys%$Sk`I2#!Mr(TpbHZD9Da|=yrZ?(oD->G! zZ1idL(rN{9G%tWcwG|h%2t@egFs5!*p1YWiHk~E)GcN-=1-I8!n%mnQd36_tE5k44x>W!_9mtgA7X#mf7R%HC` zA8zhT`3o?ZYs>lT50w02e4MLw@(j4erE@3=rlF8^1tCSG_%J)irD$H451i4AR(_8u z2nL<`ffB6xqfZd{u1I# zFk7W6uZ?oYh!N1(%!7rBMjWlxHPW}&8_+m}faNbV-RXV2HNQRZigLh<5wH)2i9NVU z7}p38RhJ#TaRD?h->qJ3-jiS6F|bcp`lT1_DQ(HG60mzzEXv=xyBhA*l4s}Wzqu)VDu)7&PgjPZH>ln8?jlB?D49f*XEDnhM!avHftG$3vJ};1F!9Vo3V9u}$>w0BMtO z<9`DkDE}O{wWArN-c)9;K^@3|q=*w|jcb^?yBKEa^pR}7l#do?pS+~zbVYs3*em#*DQE?+>OQtG$OQ)ZOu zfExednZ}M#L}KuCfXeqLM^7IQo<2Rf{ln4Ii4zIn9GDV1IT1S|rl5E9;mnE4unLAT z3&XPl%l7h?2fan)3=g)AyD%>mBE2ZTr!|UI%BXL)!4@$Mj_Vfv1tnlQpN~gV5;apl z7831jb`8g#h_NZ6@d_cv!y#A5Yd?i1 z0xlev`1r;KY(jO5I7+N2Z2u#8)9-o%7F#1aLI@&o(sQJa0|l-x=zE|HF}pE*@<&?~ z4!8!<2mZRh#)1&~|7mKm`e3+H57p)%#$?Nw`Bf4Fhu?lu*P7DDwY8>RXe1yh_E-aA z``Y4dssL}DYnMAZvtuNfCfvH)a~uz9@3d7Bmy02E!{E_DULJ2vyfW|q)k#k%C|X(% z?RFZJ=q6iMSNZHm(vWZHV!h>CbB0td$SJhXDXI%hWZ(u@=LL$%Ye3MKF3qlCY~z|X zu=?B_?rlc9^5Zp!bVs$6;>Iw*dv{+_aRq;#(h*o_Q=Xx4>Y-yW)KmS8Noe-coKj3$ z(T!LpgXIbl0*K97_n30fG`D?I>^chP#wu4iVx&AJiY3;x9&T4?exL46Fxxim{Q<*w zY>!Cnw8lt~AHQ=OCRpBvCdYJ|_XDKP6mOL32m%iF7dPYqCG=2`neUhDzv#kh2qW~s z;A?bC^0N>38@JIa{e{h#1+o+dDx2XAxF-x^+^d_~yg7?G{3rNgc(abK5HG)h#c+H* z9KS^P(Wyqz$2P}`MxCF``D= zBVvB&$V|CW03McQ($=eoRQspC%GX*n%WXVxp9tHy1LIRP_*n0zkktUDPov`gN$B_a zLlmfWRUa8M&-|Ll6VoY}7o^(iV|xqy9n;!s44x6ehY$Qm z-^}91i@_A$*j?6&IWu%bFe|c4NYKU0Q&gUDfA0=~d z39hv_=FHIm&0Fi?I}L2OnE|Ix*OSG})B0>Z)ie-+oxF%)v#is+tPh|(!Ae@A-Q~y4 z$D7x;({~>}-^KU$IdLKUN;mNW17AH47Mj0v;>OVyyp0rCOx^f2bm)#rJ?cGL`YN;E zF3wg+m;onEgd?6sqMiDpdY5Qw!+gl80G7)h9Ub(MoFjR$Ue2d-WZmb+TEKOqPJ+9@ zbqXj6rtXGkX#8=<19yj#@kY<`6cD9kTI`g}i=CwvFcQ9}linIwi?|F0H=sBA=EdTr zEyST}qPVc_n5L85C72%ROKrX~xY9e|ZlmUd5uxTrA#@nLN%p-^$Y=pGl;=WBX?4?l zcqFDF8EXwQ>>F!q9_vjlr$rqr z;wMJ`qHAeEv@45jU-NJkkhJsw`?M6oFctWQ-*WV$;@opnK1Es}~2yu^4s z5L|7P0P@G#s!8T5ke0nT&PE5omRHek`KpGiZR=^jG%n~j2`E&5on7>@;Pr+1yIFl5 zA5(R=!l-Ll-nDkR3Ox)vBFquazjWJ3I;UXbn&A8-6Z^v>En50;)5|oY80UT0&oltj zg;{poMI0P(Oj0J~HjE88e{#r11Y_=a_;;Kp{BT-M!vr=9_KM}2i!+tcNelKsW_>b? zs}blxZ@7B3H0DulLx@q_(N(~ysjoIVLS2IJZSUZpPFbX0_?_50BxoC3_0%GDGI>5b z9;CoH9^{;P)KE3n#d`*%n!^L~(0;+;p`(Y5-VM9H_+F0OCSspV+yUjpqKKutF`t+w zMHV19!nuEge)&#sM*ubYj!SMh?yNdFdM22$BNt}ZJ=g& zjmHs1^+He)zQU+YJSN))b%Ey{bqyP2U(-rK2n#sQshpG5Hjl^7+7wWSScqw`^k6DvHe zF#*Z@Kwj5$FJO}Y&FWlfHQOZs)GfL&`aNl8P}bVKsj2)J9v6FNI4Dz7 zBLS7AHMM7(gN+{rZ|K>2v%6}#u2e;S3mTt1ewX*~^<^hNxhf-&wD!fBtpTp2foJGC z5~WkCbjnob|6zE-1thCG!njox;UrGDdc9SPmR>CEyYWxub(Em;3HG6~||h z2^(X3iy8C!bTHQHvX_qHc1I8G`Y5)ghF9An5f*upmn6dR88d6Y`NbelR7`iB?=oZZFH5G#|`qw_#7pgjCMmBp@W-8-wK)BJna1y3G4A}RFFgiH6zim zLkIUa`hp>G^l^{d06S97V7yQ&a}qN=ZYxkQBr$msDmo&>z$9V9Qw+S3Cgg{*@UY^H zMkIG#bSq!YXWbA>mr&{mNM_lTMBhpux#UZ#mk-_sTCb*%*o5kM34ci~2${w8?4czb z=+nbO%Use>T!p&~zc+&#=bo7#eMyxbQ=JzRgvfkjIr@^TT=Em{=%R;eCwe{v7r&#G zC(eVY97)RkpBkIldW#GP@edxyIBCj%M*qP=%kO{ll820`CsLdTLIKue7C}X(n?#i} z7@4W*TUd86^x(o^Q&RH-Md{swM2)bRJTaPO#k6T<*geBE5uKT5s=X3tlngNssf29H zQE2J4>T87_k5eNiNW(PiT;~@AC@+oe*-$x0OG|@rLO7(MN+8qeF_qroA0N+F_SYO9 z<-n-Y+Itd%Jn_u1J#uX(s(40L*fMIA)r96DhW4hkYNwnY;q8Gk4`t{qQB0)5c$hjz z0uW1vk?UnpH*fDZ*O5&lRvczE3V!u~iAqy6x%beZC5Inj0QynXA~b;0l!zKvS@Yfc z`S{A7?*zF6tcODhzL_5lCjDQ3O?oTKJR-7^5;B!x9W_Lc5#I2`Oi3X3SJ$w3D_j%r z&pbupsH2D2Sxhe6woRaU*+)D(hlGo`;z>9G#z`ei=WsKcK@g|9z>Fb9+xI5%!1j`Q zsM6+wFrNRSnI)_`0uu^ApxT+}BBlNes^mr7|}k34xz64e0ewYnBcf*T>l3fo=gJMpWmLCAk7&w{)UMvkP1zEC?VTBf_p#LD_cyId zkBH(R<7-=c%_Ne=(3>DuC`DR@BcxSuT$0sK8B|Ui#g-~vl!=yQl*S3`nYOBES3L^h zc(dv}?k*{7rCnw+RZawGM@w_Z`9wBNuwR!n?Zn48{%At;_qd_}br*3B3T^7p3Qnue zky1>4nvD-#T13esk z$HP9^Y!!!m_Qz*m`fq&FKRzDK9=I#tH3-tr@85j)@Y>i6V~{&7M*+&yW>ncvAsI!Q zt%h|Lnb=SI4kJ8N?|JcGIn|Y16ViDJBQ~xHwB~tXd=BlBB2>1D_RAq_c+Z?(tE^;qWLcdMI1>@WpWkSq5^b zMyVLkHn8hWpNk5VceH14+ry*EM&_Y=w#D4bzzy6g#i=>>nLe>0xcpTy)qnnTPmf42 z4T4md$AcB6l9fr-r*Mv_2;+1v*2C!xNp}}3)-(ZAkuSKnNAnT`I9oT$jm(u}t%v-s z>xK(thfzJ>_Ok@~$3MVa{?yOC_I@C=uC4_LH=w@zLrFre zVx54B%+JY3peNzsi-{l#y&N4R%eo$yEt|O7ppS^+!Z(6@FocDY7N_TwSd!qb@@|&gn!20J* z8vD#uQaPjAGtddF8|~nQlR<&`+rWx(YbyD)ZqB&5zY;U1JuTCxS;Iwd+Rl{f$al(- zl#*nUCdgqhTQ4S(f}^3$Vffe8jGYVUvGs7r)PiVKMY%#ZZk1Q`U`Snq^jFKqPsT>o0@ zlv2Z0Abl#2E7P{11`6W#fak&6ESBjQGU}u_{@I78GUykVH80Y{ztr(zol#?9qr|P& z2j1jG#oKg9DJoR)GWKrmKaeo0Low={cz9w$S!aB1fb^Nh6OkoawQ`2lu+;qwODj-b zTQ<*Pb*UpZw#Y>Rh51qMg*4bSJuOBkgPFCnu1X=vUJl1V%NZ3c*FegZRE=DQrTlHd zMwtVm`kS+AiU+CPlNR`(E_BI|d&}9O;CtK!Qv{EDoCaibe10YazA#HWr4!oX4=m&jBIGkwxZZyEcEFUDc&~w zi#vgXBFR;Ojz5Z&*JT$?E+4BRpx<2eir+p>Sd40V3R=(v*_N~LIVfaY+=~(LJSCW3 zTp%8^l0f``r+yCa$X7KO$1~(~K-t%3#yN05t^=Ld&^9UJ)~#Oln>a98y~q+n zoJiGnJhiFkXIQU>CeJF{9%2EZva!$ekCU)l0`-01(LKA26kg+1!hkm?ir}w@Wn1Yy+5<)$wPQ1%R`tI%}|4ZnKk-e@PRnN7-R9d{!&?9m&-f zeK{9maf}EMWwfB={^_P z&5=~2CI+;2Yn+#OVxky{45>}G{rY1lOUS9a_48^XT#Np3gc zaf9$47p;F=@9=o}a&Ly<|MuQT^8NYELxCgX@c6g(#@s+p+TZt~5GFQPh&MKMpR-Jx zDdLYnv`0OzeQN16K*c&)k09-K>EoLq^F46?>ZTS+=qtgr)j%!4e6sZB45pmff&OYa z{TCLq?2x>f_JI5NAVb_dPIQ;9>bmG6*i5gGkz%D#DXSN8Q>>arWfKkElkMeDCE#H$ zou6)o7s5VIAUu8^%H! zc2AXzYP^z&+tRBXJ#+&#QVw1jHckH57GVxPtA2zKLV{`G412Kp)p9l2oUMD!3z`DS zoNmqZG%V2)Jh2dGlY5i>X0Tq)$w+3rq^o~oQey+C8zNtrd-f#HgUk?{6x4uA3uJsP z7*)&qf^0BBqm(OEo7&@4`^`X&22f+U{jg)mmDa2(C+c%vrIL%B-JsdJS&o6s+A8-t z;ko*furMWu_1(?KJIdjg8`?&O2d^LYUibdT|LDzTxXO*X&ofSFe36kHvf(q6B3gO^7SNFkFlyWVUSNFS~3XXc9{l8R?p^m4HV zjjW$h!_q^>=r}{LV##Uo;c;CZ;p7WsH-`{|fC2eXfbX7O_6`uE>^z5a3*g-KwbU1C zjHWUx#;E;YXjqyUu?^P{I0ZOQ=hRox&SL^MQe-_mIADSUkRz~N=n2ks+OjUauqK3dwI>5yfhkPKGq=|`c4sI%1|fIfF8!D!d}{LU1sJ(zc8ZO~nlk4W$0%Imez*7WEM4OIVXeXMwx?Wt)UL~?>O=10# zDukMea%sL}bn-usi5%%!jdmia=2sm( zfP$&n!l~I@M;0b)XqcLS2=j<>#!>HEh{B!(APK0MI7%fc}h9FfJDmIen zpw7Y|>e+(-hWRb7(s#__f#Kzg?M1^K868)Y$+TmM%A@|MDJ1oQNO*S!mE-f#cmt)@ z48b^X1wzTvO!}ci=FSge*r2ROgQGd*1r3-pfX`=PYzl<<|G==d>sgd!g(Ml3cTjtU zCEPY3*xSqLWC}vh+;<&2dABhcqEg0kqZJVz1FJSd+k=v^Gu;r?NDXW$CWTrBWNJ(b ztfo>yFs)zNy)(nB9^_VHqBN_H4PEH^?)``P`|oarja^IH0*Wt+%8?ZA&S7NpM2+Hy zMRYpKN0xmmo~5Zs*9SO1BiBWz-tNwr_({jqLIVkw4m7m5{oSm}k-+Kq%j(v22{aZN z*&B2yxcs;S+k$%{(#8&D`q4X6&Y%udonU&Ay080~r!|UM;SyYU0#SL4V5vH-&Lnc3 zmHK?E$bt-LvIwxenD;jSVx~s>eeVc#AV7Aqi41^tP_znQ@Iy%z?*yc_QJR3EmCh=_ z{L8<$9Xv)R!~E#Vmy}Br(g9WC^5hU?g%9O)G>PR48eye;>xzX6*$YYsHOIqYh(GDDEd&MgY!=)f< z3`eTYq7A%O^-eN!byurbC z)jg!F#5)-3W3yry*uTyj{&nweZ@=69!W!kfJ3A8=PwE-YEspJ^VnhnN03~JlHsiQ; zxjd)K!k^+F+u?8NJB44hF*O@HxZ zhSa%IGwdnF*WCfk5V5)jXgXtz9!@%lmjnY3YAJVKELhPaE@qQKb&nonvJ1};?6Ngc zC2ep({yO)l>y(ueOx?*-QknzbQa`rZCP_5&}eGWFEKJwZahU47|%U810 z=jz(MzRh!;IL@`CwwoM>#rB94>PE4_eW~)w*MB9xcqE0YUZvdZ(6rhlt!T-)r-*lk z>&t~CS$YYNYG_F!K)qakehHXWyyCuuAqlKkq-eEZAp35e1jo?dz0==x;En7gwj$uR zN^7tGjx56mEchvL-+q9*6*58*Qvu}jT7%fyF5QaO2C;f*rtNY!=|ueQ&7s5N5u+|k zR@ua~&1|zDrBZr)s;S=WFu1q1i)_mC+4fl>n}kEQ7Iy_VAU)ahJapq#bCz+pKN5cG z1f*6H^-nEfw8%As*lgPTp<3=pEJ@~2wLa^FsoZLoK~;}xI6lqB<7LAE*w_H9wjH3L ze9o5x8_)-n3YN6vu(!{e#LBMnJzUFz$l71FXe9 zOJWC9yrCRkSd5sFau_=bc!gHLl?9#qC&Bc&RFK1UcDdc~$OGMnQN(B&EXMbDc<|=a z?$h1PTc0gEK21A_W-dT_ZRmpCkGfM2Og~Pgg+liG`EF|R=~L7FL?Nv@$WJ&TgY+gN z@$_I^U2UD`oaPtItYcSry`phwe*WOcjr^zB z0p~(ulgb}61SHyyn2kW4-IT`fMFzdWK|BDYN3%{$hhz%Ecr?3AOvq_n*05lz zL`{}%&x{7dpI$n`ANixRBm9w5X0Tn#B3v^zMwJ7m2^Bs=QTP2W4h^7hGSL%!Db+G% z!5Em>rSR<;pWW0+IQ#6ZHr*d&ZJG|&a)83WSSVSX>PtRZ41_+qPaN&;AY2MM$MVTg zE7g-?lrdmFDR)19{^{F+sqQ5~m(%{FHSJIE2I3GBW^!{L-{@5kSVk4fmx`)YrW%n4 z6!oKn&c4L!942+5L7ptk29sFqM;1!w>45fEK(>~`;%IQNc zzq`G)cR{O5@hx=7@HvIZlw#mL^pr0cz4>&5a<%7g-+z1acKYrPb6IrE8H;T=j09O- zkLDm(79+xjcDXnu4-+zS6rUhXk?&!Bo1FIe0C}N!Xf zscOm0uvMLz3pF6JZ46*w^~`;+Av2vF)h(98c#53Hl|M!Uq)F8NamL$|(nd?e3t169 z_~TyL5Y#>qS}}gSInwkFQaJ-NdiUKx5iQ-Q*IKB3rvpQPG)5b@0>TEZYF-Us{wQ;* zsshRNR=3)8zBa+~WBmLW(f5Wvf!sf~L=x>_0mT12?^p%F5kpck14=885c1_o?a5?VHP9z{xLQaO`Zka$Y9v^J^hy#A`YTyE$)w4&W^>&O!)0;{ z+``ETHQ<=!Q}1%EWfwdjhH%+vnxOPS8K@g*~em?2_lmP?rzR z8yZ~AV;@(jxe3dUGnRT!z?C$U5pNapw7Uc05g-ZtCWsr3tjGhpqYgN{1G0J2^w)pX?nD>;T%^5^$Ft1ID9MTGTQDwFo?XI_Drjw zq=Q!Fq_RcM5(PwvM+gt)Bv7`1vF?CP^SBplfgJE}?y_3}b~W7!G`Z4>7g{CNft|xo zXEm;)E%)`wtL*A_r@+zDycmlJF3`;u&Idb z{uq97Ki<51cl-9poE8pFFU~p*B8SM-4TFf#5;Aonq#ZTklg-PKOB0&E-w3bULA{}` zml%YI-fT?-njjC$X8|o%AbIGLNwG9(2u{78z-=O_S-t8CGSg*sVS(JW&k{_714@GU z@T6M~Y=ShuIXE`Gmx;jeAWtkN)%W2wEilWk!LoU+S5LXoG-wMkB$&oT{mteYnUgNh zSVv}o@;i&mvsZBDlfOK^7BRHC&jSLGB(H92W_5{C+b6!GQu^{^PhT!y=i9r@uah^E z_ww_=mGQ4Tq^`7UM#w_r-_!g>OYfi-QXDB3MP7~T+Nlvx-4sHKJtA6q1RV9S2_u(* z{Pt4IzA`+-`}UQosoVMZ>;vM|HYM?h>8QnAS0-dnDsmNK7C%H?qmjX&Tzaz71r-t0#jdvxh9D7O zjlN*3`{CRHQc{p;I=zdHT$?|~Q9IdUg6NSvnA4&Z9WI(Pm6Z}LV`hspj=Nyy%;B`< zEBm5X{uY@O0*V|NFR-6g@hpmckhY<(gYp`=Qr5+kXleHpB4585xlzOPIO3%e{Zys2 zkivPfLZl14J1?b^%uP(I*XE@<4*}=n>m~hx4xifbux(mJUFz-9K7)Y*y4x@25zFFO8xJj{ zQdwAMHiW?$e+qd-2gr;zKvz{u4=fLuYkmDFdW`nkr~>&lECJnVxf0^v9w491d$Sv!uNi@dHW~3gkRtVU|)k9?DZ8D2Gd3E_xp#x6T3jg<3A7h zAY|9;d3rtc#k}(_Jmk^7J0JFt)fUWIy72%=*Mzb;SqT1IY%a#DLRW#ZORnD#M13rQ zN7wbN*ua+EK;2fbu z?8DH{k=HKM!7}K-X(i-}8U`_FI>TA`OJaSuZ0G?Ip{~c-7{Y$??ak}IVRA^%pO&}= z8z5MX77YCZrU}R~d=PZCt?E5<_tS@uw?F);N42cBU=&$_zTfgKMBoS?_k}X5G!pE& z>ApIuTDwTx(=>ZDfSOxHGeKA0Fjy4xf{oRN8ym<Z$PJ5$3wMYBD&i&mzXsDrTDQyZ9(zv=ZW2vtd4HhMm|k zXm!$1h$6iR9%`32CZqw>4MvoYWCWIDc^OyL0_qmuk4&tQ{1D@ta8b*fA;L8|R^o^Y zROZXbAbU96c%U!XT_C;FXgHtB%Mn546Xee*+pGDsoGsJ&x`TA6Eh7s`rxL+4q(~V? zg{&#>kykt%hG;(ot4qd)IFhl7py=}@c3~y&H()+RRzk%ct|1M>xp}Mm+3t|FQb+#n5c3l_P25~4kA4!<&lcYB$m!g}G zF>W5F@af0*AMfhWF41vJ=IP3^h!Fvc8CBDtQIXUV?bp+_RAT2hLpf z1Rf9_Q?6nell9q)gHR+%ssC|a5pmeYI*40BbR$O;sz$H#+vBLC<}c5Wf7R+5d}{Gq zE9ZNQALxv+3C7}rv773ugW<4{X<{cF_hBdDq!#>qv92wc%XcfKVR9k%%v&0zyTwdL zL;7K?#xHlM-6u2vFU^5%vCckP#XMR!AR%CZ{8}*7%6M3mw1>(iD%!Ie2^UeJPK=bI zPqT72NiXxy#$%v+NgVNVXc1pgR}|hj)W58W#?GXQv7dH;fVnX(W32pqNnw3?dMM$c zzPMP2({boNm)9M}P(8Au^PZ_JcmknhJ5G*>+xj;5k18W{8P{6|^+KH0{&9YuuPu;C z1=2#`W87wix|{O~k2gT-E+psspvlG5Fm>1a96K~Q${LotJ1YUFPh7*<4!6SW3Zs1j z2#;9_IBXO4@`;izK*oDP94l`EjVp*?2d zlanRXDM$mnwv!#!x-v*skFoc-Tc$Vk7)QgT$0)FX(wvZSY-=+1U#uKZ+-!_F8SkEi z;nDaz%(d(M);$EFV*PX10%n~dMx-RB_jf}`EZCx|;KSh`p~g0qr5VwO!=n^<;DMVN zB?+iWmSl?En^M&k_^yWKHLWoCc{^!ffAx}gcj31L6l?ha$}B=u*r*Wz`yB&RztL+tlC;^#TsTSQK?{> zpI<9zdg#i0uJDo_GXg|}QQlW{nQOfQuHW=DFfBNTlmzmy5m^=*LwuZYFZWkO4Z4E?&@-p9J2B+b zB6s9^Px46bLu1nVLB`hjWl2bw=hcpC%5%1_m%hD_Oa{_EKpZVJ(fodq3tHVbZyg^@Un= z-W}sXWfz!%qmSR&S?pO8p8GnQ4~GB#Z`)6|A3y!uFQ0$8efMvp+fRQ()cwEx^!_92 zcD+XM{qFAL&6{_(AOG#s-A_k@@B4>G==AO9A8Ip|lT1}M)&UEr>8JZW0;EBSfZHQ; zw*sSN`!VItflD$xIuOLD>q*^W$mhrn+z$+b zg8>tVOSvD=#;@PO4cGfnxvh(462`J3PaioQIAUAgK3po$s#U@{vJGyi)lpdl>l!(R ze9*0&7|wC%4XWK|h>}ON8IM>()Yb6Qla5&pN>5A206BOY?S!G$SIhadUwjUJiuiQ_ z`eO64OJko3PWV0|T@%Vm?uub7$|4hwzEfIwMU@D}A; z5=|4YvmPVG2X+XziF|1FKoirtT}%>8QaTyQ&I8?*$}PYPgX1HS$Rn zO0kEJXkThPS|04>3k?LYspYP6R$x^HYYU$lfdvvj$@=QKf{3^ts z0zaFYmOeKz2YhVSN@Ror5%Lv1!V9SdYaesfg1OT>0-=}>3x6={&Yjp+b`PMYZM6Z+ zYX#Sh-Dhja%ZBroBj$~#j_C!!LDn+!_>m|g^-mNa&dc2O4$wcCUv({2>Yiu{|R!DF+rokRh9pO_$hk^WMq*C>+EIo<1~v2mb;s0 ztR)A7ZiCz?F`En&XJyq_G&F^21Otla8Vi4kl}oLBy}n2JL=Foi=M_;8pA3oOoCKnv z63C1*$V!Q-(OalU%l2Nw^kotY%@g6c)9%ll6QaFXgs^7x=o<$+5d)-62%zCO3`cea zOE%j;_#yRbDM}g;^i|QUx3@Q~s#%2|Cs31bsuGe`32tlH>nO9REuC7LThSrXyXo3Z z=*gqS-Qk*QF-=&4=_Ph-xwMfID3>d`N`ZiccVq;ry5g&|ER#)4Kx)EDz>TtpzWE;P zLB5urmOhF;B}!X! z*tzW-q$wvp4lD0;u{;Y62xSxszEgVizC>0m%gUCviAb0`*A;~0SUiR$C>9x-Y1zdk zP-BK!ni|F>6P0*P>PM`R9z1NXU&RyrzJMVuroWlU(!ejvP;z#3>mh0yLqaHsOx zXabY#inFIFZ{PT5uv_c*pFh545nrp}s}hQ?T);IOY<38D2Bjn|8R(OS(ZFa%+|v#m zYQaQLV1K%nFIVsaEIl1XHInQg+&x~VwkAvG2{q{OAX6O zkjVdXYU<30$AQ#09Gfci^$rzxfZ8ozC5Zd01c4Oi*eR4`EWzg z^g}yt!HI|?ufY$X5W$J7-3-#T%FUqAe-`Qx?aTma9K?>Yrzlf^rK8ZymYFG(?k6Ki ztlF3bbAW!f$u?MC^Hn@ln%QflnfJ9y?dSj%iiap*FvbdkdU1Zqw1O?gQaN*~+FAY^ zh_~nynYB~b8XPs}_kbgH_8#zK&k3*xd~!ed$^GD`_k*9^5AGj+0iKh1b z!p!x*Fm?Se%w7Kk$A&u+zEAzI2WTIN7l1UoUYoeZ#fBgpZP2mW0hQ8Cc%W8UlhdwB zJQ|3FGaM9>LfiEciCT-_LM8rEY(#nh=}9VKr!(YPaXPvF1j9X{*eMHpKKo(}&oeT0 zg-bisSIBC?Khk2@5A5=y3$F!&^=+}YoAH1?`ApM98+jG4K;2|Jy?Kr8yZh*y6Ss}H zFXy)POOr^gPQmJWTz1&HD~KMZ`8JAJSrw(;p$%20l;$|jS1L{E-O*2C>LqJi<0w*LKjvpRq)J0y|NO)LW zVgW{-;y^X=B^BT3Xox%Cf|o8&FOebP_U60Y`oqn~+tZJ?HwxkCxW0S(t#n9J$PB0l za@?arDH_7&v131f{B$?FefPuNkGsL<}yJ-pzxEmDO0Fn<+BVNPzEclj`_HjVP64`9zzf%yl;y~kZHxc*$g^mTz@%;)a( zYNXR60xPQ>t|)u7IUVpX{4@7^pnB3~-p}&k#1vTk^Ys+W76DhMPvT>k?pB(yTr9-?!45erw$OMH1z8&lEiRLWabs?~B*3cblffRzON4Zmji|NtQ1{B=lzB;+W0O>XA>}l!TRUuk> zm=+0s!PsaNCLP~&)i5b-^lnE9J6USx@wxu2jx^0KbE@rwRg4!F_&I^{_+7#5u`bcl z%S3D@{To zPVH(6d4d&-;zOQ<38jYW)nF5rNyA0;pX_%zu0Z0U z!&=!LyHY|mY_3ey8_~ip=semzU~XNR^Jfo*CCFsk+bro7m~)J?2BE zvctPvi0>}Suf@m zs(GR*-fc*#5T|H2OkP-oA{i0QmFaWWSGoXR(&9l7!$$wIx~b{59cu)z+oFvfMS^D1 zFwWi82&|nLHPVgTEE$IWJq!b2X&aDfW=X+ZL{_cV$UHKmwlwF0Z~IbBsfVdpt1fnk z4F&Z*$y&71yCaKGmoH$3<%1aMJe*voW_sWxl-0b_RFfu{9>|raGtcPuXVejRcl-Lz zhU`*{zampGSeENLhvSYhNg?>h7hdwPg`dM?ZncDyU7M(Li4;LpNmk-pQ6 zLWs7!gaa$v8?8=#Yef=JPnQ3>Yw|ZF{lv#gg1?wIU1lnf?xxLj1&_AV^YQxG$!5_X zJYljvOd~47=)Xp&uUnkLd}1ai9ykS>t)B0`fwtP6e9QXukG#Ck%mQ6=k6fufLe^UkXY=p((H-Yc9oK_qySaxPp z*2BP#nBVI|UQDoA zCZBbd!=@PKf>{Zo(Jfl( z{l6G4%~2hV%^U$)XXo?b79m86CK_2Zkse8{t5H8`C(S}V1@YsTmBh|9T1BsAtB=S$ zoR|%Rxt{jwrisW|o7L2J0k!HFDrJ~B0?*@}rA9+r zKFoweA$dyg?($P=79VK4VhPg}@AB){H z65Vnc!HTuv6vq&Yg36Jupmq~#nZUTagU($>fk#C9U4gv9j;0zM!h38CJ=|in1^X8I zQ=?60e(5}S0rKw@O)oueBZyAS6xhn_$H5Kx^67ur`Irbx8lF|)}i5D?G8>&byR36@yYaQ{GwS7m{NWtg;_2(om*qu zpE?Ouf-Km<{Xx~$O59o;U}Rv2%SipO7FbhZ?>9Y4(ji7ui(z|%yWBq0qK!jphA(jy zcnp6Q%W4gD!EJ%tSl|BsrqQoj>FsYvsGSm$6WC6Dlg^UbDk$7o{ zD#Q#dNiK|WfxH^_o#$a|ST&W14cqy03-6iL7#aKye!BVJkA8adj_Ah$JK3q>weklL zA9Y1t6BNYV_5KRSL*8JPZ1p(cy=|wx=Bd)e6e=C@-({Ktga=JdVI;t&5sEuB`hKn^I1ZqtjFN|)lO-95;{&4;U3%RP$MCJ4KPC3*KL zc3Uv?=S1@KkiRM4Lh6C*=5|P5h~7VNI@y!Hw{ni)E%<@sDX-EOIs$NnmlDJi^&Fe? zd%+lx<0*hXCC-+2r?hAT6C*dgMx;WMdwb*x4)HtzEx0&^SRJHJV1_s-Z|{Q5+XoMJ zZy)?9v?B8CPy|Ez1!b#;A=KA}b)XL75eJU~vm%BwMl6%0IhFy_5qFR-V(nPjgeviU z$fOhQ8d;04T^=?5_>&%b!efrqWTF=?RCpi8~4fRME$e0QMkr zly}?z+CZBwi0stEhrT*BHRV!ac=Bg6aYrU-@M3zA!AqW_R~%5h z9awI&+|*(eYwy)lppCJ-7YCG%iMp|pm`@}g=xdw7tqp#fx#CmA;1Pp5$o6e3zs<1U zncpU29|yK+WOXl4vvJ=E==(A#gm|B7f0i^t{&ICqQV|JHo{TBl!FYMW`dLI-PKA4! z0JVX(Lp?`BXDm*FX{caL*9gS`nMJzdvZ47WCmw~=`_g8nR&#yaOKG<}D>cvgs``g$ z0Yqt8Fg^J-$s|^>WLno(5jQBMKArk(c!(_l4+298l?z#UDi| zR{Dr+uE~K}`7zKdPzvo__XJDbH=`K?y-)#6$_BUtkQH~Do{T1nC9mT?IVU>se6qAQR#m0?iLzh3KR73N@5TR}Cn`?2MPzD7J11U-K|j|4RO+-#lOxHeeKe}k? zBXqpYv(B>)c_TvuWA@ZHS{ZKRFL<<~pFh)Xa)WT@M9o_2W*>5?ymNEy-XW9I>1;f5 zUYaTQXtYWDkJG~lth6%L)UYaM{z=Wudpayc=^q@BX5~C(Y+0T%65}sQGb>zCmy&#?3Xnze^ARi;J#@sdv@Utl$3q?)LTj&q(;dvq(uc z6dAA%&X>Lb1B&HIj(}$Qx`-x-)9S3+zHZv9)x!ssYOVoNcMr0AbBDAp-y)uk``@qO zbV8Il8?UgtXOW7_OC-SWu=;QL^~n+9iDXi?G|=!?e{8;R$}7)i-h1J((&?0!fi^;_ zCv_s3vDi_a@-%TCXi`vwe)_>#KHzL>KfCv4C!3LAdXMdpGM))u!(G7;br<5KRDlB# z9-SpPkToRLB)5ZF7)|RmSfj-TSxQHa$QT9$Tkmdu^X~4=r%yMWLg&>&^dy37b@MMm zUe{*COCd27&Wy3c?4jL#idj+zGk)mv-2wvEy@13;T?&H;g;D&bJ|fvn9@$;ZF4*m6 zQwhHVw<{Y$gHS4af;Ls0d~AX+Cem6XyhMsevafw11}>jZ)Uiy_<~{|^#&!466ok7c z6UsID;2Ngx+J+z=lBipjOEW`2rCYCnZb~qpd0Fu*eOkd*wSkt`{o*RTIY9RvD<75F z-Q^LE{O)m@5D8=no%jQ2+Rj*YRdbGoH}BCo3Wt>qLH+P)iJFsC!}M{Psem7<8YBkr zu>kQHd`@1JtMe_eNw@*@hb(=@5P}VIU+bx5pcL43ZUXSSjM%8v&&9-bK;;I4FGq-^ ziIs4+AY#O&>Zm^ZwnzSASgH{51Le?)6u+ z1Ek{%9E2dH8Sqd0QgQGKq6|bm2;#fz{|15$RX&nrY&$NoZ(B=w+YWQ?@GkVCyd7)jW@1kqcZ!P{y% zTrHNUG?0pQ=>iA`cIaS_VzCLbv6+lkIo235&A}f{O5cXt=s|bKOJu$SiFpo0DMDOc zD3({m_x5i1_WkR>jo$qH<`Z^|6F7l@az#?WNKRSK!^Ubl`sQ#nj{(w1bj5Pbb^4wK zD0g;drw}c{;(|3UErA6AZh~km(BfI94l`#$qU*S73IVWIOt;i@2I05UOTu8qtRAOX zZEPYkJ4&I5K(=;Ki?NvEa+HTAl)C0DhrvbaG!K(=`N!azEm`bToY+rSVH_wb z7i%twacH%rGaX{_PrIFQ>JD~eSs)%K6S{8TG;A}3Xd)K`R0;5-AKiWrS9)G_;ojB; z>e&5GCj~H#Q2x1C6I$NN5KxZ3gy{x*ht8Xc3*lf$o1@u7+gK;V^bBB)$r@#;E1O2K zpdHW$1;b@B85|;$qrVFz-F@^*(lv!}y!rInLO4?8BpqIpJ-V}5Czzg8#ts~B7EglH zX2phj=ef%!6+5DQ3QgMSZ>TD(OF~!7EHz#sw*pn_)R;}K7ORn4Rl0%p*23$wiSq;G zlh0!?+Jk6XFk%{wo^-sSzQkT6zbJ5MJAY?nUCK$uR9K}jsJA|QhSl~B|4h$Eh9=$t zzW^%4K06r)1y||TJkzk_WM$R*1z7r-qyqbi0x8o8kckxFP{bjRSd-tcVVW0iY`F`Z z{5Hi>qnnjh;uLK<}r$w^&FcB4vjek5o96TKy9iN;WJ$*cQ`t;=X4@XZYkto$s zPcojA9=i#aU+bby%6%p>U*I(l+i@#Ri2klXMf%+Ksm(CGMXTh2m#zK{U>=syNzbV7 z4b6q-$`uqos9YA;lc0IN|7hj=qD-ehH#L2h%be+mQ6FJSZNG>GTwzCFo}R&N896&% zc(qk6JOQVAm z&}KEX&B?LG_5V@*A)3BuGAX)- z#O;A)ctaQ1Hi@%(12^xeimFjju&zO=abVo(h8rjwRqZ$zZH)%WXk|>94%S@t4kvcn zk35STmZxtCuCO-atL@ULky*)}8oKs|9$p@0$Uz(!ZDXvG13g$(DQA9)VxU0iLvWET zfUlBmwL+I$9DFz17#5JC8?QljQ>c*;ZhbVMEnJhx2v4TXOdgE|GR!bxomgvd35Dj8 zpMjY#kFCGl&al0lWMO4yfBhr7X?Z~tR3*P6nSM#dx>0-hP2m$VmbX%<{lU`*Ou7jt z%FmF#Z4|D$46}K{$cEdy1Ah`spPERP5^U|sVkD+F0vDU}*8u9Nfx(C&1`(j-m`>5R zwjxuolH+R#ubkS07`;+OY_3-?dfLbA#Fpl*#h&5Qs~|vQ?08lEgGjT&*Io+lz&vsr zX+M?y5~4HvT;>@VrVi`|-?pn$cv?%{SY5&*N_^eRqEhUwfVczlK^YrWdkqkWb$56W z36(166sDBjA}1_4*U~@5uX|tC(wL#F+U4+-^N7V2&7zjm@qKAw&c__-FOCci1a&`h zWhqbHb(42W$^n8j@2!P}8a1Wg*vFfzkKJzdZQ<8*VYNlWu_u+crMuz2^0pUbLA|`K z`sMPr|1gK3(UslRWa^G}`+JO?Phhn@ zczu{pX*Be?r4aNO0o0G5Idjh3|8@EH!eVdd&q6%pu1DQNuhGUi!c?11X|I26X9w{S zA#USHL+ozMA{!<8yy{tg19B8lXp)reV`!_qK4&avN>xyx3s{ziTD>BhEjUqUx;*u z>$R_S9NclG({h|(#SEKSXN(ARIpERe=+>O-ntffcrNNIm4l`p8eXz;~U=Jk! z2TGi&ysj18n;m0 z$|b(TU%&VNz=^#72n`PEt3U@#{Rqouvm~2s+2C*Xb<(7QLM6M-W9fi;2k0xI|;_u`zc`sL^*@6uennUD7{f0%ygbao#7-;PUg^ zx7!c=%NaIHMXFrI5RBn=g(N7OIHBe$0o%H%?y2yU8!OD#{9$t{50E4bxMn{I$WCe6 z@R%&+xq(SK4Bc3vqTmn;@>u|YJ1mb!=i{>2P!mpqk79n^D#;3fo;XXEMQ0yM>+WEz zx@UBBW?ZiM^6BkQ+JgC_xAMB@P|5m6A!PQ5%fnZ%m2@k>iIsuUi>BQF6CKROKP8WMpcU+9)o8s~?1JT0evzPH;`5K*lA`gC)E!h`)s_=9omcDKLY z-M*vw0m99}fAydXID)GI0HBDE@DDq)5CH#0bQCVYci`YFIJVsN{^#MN-v5MU>3F%p3T6)W)-d6_EGkSUoI)M)ge^I#1oUL+xCdW3C2D~yU*t1A2 zFdxqs$QQO*AZ&`iO6>zskWLjK1N^_XyIsRgr^!8*r_QoVCV)vr*3_7K(lE(%W_NY+aC-w|vAESn2{L%v#)I=ZcdBZJwu%tI%W7_V(tv$2T)<;r(O z{T3vc1xo-Ti(@MnRy6fe9cg@vEGZxfVC}T%q6pdzE>3&?sA#1TOG|LQfKE&ISw&ol zGAU_=@m{4;rxPy4GB6tJZ0lJ}Hlrb!p0e7H5F^J!i2pleuC$ny9fEFg^bh~&Aqji` z>5soY=^r1BX7R!y!lIIsR=m@-OAuh}5Li+!4IH^`Is-mvIILg~$d^HP&Kfh4@O2#A zu2sSC4q`Pd5OSDV27&ghbwG`dp>*ADUZ&{btmPQ~Ufryh4h&<^KdxPyCb^s;>ZsN5 z0Ikqq;C6&->GN#0jGr7dv5oFcFnzFZJ`2929S;nN5gC~7j7zbL8gdpUv8rqSG&A;Wg?Im=F zqXWCU48D#1WMA&_5Z=&d5!0L7DxLZg)8(Y23DvyWGMJcb3G1LJB9p)aPFpD})Ae&C zq&4+6t?yoMN8jswRHclYpKcJnX<`c87;^-`7LlsYv4!|-dcGKEQ)}^kdwE)~HmxU`=m-;K)k@#06iRKq^#xcTc&Ve4o0If%k*>fCPALk+ z;Kns)E94+aIy?dfNm?z6E4H#3q_wo1B9#gOJRHR%4z8tMc;LloOpl%#R+%REZm9*D zARuLlU@wsc4_nrwGd+60c9|d-zPzuWIqwHc(l=K=bE>_2&Y{OtJX@!`|KVDR+G z=)Sk34qqC%aYdzjh)`91|C;ka^!kItDvCsNV}bj>OP%RD->(sVkgM^X=UOkVojMD>{foJu%byR9suJF ztu4eMgsSkfLN$?3UjrgCWWIAV3j&E?bupljR7Yp<8Znk9g$XnQ;f@A?JlCVZ6M}!u zRiM?#8&1@0ef7-_3boxgo73|cpr&FUG#@3Sqn$`IKpJZ?vu04CroE(J`D*jwV21Dr zcM2Ed7kS9NI-FCp21u{fsVTzT3z4b>`_dn&1=OP` zCM{R93;xNQgncJWVa7DO@zXa5b#nB;@FH$9%<0c($mKu0yZw$rxek1l&Dh;}Byl7Z zfvCeLW;-#2;gP$Mg{{+dFaz}gt@Xl-6!gj&d~8IfyN_-M!2xPIH5-Z%kPR}5BZUPk zk|4ne(Lx!OsmWH5hY*Hi=uYaIV0u&XK7x^BxLK^$ZgFZ|SBMi6kcO1TW4nVI6eVUS zyG;*B5NgW3+S?Y)+z3zSP;9a)NlG*&M?&U>+6a~bh6?ReRF$E%ZiUlTbA8%ypJNhN z?s^D4>&0Yq1;+^5?m+~bQE_{~4@d_h@cnTW244hynI(MCfy742!lOADmreAGuHZYk~FgYmEOiZEWYk zMI8;GnbrXPv-rLOi&P+W=7P}i1#PFooLgt7&xm*GQlhcpd9;j zwA~$qw3Go90>)hECbcqxjYD55t87_KPOXYX3g8Z1O_O~M%adj?bDgG`0I4%Geyz7C z7lPca+|_DZ(sI9S{0ENj_VRSbYAPG%N(Nmx+CC7Ine8ZNf7^ao-Tu(lfjK~$g*|~h zeK-9ORjprL0*f2fe%UvM!;R7Ip%N|4=qW929+vDI$uH>>L%f7v^YAFj5KueF4FZ3e zoC7)76)0iwaomjDPiB$i7b{3I%eIKnl$=oP$_7yHH;zO8*;Qzn^Wjk0rVtzG1O6)s z{v{yC-Y{9-(If0DW4S#R?N8MFrpK`No4Y?={4#m_{+Hq1Tjq?aZ%9UP6_Z85^95#N zvt3<+@2kQoP~sUzr@PM|p`eBe`)or`Ib*saYtZ8=WLErG25APkO_2HR6)^oJVu$G* zTEC}v&^vhd{>{6$Z{FQLgw4kYT!;b7>!g*b+y_dy-b30h&pnCNXEW8x>AIK?qDhQZ z`RKfcRBbfPsZFRau~KR7rC}U{=g+K+l!k%bQ0Q8gXxY}r7X5~z<~MQxb`+S!O>W@= zuECfH`UKJ`n%J9x=uLftDm%g%(b8*xzD4WYjK>ASe$u7z(*5Fzu_NCAj2`l$pRi5_7wFhG`iprIgf~ z14*zQvIB5R4KtQsmfN+mcNIwC|0C{Qo7*^&bYcAzyt5G#l*gKv04Ryt*_jOz7m*f8 zKme%AenH3*J$9@t`RFqC#M!gI{XEZ;nN?Yh24&A|#BqcvRA+T}bzSm)Ap%m>5X60Q zO*(2S`HXR^azMPzH+iGWs-5%zuKNk_@#67wD!HZ$l>D~byL13#WPUcw6jF$S5bMVm z@B|IohzpR{Yx^5rz(HpREFoxV*E=9XG!|~|*%HYuBL<`;)H`6^#5uuHI(_w#6^7wy z8y8qdkQYQpXUh@9t_{A<18egItsi!-*%*;$UkUv2txB}}_0_4`a)0^CJY?Ok$8OM! z>r{o$ByuOp*ZdeqX7KNrK!4QTKO7vy)4sBs`Dn$_-n};*{F@xqj}M1Bmo&cNu>7`H zB0cv%^vc73{FTge`j33&Au}1^R(|DgoS?(8Ze>6o(WuPAk1rH6;e{WOw6KYI*cTr4HnfSfr9-xT)RgDwfV6iL%F20M)8(?osS^Y0 zY6MsA^ti5$LNyQfXerRU0pX)-i1dS_FNm!Sa#6(^j}R&x8&bxY7e+8^TWjLF{G&rx z82_d-U6BJcQN?2;7%#^g0_p2W_vUMAvzI7z^Yk5A;^(ja^XB>|HH`$ibtbdJoO$?0 zk()2*%2<25#l(W-PX<&_BN7i(ky?k}f8mrKR5%q?z` zvvYIoA;^4?{ccZNF77KbT1J1N8$rS)VHbknXT!y@J&Wkl$>KUlZf032pg+XbH(MKxc3WT#Okgx`EJncfr1?QDzk(S(g6fmxu1@bYY8U zqUhLpk!WdPgyW@Wa;Y-3n(yk7X>mc)DZGx+tkp+P%wMd zIZX;~P>7~_2nPVQ;26O_q7hgdP#qs6LD@43i<`fv0(FBc1 ztv# zR}tF`IfG_6D7Cqw%cuka-3c*&F)g~>;pp?7@JTy0H?_lGj#x$o|6N~@G88wqG2TZ? z;n@mOoMY3=10J~rxPB14LyI^psiE9|aO8@P($unL#r1Fm&GisDq%bNQ6kJ$gW*|ER zx24XiCV-a6z5QRn&`$%utM-rn_~_{H!TkqE_m7W;qoW7+kD%Hg9U-{u7dsColfze_ z-7~(aeS_!)5{(-5u-_8+fLW&+xNfVwJT#P+FT{Ofm@#BH{Cw9!5*nqaUhjb~Sr;q{ zHd(=i4S#e{_(LsC=XSewN2cwYo9`ggy+PmxNwv<@<;nEs?W@1T8SvxHIsXFeOXT}`iuXj(*lQ6i`lx99|?}@ z;a&dO5r5(WIK_IqF0u&}|L+iO%fofe1Sx-RByQW%_zDkzf9-Z3-PS!u&TpdYaw~B* z-pTYtfI|R7C*5ZWyZ|rGj<5Fh-b1F~|qJzjK zIG-z2*+hOj2xrUd&Gy;lAsCAu!1>}(n3L(?gh6X)H=FS7fPmy*;|XINqeV+6uxMf6 zD-a7i_W#U=(Dcwq9hEVJ#+CsBf_<-{fJSw$>2%TCRKxRVX#hd()~DtDPS`TUrkX5c z$x{DN%wB5iamhXUjKvk`?7czRL}=YLR=Rh@nV?e`5Di>pbo9f+-!9qHKq#Qerfdm* z#)HxLwa)rL=l2xOcc4BvJ#ds}1Z4}-z^&>Wea<)V+{yMMT8wOlVp0ZeQ^U|kHbYU~ z`1}rLxrVFik-h*8W;8pp{O+xyQz_q-;tgw6-NVZyJ$9TofD4I>)DMeDZOcp_F@7C} zGh0EYK$c%B1Q3X4TNJ~cpx7BY(AXm9zqXh6@b7hHeXrsuS}X6zVH`|LPTH5sFL(jU*~Qa{Y~N1C zKdia(Q%Z@78d{Br+5y=yt?4X_3+TKe3dlqnDs7GK1TovJ$p4`r&X)xwo=%TMirx~B zaJ^SJ!u8wgI=Np+nOSo^!?JOsc&Ouxth( zLu1&3;^S)%M?+XvQ+QDJj(x_auEQhr!E ziY7nxmkBK}EeyFbauvpk$T&dmi2v2{czDgcXkwjY*(w`EPjVC;QR^0pkYyuwkWPw- z+`z==qd0Z)uQpB(-bs$q!G}AosYfmK(VMfRa(uj5JhGyOCaHL+-DCyByX|(+2Bc!`8&EQ;J-7i=+c!7)4xuhz z@5IcQGmX;{aulY`c(@u+<~C{f4^a94aNbv)X`}8z#>4T2Y{s${Vqy9Bh!&d{i zK(VHjQZ~RFhtI*jax(qZ0De7C4(Q}U1{ad-x?OaD+NqGMFCq9Xm^VVfq60(mJZK#V zw;gJ5!>wxnGWT}~yQZh2FJgilWXcH=RdYc>17Lg;PWf+=N3A~zDCR?f0bn98PawTm z+W&{XcP#goxJ#!!J{;Rx39O0YQUg;>Cga6il65q+)M7b3$=;!fPSLWh;F%lfM8vcb z;J^-`OHu&Q2M#mJZCZ@KX2i?rrVtccKw||V)3qeC1Jt0KYavef{n{OPvkpPGxZa@d zf?l{YIYPI^(XDacu2(ey*fLkA;n0MJ39sc+BV>TUc7+VPq$g=^y!s$eaXSeeV4Z~I zyEix}p(O4I)Om=_n$D1@Vh?d~Pus}K1)3mrXk+QL$2h~%zgh*TfyyQKXwPB93^X9k z7+BxQdd-klVI+oZ=&hcqrxyVfnBIw{0O?a~yK$EX_K!6D@e?|k=tPHx^~O2M9yo!4 zopFTR!EjK{lwZ(FYN(Mw&OPh-3G_82tzA5ax;Qsp+f%2#DJ*u$@uMDRn`_!B#m8GI6OF2elDJWZSAuy|_XqP*SOAP(}H@FiApB z_s98cnM8mPLR6nOLa!s2F4viK5wUmC3#{{j5RgFW8cD;psH{n7#nOuju`QYB+ zi{Wy3|4IDY9yiz9`2jP<-Fos4GAOo;{g9>|=>!Ms333)d4{p+w<^|6tghoY6Y5E+M&e~95sWK;rPOx;1Ufx}v*L%9}82kwY-5M6kOxz3!}S7e#TcZO6(P76}1NV$g) zr1wBWiqk0;b%*!uKza`0Vb2K^{js^Rc%ELL(g0}?U4A{%#IsOE2dIzNEYc<>q({K2wK%bS#83b?yZ@~)@@f6GkK$xVf$`;mS*5@ea(5nazGy~ocl*m#s$ipuMDfe`+Bw(=Y5()Sji;PqAwV4te zIWmf%yOEuOQ##vG6N!-8{C+`6q@J!K(&ss1aoJB*gsE&;W0a>zhnIe92ITaCec$*4 zCUzD_rVG{iW#XO9dT7dN*G=>Nab3$(1x7RYYiE=xatp;yz`s7D0`(+aGi7Ig4zdDM z_k02m`~51Z;RE z>FZip9eWxk1rV+_JDY1cJp@twH5y3u^vxBxmL4^x zQv>1+&l}^eak^KR&uYp=HZ&E)yE`c*B^B;ul(cD$N;3TjIYBiWOiyvSy_$h2&X@K8 zcT;zpRJ1gh*py%rcN4gEfO@=hRMK4HOU7XY6a}iPU7t}?<|4fzT_67UAhM{{&}ia; zdw-#6yu?exFIw0k+siYsJo8WLXLrM>8Zp}c=jZQ#czbhz+_a8mTD@M@%-Z1^N&ISx z^6io+;4U~blB|+*faFUBG^5&dMqooc9_(I<=@(8M=xs*M*+1nC>g?uE zyVDz5HbHINU0>)1q$Q&r;~9d1wwu!nvW<59oTJ(S>XvE+>v}(Ah`I`gDwYz*?`nFo zn!?DdIDsuH&aVYg3K$)83Y{kx6S(&?O+AynSy#Hd)ZSmS)Z5_SsF(V8{Q1}4dMg%a zelZ=v$?V{}A8y{h`TB3K-hPG?J6u3x3*KdVIbQqyKwSp^@-G8U%-z9X{*tcf6L%JN z_~5|C{WbXT>#1e9Q7`C|C6C3fKu_LN$x-4h@IT!c*9$g^f#+3&+eCHpM$8 zR98Y3ZB~$xUKhR!th>UwWfvM{=;CJpKNM3mZPoOs@lf}yxMo+H0nnYM?NC0u)aV(q zvDG9}CPAr~c-yJfJ}oc}vMM1-rqZSY5BX1J_%N#X8}oaVn{LbQktT(S{_z>mNw9*b z5n^x@;LF+%&ye)lqF+WR)dLJU=+!y!VPj>DiO<#j~cmFO4A9#R$Jf9Hby9n zy(MgcNzkH0E3&R9U)~bu6C^T(y<3;DSU;d9`JQ)qcch{0tpmY0n})%TuJQ}9?e?PSbDYp|J7ZO~493)9r|^POEx6R9}RZehZ zwJxM>3Bop_5&qce^%!>lwgULoV)Gxf)j}Z=*=y0Sn}@7&1JJ>%Vtq=z(`-@xvU(aC zVt5FHOL9tG(py$Ks*2VH10fR8>~%s^G!9ZKpqxu-3cE2kwfVIS#>schPYp zZ_lkjO`Qg1iIb2_ylH7`@)OCDfoFt>*7>3i(ANUHKo*X4V(FDA(}5qmcW=OMtB;9tjD!vDyS^3yV*c`K78>E3c3qu^slaF$N)=+ z-w~D;3#0uXy5&cBwS}ju2m2lGUV6BDiS-9NH{Rd9bhLYEynAW1dx=xhc|6>$Na2|! z2r5FDaFMI&eDhLv3N8T%<^0vhPfUomeEa#M#oHZ(CrS&vt$ZV%10mQdH|7WKdDLAi z<7jt9!s|4SeYg1*2nX5wW?d;wZEGS;k|31(zm|O`Z%%LC*f{17M6U`>bWsOShB0G}v-9;|F5ehVXICJGiX?MAQQ{S`?a);I_ zXi9*HkYa8&nVmmFjeJ;+qlC?xE*KAF02<8Y|5; z(+q{5@L&IUHKXxHT$8fZxEuft>Ov? z9`SD=zw^(?G=q_rt_5im$ZG(5=ky$zpJ#)%sqyh9d|=U=)j*FgXwQf-Onr9s>>STf z;b6pb50KNPxnQEDrG9JN+erhNgbax;a1;?uWOaz~07ASdaqeLF!r92Y2;LXFoi&W{ zFc6Q;VwuF-BDBL_8ENC_o3TAr8Z<<)04I660my%N2x?W)t>aWWhtzhX2_nVE3>Ob| z4e`MA6i!{hCkw`Mom^a-zGCO9@%h2aw25-K5{0MnG+w5k0=tCO9B^>hZ8J1a;b3cD zN7)_6rkmnyfNS(X>t0Wh0`TeTA<_yW5J($Hd*39?ENyD*P*NqgQWA<&t3d6V67k#Q zF}vgXxvuHk&!8MWD@NE7mBMd#kX~!-E?C+eM75iQugQoqNAYJGb~rY21m=lh+K}o~ zUJaS>q*5H0+`*a-K7_OjudjR`0uhd4p@Bvw2=>BioNo?n3z86jJ!rS1Zn2zEzC+59 zmxj5QAMw)h`_dOfNJo6bNuQLS{~J2k46d>4&KUo}W*_V{8Wxjv5VVm6>f(i=GeK zQz?I<@&qlN;E(hdPX_hj>8->97;=22z0_F9T?9QSyv&Pp zCQacY8i$ak=ci7QyrD%*Bn2|2=0J)in*)&pdL)n~0K+#u=aE{AvlKJiUe~*nqJ55h z_x85h)ccY;(zUU8YoC&qm+Ll*!tY&*s6AML+8vyWq#C|LjRORoIjNP{so5efV)%{2 zeWE<*pvi5jIZEzHNx*18m)s23_uMUib$kGfcU8Pxug5*Ue zUA!q2{k*HMlb(>UAVd2~!q*b)X9d}C5M(E{BM=E_)9FCIUEn|RXb!a6nR5`y*}FL; z*iZ2-&YY^;Vg_qC(tem-Z1*K1-}x0b9}l6OqN~#jpP$m!o=Ic0P>;m!IYYs9&^#oN z(PNV>`{R2lhB_9uag6%3=l1$SCGZKyz1&RGqdz%)tIcaDT*_Y`b~)t!!?c87MF|)a z`wFSSfpyX!1drVlYKKwpfT33QZPmj#9f5JGDKX4}?O|41rJ2XW!Qthp*GY0cWO(+L zrWW-vQkzJiH#3ka9C%R)9W*qnHGkrJ;t1PNr|C{AtVMY>H5vOaITi8{Xj#ak!^4To zqn-rDJ;|b_0dWff;Zo5yC;}zU%=6`CqbuLt)cd*^bL`0r9vO?}R+vY{6hQBM%ohBf z9A8r(N6X_{VciTKUO$6)ZD%hz*L2~w4^H4P3;uYDM7Uo!jECA8(zBISJaMQ_!GBEfG43VDDQfn{+QgMZ51H^`_jMB?h&z%s) z4(yKQv4q=sH<6_|Uv#bH`nUk;+ca`lIzGtk!GRVFQne`^N1@4$3&TOUFS(x34T`x8 zhsDvBL3Bd|8GkE*QLg`3OG&;6)mc3~d-d+k+nWz`#;nkK9kaz9N(`jPBGuOe zW>cd`V9?HCv%I;Gllyod6X1gLM z{NZaRm|{kZ>=|6g3@+===!(_T$+C{k1X0~kU_LaJ_<%5rFEMl7_*m!1Tr)Zqg6r|a ziqA>ql_no-kj`NDqLDXOAGonMTB3{Eigsn_kq^?qYVS+1nwNslA!m&p38*d%lOP5A zKd{kRh#XwYGt5*?STg3j%y}_&di;8sz`18UD^s3NPJyYrF&tAU`ykJ`H-9WphSg`o z#E_)nXw~T$T2`Kdyz{#YtUk_$(^!7?D9D|TlUKaHBl3fRV5VhNiLtvLiexuI^*Y{y zbk4|OPiD!m1PQ;k)eG0REke{~(le5NbP)e!{E(NP?`k^O1FU^fxBoU(2en0|_*kfp zPQRe)xaFqXR2{a*WM*+10PQQXfHB08Y3lbv>@4^KcEizq5j_u3w6rHQc~Q}*tDfrs zwM?YUP`E-5hzVUCfcAbZ>j*F-e$&tUKqe5!toe)%UC!_miPNGQM>r!eRJuK+hw}Bp zUAarCkD?!jW^7_o!D#m(Ap5og?5U5wE|h5qVC+st15#&OEMAYbf^w7>&Hf3iqP(P6 z*UOEpp;d#LdflxyQD{^rtAY5Hd}HuqUX062TtrKgxIBBgg&OM#A_MK9IL9ZN6}Ff7 z0J>Q|7&I+CL|3T4m@v7&btp|=tM%&S@|LCQ1K**MV1zh1Mi305O(a^x zgEk34=R*GEHrxspySTpEwAVG1KpH?0!-7HBFeoC0i)CtdiA2FCSI_})kKOkTV9ZA~ zOyvz$V4B?X4FpCYBPjf$GP|dE3dtK~8MO;*Tce=BK*bsM9~g3Mh@2#tZVELt=_~fF z{ko}v5dcIvVf-Bg1zSZkcMqM{jFw(ol!p=utId^Pf1t1sBNtYY(wt=~eQ(>;X7UZ60@374oQ5@tEy0>x*|9EFZ-Uc8~v?VK#2wkFOFcnL{tZ&8KxcaSPc zfeYLk=rd+z14zzBU@X2NU$%L)=)5KrFwQcR{*d%wmjPF)N$?s;hhQf^bWA zlNGUCiv$Hcpqk_nzSTYM85yUO+Xp~VXlGWT({in2!HW$@yOu_UOC)Qmyk;U4U62zq zj_LGdf*kSk0WuvC{WiV=n~Qth*K>xqnBNQ^04uUN)Zp?F zE^D#67Ym}4%8^MG$`4`+_j{Oo@Nm|>IS!u!tsz@~(`pfrEN8A_wco*6NX6Q)dEHbP z9iU-iI8Uu1tpW3#!7s~j4o%7YXlzAT31F=^JjctTXQn)iB=^zUi;LX(R`slzZM7-` zDfz3^T~QnMXrAy7_T{jF*;1J#krYFWhe)v}#A(PST8Tr0 zHMj|S;r4K|DUEv74F#sLHwU5VMJ zm&-49p*QJ&{TJTS^AzOszwHT1_rL#cpj<02eQOstn%vsQ9uxMJ{at6zzWhq|`Qkh4 zgTCC?sxv`uHG&|*V#4p$42bJ-7JoDGu|CV4K6XMP^@Gk06_`}vFA&_tdN^DBkJy$i z9%sKU&Nmz7)R>+_k-2SLXyjjLS^U~O)}e^*RP1nth2J*pIG*&UUp3{pu{a)bW`2Ra zULFC`NgyjE{pgMhZWzJVmvq9VA#A&PzT<6-Y}YzWe!iTDD6Y&N4Sxcv3FICqloA*v zmz)LjT+ZdDI1vx{Eu7=YC2^8a-wN&_E1%~AL)z9drXZDl2H@86(2XJD3R}wKG33h zTC&p8ikX~Y)hHM6k7uaH>0)z6KiKu458C1zTaysHx_WFaN(I&r_wVa79C$_}OSHwK zeX*O=Z9KfNtZw|lK70|1NJCuM)ynL^YR0*vlyUCJj*1K1U3N$_Uts!>AlBrEmSv@) z0Ets_2kM5(QZdNWaR^;mL5`uk1kyrvY_B?Cvi$WLSt?-sDB)hx5hbteu^IXE6)mfs z?jhKImW@Mp>+S{h((vH z4bPZ0P~eBra+&rOB|i^$C)nWYZG@=@|boHseq?zKBqQ(Qo)bn^Q3&Bu@8=_1&}m2B>p7%fe*_EiLfbR9Z7 zz%-|A{y{1hc-WPI4Gbb8$pZZt@<{+aM7(z4n_NS^X@iF}f@E4IKbCf#pUCxU$pGi2sUC*1E+Gt_ zPsa1!G=~n-us9@?)WHAyg`MncpigK8p&)e?U5p1^1Y!%JW8>k}B6)LfXykK5xxyQE zB?|?1FZ{@0ETPLiT*C%?pnw1AW_t5o!8|OYd~~^M-$fjOgY?z(R-4R$6Q&?x&(0AJ zreo>YZx^bYczhUJbQnp@^&`$R86g+?`nu@}wlOxq{`1RodnEz`{Js{b{yM^L1b1&d zw}C$*4n!IgIOp`!)?J`GEFEp919M%%FU`AQQ`ch_vkjg-2H#f=V%DKAq<~$quNO;` zlX-+trxlT5M&;+Qy>k^K!iAicADTwrXCePx@f zr-N=Z?g7FA98LLZ`Qh;k;N8vG&tqx0vOl;-rhC9&FE>?SdW9caVpm75UJp?-AgGxI zdY=^_JqnWC;BW8WzWRi$bc5IL-+laK6Xl*au*5*lu9m1|Om!6Zyjpr1Q_~aQ z1G|uML26~PkdOzdLtb-#kmID7jW8ptkijY+%w=Flf^5OFDO5VJrYRw#a(>`yiL8G1 z<_)0I?_J<+ID#qIi&sErRvXkbbqF3zrt%5K!-`P5RSJ5bcA%Uq>OD9GR;M_qb^mVg z8$6y2YO5w&H8(C?fH7oE=mK1cR)QQx=$N3sIp3|!@qcnAJB?!{~4F8L+$lSv8KyDkR9fI0@UpChUteaHx6yZ#$ zkV;HotItpYoK^5TE)doW6+gMYsyi@k!~)Yh_|Pi+9i||i!?N?KDt9fEtu1Pb>QT|E zFE%Zed$o8&P;QxXt}`ORH;dkknjLUj2*b7!rtBIQ^Q0(R_>+s3>rAN8LwygV*oNqt z<1kC|5xP;9MS|qf#aJy&12GmGLKl+jWZk!*H9X6`UsYiGEK(LtczAt8maW6X6TH{htCSrV(`RW9_{MTh{E%hV z(h(B)JbD86xhXkF!>~!Z1nNa$+T74-lGevu0>A*`2Jj$MH#w!DOgt*WX2!opRRPmW z)ZI?0dqH?ZFDa#bQg)t42>VY{VCl<%k5goWCNKwhwrtl9xXd~Ocg0F$ruah)Y4@T= z1{yAP463jbZm1R zZri@a!)@F3xaL^GS}fY&#ZqHvsNa*Wz{;d-O1*cZTB&WD38Z;(0`vfhJ#iM~36xB0 zQ@91!@nneJQrMVVJZ_xP>Gm+T#$9&ZgOBQD>XGCquGAOBW&93=3?y&>%7JSC(Fj%Z z?rT{fYzX%R;i7W-sQ7fLrEm2EPgGds#*7|J877QE8j3G{C=POmwsjzecud+e?VIFz zlSqBD@};H;3=~q;K*OUQJ&*~u&h$JeT5x_wdbaUI39JPHeqj0%2K_>V4DkrIePpm& zte9QGAn+AS*YT}P0PpERpObgkZU(*$J#?yKhj23^m!z(4wNZMLmbf-uowBCh_&Um%&sH-e^4e^f>Z4gux;>)E+%DX9 zCk^Ljk54Gzv#-o}B|T-ePt*%#$1zXg{Bn7Y0;=umac3l;=1}N18AB3&CFv;i06UNl zI-Mu>cF}XCuwJgt7qpKlduxqWJUm3b9_h>xX}BHyVPyN+oMfGu^@cu5h*R2Gc+HdZ zNx^GAFQYOqO#qhd*96qqz^y_i=~vHnAR5^URav*I`2spU+&?&=%V0X%M&6N~i5Sxu zSF02{fBqalcCv!n<-8k*%K@>R8?=V-6@zoXn2uVKGi$0kAbk`EL__6tr*L+L`1f;v zQbtmcG~B4n&dYtf$Ne5&BNf`Z-LFPe0Ji@6GW_mb`}YCY?q3J471Y*q8q|%t2)VwO z5?7!;CoxFw+=xwFiY498dO9(Zxl@@s*igyFh0|5Ev=UltH?DXbNVEj!E>o2*thN(R zDn`<{%+8GM(^NUDSM?a@+#`hyPuzps{qogCDh#^H(T0O7D0dO8T)LFrpm7s&?T`b>Z{wB#z?-k=a3tKtX8vUTj=|S+M+0l>w4whPMUB>pjIkvY|*}$ zIT+za&+cazwHbHxGq`v%si^Bkf`C>hwN5X41t<=&_zZE*%UO0~{`zO~e_&lD@3YI* zbh!YgKIr-|Bbr2=l93S65#y_LO;nB^#@!|0td2B#Si6p>toI<6- zoCWV*|3`{rE6db>Xors>n>q5=CX=YmLMtuB>FuKRfhP3y<&y5QUg4Ep>&5JITxbya zi#|am2$M#1W_bPCkq&_=*x?+^ZT{>?j2^TiNEKN2Q?ad+39K-UQYeZJgfN%p>;T9r zZKsu^Rz0eIzRgNiB^YjlZk%Pv4t}{i*lu5a`t;$4Z$E#!*=`RGUcLR{ukUW&0D^td zdwRgQLFcA0L7B9AJ89(fLqv+AytNc zP;<6T#Kb7B!B<vSC@zKn? zq5d(SP`u6Ug?A6qGr-3YDYBGGj-dE<_S4npAMXyn8h{JM-z7{B7OHp`LC|H)eEPx9 z_HC&9f&fQ2pe*zaIiV0AmXs>Xw>qNTa8gF`Nq=me7M^=5&@dPOlpDYEVf(PK%Z4EWg9u$D1Y-CA+emjQ2S4$FD+PoP zl7hhI!LrmRm8!Adj4;EN(`okxnm~W9Tgah$w z_%frp_6?@O>35tgFztix+Y{4HJc9sSro=>=PFr`n=bLBL+Z*JKM$~z#j-jn;$8b2} zh`Zak!1QWu$(jLtG=4OB2@eRU1LgdmGJ-49F(@3X0%HH{W(yx;X-npo+q;!i-M4o; zto~Qhy7UVz?g}Xzw(B%q5p_J!xrtWYq7mZRYul?p%@8Mab3TH(>IHaltpJ4(hG;BT z7c3N7^5wfevH|HCS*~OPb?_Q)-fJQ1OcRrpw1Jp!5^m~1hu=i3)Lh=E*)^jo+q}s0-6>ks&nN1wv;v&52nNB3BM4nS(}^H z5Hb?Es@MVj1vwK`Ln+_ynRjZKWu%dMI4NK6$#Y%WjaHdQ*}iu?>@_Io3`c?Hjcv4i zpJLF(l4E@s<(s#dC>1U74%46wf1ZM;kAOq?5rC5)BA&;VjLQ~Vj&dagIVIW(>sP;* z#`(KXHy=;}&YbNpet36-jfNMGkM^+4JFq**%H+m1nJ(CbW`UVa27Ms2oL(U-siLN! z802Y@TTrNx6%5>51@(HoeSGmi-)gD4%!MgZJ6E-GGBQ-4=FpbKRi`6I&eVD*fxuLf z{VFl301~JneSJE{aMBlRAGp!jl3w?9Y#E9UUftD(YrMiJyZMtY%Y_X*l4ePf!H$`L z+@OkZLtl%u0#ql%$l9n*UecTwn7Y>~vVwXrC>Q~Uwxks_C?S;kp42>m%+wgjoCZY# zGavVbs7&@Nxl`JkZi~t^JmfYmtyML_xUfa7w^o%{g(*PzFT)3>ZWriY*1@N9B3a4F zW+q2P|1B7f2LlaZ_j)e>CWtIGR2)Do96Y98ARzq$p08E_BV7tYn=Y|{gODD>duEq` z0zKHrFret&3Q;fIGttm^pyI_PZrVomE*ygli3#EwTYB@pqgsWw%1S=989jT0-s1U( z#Io2yaDLl`p=kLijBG6tcnU3(f~f}Mqv5FdH7O#!II3BEI@ve9*EwQ7s>>Y(C~Z=% zJ7g}+8TX$@rEO=Ap`vRI80_jITA)d+xKCBR5j)fd;=VY^TvyKp78h>IChPrL-j?@t zINLnYu7dDsmsgFAqgW_=W~9J0C570*s(O1Kck0NREPD?bkM&NvvvQqRl!g_Q|AL8u zU#g~iI}G}qw(yE^OxWl}mH|>{jmG@^srFjVR_Dtzb99uuKZxCkR2nY-wggmK4Ml*E zej+zSYu(v2CD-ue!Xt|)Sl@hlcJunv`ws)p#$PTZ;&47a%$6A(} z=*(p|q8HapK_oyXiwWFss3`XN^1L9uU3^1(6c2-mw}XRwhkv|(wz9u4*8ctD=7-n+ zNx#kWQ+R}3A#WINt3F$)07tt*h8h#t-sT2KdN`8C&@&98AMjy&cMJ1@#+;D#sOaXO zr4D%7Zzc|L&uz4Ur;HAU7mMeiccYXhoIy1wSWDwHy&)_Xfs;&0vPNbS1Xx|plEcvR z6D0o*e<8(rn{HT)9*Z*q=SQyX!sMj{+rHJfI2jvJ>rVa$bII}D`^$1g8M)hyd*8CM zUTi>T)}KCne*NkE-4CDUAKw4??1wiu@2y~x%y8@iPu;zp9NkHbcUi<_dhG?bH4>wM z$Q5T%6B>$y#GMY2HnX-}nD)*Zxfw5Eq=1C9T=Ic%HQTv{ItkK>TC~<;GP;x^q&Bre zLY~k*kc;YdLM*V(t`*t-N4M>6nl?V}3;Xt#n{L~1BHXblmm&;)L%}sT`-E47LbUWtnC!#I$ETYAzC~)1EKWB{{stqJ84CuXBvnZ@FHBJk7stZWpiPZt?0;D<_qv%k> z0W~0X);mo~?Pcl%R6F}xCzgh&$?4^TWIM7NL=P0JW;tf2vx^huPNwL22q$eOlC?~O zo;()kTJ*>9rZ3cxD#15*ZDEthN@rS>~Oy#0d&^u&)h)vzDqw6`JB}&NsKzrls&^t~%nP@d3x${(Ud)b97hK99Ji_0xpR#{w05wY^b{vo; zZy@QCb?k_Y;TQGFenN|;TNVRjFLll=_-&s}L?(9s{)Vf3)P&Y{Ksp{+uqpi!A>|aG zlP0JywWX%c#AkozD=Yv>!K^+8NAeaQ5}_;aJtn}w^B8B2(;GtZl(%5UL1lN@aV z&P+19U=NZxLyoMS;1DT)k^M>_eUxQo7i(ZKy+C%TbO0#=$0{81=-ZQ8_x>{b@ZtT3 z2};7^08<7fa@CCxwI~qTR2g}6eTvuSFnx;IMNc4~Um)!LYVxuXSazYdg`@(YJSbur z5*m&khrsK70-Sj=`q6Pj8!hdGm=kbMs7T(l1lMkkoG3_d*f4_~pvIXtp*#Bl&9q@7 zenLz)Y*dsSMocBdF&Ld}LQU0C%nisP#>FyqC+4A+_1HkKh$0|a_34JFqWe^Zh%`JS zNkBhtvLhiUzd=RlWHMa~X+=Ym!4Xa;h*Gyoij&o1sSS{?eR%&9&UlyoI=1MHoy%Dj z?9+t-6{g!c^fc()$@c||7gI=r(!^8M1DjL@4}MW0i-0_6R|k8p>+=dWbt|0}1t`A5 zWP`wO1M8IR3cXBKL}m!FyI5Aj9XdNmd$|JjMR9zDY9b=hqKwSird2wf!VoxxuS*k8 z&-E)1J+0At(ES_gG+3|b$EEKPhe^-uO;`Y}+8l(x`$?aP3Znk)qfwMLv@|~1JP*$Nh!s0oWQU#nrB(Su!fjb)bUbq%@bq>}R z`KP8LETyHLVMvA}!gMk3ObVBVs9$U?mIv$ie;)j|WhIC(C*B1Xoi3L@&z5l8YCWub zYn5BE7Pn)StvM#4_l?;iquwr>;qCU_&CQ#dBjyfOR2}!MhZaIo+_el-%d>ikjpnhH zjHWbIBtn<2*DqZJ0OA0%0}S;2t9S2i-WqogXNa@YJ|!}?-7%HO&CYATr2+Xj2>HO( zgP0%XIc1(yk*!RefB=*6Cqrtwc5@J~-I}4_MZIcVsB!rJ+ThgR{zL?sHBTJD3H_fN zzDTKmEi9ohLrP6VpOHynE-T>8nq#KzmGIXD1&Vo@1`g zRikvC#p|kxff!v0dAV^8TneNOxK}rn-M^m_MF{!c;8LZ}4xP+IbB__cu2htN+-Mh=#r4lbNZ5%;=7%;sA_@~PgFkyWr zmuQaqDYIO{TNQGlEjm>y#v&D7b-7_zbz8p*1F_Mhc}KpU(0F5FoHWyXO)^U zIh-0dVgPw2de<$BQjeIbf-~RCDkMF_kVu%;m5x{y!Yea-e1voaX7g5@za|>|MlHxyyMC=dMr`82tEA=R853*_=s z=$+Y(k{7SivZZY(8Kr@1Cwi8i!|^YtsKA#*wBpj^#3{VPs*1Gq(1Y3yIcS^p^Nr>; z>SeKsp=E>bTePKRgLkJ6PzdkH9N1~sXS?H7J`L%EOi+em#|34fOY$D)P(?A~`o1yG z(W=jNwMTC}ae-+Pcv@lNSzKH*5#jN-65i{D?eVFwq?CQTPLyCbvJ)w{!)%FAX=r1S zg`;H>IzYW$OYHUs#}%GliF``GrU_hZsGr19^`ie$KGf`Ezc*+dF=*hVQKe0zD7#nt=y>_ z5runG;uexqQiN3i{S}J`Y|)?@?fyQ5*M&Krpr;ed3#za?2RNyi)s|=S&`N<*# zxQaM&uqd7lPa^&L^S9jc0xHoQQ6x@6ALrQx*W#?SB5!&I2$+eDW&ViAb}!qe@8nvsP2agFOj4Cib0ou`r^Wa!u3bux=`OsMQCCm9 z)kWsEdv5cPQOzg0ZPDt!HWz6eI4+;L3n5i@$*tl_-3~CeNJ(Y4qq?g}>vIYcs3&(p|ei!|Wa@;h5dY=#ljKk!WM`c{Z_j|C||C)i*A3nZ9ouC2@I}5PKz7$Z-QSwYga#ep0c*+FRJq#~ckb#EEp4Q{eC`@HD$8odIgp{j}AJtaFPEF7?q$YUIYW_lMvYn7UW`CcM+Zx7nORn+Y6m zlQ~6KOv6iC3s&6D0+_V*MO|fX187%60MhC!CLR7J^wiyl;dg<;;@o|Po8dA8$E)?t zyN~ZbZ1*DdfnjyrR#Wp@MyAcpk3ZSn1-)CZ7Q5$eIASUtXvKNv=NHTy>|2w8+OWfH z`(Sreb66oID2Fxsj~VxN_nILM+lRfFK0sPI?UOFclAVovJLpzYIh;L)HbW@ArTp;! zr^4-sH39`6iPXeoqcoj-JpAo3E_>-k*l_d$3gdk4&rj6cz7A$ zMS%SRkpkvg*DIpw3G$GmhvjJtgK-Yc>2k>hrf*U543h;7w0-A{p>SVRd1{|#~%;@V&cmm1f;<$9PqQ%IR$w?myt*;h+= zDmI8aShd%EpG>#3q=wD_$+W4)U>b?(^OMya;@-`%aiY&Eca)KZ^Jqhca?393;s_>^NEoTsglbQz1)#uqJ`nyeD5g-9+`XCv3z z&R9&C`u_Z67NUO5VWFnlm@6=$PZWG$ouzT53mYQ77s zEnSx(#1C=6wb5*2ZV}HE=nnf7u}+09EK$xEHhTKn zJGyaBtglDe3Ud>~pwQN4P#8txDI6ukTXmKvBVG2nwsP407S0`*VFcIh_FKd&unyG? za!#V6r2*K1dFWv%*nBO<-2v;Nu^dF0SplE+{2tCwJ38=lCp?ddgy&0a2292!$ifL_ zv#XQM`7;k*H|2PL`sxDn0TO$2@Y#*o*w>s6I8?wSQTP5rO^(UO-8&VU`X{kY_x?h4 z0IOj4bxQFOWNGA<6dWz_{ui?uDY~a>#TZ;;ITq@*2R+yB_gp*bxyC@X?(;@H*XVN9 z?RSW4MK30lRD_psOr62b3qwSpG+#eBZJcYJ-e!h3_epc#mHSAU}m>^aqj(%58fV$_bV1!+v204qjY zc4cKFO?irib1u@1gfiCb<&JuwnHiM%%yfl1`flHHOcX8c1;M?jpx-7+)1+NH(6I4se|yfkqPqm z-FoQ)In`5@&#KDWyA0o7J)JDO{4xhpVOq8{H|{WK6J^|%pe}fL0=sDGYsG-epw#uS z&ye~e_ob-J0S~*WN2`iwiBu4{1zbBhy1Jps>;#=Qg!|?eIR*&oX)^~`157ikKjF_Yb!Fg5L1!!D{Iih6WgOwkq^{+n^uS2 zzZ#4o&oEUeLH?BD1qv`6iXb^jM^GHakN9y(rPYO&Z@_~t*5|9~%f#Sm2q++80Ps@U z7>19N9}3KMv|GWmNohvxrzRCTm#b?KDJpf(uat{q3v~+)zl^`aoG2NBfEtOC{tJR+ z1&1!x1;*Ykwk`1O@*q+^5x6f{S^BC!8Gd$d#~63d%Hw{srmP`?qatCmrX3HAR@>G$ z*^cE$B1>62xeZ7&OY;jd{leVvWN9v>QO4Gi(uBKiw0zdW_J-K_lR0Z zp*3eG@UEGmGRP$;!q8^G>e0A^u8es>dz2rw)kN;9Lm9OPHEOALnTT-#>Fc;1YSGj} zyhHKW1(&_X{54ET4x)2XQzC z(b|xs=wqwrxfhTV`U;pWDHXKQs$(d6JKhokq(1BX@>uMhSNc81a(OZt_#k1ani5zd ztWzp+iF)ikEf%ca9WIMxLkwrGvBShvqIfS(1t$`jcwleg(~AxyFH;8V(>Wse#9Or* zeICaHysFF#h-=cd68vu>fFpQsXc37UsL{VzpU%%ImFvD*q|dbLLupPDn$p@s@(}Tq zxy_M}o!y}mt!U|0=J<57LJ?DB`PgpGt}jnbKaLNf?xbwcVb+WnpuSr#Hmgd%Tu@-@ z&IzFl1w3R~!`9J3Do>Mux}j?Dge;)9R%IW*F$dJikkfS11IQuD8GFC;;5Zr9j7`Nb zVd}DMHUq9@H~ZVoyHB#A>~;`rCwL6LfRbx{A)#zcl$y$dBzNW=YNkTS zI1zYdmO|W7nNA#?5-=%KvpMp+xfvU>>&V~Oqwl!G>p;F~rA`m`RP`g{ZZuGt%RZL8 zi4M7yCAWxF==CCWWQ9UlE!-_NMlA1=NYi4U0_pzN`EE+I% zC-*VAVrV4($Sb$BG$Y1i(Kl1}dW@CX(X&d(Sz~Y?r#5W!qNeo2?N`e5xM;4Vo7jld z#W3q4(K8~XFOfZw-G!~imf%J*o!B7e259#WDjV8?I4fbQv@REHGZip>xzq=A@R5Cz z{;-8H0l!;=nZO5jmcz9xy%@5<%IsnWA48)UxwkDSmPYs}tX0r|a%8Nqx~QH7r`KFm zV5R$Jy1`!BJl+hnv7)6#B?l9=nD*3R;$?D$ToZFALWw9^q2cn1Ut$hZ3k)KAUY?v^ zm8X3GT&?!*JxxlOd(-RvUpxf+<|OLn%>kT$p&g`~F^7wchD9BhbG zEkjS$0xdjO+v@tlfK%)PX`}JY8D!G0y9j~sY0tWk(C{H=&75Kmcx*IN_JfxCU+5@> z{~#E+do9YwC`0FTgUbFk0bgLfGcw(p16 zTsN58gx}_r-&D#;-A?HwI7xJcz!wPAw{}m5vSH`Ghh4mlmS#l9*I0{Dui#!_dK`%g zIA$*#f=iaAnQxDb&h&|Dk$V@aC-Iz$(Nru`T|W2#X-uBTvKQSHSouU2$hjiQ@i%8S zK0xY>$*W8Zm{Wa%`{RUKiNvVY*^s=Gn&0~i7J)fvQ<{1Rc!9i2 z+;QGcq4$G@uCL%uT$JUD8`Rt-sdpXGZ_!Jq`?84Pt{_`QY^&Afvw0*4rz4}conja@ z@jMSkJ>wGM92l$85UM?Vwoxho^;RJmH?JDD@rGulq6^I@QP{7RNO(t)Nam2d$=)|* z9c+zisDW!4D0?_z8DZxDodlinW*V9!9wlWqG~>v%MNEYIGb5=@p>?ffRKc2_NF}uV z@WcBLKYaQ-p5DEb%|zpDB^m?u$B81IhgPJq5;tecq`JZ}hfD`Q+Pli0Bu*S2cK8tD zpXIabLHey3;U+~c9`Y10r6Sfy>XQL3lX2|<8L=^c3=36oxmNVhqjtMEv4v@p>@#_S zQ2AUNs*@3hAm$kcI9pVr*Bu}zXt>}}WvViw%l4A(>)=GR9RjCo9Wm3`C)tj=!_xJ_ z?YS;`j(U083e>mSv4h*{STTa*8YAczv=l<%UPs4OPtg+GzYv8uSo{hP#>AVx98_VS z@w5w)xC>1lB7t0Y1r_`PsdF;&8)-q{ZF376O?`YlnIjBF->hKj>f((AxzB_*^ldws z7nsJ`chho!&6`ZFFSqA(K-@yl*?2m+V~{*s0!^}j`x5>f64i1XKTv4E(oW>;a+{v+ z=Wq5U2Z566)cBjU&)37zpl#LB2 znyBLF*RdSGR7JcJX2w~t=!_(tr|vs2KLduJ`%Phvyu%izL9QVJ%-0jw%|uHRV_pr} zvu}6QB#}Km3?-2S%`QDu!06Efp;>1>c-U_*GUpxArZ`*S+7?;iCiK%nB^<+AetEW$ zYGAf99TI#j$Khkyp-S`esd)I{z)}PxJ7CFtbbx|=$b?~vs@ciuxm32AJ7Xz(IlBO9 zt&Tw6smFWM4o5KO6Q_;rTEFa%xqS z>2iH(=#2BCF5&*JcLL3Ym)2@}h8;v5<&oZ;+IqDPoGV?s&MPfUQ&owdjO555iW~v6 zryc6oz_2vW=gba_C4yt<-`>B4p6u<-;NW*Ze|Pgc7eq`e=~+g-q48<9+?&j8)6o)~ zN0R~zu!(fvL@NX&y=QM1eGTVRI=S`x&mUeRZQ;W5Jxjyk6;N;uUm#UOE*1K)S4C93 zjqzm2k$pJYwY<~}k!8T}5st!i0tiY8=Rg1L&VLG5N#1=u(9lTF&7{ciqGk#-iv^}{ zm)(;-QA#9&Ppr-$J4C$;YB(ClAI{(C&88kp4rk(mu`6jeG0ED3g@-8eouiweL<^0R zEKZ+r0Rz&^X9l~YB4&kac8 zKK`H!YSiJ7k;G+CVaZ9SiTLDnmDJ=_?^j`ZDY4LO3Etasezh<7P^?LZLdL93&UXOlNui@dZnXh3KqP=xi zhf$XH_Fm&(^~R%L)$9JR>h<6*oS5uDAf*GHWoh8chjs_3GbB7WbYIMVIimp64U(CG z3+?RE07twG*$Ai>0e%&|*x_w~^*P33CYO80```Q|JP*0LcQ#FfHYf-Q?olf$S<3s^BNBQYkWy9)UHw&uXb@b(29`W zu+GJy>v33Ph>TD6QxXDYefc>&D?AAotsRQ|f$n%Qd6K;UMhdKliV70*dT?tWbtzK` zA!0HXF##Wf$5Wk29|)FHK+e^+=@U$r!7%s^{q2H8a$sYnC3$4W;xMbc0#di8dkgK6 zJ1kTsUw39^NUqn31CV_t@v2rmjph;@h2mxYJYZ|?CD)-2x_a1#vG_suUx0iS~LLnT4- z*f;MD$k&l6I-LJjqPC)b!n(qcSMwlI^@I2c#C^YB@$z z!0eRi3YB5#?+T7BOqcv3Dp-pN?qoGRY3Dax!75Uv{umD4Tc+(8lX;Ioj1H`BX$yzM z`rs0>e2}4*esVGg#dzLzv}r(fhedn?HvuIFJ&PwcvF@g~3GKHX=s;3ZwuaBFBQwp3 zuSpgNzAQ34)P81Rj@65)@30}!lWe@8N2oX5^^a;md3N&9+~X%kM*gp>CLP$J=DF(w zJ2eL8G)uz32ykgT5~KGNvK5|RV&hrC5{N-?r#jo7Aur97o4-?(-Cn$Z_gDOemxKeh z2t5&rhZo;t{5EV6S%s}S2gC;^Xe#fGk__#>-2rP#OuB)1pAB*8i-{gO(1gq3hJpYA zY>~#IgZFBftLX+_K=aGRuq^7P{GnES$_um6#_Yaky> zrU87J5P$_`AHaBNQ#HnEIq}uhZwMl@4l#fb+cn7FY z=F`rB)=sglkW>am4&d@#unLKqb3^WQ+?_=o!~(1P-_41xZi$w@O}Dsush1KJm@Nw2 z8@6E^c44yM@#1$D23ql{Pn4%iKc-2etP2Q!qRiO#~H1Hn0)A ztWRZ|4nkJ!SUYmmlhK;y=67xG5kp|Ie>oekg2*zjp10zjg6S>Gcqa#o`{4-L3I19gfM>*_}=W zIa2YoxkL^xTmk144yU}VN`)=fCb}%3iY9|g)yx{b7DUU7tDMBQcVuErfldCz@s%=v}Nb|LUd+c+Z^{(p}hNJ z`vjwgjYEWXp!;7G2FB&*7N%7zbJjUeQb&c{y{}W+;PgaVBUk2ByHUSL&GBtx=nGOl zZyR`Uzper)O|2uje#GaNyv0SK!==;4P1^TiQjlOXGXmVVlCgl$G0#du2H(FKqHhQ} zV|igdrr35%F?cpw+oApG*$Ye$+L5ewLb9~=%nh^Ae(Abr!D(1T1cSG*?u%;hS4o7K z-NL!(lU44Nmdzw#I=g!59uT@H;zNUt;1KaAE7S%`t=}K~x80hm{s2e)7qhUB? z^I`#2M?da0mP=WCCT87vUSOZGaEDcS#sw7?lIk+*6D19k|14+fz^a8;iP18g{aZhcu!BRr*H|I z9mEd~vi|e;>IDpGR5{R|h7~alhamv?6}tA_MZ|ic zEHu=q(lzvL-U`!F3vI2=7prq*(?cftms$(VSyaorThWZmeI6g&jk)vl&KE-~Y!634 z@cH%CgsNC6exETuxgdB)Y|IzX*GrGkLWf(h*Jch`@4o7cLF;%XM=$)SlNGE2>;+&I z=BBFz>)>ro6?Y(2sw~;D`1}bg^w*ootG92zMW%IZP`Cn(4hMg5O}eKV>iy~h(~vn4 ztGP4~NT?p1NVPInSm{28-^cv?it5ltKG&QUm`%v?{>rt5r!fA(riWNNo|tc@blqqp ztGIUOB}&pWgx9uaL0S~-7s$)&&g&bH-p&_EK1F?z`&KdSaAcp>f~+@#q-%r^wCxN7 z8i?NPTrPuAD(TZFrr(K%pzhmvK4oz@JnR`#sM(UIq$2o|l3yXTu9cs~CqXy9)5Az6 zj2ha$VH~Hnm+Fw|>=|E#BHva&qg|xF9(85S#@`=hRbZvN1OfQA_MO}cQ+MugOY=MJ z_pnGn-C&bIEE3*|K0V;U2Nl@kuUPwKEvzTdhq|}P)sZf1(U4ahsb4tbyQ|TGXcfxw z5S=V7e-_VdVcY2Fc{M#*CH}2k(wT^@I^K=&uOLkhpQ%jOi?xd;_^yQxgzXK>#Wfmh zRP$(QRNDFB)O=*8A|Hwh(yNRINyQa#)hdSx*;!a+)S-7Lj{7zU3(IRX?4blj^!Q{{ zQfw=_yb{S=)ZSu%Mf9f|Fq#Nwu`|TouFL1R+5}92xC);>IXcEVnj6j_E?(rTHcXGL zYRV)Cm3bsjah?>FGT9E9Bw(0rr&63i@gx`OwHK6BDE_3{_HBY$!7S}lF84smKunRR z{qgLIF6A@$>pq+D8+nnxcXz(rJ6lwcIB7cu>Z4T;c1OO+TX6gs1hLrqf-j==S7iWX z%L^awYPa(9$yL||dT!3?^~nY4D{_FxQH#`^Js@{+U9S+ez49Px`JS>Gt`{>zsP&#g z@6w42o0G)gQ=n83qi|+5+{`Jox$av7S_*i>i$Q>HMpF^*V4(xiQYjICef|wvcwIIzZi^J!-1!Wbey_ZQPo|T2OsPh=#qo z@e0%p${W=fDbr#jZ&U*^E;tyVZj@VPmNwM#=DWsTt+7N)Ytr6U3L#M$zp z`wF-i*;N>58VgMK2z`V*0KC7s;U9<($A%{l77mrVw}e{aUe}jXl3*TsoXA8BV@ z_?;Y<$2{NUv-gDO1*qAm*_au$2lN@5CT#a2<1^gNzna^-R}}VSjpR zJPgTmDFoK#0y;p=tjy)erDyYE2J<{EID=iN4lixfmQHy7_SMJlm+ybR`7nL|^E;RT z!$RE$w$JoTn!U_$foXVIIEJGO>TD3z>A#5g@`>s7kSs9&){7;jJd?%tq|n;esHe6)kYoytM=mBwlkARO( zLsYGV%s^dAmFM#zY3O|VLR@cgZVM})f66$y^{8Q-_`7O2wO@x9$%fDUeGUE<>I^NVEOEFcyRYmJ(oxQm&g5= zk8pYLe+EB)50~qMLmPaKpuAeh%2dw@_G8)%uBjN6f{gNwpqUVqRqB6nO{L`w5r<9m zapr+am8I{n{^*cHm1@71~*JxfK_p}*7EZ;)WYQqeSnui-@(&kvbwq9^Y{^hs!(LP7qw=v2CZp+e2 zQ%msye$l`ujM{5jh7MBcvVQwZ+riNt$;AFd@jcKxcy+0K3s;&*xP)R*NU3Bf?mn#v zD195o|1lg$SSyOOmTE7d7At=Vzr?1cFP>i_ewWG4Q8$tWc(>2br$DX8g91RV@-8rM zVZ&$OPnx*YdR1@Hmaj?zGV^HJDCuBXj`aFD`}ZAoKs1jga3#+vrpM9elKs>NdW2o_ z6eUuSMtzM`WX~Ry<2VUYZ@#6y?g|0Y+qoImIGe1KVRi;@=rcRcR1f(bZ~;|1)ecNg zOPHXL1rJ~#I~Om*NpDea0_ZvVYNM_V*+Hseet6NK?0DeyfpK6J2-I;jLQ;+rf2oQ* zQU(W$vLEK>U*wlXx;p38&^0R8(hVf=lLAB}KH5t>G>|Iy#pF)eneCQEQI-PP-Lt6C zLeb*noVwU&vk9~EYTJNOvt8pk8+$pI0@HMxRmqat9Y?mSk{s#v_pd(Sqv57C9D!qi zUCojzJ{TU|H#u#xGFI_H!=E=?q&#+;l+rHMnJSxoQBk^Aq}+jFFrJ;CJ7H%J?7)Ca z7%E|^Xr_X(<0bu>J84lrfpo#SPy=wK{I?v`-IwP5>M<&Ofkmb-i_(vjud*_VNj>F;OTfi=ThjSR|>>vJg^aDC@=WdYv10boAh;Xz4s_Nh~wj&|@bhVVk3$ zO;aQWzz16#ogpZSuq^Vd%a$ZLOfcpKtxB1eG!7q|uGy$O(PCF9)QAhLPIBhcizH6M zEJTZgvVbuFdHy!24vf;XX9JsRuM)MVlYI0*YEMxl6=!p{l9L`UupA*T*jQbW<<4Ny z(hO?6=6T%M8f!@2 zG^XxF4QwlBssDg?JOl3FgQzH7u`nk&7KB9%XcoI>twPxcBp1jx+r_5#Y9{AqX)H3Y zTXhnliVpfHVQtfK8cn5Z9%^V6dhQ_vL!15384R^=Hq#5(RV;+S>07vWaNA_CUS?aC z%O89%t;Qa?=5cJB)%oMc*r>HHHQ*gK*ic|6Fl#%TKAstVj{2@1FI}2tN5iQEEF?#6 zfy1e-K2%3-%-J$ctnPtsoV&%kh3Y3pOiYexZ(2Xam*E#IoFQ?;1Gxe4K_)5SH! zE(8f5r>G1(0yz^+Ne8RrTWj9ncBWnP-7&uD09Di!@XvMz6)K4duupCuB_t4Fs z3qB#YtomauJKn`|N?ch}U{K zloo)VoWjGz*Y4V)_Vm!|G0BjroAk~69&F5KOwpNX)hV=6SQMoW;1V z#nIFSH8i&na6J^e8%Rp|p;JMN=|Rr=|8;0DuTJH5lwo&SdZZKpz@b6P6m7(>ps;kM zCvSr{{_+eG9CPGN7tgPp!Xe63MLv*3FrDfLV>+)Jl(|MK>ICPf+vjb#(B7pB6Utp zVV^GR4!)PBM9o6^fgzD)4RkH`l=(^<{v#{sEW$3APP7m^tg(mKal@?6!PC(#P0uH{ z3?&5om|tw4ov+Wq8VsP5KR)ynpEwIOS-A47ddAN`*qJWyq#|;yZ`WK=Sk3~kdp3M_ z!%!J6*}kNZP20s2Wwhlsxi!y{^B=vGN~=&I!qJ7l7lT*B;D+?+CgURQ?iK5GYtFc{ z(rQ*`wx*&?x~xTZCWi0crG{c+63F(m=S)f7$MBV{srt`xrtX>G+@|lpH;58CCWtmF zCrzEj12w@xhQI|iPR7@Q*n?OC8@*)GjU>90$q{9;ZVp|Ra|H++YmK_!9yHD36!nxcL>uh7tq4g9VX?iYU2)o#`#}fBWi{~&fIUMuAN;s zoXqo1+2Gjddui&VNau-taIxNwpbAb+sD`<#x@wcB*C$iRE(3$~s7$=WonKJMb^G?_ zoi=na&>dyr>%f!@k)?bb1!m$xsW=lCkmbY3J{`tXDPzDxR9b%c@ivs94qc=rkSrQW zs=9QL(Ifl#+um|*lIs_hLxyiyF^qpTUtF5ipf>eJ9c1t(^!dp$iFp))Y(G8jb*?ao zR#~LY!vuU^yU`qSFtY>BBLxFcgx=>4N3Pc&1^%Qy9@vu{Ym3H1P3}Ow6+8K8t15E` zM9h6A6_6*HRP;{Q{5q0UcnYrvUz9bV`MTbv2UviF<3ev}3XL5YLsIV#4lsxw6gX}% zJ)ge>g?_ARw-c&$F4s@K1~Q{^$4#B#>pS?{tG9nL>nDDh!S@0VMK7LHiF&>ml#XBB z{XHKD@A=;k{`(*vYtHoX>|*7_ZU*8-ASs@M=YGBKS<3eal}EXe=224tq}2NDg6)9y z^}xtxJc;b22k}Eb>$QRSBy~ib+kgER#<>fLge<#|aU8Rvl&U%~SAualt5Ql_Dft2q zPW3#1$B-qte@nD|Coy{i)8~m(43ofNU@Wr`m^U4CLy#%v`f0?b6{dVAgji4cSr2vb?rn(r>ej-g}UTo(UI`uJX$;0Dl{yPyb%13Jt&MVH$KW{ z&r(D#4i@usY!N5nb_aE^c!`~BaISdw@zbk!uWxYPFw1af(AZp>aQ`E6-Qu@_fEZo? z60{R1vJ2Oj%7%b_059F-)qkMNY@xyPk9G!vA{ zr;vZArza*2MhI30)LA#FX~#K4UtM78PO_?Tn#UDN(YO!>0uL@s$qG*1{`LL(=IzaE zmU`H(&rXK$EiXEE>}ZFvz+`~H@szMc@mb0~ zK-0!%vPA83)Y>pM8EK55)3yrPEERmRX`JVM5dD2L7_wP?Iqif0x>!!vK%H*d88Owi zr<<|g+$+Vj12l8iQL-RJLkiw58#8w)r(pApMG7p>mmcE@K}}RK9}l8OV8EVqpM$j9 z`g@d&$E#=8Cgl+az@2V2U2+j-7l(t~+8(xAHy&&{OgOpB!F8dSi!S;U%hr#{>=g&O zR~lGw%@>Sp^+*u+dGFa*!r)76p!2yaDA-sX3a6>A*qJ8~f&sjo@hP}?-RUmzP6^y4 zeu&uxf`N)+kNIO4=$N%cN8!Vvz^2AQB1Lyz7?1Uou>dsC9NtO>gIvMjhh3Vdxl(T&vJ5T-LW60SSYgPKc_Nle1P;hhZYWy@)Gp&GS4 z3i=x0$q5t-P8Gt7rJmy+Xpd3`n$F~|qdB#u=|$!NvK``_ zlRQMoI0Y+ZE+b%@^f-4ua?h=3X*%^`#nJ4MF;=BLTRk#g`!gy%-~cc`L6icOA2W~9 zO)~qsuakz!-HqTHW`f{` zP7~`~BIDdSaxS!+ssr@*k`obL(-fNG04t!D75sx>!PdRMEIsly!@}84EI#6G{FPz5 zHhwFBdZm^!ESXt+^}`D$`h0fbem2Ex&lHfos+|DUr<)Y-%&#}JP3+yqiuHPvIB%+9 zQJ%pmJKldVdZ4ilOdX64+6EXJ^vfi331OJ?z^FJsmnbExzLSb1K>2_t2}#^JSz-$t zieVAKf~J(BYEMlLAgusvl8Snmv}w?^G)*Ax7Z<2uGQoOEYsgBq?SIRA50JI}BJ#oU z88C--kx1e!&rnRHmKae>cZjP*ts74{6e~o=0~Na4W?Dl#{aIaW>0_xbwTw2~$E(Hl z@}ORjfSj8Uk$I#cCLn+P%KAsj(DE3?ce9(Sm2H49^xXaZ;&I*n1&Qg?oK1ICrjDu~ zYtt7Sn~M;UA_3YqAN8GTSKR}q2IC&-(-nB6Pk6j+*ibMkQ~C={3z?*XCw z8s%P7#tj6CFr8)#_55_LgxJ#Dei71a)LdcgZ&+hJw($Um=9jO(o&9w6`9~rv>Lht0 z?|$V+A$3*XyI&6uynC?5roHI3;RQ%v-$#d>eIv~kN8nj=BD+s%I*pJa?0E3I@4x?@ zovk(K6zfM2p4=?7QU#{B>%_~Fi;yQTi567_9#%)JkqWXDc0CSWam)(1p4oWg)Vwj_ zx8uj(v-6e1+#LS`)B`nc+cVl=-A@Wo?QH(C4H7eaV15gZ^M~H5o7VkodpB)?)z|m~ zT)O9S@t`1}lKL~2F}o5?&lmJA;^dl;=@eC=|6?XZ-Mv^x=9zKa5i44P$LMQj*t`C$+(Y_~N(GYS7-XoOhd!#ab7Hup$ z+4UxAMj+qV&PkDz2QsaRGw@$v3U+$Y3Z~dfr~0>bWeDc4=w_~g>TI-ghU^za2d$5J zvD9+%z>l3Hu#Yo~uUoJHIcC5;T;Oho28}skpXYM-2Rwl-;|YX<_R^z_x_!y{^Eo0f zw-#aA(?d$+3pmnTm@BdU)T$MN0IJ(v%c8X#KY*E z8)MRV_Zy|QH-Oom!@KjW}my_w2sxtecIwGhm9H=n`&jBM0T zSJTTE`bgE7m~EEgccP(zRt`ZXELe#<#A|Ty6|b1(3&a-tM=QZBbf+&jvr$kbGnPRj zFH{kF4J)1p#{+N}P>_JxNLm~ueT=K(o+$xt3@>G(+>F3< zy~xM0!Wr*%UF|^bP!VAJFBj)4SDXOCih2rHp_ZN*ZFG?E6?X-WE@X?%YH<;oC&k-_ zPYWgqhOqWQElf|+&V@E)g8zBWWdMSHX1+#_=Ke3+foW%$)#AeHYaM!lEj~Q}dL7v~ zO(#4XW|VLkQ{>}kS&nNv4z4%vrB4N>2PU>+Bpm`g#2SCBdR5z$Gly>l-+%+vnVuG= z$JbrWMQHRTJVwAQx8*-aB`|D*4YrUI7!%Tsg{HPfGcF%K&Xk=eD@u@Pe*@}_N+NL5 zGuJ`6_*;@`wF0m+Cx$=9!6!shGi8i~d<;h29ofP(CS5Xq#&SQ-y`hJ3=Pfp8z(I_5 zL<|g+E~^v7cfvXL_OeE9aFmWQtbQ80kHz%VrZ?06 zTg*4lPk`EVOemGp&k2gQ=el6iWBvk-tEKqJu=ctxNv>qv*oH=dwcxsQh3p#I*VhGi zEiNywvF&L?Q;1zZChH;~czaQq4eUWi3uLKj)s=Gh4Cm1lh+wN^T;r%PwH*dj(hYP% z?>`1xFfJAnuCp+(#y)6~ zSdtV7Y#*&6XZ68xr~44-fG@7Em<~N>nAI~hTao>y;zFH1eBk8hy!(X>s6NBEZ8L4B zW9(-}1}-T#Y`!%kO1?QvId6yXVplD5pONHNugMOL5(;wE(Zc0TW~@V#qzK|r4fQ}&mZCi3+feF*r(NIa z)o&zEXc-<-peVnpq|#n5XO7O~n-^ZnAe5;vh4M)Gz`dbcxLsx_=!OOxsisq8>b3E`qkn+$z_rxq~dHBk!s^n~NcIB4%8}nnPA9F1m3Zk~Yq; z9C$@4bewhcR+$-;YBPPRog?KY64fIfLm;!>QeI*sLQeNMt|qGaf#GN^-@D`ka5cxb zy4TQ5+|$EQy3vV|Q-x@0+&W@=SRT$&VutQ8&mwaA(@PT^GkK?W=(}*8CGG&);NTE} zstfChxafRA17R=E)n|NmGz5(m_W5n!+X3pOcFhg+HuJO#6kLc3?k~0`n>&;~(7MYg zc&~0JKzapHJwnW7O5Z*Vrvmfwd}NPuWwIZOX!*qBi#x9GgUWdA0`pP=b!e#00A#(k zoxNc%zX0!C?kfQG0hBwD%deM_??CM3#u}t(1gCcH)=^XQfPK*&a9tZ&(4q}EwacOt z_fAk1$hL(y1mzf5S85A~Kwz|X(L2Dh=#isV6BG?Sju?X++4}9Pzuj!tH~;H1Tupv> z^>(}Y@ao;iAAk77G=@8!GSt$yCJ6CEpC}dbi=T7jOK>V^%9ZkM6$`7HBx}?>!j7q zEKpam*uvDEA0*EZ56&n_h6>GcXZ2A(ljt@hXA-qo7G}Pyc(l+?i`(h)J_V*hL0OpH ze-CoQ)2oOfWO|kSO>Ts-pnjdYUN4&t#7?d2F+;SFeN-Cu2S>ZjnwL{w1Sat#6SrSP;n zKs-oTAOQg&CDn(EkY$#w+p?r9QB|(!>iX@o*4lfYM`nU@b@fcNBTON4pM0IO&wf8T zDN%yymW=M&f}6r2^GYZ+U@K7geO#=7?YcS=8kW=3w1w9&Jp;GTMy*`@35rH0x^xu) zTXxIM*kb*uSmr{;2v{CXnAm0-Fp=wtB(XrV&3eovF%cPv0&ES(S1nMY0_nXH$`8nq zP~}DTVwAaH85jGHfr?JLWI(WJP)!yBW@?z9#YZ6t9XaSZB-d$G{#riSGu4};C{R{B zJ3b?V?wVkIimVcffs)ii`IrG@D~KlZkp)8ae#4kVWR}P;pn0sYz$5+U52%sEN+<9o zqwaoA4}k-dp(gBKjJN3_D$D6`VTblqan zh6%Y|UQTHR*1ROqM%@+tiee@u=?JFbN?u+g&1Jpl6~8qt#xqR0EkcX9@2^JlYtt{- z#$tJ$l?yQAyy{GJ5uRiA=C?rbuOanI^l*c1)She{DI`gkC(KY{BivQ!erK66oUy0`*Q+a#O_N0;SQj0s0tdMJR89u_;eiK5pB-z}vWt$T`-XWt zp0AGU53TjfR|iJFp05r(@@6t$9e8~F8y|i8TkklCwlsXU=RW#c7?CR$#`l5j38RPs zG)pElXA5cZ5Z<%O^2S>+T;Irr1U=Ppp}Ub%C0rS)5)#sU{=Ju6 z8^Zy78~49_{B-vdJQ=iW+ z%#uFKAzB5HcrY{kKbbB@ucnjLdb#zOe?M~$6Yg$0y*+)}OM_|B-9exQBl_A^E)EP# zx~X5w!~qBCb%YT`zI#2s3DqT~(R3Y zH{pIvAWfq93kRbv2z(UY@1Z!MiK#KIHeJ@nT$2QjASiTa+8IQTt~hJAImp?r+kNc< zGZjMVz)cW@PR|_48>^k8n=MKh469mcO_&}HOXjN$q}Tnimz{8-H1&44lb+l2>Brz4 zwlmMQO6}7&pY+zzh$$Wo(XD@S08bY1?g@PCHxus=qce~HiPgpb=fTkpJgNo+rQ+u0 zn=I#>BYP7$mLS%_lRH|&3w(OT5+)#NMLyfm5Y;?Coo=20X`0;maPHd40kc4Dfd_Dy z^Ov$aqdq32_OnQ{A29kdl}aIRVvvzJi`h#Yju#|5*C9!HgiDzRtuQ2~(46sZ-YLxm zU^(i#a>(tnMzWD%78mxs&^UG0xvZPA;z+Bw`OD|++c*Dawn4OALTrUO`OsJ-TW;4| z@4Dj=NCPejV_ElE(c3_~TZ%XLh^BNrU7yPS0kc1PDi?|y?gVWHHdrR3@v*9H+!apO zfIRx~?oYeB_dkC80O{c~uB3naA+p#Bm-@yN z+DCl0h?dHnGmp{ZA;kLJv$;cF2{YG3)sLXcObya2nx(cdooem9&SNu5wub4kd4BfMTdss9fR_enn|W_~H!odhuSP40jiWr?iHtOk<5tzpO{uAjzoufCQ3aC90x|FArEda>6_{85|v-P#A?*gci)7Q4Y{uL z03-BO=iwv-cgViB<0rpOQ1-!~9;5ASjtYKJuBZR#m)F03L=&w$Q`umfWH!*SCJn;2 zfM^D@l|zV9cs6o`2;@fQ1u4$h1s01>;UyNfLJVTr-bklj0FqERcXi2DQY3E5} zr3^R_A%p-s9uMHd7ZQ;g5zA5nLE+%Exg)(qaC{^^OE_`*O;7}+F`9seHdeus)ESjW z3YRwYjF6GcfzzuG6Uxratlmj^0;J_78&{gbc0Ox50BV?q7x+8q+_NskxKvHfpc<-> zN6%mVVY*)0q^0vWn+qkhVNN-l|J-Y2O_^H_?hrZ{U_mya5ZitVeBu8z>c>L4h@O@! zM0OxhMQu8*=T2 z$r?w9ZEz8)pz3WP2@AqBpz`lY@a=%wLikIS=0Dg$k5W&!Yi49mxrn zhnE_7;V}>vCzyt3R=#=hJ$+o*vLKS+sNw(Pjd*cf{r@ge( zBP@*FcJ|GD2h^#>sa{VuJH1}S-IuvB-v5UvKFlc2WuRpna;7|>>hn=ro}dyG&YTjG zZBo`}G!Mf~krVXu>-X>P-t`|p{#Ru@==R%jU(MH}q|M_!b;2LIBT}uaI}ZNgJEEpc zb;sd9d`H9rS9d)6hwpgYxFg%%|6?n2(zxRZ?nrd-g*pv3nRC8Iiz!SG<`au1XGEUr zJgX%@*f-L8gziJf5#qq)2X|417ukK3=`d}%#BH10ykf=9&g~6Zn6G}feC84QNUl+o zX;!(xL?+zV>_$M8Vln#&W;Tg9m#^1 zj`Z!j-OsN-?|%65_TBy4_XoeiF_Q}QHmmWzfYlA$$jl;iu-brcz8k~CTBq7`s1ovB zv2xRx%foS`7pPY6aJxLBiH=0W+M$aToBY__iIg&@FN;fxR!N<&0H#*ys@>|P!_qaDeAXRQmS9>v>6oM0iCI{C z^q_Z%#J}xtnfi z_Hw?bV(dDlmJCemHuF+`rM(G7(uadt|JPqt)=){6=+NCW(aOx$#XRWsU4lSAmHJTc zTHuZ)^FwX%Skk`C-Yo>gu5I?ODQ@CeszJ>U86@AG3wL@S`$)j@aIXe-Y%d%~Y5UK7 z_ok>Lh8LOuR!BImE_y6L3#_N962Tv|-pEoHxwfnthSXz(*#_z;5F&^oK~V9xhWJ@i z+OX8$*B!s?Fn@(b8br8Z90|^xTl6)Sq_+9;1M}l}o}w#_98R8%B{_CbU*J}a;LoA! zrBRSIv`BOeS#74*o8?;iQJh9Uo$iWV1H=$_*X#nsqd=_Z!+ZVXTev)>PZEwOfF%U$ zvesf7nz6z0x3ZJK&O9B1PUR4C7E+(gg5w%9VZj~HotU~J+#&f)Vu&6`75vqT_Jj+h zlE{icL!^F`5FuM;EzLAkaUPE~qT*%Lh%BAB1Ai|pN#|nf#j)*RCp8)O-hM_=gVY^y zYuynURw8z5d7?0vSi3fw;bC-z`+bQ(kgk(jijoX8<)#{z7r|l!3dcoz&tnIB$rEuH z%ddNhc$sj67b$iBH}dPA(^vN#uDZ05X>PFEIAL#qASf{G3chUz*tRdxa?SJ33hOIf zVFA;`*t*i9Wx^FDVrV`RjNx5lO=8Mh7+}H{m6!msoF80lGCEl;MfbQ^1=UkS2cwNm z%xAmE2i(W-v$Ww%`GGn4fbO=OZp)K0rC2^BDsI5}j*ujlpS?g!pc`~s1}Wqw$Q{8t z24F+b+enu#Ov}CMNGLa7PezEFnyPfYhZQ9c$OAxmLpNB+T=Nx1Allkk+Zpc!lxNaK zTH;Ism*Zh);+qjjgK8NmtA4+nkziZ3@Wi-W_B@@Gz7T zm`qWZ`-(z1>zyC`_~FYB@9rKS{r>6E;mPsI(ec?)e{ghi%oy~+5saJ^`PeC8iuMl^ z6#rtQ9Zeowne*+doF*t`3@_=PV4`3P`5?DjRThKj<|JF;8^^cjY94C58YL5YyFah* ze!68z;`oKwB)%LqeRx1tOXwJF=Q>If+k`S;n00Qx)kS*fzKc*IBt3)mPc2g!8Mlbg zt&Sm)rDGN$cwEOaWqQ2VX>IG3^R=+P&L##ZbcoR;Uz3m05ulMcT^?)e8ZSYQ9G#`qUW$FCfP_2tFh-2SbUyQzRQb5IrwcudrUM0tBg?i* zEv*1r09$;XC&R96r=_i4f@81jieaK8E;3ua-A6mlxc+MDeE+{Vdha&`?@iVZ#O{Gc z@@uKdGnD9NdOd#CLpqE8Gup+_L#2$w4{feEprmSG3bD5BP~d}6HF8H#8}X{5Euf}c zvZOmdJ(?hnw5X*G>Fj8`JUi7+uvc`dhIo_3`J^&o+T24J%Q*+F;>ZJDrRvDO>EYeb zCh4x++smYZt`3cKY7h~Ln2mN;tC{PgO?Z*6~c4szvr?u^))@; zDycT*^9t0OWhHoWT}lPJbU&AJUi8+hg*!i6vco7<<#iG)X;zDCt`@`ryK-7SHo@{+ zdZMU@8^=-J;6^jr{YS!D*Y%hL(_>6Ffe;JNY%{B^hG{rS!NZ2QQ#Zurg%`CPHlq4S zLQ?I9uY`oH7l3+)x`ok258C?WoE{;qs^%W zZd4!*CLfhlc>(H$Snj0s!fj|68dW$;LoUBSVp$^{4xKx&GgANN?m_lkh8-Ya9gGt6 z(~G7RXIKV5Jq6NZBlRCD3RU3rJ)R}k^sBewdboC$c}WXXo;JR7@>coZ1~5-F@(Pgi zgnp@W59KkBB%gdf8Y5)RVwasAIvLypt)s9!&oP3sWZIKGce5PDdSB4u;MT5JC|&h-t^V+T7UO^5lj-LdYU z9Y-1NTcxs^qOkZ&R6IMMhi$#rKkN@7&{;k#WCvtqTEA_7?1bwJ z5R!EWqO$N@eQprQjn9kfW=S)H)yDfMMzew%r0EvUr}$JaKc0@K>%P+0TAh1)2m6Cg zEWO3j;Cfc3_BrPd``IXz?8VPXE5qO%0ul7X(whdE9_7#@knxgs6}D`>f=x$v!Po@TJ7)tjF%Y8R1KE*#M&zC1X1AW+!4Cv= zOT+kb!fpHb}!&ymzie+uV z9{uq8{{HUMUv_VPe*NjEx9@*KsP=1ECU_spwA z408;eHap~$%br6OoaR_F+OV>MPY%z)4V(csDOOq{r1&_pNrCNCc5N?H<@PlaLcNB& zm~1-3-vqojs7vsr>{Vzs-nSA^S8ZgsrM6G2?P`7v<+MuRu0Zfp$cuGuQxT9Cc)= z%tWZ$QCo>v$b(lf>jxBsdsK#s8Ty%DV#;BxK-JCZx(tnj&d8D1FoHv)$boX-d^cHp zjf&`XnC8y?*@`L2KurdhDF+zCi!(*7)gZgnW6MuRMn_d1#3d|FMASeN1#oc%9fxX+ zZUFTHL|ZRe-oLg=L-|m%TaX7gd^izS^h(%5NMQ7VUPYx)gEF7z3mBU(1+Ol+-p$?@ zs}Ai#@)d+SiyPpsAProckDbg=Nunv+P2m$1J8fr?m3H!W4w)Wjq}Jmu{J@b6Qw6a` zf`6UK1LD?#RT>kNKYWmT!Sd(wBA<`c?Z)Odtj;a4UPUizo6uj>4-%B!wvo2WV+9}- zX%+#}4AY-+aW%f#^Hpu2Yh&2&UbAYZQ@8XDT=^s z2PGpJrA&t!LCYcV^%7`ILPl)%tkQJAiNp}5x>CtSg*|5+d3zqhsYAyd@i!s z{<6K2EZ$%5Y}_!7+XZGB7dC|f*W|@G%5P(#Tt#L~!4C>?vE&KGY2Am|BwI=UYl-U} z0|wHVVdAFYm47AL6vy@m$kA-zx!(AOZv?_2>E70qnf4KK!J`p+dE)N3Ty!8C!Q^q@HOswM@|vRK&`cw zFJC^Pm)8WD&3KR)XYmGTfh}9GBq-ywYgr{{S99CSDPiZKJZ*?tEwE&nGMO5y;LM!8 zrMH_w6+^=}jq{of>^Z3mNXy-^gchQ+87zHZ|41E+pWv4o%3&T-eRl4e))h4CYYMcQ zO!^Wt8IXkNd%Hs(vep#DcrH8@Y^pT8s8PtEHcP_L+O8Gg9X9bWBB0f#<{BU9C%?vj z;9EEX=xL+K`$8Ts<0?`VZw1uMY0)kIK0=)1NJxP%FxC4!d>|peO;`Pt5akG!Pv}}_ zknj>FCh0TBZUkjg1t&$#D4wWTspd$%=Wt;xf|#ADELsah?67#-Zh$)#Fh70JDcd_x zcNskSihv)I1bla>EemnkzcL-?UE|(bXUz)z*2KCmrPKS7U|NUG_&qJ_b3O_727dg8 z35&!;sGivF6SUTWd2eb#OT4{OH?BI{{3TFc!)acL5{AOlrX7(mFJ4$SUrEEb zme%qBYkg%8V*>;p>9wG5KqqgqyQjzlPzX9%{l$cjl_%2gkKi}e@mPIPlDuZUsgV;?= zL%1>hNRyL4rNaYD{j_Lmf(ZB2)kH~}=Mx$`&(9HS=Y&Y?vPudWFW1{?nH0h|NgWyV zUTDonRNy)Y<5l{S;WWrtxJvP8sFBG9Szh)2^x@s>`?s?GZ%{2tf@I6q)_}C`4ueT$ zj8Y{mD>H9Gsee%~&k!tH9Rn2mJ3;%`Nsm#$`las?NtwgTIDI+yuBeBw{SjlhXw}#ibK5@y3LG|HItzyrL zkL`e(eVR;tin3YcWZof1K0NJ1F)_ttL6$8oVf?ZRn6Q&}=;@1#mXVs%mtkqRx7{d= zaB0#ua42CMj8XI$@bv0xM4@bd9N~!v)F4PjM$$1XOJN&jDEET9VndE0%tT1~Vu}x+ z?o#1MpLXtz#|K8F!z^*QW5K|7n7`V97Jl6B5&4TfiC8^ejWgjZ~_k zwju{m-@{eRyyGy6=7#@{g>yYqD&&6{$6(hv@y$IH*|3+9Ro7F(AXA@-1HCc#lPt8@_@WV`Tvl*lOuM%>^G0v9~?JR`W|XXF>z| zdicQ(GRBcC97q<%o2X#AO&)cT`TNiJuiwA9bFwi25g7H1O6a%Vm=STZAR_QG3bXJW z<=@76+n~?EJsGbN(vltNUYc!FE>TLarmi(iD^B-?g1r>sY#%Gy-JW*D2_$=Tgl6PK zMOy@o(T%y=)xJ;BHzu7i-49{-5&c(}4v%7Uk%h~b-A*nsOAM8BSAK43VJf-DKKOwq zfa?N9Dzdv#_q{O-9Ru{nhNmW&fMW>%6;h@*ft<;7-kklcBR#Q5UsF_HcT#Nvl{4$x z6uNO{oo+HG$ILXyoBxN~U+1cgfrwmH_2G<>ZL=+O(au z{1Z$Mi5R7a*evoj%CaTc5yp%*lRdo1wh1JQ{hYP{=8ttv|8(zLJ`3&^yNBWJ-Md1fRsp@yVvJVNXqAQ;SdJzZcA6zF zjwvAI$Tr>_a^64{dy6DFchc%WRWY7uxY}H|22c~`{0k`=jE7x8iiLnzFg2c7O>*iw z!;W)srn1@X6r(e>gZ!;}<$>l&CtUC^f=}c}U(H!`YHa^F(UJi9_|f$(VqQ>@@&4|Y z_1)(?STT3aQ}$rfjH|8ydZfhyxh>ug^g<0TUCMC{kmL9ag_V((yL)~!N1VVlwi*j@ z+IQKF-KA58o7r}kKaeUK7Mf8~HDT6-H;3qrWL~Xb^d!MuZ)%<$JsOVL{_Yi!(tUtPHTp6n@O)RD(*-!D=CHXU^ z0U>u3eAYbXnfBQTaC{^#nWo@URF_ns9D4uuaG^gG@@GNset}n$h{u!`%mCSrp>gdc zf(ou-c396ZPI&~&6mk(MJeMHo%eM&%njrXfQ9?4G05nxWfz1wx#q!?8j@|T|7MKRG z*v^uQ%!dPmi3cIG)kc=@nzW&W=uQZTw-SdCht8*Ki96{WWh9)$ODmghe!-1!tn@(n zlG#hx87L)4>QJ!#sAdaN;Ny@X%S+w_pSt_w>(BQ?Xct8r`5p4HKou-Y52Ayv1KZ;> z@s7QNs0WieF6wNqAz{VVIx!$XHfvb7R#E+9dSKUmC`U*QyS|<-pdbAT^wfV)l$tn- z&F3Lkl>3ahyRv~7KXyNTuTn<}xRVjH6!dHt*@5<}80^`eKtkNV0zLY51##sMhRTk} zeoEhK>M|AF2#!{REDC zXQ&;SqPnh^czNz`q1xcY&@VX~PWk9FPix?mB#0)&RvG5lXTbX+-slOo`3lw(mU5a; z7n2?8LhC36B&iC0aRnljTGzl3^*apVUD9>mGGU@R^ZV87Psp0Y;PQ5Km;L!?n3d!z z0h(m#zbsj0C;~8QL?hQR9j-3eys|ifNK#n7>T^IVSOh2+fk&cB@Ta%;=uh<#uQU2| z_ZpQgx&gbhAIfbNDr~RVYH?1uQ({*$QmTe&O*lE8@;GK@cH>yLBqGxqv%NxPWu9qZ zScdsBzrVZt5!7(8@EzZ@GeE!UN4n8(v^VGyE1LzxVn0A5CrFls9bbYWE2V5k==^As zWZ#pO@ZJN@Rl-jgV)cnw#7h*IYkMf`S1o%7f>$)5kf6Iq|P|^2(OXs3`of@bAArFHj%543@D93`Bgkj zBODLBvk5s(>1Td@Rfs2;hljE-P~dE1SMZ^9u|Ws}KP8IXKqM?+UJ zq%LV>*ejDg&NJW|K;6iem^K(@){{hnhKf=u)(QYv3O9&GC2jTdRu?fJG6!QlS;47% zJ6%AcE{=9CK>G@GrgA2jUWlRRXgOsu==c$|DcjjwBWy+@ARY$X96`@wBy8NC&zO%0 z)E?wosqouf;GwELQ2hGmJc%O!$r!OM~|R0bh6F(`tge0hx$xLOwaLL7=F z3$2qE&MRu9<0v%~7c z*0!kv?cw3mT(Zh4mq09p8xvFk)Ed$c_i)Qi(*$8Op3#bw>>1w4Le&9&BoPLmzD3B1 z^9E-D#}G>&eg65wr~BSN_bY*0Vq7J2>x}zM+IIn^uXe;)6+_Vg6`O@GE#F-0tLR@# zdAhXA74Z%-)7fQ>h=&JO%LVb%F|Fc4AagSh9Dm|S=o4lp?vHMthwfk~2b&l^2}TwY zL%u;YKU1(wX(4Cn$r48^=f1gq%VGsY5iOi=-4Ev?ZUNX?MBO9f zf{fjzS8BR}$6HEolqGFLgmKgy;f);A{_byIQ0Nk>7tZda%`IJ6WI-T8P5xu0r>Y^k zJRA&G#gBmxV^R=*up1eO840AzB%~D41;ZjL%i;~Rpe2JHB!*Mk6pXwBW^W_69B)po z9+x=b9Dh8)nEQ zpm0%$KzpEqN2j_MLs6>O{+XSoke+({baF90c>L}DarF(qb<4;a`U$WGQ^;)5@XrMOxCSEOM17L9JfF#dXpuo{IF1#_cueSW=u-Xm_rfhI-Mu%h#a`^@ph+T%Vij@<0R*{6JFciY!1z^zOguNesh#HJBsq9tnt81MtfVY zFZIpg%l>NEUo4*GUvQXvlOZ|;z?k$85g9DacuO5;$yqHTkf*BxteGveWDnnl1pI)* zt{jw?#depnQ{t44VwlJL>9j4E?IzZ-r4*rgET z;8RK)pDxHn4@x%N0Ob$yXo99)Kp&D|X?SjR*y6{$q6F(2ZD>9l9}Xq-=!*h>eVcpD zsLkbk#*Dq5PMca+ktnlmV>&&go$8>bfX--DHzO-Nk4CB>aU4O6g%i4Jh>CJ#vhUUE zm!HxLXKWphhnp&9r2*3Lh>T?~$vGm$#^B<=t*E5Qa-NwHMJUCW1c@}0HUx#vEKI2Y@(xF$C>e9v)vC$wcoZEcW6MyDD)xGVx_4^f?u$S6su;bmLD+P#>~fi(f~nK0xE~(?&qM1aQk~y^I=gY6AH3}^hPe{or6`Wy7&uH!a@;i!*v-^offVcY?Glr z1LL%3yhxurRpUq$*5-4FZM(AGqYS4QC?n4pw>i7N{_viRt?_mp z1N3?(9fU&eh~fSG;;ddaH{md^UvaD#HX;DQ0U>&kqvJ<{+k?2#l*Mtgpk2%)vMOk9 zPb$a$@wH|JuRkY>ju}2{c7-JTaUc4lXQn_F5RY#G*gjB79%4JupBx()AuUA@5uOkv zpTpKl4Fs{D*`26&>fPnA6f_V@AqSBm#jVK@Zr0Vrn=j2s3&<{rMS#AVa>A)SMI5?Y z(Iw&W50$|K`{9A;ppVI$Mwc0ZDyisHP%gJ@j=n{(xzDIoFTmhzd}p8l^wcy zQY++*aJxF{ZWhZIzI*Ad@>n=2C(w6bgn+gzLMC6YBTcA38Lv8^nak0XkvVW3HFjws zWzK^Oo^Q;=$(&O5xs6cI8bO)Y>p#Fyj32}|L=D=Gc8#~`R@CN5Fm1eo_=K^LoQQPK z+RClqCs{9}7K3YT9bnx}4>0-CjY@vtdk>+sh|fa-)=May*VFZU>@i?rL=7K$+C9K` z7zWubyO2D1(ghCN?;b%I8$J#*MR20#p>H`H-(}&Th_%(04tkn=Tvem31N)-rQu!~v zzg5W{xS&i|kATF|QPAltOreYANLxvlXMi)B5;;IQ877{R;miJ$5B1I5;}jx~Sv4g6 zusdLN+2uNgq>H3=TDJBNYQ-YMnUGzmz`}?6u2~mi_&$)HKD|9T`)v)_8du>PtYW!! zR(SgRr}}UDlts&9f?%#1_h(fh%LXW8txvQw!8p=vO2{j$l1-(*4cBeM3xkvhFTx4p z#eAl#yU?Fc@0t~!hBYNvSZ!p^|`1k;U3 z7~DIKh{)1^*mIh}mLu$`2%0F-Da8JvNmA)Bf3EK~pW`?ZoZ>{ZWO=GA(sU%aUI&5@ z3x>;eTT4AHu)cwxTnY%B3Pl!ZF5FDxfpc-Br^V8-fa-7h5z_qbVDIhwja7oP9(;4$~3TX37_n z66&zRxF{E~@*s2u8&MD#LqR}#U9z@Ia)Ib)=P{{8@$iUUDkRc6&WZR~hLoepgXC(4 zlyiN8g?Ygqr_2a1t#w5sht$b^E#3GvlAp2v=ysR)k%%iq~QnPNZGFui4n+sqI(d$0BwCGdR8-%o1|M8$eq?Ij~7 zkWN%k99cliUi5kE-T(6O)7?+srrrsq{PHB85s9fs5MGKZ$qW(TuCIiiJr~_v!xu9- zu*a2E!ZBAQ?HjDr`XxH#mIwMEPjkffhvyTL7Wyc@Kz$gSv*c`6Dr9Sn<_`0)TWw%C z;s0D9k_ygow(PhzrU-Lw3=psFIMP>%!o^J_PsI&sq4dSkEKxv1E0Ff7#^R76qA##1 zmQL-z>MO&_qe>Gj{kfto2mxBMWp84eadg75zZs0*Db>{gDMif317F?Oq{Bg)ZPPVZ zXD0B#=xpNv0 za?3P*p@qY^8`uxD>jd?5Wni4I((p~6maB15Mba3>Z5b^enMh)K zik3eoR*+UGXbI*tg(hI%pb0UAD+(Fo>Hod9Ji+X+rCX^mHB564wQn(F6Zv3phkL@L zt`0p)s^vjE1Z5!u8ZWO<^aS3x?jV{RIm60Nd9d7VJVe!^fAvi$sLnNR_!x~bi>Gmj zG3)$HnPX&p<~a+YSl(bZdR-@tD?k*6p~qRmki=gYVcH0sQieaY+)0HnT4yUu zE_fTVD~9l@f9_ETY!!9)qs$^t8S&fJ8m2!Ld9)CCZs@?YP9iazfB4q;6J`(OXkvxdhvm`6>58BX9= ztd8<7bHj=oBSe_8&s-(|xKjC4lS4(_FewGHX8{R=rcTN9sTv;0K8!BrH2}87mIJM)D;wrt~DlIr$?y zhHj7pg|eVfMUzbS@V)(l`SthH@!xj|L(%?@s}SJycf1xy|0nM5mzaFXNEGUoz~M;d z889HMAf8oCGE1$5L7`Fatk{Rdj`o1Ui@QbWOzp+BSPLi=&~o==zcfME*=a}biTLP* z+n2eFSeRQau+w_Qn`%{j5|x`0goiIy6!nelwN;4@s2;p#iHtQIX>B_|0%>0uO+k3S z^`!b+I#xmnc&DA9IfWw-s9`Zr^N9l7*3(-k9y`o40~eUquF!?fLFswaK2F0;pdSEP z$d%B+LwB6eNUrAYa(J6f}ORehQ3jKYsXk zDu@&=eq~*HJkBfxve+Y$2Z^Yx!qSs zoxfWBrl(@uXtVhZUtu@=J3jTl{8RoTrxqDvxXS6mpgdD1b<-?|^6J7Px{Jlzlp8in zp&XGa<`SFx9#X|zS#!-Q;OGm1g%(?E$|D6_G%UI4e1TUv1rMcdv{QU{`z;H&)b6PN za3=c>194aY;w++YVQG9%H#oyR+|Ir%&*{lFHI@|Xo&_g63RkKKVrQbJ$GB*}nX{fd zRH-lVLu4QhSX#{`hi|f%X5u-FyYdixSmv=Gx>tngYoq&7MH#$lk^KQ z0uO`#rxq<%R)ei5w#HX73$*@LMb;ARaZYpEosfK?lZA+vwP%8`YKl%+?+}f{&f;>- zFbc(w^Aea8IdED(;QLc=$Ms58#Wju2>o}ni^rZID0jJ-LROaOcPz3bdhd=K=e)#j< zr`*lKJ2}9zK6;75Y=^caX0I4@nr;$Ix6JyKvDC^$PZOf(5*Z_7Gpd^D7Oep*;s_w9 zbfnYYgHZF&Q60QlgY;mDd+uCv?O5?5LaD+`SIEE>$lo4!9$>v$K7i5|i&W)LY6An? zJov%cOhz}~qj=Kbp*>8v6z2XRH9>9;nAE^Z{Fl{Hj=(H)Qb5;7kVicR+HqBa3QQq% zV^4PzQEJbD6D&f zSvN~AC_)q=3Jkvp8L(MtVo3oxk_nMl2(*UCpbxJCUvhiqKJG)5p`kchHnTF6a3-qe z`(6w4I|`HNJH++lAa77F>EIRJ;z;m9b8!DQ@UaM_bV9`Up`jGTE(gQ0w_h(#*v|7R zg#+HXxoioh87v-a0krs_D40>lohubVw=Zgrdif62cUw&8R0ZX7C{BKnb=+{fCkqxg<0VAvq~3L?gOa@hyFWLc9m+{ZV; zx(3n}8n~9)d`lSa9^gEIL6El-6tZ*soQX%%3nX38SC716rvc4@E<;CUq@wb*anLI4 zg|y$2d==7WZh7@JwGg-9e`}PbWyD<~wnfHAhBcSmF)bx6hPgX?`qKzqI^QB92`jmI zf!^@e?hlz_oZgu;{A@ZmR#wAwlaQCt{%{?d7%h_3zCs+e@?qT>)`aqm~FQ&UNyqbRpV@-BGQgbT2>+x*mRI~jH8+s=-~?z?ttb% z%O%Y*!LvBl`)4tJ3l{{kv6zx2G^44VPD#|FMxn#>OIH;rl39V(ZD?i%rI4Ek%54>6 z^x{}G%CHaEH9FzNOm1F$Pc8&Y)c1%0PmPo4Z4*Z}zt~f=eE5OBEGtFZ^^t*HClbwe z%1WjSgS2AxHDid>PY198fSHRie`QR`3J0b2zU+P~QsFCKoNsQ`oLu7Tmr@rzXI3GR z%2ofSS0t(@CdY(6ge);K-x3&+!dU4=hyK*~G{a6qRfUsl*A%iI)>02m>~aq?N3 zB>{P)yp$F0vaZt0i_=&Y0t6K-_y7 zNBS~HHf{HG#~KkGrrUAeWMG`llBkms(jk&?tcS~|(i$Gv(lqMm$qA;rnH8i(f+X#k|3ehabeS@FUSn_}Qzn@1p5#NAZ^Hb66)aEhlPGb8CGDBs$(l?2 zQlHQ`(u9^Y0?mWdH`r@6p?WdOIj63j1ARu5TJ<&slu@Y-o&2v7h$0-gP&;LzI_>$F z*^yo@8yuKBWQETy0<+la2?WVYF#|@e%&}S-583{7TmPzQM$QgC`_|S>2x(DQK1jIfeWU)W~gu>oebjX zXzi+63#^N@mE2Nb4Brp5=tyH?lyWK)VtZKUU=i{p8jP{u1&Tt`|gR$80l!2-3-+TQHe9SIrIy5QfSoiY*myLGoqdh{;oUgTEt?m+zEfa`l2l=~rO>)ngmV&2q__0+5)3d*7<$w`@(Qt_l%IG<{AaD)`&Gk4_a$9I+1wNI<3rb*asJ@iMv9n zuox`|5~`YJy&-Ctz7>-AW{$Sz&asil1-Jgwh26%Db;f`EK-3z3^z9m);5{M`Z-tc+ zKP~I{1TkpS%A}Zh9d;REdbY$W_Xi!BkQGPv6q-6s6z-1GOEBH8WQt+TGZq=PJU-A$ zbhoU}O_0yyKoeQDGPR^%a8(qlv<(@0t1(tgOF|WWVI=&!RfOA@uL>Ig)OU(|$&4G= z*#ztJvUv-?JT;$w;yvf{40<46)8wJ)O0YD8tXRa@X_qR@PsSZlahC#>TQF__)~fEV z!_Wj3y+0z@)vcGpU1zgY<*XP}V^DhU)Fi^SblHsP4ZsdrEjGKs?Wy{F`624+9Ya_3 zhAXM9LLbX22Z(q+2y1d>F}Hljz?|`bM7`WXBqzN}Of!;Cps$p@mFvVeB zKvxID1Z4x{*~3&zY_gsdRe6DOg&;R|j3^nA(}`2Jr#D%VUfoS!;jkwjYg+?hT%DJs zTdMcCZ4#bneqNzVM?A{(IC5RePXX0>8aK6#25K=AF+|GF3|=p%iIk!=0Ljwu%>52^ zYX4>zl;?>=sJn{q$p+f+BVg0!F>GFJ-E*C70juMxfoDZ z#OIYF%sj|7>qX6WsVV8IMl>?Lqmsw_ocq9}^Fbxj} z)poP`bocqq>vwmee4)KW1_j3U4oD*dTT*$2`tw`h{7yb$o_!xjX@{_z^t$LQjo*S5 zwtch9V+K9%>+n}^=+-?(kFHW#ym3ME98J9zyf}-<^u)Dm3A_atGSI_5UER)loZmRm z%Nubzg?b2!SfTV*3Ty$^D+{T?v%-bm-fX4#t4nePby!A<0_s}u4G1E#SbXB+NbeU; zrO_<8lSaA8l|(Pt8rc)4_#HZK(c8z!8CYzM4SKv&KI6ZZ=cmvwgeu_OA&xOU*KM}F zu-)Q5w$I$q(n*IC%%&~-V3Px<%Hhmsi?zv38TB%>Vv2qY9u)nsLpuhT^=t*}%+LcR z6g&dgDg-j#SJmua%qQDRxcY}|I85^lu!q`+%|=KTvnc7{d86r2@2-h8T8C9Hy3UA=0Oj{B;@g_^FhClds=uQX$@F$hpM5>M9Ru=Hj1c>Z z`GF?b@*!u_(e?&{GptN3Y64B_C34w-7m2??KJohW%xhD&zVWyYfJia2$2*hm?L6MB z5&VmCFhI7DH$5WQPU=NTur60DCG=jV9{k37qk#EKowKzvt5Ttc0y>uOC<(|}vs>k=S~OnYSWmwqZk{9Z1)~H7O|UA6(bv~WFe{1`LDXHe3KSVXL6V2p zCmOOAN1Q}hRD>AO!=8Qle6soe%dnCzc>Y8XDZc68P@Iq?%np4I5Y2BP3c{bUgYzoH zz@FiW=e>0dC}T(5zdx*FK&T!pP$r#w!Tnj)sZ5y>>Qcw<9UesiU1}8rwp24#qvOS&VCv@&?Bwx3?V|NO_hPoH}My@4keJZ(YCg52L7A3wE96=T z1Qkew3)Lcrv{Wgb#c5$NksF>OrA|S<#=ngv?iip)ZAK`IIG-)iK<@s_=iTD&^XLBa zFRwo#cx(3M-Me0bLzh5K@B*RB{pU1nPuEcS7bUGRQCIlm0(L6ukIEV75kA@VeB!)< zaxLZ9v^hvG_iU}0is_3{PcC`}SiC^q@^ptvw|El|^8m84wQRT9r~$#)n@K98B5@do zUyq1@h-AK|d|c89Vy^RRW3^@;Bv%79{vHjLB{%tRU5Sz>;5%wq2P#rlHBf1T)NRY< zO}73dQ8SvB1PeI7-S7hk)aWa@t=$7e7{GPm1x4>A?I1tUd-|g;nOJew^%4%zvM|PC zGks2*$gRG(Jb?+`qTETQOf8FP7r4YD=e7`*X1!u36sLV^Z;+%pzaU;wxgOGw1<(EK zAAkHLpY)p#??2!7KHq=(^5(v`Eyth<#eqTp^x^G~JkmvIdh{nJl&)KLYJdr*$uPR= zLPwM2H-Ngp_!@Y<0n{v*(=!*XeUdl&7jE z_v%B(XiNZ+y2D6Agl<5!-9QLX1#zAXM}?&=f%JY4SmFylv2T=aQEZfCa&TKm%5!6} zs5uH~Xo9SA)FIG{nC zv|S+uYF)^tj)Fp11pFB|u7E+yGIF$sx`U8apht`$Au&a>npv+r$UDn)~#$$O-i;Aj}XT*8k$|!{yIJzaLegYQH=F;Jb zDf+>PZQZ%SLMoM=RmuqPv^VNGC5r%kag5(t-&~8nE0@JjU_Dky(*w~3akv?8gTU@~ zukY_az5U?}ny&2*4nD%6dH3U!-s^X&-E+`S$x0?(_g%4!qr5yJqejKl(#)4V57QTO zLlI)PSv+A?+mnN05KUVmJjzSlPk2xatmxYMXcNdZ z6OazZI3z=Zqh}4Pa7to*Co2O^IWS#-qLh8}F1kOAwl6EafhW)2&EKy+efWvX6{N}S z^N1Nl)y1*tS$?2Zm25!+Wn^+?1Lc6*TL#H8o84!JxJ^m31ZhKUp5v`i;Pbc+gOD7S zK>DDNdZ8%b?O;>NVes@Tq&Z_}zVefhJW<1Rw}QsHFydq?nFmcQj7X?B(k$p=B`k2O zn~_6*hbH87f^?t+J8o}T!r!otT@uuMp$eUB`KgJX};fF2B`Ok zo8Yxq4g(csf;Tl>u_%_)?=ov~KA}{2SP{8cpbh5O-p!{;N}1yl3D70o{XX8ki(F38 zBEfY32biMOQw?8}CqwCm{`n11eqVQPdzx|_X*z{u40fDivrl)aji<$OA%7sXZ9QlV zEnqen@umY$UMw1eb`3+Re)A7lLA$m@4bMOcGU>=`LpqMiD}gK`Kdg$M5liy(dUwhv5wP5( zc{NPK_0|@_BkOhVpy@0E=II+@i3?6V1hKVvTS4gG;;qM*Q{?yKYuMJ1e2i^qdFV1{ zoJA=x7)&$hck&ZzplXXK$oSy_|H>2v6lqghgUx-UB$o`EUl-@~xzV318!RGXX|rMt z%94E4kUU!t>4FKS;bN;Wz94-ADVw9M6>@W$=MIGKF}l1==1$DjyL%iKHR3=>$8+>I zU01K4O2}of?pm_ZBi7eOZ8tZv)*y{e-b9s9t&TEQTXI>G`v~C!lph^2vBxcenUqSA zw9cyvemsy12N)V=?u3g+5N5Ur-r5uVU4Zop3`z!O!j;oh+e(OrYHPU8+bLZon1+We z!uW2@69jPEIV#(0Gy|_AuRX$_aZ#AjV1SemutBebOKTnHN_Aw4nu=|{aPSIMULEey zncBcds5A=60)=~NMZKDDQHt?u>iCVkPj*CDj}ZTY*&Tb@iOTa;86d6PI8BggTYza2 zwC0g6=LALNSwdA?Z;`5(6gM3Sk2pQ4$!x#K-9u?Z`MM8}*_RPbX89ddBL^(as#gfj z$sNaP%OMi(mC6c-GNry1L+fN&+9{QyC_g|jYkEK__``Guw#*%2wZfvv7br+n^K!2b zq&6gua3n(z;QQKKEK<<|olt69fz4UEM2FEVXhUM!Ge~m_O`Z=yu9G^5!cf5#^z?!Q z%QBE*EPj6XFDPm5br<6t3NOMcZXcE|3mUy-8dNQBQP-zCv zCu5}`gp!yl`Ya|J5W@+u-3_shb`_&2_`)P=T&-(S!yijS09O+Zat&2O6gcUSa59gY zDTFghyx~NzhJq6DR*ZShQRZOm(LNsRUk=9g%?h6;+{{2&W9Km7zJCAa4!@wl0aFpI z7jfl}5B^4Zf&NLqyml}n3c705UF<)AG&!)8BLLub>hG)=eKw{*F}_~FSS3Pdd|}-H z)JgB5NzsjHg?@8^q$4J?Z~^oqEdtQYqYsp5MFT5|V0q4-=@c{^D|Fy;q3x{~Y(g56 zvc-FM0CYh}ea&|-r9O8vBsy1Ht%}n&fkiXEL6GOm^DgRqc-Th|d7BiuTQ)bFRjOm; z3YjPfeJ=*oGqj&fef28$7A^&Le7ujrH9)>}Hjj~|eFNtR~wjw>jgZ|7;u?mN;dX z1KZvU6mhr?3;tfm5tCHAU%@JyQ4Y`Q{Yd%lGir zFh^J6)yl>NVPN&CN*eVhSoI5A(71k}?#iKg}Wy!}md>!c+C(mbxlE<>qUVaWZgR}z^nz0C+Fqfdq0a8># zGk}u!4AE1jHo?t`vIeC1qE%ajY$pI3yb{A@%EI*BtR&0lL(NOUKKetW7{+JJgJ!-1 z7&*WLVC4AWFZXwEK74t9AD`JUb2LZkgY6}b*FEMLnw$|@ALI(e($R^)!e*m$*l3ve zfy^`noA`9#+l-H(y~9J&XH>N)##BNmG`}aT*U}I=#jZ}n1MD6+UkVaLtWXoGTzK*T z?5iS1ON%$Yn!6oziRk{;skMI<%@MM0fx?Vc!95*uI;<76*Pid67#na)wue9E5{gD) zsxCs5**PCff(He>-j*qzPyRgS5_&c;C35Pxmg&hFmOYo#P4mT?{fdgSm^bVGL-$Yb zpLTy<-~Dv^`kkkR>au@sUxzxkTUH6LvPZcF<-Hys=x%lopf4Nh!Y+W0pGD=sAEqC# zzx?vJ_fJ%C0R`{I?-h{4f{7mE9n)LI7syq0;Gg?#?>~B8Y1a9Zne)2$Y=Q}ewT)qj zpzzSjH*NrnO-}q_E*g}BGWeiM1@H3j;+keAI0V-b`YK07iDJi}a>v8L$p1*uC0ZAc z!_pBA`7TY6i`FJ$B`ZP0y+j$yZ3Mi}Vhbz9;_dsp>7VZ2NAjx>y@K2a$m9+>^%-D& zTA8;!ZYe;TIX~xRJCD1@CzviMgju(|fY(;#6^qlNd1Ta4aCNZq9gMg@vztU=Q+6PP z^)zbSQ3K5&Jz2EVBQZ>(qyZv}-*WVtD^l`za{OxEnQ@5*HSXY1Az5M)E@#kLzqi_1iRYm(R?ff!upFX~;u;hGe%-BZudLXc zu|A!%6M*DTfTm?7mGnV8N|TJK;I7`CPf$=+;t@`;d@E11{N;GOH&Gm84#wkO;Xp(& za$Sgk!QzzTt?kjm{>S-Iv>sfQx#LedmFGuWHng?Q6r>E)tmp!ZKkeKn0n%Vfabm}# z^h^8!`G|UG0R)-0zXbFT+AB;x-8-?-2XxX-KzO#oq&JXvD zKZ20W@1Xe!!&IBGaja!FF_|{k!`*xP$0eXZw2l#)rBcjIrZApxrfe|!?X<;G>mv5j*#PkEtfwdUKm|TyM)n=+ds1<%lPj8+SG8Y8h;}wm% zn?YJMz!L~P{49=iwcsA+6-nDNDO%)&3*&{4sLYZvA-MqhI)S7yXrwdtm>;Krib#_P z`voK8`8H*#Oq&uKXvAS7VWcl=UD%VFP=60r&#b4ukSp52n0OY1F@G84oS69Pq^8cc zL{WGRFN8M@8{J^HIA_jL*Jfm5t3maqS_C)IyVpQD89E?Ju88mG5AEEs6j9yOwY!-6)b7N?D*APlg-M$b(-tTz)0GigOzXZOj!DDh8|@kP zwUJ9>6}3UY%q3=5H98}K5-hKSZHB_| zs|kY~ZFakQIcr$HiTPoDL-~O%SkB%x2Qt>Xi6ez@Sd4L;Ce?LqJ2gtjq8vd!H-`tC zf7pPoB8eOdfA4bT90jC5TmFpvh@imj0^vn}VVP{7(#Py}o3XF)VUF8`R^K5%Sy z|HZ(>uPlYKCYTGEDW)4skRu1Z9y9l#QVh^G3IW&k;xvGoz(5fM69Yv;6J|swAAhO7(mNklBY`6QY$QN~AjE9-Vk!DJGVlIWsv`E55Pt~*Co(4YM z17usF;h*-Wp5}?tYYBV0X%`2+$RvCZYJjLJBX3RC?EEiwiX-txc3cAKL`b-q;*9PaK2~P z=zr>=Iz7DDN!LHdQSX1+S$xqY4YS4j78J7yaxNG#v5D7};$se()h?kq>Vi_kc6o(_ zYXk&hTQ3>;w4P3TgQ9K?Qs<Kw)e^ewoi zWwXR)@?6Fj5o}B_T7@BjCT}NaV3dJ8XW96h{5!^u5Mpr+TlmxR?gyq{TD|T*g6FMs z$|g>*eywh8Zcir%Tx62@l$%qW=V*#1C`8i|u4|aqKsPtp%}NOrT0;%f@T4m**U>c> z5)ux46H2Hd^0e`|337qAZ-J?63rd=<(y{Jn=@`JA2|6UbnodwycZ=@HDt0kiuz&Jo zH=W*|ob}R3eEVnzeu}Vw2QPU9c_pkMUO|~>Kq%L6s{}-QjMbUO`bwKbVf-N8Yywf(btNrSbPf`Sp(7Y(C=(0rI8AjHIV zwZ};&nZwQMHLO4dN#vCm$LD^>n95`i!kRP#UXbhwT!gPDNg>S6`0(j&a`(fRpMczq zib;ctN17B}m83Q+%=ZvryBlqBo*PiCJ{A!b&)h!HVNB|T3%3$y;gG^OW5FeUQg}`3 zDpT9VBFuH{VgwXb(%>Z=UgJ->MfSQvWzt=Bg`TFgMLzH##NM&*a zJ;=*I_>PRDydiU86Fkd1I_W~&y93Wmk0V`3duxP!sYgf6m|I|d1)OVZFx#4_mZzMU z9vU(A2v2#1bCvB!cOQ56@O%5lc3-sHBTQQC*`9aNu^LfwT8O3fTkE4;z!fiYgA}8H zPMzP$Z%2$jLm<4V@V7u=4q3f)UQ7*5N-mg6L&fF9kPqX33)QmUnp5s6vv(keu{?kZ zYwzu%dMD{jFikZj1h8KOwLf>KY(fWLZtzJhch$pkP?X`Oww!69XbBVHNkVm@iT+l_ zBquWtem@u-9vz(=9z7i#9}fG&{@pkI6IL)OP%6??oH>|u;kYV4rl)9H1QDVTuuf(h zjLH~|m6Ir)V2*6kN4q4z8W1n02fIbgBO@*8#;~b0!yI>pMN}gmmBh5)v`RIAdSSDM zv%BVU#n@BN#>po%3uI7>;=x3hei!7k+;)b z93Z`_-kw2MQ&jV>La+u#;4C2Pqy!n!R1(Y7rPi zg$?8!E$m%T2&bi(17;Z>YQtVy^XyowqYZ2uwD7MORu9CjFr}VDZD9oCF$yv^V+fvj z!n3kBx`GLQ$7IffG|GYuXcd)#BBBlU!6WKmA3UND_Q4T_;PDBqcf+m!+rAq<>%Z;0 z9sPHBw~*>8OP^Rxc=~a9UTumZ-I7 zg!DQq#CrMq{g3bNK8dc^SCZRc3-jH@dWk6JGAxu}83jMMScWXRbHw=&-U20R2{ivD* zYl}9?ynD`i6~G4QD`FDx@YoBQ0@W#C1W1o6Sgutbgu|&S&X&(=&h@gUHdY;b^-2(< zHrr>GU|Vji7Eq5algSj>YhkJj#g)&uus9(2^TUsK`Y_mXG%Mk~i8&nle};$k5Isf4 zM_>Z?*_7zAL(bMKx0#udh=`(?4lvXWvhFySW_-RqG2u^6zRfFG_7gxBU1(QjCCmQF z_MuXi09UmvXEu+W)`S4*8%zO)?|o&~NjKnF&^txMY_5bTQl0=$&X;Kv55b!M)onC_ z>RjvAk5OfzcrphW;SB>4pO1Y7WtWr*whj~~U0Dgj;y9y?TfTfJ$C2PP%fM&KWXj#u z<{V$acr6x!lo6KloTXQVWQTrzIVp_dSTP=ANg75fbqM!I@4N4MXRK7kw`F+p{pQ1$ zPjBw<=EI)O-C`GcNCM6ows~1|gk}h{(qaClAwE0Rj`RaTNyFugSM=FAqCb#Vj@1OW zp(SW_`D!=1*}~m_vBWr)oe76gGI0%H;ws2ZWdK(F+T9d|B`|T@ON2M`+ z-Nmc*dEi7G>1~U3mdfGwY?{N2$29N?v;Pkwn%y=G=VpB0k8z!&D@nmzy)XcFIDmOp zpBbpy2dWODhORs-njrU_MvQn}#Ur2AO;AMyv7N}nLf_;5;n8;4 zKU6}13Ovv{-fSZIKz~VsayaQ=_a1j1xP^>A?Swu&Osta|B-b0p)6+O(PpT{!*N}kFb4J)as3DX>C#Yvjxn?aN5*Dwti8f^M&cDQg; zWE|<+2;Z`^AbTw9+ZY5veVI@j?$yQuOlI|Izw=h&5qvi9olRBYL{P*0AE`kZYmE4W{I1!?wFJw4QaYYIU%Ob^V) zP~ZgP*@MMRdV4{Vsnvlrj36#j`huGfKg>1~J;~^d+2R_`HItj*j0D#$DlS5%^-_zd z(3EN|Mg^LlZWu?xQGK5!mEi09Ws(VxHO4Gdh&F3luU37xUbSKKWk1N6%+)DC!H#ra z?!l;jSs`9=Uh`0F8Iv$!zb5ytA_lK3as{yjFBbmyz+mk;-MFJAxK-ItG+!;^up?<+7~fFU$Wo`GoM;pU%z{_yF($1>L@J4l0KZ;ytj z_p1qQKwvB83N=Oas4iK%%CP%Q17l(Y<6&1DLmYidLv~P2aJ^v8WW2w=CV2u666lVy3FD z23Bc=5Rw zuIoxx9XBaaO^9D<8Gs1BS@-f!qbKHNtklWz45AOS!C+zEBI^Z)j~*=#&65Sw+r0Rm zZnIwIaehWCE2-AQEG?msN?~0k_DwegW_ruNyB2sCRxema=F=j7=!5q z0Wiu{=y-{(Y0KnHrqgMkV0w^tU?@w?AeRPE7o?rZFax*~>J8I`+9edcp+4={+}&tx zX4-NkbptEQy6bgTTFR1lRU~RLVoMMv7=oHHh6F)ke#Yj)l_z69q!8NF?zP^d(2Gqf zp4XOwd<;=7Q8SKVLiKlZQ91?{pI>xsM<@2IB0#q1Zl#Ms;cI}TAWER&Z1a^~wA}-$ zkMsxu|74RYC{W|pYeb~3QeB)V15m*-nuI|oNohXb*=m*lOJc~V`q1?wkR_=`_--wP zhggT>1nVPNU)zCye4aTcW;m+BdOI?`GiX?o=@^SYop^OVZ#3dPiQ-5!#vbinS�> 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

    -_=J6z~=2 z7jR11oI@C&y}f<=;b%QtE@Q<-Nx(!FBSp?rP?~wfwnu@M&fIqrZm71@?(%1TsKN=J2FG^=83&V(LF7ApjYI8+NCc1IDTCf{ z7U8T!P~OhIgNXdJpQ-fPLTXU$cIb~Tc0c^{>Var5OG9Z)q6;vE2FSjXGT>FD zqI8eYX-GUN$#M$eg;7nMtwI&t*(HCEvBfSW(5s--w)kb9+0Q@Tyx*Cs zTJt=b9a%L!i^)yRzEK#|76x;GSc9g(tFv7|(`SUrw9Sn4hqkSqe}My$O+BejmV1B? zsiaFuX9&%6OJUl|92Zm50&6fv=&r%uNDEXYGe6*Y2Bnh*OPIZVhlF?T1Fn;8 zVB>BlZ;MWJ*zhcAy<(Q8su-Y8N@}d&N8FZ>nmP&Qw6J>r_Ri+TmJmVTIup@S*8-Dn zGJnAkDQprhHT{gZ;@QuL7v0Z@&s$HoXQGS8E0xLi+jj&FdSWT|@8ggX-M0JE7)HK<1|M9VRKnuung||L}2fbNkcBpLhK& z^Vwt1iX$WN3P;1r^8pCKb2CFaV$Ik9G!#!PDU_&8_+6JrT{k!*=-UwcOoRmdXdwuC zv^_nG)`+aa$_rhfGatc-f(cTA6u&i_dc5~OYGk{jjc$UJZld_?fz+13C04%pu;5D#&%oJUs6Yn5M9J zk3~U&Gilb^Ktu>!6zJWdl1`EGtGI*-Ai^ST02(-M2<%ieSm{tV)zf0-OoS}+yhjP4 zQQc6=GxDL-1m)>!@2^g{pqjOhdk@ZeEXN{-?DuDxXl2YX735+t{uJV;6|tbnGyUFPU=^m*(|rzJb7jK?6? z1rvDa256RBV1Ybna1xrhSbOmT!xCoQGxUt-2lgtx{8~Vb(P)eFkDaQ)h)fbCEE1jt zA)&RM%mS>W=i74lyhy?1d^-mZYp;j(SoSGjFD_Wu_N@Y9(xx_VB^ld+>8DGiU$^HZ zXQCKurwEpT`OA$M3_6!H!PMQffTW;{rKK!RJGeBu@s2Y5rG&HVLVsl+QDfc&(muk}9kxQow^|IGa_Opv0fRmz%4#51`3r2p)3Wp)vw@Z)$1N zK?z*>08l{@>8a>ZRsjnK0XrndHMwfY8+t4W0t<1;GIBjQDH0~0WB=kKc=6!f-R)03 z>gGBA@0YXnG5^l6&;8TMQuA4+1l<7{d&|-=nsg>5D4xpNQrGC>s`^KiUW#LANDHdN zX?Y6sRSg^}AmB$cAxrP?-t*N(Ay@W8!u3F@o^!<<9$<~I=u1yPnc8{>kGRrqPqr3n z5Dh^s5ua;{JccU82H6hhtQhy}@fk4kN~CRG1d69}hOV~b71I0F8ixi@`#r9Kz`;zl z=LQG*4KDBunJUa%x#~-$#e`&98&yQg-Mr#j{XGx0)e#C@1C4YW={X0aH8`V-q@TS3RW4a zujK)v#(4c~yy~J*8J4=wOwHMMStnW=s8Qf>Uh8^)!1Oq79E-PJj-lIV47dr^Ey+@B zG3VD?TDJk|!7I=T*-1ya-SsMl%Q80=bg$&bA`L;>$4k_R=@^W*wO|^Gf2`@ck(11M zFVk*EDz<|t+zaxe-0n=Qw|RL9GZxaOFxM?y&rzsqw1Q04H!NggepSW-E_LvFz^-pd z1_fR0?qIXPpbY9kAv%@(nkJ!u>9fQUm@c{R`5~gEH5S|%mt?~U@`LR(OE5idhZK1q z2S@rcxW|AyqX28UlZ&<<-OS%Q92}ywI((t3T&=?av$LYAI8(D8tj=F5r|0Af=_8N< z>gXt{ATf(PG7t=KDKv6t2*cT(8D}Kp5!W!2-CDh&^ie!tQX8=+cnLASb5m2~rbbU4 z>>T3AXbVPWJ~7h>P_`Iq58`O-stV-Og`@6abyn;O&iOjod6?;!c3f%|AA*w?3%_7A z&YrrRf)slhID@+C@QYwHmDNScA_ltP2Cz6J;`F`(=Gv|x)!9`t+thbpnxND$>4LvE z&Q^j!7RTDTaWYV2(&V_aldI&SW%IpJ1#+u9i;O{tbiJh4992Z&L1(|=KxcH56>7aF z3cU3G^)GC$bVp~eNLP4&uSi{Zf3M+Jz47>~dYyb#uZLgN>(N*Bdi+(ro_tlW{#Q=^ z*Uf(a>!!c|b@SicM~KYBvq0-pP!v~$=Jw~i^^tD zjE>Kdkq=(J)7j_>9yFwX$b9DN3y(qXlz0+MLlp5z8QPk@w@s*S3AGIUj=-40|EPga zJ38n_IlImO9-e}1?#L%N%LLi2Vk&9QR4I8}0>TarhC-Pk6nj=(g}1v9Lf3kW z9H3DQtz+AzZY1y29VD1uOpD}XdX0yVKK%1`{O%v~+r|=g_0X+}z_Mng&p6fO{BSun zT$sG)zw@M+V;OTKR`y3tSc3U0EE6kbpzcJhy2-pQT?+JuUdL%tsAV5~m^<3g3MwJ4 z2~c@FQz|r7odwqhp0f!x%I#K(WCU;yOIs$v^i>+O>ubB_AVBIYlC7OFlk+rVXtq;V zdo`o$WKr{3Z5LY~NaGwNY!n#xzx?e~UDJya&T$SM@8H=n>|5x<-Kn>d91dL!o*c!6h=|8>CG4Xo!bKCn)0P)D%Wc2-1@9>v>G1&PYE1GLg129H;;AP(f{D@oDDW#`HLJUX#+IEK2XpEE6{WRnr8c)OUE0%R}ur+X=$ zXbD+Ung<1EThBDgR@crNYEt%Z@iW+L1 z5x+n-5^PprO}96+GUK@0bfq}8x={z~i|ZNntcU_RovuYG;}Ro7a7`YZ{Uaj!b7aAR za+k?)YK(3sD?{}uyQ*E3nD3!&{=179xHjMj1tl!dj#7`&3A>A0))|xA209>@Akt); z0@f$rjs%neIti{lDgK1+m>sk@!*m|GMVXcb_}8trl&W=ZOyyEJ8YFHJV!J2bB4f#x zHazd!rbuX=YARM+8e`aQOFx;CR}3s2&XQAb2d7YA_xS8+q?fs-CvmlHC6M#9`l4jI z^ib;DPRCVxUDOpe?vI0)`4)qiJ`bLd?p2zJsK%go6#VVXI8qPU@`hfKRjp_9*&}JX z=hC#YnZL>yc$qs3g`vJ7Kw3Q>lQBHX7UplJtzES91MSrKfV?4SWSi+0)A*IslE91X zkY*!!39KYz#!6bIR5Njy+3V!Qv#0hRB3r0w&`}~cQK>Nmx5rQ5msC{V5L_RX=Lj~{ zS(D>$LUoH#SH=NaeGS)x<_rF<%ieEy?~teT-Hp*tPckhEyNQg`)LiWm5qdCXhBnol z@wo!-zSmBB={~8ErA1pf0^Rjp6`vgmMxC|pTMsR|`G0pydkLnQFhr~1l>ezPGMAY< z&sc)#}2%k0D@wi89Nn6;fvkV zwwRE~Aj{#dY#dPLwK!Uhhd&JMnPJFH3*OKWwGwurp%}lMK3~jF;T1NNvl(qNX6{P( znrJpI*=xd1?^Zc+rFw&NB$ji?O9Pj9cTc)~;9&RF<(9k{FJXj-_$-uw7Uk-`Z8tA2 zl1^hO)+LzcPvbGd+KGz-q|UHx!f%M0^^k+0dzGLhO=$WJ9cQDTxth7w?o0hZ9)0~x z_Bp%xi1fq1zIuP-q|q;<_Mcfd&^w}Hj7oYxPE!r=h4DD)PW=(YFDZ{bx-|$F5mn!? zIVgo%dCOoybx-F3%0Nw`_KAuwkH^D}<+%3sX@JyyGcxaM2HJi4udFp1c5 z)i_CpogI`{-F=Ztt)OHR&;J0k%snnV|0)rx)iKXTQ2HX{JvhubiQHjj#IgWNZK1vA zx|8Nstzmi4t_Uhw2ystt`Di+o*RcE;KbjC=y8g`!k6Xr0FDGmT~B~ zN;&NF$_?O{Eo_6mMq8&yi6$A>gxF~*eDRYj1IrLcxxw*5?jhzKa+jsl&WF(CvI=i= z7csN&>3Y>GewX*~+_vrk&&i0rh%t*+zR!_Fr7Y22vm%Tzf2ze#RSCwU(@&lx1P@-W za>SwWM>_Zp(X3KYpm~DM_6j+}46RKV)=&Otj#6xwd{yrQbF#mNH^@7f1RT3*>{1C> zJ#RfI(7sK7wDK2ug%nNG%o~DgcNGzH$+ymRb#1u5z;GFc0wK6y6q06eUT6mArWrIA z59SE5c+L$}fn5R98@QmZrZrL?4GmkWt0#piyY01!A$D}Y6m#}-t_Wn4H(tc4iZdo< z2b*|P;#SfW5h@gko;$FA^n=i5z5+|~DPG7g$3ZR>4-L+BiU~vahS8HgmWiF zGh#UV=M5VvRtrp`qN0x5(Tf?B_MgZ94O}s0N^q|=O-ub2UwyXSV6Qym8<@&P0#OsD z2PRb72sNupJn!q2o}jRXdwg^H!0hI^qg&uefLVs2YI(IDdnm7Y+eBn)v@}J0ec|8Z zQdsu)!AII*aEYjs#Y!-n$Lvk0Sc+>b0&pChv_t|JVHUORKnl7oDm<}tgwl;6P}o3> zEL4;}&0%f))W>M&)YtXlVo2N-)^!Wf61>F&6o>04thw-YG!it`An<+Z0*95R0Xj%}XySD%j13}=#N02oyJuI^EBN|RpxX!aV$pCF z+bpNaS&xlk1ZGa~4{)ao*$3zz8lx}mZE_IcVVro(X$ zYH#GpvHnG5`);?UYijblY7?tYxPPj>U0VTubCN{#E|8S@0RO+lvABfi8hIdjWd5d3SU3>&4w03oLd5*@lu?^$MCG zQd5lTVuf921ve*CFVDpxGI8gZd)lB)B#2DQ(aMwUvmenAWc7_X$u(JGGdOl`felY# zXYgQYevf^&qiOS97y+Azk8Erh2wk)^N||Hm>K)mHY7FKm3n_;}1Fjf@CkiX?Xzo4p zxYpl+c_ej$Y{XU}vRN7u6*4*j^JQQ8k&pxwh2*IRXkqeV85It1*?kltt=@N>S=s~7niGnqu_j;A6F$QI#CDO7TUkU z8~O^79ysJp-hS``XK(KY7k9UBKi<8UdoeV1RZ6f7PW#Za9QX!s3t#NQoC3iueDp=% z0`0K_j-nbGikNFO;j5j03X++0Fm|<{UIS!XJ(FYw0$|3Wyw!$dcw?fUp4q+3y%p(@ zSP_%yj@Xx>cQa#eEmdPnOLI@J15*-qq@Io7uMQCNPn|B8TL@097bVsAgz2iL)JzFN zNk2GCjFY~HKf4v%hu=8n42wC^MH{FI2axjXxfMc4 zFg=f#Xu4WY$D$1WTgz;ie1wHRU(CiYM=m1e3+j~?+2X2jL^M4(MEra+;Psm+%_@)v zV%DD79#)E*pn{c#yBt~tVxPTqipv_Pe|@*&Bsk589dqtm>b(Q9c~Mzc&V1wtP{D)Z z(INjxjch-lLndY=*otHJkIw(@3go>#zTD+09zucGnzam;g1 zE$D+k>j9+jEOXoW07SdQo1t*C`(4g`fcsM-y2?^5d(|Aeutw!R7OC{i=&0Wsm&uQyMMpRi&z-8hQ5d^6qx? z@$Of>edtAI5Ut9H)neAO6O(9+cSw^S40|CEB_$XWm~uDw><0 zn(UX_x2dHslKCmz2b%6p4PbtenK0pAXlp`|CyNuym2@jLNo#@iFuUrU?fTR0>h5=B zkV1At;buWIYg@u?rNa3_*uUUSG#MGFR}tAuX5mL+G2kx4U*q#*u}vn_RM)Yc;3ET1 z@zoYs38$gORd#_jvNa1WHN2C<&H#2ZoX$0S^k}w?%e4X+U(0>d-YUu6k4f)zp01hxv3#Ke&Il7JItO zrohzi{gUJq+ztFCYMfWY@*4W_>*V?qOx;6`uR67QxRZejke}?49!VGCVi4{;$hce) zx=uBd#?cdjw0t66xz*`-kYE}Bk6h+bEX=&grr1^NJ?NPlR%}OXd`cT=yA|r?PBcuc zU4j~xc7-s+!8@Y^U0odk%+WAnaFG5ppK2HlNLH#$99-=gu4W>@{20lC-3X*_|A$%!)U3Ag# zjE->N@(>r&fDB?Z&Xlno04|-C3)+oQn0m8wFFrAKoe-c%R9gJYUwQ*Zq=EJ8?uDT6 zK6~{U>~~+U0ed~}-Pdb9hL|Hf;nHGcv`S6kOPwJ^(jsQ;Is%=8TXw$99~1FyhIFH) zhwwF2ksa^^U%r3lb$6yrEfkoim3e_nv4`l zltYkhe~K+mM9=av)HPaKKLJeF-~4YEs=-ts5&!DwVzt>J;2YAd z{jvue7wy$YyrBUW%8`@^!}ZAI7WGNk8SwM4&$HilD;5--PKuCGa11WM$btmv!KHECL=iy79?5@!+{dOCL$46vgSGZuLd)|#`_ z(uavSLac)e^-1!S0E!j0 zy$%yiGgCx&A5DRI*uY?YifmS8!^gL=?d+=FN7;s=0tqsjxKfb5XKGvNga)Z}s_n{J z6}LA$>ZHDtWeGP_VLy-Gi0UcLQzIrk1ATortiy_e(i8A#yWV4;E%|RyEAavzGQM9t zYS^Z#>YztegEed&qti_3^<|7+uXRQJ5_UPE=F9cd_Pf$g6Md!#D*4X#4yz&#j)@=l zn&{W^km)-lLnOyOw0hl_H8Mlk5H~g`>Tc`;-E^#3kG+OD~o$kd6 z<~xn}%W`PBJrG|=Z3W7OI}&R^w+Csel+&tT6oO&Fkw;@X{!p4L4X}@-0t@X^b> zs?I8e1MAEvN%;9hOA8vG%`oU;!cJ-l&P}g~87Un6pg?{$Nw|h;8iYW~iuVO3u3@>m zJMK$MrG z)5X`sQc{+{!BGko{rYl7uR@haJ>IW3Z-lLp!8DMFgeT|S#BXyaOjkpErkPHX`*E_` zdlZj~c7n^m-Xe!FK79S4_qz8V|Iwo(wI1(0WHW}ihUG0D3?tW@iv@qPVtGv(W|{JQ zhecI%o{0ddvudK5JOUmP>%ik|7V~{o@AmYt3^4_AZF(p)QLTF^@SB;?Hw#7<poJc;>QE#>b2z?*3+7s~?%<^E4n7MeQriy|)%kS4s|Nf&9xm60`hsmDHdYPF}6HZUv|BNp4+U0u?N{nIT9D)t(@ z;;*k>|KsM(x4l>IR7m2G@sal77Jd@GJ<-w!`B@|u=uR$c(wzm_1c#SrCAl$2Jhcp- zC0xT7HciQ^_LLi^aBebSqz8pMb${y80+y!YlvYqRI(lY4KDL_&LReuQ0NIQ|&YBe);vr7?k4 zy43c!yL8PeC3yp+IUgaL4D1(Y$oK&EqBmZ@1a(U71K>M)HmS%mPOoQ|Z(Ou3+Bcw&;>@>8zH1DHJ`hacqtFr9i^>jq zjV@qmp&3IN$TCM=4arkyzH5=8E?Qb#?y9xuqGMC?io7V7tSjjF@tB_Szh!!W@o$#1 z?Q^E&gVh2KrjC0l`ZENe8>;6Pu0ax!i?#-or4q2Z)Bx3@O1_weFCqKFymkv7lOK^l znhW~?o;_G?#V1gY!1DrB&J7)e8sO626}{}F7}s1`C>*^izC4K&&Adg3dz7eN_$A4; zzm>lha|q?X<f5Z^28^}! z1x+hAlB&5P&8FKSs9z9LcTv~8u#5R_05#*-3OE#-?d0^OyXGI7D}lM2$XWkE4|qTI zf@cbdboiNcbRd+9%!Mo0TpKa$J5qHgejwFa`C}+ILp44wIyEk{cb`7|y#73U`{SK# z!ng*DaB(#>O!EmMREbiqcgWk+KjHVY7^ELnRbvID?4%cIay;sG6`Jm|8+lp_xgbsf1%h>Rd` zPo^(q5O{ngR~p;p@QvIePq}sw7WqV{W{)>#Cp_UWu+iiGCN^2i!R}caJoQJgguYWBR9-)@LDx0%kX4k2g~RGPuvZd}z(#O+nF)I=!ky(WE%= z18-*2%Baq#WV_AgYQ>nSUZSl`%5GbhYO1tl}M4@pF@8BF|;k-${p z(6U9iM9#p?vG8LGDX)r&p>$DJd<=2p)Ns}uIcXS?y1Kr~=b7Klh`-V4`dOFWGsCpJ z?7p6Cc?d7&nKb*VA~*B1?h;uBNspMhlb|aTX-Z0EW2URk95HrKk+O8m(ed%aqvI!o zlOq(G>)(9Wf2hhasH3ul5rWQk$S1($QVM=#ZX_9Xy5RZkrk5Bvvl%Vn0__7QG2H@D z2I_%10mcQQLzGQc^8#N%qgSS!tBhcxc_6;~WM|-t2GmKPc_&0TlD9N&>}fH%%mAT? z<(>yy2dm+pHQ^<(o5E`b#5cK!l?+GaS<_T#xW1pfW9cQ^avLJ%G$&aD9SD_D2qY(x zlHzz%A3;PkrsLVw<}BiuLnWScL0z5F(#l_F`T|LRwXx}-#Fn1!JXTSi9JtB-L=EN! znzDd-|0rSH0m3?mtIfD#d5xse+uVT~iazyJmW+p`B}0Y+TT63+@TK&IhDqK>GSqfD z40}Eu%FT%3A;d3`92xl$5z&Wy6|QTb%S&uJ7pKA%DmC>6+vB!-61!Lu(un%vMs_6Z zyI9kTa82q9OyL_c5ZS*ygp9K>ZBaVk(uQ-phY>IhL;KLnZB=-qh;V6b!WPWm>MkTw z&H-tVOlVfz_r;TAMXT68#KDjOO2;AK;IGa=1|3jNL1qm-?%o_^_uh107BX9CEf(A* zYkstbX@(0bWV9P<;p8gs97cB^-A-fzD{z-DwY>6IbGnU=?LWAKt|74%=`#gxwr={g zQ^}BbS3AO~6K;B1vX8K^z$Oja3Ks}gMI8Wb2?5(0?%A_@df;C2?A!&)AxdGBWAjm! z@#dCewAn$Ym`P`FZoQ&JB%OJv*~od;O;1_0H6OMBS;GcVE!5?%7-*>A(4kme-3Vq0 zK7VnapZwy%4!2b$<9hy_ajokm3)aBfAX!dh1uZ^d(6obUITK8ev-#7z%$Tux{yiT0 zJt|=19O*i+@Cdc!@kW#hFDja_C&OFW*XP?$t*d4{7Cl#pc>iK5ZwIoNBld}h(Hb0l8g zV}8>6D!YE&LyzPHnu{>(@$o}US~SvCtq3>jf)jRsX%B_vw$K$$~5LP*O|UeHQN07{N*N76K8$2PMc zr{kfoZ>imsc!9w=D|%x{kfgb`f$`RO^#4ST}t(2>!nmX^W&a0(&JjfOv(6$7_{4rCrgK=Vn~gLvBRn3>Y1vV zTeF6xjg|7TAlihn2KvMh70Y}r4%dww6rG%yAfly0q8)=y!I~ z?S>mUweUI{eL~pt&AYo-Z+gXbY>v?tsLph;98C_SFeY)vQ2`~I6=WGEZq2AkwoS!a z1=71UYtC9buM{oqZjNgD+s*CA&E2Q>uWz7v8c25zGuq|WW3zD0yjoH{q=)9kk=uHf z-VWNM1L~0)si_{+1kATpe5KC<_i+p6WY&DQDlJjo_KO8clo?Rme$oP_HIK9(RSF_w zZh<747Bl-E6Q=ek3=&YUD3NWy$(1*Nx`8%HD3w;%VGJ>i5Ks;{hb7X@fH;y5v7N&2 zYJxzSxltfkWAhkVHI)nZ5K))OO;BpqPA$o6NDeJTJ%A67gEj^6F^Vv(PR4w`O*z-4I zLU0F^8W(tH*1_(144kR8-svV`lI&v&FK?R`S{aHp*fizR8m8qjXOdEr+ZIu9fIy5| zLd*em|46!t|KU-F3b`EN8n25=o}g9DZl9xY`=qNh@4(Wca8IC{;OH~JM{1?Xl zI#J~k77PWe-W@S&v*akg{bBO<{kOl5?>^mrbQQ+iA0bolvW#Ld=k)$h4jLBMk)NbT z74`9O4*gk*6ux=);RbitPlVF2ej?0d9Mu<|^?$3#WA5q*P-*#})Id#-Hh2^~DD<#o z;5VQ{7aOn3*)YT#M31;$E+BLQ(T*#ath)p5oUO^$X5BZ& zvih!nvIa=Lnhd=wvSAj;z6)%*xPes`o818V!5|@M!Yky+_M*q#xo3W~($-GtwwuS6 z`@R5bg5cSuKpAG*L>@Gp-(JCW8u<;+37Ua)^u1JFC&!myX@}1|F`!2*M@!>1FGPGB zf~pbn8rk`nn-3GXeFkAb=|TDfFQ4v83IFzJ=~+$2z{AkX;87#n2RZU>#H3vqsW~bT z5mGYz9!_ZqQ3q1>l8k|KOvVSRfddaR?XH&~wO6YwX{f0lC4cMT)Jg(dt;w+srLR|# z=&PzJ%~9G15+4kC z79en#A2!6|AVIyu?<}%1E-6aoyB-TynUamJ7ZCcEOg(dfvpPXpMc?>z;fE?n`haE^ z-2UP1f8C(O7Ya)jG^SDy*@P#dbB@r0>pApW>FZL)Re4pMm=@p3q@)gRET+EfX2F^u z8;B{+p^wpCQCWD_L}U$x-FE2{Pxl)*T5l{JjeS2eEGa%0`7#itYwip73*HM{eavX^ zapAqthKJhB4q({!!lIL0ES#54$h8#360BHh*QR&&?3!bElDnBirOR+}FS zKn>#_*(3oq>iG)DfsQwvYn=YTWRt7W0-U(i8gd7)wqBw>Oaleog4G7MtQycVJhmH@ zBT98tm2QIoW3t^Cm;}_?Wl5Gncb~3kcvGF(0P0Kh>1I~zyEZUd8nyDpB|nYi5AWzW zEUeMYv+3L4O~=s^T>2eo$&tZmIZJEjXQu(oV{|&!(}2C9#~BjT>_W{-PqZ_+VNer4 zzr0#rS>|@8UdC_tE_hLzeyuN)k@! zNF(VVy;`8s1MQDOPOYm(Wo%bgREBSs__CfYk-x8=;091rh6v^natd}6wuDNV z>UH~S_u>(%cCS+)Qu&aIelc~Dd6Z&s_CRMz3l4(FGfWVD6X{D6gx76Ij^;rZn3m9w zQx$t7zoxGYzHwJj`I>+)DQysx?u`}6p*itFB-xt6*@%90ru%a;;EKQu#sHk8C3kA9Pwsry0(+Bc#$T8$K7mzyA5v z`+_4h@xrmVH`JB)Mn>>vcH0`35njm>fi;eJkgWe##XbqG5$Mi6zS~8*ue6vX)G1-K zBO{4NrM3e)5ZI1zDrROcWy`C?=&HVh>vTH7nL3?d-gQ)RGxd;AqqH(*qCno8A^AJ~ z2sd?>I^PNA*dug)2uwnlW{q1kP{+~?| z78)`n=cDBCp!ffvjEHn%`PM)Fk%{)c@i##cR~Ej@-IPY;s7}gf`UCJ$upvH$2XbRc zT3}6}U4>&hB}?c5T-DfE%E3+ z!b*6FJHxxy_iEc9A00F``e;*L7sg7^9SC+mzk+)A9jp7G9nB&_qUzj$dM@mX0?(lI}=kf%oo5^w?Y-lBZn9u}rY^mE@P_m!qd9ND~F% z;2=fD`q=Vh#7>fKBBf0!;ChnbT@RXenVi&+npR>mW*imc8VzkNI)}}!F2^j-lYiiW znJ;%=#V*E`*}=FE5g(;7I5NiM@C)3DNYXgi4YyUI9&yXA1U}L#gNpLuUf})Ow8RIN z&mfD3{RMT!ekZU_xGhi-LkxW)Kle~Md~K6BPvNnuu1mu=8sl(%bNlA*{m#9d$9K0s zzWs@_r3G-eCRbTS%kRXoViGfDY=s4A_;@&(7-e$`TNU)MoV^E`51gEBk-?~L@A{Ys z98lo#z0Po5V0*1I`AwG;%|e1{WgA2}v;VeO`at9{#4=&qayHTpo9D?i=2C10($mYc zSx6j(H&613bXW7E&+R(fMW6Ik6jmOX?}_m$MO$Nz1?Mhyg*4V%EnhS;|H#X+#{kd) zwVnC6oBPL}EFrcGrX1<^5>2r5NzldX%(>tZEgvp-p-CQloGZIK0MWz!n+g=*3Ae`* z6KQ@TaS(=JN_Jf}Y-zicI*L+WPcV%dTa)+zTnQcFRjlI>ngBMWOijO`PW6r{c~DV* zdw?VlXG>SGe)T;F#`*VdL731uVt~K$EyyeW?~V+U!JJ4Z|K8Xbc=T_M4PJoz$7Y37 zVC$`eHW?Lz1;f`PjTQ1Hj4q$<9%cfF{Q24ej{IGtuEJ}&?mCc8ElYys{T!($+_;pQ z#Q_DM3ckOmr@LNIP)a(?p9(Lv(EtZ%_V)Jeho2S3Cpo*id_Z;oX6>GvDrSsb8@qg+ z+|Uv?UFwrca2~pU4ad?v0s&IzkQs)^%)X#;$>a-b`pGS%HpGokKDQIxR-yB(Qg-X= z2JFM6ATaZ&2H>vu?(X&{A}$_*+FId_THcyfg%YEQjW)?@8Sv zdQlurs zqQ#T#m?fYdY;VIr;7hFm@xT7`#?`#0wkf6cYCb+ddbkt}1rz<)f;`GAdT7QBtXh-s z9z=XJ)dMC&pl@QkHlAxhT$Eu29H38^WxS-|E~4A;B}fM9w9FNL zZr2~AV`^5RWWp(#oB(M?@^OTyTz*eh(4L<{Krbq%s!ho{7fo|#%uX#|g6Vw{d@m

    b`(ovz>(H!1G2q+;m#SMnMESL%ggBkWh2W09144GBJ;=4(P_HS?*XA|n;UU5 zr;X+wO)yPSk%KqV<6bVu2pq;|7Jd}>bkk#i&Mft`qqE3EU11YsL_lX(Kx;OE$(erz z#l|2KG5<<2-3mw+O8TSC9Xgw%h}E$HN{n>(TE*MEmelE3*x&biG`pnN6%73;rj&Ar zlK>913DQnkZpL#YS%AN@xQJHZk%aGonb`Np89=EW9ZG#rlGnziEnbw+{L>8_R zX$B@C^qSVU3;^RKG{FTyW@@`fGJP3=R@?DW@L>|P8&Wk7v-!fhzKumcIE$fv<4ruy z%xfXfV6K)YwCz^Jw}E0meCMBZhUqh++YQG)KjM#FVd0#o=__3JN?Z(i`9nX0628)J z7rv^VyO5pk?-lu$?(Y>j8Sn4K42?O3D6%Fa+=>;S46}7WY)io`2-gs1m9HY1ENIF0 z*S%eu1VmXu;X}~~=u`dp#w^)HVaV9|@xo!wi@6S}1;#7v zwd?s2Zi*=O)Y3ya_SsPCmrj4H0Hue`VD{0`bdQUHp>MH85BK2jHV`O;OKT?}5)#4L z9~aIP9l)@FXy6!IM_mA?hy3Yl70}V;@BRkw8(=N#Lr)xZQ4f^O@g9(of!5L^aUgBF z9%kc4S`lD3%hv8Op5z(ee@gE{8s4h1-nR3*lLsZ3=8o^1!J4stfv7*dOAcv?i;HkH zu>ZcUlGTmPVcmOL4a=0cP$<*k0M1WZL$}6tE3YyzucLFnuAq&UZHjgle&iaSdPzSV zmS3$4sX6UTx1d!CB3eMrw7WHqpI^ESb>^nuK&BL*g$VE$@TLZ!7k+bwKH({?ogFRTFVCPHxNmcG!bKD~OGX$@ z|8eyz?5@(P(Y*M%zHaol%+@LYUd~*lqc6hdwW^Ng-9^>yn$gnmxqQ?~zwop{wiq(L zp2XcIxB16IL?X5oIr5!pc#cTZEqRj1=<};^D#v&zWQb@A>&v2s-j}QhGy}jg@U5RG z(}N3v70A{V$d5U$2K+mN=XfE2*~%8~B47Z%ShP)j^k^|nA&)|BsjFyq@KYdlC zHm(eDAWE=EQh=fyONCx+_rT6!t??aWjG1hW_pAJXT{=40mPa0eIjY_oay0Q??tqqZ zUFXY~>uw*91k<-=3=CZ@RJATjn7HH^v=mvm+g+>M*%cdFVbPJqe&}8?&QEqKZ4%5! zWF?WQP}>|MjrI$#k(@7NMG1)I>C3-Q*IshS_k5zj8LUSOIm*)pIVsg3Ie-+;mHULl z3Z;lMgn4IJ&WsY2H$_+hI$7upwC{q5P7Pz}xL~g6G3jjq5&9FP4Kh8uLnZl=m4pIP zjuccx2FF=k)A7Kq;&PGb^br4-C{;-Ky7UJ-R?LOU>My7$Lzk1!M@OF?^!@-23;$B| zq~Gx0@lf4ikzl&Pm8T57hS_^)`Zf>59+nd0!_HKtlo&m`K;>$jtomW=Xh1c;M08XD zBf(R$6 zb`mfKcoduzl3k}%;w4yqikV!ChXgAIUE^utrNL<-VVQ5qd%z{!PJF)XX)g`cdiY8j zMD1^{Ko@DGgRt4aVAI0DP$Qj6%<)X>ICvqCFAxua%FFg*HVtR_1aw;75=>vpeeF&w zEHc3KRs3i2tBMP*k@tMX=FO_zBeCLdlMc&pbK0sxP1G!@Kf;M z?L;B2$PVlzjY?P1eAa4)SMQ6W62g$g1eLYq|FW->zD)d*l2(MSmxU~0beUM-fQHOxSnt3kcUtRh`TqHFP9pV7XYnJs|1VKBNlGzdU_tLsyUjdXgT4IZ_Umb>U_v5TV2V$f*gUqOd0m^%InpAub8~N0C!xTW znEC#b(xl~tj@Y0Dvo!Ds44SUV_pDHm)sn!cOJ17R2$pHg5H3@bct1WQ+ZIaWR58VH zc63iLZExTqj?dD>ju{09bOx4pYOanz>SVtfm;N9O7xz4+*R^T#izoS2l^^)h{Wz)} z_v`9c-48t8aX+t`flg!>-jr9+(gcf}Dd-Wc*09l#n%Zv?dK7jsLXQ~|XVB=uV{W)Wn} zC5{>dl%|5B3DqEUv9Q&i7*#K?II=jyu6NgQ;99KLSf$&iJr_JZLubnYO!78lo7m*(a>weX0(air1GE5!`R zB1Bx{HX|uka$++nle%4`+}FZMgei`os2J{OstwN)^6d0E1EHNwu2zdFj^oi0-BTj? z=mDrYPGeRxjr+*ktDV6!VZOeI5}BNh-0{~MdDeVOxS~mE2O{?fsig@BW#*9wWl|9a zDzp-SIIeX?ODN{-Xto0mw3<-mY8!_L^0E;~3;QUvP-c4HV>`kpf@bEt zRB5g#NSpD3lciQ#o9x;cyNH4qWpH@tLPD~?`V!*Ff{nI-4ct{l!{w`b1rZJiDJ&Eo z0YJeBB3FN4dPRlCp#z9B1+q$7epumDEtkvDuFNPDeuk_I-UL|NG<^oKfrk;e6*St* z7y+}`0_#&Gi9rR=geHwzVUu0}m1ADeAj(MuM#A(nw|)xoyGAcdV@#UzAuzP;TAyk{MH-UFlLu9mU}*AY5QK#PE)AG}kY|_fq$mhh$F}@Y$d*Bsot?$@;dchD2x)khdm*hV_xHW*54=!y_ zEudy5X?)wML6t5ZC@s>(6Gd2JQ0Kl8Q?9H{z1)TzK|Vs4#lE=UsMLZjRUdIjqeEUU zGj$buI`+2uvW{t7JqE0jnH3jXmw;U;>oi=MH$C3`&BjyUirbhu2}B@CCMORn%v4v+QuYbZnqFu+2TvEnxY}%;ThU8Um!w&7DY=+mBQQ zQfGQ^J|A6A;SU859tD`mk1Vb$opqd2NqW9z-5V`-Av@>>5!F#?Ei*2t zQiHcqMV%Sk;V}xiYBVRUJZ(N{^r`nFZ9+)|LVK$?YyG?lN+pi%kOHVFgOYAxj`301 z$XV^AyosGuBC-t3E9%ItOjD&53g_$QS~q}tP$IWXelhH(#0IkWlGtpf+^?s0+=>e} zTkfA(;;g)I%;Ez)K~Dx>mdbg6(XEB^fP!6di+l%QR!PowB*XXn%kSyo3mP<_Yo;?r z&=-qOI9)#_{dt1Oj%T;@l}C{qTw=?#cu;&Srno-cot%tcju%rLJ>}3t3KVyR+w@fF z%a{grEnwCecwrDuvH6Kz-5^ca?jquW9=19s+RPr>2M^r3scmbrjL0uUnXIhBVxqk! z>!_JBCKuwWo!Z>gQ}kdr$A@b|YO2TOHA0eC>-lm$-@a6A1za7IAp#0+J;Du`E`&r& z573r%caT~gR6?{+l6i49p-1c=gPnyO@b=^7r(b@!d9R&XTnA@oVfP1!4FNT|9G|b3 zmq_?Sg>bLqnsT)S!$wXHan-CAe>6BYzAyZpas0En@5}zq7EiJXkLV-tK`BF2e6Bk^ zC1etz=lEy~)cbw@;p2NF32uE&9yMg;ZIxUH=eq%>J0W9Xhy&XV<_EI=bi2Cy{pS7T z?)O{CECMEXkPwxG){>J4!|^Z?$|7$! z|Ga(u^Lub(|Mlu4>$2|ef;D1fl%g!chZ`HtSnm9n1(b`Pp;az=`qnfRhwn^pXq0lf z0VlbBvAkTo4XU= zlPZA3*3&gCGz%Rk&xXdl%V(Q8m2yyBem@=C@AeTZGp6wj2^C1$1;gJ!a%jdnFnpTdTo)y>q zA|mV$RLpQEj{ExJ+LhFD{xBtmNt^{i*JauOVFB#WcsCHSQ%P4*HGulgjJo*bmM1|a zEbQ?#o;Ey<^%{K8X12Y@d=gMwp6o zD74G5?rRh+eY{q{oGtqD3N5&=8m2)SUd3sL%PACi*)(r$Ju)Aq<@gviALb3C|Qbxv0T>f`w}*zfCSu!z1nT6&Rx2tR_U-JDPE8ou#AKKiug7Z?Tx0ROsBy1J3D8QxQ{g%;`= z!jq{B3cb4xiH!Fn9$}g|=>sE%qq<@nSt(i9+auHRdVPWKD6Z8MBBrI(Qzv?n z*2yC_A?@Q5qASQZXEjoFnHbh>5_FIX%eVQz*%iK1O1Qj%_LRO35(tS9MFkP|)x4lb zS=?7J-m?|P!))K+nn%!{onJt`IM%EcF15bla{LANTmkpZKvMKnh+t0~cXx;Ubw^Y) z_6xBK>UxM>aCFc=?`heYFx!FGf$jC^p?L$SF(7 z%D;n3@@#-K49{IRS)or4mJA`s7P1J+`iEo)CX}OX($EVP$VBsmGx_Uj78`5Cx zU_E;oLMo=r@}^}6wDHqp55AeM=PLy^0%spTR`H_wfOQyvUIrT=&Bi{bo~hA6Uuw*X zsBhnWkjQox^zFn*kr6^e$}we@LATo-HDG#6!i(A+Nj%44Ers=TT`R9ibuCyY-7~cPpn@9da_q7U3OEkV4bNjS zPp2YRQsyp^`fFq8DMdDToW&rFz3yXd$|l}9p}*O9JPdy`%f1x*kmi=4C2AQy8w6?nDv$Me$qG(3mDCx|h ztbG$x4}p8=fX09HI)Rk8dw28d!^hzO3A^9i{P_0v=1uT=W_@vX-y51)=O*_dZSj*8 zP)=H<>Xe%%_?A+us;S7df}5mb=>P|@woRQvqk+q$oD!EBTiv9}l*q*5C#EZA+GV{T zC;QArMHXm+5aUTN{nA$!$7#@7j|NcVmPeutR2BUxE~}e%zT3QQ7|EBzk8{52JGH+{ zNvR`rf%NVf&WB=bT+I#98=el}D`ttU@OC;7n5$%0Co0$>WR(>r@uIfbU7*;=vXz(C z3VsJ7#GoERP)d7$Cy+imZAzL+O6Gw(AsqJhbJF6@8c36^~MQ)T>&8OS%UeMMMNAG%8f2SV~HOawddITw}nU2A@^P{ZNRofEg;5 zdEzHvh-2Z116I+U14pFRF8Hjjfe zOi)T{z$m`5aHf@svLCR{5ajg=J>zEu0;V4`)g}y7+z~iJAYI#a;oGFK8j0vm6q{fg zjYVyQKZWaV%4lPJLMvx*BdEmoe|?f&%){=$FFzrAA0P1hAi#{tsot?d)BQx^U`W*50&msXdAlo}#`%u}Is z$Si8bpv??v2PEo{&C1$#KP?C*2 zoPzt4wWr7~HKUnoSbndmz6KG#hUG)Fj)kvrTy#F2uEJ74%IbTV{kl^anjtD8rqn%R zP$EO6-m|}k5;HUh6jkb279%(MsX;#W71}J}|DW_bR^M-BcmLULUc2`7+BjL1B zRSs^oG58XqHyNXGvP(i75vn<@XOMcP-G^wTv|ayg>E3>k@L431jvd;bgnI)vHQmBV|$VJC%a}2 zEp!AY5b@9!QsbR&3xSZJiAqkjo*nsmv?76eY(b872e0`RcyVkIC z3OIraCiBj6gb#)?x6mxJ^XB8-ug_ooa%|DaERcsu3Ov}~^CU<-hX(9-g3 zXs=O$mH}`P+xy_~8wQQ!e$AS&$j`&78AJG{o0Jj5d%SxRBvmCVZ8uRDa9U>F@-xRp{lIE4`YiL-tN{ZfkqOUx(e%`wt_R@c#P{=vn!I2EDWQ6Vtx%iTV7?@W zx+F!F_ZHZ^>5#ue)P*_A;T?gX_zgwnDYE^E*m>fPGM{eI#W0`gFPel*$0k6U5Kx;7 zxDB6Y!r0>W zuB6H@QMVI=s4JvtHGJK9gaf2uC#>35W@2|g8e<^%XELLRItl_5*jGEC<9Z@FxmMjE zNI~FtjbKYjdp*MGcy|LXR` zkMOff%8V-*y%*EVv+X&-aLM1yVBwLZPz7=gL&xnkW^D5r6X$+IQ6^>J5=)UpY1co1 zQ$EBUshRzR=NxUx?l--p$3FwjMw2S75z?q&l5mKYG$jy@4J_JLq`<_~LCgHGOxwE|cgIySRJwj+K5g ztr9-~We2548XFp(vi;@-xz5IXL{e=UOOcfqe%Jc1!okz;zeNs3BB#jJ^G$YQK`soN zT_t3qbdIfOl`Sok9VA8YV!i)`ai@p=B|r4?DJ1{P$%7tpE*>J$Mv4dhiU&goZ$B9O z0Em)Y9+2ZF|xa# zcT(^KQ}-Ps9&uigz^FJhHBQ^xL1%(``_1BMOVLQukYRajCjK|MTM?1~sWW*zMESw+ z1QshL!y&rqAJNQy4qpYlT0@u5Li=)XGZbGTb%x+;Q>ZtZXloKF)oNtMxGF#;xG9IH z(q{|Tkr%|XZuS0!ifil{7jz5A6tgRT784zDE6OqKv&4wGsjWy64RYRgg|Dn9qlEa7Y@oFiP+b!#nXW9? zDwj&+q`aV)YMzaW=}xGcV0n+Y#-UW&f~rV#xCEn|$}T`}@)42gV0i|a^WthFVps2V zhc?U8fc3?sJi1@k)B?BY_chV|Q|Kyf4uiGJd4D2@yZ6#(NqV!;*QT+r0_DygKAik} zY6oAX;Sv=pLh^@3#f#m>O#tl%>}nRRkCZbC?Y>+hA=7jV57h8Z=)Nv=$wZOENEA5~ zQL8U$o$c_n&S!Eds*WeG9@wToejHgkKm7=%Z#Vws&Ee}`-iXfezkmI!4Uu@?k4cK; zfb59duh-KV;w5lY{ZwX1KhZ@<@VzV_J=* ziWB9(?R0n&E4Ot-OLz0>>&X^6tO=^E`u21cWDV2w6CZ7`TFh2c{7#PwFAF0Vt}V;Z zIElVhr7jJeszke5HD!a?c z3eFhYc5)WRz(OZM)*C-<$Fn+;ybS)Fle_GD0J0Run;|IK{TwPRBM<6|w%T#NcBK~{ zJzo_1KZhmodcO3uj@cn5va?531SDU>Qu1-+TxZMcIg+t!iJMMS-7Y&J9=i7x$8657 zQx8K(B?DaT+Kg`2mn4|hFnB$1J!1A!rEY4X%8S~y!Cu07goTSr^wa?9;f6KGaMni3 zA6I^G>sm!rQPWZ-a`)-|>l+Jaw1et?w24UxW(YGlOEA4jU*^ZD)2k%G)Lppr{_tTq zo~u__kDg=+J1#wLUwYKO^ss%2qM=Lc@vP(arD6Nhpna*3{Nq_iyTq>oH^~@k-=pQ=`dG!A=_a;!5Wo4P@sY=EY3M@bd6)pux6jhbp zF$Rh%h`13qGpb_B7;+FHxDj!qDkUc}BWsY!5%npG1Fb&VR+_fKS=;CQP}Jvuio{O>;hKIiPShkyU`CSw381Lnds0LPX~ zf-HO0bfhyjH-ZO)dNN?j0dps>Kpi8`1aikM1We^AMyhVYgQc5U16ojp1nM*$UY}q+dardq5^AMa6smH1Q2xliV9i zp}-4izvST*r*H^3^oXmcNVzuGSC=LniXn=>F{|vBQ+`RQJ$zDKqZYgzu3xEtBbD$Z z>|qzZel7wJPrAxVSjz*uVoNeQ}T_AbFf!nO#~v zc4`(<^ZY8#sz(xH>QWigooRhp*TXnrj<8)s4kZZr6qn~2->)@X=uP7xv+*q8(6zmc zK<>fpLVrDW?F>GXLomRwwEGZ_XDh^Z#)Fs$kD&z3r-Y->kwEp+3s|A$T`|A}hkL!U5qK5En6Qco zX0E^BlPUgJ>c|IWF|7m93&y-{3NUU^nnAE%sk0AE5?o76N~1EFhiTHpZ9kmCim{b4 zmeeU?;}1hOpFi-oXyRRg^#N3JavGGeH^`zY9CAiq{46^;cg3`+=?|Axo zo>43LCn@WZ316XzJr5AIF^o>O$U>1i*;)e9!*m{;{~6B6Ob4r~%=Q&ZYJ^s^7V{ip zz49F_$LYH&qJFBU^$Eb6Tn&&Yah+qLC#`c#{wi0k*)Efy{cWV3$zzgtR4`6YT@ndl zfT5W5cdl>neK9y5$)hf$n%DWBWVS$XHX(6BSHCz9DzM!^ev;TXi*TKFY6W7Y%OH-( z$rUAJXUsE{f1W>gwtr%45n-kDNf;nm1y4N2UT;ZaChqP`1=U$g16hAa0R$k9aTE7l`6 zpHi=%jAa#7pj9zjtBf}j#)q1YMOTz=I956pv?k-Yt&5PC)8C~-SPWn3e{4rcMnQJXco-ssPdY>Go)wE355NGJ`9u)<0 zX(V~1H4|&?(YtmQE+MxO`!nbo?nvBwLe+5>pOkNL&5U{0Z_HzN%!yC(i8WYs3gVCA z40LNp>V8^>wi)V&5LNjmF%=P~dFQ&8g<}(782GsYFd#uf!o1L;q+c^cBjkx$3d*J! zJQGflF@-SP=c3=edsN2lI+ed8PHoVZB2{A7wio+tM5*Lh`o~Re3%<`XRDeWgpX>UN zK&%Gt&Fj9Ep`^!RMXmB^M5WwRF21pGb|2lA zTyy!5H>~1Jn>WTRLwL;H_x0B;b3Zm()If!M8gFil&RrQ@^EtF1zp-J>g#ykDel?G} zW)19MH}p2t!-=8SX}LWtBv87}r~Run{mqX&gv>e8Q;TD_(CBt`qUShGGSlLN9c(JS zbexvKhiD9M%Y)h?sDC6Dge=aXsF@T5kA+jmVA;${!p9W^-UH6}l>I}BHYC)6<$$b^ z@$Wc`5P>9NuMtmFgW%!pNEQTP`0{XfG`Lqu8mzJBL)&faN>I1P7}Z+8 zfI$D;1sqXa%)>(`fbGV#lMiy8PQFddNRs=aKWLF!Lw!)+a`}Rwgj!jyUr1|IKC>U= zeW26iu|d63XSFWo$Kk$e$lw=T)$(uzc7Z8qb7uFjS{i%2I?V+HnkiFFD!s6ZlAcgG zw~hRYA;UWO0MpVZ`|e$?*1tMJrzB_S(5TKcbS6HsMA)!j28Rs# z4>ih-d!l?A6k+*?d$kgw%xyy;|xuWhl0w5*m6}`o@>ir*`D_Nm5nY= z<4gE1%ftY6hVxyNb415n-;|y03kHzuHh2Jr+`#ntE%)q_;!I|1A!P$Hl^H*v6twfa z;Z>Z*y$o^+hk!EPiTg4qq=FL{HrJ9YZ!8H`3A_>TQZtZhP|Si5@~MQ9K23)xiEmh1I5yiq)2JQg z1=pKP-il){-KGt@Tj8^)2^j3zxyh_CHNs^2Fu!EoOpSu%mCe)XY80z3RS@j1_C6DP zt8pv(*nm>Mm)zP+!mVisE=jQ>67xKAa8#1)NmZhm&56U**8_%c*E>z9=QE^npyjD8 zYMK($tLr@8-dWRjg*UY{IN+M8c-Cx(hM2la9d_bTxp5WLbZX8@*uq|CCiGq-Eod%) z(STiQg8atjW0ywrqkWK4UKDu?W@4xFr3-5p+N;3k8Pb^8u??ZCZNq(jn9^~fZ?0ZO z2Q1~2IT0i(rRuI))i3$RD)JMIKw0{j45Jw;!Ko`*a-1@N?a5HqAkSFjZVjQNZc~Ho zSUwj|%&nknH04m4eHOvLi8x=rXJOf+E$lT>S7H%7hh+FdYAqdx>(iv>aKEfm@;OtI zSMQ%R1)(yb43?KFBjd@Gl9BR+N;ad-tb`d#9XVDNN5MUfCmd3mEPq2PO6q_CXz28& zShs?QTJ@Uvkihe>`#aaUzk3~g?>hL&>)@xZgP*<*e&#y()^$7ZdOg^>UKh5m*N3g^ zbzw8r|7xP7fyCp6T0A6cAIrMZ{?x&7Z=NlADO2TUp&)@2@>j)%K0!efdeJkenbl z0EKLrsv+(_h)IGA$m;qT1jH>{VxmE6T&)OWB~I_q-ebWMT~e`X?SN8cu1hobF_L^N z?`Mhf=0oqQ&1zw-1y?7e?tl%VL5h=J5babmtkt!C7y+dRlVzj~GrTgADWPM2!k#dM z#)Xb^3L%cCq34H)NSV+`l>5uqJg&VKj}HQ?#Qo7&qjHBdMBF2{=1*)dnta#9%lt5C zsEEh6nlYR=-wc-_-HexFf6={XZgp^|)4Ji*W0A_|8G=eyRqP5j>e&HwU8^gD#bXm* zLO?(G98+M0sF3o&N#1w&eGKD^r%-+hoV)cn1^0z~0GL{_2HeiGhu-<4!jTQr(lTe9Hq77Q4JPFu$=V+lO#c zRTOHIu<@DlH4X|4DN9p*26{EqZZL=W2s0$yZQ4~m!_WLOrhG69(F*<_YfCsufNbpA z+@!Q*83Gs460O=!%78Vjc^t-ZWE4SUB1%K3>@I3Ae1WHJzafnc)wDtTAtQT2oZIe4 zYV^1*TLxMWX*3gGleSk;e!d+RIMRM^x{Z|Lgq8!HGTCJ&4TMsh@Jx+{XGS zz@_4xTY7I@Wk|9&TyyaTYtrUG=d$*+>jbI3*uuosRvHR%q}CTPkccXsw~-7b;l-mc zk=bat_gFY(FPr;WjrrlhFxE<|-Blib4SnR^#q*u^&e?;gbC6=amN&3X-lTeqmoFnj z!d@HP_)NpQAo>FV5A??Z33*=n(%fwS0UY2$oddiE;G$E_$(5)#FtuC~*9l+F+^|Cu z4k{AbfVTMqf<$+28iuJVDicYR42mIKCvNA6cR*=pp_`FPH@yUfu+$!STed_|&ASjh`U)RQ+5Oc0`ygwJg(|oTAP;wGx@v}Q}&!sDmOlck{ZFSYXjqeL%ldZ zE3>PL)gwunV5Asxs!p0wTSYfxH^cx;9kPv&;jm6TS26r7kVPE+9M103%h5w0@!-Y; zgF?)1_Q1lK5Vg*q`b;Tkjd?IvG1I!Hds*&EX84L80vU+(xa3QZW@0?5bYSt-^+b*(3>8CrpV{+af2@Um18ROF!Z^ z$EY&bmUw@6gD@5;@r&>YZ;JsG+Ksr$T(6=En4*o*^<`nX3DQe4Kx~`YPP5dn%&!Fq@uRE2VlFk2FoP_mvg4^D0F!7Wh_~6uC{t4Vk@1he*83^0yFE zCKYL>zk?AN0r*K$5=qke;s{}g@Dp}(G2MGH6SAa`Ue-hykK(}?6GQewewp<()I~BM z4O)*rDsD!T@iogd{QGgvIPKbov;?v_V z&6hdYALiEAtOuhB++61}3k%p=#19=Rri>#&nsCbLI^&t5{v_If<$!e(v4Hax_p7`H z$9HREES~Ew(G)Z9>meY7zKRtd5odWGsO&iPdbC%<2|msqeB&&*B^mQuJ>TlUspv2# z8_yU#Z|gfE_0WWnT9|i2lX9G@+cbugXV_%N1^5K1TR1IT1-^{~$r5$NgpvM`;iD5` zhQft*1D%vm0-Upwl{9^@qq;&e6R}N|B+Ud^nG_{&mW{QA1-PX`S_fB4ll1mBjxn~Y z{58L|c}7O?7+jNG!QM|WO!CN+P^m?*r{5u$2!8M#CZVVol^aSLN9#SG!Q%L1FP3LSEm*o!> zGx{33L|E>GNw$oL({siKY%*{-&1N41#t&kifObe7;L5M;l0J-t`uG6LTBbbrv`UD0 zic1zToKm=&nfk`YE%tmaN;(xNN2N?0JAasUz_esBhkUy@iXG( z;6Tfz0oRs&Kaoz|(I$c4hM{a`eg0qMaOs)-psgLXKp+-^a8^8i^H8 z#V^5|`v!c2mLZHXSRJnW`lTa3g4rlQb{Hl_zf6;HoS6i$;jYY*M}s`UDn0)udZ!}6 zr-wqYwBB;dge}N~X@=$()*DG)hsZ#+_yX_6De3It$TIjP4ZQkR`EA!XJ>y)+c8hJ6 zu@U>oKVAuq;G$T<@rN)ZN9tv+7}Deb%e9YKwbBPYOYy>h-ZZyN6h@KnjJaj5KEjb2 zTpqo_0$DUrt8m*-b|oWg_%>X($f%Q>;6yfYEDT&h*vs$+#~c~Yn+;h_?hC}?S@FM%ZaWezl^1}S$)^cM)*F!2$90qAT!}tNB z=^%%Z0cXE8y9D)f3_Rwp5w5k!fQbH?RrMMMS1l-`NJj2F=BYzo-wEn?%#*OOzSfPX zPvD}bvM8krO4YfhjE*VXtA*@xT6ydg?9rfegR2y|bC#X^8aQ?nb=FQUAAYP>j=~*L zxqk?;sKtwh>(r`#TPZiVjO_Fs>O$G)7}!SgTO%GtBYEKEB2U;Y%|lsT<6@|XMvBI& zFH${BK+-1!$;s9(kFM-)GSf{;r`szb&%DSsifWFi(;Db`E75iaU8fzHn}^ zz->Il7X=rE$_AEH((D{(>Us3b$bBZ=5rfa^eQG?^D#xkuA~vo7_dphf0hPS= z=4mp|m9mDw6&F&0DQE;68263T)Zw3EY`rS2jnygQvJb%3)b#%x$fX6-m1L-w?DP&|XJ z&FJY|lR1WMZsTZ0SKRY`Y0B0_+mWG?x3S%N6*C<0@JXIev9OKo_tz5GpO`ZS0zXpCafPK0+ztOC_&$ zeNt8(K2(yMDBiVBxsygfA?U{-V99C1BGg$--nZE*{SR;&pOqqh;6Y(-dJ84tP04Nv zfRX;U(~>t~(B)7Q%rE9yc#Dh^N(<%lJsnUY)l$2)IC(8GuNH6f)=6^8JgM8=CnTL$ zSqD|E<`rbJ%DA~|9%N1>nQ({brv_cTvizNPk9<~gUJsmbegRgx9wvG`_4E+_wHB{! zoR)JCyanbJ$|)5$@)WD@QU?XQdYTPd2n)w>{Snnil42AFv2b$J^Uh=Cw3;nte!hyP zAD8@A>&I6`rNdSmd1xc*nMv?f+Y4|T!x2fx#G!_QCX_s^I@g*xxPKf!W+V->Bz$Zz z*mO-8j77ba^MN)DX5DK?wM`mS1uaHIz!caUJejBe?%g@lwFf=1g}0`Jv%E>w&7bvc6R z>o|r%tl&*tr49NSQ8LIv+bIGc64%arH51&duA45;b|OA%8?LEK^B8~IyB20mf70&{ z8os=fOJen)C-zf#lPN}_Qi>N~p|=6Mfyf67v_l5>kdS?;NGW!wy}3HsNl5l!Kn0f8 zyoV)tW{Xhrsj-FpI7qw$QHPr+wE9f)Ix*bayR0CE-HR8l95k*RT)w({(AZ4tAVOxs zun%86yT_7lLP+Mr=9;K|m6R7_(3bl_|M--4F57X_%hpi$ArA|dT5^%6po6bclnSyW zf36sc#;ufYA&N6~ zsmn3R=EH$TQXJ-d;7>&OF04x-SH0+m2F@HVjT5COQ-9}4i1`5tqnTn<6$1eBL{$S) zl*H6w-d7c*ZZJ*W+^px9C%Kz$D$(oKlJnooFdX0z`$65~ED4Tb^*mcSaI`zzs+S;j zi~NN<@LY^(-|9Vvt9e$8Rx`1HvaX*fX$asG2i3vFOr*)+mU*em`ei8$ekeeJ}YMsj)Lbtb}FLWhcj@)Ax7B5mak z!#fs`g!YY%%cFyU_BUrp}>FR;z8R)XDBxc}}An6O0DmMO^nypetPtBOSTJjb+ zKe2eh=_%}p`F@>pxhqf~jH!g@ull1+ zzwY9w7xdUj5vUx10la-g% zzh)O)#IZuX-VEvD+7e99jAlWc6v)mzGCFNHCar^9%~R_z8gc$u$qN=;>Ee6I*ih?| zqFmGkFBIsax`8f*o0wIUy^-N*bJ>h(m`&DeQ25j9w#+|F6>Bmr+b27Xq==(8TRzYx zrn_UTPaxSGZ2R>Lk{#!l*XaghPFHxddA^~ep&qp1qEw-6RhEI7u~{&KSr8^9XC36P zIVvgjk))8$!46DlaYfHB^x?*?R9_*_*JP{9+_Ym_Zjj|ftq&K9L#pV# z`UuYjRT`iZPlAXmt0NX&8)!(I7K&QUQ12jId$0h{BqsV?o)yo#gdq>DYCamt9XTLJ z>G2|e=l~;wWzdxCV(tYO-drK+C4Gk; z6tv@wtRy@+D@f;S5YYXQG&DwstL0Z$H?ZQ?ksA}D0{`JVZJP_r8ZIrH;FWouCVaig zd-M<+pgP};fEhbn74ZWP4OghF9=r+24CUnYTAC>(LNQmC9 za<^u!uGZ1*VQ59MZ9hWdPl&O48Ph_;3`dtO0}{HzPw-W-mI<#G`CW&nXln@u$Yx_A z_1kM8qv_{~?@5trU<}1w!|5W6E1-S2Oyz7kWc6pjV5`u=^Ak<{NVCIq0@`XbWM=Is zx6#DqCD=REao9Gn(AL)Jbi%_qO}Z%=rVOiZBUc*y9>yZ%W@qHmmip*H`#EFZZKMv1 zgPmci+k$f0XMS4LhtMN%b+DeT}uV~M{bI@%cgiLMn-LW^n*=gqJCQvv#2P_} zh{vMm7`;R%V1b|8#8D0TK&2Q}<&;)W!BN@|t=BZKT%$Mm!a9^Y0E+ z`2sw(XmZFE=}hqkx#A5=^<&@Y6r_G5j7T+&bEC|Q9TLlm-=`ESlD!IgUfp&|f^Jwn zET84``65k4J~^r7mJPAvIGT*7RoHIQHf0wNP;CWv8jP3ey4fB0qxOpeQZN%7V&SN- zAkqmcr#`0^8flx`ZRn$qt%?YyC}t3gSmVh(A5Cf@8k>+{g=SqsRC8Tw!L*?Rab@0^ zL=$l8(MmVVQc)Qc9an(d#qdn*Gu61ZjZQUqB4?{4s4)c}{%8sf6O;;P?DnfmTjUGW z3Hc?|h0W}+2<|FMnh>ZUl{{i~y{+c6jA4YYVcV9ZbGN?V$w8UZI3BW|FRl!wKGK}` zhg8+HIZoBJ=z_P|bf!qDpj7=@+$kNh=#0fbS(LF&VkwcESIkMTQWVt0aKhsa#^1waz&qh z^sRgS2Mvr30zID1VUlv~*2b6^OU=G!g=_q4CAWyv6o3U4^YJi_131PCB*rLvzFXvz zec30Y+{$a6Rcr@@$X%V+cFElbQ`^hr^ycc6t6gNB3B0o_(5lvG`|^mi1!4ZKsT1t% zm=o-57{!*&xH0Rl+je~WmM5Y%t0?@XbW&sulEUmdTp-he1{onqIHJtMk&pn0>qtJT ziyQs15XTBqUlfkyUg3df3g!(<@-R$6QDm^SB6&zl>ZEKbcwB?JtYoH|BnGKqu0p=+ z>y$(3sg5gmX+#1lR;I7RsRy>A16g84iYQgaK^{0q5c)x|kGE@#L^n?zbC07KEEeWg zV{8_xf1~fPc#tKsq`q{ZdW1Pr#4L3b4#yp(*Gh6xIuw&!=#{4FtK~@oN?*hQwFH2e z7z^7|o|x0(?4XeIz$&clO3egkmB9f+p&VlsU~HU2G6;AG+7^ju2qV6nfX7A${c|uV z%%6Su>=igKIXx2!o1)T&A|icp1N$OHXd2ewn`382PsCr6p_3BCXx4Q0WfR^%${yA5 z%n{=?J-ZZY+C4W=(QXOd?74XmO*Fo5G6zT+)M6|>RbtfFCZE5D|U(Ui7pheL_2#QVf8^$u}vq+UD2c>}3d*G}W^ zCQy3$b`41x8{xnHIU|+@P3e=t0bl39k*so!hz%N=oi%BKH?OKwl6BVZ*+RFa)z)l~ zOAkNz8IErPl|J+_qWrPz< zce5E=WNaJg5>=21(~*i-W>HHW$8<$^nRr!lo!q47t6V7`7JXZolPmFUQHm}KY8BrW z5Jin3OfN9fEX>0HXn{wkVS`#Zwt0NQfCyyx3F;Vb(H(Y!AG3qwf1UWXkflW}E!CWmP8c^lF;=W_KCz&~!ChV0< z1)zI%!U8Yr_38^)=Lwrg*LLDKQXQQeDIx_4nAVa@Sf3lSi{^-FI)riOx%vvJ;4M+IE%d19i8_NMhkFer=2rN-BWg5F~Scl*#@ zZKo(LUb)GGC*$pWw+|lKq=-ts+(Y&B=7FnWZLXTW3G`uod!YaQfixKK&(xP=we)Pv z#LeYSJLZ}Yg+%0gZcEP`?Y)mJFH zXe)RRa2Cd~HjXE6Kn1A=h%t!acCfwX7vO@;l+-??r%y8mk-@U?@#F~{BKoAYiz|(Z zyDi%oWiMV*Ai>=Y+19Jeh+$hhvq5nGsFS_DwFKx`>Y3|T#*)x2I?=XcMMiU}*UI)&?tRxgY zpKz8C_!p|L7NLKIouHz*f}YVyYv6)0Zk9R7)`c7E(-1m^u8RI0q8CTx>KNK*j>15@ zYYm$$UecHaQi1S~NC%v32K@zaE$xTuo(VVe^%NNhj?hP*;jQ08$&z}c(lbqejx{SrUZf)_J8z;bO zBB52+#GuM4&yG@mC45+PO32u-@~Xa(6A1G{Hh^^;LK@1n0ibLqtq{xZ!Vdko*s(PI z$S_0$K7R0l$;Mn;#Tv7esQ zb0I#NEPfhkCgTUXC|^H!VfFMr;+2X=nV`ht*gH|ZsRe89N{}kCI$_|XU$=8gkoA)q z;i4|dohiFVkFmA6y3t=;!bSy=@(j$w@NN%6E>4rN^MzHLdxEx7gp$Ec6s7+0t~g9< z(-_Xa(o^%)8uTJgLx_oZ1L7SrA5=6ZNoS8E15u>^0)&wcsZMj+_$TR_PGH9ns+@mo z&}`+&kZrKZDWQ+Y>olDiZIc_dO(}S8teuY9i!3>9ir28Q zJ9t*vxVJOI1I9#qM#}^P)FFbsSJBg@9x)GQ_k8q%K2fs>8q3y1YVNozB#v8|Q+DeV zcLx)Znbm{$NlrFS{bigOZWz&x5F224NnF8T{oJKO#Rw(;2*b+T_G8WaJRSG{fCW&b`!a5_t zFpWyet|jE4zJe?Mwh#%Ab%g)Ce{vbPM62D3Qk^~b;Kk*Od!y~+%d>s39LPyDyL4<- zp|8A@5u4U_c4kmYY}^%5GC$HtZEVfKoVARl4e^md=SSs<5dUi}+})Y(%+EV%2@!=@ zTWNv}r2dm0DIRyoup%WGm)hv^)k_CgDr6@(4BkPtaDKbo1*_ML$8*=?MDuE^e0_cm z88g=EyE7ownQWN&1P{cR!|u&v3wp#mdG2bkxc|op;`Bwae!?^rfr_kP`Yy_MA zxcijl>{-2d-(>tX6@N{~Uo-L7Z2UDBfA#UHF(2HxdZ~(%3W>@9F|*+Z6cCnmIlHRX zg4*D89I8p8V{ywhgegjc6#^+Y77*B*7WAZXCkA^x2d#AKx6$>XGuvJ1qi#14V0C4&o?H!cUPAw+>3gQvb zAy`hX9}Zi8sWuL@*EllH(GsUe`=u5fH0egbF0kxd90+N1;a_37JYp#h2b~)F56qkL z!+u*&fRo!m8C1ld7>>N~#7b?~oGE@>tHHbklim&!LFeLfeE1_ykL;@6NwUqDc?4w5 z&ut;&1`@>Nk)QKtFW>b@|KimP2Ru0lF_0k}Ut{|birwMZRT9NJbSv~?$nolDyyBNPqCC#pkKvBbLT}+& z-l{wOG}xqBci%U+IXkzsfab;au=SP3-Z2p#0m=`>*cM}`@E5-Oj?g9qQ9+gl7SkNR z*C2d=WI^t~18q#cIrNYz>ijbl5Q?BsSNi$n_B12Gz8;GjE9h*XV}xg#{$E`>!>i<> zN~QmJ6-`&o6&E@EAi_}6leN9jcnw!RC&E~{qRsBj<*E}M^&Tk0`bJ45@LNyPJ!ZOq zVj<`8a-15*>8d@qM-I|=-2ATEDsd5F$;;=YcJqojRj($88z8lhwa`gOZH4kp&{FeN zi7g5WHgE{5ATFz7acXoXGQy!!Q;-DE@GOcJ3<7bn6PTDRq7iqy4|W8rgVItB26B_>3DRWe|7kNLl%k3ID|V?t|@!B4dk`ET>}b4OqAQ14{kr z(np7?j#?#%VN_Qn%raQi@|^*t%H^ofYVWfdpmh8;lP!D$Y0OZ)F#&B>5b_i58}q#C zT_1^6i1q0u*+|D@eS~%LhC9?Wtwl_5J3Am42Srz%-in0@G0Vo#h`N~^hwQaWcB*)* z^DlB5SQ_42M%%qLXbSc-+sTyOaqJL2`)-9AEI7TqRQPGTlA6 zqpMdgjbQs2o;$ZQgxbdDRtI|}^k*FYal3PZ)T2ml=a2>E800l+$BcY~TBe$_F+52p z9M+_Au&;^LXT)C^4UKejV#EWNm)WyHr+=m zs}r4hq2}FKT!uXicig|wx8FB-2g0`(*6F-?&HBl6O^qPe;eX~W8%XANqqkhMUi{u` z))FUhBke>7EM2#4Nk5s}RxqWNQ`n_BC#Eu{NgxP2BV1uLRjHy&_EMY23DT!(=DD*9 zHl^Qa^-KjSjlGD1bZgSERf%z_WE-m()&lhU70EvGpKA!aXqC%XMdw(M9AJ^!C<|_H zO{Ih!9;kRYR0kC0;A|%zD-b8S9AN)bKA-8Pho3{c0)ljU{X~Q9j3s{=_$p&r##U+t z0sL+T43o!YlCGJ{IJektPA znCS9Hf|Ey2RZz8UuL=RxZ*wIUR|>t85xc?RN!CP)(Hq>&WN{uR#=)Sxa1zd7!S^J) zsBsqGOy+-S&W_!gpsm%Ye0I1|yVk=duY&s!>Zv4YrR{&5gFdv5^}RV8)GA8?N+0TT zhP+4ZTr?j$kB3k6mu8N~tVSj$>&na~B6cdNqj!;wMiOcyIEEEbWGfmRB2}x^S~^*y z1dyjO3`|vaH8Zs0JP5P}Cw-C)S=VdO!HJ+Vw$R6LY^p`P;ZZTFQ(M&bCKM-qXx0-Y zfmTR0w5=p`OH0@}m!J|rmq2$ELx?@|Ky4g&#HB+f@z-OlZDqGCT6ezxfLz9*p<*x_ zQo``mq4Ek{oRTPiDDJ~bnw?)=i9!DC4PHQi z${meYHlTMx$bwwq>|6+mWE=2&UUvl;U2k+T_|;(a*k5-tdyO^RBf}b+z+TW|MAM}J zq;t^X3UuJPV?IKe1oGx*?BWp%nx&Pi zWSTQYGK}UqOrXxgOfA4wKpFeYJ&}$N$d8q(Z4*_kG_a-eA^d{E zfOMGQ3#7$VV2vqVp~gJB&z0_~3#@D78qKz{dHRmV3z1n(YF9oiG^DD$mC80z5@@i3 z!LE^&%86#0f{w47P!gW=rs5z1TOG#1jg#>7)XH=3ah!0K7xfUXhE+HZ(6zEUn{u26 zfyNTb$~;+__a|IKhEiqQ@<{`oDx}2nh7J&Cs+1T+Eg~92@Z3QmWUmWFeN-SRv|d%W zkQ^6R2v7gp+=!K3nqY?ojH+ss*05#4tPwl9b+tfVr|nIcQ#LOn72w>}D}LZ04MKHn zf*)2ceTP<+^3iW?tSxJ5S$cXF^*Qp?rA1i@4btsZtAwl;GaY1GLE=*77T}QSp+3#2 z92Ah~K~u!GLC^W+1+@gn&Vf`y(iF`6$=d?Wh;s+ZGCiQbg;oUVQ5bK z?wDROuGQ>%ZmRKuo+7>qoY)FZx1UZI#DrKbXa|Be74wjl{YvSNnX3y}Tb~lwkkpTn z9HerixrVpZhwMK)d!1*ALNkJ{gk6H+@bT<*b=L;O?7;>YXPd$5_~0ymd>)-J*6}$u z>3BCQ1;Q7K>KD}R;ireo?y6@X-Y);BBpGRJ2H5(pHT9_ zre;qQgJK6QtRArJLAcIPf}Dhk9%dym#e|W-O8T9O@-;3f#=)fu9dD*iI2G3yPAHoN zd8W_*O8-puT}B>LtiCN6$SvP9E?FEvE=(iaUVedRc3b02hlo@!2xnh87QP#sMyuIT zqM@r;&6t|w8ScF|NWg0GMx%Wix`%2gsoOQ<+{+kxh-{b6ar#n@4@eXe7UI8-mTg%q zA82A%+hwd!65e)2_(y@qNTM;YK`Nr6hVEebZZI z<5KI<>+watC^Qj_cqAumm#!YJsRJ&y%#TTG`%?EgC$155IaT7D31WlR*(_$dde(*x zD8l^HK^u`S$$iH|d+m4NwG`T`F_aw_Xg? z>XCTKk`jes=9-6*B(>z^ZqA2*f zM~M4*@Pdv37@!TtX!w$Ht*?C!3biBJSr0wL=(CQma>MBP5w z26b>35y;o(9s-rtA{jnf*fvh~aZn*Xpn-GUQ5U|Y@VrfZOW8MwAD~+__T@wTrZc>{ zBf9I;$;JKk^B%0Lp<5-*DwL7``AwyVQI3vx;Df+kiw(D*yfcJx=9+RjATy`Ak=!~J zyHVcE(SK=a70g8G<=+abmi5zinq(r7yAnniwNR08#&3-2c~LpVh?X!5(#F#41BYcu zGMpYQ4j}l7Lr}|mxr+7H1X2RhgCr?NNnBHKeNw`kDj^dxyuj1VqIzk0vA-pwj7Fw2 zBbkVU=e%)oH zyxz4m;>wnLDty;2g;M!AcNmN6C;L+4%z_{u4^-}x%4)T*&1Dz$yg+_8pyo<`3&;Hn z#P=8y@$npD7BPKQu#YwqBNMBSGsF?6&!XN-^j@ciBkv`K7^n0s1TLhBAf>?Y&;%?| z!KKk`VG&^g7#=qgwsS2AOEJ3MGSy!wl^y47g{!V*8{uT&AzBFbMoSwLJOSC}sC_{q zUyl1JFUQQ4Xuk2}Q0E+5*l4x8o2#uhPZ;%ll~Cb^K_Jbg3Ttd{uBo8jgWh4Vz#N(0 z6^fD5Ms5VgS9l}k7{LN$Nc$+$JSBWuq}D62$Pb`4vQ49#DcQ=P0e5VsQK_opj*5Vu zhnrb`KCT*wF>9w?8DNVKR;}fz?R3LliYeEE@zZ|%o)^ji^;oPhNR()7@Z3YwmAoN= zn5bx&yCgaOToXKGpS0t~kqxLOwNEQMEFo}GZCYhb&qvl;DO-$NUUF_ZTr6}PpCX0a-?F%}_Bos6v628G?CuhDVFUJFOoC)<|hkL-*Y%J=D;>O&x zic?kcqQ8^8&Gxy`@Je0u%)rS|mAd8bj zkqdooV@(Yu^E4RDGn;TqvJy3FEe~Yz$<3zc)u^rGZ-$DA{*Q~xGuHX$3^}8yep%ab z4CuM5S02K&jZ9NVW#lzP^_Bx=g?(WxMl z8={g{^F`U9V-93&f8o@bR=elgbI|ftXE3>IA<*~~IGXis&zR(#wQEj7N#9~>j>*8@ z8>Ok7^$go=u17GDSLX}$#?IsEU8Nml$uj*ptABcmU4*~2yF0C=b?af{J?JuWfVm5Xd$?%+&XaQj{x6qf#zAE-+ZZ>xf<Jw0EYus&-xiYmqq}P3FA+tF86yeCo)W|?$Xg^w*zA|@E@l|UXPwnKnQ&CH4lL9jb zxer#~lDvuv|Fd+jyhF-YNhBVT==%sY@gBC45$s0!LItj5$S5~}SexK5Ced+b;i8iV z_JnWh(erN+CRyl>%d}HgfoG@O75omts^jW5tHQB&b16tk+OXhhqQLPlg;i-y9Z-Vr!~5}HEBwQGETsx>!j@83sC~Z z?ikp)^;5JMP9OsC_B$`%-oTFn!(qn}iY-eccyf#y#!Gghawk1rxg&#vkx=7+TE0qJ zG3Sk`?t@oJC?zAJ)o-Hf#;N z*iaz141gj1?)a(1tV!>G)IQt_D2Fm^R?Eh}W#TrMUyiU|knYsYCH7liT53;mDsx&8 z7QG8SRyCm|(z@Wgmy_!$p>%tWE8jW$wEZ2D!xwKzF-C&iStsy_v8Xmh8rh*uLrxF+ z<&$|l^rliTCthv>iwY5E=_3(~c-4Iw20z&n+2ED;rv7|N|wKiIx#kLD!j(}MN zlI>kFOP*`gV_6S%3IuJp#?1%?wLcS#%G5P+4~WeH$%RguF&yPhewjAuU*b^QEX_s*r9QMzb0;>Ot*bvcv8gK*0EDBzlD%3x7`X{V423=? zJF6jz(Nl3(_Wi1g)vMJfbfH*S_Q`Jk6rG&uM`*Ny8d9deYIP_VJif912E8)uQZQuU zphsBbxZjbFVX>SWMtzb!N3)y`QG*S*K;b@kzs92O0|6ytEvMs69BqwsEcC{&OMiUd zy>PEa4hU^&=dF?V;bR(aB91&xEb1v!0zBT3GU zeOfQvVY;?m_#9k<|W{(SI?XG4MbIffl zJrLs=sh`!#bG1++l15ryanof#+eZ-2*i8So6w>|YLJRwyT{_uHB5!aLe z_0`l;OwM)eA)c&g;_l|r-n#y?%?$@`Ho*up`>eL=q^xGyBEkEyfU0Ca$7TIOw}^Iq zec$+9C9AE23!=a7yb=&u%Ae%2T7+|f))jz}h&8GDpazQ-inelNN>cZS-JfdIF{Ctv zqL54mw~a81Gr0Sh@)4AmaYZQAwuHwQ&*Mx*I0;?6(7$x?t0Dc#Vu3tV zQ!6ABG^wMPE?mBR@p2y-#$;cWd!JUwH01cpXHO9I{f!k+fSfU0LumF>ga8`o{h>+e`QsWl|9b z!(YZk(lIu_u9@m|KRI)Qm$?lm3^n$Sw1UkD3J}Iq!@3PduMxM9^JBSojBF8^Z1@Yu|mx_327=lAZD5?df zFrEq%InqU!-q5Z1LY!CZ6FuO4GP{6U&-_KCMlU!JU z)>sIqyc~JKQ-(Gs9=>>X?+$Tb7lu3MM#s)w+!>x*yl?>KCaG6y_M~O6I_Y^xC3pdz zm3hsW%2oq>k9Ax(bj&yfV82z-X4Z7y1J_%~(}0EshMz%)w}CvodC><-nX<28MXSa8 zW`m_MSirL6#-rbQCI*#>ZV_&O3=S7$ziq2YE^?q-A(rKkQ%fhAuPWFXZJ()UPa&kQtN#clt+~9 z!p;Og(~uO4_lktqiZY6dFb2=Q(YiLp{RlHj~^%0$H9iub6SJQ9=L&&(;DfU zT(J_I72?zuO7B(g!&z_R%t{|e$uBo57yOhsH&KOXi&#|4#A%2ytjsk)t(Rms0Ien; z;U@sclI{Q@CGTdZ7#jKDyqe&DlFID|WO7v_eZfhN$KdsGW;2N8hgAWeJ2J-EQk*!qCVBRR^p-(G z3jcTnVlB=gB{-eu@hqNNfmKE)CcQRT{H+n8WIdL|#ZF2n3sJI`HKAPXnn{5l&nN03 zmC6}wo(sXVG?df;w~6IW!=@af|KSpoj@8yFpKdlwrq7jLhKfpkwi^||MCHw`AmfA9 z;h2PjTal-s=7t2R8#FoHgWiHiAgJ0AaM*NU3++$r-qF}?yy!)Zr6pIKg3CY-azx6g zpV5?$(b989w5GxOGUw@P$Z>h z#4)69@!n<>WZ(fgS+?bhZ|-UsxYQwE9FMV$8&U1MLA@`En!jN(NjFqCabi+sY3aiF z@I$ecgOWv`K#YwtuEtD);8hM92j?$c9zA#u(`RfWH*!2lks(EQiK>PGUp@}1!+ZP| zg#61d?FMh!TEUJxKVh#^2!DA%kxeN!8FougYIcZ689P2nZI;$b6%%b4uaIEIeOJqs zgO5&DPVvC{HV!>=!)!xV@UkrJ61M~SF6WCpIFksa(HG}LKD8Sts97$lz#uLL5<6F= z`snp|-KdJsS(o-Kl?yml9t3k7et^cRhEfr-*C_D-_S6mA2tB7wysC+BIqf_-2B^AK zwM4Cqf>I^Ue^~e}>m3TT_P42r=J`vfW=}3m@IP&K_Jf<9qf+g29dZ$;SxGfLjzkFB zEYm>+0jv|`uOOIur}?}dLtEduTfI|inUu7CJTFu&0~B#3*>DfHjvHEHv0RX5Z}s=Y z4Z&5}?!OgEq&LgzJzW;OJhxxR)z>@ei1ZN) z;Y`Qel>sp}>C8q_tF{j)^;wjTlydD_x+gJ@I(&OO9P2(si z)lBh-(|byyj~lPy%c?`Q?36n${;Kf_1cPxp(izJ^A%=*Dd`jae3@M3n=_l1j_&C0s zX93olgllW2Bqvz0#Yw|>w77!9sxeSFoarZr-ax7|+h&qBFDxk? zi3>05&DG^a=s{OkHntEx(+cyBnutsY<*T=JW1s6bV$$j!5CvWUk7AmOdO}wo0YWM=V^}b_dAg9)%aM{_vnkyp2MlVgT=wB z`(az)iZ1v|I6mAQva_qfl17HpeAeHD4EnyzW8B&tx&osj`bh^Cy0ZkrLpN%+IFl+9 zO;?W75b^OA0s_tp+G5uBsE7(m)i)lyvUzs*^~}f#??q)ww`F8%3)14?sT`xB+~ASp z^fZbHoZ~bqnmN%6>Px;KJeRX*a2zvh?MX{w3QQ|QrMtKr#v7WNT-f2*7wPbQW~9r~ zKBZx#kT2%+7_VToCiu_QTen=`79ZfNXF<;XI>I|S7XzeW8gIZH zBi(@u1y6|yX^{iJflNG(rJ&@8T?M3flZ6n}D+B`0UKCWNP5LN!k_P)7^p{G~z&7H` zBvfeig@Wdb2)O&i_!&~6Bz&?Z*C$N1EjhU1AsoQt0T%g%+_dxri?FHXo&zfXC~-K~ zOPf=vq$ga%CT6*JU=u?iH|PlbTUXcn%%V!|Z8?j_aP|qNlyXa%7t}@PE?#)Bac9>x zW82KQ6lR^TVw-h_Q6r7Ui^SKDw4;*BuE-4nMJUEWD*c;dF9$CbzAZ)Tso4e;)FrNi zG4)EmV_(01*;o@mGe<(sdrmy$UO+w51C@(05m97_t}t`S;E+GXh$a3cHaZ^a;`?PN zsdv2h5jwoMuoRMEA#g@T)kr8_DfXvyu)M1JHdl0)b(L!#jUeV4EWcKEU#g|#RKyqA zxfh2C74;RA=#J?hn0Rc2SVnehP^Y?~G?;a5jhedDdZQ@B_6^INP6HiIa` zp!LusLblmHwKxw(Ri|S4+!kjUOkUWbz-MZ6!#xiTuORwz_uSRJ(F9@>=ntG+LKZt- zOu0_a?PM&d#3UPZb6Cw-T^yu?1Z?$*9(+PGI_Y{^+k~*Uu0iyHQ~!vHrrdW`%~n%E zH>$H-aIcmBBCf2C!4)$YeCiYjCW>}EUm56E3Mt%~Nz*D=MjijMTc!*ETOtEz>lFOU2R}hk=>Nw2|5=6UNCxsSHcP zM&nvlRKs6GPn8S!&mE*f(N{BG(>B3=y!m4|Okl)g;~Yae{^PsHZ>d8|GZtJ|NW`ug z#qSj~=E^w?Q5`-#WYH1Ji})oYm{{)Y-5|O$|HTrlQO9IiL1+yAu4aA(PLg$Amkp}h z;?lXKM}~lE*UXp_ntg%El2YGfj@4kbOgHC`gPzcm<*#S(iw!j#)tcM-FRo2nnN@VT z$^sF<71%TJq>Aib$?{es!sj(Gocv(KFXd@Zk`JrJXWNeLX>5%;FL)>T$(^yN>85_S zCG6qHUP!hUF4@7-BD|H78CHrq%CD0sG%VkaZcqrB4XsfLPfO?Wq<90x=ecfBX2zf= z#2^%x&JTxs*ix>P^g+42*$cyS7atr*sD$U|h5fS+iozJyE~IsAG+pYB43x8PVWp7jLV-yx zA59@UgA_wH^f7SJ^>zLwp`=euxC|4uV4qowtfC7jhg8x_IV%DQffNW5BArEkDfTLZ zf9B`BeMo;>nVY^AJ6ze6GU;Fh7rDMo2rpFIZJwBLCV&w^c{(H|mRIA;Dc}#lU{&`) zc4di+T`B#*7EUzqx#bbmjym5yJ$iH)A4J9#C4DyBSLDt>smqfM4iuN;_vfO?^M6)!5tEwbJPEzQ(zG9f_a@OPRGv1sf?IOMr{hISVnSeG1~|lmY?v2L`s^E(M<&7 z3uc5gmJgx+eEl?-&9tDlfUncGfl!ltdM60Ym2|1JvZa#P^xaljt3il3Jx;Cl-7N;R z8cSelxYX{LYqq)p@;ee_`N$9{8N7$evOYHh z-i_h6`b8?Dgl>y{WT4rEP~+X)afvTS>K$AyQJLGueshvxb>yAfv@&u*agwd}Pa~Zc z_^}1-E+H%}IkN+2kc6u`Uj+ByJVM#3tJm9yT<;umy-R}vT{f}rox;u=f2xz|`b>HU zg(vfHVd65D{n8%KNI2x6+(%aCc*^G$KTaW>ri&#BZU9HtzRYh&w5Fe0%R?LPc#DPu z`g3?}&O!27-gp4#%Er1-yq6X1=u{rXI68+jdC%@og!6J62>P4^tL(?@!Z8fChouMF z$X%~C-%%c|dsid0RPG*nk{!+)?&{pYZOK6o9P7$K4Y2=&eGWMwV>UTdl-I0F1*XNx zb0N~dg-60WTgIa9Aq&oPD5O^eb2Yb?q>EJvGt(2rYVw;7$>qoiD}fcGvrTfkvH88g zXNLFOeIJcW(UAsSuP4dk=fK5UHiDp+Dw@nxV9+Y;#8bRQNj1ZajdsivUl=bdgi2y=oNI7-m-+c|o&$Je$>W zmdy&jmqx7V&eGq2of^#mO{TwFXdMGFf@zydlZ|<-YShLN5qb`A01?d3UHT z9vWV_Fgk}6Jrm;Pt(aIyvRZB`35F!>HPo?qhfyBjc2P?0&hWJ54Onvh#>66XOBP*O zUey=#Ny=BYxD@h3o4SgIkZK4-(hqfL%uKqp!jo|0IL$)ajkb}+6PT3nPBg;k1@CW{ z2!oO)4f;runxvP@SP-&}t-EB+q&xB&tfS>3!<-6M+vsD+chVG?igHyOa9LT)gw|)7 zsu4DfN78+uA$~n$Zlm)6sV< z4;57@b6p7qF!Co|nknz!)TQ3dWt)Q}PFKdOdF;BIAfa3#c^+5%umVW-9EcD&phdpqtO0 zDpvi9K^3=4&zY7lD02~9M>68W6mw%ZYg*t3gO$MfK{FF@1lJd#w}YZJjywXNO+A-m z)wBXZ6)$g099!9HY+k&0?n+}H^iknyjhVaK&35zdH?;4*dTDQXFgnU2W_b(AdfH%; zW{!4_wi>*MQwng1$mJ39GLG&j@b?t_`zQR}RNVZgTc7gOVuBa_?-On=irHJA`FW53 z{KviR$QRuFr8mvq`l{KdJaOX46K=ZonX^xQY9mwx9N^#VtxvLAPoI726JLAllTf92 zaZ=|t)p^_(;5n?(zx8pbG5b@uvdWFtYp}BaEdgfl9NIe@p#tDxb<+2Jv%b^YK7p1U zS-Z)el(&n|oxL@-|JY&e|Af5W!oRfMzec~M-~0d7^Zx(XFC5eGH-{hDeERh9`E(<7 z?yo-Qb>q+ZxwOu6Fz0Tz$=ks7@b?bgxT6CnnE($4z|ThmLr~*}KrF;b^#X zwz%nb{Cxb>-OI%jZh7MJlW)H5anHQzSvNiV$a8Lb?oH3T>G@B%{U+e6f9bWy6@U3p zDgH|TQXH+|Iit$IBSo`I#RSM_*Mnq zuHf4he7Az{R`8P*{ABSQ)KDK`Om8k;Td6-?sXwhA;e4~d>F`7FNHJ5XKU2ZKyn=su z1%FQke@_MfiVFS}75u#w{JjCTm?@mS^ga< z`W1Y?MB>+xV!nc(uiyt2Jh_eX??`dHfBfXD)_Am{!|5js)9dL!Jnz%UtPh!x`KaA1^=1~ z{f>M@2r%+x>EkyO8H%t^4C?$UtcM|yHb8nrTmSR@_Q@gZ>p5P zrBeR3O8Gk~Q89rbEB{_x>}BPb6z|T;pHlo*R(@&m+$WcJ7nzoT``-srB+5TtDQA-h z_-yb|&IS*qY%oyHIuqrrb5PDc7Uit*C})jF`IbuiKCV)JN~QeNO8M4G`DvB%(<|kV zuaqf)mw!i!XOso}I#N8dQhrvYOi8-@J5oHmEa2A>alhrIBgJ#eg7B1x%D*GUCzb{L zI#QIJFcC+JPp;sfUn#$!Qf^erFRYYruasX@DZjW)Zj<@%>iof(S zInCROcJWV@`p-zFDBIVplwXN5-)HxCizP2pmvvh)S!`G8Uv|8`|K8#Yy?npkf4q2C zhJR)8pR)3O#m{8rR}{bF<%aH`F8awEn@6W7_d7GA$?0Zmy0z2nP44gYW_I?w`;$AP(OzdXQnkDh zyYN#y`q0sK>*#cMx;>g|k4Bw#Z#e9Zn(g-VsI`j}_rtx(&i+(>Gw$ikK&d{xvok%M zZ0%0Zw0EXPP0CHQM!e?Tz+_ zSI-@6A0RrBH@135+uf;AZ+8zygVFA=)9to*clLYTX1CRx#`kr4)=1>fy>j&u?`R(F zPVWr&cXlSHJ2TDRZg&rz*qiJPr+Y(uTN`dt9Hi|l2Ya~5?$~X2_lKR~erIR5HPxJ) zoNVvx^m;R$;Y@RCG~I3Kj(9`6b9ArQX?CZElhgZMJhwH4ZfNdw+wHwxduqBjvJTii zf933zq~AL2qussUG<~zXyUo^cx;-Y|q>XQo=1d?VCt zclK~>SbM*>)9#GD2B*#)-S2j%x~(>bWQaC(_eMLIw;0*({(ft!w>R`Y(8BR4)SH6s z21%D^hQq1uRA+ZM)7cqK&rI%*_GU0blf$XD4Nsiv?C#0-(V5AeCb|~0bEdP~>F(|9 zP3<>#rhB_Pd(AyGw|tit=(*8@!`;XDX`Q1pt({?Sr`PQcySwe3QG2r89JWR{V-lS@ zGeXKo4lafYGYL0fX|%fC-TmI)-Y&)rQ)h38soL(%?CrLOle^PX`{lbLL9ly!Q%76V zd(GDFsKxIa&Ft@V(Ns)&^k!?=o9bqL;>6^##$X2Xw$(#hcXoTN&Tu%KZgqC?g-D6F z+u6awZdI1Cz7zLuj~?ZBwvSF@jqK0NU_y>MqxRnJesh1cGn#2lw)Q|%I)~iO{)H{= zD5g?xe`eIɋ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 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.su b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.su deleted file mode 100644 index a7b9da4..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.su +++ /dev/null @@ -1,36 +0,0 @@ -stm32f1xx_hal_pcd.c:128:19:HAL_PCD_Init 64 static -stm32f1xx_hal_pcd.c:246:19:HAL_PCD_DeInit 16 static -stm32f1xx_hal_pcd.c:285:13:HAL_PCD_MspInit 16 static -stm32f1xx_hal_pcd.c:300:13:HAL_PCD_MspDeInit 16 static -stm32f1xx_hal_pcd.c:858:19:HAL_PCD_Start 16 static -stm32f1xx_hal_pcd.c:878:19:HAL_PCD_Stop 16 static -stm32f1xx_hal_pcd.c:1253:6:HAL_PCD_IRQHandler 40 static -stm32f1xx_hal_pcd.c:1371:6:HAL_PCD_WKUP_IRQHandler 16 static -stm32f1xx_hal_pcd.c:1384:13:HAL_PCD_DataOutStageCallback 16 static -stm32f1xx_hal_pcd.c:1401:13:HAL_PCD_DataInStageCallback 16 static -stm32f1xx_hal_pcd.c:1416:13:HAL_PCD_SetupStageCallback 16 static -stm32f1xx_hal_pcd.c:1431:13:HAL_PCD_SOFCallback 16 static -stm32f1xx_hal_pcd.c:1446:13:HAL_PCD_ResetCallback 16 static -stm32f1xx_hal_pcd.c:1461:13:HAL_PCD_SuspendCallback 16 static -stm32f1xx_hal_pcd.c:1476:13:HAL_PCD_ResumeCallback 16 static -stm32f1xx_hal_pcd.c:1492:13:HAL_PCD_ISOOUTIncompleteCallback 16 static -stm32f1xx_hal_pcd.c:1509:13:HAL_PCD_ISOINIncompleteCallback 16 static -stm32f1xx_hal_pcd.c:1525:13:HAL_PCD_ConnectCallback 16 static -stm32f1xx_hal_pcd.c:1540:13:HAL_PCD_DisconnectCallback 16 static -stm32f1xx_hal_pcd.c:1574:19:HAL_PCD_DevConnect 16 static -stm32f1xx_hal_pcd.c:1593:19:HAL_PCD_DevDisconnect 16 static -stm32f1xx_hal_pcd.c:1613:19:HAL_PCD_SetAddress 16 static -stm32f1xx_hal_pcd.c:1630:19:HAL_PCD_EP_Open 24 static -stm32f1xx_hal_pcd.c:1675:19:HAL_PCD_EP_Close 24 static -stm32f1xx_hal_pcd.c:1706:19:HAL_PCD_EP_Receive 32 static -stm32f1xx_hal_pcd.c:1737:10:HAL_PCD_EP_GetRxCount 16 static -stm32f1xx_hal_pcd.c:1749:19:HAL_PCD_EP_Transmit 32 static -stm32f1xx_hal_pcd.c:1784:19:HAL_PCD_EP_SetStall 24 static -stm32f1xx_hal_pcd.c:1827:19:HAL_PCD_EP_ClrStall 24 static -stm32f1xx_hal_pcd.c:1863:19:HAL_PCD_EP_Flush 16 static -stm32f1xx_hal_pcd.c:1886:19:HAL_PCD_ActivateRemoteWakeup 16 static -stm32f1xx_hal_pcd.c:1896:19:HAL_PCD_DeActivateRemoteWakeup 16 static -stm32f1xx_hal_pcd.c:1925:18:HAL_PCD_GetState 16 static -stm32f1xx_hal_pcd.c:2085:26:PCD_EP_ISR_Handler 64 static -stm32f1xx_hal_pcd.c:2323:17:HAL_PCD_EP_DB_Receive 40 static -stm32f1xx_hal_pcd.c:2404:26:HAL_PCD_EP_DB_Transmit 144 static diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.d b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.d deleted file mode 100644 index 2ab9397..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.d +++ /dev/null @@ -1,89 +0,0 @@ -Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.o: \ - ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.c \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h \ - ../Core/Inc/stm32f1xx_hal_conf.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h \ - ../Drivers/CMSIS/Include/core_cm3.h \ - ../Drivers/CMSIS/Include/cmsis_version.h \ - ../Drivers/CMSIS/Include/cmsis_compiler.h \ - ../Drivers/CMSIS/Include/cmsis_gcc.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: - -../Core/Inc/stm32f1xx_hal_conf.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h: - -../Drivers/CMSIS/Include/core_cm3.h: - -../Drivers/CMSIS/Include/cmsis_version.h: - -../Drivers/CMSIS/Include/cmsis_compiler.h: - -../Drivers/CMSIS/Include/cmsis_gcc.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.o deleted file mode 100644 index 4c642fba08da8b589528c06ee3cedf59e1f65ca4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 756188 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%0A?3mw|rDD(CNw8G*~xv4N!*Z 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

    ~SjW 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¬&{DH<483}P1rNL2+o{yCz# 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%0AW6i*G%iT4xCkd$@j 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 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.su b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.su deleted file mode 100644 index 2abcefa..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.su +++ /dev/null @@ -1,4 +0,0 @@ -stm32f1xx_hal_pcd_ex.c:138:20:HAL_PCDEx_PMAConfig 32 static -stm32f1xx_hal_pcd_ex.c:181:13:HAL_PCDEx_SetConnectionState 16 static -stm32f1xx_hal_pcd_ex.c:198:13:HAL_PCDEx_LPM_Callback 16 static -stm32f1xx_hal_pcd_ex.c:215:13:HAL_PCDEx_BCD_Callback 16 static diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o deleted file mode 100644 index 1e57f4d7797a4601796187dcf58ccc52917e84cf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 760956 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 Qa_N)^f~iQUxrv)| zbd422Jy7#DoM~nrRiHfBLQFeIl~?@f8Ci(>KM83)G_@0H6D+@`UxX7_+%OLc@*HXJ zLV=0sS6kfBmXQGGIz?w_nf&L8sB-gWK2Ba7#-p0zDm_i^ao}(rOU(BWrT1xQNPl4d z=D?;@+*c};GG5==bS7LVbyJ}EyNBO zy%libJuwik#hdcGSZu4Dd0bpbYcr(faphqkSg@TpRw(}t7Yz7K(O%fM?gS{Jo-#?$Q$$l{wSN8{{zI>mg9O;Lgt+-f0#FWG38KU%J) zn=@?$>%vVZ@BRqa}0Wey5WO_oG68bNm5zmzc$h z2B?C9=p^?OFx&~HE>@rcoq?kb$OFbA82+XHVdWj?m~fMxA#kT=fW}N6Bzi`yV1mKo zYO`9*!?dJq*@!T~BEi#DKd6T3Ny1#1J4X0F&$&E2Fu+XLC~(~UWi6O6!`u?{ZRJwq z(*vN_QB2ixBEn!o{YS0A%rwT18P|3k+%VqB&=M@I1m+IG0SBb40C&SoeFCD3rdKF>a;DcuTT&GDoMX6b=pU? z$^LIV-u&NnsT{0<7B!73GzS6=7r~fr5MzkOi=|^VGHgu>L6YsBPb$Y4euLh9*AE5K z1E3;$VC*+Nm>6)9)3nvCEJuCEtUSJ8*D#wORCu%I)4qjUMn**guy~_`S#$L&P=1C9 z=ICA#Z?_<6$A3A$T)9Z|*>A5lJ7Xi!SpQ=X6;6YN9JIp*njjH2)1z4ogk;XH!~|Kg zb+f*qRMD6r&tM7FC$W5@ifm7iN`UMT1W4@v)?Ypv_UA0Ky@qWE6Wirf>H=#PVGUz1 zr7cQkCdbODa}Qg^NFb4+#58<<4(pt__scI?B@WIoaxti0IY$HOR7%f?Z$sw}5*B@@ z_p~Xo2fB*%pyLSjO;`DTI?oIM-#qsg0%4_vo0P}ZC+-*e3DISOA}vTI>Go-aUDKUU z2l`dkk~gcq$Ek;wY$FV@jF?(ArqM|sse6U*Zw zFRv^7Sl{}+vHfNlcUntY=0T)INKB$P=(hfRYr4Pfi*gV2q$2XSiADj^cachip3Akq zJ&qs)3(b5S>`rs?qu_RGJH(dxvy*J_6xYCVE2DU`%NM1Q+|FCSQyjs1@MHq051^Wg zs(M*=EcU(uv6q{uQKS+$qw+A1T!#nJk$!7=(KH1;vH@C!i; zg`veuYM4HUQ=Tm8NuDr=w8oJJP(RR&ymYKhuc#v{S&N#+`rXUF+-}#m|NAo{Ro=dQ zx7~bv`To-{Z|_)tkOEaTsD!$;HG-IK`L3QwndtEA3ftZ7H%^4a0KV!A@6) z?{0E+SS>XLm=FFq7#!{&4^IwH@Snkc|KJuqQ%~kfk^^Z&Zt2GB`ikSaaN|iLoqb-%I;tTNhWj?_p{t7><0Q?t=73q9K1 zQUYsAA~j6I`9W0?>&Qt;Y|W|3pj$?Df0fIq+AK>HZ`(n=L3MLd{u@yY7mr}f4C#>d zSN6&aFUBHyl%d4sH@P#&((-jkJA-r@5If{fWkbkHUPxDrf{WN_F9%omO!q*6gl9k2%|3BJ=e z_o2m=(6C&drfI&0=^c1{Hkp~UPFD={oXj8Txj@>^cCj8=L_gKsTwfUR&ZlE0v6((j zE$L?>OYQc0Wkmi+8eqaK#voMlg&o=<+O;kzd2@59GVjoqP^^EcQuL zF}7b)12o!fo|3^TrNGwkV3-mERl$X>P|BQeqohhl$RYYa&_2qHp}Svx{doHmyeKq` zT>q(;uFK!$WQa%KuUGxA8a4P+@A`_Z%=YY&b^1_Zu%(7r6PL~*+BGl$usZyIJei-q zn2eXJ#l{l~{LUH7&D+W3=J;_h4W{{d3rQAi>Px?JVF7MV%0Bh9OjvM`rc(;pMPMpD z&$&)m_Q<)?7E+W40=pC?v;||pTcEGqllap;z>cGl`^r{Ld1QAjl;a-1s!waEA{>fp!fTXf8Be%|MMBi^#*6Kw3nx5)MXX4>(7><3e#myr{;B z`^?71^ba5tbm!z5M6a%xXt$xrS!!6ADFla^#I08lj+?%}VHJK)l9l~}u6e+&`C<)` zHR!U5gC$w+gbP2Z(Zi4R)YLsXP=cpp{Z^hWgFm%P9eL)Y-pb;kNmJ|?Qd<9L50wFc zci+NUe?9gdExPmY8&(hhAA1MaaLpPJWQr$|Gg-{mrEdfVFSvwHS19>+d_=5zO2M4Yl}niZkSa$v}V!Lyd?d53(}%Q`?O z91Fnen$K3V&7@>=vo%W~$FFyf(D{@qGe&8%mb*Pc3PLFC!;%%aXnwcytoM7x!57Vx z&X@Te^8P&_NbIu+xau0C*F*I5wP#y~yc4#WQKlp4Ekpk`MYGNp=2GpoS6EERbv}U_ zrq`Ay#M{662{|hAk91slR*K{;e`Z5_jzM`z&92fkhiLKv(%@hbNUdjK8|@Z?+?fE{ z0BJa>2@E6c5=V=CGIwPnmU9-JFcfNue&4|p(9uhsQo%b>hDqSKF!~EgZ;eG?Pi__{ z)#8;-qe#B{Bb;ogA%vV z_$qV+WJj05RG{LjF;K);^}heUhkRryD|$?ot^ANJc?*@JR2?u-fz6EUDj)cJt6vJX zq2dP*)y1|kru|Zw<|5ke{+ABE`lUPPJ^ZRiq!1P+Sq*Dys{?H5S4sBcnUYA*Xf2uJ zcpzj`nA6)`c(5oU9#=qIPh`6TRxj~b63dSPNy~9!`Nj86iXJAosVFk;J&1~BAB-F4(oTe_D zb!rj`rr}f(Rs9tr_}Pm;PgV>2^mPAveXeXj%z$h1hh7Thaq{H)W}o&(*vCx{20ff$ z*ZF_CEMmDWB5{}&-LLbaIHm3M4J4Q*Zp;}*NR+SwC$zR+| zd--qX^Fgxgh_MJ+7eY_>09!^+t0=t_h{a?7pJtZB=3scG}@kqVcYN!|sC zs6Wi8pVO&M=M%UqLa*O(pY;PE`r3IqK(n30aPl*oz`bta7x=ibwvfrA7n43@l zwV^f>)|IR0mhU`3Ps0_;6iqA7j&Q?Wt4@3<42XUMDOKYes@|dW1KwbbZ{7&&L^!S| zy9%Y012k3Iro!uVAWK!c(zkE7KfnC6{qghLcXw~!@BIc}Ln0+IImx|&Nu~AP)PX3+wtVie^czd> zg78`!M}-{;rrndqbviw=C~;H7(`DbvX~=rBvx*namGQA$#nKBLA`GDE%e9HCra?JK zQ;Fqb@ik{B{2*FOlwLN3^|e{pkoR(-Kq|cn%U6RM$ybAP3O;}QbT_|!|I^*i+s7LQ zvb?$d_$iIP#-`3ESLd)%Ki(iPagB6~b=B{TDGnZ=QaVa`TVyWR5I?kSPc_AL_MH@( z4b3ByS!2zN4daWI0)bEGv-7LTC7Nca$y9ZlcT;U=6uBF)Nruoy0qfdl7YPbds|B9* zVZ|L!Y+imLY)lcJGpm0!G!t>kfbHa32uoL}hTh^w(d*omh8UFh9uB7c-+ogzxH1^g z7P{vPp+^+!py@lOK);XrQgbcP$kOB?e0nftUjk?g7jb}_yqU|nd1&GHuC?aqB-U9P1?4i7s5lzK`La-`p_6UP2XvPM|-^zdh)9Pddl9gkq zS^axF4d!cnh1F<4f@0|$>nhe0L-ac4Q@vPHD?CTqhCYNAI{TsmB4o>4rkV38CghPc z*fpm{#314h{FN}VoQb~|*M`|nYBKIcN5GAB1Z22`c&=q%Lft((zZ_k|c#NX@r%0-S zPxY!`@cE`Tp(FrJ;i-n@JX%{4j-gEsP1k z1dDHCiSu@uR#GT^o$$gyj~RR+wr$4C zW~a-B_}Y_S+i=X49NEQ4e1qHwK8IBP@dWj!FDbLLy7%7e51)U0cl+?*kB<-bj}DIx z4o?pHgM*_(Mqv*QUlhdKTNrXg%QvoNZp@JU!`dn4~*MiIpvUgc@M= zQ4FGolfZ?`7~h`DYp79aRM_Zk|GK*U>4r6Z<1fVDaB?craW!5pppvwG&hQ}Hg3|6y zOZlJlBfWIjk5IECy@LfrQ>!t=s8-jI+R`-(EIh2^buwjNLj)Kwmzd4=KmySg3t9h8 zqa^v6E6B0RhJSc}hp_(DE&oM5P>){#H-dgmTr7-Flm{p!3S@MLvbKaEoT%`wVdv?J zOE_h=muDo%-sf_QY(C=~5L`g7vB4_Sv!~;YFPP5G@y)uTlIqd&?)&pPW^tthL$Afr zL1hlnxi!|%+o`}F&eLuZ(ArA;kOPA3PO z#mTWwf=$t>8YGDM*%*W|%7Z_Q>cWNVtX*Arz+b7nupfH1)`USNnx};;H;#NJ4K#;q zq=VuY)-5e#5so-?`fjIyArZ?TaR*Y^5`SVyREXKByPQke)amqot3KG2q8bEIqT*LvZ6NA8?}??QR=k z+~dfC$_7!8ZN*+=;tJ$i_~4pExrS+0Bn9`|?T+1Ump5M2G6f+U;~bNOq*@AJh?L58 z`cNH%egL+d@J0~Cm)6|}GUJY>U<&)a{5Pudg7TmoH3C!_iiO@sjqAL!QF&FC7>Gka zGD*VY)xq`$>hoEswzGVMTs+7-k=Z+0<{Nry)=lwO7Ypndpe5%Qiexh_+4u9kuZ-^oxili}|G;WwN5TL|)ax z`di#J^5!Xg1wz_!hSY?#Qx7P1^~xX4C{0)DJX zP~7Kd97UvWQtC6_bi#F15zn*_qB8g7b{-JOjZcf}Vo5WDea9OFMz#MMq~#XQr?5@$ ztG*0Ft-iFqz1@KcjI4zc&nA$Yo)w9G%JpLvHj7|m-PotbYK%^XK*R#^I|U*D zGdjs_F+FQCcEf(N6uTd-{z4b#i!VG(DhLy1Yu*?dh^Nw8Br$C(XYeAohX%wES(C}K zO)u{+AUIALw>uVtUrQXR{K5l>d8k_&1uPCg#!K2&*t<0aTaNBJ4GE?>XCpH) z5Cjc+)vo-&9V7BdaZ8*@J$@mm8y`j&Yc_zZm$8QB{kC})HrDMHhF>%)2G_X9RJ3!9 z9l}&lx%&*Z!1xvQ!)dv9#kRI!91mLLt$w7diMz48X>X93AJU@Oc+jmN{5v)m?GYkR z5@7+}UKh)PQ)0)A=E%GNwIohDhz0E!;KiQ{ukN9xeoo3;+AUDAD8TH!)As*(h;qx1 z>_70dQU_HPB8#dQ~hapG0a2>s7KnS5psTeH~R1yW}=V2 zle!6envMrr#HX?+EGWEbb3Wl zrs%qTfhC9C64faut1>^VRadN>s;(W>zx{-MIJIx6Cm1p5%B(%mDtIbTHS&? zxBoFF7;Yfz1f_PG3SAn!GSf%+uiNgoEgDZb7f8^_t+P>J@ zhV{4w)>Jf6JA^(_zerHFgGP!euPLdPxds8!3ezuPj%TVRb&?K_VjJjMl{6bOe+B2-ifYZ=~Bzawavej}eHm;JozX`?BT+_Fx#4R8CQ8W7V=eQKIFi&LbxnBNO4=w;hM=p(*IHxcgKK%^kf*e zX>R4e5`>Ctdj+KK5pqvgYbOtl5IF=Sfw_T&d8Zl4u=;+lOyV)kah2u`5(5LE9~;Xz z$E}PM0D{ck6iQXYq8LP=phXfW8^c5lY;(C>R;33=n{QSSN{W)sgGm0oQcu@NQxA-h zR8H}Nt3v0aOXzxCves|^y1sjPcU$y;Wm|^iD*mrJjqxs?1@jxfeFM3RA23<^{XX-P z{mlfZliL)LOQo58l9GWf@yf*KM3_h0J6Zg{PQV#Yix&q#>T5V4V< zJ|s&=F>Ct}byA$9D46&G5!7I+NCmqwikT2;IXzER z%$=)3b*^BVhi!n>=~oCO?pjBNPood--@N^a5gcZNqp@PXfU|MiJ8`g9mj~SimY7r~ zE1M;RZ)N}H&3aHp-jw&XbU2{WM3DBnWt}O+do%oc&;BD#Fa888)=&=fAnlVgSK=Q;iz9{q*y4H9lG3Bx zNXO_*0|nxU3n=vqN0o+d3%W|yHQEs%H??e6*~(zhjCl~bWkhu@;#XRn{3#t?Ra&Ep zHX(?6Pklm^qIWi?Srm2Pzw0?6B5|oxMMjI&W>Th#NYjp<2%49-M4;p^j90n?WAKp2 zaG4^|P#2OLvbgO1<-@y|cW>X_@?9vKBq6e8m1{s08&*CYrj^QUrIJuqnB4?Y|Ds-A zA=th;1}Fe{jEXUA(LTG z%xkA}C?=*TEQr0O&5ZM}fC)Rv3@6XdTjp$%w+u_ez41k1u1ia^hE#@eFk8`C%G=A! zQ%YgGBL|N>ga#2R(mY47L4_5S@!WHsiZwZga0hYe^9fdFvQ5Pjec5?79`4l!jQ#CC zrp4;vb`HMXfWzZSQl!5v|5>GvZ@xa-Ho%zZtX^8D6v+FB*&){6fviB=l z!Ul9@aB`@^YY?y_tvP$S&;hr3M`yxK%IFe?Y6>a2v9>n{P~XE{%)DbiYMqBCkHum= ze=1~un9ib3Q5ayFR;X&T~8O9)=8!c>q6E&}@8tQ#p|nzNc% zxC7Gu4w54Wq%m-_NkG=A4}1e?n+p?H)PhCsUGY@|@lIyH`NHd4^Ia{zMMxZqUbd+l z4}1kP#>yTduuCBU0`5E3IKi~U^lvDtOQFp6 zjUw6Y)kZ)-GFUs6ZtaN1=)pYXYK5l&1ry4c`-gb@2=l9}WP4$3X1y!8*$~1?_h-?q zQXmshZ{!bh9;-X~b9V?++dV46FSKF|44=He`}jA>Gps|%a%xr`y|IAY_r`$q>PR~U zkHI|;JJXyXnKDB-CsgZ7@22wOX>f}C>(0|npmI}kHgaaRZgR*by>d{RDVf;m*+SA{ z!E!m*1WJRWJBEicrJ@fMW=(#*1o8qO?W2L|+BmQ9+F9{F!Ss@dW4ezqqqtI8{sM=| z*w=czgL~NtgDkR}Hy6PCv94W2?2O5#7CK`=8|OQy2?>1#(=q@Z@fvQQJ+Zjf_Gej3 zRp(CUBQ$PC?km1_aXMCC#zI8lm;yq6ZR5?c=N(RQ1c`pR)0Iis6T!Sd`@8!B*&RCgfWdHHEND_Vc;Ob@u@5$dj-QE7Oy8UzuQ|PvN%aGVqY;)bZ zl%-c%7?B(F{X!FJu=`RVY=HhBb#L3;){&%%>Zf46F&$Ko)t3NBk=nl96CenXu=oN2 zASLyOi;!)$Tideam8c$1>`edmeV!*X>+Kv+_Uuf=T!k&6PS!c6PE}S`zNfy9!HOI3 zVe9RSn+04GuCN1{+S0zu9_&^mw+dS{z9wEKNXmM^2|8FcGf5iIcF{|7{N7}Jy%rB| z;e2f7X*Dg5BNJI`4ayv_!X-3Xy32}iufb5lva(>&@(uETF0PhzsD`cUA^76D{^+Wv zWUR78x|oinge4v797EuiCvjk#kv@~e#3Uf*$wUrk$2v~|d!Z2hP)^!{K=E5ob-7xm z6|U4`y@#-;wBS~?{Qy!rTU|kav09uRk-3423po?HAxaPg@7n}@q})JtB$;kdv1~w7 zz7?D@KrCj zrsLh_^s|?_hYSU_)xpRTtQg7}|osyrsMuh_H_)y`8U_@&})~{qvho_hX1D zMg8|JLb*T{EWi)Ui0%XZ;yW=$OS8|5WralS{Dl9O%c~ay0+g1tlac<=^7TT>LR8t+ z)$9U-*3Ups{ei@lXWDQSo6o(x%uA071D9Gb#zVLM4=TB)fIAs6mBYZW)Ee5aI(LtE z_#oo>73k5=^tSzzVZQTVeo5bJayNzJ>*XRcjYLzg4836>V~S5 zOIQ^(65Y`_HT5Fu&Ye=^6Tq)sAHRhl69}Y)p=1SJxOk_qR}O^wiKV86l4N>SK?H;FKhYCd5`5dfn$Z zHVYRgYtVMO@cgr^) z5papl<>P2``{%zvKP6{Uph=b|%1|*w5rC0(8DWyCxjbXx$>IV$RG~tvuK}%~THpr2 z8F{*W`SI;NiaY&;;Y>c>y-}2CA7Fd@ZMm&N7Ix01mXCRml-SieXVoyR2`9&+C8vz@ zZrVaeA~MxFn@i*>w*8ZoTs6#>`TgD9_n?Ls7a(K&;8tM)iES8>O21HXp<66L7Z8gf zPG%HAoGlCj;vt!cWj#S%5aF;;|Qoxb+dBg{`ySRlZ^ z3>Vtx7K|_liV%IB^kluweLcd0!6zG&({ewHtILA@X`tkNY^8HDHw$Bi%4pDY%`iGV z&{B?qBy-xs`0YrmPltn!79ZC`g|83s&>1@;B912QhZK}IvS=6+-$PtiN;1SE>p`w{ zbK}e~C71M)T1f#`O7RJ%iKW^=72uinc702SKyh1sM-RAM50dI$L^4j*@rXRqI#Q=r zfoK&ZKiJXGMGQ$+>REYi5qCUzt^w*nwkp)>FeslS5;RnlQtn*+x9}p*m!PFH7FGummlWzFB$t66 zNx5Yb z8@Q|Zk>Hg75ZvgaPk;IF@qX}+!-~%q_g1mmy5csM?o&YEtBr76xl}ZuVvmq=N!8r> zD%$5#WG}UJh5Lh)c6M9i0P(_Kc{4F+a!!tB30b8rd z_s9-DdI-~^HCw}4F0uC1kHjv-^-A=GT2HCF_t6(bnWAJsHQ;QDTHn(A#Zw1#r#*5k zrB&5Mw})}U@&eLnVoIXnFLu2Gu_A$VoA{E#Ghr-QSeA6NDqLtW%QJPodvUpZ4l%}&F*++LPyod%e7I_||4Ht=X_ zQ{`hZ`S{p6Z{4-k?ICh;#s2?d|Jmu;Z13^!clWCw_}w zyi_YDLMmSkmnd(4@%+ht{DM8+i}}!^;N}CNIZiw~dTPH-&UxY7JX;oEtzc(oP(Sm4 zVbHdZb;>AUvQtL`>DVNOP^*f(-pY&hmpAX<-@T(>6Q#_lHH(CLRWEmR(#(3eQ>Db` zcf&dWz6~xEKBaUe)eSj|LU~Fzp!^~3kI-rh^dSkBy61X=o#UE!lwjSX?ap`O!y%d; ze3nnK69G>`wLV|W89F%7WfS%)0+zIi?kykYXi2xKTaqo^c&nQ(Nh@g9E^CY;znQdt zwNU1lG~kS_)9H9!xx_Rebq_yU7HnL=5IV&{|I6}O8ms3aB9Z^nYKSly$GH!c5w%00)rBMtTw}Ao9M{@acp$MH2R}b8DQHB$ME&^e06tl7Zr*V~u#1+a!bQY?W?#RiCG2yffd zI?7s)c;+1Y3s6kB7q}1fevzRQVzYxZB4-6paF8jx`Abr?LOkojbsJHgI~qx$O&}rp8YVAQ>BDAbp`gK$mvD2Pp;R!SFeJAk!}PZi4Z>>>_5hEpx+pdW zO_vL>HSk)1s7n{jyzuU_?uvCWfBcJr;-39*pLGz&WMHEejX))6bQ1FA&c=|Ys=4@} zs4Z#ZkuS1gygAlFG`f{)y1l3sdZ1?Q`r`VfZ(SO&+|N$J3*;f_B_K(Qipl)zNE70b zAuy+{2U_yAb}Tr-QUsN!!-n_f)#^`B1mg#18t#R*H(j)C&4$A51j8L>CvjR4%0Qkv zq+nLAZ3#Qb>N?UpxQNyR*3p4>++`|Uf=8?=p|K3&2q)u{^?hh})H zaa=m1Y6F*x>W*z7JZ>oC;KP5hGzaur1e2#@+0)k3`4ezqni!cmIVHw!@&G59ESiZ7 zlPNr8x{>t5o`4T!Y3Q0tWo?y{Q-1&MPSUDLJ>-tjFd1Y+DRA+js%BP-7Zwi0z0Yo+ z9{;lPX3bsr21|Qxl^UM??wS6~o-y-z%m}no)8V|zblHG1?)pUgp%yL8rkJ)u_t?t$ zUAP__wiZNCc$QAkBR2HVllf$2OKhr9FRVhMTd?n84ttP&FFWbY+@#ax4QRtHvfNH! zPUq4y1+TV*XE^M2_D?W9h)e8-aClLcrow?%-!$|rTL@YwekgePv9U*~nKz_wJfG-j z2~Hj%>byKt)M;u7uHk^YVFGelX=_%d1J*b2lgopjQ?bWs)?B!H#$D&4rMJcUG0p0s z84j_4YT0PAGk|4qz&So06pNRysz0bci&!U>Y4js*OiUB{#r zS;xaosbDi}mnPz4>4uJS5n`6fxfGQAdj0zN+NukZD4T zEo)FHeCSES42-Z*pS&*00~A;FbR60IY>VJ`M$9y#u=aR6qW*KU3hJ-!f{AmHqUC?# z4d9Xf^#4HT#8f> zt4g2+e+9=Rvd0`>h3HA-J}dWZzUq4xxjwyi&C>%DGA+|AL=_>|kTzwF$n_x-zRc=88mqjU`#V zLOI&9p%3yPNe}{ad|wVi96 zPFca{^3DJJ@KH5`+LIV{DZI>8fj!*DaJ=$7ng>W9 z?gw5GjAXSjEuVaiS)UD8Z$*%yL13AUOE|FQ7&Wc(+ zP+Y`SsWZ7J93|T8y-H5>AMfaY09=Vf%RFjp9=C>R?y>xyx6u!({T)6|m;3JG)G-6@ zKcZ>R&3RO_RKlF8E1;rVDx@oE-m=>Z&iSH&t&=;;p2j9-=%1X92&!w%10N6mN87~? zWe}PT6UqXak4)qffu%z>;bEj;TDw+lAIW)PVp?O zS8@{E;8f9tcm3ml$G-|Z0M!wThZ4;wD+0f0$iUDYx>l0Ov58YlWW{6R!J!Vm&ee1_ zqV{b=4dS3AM5_*r-+?QgYT(MJq^V4 zIQ{wf5-j$^ix(gophv8iQGCYO?b|kJkMTBtz`lTpv2T|yY;ipZ+=&9V)0=o15^Ip7uAt5GYh z4Lhko>dXUr&I%%%k8giiyl)=fLUjwpxziO2eA?b2kELjJgaLp#sg&csp?Lrj^Sd4F z%PiuoS8o|0UtJtkuzS?ZRPmBNFa{TVGVx1e_{Cbiz(}{n)(OT6MxN@jG9j7mQwv+V zyI+2M`vES||8n;6!{?vg;%JVDrY`7F5A}R%*(feB_LI_9gdgp~8>B(RD(uU- zW^!@?2MiN?Od5>IP-m%R)mK2%>`XyK#DL@qX>3}gXeC$~-eVjsH)m&Yu{YF5tBTbm z2Qoo;4Px|OPT=%*iXWtzV9u=N>{&E$%H&(3PiZcQYdWHPx~>uXgbbvRMiV>t@U#7f z#nm^n>94zmzG%PVE_gZpiea($zvJnCi?OBxh;v|8ky zPa>aJg7ET-C8Y$TYF#O$2dWpZm}6rFYgx_Qakdjk`@(1n-1@DI)!$QFfh0IP?E*C_ z>;YE{%SF04m6zLUb_ z!$0NUa!8TrMEGSnGbmeCDE8pD=Z1ee18CPPCTyOZH6ldJIW{*$q~yF(=$b;o(H9I0 zmA2TF2f&Z(WuweZ*Tq$l{V>PP?ZL4$U38pbK8R!Yj=qMD@I5WpdRBIeNZ0fn`_M6r z5c3l^8aNS=dr?K+dc!T9*6Elw`#SfVqFmyKHgz;)z7v?+L$9}#nLab#(BL%LS4a;N zCd*S-td`e|TVU$W>D4@ziuMrOdIh_Hm%+4CGYU&kJEUYQa<6en#zg4vD(6~)JO z+ovQ(C}km1Wc8WAdK$MB>Nt4Mu>82JF7z7lc3uMG2}e%3p+q*N9qvDQ^XZPBCQYSw zTqx{<*VAF^d<=Y%8Fh&IH~@+qYPv%W?TH{$Q-guxY;%2yV0GxuC$EsWZQs_&G#R7T zRHz3gnBI{oo}HML5}ryzksY3U^slID?U}~~^n??DAkdKve*-$qzYZ*Zv&?asL3**c zIX5J^Y%HG-`)Faf_FKW?Rv;feUW#NaW$uST{-iE2(C=K#U7R8r|8mZsQLnAMfJP=$)zmZS01i?$aR>^+{vaKtCK%a&l8!Q!>afjm-XNJ`09 z6XA)}qj-QP@Id~z)hTp_@K)SFoIrE}Eba`88jYhUJO~(!VadS239E`Z?xUFFSSq)u zWo~R8^S-A18>)lO@&LY`WB z%_U-6M0I3XyX1~(DHbsl;n}L6dg#{0298Kr$@NRrmA3+bhy*iAVS~>~bvxT?n7uzU z%Fk?j?|V&9?lzEax^BuHtJ!OCj#lWao4~4lXpYl`vtCok54Fwdm~4Y0W=YN6bkguN zV%sED=n?e@)Ha&a98O9GC?_2;9ZQP6WH^z6f4lP<9oiMK>(J@D$1K% z8T7e2lzzd$qtNdnrfPD5yev`>(@Yu{G%~J(d4bM;-k!ew;qCpKck{RJ5ZSo3bkOF@ zCp8hJ-tyLlA69hm1Qd+8Tf6+&8NUE6_6( z3wN9ID@~ZH(=$lFbXS2}`FOAt4Q(Kh>7Hc@EAA`^Emi zWgDwXM)(0$M=!jX>GjKRcyd8G^$py7mN-J94*IGY54E~ z&{4}lUo#5#{M3M20A95^%)ij5JU&OILcgq`DpKN@QCx4ga*inR^-UE%J&u-KtwpIn z85A+=>0o4_A6%N~j&FgDIL|8K3ZBmO0bgm7JdE5Zu<>393aFc!L000nv{y`+ky}iH zW!){AL8bj70C6CGkT`0 zZ&*J*n2PzSofMHIp@QgHnLU?`Tnx7qH_SNGy14QV`MBbTd!1fS53rT-WY}j(vY~I= zULhECc|(niF%}33?YU|*?AZ>}f#KN2IhZGy2ChpZoRRSDay~LzT1*DsBRJN^!u7~{ zhRv#2COyX#42~4u@J%Jow|5a62xx;<{zP;aL>a66x%Xtee-zmyfg_zz2-7hNO*(8B zrq!^-AhJ0q4oY=-id@px_5qU$IBj+L2~IHI*QNS5jJW-uW@eW`;>s9L02 zo<35{3JhfUPh5;MF~wye2FA6m^@S5-6DCV2^8X#xhSF;&#ty z>B}53DFA|9t%*<#)8jaAQcce1`B({8T+fW>4)`e1RG*z&8*%?%#aD$_aUs!48+J7CFSC{gmx(1q zi!A55xo?8qBPw%!6A1j8oDqz&nMt-*QZ?B`=>x#B6YjIyCL0Z~{D{T)QI9=~__#LmmY>Wt3-)#$ z9F>D$qbEmK_|xE_RiV`NIsI?iN~yEum_&uv>x9o)cqyU61(TI=OAuN|YnK8$VBI8~ zbS1=~Y-rID}u&zPbghTZe5~kOl*hsq_ON`kHg@K|7#Z;)dGg)3l?96gpQ(k+p)8A`0PJUC>jpADzpJ3WsX( zVtMLD(xg*Q#`YTFjgCtaG7}00i`w-I)JXRe8R1?q_&>WaPQ-P3cD{H+)EE}_%?gzM zJzN)Wg>~VSEyemNywhft<}saR*aC!U9>q4fDe1tNsA$<+D9d?@w%#-h38u%DhhC&0 zvm-E6etew4kD_NO;LUn5(Jjl*T;|KLVH7r8=S^0Xt-QvEGhuk5od;o5-|xC^6Zp zl||`>A(mCP6P@WGoKsv^VUq-cs}UO*T3 zLK9^j%tjUlUd*`!YpZ*)i|X*C>giFQI8HE*oDQ~Uj=sS)W8npmWBoAGCbuWCKje5k zHgQSRPA_wrkRpp08Kr<~VeO={9S5>87ga=H&m5LBCyr#7)Bzz$ui`Cc!ZLz_Ev{~ux})zR=94^ArFt9KXh_OBFz^3t2hy{D1#|LZCJE#g>7&yL zSm3w`+C@4mJb62Vb@L`AJ$J^l0Qgj@51y_DEQDa)2hKlnnJ$b-;N{K7StMAFZ^lSOHIO<9!a+Uvlp1_@1s{!8JvP@yi`JajcQ`^g`9^+aysfWlJW59z_m8C=+Bn7 z^8x2K8X7!_@oaendm|KLg(O@_wFOv1)&?lJ-k<@-3bjz(k`u8b1x=BMT?@Vj6-7La zPkgjAzA#u#=E+nw(d3F2iywmmk~MmY-y!%GwT6ra;#{t=L9cgmX@|C_kim{eK4d?b z8Sv{$-$5vU@f<^Y*S_=;?*y}H%QoL+9IB#1^VMQ)Qqf2o3{{(=HKPalMeOFD4yICD zLS;iOf8~*~f6V79DgMjF>E;}+1!ERJrp|`D2_lLOAlQ+4ev1)e zUomfJf-N$0K10c9aNAHlF?R~Yt5=BI0bZoD5czUE%{?RRlnKDj!ybT0G2+pC1N!Yc zM%MTepURgwoGjhJ*e+_IBv|Ll=l@>%ANZ+7CUaD7bza(y+z@&p)Os3Rj z59{p3zy!;0F{JF6Am@Sku2fG=t%rX-r5;ovt6GBdG$;}rfj_?JBsH=V12H3>(`d{* zA8`?GSmDyd(7Eg0d&b;sV*$xfk5XRb9%I83w3^G9N@zUWy`TuEN)E%`h1^=IK!y zniP+2c_A(8jP|tkQz*t?d8k>w&@*xvwZrQnk+={^pPAI1ni>F(qjMB;p=oHgf|cPp z-O_9$IxE-9uO?WrJot!gys?H}kr{MW#k!il=2g;37Y4d;Jv5Gu&GwL;;X%~r4V-ih z=DB@=IEL;e4MXT{Czo#qZ}>c*h!cVv5l(;23cSk2dGNbu2m4PCpB@|@9}GtaPY)07 zo{UEa^GNgHj@qrurc`hVrjKzc`JwYmvT~)mckCht~7t^T$v37kBS} zxc|%cc=Pei`%izq`}k=P&>NV6qqsV}f3DUL{ni?SN~$hzgP0^Ms2l&o@JIzlIs4TZ zXaV*V(685w$4#kZB9~00%t<;LpH9*C4Ahru=Yo&EURZ|L;^419>RgBr+3lr@1T8KL zABn_}_Z4vkJ{tcvOWe~zuUbzKskxY6ukYX7fBv++xcl^J_~P@Mk8l8+e}4CFkl>IR z5NUh?m+0XO>I!Bnr~xiYnqn+%uuLLKQ3C)uH&C1WbUQHGcjAecYX;q>%|RO6^Oc-0 zW-liL>8|LB@e$HHF>*ul^sir&R=>@9$4GKAnKl0zY6Ctc2@_|~Ec@&gPArxo=L86pQnL6s!K5&UgeyT!+G#?Z@p}6c*dxO}{#ToI6LiCs>E|~4#eE&Rn#ly#eY5 zJHK$I%Yi!|@#fE+WKBCVN4*SPg5?pI3ZqO@;l@SNnI#2puSU&%+u)qa?S3Nb`6Y7K zLQ}AsfyDySR06h~oN4A-MTxo1iZDwz6F(w|lkB3S^9Skqv) zn7ePItar~cU8?3<)%a2_>9%Q5TJ0vS9sL6(AQpS~U> zB5*H){|lXrA|sjqE+Zou&FI<0dZ37#+zIrMMDt=+!Qj)`$;}yrT;T{3YDnjEsztzG zqs+%hA#$*T*n_TBphxs4A#FveoB5z@a54>RO*9@=g0dA+Hn{DqtdlNzrUcWZo9I9_ z7F_0Dn7~}MB8HFN%c02m=tZuGE?&Wym7qAOjFBgU)#BNh`LYcNB)Wsm0 zHg=UZQSp#NYD1jr?4e6k%+xPS}o%P=FzGiApobxFb(8={Ty?-x^Y~t6JgVY-g1LrMkD` z70hMI5YFxEK10#c3>j(DQmxj(F6n^u*e{Xa6y6sdd4kp*;$D$OCit@okD0=FTW?Kx z+f=$h%3-9#bKTIcPFi`T>LzjRFl;46T}^OZQ*vEDHLaOR|7*)G!1v6S`#O(s1BL)% zBV;#Rk9u{{(ibGI4Ao~!7VXHB3xslP=n@1i+Hq~)P9=~J7dh^_hF>g#FN;-jbMGvpP3IK-leJjYnXmQCk5<0|rv zK~I`Nzma)R9hIR(&W;av_$P)dAQPOsMDi;l^0^EGD6i{tqtsW{UxatlddW>6*|<@66fYzaSpyfCzCXSf<4-$-WCaF}b=W znOiB6whEglvKSD|Tp?ikS)#-YRhCgKQh|X&M9wca=71|hP6+M|`uxG9wLZH@xes(f z(QXB{X6_O7M>8W0j%Y_G%^f6lz66m@Hy0DRJaL6Qlwi*y3Zw^%pMU%VvY>nN#<+&; zjZlKyhvkz$*>HNbMV@tu80w-EHdFd#3RD(&8FQ1R>q5nvJ?lxa!%L2|76!*s1D3Gx zaBL?(rBOybz^WW9s6;e7g{3}r)0L^2EeN6H--UeGOgxB+88$@;#2gPT<0B%^DIC7c5YZas-r48BWLBTl#C&2I#2jTOx+^kL) z^EuMnYzGH+jzYi`yHpWpov;Bhgu$7+CQ4GXW#j~3nD~s#Rn2GkGRTXahIqG{tJVq( zb6A7L#+go{f>$Ui4d+!?d;uS|oSuR+odIF};E&4lIQwN(T-_}3X+m7yaYbj8Ei|(W zD0APu|LzXIAiV*N;mnu3TK4`MeY0;9_H2j+LHS99stpC|k0N8LPw- z1LasjL!s!<`GJ<6YTKF0d^kDtN~l|KO4Kk-kq*M}-Y7VA?e-M#FT|shS9uP%nxq=0 zr|VLYRiGG41yW~GUgcQHWouGX-`1hQ!0QK2!enPuKA)6rGNrD95qM+tjZP$zl#zR5 zhoD?SvSS9QMJ6udH-ehmwr=N0(;c9^0A4A|Jy4=$SOO6wDMD6YB=tVY_6mHir4l@O-)hyWOwiVHQ$^(f;kQsw#{l*n8>nfLKs+m zs=`mbmc_0#X}k-#hUe?>*=68Oj1mmM&JgKW2zC+Kv8$h^5^KMP4OUgUUs{liRY9ag zZzXakb)L);kWtdJ+?BRCBOlH~ROe&`$SJ_I?7N{*B-W0W zFk%a_Zn^g}3qlY6`+xr#|8KXL`@-|-u=RY>g-7(yp-{7&ykMvcv`-?FebDuV?aLykRe`36SP_Ih{^cI8)@p z!DPzc-~CzH4?2L;yFc3=HWd!jlvF2)_Hcsf;WjOv0|GdOxCi6nu?UCM#CycEaFaBLLC&LOkUnPmbh z6r2%Ip?v!<_jliY`27ApKC@Axw7vAf+=fiLJzzwmaWElsf@6V$9!(U?&New=trNNs zz5+fv{_xw(>W1nSU`m67?Xb7R5U_;QTScFW%Z1$eH514*T&<2X)HF5gv)lK4DM&D} zLM>EL_dFx8?+S-7E#CBU;ab*fgbZ{pMeRZ=JES`U1)3`HN@{UBthl!4#~(g56mvbf z`ZkVb*3Vn-ATI3EnR2Zg-al)=DGA3V@#upFOVT@&p-F~gMS-%He5fyOj+2!XA?{) ztZfW62vtIz$mRxEY;xicqv9O7!nL6aI`6X{4-Ry67@279x zz55mxYHffDavvb$SLjMWZsV>b!25Cn9n&%`v?CYOkx}ji#T_1!qy2>3{Tox_l z0dLO0*VEC`cQ(qlnl>j=v$B*TbheSKkFrw+>CK|4?*Cz&C^a9MZI^l344~rMlet;* z&X`ct<#Dr;(&iGw=v?;l`3-!{s+I;0l7{e#byF%NUCQNrG}!Ao#N}@+$yYiHk-;lR zAOTo*(MNHOiI+cbm$#Rewa$)2U9$^-yLVK#7{_2|z2Q;Q$* zJE-@b=f`$YyL5$GAUC?Q}+l#Py)INmca!dy-&609qU}M3#4!MR( zzE2QJ!Ka z<3)l`cbr1gaGLae%8W{VpMGG37P-T9O8zK7OA4A2+uMu6(SlC9^P>@MQ*di*dk~`g zvPDaG3+_H+5iKqirMY2fsIw)^V_|SABW;W)E`UDCpj7lg>Gf;QNO*C9+>sZ_xt?D4 zEDpwl6g6l(>#L4_v*46DK5ee3$l>!G+wCxp$dsWdb)kdO*;_z;uuK73uTOyuU7(~G zp+4N31NHIKQ6DFc^1o?-JTQaj8Er347{=7Mv6%eYpc<3b#4P}Blt6+xXZJ!2)3H2+5SmxS*<*w%B9!3g408*sdK)4AskAwktJDh8QlU*B%_kYl4tnAbm|=kZCc2 zySg}Hjg#GVV91m&=!3YrRvDM%YWUQ&SEONb{LwX`0Q_`e`KeW4LN$4W5HR-%bU~xn z%P7I}I@sRu8mu%8*~Hl8#CTL(Wx(=7%*N~c%Nw>}IUv}K(^&5oM+z3O=%a^MvUV!& zjzu{DcW(9+3X>*`_a$RwS8VO;rMu^WjAy-|Q6tfpvM9N``&5_oG2876N`(CZ7cI!= z(YW(SvgziLkuh1B*JSQ7XC=AkV+pcX;$Uyg&Bh}}(F`bT1u9bSwFamO3>1N*GEgMs zV0w#Y%=5H&@FU9Dw|+@KBfjsMf=&nc#p1uuix5=%v~XdKmS##HVBU6>;*lhZhOo#2 z)CrR4?;x5)BLOv2Nw5l*UjUD*EaON-EO?W{Y(ijILfqr>1~oPtIP}d zh|IJq63Wate185X?P@8tntW`P_aAq9UnfWDHT()t4%77pN1!uMI>XM`k5_z{8ySlZ zkHl4gJm6U`5WZlU36J++M#1EM4Tk9E)U1hn(X;5~-5yiZVm%+DQeo#Y(c{I>~EV+wUQMq!9I&;WFo9$2%HVEt*_}- zwVKTaqauF}qV!TdbnO-rve;mL1VwazG=;(1IN~Mk7vIy9f$?~BhrFes2qAA^ z8El^&ReO2l>R=_T&TkO6T4HVk(igWr1S-33aw{z;-25gLBOA}UavEwtdRjqqll^~I z`d#F!nhx<6A?qIw>ZW=aspiPB??weX2ul5bl{$})gP!HrrOrz?J(M~RdiBjY9BE*b z&LpX;ciG)ZvrcJvJGl-;M5O)!FI$`DYGSR4YP&dUNA8&pb*urRihX>~zt0O7raofI z1SVVl@549_dk5mHuBgj&tC`f2JZI_8M6exvQe5CnL_kj7LVjpbW9FgHcBaYV zV@Hr%-=CFF|B~^YxpDPqGlV(`AexZ0r&yojI(t)*gnTv~hPsAn4fJs1$%g$5n*<)f z)IG_%*Q>C&gDXPAx3L%*?uYJ9XhF{84$aYZ^~!nN)YcO%yaSkXio#B>XQ#{6^#B|6Qk z>Ze#sY<6uk5O*CV#!LA%T~Q>5dJ5)yz!JTf-xp3zOZCIkq|92=p?m!us9_WH&g6LX z%4EH5m@RZo^_;{3H5U-crw(3TCu()iF@1Q3%}LTjXs?WuV}(wC-R;hsiCJ;^sD>5z zWHyPCy7}C1q2a9-w)LYyKq?R#CZfc?Fl6Mz$Gg+JZ$JNl9YSZD)Twx-vENnBY}4j^ z1J0LvR#t3<`Ke&dIL{3ftB*xQrZ!h0^k|fN;lizS2C_?`KbbkuO>uDp5rY=zENMj6BvpTDp*`5OE%0#H7M@puDn8k!45_MYU>NVUO{T-AC+g%qRJ)I)| zC?fCv;~f}&`ksCZzu0}jy8mZ7FBC2t_*^_!qWF*#Lbzw@M`_r9*{ODVxIK#Up1UlR#?f z{n~&Yg4upe4b$6+aiG-TNvY|sT6!GGZRi0J%Q0x$>SNYN@C&fH!cf3?oy8UPeYZ&Z zuoJkr-nR{GVZ*&<;s9x=8a!(q$# zX}0|?TrVUwrGu7Ps?uSdFX-#77f$f7XO()T4p0xa(^YjkP5+J)E6GXjI@aIEZZ{tHXQoxFy?J%FeoeG8t0=YGBGS&s+*?GJFhtT$?8J1~;@?03)V zKeO@i0Wu%h83+x@$;y~Z$cN-agsl|VFw4;B8TRJ3R;Spmg~i3Nc%%acQ|b}h<~}f; zBI{%8JMguKS1Vkk&xznS3?1D|y&&`8sKVjp!2_P6WEXt&1^D<2@B?JIup}s*vEkAG zWyglk`Y$`SgZ~O+3r4&q6;*<^L_ieCU>ZtekHKpe%(5{^j|w^VTp1fdK2U;-DjXw< zVRy{(Zl|A!P_eOs>2+JDF}=uph#XH;bX28?^5vWd$%rJ9rHF#UF|+FtPyqFIBx0Lh z(tU;jqgJ-C!$|GuArZ{7y`H~$|NXnWkJ2sGIbR*3>116`yeXX-l}lIvH7exdxTdM*=h^BS{>!C9D8Weq1x2Wc zq#0qc7&VVv!}7A4@xCfJ;mcj9YR!eKkZ?>+>)z#0Yu>E~21u_iMV$z&RIY=SIiBQG zdciyxSa%2$lGtF~DP^5rR>A}yodMOZvIK`v0aiKS@>R{b25T~1Ra{s@0{gVyJh#AJ z&985v4p3iN2B^uW*BntVBFFo(X50WDCThNf131t(o^Uy6sENK zRgw_svPCr4Ygc=jo`+!hbKvM)Ba)AEX-eqZr^e>Vz_)%44SxbivkNJyOqe-*x_KyL zCcst7%(=~Duc#j&eS=A-u)8l!!RT5Qb9W~*m^F^BgNzF}ee-R)$ma0z;GYJ?Lv^k5 z=*P(3&~!2q8(JN{ANxwjyK*ie|LM{)9nu^)Vm?&!xG*M> z{`lP;sOMM=%Ip@q$lVce&9Ke0q!0Ja>X@2&E0~$a)n?uhl%!mSc=?~1($ADCs;{~{ zf4!aDY+&j?yGB2yvkAjd(m#!$e=5jL<-jks41BqO-j}cv!nI*La52Jgr!x5JDW)G7 z9So|LMq8}2gbP`EoKml;Q1=QMdDtZ@#;K`++&q`!3s*S}7+(DO*Ov z4@)gxIM3h_E3FC@CYGIlKtvE^1Vm)dP{Tin3T8i~>#ex~G zCybW9jquF^aIfiXiJm(WDm=|n71v!-torDsFmHfQfz!$f0=M?~mxL?(0ScahNQmJS z!P3UhC+=2AMQx+VManQKa!VF+M;DF4PRFO{bcdF5IrsD|lqw?@j=IsYdkP~@ei5-|LTO}MVj^nK zoscilfdjt4*RU|_uP7b^TT6Dz0$0hD1xy*-cTr!?38e!0^lpNa>u-0fyB|N?-@SbE z*SpU@S(Hu&zPYc!7yw;q6dnWC#68bH{pG{Q`vJ3Q8}A?qilsstW9=71*{~z9oZ!$v z>0}gkNe#}$5Rsva&FSX6tq&3+&D3qU z=AM>*jfzUZb={J*rACvGjiW9KPcyYoft%@@(1p(5#KPE->?j|9sh4`Ho z;|C|4)gb>gT9yLNF&FM^Je`B}p_>47=^I3^K*cej=Ape<9D3`Q-!N_EAfIu5CGUJU z)w$n4t)+IfGLhf;#eDiYsWx12?SQpfHWf;b?|f;QA>Z=m_W&>vI!CRFopl)G&C`L2 z*V5!~7WEL8T0a$S&kWSa(#~YkLKwE{4bwvH7Bb!tpBT~Yv^F2wG8***jXZcc1efcg zB}@VRf@>Hnj4*@{EjnoDD>fG{N*Uin3ZYHyCgmLhy$rC0hgI$AL%)>fySXSmor=#d zD#N4NdlnJE+iO5>-HXaaG!<|c)5swAHr$b%EPt#F)k0E&>J2lW`cIw#xz0Qdzo{5$)N=q>`+i4}0ms_E*!>|A4)8_4We?_|F zivb{e8H0w+QOU@3{fQEv{x3ixEHJMUp)i~&F?TEPqVO~rw_VPLGz3o<1 zcA!}Lb#YEtaF)1H562bf#^rN>IRFazF5p$X1KTS^OZIOAqoBFvENG^|AM4d{ibiJU!c-6mEoUY6M*6l+86^Op|k4RvWM{m|!^ z$e`kj&*KYmH}eJZ6S_`dsF$tgL$D3=YlMk)cS-@&%UEv(M>{Mg(BwglLyg{=Zu^k+ zcYzF}eEM5ol5%O>HO4p=3~IL>uK;GGF~d=~#zjjD#w;NS;YFcrq`(=KwX;XJ?s#YY z-2vPix|iaGY=pMoPhM||U~rr&^0R$b#LWyc6$E;h5I-TPQj<@GHg6Vz@FP1VD zkYq>@ETysJ{L?Qx<@+JKoLf)+$P7-*XG5aTY0?d#au5;0FoW}>!3h6h|F{#HHGU^Yp%ckb0Z6gh!NyH~~h7uebd zHuQ$ozc|Z_TY!@_Oo~0v9tIOU#5KBUA2Cmoa%Z9Xf@RF1Y=C*DNCjya)C8zS>wt;m z={NNnRX28m3C>IP_#M5yM&Kk|rQ@|)S1RCY1sC^`8pO`*-aeX2$0Qsz^!kNPOxWg4 zAu^GC16|c@B?srpzEHima=ji}$R}f&A#JUh-X^QD@*|Z=7@=H7{eY>I<}hnD_O;No z;&Vs8i0VyE4O1c=L_K9WFJ5nvqg05%Q475J>Fm`2(l4^&K#YyC0r=_)YHdts!JQ_D zk(6k>TTi^`qk)=609EmDH1Tg&&gTmnELg6TiFH>p?PEJES=!)qh4cG#kbmkS+E|fq z0x!4ZgGQONR=QS*7wYO7AQcudm7#FMr!uvR@^d*n@g!~DJ!**_xSfY#g9!d!hBT6R zm-XgW9p*TTQVF2Bv`>)`q;IW~6zfV@7x&nD^2g=Mob^hWvm5a1n4GL$IH#a`2Up)f zcLZ~iyP8?0z~nCySM5^@_sYRu%0%F9Jf#lNs0C{w^W;N@n-!vmt}iV#ore=_^t(b_ zx5cDUX%{oX2C1Z0gX7f!+s4BrG zqzgClHZ;l(_kammgOn86L2bL{D_(w<-uBUr|oAcVy@)`8fGqOYN zP-YTaSQ7)_yevy__^VbP#NMOga0iQ-fN9JNS^j87a4%ovLnYe`2}`lh4H!_Gn~a;udNbSFeCnkwPR#5ep~N#|B|_Rr*Hl zwMAIflXX|S^;dbQ@@~vKH#}WEqQ-L}t6=J>Nm`TB0yAZFnYd*v5!7vnY0A#~l?5dM z{X0zDe+`T8cJN8%2?yW(<;}+`qOP=p6=({rnkIJ0R~O8jYbjydaT5?J-4xr2|FZar z!V0hvbZkGAbD_V3f2J9vFBj{4NV}5`u4(+NPCmIvC`*!IC(m&E4L!b^-BiOgKXKFq z*J>Y3Orji->u@Eu)#ti}`ea{N&X)xZCCNw3^-;aMHNku|q-QXb!j>-EZ)w-(8D0T( zOSMH~y(qsC05)CKQc*A=NijBq$g8i0Q2u zl7R?qq_A>DJ;VxGVjPVyDiI=QIGWIiwN)(`)oKjAHX!<9A*gvYhF?UqL>P4JdRlgO za`uFGPqnLb(p;_$ZRnK>?V=H9pN?dk@U_+p6D*IxRN3H7w zjp9BjWW#s>+F`=%qpgOcg;wis1&|MVX>-8R4PVTuHX1)mN!1SN10s7I)H41tz*=k*{h!3?EH$*ii~K0rNQ5L&(|dX)l>du-x6u zZa5-(J}bf0U9>WLbWkIcNfAhPWD@Py8JYW30pr3k>d*92Nsni|vEJ2%=E#Rjl+Z3? z^_#ziE`K^J;fs8q?-<11#N~wdQ+{DZ|vA0y>6t zutOEe;Z`s^0{kRt*TOd|=L0Tj{(M$K?@yr9KqP*9ra17~`Im1U)|ge^B_0qNnt$nq z1r;z&+0meTNeiA(fM&8WnehEWF_cVeF-@3>;~gKuS*l=uP!@bb%j5g0C}A+9ix9z5 zG;6+)Fcc1FRL_p2z(s?aTNj#wP3gtN49v4+TQ#hs-dbFJoqo|O1<&8_Km6|j!xtc^ z-4E`6{ORM}4`9$at55#O#5O4z8Om|}y}mhtV3^i2us^DX$uX(~rrUmBJQ#1W*CC?S z1IRz~01JEg9GandOX3RmzVj1!WzzqQ+jpWC4q4pOc=ri!O-Kq}DO#F%MGMVAkr3RJ z>Skgd5poOr?356M@F=w&eiEQ$|A{v=4x`Th9*knZ^0JtiV8{!$sE}*GNnR|@5Vki% z5VtdrCMv_#MjsI^4ZEWU!8>sVLP1Eyw4Ixw4zc<7Yk8%rJJhFEQ`t6$C5*=E)0fn4 z;cunrg=9D2Zy98f>=!mQaI~)e!hv}I7#prfH?Mi6HjXzF0qrkd#wln-4<^#-bO@2J zK2;l_rqq}!Xv3pME`Mrz3bJ6F0S*h;{FJgg4G&vtvl(zxtJ=^U|C~!e_Y56nx z#`U4EU}&B%Q7C>T3RgP-7j(h+-f$KU@)@{}Z^J22S(yqh6!sdxYu;?{)*? zcDuz+-u^R%+wJ}KFOEg-j38eyC|sC@#Z|`-$)!>scRJ`WXSx}1>G1yrrw|Rt${U-W zTq=Z!ieQ6XTE;F=i-UbKTS5K6+*MMdEAiK6L=E^g1u;}TpsZbY+Ij~kBW}c&Ob%Wc z8Yz|{2Gh-5DE&Uj2RpI7mG&PtZ(42Wu3!?^xIR59h;So{MI+CfOezfS#c#txJSP(P z9dOjSCAhY=XR&ZkwrKfuRv1#8wEPMXKJyL|Aq06&-a+(N5B$Jf;3t$(#odEUW;-xD z-dv6A`eiBUbTYGw-^J3rzuOBMvZk^y;CjM{@{0N~TuGVnAlOhC!uJ3vFaCtTSx8Zr zuo5}OsLDH=FKZ1*P3AXOmTGT?dbV;B=6i}QxTBLEpoQ=}O|A)umPRW$6crNXdpV;F zG^{u!3!LMRcu1YtHRwgGIBVuw$)vzpfB)yOuwqq=pKZK+T=g6N=OoO;5T^FruFof< z!>8N%+xKrj{YCmB?XBuEkYUa04gI*#fJKY7?TuFccdblolZG&tdcJ9bExV;{z#xM6}V)_uu+h%TBk8b*9u)!5+!u zkle@ZP4n&&qSxkSS-osK*D!S_qLE-t$E-Zd<53wtvc5&CeUsV>RXlRB$@9)JS^i?NhwYEEARzqMZOYy#S~i zLTcV1ipr$#h%hrlsD>HUUy@5*sjthx{J^w^E{W&15YrecP^j7U(tQnZ)}yhQVZF@( z5L5*dO}(>eJ*DiT5(MfmD13ir-Yrey3D1g?=a+_8%IdB`dl;WbF-J@9x1BcP35pX; z)+#fQOA}y@^KmA{QpIPwbu2aYK)$eW?5jyw1I+8>%anZEME0cnd83eI4>1 z#@Ldb8YaZlWV(9K<6okcmR0G6XKSEDy+26}GAwP2sNd!KKQcj?32(*55~3$aDK?$n zFycl8>lNcKmQRjv&Yv3+x+6x(WI;CL#FmrE6}i4y!NnvT@N(0=>&os5YYQj5FZG0B zz}@v8?gWE4A}1zh*}b2 zSby2kCx6k|D>!ItzjDnA5nZC(0=@{ac8doA*w_o0vcX=Mbt2+y@)jX-_4L5K_-?In zP9utl17Bo2i-NnSA;;cgmK#;niYZ4RZDPAQa+vhFrv}gSfGOtgls?XjF#uyC1l)` zoMQ-`wvjAX@i;|<6lqBi){u`-PyQT<(-q!Sv^5CZNwgH2GbCMVr6VCg9_^rQ)DXj= z$EvN?YGOJn-6Tz~DygRXp8Rp~{?q-N_ut*Y?R_=;{Q!d9!}V}i!>=_;F2!<&goQgR zT2wYA7XzI^*dLYRLz0k7)Mh9|z zDL>k6ituQy4?gXn4Ai5|UH5of(FBt^GDtlQgTO?)&zCTCw#*kafQri*wkLTDP1BX@ z(>VJ`oc(zB>GQjL^XDOxo-68D2CK44kDPu$Q-49}9eCTpeyGyBaaWa>^%&6=%8*r+ z_xTNEkU2(0XFcp2-Ty0Z--n8tlor8ZuI&}g-v1rMyo*(-rygHH8CK~XO>Fjm`8{Wvnt`5B!IH0=*>K9GUVWh^q?2*Qp;q|6NFAz3f89 z`0RrEyHVYVusoc?&W?{ZPZrVXaM5?wKV3>du&7nlCsNbzF0^VZ`xP8%a}T&rz}M+! z375?5JP13y%ali+%vn=!Wx=MSPGAbBz5r_K-3EHRQx@U8Hcyn@w5jBWOt8n~hrkwTqcg;>K7u;+5)u025o7UWZxTU}A%;!R8ghfZIR#5HF z^PseTy{mIS@0`B+^w?)&LdhV})s7cVLdrGiZv{TkS zV-pJdU^u5$m-J~osw}pLmH#;NMbkb$juM?wt}euB6*Rs)qcSxA5<1l9kq2bzY^nn? zMXY4vN~rBfRze)5*PF}nXg>TIAy&{OnhIj}if+OXXORbGH@WG78nLm1G|rc3<$0j3 zR-OS+byX~?KCpoL5HX+6cCtxbAO>Eh{g^Mo{M}mqBqaMsxk2Q&o<3S^F1HsrHBbKK z9=X82vyu2TwJ?oC#~(TQLisqg5@Ea?%&1i ztf(m|H*}?iE0e#3EK0^sYiSUORi40sV>in8foy`;M=|pNJy5{%fE1Mr$CHnd6 zZ)ZPUef|-WT&E+us1Jo)@8&`tjpFHX6#*}j9L6jdb6y>HNd! zE97?m>JJ~kqK^k|Wa8bg7HH`;Uk|=Ah@LUfQ_u-+fsrrCJ;D-m@8rYie*)?wcnYEH z;u+G@D|bAI!~B6fvjG-z(XMcD{ZhE)zw@4PG#J%hRFfGD13Tg;J1~$M(kizRdzmqO z#2C&zp&T>dj{4qXZFu7zl|*I>1J2*Gch#M4tBA)eH<{C@EE&tUY7^!xQ8-3R^6 zkF6lg0BT)->EQqSL;V=2YyYk1DWhNalo6kj=4014&`cTQU=9UQHOtJWoC>MEdG)xi zVp9+^Q%gaYQibE?s~O>Z7lhh{`h!BzSBI^+7o4k9qNQh%TDH2u^OZ5PRx7EBu{gHl z%PiWXA;6W8HZ06z>!e0(?UZb!~n)Ii}iH)0j_h71=})a%cT zu_mNKnrABL!Y>lEJFc7bP`gdWZ9LlCxXl~FNYLcD$*O;l1ST%C6O;4-QBV3-iEP&> z`&&qGYHE6yQ`LpT_Gf-%ad3XgPE8uY2w`XyX+)8^nNH9Y@8MDVWlbsW?bVawdasrg z*P|v-JY9z|t|MErEuzsNx5Z@AWNTmOy+j>NE#$Gk-f#q?XKE4j;|oN(-9YqO7?Xx( z(Mh@Nl<`^SU5k9Y6x-h8@y{FSYmt%?gd-f%4Eqsx-WT@h?Y53wWPT+cyM z@b?^NZd&xDizY2>x@hb|9t+^|L3u-ivNH(tBOP!m_MI>I(4mMov2lkXz85YJvXt3w z*q7OE*mK}lu z&9$0;S2bh?n%bBRC_eth2k1If4aODVHQURZ3$P38i^(l&p44r7qN@%{!xiVbFn%BO zCWmV}rX9^fg|&XSoJk)&pk3a$g-QvV9%K+>*>;W1N2?&RkLYg z=o0cSu)@(ndCF*=wT@0?db0>8m|l-P&qLivDnjBfzyV^(m6TC`%Tn&Yu*=n%U2Mbp zPVa&Hrv!sHG=IseA{mDYgA1K3=v0=sRk-b(%`ewr;$xbJhnVI*eqqpeQM2I;`ju-A z@W#=@RioJh8`zl+^E;yt!}CYJFA+cnd*`T}K(s=$f{q**sa5T^lQ z6PG|`l!u1llcfih<4-!A`&_KtYryYM9Q$=tOF2&aQ58c%0qc z&)&cJ_T3%G`T;?BoChZI z&H5Uh=Vbz(fmVgnuj4U(e9a++dsM<>0{tR0*j`Y*(dPDdJ`ZZMRJ+LOSlGBmye z)GcBilwrXl{K2AhFKIF9qF>~jTpTN-M{$K2C~-1dv0vBj4aUA8hHS07XNibzv$abS zi7G-7=Zo1e4yx_d!t`ZkkVay`U2!%g$VO>o5xUBnWEY#r^q9V{T#8EUv#*T0Czy}r zB5*w^6#lgUn{qB9 zhT0DdQ@L=uQ+TG~SnQt~TeywW|F-&34CwrBEdO4}$DdMqc8oqqf7&Wm-V7(j<#^x}BJmykBmXQvDLq?wbtd-Ot zNUkz9lrsjxR+DZK3{5(A_Gy>O#}1T6U>rS2ZdWI*ODGD*(0MY`G0~p;p3|!o(m{ipBQ&!W1g6^s!T%#Am-6j<44>B&cAd_hM0lL0bu=%9@{NOnd?tDtw98B<$wQA5-J*bv_Jnb=fy z#SL{eAlAw1X_OT=`ryubm{;R4v=d}QiCHWamcI^!#ds0uGeH-@+WL}=9W5HD)&noy z&JeEyN5V6?3PnSot2>PRRf^YYn%bprfO?G{WCs!KELAJN$Sg;_XIOyrFfjs^4q9~6 zaK8cS2D5`g49xrihpU~O%V_T zDtM}(pI>y_&UhaTTq{u6$BKbaBQQu|wBtxxNC1$z)#!$3iwK zPaQ+=dwF$jQG;ewc3T>s(GD&^>MSd(%&4msY7HWHb*+2z&(S_Bb*Ux?PIs6DNt-H| zFLgoDwLlP>u2_Bst6hL1Pna&rfaRSZpz8fSh+!NOU=0Y8W7wu$<5i|pK&67z#$P~-k2ugT? zVi>o_Wi=iY=y_^qd&IBz9$FcwFV{ilVc4x+wT7v?u@7A-~yU@vaKg6>ccHz3>do{q2`rglk!X_&s1i%jRxM5eGBvrdftq=}Yx zys)0fP3R9`4^Ix9ZUOD@qxTw3H3w6AQ^;K%hNSNF^wZ7P~*gZ2*tuQp_(BOR{qyqIYQmJ22#aOE7?KO5G({XQRSK2*&fXTY_Y#f`zS=3@G;MD#?#2(BbazX!_yf-Ra%8pMQX` z%d&^Ja9&sRo_Nq_p;~aQe2J35ci|kiy&cK1dkw@HsL}f|0KLQuq#meRc^|m)KX!R) z<{sw$HS*Lh(GpwB;=)LIKCDc{1HS}fQ`)~d;dWD6-x{TJoJB998S}3OwxFd&C=jd-qWsYh28!2}N!!a!Zj~ z^ozF=DiLkAzlBzbC)*m+0zPK~M}qK1r}@_yrb=%L?!DRCL)xc70ib2`XplIOY`(;N z_keL%_zUswlA+|r#%)PR<8MuY?siIMBMj z63wAm=wdeQ5HQlC3=@G6i3-bgZ|<@TOgF47tvS4Uw z*eE!Rz%Lr9G}WA)y{%ZDV0t1wx*?Vy3Yoh0f(G=62?w2g!s!F#b7yAA0<0H>J{s@H z0qc#f+F<3l9`rPHSv(U^8-J9n zFt|AhJXEgj)(m!ll}PT!J0Uk}RXu=+^q*JtpM zhySm_jNL^XXMDJb+Y>9c*tlY&=MXO}>LAx<^n;TkNDma}07Mzf=9W{mn17REn6M)} zg_KW;m=OJ&a=4l!;aj*6Cb_jP_s;M=;ZcSJmjkyYp;=u$9@1L?p@N^rzAW z!I=iT293}CW6zzHQ|^ui$s^7@3_8X#!}kOfZrM`n?7h23H2qI+KHm8%>moELO#T3? zS#ipXz(MVl{R+!-p0in<^O|0}hdI)4$_uu;!Gz4c(ngc=yywU(171K?^89G-2*_ z%x9sJaEj>se6(~o9dr>gjDmX8#r4fv>*WM@P{3{gvusulG+Jv>U4@r;x4=I8(e(`nV0VD*CSX4ZNd^ZWmgS zVH%TR!luc;DZ;1nnC&P1XV&SJYckbO|DWj#=l`fO9lo^S+@65lZT1gj54hA+DTUar~*Z?3{ z3Gw}|(_(M-flXg*kgtcyoJ( zrj5v$w4_utF`-zv{}q0KeLjIM;74{*epI1YG3uXy`71np0tivxVAR%Ku^d}CJhC&M zXhP@`r5Th-nmKiOV>I&2+Bwh~!S#{=X-rhSyCwu)9<5VP3$@S4@|{k0rv5mCO4dFo z)^JxRJ;G)O5mgqKE3L$AncDd?+_NefvW#P~vfQPRzi!b&M}t?Fb-WOJ{eV-4X=NYi zpkZY<3VLWxFII;8+RJcTC5fYA>+%iKFMZsu@BY{4yZ85R-@Mzd?!LQwi@3yvh4I&& z3aANbf5Tnt51&7NcemYqeEY)>&`^`PRU$x_ok*rkg}+^h|vJGsEez~^T*dIY?M&L||OB5=vfzmwoyCW?^>~ zF;+;o*@y=r!;xAkn_QN}Dr>SWJp)n8nA))70svd;e zRTp^nQABB3oI&RPdf{%ZC`3>o&53;~k8mQtVj{Q5YN=X)EsNdX!{`Rdx&;@&t)hqe zC78Nvf#LiPX>@g9eg@If9N@gJa>>DilS$;x%i!xwghCVb@;%rpQtB?9D!XU|+HiE8 zosQ0I4zg+2&$52LD*^QwowR`n$aPSVrd5OqtyfIjDsnB3$GjLpT6z_%QQJl0mg9^0 z*7fqt0rJt1M7d>7k*E*a=Bx+ibv?UkYP?WTYK z@CU=?$Af=To+KC8%wcP*TW(kM^51}t{g1NC>Dy0?if;NiUG>Ne7h$4R;9q5uu_1sT zUoWmue)jZ?4#wd#&J*p)A9;vp)G03vmw~ z^b+&BJtV#)!f;sA2|I|$qK1aCl_YAI29x<~(hvv*V5KYHt=!#_yI)y_S{<5h<{exQ1pTK%)O4|Drr}*R* zlQK4!kP$`GKe>Z$K+J81Wes*}ce{>8aynAvq zACIa-!2?bFh!Dqx$+OJlsKCRTMSZEs`Bl(mBVPFhgn#*$?ZcIguKzX2KA6n1XKEak zfvGxIY`TZN++Kp|IZ;drF0G3bL|tE9LVItT3T_UW!K`?y`DiP5@YeDJhp1{0Bcuu9 z=cuu|KENamx!4Z&$KMs)wtp2BImR1N?{+$yY74^O)T2|L;wsm(a3Fiyd$gAwY((p! zJUIGaoq?L1Evj{&Zf`-X5eedTlROs=l$)jIGnUB0NTubp5pwBH7s$GGff`2>luo@+ z*ZPu;%<_E|CX)OF8XUofW0Nr%&FqDq(O&d9(K)K4gX&V)Mxi^z!D4lrS%b}vnWc)t z*RXI@8$knm1&na>1$RF=$uN&GmZM&`7MfAic)qr}F;}^{*(OX`SExpXDhZ~6 z+fGOp7BWo1LY*Put!uglxm#&&>GE80gYTG%Lvut-&o>q=dm7m8*~z47@IgkJ6{%tR zFs-Z^xH=11!_-}JL=ox|FK|MQqoUKJU3im^6SBCQLr1K34Kp7%xj>X4V$2}eTwj3( zt)FkNKD@uvtNLIF)N|r*i&$l8%?vxZg^~D(#AKR$CA z>F>v>1k;?TyUUA4p1dK{7g@;6*eJ3%^j=?Y4-0w*?v^Q6U35m!2%I=JWtvupFej@X z$C1zow6~655?YEDl5nM-j-Zi+E8kLf3Q?!mzj(jvU%Zd4fN_s@J3RD2btq()>z#DZ zJhH=;C%CF^0wu}}P)p!HERd-@Y)9kW(3Hao3bt@4x{Hf)f`U;VYHo1nnCAx^r2D|8 z3U;8saOGf%#2KiSS6+pxayhwB;w(DR;J0v%dqN@v z%xOh75N(d0>$;~r64GXNE~jHuU-B*LQ)BnhkKIjp6dlu#j24D9;RW zg23NV1PeZ`@afF5hE7ZxDXjH**P6orNs4;x=pPJsh^`rCH=ayB~^ z)?_ew+!s{h$A;h8=W=$sxVijdxBo-jyFa&aWND)MQ?R=c9aN7!Lx7YhZO?du#6yHd z5-Y=;mNP2Y&-hkQXMtS$M5EyNAnVu!tXRIyZb z&E>`U*F;hZonxv=gp;iT9|!?q!CyC@c~^X#cj1tE9o;L`R?U8 zq|U`0RV%P{9chdT6#2Q~4btzCC`iPq7#7bIq=nqe6}Q^$vLRni>VAB=pV%W9X9uIz zI-=~tj)4?mz*Dcl+x5S`!s-_BR4H8@xE8j+>fCx*;h+>)V70r+k`wnlik4PZD6fQ~ z!l9tOFyD;Nblz)*4=~*!=9-Yr4UoZlFHS0PkvWY(lA`NK)Uo#8#POvIf_*|$f|--9 z#F3Zf`{7K$6!$9u!UH`FTY1|1LAk!b>V%oR6>0RNr3v#mF_2oA2;0SNK=om+Y=E14 z+g%5z0(ArZf4wLj=|ydVvc6cX_xL~S5Nna#y~|cCe7*1rvo*@xzI};eYe)Y96OxGNh2)m6(O-r9oJfZvh5%4-xT(FbP=C7!}f}{#h zFwt~{O3@dDuj=ajy-r)P0qBT6pvP*qh9Bj|KbTLEr2k?Xj}$M1c%=eur*=hR$n_;} zlJiqZI5M$WeRO+KP9@d!$rGq)xotE*P{&)0r^XnLPqsOdD?4ZBl6V1FWo&aLha@?f z^P24{!-}Z)tvwbk?E+nK`=x=sA!zyrPX!GX9%kezXRj^f;uiyRf7K}Gpp360p zOLZXfM#Qo+^9E9F)E)R33K@%B%=NAdG7y z_YbA6spi^iR=3b}5>{*wW!F=+K^}bf5bf6@^cjI-7&=k08o(w&pcigxZB)RXC@IbA zs0uX7p_D-Q60PT!78Pc=hJsk)$(#vB zK1_Gpo;=xw>IC{i@ujYkD`W9+RBoCs=N6#)i13-PqZ2JVJ6Po~MU4BJ`3ln0=)-M( zJjb8sEb~CEB)oQl%yOTD^2Rid&?}D9SV0_;Nwl zY3`UPMNtmvlaT*I)J+?QC$$IH8@QDp2Mf+0BfhtHRm0>ggsUucpHzFSuMjane7U}O zqNoKH$}9j}EaB6;S0(DzQ8RDbivO38m|~SFS>zyn3?I@)6*=VZ%k00=8x7W4$1yT`HD8-U1V#v!If_kRLRu6j}v$*&Uru+Qt`H)LGfl)fDwQ`2FeFasD$@F9F_NFQL&tkkYLW)FEJ!y4}`vfc{&P?Uj#K zH_uQ6?3pb1Z80Q=m=42oe!4b&Lhm)QiI%ns%8L%y;fw}jG#ej0k*Ut73MDzqB|P}h z0*ql%Ma>*}+dB$xCgs{(dVFVhKowB|;~R!GOjVki0_Sv1P%k3RkO=Kg|4im`wY_C7 z7yrkX%`Jc2BlGoH$TIDkc7Sz^u4#2Qs%UA1{4PucWBV3zS&fFEJkR4}`b1tLB_2c* zW@MT}@N#l#!WWYV7^@j+1i*EspZRxlD~h|7ZVcK%!0p4)S6_|J$e=c$;{`y)b&j;x zcM8oe{O+Q)PS<&C-G%e=Vt`F8yGP698Np6WJc*X3p<)5r@W@AE3dByD@X5>^(Zuk{ zU_%Ved^a+42w5O!3leWAl}G;u8T1OP9=Gr+ZnE3A8_W=xSL@jMS&Zdjk)^iDPoFV0@qltD{Tyf<0|hGBz7$Tn>Pr zDILrJmEBrPeibj~i2mda8LWHkWRgb#qoOU$A8PsH?Xf@iKfn3kcl(d~ztHIvi0pLO zovs7PBqs8<^PxnfeN#>8QO5-~@fws*IrBVap2q9f%SR)IN(^NVGNFBqejL}!B`joC z0wpYX;uTEH@-gO=C8tgUYo_N@V^`da7oU*VAwU{ZN2@$Jd1`uPFVVOyL`_0)=ucm}nPojl{GTduZFwF1lS5t=h(nu1jra@&Gh z;+;)o=i-B`(s+EjTRnY593zf(u@FZsBpj*`A^_kUk}3p=1V+G@nTpB%!o$_SG<95s z6wC#B;;uW<^5abV@F5nZ2TL3raW{EgYWr5V;4x)5A_1~I0cE2Zs)cOy1u2N4%eODL zh5m%}>jYoq9|9jg&%U_?mAbBxGzy4C`x88~S>8rRD(=+TIMvhsVt8knCuS%$PrwK; z<2XZLiIdzx$%c`DzHheYOV~~had$nS$;q%ED^;ku%@rGtgycb(HZ*M0o<>!XgN{Ci zT<=DYJd&2u!1=|>McATFG(Q~sZV)~yZn;P35VwItTwr5AFBzn-W`eJ))oOhKw-!fU zp5TL`pcn25XO3V7-LxeR8DwyJx{dcZ?-uN!1Jk)|b7f&TV{9`VEaekETql_wv6icK zQKEL39DY~?>$|+^K_;e`t5|^*-x5OT*L*O27UmB)T!Z>xla1j{m zf-TWkk%4(H4#$u3@sP8O%X;dh^}vX@Oq=<7zFR6hKqA<03K_(W$P=bHceUMM2uy+L zg~S#VR9K!0@%(dSF700up5TLbv)wTSr)Rs^T8SE0n0*P@a0V96Z=Ovhl1D=i<44X@ z0NQjq78{g<&u}d;AzVnL=!Z`kijD0+d|xtSM_iVJv;0WRV!$90$-v=yGIV!6lJl3( z${M8);%OB~-&5ROueT_g0Dmc59l_nA8?8jbM9@Escpxd-s{_;x&^Mp=9TH;3upNfLz7X2q zHfSAw)>BW{kPf0#uYjAz`s?qLT&tkKeAAjLYV7X5(b9I=?|*vz{lDG)fKk5w`0>M= z?>>FJ+wUn#*mcNs4G!u#Lh)VhEM^MO#__G|{a~^c*7yQbtx2nbh!Ml!cd@4xjuBz6=>PebLUAGnQDl7ESF5QMB48#BAvjxNt0_FM$(_M@5PP@(BmI{AB|Wlj{}(tS;G)2 zfsUWQ_-_6avLq7qhIBppBP8<7xwGHHFTb*9;(TRT-2TTAoX-J+=5qAM5%RuzE>d30 z{q-zdQ}os?*(3=0^X;&J)dC*itic`0h>+&IwvCMd*86(C>MNg(-!DMT9j}2`rql0Z zrtGY>dm4!P^5jO@*Kim&_qC>c1SeipLw>F`T20fh?9Nn?FeUBmcIP40rPgEv(p$^p zq~g0z0jzuR@jb;|0_c&pVa)oTb_|IE4h-;q*6X0*IN)kc1`e95L1pUzRJ^TE1veY> ztvm|la%t7;dJmTrlm*$ss6*-|n>Pr)0vks4CGKHPq2B?bZFtuQ)rn&EY*(y=e!MzB zo2%gfQ^1(c-#89gxG{TJA*+LJc-R}lDnuW387f6y8#{`xvGfm|rs7&)&Lcp&p-?{9 z$Jh?T*~uj7D|&k<6)^$&%KJ81n?#&Wz+}+yPm23c)1p3v@xlPy(X8RzA{WEn(lwyL z%nXk`nFy*1o$TM~?+$-%R5ZagWHAIPy1BewU(Hd;mzf}SedBcen6&=)1$(^1%?})q&^}fkURWy^L>$NOScS^coO$I3fWnIYK zvy0os@c>~+U7T=;ayd*D(>SxDCvK za5NpQ-I7H2)p9oC^p%#@$F?UIAG|SwgrMetLj`_uAB4AnJ0=$vAo00giepk(olw`i zlwKA*7z||Fv={}O7)nKk(M=yWs4^{bpOza2V;Hkw!D8IqO;!i_H0V_ax`?SJcjZBq z47s}fY5j&}xtFW!QG|}$pv>eR9$(SY#Mz+1;w>(Qv(~!bo`-JO0*Q#z25nk8Efgq7 zXbwylbr}9Ym}+wcML@|{X(3Y3jc1tV$(EKWj^6RF4sz*0eP*$2v4UZvT@5 z*H1$*@dFUzO=;>|Yzj3E$a=Bbe7lFQrym73b$5W_eCrhq-0vx39>%6$(FQkTMMSqp zORqJ#1z1k1Phxrf7Hk1aH{75%($^BXF!@D$5fw&fcYpS?555o1CBtVwV7^0%=eQEd zFcrG%K z%83w*ksbqvjlT1|p&oi7_C7hk)ytbOfsT=8Z3btBEp|CXtlIbkNCpFe7E|iFXb|L7 z@W~i00_|5Dh6=Ys(2F05&CTef26twLiGhQ@0Q+5H@ z17`;NQCEji=@E(*=G3aWOUYm)3hac8~*swiZ-|f`V zvLhtb3}*p3l<+sVR`t3P-3d25_w=-&c$fU#xH2RZI!Mb~=aCuqV8X<^Zr4`Ai1C*; z#}yzMwb-^EH%fTDIgDen>m_%X-L~glAa594*FZc|0MyGxfEZd3pqYU#noQ5T7aRM` zv@7CxFpCIauotbTo7I{&gz6d(V~?)Nv`{V^l8h8x*+_25yle%-ozoTRWNpK}h?|}n z9k9jE;i1~SjL9~LANJJ+$PRd~k)7>mYBN|Oy~}&NqllV%aOp}cbP!%Rzn;=#bN8c{ zLa<-IsTRVYMsNO%Q@#Ji@A-op!Xmev63P-G{KqKg7U}Wde;WNC{O^~)AaBnR%oJjk zu+81RX$PSC9Xjb&&M@e`h-s4kd?KAK_F&^-TCZwS?-3ha2s$Gs1B)WQJny@n0C1p( z?GbnObK_pLGzL2BEwLFdkZA50uH4!x6MZb+9I8RR8p`!fyZs8e*hw#;UrsOj;X<8$ zI(?$`W_L2fo^(m|1T6}zc8^#{j-uPWz-o7sAtKdcwDbwE(nYrP4bn6gi`(#ZaqylD zK*xA{b&i{^AVgt`$R1>%UAA>_$0b*a%CIJiUKk%w6Ch_SPKh~pMSmLTv;rsLWP^+s zLtZwg@GGImr8-OOjX)Y(z;vlWGF|>hgL4EV{L<`k3#7#XIIki*_RRCm9%Y&LvzO;4 z5wIaArcPlc5oW}dc(OiN#zrL7xH7Jn@CnY^Kc*kwefm3XA=BeV*8ON{kp=fGfZY#m zVRg@#lCO!k(X9`H>B8~p`uQ~=JxY8#NC14_ii3?yunkC^1MPrSK>`B9I*~R)RmYLi z(yo#iyR-m%=_)ysp;15C!-R?hMV6flth~B-Z@~TKxe|oY*#LiFAKXsgQ6mH!5d=UG z$7|S_Nknk7`H*wJ%zlMN^x*d{ajQL3Y8em7h~JFG;4Fk|c37JBYKfA#hpV*?@YqT^wMg! z2-IFT)Z^r;D^O_T7nr`3Z%FzHq_tbUTi?C=q3n5NH0Yq**z$zv8G5Yee;JH3EU?<$ zM$yE|n_$T=rLYBtNqoG*YO-q*rGV;Gk|EV;N#a22hKC~M(_db{dw2I1A#49CgQgz8 zn~&u&`1d>!h3}guPX6vEo^+mg@^?QGvVAkg)4%(Pk2+6$^mjk;ap#GT@kDM1U#K%v z-O<#&n@>mFb^crEuh0&elH6hfDuO*{QnIioonRmYWN)5)T^m&DRlEi9%L~(Yd!wS+ z?3myNPmBA3Hn>O>J+_S}xZlAUat!Qhh14(_FLgtQKIkB;)&KB^^em$j8?4<+*w3by zbG(6WXt*wIi34y+CKpZh#m+rN=l}^yKo=hi7qBDc{ylVO4L!3kWl}Vs%AvAVG#}_= znr7h;kM61RFPBWq0F& z24^%tnjd|VCCi%l2SiIBAhpanz7HB0i(83Yc%m{T7y9m%@}QFkWK;s@kcoUL+2|FH z_m2EzB;?kMN#TrQo{O=tmZcF_TVE$-nH=F3J1-O*ZgF{L1_`K5ljg)d zE2y=%l00BfVyiOx%BER)g0Df_IOoyOFu3I{!ht3e?D{|_;U3Zf*Ue$urKzb()X4%$ zx1QLNaxus_JZqHkkTJCVNTVU}0~k0_Zjz1)O$o|+x!AXDvW%q|Uc~~_*j?t5=ZMSi z@{}ett%3QofDdH?mSz@jSh>ij~ ze}f$YOni+rzQ_}iFGvZ2;Bkmr^fs4y22E?x$T#^FN$>{WjF}t7;ztEQQX2A z14V}_$S|h)TVwZzM}EJ$>qMLe-UQ>hds|{N?9iIun0ddr$0Cu1qsrz|nJ<*Z5QTJV zArqhWoGa+vKQCJ4zTNT|Mp3U85e?sGlDROoDhGJqUbA|Ey&lqZxaV)3PMhO!3C3L6 zQ86ntJQ+0VXlW#-U(8`AkIle1uLt+BUS@GkyD7tr`JU9aCsn^KPkqzLv`LRH*Z2s< zk*5L~JI?+U@K0c>gf)W^8I6uCY4e#EYrZ63yE zRPaFmXle9B7~sDVcb+`0*zolttwA`_VVp4Bf%t$UQcXpv3y$=+S(%tTw#2xwi(tr- z_v{i?_x=;nbI}`ir+AF@xtcG~B}~m+53!@B&ozVvPgGR}rVqduzy9>$?#DkB zXLj6b(Xa4#{z3~&qZ*x`?SY6i`IFxS&3PML;XM!Dc6$Te|Ln+KiN_R8IF^o|12Y*a zXu@1Zy-;BgcD5NYum#&6KegY5CtR~U7*|zbnmlO4p0B%M zOd~hp6IJw~b|4M0j@{#N%p?O6VJ5bZ`%{Ed*21JgVzR2)h#DjP%IFA7_527Dsj|f0 zT)DgUaJ;xgGu(e# zi)LUkaQa$B#=N|}=I}bUg#yxac8zMpAUgh%1w5ZR_`GKuEg{1QV2FjCz`~QfrCG2! zL5BV+jq)3fo)&i-ceczB4TMP1DvAOVT2uO_(>WkZm6pcWGe?Y9uZ z=KS06UKpKkQY*=cI~3l2l;lLUH34=wx#EnsWCrBr4XaFQpS73pw%}Gc&Q3lUhTjDZ zQ4!3h7H%nvi8?P#p`Z;Ao<4(^r2;iGm_`J1(1g5yr@#I1L@;p=uDi7LT<#s*mIbEn z`#tJ*BH8&pwww0p=(GSI<`9IT2G# z>xe;W*#?B>OkXUcCg^>^N5nJLNoHY@4JP3A=?rlWeQAceMP8=aMe#rMBTiDwAOZmN z(OG^w{WbaR6p`g|K-|sJ1vqC^ZJIj^8bURf8n|qu2;kj*l#l?GL){f3mr_+n!est# z&*V60+AA=9U7TgfMqQ-c0qO=$YSoyxcGuwkk{;Cf{S*z6v7}1@6at!8IZ{^Lc>`oe zq7K<*VkIdoT<1k}NIxJPqU$wu=vjZ?h1Dr=Exl8rXw@T}9SpkzC@?*)B3kVv2phgL zGm^D3$Nw_=za>o#nRVQtnD8b-*%^WfeYVY}97si9Ei}^|ktqR<2zeZ-@RJL_dM z7+f+ZFVw70G`}p>zP)-5u8R*Xt?~%nLe;ESweXm6K0SfzCUxHwUqvar5w25`Xq&{y z^o+I#2Oy1~HXe+PgS|jsyYs8fr5qCRBW8&%lcwwK_0XWmT9VCRUJX4=PG@7y-1u1_ zuRFhfYQ)+Y->2AyR*2-1Wu^w}kZ5G4D-B1IXq6?6pkwShobi}QCoNpqP6y3}oi*$@ zoi&IbWikztGB;#w)&uHc;y{eqb#}xX8e`(;-KU5?Bs?R`FHSYH-pyU{Vs*7c;!Fxo z_vT$0 znzct*rfi0!sV9O3Rzf|fZ;Iph`0;?}_fgM39NoMhLz2M%&`JE^=*v;*+KJv8?Ec3Q zcmgPip)2NDhL-senxlWR%Vtkr()n8@tBTg;7-?EHU+!y`V(=`mX#qcUX2Lwfb$T5$WhAVHF-CsU<6Vq9NVY{KJ%W4> z;?Xlo083^FwkVXD$O=3d8rlWfNpo(*PNFw7db2B^>BW6!nX1nQ#(-d?ux$c@qit`> zM&B+6QeavHiZ!d-WFheVD!fH=(ewD>e9Bp&z{A~ab}iV+yiI?D!HP>gWU%6QAGm&B98e8MM|`?{ zZeS(Y1sbFUb{rp;jysEf-GC-_&pjSQtryr1?85Wy%J~cG7Lzk|%`=ibAI&3umh=Gq z%}$&$(8J^{p#7aHdSi0kVJFelt`OgVv>baSsbrFyTd;OCq3QUJ>bC5`Vv~qeb>E;F zbo-wqCU7yH*$sN`D|%RJ5Uvh!q93h_xZLHWt4h)13(UWO6Lcu}qzBU$7Sk;c?zRNg zn8+N)W}S8WPV!)M){b0|2^AaEA;wXBK|!;pyidS#1FHy1 z#vVR01*jV+-)vq%h0ir)NR_{%%22%?XVyfu*g(%0}H9||O=6(Xzy|X+fTPxT$Z6L8c354D}3Z+gl zD$_vlK z7R~77RiJ-bU~(!89dQ~`pOIB9RvA+m)~wb^T{!x0rIr@Y(+(JD`z<2DZ_aH1KCfMv z-fxp_Qn8ayH^^By3z#YBEG`+w#AiwxVU|$xZQGZsQalFjG6mjbe|0gt8nsO=w`91f z)v|gV)(g4WnIxXKi|dMk3c7ZW!Wg+4(x2+F;?5e8Zp_!f^b)0AH<&MIKxSu|AXO0Z zYj)PDh1pRB4!8szzcf!f`>6+AZ?0a)?s+rRLMX~8TL#JM8tUp|i6 zUwARQE8*G$$L`D76lxZH?F)En?awHSnkyX@0)u_Dsu&s&2ZV6mjnl^%V`N}O#>D^f zTne7Tr9}Wv!ua7@mlo>VqEI%RAvjQ6JiDIW`i))M#~wyQN>F->p>zxjtn7RzagU74 zf=(uvUMBI=dZ*L?3JiCBA*3mb6X!Ofst(H!HygRIWNJzfg*}3cN&wVcSkqZa@C&~? zJ7T)klFdt1c)5ElmR20CTzeR=rb0f@Ilo-aknkCGn3!Kv0ko!+Ib>)&)Wze^u(uG0 zXRa61skaOb!Lh7$g9OKlb1B9(T#KVY_px5*{kco*^`_x|7r(LJ^f&fHH9q;a{n~ry zIM3L)M5+q(Sm66t@Yg_AAspCmZV`fa9Esty^#WtyTZUxp#0XR&l#-8V~Ceyq>Jd)sSbO&%OId6 z>x!<%Xhds?@=Br{Z))L(~+SvSH%NhH8v9 z{X(PAC6naU&MsE)V~{3*71l=+U=UPLB6dN7-lNaV;X3*s|Kl_M+wVo_+ql`DoqeAWun~e$DVY88>l0?At-Ca;sOsRhC zea;GvW7lpu1%vOi<8w3Ep?=U7947-AvO^r~OF$wg6V^H4(E7IT&e;1MT-%vlyZbeY zkL!2JD;5$SoXYUG)YUM_va7EWjh2w=r-Tpf56^y7;3;LL(n7`L!NQ93mKn z3D|*fs;fTsp${HZq*S0@PB|s#-;?6dooY~p5;ifKDYM$C5v;mFQ5|4eF+A$n9+hp( zz)j}mZHa``KpnKtW2$kUFv79urF^PuB2pH>I-u)>-WxCWY#^NOu$nvn;&A5`k=1KufXaP14E1J) z^wE1{eO|u%`Qz(%-`{=t)pi4$95TWIE(rzP{~wG2X0|3dpnIx<`#St9LqZS>FT2x2 zh1uWtN|^ipKYr!I2S~%gq`S}ve#<ZR4N2`aPdb+43Un5fMQ*cm zTa4$FJCQ>t$r3#-=x)70_+Eq+D>54=S~vwJkdo@Nm4AC+?c|V5uOXR^azp#LyJ3|l zMZ0!BgWC)|ic{iRP~oIIb@L?{R8;sAc?ixv;bEzHQ(G?;5{YEMW>ih5u?wx|(c{nu zeFh6m-B}zAs&vbC>4ZOB$)DlMYaHUDN$Zz{$er{8Eu}ePdGMGyVllZbD}pyFFdqQd zrw2oS73L+c^%x1~fy=>SzkUDiNBis3yPx0u_zp?-VagXuuU?Hd=`?Q`auXpN4DH>sT$fU86+<(nzQU-y$XNY!A;s z>UuBmYipOxRVTKkN9LBMCWeCu4>%ZEn2x-E1Unt{UX28?z+=>i7(+$Z-qnTbmW(XC z?0F=hgyna;@kKX^=HZ`C!{j)PyvW-bmMY~-C+iEI>S_&@FW%wX=`7d|PKQOzI~#&g zN^B+80A9KU)_3K;heLW8jY~Sw(p2%ZfuUAT#1nI+1pk>;Zw}JOY6BaAbssx#=vhY1 zD3C%b08zuHSYFQ=cRQpo9O#Eb76cY|7E{Y_wN&t)4uR$8aqG@k*q*2=S(+#?0FBWN z&+^pd<=W7M%PK7HyYk+hoE~mE?sU>bA@}P(*TH0)rUF!2jUt$ZZ5=CddU!s9Z}khB zQ_Z;fS4EnSXbG-8i4Wu+$D4tldDa@!=Xd}9@$UQgpHLFdx3eo$4)xLpKsd1Zr;n<)UH0QvfryONN=3NMJ+9%I|6 zMSKpN3ATU!$uOl}4ike{WQXX6J8hmD`PaD&PYux_m`%@6MEf0kvIjO6qk`B(g(d>e znFl#s7AUz4r#>t&%`Q=^#qv`*g7d`Bu|ME^jKCRFUqnA&sTQV(g`x}@l>s=fOjti3xO!dvZN zhtpqs!joU?Fh-^+p>RVA=0^%l;3A?tXNtW5)l0+~6mQj*O0_V}v!>oG<0p={qouhN zug^kAiZtkYL)e%SOe5uj5u+((J|rn5PuPCT@*q5Y73f#R7htz=L0}I>=z`Wj@-;6< zJOfFX1skbSZ~J8(VEr^tx-iI66#Fz>cP7 z(0bTWIWa^`BoN^Un^&uwE2O~1o)sgdrfxJ^e&UAY?36DSUb)-1FTbWHq6u{9L-l=q zz8|A0IJ3_%yKtaRWrCRYbNjXO1;aCuGQU30X3|w+^sq_WDrl2!D`Rd2XR4p`tL?6< z*x&2%W1SZzrz z1@fsxNF{6r3o@@TWIh7zitG_`beUaTDX9w1P~{$MlHI!i4WNYZF8EcK0(1wifLB4h z<{_|r=NTxG1qPayuwXO5`RN9#PpEVY8Y@(3q`9e$H>@g?gQkkUxA2JZM-@;HtcZDb zMvEUjUng)~OVdm_PWA@x7QVcg(Rh*s1ClMV3>Hu!Jzaf zh=!thSRphA|BZ1n8o$L3u-vQ1E&3FL1uBpWn6G#8>2 zP&w0MwjCcQB}3}~BXs#`_yU>Zh>2Y+v`jzv6Z#q^?gO_Q6Rlh*Z8;RffJivjjzC{s zV0ynUdA$@D`l6+YAVQ;d{%h2kWhrELcBvP9y3p@_r-0!Olx)n;0AU55v9@ywY*ALP z6c4+`HLzaQc=%O}FWg<1nzj@-@(zhT805j!_CX$^Wpf}mgY1F`k{_{ zq&XLn2uH-E?4=mMtpMo(GGNovICwmT^v~c^yFXyo(t^eT)gCcceY?9pnJmViKTC4u z5ax*V8a>!tgFLjUxn0jdSL%J^pkh?Yu>+sCU3G2p=DYPYItK zhR+B;A^h|c?51QvWKp<;%G^alC4U@{W)#A zNB-$S(a!$Eu~E#idj$tGAI*Xg=Ih|ei4&;y9xSyDVA=RkpS!KMh`zyS@u+05?y>Rn zbnAG;tdziNLfoOT(*b;{`NG02t|)$Jf^*H`bbC>FerJa>B)y%)6G-cx@HM%rH{omM zyw1D8oo?>L>@GJGffT&DPG`BHxxlgINM`m-GHPu4_8sDB{uZ&l$j`R zANQ7QJER361u_3`o~C5R%f+3no&nu%Q-_Y7?+avoC^kG-%)=qK)HX0zSGxMvOMW(t z%tfjsZ|P*zSbrFt$e2c%#ZXDjMokwnua<>5dbIZA$E{FHF)t{%%Xy~Yoa|vYI2q-J z1~imS+A>3T@=5EW6r)>MCZMO#%3$Kj{s|qsI^~hk$7ty-a;$lDAU+mjYCtxLreq)7 zPyzB)7uAO1<&fLwAY2?PH0a+bY#s|;HC^TRKQTcH{s1o&Z7$e;C~se_XP$0|mAmYM z$-d+s=G)ccdZgEuW=sPTTMtJG?^;McYlC(`JBCt~JbdsO8R1|}hrP-r58+J?TfzBM zJsp~z;SR>o3&!y2`9;HOLS(RuI7t{Q&FC#m`9{g3XsM|Y*-M2o2RmMDsYAGBXfYeZyIq}vpnUr1W8utjK>=t8B#eM zY>ZOQ`?`s<^+ZbJj%F<4u3Zw;*{`x|qiY?qw+{IrWZ2A{AvdCm&ft=BI@utyU+n?0G?WM4l5SawTzLwn!gg- zP~Z#m8!|<6oZ;AS9w-xFTUUyHQJ0d;2Y$=cYrp&v&JI^qCswcD*~W$lOwVZLHc!`y z3_2nenC=yGWwDAAGmcoS;>3`caW+ZqY10T+&&;nrt);D9u4kI{=doLVETBgApYic0 z%sv$8k+EL;cXSkv8H&x^02Q}$$vs#=8oH1)QwYii*?OMRp-}k0^kuo<-Q6BmHDMHGq7THg-d)CJir2TB|mS%5S!k?N|d z!Zm1oYg91Y1O}5>;4mR+U4rr40TWmS7Az49W=1oW#%_AaVboE)r@U}fP?hB2W*SqB z+~l6zNK;zC`WUE~5CPlqBTGns09sU4+n3lRy|C;~OLsgmieHM)im=s?EZ8wt)@(v6) zN85nX1lb-#E|E4|DNPJH2oFl^1- zmzL|nXbJ?`-=VZX6m-p~%m(r>uMq=xZ$9OFZn{rt!7YQM3PYFg9&A8ZyEe#mZlB2g zL~kCW_T(pY=sd9UtcikeA)1q-^SIjH-mes?9egrjn1LD%VLUJn+^{?hYzhsYEKIwV z*OF!o%ea`%k>ktJ-S{aM5{nP2%B21)B=z@CQI$l;TaXrEbWe5xUZ28g&j1Uv&sR$~ zFm1d*S)V%cwBhcUzY}IC*nu#Fl+LD(lf*mBFVG@3o@;%hS#+$nP6S`128)z{|Wc-qTBS zi(F1q93J@l?nlS3&KB!0&n`FFbYb!d7_@<6r@UG}dOOBaF?>dYUzBF;;Ve%RV1w;Y zeG)>!MX9<1x|w{;VZ(hzBhK^jsj)h4BX^JFXlV?hzg17}F017Ns!woAFh@9e!+cH$ zmh9l?ilJpon1F3LK8}+4%`DGD>F4RtW`@FPayPkuZ>64NoLDjXP>k%Z4-Hm zpO_lNCfH}6hzBodKwxGld7fZa?-5KBSg+6lgnn?n>Dn7Jq;6VAA#UrAR#`fk6(O?H ztXSPh$8c_8Dna{WY7MwEg)0 zr|b7WSWLNpVIS%lQj~YJaXRnj9aR>4P!5*Ky@9`zt9yMF`p~)(?nOq4Tq{n7hO40B zQ&5LGyCANfpP=~n&E4xCIwA4p5+mY?bA|I%_NHRI&H*3pq_M$dwcN~K($j(JqaK9tngSgz3Nj_^5K;0oIceeNr2C9PD$ZZ$tT|@)*8I5i9J+UBz+HFe zYRzbAqlg?r3t&F^Q4J7Bg9s;Te2=dikAMy+t*_|gQRkZL`h;s2rV`-MLNr7)i_Kns)3aWBEgx*@yE*;TVY^mk?z8 z_#go_5L4t*_o1?b2`NL~Gc<81R&fYSj@=v#@kta_{DE{58O+o2#Ofm-&eM`QY;A3< zd_}SuHnZn~vU2Kkuh7@>nD(Lgf!#T9Rda6cN|qV6M*%qT83Y_iT*|f8o-9=3_o-l+ z`mS4@4jH-c)xaLU=RO5&VpdJKRA_FyMTYxmr|96CCLBuq_O=$*?cQkWIA_3INGCmg z|JT2M`uLjFbf&N0zWwg?_y49KjtmU|=pl8Q-1i9L*k8YX_wmioKfku!RqUZI-cJUH zSAiOzm?>0Lx|;KS`$vza-@^Z8`$%@*F-WXu#oSu-UMlIGVAdH9DIse9N;haQi<)|| zxrvo9V$CzmtabHvN(7ygr}( z+5X`9D(>eN*x7cCD_#MPMDvhTf2fPpv0JcBoOzW;ExbRjfZUPEnVzgWo2-S|B3i~U z@F$iGSBXRu2b74llI31-!xS5k^hBQc!?i|M*2<^@&?hsf=Z3I^&`pHInJ-~c(I1aL zVQyduXL-=xJZdGq`p%$!s=#cRS&iVCA{)AfjLieDLeT4$`=KB>+^SYuLrMv)tJe=*9AR2frp2}?N zIHPcjX5HQ+Moovc!3z1B4t+u^GyFicIk2T>V4_;wlp%Gro{*ta$96nENzypGpQRp=M3ETv*gaW zT@9S!-vZR8;HHAE0Xz2k{9@F!(sG{yP9-43opw*!Zb)D~w2Q5}c>wxw-Nw^%zGOVr z3sj(cK8I5gtbSY%FhTZdB|MH-&90}fvNJpJBy!4Vbx&#uN!XqQKmF!bg1Z5=ivBv! zEFO+%rKzdmi(!#>iB$tKS3z!@%MIspd-rkr_Wk$&CLh|@Z|^>g>~uJEzLPWwe6j^| zKaW%gCWqTbB=$k20;FHuET=o%4sYC#AKrZb(bIdwQaZA1-uUG!W=2yu37Uw$Mulv51+%G_`eu$vQU7p1A2uynfu^RNn1I!2_710+(IcG%ycSn6SVaX)?=o zgup6mI`Aq1avN++>TO*v2^MZ__dx_Re?CLTt=!OziG%tE6L2LMG*kE~NL3q{H!==p z*XBCdMe_qI`z2rG3uV_Y%-a#it;GiVm;$Q07TiFsG z9Dnk}VWu{HVq$r?*7y#l)>ONq1TrAgQWpg{|0Rg#C(c8J(sdTK2i8r7$ExBDYEU}~ zF(+Nk91O3T=*U~CwHng}YxuI3hBH#-|X%H;B+MRvwD7^%`MABWtq#H53iIzaj=*=Cv0 z2P!Lbv2MJuXScg=CHIwhrs8$|&;P>eU8HG zYpT}43e`+&;Y^cP9g-315b)ygNKRbRWbgRF07Bpo*hS0(ePenVo|R= zl-(dQ@eslEc#WP$qywx|WUQEb7J5T7PMIRg|0!BD8iEFnw#X~cm~in@AQslg4xXXM zq#M(+m@Bcr(;IqftucQ6<{hky+y5;b4z`hVR(0Bt4Qv)mUP@?Ta8ZFROR$?4@JT*K zlHkq!eDz@wuXlbL(fU$CP(v_xaZ37qsSM^ev2NxWj43IwI#dr! zb224k7RNNDz|@Ahu%*#xrTjAnIfMe!Yh+q_n&llQAzV3}p9VxL44+T))}Y}fE-DEl zdXC|?;ljFbAeyAMCJh_(#- z16NUhk%<4fSF~ zmw^CDXl}1bgkS&@BB7mU1eMg2$Hv4*x;1ZUd5ew%9Ex(h=vKIl3R8spTTv&CkH_x) zrhP+1CEKRwK5iMv!7iF7&Ks+M*z<3`hMWBI`u1wq_{}(L59NvVL~L9*&eUtA0FWmJ zao3Y**@2SsUv)I#sAn9Iw*(h+me8piKJpdy12eInZuch>IpS)9!u5V)HjmO&|2l=| z3*?e0x{Wd1E9L8sFogqk<3Xo8zz16L)_OMGK@FU8e^m5Kix_6BUO-o-4ohrKQMUIr zB=Cj}%N&kEDr$yLuT{;k)r$A+zl@CEPl{wPFu*Ig%()2VXZX6%1Ae)=GL@P_sBEJe zcYVN1t^g~hIXR$Q#<6NZQp9;#r3sj5JOK&^3ix5s=C&BNWgByB+Xj=inr`pj-hEH| zfbXUDVtL}0nT>}ZsgE^|(D;y;AK;W0rcdQTl3Oc7Y|?C^cLP#qam-j7`k|bSnwEAY z5tR9YFQLpvoT5L_gA{sTJye4-Hp;nYZ|IS>c3_O);20^Xy;b2xd&X`lh?d~WL4@o< zV5F{L@x{XAYEUI#U>Zcur9E5S zB2k7iYMVGT46GI(aGt90h9`}X##C`|NG!8I|Ni^CpMU0Xa8!)JW*l4s>D_^2KnGsl zR>H&clFUw%Cx4eAYwV~$J#on1MMD-Cdd7IG`2~BN{pfOORfVJ3dtAh$V0Q2vq1+!K|(rz88s`K25gy^?k8ocQ<5wzuQ1?M z-GyP=LqiYSR?)osoo!(@)0>yVY-}EbPZHP1rVzouqUAF-Ts zO|M{yH-JK*mRgOZqVk6J7B$=uxp$#p;buuF*33oN-1ng2)TexN_}C9SQCycr?xu^M{F*iv(Jbs2@4A(u>1IldDQ-)K7 z5;mcx5lc{hM-YGK(jTx;>Ql<$GRr-%t6fAAz?$`*wzyAF{V-cSRYlFS|KN8-RbAai zy^wlYbg$?6{C&4_I-#wyw;p(D40H6)_ByFqZ|F*GBoDg_wVhyvY@6DB!Qe2d_2jVY z8bDe|cE{$0;eYA=Z^~qOZq-z`a1{CU^M3x7d_7Xi#bI(?)47EG!pDoJ1+fSh%O zn#%o4r6-KqROJe#GO3Ld^{PQ%zd!*$#IHs`M|d4HTb9TE{*Dp1(N+?CLSC4)1B~Tx zi%i?6J0Xp!P$MhC+o|o4(w=WlE8h1CMY0;&?_e2VIV8&v6iG}D+|kTvY~R_EBsxE_ zt^?<=YRG4-xsOE>q zS@P6&v7>#jrj9*2;!%cz18UCM{1x?~@TUbUA<_bn-65(8%ADjx*T0k+Adv>5O9Zu) z6{ztT-4PRueC^z}Nq5o#>IOdKnxnxYr#-D_yGF?|>X>2^C!q=8bPiDc!*$IiAC)KM z*Ve#zm`j3$95YvTINhP>!+d&$D$cW!4#n3n7SL^gRe$vxebnA)DKKobmE%=dxpjXA=@L)f%%az3gvpgwaMc)LVicAJM!M# zfI!l3AO2&w0$+60;}Ck|J5)a>T2dnAG$a6$+m&q zUu) z?VLFq^|MVGbrPZ_xUj7s>*kEtyX^o>vcXaB$+F0!zAU0cSW)rzdfOyMl+LS2Krw9fg@-S>xAF$sn_;{-N=j6D0WwJbN^ zT)uwy105Ir3cio#yW<41$JjdiV7;Ni9@<>Q-xLsq6+9e+HzeZRfV67lDzTOdx{&Kc z4ZWEE?G6=sfYY1Ui`uEc9YL+Yf0LT_yowCRRj^*nY?w$8u&)eF;pwTZmoCO!)eZ#_ zVAum4q$vcssT3!65>&;Z1=l}u$-+EGYfRGd20Nl!2VgNnwK* z#izk{#1yq)*^~qV$ughsVN4ET5caSKuYX2B_s9KDuRpy0>(SlkpAf};bo96PZ+>`4 z!cS{)E5U(h5VoaHue8m0vpkyQF3v+TvU2Zuwr>Ctx$xv-1Qrg!?iuQtRVKHuEibR8UHRXvOIKvE1Y zCq9F{a~@;oy5c^j#;AvkQ)UR?-I!6%%`o>bm}_y@@L!%W&j=hUQ) z`juyIcWUvF8SjP%k!k4U=M8B6|UXIVQy4V~BI^-BG4i#i&RI!h?83RzR` z*S2t#I6@FgrqNHo1q;8)t1VUSk(TNB_}up?1q{VFjyS=krF)6#Ywlo>PtG=Mk`ocK zltVayd^#+I=%%Y>vFRv4eWB=yE0U;B>G>)TbkL2?-Ck_1!VW$JKQ(Y2U$Btc(6f0| zKyl+hA8L=onO{=ULq=NIU#Zp9B2P~2MAx8GGySHvUaDQky(J3@{;eq5G<*Xc^kSh4 zH=glHT~ZPtb%yn1c8v;_wiMl(O+A>LWl9LocqoMDF-<>S0=wkG81^p;e|XM|8Qz$t z>l{7;f4ke<{q_CFyO*#3?e5c0qGbj2`eOrxR0WNy+a9v9FwKu!pJByl>Qbc3nsS5~ zFp+#^brVwTK!5}SFF6M8S$Kw%@NKB*+V}4T+!yPTXLvZ(7=vvZRSQ)aCBJQTw8gVr0!;I01fRbqW2a!6k zHm{a4httFzt93n9a$a3p|(s>7LBC?0hJfWxi(ouw}5dnczeaGqmAsaGoe+ zUKULgXD~!K!Od^Bh@?Vv;CusF4ukwJPa(qD=j`4=hNdzd0JHl+{c=w>o76|^ z$a%WhY5M)2Kqk;u7z*ll(Vb-;l`$cwTWBHb%ms>wfldafQCd7^J2E#mM5e%P_8Vl9 z>Ru??!RSFRH(PGceI*8dzK%>-_#lTv^{+T9I1l?*I>%tQC$J5=6RBGAV`n~NUfoV* z-tQ*dlD2<)jldpp^EGs~@S}w=ho+5E5l6(`D}{gg;iHC6cUqeQEk87R9a`7nx!Yv4 zv~dzyovbOCgCP--oruA321pA>ffU{g@YK_cPKd{jBj4dJ8GVGfF*H zT7m`qmWj8otlU^90`UZuIi3rVkl^AQdW?fUxWMX6dYa8(?r7&^SKzOrzpsV1k^SL7 zd3Z~OW^k9z_~9tyYXA5O$NHLp*7T@Dvhbn?%ZqaZJA$Gf#kIf-d>9E0Yov43k-E{$ z-Yqcf-f`9YB5@~Yt-9)4vwGh8yB9_G#>W#l13O>W)D?-t?5x^gmvo>Lw*_3;7LgL_sySUu`BK~Z0v=7U z1NyR9N_dAaMrK$yge z$%`{BWeQiYxo(0LYH2doU_5`tBsQfqnO%Y>hi@TcFd~ix#t13K#ZNmfa|<1I9IRyu z+8UXd>Spu=*E3msakoWk(GGJR*EP$gYOuTmomFW->MX7Yrhm`kb@6YvKba#TMz}?! zY*CqwAKO=XHovSOwjmSusKOH@a2+K~O=JT?xRm&n%`K#nsAwC&rt}MtAkFe^f5j7Y zuX+B(tNrR_5m)29DKn!%^p!S39;Jb3a@#t;7EJEFjIg)?+PPU1tKBzEk78uZ|< zvVlq`ycA^QcitUr=KXWk`Sj6OUyb1TsaY{sFzl>i*khnsdR%{Y>HO7wBFZa}eFMrg ze^S!3JDngaeVgZ^y%rzqvI!&$>hn|qq{Fpo-9y= zS?m=C0(Qk%E&DChE`^dFEl({rPrO>}5J)xtz`-K-)1Gm8BQtls0x6q5ho*|x40*hH z`|<7rYXCa?r&Jhn!a9BsnCQh1KfHNAxqkod&Bym2lBV0F@s}H@pAU7B+DrDvqGOf! z7pO~3ZJ_x!yhwCWT|%bo)zv64BpaFwP@3K9dI?&Gd>T{eM<0nyn7jrBOLFfa%>#S% zY`=Qp`P|3HI`UlfUvY(o_E)`1ocbBih6^6$+T($1j|Q%t4qQ7KxW>@^?mNZ<*N$;5 zOA!{2uTzvMkrOT2du#bHZA!6JreNqf0kkmR!?78PK%Tr^q2lJ={PL^y29B&pq~Ue1 z;syv`dZrt*22}?IruXS~&kkx{M2Wt3fVx5INq#2^4VbRd8`?67V=9iX!;)HJ{J_S$ zw5Gv_>w@b`fCXA65=Tv*!DjD+z68eSeL}oOg7eD;sxp;mkXf<`>D^; zxXiQ3c{d7-d~q>Ur|Von?Pxi&L9SueV1&cUykM$GscA1Z-xx9|t?nEG^YD9c095Y*07V=847&t!DBrOeCDgm#7&GEuHi19^wzKHtT!AhrSy%+JN+42AD8o z2+1i)%+37S3ci3!P1hQDkPkK(SrXE#ITPauJ2?}m6$kC;Kn-=P&h>ISW=K#zgu?3? zSXbLww-Pl>%Z__77H+$f?gN1s6ssNib3JQQ^t9BsnuxU3rdE-gL*ANF8d%h!d^{AtcOe0S&@b;Cxzw*%LRECKESP5;=9{GWoCkX&JGLQ?QvZl z^(~CNU2JdR`HyQBPj08Z=v+b}l9lBJs0VSM!J`to5m83uoran*jCyoJvJa;#&w8`i zU2Hqw&;#qK{4$T2JME>N=m5+2WO-1gB&B_&YuNaS)p)9D1txWj;9_~aHTlzRWY-gc z*0pW9W|-Lhg9f$n1*SpqvD7W>VeQzgXlh=6c>g1en|ipu9M{;xIs{nbsp!UhWN7K8Tuh*!@@MJ{O7JfbPnLWeIqS70Y za7JxL;}TF?Mra#ng?wMpRk<=U!_-;W5lRbG>llaMy|;v5y5ynDJoMputS*aJM!st` zI8)%QaI8;1LGl>Tp#+7gh4|b?0^YrEJu5K1uhCmP&1wv2HqH*bZcvkBUZt5~8oP6t zu}Bu%n^<0pNC@$SUhU!wEM8{}rAUA51*WkVnxNFXO=SU07bCd%=k~!3PF*1}mb>Y= zaVu*1WfAgFyFZ3P!|NvCoueb}#pq6r73$q&T;Bm{n1;wUd(}N}KdJ$#GyIr%u~?av z-Ony~fm-=u$S%wDYRq-c;?W!&yz_k9Q<#>!ptAen1Xzi_|FnJ2A|AKvXm}aKXg-He zZ~W$6yI0<#2HxyVJmA$Wqi;6s!L;Z=xzF~NPZ~mTq*FLLx|rd(73sfqCKk-@;TM`a z-pvchP;QV$77zRc2a76MNAZK6EA{t3V=u^GA=NxnECM8{9j1me$J~xQSaPh`zWka- zvZd8URJ&5ya^KHWTp|q(&h;wKqH|ZR13!JJrNb*f}-cp|tB`J5? zNJnQQbPjz0tbyrlx#fJ&-MYZk9ZKpoP#hS$L1S_sh&{1@8NLma@sHzLRulrpb4oQ-q%V z|6r2E%ZbHsBIPS~L%#dw#ZcvwuaJ@oxvyB8i zJJP0A(#bVxxv9qmwK~*ctHs^||DmIMG8|Zkf|lgQNefl`*tIJIk#!~z$T9z2br$7qIk&K)Tx3F=MzG{F@nq4G}7Qe&bW(ETjpzj{j5GMAz~zcF{Y^J`%%v`0&3)k)9aH=>K8q1U@BhVCjVZbD)zS9sQo? zOghiOAUW_f9?Z^tfPBz0yn5VWgrQi^UTfK$Faz@rjK4qwrP$!RViE4l*i?qy7QgKlCY!8E6 zL4oC`d5kM^ZFZO=e_Mj*+mx+=SQGc@FjLqS@-W_G(j|>8Opod*1KlJ>>;_aMIs0n* z9I;E&=ShbsRAVl7-Ip{Vy+Z^hJa8a}iGLL4Y#{0j^Wqj>xBC~%?Gk=oqY3h41?vXp z=>i(jmgUzsxzbq3(5E1x-Jqk>+$hw>NEKzz@i7P+NZ$-@Gl6kp?FFdiadYDtj!u-@yyi*#v(yB;3_Vh?!6)nNF5=)2- z_%Cz=Sni@8TtYtx<%)f5x!O@0{sYT~#TF4KJgE6`{}sK)RRud})H8EHE-T{4JgbAO z4)9r8-|m_uUE@#oMzbVQ}+lCUrW<4FM}0V)MHoiM~vPiHb7POSg~b zp2<*+*O(p*G1L@XQfW_Iw>()ix|t5hPZ`fWbrno35Na?dpbnxo@6FGzzk7R!KI5Z@ ze;T@u!cv3RPYzr^#q}O0H{ViMT+pnlC6RIpihXc<bS)(L$DJ+q#K=uv`DnBK}GKf zkY+bA?8Q~I2p^BKnmt+5fQ~JYS*J960w>EJr=fuKE~Sg&AYsB?Y?h z<>ho!Qmm&t&Jx>_ zeWn|`LxqOOX>aGpNobJTEgUNIPr0$$n6^KHeht)(NOD(ImR1y)2w>)fT4iHdAII z8dQr1Cgxde)a-5##*9}R5LwNdJr0&xGH3G3pe{Dtz?vS4-!#_^@9>~7?n?RG=&y$= z<9hlE&Tj|xAcS3~+QzO=4R+GQ?P##ho2BQQ&;e=^IKBn4*#PAmh8mMu(HXY1S1mMto3yVzfejvYoVdk)bVG0qSL>^kG{WOvR9Zx$ns zv>l*s$Vb6r+URI1oquG>qDDPb0VM?sHt5CcpYM3$AB(o~0{vNd!Db>k-6Rn|QET@u zha*YPS}NR+m6Qkm`76-v(ve1U7J9|muu#*cgP6EiGt7RwtL zpoAN$b{Q(e%kAwID|;3@c;8sY$)j=+!NJ3QZFOCYbZn!jH<_e`?Br!6r9k#Nienz8 zFj%8z%iHTAsTimg9z=Pk3?F^lMOsgD>e%xAP|hy&_RzAb69$9A9=ofZ)&$Tv*{+&#J9Xr(;i78}Ko6R9LDHsb96a9_yL)S-Ng2 zor(J;L`##!F<6qsJ?tgkqLcS{qGea2T&VYHAMZ>jcSQrP7|?dvaH{VDQ+Gau>OHvV zS#4PT@OA44#kJkaDwZN8{RJ-|b*^X%jDOOo98CHiX?rd%V3lw*7AQj;0rJ=3$uMb| z2N0PRO$al|zUmVoRrR^Va4qIDIAwja@$BPs48} z&NNy*sjc9Ae>1--ss7BOXe?x?f_vebr3Qf~<#yE%x#VI^K(3Kj%=_8ef~F)c$pFOH znc0WLkIu-|tcl6`3@sG&x2sVx7X2|y5pFHgZU4}}@5`?&^tCZ6F?u3D>!BGo>={6K ztYL}zY)t-Ihwau`+U}wwOxfY_;<;e^N0u&H71s&G*l1_BV%4(@v$KQN<{eeLPpWeRhW^5gQ zLu`yFXnG0-8Kjo9+0>3gC~76;pSGKd2q~=qj0H@Fb~cBx73hu6eUcae+v!+LslxCr z!ySr()CB0p#|YaU%+NIs9c63d9&OBSV|AUwIGUOb_3$z<9sJdRG|7Ag-GNh;0DhG5 z*cqtay5BX7+MlQG)L;-aDy_Zr(p5V&83MOE?)9WqVGx$Z9qq0wn=%30no1p0%!5eiOc>3T>9&JO4Cvo4T zIeC-D)wI`V-Rn~Z<%_EcRvk}1*^A@=;nFviipjvzFmESo(4 zY1v6zx>x%dAC061aC8NOib@+Ot}WRNgx5-wwFH+~w}9+im8VCrsvhDcy8RzuQ>lx* zJWf}rXkmJ65o(IZ2R%iEMM9-DsJ^Q}ADtBLhx|kOKzoJTK?gNM1*RA9)RJ90gTF`p zagbeWyXgt~CdbjkGP~h#>1I5&2br)r3YYnEsG(z>gdrDxak%f1rgA5ZW-V)I_1E%t zb=V^EVGhC<6o?RT;%+}4_cQnb1*SJ>%sB-55%}x~R#?RILJb?$WL#q_;|_K-useL9 z4lU~d^uf=6dH>;KGMiw7@c|$wj{ReMxwu#o9!`R*#iA(O|?71Akbs3Dz1M#TZVa$EdpE6Qz*7##jYJ_t=@nX+I{n!yU%mF@K?{ni$e_v&;3ZQRMI z{@$N-Vpnh+=&Dx^8TOfQJj7fHwn-*8$@dDO`JB`F`V{h4*X^C_S4cl-_=z!;hdTKa%x6+r<~B*sf#V12g|i9H;^zEn`RoRD_vi!z&fq2d!RJS> zfB50U7oh3z5>+BY$}_0C{ptIUqg~T;^v8$l!GC$vLj;Wf4FTG?4|j)@Yv}lZnXLfp zIg&LSN@NS;u)-J$uO(?mTa+_YK8-S>)xr(k4#USO|c zqsgn4sd{smO}<`Hf}!-WYlT(!y3hs~6w_}lFCP+lxp{#*$GQFnq!(Z>Tq4Ah<~X{; zYELeXH!9TS(=6#+o+R#PfxhPLX$OU#WYD<_dzrlC*-*WqK?xeRRWChQnz1YC?R%PS zIHNkps$p8A@5x3+sT7T86BH3t*UK!sP6(;CSbCUh=WVZ4om4rZ$9xP0ntiJXtLO_g3i4oOjl%H zK5mE1o1AQbU)H?PkYlM*!tBF= zK0@!{d{FYA&d1zhAQS?~^N0;*K@hylyx;j8t~5QJu|KcQU(AuV0r@6(uOuB;m|rEH zCMsvyn=q9}LDTkHgstM(8j9zU4?)pLhUxeKWslBw1Y2%Q8uie|GCsYRW$Zwm1dcIG zd>i?DpI0|K8-+|@y}zI>M6xuzQ3LQr_{-~`_ix^P|Mt@lcl&pDpFbXf7oxLM_xgS> zi1A+EVClEtoDCX04Wg%ugxI-qgHO65rqeF_XPU1leZ~hrGl6}YU0b2-G~GDtbWvwa z{<6g)&!iJrNyzx6gl>ZA@z8EmuZiD~j?mEHP!@GT2J@~9asmv&FdNi{fT4q*FIHZ= zSuuBTIU58TVes^19_gSKEW$&QWw95_&!QrdR&sPsZhgst$5}%f7E2w8WAz);P7Bq%tvF<-*>mX=ze*#pCj(>ARjJs$yy;Ipc%%rEt8RbCE@ndO?@qI|G^!J`?u zD-g(s1hcIb!`vtE0=ylF%fA?m*acF}H7(7EeI#+wpdkgwoD&UA(zVJPbUTtcePF5P zx2T(Nv$|Q{fE(Dse`$F`kLVZc6Hi4y3}3EJY>dVgSXotQAn6b5=5^*GKXwcI(U&L3 zXQsuFZ@~qFsP-@>WfMbW<3-v|Fg>(DaB9^bVPcZTE?{$jmXI8Q1NEFT?*PL9jKggd zqMKb11FZI8(@(e-l$V7WJz)>Z4e zOA&6$jh2>3a96nm(_fC%H3;|O;(9!YMk-JP0D<5JgnzO;I4rGWbJ6VJLWV9?KkXsD zr)^XU@U9NIoaw4*BchJK-km@574A&X{e3myf^*@YPgS8wG}KB#^rvwSjz#NJoDkbu zu53$YOXR3ZyIaci(V2C&Ad7?5=c5SuaJ{Xi42XKZEpJC~&W3hsq}@chN&C!^9C)b@N2P6%Fszjjxiy<|4@`5@y4Bst{7 z<{(WfxoH~kjeoOqbK>^623D7Vr68U_RI8yk>~jw#e4IH~Y&?>tXOr@-_;4c|@sEwuf=~YtV})U%I1Wr5)}2cd1|H37j0O ziY9VH(tRvy?fK}Er(}lKN0~7(^z~BrnzmjaWazum|L)-s1>15&%(-8N$*KMrZ`3)% zy!R}M=>$DJcz|+ps3vZGTDlM?>QN0ZA*rIshVKT zK<+9;kGH!Jh|sFu5@d_~{=?nu?z>Mv0@pFdcPYM$>_#CL3=cf=uBP<{r~Yr;U*bay#iBtJ#= zsVZQ-MP7@OPtOiG!YLh_RDk({Mj_1#XaRf`JBybgT06;F$z3+lV||Ot1$C;M($&$1 zvcYO^=9WL*e`^4GY9u*ym;KUI4^D*hL&%6P)Jn@=kpztfg~Bw7;hGDH=aJJ(A}-*} z{6|YuFX5ijL6rtdS|%i6)mE#QaYbsW$k(jMBa1F;w7xXmF~vv|LhyLhY3se%kD|r9 zS5W;G|K$+bY+DT?_W;?kf;DB~XsyYLkm!Ijw}$&S0zrBcWsTd(#dv>fNj2}gTf4=448y+O?I6|2bf5X~Umtgl>9vM~G?Htj`r z&aPL>M_9(Z!lj>8jv^qM#yB!`hB~FYQkFn^z%=vjgyU1}s$PrMHZOBVi_fn;KFh1K zloN_fU(?g;az3r8u_qkSbv$lB8VXeLaGgzRm?RB$AjFZdc3%k%2NL5dsygW|u90&UejE?1FI@ z76PL2fn*(hAnxGdmb%!3t6InTfaIX65Q{a-9(e9CtI^T|ov%STJaK_@0Dh_N4%cb8 z(5=7)qXxz%gah$7n&ouBSxm{-VUl$H621<>$SFmibzm0fFGj5fh+RQiSL+-Vwb-3B z$nPXDnPr}ToKv<KlGi!vTN^s%K$G$^=Q9 zr1%hFyf8}Y$^)e@0#9@fcaHPfw;mS3ljYeSFvm4hmWJ=gj(CWcvkKKq_j}ZVV5mWtSx?7!bX|4hnWYzGVHZ zU(a{_Y-`JJ;#g89av(^F3{v-MS>hT_Xl$zlx5D)@_LahGtmFm>n7WNgdDGi^!xsh1Z9#_K0Y3bx;&x4`##E(P!-NZ=V7IcCHm z;i)qBcK%}ZZhiOehX=@c{gMuoR>eDu!t!NtR~GV%8K$u&x}TKI`Y1oAjT91iX*M&m ze8j_B0+e1c={a5`%$DENe+Q_} znxTE@L-)5GeUK@>IhQ31i)hWj>J2 z2F^0OXFF|^(kk$UXWGfyc$=|%**oaE8s^U!Y>%t$ib`Sw3QW_$9e4rig4ipVrd*g- z{S_VlVGztRR1;9-fQ1y^%Cq^aHqj>@OOIB%g8EAMj<1Tn)I}p9S%DAeY@>Kb{i>7W z%E3r`Tbk-oZDMFrFh0y2B4>?`;&>RwQ<0q(^oCbWP9ED(eEGg3iF2c`;!wvuze z-EIbXmjd(sZp0-FAf;+z_cB?#-Sx=?67vpf`8h}D~o^aO{>!DKuhUR+_&OG0oU(paBGFs3a=oehNGTb}pV;&$4 ztk4o@OIJ5Q_qQv&ACmgf{)R=bo6F46>E)0P0%tIao>wOzD)zpHu-GW#u`F)-SSoe*imiIyDRy~*PYUf0L) z&cqGj(ef90;Qc*ni32^bi!jM24MtDcz6aAsFWgJPQ|LrXW2qv{<0Q@~2*~br{5g1{ z3rwFaHii-RsNXK%{FYesz`AL_|3=!Wd*aQ9J3QDysRa`|Y@;7<-oM*^eE$CrNYhx?z7P`&TzHal>7TPm?xEvWR zZIXm#&0!x>`ZR09>Q(h8KPbU)dtt&pW*g4DM1eD}_-(!;t&W6KKit9DBb?oykGIVz zmD&`_79U=tl=1s_wn#Lg*BPhRi7y^kk0d&3Y|cfMOG_V-G&=VMMMX_FI)Fk_2S)4H z3gbpdwZi!18`R-L=O%7yGyb1+_)Zb5{>Y(cCLV!xwhlgXLLbzFP&kz_R%`H`-Qr>o zKKJ!dekmUkTD^j6_rqbD7Vs0-D6M%9(i?;a3ZsU`b%I>isz2-|Gm1^s^cd2+QGXGc z2)p>Lh3WfDiw>zAsDr1EZrLKm=E{ZGpr)lwWTYCTU4f&zOgGA9yj3)L>RgXIkGsA-T4h;xvnxm*bl0+lPi^&aZtwGFX@=>_0-n#mnZh2I zzn4^>^P0WmY6p`*e15yESe{2uHSMjDVVU*Y-#=7$BRhh*c| z3T|fF*o$v>bI+D=2<#Ki??Yt+GT8eo5T#DrdzFG~7F-e4WE(-B8?5v*h+E~Ximc`< zTnG#yM9X#sxE4?z@S|>uLJ(Q^l1;jK(KWtT@L7M(yA>nFH~H_qQkz?XDrhI+8cA=& z-Q@-uz*2ewsS=SS9cf~o&9|t}w_AFmqxiNpAWE&ROmP0j9ixl$|p9QNG zJ+AH{J%ez2nGvxrM$_a7aa{G(E>BYvw`k#v_m=ue%_ zo6q<6E_u8${f2NjJtQ?i3DsG;@wkMDV-^W^rM87K4`KzUOjcv_U?!BV@yfc3ed^JQl zc-_rV+j>8m*!W#=ch%p7EywSE1vuFXDT!r4eL+e z2&K}e!#4kn7oXAw5GM>gUdy92JAgX3e(?yq39#4&uEm+SL8vtKt=v2=X`J)~jT5Q& zfS-`R2Y8@nqjF7$&TxhLmH>)_v%x|0?GV_O8=77ct)#!!Z0{LAgm}W3a!WV<{a;>x zz*Jp_F zyMOy#Ywf-Ban1pyx-%8sGV|=jd1UU~?}u4~ZBNTknIt8+>qpyKPtbC-luE3k6)v_? z)I2v)Ja(XylSaZd&~!H1DA2jst|rL#%QX0b3+ge_-OS^$ff|WOsaQ=Ga-ho(hFgf0 z;}LVe#S{y7Uw1;^KO9N_k8F=& zot;n9KnCf)qATXUj$)AbagR+b*k~0BKc_)5&99HHp^J zdJM4Br5I_o5(;i!)-mQ$sj}o&zWEAv*NvT!bZ%OL>HXXj2UTMPE5zS%c9(y@`#Aad z?(cUkzLg+`nkFPR<$C`xo<0}r`G`x_{o7nZm!7@5fA{Gp-CJ=?#YNRiC7~E8)0|4k z?B#MjaWn9c{fDUJDiKu0pb$eBXwyx}5a|KIppv1xuS094G={^A)(XYnb}R7F2s=S+q;0jwp;>UGXo44lajc-w zkeIz}QFQ=p81oP!@2MqaR+j910%de|3?lKPQ9%vUWVvLga9EVCcHjT=;qC`kU(*bv zE18?f1VmR(3ImRPCsn_jD8}evik;enoQf$4+ z{IVhgB1pqps+6<+l472a<>xrAszVr1mG80#K|EZ}v17;ou2L?ogxAOpo{ zW{O>(8EO_1foGk6{`l!(ad-dMho5%+v+c(>_n&^e`}j$c6Tvq?W9#=uFe|3crt6JK z%^o%BVz!4(W@I7lt)gAYC!3FqCw4wCo@eVk0E2C?FEQna6fWt2w!$SuUkt284n|oc z_XpS@x&Z*EGv0lI8XCplT4CMFh0j(;r%Y`hv)D*Lplx6seNlLhV>uXbwOkL=3P4xq z*r_FU-z$-V4pW}U7xa2rUVsh*jjh|uEP0`5ikYJOJ*FAn7o#gqv_0ZIM*buP#dt>G z(XUbdD@-2f z{5dH}9cENc5G_Gs?!(>B{O`5nka;t zib?j6oibT0g`8<*(urn}&_yWmBUU6bH3&7ynQ7d)Vu9``l=-3fn1Kw!2Z}!GuC7Myr?Hwl=?NWRnSt%#JvhQ`k_Z6I6ObcuT1uMwGR1%g70EN}Cc)wx0qy zTvu#DwJ}Buk3q7nbd?jwd_kX+&h^#WYw6puHn&>3N06H`qN@eeW9^{0ADJfvvoFz3n%04*qHdhgV35=TvVtl*A1w}bDQXKx zG$0ziP-*$be$a%%z`79J1nID&Ig1n(6KUruvuCp@5bW*~#O!jb_5rlgOy@!=H!1oGk|c=6!< zhx@;(lO*5&yX9}lr&;zg{xw+s>kQU?<%FVc@gy8BAswXSEyoFpQ#2=_-<#= z4w_3sWyBO(-oW9s=ROY9eaKi`PD8b;qw??AABD`*?XG6T@Fk%yJEBkOy7mxSiYc(= z5U#@aPf+{a3&_LuAzr6`iE4uk2(xhFuLM>#PwX+h{lke zV;C(OFWiLcCyDb}TJ!CeerP~?=%Q_X)MRno?s}D6g;J^Y+mu3=)loHtQy9HO&y&Xd zg!+Q%Rs3Vka*d){E@GLjI*N!LMBiDk9MvjkZMe17 zRz=In&1x}4!J(t0=<4HzJ_fiHrnU>DVeBqUT2fciblR2STiYm9t%wIq_8`uLd?9PY zoT>KZP;al~FK8X3Ergr-#2g)<DCsrRUwVr) zGE$`(!1dVp1+y{sw3ig5z-7=3stZwyn#nZQ=O-7z#T5JiVh?#cd7T7NnJqVS=bg8Sy_>>wb4X`bCK>?TMuNa~DsIls8<(!0?Y z4V}7R-5g({ARIz&r?b%wVqwVtP+-fg6rR)EsWB&*UQx^^Iw&LQuY*4qQ2ivVFN`39 zyoyMo#;-ai=!XhRoBw;n^l`YOoFKwFT|u8~MSp91TyM+7&90h#V^5*n1k7I!-z@o}?&L{FTwgB!ezNEiy6qsPHqI>B^xG^f)e)QtkTC4?SdtK27O% zO@P|HnW3R+(d<=bh9=ZFx4RaSCEq11p-h75tMtxpmhD=D0BN#VHr>|KnZlgM_P0K- zP&o%O8p~DYtJ>}fUd++0RVG2j5xr!BloYSuP{%>kJ0(V6PtXl%BRivB&)`}sW6vZd zbhSZ|4zYN4n|BGj1e%n&AYzD7RqE6_y3^bW?-bsF22k&pD&Rd{ z_-=xFd1udlbGOUS;= z(wjUC-)^@zc^KZ^jUj>Mg1AQJ107rA7^lW3%;^_0LI!C|`1L#{LrNCu4}i>!3H6Is zmkMzTQpFVF3KqI6 z0F`q(&aE^@!&Qu}9D)pog9-C2Q^+j7K)0`MdUAOV!NYr==x?PRJ=*f*k)J%)@Wfu1 z=B4xH5@9k-KDBGKO`>Ui1v+57Fhn+m4d+M+4e4-l5*z^t&RcVoGT9oaq*)iTg}C8! z`!l+QmGTvTkwdsGa&yqCvErf8m8I1h-5sp2Zf7*iB9r5Mx)u+OOU&-TH3et%kH`Wp zQBMWdV3t*>X}!fK854+(kl+W!pXJ|OY$6JRqICjt){tXIeaJY7KycR`9nDx>l>$HU zi1LG&mf;Y5RlYj}lu0%TuEQY7g<+Q+Tsp&a6o}ER;{nR-Zd>ZxVnSw&sp1Hd90`Tq z%REu!%7wvTk!kBDQ4uL8DACjn}Hd;-4t@eIV|42a*!V8HlQT$w#`E> z?dpq?XVX)f^EjPuRxTK$gRbE&Uta!O+8JJkw8)4mt%R4jstSqdK_;tu+LaIVh-`$t zn9t4%8!U(Ut4y@-%-s)=c8|woj3Bawg_sGoi*df8of>~39|&rWvFRT6&abRsVo2oX zh&_T^WxQC9pIezu^NCD>Pt)DWiI?u|ouX8wncUF~Hu0}9RJy0n5Yr_6vViNO@*2Sd zJ8S9!O{jiie3!X=);vP?Ds>0;3;wOk-rqmGN0H3;cg9)0%CUIwCQ2SdW>jW&Q@tR* z!toh))}8|HxdR@t*RHwfv8SG6?g5%H(kqoxc2u`?p&Q{Jd=uf5#d&w@feEISFuI`x zlv`AuW`^GXX)2g&)17B5!SrwnBoVFc1X{QyL;-rg9a9O{6-qYJ^f#=Zjd>PH=JvcV%>#S% z{WGoT;_hMm;pbo8e7tkk=$Fyu&io#j9hoo2C4C-GZVm8_DeDV%C}uJ%yMtZC2)u!W zs&CXhMj2%weCjuy2Pgxzh{6-K86J;^o2r~b1ElGVZp&R=mZ_aM2__R;t{NxFsIP5)qoqx?IVcKE|8A40fh%?aTc)rg;})`UmrpS_kx zj?XCwj}E>=w5rq$v`$dhZcu~6$l8Rd`4o5NP_nN1s21v+yfC?uQVys#P0Equ;I zJeU(C(YZ8GC2$2yPvC~S0oPc04D{MEYCS8Wvf5#rc*TwhSYobzQDzoq^NxZK`o|LA*>&3pwu=5sudUyg%pkwPBXS`w8OR6+;^ELB;o1t&wMT!4|x zbip1I`o~h;*q6Hg4=jX-a84sG%8ekBXnM7Bnast9F1U80WH7yQpq+4cDXd_s9g=G8 z=d=@rPwSwMU{YLO%;pRB-SQoq=*V|LY}w6`;nJKB?7>)k$b1MEe*sCmY6&d6S^_0> z^0d8yTcFI^4Z|*_bh_lX_=t<`23!Av*H~Re`b`t28z#zFXO7h`vTstlgOU&)3Bu`v zP+N$Oeu9VrtR6g4YN}Hagb4mL@*sxmOf3cSxKfqI`f#ygS7|zZaS3MYn4<}m`EZL( z0Lem-mMA(C!=lR?DElL>6VL7`S#(;h+MlV{789zk=hyd$S2qg8NbvHU!72$0c6ads zhKJXjo32A+_}O+9osQhJn1<<9u5iBKm70st#vnmc<$A|Jw`y8b6Q@kXU3G|)-5q)e zir9hM>|WeVZxGe@7}UETBl>HzoTjim4vIH04}pJx$5AM)6wh~)VX;KLynb!q0i{<+ zJkzDjjy9V5(2;X!oHSgEv`y(7cy5V$HF2vzen_xul4EY7a8}AKi$Lf27<<;hzD9U$ zwiZ7cKFDif^F615dDgq#nlYy-b)wBwI^l5+r6g$Q5&5Qpo(0lBAK?G5aZs)iyN2Cl z*eS0uR=2!vcXG5UViUP8^lrVJ7zSYV@b`SGEIzA20VcM2e|PuG)rYs1=<6DG8%m+l zn>2!%Oz~D%D!;oEDHIm)2n_jA3_*c@vyTYg)OrcJ2c!NOvp zqTocBd`#&~>`}4ML`aLT*1rP_H0lJ|8(W{jW`jZWR_FxGmwgo|LM2UfN2e0sC{0uY z0%s`*$AXD!Jmm^&vJwZSEav2lsYSi$jMoym^g0tL)%ivs{ zWR0D0NL}LsQnw|d?B#YP(%j)>M2B^t_759%N zhiO(A$K1ojM7@xAS^X*s60xx&3lecIt3}UDIJJ6+EgQ=tvpi?3qkwDVZgqfIOkU0^ zYc-_EqX`Q}O=(vWgnD`ih@MOnVXot$g6xWWJW|hj@p- z1;bO(S%40uUGLP)f~@wf4F?g&R#@%J6lQ$A+^)x~=cZ~iLtg9+cie8#IXum$x`wlf zLyDkBM1&LtxY3={UCpS4#eA={m&bI&;xI06u8}stzc~{DUJN?rPSW^L+a-FLbGL!z zd4lk)ms6Z(#%pg3Q`Q4*0fmpmQGSRL-B7J*#6-86UUp8=kNJft)jD6lxR;oRzp-qL zOhw%RT(lQ8u^;MqeOnQQ1k?R^i4LdrblfZc){Yw09$`l=7qju}k?S(~f@Y=tv~($) z1}zU(nV)Z-wtlmISOwCHm|JGHhkgenczFK7@GfAjtGjQZi- zjFZ7g>MSjL%l(4+%Zb3#6=T(zJz3ceDYS)xdJ3Z|yu<8Z9JQn~NC-ow0C@}82|Jir zL>lSCnId8i2poT;SwbyTj>tEjAY#D@;mq#s{;|IMD{|`ol>S0tx0Ggrex^%Q{c2~K zFkzOt;AgWN{AnM@y0J7@KKYYwKyJ>4sGT=J!b&_DmNEOiYp_r7`&1RKaw*HPG>6gm zkwoiaPFk+Xnjw!Enkkx8296SswnNbl_~ZOqzr1)ru@*TtNF%mCxW4w;5e?Itp=T1K z7^%j1Jsk!{g!6CoV?~tdbUI1lIn0zQLerZoXArq&747L^LzOQx6hkNR3>jD%AUO8r!+>w z)$Xd-JqToCAxJ`HB5JYfxpPW6AuW0c=Y>X;tW~Tmzqv)rTDxDonLIS~XQ z;w~yN>Cmu_}n=UTr~ifb1>#unQ~{S+he< zBYrsS{qPM(ShyC4nbd}t+zJS!vaplZ%%CJQ6?A%mdZlzfUmyf1Pj&gVBbFxpaB|^= z>g+5GJY7FV+F%k2nO!Umb5RwaXaTjBTwjGq&+%gQHddfCdA7lNptfCAFoT~6W#EQAoJmL^F;W)>-KYx8E+Iz9%nVdH3yUg^o?(R)$}Xe2&X~Qq6zAsg3sC;f z)GVy&%+#$4sDAS0z~S>HL(G0_pY8N3TLLqM_e;`J$Rh|vsL{KI-I50ntnqnffX%*7;mA5_*x1R=ALZ% z4vUbfpcx{Uc~L%m391o>?5>pKLQu^h+mN;kV2sp%xV=EFc~fbmU+LJrcW)#ca_s~n#Hq@d!JzEn>xrs!ksCHWx=@)ik# z4q{Butg#&cB7!yA*^SY@coUJz66!i3Ah`2uss;lll|l6Do`t;bK4nEH!$L8bK!~&w5sQl;QPOGAb+?6mofoGHY1aF0ojcQnPEXB)7lwVbpMN;N6(6Pq4CDth2%NXAUE^Po-d_^h7Y0YLXQybBfqGZT4X<+2tEcqZQdJXltLkNY)krI)$Cn9oR@l9~qIrq5oRGA*<=OtG zz>zG^JYy-n$?MZnFKCj{r@ht{JtylLDYg!phnYR4f|Qr-7b3+F7B*<=ZDIu@Wo%f# zdn0B|rfjsU7tu~1*qEeMlsy#2UO4i?J9`*^$j+DtFf`(9MfQ2~dZe2-uSb4)^ZGH4 zad8xzDnbRy`|Y8goe{nX=9osRWks*txs5NR9Rj_fopd#z+k>=JDj3l(`l-+haW8nMm>{pE9^EoF(QYG7SY@VkBHbDcjej-4oAU>U?U*)15#aVra9`x;0ncSgq{ z8DT&KuSe&LuSs;I&Vloy`X>78%T>4vBOM#p{c`tK)EYHHgKS92a;Z#`G%;bi8sam} zDUu?9lkZ*0I^M++@&j;-vcvfBhbO%sdjIo(_87~o+q-nwSn`xnJ;7JORL{p&p<{-g3S$w%;!1U{mt|j( z^adEe!ZO&Rwxe#EAk5Zj0V_ZlOdm~#rkl&<0@aba8vQ;##n90k9eD&ec3mj)I*qmF_PlS^)Ej4?kf~-xVW$DHwVf5f|uUvN+VgV&(o9__)u| zg;eur54itCwSM+MgYEAD4iFK-1Ct( zj>nu`C00KnV>?{1adB5(l~)h%Y4L0SP34b#b}zk~@|y2py381d(S+mxp5( zW&U1BdGSN!X)Mm&M4cn=avznW95JnFpd_RXv`Qo_ySoZj1beXgMI2=7OVRoTL|eQ{ zA8}25%cs>_I!Lo&(obF0PLH?C(=#&+%K7MiH$3?U#MO436>uq7jbYgbfeCsP>b*Uv zoS?_(0=5=Lt$&|Z72;}$ChHt})xU^%#XG3-Jovbj(zO_$lS@W)5!DnpbpvBRZexvj zGQr3DZt-bg|wIpjI5HfJ1>g5$CTxUjERc04!2O z5%f=bp!;bSf=a-dBSfTQ0->})F5E8W=7wS4iK<7|gQ&WgS}2>Tpr(=BCkoxANoDr_ z^QWKIzs}zM_(7pIxQ39#;%XR<<`ZOrlBC@3P&KK4!tZC(L_exZVgaO_q=nGpcxGLv zJe**fPLerVpbVt{VTX`MGvUq&`G&Aae+hl!?1oLTY22~%X7)xMY_ByT%W|ir?2!Bo z8?b%2Pdi;U38v}9+q%}S+3@P}yFBtbKAy1M^x)Mn-I$e47>PaJZg4ypZ8KyOqeES1 zawLOg&>Cp^O1Au`H;RHWEJp<67L~(=LD=LIof?y_TR!zpc%osDlgE8^J|PaYBBKS= z>oQ7WG$)OPVN3c&%58Df?4FSpk#=pc3^lwLqb&Gj39}zGZG23i^8g(>Vz?{8(T+L; zqQuc;8Sn#d{?p1~&bwrn%jRaqyrW*?t*VTU*XbS74wX<=(Xe2zD6}BPWk-jm3)go| zUaVp@WU>lx+4*_3;Ssi(iUg_R2^QLd*>{-!`yQ<0PY~285aN;GbE6vPRZM>0Lox)A z!Nh8C1gcDh~QgK3LM0e*z%RK$ppL4qdS2xa$X3bIeg;}4g+naozNf?+_ zH#%RxXqrK4n6{Uf){`v{;nh5|X5UqcOx^9K43cgU@qKPBwBj<}scpL2%#p_i8z{T4 z933B@9vwd$oE)KPTmSCc{;8U;pcTm${sYFzA!nbZos?k6%0!aky5RZgW?UG!uo)w9 z9uZ16=5{MY8K@iP3Uyb=>`*ONtqa2Zj9;1ct@2-q=fNAZPdNsyXh5CyS(rk|Q9jap z1E(eAvdV(8f_t9O9HNFt%|y6_x&(vyrs%Fx;HaWznidN;=u>tq16*6=ic*6-w?3c^Q1fk?!u|SJCGi zw8>m8E`Pb-rEK)wKS~sL08h?vwHa3;Zx$gPs8OmfBx1_2lATHqh-Jt^W1sj~=W4WqYO#LO^3JcGfU0WWj9A#Rl_k z3TAgfqI-^hPMVR6pu#hRt6t$*ar3J=13Sm|KZGTmbVly0?%`eL)&d%hU`xnI)HVQi z!p+`FDG{|h;5DXFC7H25&`zVI;1PVSaNrv17URZlt03niDcV-BvpGSBl66{e483bZ z)M+{O7l?JN2ts-1{DmDc#mZGXQB5dzQP&~+AeOJO@wS5{+;)$0=;cdhl&+Tx z%eYCN&e$o-6zDFyonX41>*N&r%=xf+`5kWh9U4R9yyzW3R7Yr`jwhmfcF{G2Gg+LD zbA7jKON-}wyWK^?3DCr2Vt)Nq=3kmjP)u0#HiBcDVoU?5_olvw=w2$iwqel5b4?O z7KrAaymon$1?wb#!|IvjRWhrf?njxPrlCH8&+tN6I8AzD z5hQ~%m1OCDQvdXq-k$1T3nB37{arth!H~oQNeg7)0vSyI_Dk1Qf+h4IEAldE=Esrl zm}$Wp+gg*sk}%j}Ag6Q3oH?I2idq+bSqnz&qC~!V2?^TiTqBUdGjh`ND&M>W`ZPng z8f^w$UFH$s#u>b2ck6?t)2|g@|Zx%O`q+2xVy56n>ro|rk51D zx<#N<(@wDJo1|ayGxUcqY&(3po~An_!SCt@8Pd;b8pZYAA+K)~#TZp%(B)j9KOmDJ zj(|%taVBG^_2Z|2=0Xl66G)^XgvlmYZ-dUJ(h#jZpPZeZ*`tjrFX$Q4eo_G1k<1J^ zAk7F@Iym}zS3&iSvbiz%Nl7&;##%^=s55)i9wyIV(Du!ymAmtezhJrvbjy5-m0FtR z#Utz3z$M78$NJdRFfERVNZsl5Wcyg7)00MJTB}GY1s|4+w23CZ#Br>oQ3vVqI>=rM zs)?F4Ow)-#so)8+M3_XNPYgY=1Fj$P%NfGNLJmzcRt?j1*BspPhN6Qs&-q#=&82ga zer{BgON&Ud(Pv~P-@X6v=54RI4omUq20UuISdJz#9LnB=qXND)oBDBw1^@>(U(gF2 zHLYqDNYB=)xm@iMRE&h(e5>i-@9rNqA3lHl;SOe}feh#Hpz*Mv_?}mdS%T90|XYsgzIQp22`-CLgPVX64UDlkaXecrJi42bD0` z`QcWc&tB6gYc<-&UX&RNf?vQaa)oDREAF1#Ad*^0lYYcSz`OBuP((n8w=E0hgJKUh zP0hB3X?rZ*q_hRMwI4hOno>(YI-vIer7`h;xRudUvZIKy*F{xH;M*6Gp`(ZlRe=f` zWnn2besDboX1=xm3MT@wA^C-1Jg`IkR?_^SMFz26~C_wexd zxp+1DT-n_uyr}#KkRDyArfXEHhLel-Zcjm_l!gZ(12y0D`Z;XR*PeI!8*hBvbz?fK zQ41UYSuX2uyeH9C`LgB9+C3>$+CAGag@u7^;BX2(ELyyBAA}Gt&lT^WKb!`)1=f06 z+IyMJ7n`k%GQ{~pjANU>Bj&i4a@;rHPu_j}<{#q^pYI>Ml>ECNv5mZJTZB*k&zxc{ zX)xbOw<;O}f^hl0lvjQC{?i?PUEdLQ+WL-k+jXRUH}3UcRh~BKLu3H8LVjwXmPZsJ zIy@AnZz@z9aQ~}~_a|+{J{Ux|xLqz_7=WvDbd7(H9rYVmp>D!lI$&1(Uh8A`1pIQg zrZSP;4S1K;xBZhfK#G5DBqJ5vu?uV^#zBS`o815=+2FYtA`s`uaM5!fJ&z$qq6Kn! zOI$+8eUr{LfLb6#%PFmh1w>H~4g{}P$oeMqM6e1yZ#oR#n=h%WrJS8$3BzYz@6hwR zW2E=B$WDA4Qqb8=2O*x!k7UU~Ea3J9Bs|qk=?}c=yBjL}+he4AHN`Pc+Ani)P0l&U zS%)K*G{c*k(S)3XZ1_6_`X$a5T*!M+29dUC6bN`Y@Q`afoE5Uk%_{468fr$VRe18b zYTH(Oa%`{C*CQz@_1k~vMr7pU6HHQFRz;jB);l^pSz z76Efz=M?<>)4Tt;Lr*hw(kz&AWx}%s=hw-{Ge^3{?Ho49^mQptP|XNV%yHs!MI@m> z4tlmnW^ID(Ma)-WCNKmgQ)*=sNVbO9ZI{0A zyp+3-6-9QD!m}e_qzw<#rX9d=wT2TdMYTK@)RJJuPJ1$JBF5!G?k8aWft|OC3z{S< zCsoz_prBkjU+Ep)u#$`@)T0qm0?TLiY$9jn7u$&eQ zK-N#)N|wMB^wfT!T3hNft6C-mm=fde+GIs=sn{ic`EEUey<+)IYjgvsFVUx)~$r&qnK~!R+tnK{zW_e=`%gM&NfZDqxRwZLrL{gVxmH0T6O@@krXB;6d z>1y}=KOgRXpd`tcDT9Fa%*tQn$+q@IKF}A5*G1Y|JL@A`K>Uft(xoc45!=S)V)avI zEW{fY6eEH3T2U}oHm%TFsOm4y5%<0!rc{tAcg{mwF80cU(bdk1@ zK=|-*DfQbfC2wbu+DZqbV8KT}U)i}xBS;YIFL{(S*IY{7o!>mRH>XR*15wg!iuf>w zKAOeWm(k6)8H^Y7NFFkgR_pe1J6V^x9kGTG6puTHfzguUp8Zo zQS}f;L=-B860w;T(C#99`ARb92roI7sIcEVj-^ z9;O-6gf1EKQ`TbSZ!;u+oFD3@WmxE!V4ChyKkkDJF%(?trXA#r?F_P-f_OcppczG= zlV7SQ7`!BRhzKi#X={2nY|^`a&plhXg-W1+EI{c_E5gfIEnZCTNvA_)*7vW+ITzo{ zCTt#kT~em|2!&xLpk?(aXx8UIU2ycWzKC-#IeTT zk`-BnM|bFfvGS+`XVj$wb?WI#!+X(F4b9sFOt~QWVl>LL&%FZmUPB|OpIF26hB`z@ zljy^hHn0+^%$l&Fa5T?YVn$Q)ZbBXPut)pLYXR*l(haDd!kFN;i+n*l zBLp&PIY_PSbP^=l$YR9IL>7#I;+JeEv>0vX7ic!Hyh1OMFdiV4f+mIOs}+*rx3u~^ z>6!fiLzscK=;u7fd6}Y-31vFEC&ueB?R(2dw2i#!^fRRr;k6}|M>2&TrF*Y$FI5FD@OiH z94l6#LvYWIez)P%;bdZq>>R!7j$&n!)#()y0$9c5VvC|tSvcf)*T);-fP#+iU575P zJ=P`tW;BsjA;Gk>4W`^;(p(zUmXz}g)ya!M=grIHkaWXCx)(vZyDhsNze4Tk3SjjV zfumpB-N{oRtoOX)T@fofu&^PMU5c?bB{rPY)UDdsZ;gD@r~#m0$|GU^4X9z}(?Za% zak7NiHkiqzJM1^X@Y%(agg`Rfu3P04s9kh?trgdQecnpHq2+zU=hr1gnfO*$vZ z4Po15SW3%9Nf#1KZw=HWJ%Cig1P1j(IfQ+H16gF#->}L0#8m95=vqEN^^J?ATWP=g zH%OxTZ9hSJ*En*wzw#+4<^EgW42!`MRVTmg-Iy@;8{Z9~o%`R-degweUZ>(hF6Tbr z>vKbf)64+Toj`cu#J`N#(RDY9bedffEaP(&{csOe8Wsl>aw_Eho}E@32uiaJYuX~f za5TUHn!US!_vt64UrO1oF3V@IK}-1D9vWC1SiVjHhDn+(4NN6Czq)@7-=%p30;I{I zGYnA-e?bqG=@&NilN<3d(9)3aL!P#;Vh7JEb-Au-pgyeD0$-8(Bkp?dKivNnwIcU4$UoXP%MmouQ0l zj71;am=D+3;?WcE46&dJ7ROCAK@6>71gM6nhEposgDtD{N9ky|m+&)|sxFTU1V&UhUXESQ)$luvahfQm&ciVr4&Brb#fo_pE_Qta!oPj`r{P5q@vax*|N7k< zSM#14YRRnCynTRlb6E@usrad-;gnZ&(|o=++hrzX11PZ8&=yAxi5I0v?%2uQZ9rT% zVaFiQLsw3Gq^C9WUpxnyPVwY|F47E%er%ni)$`y4_x2CcVKe7X^3;@4OMtW@S(kzC zTYgVAyI!6{<1U)bX-rjFjpmf5?b{rpZH+&+%K_6_@iYg{GlEa&2mFmnwZbO*zkFpr=)zXnENqunx7Q21rp&2ASdQ;;C z7IV==rUcVh6y=Mfx#0D3j8tn_t9XK9(c1-xW14OQx?@$lo$f>l@9Nm2h6EO(2< z7pI{K646|4#&eXVK#;ijx4J2nmItZ519N%rk?=wLIwq8sn4~FLP6Qn z3QR)XG<$2Qb#oD#;DZ0L+TWQxPsR^5*7Nd#lZxBWXL;(fw?pSH=g8CW#UJt9F-THJ zPlrSKVSBdAYxfrRa&h~OIp|J03mY&8-W|C*6E5YssUSxB9@l!3(7?84ho}!q$Dq`n z^tY=$)y!RJEsxKN3RREKiZYdt&tlQaTvZkMN620ymo?(k0Wp+Pc~9aTcsffLmK_FA zo|m4#N2h493QDg+sfcM%5sI8Msfs5e`<_f>>3)$*#G>grV`9)r-@QmcxqmJ?xauFH z&R1fs;l?{9n~(&vGAX^&E?VWJi%{pLj)qenofQKkEOPxlZ62{#oG1e{xI zCm>2VA-Mq;E|d+yG>91B7~4c$fJk-=hNtLfUHwIk|o56P=0u$qBz9Xicd=TU%_{@E_6`Cd`W}sh$ZP< z-LN7^di?Tc77^0?TML$NWx>9MoLGUh114%hcgQ`2Y5}=pf__-j;nJO6Lo}J1!Uigw zq$M<`e1(u^0D2LPW<(I-%EHeW`S!n%^DEh6T6^6I7inh%rjhsazuo)-zoo2FbkF@- zUpFpVmLW|J;i>Ft#zrk?dUI^HtQhJ0d1y>6+8I4_wJ8Xh zDVT1|VSFtKaBeohdvL*9UOR6_P;Q}{%iZ-MPZW3qTyoT7sPWN^75ExNGTaru0~px?4gq6KlKU8WKz!m}PjgV!9AtEqtjg5JTOP**VqT%H_6B zD@KC(^R1^cElitZRPcV~O_uY8Y&if^I)DA|)3tX+a;!{-g$&lMMZOeE(rVL*@ zf|bApue|kE?WhFlURu?#b9aiW8R*{y!vJa*nO(T8bagc<%4@=P z+*r&Og$EAt|58s1^QJES&dx}xO<(~OzaAZZe&Ts-In>dA@ZWJ$XaMLtY58mXfm;rl z0}dzd(2Px<5k4%nu+z?hsno(`*lC2*CLeWJ?yF#1j|?T*q4g7Grjlo}phyXncgmxm z{CLv(MB+}An!dbg#>G}3-Gf|=cb!w(gH626<4S0L?4}QI+-B?oY!ccBxD~sqHtypm z)nWNA=0GfN5+*!o1m{J}0hdLcPPVihA?(@Ca=z@vH;rz3Mn`&yI;LE?A2P=Vo3WRM zhXyZ(3=Xd0cqSVaf^5fEhr}7X6wJ%(6QQ8CJT19XHP^+(bMJh&;CoQAz$S{1kbbl_rZC#m=8-aTEt;vu6aV zzA73n49OXy3h=&3`Z7r`s-6*sPIkhC$Bqk$RHZ^5WF;|3+n`%H^rE8o+Yl~_AdEH&Z)LV?0a|~%iwumYmH6#w>Ivo?@=C>$paXa74@vZ0+N$gEM zz08u8hdL*sEf%8^33xHeaF3ITqz)4dq;VQSkK9vK5+e4a;S?oNo~M*QQO5444vLA! z#Ny#~X9d(hio&Yxs9EccNn-2Yen9SQz4;G6|MKzfuYc-AEd%`S+rNxtzPC6e`x|IV zQ~sZNHXjJ0j57+pU;4#krQTQo0c3Srm3ah?SO%usx+5LaJRP!Fqms@hY}denNl`G! zOaC-Q39;V<(?V%0-A-8(u+-HwanW+Yo!*+0FHGdnq`=Z#?gt^oU_LF3y~u*KezeK= zDSH)3zxCq+(dQpg85y@gfIb%oN+JDA9* z8-Y75m=&W(^2>Bhxo3rzuU3jaUGnC)#<0u^g=~a?Ud~fEGZCUHj+y=p0jtRIr#V)@d;R0ni4Ys*bD+Y@YRw~}0D zT5=tZE!ELTB(M@;KPgsQ2tl5xrBK_e{1<@uC0;;^U{PNg>l11N*C`iXP5=uM&~p#~ zepSV0=T{IYQ4;bAAR($N>A`aSCw9HM8ZB?vu&X(1w{c!gH$3`J@y;UOSW6r=#l+Xg zq6yVY=%R})tPpf!T)n*F#Nq;2?}5;uwb-w*dcRM5o?PGsM3e2MBz_5|XNCZ+mKcTE z5bnnOaqfQZ)L9cux3iMYDsK;G#{725>V?I{_06>ftxhf2zi$$0jPywHdU;uhcF71Dcr~cRvYA1bChtik23M290$3jDF|gTjwfZE4Tjyf%BjU! z^mMiLi=x#iC zO0b$B-b-@Rkqb^0M2J*Ut!EVtGjpJVkZ`=fl?Ud5^?{xwy%kz5ExFpVsJu|ryU}%G z6d5M0w$R-+@8A6WZuIu;$MKu@@4rX)BAGc2R$exWXh{r(eaYO}d;Br@MDWa9C_Swe z6={o==3;4-_9h4F1r|{eqYjREQ)o!`ufBwIvXGK3{Q$qJa=r3ZJ%Y#rMhf%4$FqC= z=KjEpgi8Fv1TbgB=S?eZ`Lv>`+Ai0l-I!5W?^>2-P;Kz5l%r@b9*)&k9%L_51gv5U ztWS|927@?jd^B2;O?m-TrF%hxDJK;eW!o=2wkpMZS>H`x8rSEs44Eo3=9}w+`Ye-k zXlPR;b|Q;gG4aQLe0F?vdUASv^7ObrI6gf&zC&Z$^~R~zlR*t z^R7#Xj)sYNGQ^?=!DzLxQ)56c$q3;*(GtXNFkD~i0D(hR;3)Kkid=*K|iQULfSl{i~^Rw%z`dDmmxr!+(a&(cRwW+ zNRt_9_;PeRMMw~WSd`tQP^!4DqS2@%7x8O>x0i%R>}P zGL$!tg=KK`Gk={_j&!D07LIgfTH+`2qa%$p#ha09c2syQObmNw_=c8ryuk08=G)m3 zTR&evC&zh)w1OA+jO#{c99-hajBc<~ET*_V-JP6_Uym1496g!aP?f`@!8Sd$2Qwb8 zsRhg?LqZrt_IAEw*E9(KhFv5)Fq>BAM4#b#Wk?mTheBIZJ;YI=e`MPdHWTADB|WW_ z$)wOO?bPO>?qbVjT2}b=-L-8|2?y7=$cJ66=gakc`&!Zbi1vdy!Ty6iTDNfDqNm)( zNRJT8ddNhrrj`()rc_j%O_=@q$B;fD(7$`Q{`~XzcOQkR#dQc`Mt={GjevS2*W=6e z@)|X0m^;<$xTcaIAxqH=j-*~D7ak3cO-%DTB(P}|?z}^@x<(PoEG^hr3UoYza-^?=*-7NQ*?9M2df`lacr;q{2fKM12XKw%!_>ac8Rq zLm(c2(!A}wo8cV8;Jp)p7u7j146~PAf4*OR_{ZJH$%lX3OKlM_#b=aY2>>1qFti#4 z9u9zzYdtmiGd>3nE`OKYs=`#oVk|V`;^D}d7GKZU6D+fem8!Pr<%3 z)kmdiA~YIE%<6sRe{9uU%nZYFG1JlAtQ?N*KG0iQ0yte*%j?B!UMgr)18CHkCVJ0Y zECcY3-ck%V-dBj=Pm(ddyx1x%Y`#?Z3E-sBvfJjO(LpuRYkLXEM`NW`1+qQE5lM*C z>3$6Rfj*Z9lO>%t4{shmf7%USe17xs;qK$7+2{A~b!r8aR~0~Vfax09?+YDKFY?8H zfESxN?Q(Vy?C0~4^y2wvc1ek zyO)MME(E!WC`Nh)Ii%aM!6lChzc4FeI2&R=h?I=MOa_ajKSF$wL zuJ{1va~TqwAM`ZTE$xKzOTQ`>KzcKZ8Wl#GV!w>m7O*cEEzIuJ$kgc$<+ea2!1P@v zaxi+>Yj5Cc^qXY>=WL3I2BdGzfs1f>QaKjZyu7ghMv50Vvjgi+1p9yib30_nP36Ud z-Al+$z@e&8236AIj#tnTGj|R)NpB{@CRrX2Gg5RAUfSwjoI(0T8t<;?D>JLh%jJ4f z(guQaDKFFll|CBLKRh^0!t1)IZFfIg-E>qMHzXn#_dDn4-Qr6i@2SCLsj4?&`a#GH zO=nL&Ve|1ZyR_MAWzKG7w`%UF<@H=PV*-)b20mrf5!<`Ix(%}??bv3`Fg-OCg1Aga zAKZK$X6**4bw21erv^~pne_`kuoW&)sTg}=b*GJ3T|EXLw3%%m@sR}7wkJmlSc(rt zrXsXoE9g}ZLM%^1p+`0*s+L6IU*Oj8m9)MzBv$r=yzZi8LTOYv&Z&MQj`Ro`Z`9=D z7CudexTG#0(DEakt8E`AI1BlzhUq1Zu7af_NEDX5 z?0>hhZkdnLa(p~)X0A4&x~&dHNYzb|y#dq@%yypIlU03XbEXV3*=%j~B^G*65kjpg zB^X3-x!GKlO2uGUWykErK{U_-gX$0}cCngQ#P~SdA!$z&JZ#4%8do+t?BUKnDAr4D zjR)7O2AMS4ke+O-5d%e== zk$t!sS-Pv>CYauZJR8}05M}thpru|Ess?I4{c5jK78o87-`7IYXo3!Q*VC8mDvJ~x z_3OQ)R$QV$#4&lCg(-*HEfduWAC=>+lt>rnJe*P1x`P$%Q1X*F@w-J2j!X+n7gMIc z7q*G?i)QM|CmC_ozv&FRNcYIZw4^x{055~GX*6LUi=23W@g#gIav)Di2%-qdIlic- zm3lY!VkO8XqiDUIM1@7OhW&|QYma|7L8^RFw6?mRw?Cq zuz>c#4m5mgR{o>7R&$70meRVN_(j?$Zw>{09+zPMpxmr8FSAs2nH1K&7mR`m_qMq! z>{F0Wve9Bb9KlN2}W z2$wS^h;s$pk%6q}xd_3Y1nBMw`RmlatzW2JFfT#vLNtT^LqTqGukfwnoG`|$*LBf9 zb%8R4`_Qum(^so<@?!Md`)^YwrKFr9AqSP_*#K!B#E_#C^KqAf+*CjL@Z4AuSp|+V zNz;NSj^2lyQKFGPj?7ArhxtM_iXGf&uR}@2l3A&*9A!3se(dQo)Af9%j6l%rmIt5a@Eu)Jj+R#v!Hbr-X_n0dNblNzSG)Jg^F%9z{2 znPTm?*rQaSaa5H6sHa#z$ck>XgU><2Y}cGNbd5TZ7$&QIwS>jm0D8w@Zwi8gg-h%bfwu( zve-f*PzBDPX-3vU0oBKcMW#5Vw&%oK9v{o)p3K*Jx#~)?Z(VNZGwAd`Ya>l?l z{>Ow0D2}`LcW*vD3pfsBSuGDk@@m7tcHXk(nV%uL#%oh2uX>HH=mtBhf? zQt<3CmJ*-aD%bu=rNWa+`Zi53LT9pY8in}3Aogy9F;$ngP81H{zi!|tuIRfY0eN#;zWBesdLG^1B+E?54y`gYh~ zJU5ImCh8FxKG4fJ&N6e+g|)D&RuH`nuPFEk*<6iYFTzO!%0HZ%zzhnZHM+7ZEFnZS z(KekjbD8-&`k+D-FA5GDD7p>qk3k1lqydfEFB^1PcP0A+&K-gn+c!c}ou2XoDiEmp zn8hU{71YfL%@`?T2Z*?DA0;$4lS=Lau4Q&Kr6E`KxZ}X}R+ZdF;)&@K^`l%%^b{1E zpdIR4js`M zzOR2Psn2*e(=G4@75eN{WoeJMN8#P2vnLU*hNU6ax3KkOrL)5zF*DiNS*{PXR6=Jr z_q)MH*%!7*1JV^56#aqDS{p#Ehi+uiW|e7@bCXV%B>dt=1yDC4*0Zw{1+HcuRSnC} zHRWp%iF4RoiC_mpUX|8$tK({Iwgj>zv^>?e8WF0Oi?fQ^|V~4|2 zRY3G46JbtvN#i8>Ho}%cnhBRNlS9}L5g`>(R`2v!r&d^s#MLsB7r!cFPYj0&YxrA-Fer9{+?t{(%LRXNG{GlI^8Y)iR-5QjBBat}h3#&!> z7JKO^NQmY)W6U~f`EkWm-5wDjJxJHwqtN`A8fM>*(^l0SewL}vGY?YPK(st*lM^(AB8mkr^41gNO z(p%0*Wynl*w^(N8Mbhz;!{0NTCC_X2f`wAf<`lypf5a&#e#GlN-KC{adr89`+BVM1 z5?hY{O=#M5#h*f`^N0;LUD0P*Txty%n1LlR32!T(#?$oxqLCB}TFXo!vGkcRm%_g( zlr@-d$)PUExaPA3wzxr5G!|=OX>dezAX|S!U3`kte&Uo~E2OM)TTC&+Xf~H77t|pM zkQM~2>IwnU=i`Y|I`goQr1XYNRmb~Qh3!lkq1moxrKe_zDpu*VF{9s(o9;h75Th}* z9HiSk@4lNgNUv_|Zb>%8JZic;k-hdM5H7?U!IaBNeuv0t8kniBNF;`2I7E-9vzU&^EvV>(9n`5&UOLsc0=K>ld_E7|?M&ah}{G zE(OB`ndkPGV7-rU!s({F>SE*s1w5t<4r^1D?g_T#QP0FsB1XD1^)CGM{PV|84~x6| zzdro5>p$Iod~^TlN5qXKJIf7R{EO-J#rBe5WFl;4@Mj&6LRGnG!?5Uk6Bt8VlN~)u zD*BiVT$w7WH0}BaNZWxXCZoF3hFr=mg~f_T02_zW3oE~+-l&F@wGdPU_6ot-WP(`w zULWK<(gC-_lnl7t4M9^3(CO!Eg2a|hd|u9kA2CQsG4qOErJJN;y(biVzyMW_pn?cV z7~!?%;lG$}VD8>7`$x1F9l60s9cNQ*Os0>R`kF2|k#sK;HvY7;He>-mxLgxI@c)zP zV)S}CLFu`zXL|b;xS*gLPp7wM&w6P#=;de!V>JL@{F#x;zQ>!FC3GbKc-SyI>}2L8 zaRBBO>ag^fG=hXX`x!d%;!jT6F;0H7LM(AF6^|9rm#Cs_=F%i^-?j9-fy;f&K{shz!<^vHsSZ{`; zs0t=3^q2Gs zP(8`I*O2TGI9LV4fkzLrsKDJu?yK(YQDau|0Q-wYY1uz|)wZ|5Ew*tBTiE4u7_RMO z0-f45Kz)`zOUi{Mj5bY26(~>kMBKDwbrh`%T8T;)$?ZcVx7Q0yB!IR)9us8iyJnCl z_#R8m)RUPCo z|NQpwho9f7d z^BUg|iZyd_Ql7q`2#IH`pJ$e{es1{Ge~QJVeokjJ7PUsFCe+!S<9w0|1Bv_%oM34W z%=lHLN0#RD7BFoab{*BLnp>9gkCO)Kn3oeIsvHF(M-sFbryXxix-OVlBrZFLp6#44>crL>s|IxXzKiuNI;sguP zX6;V5eD9lrBQ|3s_ZOyViXSF7`?;$-Mg>t25rJT}^V9R4{cR_~3qQH-KSpWg){`yF zD--nFbi8sS8CNyKgjA$G8`w@*;idRH-O7!&{+?#EHHUo3DNK!Y=Vee&m5S94v8rlj z7x*&xseTKy<}bvoRn3454Wi5jW~)-C5kv4mn)vRa|7YyFnxU^xy30|ayBx_9q+9{& zt-!VMc3l@MQ7y74m(ts@o$2kH_kT)%p~3(yM6xDbPgV#-*tQFrFcB5%GEJEH({LN- z(LC&b$^}vO-2j#S;>nQV?e~0DSg)ScJx#S$zISC%8>2pyQa^`h>~_BNQiwSiB&vi* zb$;~LaJw~S)YsyJ6r7N)T8=S>3X*aHdBoCB?+cI45<$C zjl{atyP2Y1c~LkWf+XzU>~vFe1z1?X${nPe8`h2y`;0Ov~bc?`iweS^Lsy z`x2Ev*Bj$r$L&kQ_N77lQlW#!y^eNCG7UG1uuQED+cxEK)8dnH!ur`gfHn_*dik1xU%l{cV~$r&8D&_ z5IONE*I%K%BJB=iqL3APD~Fy+XYj1uI#>CMnb2Hr`@0ipH4sQA=PTts6q&;a{5q!$4bfK_ONFYyzEwd zV7l7OS&nr_(L%2Eb+{cYpz)+Sd?jrz{TtZ^AfdFW{Oh6}wTR&nqR^s?1#2dg9NSb6 zk@IBJ7-gOpN#@;xrYEF}keV8y%1%@h^=x^y7z4doK?vEtqD40`BygfgTY@TdzOK@q z`NrNw&tnuQlkq<+AnHY-qn^9OP-w@4q7udQm+qvP2_`Hz+-Hv4D4S*=BZ<4Rx57&_ zjfVYe`I2;QyIw91{eLAWrN4o%_LG->N!2(UT_2f+7=bTO8h_0s+zA|S1GG%y(sv6} zwkR%rCxsn|Kx~MT*M3kbJ_+{e6i81Rbr#W zTXBL2@$EF;XP|CG4UdQsQDGaj2zSMDI1tJ@PtJd>SJrEV2t z-Lep4lyB$hoyN{mJS##P%6L|*5xUQu!n0GsjKB=>Cb?)=jPw#Z-HNt6N2XSXX(GY& zU70MJxu7rr7bMfo1qIN}1q@ns0nHy(Rk$j^{xlNb;x@%I8W1PQuJ}X}Ukr=&uI&=e zSR+D5r3s@Ny!ua44!npWq!C+!`XOoE=7>^t>V=~j#1eJ5l0xo!Kn3#8^WvtX@r#=| zl0xa7pP`rpOY1>cu);8h-ww~hDpzJD78Y|O_6g`W2VTN#4_;61X6LZ1hTa7>5-uTT z1T9THOw5us_^fXW<37#A$56OBFs3!dUkB$A%qTkyioI-t4)D^cpsKt=hbAJM@kUov z5jahH8RnQa?D8c=2B{3i-osGlok^A0Pk~!L_s1lGeN$TYZ@NvH4=udtpHWh_(A#1w ziqCJsDrD|-Q9;P#k(T-2k;4q8R;(JCrVK4lb_qqfkWNlFo7%cjcnOL?mzdfPcJWt} zaO1{C3u50)z&mT=Q+#3v6pMoFp@g9BMkz703v3u_F~ggt;3Xj=!Gw2i+L>Okdp*%d z|MO=ap1KmtV!>L({z?6mrxM~9P7>}1t5*tf_t3+{%u97Y!SoJdDY8)>8+)<8jVRH? zi`7&`2}!eQBzXBrZhi@36~VL~gy^BQ7KDfswPZ&?RnAnB2c?_VRqO$U1(GJneQxPs zwHRfNK}dM};Xixte#EjB*Iaew50+><^Pi~-5N`ABU&d=I#}A1FGce&#z5nXnz5jIg z=zV50-pF1T_CE6@cHHXG8Q@@F^)$>wqs%Y7x!sH|pvT_FKkfh8tN+(OenQD0G-e>qG?)iJ09*%k(%JuW!%4G57l|6<}!VG0hcKsoJK-W zu{B2QL-s)IJIxYNmJQ`_;9;OBG`b!wmKW&72lqo_MSB2j9*$B!(564W`Qh&T^Cu=B zThif~+qOGq=xg{ciT#jz&=1;mQE$#~sa!b?j+$Y`0y75Zaxojfc6FM>4;CV{3qJhy z2?$>LTM|z*Htu|hQ}`8;aWmBEiy%7PNFh`Mny8PEAWqX1L{L*v5C-P)R~DprJ$fF> z3j$tDuj8W76ArEo4(*3eV6+1Vg7DLm;=~_3Im~yXB@AB(;jvrNYQd0B;tn3}5``zRvYTeyjTgwaj*={LXq$qno z&--Q-B+3kNRohz#i9Fj8^%iA-86j(Ocukc~tMgLvRk$L>+mrbrsp@t4Z!Q2$?53!@ z@RjqBqO&Gbl7L)7S|tQdx2vL#8%KgCm&^^iL%~B&r-qQyMTsuBmP9rV3v#TZPq-dH z#0mtAKn2|-XSEf94yX(kSrF0cBzj@Kj3|^6Bl{wDx0Oh-m|l#=uY0B7Z7BgTh)vys zFL69y)g8py-1lE)7$8i5Yg!2MW??ujZ|0XYQ^p3VGTT?>L6sCQnG3#N6K72$PFPt= zaskr1XF={+A;^h2XDY3{z`8)3f)7Ea8GlG+V6|OO=Cj#u+Y_R)UJkAKVpSO6Z^UhEf8r%%dT{8KUc@=UWtG~~fI^7+hq4lnSCV}TpD|#^% zlh+$~`n=1kgNCq*_$HfAQ#Oq^>~%_G=9OP3Kh^crfvsN3TDGuLEaUn~uN(*iAYi~R zc1Ss6`_EtQCU-xAw(_FrUAU>8@aJI8W0DEI#7VMNIsijxDIn4!u=y zI%pb{nryZW7p{rcSakWbx*ALc(OhX#$5Jla^Z;^D1+o|NRwN!k5hE>|wlVmAkz}D4 zwHAA>$5?#yu~C@4%KZolxdk`M&!1j-f`UCh8C9}}s-ut>Drl+AY!gj#5?XiZoJP8? zuUlDZPz6tBSBu7udCjCEJ>bZwhGDunu%H;yxDJ*iCTX#_hme)7ucr&Do%wI5PsNauy&CYS)42~m{KD^#zW_h^0{rv~@Ut(#pMC-U>nLE7zS4ZQW$Ro5m+@L*j`WrzEJJbQL_ z`fS)A9zQ)D4ErZ%cYhcjJ)I$QP9(r{9Frzlvc&|`IimcAV3Y-Xg4^|Y^}J~oY{UKd zi3t_m;AWtlJ+nz9zJxR$?-fU=y;|wUZSuJU(=+rXmQK*g6$7NnJeP{S!aodgppod< z;)!aIzdj7KVph{tA3k`L(|`xKNA6W#$TZd7tTR3&K)P`#J8wSSL8Z7_4=qyJi+JdY z?@*+^^lZaos7FHV8(+=E6wDE3lAkZHB*iW`J_v?T@=X(zGUqfv;+;2>7rVJBf=9qC zZ{iG7bDIUVU?qZ~&Ut}umINy}?F{G3+1{{ugK5Q*#84Lk%8IVU7%=eB3`Vi#^=y8D zmIci;YnnQy71vKW}E|X)^Q9X=mv%hO7G_0$l)UWKlYyuj-CykK07%%I(yn5 zoZNkTHX|E_TV(|EVs3OarG6JzWq`2m2e>CfPcBm4FMKn00teaG)D8wJfLfmNcw4=O zpaY5v!9!#>pm(5+-c1l@ld$og7DVor4p~)8!v|KiGJ~)f`5iDMer;x0-NXBLnXo=X zsxvj4)dFn>DBiBlPvv5)0Jw-Z(WxDl0$9&pkK5P=`pI-(QYo$5uW07*6)4~Rt4uqz z=Z2X?A)W-0fh*3g# zRzSn%=0GeIHG3g_3|BiqS|)_o9x3!z1T2koQzL2ae-wP?J{z6ZcqvQ0cKZW0Y~t<= zmO5015GV1!b32j#I-l`-mR2a^AR8c^1-Gk|9n-MY zzBCaykcaLLD5paXAm4Gxt^94*WazhFJ#+q*GwGb5N|{5%|d|L!4KAY_5> zlnsol2j%B+zh1&rG~J>Ec@QHr1;e}`Q}9&u2Z|r)kH!46_xa*{G=7faAhbXrya2I1 z%{p0yu>%T?W22gOxp2b;Ddeq0Xag+#0g;C@`z0Q@MF|Hxj7=R`M z0YXRhrXgvlZ8P%5=*xVlG0>UDdso-(cE*0Ans$s5j?CQV(&V;!l?2lY=#o(~s~}vg zSq;;46SRnwW*97HS0GL1iG?rcV)xy2IhH1g`Tyn}6yvW#BD?*xIst9pq;4hUEhBOuAk1rD7q4DFYMqouK*T z%v{oFxm@*OE(RdsW@7&7&Heq|`_QiAXNt=xCxmvrcS2~_dnbf;y>~)r*Lx>~cD;AP z8Q4UY+GOLmvqfvawoo28RYiKtAgR-Bp7@HXGw_Wpm|=Cz@=$Tc1F8)nX|=#Mh|ckc zB!U>EtHK!Wo&trtID&TFjCEdi)d%{ipwZ{88MoO0>fKzR@&wCLoTwq1%(EqJ0det+ zurQ&D>Vsc!gtx;0vh4ohLegu34&dcB(b$iL<@=YH6*Yb}QG(mKJylenPFrNFa#hYU+3Qs!bF zN9Et)az=Caq8NzO@%p?(p*}<@yK|bwLV*iawMQRo;i2mc2ebaKze=hRie197#6866 z#M)l16lIN|rxYM>wpp(@^*KXJ}t5?qAj z12g@o^1ndLMSjy>b)^ji!9jP^HS?{K9VI!96|r@Tti(wpUaOwLExOsX^3A>xrLcGa z-2~(;jUzabdbOkRN2?h6-{X$GV{Lap+ARq#?(@XQ$6T)W7B?VZ%$w5HZCTCZq_T*;*2RF%fCY zuyuoi543xP(yEA_A4M#aMhT9nI;vuoTSrGHYBd5c8e{!dh=-pdkZ*Hgc`1~!ZJ6(F zhTeh1E)Xn66OwgD{lR8IrWz&;uQ;;vp&YO1%3@}DX1>@Cx#i~pCFvcld&T!J@<@0E*B8H)a73Ug(Ej-|?a%BowTKSrg=-m@cH;9;v z$v%x@MM!!UMJCk%On(4m8ZPpMs2^;Rzzi?(6cNoM#O>1kyItQ*K|4`HT4cbKte&M= zYOo1bIZUk5$!@-&^_i@m4xge9!|L+2gf;}>^0Xj4rVz~Jm^U_ClASETw?&E&-Z%gJ zw0(z)cXGjqKZEvK*+r)5k&=(cKzr1;h#YWfi#rTAYi z7?5I|Yj|9;Y5{og^@ze46bDW@@o!>;E2?RFIt53_t*~9T16fGNuor;QJm#qAgdgC! zXqe6w=2j{l#4l;%wYDlzyWV>JwkTK&&ddCYA5kv6kzT<=f$%!|m=i&>m<<_u0Oi?7 z!d#AHujpW7mUjE0el;-Tej8h7Q)FE zjbRWo!c|5@IdG(1<{G9_MLdKbzrZs2nQapzbSaTiI!3 zq~k<-Km#Y}c0`#JW?r+X4#Ljs!}PtDS54+OSG_}Bj|!S- z_efO{_%k@#?L-^e?Lf=zj6Hy4eluFY2A#5^$sgicpVEgYow-&Y@w)2h80|571`$2| z;iOZQ2C59HAtm`VO(#TjCPe77DyOLd(sZ64qgYA~>!S#p&KQ>mf&wVo>@%09me~dX6IR2@?3pzyS+u8mstuC;dp+fZc()YO#0So$2 zY!;Hg1jn(jKvKT#Uk%gCi{!ZV+LK?DIuu5!KF9`z<;GZB;N}O}wv=cBhDAP6dOdor zNvqbJgLL>Lq}7KnR0p#c@O9U-K15Aqq4uhgVFlrG%gqq`;KVS{SJM+Pf4-Z!lg%Yi z2lqlpZ01=(yU5e6_&}$G9U#XG9K_R7RPe>%v2KDyw!-H;G#?$RN10SZNgVbn{-ZrI zXRs^*cMt1dXYXbo!x7Y72ABh7J)7qSl;^8I3i{( z!Krh_0;DxC4Song5oVMW9FxY5Mp_JLh187Aq*tbabwC>w)Xo#j(nv9YY_K^GHxe!i zy%=YTCiQ3uQCTT!nC}~9J(rT$X>FitqLm501wGoKfudXCdC#(@X<-zpK*iJe-g*>E zDX>K*+el2;Xk+J(}Cb(<1tkl>h*js>?^!5 zj5@UH@{8C5Z_W&(a**%ub&CpJmS(Q`>0`=WCtME;;#&$*e6E)V9+a3?El|^q-T)To zj<_d0sG>|Nl@57RJ;r=hB}MHw3Sz0{K1jv&1vueOfSRe>X(_7~{GbyqW=^L#NZ^zO zkZRgRc3wjDU0R@M9^mCcCH)Fu*&1#&qNpX^Mp+UlRN%GSg?W7yOa6>kzZ{`kJV|r= z*fv4swsqz#8awr(DEO+~6pkSDF}jeP8UrDeLav67VGe%ZhPQm6fhF;=;e0tZ6)_F< zP?L}b5}$L`1`5;i+F>=sjk;H(39{AL;1HtwLFCJ%VLml}$yL%AWw=Qd9wzAnU!tIb zsedvpS1Eh&0>y~jfa9n}K9lAeYsu3gAlL`?**~*89|YgngxY7C4CycFgY*eoq+%+* z#yGXILNf8!K05n%9IIO*Qd(gJJ#mVh$_S;QYKcg0<4ql?=KG&Pd*TAA*t zOdoHBh?ePM0u9~x)O2L_knwod^MhMlk|+neulLn0EIU*kWk>-Ob{L2jD8psRcPM8b z)yWqJB`qEfw#(CDL5ycJ8l-fZJp;k3UBt*y;|4jmD9!^_hHMcMENjXhzIprhqYUjo ze7OJg(EIf8@$(N4y=^%MNiv59{riV^Z#mMBkf!-}6FkKyNmH?LIx6tEoQWqH2Q4q# zi+Z?t97S5aMR>xd-lP=`U?yyC2ywzUsUSpy68Rop6%DR3DTWukMoMh z{D4BJEFqeT4FIvGK>=p%RFBNnng&om08)a+pQCs!g;)u9Pmfe2_GaO-HcQ{2E&Z(P zcGjuRpt_&QYlx}a@3<>~_IcpMSY#A=gCkf5jxN#0cCI zHwf|X-N}Kx?yL2DNd@y_y+qr}(Ccx?pc@b=X{JUkux6S@1**~erYz!)fo(cioEt~V zvntIHhZwoJb`ux_t+V;{$1N)j%HaW}<+7)y=~zZ;aSkid%iZXi z%hBFdv(-|}?8|fTXOW&T1jqAxcHDh(6G5 z)4`>_j>sb{6~3Gn%%rP;k+2Fu&bLDWPp6pKM&rSf5v7dZCtG3NQ7d28u9!P+j@~#Y zC(lT}R*UJY9`j3(xikc`K{2LX@6^t{TU$BiD}mkeAS*>)3IHrvCCIf;h%7G&T~VUzw13Phwk=~b2yJ0qhbei_6g^iT;bok%-`8w_H7rj@m1VKSsCX7bVFxTO zNUWYs5hKJRpI0M^rVDI&yw%aK$+%DP#6h~fWCARJ$p$$M%*F_cg5Ta3-pd^|DYxD^ z!E{rdV`U)1#$|{3Btm3s8=;T%9lB8%sf`-ONN@^3P>)y8klluJ4$oox>T-h-3!KxxS)%9CBKG_sCUJYg5M#Q5Qi;)jT-yfs+mL`j{!m zZCttD46R)pC1S#NY6gzgP#=Olg@J#og2tfdh%SIA&VI$E6bmB) z)L_;0DldQgmpRnoH}^l>vDU-j8&lS>xy5PbyXrJdrGrA$9*!}g8hPfV6lH|@95+M7t{tDI@ z1YqAhy}6LnqBS$(6s#&hnruax)v7N18Cfpo2`fRA_0-C>_dnjh{~uMc+s48gCxWbx zI=DPEK>%;> zG`J3bqi485d|5ud`;R+Re8MMRT;Bk1QqqW)*J1@t%2eoafk{y|Ck~-|3KdKvbc_jk zUCch>q0$s)D+1#_j36n-mF$6$*8_zjH5acTdWd>wLAKkX!9#rlN{FTsy|q%RGl=pp z%e7Fxam}iL!Hy*x47U4Xcd!=Sa*`GS9X!~-Ej+~8e%*5TGx>=3oll|(S;>2n}c~h0T7CyPk@ePk+-zT8QI z1kR?tw1#QAj#317J*~`^4UncMVlVZ+mOmN)#MmePCpRt_A(*Y{(dg_{4zY6Bl0gKt zggL*LPeKo=Q9)%9oVAHd8vc)?Pyv0 z&Nz7ye3!398_aSZBPID(jLyk%3B`B(f9$;nm|a!%@O?<=z4tQo36SBoX@rug$&h4b zGBasXhC4HNLL`k8LNC%qK$=Js5fBjRA|g#dL_kD91VltYKtwYwh1Y?cNFe zU*GS0-sgM1JP-V4oxRVw`|Pvp+H0?!4zje$3NLA84b)u9MXhqdMzAvG@Aj6D)>y|b z+bdZklyqO`bu8{9s420tRMeU4wBE9bs;bznRG@mVI5!K!tO&>=rIg2!MvoGfQeU~} zv*;b`Z7GaqMPJcE#Pw?ln;I63;_H?1MUc9NzOH%{E4EDHN5|;I(hI)s&BH)fA)KLU z-1=1ZdAW17Fue>EU&^Ki!4q)Rerpznrn)kVZtIz>1I>iS${Mq{U9La+D1I$!E+YF~Z7%F5 zoi4B9NW%x&8-+&uvP#!1JNm_R&UI9>Ex^lZUIrzid_;lVoD6F&RYki9t-;l&+pxRm^Y8W8#5HV!C_2 zL_~Ls&lddG$hMkfX|gQ|K|_waGt`<7qKiue8K4*iO3Zuz0&3-4tR9aT)k?U5~~-vT30b$RmfRsaP@{} zBd)wnpSJ3Bb&|!FixoTNbP&_Wu4Yj=cdJKXS2VP_5IwH=*__<1x45&7BH1O$8LQxh z6v19dTas|^sW>1_h!!L4z-1$AZ%>O`&tyZK$jLapGZMqI@LsuYMOzDix8v}|F&aa2 zGK1~0_S^BI!9s(L*ruhnnX1moc5b-;(Y~wRhgJ+D6hBxEYm%l-8XwjC#q2}M7qa38 zQ*Mz#?{YJlXeg*XXKQ+>s1I}g-({Yo&Z%OSALgq{=R_&X4{7=IGwSww*{s{vB(_Rz zdRm$E8l4mRCRRIGE9n1}CeYtvceookm`2XxrG@))(X-9c&gm4w#sVE;Kt9vWMfIAA zu0%OqGIrML$HZwy#N|)4pQtLCKZ!73oV)u{ULzv?u^pJh)@=8;FDh~5x^g&VQfn`PAh z)unN(G=kU5_Vbn(vdpc_h~KiQ6UFDx+>-6b5Klziu}e}2dYd|&0iv6(mmAtuju2mP zYEuWaa`5&PQHF^|OsljXO+~9x$w>C=gcq3L*mO)YCzT3q6qX9Hi_J-al@oLAHZ7&}`z&(VNZfpYXe%$1HA-W}3bDLyJF6VM1et<-f)pKu@?9;_})?rf^6w4&`xK+6- zhGeFYnIR4j{S&z3@)@XKJ0sciJJUvZszOw|}Inl^rmV$DENADmo*H zN3hrPO4aNXsS%=L#^tJ1i%{PxLG~K1Eb4Gh^+9equR7ZOj`kYei@GdH_E2KpEBf~- zV&$X_vzk<^r_L!Y)6`-}yRh;IR;3uP4J1wxHihn9Mobg7DudZHIfCXmRSz!kv2=!PaUE^ZR+zo zmwg1$6VeL%0kf4^zpJl3v{!It+00FBr>C`lBWSB-BWPJLCC7G67P_lkVL`HQ=9>!H zArZC%v@D4rD_1h9m^@hy#-1h?>8ZnPWfPVhC}GW-(^BOtngWDj_Pl7vpp-S+Rw%Pc zS4~MnwDy=PcN&wUgUtGrQbR( zzfo1K1z0mSG@8=YbhVmFw*3{OxI}6`$>L#GuMMW%pO&2NmKHgOSI%)2Ck^5m!bVVB zGTp8Zkw!-woca+a3uR#v-&xnCN0vaX%79r@(yX;^>VVp+oRQR1B?FLj!? zylnANqOy*SP(|HP7-rG+Q~B;97w+X_V3rEB8`9ledT3c5ZntR{YAfTZV*?UC!AFWz z@rTQX3F%*!2zH~opD^4FQLq8L9|5$0_*v~|;Z#YdahruaYIvY0yhpQJ4xA{9Csy?koJL4i5 zSWESlB}lcaX4E7qf>;cH(Jqf?q}1fwoEM8Xw#*sEX=(nK58m1&V^z2jisc1iCLjI4M-_kVwqhY=vz&-Fpx=0 zUWZbd1`GqV^_ePNiUmalv|AKnNoT_DW9zsiG|)t+!lioTP9X--F`uGjLm72PvKrANY5 zYdqXOn`Va|3RZ5L95XGodA{yG@#{zoI!1_M54K*<85d)sh+uE$b)4Di_%wGn?`y5I z*&IX1!^TvJxobG%m9AW-(r&=Mi_D1=H_Gfm)=y$K=Cc1RZDXFNs=70je4iugL0z?! z4Pu%~E%Cf*g$VYR*5m2Iyd-S|Gm2b`+xHW-C)#6)##8qR$F~$zj1c9eUlL@aVJKRD zrd$8|vI&{>R8qyXt#CS+_)sp^5>$?Ws&Ja@B9|&8{|o2#@mYNoZ0WZBoK16QFPO4m zsMJ4kN>hsrM`UME)8q+VwnT{(k%pk$hw|Tl1N2hFV#)d;m@k4FT zw>~XqejT=$=A}G5nnJz?7hL{1e+#V{Q?cm`SPY+>$0Ym1epr2?TTfzJ@%viBz9f?E zVPQeB;UmSwJwdw!{SLOEEGzxGk0#Nmq{1wZ?8DK0XGc5@%r&pRXR%U}v(>}2vO2nI zsb!3)v&C|?ROow+p!g`G(M@Gs!feds)*fphd#Tgwj zO9w52=Et)`mJ;>-Lfv` zC)3i~GO5+6UEJR;w`APdE3!0mJkcLefnUuWIy>6}Zq?OU4aUBRFD!Q4t*eN!B9yqw z7ZO)lv8|r1&C|puh8!#y_nf=iK>+UJdo?e_g&K+m1Pqi*bhO_d>SSn-yqe)2bD;LMCBqBPh znj^NuXGxaHvq;shob(z?*4Vw9`X2a3*-T7V-EzuX^+_Q6DtB=uNM zi?;uFO`fG!b?g?cIh04SGHV5fX)tF8ddZ$_ouDqWizOgkg;a6tK`;hmMcXzM_$H*M zH)>AgZ+nv6;@~(9V1ijO7Y}egbKEWZ2hk-tzd{ zaz}@A=3K8$>ObKUen_Yk-ZabOBH_^e&vxKvpr;>_F@=)MlwwRZN{)kXx%p z3US*DZB!$My7qYyEFCfiP=&eESC;o(<$5iF^C%>w_NGvogLw1Cg-*p-v7HH{71X2`aK&qC`k+TQ;p|Bv7 z1>0@OW(sY8qP1KW+Zvy0R{A+@dR)8#l}53w4V5Gxu1%B=`+}CtwW}kvW8pKtY*QvP z>`F~p^dr^0;@*49(v?nCv)Ym+TQSTBD^*D!WckVPEU(&?ih36pVsWhrbDk(Fj*fkh zMUK9DlZ~NV39y9(SCZYH4sksu(W|OOftDEkg?m8KCihHZYQqgc_7`PT?LiIx`i$ZrSkW5n_fwW6DC=$*83wPZ*(TAFH)_P zT5wWg!`7qnbvII%%Ar~wW_{5)#qQYq_NI!BdlVSHtIVs)yaH<;==L@nI8V>H_DQ>+ z&<@MZNc?mtRPj(htt>==u}_|tE=-jF`hCh*qho<~i?)Kz;$&okO#Vzy=2}&0#Ns-% zvT$wD!~)K&7CJg7G(<*l;Uyc++vqPeDhV|#`kP^pr9+0wS`$=JP_6$ndn@;c43mA3 z*+ZF=&CWiItP*iT6J1gG_IAjTA!@CZU7ryUuV_66NWzwnk&0m+EzeZ>L*c zRK?K72U1iMraxUWdT6Q2);eXV>F%xao2tzeZs|5M(z%sI^mV~6n_Mp*&K4v3xsmmUbegOXiT}KzpKmbI@YV$$c15+ zaax_(3;G4RS9`GQctRBt4O$||9&1fpXm`@qQ*L6cP;jgDf%=C?D947{}$kvrDL`?C?SMq7;k~tudXEo*g%u7{R!ednwfud{!n_M@+{R zi(|i~qg!!eCH{eBJ<*yiJ;cjYo?)w2QRPXqrdrhIS$%CeZwKQVjP%vSnyeh3AZh7m zGHO2~862B`ROph!iHi%U4r|D~LnPfKSqCL_>V8r!{{(9L}S57eA z^afitPL*mRBL?^KqPqwkP04Fk>k3hHCAB+WwEn&(HMMqihMV&>H}ryRV;NJmPnCFN zkc|z_Z-Y#lnF{ra>2wdusqmsV(viBQ`L%16F3?$?u-~gHE?8xhq}y83h)3pibV|?H zDISy6;g&|_iP)pMCnDGr{SxKGzK(VVz1e7?Fs}5MY+O!#aHD=z2HP1Rs5nF8Xe$t^ z`P5Of4!q@5&~Okge_LAgbt8}KZV(@n!#Ms>+k`=gJMO!)tFxnXx{Si4RqyCj-z?L+ zb5$dSb#&#V!q{fCwD(>%d83t$%yH>+;tE^|jLNPb#B&f(C|cs(0!y^IT3~G@cE#d_ z-C~7(vAQIQ(?;245!08rN@tpW-CtFrXKY$+AImSqIjemyMP6iPXt+H*Bfi| zL|+XwtZd(U=%Q4*bx($cHAIiL>+208Gtk$c z@*x)0zFD_eLCR`Cn9Ql2^>$CO@)L=!a;dSaE(hD@|9JNn z4t3NkK%yy*SwFFS>%AgW_Tp*w0^-Hfa?o`{_{u`Cl*qwp()5WUQVw%ivSiVmfu&1I z{r%O|3yXt?l!kVzD$boVdwyxCI;$TeJbuy-m)urmo#^PP)4i(Fw1K<5u9!RbMlY|D z{i6G#QmmwVjdzP-gJTDgL?d$f6jJb{*$(@7S&S0bG|_BEWD8Wg2DOXOK4-ah5k!bS zvNQOIEyYNStY;dIG*?N7*-OV~g!bO?3-;>j4y3iG!8tZ{FXgI@R;QlQ;?k0i7CSAa zC>v&^=~`N{btY%(EW*Eh-w@1$n4xJ8KoR*WUfS}lga72#yT;X!a5(Hw>g9DoaLeBpF2fdPs0?= zgk+_t>vfZPc#61{;9i;Ls&{L~nU?WdtJQ>kVyhlEpU(JXXe{GdQSq&t7cF1HT49z! zk?%=Uk^6HpMv4>_aQx?H6G}Cves-KKFK@4g6#|ZNyu`;=&6*Vq9rnkZZnIT3>2+Hp zvQNsU32w~m_xgtJy4C+SiLsM78!IJ~5PK)r05-|;xmx0Pw#-W0P#$VG`Nd=B&R8xv z0C~@>B|I1sojl}4IZrYP$j^iZ@cU_+tH_4%ou{{#f z3)()13hlo2kW4${R_f6beLKClZ>v%|`)Ge5b9}c{DdV2_DavK*gki5B`glEN*)JB_ zEWfY%Fl|N0$OmZZol~l^=#58>IhT6WTUP`iX_q6ASP_im#&5o^!wD)CPBg6_xCL9H8A6C)In*Cp#FJVoB>qcT{fJX)~=u9OnOc_Ux zec6ReM_zmmbIV$jK_8bi%ZTI=YMv=WM_bD#KzUX^ZYB$h>4o zt}-?=#)zepblFi$1mX}=Mu_yVcIuH zM;KpmOB$w+;JcvBEYoH7Y~xuSX!#M5_-#p>F{c8fa!S^wRnqo3!mud1-$hf!_tF~V ze6hFzDHRUwJQdE_faug$whp#;$hICc1c_g8Us5y(s90p6Sahp0jn@<4-8fR`Io1$}jZn9IlVn#P4{^_suF4%pDjODh+jN8~n`d01iXT?m zZ^1HOjD<`7V_A_j50(AEar02|3oJ<##qbeJN=<`o!%m+Fv<&5$+`7X9b}uO7*#LnA1V#YF8LujPf!cF?DNpc zoc5n(rK3FDvLoD9p@u)~t4QWxr5JXrwl88?C}TJMA2&s2S;^q=4%bxKBrR&S{MOs# zI)*5*RfizHA}(gKKUjcsqORBcrNBt{1opk+`u1UXk5V!e@Tm}ciBxVj|ncjdN@ zHkl+jkMbPwJb7|g=Y-gx=<_VZ-qf~6x>0RednJ+MA=VP92dm!6 zO_N6QZso%4(KgQX8wARf^XX7h;~OGrxXS$PeW4Q-y(zUt#+KK_%+Tv!>p3=Ua=bT5 zEQMNQg8w6wDqhmEjef6=_orl4+(L@S0m;c`EVF@Nlex+Ae2V$)q=WWLHJ%Lq#Z zCT*^H^Y(3;1S_%9g6P2#RzS6h_oqw{DyqGnUf1xb=0NMTOsVt;@vuU3(71b}oIFD8 z=iHAWMDObsNpfNBiBGY^uqfpmRDhz=OVQ)d^2r3mwe9ZZ-1y(Cd%{zuTeOX~RzY0n z$lv0oqpMpl+ViwTYsKjmjcM#}3)9}uhU5FnU42g3pa)Kh;9i=(yW+Gf471l#6{__X zc9gn!B9%`pM;*2K5l%)nrTM{>F7)dFQ+8aL&LdH=G{Eh;Nd~)lsB`+-lXY5TFGU%L zI~T0{Yz0gUgPt)a8~r7vRn>ZIw98fZ1~Dy0xi$He(3hwrKkl3`n=ABnWpjEAYXfTN z@Pu1)SfpzWmD_IT;HaMnmV2VzYHw4orDTQeiDYG@M0x zIq5o|f=pM<4PtzWNp8cmT$c{ht0kejsn#{)<>B@&uJXyeZ%U{*XZbcBVo~igxUstP z^2y-b?SisUd_?+>r1NI?@i32Ny}&z@bE8Zb!zwJ#b?egZxz?A6)2Ip_pt6ahEc`eu zr)%#{o2Vo zOUGnhDnyewxobjuhnh2m1DX+o z@e=7l;zK9CyUtg_>4!9ZD%q{tNX8W^dQm%n)Td>^mIG4jo4dMn*{rW;mV47yZ8du* zR{0>?G3u(Wl}_8GTlIu8_p+`Hi%s_`4zAn|_DlvRD;4AL%c9v-Yt)V@jcy+9Oj8>r+qHZ| zRwIc<+j^f0!E%>XqWD%uzkU+w1+_v}h~eJQH2^vMI(f-Hr}ZJyX^XFuoccTAYtr|o zL+$<2ZI(=jGarr9s9x-k!W z0zba9`>iD6$}z6swEC2`ph*ntHHIy9?`i`WHNs(Yl({#TfmwMsBwFgSuNc?W=-apx zEZn5thBfgEs=0S%i&vr#@shohTdopcM!r;Oy>tCu6l7n@)x%J~oBZ0Tz}OAp(t?#g z^9&yP!xr7MKVvAHt7Xkcx`HkStlA68#CwK}kb3&@zU4+fUWer+dl#p4sY|IXVg*}D zt~9Pmt%jS5+i6nb&di!+osziImui=4*EQKWm}KfOvtF}E{&kPdXD9c#9CkB6E>L5%P#l1<5smJ7iG4aV~J-2gAXQFGP%nMMsqj}oIN!C@mo_K~1 z0$aN#cw0p?&q|bIYZ|4ekt05PCrp++@)!1%E2adrg24U(#w1>{Z{&stYF3&tOVij0 zPR~4Xo{&XTAepTbrt~%Q;24ePLhHCtm6#Z_C716_{o?x*G^dpntzn>jv!q@#={?>W z5C+D+0dYMsdvs;$9^X}K=1-<|b|+jrb111xbaRaMyk(nOGSTWdZD)mA=d3{Oj@bIS zxL1uEEQejbce`qJQ1V%Jz>8u_ce=~SEGuP1C*C%4tZ3p?#>B&yhlcXjg#-KV9ZsutPhm6|2!PKEYG#X&vh zK5U0wBRoPR8k5PovpDkUm8+3+b_<2NOrbGXD+`wSY-wz^&Z#(}JtuB%ACq}snaD`f zsGdT4W@tZIEt@~L+jY@)Rq}@^6PjCPSZ8Cv_~tG7Q2kMeB}^~5KI<%ND<@TcAs!O8O{Uvo zgo+WG9u??YFK6$WP@;wH4lB2zhJ`6XdAJoIYx8Ie(+e`{3f8`3mBtFCC>b(lv$+tB zsQFW{2fFkn_LJ4r?B2R)&S9lRi+4|Y{B&1$?_D&w`{E_@^10#c;fMDhT%6m#aM_}o zLGP;AyK1a*-CE?jQS*exNYwZC30<2Z5hqmZ-dww8!w%W%fMbQ71gbjEJ= z{TD0w6-OK_6w0Q7ur|6wj639rA{hX}u$uXj$BXO#ECq_llwO_Gb%f=FFHrU=Pc7vu{advbn z+I`Xl>!8ZUUVU=Dxi}xvJtLL8eDA%NYyuEBG2$mC4Bm4uHSeaBxIz-vxwx{{2ie=C zYoTB4%;|J7D%x>RJM1w?1=`bMO9|z3;BYO$n-aPLAGuA`rbchAE z3|ch5RH2j8|JPR3^$^6jV>6JG3-I#F$wR z(CEm?e^~BUA;(SprOC3Bie}m}iJO{bGdXphYl9(~a5!~Hd>B|&trlXU+8e>NMaD)p zI8sHpG~MAWL7g!6PM#EQu2p@t)nv3{u^sH;2s~vVmseep_X0Okr0|Sd0&;qM} zvFouf=oGZhlwYg~bV)`&gblc*U6KRDs~v26ssGcv^LMhGr_w1KFOEK1QZzyg?M#** zqpP*mw-WW%U3$&4BuJZs&=shZEj{BPRpKf}iM^)NF=V|~+KW~%Tq|zF61ST}27%ta zW9q8Kca5t~bZ6qpMT?4lG&O(Asd;|*2lYay=zjcMDVn8J3VV-qW%&219-FDD?Xmy4 z)>Dp$&B)MPJu%xzBPLt2T&0uW7h{8THI#xznzGLZ1%L>^>D6Z>YBg5z@mr!{Y^ z8|!@H+0wCUv0~SxC}}~nhq!^3^kO;RVI-WIN~@)6Y%82qnW-=`4rt{j>+Az>wTt~O^3H5AF@1#-eJES`uX|LDx?#y!bfn_Ak zG6a(SRwGon^1z@;9AWk7qO7{>^Ts&Nq*OfEOJ~$n>zYH{S;(L!{L76n)hN$=_k`E2 z*wKjFGOjy!CRHFRM6gVW4Y+0LK9uBS=!_foOJgmEPfNFf$&<~&v|>rzaQA0kPS}(o zLBVQVJV3|0gjq9hskW{^Iao_7-*n7`{ewHC(hK&k_H9`;$5_KlVR-C7aNpv~bVqvt zvv<%>=T3#tHD4)pGWs;bJ#iK37M}8qyPd`}#|S1D?oZ9q`+I8wJ+M_7!C}} z^_uZW_ElW*W!7AIh!_Ui4c<&b`h`x(|Ilm#In0-KCY0fZTUATC+U~X^>z<(Gknpet zbB4y)xN3fJU~Xx`+yw*0x#IFthAetxryhseKPF~Tt%LZqAtT#^rH9uuTH{94u923$ z*B^YD4G$ZUxyy(Rf)tUmV7FF_g$4Q%v!~GI51FXTkhQ5-+)pP(%Nto4PzUkLSu3m< zP8T9|q`gh*r*?wRuI`(~b;JZQE73u^>p)@`wGqquePJWGd972IXnyh3*-GRp z4m!fHvWktlq?=010UFj5vC%d<=?*a`A&?2Xmc1=;&zgj8fpq(~3<>;^%9qDsi=~PaQ9IwMNaU4Ebh8GhZo&%!!lN?JGsSuvepYcI_)VjIv3= zaw58fs&3hKLHAX;enQ=rsN2cTE<5ZoGNO_WR$5!68Y4!byNs&{Uww6JS_+u?JTxF^w;%Tifl z5NE#a^4o;%XhwJciXs`Y<14R?RYB;2BD(<8^4P7o^>@uR^kd!#7x z5!+{U^|XFLG>xJ?n0-9IH$im&DcO?Ca=6-~w|8`^Il9wd)Jaj1?ebc$t<2d@1?{!W zlF55m)v<_{sxHxa&s|U)nlW6m`XJj4WdCDFv-rf zxg3n`E3dOzncrpZOqrsF!MZ!IS4|e&5h6t;*qL(V7(98&5>V05$7zSuAoB~Xv3Wh6 znY*23GF?>7r(O4(?JIj3a;eDT+eL5aY0pZ>uA9^}Wic&ND$w3b8<&1IB)FYA^3(3< zMCqSodA6l`a7@);)%M$0O`ePm|g$(-8p$i&UxVM1y?=cB~tbM_*k)m|pCf}IYF z$_3j$DD{$fYc+h=QgIbr`y6{fSar;imuQmWE1PA3b_=><#tEy|V7xETWZPU(!rDRH@*oD-r@N5$^lwi%PFAEn8?4DJ!Ao|2On&DZ`p2 zRZHeATvVDpPQAvMrdDnoyEj|uce7U3@2l6xiSBS5w}?9pv&&QU?w7b}TBmf*t<~=5 z%sobQT33{0SxUv1-w00sHREF*{o=9WiVRUMNd1wzhcRzdbL6FCH7A(V(=R6gqKc@p zh51M}^^$f7X3U+ev#x6<$THprSvsUG_!iYIrfP4kVd4IL24EInay`86S{2GHGeqaX zNCvlhRMJGTgLI=>F9qIdlR5Q}KDO6&jF_B-SFPYXmyNw$(|THDnM91?!`dLGA0k^M zE&pP4;G8;&pauvzRYdDyWHXwkw^i%^tn+h!Xy->zT>V@rutSb^Gu?D~plsu7QZH!I z)7kQK-cQv+jb2npB;(40UEZn!54;#vNVi@b zTk5p?Ts*PPOGwdO&fd!z@ur%8*??)C48}S-oM@RMrfot=mqgZ1M~0#@?bOjVUZ)aQ zg4jgRwvyP;p=^%Wub0c~iddg4=frzgpDd1LQ>@(*&5lc=X>v3`oMQQdMshK)?&4m` zxlzf=%5gXYWqiqi#!HrGWj&1z5#;Q7=W4`TcDU}uUrdb^=t_LI6)hHu8xAwzp)xW| zh=ofz?CukX&F!LSv9li4^PcpT zSrmEwT`h71S@c_0*u%M0vXxAR+3!U4SOS-0)N99QyQ3bpol37dNkb88p3Oi)iu`05 z+)qdTc>4r~j@|^ot7K zkUc(1j2aht6(7Og-U_<3Ue<_5jhPdzHIqB6el1{jkM|&3r!I?SK7rZ_R1j1}=@n0+FByxaOBBQ8-WYixFd zq=GDZ?-7gp<_sR94rs-Y(){(iYUI=x+7^2g>u_5bRs+c}dzwxSOtm1ZiJ^*GmliEA z_4j40#n4R5qTDj=bmy~ILb8dVc<=30Obu05G__)T&6KJ6O0BW1?;SKefl1XxWkXu_IdKCnUS8wG>6gS1(e2-E^u}%qisLc+qjYjLsa63b`!U zeIVIX-aAo;K+}3Bm`*~M>?NowKaJkX%5NcU)S=0cb3SaS-mN!C8Pj%0Y$tRZn)d?k z#~I@Iicp;(anzd+B%9pchsufoALf3@Yg037oRE>WT^8Wn-(JNT_k>}S39Ehbnr>zx zO|om-F^1s;H7`YV6MbUEPZx$+qGYv#jSL<7hT3Uad*-$pRU9?@pyW&02{(1jQnw>-7@}FNPl}GPMqK*_)^6uf>DysfiBAt4YwkxN&f@ z$Nu8@QDWW1GhvaaeZ;MrTQgcS4W+i)a6FT8c6lUr!N%i?aG4ftD0j2 zw{1o`gK!QbsTU2R%x(H-bhOGqRkq#cXvSm^CL>F~DuzVn9b8;2YOKMzONUC;vOQky zkz<#{X{26^k2-Os=7yj)O>)2DEMF5t-HJ+DUQzc`eUX|r)}m*Z)7ndzWsHq~ zUadj|yU|(zX6h9ueqmS?UB0S~0=*TT?Oe0wYGSfV#OjMSW~op&4064N=<$=&$fQSJ z*G@TQMC#~3_uyz*y1d+u5CaXfxR6%Ah^=OuX>aS(<2$9hb)zctQyR!*l*P~MHZ}LD#WXF` zZ~qJHrmLCh;HZ}Q+AmjRty7+qnzX09DQakFJm%)^$r$oE^@U{*l{4+41jKC_D~2cf z8`qg>YAo}->l z+9REHC|ZoDqm*J*aa>{rK&^u`!(?_QMx9Obi*pyuZnrt4Sa{AKo-^Cp6&LC*#N*IO zxx5L-ON`ch{m@)ArHtE{CZiYiCKvv?MMHDPn|LXDk@z%9mSMWX?w0vTY~&G{TAAC* zq*_iUebR84io&-g?oybmx<{$Cne^Eyl!+2a4a{qOwo)L`#d@yA6$6BHx}AZhm>0-e zL3%%|UJZX-=kx6{yh`_ennzKXl@R%=GUJi>)5HlXWs8hY1X*Mq<8(+xZt4?H#T~79 zCD7=;ArZxPyZmQg#WdUUi)y6NGqt5#lBjKkWrjZ6?H0_1z7}IY8wT0WYO=BPsMI%y zL1AR?^ElRM#xg7%J*Ho{a-8U?oEE`r$d}XRp;-@m6@`tu*qbb;a63)7vlq3|21~t( z;WvgiX5W~JOmbw}nDGx#W3J`)yxOgPiGDYchN^@VmKR*p8&_05jA^TOP}fB+yJI> zKE|VIZimg34yMIQOMXC-q)X?hGb4SDXfjdkc*SNUqT7rjbL3j6A=SX8_1iQ-OcuiHW>nu}i3Vnm{SKsRs6=?qh9hwLq?Fsq3|?MrE8lGG&6 zq!VXR*06_`AC~8~Af-Q{s_~wgGMtPHmH-*KnZr@pK9c&^dx@kTDAYf7N{dZO0?V~2VUCpbNYI2gzNbcu8T`!XIUeC z+zjbu)ppbVwD(oRXKmy}m#MzSq*&{Y`GrGzq{s*-F)!j!uq6mPOm}XQ1;WxiCOW%$w<@1fv*55NxznHhUHLC@TkKpE{nn{- zO=M}ucW&Y@GxV4z5zS_nalcd0BpuJnSgS`4Z1L*|DsmXa7(2GbRE9E;YVM9X)HO*; zrf4mj+j^X4J-MRnBpG(8{Y>omY-h?MW-wY|#_p}_MxkwtWW7}*TTH?>HVl++cx?F4 zak1OwS>7Dy7_4KKs_`zlJBmXz1aC{uj%Ngb5%)l=i;kyB=7?31(Oh#AjjkV)37i=Aqz1wW3kkU1d-a`1Dt)>tEa0P+3Qx4wBf+2K{nMd<#g-l}h|_v@^tf%j{+gmui9B zEeoMhrIRw|7idE>Ld^lyn#QMb>E+%ivQ-;hXtq^p*%~a5R7-&>+vJrP;f8hs5+x@S z|1aYNMx){c#yXJDxUnv=G?@;wRK>bzc6!Q`cR91vcqCc_nPiWoLrVv_N;D-aleXq5 z?A!Gc)u`9)mkpPXe5&OQr*!9C59znz`yEqeilL*kUgz;b`%G*&(D{^~Ch~=@R(L?a zxm<}x67Fya@Akv0lx{GYA*%GQ8Mad~R3zEO#*5qrlReDiQ3z5To7M0XdWob+x|JIcMK9_$h1fz~#d(E|iE%hS*))h9b zz2d1WG_AEt>so6yJ-l|12(ONXcUB1BG#1|WCBt{%w-tAX_piOKBwZ}!-><#Cvy{f!m;@vV9 z$9;pY3VEpC%YUPZ|1X7We*1r#KmHxoS|wRNv~2mbHIufc-Q;4iR2-NStgxN@xl;Yu zDZ$FCuQFw|QR}a`;R+kAu*v96SJ-TY%~#lZ zgn#QFqk~;j@@~OKi7UGW`fmCgTJ}c;n%L;y=wNIr{@6h4KvYJ?Mv>*O(LqfrevQT7 zFpO0b{-uA64t7t)-#rz7_f-5$Dt^Y||0s;5r6>9~I>@HtXH(D5Mv>*O(LpX1KbMN1 zOU2Kp;^!@XA&iv||I$B32ZdDpLMncAr;A^kieHVzRQx?t z@%K!{-zyb=FNM$p@t5{*+uy$%84ml#*ws|PuA{i<-{@eyNRYoq2kWQg4N`J6QqzFZsormNuyHE> zCMh`@3Ap<=ONDQqlDA07I=YYkjSjYo1o>-puysn_CM8#;}b;Coo zjRV7l;ktoRX((SRS+wLs2gP!u=HQxKwx*%bkSo>aN~L_Rwpc8b#HgvElpPdz!^NSx z{BV8pX1OQdD9VF|fq{l%U3RdcF*i^@n6DpdXlxuTG#1rMaXu5jCzC&XK<{d(DGfH( z)eqGchZ=|Sxw^)|flPfvL#Z?{RLm3_O8Ex6tABoJ+1xn;{p!P2e2dAQg_>+>xKPT9 z&(^y7;f8^_#v%E|Os2LlP^zuV)Mi{Z43~;amWqL<{#L#wpOuJ(q55no(^y+ymv0;# z9>`~gvqJ;f;rh}bza^)a6_?Ik(!b=0g?3}MwkB7oFVzkXiE^YgSj-m+xxsY!vYDDf!$5I(V4$uc-zgK2uj$mm3(Ut!>N~8#DE#hC-I?KkfHE&~SVEuOPDmT&o7O<}0EL2c9ugPClxA=g-Jtgp@0Wl9Z_ zceTR}u3!uR<#HVzGDi*7*{YyOJPutthf?Qml$Gbr`6G+f_M$P5=H z7xImDnVeLLx(Y8nd*Pe~?x%-~b$Kad4GlwsgSGX8#fFT0QTdn+d1=gsGOqrFpVU&W zH-|~DmCVVMhV!-A+~82XG=lYmC8<-zd~PUTR~V?2#iH z=Rv?xzcx#+t$6urzUl!=-xB0XJrA^R;z(=`3pV^@CYyCh`^1 zEv>{7Us$B=C}isk(&kCd4>d~jSX*0HFO7wK2dQYjQpA&99J00|UsEsf^M&GIuCcy; zpfpsQ$<@^jNZTaUcOX-09O2&Zwe!Q$bz}z`>Kg|NlKR@l`a*-${vqjqhUkJN*`RE zlUw!77xL2m)XPuGm&@l08EF>^b@E?+XgDw5vcd;jT3n>vjnwVh;rhnLoRp7xxjkQ3 zEH*X_XC%9F^4rqF45V(JJGX!7V(qf^*7|(0p;0=ghQ`v6WOTkHxi=`iY3)!}zF?)= zv2bum?v;k4roOH|pC6JAM5~ANwAle|Jf)7+XY2FzxyID*iZ^z-v7tfQ+>DgtOq~oZ zN<(!S$?&{nQmJuJ`h5A!Ly;?`QpbF8pQLM2YJ=QnzUi6|nYK_4JuNL>90uTWsX~ae zR~6&sFs^$@{0eu+FS$tWFqZB)^TV5oS{~3gU$$J@u9GPXhDu?4cUjJqsB~4l>NU?w z1*r4AxaTPU>J^+y`5>3p-nQvo^Sev)W0^N+u|2IUKwdO{>VSWaT=q_0Wt=)*{##w9 za;;EjQLFzdu-V?Iac<3M)cC+=Q_773(Ul8zb~8#;hC0g_B|}}EEsWYbFfID1@quWc zT|5a2MvV`GcBopqQR4&CohT0qoLqvcl^QiZ2#$m&K-H~`8XpAb!ymxA;0y3g_z_%5 z2Kb}K2f;%nc{I5;1k z3vYyX!$;wB@OAhBTyI79{N3OLI0dTiMSp(?9tw|x7s1Qn)$n?FE4&vz3V#P*fqzxX z1nooQe=BQ)U{z5k=(s{Ib~C{c5$ysc86Ge#*>_Xgz2$cG>=R*EX% zSmaZbqDnXi`68vLBCbWg5B@?aDvc+RpHqrT~ z2cu+3LF=!^(>b@^U!|1i>YQAEPv^dx9-TvLI>##|{S%e)p501$|C!1v>Zj!I!7A?* z1Phh&Jq}mOcRF4v-|sY~eAjO(<$HfysXwBW^hhxiv!6=dC zCye#V7QUOj)V^Gw4*Q{{b3EUxEeH+Pg#LJ*v+^28uGOW8rYDi6Cv8=BHMAX-#BZdW5d>Q+Rm1B2E5kM6`fyXYHQWL20;MY1{ZdtoQZ^8!dKy&@Ll*J{1mRhcUc9l1vh}3!ENA9s!SoC&M$KAE#J(mgil@^(*0Z@Ftij-xB|Ru0ISPhfl-j;Y-ku zf8IiV4}Jvy4M$U6SA*-ojo=n=TeveE3w14Pl%%f_?gQK4Bsdk$fCs=qI0r6(e!O-R z@(J)%cqTj#UIZ_PSHtV!E$|L_4}1_l0-u1-z!%`l@D2Djd>?)SKZh%gcKNaf^yA4* zkhg-{!!dAoSPT8Qvk7?uoC15{EZ7fA@DO+?Tn3MUC&JU=+3*5*3A_Sc19eSNzx!?Q zPIw=D2tEd%gwMhk;j8dX_%8eqehODu(f!^ka4on2+zf65cZ9pbEUbrn!4}v7yWljq zA1uPza2{L?kAQxhelqeI@Emv{ybN9muY)(i+u>dCe)uqa9O_!EeuwAbOYk-L7JLtW z1Z})8_l=g0O7C9{t^+rMe*C{J^3HH9%)>^w4{U>z;8ZvR9smd79BA_dNzYQ`qu>ef zRCp#l4_*ZQeBx^4>)|c%4tNiI5IzE*fX~1e;LGq0_%?hWegZ#-E3NGEbq%;4+yrg~ zw}&==k@wymxfYItO>hF70(;>s*bht4&wma@UIveWC&JU=+3*5*3A_Sc18;!0!8@U! zH$8;>81(a}XOUloufjLsyU@?4K1E((73x1!yT(zHUmL*9;5KkaxGT)UdZ;!6dVdS- zfL(AJ+z%GvY&Z`thDX5T;K}d|cn-V}UIwp(*TI|M?eH#mKYSQI4xfh4!zP0&WX;hGStKHo|>i8=M5E!Wr-YI0)y!1#l@m3Z4K@g=fO^ z;6?Cqcs0Bp-U9D{_rM3?Bk&3M4158;4Bvon!}sAQ@N>A*YA#>bfa}3c;8t*ZI0o(x zYvDN91Sh~LuoupP{jdZNfrr9n@ECX^JRP15FMyZ8E8sQo26!916W#|Og1XkPE0Q z43B`v!IR+`@Emv{ly1V(^?&R9@L1A!GBiEN_#ikB`C@nlycXUBe+=(|KZkxk_!P3~ zA;t&6pOD{x??68fG=0Q)8Lu#JSsktiH-&!ww-fSMSb*bTGxYPmZsZy8Kv;rvp`Y&^ ziF^V)4W13Z1^qnlD&*_ot?*9xGwA1czeaurdi}+#$bW@?UiUHb=g{jd)?z-gA@uXP z?fg82eEy%7!!KKY|99i9Pr5dPRd8om1HGPPPvjQ3FBH{QFlsz{QlZz63Aw>G0Nw(B z0=<6d7sy^O`CH@{;49GdlH-HmBjo?U|7m{t@9}>+-~QWl)bT!h!B#j4ib^&ZH9iQu ze(#{b$+O{nxD*}@PlR8G=fH2n%i;H-*XR8R`7ZbXd<6amdOhABkza#!J z(CeMOe(q+j-vRH155ZqSub2Bh@)wnpFACo(_}^P2>%rEFA@-#-Ya(uUvlof4yG4O#SlfIqxF>6M8-O zilbb9tO5Nx&SuC}(CfErkZa+dum$c5y#6&Y_k#m)4qOPme)?GCli@eudGKQB_0rcO-voaQ?}0yuULXAw^7HUd@D2D5^m^#e zkVm6GT^+6mH-%pRyc6x&;neiA+h%}zz`e;wKD zi9bO86q@~t#9M7;mrv_LuOHqTc}KV#%)>pP*9%WX?t;_d0dNR8F|0Qx&B-D0(=E}z3<e--?%FD`rD0>w}LysU11J-z3q7939u7RgZo3Tul*{r?v2y$bT~W? zo&vp|_I%_^;P>El@Mh@sv-cuD1b+pehQEhiFZ&ndci}(bzu}6jxpaDc?E1)?!78{j ztbtw+yC-rB+!s!TGojbN4kOQlOW;xPYtZXmzlnSy{0_Vt{t$Y7>ravIhrfhRz~4cy zXZ0CP2gkq+tcQEUHaHpf!mq$0JQyy3hrwguN$?DKF1!eS7hVHz zgtx=H;e+r|_#}J|z64)~Z^IAZr*PC-E`L^o>%vXo)=;`Zmyd8mxCPt}j)7lR-`Goh zG1&`7jTieScraW54}-_Rli(TfTzC=uF1!Zb2ycgX!w2D`@JaX_d`R6vvC*JMwNY5BGpga3bu2)8PTo>=xyDhafM4-u~-&}q`gZsll_*Llbvkpf-4xR$fgy%zVm-Rj5 z>)_4s4tOv0_E^6{ej5HBz6}2Yy&cv+k^c=>WPY~>TpxP-t19H3VGXQ>dqQt_wJ-8i zI1~26Vd(9xmLMMmzXnf---O=I>O06+!ym%i;7_5qulgnO6VUIQcoF%}(A!o01NjrE z3pt~tKCc4ThTfiPOXTh0E-(ulptqxHN1g)x{)+vO2cWl~T8O+1`u!FsBYy*WyQzzj zuYlLWo1ov1;q9e<&UN+Sq3`(=d>;M@dOIn0Kkw}Cssv9JKW zT~sr22keG3;DONFL(N6D{UDP5Bau&lr$KKA^)2Mf;8pN?cq{bwPd`I`82%bQ1OEWM z-IMJfk#xMr^^f7_aAoFs-ri|LpgWhgw59B5|5q81p(Az5wAs+%4!6V@D(Az1Ug?s_L6kZ8`0KI+EPmu3}zkrX! z-$HMf^a}Eu@bB;=_#f!)k=A6sw*lN7s!tHj$7<;9km`{4f~{~8?1A3?=pf|Ta6ViL zkA~jv=cE7c1C|hehvN&z7PKey?xQD%=6ZP8^f*O z4$#{b<&YcUcsK!eLT^vBKk^{_Dm)Y(4!s@GDadES^Wi1%d+<7VGrR-d3m<~Nf=|QW z!tE`W!@W8g{f40tZQ z2!0n{18;=4!@J>w@KN|Ad=9<@Ux#nQ58$V8)H?M4a9y|w+#2o(cY}Gj2W)~9VHcbZ z4}e4P5V!~)0gs2L!n5E7@KSgs`~kcL{si6!e*qtdzlATrSKyoQ@9-n|AGp%GE}zzf z8^F!swy+xR4(s4vuoX^%J#ZF02+oG{;Zk@sJQ02!o&&!PFNfcUH^3jkyWj)x5%?SU zEc_#U4gL+j5B~*MSkL9ps&E~+G29C70C$Bs*a*kN39u7RgZsll_*Hl)JRBYePl0E` z^Wi1%d+<7VGrR-d3m<~Nf=|QW!{onwc0~f+&@K|^<{02M^UJS2**TS3NkKsM= z=kPK36nq~33BCc}fgi%p;Al}~Yd);AGefzXFT!V7LGt29JR!!872w@FMtKcn!P}-VX1E55h;`lkhqC5_}!L4L^XN z!ciN${8iRYg45vva0ng(7r`Uo@$gi57Q6sn3a^AefVaS( z!294Y;N$SO@CEn^d=vg1egyvmSK7qo)0%JtxH;SwR>R$49o!4H!bz|P&VmQQ*>FBw z3Xg^-!mq<~;J4xB@cZxv_#=21d;mTIe*>R|e}u2Wzrpw6zu*d+y8Kxct^+rQTfrUR zt}q81;dnR!cEV|Je>e!g3J-;c!{gv7@Jx6>6SOaU}p0EY(3#Y=FupbV?d2k6l3Vscq4!;R6gx`Tz z!ym%i;7{TG@R#rj_&fL_{4;zD{sVpj12Ih2{8Y!tLQMFbf;tKCm55fqig4 zH~{Csg>V@>7M={h0ndXM!zda3?qx7T`G83_D;qoB6pfff-m2_l9k7GVFz4fkk*QTmTP)$H0@|8Sq?q z5&SN^2Hps7hj+sV;iK?L_#Au*z7F4pAHYwc`i#IF&ZUVQ4JHp*y9_|5~;6&I3 zr^5r_5Ih7ff=9sP;i>Q}cmcc=UI~8yZ-GC7_rYJl$Kh|`3-A^ACj2}62>u7Iw6)8p zHQ@$ubGR+6hP%T$xEE}NlVA^=1rLI=;e5Ch9t}@~Ux(+wZ^O&s_u&ojNANEA0DJ`g z20jb_2w#JLgYUzC!4ua1eeK9tsbK$H7zJ znecpg3H%DN7|w%B;8E~v@O1c1cp>}_yc+%x-UfdP?}xvHPr%>77vZ1bTks$76Bumk z@@EyeHrxnq3Acy4z$|Ql`@nWM1@^)H-~gNh7s6%mSa>r020Ra546lIK!kgfa;XUx@ z@G;M@z5(BXAHvVz=lz00Sy;D&GuxE&k=Gq4`+ z4cp*k*bBb`i|}B$03HU9fhWN;;JNT3_+5Anyb<0G?}iV;N8yw3IrtKM9li}efS<_zHXz{vCb<{{vUr(dE;ca09qG+!j{D-C-Tv3%0^Zum{e92f^8JK3ocq zh9|fly2)_ysg@?oA;3@D-cs{%Yeh*#;Z-#fkd*MUySMX{0d-yW^3w#&; z6aE{nxU3H#wNoClY{qu|%z>F}HILiincHT)sG z4gM6~4}S@tfWLz;!au{e;6LCeP&Xov8ZYyIxHjAfZV9)CyTB}LfcwC9I0g2>{onwc z0~f+&@K|^<{02M^UJS2**TS3NkKsM==kPK36nq~33BCc}fgi%p;OH?fpH_$K!A;>d za3?qx7T`G83_D;qoBBGE-u|`!42USa632#W?((s8@9p8uor#>7U98g0Xz&I15biyz;oe6 z@VoFDcq6`06&GJc6Ir)8eA7{0=I@c!rfpV?g5+NMA!wV z!vo+DJOnO+N5JFZsqid#0lXAm34Z`@fj@!w!C%0~;cwv!@D=zb{5$*z{s*qKo6Dy) z;RbMXxGk)PyTdxT7i@)-U=N%H4}!Dde7F=I4Nrt$hv&d=!^`3K;SKOd@GkfOd<6am zJ`4W{UxR;x@56t=6~?;!Srx7WH-=lm9pJ7o2OHsdI01ITX>fly2)_ysg@?oA;3@D- zcs{%Yeh*#;Z-#fkd*MUySMX{0d-yW^3w#&;6aE{nSmW|(4Y)qs3|7INVGXQ>d%_mD zFPsWz!hSdm=fNfLDEKvaI{YTQ5Pk<<4Sxu4gFl7$!(YND;P2pz@Xzoq_z(CAR0r_d z&#VI1h8w{x;r4JBn1u~+AJ`73z&^Mi9DsA+Lbwbb3r~jMfak%B;T7;&coY0Fya)aq zJ_etH&%-~#H{d()L--jSopJfJI$RHK3b%nf!LhIa$H8XU0lVQ0cpxmnxo|N&5}p80 zgJ;8U!OP%P@OpSFyc7NmJ`8^ipMigXufo5=_u$9ybGUNW<r7(51^1kZry!i(T{;Wh9^csslsJ_sL$Pr~QmOYn90Hv9m7 z3iS*Jt#7Nrb>Sv(Yq%ra4d&q}gOW~F92k;j7 z6L=r|1$-R-7QO&qfp5aU!;j#9;7WOyPiw*r;O1~!SPgfFb#O1(3MauHI13&GXT$k$ zDLfjU2)_=`f!~Ig!|%fz;E&*4@B#P;{0)2-{t>h*I*MS?ut>6xD zSD1s1a6FsxDRZHQ(zz54-UXN za3Nd9wgUhG2;D&GuxE&k=Gq4`+4cp*k*bBb`i|}B$03HU9fhWN;;JNT3_+5An zyb<0G?}iV;N8yw3IrtKM9li}efS z+fBoU4VngTzrTInKX#tEGrMzlKC}1SIp^%mJV9EXfM2&U$RhHtfuv9Khim$Elpd#azXW+`;`k#xuOkTYSi8e8W%t z&Jg(mox(F3<1i6ZG6SNCL6Fh+p!CKa}Y;z0;h8x zmvRj^a~BWt1kdp*@9;5S@EyPKCqoqsbc)CrjK?HQ%}mV60xZsQtjaoU%vS8k?(D~* z9K*?+#f4nK_1wn2Ji_03kvDjsfATN>&42m7x&QxOVHt(L@K+{hI%Z`a7G^0{WDVA5 zGq&Y#?8Si`!SS5Nxm?24+{B$cz~em2E4a546Y{Sm%$pIYBah%FIT+CJ6$Q|6zV?4vlyv2un#y9-L?+j5i&?!8l zF%A6wjrS%jroi8a}P&DoA!*qehmk`p+c^SG32xS6|n zkSBPKS9ynz`GW8Gg+CdpM4(ed#$Y@qVQOY#P8MKsmSa`cVPm#pM|NjF4&@k5<}5Dc z3a;li?&T5w&WpUk`}~uC@o)aiU?l^6!ZHef;jc{2bj->;EX-1@$QrEAW^Bvf*oy-> zg5x=jbGd}8xrsY@fX8{3S9qI`_?&O~nLik^RG?D?MrT|mW-4Z64(4YumSq*zW+S#_ z2X>_xy)Jss#FkW+cXBd?sZYW@auHWC@mM zHP&Slwq_^xV1EwdSWe+=F5*gV;CAlgQJ&@{-sA&55^M8;q| zCShu3Vonxdah79M)?s6|Vn=poKMv&>PUb8w4DPU1{1;Bv0xR_@_pp5g^w z=RH2*D}LZt2CW(B6NZr)iwT&FX_*^>h}oZ~o^bGVqRxRE=! zpT~HHmwAg1`HXM)iQgHbR-jXOMq?Z%VoGLUcIIPImSJVqVneoIdv;|X4(2FMUH-wBe9wRQzX$dH-}*lzF(%_PDbp}BbFm;xuso}=E}O75JFy4* za~Q{R3TJZ>S8@Zlb03fLG%xWcAMhz(^CQ18c%49}aE!{>Ovn^W&uq-gA}q~HtjPv! z&UWm=-WV9EXfM2&U$RhHtfuv9Khim$Elpd#azXW+`;`k#xuOkTYSi8 ze8W%t&JYa)ox(F3<1i6ZG6S#_-3vlDx;KZkKFr*JkGaV0l! zJNNM@PxBIQ@&TXnH9ztjgEtOz3dg97&4f(B^vuS*EW*;P#F}it=4{6}NVHt(L@K+{hI%Z`a7G^0{WDVA5 zGq&Y#?8Si`!SS5Nxm?24+{B$cz~em2E4a546Y{Sm%$pIYBah%FIT+CJ6$Q|6zV?4vlyv2un#y9-L?+no*&?!8l zF%ANyu#aj#OHj=&-}rVZ3CSmFgoKhF;g)kb1*-Pu`H{wHXE@eJFpx3 zatKFr5@&J&mvbGrat{yl6ff{P@9_y=@dLjyXuCk4FpSJtOu%GJ%Ph>zLM+J&tj>CD z$~NrGo*cm89LK4g!^K?1joiWgJjOG;%v*fOXMDp?{LT>V1D(P%8sjh#Q!)dyGarkx z3@fu18?pu4vn%^>Fh_ABXK+53aV@uSHxKb7&+{7Z@(;e`d;Y^99RhtqGZJGmK9e#H zGcy+pvINVs8tbwNTeA~;us?@!ET?cb7jY#wa69+$C{ObeZ}I`3@-;v58-sTYbPC6) zjLn2h!Su|=yez`fti+mZz~*enF6_-g9LWis&UswQHQdZyJjfF~$E&=<$9%ze{KB6M z)hW;^B4aQflQ1##9fu_L>)ABS=bCvz4Tas}6O8~5@Ef9FNs;C=qd zzxX%*Ww6eHK4BS!zwlQkXF6tO9u{UPR%8v4DPU1{1;Bv0x zR_@_pp5g^w=RH2*D}LZt2JI5)6NZr)iwT&FX_*^>h}oZ~o^ zbGVqRxRE=!pT~HHmwAg1`HXM)iQgHbYoJqjMq?Z%VoGLUcIIPImSJVqVneoIdv;|X z4(2FMUH-wBe9wOvq+6g*Xhvd8#%EHdVP@uHL6%^7R%2Z@ zVQY3`5BBFUj^z~2<|3}-25#p*9_49X;!Qr_Q@-X$eq-?NfllEVm9d$SDVUzwn3qLZ znw40S4cMIR*oD10h$A_H(>aezxrUp$iwAjv=XjNO_?R#Fj$inbp?U;5MPv-dV-luj zCgx-T7H2tDWgRwVD|Tde_Tx~F;bhL@LayL?ZsT4a;qSc28@$gy`4|7@zYNwh&?hXT z@E88dRw)xSE@|lLvU5XL*IU`H0W?mY?~9 zA$tWnMPPKsWn!jcM&@9C7GqgfVQn^IOLky4_T>8C> zzTyXdWzgP%K4BP{v6z6#n3h?Xn}t}C6pW@kPYWf@jxEjDBewr5xN;b4y9M9$!RF5_Bm z;cgz{NuK95-sK;B$@lz+LHY*zgk~hhWPB!N8fIoL7Gw#QXEoMk6Sih2_F#Vw<5*7N zY%bzTZs2zA<58aGCEnx%KILnExwk0)4_V3V-3ROwM%7$~-L0 zQmn`ttj}g_%iq|G137}@IgN9dzUgteN;VXXNR|Xvv=o5yK z8H)*+jA@yLxmk!MS%KAAk4@Qzo!OHEIGp1+m2c zVsM~Sct&F!CSpovV0PwXQI=t4)?!1pV0(6D9}eayPUH;E=Q6J47VhRDp5%F6<6Zv2 zmweBE7-UGGPiRJBOvYzYreS90VnLQ*c~)axHeqXaVh{G`FplLE&gLSnN!rlc9zMIz?m*#$ytuW+vuj0TyRDR%IPFW-E4NclP5@j^Sj^ z;zF+AdT!%h9^vo2$Q!)RKlvB`=D!R!JkTdBqwp90%H&MPtjxp0EX9hf!TM~*w)~B~ zIFKVap3^v&OSqbwxRVEXoM(B3xA}lH}>Taj^-rJ+fj(gvnX#CF$(WW|n45)I zk`-8;_1Khc*qJ>!fWtYCQ#pr=xr!UPgZp`mXLy;n_>j-|hM)MIAw~r{g=aLzVIrnv z24-hI7G)V$W-T^k3$|xh_TgZT;zZ8id@kc!ZsBeo;z^$8HQwbPe98Cxhe1XM`h;dA z#$ z9~0;lj!_w#37LZFnT>f_gr!-DHQ9j8*^XV0c zOfKMZuH#nj;bETQ1zzVpKH)2V;8zBn5a<(zkr|5#n2c$eg}GUXC0T*hS&vQGhMn1y z12~-HIF)m_n5(#vJGh_6c!rmGix2sXZ}^Gd8De6fQ+P&W942B)W?**aV^Nl2W!7Rt zwqSd9WgiaaC{E-I&gU|&M=3+sX zV0l(!T{dBBc480q=P-`t6wc-%uH*)8=RO|gXG@X3Kr;TV;%nUE=% zp4pg}MOd1ZSd$IdobA|!y*Y>@If2tTk4w3Ro4Jbzd4lJ7m3R1-Zg1Uf}z z48~&;re-GQWC0duIaXyIHfAe!WOw%CP>$hb&f-F@;CgQ3ULN7^yvQ58&p-JW|K`68 zHZ{;EETixj{>tP`$E?i5!Ysv#tik$h#g}3>L z&-s?0`GX;+1v*7wbjD?3rea3sV15>3Syo|fHeyS5U^n*V5RT>~&g23v=Q?iX9v483B7@4t{fXSGaS(uxJSdtZ3o%Pt1ZP=MTIe^1Cj#D{@i@Ay$ zxr6(8jAwY6xA>6H_=cbOogrofI)!I6#$h6+WCmtuJ{DyeR%R_WWDB-uSN7pxj^ael z;CwFQT5jQP9^y%!=QZBtAAHI8{D(ni2Kt0%B*tWXCS@9CW-bt^6pm3Dn+chM>6wjrS%jroi8a}P z&DoA!*qehmk`p+c^SG32xS6|nkSBPKS9ynz`GW8Gg+Cc;cA!&4#$Y@qVQOY#P8MKs zmSa`cVPm#pM|NjF4&@k5<}5Dc3a;li?&T5w&WpUk`}~uC@o)aiU~>X}!ZHef;jc{2 zbj->;EX-1@$QrEAW^Bvf*oy->g5x=jbGd}8xrsY@fX8{3S9qI`_?&O~nLikEZlF^H zMrT|mW-4Z64(4YumSq*zW+S#_2X>_xy)J zmIwNTW+cXBd?sZYW@auHWC@mMHP&Slwq_^xV1EwdSWe+=F5*gV;CAlgQJ&@{-sA&5 zPUb8w4DPU1{1;Bv0xR_@_pp5g^w=RH2*D}LZt23-^A6NZr)iwT&FX_*^>h}oZ~o^bGVqRxRE=!pT~HHmwAg1`HXM)iQgGwZJ<+lMq?Z%VoGLUcIIPI zmSJVqVneoIdv;|X4(2FMUH-wBe9wOvWL=<7Xhvd8#%EHd zVP@uHL6%^7R%2Z@VQY3`5BBFUj^z~2<|3}-25#p*9_49X;!Qr_Q@-X$eq-?UfllEV zm9d$SDVUzwn3qLZnw40S4cMIR*oD10h$A_H(>aezxrUp$iwAjv=XjNO_?R#Fj$inb zp*93MMPv-dV-lujCgx-T7H2tDWgRwVD|Tde_Tx~F;bhL@LayL?ZsT4a;qSc28@$gy z`4|7@zYMl9&?hXT@E88dRw)xSE@|lLvU5 zXL*IU`H0W?mY?~9AvXm&MPPKsWn!jcM&@9C7GqgfVQn^IOLky4_T>8C>zTyXdWzfxmK4BP{v6z6#n3h?Xn}t}C6pW@kPYWf@jxEjDBewr5xN z;b4y9M9$!RF5_Bm;cgz{NuK95-sK;B$@lz+LAD0^gk~hhWPB!N8fIoL7Gw#QXEoMk z6Sih2_F#Vw<5*7NY%bzTZs2zA<58aGCEnx%KILnExxH0)4_V z3V-3ROwM%7$~-L0Qmn`ttj}g_%iq|G137}@IgN9dzUgteN z;VXXNR|ee`=o5yK8H)*+jA@yLxmk!MS%KAAk4@Qzo!OHEIGp1+m2cVt1fZct&F!CSpovV0PwXQI=t4)?!1pV0(6D9}eayPUH;E=Q6J4 z7VhRDp5%F6<6Zv2mweBE7-UbNPiRJBOvYzYreS90VnLQ*c~)axHeqXaVh{G`FplLE z&gLSnN!rlcDwnIz?m*#$ytuW+vuj0TyRDR%IPF zW-E4NclP5@j^Sj^;zF+AdT!%h9^vo2$Q!)RKlvB`=D!TKKhP&Eqwp90%H&MPtjxp0 zEX9hf!TM~*w)~B~IFKVap3^v&OSqbwxRVEXoM(B3xA}lH}>Taj^-rJufj(gv znX#CF$(WW|n45)Ik`-8;_1Khc*qJ>!fWtYCQ#pr=xr!UPgZp`mXLy;n_>j-|hM)MI zAr1vPg=aLzVIrnv24-hI7G)V$W-T^k3$|xh_TgZT;zZ8id@kc!ZsBeo;z^$8HQwbP ze98Cxhd~Yp`h;dA#$KN9E^j!_w#37LZFnT>f_gr!-DHQ9j8*^XV0cOfKMZuH#nj;bETQ1zzVpKH)2V;8zAc5$F?!kr|5#n2c$eg}GUX zC0T*hS&vQGhMn1y12~-HIF)m_n5(#vJGh_6c!rmGix2sXZ}^Gd8RBH1Q+P&W942B) zW?**aV^Nl2W!7RtwqSd9WgiaaC{E-I&gU|&M=3+sXV0l(!T{dBBc480q=P-`t6wc-%uH*)8=RO|gXG z@ZSTS!Z9jiGa*wjJ+m<{i?B2+u_ha^Ioq)ddvg#+assDw9+z?rH**&c@&wQED(~vgxOwCNp$pS3Sa;(ZaY|K{d$nNaNp&Y}>oW+G)!S&q6y*$F- zd674GpMUZ%{>^_G>`b6fSVrM5{FTX>j#-(9g;|OfS%dZ2jBWWFdvPE~a6G4RE|+jM zH*qHq@Ho%%3UBifpYtt0^9Mto4RngY=#0z6OvQ}M!Tc=7vaG_|Y{ZuAz;5izAso#~ zoXG`T&UM_%Jv_`)yujO9H(*)7jqRiatHVG7|-xBZ}B0Y@eM!mJ42igbPCUCjKf4s$qdZSd@RZ`tjt<$ z$QEqRuI$6X9L0&8!TDUqwcNtpJj9bc&uhHPKlqaG`459!2=ocfNQ}w&Ov*IO%v>zU z5-iVZtji{B%}(sW{v5`!oWj{$#FgB@?cB$sJk3kI$p?JO*ZjzD41O`tDIB9RHWM-h z(=!|MvItAF5^J&no3kCeur~*BBqwk>=W!|5a5H!DAW!fduksEb^9A4W3x6`yr9h{M zjKO$J!qm*foGifNEXS&>!^UjIj_l5U9Lh1A%voH>66n#ySeT_)ku_MK&DfT|u@?t&1jln4=W+>Ga}#&+0FU!5ukbb> z@j2h}Gk-ATl|ZKmjLx`B%v8+C9L&#REXyja%|>j=4(!Ih9Kz9@#F<>c z#S6U7dwjxI{J^gadNt4|3?nlZ6EGRmG7EFF5KFQGtFs=PvJE@4CkJpi$8jp>a4}bL zBX@8=kMRsI^A;cS8Q<^|zca+OK&SAG#yCvGl+3{F%*UcE!^*71hHSz1?8-hI%u$@k z8Jy2$T+1!o%|krN^Ss8p{DUv~p8qh&^+2D{jKr9X&!kMl%*@4tEWz@u#=306*6hR{ z?9X8w%PE}AMO?`Z+|GSG%G12Wn|#2he9e#i#^5&sox(9HV>2OBFg>#|FN?4=E3qaU zusPeY3wv`AM{)wEa~_v+4L5Ta5Ap=h@hb1|F<rBuvdr%*g^Q z&T_2EI&92V?8xry$Dtg<$(+T7T*39+#=Shk-+7TYc%OgrFaFJc8SGY|Pgq9bFZ`9s znT}bRhlN>+6HQ@p_IyvHYe#Si?- zpmzd&!Z0#pF#(e?EweB;3$Y|CusZ9pDci6!dvXAWa~!8~4i|G3H*yE}^BB+YGH>xA zpYaVp@jFA@4Ri|6XpF-|Ovwz)&U`G&GOWy6Y{(XD&#vsl!5qbjoWc2A#^j zI_GgI*Kjj;@gPs|9Ix^YAM*v@@e6-4)Pq2$h>XE_Ov2R6#GEX^;w;Citi#4^#g6RG zejLg%oXlAa6~y;t48~&;re-GQWC0duIaXyIHfAe^WOzp9FHFFs{Qu|A=r}v`vM@`s zJpcdqsO`8Ro3kxDvj_We2uE=Or*RG!aRt|L3wQAVkMX~4ks!ee1qt%s^3nf!o&OC_ z|9AYD&-sQQ`7eV84ZJ@zBQiSUFd>sOEi*GG^Rp;Rvm&drE*rBY+p`OMaUe%Z{K}xg1AW3UGGj3TlQAu`FgFXaBrC8w>#-@@ zurqsd0EcrNr*aM#a}_so2lw+B&+syD@gbk_4L|WaLxc!)3eRYa!$eHU49w1aEXp#h z%vx;77HrS1?8Ctv#fhB3`CP`e+``>F#FISFYrM-p_>%AW4}<(S@CPdtBuHpRVob(o zQl?>M=3+sXV0l(!T{dBBc480q=P-`t6wc-%uH*)8=RO|gXG@c(Yi z|LYWvQ5l;FnS$w=jd@vwrCEtJ*?`U2j$PQBgE*2CIGyvjlxw(|yLgZ%c#cxxt0)4_V3V-3ROwM%7$~-L0Qmn`ttj}g_%iq|G137}@IgN9dzUgteN;VXXNR|X9i=o5yK8H)*+jA@yLxmk!MS%KAAk4@Qzo!OHE zIGp1+m2c;=c*a|Hkd`jK(-j#FWgy?99iaEW^sI z#fEIb_Uy_&9L!Oi$Qhi^Wn9ZG+|5Hg$@9F%yZnPM`JVqUNQ6M2(2T^GjL)P@!_3UZ zf-J%Etj4-*!q)7>9_-Iy9Lp)3%|%?v4cyLsJj&C&#G8D;r+m$i{KnuB1D(P#Dq}Mt zQ!qWVF)xd-G%K+t8?ZUsu?u^15Jz$Xr*j^cat$|g7Z36T&+#hn@G)QT9l!7=Lq!U7 zipUs@$0SV6Ow7pwEY5PQ$~tV!R_w^`?8l)T!^xb*gnTLg0iWOOd_1TPV`5Sw2AV+XKr*STqa5Xn^ClByA&+-ay z^AVr(EkE-ILq-X7ioocM%fw8@jLgCOEXJ~|!rE-amh8Z8?8_k>%}Jce1zgT`+{!&X z%u~F;>%7M&e8ms^%Ao%((Eabe7KV`-iwT&FX_*^>h}oZ~o^ zbGVqRxRE=!pT~HHmwAg1`HXM)iQgF_TA)*SMq?Z%VoGLUcIIPImSJVqVneoIdv;|X z4(2FMUH-wBe9wOvBzmAvXhvd8#%EHdVP@uHL6%^7R%2Z@ zVQY3`5BBFUj^z~2<|3}-25#p*9_49X;!Qr_Q@-X$eq-?e7UKVRy@g{`#%4mMV0va_ zUKU|#R$@&yU~{%(7xv~Lj^qSR=R7Xu8gAw;9^?t0<5k|_W4_=!e&J7siW%q>kueyL zNtl|Mn3DxqoaI=Rb=a7#*pc1Yk3%_zlR1kExq|DtjeB{7zw;t*@IL?KU;LZ@GFYrY zpRkO=U-&DNGaa)s4-2ytE3yXbvl-j+H}>K{j^KDs<6JJ`YHs3A9^i4FxazTi84;ZKH&ALta3F&K|Yn3|cG zlLc6utP`$E?i5!Ysv#tik$h#g}3>L&-s?0 z`GX;U4RngY=#0z6OvQ}M!Tc=7vaG_|Y{ZuAz;5izAso#~oXG`T&UM_%Jv_`)yujO9H(*)7jqRiatHVG z7|-xBZ}B0Y@eM!mJ3}N2bPCUCjKf4s$qdZSd@RZ`tjt<$$QEqRuI$6X9L0&8!TDUq zwcNtpJj9bc&uhHPKlqaG`45964)h7lNQ}w&Ov*IO%v>zU5-iVZtji{B%}(sW{v5`! zoWj{$#FgB@?cB$sJk3kI$p?JO*ZjzD44x#=DIB9RHWM-h(=!|MvItAF5^J&no3kCe zur~*BBqwk>=W!|5a5H!DAW!fduksEb^9A4W3x6_H(m z!^UjIj_l5U9Lh1A%voH>66n#y zSeT_)ku_MK&DfT|u@?t&1jln4=W+>Ga}#&+0FU!5ukbb>@j2h}Gk-8-@<68ujLx`B z%v8+C9L&#REXyja%|>j=4(!Ih9Kz9@#F<>c#S6U7dwjxI{J^ganj+9A z3?nlZ6EGRmG7EFF5KFQGtFs=PvJE@4CkJpi$8jp>a4}bLBX@8=kMRsI^A;cS8Q<^| zzcWP2K&SAG#yCvGl+3{F%*UcE!^*71hHSz1?8-hI%u$@k8Jy2$T+1!o%|krN^Ss8p z{DUv~p8qgNsz9I6jKr9X&!kMl%*@4tEWz@u#=306*6hR{?9X8w%PE}AMO?`Z+|GSG z%G12Wn|#2he9e#i#^9*~ox(9HV>2OBFg>#|FN?4=E3qaUusPeY3wv`AM{)wEa~_v+ z4L5Ta5Ap=h@hb1|F<rBuvdr%*g^Q&T_2EI&92V?8xry$Dtg< z$(+T7T*39+#=Shk-+7TYc%OgrFaFJc87ys}Pgq9bFZ`9snT}bRhlN>+6HQ@p_IyvHYe#Si?-py>mB!Z0#pF#(e?EweB; z3$Y|CusZ9pDci6!dvXAWa~!8~4i|G3H*yE}^BB+YGH>xApYaVp@jF9g2y_b1XpF-| zOvwz)&U`G&GOWy6Y{(XD&#vsl!5qbjoWc2A#^jI_GgI*Kjj;@gPs|9Ix^Y zAM*v@@e6-4ROUdZh>XE_Ov2R6#GEX^;w;Citi#4^#g6RGejLg%oXlBV$Q4}AZQRQv z{GAthgZKF-|Ki{Lm%*|G`h;Z^{=#3GoavaAd03dGSdleYpUv2ozp)nwas*<&<*El*M5Ce(RxP$#sag+;6zfr1ZH?M0TCG^IVr|iC zRkUdPytBVIOqa|UY1QHy;~1QTlhOSicm=~V@qD}xzl)b+J>Gz~;O%%f{tSPCzrqH5 z7XOH^;$QI{{1DU9lj~u7+y}pk2V+nC1|Eao#%w$hPr-3`Iu_$uI0Nf&E-u7N@d~^a zZ^T=14c?3E@ezC+pT_6$W!#Ey;(PcJwr-VNPBGjU55R7C7-nIA9E3yhBpi(su@I-= zbgaem@B&CGupb_aLvT3e;{-et6IhNlcrMPz#kdr&#Ov@T{1M)X_oMJ1SL*&s z*!!SP)A@PruKNzei3NBX7GW7y;n_F`7vLqh9IwGuxEk-kd+-5#7$3u@@HyO! zui-X)7k6MQw!0m%GiIXuJ0-msJ_`Hcu{Z>WV?Iv6GckeXScB){d|Zr6@k+c7Z^9qp zop?WPz+d8T@%Q)wzJh z#dY`){u-aeP52W28UKd=z<**o&tC`3!2R)S_;oxIzlq<$92|zDa6F!YB{&VM@w5KB zJD+xY=hla?{r()5--+n9dv3j$#QlYsK({|WgJHM*bL+>2+`j~uqT4UOmf=gJ_zr%EX*^HuaUcA$EZ3Ifo#b|JcaL|PyPe%r*Oz6y4z9xM z@n*aY@4~hCAa2Ab@ELp&x8NK2HhzGH*IPU6g!^Gv?14vMUv$fTFY0{-55(@+8{Kwq z0Kz2I1|rDx1IYg!(lIg?K4mf!E@Vcq^{KdvSN4_vXHy-TP$fev_MSjOVX2?vDp!4|H`t z?Rw{?)3RPCx8Kcu-`>;L>-DVPkKp6@G(L|n<5qkV-@}ivHOC7v+!qhPZg?1GVSgNi zL-8aWjT5mDr{Hv~#q;n2T!PE+D!d+V#@p~NT#FClMtlOF!5480zJYJ!2WVO)*ROWi z3HQUU*aMHizBmw%#}jZQ7T{@Egk@NTXX6}PfS2HMyard{YPt$=WsK= zhTHI6+<~oHCzn%4?2MUs2=>CGupb_aLvT3e;{-et6WFpHOfL6Nd;GGeZU^1-{aL@i z?(Tlwe>;Eu*)KR2bMTXnw^COYla~F)^Hjg zdw1U-c6a;xN#{H3*gnt2g?K4mf$lu#jSSz4Yw%uNkB{Kv_%uF`FXL8x6W_y+ur4O$JmDR7klAX@IdU2z42%qfP*m?-Rq#a@2j8Jbrb&IrPs`D(+kJ`E%kQo zq-N6pyYiik8El7j5_Y~-AA+y6>SXM_R(%NYnpG!d{lB-~&6wj=BfW<)#nxWN%(m(z zt^fDWk2L0XJFJtnk64c}=0&S^8a}k@;t);3q?Z|!Y1Mr7V_2j7`72;}qE+)*%W$1l z^Lquu^;XTd|GBs7ZLq^#jCq0ao2_~rI~evqC(+~a&(ka4+pY(CTqCR+_OH9>rs*;4 zpKsUWtY>(oRgd>RhSymSH)a#VFIe^Xw==xMs^ySr*ALb2YSr=>$gqE2P|Kx&VgEd! zT?kn<=S;7S7s=Y{q^0gwZKAH$WR=8g<0h-9rp9F1JF@a8j42#7D^Xou884YICBePJ zaz+%|F}aE16=nJ!%xbKiN}1OI@cl{hpf3*8MIwEh0A}kSmYK*=>)j zH$5U(63E%lGsEW3E(BMvG9qU`19dt3Ghy`>2XZqaa&}wk>QzVNyg;rdB6nLLR~wPL zFOZuVk$X6hv)4m~J>G^u?(B%1-S)f3TNjbr8pxd!k^4s=cWy+^zPGsPo)?kZE0D9# zb=c$04CH1<*5T%SPB9$$w|cTgZVFCu5J<#N-VACW5vH@h15xI*3xrGtAWr5tHh}_CR&b~&&mhYletB64=0#^vn!m$2z>3FIz|$k}~xS8r)V&h9h0+_H#Vd%aJ%+~tAXLAtFHrmebd z_FB_mbA#P=r_Jf3Ilram>^R#FQ`c_mC+3b+CUv?Qy3aK?-66UonCqz#yI2m6a<s;_kK`w@Am2t6fOCaif$APIsQZM5itsn?Dg-ixq9{* zkl_3c+}6R*c?zDWzDqr7ysw?VR)8VcwCd2Aw=*zq8cEeL2sUB8utLh!9@veo{8>V`8yX&cs zQV*-w@sQ@#s|wT`9Z~N{)w@jNT??DPde!q3vVE+2*!-PEo;+?-#BX8sHn!?$7AxVY+v^I#>eZ>< zORk7=?q=%z<+s-J%lda(M7;?;{&V{rR^_sK()vKOc{|Y1O ztx&y(G~Tta`P-m+Zz<%d$JN8;Z(>hldhD$LEv(*}cG_rYTjVKMtR7bHyuQXL3cB+V?RC3xd#`oVwjv!!ou0hu{~tDgtH;Gml@gx1 zT|Qy+w_f$uw^4u=RxfjW%+zZq*;B4kJ*?jOx=6%cXXsj3y)~!D%vN4+Ga~A>8J%Vx zb48SMH&b7~_4;x^yN~ZF=1QkNUX#%Jr;w-a&POy=?*Y{t;EE{gZl>1jt$KD})Yfz7 zBbuuB&iFL5&J~HM=jlrtw^PrZk7%mi9a_kNms{xk)tAN^-_Pf2x?$_zE2^iLWn*)* zn)-MfR4-d8Pkp|6SiM8EBX8fYTnnq0Q5G|$3VG@ms)yB^rFv)Ck+iUSb*k6CO|sqs zWy9)i)-S{T)D=^W@$vdUQ^P{In9{AjJlXL-U{luW9?1)aBk)#yCx-@t!KMk*Q_o#^0ysKK{De1?{c@3 zbE9rju1fd0W~Xc0t-3Ebe;IRQjmK}-X}p_1do6t{rk**yAYh5udx<5n_t;z1SfgS|#1?yu8Vz7W5v3{3f)znP5ygTC zb`V7ntXL@aih>oz`&;Lb#C*?t@4p|<355zx`{Sp5Lm6rzt4k<7H1UR(3JPdGnd3glj$nx?iz@N*@ zqXEa1m&XFSmY2r?jxR4y0GwD}{sr*Y^714=xAO92z$xYBseseU%hLgWD=*IgoLOF; z1vtCBJO^-Yd3he-@8#wBfPa*i7XU6SFE0Z8v%I_*a7lUjFF^P5vIn4Nd3h<|vhwnB zz!l}?m4II5i~Vr%YK0V<>dgt!1D5XzzyZ)Ai&`AatL5( zc{vPlV|jTK;AZ@DKj^uS+56>P*_S_Df9O-mty}M|MJ#7=mGg+E>b}S=yP~QAdxNVn zKd(LbT#<@n8Wd%=LAgfJd#)Aa-63zc(6SFxeWa`Mm2T(PUd;l!kp8f|Mtw#>Ukm*g zSq=I$>|N2dA*?ucCta>P(}2xnYjm^e{^433oNB#m6uHm&U$K0fSJ4&=GY7F`IoiD1 zBd~&Q>0P75SmVEX6K!>H$kUQu3DcbP)F{i4b%(6jXVesd>N02WcnN|RYzzc`vty$?N3g-9poGOc@Ax@uh8pw5*hGYwoazw5(R zuW0Lq|BcGtcf;}<{bRK#v;Kc9)v;M}$g7RF{(rZyFu%&b7P9Phl2NBNh%pQiIA=Qk zKO-2KuR{;}d-Sj_)XtUjl&^dmY;CIQPHnDgAY;UI%4d@8eXmOwcfL!P&Hq?v6l>nHr_@g8Jl6=8D`0GYxcEfhY%1ZyuaI&aa%F=$h!pLT)Y9qr@E}$0^Gj<<-NMyPbqdOp%WY`#CIS1kTz4YM6Uue%wjIiQ=HGJ*wbH+H%bvVp(6G1ei+_6O z|CU{!*Y{u9tkT7710ky?+NcNoQG3B3-X~M!;ojw+9y*TdJz3SDdsfG<-q_cp#NN*) z<+Zf+68pS_UNVJ7vYgcvmTHtR&Cple8lk`Sacy9u%r!4^bDn}8Jw?-%`e7f}I{(jJ z^nISa7uxJ+Hp#2}|BS{Z&-_(1PV^3FG+~ypjzC<)(IfLF42E^0(BvPpvHf}<0v;3=$&n`Pz$O-pYzqKMlCZnueHrO zNArx^cQ)%ZGT#5Qs+D3z{I}-~{(Duk$%iqaU7lvu`Kq?Y%Qb;fTU0M^3zx6B)E3Rk z+k)yZXF8MjlDzTM>nnU!H);iSrrE}I9fbN~4%Gh>ovJ&%&q`{p$iOMR(toc0ktXu+mB?nlluW?FK6rPOfuHkV>5d&$$hDB+34i`zjPJH3!)^e6^&M>HyDk+2Poe9 zecDwqq%V79U^=~KYqX_#a2!)35&tOOMSyL`S4SkJ<4O^wmg5_!GUWzbW+RNFwwSj{ zCx>aN&7@a#RhDj+_chxsB1x>ROan`%1)8J4XaC{XZI_68>U*n7xz~x4_m>tIFB;G1 zEt;$$3d)P7v>mU?6JeW4Zac-PJJs3ORySKC(>{Xs5bE{})l+4AJLR>vy#xDBOx2xQ zuaZLJi7S7bPG9Xq+z);&m-~O0JFv8TpJG6JwxfQB9RX&fCOp=U0VUzstLgK;v(s(6 z5nBFqt?n6qd+vK-rhgFe>VadxSS<7$DED|1CvF$zYGt7e;D zd9*gk3Ds}9YB5vM{QR#j`jySYP1g#xRqbC+Xt~wUaR!?|_c`&e-2Wm=s_HjwJQh&4 z#YJ;h#qrcy_L*xW+FeWi%--f`Z};*xpt*`#!9=n}G`dlDTbbsOP*)m1oNe6QbS2xU zjSZ_fPP9cKsoJ_xpZv!KYqN@2CsZR9r}U6}?SvY?S{{ksO}6WRU78>z4SJsMWa48wzt zC;RjFDn|ReFT+SBHp+hcyRNs!c|RcZz}tLgK|R)o&CgPMBoRr4A;~;lL!~_kU|=w zVm&42R3LI*H<1yVn~0&_LtGp{6*|}$7~vfWoLMd5wCYH7n?T*a1weK}Sxy}$FhWa5 zqHAi3Kd|a#l(e0@4r0U}tmy`9FuLI`G9&i1W4x|YJz%};n5-QP!QOU6t0k>IcEqUd z45Y6evFcJBc}DDK$DFhSx`5Z;j#buqc{v`nyvEMjXg;ttq6+;;*c_wF)71 z9n_Z*-Rx3?^<>1!c8u5d>IQpL?3k<_K-g3}rq#W@#WLbFJ7&~&83f*RJ7(4Ot_9D( z*)bzQeaqP zqdAZ=?wpH`%y5q@ppP};eu0o#tNvDSB57=ck<*bv^*W*d-KHbl0ZYzw5s zhG;G7WR6kZ*$|_}*g#^Gk2b_=SuhjGXB*mBpoNNNB{UqaG}?# z@|)%q`3AjVm|&YjRDN?A=VfUk!*&(Wml&kgNUvg_1dv?pBv%`$kW9U*gIHaJW`sc1 z@lrR5@Bxo)_)Mk}PhFuBPp&Fr36hlt!buHsK>R>9ri40S1a81;<5oe)EgZ^@C@9QCXwY~F3Ts!+apXO*@X%ii8 z_u}T%LCe^n{FhGa0sYZZ@%7*TpZ!=kR9kAKqzR}rf z&snulp;Hl7$11Ymn6rmilAX1b743y(EHAi>o{TL`bv>sx2uhFI*x+bYf>Upp8xvE>CASN({o?b1znAiDu(AeTE3!kbF4ze>n0w(9Q|BiLYnh8yoG5=BBKfDg$#Uy2BtQLk zqBt)k?xrZB2fm_br!n-*IZyP&QDougTU2W)p0rwaqH@c|B*VlKrD`W?hlAMO3Cz;! zWOLSgl8Js!GCqG&`OKeWtJjIY!=1xIPq^okvNg zxvdXa?vu;{TWj}W$h(kAGGiZ+ywaU~J*`7epEROmcO;o96{)<$)+VbkveELt({o8v ziu3pRRL*Tol4rJ)?%7oo!-WP!acDsv-+UlSnynTcPEq*_4wwS7s46|Z*OG|!H|(DvnUV&?jkD1^;ZzOD46<__(-HjMr)XnsLbmvfS?xJbLVqOs&q&vxpW9k#E6xgdgH=c-+dlK`v)Q!8 zlir)+@i=Moj%~KUTvJob#Xpezh+nAelT76|+lf0rg(w4Tqgd6Kv>aZMg+W+$1m<=C zamP+2$t4_78o#H=2gcKrGf*TvF6;%SOMkLCKah0mO{Qn9;UvFr4m}S!k>t=@B$?in zxU1Vzd!Fh_&z6z&JoXpSk36IpiYAa`pUPCev5x2$-qCZ_GxFO!iR33urE*Q=K?G*l zK%xX3q8O&0r)QTTL>Ygbp2=TGrVUQfn2R#0E(=rWd3YN=^^p`|csxB{;8Gv6u{-%4 z?n)kGai|rTc0(!tQ%)qaYBF(mt|8r=dn6ORgvy70CBL4wT2E_E^v>$W-TpQ=-iLw>taVCFw_2^ z*zP|k?vnmQ*|v`4uVE<_m``m<-W5k&f!WZCY&Pgh@n5i6SZa%Q(;$-nIfLj8J*Zyu z0w|KK6r#NEOI+6#RCXIncDn2(J1ftU$G5h4j`k**i8jf8NKnFl3*wI5K$6Z2i0fyY zhXart!PuWdl*~EwJZ3xp4wO3)pGC5j$Uj2!pk}>*3 zrWLlCB6D;!$;@!0@&wGT@ZX+f+`Q>|dNbMSxu4>RvGu5ZbE$mMHbcIzPwns$yK2li z`^o0`EL#sLAWG}HRIXy1Y0uf-c%m28?q^3D<2)saOq3g;!E2DX}vP;+Dp=rs8} z19DB5BXcHvUzm<(*BisY?cw+hBzs=(0!pvv$fyauL%u+=k4?Vsa_rBAemSwQFm%Z= zw8%)upWtc2q##hHZ1#YKx&2Q;=8uyx;CiyZ2cs%W*~A3^%h3gfiV*Q(Rr7$YWm^saZyh@lheE-Z9i9L^Ki2&< z-1)PEPJtM}mMnqWKz8>C7+cRS?g6lYb({+;LF^rxaD&-0avQ=no(H{9c7zLThOr}% zeib&d=WresHnDsD1lYsAAe+%_9A1_X!@8uySS+g^2=%>e*BemS$96f0AmZ6Kw5}dt z@AyFBAp6ZnfCP3bP1}j=78(ml?69h^lFW|ug~AC|cNXd=*^zZXJjZ%!R>8}8n*a-~~d?s5p6<8L#GXcgfvtv#} zGKW2@hWZuuW+p_gvi^?%Zm>?Y6VGLTj)TZ8c40@<=sxRs1>=soNu3sSrfK>61lSoH z@e!h~OWNU8jq|C7=lIzM$V`ydmP^+@TpJS2wtj^3=AN{Wx2T72_k@;pvAEjo@egqt z6U2o+kdW3)hP3?0AE2mrB-23)venwsqE=V^Jv#PMHu)CfS;h`SFA=@i-5OM26}tl) zCUG@eUxBzcJ8l~WHLeBb!q^t}$u|&r$F}%_fIqYP!@!oSVliHY)vBCacwMhLM>~}e z)lwumge|JRhatIF#g_t0RxKU`k@KpSp*S#5GzQ@s0;sr>mYizqkoXju6pll={eVoU z4L;$HSf>X@;<<(`8U_=)*an}#KgOODQT+^da3fscl&~?=Fny3g3tqGMZHO0Uhh~{tG*a^?ZQ!9r=1+*RWpH~~ z`|kNG(7#`c>jRe>*QS)unU+5-)8qZxMeJz7QF25mq^W`#b1 z)*sD~7ZE(zM4H&V*xTR1b^u!kS$qtSxjB&7##W)lD2DBO0K^2A?~I@iv$oieu(sfj zvbN|GSzGwWSX=x_ECnr|WNr00#ZpD=P4Jl}ONVLBcseK3`>HgMMqV`@y-uiA{Q$hx z$<9PPjb6RN^IN|ucs4(n1)0|K=pfR5BE7|PU=Jg5BUbE=%(ZBO9gg^L{QvUWF zf7XIpC8Y|aYqXW z5X2GIp%<{DY*c&LJk1{d3kql0AMzo2mK|6NuPcWgp+Mvcdy87*D!U>Q*aLRjH#;9mKYkqEtO4RDS0)vdkS(iv!8M@X~!DF{`>rka0?!KV({SndHBr4XVyr=IR=s!q#kc!uULw&51xm5`p;1CQ?D9VUdg|nxIij`t@Hx)NVX-u z6A+@<`m`Lyu+NaILzkS{0a5H_3!g&rHoF|RFv1;HRSA-L>{K0i`E0;4STAJXUxep- z?EYC0dBFDC2;xK5fyTvSwqg*7PuMNAfh}c2Q=$He?SaH1df2`5070sbjX(@h)#G6$ zRCT&PBsZ#t(@AraN?rl=Evi*@U^84*NZoFms-P~2+f}>qg|o0zweSnTE>(66z;0C> zg=yk7`~7B%@U$`$I2Qb@d3ay{Z|bP|XvnI;3z?HRBv4Ppg8k7zk%nyD9DQ zK;=TGt%s^%wBzvQI1x?Y$2mU&2;i1X12K@RT?Vj$t4=4KAkO?dcp+Q_olrx$UULC9 za`pSd!zOOAKR`HF>j~U$a+9mH8zQ+}cqv3~bHOD5cep@G zP3CiGfO_{#@LJkUk{BRrrgaE$zLGS{3XMAHLY~VNEhm{~c;S?N&@OK`A7|Q=14ZV&0 z>bU@$_?T*v@a{ps?;Wu>6 z3%rl~2s#FS;;V+k*k``~P+(v9^=)C(UARhHqc9<)4X}-ZnWnXHVa4wd*(yA|0b|>R zYSce>2(9NpWS6k?BdkOS-Mzs}7QWCvK1GlyfpJpU_X3iqgk17>MyU7!0iG3B(S|Bj z$fJ!(nqX>;u5m#a=?Y^Pg^K-PEK?|>`9DioJOWm7gx?Or<`rQACAzK&8MH~dE@XQ{ z-(6^XYf!|_TyLWOb%gw0ZqA>f5e zC;kGqRr=%)e>lJb*_MzB3&8>a8imN2;wQ}Rsdo- zBLz}k=&aP?cMwyhMoke*nl!6DK)TeNPU;t=GHTWgX~AxIza-TZA(26?t7L%|%+>O&Ul8>gIs6QQ@R1i} z1FVyyg2D5ZyEca-fBC{yhy=(zQvf!|X+2;iNM1-O@(}qu%B+XVV^iR7lRRKKOmCK_ zECjYy=IcUon|zc^?~qeFz~)Z*KJ6|e`eFjLD z9oqq%kk5P%k(2U3>XE1AAF1Wf$b;JgoRf#sER`zPp=8{7dCd-ZNSFQTw0u!sM8}{E zdG|YjO!*=mL$l=m%V8x)9`+V`S7e8g(7Pu8ObXZKjl|293uxKBC3kUzhr99_H;ClP zhq?eOke|~uQz*}(4di`UZ-m|h*>3~%9?6x+%44|??n;HHvMX&apUEs`VP43yHiP(5 zPNk{xwVX?HL9vXxWGvpYb{@c6x$i=_eW~vEClrd*MRf3dtxg|Ll4=vJuy53=<#78} z{VgrK@70rNE&ibPr~^={Ua|&ypVYT17 z0IXNu(VihlvHk#FuriD$&M@W11X$UqY$3_bO6|7rw?(;k1tMFOW>z@brt~O5)H{@w z!@=9BtfC1bLV3{@yxmIU3=pG~v_PouQ9e*EC1~*rDM@0PNHlX{hbeNVNbWG;L@Hv0IZuoApSIFU^Dd zHFaqHi`N_)g!(0D#5w>+H5DT8auPL7iFiyCB>|-AXF1CZL+8LG{Qksxc`3ySCr}1V=kEHYcV<2*Y-`W}?7kQ84AZGC2 zO^3)Oe()vmGWn}&M3=?46cNZ}-itC6*}U`~B02o^9ZmDkopEZ6uc@sPaE zdsczu4SoWpKyLC!hXBjvt1Uqgw|F@T!QbX5Uk2|EKk)#FclnOZpq|Iqr;SZMKZ~aB z0zQdWy+VE|-4fj6AGQMVA>Ta|;1NHzF?f&p-I*}`gipQ-n@{-(R;WMYFHj$S&Z8ml zw)smEh%fo599SvhyU>>FHQ$QPy2X4tt@tH;#b?0Y@P#y2eBc9Sf%u7kdmfUX`LIp^ zUczYF`mPc>1_E0x_)P}z7Pfp3;u>N8c+|m1@O=mmYXuK8cfcDAei!f9r*Tm4Iy!zNOP*kl^nJE5SlZDtIA+dqZHMg0cy`Fd=LS zOm7rkQqEzMaG1L4W}z|da<>Q#K7bf5ByWSGt-`Z>NNy8$v;){KOsB-{4q;wr@OBCn z$AP#@cuXHiL>ewGBdIU! z72eQ!ZJ&_l0g>avn=}wF3mLRg%oa|}2QNqH=m$sFg!werUl;ss`)DDfIYe#=#}9*e zTWHV);Es?%nX!jL6*}WS5`5-^_*f9AU7iTu)!^Z&@QOCc&xFA&0(>r15`euBp529` zm%^VfAyOn%r$q59;qXv^*Ft|vY84Aljslbj&sT!@M$igy^iF7a4#f8YvH*DD!hYJD ze-y$N04o)G(*p2GsPY=#zX;1{U3C{b=7HxScBAV!PjOB<8f2+h?Kni1iBsZWdb#Mh z3z92DoexA-i33i;!)oz5t)$-KpQE6@M(i~Yz(>4AC*`$b$DOF{Ix&!1*H;Y8fE9lc zd28D9wxOOJDDI&XZ?IUq3mk=rUbGO0iaiUU5GFSEh3SoA{4ywP5><&%*eoVcc4>>4 zxERE6kqrZJt2p%+#IjBNix&6o;++uiqQ%RU^NA6UQ@%e|ysm>}oESq_R{O=Ozd|Hl zyw?N@31WOG;yfg#u7kp1F~*+nd8>!QF|iTd!zYO$Poa<^x-Esm3Gr!jM0Qf_Iuh6! zF^2XqXT^E0z|M)2+~DuL7&aFQ>Eh`+uyR2h+5ifd#G)dAOtICE2qH`5DPf-@wwws; zig=NR{Z+B)7JwV#?z2$8DNd%tO0JklQ_yWOY7B^Z;*S>S<%`uOfmk56_JrF)5uf&9 z4iVE<1G_Jl&}98UOg#ncp%`5Uyhq~f8mP)+v3_-g^h7NA4OX6tYkLE{5bIJyz7!Lw z+Z2gBE&Q*+J)~_v!-J<(vp#rBrG{q^%QERICGmWu z&9ow}l{_P1dYzPW6AHdkANnN3PrCIRi2f405mfQwS#Ye;5D4=I*Q(nmU>WlAUCB8V($mIsKJrIs{HWlOiu z!B~#en+}^-qylQl>(V_+F5Qr3Sn$GcN_`6g_{9c-B zgz1k`+c;P$m6p=6`;*jzX3Wo0*a3v}MHAWzC#c`^5K=h*2;H|0Qky15}@ZN4~qsC zAp21x2g;pC0<4$wD4oASeofi0AbEQNOb5#Wbm-Tox|D(N@`u2G=%u(T}jQT^>p6*baHV1qwT5X+3zmQhSe_w-$QQvL}7Q6eDL?z>AgTc-Q_X2fz(j;#Q<3GzkiribL!G+7;%7e5AeL>?ytJ1V== z$Vrr2K7!k0^4!)SCdpPh03Dal(=I+)_Spd}MgIH+9!|+7`r7cc{N@{gGxARzz&k5{ z90r@`WM^93Qf1Xg@XpIw^j&4ToY(-o3-XcoFm_S)*#s;@cBM^XmfV=;>&x=`#UN(O zKg9y%$olqBzalTM2<)o-WE8+P`2yYDUY7%^K;edbdI;2S$!F+#>$Y4{fI8ffchK5+ zR~CN=0Qcl6fv|aBe$@%JeIREvfw6~jrG_x}NRFr7 z(_^`f1A>1d?_CVyQ#m0IlF#ICUPAA=990DHLLTFSIA6-&9fd-XJceH5E4lJx5MRrw z^`KWQuStXV5?MnR3~yxD4#3{Z-6-k(PA*D9xbJ1|J-`Q9JsiZ3^7K2QL*bKb zt^w?`tk7AfOrFpZl3!%$SH$A3W?KXEP>0b{?y0^($=0Rn1wP;{Q>S+XSgvk(8R{$4 z3DE#6)obX~;H5r$8Ue0STWDXfT3wIMqu%N}W>{IH{)x^BKI-wb2CP+2N&(MbJ@PD~ z4p6Tgj35HlZ|P&T_3Evgp|C;ynl|J?>MG+AOR)McJw!s(r|Fg^RK1MS3Snv^4a$w` zsV#wRQkT)@YqJ{T93w}q`2&u^)w{O>v=i8+&q|Hf$ zx)n86q&k>xW1`efWx)2R4R4?qt)6=mA~EVNRQFi*1WFw4RkODtxlcW32e3G`hZjT+ zs4Hbd;h@_81wev&XALMEQ&;kYWRg09^p30DDD|4GHqqfPMZGH(0iIA_qg#%X>RXEe zPN~QTL>a%(Ln=N7VM5y81g{sp{=CYow_&(t({PY81vPU53K!MW zE21Sb)Q_BCB~$Gh2%A~zBwG6~t5Ybam92J=0dmx{=>Tv=UE>X6xu)jpLH)XV`Y`C- zP|u)z*G+XajrUx2djoj4)a}QBcUyg~7}y=Pc_Z}hs*ll#%TvqIP{>!Gr0JDh8Cwi~$QUllrHA^Y!FX|8Uj@*?wlqd60M&i36q$*w&Z3BXcyS@ zQQFWa!fTbfsZd|1gjIy3uhO#zc>c6baaNMZODTk;Hvj3%I$$5Mk_V8Kr%+DK;J3FDk&_$UPb#90q#@!&^#EYv|I^rUutP3nz z$)uJ~QI6#RJE5pg0XwODOZnK-%Ab_NIipx+0-RM!UVwK_`D_H1s*D{0g*2u9YIr!W zWY9i2U1>#w@`B>t2G~U$j32QgTk{7UfuAX>w*h;ujOv9q_Cnd44274<3K8IyawHzS*NTa{cd_E* zgSwX}%PIT(MyVeJ-dm*|ZQ4F43+dALqtaS{WU11Zk|>{)I*&m7tZb+WM`eodW$1lT zUOJ;j?wWVB=zC~-YzEI$v!D9lQq5-CB`nh<_5*Rbrf37yS7^lg@UT*|dlxV-%`Y@n zuF|B?=4-WP0?n=7n&&hDuF+hjI|v`m**A!6t!Bn$=&jS#>junMQ*aEDewy2AVE&rW zZcq=F-7O+DHdq-knL z!t{B~g3iD$XhxSpEr8~`4b^>LvwW_csDg+hoF8-^M(g@TQiH2BzH7iDm>iP3@k?Qd791p zz$?&nrHhb4O$M#Z_cZG#f_PuEhK_mTK_^2688N*V|7D}0X(%h!Ys?VA(BEl`x%%C~aT^l_Fz(aefGl-tr;1IZ7sx{EH z&ob>q+F!5K#w5X?m$v05fK}QK)TO+&1*;*sMw{~u)P1x^Z5ave$P!@dv_tMg#7~>C z5}3cXQbR}vXdlwu5=l5BX0 z*P1uM!$IxwM&KoAcYKQ=4r#kl3m(=+QqMY~eL50YqITj8V8^r$Jz+XY``c_-N!A{u z&n!~375@V9g!U*cZYQ;?Ho?j%tqXk%b4J_e33z9RD-8MUOh9 zYkh-Y?1DCeUjId{BVCPWXoJ4M$|Y_6H2_)Kx73L)YfnxE$kuj?fL@OF0(rlp4QvGL znsy6)s&`#`p#n_b(C%{q@20jh+04~0r_A1M?MM2i;f}WBIoQ0bU2p`I&eOUzL)7`& zpG}Y~)Sjnf(micMx?8)iecKJq`aoM)6E+`e)wHF0to5R0_lee%61z{eXK2UyOuKJ1 ztUT9_=?BRo?S2QCex=4SAIfO+;w{+fO+V; z&<`3sbvru4%2HkJLjcQkyXhl=<2{cQs*3HvF z!CR-IPcYW#9u@)k=-w{?SgVULL1dk7bsRkS>L#h7=cgM&&FZhKM;o31oo*6h3Do_x z0wU{mn=3$MgU^=-Pgl;7R1>;5x%J9PCZhqP1Y{sg>Ty3S^R2wf3fne5gz{t=EMb=PYG zi_-P32-ACX1L*QETGyBM>@m7AbPXD-+fW-|uWsK?@b>9+-2mcrF?0^tuk#rXoAJ7( zv|1d{P1^(PppK^lK!VQKidYWme0^d1urS5xAJ=`R87x_MoAx~^x>zfx=>0^U(`9!gp{F6orD@)()Cf`AybFx z4C6=_M4R9oU4Ak|uIP3}!1PsJaWTL(T>)heuIon9zV(Lg<5)=E)QPl|=jz(gYrLgP zIE_l*)(x!*?2fMgW0=0H`$GLCPj|!!UcPSldl)Owb$tyhg}MiHvbm?5rh%3Fx|ehX z{6N=%u2~-H+E)kfk!~1e?;h)Feha-Py3tR;d#XEH7vP!hRTU^a*PZPN@In_607ox% z3-vHvq$?f)o3C`g&@u3}&W#c;#ky$P)0XJ6w?g5KF8ogr-|9N&!Pq<9Z}=`(c(1!y z7mhyYoYz3)qi*>u@Je+O-D-Z)Eu|yrXWbQAFw1mv{{;A=ThkW-y6f9)fH4pKJX(4@ z^*?hd-HvBEupScLILVqV8V5Pn;ZTY?QC+ISKl|J-6)K}{>Rq*bukM#n!M*sa3 z@O<>WDXX$pKaw)6>+~MK!L+YFI|l*!>3w=a(qF%+Ifw!J+mv())O*p^eZ4;W6ZAId zedwniLHb;pKZEsA2S5zb@1WblP`&352qH`$JQLVP{f9;fev|$eI{0nY|FsM@x9Gh> zP=|1RTl!*atA4r&P#rH7;SZQDR3Mn90Y^|AVe60p7c&a{f|(;qnsEKXm$J+S?H+Yce) z^|uYMazH;Q2SFUtubv5TSbwJqf;ggY`Um1Xs$V!7#uD|b5&(|rbD|)Uq@URxAsyF0 z$_Gf+Pp50w6umR;3r^_AIm6LOy@Leol>TSBE;+5=MjL`N`s}OlcUHea0(MSsqBBXV zzA4>8rRkT^vE{sea4tNg>s6FuyP$uy0wNdn&-OzvL%)~ub(i$rUIS$6y=cTqK;N8pv5)mfsM|cz=Z*pIss15-6ZTBs={EG9>&N{FD=+lDDgb+_|A8(L ziuA=35ZNoeelM)N);CQ6DAqTpHM~ThOy|@$`sD2pd8-emJ>NV15jv~A*T+4CzYqF& zniW6lw^C!3>L=tv;gdeSDMUW&FZKklOh4)bjD68BD1?Z+p+9|r<6*eG10tS=M=v3= z)Ue74yk&-|G$@xF&W3=u!ccoZ+^#eXT?w9-p>9W*US)9g1aGxrSse7d4QIaqTVrTM zKlAc2lzxHwT0;(H64x1?kOyCbj}HF)3`3p4^EX7`Co)2Sp#oJi(9pjGV7(!V?u0iO z9_@!hkf9-+8-oppufT1HAz~|dp@xq%ONAMh(iKIxVZ$sCw;Be}mT{Y5KCOn^4P|r# zx5F@uwp%+58|ES0U4~P1ixFv9Xj~nJaLY&El{&a>-G5FKZfln9`9)ow% zuqX^xP8mwBL*cYx$6A0hhW)`Ho;6%3g2*{T9OVF04TY3^NHg@y1vqc$MLU*sgJTRr zx?t$G57W?vXS)&}vV;Yv7&MTTnUK`b`3tOQVE_>r#3-WZy7hR9pP*iwkRGn}La^SvQy zD?EHKjO+%E`E?K~IauXG17maFrP@t_RQESWHx^?I z!;!DCKAo%lj9Z_B=x+>K0=)p^FY&-O7@s*pB*@sIJ7Nho?rIMZV(eQB#8BfB`bk=t z@t0JnZ!{jK6WC^BD{AX4#yhk{4LA1d1m0F-b=se8Gv@aM*lG0pfFO1mCsLb576JlJOuN znv#v5wnHJs*ys%$oiM(kRP`z2brryAqqGmiGsb>?z|I;E?t_(c#-_BfK5vYmjYPU} z23>w#Fuo{&$VFr60$>@&?E1hi83SAZGL7DpDZOmGKsVCa#t@nra*WgF0J~;Pr>Xh6 zv5Gq)yJ1v2fOylGzYHR|#;bbh-7-e?hR7YG+yut%8uk7l<{1~!r9{4QAzc|17~}gR zmO^6$O>*~)DGMSGjf(~7JvDCe0q>bHhjLxdjoq_h^M$eNb6_ux zd@QUK8DG*d_m%PS14zC$vUFxHHUDBo3_z6iyo$u-+_6Wrv3o1)MTL{v&>X? z7qI1~7SExu!Zel^)0L)u(-4c7X%?NsSDAjHS%0;uT2BzYO|9J#{94nQdI0N8?}H%X zYl@GD6+hF%fgt*uruiY308?-L7p8$vvj|^nFOQDVYwMF{bk-h{T!( zwgK2{(rTc-&-9@HSez*#A0GCb%rx-gP0eZdbimY*E@uy#X6}KN!=`FI5cLt$p%)N2 zYPxk9#6;7+MF7W4<2J%rlF6TThsRCMjtD;4RBt%26cc|IR!*3rVjyzT)ND7boHDhe z8$BE{TAt*DZUr5RMT`VOsAPjAHd3aQzJiwbkP(_$*K%f`bUUd zLLlyJLjYS$N%*(Mi%NamPywIO-MNz3dDz|t=RyNOs(nGd#CGWdP4j!LtC0 zOiR{5@|7t*9N@L-k_DjHw74sHC8ieZ0N$9UEQE)*rf+jlm3OA|l+Ju_3edsy2UESn zAbvEpq|fO}O&cFV;gjhPX9V%t^eO?M%ygU%y$*<&wPkJc=9(lDh4mWT=qRcpn3Znm|kxV%Z2&|^JB{P2ANyXT|uaM z9EB8Sj%*IF(OhpStZXu;k)zG##KthT#eBgVSh#tA2Vh&xg|zG1W?oPkR<@gG?F6>N z+=en=JIx{`ymy&9(+H0+XVM+RZgXck6-1i1O-6f0nU8dbhdt)!-9d~tclZ;Md(CA9 z0Q<~=^8n(^G4$>IezS91D8!ow(XQ)&d6EXk4w`)`qACeyGX-(TJc70{hs`r7mvF@V z{3>`y&0A>moMh%>p?BPToV+KSr-lNgnA`cn`w6ozok>obE6{21lv(o-#M9<`v@btn zuCog2XU%)PA#%=q)^`73?mZ5~H1h?zCOdClPJ5JebKni=T`l>Fn`(wk(cJ4 z=b%?)u44u9mH7)TS+C9a`$3`De1$rD30@T>-B~ z%a>-rR#>jm&T*yXIZb(9mKeG&S!LP!Ex>BaimK4_wyX_AWNR#2n!~M+MWH>I z#z7>^vdsq~8!dZjnb=~PM`y}#ODpOxTP@eq0k&CM4Ts)#%VN6A+F?n|hx$&7Iu5by zvSb+{5@GqhJHT$ss!>@!gB8#z)8zp+P|E#JZ=lU)0SiB z0nS*C&j9hPWljf(q*)r!9C_ZN4hNQQG1K1LenK5CTUxn;m~D|c=;c`4=*#0Pme3*4yJ~6k5&>SbRH5;3-LjQ()Hf_s zA3)@$CFnhxHP_;P1iU+zUq=GmwUo62FVEsbt6IM0h77F0QrH3B3oQ zJ8vV1<<=gZfUU5)&xPblt5*u*^s-i~1j$v_Bg-JN+B)VT+RWS9mJUs8tTSm1@Uc2q zhQGB|2f83xXLY4+>T6A>#njJQN*Mxw>vB>Eu&$z=N1)X;0}AV{v*|T%u%>FD7i9gG zQW(M3-Q58~tXVA)OQ^MgF6G0llPSry(Q5t-Y?HMGeYUaLD$Rl97Hhrfs8P7JUp(Ay zwZ1VSCMy8kGwBwM2? zxtU`9WXtwiYs#>B((33A-YIJtow-h1w^Ne&jP=ADSUGFmycE21R?P+QQmyqUZJuTw zO`i&$w?;n(mTqlN`|=Fy}+ZtE`aK{>( z3cb75$F(4tXHB>YkZ+Bn{Ct5`rae)iwMI6ud)Dq#p>W^2k#@}wtYL=%9$J43M=X!5 zd6a>CZ2c(`*b}P{?M9zko70N$%!({1#)I{l4|p%E)~>)_T0{2&6j?XXH1o=Om=0pE zt$RnpX0bK&7=kacJ{ga2-&ljk!}MEg9NjFxvr6=Pn)g=xKVPtRSbtmt@X`7`b(>P_ zvlv+UWSzPd*k@}}BzR?34SnbT#X8ggW9|;W(A)HI7_NpRPlt?efGu_STo3-1IedY^6ahs*T2Lu}-}C$H zd`_Qx-+Q0u#B+gje}GrO=%c?LQpo5u!EF)a@jqbf1Y@BHykbV~X<#QA zG5>E*G0xQjD`jl?3l~<#=-US?<%~0bA@~Z0UJUFMV?7gAPBXZaoK!OQ(1GnUjB9T} z;Vh%L8pJAwa~H5`#)cl~)i8eB2CSCRaUS8;F{bEvY&~P$PJjl+1Jran$2dTJzVnQy zBv5E%c)WqgnivNu|GdDMuZBo7MkTZ7-HHx zIvJ|9z%DbC)a$y!_=vhcU5pKD!Mn<^xk0a+v4@Vq^f00pBC=jaRT#iE2FC;7I%6l* zseO!P&Hy(Uq06D(&nQ_3Fu*u^0br03`!!-2X8aujFv4h|dU}-cB8{!a82z-Oj58W( z@IJv1Q7U$eaffc*B%|s72euiV`4G9y_#gw|4&zlCX53|bAVYxDj92Jkm|EfkFb4AD^1`WnH?*k=fu21Q&MN<4%+x!nBPlrnXb&g`2cQA z$6Fw}Ge3-khzIk<0VsGfU!_gMi+PZ8DR1V@8xYygWNrlTVY)7bo-ecX1Qh(3TdpEN ze`f1*zyg?Wz72&yrqTcq#LQ`gWH9r^KG+OlX49WK3}sqrj|*ddNU3Hxv$zAlSOjy8 z7N#SahFpLsW+?UGqnY}rpclhTeFY$vxvUr}Yxj{04S#=p8k=Y&%ki<-< zhcB5qDP)R&04QSKc7eZ>%=k0#P{MS+27jf@MNu$T#;iYxAj+AIKSQK~8As3jDW-^~ zUZX>tL!0MT) zhoR8GjHV^%9IgT2JaecHppkj)8Te~rs+Yjn1?D>XUZ$DZPTjkUOo1FCEzAqw0lUO> zpq6YabC?0p#+;1+XlI6c!fglhZ%Q&cnQnFvFEgLN0h?Et8ZYp=m^UdIy2^A|1Y_OI zPmd#{9_H;Gu-VI$(^h_sXrBRGfIj9*>Jr~z_O}4*XP%&t2ACrvT*DwU%?sE~ z<~?e04>3+@rEP>JZz3ZPmhfW`g+aR#!yQvrflhP6-#W?iPPLkR0KJ*}ZEPbUz= zSU0Ft2xl!yfMf*Al@6jrvVyhXMX?I$GNV~3pFkmorC@;<%UbywfdfEBR9DY8OV?+sj75o?bC3MW_#C{rzFS-HSY zvNCCPD`9oL57VWrS?X$*vF7O|DQErZ4Ur1giCw@>v6j-EKg~K{h>$8-f6>ld#X3dV zVKu9|2L5VTE9hg8(0@zl2>+F8v*w4C7WyApMxiMgatW6exn=JRAp)ka9pfq%trRstA z5!L|pF-KV)l&Oxf7MzCUIBRYpzyxb;5)^K+zNJcWlC|OkL^j2Gm1bbKS^8mMcUa}6 zki5$Zp@Y!VtPgkM*3Gcqpjp-|Yak4IbF8ZeAUV%6&^eELteIqB``98X)g9UQF(K*1 zo;Ct=X8*kaz=gdr8o-tPC9UOd?B!{&;?91bhTR_QQ}i9CCtG$7L@)L`j{Cy>Kem-J7Jv3?npXv|JwAbzKz0Ki*$iU8d>Oo8_Bwyq3}KHi z1TmC-JP;yb>{qC%9nLmUvnqo9)k_eGWY2vEVifx%Z6VR@2PiR%VM{5UjAa`Q(2HZA zqMmU)`{j*LNMIM;1xREsqT)P>9V>;uWcEQy-4C!OSx`@5M^R0g$_{)6#5DG_15Bs0 z6R3@LkUjqYYKeW1uJ$nd6l3nQx>Dds>4j}(cRY-1zsSD*B_vzet(1;jVn@^3Sir`Str3%Sj1afRtS>_W=& z?y{9coMsQCKyrqyC;)Gk-S9ZDIrbZo;LWp#-os74$4>nfHurJfSOwt7d6)xrC(bDa zM4UMc+In0#`QJj_mGj&X)ZIAOslV&aS!qC=9-KDXEj&5xev zkwlJe7kEjWatHWJ<|I&G@c<|OEl8$t#%b=G$_b$)Kb`Y2ZNdjRj~#=fL!1Yj0S|qGq{v4PCYfzuX6VO1JKR+>^Oqx;as}{te2DUFTgd9nog8o=j=!Z=;JJ354{_l zXXuw6=NIe23FRQ>eR~os+<(IrY@|oZ-aMsCJgK^#@$a9A`JBq4S)LvzngIS6$pu53GiGuJl+j$F9z^ys^C4}A^b#&w}J*_}I_2rC}kZS=T#a;puH^y2pP z!-_Z8lns&n+>gJ5h!3~W21mZ!a7q&WxNCMnGJqRH`FtSvwNIfC#Ql;g{b265%8+y6i8?*!EaaSIJ7lmoeH@-XeBDb=>+JV;F|d06>}{W@K?h9gJw&m+@}vB>N2j%2Ug0tztL-7!HuHC z^AtB}C9q0v!wy(E!~KBvzq8y7S{19gdsCoL!)-UibS>9|x*T=fv3=mxbD#ec#0IY8 zUr;#Db*9NyBlqJvh%|9Cen4awxEtvmYv!_P{k+I^-w4pc-L(pmm$((QdAD*+v@*1D zTfc|Rc5dWVTyzKb_-24B+%41Kb#ZsT3viYDNFHoN2*Q~+UI1e*ya%ZWb>%I520S;O`%=W>&Rb8t zCr{oz%3{5EuTa0onX?VAUAIda5# zh*zS+rDX6%sP@g|36_I*g!dMG7MsNz{25k`@;E_O6FyF3%!_ULNlp z)iTFHpp_KOv9RMun z{cVD=3f_v{;GN=qSb)e*^CoEyRLOf}0^khqGdf6H#k=+-M5=k3GT5x)HADidS#0Ky2oQ~TUE=*o zIan+2(T`xdjrZUXuy)=NA6V(&ZQTj%3NPw$D0K1mZiSVryj641dt5c_$1{scC_+e=&dAn&8KAP(~u(XKth8>Vb#l;=j3+XU}{*C29>mqexBBrisX z%e=$Oq(|c}@9!k&P4j~3Nq z`EOBE#)bbO{Ty!mlQgAq=l@j=n;v|p^|0c}UqO|(7yoW0c;5V<{)GB|{*P1?`tZM? zAIFdHPj$aP|D9Gi3gEj@sSwCd$pjX}kE1**m>*4lgeQdGSPF$ue)>3g;r#oJxS|OD zpWRT8a>;fALc@#g1`8Ch@9r%qz-u{ zKbd}jGyK>0fq0gmupGoHK9432)%@l2xP}_OZX3MU^7)j9)bkyv#n!;*|BK+y@mD?o zaGvi&y^BWvuR8c^;(to>+Y9{HDYt3nKR_Y1@T;GMl}r2vN-J9V0dCN1<2Tap(9YkL z2dsnd@eR~F`9^9DT;{)*2i{fwsV`uxoBuYQwe8_M(Qnkt&)frrYy3~BvboMb5C=zn z{GBv&yTMPRsmTEU@(xH2^5?&R$W8v*?;$e85Bm?shWW=ffj7ecGY(cp`3y?v#`w=r zpKpS{hK{G-;)l?bW|IFoRbW&6<>dA@e>@FV?(mcE1Mx1u>p3V)^ZjYbo8|AIyF17K zj~=Oc{xK?y?(tI$2x*^SH@K`2*zaWcxPXU50!B7YkxI6@6 zkl_A2SP2$%PC_9>@GB));et@wXd?tJsjwL-z<-6tiy(NCmV{`*#(Idv2$ZxI#0rw> z5J#M#gto{8K?Y5169xOfgrg+E=vkOf7TlmF-T{GO5p1R)To6+Q{Q?lv1UEi{Wd(b2yU&0dY0e-^^=bZp8EkJ*@9Ph0Lu|%QR^dD z;P5;m%M%RJQIO+;#-9*bzF_ZGs22$Kc_6YvK~OGuCj^&Hz*w;W|CI|XyP)80h?EFo z{$J4wb`(RhLa?7wj#Gl*aY&vPRMIiDvjPh}XH|ml{{pXC@D#mBuCM!|nVSZNaYP%Hj|VEG7$ErLxvh+GnEr*TlLV3OYcHi3y2t9HSAOMrCfB(NjJoNT&wau;9Z{ zU?YOY-=Hum_~1=|F@c!+(Bpzldm%C*2#Y}wlY*D%PE6td)WFJZft8kvJAwh4gx(cY z90N8Z_69xXl{TyHc!VYTa z2MT}q8+t*)k7@yeh2^xXg$Ny5a1CL?VHHHeh0jdEUxY9by|M=*g#ohwQ9?%=Dn$#O zW?(Z$c!vfLu|gqzZxJV~qxwBwxbGbVpCJ63j>;zrwGxDzB;5KgK(f%V6dn!;A11vN z;eZ$*RVdsBkS6q|jXhmx6hP#l@Gr{G4hh#h2}g&8p|=4tg!fQ6JeVmI({FTC7*GMp zW5N^-h}puiCjfGUBQ)2}70xz*mnS@U2sZPDuk8h|Ko~uZI17c5k3ytK_$1{MCxrX% z0Tc_PXCYD|Jo*=SrNWg|$CU{q)&Nupmj*%Pl<+>P@lFeepT{kz6y{Q!@Qg5?Iy`5E ziI0I-CG=K8vPL+50B&oAacp39!dl7)>xCkE8ykc!R3n@h9@zjZjY4TB{51*lsLOvr zXr?>gEact~(-(!4t>Co^bEtpaCiKjJUb|2i3#>!9B^X$zFiH(8mxbH+0J|c5)ffJ{ zgul|hc~w~GjL5o$i>cSuBm9Kw+g{;v`eQQJgnv>3d0jZ>0MI9V@CAt65W3L=-7l0z z0UHq7=w%)hwrdf@O<^FlDTag#=+MZp(EK#Oi14SgP#+ccOha!>_+kR09v2ECKc_7z-TxG0@6zzEUm#n6isHPNZ@DAC+q z@S;VI^8hg-mo4xfE80juT%4$k4w}Y`zJCC`1kr;}Ks`}(oRZ5Vk;g7bCX3`W8a^QU zm#WAV(baVbB2_g1A{5d@GMZ?niw0Lf@}TJ7Umjaa(L(v zMboEnog(g95HE}Rcf)j-Xe}K6 z?1pGg2V?!BCA4`Dh|V1bHYnPZ2{0s**bvLG=rJ0hjfl?kU~^O?xF6V<$d{h1aZwMg zD7QrX8Q7c@8Q+1;Dbd|YT*|cQ%u(2!5$Se-8wMnm=^&MCpOY=8!tXjCm#~T4aqQ_C=Pf8rjy0b z(xQ4moJ+57ia1gOkyNon0@G3_u;Vk2YOdB#1XXi91)*aK_p9j zu>;1Air;$^cj=heeGSyJ#S%Sux#F^K;V)18J1ug@#iewNB46zI6Rx2^>_~UMQ2dMw zuoGhL7cgBc9;D>!r1*JC-AlxO42A?RHeA9xvhSHzrW zAkrlcpx*CQaRvQt&~EYjG?(eYfAa>oE^bu7W}o;onrYk+ub@4rUwoqt3IpO|njQ~| zx8DQrrg+vJU`YHSmCnQBY&w!NB7QO)lA~h5S0Ijw>!=tR7Z+0nJt6+B8`v%JQXL|j z6t5qLn2I3)5`9WXX$e{4@us; z(DRgt?2z=5{80;feI*U_Wt5+!`xJ}?N~+r-86*+8!dS3m zj$Yp|$-jR>GF%czKUIXJgs^By+%kBGkvu}Fd#uFkA?PJYbo6{CO2*%WWRk>z2`oiY z@;gAP#7B+D(j;?qUgMC&CPcWllHF86pO8#ZpP^Xt6{S=sB}W%Ry+pE#a<@`R;!_}&N&IMk zFPD7&BCra{vK6p$O2XL)E0q!f9Y8uGnH+-1SqZ-v!Bm(;> z>8h6mtb&yWNx&K?oRd6o7?*Nh5*7$vqvS_w)HO-YS^zFc?oq>!)=6AL=|nM^dcPui;9cxBCQ4_iu1b>TP`R2c{b4__ zROv=KQA^ zZ70BSX|gl)@}*^?kSvmx)60B9`aYE=#nRQmAeKs_XaZg)4gCNCmP?x~(5sQU(DBMz zXxHN4$q zLv;Y|vX(#q57{T>0G_fK>XCWLZqWe2Tjoctr2Vo-gaAIWC=Pi3GBwrH0kT+nb^~P( zoQB&VnSLH3!Lq;WabH4Yr>WQql`Y}JU${)U4OoQi?dyNuxtuU4^TYnR=6v&EvpngJTrgWrO_IwS9CuLV%fR)G! zJpf8&iWGn{*+4nC_$%e?oRoT0g{dUXt(MHrGyYMv>dS#3qkh~@nI|1vHZT$~ezl=k3paI$5AAt?Z zp4tNJrYuQ^ScYW9@xX>>On-KHSvC2yvWYrW;M^e-~@%ePm+ zn6LbadJz5OhiT#Tm-kSq7a&ifOfFD<=mdzta<5llIz;|_A3&)5+9enZm)Ft(>InIv zMfrs1{BznZ z&dMj3fLJY`k-$ogypg=u%9m3aQ73nh0o2R2f5CKv{AsHA8s(4ILcK};D2?GS$XC+< z;i7!q9$0CS|Na4NUXnNSA<`;;`F9Z810W3M*A2mhi<(=V>yeD5=0&Jgx64Qr#V^z#N>+5|0z07ayam%Kinr~M zOjQ)n+ka4TjncG33MS1{4=eJ^LCjRNF9bNEIDZfdS&EJHQXW+lo(FbJF<=MCQFzjZ zlB-ZxAlz$;hGld)3@@!P;oE8e0Cx>8|(9N?^?h5S`19LP$w;?h^6~nAW9w#RXc=8Wg>h!kts_s6INc_i{kbDP`{+u zxe9u1icQ;~(5~3E2_hYe&9sJeDk2g=ysS7$1GO&2=3In(RWZv(5Z#KUMd0-)=E+g7 z;&u|OTvL2Oe}~|@qO=7feTswBbG)IbJ`3W2VtN&<3@Y|e6>?L-Y6Eddaf$kv!-`>A zZAKN(Qi?OCSiB9qam8!Y-MXci-wi913jfc5O)37NHRQJ9j2y%}iVQAnPAk5n5#fv? zaSyOr1;YX`r?{UYn^*itN3rfHeCV}zQohfJp0n~YZRIXX_tzofraaXO;I7>C7J~3l zE~g=nr?T<^1mUGzM1!3D%1jzl`zYrhgQTxAR0wrHW&9xkf8}Y)r2>?O)xZLk4L6}4 zq|6+FLa=h#ui%9$yJ-;!Q*NSWK)CXs7l1`5<9FdMMJiYL!%?*I%=?HeMj1zk17nq+ z8X+04RDBC#f^zgxC?qO-sKK73bomDg$;ys(Af_l6(O;EFRW6x@WSTN29B$KYyeocav>em$Wi7}BP3U;d=tDpr8lM0 z`N~(_01A{FHX*V?rPvJ~ij+k(ygZ>Cpgu#fvb+=`CzUnSqA5{6MEPf_^7c9q%avOn zg6Rt7s-*y@l;R+WoL2r)2P>7zl6E*ctCUbmT&3JY{m5#i3oW>{%Bi=YUZ>o>5Lmsk z@Ha>{D4EncKBv@N1+P)*Plqa+lnWGy`hxQ1Iq;g5SE%Q4QK_b{C|Z;`)DCM`+S(!6 zq4c5}s8iWI0?EtD=U#y16{Ujm&o1TpCfK~HOgjy%TlpUyTJBLUpO`E|RS3VgEy$NL`b+d0N+vyTL*VUfFjJ;GQz?U5M;cnWzkORJp8yX&04_ zl08>d6`eqFQ?+C~0eZoz%DeCoqS|2sFI2VWQ($4L(`#Wm zT=gamhayxj-VgOil^bm~QL6BtfkmtQp8|+cZKAy+R`m@v8{7#)Is=eLdrKm2@vzw}Nc>%mMRU|ci(^Z9(0UlI!T!-Ev)!Q`oIIJ3^Iv_)p zT@ za;1&7Q1vkt%S9>$O(RaIVrcMCtnxnx4<}VgRQr~w4#om2Re2ZV_LQk^-49~9>P#9W zD^%+yVfvJ6`zVN~RsQrrPo=8X3WYPOzza|~s}ej6UX|*JY+%)@G0N_1R4G(m)v9i0 zf>^IQ`x>k?sA7)-JEv+fBbFxBt3ALjsD7rLy;)WA7O+;;e-~l8P1Q=Rz;@MVJHflG z(oe(K71ac-yIrbF6_D&v{Z5D3dR33{5Yjc3^K0PUP{n|WuY8&M!w^dRatlUwVJwUvx+Ddb-S(QH(0CTFW zyNG38<^LBXogGR)2XJw)QlrP!p@VWh4~Gewp?EqRr*n>84!6`W=HuW>x4_q7J)L;* zb6E2?K%hev^^AiY{-P8$*dd}89>N@6e-}2x9g3QPMK~zmf|Y284l3hg92_nq_*jQx zny4f=Ys*xkHf> zdKVlz*FmqvA?hLAmo|sDWYD|f5JDk!IXprM&sB#HX;J0Te zI3EIUz~Qk`s1G{S(u+6jz^5#4#G!_=%25Z48x$rSDjNW9IXor-anj-JzYw|O5YhwU zU58q4xSe*`L%Z*sLmd?d^9~28LwC=?mV+Ri)V!y0(a!28JOEtO#UDb%Q~lJhu;QhT zn1ZCYx~UbCKI#lFV7_YaNJ#pro9Ph0znbR@g#h)|0bqgZcikZpq^|Y?FO3Nscm_SW7Ho}P86p;DT0-FHPZ%=pk736TB8;E$`{qhcgq{lZ7U3f0~RAX210 zy%KIusFRk%bcySXIjt^w1L~FPfcKzqMs1~w zKC8Zx0Z^rW;5;I$Rx8#6t5rXf1FTM6p@%}f`b`=Uo>y1h2V;$DlOK3Z>ZP@u6rIKwX5f8fY+h!5QBJGy_b5NSJX}u0A1=7 zAw+uATc{DztKLF;&Na1M423@Rv0e~wsJ~kYV!t}_X{ZmVy|lR6LG_Y;sNYoY^+ha0 z>IdmG)3Ev@`r$^^sf(aDrrt%Zz;U&T7OP41GxGpb>J6WPcUwI|jgY(Q-@k&wwEFwk zVRJ^E`7DB;RVVxnkvX-c4I=aEemW0!Pu)U^{65XVDJVE;)JkB^8sz_YS~cr^0o*l9 zsl4*gv_B5aQ6sNgUf>`1;u2h63Xdb2I zFj2F0Hzboaj*mbuRnzMPk#x;Ax`PKb8>ismkfvD%;$cmV48#mg!i$I{Q=`6$II}c< zbm}Tw(|i}aT#cO`+C0rs+VqcWIPU?=*YqueWPzsO8;BHY9-{I63C(p4h$Wh%hXKko zO`%XI*ErJ)TcI(~=M1Mbq5_0;TEn6nQmJ{KDyg%Y@C4Yb(TukNtJ9=KAhLSR=Suc#2OmaAKH8g;2+3FbFP(ex*A7Xc9;Dq&&qRp!3#yVswSD`+ z3)8lJ2rOK?jR7kW+O$VNjMPdV1&G$Rc!Lk=WTw`%9U@1x&r?~4Ao{f%c0*)9yPOBTLG7np5N~QL?Jzc^?WCsDu=b6o zATpwT|0iIh+GUhyjcFMqGOqn^8Nh^gMJ{-^wCg%xWm0?mWhhK(SLVUdZS9ZLMZKe) zyb5qv>yryGt+k>j^x%xPlXkpWZRO**usQ8E`c!3JTS=qLd)i0nS8>v9zX;&0i=d~+ zMYkge7wxKxdJ}QF=?>GuGk4u?S~xv)$@9QGbtmX4@X~!pHJ7*U6)FJs>qI%w^U=*v z+T^Q?kpuJ7h1~=2*L_aG2k3e!(+Sjlegt|!Iy)s9!Mfa1*bLE4_k$R!)24$MrmHvr zEL^uUALm|&9i_7kLLplBz89_`PPg_^D8%btr~#IsyW~}s#gOX(5)#2NYQP510t!q8alC*rrSXkO1f^@^aCAhMOow-}bgSqj>``6k7Pvj8`(h{5vvu!LMwX-df|>}qx}QIXu{_=C z^#I3prAuKYUnkuNg#umdZ@>z5E|u_5q?`H<3MX`;KOtGH+e0T%PU?8Qn}MB+u&JxdO>5-F@C5 zR_nf?CSHy1(j7Re)vb93#5&#SPa#sT`-O6;b2`BX;GNfbi{QOc_deBJO}ZuC(7T|k zqHaaAPVxtc7j;YzNVe#De#Avz(tS=PcdO3#GDO;R|3w08*WIJ?xKk&jze{yl7drvT zD>}EY0J?PVQa*82$MXf&t@BO-=+W`HaMY`lk-uxYx9C9Lb=@yJVY5$HPWR=8E@&b2 z26ZZ`DR1h|(mZZRw>TVNSogvGh-^gn>NW62b(^X6Kc*Xh0P5qqDq3bHbld6gA>Gos z-34z_w?qnTO7{=lv%9)q7J@jf`_l&sGrEU;p)jj6(K9ipbE1>X^SUoi!oxk?xjpc= zPrsc~07w0~x`di;aGDyF5Bdi4LYpIjBzO~o$^reGR8Obq?ZNPns{d*OY^Ld-+KX7y z^-%`s9n>ed13RSOLrKkH{lsyIWatmjqmij^phWP9e#djLlBG{$!)CVr6IwiS^b5OS zGgse1PkEj`*#hEmy_A;weEoG=84C2*DRn5+FKLEek^VZp;l=vpxzIbQKm0HxOY|4$ zBv7f|LWB1*{dzCxmFsP108Z(*Q#p59A7=nosb5DK=NbK_bQn9U|AW@nD*fKQuvx3$ z@E?rT>DSRdU9VsN8;A}1vD?7T>HiuA@4VidzNBl^zi|@kP5LX8CtuLV{sLmN{-tQd zc~O7G8;)A^2dI9yq+i+y^;W&r$tF@58t~m-Vc8@UG~G zXyNSApE?O}RWGLJrCa|EZHhhm(@wy8^?fvmyQX*3LgBhTd=uOb=<|~yGN^B)J?Eyr zhBB5R{dpclhV}mRQOk(_L^mQE)i2o%$ua$7ba-c6@3jcngg%E9Zt3~YgE*--u%S1l zUr5EzZM`o&yLa?orh+)5ACN+1R&4Pyz!`?E)5^9jV3SOAuLHgrZ;Rf>uxP}PB zn~y;x((pNDYf*;$s}PAcd`qcOj3I{ZXRN{h3t(}E$Oza>G#H#AnPjk2Q!Uw0)C2Vc zhGgojrx<*x8ca1*z6i-Q!=9xONjD6-Bfx`(q{T3O$ncOOc!v$6w5VnnwjTn>G{k=b zaKtd>1=CrEx9BEk8$M_T$T0+a0^}N)v=`?YoTyuW+_2+Gn9etpeh0S&1}oL!g@&{} z;1wAz)`57^P#Xk)C5B`w>Prn@(#ut5Xplm$+>lWNVufL7KNL0w|O3}JZ?X*Mj`0=E|ps5oj~o z=khKaI#uv+#n4AjL6_kY&8M##HU|LfHvCQ#%^pJ~9n|PGSY86}n!#xRHm@6wgu#2C z;V*imZWvZj;yGwoSpwos!$P`QLx%EB5Qh!VlcNzs4GkAY4eDfIV}>2HYmXZqrc7tT zp!x-1%JAf$Fn!ywi?BO}`s)C94XbG{o;JMe2yDh6&Vs*LgWsPpHfMNn9K?CU&y=y; zGkDVKz0cV5C3ucT9@S1R#*MDHK3C)8^uxIsQ>avMH~zwgf`{>28tr=;AEC#_%NYF< zfVZ)Lz6jWFe7FtjKE}uCq4hN`p@hfJXgUJDK;z0c!3#1@I6@)VIN<~kVqBFEUZ}B` z4!(pL<5B>^jpJ_sL>LA1c0?NU2B8;aj7oydXyau%HyUHy{1^Pi8!IH>B^W(Zz)Lg+ zZ38jMxSJNMWTT4q#skJJF7S|IY`YC(sYW%;deV$>G!;5z%%)u9urXjah#AKJ2B45> z^!^3vM~po;K+G~W&{XfJ@ohCiI%e#rtTNj;M5jJ-jIES5r&KLup26ooCiweIgqXVr{)yDg%G^sHPB@n4Kc5H!qo$>B&5bKTWVt_Rm zSJEloOWk;o+(=+XEuq#_ws>=rQKfRJPZcL_LUW#tu6Caou=@ zl9N7T=^zwt7@yn>UcYh0FW?Or&6lA!X!NoI8#X@s2SOS#{!IhCQDfI%h;z*7i{{0H z8)-j088Ix#AI&Zuk z3}g3<@|U2#&-6S!QjVt3eUNlA1<+wASJQ3kQn{I8s6=!({q#FTJWMOfq33A|p!Lkl z^!RT8-lo$>Ai3W(ydCO3rm0I%_cfiQ9na5%e;$qH-sDEFOn_3oiMpj z&$!rRD+KYR=`8*HB_<1XKuS%6Il#(H%iR!CxkB9qXd)Bm$a_=hBw(T%oZ7M$vy&BVI+VN^l5r4v1oyq9}K)oq`8$g5U$`tg@ znVM`6Id7_OheD(2nWsT)GIiYsxL~Rch0SJDiwV4oribY%Z!rz526oAGiuxg~CiWa8 z+f0o=0&6#QI3c7CQ)wnZr>X5B5HFk9Gzhq2>O2nhF4IA>*<pP3<>%SP<@jY0XmT4VoM%skv$TjwZH4CLxUzhD|%B!5cB% zzYKb#rkN^$F%zFYZWuQ`ehb)y$$t@y-7+OmA9~UhbRBwAro~!dw@outEZ;HZ(=mg) zrtT+!O`G1OhQ^F(1szkKHSMI;ZO*j0AK1L<(+n89XWAVN^?l}KXLxWl|3h5|C-aw7 z9y^=om{4#r|DgoW)!Z(?EpRhmm4N4NUOk&$-6(I3HOKeBW}MlDs+V~4!A|fJ%*ICO zC7PXHf=H7211e>c&92`=>+c; zVW=NAzfMQLGR&XQhM8&pbql}|bH5F4v&_#d0q>|egi?oNW_vn<&o&oPs*+>=`6*b* zHIGwXkY_%z3E;RnhdN66X7jh;6__`F0%L_{_g8@xnfFj(d%~>FKxD<{0Q#F2C(UIv zb1O5~{eW1?>!aUSYmY&A(IT$7r5<+U)QT6e`VLZvi`F-upa^oi)oA0IM>$i=j|$ zE>gi!jrkoLc(vw_X{ugl{+)KUdUM7gBpb}X--U;B=AlElqVwjjo&jhyr_))0CUa*1 zzy)*SPXNtk)m2!zX#Q>$uoiRfEIeE?KX)8Kw3=000ou&((UG`za|P8h9p;-fkm)pk zN;}DAb0Q1sSIqL?!0R&SQ!o9h+4v7YxA`U=sO&L^(l6a>UegQgnz@Fm>+9wYTEzRz zt@OL!Fwat#qu;!f8rK76XDWUM%{dn#a??Cct$`tPD*f)m=1l5RjhNT>0vk2&KMj#F z^V@W4VBE}{1vX)R^8cHZxrz3;NpmO-L8i>>4#3fEvz%7UJLV=S!o6$$Tn}v8yr~lY zX3Sh_iq4wDE;`~+mPAUy9WB3ZfiWk`wMJZ~vn5!F3v;o2 zy8xK0WzPhFo8=zeU3W`3E%zRl55I&XPs`3ju;OKTBM!jZQck79e#;U%=kH_5o`w}) zOBJ0m@v}_!K*8T~filMc%WHH811&SO&Iei8|H5XlW%XxJ2(b)v!3(wA9e~X+%TEqbxcqP@^pgkAW9svC{#8Sj#0gcyX4r7TAopGX3BbI;-z_KjOnecbi68tYDk6Fg;;ALB;$aIdy=NNdombLVh=UJB10QR`$ z2`A{~TkK1~E3n8YuPd}{cnrKEi+&o!6P7Z%1;v&ZsCRhMV(CHfC6@2#hby(bN>iaS zi|uVlmRokjgI8hc+6eVimdO#sdD^o5Lx@yb`hNj-#=@pY_^f3OJcV^aNIC`C$rC*IPasfz1ZXE*cb{v%Hr8k@J=*dKellBS+z=$>J9a?1JTi z3fOG6Xlb3lXkp!g=@yGOrLUJPOA;X2YAKC_NSkHn3lM3yyc`SAVG$O>L#O3gS`{x_ zazB8`70WB@q0nXV_!-2jmb>)3cUugxFxF#9riG=~(oKK)M?vqV#gUSsA{SD|%T6Tv(VanoS0e0K+5zTY%SiYfuZFbkPJ|4VjOEyjT zXDqu4 z2g}`hkPF~p?V^>))A~4#E4{1*^ox007f@cX-})^jx;|FV?Et=3Z7(A8vj(g{5dPL- zTA>51bGv~BTHjv}y&&t4aS#c%ZlHZE#M(iLOQ`iv+6uy~mUn@LTVJOS1|zIJoxmck zzrFx0$|`vXu|!*w=(FY+>(d%wvDP-)AL6X9(;<#{Yc%D93D#JeZzft-7Xl<%4UHfs zTf^vJ)&Xnx1-MPI2JZ$h)mlfN&7@iP(nqrC)?ETbcF>ysFNlY%t7D*W*t+N(yk}U~ z-32exioXqsH_mF=0gz=CW<%ttwU~|$9kcGH#VXtCTMdOAYrww%xmMK~h~!znyA0lO z>%<)p^Q}n@P$;lQ)6!gM{qRe~Qe+L;2i^&**DMr@t*i!kIB7KqaJ41Y02Tr)wZ2WO zMwxXZ)m-IPIqe-4)=3#8PgyTf)TgbF)2>!&{qY9C8SC#-m_BP2(T5#X*3aLDNVRnx zW$8860Ls~Gtq&K&ZJqTfgGRfPZzwcc3q61}SqIO+?FH+S zSAjKKXJ1B07p)b4BI*|FoAicXvL4EXqgLw^JE7NRJyi*XcI$EhK!-K`S%6OKE?Unn zTSw>&>lN#zN1@PV{b2&ctJaTpA&72k8qK77thOTnz1Cgr@X%+y_#q^3SkL_ctl#=3 zjgbbdt!n`Wt>4fqdei#MYfvAuc4!gHu=P`F^o&^7?u3<5tDJ0(S=W9FE92H}sQ?q! z8;`))E$avsIFq;rSedfk8wK&Ub&PtWcdQHUr+3U6)DP3s){bCUnXyjTp+0N9oP;Zy zvwlQt>%8^vaA5bWWqttrZ2u+zINI2>f;rhvlt9nf7Ulw?i*1@x6<6B<>XEtGHtvOY zciT>?h&*g1x54wY{cr*bUbb24gL&Ij2LSflqBg*hk1cK&c)qsRX;AEEt0;hiziq*4 zgd1SnJq?jSoA){Jf^7YjkPNm(QVtzr`eTL^t&7-xHlI_vSaCk{d{!FHJ%Qi-;XB@juno!Epc zO16DA4B`RXla$(~*qZ5tRH`j`0eES)ufK+Rx^0SX&q3Ssj{`eodtM9dux*m2G#R#s zoS~3uOQ7Mx5!>lHU|F^{nwlK7Wi10ZW}BjdG26yLd+Wg*+s8Do%C&7s1jw^BQcK~u z?Qu1{=iB6zSrynisku^U`^pDck?qd|2=IiB?G0naw&^=CcGC6}<)$UJxkT73wH4Ed zsm%7`yRcGj(-weOVQZ$Y^eJ1-JQPmbo~waEr7gW2#;R;<4#7jU&HG=7)Y#TM0b;G~ z_iF%kwl_P$tGB&I&4&it$vj}^YfB=U&dqRi!^Wj8tKU{d zZU=0xtHB$z`SwHormfQ-V955a3O0vrGIBIxySf2j)W)Y$Xv{WDBZ_ewe+=pqwh$_X zZrQ5CU~|%Dq_*UgjY*5uZQFfm;N7w1Q383_W~79C+IENb%^BP8^fu1gPPRdB&gMve zIbz=S=~BF0_iP(!vD#;Uv=2N-`z>lPIN5)sK9RHCk*Y`+`(g=*uJ*gFz})P-6~Nr> zbrg$-{US9KJ?%wwwO;mDpGQdE_7o@h+iw?8!Qo@ip@-eqzK)V-Kl_)jK*ZlZM~`BF z{gJ)!9%yf*)h5V(sv3I1b~h)O4zai9fEa4O^9(?kT~G&waJvUxZG=6Q(xyoJ%3r{X zvfrdmRJ1*h30{o-J9jvWwFf1G7iaIThhDt>DD{OC>~DVwe~I>Ol$R&jU!lA;*?ygR z2?y*?M!-snz41SIPqpX!!C0Do@eo2fWZ$(4yukN+LKOuGjSm5$gSpeHNK zev|6=qxLRp+8?twJOc08_Ni*{a_rxngF>#|jXIEd_IKhD(s6qp{nGjN13$rgf&BxT z+ZWnb&>6ELyDNQOe!_lpA=HcQUlKTJAE*Vd#Qqw6y;f>pLyt|Fy<`p{mD@l30{$xO z`ke^=l-=JG;Iw@|eR)!8AF6}o8GBYfM9$iu`4;}F>`%Q1k!t&D8pzbx+h|B$Yv-(Tje`&UyfjTI~utC(vepnDU8sd#DtW9rk>B-#hKE(T{W4uKNhauGsxP0I$n_ z+ZWhX`y%RKb=!YPhs_@QlT%RWwU1KncFo>H&Eo6!9;zn#?CU;;$PN2VDvbK=3o{`( zU_V3CvO#<6Wq_OZE-oa8?45MPY1n>)_RSG{EB#f-QM>wC5XbCR+SSJGztgt^6ZUMn zhFkWR`OurRN2fz!%Kq(r;N7-Q_XE3QU(dw#-L-E%2oKZt#WW(Eu`^tuFl(=wMo4q^ z>JMOZ-Y)(e#_rh4mSy*U z_#p5A50;f>sX0n>l$G}Ey%(TnnPxfC%&atf9c3!W9xB7lkiGX_;$X`VQHG$%5JW(h z3>W(QobT`b<2{}0oX_fYRzbww4yFeD*ckHw)Ni za#*>TuMt6DU}?#criH;5K^>rC0TAc?bM8uxr17N+bK>VsK6D+sEPW4m*lI z#A{~9(QeVg-oFgoUG}f^-ri%MT@RI3_ALql?z0zAzS72?Lv`^N#o^{_{&_VkGDy$V)(*}YVt?PKeI1J}8$7|CDV< zW!`6O=eIzfv#Vaf$_w_#HUPY2Z+L;hN%k(9=PUNc10b*2ZnW7raHiAWE^_1q{aIkmJqd2nR2z&?PEsJ| z;?3#%6SCu+Y`TLdIB|4r>LlkIN~?W185BeNa&A2X@#Cb?$JqWHHyd2hDNe`lP&v(c z-wU!coTao_o#n*M1v$sr+XE}-In#dv-~z{sihlu|LzGqra&BG(E{Jo3_RV0^+$mV;|zoX5Y9PBW%CFQhYDGdoOP6XMRBfB#t_ZvNCAoA#88MD z%emeGw{aYEDrCiTdh;-tz)6e&E|D{44$UOa*RLT<=0snDqZE$he=wHHv1h`28Yh|3 zxpYqc36KoV!8}}8Ca3cea9Ny(RAkQP;90;M$B|L$oXh#z5+skah6zXcoKS06Dd1e& z4ZtPNACwdpavZ7vxXf8e5Bn8P)LAa#xSE42=G5w7rG&G=94e)p zH)tO#EH%A z#nf^g;>?%=ZkRKNj&_f5erN;W31bxC<8Cnhiu1q&b9v2)J^@V!ZcrkOIdZF4!pbr3 zCE7QgxK10O;>>NMNX~^@d>opt+`v-!bK@SQKAt;wf=WUjTqdpMp4@>-5HGHF9f&vA zu?Mo_+#FiuPH>k{74;G-#HllE@go@}9+;e}!LnL>UK3|IB)=^z5n!BkPj$*hW)U1i+el!&} zXg+_!k( zy17fX!t_J#LwmUG;kpIF^ds(}U*M>htE2p{kDHk(}z};2>GRRG! zz-5U0lwPM{?#J11JHjp84)TP%P6N}UT(?gl8{@8{BP-+FJyfxt;J)+*_mo>fFXc0? zKh@x$a}QID`GPxpEBw9W#y0~u$(2)D{fc|c61dk~=4k*Nc-{M;;>gpy4M)d#1u>90 z@y=0)-LZ^uFaJb24j0pQ8Y+y>KLywXm{ym_an z{d=6}d= zD}}b_d4o)-T;Ms=frJ2FE%l27c^^}cA&B=;F=W9!LpA^xc~V+KLUgDmg>GMGn zc%Od?St9R)^)QyiTfhgG%$rIr^Az6NE_hGnrBWL(jVJs8vUJ`;O7${$+HH_!^782% zSr*TVzF5iTeW}7=4(|@tRC9T%HzCX8nb5W8^Nu-SW(B;`AE9}PCsM#lA#dp-IJ(R$ zcLsNbXQb8pDsO~Z?bmp-Sr{zheV+xcn3rS(u7r1rLg`YTk{W+yJa#u!%6S3wHdgSY zWgypiGxx($CGR6CNEL6vd;qF>4w-ON!}FlZ^9^3n5x{GCXQ-!fllN902J3iEb#Qcx zcZjNDw|Q&nXRPP>d8+q=O5jF8H&{lqj*GpyBW?pO-+_vzJrh&W5`)4sU z@A1m%hP3j=b#Qy1SMo6i+jwcyq0-J1uLIY?+r$Ca$@8Kg=K+sJeWxzocNC*^^QLdb zTpseC{t42)k09Gb>X>=~(70-Mz$ZHEnDEg$F12Li(8E zB)^6lIX-*`I=<%1UqanuKYlMw*PnkR6XX>CAZ_KR`N?8?Z#V#Oj_=qD zmGk@y^bz6(e*N2!1@I40`X9*umX4PM@tf&p1@oIJrMbwrkb#8oB^*pJl;79`D`EVz zbV4JX|2HLR5&UhmJVo;J=v+b+zh)Y|NAs@_fQ#Xq#zGd$x1rud9KToy63_pMR`vwG zCH?$~{B(biB>tw~VJw-S@IL@j_+4B$O65n{Kr@XWMhQSVzn#i`8T{2BVJ?~c{9oZH zi{BiA!EFAmLxAV-uTy~`mtR1A(LBD2n)&&BTOPOq{@!trOZ+A_0EPTZm2h;KAKVY` zSNI%SiLUYwQ7n9o&!vU4i2sth7{z=9fOzBhy;L+T<@Zu6rHo%dIafKK`7UG?d@ZF( z*ZBdo&R6mo{UBBROB9<{^Z%s1zlQ&x04g{5&Xh>k@?8VL-Q?HxfYk9{T?VGC@hu@Y9x6S-z8IZN`_e_K4UA`s7iud?`P@vSxAG(Zdzt7)% z0)RIDX*!kL&OdqzRyz1oD6i_|FHu0{0soc>xGsKsF=XBR=$Ekhke{{-#(MZ$7~-#c0b|2_JE{zg@Y!~d zJ>fh348SOV9=*3?{ERIi<9yGXAQSxEzre~%7&`%F0U6tF5V=p`^vtJYf}xQ4;wg7x9Roe-3N4b78+@2Q07 zBlz|iIA1~ammq$Er=B4Gf=Mcoo)Y}}KTPnnz_}Dw&Is!K0XQpISr3(Sf*>1^^8(qs zFnvLgx)Uk^f(qgS1=r{laF8I`1b|?{hg62SDENe4<`6*~2e?qdC0eY)1W|MnAzaW{ z16hRN9<@~?1!up4N|eB43uMuPZaQWVBiJm1hgd=X2vp((7CUf#@q#aPu#zBPQ;eA? zNTn<}NpOj>!DNBk49HRh?H_`q3Z9c@nn3m=;OT-}Hvq^Gw6DitreNX{9AyctroltD zpdc25IfB#?7|R!|*I}?gF!d*Jmjn}3dny#LzJ&M7f@ympyCRtVE&x{rvuDG~H9-u0 z&QK&srZQ-;U@nD|C4wnbd?*#H^Z-{T_?6CCl?z(pV6#FXi3YhYnBNT3l>!DW{#Alt z7OtUM;Jz26M)1v-0NfDFya`e(D4@CA6maPiWd(NyYbnOOCpeW3%~rvFT3_x9GBcpk zCWxzo+jfEFEnIYmplBcF*(vBb4A}$0l0U$82`ngP?-qE_JN-~F|3AQc1ZU5~-y=cA zN~rV-rYA$CPcY{+xPC!SH{g#26Vz}T5X`3@*r0%Y7Gy~9nm)G~78ISrwT}p*sbT*_ z&`MFssG#T^WMhJtYhij^5KJ4eik!mcmCH3{S21K^HuA?4xC!p&L?wg{hCf!r0g7$LhS{9q#ht-^0<-MufYrK4tT z!tFI6?ZOYKY1ScROaRa+jHOurf$(xL{B;TW^g&j)@X9I39t!`pfR!F$Y8S{O;YQjt zdWD&k5cdhM(BHJ^7Zz@U&BwwP`eQN!LW@aQ85I8h1S&(qm1p5-Sa^m)@DbtPZ6HsC z6I3)D6<&A%%`xG*3D_JLM*IOXA>2&G_ou>MN;IDdZ&8);xiEMt$O|Eta?zK zsYv24+D%pPQz9NE=ch$ddQi@YUQjM`RuoL>@i|da4{+y2S$vQSqKtfy01@*Ycn=h9 zqwF(Clza^EV9{69@VzMNqpcuBq@u!EsAz&7_At@b7tjnB-Kc^rLgY`oVWg;L3uYE2 z8u%9^TJ*nqkQmVxikf3Z(MN!b6BQ1@X1r*P7q|q`PHHD4itaGLC5b#nU@Tc=N-tN6 zD3BhoRFRfa%QR8917ztU%SDi7h=!ou1q9Y2=C>hJxMTKA@X+ycU|Q7Ik-xZ@pss)61}EBlvgeK zfuijiQN}%x8=`uujn;~`9s#*2n%)nabt2ybnDs4D`x0=sMLX%yuNTdI07ng?B^38G zir%>l(j@X!!^$0zmJ*I;QHU3~7SS>>H1CSahhXKNXzBwDwu+X-gKHNJzXs_LeYy*P zPSM;CFu?~R-9wNrkq>={-Yu%45a6Ncuj_EzBl;l`+#`|4O!(^+?WLY#pD4Q#@P3gd z2F4zX?%LyO2SmS7zj#oTK)=|K$o?KwhD9oh>qbPoY1@4wYX1brMnw~p6po2ZDXSY7 z1?_?6geW!y+*1*QcI{`P{*5sGT=X3UQ7=S}6q~*jdC{{pDJnGw;FYLkC&+8jnxEj- zLHuwtY&wcNDak%2{wV=CC$ZTr5NC1H|A2E5&y0Z;S8;ATaBgA_m4w{I6BLekh{q{L z@f7b50`U_6lK^Ah;$<4ZkBg^UVlF4dtw|s!#Z^?3^AT^LnyRmO%Qt}gi6>gX`HNRH zfIB6=Nat-%ivy+bcSih81dN>(TctqdoOu5WaOcHuY=i8Ac%}^i0pdr)Ac5j8S_gx~ zTVF#ZSUj6<)sKQ+kS;gym}$Bfo0&b#eP&y$q`>)4=z{ys0Fw@ab`I@ zzkJB9h=2G9T#>kejx`jEeIhYfB9>EHRx19P zVz4st9=d1cVzB~ND#ZBu1@D-+EC8fZ?79!$tHhbZ;Ht$1rSMQA=Fk#*L%it@xLUE( zEzInuI7Py8Pn9$LlGw20pqZ(jt`CSLjrNW1tsMF}0^ryqms6rZC& z@PXKaB7rXPnjU!Q7AwAi%0uzgTafjLgQ#HhNSsJ@zFzUq_kimYFQQ{;{o-SXfqN|G z90xZbo_7P>p!n}c;D*F2X|Wm>^XYHekBAfanCBDmYI;*g#chMIIVRqn3rFMPL$o|i zh_kF9dn(R307uWnNffL<7yDCO@Iu@~3+GF*(;eK2NpU~@wc1zWHCg~(iv{#RJ4mW2 zAa|5hQbcx4GPV^sC&^LTyqzUhv6zyJ5OJ4yI6%civf&i~o{~=* zV9ZN$(FL5hWIJU`$0eUp+`y}Fj3liV~V$7^Aa`vMi(SSbe94oKLtT0P_lgtR)QqIQ7tc6 z5*-MYi;^UY{6i$Om&1Fgr27)MFv*j((2SI5X}gY+Y)yb>w8Vk_#7K;!lFA~n5?>>( zHcsMu7F@jK6kSS!V%hY4pcd(k0(f z6)r>a_Dc+AN@8Y0B}?K!u|~GUM+uT65gH)Nm3-0&4|$UJ=3<`t5=k3Kfn<=*hg_00 ze*{t}SxXD&WyxN;kyj*#rh>aF$)f7kHOV|m+>0d5rjQj&{KT+XA`x_hluE8rlu#yd ziHE;($85?NO`@NVOKF#E+6F*}L_8I;PRWs(kUfw* zPX(?^V!t2$x+SB>z&(^$CWGsd^oYPclDwo-h`o~Uk7KY;5~hT)e#ugb5*|zLq`>=t zgh_{K1|>eULJvv)^v1OhOFpBmXGHSwUpRUq(QJaTQOQh77{?@gX!jkL%-;?x6Owmn zg?=g-G(h$YR|M|4Bt0B9Ur16d;QgiK^^Y(%DY2)Sy^;jp#-+TLq?iHVAl*(;iKFz; z2LK$C?xNt!Nvd>$%vtL66*xC(l?p2E(f}(E4{6@-n3AXT$ugMsl3FXE=`FPogB+I% z-i7xQ(!Eq1J1K3W^C3Rcohgv{O0(#3^OOEVF`vIwPW6ye(&a0ld0N^)=R?j&C+Rr+ zS*a-u2$2@j z(UVYVMh8^Fq^l@(4wt4a0WLy1uo<^5QhJjbaZ%C(8z768&Zk=!BMqS!Jyz66qA_w++ChO7~KpnkFr!eKTG9=4r?> zq_(tJWlB3~tILuud0@ zQ2Gw7D3_&+s7!c8`XBvEG*_k1t>E^Wv@RINiloi%@Lnu!Edf^|O`)1I_*P3eylR7u;~!BtCfiUMz(w2PW%H>8*S;ICHtm`dC? zr6YZ?QYRHr_4Sr?=VEZTrS7yd*GoU66T%JB2lQ4oN!o5afclP>NB*DC$#KDhhR%M@|8Nq4LQpj~?P1Wb2Gzj}^YcS<)Yq4_}i zD?LPA(u6>8-O@#I;2uej{)^kwD-~@3u21^iPRRPDvnkPhEUk)#Y(P3Q5XJ_jyT&j$ zBppe|;ILHv2e=XG(tGgmMEb!HxKZgTijc;n|I%_lE*+f%G9i7h8sw?emqNH_(x1PD z%5!NWoey~--9jakm(q8gFqcVb9WA)8q?uG_crD%d9_Hd8`yYidjxqzK@#7-O}4-uGI!Y)%F#V!FJ^)Bl(|s#+)GwE8-w1mos?D| zmv!Y}@+V{ma{xanE7fCWKC+I>0Qkx{bS%YBHkY}XJ1+oy? zHCi}BWz(qe5+*xw2_#&0elY+MGRr z*esOA9tC$b_`B>NvdXT>tsY7CahM&?4LRQBa`cqo%? z_z3WFS@cP8m9k-K6;;VHw3u17>@LM_HL}mBE_FjT_dlrA%IYZJyeTVP3S6D+=SXMT7p_-cXorjFH53Ws!dijAI92c+9}ZNkS$mTT&HX`6~G?IoXoS;tL^jkh9a^)=?hSjKO1aE$y35axW@m zIm<1?z`4k`k3i-sPo|!Rn|xV62HoYdcno^T)9j$>DIcP9@Luvw^!|CvKcuw!xO~zd zCd<~`5XXMK%zdbA8 z@hfbelV?-Da$Y{Y9k>hf=Gou^x$-TP{N%~YzlTb`{P}Fa3*`UZ26strw;HAk<(A)oyDV=hh1)A~ z+mC>|DnIx!$Tc}L4wq6Suc4Y%vHV5?xDq+%G`LdvS973JCV%b;59RX7PhqS=-n$Bu zxGs0e16L`(_bY5x$-kWfT(vxflC&B*htiK5@)cC%s+I5I0&r8l_kGx`lRx?d+%5Ts zl!e@u-=f8;Uf#sP1RLbRKSQNazL;7?P4YC_H}A+zw?m~_KJh+mw#Y5FL3UTZg9=&q z(y~dpza8MOuj-5EZhV z6~C7N;G+285I9%GbjlRn6i3%%&|Oh=2E;?r>k7E1;x&2qQtSwWBX7kRtuH4P9e;xO zDC`}f;;S&`g7_)ceGe=C3RXHaPbog^1$SDJu7t5OiWeQ2#9777nV8u*#iOs__PpZE z3|P6K=&%JmK#@YbXrN-g4!9si96eIOiYb(NUsQZbh2#)LzAdbTDzYZvAxz<(2rJ== zt*#&uijX$QA{Av#uo9)%Mm3LU#o=Q3i&6aY8)UHxUM{#e#n(SV7Ox1TXE#A{A_Egl zRBV^h8>d)ANldchx)CHrabXz7QWd{0hrcw1HKo<*iWrKoGZgPj0MAscptL$mF+{;o zwjz)Yi03FKsQ;I%V2!~_p5pu|kbK1}I`LVc=%U5ylEUFAR03u&p51jMxECY#hf0HCko|T zFg>bRKq=ywf<-U-xFUToJWME7QQ-1aag{dOXNpj2Vm((}Cr2+7b102}sdy_KWKwbX z4y?RVI6eS*tyn?9tb?+d76?b>PZ|J@DQDL}=A;~12br_7>3hgrly9*ib5$lOVZ}}P zH#I2TmCM56$U~X13={NJzDo_puiTmq?t=2} zw}1yI%SSNXK&9>~xFBT{0fLp`)RDfZ9M}aeM7iNp078`+o56)CV-~`6xbp8@;3AYa z9zzzXTumqYqm-U>sw`T0m5$xSD1V>=L#%S2Ka9mGjdB3ul`H)LPf#xU1YDvrZ2%-m z`4;`V3dzd%DR@p%awscERm#QzPg72N7c)y&x@urLLup|OK&H}Md`c`Ht#CGq*(Eu@=iZ&wkmgh1!MP>Q<#{1o6?^8 zK<&!qbj-X%={}6XPUXlmSb3oQzzU>GIiEhe=vIEX2JnZ<{{I2cqpYlf=|{>ZAL3Ga zmDL}C^eM|Jap+gR{RIGzmDXwi29!++01PVIE8$^CImUp8VdXjMosB3n9)mnlHf)5- zs4_%>nT;u!s-$lXZGvyTu7M?2|%E7%*_I?LrFO~ag6`oW& zzlSNkQp(K0y~aZexPxl%Ja}+ab-WAinCf#XSvsi}RYApB6-Uik7gfbP47#d*r=ZPE zRapvvyJ`kyL>{Vxw7Gez{2c-JQjOCa;H@$k064CiN5{}ksQz6Bw;dsn?d}A? zSG9@?A%3cBR5$fkZ8!<|Db@GKAUmxxmV=y8N$IPUv#K-iKz2^$Pg~D<)dhPDUQo%X z1`(hNrX?s)6-4csAXTOdJOrx(%W(@Xs@7BODMWRGw!u)7>l_2q|@93FNQ1K`PNL0=F8>W*~ z;yQ52s(1E*OHm1^?U<_aaso+H?VyJ!Q+0+y_bioJ5LB{NPrTqZM>RsfO0H^ABH($d zJ+=Vks}vL~7N`m+&bp-HQTkY@niC6^%PRd*0IsM4_Jg~sIzt=ZHPu2YS`?|a-vcRD zl`X?qM!=ZZrYZvt7cpSpi=cU<^5GE-FuK#tEBYa z)~Ng`3c8_MO38Aqs^&hd+*IABD5y?#N)FjAmFWlow^hlX!&trQ?GGVqP|ccztWos` z52l+`k?SD4qdGJfq*)cOfJ%!>LF?{al?$CVxTl(a9G)oc2=p<8wG4NUi;>Q4#_dsN*+F!o5b?=5h>syO<3 zrcYH&i&ejBH5Gv#s}kwO8&EAYz{;R%_g=tT5KKV`|qXT$q!(QU(vs>RI0c;Gzzqy|mf5slyTh zcULD-EyzPXbPfvjcS%msf005Edi4Y7%saq&< zh*qzOge*qAgvu1L>iZEe7N`DoJ4n3x2sL~Y)XS`3EKxn<9!QdUZ5%u#tN(Qbm!dvR zscfp6{~k!1y7O0ab6ii=H$I_E^Rc(0yxNGX8zk@4MU;P-e zV)buSJugvDBb8G1u}r9xsSna|<8pP=8!%m=cBFUZy4sx`0OT0)O$m--P^3%k`#7XW{#uIqrTN1aRC#3S{cXsGn6D`^es zQ_JVWQNMbWe)q>}uN0^Zs8`lOHmDZ80e?ek#!Pq^R+rQ6JEB%nDE&n3cMqDQxS!z0 z)QUWiarGJ=$ZPc;3S%5J+bFtl)GS&7+%ZioJ;_d*7?L?_(u?5FMbkwwimT>-RL^qL zgi+(qL-W(;81&TS(Pv~{ng^eNcx&FK4D7h(FWO~JXhLU#^U-Y8LDN^`LMe@(M(>H6 z?60w=ALo?j^<|LLnypmgKBM_f1n#Vca~xNDPP2@@xIM3#=77Nqnw_*p258=T1rn%H z+=j6r&5XB!3)cKei@-%qmJov>nvB^1glc|_0T-sJ*aR+IQ$|(W2+dl0h$1xts&z$a zL2)I$<=t2K_ySarD9{gMo2+a zfo5J31}|woq|;1=8qE>dysTljKz2ow(FxgAO~VY3V$Cm<372T3uW{|An&@tLDAPQB z1kG~II2}2v(5$Aw^SUNzGc+qTX;hr9(mb?-O10+V3s|YqG)9Bm&@83T@@h3#=s4L; zO}{BfokmQn@GVVgA3WUF{8RyWy~d7?Nj7Mfk%{!VG)TVCM_|qEM zqEV&6W~-*809SiobM$A(+BA$8kacQK(oXq66GJO>m!^$!`yP!Mb>|*w?ojC7t2w?3 zDvvd5lQB4;+4cpvK}}mACO@oMO8ei4=KLpsKhd;Y$0S~AW>D#WQnR!RDz7xhHQ-)r zdjEo^gZ7O&cyQE4Qpfg~)`5NpCv5>6aA&QOmOK}23-w`LwMS1w=B9nt3YoihXD$F9 z+S>C_@zg#YfH5y^))Dyg)>?mw3p=jeavy*b+DclbPHLMoL435^DHitCI-5e%PaDtz zEB@NxP5@46Ehxf0t-bsnrgTQTaueWZwK23moYUqU0e4=zm7@C#+6GDr1GMswp&6)k zp@L$N_Puy;!P?bga2K_e-2jAWxBdy!q1p{W@E)c;NHIgWww>y&5!%JnK8(}`Y=zqx ztu_5dvDzEcAdA!9X#k1W{?GuM3EFEhfG28u>Cs5i{zA>KWbK?9$WpXdscxF49ivaM z(zOZWz-4HcQ<*SRTki{!rTu;faM{}5);yV?bsceLqTOt4w|FSQz4v{iZVepkEw zGhER@!v^p+ZN?P1ZPyAOL#0FOMC)g#mi-4Db!ok~L)NWbPW9b~ z+TW{*PK0b!+qwi~ zLObykfT!B(DEND({h|llbFH3!zZY8h3cz1#lV;%hCbbRp1H97yK~L6e?HJVu9dw^i zLhPs$%>?|I?mg<@IO%Gq!?d&R4XPcw=!)rGanD;~P9s6FGU zyLkgLFP(@3W8S(TDykjV%?^R=gl;p zoYFeL7yr4T@26%vOl+HW{>iSMWB}lij z9V)>(dq2$OqHYQ`GeUF%9}I@;_R%4#2;JXTfs545eFqm7rPFQ>HdxkR3 z)L2~+MG0}bqIaPguRF~KNzlEK3!90$CaR_-=`1LjOxDeH14+@941%QUex^tuO=oC< z+jLz^0jy-`ezgZKQy01%lgQHjxeSBZx-u#-6U* zLh03I-6o3QujoRpVdbjs_5+Y>x~cznMoA~8dUCPuYykizx{eB5L%HtRRM@Q0{ptnH z>$*Ku!MddzZ-uejx@8^U>UGlxA#2brpc~n!`^5`xn{-tR@Oa}8#wCKEuhr0Pxm&}?)!C@seklXSNsk%2Xt@K zU&a{J{jd_6L%O;%u=zwMTmmwxOQFDeOgEcOPd(M$UJAf7o$H$bJlE~F!r%+tA`04G z>Yh>~Zc>N07tg$2Fab?R{c9Oij_Kp-L7eoDsh;JmPg8(%(N~m0(^YSX#Gspg#}WYC z_0KuD1`oYS0|q_yl498O((9iZS^XYbz0c`6p&;k=Bf*ee&`T3Q0`%?9 zzy<0P_d^z>AEFj-uzn-;i!bUIQbj&Q-$viWgz87>hJ@)$s7@5FZ=n)tgg(d*(~Z;@ zQ>-7QU$g>Tw0;$ZuQB>LV^E3JH~oUa1pV7nF_@^INu8}Ey=n^lCF>{UFrA`jQI4Lf z&tD2FX?ivlVbk?Tx**HYD+VCT)H{9#E=#}51vAUmt0;HM(T~#uovYts50yOq2Nd$> z>&+;aDbRmMA>1W>8~p{ASi{l0OiT+=&G!C;a8a|%3*^{Z%WEzuWj z0IpOopnSSqA4>JC3jJy7@L$(|Z3UHTeJZt5YV_aJ3VlQWntF=0`slkbeN$ih0-AOD z!FMotOFxThfVcI(8DXVf@7D@kgZ@uCk=3ZrrK)t3UiKfjJNhXUbv5h%`xTlkdfC?) zysHoS4)A+=Kf1nFeWo|K`+6P4FKzn6^s!yLekK)HI`kPSAf5UXRHlER=llY$OMmn~ zXm;z>v!VG=zhEw`^ynFpxPy=MO;<74tAFDJNT2?U4M@K}uNr{Idf5QrLwd`fL5B4i zn=v?|-=f3Jp6LJFjlogMwi)?~{5D%1K`7SM7%}Hv^wmDR;yC9LPKjZb`UYcc0L5o$IxvKnXlmm?V^5$fLDP#7z{L=nFc7uyG*guA5oM8oZBjOF8(Yu*wnCA{S zn#l&nbWAD5&{7PQR0HpOkaR=GHK=45g7ZN#4OS5#S%v~y0J9Ar`e8~rhM#|jX0Bl~ z760-Ke|`vAzCnE!q`=Vjf2+RXo6V3F8qQ4uaM>_P>Bkkr^6PMW)sRH+YlfM&;ED`0 zsq|lL_?oiv62qcKaHWRc5g02oq%DC;xgn+j@CrlDEDT;Ze7O#!(%_l{%__r9Y9dz~ zEQ;W--tZy{gAIoGG#G0%@Mtk^GJHG=*&T!3r!dxRm?Z}MuHnK@7`$iDzKdJXY6v(A zEB6f{65!elPpI$IZg~0-fDXeq7ht8+u=hGlKQNq)h3ugrqy&RKhBxWt$|J*XpTJ6= zVcTiI`wf>UV0~=(j3V3tgW@s(g9dwAsD}*hLTC;f);fY4F(mu~%_oM)gRnAg2wx3< z69$(Jz&$loc0l&ru<`#oBZiy#P{4W5$C=q2gpL zqTZRaF<}ij7vt_B$Xty%bYI+z{*(~A8<*4K;bDy53*v3OGm1+&Zp@%_K_`sysZcp- zT=5I$;$wWf3~*ng9|fg;#+*5@>2Lfx4&;=vj69q+wo^CajBypkQfH072f@)fV`4RA z=Zyzu!{!BJ#!}b}Ff!v|GtjttHqN99$VFpe1-KAn4sETW#y2RC4>L;W z7K9s%XTey6ak@7KBaPqehodN?7ge{Sjk96_k1LH1}@&#lv)i*w(2BIBHi|je*iDA<&6MWWcxd%$ECJ^(-$%ow)@PXS#A4r z0S0Sr4^Ym0%l0AlCYo&7agepzc9XF-+xt|->9$R?hRuH4#kVmyV*6J!2A|qSxC8gf zRzgKeXS-S|_j%g2{SPWWc5!yN+B0^4(@qj-H%yCom|enO;9~67&I3uZi)O$|hF#V! zkZe2S8?aJqw{|hCG}xt3jq|SE*;WkRw>$a*q|5FlbrJjQGTI;;wwr7PZq%;iH15PR zyQ5jK`O5BHQgOClNn5LjeF;5hC+t_!5d?qxsCgjg>_ZR1LyXE|3tGnZj7+J0gy zY$n)$`VHWz_FMm>nc0WXxtVPHhkS7P_Dd*KDX?F#5GsZCTRs4w%Ko3-;HvGNRzao4 z{)a~xykXx+hu~`Mm%oR>oA&EdLF(*(TLjHp_WyN&yKP@dXEN&T%l|I{u&?2JI=*^8e8e#btOcJyZZHMDTH*f0OTb>2R&1)6R4xxYZxZr{2Rlkc!Ux)|5qX}^xP z>j(CG%AnF^UpXDPZu>ixF!s>?$3@WWvH$lHxJUMX+5_Hef0Pa`_1UW{F_(V(uT4Q7 z+y6}!`2lp9x5s$s1Gw$}kBHfLfLbmp;S$8 zMvTj?sf@4Kpv3hUn{$P0)sEzKF75w-i^^JZy|1SP}(^eKxzdxrnci#~GJ0SZzM9@EAL3NFT zzE&9jr{o%D@-OEt+_6LLu^9i)>IkeIuBXFrjwby!0MwfNMzQ-HlXK^x&}=eHovH^W zYwv(`nKUf`={6Y&fr*DEeUu;fnC#jKvyV*NEHKz>GG+yMpGn+XkoBAFxB&;RO@62H zh{KfK^ej3~ss9?Lk4?Eq`;96enpr}$H?+Gom2H~8~pv{{lSBljg#ycum2 z7#wH(bq2B%jP-wD@Fb&dE>wINZvL2yFGKtY#E+3er!@T;U57wUF}PEpd7AN)0^|(i z{*NGM85K`3mvan%cL2^ae*G8Z0%Jf6SpehdL6AU(S`E`d47;t+3}zT;p})vzp_*j~ zW8W8;ZYab20#w2n=hkB|objA$xe<)#L6~PGBcIOoMKON+5Yvrj6wQDvhVkd00K_ta zsdN&@*h^7HJj0GEZV3z@>ar#>c9CWhgL@Q%$&A&{VJw9qqVhp1;}j*1X^fLv45l;o z&?}t5c=IesCSxw`!dZ+AdbF|`Ss%f44&x~uFvw+C&_`l<3>HPD`3wPNR0Rw+_4+O` zzL*1*LWVtsI+qzH9^kGp;;2e_mBCpK)7KbcS~-dswy!~o8Se2QC5&te6G|EBlmnMB z?5QkP&S+i*u7Z)D3J=#A?Q=jX8DCJKRmF&14^qvL(XUyCws2erOFn$Z0uNYIQ#s8Y|2_3X@Fb%wcnK_y!QqSO+>CJxtcQSpm z3UFsrGkOCrnEp}>l>pOiE`SG`3MgO-GF=q|5^ef9t=loCJUY0RVtW1>NUG@{6zSHP zCP-lAmg&w}7`$yNTL;Z9(~)jWzT5O|+H@Y8-u(fCy{6erxE(R=d(GH?!4Ra9?qoSO45G>=Uc$U&T@zWNPTu9;2JvQlLB)qR*QHk(%qK#7@815`@Q zhC;!Wnf1{wRc;nR@lS=>Fh$*!X1*-Qs>~|s!m7m^f&w* z&3mZ~?rA>jZxAo@`P3KiHlJe&E62@st1*d_=KoNI$k)8!P00Mrr*D8wfAejh!}}@o zhfhFGn|r?v5@bGyLaSi&fjxjW6%>SY_x!Al)4u7}IBWX*2WbQ_} zY_IvAB5-}?H_KtH-@G;s++*`Hs$>nApQ76Tpm`Bh&09ySQsLJ3$TdU0h>V*&|?V0KM{^JE^OV?tic16u(1W`5*`!Q;%oXc8xw zznR0zNv4|0=RQoU8&L6On*9OJj~PtY=g(Z+hf6ud?4|1TY35-CRL(HJv4!j$^9mQ- zdFD~-;9X!&QY9;ZDPe*O#NS_n=^&=beoQc!c{m1x7n$3s{2Ic1X#@#lZl@eLoVlA` z<_M-C79Jv*?@|3GifNqdy z<{Rc1>|joL4}eZ)UkgYVbLJgPu$vk60pLAMu@9#7h`FZ+vR-DtVXrqoj&WBOGA?qHcuXI&gErSl6}!$`>ZmSq!SZX01_LbH=-~^r%%bXa zkYz+QNU-IHi!c~t`GA@)v6kXSz~d~7MX(ufnN3}~1j|s05)v)_sMnrkc{dTWPPUx+ z15Bq{4pM}aX31mWE~Q)Y>;cHI9H9*}({dlZ7Fm|&RPN2TT=h3(IhO6WU@X@%dOJv- z(DH>JV0qgh2_ph$gW%3Q@5?s@*iLLtFoL*5pK1mcQK6J zwiJ!SU%lm~Qm8ao9$y2Sjh63I>fL0SMz72r%SUZcX|{C90O_Fg;S#>&gz3=z~ikBQkf&c%HwTVNwk{#22_%*^kxo!+VztIAZkZM9NR z=cvsp$r+^Gs$K&!WR**K(Xdqq9oreP%9#uJ6RY2v!Hrra(<$&VtIZ~u=eX4$mEc}m z?WDh(=U^Qpg+E7YF8##Ethe|;#o4+)6>i{be{vu5}d$nt9fXX^|_i_Lzg|Ub61Y!(gHHcS;Oiw(eR9 z%`4VF9>?HS>vUQ_uUY>})uUqT#YfEi`3mdaRZzKZ{VESu zDyVy^&R}xS*vbB<+im`7|1>A z_p(7+t+mu?yl*Z03EV^LB@u8tXx-odz>xK)UXTr2A6tugj#!6NY%^-TXF3MQtRH4# zaNK(6UwD|XKCu=4o?3rHy}oDGzEa4Ju^was;K@?aQ8h1?)!!KOW{uH%bewgu6jnl5 z>%HM9lod(QQyA+{dKBYWTBPJt<5^$Qf}6ndrTS?itBT@~Bv!xxY$mhjm4HiO4eWxI zRMv|EsHCwTeh3fgthnvKWw55!!B{41^&~uGvEHNtZ#HYM4*Ld2Nx{S4+QtWb;rvxe$EE(eEsn=Oc=+r?a>y-t#Dpq4MaMi4Jp%|=T z&8OoAH&|JTAhoOopF(z%wVoR3bu7b=nAt7X0eal(Sw6I#HLzOMAdM_r+GUzp-+RH| z9hR&g-kVv1{jk}>Qd8OQE^8|-ocCDCRj|^^`uHDMxz93;fwZv}6hhX{TH6h-gXKeg zq)t}5C2$W|A5pZ{#WLhzu$xtU2jn3uxDtastjE5%XT7W)3*e}a^-BOqKg&7*Dvw#) zXnz=BAglH`$Plad4NP~K^_L&~jj)0)fP2EK-wn+%)(kytj(EAnwguURYqg^GhsF}>)HHtXp`>@l0i z`yq3(ai%TH+2$2JAucvYMKJAZ^DeF4ZZjayUJ(x?Pjk*UU$)UFWW4pmirZ(K6*l~+O+=!a?R#{RA?`fQq^s;lc4=bSTV5Kv?~GmObZV}eGJ0Yov18HPbongdv(W<*3K zDjJ2TF&Z0oQEb?I7klr$WADB9-n-u4I%ft3B=7s(|Nptqb8o&c?AfdBwcFZjt-Vj) zeV*MZ1Ge8YmG09IcrGAYaL{uQ17Ufd%jw?gkY@$*o(_9%IRwfho^ifV;5&N&O+^$=fc-uzwJ4x9%Ozhov{{DzLXA0Mj!fkCAx#MpI34p z2+Q=kMaF-i*9&s6274{1sAs4b+;YscSK2ZNTjZst$GvO4u6=;8bzXPrb;NqFze*5FS?eTg?*R@CvvHhLc`5Ls2{B)i(^qX|H3{-We|ic}Qoy8g54In%8J= zG<4ldL1*eyuU6FQXI=y7p5=uXUlLMYdR=V*l2=|gJkh_`Uhg`9@~xL^C&=t4>!|{; zzbyMObjgxsoJKK1Hgz0GM#^sd3SkpvM}LKsNwTB#_-C?A^AflzG98(csj_Qi4yVa3 z90%WYS#~ZcXUIm;^~X%voQ4oROSbzN8k#Nheh!j3vcnW&%$1G50b$EzUnn$LF6%=c z;0jra5BOHf{-O-@Dp}6})K<$vsJClm-{*mEt!&R=P_C10A%aZW^4lBR@v67kg`o?_z|`3vUO!ZvP1TOhG(a2Rs@P&vXg57 z+$|f|8+?0Y+O}ZWD|62QaG%VDjQ@UFjVqu$Ad}7n$w65s4HV3iU8SSoknAJv;={7| zC!jncyFs^YM`iBq!Ej7=n`9oB<Vj|)^`ZusYka-6~^dp&?JeJ3@RkRA8$`;Z!=`+~{1%y49mD+>$UdTdAV9Z|1M&5*! zSF)Y-`0lmr=3bDzk$s|d_Ez>~18VPNe;d*4ds*YnkoiHjI1a@}StwY&geIRU_d_fK zd~F*P2jx0S#^uSEHV5vI{GcC-!}61KxE+yCpd{B(`JYn&JSOim4=o&*+bHXILY~?P zxRdfL7eIMR{)nz;gR>%2kw5d?a5>$@j1#SF>|4^^n>>CrGn zBQuKOipMj7%Tmmv;TfU0mxtCzDkfy2maUjgXVoah-sz}~R%CZYF-Fm{EJ(&G7SI*r zI7MtEw9ZldTo-zdS45KeouC*^#Y9D&Az+xKcqDw>0vsBeqPRyf@yVY%YtvFqQegmJxlRTU9itqJgbA+97Pm8yqK#nw+C>ZqWTNe<|}5_#6T`k ze5?odg^FY39WGMDlkvz^+@!C47AxMLM+-|7r(%Iys^~z#Ws1j%D3&YEQry2nvF&dN zTd8s+pSRD zgs?q|Wr?WmRh0W4#Xd!KI#c&69=}9!K#}7Q_JfK;^pQiJ!mTENhZJ8rg72`RW@jjW zL@|jL!%;=!+i3lm;=?Ndk1KL1dO4xc?m&Ad6O0e4!FNtui@ioF!4o>dIK z1>iYFA1{bLuUJp{vkMAe3)n9z_Pz)3lEOod+GRz9s-V20@Hq;;tBM0h0lcR8lSbmY z;`I{LZYa7u1H(;4?alz+Ql!%b-fcx9`SW)a-H)TVt5{DN$a@M;aslouyeTq$p!nxJ ziiZl1XVCMJqVjl1d8}Aj0hCV^ttqU2sz{~pZJsHtJwVwHeDG? z?_6gny(tcusa&4|+$`ls+8wi%VKj|%lw&UgH&>a{2JOvLexw&O^OfzspoIm>jWit# zm7i(LEK+WwNHJIWc__NFSeg9;7?vpC(u;(p%HG3JEK@EZk7c>?#wjqYP&ToGa;0*` zUno{7J1j=AT3LH1_|_=r`J%Q~x$hoYU#A?v0JvVckpj&PN{@FCwo$p}Z{Rj5d5Y>b zD_>HOwnb^6|FZB_r7;+|ZAy=EXm7jnlOJ$9lxv#hINPJt zQnGlj(v*Zg>{D*2joN-?cZ$FcDBDD!y@Sec%7HIWS^fj098&J8joM-5qhY8WQEKVM z;Zfy}Q^9adndSm@k1JDqp@kDlhHUFerED^QrSHQ7yNB$>5a${OFIc3bH`48rax_e?}_S9vA`!tNG3^)50rh$S%0YP zI~cV`%JqxD{#bdAZknDbvnlcNRJnn!@1H5hYy;nOWylGTyioR}2U9PVcgBL`l`@6G z+}Fywl|b@FS+)X5-YRD*PC928 zU!tMeXw^81i^r&{($j*ms?%A}Wt^(E0k|C1UP|qZR}E^8+60wrbrcg-_2~j{lIl!b z$egTdw+`%6RO+VSo2q(6i*K6h16_AbSC#AvJ!hyk?Lje9)i)8vELAwI>)9#;eHk!E zC7poUT-C{S=-52f@17{;t1i%nU7(Uvf?=VmK54y3b&>8#a#gD-*jlWLBg)>C zma4qzMb|P_KFs|Evnz91GrVyyFP&1ROu8kY*)>r zqhN>X2Dtz`Ra3SDw@c+iQg*8bYanxvs={21(q2{gTCnefE+E;j>O&Unfa);?^#@fG zC{voJ`j$@gL#jh9Fvy2hv$lcnh-ym<0FSC#CV=Fas@)V6$5s2^0(U|+j5hj7Ro~fY z=#=VrT1%%@UC3;oQH9VOr?aX|GKY6n&3{Jg_f&cJ0KBhyk_+GiRqcHMK2!x7Q9M#v z=b?C_x<;9dr>X_y-aS+GpmqIRr6w2kh3eRC=<-sv?;8MLsm5*v!)w(wye;D2sMuvF z-m1Q-fw_IBN^FOQ-m9)t0QW)l>@#p5RYxA9*-xrhgW>S8?27J3MGc9XHl|as5e`fC$x>hW0^kVsiWOiOseVSDYPNdY1mH%g1L+anXmtl3T8~j59{}K3 z^(!m-K2BYW{M{V&s0R=|UR@~^QYNTtc>_36Ev4JzN$NDR43pK*euC&J>bn;~IaS^4 z7>a4?g_P!2=jibu{H$XQ{_gf_An##{O1rm+cI@rWk^}B zep4R673vTg@|9{0`LwIlHOHY?t#0grPOnji_C)Jz)!b1qtW$5JQ+vI7FYV0@>hw|| z*{JSE_l=v>NtD*wtbWI#g)QpD2Pn3xciaJRoBBCj5^PuNAA)j+nx%+ur@HZ32-~HO zr;~EGdi!ZG>`_;v7-+A0z$gIsskf8S*{|-@3=JJnXOLkzs2Lcn$b3ziQb-4|K0>7r`3tSpetw8 z@96g9ta|cL0MDs&DZy}Fom~#V3+f}}W?xkArPeR0f6qX(m(^QyP+U>3SdSL2s@dfz zuBl_+0eD>dOZ~@?5>`K6>;*?U@eB zm+F(0gMX#&X@RiU>U4UA@kYJsGHP$tzXpNwojT_QYVXxQP@3X{dUk)*KB|>;pYut5 z{sD^5>gewv?2B5_8VtQPJT=ru)1Umoz8X1QQS{T~?m{2>Ya;3KN2X@nOz;iRc$4UX znoabeeUK)ZY~5gu`2cD|G#Mj6IaG5g6SZL)i#LP~*9^D{V3y`Ly1g2q>HQPfM{43O zp@nQs@17tTrKwF%l}2k;(h)gE<3U?{tY+7CP>$0yr~JzV&4!~WCTh-C0&cP7` z(Rkj5l&PB8*tq;O%?)y?rfc?-VVR-%?E;jTsmUfUZ;!I}<~4m&Gheei03-`EZ62Uls0r%_%@%1UK82KA&5slxE!O&fnwWi1Vx`7ahSpbU=1L%QwPrFML~As=N`qvr=J(&w>^e1(3N(bIc6N&6;;K0b4YeBw*jF@wf|;ZJM$b0Nk!AOP8KIG}4g(?$l^$ zzwgrAzlLV_XkzL0>RwG9a`yIVe(Z^2zh>1{D1Sin)E~t`jfvdJJk7UcZ4PPrR7LHu z#`P8`k7&wMI_0Ql&;dv}rg>ol?zkqN5)3Ca@9E9nNln!zz@5@)DC9n^c|v*2Gnz}~ zq32o6nPH$jr`a(DB4nv6G~pm6^&&fRJy8B(v9Xd z&8bCTxUR9?0q%xo=6g`y)VNcA{+7n~J%G10O1i+iqgk>5!tQGBmIcW@&3wA6yRW&B z1&?HTzievK??wG@t3w&r?mCmT2gi=D-k)=X1?j%3ZwB)Tg_N zmzpF>Fuc;#9}eJa&B@mQzR~cpntqUXweqM9_ICA03q!oW--;H7dcUT7u3_Gll0Y)tyDz2Gv%KZapwbBMPzn)8 zdS93dt+TyHSA)8vyswV{!)R|e@`cBEmpBjLSnnTA0FLu+bqJI>-qk1~8t?5x>7ohV z7wM78L~lR3Xq@C7L@z!kdw)-d%@pskM<8XY_oz|OWt#W$GiY|YcN>beXLzqD3n??b zXC;GSmiL42z%bjpaz`-C@eVoyhPmFytASyj_ZhO#^Sx`A0N(=da^Iq%h2C4&fO3&{ zEqZR1>-{+%?2El$PzG{|_buxCQtvJAQCsHyek3TDdvEOlz7^gtZK$pEcB72hD(^I! z)YabCpMr9Yx2rGs)_UJ37hs+DXL`cE-g{mQNcw2&c!Q*`wqpYL`fC@G135tZ%nd3H z)LKe`VUYIcp8*`K{i!8@L$niO(cUm^k2he*(v~A*HA35mHeR-NDc!`3(z=ENH(I;@ z4w@aKO(v^9Ry*nmD935b)1!(U?N1cLj@Rnw;&y^|65TXS(#B&k@sqWyW}}5E+I7Ez za+>yg$_Y%@o}fiLL#zKCz?s^ot-v=+`;lIG&DK87L|5i${Z0cnS1VbDVxBg>D@f*R z7f`^sK>OQuw6{=Odmpj|N(xP#jA z9suTP$J@YnNV_`+xWifn58M$gLu>G;_K)fS9@B232>Q4-gmMWdw2FbKozxCF4wX)6 z7f(X#r?oy5P@T~>a|7_K)|DPEozrGW(E54pBywslXeUwRc2OHvspWJKA{?6nC}X-Gu0S z+IDowb6*=tln=C*Hllc_y;TZQ9%%!~`+clkMbZ2d?Ie0H{8T&qdnoZt+pIKj&$XZO z!0bxz$4b!zOiDI~JC&g7+x-iPSjnEAwPhg~Oz8j=u>vqsH{874bTTvUWyFwRu zV{|TZG&ENCg;E3KbWiAdCP#ODJoFr|yHXRt3A%L?P)yWyO9pU~uFPvNOxC>`0?H}6 z3baC|=}J#RFh)cyJj3eM79X$qBQ>n_s8^c-C#xj0L7J=4LyUe|&i z?`+f^q`cxL9p?+&R^87^49Irfx?=$D)Oq?t&)vG~6r_(q-s@ zyRExLkLvH}I?aHTd%7B-Q1HI)H5s{=y8aY?ywc70L2b8BX)RjV$>36 zdN6gxX9I=Rmwd{S9lY$bu{xBv;xku@+FhT!^x?}rpHrhC<-X4!bauS-xkE2LU-`@n zMe*9lK;GyZpWW+Gd*}0l?ub74gf2(zqfd<#2pg!s?hled`m7%yWw8E{9?cHXTYmv= zm_B4CD2MA!^lp2c-jfCUc>Q<^<0t6X(W9n``qrCJo1{UYz2Q>w5rvBaA~3%hOMwXB3C^-)aCns`sTksbl&$GC{}n8|Y9xq0gff)Jc7V z`>37LC#?g+X?+=*hco&itHF0xZ_GqP=k#~8fjh77H4&5-^Z}IXx};B|0C?4pw1~5F-_a^`4v0gtBEj-a*nF`!fy$ku?Z}qwK zpyZwYF}c}&%DkrgzrJOfy#cUanHdx!_AgWEThubkJfc+RfHEhhpuK@*v~&?Ss7x!0 zfd-d3JqoQ4DHE&&!_YFW?Lj%LO!*BU8D3^J8RM)np2v|OBnRxrV-z9#9;aPh@d@Qt z`!P9mv)P|nZiBQ;=GHIN5_5wN&VkHvC4hsNJ2{{q%+w=GJ%suF6@WvTKU_H%Da?u= znqSSdpw!nIrspu|yOuFV0Jx4xqYUPH=Im_Zu2t3e`_H=^KzcJP$rta#%=CfiAWG4m=21G9wr zjnd3(nKQHl*D=9#g}0u`T?NrQm>o(;*~zqVhv;2Qmkp>LVwTVofy2xWQsM}+lX443 znM}$v9%DA$2K#YlF6A;#Fja>Gc#=6s7W)(vM>nIFnNx_I3#^?dFh0g7VOi6NXA2F&rs6A#nM}g!G)2BDs-!fh&fa}ASehc6bc1bfx8Okx`CVtesZ*)n~g#5A_men^?lj;1IGhs;SZ%w{j=qMllI=3zW#e6P39x5&4R;Ge-9oL?A$u{nv z+K{rHYg-z8JGfu4A@Hfw0y37nxa?6N*~9rghOoWdXf@bRaS^nwPIF1sq1hR3Dm}P5 z%k9mH z$z{r3td%SwH*uY0Yi+c!UQ(|GY8xa9dd0I*vSSe_H%Xq1L9s=$kDTeP5;=L%+awWV zz;IYHl;Y1Ll9hW=9F-ub#G;j4`~kS*lG{>Ho{+pJH|nHhKZQT1B$3Ua*=Y%%P6Hwt zy8)DEC3DMy@|@%p#b@Uw^Jsftkd&a9=%U1vTE8R-ra1Ysq#;EDS0wIDKzUCx>l$$P zC3Q&o2NK`&s6CYQp_Tkd@`Mswk0mSVt9OWi(%P5Q;H;jXyv# zmajG+T*mhye`YVK=E$o)|qGt{Vq$B5nM=L^gN37 zu0EAPa=~@(Ug&w#bq|Gw_gt@A0DSEFg4Wqf*R|wfzjfVC=fvm|mh!;ODKYO3aO+Aa z&O>HiiD|Uej+bzyeBpx|%40C1~xSxXeVq#L@Uy*%ltcW7v3iIAG8ttv5$9LNnN+SUQd z#uCR{p`lGB_WwmvO7s|jZf+@&TL!hQC9>Y4wynhR&8TfJVcZ73-6bad4&a^=ALyVS z;WpqAa5-+P>Y%pCt@$Uku*)sF4>jbTq6Xz^_jg}_+v%SE0mUx&4muS5JnH*ESf)oR zy&@gvv5D^0hI^Ep23@i|yw;+BBRsO`@+8~ipSF-P%HtFH`lCG-bpUXThb9uW2_Dw@ zs7>_vTp6|d9*a2W^3dZ3xuKst`p_x;#bZiiux~HvLJxF~mF)Hywd_*eqd_vE)buIf zTVKj@2DqK2La;%Fg}B0P^J(gUTi+*8WVKsQ%80IUTTf3S*1BbW1ob+%bc!L?yIqZj zz#VRe(ZKC=dvOK8U2dl+jN0usq7`s^+};O4k-csbl5))L3teFxcau;a>4e+2delz3 z<sr-SXx^*hROM&r!SNrlVK-SKJO$YVxXEd8YIu$LTPiqbn_jE_FlO?+K<{>w`cV3 z3o3ndn;!%APi{HxXuZFCKYFt<(ESN5@geSi&};PJ?!p$$a$i0JGDoNAhn4RBu>h`dA4BPg4en3s0l3+HM@KMhbKmTbVz>KM+WPz4d!2&l z{q8mBan=F%v@WjVRH{$(1Ux>4F5?q2x8ZN%aLT1Ld_gz(jk?mivc|7wKtz)j6j1$I zni6zP8&N``*{9ObrFrHnNcb&e321Cv;sI|_hL&*B+*JH-=|&qnc?)G4Q%0`B@AM&` z(B+J-%>nsy$R%)fZO{nx-S+eXy!#z1xO!x5Mq53Xj|8^YtG4+2&zP5>>BB^iMbVdO zO_}_D%=>N-GMw?H^EHdE82ql&ArYft8?geA z7K6KDRFjSj#P61mDVvn6&4T2VSN{0>_c+SN^keQb5I2O0D}@%anZ}PGWIPiv7`SQ7 z&;Sg`T;@7G$yv;pt3l8zW`8C~HZnWsf@B9{qtw8D=FLASjxtdcI-Oyn$tGWB7E|i~ z7PC48O+REp!@%%@`N0O<2d4UX6#du{H2@sS&LrP=G<%LV-6ZxQ`A4%^Nt?hVs0LTyxC0uK(sZ7snQ(smN2)f0JxOdnFUqXGP|Cj zt#!=Xzre7K865@ScBWJP6$ zy=MN-0p%M;u1E2fQ73`q9aFiCFbcyTp!R|3OE-BRnIC>a>z|l_L{NTaLUSSd3sdVA zg!N`e=)lm2^`Oh|zHGPFXs;g|l?$!=vn%PjS0>x#E`S5raC&GkkjO2556u5`Xz$d7^XG-I+ z63pKOZu@FbPvPd$1WV`t!Ja^?3x!8x2R0=NZSU0P0yx$ad^TgDyrvL_hS@=&Pr zYvN}}ZWi(*_aM=^qF(F3d_nF#V3M>9+5rg03DQUMK(W#*FgAJ4>6 z_I)Cwxd+@N<~*fsCo@qbWg1h(6^+bbLMZx}$qelV+#DwS0{G@K&nY^d$GGi9Z6UL8 zB1oPv-~R+*PZ{re06u4Kd4c@})5QS3-fTOH=K8Rg{{V0pJLxafhOdJThxTT(d)osyhaLV5xVh{-dYdtiy+j}H%x7Oy z>T&`5{Zo)EWJAb>U&P`g8B8zh(Hq5L_Ako2En!PiI&3NHy$-cyY!jNr<7WJ|`o$gRL8bVkdi(&c1_e z6D>5$V<&e9-y!zb9uRhz-9-7*BkW?@Vn^BVO8_2YUk(89IGg1Uz7y=Is*rh-HPEfu zDOO9)(rI=fW|=?39v%*ovup#(E1zQrnL%=%ZA@Opb@o?xw0?sfPWIs@TZ;a>X1CZO zuHd`Pt|i)>{gh{W;%GAj#yU zJs@QO*RUH%vbayV0FL15vS?u>SA9Ne+1z=$bQ{Grx{lW8b2lT<&;oAs5EKi!2Xwc; zh?`6=KXbY1M*+mHXboXYxP!64E#;;LK#8>+M@RogZec^n+{!&)hGutis$I}!FSoK2 zNDgw<$xT1Py&yAjl>3Hu;W2LhWfaG`M|A3+;C@{N+)3^&r8Q1*)}3hKGAp>~HK^&=>s@qa5p*;iU&AlS2|qddScMw&yOR*tl58;rz6>9)3LVX?IS6OgQt zmg|mUuk;gnAV;KLM^HN9_&x=a`A~dgVM5m<-$n=JHZd-ey|T=DEY9kcoW5 zbeBPNZ+6PJsP$nxQvSX#yN;6N{n*@R;Oo!&wS^LytYE>3fkw}bB<*Zea0UUK7iK-fEO@Le!`=9--Zu)m}Ry&NAR@tlj=TFJ-@ zz}=Coyy^&I`mO@J;8lj@?CZXSaH@59*WdaWNIs0)(q>|fKszJqN{TWBYH zq77=h*s6U%xtqQ7J%D@I1AhaU$8M(XA7Y159^o)Mu>^`E>~e%nF!&dxs2yWN$h|$z zu1SRG6YS5aC{D87rbDw+Y;B5lPP22!cRj;y`3}O)vOm$QehegK8_%;I^aAk$>+=D{ zMfUA!kX&LP{S3a#Y()y}uCU()LfBRIejub=V}GKJdY$e34;XH+Ru1bVn+vCG!$htj zz4n~MT_?LgnR`j`*%U5?Ov_e|r~k&>HqLz?DEDy_${c#P#j&V1BLG3uVB@@MY zZaigME^sgDOn=OEtBz)$a1-dui&2smO@SLN$y1>=Mv_|^#aM|yEsODz<7ZJUmYlJm z*(H+5PtbZ1U-bllt8rC|+73R3+?pf&cb^=tb{C3$W;5M-p^-VvEf28HWjc_LJ&y?? zr)WOYkzOt=U?S)l(n9837W7}l)S;wUF0-s8aEqCGUXU`AeSZM8S?nyjZdk-trTlg- zTelX3tzy4;L)dEe*d5?DvnDdITiDsOO!u%QGtiB_>^&`NN7x1=^K74c46!UpLwPJAu2!zMO>OHp|ocd%(W_79&VRz)O4p0T5NXk7T_smuL6Sq zK?*?H)TEQL?YORhr@o^^(C-=sO|?s)uSEWA6blLeG@^`SZ|2=@6oVNbN)!!YuG8b~ z(Tt@PsK+q3C>uG2kx(Q!m1+AEaMPIPJddV=J zHB(M@I=hOVqs?GT#G!`coYEMx*hIR-Si~ymVk?)eN0;)8*)L2`}diR3!_ zj*@FP*prk=zR8A|L3s@)kZ6KVsvtrZ|;AUAy)YO}arLBK8HPE)pj2R9@eGS731CPLVCZnYM` zr(EyXB$}IY1r7CJ^92k`BxSdOWV@ttB?vn%3Fr*mZHa9sDBnwB z{sb@>$&{?C z0kK0Qed(+iDmn2T7_udiaN>p4J%gD^)3|_HPl=j^OjTN+i$MD&8@Tg50NltaD5%)PZO#U6GpD6^Yzz0O z5lHrM)n1@;d%54qnmpxpo)HG6Jh^f&xdSc0@RplKncojwD;Bu^l2c^pvLs`E14EAF zyH2E;WP1?0vRiVLJ`A}cxo`%+e!Ofb`1n{Hhxk?$lS-bs0-XNzDZw5xylb+2KIZr zc{GYQ{F;|2`bqsCf@GXDaWaZIQZ4y8^Q6f)fLkc-SQomimd=%uXlaFuz#Wl(OYf`8ql0Ym|yu=o(4y2p73tJOzeT zuEAt<*1KxSufc({J+bt@!KHtiR;JH;L9v=`A6WgOSHZR%|?}Y z5DQC;1}v&jVDKIZ0Mkg}g?N+;DYc6D#4 zFcKj(=Yq7B3(I`)Eak%B9~T!F{LA?HRSEB$`e#b#E>+?aq5}gWjNQ7~>YAc#BD6|; z=VX`U8qK<-Q(>r!--^H&@T1I8zSLN0nJ69H{{X!}S_y_n`{v)7rMyFOu=_!6) zQ_}(iYyp1$_&=bG{#65w#=xN9W&&rkq|O~Gr*%wAshpD3GPPN1T5|i0Rw>OoBqg^^ zO-uQIP33)0!PF6pgO)6!8vgr1CvwIz25L=DCV>nc5^0|>Am zNf@9w-t1NXz-}!I0gB-5ZKFj{!G7dR$ycd(uq}n!`HG=Ur__$cz>5Ldk~^kRn@D`* zcddleZ(K3APDx77=q!u?I&Di!>5BDYBU6^zF%7IBv0+TQWOPD>hNVN7)GkhVjEx9_ z#p;yWKBY6r@?ltZVpZs|(A)OHv;c}cEOZjbM9|4TvH}%#@n3om1DFc-uSTU+hopZ2 z|BE0@aC-3roYacc{;CCl|3y^m_DNmZ7RMqW{)H(upx9PAb)_Nvs_~4Z&a^PUf_F-8 zRTSL5y)B~)Ey&`C^ObR-=nsn?huQ&#;Y3N6q3f?p%wS zypH?H;Lxq=zv^ZzRyVgG-ks|-GVO{qN74;N<6dwWC)hUcpAKNxtX3hP=3HU8gG8-S9TFowVIT0i~= zKRyt%TZJzj$h)I6MxLw5E1U7IRrtv7`LeJRjd{g)yn9VPFp!V+%hO-?a?}sc!g}C;NzT0r=_f4&p9Q#wKObC^WEyMo-}!w_v-E#Jvk5fi zW3e>dpqDVM--YsCzw#ifr6KzsN>|~_p#|v8dHNNZnCb2eZ}^Q5tWC=iR6#~NQ&l4^ zJ^+KoA2oSH011b&WCB^YLPN9@LSQy%Wf_e;6Ix`3PXS%MK5uBv%WC3*2{uhR-iwN| zJSXlX40_?sbHkkpU?ph8Y>Kf(RJ8`!BEqT}oGZ5IF6~_E#6`y1V#BTUudynD48H!| zjEPZ(nl%kYkZ~QmRB(xiGR4=m)weV;I*5a+23PYp1_X*cPI!S{XfZ@+J|IMF-%%43 zuryAHw8dF%aghmY++WbEj+TJEjlSJJ+(`hBt!9FL0D`4TPNna7&B;uHaJFnh+Un!@uE{C{q(lc$_sh!6L}Dg_)vEF=k7+&0=X-EyR#d zX|dW&HuTr_Us%MsH(R4@=9q{eak3pXp<|Ja!t2=TTWPWlPQUG)hEB#{n>ngJW=H6R z!6wA>R!| zV5m`)DBx?N3NDV-XN^y=(((((53xs8(IcD9l2A9=WR6RS6V`Ejl*JNP%m(=nR4%b$ zwno-CTb!wmB|a!9AvUO*V`8fN`zIDG)2g-vTBd?s6Mqw3U_=B>VxkM#4ND!XEwPTF z;HQ1>(qfEj1f$y!)`JYNxZi9MrYHSCl7VkUbdYz-a^~Jl3;L}pRbVOqKGh&jf^k}tDs0P0d^pTemZuq*=($1pB!PGMMNbaXB}>d ziG}+S9T`JQ&Myd_SV;At;Gn>Opz6kI#+1rIRU-leiku9AhQcR>aQL{`;$q_?8^dvk zk4?0iEzT#VXbP(p9GG-=(;6_rzlp8W$dq8N8y;K7784s|aab$C3emJ#!xPY<@F=sW zJ*_NZXE^%lFYb)|YW`v=A{@pE16;>G2k3ix1;_p|HNrSlaCkIz>7=z7jfD(~;LMt> z`8Z*01wDeXz$3!!#}&B>0@Ua)fF0Y`UK4b)ixM0s;cPbe8fid8KGF3kX8Gb=Bp=d# znhQdr%b2xho`8a_*-<=5{cc#FZ0TSxwPeO>GQ-Ixs1&Agr z!W0jqBlbsFj3#qJh&X%XOwgz!WIz!>JK53I2>c@&@1g{PLQaQHRLY+z?afHMrnbS> z6VD>CiUWn5XIk@SGn|hYxD0S|eH}l96ThGW8wOIG@Phwb6dv#|@W6k82jMhGPfc!z z^P+RQ3(ja;bhOzTX?3hTHwkb)5I0#OP$ zw9}ze=ae?~B@-x2g2Sb=*9tE+TG3UDThM}A36wC#H1P4J=(s2ghQ(qFsBUfow<*4= zXvVRD%s4J%EK%{|G3Z3au;6qfHV z(J3eH81Y~Yuu$fI!kzr1jorsEH?Mzr9_8S+QaJOb_XtBn_F~WgOmfj!3g%wWY zVy5VVP8(muJi^KrfBax5gtf&ti5Cdy#CB%OM+mFGc;33jbBf^qz!wKT?5nSuw8Q@k zCw5-3oBR`+!F*$jtOy&GMvx_joL>dKh5QQ(&pm?^885^PTInW1AjU@g2b?z&JI&J z4$h$Twl={qV=+<{2aQk_te)U&CYXbTLr2Uxh#3dC59FuV2Z6>Qzu{`M=!8H}_~o#9 zj$!>bIzfAi&Ep|CIzGza^jlcf!srJHhm+k&vsVOcA{<^iy>UpAUltjkfYcN0WKc+)skAv3zau^o!0iA$Er=R|o=|A*^5`5>HS2NnMo6fviy5evmnH)Nq33 zC)gZkjksw8;K~X)sA?ESVG&1SBJi(059X*9jDi>-+DE}&5wP|H&WK2h+!kc12<+t3 z7egQnJPn=DTgndFV0@YgzEEKht!j%EPPR+oTYMp8t7{N_biuixwngW{(Z2JUSCmB1 zz=qk1!J3MNw=Y^g=L4>=Pl33@h+jY>c^#AY?c;BSCEv@8O3q4A7Q$5nk7itWNvT8sImNFlBb7DH%z zMbOsCP{DsgiUW?h**SbHfC}`q#3GCV!X~t5(j7GcPshICDhT5l8AAyYjAv4Mdgs)Z z8R;oDo3C$D`>sjdyWq7zdpsOM+7g~798QB+7YD`e#oNyqN6kqCd#b{rf}>irPX)%e zXsX+(J3b*FZ?6e>GBpu!pD3v$WQZD>>RS@y z3qM6NP*35x1$jJ%k82P7#0yJaMC0rDnKeQ3z^08kd*ek-o*=&vA zo5O_Qnh$wsN zihO#c_!_<@uV`^!t#R+0G<4#B54T9T0&@4TzI^Y!LoH5wDB5LPGJoJeiqmv9e)oe~>YMC`v&2}3S)STt0|0B5rW zXAjy5+eO%-R%D=sVWI^oICf0Wa*GNpTLdYnCg@;~ee70HxVN&=+cI1Gl%y`{xKm4~M|n6qS~=3o)i7|l zJ_;_s)Cp177PY565u6<$2J#BKx{g~QTr-*NFsowC^yDJY@TFr{jvg|NiG zTWkA2iBW=sEO^6_G2xat3;y8lnsNk=h(R^Pj1lzFW|t9k%L3<#OTnqSgo-b^JtS0 z1R;vSd(rTemKkkq;dO;<5rq%p?U}KfJ;Lv@RIguz0-935$0+GRdNlc@=lQ$r=?~ zV9f#&1;aq|E}}8ibdcv$1R!G|><{s^Qb3{SN{HCWq>73+g!PWYPKj$Q8Uy&Sm?LUf z$ezT9i876_qDJw?+!9v}mWXmdI9>|R37zPL&_V}=Gr{OM5=3hkUid^PiWRImU5Fr6 zTnFji$U1ckI!9OX1u15s8~>YcU5Ka1TbF!iM94b+r_7UJo$3cwFNhQ3qM{nu)5%}K z#bGX*GeD9qO1#;?2pN3os;FQS*TMTO(Ho_yD16_ai2Mac#1amt#eO=Aw-)||tZfmL zFb$-)HNjkWNEqrM1Eff8kb& z5CtHYZgDsa8VX~Cn-Nh9(NGot_$MDH41}ng=xjKp0OQQzlvtxD6yafs5qQd#;EPq! ztx`)%r*_cm`IB*%BvQ3ec5kxXBt$k$b+UXb+T~ z+&m|C;HIV<#JkC#^WXnq6XFG)@O-3_U^2wtj;AC) z+ZhZL2$;f!Cqw_0B{2r+<8WWGDJ-u1B_dc4bJVYf{FfFsTg!~p_UWl5POgIesha3ghzF{;EU^aQpH{ao zQhP1Gu`tBz@sUWC6h425H6K;5|-+Wq+#Vs0nQgyUL!?cG?9v zej=^mcrf_i@7Vu;xtruaI=v!-$_8HwuW8#_yM<-6Zk^KECEkn|tJuR>6js=?Xo`gd zQ;G9iu;WE8(2I;=u_VIa2%UF0Dq_;wQ4h%*2Wq8#j$oQT7- z41dR!Ii5|4u;5}~Rf~ZI6$1+_21Yl2_G|h4Ht20uQ5c=Ajnr2LIC5ir}iv}V5>z6 z`&DrvCyv&lIWXwoJ@?|!PGgK)in@5cU+kS2?IF6wC`{nw1=F)@d(=ptrl1Qw`6>Q& zAT%k0bfFah&)gQB7!@RX=Mi|r3kU#FLH2PGL%IBO#!(g4RKe;MGXc&$`Fh9yT`T`R zy<@{83lSjhdHcqJU(=uD1PL}kv8MeS~#10|5t{*J)?nJ~je z!}20Xfq`~+SU8T*u=+)9MIn?xOseBTH~*cf{da-IcT!yp9)-~o%u6)#j+BZKJT!5i zQl=>ayEq~}KD}e7PARPjEbM%7;|tcYFoE-!ID#EJQ*q9&kYRRwU1JT8v!&4=2od8f zoYjI8_<#DWrUeeK9xE=|gwJP+x+-6x^Jj(Qpz~`qqtlBs z`#D-b>Vy+~2Rd!>ngjdEY{oO`Nap}7#3{%U_%u3VtQ6F(ISrc)noY z>yFD`M^#{_*|Ee0!O284BYYe{?1kRbJ0S&);P(gMnPu_Tt|+RAohy3fP>>5CD~QK; zbc8qLutHojn`1-mqCicJI7RJQdO`-icN3rQ*V?NTM zN=zcGtJPw)G{9wihonj!QY#psVF8$c20#Vr^!OfWPiy{6IJw{jxPqAt6deBIv-J76 z0`ee{T-@aOZ=)P0(c#GdFV^05yN%=87S^NSc#oYyIkH0lBt`8c-h;%2giH_+0E+bf zgP~ZotrJ=DM@hDFk}uDG=A3J-x^y=vJ2@VSi0W0{U0s)Tzc_}}2TFei_44H7cJhXr z$n_YA?gXh$-X=fV8s<8X!oY@gnFjVcbhahy`OFBXK6#+7jw{vG@O3zu87tC`{%V3m z)WF-HezTb{>|zXa(Yln|#B<7~{ClH$2uB3Ig(tmYk}x-5K!N@l&H}IC9MHmsw!Y4i zuXo>NoW5L@^S5OkrZb0fNOOYg#`E*_jKPM3O1}jC6Nth2_T++WD&_^gY#{DDZkT_N z7W}g>V^wbEQ5gm(EQlQIiY^o#_FHEFo0`Q>#=&8B$jOy)a0t&52|JyQXEZVOnin)g zGkwug9i<$oxC!Lv!H}phy=@f$hY;8VZCT+2!^&WA3|He&o;w65kdBR&p_JJ z-l3~(`uV3nbFrrAt#>Du(B71qdKJh@D9P6nAj%7NzpHk#FE&Mbi>}*3#RgIiz4PQ| z3H{&R7ybPKsFL1m+PY3gCP12vQW)4i8NfD>-Un4o!w%3#2%hph%VJOsL$L+S3L&j=O?c9P`+lTxum4WMq|`86vW+;i6zd)NS} zdu-P6G(35e9oY^P;syN^$w5K_z!3D&t0FKHkMcNE&6Du?Z2GuYwRC5pCP3(MsV6{F zJ*edKO$VnH8EyOf;6r+Qge*?L{s63#_76uNbko67oNgG*8#f#5>cO`^ytwQAeqV@f zO)r`WTv^HpI8I9fXj1sWBs?b-TR{DJM)ZDV&WGDmmK$FBy@bU}zAYP8XfguSj z!-3I-HdHqu-g0?GMa`Hlo-JXHHeHkRa4ey{S;HXc^dAQB9%A#>n=#GeI7A5RfFH-n z4e-0kEn;#RXr;)_EBezdE_Zjejn+xYKniMv=y6c-R&#pDycASYi9!!NjUNc4M@(! zfHRO?9uYaHN6Uuj6b*A%CyjAFS~OG$Sz_ckPb&R_y-)(d_!{=MpnYJP(D!MfJZZB5 zJ9>zT!QKX=Vj(}Hw?F>)fqsy0-%NhKg|7=vrxf$;P6>|fBJPyBkoKFKAoP|G#?e9V zv)8XbE14qm@dR})#TN1m(l-JNdB9FDYZ&uI9XjmiA_%i>DC~g7W(NZizLItyaBU2a12YlfC1o%lxV4(ctJ($R`-yXrk?rKc`_2^b~ z@jf)1dAEmufEgM`x18bn14@X7Pr5q;{yBw63WnLtnxeJ6Z!Tj~Xxd3xk=`?W!NUt@lV*-c7x89zRBdJazsva4_FM`ki)dke8?si}tRr8`T zBF>t3jv>J`2y+x&PezO-ZTN^jUk+R}?1s-40~{?1oaYFmL3Gq55WekB1ggSNdW~?s z1A5M7e2+LTaN?7*^#oyvKyR2}5!TrN6d69yvDp};Qbeh25?rG;Q?tY@bCd+qhVx1m zKJrza2Tiq`pgU#P1k>Yh zEJH4J=IAa?M;E=isawroq9iSjCqkqtLA4c_mJe_pPGq&MnTLd|l)DA#nuj1A8*>&d zy`1Vkx+Phlox#U_I2s7hoB}&q?KC%cmj!@r^H%-a690d&zP}PRs4~r(t~H4 z%tsB=a@fq9H$Ma_TmxfD5r^jZGaB$O$IAuSq0)K}6!SSwx0`0^{Rv;=z2BM1{R5l!CYW{YSMjlwkwP1&M`Y0yUH$2)~XKDhza_rMteVqC)& zfkGQC%<&n>gA)elhw(+mDeIdu%v}=jb=bmy0Vm-%6qHm3LX*I2t!LpH_*f!d%m=r} zIS9nL`5MYuD04mH7ApC-ttW3=#(0;h$?Y(lZDi=?vGTJTItc(87&#hS3;`&CJwUcdKa6~fxgyKCJhVruQQ@ zP1V&j2U5aLPSneP3ns=K%d?&#dd$uSu@$D+{JCHR^BC;@K8dMbp7S}ug(c;7QoJ1v zjKJ5lOLB|C=WB;{qXTNsCdUinyHo!ynC6Z1px4UTIESp_mv%xQ~K=W3U=QD*YNt0+w(-bu?=24q!+LG7XdW9m zU2hL7UE8nFsT^o?mwRBov2^?LWzTMzHIJ*w z&p>?`UaW|vPVNClDEAF;34W=}nhjhvxqPM*V?#XN1A_-j;y(}?j#MajxB z3AbJ$w;+|}BVqtHTwM;bREq>xxl>Jr_Smq^_Kr%S}MjjU&aqvYFfsKUe@NJMa6UPLZ9b=spC{SkJ>-Uc~i+=wJI^@KU z{E~>N#MY#Qy1anjFgNA$1ga#ltR;k3?X$wj!zpQsy9s8iO&V%$WbS zkO9V1f!Bo4bF~B?sky-k5;OyZDn-<>4clo&{ahD%JYgyE?2{%FZx=M~LTBX$^9t9* zwcIzNM8G*P9afTNhg&$lR&_4U(G-h=BF08@K{@MJJ4)7jacE}0@8T^Y&j zxIG7oF^MCeUM#6mQ*y2VX>t{+1qJr<_6>?xd|$+GRTpj7r2s_S3V|eLsj^LiC{SHT ztdjX86pl|x77Irx9w*z5$czEq^(qNPR3`F2!&Qww8na!)9zb-$0^7nYVMIWk5KzGq zLl;s!ruJ96_*;_QFZd_2X^bY-ystc-3%!$a4F z{#HqCUxHd}E0DJ2mg2{-Of_n*!bN^&CB)%P@=M7<;>L;}y37R5%TKR+MYh2D(!_d- zS8Ilc7Z-iom~N^c`ZoRW_dHI=jt`|+Q+LZVYdlP0$8`(_@=X3G>6^EU%QL8MEm*Y^ z@&HN!Y3|mrGuGIugy_|2qtcI-fdVbnxcSkF4|1N{4c(sPCR&;cZE<%sD=o>U8iVdC zDT&&AGl$aA1Gt6>)RAK?rz|O(%Ta~Lz`V%6pyD_Lnqk9H(f?anhjX+`aH>ztZwA<$Iy|h|E zRL!TL(2T_eEdu#eGAlE;#n3k#KHZ>CweP=Q%dY==eBlB9#AJ)|N?v6%=sE-L4MEfC zQFgFe(n$(aD$9)m`ff=$C}sjEXqsU8m>9u?xv1XQ+IR`3?wkg&pQj)0-o3xLee*ri zp!N4RcQ4+&LkQ5j5C~4MAR1jvF3*s00ATRx>nRL7L7gSa7)$6{p*#a_r|BF@f@vt^ zff%Z)CDyv@3}x4ZGy4mNt>8`oIg!mH7R;kLSql`6T1T;4DhoPPlM{9M1Z1433G!7wP`3qgF zX!O>04Ujq;?oi5jF#`6%Fw6%R3ey|`qUy4~H!gtY<-663&3n?(I|lZtjV$cD^3r$q zCOTANXxRHsAee%WzMO5oVYIRxAm?_PldsQDFnzy1ni?Eb66mGI>QMUuF1()ay+3Fr zeD4oVa|$b--}!7ag_F$0m5&$D>BPBSk#I`c0&GtdBqYJeFXWei*J|C=5wwMIWkd?} z`PDoLo_NsUNo;-P(+zGwyDPaH8sG2isW*HWmVvu_o(*XfDoB0^HY2il2Neh>VrkOg zWLsuw7TJ%io(X?9I%%2O0^8u;ytgjFsgoX1a0vdDhU6`=DV$#CCj$iXb$VL0V7AGU z(%k2gWSV@WI8!>-Z6^ybQI}7p(#uzIg%B5-O!$ExMN{fwWEs?VW}-m+{RDdV+|c6i zqvR@ix_Z_nerK5GAa5yRq1p%T-xHs_LdktGc5U$~-E^P$#A%~$X0v|2nxwEB%B%Tn zs66n4L8ErzO)zAjH`2NB7=_aV62hIHA_~y&2sMmh#Rxg^mS$P(Nf>U8HHntsu`I*w zB~pU&Qo+qOfLe#N)8*e-b1F$!C!H)5mB=7_ANSe`4s<`65$>w-Q^erV!d7$zRy>a?_`Pb|BsGcg|dF6cS3H zdMg*y(-cIFq_TzvY33~$F9b>TP5+uI_6Sp%{O)1IVys*lteL^#HWxW1&>F%|>BfEH z@&)uMrFGjpW%8O1sPPS+qil#e5`*Ib3Lqa1j}HgO$49rnA0AH~xtleilY_7$Vmf+9 zAI?;`?5Us}Gcr6WlvKUEu6-GL0(fp*;^P||unE;I;smjxF!_(+gum?#SW}JY2+@wfNna!B94KdfLEi%< zhM9}u%0IqBHGvxtYv8Z@D=`S6|Eo#K>Vx6RI24tG_>qlY=0!;i9Nzm$J!{Gu*Up++ zppomO*kcWdt*(XXRI%h*Xcr1P6LBP%CfvH)a~uz9?__V&P&8aFM$qYkw+4ARyfU%K zVgOc0J)xjzX+5;tX>FoYY*}FCgALu4{h>oOR2=-<1+vBEEPC0|Zp@+V} z&@J^dI-&VX6H6IqMbBZ`36?8(|0Awv-GiSfS2PC{IgRG-DwjIqtFQ|4sFNw(dbly6 z`F*-O!EEoeHwg^fu}30b)VdE=V~vR24*HW|c`up}(rMZckUCQ~8Jo=2$0p;h+@p9c z{w}$Bx$=r$tA;f~i3{dNw~)YTM#J^SZM90bVKZhiErnIeW_SY@3WJ#R>ZUe-PJE8& zJ-!%@tmA9M=Wk#+oZO5i&k?$Gq7n2lPk{;}?$L&(AyAGm3UK@S#oL#XE291O#Y>5v zX3v?82Ga^3bA}3#X3e+<2vTrX_w@*MeF;)uO^eg3=6cjHb+`FN%DURIC|}Ub7||p< zL=R%Bv!H>9dT5V`{-NM9%|rosSe8UvuO3oopZY4DYtbyX@xXl_Y~v1$S*g~$DQPu; z>C>one;mqr{ty{zUDZd%%riab!PFE2<^id;`q=H3wm_+jLBlmSZWgaHM-m*)u~}oee3UTxmsd5{hJfYYe73>5QSkPb z;97Ir>3;lalUk47Xkeqw1uR^%^>lIJ>4UC3D>V>+owx{Nvjo+=tPh|tF@|62czb!b zxkIM6*_)p}ypQkibK*ks<%s~#3~kBR!9VkNb|@ZSfw7U+i76tFL-Fkx)I;y1rLQuh z>*92U#2j$ULg9YU=ha=Vs|8#)>IAsk zTc>oAVCru8g%%r77OR)q#(!Z^lzbD~%hP3vn!+{7Hi4ahID2N!*OhR-J)+H8DGSn4rrE z2`1BbAiEJt3X=z;y4=}06Sg_lb$m=e z-HN2HVR_fu>2gd)9+e#t(FliM`dTD~Q&7+*I6ui00O64qEq%BtWtstt^S&!*8i3it zTwOUAV^FeJ?|o1kF!*GIW6rXZkc}$AHK>?M;({$_4L_W;)3|`WgRNsJ?&64L?9zfg zkZGPg<7y1D&>OA3SsD+iw&BMp2kGkI)YK#xS)pD*=(o4`PbV}|HT+Io9`eFXte9#M z;X~HXP74V#P74`mo;;X=UDRhNsyQtn%k3we7CL&^=-oK$d%-J^+eGY=k2|28Sd_hV zujM1ts>q51e>eAx)-T`q?I55=zr4eY{2cVOm%X8>-O}T-p|>b-KpUtjT!RTBO6r9` zBK(A5nVd#84Y~o(XX@e!D{tfV1I==K+cZHUwvepNixWTETi2`*MGt-NcDq8U>AaLi zp^I@VMxBfP8&nc#f9D;F+}MJJlNkX1}p$i z+JVgp+GN}y*l*`Kh{(nF%JpWti5ZOq6qe<~By42DatWK93fx4@Gry;rJ|@0iuGd>c z^FZU_(?3@7p4Me76h_}4gz_cz&WF4c?vp6m9~pV9p$Q~bVV(>N?rQ4Hn@~+6Cl(Ws zTm9y`5N4RwsEM=MZrecC5XjxlYm&*73m9QGN^$N=x_vo<-cK zuB1Uzck9{a1>;A-8yPy(n=7qmLDQ2v@A4i#zU<^DSJeiRioQ6rHNcfIaNk@<0(NST zPM8V(e>g@){3$%rFX{2cS6LyIf_bQ6w)dzXuDpb+Bj1ARCgMZ!{-8WKtvcM21%vVA zY{NTvHfr*m0zfPSB=MV6iC!|p!1W2-L#7iX6NmM{5n2K+ajrT#*bZ^O8>ilwB=TYt z?0WHJUeOK)TV3{IQ#=Lep~Dd6xzzCbTqM3COY(3;+%Usr?Ki&|WQhnZzE}r)m8t-_ zz(kqDg^sRj@=*lnf7L~RY}cWxbj|u{^%BhYQb;@0Va-q?GE1eVyTZ7>_zL*Q^i)Y? z1u&FV)wPnpEtT-#`65wcqCoHK->TM<)yKW8Cv0JX=xDI2Zt}z{$sX0X3E?D z^6+A1|C&Rg90XMtdq=vC$DS;-4*og+PmrK-r4GN?Yc(V2_KrV+{w^B0A(8V?fHreJUHp+QTOA7TLdQB)W-faCoL z>Q+ti?fUDnp%z_i$w5PeYgw$i8Mrbb6(m;&gZRBO=y*hp#{q$Xp7NRw zk4V4VzjM+!>@y%gkC)^g?&_qsB%lf%Hp4H9i~0m%62r^=Qh%)Lk=3qAq8dQGR@Xw` zYrJ!`d?m>Zorm}nD&8#pbb%o>)hP*qpY}gK_L_XIcz{Sn%{Wwkrie)G>b=~QEvePs znL&6T3pjrFqE){UQ4(ZMZELTYBeGzmn;_O5Mb?8MvK}}t$*Q3YDyNNHLzTqIv?r7M zr>hCZ@NN6&@QNeWHbs?FA8ki;#nFQ=zx>1a?$yt5>;FTIbnNOM)_33j;obWmhlB5k zjedCXdVBZnw_ko+NYR^BCvtI-TKmd{D^u!3WOlT)Qd~Wx<^jgl67xa&?veKOuEHu>bsC!hLna@0RK7+*Ya2frJTzn|Z}din6im>P>C=`<+? zC{LU50Dk7lmeQUzs#D6u?$vh~nX^p$nrXS(l{^|EKZJi9*MvzE2?Y~Bq^iH7tA0`Y zz_5#1G$Qetw*)WN&A4+cyfRC7uWivsA0OFZS}u*Av7!^%C72#Tw1H@5s^!<7;w)Mk zA#)|H&L-0tGRZPI53vO`b!OPcqR-~o-{$Ale{5@K$^c}7)zrGSbBdg@!Z|I>)qsd6 zMtJslglG521(z2zuxieMiINIh?0?3^q|)}vdpwb0*!CDG`XO6)Kjlt1`Yyb|)x!bC zb~l|WwBiBM4C{(#Y}>)%${6N>b+%qa??xmK+8kl%IPaE{b3 zs^{B&mO%gb2Uycz`>5IOM*;L39t9ogu15*HJ%}3_69ZNyHJ`ZzUK##_N}oIP5)K3G83B@8>-LonJT6bs~oZ)4|M$YI=car3RDq2`!jzQA|PJMMr$`nmX8BYA1z0w_D^d2ksp}c1)ov>y)6U9Dp z-BnJf_5^eU>q>)o;cejT9q~#VSTSl%HJ{ei88r>flBXS)xznuSf<3Kf%5&s9X(+WM znW8B&5L~PmQ_0xT(B?7x?8?N>1@_2z_<(7JHL9XMqFcSnD|#?wI!q)byR3C(iyA?Y zoGCnMQREOAXn~)%qd9z~U<+(q!-V2U?RL6t1FbyhGmaoB#Z@u%nT=kb>tAb~QeLX8sn`SV7bs=m40`#WEdJ#-0@DAv^O_mi^+g=0z&{=i((;ztmXPsHv;M#nK9t z*OtxGSY2v~jctkn1LsMrh8)+lNiD{xyO~pWxuS+7eL0!{k7tf{xdzg%WOgJnETwx3 zIm(EK3UJPAZwSjuJ zv9ZYSWtiqLD|*j2DSwdSSJc)kY3`<|33D&Lte!&|A6Z3sFykd(l>(JlF6N#!Mt z3d9q*>WfSj{-(UD!8o2FCoHED+e?&nZDyQ9_v1R?CgUyAWhq|P?OyhqI5640NZKH7 zq}o58*VMBstXCtGUzKVP5rI$$+2{GkNw_V6`abaRo*PC(n5-g!V0|?YQrS!TThppR zD}WSciJ7ubbgM^`%r<~&Ssi~?G5nemX0?UQ@+!L*`Ij`IdXya&!)LYmz>!>i(U-&G z3I^qJl{_d4!TM=9}xaEk~VHesL$Lq#OwmdE~S)M#IBm~0i&+L@f{hW zvwT?%h;9?sR75qss!*~o2BUNyI#rRN3n8^k(B-(8c6cp}$LD!v?P%%f3GO^cX<*ZJ zTj;*~fkjLAalTWoLyemAYiB1B=pCK3&V=D$(wS%|IhD!-w1&c!ssecehk_c{P-00S zJx0U|t_B;JMBU{*qFT;P>-xNZr03TOXi(VQ)J<*I?t;VU?4tMjyh)qj>I!g7O}yj> z9(RD@qc0Hkto1g4wpZI=Xo>oYZIB@)SxiU5&vi@yh@>9~U?*-F@WPuFGOS_K@Gs?y z{2R&y@00v_!j%Wv3tV(hci!7OTxmYt8}4SKU*CHur=njy6u3Z+4t{NK%nkIa{aqgl zVPtcSsAcMLSL6n`+M5{ym_YQ$y{e_t0F~@?J%(DL%UaL`nfHP_YB#l1LVpRSt%mgk z^U7MG7cewk?CD=Er~kt8lpT_r)DCbTA7qH1$BBN|RnZq+1e@wrHBzt@%5=#^jeIam zc2Su{GyL@Ga-^E|Fy_urHluT4pT`hCunAQ;Z!{>2wBoYbK5=**$o7up?QNi*iseh& zRw-00X0mHXD~}B$DvcPYGDkIDNyKsKC6FGv`5cJ~uML|fM{bK#2cK3yLI@$jv~Y$! zSbA%@nr=?lz2*f?fn-*(XRbw#76_Du^4M`kPRt5*Hr?!0<4?l zX~?v%^4Al7t1nSvzueGjGTQt0Vei}CfBZ-9;sRH>CCiWQWg(&ovcu~sjHGoip_U`2 zhqGAF^aJCfq;HjhU@q2)1ph}}gY@9*?En;yv@of~>uptm^qJadX4oi#uXt)j85e6% z!}=LDEInj`ju(h)EO|0MJg%!F{Dgtl<`8!fV<2A+aOktk-X3C_ox5Cl&iPSXj!n&WsML}q!j)kQc^=>w^=SBEG z{MMReEjwQ0>11OLiRg@8h9j}LiBw9~5RK6;k2sGQXPo1{$ICU3 zt8U6bO%unO{04=BQ%f&0#5z7-$!kmbcP21=Z+dhpt}gScEt2OWbo?R{XNs+ar;GBh zIl}YM+7?)2(|GL&Rz`p9Vrl=tB(UbVse8DM<0?}H_~k&=(CxR95<99kklq-!8hFUT zKQ6UUBJ+!06qR)Yt~)2wJ?a9xL~8f&c{_csIiDR|APmo4k-B* z*O$oxWQogTi<(|iABe1Vr_elpJ)Uf!+e%3pPcsFFDw*3oY-WS9CJlntM!cW_a|ZDF ztiMgU4*wq*Dt2{?GOpmfqT~YWudsUC2GscKayFfTZZm;h$4=hDpH%S$rB0R`t%v{_ zSj7=mY}rns6=&`tYLgnMP`n0}3rM$^^jJ;Zf?!&|vU_KmRz1j#$;4MyvKz|L_4~I! z&ELMf6{>Y*X$vTpG^#^VMmvKo&a*9wtrbP-C=prqsTh)`K3yN+%!>RYoiw}8WMT^) z4cmz}#3yBdE4QD4<-e$MC2;zoT;;Ntq+Hu{z0DYj?0myvqJn7X%5gjb>0ILj+{XjaA{X%$1 zAYcBo%PZ(}DE=9b8_6hhRY{ACDcXVKY_E8AVt5`zo#M#1S+pVPR=ty`Tiw;_6>|Rl zy#|ttuh!4NqhXD=SbH;pGI`8wTGcx-fXQjiQ&iA=KSasHSVi;b9QOal9T_H7KFqXE zu*|{r9vAygC1)Wc~u{XuK8m3*MOU^JL!BfXs z&%ktps&LLCV+~cB+}y~k3wqQ)6CV~0Z799O9NEJqAzFfm${U4+PQIRCy0ly)6b}YY zVS1H^a=ZBAtK|yrNo48EeoXOdpKUr*=oaThtw&NHn0Jz=aq@-_Oyu}i zR>rn>B;7(&QQ87)J|+KV(#Rq`k`S`EYY92zh%Il`N`Vd$saNUGDKqg7x<%Nm7$Wzt z^M-%jo7>x$+h14`ef!>ykA9SDmWC@#t?9`rj zro2#WgCJvZ8o+;KBUSPMO*Yd*M}VDu(vF>as;&rVNlkyTIiFC+vZHcecL(rIBmf$q zX^AmO`sP~D@)@Sd#4SHtoUNeEU=KNJn#A?hloOMBG{gJni~_`zQ5vVQYPdToN)6teo6m!0r2 zlF7GysCsA)RBwBL;iAF72!U0g&H5&g=YupNrp3`yER}}&f2UGwE6?k;wJ1!^J7c;o$l}ysU zjnmGJM=;TTC7TfRBrLvNGOfDqIuzf-p6{S*3kN7~jwr9!v?6InGSK$k<%TLH6JGU6 zYRc(c@@w);R_4k6VaDon1ToY{N*lv)yql@`N>&D4-OO#Lnr}OC9FaYPYjl(2u-G1v zGTkUP7&TQ|`Qj_$i$_wd>MrGC$1`k_Rs~HDzXW_O zUU6Tpkp$K&z=~S*T=1HGw?~3)=x^WX-*n*ZxF@zE;I>L@uM&^!#Cxm{D$RiX03$49 zgqo)U$cwfHv30d{yIC8=VxyV1)7sh1xVis_4v$B$y4YDIBGWdr%|1+3_T9I~~x4jhN{Wb+e28lZab)v#D$sSl)q67{Dt!SX@lW?(x@MTvNB zTKS=3hQALzWudNPTw!&Z-iv<_kiO4Ogj)$z<7ZDK<8MuO(re&S*$yqZeK%o+!NZeX5n#J^>Xh#&Z)%XMj%@ioxH1)-fe?7JsOJim+VAO~Y{e`PF zI=63v**8Li4qxBp)rJ@c)Fx~*K^>{czo&yOza836wQhj)woq2PKX|92n*OHBV>KFG z&9^fXppQ*C73I3>P)A{=4APs7vEVjaU0*qy;VrG47SowbU)pF1UNR>2+*%;hz+G9Q zrJLvi3AI#8Zlf5O@Ha^AvUYzjG{ z)R%l=7-BxuIocsucXx0)uDa3CsMQN#G(KQjfbI7E4I3mwGIx*MXq90&1j+B3Je)Q5uvZ%o+oyQ9g^@5F92A1zp{+CQXe(`vE(8m|r}0 z;Tclil!8dYv{MF55Z!s$b|>{pFrPpvGN_!SWdMVrWqx*fwLqO+sMd`i>je4!%7MyY zFO9+S$#8C~>`)%^LZ^eFSR$~*P3$v9#a;H=yFgq?*`@dvDtLWPA^fH60v=||7mQ!M zdx4t0XRqJ><;CmSoA;Q@qGL|iY`R=V!K`k^bC5ubk6}Z*T*8fqP?^|7e+zb#ii@?+ z@e%qqIUE|~z_np0u-&}iXD30Dr|`olw^i999)Se2R2(B8@< zepDP;0_PbLI#(Vh4Ui^L`^QBH&&(Sw4KJi##2-w0Wkb;F~RU5k2mTxhY+%lQf1pzU;&7c_+J_If%40|hhldfxl_?Q2-Z zUf=fiKKtdnSD!hqiVPKQbx+Oo4Y>|$!e^m%<0O<|t)A1fvOwiQCt|7!R7R~19M8xY zP !qZ&ZHis+v1FGWa0Vbvs5Se0%wFj#s_>5`huwkRIqbFO(BkP*}(+c_zGx46TV znQjA9OpP2XP#PjVv#da7($!is&9Qk^!QrK8K+_1q8^uj%HWwyZ)3Wb)EML%LiN&yK zMtdK*{zc1FQ-(JStAgHS!hnkt-q6!(R;^5#Q$zI44P`8(>FR7P$NLa!q(Q7_FCV|6 zi=L>#84mKnc|(J%`SXJc$2MVloNyF45C~{F1c?njE@b%C&EoRnn*zr}GI8WX-p##= zz?tolJ(I4c93D;{-zi<;dI9AVy2W*Ib30UaNc;N}5V_VTN>2qCSU1j-*U7w)l1T`#8d@Lq<%sM%?~*+)ilSZ{>pkiQh73kuyQ1D)Hg zn$Z0HMswY0>kWN9Ia1yRFNnpvZ_T*^>xe^xDCTSr1y+fkO^{+c$edW>IRxb1pr&os z+EIx@%ko6lir~*WNI}$$WygRdB1-{8`AO%)Is;^ zw4R2fX~P#DNifYKbwQgO25eAVpE3mg!~gz%RVq1+WYo_sj1tEkg~6f6VjB=#Pv_5irWYr65JKU-sBVE zHdk|XTCx&MD@2X2M?Tv}di10_s}C&6cAc?__rO_;W5~+a`${viCw0(@j*B0n$leGZwlL#iJFR7c=#f0I zv!Xa3E}BP~6-6!Mhl|69y9Onwd}UvB(BEQa4H8CNKt7RY*ypMN7Zp%ykcOo7c73lq zlSNBgs}KSE%_x)_rpFOqm1wCdE`~hUixr}F;Np5Iy=QJ>TD{6JHHrwnpWH0z6t#bB z+sgKE6@jX^o0mqj>ImXMK4{TlM}ffv5mrXqcqAI!)D04;v@hw?#bk+>?d6|>*w&b1 zju)do*uzF!eUe)+D}`-5Op=OgVWW!?OzHS11l(YS%^U?Zrge#y9$21C*DU*4^mz5P zQ46wtSOWSKb0x$EK0xlD`3%guJdbF{Bs+n>53Lw&qy^~x{NnW=?Gk>0$AIM!zQ8xv zR3OY2z0~jXhrbgWLZ#>G3!6B`$^;x4=FlCHTQ zuan7rIfQgGX70lkoEf}~gn!Pjo9qiq&xmcbN}w&a4S1=9l)A}mX=sMW7&dHJDI#%j z23TjfvyeXX<~nJOgtNyb9qqLw#9#0Wbty~N(_ zPw#I3KcSHv3o_)Ym1#jT$leIwqw!?AJx7+S@n}9X$pnR@kS3&TujaFI3QfK14&b4o zjASpJY6edPle7$`r$++y@N%O05!@}A7@|LhRDzDrm)M$>MxX)nd9#u+Zg_zJ4d?C2 z#_Pp2uG%hi=Z8){FTwP15g${vg)S~y8ZGDqSmkP=%#)R6RWA;51=5R*Aq@67>9O+#eX|gN2b;{{ z*^=uAoth6#M+aXi!!{Y!#{LGrXo75#T&G}c3>B%Io;gf)o13XKr=>nkPY35->r53}gPeUuf{mt23t`=voe8E9#y`d!LF7hRa zm(8aPDURTQW`pJfbauIlWz5+JFOEV{B-J>;c?I9zMn#Crl6$C?6Xi&~sBy3Ot<~|b zTHSyJEq)88FEsJjd0uY_>P~=(4G1@fOepIrj1D(UjFVbq0V>uNyR3$}T(?rTDVJMM zy`^!ub!j#piL;nI-=bEb&;VRZ2e!pJ`}igcvhKDb1Z0pE3tm}?A3x8`8B{N*24U(` z=sLKF3gu!X7#*>dqDuOie>NTi9ZX_&mm`a4i~6Z>8loO%O*D2Ym5lw=2htY;(=x%z z&zF?XmnZv@3+juDb$Ci=Lw1MVQ;)2Ozb9l1MnNdqj*}zewu;W3y2|ik1|^pf$q-$& zf1EkzYYSvjfwT}pFQYl=J?e|jD?Hu+sk@Mz?}H|5Q^WFMb?ne&DK(Y^%iY6Ayi~+< zb7xN)?GxCEKl|acR$@eKxz0MFg+5Ri$omzqHF2d%AuYxRSZVeA%7iTYt+nLrD9Zfw z>oE5b$7vG6-!CIXoZ94PHAMQ#R1B&`ilPjZ0UCtXw?wi{nBbW>?=p5RK>9+E3~*;8 z961pjTb|^P*qWc#wD@z09H7T+5ZtKJ(#r)@gflt@&d$zzDk`KQD)SENuSU;y8l>`J~l7RJK+f4-?;3Dn_okmYbm8qEE4piBM zJ6m`JZ{wJw>@vUKKQ{6Pjn=@tToZ3l3O*%RU!d(C&Oa_8r>1t4df2kLQra6C>Nhk! zipytfi}2eSSvp-p$$~`6YeNcQ+$-aU?OyTw?uKgaTc)mY3{Fyx0vE`Z4w=bzHFF+_ z3j}t&m=Gs!ABWk}SVJt6s|nXVOW&Eh7BK4!u_UE|y}uixg~3r(1vmD;geH7dnA#x# z$d*IY=P|7rn+d2jkyML~pOX0%sIrFTB{Vc)c9EjHrZK^CcgN*U$fKndMJ0JpV0%3q zLzk>5yJ8c7Aa`JI+Y^B0cQ_yFnC&zh>4ycx@J`J6k}T-Y8pM(B1lrc2MTDeZ91lv^)<|p$}F<2Y2dL-)bCx zd$)P@?O&}}dhU{^$|CeS&rg7IXAhQhBWd4I3i%duMZ+&tUi=2q9#R#Iz=#wHztsaS ziz5}Swf>AyJHMEYzBvgD5|ul&n8=PoeYCPrUT(|<6Bd239Qd0qXf;G;$^y5=R;*#R z5|#R<`T4bS#}NoopZsVbrClw1byH*DiNb!knoXr*w4Z`-2g%LubW8_s48cDxtv9AE zw2n{A9b-B)orCpeAhYq;r9T<;$>w8*nG{EM15yf}aR?s|RsukT$YdPuV*|r!5@+#x za`@Ek^VSRGn&E^U7@JyL)@&K7F#i@8Uxe*i{%y!M(HPHRLbTwtPa`DKeG7n#u~~QI z(>yLxX|8wV()2#GGp!$F)Qn%2X@zNT`HEsQ?CPZtEhLzMR2L9iOJy|B0@iOO-x;QB zWyV|ByY^+!AaVTo=r5C>E_2%|2%5v-v(djQAzIVAtl?hfz@TtA4($6|p;iP@M+sQyG zm+(UyV#784(1haQ0zI8w!p&4KNctH=IYT$XM@!qLpfHuC0b0YP;oYOfL7oWyi^(t; z>IWkyjueyKvyETBgFCSIp`u$C&6bR1MgBob|8V@ae1y1EAk#=r=%k7p-4PfW;7n&B zP;_fELfimU+tAP>4`ws!vV^Fsp`phevl{QE)nkC%#Eo{sOY7_9eAX{M2R}vfx&VFg zg4x}%Pc$(oC|D4LTf znK+#F1UXNzL%2=kU#kb2T-TlJIKebkDZRnntG9Qr-v90F?(K)4ULnjG;diK{Nb~-( z0eX-SH=GHmEB-ZEB0l9$Z93;>o(L9sW3C@C-y2jHaHJI+bOWmI;peZ$8@M@PX+z{P z3vTEVm^ah%BS8tkZ@~rU5|CYitJg17VY69 z+L{`VmM4Arcwo7LFevFaNg$Phq_x=9XWO$2=Dt-Jt`ftgcbm7`jKD(!SE?q{>(Z|$ z=75jQYK)9fApU$qZ*eI;TXJR#=FayB_hR-h{DWC{vTa-0y^NZ6)&?-I72G?vtLb9y z6gZNk&G6{S@;TgBd1q?rL{!pqlTB#=(~D5&QaC8>qFM}gn7Y$tW92Rzp46R$Lq$T< z5BqLR>UOI@{dcea56DHv1dVX4Dj^8*Q+6B3$RZEcnabwJX%-VKcegZ($djf~smKg5 zn=BcpWtm(wG=*sd1IqIn3xA1$ORappzDKE6DrX1ZqmM^KaZUnJSPEn&hLk)xoZ;%+ z9|@)}liX-t2?w1%07IxtM0>FaVgBeb#~Q3n3^j>|z6vht#XJ;~Nn4 zRjIPqw=Y_?$_m9#peEl`B_yp9T;s6UQNU7LI<+*nqC?oAi`m-E>1o2;<*unmD-Tpm zf~=ri+Q^Y)K4nlzBZ=S!D4i&f@QxHoRabm9yE}vRgfb^);L9^~5i}f_KX!*Sgcu1zp*bR`lD~?{0C2_k$M_w6^ID?BEu9d5cyA zV0*GrxeT2FIOdAS03uZeI%HMoi`er5Q_%4OYA!2{p=l^QLC=2YR#RFZp(ta2A}DOO zSe}NigVG2^+!;N2pCdJxrKU?;LuAW6@d{#bAig393XL#YYHx(-GPN~XIy*plD>J#Tuk-G?hN=ywGvw35p-K(Qwh-(Q3{CLk z%R^;oCD@K4vhvSxmmwn(hk$n|qm3{&?7cWG^X0HI6Er}+nT(r;X9<%*!1H86V{c)j z5*J>BsrtZ)s~r^5waP)EP>dF`u2v{O8V50=j4sN7VDWXD*)r5liHtH*#HvkLJP0V~ zDj5*VYrcy6NF;jq{^q;eJ725Rjt(6TjG$P~JZ^yxuvE^Fs?M1I2C^;sM3(T>wFVD8 zU%?J=qygUnKD__#qx->+?*|{>4}Nk#xWE4ic+OOkDpHGuQvb)b&3xcl{$s z0o;-Bkm`q_K*&n;9}?_(Z6X#I8^Uk2fmCXbR7y1Ak~&!y0Wx|Tx&OqMfmk?`LBS~W zTF;S+w)ibn;xC0rMBgDj3Fz8Jj1nednmakU1k(X?#-j-KdGg6vpC@GG3jcRylGvkF zN16-!fn8p7k?Xu8Sl<>qyBXi-lg|WHigyTCMiL5YA=|0iYi!@$N8g+{Y{Z8-hpk_l zL~3#h_SR#z1F_d3^TyjC z0zB7mD>tFBEwLjpFL)mcG?wWMpx+=-4JK?1J$JN;?$OpPSk|X&rui8!z_!mW&!8=b zcc8=D!u?rcv>!pV(iLGa z#~P3`;j78ye_&G^Abn?09n;r3rF7-3NAQ;Yj8!pvlPf9B)rfSAy9_(RcLP+TMYC{* zSfGLfHISiuai5K3vSs&5vl9b%RU5 z7WRek$rJCggj}g82!Qnkb`_Rqs+Chlztq;CbTF7(WxBpvHw^*}pdRYMJ-e7SeB^P1 zRVxGuQ%FUbMR{iWB@IT2ATkfeCTtC~>h!umq<+g8i}&nc99uv;3TE|;=(T92HG+K( zQ#KkdwI->R;Xo{Kq%o-d7K~CK^Y)!i&!?C3*%|yH8fMQLs_8V`?JjDa?u-2d)D2D+ zD2g8MOfc(q1wFiAaxFxI`!IhM9%?RVns<2^tu~Dsst;f?ThIPy(tA+cd(aio>dysC zgAEL09&td%Iz9RX`N-i4>qmADKMDtsHcqP4XjyCOhE#%o`I`F?xzdr4;XFP zg&a_P#qPl4LGSgk%9S`pJsWd`kJO2M+a<1sa@V3h{b+zFr4Cw znt%UEL?xIctf9E1PVbux)SQK@JtW1=8j3nCkW7+VPWKyd`8ZnIfPz~zRwp|aAiYMN z&82GK-T=|k!(vrjigSF^RS3n6zVe$aa?%5cQS1d^3Sfdov#n zz&PHJ>E<9;GcfQhcN8D+IMfq0)E{%Pq&<#N72PPT6K*`b2N)I<9ov&cCpKZR8zC~r zRT=imZpfc=-E&5Hcc(d0(_hU$*^NG4pX>yM;5YIH3&z_vW+y)tpuFZ0eC+P(V#^8= zV+H7;(J4<((BjPm;VOwTtEJ6i_h+ZfFy>MMDDk2f8gf6(LqinqDb=d8Y6rqjD1gNm z7|H2I1_4ud?mQHwhx!k7mrFN<3Q#=R?Jj;Ge5%Yj2-MO-W_Inh4k+%yn;!3W1g=1p zNw7Q2Br-6$AZa!(l0{ZG(ZWPS>!R1AL|K=L9s?^OdU>fo%^4S;*fEyaQm9-l-W>}J zL(hCZVp=-9+>IFf{euxBfJwnB|AR_H-ts|EnV!ykn)WElsnT!Z!I!9OB!-Q3?2F_# zW$TNtSc2vj`fm<|cN;0yGfaz2<6LrZA{40!&et;&%=o$MYh3^jX;B(*2dC>+-PCm3 zjy1y9Z8pY^A|W&J6VmJT82pZFr{d8P%edW+l@2bh+7OSU!l6hQrBpYNiKHLv_q6 zO}%7-I{Bmw)RW~x?t1bK={%9IlIJhxO(&EJq`PT_T){K!jZil7 z=HPpKd-QxHE&yN7EX;Zsc<$1Dp`g|f?;r(&ub;SkoMgg$RU2H3ZI+-WBUgbm-^IgC zv?S@Ro?cwmA-K^k6{|4;Yb2|&614?40kHeu#FYipFW3HzIGR{UdOg~d*Sy^Z zmf_6lp_RTrVQR-ts-&gKbUb0vt&pwxL^~;nubULnV%i=jP`9h>d9QAo0GxGIJ?_Wc z)HsqNMs(j3e`lG{&}ShD#PFof4rb6Jf<(fcpxSoWLFyAw+b8YLb2#6}X@-PUuoYm7 zo1{K783O7_V(Q8?KP~SIEL9thZB?hNcM`ulr+swD*b{gT`N>IcyMkzi7OmLu2##2j z8nj%nUqZ8upAh5WU@1gS+@I*MpQCNL$vQts@+n#8X!## zM`T%Xf$`wB7?A`@lpB}yZIcC9UNZ%(k+zBH@N_^ru2Vh3Q7ciNTk1En8#qRSE4~~} z_Tq<3N4Wv>5pD|;Ve@*J2AkKzB-p%uAaZGG&^a0!FxolL?SL9T3-L_TEBAxs^?tFw znmpfN=LyJkMEE@7YU;6)&omv;;5)4^O26G6#*Th191dJGzptn5^^nX%fy1?Eaj7P% zrXV8jb}lU3iq6+p7i0~~?5lBzGS5z|=Gj+wcDEyE#9wbR9i~0ZJSU@yJ6zY4C=Ri@ zo7u^Q8Utf1?(L#|#syhrFU0oe7C>!bA#vBiG&g(=Q+F#9j2IAzvOCi3@~(CVr=~hF zG>7<{`fPsEd2S!XAJzhED(wBH z7fFi3XlgNRi*U2sXIj8-h{*8Htzv&8e@Dq(< z_}`CyeD#J{$N^i*9B^wuFr;5WJroqw-S)nMD<5x=RAN2$cyHS!u6e37F@^p{{CAlt z0LwW&fh7Q&Mo1G;SjrVZOYrGRvGev*^UUOX^rc8f&ByLXmI0b8GCq`WP^{bVG>xaW zhouXtEbf>zYFR8-Nu_2eXz{Ktm~y7tF5Rw*yPBYitLe8*K_Tq@0qZ9m7idWem&Y42BoaNe&F;xpj7OJ4Ishy@!A7cxtdkWr0rg%wC?QqK@-4*pI0@#6$B3)mKX9UiY2nAp3uJ=mzJMboKg(yvLEtcu zAMw042j&7^(DVk-@r1M7-JjV8CLU~b1AqM{WBaFjx8YG6mqmMn2xM`m%N_J%OYY;YJX?sE$ZVV}cPhOsXvpu=mphooB0!$gF z&ZT(x4ZnYAjyFwJVGe~5B}4ucnc>nBNuQWIX{RRQfRGrLsjoEP9ww8f6@t*Hzcy?x zCoDx~O7&#sBb@Uljw$p?MIS#USRf_<@3!H!flfYreO%}4+JwHG08B3P#LK3bh%C(9 zkw$*Z*yA2H)VpC12DYYhH%IufCBt6{2Hp1}6AxA4YG)@$%Pu_Z?B;0x*YuXjAYR_P z=k3<~n8p4~fQup_7rzvpGqHf2id-DWsVv36~>KSQ>2qwtRqO!Wky-d3+x>`g4P+6<3kU}lOdL- z+MgvEk*`}_qEvLm(-UKgwlF}Rvw#*+SsRJ9fwn_Eg+XV~N`h$`etP}-+t+_}UK{g+ zB*xBZTSLo0K07M0_ob^$t>!X?SJCpc)GOz!>K}pw@Tg^w^n}zTs94OBC58JuF-qvY z=qLy#d5y}As}sZMh=wCI{xqizFNyeLt4=K3q5 zlP{-%!sVHivQYo)ndbTFIkLT>H-f82RLVvb@#?eFx{iYewb*WVkTwu^oI~9K9+5}W z#N}S*9$PT*vt|V*cQXklfW$*H9S$=wGsJG(pp=_f!Y&C>QP0jc_>4p$5QCK(!kCI{ z7$$@>q=jK(fXWm0`09M6O}ZLKiVJf`D%zSxlH2*R|xY2}3&eT>w3axskBvys(2CU}cd}}I42r0f+B2oLGj`H(oUWIP3 zb4%t6d09I{UdmH6?WG|cWk+A*tl8GGW?nQUoS(tvBVj-1=(LChG#@cX4`Gi_Ouzb=wY^Ro=O|aYv8o$?O7YOw2IGoOYy8Y5(!mGI}Ykj5Rf^il={E z^Yrd>0gs%$J<_b42#hUD1V&=K#`A$i+-#`ddbVw7E)cbqse;XRae20&Y$T8V4aWWH zE{2vu*rLjf}Z+ue(1jK1| z;+CY2MmOzMjz2woP$}LTAa(ZuwO8+v2IVh^1>^qrYdD>dXig_oLtI3{Dla<#7sBel zAF3KYho21n0p6A5B)1LLB}abp)ogigl`eiCyclw7q`KsGEDJlR zXEyWHP~*i0Nk7MqwwRd^SxdI_7jNFbdiU-HCrnIDIBXg^YjyK4LWFKJ%B7g?!V59> zlL@iieTrF92Qy^o^WB;Oe!YOiMO_Nx1|?AZhO0@oe>|$~AJGMS+w3F0l#o3o{2Tg; zmbOrwb8LdJ4>H7AScvqEL|*$s>{>pJs5Y5mv3&}hY3uHzDF`<(CRuB$e`}b!Ya4<# zNa!im90Hh00qWU$1!|bjybSY|o~>Y_+CZ!CcYYn78KClxgNFkk;Y$Jvfd+92 zZMWJ2_yGB%=F9aKX|a%bRb}?5U16Cj4_t0uWBf9auFSvigj*x(kC{pQH3uR#0(xG` z0L15M7ugB0ic#hR5{n6)5Rw|!d#Q$Lx`k6|rGU~&UnZYaYM^lIgW~wRCIQ0ESt+9y zm-A|yu_%J#qb0cERvr$Ta?U*E_Y5g7Z%Tt0wr3GQS3Od6u18y*U--|A1p4eY-~ zVQ3ptLYn_7cRUS0VV`^W>z+7hJaN$bcb^CaZ#Bl@zx_lQ^Q$Kw{M%1FY&`Ms-+m%u zhpRCj;fdT1zEF?Np#{EB+l#lqEZ_ceduL^u_LjGIuYUUB(YHUols=w+|NLi@An`=9 z*zQ2Zdna#LhqLnu5AniAZ!g=~-MxrGrsT1s6taOb28&>wfoVe{SjW_28%ABgnxoSj z4L=^r@qKkU0z!ZB{{7vnzkGOqyWQ^Xy}SMP{j0Zc_CEV^_2S3rhd1ATM*BcIzLo&$ z0{EwWsW^BAQ3j$O1o7SWe+9t?N7*9S{RYL3J_W@l{e;UMLQF1K|6|EcYOK`JLGwsT z0z((|lABaT8>tWB@*{j z09UyyT>#<04jt^!CN@EapG_jGd}R!o=BSM(rEkM+^q{+wCGx_7#C#1zDMDOcD3({m z_xAnh_1ka%I)3%@t9RHj&KU>K)JIs zJB1(#78k5>X(9CSaoaXQv=C_VET@H;IU&DwTs83@tQC_HH61(n?eussSTU;yX;wLj z#U>)Nql5%L>9&zdom0qWWGo;Q(VA8$z(=TV)VhjN7qs_Vu>fpr8QjMcyaGca-yqL8 zunZ*iE!`MiP=Rdiq8ef`#pNjXO$2p4nZ>P<>i}alSzRIo5%Gsx)@gL>hPaLrC~-K$ z?WHa*c~D%mv=24avi+$hu+ORsrwyPM!q;7eYY@DD((RQ4TQRfvdI!6)tO1W>4YfEB zBK9aU^&{m1v<`5nAK!ilpL$+&J%BANG`G9GPYPffp&WIwptRMM1wlCa5~dsM9XhNg zYlJ5vL!->gqTX#BZHDO?KsnPjszFy)km9IxKud1T1UfiKCXauYW(tn3=%ZJ16mTgc z;_S`=onY!-MhYBk7LS7$XNiP*Z@Ql*6+L3;6?MeyUK405jXqYFY$KuO1xib$_2HpXW0xHNpIH3oPS9#Su)3EDg<<<^9y z!-J!v;ql?%`1t7d_rv39BpP-6l8h;(n{I;T*E&~_@`#BMFwCb-;9)p!wF%|G)CqQH zlw*SFEm|dysYJTk`Y1Pmc~~Cm*wYxip}EinS7`X4a_L%6DCSA^qm}RTk3md$`E3?U zh^?VS`L0ev*!dV!YWqb@;tD(Z^5hgA<4D8t%x!~OdYCioe(er^tDQN=3{4AMN>LLP zxJ|EYC5JE)`5kopld!c;vq9zD19I4%jjK^9kVO-&9VxRPst&oaO7Wu=(LmN!}x)*LM?<$1dj3Nzbq zom`uH&uZVQnVY zS4*Q;W>-5lgzgPJygclXr8qEJ(^$9$=@6>oHS-gc-UP}YffH>3e3fjg75d-;HJFic zYIs7S=XeeBhe8#FSnJ_{)^klF!#kOnGPz6^=rY5Emtw8K2o%~+egpzxP?c(mg#0;`^TrRr;R>IS>3|g;?GKJ0ync&R&M)77fCO)&aMfrS z+7r$;?B5*^lwkVQMAV>ChR1OPch;$k#5hMFV{`r*Kt0vg$B|#eEk#okpe;HBM>)BH z0L-b~i_t4T#O7x8td}~mrQ2Fu8a}-W3N+r0SJgkrIE!xWr11{SBe#+E-JlmOJuq_> z)CU5)!71+g1fJJYSyq>@h!TN!a;g-aD zTAk9P#jkr`)~L8ZrL)V?H_k;CSJGll9p9HW>3qzQ`(kKlAn5-P+Hz7Gp1PYRcU6Hj z@2!P}nl|O$*u|o&kKJz7WZ?+}yHaN{S%`@5cNLR8CzI+WMb$4Cll_Oe5G5aGkWHc& z)RH}K)RL`l?5riLV_~G;3BNZq%ZAWd(vQ_Q>`W-hsixV`Ytv3pfix3&O&Hm_n+MZ6 zCRannQzAdp>YF|ND@~&R0<%q0z%IJ7y`Ik8BX4()iSr38h6g{9xz2Jl^tq*&bclfJ z!za$ZGrN9WM7^-_+xfGQ5Bd2~f6;5SagH$6rkC2~yx-kHd_-hI#gT?^-Izn3!A1w$ zflKUktCNHPQWX5Scs^clPm_%}E@T5SPbHt`N>=28G^FkZnkECS&68kyCnm#uhPvIl z+dzptp!l+7;4g%*VxQ>^CXRHwm?c=eJ=`~7(g7x?3mxrdLtWBU9}U%z_{ZU5tU{vSAlw|7viprQ!$x>Q@RXf&&q*%k_ZV^=3lDkw&>)f}3M zd=K7YohI}B!(*DvQ>fwO27z6O-twrKU{&1d#$^!mbB(!M!hpO5vZ0qdJv^q+dIin# zK6wV0A6~z{`icK?hRynrDl{?NVsy1aMv_gO7;|<|gu9;_%f<*(G=JEf%7=sCGUrPY zX&v*o;W1eX>4BL!jMrEpnR(rOxIpRxB=-teDJt~JIyI2*7q|Jm3MuPFH!Q=LaSuSo31?+!BT=#l~ppRZ_|2K?Kr<7>}~~ z7-SXrmLI9S7gZA!DEgzrfbJd+3cafUjGsP z!8o?t+mG*W-_WE0VPo&_y;pDEL+*GF04UTW{9$LNzUN2rF+-Ebi^p;1x&kUkx^z;;T0$&mypKyaYUFBp+j%~!9 zd+|=NOSJj`#UL=V1K9kYom^Fi3IMIZ{(s!5#o( zA+ODfWnG3|S|D^)POgOA4oA#>O+SDy~35iC??+s?~eIh?f|Oy8@U_0oYe3_{1X zYZD)5@I?l-8Xi&=ssmFs>ho;1jBy+^(TeU(FnzFZK8vWNnGBqVQ4^TX6dvOjHRNKV zDZN5jl`M{M1n>Y^mlTEL-~ag2-R<{(OeO5_I)!v{vpa+4HT5>FZ_}GGIX?Ja=c6hu*qj-|y}mDe5VN!X6~a%y#unnU>9(pM z!tAymP>s6STCnQ?0pe(lO1G?hRYOhcuSS6<qypf)1u5xH}`50c{`a`ue_`$nt%xFVbx0CI$2V`;Q0kGepeWu zGX(17_4jX;{f#YVkDF}U5U)QFPcj)6gvI*D?Lt!xHq2$tLf<%Bv>FITjJJ@A?< zroc`OE5MR_w;UFlARuMQTF;S=4qMhe4m>Wu_IDt=y}YlV`Pm2W(Kj!L)YLw(x0%W$ zXTjV6-MJp6zGyS=R!XN-GCPxy#dlAm5$uzy0BORPCZZn*EE-{1;Z8K{YKC3oJc}&Bc4of)00_!He4jOvr2l`+3 zA0Hk(IT#-99}fnD0j*PvUK}ST3Iym=mvH|iv3nITGYODdV zF%JhQMPyNhhv2PqR>PzH&Ejb2N;s=opfgFMnS0UsG*X99%)QH)An_-a1)j(?rChLE z`FX;OCX#r(iZ^_Bt`J$$eF7U0V?80Mj888tW+Ot(#e_P*XDRvlH{#ZY13ur_@wzpKeahf;-bx?1Jikt*Ft`PQ)1?jkTCrvu04uUDB|8wfS%` zM0kXIb&L6nh#4=0<`k^~(ra~Eis1A@eyTv~tO+LBLkX=QdlYcEQVFtTdpq7`A^;?>^p^H)07Er<7fWd;GCPRjFBO?*odnXM-7369u;2TOlCCw^8r%( z_it`rQe+oqD3wqVCLu8;;Sxj@J}wQO9+~T85z=0;;6`C=Kt>l$6s(SpEhS{qY20^c z_q8^G`e?#HrGUdu%;I5GXM^P5C{N3xAxL$?ca~9?xC>h%rMq!d-bs=Z%vL$PiC~f# zZ5FGw+lP{uQCyc!fjWZ_?Rd^psryY2m?o&nr z%Uut_XT6wiuHlJ5J_rV?W)RyB@B`xih*LkTqSmzuZOCSZ9&~R@u*{IJeOEe4kPa^y zgRGUex$}p9s4=Iy%d#3*DUL1K1fiQ$dde~k7HvJ(Tq%$5l>qxqus(iGb7$J8&WDRC z8bC8$epYO0?^=P>nG3?$#;3>vh`Oe!9uV57n2^4fv(kw+E%$)4n0YBFEvy8qQ1$hRb4~@+~2BcFRx*F(k$q$GYT(2>df?8>njxK zKq6J{YPBt0xL-ED1E=u{j;yR-vRRoqad`E>mHJ^6IsNO^PpjMS+X^oSNV~8j5~uHW z9%7#LH!O=IAeV0RCRmS*&X#xjp0_TAx^^ob#2!ZCR?i~;~s9ODdf!x;05 zzLW<|qiNzT0w^U66vQh_w*u+~#^A~8sS5sbW*Z9F6a)jI|L;kkFarw zPVke#;uFZ{&EBuxe|i4P^!3|cM()10ccLH$cgk2;!wzX8nTRUT^Qs+gER1zj|}~5Xp&+ z5(Q(wyh%Ej$|_&N^&V1fxy(suww&R1wwRr%xR{Ta$%9qhW9;C+fkq zz`9AicB*^~57fB8s(UQd^uX>LKoHuX;$B%H%r9tqv9ZjOhivmoV-I?(th0|UPt}&w z$LHo3>fS7NgC<0qK0F1HQXXcs{g21k(Y^nM^~fLf@b`Or@wCtFWcu z?c@Evjtxy**vr4|mB>~7FTHaAUw>*S>sftuIK-#+n zMk%wI7MIf&XB-kROC>RKr^j`56ef7Q8xd3>d~^;jhQaE7@h>9?|CRBWfK6!}(FVEhPXkNeg>+RJ~ zY8shx`$)-*@=0(mA}?)>Sz@g1788mKS1RCx9MHF?(#OI8{tHKSFT<%Of-`t=VKr`C zfN=szEXyw3m)ya4lk-|r>?%lHki70s`pe`eByV~2%jt*j`X?`6-nntFxC8FcjTtGJ*1Ih05$jw0>+eB-oi$ffXxyONv?7oe;7YD+F&?lZJ~dHWsYu9t{eAU)EVnxBksU%&Vp{O;b} zj(&RmKKQ@-s^&!@^R-7k&!D&moI?7m*oI_^DdvQNlvD)#Ac+?CWj?j&uT`QBmBY!! zTO-3W2##yPT}Ek%C~*PoV!mA$*#wIJZ-}4i;kstRjz2eC_Y{l^8~lGYyAST`9wX;B z(QCJs3h}r`4rYrh>VQ3?p`L^8n{0^q!ffML~ zz5os8|2nWN>9tl-iPM!34QrJhuhS%*If_G#16DwC<5ft__>A5jowE3K7*5IzAe#Z` z!SgNhjKc)R&u4{mxz*LZyoZ0UG2w$wEw9_O0MztpM$8^ljb2rFS$(u^`uQ7`tYW@)fUo^gx1YYNn$j# z)TyOc$sA67H6#e|Yx9=Rd}jyEl95&!BKvVLEpca8;=3UIl&zC%54k+)BhwE(xzKx} zh*Tw(Hb6!9+T~Iw*tC8SfizUw>D<#`vRRScLn)X~%R@Y!9&;1DB@N+vr!0i)_Z2pB zZ2(yxOI>5~R;a(L9ChZtvX}WN@2eYW@eQpvSj-idv*6(yz`U;`tlQ5$kQ>rni>3F2 zVjZfO1?p0}{Q?@02byWQsLe(LUj+FUIu4XS9{o=;4lFKdOL7~}fl0x_=bwVOgXTRx zl=|u>Tqic;Z4@-B@Vbr>Xg|n$@>z8bsB~)W0&B*oq&YcVJ#$Q{v~D_zCK17jwO*MT zriCFBMy|qG5!H!jk_G;k>%-wS)1(}Al4YxG5IxCJbi`+ylYc1+v4iwbMC3UJU=Y>@ z9V27xKvf;3ry}BZ{F;6A=29>@KHe;zSj9>cOgyM;w1SoJ5+V52nRbF7AU*A5f>K>D z>5O^`yVpB z1j+4D#5UnJWdz;tkBoF=Uk1~E6m1PUV;LIW3hfP>-ovQD5tQSS>h%L_Z1zLq3%Rgg zl@9D^=w_pxl$ACtjm69Yg;3uR&3|uc2NV&IQxSaLgPReHC@Cj_KL^{%sq^POIA=fw zphM|t2f$!;oY)N1289#a9O50q?vSTw0@B$t%+4V7kN5sryOf&#y7{uZJO;V@z7YD>61qXcaj`I@;E#|ZK*txU=*-*q(`ZW1)Y)2Jf zO%zuc2x>GME~b*7qoEZRr|FsK_Dy1nmf*}zu*S5}?}m93zV23_4?-W*IELZQNT2i~l`->fFr%e$ZxUOMk3XR^voI$zZU z;M*@x!v_crlUdWHO11!9ZORsQNl((;c)2}b;ChQUfO!%M|2SjFZED0ebkC%N^oRlh z8BK97*2q2;lUmsv?G4VSbiX43^%l9i9_%=bn1KqU83Rf|&@W>|g@|Y=&|5usO(z0K zFufB?0g9*KZDT6;?2q*L@e`Vt=tQ4_^~M>=4mg3~#D^o~PJFHPKpwxJ^1k@b&%3q zKv$30PUL&5!aWDikARNWoB41s?SK3zl^!Glh|Mgu&gF>qv|f9pf*NK34E2JK zKW%LF?ml_!Cw=hdsLT-}0On9mRnPP-%%QI%YZ<2pZc2()xe?{2=pSO37m0^3jds5) z(i(%)qXU%3uvtgUG4F?6j#<^s4}#-CV1t|5$gj4;QVGwqbQBzZ%3Yu~xm&$o26 z1ZU(tiUrJ3Tx7PmV#13k1Kuk@R{&Z06x$Q7sAnFW=MBA% zxJ;;LpXrpq-XozB{UiO8`i0u5tD9{OR}8?^j7k?tPhidb(VjWJry1~upv1Kb4eoy` zcDSR1<;sE;m`K3SSR`heu8CpRBS(&OC~t0L=L4uEZ0VRpj%|KHsC1_(pZuDxm?e&c z+x1KOJVz|9gjDfeYAV(kWoC7&_m3ZMYa3gFhg1%hUYPL(bAAPvGliP2L27N6uP|{Rt{M@l;f@;J4BtyrO6?i zOywl(IQi;(MCAL`_Fh_!_dzF>qwy1aNj-fp1!|?Ujh!pt*>K7+mK=w9HGiHH5wfAF zAewC@T9hc+%Cl(G8sxa!NL@fR8%z>0N4{;)!0FN+;Qr%ozlxRy6MGPxWjn1|1E|M4 z|0OLaz64>&&S}LNu1=ygko1pU5r6MRZm}G<%%l3nS3IjJm>K@e#R0Y`sS=o;`A7A$ zyAc8%0o4EhFF(9`eY=O8u8ve{{a&fX)nRe!2E`^m5Ja*&CJm?x&W`LrIK*Wts~K*l zGXi_#aj$(Tre7$qr?(mPHU+hDpXS-~#{Q%?sI!|&?M`oK*#tGh+jM2FKw2`|Jf0)y zX1h7PAeU&zFBsV-P`6}@S(E0M5Oo#GRB$7X-{tsZHHHCS4*XlxWnT-TL@YYypo6Hw zF@m*;3E-Im&AQSPCii~Cl4-p^QJMAM_~*ZV>#bOz>BV>e|FgaCUfsTa`RL~tuRp*C z9WJ7=1s^i$8n6AXr!Kw!_>UeZ=3(!vuZk=B#MZ+0kM?ZbkHB_cjV;fNdcl4uAue_W zdU{uVq4id!b9@`scySj>;XO-xX~$i^gTu%a6!BlWaUcGpE@70cdVzJKj= zTALQLtRCRML9b@OhZVmZ7c;%}-cDof9yQ7;BvmH}B6a03+Zdr`_7;b2)>JGylprn# z(ZDXxirHvJ1DTZm$Yyk9&PPj1O-+$MQy}$5IZ}|YlNk%@!t5Yb8*^=Q_K^RU8F**F z52sM(3=r$eL@D1?T3FwEr5KB8r>GK2g3W|lf_ma>n5G_U9Mx3JAc!>m|ChLTZEoYb zx`g>tFqx_pS z@+4K`D%R7*=OG`iVY|M8p(}bTcEG2WqzS$a;So1;JmZ3b|tt;cyy~SAW_b) z)!ugk6%neoI3+$*)x?!D9h0aanngr?T&xyQi20uCjtCIks%G6~o7Emq6YhjN7Pm?f zE9>r6A>HD(rk_@BH0w^W1D>Uy^3&&Xb#b(-sXxKcKI#5JZr*W{^TlQht#D_puU?p{Xd?oOW zCqbC)5q3?nu7+u4xT92D&sOth$a4kKVB_S)X>2ln4~ND?qqH0CW0owZDXLV5{6rB{ z*gq~8!;I0;+g(nUR&U75l2XoabcaWfQ{v)kYC$il6=!=Re`h#5QrHF@PLE96TUZ^ZbvT=89PQa)8*{qvImn{ zea8-iCna`9bR?K&LVN;wp4?jX5@I#NMQ>5+*)TxHmTtDd&nB*wNuCc4*ZV{<8QR5C zNHyWDK)y^ALrK5j#gfdiV&|pQTsEj$Ge7?;hVD7_H3W`{xb3ZiX(rl2TRD)J7+x4= z5-bmQ_0z57aV2Dtd3iMga-qvEDvZ7`T0v2+NS{%*4B~5|b%5K}5aZi1feg$uuu4ZL zyRGTRm1e+CR z#lC)xA0D-D9ky=`+qVYoTU?UH;}MueMSxX(U?7Co7p0R}#FtJ9(hQKb>B~>|tW~yr z_xY2zL5$#)8u(CKL_7y7uysT%AGqKBs7KZw(S8+0r;B;)`kA9Zgwh_FDhjoplU}# zWV=EWHxzG!iv=Xzt+Qn9*Kimk$pD5N+H#6JxrTzGS@DdBa(#FdVqRflB7*l>e4!6> z5Z}+08sD7FF$E>vngbs`Bpr98G$V>=GD68`v@92okfQGKaK#&80mFy05*?FczDMmF z#d`A#c0u;&O@gTdR09RvCZoyh7NG*G#bz;DfXj_GxK73ml&LcM8p&*>I?mSYP>L*^ ztGr0dze*)ujQteX8beWCG~{xlsBllqvUj4$`2i$#k_{*7%8Qo9!@VuwMv)Zzft2-D zP(1cn)uKUtx>qGwVHJW) z8>eJ0c^&!#V}8KAP;;C@P_m$vA(w4nDZZO7gE&+-kW+lm(zMHV1?wxtX$i_KL=qt) zCOO-WEEGuRzo@qa@dPXEijPwkns0_~`!S)w8qct}92)VQzfdU?RM0a+5-STlQeg36 zg%3@Gfu3%t;uZrQ@$aF4^FISK?M1=28YCnzF$@mE844&*diA9cfj`0rCc{_G>iB~B zixk7`U)Q%YJVQNok*nQ9O_l0~>4sKRt%_wQ8)LOD6q>+MM2RbF(TfKV;{AHd0Y)!e z$}2a)#{%2g-WLyp(2GtT#Wp3a8$MMOWGlSVNLc|*@_GVL;P4Q{IWi36Ttp!!sU5m49_uEqpXr{y{Sw~g%j88(DJcAQ2kEsYn?n99Gp5?r>Z*z) zQ}jiqXC}y_MNXJtT11&7YZwBjl(fYJkV!Sbr%+(w&9&np2;m?$8f0XorXL`0`-XyK z#NYO6bkt9*Sd(K&I`T3RcgiDPgU(GF4E>l_NLkz{DPfA6dLUh(7^4q$ivjXLfIl)L zXzPkdHCPt3;X(!%i#+PT$dv|*LZV-{DibihkY{nS1Otxn$5Pm90ev%o*(?k2Y&M3B zvF#lnRwmA-=|36jVE&Z#CK@=|HYF*#I4>q_geVOYOR?EVT=DIgF6T=*7ct> zxThaIWN_zXN2nbHLndO&Q%EL*r^GbO)#V(?FSLmTOMybDHE>%Z*FfxmAq5l(An=W6 zJW^{(mJ(*``+AoOpifav-rklk^}a$gbaN`++GShGkdexYDRTf|vEy}nl9gnbuCq~v7q?Z-Mj_G=-VydW{-O&oeI)|FHpk&1KsNk9< zrZ&(zKeBlGT7Q7kt23=NeTcX4a@Cm1#LQ6HGyTW^IOsW`J zQ3O8xXHihEvFwskp&Ve1ndOrg{WwJFj`TUqx&_wa3->zYqeI9?xvGUW6~bDvyv54n z;WcdU0<}k^m76oh6o1}Si&fwCLm<`}jLsfnkG`o`A9dXDCR0>8tDaMEIZ)YzQUit* zN@f3G z#vh<6h(25Te`_UTGu?N63mw_ExCn7+!flt&5T#1Z0yVW6Tb?nYwBExMXGUn_ z3E`CPiMqv=Ep@W@BOIZ|&3H5`wit?;FT8%RIs}VZ1>= zTnV1UPq6Vq{yettaf`5vB3w^W2RB@?UO8X1oI@mq3^r7RWb3X-174F9AZvKm&|`(n+4UFw47RM9SDA$4&*BP1RdEU_o7vE-yqUXCETm(5LN|;C~NFDsBdjLIwmTVUZqVxn- zcSLr90U{C+JNwNeU0MkgPSr97kORMjfvMCqT0l)$2xszglJJ}uS0D{GLby1$str!p zabA-88kNkVJ!1SH)-M(2Vn89H?!&9UescX| zKVQRAWn&cXcl4*;+c#K)bdP~{{Wl2EV`)nK@Bd(UJnQje*4O>UUxgt(#T3dI#YeS^SmO+xViK@`gy(e;A=Zols^X8>cf@{<+MhB*&i}3@V&+J03$2-uG2U?#RPjp!V zQUMjym0hrpIDKSTK!hVlN{+jzcfoxu!D-)_(y;nrw9IqM{?82asqv6;d+{aaARC_Q z{7jZZh>nf!wfXpA$C;mm69fwm#2}r)=1pU7ZUb=lYFvpg3Ki`Rx|Cu@ZblXED{Xh0 znh|>zZ-3}SK&?}5*`l(Ra7g4^uoU>js+48*N}V2TCGV#NoO;=@wB+T?$~nL`zwFV4zsp1ZVHDtd*V0vP%N!{ zAu(CE9+A%$P)(OVK@nusbSM7V_Cyfl=DAzR7NNPa3>kSn=!SW()+=@~jAApjeS#y9 zU6YLD|D1t>HlEawD-1s8UocQS@S}$e6o&G0jyRsdW{SuQCK9r2`%Z}MR^O^3HB-lZ z6TMVVTUEn<$`v(Zv|8lTCcxsN;=MuNV_nkf`<3VX_e%Q=VjugQPuFSXvIMTy- zR5ENgi*C1S6>OneHACR}Xak)i;0LWJapMUF5fX_V@#u|07dkjVB~NiLD;!{6vZmoJ z!5kH>3?8lE`0F{tdFEakuexUsHpb8|Er)uc6APWp<_i-{FBGwe`V1bbkS>KRVY$9q zKkcERgr1+Gahww5YyG6_@K$EfbfnD+8lo4D_%rMOqlO&3a(w;a2N>Kzs1SsP1on$njS_9rR=MD(K?GeaZ8g|J?*iHL#x04?Bv<`8lH|vhu zay^MFt^{v*B=KrUGUmTE;krst>={+!Ogf-heNkl_nX~wpNwMs>P~X=Cf>eMk^b_6S zg+Y;*oBT?XE0pj(yN2@5X&(8u8=vYP>1+c{5hhfa>Y_clS7Qp58!Zckd-+t!bg z1g%PQ12sZ<*#~SO-2)^9C~ttMfic4^{}^2wTe0+l@-|ihmjiegvYDem)E3Ov-J`k7 z%)L1Au>C_NgclkTB9yu5jq79OC%Y>J!a))9;C}0>;9@@q$ zBTciC?xDsS?s=L#g8qkUEZXeSNt;TT;Zj`K88c;hT`6Ih;8 zo;~Q8u~2*XzbcmVasRYfo__RYv7AUC94>H{>y7)?xtD2J?Wh?3#A0IjfD~qq+lRQV zt!ds&WK@<&7C1a_%Vncs_a)+HF=UJ%q_3>cSswuyjG%Lvn)je zXmlEZQEOT$uFfwJb7d5XY8XEn^c&6tL>U+rOi5^FQ;g#Daixj2I6uD9V`IHBLS;L| zkzyIu!fMzq+G=K99mPPQ%bH5~Xdcq`Z@)MZzv|?l%BpQr#A?aU6YdduqG|m5F z!-x}@>yAhOQR%?TlrkkD!SrF2%0NSafc>f=ctLVnu#j04vSpK^(TEufMRo|u7y?5w z|EQ=2F`*M~4>y0)AlZ>)k6?K6-U5K>18N@oP+SrMdbI4^f_?snjNku&tuMjAfl)o$ zBlB!r1xADtt4lAJUmU^!(trE|Z|Qgn%JV<;1Xb_f{c8|m>(~6?5O=XWIL00m-k9A( zk?`@wS8~i3-j~)DMX4z}#uj6ituc0RqFjTHlVL78 ziXb72J#M!67ja-)JkI`_&o&#?!5GhgecLK(Mj?e(w?hSHaOe;`kGfV?FqB14arg|S z-LBz3={Mp`x=X8?8QrQAc#4>X0XD-Nr6&d`oeNn~TM@V6E?ZwQ=9VtA?dn-8xEPhJ zrF!^DbiSfIFdn(wo)rRh=@e)IH5)!^lVXN@^`)raXoBd~?Ek@Ia=RLL3ON=8=Pbp= zlJzoSYXzAG`SSh`h?9xJVHm7Muo|ZMf>uCxgAM4Z5wOJ#iev65i&qScbV(3BKS_2+ z&V=r9)B{g};aoRsRm2z_TMvF2e$3{TYXO* zW{*?+o(x_ovdwu7#XtUnk_8R{nec_AHlo@J6+lJGE<+5^zMOnE+ zJ29@FHw7iFe1fHoOaZHDr=q2Z^LUC;OV44-!WMHgos=+u6+9ZIPS7oMn>OuQWdz_x zTcfxHyd^0kOO&FB#U5HzKzT>oYUj8QU4Y%-P{6u*L!-1kY#Ry3ZU{BHNYChs#~Kp7 zqvk)K+cl`b%_6px&y`Z=-h*cBsR;$!PC)-VeC##gfu&Gv8i zA78(H^9H%wKlkKm-df~q({wJ343Hi!lwd1ewl6Ds>FQD+tpIsdJw!P~uYahL&j|Rq znMcH;u}=#)fK{wY>qnA#Hdis_-0W3iE|>7=0P)chDN4JScQk>B>A~q_oV+iV+XEXw zeUqUi(rvvp*PAy+Ei4Ht5-{UR@1WiO`?K?N9P9C9gZv?^Z_9L#YUjxWm>hvlLJELw z8c2EWD3)Z1;4?&)60F})_b0N_bD)~VTegOCb_4w;0(0oYhuVUYSf*&EYki9FFv`4o zS+jJh5pg7;w~dC=&f0_y(zH0GIWPo1WL$$H0C_ddLMtl8k|xX^(x4v0o@tty-bewl zjq;>uaX=Jkqw-@YGeur1Vr5ryZvdGQhXzjz2N#lrN4wRMqJ$-ntVQZ z_7Kuw_NML5E8tKaUqc`|Qn9VGEC!>9=EwqHYEf)u7L_ zpen=?7^ce7z(%Caa%^fX651jRV`_RsCt(keCKX~arQa=9s%1~Ids@17wM;yMrldF~ zE_9Uf3Js9n**q@r#0FmN;Lo!CMIj7?CL>Uluh#kH7a%sA381Gkg^6i;w7BPzd)8m4 zaFt-1n^x6(9LAxg*jpTF^DcBgD?oY_OsKuTe|Y!u9<}9quRgs0RMwgxQWm&eY9cI@ z*ZX}@X@WPnH$(tMgpVh;GdQ5p#}aN({#8jg3<__K$lqq4>zVt0q1`on^19-sK@fot z;+eFGq<{!sd_R2kQ@p(sIg2j6RIQa&1)hJrBZ6+NI=SZ zFG~{GIicuqJBBR?UIx`#?D289o6@FlU%v)a*1Vy54XBK`xNp1jVCt50a!bt{}tGQ#h{av7JBStX%IhGXj6+WwLCs%Y;D;Hy9X%jTZ|Bn zujv^Q#=#T)>;zv*+^`such>!MN$DyLj0qN#R1dkrQ4R}W+k1|iZe@_etw_`q<;+2} z)P20FMFr8@0$pxa>-Zp_S_#SD;aNFhHcyv2x>6VE(?(23Q?agLdLYq;HHBcd-&Lx$ z0_#WWb&6CcbVemDpcFA#G8+M>6(W$UjroQqCMt<+7ommN}ZKiU^}KB}kcBuQ-%x>!7tXDOnBE^h_Ry!WKRgb3Ds3Q@Y%GS*&Tn zu&+_h=w^3%13-GCJ&4FH4o;nScFpS8S?$gDBy))6EY_`fXg!1MNU*%x79t^G!W@ah z8uNj5mNW`bF+ZUy)L_P%hAG-|7Z|2^fi~3k9US-U?CAvj$M!=^tolVtL12YBsrZXI ziXDS1-mEW?@RtbWu^*9a@Hi+ksShA|8a7+xq!DW)%AH>YEs@FfMN-($PQMnNTVRju2Mp4ajXT_ zOn8^6zLLAKQv5^GYxAaN2Hq}H5v>MrrLXtn4>_aq1w2mGI25xnSJDGR1`sN>_-c%c z)DB&6!4ZfKygL3|*}>NZNij?_n&s>16ifsLq)Ht)5#{o`pMS>_i{9m`43x75cvIq~ z3mIPSs!5>qrUc7-8PBI?_bHln`Ws%zmU?7||HP3{{bEZtFf36?%{llr-v;8t84dVmEl&Ty!quon^p zdB3V(ZIV>rCY};>;!2XK+V<=nBV}1 zird<1%id!OtV=P+$@tCBD4uOXP65`;akN>hgn7X*97E%QvmX_w7AuyLFbG1+iu*WK zEZ6SEJf9(_2%=ig@y%1LI>~;5>AjR5P$TGqrU+0|Qy!rt!qiA$qRt)XUXu zLARJ{t>&!8g99|vk*ORRiQC>E28PcTN$b+7U+ANNSNiG+4hOy;nJ-u)Pjd5h8KiaT z@W~cH%?;uwl#If3(aQp01EQI&rcm8h(*ez|>H_x@Lpd-osF7)+?=%%+*F;T0hfsNY86X$I!w4r4M zTLj7A_NZ($J|RZmBF~ZKKHbm}3^YfrHAdMhz;Q^$C&-6hPRgj~Z-1re2B}jDJcnG5 zmkUtp{btBBQcg5T0o1z&F)Z5HBFf`kovj)FfW%3AhowQnBH)E7s_WHrHZ4ttCP?ht z-r$de!O_9V@bu^u{~H|i5APli4^F2jS_586A_1A>95xabL145Uf-~X|3DWrjf;5S? zOV7>w|CP4aDk=3BVfYYgRf%`flGzreKCYcZv_CLzp1)W!bQU%ZIQoRL`DPh%T&fe~ zL4n;#@d(DG8C@D(_vZFyNJnfi(fsyMf*#Bqs0*0z2{vIP5p)`6m}V&w#fU<9Ny{n% zICYt2s999E+-7~G3K)I{b2od0?f>=&r~2jn{l~XIe!jokZuj?JzI*%A`@7eG053XE zPhSoi>BtIf>>Q+-GbR!Bh>9Rxyp3d^Thas>g)@7R`zZZFWJ6-CYuuiR5myD=GZs1p zUFawzo~HLEHAzkhXP!gq6~yl|oOApuhUkCmCF!)nyk<>^kqTI!>$BId(N?yuy2Mnk z-Zxt&NZ-DE_ov*9N4L&je!7cXW|*VyAK@hb_NQKk{lOER1vL8b_`CBBsvJ#x7@o=} zq+oM<;iLWH8Ia>h6xsNsOt|=Q^0({HzdY)F(}NU>|1RN8unfmXNS01>=F|6owQob0 z7942iSTh~lTmE=@o^sNxXg@Fj#s#jZG!%otX6B}i)G5{UkAVkQ#FduYMGS?sxJ;;8 zPlgLJz6@McGZk|nR{`*w#1O`7#5(T~vAPHB(arMg3}rtdY$H`>KI!oe=s$0w%&jCn znU9W`%Tk+RJOeAPv=(-7D20-oKt;XTEKo%++4RyKd_AP9 z;RBg~UEn>$Bf?IK9zxq|c$QpQ8237F+fgm2SEy&zhmcOYX$(|t4xS6z=|)(cHi^|Z zY|onBw*sJNaKm;jd~LTA)_Ch?7$gi2lela|ASj3^g4_`HO{UHQjr1#3%qKl??O*hu zumsp|tfqWn4K+EN(!%z=N`yCWWP)WBu1e~*jizAC5~VanSmLpqgY_+YKj@l>SkI1y zUlmA0YAfED%2=2xSUSsLLX*2R)e%*Cwf(B$FmGyW!ITOG&P3)t%QQHDdk+%xBg%?! zB7P5FW<1xv!E80%@sbH9JZQeX5ZXy+kfqD|m#E2U`)<~D21LEPL!D3^rY=EMIx7Y2?V+)uK#@40^FAon(rL`X(b`ai0 z4|42QS`ttnq?6()=cg7x7*`oZBM-FGS(kx&AQyBq8^Hhc9J07}fJz7*Fw51PT|84I zd-qCKpgbwpD_QUy;=KFoN{!P)GU+q21~gFfO~dC~Ps95?zFa|38@s%N(2tD>dUcz3 z%aiP!sAv@dl6w9E@mF68P8W5?Vf-HC3<^+vsTECBOm)g?_7P#kteWKB0JpA{B{KK~ zg@03;2MemPwh7gWM$H{a#$FV*x&xjT-lZ9ed|T-o^Xurad0{Xlcjn8@st+9ryKRPJ z#JIvXTTi74)l|~=dxf6Dm*|G3lTrG5uaxWBZd|2xlry^(U$57?WH<;iZ;l!(?kNFX zB02VlslX+QkwTR)P1@+^Ib{0CH$-RvB>6rPe9U2FmRO_Q)GMLLsUTN4uDSy+X7BIs zKB8fph1$>GzP|&aVN%1x9U^lJwukCX?iZ8SftRo>usTYw3uFmR*Qh)vpC}B2JS__U z2{W>ChpW5bUKiVo`LVv$N_ttSQq*zI(zYLJB7O#H4Q*T8bUJY2%-HEdAuy98XDQY09B zs-7aN3?KJ}G)<1%@uP>*Gz+s6;*MbPf<*N|FZ5zeTA=KlaqWy|^5VJXLWD;&l?jz$ zt+*{pp#U*z)SHPS7#U!IzXb!HGF1^_h|d(`1RW=*q7#X|2nk!l1-CA41!pd99fT8* zPS?p*&`i$_GLk6p`>J1P3gM|Fbcu&DOsx))UyalMC4NYL5qpx=t5#mGJ|%RQZQMX`6^g;}nj(e2}oYh-WtC z@N0!({-z-ci>moTyUil5w3LD;-(|;&B$$>YaYy)DAFlFFqgqwI?}X`F?`3RD_jyOv zTOlgUSx@+dI<(i*U@&S8PbY9{+DRvM4Uh(FHkJ=SI~gju&z6@K?5MN=u*U(}I#L5{ z3uxu)i({d@MR_6S>`|yi$qtV~9qh@Yv%b5(y?b^4;bYHh^`{#JH<=As*&QRo-h>-a zAkl~BLg}Qe*?*BH z@SmSHZ(seDv757V#Dra2;jtXGRkY`*cZgUqSr%Y>n|mx7sLSoB#?2|I5zX`zn6Q?d-{bF=h(SiL z;l?oHzLk5OZ|GQ5{VrDWntuH7%kA6OcOR@HlKgfYf@s~HgPh#S3J~Sx>_RJH_(O^U zCYQoRP0L6s6)_z;a48EnVZxm?8v9+rs{xg2x#R;8R@S*mV1=3)>)708dEg(R7uxvT)IKg?v6lpTU{nE^Sh;l=bDIKKigYy|%P*rKP2P z9wvt&rq-Q7&;`~;Fq2BAlk^7`2W|$i1AD3Ho@ZU8;wGm4chZ;uX^j>02gSbGN50u{ zKE}a^b+rU3zv%87|38=x=@T=&4oui~^z?-L#)Se!8FEz5nU{=WYLJ^YP{TPjBu%eiA(dX83T!!y7p(dC< zoHHQ$BLeqodD3|@9HimgS|v`bH&2uAH$1-$m_0vN2QVEOsD18nb5eKnU9F{fw);L# z%%U4tf)@_VF>(edF|KO=<@x6~2lVrO`z!wH7v9XqPY>+3=8i;=f;$rN7k{Wn(1Y0c zm1NXaSCB(~U86|zW^sl7T*;UbHBDvs2yMOhce+(|3xB~`iHOF6&78EsZpDAxsS$ zoVHeEN)sv+&;oj>LMO{gu#7QvjAM}oh&nP90gR<@7H+O)`XL%KdPOF7A?lLK0uG&_ z1MIc2E>V=Ll{X^eGJ*yL(kzKkmJ|%KhdP7MHgLcq(vLwy#nt2QCLce3_&7puSR7^Q zs{FZr2$hVAldX}lQMbEzI}ojyTgT48a^}dJzaG7)6dSXhl~B#m#B%D5VydCZ;Sh2P zyx*nh*$MYUsyw|UkC-PU2^1++QZz8{?$y#cd z)-5qu27h<9J-4`U8Rd%pZ_w+a;YI@)6aJS&^sepp{oUQ`T(zbVG;hf`C=-TvH*{HePC*s-eWw-RrIi0$EE1rV!VFF zkd+iZ7B?EPWA5i0gdpfzeUJ#2Hmqo7!Dw1A`->^WGJJw3waJhUlYrp4g{6+~u_Qy#d-^=1Ssz5!fs zSfHM4rK&&rK$O@JW@?Ke(|17KBkv3wAYAR2klCy(GMaHuez=*e5lmwLSDHuq8(AI_ zAM^`3+C1T-dj#^kpqC+P!G>~oMo58d(-SMFbrq2*Q zM)Yqp(x(B`50XrB*mkcjiTpWvg%|3Bg0>zDU0%j-|~ zFJJxj@#jx3f4T#zM)cu|^-A)E=I&e*2d=X_fyP%r*Zq+(eXxDc|9UcRzMA9$+)bVySD&!;!?KD3*(P6Sg&N=MRs655rLr31p%qKTGo>_3^QK*d8SlKqEHoN(qF?3~ zk@}@o4oKnE?bz%4CUo+=}?xUH9(NJ|xOvLYU;5Q28+#!i|?*Hz_Cyp(_<>MU^1baE%e z1?$A==olcPDm%ww4J^c-dNPwX*6O9g66YL7>vK9&sHZrxd&)E88rPNqEi-j515wEdLx+Nw!^3b z5(P&BrJ{0x>;U{sl+}w#xv7Z!I3RjSG&aKjp`2+^!VG7#X$4gkGi3lObDYF>{hSWj z{6TB0>d;n4P&SJ7=O5|j6;LJmNI+o|OiDw6m`#w0j&>d`l)V{WnP9$l7RPyxh=&x% zc{m)nmni(9r9&vled#prZyt0S_d{S@TNP%Z^JY|{xiNK|qRptb#ITGF>4_U=3STbn zCVNfPwXv=_$ipz#BbzXi%C&FXQE1ezv7^wqDf*J_Yg2R^m=>Gy&uDO}HtK;zR^8Y`>%d^ zEyl$E|M}1M4KQ|5U-#-K=49~SV6*?D1diW+dWo>91P!kfXbNaoXHcxG0LdOoSypJ@ zpg_feuze6cF+HZKvQ!}7wE5i1%1@T-*__OR40ieWcsQT0j7nH|M%7!FnmwYV*Bd71 zojqr^aN`ylVM<)6yBicaE_51t6S(yYWc@p_MA^wK?yT_qUcTI{kfu%nNphAN*Z~1k zGdsB|(dNiJ1rkV7Fwv1Dwj5k!xxGB{jNxbQf^tb~7Tf}B$qJ#vyt5$M52Pa$WAt-! zj5YQh{s9*S$TPJw9tV@Dy*}NGS)JHIM0t@t31wirC?u|VvKJF%Q(HZE#Hl{zXR%H_ z3bln`rAAi=l(L&{5J!wK5wmoxZ&?SHb`C8;5k}I4+ZwdZDzoeF!5ue;W_M|dhEyWI z#~hm34{?vV4rymkm=N!>H2%UH!JJIsh2|xP<38*)Hzq6kU$7fkq-`}Hd&(cfO5n^}o^XZRzQZ{H z3tM49>a|NgQp17gVEY9+CQax8k7O}MJE@ruG$#{tn{q&cX}D00H;Bz_DYd%^ZZPqx(wZM@$W4m3L9=Hc%9qXWHm2!h#Tbw!VA+>BGnEP6FLC3XPxT z0>xIuYIFC?-|W|kRNJVUQkTPUT-2P=IvGu8b5>7wG-GZ%oJ89$*q*vOE2#!8#U_85 z5Ko);i~tx;byDpBX&1ETP4S})x9%LEpORxi^I|qQ)XxXnI{!B)UqP5GPOYh-2z3Ia zhhNhg$1pE6y`X6N8nJZEd#sgjJd1L(C5iT$H*~0$Bb5+PXn~li-{1kqTI+r$8Xaja zVhC2+E@bdBIjM>138rsRy%AI9j7}871j>z+kURa2r@Ya-bg zG1KoCQ_@kCYQWwljfVj^$ph0EV%u_yptlk1b03#??_a-t{}YmV@HGktYuq+GG)-kk z$Rf#?BsSvG>HrZfsOyNA^*{?CifKQ~j-#z5q(0gnkXKSp-IUP_1aYok-xr>s zgg6Zpth6zHcD9;Aft${@XX`5(zG#+6Qb50o`D((nRxNT0$swD@jCz{zAoMpWtuviH zKzb}SlO;pMR4hjs;IcYUR$*KN;j~v-`w}i>jzf0&%l%q$mHCdzdZ;{COD~#Vg4ryr z$`!nQ3^Rccf2c4Mr{c6Ji6MCh7ZW(5oePCl;%XZ(3Yxu~K##0ua%A=`&Ry)w zRY1fT>JSVSM37=qJ%<+9Rxu-RwucpARBqzKvObn-%uLH%EQ%Pk?gA^Ve|Mks&)y&iuwcDQqh z)~ZGsd}>)~vIW#nw2tQMFN_h{$}tB7n{}bxG*aE zsV*>x*wQhg(v)EZrri}{d8acsuA!LCBVb@Z zEE8TkJc?e#WgLi0G+*iVq9GEh0<{$shD>%bRSTpv%MeY@XYbzmPTe9@hyMqJgdfF}FzE3Mz+7By}Zruteu$INg~x;8ey1uC5UY6{e;+ z4Pus@W+6&AB}TaIq+E>Rwy(AI3GZI)7R)Gun`66O+!>gs>K-=dOmU?N*nv4=^d`Co z0{Ln}+XCyM=5J`rcLmPx5CDbI5yQ~PLu85N=@Q6*#kc}DIHL-7eYTn1dX~P~th+0C zCzwx=iV!DX#$lV3T9!Tzt1X$we%I7g985}e;-j%FsVMD zPM42QZ!X!PJA%CElVPpde=-DjMjM_&a7#I1P|vOgX-)<0F`Fc|!-YWe+R0C{Q_AUp zma?1+R7svP$pc3b??$Jjbl=@dPHEywJFlZ}H5<(l=JJ`XnAuJ!Pj&0d1zi3!h1()W zcsvoa&X;yp2>`>1!qW%E!}80VpB)MIQW+nLm%VSuC@q zW{H{>+T1Ke+XDFn{UUFz^FtT0<4SN72dN*!xvT#MqjgT(9-!Hl$C{>P&lo6g`#mEK zD=INiB~iMpv`|Orw&%*Ctf`&=!BmzO4*#Y%1OsQqQ-b^{DR>lMg!4eVkshBS%MbZ+ zg_)@dP2YeAA$wyreo;tcn!=2^;sikO(JmV)Euui+4x?WPaYZVAVt;B;VHdf+0e_*P zb#|=^DO;FCaKg!ZCHkWgHq&>c?)hI(_A)r^o37M#4l$;QZ&&<|s+=HbV9B_FqPa)^ zvx_DsWqYk454Sag3TYOV{mq(wGDt=BwZ6&Fj~|I*YxUw*AgyfV>LVs~h7RfY7^dq# zv58okWHg6P(bEg>_K60@DX7k6r6@Xq?GlXFIC@e#vmAFkSF{)c%gHjc`zi=%_ zW@5B63lTKhtY%lI634t%@hP^;tK3+AN7bE6>~c)oDyfgXhb*gR))rggx& z@~>2b^Z*`ZMMLk7-WwMFE=!ceG~t1=GCZRXzx?v~9vw(Oyr2C2?)|-78|?vtwX)R^ zj3+(RHxf3%0!OLb7kXlep|Ye?=VWzL9RBJ00FnzhyeTqGD8#3}V`ClNvdZ0HPBM=1}+u_!bP70Y|X?3xJu#!xo zig=NQ>-Baz-82c7Hg%&u+?$I{j~|n+v`Z98qD|C}7E!#d0AVb$h2Wrj6}`O(9>rf0 z_=+nCecX<#v)OgJi^!6cd69nR15rI~xnM7#cpwM61n5CsP3#rNPB48Z53h@gMuj1k zD5<@^xmfqBzGZzBh3R`y7+Au&ebz-7j+11dFEEF1EOoqgtbRzlwupgC2i3!pW*7D*eF16Z~hcN|;Tzuy<4A2+E2h#+6n?=h0*ZbVaYl_8O+gkxM`X_MRrVWd)@9_9!+@Wv`~zO{kuPZ{JFCRCZ9_ zKE%!Fy2e?bCiFcuGikuG>3n^>RVaW7&0A$O^bE#%ipq+~8$ z>NgKh2n9;~gz{t$h$tx__}mHBig=S4m~WRcung7Q3Nui)HK$@^JDW?vPA&fWXz$a{ z$n8;jbnz(58G*)wvR~QTnC}V=?2|E55DszV)ME+@%5%qcJ4fTy&JrSxga#t08&IQW z(y%i5NrKKG+eM(&>gskHwae8Z*sh%g7<=$a5ylSV7BU8y{ZVnA9fGs59su=L5g2!Q z8ny8Ytx6^rS~-%iuU0Ymi=<*qp-n5c%&YatVQjmRgZABW5cW7QmVqeFB>0S97E^P= zqk7RsTAaAngo$viO|E~FcwMdPM7bOp2hG{%KA2(Yf*FFW$7vxAhZUo8!B*#m%4>06 zLYGBcX?0*M?uv5CO|SS{UrPjpEuI1ZJeSDKk-4LX+hkN7AY&w+zfpRW#p^uBwMp-4 znDE0slcxh6)P*dKdNBmCS~0+-yCO#IQEovF*%^}^y()iw%WyWN3~hDLYwZzM8t18W zLAKhTMGTZ?{ziny$8CJBgeqtVUPcE%vSE$ot2^iUL-Po=j~^iy|9IW~!3 zTD8BnyFVPO-sprs-4h@ZP>9)EBNexPHPLH#|_O3tE*XXXi87SGB=z zLvGB!0%_)?o0?ZUE)%jKyMyqb&~G!7Z0aseCOWW%(F@TYq>)J}E<*z>dDs^pqt zMH$2fM zKx$!iCAcG_RULAwLO>f|>mm9YVyf(C>kpqlzCv}wg%ypKHNyL@;2yq!yO5%B@iP#@ zE)l05Qt}5AaY3TpB1}AT{_uXUlz+vuj=pNt@mGyH`KnQ;Up4Bf)e9brZqyO!L zYu}GI{j{^*zwBThBy)AtYY?Shy}3a7PY9I*GpIFPEJVzLh0{=zOqlxj+Knh#&GW&IRU z4!(GFJ18>-Heb}7ErRFS&MoHJ1c{x%*~tZDvmA zIXbYeSy#b?9XIB1a)VA$ryL-*6lSHSA;Y%ZuvId?hi#(~9#|3{j`q}fkMW5Jq18>D ze~IPrzOpq@@i);srSK{a1(E{O(jD(51mIIJ|3R68)w8c7k~KlTk1SH*!gXD14f~4l zrd$z-W+go5@pm+Z(;#2EO- zJgLleqQ5~mi3-{3=PB!uTvp?=y8Bph2UtK;`UN7Zw=8inq+}l%5Di#95?(RiiNJsq zRCdYH6x`%lGh(I!=^;droy^FHA3H(+R6L=7u)~kuzggufBAG&{QbCtWTWi zJg_Us>iO6)v`_LTXDzH;Xo1~~b*ez+>XcLS&>ig-u!XW=(}e1{##QM8JEsQaHUC1- zm~*=JZ)O-&9b?r$fquKb++L!x%hS96RGE_bhxb3>Z-hHIV2hj&v42G5UEpt9-&8Nr z?FN0OrKR^qTZbBNTVO4TsXkEsO9x!>#Uw8cXu%5>qeDdI14SxNPL|a-2=5&c5Y4@55hdtAyZ`$(e7Y{??qE z77lkI5bLY#x7wo5XYvq}OU}{Ll#ePD^afC0%cspi5zm29sJ((731{OMiJ*`l`Z@DJ z;N}AA&?Q(#efKW96(+9qZTg8@ojRFVg6VOh%;64pB{*H`fix$|0_#fd^AoV8<>Qmf zr%sf4p1>neSIZn0PMPZ-*PyX_XStDo*( zdt}+v1T=(yVEPEPCQWpKqQ9M2Sxd!jeJZaRuK&+& zUTOp%nzE$h14_y{6Qv<6xs|&yC=o~6qfm~_RjNS*jqp3@9P^$Lx)?;+I3xN93qo%V#OB zi&>f3yC2hvOO2qE4-s#CzEl8~{V9kf1#exCo|N^aMv$KiITTc0_kWKr5Gc+H)h{Gf zrg2oZMamvr8iq3MP=R(tj^Y=E2ISICGY7epc037L=4mpTrh%A7V*Y~?(H2-=bl5u@ z+9w#N8PL%*aVS#!zw<6 zX`v{BT?@KyEeW~TtR)oikpr8G{U);yw^PVmq*Md7+P4yl$n-o(wGJGoO&Ej`8W4R~ zs1(b&#f1VDmlEh~wuZIc#n=-}4{9k-8gT-%ROcfU5WR0b`3!KXlv(4r{<@g$6>!)$jNJul=-W{sYGF z4;Dkqzjxi46!`f9R*`O6YcPFPY4RHmVDd{f)8HJjqs%1p$+L^879}pU-;f{OWQFZ) zh3_??%~iCtK3hRi>I5w_H*mDb`+G;)I0)wE>H~oLyXQE+IN!F6IbDgM8b%Tk@(wPc*`~lQxH* z5zY7f>}HIBugQM=!Aa)7|L323hezf<-jUYrOr|zAftQ)t%2k5W*klU9pL_o|#po-G z1iw&-7vdCDY-f$!fzO||moMMFnSMr!e7X;<3T2V78suAZnY~ue;Yy=nfgUyNh}kjh z>?1DF?eDG)<{N3Fol6h8@HWG=)uLFd*6?_g8jE<|A2< zN>~sP!QKEmbiN~XCxbQfQgLATBd??$1+fCITjuB)8P3;Q$L$uuK!bzcAKcXL1$;Wc zI>GF#W%oXyodE^NLomt70IO-h((oxFKc=&58ci!zTx*(O8g9hv9G*Wo^!f;bz+w4* z%(#s@2a4M^ODT!jV8Cv zxi~P#GhxS~Ok20pWK?bW{HYmm;zCdlTAYp9Hx3WGMGZ3B(4t%iz64>IyDE_4lVCh= zjW9+DuZJ)iy{&kvG*m{N1v0f~DaS_Yt((b!an8!->CE z^L9)_Xg#L}P(J|0@NO>2qd;mBaf@N6E*jEwMlR-Y?N|zm1XW243$f5`?I7xKqrytz z_AUgl21Hwuj*0kXy7Fg{dr-qzqa-+bkuyc{Y&DjWQQy)53A`P))9o`zD`i>>zGbm? zjYWU!tvZcX>1yEd@^K}&jzNSjA6ESa8=$o5Q_G8kQv|nq`?8FO@e1ymPY+MABNkhus3G2*mv{Ymc!4jM;ng8j z%i*asDIk)E$ZDF|!l&gBSC`$1k&7au_UKeK#GjF`eXFq^Sf5?y;0`E-fiY^6UreqU z{5?VR?d^nL$D91SjlDSb4-|t<(LxI7Y&KCu*%?fNWNAI;i|FcAt$Urdh_=q2ssiuZ zK(AIgzB!wdL!!cUIEbQHWe3OuR@W<(KwWwMvckyO1J@fDBFlM4^LNFxi9C~M;8Pe) z#f-B{Yq@42p4ELv3NQogwwOI|*HX%EY8$Kcar|fb73y z4ogdjEs9pCL{mdP?5c}`IZ?8oM8S?wi~^Xy&{e*s!taDlXV(>eQ3vv*)({a=aI$suD>xA!>nQ<&nO<{OPhFpLu3@oW-T{JH^jY{BtCJvmz!i#aHlr30!{NjsA{ zn5OSue)@U&;n%y5;}5^Shc_;q#a&?gOfMqYDX}J)rdKMj2vyWyb0*#K0BW?T3LxvTs7i3gZK`dGia zyZhS}yKHkdE{=479UHl6G&)zpSY-@>J_5^6X$|2W{>bdkaKfT(-$o^(IahBF7ebDI z`GaGG)t&*D6RjcPBJH|ZT1xT=RtEJzxV~ihbY+LX=)TqM{ip{xaU)aMT>-rVx+mk2 z_nSpZXjCm?1KK}0N*&SOkA}11dPi&;YVO-fqa{j B`xmaw|g7f-K{Fv}|5Xnn}G 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

    |3qnT{(!f9tt3$(^%^!_ zsho%1&f-0z$6i(qOF@NU#AHTl#Y&{`8bl<(u+bL0=Ah|i0lo)*2#|hD)HtQCoL6i- z+1`MODfSfPbPdmRSGtRN(jX9?sSrSAWA`J0U=yeP^MwWsgSHH+6_Q6 zUu?&U6FkK}amyfsHJmiB*Z&G7F@6xY;6-SA+oj^JNl_c2z_iJv7%*BBib9@Rq<~go zZ3P?2`XJL3WNO5Y>fB)`P?NS@46 z;nb!EOyWUq?}T|g$`5-2CZ7eITk0~XliJ^@=Q<2Mf8C8hlKU!zS%qAlyl7HLc0fX^i~xRG`LqkaI|@XE$8^pY z9ZyN2=<<6QND#r`=`TSj*r+&VdQPuTLOPjP@?xsGk0sBY^ex;t)735Z>kDL#J%jn1 ztIia*`by8#IOu0zV0sYutsAc4z?e;YBj3^tyI}P{&>!(Q!Ji))%Tt>5bA7A$97juV zp8HWQ<%wcAOG|JK2h0r9a?7gPvL`)oS=fA5b1Duv&6*3>wz&UVwDh)EI;Ji?F+(5L zPAwZvHQrm&10226QChruRsBJUSysAeK>HMW5N`7t?pU6itu*!I7dMw%RJYopJO}$G*t#GQAF~HIsxF8DrUy9J2gF0z6uOB+!=}>ISF4AMcSaZ~M*FIYd(Y%JlsHs5 zFsmVK%IDvvEc@xIo{nRbpKTHD&O4cc6V@4TM^t=mGMsMsE|?^jC7S#f-T=Pk?|;Wi zK)0%--U#2h8AXEK(Wk%s^x^Ku-6mY)~`_2H8=D@9-jz8 z0P`dyB9yp$i99VfXT>6{7{*>7%^lD7)dsp<{+|m(UW{{Gl`$?N$>m!+0Ax(XF>FE6 zKRra8RXh+Y_rMoNvqYv2wL1EjI*UV6g<7^I?K$25qTvfGk9Pu_Th!fYh0T1<6;j zvXM97{zR8=u$i?^85*@fnZD3`Puw=^4ecI5JzkjVW)a)i%&;=>gm>)%gNxLCGp5pL znldsP!GDom(<2l}hZlX-SLehE?s;h^pvjUS05%75Zh>7QvoM{f3N}zC#8s&%xnCS5 zy4MF4m*{`Ar~ff0XRU3)9>~kn>!Keo!6m@kzQmbeE)_Y3~pm01uMs%@vY} z!1H(5W2O3~FmFKZEISyRn1z4wO(>|YbsqR|^nZ7|*r8kBi8-KjNgY;5#NYIF@yejt-bP_kL zy8)+U$g-Fn*9tOwG!bNl6mSfV9qSb9T`dP4>cQIaRf1OI)FVVo2=wDMGt?>e9%0#t zz!ydGUw;6(d^q|ooP`4R|NQgFipSn!!Z2c{w60st5?sTd=IaqP#n_+=kAw2f7OlG5 zT;Fk=2vlVPfq9erjxZjG$@;AGk@s|tFyHhO>|RUUoajmm3*>(O9DPAtSWqH;M#M_n zpgmUFY}-T82uF_lec1BmD2v=C071hObV82s^{S@Jw&4^;U2M|T&E>bMO2gmfiu!rB zWoRjuSHPf|Ik`W!?{K?m2RZbK0n!}s3JuDrAJ&ceXh7<0dT#dq@aD(myUxSAP~BqT z*(iEx>u$;`BKEx}>~IJBGK=9FR15~lR~MTRhKZIla`GUqY5)w{5KOOdlI)N(0OYA~ zTj6QjY9HjC10&s7+UDL$s7STfe3if&uf+`AeOi5Z^B(@l|Mv95`_DhU!8se@M19bM z0W$f>vZ4%8&_|8n>&Kq02tV2-F$VvvW`}Z%IXl0EhlI&6CfdbhsIxSp>MNkBX{I0| z;wEZsFg7jXazGt`adcU;BuUxcP#?__R+BXL46!YUdV6^WKeQQskY<9@vX=8&(ZF$1 zZ;3uxA0O9r-VSu#An*w3HbK`5Z+8E){f6cBH}mPQy9Mv~HFv=S=~oPkz5h3!?zb49 zNmmi#I&e55XjBj@5zi*qm&GnZL4b|4#}k6s(eIE9soOO|m&7@QA=Rv65G)|I?g=^R zg2W|*L7u(&D>ixA+NWu^Q5o`Y8HAT#uE_lx1?)=~15mwq z&9oJ37_RyvegSEV7cZXnbTzTe{||F5Yl+%|vf>4KEr9W?C`zgL1AYtW2tgySE?j?tRu` z!H3nl+Bz}zJnoCV&c9v#qPL>o*=F+#zQP{(D?ar<{ZszEhV~d@xD@Jqq0CRlh*RUX zaw9#>vmyYB%~}-4iU`$m=FJTZt|*9>aKzCUybG1F*p$a|e+abhUQc*cL*S5Z=H3vw zQ_&b`8{nd{J3bwe$)H;dlQNu!$1IeH?`U?W^MxzZZ}K(0*`~&VQr&#uWJk_J4Q(6@ zlypL=Gv54(xkDA75tV4h5?V^pI7Py|%d z?Mkl5&|jL4iC$3wTJ*D5$ewm+Yh*f&$)I|t!1RvF*V=L0sN*whE9Z!Yw>5VOXbjJQ zw~z)&xW57A=AUDWybRCF7Ni%86?BtQC`XHhEUEGme{AysTioKjWZ1!zCqMw|p~#6b zlT`hrJ}}VFGNH%0Q}NF?HQqG2Z&MR4S$lj)DUrJcYB!uM{>yR~hu@SLB$%u8A?+%u z4+QHbPZUlGOr(FO%t?b0HXfVilaS+cCT+A%WH~b%bAMl(`m|-Azcpx^MxzeKa@fgn` z%H(TI-z1!gO!dC`igwQYygU!7H|mb{91EUNAX~j-tvs2pG&_k>XNGV6sco=^;ub9!VV)#lejcWIoli_>RV(*C6@|BF1`l zF~<4HoFb*W_wRyr57;dfOwE#hk2@aj03Ml#1bq}=%#dx)b$G@v&7UG-f);uN`Z^8h zc66pX@))IT({`ke<3OT@n}>l#-O8uTjPa@?YCdLhAg+-LmM(9F*rsre3hOSpV_JzK z43&7b@0T9Bb-9HT5ms{Z5{25WydEOEj8fR(t9sqewiagZudMYG+uny>ag*2$(oLUD zIZJi+8eE?hwCcvNW*?ecv@sLXWp~Qtp(HqHf;)f`vxYipcp9;7k|w5zYfe?AxwPS= zWG%y@Kc$OF+DnELC2Y4puhF5qB6c0xeYfEi1%KEBB9PE=MXvxxE|A1w?+Mfg+M1b) zID9svC2|CN8=TCh2%XrJDr!77dRHN(LGua`j7CLJ%%Luu+w;+o(?j<91s-vBX&*(f z)Y&C6sz|$>FKA?32Xo<^|Gb;M`SH!C*KZeZ-l8fn-0wA` zaK0}MC=%fFs>A#Xee&@+aXKt>Wv);vQsS7Au6MU`jTiCt)uBhR%j05|ms$bmUyo9> zdGYmS1RtE6=xlEhi-=h?4;MTG6`AO_JXx?1kx^OWq2SivHZ_Z^WnGg`)mF(n1(u$y zUZWo4bKpGS$Ew6Nd^=W5=pbz9YlsRWI7oxrQa#i!FQ*p-Nb?7}3RbS~t$O6%s(wV! z`Rs#|Jgs0k6dZ%JSOunm>(T`0AS^}BD@IF;$*_1twAxs>9(j+XWzus@(cnno4LyZ2 zfVouk7qJ7uf?MrO#AiWVvD%pjUmqPlj&NY$NH3VdG><})9&3g9HF9DQ86_0SB4S`$XVK8!nnj}w?_@iB}XfhQFIINx8xoLg|kGEeK_hS6y0%N#L970MG^q;;4c z$9a>&a(M(jJnY|v7`m2rx#Wd>Yz}kU%`f!{#Yd>63AHt7YWpVPtP9n^ z$Pztv;U4I7HftsK>dM*?>HjX?DSU{N)GCeF(W#1C^J@T(S3$Bmr(?ocr4p{MIUYOTQBy+mow26H6X+og+Y+yOhlzeFp7(xgSq4@%te=OWR2&ORs}wN|Dv~q=~O^4G`fVi_HutK=lYn z@9Dv$B}FEEirQBzFH0S=4u$Xv^2f(^00I;@{`ewpisF1gKi%XEBez}NBxe}fwWuBC z_5i(u|HD3|=>Qb>#3)Fg0VDVoKEE7Oao^PdJy*niKEL})!#6DqRabr zp_*(lbK(WSYPFczfYh0+M5CZgCrTHl8#sk>?_@bmq%gt$-`*@ycSllU9pSLmyP=O|CKee3W-rsY7rs*3gRDmZ1(ljq7z7k zzsOYi0gxHNp$eT{L4Q=m`@Tf5r-zg_*GOQshPxul!djKgnb?osWyN(veR#Q=x#_g% z&5H@XMR=p*l7!4m0?L8v?@Lq}_Y)bxU5BTKPcH3zalM_LFWwL}hTVO;2Bm)o-^Lfh zx^Tgk@_YvOwRxjmEN2!BJi|A9|tJvm-Fn zdVHa!&+bW3U64%xBKIgZHq}Kf>K3Oa5=+{K3-Q$sPE1Qd1$|+J>$?Jk+ml0uDgaVE z*}0vaa*2e7E6v(QmsdWGJLFQfala}8!jBgXGLTY4~@ zEI9MQsNcZT7PqzbyDliz?}+HFdlM~nI+bxpDz~uzNj*ek0d~mhaj`H?Xp> z(n@t1nZOGNCLA|G+xI3J3p{x@hXwPtq$Kz4odETIyM5699H81cN1i1p4X}BGk)7P zsU|qn)nf)d7VPk6ug;ci0;!K)O$BcWi}8vB-D_0+ngiq_+>p!h-Ll#}xR8OC`1$I^ zV#N84h6YapJ6}D9oe)Z{B;7WWY65G>LTVgdVSbN&Z4z-8s#|L6b0mgIna{Q08&F0> z#Q4NVOXCYe)7he!n9el0qOanypj2dmoAf(`*;J^<=o-%278_zSkfho{Y_Wgx8G}m$ z#ty!VA-k@~9fd-dL`QeKMrDv77nn_37f~ii!UrZA!&O8w}Nzq92oc zc|h#Yfexl7TR{zTmQ?FC!{j#v!X6{-|FYyiPxEF$59$C8$& z#;&O`T8{ju1Cw50ni}yk9*6HLuW0FUc2q!WnLRBY22P6_kRE1>YHVs!W8&+WFz7zc zdANhE^BIv8;hZ>J3@eylQsZ{#G_0Gjr7+6I-wk?p1gMTTImUJAVSv=Rq-{qDk@<@) zc+Jl24s@t*F+%Js<_%3SEDWf)xR|4aGB{|clbEjrBGW4b>i{px`Gzbso>-nSa*E}* zGj0GNQjCc5!H|5rj*)e|hLOt!)~8@R-IdrbYM>-o7s{ajPC6a@#(E?3_$%fCdS`28 zs@y?Mcz`q~_F;PDmn2zKxU@*ho+K-DvomW@kO+|8SP+Jm&oV%#wjE$yHdnv7;1Mm& zhu(fg+&qVw2Dc<HQIjqMzA>bcJPlIXAn?4G zy;MPVVjxh&GX)(nQ%78c`&76hDKL&iRQ7#-x%mTRSCeZ0ukiYbE^|!|brO<am18ZFd}HnPnlD7#;Id|ACPFmiabgttN=aUo_tF-f{K zH2@q(7pRg#bI*JY%fU0cli5aeR&J07EwHpa_=swdv4&nznQj)Bx}JW^tE7|8;P>Hr zXq*k(-3dFx^JmD5x9AVdT)r8+;q!p9Nr-4fK>Q8M*D6Ei@$a4- zA3i#HbbNApJf0jsIyt`k`e<^zh(rzUVBK}Klv=I8^f4~^-gkaU{_S;W4C6TF7G~m96$g3 z`U4!d7N6g~9Thla280)1!j*aaobvyC4blEG(-dQAgJlv?imdy{nt{UJv)#yO-?^tl zZh1wUHV0{N&(?CNn7=$5$>vV)ikAq1p6`%k7b9`^4p4K}gB{irbs*?_J1Z$v#P)i! zRw$Uj3W?DOmj|>nEgvIsf$DyPD#+rG{I}DIBJzP+!M1*XX`y6VhD zm$Y|)y1~vboau7Bu1CC@72WK}oD4E_1y)C3Dhy965LpGP9<0b^gIY4Bt$;L)qO~9g zmZ|p&8D*gWrr}KVR1{s^jK6*O0J-0D84YVzQ#!M!Gq)!^ zJeBNt)HWTXF#$yC0c8vkx&zgA10g^z#AQ(sC5>7EX$9|5y{GTm*GrE`8>OfgoGC4V za7+}nMA8jSkY$ZJfa%>_I=r!X zD;TkzHMV~;1yL!Z3fi zG!!9rn`RT*vpq2>2GO)Z7eQ9%PWOlcDS~l71yV{+oZa))W{Fzuly~M|k56VZZE;I+ zx||*_8V^CSbdb}qE(E0ovmB&!6TU;vh95?TLVk6=rNi;fOxhGh5u4)@_T@4ZoiMDT zpdaH;Ktt%gP&5mUr!A~OE~!2T&om&H1IrD_Q8_ldV)9+Jd>wf6;_dR?>cjgVxo$zD zTp$`+kE3WGf+-w z?GM+v+wVX{>D*23mY0b||2y-Vt{0RF+bVn#6WU;oZEQYGlFl5LNQo|J==c6^PULcm zC<&(L-*Y-zdety4d6bkM=%3#K)$zJn+XI@TrRfxs(T#DA%|73if}7^0g&=`aVD+HW zHNmViJV_@W)tE|n4s}D~Br^zDHoQJ-4O2h{8Jpw@A{|F%;?R(a4b_VLR&G(Iljh!r zX)p&ULpZNs;xiO2&5)5cE!BDxe3MQ}kJb|TEdhDakwMrdTPAxAoS7 zx1GupNEeKJSFRP>*GVhS^h4B|!L>2a&haEe)YU}R4Q1BNBh#0e+`q9@gLW_->R`eR z7((#GhU-xqE?WA6!k(cTOy<=dKQPfD)M8_o9cZ79YgSE74kTBb#&bqT638Wj$Lu^J zqY|#jU7FXz>V7ca9XHt1Iy68D2V^!0F^(_JefgOJHC-IvMuoNS)dH1jqtYcOAjd*dX8oai3>fON8(A(X9)^eRO+{2rmb* zSMWGA{(Q>16(G9PC90OLo8c>ycMH~2^O1YZ)ZBHiwIKB_rbgvlZCZ5)ShQL9q|)XH zPVNWJL83vtV>%Br3ra_>pMleL)~;))J7==Z_|KOh z21@xSq21sLdXT|^#TrPP7C-;+&&Y=Ec^~5%5HmK?BLhbKqIMUb&%JOt#yU}vRpvJ+iOXg7eF zvf6U!WLZGS2{jiFsx-rwwuT`E=FFtNR{cS zI3{IM^LD8~t!ZVwNA;)A2XXKQL))%r%f$l8ZFZw$J7+;9#dA+!_SQ5F zN9v|JciNl)X>y=@hwH$LxsO?H{498ZRDh#^F%N~VI78$rrNP4hA{mX=;bhGj;=CU- z-lhB~ivTq9iBl{VRkoy%`I^1c$!nNuX!_+s+o&&Dqcm79S2=s>U}7+I?|8M7j?T$0!@`xg}U_Z*#j@mDEYTJw#qAQ18&X0Vl4(nn4Yf zDD{D~UC=666_KM5%Hl$i(&ECn)HyoYcW$nh4XELQBTbjBhmn|6LT%0@t1sZ10}mbB zYb@BzYSubQK+=j?&3GuevX!jF-qH@VeXJx7u;R7HLkrUsiAxFRkHqe4@0K`!As(fG zd_Z^AQ7ueQ*QJz9AoNE#sv3|wi{vV`N-bGan)D+-OTKZ<);nMcR zMq7;h;USc_H~C1(LeL~4uf30tY(FZfgLP$MN2|kvMSw;Om@j!8AiG2K&6IQ{+~+<| zevb%hx)|<@{D{q^UxfS4WvH9#E!xB4^Zvwnvu-) z_jSg-#V zxgAOJX|LfqjroKdip(^*=}vrrHd_l*@JdP{z=R3>sL3OAPJ?gqW|Qsd-7q z%lIfCHfHU65PB1w5zwuC_ivx>zJLGu-KY4>j&`NnOCQW_$VA;E200oB6T&7q7Wntk z&cUQ?XXh+-LJ!1Oz(>a)ew&>$C|?0?G+5UjUrP*O>eAgEU@mb71LLf17gcQhX_8>e23R z>$@M%Un3>2v;HP&W3hfl-ds>(D^Enz)aW18`NiwE0F>MQsej+se>mSV?YVcu4Saa# zSq~4=Gk~`&(hEHVYIme`hu_VAy8ir^hogU_Kn*Akb^KldE6n5RA;wrn6<;7T+JS%W z???YW@_e~Iai%^T-mC>C+%>MkOo684Ppnx7n07Z2hY@m+H?oJs7md)krxSl3Z0r#n zyo;iXTo^drGt_X7{1%A>JSGW%QI!8NBNkB3Letz)14~LwV*`Zdo%dNS0% zz;r|6eq95E!@0>7nJ$Y6@?zwh0z@-Q2Bi;T zt4uPcf`n#wKHIL%CZ5FBGtNXgtue5>p=|0?`I~XqGbH2@dqt zi<(BmZ5%2} z_oiW+fg9dSV1XyQ%X3CJ4ehE5)kw79OH*UuHiXp4+*{B; zOB3v2e95_Fd}P;7Bx34iF1KZ^kzs|4;H`^?v6JApE|INfDE>4}>%K0IRY%3xIxzm6PwqP|@*eudm?=FrcE-&@b!y7re6m7?%9D@NjBMAjX z6SRkNFS08P$TutZxdIKZI=^JzfvE-*U4O^!57b=J$Lw~`DfA7;Vst@1kH%z2PEF^> zC&ourc9N;aoLelO<>TzOI664uX5$`IpaTkB!R@=vK@|}UHq$d zwG>vJ^lOcKAb0vuCr9ZGoC#3t(p3YGL1&;)hVgJ1ulO*x9HtHr#8QAf;91WR*VjZs>MqCc=a0nRH<; zb`@WAL6vM8Z=#r8kTyzn$Sr4G<^wa>XYnaHi0#c4!n@&(h;4mCSE}`VKANO-If(C* zaLozVZXqEH8s|q)1pY@;7_5y$L%Ii3Izv=dHigB&co2n1JEPpGp>iQ(UQPk@*msk}3xZPr|H_od$3d0y>oVn)o9@e$2c7x$0^Tt&I9HO?SFP;t zBzjDNcXxIZx(3<|xqf7O@`>~m8)FS6}TN3e!E`Nxrkb(-2>B;lRb%Y=vw^5 z3nz8R^{91lO=Y9ov!uS{DM=S2f^BN0S-^>gz?-@O{K%mc;4#g1BFPqG2Z-CnpX8^1 z$t=!9wtBRgD18HSkx7_KOi#Mb-ee|_sHVpbw=k`N9&Q|!r5Z?lehX9gBBtJ~qe3ru z8Z>+piVY$1^zpb0au#)LzNu^TOH!&Y`l@160Er%0^ae0zhDuA{&S%K5yG5mDCBrzo zq>ImNH=n_~>OdJ8x9%J^V>GXJC{w9Ia zY#JqRvYc_X=oUjiT(RQO&{x_-o6>3Ql8582311DGOYH0}lWzf?6V7ZF2Y<5hRqTfv zg1aBzx+kLuuj6ZUj5cLRu?*O!+99B-qT$BG_%&ULq7iVUA%o-SYspvOVuc6exU%#+ zB;z@gOpo9UccAu4A~}=L(Fbxqd&&qqT~lo&u^ycZ2)0uPFI9t*g>(!AH9!*ci zno2-uegyhyH`qZ?Gc61-m%U9Vk{G%Z-d^F3}I@aR%Y-;lnOT zwPGidUlit(x=PFS^fEMMtcC;>Rj}a&Y*5n>8z_O;PVo&ks9tr4y+~1Bz4XS}V{hE| zD@58CcUCUS03*5~Jw>axWf2!*XkA8VTY2IU?a|VWRCR`P7ws0dzD>RG2CS8Zy=#rb zwk4|hk`vQIBc|@;DGRMT{*#y*kL31X*BsnqF}5C=^h^c?a%V+#26-+gMxs6Tb515S zDjiSZ18i|(_|f6pvXR+yX&x+XL|OaUCe=w1C$rm$mIAejQ1~-PCkZr((kO)TBAR-?_NqrlcE6^D>FwGj5qT&w4ss9n6hvH)BV`Wl8^R)F3`=eG zF-J2n3ovFvJTQZTj3K>uSaUMscJnjIP-ds%5=Dg#5K#mdhz<*4{z^2NGa52 zVRcA8p^`O=^UAuJ@Q<-svzm$31uK9WD{^M?%dTg1M_yelq4Zd7AWwC!;$l6=aK<$U zS)BcLBDz504G}sHsnpbby1s#6T*} zMoE%jC$CBKYA#czc@@+oz5ZSPw9dQpizv9cOzVPFgf1#G!P;Cv>fya))(T()#1YAS zFtykKO+FgrFao4kr8CzO5kjNaH+oY90?{L zT66rolUDq z`yp7)6*y5h2$|ztnojw}Bjf&LZQFbcg?#}?Q48VeJSDaqKib}x*%II;wdKO*aZp(h zAbo?$w=jaQOzG%)8S^VAk65*ku9u7pIF##cy2$4E;pksR>7lyTd-Ox(Pv~?q${Tti zz90Kar@k^I-As>GmXVMKxCsh+qFvF(69Ww0Zye!}oWfsYl{l<}a{| z+&2K%4BI@LIea99S*2OO$*eA}c=Lv!B=E9|%O&g_ZWxFd$72M5p0n0UIb zXlb-*oh5U)nwr`!SGJpaJMap#-(L9Dh-QxseYok=_hZ~(?}k+{3oi6~19n|r)n^8( zj)9t!NU5u`Fq$B9L5WmP(emY_-xmYOA-e7sA6|d|>CJoQG9S8ZQ)*?D45e%t4L`7q z?ct+$7g(WM+!N+Sc}`_h@uNh7J<~G7>$=U)Q7`Ku$PWTczZKGl#9Jm zH&E%_EfRT8{YZkUgXU!S4o{xA0*pWHf<8PnsIyx{#v8`dfVf~ys>&Eyvob{5V4Kw( z1~&PhTr8hnj1C%tPJJ#&bxlif)NoB*nC3t$PExeoOuC1D3sZM3#RfJ)6t-|pW3=>b zgm0ICv(&P_jj@{P5H$)3x35w`b)RsnK6)uk9;RA6M}*V?|48PtAJ|wGh?Emf5iGs? z0)?V93aWZF3Yo*qoCG$Ps^H96?&+dY7%EQ@Fg@=Xa$A_XYo=T;iTx$Q#<}36hFM-$ zX`~=Zgq5MIX>DP8wwoVN8C1uzZK09u5A8MER+h)UG4@fbsjPa)^w!;OEle-0x=swA z9^!Gt%|?4cZUQ-~S`gpWzTn2;C$Qe6X^UuISIJIHCu@8YY>YT{Qvyctw4Ql!bU>lk zzBzKsjP$^02}kvP7N&u(ALpM|@WMF}o-&ET*o;TIA4xc{XQu2w zCTqB+@Whm6(bDjp+$clx_^5F!>VWJcNR4XZxXGz|=OS%=3IsEeG;$X)FZAELm*{rE z3cR#Z8LL5a)hTr6$W!^${zQEj7;36>6c|brRHI!lYHxrCuNU=EoJ*>dXLn~fwElXx zzWdAjPj@e0|M~9oPZkhUfk>yB!59FYVibu2uEgEHKmO_chfgCWyf(H$!V{}`bZoa@ zj2Z*(VkNG_j20<0(U~e4YS6De z#gj&}Jal3EXySKHNYC_f@{E(;n(uMXgVO=l9bWto22T0{Q}?=CX^3=zTW{7ms+4Is zC5;Ax>7pi@dDC#sJs$lURhNM4x@AZ!jZQW+jylzQX5O5HujQL)T>^~eqS%fi$BcA! zG0F1e7Wt_Q@jES?4(>GTQT=ITtORvqF5KyNx&YV1&?;!xw+JDDMq@;!L-%4j?=~;L zp+Rg^k2k-fl@&wlc0TvNCkJk)Dl_g~TrQ^H7OjSBgL+`CmQ95+*gH#_lh|8o`vCwZ zLPw|-kFyS=x_Npq@i`15s4?dU>9;n#Ii1uFagkY~K$qff(nrH$dK+2t=Dgg@ZGg@+ zfB+cDBGkUY)@)9jL36yHJ=q)|a#GiAMccCiHL|iZ={NvWSG!@lP`iaZHzX%UO*{Rq z=e5j8!$2bsUa`PMx@ZYgK)>MR#Udb#)+qFA z^~?2(xn%|}@jpTV`m1y%fU7gmDa}Kw%#Ld7RZIYX&uvRPgFMp!DgKeb$HnFg^=OAX zG+*mZ0RHX9S&;w3qt|dYU6u4S5pCbV^bLNjnx}2y)VzNOs2fNX>Ea&pe)y;q@d)3o z6$!^2XArPZ;`g;L_{R~Ab7IP)7Oa=?^gD%=HJeX?7xS6t-t*ccp3Nm%LLqy#IXE^F zc*gx?ir@U($L*W%|BOV&mrE2Wc{YEk@gn>|OmnU9>qJ9`0*-(Jz*6QKV8{tNx9|7L z0%cA^%gyky0@GI}UJU+rP$$7N696+2aaQE>dv#-~ooMKD)2+tFg%@JPenH1YWM7g4KUo)CSJD@`=#Bo4Gyu(J#JdOqi3E~>IhtBJlG<>wP|im;pjfM^9Z>Uh zr3_MmklR=5=e*K!wyZFHu}_@xwsk3T3$xYr!yu_;i}zO?6b4gwKkOOEWb&gZ(@_xE z))8|BO1wO~Jg5h+_qJP6e1Rh9SLtAG;MjPV>fuDxBM>c!1=wO1ZgKGS(c_0Tk3ROx_B=Tq zvMK!HDwo`;1!Fp?94GAJhq#urWZOhyf%S5A(M^B?1rk!Waje2m)Kw}fkHwUat zS*I>rWn>2Et0{w0?R|T>S|ahNlSkQk{p^7Jt4watk(054U_(#;>DAE=h41Gyw!)Dm z=hup!Sk1iU~<^f^ts0aOk$Avk0?0AI3dQb|9H-}*+a zx_f0>j@=H0UR0nyRU!vZ{PW6>jXy(UM9$TOsDg+C7q!G|#>rF7IDqB>(#v=%MfM5k zL)z{gU`0QtwT<7lhMfaJyIG+II+P(KF7^D2e5`tu!Bk=1Yhju~j1!1lb~!pI$Mp|^ z4ZUIbPiOh49`nG-7A7U0r{sbW9`YH}vpr@GB84!ZE`nvFp)i1XrVIt~7t{o(MN5Fm z;N>?J8BI5Kg1ODB>G&Oky(Zu!T(RTzQ`ai0YDEwak#@t_)WJTQO2;G|cGJ}b%hwCr zyeUK`l5e4~ny=*!eRe2RPgia>V~e$95HZB74gE{2E~`G0a3(-D0S%a1{l3%Q=t9ei zFC6_MoVGMIOv!MN?UYkIz1~7LsR4nn7I^d7{M88JF7&66TVrehzPg4A8`GJ%)8aEy z(t7u6e5XDdsHp%@sSZaI|GFZ+UeI8{a+UO^&`b^;mM5onShDEAY>o4KHmW~uVSqGp z>9r&`q#8^RD*m);pj+j4Qcbr2>8yyUjA9!DoPcA=F&bzLXe0^lk!(rifNIpum7-Go4;O$IlBQLj;;Ma0@~|8oloSA-Dm4kIBN@)UJoSbwjEXU>AvzxtML)m*K;#IX;=9Zz3b z3XkRW;${b*Z?FhTUd^cw<8g@1!OJ>hV!W)fB{EO^D;Ao>>4ezDEO-+kEcW(hI)-8z zOK($b!-0l}nSJfD{27H1US|WLXX>xBzb-qB?+0qJFZMa!clJ312Dj024<)i==XJn@ ze?c80Z-?F#$p;W`4GKnOatt9L3v<~SE{0xUdV`B9jKCO2W3-B?W|SOi@Y`+Ne5(@#mW@4)KuoaORw$ zE)bNBi{;ZK?S-24`sN#CW`-~<#bp?PRDtiH*n?!$Os%hRF1oTZ?$9^d>fzWzf}3n1 z({(eG3mdx&9w0r0{2jIx>OR1~!%=iXo3}rON{I-xa%Xa>gzAANyU`wnB(a4>B>=9= zvI5hNd@;BHLtTh?ZtB~^HJVetIf~_cYcvH!>>^Ro%rIUqDhxrWc&d-dB_t8+*ilI$ zSZrW(xQOf`j2>fS=~`zSkiM1M@C;0WwrN;^T8%I|X~I`J zAiYiRH;QecsohmCu-e`2!5*p*E$sm^K&$m7^1rSx#rs5~?vR8=qXQZWm;{9i!}Tj5 zRTvyg=$%oSJ?ksoS1d0GM7PSRj0dV%`V}0>u|ZhGl&(z&-CC#W$?~TCGN(Kzc{i9b zZg_fXL@DJYeqidU9NLh10)J#^O58Fo2O2a4HC31V#tKq^nqwg&B=~P(u-%P5swm*- z`#-(@(1g@wOIAWtD9Z2<2zY#T;?G?12>XniaY*T=*iQVH)k734fQ_J&nB2?ea!%{6 z$@8O@$Cr59bnwqKd-BzCQ_o%ZvB5QspGCmWE(^+%WSEw0y!(a@TbF+{){x2=1%98ev;`QZPr@;+eV0wUUPgp;>N4bjGQr`pW zmS$_l5>iSd0L-{5jwr$JX`Q;$(8QZV+BmY2MN@mOdGhI~ZK{V9+)#wDJUz2VG4=v+ z*vJs&>UanbBLC$VQVceiCv zCih4iO^46b#xRL~rqCf8y>?weu|Q+qt+7|5bdcN*{BMbNPIKFX#|qw1ZKa+I~<` zilCdTb8Q}cHZ0eeUg70bXv#jh(niO4GrxX1Mfb>WVuY$^6&?bY!)UWX3YM0*#5pBU z#h+qgZ+km_bK{sJ_d}Trxe?$_atpPq4G1=`M5c?EWfPE5uU52lIReifcy9&Pac;&C zvp3U0`c+`HyII|EoD4j^z|>ttw0dw*Aya7-$a|#k999{br&NM*;TZSVW=I~@184wR zgB-3<qR=OE$;}3yBuz^%sq=67Ase@<9x%U1B0!f; z32|NY63OSzyIhg?+2dZ(2WrgbqrQZXI*NYhBQT^`mi!g4jA=XD0!z0~yHo2`9Q2|qwJs$NhX~7E$&`NehhW#+2J}X;?@N$Ka?$;tSf(1V4Wq~s$m@U*7EwR z@{2|(IQjnY{{I~@QsIc%>_7eGrw?~Of|=*6e*FhJ@|GlEsBQHh?ac)QyR?=;j=wIC zXJEPQ_vyiSi@gpptsX-DncFDL;R`5+7F`mT-1#of;ebhhGj88AwQ&04o{l%4@YV#X zV4|WWOi^GEYfvJNsT8TiJR;~8=2;c5M6`}V?a+w;<ZR@64AqIvzhA2>)!d;z ztxC(bIpidA7PFUI2;BIqgt?FcNBk`VtwoZ6)pa#J4#ZCnvEc?(^O{%cJ9#q^(Eji; zPC+Aju#irtV~B_CsoDW*N{!osGCYdc@~5UJkp<%na9F_f$7SVt5ep=X^JznQJ0QJh zw|fcwEvPOHeDKD9kxfd16Lb$lBLePd)wm~Ott1=Zd4 znD+?P5#a6i!`*I&oxJ-S1>xPN-JcwbT+t%mFDPf2vc)yW_sOu*9``zkftO?n^M(%d zXgF5h+Vs>a97I%Prrf8I>;ttp*eCNfR258JB^^2$`rURy1^5jmG!zt|T;6ty4o*hg zhAsIWyf8BBvFCB3wLCTmf)-;eu?Luqjb#K_umVDA*)m(Da1(!Fh36T(0qnO zA3?Q?&k#M<18wjS{DeL$-92g^+`{bCb4{?TsHNxAfz6tDmn(Au?_SWCXoizn*E31v zE9%F9C8fH9AVlE_-veB|{8#*4Gw(1jVS#FtQIiI?Ue?l($SiKJEqC4=HD%>1%=e_7 zxu=sJp!M-wPp&zLmPRW$6dMx#2N|XcG-R2PGp-RxJiE^A8uTbu0JSo+`(0_7NiT)4JKTzo}PiiT*HEg^eGX4f{U~_=xQfOg@GtGHYhou!+Hiw@ZjhYxQq`w z8mT+BA_)FlA8R@5_Hon{h8oxd`61!~s~5MOcV~!RTbE`1vfH_ZsXGx34@M9wtGn{l zl&P%hXJj2PVNTi{vlajqfJz)FCT=LHRu^PcCGV-UGn?JVQSjWNqv_dtdV%8-sjV(< zug;Nu*y$)`6ITpUwM+i(f}GuKet!FO{=y|D*LC%wdV?NiWUkQ@54t=cuPOK(+H@ql z4ECu{bvw)+9^R89xi}dzGZeTBlf5I9%&edqW|UPa{&ZQ5SAiNqyL2vxm!&gN+}J4) zqWR6r9SxvEMq@e0%$xTghzI7A8fsI9N(V+22()6*11tTO*5jNR~+PaIUTYnka*dH{2ikD~|c+suKxp~Y95A&otfS6@r1I>5S4z7oZ; zP2;r(QaK2r4D5{kh;8S>YY*I+de$uJ9usw83|hzGtU&h$eRhGVyK%cI#h{DD>52%9 zZpD!#A>Q|OOr)>GpjorP>fn5f9FO$OXeBbX*vs;9H9JsSOP9;sXcjF!Q%nVw28aN2 z^?`n2K-h!+4YkOJ4J)L(B`*@b7tn`P-O21$HVtR*PCw}n` z7r!b4<|Qg{{LtKu^I0V;%ng+uUzUc7b`N9t=(+Qi6bJI**}PP}zRq1$z9R;NI^Xa? zN>W<~Q|Cv~%V=pTbe4O(Vwdc+FrkX()|Go6?GmlBtV#& zt4(*U%iR^k79MzC>Ir*+`|91_6B;5MvSD+jYy-l%>HEs@Am46Gs=*o+kqP=Y>>-z@ z8ez(WEdxGSeSZ5^QzLKC`78KXYu9n+lb9`WYzf~3ShvM60BpPfOxO3=N{J!^J#a7h z60KCt8;YO-Un)DQnD$a-vi!6vZ6Q}(Gt%rwmM&Gh;{uuDE1- z#wVBo%Lz+%;yLQ`LHNO0P4g<5bgv&Whe{0SN*zGP>I38BYnhR#tgZ}+UV4P#%u?Vf z0U`CE*Ed2;_%xETScy&lXVkkQ1fn&In+Fl72ySj#f^(AU8RJI^Ez*3P)wg1(ukQz% zKjpl31%b5W(ilT8ZGhvmDEpI*QF{tlk&>+$bLkizb-6T2RNrBQMz zR&%5s+*=L8ZNZpdR${j~(npgaqEhKf>1urQcr;!MtC(u4(KxZ9RTgRC#y)tCwr7kn zMDAax6UE|GBfcNo5K1;3tL>%wXtxUvKe_@nR`a+$-8D49WQPh;Ps1Rv!tUcG44tp) z1r30`pmu?KXilkyEBG!N?+z2lNO%cZcTWXjE2VjI*R=qR<(SGvZRFPjGWrWD)xe<+ zzGo^%8+SDcRZkHUp&V9CHJslBHYaKD%6J z_43g*lvR!1f)cOS5hPHHAnt{U4R&X+L@>9iafiC3w(VTAm^C@2OiBaeV4py*hi-C9 zc?HB(MaxSN4^RC*B+^y(AxHS^bQHTS-07~In8G}ck2cQ~k>+r$ca1$=L_njc4Am!6 zLGO;QYAZh#++S-CxI@65>2?LL%jzEpo0toOk39>srrxS(O((r@5>9;rYUGf-SZPa*3gGA7dEin;Kkq~#-ABrtE#pf{~bR6<4@8G#CkjjPAmD)vjq;V_;yFnuK{ z1jCdc(Uf0)_-(XZRI6)&mLGb8MqnbbTM%eK;B#f1Ma>H&j-={xcdit5hwj+$cuK#u zB;6|Ui{^(XAs!TGxE#9{-^u<{imei7g1AJC+^0c{MhZVI0YD&$e|f~DrR(~J2g z)kV#hZ7bV?#X%A+EsU=+PUGh_#NOwxfz@doL-=^MfG0TX9U4_BO$#zC zdJ8iQ)TRbwnr`?*E8_C78*+KrSs(;!mj$Bd2^WX|S$w|O3gsqb{yXL-#G*=7Tp@n- z0d$>L2&zAtFnmrnB2fbwPuK*ZA@?_!@-NdU_o{?Cr*Y#+m-U?-KxAzq4H9#aFQ`}O z9QQlKaKf36DXX|=nR<7HS)siVcKK7A_*6nzAMLjpx~y=E;1?kYs7t1je18 zO`mOO?j)p!ote5RwbPd&wMdbmOt%1TE{uo#w0?)Y^PqL=s&&%76jV5yju2mmGAn`S zwYX&I;hT+AV>kZzX(zWj=(gE}u|rLLYe8XCJk+MXv{>7rX@?A{9iCLRGQ=CG?k_L> z;D&=}>2apBxk5w>K6U#3FMs*`={3{kO@Dg(X@osD2*4qRMVSoit~(I(be7cJjS(}2 zI>-(I?g<)6Lyv8ZAzwVr&a_!h> zVmiqk(QlQ0{KbFz^E>yTWNW|{!~!gkt{!}C{r2s5ufPAZP9N*h2jVL>r~@}W%G5l~ejjL)@5b0iVvWKk-1T1$gKc<~vWF7~7R5ZI>O zy~9U(MYxLdqqqIZ3ZxHBneK_e&q3+E0_)d@rOo+nRYx?U{B+B;f!CtHs1g?n!3C;E zFhFF<_+UD#3N@F{Z2E44d_!{VMaumKiw(Hd}h^HR9wzw4fH zG?=uWPiJ$e^Y_F@_FxZ;&vMJI*Ac@<9Kq8jlwk(kQw#e@8{W7_<$b!r>5I>XMct(! z&-gbUbS1Uz0+?osGV5%CQbl9%gKiw4CPgyq5MUy8DwT0(FK3&lNO9F1Dx}*9sCQ_` znR(F#7jM*gjV%{-8*5vAxW)ZmctS@mP@ z7~^2t15q{0o~JYjrM-Riu&q6lh?(i6ph#)L?dsKvaJ~yd=fa(n zw0vz0n%OBP?oJmiJ&V+`s~Egk8#BvLi1}3$7jbIGm)W5w#XE_I;zYJ0gTwop_}k?E zC9cC609tHFe0(<@MIO5l)dGdr+=xvG+c-)?LP(#7$Dihz+PUy$1nnj##p@aLUa((Qlj7b%B`K~Csz`A?D*43Ibr|D1k{R0~8Vz!rawSc+ z_DSz0>S$`A;-2?RA*TQ%N?=>EJMLrLPgfGhAN}FBG)scWx zgc^L{*-9GP^YamYzqmn`^K+Brq~|?$8PfH<~tiTDww35H&1?d^tB{EaQWEuTwD-q6CE$}X2e?uSuxkOMu$ z(|mKY0Aa%41rF|lp+%uhg4*e#&kzP$Z)`-0)RhjlI;_b<_C+37`PTIbTZf9Y_?!X#487XgPd zCOMgsFo}hq5Cj1Z_-YOhukHHgl69tf8I(8)dB#J&<)y8R+a6vSHwhv2@hIsl*aGbyl#ha0`06xY|Hya0}|;_ylBr zh(8$(UDRy2KydAv3cPW0e;I1_z}9yr$NbvpF!Ahx?`ZhHz=UYKv74#UGJKlOkJd#-YC+mv??B!RX4I#n(9Gy=Yrho z{M};u9)WtC2j=>%`Y+jKc5vI;UBW=)UX6R<_QjF6(21QZJKa1lOG>rVafVzbkEtd~?b>NJ<1UJ*aq@|)Ge@aQYJXJc7bcIPOafn+23(UuI890&xMMSr~(!q&Q@n~trovvFF{z>!29nkPnhHi-BaN-am ztFKW^vc#$`g?}v!C(lL1S^I%uDjrUE3E?yxi~ZAr{M$`f4Cius*zi9_2)lo|iSHBl zs*RTBKt_28s0;+@a`P?B<^V{F;_Q~8hE>{e)sFnY5%{WHtsXa%*#YT6T13-g?GaN+ zJl#E#ouvm_Ea%BJg)M!AUho_^y?LG@ox*>BTv!3><)n%;1ZOb`)Ya?%`ThgBz(7jB zZMaVzyJ@Hg#~z^C*|W6`ZqEX%-JSJx@4jg1Q*IOBG6=b|&Anrdx%E&Ia|M*bU zhJFE8FBZ_yKwIow1!&20x`OSqOZ0)b11oW_wqOw6XfH;MDg%T-nsDT}ULB2&%s~aI z&ZY3o@eqMSMxOkvm4G2gtwuGL^9N#B>11sGnfJAhokN<{>ahbQ75w`>l&+jjolaVp zP)r^{$I4{LM0@UgPOq|1n^u4`tk`EyX!}p1_Njxk$P{&L8hg^4-jiXX7Hiht8w!JH zyxxzT;uLoL)%XZ&#)6qn6^+*#|L*v3Jb7|@{OI^-a(p^|Jihz-_+;^bvKaTgWsA!R z)WI>p7<+X#$uxabaj^?B(Z{0MDLOD@(W$rZRoJMWyMhhUGcVHA8M@L`+Z;&&Co8#;i*gLXo%Jv; z%5f+%$c7TLSU#+No%_=*V8$Wc18eI`a^z^ib1Ol$9(d_){uFoITs@U*QZ)3ry2Hp{ zqv&m>sk`(YpkAW~*+B%mPSdI{GE3Fq85STtj6}gQ=!MQ(bklIZ1Jn&>cZC>O5tu{R z7TbfFc~jdLd$m4;Z4x_lHeVn+Gi^)PP#r+Qq)#vxlg7BN>oD2s#Blv;Y1U8mQ+DuM z3#`tZD-7MD7cD)mo?o6&g5Di?J&!UC#>NtyU9<{3f|Ru=(GV2cJyuH=Te2H99&%YU zN3IrKwMBki~ZwlLptL zLow!BC^%ZUf2<-)Nt4@};8kjG2qUc&62u;_lP=nP@pgv9a z&i7FD;T}Y>DfCBD*1IhUD#rdr98Nf^7!U*(HmE@ddTegbN3PvUYf%f3fwN%4-fL-a*TF+glmQG!i@c||bC(Zb{Gwe8dvQx0^RRlj1F}8u zDGR&9)GjG74bv1u5mo2xXvvgrc8w!HX`&@!DOR~F*_@c|AQ=-HhD4i(M^xw>V6!hy zrfzE;?xV399X2OedVI*G9(J$k1nw{`k59iEg6vvcC6u)*-(e4vw>+MiCHI<#>)?XQ$Iqi?WQ+c3>%z( zE~m)Bt?XTPexSk`bQ*{d?}Hvp-+#E9-F^4@M~K6$o%jOo^a>`_o_rF@2UpZ*1Psm$ zC$;VV$h|#iZLUC#RonPEi~*2%A)=c)%32lc-C7WIpfqa_b4ZKg4bc)@`NVE6XH>{7 z{9mFPP{L*dZ-ar^CpgX@&67bi&cv@w+zrzh8@QR_RzrV=1FWvju<<<0j{Gb|oN4`~ zM-Xy2<_uU}SecX7`Ru5Yv6;p2)qw1*W+xj|A!Xq1h&#mJ7mzwr{))&?DE)B_!IQzr zgPkiozTnu$fQ3jRu84-6j}2Roh1WE52){(uV9OT1Fa;cjB|G6CSds* z&jTHsn_&tp&SyDqKo>60z70gAcE@-LI<$5C*^t*B=5H$3m}&C9(_~K%smQ=&%ke>u zbSU~=8u(ts?twimc@e9as)0nL^EpLS92*bFM(|}s`pSu_Sy@pQd4TB)MeRMQ z8yTNk+KVPfmUAdez88dpX|q{_%YE|+5fI(X4{M?`-WcE!doflW?es^QVfkLtxy+=@j=)O;%z# zxv_D*h_T$-C6Q)QXkv4V^jNiNpH{hKQr+ar47c?}O9Y%Q*2rW<|L-=MMDlfVF`uv8 z!(2aprGq(A0h@REFZ1ZOSA4;t8**6YqI(|RoK9ALyRp0(INQ;>xfac#;plSSFG@ms zRAC|zB2i)69?XGOf#rs^B}a#!aU8I;zM1sI2PU}P)8|4i&ekZ>ij9K92;8BON>kq1 z+1u4B6que!A9D!qCqkyaMWF+7$_bAUP|m$MBokQg2xT=MU!&(cifn`BA>He-=z@Bs zoi_BW=%7(j?l84}hw-mksSS)GD4j6KgB6&D!~J5_T9v8@(}{iV+UU`5-u}kt1kaOx zf6%g@fO@7x8rJIAbQyyTQCGt&_xBz(t;$)I^z<&1Z_O37w9IcJ64*C|eWa_YtV31c z7$yZjIw-4FpoWUPLpv1&8A&vzRAJ+lGfPrE7PbzFFOY}^Hy6oP)>UE&yVvgS-TSfLk4j#5%bwEwCLx8@BjRxRo~vQSEE~&ODbI-=!VM6b z=`aaNC7{nBeTN^h9M0Td9ppXy)$NHDM{EqSp>nu(TL?t1?dUX<>X9BOHXdXaO9+>f z#hCMx0;+H#JkZMWxrx%XL#+(tPEkN{$eS9KioK<+rNuLJ5iyq0GI+*DaC2oK@C7rI zgs4C~mW*mJrYV`T`%yaI44MqbS0t)YAf0m7%27L!bO>V)_V5j6it?)T9Rq*2K;{=) z#L$42bCVH2lE3NC#SMfr2~G{_p!>(3xGN{;9SxGZoVg!#ENQmi6Ht50mRe-@?jE82 zzr6Zz=c}xXP?azf1x#vK-5~HnaL`F*tx`$iIhz%U*Yw&wOtP+}rEzGR?LoXz#3DOUMe~1l8Qp!Ks)D#_jS$KZW z_ad7fC{R6>+*FT2gfW_X(27>Jcrdshgo`g-{hZ34mg_kv78_5kV7LLocg5iq-P<4u z>f0AMD@;R+f27AKFW7MpRfAl*!0DO{8vV>3ta=EtlN*Xj43Pz9tZ4ewN?%LLr)Y)+QhYP*I_9%b zFF1;G-aJ~mo9?&>NJcrn$zpZWXuTYR4hq-}V3sJ$frdOSW~^{MFH~KZsty3rmIIK05B>y@Xzl0KEz6p%$qY~fc$jFbt&fz4EUNnA z%!AtefT{Z^XQ7iY>pXL| zkm%LYm$aGvLH>5;FKL5gche#;8u@85pI{;b9t@4Q!+H@?hNtEZ7zl$?4OQ=nrRwkS zi2R%mCR_()>>_ig3sybT_sU3UW7sQ}MA@Vxev4?zvdaoCpY?G#{Lz&S-YaIGuk#h+Ur0jESRZ3ytNB7Q6ed#B`Z>P zZU-51(T3Vjl?5NXzotf2T2tKrJ_iWwF&4Y1z!)-5K)I9qPkB!d?o9F~`yJG{FI&(Q zY6Ha?9OzV^T;2_5$oPs_Dj-k$GjddBQYflu>+D8LE2k@_mQFJlxSKd2K-#)~^hqIm z84*KLjup8lN-y{mi8R#}jlf+2lNywoB<3&+55U3|u+J^f5q>hYh7@C*j$!`<%wORl z6W9>-4f@0k)D1i<jz0 zt?vtIRTT)Woe$?)g+hbfH*Y;tyFSoC!^)l%bkdwGH@5e6mca!O#Zi5A^$HoEKJ1#i z|NiOj-Tj+aZ+Dx!*LQCa#kjD{0d=PWYNFWRa98vG(}&l0yX}WJKm7z1G&x@79&~w~ zX`?S@ZtHMowe~b&%wA)lGxIRsFkF)^iW`SX`eyixdcksVyCX zsdxfgS^$Lm>H22TVui-s9d&ih-7`F%B3fDpkzzM0yXD!f$|K`Ayi#yvZc9zuT#%oQ zny18$$NLjIn!l7%WkK{Xw4Hn^ESe&AXteAtIHy-&6K|j0EbOi#j7w}rXrPQ~xrE0E z4HP?gY)NKI(bOZ0=d*frzjs7CrX7CiM8%1H7*kWz214r|z7&dI*(ea5S6v{jq@2@c zi3XWt>V>=cLLML{$KtG=+ow|N$-~kJNg(m2N({F7^!^@(XGjJt9synzJ^L@g)Lk0_ z{_+rMH%I1X5G~CC=zEp!4o;uUb9Y&Wc4wp&`l;J@V8iHX*TrjP7mYv%l-{*v!FP>&I1j*WnH3)~hjstHZBnY2bJ zm4XhfkgSpjE@&2`TL*G`$u9(Bj?AYXSkk*7=5$>yhY_}_B4shuCzB9HFt z;q^INfe&*0aNm3`quAwEhg}AwXII4v!5qH-qUGm^gQ*NPHUu#9&EgtW zZKoIXNe(x2QnYWrB@z2t8URtaRK?S(f2go8d?jhoE$I~Ls-+ZmpeDnGz6S}tnB#5_ zi8~1~9M^cl2oYJ@P*b)gj~b@IWPY4D#JTa(v8K0!e+T2t7+^Mgu?D+z@Xc^^{P@v# z@IPL$el5)7>$8_EP9uG0&vn!PUr*s-hQDm;P@kdJ{wJ_rn(_*tfQp~JVBW~qCFEPt zG`T_%$Mzh#Rp7#c`#m9ml$qJh_Q)a#n;u77%hi#)7EZV+qsJ(l%S;mtCJsL&@X`ob zUep#$+u{bbXHkuL=0P+0dUH{if(~Dg85k>gHrS_-`Q=fAQD12>v>T$K7g1RuXUjwm zEj+|Cad|^sZNuSM>PO+-<2%v(dpL19PPvMutU+3<3D|qMB4_`dxR8B!covm8?)KGR z?>_xfCFbRIB+#xQP6;AlY7hbv>5XOPsAz$Qq&Q^|qlG!Moav|q#Og_XNz=7K!qeY; z8xP^q#vp+jWZy|1*>gym?En^lBxKku4||!s1k-b(tdp`4AwK*13YvclFyWbyP0VVp znrF7M8t*J~aY(cVG5nbzK553`dW>xvpG)`PdV09~4Acmrd!9{n@}Si7IF=Lg?^wpd zQS79bqL&?PM9pwRcaHv7XQ03OyqWHv14kof#49*?avkVEO9g2xkp-Me8EPZs(oGjg z<%N9t@Upv}E!DNYWFxaAVug7nKY=^f?jv6vd!c6^2r%7(q|0 z3N&lF8Fg8!#C#14hqVzDwb$4YZu;P%Cj%L#wey$j*1EN!d5e04-#}+3!u_!5g?HXH zgI1GGA-m?4*E4pNn|95s*xeH2sS}4( z%SrJF{Qz)2)L|X#b_c8%Cml8Sb`D%My|qyq5IBXeYW+fw5l*FaA~Xq6B4J0bSi|&6 zV(u&hRT>}*E#M475c1qSd~FfnF?aXG)>UqWM>*83ZIvG!m`$D=z=WoaxmZY&v2wmh z91izmX_8@P&(}6L=3F;7V@H1;#RStQ+L=iv8*)^^V_hI=udB{njA`3%x=dNz;Ag91 z;e5-c=Nk`~9Te=G?d9ThA_C#G&QlH3hiMO(#jLZ`HB8;xp)m0RN9iCcogTWcBUUGM zwR=bObVx5eTO#rhachu#R@cB*&9mM0`*(MGRUZt&e@-TB5vxqInWG0gF%qMZxKIIdG^Msb(F*ys~;6M?$O8K@-0u)f6ox_DVf{gGOerd`sCWWT9S<eCb!g5F z8|b2Zr(pVr-W=>Z=J^4a>OQdPmR-~Ad_6F*y@41WV@i_})a=(djKJp_4kOIaI0Lrw zny=7huFsZA#zj{h{MKGe2psmgBEyIdhY)*xUH1q%IPpk_*_E0#th3o`CAI1xRCY+8 zUw(ZT_^5RNPIWL`;29P|jVC9}N2q{F;2DB~z)jM0C#r##g%QzKa7R2JtbMBeplBhi zI`TUsYyO5_#`n9j0<~!B9 zn%ypPu`4vRc+B|;OD}x9X0z#m{QB+K>I{_K{m05d_x1lM2k!FLiMO*`fA(X zlh3fptdvTJ)T71^9h+#RtD1MAe9!*X)@al)`wU5At{vn9sM-$0K?PHHI-y7sygh?h zI-jBPhRXIfj7=XTC~}O$y`l1}MRLFHS0Pk$Is&=Ati3RM7U{#PO*M!h=GUf|-*t z#gUiA=y4`stNTI#aZeA!R-U@QR|Ak>dBRLGi&6m5(u8?r8AvT`i1p%Dp!_gbOPFe; za}wO<Z)VxQ&AE+$1Os4!$H;3d{FN|D$zCcZ)wc<`OSUkMe1HK=O-{eu0ci)&$8&LSXiS> zgM#f{swLN&3@g9jekUbzET?6144u~58lDy&ew4}m*OB9(<6^eFQUo7yvc|?LPmy4 zASGvV)KEcG%7Ef>JWqrcd{$Y$`O?cbg9K-Y z{2j6EOz(kw9(f0zKn-ERkLA8DSWa3_Z3mW83BqlLLu{D2<7SIo!6(91KAWZ;j_E9P#f4gLb#;Ye1ECK#tzLc2 ziZPZI6j8IeD51!M?>?yA0*gK)hD}CJUV>uJ-8frmk3AbxF{{OdD;HA%!nfmFX~5wD zpW$DSv7&z$n0bh1HFp*w{MzQeRM2kVe86hLffjScJ&n@_O={A9dYjY}Pv%VUC{DIb zN5E`DbpnfR@7laH7LRD0Od!7mxZl$wCwB@#*1NBsULO?cYUIlxOx5@ex6Aa zXMR3Ga!mRDuxnZBv&(*Gwhzqx&v_zmXpkXTt!_QcmouM)7Uij|b%k+AQ5qv1(kG!1 z2-&yT2t27BxZc36d=fl4e+>BE&Q%SQvk=a>aM+|CWW7Y70`cYg{E31kSp72ra4|(- zZ(pRqSx3#ht&u<=sj&!mrl?VxBQbo4A6W*GM>V$_4)qEV2%U|u-Btlhe<{b7pzf1W zqgq_n=T0CRsU{!NNllTr5}J$aGo;Iuh|~k{vqEZs0Uwn^qZ$I&74t3AAd4U=w^One z@)j5kohOwr20zI{$589W)9z?>(xEtqFp~{%YGvyiFbtAKpAsl5QDbH%Dt|q7- z!tXDR9p}G<>LtLt>jjJfdvH$|XbK$n4C{pBNealobhw#1Z`+s_(SK`oy#CYb`U0iU zF61OomxOYNX+bQ!#WnXTqE5cjl4(Kx(PC4=&5vY1aVGHV6CrEOjc{0kY1s1Jh0zvS z6cqsAsI;2JD@&K^N1+8uA5Rj&mmx?Nr(Q6GdG=6sq# zbaVP@;u{kd7;hS>3&5rpKg-|MttfGqx-qy2k-m=y-+ntdB}ZF<4(9;5Kw_F@-zhZl z@Vk@VySUDC?p~so=RJHaLyNV0v`n6-Y;5vOv@{J_gGqZK8Ba`s_)imGnGGbG7(O|2 z2(l%kj%*;pF31yuWFJZ&(!D{(!^GRiExd}G?Dl4Z8N##;Z^-(W@BN+FT0N9j1aUhQi>E+0Y-gu*n@xe{KpgNB89gXk@9DuB@eUCLJ63r%ly6}eh0U}LlT zEnx#xG>OS&KE^Ul%8?VzoPYYr_#3k!^-695(vVtu>CyP9X{M3QyEN&mTU5+BOfgTY zsYA6i61;dARB;IhSr{MMAaJ~eCzQB6Z`af1Oz0)qP0PzU#3>ZutU@eFDoJ42b7n9K7zs9kNHYDKgcG6S+(!LAHJ zZ%#e))+Vxb@lmM*IXT*{o*om&$kl#62NDH~YsANtDMSFkH>5`Sf(~QFLwLc>U@6QE zNRw|~)+2Wlik2T|TA26oG#yyM@)37ivIcC18!)9ZJ&^!ef`YWs4AnxI`kE9(!BNd^ zlju)~%TDl1;n}`9#ksnaMj8dgqWuXb+oJae2dYff+Bn&n|Ga-^nX_jw0%I@&%!3Yf zLCKBVFbbgWo91i*JIp?Iumd!~8Ww0JFtq|&$qFQ?x))}s2BIo4njyzJ=_BAMfO_h{*?nFb_F0lyJv|G3#tD^g-l- zVD^&Gx|9bUNAh4kE)Rp$iDf6P2S&tY+RWCo?LzSelF)ut%pz_?CNj;rYxR0#Y7$H@ z59t}N=A2}-` z;3kuyn4U8F4c7wi!O>ng7v5?pc(w(py=7vMxGaxp`JI@Bfl(<`BCvyB#&pxyt++cM z$=U5iTBG8Fcv=P0_ay(>s|JM|;E9E+1Gs0j!=Ffo2>Shi2U4S85Tax?24L~WjC>h zi0s>-b@*9BzPN@Y72Czx(sKAI%#xeN`s?p;SuY{MKv#abyZaIE_~q5>zux_bvAnv! z|M2FAPxp7b9mNB?4o0fNG#&RSKG9vsOu1M&&b56aOkToDo?}8aHCebY0vBA2o!d54 zw~$m5E#2PC<-za2waH1qC}JLk-b+7l8zmqA66Xq}7lgfv*F~=7WJs$?q87e0+fa?d zC3Kmx(r4BJy2JcC$<&NwGLo3%AL@4);Vra!N2Jl%24C+h#M*djOY07J5 ze?1G=L^p59`ap1>HT^KW)CZ5CA|&3dP8W0_#!VuCbVngGVwK*R)W)%JPgc-1Xxzo3G=eIk8u-bLMRN8 zzM?n#au^e!uY72e)w#y$3rxNX{}k~dYFc!NP+XXO3m%i}ii3$94?9Z(fd&)bo_LZH z6f7F=-s$fa+ik?LfNRL2^Qz~$xLPk~R}g!%J4C2(`a9`^vpYR2hpUBl2 zG@_C~ph`wX7fBy5+_tWZ0<4g^3CUdGF(nL*L{}B38Pz@4AKtwG@aFy>Sk3k&(}S;p zw>GHRBmT)7PMxT&ppr@c_uP30WLc=ZEo@Usy(n^>EAH?aQXmyVOx9|-(+5ca1y+!O z>G{q4u!j;9U7S*gR6PEAaNy`(X#3*&CdFsSGxd^{D3-Fr?shimeZi|Oh$L7bBU*{{ z#XLZYXqE$bQC`_fQ6VD$#EoX~P#5*U0`oNKWZd1KeY(f_e*69vd6{$_6T!OQz#Ir$ z)6v>4NM&CvrUTAyYH59Jdvfu?w8H2LT?O1I@QeE(d<5J-Inn%ref26Iqr}^UTHQtM zwBW%}AXldaHQ2;Z*fE-KO0{0SXAH&c0>)4PYV@7MyEiXAlxkE@mNa>aZv(!qmWYAF||g05hYKjcYk(_ zA#I|)SIn*nP=3N>Xmm@VeJfX@ut|m5{OfFwIzSiXphvoW+Ktk6X}ps2_hFCocf~fe zog`a8odMRGQ;I`q8PbjkLY;{BlLHv_L2teWsl1uG`=_ov{)*?|-%tbsN-P6n)$MR% zLcwkz@DxI)pI$$VUAP8QDw=&)Q{PH7nhg3FFzorQ=k@i_6S4QnFRpH{!}>Wy81fVz zJq>m_B(dE19S9Ahh~^V2zGw^N;o*}pT7>bhHVi~IdCQ&p@PWzl*YfJ)X3`zT8rmsD zC;+NSVNBH2SZ!+CL1wq86sYV1UdgmN_>otKG4JQQ6|&i0Hpqoc9kra~%*)!36Nddj zFIW5zK{~3G-b^;!|F9OshV97!+(aEMJ3`Xaa2Al!34aqAWe+WAAYgrWmp%6iwUB!k z5Z$iQCp$Vw%bVws8I57R#Jg_RRv(FBo;JrBU}l>zew|eMcfC1-^n9UHD!sQ&$FV@3 zGq|pfo`>LJ>#I;sPZv$5X90|jeVTDdK=h*ZWV2e+d@u_t!+NB;Dyu@eY)CQ^hL!el zOD$$A7_OhLRVPCnu1MVU%ol+zeg<#W_GL`ALHw|<&NtX`*xq)wqp8hcY5guA@T4MY z>cFK^vA9Ec?0h+4$mZ@Rue@NtepTs(KMdad8K-*pcfaR%ZUc)9 zHK`8>n=U$?5|e>N5jS7%yN*P>r-$tkcMNp9UbHj@I`%EF8PAdS?htO@+A1S`tgMSB za_QC3w1-B~+x1t-9Z%W}{c?KIjWufZ)1lCmnh|Q$YbQ^z+&uy*If@R^_T{m&t*4vh z5s4q8rB8r?E;6)lkTfzG+xo9dNA5WXbc~zj8E#ra^uiQTcq)N*+1A0Glw5ZzE1M{K zVtm}MUVc~{wE1;Ke_HFb0^{(nK|YN>2b&|fl+Zm(oh2+s6pk%maj8NwZHY;Pa|Go4 zPqD{ScD1uC=wr`3+w4#$dN;j2Gl75&`7gEVIEgSLD8*9;!b~w8*CJjZFX1(jp7)c?a7cTEp@dvxtx?SjTwNV7hR8+CG65NRJZV4nhjIx8z&n zY*YnO=RiAPRgmYvuuf#BP#JV2*tDx8#x5@h~Y(o}+_S0~2}c)mPS z`Z1XbWh`ta@2E$D!3gpngrO^Vr;v!?X7e}aewluOMs(m0E^)1MQ{oyA--zFg+u$sO z8|DahQ4Z)pl@oVRo+2Y9*iGe@p>hlwm?wJYY<={QLtg@FZd?Sj6v1HTka+{D_K>>@ zfeIXHTont7vHjna#-sra`y8Kr>IOQi6JsK5b=^>ps^jt#pJ`KUe`rd%X1k2rR#8ps!EtrA1(&!Yf zQ)*x+F=XG95|VW@TDPJbMY-MNFR$LcyL*e+xIam2qsMP&Lpc`yGfy0~o;doapEzzk zar{p|5qf~?tB?NaCmy$+c>GU4@uc;{6FiaV)fehCo6oni$$-0#_Hz6ds!Vi7#wxeT zfZ|}!nGS|HCIp7k>8HG|4JrjLo{T{0xoOnBkx_E#(cm^zizkA zT1szeuh^bA*<)wqcBo*1==VC~JGJL5gr?jPsZC6h?u|?8U5o(bXIR#*h-!KM$i-()hv90weWASVBQKT2;C!)ANu#>x zd?;LHY0uTxn50gV-`srbb&A7_uAG@(vT4(#IdK<_D)usVxn))2XDUze6)0NS&@gyf zEW&}N7#x_8?ZVHb11EDw7L}OZYq-U;?!wo~sGmgPQW@iirB^%I^mMyS#xWv1g{3 z#1{V)&OXYV+@LmcDQ{VZut$is0>gie9RehNg*3uQLs4FkngTo*gfY6J4=6sMX)PKL zM_-T?$H3+(l*eWPhF)#^XlW1Ffyxflu5aSBBxHI@-x-i7B18Kfk|DJKwg`dh{jB14 zy{myHlgaNqo+mZ+Zf+U!_fQZ{jyw`jni!ifXeZARgHSefTlf;Jw>*6yf6E!{x*gSt zITQ4C;(`;0Q4twTeZk$gS$$fA`V1+!4kk}(IaIcL&kXuJ{fVbMjV0<2mpMd)NLnFx z)b(kKmOeKfTa+_04bFiqO1eH>!f;DVrz;awdzh4Q1LJ|t(79{I$0{2aY6Un;(Si#% zCDGB%ZZ${BKp5Q5;mCx-#`0hi$exmp9Kg^;;ac zKE)?`nMFWtCyZd`dy2L_$)X{cLekUhwDNx%L<=ZfD;6>FsvE2$i$h* z$TpjLIeF)L9Mz6V5>R1X`&IRLW}D~e%bnD{>}bVo5Mhw;mPSwP0Tvwf2@7{FHhjHE zco4X>A3^kYAadY{RQ6HYg#-OC6kZQ9KN?@Hn2JHqwTzcrp|BEPVg(cOZgtXP8sUc~#0rQN{8hRQG}}Ge z^b5C{yu?#L+zERQ+|DV8LE<>O3W7kKhR;#N?b`U*EASSJ*(@qZRv8UN+-lTa!>{Gh zsczvib2Hrx82^E_$4@P`4vA}Fd&7?sOrHSXqx&DYtb|+mPKEs(2?7lD-N%vZ%-giTiejY zW1>AS?$4szn#){~V5-)KZ5d7!x4BELQ$8VFCm zRrbVjx9YIDspkt@dG5-#yi>#UKd3VqBQ0xcWG2dT zZr079YzRuT4TC^1FA$kfu$aGa^q$@r0rV;~9$4bJ0Z$xNnjAO`9)Tg0BTjzXp_A(6kgR@Q1Dg>b|>Rlfff{@z!UORJK zU`87<*YM(+wIH>v>PvWAP+)R|t@J4jJ_CufBJHn!T@%^FA0S!%9Uj?bq_Kl<%(Y4t zQ{Y})qk8e~`TB715PY#Zw7o^*4t6^cdN^d_D{Zc9YoS_17e~w!Odmno&|r5n9LrgH z+OEaKXM312^||ev0pw)FY~}sgU3#E4I>YXxUgyIE)9AR7g{>x&xozcW!TN_4K70Gq z`{wTL-Rt`|@86-G(Antt1g1YimKQ7VQHZFefxsZSE&@VTCeIg9x$~i59MXpDCo;Df z0Fz+c4{eY)I#CSWN&31)8l&lX^1yTTg+f6AmomxGmt>M7#8t-uaYsWJN`Thn zlc;HKEoexMTxy`MjpARoyFq~jsQqZK5ZQ;U8xi92cY7wpUh7tZ>FeSwi{EeK=oU~n za8k1(xHdh8_QZ6Ay4!fzB8)&=*|DT^wxnOxs~iWb+`9p6@;X^ST0q;Rr1tQ4!6CX@ zLp5BgrNs#pusj8>e0HJ}t$c(_AG;QrpC_0em-nA`Qg&e~k!*jNZ`>f4*D5~O>Hmn% z&Sq8(q#|ddUWKY@xr_*TT&3_+;c#zLXG&yOA-WR6w2)lq*&1A|VtO5MRgpyj^RE^) zw%S8`R0?#z>vjM`ZtfJ=eJuo8LiCoj`DFLjHsmjG0;N4XU3a{w$CR>6AF99@db((; zx6|dhs)E82Pkg+p?8TI%OdBrHm|e#s2CFpECXV^}Y}Sv~{H#ko(d^a$O;EO4W0 z&q~A%C1rWY-C3j5?}A}TDXC4P!`z0pBYPl~-!dlHWE47|oh?xi$$!M6(1*}eo1Gq7 z9P*W9I+$ZZ50lpw-S}`8;YC&Eod}*5mvt{~D(6ToQdv}JPqA%kSOfx*p6i8JgP(!J zyURd4Vf$i^nT{}p9NXOZ$snUUyLxJ*+qmAR*pyZP^Pk~$R24j4N_z=C~;c{sE3IkF;3T+6K`mY1vBpqE1fEc zC7G?8T2;N92>SVIxkc7VN=^8C=tG--rnlhbvHRxmX4{qR}e!tk{b1&~#O!B!x$ zd^~yqKDpU_f3tu(4>^BRhCr5w1P8y+;f;nyY!e@uj)aSf#7ATToqdC3h8$?8)#+}5 zv}X1|XeNCF_#^WLy;l1#{2ZNbrDpCCh8UY6DW-{Tft65x>HFjfJv`}gg+AywOrx9k zV`LAwA$m8>@9qx<9&QGnO7pkwfY8l{~$U znMx$Ag)z2%)Zt`|S13$rN&p1m9>k-gg9nx@A=si&*CEGlZ-iwVWGBse6YbhyR5W@s zqgui9EIy3Ms*v4ng${7@<4=qgMIgLl*OK3jc(?YG#JuO7yJv~f(qjpmjyD_=$ z)>07Vwoae|X*qV<%FH2i1KyBUCY^uh>bT82u-GJ`b?rC!S#y|P!SH@W15uy7q|c%T z;o24F8lsgkA9Or?Mq4wZ$0wM70Vil*I7bHt-pjdp`9#;XqlTmgFwW|%+jm;-1-JEh zL&MZ(6c(<6Uf3v|PjMujz1S_{!=LC4J&}kYtM6fT$+YPS_NpQXM@_TAnw)1b0OokR zWD}c41lx9dh{LhmHqTk^P@YSN1t!FSf)OepwsK5}f|Q&vOv0b3xm?V*gVE6^P2n8$ zYx82-6{^m63FPY&2rkJCFyg1E6D2+?*lGj`A>D(09`ak9zl6VEQerYuX??Gpt`IL} zNy|@1+tul@O`A&imQjds1&$y@sX}NVfeq8NJbvt^#m4Ug+n%t!S?Cwio|5F)t@fBx zUm;Sviis&q`~+#nxP3OL8;qm)9H+psYvKP=0MiXD|0j{X|HveuZlHj)c>x0e*N{O< z{*Ek!b$X;1$ssz0Bd3;jF!zug_GU2uvT}K zBTvALOuVQCkhb0oR}=&aw_9oLVW+a1gv?B+N%zz;F*(I1LufcLuc5$>Et^6gfBkY@~0BIK)=R1A?ukf=v@JB+D;bblu8KUOo zvUD*ot`oc1`-)C)DLNby5-Iv3yb`}Q$o(XKp zCF6hiOi3-wtV#B)xjkEB;}1ciOzk(?EzhS*$hc)wpP6K16b3p8n}@v5Okyv0g=?5` z;@j4e#Q(VR(w~ZSrVz%#LF$W09%gGGbcx)qQ7kWLKqUPQ@Xz!HIVo+Ls?J?fzEvK>T*=4&JLWNmOKh5ptPfTv8#2A^BxN+Dw|Tn8Kl*E>kj zRjXWJUyATHq7xSOG`F_ZQDCyt1N_IGZU4eMqz1D%59f*;e)>2jTM>VZq{W1=s4K2L zawNW(POt;;wa?+Rv^zB^l1^oG8tCn#RmIRqhfr`8cjNTY!x>pik$3PvJqdwlOsNro zQ!0MA)}@B}wnzjFX9!*v=NDI#8^5tl;@HC|QHtj7@;gv1h_#XV-!zC$$&QVgg6^g) zjZ7M+^)6!S6;bVaMF>q6V9jkrl^&KKUNiD%DTyXQl<5dgl0S&H*b?U$!4@2lkn7s7 z%rRKpic~tGQoP)rh;tR=Do-5-dZ}6tbknzsDUu|k`Vq5KD)Q8nH~Y+!`?`4G7WNhb z*vvm;GVzv<4OY~d(r^d_V~TT$z6GLK9jT1DEjsVcTrmGqzw=+&Z}Kbqp$4A3 zyuS3_8O}34lL%L#6LWn33QiqJ;)4VG{S9K*4*XwzZ~BeTDbdgwD3;WbyPi@A zJ?f&BH68mI1m?5Iq+pFSaU3wBL)zMk_!fa|li=&-=9l7T9B-sYg`gc)9+RxY$|ISj zkok%kXoIpQN_AQva&~C`@p1d+^YMVSi)Z5M5NvD(UNoPz{D$pWf*}m2p_!ccODAhUd>4crs+hrM_9{fz%2Di z8jLG4JFX-xVEL#+dsJzC1~xJeXUn;x2Fi>ZlA;cb-!+O-zI;4mld>2<38_DT*qL|2&Z;I1j+o zLmso|jr7E*O>;UBI&`z7ya(MHq7;t&%Xz@mE}mf)+mSDY>O$&cD4xjMVoVD2#N8D5 znF*qCnw*Ed(Q)0@s7!6>?l9ia+YNsa-$L1X!4T5h)n>|NglT~fO@6LP-1Kwb0_NE= zokY0aXzk4N#!in&XLWqQ;i;VhtJwPH+qLJ?Dq)pb!_+=5AXBeOK`iTaj8rNwfabt+ z5%wOn1k0ac$hFY4+Va|F)CUzB>>8$rKp<=GU)|psm2~RqcAjVz8^G+U#q0Pn_;eQA zS~3DnvH3_t%T(lmF@I7C-WdoOHFVw>)9|%z7gC^ksJ*4yN-5A- zX^6J)h=YTpiAy+hzl+8?vYYPUK3)|98gwvLy#~57~dH!=G3n z05RdREIn4Z`9rUSLGSI$Z=h0gCKGinYj{IC?Pl_S#EMK=b+jY%PB3+6EiEX^EkmSJ`r=CY8Lo%MAx=uPy*>i!q!(x@%~#7KsLWT3 zX=GV~yV8F70JuIK82YR5Et#tm>5{7^PW7sp(*aaCrt^8O9`kjoCzjVnd*9O{s(8>p95u|P`^TqQEkOlq(u zOO89()7wd@Eioq@3NBT8ztNK$meVKtvb`*u2D2m7&FG;NpU3Z#)x z&)u-H{SMB9RP&zWS7VpVnxH1x=$LMgt0#1ckof%aA*uJIUFJ?Rlr^MpOohQLa zC3X>W05{zrC%^0VJucAvJ;I4CTAD7NIB?O*B{(*ZOE9CQ=FLHQq()@j70(-bmQggy zqYwo^*sw7cS2G5n_UQ|I`r)7jk;R?Kpz>=C6}+cKWchjAzR0cvH(DgQj3)B;Lt%8y z^E@$eIX5)n@(C6zo*D60k_>k`Xm!#=A!q8YEFH-J?(bf||AZ=XzNKBCvagpupbU<2Eoxqz z92R4s(7uPBV7qyF0OjH4rBrSH%T@5|qf5Kn`NEZ64|EY?fiiXipG`O!Cjt-}gc9T< zk3A$Et~9_8`1wYVF6K|gh3t!<1~TX0#kMFJkgjQ`h`1;P;(~SAkKS; zZKD>cCh#U?fY~R*mU=lDTCaKzISzN)JXb=ma~hs7p+z*So}q{KJ9cCdY%E3zv5690 z1g}f&m)QI3b@pJ4CxF5r0#^EP9&{wL4>0zNKL+0W9Q`=f& zOp><^IW=wLbB{9>_4dP?pBC@5`QcInwWo%N(NV$8K_&&aH?R@eB~?`SJ(zp9I)qQ! z-VR4!dcu=0br>S+l2EuI1#>qACUALC{xQj1Fdns>T5C!r-mG+Zb$z1QzsHWZqouhN zzt3ty3P@=CJlL2Dm`2J4BSuq#dPq~qBG9~KF%F)-4D_qw4X|6dATWm_!a-{wVVjpD z?13cAB9v6zw*ImfP+Lg5%CisjvQ-I|yF00^q60W;QU{xQ&;rSaoPYQb+tzh;N!YKW zsTs5$c2o+-_#pM07pvAh8c9~`u5Y#D65YuHg-`yHL8BqaH%yN;AT32l&1#OB}niOWkIa@Z{ww8nUW|)n= zU`0;qYSdhr;8LW@K^hP;vN--X5aW>~0A`0ZUrH1z?xhc|*Ko6w>_gZ>bzsQ)YcTT% z-;58D+Kj7_gMl7$B>e9C)$@6gET(8{wm65&^Ji_|kDr}DX~O58BE~)-c?f8J1C%?v z1CBHOlr4BL)|G<%^%@>|08lv7<1b>Kozdb4 z&(;Mvucc|H94C8&cMD&hPiZmfD_dj`JjPC@5!_Mi2yTfa241fwJqLplpdcEG=3xbQ zA^bPQ$*2+&w1D}Ba~TUQW)R0NnF~z~I`S~qXz8nL6C_^(xf}G!22~Hug(wB|&-9C} z$46RTLh}G4-uY>`0-4{430163OmFuwJqio%1GgI!4WhehRS_{-f;3$92y{*pOz+nv zFEipIU9>b2L}*mie}~entRC#XF8P8_7y3Qy6VTtGRGuUcxyrRKU)7s9UIrL$uTp_m z3KHeo$L*N53u4)i z?~zYlM=db=;Qr@dKHUBEhg66b2V8k3=$mNHWf5$}$3fu#gWrNQ_jMIy@3-fsn`^{u zP7myLct}cGPl}3SSeWZ2)_gL1j)dgy}N5;YXj4n}E!P>;;!lh`X={ zf2N@5z0&6fTl^Y%6ih)bArx!fBiM$x>NikYJ$U?w2Rhb|{KKQ9d;R^Pv+3@-8*F+s z6GE7+gWD!fpi+BuBaYF?bOB5oAIfnz=_a8zSSTKq60Cb{{5;({9`TVWvYHV0RBUws z2Wnoe@OMip9Xexhn!)W(n)AfXJEL1dino(20%?tEH8&L@ah~LAKKR`q2mhOwq%@WD zIq$*`NTk98PPa-6YN5KKx+k_vWaZ;{K;$W~AnJom_&(b0w-~b=t zXsBIcOUOxy?cE}E8f>wuwTWSf5qepEfKB>i33UEQeU4k>! z$D}#wAV<&X%%8+BDkI~XwDRbmQMEZXOGrby(^5zqu0|@Iunlf}w|6_QiVY z*@sxm$}X5xOYULTtman(y*4#t8ju6JKTLRALu?X^-RspC21t|e8F}AeD~C18WeVX< z4qMUrR4VP8o&FBSsuL5QEhjgqlL^1VG)Xu~W;vpl`eZem&z*|$G{rn3c^m6=;fnWV zR5@DF9~SlBvx^(Ysbj!@jv(yFL>;wgX%2;L3}qDAYZR>w8$cUNB z>&7HUy{T>qQ}H1LBF$-#FH#N%Y4SCq@T=f~IH0F|p(2u}1KtjMroa>&BYp!64!Is) zADaejld_taXjioJ1lW}H<`D{z#zt(I5P}KRrrEeYQ z-;p8JzQM*QJG-x&I9t!FG;Ha-B5vAcJe~b4l}6GQ=B^55_zbv*j1zZH#{yXZG#9xP zDox9E)XzZzUQgF6=q0;RKiH@|(u~Q43^7|yJBz5p=j=jveL1^IAUT753W`|9xGiTd zgf!t91jNgQW5_M1n*1lZPMB=dpaGUVDXe}uEcS&50&>vq-y@llcB%B`8M z?dbJ4N-*6k=8EBkc)HmTEY@&TayErR)20!uUS()aZS8VB)9gAYZr8C$8CiCQho3O} zP>n~1_CguVji%Vj4N!4Cmla4u7m{WIXjvC)M^gF?%H$$8T>ICMF5KL@&vn;VbAfX- z1`W6jKEVk@Q(s7=1O@>4j3XWfE&Rj;~{1E#P#BUmDqkc?(gV!G<3ENwnFo&dv9K~{f<*Jw;J za&Z?Wkmm`kkAXys2-cRDSb_9=ph*eU+=BZaa1+s1pqAFf5tTU9wi`ta(-5>#&Eo~> zz^j%XXOc!)OtnY;wF-ApnN+;?DjGuj4}CdhI9>Hf(h zs&9iIO>$xN8C}D-OoeLn3u_2uM(UWpR*ZYj-CMzY0mF*SeQCKGjOP3{r3Ipxv(kbM z#`Yq(?Lno*12;XSwBVM(QH2T1cMmoo>{uJ5^A54ne07Z4lb_I`qXG#Llc!Y_dkxW? zB%Q~yxp`PAk~{ch!sG%q8sc-H_P=H&6<7-@JeinwD>x<17?yE9nIXxSqr2f#EF=~m zRFz5WS4d(XMXIQ*bi4&=5$5zlCAP zgSx5XB=HXC6}S%@&-J;{%;z^bZ(w48-%|c~@@yAlRzHb_hpdpq&$xd@=TeA zO+BC9ki5h8b>));L#XT`peYFl63dJ{wqQhsXctbf>~QqSU9m=BVX%0ev6)de zLp3(ys0~uB!WnQ~XcV}}k!gQi$28O+JtVdSqFFoT?P{31ljNh~kBMp6Vnr+OpP{>B zxWjX5<{qBq&quAm0G(w`4$y;Z(6Hx+ha(A+pG2ss{y$%VfgJGTQ%eul5qfs?B(u>p z#hfkHrk7dvfgT}AE3{k)>Ar@9KO3+Kyv!@Z9epqxMB7caU>08h8yvnkov*(+z1(!= z6EJ8!jL%A$oA2-|7J)!Bq>>6ugK>KLM;JE@SZ^3m71*+Z zK^p+-di@=82E%#uVzatg3k~;!Fx#Z?#P-jp)5XeUVb=DF6N2(O@bh+`t3iKvV+ryd z^tQ^1K>V_hY8s;>LL6tHx~}cP)1K1C+gFkGtse!_2eokbQR%uKB~f`~Yrapnf;;+p zP=nWwf6#bT0X3ARosNT~*4;@%4buY4Gkk1H zk&c{?msTKgC>t7^+Y-5@L-p$Dz!*D!U5tDL;P8JL8a^y`c5 z<$?Vpx6Swovr_72*LF`L%KL#nPho~~wkdJl%1sr4{l-HjSo&nu&jQzKs64ea*M-=T zJ(nJkP0CK`1z`@28pb}05Gk-Ea$A{yxVyXgc=zG_)1Uu*_n~A-zW!nQ=7U=;RW94w zm?Mx4uZ#^%3AbXGOQDJJ?(N4rE3}>Nq^|L|)zmgzl$<1V{tZ<)nsU5R^)Qv9DL~-l zf$4DhT07oVjh@stTAC3NLol4oD4q_R;e ziqeo)&gJbiq;%(LKslP(^VK!{nq2wotI&n!l`ySq#r6=_sMr#8qs}{s#pf3&%6)V9 z>c>{#d%DE9ccNUOJk_en2(NX%`#Wi9uwN}Uvs=17P+`=;@;y*vv9NcfsSW-&n%b$R zB|dpb+l~zdafk0T+Guaa7g_e^Y~upgz)IxM1!9m)nAp&sWK)N5(Cv%O_k3qT$!eH? zrgnw0r69|L0wYL!p+ivhFC-eVz46Vr6Q~J%pE!rWjw1I|&_WLGpQ#!UXQrrW1iB5n z^q+rvR5ngy?sA?K?@L9Y;q|DeRp$M!A(~W@vYb8rD4T{u5%1i%EAm{&87*xTQA4N% z%=JD>;ep{IzKIgp!>h_Ypam+{SLE^X7HZ(_23Z+^JbgpMs+1xz;py@})1sGv(zrX> zjK3aa`PvWTxRJ!^R6MN2c0HZ5_1gs1HS z+gq4{TFstI z&C0OPy+W7DLmG?X2X<%ARn58iE?Jt_4h7)Emmo|KaVghUdoodt-=>f4I+5XNUr@*H zzvm%sY{9FVY^f;RdW-b;(N599HMRJ#SKFUp?e3M@j&lagh1}4S_doyq34!ydv@?12 z_U#X^UjJ3G8YMIUIQCSDbKfIYV|VrH-Tj-7A79z-O2$!_?nk}D%Rr4!ycDV}EoXe+ z?)Z4}63#Hqv5de&kXWzH)>x2UQ3|_&S!Z~sgrxa}Zct|?o%MXRM5V7}(+0!i#2iXK zRG_p^%YnLPP($dJ)*(a$vA@`f#P~;h6g3@K<%Cjk-lj})1=#1)KieNXzcj~An>DU@ zF}TdQbcyP|F4D6%V4FDeDhHZae_R2%Ba<^3uUqJ=hS?(4NpIKZty>CWt<1OQoK@4e z(?RLIO15f3J#5rde?&`I!Dt1LDXWT=4MBx`A`Z^H29x&waQF!`1sgewV|Hd$@AW!8 zy~?TtvjbIX*xe?ORPIi-JOrrM7s!K*qMkL+A(6ku7xl;NhuNIb)-;=!shl;n?G83j z&>#emkSneVL?Ir&BiiC4+A+ObfibA!IvhR02%81+>(Ded`(`|zE)~S_e2dWG z?Kwmch$xto0do|K0@8&G&TltBr@Ve(wsO9VOK;wnn63`Ws1jn&n<@Nidb?p(5P)w= z`aCu$?$+O&z*T3t@oD4RNUh;Hl5PK$qbbauwV$cmL1&EC_Os-Ex@~owq2C15rr@T6 z;sHDM>g;?_wTk6F0-PE_2tW0nwB1mE_0Tr%Y9|2b!gU)(@3RGisGdXb{A>n)Bh+8z zdVnRePfIazylN&teU+WrQDiYC&*nIa3i5spp*!QsXXWvu2U1W-Joj|?#c%FBI4)2l z>7xr}Oz_^WxG`lI$AjG2F79gl#;bCdshIq(xx1gdegFEe^2UAj_U^;L4wFM?TZy7T zKMf><*~V8}=qgf|iTgzdp!LZXx5KaZ{==Ks_nzn*HrIjW^~Nt>U~(t)j-VHHXL&22 zR>^jeUfPRv%&6x1Mb-HXAB`lfTh}wBrrvLlb4y%5_mhCd`<7mym?8?U#!!O2FF$7DOd7nLDQ*(!HN|YJ!bzX~FHp8(JwGW3{f%_yr=M zpMe-W`PYH{QG;9A(k9Tk&i5%aW8Xh9sXyF!Du_PX**4^CY9omfqONfsA|S7|3p-%l zWSB1N^`IrTlMr*#R{X)ptBH=3ms%?p{n3Ubo23YhbUAId>}#9ON9lc5f;BSf<(VB} zLIZZ3H5NZG3$bw`$k`|nuyu{4!>yvYt(_-vbG#KTjjhA~U@4s)p?i@bN;?d}nK@$& zEi4YY^#~P1&&dyvzDkx~rUrsW%-p#vkMHTt_NBzi6g!nXy#M`=EEPtohuEfr^c)84 zUQf?9$fX}oRGG5m8V+ah{|cLDzJZqieVvu-yc|T^hkRgmB1C81{8NubItlae!UE5m zV4)o6IEINLcFH1RZ|<)@{rm&i3mzc9 z25%P2&SDHP-DQu-?;S=y($G*cC#hE{DqSv0;vs_Ru^}CWOADy4(%v@S&b=7Dp&6%; z614^unHmj2vw3HFu|2Ppmo1Q96)4?;!a$OY!|@ogbc_s}7MeP8-3I?M{@3xp9{x*8Rs?#rg~7vdK{WS5XaW9AsmtWNzl`GDo2I@9h{PNudbz||2s zY-u#wT>cro3`TB3n6geU|+4ch57*-X`;I@n$R@L~05JpXTZA3m}mxcm@$uA+J* zqlKBy0Vyp}e4%)h9*r*~(m9(xKSPC*>96=qo(4yIKDEyIM@!2BB|X%k5gG@ICb7Q0 zCaHzdR|w-aY)7_63yKM#nkI6*c}q_wpD!&8SRSRG(XH@z73vA!y`=CO9uD1gPdka2 zPqtXk!(0>6-Y#hgSewM2PuHntadorYR&G9;U9y|r6M=pI(YcnY4|%>4_mqj29Wluq zs_p?VLu0ADCAhe~0zbQH;5W7t{v8$rhUIB1=ie*)-~50`moQWsa2a_~GhNC*DJ-l^bgG6DbrRf0=vPRrEc)0S_ zo69zK0{RT%IF0w{$J-!j553IOC=~IM+rlW%ozicPHwN5x5+-dmY3|Y1rP>MX7tYeP?((?QkZy~+9v`yll3 zh`aO$dbku(nz_C^SP#{pj8$_E-5YwOEsyYS@^|u9h8uwjV@I?ESGFYNIRdkG1*<(G zAzCbWOhsVQKDK{b#kUF=iv~XN5+Z4TMAuKz!Z~ zz0_hz17lFVp4eC(tyi-o=@iDV1oE+R(#2bRF>gfMMJQ*BKvJACU4$hP0SbXqY&DP? z%o{otRD&wHJ{9he;>%16twwg+pZwAn39xpeUsq_*own;CXf|bw*)t6Y2^gFT;v@ZP) zE2BQC9xs#d1D)DM{d7{EZk?0`vGxC z%ALiH`|0Cu_VX|I{}`l;mUMY`wcfro{t9Jw!2HT=h=2K8L($GLN3S+juRz6)5+@T0 z(2RG1Jt8r305cL$-)O%DBbEs(JY=mUiaK{MrJhV-C7m#ED3!xb#j{YbevZ2MhdV~7NnPXc37KD(HZUH;%{+CVSQ+@2Y%Z8QK$<1Q=cYogoPrF^*DHq5 zb<`^1qwh&#-;wRB)ShjQGI{ViOEPiV@8CXR<|JnkgiE{-7;7V4HalOgeQI}!cIC<) z&QmL-IRcoq7Yw-=o(x|N&@VZ2tU+)WNL0s$Yl0ZCWhCEpQDhaJw ztHppXO)U+BydSxv@6K+vD@PsKfS2!_9a*=t(Xl39^gZPnSnk;Ts#_n++oJrP|XjCjij(;)C8a7qC`BKic7-67Ho@?J=nZt_dYqDY3(rldL+8L06X@e=Ec zeDvJ5g~p`?)D3*d6-R?bF7~vZ?RqFjutRPiPC^y93K=X7G`#d&UQ+c%er-+<07Fht zltbnM5C1|GwU|v1aXOn0bSS<m>h0%@~QjrgTa9=8#)Tw>jk{pT9=lBJ{I zDtGvqAAmm)P~0pZ!DB{{qow!S!WT46oNL=U!laxvpx35PXiT3sJp8iK+6c8&ZY)h*IT1cjxnaS21iWmIC z9hxzpY%CnprBtnA6H8YdMI+39XABK+280gB0Tn{XciWj5m4;8fhlXR@FiS+^bT8=% zoN(do=BlZ3Nmc-TiUpD&`Aw~tD&%!8e+OJooyFHqOLn_E`1=8mmo?n4iCaLQ_h%xqvtf z9vwkDa4lhhh-<0oPt31n-3mEB$yJ>jabV@;@fKe%si(u~i+;t}WZMfAQKPqqv6bDK z-_ry4Vqce-vp7~Qh~7`u3`tmfc2Ynz&kW4bP^f@OKgtsrZuwlUOV_M1YBq93ce8V_ zCq9F{%k;|52E~2M(UGwvr_7M5zq^y0F!#{FF&_+r$&NGSeAE!k9n}vq;V{9sP$u-VhzOHCFr|fd9x?jCl&AmhL4sWyH|x23g!lDmdFP zEsjJi0EyJb1<0qvf|;({S`eF#1k@J_XG6cHXawj(I&RH99dx5JmFJC>^udSVrv|R$ z3(id&dOC}eE3V`3LhW%l^9zbzNR$gRDs`1Q@uRVw=p6oPPWnY#FE#a#$}L0?N}MB? zKNPoBb_w^zBYkSCAb6{%i<{!OPgOYfo^F&+O4Z{ z8O3Ey`EIvie*4T$7D%840TKwjl(|&i6CYO zCBB8yfyqe(pN2_(Zu%U2?cjhY+XV>>98Pbu>jtr1sx^jC6O_zE!B+aK{pX1nG01BW zn6vnv!ytT*Rz| z>$V&(gI|^^wz)!t52ef^L^tuBiR^}Ai*f}=#JwqXd-~yX4Cn4*juSNf&@gl)U1jF( zj?vPT6hw2hrf3UxLnL%0_QBa3o*SJ7xEKs4mxET@oIA7C7MVt2@=Dx=ntGc?;|_zR zTLZ6yty)hC=+Y{1a0^Awf$f9$V0L?qY8(I%^#ISlKtPSiWq?m3!?MOkuTCr z)ip3|)p6DPB3meDE&J?SGrQ}H5nh9B+(4Qt8`=oF^{QFmoQnHHo>*-RlW2WkJjK-R zc1xC*qc{{b{Dy}kIPp5yW}!4#0GUk#^%&mi?V?%h!+CY(Dxsj9JI2%(xt(wch`qin z=H`6GdN2?^gnKBaphqdD)bnkXTZ`d13j$ZB%+19$y_CXX10?`3$>j=`;`)=@P<^ci z7{Z$Qrm_xZF|TiXxvHnCA+iVf6e| zOIZXS*j!g(2dv=?`2tcfOFEvtV6vRnC3s)>7BcoB0$MyHs7JKeKs}ZVI}Yy7ir(@s zaEx8R^-R`s+&0K(+TvK_x@I{niOguwT9pc<&LUYl8qxLC_G|%ANATl_u}wOt;fZ~u z=MXG4uJ&m}MXE9daa$(~GZop15Jn|7WOD=2BkJV_uqrB z$K`Hyn`Bd$gDmHxLHt|D%JF3Ngst07`cl-o_cA);)?n9>kzpgT%yH0_KN%FuuBm}0 zCtL<(ad$=?fhiBqRqN9S-+nuQx29&r+_yk1l39%bXvO2YvrC7q_7hR!fm|6dsJR3& zD6QS6`&RlMxH0eHw~j14zx~9%x8_aL8u?hy(6?24sr?W?j7BVR_^<&G5XLp)4rTPg zLg5H9Sw}k8a>DQm`}&>@syQd7$?i@M^nym7^TPg2z{Z`;F_7-dVy@snb66bII0VTe zHSQsq`htM9O)(Y7w>om6k4K_g$n@~9!_(uVr$^)C!zZKB=*j8v-8bVWbCh@%w}pX# zdoj+-ehbq}d!$Fp*^14v*P`tMsm>t6;*fG`$9TPgnUr2YYcqKUwG^)z@_6(1{_X?o z5IQ%goEvhkI#d=5qUYy7{`lto=<5BuH!$^-UOtk>ZZ}9Zw6BYFTnrA}Ce^AOxIk=j z4h7A(;Xa~^?4L1Nua<*Am~3b+KzO#Rs|83O5_e3X3_TXrFyRc^l)~4BBoN%v#cuW7 zbIK17b>z9|54ZsgW#2bvffT=f3bbKiFgd3Er03dk&$XkTYvZ144C!ybW7u=;5ZB6N z!4{{lQ&bYBEOitev?;}5nKq$gg0Eq|hkdQ-MQU75;h_r6HuvT?->x@sK0V-`$$J$y zz^tWbx^<{mPmo}GpKgyJon&)xV$uTY2I(TX&n5^oDjV7|1p}3QRQm&d`i4Ph2vr_v|vB=S(;Sy zD{@wj@*`iIjKRfquAuh4yviWvFjq0cWMxY*^@Vh@=bP^h8KhQw4uN_wPc%q9Fo|U+ zeV-j<#8zxjyVd52mI|$A;p$hAaE=z>Bul}ia0GqUWF(|rLg4ZGJb!LUvA`xOwQLcvNFMk2bl)o#x;CmRjG1vf>9nL zc-~l>$)t%CfYPLEL7H^U@V5K%^g6aAmAoPG=_GNZg1feL4CiO zd^-}kIYqQP*dn|4l2r|Zx{ahn=rV=0z(m4BqY_=5?%DeAYK@u^PX@Gl;nx$N*;CMe z)TV=TbA{@RA{Ibx86GEci2TnFU(#fjFm)ETgvJB)MTX&M?=7JmO-?~f+N?$wuE*-K zIBVqOR)aGIP7KHT=o93W9tBJUsN~XtZax90-!-fynBG?@J)V|25U52?_q?uG4P+jm zC3`h=cP(S6EPA(Kkma?t3}J>2>Ea?hFAp>--LWT_#-3<^@&i}Z4=`Pf(c+(*N7p!Y ziKJKtsKd&uN5?&J*CPAIyySp5XzTIL!2$PTbf>xt6?#fs-vVivhR8NMRcfz4ssgDq zj5NHM4A6so!R^j+gqO*dS>KqCo#n1MIJlPjwx{SV2RqO_m=$o-?10WQz=(zQy2l{t}Uj9Gsl#ZJXrEw zYi_@zO(7gYTl;W-Kdm3}l-rx(^^Qn|)#hb^@k7OvMHbibr39)ocr|6)LD8m!pifdOgF`+ zl^&Ujc`7|JEeMLYm`A2qUTj*%oFm`##`X~MWk|PiHG#WRQ8?}doNzGvOo-J+Y&A@i z@0MD`n*D!Zm&MD8#c(3!PMY+Pu@y9piqMN{EKGI<90_6S_GVpJVXT?0 zFx-yxnMKvFHfLRdd@}}$0A zF-Dem0ZD6Bzq8y1vf-55z>GR9p=jHncRTiZZeRl{TQQI`Wjm_)5KP5Qt@?gEu?w2( zsk*$_NZ_+0Z8|8OT$8PtcFB=}aJy z6a72=twGA($x|~u2QTGTVq|5wnK7}M$?J0`%`PHFi{If)om@n%8W%V>TG7Pb$lNe2 z8M>@0!Y^hE0?9_9V!L1V?E_1gGr4AUm2!Ph2S}>ewwM(TdjrDv+stTI zQ{^7|2a?%*0d*(s_%}^ez31=pL;djiYx{Bk*-QCw|I(dvu>1Sw?k5Cz{UQB=3X9yW z-1ip?60CfhycY4=j(38;t$>%eDIWu|Chikrp|C6LX1qs##ij() zqeuuu077->1~g(fpd!iH%gHmu8BLxQ8b_fT^S*1--wLF6==tW1HS8AJYyzUbFkUur z$lX0(Gz)ke4Ms?g6|5VWr*r5}YnET%>ndg$N_`3AI7%8@hIN@H+k2}BUHLfbyLjPVe2jsG3 z{ef2A(>TaRfrNYOo9%8jO-%Z5_{rXAHi^ng$j{tPxA4RYKgZO{lVU!I;Wikp3=iAC zeL4w{X3yMZ+7^Ziq#c*|#Tj@>85pQWhE>ZrOM94yRJ4^2dRl_{1_oBx$L6;|5`CGv z8D(#zr>^%lcS#A=3ykT(5JOGDC6)HXbfJE~>Ka zKa%|7t`w|~7N=O@V2_Cpl&tM-Thy>c@2mu%Jp>i#~uoy(kjal1Ppfz(-P zq&P^JiRYWeplridRpKS9VCc?>2`5m#%s3&W&7S4DUVR4(1WeZ5l?+hESe97IS$l6} zDE6=@ohScIP4ys0U}lvCLjBUbg)>eIYLnoWF`~3Kx=$Y}n7V7bG21-xd2dFZ0HyU% zWh`jD`jBmgse70Tw=cTc&TE*u7aIZQMQpp2K-E1adphVwVm*b&ELW3fgQ}Hh+Dx)= zTNLhymf+gAZjq==5_PHj_I#4HK$0-kKX>wJc*(up+ssl6XjAmEp}I`lb~8D$1iflq zHj5+YFkHLj0n5?S&;#L*n0e4F%XMVYBZRn2i<%}JgcV4KVz+M%3!p}*$#FwPT96(S zei?Wjn3+RtIoL6gloGHI0aq${w=`oWv%QFHY0f1Ft1cNid3;cB8;Y{32bCD^6yhBo zB_>}Et*Va@3A+DJ+-B{{TZ=F+Qn*LrqvE%J<866F@tf{HJMEpQDZ!HHMuA8d` z3qbyGBjmjtdVthfi73aT7w}nZka~fHS?OOjOP+PlQ-q=(^G)#W3tUK3N z3mSK*k^o>Zh623Y@IENt{^pBe>*D0Njp$lHy^Pd3Y%IMQ5elGg5E`QE!tJx0bvw?s z1=J0Ct8aG?d!u`*bpOmR#`s5S)*i{K!acMmoJV=PhO%6gBqigzFG@4qKrKD-)u+^K zotPvWdAs4W)M{%1$W6hDu*2@Er?miRoNQ-xxE(PvzwqKUub)R%J|Ar72#Ll?gTZvN zDY74c(#D~NodtbCVHVF%+U6Hs#F3-CO5B4n{Pv8lys4GZRjcchG!TLb;bd4QHykWU^0`!5exMCVv`!GkK#@ zNsttG^ZrAsa-AyKhHP;i#C29lE;o^%<%sC~a4RWFh)0>=%^2c|7=P0HO^jOuP8K2J?vcMQEaF=qSFL`84q5upK8;39Kf6 zw-2v1Y1vN!`@qhY^KLantILxa+yW>b3<)}{^(CF?lzY_@vJSuh^y&lS3O>Dk+s?~6 z{GQl&wgC^gOk|L9UA3tlg;2v$X#BL@RDVcm24G!)WZanUSF^PB~(J6;3D}yKgxI> zzCVEK?U-)AQr_jmN~_>W_WN1W1l03I>E(~3lU}7s2_`?e>=a#e^X`I(eY=@1;9amC zXkw*Zxk8Fk^nd}{QqzDwht1@6F$F)c8zBB=diVC#Kjh0F>7V#h7!!C_qK$2wGH?tR)ib1Oo+V9{2a>10*2x8-dlI9*r4Kf>QLg6kv z+r_(&_pjc)zC-vI+=YH!VB_FV z0|EowXunHGL&wN+3H%>FE~W>JRZ+ z;rUqmz1kpASeEXsm7?BkwoINT2iPh}^KW-W_n zj*RzqcFH31fv5NEIprS&nYe3@iMq%^S??EpT!QHh8gm&VeGIlb0utu&yilJ;*{#Fa?Lri@LF&}4q0K`rto=WxS{tVAMSqo z1JP;r8KkESG*ad^=nZhqDEoO0YGSv51l5j)58rfi4SmA&!0yc?N%FE8kf2Oyu2OI* zerpTmT8!gC{=FNw;!|)On6xDwGVC+qcu2L9V+#@71l=Wq^*N`r^%2A^7AXgE(|)IG zJI{13=$foW!3DO#+E8hQTK-34Zl1#@#y{@se0~!oWU)8zGnxoe*E#n*P!X}1XV^uiZ7_({pt1nU|aPZeDzp8_%CmIj1cm_A!Hl( z;qDM>jhXIuL~_>J7(3Sx%k~Tfv4v__wF?Dn3`d{*nYO13ElzPLH&Kcj+Fh3Bfe3r{ z_NVu$lGyHQdJKk>mzNi-2HuV+>_Eu`S8e- z%?sQ)&g54hy#RaR60wuCk-d34%Ap|=?H=^CoZK%TqQ z8yb|L?yM6T$5JzPB|UnNO8ZPp%Bx_SMC@rPw)wpSejP7RvCRuuA(CK|0lZr2uDLm9 z){6-iK(aw`-S?P#2lpE460ACEaN$YZmt4(Am@q{%Ir!pjBwf&pUd(p8TZV0i2$NiEQ+b5`!#IfF33`u zvd4UL+#*m$FC^Gz zm|w+)l+K#fX~Jk7wMXk~5p0TsXh@rfI7B}q0;Z$`ls#J85sbExAu5uM34B_!dBw@X zu>k{LGl53bh8QNkjYQ4o)eXQMu--3R9A1h?W}r?@KjVLS^>O#+-RrlXe!SbgyZd~9 z0H%gMM(yjnogl_UeUIJHe1F<&l{83xza1wx)M!M7jodCf$u`GMI(YYfT>?-NRp8H(W*&Z?k;}y&rpSagB6}zNiadd`N<p1n03$Q0tG8ABpY;FX$LaGQk>Wa#N@{3=_F@)O06YD-sUKOh!Ux5~?G91{WlQ^n3&f(oRuTYWHhd zz72zx?eYe7eDw=n#>hSa&kbz$+Q?w840r+F4z%Q7O!5-?R$~|-u>jj(z4$G}G`)5X zplVJuG(T6$_}}hGX7Z6`UvE%K;CgkvxCX7?!cS;%O)ur=>#=8N?}sl|V;iH z&`0#xbmKRZh#$KB`{0}L;i;M8W#>O~Yq~X;R56)4ooTC$`1d&1DrVF9B;fJazO+i}>Dd{ts(!+T6yKr3v$=;Ejo>pj>tZ0dUjQlqWzeBrK4C z08mSRLC6+uD_W*JTFQ2Jb^rExp68r%m&^nu$2*QH3OCQq%$s*P`?7=&sX{SKustf& zwx)RKbY2ROMrKrt;_|b}L?`}+iIXJ{;40!OruPi1KxQ>Sg;;0s+FHMutm3l^bdf-M zHaCCvA=5F;O(6yy56WRI1=Dz54buZPQEqv6`7l~~Tt1M-hMF3<@NzFN>kd89$PO~= zbqHe#rU7t*L|3Gb%Uowy;unO>lzg!}RD} zL+`j>meA|}nG$-;oj1toI_NaF0*%32%u~>)8?wMeg=;|+VO%KX&Cd)ps|xMTS2a;e zK`TDJW$V}KrNsAA0l~_EyithUu6G-eUIN)7=adywMv7d6$4yBqpjCs)a3O`w?>ozD zHGcQYFQ4H0@aEn9^q+V4AL)J5-6z0cS;XUX%NR`%PCr$(80F$(;=GtOGz~-|;+YYK zvwpdIJ_{eWbH{a#>FfxE@>8~WJJ`-M^s1H~Z6pj@h>LaK1$C>Ki`a4U-ozDHP<{rK zWWqGobgwmBB;Q0fDJw?3MV^Y2PX`P5qbW6-RCDD8y+!&F;C#3YvRxed5~8(}OjWq3 z7IatNqIy1!qM-CRw4toA+Uuz$KKI`mfSwvTm)r$DHPb|d_P?vZmC>3|WV*DRn)xN+ zSbt`2oT;fE+*3NJ(j!S%gmkIeYWXs*NVyb=mKC96F0P9z>6J6811ceGYzBq(TsGqHyI6e6IBOW{G27y> zaeh*Qm%BQQ#!soT>J=4)AtAijrLbL^8g>9Ny$cq1X(5_UxLHNHYsjkb zUx@rOqle9_=_4##UE;<)106pvAezQFGW1D0rgKm!X|#aF%$tTbJThHjYmw6C*=_FI z9>-+v+x>Jxk!5Rqe4WmxH8u7EM>PF^E0Bf)g*rS~3w28&^)(>Gk+4K<$D{QmOqtoQ zu?u9I*_41_CGkRcIieQX^35`F)9401bblk+#sDZHwY1c$EoeqS+nieV54aV0Y5V%N>XC0Vt`RmAn0z8YWoF#K= zFQbfR+hK+LhJnc}W&CNGE^YA4Oi{ByrH=1acT)9l_Utv(zbPS@|L34nogw_12NR+z zEhp@I*dPui&o@YxTc70`rpXp1q0WyXqp5-V=C%P`S2LH^5t|(b91II??vbWl9XOSi zzqG8DoNSC~w zT4_AF_J==;p(7Y8Yl^PNBv^h=-*=ve9^^XF;h)qUFjqkJEbKU${^0s+jE68<7z4$5 zNF_f9&ohD>#c1-Io=JhbH)WyH@O{CFXK3HbP`z}wL-{opiF}BV?CZi3fI#tw zWOcTG{CYRJ`w`Z3UX*SSl{a8RL%v_;orNe#Zgsvzl_B}6^$ZAoM+>AFFf+a(4H_ub zll`{0qJut2u0M663$9!CVX)m+w9{E(QsM1&+GPcm3y9ue2LT%&U$VMvSFc@NZtUop zR;*A8av(@fyaw4tRK0JmAx&bY#;)OdS!g?72(in_xXv zJK4q9CSj~$>du|X5R!{aZAts7mnQ~Awxc5xgzb0eAMkyirvUs0l4FKujc%*RGX0zm ziSE}L-gb6iqoo&-7c2$hAvtY#C27Jm=7PSvV4XvP?7UXe1_c$Ij@4vhEb!?0)xKHO};0>ZVO-+3e=QN~=LE&NT*2xw)ubZQrLLtcV zl}OD9%QgI~5HuMfg5aS){kDA*e#kz6O8%!wI5hfH=NG>r+PPPdrF|4PDlZ{x>ofFa z7HCuG&CIShFfk#0OFFT4-ppO% z28zwqd1MgORW|JhV3H&090L=^TCQLCA!)LCG0g{3z`*-td%4xRr&fZ`JUvaR zF1HzbkS~KWs^Z#=Gxi|Vri>%{onV>&6`0VYgP z{K@o1ogEX81vZjzWneTn%9Y;u(Iu~+6VguQW`gDJuGEVZvZ<+A&96OF;tFSP}OQ;iCioN@8eIfzR-UH z6GUZQgg|;rqhsC?klicVDEOn-yr5nk+>Fm>X#F}^BBmQCkxRQSygSQu@-hkL$Ha(D z7&eMHEpCB)nXKIQdN_c@Jp3KyaC@2oWQ`cmDLPAuh3Y#4ixst19voNb(Om8HQQH@^ z^rH}+=d^V_d8m$nW;yeS6rQd}3)&SRZm`fTwo3|(KqY=PmFo8DemH0-wLUP zLh@LoROZldK{>Xm@*Dv!97anUvOtyQ{f_Azmny7$RsG4_N!r_7n1qhmhG#7C*u<-6 zn`4LLxMGKPcW~ASC$Z%)ZIew+G$pOs`&TFn{O;ZsiJW0x47!B);*r@jj*lKf2xk;U zj{26y=ND?2ha!xkWEy=h=@9$q^98{8Z&@wxYyzW^y^x{G2_(AC8K`4?s z`vE=0IcIA7o{2Ki)Tiou!cx){f*U~1rysx@_esNf1(VlNma)_}4pe!Z@%)n>DDFVgX-=?A_N28D<{ViD>ZEtI_sesot4IGDL0H$_~U0miigQO>I`wRr6(vstAIMmhB4I*Ra#c9)*E{c%`~z zlWs0>mE#oL$)B*R0+RS9|GiVLaLe=rr3?HT=}Nf0S|gQK5&AFvA+nAm1EtZ=Tv%z9BDwE?aIF<^e#TMJ32y%|aL{|MBI2opfDCtseme{47)5dc< zI_T-+8JKRWP*QLfTP3w{rjN0$;_Aw{$m1llJjQ3i6h(Kb2S`&V++Joxu8GmK&;inb z{cMu~G?kHa0dlV{Ni?G6{ja?+^ZI`MXH^%I` zJe{=Z+L5l_kUiB+PzD(TV7jN_!LtR={peD4KBHm%>F}W3^z^pofBo5~Vgra%1|HA# zMyee^eO$X5gWUvJ>;hNi44hL-O?@jjk4qxMmLM{;Q@Vza<{Wq+XL@qIhR$$?`j!BS zg9pK0n`{@@mK$na60Jg6t=YDE(&uT)-~4oc_qzAP&#&HNsurNq#R=)<)6;<1D@J|D zK`^DXcDN2j0oAwYqLa&{c5{Cm^MAm{?Bq7IdH3o44|luUUthoacxN^OCf;>IdAkA$ zbWG@ST)C->ML26Mg8Q|)jnnWn{i`*&4ZmkIF7RrMnKsX$XD)M_rZ{8X5H}N-;PxIZ zYZ)^kQMxOuC%AhnMWfu#JU5X!b)b`zTH0&C>8xB)Z0BORnjrf=lkg+dFj{(=81Wpj zf&~MoPRc?%AC$UaE5{=ST8k(aHoy{=m)Qjvw_qygo~F_?`<=8TKDQ63+ zurEjgtjxhOaC(mrFcW&3*L?qPXOGWL9}oM(X-Q zE-LXT5yePh-4sG*&zI|oD}9G7=tCh_F`7!W1jo3Dxtdw*Z~vsi3q1|Tk%T6;Q--S9 z#?CI9tt2bdVeKNI^6ss#>xE*|;JyLIpyHvsuS04jH%2q`7>`ZA?NOkk;Y$LCM_X!l zE;Elu;RMgR;=6)OgUP-i@Eu;Qq3nZyyT^r;Ayv`?3Y53A?;wy6T!Rl2by{0U1S-@G zjnnn+`#(P3{lLs->Va4zGa(s+=)y^%;IZ$de0Lj(4(+Q3ou<76(~x*lk{u3$31ekA zTZJ6Z*(HCEvBWL`&?a4KQv5Q*r8K#t*^!k&v%t{Q>>F7@wOH^9a9eLmusYBMG>tvf zpl$A>KeWB<3=5o5Y`#hSvLFK_NX1)9Y(i+BP)f&ExVD&&7FdHZm1-(ATcxW$;2{Qi zQ$dBF-h6!ZcBb0w?qaOtY+z$&CvS>QwDEi5tzI!pQzd`bCndd9Fd(k?PfcxqGi0yc zzj|I^2xcm1>N`&aiLe!P4CL7Wr8 zx7fy3K#gE#Bb`mx8^itX3h8XN`$Fc;Lfl)qu#!$TUm0)gd||xL=6L}2A5V1SexFAn zP!9oNFoKhtH8nr#;jE(13hv9UC~HLUU|R@*_yg(9K0)RR-s->eqnr!1XcsU#rbu_+ zSfSmAR5#)js3cfN#Swl*%nRMEmg`}f3JC3NJKDrH@N}O*$Yd%} z#W;*ReD~dB8D<(oFpj<5pFLXsCb`NuhjR3LB;5*~m!yYkhO`P6k2-WSO0@Ju*>vDv zjTolumCGGU{Sd4XDjAJgXVDgp$KgnaBH8R~C!?~1kP5Vq?;gKxWW%fUMB-_D zU%Pj??`voOAy_ICvv$WUTGdBbFvrOQ8H(JR?*>xv4*#!GGZ)yv3{NDED)3jJ-94Q& zPj;aEyu?CK8Kta$WJ!%DLgK>2gh*j2wu8U4IaABru+)PXFC2v*P$!YP;W#C$rjhB2 z7P>`IdWhm<2GR@zJy^-v!-5ZWl;Gl-q!WFq$$;ISI|-(VDc)o8HDGI+g%l8L00#j& zR>(6oGD;PfFae}sBnvq7#|`0}N(Czr={ti4C}$dEN#{LEFN|D(Qk0SJq}C@-SLp8Z zi#p+kIbAdFlq*`=%<)>FfAE0NrI4Me&?LkO;aT4$3Kq+VMfykhPBB}KNG z3s@W!X8}7kd*N&?dIf1%;UT~cf%$0<2Q{Q=^lIBBTcGLz*id^t?7K1_`4Z4d+qEOB z=!vvXE%B1f;XuvPCGvCIbDHHex+}uPhqxT2RWR&5=v<)$(?pT~kY0SfSh^OE^lyO* z#Nin3Y7w^rMoaKQ#f?}y=J4engdwonz@34lzMZu_ol~%p6>hM_92O}FOZ$CsSp%|j zMT)(-`#2v*o#XeQ@nJ#I~Pxc1Rlt>wdp<7MLqCh+%_l>go{1-)tzun?|Ke1-5Tegb1pYjt-brK zc1qj{rnToZQJh+?JSN6|Ya)qY;C%+n<+?e@I4j1Ix)VO^ ztP(<-7lFp9L!tBPc!d;kHDPN2b#~$!io(E>wC4r~`VB6H44Gld9pLSESoGuoPkXw` z_QFVn3g&P-sguEj2`Re37EQRa#XmyAbkDjDn}%qYDhsM~xaNPJ+dhSp=@<$#q=~bV zfvi2jRK0(rk>#jA{pRt>WacyudLg=S;f>ANp|q2s`dS_!Dt6aT$Ez+Xlwqm+%=1pW z01_9rBS3-@gd|1eQ_5I!PrwYQIKLU17}dB90{En5@W@2aw=JL!3|(z zNW|#?1*)-Kfu*pkWT>fv#xz0GV3}n2d(%)db#9zcIk|mKljHtIt{jV&&G*Lm7?lJ? zx){Vc-q3N4s4<+_>^FSajBe6~={->ysrRpcVRNNBI(tQyyN7#4#=D1m4ZrA($6wUz zQLp|NPX3q8e*ep+zyD?P-~X}&=%0Xi?}XiUZ|`1x_=qTm z-Rrv_-_V-hw^I2(eCAkk49f-&!7*!!mNS ztER8mlbkjI^H)Zuw)By1x=tvXwArX!HfTbPa=WP@Y37~7(w0dueU--S zYSykf2#`99WNT;45kWQ zWDudRJLrMbd7V*!r`N0{gJ<*+YQrF3vo9%En*_9T03okw2<9!6tsb9fF zk1)^EHInR87lzC|)3M^+;3+*GACp3%8U&ZU?z1zvZOTB`ox3svH9MTKZ8E#Mxl!uv zE*;ds)jiWM&_RWPyjuqq&_V}A)It`vNBKLloF*Sdxt&NW2F?{y8B=gk1A-!f+qo!r z^P*-mk@JL(-QP?MaL{@=9Aw*MX(k?q(YD)6JPfn##x{Y4b+|<44INvf7^g-jxMg$x zfeg};@auU@q|Qh`05Y{C#4oB>s*O{iDl2JLxVzc7OgOA0MJe(P8t$2$*f|3=JVv2n z2_pGDjIT#<4zpZ{{r^F7lKMilwz+y2Xq7m%O-!|>;j=C4M>iH z!?VC?Yj!^-Sp$|d?Lt-sH*9GCK+Ua^zv3O)H`~Ia2Ca-K?(n#VH>z6uZ#W>Nx&7dqd@J;Bq=qnH^(C*0#Qa0^q}}z{_Y|Zk){*n3J|RJ z?YBM3Lq z2jmSw&B8z3L*Dt76-)$))ErJlu%C<<%kdLSs%gd#GkTqzc%seTDH2PXZXFd=6a5-P zq&t5MXC=v(1zaDM=ZJOWo3cO?s#}ciGDyz~Hb`HklDdAuzjfLB=exH^Y5DffD68il z7VX_cB4X;a_6QF>7&1f8YM%650e8h~XGnCXQV$+?&&z0ONF|pYxhS3K?(56#D4GLz zw;Y&YnhC=j+_Ncm>;G?zmrK)~XDq?=av7sAkMzZM1g+ywb_W^>U@~%qn(d;kiSWo2 za6|ZIM8fKO0YNbcjGYQh_Sx=fTOf%P0=)3YnOY9WCMia%@z8tR=Gsg~ZglX5hA0$b z7aA(_o9Xk#`~r58p?t$gGtCf|@HNqFT(Z}MmEP@j=8gdr7s({6TstM+-IIkKI9Q&$ zX7;-tFA*FE!CEK*ElS*d!&>h9pH5>b@Fke$PhV_=wG$TwNS$Hxgd-4j?ja#TD=QI7 zI@0tT+RsKm^9*x+-sk#(Jo@^XRCIaw5t(X#ef9p%NuysztvIuLpm&6{7?t#XJh?T% z7si8_yY1x(sBacB0&O6o>KitXR^BpTKIM4Rd4Mud57a(UZQk*CxT*3eG(hU!C{f&1 znwZjwqhJ!T<*IR#4Es7r57nx>H-=MVIdAg3^DWhlbl$3B6LrP!15jIE zMPX$1;|9M4!2==gbzWugy#@{^z>BpyS^zCLTlu+|a-(ScFP3WSvq&4Y8T19APmJ5K zXWneSn zC^tA>Nae#cKJKuT+W8Qg7+2wK?jk0ky;!e$#qaVSp4-+v;5n&Fk07yV<@=!8;f+OKrkOVc)$S@n-jZjXYw_A} zeSzUJ3dy6lAR#=2b1HF>M+7cI)9aP< zWX?Wx!L<@4f$5bEt%RFP!S^XCNXm?#<4NQWt%E*-N^yBPn=e=m%U5ioBi{wdwrnrk zBSd7siMwInqRrhs6V0mOT%R{=fLJ8(hHwOZ3XZ%gz{~Z^ptS8gZg1e4D$|NX0gQ!E z7S=63_Hw(y7J15ROs^t2h-Uo~rUxbr+6WP=2C}bHdV+!v9&py_1EHHMk8Xiy0cIJN zE0x5l5JxzD8X6H{cH35R_;KMYwe{g5*)IBYa#jgu^Vo=Zc!rqCn>lr9Gv50>|F!<8trS-$@tOmMxG1n zUxb?Pc56DJrjUs?@#%!eIg~J=m4}C%8hRH<#C(AN-{7F!z{d@%Nk3FxV}ir-x;@Fa zl}BgLy`A$yE7e$S^0?bk(Dc2d9r=>{k$vXyD=NN97k*hN4qVsAs}oTo+Hh# zYi?50=DRTWH8C35(l7qdF0(E6s ziEKB_g5J=oa*yv|hy8(SvfUU>(62e>gWwqZ_6 z;Kn?ArP?OkRk;B83LtCpI$MC{LFFjLt zndvH$53vFwlMk^kg5!`|qrh)1waWv&4ovIUk(xEavpPV`7BBmi)e4g3aKhwJQ>vN- zq39kwBgVz$gW zkZHWN;K0{d3d@6;Jdbad+x2+$#H4RV!yDZi&>F}m7BXT9(V9{|#DT@hg>xi4M~dv+ zsIBQHX(Yp9oL5@lV>*K2gfgv}{jL~g*tDRe!09OT7X{^R0|O;U8ZK#b-t1oPrA!#w z0_uafarq$%a6`JL5d+-nN$BjNoB4&v)jD54y%(E@-$0&p#XZtR8>q4U5Zmj=io_?F zp2thHMXjgfUh!MYY^Z#Mg}++N#xF-M^W+Qal@{5;q;N#E0dR=;`DT&pHxr0eAPvOK zH?xx6ELMb@pn{c_xEv`3YM&EC7ne0q|9UQATN4tTWk?0iZJSs?J})Y%%5RSh0V*<3 z@Hylk>4ohFl){v&3AQ4L{iCaYbB*xc9-r^>1P`Hv>+#PP%it29Go}4t>)iLn*g7#z zteY#w6WMTBj~goGD~&n*#;{51Z;(7+(7-T0^8Nh`C1Pww-k?l%I+v~Le!=YO+`!Wn zecItROl@Y;aXN718=etkL&^c?4JR8wU* z>U5Ia&Ql9|TSOm_2tVo}hi8((obTa8dihQz24pH zujV6Ltz3K`_{Joonq@kL%kQNdTt4y)SC9ls(qc&2gFO6{MoW8D$z!M&o_)M|cfa}g z?pM7XT$)G-f=?NMTFiR(S1LQCNe_;_kcg62i;3hn&ropIp4U`*Ww4%BAWdYY&r`)u zO$JHr+tkt*$)2Q`EcgR7J((K7{35eS!jsTmL~})!CzdN|O=^HT_9d4BT>j#5FSr$&3x1ULs*B&D58070O+msqOH&NjFX| zJyV^Xg@K3ZM@tJ#L{X+JuaZu*fSOCruUx6;twi$`D0QA~Fds;6S0&2e=hC!_42;ML z5kGuaoTWNK-QDzP&6F${=Pd)q`6u|vjMvMRlytFn;JtN`_+}esii64Y;`Wk(3uTdy zfo&J$XizAy$+NbfnVOF7PS@9Sj}h(Y&O#m+7vhR93}R2dbEG>smKg;2{b<-5+9ja<@n^Y{fQe`hKY z)--zRQ3X`DeBQzMVo6uDKU*a`-DOi?s_=e^S_*yyE( zQ9axdcLm5#cEep#U%23cI}bAURrsv!&788tlWVlx5?vqFY5Pww4WQ;Ls0M|NxxrZ2 zRqQ>eh8l)s$5p(c4Yb_~1#l;3B_b|C4P&?B3*z7%9l@h3rwy4%VSs3N)e*&a^jJz* zh)fyH;Ni@Rvh|Bm4R>WXr5qQGY6jVYv`qkGWBmose`dmV}=%SCcLGnZ73@#J| z8N`U7X=6J8+z3`qXE#Ps;!Suoi>d2`fWw~OP&61Y_zbLHcQ3?$_t~q@xW0#a4cP0v z_fW6(7}F-KUj9MK)VLn@?S< zm-P6~JCI4+9o4vpLKQ2^*MVUaRJ-S|Pc8KkUbZfut!Nx^<#XWCmfQ51-<-Bl3 zGTBKk8hE1=%%WHqT!1A7Dd&008__Q8Eue1wZh~F)9o6fGyHe99N8f=-gr8fHzQ)&> z(@Af`B7co*6tIuvNtsf2^Kk{+;M#>&FW*HMlwHR5EWxE*Gmu9+$Vm*sK`fy1=Rtx^zePLj6zF5oq5%1sFMs+3b zSvHTT(17eAuI@{Q6DvW`AgNB>BQl63%e8~UDYTQd$v}-&{CHF$X`Y7$&{uT>_dOVn z=M(U9yWY8D0=ZgH-|zy?EWS%T^w*}U>YztegY8u^5ivxo6RddA#t-t z*N<_Gi=)^S5h_q#Z+8jp^aM^Y-)Y2Jmh8$+efUD^AyDxd2e<>eJxEif3>p2Rpb86j zoQYw?Ynkkd^Tg5hY35Wr3L5xs+uQVgC7)# z&bHDuRMSxEQ<^8bhUM<=d)N2qn$*mjk}L&I6Y^|D`x;Of z=U&GlDPe#FZ$=l3FA0dG%z^WwJSh70`LtYxl8zd>U+-QETNfBlLY8x7;-t9~rmG=7 z(~Kg?Q#cvqJ>W(Kroca7Z;^KxAO7&D_e1Z0{Er@ep0(W09X11jYgpdm!3uJ=Ni2bY zisdz_nFXcu9Tou5c_sp+&MGfvatpXatOJj;8N(m4Kz8(K<#BI1A2d;|J0S3znI1O_ zP=|ez%qmeCt&@?(EYvtvha!`i!|^R#FjtTjQJa3y$?A4@@L4d?^PySj=%KelSp>JZ zQk<*a*#_e-OoL5o+XtZuLT{ZG5Ffa~^igGKy17~|kVUDh3h={SY&&|TBljSSmYr>J zE(NJI>NG8`s2^FZDDQW(GR}u03#XYDSWu{ND8tX#$WD&-bkYumkzq7`0^`E%4IRoq z-J|#*rn6!Je|`1Czu&$7y7%g>sxllhR?)u9LP5eWCt4b@A2uHI?#!(wm|4I}SZwlV z3pw*JM$~g-q9nF89m)4pf~H(;;#(x@gsOCZ643&fPkh)3jqQn+z7zyKl!yx?3tAlN zuSmK70v-1rx{z`M?E&{6DRa;sXpsFq;NgQeNAj6HH=jIsbENy(bMqN?g(2}{2!7a) z&^coQ&Aq`ku)AZ;Dg}50q&Xi=VMJbxE|Hf3{6lZNehKoE+6O>r^h#3wU>r}++TOTm zTeNT5y-@CXOAE(i&ax7#pOMo$Ot5irS6-D>592g{Hl~1D&B1ljgRQ!_+<0mpizbnAxx0Z*yl;NZipScgqk&l?xI8YqY22v#go84RmErM|=W*2dg%`aK&r(kX2 z-`t0@6GwSoXyp<}y`j=iWz|lPx69KrQw+-Z=yo@}`4-64R-Bn{$ykk{*$09Nd=%on zy{PP<*XRP47D}yun^u|RYDk_s&kpE5*U{4Aa#yWI_#9o*ipz`grn-f)ACKuNOIt?x z82@HD+dgOFJeV&K0^?3$lG67=_1wa%M>25H)_}4!g5{t;O)ZP$i)r|hqOZ-tmMi3| z$&W}N&4qmc&mOF)Vg#rj;CXS%7?c>`(v}sy?4%f5T$w7wuX?O^k{6oUg%E=%S-fy5 zYAA#}NSay^SV)ut1IkJXTkn4P1=Vij@O|}&eY~)O9Rlday6l1+SqTE>;c`(`W>qX; zXRR-2TDg%_5_LSExj};5kcgE_+U77_%y$E*8OK(@p+G)~ijpC(<1 zA2xkof~h)A8}Z?xqE=hUvk~fI?5~@pgmbL2sKOs~8>XI)f+X>zk%tu|L-p-NC<{7S!t92oj*o$M?w~_M3|A#6+EJ%Nl!%=) z1AgGmep(sK`IKyO+1#!epVUjVRT=4!pF|KVP``15mnFAL$E(~YQkspT9p{r-N`8@OBF#2wEv3}ZA zgVZoBFE6bpTOPvec_z)is>q=Hw7cGvLDC~;?%(IyLQ6t3TWndXZMxdb5$^^aD66g< z9Uq?_9X}qN9HDAk|L&XqsfwIW!ksOekGa*;=4~c2Cis8o%ETTLhw=E(zvmw z#pE&@gQACf9{3!rhI`F~yM)RFgZL)zu9D%Xyk?pj3s>lqcPt%TTj-0J)BIZvl%t8s ziKGNIS4>c2ZoO7Hm_B2-o6CqL4xM*W_7Gc*8=cb9$`@z)0;zemdFgz_mZr$rucFX5 zUh6KN26MYhS?RlflrZi9mYm^gGp<-(BWZLLcc6wMs$r&z)6!HSOMtDV`9k?tnp)~4-vBN4!)%g=XMVxU>b(@;Y^Xjps~2b*i7!hB08nD30p9GtNXfm zKB{OHyM(9~tbXYz1XTOQIl`do$w|Vjp~pR#CG5eQ9?BDDI15`4b-SAUOAXUR7R1I( zY*6neXLe^Ky8GyMV`PuIyq)DYznasrb8P=`nbMwgLhiHf?pKfQX+ zNYnLlVc|K+0vao55d?##JyUxu!SpzrKfTM05}W7W;i2E5Vl>W?t^?VQP+J{uL|N^k zya;~ZVW(e7S< zF)UMm2qkTI3wU`?UOFGjgm=7dX~k50F{ET)k51!?JNF<;Rv(?zEyx>E#{ONh`t9_8PvGE?M zlTK}Av#)#Tk(@yD{DrMOeuzJdM!KpM;pUxuCWNfdk_AyJjM`ATZn>`@b$p-fe7G62 zxi@t@5=?{CPIgT}rv#p0)i+7*;%DfGPi)(*x$dSXBwp|O7Ln6Ws4~U%-XX7VYcwc%D#_8x^~nh85kFd}@`Bb# zQc-eDJCgb#JF4lO`QYg5vvZc~;(`h>krrz$S|wKbN+||sMb``o9d#g(s?Ovd^zpvk zv_gHp_Hn0&Kore~Tj8moUv(h}PF%KB`eGK$V}@zYgj?#$s3+Tp3ZtGh65d*(OX&kl z!K6)S_JMS|iuXs@u$^X|Z_hB*+_5z*?YERi1wkc@InXEi3%Ku^aNWp3(c_7EADUXP z8m8_pXt<&dsnV&<^SMldPG=|GZpf5Vi+wTrgy`nGx9?uP?iJUeSRUPibWIn_(L^Z% zq@KbF0y&#a9ScBUfW2EYYEp1h30HyiZq1sr;m&YHOPijfn*Q_d{^RD|r}sbHK}$7| zo?Z1hJOm5Z%*7>DI65_#j@;I>oM=GVL$4u}K0{{9_3e!gQgy{?u&c&BwgXg-1i@0m zg8GQ=M--7uQ%?rHJJ>>(kSU?B0FtdzXWm>?rJLn!k7NANpWV|$xP}2^l zd3OZ1M-5@HDM>Vdx`F0W=(~{3(zR8ltRe%o zCuwOD1O!OV6EZ*csv&oi>WKM>Kux5BzO{C!NghjbrXi+-T8-gy;dFz#K=XU#*t-AW z?wfBxtQnP<{hV-@bg+S6p_wyXk|koZ{A;7hcefk77eMKmN*D|XuvgD#FRAUdByr>Q z*Tx!2T?l>4HQt%k!+RbB7j12tbdwNQPB{kOahnzzK#DckG)3kbrsXk5mQu;w_N%~o zg$ULXybfrVKyFU_505g;%jF37eO**e29CaPIUR+|snTKK4lFGy{{(h(M9N1wz(;De z%~UL)7p2VfNp9D&VPvoFEhNxwS;R??Ow{(Q^5|~D^iG{IlOhJq$*f`OPTUV+59@^7 z`S8R@bOFpQcH?lcL&_*7>gtv1+~mZX@cTXq8=gSYlRGzSx{rYiJJAwa5>MpYA`pp6bnySVms9CBi5FXRmk+_{RJsJ*uck2*l;j zQo#1z+YfiRyM7`R!1WVh^5m#K^Q`}>0>Fs|BDARGOH>0jJ;Df4VxrKgQzF}d++S}N z4NOx)^oVE61vCq=p^k3w_t>|7<0{w%=wSy8w-1d}OSjnFfsDqQ(nz*rz$IYyP5)#K zklbz?QBDOL(gn60=Rm`Y&29i@JZLVO@bEdZz39P|9v~4d;R4yxBW$^e=Ndpw5Zv$- zufz{el=svm8xgPcf+k%j{lOfuA9cjZ`KG$2RvA z`vv;S)yIqmGaTM2ZFuNQ?NEkYH!OC^g~p|tgm6poIl+pRHfej0$4vs}8|(~Ll+n0T z=x;98U^jJ?q%te8nJ#jSty4Sj8)(gMBjz?wi}|WhxA#c?0jnv3-qs3Fpevp=b^dtd zAB|L#< z=-h5l`Yu(oRVEYyOj2P{Sy*?IQlWN9bC?EJ(eu z*Hm%PcL*DbMY*=~o7?5BRY5mxM;oXWOdM3waD_K^$wBGVL9V2`8A!nqLYuC4-~aLP z?guiB91Ntq-@}n;Pp|w%9$_{^HF?A^uuDK*XI#_=A;mupr z1bO$Ku7}VSSmi#cvO)x*+`hPgcl;(>8l4G98?Qugp@%6VFS4dL@kiZ?V0WO5b0>R4 z%v|*jLyGsUZD;(AsH+ASx^Z=YGz7q`r1rcbPbM@Xaw(@j~P^ zo5D$q{*R`Ib;iV%vKfp4N`+PCXz;%LYHrmMe&S3T$8I*9DgE45+bc zvMtwrX@c2C>O&~}kis;aq({hBTsC|ze*59)SMLi>&qN8w%id5|-Wyrfn;C^`SVmzb zs{@vofjT^2*+ipyh-KSH6&cpjVv6Ih^Xv_DoJv&?6htum;Z)4b0M3?I+R;@#oa=Nk z!I`?4VBU39ax?Xi0CPnbpfWcj@6C|>oqoQX3SAxk1XFis%<&vVj3EJ2;b~azY4;kd zJJiS|bnyOs85gS_bq9l&*bN?HrE_hK-iA%|*6+FL3Xf1q6gplMmTF$cZ1G|m1+jOf zjrXs|krxfinrC7GT~g%x2*?vQ4ptF=6tg0KX}KiA6#{InA`BC4Xqk#0`~uIO0ab8FOcb| z2>bt_1eHE4-}=|TGS}f({w65l%3^}Kn=-i^)p-$3PXJB{(Qi-SN#0nJ7FZK#R}o-9 z2@>+Ys~7SGt&BF1A5CPD&q~Ephe`p(VV;rQs#*d$sLd5gqc8 zawUO@k~|!sLlEG8eszC;_x23P2JL7TkuFs)4|%auXjFSojo<{-08D+pfMkC&euoOai%MfjZ%~KxHP4 z(9BUAW}C!$3=b-Hof%^Ju$p-7v%CA(@80j+Tiu*HI9pl(_giz-RJ8m~@bJt^2dADL z&1J*$;bda3bc$P5OL70|%ok2Bw@4yYw|9Mv2nQ5+eD6GTf$g=<^f$eTGz$r)l}&7l zElw5(tgR13u1VRfkixuheBL}yc0`v`)3XTD)6272NFar4R&sjvkb$G$+f~hrK6^5nYR%Y~O{`Ea>&O-9+{aogPiY!bZssa64Qaf3H; zwB{%BJz)r@fY(*Su(q?QxhQc-f@##)&e&Sy;1~p%H_-iKv-&nL zrq|)T;N`gv`1)Mw;WQIXls(W6aDw65_MGm~^(LL#p9IVMIr56QF)B5S0}9?2vO>>J zt2G3rW`}uk;fy#M-~i3u+`swovqCr}t5=t03fQb&tO0ZM@ey`y?DBPTMob)dse>xP zdFcK%982>E1W27j&KN=$x}f37WD;xo$qkJuBtOIqkq++j#OGOMMv<;=z&_0Q0uzvG zG46VA-`)R&d=;*$K(J(arp@`kIrM~5G2}Bv957EEI3p!%M7FXB(>3!p}u=REla z6BeKXLUwRSV7ykGkS0{yk7q4heW*+>^4yh|{XCex!V<>A#wf50D-%)k48OpZ8i<^w501Su-eMFUb99st1gMK*9y@Ua&k3hzl{S zKLjM`QjE9sEaMb&0F4JPlci7Q>LB{@Bn-m2B-1gfd_} zitFSF0AgbRb)+hUrvz~Xv5}0|%*RxRB=V4j`u`~N`<@pNA(j*@H=wKA7w%?3)T0?S zS^za&eF|!r=B~(lJf#ylsuJET$B5B}TB~qrc%Yje1H5DDz8&vG?(gc@!xXL+md-d3 zCsW;^CYw3HRfw8BgggFf9}g^RJ{wl;2e_-6Z3h1MbW`nOQMTXhQO1%yRxtFZ%uurV z#c61Qgfy3%@f`Uq;4Utrt=debibC@7z^vVS*m~f;jt-^DCW%zzQvIE;+Tpvpz$u=* z`RAM0VXZZBDDZrmk4Z?Wrlu{0bxuhWTu?(M4Lp{M;09zp-0TU4w2t0P!Bq>z2_Pz*UuRV zm;R&GIV7emZj33ZlEkK!vF)Ae)GD-HXgk-2gs=ST@Bi3eJ2Jy7{Zx~{h+lVYl@l0} z2F1&9euOxa-=M|mp#ZNgqmG*6Sr{YGc>wM*^(Ph$)ihvGQ45>amo#r;S68M#7e;g9 z;YywkAq+I!*;BJ!}?!Chi2GdY5i3KHY;5#OhQ)pmQ#* zoq)&$g-`}uxK!)|gC3%RV{9FD0Sp=gX5{Ov%iny95|^myWPMof5?#~-rG~r*1XTEc zr$^#I+H{>}YeZTRFann0-lJ~0&Ttl`+aE1uskV787ND3t(E6JZtC1jhW)Ep@_0z0! zBr_n|^$SE}Y7~|v6DLv`AtD$M{JgKYL}-%?u8ci|(~=0b{12cTrY`~fm9)BUb?eqC zWuV4VZgVHr^2f~I8e9m{I#0fU3yE(2r6!@vYB--3JTI(>7GZ{IronNv9$z8keaV{8 zocRHaXjyn~xe#>1D~558Ni+*~Jtvc46wMI4pL><_%js#=KCdV!bCh$d`LT|ak}5kK^xRX_42?X? zRQSH|d`u=O${Kp&G{8Nz{NtnLA73LyH?2ubqO+}n!5pKZxFbRv4Ck@XqxU7N0f8O3 z0*>zUWDD@stw6S}KyJ(@HsIeGT(%2|h#yPS8@`6CXX*&!!#mRB#sR`H$?idwvdsvr z1z&HDP3ILYeLoM4iBCJjXD(g^A~Q{jD}CrwOVpgJ8SojL@Rk|Ss~zww@*>b2ffHk2 zMmZQ%12#U&JCqEm?uz{yNHT00zT`?d2kd}RJggAw?qK-IBxU*3Sz<43F=KeU9VHS> zpOcZ3sW_dzuO_|}Be+9d&Dq)2M&%q`r?w-({QXwqnVP80F;axT@Y2rtLe?;VC|$h# zx9Qr;F8QuZ3WyBWqlLcYoYHTV|LT9jNNBPCE?DRNaC%Z4)~`z@vaHk_p4d?kCk@`6*^yEFKc7J}Bfa3MU3mi%O|%sbPXo zw4LRA*|U2Z-t;JrG>F>mT=5=K+XjZSLBo85fkA60vpeI3bvvJne*ZO)47Bd)i|om@1u?Rguh6%c#W>C(t_)O~NBReKW-GLo}^ zVZnsiw_rQ)!P|+#WswBgu{br8qQJCitENLP96scRi8RCeI_b+ame9oelkwn;Xqli4 zJT|aZ_TVV4S(x=cFAhzBy9q1bS;LK^<3XV;8|^ii^Uyb-2PDFn>N0UBY6$Yn5#tJ6 zeY=sCxj08POmks&FAG}(xl2)Nz9>1SLJOmyu1Fv4nA7>_k_2(I)4;3&Z&i51_5ucj z;?hw@9J(xuxHy%%`G~vgi>V43x4<#j2C=M_qiV1YWg4ogLp=N$a#}o_Z|108fr^sc zhN=3ODXVf*8=gI8=DiYO&(X?o_n?W;4WsauiH^HJg+d^=5Z4Q(smM|`KpLT5muf90 zWD%3c!4y#cs1R>LJ#W+wZ08rJhLgVDJd{SI?*8w+kH7r-9-KIJht9#`1bp+Y_3FIi zp`>ukXaM{;tr9|Fk61{hE4QsdqZ&C2si=`#XA{b5?14##E2a z6Q%m6i5!*_?ugT@dZ81CNCevC3_LI*8uMwP&qawUt6ZCmol;31jAzR2Bkawf^~j-& zN5G4plLP6F1||3DZ(i4?b6i%0DsCQ(QX~`z5D)J^E)6(Nv53=JFiTrMx`wTS49p6} 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

    1W-OK0 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 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o deleted file mode 100644 index cfcf73b4e0461b789dac49c9d9bf0da26a6864c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 755092 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 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o deleted file mode 100644 index 051dc971ba688c0c1963d3a49a88749467a125c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 750440 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 z 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

    !5CN2u+d!VaWD>=OH1Iv|qD4r~BCjh*iRXX)%= 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%0D7`FyRBOmbbrCxTKp&X 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 DXQ=vW diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o deleted file mode 100644 index 653cacc07dd4916d32991c7f033400426e96680a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 750448 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

    9TT=8dG!Hq-sr@DeJvtT19KmWz%J;@Lp&7 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 uEy=M=92(ra~^ibMc~ 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

    D52@@KUqL0V^#rhJ3@%9}19uRks z)#@`;5ShN52?eVfnf@uH(;5daF4z9ji&qEN&yPz5lhA2_o?Ks`a4jpF-5gax@5oB- zPzhHPcfEN(xqScb&8PPtctaZohfVw1AVE~v|sBX2d7-U$eqUQmx!rCDudNXyhULrFWu`dJQ7RHrY z;>4bE<&IuRmB%2hflRLvtTg~);&~afth|sMk!H*+HK#&J5NfT1GsHN#35*o)%k8+Q zhn5O7b~>G`7Ml5JXy#)_&6XP}eYm^uTQIy8RS2l&yBR$&wIP#;YgvJnu@sghvv?g} zt#+H~`l-p-422iH!V`Bp)B!L3DW~BC;wZug5)L9MuQ!Trx+xk-vl!r2*7BJCUN~}0 ze`dcM&KI^UXdPOG#Hg||ePBK{4Y94e*NegA3fw)Q_9OQwKSYsjNb7XU$hHQtjLp# z#q{N=3o-SAdX@FG=qa2AtsTw_Ki@2I<8Gp{2Bd+Q*=Df^OL7x5uxx>=0aPI0HMMlQ ztbzL1534qURSY)Y8A;>w$(u!qRk`Pp!lRA@C7A>Mk)qdrK+8+)O|Vr-93MXUcUST5 z?eXOc^XumJuL!aGbNPh~ za3$&lE)@Xy#HrCfHa%+P6r==_?37wRAP3&i=_8) ze@P$Ln4D#JT0+}JUSp$81D=pfGDD7Oly)A@W>yvs`qidY00klx-OA(w8s1G&ew zL!0MOHolsjZjdt-nRUO=muV`oPYtU zk)7xUm(Szln=XcwJ(j~yX|%Lgl_aLkpUqK$?Ggz=Oe*72)2vrNrQD%Rda&S0#3^bj zrl8+GM@3qDURR4%!FpOknoXcJKeZSlwQoyHUsR3S@B`?2Fm-_SMP`eH2O+=yK*h1D zfUsIi4bqad9#{{PZZ~`x@=EG+!bw8NU09|Ttg$ji$PcHxEDe-|42~Id4Yw9CK~Ijw z0GSlhTnCbdFAH3|*E=8`Z1x_1I0V)f*|3^U$DKG7{a_r!OI(vf&kWm_TnaFxQmqr$ zEFkqVGIV~9#HKV)pTk9{c6I)Bz}KeSI6L=Db#@je9-kjAEie&Cu`gnIs@K(jn&XC|P z$wM`&#gwMe1FjHJIiyW@d?HzSU=O(Ky<7-fR4s+Yx>ig*DnT_hUv?}$ThRsWUoE3u z?y@N`-S#-6mc)<12cg~GEv&AgpQu4Ty};BxbmXczs)sw`ZUFVkCg7J`Xj11uaKWAT zD)v>Btkb!o^)mzbr00(43Z_A0et~HKEnh*sCXB`%#=@>*??Knou?#z|;thSE?N+2* z8pNzb#2M7FUMq|s4&LD*Jh^JVkePG?aQae}QGCaUg@%R5l(`HpEW9YjNsMZ^DZ6dt zI5DafWDC;Q=}(af0QN3mYd%!E1xgKku(=yuND=A3ksuIdo@_8}rZiZg!bo34N<8FC zsotWChG(RKuQqmB;pA|facwwk_HdtIeK=mj{Kr7$$Luv`c-~#TChYZSbXTv<6zrj}ic5o$BC0fX zestmx`-&*9=MkD5+_3Xy{+NhJ8|k6Z(nENKI<3X(`Enk{dC&*%Nd()lLAoA{i~D)d zq0}Owmq_|^a`Jd&DMaaBZ@Hg@N3lmr>`x6Ew%uHuv>H;Lbr?DU$tnp{jvuem+WOdyrBUm62q>kINf4rlqVkBSRRRPI?ihv^B0VfbogC?wgXr zn~zIexoZ!4y?kH&di(0{c*mQ+c|*S)Uo4TF1fw1u zXfdjy%62i#C0(vKt!L_^4>#`>ScT6J*OnVTzO8Lk*T+7r_6!vqkO9NhdGza2+e#61 zNTyS7SF@^Mxpr_kdk(TL6{xX_-;Qb|-Sf}^`l@bGG6|O6=P&7$<3 zQ0BrM7v|K1_#r)FZ9tKTvlYSS-Rluu-n|~-IJdC$+TTyk9{p(k1vofoNRS92Kf*$oi7*iEd%FyF1Gv zca5PR&%>_UMK8os;52RL7huey%oa3%xF)>>eJ`F%1K7U?6e>QGSh6TtfCR5j&n|vX zpd)1poEN1t(XTHj-AYP0RxZ0fk;gnG8!5qM_H)Y znhq&XnZvQCxL~dT8_wr2+yQqIshMbb*DMV5&|9Glf*;#nwQ(PeyD$wlsg9UNb|geM zIw17cX#w$p-^v)(hUVKRs|zGU8mbR`cNg1^Uh&9XzM^FWN1RI{wML!h>5BT1#fmb1 zS8L;ZD6%+P)^YKUjqK!TPbckA7!gjVPhmW`zM=>C=XWSFh{(5*C^I*~JGqqM17rC9$pR`Msw`H05eD zG)I0;s6zMW4o$#{Bf<_i(sxBmUkZXAO2P}2DY-b%Uy*YE1v>6MbfKj9*#jQmS8AU< z&>;JJz(;r9964n6+nK$`PY zgbczQ0Z9hBoy};vc?t4U+V_Ca=tiWWjcgMDH(bB^4n6o^@`frHX z4ijr!yvbK(wZk~g0gaiQ)=O}mbUAA-uC|_G$D#!x1CpK`W_?yb>ell3lpH1+ahLnB z9Jz#fivz_WZ6Q@6VA;)4&>|R@Vs;M)+5D2Veg;k#4#{J9CvlXIlGd$&)Eg@MQeN%B z@ox3tp(*}kTy(n{-h2(@YAeo!w`8oQ(A)#T1U?G!-d>bD=ry{4rG--K-{(z2xE4~U z&XfFk)PJJD4Zn&FNlT5(V}` z_1xs3BN;fgHJ~buU^(b7)5;?CVi~@q=u7j6O+q|BqJT6P_5nP5FsOp*UL3sFB95e13xr zOyd*oH&##dqpI?yfaFekktWAO<_7uU0#kRQOc?U4=skYeA>`5IXGq_8Qqqg*7jDB? z{OpEKv8&wSk*F}eNyk8%!ZE-y4O>@L*Lotjv41-bPa<~G4ETX}?>*NnDKL>wsV0~0^_l@i zqe5Gm72UQh^-yKY%G(ua3qjZ-Ty}J*x^Q{d_{GKuA<-kOVW@VP7d+fDOOhaEJi$a; zDrXi){AvX4_lXl5 zG2rCPaMlueUl`80etuogGY<~KjO>0*4U^-*Fa$R3BbSy9jKGH zBd~jmv*4AyrLke(ijgfPcSjzL9PEU9zJ$wzN&w0@00lrQt$#)td8|qYMTTV0c?~z4U8+Q5*YmIEtuiJqdiYUXG%n=W=IYQcg zTTAn2@TK&IhDrWLa?);ILJsK9ZI%c(J${dD!$>%Y*f%6}@T9u*UkPmGLQ=RYm8RZc z``C6*VF@#_EFo=WUJ=Wfc3y00tc~x1`CY_{v(fKRI5s|bco>Froio)w^iom{Zbd*$3$KcjxzlH+@a;Weq*<&J167-gH-vFI!J75S$WQ z*0P0ZJrhAOGaAgu#Ub69h2cKBoj9ZBHHGyDS0Npc6v_8}y`*#I)czr?>`5oqKI`tV zWu_}^BkBw8(y9)^O{Ypu5Q#Tn8D`~r@rC0F9w|I)YiL@^-u~Fr1NV~s<}Og~%{$_* zEjMSkgAOZ`ui$ukfrd!F@<3a#<|j9uVrpv}+5%K%8l)~?*k*;A4rz6D9efY`^x{50 z;OW5*w^bz%`s4+}KR2rji>4`7&R9W<0+@7dmfB+lrpLKFUdUbkcXr}@p>ZV1 z$A+rr@aCQVVpyi)5K7wJT)Bv?3QdSmi|!C50xkmxrqqMv?g^c4Mi8v?U3z8S}6Fzb{%iKflKxigsl zjU@CGiw!X2X%(SaHOro+3XD8DZFDAS&~Q@o;|HP9uSZU)F?icTu|8z5w^^ z_^;!{;L$ea)HZf`V5uo&Pre)@(jz&6=Ee(*8b8FJMWbBRig5GJz7PgBW_5v1ov-c= z)FE)&rEfv)SC{z*W$6NIMlK18gVhh8zP9NpzLf|j3B`HAbJ176?C4>1zH zz!6=bKOz<&HoEgMaq^<6S>mSvvw{nxpH4vl!Af?)8V!n&N(QuwdNOBvY>t*AU(h=w z-xL?KLn#uf%bD4K%kj|HS2ruys?ohkVKHlZQ>es48=IqgFSQ5VuCKSf=$o&7faM{O z9_v|EaA@Tg53K|Pr=S`a`@BPiX>x=r+M=WeZZidcIV=q? zYJ82I5*=61;?&)mEv#&;lB)!99t;D}C;AJx!MbqW$U)IbiMbWJimDc-?k+dDZf#}? zIG@WRw+wdD?S>mUweS@?{fr3W+qdsuy&k3O&;_4fgA&azR;M$C;Y*{0qXO!*m{%uW zn5Z?QCb)L>W(`R1)~q>K?fg@;w7WT~`9E&oecHbN{Ncx2D3&Htjl)WIwezSbTr;nf zQd{VOd12IcIgQ~75Y>1=ip2k$WW-vj%Uu)M=(E6m+=DskHFxVKDxz-tiwh`&F3djS z=8+z-tT{(VI^Cq_F@_g7q-zkWE0XNZM%YR3)A|Uvqe@1_dOtROd&}1#HV{S zARs#?{)a~y!sT*=BfTyv-2q3RoI_8;Ih3x_yaP*%Qagq{i%~KGe56)POzHYZQ9DeZ zp(G9I$;t59kw)9O6W1EM$P%rB4L8W#BA+Z10&7z}V4;E{ zX!`^b?dlvgy2Js(R6d+f^V`3;2de^$M}I&h?!m!VHGefKTiMgZ-6)R-Ha+T2%{NF^ z4Ko&1-X3L2HV!XBkZFDB)l;aSuROH$UwrWK(1U5OMmlW#XW^><;xoBz6%v~VYtJOt zY0vD#SlI87VXT?a z`}&93n-5?AI(`57-6z*Jz4-~t$ji1w_~ierQPg4=>yz}TR00r)%b%st>D#v-Z*h0~ zM5uAwC&D<%QGMZA|J{UQ6F)?dPcglQ*G~)7^avwF1&E{>r(CrKKXAGAilhb8WQZQ| ze02f+0IZ#-SNMDETfcJ^QYW;j69&GAw_Z;JG~5AqE;f`ls>K0gS${J=*#IOLSVlIc z1fGdc83Nx6DtxiMnLuNkn()OrG)~6D8a;l!O7}io#!o#y8N-kCvX*<<~qeKgZ}8Bc!Tvuup?_pE3;@MryhfQVt62-@(_f zP`02#UUhQfNZQmf-~e&p!PmG)D|nOZbrk^BRF5onczn6?);4Q$Y(ufYBXUWLg_xZ) z+XwlIg~XmBnceq`Wgl4`;%2wHL;uPeXCFBB2D{TVx9zU1@tT)(sYp9@cqR_>hZNOUU zD5?HI!d$w@G4@WVv|8Adw6XV*aG!t0d^Kp=dlakvdX7-Eje-W~AZJaTKjn%A6WNOv zN&tN)3wFRUiKL+a{w@fo?44-`6yvdDSksoNu$&8^Ivq=?_dcyFR^u=pt>C94)M^m#7a@U_s?$CDAR-2$VmM>;~n> zQmI(wA0fb`5;xBly+P|JCR?q0r8hLZt7Yy0^(FdrGjxt!NgFMVS}F00cT5R0aC96t z?`YQ9^zH8k`)CO+c^d`|q;y&>%G&wa=>Y2(osNw(U~lMgh6FXc(0nOGQu{-K#nee`A`ul1kQGgbjZ&1u3HtVuT4z6_AD%SzD#W z3NeJT`^6c2*|*hZ=!`(wkm-pGjn1#`g zR<##Wp%HlcOGYB~H7n6@Avbr`t*+!B=Cg?3C+97d|R0IvG!?ZkAU46a>KJ%O*E=lnA>%ahdQ`TgE!F` z%K9N_jbO{eQCOI5n=LPZqpNx%7w2q-V|6yeWb1s?X6YfR<_W!f2Gb4*Qa{dJD!OW5 zeRzSXyL0du0|LH~A88nO5byT`!deXC>5l?unC9LPslBr8VDOCY;QW zk(;sb2xTmxPen39^D<_O7t1(_vKt+~e?88*NS>WJs-t=IbxDEir^xmSdk1YB_v3iW z-C38hsD4^`XDGe7&KGC1uExSN;sscj%qhxnt)~jq4cs!!wa=rDJ+m+ht*R9mIE~Mc zqEi{6dNJzW+2>vYmv6w`w`9D9>4iE(NK-n7U2I|*PZiYDdg~wm$W(-1`J14b%QgOLHzi^@Y||DN z#tOk}PvHpOS&|-D6KGcvA3#wPiUHR{)C*b}9YMpElTw*ZCqdkkgfyu5>6yl8x1tB3 z_Gi01N3#FbC2EF*A^?#QR1eI*Un91CM-9&Xk?8`^gi2?JGTl?0mpKZKke#EcVY-=; zb+gmv)Dv6c;a${~@Qh2t$vH_{u&yLUdvws$=%Y>jpNz^NK9KbO_Uhfc+qbMxB!9IJAVR8qvl><(ZO&%txJO&LX*dzLvclU6fTG!pj$ z@3+P|ium~%Fy z4mqAG^T+nh7;nS@1fJgeokL(Fn9j+IP*bkVOIKi8Ing8X^fvjG$G5gV0I42js6w*v zheQH+N!ww7lRq^IYzm&A&6^ozf0DLK_ICZ77}sYISKwafRW{1Of=t<;0d$C2!2 zPbTI!Wc*BO>pNo;5W~9G8hb!3Ur0&?$ceJYN-zMm-TG))EWkd^5L-IapbUHc7FeBJ zH+H#15-lGtcczIXdz@v5I{^7(f~jQz?r09#&*Wm zB8SHK1=T1yfVzMUX)>`lTVOf<9y{>*x!8*;-vnyTM)rDjqvQ>`4(hj z|5rzb$pHU3KKa+i#+a~wacuD5+&?y}7Xu4=8*K|-o$G+Fuay%XRHBFi1KI&j5afUg zq*}cBTv0Np?kTXkpCj#uTcAoa9Z>MDkOf9|TCE`{RXI#c3lGE72@cTW&AT@r|E35_ z3E<6T*#x#57h6=z8E7(g`KEXn77jZroiex%-M@xo>Ehe~sdLB?N62S?K?@WeZ5T<& zrk~vKe}UwNa39jSeMvcZRw>^Nbp!TcLKY~YRNL@o^!EL`zapK4>mLxyn9sEN?RSS> zP>RMbT3776X0RzujXgd`PWr)-ju~5I3ugPow~4tFU7KOn=;Ps^4zD*Bcd$d9YJK+n zIe4)Wuib=-rU;&f z!YX+++|f;s0miXB+m3M}>2`DAVGT!TR{;xo0A(@<4XT@&zgvT%*+W?4kM{BCY;GG? zW(QcSnQcbv_;gdDVxh6$?NPImFg7ssr#z4u{B#bwAfe0EcDlTP-T_fuKq38zElIu; zGkEV|=z;YHI%H)`5vHbD15>Z+*lEp8^a-3^W?&W)si|DE;LS@^FW6~QD1wO%d_z&mAUBr)@*bqgQ*G_ z)$V3opC2)zt}SpD&y)o&

    &+<;D(>@$>3xejzER{B|j)>3I`E%H6#p=hWT3BJt$i zy_klw=1E1;XT+qjAeAAX0f=oWCG6y$12tzd!dw#o33qAyyR%Cd$1C+IJQ|c%qDDe0 zhlvor2M<{gU&IbE%{j#Tg@^VJV)gvxo90X6!%)0!|xA28Q`6TN@zZi5;4^;K>9uP+1;9VYx18LLsK(i^!LRk@zeoHp* z!LcOz@CK!?AFW=qak~gyxVR?78!9+{qHKv6*Fdq z_>ScKa(a5z!5ccsq~P38et08CI2hK3PKxbc!+f+!(x(ke+#qXMi7!|Es_=Q9zPMh5 z!!v(t!s?^UcQ^5g4M;0stR}62rRq;BS`Bp2jV&H-?1(LfW)^>L-7SPSaZ3nm`W_z2 zc*-bz(F_T~`&j!kTE6_xWdACvm)=?r!iC!DP-*D>?C;mVz;r1k6fJbWwbzY`=ES1% zndQtiYVb-5ad0yWbh&oWiG-+KZiTMXGRPaM;`D};Z1wEW{+)aS-9 z2|o0rRZN%TEmTWHgo0rKM#$GMK^}eTx<$NX1WnqMsh+ z-*2^!sax6}BPaLwUi`RTs5%1>rL&j+KHqp9Bj1&U(p9h?E%YUKl5ww|*7!4K3i<(O zyz0`M_kITHS(?>QYY(!j73kju#Q>5KnHsn+bPYfyO_Du>-VLbT^lwfG@-^*sJXpjQ z2~-d8e~Bkav8hXcurtCOt1JkEA~W=%`0eoU^L-CXs{xgM!~cng>JAS_;|;DeWXw10 zxJRaD@(A#wEQLK7Oo2)%%+ne)&a}l$9g6x6RC7tRL%k=mG!)}y!bk;FSIT{&{CHCD zMC8sbHGgs4^@?pkdIqT&pSmQs2W@zt#${-I?Zhy9u|8xaRe{y+W*BsKmn?p0>7YwH zOa2A?eibR%QAGsrW;?X?vgge-1nH3&We~0FxMDV>#}9g91B2xS1B1eilQmsP83l*h z=_Op-Q9#*V%%&ai?HFdp?R3ySRABm2Zs16{Q|(VMN%KglvfyTiti-9I{mt7zmVm*d z!j(p*Gwqx3VY3P0y8>*^b%6(xe+xea58llb-iq|XPKc;f6sct$W@b4}wGxg<0wRI$ zzE1iwu_;Q65xPtkse~nt6NwO`#P~5m7}#ncsOn~su33QeK35A(g*)&n-&n`jV&Flc z_d4Bc_2xP6K<|<6Vg_?^Ow{4y93VOs==plvJvuE+vtq_83pfLXEAeJ&Hb|D8w2(LX zilOAIQN(uBQqZhEQZyov$2jfyuz6tC0TRVe>%n^^)vzmp6QQtlloDsPiYi*#)XhI{ zxZsz{f^p{@gRKxt+qj+vYhmPNphGLva3xPyH-2JE(MV6E2sf3eeKmAhNu;7@OJPsy7{i8xl z7z%l#hFJRFoyScYdhwLV>b%L` zh&^JFldjaZ2F+;108&jOMb0*q)Yt>Fe!ibB&mcPM`F;k}lPv-(1xE|H%oFbT*6etp z3x~)A+T{#B5GfkVdD7}4deutB7W1YQQ$+n%N()GzKO(6y9sy^3P7b6$nvmQzzk6Mq z(wWK>rMSH_K#@@32RwZIIGb#o&=DK-V3tQ7F)s5B8Jsn$v04`Sa>?t`>JZ_GNNqT{ zV+&0CRVSu|BetZ!g{eCjF^5-1p}i>r zl8In@97}Dhh%fWZA&u*`WJE)e*p+bSDSp}75TuEk3RSGCzW~IY;5;PprPRonpO{n5 zQ_Y!N0Okjv_rTfvvhl;NLlCHJVbTd~LZnU7i)Gy}ngu>D^o6i1){pa0wn5>v!1OrF#;nZruv#pi&zXEMUEEw>nS<)w9Q(({kw#0e z6s?yzg~-DVE>edSXDjy?=#mH{-O`C$;BVk|s27fumC*fh#2GVM8iaN+yIx<+aU2g1 z>3%_`%H5=xXRK;>reh=p*3RIWFfUd)wVt|5t2OGZ`Id0~jw0wIjRvWu2?#lf#{HZh zgNpE8E{l*rJhV?jKn?W67Spy1gN0TT3Q=vN?!`Jzr-trY87;w)iUA`3K0nYN%wz{c zAm+H{*hD)=XHvBzX7J+@-*o7V6OUwpXd`8;^|--druUPd5#9umA@?|5C7O;>MNoKd+ zV|c+Qf}W!GF6$gX?N{cC60@Zf;AE*))}}h(#V(>CMqwL%q>zy8ufBwMGI7ZkYJj_% zxUPCtuOPw!A%&jbeb+rL^BBfL!W86%4j|6(yPG%C@`DDaYPnpFcCAHH(;2c(ya}*2 z=v4_Jw1I~OwHNa^su%&Y*aPcRB#A-u&D;bFn+}Ee-RY!C zW6b~Y(@zvpFJ@a_cENTGJezHNNhUP`(x(`5cFgTjKG5^hfC(O! zxQhpoC-?d5*KgiWF5ka_Y?8%oKHOKZ&RkiU2i5PI(@6 zOCjo9GyE34lsM*wfANoV$b=9qMwKr6}p!*xM?}I>vA{7qEjc zhT>Zo7D05ONi;TdkP`_|eV;pu4Kf-9rtUVAuo-gz)JOS2YAo;xZ131^tx`n_JcQ?| zU2EbFi#yrN5o#6#(!TQ3?qKEx0-+Q*6un#AILRMF-YcX*6K{tDem z%cspndwOvDkv8EXLUX;PQ)-)FTsJ{h#`J)iGAP?F%ndtA968HelrXWAG9s(Mx}uKU za^@thP&f&9*SZ7Lg9_PXK8B-VifSNxFNwx>&i#63$1Pp3*>WevjI-*(F|iErL?yhl z#+1(Z%4AAcxFv3pB^`E<;&DcDI*_t4(f2()d_gnPPy4$i5aip$e516@<|*mVV+0O7 zdqW)?pGM-1Uh= z-5?d%?jquWKD9X~`V0>~L%ev~)V4JnvdAw4ld5#WVxqkv3#gegW))(mo!Z*eQ*63S z{0hsy8@J6b;ojAA1jVj5%hhJNdnr$T`1?W6VE;i;tw*?Z(J6AY^a^cRcbahgnsHHe zr*Lr>XA}Cs@iEv^@bhmzU48!fhuaU@sp&d6G{e955QzY4ay5OjSzRFq4TGgd1J{%? zBp5GpWQgoVKCbcMR!|F5>kA^4z@v?xB;J%2P)#_$g+ z!~&#EOP;bgI<`SZd?S(V5fYic0O{K7jGDMr)w~{H_$N1S3+$>k-$*di36Bf8+_Q~j z9vGX?@7C{sz5OtI|LZ%6Edmxtj0_f2;Aa0L%SYgLfB07GtwxyxiTGF$MhNFMsyIzl zOl|EJvTrzqCPi7;==PuQe*D`9FmnI#>Jw|b?(c%-WeAUQx`huk_NsB+^)IU|r=Fo$ zPCb2Bo0h{jwKp_M3-+c7Yjt(;l9v(+>HrPtQbq3(iP^{A&?;GTBXNl>zdurrye}mL zHlr!*1V}@yX}85ior0#NVSDPvJDsAHy|LfJH!IG1AVO;9)@HKVtXW!$PUEMvWUX^yrBtdV%IM(NB?;L76<9=?dZq% z$SrNg2~dq43QDH(@oedHIYXrq=w)N7>VUM5 z50hP(*)N>hu$)7Qx?sqHx!OVaV?)nzR>+EK6#<|%#RssS%V5m>pqHi|X(yCl`n!Aq zBugW;QBu;R^)g(WU|&#LnBJ)qj58VJe9a>XFnyPC7QnQTX9HKGR4hF;7jt+tAVO=2 zy$FLR1!nD<7uV*gNG{@fanFhl%}+N5td)$FJH1}Kck==)682D&6oX>w@xTyt#LUzK zi-Sfc#iprIu$(Vu@FVRN9_BeWkUo*hyGs%h)4IG^ZDtua5M0xCA%~}A)Nu3R!C{=; z&_yk~+u7QBp_0PE_&EPE*hgcFF9BPp+K^d%@4|FLXf3+No_fNT(_K};c7+%B6baQ%CIArcXRnX)SC1?$s%VW*}6ND_OTa_1eVT)hS#v|a4(u#p7RmZy3OSS$}&rsTt~8T4!h!F`vewntSaDz8Mc zFK}r%B+V}siH(||&bu&~wluO6*J!>|w)6@rbX1+=Ic%DAaVh0HAk2r~)?g=}>5EoI zeQiNI`1!d8cCgsj=z>PyTmq(Ow5Q(Elc!R2amVJdMo%&0@fm>nfz zZj`p5)Pw9?%-j_|K2CO;4(_&N9gQj*9(KQGZ>0HxITQ6wuGWLoRe<_6V((K5(arAARKT84^w8$lbScBhZVOCfA&T4_`PrKU7^&ZEKF6iFP)%*nu!Xnm2rFNfC_|01&{FvMa!-PYvma%HdM&b6Z5(MJsmYn+&-%sqc%yLH6hU62yo zqFfRSw7z+F_W7snf5a=Cgwidy)4`XXTDW~C)gH`og=Zwgwx(0Bxmy_z~UMa?(hi z9gyZh1UU*U9}nrlP4tsp&y^(+KHyuXNLp@Ftf3<`IauTfS#`Z0>I>;8ZeUt_8A2+i z%+h{UFSF^>V~>lOZ9MYrx93<#|CAP)wYQ0@H+?gvITRrG~7eu z?BScvO84P)PE9+Xk^og+6*;Z8hU`kHvd3UdLUrYC$!4YFoinQiKTi3F~nY5LV9duky<8IumEtvRP6<(3}^#d%eKQ9;%gYdxaT;=vakZ zTU~SW+2RXPGNNvj!tp%h3blCu2$+mMYy6LnDv%j(-rm0Y_~{7Q*>7Io{`BVE?d#wi z&Cuh*gEus@&YSKd0pd;@p!~YBB9?OzTu|20YAPz_;U;MqM8HA%ZBv(+WMD?Ay2SIw zRyP?{wr*+|E#zXpW?ETRyKyFh>6yq-%@FfD8Rb2)ij6F@e70`zI}kkvr3d0z`pk0y>7&c0>_i4NK7RW;=?R>1a|?z~ zE~6qp*ELi zMFKWJ6+6tw1qu_f5R63_eb0Ju`M>oyN8^j9wj+#)y3d6-G#KBrj81euEmW!vM5Eyq z`69uX)2Zg7J!wE$fJ>Q|N#a+dp1K?lf=d%_(eQ5W}|rSZ>T>}AaK9?IjACa zXB2!{Q_~6}*$>!t2%@XsDaz)I6dKTgfYqnW7YXAPS0Bd(WNNobE>jw-kpno}_m2{4 zkx3eN-qwOTy4+COu-NOpWVxM~6B8xcSGj^!7Q{Ry zbxoBU2XqPx<71t4dP7sCrFMs%&Mitr#{mGPO>3Hl42MA{4%pyoplGQY4!yQni3 zv1f%-PY)_Gm&amo_p$~P8K-V2R12%`HTRrJ#J*v1kv+&_-#9LMuFltCfgp|5Xq^Y_ z<=HXg)^Ogx0!uGXp>|!KDuVJzK~2Quq`Du4@sPD$7sPxs%4|71t3d~-zTcE#E-^dNS<|f<0K65H1pt z5AVToRR$msHAm*+uIx)<8!9OSsU_tUGIe?zgx)~(awBv#K}UB!`*7W+X?DS8IPq!) z>ITlU{LbA>L6$ZGg9F)6Z1D9q8G>w|*}>?8P6U12P)gyP3et;o%`F7ok7;4{{W!x- zZs5n2B0YAelkFI`*zMFYL$tIZEUTU+sqQl&d|v~TiD`9;vj>H8(r$Bhwx8br^5WIs zZ?AuuvOWa;62uWIF{PzNH4k6_RJfJaZ$qG+s;!K)iy-3r2VXHdrS|LAQH7+9dx?n29=%WV{#ntNcdV2VD=+(}!&#E5O77+(Lq zwC9@%_#H_L)P9+iVc{^L{)B!(Th?H{BnP@AWtsOD*xdb)d02FcDZJsKfl&M{1?)L; z@`-GEl8>C2Hgz#9X^NCCNz@?;kR}9l>k@v=XVaNNG;1@lM;akR&oSO6Bb`YYRKvA& z^?_-Y(kwmb^ceTuoyU*viRzfF4Loj^bjM~bNJF=Ix1bsBJc_S8k)!@4ATIb1K{d-1 zdvrkQ|tlq<0o9J9WZcRho9?P>$?@_mO%4eu*Rc3;bv4fy+upU)Y3*e5nI@32~Lp+ zwC3#dhmW5wZr}a&)8B5!k9Hqkz5DnRyt#@BsoYq85@f z6etJlB|M`^$}oW=6!0{~1laL?X_*MnWJfgL?x@7_?QV{MLJR=$v5&L6pe!!BX$-D? zZW@zTqw?0Ph4zav+6XHIiZuM-skyQlq#?y8l@^hXukT=O zLPuu2<)rV!I^IF%Y2iy~q@wF>l&};itl;RHFgCwZH)cuCBf!I&T>5~?DP$cDy)vpB;hVICQKM0btaR-%)w{Z;1NpN7#@f5A#K%9VDQJQHFO#N`o5Zi1_Vt&W>&ASVqKxQ+}O?x8m7RVm~xz_ZX12yKGrJ|b?GvrrOp zIzV59crSTG2o)6<?j478&|SWumujAk3J>S)EU>yqT)fV@N?<+lzE|M%;279A zyMbm;D(k@2jzqZb6=oR?u)dg-hj*)8df*-bdJcK&$x~>jZ4QGssTp!2Rk-)kXGz$w zAknUVr~%c^9%x&fWLhs-C9D#bOu_3%MrG1&<0gP84|9^mwPThx6bC^;>Al`=f(E34 z5Lq&hAtD(}QacjLZ7*q+?dbGQXYtBu4kxcF5Ogy=eiTV0KmP=tw_PEey#K% z{P!<^FvX^F3;?NEhm4&iDKvP6|&(nc5-nBsf7|&m`ETNC|7ex@+{|`R!pu-n(|4Pz z()i{I(^ex!+Csy^ye{c?d6esUeVnG}HCwzsBhI4lJaPDeQ&B$1_0;3bV50h0 zNI35h30DpSk~uIqTPU}(%p@}5?lbY-NB*CQ3QZ4veGz#MlgM)@eUTyrDBWTQPIsF& zMTs(yMUs@!4GWe&fA#jy&>?)75MZAB0^$jR~VnAyiY*iJ!LPaZ1g&{^yzo zW#0pk&oAB#&ff0lP+=sv-&QTvQu*4sgMtDU=k+e8 zsxy-T%onw%gS~{xoF!~pS^+(bRKWu2;kIk1@OVaY9GBj?b*<{9=xLVe-+%t_wcYrRuw~0iGHRN%X0IT(+2!(O!VZYad z{w0crE=|Ub$Nfu3{Y#Vnr6ifgvkq?xzZ#Yo?J`v^a3woj#hF1!!5ydpUft7~*6sVT z83g9*hot6^GGIB&Q7m>`60k0U`zww7)D%t#D2!wQjN%KLAa-!ZIBrzb0J9_q(F;cWFL#>$o=$iY z=+YM3vM@E@U6`Om2Io5o+t>))UHc*rdob={)(yu=YO;=xDx)z7x4m^|_64CFc(iF5 zhy_IKF4u+Fao-9%g!}EFq*Q@=5T!G2jBwjRil*!Jnv`W0SVPXYK?r1VcB|LKI4I$r zel{kaKq`FX80C^bOYiYI9q!yi%CQ23+q1=!#nolxdO}4VoohD(cE6>C=~H-`XfkDe zK|f983q)-yO&Ti;#Xu5@%(bC@921`3wT#0Z?!jm2<`R+5i_`g(QjKJ;@nd`qXL^C< znoJ=IpT2wb_WfTMZ{8w)`^M`yHy!L+?q(kXT4b)q<*asG3<9btadE3AudsRHPB9Rs z9f3Y>6|ja-S#TH;USZ-q))SP1vW_A#f>z`UIM)L~8K@@pzx)UY%0DJ?d4xWnOjSU7 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≪kg;T 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⋘CjnSTm1NI%b9JJ(z8U3gJ?P0{lno+ncVF8jD1Yd3k~SUCAK>NARYu zpX!=w?aK?$4upAuX4g;zX?0vfPh%Cww&QxHPdAS^S(a;_81y1sW$Y)K08adL1E0X$ z&>|yt2M&ZDw}Uh_JV)}^TyCem2)_G3z6yR;$!DxK*F@Z#xp@u*6Mm;zE~q{U!KdqfTY8@NI~OnCFf zxx3?(sH)goquwsm{1!i2$guOx1zAl$I#Be%q9}zMpTL2d~BUJF|H)P2TbAJ0t1>9$E{_*A`JaHWV2m~Ugtd)qSMwRi^6-7$g zlHgln#dQzLFUgdt1+kJnor&1Nl|?y;MxNxL-_vszp{L#RJ387eF)d!a1u-%0Zql4p zpr*!HYn(vo#Gv{0TN;&F0+;RNnUsRW0*Tm6QUhA-)vh*-sDwr{+jKNYwS&{Jt>GFD zn7HmVS{xh8QfkE+X*R$6pxVtBVWKu)|=If%`ca^ zNLA;-hkl{nMbjCIULj2pE)!#c^O_ol^{OT%or}qd9ZWk46YU0@RL2cjb=oZ`YML^O zr#~4c$~M83Ub_IfI)lP@%^bWsV-lyJMMY-Hi#2bt5r7_L^LCogiOes;B&BW` zQg#Ay*QP$X5O74HZZ}i2M0zwE+HIfhi-tWb_u{&?HrG2mFk(Aa9@=XeC_p-5=_<4E zNF3XBCq|SSABA1mAII<1x;Ped_mSR7;@E(EsCP@A9a)kwqf&NtG8I4XGD)Vgf+iH* z<+H(bPAmk-_d@JZb|=b29iI(6LY}5L0I*ujPvKWHXHhRu4VJAxuz!RF<0lSI+@d?| z1~27;a z#f^dR2i6V5wgnegd0*)e6nhida?_QHBixh#HgJeY*yIJ!6A2eW$SD4%yrjRiiJV4s%sma8uPL)OOOROJ0LBR>hfV19J2kgrQP~CYcli z1vSBo)2DNMP7K+>@F(^X%1gKse?XC`7q9+)d;QDBn|HT(NHz-5^=Y@V^WiGD!38U@ zx?)~8#940Y`b26xiL)c_Xq8<7kJbq`EXu!Xn`)Oj2Den$(teTS9js_2oaolhTFvX& z%6V;X5Vur|K(!SnX|x8OFbR3Gcg80fq=Oy)!<}P6KB<7xta!xP$apJn>GMtP1KhE> zS?I5yGkG8sJ6x}qZZpeG&XACUmMOD;HX9`;-dSGmXD|SozCrBIyCs#2U`Pi5Nmp1?aQY@x_e; zQnCARhdM>qVO-}9Eo&_+P-g%gpavkOp#+S<7};KcLoqWQ`;vbDJ)`It^9jF3R)7#e zARb;`jSjw10fTZ$RUN+>$q>!so>GS#52g;u9rSsjup3|EMBtoxR#IS_qF@C`pJ59~ z{*4Nt@a-tE>aMVMWeXFGv?K|hxKO!Y!Xb&6nBLD!W_dZirk5CLR=4`8mdWwSkBDn+7dV<5ilzo$6F5tD3C{W*o#1Rgd=!I%7?Z@yi=d-Lf} zPkvpzegEt9(_2#z_ip*`QLVE=*JDUt^i;dK*q-5O?!;<&A$*DN8;-&PL*{M!fZ1Xv zfv8qSEgRr0>YJ8On4az;&Nw01*VtO_&#jF z#pyK)##|xC64`AZ*l-WsY}i{2%*1&TpGxCNjBsbRp%G=BQ%5!*eqWyFbOd3o@x+9( zYp|)QOz{@Ihn7eSgWMwuxY&_^$_tn~cJbl;&!?|n{qpJd_4NJEKZEm0l_lAi(PUrj zZDQ6lu%Sr6bZjD04qbzj+HX)IGul+zqkYdA%!uyB zJ8W0GC}L6#E!y;4Y6-$%7aJt!2}Z=#)}%)L)Nt0*DT>yj=qd6nAi0D1D8HlxJplnG zA{KhMM`Y;1(BJ&sI=f(03DF>2d!3Y8rIL(QDu>!kW=-y*=9@8>6!z|#mgrLVy8G!2 zYKRI<-MLgjLnbBi&bhS?P&agGUzfq`!*v_!sx0K4bo)&%?R}jFU)L(7O>dV<^r~3evDx$vkNjT=Syr0PisQmFIFtG z(Ey~~RqM@0du6KxJY5J_=-VThz(w6jvsI;0+P zQJ3TZ)ZC-TSk|G{cDlR(C4)Tr5@uZZiid=ZnkH5rSG`FzL~9wFEY0fl$+1{a8&eNv zU+F1m22FGYrZvV+{T;F)g8Mt_mNeOYU|>yp8ol7^LUz@tR`^(~zb~qfCfjO;YuPv* zET+}>7EbP+lJ*%r64sRL4$AxJ9cj9>q65xKFCF~zK(QhS7%aDXW0D_ zTuzG^Z1S~n@n3OIc%C)g2$2F-l;rh|__40n_mLk}t34Dn2TDTPE)jgrQ6^i}KnH!L zC?3u87}_3ZipkXCb}Bw0#e&|GalSbSV6a1-%P-X{`Kw6lgra7*b$`NIlVYvDaezT zFeZ2*!;yA-eFp2*CC({?ML5bI{z;Ak<T&B(Y~;VXtPRBtZ{AA`fO5NoYTT=>KIIV8Xi*uGL1mY7BPNSjK5OJ8Y7bcl zsF7=9M?%=HG}Zy?20g@I;L=XCG-$!i*%UeYaSJlv(Mtf_@WttLdJQLY%PEOe(t5sV zT5^Fd7*i?3OGyW;hF{QY*oy))oSrO|k$&iPOiM2Mp#b{bv`~=RE{~{8qi+s-0to?U zKdk(WXK7GL2d0_Payii+@2#C>iC}}CXm3okH@b@IdR3!!&Tx+m97)xjxyro7V-sL( zVCHKF6oe`*)T9H^q@qi%dIB)~&eHgilpD+nI*fkoa(wh{=^q`+`Kfp1jX#p^OjtB|`yBEvk zk-+VuWSL8t{5bZ5U;7h!LrB5L56!(>R)(JSSpLs(${j% zxznakXQnN&-!>EA?6znF5&09No`WZ^oVcn@LDo7@=G~WOyPg%0X*)E2tfEn_>Yc>= z3@k^0)9mbefq`A^a%S4Ef0(`b@b$0L_n+T=Vg(z-6h;=h(ao=v)1yu(@#=lu3WXUk z|4JRHks5t<^Xq)Qx&7<&S8xApHJbTU(F5?Bcw`y{hRq?^gOKjji<07(52Dsz_PWvK zS(q(6%SZJ`FJGF5_06|uyVJ9aIfhrp!_jvJd;cIF0lo&Bv}+Yd%?5;8C>6ptpxEXJ zNm^rL0qa3ga35n#-yAa}?Oc3@0xS_^=~_bH-0l<`7WvZDT0zN!y@L|S`n$S#$*W|n zXeqF*+V7(6s=eYesu#qImYysMMN2rG^=#{PT-6}7=%~o!J}|>(Td@Rw>q#OBX5ARB zUr}Hh7`LnNvNBIQUT!JbV3%?Tz2+o{ZF`r-VYrBd`29y_Tx|29Es)v9?kak}fe!Ue zP-|0EPKGULtUlZfM?lEL-W|5z2$Y8K`86J@QaF zCe`0!Sy|yr%J_*}Y$2UZT8~UiUgjYLWfy(Ck_aR>t?eiI%Tgo<(TL$UTa`?h4d$acC0^!(s{#-*wM& zuOAX`t+j(MYz%&@wB+?zbywp+=YQE!JL8frf707eFjUG_7kphMXn*1Qw6svz7&_%C zxrIqHm!6fL{l}q=_7=?rhsp{b!=<^=8nIliDw$Zgfvd-M&Cz6#TAPkDXlNQP4af8?t2URW`LV4l1%wFp5@M zW7`_!ksLb6X=Gik`}<$MLuQ!NwdyF$f80Oxxvqi0#_ax=Z)uYy=Kk$l{&BzH_x|Hv zc7y&m$Eib*|KqWR;>pz>eZN;BsgfCx$62SCmDBwVONP7np|m}dYG@-#H8MJE`DnVv(~V99$9D*>#?JKfgYyR#M~7iCE}o2SQ-S&;tj>Vkw+g|os@>_&yit#tHI_edHWg5mBjk!SZLi;mHW z?jo@%i@n&=VujHIJ&V)}+{eYeD_<0CJ@K3DhmvL%I8@V(;Il`9M#@gELtj$$a37VC zP7`Yc3+-dyrR8c_n@Se>m2O6javiwsx+Q}Av}j8x8LCzZhE8m+(;UbahjTef{MATT zEsv$A8f;%95ge-d6e$cy&#$W$xovu=J#!tqIl8Pz9uprLc4${fd^TH9^X92p(ncUr zB12Jv*}$%SRhkl`DbvnRuq}MbY>pSxrQMaCa7}@(*_2cPWRlo_@HOmYH>=jMbysWbCu_PuZadFZ%H{lKyo=e_gc2eH0V6O6^Aw zunR_RLDp)wzz5bfG|5e~NtPzowXSqmK9K>X?h^^vC;HyS5$z526p0gsKE7~!z5K9$ zNV7ER+fEkSLH;98OQTAx&7E4N)?&FlT{9@6%ine^`g03Qo4X=@C>-ol&luXsSPu7u z>!#+WhNf{+Mw6Vkp-GoE8P}35UC_3M=A_+grNu_F44%>|A5mu)NbFTD0!LbFrO_vv z=E6<6vayipe7T<$s)C^XB3H30^p>XSD+#?~`vujeBC}ofe#Rn-GIt`>#Nv{iwc!_E z{WshgP$&f1b?!S3?RSiohlW|_BjtjsI_aOcW#-(VL8(z_pG3H}A8HS^X3jzl-~T1G za?RUx!hz;*+Dg=;WmDP;CwFTJi}nF2PiahOgRFbpd%x24txukIQhy-v7E)^$4b{Z$ zWciLY*K6!Ug@op+<0(3Ke8{$I&J-J!A$@9c9_U1r@t1b_l2-lmRfC{?h+YlN(qpd~ zb38Rgx7kVXt>gM^UVVS)P8``}JGxM}YIy-yz%*mZ|X6HLP%F1SBb35m|29#!}OrA6? z-&K~-VFxlu+=i|AQ(WpMAV*%a61V+a8PnWW`0*ODZ**tWiq)=1PHwMy_X;u`D?k^D z(sC*!;mHoc%~`soWSY7wRcN(E!nRSzDd;!{y%GK6I0tqpoMbneBh+ytZOQtW!39+^ z;@j-t?P1JRBJFpFU$CFGjsCRE9J(s z%O?3l3dOQEy$-t$8iw>gHctLTLr-x^#K^-`VD;$^5o-DP~zP9wSB zD4C+gk1D)C3Uc>5T`_J*(~$9UY9??C48P=xd#;C!P7eb1DR$jUHMdFDAE*vr5M@?S zlM20Wmy~p3)kg=aWWYKOZjsd~?t(U%p-8@OcS!1s;Zf&>4*hy=+di*~HS-r{4N^IGy_-5($J(acgN=K1 zEe3Z5UuB~e!K&x&WxHxF+D}fvkhaFsU8hgU&YnCaUs~3ubLSbeOZ)V7o8`Re`OyTT zg+m#4;qJ{kNi|xG3D+RQTXY(VA8I94q0nyfq0;WnTDQa&+sqN*Z|Dx_4Yzy3oF zHN2BulzN@&1M`LqZ5`vX)*xh;oMk)KjZ)uU;W8mQRVso~u-?Opj+$nYm(_g9#ocWr z^jPk~@EICAWm|A$JZ&jSrcdr;l?1L1z0mANQ+OmpWKz3LLk~T^!-`_^277jgy|H<$ zERXL7tXlET{q2j^Huu`DX6qZ58;Q+ta{~~`rT5HMHOn8mS5fTp_DT4wKm$orIDlUTavEgi#qX=TffQQ znKa9nZmn?NTXg*R0u~ymvjOB%DYjy&mY;kH5q9S zl^VQ0kKGj^wTfeTfQ%?=k@FTUK8CkgH0ZD&_i#{|d(c*=g;SXa;}Tx@(V-o-S*nVm z?Q)Ljg^!N(l=;5lk)E>5t{kFNGw09F56R{1FlF`!E5OJ?+4`u{@Y>nQaY?xh7=SZoh_tF>j=^iutYHx&kPMK=fUkRK%VE~}rpKlPn{YHhUdL9R<}K9I#8 zY(PS>P79Y2TeE;%{_#eEGTWdDSJI#LJWtTE9?9yl_Q(Qvy~%2}(qzz3C+W*A*UsaX zM~`ln(rRIXM#4APwN7x)x(t;iY09%L_DgM+qbtz%$kSx!@D|IhbV;hV(L+WpXt^r4 z%|6k^YeiF&!aJ~8(Qv(YZ^ zb?aTo8a(p#GMd^CO_iIa-Z+x9r}&Vi0GDGWtuCD`ROzht>H0PF!q8Q<+}AQLKlF;O zFJhCu#<|2uRh5@4BJ4{T0Oztm0(JVyO%~uKDF|f2s8;$H(U3@Sbh(IB_T)#;1 zLBzqf!Vl*m0u0LWp~A;8G%#obb#dcr4!)r%cw}^~-UcjFk+pN=Z&|jZxkX>J&-3?( zHfd`O{cYPc&a5CmQlG8tnkn=_krHq}n&Lsx3R|!(oUnDkfR;Lm=x8xQH@K-a(ao-M z>ehE{O}M6IA1cHNE4R=!V*Oc~O!PruGR5DLw?4kvrCxV%p{9+VgUuU*WkaRqIlK;G zBAIS)P9*ios5;F<{|g>Es~2U5Hv1RP)mglV9V}v`$*aCj7bqq7v5Aj#7idANXNPOg zjqXReM$b?gF}NQz$@qvvXshT zW6+vTXKZ+j?aDQynGBB*bftMW)ycLp!Oou~txUU<$1qzu5u^ja%DAqK>h`d_iO+S7 ze(rPaE+d1eiY)e&h&(gGm*SGzlkS?BwJdLo_)N3rhS4oH+bnp|CDI_b=QP;zN3OL- z?i)kfCc1>EB_SQBD!*QCh8?9TxnXhdLC$!uYnWUiyr~NK%Bggyi<+=!O zv9GL~pha+bP=-{c<#DJ(q@}2>#ST=~ho8D=JuCrRY9< zvov?=sMdzY8W;I)h-;0cGEE=*~9%pmjNVM!pVm$ zCD=Vg8b@W7lccV65-SMn9VWEZeqTJ#lFF34E>UaOB98}%Ojs{1G-?*x>~cvP3@7J1 z=-icG)G&kxz(xJrk=)AKeYP1ilnVz>cEe~o)ogk&Dtffj#3oAX`T;zy8G_>lc3*M}vm82MDC*PXlX z6*k$Ka`6!~`bN)oY-8vRL4Sj#KU)M`7n!!=vNTBhhxsIu8H%lPD`=)Dt9L=EwvU$* zQfmk6Zc&D(708F|x40&o%2=aEC}B&=m9YfTHW61zw{=8iAv4Q|wX)(KbCj8*x31A{ zElDaB6RI?d`S(Z-J3mfM$2^hi=*>PDuNUs_bYnX09idKjSxGfK@Hx2U`xRF08k9JdY3|Z2 zrqkJ_WR{RLqE&J$ITjuFQM^k-hbkv*sV-lXl=`R)cPM1;cFzcv@c(mDv%bSplr(lyD9^kSwG`GJW_*Z5JGyW*T)2hFX=T9hxUc9IJ1~98J(D^Wen54~`d3_r>xx?mu98Hs&XVh? z@METYD0D{b>US0Aw(%pWHpnTl*X3*skw<4rTW)>B@G^VJiXghD6o}I ze35x+?sgO`wpbbq+lP{=NCUl{3U}?xj>F5e(cWIO;)6^9lU!7q(RB(@;Z3}(sVwwX zU$3E?zG%sTUO*YjA6!+s2AH&z%JYOH%P8mt7usaIyPv|S%L;#wq9t^Q)Z6Oik!qpa zZ%~|&iD^F0wRyx&krY_v3|j9-wBQ%tYF}+}qQime8cDxyY*5N2Nnb0F=1H4V(-Nvh z#5+m~*RcG?;%~68^fw;qu#*R9N~48qMR&nM+He_4=r&?EcOBeU-zKB`tg*w5cGIA} zkFFvs47JNs!KL|Br(_gcVLRMO@-Q6jh3gpV?lZFbNBBuRRu*uh`=ss`2^G$<%Qt9FCQ#Vw zx*C1QxDVNOy^5qfU0a)6@B_VclSQiKC@di$x3TC|5!=XFXlxlPU4e27YHF8dz_bst zAu0be=)RP2cyzv;467a}sNv88>Y)Fh-qOPjLf zxvrTZLo)im9GuNbsI@0vM;=NYdOZ~5u7y+D+vGLr%-1235^+{ym3%}VlU?Sp-dq2t zjNu9GA>)?AfIT!9|K~lLhYj;rb(P(3eABHQkY2tzde!5Y=`A868V1V>yKyq z(QT1DgMZY$XZgNm+gq;c~Gr3Q!`Xk(V^77o3hAOxkBYw^~Mxx zwhF(c$3|N|)^bRD6resiUfw<2R;ehwtUbfJ$@X^ZW>23g&&ZSkZ_}sM&X_X0HalfX zr;O^h_vsF@xP>e|TWpseQ`E`ohuIvO@Z5EO53uMD*MgZd<)XqW{W^%x-4ku}gbtr* zXd2r*)-CgDtgjnIV|+Q+_BM_Jg2Q@3)Q4YSZ@pwMfQlr*8)hq!`~ z6?t5HyRYFyN=%^|PN;Mw7p`lO9pEZO@#0pnT`K|BSQHr~6pDzR8>tG=-5HN-chv?P z?T2fzQcj^h$I{Q6m7x=I`&-bos&Oq9|1jmM!X1HY)^!izm9(k(nU!*6cGChbL@DRQ zHfleou7Br8zPO>AvK+kJo`z&XH%(hU#|kL=S7~scjJ|FOk!;<1M%`0e^ySd4vd9h= zO`#&QbaV$Hd8%=RD}hV)Ee}qX8wul!tXiX2qU;;Y+D^&yDQ)Cfe1n!)*%m7dM2lO| z_AD(B>6kMadEg%L=mYj!?QGK#&BzEJ3buzHX6^3*QuEMzf(^~llh)ptO6t;B*7_jj zM;l2eODwv+oD?Nz*NB*;Op^>Ia3&}Z_@Nm-Xh+~0gsc3O9%Ork99@2)BqAw5gmZin zIrY!tWxHUbojpI6KyDCCaz28w1%!j>sHaL7OhnZNK6f;3ny#*(6>eiIE!%ba82<$_ir}?U#ni{E;QcL$BL@n!m{aCmHD(X$J|tY`fW4xSF+_rXBzKV4LmkuEY`2 zrzsUdS$HciD{pmiKjhWAc6}UR^RPlLDrLV3g(|BgL)IsXzHVo!(3s&HB%7K?O5;P1 z+QC2U=nhm{X>ASG_EL9yVB(xqZR`n&+N;QaIxdqjobDacP@FEYmBg(5KpGN#XJn$% z&X^8lm-S;@4XcpV5?8)$NULsoH`9R8G@v3o9ufn_GQ># z+r*~Y@zVBK8hfFM>(BjkKQV|tCW$zS3D;m?c}COFQpv4HTT8#>)mn~_^=DjOL&)AC z8L5`(+`}$i_Mz#jO#iV;xBEk?+_szMFY>_8;W8*h7LlM%y`WvB{98Z1xpmlo*iCoQ z+mxL=KM_Eh%416hm|hxLmxJuxwg@-kNOSk6+W&H-O4m zewj1aFjUrs*Ma`>S^8`fxytkzvi7xpT!1?WA967knx|c9buK?^+l?SCT1yF;DcK0 z6LPnf8cMOLo1u;N1}g?L+TYD?k+Qyfh@jkbr1!G6EZ46zSK7C4>FCk4i%Ka&7NVD_ zJn{*pWqSE@<>lPjW6SIY%STFCWp?T8sWWEgCk@hNv^r#rVle7l=R6ItT-DD- z*N>By!9l!5mY}dO*c#M@xQksKHPa{j_Eubu{5g%GOFT7W{ znIdU@Q?iH0_M^|d8^;;Lh)_A11gV8d^Jr?!ue#<6{cq=(+ zIW_HbP}kR}4I8>GnDb7l%J!F74_OWD8-) zJ+;l<2pN$TylSNtw=yD&wMee+cGasvMn*{3cGC1Oee!PYL2S{g^IxP*w|tLYjGIo zz1Y%S;f7LJ3*?{Lo~-a_&uH%mp1~d-i)N`qhuSo>1|2Te>?Un7I?c>djCBub9^;;! z)li$zCg<=?tj9(>wfd@jfjucr-eIL+4eOKABup7u8s|EiYvplVh3~RUAgCx6N#ema z`<_CkFK_&Zv9H#XL>fNzkCZ^Pr1~k{Of+QonV;N6m zlbw_W&5ntl%?0hnd6k%~vU10QF0|r1SYcJ~wz5{dJ`2sos8xF9_M_*1M4L4bN8ByRJh^pB?Ya0|4f*EiHm(CL%DC#d)_Nl$yV{3o zZ@VmpD)oCi_#kM%$A0nTDe~Os`iA;u##y_0E%pLmqUT3%4v{CEOBNm!INcccJ!HiR zF7sdt+fa!LIV+mDLyJ$j>rIDA>k&t4m7$id=r%h=mg++nn=Lh2TBiLd`ps_gh!o1C zAz43&`4q8D_DOB?XSGkx?W_y3%1}gGIp1Aju0=z$X+KCgm{`TIf#^2-G_5^o^4IRf zplMnI7R~zoQXHf7CIgaOtNl2)$gONiL^g$Q@UCg8y3|sw{(9dcWzG9?el%f(uUPj} zN?k6gUtD|#mks&BaK$^ssEb<>!FNmB`h50$_|S7w8EUB!ee(B9~u}+ZRP-Jt?+o9f~KS`He)An>|pxt-x<{U*ua+D{QrKNe{Bvg!|h! zZQ248dW`bRtiE9vrVm(pu~g1z7#=j{L$=*6TiOwep1NS09hA%jU@Aa^{zAQ<*(bQk zIzE*^+3XQBHb^^;rBVwi8FN!0s})f|PWZ$!u}SVq~ytb8D?GqN{5|7gBML zZSE(y_9{Bj2v`(NnLce&Y5z2hX0~paPj!*OKW>X1q|5#-_b+~?*%aEDHeO%X@WJ3D z6$UE@vFyjE=(mM8+owkEO}-_C<{8)W61|!K=lu%@>*}VFA%vRlHQ~v_v1LEkL{zvK zL$w#{qmGsHLMKOyu5!jgBT3xZVU`QGQXjI|abF{oWa=C0M*Ah*e9-m?<#>e_fp9)p zc-8iIX~o{;;CsUe5qUdiXGu#}Zpxgle3{H0*O9=Xmt-wQeKA}hWrZ?VI<*><`xZA; zHBt&L+D6My)EP-`#8%P0?3ade^u#~p_Oi`(j~5bptm;r?2YaLC0959S)(L}ch27<> zS^?1yqqDhRmX(c&UJ{|}MKiP5R#!rDcZ(i_Nuvwhx_rvDP{f|F=RUa59o@5@ynsDu zgqG!+b-BS|HaN?*KKPePMz`o`(1rEv4q7Lnx(-*mm4;^NU1%%)r(J9hzD7r{Op|{Y z6Xk=XMET&PtL*nY{2tpRwb!-lQ!b^E*OjW;bSy$BvWsoD!lKkh!xiu7C8s5)*ba8i zZ5?Z=zROTdEw;<_UzvsEa!R?*HFn+5D5)d{m09g=kqIvH-<-%;1M*^faGN`+^v{LU zl6|C~gH3CVYnax!s90bcE3(zD&-P&>B%jgVExul-u((q#W78@+?4RJ;bXR74bKxrU zSHHX>eVp=1vHE;$kwVt&@lhlLiet+d%IVY}EVGcJLt8@Uv*`B7{l?wQ^k^*d{D=jf z>ly?txmmosOPC2F1W1h9)}U#jesqJ3U<#$MLiNX12?{lGxK)Gf4TY(N)GAq3(TD6y zv^qh1p>;j_wnI4ygCQ^XWpd{R;UMGqY*m^r1o=`0hw<)r8R$j zXkKgWHEwE`lwM@{BX`1sNryD*@k@ND@I%7YD7iPZ1h-r2BcYN93vbv?7MJ0CK`MRH zVrQ)vKC5sq1+l8Le1;9>`0P=Tkrc@ln9}RnQi1F)gXL;nG9VB?ZZ|?xh80M6g061v zeof)k;LEkDUoXY0Vm+3HZT73=tV)eX_8%+HuZU)ZkxjO?9T*Xi9}lf+PcnyR$r=n{9MUpqs3;7@>ChfhK0pU?{o|ciZ>#^}z8g7)(nu&sFD%EHEEcLQe@m4F?T9cHMpCo*hS8_xV=X=6z?vdNCOXu(8U;OlDJt$EHBV2a0M zcsGshAe+*{w2aP@FJP28EuDq-9BJgFVaK<57J@W;7Ix<0XF&t#KkX_Ve*bbmKXN5} zBt5^{HA(%ek7S^hwCU+3>L%|=Ge(=WVibaQ0$sf&sWnWwI%G0Xky=e*tDPymnB-`p zPluD`mMs4d28URjTc4GFg|?cvPLSecIA8}LwKT2Z>im)DcZW9E*M_f%MCAGi_2kn- zS+sE=*k&IWzFYaFQD|6Z;;9~Luo!auW*6I7_((tf(T^D_gze{svMz31lJ~`b`T};c zFVQcyLPlDfuY$iUVuMiOb^B6V5U!zCmZfQzIdDP2#FZSQ8|^#v3{ZJE(Q(qjD>#oG!$zxl!DaI zme7K>7Lt_d)#ljocRIU}6uWeYP3S?^ZnTSxl+g=j;1=4Y6bzq{sJF|=`k5FL z8*G$wxL5F@gF> zCcV>g7*Yk)QEvX|bozzw(AI)d+c3GRWp8rqlv${BQ7r`w_0)mmfjEeuQruka2b4s#~Zs=^6)O+pX3Web_|MfUM@hAYqS-G2n))`LA{(lEm;E4ce+@&k1Mds;sB8;lZ999 z7we737BOoW?U$`~4N}_25uf-FiicvGC1vV(R~bLpHbQ%RWStIq$tE-uZ=;WIlD(-7 z`tFqQ)Q`|&B;l6}OW51$ECZ}hQwJrtNFQn8qLVb{`)-4gh8hFfY8tM_#e0GaJKJTW zebClnEpvnABXtl#sTJBICEQ>Lf$Wl$ivPb^Mn!jJ85O&M1mhnoBVCj6ZFW?lTQpNW zrONvcwbbxVG+R}l|-J^Q7B2chcftuGwhPmi6!HuDZP2TO;sefALgc&^xWWc z5^Z1blk6E?=GwM{io1TC4C;-hwfI&$3z7t^fUKi!5?qdMj7h63g&gTG30;akwz)&| z#Yf+L;F?LK{Z|ge_GoR8c0Fl`4bq9sg?5E7%@hh-?a)eOB8EKlVR+Nn()Q`or_3tt zmfY3)=t^q_CM%K^19wRdoHL^@bp-CmsogKEIcO`o*N6#kA-)Sh4+kw z_l|}4Em=MCO0SY=3R$RRkI44kCD%m43zvKp2`^HzUigA5S+t}z5?-w2@JM*^k~<^e zB}%@IgqJKST`2qoOO;HBgqJQkJQ7}}rDVTIc-4}7BH`6a{)~iIFB!Z@`195%**y|ov*eaYc&(Bj zBH^`5Qj3P)zfQ@FNO;|nt0Up{NBatED z$d8k7 zg`>Gc?~*lQ+t-YR*NTPLj)m8Wh1ZRR*NcTqW8w8<;Xbi&-&lBqSa`!&c%xW&<5*bI z=d9UNQ_1ecym>NuVM@pB$x}P>^U8B2bEl@uE6S@YyHhp!%Ibsp;%a zcUN}i^IfTY-gb+ALQeXv%6BYJCd#YR)yaHSGM`T+Gudo9FI~FT`9w~ZE6jFPrn;-5 zZ+LWbEeGhm@VU0^^J*4c`{v<&*ZwKXqeAsQ|WXv*V&y(SELga z)$;pN8F!GfaMG+fGxQx5<>~6qYTrcSy`Fv?960pQrVh{s(f`iVebgukW7_#Wl|OCs%&L-cUnF- zQ6P+56KyK=+$+JT7mP(eVyE4_yW zbXU8Ck()j<-;tY|l4Gl^Ebq>xD|6XgqNX}g(bZYqT~pm9CoNl*@2-|_Pr4-MzG_k~ zC+|sC$|{$cd|G0uvZg8_i7zkvCR1Gr86D7_=}e}2e2qN6pu9Vsu1Y78a!RstOzEzC zr=(jsv+3^cL{+9MOB`6LCkbV$q=YW3ZPjG6Rq3i!E?bl8%vaY`cIUflVe0M67Nanh#BonO4<>i{nrjlK$%5-P3824XZnJVwj1@9vtKb?;5( z66sW`I+IFQS65ait2(<=QpwCFvsK-C5Iz$KXZ!Nr;8#nlCC`(X@2ZjPF_WpRlFUNRgIs9-q6i;)w#)L0RC$%`pGs$Q$(pLF&U{y< zB3W74DS4AzzMU2MngzT!_}Qs$xpgEutE*}{({l8gnyPfQT>V{g|LLykO1OMI`m?*I zWM}Q@4m^{~XKN&zNL1u2Q;AHc{EB3{GhHP=sH;0!QS5iyyMwRqlKW6iE}7^~X62@v zO-jPgC3BJwOE%V-%oa;)lauz#ljT{p5rPRRSx-3htoE2@i~@ELPw zl33Cyx&2hhSIU`7CDRp>FQhBw|5R6ZO3r1G6E-J1Q*SqNZD+cxYHE^_KC0yHsmg4& zrnXI9XULJC%O>}DJDc4w4qAFFDtciWE6l~;;)zy;cR!BOosFb2b zzN@lAB0MFLl&{IjJzq|9mz0jQ#JrIFqb1vgr1+~PQdLWqs+JHJl47!!^cIrhvzEa0 z^?s-=7#iLJ>u@AaK&`p!ep;heXQI}4HGD80foI}XcsD+QU*fV-h0yn}jhkWy2jLJL zf$g{hPC<(gsa9ysLw~o{7#5OhfR?=NdsK-mEoo|4TZmMP2dNHhrD3TCjO6uk*nvCZ z3{|QJyQ)$x(0cho68Q(JQVlptmE!*is(ktBs(jA{s+^q5R4MLX&+E6VQry2!m16#r zy#Bl@C-GHPiuWI@Qmp?*mE!zQs+`sQas;4m123h zDv6<5m14NXuSCjl4NI|mj4H+LZB$7tUFs$!CDYaZB_;FJ0VO5-s{>0)j#SG_N={ZK zQqNQ6_gQgT1xM^$N8lv8H=YmH6c=hLy)fHZ9BSJWDXhJE_==P$$S zgK!8A$3|?!iRjO3p0H2fyAYm>d*c3hC?1U`qCd~)622I(M1Q_-CG4+@2MIrp&*IDY zCcclK;@9{i{*Jwf-^FklTnX1eZ6DJ3+z|U?0;_N^)?x!T<5;xxBA=HfJPD`bES!&f zv{?7fgXz9n!u zTm{#{^>Jeyh$*bWEwK(q;TRl`+hGnT<8+*ZyW_riFdm7=Fr)$3Rl3@a2@Q6{cuyv;2<1=!?6+Da3X4ZqaIHl zcg9_CF7Ao@qjVhm&zS&OvRj*5lh355^<$csv!)#tZRsycTc9JMn&e6raWy@pXI`KgKWdd;Asu z#zmyyrpLV$u7IoII@lNc;ij0uK{y15VW-Tnv}Nm2eGQ4>!dAn7}F=jJ4Q+%{Ugf z!7NU~sW=PgE&v?5pTzP@nL)tpT}46ZPb1g{k+fdTl^XS z#NJY&(EXOczp5_%gnU@8hTVHU5ad zV=pA;AL-`xsW=;V$Nlh7{I|cOFZ=gHX)3bgtipJ^2Xx@ zdj{h$9EGju+xK=LJPD`a9NYu<$HVYgJO$6ji_o{{-9Y$uybmA6XVACfy+!y#`~ttn z-_W<;El&Ql9IlG%pta}9`S$I0NnWqPt#CLtp>MC-mT(St!d=kXdFAtcJKaINek7iN zr=xH8_3d-l@cPYo7e0tjpl_FZjqra;C;w^tI>h6@-7lUG{corHojIOea31cB2jP); z0-lcN;iY&D-i&vl|Gi5SUI}$%kd_D6$1?Q4^Z#8}E`I)Rzpmcp`uYUF#-Gr)b1%G* zi;tynMO*`Q9H`ZAu^cnFIo9Gx^zGU@ZdBjjf!#P2XQOY=-jDF1cnqG5XQ6M$zJl=e zcpKh}kDzbAeu?m#_yK;7-=S}})(%FiU*WR23a*X5y;{e)>i!9=#x1cPeLHnK;cc)J zC*utC?bCY^J`j(<<59=a>i7G0=}QP-jW^+)_yGF$=;sK(itpgZ_!atg=syVerrmT& zTme@{-~PN2;enXOK{ynByK@WS@wh$aaSHnO=G_SIi-+LRcoO<{<_id4j@RL>sN;w= zK7IT0Q-oi{H}HM@41K%uFNFWbMJ40b&szppM&F*?hj2fvz$)AVeLM1K!fm)UW^qUK z?Z>+k-V+bN!|^!u?Z)R2z8J5<8}SbG?ZuA~eimQBxA7zN?Zi5+TI1t))G-bkUILd# z-#)x9;SF&B>UeB@-)89Bg+~x>#&NhEcA;+%o=JE(e=-YeOB)mSB;ig!LzMXd%;ZfL%6LAOh?Yq+m z&%r%#e>@C*yY4B3&&G@JO1uGmd+vRNAH`?zWqb>LJMI^RzsKLO7wwIUqi?@mmGC;a z0rtlv`gYr`2oJ|59E;ncZ?D~n@GdwH_r`nkif>uE?$CH<4t%cK7fzobNDL0gCFBp_#^&- zy``Z{<7r7;0awTMa3dUuX&i(@u>o6fJZ_J9oPx7(H{2Hw!K3jcJQFX#%ketA74N}^ z@hN-}-@y0rGyE2R!M|})sjz80ErToLTG$8sVFgy<7FdU)u?@GzEbfTYaaY_E55U9m zI6M{4!He-Kyb18YPc@SZP3Ldu8eD8AMA(! zw!N{9{kO&}?ugTISKJd1z{Bx4JQdHui}5PF5%0kJ@iBZBU%|KWBm5G7z~6Bp>Um4x z^0*q>I6+B=8xkIXDclT)pdXLfOn4k_hc<3dK5u8jGtrO#+K2GLcod$9XP_VVW#b9u z^RDIfTkvjt2>p1k7YM(O@8PHT4f=6je-U1U`rgvG60V7Ud{-IaO|cRO<1qB&x>^ZO z#2s)FPD4MQYY)Qv<6(F#o`QZH*F}V{#2fH-ybt~Ot!D_ojBnwG_yziLTfY(RMg4AZ zTn<-7KVEAC!u>IcHMkY}aav7;$Ktk_!=2EN&zeVgZ#)Q(#1qhu%Q}znrFaeAjCY|Q zkM#uM=kYas7e7Hi4(lhvf8xT_@0P+9(T~3>CA=|~V+J=zKkjNI;W0P?JFpx5c&pij zcSoHMtM{2h@fh^utj;2QAzp#k<8A22S3N@bX?zLa#1GJqtNM=cuc!lm^>`M;WzmnP zTAOfR+yoO?jeZf=d$8E3^{rIUFgy-U3cpx5ue%#b)gwMrG@M^pX{dlPd2tSU` z;j8!#`f*ZU5&jYXz~0pFmP9{3YIVZv;YK(R)9A-V4JF)wEjS*xM?W5F3gKC}8}5sT zpdSZy65%uP0=yirLqGoM9>NdfQ}`mjfqvZ6XN14SU+`~SlzN^Y@3b=EwXhHN!wU4{ zoVFlbhoi9#w?;p{N#|#4`kjuu;+}W_`f*Li5k3{q!He-K^y8WCAbdYQhR@R`Q#y+9 ziFgK{kC&kzpL7f1yYV4>5???+F6lkOpW-+8Gya8sJkrwC_g2C+aeXX9KMtvq@L(K< zqp%hI_@f;NPr_+92lqff?&vVW$Kok?HeQ5&ywMGWZ^!%aQG5pdIHR`+e~4e;_xKz7 z@kNVETGI5i9IlG%;0EZ&6(tGR;8r*so6wIZ+Lmw*cfwt89{O=a2N6CJPr%dhJiHXI z!JF|ed=Q_&=kYas7eB$T@hAKf7p8u<6t0MCU@2~l<(R?Eu@*<-7@U9|*o{+hHtvr5 z;h}g8o{VSVg?I&CkGJ8y_y|6YFX5Z`0e+6(;jgF@*EIbshRfnAxHk61O)!DgxFyzO zBevr<*ol*I2F}I3@IX8QkH^#ST)YIY#+&d?d;lNE=kQg02S3KI@JIXudsDw%5?8?0 zaXs7!2Vxor;ZSVA795Y;V;-mAEZhzE#Y6CDJPFUl3-EHh4sXSK@L_xkU&J@?ef$i+ z#b5AmTy$BNo|eItaV_kF{jdV7a0{%%(b$GtV-|PB>9{NIi3i}}cpRRJ=itS772b$< z;Qja*K8vs5+xQWFi9g`)sB;$W{*TM!YPc?LhyyT%o8b@~fz3D$x5F;n8E4{r+y@WF zqwqvL1JB3H@LIeD@5YDlNqhlc$M^74{04u>eL zoQON%B%FqGa1Y!c55r^e6g(R*!YlCxydCeuNAVea8Q;PW@eBMOf5ToYxcFHdm%~+Y z9ozu>V-jm{D;$nZI2O0X9PWg>;5^(L55gny1Uwzj!%OiRyczGp2k{Af9$&+E@e}+S zf5Ja;VHudI*V|IKBCdg@xG|Pv1~v;xTwKo`o0U6?i?~ zhWFwl_%yzRZ{i2|Iev$~Vu=h;vimu(;*cUg!1XkmgSdWd^j@w`-PR1EH7x%&g z@d!K~Ps4NZ61*C3!aMN+d>o&{SMeSE7{9_F@ek}R4cQt`OX3Q+IqAtcn)5SSK*C#2i}j5;j{P(zKtK@ zm-qwzj=JW6-T!fUTn*R74RHXba5Ef&Bd{6A;da=CJL628kNe=kcod$9XW;pG8D5LG z;NAETK8Y{j>-Zjiir?VR_!lm+nv18UaV1<6*T*v46f1Es4#QE{iW6}MoP^VG4(@^b z<6(F#o`PrNMR+CNfVbm)_$WSuFXLPIA%211<8Rn&br(O2<8rtvu7ew3e@tQxZiU0K z3CH5Ln8TfL7o3NC<3V^No`9$0d3Y&agE!+{_#i%k&*N+OE`EYv<4^b}E-Vu=?Ea4{ z;u=_r8)G?UaC5B1kvIk?UNRGf{w<9>K39)l<2S$H8{f!E`0crQMJPvcAYCVqgQ z<9GNgmdLaW6a&kHF*cG&~nC!K?8m zyb~Y5$MHFQ72m;+@hkih|G?hTfo=DHTme_d^>8B`h-n;zL$Lu{a6E30d7Of?a5vl+ z55c4HBs>!@z{~MEycO@khw&+V5#PY~@iY7uf5E?T(Y0MXErToLTG$8sVFgy<7FdU) zu?@GzEbfTYaaY_E55U9mI6M{4!He-KybFBJO~ba2n3RJ#c?K43EWA@NB#Yuf!Yh zcDxTC#b@wkd<#FsFYtT(4STKU;%9MO4p+r>a0Bd*Nvy%Ga5y&MSlkwKxD)Pz^KfrG z2#>@Q@N_&6FU4!{X1og@#3%51d=1~lPw;E}3ID`}OIl>jl1K1cqkr&C*xUoAzp#k<862^K7vo(i7VjhxE^kV12K(*a40rl3y#O_F^^Ml7Vd`o;vsl6o`h%O1$a4LhqvNA z_%J?&FX9{cK7NMZ;xG6&F51_{(=xa+u7!QDA68%$Zh>_;8ryJd%;JtX9e2e&@c=v= zkHb^(9K0B>!W;1pydNLKXYmz$8$ZG?@dx}J7uvwZ&l0#iu7>O4hByFIxET(?5!j65 za69b6opC14$9?c%JPJ?5Gw^)846nso@NRqvpTrmNb$ky$#c%Lu{0kS^(8bfzxDu|3 z>th*iij_DRhv6t}#fi8BPQqz82lv4J@i06VPrw95Wm3h z@i*+Xk&B-;l6kX9*rmAnRo$Sj@RL>cn>~|PvMLB2ELD< z;kWn;{*8-n;*NV6Tp8EGKG+W{unM=pIvkB{xHV>RN1Tqk;+}W_9*)Q1sdx@vj91}} zcn98(kKwcU3cigW;g|RW{*JnKuhsu?d0Y+G#SL))rf@SHf+MgQ$KiI^g*)R+oR9n9 z!FUv&h-cvWco|-cx8U9Q5I%`7;OqDvev04V&-fQEGQh>t(zp_?iR)t-ZiD5~ zY{iMV15UzeI0yH@{qZn77Ei&m@glquZ@}B}K716P!I$wZ{1Csu@9{V6HPFS+;dv!&mVg{20H&AMp?DUFG6wNn8O}$MtX{9EfQgghR0bTW~yXk9nMe zvv4=u7Z1Us@gzJGFTl(3I=mI{!H4lFd=cNk_wh6Q7JtFNanWiQPs`xSxEA)oeprE3 zxCPeXXl%o+F^fCmbles9!~^hfJPuFAbMRuk3U9O4hByFIxET(?5!j65a69b6opC14$9?c%JPJ?5Gw^)846nso@NRqvpTrmN zb$ky$#c%Lu{0kS^%*E5vxDu|3>th*iij_DRhv6t}#fi8BPQqz82lv4J@i06VPrw95Wm3h@i*)>$i>g%xE!vE>);01ACp*vTj6kQ!m+q5=5Qz6 z1?S=3cn}_mC*bLL9$t#q;LUg!K8R1?^Y|LRi=W`v_!It#3vce?X(?P0*T7QT7|St( zn`14G#4$JlJFpw4;%wX<_rpW+7(5xz!VB>VydH1Ed+`x`8ehUU@dNxEzr$a#WUz~$ z#c)|%1=q&DxCth(8n?uHY{Yil20L*w&cM027aoX5;PH4Go{N{@)p!%$i4Wl8_#D29 z@8HMy75<2SVDBwlJS~YU;Oe*@ZiE9dje~F~Hed^m$L%qXQ*ajUhWp|ncr>1bXW|8T zIbMgi;yw5u@x-;ntYN9dSDD zihJS#csL%1r{XzyF!2R(sJQh#Ev+*Ll5^uoU@jiSMpTU>$ zE&LF_!0+)l>^0QI&*Hcou8Qm62G}2ySc6;PaBRY{xGm;zC)@?+;of)<9*HO5>3AMq zir3)Hco#m1PvGZt_&7d?ui`uSF@A+V;vd+%&c)M` zxB{+@>)}Q?5YspahhhV^;CS2~^Ed@(;cmDu9)d^XNq8n+fS2QScq`t6593q#BEEs| z<7fCS{(^twqV+DGmcf;AE$oB+umY=a3#`M@*oIqU7I(zyxGV072jJm&9G;5j;Kg_q z-iUYL{rDI@i?86@_z`}IKj81U&~O(&OW^Xj8m@~Q;s8wHW;g^#U^9-x?XU}X#+f)D z_rZhlC_E9*!1M7kycTc4yYV4>5?{dA@jd($zrmmJFI;4Vi>IY=C0rBN$1>a$D{(Lm z!%^6Z6LANegwt>i?t%N`VR$T_f@kAJcqQI|x8r^IC_aNP<6HP4eu3ZPZ`iBB#n0ln z9IlG%;0D+qlURdW;c#rivA8Yfa3|aa=i%OX5FUvq;OTfCUW(V?&3G3+h)>}2_!_>8 zpWxT{6aI+{k96_06t0MCU@2~l<(R?Eu@*<-7@U9|*o{+hHtvr5;h}g8o{VSVg?I&C zkGJ8y_y|6YFX5Z`0e+6(;jdUS%EixOxGb)MYhz#B1QS?|TVg#nVmoewoj4h1;9T4b z55yzzcsvcy#Y^yNyb15b2k>!x4qwH0@MHW6f5bnq_h=VSOX3Q+I);01ACp*vTj6kQ z!m+q5=5Qz61?S=3cn}_mC*bLL9$t#q;LUg!K8R1?^Y|LRi=W`v_!It#3y*Q}v=pw0 zYhWpEjOCcY&9N3o;uxHO9oUUiaW?Lb`{AK@44#Z<;e~hwUXQooz4!<|jW6Mw_yK;7 z-{G%V((2-8F;qj>GM+3wOquI3M@HgYhUl5zoN$@iM#?Z^66qA$$^Fz}N9T{1m^z zpYbnTWSonqrEw)(6W7Nw+!QNuFb=~}*oqTz2b_e{a1QQ)`{QAFES`dA<3)HS-hj8` zefTIogD>M-_#u9Q-{WuCYrKn}#c?@Y71zNHus53xC_q1z40JC z5>LR>@jSc~ufdz~E_@K5z~}Kbd>22#ukk1R6BnM~;%O;d5!b*{+!)I-gPUV5j>IuI z0Xwi8r{Zkf9rwdS@fbWA&%z7w3cMa~!+Y@&d>UWEH}M1f9KXX~v1Fo)pT%%lTm{$0 zzPJe{uo}0-dThjY+y*;wGS0xcxECIXN8s^z8lH=n;MI5&-iZ(3qjWk5h0K?uPr~A$T;NglFOfcsX8&x8gnc zFg}GZ;v4ureum%TFZeeux{ZscWpHI&3;SR{tiUSV0_$)zw&B*8#T{`v?uvWj0eCnb zho|B>crjjuH{u<5KR$-f;w$(zeuQ7*5BNJSw5^MuC2)CM4cEmDaR8=pGaP~=uo=hU zcG!hG<4l~7`{2QN6rPA@;Q4qNUW>Qj-S`kbi7(*m_#S?W-{8;q7cR1$i>IY=C0rBN z$1>a$D{(Lm!%^6Z6LANegwt>i?t%N`VR$T_f@kAJcqQI|x8r^IC_aNP<6HP4eu3ZP zZ`f;l7e9;Ra=0q4gBxIfOkxdgg~PE4$Ktk_!<}#!oQHekL3kvdfT!bmcqv|kH{)IS zAU=W5<7@aXeu7`)PxvP;+~MMBDg6K1yANn7>UK}mn+%eZ5+!HJS#k!+Ip>^nmL#B{ zASen*1_6nJfJBLcfaEM01VuyvQ6z|RyXj}2!+cjb-#K$<=AKz!t<~$P+Wqdgs()Qw z|LU&Zkbp^F5oh*=0e3iI++mSRO#XFWD$8+K+d z4&-pY#drB3XYgY#;b&aWt^A4yc${bXEwA%7@9{52X%osR785cV(=ao0vH***EGx4X z8?pu4vm5*Jb&llQe2-H(n+v&|Yq*I!xR-}{iWm4Df8wuv$Ovsi`9x=2zQ~kJ&uq-Y z!Ys)Otj4-*!q)7>o*ckoe3Rq(0jF~w7jq@oaSL~GKacSYFY^c9;_v*Ek=uoGipc~_ z%GAun9L&$6EW_7WlMUFM?bwxlIGAs6EGKdbXK?|SaWyw`JNNJqPx3sk@&@nl0mIsd z@`=VcOw1Ha$E?iFLM*}ZtjaoU%vS8k9_-Jd9L;f@#A%$%MO?wP+{~Ta$D=&WOT5OL zyvs+7)FG793yjYsOvQ}M&U`Gw(yYW9tj}g_%P#EAK^(y`oWRMP$@yH$RouXB+|7eL z!E?OAANdRK^D(1#4CNG?iI|*enT5Gnki}V!Ral#i*peOCo&7k3qxcTr=SQ5wPxvW6 z=NJ5vU-JmR;YEJWpZOdAV8l+Ld}1&jU*gNmz*m@;ud);?vO4RrDci6!dvPF#^DVy1 z4>^M$a|u7=dT!-cJiy~T%Wrv|w|S3$F-qr9PO+Gf$(V+jnUe)rjAdDwwb+m?*q+_k zm#=dq-{yOq%Gq4VOy zc%P3MwMQtY*i6LaOv^0H#eyu(a;(DIY{ZuA!0znFAsoeb_&z`49Dc%2`8mJfm;9PX z_zf@ed;ZMd_y;5Q4CNDp@%R#7W(K~(ynL0VSdrCPk4@Qzo!N^6Ih=3tU4F%7f-{EJa~g>s6;giOXX%*>oDz+x=R%B;nPY{B;I#=d-=Bl$Mp z<5bS(LN4bTZsHE^72*KT*-CZ!d=|YV?4vl{DHUlJO5^Rp<+@HN(C z12$(nc4Z$9<{KQ#iJZb&T)<^q&5hj7Jv_vdJkP7V!8?4wu)d*uqA?B=GX>KzD|53D zORzkvvJM-w6+5yA`*SEqa~vme8s~BmS8y#ib0_!lC{Obeukj}D@)0BT3+40z<1-0U zF(b1xAB(UwE3pRavl-j63wv`AM{o=$a586dK9_P8H*gzw^B_;~9Ix<4{=)lw%&7fC zImKooCTCh^VJ;SAah78h)@CENWCwO2yk>B%Y z{>DETaX=`a7>vi4_%bu_73SruEX9hf&U$RhHtft^9LV8(i|_J7&fv#f!q2##Tlp0a z@Ho%%TVCgF-s4}4GBA`=EGA?!reS90WC0dqSypB(He?I7XE*lc>m13q`5vcoHWzX^ z*KiYea4!$@6ff{Q{={GTkP!xj@`=v4e32=cp4pg(g;|mnSdDergss_$Jvo5G_$J5m z15W2WF6K(E;}-7Xejei)Ugi(H#ozfSBM%Pc6q5;lclP5Dj^aCfpC54!KjEkRoL}%ue$6BNh8Ougf97xegAs>? z@`=HCe2FhJ17BfYzRFUp$m*=erfkE`?8Si`&bRn3KjaL4%q9Gc>$#O*@c@tWEWhP- z-sV02#VEr=ImKc^CSw|AW=ME zFi-IUzvEB*l@A$VL@1x=jLR39lIfX^d03bwS%KA9mrdB3o!FBDIE-&{JU`%c&f{XP z4jZ!-JF*A+ zb0|l194B!a=W-EOa4k1;C-?CvPxBJ5@h0!`5hINX<@5sMGYL~MBeOFfi?B2+u?Fk2 z8QZc8dvg#+a11AKGG}r=mvR+1a2t2?AW!fdukc6y!ux#8sG~zU#bzQVXIf@qE*4~Q zmSYvxW+S#_2X<#a4&f-i!}s|S=kODL%Fp=)zvS0E!f$wy-}7hw#y=SG%}_ou7>_UU zWoFF-{ps#!H>CwpK(36@+%(Tah~P3yw2Oa$G;fm ztx!&}n2^bshMAd@1z3z_S(&xikS*Ar-Po6}b0pv9dz{MIT*&2I!%f`5y*$iQyuk1H z6MyAHMi>*yCpzQuMW$qWW@8=}W=U3HHP&Slwq_^x58NSAvY{2Gh$FA(d!F+>bIgwL1iwn4n ztGSWexrc{%lIMAqH+Y8+81{B3pJ#1bses;tAtY{ic3!Tub|(HzG~ zoW{9a#1&l2&D_a-Jj&C&#B03CyL`k*?}T!Cf$^DyshE-3nU6(Snw40C_1TPV*@eA1 zh$A?L6F8YOIiE|piW|6%yLpf&c#c>2BY)w2K4#Q$p`2nf5tB15voIG6vN+4J3Tv|w zTe1VYvmb|W6yM?d{D^b-2|wlM{DNQdYaZb@yvXnQGk@bBj5t1&PYlN6OMICb_zLs# zRhD8!R%bmnWgB*8FAn5zzQuR>A!qPoF5zcf&#nB52Y8%k`7N*WHt+E-MtL`sQ!FNA zGNxf>=41gDV_8;aEjDBewr4l?^6aT2F-E*EhH z*K#v=avzWKG%xWQZ}Ki5G1B{?oL*pjCSfXOWOn9b5te2p)?j@$V_SA%Zw}%Jj^PAO z=1k7#Qm*0#ZsTqqOyc%P3Mby6s&*i6LaOv^0H#eyu(a;(DIY{ZuA!0znF zAsoeb_&z`49Dc%2`8mJfm;9PX_zf@ed;ZMd_y;3?5XvV8mdHE_!u_CLp z9-FcaJF^!DayZ}OyZn$d_%WC8Gp^@We#HYk&a?cM*Lj=w_!pym7|JOY6EYdoFf((q z0E@9KE3+0GvIX0-8~gHgj^x{Xk5f6D3%Q(YxQRQsmxpX`IVNT*0;6%$?lF zqdd(^yvCcn%SVj#Q7ESu7@tX)iW!-m`B;RdS&21RpUv2oUD%t0ID%t1fs;9t^SP9( zxPjZan+JJ<=Xixb@)zFcV@918$|*JzF*(yR3v;m`i?bZ7ur?d9B|ES?`*8?I@g2U; zk2r^)@Kb)yFZdGVxrUp#gL`?Hr+9(i@hASuhm0^YluvZV<%>+o^vuRQ zEX7w{s5<@g&dlDsS)(A24io zD4%GI!^BL%bj-@!EW{El&#J7$#%#ro?7{vV%F!IhNu0*HT*MVz%gx-$eLTw3yu@p~ z$-8{SNOM9ty}*9K;bE!wH3V5 z`|@>;luXZT%)`Pg$qKB- zx@^MM?8KfNz+rroCSCD(BacX21Wd}*%)}hb z&!Q~D*I1Jc*qrUym3=svZ*VLpatdd00he(#H*!1o@DNY(Jg@Qw@9+V`7KZYP#yCvO z6immg%*{e9!SbxiI&92V?8qMM&!HU6ah$|yoXbUA!L{7Xo!rNxJk3kI#+$s$M~w7I zD5n<~pGlaC8JV5=ScIini8WZC&DfS**qehmf@3&=lR1;~xsaw4a278h_CS92q`a}N*kB+v6IZ}1KuFl>1!pJ z#1bses;tAtY{ic3!Tub|(HzG~oW{9a#1&l2&D_a-Jj&C&#B03CyL`k*pN4XJf$^Dy zshE-3nU6(Snw40C_1TPV*@eA1h$A?L6F8YOIiE|piW|6%yLpf&c#c>2BY)w2K4#Pv zp`2nf5tB15voIG6vN+4J3Tv|wTe1VYvmb|W6yM?d{D^b-2|wlM{DNQdYaZb@yvXnQ zGk@bBjJPtCPYlN6OMICb_zLs#RhD8!R%bmnWgB*8FAn5zzQuR>A!qPoF5zcf&#nB5 z2Y8%k`7N*WHt+E-M)@q1Q!FNAGNxf>=41gDV_8;aEjDBewr4l?^6u`Ro>HwSS9$8Z8Cb0+6=DOYg=w{bTQ@&wQE3V-A;ywAssx;B(kY$jrI zrezl9VnG&XIaXn9HeyS5V0ZT85RT$Ie4ih24nN_i{G4C#OMcBG{Dv3#J%8qJ{DTqK zh4P8PczlU3GXq~?UcSmwtjOxD$EIw<&g{j39L~4+E8MZ{>3QkLpjA_LMCGxW@b(nU@?|uW!7RtwqSd9V_&|`k$ju)aVlqXA(wLvH*p8| z@-R>F0>9%={FM(GVM8dN=#0x3nUd+5jd@s@C0T*hSeH%Mnw{8_12~Ltay&oabk5^q zuH-sy;V$myF`nUN{=i%Ooqsa&#!yZ%nSe=|nwgk``B{`@_!?`n0h_ZOyRr`l^9_#W zL{8x>F5oh*=02yk>B%Y{>DETaZ4zl7>vi4 z_%bu_73SruEX9hf&U$RhHtft^9LV8(i|_J7&fv#f!q2##Tlp0a@Ho%%TVCgF-s4}4 zvNe=bEGA?!reS90WC0dqSypB(He?I7XE*lc>m13q`5vcoHWzX^*KiYea4!$@6ff{Q z{={GTkP)_p@`=v4e32=cp4pg(g;|mnSdDergss_$Jvo5G_$J5m15W2WF6K(E;}-7X zejei)Ugi(H#ozfSBX1Ao6q5;B~?~FEBonFcmX0JM*y!OS2Mdus)lyExWKc z2XO?)Z~`ZDCg*c0S8)TkaW@b01kdpbf8;N`&&Q0qGn7+oCSr1?WftaQK^A8@R$*;6 zVoP>lclP5Dj^aCfpC54!KjEkRoL}%ue$6BNh8Ougf97xegAsRy@`=HCe2FhJ17BfY zzRFUp$m*=erfkE`?8Si`&bRn3KjaL4%q9Gc>$#O*@c@tWEWhP--sV02#VB8ea*D-- zOvW_K%$zL1Vl2zbti^_G!S?LNzI>e{`8MCdze#f8qD<3k# z?od9_8J90ICDSt-^RO^WvI48IE}O75JFzDRa2Vg@cz(d?oX5pn$#vYqUEI%OJj2WU zfw%ZO|77Gnp`2ne0h2N{GcgDAvnb2(HP&PUHfK9_Wgiaa8yw4toWfaLz-3&`joi*X zJj9bc&#Sz_JAA;fy`g-fF%A4jZ!-JF*A+b0|l194B!a=W-EO za4k1;C-?CvPxBJ5@h0!`5hHya%IO8hXA-7jMrLO|7GY^tVhz@3Gqzj=4(!f; z9Kun2hwt+v&fzEgl%Mkpe#x(Sgx~NYzvs{VjejuW{!l(K7>_UUWoFF-{ps#!H>CwpK(36@+%(Tah~P3yw2Oa$G;fmKq#kJOvq$R!_3Ud z0xZU|tjt<$$QEqRZtTm~Ig)SlJx=9pF645q;U@0jULNKtUf_59iNEq8BODCn6P{MrD(kQ@Td^a1us?@#G{$BcS3lv8XbVsfTs7Up6>7H2tDVQn^IOLky)_Tvza;yZkw zA8`&p;ivqZU+_zQ%_IDV7x_JZ=5PFi5s!uPiNSb$i7zt)UtwOp%2KSz>a546Y{Sm% z#ep2oxA-nU0FU!5zvXq_<~{z!D91xN#bQDxV;W{=P8MJ>mSttu zVneoIdv;@AzRr<+o9}TdXLBK!a}76f2lw(YPw@i3<4^pR4;kS^D4*zz%NLoF>6wjr zSePYQfz?=-P1u^9*pmY|jBj#0Kj3uE<6^GlI&R@E?&mR{;bs27Tl}4WGV;k#PBEE) zNtv3Nn1lIQlx6rDYq9~GvmLv#4+rxNj^#v7;VdrTGOp%EZs#5z;z^$8Ro>toK493X zP(INZhl!bj>6n$dS%@WAo>f_gjoFGF*@OK#l%qM0lQ@lYxri&cmYcbg`*@V6d5PC} zlXv-uk-iD#^aA5E2~#m6vojxyurw>N2J5pK+p-ILa}Y;x3@30hXL3H5auqjl8+Y>{ zPw*VC@JIf_`+Ur(r$af#W+EnMT4rG`7G!ajV-?nBBerA*c4t2h;V8bt_xTa$@DqN@ z&-n$vDW<*O{kimc9hY|1w5%w8PG;e3nl z@Chj~MA< zD5n<~pGlaC8JV5=ScIini8WZC&DfS**qehmf@3&=lR1;~xs0FU!5zvXq_<~{z! zC=o;X#bQDxV;W{=P8MJ>mSttuVneoIdv;@AzRr<+o9}TdXLBK!a}76f2lw(YPw@i3 z<4^pR4;dj+D4*zz%NLoF>6wjrSePYQfz?=-P1u^9*pmY|jBj#0Kj3uE<6^GlI&R@E z?&mR{;bs27Tl}4WGIHclPBEE)Ntv3Nn1lIQlx6rDYq9~GvmLv#4+rxNj^#v7;VdrT zGOp%EZs#5z;z^$8Ro>toK44hjz#lx`MPnQ$W(uZbR_10QmSA~SWgRwVD|TcL_UBNJ z<~UB`G|uHBuHag3=1%V8QJ&@{UgJ&P1cIIOdmS!c^V0|`Y zTXtb@4&n%o;RH_ROwQ+0uHpu6<8B`037+E>{>Wc=pN|rf-KH* ztisxC#Fp&9?(D}Q9L0C|K0o3de!@@rIlthS{F+Dj4KMP0{>*^2`?oNw`6e#ja8m`nH>*K;es;sGA#S$@mwyv=+3i&0{P za*D--OvW_K%$zL1Vl2zbti^_G!S?LNzI>e{`8MCdze#f8q zD<3jK;8+wq9z|zdzQ~kJ&uq-Y!Ys)Otj4-*!q)7>o*ckoe3Rq(0jF~w7jq@oaSL~G zKacSYFY^c9;_v*EkppjNf;q)x0w!f@W?~NJXHk~nYplrzY|eJ<%03*-H#n9PIfb*h zfXld=8@Zi(c!(!?o>zH;cldx|u|oMoV;m-C3Z`RL=4K(5V0l($9X4hwc4QCs=TMI3 zI8Nd;&gCMm;973xPVVDTp5`T9<4xY>BSwlH%IO8hXA-7jMrLO|7GY^tVhz@3Gqzj=4(!f;9Kun2hwt+v&fzEgl%Mkpe#x(Sgx~NYzvs{Vjejs=+)zF-7>_UUWoFF-{ps#!H>CwpK(36@+%(Tah~P3yw2Oa$G;dQUMQzn zOvq$R!_3Ud0xZU|tjt<$$QEqRZtTm~Ig)SlJx=9pF645q;U@0jULNKtUf_59iNEq8 zBLqI6dounrE?;Cyre`+hVPTeJ1y*BSHeqXaVowg>Fuuw0{D9LrkBhmI>$ruxxSz*( zhL`yRZ}E5j$;b&pImKiGCS_`7Vh-kKQI_FrtjPv!&UWm|J{-(9IF=JRg|oPT%ea~w zxt)7>h$nfTS9ybX_<&&vL-|Bw942N8rejv-W+9efc~)f|HfAe!WDoY|P>$v}PU1Aq zJjW~ik-zXhA2Vv=P)@O#h{>6jS(u9jS)Aoqg|*p; zE!lzH*^fgwitq4!e#ANagrD+re!(yKHIMKcUgY=unZNN5Mtm`pPYlN6OMICb_zLs# zRhD8!R%bmnWgB*8FAn5zzQuR>A!qPoF5zcf&#nB52Y8%k`7N*WHt+E-MhRSa3clWA zF(H#N4Kp(*3$Pf=vNCJ2AzQFLyRk1{=SaTI_c)caxsc1bhMTy9dwH0rc!A&XC;rNZ zjF2RhPjtrRi%iM%%*H${%#y6YYOKp9Y|T#W$pIY3H#wdka60F4F;{XOw{REt^BB+Y zGJoJL{?0!cIcX@Tm`uQ=OwCNp!Tc=BGJK6S*?`U2j$PS@gZT!>aw4a278h_CS92q` za}N*kB+v6IZ}1KuFf3UppJ#1bses;tAtY{ic3!Tub|(HzG~oW{9a z#1&l2&D_a-Jj&C&#B03CyL`k*feY|Y#(&0V5~gBCW@kPYVQE%k4c2Efwq+Og<{*yX z7*611&g6V9EXd+4$11GNMr_Fr z?9P51!clyO@AD(h;V1l*pYscT$**~Y-|!;8=g<6&e=uU;ixk2ACN{Fc{woA>w^qr4o-DHanl z8PhN`bFu)7u`DaI78|k!+p`<{@^y~n+kB5xIhzZ)oNKs=JGhsJd5RbK9e?7le8>o? zLit2zT)xPZOwVl0!@?}d3arMuY{J&;#GV|$VSJP0`2nYM9v5>Z*KrGXaX*jo3@`Hs z-s124laW)0a*D|WOv=>E#2n1eqAbJLSd$IdobA|^eK?qJa4aWs3TJTvmvJ>Way$3% z5KranVFLX zSd3*^nYGxEE!dvj*q5(!B;V$HoXXi;$mLwaP29n~Jj_$P!0-4If8|3)$Qa5eI^*(1 zreu0%V;&Y}NmgJr)@2j6W+(RK01o4u9M2Cpo%6VuE4hwaxQqLFjAwY6KkycR=bwz6 zDU?%8CSX#gW+vufeimgJzQ&qtz~*enuI$6Xe1l^-kyAK}3%HD{xsltshlhBQ=XsSk zc!v)dmN}G9G{#|KreHc|Wo{N?36^J7)?s6|Vn_C1e-7nnj^iXw<6JJ{3a;g5?&Llm zGS&vQGhMn1q z138>;@m+q%8T^<__!-x8E5G6a9_Lwp%j>+&d;E)0UJ2zCiwT*GX_%QgS%Ae@mX%qH z4cUV2*^PbqI!E$tzQ?JY&4pafHQdA<+{?o}#S8q7Kk-*SWQ6RYe4;ZhUt~(AXEx?x zVU}bCR%2Z@VQY3`PY&QPzRB_YfYUjTi@B2PxP`m8pT~HHm-z#4@pt~o$T>ne#bg2| zWol+(4(4Z3mf>rx$p&oBcI?VN9LzU3mJ>OJv$%lExSAWeoqKqQCwZP%d4qTOfMGd9 z`9xzJCT0qzV^-#7A(miyR%IPFW-E4N5BBF!j^;Q{;xx|XBCg$Y{?Gn&VC%iQGAE*^CQmTC;XJ3 z^9z2-uX%*u@FKtG&-{&lFk+riJ~0@NFY#q&;493_S6PY`S)KLRlx^6Vy*QA=`4->h zhn&HWxrCo_J-6~J9^i4F<+r@f+q}oW7$t8gr&vtLWK6@%%*g^Q#JjW~ik-zXhA2Vu%(BlpNyWd2XlQS)|Fc-uB-nY2ra;(DI zY{c-t^X*`{JD>GD1-?G=;LQZm9qYdtj>CD z$~NrGUL45be2ee$L(bsGT*A+|o?H195AZn8@>^c#ZQkQwjN*BU#qhriPi8p{GczX( zF#PYq%UZ6?T5QM`4F5auZkGG+o^vuRQEX7w{s5< z@g&dlDsS)(A22L(D4%GI!^BL%bj-@!EW{El&#J7$#%#ro?7{vV%F!IhNu0*HT*MVz z%gx-$eLTw3yu@p~$-8{SNPz?RlkYb%K9evNGcr5#u?S1E5^JzNo3Smsur~*B1jld! zCvzs}b17GG0|PvHT>p5!@~m+%@G;$!`oQV>6AQ5f%d;x$urXV)BYUtvhjKK>aT2F- zE*EhH*K#v=avzWKG%xWQZ}Ki5F_Po%3yjYs4F7jZGFr~gd@RD!ti&3u&t`1PF6_-g z9KkW1z{#A+`CQ6X+`w(z&4WC_bG*VI`3vv!F{3)}#%3ZWXIf@qE*4~QmSYvxW+S#_ z2X<#a4&f+9^*qLAA|_{AhM(sJ-mX8{zYDTB%drY;vk_ae1G}>yhj0|%;rslEbNC5A z<>&l@U-D}n;Wxa<@A)%-;~$LZ`HR7Le2FhJ17BfYzRFUp$m*=erfkE`?8X1p|L)Fz z_IMY*KRoNazm)tcF#Na|zF#!-^X6>J@bmGWmcx&K;rqu(KOf5p3_mZQZh0=l_mkz8 z*KiYea4!$@6ff{Q{={GTkP$pj(HWQjx8(Y-_dB8E-hcJ|&Odvc{qMTJO!PXK!dYCv zWn9gT+|E5b#FISFtGvNGe84cTw`h#R#7x0-%*xyh&pnoY37L#(n3>_ny#khtu`DaI z7Q>HsEiAWZH}>W03_s4jZTUS;58NSAvY{2Gh$FA(d z!F+>bIgwL1iwn4ntGSWexrc{%lIMAqH+Y8+7#1nCe??;)CT0qzV^-#7A(miyR%IPF zW-E4N5BBF!j^;Q{;xx|XBCgwopU?tgas@;fgm!czQ?-fy>1_pkHM z(Cgv<^!exiU&rb2{qtYvjiLSIU+0aX9R6=PZw%kR|EuG}fA#qLAAR0A!0~w)-{g3H z!0^vG=UHCNm0ZUy+{OJo#xuOkA9#zu^G`i!wa_e;r@`b$kh4 zKmPCjzVv_h{`^1t`P09y+l5|t|J|?K9dJB7&a?cM*Lj=w_!p!2{2~?;G8xk_Gjp;4 zi?J-jUkCr}xca~AdlO+fdJpW{r)8^veR_rL5I)zZ?SMXEIoh=B(=seatKPlCa`bB3 zB}bdKt@^fa-mzP|?t#0W%(raSs#n{7Pv6_JSIchg+x`!~(6wdjUjOzRT{?Da8~)pY zm4)SK-Mwqqw%r0ND^;s%j+TA;^y=8EZ=Ya;_Px6I?GYGa|LG}seI@vrarl%kFcTb0 z-wNFF25y0mJ)YeDv94s`=izn1-+5MDm8a^0=Q_`-Yw%QE@LI^T>e@V2SMWJ?!4Sf? zuh4Vqg4apH>k2=oZp>44uRfPkMR?%Y##rJhq4JRc0trSx;^etW8}%ya63*XhFhm3>ZKtf%VA zJ*O`CJ)`h`<)2d*ye<`97yOLmSvlu=s;=U5>VoI7;r%K-r!M$?kMO$Jo>N!nsk+L~ zscZ36U6tq51-~B^zTV(>FP`;ygV)o->#9AcZq!qC)t^&0@u|8R a7R9(&I)Gd0d zE_f~VS&w7QQ+2hUQ@8D@x;oFP3tle?&!z5j>b`lZuHJL%u0B;)|2cKRaXNgx!DH*Q z9`B>4>Vls^KC3QzU|bIG*XXIbi?HB%WN-?8AMNQWd@)VnhrznQ$M;XBf2<4M z7o0K$ZqWm`|EMlkpeFox0<%xn8{7xOr|{WV0zZfmxRrEAgZ(kW;sx#uj&H&Hf{!=2 zzTh!9{C5JgVZrMh(}FXm@cV-McKCeouHf~BBx-_$-xqw1KE2)!2Vy)~PjJ1#Yp>z! zZTZyi1ZKmE2ktl=-sGwKng-^d?$;yGZ)Kn^*e`eB_W$Z9_&9+lW=7zBQTPKAq?M)04Wc+xL?-2c0NX%hZ({W3q*FMQnp zyMAQ?{oeg2wy#E@-yGW)KJNcrzaxQu!Q)=|^sL8wJJ7F1peUGM__+Uf{n921y!OJI z1Zu-)|8ak*aXCgFpeWd{OyKsceiH)y zE`~P=)P>Lf?f8pc)-#y;ozqgwr&?kI)R=-?<{}3m2peVR~6#}|wjU9ey9v-4;5`y=p$vfy|4!>91s zf84&6rT%^UT0W=W@=6h&oYVYA{niKmgQv`aqTu$meonvRfqn(TH!4sUKKqZ`cPY>> zcs>;D*Y-L6UZ@-)?2GUw&*|5oT+Fch`n7*fzptu92z%<~_RQ_8Q6c8PjprSo)9+!R zU+~;4dTJ8);PU(e_C zTUI;5lW{dr@??5ezs%KRhRq371pD<4+@7_4`2ue+OZ^kagFV51UcY^x)30y6z?kq) z^y^S7X4obD`ah@Nqri(i_%{;aQ~2yZ=2x+9%&_6|8~B`l#TrEj8~9Ib-=2Cg!w%cN z!O!Wpwn>C1ugCvr`=&Ph_v8JL=k!Y+_=As1|HSr1ZxlG*+rHp6!Dl_cZJI|28yUWF z0iTuMoF;*Of%}8|%ZR`&ykEDcekU*+b}i8FSooX6r|uhMKKMQ^IBjefA#82!;0P3& zg6j?5Ml-yw$Ho|8!S~zYQ+QqQoH|n2lOgiST{{DHdBckW2J3=T(5K=GyC0~l5m@b* xz|Vv03Ok2iE8MYw2C}4Qq{{!S<2M+)M diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.d b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.d deleted file mode 100644 index cc009f9..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.d +++ /dev/null @@ -1,89 +0,0 @@ -Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.o: \ - ../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h \ - ../Core/Inc/stm32f1xx_hal_conf.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h \ - ../Drivers/CMSIS/Include/core_cm3.h \ - ../Drivers/CMSIS/Include/cmsis_version.h \ - ../Drivers/CMSIS/Include/cmsis_compiler.h \ - ../Drivers/CMSIS/Include/cmsis_gcc.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: - -../Core/Inc/stm32f1xx_hal_conf.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h: - -../Drivers/CMSIS/Include/core_cm3.h: - -../Drivers/CMSIS/Include/cmsis_version.h: - -../Drivers/CMSIS/Include/cmsis_compiler.h: - -../Drivers/CMSIS/Include/cmsis_gcc.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.o deleted file mode 100644 index 04463a27779419ba5d77a0cc04b2213aebe285db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 792800 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 V?iI4F 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 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.su b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.su deleted file mode 100644 index e4b7095..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.su +++ /dev/null @@ -1,61 +0,0 @@ -stm32f1xx_hal_uart.c:352:19:HAL_UART_Init 16 static -stm32f1xx_hal_uart.c:429:19:HAL_HalfDuplex_Init 16 static -stm32f1xx_hal_uart.c:504:19:HAL_LIN_Init 16 static -stm32f1xx_hal_uart.c:587:19:HAL_MultiProcessor_Init 24 static -stm32f1xx_hal_uart.c:666:19:HAL_UART_DeInit 16 static -stm32f1xx_hal_uart.c:711:13:HAL_UART_MspInit 16 static -stm32f1xx_hal_uart.c:726:13:HAL_UART_MspDeInit 16 static -stm32f1xx_hal_uart.c:1136:19:HAL_UART_Transmit 48 static -stm32f1xx_hal_uart.c:1224:19:HAL_UART_Receive 48 static -stm32f1xx_hal_uart.c:1315:19:HAL_UART_Transmit_IT 24 static -stm32f1xx_hal_uart.c:1360:19:HAL_UART_Receive_IT 24 static -stm32f1xx_hal_uart.c:1395:19:HAL_UART_Transmit_DMA 32 static -stm32f1xx_hal_uart.c:1463:19:HAL_UART_Receive_DMA 24 static -stm32f1xx_hal_uart.c:1493:19:HAL_UART_DMAPause 24 static -stm32f1xx_hal_uart.c:1530:19:HAL_UART_DMAResume 24 static -stm32f1xx_hal_uart.c:1566:19:HAL_UART_DMAStop 24 static -stm32f1xx_hal_uart.c:1621:19:HAL_UARTEx_ReceiveToIdle 40 static -stm32f1xx_hal_uart.c:1747:19:HAL_UARTEx_ReceiveToIdle_IT 32 static -stm32f1xx_hal_uart.c:1808:19:HAL_UARTEx_ReceiveToIdle_DMA 32 static -stm32f1xx_hal_uart.c:1865:19:HAL_UART_Abort 16 static -stm32f1xx_hal_uart.c:1954:19:HAL_UART_AbortTransmit 16 static -stm32f1xx_hal_uart.c:2005:19:HAL_UART_AbortReceive 16 static -stm32f1xx_hal_uart.c:2066:19:HAL_UART_Abort_IT 24 static -stm32f1xx_hal_uart.c:2201:19:HAL_UART_AbortTransmit_IT 16 static -stm32f1xx_hal_uart.c:2278:19:HAL_UART_AbortReceive_IT 16 static -stm32f1xx_hal_uart.c:2356:6:HAL_UART_IRQHandler 48 static -stm32f1xx_hal_uart.c:2586:13:HAL_UART_TxCpltCallback 16 static -stm32f1xx_hal_uart.c:2601:13:HAL_UART_TxHalfCpltCallback 16 static -stm32f1xx_hal_uart.c:2616:13:HAL_UART_RxCpltCallback 16 static -stm32f1xx_hal_uart.c:2631:13:HAL_UART_RxHalfCpltCallback 16 static -stm32f1xx_hal_uart.c:2646:13:HAL_UART_ErrorCallback 16 static -stm32f1xx_hal_uart.c:2660:13:HAL_UART_AbortCpltCallback 16 static -stm32f1xx_hal_uart.c:2675:13:HAL_UART_AbortTransmitCpltCallback 16 static -stm32f1xx_hal_uart.c:2690:13:HAL_UART_AbortReceiveCpltCallback 16 static -stm32f1xx_hal_uart.c:2707:13:HAL_UARTEx_RxEventCallback 16 static -stm32f1xx_hal_uart.c:2747:19:HAL_LIN_SendBreak 16 static -stm32f1xx_hal_uart.c:2774:19:HAL_MultiProcessor_EnterMuteMode 16 static -stm32f1xx_hal_uart.c:2801:19:HAL_MultiProcessor_ExitMuteMode 16 static -stm32f1xx_hal_uart.c:2828:19:HAL_HalfDuplex_EnableTransmitter 24 static -stm32f1xx_hal_uart.c:2863:19:HAL_HalfDuplex_EnableReceiver 24 static -stm32f1xx_hal_uart.c:2920:23:HAL_UART_GetState 24 static -stm32f1xx_hal_uart.c:2935:10:HAL_UART_GetError 16 static -stm32f1xx_hal_uart.c:2980:13:UART_DMATransmitCplt 24 static -stm32f1xx_hal_uart.c:3015:13:UART_DMATxHalfCplt 24 static -stm32f1xx_hal_uart.c:3034:13:UART_DMAReceiveCplt 24 static -stm32f1xx_hal_uart.c:3091:13:UART_DMARxHalfCplt 24 static -stm32f1xx_hal_uart.c:3126:13:UART_DMAError 24 static -stm32f1xx_hal_uart.c:3167:26:UART_WaitOnFlagUntilTimeout 24 static -stm32f1xx_hal_uart.c:3205:19:UART_Start_Receive_IT 24 static -stm32f1xx_hal_uart.c:3240:19:UART_Start_Receive_DMA 32 static -stm32f1xx_hal_uart.c:3290:13:UART_EndTxTransfer 16 static -stm32f1xx_hal_uart.c:3304:13:UART_EndRxTransfer 16 static -stm32f1xx_hal_uart.c:3328:13:UART_DMAAbortOnError 24 static -stm32f1xx_hal_uart.c:3352:13:UART_DMATxAbortCallback 24 static -stm32f1xx_hal_uart.c:3398:13:UART_DMARxAbortCallback 24 static -stm32f1xx_hal_uart.c:3444:13:UART_DMATxOnlyAbortCallback 24 static -stm32f1xx_hal_uart.c:3472:13:UART_DMARxOnlyAbortCallback 24 static -stm32f1xx_hal_uart.c:3498:26:UART_Transmit_IT 24 static -stm32f1xx_hal_uart.c:3538:26:UART_EndTransmit_IT 16 static -stm32f1xx_hal_uart.c:3563:26:UART_Receive_IT 32 static -stm32f1xx_hal_uart.c:3661:13:UART_SetConfig 24 static diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.o deleted file mode 100644 index bb81927809290a2ba4f1b992fb7de5f282088ce5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 780800 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 z%0D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�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

    >$%9;yDbw;-FG|G??guO2k32ohevi9 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 PaN|xj(G$6z$v^k|#>!KL$ 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 YR7kw6$Id1i)B8eH9M#ORd2MLO5TmS$7 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.su b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.su deleted file mode 100644 index c8a9989..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.su +++ /dev/null @@ -1,27 +0,0 @@ -stm32f1xx_ll_usb.c:1831:19:USB_CoreInit 16 static -stm32f1xx_ll_usb.c:1851:19:USB_EnableGlobalInt 24 static -stm32f1xx_ll_usb.c:1876:19:USB_DisableGlobalInt 24 static -stm32f1xx_ll_usb.c:1900:19:USB_SetCurrentMode 16 static -stm32f1xx_ll_usb.c:1921:19:USB_DevInit 16 static -stm32f1xx_ll_usb.c:1950:19:USB_FlushTxFifo 16 static -stm32f1xx_ll_usb.c:1969:19:USB_FlushRxFifo 16 static -stm32f1xx_ll_usb.c:1989:19:USB_ActivateEndpoint 112 static -stm32f1xx_ll_usb.c:2104:19:USB_DeactivateEndpoint 56 static -stm32f1xx_ll_usb.c:2160:19:USB_EPStartXfer 312 static -stm32f1xx_ll_usb.c:2421:19:USB_EPSetStall 24 static -stm32f1xx_ll_usb.c:2441:19:USB_EPClearStall 32 static -stm32f1xx_ll_usb.c:2473:19:USB_StopDevice 16 static -stm32f1xx_ll_usb.c:2494:20:USB_SetDevAddress 16 static -stm32f1xx_ll_usb.c:2510:20:USB_DevConnect 16 static -stm32f1xx_ll_usb.c:2528:20:USB_DevDisconnect 16 static -stm32f1xx_ll_usb.c:2546:11:USB_ReadInterrupts 24 static -stm32f1xx_ll_usb.c:2559:10:USB_ReadDevAllOutEpInterrupt 16 static -stm32f1xx_ll_usb.c:2575:10:USB_ReadDevAllInEpInterrupt 16 static -stm32f1xx_ll_usb.c:2593:10:USB_ReadDevOutEPInterrupt 16 static -stm32f1xx_ll_usb.c:2612:10:USB_ReadDevInEPInterrupt 16 static -stm32f1xx_ll_usb.c:2630:7:USB_ClearInterrupts 16 static -stm32f1xx_ll_usb.c:2647:19:USB_EP0_OutStart 16 static -stm32f1xx_ll_usb.c:2664:19:USB_ActivateRemoteWakeup 16 static -stm32f1xx_ll_usb.c:2676:19:USB_DeActivateRemoteWakeup 16 static -stm32f1xx_ll_usb.c:2691:6:USB_WritePMA 56 static -stm32f1xx_ll_usb.c:2725:6:USB_ReadPMA 48 static diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk deleted file mode 100644 index e4c7778..0000000 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk +++ /dev/null @@ -1,84 +0,0 @@ -################################################################################ -# Automatically-generated file. Do not edit! -# Toolchain: GNU Tools for STM32 (9-2020-q2-update) -################################################################################ - -# Add inputs and outputs from these tool invocations to the build variables -C_SRCS += \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c \ -../Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c - -OBJS += \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.o \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.o - -C_DEPS += \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.d \ -./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.d - - -# Each subdirectory must supply rules for building sources it contributes -Drivers/STM32F1xx_HAL_Driver/Src/%.o: ../Drivers/STM32F1xx_HAL_Driver/Src/%.c Drivers/STM32F1xx_HAL_Driver/Src/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32F103xB -c -I../Core/Inc -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../USB_DEVICE/App -I../USB_DEVICE/Target -I../Middlewares/ST/STM32_USB_Device_Library/Core/Inc -I../Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Inc -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" - -clean: clean-Drivers-2f-STM32F1xx_HAL_Driver-2f-Src - -clean-Drivers-2f-STM32F1xx_HAL_Driver-2f-Src: - -$(RM) ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.o ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.d ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.o - -.PHONY: clean-Drivers-2f-STM32F1xx_HAL_Driver-2f-Src - diff --git a/stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/subdir.mk b/stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/subdir.mk deleted file mode 100644 index f890116..0000000 --- a/stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/subdir.mk +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# Automatically-generated file. Do not edit! -# Toolchain: GNU Tools for STM32 (9-2020-q2-update) -################################################################################ - -# Add inputs and outputs from these tool invocations to the build variables -C_SRCS += \ -../Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.c - -OBJS += \ -./Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.o - -C_DEPS += \ -./Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.d - - -# Each subdirectory must supply rules for building sources it contributes -Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/%.o: ../Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/%.c Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/subdir.mk - arm-none-eabi-gcc "$<" -mcpu=cortex-m3 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32F103xB -c -I../Core/Inc -I../Drivers/CMSIS/Device/ST/STM32F1xx/Include -I../Drivers/CMSIS/Include -I../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I../Drivers/STM32F1xx_HAL_Driver/Inc -I../USB_DEVICE/App -I../USB_DEVICE/Target -I../Middlewares/ST/STM32_USB_Device_Library/Core/Inc -I../Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Inc -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"$(@:%.o=%.d)" -MT"$@" --specs=nano.specs -mfloat-abi=soft -mthumb -o "$@" - -clean: clean-Middlewares-2f-ST-2f-STM32_USB_Device_Library-2f-Class-2f-DFU-2f-Src - -clean-Middlewares-2f-ST-2f-STM32_USB_Device_Library-2f-Class-2f-DFU-2f-Src: - -$(RM) ./Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.d ./Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.o - -.PHONY: clean-Middlewares-2f-ST-2f-STM32_USB_Device_Library-2f-Class-2f-DFU-2f-Src - diff --git a/stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.d b/stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.d deleted file mode 100644 index 496959c..0000000 --- a/stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.d +++ /dev/null @@ -1,115 +0,0 @@ -Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.o: \ - ../Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.c \ - ../Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Inc/usbd_dfu.h \ - ../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h \ - ../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h \ - ../USB_DEVICE/Target/usbd_conf.h ../Core/Inc/main.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h \ - ../Core/Inc/stm32f1xx_hal_conf.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h \ - ../Drivers/CMSIS/Include/core_cm3.h \ - ../Drivers/CMSIS/Include/cmsis_version.h \ - ../Drivers/CMSIS/Include/cmsis_compiler.h \ - ../Drivers/CMSIS/Include/cmsis_gcc.h \ - ../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h \ - ../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_core.h \ - ../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h \ - ../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ctlreq.h \ - ../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ctlreq.h - -../Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Inc/usbd_dfu.h: - -../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h: - -../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h: - -../USB_DEVICE/Target/usbd_conf.h: - -../Core/Inc/main.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: - -../Core/Inc/stm32f1xx_hal_conf.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h: - -../Drivers/CMSIS/Include/core_cm3.h: - -../Drivers/CMSIS/Include/cmsis_version.h: - -../Drivers/CMSIS/Include/cmsis_compiler.h: - -../Drivers/CMSIS/Include/cmsis_gcc.h: - -../Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: - -../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_core.h: - -../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h: - -../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ctlreq.h: - -../Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ctlreq.h: diff --git a/stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.o b/stm32f103/Debug/Middlewares/ST/STM32_USB_Device_Library/Class/DFU/Src/usbd_dfu.o deleted file mode 100644 index c695a6ee8a9fc91b4bee9144783167a92db7e23e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 813884 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%0Alk2HZUMdUjx!neWVm(hl- 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̮xMtJEvC$F7V94g;sZ9L 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

  • htFC$4YB1q>vk3z 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

    J>Z=%7qu_+td5lap-U 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¥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 nD34g~bo{YQc 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 Dn3u=N diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o b/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o deleted file mode 100644 index cd528bafd936c257a0e6ad0a4996b542089b82f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 764008 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∈uVRPZobU!<$` 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%0D1hi&4}UsCI7 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�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 GfBqjbG3rPF literal 0 HcmV?d00001 diff --git a/f103c8t6_HAL/Debug/f103c8t6_HAL.list b/f103c8t6_HAL/Debug/f103c8t6_HAL.list new file mode 100644 index 0000000..2c1c7d2 --- /dev/null +++ b/f103c8t6_HAL/Debug/f103c8t6_HAL.list @@ -0,0 +1,2596 @@ + +f103c8t6_HAL.elf: file format elf32-littlearm + +Sections: +Idx Name Size VMA LMA File off Algn + 0 .isr_vector 0000010c 08000000 08000000 00010000 2**0 + CONTENTS, ALLOC, LOAD, READONLY, DATA + 1 .text 00000d04 0800010c 0800010c 0001010c 2**2 + CONTENTS, ALLOC, LOAD, READONLY, CODE + 2 .rodata 00000020 08000e10 08000e10 00010e10 2**2 + CONTENTS, ALLOC, LOAD, READONLY, DATA + 3 .ARM.extab 00000000 08000e30 08000e30 0002000c 2**0 + CONTENTS + 4 .ARM 00000000 08000e30 08000e30 0002000c 2**0 + CONTENTS + 5 .preinit_array 00000000 08000e30 08000e30 0002000c 2**0 + CONTENTS, ALLOC, LOAD, DATA + 6 .init_array 00000004 08000e30 08000e30 00010e30 2**2 + CONTENTS, ALLOC, LOAD, DATA + 7 .fini_array 00000004 08000e34 08000e34 00010e34 2**2 + CONTENTS, ALLOC, LOAD, DATA + 8 .data 0000000c 20000000 08000e38 00020000 2**2 + CONTENTS, ALLOC, LOAD, DATA + 9 .bss 00000020 2000000c 08000e44 0002000c 2**2 + ALLOC + 10 ._user_heap_stack 00000604 2000002c 08000e44 0002002c 2**0 + ALLOC + 11 .ARM.attributes 00000029 00000000 00000000 0002000c 2**0 + CONTENTS, READONLY + 12 .debug_info 000027f9 00000000 00000000 00020035 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + 13 .debug_abbrev 00000c75 00000000 00000000 0002282e 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + 14 .debug_aranges 00000378 00000000 00000000 000234a8 2**3 + CONTENTS, READONLY, DEBUGGING, OCTETS + 15 .debug_ranges 00000300 00000000 00000000 00023820 2**3 + CONTENTS, READONLY, DEBUGGING, OCTETS + 16 .debug_macro 000156ee 00000000 00000000 00023b20 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + 17 .debug_line 00003bae 00000000 00000000 0003920e 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + 18 .debug_str 0007b703 00000000 00000000 0003cdbc 2**0 + CONTENTS, READONLY, DEBUGGING, OCTETS + 19 .comment 00000053 00000000 00000000 000b84bf 2**0 + CONTENTS, READONLY + 20 .debug_frame 00000be8 00000000 00000000 000b8514 2**2 + CONTENTS, READONLY, DEBUGGING, OCTETS + +Disassembly of section .text: + +0800010c <__do_global_dtors_aux>: + 800010c: b510 push {r4, lr} + 800010e: 4c05 ldr r4, [pc, #20] ; (8000124 <__do_global_dtors_aux+0x18>) + 8000110: 7823 ldrb r3, [r4, #0] + 8000112: b933 cbnz r3, 8000122 <__do_global_dtors_aux+0x16> + 8000114: 4b04 ldr r3, [pc, #16] ; (8000128 <__do_global_dtors_aux+0x1c>) + 8000116: b113 cbz r3, 800011e <__do_global_dtors_aux+0x12> + 8000118: 4804 ldr r0, [pc, #16] ; (800012c <__do_global_dtors_aux+0x20>) + 800011a: f3af 8000 nop.w + 800011e: 2301 movs r3, #1 + 8000120: 7023 strb r3, [r4, #0] + 8000122: bd10 pop {r4, pc} + 8000124: 2000000c .word 0x2000000c + 8000128: 00000000 .word 0x00000000 + 800012c: 08000df8 .word 0x08000df8 + +08000130 : + 8000130: b508 push {r3, lr} + 8000132: 4b03 ldr r3, [pc, #12] ; (8000140 ) + 8000134: b11b cbz r3, 800013e + 8000136: 4903 ldr r1, [pc, #12] ; (8000144 ) + 8000138: 4803 ldr r0, [pc, #12] ; (8000148 ) + 800013a: f3af 8000 nop.w + 800013e: bd08 pop {r3, pc} + 8000140: 00000000 .word 0x00000000 + 8000144: 20000010 .word 0x20000010 + 8000148: 08000df8 .word 0x08000df8 + +0800014c

    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 bvHIbKLW}a{4(5}`Z3_B#Z?rO47d`x6Nzq(R literal 0 HcmV?d00001 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.su b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.su similarity index 100% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.su rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.su diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d similarity index 74% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d index 5d0fcc0..ced0a9d 100644 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d +++ b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.d @@ -19,16 +19,9 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: @@ -68,22 +61,8 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.o new file mode 100644 index 0000000000000000000000000000000000000000..35faed5a35277a1c6219bdb2317d330c237144c9 GIT binary patch literal 700008 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%0DHnL~RT2QAN?g^82p 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 z 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 cj^LZ(+; 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 literal 0 HcmV?d00001 diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.su b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.su similarity index 100% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.su rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.su diff --git a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d similarity index 73% rename from stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d rename to f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d index 23b19a2..676aa2e 100644 --- a/stm32f103/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d +++ b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.d @@ -19,16 +19,9 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h \ - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h + ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h: @@ -68,22 +61,8 @@ Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o: \ ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_adc_ex.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h: ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h: -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h: - ../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usb.h: - -../Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pcd_ex.h: diff --git a/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o b/f103c8t6_HAL/Debug/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.o new file mode 100644 index 0000000000000000000000000000000000000000..dd5938c9eb9a32d41b319e377b0abab21fc35691 GIT binary patch literal 708656 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ÐNzN2*Vx$HMu?uTS+UO+c2 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

  • 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